Files
boundless/src/db/index.ts
T
2026-09-29 22:08:05 +08:00

28 lines
696 B
TypeScript

import Dexie, { type EntityTable } from 'dexie'
import type { CardRecord, EdgeRecord, SpaceRecord } from '@/types/canvas'
class BoundlessDatabase extends Dexie {
spaces!: EntityTable<SpaceRecord, 'id'>
cards!: EntityTable<CardRecord, 'id'>
edges!: EntityTable<EdgeRecord, 'id'>
constructor() {
super('boundless-notes')
this.version(1).stores({
spaces: 'id, updatedAt',
cards: 'id, spaceId, updatedAt',
edges: 'id, spaceId, source, target',
})
this.version(2).stores({
spaces: 'id, createdAt, updatedAt',
cards: 'id, spaceId, updatedAt',
edges: 'id, spaceId, source, target',
})
}
}
export const db = new BoundlessDatabase()