p-stream/src/state/bookmark/store.ts
2023-06-22 10:47:14 +02:00

29 lines
706 B
TypeScript

import { createVersionedStore } from "@/utils/storage";
import { BookmarkStoreData } from "./types";
import { OldBookmarks, migrateV1Bookmarks } from "../watched/migrations/v2";
import { migrateV2Bookmarks } from "../watched/migrations/v3";
export const BookmarkStore = createVersionedStore<BookmarkStoreData>()
.setKey("mw-bookmarks")
.addVersion({
version: 0,
migrate(oldBookmarks: OldBookmarks) {
return migrateV1Bookmarks(oldBookmarks);
},
})
.addVersion({
version: 1,
migrate(old: OldBookmarks) {
return migrateV2Bookmarks(old);
},
})
.addVersion({
version: 2,
create() {
return {
bookmarks: [],
};
},
})
.build();