mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-18 18:03:44 +00:00
Refactor to Store-based architecture
- Create base Store class with private backend and protected getBackend() - Add SettingsStore, ProviderKeysStore, SessionsStore - Each store defines its own schema via getConfig() - AppStorage now takes stores + backend in constructor - Remove SessionsRepository (logic moved to SessionsStore) - Update all consumers to use store API (storage.settings.get/set, storage.providerKeys.get/set) - Update example app to follow new pattern: create stores, gather configs, create backend, wire - Benefits: stores own their schema, no circular deps, cleaner separation
This commit is contained in:
parent
bbbc232c7c
commit
0de89a750e
13 changed files with 243 additions and 126 deletions
|
|
@ -45,7 +45,10 @@ export { ApiKeysTab, ProxyTab, SettingsDialog, SettingsTab } from "./dialogs/Set
|
|||
// Storage
|
||||
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 { Store } from "./storage/store.js";
|
||||
export { ProviderKeysStore } from "./storage/stores/provider-keys-store.js";
|
||||
export { SessionsStore } from "./storage/stores/sessions-store.js";
|
||||
export { SettingsStore } from "./storage/stores/settings-store.js";
|
||||
export type {
|
||||
IndexConfig,
|
||||
IndexedDBConfig,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue