Spaces:
Running
Running
File size: 796 Bytes
9030f57 11486ce 9030f57 11486ce 9030f57 11486ce 9030f57 11486ce 9030f57 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | import Dexie, { type EntityTable } from 'dexie';
export interface ImageRecord {
filename: string;
blob: Blob;
}
export interface ThumbnailRecord {
filename: string;
blob: Blob;
updatedAt: number;
width: number;
height: number;
}
export class ImageDB extends Dexie {
images!: EntityTable<ImageRecord, 'filename'>;
thumbnails!: EntityTable<ThumbnailRecord, 'filename'>;
constructor() {
super('ImageDB');
this.version(1).stores({
images: '&filename'
});
this.version(2).stores({
images: '&filename',
thumbnails: '&filename, updatedAt'
});
this.images = this.table('images');
this.thumbnails = this.table('thumbnails');
}
}
export const db = new ImageDB();
|