fss-link 1.0.82 → 1.0.83

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.
Files changed (994) hide show
  1. package/README.md +10 -0
  2. package/dist/.last_build +0 -0
  3. package/dist/index.d.ts +7 -0
  4. package/dist/index.js +14 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/package.json +89 -0
  7. package/dist/src/commands/mcp/add.d.ts +7 -0
  8. package/dist/src/commands/mcp/add.js +166 -0
  9. package/dist/src/commands/mcp/add.js.map +1 -0
  10. package/dist/src/commands/mcp/list.d.ts +8 -0
  11. package/dist/src/commands/mcp/list.js +110 -0
  12. package/dist/src/commands/mcp/list.js.map +1 -0
  13. package/dist/src/commands/mcp/remove.d.ts +7 -0
  14. package/dist/src/commands/mcp/remove.js +44 -0
  15. package/dist/src/commands/mcp/remove.js.map +1 -0
  16. package/dist/src/commands/mcp.d.ts +7 -0
  17. package/dist/src/commands/mcp.js +23 -0
  18. package/dist/src/commands/mcp.js.map +1 -0
  19. package/dist/src/config/archive-repository-pattern/README.md +26 -0
  20. package/dist/src/config/archive-repository-pattern/base-repository.d.ts +252 -0
  21. package/dist/src/config/archive-repository-pattern/base-repository.js +280 -0
  22. package/dist/src/config/archive-repository-pattern/base-repository.js.map +1 -0
  23. package/dist/src/config/archive-repository-pattern/model-repository.d.ts +274 -0
  24. package/dist/src/config/archive-repository-pattern/model-repository.js +482 -0
  25. package/dist/src/config/archive-repository-pattern/model-repository.js.map +1 -0
  26. package/dist/src/config/archive-repository-pattern/preferences-repository.d.ts +307 -0
  27. package/dist/src/config/archive-repository-pattern/preferences-repository.js +604 -0
  28. package/dist/src/config/archive-repository-pattern/preferences-repository.js.map +1 -0
  29. package/dist/src/config/archive-repository-pattern/repository-types.d.ts +166 -0
  30. package/dist/src/config/archive-repository-pattern/repository-types.js +67 -0
  31. package/dist/src/config/archive-repository-pattern/repository-types.js.map +1 -0
  32. package/dist/src/config/archive-repository-pattern/settings-repository.d.ts +274 -0
  33. package/dist/src/config/archive-repository-pattern/settings-repository.js +531 -0
  34. package/dist/src/config/archive-repository-pattern/settings-repository.js.map +1 -0
  35. package/dist/src/config/async-mutex.d.ts +61 -0
  36. package/dist/src/config/async-mutex.js +121 -0
  37. package/dist/src/config/async-mutex.js.map +1 -0
  38. package/dist/src/config/async-mutex.test.d.ts +6 -0
  39. package/dist/src/config/async-mutex.test.js +271 -0
  40. package/dist/src/config/async-mutex.test.js.map +1 -0
  41. package/dist/src/config/auth-stress-simplified.test.d.ts +6 -0
  42. package/dist/src/config/auth-stress-simplified.test.js +329 -0
  43. package/dist/src/config/auth-stress-simplified.test.js.map +1 -0
  44. package/dist/src/config/auth-stress.test.d.ts +9 -0
  45. package/dist/src/config/auth-stress.test.js +544 -0
  46. package/dist/src/config/auth-stress.test.js.map +1 -0
  47. package/dist/src/config/auth.d.ts +96 -0
  48. package/dist/src/config/auth.js +341 -0
  49. package/dist/src/config/auth.js.map +1 -0
  50. package/dist/src/config/auth.test.d.ts +6 -0
  51. package/dist/src/config/auth.test.js +61 -0
  52. package/dist/src/config/auth.test.js.map +1 -0
  53. package/dist/src/config/base-repository.d.ts +252 -0
  54. package/dist/src/config/base-repository.js +272 -0
  55. package/dist/src/config/base-repository.js.map +1 -0
  56. package/dist/src/config/config.d.ts +51 -0
  57. package/dist/src/config/config.js +521 -0
  58. package/dist/src/config/config.js.map +1 -0
  59. package/dist/src/config/core-database.d.ts +112 -0
  60. package/dist/src/config/core-database.js +367 -0
  61. package/dist/src/config/core-database.js.map +1 -0
  62. package/dist/src/config/database-integration.test.d.ts +6 -0
  63. package/dist/src/config/database-integration.test.js +547 -0
  64. package/dist/src/config/database-integration.test.js.map +1 -0
  65. package/dist/src/config/database-legacy-wrapper.d.ts +202 -0
  66. package/dist/src/config/database-legacy-wrapper.js +391 -0
  67. package/dist/src/config/database-legacy-wrapper.js.map +1 -0
  68. package/dist/src/config/database-monitor.d.ts +135 -0
  69. package/dist/src/config/database-monitor.js +306 -0
  70. package/dist/src/config/database-monitor.js.map +1 -0
  71. package/dist/src/config/database-queue.d.ts +106 -0
  72. package/dist/src/config/database-queue.js +187 -0
  73. package/dist/src/config/database-queue.js.map +1 -0
  74. package/dist/src/config/database-queue.test.d.ts +6 -0
  75. package/dist/src/config/database-queue.test.js +344 -0
  76. package/dist/src/config/database-queue.test.js.map +1 -0
  77. package/dist/src/config/database-regression-simple.test.d.ts +6 -0
  78. package/dist/src/config/database-regression-simple.test.js +335 -0
  79. package/dist/src/config/database-regression-simple.test.js.map +1 -0
  80. package/dist/src/config/database-regression.test.d.ts +6 -0
  81. package/dist/src/config/database-regression.test.js +523 -0
  82. package/dist/src/config/database-regression.test.js.map +1 -0
  83. package/dist/src/config/database-stress.test.d.ts +6 -0
  84. package/dist/src/config/database-stress.test.js +522 -0
  85. package/dist/src/config/database-stress.test.js.map +1 -0
  86. package/dist/src/config/database-utils.d.ts +281 -0
  87. package/dist/src/config/database-utils.js +658 -0
  88. package/dist/src/config/database-utils.js.map +1 -0
  89. package/dist/src/config/database-utils.test.d.ts +6 -0
  90. package/dist/src/config/database-utils.test.js +278 -0
  91. package/dist/src/config/database-utils.test.js.map +1 -0
  92. package/dist/src/config/database.d.ts +202 -0
  93. package/dist/src/config/database.js +391 -0
  94. package/dist/src/config/database.js.map +1 -0
  95. package/dist/src/config/databaseBackup.d.ts +114 -0
  96. package/dist/src/config/databaseBackup.js +334 -0
  97. package/dist/src/config/databaseBackup.js.map +1 -0
  98. package/dist/src/config/databaseHealthMonitor.d.ts +86 -0
  99. package/dist/src/config/databaseHealthMonitor.js +180 -0
  100. package/dist/src/config/databaseHealthMonitor.js.map +1 -0
  101. package/dist/src/config/databaseMetrics.d.ts +147 -0
  102. package/dist/src/config/databaseMetrics.js +369 -0
  103. package/dist/src/config/databaseMetrics.js.map +1 -0
  104. package/dist/src/config/databaseMigrations.d.ts +63 -0
  105. package/dist/src/config/databaseMigrations.js +417 -0
  106. package/dist/src/config/databaseMigrations.js.map +1 -0
  107. package/dist/src/config/databasePool.d.ts +72 -0
  108. package/dist/src/config/databasePool.js +226 -0
  109. package/dist/src/config/databasePool.js.map +1 -0
  110. package/dist/src/config/databaseSchemaValidator.d.ts +114 -0
  111. package/dist/src/config/databaseSchemaValidator.js +497 -0
  112. package/dist/src/config/databaseSchemaValidator.js.map +1 -0
  113. package/dist/src/config/extension.d.ts +23 -0
  114. package/dist/src/config/extension.js +126 -0
  115. package/dist/src/config/extension.js.map +1 -0
  116. package/dist/src/config/health-database.d.ts +172 -0
  117. package/dist/src/config/health-database.js +283 -0
  118. package/dist/src/config/health-database.js.map +1 -0
  119. package/dist/src/config/keyBindings.d.ts +66 -0
  120. package/dist/src/config/keyBindings.js +141 -0
  121. package/dist/src/config/keyBindings.js.map +1 -0
  122. package/dist/src/config/keyBindings.test.d.ts +6 -0
  123. package/dist/src/config/keyBindings.test.js +51 -0
  124. package/dist/src/config/keyBindings.test.js.map +1 -0
  125. package/dist/src/config/model-database.d.ts +129 -0
  126. package/dist/src/config/model-database.js +290 -0
  127. package/dist/src/config/model-database.js.map +1 -0
  128. package/dist/src/config/model-repository.d.ts +274 -0
  129. package/dist/src/config/model-repository.js +482 -0
  130. package/dist/src/config/model-repository.js.map +1 -0
  131. package/dist/src/config/modelManager.d.ts +131 -0
  132. package/dist/src/config/modelManager.js +460 -0
  133. package/dist/src/config/modelManager.js.map +1 -0
  134. package/dist/src/config/preferences-database.d.ts +101 -0
  135. package/dist/src/config/preferences-database.js +209 -0
  136. package/dist/src/config/preferences-database.js.map +1 -0
  137. package/dist/src/config/preferences-repository.d.ts +307 -0
  138. package/dist/src/config/preferences-repository.js +604 -0
  139. package/dist/src/config/preferences-repository.js.map +1 -0
  140. package/dist/src/config/provider-database.d.ts +86 -0
  141. package/dist/src/config/provider-database.js +191 -0
  142. package/dist/src/config/provider-database.js.map +1 -0
  143. package/dist/src/config/providerPersistence.d.ts +82 -0
  144. package/dist/src/config/providerPersistence.js +62 -0
  145. package/dist/src/config/providerPersistence.js.map +1 -0
  146. package/dist/src/config/queryOptimizer.d.ts +127 -0
  147. package/dist/src/config/queryOptimizer.js +330 -0
  148. package/dist/src/config/queryOptimizer.js.map +1 -0
  149. package/dist/src/config/repository-types.d.ts +166 -0
  150. package/dist/src/config/repository-types.js +67 -0
  151. package/dist/src/config/repository-types.js.map +1 -0
  152. package/dist/src/config/sandboxConfig.d.ts +13 -0
  153. package/dist/src/config/sandboxConfig.js +75 -0
  154. package/dist/src/config/sandboxConfig.js.map +1 -0
  155. package/dist/src/config/settings-repository.d.ts +274 -0
  156. package/dist/src/config/settings-repository.js +531 -0
  157. package/dist/src/config/settings-repository.js.map +1 -0
  158. package/dist/src/config/settings.d.ts +56 -0
  159. package/dist/src/config/settings.js +411 -0
  160. package/dist/src/config/settings.js.map +1 -0
  161. package/dist/src/config/settingsSchema.d.ts +703 -0
  162. package/dist/src/config/settingsSchema.js +679 -0
  163. package/dist/src/config/settingsSchema.js.map +1 -0
  164. package/dist/src/config/settingsSchema.test.d.ts +6 -0
  165. package/dist/src/config/settingsSchema.test.js +195 -0
  166. package/dist/src/config/settingsSchema.test.js.map +1 -0
  167. package/dist/src/config/trustedFolders.d.ts +37 -0
  168. package/dist/src/config/trustedFolders.js +118 -0
  169. package/dist/src/config/trustedFolders.js.map +1 -0
  170. package/dist/src/config/trustedFolders.test.d.ts +6 -0
  171. package/dist/src/config/trustedFolders.test.js +160 -0
  172. package/dist/src/config/trustedFolders.test.js.map +1 -0
  173. package/dist/src/config/unified-database.d.ts +367 -0
  174. package/dist/src/config/unified-database.js +623 -0
  175. package/dist/src/config/unified-database.js.map +1 -0
  176. package/dist/src/config/unified-database.test.d.ts +6 -0
  177. package/dist/src/config/unified-database.test.js +162 -0
  178. package/dist/src/config/unified-database.test.js.map +1 -0
  179. package/dist/src/gemini.d.ts +9 -0
  180. package/dist/src/gemini.js +312 -0
  181. package/dist/src/gemini.js.map +1 -0
  182. package/dist/src/gemini.test.d.ts +6 -0
  183. package/dist/src/gemini.test.js +193 -0
  184. package/dist/src/gemini.test.js.map +1 -0
  185. package/dist/src/generated/git-commit.d.ts +7 -0
  186. package/dist/src/generated/git-commit.js +10 -0
  187. package/dist/src/generated/git-commit.js.map +1 -0
  188. package/dist/src/nonInteractiveCli.d.ts +7 -0
  189. package/dist/src/nonInteractiveCli.js +103 -0
  190. package/dist/src/nonInteractiveCli.js.map +1 -0
  191. package/dist/src/patches/is-in-ci.d.ts +7 -0
  192. package/dist/src/patches/is-in-ci.js +15 -0
  193. package/dist/src/patches/is-in-ci.js.map +1 -0
  194. package/dist/src/services/BuiltinCommandLoader.d.ts +24 -0
  195. package/dist/src/services/BuiltinCommandLoader.js +92 -0
  196. package/dist/src/services/BuiltinCommandLoader.js.map +1 -0
  197. package/dist/src/services/BuiltinCommandLoader.test.d.ts +6 -0
  198. package/dist/src/services/BuiltinCommandLoader.test.js +108 -0
  199. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -0
  200. package/dist/src/services/CommandService.d.ts +55 -0
  201. package/dist/src/services/CommandService.js +90 -0
  202. package/dist/src/services/CommandService.js.map +1 -0
  203. package/dist/src/services/CommandService.test.d.ts +6 -0
  204. package/dist/src/services/CommandService.test.js +232 -0
  205. package/dist/src/services/CommandService.test.js.map +1 -0
  206. package/dist/src/services/FileCommandLoader.d.ts +49 -0
  207. package/dist/src/services/FileCommandLoader.js +210 -0
  208. package/dist/src/services/FileCommandLoader.js.map +1 -0
  209. package/dist/src/services/McpPromptLoader.d.ts +25 -0
  210. package/dist/src/services/McpPromptLoader.js +192 -0
  211. package/dist/src/services/McpPromptLoader.js.map +1 -0
  212. package/dist/src/services/SearchEngineConfigProvider.d.ts +33 -0
  213. package/dist/src/services/SearchEngineConfigProvider.js +82 -0
  214. package/dist/src/services/SearchEngineConfigProvider.js.map +1 -0
  215. package/dist/src/services/prompt-processors/argumentProcessor.d.ts +16 -0
  216. package/dist/src/services/prompt-processors/argumentProcessor.js +20 -0
  217. package/dist/src/services/prompt-processors/argumentProcessor.js.map +1 -0
  218. package/dist/src/services/prompt-processors/shellProcessor.d.ts +35 -0
  219. package/dist/src/services/prompt-processors/shellProcessor.js +162 -0
  220. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -0
  221. package/dist/src/services/prompt-processors/types.d.ts +40 -0
  222. package/dist/src/services/prompt-processors/types.js +16 -0
  223. package/dist/src/services/prompt-processors/types.js.map +1 -0
  224. package/dist/src/services/types.d.ts +22 -0
  225. package/dist/src/services/types.js +7 -0
  226. package/dist/src/services/types.js.map +1 -0
  227. package/dist/src/test-utils/customMatchers.d.ts +14 -0
  228. package/dist/src/test-utils/customMatchers.js +46 -0
  229. package/dist/src/test-utils/customMatchers.js.map +1 -0
  230. package/dist/src/test-utils/mockCommandContext.d.ts +18 -0
  231. package/dist/src/test-utils/mockCommandContext.js +87 -0
  232. package/dist/src/test-utils/mockCommandContext.js.map +1 -0
  233. package/dist/src/test-utils/mockCommandContext.test.d.ts +6 -0
  234. package/dist/src/test-utils/mockCommandContext.test.js +51 -0
  235. package/dist/src/test-utils/mockCommandContext.test.js.map +1 -0
  236. package/dist/src/test-utils/render.d.ts +8 -0
  237. package/dist/src/test-utils/render.js +10 -0
  238. package/dist/src/test-utils/render.js.map +1 -0
  239. package/dist/src/ui/App.d.ts +15 -0
  240. package/dist/src/ui/App.js +687 -0
  241. package/dist/src/ui/App.js.map +1 -0
  242. package/dist/src/ui/IdeIntegrationNudge.d.ts +16 -0
  243. package/dist/src/ui/IdeIntegrationNudge.js +52 -0
  244. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -0
  245. package/dist/src/ui/colors.d.ts +7 -0
  246. package/dist/src/ui/colors.js +54 -0
  247. package/dist/src/ui/colors.js.map +1 -0
  248. package/dist/src/ui/commands/aboutCommand.d.ts +7 -0
  249. package/dist/src/ui/commands/aboutCommand.js +43 -0
  250. package/dist/src/ui/commands/aboutCommand.js.map +1 -0
  251. package/dist/src/ui/commands/authCommand.d.ts +7 -0
  252. package/dist/src/ui/commands/authCommand.js +16 -0
  253. package/dist/src/ui/commands/authCommand.js.map +1 -0
  254. package/dist/src/ui/commands/bugCommand.d.ts +7 -0
  255. package/dist/src/ui/commands/bugCommand.js +71 -0
  256. package/dist/src/ui/commands/bugCommand.js.map +1 -0
  257. package/dist/src/ui/commands/chatCommand.d.ts +7 -0
  258. package/dist/src/ui/commands/chatCommand.js +234 -0
  259. package/dist/src/ui/commands/chatCommand.js.map +1 -0
  260. package/dist/src/ui/commands/clearCommand.d.ts +7 -0
  261. package/dist/src/ui/commands/clearCommand.js +27 -0
  262. package/dist/src/ui/commands/clearCommand.js.map +1 -0
  263. package/dist/src/ui/commands/compressCommand.d.ts +7 -0
  264. package/dist/src/ui/commands/compressCommand.js +64 -0
  265. package/dist/src/ui/commands/compressCommand.js.map +1 -0
  266. package/dist/src/ui/commands/contextCommand.d.ts +7 -0
  267. package/dist/src/ui/commands/contextCommand.js +115 -0
  268. package/dist/src/ui/commands/contextCommand.js.map +1 -0
  269. package/dist/src/ui/commands/copyCommand.d.ts +7 -0
  270. package/dist/src/ui/commands/copyCommand.js +59 -0
  271. package/dist/src/ui/commands/copyCommand.js.map +1 -0
  272. package/dist/src/ui/commands/corgiCommand.d.ts +7 -0
  273. package/dist/src/ui/commands/corgiCommand.js +15 -0
  274. package/dist/src/ui/commands/corgiCommand.js.map +1 -0
  275. package/dist/src/ui/commands/directoryCommand.d.ts +8 -0
  276. package/dist/src/ui/commands/directoryCommand.js +133 -0
  277. package/dist/src/ui/commands/directoryCommand.js.map +1 -0
  278. package/dist/src/ui/commands/docsCommand.d.ts +7 -0
  279. package/dist/src/ui/commands/docsCommand.js +31 -0
  280. package/dist/src/ui/commands/docsCommand.js.map +1 -0
  281. package/dist/src/ui/commands/editorCommand.d.ts +7 -0
  282. package/dist/src/ui/commands/editorCommand.js +16 -0
  283. package/dist/src/ui/commands/editorCommand.js.map +1 -0
  284. package/dist/src/ui/commands/extensionsCommand.d.ts +7 -0
  285. package/dist/src/ui/commands/extensionsCommand.js +31 -0
  286. package/dist/src/ui/commands/extensionsCommand.js.map +1 -0
  287. package/dist/src/ui/commands/helpCommand.d.ts +7 -0
  288. package/dist/src/ui/commands/helpCommand.js +21 -0
  289. package/dist/src/ui/commands/helpCommand.js.map +1 -0
  290. package/dist/src/ui/commands/ideCommand.d.ts +8 -0
  291. package/dist/src/ui/commands/ideCommand.js +218 -0
  292. package/dist/src/ui/commands/ideCommand.js.map +1 -0
  293. package/dist/src/ui/commands/initCommand.d.ts +7 -0
  294. package/dist/src/ui/commands/initCommand.js +105 -0
  295. package/dist/src/ui/commands/initCommand.js.map +1 -0
  296. package/dist/src/ui/commands/mcpCommand.d.ts +7 -0
  297. package/dist/src/ui/commands/mcpCommand.js +424 -0
  298. package/dist/src/ui/commands/mcpCommand.js.map +1 -0
  299. package/dist/src/ui/commands/memoryCommand.d.ts +7 -0
  300. package/dist/src/ui/commands/memoryCommand.js +224 -0
  301. package/dist/src/ui/commands/memoryCommand.js.map +1 -0
  302. package/dist/src/ui/commands/privacyCommand.d.ts +7 -0
  303. package/dist/src/ui/commands/privacyCommand.js +16 -0
  304. package/dist/src/ui/commands/privacyCommand.js.map +1 -0
  305. package/dist/src/ui/commands/quitCommand.d.ts +7 -0
  306. package/dist/src/ui/commands/quitCommand.js +34 -0
  307. package/dist/src/ui/commands/quitCommand.js.map +1 -0
  308. package/dist/src/ui/commands/restoreCommand.d.ts +8 -0
  309. package/dist/src/ui/commands/restoreCommand.js +128 -0
  310. package/dist/src/ui/commands/restoreCommand.js.map +1 -0
  311. package/dist/src/ui/commands/searchEngineSetupCommand.d.ts +7 -0
  312. package/dist/src/ui/commands/searchEngineSetupCommand.js +17 -0
  313. package/dist/src/ui/commands/searchEngineSetupCommand.js.map +1 -0
  314. package/dist/src/ui/commands/settingsCommand.d.ts +7 -0
  315. package/dist/src/ui/commands/settingsCommand.js +16 -0
  316. package/dist/src/ui/commands/settingsCommand.js.map +1 -0
  317. package/dist/src/ui/commands/setupGithubCommand.d.ts +9 -0
  318. package/dist/src/ui/commands/setupGithubCommand.js +154 -0
  319. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -0
  320. package/dist/src/ui/commands/setupGithubCommand.test.d.ts +6 -0
  321. package/dist/src/ui/commands/setupGithubCommand.test.js +167 -0
  322. package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -0
  323. package/dist/src/ui/commands/speakCommand.d.ts +7 -0
  324. package/dist/src/ui/commands/speakCommand.js +136 -0
  325. package/dist/src/ui/commands/speakCommand.js.map +1 -0
  326. package/dist/src/ui/commands/statsCommand.d.ts +7 -0
  327. package/dist/src/ui/commands/statsCommand.js +54 -0
  328. package/dist/src/ui/commands/statsCommand.js.map +1 -0
  329. package/dist/src/ui/commands/terminalSetupCommand.d.ts +13 -0
  330. package/dist/src/ui/commands/terminalSetupCommand.js +41 -0
  331. package/dist/src/ui/commands/terminalSetupCommand.js.map +1 -0
  332. package/dist/src/ui/commands/themeCommand.d.ts +7 -0
  333. package/dist/src/ui/commands/themeCommand.js +16 -0
  334. package/dist/src/ui/commands/themeCommand.js.map +1 -0
  335. package/dist/src/ui/commands/toolsCommand.d.ts +7 -0
  336. package/dist/src/ui/commands/toolsCommand.js +56 -0
  337. package/dist/src/ui/commands/toolsCommand.js.map +1 -0
  338. package/dist/src/ui/commands/ttsCommand.d.ts +7 -0
  339. package/dist/src/ui/commands/ttsCommand.js +122 -0
  340. package/dist/src/ui/commands/ttsCommand.js.map +1 -0
  341. package/dist/src/ui/commands/types.d.ts +157 -0
  342. package/dist/src/ui/commands/types.js +12 -0
  343. package/dist/src/ui/commands/types.js.map +1 -0
  344. package/dist/src/ui/commands/vimCommand.d.ts +7 -0
  345. package/dist/src/ui/commands/vimCommand.js +23 -0
  346. package/dist/src/ui/commands/vimCommand.js.map +1 -0
  347. package/dist/src/ui/commands/voiceCommand.d.ts +7 -0
  348. package/dist/src/ui/commands/voiceCommand.js +95 -0
  349. package/dist/src/ui/commands/voiceCommand.js.map +1 -0
  350. package/dist/src/ui/components/AboutBox.d.ts +17 -0
  351. package/dist/src/ui/components/AboutBox.js +6 -0
  352. package/dist/src/ui/components/AboutBox.js.map +1 -0
  353. package/dist/src/ui/components/AsciiArt.d.ts +8 -0
  354. package/dist/src/ui/components/AsciiArt.js +53 -0
  355. package/dist/src/ui/components/AsciiArt.js.map +1 -0
  356. package/dist/src/ui/components/AuthDialog.d.ts +15 -0
  357. package/dist/src/ui/components/AuthDialog.js +151 -0
  358. package/dist/src/ui/components/AuthDialog.js.map +1 -0
  359. package/dist/src/ui/components/AuthDialog.test.d.ts +6 -0
  360. package/dist/src/ui/components/AuthDialog.test.js +220 -0
  361. package/dist/src/ui/components/AuthDialog.test.js.map +1 -0
  362. package/dist/src/ui/components/AuthInProgress.d.ts +11 -0
  363. package/dist/src/ui/components/AuthInProgress.js +28 -0
  364. package/dist/src/ui/components/AuthInProgress.js.map +1 -0
  365. package/dist/src/ui/components/AutoAcceptIndicator.d.ts +12 -0
  366. package/dist/src/ui/components/AutoAcceptIndicator.js +26 -0
  367. package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -0
  368. package/dist/src/ui/components/ConsoleSummaryDisplay.d.ts +11 -0
  369. package/dist/src/ui/components/ConsoleSummaryDisplay.js +11 -0
  370. package/dist/src/ui/components/ConsoleSummaryDisplay.js.map +1 -0
  371. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +20 -0
  372. package/dist/src/ui/components/ContextSummaryDisplay.js +65 -0
  373. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -0
  374. package/dist/src/ui/components/ContextUsageDisplay.d.ts +11 -0
  375. package/dist/src/ui/components/ContextUsageDisplay.js +100 -0
  376. package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -0
  377. package/dist/src/ui/components/DebugProfiler.d.ts +6 -0
  378. package/dist/src/ui/components/DebugProfiler.js +27 -0
  379. package/dist/src/ui/components/DebugProfiler.js.map +1 -0
  380. package/dist/src/ui/components/DetailedMessagesDisplay.d.ts +14 -0
  381. package/dist/src/ui/components/DetailedMessagesDisplay.js +34 -0
  382. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -0
  383. package/dist/src/ui/components/EditorSettingsDialog.d.ts +15 -0
  384. package/dist/src/ui/components/EditorSettingsDialog.js +74 -0
  385. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -0
  386. package/dist/src/ui/components/FolderTrustDialog.d.ts +16 -0
  387. package/dist/src/ui/components/FolderTrustDialog.js +39 -0
  388. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -0
  389. package/dist/src/ui/components/FolderTrustDialog.test.d.ts +6 -0
  390. package/dist/src/ui/components/FolderTrustDialog.test.js +26 -0
  391. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -0
  392. package/dist/src/ui/components/Footer.d.ts +24 -0
  393. package/dist/src/ui/components/Footer.js +25 -0
  394. package/dist/src/ui/components/Footer.js.map +1 -0
  395. package/dist/src/ui/components/GeminiRespondingSpinner.d.ts +17 -0
  396. package/dist/src/ui/components/GeminiRespondingSpinner.js +16 -0
  397. package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -0
  398. package/dist/src/ui/components/Header.d.ts +13 -0
  399. package/dist/src/ui/components/Header.js +28 -0
  400. package/dist/src/ui/components/Header.js.map +1 -0
  401. package/dist/src/ui/components/Header.test.d.ts +6 -0
  402. package/dist/src/ui/components/Header.test.js +37 -0
  403. package/dist/src/ui/components/Header.test.js.map +1 -0
  404. package/dist/src/ui/components/Help.d.ts +12 -0
  405. package/dist/src/ui/components/Help.js +10 -0
  406. package/dist/src/ui/components/Help.js.map +1 -0
  407. package/dist/src/ui/components/HistoryItemDisplay.d.ts +20 -0
  408. package/dist/src/ui/components/HistoryItemDisplay.js +18 -0
  409. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -0
  410. package/dist/src/ui/components/HistoryItemDisplay.test.d.ts +6 -0
  411. package/dist/src/ui/components/HistoryItemDisplay.test.js +91 -0
  412. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -0
  413. package/dist/src/ui/components/InputPrompt.d.ts +28 -0
  414. package/dist/src/ui/components/InputPrompt.js +440 -0
  415. package/dist/src/ui/components/InputPrompt.js.map +1 -0
  416. package/dist/src/ui/components/LMStudioModelPrompt.d.ts +12 -0
  417. package/dist/src/ui/components/LMStudioModelPrompt.js +100 -0
  418. package/dist/src/ui/components/LMStudioModelPrompt.js.map +1 -0
  419. package/dist/src/ui/components/LoadingIndicator.d.ts +15 -0
  420. package/dist/src/ui/components/LoadingIndicator.js +25 -0
  421. package/dist/src/ui/components/LoadingIndicator.js.map +1 -0
  422. package/dist/src/ui/components/LoadingIndicator.test.d.ts +6 -0
  423. package/dist/src/ui/components/LoadingIndicator.test.js +190 -0
  424. package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -0
  425. package/dist/src/ui/components/MemoryUsageDisplay.d.ts +7 -0
  426. package/dist/src/ui/components/MemoryUsageDisplay.js +27 -0
  427. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -0
  428. package/dist/src/ui/components/ModelStatsDisplay.d.ts +7 -0
  429. package/dist/src/ui/components/ModelStatsDisplay.js +33 -0
  430. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -0
  431. package/dist/src/ui/components/OllamaModelPrompt.d.ts +12 -0
  432. package/dist/src/ui/components/OllamaModelPrompt.js +94 -0
  433. package/dist/src/ui/components/OllamaModelPrompt.js.map +1 -0
  434. package/dist/src/ui/components/OpenAIKeyPrompt.d.ts +12 -0
  435. package/dist/src/ui/components/OpenAIKeyPrompt.js +118 -0
  436. package/dist/src/ui/components/OpenAIKeyPrompt.js.map +1 -0
  437. package/dist/src/ui/components/OpenAIKeyPrompt.test.d.ts +6 -0
  438. package/dist/src/ui/components/OpenAIKeyPrompt.test.js +44 -0
  439. package/dist/src/ui/components/OpenAIKeyPrompt.test.js.map +1 -0
  440. package/dist/src/ui/components/PrepareLabel.d.ts +15 -0
  441. package/dist/src/ui/components/PrepareLabel.js +16 -0
  442. package/dist/src/ui/components/PrepareLabel.js.map +1 -0
  443. package/dist/src/ui/components/SearchEngineConfigDialog.d.ts +18 -0
  444. package/dist/src/ui/components/SearchEngineConfigDialog.js +148 -0
  445. package/dist/src/ui/components/SearchEngineConfigDialog.js.map +1 -0
  446. package/dist/src/ui/components/SessionSummaryDisplay.d.ts +11 -0
  447. package/dist/src/ui/components/SessionSummaryDisplay.js +4 -0
  448. package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -0
  449. package/dist/src/ui/components/SettingsDialog.d.ts +14 -0
  450. package/dist/src/ui/components/SettingsDialog.js +519 -0
  451. package/dist/src/ui/components/SettingsDialog.js.map +1 -0
  452. package/dist/src/ui/components/SettingsDialog.test.d.ts +6 -0
  453. package/dist/src/ui/components/SettingsDialog.test.js +568 -0
  454. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -0
  455. package/dist/src/ui/components/ShellConfirmationDialog.d.ts +15 -0
  456. package/dist/src/ui/components/ShellConfirmationDialog.js +46 -0
  457. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -0
  458. package/dist/src/ui/components/ShellConfirmationDialog.test.d.ts +6 -0
  459. package/dist/src/ui/components/ShellConfirmationDialog.test.js +40 -0
  460. package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +1 -0
  461. package/dist/src/ui/components/ShellModeIndicator.d.ts +7 -0
  462. package/dist/src/ui/components/ShellModeIndicator.js +5 -0
  463. package/dist/src/ui/components/ShellModeIndicator.js.map +1 -0
  464. package/dist/src/ui/components/ShowMoreLines.d.ts +10 -0
  465. package/dist/src/ui/components/ShowMoreLines.js +24 -0
  466. package/dist/src/ui/components/ShowMoreLines.js.map +1 -0
  467. package/dist/src/ui/components/StatsDisplay.d.ts +12 -0
  468. package/dist/src/ui/components/StatsDisplay.js +43 -0
  469. package/dist/src/ui/components/StatsDisplay.js.map +1 -0
  470. package/dist/src/ui/components/SuggestionsDisplay.d.ts +22 -0
  471. package/dist/src/ui/components/SuggestionsDisplay.js +32 -0
  472. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -0
  473. package/dist/src/ui/components/ThemeDialog.d.ts +19 -0
  474. package/dist/src/ui/components/ThemeDialog.js +143 -0
  475. package/dist/src/ui/components/ThemeDialog.js.map +1 -0
  476. package/dist/src/ui/components/Tips.d.ts +12 -0
  477. package/dist/src/ui/components/Tips.js +8 -0
  478. package/dist/src/ui/components/Tips.js.map +1 -0
  479. package/dist/src/ui/components/TodoDisplay.d.ts +16 -0
  480. package/dist/src/ui/components/TodoDisplay.js +27 -0
  481. package/dist/src/ui/components/TodoDisplay.js.map +1 -0
  482. package/dist/src/ui/components/TodoDisplay.test.d.ts +6 -0
  483. package/dist/src/ui/components/TodoDisplay.test.js +77 -0
  484. package/dist/src/ui/components/TodoDisplay.test.js.map +1 -0
  485. package/dist/src/ui/components/ToolStatsDisplay.d.ts +7 -0
  486. package/dist/src/ui/components/ToolStatsDisplay.js +41 -0
  487. package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -0
  488. package/dist/src/ui/components/UpdateNotification.d.ts +10 -0
  489. package/dist/src/ui/components/UpdateNotification.js +10 -0
  490. package/dist/src/ui/components/UpdateNotification.js.map +1 -0
  491. package/dist/src/ui/components/WelcomeBackDialog.d.ts +36 -0
  492. package/dist/src/ui/components/WelcomeBackDialog.js +109 -0
  493. package/dist/src/ui/components/WelcomeBackDialog.js.map +1 -0
  494. package/dist/src/ui/components/messages/CompressionMessage.d.ts +11 -0
  495. package/dist/src/ui/components/messages/CompressionMessage.js +16 -0
  496. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -0
  497. package/dist/src/ui/components/messages/DiffRenderer.d.ts +16 -0
  498. package/dist/src/ui/components/messages/DiffRenderer.js +222 -0
  499. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -0
  500. package/dist/src/ui/components/messages/DiffRenderer.test.d.ts +6 -0
  501. package/dist/src/ui/components/messages/DiffRenderer.test.js +239 -0
  502. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -0
  503. package/dist/src/ui/components/messages/ErrorMessage.d.ts +11 -0
  504. package/dist/src/ui/components/messages/ErrorMessage.js +9 -0
  505. package/dist/src/ui/components/messages/ErrorMessage.js.map +1 -0
  506. package/dist/src/ui/components/messages/GeminiMessage.d.ts +14 -0
  507. package/dist/src/ui/components/messages/GeminiMessage.js +10 -0
  508. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -0
  509. package/dist/src/ui/components/messages/GeminiMessageContent.d.ts +14 -0
  510. package/dist/src/ui/components/messages/GeminiMessageContent.js +15 -0
  511. package/dist/src/ui/components/messages/GeminiMessageContent.js.map +1 -0
  512. package/dist/src/ui/components/messages/InfoMessage.d.ts +11 -0
  513. package/dist/src/ui/components/messages/InfoMessage.js +10 -0
  514. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -0
  515. package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +15 -0
  516. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +145 -0
  517. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -0
  518. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.d.ts +6 -0
  519. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +37 -0
  520. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -0
  521. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +18 -0
  522. package/dist/src/ui/components/messages/ToolGroupMessage.js +55 -0
  523. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -0
  524. package/dist/src/ui/components/messages/ToolMessage.d.ts +15 -0
  525. package/dist/src/ui/components/messages/ToolMessage.js +111 -0
  526. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -0
  527. package/dist/src/ui/components/messages/ToolMessage.test.d.ts +6 -0
  528. package/dist/src/ui/components/messages/ToolMessage.test.js +118 -0
  529. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -0
  530. package/dist/src/ui/components/messages/UserMessage.d.ts +11 -0
  531. package/dist/src/ui/components/messages/UserMessage.js +12 -0
  532. package/dist/src/ui/components/messages/UserMessage.js.map +1 -0
  533. package/dist/src/ui/components/messages/UserShellMessage.d.ts +11 -0
  534. package/dist/src/ui/components/messages/UserShellMessage.js +9 -0
  535. package/dist/src/ui/components/messages/UserShellMessage.js.map +1 -0
  536. package/dist/src/ui/components/shared/MaxSizedBox.d.ts +61 -0
  537. package/dist/src/ui/components/shared/MaxSizedBox.js +451 -0
  538. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -0
  539. package/dist/src/ui/components/shared/MaxSizedBox.test.d.ts +6 -0
  540. package/dist/src/ui/components/shared/MaxSizedBox.test.js +154 -0
  541. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +1 -0
  542. package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +46 -0
  543. package/dist/src/ui/components/shared/RadioButtonSelect.js +121 -0
  544. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -0
  545. package/dist/src/ui/components/shared/RadioButtonSelect.test.d.ts +6 -0
  546. package/dist/src/ui/components/shared/RadioButtonSelect.test.js +111 -0
  547. package/dist/src/ui/components/shared/RadioButtonSelect.test.js.map +1 -0
  548. package/dist/src/ui/components/shared/text-buffer.d.ts +467 -0
  549. package/dist/src/ui/components/shared/text-buffer.js +1533 -0
  550. package/dist/src/ui/components/shared/text-buffer.js.map +1 -0
  551. package/dist/src/ui/components/shared/vim-buffer-actions.d.ts +72 -0
  552. package/dist/src/ui/components/shared/vim-buffer-actions.js +552 -0
  553. package/dist/src/ui/components/shared/vim-buffer-actions.js.map +1 -0
  554. package/dist/src/ui/constants.d.ts +9 -0
  555. package/dist/src/ui/constants.js +13 -0
  556. package/dist/src/ui/constants.js.map +1 -0
  557. package/dist/src/ui/contexts/KeypressContext.d.ts +30 -0
  558. package/dist/src/ui/contexts/KeypressContext.js +331 -0
  559. package/dist/src/ui/contexts/KeypressContext.js.map +1 -0
  560. package/dist/src/ui/contexts/KeypressContext.test.d.ts +6 -0
  561. package/dist/src/ui/contexts/KeypressContext.test.js +275 -0
  562. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -0
  563. package/dist/src/ui/contexts/OverflowContext.d.ts +19 -0
  564. package/dist/src/ui/contexts/OverflowContext.js +43 -0
  565. package/dist/src/ui/contexts/OverflowContext.js.map +1 -0
  566. package/dist/src/ui/contexts/SessionContext.d.ts +39 -0
  567. package/dist/src/ui/contexts/SessionContext.js +60 -0
  568. package/dist/src/ui/contexts/SessionContext.js.map +1 -0
  569. package/dist/src/ui/contexts/SettingsContext.d.ts +9 -0
  570. package/dist/src/ui/contexts/SettingsContext.js +15 -0
  571. package/dist/src/ui/contexts/SettingsContext.js.map +1 -0
  572. package/dist/src/ui/contexts/StreamingContext.d.ts +9 -0
  573. package/dist/src/ui/contexts/StreamingContext.js +15 -0
  574. package/dist/src/ui/contexts/StreamingContext.js.map +1 -0
  575. package/dist/src/ui/contexts/VimModeContext.d.ts +19 -0
  576. package/dist/src/ui/contexts/VimModeContext.js +48 -0
  577. package/dist/src/ui/contexts/VimModeContext.js.map +1 -0
  578. package/dist/src/ui/editors/editorSettingsManager.d.ts +19 -0
  579. package/dist/src/ui/editors/editorSettingsManager.js +47 -0
  580. package/dist/src/ui/editors/editorSettingsManager.js.map +1 -0
  581. package/dist/src/ui/hooks/atCommandProcessor.d.ts +31 -0
  582. package/dist/src/ui/hooks/atCommandProcessor.js +365 -0
  583. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -0
  584. package/dist/src/ui/hooks/atCommandProcessor.test.d.ts +6 -0
  585. package/dist/src/ui/hooks/atCommandProcessor.test.js +824 -0
  586. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -0
  587. package/dist/src/ui/hooks/shellCommandProcessor.d.ts +17 -0
  588. package/dist/src/ui/hooks/shellCommandProcessor.js +233 -0
  589. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -0
  590. package/dist/src/ui/hooks/shellCommandProcessor.test.d.ts +6 -0
  591. package/dist/src/ui/hooks/shellCommandProcessor.test.js +328 -0
  592. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -0
  593. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +28 -0
  594. package/dist/src/ui/hooks/slashCommandProcessor.js +459 -0
  595. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -0
  596. package/dist/src/ui/hooks/useAtCompletion.d.ts +23 -0
  597. package/dist/src/ui/hooks/useAtCompletion.js +179 -0
  598. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -0
  599. package/dist/src/ui/hooks/useAuthCommand.d.ts +14 -0
  600. package/dist/src/ui/hooks/useAuthCommand.js +100 -0
  601. package/dist/src/ui/hooks/useAuthCommand.js.map +1 -0
  602. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +10 -0
  603. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +37 -0
  604. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -0
  605. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.d.ts +6 -0
  606. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +190 -0
  607. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -0
  608. package/dist/src/ui/hooks/useBracketedPaste.d.ts +12 -0
  609. package/dist/src/ui/hooks/useBracketedPaste.js +32 -0
  610. package/dist/src/ui/hooks/useBracketedPaste.js.map +1 -0
  611. package/dist/src/ui/hooks/useCommandCompletion.d.ts +29 -0
  612. package/dist/src/ui/hooks/useCommandCompletion.js +165 -0
  613. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -0
  614. package/dist/src/ui/hooks/useCompletion.d.ts +24 -0
  615. package/dist/src/ui/hooks/useCompletion.js +88 -0
  616. package/dist/src/ui/hooks/useCompletion.js.map +1 -0
  617. package/dist/src/ui/hooks/useConsoleMessages.d.ts +12 -0
  618. package/dist/src/ui/hooks/useConsoleMessages.js +76 -0
  619. package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -0
  620. package/dist/src/ui/hooks/useEditorSettings.d.ts +16 -0
  621. package/dist/src/ui/hooks/useEditorSettings.js +43 -0
  622. package/dist/src/ui/hooks/useEditorSettings.js.map +1 -0
  623. package/dist/src/ui/hooks/useEditorSettings.test.d.ts +6 -0
  624. package/dist/src/ui/hooks/useEditorSettings.test.js +164 -0
  625. package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -0
  626. package/dist/src/ui/hooks/useFocus.d.ts +10 -0
  627. package/dist/src/ui/hooks/useFocus.js +41 -0
  628. package/dist/src/ui/hooks/useFocus.js.map +1 -0
  629. package/dist/src/ui/hooks/useFolderTrust.d.ts +12 -0
  630. package/dist/src/ui/hooks/useFolderTrust.js +55 -0
  631. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -0
  632. package/dist/src/ui/hooks/useGeminiStream.d.ts +24 -0
  633. package/dist/src/ui/hooks/useGeminiStream.js +653 -0
  634. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -0
  635. package/dist/src/ui/hooks/useGitBranchName.d.ts +6 -0
  636. package/dist/src/ui/hooks/useGitBranchName.js +61 -0
  637. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -0
  638. package/dist/src/ui/hooks/useGitBranchName.test.d.ts +6 -0
  639. package/dist/src/ui/hooks/useGitBranchName.test.js +215 -0
  640. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -0
  641. package/dist/src/ui/hooks/useHistoryManager.d.ts +22 -0
  642. package/dist/src/ui/hooks/useHistoryManager.js +72 -0
  643. package/dist/src/ui/hooks/useHistoryManager.js.map +1 -0
  644. package/dist/src/ui/hooks/useHistoryManager.test.d.ts +6 -0
  645. package/dist/src/ui/hooks/useHistoryManager.test.js +171 -0
  646. package/dist/src/ui/hooks/useHistoryManager.test.js.map +1 -0
  647. package/dist/src/ui/hooks/useInputHistory.d.ts +19 -0
  648. package/dist/src/ui/hooks/useInputHistory.js +84 -0
  649. package/dist/src/ui/hooks/useInputHistory.js.map +1 -0
  650. package/dist/src/ui/hooks/useInputHistory.test.d.ts +6 -0
  651. package/dist/src/ui/hooks/useInputHistory.test.js +207 -0
  652. package/dist/src/ui/hooks/useInputHistory.test.js.map +1 -0
  653. package/dist/src/ui/hooks/useKeypress.d.ts +17 -0
  654. package/dist/src/ui/hooks/useKeypress.js +27 -0
  655. package/dist/src/ui/hooks/useKeypress.js.map +1 -0
  656. package/dist/src/ui/hooks/useKittyKeyboardProtocol.d.ts +15 -0
  657. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +20 -0
  658. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +1 -0
  659. package/dist/src/ui/hooks/useLoadingIndicator.d.ts +10 -0
  660. package/dist/src/ui/hooks/useLoadingIndicator.js +44 -0
  661. package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -0
  662. package/dist/src/ui/hooks/useLoadingIndicator.test.d.ts +6 -0
  663. package/dist/src/ui/hooks/useLoadingIndicator.test.js +91 -0
  664. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -0
  665. package/dist/src/ui/hooks/useLogger.d.ts +10 -0
  666. package/dist/src/ui/hooks/useLogger.js +29 -0
  667. package/dist/src/ui/hooks/useLogger.js.map +1 -0
  668. package/dist/src/ui/hooks/useMessageQueue.d.ts +22 -0
  669. package/dist/src/ui/hooks/useMessageQueue.js +49 -0
  670. package/dist/src/ui/hooks/useMessageQueue.js.map +1 -0
  671. package/dist/src/ui/hooks/useMessageQueue.test.d.ts +6 -0
  672. package/dist/src/ui/hooks/useMessageQueue.test.js +158 -0
  673. package/dist/src/ui/hooks/useMessageQueue.test.js.map +1 -0
  674. package/dist/src/ui/hooks/usePhraseCycler.d.ts +14 -0
  675. package/dist/src/ui/hooks/usePhraseCycler.js +187 -0
  676. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -0
  677. package/dist/src/ui/hooks/usePrivacySettings.d.ts +16 -0
  678. package/dist/src/ui/hooks/usePrivacySettings.js +119 -0
  679. package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -0
  680. package/dist/src/ui/hooks/usePrivacySettings.test.d.ts +6 -0
  681. package/dist/src/ui/hooks/usePrivacySettings.test.js +154 -0
  682. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -0
  683. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +33 -0
  684. package/dist/src/ui/hooks/useReactToolScheduler.js +187 -0
  685. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -0
  686. package/dist/src/ui/hooks/useRefreshMemoryCommand.d.ts +6 -0
  687. package/dist/src/ui/hooks/useRefreshMemoryCommand.js +7 -0
  688. package/dist/src/ui/hooks/useRefreshMemoryCommand.js.map +1 -0
  689. package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +19 -0
  690. package/dist/src/ui/hooks/useReverseSearchCompletion.js +56 -0
  691. package/dist/src/ui/hooks/useReverseSearchCompletion.js.map +1 -0
  692. package/dist/src/ui/hooks/useReverseSearchCompletion.test.d.ts +6 -0
  693. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +163 -0
  694. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +1 -0
  695. package/dist/src/ui/hooks/useSettingsCommand.d.ts +10 -0
  696. package/dist/src/ui/hooks/useSettingsCommand.js +21 -0
  697. package/dist/src/ui/hooks/useSettingsCommand.js.map +1 -0
  698. package/dist/src/ui/hooks/useShellHistory.d.ts +13 -0
  699. package/dist/src/ui/hooks/useShellHistory.js +112 -0
  700. package/dist/src/ui/hooks/useShellHistory.js.map +1 -0
  701. package/dist/src/ui/hooks/useShellHistory.test.d.ts +6 -0
  702. package/dist/src/ui/hooks/useShellHistory.test.js +162 -0
  703. package/dist/src/ui/hooks/useShellHistory.test.js.map +1 -0
  704. package/dist/src/ui/hooks/useShowMemoryCommand.d.ts +9 -0
  705. package/dist/src/ui/hooks/useShowMemoryCommand.js +58 -0
  706. package/dist/src/ui/hooks/useShowMemoryCommand.js.map +1 -0
  707. package/dist/src/ui/hooks/useSlashCompletion.d.ts +20 -0
  708. package/dist/src/ui/hooks/useSlashCompletion.js +135 -0
  709. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -0
  710. package/dist/src/ui/hooks/useSlashCompletion.test.d.ts +6 -0
  711. package/dist/src/ui/hooks/useSlashCompletion.test.js +272 -0
  712. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -0
  713. package/dist/src/ui/hooks/useStateAndRef.d.ts +7 -0
  714. package/dist/src/ui/hooks/useStateAndRef.js +26 -0
  715. package/dist/src/ui/hooks/useStateAndRef.js.map +1 -0
  716. package/dist/src/ui/hooks/useTerminalSize.d.ts +9 -0
  717. package/dist/src/ui/hooks/useTerminalSize.js +27 -0
  718. package/dist/src/ui/hooks/useTerminalSize.js.map +1 -0
  719. package/dist/src/ui/hooks/useThemeCommand.d.ts +15 -0
  720. package/dist/src/ui/hooks/useThemeCommand.js +79 -0
  721. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -0
  722. package/dist/src/ui/hooks/useTimer.d.ts +12 -0
  723. package/dist/src/ui/hooks/useTimer.js +58 -0
  724. package/dist/src/ui/hooks/useTimer.js.map +1 -0
  725. package/dist/src/ui/hooks/useTimer.test.d.ts +6 -0
  726. package/dist/src/ui/hooks/useTimer.test.js +90 -0
  727. package/dist/src/ui/hooks/useTimer.test.js.map +1 -0
  728. package/dist/src/ui/hooks/useToolScheduler.test.d.ts +6 -0
  729. package/dist/src/ui/hooks/useToolScheduler.test.js +845 -0
  730. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -0
  731. package/dist/src/ui/hooks/useWelcomeBack.d.ts +52 -0
  732. package/dist/src/ui/hooks/useWelcomeBack.js +214 -0
  733. package/dist/src/ui/hooks/useWelcomeBack.js.map +1 -0
  734. package/dist/src/ui/hooks/vim.d.ts +28 -0
  735. package/dist/src/ui/hooks/vim.js +639 -0
  736. package/dist/src/ui/hooks/vim.js.map +1 -0
  737. package/dist/src/ui/keyMatchers.d.ts +26 -0
  738. package/dist/src/ui/keyMatchers.js +68 -0
  739. package/dist/src/ui/keyMatchers.js.map +1 -0
  740. package/dist/src/ui/keyMatchers.test.d.ts +6 -0
  741. package/dist/src/ui/keyMatchers.test.js +276 -0
  742. package/dist/src/ui/keyMatchers.test.js.map +1 -0
  743. package/dist/src/ui/privacy/CloudFreePrivacyNotice.d.ts +12 -0
  744. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +41 -0
  745. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -0
  746. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.d.ts +10 -0
  747. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js +18 -0
  748. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js.map +1 -0
  749. package/dist/src/ui/privacy/GeminiPrivacyNotice.d.ts +10 -0
  750. package/dist/src/ui/privacy/GeminiPrivacyNotice.js +18 -0
  751. package/dist/src/ui/privacy/GeminiPrivacyNotice.js.map +1 -0
  752. package/dist/src/ui/privacy/PrivacyNotice.d.ts +12 -0
  753. package/dist/src/ui/privacy/PrivacyNotice.js +25 -0
  754. package/dist/src/ui/privacy/PrivacyNotice.js.map +1 -0
  755. package/dist/src/ui/semantic-colors.d.ts +7 -0
  756. package/dist/src/ui/semantic-colors.js +24 -0
  757. package/dist/src/ui/semantic-colors.js.map +1 -0
  758. package/dist/src/ui/themes/ansi-light.d.ts +7 -0
  759. package/dist/src/ui/themes/ansi-light.js +142 -0
  760. package/dist/src/ui/themes/ansi-light.js.map +1 -0
  761. package/dist/src/ui/themes/ansi.d.ts +7 -0
  762. package/dist/src/ui/themes/ansi.js +152 -0
  763. package/dist/src/ui/themes/ansi.js.map +1 -0
  764. package/dist/src/ui/themes/atom-one-dark.d.ts +7 -0
  765. package/dist/src/ui/themes/atom-one-dark.js +139 -0
  766. package/dist/src/ui/themes/atom-one-dark.js.map +1 -0
  767. package/dist/src/ui/themes/ayu-light.d.ts +7 -0
  768. package/dist/src/ui/themes/ayu-light.js +131 -0
  769. package/dist/src/ui/themes/ayu-light.js.map +1 -0
  770. package/dist/src/ui/themes/ayu.d.ts +7 -0
  771. package/dist/src/ui/themes/ayu.js +105 -0
  772. package/dist/src/ui/themes/ayu.js.map +1 -0
  773. package/dist/src/ui/themes/color-utils.d.ts +21 -0
  774. package/dist/src/ui/themes/color-utils.js +221 -0
  775. package/dist/src/ui/themes/color-utils.js.map +1 -0
  776. package/dist/src/ui/themes/color-utils.test.d.ts +6 -0
  777. package/dist/src/ui/themes/color-utils.test.js +197 -0
  778. package/dist/src/ui/themes/color-utils.test.js.map +1 -0
  779. package/dist/src/ui/themes/default-light.d.ts +7 -0
  780. package/dist/src/ui/themes/default-light.js +101 -0
  781. package/dist/src/ui/themes/default-light.js.map +1 -0
  782. package/dist/src/ui/themes/default.d.ts +7 -0
  783. package/dist/src/ui/themes/default.js +144 -0
  784. package/dist/src/ui/themes/default.js.map +1 -0
  785. package/dist/src/ui/themes/dracula.d.ts +7 -0
  786. package/dist/src/ui/themes/dracula.js +116 -0
  787. package/dist/src/ui/themes/dracula.js.map +1 -0
  788. package/dist/src/ui/themes/fss-code-dark.d.ts +7 -0
  789. package/dist/src/ui/themes/fss-code-dark.js +148 -0
  790. package/dist/src/ui/themes/fss-code-dark.js.map +1 -0
  791. package/dist/src/ui/themes/fss-dark.d.ts +7 -0
  792. package/dist/src/ui/themes/fss-dark.js +105 -0
  793. package/dist/src/ui/themes/fss-dark.js.map +1 -0
  794. package/dist/src/ui/themes/fss-light.d.ts +7 -0
  795. package/dist/src/ui/themes/fss-light.js +131 -0
  796. package/dist/src/ui/themes/fss-light.js.map +1 -0
  797. package/dist/src/ui/themes/github-dark.d.ts +7 -0
  798. package/dist/src/ui/themes/github-dark.js +139 -0
  799. package/dist/src/ui/themes/github-dark.js.map +1 -0
  800. package/dist/src/ui/themes/github-light.d.ts +7 -0
  801. package/dist/src/ui/themes/github-light.js +141 -0
  802. package/dist/src/ui/themes/github-light.js.map +1 -0
  803. package/dist/src/ui/themes/googlecode.d.ts +7 -0
  804. package/dist/src/ui/themes/googlecode.js +138 -0
  805. package/dist/src/ui/themes/googlecode.js.map +1 -0
  806. package/dist/src/ui/themes/no-color.d.ts +7 -0
  807. package/dist/src/ui/themes/no-color.js +115 -0
  808. package/dist/src/ui/themes/no-color.js.map +1 -0
  809. package/dist/src/ui/themes/qwen-dark.d.ts +7 -0
  810. package/dist/src/ui/themes/qwen-dark.js +109 -0
  811. package/dist/src/ui/themes/qwen-dark.js.map +1 -0
  812. package/dist/src/ui/themes/qwen-light.d.ts +7 -0
  813. package/dist/src/ui/themes/qwen-light.js +135 -0
  814. package/dist/src/ui/themes/qwen-light.js.map +1 -0
  815. package/dist/src/ui/themes/semantic-tokens.d.ts +37 -0
  816. package/dist/src/ui/themes/semantic-tokens.js +94 -0
  817. package/dist/src/ui/themes/semantic-tokens.js.map +1 -0
  818. package/dist/src/ui/themes/shades-of-purple.d.ts +11 -0
  819. package/dist/src/ui/themes/shades-of-purple.js +305 -0
  820. package/dist/src/ui/themes/shades-of-purple.js.map +1 -0
  821. package/dist/src/ui/themes/theme-manager.d.ts +64 -0
  822. package/dist/src/ui/themes/theme-manager.js +209 -0
  823. package/dist/src/ui/themes/theme-manager.js.map +1 -0
  824. package/dist/src/ui/themes/theme-manager.test.d.ts +6 -0
  825. package/dist/src/ui/themes/theme-manager.test.js +83 -0
  826. package/dist/src/ui/themes/theme-manager.test.js.map +1 -0
  827. package/dist/src/ui/themes/theme.d.ts +130 -0
  828. package/dist/src/ui/themes/theme.js +351 -0
  829. package/dist/src/ui/themes/theme.js.map +1 -0
  830. package/dist/src/ui/themes/xcode.d.ts +7 -0
  831. package/dist/src/ui/themes/xcode.js +146 -0
  832. package/dist/src/ui/themes/xcode.js.map +1 -0
  833. package/dist/src/ui/types.d.ts +191 -0
  834. package/dist/src/ui/types.js +44 -0
  835. package/dist/src/ui/types.js.map +1 -0
  836. package/dist/src/ui/utils/CodeColorizer.d.ts +17 -0
  837. package/dist/src/ui/utils/CodeColorizer.js +110 -0
  838. package/dist/src/ui/utils/CodeColorizer.js.map +1 -0
  839. package/dist/src/ui/utils/ConsolePatcher.d.ts +25 -0
  840. package/dist/src/ui/utils/ConsolePatcher.js +52 -0
  841. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -0
  842. package/dist/src/ui/utils/InlineMarkdownRenderer.d.ts +16 -0
  843. package/dist/src/ui/utils/InlineMarkdownRenderer.js +111 -0
  844. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -0
  845. package/dist/src/ui/utils/MarkdownDisplay.d.ts +14 -0
  846. package/dist/src/ui/utils/MarkdownDisplay.js +207 -0
  847. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -0
  848. package/dist/src/ui/utils/MarkdownDisplay.test.d.ts +6 -0
  849. package/dist/src/ui/utils/MarkdownDisplay.test.js +151 -0
  850. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -0
  851. package/dist/src/ui/utils/TableRenderer.d.ts +17 -0
  852. package/dist/src/ui/utils/TableRenderer.js +84 -0
  853. package/dist/src/ui/utils/TableRenderer.js.map +1 -0
  854. package/dist/src/ui/utils/clipboardUtils.d.ts +22 -0
  855. package/dist/src/ui/utils/clipboardUtils.js +127 -0
  856. package/dist/src/ui/utils/clipboardUtils.js.map +1 -0
  857. package/dist/src/ui/utils/clipboardUtils.test.d.ts +6 -0
  858. package/dist/src/ui/utils/clipboardUtils.test.js +65 -0
  859. package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -0
  860. package/dist/src/ui/utils/commandUtils.d.ts +24 -0
  861. package/dist/src/ui/utils/commandUtils.js +93 -0
  862. package/dist/src/ui/utils/commandUtils.js.map +1 -0
  863. package/dist/src/ui/utils/commandUtils.test.d.ts +6 -0
  864. package/dist/src/ui/utils/commandUtils.test.js +294 -0
  865. package/dist/src/ui/utils/commandUtils.test.js.map +1 -0
  866. package/dist/src/ui/utils/computeStats.d.ts +10 -0
  867. package/dist/src/ui/utils/computeStats.js +57 -0
  868. package/dist/src/ui/utils/computeStats.js.map +1 -0
  869. package/dist/src/ui/utils/displayUtils.d.ts +17 -0
  870. package/dist/src/ui/utils/displayUtils.js +24 -0
  871. package/dist/src/ui/utils/displayUtils.js.map +1 -0
  872. package/dist/src/ui/utils/displayUtils.test.d.ts +6 -0
  873. package/dist/src/ui/utils/displayUtils.test.js +42 -0
  874. package/dist/src/ui/utils/displayUtils.test.js.map +1 -0
  875. package/dist/src/ui/utils/formatters.d.ts +13 -0
  876. package/dist/src/ui/utils/formatters.js +56 -0
  877. package/dist/src/ui/utils/formatters.js.map +1 -0
  878. package/dist/src/ui/utils/formatters.test.d.ts +6 -0
  879. package/dist/src/ui/utils/formatters.test.js +56 -0
  880. package/dist/src/ui/utils/formatters.test.js.map +1 -0
  881. package/dist/src/ui/utils/isNarrowWidth.d.ts +6 -0
  882. package/dist/src/ui/utils/isNarrowWidth.js +9 -0
  883. package/dist/src/ui/utils/isNarrowWidth.js.map +1 -0
  884. package/dist/src/ui/utils/kittyProtocolDetector.d.ts +13 -0
  885. package/dist/src/ui/utils/kittyProtocolDetector.js +88 -0
  886. package/dist/src/ui/utils/kittyProtocolDetector.js.map +1 -0
  887. package/dist/src/ui/utils/markdownUtilities.d.ts +6 -0
  888. package/dist/src/ui/utils/markdownUtilities.js +110 -0
  889. package/dist/src/ui/utils/markdownUtilities.js.map +1 -0
  890. package/dist/src/ui/utils/markdownUtilities.test.d.ts +6 -0
  891. package/dist/src/ui/utils/markdownUtilities.test.js +42 -0
  892. package/dist/src/ui/utils/markdownUtilities.test.js.map +1 -0
  893. package/dist/src/ui/utils/platformConstants.d.ts +45 -0
  894. package/dist/src/ui/utils/platformConstants.js +46 -0
  895. package/dist/src/ui/utils/platformConstants.js.map +1 -0
  896. package/dist/src/ui/utils/terminalSetup.d.ts +30 -0
  897. package/dist/src/ui/utils/terminalSetup.js +281 -0
  898. package/dist/src/ui/utils/terminalSetup.js.map +1 -0
  899. package/dist/src/ui/utils/textUtils.d.ts +14 -0
  900. package/dist/src/ui/utils/textUtils.js +36 -0
  901. package/dist/src/ui/utils/textUtils.js.map +1 -0
  902. package/dist/src/ui/utils/updateCheck.d.ts +12 -0
  903. package/dist/src/ui/utils/updateCheck.js +78 -0
  904. package/dist/src/ui/utils/updateCheck.js.map +1 -0
  905. package/dist/src/ui/utils/updateCheck.test.d.ts +6 -0
  906. package/dist/src/ui/utils/updateCheck.test.js +145 -0
  907. package/dist/src/ui/utils/updateCheck.test.js.map +1 -0
  908. package/dist/src/utils/checks.d.ts +19 -0
  909. package/dist/src/utils/checks.js +24 -0
  910. package/dist/src/utils/checks.js.map +1 -0
  911. package/dist/src/utils/cleanup.d.ts +8 -0
  912. package/dist/src/utils/cleanup.js +34 -0
  913. package/dist/src/utils/cleanup.js.map +1 -0
  914. package/dist/src/utils/dialogScopeUtils.d.ts +31 -0
  915. package/dist/src/utils/dialogScopeUtils.js +48 -0
  916. package/dist/src/utils/dialogScopeUtils.js.map +1 -0
  917. package/dist/src/utils/events.d.ts +11 -0
  918. package/dist/src/utils/events.js +13 -0
  919. package/dist/src/utils/events.js.map +1 -0
  920. package/dist/src/utils/gitUtils.d.ts +30 -0
  921. package/dist/src/utils/gitUtils.js +89 -0
  922. package/dist/src/utils/gitUtils.js.map +1 -0
  923. package/dist/src/utils/gitUtils.test.d.ts +6 -0
  924. package/dist/src/utils/gitUtils.test.js +113 -0
  925. package/dist/src/utils/gitUtils.test.js.map +1 -0
  926. package/dist/src/utils/handleAutoUpdate.d.ts +11 -0
  927. package/dist/src/utils/handleAutoUpdate.js +101 -0
  928. package/dist/src/utils/handleAutoUpdate.js.map +1 -0
  929. package/dist/src/utils/installationInfo.d.ts +23 -0
  930. package/dist/src/utils/installationInfo.js +169 -0
  931. package/dist/src/utils/installationInfo.js.map +1 -0
  932. package/dist/src/utils/installationInfo.test.d.ts +6 -0
  933. package/dist/src/utils/installationInfo.test.js +242 -0
  934. package/dist/src/utils/installationInfo.test.js.map +1 -0
  935. package/dist/src/utils/package.d.ts +12 -0
  936. package/dist/src/utils/package.js +24 -0
  937. package/dist/src/utils/package.js.map +1 -0
  938. package/dist/src/utils/readStdin.d.ts +6 -0
  939. package/dist/src/utils/readStdin.js +44 -0
  940. package/dist/src/utils/readStdin.js.map +1 -0
  941. package/dist/src/utils/resolvePath.d.ts +6 -0
  942. package/dist/src/utils/resolvePath.js +21 -0
  943. package/dist/src/utils/resolvePath.js.map +1 -0
  944. package/dist/src/utils/sandbox.d.ts +7 -0
  945. package/dist/src/utils/sandbox.js +739 -0
  946. package/dist/src/utils/sandbox.js.map +1 -0
  947. package/dist/src/utils/settingsUtils.d.ts +134 -0
  948. package/dist/src/utils/settingsUtils.js +336 -0
  949. package/dist/src/utils/settingsUtils.js.map +1 -0
  950. package/dist/src/utils/settingsUtils.test.d.ts +6 -0
  951. package/dist/src/utils/settingsUtils.test.js +514 -0
  952. package/dist/src/utils/settingsUtils.test.js.map +1 -0
  953. package/dist/src/utils/spawnWrapper.d.ts +7 -0
  954. package/dist/src/utils/spawnWrapper.js +8 -0
  955. package/dist/src/utils/spawnWrapper.js.map +1 -0
  956. package/dist/src/utils/startupWarnings.d.ts +6 -0
  957. package/dist/src/utils/startupWarnings.js +40 -0
  958. package/dist/src/utils/startupWarnings.js.map +1 -0
  959. package/dist/src/utils/updateEventEmitter.d.ts +11 -0
  960. package/dist/src/utils/updateEventEmitter.js +12 -0
  961. package/dist/src/utils/updateEventEmitter.js.map +1 -0
  962. package/dist/src/utils/userStartupWarnings.d.ts +6 -0
  963. package/dist/src/utils/userStartupWarnings.js +54 -0
  964. package/dist/src/utils/userStartupWarnings.js.map +1 -0
  965. package/dist/src/utils/userStartupWarnings.test.d.ts +6 -0
  966. package/dist/src/utils/userStartupWarnings.test.js +67 -0
  967. package/dist/src/utils/userStartupWarnings.test.js.map +1 -0
  968. package/dist/src/utils/version.d.ts +6 -0
  969. package/dist/src/utils/version.js +11 -0
  970. package/dist/src/utils/version.js.map +1 -0
  971. package/dist/src/validateNonInterActiveAuth.d.ts +7 -0
  972. package/dist/src/validateNonInterActiveAuth.js +51 -0
  973. package/dist/src/validateNonInterActiveAuth.js.map +1 -0
  974. package/dist/src/zed-integration/acp.d.ts +63 -0
  975. package/dist/src/zed-integration/acp.js +225 -0
  976. package/dist/src/zed-integration/acp.js.map +1 -0
  977. package/dist/src/zed-integration/fileSystemService.d.ts +19 -0
  978. package/dist/src/zed-integration/fileSystemService.js +43 -0
  979. package/dist/src/zed-integration/fileSystemService.js.map +1 -0
  980. package/dist/src/zed-integration/schema.d.ts +11782 -0
  981. package/dist/src/zed-integration/schema.js +311 -0
  982. package/dist/src/zed-integration/schema.js.map +1 -0
  983. package/dist/src/zed-integration/zedIntegration.d.ts +10 -0
  984. package/dist/src/zed-integration/zedIntegration.js +765 -0
  985. package/dist/src/zed-integration/zedIntegration.js.map +1 -0
  986. package/dist/tsconfig.tsbuildinfo +1 -0
  987. package/package.json +44 -105
  988. package/bundle/fss-link.js +0 -407881
  989. /package/{bundle → dist/src/utils}/sandbox-macos-permissive-closed.sb +0 -0
  990. /package/{bundle → dist/src/utils}/sandbox-macos-permissive-open.sb +0 -0
  991. /package/{bundle → dist/src/utils}/sandbox-macos-permissive-proxied.sb +0 -0
  992. /package/{bundle → dist/src/utils}/sandbox-macos-restrictive-closed.sb +0 -0
  993. /package/{bundle → dist/src/utils}/sandbox-macos-restrictive-open.sb +0 -0
  994. /package/{bundle → dist/src/utils}/sandbox-macos-restrictive-proxied.sb +0 -0
@@ -0,0 +1,658 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { DatabaseOperationQueue } from './database-queue.js';
7
+ // Disable debug logging during tests for performance
8
+ const DEBUG_DB = !process.env['VITEST'];
9
+ /**
10
+ * TEMPORARY DATABASE UTILITIES
11
+ *
12
+ * These wrapper functions provide immediate relief from manual memory management
13
+ * while we transition to a proper ORM/repository pattern.
14
+ *
15
+ * @todo PHASE 2: Replace with Repository pattern (BaseRepository, ModelRepository, etc.)
16
+ * @todo PHASE 3: Consider migrating to Drizzle ORM or similar for full type safety
17
+ *
18
+ * Current problems these wrappers solve:
19
+ * - Manual .free() calls causing memory leaks
20
+ * - Inconsistent error handling patterns
21
+ * - No automatic cleanup on exceptions
22
+ * - Raw SQL scattered throughout business logic
23
+ */
24
+ /**
25
+ * Safe query execution with automatic statement cleanup.
26
+ * Returns all matching rows as an array.
27
+ *
28
+ * @todo UPGRADE: Replace with repository.findMany() method
29
+ *
30
+ * @param db - SQLite database instance
31
+ * @param sql - SQL query string
32
+ * @param params - Query parameters (optional)
33
+ * @returns Array of query results
34
+ * @throws DatabaseError for SQL execution errors
35
+ */
36
+ export function safeQuery(db, sql, params = []) {
37
+ let stmt = null;
38
+ // 🔍 DETAILED OPERATION LOGGING
39
+ if (DEBUG_DB) {
40
+ if (DEBUG_DB)
41
+ console.log(`🔍 [DB-OP] QUERY START: ${sql.substring(0, 100)}${sql.length > 100 ? '...' : ''}`);
42
+ if (params && params.length > 0) {
43
+ if (DEBUG_DB)
44
+ console.log(`🔍 [DB-OP] QUERY PARAMS:`, params);
45
+ }
46
+ }
47
+ try {
48
+ // Validate database connection type before attempting prepare
49
+ if (!db || typeof db.prepare !== 'function') {
50
+ throw new DatabaseError(`Invalid database connection - missing prepare() method. Type: ${typeof db}`);
51
+ }
52
+ if (DEBUG_DB)
53
+ console.log(`📋 [STMT] PREPARE: ${sql.substring(0, 80)}${sql.length > 80 ? '...' : ''}`);
54
+ stmt = db.prepare(sql);
55
+ if (DEBUG_DB)
56
+ console.log(`📋 [STMT] PREPARE SUCCESS`);
57
+ if (params.length > 0) {
58
+ if (DEBUG_DB)
59
+ console.log(`📋 [STMT] BIND PARAMS:`, params);
60
+ stmt.bind(params);
61
+ if (DEBUG_DB)
62
+ console.log(`📋 [STMT] BIND SUCCESS`);
63
+ }
64
+ if (DEBUG_DB)
65
+ console.log(`📋 [STMT] EXECUTING QUERY...`);
66
+ const results = [];
67
+ let stepCount = 0;
68
+ while (stmt.step()) {
69
+ stepCount++;
70
+ results.push(stmt.getAsObject());
71
+ if (stepCount % 100 === 0) {
72
+ if (DEBUG_DB)
73
+ console.log(`📋 [STMT] PROCESSED ${stepCount} rows...`);
74
+ }
75
+ }
76
+ if (DEBUG_DB)
77
+ console.log(`📋 [STMT] QUERY COMPLETE: ${results.length} results, ${stepCount} steps`);
78
+ return results;
79
+ }
80
+ catch (error) {
81
+ console.error(`❌ [DB-OP] QUERY FAILED: ${sql}`);
82
+ console.error(`❌ [DB-OP] ERROR:`, error);
83
+ // 🎯 DETECT STATEMENT CLOSED ERRORS - Indicates database corruption
84
+ if (error instanceof Error && error.message.includes('Statement closed')) {
85
+ console.error(`🚨 [DB-OP] STATEMENT CLOSED ERROR DETECTED!`);
86
+ console.error(`🚨 [DB-OP] SQL: ${sql}`);
87
+ console.error(`🚨 [DB-OP] PARAMS:`, params);
88
+ console.error(`🚨 [DB-OP] STATEMENT STATE:`, stmt ? 'exists' : 'null');
89
+ throw new DatabaseError(`Database corruption detected (Statement closed): ${sql}`, error);
90
+ }
91
+ throw new DatabaseError(`Query failed: ${sql}`, error);
92
+ }
93
+ finally {
94
+ if (stmt) {
95
+ if (DEBUG_DB)
96
+ console.log(`📋 [STMT] FREEING STATEMENT...`);
97
+ try {
98
+ stmt.free();
99
+ if (DEBUG_DB)
100
+ console.log(`📋 [STMT] STATEMENT FREED SUCCESSFULLY`);
101
+ }
102
+ catch (freeError) {
103
+ console.error(`❌ [STMT] FAILED TO FREE STATEMENT:`, freeError);
104
+ }
105
+ }
106
+ else {
107
+ if (DEBUG_DB)
108
+ console.log(`📋 [STMT] NO STATEMENT TO FREE`);
109
+ }
110
+ }
111
+ }
112
+ /**
113
+ * Safe query execution returning first result or null.
114
+ * Automatically handles statement cleanup.
115
+ *
116
+ * @todo UPGRADE: Replace with repository.findFirst() method
117
+ *
118
+ * @param db - SQLite database instance
119
+ * @param sql - SQL query string
120
+ * @param params - Query parameters (optional)
121
+ * @returns First matching row or null
122
+ * @throws DatabaseError for SQL execution errors
123
+ */
124
+ export function safeQueryFirst(db, sql, params = []) {
125
+ let stmt = null;
126
+ // 🔍 DETAILED OPERATION LOGGING
127
+ if (DEBUG_DB)
128
+ console.log(`🔍 [DB-OP] QUERY_FIRST START: ${sql.substring(0, 100)}${sql.length > 100 ? '...' : ''}`);
129
+ if (params && params.length > 0) {
130
+ if (DEBUG_DB)
131
+ console.log(`🔍 [DB-OP] QUERY_FIRST PARAMS:`, params);
132
+ }
133
+ try {
134
+ if (DEBUG_DB)
135
+ console.log(`📋 [STMT] PREPARE FIRST: ${sql.substring(0, 80)}${sql.length > 80 ? '...' : ''}`);
136
+ stmt = db.prepare(sql);
137
+ if (DEBUG_DB)
138
+ console.log(`📋 [STMT] PREPARE FIRST SUCCESS`);
139
+ if (params.length > 0) {
140
+ if (DEBUG_DB)
141
+ console.log(`📋 [STMT] BIND FIRST PARAMS:`, params);
142
+ stmt.bind(params);
143
+ if (DEBUG_DB)
144
+ console.log(`📋 [STMT] BIND FIRST SUCCESS`);
145
+ }
146
+ if (DEBUG_DB)
147
+ console.log(`📋 [STMT] EXECUTING FIRST QUERY...`);
148
+ const hasResult = stmt.step();
149
+ const result = hasResult ? stmt.getAsObject() : null;
150
+ if (DEBUG_DB)
151
+ console.log(`📋 [STMT] QUERY_FIRST COMPLETE:`, hasResult ? 'Found result' : 'No result');
152
+ return result;
153
+ }
154
+ catch (error) {
155
+ console.error(`❌ [DB-OP] QUERY_FIRST FAILED: ${sql}`);
156
+ console.error(`❌ [DB-OP] ERROR:`, error);
157
+ // 🎯 DETECT STATEMENT CLOSED ERRORS
158
+ if (error instanceof Error && error.message.includes('Statement closed')) {
159
+ console.error(`🚨 [DB-OP] STATEMENT CLOSED ERROR IN QUERY_FIRST!`);
160
+ console.error(`🚨 [DB-OP] SQL: ${sql}`);
161
+ console.error(`🚨 [DB-OP] PARAMS:`, params);
162
+ throw new DatabaseError(`Database corruption detected (Statement closed): ${sql}`, error);
163
+ }
164
+ throw new DatabaseError(`Query failed: ${sql}`, error);
165
+ }
166
+ finally {
167
+ if (stmt) {
168
+ if (DEBUG_DB)
169
+ console.log(`📋 [STMT] FREEING FIRST STATEMENT...`);
170
+ try {
171
+ stmt.free();
172
+ if (DEBUG_DB)
173
+ console.log(`📋 [STMT] FIRST STATEMENT FREED SUCCESSFULLY`);
174
+ }
175
+ catch (freeError) {
176
+ console.error(`❌ [STMT] FAILED TO FREE FIRST STATEMENT:`, freeError);
177
+ }
178
+ }
179
+ else {
180
+ if (DEBUG_DB)
181
+ console.log(`📋 [STMT] NO FIRST STATEMENT TO FREE`);
182
+ }
183
+ }
184
+ }
185
+ /**
186
+ * Safe execution of INSERT/UPDATE/DELETE statements.
187
+ * Automatically handles statement cleanup.
188
+ *
189
+ * @todo UPGRADE: Replace with repository.create()/update()/delete() methods
190
+ *
191
+ * @param db - SQLite database instance
192
+ * @param sql - SQL statement string
193
+ * @param params - Statement parameters (optional)
194
+ * @returns Number of affected rows
195
+ * @throws DatabaseError for SQL execution errors
196
+ */
197
+ export function safeExec(db, sql, params = []) {
198
+ let stmt = null;
199
+ // 🔍 DETAILED OPERATION LOGGING
200
+ if (DEBUG_DB)
201
+ console.log(`🔍 [DB-OP] EXEC START: ${sql.substring(0, 100)}${sql.length > 100 ? '...' : ''}`);
202
+ if (params && params.length > 0) {
203
+ if (DEBUG_DB)
204
+ console.log(`🔍 [DB-OP] EXEC PARAMS:`, params);
205
+ }
206
+ try {
207
+ if (DEBUG_DB)
208
+ console.log(`📋 [STMT] PREPARE EXEC: ${sql.substring(0, 80)}${sql.length > 80 ? '...' : ''}`);
209
+ stmt = db.prepare(sql);
210
+ if (DEBUG_DB)
211
+ console.log(`📋 [STMT] PREPARE EXEC SUCCESS`);
212
+ if (params.length > 0) {
213
+ if (DEBUG_DB)
214
+ console.log(`📋 [STMT] BIND EXEC PARAMS:`, params);
215
+ stmt.bind(params);
216
+ if (DEBUG_DB)
217
+ console.log(`📋 [STMT] BIND EXEC SUCCESS`);
218
+ }
219
+ if (DEBUG_DB)
220
+ console.log(`📋 [STMT] EXECUTING STATEMENT...`);
221
+ stmt.step();
222
+ if (DEBUG_DB)
223
+ console.log(`📋 [STMT] STATEMENT EXECUTED SUCCESSFULLY`);
224
+ // Get affected rows count for INSERT/UPDATE/DELETE
225
+ if (DEBUG_DB)
226
+ console.log(`📋 [STMT] GETTING CHANGES COUNT...`);
227
+ const changes = db.exec('SELECT changes() as count')[0];
228
+ const changeCount = changes?.values?.[0]?.[0] || 0;
229
+ if (DEBUG_DB)
230
+ console.log(`📋 [STMT] EXEC COMPLETE: ${changeCount} rows affected`);
231
+ return changeCount;
232
+ }
233
+ catch (error) {
234
+ console.error(`❌ [DB-OP] EXEC FAILED: ${sql}`);
235
+ console.error(`❌ [DB-OP] ERROR:`, error);
236
+ // 🎯 DETECT STATEMENT CLOSED ERRORS
237
+ if (error instanceof Error && error.message.includes('Statement closed')) {
238
+ console.error(`🚨 [DB-OP] STATEMENT CLOSED ERROR IN EXEC!`);
239
+ console.error(`🚨 [DB-OP] SQL: ${sql}`);
240
+ console.error(`🚨 [DB-OP] PARAMS:`, params);
241
+ throw new DatabaseError(`Database corruption detected (Statement closed): ${sql}`, error);
242
+ }
243
+ console.error(`🚨 [DEBUG] Detailed execution error:`, error);
244
+ console.error(`🚨 [DEBUG] Error type:`, typeof error);
245
+ console.error(`🚨 [DEBUG] Error message:`, error?.message);
246
+ console.error(`🚨 [DEBUG] Error stack:`, error?.stack);
247
+ throw new DatabaseError(`Execution failed: ${sql}`, error);
248
+ }
249
+ finally {
250
+ if (stmt) {
251
+ if (DEBUG_DB)
252
+ console.log(`📋 [STMT] FREEING EXEC STATEMENT...`);
253
+ try {
254
+ stmt.free();
255
+ if (DEBUG_DB)
256
+ console.log(`📋 [STMT] EXEC STATEMENT FREED SUCCESSFULLY`);
257
+ }
258
+ catch (freeError) {
259
+ console.error(`❌ [STMT] FAILED TO FREE EXEC STATEMENT:`, freeError);
260
+ }
261
+ }
262
+ else {
263
+ if (DEBUG_DB)
264
+ console.log(`📋 [STMT] NO EXEC STATEMENT TO FREE`);
265
+ }
266
+ }
267
+ }
268
+ /**
269
+ * Safe transaction execution with automatic rollback on error.
270
+ * Ensures consistent database state even if operations fail.
271
+ *
272
+ * @todo UPGRADE: Replace with repository.withTransaction() method
273
+ *
274
+ * @param db - SQLite database instance
275
+ * @param operations - Function containing database operations
276
+ * @returns Result of operations function
277
+ * @throws DatabaseError for transaction failures
278
+ */
279
+ export function safeTransaction(db, operations) {
280
+ try {
281
+ db.exec('BEGIN TRANSACTION');
282
+ const result = operations();
283
+ db.exec('COMMIT');
284
+ return result;
285
+ }
286
+ catch (error) {
287
+ try {
288
+ db.exec('ROLLBACK');
289
+ }
290
+ catch (rollbackError) {
291
+ // Log rollback failure but throw original error
292
+ console.error('Failed to rollback transaction:', rollbackError);
293
+ }
294
+ throw new DatabaseError('Transaction failed', error);
295
+ }
296
+ }
297
+ /**
298
+ * Get the last inserted row ID from an INSERT operation.
299
+ * Helper for operations that need the new record ID.
300
+ *
301
+ * @todo UPGRADE: Repository pattern will handle this automatically
302
+ *
303
+ * @param db - SQLite database instance
304
+ * @returns Last inserted row ID
305
+ */
306
+ export function getLastInsertId(db) {
307
+ const result = safeQueryFirst(db, 'SELECT last_insert_rowid() as id');
308
+ return result?.id || 0;
309
+ }
310
+ /**
311
+ * Custom error class for database operations.
312
+ * Provides consistent error handling across all database functions.
313
+ *
314
+ * @todo UPGRADE: Repository pattern will have more specific error types
315
+ */
316
+ export class DatabaseError extends Error {
317
+ cause;
318
+ constructor(message, cause) {
319
+ super(message);
320
+ this.cause = cause;
321
+ this.name = 'DatabaseError';
322
+ // Include original error details if available
323
+ if (cause instanceof Error) {
324
+ this.message += ` (${cause.message})`;
325
+ }
326
+ }
327
+ }
328
+ /**
329
+ * MIGRATION HELPERS
330
+ *
331
+ * These functions help gradually replace manual prepare/free patterns
332
+ * throughout the existing codebase.
333
+ */
334
+ /**
335
+ * Check if a table exists in the database.
336
+ * Common pattern used in migration logic.
337
+ *
338
+ * @param db - SQLite database instance
339
+ * @param tableName - Name of table to check
340
+ * @returns True if table exists
341
+ */
342
+ export function tableExists(db, tableName) {
343
+ const result = safeQueryFirst(db, 'SELECT COUNT(*) as count FROM sqlite_master WHERE type="table" AND name=?', [tableName]);
344
+ return (result?.count || 0) > 0;
345
+ }
346
+ /**
347
+ * Check if a column exists in a table.
348
+ * Useful for schema validation and migrations.
349
+ *
350
+ * @param db - SQLite database instance
351
+ * @param tableName - Name of table
352
+ * @param columnName - Name of column to check
353
+ * @returns True if column exists
354
+ */
355
+ export function columnExists(db, tableName, columnName) {
356
+ try {
357
+ const result = safeQuery(db, `PRAGMA table_info(${tableName})`);
358
+ return result.some((col) => col.name === columnName);
359
+ }
360
+ catch {
361
+ return false;
362
+ }
363
+ }
364
+ /**
365
+ * COMMON UTILITY PATTERNS
366
+ *
367
+ * These higher-level helpers encapsulate frequent database patterns
368
+ */
369
+ /**
370
+ * Check if any records exist matching the criteria
371
+ * @param db - SQLite database instance
372
+ * @param table - Table name
373
+ * @param whereClause - WHERE clause (without WHERE keyword)
374
+ * @param params - Parameters for WHERE clause
375
+ * @returns True if any records exist
376
+ */
377
+ export function recordExists(db, table, whereClause, params = []) {
378
+ const result = safeQueryFirst(db, `SELECT COUNT(*) as count FROM ${table} WHERE ${whereClause}`, params);
379
+ return (result?.count || 0) > 0;
380
+ }
381
+ /**
382
+ * Count records matching criteria
383
+ * @param db - SQLite database instance
384
+ * @param table - Table name
385
+ * @param whereClause - WHERE clause (without WHERE keyword, optional)
386
+ * @param params - Parameters for WHERE clause
387
+ * @returns Number of matching records
388
+ */
389
+ export function countRecords(db, table, whereClause, params = []) {
390
+ const sql = whereClause
391
+ ? `SELECT COUNT(*) as count FROM ${table} WHERE ${whereClause}`
392
+ : `SELECT COUNT(*) as count FROM ${table}`;
393
+ const result = safeQueryFirst(db, sql, params);
394
+ return result?.count || 0;
395
+ }
396
+ /**
397
+ * Delete records with safe execution
398
+ * @param db - SQLite database instance
399
+ * @param table - Table name
400
+ * @param whereClause - WHERE clause (without WHERE keyword)
401
+ * @param params - Parameters for WHERE clause
402
+ * @returns Number of deleted records
403
+ */
404
+ export function deleteRecords(db, table, whereClause, params = []) {
405
+ return safeExec(db, `DELETE FROM ${table} WHERE ${whereClause}`, params);
406
+ }
407
+ /**
408
+ * Update records with safe execution
409
+ * @param db - SQLite database instance
410
+ * @param table - Table name
411
+ * @param setClause - SET clause (without SET keyword)
412
+ * @param whereClause - WHERE clause (without WHERE keyword)
413
+ * @param params - Parameters for SET and WHERE clauses
414
+ * @returns Number of updated records
415
+ */
416
+ export function updateRecords(db, table, setClause, whereClause, params = []) {
417
+ return safeExec(db, `UPDATE ${table} SET ${setClause} WHERE ${whereClause}`, params);
418
+ }
419
+ /**
420
+ * ======================================================================================
421
+ * ASYNC LOCKING WRAPPER FUNCTIONS - PHASE 1 ASYNC INFRASTRUCTURE
422
+ * ======================================================================================
423
+ *
424
+ * These functions provide thread-safe database operations by wrapping the existing
425
+ * safe utility functions with DatabaseOperationQueue serialization. This ELIMINATES
426
+ * "Statement closed" errors and race conditions by ensuring only ONE database
427
+ * operation executes at a time.
428
+ *
429
+ * @author Emma - Technical Implementation Specialist
430
+ * @task Task 3: Enhanced Database Utils with Locking
431
+ * @dependencies Task 1 (AsyncMutex), Task 2 (DatabaseOperationQueue)
432
+ */
433
+ // Global database queue instance
434
+ const dbQueue = DatabaseOperationQueue.getInstance();
435
+ /**
436
+ * Thread-safe query execution with async locking protection.
437
+ * Wraps safeQuery() with DatabaseOperationQueue serialization.
438
+ *
439
+ * @param db - SQLite database instance
440
+ * @param sql - SQL query string
441
+ * @param params - Query parameters (optional)
442
+ * @returns Promise<Array> of query results
443
+ * @throws DatabaseError for SQL execution errors
444
+ */
445
+ export async function safeQueryWithLocking(db, sql, params = []) {
446
+ return dbQueue.executeOperation(async () => {
447
+ if (DEBUG_DB)
448
+ console.log(`🔒 [ASYNC-QUERY] Executing with locking protection: ${sql.substring(0, 80)}...`);
449
+ const result = safeQuery(db, sql, params);
450
+ if (DEBUG_DB)
451
+ console.log(`✅ [ASYNC-QUERY] Completed successfully: ${result.length} results`);
452
+ return result;
453
+ }, `query:${sql.substring(0, 50)}...`);
454
+ }
455
+ /**
456
+ * Thread-safe query first execution with async locking protection.
457
+ * Wraps safeQueryFirst() with DatabaseOperationQueue serialization.
458
+ *
459
+ * @param db - SQLite database instance
460
+ * @param sql - SQL query string
461
+ * @param params - Query parameters (optional)
462
+ * @returns Promise<T | null> first matching row or null
463
+ * @throws DatabaseError for SQL execution errors
464
+ */
465
+ export async function safeQueryFirstWithLocking(db, sql, params = []) {
466
+ return dbQueue.executeOperation(async () => {
467
+ if (DEBUG_DB)
468
+ console.log(`🔒 [ASYNC-QUERY-FIRST] Executing with locking protection: ${sql.substring(0, 80)}...`);
469
+ const result = safeQueryFirst(db, sql, params);
470
+ if (DEBUG_DB)
471
+ console.log(`✅ [ASYNC-QUERY-FIRST] Completed successfully: ${result ? 'Found result' : 'No result'}`);
472
+ return result;
473
+ }, `queryFirst:${sql.substring(0, 50)}...`);
474
+ }
475
+ /**
476
+ * Thread-safe execution with async locking protection.
477
+ * Wraps safeExec() with DatabaseOperationQueue serialization.
478
+ *
479
+ * @param db - SQLite database instance
480
+ * @param sql - SQL statement string
481
+ * @param params - Statement parameters (optional)
482
+ * @returns Promise<number> of affected rows
483
+ * @throws DatabaseError for SQL execution errors
484
+ */
485
+ export async function safeExecWithLocking(db, sql, params = []) {
486
+ return dbQueue.executeOperation(async () => {
487
+ if (DEBUG_DB)
488
+ console.log(`🔒 [ASYNC-EXEC] Executing with locking protection: ${sql.substring(0, 80)}...`);
489
+ const result = safeExec(db, sql, params);
490
+ if (DEBUG_DB)
491
+ console.log(`✅ [ASYNC-EXEC] Completed successfully: ${result} rows affected`);
492
+ return result;
493
+ }, `exec:${sql.substring(0, 50)}...`);
494
+ }
495
+ /**
496
+ * Thread-safe transaction execution with async locking protection.
497
+ * Wraps safeTransaction() with DatabaseOperationQueue serialization.
498
+ *
499
+ * CRITICAL: This ensures atomic transactions with NO race conditions.
500
+ * Multiple transactions CANNOT run concurrently - GUARANTEED serialization.
501
+ *
502
+ * @param db - SQLite database instance
503
+ * @param operations - Function containing database operations
504
+ * @returns Promise<T> result of operations function
505
+ * @throws DatabaseError for transaction failures
506
+ */
507
+ export async function safeTransactionWithLocking(db, operations) {
508
+ return dbQueue.executeOperation(async () => {
509
+ if (DEBUG_DB)
510
+ console.log(`🔒 [ASYNC-TRANSACTION] Starting transaction with locking protection`);
511
+ try {
512
+ db.exec('BEGIN TRANSACTION');
513
+ if (DEBUG_DB)
514
+ console.log(`🔒 [ASYNC-TRANSACTION] Transaction started`);
515
+ const result = await operations(db);
516
+ db.exec('COMMIT');
517
+ if (DEBUG_DB)
518
+ console.log(`✅ [ASYNC-TRANSACTION] Transaction committed successfully`);
519
+ return result;
520
+ }
521
+ catch (error) {
522
+ console.error(`❌ [ASYNC-TRANSACTION] Transaction failed, rolling back:`, error);
523
+ try {
524
+ db.exec('ROLLBACK');
525
+ if (DEBUG_DB)
526
+ console.log(`🔄 [ASYNC-TRANSACTION] Rollback completed`);
527
+ }
528
+ catch (rollbackError) {
529
+ console.error(`🚨 [ASYNC-TRANSACTION] Rollback failed:`, rollbackError);
530
+ }
531
+ throw new DatabaseError('Async transaction failed', error);
532
+ }
533
+ }, 'transaction');
534
+ }
535
+ /**
536
+ * UTILITY WRAPPERS WITH ASYNC LOCKING
537
+ *
538
+ * These provide async-safe versions of common utility functions
539
+ */
540
+ /**
541
+ * Thread-safe record existence check with async locking protection.
542
+ */
543
+ export async function recordExistsWithLocking(db, table, whereClause, params = []) {
544
+ return dbQueue.executeOperation(async () => {
545
+ if (DEBUG_DB)
546
+ console.log(`🔒 [ASYNC-EXISTS] Checking record existence: ${table} WHERE ${whereClause}`);
547
+ const result = recordExists(db, table, whereClause, params);
548
+ if (DEBUG_DB)
549
+ console.log(`✅ [ASYNC-EXISTS] Record existence check: ${result}`);
550
+ return result;
551
+ }, `exists:${table}`);
552
+ }
553
+ /**
554
+ * Thread-safe record counting with async locking protection.
555
+ */
556
+ export async function countRecordsWithLocking(db, table, whereClause, params = []) {
557
+ return dbQueue.executeOperation(async () => {
558
+ if (DEBUG_DB)
559
+ console.log(`🔒 [ASYNC-COUNT] Counting records: ${table}${whereClause ? ` WHERE ${whereClause}` : ''}`);
560
+ const result = countRecords(db, table, whereClause, params);
561
+ if (DEBUG_DB)
562
+ console.log(`✅ [ASYNC-COUNT] Record count: ${result}`);
563
+ return result;
564
+ }, `count:${table}`);
565
+ }
566
+ /**
567
+ * Thread-safe record deletion with async locking protection.
568
+ */
569
+ export async function deleteRecordsWithLocking(db, table, whereClause, params = []) {
570
+ return dbQueue.executeOperation(async () => {
571
+ if (DEBUG_DB)
572
+ console.log(`🔒 [ASYNC-DELETE] Deleting records: ${table} WHERE ${whereClause}`);
573
+ const result = deleteRecords(db, table, whereClause, params);
574
+ if (DEBUG_DB)
575
+ console.log(`✅ [ASYNC-DELETE] Records deleted: ${result}`);
576
+ return result;
577
+ }, `delete:${table}`);
578
+ }
579
+ /**
580
+ * Thread-safe record updating with async locking protection.
581
+ */
582
+ export async function updateRecordsWithLocking(db, table, setClause, whereClause, params = []) {
583
+ return dbQueue.executeOperation(async () => {
584
+ if (DEBUG_DB)
585
+ console.log(`🔒 [ASYNC-UPDATE] Updating records: ${table} SET ${setClause} WHERE ${whereClause}`);
586
+ const result = updateRecords(db, table, setClause, whereClause, params);
587
+ if (DEBUG_DB)
588
+ console.log(`✅ [ASYNC-UPDATE] Records updated: ${result}`);
589
+ return result;
590
+ }, `update:${table}`);
591
+ }
592
+ /**
593
+ * Thread-safe last insert ID retrieval with async locking protection.
594
+ */
595
+ export async function getLastInsertIdWithLocking(db) {
596
+ return dbQueue.executeOperation(async () => {
597
+ if (DEBUG_DB)
598
+ console.log(`🔒 [ASYNC-LAST-ID] Getting last insert ID`);
599
+ // This function should only be called with Database type
600
+ // FSSLinkDatabase should use pool.withConnection() pattern
601
+ const result = getLastInsertId(db);
602
+ if (DEBUG_DB)
603
+ console.log(`✅ [ASYNC-LAST-ID] Last insert ID: ${result}`);
604
+ return result;
605
+ }, 'lastInsertId');
606
+ }
607
+ /**
608
+ * ======================================================================================
609
+ * MIGRATION GUIDE: FROM UNSAFE TO ASYNC-SAFE DATABASE OPERATIONS
610
+ * ======================================================================================
611
+ *
612
+ * OLD (race condition prone):
613
+ * const results = safeQuery(db, 'SELECT * FROM model_configs WHERE auth_type = ?', [authType]);
614
+ * const count = safeExec(db, 'UPDATE model_configs SET is_active = 0');
615
+ *
616
+ * NEW (thread-safe with async locking):
617
+ * const results = await safeQueryWithLocking(db, 'SELECT * FROM model_configs WHERE auth_type = ?', [authType]);
618
+ * const count = await safeExecWithLocking(db, 'UPDATE model_configs SET is_active = 0');
619
+ *
620
+ * TRANSACTION EXAMPLE:
621
+ * const result = await safeTransactionWithLocking(db, async (db) => {
622
+ * await safeExecWithLocking(db, 'UPDATE model_configs SET is_active = 0');
623
+ * await safeExecWithLocking(db, 'UPDATE model_configs SET is_active = 1 WHERE id = ?', [modelId]);
624
+ * return { success: true };
625
+ * });
626
+ *
627
+ * UTILITY EXAMPLES:
628
+ * const exists = await recordExistsWithLocking(db, 'model_configs', 'is_active = 1');
629
+ * const count = await countRecordsWithLocking(db, 'model_configs', 'auth_type = ?', ['ollama']);
630
+ * const deleted = await deleteRecordsWithLocking(db, 'model_configs', 'is_active = 0 AND last_used < ?', [cutoffDate]);
631
+ */
632
+ /**
633
+ * EXAMPLE MIGRATION FROM OLD PATTERN TO NEW PATTERN:
634
+ *
635
+ * // OLD (manual memory management):
636
+ * const stmt = db.prepare('SELECT * FROM model_configs WHERE auth_type = ?');
637
+ * stmt.bind([authType]);
638
+ * const results = [];
639
+ * while (stmt.step()) {
640
+ * results.push(stmt.getAsObject());
641
+ * }
642
+ * stmt.free(); // Easy to forget!
643
+ *
644
+ * // NEW (automatic cleanup):
645
+ * const results = safeQuery(db, 'SELECT * FROM model_configs WHERE auth_type = ?', [authType]);
646
+ *
647
+ * // UTILITY HELPERS:
648
+ * const hasActiveModels = recordExists(db, 'model_configs', 'is_active = 1');
649
+ * const modelCount = countRecords(db, 'model_configs', 'auth_type = ?', ['ollama']);
650
+ * const deletedCount = deleteRecords(db, 'model_configs', 'is_active = 0 AND last_used < ?', [cutoffDate]);
651
+ *
652
+ * // FUTURE (repository pattern):
653
+ * const results = await modelRepo.findByAuthType(authType);
654
+ * const hasActive = await modelRepo.hasActive();
655
+ * const count = await modelRepo.countByAuthType('ollama');
656
+ * const deleted = await modelRepo.deleteInactive(cutoffDate);
657
+ */
658
+ //# sourceMappingURL=database-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-utils.js","sourceRoot":"","sources":["../../../src/config/database-utils.ts"],"names":[],"mappings":"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"}