fss-link 1.2.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.last_build +0 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/package.json +89 -0
- package/dist/src/commands/mcp/add.d.ts +7 -0
- package/dist/src/commands/mcp/add.js +166 -0
- package/dist/src/commands/mcp/add.js.map +1 -0
- package/dist/src/commands/mcp/list.d.ts +8 -0
- package/dist/src/commands/mcp/list.js +110 -0
- package/dist/src/commands/mcp/list.js.map +1 -0
- package/dist/src/commands/mcp/remove.d.ts +7 -0
- package/dist/src/commands/mcp/remove.js +44 -0
- package/dist/src/commands/mcp/remove.js.map +1 -0
- package/dist/src/commands/mcp.d.ts +7 -0
- package/dist/src/commands/mcp.js +23 -0
- package/dist/src/commands/mcp.js.map +1 -0
- package/dist/src/config/archive-repository-pattern/README.md +26 -0
- package/dist/src/config/archive-repository-pattern/base-repository.d.ts +252 -0
- package/dist/src/config/archive-repository-pattern/base-repository.js +280 -0
- package/dist/src/config/archive-repository-pattern/base-repository.js.map +1 -0
- package/dist/src/config/archive-repository-pattern/model-repository.d.ts +274 -0
- package/dist/src/config/archive-repository-pattern/model-repository.js +482 -0
- package/dist/src/config/archive-repository-pattern/model-repository.js.map +1 -0
- package/dist/src/config/archive-repository-pattern/preferences-repository.d.ts +307 -0
- package/dist/src/config/archive-repository-pattern/preferences-repository.js +604 -0
- package/dist/src/config/archive-repository-pattern/preferences-repository.js.map +1 -0
- package/dist/src/config/archive-repository-pattern/repository-types.d.ts +166 -0
- package/dist/src/config/archive-repository-pattern/repository-types.js +67 -0
- package/dist/src/config/archive-repository-pattern/repository-types.js.map +1 -0
- package/dist/src/config/archive-repository-pattern/settings-repository.d.ts +274 -0
- package/dist/src/config/archive-repository-pattern/settings-repository.js +531 -0
- package/dist/src/config/archive-repository-pattern/settings-repository.js.map +1 -0
- package/dist/src/config/async-mutex.d.ts +61 -0
- package/dist/src/config/async-mutex.js +121 -0
- package/dist/src/config/async-mutex.js.map +1 -0
- package/dist/src/config/async-mutex.test.d.ts +6 -0
- package/dist/src/config/async-mutex.test.js +271 -0
- package/dist/src/config/async-mutex.test.js.map +1 -0
- package/dist/src/config/auth-stress-simplified.test.d.ts +6 -0
- package/dist/src/config/auth-stress-simplified.test.js +329 -0
- package/dist/src/config/auth-stress-simplified.test.js.map +1 -0
- package/dist/src/config/auth-stress.test.d.ts +9 -0
- package/dist/src/config/auth-stress.test.js +544 -0
- package/dist/src/config/auth-stress.test.js.map +1 -0
- package/dist/src/config/auth.d.ts +96 -0
- package/dist/src/config/auth.js +371 -0
- package/dist/src/config/auth.js.map +1 -0
- package/dist/src/config/auth.test.d.ts +6 -0
- package/dist/src/config/auth.test.js +61 -0
- package/dist/src/config/auth.test.js.map +1 -0
- package/dist/src/config/base-repository.d.ts +252 -0
- package/dist/src/config/base-repository.js +272 -0
- package/dist/src/config/base-repository.js.map +1 -0
- package/dist/src/config/config.d.ts +51 -0
- package/dist/src/config/config.js +553 -0
- package/dist/src/config/config.js.map +1 -0
- package/dist/src/config/core-database.d.ts +112 -0
- package/dist/src/config/core-database.js +370 -0
- package/dist/src/config/core-database.js.map +1 -0
- package/dist/src/config/database-integration.test.d.ts +6 -0
- package/dist/src/config/database-integration.test.js +547 -0
- package/dist/src/config/database-integration.test.js.map +1 -0
- package/dist/src/config/database-legacy-wrapper.d.ts +202 -0
- package/dist/src/config/database-legacy-wrapper.js +391 -0
- package/dist/src/config/database-legacy-wrapper.js.map +1 -0
- package/dist/src/config/database-monitor.d.ts +135 -0
- package/dist/src/config/database-monitor.js +306 -0
- package/dist/src/config/database-monitor.js.map +1 -0
- package/dist/src/config/database-queue.d.ts +106 -0
- package/dist/src/config/database-queue.js +187 -0
- package/dist/src/config/database-queue.js.map +1 -0
- package/dist/src/config/database-queue.test.d.ts +6 -0
- package/dist/src/config/database-queue.test.js +344 -0
- package/dist/src/config/database-queue.test.js.map +1 -0
- package/dist/src/config/database-regression-simple.test.d.ts +6 -0
- package/dist/src/config/database-regression-simple.test.js +335 -0
- package/dist/src/config/database-regression-simple.test.js.map +1 -0
- package/dist/src/config/database-regression.test.d.ts +6 -0
- package/dist/src/config/database-regression.test.js +523 -0
- package/dist/src/config/database-regression.test.js.map +1 -0
- package/dist/src/config/database-stress.test.d.ts +6 -0
- package/dist/src/config/database-stress.test.js +522 -0
- package/dist/src/config/database-stress.test.js.map +1 -0
- package/dist/src/config/database-utils.d.ts +281 -0
- package/dist/src/config/database-utils.js +664 -0
- package/dist/src/config/database-utils.js.map +1 -0
- package/dist/src/config/database-utils.test.d.ts +6 -0
- package/dist/src/config/database-utils.test.js +278 -0
- package/dist/src/config/database-utils.test.js.map +1 -0
- package/dist/src/config/database.d.ts +212 -0
- package/dist/src/config/database.js +458 -0
- package/dist/src/config/database.js.map +1 -0
- package/dist/src/config/databaseBackup.d.ts +114 -0
- package/dist/src/config/databaseBackup.js +334 -0
- package/dist/src/config/databaseBackup.js.map +1 -0
- package/dist/src/config/databaseHealthMonitor.d.ts +86 -0
- package/dist/src/config/databaseHealthMonitor.js +180 -0
- package/dist/src/config/databaseHealthMonitor.js.map +1 -0
- package/dist/src/config/databaseMetrics.d.ts +147 -0
- package/dist/src/config/databaseMetrics.js +369 -0
- package/dist/src/config/databaseMetrics.js.map +1 -0
- package/dist/src/config/databaseMigrations.d.ts +75 -0
- package/dist/src/config/databaseMigrations.js +405 -0
- package/dist/src/config/databaseMigrations.js.map +1 -0
- package/dist/src/config/databasePool.d.ts +72 -0
- package/dist/src/config/databasePool.js +226 -0
- package/dist/src/config/databasePool.js.map +1 -0
- package/dist/src/config/databaseSchemaValidator.d.ts +114 -0
- package/dist/src/config/databaseSchemaValidator.js +497 -0
- package/dist/src/config/databaseSchemaValidator.js.map +1 -0
- package/dist/src/config/extension.d.ts +23 -0
- package/dist/src/config/extension.js +126 -0
- package/dist/src/config/extension.js.map +1 -0
- package/dist/src/config/health-database.d.ts +172 -0
- package/dist/src/config/health-database.js +283 -0
- package/dist/src/config/health-database.js.map +1 -0
- package/dist/src/config/keyBindings.d.ts +66 -0
- package/dist/src/config/keyBindings.js +141 -0
- package/dist/src/config/keyBindings.js.map +1 -0
- package/dist/src/config/keyBindings.test.d.ts +6 -0
- package/dist/src/config/keyBindings.test.js +51 -0
- package/dist/src/config/keyBindings.test.js.map +1 -0
- package/dist/src/config/model-database.d.ts +157 -0
- package/dist/src/config/model-database.js +379 -0
- package/dist/src/config/model-database.js.map +1 -0
- package/dist/src/config/model-repository.d.ts +274 -0
- package/dist/src/config/model-repository.js +482 -0
- package/dist/src/config/model-repository.js.map +1 -0
- package/dist/src/config/modelManager.d.ts +146 -0
- package/dist/src/config/modelManager.js +573 -0
- package/dist/src/config/modelManager.js.map +1 -0
- package/dist/src/config/preferences-database.d.ts +101 -0
- package/dist/src/config/preferences-database.js +209 -0
- package/dist/src/config/preferences-database.js.map +1 -0
- package/dist/src/config/preferences-repository.d.ts +307 -0
- package/dist/src/config/preferences-repository.js +604 -0
- package/dist/src/config/preferences-repository.js.map +1 -0
- package/dist/src/config/provider-database.d.ts +102 -0
- package/dist/src/config/provider-database.js +250 -0
- package/dist/src/config/provider-database.js.map +1 -0
- package/dist/src/config/providerPersistence.d.ts +82 -0
- package/dist/src/config/providerPersistence.js +62 -0
- package/dist/src/config/providerPersistence.js.map +1 -0
- package/dist/src/config/queryOptimizer.d.ts +127 -0
- package/dist/src/config/queryOptimizer.js +330 -0
- package/dist/src/config/queryOptimizer.js.map +1 -0
- package/dist/src/config/repository-types.d.ts +166 -0
- package/dist/src/config/repository-types.js +67 -0
- package/dist/src/config/repository-types.js.map +1 -0
- package/dist/src/config/sandboxConfig.d.ts +13 -0
- package/dist/src/config/sandboxConfig.js +75 -0
- package/dist/src/config/sandboxConfig.js.map +1 -0
- package/dist/src/config/settings-repository.d.ts +274 -0
- package/dist/src/config/settings-repository.js +531 -0
- package/dist/src/config/settings-repository.js.map +1 -0
- package/dist/src/config/settings.d.ts +56 -0
- package/dist/src/config/settings.js +411 -0
- package/dist/src/config/settings.js.map +1 -0
- package/dist/src/config/settingsSchema.d.ts +703 -0
- package/dist/src/config/settingsSchema.js +679 -0
- package/dist/src/config/settingsSchema.js.map +1 -0
- package/dist/src/config/settingsSchema.test.d.ts +6 -0
- package/dist/src/config/settingsSchema.test.js +195 -0
- package/dist/src/config/settingsSchema.test.js.map +1 -0
- package/dist/src/config/trustedFolders.d.ts +37 -0
- package/dist/src/config/trustedFolders.js +118 -0
- package/dist/src/config/trustedFolders.js.map +1 -0
- package/dist/src/config/trustedFolders.test.d.ts +6 -0
- package/dist/src/config/trustedFolders.test.js +160 -0
- package/dist/src/config/trustedFolders.test.js.map +1 -0
- package/dist/src/config/unified-database.d.ts +383 -0
- package/dist/src/config/unified-database.js +651 -0
- package/dist/src/config/unified-database.js.map +1 -0
- package/dist/src/config/unified-database.test.d.ts +6 -0
- package/dist/src/config/unified-database.test.js +162 -0
- package/dist/src/config/unified-database.test.js.map +1 -0
- package/dist/src/gemini.d.ts +9 -0
- package/dist/src/gemini.js +334 -0
- package/dist/src/gemini.js.map +1 -0
- package/dist/src/gemini.test.d.ts +6 -0
- package/dist/src/gemini.test.js +193 -0
- package/dist/src/gemini.test.js.map +1 -0
- package/dist/src/generated/git-commit.d.ts +7 -0
- package/dist/src/generated/git-commit.js +10 -0
- package/dist/src/generated/git-commit.js.map +1 -0
- package/dist/src/nonInteractiveCli.d.ts +7 -0
- package/dist/src/nonInteractiveCli.js +103 -0
- package/dist/src/nonInteractiveCli.js.map +1 -0
- package/dist/src/patches/is-in-ci.d.ts +7 -0
- package/dist/src/patches/is-in-ci.js +15 -0
- package/dist/src/patches/is-in-ci.js.map +1 -0
- package/dist/src/services/BuiltinCommandLoader.d.ts +24 -0
- package/dist/src/services/BuiltinCommandLoader.js +92 -0
- package/dist/src/services/BuiltinCommandLoader.js.map +1 -0
- package/dist/src/services/BuiltinCommandLoader.test.d.ts +6 -0
- package/dist/src/services/BuiltinCommandLoader.test.js +108 -0
- package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -0
- package/dist/src/services/CommandService.d.ts +55 -0
- package/dist/src/services/CommandService.js +90 -0
- package/dist/src/services/CommandService.js.map +1 -0
- package/dist/src/services/CommandService.test.d.ts +6 -0
- package/dist/src/services/CommandService.test.js +232 -0
- package/dist/src/services/CommandService.test.js.map +1 -0
- package/dist/src/services/FileCommandLoader.d.ts +49 -0
- package/dist/src/services/FileCommandLoader.js +210 -0
- package/dist/src/services/FileCommandLoader.js.map +1 -0
- package/dist/src/services/McpPromptLoader.d.ts +25 -0
- package/dist/src/services/McpPromptLoader.js +192 -0
- package/dist/src/services/McpPromptLoader.js.map +1 -0
- package/dist/src/services/SearchEngineConfigProvider.d.ts +33 -0
- package/dist/src/services/SearchEngineConfigProvider.js +82 -0
- package/dist/src/services/SearchEngineConfigProvider.js.map +1 -0
- package/dist/src/services/prompt-processors/argumentProcessor.d.ts +16 -0
- package/dist/src/services/prompt-processors/argumentProcessor.js +20 -0
- package/dist/src/services/prompt-processors/argumentProcessor.js.map +1 -0
- package/dist/src/services/prompt-processors/shellProcessor.d.ts +35 -0
- package/dist/src/services/prompt-processors/shellProcessor.js +162 -0
- package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -0
- package/dist/src/services/prompt-processors/types.d.ts +40 -0
- package/dist/src/services/prompt-processors/types.js +16 -0
- package/dist/src/services/prompt-processors/types.js.map +1 -0
- package/dist/src/services/types.d.ts +22 -0
- package/dist/src/services/types.js +7 -0
- package/dist/src/services/types.js.map +1 -0
- package/dist/src/test-utils/customMatchers.d.ts +14 -0
- package/dist/src/test-utils/customMatchers.js +46 -0
- package/dist/src/test-utils/customMatchers.js.map +1 -0
- package/dist/src/test-utils/mockCommandContext.d.ts +18 -0
- package/dist/src/test-utils/mockCommandContext.js +87 -0
- package/dist/src/test-utils/mockCommandContext.js.map +1 -0
- package/dist/src/test-utils/mockCommandContext.test.d.ts +6 -0
- package/dist/src/test-utils/mockCommandContext.test.js +51 -0
- package/dist/src/test-utils/mockCommandContext.test.js.map +1 -0
- package/dist/src/test-utils/render.d.ts +8 -0
- package/dist/src/test-utils/render.js +10 -0
- package/dist/src/test-utils/render.js.map +1 -0
- package/dist/src/ui/App.d.ts +15 -0
- package/dist/src/ui/App.js +687 -0
- package/dist/src/ui/App.js.map +1 -0
- package/dist/src/ui/IdeIntegrationNudge.d.ts +16 -0
- package/dist/src/ui/IdeIntegrationNudge.js +52 -0
- package/dist/src/ui/IdeIntegrationNudge.js.map +1 -0
- package/dist/src/ui/colors.d.ts +7 -0
- package/dist/src/ui/colors.js +54 -0
- package/dist/src/ui/colors.js.map +1 -0
- package/dist/src/ui/commands/aboutCommand.d.ts +7 -0
- package/dist/src/ui/commands/aboutCommand.js +43 -0
- package/dist/src/ui/commands/aboutCommand.js.map +1 -0
- package/dist/src/ui/commands/authCommand.d.ts +7 -0
- package/dist/src/ui/commands/authCommand.js +16 -0
- package/dist/src/ui/commands/authCommand.js.map +1 -0
- package/dist/src/ui/commands/bugCommand.d.ts +7 -0
- package/dist/src/ui/commands/bugCommand.js +71 -0
- package/dist/src/ui/commands/bugCommand.js.map +1 -0
- package/dist/src/ui/commands/chatCommand.d.ts +7 -0
- package/dist/src/ui/commands/chatCommand.js +234 -0
- package/dist/src/ui/commands/chatCommand.js.map +1 -0
- package/dist/src/ui/commands/clearCommand.d.ts +7 -0
- package/dist/src/ui/commands/clearCommand.js +27 -0
- package/dist/src/ui/commands/clearCommand.js.map +1 -0
- package/dist/src/ui/commands/compressCommand.d.ts +7 -0
- package/dist/src/ui/commands/compressCommand.js +64 -0
- package/dist/src/ui/commands/compressCommand.js.map +1 -0
- package/dist/src/ui/commands/contextCommand.d.ts +7 -0
- package/dist/src/ui/commands/contextCommand.js +115 -0
- package/dist/src/ui/commands/contextCommand.js.map +1 -0
- package/dist/src/ui/commands/copyCommand.d.ts +7 -0
- package/dist/src/ui/commands/copyCommand.js +59 -0
- package/dist/src/ui/commands/copyCommand.js.map +1 -0
- package/dist/src/ui/commands/corgiCommand.d.ts +7 -0
- package/dist/src/ui/commands/corgiCommand.js +15 -0
- package/dist/src/ui/commands/corgiCommand.js.map +1 -0
- package/dist/src/ui/commands/directoryCommand.d.ts +8 -0
- package/dist/src/ui/commands/directoryCommand.js +133 -0
- package/dist/src/ui/commands/directoryCommand.js.map +1 -0
- package/dist/src/ui/commands/docsCommand.d.ts +7 -0
- package/dist/src/ui/commands/docsCommand.js +31 -0
- package/dist/src/ui/commands/docsCommand.js.map +1 -0
- package/dist/src/ui/commands/editorCommand.d.ts +7 -0
- package/dist/src/ui/commands/editorCommand.js +16 -0
- package/dist/src/ui/commands/editorCommand.js.map +1 -0
- package/dist/src/ui/commands/extensionsCommand.d.ts +7 -0
- package/dist/src/ui/commands/extensionsCommand.js +31 -0
- package/dist/src/ui/commands/extensionsCommand.js.map +1 -0
- package/dist/src/ui/commands/helpCommand.d.ts +7 -0
- package/dist/src/ui/commands/helpCommand.js +21 -0
- package/dist/src/ui/commands/helpCommand.js.map +1 -0
- package/dist/src/ui/commands/ideCommand.d.ts +8 -0
- package/dist/src/ui/commands/ideCommand.js +218 -0
- package/dist/src/ui/commands/ideCommand.js.map +1 -0
- package/dist/src/ui/commands/initCommand.d.ts +7 -0
- package/dist/src/ui/commands/initCommand.js +105 -0
- package/dist/src/ui/commands/initCommand.js.map +1 -0
- package/dist/src/ui/commands/mcpCommand.d.ts +7 -0
- package/dist/src/ui/commands/mcpCommand.js +424 -0
- package/dist/src/ui/commands/mcpCommand.js.map +1 -0
- package/dist/src/ui/commands/memoryCommand.d.ts +7 -0
- package/dist/src/ui/commands/memoryCommand.js +224 -0
- package/dist/src/ui/commands/memoryCommand.js.map +1 -0
- package/dist/src/ui/commands/privacyCommand.d.ts +7 -0
- package/dist/src/ui/commands/privacyCommand.js +16 -0
- package/dist/src/ui/commands/privacyCommand.js.map +1 -0
- package/dist/src/ui/commands/quitCommand.d.ts +7 -0
- package/dist/src/ui/commands/quitCommand.js +34 -0
- package/dist/src/ui/commands/quitCommand.js.map +1 -0
- package/dist/src/ui/commands/restoreCommand.d.ts +8 -0
- package/dist/src/ui/commands/restoreCommand.js +128 -0
- package/dist/src/ui/commands/restoreCommand.js.map +1 -0
- package/dist/src/ui/commands/searchEngineSetupCommand.d.ts +7 -0
- package/dist/src/ui/commands/searchEngineSetupCommand.js +17 -0
- package/dist/src/ui/commands/searchEngineSetupCommand.js.map +1 -0
- package/dist/src/ui/commands/settingsCommand.d.ts +7 -0
- package/dist/src/ui/commands/settingsCommand.js +16 -0
- package/dist/src/ui/commands/settingsCommand.js.map +1 -0
- package/dist/src/ui/commands/setupGithubCommand.d.ts +9 -0
- package/dist/src/ui/commands/setupGithubCommand.js +154 -0
- package/dist/src/ui/commands/setupGithubCommand.js.map +1 -0
- package/dist/src/ui/commands/setupGithubCommand.test.d.ts +6 -0
- package/dist/src/ui/commands/setupGithubCommand.test.js +167 -0
- package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -0
- package/dist/src/ui/commands/speakCommand.d.ts +7 -0
- package/dist/src/ui/commands/speakCommand.js +136 -0
- package/dist/src/ui/commands/speakCommand.js.map +1 -0
- package/dist/src/ui/commands/statsCommand.d.ts +7 -0
- package/dist/src/ui/commands/statsCommand.js +54 -0
- package/dist/src/ui/commands/statsCommand.js.map +1 -0
- package/dist/src/ui/commands/terminalSetupCommand.d.ts +13 -0
- package/dist/src/ui/commands/terminalSetupCommand.js +41 -0
- package/dist/src/ui/commands/terminalSetupCommand.js.map +1 -0
- package/dist/src/ui/commands/themeCommand.d.ts +7 -0
- package/dist/src/ui/commands/themeCommand.js +16 -0
- package/dist/src/ui/commands/themeCommand.js.map +1 -0
- package/dist/src/ui/commands/toolsCommand.d.ts +7 -0
- package/dist/src/ui/commands/toolsCommand.js +56 -0
- package/dist/src/ui/commands/toolsCommand.js.map +1 -0
- package/dist/src/ui/commands/ttsCommand.d.ts +7 -0
- package/dist/src/ui/commands/ttsCommand.js +122 -0
- package/dist/src/ui/commands/ttsCommand.js.map +1 -0
- package/dist/src/ui/commands/types.d.ts +157 -0
- package/dist/src/ui/commands/types.js +12 -0
- package/dist/src/ui/commands/types.js.map +1 -0
- package/dist/src/ui/commands/vimCommand.d.ts +7 -0
- package/dist/src/ui/commands/vimCommand.js +23 -0
- package/dist/src/ui/commands/vimCommand.js.map +1 -0
- package/dist/src/ui/commands/voiceCommand.d.ts +7 -0
- package/dist/src/ui/commands/voiceCommand.js +95 -0
- package/dist/src/ui/commands/voiceCommand.js.map +1 -0
- package/dist/src/ui/components/AboutBox.d.ts +17 -0
- package/dist/src/ui/components/AboutBox.js +6 -0
- package/dist/src/ui/components/AboutBox.js.map +1 -0
- package/dist/src/ui/components/AsciiArt.d.ts +8 -0
- package/dist/src/ui/components/AsciiArt.js +53 -0
- package/dist/src/ui/components/AsciiArt.js.map +1 -0
- package/dist/src/ui/components/AuthDialog.d.ts +15 -0
- package/dist/src/ui/components/AuthDialog.js +174 -0
- package/dist/src/ui/components/AuthDialog.js.map +1 -0
- package/dist/src/ui/components/AuthDialog.test.d.ts +6 -0
- package/dist/src/ui/components/AuthDialog.test.js +220 -0
- package/dist/src/ui/components/AuthDialog.test.js.map +1 -0
- package/dist/src/ui/components/AuthInProgress.d.ts +11 -0
- package/dist/src/ui/components/AuthInProgress.js +28 -0
- package/dist/src/ui/components/AuthInProgress.js.map +1 -0
- package/dist/src/ui/components/AutoAcceptIndicator.d.ts +12 -0
- package/dist/src/ui/components/AutoAcceptIndicator.js +26 -0
- package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -0
- package/dist/src/ui/components/ConsoleSummaryDisplay.d.ts +11 -0
- package/dist/src/ui/components/ConsoleSummaryDisplay.js +11 -0
- package/dist/src/ui/components/ConsoleSummaryDisplay.js.map +1 -0
- package/dist/src/ui/components/ContextSummaryDisplay.d.ts +20 -0
- package/dist/src/ui/components/ContextSummaryDisplay.js +65 -0
- package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -0
- package/dist/src/ui/components/ContextUsageDisplay.d.ts +11 -0
- package/dist/src/ui/components/ContextUsageDisplay.js +100 -0
- package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -0
- package/dist/src/ui/components/DebugProfiler.d.ts +6 -0
- package/dist/src/ui/components/DebugProfiler.js +27 -0
- package/dist/src/ui/components/DebugProfiler.js.map +1 -0
- package/dist/src/ui/components/DetailedMessagesDisplay.d.ts +14 -0
- package/dist/src/ui/components/DetailedMessagesDisplay.js +34 -0
- package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -0
- package/dist/src/ui/components/EditorSettingsDialog.d.ts +15 -0
- package/dist/src/ui/components/EditorSettingsDialog.js +74 -0
- package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -0
- package/dist/src/ui/components/FolderTrustDialog.d.ts +16 -0
- package/dist/src/ui/components/FolderTrustDialog.js +39 -0
- package/dist/src/ui/components/FolderTrustDialog.js.map +1 -0
- package/dist/src/ui/components/FolderTrustDialog.test.d.ts +6 -0
- package/dist/src/ui/components/FolderTrustDialog.test.js +26 -0
- package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -0
- package/dist/src/ui/components/Footer.d.ts +24 -0
- package/dist/src/ui/components/Footer.js +25 -0
- package/dist/src/ui/components/Footer.js.map +1 -0
- package/dist/src/ui/components/GeminiRespondingSpinner.d.ts +17 -0
- package/dist/src/ui/components/GeminiRespondingSpinner.js +16 -0
- package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -0
- package/dist/src/ui/components/Header.d.ts +13 -0
- package/dist/src/ui/components/Header.js +28 -0
- package/dist/src/ui/components/Header.js.map +1 -0
- package/dist/src/ui/components/Header.test.d.ts +6 -0
- package/dist/src/ui/components/Header.test.js +37 -0
- package/dist/src/ui/components/Header.test.js.map +1 -0
- package/dist/src/ui/components/Help.d.ts +12 -0
- package/dist/src/ui/components/Help.js +10 -0
- package/dist/src/ui/components/Help.js.map +1 -0
- package/dist/src/ui/components/HistoryItemDisplay.d.ts +20 -0
- package/dist/src/ui/components/HistoryItemDisplay.js +18 -0
- package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -0
- package/dist/src/ui/components/HistoryItemDisplay.test.d.ts +6 -0
- package/dist/src/ui/components/HistoryItemDisplay.test.js +91 -0
- package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -0
- package/dist/src/ui/components/InputPrompt.d.ts +28 -0
- package/dist/src/ui/components/InputPrompt.js +440 -0
- package/dist/src/ui/components/InputPrompt.js.map +1 -0
- package/dist/src/ui/components/LMStudioModelPrompt.d.ts +12 -0
- package/dist/src/ui/components/LMStudioModelPrompt.js +100 -0
- package/dist/src/ui/components/LMStudioModelPrompt.js.map +1 -0
- package/dist/src/ui/components/LoadingIndicator.d.ts +15 -0
- package/dist/src/ui/components/LoadingIndicator.js +25 -0
- package/dist/src/ui/components/LoadingIndicator.js.map +1 -0
- package/dist/src/ui/components/LoadingIndicator.test.d.ts +6 -0
- package/dist/src/ui/components/LoadingIndicator.test.js +190 -0
- package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -0
- package/dist/src/ui/components/MemoryUsageDisplay.d.ts +7 -0
- package/dist/src/ui/components/MemoryUsageDisplay.js +27 -0
- package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -0
- package/dist/src/ui/components/ModelStatsDisplay.d.ts +7 -0
- package/dist/src/ui/components/ModelStatsDisplay.js +33 -0
- package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -0
- package/dist/src/ui/components/OllamaModelPrompt.d.ts +12 -0
- package/dist/src/ui/components/OllamaModelPrompt.js +94 -0
- package/dist/src/ui/components/OllamaModelPrompt.js.map +1 -0
- package/dist/src/ui/components/OpenAIEndpointDialog.d.ts +18 -0
- package/dist/src/ui/components/OpenAIEndpointDialog.js +77 -0
- package/dist/src/ui/components/OpenAIEndpointDialog.js.map +1 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.d.ts +13 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.js +118 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.js.map +1 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.test.d.ts +6 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.test.js +44 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.test.js.map +1 -0
- package/dist/src/ui/components/PrepareLabel.d.ts +15 -0
- package/dist/src/ui/components/PrepareLabel.js +16 -0
- package/dist/src/ui/components/PrepareLabel.js.map +1 -0
- package/dist/src/ui/components/SearchEngineConfigDialog.d.ts +18 -0
- package/dist/src/ui/components/SearchEngineConfigDialog.js +180 -0
- package/dist/src/ui/components/SearchEngineConfigDialog.js.map +1 -0
- package/dist/src/ui/components/SessionSummaryDisplay.d.ts +11 -0
- package/dist/src/ui/components/SessionSummaryDisplay.js +4 -0
- package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -0
- package/dist/src/ui/components/SettingsDialog.d.ts +14 -0
- package/dist/src/ui/components/SettingsDialog.js +519 -0
- package/dist/src/ui/components/SettingsDialog.js.map +1 -0
- package/dist/src/ui/components/SettingsDialog.test.d.ts +6 -0
- package/dist/src/ui/components/SettingsDialog.test.js +568 -0
- package/dist/src/ui/components/SettingsDialog.test.js.map +1 -0
- package/dist/src/ui/components/ShellConfirmationDialog.d.ts +15 -0
- package/dist/src/ui/components/ShellConfirmationDialog.js +46 -0
- package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -0
- package/dist/src/ui/components/ShellConfirmationDialog.test.d.ts +6 -0
- package/dist/src/ui/components/ShellConfirmationDialog.test.js +40 -0
- package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +1 -0
- package/dist/src/ui/components/ShellModeIndicator.d.ts +7 -0
- package/dist/src/ui/components/ShellModeIndicator.js +5 -0
- package/dist/src/ui/components/ShellModeIndicator.js.map +1 -0
- package/dist/src/ui/components/ShowMoreLines.d.ts +10 -0
- package/dist/src/ui/components/ShowMoreLines.js +24 -0
- package/dist/src/ui/components/ShowMoreLines.js.map +1 -0
- package/dist/src/ui/components/StatsDisplay.d.ts +12 -0
- package/dist/src/ui/components/StatsDisplay.js +43 -0
- package/dist/src/ui/components/StatsDisplay.js.map +1 -0
- package/dist/src/ui/components/SuggestionsDisplay.d.ts +22 -0
- package/dist/src/ui/components/SuggestionsDisplay.js +32 -0
- package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -0
- package/dist/src/ui/components/ThemeDialog.d.ts +19 -0
- package/dist/src/ui/components/ThemeDialog.js +143 -0
- package/dist/src/ui/components/ThemeDialog.js.map +1 -0
- package/dist/src/ui/components/Tips.d.ts +12 -0
- package/dist/src/ui/components/Tips.js +8 -0
- package/dist/src/ui/components/Tips.js.map +1 -0
- package/dist/src/ui/components/TodoDisplay.d.ts +16 -0
- package/dist/src/ui/components/TodoDisplay.js +27 -0
- package/dist/src/ui/components/TodoDisplay.js.map +1 -0
- package/dist/src/ui/components/TodoDisplay.test.d.ts +6 -0
- package/dist/src/ui/components/TodoDisplay.test.js +77 -0
- package/dist/src/ui/components/TodoDisplay.test.js.map +1 -0
- package/dist/src/ui/components/ToolStatsDisplay.d.ts +7 -0
- package/dist/src/ui/components/ToolStatsDisplay.js +41 -0
- package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -0
- package/dist/src/ui/components/UpdateNotification.d.ts +10 -0
- package/dist/src/ui/components/UpdateNotification.js +10 -0
- package/dist/src/ui/components/UpdateNotification.js.map +1 -0
- package/dist/src/ui/components/WelcomeBackDialog.d.ts +36 -0
- package/dist/src/ui/components/WelcomeBackDialog.js +109 -0
- package/dist/src/ui/components/WelcomeBackDialog.js.map +1 -0
- package/dist/src/ui/components/messages/CompressionMessage.d.ts +11 -0
- package/dist/src/ui/components/messages/CompressionMessage.js +16 -0
- package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -0
- package/dist/src/ui/components/messages/DiffRenderer.d.ts +16 -0
- package/dist/src/ui/components/messages/DiffRenderer.js +222 -0
- package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -0
- package/dist/src/ui/components/messages/DiffRenderer.test.d.ts +6 -0
- package/dist/src/ui/components/messages/DiffRenderer.test.js +239 -0
- package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -0
- package/dist/src/ui/components/messages/ErrorMessage.d.ts +11 -0
- package/dist/src/ui/components/messages/ErrorMessage.js +9 -0
- package/dist/src/ui/components/messages/ErrorMessage.js.map +1 -0
- package/dist/src/ui/components/messages/GeminiMessage.d.ts +14 -0
- package/dist/src/ui/components/messages/GeminiMessage.js +10 -0
- package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -0
- package/dist/src/ui/components/messages/GeminiMessageContent.d.ts +14 -0
- package/dist/src/ui/components/messages/GeminiMessageContent.js +15 -0
- package/dist/src/ui/components/messages/GeminiMessageContent.js.map +1 -0
- package/dist/src/ui/components/messages/InfoMessage.d.ts +11 -0
- package/dist/src/ui/components/messages/InfoMessage.js +10 -0
- package/dist/src/ui/components/messages/InfoMessage.js.map +1 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +15 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +145 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.d.ts +6 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +37 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -0
- package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +18 -0
- package/dist/src/ui/components/messages/ToolGroupMessage.js +55 -0
- package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -0
- package/dist/src/ui/components/messages/ToolMessage.d.ts +15 -0
- package/dist/src/ui/components/messages/ToolMessage.js +111 -0
- package/dist/src/ui/components/messages/ToolMessage.js.map +1 -0
- package/dist/src/ui/components/messages/ToolMessage.test.d.ts +6 -0
- package/dist/src/ui/components/messages/ToolMessage.test.js +118 -0
- package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -0
- package/dist/src/ui/components/messages/UserMessage.d.ts +11 -0
- package/dist/src/ui/components/messages/UserMessage.js +12 -0
- package/dist/src/ui/components/messages/UserMessage.js.map +1 -0
- package/dist/src/ui/components/messages/UserShellMessage.d.ts +11 -0
- package/dist/src/ui/components/messages/UserShellMessage.js +9 -0
- package/dist/src/ui/components/messages/UserShellMessage.js.map +1 -0
- package/dist/src/ui/components/shared/MaxSizedBox.d.ts +61 -0
- package/dist/src/ui/components/shared/MaxSizedBox.js +451 -0
- package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -0
- package/dist/src/ui/components/shared/MaxSizedBox.test.d.ts +6 -0
- package/dist/src/ui/components/shared/MaxSizedBox.test.js +154 -0
- package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +1 -0
- package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +46 -0
- package/dist/src/ui/components/shared/RadioButtonSelect.js +121 -0
- package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -0
- package/dist/src/ui/components/shared/RadioButtonSelect.test.d.ts +6 -0
- package/dist/src/ui/components/shared/RadioButtonSelect.test.js +111 -0
- package/dist/src/ui/components/shared/RadioButtonSelect.test.js.map +1 -0
- package/dist/src/ui/components/shared/text-buffer.d.ts +467 -0
- package/dist/src/ui/components/shared/text-buffer.js +1533 -0
- package/dist/src/ui/components/shared/text-buffer.js.map +1 -0
- package/dist/src/ui/components/shared/vim-buffer-actions.d.ts +72 -0
- package/dist/src/ui/components/shared/vim-buffer-actions.js +552 -0
- package/dist/src/ui/components/shared/vim-buffer-actions.js.map +1 -0
- package/dist/src/ui/constants.d.ts +9 -0
- package/dist/src/ui/constants.js +13 -0
- package/dist/src/ui/constants.js.map +1 -0
- package/dist/src/ui/contexts/KeypressContext.d.ts +30 -0
- package/dist/src/ui/contexts/KeypressContext.js +331 -0
- package/dist/src/ui/contexts/KeypressContext.js.map +1 -0
- package/dist/src/ui/contexts/KeypressContext.test.d.ts +6 -0
- package/dist/src/ui/contexts/KeypressContext.test.js +275 -0
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -0
- package/dist/src/ui/contexts/OverflowContext.d.ts +19 -0
- package/dist/src/ui/contexts/OverflowContext.js +43 -0
- package/dist/src/ui/contexts/OverflowContext.js.map +1 -0
- package/dist/src/ui/contexts/SessionContext.d.ts +39 -0
- package/dist/src/ui/contexts/SessionContext.js +60 -0
- package/dist/src/ui/contexts/SessionContext.js.map +1 -0
- package/dist/src/ui/contexts/SettingsContext.d.ts +9 -0
- package/dist/src/ui/contexts/SettingsContext.js +15 -0
- package/dist/src/ui/contexts/SettingsContext.js.map +1 -0
- package/dist/src/ui/contexts/StreamingContext.d.ts +9 -0
- package/dist/src/ui/contexts/StreamingContext.js +15 -0
- package/dist/src/ui/contexts/StreamingContext.js.map +1 -0
- package/dist/src/ui/contexts/VimModeContext.d.ts +19 -0
- package/dist/src/ui/contexts/VimModeContext.js +48 -0
- package/dist/src/ui/contexts/VimModeContext.js.map +1 -0
- package/dist/src/ui/editors/editorSettingsManager.d.ts +19 -0
- package/dist/src/ui/editors/editorSettingsManager.js +47 -0
- package/dist/src/ui/editors/editorSettingsManager.js.map +1 -0
- package/dist/src/ui/hooks/atCommandProcessor.d.ts +31 -0
- package/dist/src/ui/hooks/atCommandProcessor.js +365 -0
- package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -0
- package/dist/src/ui/hooks/atCommandProcessor.test.d.ts +6 -0
- package/dist/src/ui/hooks/atCommandProcessor.test.js +824 -0
- package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -0
- package/dist/src/ui/hooks/shellCommandProcessor.d.ts +17 -0
- package/dist/src/ui/hooks/shellCommandProcessor.js +233 -0
- package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -0
- package/dist/src/ui/hooks/shellCommandProcessor.test.d.ts +6 -0
- package/dist/src/ui/hooks/shellCommandProcessor.test.js +328 -0
- package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -0
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +28 -0
- package/dist/src/ui/hooks/slashCommandProcessor.js +459 -0
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -0
- package/dist/src/ui/hooks/useAtCompletion.d.ts +23 -0
- package/dist/src/ui/hooks/useAtCompletion.js +179 -0
- package/dist/src/ui/hooks/useAtCompletion.js.map +1 -0
- package/dist/src/ui/hooks/useAuthCommand.d.ts +14 -0
- package/dist/src/ui/hooks/useAuthCommand.js +100 -0
- package/dist/src/ui/hooks/useAuthCommand.js.map +1 -0
- package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +10 -0
- package/dist/src/ui/hooks/useAutoAcceptIndicator.js +37 -0
- package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -0
- package/dist/src/ui/hooks/useAutoAcceptIndicator.test.d.ts +6 -0
- package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +190 -0
- package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -0
- package/dist/src/ui/hooks/useBracketedPaste.d.ts +12 -0
- package/dist/src/ui/hooks/useBracketedPaste.js +32 -0
- package/dist/src/ui/hooks/useBracketedPaste.js.map +1 -0
- package/dist/src/ui/hooks/useCommandCompletion.d.ts +29 -0
- package/dist/src/ui/hooks/useCommandCompletion.js +165 -0
- package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -0
- package/dist/src/ui/hooks/useCompletion.d.ts +24 -0
- package/dist/src/ui/hooks/useCompletion.js +88 -0
- package/dist/src/ui/hooks/useCompletion.js.map +1 -0
- package/dist/src/ui/hooks/useConsoleMessages.d.ts +12 -0
- package/dist/src/ui/hooks/useConsoleMessages.js +76 -0
- package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -0
- package/dist/src/ui/hooks/useEditorSettings.d.ts +16 -0
- package/dist/src/ui/hooks/useEditorSettings.js +43 -0
- package/dist/src/ui/hooks/useEditorSettings.js.map +1 -0
- package/dist/src/ui/hooks/useEditorSettings.test.d.ts +6 -0
- package/dist/src/ui/hooks/useEditorSettings.test.js +164 -0
- package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -0
- package/dist/src/ui/hooks/useFocus.d.ts +10 -0
- package/dist/src/ui/hooks/useFocus.js +41 -0
- package/dist/src/ui/hooks/useFocus.js.map +1 -0
- package/dist/src/ui/hooks/useFolderTrust.d.ts +12 -0
- package/dist/src/ui/hooks/useFolderTrust.js +55 -0
- package/dist/src/ui/hooks/useFolderTrust.js.map +1 -0
- package/dist/src/ui/hooks/useGeminiStream.d.ts +24 -0
- package/dist/src/ui/hooks/useGeminiStream.js +653 -0
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -0
- package/dist/src/ui/hooks/useGitBranchName.d.ts +6 -0
- package/dist/src/ui/hooks/useGitBranchName.js +61 -0
- package/dist/src/ui/hooks/useGitBranchName.js.map +1 -0
- package/dist/src/ui/hooks/useGitBranchName.test.d.ts +6 -0
- package/dist/src/ui/hooks/useGitBranchName.test.js +215 -0
- package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -0
- package/dist/src/ui/hooks/useHistoryManager.d.ts +22 -0
- package/dist/src/ui/hooks/useHistoryManager.js +72 -0
- package/dist/src/ui/hooks/useHistoryManager.js.map +1 -0
- package/dist/src/ui/hooks/useHistoryManager.test.d.ts +6 -0
- package/dist/src/ui/hooks/useHistoryManager.test.js +171 -0
- package/dist/src/ui/hooks/useHistoryManager.test.js.map +1 -0
- package/dist/src/ui/hooks/useInputHistory.d.ts +19 -0
- package/dist/src/ui/hooks/useInputHistory.js +84 -0
- package/dist/src/ui/hooks/useInputHistory.js.map +1 -0
- package/dist/src/ui/hooks/useInputHistory.test.d.ts +6 -0
- package/dist/src/ui/hooks/useInputHistory.test.js +207 -0
- package/dist/src/ui/hooks/useInputHistory.test.js.map +1 -0
- package/dist/src/ui/hooks/useKeypress.d.ts +17 -0
- package/dist/src/ui/hooks/useKeypress.js +27 -0
- package/dist/src/ui/hooks/useKeypress.js.map +1 -0
- package/dist/src/ui/hooks/useKittyKeyboardProtocol.d.ts +15 -0
- package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +20 -0
- package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +1 -0
- package/dist/src/ui/hooks/useLoadingIndicator.d.ts +10 -0
- package/dist/src/ui/hooks/useLoadingIndicator.js +44 -0
- package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -0
- package/dist/src/ui/hooks/useLoadingIndicator.test.d.ts +6 -0
- package/dist/src/ui/hooks/useLoadingIndicator.test.js +91 -0
- package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -0
- package/dist/src/ui/hooks/useLogger.d.ts +10 -0
- package/dist/src/ui/hooks/useLogger.js +29 -0
- package/dist/src/ui/hooks/useLogger.js.map +1 -0
- package/dist/src/ui/hooks/useMessageQueue.d.ts +22 -0
- package/dist/src/ui/hooks/useMessageQueue.js +49 -0
- package/dist/src/ui/hooks/useMessageQueue.js.map +1 -0
- package/dist/src/ui/hooks/useMessageQueue.test.d.ts +6 -0
- package/dist/src/ui/hooks/useMessageQueue.test.js +158 -0
- package/dist/src/ui/hooks/useMessageQueue.test.js.map +1 -0
- package/dist/src/ui/hooks/usePhraseCycler.d.ts +14 -0
- package/dist/src/ui/hooks/usePhraseCycler.js +187 -0
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -0
- package/dist/src/ui/hooks/usePrivacySettings.d.ts +16 -0
- package/dist/src/ui/hooks/usePrivacySettings.js +119 -0
- package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -0
- package/dist/src/ui/hooks/usePrivacySettings.test.d.ts +6 -0
- package/dist/src/ui/hooks/usePrivacySettings.test.js +154 -0
- package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -0
- package/dist/src/ui/hooks/useReactToolScheduler.d.ts +33 -0
- package/dist/src/ui/hooks/useReactToolScheduler.js +187 -0
- package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -0
- package/dist/src/ui/hooks/useRefreshMemoryCommand.d.ts +6 -0
- package/dist/src/ui/hooks/useRefreshMemoryCommand.js +7 -0
- package/dist/src/ui/hooks/useRefreshMemoryCommand.js.map +1 -0
- package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +19 -0
- package/dist/src/ui/hooks/useReverseSearchCompletion.js +56 -0
- package/dist/src/ui/hooks/useReverseSearchCompletion.js.map +1 -0
- package/dist/src/ui/hooks/useReverseSearchCompletion.test.d.ts +6 -0
- package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +163 -0
- package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +1 -0
- package/dist/src/ui/hooks/useSettingsCommand.d.ts +10 -0
- package/dist/src/ui/hooks/useSettingsCommand.js +21 -0
- package/dist/src/ui/hooks/useSettingsCommand.js.map +1 -0
- package/dist/src/ui/hooks/useShellHistory.d.ts +13 -0
- package/dist/src/ui/hooks/useShellHistory.js +112 -0
- package/dist/src/ui/hooks/useShellHistory.js.map +1 -0
- package/dist/src/ui/hooks/useShellHistory.test.d.ts +6 -0
- package/dist/src/ui/hooks/useShellHistory.test.js +162 -0
- package/dist/src/ui/hooks/useShellHistory.test.js.map +1 -0
- package/dist/src/ui/hooks/useShowMemoryCommand.d.ts +9 -0
- package/dist/src/ui/hooks/useShowMemoryCommand.js +58 -0
- package/dist/src/ui/hooks/useShowMemoryCommand.js.map +1 -0
- package/dist/src/ui/hooks/useSlashCompletion.d.ts +20 -0
- package/dist/src/ui/hooks/useSlashCompletion.js +135 -0
- package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -0
- package/dist/src/ui/hooks/useSlashCompletion.test.d.ts +6 -0
- package/dist/src/ui/hooks/useSlashCompletion.test.js +272 -0
- package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -0
- package/dist/src/ui/hooks/useStateAndRef.d.ts +7 -0
- package/dist/src/ui/hooks/useStateAndRef.js +26 -0
- package/dist/src/ui/hooks/useStateAndRef.js.map +1 -0
- package/dist/src/ui/hooks/useTerminalSize.d.ts +9 -0
- package/dist/src/ui/hooks/useTerminalSize.js +27 -0
- package/dist/src/ui/hooks/useTerminalSize.js.map +1 -0
- package/dist/src/ui/hooks/useThemeCommand.d.ts +15 -0
- package/dist/src/ui/hooks/useThemeCommand.js +79 -0
- package/dist/src/ui/hooks/useThemeCommand.js.map +1 -0
- package/dist/src/ui/hooks/useTimer.d.ts +12 -0
- package/dist/src/ui/hooks/useTimer.js +58 -0
- package/dist/src/ui/hooks/useTimer.js.map +1 -0
- package/dist/src/ui/hooks/useTimer.test.d.ts +6 -0
- package/dist/src/ui/hooks/useTimer.test.js +90 -0
- package/dist/src/ui/hooks/useTimer.test.js.map +1 -0
- package/dist/src/ui/hooks/useToolScheduler.test.d.ts +6 -0
- package/dist/src/ui/hooks/useToolScheduler.test.js +845 -0
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -0
- package/dist/src/ui/hooks/useWelcomeBack.d.ts +52 -0
- package/dist/src/ui/hooks/useWelcomeBack.js +214 -0
- package/dist/src/ui/hooks/useWelcomeBack.js.map +1 -0
- package/dist/src/ui/hooks/vim.d.ts +28 -0
- package/dist/src/ui/hooks/vim.js +639 -0
- package/dist/src/ui/hooks/vim.js.map +1 -0
- package/dist/src/ui/keyMatchers.d.ts +26 -0
- package/dist/src/ui/keyMatchers.js +68 -0
- package/dist/src/ui/keyMatchers.js.map +1 -0
- package/dist/src/ui/keyMatchers.test.d.ts +6 -0
- package/dist/src/ui/keyMatchers.test.js +276 -0
- package/dist/src/ui/keyMatchers.test.js.map +1 -0
- package/dist/src/ui/privacy/CloudFreePrivacyNotice.d.ts +12 -0
- package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +41 -0
- package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -0
- package/dist/src/ui/privacy/CloudPaidPrivacyNotice.d.ts +10 -0
- package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js +18 -0
- package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js.map +1 -0
- package/dist/src/ui/privacy/GeminiPrivacyNotice.d.ts +10 -0
- package/dist/src/ui/privacy/GeminiPrivacyNotice.js +18 -0
- package/dist/src/ui/privacy/GeminiPrivacyNotice.js.map +1 -0
- package/dist/src/ui/privacy/PrivacyNotice.d.ts +12 -0
- package/dist/src/ui/privacy/PrivacyNotice.js +25 -0
- package/dist/src/ui/privacy/PrivacyNotice.js.map +1 -0
- package/dist/src/ui/semantic-colors.d.ts +7 -0
- package/dist/src/ui/semantic-colors.js +24 -0
- package/dist/src/ui/semantic-colors.js.map +1 -0
- package/dist/src/ui/themes/ansi-light.d.ts +7 -0
- package/dist/src/ui/themes/ansi-light.js +142 -0
- package/dist/src/ui/themes/ansi-light.js.map +1 -0
- package/dist/src/ui/themes/ansi.d.ts +7 -0
- package/dist/src/ui/themes/ansi.js +152 -0
- package/dist/src/ui/themes/ansi.js.map +1 -0
- package/dist/src/ui/themes/atom-one-dark.d.ts +7 -0
- package/dist/src/ui/themes/atom-one-dark.js +139 -0
- package/dist/src/ui/themes/atom-one-dark.js.map +1 -0
- package/dist/src/ui/themes/ayu-light.d.ts +7 -0
- package/dist/src/ui/themes/ayu-light.js +131 -0
- package/dist/src/ui/themes/ayu-light.js.map +1 -0
- package/dist/src/ui/themes/ayu.d.ts +7 -0
- package/dist/src/ui/themes/ayu.js +105 -0
- package/dist/src/ui/themes/ayu.js.map +1 -0
- package/dist/src/ui/themes/color-utils.d.ts +21 -0
- package/dist/src/ui/themes/color-utils.js +221 -0
- package/dist/src/ui/themes/color-utils.js.map +1 -0
- package/dist/src/ui/themes/color-utils.test.d.ts +6 -0
- package/dist/src/ui/themes/color-utils.test.js +197 -0
- package/dist/src/ui/themes/color-utils.test.js.map +1 -0
- package/dist/src/ui/themes/default-light.d.ts +7 -0
- package/dist/src/ui/themes/default-light.js +101 -0
- package/dist/src/ui/themes/default-light.js.map +1 -0
- package/dist/src/ui/themes/default.d.ts +7 -0
- package/dist/src/ui/themes/default.js +144 -0
- package/dist/src/ui/themes/default.js.map +1 -0
- package/dist/src/ui/themes/dracula.d.ts +7 -0
- package/dist/src/ui/themes/dracula.js +116 -0
- package/dist/src/ui/themes/dracula.js.map +1 -0
- package/dist/src/ui/themes/fss-code-dark.d.ts +7 -0
- package/dist/src/ui/themes/fss-code-dark.js +148 -0
- package/dist/src/ui/themes/fss-code-dark.js.map +1 -0
- package/dist/src/ui/themes/fss-dark.d.ts +7 -0
- package/dist/src/ui/themes/fss-dark.js +105 -0
- package/dist/src/ui/themes/fss-dark.js.map +1 -0
- package/dist/src/ui/themes/fss-light.d.ts +7 -0
- package/dist/src/ui/themes/fss-light.js +131 -0
- package/dist/src/ui/themes/fss-light.js.map +1 -0
- package/dist/src/ui/themes/github-dark.d.ts +7 -0
- package/dist/src/ui/themes/github-dark.js +139 -0
- package/dist/src/ui/themes/github-dark.js.map +1 -0
- package/dist/src/ui/themes/github-light.d.ts +7 -0
- package/dist/src/ui/themes/github-light.js +141 -0
- package/dist/src/ui/themes/github-light.js.map +1 -0
- package/dist/src/ui/themes/googlecode.d.ts +7 -0
- package/dist/src/ui/themes/googlecode.js +138 -0
- package/dist/src/ui/themes/googlecode.js.map +1 -0
- package/dist/src/ui/themes/no-color.d.ts +7 -0
- package/dist/src/ui/themes/no-color.js +115 -0
- package/dist/src/ui/themes/no-color.js.map +1 -0
- package/dist/src/ui/themes/qwen-dark.d.ts +7 -0
- package/dist/src/ui/themes/qwen-dark.js +109 -0
- package/dist/src/ui/themes/qwen-dark.js.map +1 -0
- package/dist/src/ui/themes/qwen-light.d.ts +7 -0
- package/dist/src/ui/themes/qwen-light.js +135 -0
- package/dist/src/ui/themes/qwen-light.js.map +1 -0
- package/dist/src/ui/themes/semantic-tokens.d.ts +37 -0
- package/dist/src/ui/themes/semantic-tokens.js +94 -0
- package/dist/src/ui/themes/semantic-tokens.js.map +1 -0
- package/dist/src/ui/themes/shades-of-purple.d.ts +11 -0
- package/dist/src/ui/themes/shades-of-purple.js +305 -0
- package/dist/src/ui/themes/shades-of-purple.js.map +1 -0
- package/dist/src/ui/themes/theme-manager.d.ts +64 -0
- package/dist/src/ui/themes/theme-manager.js +209 -0
- package/dist/src/ui/themes/theme-manager.js.map +1 -0
- package/dist/src/ui/themes/theme-manager.test.d.ts +6 -0
- package/dist/src/ui/themes/theme-manager.test.js +83 -0
- package/dist/src/ui/themes/theme-manager.test.js.map +1 -0
- package/dist/src/ui/themes/theme.d.ts +130 -0
- package/dist/src/ui/themes/theme.js +351 -0
- package/dist/src/ui/themes/theme.js.map +1 -0
- package/dist/src/ui/themes/xcode.d.ts +7 -0
- package/dist/src/ui/themes/xcode.js +146 -0
- package/dist/src/ui/themes/xcode.js.map +1 -0
- package/dist/src/ui/types.d.ts +191 -0
- package/dist/src/ui/types.js +44 -0
- package/dist/src/ui/types.js.map +1 -0
- package/dist/src/ui/utils/CodeColorizer.d.ts +17 -0
- package/dist/src/ui/utils/CodeColorizer.js +110 -0
- package/dist/src/ui/utils/CodeColorizer.js.map +1 -0
- package/dist/src/ui/utils/ConsolePatcher.d.ts +25 -0
- package/dist/src/ui/utils/ConsolePatcher.js +52 -0
- package/dist/src/ui/utils/ConsolePatcher.js.map +1 -0
- package/dist/src/ui/utils/InlineMarkdownRenderer.d.ts +16 -0
- package/dist/src/ui/utils/InlineMarkdownRenderer.js +111 -0
- package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -0
- package/dist/src/ui/utils/MarkdownDisplay.d.ts +14 -0
- package/dist/src/ui/utils/MarkdownDisplay.js +207 -0
- package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -0
- package/dist/src/ui/utils/MarkdownDisplay.test.d.ts +6 -0
- package/dist/src/ui/utils/MarkdownDisplay.test.js +151 -0
- package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -0
- package/dist/src/ui/utils/TableRenderer.d.ts +17 -0
- package/dist/src/ui/utils/TableRenderer.js +84 -0
- package/dist/src/ui/utils/TableRenderer.js.map +1 -0
- package/dist/src/ui/utils/clipboardUtils.d.ts +22 -0
- package/dist/src/ui/utils/clipboardUtils.js +127 -0
- package/dist/src/ui/utils/clipboardUtils.js.map +1 -0
- package/dist/src/ui/utils/clipboardUtils.test.d.ts +6 -0
- package/dist/src/ui/utils/clipboardUtils.test.js +65 -0
- package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -0
- package/dist/src/ui/utils/commandUtils.d.ts +24 -0
- package/dist/src/ui/utils/commandUtils.js +93 -0
- package/dist/src/ui/utils/commandUtils.js.map +1 -0
- package/dist/src/ui/utils/commandUtils.test.d.ts +6 -0
- package/dist/src/ui/utils/commandUtils.test.js +294 -0
- package/dist/src/ui/utils/commandUtils.test.js.map +1 -0
- package/dist/src/ui/utils/computeStats.d.ts +10 -0
- package/dist/src/ui/utils/computeStats.js +57 -0
- package/dist/src/ui/utils/computeStats.js.map +1 -0
- package/dist/src/ui/utils/displayUtils.d.ts +17 -0
- package/dist/src/ui/utils/displayUtils.js +24 -0
- package/dist/src/ui/utils/displayUtils.js.map +1 -0
- package/dist/src/ui/utils/displayUtils.test.d.ts +6 -0
- package/dist/src/ui/utils/displayUtils.test.js +42 -0
- package/dist/src/ui/utils/displayUtils.test.js.map +1 -0
- package/dist/src/ui/utils/formatters.d.ts +13 -0
- package/dist/src/ui/utils/formatters.js +56 -0
- package/dist/src/ui/utils/formatters.js.map +1 -0
- package/dist/src/ui/utils/formatters.test.d.ts +6 -0
- package/dist/src/ui/utils/formatters.test.js +56 -0
- package/dist/src/ui/utils/formatters.test.js.map +1 -0
- package/dist/src/ui/utils/isNarrowWidth.d.ts +6 -0
- package/dist/src/ui/utils/isNarrowWidth.js +9 -0
- package/dist/src/ui/utils/isNarrowWidth.js.map +1 -0
- package/dist/src/ui/utils/kittyProtocolDetector.d.ts +13 -0
- package/dist/src/ui/utils/kittyProtocolDetector.js +88 -0
- package/dist/src/ui/utils/kittyProtocolDetector.js.map +1 -0
- package/dist/src/ui/utils/markdownUtilities.d.ts +6 -0
- package/dist/src/ui/utils/markdownUtilities.js +110 -0
- package/dist/src/ui/utils/markdownUtilities.js.map +1 -0
- package/dist/src/ui/utils/markdownUtilities.test.d.ts +6 -0
- package/dist/src/ui/utils/markdownUtilities.test.js +42 -0
- package/dist/src/ui/utils/markdownUtilities.test.js.map +1 -0
- package/dist/src/ui/utils/platformConstants.d.ts +45 -0
- package/dist/src/ui/utils/platformConstants.js +46 -0
- package/dist/src/ui/utils/platformConstants.js.map +1 -0
- package/dist/src/ui/utils/terminalSetup.d.ts +30 -0
- package/dist/src/ui/utils/terminalSetup.js +281 -0
- package/dist/src/ui/utils/terminalSetup.js.map +1 -0
- package/dist/src/ui/utils/textUtils.d.ts +14 -0
- package/dist/src/ui/utils/textUtils.js +36 -0
- package/dist/src/ui/utils/textUtils.js.map +1 -0
- package/dist/src/ui/utils/updateCheck.d.ts +12 -0
- package/dist/src/ui/utils/updateCheck.js +78 -0
- package/dist/src/ui/utils/updateCheck.js.map +1 -0
- package/dist/src/ui/utils/updateCheck.test.d.ts +6 -0
- package/dist/src/ui/utils/updateCheck.test.js +145 -0
- package/dist/src/ui/utils/updateCheck.test.js.map +1 -0
- package/dist/src/utils/checks.d.ts +19 -0
- package/dist/src/utils/checks.js +24 -0
- package/dist/src/utils/checks.js.map +1 -0
- package/dist/src/utils/cleanup.d.ts +8 -0
- package/dist/src/utils/cleanup.js +34 -0
- package/dist/src/utils/cleanup.js.map +1 -0
- package/dist/src/utils/dialogScopeUtils.d.ts +31 -0
- package/dist/src/utils/dialogScopeUtils.js +48 -0
- package/dist/src/utils/dialogScopeUtils.js.map +1 -0
- package/dist/src/utils/events.d.ts +11 -0
- package/dist/src/utils/events.js +13 -0
- package/dist/src/utils/events.js.map +1 -0
- package/dist/src/utils/gitUtils.d.ts +30 -0
- package/dist/src/utils/gitUtils.js +89 -0
- package/dist/src/utils/gitUtils.js.map +1 -0
- package/dist/src/utils/gitUtils.test.d.ts +6 -0
- package/dist/src/utils/gitUtils.test.js +113 -0
- package/dist/src/utils/gitUtils.test.js.map +1 -0
- package/dist/src/utils/handleAutoUpdate.d.ts +11 -0
- package/dist/src/utils/handleAutoUpdate.js +101 -0
- package/dist/src/utils/handleAutoUpdate.js.map +1 -0
- package/dist/src/utils/installationInfo.d.ts +23 -0
- package/dist/src/utils/installationInfo.js +169 -0
- package/dist/src/utils/installationInfo.js.map +1 -0
- package/dist/src/utils/installationInfo.test.d.ts +6 -0
- package/dist/src/utils/installationInfo.test.js +242 -0
- package/dist/src/utils/installationInfo.test.js.map +1 -0
- package/dist/src/utils/package.d.ts +12 -0
- package/dist/src/utils/package.js +24 -0
- package/dist/src/utils/package.js.map +1 -0
- package/dist/src/utils/readStdin.d.ts +6 -0
- package/dist/src/utils/readStdin.js +44 -0
- package/dist/src/utils/readStdin.js.map +1 -0
- package/dist/src/utils/resolvePath.d.ts +6 -0
- package/dist/src/utils/resolvePath.js +21 -0
- package/dist/src/utils/resolvePath.js.map +1 -0
- package/dist/src/utils/sandbox.d.ts +7 -0
- package/dist/src/utils/sandbox.js +739 -0
- package/dist/src/utils/sandbox.js.map +1 -0
- package/dist/src/utils/settingsUtils.d.ts +134 -0
- package/dist/src/utils/settingsUtils.js +336 -0
- package/dist/src/utils/settingsUtils.js.map +1 -0
- package/dist/src/utils/settingsUtils.test.d.ts +6 -0
- package/dist/src/utils/settingsUtils.test.js +514 -0
- package/dist/src/utils/settingsUtils.test.js.map +1 -0
- package/dist/src/utils/spawnWrapper.d.ts +7 -0
- package/dist/src/utils/spawnWrapper.js +8 -0
- package/dist/src/utils/spawnWrapper.js.map +1 -0
- package/dist/src/utils/startupWarnings.d.ts +6 -0
- package/dist/src/utils/startupWarnings.js +40 -0
- package/dist/src/utils/startupWarnings.js.map +1 -0
- package/dist/src/utils/updateEventEmitter.d.ts +11 -0
- package/dist/src/utils/updateEventEmitter.js +12 -0
- package/dist/src/utils/updateEventEmitter.js.map +1 -0
- package/dist/src/utils/userStartupWarnings.d.ts +6 -0
- package/dist/src/utils/userStartupWarnings.js +54 -0
- package/dist/src/utils/userStartupWarnings.js.map +1 -0
- package/dist/src/utils/userStartupWarnings.test.d.ts +6 -0
- package/dist/src/utils/userStartupWarnings.test.js +67 -0
- package/dist/src/utils/userStartupWarnings.test.js.map +1 -0
- package/dist/src/utils/version.d.ts +6 -0
- package/dist/src/utils/version.js +11 -0
- package/dist/src/utils/version.js.map +1 -0
- package/dist/src/validateNonInterActiveAuth.d.ts +7 -0
- package/dist/src/validateNonInterActiveAuth.js +51 -0
- package/dist/src/validateNonInterActiveAuth.js.map +1 -0
- package/dist/src/zed-integration/acp.d.ts +63 -0
- package/dist/src/zed-integration/acp.js +225 -0
- package/dist/src/zed-integration/acp.js.map +1 -0
- package/dist/src/zed-integration/fileSystemService.d.ts +19 -0
- package/dist/src/zed-integration/fileSystemService.js +43 -0
- package/dist/src/zed-integration/fileSystemService.js.map +1 -0
- package/dist/src/zed-integration/schema.d.ts +11782 -0
- package/dist/src/zed-integration/schema.js +311 -0
- package/dist/src/zed-integration/schema.js.map +1 -0
- package/dist/src/zed-integration/zedIntegration.d.ts +10 -0
- package/dist/src/zed-integration/zedIntegration.js +765 -0
- package/dist/src/zed-integration/zedIntegration.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +44 -108
- package/bundle/fss-link.js +0 -129302
- /package/{bundle → dist/src/utils}/sandbox-macos-permissive-closed.sb +0 -0
- /package/{bundle → dist/src/utils}/sandbox-macos-permissive-open.sb +0 -0
- /package/{bundle → dist/src/utils}/sandbox-macos-permissive-proxied.sb +0 -0
- /package/{bundle → dist/src/utils}/sandbox-macos-restrictive-closed.sb +0 -0
- /package/{bundle → dist/src/utils}/sandbox-macos-restrictive-open.sb +0 -0
- /package/{bundle → dist/src/utils}/sandbox-macos-restrictive-proxied.sb +0 -0
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { Database } from 'sql.js';
|
|
7
|
+
import type { FSSLinkDatabase } from './database.js';
|
|
8
|
+
import { QueryParameters } from './repository-types.js';
|
|
9
|
+
/**
|
|
10
|
+
* ======================================================================================
|
|
11
|
+
* BASE REPOSITORY - PHASE 2 REPOSITORY PATTERN IMPLEMENTATION
|
|
12
|
+
* ======================================================================================
|
|
13
|
+
*
|
|
14
|
+
* Abstract base repository providing async-safe CRUD operations with DatabaseOperationQueue
|
|
15
|
+
* serialization. This eliminates "Statement closed" errors by ensuring all database
|
|
16
|
+
* operations are properly queued and executed one at a time.
|
|
17
|
+
*
|
|
18
|
+
* @author Emma - Technical Implementation Specialist
|
|
19
|
+
* @task Task 5: BaseRepository Class
|
|
20
|
+
* @dependencies Task 3 (Enhanced Database Utils with Locking)
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* Base entity interface - all repository entities should extend this
|
|
24
|
+
*/
|
|
25
|
+
export interface BaseEntity {
|
|
26
|
+
id?: number;
|
|
27
|
+
created_at?: string;
|
|
28
|
+
updated_at?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Repository operation result interface
|
|
32
|
+
*/
|
|
33
|
+
export interface RepositoryResult<T> {
|
|
34
|
+
success: boolean;
|
|
35
|
+
data?: T;
|
|
36
|
+
error?: string;
|
|
37
|
+
rowsAffected?: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Abstract base repository providing async-safe database operations.
|
|
41
|
+
*
|
|
42
|
+
* All database operations use async locking to prevent race conditions
|
|
43
|
+
* and "Statement closed" errors. Concrete repositories should extend
|
|
44
|
+
* this class and implement the abstract CRUD methods.
|
|
45
|
+
*
|
|
46
|
+
* @template T - The entity type this repository manages
|
|
47
|
+
*/
|
|
48
|
+
export declare abstract class BaseRepository<T extends BaseEntity> {
|
|
49
|
+
protected db: Database | FSSLinkDatabase;
|
|
50
|
+
constructor(db: Database | FSSLinkDatabase);
|
|
51
|
+
/**
|
|
52
|
+
* PROTECTED ASYNC-SAFE DATABASE OPERATIONS
|
|
53
|
+
*
|
|
54
|
+
* These methods wrap the database utils with logging specific to repository operations
|
|
55
|
+
*/
|
|
56
|
+
/**
|
|
57
|
+
* Execute a SELECT query with async locking protection
|
|
58
|
+
*
|
|
59
|
+
* @param sql - SQL query string
|
|
60
|
+
* @param params - Query parameters
|
|
61
|
+
* @returns Promise<Array> of query results
|
|
62
|
+
*/
|
|
63
|
+
protected query<U = T>(sql: string, params?: QueryParameters): Promise<Array<U>>;
|
|
64
|
+
/**
|
|
65
|
+
* Execute a SELECT query returning first result with async locking protection
|
|
66
|
+
*
|
|
67
|
+
* @param sql - SQL query string
|
|
68
|
+
* @param params - Query parameters
|
|
69
|
+
* @returns Promise<T | null> first result or null
|
|
70
|
+
*/
|
|
71
|
+
protected queryFirst<U = T>(sql: string, params?: QueryParameters): Promise<U | null>;
|
|
72
|
+
/**
|
|
73
|
+
* Execute INSERT/UPDATE/DELETE with async locking protection
|
|
74
|
+
*
|
|
75
|
+
* @param sql - SQL statement string
|
|
76
|
+
* @param params - Statement parameters
|
|
77
|
+
* @returns Promise<number> affected rows count
|
|
78
|
+
*/
|
|
79
|
+
protected exec(sql: string, params?: QueryParameters): Promise<number>;
|
|
80
|
+
/**
|
|
81
|
+
* Execute transaction with async locking protection
|
|
82
|
+
*
|
|
83
|
+
* @param operations - Async function containing database operations
|
|
84
|
+
* @returns Promise<T> result of operations
|
|
85
|
+
*/
|
|
86
|
+
protected withTransaction<U>(operations: (db: Database) => Promise<U>): Promise<U>;
|
|
87
|
+
/**
|
|
88
|
+
* UTILITY METHODS FOR COMMON REPOSITORY PATTERNS
|
|
89
|
+
*/
|
|
90
|
+
/**
|
|
91
|
+
* Check if record exists by ID
|
|
92
|
+
*
|
|
93
|
+
* @param id - Record ID to check
|
|
94
|
+
* @returns Promise<boolean> true if record exists
|
|
95
|
+
*/
|
|
96
|
+
protected existsById(id: number): Promise<boolean>;
|
|
97
|
+
/**
|
|
98
|
+
* Count total records in table
|
|
99
|
+
*
|
|
100
|
+
* @param whereClause - Optional WHERE clause (without WHERE keyword)
|
|
101
|
+
* @param params - Parameters for WHERE clause
|
|
102
|
+
* @returns Promise<number> record count
|
|
103
|
+
*/
|
|
104
|
+
protected count(whereClause?: string, params?: QueryParameters): Promise<number>;
|
|
105
|
+
/**
|
|
106
|
+
* ABSTRACT METHODS - MUST BE IMPLEMENTED BY CONCRETE REPOSITORIES
|
|
107
|
+
*/
|
|
108
|
+
/**
|
|
109
|
+
* Get the table name for this repository
|
|
110
|
+
* @returns string table name
|
|
111
|
+
*/
|
|
112
|
+
protected abstract getTableName(): string;
|
|
113
|
+
/**
|
|
114
|
+
* Create a new entity
|
|
115
|
+
*
|
|
116
|
+
* @param entity - Partial entity data (ID will be auto-generated)
|
|
117
|
+
* @returns Promise<number> ID of created entity
|
|
118
|
+
* @throws DatabaseError if creation fails
|
|
119
|
+
*/
|
|
120
|
+
abstract create(entity: Partial<T>): Promise<number>;
|
|
121
|
+
/**
|
|
122
|
+
* Find entity by ID
|
|
123
|
+
*
|
|
124
|
+
* @param id - Entity ID
|
|
125
|
+
* @returns Promise<T | null> entity or null if not found
|
|
126
|
+
* @throws DatabaseError if query fails
|
|
127
|
+
*/
|
|
128
|
+
abstract findById(id: number): Promise<T | null>;
|
|
129
|
+
/**
|
|
130
|
+
* Update entity by ID
|
|
131
|
+
*
|
|
132
|
+
* @param id - Entity ID to update
|
|
133
|
+
* @param updates - Partial entity data with updates
|
|
134
|
+
* @returns Promise<boolean> true if entity was updated
|
|
135
|
+
* @throws DatabaseError if update fails
|
|
136
|
+
*/
|
|
137
|
+
abstract update(id: number, updates: Partial<T>): Promise<boolean>;
|
|
138
|
+
/**
|
|
139
|
+
* Delete entity by ID
|
|
140
|
+
*
|
|
141
|
+
* @param id - Entity ID to delete
|
|
142
|
+
* @returns Promise<boolean> true if entity was deleted
|
|
143
|
+
* @throws DatabaseError if deletion fails
|
|
144
|
+
*/
|
|
145
|
+
abstract delete(id: number): Promise<boolean>;
|
|
146
|
+
/**
|
|
147
|
+
* Find all entities (with optional filtering)
|
|
148
|
+
*
|
|
149
|
+
* @param whereClause - Optional WHERE clause (without WHERE keyword)
|
|
150
|
+
* @param params - Parameters for WHERE clause
|
|
151
|
+
* @param orderBy - Optional ORDER BY clause (without ORDER BY keyword)
|
|
152
|
+
* @param limit - Optional LIMIT
|
|
153
|
+
* @returns Promise<Array<T>> array of entities
|
|
154
|
+
* @throws DatabaseError if query fails
|
|
155
|
+
*/
|
|
156
|
+
abstract findAll(whereClause?: string, params?: QueryParameters, orderBy?: string, limit?: number): Promise<Array<T>>;
|
|
157
|
+
/**
|
|
158
|
+
* Find first entity matching criteria
|
|
159
|
+
*
|
|
160
|
+
* @param whereClause - WHERE clause (without WHERE keyword)
|
|
161
|
+
* @param params - Parameters for WHERE clause
|
|
162
|
+
* @returns Promise<T | null> first matching entity or null
|
|
163
|
+
* @throws DatabaseError if query fails
|
|
164
|
+
*/
|
|
165
|
+
abstract findFirst(whereClause: string, params: QueryParameters): Promise<T | null>;
|
|
166
|
+
/**
|
|
167
|
+
* BULK OPERATIONS (OPTIONAL - CAN BE OVERRIDDEN FOR PERFORMANCE)
|
|
168
|
+
*/
|
|
169
|
+
/**
|
|
170
|
+
* Bulk insert entities in a single transaction
|
|
171
|
+
*
|
|
172
|
+
* @param entities - Array of entities to insert
|
|
173
|
+
* @returns Promise<Array<number>> array of created IDs
|
|
174
|
+
* @throws DatabaseError if bulk insert fails
|
|
175
|
+
*/
|
|
176
|
+
bulkCreate(entities: Array<Partial<T>>): Promise<Array<number>>;
|
|
177
|
+
/**
|
|
178
|
+
* Bulk delete entities by IDs in a single transaction
|
|
179
|
+
*
|
|
180
|
+
* @param ids - Array of entity IDs to delete
|
|
181
|
+
* @returns Promise<number> number of deleted entities
|
|
182
|
+
* @throws DatabaseError if bulk delete fails
|
|
183
|
+
*/
|
|
184
|
+
bulkDelete(ids: Array<number>): Promise<number>;
|
|
185
|
+
/**
|
|
186
|
+
* REPOSITORY HEALTH AND DIAGNOSTICS
|
|
187
|
+
*/
|
|
188
|
+
/**
|
|
189
|
+
* Validate repository table exists and has expected structure
|
|
190
|
+
*
|
|
191
|
+
* @returns Promise<RepositoryResult<boolean>> validation result
|
|
192
|
+
*/
|
|
193
|
+
validateSchema(): Promise<RepositoryResult<boolean>>;
|
|
194
|
+
/**
|
|
195
|
+
* Get repository statistics
|
|
196
|
+
*
|
|
197
|
+
* @returns Promise<object> repository statistics
|
|
198
|
+
*/
|
|
199
|
+
getStatistics(): Promise<{
|
|
200
|
+
totalRecords: number;
|
|
201
|
+
tableName: string;
|
|
202
|
+
schemaValid: boolean;
|
|
203
|
+
}>;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* ======================================================================================
|
|
207
|
+
* MIGRATION GUIDE: USING THE BASE REPOSITORY
|
|
208
|
+
* ======================================================================================
|
|
209
|
+
*
|
|
210
|
+
* STEP 1: Extend BaseRepository for your entity
|
|
211
|
+
*
|
|
212
|
+
* export interface ModelConfig extends BaseEntity {
|
|
213
|
+
* auth_type: string;
|
|
214
|
+
* model_name: string;
|
|
215
|
+
* endpoint_url?: string;
|
|
216
|
+
* // ... other fields
|
|
217
|
+
* }
|
|
218
|
+
*
|
|
219
|
+
* export class ModelRepository extends BaseRepository<ModelConfig> {
|
|
220
|
+
* protected getTableName(): string {
|
|
221
|
+
* return 'model_configs';
|
|
222
|
+
* }
|
|
223
|
+
*
|
|
224
|
+
* async create(model: Partial<ModelConfig>): Promise<number> {
|
|
225
|
+
* const result = await this.exec(
|
|
226
|
+
* `INSERT INTO model_configs (auth_type, model_name, endpoint_url) VALUES (?, ?, ?)`,
|
|
227
|
+
* [model.auth_type, model.model_name, model.endpoint_url]
|
|
228
|
+
* );
|
|
229
|
+
* // Get last insert ID (implementation depends on your database setup)
|
|
230
|
+
* return this.getLastInsertId();
|
|
231
|
+
* }
|
|
232
|
+
* // ... implement other abstract methods
|
|
233
|
+
* }
|
|
234
|
+
*
|
|
235
|
+
* STEP 2: Use the repository
|
|
236
|
+
*
|
|
237
|
+
* const modelRepo = new ModelRepository(database);
|
|
238
|
+
*
|
|
239
|
+
* // Thread-safe operations
|
|
240
|
+
* const modelId = await modelRepo.create({ auth_type: 'ollama', model_name: 'qwen3:4b' });
|
|
241
|
+
* const model = await modelRepo.findById(modelId);
|
|
242
|
+
* const updated = await modelRepo.update(modelId, { model_name: 'qwen3:7b' });
|
|
243
|
+
* const deleted = await modelRepo.delete(modelId);
|
|
244
|
+
*
|
|
245
|
+
* // Bulk operations
|
|
246
|
+
* const ids = await modelRepo.bulkCreate([model1, model2, model3]);
|
|
247
|
+
* const deletedCount = await modelRepo.bulkDelete([1, 2, 3]);
|
|
248
|
+
*
|
|
249
|
+
* // Diagnostics
|
|
250
|
+
* const stats = await modelRepo.getStatistics();
|
|
251
|
+
* const validation = await modelRepo.validateSchema();
|
|
252
|
+
*/
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { safeQueryWithLocking, safeQueryFirstWithLocking, safeExecWithLocking, safeTransactionWithLocking } from './database-utils.js';
|
|
7
|
+
/**
|
|
8
|
+
* Abstract base repository providing async-safe database operations.
|
|
9
|
+
*
|
|
10
|
+
* All database operations use async locking to prevent race conditions
|
|
11
|
+
* and "Statement closed" errors. Concrete repositories should extend
|
|
12
|
+
* this class and implement the abstract CRUD methods.
|
|
13
|
+
*
|
|
14
|
+
* @template T - The entity type this repository manages
|
|
15
|
+
*/
|
|
16
|
+
export class BaseRepository {
|
|
17
|
+
db;
|
|
18
|
+
constructor(db) {
|
|
19
|
+
this.db = db;
|
|
20
|
+
console.log(`🏗️ [BASE-REPO] Repository initialized for entity type: ${this.constructor.name}`);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* PROTECTED ASYNC-SAFE DATABASE OPERATIONS
|
|
24
|
+
*
|
|
25
|
+
* These methods wrap the database utils with logging specific to repository operations
|
|
26
|
+
*/
|
|
27
|
+
/**
|
|
28
|
+
* Execute a SELECT query with async locking protection
|
|
29
|
+
*
|
|
30
|
+
* @param sql - SQL query string
|
|
31
|
+
* @param params - Query parameters
|
|
32
|
+
* @returns Promise<Array> of query results
|
|
33
|
+
*/
|
|
34
|
+
async query(sql, params = []) {
|
|
35
|
+
console.log(`🔍 [${this.constructor.name}] Executing query: ${sql.substring(0, 80)}...`);
|
|
36
|
+
try {
|
|
37
|
+
// Extract raw database from FSSLinkDatabase wrapper if needed
|
|
38
|
+
const rawDb = this.db.db || this.db;
|
|
39
|
+
const result = await safeQueryWithLocking(rawDb, sql, params);
|
|
40
|
+
console.log(`✅ [${this.constructor.name}] Query successful: ${result.length} results`);
|
|
41
|
+
return result;
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
console.error(`❌ [${this.constructor.name}] Query failed:`, error);
|
|
45
|
+
throw error;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Execute a SELECT query returning first result with async locking protection
|
|
50
|
+
*
|
|
51
|
+
* @param sql - SQL query string
|
|
52
|
+
* @param params - Query parameters
|
|
53
|
+
* @returns Promise<T | null> first result or null
|
|
54
|
+
*/
|
|
55
|
+
async queryFirst(sql, params = []) {
|
|
56
|
+
console.log(`🔍 [${this.constructor.name}] Executing queryFirst: ${sql.substring(0, 80)}...`);
|
|
57
|
+
try {
|
|
58
|
+
// Extract raw database from FSSLinkDatabase wrapper if needed
|
|
59
|
+
const rawDb = this.db.db || this.db;
|
|
60
|
+
const result = await safeQueryFirstWithLocking(rawDb, sql, params);
|
|
61
|
+
console.log(`✅ [${this.constructor.name}] QueryFirst successful: ${result ? 'Found result' : 'No result'}`);
|
|
62
|
+
return result;
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
console.error(`❌ [${this.constructor.name}] QueryFirst failed:`, error);
|
|
66
|
+
throw error;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Execute INSERT/UPDATE/DELETE with async locking protection
|
|
71
|
+
*
|
|
72
|
+
* @param sql - SQL statement string
|
|
73
|
+
* @param params - Statement parameters
|
|
74
|
+
* @returns Promise<number> affected rows count
|
|
75
|
+
*/
|
|
76
|
+
async exec(sql, params = []) {
|
|
77
|
+
console.log(`🔧 [${this.constructor.name}] Executing statement: ${sql.substring(0, 80)}...`);
|
|
78
|
+
try {
|
|
79
|
+
// Extract raw database from FSSLinkDatabase wrapper if needed
|
|
80
|
+
const rawDb = this.db.db || this.db;
|
|
81
|
+
const result = await safeExecWithLocking(rawDb, sql, params);
|
|
82
|
+
console.log(`✅ [${this.constructor.name}] Statement successful: ${result} rows affected`);
|
|
83
|
+
return result;
|
|
84
|
+
}
|
|
85
|
+
catch (error) {
|
|
86
|
+
console.error(`❌ [${this.constructor.name}] Statement failed:`, error);
|
|
87
|
+
throw error;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Execute transaction with async locking protection
|
|
92
|
+
*
|
|
93
|
+
* @param operations - Async function containing database operations
|
|
94
|
+
* @returns Promise<T> result of operations
|
|
95
|
+
*/
|
|
96
|
+
async withTransaction(operations) {
|
|
97
|
+
console.log(`🔒 [${this.constructor.name}] Starting transaction`);
|
|
98
|
+
try {
|
|
99
|
+
// Extract raw database from FSSLinkDatabase wrapper if needed
|
|
100
|
+
const rawDb = this.db.db || this.db;
|
|
101
|
+
const result = await safeTransactionWithLocking(rawDb, operations);
|
|
102
|
+
console.log(`✅ [${this.constructor.name}] Transaction completed successfully`);
|
|
103
|
+
return result;
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
console.error(`❌ [${this.constructor.name}] Transaction failed:`, error);
|
|
107
|
+
throw error;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* UTILITY METHODS FOR COMMON REPOSITORY PATTERNS
|
|
112
|
+
*/
|
|
113
|
+
/**
|
|
114
|
+
* Check if record exists by ID
|
|
115
|
+
*
|
|
116
|
+
* @param id - Record ID to check
|
|
117
|
+
* @returns Promise<boolean> true if record exists
|
|
118
|
+
*/
|
|
119
|
+
async existsById(id) {
|
|
120
|
+
const tableName = this.getTableName();
|
|
121
|
+
const result = await this.queryFirst(`SELECT COUNT(*) as count FROM ${tableName} WHERE id = ?`, [id]);
|
|
122
|
+
return (result?.count || 0) > 0;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Count total records in table
|
|
126
|
+
*
|
|
127
|
+
* @param whereClause - Optional WHERE clause (without WHERE keyword)
|
|
128
|
+
* @param params - Parameters for WHERE clause
|
|
129
|
+
* @returns Promise<number> record count
|
|
130
|
+
*/
|
|
131
|
+
async count(whereClause, params = []) {
|
|
132
|
+
const tableName = this.getTableName();
|
|
133
|
+
const sql = whereClause
|
|
134
|
+
? `SELECT COUNT(*) as count FROM ${tableName} WHERE ${whereClause}`
|
|
135
|
+
: `SELECT COUNT(*) as count FROM ${tableName}`;
|
|
136
|
+
const result = await this.queryFirst(sql, params);
|
|
137
|
+
return result?.count || 0;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* BULK OPERATIONS (OPTIONAL - CAN BE OVERRIDDEN FOR PERFORMANCE)
|
|
141
|
+
*/
|
|
142
|
+
/**
|
|
143
|
+
* Bulk insert entities in a single transaction
|
|
144
|
+
*
|
|
145
|
+
* @param entities - Array of entities to insert
|
|
146
|
+
* @returns Promise<Array<number>> array of created IDs
|
|
147
|
+
* @throws DatabaseError if bulk insert fails
|
|
148
|
+
*/
|
|
149
|
+
async bulkCreate(entities) {
|
|
150
|
+
console.log(`📦 [${this.constructor.name}] Bulk creating ${entities.length} entities`);
|
|
151
|
+
return this.withTransaction(async () => {
|
|
152
|
+
const ids = [];
|
|
153
|
+
for (const entity of entities) {
|
|
154
|
+
const id = await this.create(entity);
|
|
155
|
+
ids.push(id);
|
|
156
|
+
}
|
|
157
|
+
return ids;
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Bulk delete entities by IDs in a single transaction
|
|
162
|
+
*
|
|
163
|
+
* @param ids - Array of entity IDs to delete
|
|
164
|
+
* @returns Promise<number> number of deleted entities
|
|
165
|
+
* @throws DatabaseError if bulk delete fails
|
|
166
|
+
*/
|
|
167
|
+
async bulkDelete(ids) {
|
|
168
|
+
console.log(`🗑️ [${this.constructor.name}] Bulk deleting ${ids.length} entities`);
|
|
169
|
+
return this.withTransaction(async () => {
|
|
170
|
+
let deletedCount = 0;
|
|
171
|
+
for (const id of ids) {
|
|
172
|
+
const deleted = await this.delete(id);
|
|
173
|
+
if (deleted)
|
|
174
|
+
deletedCount++;
|
|
175
|
+
}
|
|
176
|
+
return deletedCount;
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* REPOSITORY HEALTH AND DIAGNOSTICS
|
|
181
|
+
*/
|
|
182
|
+
/**
|
|
183
|
+
* Validate repository table exists and has expected structure
|
|
184
|
+
*
|
|
185
|
+
* @returns Promise<RepositoryResult<boolean>> validation result
|
|
186
|
+
*/
|
|
187
|
+
async validateSchema() {
|
|
188
|
+
try {
|
|
189
|
+
const tableName = this.getTableName();
|
|
190
|
+
console.log(`🔍 [${this.constructor.name}] Validating schema for table: ${tableName}`);
|
|
191
|
+
// Check if table exists
|
|
192
|
+
const tableExists = await this.queryFirst(`SELECT COUNT(*) as count FROM sqlite_master WHERE type='table' AND name=?`, [tableName]);
|
|
193
|
+
if (!tableExists || tableExists.count === 0) {
|
|
194
|
+
return {
|
|
195
|
+
success: false,
|
|
196
|
+
error: `Table '${tableName}' does not exist`
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
// Get table info
|
|
200
|
+
const columns = await this.query(`PRAGMA table_info(${tableName})`);
|
|
201
|
+
console.log(`✅ [${this.constructor.name}] Schema validation passed: ${columns.length} columns`);
|
|
202
|
+
return {
|
|
203
|
+
success: true,
|
|
204
|
+
data: true
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
catch (error) {
|
|
208
|
+
console.error(`❌ [${this.constructor.name}] Schema validation failed:`, error);
|
|
209
|
+
return {
|
|
210
|
+
success: false,
|
|
211
|
+
error: error instanceof Error ? error.message : 'Unknown error'
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Get repository statistics
|
|
217
|
+
*
|
|
218
|
+
* @returns Promise<object> repository statistics
|
|
219
|
+
*/
|
|
220
|
+
async getStatistics() {
|
|
221
|
+
console.log(`📊 [${this.constructor.name}] Gathering repository statistics`);
|
|
222
|
+
const tableName = this.getTableName();
|
|
223
|
+
const totalRecords = await this.count();
|
|
224
|
+
const validation = await this.validateSchema();
|
|
225
|
+
return {
|
|
226
|
+
totalRecords,
|
|
227
|
+
tableName,
|
|
228
|
+
schemaValid: validation.success
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* ======================================================================================
|
|
234
|
+
* MIGRATION GUIDE: USING THE BASE REPOSITORY
|
|
235
|
+
* ======================================================================================
|
|
236
|
+
*
|
|
237
|
+
* STEP 1: Extend BaseRepository for your entity
|
|
238
|
+
*
|
|
239
|
+
* export interface ModelConfig extends BaseEntity {
|
|
240
|
+
* auth_type: string;
|
|
241
|
+
* model_name: string;
|
|
242
|
+
* endpoint_url?: string;
|
|
243
|
+
* // ... other fields
|
|
244
|
+
* }
|
|
245
|
+
*
|
|
246
|
+
* export class ModelRepository extends BaseRepository<ModelConfig> {
|
|
247
|
+
* protected getTableName(): string {
|
|
248
|
+
* return 'model_configs';
|
|
249
|
+
* }
|
|
250
|
+
*
|
|
251
|
+
* async create(model: Partial<ModelConfig>): Promise<number> {
|
|
252
|
+
* const result = await this.exec(
|
|
253
|
+
* `INSERT INTO model_configs (auth_type, model_name, endpoint_url) VALUES (?, ?, ?)`,
|
|
254
|
+
* [model.auth_type, model.model_name, model.endpoint_url]
|
|
255
|
+
* );
|
|
256
|
+
* // Get last insert ID (implementation depends on your database setup)
|
|
257
|
+
* return this.getLastInsertId();
|
|
258
|
+
* }
|
|
259
|
+
* // ... implement other abstract methods
|
|
260
|
+
* }
|
|
261
|
+
*
|
|
262
|
+
* STEP 2: Use the repository
|
|
263
|
+
*
|
|
264
|
+
* const modelRepo = new ModelRepository(database);
|
|
265
|
+
*
|
|
266
|
+
* // Thread-safe operations
|
|
267
|
+
* const modelId = await modelRepo.create({ auth_type: 'ollama', model_name: 'qwen3:4b' });
|
|
268
|
+
* const model = await modelRepo.findById(modelId);
|
|
269
|
+
* const updated = await modelRepo.update(modelId, { model_name: 'qwen3:7b' });
|
|
270
|
+
* const deleted = await modelRepo.delete(modelId);
|
|
271
|
+
*
|
|
272
|
+
* // Bulk operations
|
|
273
|
+
* const ids = await modelRepo.bulkCreate([model1, model2, model3]);
|
|
274
|
+
* const deletedCount = await modelRepo.bulkDelete([1, 2, 3]);
|
|
275
|
+
*
|
|
276
|
+
* // Diagnostics
|
|
277
|
+
* const stats = await modelRepo.getStatistics();
|
|
278
|
+
* const validation = await modelRepo.validateSchema();
|
|
279
|
+
*/
|
|
280
|
+
//# sourceMappingURL=base-repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-repository.js","sourceRoot":"","sources":["../../../../src/config/archive-repository-pattern/base-repository.ts"],"names":[],"mappings":"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"}
|