diff --git a/src/lib/db-constants.ts b/src/lib/db-constants.ts new file mode 100644 index 0000000..eff5427 --- /dev/null +++ b/src/lib/db-constants.ts @@ -0,0 +1,8 @@ +/** + * Database constants shared across modules + */ + +export const DB_KEY = 'codesnippet-db' +export const IDB_NAME = 'CodeSnippetDB' +export const IDB_STORE = 'database' +export const IDB_VERSION = 1 diff --git a/src/lib/db-core.ts b/src/lib/db-core.ts index 16818d7..3583fbe 100644 --- a/src/lib/db-core.ts +++ b/src/lib/db-core.ts @@ -7,6 +7,7 @@ import { loadFromIndexedDB, saveToIndexedDB, openIndexedDB, deleteFromIndexedDB import { loadFromLocalStorage, saveToLocalStorage, deleteFromLocalStorage } from './db-localstorage' import { validateSchema, createTables } from './db-schema' import { getStorageConfig, FlaskStorageAdapter, loadStorageConfig } from './storage' +import { DB_KEY } from './db-constants' let dbInstance: Database | null = null let sqlInstance: any = null @@ -151,7 +152,8 @@ export async function getDatabaseStats(): Promise<{ const databaseSize = data.length const hasIDB = await openIndexedDB() - const storageType = hasIDB ? 'indexeddb' : (loadFromLocalStorage() ? 'localstorage' : 'none') + const hasLocalStorage = typeof localStorage !== 'undefined' && localStorage.getItem(DB_KEY) !== null + const storageType = hasIDB ? 'indexeddb' : (hasLocalStorage ? 'localstorage' : 'none') return { snippetCount, diff --git a/src/lib/db-indexeddb.ts b/src/lib/db-indexeddb.ts index 5631db3..197de78 100644 --- a/src/lib/db-indexeddb.ts +++ b/src/lib/db-indexeddb.ts @@ -2,10 +2,7 @@ * IndexedDB operations for database persistence */ -const DB_KEY = 'codesnippet-db' -const IDB_NAME = 'CodeSnippetDB' -const IDB_STORE = 'database' -const IDB_VERSION = 1 +import { DB_KEY, IDB_NAME, IDB_STORE, IDB_VERSION } from './db-constants' export async function openIndexedDB(): Promise { if (typeof indexedDB === 'undefined') return null @@ -101,5 +98,3 @@ export async function deleteFromIndexedDB(): Promise { } }) } - -export { DB_KEY } diff --git a/src/lib/db-localstorage.ts b/src/lib/db-localstorage.ts index d5d3b25..10d2020 100644 --- a/src/lib/db-localstorage.ts +++ b/src/lib/db-localstorage.ts @@ -2,7 +2,7 @@ * LocalStorage operations for database persistence */ -import { DB_KEY } from './db-indexeddb' +import { DB_KEY } from './db-constants' export function loadFromLocalStorage(): Uint8Array | null { try {