@wirecat/cli-core 0.270.0 → 0.272.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 (668) hide show
  1. package/dist/cli/bot/admins.d.ts.map +1 -1
  2. package/dist/cli/bot/admins.js +5 -5
  3. package/dist/cli/bot/admins.js.map +1 -1
  4. package/dist/cli/bot/api.d.ts.map +1 -1
  5. package/dist/cli/bot/api.js +5 -1
  6. package/dist/cli/bot/api.js.map +1 -1
  7. package/dist/cli/bot/command.d.ts.map +1 -1
  8. package/dist/cli/bot/command.js +15 -18
  9. package/dist/cli/bot/command.js.map +1 -1
  10. package/dist/cli/bot/mcp.d.ts.map +1 -1
  11. package/dist/cli/bot/mcp.js +4 -2
  12. package/dist/cli/bot/mcp.js.map +1 -1
  13. package/dist/cli/bot/messages.d.ts.map +1 -1
  14. package/dist/cli/bot/messages.js +7 -6
  15. package/dist/cli/bot/messages.js.map +1 -1
  16. package/dist/cli/bot/moderation.d.ts.map +1 -1
  17. package/dist/cli/bot/moderation.js +5 -5
  18. package/dist/cli/bot/moderation.js.map +1 -1
  19. package/dist/cli/bot/people.d.ts.map +1 -1
  20. package/dist/cli/bot/people.js +6 -4
  21. package/dist/cli/bot/people.js.map +1 -1
  22. package/dist/cli/bot/port.d.ts +1 -1
  23. package/dist/cli/bot/port.d.ts.map +1 -1
  24. package/dist/cli/bot/setup.d.ts.map +1 -1
  25. package/dist/cli/bot/setup.js +8 -9
  26. package/dist/cli/bot/setup.js.map +1 -1
  27. package/dist/cli/bot/store.d.ts.map +1 -1
  28. package/dist/cli/bot/store.js +3 -2
  29. package/dist/cli/bot/store.js.map +1 -1
  30. package/dist/cli/bot/watch.d.ts.map +1 -1
  31. package/dist/cli/bot/watch.js +3 -1
  32. package/dist/cli/bot/watch.js.map +1 -1
  33. package/dist/cli/command-contract.d.ts +2 -2
  34. package/dist/cli/command-contract.d.ts.map +1 -1
  35. package/dist/cli/command-contract.js +2 -4
  36. package/dist/cli/command-contract.js.map +1 -1
  37. package/dist/cli/commands-command.d.ts +1 -1
  38. package/dist/cli/commands-command.d.ts.map +1 -1
  39. package/dist/cli/commands-command.js +8 -7
  40. package/dist/cli/commands-command.js.map +1 -1
  41. package/dist/cli/config-command.d.ts.map +1 -1
  42. package/dist/cli/config-command.js +4 -4
  43. package/dist/cli/config-command.js.map +1 -1
  44. package/dist/cli/effects.d.ts +20 -0
  45. package/dist/cli/effects.d.ts.map +1 -0
  46. package/dist/cli/effects.js +28 -0
  47. package/dist/cli/effects.js.map +1 -0
  48. package/dist/cli/envelope.d.ts +68 -23
  49. package/dist/cli/envelope.d.ts.map +1 -1
  50. package/dist/cli/envelope.js +36 -10
  51. package/dist/cli/envelope.js.map +1 -1
  52. package/dist/cli/index.d.ts +7 -4
  53. package/dist/cli/index.d.ts.map +1 -1
  54. package/dist/cli/index.js +6 -3
  55. package/dist/cli/index.js.map +1 -1
  56. package/dist/cli/messenger/account-command.d.ts.map +1 -1
  57. package/dist/cli/messenger/account-command.js +4 -3
  58. package/dist/cli/messenger/account-command.js.map +1 -1
  59. package/dist/cli/messenger/account-sessions-command.d.ts.map +1 -1
  60. package/dist/cli/messenger/account-sessions-command.js +4 -3
  61. package/dist/cli/messenger/account-sessions-command.js.map +1 -1
  62. package/dist/cli/messenger/admin-commands.d.ts.map +1 -1
  63. package/dist/cli/messenger/admin-commands.js +15 -15
  64. package/dist/cli/messenger/admin-commands.js.map +1 -1
  65. package/dist/cli/messenger/admin-contacts-command.d.ts.map +1 -1
  66. package/dist/cli/messenger/admin-contacts-command.js +4 -3
  67. package/dist/cli/messenger/admin-contacts-command.js.map +1 -1
  68. package/dist/cli/messenger/admin-folders-command.d.ts.map +1 -1
  69. package/dist/cli/messenger/admin-folders-command.js +8 -7
  70. package/dist/cli/messenger/admin-folders-command.js.map +1 -1
  71. package/dist/cli/messenger/admin-moderation-command.d.ts.map +1 -1
  72. package/dist/cli/messenger/admin-moderation-command.js +5 -5
  73. package/dist/cli/messenger/admin-moderation-command.js.map +1 -1
  74. package/dist/cli/messenger/admin-statistics-command.d.ts.map +1 -1
  75. package/dist/cli/messenger/admin-statistics-command.js +5 -1
  76. package/dist/cli/messenger/admin-statistics-command.js.map +1 -1
  77. package/dist/cli/messenger/archive-commands.d.ts.map +1 -1
  78. package/dist/cli/messenger/archive-commands.js +5 -3
  79. package/dist/cli/messenger/archive-commands.js.map +1 -1
  80. package/dist/cli/messenger/attachments-command.d.ts.map +1 -1
  81. package/dist/cli/messenger/attachments-command.js +6 -5
  82. package/dist/cli/messenger/attachments-command.js.map +1 -1
  83. package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
  84. package/dist/cli/messenger/backfill-command.js +7 -9
  85. package/dist/cli/messenger/backfill-command.js.map +1 -1
  86. package/dist/cli/messenger/chats-bots-command.d.ts.map +1 -1
  87. package/dist/cli/messenger/chats-bots-command.js +3 -2
  88. package/dist/cli/messenger/chats-bots-command.js.map +1 -1
  89. package/dist/cli/messenger/chats-command.d.ts.map +1 -1
  90. package/dist/cli/messenger/chats-command.js +6 -7
  91. package/dist/cli/messenger/chats-command.js.map +1 -1
  92. package/dist/cli/messenger/chats-documents-command.d.ts.map +1 -1
  93. package/dist/cli/messenger/chats-documents-command.js +3 -1
  94. package/dist/cli/messenger/chats-documents-command.js.map +1 -1
  95. package/dist/cli/messenger/chats-members-command.d.ts.map +1 -1
  96. package/dist/cli/messenger/chats-members-command.js +7 -6
  97. package/dist/cli/messenger/chats-members-command.js.map +1 -1
  98. package/dist/cli/messenger/chats-read-command.d.ts.map +1 -1
  99. package/dist/cli/messenger/chats-read-command.js +2 -1
  100. package/dist/cli/messenger/chats-read-command.js.map +1 -1
  101. package/dist/cli/messenger/chats-stats-command.d.ts.map +1 -1
  102. package/dist/cli/messenger/chats-stats-command.js +2 -1
  103. package/dist/cli/messenger/chats-stats-command.js.map +1 -1
  104. package/dist/cli/messenger/chats-tracking-command.d.ts.map +1 -1
  105. package/dist/cli/messenger/chats-tracking-command.js +5 -6
  106. package/dist/cli/messenger/chats-tracking-command.js.map +1 -1
  107. package/dist/cli/messenger/complete-command.d.ts.map +1 -1
  108. package/dist/cli/messenger/complete-command.js +3 -2
  109. package/dist/cli/messenger/complete-command.js.map +1 -1
  110. package/dist/cli/messenger/contacts-command.d.ts.map +1 -1
  111. package/dist/cli/messenger/contacts-command.js +12 -18
  112. package/dist/cli/messenger/contacts-command.js.map +1 -1
  113. package/dist/cli/messenger/context.d.ts +1 -1
  114. package/dist/cli/messenger/context.d.ts.map +1 -1
  115. package/dist/cli/messenger/context.js.map +1 -1
  116. package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
  117. package/dist/cli/messenger/conversations-command.js +19 -29
  118. package/dist/cli/messenger/conversations-command.js.map +1 -1
  119. package/dist/cli/messenger/counters-command.d.ts.map +1 -1
  120. package/dist/cli/messenger/counters-command.js +3 -2
  121. package/dist/cli/messenger/counters-command.js.map +1 -1
  122. package/dist/cli/messenger/doctor-command.d.ts.map +1 -1
  123. package/dist/cli/messenger/doctor-command.js +7 -4
  124. package/dist/cli/messenger/doctor-command.js.map +1 -1
  125. package/dist/cli/messenger/download-command.d.ts.map +1 -1
  126. package/dist/cli/messenger/download-command.js +3 -2
  127. package/dist/cli/messenger/download-command.js.map +1 -1
  128. package/dist/cli/messenger/flood-command.d.ts.map +1 -1
  129. package/dist/cli/messenger/flood-command.js +3 -1
  130. package/dist/cli/messenger/flood-command.js.map +1 -1
  131. package/dist/cli/messenger/flooded.d.ts +1 -1
  132. package/dist/cli/messenger/flooded.d.ts.map +1 -1
  133. package/dist/cli/messenger/flooded.js +1 -1
  134. package/dist/cli/messenger/flooded.js.map +1 -1
  135. package/dist/cli/messenger/gaps-command.d.ts.map +1 -1
  136. package/dist/cli/messenger/gaps-command.js +4 -4
  137. package/dist/cli/messenger/gaps-command.js.map +1 -1
  138. package/dist/cli/messenger/guard-commands.d.ts.map +1 -1
  139. package/dist/cli/messenger/guard-commands.js +6 -6
  140. package/dist/cli/messenger/guard-commands.js.map +1 -1
  141. package/dist/cli/messenger/images-command.d.ts.map +1 -1
  142. package/dist/cli/messenger/images-command.js +3 -2
  143. package/dist/cli/messenger/images-command.js.map +1 -1
  144. package/dist/cli/messenger/inbox.d.ts.map +1 -1
  145. package/dist/cli/messenger/inbox.js +6 -1
  146. package/dist/cli/messenger/inbox.js.map +1 -1
  147. package/dist/cli/messenger/mcp-command.d.ts.map +1 -1
  148. package/dist/cli/messenger/mcp-command.js +5 -4
  149. package/dist/cli/messenger/mcp-command.js.map +1 -1
  150. package/dist/cli/messenger/mentions-command.d.ts.map +1 -1
  151. package/dist/cli/messenger/mentions-command.js +23 -12
  152. package/dist/cli/messenger/mentions-command.js.map +1 -1
  153. package/dist/cli/messenger/message-items.d.ts +1 -1
  154. package/dist/cli/messenger/message-items.d.ts.map +1 -1
  155. package/dist/cli/messenger/message-writes.d.ts +5 -6
  156. package/dist/cli/messenger/message-writes.d.ts.map +1 -1
  157. package/dist/cli/messenger/message-writes.js +7 -8
  158. package/dist/cli/messenger/message-writes.js.map +1 -1
  159. package/dist/cli/messenger/messages-command.d.ts.map +1 -1
  160. package/dist/cli/messenger/messages-command.js +5 -5
  161. package/dist/cli/messenger/messages-command.js.map +1 -1
  162. package/dist/cli/messenger/messages-comments-command.d.ts.map +1 -1
  163. package/dist/cli/messenger/messages-comments-command.js +3 -1
  164. package/dist/cli/messenger/messages-comments-command.js.map +1 -1
  165. package/dist/cli/messenger/messages-delete-command.d.ts.map +1 -1
  166. package/dist/cli/messenger/messages-delete-command.js +2 -1
  167. package/dist/cli/messenger/messages-delete-command.js.map +1 -1
  168. package/dist/cli/messenger/messages-edit-command.d.ts.map +1 -1
  169. package/dist/cli/messenger/messages-edit-command.js +2 -1
  170. package/dist/cli/messenger/messages-edit-command.js.map +1 -1
  171. package/dist/cli/messenger/messages-evidence-command.d.ts.map +1 -1
  172. package/dist/cli/messenger/messages-evidence-command.js +3 -1
  173. package/dist/cli/messenger/messages-evidence-command.js.map +1 -1
  174. package/dist/cli/messenger/messages-forward-command.d.ts.map +1 -1
  175. package/dist/cli/messenger/messages-forward-command.js +4 -3
  176. package/dist/cli/messenger/messages-forward-command.js.map +1 -1
  177. package/dist/cli/messenger/messages-link-command.d.ts.map +1 -1
  178. package/dist/cli/messenger/messages-link-command.js +2 -1
  179. package/dist/cli/messenger/messages-link-command.js.map +1 -1
  180. package/dist/cli/messenger/messages-pin-command.d.ts.map +1 -1
  181. package/dist/cli/messenger/messages-pin-command.js +3 -2
  182. package/dist/cli/messenger/messages-pin-command.js.map +1 -1
  183. package/dist/cli/messenger/messages-press-command.d.ts.map +1 -1
  184. package/dist/cli/messenger/messages-press-command.js +2 -1
  185. package/dist/cli/messenger/messages-press-command.js.map +1 -1
  186. package/dist/cli/messenger/messages-scheduled-command.d.ts.map +1 -1
  187. package/dist/cli/messenger/messages-scheduled-command.js +3 -2
  188. package/dist/cli/messenger/messages-scheduled-command.js.map +1 -1
  189. package/dist/cli/messenger/messages-search-command.d.ts.map +1 -1
  190. package/dist/cli/messenger/messages-search-command.js +3 -0
  191. package/dist/cli/messenger/messages-search-command.js.map +1 -1
  192. package/dist/cli/messenger/messages-send-command.d.ts.map +1 -1
  193. package/dist/cli/messenger/messages-send-command.js +4 -3
  194. package/dist/cli/messenger/messages-send-command.js.map +1 -1
  195. package/dist/cli/messenger/messages-stats-command.d.ts.map +1 -1
  196. package/dist/cli/messenger/messages-stats-command.js +2 -1
  197. package/dist/cli/messenger/messages-stats-command.js.map +1 -1
  198. package/dist/cli/messenger/metadata-command.d.ts.map +1 -1
  199. package/dist/cli/messenger/metadata-command.js +3 -3
  200. package/dist/cli/messenger/metadata-command.js.map +1 -1
  201. package/dist/cli/messenger/models-command.d.ts.map +1 -1
  202. package/dist/cli/messenger/models-command.js +9 -9
  203. package/dist/cli/messenger/models-command.js.map +1 -1
  204. package/dist/cli/messenger/observed.d.ts +1 -1
  205. package/dist/cli/messenger/observed.d.ts.map +1 -1
  206. package/dist/cli/messenger/observed.js +1 -1
  207. package/dist/cli/messenger/observed.js.map +1 -1
  208. package/dist/cli/messenger/official-stats-command.d.ts.map +1 -1
  209. package/dist/cli/messenger/official-stats-command.js +3 -2
  210. package/dist/cli/messenger/official-stats-command.js.map +1 -1
  211. package/dist/cli/messenger/polls-command.d.ts.map +1 -1
  212. package/dist/cli/messenger/polls-command.js +9 -9
  213. package/dist/cli/messenger/polls-command.js.map +1 -1
  214. package/dist/cli/messenger/private-people-command.d.ts.map +1 -1
  215. package/dist/cli/messenger/private-people-command.js +10 -6
  216. package/dist/cli/messenger/private-people-command.js.map +1 -1
  217. package/dist/cli/messenger/rankings-command.d.ts.map +1 -1
  218. package/dist/cli/messenger/rankings-command.js +3 -2
  219. package/dist/cli/messenger/rankings-command.js.map +1 -1
  220. package/dist/cli/messenger/reactions-command.d.ts.map +1 -1
  221. package/dist/cli/messenger/reactions-command.js +3 -2
  222. package/dist/cli/messenger/reactions-command.js.map +1 -1
  223. package/dist/cli/messenger/records-command.d.ts.map +1 -1
  224. package/dist/cli/messenger/records-command.js +12 -13
  225. package/dist/cli/messenger/records-command.js.map +1 -1
  226. package/dist/cli/messenger/replies-command.d.ts.map +1 -1
  227. package/dist/cli/messenger/replies-command.js +8 -7
  228. package/dist/cli/messenger/replies-command.js.map +1 -1
  229. package/dist/cli/messenger/replies-consents-command.d.ts.map +1 -1
  230. package/dist/cli/messenger/replies-consents-command.js +4 -4
  231. package/dist/cli/messenger/replies-consents-command.js.map +1 -1
  232. package/dist/cli/messenger/replies-edit-command.d.ts.map +1 -1
  233. package/dist/cli/messenger/replies-edit-command.js +5 -4
  234. package/dist/cli/messenger/replies-edit-command.js.map +1 -1
  235. package/dist/cli/messenger/retention-command.d.ts.map +1 -1
  236. package/dist/cli/messenger/retention-command.js +2 -1
  237. package/dist/cli/messenger/retention-command.js.map +1 -1
  238. package/dist/cli/messenger/review.d.ts.map +1 -1
  239. package/dist/cli/messenger/review.js +6 -1
  240. package/dist/cli/messenger/review.js.map +1 -1
  241. package/dist/cli/messenger/schedule-command.d.ts.map +1 -1
  242. package/dist/cli/messenger/schedule-command.js +8 -12
  243. package/dist/cli/messenger/schedule-command.js.map +1 -1
  244. package/dist/cli/messenger/search-answers.d.ts +1 -1
  245. package/dist/cli/messenger/search-answers.d.ts.map +1 -1
  246. package/dist/cli/messenger/search-answers.js +5 -3
  247. package/dist/cli/messenger/search-answers.js.map +1 -1
  248. package/dist/cli/messenger/search-command.d.ts.map +1 -1
  249. package/dist/cli/messenger/search-command.js +3 -2
  250. package/dist/cli/messenger/search-command.js.map +1 -1
  251. package/dist/cli/messenger/searches-command.d.ts.map +1 -1
  252. package/dist/cli/messenger/searches-command.js +9 -7
  253. package/dist/cli/messenger/searches-command.js.map +1 -1
  254. package/dist/cli/messenger/serve-command.d.ts.map +1 -1
  255. package/dist/cli/messenger/serve-command.js +3 -1
  256. package/dist/cli/messenger/serve-command.js.map +1 -1
  257. package/dist/cli/messenger/serve-notice.js +5 -5
  258. package/dist/cli/messenger/serve-notice.js.map +1 -1
  259. package/dist/cli/messenger/server-command.d.ts.map +1 -1
  260. package/dist/cli/messenger/server-command.js +9 -14
  261. package/dist/cli/messenger/server-command.js.map +1 -1
  262. package/dist/cli/messenger/stats-answers.d.ts.map +1 -1
  263. package/dist/cli/messenger/stats-answers.js +1 -0
  264. package/dist/cli/messenger/stats-answers.js.map +1 -1
  265. package/dist/cli/messenger/stats-command.d.ts.map +1 -1
  266. package/dist/cli/messenger/stats-command.js +2 -1
  267. package/dist/cli/messenger/stats-command.js.map +1 -1
  268. package/dist/cli/messenger/store-maintenance-command.d.ts.map +1 -1
  269. package/dist/cli/messenger/store-maintenance-command.js +12 -10
  270. package/dist/cli/messenger/store-maintenance-command.js.map +1 -1
  271. package/dist/cli/messenger/stored.d.ts +1 -1
  272. package/dist/cli/messenger/stored.d.ts.map +1 -1
  273. package/dist/cli/messenger/stored.js +1 -1
  274. package/dist/cli/messenger/stored.js.map +1 -1
  275. package/dist/cli/messenger/tags-command.d.ts.map +1 -1
  276. package/dist/cli/messenger/tags-command.js +5 -6
  277. package/dist/cli/messenger/tags-command.js.map +1 -1
  278. package/dist/cli/messenger/tasks-command.d.ts.map +1 -1
  279. package/dist/cli/messenger/tasks-command.js +9 -15
  280. package/dist/cli/messenger/tasks-command.js.map +1 -1
  281. package/dist/cli/messenger/topics-command.d.ts.map +1 -1
  282. package/dist/cli/messenger/topics-command.js +12 -12
  283. package/dist/cli/messenger/topics-command.js.map +1 -1
  284. package/dist/cli/messenger/transcribe-command.d.ts.map +1 -1
  285. package/dist/cli/messenger/transcribe-command.js +3 -2
  286. package/dist/cli/messenger/transcribe-command.js.map +1 -1
  287. package/dist/cli/messenger/watch-command.d.ts +1 -1
  288. package/dist/cli/messenger/watch-command.d.ts.map +1 -1
  289. package/dist/cli/messenger/watch-command.js +3 -1
  290. package/dist/cli/messenger/watch-command.js.map +1 -1
  291. package/dist/cli/preview.d.ts.map +1 -1
  292. package/dist/cli/preview.js +3 -1
  293. package/dist/cli/preview.js.map +1 -1
  294. package/dist/cli/program.d.ts.map +1 -1
  295. package/dist/cli/program.js +10 -2
  296. package/dist/cli/program.js.map +1 -1
  297. package/dist/cli/reasons.d.ts +1 -1
  298. package/dist/cli/reasons.d.ts.map +1 -1
  299. package/dist/cli/reasons.js +2 -1
  300. package/dist/cli/reasons.js.map +1 -1
  301. package/dist/cli/runs/command.d.ts.map +1 -1
  302. package/dist/cli/runs/command.js +7 -9
  303. package/dist/cli/runs/command.js.map +1 -1
  304. package/dist/cli/runs/log-events.d.ts +10 -0
  305. package/dist/cli/runs/log-events.d.ts.map +1 -0
  306. package/dist/cli/runs/log-events.js +31 -0
  307. package/dist/cli/runs/log-events.js.map +1 -0
  308. package/dist/cli/runs/recording.d.ts +1 -1
  309. package/dist/cli/runs/recording.d.ts.map +1 -1
  310. package/dist/cli/runs/recording.js +6 -4
  311. package/dist/cli/runs/recording.js.map +1 -1
  312. package/dist/cli/runs/scope.d.ts +5 -0
  313. package/dist/cli/runs/scope.d.ts.map +1 -1
  314. package/dist/cli/runs/scope.js +7 -0
  315. package/dist/cli/runs/scope.js.map +1 -1
  316. package/dist/cli/skill-command.d.ts.map +1 -1
  317. package/dist/cli/skill-command.js +12 -4
  318. package/dist/cli/skill-command.js.map +1 -1
  319. package/dist/cli/steps.d.ts +21 -4
  320. package/dist/cli/steps.d.ts.map +1 -1
  321. package/dist/cli/steps.js +20 -4
  322. package/dist/cli/steps.js.map +1 -1
  323. package/dist/cli/upgrade-command.d.ts.map +1 -1
  324. package/dist/cli/upgrade-command.js +3 -1
  325. package/dist/cli/upgrade-command.js.map +1 -1
  326. package/dist/domain/calendar.d.ts +2 -0
  327. package/dist/domain/calendar.d.ts.map +1 -0
  328. package/dist/domain/calendar.js +14 -0
  329. package/dist/domain/calendar.js.map +1 -0
  330. package/dist/domain/mentions.d.ts +1 -1
  331. package/dist/domain/mentions.d.ts.map +1 -1
  332. package/dist/domain/mentions.js +8 -2
  333. package/dist/domain/mentions.js.map +1 -1
  334. package/dist/domain/person-names.d.ts +30 -0
  335. package/dist/domain/person-names.d.ts.map +1 -0
  336. package/dist/domain/person-names.js +120 -0
  337. package/dist/domain/person-names.js.map +1 -0
  338. package/dist/embeddings/models.d.ts +2 -0
  339. package/dist/embeddings/models.d.ts.map +1 -1
  340. package/dist/embeddings/models.js +2 -0
  341. package/dist/embeddings/models.js.map +1 -1
  342. package/dist/entities/index.d.ts +9 -3
  343. package/dist/entities/index.d.ts.map +1 -1
  344. package/dist/kit/contract.d.ts +1 -1
  345. package/dist/kit/contract.d.ts.map +1 -1
  346. package/dist/kit/contract.js +1 -1
  347. package/dist/kit/contract.js.map +1 -1
  348. package/dist/kit/fake.d.ts +1 -1
  349. package/dist/kit/fake.d.ts.map +1 -1
  350. package/dist/kit/fake.js +3 -2
  351. package/dist/kit/fake.js.map +1 -1
  352. package/dist/mcp/instructions.js +1 -1
  353. package/dist/mcp/instructions.js.map +1 -1
  354. package/dist/mcp/resources.js +1 -1
  355. package/dist/mcp/resources.js.map +1 -1
  356. package/dist/mcp/server.d.ts.map +1 -1
  357. package/dist/mcp/server.js +3 -0
  358. package/dist/mcp/server.js.map +1 -1
  359. package/dist/mcp/session.d.ts +1 -1
  360. package/dist/mcp/session.d.ts.map +1 -1
  361. package/dist/mcp/tool.d.ts +10 -3
  362. package/dist/mcp/tool.d.ts.map +1 -1
  363. package/dist/mcp/tool.js +24 -10
  364. package/dist/mcp/tool.js.map +1 -1
  365. package/dist/mcp/tools/account.js +1 -1
  366. package/dist/mcp/tools/account.js.map +1 -1
  367. package/dist/mcp/tools/admin.js.map +1 -1
  368. package/dist/mcp/tools/attachments.d.ts.map +1 -1
  369. package/dist/mcp/tools/attachments.js +2 -0
  370. package/dist/mcp/tools/attachments.js.map +1 -1
  371. package/dist/mcp/tools/contacts.d.ts.map +1 -1
  372. package/dist/mcp/tools/contacts.js +3 -2
  373. package/dist/mcp/tools/contacts.js.map +1 -1
  374. package/dist/mcp/tools/folders.js.map +1 -1
  375. package/dist/mcp/tools/messages-actions.js +3 -3
  376. package/dist/mcp/tools/messages-actions.js.map +1 -1
  377. package/dist/mcp/tools/messages-photo.js +1 -1
  378. package/dist/mcp/tools/messages-photo.js.map +1 -1
  379. package/dist/mcp/tools/messages-send.js +3 -3
  380. package/dist/mcp/tools/messages-send.js.map +1 -1
  381. package/dist/mcp/tools/messages.d.ts.map +1 -1
  382. package/dist/mcp/tools/messages.js +3 -1
  383. package/dist/mcp/tools/messages.js.map +1 -1
  384. package/dist/mcp/tools/polls.js +4 -4
  385. package/dist/mcp/tools/polls.js.map +1 -1
  386. package/dist/mcp/tools/rankings.js +1 -1
  387. package/dist/mcp/tools/rankings.js.map +1 -1
  388. package/dist/mcp/tools/search-tools.js +5 -5
  389. package/dist/mcp/tools/search-tools.js.map +1 -1
  390. package/dist/mcp/tools/search.d.ts.map +1 -1
  391. package/dist/mcp/tools/search.js +1 -1
  392. package/dist/mcp/tools/search.js.map +1 -1
  393. package/dist/mcp/tools/store.d.ts.map +1 -1
  394. package/dist/mcp/tools/store.js +2 -0
  395. package/dist/mcp/tools/store.js.map +1 -1
  396. package/dist/mcp/tools/topics.js +4 -4
  397. package/dist/mcp/tools/topics.js.map +1 -1
  398. package/dist/meetings/answers.d.ts +7 -2
  399. package/dist/meetings/answers.d.ts.map +1 -1
  400. package/dist/meetings/answers.js +7 -2
  401. package/dist/meetings/answers.js.map +1 -1
  402. package/dist/meetings/cli/passage.js +1 -1
  403. package/dist/meetings/cli/passage.js.map +1 -1
  404. package/dist/meetings/cli/project-evidence.js +1 -1
  405. package/dist/meetings/cli/project-evidence.js.map +1 -1
  406. package/dist/meetings/cli/search.d.ts.map +1 -1
  407. package/dist/meetings/cli/search.js +6 -2
  408. package/dist/meetings/cli/search.js.map +1 -1
  409. package/dist/meetings/index.d.ts +2 -0
  410. package/dist/meetings/index.d.ts.map +1 -1
  411. package/dist/meetings/index.js +1 -0
  412. package/dist/meetings/index.js.map +1 -1
  413. package/dist/meetings/mcp/index.d.ts +13 -2
  414. package/dist/meetings/mcp/index.d.ts.map +1 -1
  415. package/dist/meetings/mcp/index.js +1 -1
  416. package/dist/meetings/mcp/index.js.map +1 -1
  417. package/dist/meetings/mcp/passage.d.ts +13 -2
  418. package/dist/meetings/mcp/passage.d.ts.map +1 -1
  419. package/dist/meetings/mcp/passage.js +1 -1
  420. package/dist/meetings/mcp/passage.js.map +1 -1
  421. package/dist/meetings/mcp/project-evidence.d.ts +13 -2
  422. package/dist/meetings/mcp/project-evidence.d.ts.map +1 -1
  423. package/dist/meetings/mcp/project-evidence.js +1 -1
  424. package/dist/meetings/mcp/project-evidence.js.map +1 -1
  425. package/dist/meetings/mcp/search.d.ts +13 -2
  426. package/dist/meetings/mcp/search.d.ts.map +1 -1
  427. package/dist/meetings/mcp/search.js +1 -1
  428. package/dist/meetings/mcp/search.js.map +1 -1
  429. package/dist/meetings/project-evidence-answer.d.ts +9 -3
  430. package/dist/meetings/project-evidence-answer.d.ts.map +1 -1
  431. package/dist/meetings/project-evidence-answer.js +6 -1
  432. package/dist/meetings/project-evidence-answer.js.map +1 -1
  433. package/dist/meetings/reads.d.ts +11 -3
  434. package/dist/meetings/reads.d.ts.map +1 -1
  435. package/dist/meetings/reads.js +2 -2
  436. package/dist/meetings/reads.js.map +1 -1
  437. package/dist/meetings/upcoming-types.d.ts +55 -0
  438. package/dist/meetings/upcoming-types.d.ts.map +1 -0
  439. package/dist/meetings/upcoming-types.js +2 -0
  440. package/dist/meetings/upcoming-types.js.map +1 -0
  441. package/dist/meetings/upcoming-validation.d.ts +5 -0
  442. package/dist/meetings/upcoming-validation.d.ts.map +1 -0
  443. package/dist/meetings/upcoming-validation.js +78 -0
  444. package/dist/meetings/upcoming-validation.js.map +1 -0
  445. package/dist/meetings/upcoming.d.ts +7 -0
  446. package/dist/meetings/upcoming.d.ts.map +1 -0
  447. package/dist/meetings/upcoming.js +72 -0
  448. package/dist/meetings/upcoming.js.map +1 -0
  449. package/dist/moderation/check.d.ts +1 -1
  450. package/dist/moderation/check.d.ts.map +1 -1
  451. package/dist/parity/deep.js +1 -1
  452. package/dist/parity/manifest.js +1 -1
  453. package/dist/parity/manifest.js.map +1 -1
  454. package/dist/{cli/messenger/port.d.ts → ports/messenger.d.ts} +7 -7
  455. package/dist/ports/messenger.d.ts.map +1 -0
  456. package/dist/{cli/messenger/port.js → ports/messenger.js} +1 -1
  457. package/dist/ports/messenger.js.map +1 -0
  458. package/dist/search/account-list.d.ts +3 -0
  459. package/dist/search/account-list.d.ts.map +1 -1
  460. package/dist/search/account-list.js +3 -1
  461. package/dist/search/account-list.js.map +1 -1
  462. package/dist/search/lucene/registry.d.ts.map +1 -1
  463. package/dist/search/lucene/registry.js +15 -0
  464. package/dist/search/lucene/registry.js.map +1 -1
  465. package/dist/sends/buttons.d.ts +1 -1
  466. package/dist/sends/buttons.d.ts.map +1 -1
  467. package/dist/sends/buttons.js +1 -1
  468. package/dist/sends/buttons.js.map +1 -1
  469. package/dist/sends/guard.js +2 -2
  470. package/dist/sends/guard.js.map +1 -1
  471. package/dist/sends/guarded.d.ts.map +1 -1
  472. package/dist/sends/guarded.js +5 -2
  473. package/dist/sends/guarded.js.map +1 -1
  474. package/dist/sends/index.d.ts +1 -1
  475. package/dist/sends/index.d.ts.map +1 -1
  476. package/dist/sends/index.js +1 -1
  477. package/dist/sends/index.js.map +1 -1
  478. package/dist/sends/journal.d.ts.map +1 -1
  479. package/dist/sends/journal.js +7 -3
  480. package/dist/sends/journal.js.map +1 -1
  481. package/dist/sends/permissions.d.ts.map +1 -1
  482. package/dist/sends/permissions.js +3 -0
  483. package/dist/sends/permissions.js.map +1 -1
  484. package/dist/sends/polls.d.ts +1 -1
  485. package/dist/sends/polls.d.ts.map +1 -1
  486. package/dist/sends/polls.js +1 -1
  487. package/dist/sends/polls.js.map +1 -1
  488. package/dist/sends/send-as.d.ts +1 -1
  489. package/dist/sends/send-as.d.ts.map +1 -1
  490. package/dist/sends/send-as.js +1 -1
  491. package/dist/sends/send-as.js.map +1 -1
  492. package/dist/sends/upload.d.ts +18 -2
  493. package/dist/sends/upload.d.ts.map +1 -1
  494. package/dist/sends/upload.js +32 -10
  495. package/dist/sends/upload.js.map +1 -1
  496. package/dist/services/account.d.ts +1 -1
  497. package/dist/services/account.d.ts.map +1 -1
  498. package/dist/services/account.js +1 -1
  499. package/dist/services/account.js.map +1 -1
  500. package/dist/services/admin-statistics.js +1 -1
  501. package/dist/services/admin-statistics.js.map +1 -1
  502. package/dist/services/admin.d.ts.map +1 -1
  503. package/dist/services/admin.js +1 -1
  504. package/dist/services/admin.js.map +1 -1
  505. package/dist/services/archive-gaps.js +1 -1
  506. package/dist/services/archive-gaps.js.map +1 -1
  507. package/dist/services/archive.d.ts.map +1 -1
  508. package/dist/services/archive.js +2 -2
  509. package/dist/services/archive.js.map +1 -1
  510. package/dist/services/attachments.js +1 -1
  511. package/dist/services/attachments.js.map +1 -1
  512. package/dist/services/chat-documents.js +1 -1
  513. package/dist/services/chat-documents.js.map +1 -1
  514. package/dist/services/chat-stats.d.ts.map +1 -1
  515. package/dist/services/chat-stats.js +2 -2
  516. package/dist/services/chat-stats.js.map +1 -1
  517. package/dist/services/chats.d.ts.map +1 -1
  518. package/dist/services/chats.js +2 -2
  519. package/dist/services/chats.js.map +1 -1
  520. package/dist/services/conversations.js +1 -1
  521. package/dist/services/conversations.js.map +1 -1
  522. package/dist/services/deps.d.ts +1 -1
  523. package/dist/services/deps.d.ts.map +1 -1
  524. package/dist/services/embeddings-maintenance.d.ts +51 -0
  525. package/dist/services/embeddings-maintenance.d.ts.map +1 -0
  526. package/dist/services/embeddings-maintenance.js +309 -0
  527. package/dist/services/embeddings-maintenance.js.map +1 -0
  528. package/dist/services/embeddings-search.d.ts +4 -0
  529. package/dist/services/embeddings-search.d.ts.map +1 -0
  530. package/dist/services/embeddings-search.js +329 -0
  531. package/dist/services/embeddings-search.js.map +1 -0
  532. package/dist/services/embeddings.d.ts +5 -12
  533. package/dist/services/embeddings.d.ts.map +1 -1
  534. package/dist/services/embeddings.js +7 -630
  535. package/dist/services/embeddings.js.map +1 -1
  536. package/dist/services/evidence-read.js +1 -1
  537. package/dist/services/evidence-read.js.map +1 -1
  538. package/dist/services/file-download.d.ts +1 -1
  539. package/dist/services/file-download.d.ts.map +1 -1
  540. package/dist/services/folders.d.ts.map +1 -1
  541. package/dist/services/folders.js +1 -1
  542. package/dist/services/folders.js.map +1 -1
  543. package/dist/services/inbox.d.ts +1 -2
  544. package/dist/services/inbox.d.ts.map +1 -1
  545. package/dist/services/inbox.js +2 -3
  546. package/dist/services/inbox.js.map +1 -1
  547. package/dist/services/index.d.ts +7 -3
  548. package/dist/services/index.d.ts.map +1 -1
  549. package/dist/services/index.js +5 -2
  550. package/dist/services/index.js.map +1 -1
  551. package/dist/services/meeting-model.d.ts +1 -1
  552. package/dist/services/meeting-model.d.ts.map +1 -1
  553. package/dist/services/meeting-model.js +1 -2
  554. package/dist/services/meeting-model.js.map +1 -1
  555. package/dist/services/mentions.d.ts +4 -0
  556. package/dist/services/mentions.d.ts.map +1 -1
  557. package/dist/services/mentions.js +2 -2
  558. package/dist/services/mentions.js.map +1 -1
  559. package/dist/services/message-query-validation.d.ts +3 -0
  560. package/dist/services/message-query-validation.d.ts.map +1 -0
  561. package/dist/services/message-query-validation.js +14 -0
  562. package/dist/services/message-query-validation.js.map +1 -0
  563. package/dist/services/message-resolution.d.ts +36 -0
  564. package/dist/services/message-resolution.d.ts.map +1 -0
  565. package/dist/services/message-resolution.js +171 -0
  566. package/dist/services/message-resolution.js.map +1 -0
  567. package/dist/services/messages-archive-search.d.ts +24 -0
  568. package/dist/services/messages-archive-search.d.ts.map +1 -0
  569. package/dist/services/messages-archive-search.js +123 -0
  570. package/dist/services/messages-archive-search.js.map +1 -0
  571. package/dist/services/messages-search.d.ts +1 -2
  572. package/dist/services/messages-search.d.ts.map +1 -1
  573. package/dist/services/messages-search.js +2 -14
  574. package/dist/services/messages-search.js.map +1 -1
  575. package/dist/services/messages.d.ts +6 -51
  576. package/dist/services/messages.d.ts.map +1 -1
  577. package/dist/services/messages.js +10 -303
  578. package/dist/services/messages.js.map +1 -1
  579. package/dist/services/metadata.js +2 -2
  580. package/dist/services/metadata.js.map +1 -1
  581. package/dist/services/moderation.d.ts.map +1 -1
  582. package/dist/services/moderation.js +1 -1
  583. package/dist/services/moderation.js.map +1 -1
  584. package/dist/services/notes-search.d.ts.map +1 -1
  585. package/dist/services/notes-search.js +1 -2
  586. package/dist/services/notes-search.js.map +1 -1
  587. package/dist/services/people.d.ts.map +1 -1
  588. package/dist/services/people.js +3 -3
  589. package/dist/services/people.js.map +1 -1
  590. package/dist/services/pictures.d.ts +1 -1
  591. package/dist/services/pictures.d.ts.map +1 -1
  592. package/dist/services/pictures.js +2 -2
  593. package/dist/services/pictures.js.map +1 -1
  594. package/dist/services/rankings.d.ts.map +1 -1
  595. package/dist/services/rankings.js +1 -1
  596. package/dist/services/rankings.js.map +1 -1
  597. package/dist/services/retention.d.ts +26 -26
  598. package/dist/services/retention.d.ts.map +1 -1
  599. package/dist/services/retention.js +1 -1
  600. package/dist/services/retention.js.map +1 -1
  601. package/dist/services/search-all-meetings.d.ts.map +1 -1
  602. package/dist/services/search-all-meetings.js +18 -5
  603. package/dist/services/search-all-meetings.js.map +1 -1
  604. package/dist/services/search-all.d.ts +6 -4
  605. package/dist/services/search-all.d.ts.map +1 -1
  606. package/dist/services/search-all.js +2 -2
  607. package/dist/services/search-all.js.map +1 -1
  608. package/dist/services/search-catchup.d.ts +1 -1
  609. package/dist/services/search-catchup.d.ts.map +1 -1
  610. package/dist/services/search-catchup.js +2 -2
  611. package/dist/services/search-catchup.js.map +1 -1
  612. package/dist/services/search-record.d.ts +29 -0
  613. package/dist/services/search-record.d.ts.map +1 -0
  614. package/dist/services/search-record.js +20 -0
  615. package/dist/services/search-record.js.map +1 -0
  616. package/dist/services/search-refresh.d.ts +1 -1
  617. package/dist/services/search-refresh.d.ts.map +1 -1
  618. package/dist/services/search-refresh.js +2 -1
  619. package/dist/services/search-refresh.js.map +1 -1
  620. package/dist/services/searches.d.ts +2 -27
  621. package/dist/services/searches.d.ts.map +1 -1
  622. package/dist/services/searches.js +3 -19
  623. package/dist/services/searches.js.map +1 -1
  624. package/dist/services/server-search.d.ts.map +1 -1
  625. package/dist/services/server-search.js +1 -1
  626. package/dist/services/server-search.js.map +1 -1
  627. package/dist/services/tags.js +1 -1
  628. package/dist/services/tags.js.map +1 -1
  629. package/dist/services/tasks.js +1 -1
  630. package/dist/services/tasks.js.map +1 -1
  631. package/dist/services/topics.d.ts +0 -1
  632. package/dist/services/topics.d.ts.map +1 -1
  633. package/dist/services/topics.js +2 -2
  634. package/dist/services/topics.js.map +1 -1
  635. package/dist/speech/hearing.d.ts +1 -1
  636. package/dist/speech/hearing.d.ts.map +1 -1
  637. package/dist/speech/transcribe.d.ts +1 -1
  638. package/dist/speech/transcribe.d.ts.map +1 -1
  639. package/dist/speech/transcribe.js +1 -1
  640. package/dist/speech/transcribe.js.map +1 -1
  641. package/dist/store/sqlite/lucene.d.ts.map +1 -1
  642. package/dist/store/sqlite/lucene.js +29 -0
  643. package/dist/store/sqlite/lucene.js.map +1 -1
  644. package/dist/store/sqlite/meeting-hit-index.js +1 -1
  645. package/dist/store/sqlite/meeting-hit-index.js.map +1 -1
  646. package/dist/store/sqlite/meeting-hit-search.js +1 -1
  647. package/dist/store/sqlite/meeting-hit-search.js.map +1 -1
  648. package/dist/store/sqlite/meeting-index-values.d.ts +19 -0
  649. package/dist/store/sqlite/meeting-index-values.d.ts.map +1 -0
  650. package/dist/store/sqlite/meeting-index-values.js +37 -0
  651. package/dist/store/sqlite/meeting-index-values.js.map +1 -0
  652. package/dist/store/sqlite/meetings.d.ts +0 -12
  653. package/dist/store/sqlite/meetings.d.ts.map +1 -1
  654. package/dist/store/sqlite/meetings.js +1 -35
  655. package/dist/store/sqlite/meetings.js.map +1 -1
  656. package/dist/store/sqlite/mentions.d.ts +3 -0
  657. package/dist/store/sqlite/mentions.d.ts.map +1 -1
  658. package/dist/store/sqlite/mentions.js +99 -22
  659. package/dist/store/sqlite/mentions.js.map +1 -1
  660. package/dist/store/sqlite/retention.d.ts.map +1 -1
  661. package/dist/store/sqlite/retention.js +1 -1
  662. package/dist/store/sqlite/retention.js.map +1 -1
  663. package/dist/store/store.d.ts +1 -0
  664. package/dist/store/store.d.ts.map +1 -1
  665. package/package.json +3 -3
  666. package/parity.json +8 -8
  667. package/dist/cli/messenger/port.d.ts.map +0 -1
  668. package/dist/cli/messenger/port.js.map +0 -1
@@ -0,0 +1,309 @@
1
+ import { CliError } from "@wirecat/cli-base";
2
+ import { CHUNK_CHARS, chunkHash, chunkTextOf } from "../conversations/chunks.js";
3
+ import { RULES_VERSION } from "../conversations/link.js";
4
+ import { defaultThreads, isTextModelInstalled, textModelsDirectory } from "../embeddings/embed.js";
5
+ import { DEFAULT_TEXT_MODEL, textModel, vectorModelKey } from "../embeddings/models.js";
6
+ import { remoteKey } from "../embeddings/remote.js";
7
+ import { CONTEXT_MESSAGES, CONTEXT_MINUTES } from "../images/context/index.js";
8
+ import { registeredImageProviders } from "../images/registry.js";
9
+ import { conversationsService } from "./conversations.js";
10
+ import { storedChatId } from "./message-resolution.js";
11
+ /** How much one run without `--chat` does at most, by default. */
12
+ export const REFRESH_BOUNDS = { maxChats: 20, maxChunks: 2_000 };
13
+ /** Chunks per batch for one local session; one short transaction writes each batch. */
14
+ const PER_SESSION = 8;
15
+ /** Texts per remote request; `concurrency` of them run at once. */
16
+ const PER_REQUEST = 256;
17
+ /** e5's tokenizer reads ~3.7 characters a token in Russian; 3 keeps the bound above the real count. */
18
+ const CHARS_PER_TOKEN_AT_LEAST = 3;
19
+ const notDownloaded = (deps, id) => new CliError("not_found", `${id} is not downloaded — \`${deps.messenger.app.command} models text download ${id}\``, {
20
+ reason: "model.not-downloaded",
21
+ model: id,
22
+ });
23
+ export const notBuiltError = (deps, chatId) => new CliError("not_found", `chat ${chatId} has no conversations yet — \`${deps.messenger.app.command} conversations build --chat ${chatId}\``);
24
+ export const embeddingTarget = (deps, choice = DEFAULT_TEXT_MODEL) => {
25
+ if (typeof choice !== "string") {
26
+ const { remote, apiKey, concurrency = 4 } = choice;
27
+ return {
28
+ id: `${remote.provider}:${remote.model}`,
29
+ key: remoteKey(remote),
30
+ dims: remote.dims,
31
+ speed: null,
32
+ price: remote.price,
33
+ installed: true,
34
+ perBatch: (_workers) => PER_REQUEST * concurrency,
35
+ open: async () => (await import("../embeddings/remote.js")).openRemote(remote, apiKey, { concurrency }),
36
+ };
37
+ }
38
+ const model = textModel(choice);
39
+ const directory = textModelsDirectory(deps.env);
40
+ return {
41
+ id: model.id,
42
+ key: vectorModelKey(model),
43
+ dims: model.dims,
44
+ speed: model.chunksPerSecond,
45
+ price: undefined,
46
+ installed: isTextModelInstalled(model, directory),
47
+ perBatch: (workers) => PER_SESSION * Math.max(1, workers),
48
+ open: async ({ workers = 1, threads, apart = false, } = {}) => {
49
+ if (!isTextModelInstalled(model, directory))
50
+ throw notDownloaded(deps, model.id);
51
+ if (apart) {
52
+ const { openProcess } = await import("../embeddings/process.js");
53
+ return openProcess(model, directory, { threads: threads ?? defaultThreads() });
54
+ }
55
+ const { openPool } = await import("../embeddings/pool.js");
56
+ return openPool(model, directory, { workers, ...(threads ? { threads } : {}) });
57
+ },
58
+ };
59
+ };
60
+ export const readinessOf = async (deps, chatId, key) => {
61
+ const store = await deps.store();
62
+ const account = await deps.account();
63
+ return (await store.readiness(account, { ...(chatId === undefined ? {} : { chatId }), model: key })).map(shaped);
64
+ };
65
+ /** The server's warm model when there is one, kept open after; otherwise opened here and closed. */
66
+ export const withEmbedder = async (deps, target, choice, { workers = 1, threads }, work) => {
67
+ const warm = typeof choice !== "object" ? deps.embedders : undefined;
68
+ const embedder = warm
69
+ ? await warm.get(target.key, () => target.open({ apart: true }))
70
+ : await target.open({ workers, ...(threads ? { threads } : {}) });
71
+ try {
72
+ return await work(embedder);
73
+ }
74
+ finally {
75
+ if (!warm)
76
+ await embedder.close();
77
+ }
78
+ };
79
+ export const embeddingsMaintenance = (deps) => {
80
+ const found = async (chat) => {
81
+ const store = await deps.store();
82
+ const account = await deps.account();
83
+ const chatId = await storedChatId(deps.messenger, chat, store, account);
84
+ if (!(await store.conversationState(account, chatId))?.builtAt)
85
+ throw notBuiltError(deps, chatId);
86
+ return { store, account, chatId };
87
+ };
88
+ const embedInto = async (chatId, target, embedder, { workers = 1, maxChunks = Number.POSITIVE_INFINITY, progress, check, }) => {
89
+ const store = await deps.store();
90
+ const account = await deps.account();
91
+ let embedded = 0;
92
+ let skipped = 0;
93
+ let left = (await store.vectorStatus(account, chatId, target.key)).chunks;
94
+ let after;
95
+ while (embedded + skipped < maxChunks) {
96
+ check?.();
97
+ const batch = await store.chunksToEmbed(account, chatId, target.key, {
98
+ limit: Math.min(target.perBatch(workers), maxChunks - embedded - skipped),
99
+ ...(after ? { after } : {}),
100
+ });
101
+ if (batch.length === 0)
102
+ break;
103
+ after = batch.at(-1)?.hash;
104
+ const ready = batch.flatMap(({ hash, lines }) => {
105
+ const text = chunkTextOf(lines);
106
+ return chunkHash(text) === hash ? [{ hash, text }] : [];
107
+ });
108
+ skipped += batch.length - ready.length;
109
+ const vectors = await embedder.embed(ready.map(({ text }) => text), "passage");
110
+ check?.();
111
+ await store.saveVectors(target.key, target.dims, ready.map(({ hash }, index) => ({ hash, vector: vectors[index] })));
112
+ embedded += ready.length;
113
+ left = Math.max(0, left - batch.length);
114
+ progress?.(embedded, left);
115
+ }
116
+ embedded += await embedImages(chatId, target, embedder, check);
117
+ return { chat: chatId, model: target.id, embedded, skipped };
118
+ };
119
+ /**
120
+ * One chunk per image of the chat: the text its first image provider gives it, embedded like a message. The
121
+ * chunk's hash names the provider and its version, so a newer provider describes every image again.
122
+ */
123
+ const embedImages = async (chatId, target, embedder, check) => {
124
+ const providers = registeredImageProviders();
125
+ if (providers.length === 0)
126
+ return 0;
127
+ const store = await deps.store();
128
+ const account = await deps.account();
129
+ const images = await store.imagesToDescribe(account, chatId, {
130
+ messages: CONTEXT_MESSAGES,
131
+ withinMs: CONTEXT_MINUTES * 60_000,
132
+ });
133
+ const described = [];
134
+ for (const image of images) {
135
+ check?.();
136
+ for (const provider of providers) {
137
+ const { text } = await provider.describe({ kind: image.kind, name: image.name, mime: image.mime, localPath: image.localPath }, {
138
+ chatTitle: image.chatTitle,
139
+ sender: image.sender,
140
+ caption: image.caption,
141
+ sentAt: image.sentAt,
142
+ before: image.before,
143
+ after: image.after,
144
+ });
145
+ if (text?.trim()) {
146
+ described.push({
147
+ attachmentPk: image.attachmentPk,
148
+ hash: chunkHash(`${provider.id}:${provider.version}\n${text}`),
149
+ text,
150
+ occurredAt: image.sentAt,
151
+ });
152
+ break;
153
+ }
154
+ }
155
+ }
156
+ const have = await store.embeddedHashes(target.key, described.map(({ hash }) => hash));
157
+ const missing = [...new Map(described.filter(({ hash }) => !have.has(hash)).map((one) => [one.hash, one])).values()];
158
+ for (let at = 0; at < missing.length; at += PER_REQUEST) {
159
+ const batch = missing.slice(at, at + PER_REQUEST);
160
+ const vectors = await embedder.embed(batch.map(({ text }) => text), "passage");
161
+ check?.();
162
+ await store.saveVectors(target.key, target.dims, batch.map(({ hash }, index) => ({ hash, vector: vectors[index] })));
163
+ }
164
+ await store.saveImageChunks(account, chatId, described.map(({ attachmentPk, hash, text, occurredAt }) => ({
165
+ attachmentPk,
166
+ hash,
167
+ length: text.length,
168
+ occurredAt,
169
+ })), described.map(({ attachmentPk }) => attachmentPk));
170
+ return missing.length;
171
+ };
172
+ return {
173
+ status: async (chat, choice) => {
174
+ const { store, account, chatId } = await found(chat);
175
+ const target = embeddingTarget(deps, choice);
176
+ const { chunks, embedded } = await store.vectorStatus(account, chatId, target.key);
177
+ const left = chunks - embedded;
178
+ const tokensAtMost = Math.ceil((left * CHUNK_CHARS) / CHARS_PER_TOKEN_AT_LEAST);
179
+ return {
180
+ chat: chatId,
181
+ model: target.id,
182
+ chunks,
183
+ embedded,
184
+ left,
185
+ estimateSeconds: target.speed === null ? null : Math.ceil(left / target.speed),
186
+ tokensAtMost,
187
+ ...(target.price
188
+ ? { priceAtMost: { usd: (tokensAtMost / 1e6) * target.price.perMillion, read: target.price.read } }
189
+ : {}),
190
+ };
191
+ },
192
+ embed: async (chat, { model: choice, workers = 1, threads, maxChunks, progress }) => {
193
+ const { chatId } = await found(chat);
194
+ const target = embeddingTarget(deps, choice);
195
+ return withEmbedder(deps, target, choice, { workers, threads }, (embedder) => embedInto(chatId, target, embedder, { workers, maxChunks, progress }));
196
+ },
197
+ readiness: async ({ chat, model: choice }) => {
198
+ const store = await deps.store();
199
+ const account = await deps.account();
200
+ const target = embeddingTarget(deps, choice);
201
+ const chatId = chat === undefined ? undefined : await storedChatId(deps.messenger, chat, store, account);
202
+ const chats = await readinessOf(deps, chatId, target.key);
203
+ if (chatId !== undefined)
204
+ return { model: target.id, chats };
205
+ return { model: target.id, chats, unbuiltGroups: (await store.unbuiltGroups(account)).length };
206
+ },
207
+ refresh: async ({ chat, model: choice = DEFAULT_TEXT_MODEL, build = true, embed = true, maxChats = REFRESH_BOUNDS.maxChats, maxChunks = REFRESH_BOUNDS.maxChunks, workers, threads, progress, maxMessages, check, }) => {
208
+ check?.();
209
+ const store = await deps.store();
210
+ const account = await deps.account();
211
+ const target = embeddingTarget(deps, choice);
212
+ if (embed && !build && !target.installed)
213
+ throw notDownloaded(deps, target.id);
214
+ const chatId = chat === undefined ? undefined : await storedChatId(deps.messenger, chat, store, account);
215
+ const scan = async () => ({
216
+ chats: (await readinessOf(deps, chatId, target.key)).sort(byOldestBuild),
217
+ unbuilt: chatId === undefined ? await store.unbuiltGroups(account) : [],
218
+ });
219
+ const built = [];
220
+ if (build) {
221
+ const { chats, unbuilt } = await scan();
222
+ const queue = [...chats.filter(needsBuild).map(({ chat }) => chat), ...unbuilt].slice(0, maxChats);
223
+ const conversations = conversationsService(deps);
224
+ for (const id of queue) {
225
+ try {
226
+ check?.();
227
+ const one = await conversations.build(id, { maxMessages, check });
228
+ built.push(one);
229
+ progress?.(`chat ${id}: ${one.messages} messages → ${one.conversations} conversations`);
230
+ }
231
+ catch (error) {
232
+ // Every message of a once-built chat deleted: nothing to build, and it stays in `left`.
233
+ if (!(error instanceof CliError && error.code === "not_found"))
234
+ throw error;
235
+ }
236
+ }
237
+ }
238
+ const embedded = [];
239
+ if (embed && target.installed) {
240
+ const fresh = new Set(built.map(({ chat }) => chat));
241
+ const queue = (await scan()).chats
242
+ .filter(needsEmbed)
243
+ .sort((a, b) => Number(fresh.has(b.chat)) - Number(fresh.has(a.chat)))
244
+ .slice(0, maxChats);
245
+ if (queue.length > 0) {
246
+ await withEmbedder(deps, target, choice, { workers, threads }, async (embedder) => {
247
+ let budget = maxChunks;
248
+ for (const { chat } of queue) {
249
+ if (budget <= 0)
250
+ break;
251
+ check?.();
252
+ const done = await embedInto(chat, target, embedder, { workers, maxChunks: budget, check });
253
+ budget -= done.embedded + done.skipped;
254
+ embedded.push(done);
255
+ progress?.(`chat ${chat}: ${done.embedded} chunks embedded with ${target.id}`);
256
+ }
257
+ });
258
+ }
259
+ }
260
+ const after = await scan();
261
+ const rebuild = build ? [...after.chats.filter(needsBuild).map(({ chat }) => chat), ...after.unbuilt] : [];
262
+ const pending = new Set(rebuild);
263
+ return {
264
+ model: target.id,
265
+ modelAvailable: target.installed,
266
+ built,
267
+ embedded,
268
+ left: [
269
+ ...rebuild.map((chat) => ({ chat, needs: "build" })),
270
+ ...(embed
271
+ ? after.chats
272
+ .filter((one) => needsEmbed(one) && !pending.has(one.chat))
273
+ .map(({ chat }) => ({ chat, needs: "embed" }))
274
+ : []),
275
+ ],
276
+ };
277
+ },
278
+ clear: async (chat, choice) => {
279
+ const store = await deps.store();
280
+ const account = await deps.account();
281
+ const chatId = await storedChatId(deps.messenger, chat, store, account);
282
+ const cleared = await store.clearVectors(account, chatId, choice === undefined ? undefined : embeddingTarget(deps, choice).key);
283
+ return { chat: chatId, cleared };
284
+ },
285
+ };
286
+ };
287
+ const needsBuild = (one) => one.graph === null || isStale(one);
288
+ const needsEmbed = (one) => one.graph !== null && one.vectors.missing > 0;
289
+ /** Never finished first, then the oldest build: the longest-waiting change goes first. */
290
+ const byOldestBuild = (a, b) => (a.graph?.builtAt ?? "").localeCompare(b.graph?.builtAt ?? "");
291
+ export const isStale = ({ graph, pending, vectors }) => Boolean(graph?.outdatedRules) || pending.new + pending.edited + pending.deleted > 0 || vectors.stale > 0;
292
+ export const shaped = ({ chatId, builtAt, algorithmVersion, pending, vectors }) => {
293
+ const { embedded, ...counts } = vectors;
294
+ const graph = builtAt === null
295
+ ? null
296
+ : { builtAt, rulesVersion: algorithmVersion, outdatedRules: algorithmVersion !== RULES_VERSION };
297
+ const one = { chat: chatId, state: "ready", graph, pending, vectors: counts };
298
+ const state = graph === null
299
+ ? "not-built"
300
+ : counts.chunks > 0 && embedded === 0
301
+ ? "words-only"
302
+ : isStale(one)
303
+ ? "stale"
304
+ : counts.missing > 0
305
+ ? "partial"
306
+ : "ready";
307
+ return { ...one, state };
308
+ };
309
+ //# sourceMappingURL=embeddings-maintenance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddings-maintenance.js","sourceRoot":"","sources":["../../src/services/embeddings-maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD,OAAO,EAAE,cAAc,EAAiB,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AACjH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAEhE,OAAO,EAAc,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAGrE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,kEAAkE;AAClE,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;AAEhE,uFAAuF;AACvF,MAAM,WAAW,GAAG,CAAC,CAAA;AACrB,mEAAmE;AACnE,MAAM,WAAW,GAAG,GAAG,CAAA;AACvB,uGAAuG;AACvG,MAAM,wBAAwB,GAAG,CAAC,CAAA;AAElC,MAAM,aAAa,GAAG,CAAC,IAAiB,EAAE,EAAU,EAAE,EAAE,CACtD,IAAI,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,yBAAyB,EAAE,IAAI,EAAE;IAClH,MAAM,EAAE,sBAAsB;IAC9B,KAAK,EAAE,EAAE;CACV,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAiB,EAAE,MAAU,EAAE,EAAE,CAC7D,IAAI,QAAQ,CACV,WAAW,EACX,QAAQ,MAAM,iCAAiC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,+BAA+B,MAAM,IAAI,CACnH,CAAA;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAiB,EAAE,MAAM,GAAgB,kBAAkB,EAAE,EAAE;IAC7F,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,CAAC,EAAE,GAAG,MAAM,CAAA;QAClD,OAAO;YACL,EAAE,EAAE,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE;YACxC,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC;YACtB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,WAAW,GAAG,WAAW;YACzD,IAAI,EAAE,KAAK,IAAuB,EAAE,CAClC,CAAC,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC;SACxF,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAC/B,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC/C,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,GAAG,EAAE,cAAc,CAAC,KAAK,CAAC;QAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,KAAK,CAAC,eAAe;QAC5B,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC;QACjD,QAAQ,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC;QACjE,IAAI,EAAE,KAAK,EAAE,EACX,OAAO,GAAG,CAAC,EACX,OAAO,EACP,KAAK,GAAG,KAAK,GACd,GAKG,EAAE,EAAqB,EAAE;YAC3B,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC;gBAAE,MAAM,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;YAChF,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAA;gBAChE,OAAO,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,EAAE,CAAC,CAAA;YAChF,CAAC;YACD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAA;YAC1D,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QACjF,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,IAAiB,EAAE,MAAsB,EAAE,GAAW,EAA4B,EAAE;IACpH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;IAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;IACpC,OAAO,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAClH,CAAC,CAAA;AAID,oGAAoG;AACpG,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,IAAiB,EACjB,MAAuB,EACvB,MAA+B,EAC/B,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAsD,EAC5E,IAAwC,EAC5B,EAAE;IACd,MAAM,IAAI,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;IACpE,MAAM,QAAQ,GAAG,IAAI;QACnB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IACnE,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,IAAI;YAAE,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAA;IACnC,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,IAAiB,EACgE,EAAE;IACnF,MAAM,KAAK,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;QACnC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QACpC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QACvE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO;YAAE,MAAM,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACjG,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;IACnC,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,KAAK,EACrB,MAAU,EACV,MAAuB,EACvB,QAAkB,EAClB,EACE,OAAO,GAAG,CAAC,EACX,SAAS,GAAG,MAAM,CAAC,iBAAiB,EACpC,QAAQ,EACR,KAAK,GAMN,EACkB,EAAE;QACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QACpC,IAAI,QAAQ,GAAG,CAAC,CAAA;QAChB,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;QACzE,IAAI,KAAyB,CAAA;QAC7B,OAAO,QAAQ,GAAG,OAAO,GAAG,SAAS,EAAE,CAAC;YACtC,KAAK,EAAE,EAAE,CAAA;YACT,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;gBACnE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;gBACzE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5B,CAAC,CAAA;YACF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAK;YAC7B,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA;YAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;gBAC/B,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACzD,CAAC,CAAC,CAAA;YACF,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YACtC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,KAAK,CAClC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAC7B,SAAS,CACV,CAAA;YACD,KAAK,EAAE,EAAE,CAAA;YACT,MAAM,KAAK,CAAC,WAAW,CACrB,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,IAAI,EACX,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAiB,EAAE,CAAC,CAAC,CACnF,CAAA;YACD,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAA;YACxB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;YACvC,QAAQ,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAC5B,CAAC;QACD,QAAQ,IAAI,MAAM,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;IAC9D,CAAC,CAAA;IAED;;;OAGG;IACH,MAAM,WAAW,GAAG,KAAK,EACvB,MAAU,EACV,MAAuB,EACvB,QAAkB,EAClB,KAA+B,EACd,EAAE;QACnB,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAA;QAC5C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QACpC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE;YAC3D,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ,EAAE,eAAe,GAAG,MAAM;SACnC,CAAC,CAAA;QACF,MAAM,SAAS,GAA+E,EAAE,CAAA;QAChG,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,EAAE,EAAE,CAAA;YACT,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,QAAQ,CACtC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EACpF;oBACE,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,KAAK,EAAE,KAAK,CAAC,KAAK;iBACnB,CACF,CAAA;gBACD,IAAI,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;oBACjB,SAAS,CAAC,IAAI,CAAC;wBACb,YAAY,EAAE,KAAK,CAAC,YAAY;wBAChC,IAAI,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;wBAC9D,IAAI;wBACJ,UAAU,EAAE,KAAK,CAAC,MAAM;qBACzB,CAAC,CAAA;oBACF,MAAK;gBACP,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,cAAc,CACrC,MAAM,CAAC,GAAG,EACV,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAClC,CAAA;QACD,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;QACpH,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,WAAW,EAAE,CAAC;YACxD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,WAAW,CAAC,CAAA;YACjD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,KAAK,CAClC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAC7B,SAAS,CACV,CAAA;YACD,KAAK,EAAE,EAAE,CAAA;YACT,MAAM,KAAK,CAAC,WAAW,CACrB,MAAM,CAAC,GAAG,EACV,MAAM,CAAC,IAAI,EACX,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAiB,EAAE,CAAC,CAAC,CACnF,CAAA;QACH,CAAC;QACD,MAAM,KAAK,CAAC,eAAe,CACzB,OAAO,EACP,MAAM,EACN,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3D,YAAY;YACZ,IAAI;YACJ,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU;SACX,CAAC,CAAC,EACH,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAClD,CAAA;QACD,OAAO,OAAO,CAAC,MAAM,CAAA;IACvB,CAAC,CAAA;IAED,OAAO;QACL,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YAC7B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;YACpD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC5C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;YAClF,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAA;YAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,WAAW,CAAC,GAAG,wBAAwB,CAAC,CAAA;YAC/E,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,MAAM,CAAC,EAAE;gBAChB,MAAM;gBACN,QAAQ;gBACR,IAAI;gBACJ,eAAe,EAAE,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC9E,YAAY;gBACZ,GAAG,CAAC,MAAM,CAAC,KAAK;oBACd,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,CAAC,YAAY,GAAG,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE;oBACnG,CAAC,CAAC,EAAE,CAAC;aACR,CAAA;QACH,CAAC;QAED,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;YAClF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;YACpC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC5C,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAC3E,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CACtE,CAAA;QACH,CAAC;QAED,SAAS,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;YAC3C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACpC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC5C,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;YACxG,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;YACzD,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,CAAA;YAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,MAAM,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;QAChG,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,EACd,IAAI,EACJ,KAAK,EAAE,MAAM,GAAG,kBAAkB,EAClC,KAAK,GAAG,IAAI,EACZ,KAAK,GAAG,IAAI,EACZ,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAClC,SAAS,GAAG,cAAc,CAAC,SAAS,EACpC,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,KAAK,GACN,EAAE,EAAE;YACH,KAAK,EAAE,EAAE,CAAA;YACT,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACpC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC5C,IAAI,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS;gBAAE,MAAM,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;YAC9E,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;YACxG,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC;gBACxB,KAAK,EAAE,CAAC,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;gBACxE,OAAO,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;aACxE,CAAC,CAAA;YAEF,MAAM,KAAK,GAAY,EAAE,CAAA;YACzB,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;gBACvC,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;gBAClG,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;gBAChD,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;oBACvB,IAAI,CAAC;wBACH,KAAK,EAAE,EAAE,CAAA;wBACT,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAA;wBACjE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;wBACf,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,QAAQ,eAAe,GAAG,CAAC,aAAa,gBAAgB,CAAC,CAAA;oBACzF,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,wFAAwF;wBACxF,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;4BAAE,MAAM,KAAK,CAAA;oBAC7E,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAe,EAAE,CAAA;YAC/B,IAAI,KAAK,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;gBACpD,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK;qBAC/B,MAAM,CAAC,UAAU,CAAC;qBAClB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;qBACrE,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;gBACrB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;wBAChF,IAAI,MAAM,GAAG,SAAS,CAAA;wBACtB,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;4BAC7B,IAAI,MAAM,IAAI,CAAC;gCAAE,MAAK;4BACtB,KAAK,EAAE,EAAE,CAAA;4BACT,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;4BAC3F,MAAM,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAA;4BACtC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;4BACnB,QAAQ,EAAE,CAAC,QAAQ,IAAI,KAAK,IAAI,CAAC,QAAQ,yBAAyB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;wBAChF,CAAC;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,EAAE,CAAA;YAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1G,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;YAChC,OAAO;gBACL,KAAK,EAAE,MAAM,CAAC,EAAE;gBAChB,cAAc,EAAE,MAAM,CAAC,SAAS;gBAChC,KAAK;gBACL,QAAQ;gBACR,IAAI,EAAE;oBACJ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAgB,EAAE,CAAC,CAAC;oBAC7D,GAAG,CAAC,KAAK;wBACP,CAAC,CAAC,KAAK,CAAC,KAAK;6BACR,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;6BAC1D,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAgB,EAAE,CAAC,CAAC;wBAC3D,CAAC,CAAC,EAAE,CAAC;iBACR;aACF,CAAA;QACH,CAAC;QAED,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YAC5B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;YAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACpC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;YACvE,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,YAAY,CACtC,OAAO,EACP,MAAM,EACN,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,CACrE,CAAA;YACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,CAAA;AAE7E,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAA;AAExF,0FAA0F;AAC1F,MAAM,aAAa,GAAG,CAAC,CAAgB,EAAE,CAAgB,EAAE,EAAE,CAC3D,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;AAEhE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAiB,EAAE,EAAE,CACpE,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAA;AAE1G,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAmB,EAAiB,EAAE;IAChH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAA;IACvC,MAAM,KAAK,GACT,OAAO,KAAK,IAAI;QACd,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,KAAK,aAAa,EAAE,CAAA;IACpG,MAAM,GAAG,GAAkB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;IAC5F,MAAM,KAAK,GACT,KAAK,KAAK,IAAI;QACZ,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,KAAK,CAAC;YACnC,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;gBACZ,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC;oBAClB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,OAAO,CAAA;IACnB,OAAO,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,CAAA;AAC1B,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { ServiceDeps } from "./deps.js";
2
+ import type { EmbeddingsService } from "./embeddings.js";
3
+ export declare const embeddingsSearch: (deps: ServiceDeps) => Pick<EmbeddingsService, "search" | "related">;
4
+ //# sourceMappingURL=embeddings-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddings-search.d.ts","sourceRoot":"","sources":["../../src/services/embeddings-search.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,KAAK,EAAiB,iBAAiB,EAAsC,MAAM,iBAAiB,CAAA;AAsB3G,eAAO,MAAM,gBAAgB,SAAU,WAAW,KAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,SAAS,CAuShG,CAAA"}