@dexto/core 1.2.4 → 1.2.6

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 (551) hide show
  1. package/README.md +60 -0
  2. package/dist/agent/DextoAgent.cjs +579 -345
  3. package/dist/agent/DextoAgent.d.ts +131 -83
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +573 -336
  6. package/dist/agent/agentCard.cjs +4 -2
  7. package/dist/agent/agentCard.d.ts +0 -1
  8. package/dist/agent/agentCard.d.ts.map +1 -1
  9. package/dist/agent/agentCard.js +4 -2
  10. package/dist/agent/index.cjs +3 -7
  11. package/dist/agent/index.d.ts +3 -3
  12. package/dist/agent/index.d.ts.map +1 -1
  13. package/dist/agent/index.js +7 -6
  14. package/dist/agent/schemas.cjs +179 -75
  15. package/dist/agent/schemas.d.ts +2678 -586
  16. package/dist/agent/schemas.d.ts.map +1 -1
  17. package/dist/agent/schemas.js +172 -65
  18. package/dist/agent/state-manager.cjs +28 -23
  19. package/dist/agent/state-manager.d.ts +4 -1
  20. package/dist/agent/state-manager.d.ts.map +1 -1
  21. package/dist/agent/state-manager.js +28 -23
  22. package/dist/{preferences/constants.cjs → agent/types.cjs} +2 -14
  23. package/dist/agent/types.d.ts +54 -0
  24. package/dist/agent/types.d.ts.map +1 -0
  25. package/dist/agent/types.js +0 -0
  26. package/dist/approval/errors.cjs +89 -8
  27. package/dist/approval/errors.d.ts +5 -3
  28. package/dist/approval/errors.d.ts.map +1 -1
  29. package/dist/approval/errors.js +89 -8
  30. package/dist/approval/{providers/factory.d.ts → factory.d.ts} +2 -2
  31. package/dist/approval/factory.d.ts.map +1 -0
  32. package/dist/approval/{providers/factory.js → factory.js} +1 -1
  33. package/dist/approval/index.cjs +4 -6
  34. package/dist/approval/index.d.ts +3 -5
  35. package/dist/approval/index.d.ts.map +1 -1
  36. package/dist/approval/index.js +4 -5
  37. package/dist/approval/manager.cjs +140 -37
  38. package/dist/approval/manager.d.ts +56 -17
  39. package/dist/approval/manager.d.ts.map +1 -1
  40. package/dist/approval/manager.js +141 -38
  41. package/dist/approval/schemas.cjs +9 -1
  42. package/dist/approval/schemas.d.ts +120 -35
  43. package/dist/approval/schemas.d.ts.map +1 -1
  44. package/dist/approval/schemas.js +9 -2
  45. package/dist/approval/types.cjs +14 -2
  46. package/dist/approval/types.d.ts +64 -12
  47. package/dist/approval/types.d.ts.map +1 -1
  48. package/dist/approval/types.js +12 -1
  49. package/dist/context/compression/middle-removal.cjs +11 -11
  50. package/dist/context/compression/middle-removal.d.ts +3 -1
  51. package/dist/context/compression/middle-removal.d.ts.map +1 -1
  52. package/dist/context/compression/middle-removal.js +11 -11
  53. package/dist/context/compression/oldest-removal.cjs +18 -5
  54. package/dist/context/compression/oldest-removal.d.ts +3 -1
  55. package/dist/context/compression/oldest-removal.d.ts.map +1 -1
  56. package/dist/context/compression/oldest-removal.js +18 -5
  57. package/dist/context/manager.cjs +94 -67
  58. package/dist/context/manager.d.ts +13 -10
  59. package/dist/context/manager.d.ts.map +1 -1
  60. package/dist/context/manager.js +94 -67
  61. package/dist/context/utils.cjs +79 -65
  62. package/dist/context/utils.d.ts +15 -12
  63. package/dist/context/utils.d.ts.map +1 -1
  64. package/dist/context/utils.js +45 -31
  65. package/dist/errors/DextoRuntimeError.d.ts +5 -5
  66. package/dist/errors/DextoRuntimeError.d.ts.map +1 -1
  67. package/dist/errors/result-bridge.cjs +2 -3
  68. package/dist/errors/result-bridge.d.ts +5 -3
  69. package/dist/errors/result-bridge.d.ts.map +1 -1
  70. package/dist/errors/result-bridge.js +1 -2
  71. package/dist/errors/types.cjs +1 -2
  72. package/dist/errors/types.d.ts +5 -8
  73. package/dist/errors/types.d.ts.map +1 -1
  74. package/dist/errors/types.js +1 -2
  75. package/dist/events/index.cjs +125 -55
  76. package/dist/events/index.d.ts +204 -97
  77. package/dist/events/index.d.ts.map +1 -1
  78. package/dist/events/index.js +123 -55
  79. package/dist/filesystem/filesystem-service.cjs +40 -30
  80. package/dist/filesystem/filesystem-service.d.ts +9 -1
  81. package/dist/filesystem/filesystem-service.d.ts.map +1 -1
  82. package/dist/filesystem/filesystem-service.js +40 -30
  83. package/dist/filesystem/path-validator.cjs +4 -3
  84. package/dist/filesystem/path-validator.d.ts +3 -1
  85. package/dist/filesystem/path-validator.d.ts.map +1 -1
  86. package/dist/filesystem/path-validator.js +4 -3
  87. package/dist/filesystem/types.d.ts +3 -3
  88. package/dist/filesystem/types.d.ts.map +1 -1
  89. package/dist/index.browser.cjs +7 -0
  90. package/dist/index.browser.d.ts +2 -0
  91. package/dist/index.browser.d.ts.map +1 -1
  92. package/dist/index.browser.js +4 -0
  93. package/dist/index.cjs +0 -7
  94. package/dist/index.d.ts +12 -3
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +0 -4
  97. package/dist/llm/formatters/anthropic.cjs +32 -21
  98. package/dist/llm/formatters/anthropic.d.ts +3 -0
  99. package/dist/llm/formatters/anthropic.d.ts.map +1 -1
  100. package/dist/llm/formatters/anthropic.js +32 -21
  101. package/dist/llm/formatters/factory.cjs +6 -7
  102. package/dist/llm/formatters/factory.d.ts +2 -1
  103. package/dist/llm/formatters/factory.d.ts.map +1 -1
  104. package/dist/llm/formatters/factory.js +4 -5
  105. package/dist/llm/formatters/openai.cjs +38 -9
  106. package/dist/llm/formatters/openai.d.ts +3 -0
  107. package/dist/llm/formatters/openai.d.ts.map +1 -1
  108. package/dist/llm/formatters/openai.js +38 -9
  109. package/dist/llm/formatters/vercel.cjs +49 -8
  110. package/dist/llm/formatters/vercel.d.ts +3 -0
  111. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  112. package/dist/llm/formatters/vercel.js +49 -8
  113. package/dist/llm/registry.cjs +153 -17
  114. package/dist/llm/registry.d.ts +5 -2
  115. package/dist/llm/registry.d.ts.map +1 -1
  116. package/dist/llm/registry.js +143 -7
  117. package/dist/llm/resolver.cjs +4 -4
  118. package/dist/llm/resolver.d.ts +3 -2
  119. package/dist/llm/resolver.d.ts.map +1 -1
  120. package/dist/llm/resolver.js +4 -4
  121. package/dist/llm/schemas.cjs +6 -3
  122. package/dist/llm/schemas.d.ts +51 -17
  123. package/dist/llm/schemas.d.ts.map +1 -1
  124. package/dist/llm/schemas.js +5 -3
  125. package/dist/llm/services/anthropic.cjs +216 -183
  126. package/dist/llm/services/anthropic.d.ts +3 -1
  127. package/dist/llm/services/anthropic.d.ts.map +1 -1
  128. package/dist/llm/services/anthropic.js +217 -184
  129. package/dist/llm/services/factory.cjs +15 -9
  130. package/dist/llm/services/factory.d.ts +2 -1
  131. package/dist/llm/services/factory.d.ts.map +1 -1
  132. package/dist/llm/services/factory.js +15 -9
  133. package/dist/llm/services/openai.cjs +262 -225
  134. package/dist/llm/services/openai.d.ts +3 -1
  135. package/dist/llm/services/openai.d.ts.map +1 -1
  136. package/dist/llm/services/openai.js +263 -226
  137. package/dist/llm/services/test-utils.integration.cjs +58 -12
  138. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  139. package/dist/llm/services/test-utils.integration.js +58 -12
  140. package/dist/llm/services/types.d.ts +9 -0
  141. package/dist/llm/services/types.d.ts.map +1 -1
  142. package/dist/llm/services/vercel.cjs +163 -111
  143. package/dist/llm/services/vercel.d.ts +3 -1
  144. package/dist/llm/services/vercel.d.ts.map +1 -1
  145. package/dist/llm/services/vercel.js +157 -105
  146. package/dist/llm/tokenizer/factory.cjs +2 -2
  147. package/dist/llm/tokenizer/factory.d.ts +3 -1
  148. package/dist/llm/tokenizer/factory.d.ts.map +1 -1
  149. package/dist/llm/tokenizer/factory.js +2 -2
  150. package/dist/llm/tokenizer/openai.cjs +16 -9
  151. package/dist/llm/tokenizer/openai.d.ts +4 -1
  152. package/dist/llm/tokenizer/openai.d.ts.map +1 -1
  153. package/dist/llm/tokenizer/openai.js +16 -9
  154. package/dist/llm/validation.cjs +8 -9
  155. package/dist/llm/validation.d.ts +3 -1
  156. package/dist/llm/validation.d.ts.map +1 -1
  157. package/dist/llm/validation.js +5 -6
  158. package/dist/logger/factory.cjs +54 -0
  159. package/dist/logger/factory.d.ts +36 -0
  160. package/dist/logger/factory.d.ts.map +1 -0
  161. package/dist/logger/factory.js +31 -0
  162. package/dist/logger/index.cjs +42 -3
  163. package/dist/logger/index.d.ts +17 -1
  164. package/dist/logger/index.d.ts.map +1 -1
  165. package/dist/logger/index.js +26 -1
  166. package/dist/logger/logger.cjs +30 -17
  167. package/dist/logger/logger.d.ts.map +1 -1
  168. package/dist/logger/logger.js +30 -17
  169. package/dist/logger/v2/dexto-logger.cjs +141 -0
  170. package/dist/logger/v2/dexto-logger.d.ts +54 -0
  171. package/dist/logger/v2/dexto-logger.d.ts.map +1 -0
  172. package/dist/logger/v2/dexto-logger.js +118 -0
  173. package/dist/{preferences → logger/v2}/error-codes.cjs +11 -10
  174. package/dist/logger/v2/error-codes.d.ts +13 -0
  175. package/dist/logger/v2/error-codes.d.ts.map +1 -0
  176. package/dist/logger/v2/error-codes.js +13 -0
  177. package/dist/logger/v2/errors.cjs +107 -0
  178. package/dist/logger/v2/errors.d.ts +32 -0
  179. package/dist/logger/v2/errors.d.ts.map +1 -0
  180. package/dist/logger/v2/errors.js +84 -0
  181. package/dist/logger/v2/schemas.cjs +57 -0
  182. package/dist/logger/v2/schemas.d.ts +147 -0
  183. package/dist/logger/v2/schemas.d.ts.map +1 -0
  184. package/dist/logger/v2/schemas.js +33 -0
  185. package/dist/logger/v2/transport-factory.cjs +53 -0
  186. package/dist/logger/v2/transport-factory.d.ts +21 -0
  187. package/dist/logger/v2/transport-factory.d.ts.map +1 -0
  188. package/dist/logger/v2/transport-factory.js +29 -0
  189. package/dist/logger/v2/transports/console-transport.cjs +79 -0
  190. package/dist/logger/v2/transports/console-transport.d.ts +23 -0
  191. package/dist/logger/v2/transports/console-transport.d.ts.map +1 -0
  192. package/dist/logger/v2/transports/console-transport.js +46 -0
  193. package/dist/logger/v2/transports/file-transport.cjs +161 -0
  194. package/dist/logger/v2/transports/file-transport.d.ts +46 -0
  195. package/dist/logger/v2/transports/file-transport.d.ts.map +1 -0
  196. package/dist/logger/v2/transports/file-transport.js +128 -0
  197. package/dist/logger/v2/types.cjs +49 -0
  198. package/dist/logger/v2/types.d.ts +123 -0
  199. package/dist/logger/v2/types.d.ts.map +1 -0
  200. package/dist/logger/v2/types.js +26 -0
  201. package/dist/mcp/manager.cjs +88 -78
  202. package/dist/mcp/manager.d.ts +3 -1
  203. package/dist/mcp/manager.d.ts.map +1 -1
  204. package/dist/mcp/manager.js +88 -78
  205. package/dist/mcp/mcp-client.cjs +109 -79
  206. package/dist/mcp/mcp-client.d.ts +3 -0
  207. package/dist/mcp/mcp-client.d.ts.map +1 -1
  208. package/dist/mcp/mcp-client.js +102 -72
  209. package/dist/memory/index.cjs +2 -0
  210. package/dist/memory/index.d.ts +1 -1
  211. package/dist/memory/index.d.ts.map +1 -1
  212. package/dist/memory/index.js +3 -1
  213. package/dist/memory/manager.cjs +9 -7
  214. package/dist/memory/manager.d.ts +3 -1
  215. package/dist/memory/manager.d.ts.map +1 -1
  216. package/dist/memory/manager.js +9 -7
  217. package/dist/memory/schemas.cjs +10 -0
  218. package/dist/memory/schemas.d.ts +37 -8
  219. package/dist/memory/schemas.d.ts.map +1 -1
  220. package/dist/memory/schemas.js +9 -0
  221. package/dist/plugins/manager.cjs +21 -19
  222. package/dist/plugins/manager.d.ts +3 -1
  223. package/dist/plugins/manager.d.ts.map +1 -1
  224. package/dist/plugins/manager.js +21 -19
  225. package/dist/plugins/schemas.d.ts +9 -9
  226. package/dist/plugins/types.d.ts +2 -2
  227. package/dist/plugins/types.d.ts.map +1 -1
  228. package/dist/process/command-validator.cjs +30 -20
  229. package/dist/process/command-validator.d.ts +4 -1
  230. package/dist/process/command-validator.d.ts.map +1 -1
  231. package/dist/process/command-validator.js +30 -20
  232. package/dist/process/process-service.cjs +23 -21
  233. package/dist/process/process-service.d.ts +3 -1
  234. package/dist/process/process-service.d.ts.map +1 -1
  235. package/dist/process/process-service.js +23 -21
  236. package/dist/prompts/index.cjs +6 -8
  237. package/dist/prompts/index.d.ts +2 -4
  238. package/dist/prompts/index.d.ts.map +1 -1
  239. package/dist/prompts/index.js +4 -6
  240. package/dist/prompts/prompt-manager.cjs +25 -20
  241. package/dist/prompts/prompt-manager.d.ts +3 -1
  242. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  243. package/dist/prompts/prompt-manager.js +25 -20
  244. package/dist/prompts/providers/config-prompt-provider.cjs +331 -0
  245. package/dist/prompts/providers/config-prompt-provider.d.ts +34 -0
  246. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -0
  247. package/dist/prompts/providers/config-prompt-provider.js +308 -0
  248. package/dist/prompts/providers/custom-prompt-provider.cjs +11 -7
  249. package/dist/prompts/providers/custom-prompt-provider.d.ts +3 -1
  250. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  251. package/dist/prompts/providers/custom-prompt-provider.js +11 -7
  252. package/dist/prompts/providers/mcp-prompt-provider.cjs +7 -6
  253. package/dist/prompts/providers/mcp-prompt-provider.d.ts +3 -1
  254. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  255. package/dist/prompts/providers/mcp-prompt-provider.js +7 -6
  256. package/dist/prompts/schemas.cjs +42 -23
  257. package/dist/prompts/schemas.d.ts +123 -14
  258. package/dist/prompts/schemas.d.ts.map +1 -1
  259. package/dist/prompts/schemas.js +39 -22
  260. package/dist/prompts/types.d.ts +1 -1
  261. package/dist/prompts/types.d.ts.map +1 -1
  262. package/dist/resources/handlers/blob-handler.cjs +15 -11
  263. package/dist/resources/handlers/blob-handler.d.ts +3 -1
  264. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  265. package/dist/resources/handlers/blob-handler.js +15 -11
  266. package/dist/resources/handlers/factory.cjs +3 -3
  267. package/dist/resources/handlers/factory.d.ts +2 -1
  268. package/dist/resources/handlers/factory.d.ts.map +1 -1
  269. package/dist/resources/handlers/factory.js +3 -3
  270. package/dist/resources/handlers/filesystem-handler.cjs +10 -8
  271. package/dist/resources/handlers/filesystem-handler.d.ts +3 -1
  272. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  273. package/dist/resources/handlers/filesystem-handler.js +10 -8
  274. package/dist/resources/internal-provider.cjs +28 -20
  275. package/dist/resources/internal-provider.d.ts +3 -1
  276. package/dist/resources/internal-provider.d.ts.map +1 -1
  277. package/dist/resources/internal-provider.js +28 -20
  278. package/dist/resources/manager.cjs +34 -25
  279. package/dist/resources/manager.d.ts +3 -1
  280. package/dist/resources/manager.d.ts.map +1 -1
  281. package/dist/resources/manager.js +34 -25
  282. package/dist/resources/schemas.d.ts +6 -6
  283. package/dist/search/search-service.cjs +8 -6
  284. package/dist/search/search-service.d.ts +3 -1
  285. package/dist/search/search-service.d.ts.map +1 -1
  286. package/dist/search/search-service.js +8 -6
  287. package/dist/session/chat-session.cjs +40 -27
  288. package/dist/session/chat-session.d.ts +10 -7
  289. package/dist/session/chat-session.d.ts.map +1 -1
  290. package/dist/session/chat-session.js +40 -27
  291. package/dist/session/history/database.cjs +18 -11
  292. package/dist/session/history/database.d.ts +3 -1
  293. package/dist/session/history/database.d.ts.map +1 -1
  294. package/dist/session/history/database.js +18 -11
  295. package/dist/session/history/factory.cjs +2 -2
  296. package/dist/session/history/factory.d.ts +5 -1
  297. package/dist/session/history/factory.d.ts.map +1 -1
  298. package/dist/session/history/factory.js +2 -2
  299. package/dist/session/session-manager.cjs +37 -53
  300. package/dist/session/session-manager.d.ts +3 -17
  301. package/dist/session/session-manager.d.ts.map +1 -1
  302. package/dist/session/session-manager.js +37 -53
  303. package/dist/session/title-generator.cjs +3 -2
  304. package/dist/session/title-generator.d.ts +2 -1
  305. package/dist/session/title-generator.d.ts.map +1 -1
  306. package/dist/session/title-generator.js +3 -2
  307. package/dist/storage/blob/factory.cjs +9 -18
  308. package/dist/storage/blob/factory.d.ts +5 -4
  309. package/dist/storage/blob/factory.d.ts.map +1 -1
  310. package/dist/storage/blob/factory.js +8 -17
  311. package/dist/storage/blob/local-blob-store.cjs +25 -32
  312. package/dist/storage/blob/local-blob-store.d.ts +3 -2
  313. package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
  314. package/dist/storage/blob/local-blob-store.js +25 -32
  315. package/dist/storage/blob/memory-blob-store.cjs +326 -0
  316. package/dist/storage/blob/memory-blob-store.d.ts +66 -0
  317. package/dist/storage/blob/memory-blob-store.d.ts.map +1 -0
  318. package/dist/storage/blob/memory-blob-store.js +303 -0
  319. package/dist/storage/blob/schemas.cjs +3 -1
  320. package/dist/storage/blob/schemas.d.ts +6 -6
  321. package/dist/storage/blob/schemas.d.ts.map +1 -1
  322. package/dist/storage/blob/schemas.js +3 -1
  323. package/dist/storage/cache/factory.cjs +7 -8
  324. package/dist/storage/cache/factory.d.ts +4 -1
  325. package/dist/storage/cache/factory.d.ts.map +1 -1
  326. package/dist/storage/cache/factory.js +4 -5
  327. package/dist/storage/cache/redis-store.cjs +4 -1
  328. package/dist/storage/cache/redis-store.d.ts +3 -1
  329. package/dist/storage/cache/redis-store.d.ts.map +1 -1
  330. package/dist/storage/cache/redis-store.js +4 -1
  331. package/dist/storage/database/factory.cjs +13 -16
  332. package/dist/storage/database/factory.d.ts +5 -3
  333. package/dist/storage/database/factory.d.ts.map +1 -1
  334. package/dist/storage/database/factory.js +9 -12
  335. package/dist/storage/database/postgres-store.cjs +4 -1
  336. package/dist/storage/database/postgres-store.d.ts +3 -1
  337. package/dist/storage/database/postgres-store.d.ts.map +1 -1
  338. package/dist/storage/database/postgres-store.js +4 -1
  339. package/dist/storage/database/schemas.cjs +3 -4
  340. package/dist/storage/database/schemas.d.ts +8 -16
  341. package/dist/storage/database/schemas.d.ts.map +1 -1
  342. package/dist/storage/database/schemas.js +3 -4
  343. package/dist/storage/database/sqlite-store.cjs +17 -45
  344. package/dist/storage/database/sqlite-store.d.ts +3 -3
  345. package/dist/storage/database/sqlite-store.d.ts.map +1 -1
  346. package/dist/storage/database/sqlite-store.js +17 -45
  347. package/dist/storage/schemas.cjs +3 -1
  348. package/dist/storage/schemas.d.ts +16 -23
  349. package/dist/storage/schemas.d.ts.map +1 -1
  350. package/dist/storage/schemas.js +3 -1
  351. package/dist/storage/storage-manager.cjs +15 -15
  352. package/dist/storage/storage-manager.d.ts +6 -6
  353. package/dist/storage/storage-manager.d.ts.map +1 -1
  354. package/dist/storage/storage-manager.js +15 -15
  355. package/dist/systemPrompt/contributors.cjs +15 -15
  356. package/dist/systemPrompt/contributors.d.ts +5 -3
  357. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  358. package/dist/systemPrompt/contributors.js +15 -15
  359. package/dist/systemPrompt/in-built-prompts.cjs +0 -5
  360. package/dist/systemPrompt/in-built-prompts.d.ts +1 -2
  361. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  362. package/dist/systemPrompt/in-built-prompts.js +0 -4
  363. package/dist/systemPrompt/manager.cjs +31 -23
  364. package/dist/systemPrompt/manager.d.ts +5 -3
  365. package/dist/systemPrompt/manager.d.ts.map +1 -1
  366. package/dist/systemPrompt/manager.js +31 -23
  367. package/dist/systemPrompt/registry.cjs +1 -2
  368. package/dist/systemPrompt/registry.d.ts +1 -1
  369. package/dist/systemPrompt/registry.d.ts.map +1 -1
  370. package/dist/systemPrompt/registry.js +1 -2
  371. package/dist/systemPrompt/schemas.cjs +24 -18
  372. package/dist/systemPrompt/schemas.d.ts +46 -222
  373. package/dist/systemPrompt/schemas.d.ts.map +1 -1
  374. package/dist/systemPrompt/schemas.js +14 -18
  375. package/dist/telemetry/decorators.cjs +54 -15
  376. package/dist/telemetry/decorators.d.ts.map +1 -1
  377. package/dist/telemetry/decorators.js +54 -15
  378. package/dist/telemetry/utils.cjs +21 -14
  379. package/dist/telemetry/utils.d.ts +7 -3
  380. package/dist/telemetry/utils.d.ts.map +1 -1
  381. package/dist/telemetry/utils.js +21 -14
  382. package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +2 -2
  383. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +2 -1
  384. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  385. package/dist/tools/confirmation/allowed-tools-provider/factory.js +2 -2
  386. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +7 -6
  387. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +3 -1
  388. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  389. package/dist/tools/confirmation/allowed-tools-provider/storage.js +7 -6
  390. package/dist/tools/errors.cjs +2 -1
  391. package/dist/tools/errors.d.ts.map +1 -1
  392. package/dist/tools/errors.js +2 -1
  393. package/dist/tools/internal-tools/constants.cjs +2 -1
  394. package/dist/tools/internal-tools/constants.d.ts +1 -1
  395. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  396. package/dist/tools/internal-tools/constants.js +2 -1
  397. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +1 -1
  398. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +1 -1
  399. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +192 -0
  400. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +33 -0
  401. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +1 -0
  402. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +169 -0
  403. package/dist/tools/internal-tools/provider.cjs +21 -17
  404. package/dist/tools/internal-tools/provider.d.ts +3 -1
  405. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  406. package/dist/tools/internal-tools/provider.js +21 -17
  407. package/dist/tools/internal-tools/registry.cjs +5 -0
  408. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  409. package/dist/tools/internal-tools/registry.js +5 -0
  410. package/dist/tools/schemas.cjs +16 -4
  411. package/dist/tools/schemas.d.ts +21 -9
  412. package/dist/tools/schemas.d.ts.map +1 -1
  413. package/dist/tools/schemas.js +15 -4
  414. package/dist/tools/tool-manager.cjs +64 -47
  415. package/dist/tools/tool-manager.d.ts +4 -2
  416. package/dist/tools/tool-manager.d.ts.map +1 -1
  417. package/dist/tools/tool-manager.js +61 -44
  418. package/dist/tools/types.d.ts +0 -4
  419. package/dist/tools/types.d.ts.map +1 -1
  420. package/dist/utils/env-file.cjs +118 -0
  421. package/dist/utils/env-file.d.ts +5 -0
  422. package/dist/utils/env-file.d.ts.map +1 -0
  423. package/dist/utils/env-file.js +85 -0
  424. package/dist/utils/error-conversion.cjs +23 -1
  425. package/dist/utils/error-conversion.d.ts +2 -1
  426. package/dist/utils/error-conversion.d.ts.map +1 -1
  427. package/dist/utils/error-conversion.js +23 -1
  428. package/dist/utils/execution-context.d.ts.map +1 -1
  429. package/dist/utils/fs-walk.d.ts.map +1 -1
  430. package/dist/utils/index.cjs +7 -9
  431. package/dist/utils/index.d.ts +3 -4
  432. package/dist/utils/index.d.ts.map +1 -1
  433. package/dist/utils/index.js +3 -4
  434. package/dist/utils/path.cjs +22 -57
  435. package/dist/utils/path.d.ts +8 -7
  436. package/dist/utils/path.d.ts.map +1 -1
  437. package/dist/utils/path.js +21 -54
  438. package/dist/utils/result.cjs +37 -14
  439. package/dist/utils/result.d.ts.map +1 -1
  440. package/dist/utils/result.js +37 -14
  441. package/dist/utils/schema.cjs +2 -3
  442. package/dist/utils/schema.d.ts +2 -1
  443. package/dist/utils/schema.d.ts.map +1 -1
  444. package/dist/utils/schema.js +1 -2
  445. package/dist/utils/service-initializer.cjs +88 -61
  446. package/dist/utils/service-initializer.d.ts +4 -2
  447. package/dist/utils/service-initializer.d.ts.map +1 -1
  448. package/dist/utils/service-initializer.js +70 -43
  449. package/package.json +7 -3
  450. package/dist/Dexto.cjs +0 -251
  451. package/dist/Dexto.d.ts +0 -191
  452. package/dist/Dexto.d.ts.map +0 -1
  453. package/dist/Dexto.js +0 -228
  454. package/dist/agent/registry/error-codes.cjs +0 -44
  455. package/dist/agent/registry/error-codes.d.ts +0 -21
  456. package/dist/agent/registry/error-codes.d.ts.map +0 -1
  457. package/dist/agent/registry/error-codes.js +0 -21
  458. package/dist/agent/registry/errors.cjs +0 -188
  459. package/dist/agent/registry/errors.d.ts +0 -63
  460. package/dist/agent/registry/errors.d.ts.map +0 -1
  461. package/dist/agent/registry/errors.js +0 -165
  462. package/dist/agent/registry/registry.cjs +0 -479
  463. package/dist/agent/registry/registry.d.ts +0 -130
  464. package/dist/agent/registry/registry.d.ts.map +0 -1
  465. package/dist/agent/registry/registry.js +0 -453
  466. package/dist/agent/registry/types.cjs +0 -74
  467. package/dist/agent/registry/types.d.ts +0 -142
  468. package/dist/agent/registry/types.d.ts.map +0 -1
  469. package/dist/agent/registry/types.js +0 -48
  470. package/dist/agent/registry/user-registry.cjs +0 -140
  471. package/dist/agent/registry/user-registry.d.ts +0 -34
  472. package/dist/agent/registry/user-registry.d.ts.map +0 -1
  473. package/dist/agent/registry/user-registry.js +0 -105
  474. package/dist/approval/providers/event-based-approval-provider.cjs +0 -156
  475. package/dist/approval/providers/event-based-approval-provider.d.ts +0 -39
  476. package/dist/approval/providers/event-based-approval-provider.d.ts.map +0 -1
  477. package/dist/approval/providers/event-based-approval-provider.js +0 -133
  478. package/dist/approval/providers/factory.d.ts.map +0 -1
  479. package/dist/approval/providers/noop-approval-provider.cjs +0 -54
  480. package/dist/approval/providers/noop-approval-provider.d.ts +0 -18
  481. package/dist/approval/providers/noop-approval-provider.d.ts.map +0 -1
  482. package/dist/approval/providers/noop-approval-provider.js +0 -31
  483. package/dist/config/agent-resolver.cjs +0 -153
  484. package/dist/config/agent-resolver.d.ts +0 -14
  485. package/dist/config/agent-resolver.d.ts.map +0 -1
  486. package/dist/config/agent-resolver.js +0 -123
  487. package/dist/config/error-codes.cjs +0 -39
  488. package/dist/config/error-codes.d.ts +0 -16
  489. package/dist/config/error-codes.d.ts.map +0 -1
  490. package/dist/config/error-codes.js +0 -16
  491. package/dist/config/errors.cjs +0 -126
  492. package/dist/config/errors.d.ts +0 -34
  493. package/dist/config/errors.d.ts.map +0 -1
  494. package/dist/config/errors.js +0 -103
  495. package/dist/config/index.cjs +0 -26
  496. package/dist/config/index.d.ts +0 -4
  497. package/dist/config/index.d.ts.map +0 -1
  498. package/dist/config/index.js +0 -3
  499. package/dist/config/loader.cjs +0 -119
  500. package/dist/config/loader.d.ts +0 -16
  501. package/dist/config/loader.d.ts.map +0 -1
  502. package/dist/config/loader.js +0 -86
  503. package/dist/config/writer.cjs +0 -182
  504. package/dist/config/writer.d.ts +0 -35
  505. package/dist/config/writer.d.ts.map +0 -1
  506. package/dist/config/writer.js +0 -147
  507. package/dist/preferences/constants.d.ts +0 -2
  508. package/dist/preferences/constants.d.ts.map +0 -1
  509. package/dist/preferences/constants.js +0 -5
  510. package/dist/preferences/error-codes.d.ts +0 -8
  511. package/dist/preferences/error-codes.d.ts.map +0 -1
  512. package/dist/preferences/error-codes.js +0 -12
  513. package/dist/preferences/errors.cjs +0 -75
  514. package/dist/preferences/errors.d.ts +0 -18
  515. package/dist/preferences/errors.d.ts.map +0 -1
  516. package/dist/preferences/errors.js +0 -51
  517. package/dist/preferences/index.cjs +0 -55
  518. package/dist/preferences/index.d.ts +0 -6
  519. package/dist/preferences/index.d.ts.map +0 -1
  520. package/dist/preferences/index.js +0 -32
  521. package/dist/preferences/loader.cjs +0 -138
  522. package/dist/preferences/loader.d.ts +0 -51
  523. package/dist/preferences/loader.d.ts.map +0 -1
  524. package/dist/preferences/loader.js +0 -110
  525. package/dist/preferences/schemas.cjs +0 -75
  526. package/dist/preferences/schemas.d.ts +0 -110
  527. package/dist/preferences/schemas.d.ts.map +0 -1
  528. package/dist/preferences/schemas.js +0 -49
  529. package/dist/prompts/providers/file-prompt-provider.cjs +0 -399
  530. package/dist/prompts/providers/file-prompt-provider.d.ts +0 -47
  531. package/dist/prompts/providers/file-prompt-provider.d.ts.map +0 -1
  532. package/dist/prompts/providers/file-prompt-provider.js +0 -376
  533. package/dist/prompts/providers/starter-prompt-provider.cjs +0 -170
  534. package/dist/prompts/providers/starter-prompt-provider.d.ts +0 -45
  535. package/dist/prompts/providers/starter-prompt-provider.d.ts.map +0 -1
  536. package/dist/prompts/providers/starter-prompt-provider.js +0 -147
  537. package/dist/utils/api-key-store.cjs +0 -56
  538. package/dist/utils/api-key-store.d.ts +0 -24
  539. package/dist/utils/api-key-store.d.ts.map +0 -1
  540. package/dist/utils/api-key-store.js +0 -31
  541. package/dist/utils/env.cjs +0 -154
  542. package/dist/utils/env.d.ts +0 -28
  543. package/dist/utils/env.d.ts.map +0 -1
  544. package/dist/utils/env.js +0 -119
  545. package/dist/utils/port-utils.cjs +0 -37
  546. package/dist/utils/port-utils.d.ts +0 -10
  547. package/dist/utils/port-utils.d.ts.map +0 -1
  548. package/dist/utils/port-utils.js +0 -14
  549. package/dist/utils/port-utils.spec.cjs +0 -26
  550. package/dist/utils/port-utils.spec.js +0 -25
  551. /package/dist/approval/{providers/factory.cjs → factory.cjs} +0 -0
@@ -2,6 +2,7 @@ import { ChatSession } from './chat-session.js';
2
2
  import { SystemPromptManager } from '../systemPrompt/manager.js';
3
3
  import { ToolManager } from '../tools/tool-manager.js';
4
4
  import { AgentEventBus } from '../events/index.js';
5
+ import type { IDextoLogger } from '../logger/v2/types.js';
5
6
  import type { AgentStateManager } from '../agent/state-manager.js';
6
7
  import type { ValidatedLLMConfig } from '../llm/schemas.js';
7
8
  import type { StorageManager } from '../storage/index.js';
@@ -49,6 +50,7 @@ export declare class SessionManager {
49
50
  private cleanupInterval?;
50
51
  private initializationPromise;
51
52
  private readonly pendingCreations;
53
+ private logger;
52
54
  constructor(services: {
53
55
  stateManager: AgentStateManager;
54
56
  systemPromptManager: SystemPromptManager;
@@ -58,7 +60,7 @@ export declare class SessionManager {
58
60
  resourceManager: import('../resources/index.js').ResourceManager;
59
61
  pluginManager: PluginManager;
60
62
  mcpManager: import('../mcp/manager.js').MCPManager;
61
- }, config?: SessionManagerConfig);
63
+ }, config: SessionManagerConfig | undefined, logger: IDextoLogger);
62
64
  /**
63
65
  * Initialize the SessionManager with persistent storage.
64
66
  * This must be called before using any session operations.
@@ -86,13 +88,6 @@ export declare class SessionManager {
86
88
  * This method implements atomic session creation to prevent race conditions.
87
89
  */
88
90
  private createSessionInternal;
89
- /**
90
- * Gets or creates the default session.
91
- * This is used for backward compatibility with single-session operations.
92
- *
93
- * @returns The default ChatSession (creates one if it doesn't exist)
94
- */
95
- getDefaultSession(): Promise<ChatSession>;
96
91
  /**
97
92
  * Retrieves an existing session by ID.
98
93
  *
@@ -182,15 +177,6 @@ export declare class SessionManager {
182
177
  message: string;
183
178
  warnings: string[];
184
179
  }>;
185
- /**
186
- * Switch LLM for the default session.
187
- * @param newLLMConfig The new LLM configuration to apply
188
- * @returns Result object with success message and any warnings
189
- */
190
- switchLLMForDefaultSession(newLLMConfig: ValidatedLLMConfig): Promise<{
191
- message: string;
192
- warnings: string[];
193
- }>;
194
180
  /**
195
181
  * Get session statistics for monitoring and debugging.
196
182
  */
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  import "../chunk-C6A6W6XS.js";
2
2
  import { randomUUID } from "crypto";
3
3
  import { ChatSession } from "./chat-session.js";
4
- import { logger } from "../logger/index.js";
4
+ import { DextoLogComponent } from "../logger/v2/types.js";
5
5
  import { SessionError } from "./errors.js";
6
6
  class SessionManager {
7
- constructor(services, config = {}) {
7
+ constructor(services, config = {}, logger) {
8
8
  this.services = services;
9
9
  this.maxSessions = config.maxSessions ?? 100;
10
10
  this.sessionTTL = config.sessionTTL ?? 36e5;
11
+ this.logger = logger.createChild(DextoLogComponent.SESSION);
11
12
  }
12
13
  sessions = /* @__PURE__ */ new Map();
13
14
  maxSessions;
@@ -17,6 +18,7 @@ class SessionManager {
17
18
  initializationPromise;
18
19
  // Add a Map to track ongoing session creation operations to prevent race conditions
19
20
  pendingCreations = /* @__PURE__ */ new Map();
21
+ logger;
20
22
  /**
21
23
  * Initialize the SessionManager with persistent storage.
22
24
  * This must be called before using any session operations.
@@ -29,12 +31,12 @@ class SessionManager {
29
31
  const cleanupIntervalMs = Math.min(this.sessionTTL / 4, 15 * 60 * 1e3);
30
32
  this.cleanupInterval = setInterval(
31
33
  () => this.cleanupExpiredSessions().catch(
32
- (err) => logger.error(`Periodic session cleanup failed: ${err}`)
34
+ (err) => this.logger.error(`Periodic session cleanup failed: ${err}`)
33
35
  ),
34
36
  cleanupIntervalMs
35
37
  );
36
38
  this.initialized = true;
37
- logger.debug(
39
+ this.logger.debug(
38
40
  `SessionManager initialized with periodic cleanup every ${Math.round(cleanupIntervalMs / 1e3 / 60)} minutes`
39
41
  );
40
42
  }
@@ -45,7 +47,7 @@ class SessionManager {
45
47
  async restoreSessionsFromStorage() {
46
48
  try {
47
49
  const sessionKeys = await this.services.storageManager.getDatabase().list("session:");
48
- logger.debug(`Found ${sessionKeys.length} persisted sessions to restore`);
50
+ this.logger.debug(`Found ${sessionKeys.length} persisted sessions to restore`);
49
51
  for (const sessionKey of sessionKeys) {
50
52
  const sessionId = sessionKey.replace("session:", "");
51
53
  const sessionData = await this.services.storageManager.getDatabase().get(sessionKey);
@@ -53,15 +55,15 @@ class SessionManager {
53
55
  const now = Date.now();
54
56
  const lastActivity = sessionData.lastActivity;
55
57
  if (now - lastActivity <= this.sessionTTL) {
56
- logger.debug(`Session ${sessionId} restored from storage`);
58
+ this.logger.debug(`Session ${sessionId} restored from storage`);
57
59
  } else {
58
60
  await this.services.storageManager.getDatabase().delete(sessionKey);
59
- logger.debug(`Expired session ${sessionId} cleaned up during restore`);
61
+ this.logger.debug(`Expired session ${sessionId} cleaned up during restore`);
60
62
  }
61
63
  }
62
64
  }
63
65
  } catch (error) {
64
- logger.error(
66
+ this.logger.error(
65
67
  `Failed to restore sessions from storage: ${error instanceof Error ? error.message : String(error)}`
66
68
  );
67
69
  }
@@ -113,10 +115,14 @@ class SessionManager {
113
115
  const existingMetadata = await this.services.storageManager.getDatabase().get(sessionKey);
114
116
  if (existingMetadata) {
115
117
  await this.updateSessionActivity(id);
116
- const session2 = new ChatSession({ ...this.services, sessionManager: this }, id);
118
+ const session2 = new ChatSession(
119
+ { ...this.services, sessionManager: this },
120
+ id,
121
+ this.logger
122
+ );
117
123
  await session2.init();
118
124
  this.sessions.set(id, session2);
119
- logger.info(`Restored session from storage: ${id}`, null, "cyan");
125
+ this.logger.info(`Restored session from storage: ${id}`);
120
126
  return session2;
121
127
  }
122
128
  const activeSessionKeys = await this.services.storageManager.getDatabase().list("session:");
@@ -132,19 +138,21 @@ class SessionManager {
132
138
  try {
133
139
  await this.services.storageManager.getDatabase().set(sessionKey, sessionData);
134
140
  } catch (error) {
135
- logger.error(`Failed to store session metadata for ${id}:`, error);
141
+ this.logger.error(`Failed to store session metadata for ${id}:`, {
142
+ error: error instanceof Error ? error.message : String(error)
143
+ });
136
144
  throw error;
137
145
  }
138
146
  let session;
139
147
  try {
140
- session = new ChatSession({ ...this.services, sessionManager: this }, id);
148
+ session = new ChatSession({ ...this.services, sessionManager: this }, id, this.logger);
141
149
  await session.init();
142
150
  this.sessions.set(id, session);
143
151
  await this.services.storageManager.getCache().set(sessionKey, sessionData, this.sessionTTL / 1e3);
144
- logger.info(`Created new session: ${id}`, null, "green");
152
+ this.logger.info(`Created new session: ${id}`);
145
153
  return session;
146
154
  } catch (error) {
147
- logger.error(
155
+ this.logger.error(
148
156
  `Failed to initialize session ${id}: ${error instanceof Error ? error.message : String(error)}`
149
157
  );
150
158
  await this.services.storageManager.getDatabase().delete(sessionKey);
@@ -153,16 +161,6 @@ class SessionManager {
153
161
  throw SessionError.initializationFailed(id, reason);
154
162
  }
155
163
  }
156
- /**
157
- * Gets or creates the default session.
158
- * This is used for backward compatibility with single-session operations.
159
- *
160
- * @returns The default ChatSession (creates one if it doesn't exist)
161
- */
162
- async getDefaultSession() {
163
- const defaultSessionId = "default";
164
- return await this.createSession(defaultSessionId);
165
- }
166
164
  /**
167
165
  * Retrieves an existing session by ID.
168
166
  *
@@ -184,7 +182,8 @@ class SessionManager {
184
182
  if (sessionData) {
185
183
  const session = new ChatSession(
186
184
  { ...this.services, sessionManager: this },
187
- sessionId
185
+ sessionId,
186
+ this.logger
188
187
  );
189
188
  await session.init();
190
189
  this.sessions.set(sessionId, session);
@@ -208,7 +207,9 @@ class SessionManager {
208
207
  }
209
208
  const sessionKey = `session:${sessionId}`;
210
209
  await this.services.storageManager.getCache().delete(sessionKey);
211
- logger.debug(`Ended session (removed from memory, chat history preserved): ${sessionId}`);
210
+ this.logger.debug(
211
+ `Ended session (removed from memory, chat history preserved): ${sessionId}`
212
+ );
212
213
  }
213
214
  /**
214
215
  * Deletes a session and its conversation history, removing everything from memory and storage.
@@ -227,7 +228,7 @@ class SessionManager {
227
228
  const sessionKey = `session:${sessionId}`;
228
229
  await this.services.storageManager.getDatabase().delete(sessionKey);
229
230
  await this.services.storageManager.getCache().delete(sessionKey);
230
- logger.debug(`Deleted session and conversation history: ${sessionId}`);
231
+ this.logger.debug(`Deleted session and conversation history: ${sessionId}`);
231
232
  }
232
233
  /**
233
234
  * Resets the conversation history for a session while keeping the session alive.
@@ -250,7 +251,7 @@ class SessionManager {
250
251
  await this.services.storageManager.getDatabase().set(sessionKey, sessionData);
251
252
  await this.services.storageManager.getCache().set(sessionKey, sessionData, this.sessionTTL / 1e3);
252
253
  }
253
- logger.debug(`Reset session conversation: ${sessionId}`);
254
+ this.logger.debug(`Reset session conversation: ${sessionId}`);
254
255
  }
255
256
  /**
256
257
  * Lists all active session IDs.
@@ -363,13 +364,13 @@ class SessionManager {
363
364
  if (session) {
364
365
  session.dispose();
365
366
  this.sessions.delete(sessionId);
366
- logger.debug(
367
+ this.logger.debug(
367
368
  `Removed expired session from memory: ${sessionId} (chat history preserved)`
368
369
  );
369
370
  }
370
371
  }
371
372
  if (expiredSessions.length > 0) {
372
- logger.debug(
373
+ this.logger.debug(
373
374
  `Memory cleanup: removed ${expiredSessions.length} inactive sessions, chat history preserved`
374
375
  );
375
376
  }
@@ -391,13 +392,13 @@ class SessionManager {
391
392
  await session.switchLLM(newLLMConfig);
392
393
  } catch (error) {
393
394
  failedSessions.push(sId);
394
- logger.warn(
395
+ this.logger.warn(
395
396
  `Error switching LLM for session ${sId}: ${error instanceof Error ? error.message : String(error)}`
396
397
  );
397
398
  }
398
399
  }
399
400
  }
400
- this.services.agentEventBus.emit("dexto:llmSwitched", {
401
+ this.services.agentEventBus.emit("llm:switched", {
401
402
  newConfig: newLLMConfig,
402
403
  router: newLLMConfig.router,
403
404
  historyRetained: true,
@@ -419,7 +420,7 @@ class SessionManager {
419
420
  throw SessionError.notFound(sessionId);
420
421
  }
421
422
  await session.switchLLM(newLLMConfig);
422
- this.services.agentEventBus.emit("dexto:llmSwitched", {
423
+ this.services.agentEventBus.emit("llm:switched", {
423
424
  newConfig: newLLMConfig,
424
425
  router: newLLMConfig.router,
425
426
  historyRetained: true,
@@ -428,23 +429,6 @@ class SessionManager {
428
429
  const message = `Successfully switched to ${newLLMConfig.provider}/${newLLMConfig.model} using ${newLLMConfig.router} router for session ${sessionId}`;
429
430
  return { message, warnings: [] };
430
431
  }
431
- /**
432
- * Switch LLM for the default session.
433
- * @param newLLMConfig The new LLM configuration to apply
434
- * @returns Result object with success message and any warnings
435
- */
436
- async switchLLMForDefaultSession(newLLMConfig) {
437
- const defaultSession = await this.getDefaultSession();
438
- await defaultSession.switchLLM(newLLMConfig);
439
- this.services.agentEventBus.emit("dexto:llmSwitched", {
440
- newConfig: newLLMConfig,
441
- router: newLLMConfig.router,
442
- historyRetained: true,
443
- sessionIds: [defaultSession.id]
444
- });
445
- const message = `Successfully switched to ${newLLMConfig.provider}/${newLLMConfig.model} using ${newLLMConfig.router} router`;
446
- return { message, warnings: [] };
447
- }
448
432
  /**
449
433
  * Get session statistics for monitoring and debugging.
450
434
  */
@@ -470,21 +454,21 @@ class SessionManager {
470
454
  if (this.cleanupInterval) {
471
455
  clearInterval(this.cleanupInterval);
472
456
  delete this.cleanupInterval;
473
- logger.debug("Periodic session cleanup stopped");
457
+ this.logger.debug("Periodic session cleanup stopped");
474
458
  }
475
459
  const sessionIds = Array.from(this.sessions.keys());
476
460
  for (const sessionId of sessionIds) {
477
461
  try {
478
462
  await this.endSession(sessionId);
479
463
  } catch (error) {
480
- logger.error(
464
+ this.logger.error(
481
465
  `Failed to cleanup session ${sessionId}: ${error instanceof Error ? error.message : String(error)}`
482
466
  );
483
467
  }
484
468
  }
485
469
  this.sessions.clear();
486
470
  this.initialized = false;
487
- logger.debug("SessionManager cleanup completed");
471
+ this.logger.debug("SessionManager cleanup completed");
488
472
  }
489
473
  }
490
474
  export {
@@ -25,7 +25,7 @@ module.exports = __toCommonJS(title_generator_exports);
25
25
  var import_factory = require("../llm/services/factory.cjs");
26
26
  var import_events = require("../events/index.cjs");
27
27
  var import_memory = require("./history/memory.js");
28
- async function generateSessionTitle(config, router, toolManager, systemPromptManager, resourceManager, userText, opts = {}) {
28
+ async function generateSessionTitle(config, router, toolManager, systemPromptManager, resourceManager, userText, logger, opts = {}) {
29
29
  const timeoutMs = opts.timeoutMs;
30
30
  const controller = timeoutMs !== void 0 ? new AbortController() : void 0;
31
31
  let timer;
@@ -43,7 +43,8 @@ async function generateSessionTitle(config, router, toolManager, systemPromptMan
43
43
  history,
44
44
  bus,
45
45
  `titlegen-${Math.random().toString(36).slice(2)}`,
46
- resourceManager
46
+ resourceManager,
47
+ logger
47
48
  );
48
49
  const instruction = [
49
50
  "Generate a short conversation title from the following user message.",
@@ -3,6 +3,7 @@ import type { LLMRouter } from '../llm/types.js';
3
3
  import type { ToolManager } from '../tools/tool-manager.js';
4
4
  import type { SystemPromptManager } from '../systemPrompt/manager.js';
5
5
  import type { ResourceManager } from '../resources/index.js';
6
+ import type { IDextoLogger } from '../logger/v2/types.js';
6
7
  export interface GenerateSessionTitleResult {
7
8
  title?: string;
8
9
  error?: string;
@@ -12,7 +13,7 @@ export interface GenerateSessionTitleResult {
12
13
  * Generate a concise title for a chat based on the first user message.
13
14
  * Runs a lightweight, isolated LLM completion that does not touch real history.
14
15
  */
15
- export declare function generateSessionTitle(config: ValidatedLLMConfig, router: LLMRouter, toolManager: ToolManager, systemPromptManager: SystemPromptManager, resourceManager: ResourceManager, userText: string, opts?: {
16
+ export declare function generateSessionTitle(config: ValidatedLLMConfig, router: LLMRouter, toolManager: ToolManager, systemPromptManager: SystemPromptManager, resourceManager: ResourceManager, userText: string, logger: IDextoLogger, opts?: {
16
17
  timeoutMs?: number;
17
18
  }): Promise<GenerateSessionTitleResult>;
18
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"title-generator.d.ts","sourceRoot":"","sources":["../../src/session/title-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAKhE,MAAM,WAAW,0BAA0B;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACtC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAClC,OAAO,CAAC,0BAA0B,CAAC,CAsDrC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA8BzE"}
1
+ {"version":3,"file":"title-generator.d.ts","sourceRoot":"","sources":["../../src/session/title-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAK7D,MAAM,WAAW,0BAA0B;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACtC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,YAAY,EACpB,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAClC,OAAO,CAAC,0BAA0B,CAAC,CAuDrC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA8BzE"}
@@ -2,7 +2,7 @@ import "../chunk-C6A6W6XS.js";
2
2
  import { createLLMService } from "../llm/services/factory.js";
3
3
  import { SessionEventBus } from "../events/index.js";
4
4
  import { MemoryHistoryProvider } from "./history/memory.js";
5
- async function generateSessionTitle(config, router, toolManager, systemPromptManager, resourceManager, userText, opts = {}) {
5
+ async function generateSessionTitle(config, router, toolManager, systemPromptManager, resourceManager, userText, logger, opts = {}) {
6
6
  const timeoutMs = opts.timeoutMs;
7
7
  const controller = timeoutMs !== void 0 ? new AbortController() : void 0;
8
8
  let timer;
@@ -20,7 +20,8 @@ async function generateSessionTitle(config, router, toolManager, systemPromptMan
20
20
  history,
21
21
  bus,
22
22
  `titlegen-${Math.random().toString(36).slice(2)}`,
23
- resourceManager
23
+ resourceManager,
24
+ logger
24
25
  );
25
26
  const instruction = [
26
27
  "Generate a short conversation title from the following user message.",
@@ -22,26 +22,17 @@ __export(factory_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(factory_exports);
24
24
  var import_local_blob_store = require("./local-blob-store.js");
25
- var import_logger = require("../../logger/index.js");
26
- function createBlobStore(config, agentId) {
25
+ var import_memory_blob_store = require("./memory-blob-store.js");
26
+ function createBlobStore(config, logger) {
27
27
  switch (config.type) {
28
- case "local":
29
- import_logger.logger.info("Using local file-based blob store");
30
- return new import_local_blob_store.LocalBlobStore(config, agentId);
31
28
  case "in-memory":
32
- default: {
33
- import_logger.logger.info(
34
- "In-memory blob store not implemented, defaulting to local file-based storage"
35
- );
36
- const localConfig = {
37
- type: "local",
38
- maxBlobSize: config.maxBlobSize,
39
- maxTotalSize: config.maxTotalSize,
40
- cleanupAfterDays: 30
41
- // Default for in-memory fallback
42
- };
43
- return new import_local_blob_store.LocalBlobStore(localConfig, agentId);
44
- }
29
+ logger.info("Using in-memory blob store");
30
+ return new import_memory_blob_store.InMemoryBlobStore(config, logger);
31
+ case "local":
32
+ logger.info("Using local file-based blob store");
33
+ return new import_local_blob_store.LocalBlobStore(config, logger);
34
+ default:
35
+ throw new Error(`Unknown blob store type: ${config.type}`);
45
36
  }
46
37
  }
47
38
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,10 +1,11 @@
1
1
  import type { BlobStore } from './types.js';
2
- import type { BlobStoreConfig } from '../schemas.js';
2
+ import type { BlobStoreConfig } from './schemas.js';
3
+ import type { IDextoLogger } from '../../logger/v2/types.js';
3
4
  /**
4
5
  * Create a blob store based on configuration.
5
- * Note: In-memory blob store defaults to local file-based storage.
6
+ * Blob paths are provided via CLI enrichment layer for local storage.
6
7
  * @param config Blob store configuration
7
- * @param agentId Optional agent identifier for per-agent blob isolation
8
+ * @param logger Logger instance for logging
8
9
  */
9
- export declare function createBlobStore(config: BlobStoreConfig, agentId?: string): BlobStore;
10
+ export declare function createBlobStore(config: BlobStoreConfig, logger: IDextoLogger): BlobStore;
10
11
  //# sourceMappingURL=factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/storage/blob/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,eAAe,CAAC;AAI3E;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAqBpF"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/storage/blob/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,GAAG,SAAS,CAaxF"}
@@ -1,25 +1,16 @@
1
1
  import "../../chunk-C6A6W6XS.js";
2
2
  import { LocalBlobStore } from "./local-blob-store.js";
3
- import { logger } from "../../logger/index.js";
4
- function createBlobStore(config, agentId) {
3
+ import { InMemoryBlobStore } from "./memory-blob-store.js";
4
+ function createBlobStore(config, logger) {
5
5
  switch (config.type) {
6
+ case "in-memory":
7
+ logger.info("Using in-memory blob store");
8
+ return new InMemoryBlobStore(config, logger);
6
9
  case "local":
7
10
  logger.info("Using local file-based blob store");
8
- return new LocalBlobStore(config, agentId);
9
- case "in-memory":
10
- default: {
11
- logger.info(
12
- "In-memory blob store not implemented, defaulting to local file-based storage"
13
- );
14
- const localConfig = {
15
- type: "local",
16
- maxBlobSize: config.maxBlobSize,
17
- maxTotalSize: config.maxTotalSize,
18
- cleanupAfterDays: 30
19
- // Default for in-memory fallback
20
- };
21
- return new LocalBlobStore(localConfig, agentId);
22
- }
11
+ return new LocalBlobStore(config, logger);
12
+ default:
13
+ throw new Error(`Unknown blob store type: ${config.type}`);
23
14
  }
24
15
  }
25
16
  export {
@@ -35,8 +35,7 @@ var import_fs = require("fs");
35
35
  var import_path = __toESM(require("path"), 1);
36
36
  var import_crypto = require("crypto");
37
37
  var import_url = require("url");
38
- var import_logger = require("../../logger/index.js");
39
- var import_path2 = require("../../utils/path.js");
38
+ var import_types = require("../../logger/v2/types.js");
40
39
  var import_errors = require("../errors.js");
41
40
  class LocalBlobStore {
42
41
  config;
@@ -45,27 +44,13 @@ class LocalBlobStore {
45
44
  statsCache = null;
46
45
  statsCachePromise = null;
47
46
  lastStatsRefresh = 0;
48
- agentId;
47
+ logger;
49
48
  static STATS_REFRESH_INTERVAL_MS = 6e4;
50
49
  // 1 minute
51
- constructor(config, agentId) {
50
+ constructor(config, logger) {
52
51
  this.config = config;
53
- if (agentId) {
54
- const trimmed = agentId.trim();
55
- if (!trimmed) {
56
- throw import_errors.StorageError.blobInvalidConfig("agentId cannot be empty or whitespace-only");
57
- }
58
- if (!/^[a-zA-Z0-9_-]+$/.test(trimmed)) {
59
- throw import_errors.StorageError.blobInvalidConfig(
60
- "agentId must contain only alphanumeric characters, hyphens, and underscores"
61
- );
62
- }
63
- this.agentId = trimmed;
64
- } else {
65
- this.agentId = agentId;
66
- }
67
- const blobSubdir = this.agentId ? `blobs-${this.agentId}` : "blobs";
68
- this.storePath = config.storePath || (0, import_path2.getDextoPath)("data", blobSubdir);
52
+ this.storePath = config.storePath;
53
+ this.logger = logger.createChild(import_types.DextoLogComponent.STORAGE);
69
54
  }
70
55
  async connect() {
71
56
  if (this.connected) return;
@@ -74,14 +59,14 @@ class LocalBlobStore {
74
59
  await this.refreshStatsCache();
75
60
  this.lastStatsRefresh = Date.now();
76
61
  this.connected = true;
77
- import_logger.logger.debug(`LocalBlobStore connected at: ${this.storePath}`);
62
+ this.logger.debug(`LocalBlobStore connected at: ${this.storePath}`);
78
63
  } catch (error) {
79
64
  throw import_errors.StorageError.blobOperationFailed("connect", "local", error);
80
65
  }
81
66
  }
82
67
  async disconnect() {
83
68
  this.connected = false;
84
- import_logger.logger.debug("LocalBlobStore disconnected");
69
+ this.logger.debug("LocalBlobStore disconnected");
85
70
  }
86
71
  /**
87
72
  * Normalize metadata after JSON parsing to ensure createdAt is a Date object
@@ -114,7 +99,9 @@ class LocalBlobStore {
114
99
  const existingMeta = await import_fs.promises.readFile(metaPath, "utf-8");
115
100
  const parsed = JSON.parse(existingMeta);
116
101
  const existingMetadata = this.normalizeMetadata(parsed);
117
- import_logger.logger.debug(`Blob ${id} already exists, returning existing reference (deduplication)`);
102
+ this.logger.debug(
103
+ `Blob ${id} already exists, returning existing reference (deduplication)`
104
+ );
118
105
  return {
119
106
  id,
120
107
  uri: `blob:${id}`,
@@ -146,7 +133,9 @@ class LocalBlobStore {
146
133
  import_fs.promises.writeFile(blobPath, buffer),
147
134
  import_fs.promises.writeFile(metaPath, JSON.stringify(storedMetadata, null, 2))
148
135
  ]);
149
- import_logger.logger.debug(`Stored blob ${id} (${buffer.length} bytes, ${storedMetadata.mimeType})`);
136
+ this.logger.debug(
137
+ `Stored blob ${id} (${buffer.length} bytes, ${storedMetadata.mimeType})`
138
+ );
150
139
  this.updateStatsCacheAfterStore(buffer.length);
151
140
  return {
152
141
  id,
@@ -235,7 +224,7 @@ class LocalBlobStore {
235
224
  const parsed = JSON.parse(metaContent);
236
225
  const metadata = this.normalizeMetadata(parsed);
237
226
  await Promise.all([import_fs.promises.unlink(blobPath), import_fs.promises.unlink(metaPath)]);
238
- import_logger.logger.debug(`Deleted blob: ${id}`);
227
+ this.logger.debug(`Deleted blob: ${id}`);
239
228
  this.updateStatsCacheAfterDelete(metadata.size);
240
229
  } catch (error) {
241
230
  if (error instanceof Error && "code" in error && error.code === "ENOENT") {
@@ -271,14 +260,16 @@ class LocalBlobStore {
271
260
  ]);
272
261
  deletedCount++;
273
262
  this.updateStatsCacheAfterDelete(metadata.size);
274
- import_logger.logger.debug(`Cleaned up old blob: ${id}`);
263
+ this.logger.debug(`Cleaned up old blob: ${id}`);
275
264
  }
276
265
  } catch (error) {
277
- import_logger.logger.warn(`Failed to process blob metadata ${metaFile}: ${String(error)}`);
266
+ this.logger.warn(
267
+ `Failed to process blob metadata ${metaFile}: ${String(error)}`
268
+ );
278
269
  }
279
270
  }
280
271
  if (deletedCount > 0) {
281
- import_logger.logger.info(`Blob cleanup: removed ${deletedCount} old blobs`);
272
+ this.logger.info(`Blob cleanup: removed ${deletedCount} old blobs`);
282
273
  }
283
274
  return deletedCount;
284
275
  } catch (error) {
@@ -321,12 +312,14 @@ class LocalBlobStore {
321
312
  metadata
322
313
  });
323
314
  } catch (error) {
324
- import_logger.logger.warn(`Failed to process blob metadata ${metaFile}: ${String(error)}`);
315
+ this.logger.warn(
316
+ `Failed to process blob metadata ${metaFile}: ${String(error)}`
317
+ );
325
318
  }
326
319
  }
327
320
  return blobs;
328
321
  } catch (error) {
329
- import_logger.logger.warn(`Failed to list blobs: ${String(error)}`);
322
+ this.logger.warn(`Failed to list blobs: ${String(error)}`);
330
323
  return [];
331
324
  }
332
325
  }
@@ -358,13 +351,13 @@ class LocalBlobStore {
358
351
  const stat = await import_fs.promises.stat(import_path.default.join(this.storePath, datFile));
359
352
  stats.totalSize += stat.size;
360
353
  } catch (error) {
361
- import_logger.logger.debug(
354
+ this.logger.debug(
362
355
  `Skipping size calculation for ${datFile}: ${error instanceof Error ? error.message : String(error)}`
363
356
  );
364
357
  }
365
358
  }
366
359
  } catch (error) {
367
- import_logger.logger.warn(`Failed to refresh blob stats cache: ${String(error)}`);
360
+ this.logger.warn(`Failed to refresh blob stats cache: ${String(error)}`);
368
361
  }
369
362
  this.statsCache = stats;
370
363
  }
@@ -1,3 +1,4 @@
1
+ import type { IDextoLogger } from '../../logger/v2/types.js';
1
2
  import type { BlobStore, BlobInput, BlobMetadata, BlobReference, BlobData, BlobStats } from './types.js';
2
3
  import type { LocalBlobStoreConfig } from './schemas.js';
3
4
  /**
@@ -14,9 +15,9 @@ export declare class LocalBlobStore implements BlobStore {
14
15
  private statsCache;
15
16
  private statsCachePromise;
16
17
  private lastStatsRefresh;
17
- private agentId;
18
+ private logger;
18
19
  private static readonly STATS_REFRESH_INTERVAL_MS;
19
- constructor(config: LocalBlobStoreConfig, agentId?: string);
20
+ constructor(config: LocalBlobStoreConfig, logger: IDextoLogger);
20
21
  connect(): Promise<void>;
21
22
  disconnect(): Promise<void>;
22
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"local-blob-store.d.ts","sourceRoot":"","sources":["../../../src/storage/blob/local-blob-store.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,SAAS,EAEZ,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD;;;;;;GAMG;AACH,qBAAa,cAAe,YAAW,SAAS;IAC5C,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAqD;IACvE,OAAO,CAAC,iBAAiB,CAA8B;IACvD,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,OAAO,CAAqB;IAEpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAS;gBAE9C,MAAM,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,MAAM;IAwBpD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQzB,WAAW,IAAI,OAAO;IAItB,YAAY,IAAI,MAAM;IAIhB,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAE,YAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAqF5E,QAAQ,CACV,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAgB,GACnE,OAAO,CAAC,QAAQ,CAAC;IAsDd,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB3C,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBxC,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IA+C1C,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;IAepC,cAAc,IAAI,MAAM,GAAG,SAAS;IAI9B,SAAS,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAmC7B,gBAAgB;YAsBhB,iBAAiB;IAwB/B,OAAO,CAAC,0BAA0B;IASlC,OAAO,CAAC,2BAA2B;IASnC;;OAEG;YACW,aAAa;IAgD3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,cAAc;IAiDtB;;OAEG;IACH,OAAO,CAAC,YAAY;CAiBvB"}
1
+ {"version":3,"file":"local-blob-store.d.ts","sourceRoot":"","sources":["../../../src/storage/blob/local-blob-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,KAAK,EACR,SAAS,EACT,SAAS,EACT,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,SAAS,EAEZ,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD;;;;;;GAMG;AACH,qBAAa,cAAe,YAAW,SAAS;IAC5C,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAqD;IACvE,OAAO,CAAC,iBAAiB,CAA8B;IACvD,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,MAAM,CAAe;IAE7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAS;gBAE9C,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,YAAY;IAOxD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQzB,WAAW,IAAI,OAAO;IAItB,YAAY,IAAI,MAAM;IAIhB,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAE,YAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAyF5E,QAAQ,CACV,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAgB,GACnE,OAAO,CAAC,QAAQ,CAAC;IAsDd,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB3C,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBxC,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAiD1C,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;IAepC,cAAc,IAAI,MAAM,GAAG,SAAS;IAI9B,SAAS,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAqC7B,gBAAgB;YAsBhB,iBAAiB;IAwB/B,OAAO,CAAC,0BAA0B;IASlC,OAAO,CAAC,2BAA2B;IASnC;;OAEG;YACW,aAAa;IAgD3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,cAAc;IAiDtB;;OAEG;IACH,OAAO,CAAC,YAAY;CAiBvB"}