ente/lib/models/magic_metadata.dart

36 lines
805 B
Dart
Raw Normal View History

import 'dart:convert';
const kVisibilityVisible = 0;
const kVisibilityArchive = 1;
2021-09-18 03:54:32 +00:00
const kMagicKeyVisibility = 'visibility';
2021-09-20 06:41:38 +00:00
class MagicMetadata {
// 0 -> visible
// 1 -> archived
// 2 -> hidden etc?
int visibility;
2021-09-20 06:41:38 +00:00
MagicMetadata({this.visibility});
2021-09-20 06:41:38 +00:00
factory MagicMetadata.fromEncodedJson(String encodedJson) =>
MagicMetadata.fromJson(jsonDecode(encodedJson));
2021-09-20 06:41:38 +00:00
factory MagicMetadata.fromJson(dynamic json) =>
MagicMetadata.fromMap(json);
Map<String, dynamic> toJson() {
2021-09-20 06:41:38 +00:00
final map = <String, dynamic>{};
2021-09-18 03:54:32 +00:00
map[kMagicKeyVisibility] = visibility;
return map;
}
2021-09-20 06:41:38 +00:00
factory MagicMetadata.fromMap(Map<String, dynamic> map) {
if (map == null) return null;
2021-09-20 06:41:38 +00:00
return MagicMetadata(
2021-09-18 03:54:32 +00:00
visibility: map[kMagicKeyVisibility] ?? kVisibilityVisible,
);
}
}