libre-webui 0.10.0 → 0.12.0

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 (298) hide show
  1. package/README.md +75 -61
  2. package/backend/dist/db.d.ts.map +1 -1
  3. package/backend/dist/db.js +21 -19
  4. package/backend/dist/db.js.map +1 -1
  5. package/backend/dist/index.d.ts.map +1 -1
  6. package/backend/dist/index.js +39 -908
  7. package/backend/dist/index.js.map +1 -1
  8. package/backend/dist/middleware/auth.d.ts.map +1 -1
  9. package/backend/dist/middleware/auth.js +4 -2
  10. package/backend/dist/middleware/auth.js.map +1 -1
  11. package/backend/dist/middleware/index.d.ts.map +1 -1
  12. package/backend/dist/middleware/index.js +4 -2
  13. package/backend/dist/middleware/index.js.map +1 -1
  14. package/backend/dist/models/personaModel.d.ts.map +1 -1
  15. package/backend/dist/models/personaModel.js +11 -9
  16. package/backend/dist/models/personaModel.js.map +1 -1
  17. package/backend/dist/routes/auth.d.ts.map +1 -1
  18. package/backend/dist/routes/auth.js +36 -14
  19. package/backend/dist/routes/auth.js.map +1 -1
  20. package/backend/dist/routes/chat.d.ts.map +1 -1
  21. package/backend/dist/routes/chat.js +61 -249
  22. package/backend/dist/routes/chat.js.map +1 -1
  23. package/backend/dist/routes/documents.d.ts.map +1 -1
  24. package/backend/dist/routes/documents.js +10 -8
  25. package/backend/dist/routes/documents.js.map +1 -1
  26. package/backend/dist/routes/imageGen.d.ts.map +1 -1
  27. package/backend/dist/routes/imageGen.js +9 -7
  28. package/backend/dist/routes/imageGen.js.map +1 -1
  29. package/backend/dist/routes/libreClaw.d.ts +3 -0
  30. package/backend/dist/routes/libreClaw.d.ts.map +1 -0
  31. package/backend/dist/routes/libreClaw.js +156 -0
  32. package/backend/dist/routes/libreClaw.js.map +1 -0
  33. package/backend/dist/routes/ollama.d.ts.map +1 -1
  34. package/backend/dist/routes/ollama.js +7 -247
  35. package/backend/dist/routes/ollama.js.map +1 -1
  36. package/backend/dist/routes/plugins.d.ts.map +1 -1
  37. package/backend/dist/routes/plugins.js +7 -105
  38. package/backend/dist/routes/plugins.js.map +1 -1
  39. package/backend/dist/routes/tts.d.ts.map +1 -1
  40. package/backend/dist/routes/tts.js +7 -5
  41. package/backend/dist/routes/tts.js.map +1 -1
  42. package/backend/dist/routes/users.d.ts.map +1 -1
  43. package/backend/dist/routes/users.js +7 -5
  44. package/backend/dist/routes/users.js.map +1 -1
  45. package/backend/dist/services/assistantCompletionService.d.ts +26 -0
  46. package/backend/dist/services/assistantCompletionService.d.ts.map +1 -0
  47. package/backend/dist/services/assistantCompletionService.js +53 -0
  48. package/backend/dist/services/assistantCompletionService.js.map +1 -0
  49. package/backend/dist/services/authService.d.ts +2 -0
  50. package/backend/dist/services/authService.d.ts.map +1 -1
  51. package/backend/dist/services/authService.js +9 -5
  52. package/backend/dist/services/authService.js.map +1 -1
  53. package/backend/dist/services/chatGenerationService.d.ts +32 -0
  54. package/backend/dist/services/chatGenerationService.d.ts.map +1 -0
  55. package/backend/dist/services/chatGenerationService.js +118 -0
  56. package/backend/dist/services/chatGenerationService.js.map +1 -0
  57. package/backend/dist/services/chatRequestService.d.ts +55 -0
  58. package/backend/dist/services/chatRequestService.d.ts.map +1 -0
  59. package/backend/dist/services/chatRequestService.js +103 -0
  60. package/backend/dist/services/chatRequestService.js.map +1 -0
  61. package/backend/dist/services/chatService.d.ts +0 -1
  62. package/backend/dist/services/chatService.d.ts.map +1 -1
  63. package/backend/dist/services/chatService.js +13 -27
  64. package/backend/dist/services/chatService.js.map +1 -1
  65. package/backend/dist/services/documentService.d.ts.map +1 -1
  66. package/backend/dist/services/documentService.js +21 -19
  67. package/backend/dist/services/documentService.js.map +1 -1
  68. package/backend/dist/services/embeddingService.d.ts.map +1 -1
  69. package/backend/dist/services/embeddingService.js +3 -1
  70. package/backend/dist/services/embeddingService.js.map +1 -1
  71. package/backend/dist/services/encryptionService.d.ts.map +1 -1
  72. package/backend/dist/services/encryptionService.js +26 -24
  73. package/backend/dist/services/encryptionService.js.map +1 -1
  74. package/backend/dist/services/galleryService.d.ts.map +1 -1
  75. package/backend/dist/services/galleryService.js +8 -6
  76. package/backend/dist/services/galleryService.js.map +1 -1
  77. package/backend/dist/services/libreClawService.d.ts +105 -0
  78. package/backend/dist/services/libreClawService.d.ts.map +1 -0
  79. package/backend/dist/services/libreClawService.js +169 -0
  80. package/backend/dist/services/libreClawService.js.map +1 -0
  81. package/backend/dist/services/memoryService.d.ts +2 -13
  82. package/backend/dist/services/memoryService.d.ts.map +1 -1
  83. package/backend/dist/services/memoryService.js +37 -198
  84. package/backend/dist/services/memoryService.js.map +1 -1
  85. package/backend/dist/services/memoryUtils.d.ts +29 -0
  86. package/backend/dist/services/memoryUtils.d.ts.map +1 -0
  87. package/backend/dist/services/memoryUtils.js +165 -0
  88. package/backend/dist/services/memoryUtils.js.map +1 -0
  89. package/backend/dist/services/mutationEngineService.d.ts.map +1 -1
  90. package/backend/dist/services/mutationEngineService.js +3 -1
  91. package/backend/dist/services/mutationEngineService.js.map +1 -1
  92. package/backend/dist/services/ollamaService.d.ts.map +1 -1
  93. package/backend/dist/services/ollamaService.js +36 -34
  94. package/backend/dist/services/ollamaService.js.map +1 -1
  95. package/backend/dist/services/personaService.d.ts.map +1 -1
  96. package/backend/dist/services/personaService.js +3 -1
  97. package/backend/dist/services/personaService.js.map +1 -1
  98. package/backend/dist/services/pluginCapabilityRegistryService.d.ts +11 -0
  99. package/backend/dist/services/pluginCapabilityRegistryService.d.ts.map +1 -0
  100. package/backend/dist/services/pluginCapabilityRegistryService.js +70 -0
  101. package/backend/dist/services/pluginCapabilityRegistryService.js.map +1 -0
  102. package/backend/dist/services/pluginCredentialsService.d.ts.map +1 -1
  103. package/backend/dist/services/pluginCredentialsService.js +13 -11
  104. package/backend/dist/services/pluginCredentialsService.js.map +1 -1
  105. package/backend/dist/services/pluginEmbeddingService.d.ts +26 -0
  106. package/backend/dist/services/pluginEmbeddingService.d.ts.map +1 -0
  107. package/backend/dist/services/pluginEmbeddingService.js +159 -0
  108. package/backend/dist/services/pluginEmbeddingService.js.map +1 -0
  109. package/backend/dist/services/pluginImageGenerationService.d.ts +29 -0
  110. package/backend/dist/services/pluginImageGenerationService.d.ts.map +1 -0
  111. package/backend/dist/services/pluginImageGenerationService.js +402 -0
  112. package/backend/dist/services/pluginImageGenerationService.js.map +1 -0
  113. package/backend/dist/services/pluginService.d.ts +9 -18
  114. package/backend/dist/services/pluginService.d.ts.map +1 -1
  115. package/backend/dist/services/pluginService.js +118 -1469
  116. package/backend/dist/services/pluginService.js.map +1 -1
  117. package/backend/dist/services/pluginTTSService.d.ts +28 -0
  118. package/backend/dist/services/pluginTTSService.d.ts.map +1 -0
  119. package/backend/dist/services/pluginTTSService.js +286 -0
  120. package/backend/dist/services/pluginTTSService.js.map +1 -0
  121. package/backend/dist/services/pluginVariablesService.d.ts.map +1 -1
  122. package/backend/dist/services/pluginVariablesService.js +7 -5
  123. package/backend/dist/services/pluginVariablesService.js.map +1 -1
  124. package/backend/dist/services/preferencesService.d.ts.map +1 -1
  125. package/backend/dist/services/preferencesService.js +9 -7
  126. package/backend/dist/services/preferencesService.js.map +1 -1
  127. package/backend/dist/services/simpleGitHubOAuth.d.ts.map +1 -1
  128. package/backend/dist/services/simpleGitHubOAuth.js +10 -8
  129. package/backend/dist/services/simpleGitHubOAuth.js.map +1 -1
  130. package/backend/dist/services/simpleHuggingFaceOAuth.d.ts.map +1 -1
  131. package/backend/dist/services/simpleHuggingFaceOAuth.js +11 -9
  132. package/backend/dist/services/simpleHuggingFaceOAuth.js.map +1 -1
  133. package/backend/dist/services/systemSettingsService.d.ts.map +1 -1
  134. package/backend/dist/services/systemSettingsService.js +4 -2
  135. package/backend/dist/services/systemSettingsService.js.map +1 -1
  136. package/backend/dist/services/titleGenerationService.d.ts +55 -0
  137. package/backend/dist/services/titleGenerationService.d.ts.map +1 -0
  138. package/backend/dist/services/titleGenerationService.js +121 -0
  139. package/backend/dist/services/titleGenerationService.js.map +1 -0
  140. package/backend/dist/services/turnstileService.d.ts +13 -0
  141. package/backend/dist/services/turnstileService.d.ts.map +1 -0
  142. package/backend/dist/services/turnstileService.js +79 -0
  143. package/backend/dist/services/turnstileService.js.map +1 -0
  144. package/backend/dist/storage.d.ts +2 -22
  145. package/backend/dist/storage.d.ts.map +1 -1
  146. package/backend/dist/storage.js +22 -170
  147. package/backend/dist/storage.js.map +1 -1
  148. package/backend/dist/storageMappers.d.ts +82 -0
  149. package/backend/dist/storageMappers.d.ts.map +1 -0
  150. package/backend/dist/storageMappers.js +85 -0
  151. package/backend/dist/storageMappers.js.map +1 -0
  152. package/backend/dist/test-encryption.js +20 -18
  153. package/backend/dist/test-encryption.js.map +1 -1
  154. package/backend/dist/types/index.d.ts.map +1 -1
  155. package/backend/dist/types/index.js.map +1 -1
  156. package/backend/dist/utils/assistantBranching.d.ts +8 -0
  157. package/backend/dist/utils/assistantBranching.d.ts.map +1 -0
  158. package/backend/dist/utils/assistantBranching.js +30 -0
  159. package/backend/dist/utils/assistantBranching.js.map +1 -0
  160. package/backend/dist/utils/chatContext.d.ts +17 -0
  161. package/backend/dist/utils/chatContext.d.ts.map +1 -0
  162. package/backend/dist/utils/chatContext.js +82 -0
  163. package/backend/dist/utils/chatContext.js.map +1 -0
  164. package/backend/dist/utils/chatDocumentContext.d.ts +7 -0
  165. package/backend/dist/utils/chatDocumentContext.d.ts.map +1 -0
  166. package/backend/dist/utils/chatDocumentContext.js +51 -0
  167. package/backend/dist/utils/chatDocumentContext.js.map +1 -0
  168. package/backend/dist/utils/logger.d.ts +12 -0
  169. package/backend/dist/utils/logger.d.ts.map +1 -0
  170. package/backend/dist/utils/logger.js +82 -0
  171. package/backend/dist/utils/logger.js.map +1 -0
  172. package/backend/dist/utils/ollamaLibrary.d.ts +17 -0
  173. package/backend/dist/utils/ollamaLibrary.d.ts.map +1 -0
  174. package/backend/dist/utils/ollamaLibrary.js +253 -0
  175. package/backend/dist/utils/ollamaLibrary.js.map +1 -0
  176. package/backend/dist/utils/ollamaStreaming.d.ts +19 -0
  177. package/backend/dist/utils/ollamaStreaming.d.ts.map +1 -0
  178. package/backend/dist/utils/ollamaStreaming.js +67 -0
  179. package/backend/dist/utils/ollamaStreaming.js.map +1 -0
  180. package/backend/dist/utils/pluginChatAdapter.d.ts +32 -0
  181. package/backend/dist/utils/pluginChatAdapter.d.ts.map +1 -0
  182. package/backend/dist/utils/pluginChatAdapter.js +308 -0
  183. package/backend/dist/utils/pluginChatAdapter.js.map +1 -0
  184. package/backend/dist/utils/pluginChatContext.d.ts +23 -0
  185. package/backend/dist/utils/pluginChatContext.d.ts.map +1 -0
  186. package/backend/dist/utils/pluginChatContext.js +77 -0
  187. package/backend/dist/utils/pluginChatContext.js.map +1 -0
  188. package/backend/dist/utils/pluginResponse.d.ts +6 -0
  189. package/backend/dist/utils/pluginResponse.d.ts.map +1 -0
  190. package/backend/dist/utils/pluginResponse.js +70 -0
  191. package/backend/dist/utils/pluginResponse.js.map +1 -0
  192. package/backend/dist/utils/pluginStreamAdapter.d.ts +16 -0
  193. package/backend/dist/utils/pluginStreamAdapter.d.ts.map +1 -0
  194. package/backend/dist/utils/pluginStreamAdapter.js +141 -0
  195. package/backend/dist/utils/pluginStreamAdapter.js.map +1 -0
  196. package/backend/dist/utils/pluginStreaming.d.ts +24 -0
  197. package/backend/dist/utils/pluginStreaming.d.ts.map +1 -0
  198. package/backend/dist/utils/pluginStreaming.js +106 -0
  199. package/backend/dist/utils/pluginStreaming.js.map +1 -0
  200. package/backend/dist/utils/pluginUpload.d.ts +8 -0
  201. package/backend/dist/utils/pluginUpload.d.ts.map +1 -0
  202. package/backend/dist/utils/pluginUpload.js +51 -0
  203. package/backend/dist/utils/pluginUpload.js.map +1 -0
  204. package/backend/dist/utils/pluginValidation.d.ts +9 -0
  205. package/backend/dist/utils/pluginValidation.d.ts.map +1 -0
  206. package/backend/dist/utils/pluginValidation.js +84 -0
  207. package/backend/dist/utils/pluginValidation.js.map +1 -0
  208. package/backend/dist/utils/pluginVariableValidation.d.ts +10 -0
  209. package/backend/dist/utils/pluginVariableValidation.d.ts.map +1 -0
  210. package/backend/dist/utils/pluginVariableValidation.js +80 -0
  211. package/backend/dist/utils/pluginVariableValidation.js.map +1 -0
  212. package/backend/dist/utils/websocketMessages.d.ts +26 -0
  213. package/backend/dist/utils/websocketMessages.d.ts.map +1 -0
  214. package/backend/dist/utils/websocketMessages.js +74 -0
  215. package/backend/dist/utils/websocketMessages.js.map +1 -0
  216. package/backend/dist/websocketServer.d.ts +3 -0
  217. package/backend/dist/websocketServer.d.ts.map +1 -0
  218. package/backend/dist/websocketServer.js +332 -0
  219. package/backend/dist/websocketServer.js.map +1 -0
  220. package/backend/package.json +2 -2
  221. package/frontend/dist/assets/index-Dc8Q4dJZ.css +1 -0
  222. package/frontend/dist/assets/index-ONn9VIq7.js +5 -0
  223. package/frontend/dist/assets/markdown-math-CYlHEDRF.css +1 -0
  224. package/frontend/dist/index.html +11 -10
  225. package/frontend/dist/js/ArtifactContainer-CqKsiKz0.js +1 -0
  226. package/frontend/dist/js/ArtifactDemoPage-Dd5BjIu2.js +200 -0
  227. package/frontend/dist/js/ArtifactSlideOutPanel-Yc7ttIaY.js +1 -0
  228. package/frontend/dist/js/Button-BUjLpHmR.js +1 -0
  229. package/frontend/dist/js/ChatPage-Cpy7lQ0D.js +16 -0
  230. package/frontend/dist/js/FirstTimeSetup-DcGhm0H0.js +1 -0
  231. package/frontend/dist/js/GalleryPage-DNI2Evvf.js +1 -0
  232. package/frontend/dist/js/LibreClawPage-CmTiROsJ.js +1 -0
  233. package/frontend/dist/js/ModelManagerModals-CfvSeNsT.js +1 -0
  234. package/frontend/dist/js/ModelsPage-CeTGqx4q.js +2 -0
  235. package/frontend/dist/js/OptimizedSyntaxHighlighter-CNjLqj1Z.js +1 -0
  236. package/frontend/dist/js/PersonasPage-BUqu7gJ3.js +13 -0
  237. package/frontend/dist/js/RichMessageContent-B0JO8vkR.js +3 -0
  238. package/frontend/dist/js/SettingsModal-B5aJ5vfV.js +1 -0
  239. package/frontend/dist/js/UserManagementPage-BqIIWX2M.js +1 -0
  240. package/frontend/dist/js/api-CbmZzKBu.js +15 -0
  241. package/frontend/dist/js/ar-BAOdgn6O.js +2 -0
  242. package/frontend/dist/js/artifactHtml-B7Oy2e__.js +27 -0
  243. package/frontend/dist/js/bn-Bp2KS5mx.js +2 -0
  244. package/frontend/dist/js/cs-DOgJ0c5p.js +2 -0
  245. package/frontend/dist/js/da-BCKTkC35.js +2 -0
  246. package/frontend/dist/js/de-BXyECph5.js +2 -0
  247. package/frontend/dist/js/demoMode-BhEpMVh5.js +1 -0
  248. package/frontend/dist/js/es-Db4bDYIF.js +2 -0
  249. package/frontend/dist/js/fr-BPIkf6zH.js +2 -0
  250. package/frontend/dist/js/hi-Bm8D_Aux.js +2 -0
  251. package/frontend/dist/js/id-DiWaH74_.js +2 -0
  252. package/frontend/dist/js/is-DLgJywtZ.js +2 -0
  253. package/frontend/dist/js/it-lldrM8pE.js +2 -0
  254. package/frontend/dist/js/ja-Cfe9uZmQ.js +2 -0
  255. package/frontend/dist/js/ko-BhChO3MQ.js +2 -0
  256. package/frontend/dist/js/logger-BmpKNkls.js +1 -0
  257. package/frontend/dist/js/markdown-core-fkbHPd-g.js +16 -0
  258. package/frontend/dist/js/markdown-math-Ci4QOsf-.js +261 -0
  259. package/frontend/dist/js/ms-SWtmetXo.js +2 -0
  260. package/frontend/dist/js/nl-CUO6I3nO.js +2 -0
  261. package/frontend/dist/js/pl-BUAu96P6.js +2 -0
  262. package/frontend/dist/js/pt-DCHwoWiE.js +2 -0
  263. package/frontend/dist/js/{react-vendor-Dh6nfvM2.js → react-vendor-Co1u1rWb.js} +2 -2
  264. package/frontend/dist/js/ru-Ciz053N7.js +2 -0
  265. package/frontend/dist/js/sv-D38ZHjv-.js +2 -0
  266. package/frontend/dist/js/syntax-highlight-D5wpTVgr.js +8 -0
  267. package/frontend/dist/js/th-D2cAucvn.js +2 -0
  268. package/frontend/dist/js/tr-Go355oDu.js +2 -0
  269. package/frontend/dist/js/ui-vendor-BJAeWL11.js +177 -0
  270. package/frontend/dist/js/uk-cdzjhgya.js +2 -0
  271. package/frontend/dist/js/useBaseQuery-6OJiOiyu.js +1 -0
  272. package/frontend/dist/js/useQuery-DfkI6VAv.js +1 -0
  273. package/frontend/dist/js/utils-BaPYjs_z.js +1 -0
  274. package/frontend/dist/js/utils-vendor-BX3ZwoIK.js +9 -0
  275. package/frontend/dist/js/vi-BSOpE423.js +2 -0
  276. package/frontend/dist/js/zh-BFh6sHZG.js +2 -0
  277. package/package.json +12 -8
  278. package/backend/dist/services/openclawSessionService.d.ts +0 -63
  279. package/backend/dist/services/openclawSessionService.d.ts.map +0 -1
  280. package/backend/dist/services/openclawSessionService.js +0 -307
  281. package/backend/dist/services/openclawSessionService.js.map +0 -1
  282. package/frontend/dist/assets/index-cOuIFv6G.js +0 -314
  283. package/frontend/dist/assets/index-tuVjvNle.css +0 -1
  284. package/frontend/dist/js/ArtifactContainer-DXa2t8GS.js +0 -24
  285. package/frontend/dist/js/ArtifactDemoPage-Dms7P2gI.js +0 -98
  286. package/frontend/dist/js/ChatPage-C6hOVIAS.js +0 -15
  287. package/frontend/dist/js/GalleryPage-CGKPECJV.js +0 -1
  288. package/frontend/dist/js/ModelsPage-CNB-c-JM.js +0 -1
  289. package/frontend/dist/js/PersonasPage-hDiS0Rvl.js +0 -13
  290. package/frontend/dist/js/UserManagementPage-1H9kcHeR.js +0 -1
  291. package/frontend/dist/js/api-MQ7bONaU.js +0 -3
  292. package/frontend/dist/js/appStore-BpzQfKOd.js +0 -2
  293. package/frontend/dist/js/authStore-Cn_WS6Kb.js +0 -2
  294. package/frontend/dist/js/demoMode-PKHbba1m.js +0 -1
  295. package/frontend/dist/js/markdown-vendor-DLzJCMRQ.js +0 -22
  296. package/frontend/dist/js/ui-vendor-ClcVY3m-.js +0 -177
  297. package/frontend/dist/js/utils-vendor-BCQRX-0Q.js +0 -9
  298. package/plugins/openclaw-agent.json +0 -69
@@ -0,0 +1,79 @@
1
+ /*
2
+ * Libre WebUI
3
+ * Copyright (C) 2025 Kroonen AI, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at:
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { createLogger } from '../utils/logger.js';
18
+ const logger = createLogger('services:turnstile-service');
19
+ const TURNSTILE_VERIFY_URL = 'https://challenges.cloudflare.com/turnstile/v0/siteverify';
20
+ export class TurnstileService {
21
+ get siteKey() {
22
+ return process.env.TURNSTILE_SITE_KEY?.trim() || undefined;
23
+ }
24
+ get secretKey() {
25
+ return process.env.TURNSTILE_SECRET_KEY?.trim() || undefined;
26
+ }
27
+ isConfigured() {
28
+ return Boolean(this.siteKey && this.secretKey);
29
+ }
30
+ getPublicConfig() {
31
+ if (!this.isConfigured()) {
32
+ return { enabled: false };
33
+ }
34
+ return {
35
+ enabled: true,
36
+ siteKey: this.siteKey,
37
+ };
38
+ }
39
+ async verify(token, remoteIp) {
40
+ if (!this.isConfigured()) {
41
+ return true;
42
+ }
43
+ if (typeof token !== 'string' || !token.trim()) {
44
+ return false;
45
+ }
46
+ const body = new URLSearchParams({
47
+ secret: this.secretKey,
48
+ response: token.trim(),
49
+ });
50
+ if (remoteIp) {
51
+ body.set('remoteip', remoteIp);
52
+ }
53
+ try {
54
+ const response = await fetch(TURNSTILE_VERIFY_URL, {
55
+ method: 'POST',
56
+ headers: {
57
+ Accept: 'application/json',
58
+ 'Content-Type': 'application/x-www-form-urlencoded',
59
+ },
60
+ body,
61
+ });
62
+ if (!response.ok) {
63
+ logger.error('Turnstile verification request failed:', response.status);
64
+ return false;
65
+ }
66
+ const data = (await response.json());
67
+ if (!data.success) {
68
+ logger.warn('Turnstile verification failed:', data['error-codes']?.join(', ') || 'unknown error');
69
+ }
70
+ return data.success;
71
+ }
72
+ catch (error) {
73
+ logger.error('Turnstile verification error:', error);
74
+ return false;
75
+ }
76
+ }
77
+ }
78
+ export const turnstileService = new TurnstileService();
79
+ //# sourceMappingURL=turnstileService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turnstileService.js","sourceRoot":"","sources":["../../src/services/turnstileService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,4BAA4B,CAAC,CAAC;AAgB1D,MAAM,oBAAoB,GACxB,2DAA2D,CAAC;AAE9D,MAAM,OAAO,gBAAgB;IAC3B,IAAY,OAAO;QACjB,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAC7D,CAAC;IAED,IAAY,SAAS;QACnB,OAAO,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAC/D,CAAC;IAED,YAAY;QACV,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,eAAe;QACb,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAc,EAAE,QAAiB;QAC5C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,eAAe,CAAC;YAC/B,MAAM,EAAE,IAAI,CAAC,SAAU;YACvB,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE;SACvB,CAAC,CAAC;QAEH,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,oBAAoB,EAAE;gBACjD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,mCAAmC;iBACpD;gBACD,IAAI;aACL,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACxE,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA4B,CAAC;YAEhE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CACT,gCAAgC,EAChC,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,CACnD,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC"}
@@ -1,26 +1,6 @@
1
1
  import { ChatSession, DocumentChunk, UserPreferences } from './types/index.js';
2
- export interface Document {
3
- id: string;
4
- filename: string;
5
- title?: string;
6
- content?: string;
7
- fileType?: 'pdf' | 'txt';
8
- size?: number;
9
- sessionId?: string;
10
- uploadedAt: number;
11
- createdAt?: number;
12
- metadata?: Record<string, unknown>;
13
- }
14
- export interface User {
15
- id: string;
16
- username: string;
17
- email?: string;
18
- password_hash: string;
19
- role: string;
20
- avatar?: string | null;
21
- created_at: number;
22
- updated_at: number;
23
- }
2
+ import { type Document, type User } from './storageMappers.js';
3
+ export type { Document, User } from './storageMappers.js';
24
4
  declare class StorageService {
25
5
  private useSQLite;
26
6
  private sessionsFile;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAQ/E,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAwDD,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,cAAM,cAAc;IAClB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAA+C;IACnE,OAAO,CAAC,eAAe,CAAkD;IACzE,OAAO,CAAC,aAAa,CAAgD;IACrE,OAAO,CAAC,kBAAkB,CAIxB;;IAYI,UAAU,CACd,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,MAAM,EAChB,IAAI,SAAS,GACZ,OAAO,CAAC,IAAI,CAAC;IAyChB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAgBzC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAoBrD,cAAc,CAAC,MAAM,SAAY,GAAG,WAAW,EAAE;IAkGjD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,WAAW,GAAG,SAAS;IAuF1E,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAY,GAAG,IAAI;IA6F3D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,OAAO;IA6B7D,gBAAgB,CAAC,MAAM,SAAY,GAAG,MAAM;IAwB5C;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAwB7B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAUjC,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IA4DvD,eAAe,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IA+DpE,eAAe,CAAC,MAAM,SAAY,GAAG,QAAQ,EAAE;IAgD/C,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,QAAQ,GAAG,SAAS;IAwCzE,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAY,GAAG,IAAI;IAuD1D,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,OAAO;IAiC/D,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE;IA6CtD,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI;IAgErE,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CA+BlD;AAGD,QAAA,MAAM,cAAc,gBAAuB,CAAC;AAC5C,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAG/E,OAAO,EAIL,KAAK,QAAQ,EAKb,KAAK,IAAI,EACV,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAM1D,cAAM,cAAc;IAClB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAA+C;IACnE,OAAO,CAAC,eAAe,CAAkD;IACzE,OAAO,CAAC,aAAa,CAAgD;IACrE,OAAO,CAAC,kBAAkB,CAIxB;;IAYI,UAAU,CACd,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,MAAM,EAChB,IAAI,SAAS,GACZ,OAAO,CAAC,IAAI,CAAC;IAyChB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAgBzC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAoBrD,cAAc,CAAC,MAAM,SAAY,GAAG,WAAW,EAAE;IA+CjD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,WAAW,GAAG,SAAS;IAwC1E,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAY,GAAG,IAAI;IA6F3D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,OAAO;IA6B7D,gBAAgB,CAAC,MAAM,SAAY,GAAG,MAAM;IAwB5C;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAwB7B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAUjC,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IA2DvD,eAAe,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IA8DpE,eAAe,CAAC,MAAM,SAAY,GAAG,QAAQ,EAAE;IAwB/C,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,QAAQ,GAAG,SAAS;IAkBzE,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAY,GAAG,IAAI;IAuD1D,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,OAAO;IAiC/D,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE;IAyBtD,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI;IAgErE,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;CA+BlD;AAGD,QAAA,MAAM,cAAc,gBAAuB,CAAC;AAC5C,eAAe,cAAc,CAAC"}
@@ -21,6 +21,9 @@ import { v4 as uuidv4 } from 'uuid';
21
21
  import bcrypt from 'bcrypt';
22
22
  import getDatabase, { isDatabaseInitialized } from './db.js';
23
23
  import { encryptionService } from './services/encryptionService.js';
24
+ import { createLogger } from './utils/logger.js';
25
+ import { mapDocumentChunkRow, mapDocumentRow, mapSessionRow, } from './storageMappers.js';
26
+ const logger = createLogger('storage');
24
27
  // Get __dirname equivalent for ES modules
25
28
  const __filename = fileURLToPath(import.meta.url);
26
29
  const __dirname = path.dirname(__filename);
@@ -33,7 +36,7 @@ class StorageService {
33
36
  this.documentChunksFile = path.join(__dirname, '..', 'document-chunks.json');
34
37
  // Check if SQLite should be used
35
38
  this.useSQLite = isDatabaseInitialized();
36
- console.log(`Storage mode: ${this.useSQLite ? 'SQLite' : 'JSON'}`);
39
+ logger.debug(`Storage mode: ${this.useSQLite ? 'SQLite' : 'JSON'}`);
37
40
  }
38
41
  // =================================
39
42
  // USER MANAGEMENT
@@ -117,53 +120,7 @@ class StorageService {
117
120
  return sessions.map(session => {
118
121
  const messages = messagesStmt.all(session.id);
119
122
  const siblingCounts = siblingCountStmt.all(session.id);
120
- // Create a map for quick lookup of sibling counts
121
- const siblingCountMap = new Map();
122
- for (const sc of siblingCounts) {
123
- // Add 1 to include the original message in the count
124
- siblingCountMap.set(sc.parent_id, sc.count + 1);
125
- }
126
- // Decrypt session data
127
- const decryptedTitle = encryptionService.decrypt(session.title);
128
- return {
129
- id: session.id,
130
- title: decryptedTitle,
131
- model: session.model,
132
- personaId: session.persona_id || undefined,
133
- createdAt: session.created_at,
134
- updatedAt: session.updated_at,
135
- messages: messages.map(msg => {
136
- // Decrypt message data
137
- const decryptedContent = encryptionService.decrypt(msg.content);
138
- const decryptedImages = msg.images
139
- ? JSON.parse(encryptionService.decrypt(msg.images))
140
- : undefined;
141
- const decryptedStatistics = msg.statistics
142
- ? JSON.parse(encryptionService.decrypt(msg.statistics))
143
- : undefined;
144
- const decryptedArtifacts = msg.artifacts
145
- ? JSON.parse(encryptionService.decrypt(msg.artifacts))
146
- : undefined;
147
- // Calculate sibling count: if this message has variants, count them
148
- // A message has siblings if it's a parent (has variants) or is a variant itself
149
- const parentId = msg.parent_id || msg.id;
150
- const siblingCount = siblingCountMap.get(parentId) || 1;
151
- return {
152
- id: msg.id,
153
- role: msg.role,
154
- content: decryptedContent,
155
- timestamp: msg.timestamp,
156
- model: msg.model,
157
- images: decryptedImages,
158
- statistics: decryptedStatistics,
159
- artifacts: decryptedArtifacts,
160
- parentId: msg.parent_id,
161
- branchIndex: msg.branch_index ?? 0,
162
- isActive: msg.is_active !== 0,
163
- siblingCount: siblingCount > 1 ? siblingCount : undefined,
164
- };
165
- }),
166
- };
123
+ return mapSessionRow(session, messages, siblingCounts);
167
124
  });
168
125
  }
169
126
  else {
@@ -175,7 +132,7 @@ class StorageService {
175
132
  }
176
133
  }
177
134
  catch (error) {
178
- console.error('Failed to load sessions from JSON:', error);
135
+ logger.error('Failed to load sessions from JSON:', error);
179
136
  }
180
137
  }
181
138
  return [];
@@ -204,49 +161,7 @@ class StorageService {
204
161
  GROUP BY parent_id
205
162
  `);
206
163
  const siblingCounts = siblingCountStmt.all(sessionId);
207
- // Create a map for quick lookup of sibling counts
208
- const siblingCountMap = new Map();
209
- for (const sc of siblingCounts) {
210
- siblingCountMap.set(sc.parent_id, sc.count + 1);
211
- }
212
- // Decrypt session data
213
- const decryptedTitle = encryptionService.decrypt(session.title);
214
- return {
215
- id: session.id,
216
- title: decryptedTitle,
217
- model: session.model,
218
- createdAt: session.created_at,
219
- updatedAt: session.updated_at,
220
- messages: messages.map(msg => {
221
- // Decrypt message data
222
- const decryptedContent = encryptionService.decrypt(msg.content);
223
- const decryptedImages = msg.images
224
- ? JSON.parse(encryptionService.decrypt(msg.images))
225
- : undefined;
226
- const decryptedStatistics = msg.statistics
227
- ? JSON.parse(encryptionService.decrypt(msg.statistics))
228
- : undefined;
229
- const decryptedArtifacts = msg.artifacts
230
- ? JSON.parse(encryptionService.decrypt(msg.artifacts))
231
- : undefined;
232
- const parentId = msg.parent_id || msg.id;
233
- const siblingCount = siblingCountMap.get(parentId) || 1;
234
- return {
235
- id: msg.id,
236
- role: msg.role,
237
- content: decryptedContent,
238
- timestamp: msg.timestamp,
239
- model: msg.model,
240
- images: decryptedImages,
241
- statistics: decryptedStatistics,
242
- artifacts: decryptedArtifacts,
243
- parentId: msg.parent_id,
244
- branchIndex: msg.branch_index ?? 0,
245
- isActive: msg.is_active !== 0,
246
- siblingCount: siblingCount > 1 ? siblingCount : undefined,
247
- };
248
- }),
249
- };
164
+ return mapSessionRow(session, messages, siblingCounts);
250
165
  }
251
166
  else {
252
167
  // Fallback to JSON
@@ -310,7 +225,7 @@ class StorageService {
310
225
  fs.writeFileSync(this.sessionsFile, JSON.stringify(sessions, null, 2));
311
226
  }
312
227
  catch (error) {
313
- console.error('Failed to save session to JSON:', error);
228
+ logger.error('Failed to save session to JSON:', error);
314
229
  }
315
230
  }
316
231
  }
@@ -332,7 +247,7 @@ class StorageService {
332
247
  }
333
248
  }
334
249
  catch (error) {
335
- console.error('Failed to delete session from JSON:', error);
250
+ logger.error('Failed to delete session from JSON:', error);
336
251
  }
337
252
  }
338
253
  return false;
@@ -353,7 +268,7 @@ class StorageService {
353
268
  return deletedCount;
354
269
  }
355
270
  catch (error) {
356
- console.error('Failed to clear all sessions from JSON:', error);
271
+ logger.error('Failed to clear all sessions from JSON:', error);
357
272
  return 0;
358
273
  }
359
274
  }
@@ -394,7 +309,7 @@ class StorageService {
394
309
  if (this.useSQLite) {
395
310
  const db = getDatabase();
396
311
  db.prepare('DELETE FROM user_preferences WHERE user_id = ? AND key = ?').run(userId, key);
397
- console.log(`Cleaned up corrupted preference: ${key}`);
312
+ logger.debug(`Cleaned up corrupted preference: ${key}`);
398
313
  }
399
314
  }
400
315
  getPreferences(userId) {
@@ -442,7 +357,7 @@ class StorageService {
442
357
  }
443
358
  }
444
359
  catch (error) {
445
- console.error('Failed to load preferences from JSON:', error);
360
+ logger.error('Failed to load preferences from JSON:', error);
446
361
  }
447
362
  }
448
363
  return null;
@@ -488,7 +403,7 @@ class StorageService {
488
403
  fs.writeFileSync(this.preferencesFile, JSON.stringify(preferences, null, 2));
489
404
  }
490
405
  catch (error) {
491
- console.error('Failed to save preferences to JSON:', error);
406
+ logger.error('Failed to save preferences to JSON:', error);
492
407
  }
493
408
  }
494
409
  }
@@ -502,30 +417,7 @@ class StorageService {
502
417
  SELECT * FROM documents WHERE user_id = ? ORDER BY uploaded_at DESC
503
418
  `);
504
419
  const rows = stmt.all(userId);
505
- return rows.map(row => {
506
- // Decrypt document data
507
- const decryptedTitle = row.title
508
- ? encryptionService.decrypt(row.title)
509
- : undefined;
510
- const decryptedContent = row.content
511
- ? encryptionService.decrypt(row.content)
512
- : undefined;
513
- const decryptedMetadata = row.metadata
514
- ? JSON.parse(encryptionService.decrypt(row.metadata))
515
- : undefined;
516
- return {
517
- id: row.id,
518
- filename: row.filename,
519
- title: decryptedTitle,
520
- content: decryptedContent,
521
- fileType: row.file_type,
522
- size: row.size,
523
- sessionId: row.session_id,
524
- uploadedAt: row.uploaded_at,
525
- createdAt: row.created_at,
526
- metadata: decryptedMetadata,
527
- };
528
- });
420
+ return rows.map(mapDocumentRow);
529
421
  }
530
422
  else {
531
423
  // Fallback to JSON
@@ -536,7 +428,7 @@ class StorageService {
536
428
  }
537
429
  }
538
430
  catch (error) {
539
- console.error('Failed to load documents from JSON:', error);
431
+ logger.error('Failed to load documents from JSON:', error);
540
432
  }
541
433
  }
542
434
  return [];
@@ -548,28 +440,7 @@ class StorageService {
548
440
  const row = stmt.get(documentId, userId);
549
441
  if (!row)
550
442
  return undefined;
551
- // Decrypt document data
552
- const decryptedTitle = row.title
553
- ? encryptionService.decrypt(row.title)
554
- : undefined;
555
- const decryptedContent = row.content
556
- ? encryptionService.decrypt(row.content)
557
- : undefined;
558
- const decryptedMetadata = row.metadata
559
- ? JSON.parse(encryptionService.decrypt(row.metadata))
560
- : undefined;
561
- return {
562
- id: row.id,
563
- filename: row.filename,
564
- title: decryptedTitle,
565
- content: decryptedContent,
566
- fileType: row.file_type,
567
- size: row.size,
568
- sessionId: row.session_id,
569
- uploadedAt: row.uploaded_at,
570
- createdAt: row.created_at,
571
- metadata: decryptedMetadata,
572
- };
443
+ return mapDocumentRow(row);
573
444
  }
574
445
  else {
575
446
  // Fallback to JSON
@@ -612,7 +483,7 @@ class StorageService {
612
483
  fs.writeFileSync(this.documentsFile, JSON.stringify(documents, null, 2));
613
484
  }
614
485
  catch (error) {
615
- console.error('Failed to save document to JSON:', error);
486
+ logger.error('Failed to save document to JSON:', error);
616
487
  }
617
488
  }
618
489
  }
@@ -634,7 +505,7 @@ class StorageService {
634
505
  }
635
506
  }
636
507
  catch (error) {
637
- console.error('Failed to delete document from JSON:', error);
508
+ logger.error('Failed to delete document from JSON:', error);
638
509
  }
639
510
  }
640
511
  return false;
@@ -649,26 +520,7 @@ class StorageService {
649
520
  SELECT * FROM document_chunks WHERE document_id = ? ORDER BY chunk_index ASC
650
521
  `);
651
522
  const rows = stmt.all(documentId);
652
- return rows.map(row => {
653
- // Decrypt document chunk data
654
- const decryptedContent = encryptionService.decrypt(row.content);
655
- const decryptedEmbedding = row.embedding
656
- ? JSON.parse(encryptionService.decrypt(row.embedding))
657
- : undefined;
658
- const decryptedMetadata = row.metadata
659
- ? JSON.parse(encryptionService.decrypt(row.metadata))
660
- : undefined;
661
- return {
662
- id: row.id,
663
- documentId: row.document_id,
664
- content: decryptedContent,
665
- embedding: decryptedEmbedding,
666
- chunkIndex: row.chunk_index,
667
- startChar: row.start_char,
668
- endChar: row.end_char,
669
- metadata: decryptedMetadata,
670
- };
671
- });
523
+ return rows.map(mapDocumentChunkRow);
672
524
  }
673
525
  else {
674
526
  // Fallback to JSON
@@ -680,7 +532,7 @@ class StorageService {
680
532
  }
681
533
  }
682
534
  catch (error) {
683
- console.error('Failed to load document chunks from JSON:', error);
535
+ logger.error('Failed to load document chunks from JSON:', error);
684
536
  }
685
537
  }
686
538
  return [];
@@ -724,7 +576,7 @@ class StorageService {
724
576
  fs.writeFileSync(this.documentChunksFile, JSON.stringify(chunksData, null, 2));
725
577
  }
726
578
  catch (error) {
727
- console.error('Failed to save document chunks to JSON:', error);
579
+ logger.error('Failed to save document chunks to JSON:', error);
728
580
  }
729
581
  }
730
582
  }
@@ -749,7 +601,7 @@ class StorageService {
749
601
  }
750
602
  }
751
603
  catch (error) {
752
- console.error('Failed to delete document chunks from JSON:', error);
604
+ logger.error('Failed to delete document chunks from JSON:', error);
753
605
  }
754
606
  }
755
607
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ import type { ChatSession, DocumentChunk } from './types/index.js';
2
+ export interface Document {
3
+ id: string;
4
+ filename: string;
5
+ title?: string;
6
+ content?: string;
7
+ fileType?: 'pdf' | 'txt';
8
+ size?: number;
9
+ sessionId?: string;
10
+ uploadedAt: number;
11
+ createdAt?: number;
12
+ metadata?: Record<string, unknown>;
13
+ }
14
+ export interface SessionRow {
15
+ id: string;
16
+ user_id: string;
17
+ title: string;
18
+ model: string;
19
+ persona_id?: string;
20
+ created_at: number;
21
+ updated_at: number;
22
+ }
23
+ export interface MessageRow {
24
+ id: string;
25
+ session_id: string;
26
+ role: string;
27
+ content: string;
28
+ timestamp: number;
29
+ message_index: number;
30
+ model?: string;
31
+ images?: string;
32
+ statistics?: string;
33
+ artifacts?: string;
34
+ parent_id?: string;
35
+ branch_index?: number;
36
+ is_active?: number;
37
+ }
38
+ export interface DocumentRow {
39
+ id: string;
40
+ user_id: string;
41
+ filename: string;
42
+ title?: string;
43
+ content?: string;
44
+ file_type?: string;
45
+ size?: number;
46
+ session_id?: string;
47
+ uploaded_at: number;
48
+ created_at?: number;
49
+ metadata?: string;
50
+ }
51
+ export interface DocumentChunkRow {
52
+ id: string;
53
+ document_id: string;
54
+ user_id: string;
55
+ content: string;
56
+ embedding?: string;
57
+ chunk_index: number;
58
+ start_char: number;
59
+ end_char: number;
60
+ metadata?: string;
61
+ }
62
+ export interface User {
63
+ id: string;
64
+ username: string;
65
+ email?: string;
66
+ password_hash: string;
67
+ role: string;
68
+ avatar?: string | null;
69
+ created_at: number;
70
+ updated_at: number;
71
+ }
72
+ interface SiblingCountRow {
73
+ parent_id: string;
74
+ count: number;
75
+ }
76
+ export declare function buildSiblingCountMap(siblingCounts: SiblingCountRow[]): Map<string, number>;
77
+ export declare function mapMessageRow(row: MessageRow, siblingCountMap: Map<string, number>): ChatSession['messages'][number];
78
+ export declare function mapSessionRow(row: SessionRow, messages: MessageRow[], siblingCounts: SiblingCountRow[]): ChatSession;
79
+ export declare function mapDocumentRow(row: DocumentRow): Document;
80
+ export declare function mapDocumentChunkRow(row: DocumentChunkRow): DocumentChunk;
81
+ export {};
82
+ //# sourceMappingURL=storageMappers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storageMappers.d.ts","sourceRoot":"","sources":["../src/storageMappers.ts"],"names":[],"mappings":"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"}