mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-16 15:02:32 +00:00
Implement unified storage architecture
- Replace fragmented storage backends with single IndexedDBStorageBackend - Create multi-store StorageBackend interface (storeName parameter) - Remove old backends: IndexedDBBackend, LocalStorageBackend, SessionIndexedDBBackend, WebExtensionStorageBackend - Remove old repositories: ProviderKeysRepository, SessionRepository, SettingsRepository - Simplify AppStorage to directly expose storage methods (getSetting/setSetting, getProviderKey/setProviderKey) - Create SessionsRepository for session-specific operations - Update all consumers to use new simplified API - Update example app to use new storage architecture - Benefits: 10GB+ quota (vs 10MB chrome.storage), single database, consistent API
This commit is contained in:
parent
b3cce7b400
commit
bbbc232c7c
19 changed files with 421 additions and 998 deletions
|
|
@ -43,20 +43,17 @@ export { PersistentStorageDialog } from "./dialogs/PersistentStorageDialog.js";
|
|||
export { SessionListDialog } from "./dialogs/SessionListDialog.js";
|
||||
export { ApiKeysTab, ProxyTab, SettingsDialog, SettingsTab } from "./dialogs/SettingsDialog.js";
|
||||
// Storage
|
||||
export { AppStorage, getAppStorage, initAppStorage, setAppStorage } from "./storage/app-storage.js";
|
||||
export { IndexedDBBackend } from "./storage/backends/indexeddb-backend.js";
|
||||
export { LocalStorageBackend } from "./storage/backends/local-storage-backend.js";
|
||||
export { SessionIndexedDBBackend } from "./storage/backends/session-indexeddb-backend.js";
|
||||
export { WebExtensionStorageBackend } from "./storage/backends/web-extension-storage-backend.js";
|
||||
export { ProviderKeysRepository } from "./storage/repositories/provider-keys-repository.js";
|
||||
export { SessionRepository } from "./storage/repositories/session-repository.js";
|
||||
export { SettingsRepository } from "./storage/repositories/settings-repository.js";
|
||||
export { AppStorage, getAppStorage, setAppStorage } from "./storage/app-storage.js";
|
||||
export { IndexedDBStorageBackend } from "./storage/backends/indexeddb-storage-backend.js";
|
||||
export { SessionsRepository } from "./storage/sessions-repository.js";
|
||||
export type {
|
||||
AppStorageConfig,
|
||||
IndexConfig,
|
||||
IndexedDBConfig,
|
||||
SessionData,
|
||||
SessionMetadata,
|
||||
SessionStorageBackend,
|
||||
StorageBackend,
|
||||
StorageTransaction,
|
||||
StoreConfig,
|
||||
} from "./storage/types.js";
|
||||
// Artifacts
|
||||
export { ArtifactElement } from "./tools/artifacts/ArtifactElement.js";
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue