onCreate method
Future<AlbumOre>
onCreate(
- Album album,
- String dir
)
override
Implementation
@override
Future<AlbumOre> onCreate(album, dir) async {
final map = album.toJson();
var raw = <String, dynamic>{};
final pref = await preferences;
final uri = accessUri.resolve(relativePath(dir));
var col = json.decode(pref.getString(uri.path) ?? '[]');
if (col is! List) {
raw = SharedPrefsCodec.encode(uri.path, [col]);
raw.forEach((k, v) async {
if (k == uri.path) col = v;
final body = json.encode(v);
await pref.setString(k, body);
});
}
final tweaks = SharedPrefsCodec.encode(uri.path, [map]);
tweaks.forEach((k, v) async {
if (k == uri.path) v = [...col, ...v];
final body = json.encode(v);
await pref.setString(k, body);
});
return AlbumOre(album);
}