@memberjunction/ng-conversations 6.2.0-edge.0 → 6.2.0-edge.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/README.md +35 -2
  2. package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts +19 -3
  3. package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts.map +1 -1
  4. package/dist/lib/components/active-tasks/active-tasks-panel.component.js +39 -7
  5. package/dist/lib/components/active-tasks/active-tasks-panel.component.js.map +1 -1
  6. package/dist/lib/components/agent/active-agent-indicator.component.d.ts +74 -6
  7. package/dist/lib/components/agent/active-agent-indicator.component.d.ts.map +1 -1
  8. package/dist/lib/components/agent/active-agent-indicator.component.js +111 -21
  9. package/dist/lib/components/agent/active-agent-indicator.component.js.map +1 -1
  10. package/dist/lib/components/agent/agent-process-panel.component.d.ts +31 -5
  11. package/dist/lib/components/agent/agent-process-panel.component.d.ts.map +1 -1
  12. package/dist/lib/components/agent/agent-process-panel.component.js +71 -15
  13. package/dist/lib/components/agent/agent-process-panel.component.js.map +1 -1
  14. package/dist/lib/components/artifact/artifact-share-modal.component.d.ts +65 -9
  15. package/dist/lib/components/artifact/artifact-share-modal.component.d.ts.map +1 -1
  16. package/dist/lib/components/artifact/artifact-share-modal.component.js +169 -57
  17. package/dist/lib/components/artifact/artifact-share-modal.component.js.map +1 -1
  18. package/dist/lib/components/attachment/image-viewer.component.d.ts +77 -11
  19. package/dist/lib/components/attachment/image-viewer.component.d.ts.map +1 -1
  20. package/dist/lib/components/attachment/image-viewer.component.js +181 -47
  21. package/dist/lib/components/attachment/image-viewer.component.js.map +1 -1
  22. package/dist/lib/components/collection/artifact-collection-picker-modal.component.d.ts +129 -19
  23. package/dist/lib/components/collection/artifact-collection-picker-modal.component.d.ts.map +1 -1
  24. package/dist/lib/components/collection/artifact-collection-picker-modal.component.js +350 -116
  25. package/dist/lib/components/collection/artifact-collection-picker-modal.component.js.map +1 -1
  26. package/dist/lib/components/collection/artifact-create-modal.component.d.ts +60 -8
  27. package/dist/lib/components/collection/artifact-create-modal.component.d.ts.map +1 -1
  28. package/dist/lib/components/collection/artifact-create-modal.component.js +130 -46
  29. package/dist/lib/components/collection/artifact-create-modal.component.js.map +1 -1
  30. package/dist/lib/components/collection/collection-artifact-card.component.d.ts +63 -3
  31. package/dist/lib/components/collection/collection-artifact-card.component.d.ts.map +1 -1
  32. package/dist/lib/components/collection/collection-artifact-card.component.js +113 -19
  33. package/dist/lib/components/collection/collection-artifact-card.component.js.map +1 -1
  34. package/dist/lib/components/collection/collection-form-modal.component.d.ts +54 -8
  35. package/dist/lib/components/collection/collection-form-modal.component.d.ts.map +1 -1
  36. package/dist/lib/components/collection/collection-form-modal.component.js +130 -46
  37. package/dist/lib/components/collection/collection-form-modal.component.js.map +1 -1
  38. package/dist/lib/components/collection/collection-share-modal.component.d.ts +70 -10
  39. package/dist/lib/components/collection/collection-share-modal.component.d.ts.map +1 -1
  40. package/dist/lib/components/collection/collection-share-modal.component.js +175 -53
  41. package/dist/lib/components/collection/collection-share-modal.component.js.map +1 -1
  42. package/dist/lib/components/collection/collection-tree.component.d.ts +89 -9
  43. package/dist/lib/components/collection/collection-tree.component.d.ts.map +1 -1
  44. package/dist/lib/components/collection/collection-tree.component.js +220 -70
  45. package/dist/lib/components/collection/collection-tree.component.js.map +1 -1
  46. package/dist/lib/components/collection/collection-view.component.d.ts +89 -11
  47. package/dist/lib/components/collection/collection-view.component.d.ts.map +1 -1
  48. package/dist/lib/components/collection/collection-view.component.js +154 -40
  49. package/dist/lib/components/collection/collection-view.component.js.map +1 -1
  50. package/dist/lib/components/collection/collections-full-view.component.d.ts +390 -38
  51. package/dist/lib/components/collection/collections-full-view.component.d.ts.map +1 -1
  52. package/dist/lib/components/collection/collections-full-view.component.js +951 -367
  53. package/dist/lib/components/collection/collections-full-view.component.js.map +1 -1
  54. package/dist/lib/components/composer/ai-composer.component.d.ts +213 -18
  55. package/dist/lib/components/composer/ai-composer.component.d.ts.map +1 -1
  56. package/dist/lib/components/composer/ai-composer.component.js +388 -44
  57. package/dist/lib/components/composer/ai-composer.component.js.map +1 -1
  58. package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts +12 -1
  59. package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts.map +1 -1
  60. package/dist/lib/components/conversation/conversation-agent-picker.component.js +26 -4
  61. package/dist/lib/components/conversation/conversation-agent-picker.component.js.map +1 -1
  62. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +1090 -123
  63. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
  64. package/dist/lib/components/conversation/conversation-chat-area.component.js +2399 -706
  65. package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
  66. package/dist/lib/components/conversation/conversation-empty-state.component.d.ts +139 -19
  67. package/dist/lib/components/conversation/conversation-empty-state.component.d.ts.map +1 -1
  68. package/dist/lib/components/conversation/conversation-empty-state.component.js +296 -59
  69. package/dist/lib/components/conversation/conversation-empty-state.component.js.map +1 -1
  70. package/dist/lib/components/conversation/conversation-list.component.d.ts +579 -78
  71. package/dist/lib/components/conversation/conversation-list.component.d.ts.map +1 -1
  72. package/dist/lib/components/conversation/conversation-list.component.js +2322 -823
  73. package/dist/lib/components/conversation/conversation-list.component.js.map +1 -1
  74. package/dist/lib/components/conversation/pinned-messages-panel.component.d.ts +40 -4
  75. package/dist/lib/components/conversation/pinned-messages-panel.component.d.ts.map +1 -1
  76. package/dist/lib/components/conversation/pinned-messages-panel.component.js +72 -14
  77. package/dist/lib/components/conversation/pinned-messages-panel.component.js.map +1 -1
  78. package/dist/lib/components/dialogs/input-dialog.component.d.ts +57 -11
  79. package/dist/lib/components/dialogs/input-dialog.component.d.ts.map +1 -1
  80. package/dist/lib/components/dialogs/input-dialog.component.js +128 -16
  81. package/dist/lib/components/dialogs/input-dialog.component.js.map +1 -1
  82. package/dist/lib/components/dialogs/rating-dialog.component.d.ts +68 -10
  83. package/dist/lib/components/dialogs/rating-dialog.component.d.ts.map +1 -1
  84. package/dist/lib/components/dialogs/rating-dialog.component.js +151 -27
  85. package/dist/lib/components/dialogs/rating-dialog.component.js.map +1 -1
  86. package/dist/lib/components/export/export-modal.component.d.ts +84 -10
  87. package/dist/lib/components/export/export-modal.component.d.ts.map +1 -1
  88. package/dist/lib/components/export/export-modal.component.js +173 -49
  89. package/dist/lib/components/export/export-modal.component.js.map +1 -1
  90. package/dist/lib/components/global-tasks/global-tasks-panel.component.d.ts +29 -3
  91. package/dist/lib/components/global-tasks/global-tasks-panel.component.d.ts.map +1 -1
  92. package/dist/lib/components/global-tasks/global-tasks-panel.component.js +58 -12
  93. package/dist/lib/components/global-tasks/global-tasks-panel.component.js.map +1 -1
  94. package/dist/lib/components/library/library-full-view.component.d.ts +57 -8
  95. package/dist/lib/components/library/library-full-view.component.d.ts.map +1 -1
  96. package/dist/lib/components/library/library-full-view.component.js +119 -35
  97. package/dist/lib/components/library/library-full-view.component.js.map +1 -1
  98. package/dist/lib/components/members/members-modal.component.d.ts +76 -10
  99. package/dist/lib/components/members/members-modal.component.d.ts.map +1 -1
  100. package/dist/lib/components/members/members-modal.component.js +164 -50
  101. package/dist/lib/components/members/members-modal.component.js.map +1 -1
  102. package/dist/lib/components/message/actionable-commands.component.d.ts +37 -5
  103. package/dist/lib/components/message/actionable-commands.component.d.ts.map +1 -1
  104. package/dist/lib/components/message/actionable-commands.component.js +82 -16
  105. package/dist/lib/components/message/actionable-commands.component.js.map +1 -1
  106. package/dist/lib/components/message/conversation-message-rating.component.d.ts +46 -10
  107. package/dist/lib/components/message/conversation-message-rating.component.d.ts.map +1 -1
  108. package/dist/lib/components/message/conversation-message-rating.component.js +120 -36
  109. package/dist/lib/components/message/conversation-message-rating.component.js.map +1 -1
  110. package/dist/lib/components/message/message-input.component.d.ts +549 -74
  111. package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
  112. package/dist/lib/components/message/message-input.component.js +1250 -421
  113. package/dist/lib/components/message/message-input.component.js.map +1 -1
  114. package/dist/lib/components/message/message-item.component.d.ts +411 -29
  115. package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
  116. package/dist/lib/components/message/message-item.component.js +896 -222
  117. package/dist/lib/components/message/message-item.component.js.map +1 -1
  118. package/dist/lib/components/message/message-list.component.d.ts +288 -29
  119. package/dist/lib/components/message/message-list.component.d.ts.map +1 -1
  120. package/dist/lib/components/message/message-list.component.js +561 -123
  121. package/dist/lib/components/message/message-list.component.js.map +1 -1
  122. package/dist/lib/components/navigation/conversation-navigation.component.d.ts +64 -5
  123. package/dist/lib/components/navigation/conversation-navigation.component.d.ts.map +1 -1
  124. package/dist/lib/components/navigation/conversation-navigation.component.js +101 -11
  125. package/dist/lib/components/navigation/conversation-navigation.component.js.map +1 -1
  126. package/dist/lib/components/notification/activity-indicator.component.d.ts +6 -2
  127. package/dist/lib/components/notification/activity-indicator.component.d.ts.map +1 -1
  128. package/dist/lib/components/notification/activity-indicator.component.js +13 -3
  129. package/dist/lib/components/notification/activity-indicator.component.js.map +1 -1
  130. package/dist/lib/components/notification/notification-badge.component.d.ts +15 -3
  131. package/dist/lib/components/notification/notification-badge.component.d.ts.map +1 -1
  132. package/dist/lib/components/notification/notification-badge.component.js +36 -8
  133. package/dist/lib/components/notification/notification-badge.component.js.map +1 -1
  134. package/dist/lib/components/overlay/chat-overlay.component.d.ts +1 -1
  135. package/dist/lib/components/overlay/chat-overlay.component.js +4 -4
  136. package/dist/lib/components/overlay/chat-overlay.component.js.map +1 -1
  137. package/dist/lib/components/project/project-form-modal.component.d.ts +93 -11
  138. package/dist/lib/components/project/project-form-modal.component.d.ts.map +1 -1
  139. package/dist/lib/components/project/project-form-modal.component.js +348 -87
  140. package/dist/lib/components/project/project-form-modal.component.js.map +1 -1
  141. package/dist/lib/components/project/project-selector.component.d.ts +78 -8
  142. package/dist/lib/components/project/project-selector.component.d.ts.map +1 -1
  143. package/dist/lib/components/project/project-selector.component.js +177 -46
  144. package/dist/lib/components/project/project-selector.component.js.map +1 -1
  145. package/dist/lib/components/realtime/realtime-activity-rail.component.d.ts +1 -1
  146. package/dist/lib/components/realtime/realtime-activity-rail.component.js +2 -2
  147. package/dist/lib/components/realtime/realtime-activity-rail.component.js.map +1 -1
  148. package/dist/lib/components/realtime/realtime-delegation-card.component.d.ts +1 -1
  149. package/dist/lib/components/realtime/realtime-delegation-card.component.js +2 -2
  150. package/dist/lib/components/realtime/realtime-delegation-card.component.js.map +1 -1
  151. package/dist/lib/components/realtime/realtime-session-overlay.component.d.ts +2 -2
  152. package/dist/lib/components/realtime/realtime-session-overlay.component.js +18 -18
  153. package/dist/lib/components/realtime/realtime-session-overlay.component.js.map +1 -1
  154. package/dist/lib/components/realtime/realtime-session-timeline-card.component.d.ts +47 -23
  155. package/dist/lib/components/realtime/realtime-session-timeline-card.component.d.ts.map +1 -1
  156. package/dist/lib/components/realtime/realtime-session-timeline-card.component.js +136 -92
  157. package/dist/lib/components/realtime/realtime-session-timeline-card.component.js.map +1 -1
  158. package/dist/lib/components/realtime/realtime-surface-tabs.component.d.ts +2 -2
  159. package/dist/lib/components/realtime/realtime-surface-tabs.component.js +4 -4
  160. package/dist/lib/components/realtime/realtime-surface-tabs.component.js.map +1 -1
  161. package/dist/lib/components/realtime/realtime-surface-tabs.model.d.ts +1 -1
  162. package/dist/lib/components/realtime/realtime-surface-tabs.model.js +3 -3
  163. package/dist/lib/components/realtime/realtime-surface-tabs.model.js.map +1 -1
  164. package/dist/lib/components/realtime/realtime-ui-config.d.ts +13 -11
  165. package/dist/lib/components/realtime/realtime-ui-config.d.ts.map +1 -1
  166. package/dist/lib/components/realtime/realtime-ui-config.js +29 -25
  167. package/dist/lib/components/realtime/realtime-ui-config.js.map +1 -1
  168. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.d.ts +3 -1
  169. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.d.ts.map +1 -1
  170. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.js +6 -2
  171. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.js.map +1 -1
  172. package/dist/lib/components/search/search-panel.component.d.ts +133 -22
  173. package/dist/lib/components/search/search-panel.component.d.ts.map +1 -1
  174. package/dist/lib/components/search/search-panel.component.js +312 -83
  175. package/dist/lib/components/search/search-panel.component.js.map +1 -1
  176. package/dist/lib/components/share/share-modal.component.d.ts +69 -9
  177. package/dist/lib/components/share/share-modal.component.d.ts.map +1 -1
  178. package/dist/lib/components/share/share-modal.component.js +139 -31
  179. package/dist/lib/components/share/share-modal.component.js.map +1 -1
  180. package/dist/lib/components/shared/user-picker.component.d.ts +48 -8
  181. package/dist/lib/components/shared/user-picker.component.d.ts.map +1 -1
  182. package/dist/lib/components/shared/user-picker.component.js +110 -30
  183. package/dist/lib/components/shared/user-picker.component.js.map +1 -1
  184. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts +114 -11
  185. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts.map +1 -1
  186. package/dist/lib/components/sidebar/conversation-sidebar.component.js +199 -21
  187. package/dist/lib/components/sidebar/conversation-sidebar.component.js.map +1 -1
  188. package/dist/lib/components/sidebar/routines-section.component.d.ts +20 -1
  189. package/dist/lib/components/sidebar/routines-section.component.d.ts.map +1 -1
  190. package/dist/lib/components/sidebar/routines-section.component.js +25 -5
  191. package/dist/lib/components/sidebar/routines-section.component.js.map +1 -1
  192. package/dist/lib/components/slots/slot-interfaces.d.ts +19 -0
  193. package/dist/lib/components/slots/slot-interfaces.d.ts.map +1 -1
  194. package/dist/lib/components/slots/slot-interfaces.js.map +1 -1
  195. package/dist/lib/components/task/tasks-full-view.component.d.ts +95 -13
  196. package/dist/lib/components/task/tasks-full-view.component.d.ts.map +1 -1
  197. package/dist/lib/components/task/tasks-full-view.component.js +223 -75
  198. package/dist/lib/components/task/tasks-full-view.component.js.map +1 -1
  199. package/dist/lib/components/tasks/task-widget.component.d.ts +46 -6
  200. package/dist/lib/components/tasks/task-widget.component.d.ts.map +1 -1
  201. package/dist/lib/components/tasks/task-widget.component.js +100 -16
  202. package/dist/lib/components/tasks/task-widget.component.js.map +1 -1
  203. package/dist/lib/components/tasks/tasks-dropdown.component.d.ts +64 -7
  204. package/dist/lib/components/tasks/tasks-dropdown.component.d.ts.map +1 -1
  205. package/dist/lib/components/tasks/tasks-dropdown.component.js +127 -27
  206. package/dist/lib/components/tasks/tasks-dropdown.component.js.map +1 -1
  207. package/dist/lib/components/thread/thread-panel.component.d.ts +66 -8
  208. package/dist/lib/components/thread/thread-panel.component.d.ts.map +1 -1
  209. package/dist/lib/components/thread/thread-panel.component.js +146 -36
  210. package/dist/lib/components/thread/thread-panel.component.js.map +1 -1
  211. package/dist/lib/components/toast/toast.component.d.ts +11 -1
  212. package/dist/lib/components/toast/toast.component.d.ts.map +1 -1
  213. package/dist/lib/components/toast/toast.component.js +25 -5
  214. package/dist/lib/components/toast/toast.component.js.map +1 -1
  215. package/dist/lib/components/workspace/conversation-workspace.component.d.ts +385 -42
  216. package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
  217. package/dist/lib/components/workspace/conversation-workspace.component.js +887 -291
  218. package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
  219. package/dist/lib/composer-plugins/base-conversation-mention.provider.d.ts +8 -0
  220. package/dist/lib/composer-plugins/base-conversation-mention.provider.d.ts.map +1 -1
  221. package/dist/lib/composer-plugins/base-conversation-mention.provider.js +8 -1
  222. package/dist/lib/composer-plugins/base-conversation-mention.provider.js.map +1 -1
  223. package/dist/lib/directives/chat-slot.directive.d.ts +5 -1
  224. package/dist/lib/directives/chat-slot.directive.d.ts.map +1 -1
  225. package/dist/lib/directives/chat-slot.directive.js.map +1 -1
  226. package/dist/lib/directives/search-shortcut.directive.d.ts +9 -1
  227. package/dist/lib/directives/search-shortcut.directive.d.ts.map +1 -1
  228. package/dist/lib/directives/search-shortcut.directive.js +14 -4
  229. package/dist/lib/directives/search-shortcut.directive.js.map +1 -1
  230. package/dist/lib/events/chat-events.d.ts +34 -7
  231. package/dist/lib/events/chat-events.d.ts.map +1 -1
  232. package/dist/lib/events/chat-events.js +37 -7
  233. package/dist/lib/events/chat-events.js.map +1 -1
  234. package/dist/lib/models/agent-turn.model.d.ts +103 -0
  235. package/dist/lib/models/agent-turn.model.d.ts.map +1 -0
  236. package/dist/lib/models/agent-turn.model.js +12 -0
  237. package/dist/lib/models/agent-turn.model.js.map +1 -0
  238. package/dist/lib/models/collection-view.model.js.map +1 -1
  239. package/dist/lib/models/conversation-state.model.d.ts +8 -0
  240. package/dist/lib/models/conversation-state.model.d.ts.map +1 -1
  241. package/dist/lib/models/conversation-state.model.js.map +1 -1
  242. package/dist/lib/models/lazy-artifact-info.d.ts +44 -12
  243. package/dist/lib/models/lazy-artifact-info.d.ts.map +1 -1
  244. package/dist/lib/models/lazy-artifact-info.js +98 -34
  245. package/dist/lib/models/lazy-artifact-info.js.map +1 -1
  246. package/dist/lib/services/active-tasks.service.d.ts +30 -4
  247. package/dist/lib/services/active-tasks.service.d.ts.map +1 -1
  248. package/dist/lib/services/active-tasks.service.js +71 -19
  249. package/dist/lib/services/active-tasks.service.js.map +1 -1
  250. package/dist/lib/services/agent-state.service.d.ts +17 -1
  251. package/dist/lib/services/agent-state.service.d.ts.map +1 -1
  252. package/dist/lib/services/agent-state.service.js +48 -16
  253. package/dist/lib/services/agent-state.service.js.map +1 -1
  254. package/dist/lib/services/artifact-permission.service.d.ts +39 -0
  255. package/dist/lib/services/artifact-permission.service.d.ts.map +1 -1
  256. package/dist/lib/services/artifact-permission.service.js +152 -17
  257. package/dist/lib/services/artifact-permission.service.js.map +1 -1
  258. package/dist/lib/services/artifact-state.service.d.ts +58 -5
  259. package/dist/lib/services/artifact-state.service.d.ts.map +1 -1
  260. package/dist/lib/services/artifact-state.service.js +135 -35
  261. package/dist/lib/services/artifact-state.service.js.map +1 -1
  262. package/dist/lib/services/collection-permission.service.d.ts +28 -0
  263. package/dist/lib/services/collection-permission.service.d.ts.map +1 -1
  264. package/dist/lib/services/collection-permission.service.js +88 -32
  265. package/dist/lib/services/collection-permission.service.js.map +1 -1
  266. package/dist/lib/services/collection-state.service.d.ts +11 -1
  267. package/dist/lib/services/collection-state.service.d.ts.map +1 -1
  268. package/dist/lib/services/collection-state.service.js +25 -5
  269. package/dist/lib/services/collection-state.service.js.map +1 -1
  270. package/dist/lib/services/conversation-agent.service.d.ts +26 -4
  271. package/dist/lib/services/conversation-agent.service.d.ts.map +1 -1
  272. package/dist/lib/services/conversation-agent.service.js +57 -18
  273. package/dist/lib/services/conversation-agent.service.js.map +1 -1
  274. package/dist/lib/services/conversation-attachment.service.d.ts +17 -0
  275. package/dist/lib/services/conversation-attachment.service.d.ts.map +1 -1
  276. package/dist/lib/services/conversation-attachment.service.js +38 -10
  277. package/dist/lib/services/conversation-attachment.service.js.map +1 -1
  278. package/dist/lib/services/conversation-streaming.service.d.ts +22 -0
  279. package/dist/lib/services/conversation-streaming.service.d.ts.map +1 -1
  280. package/dist/lib/services/conversation-streaming.service.js +50 -10
  281. package/dist/lib/services/conversation-streaming.service.js.map +1 -1
  282. package/dist/lib/services/data-cache.service.d.ts +31 -0
  283. package/dist/lib/services/data-cache.service.d.ts.map +1 -1
  284. package/dist/lib/services/data-cache.service.js +71 -15
  285. package/dist/lib/services/data-cache.service.js.map +1 -1
  286. package/dist/lib/services/dialog.service.d.ts +13 -0
  287. package/dist/lib/services/dialog.service.d.ts.map +1 -1
  288. package/dist/lib/services/dialog.service.js +25 -5
  289. package/dist/lib/services/dialog.service.js.map +1 -1
  290. package/dist/lib/services/export.service.d.ts +2 -0
  291. package/dist/lib/services/export.service.d.ts.map +1 -1
  292. package/dist/lib/services/export.service.js +5 -1
  293. package/dist/lib/services/export.service.js.map +1 -1
  294. package/dist/lib/services/mention-parser.service.d.ts +10 -0
  295. package/dist/lib/services/mention-parser.service.d.ts.map +1 -1
  296. package/dist/lib/services/mention-parser.service.js +25 -5
  297. package/dist/lib/services/mention-parser.service.js.map +1 -1
  298. package/dist/lib/services/notification.service.d.ts +54 -6
  299. package/dist/lib/services/notification.service.d.ts.map +1 -1
  300. package/dist/lib/services/notification.service.js +123 -27
  301. package/dist/lib/services/notification.service.js.map +1 -1
  302. package/dist/lib/services/realtime-audio-recorder.d.ts +4 -4
  303. package/dist/lib/services/realtime-audio-recorder.js +12 -12
  304. package/dist/lib/services/realtime-audio-recorder.js.map +1 -1
  305. package/dist/lib/services/realtime-pcm-wav.d.ts +4 -0
  306. package/dist/lib/services/realtime-pcm-wav.d.ts.map +1 -1
  307. package/dist/lib/services/realtime-pcm-wav.js +10 -2
  308. package/dist/lib/services/realtime-pcm-wav.js.map +1 -1
  309. package/dist/lib/services/search.service.d.ts +42 -9
  310. package/dist/lib/services/search.service.d.ts.map +1 -1
  311. package/dist/lib/services/search.service.js +103 -23
  312. package/dist/lib/services/search.service.js.map +1 -1
  313. package/dist/lib/services/toast.service.d.ts +19 -1
  314. package/dist/lib/services/toast.service.d.ts.map +1 -1
  315. package/dist/lib/services/toast.service.js +45 -9
  316. package/dist/lib/services/toast.service.js.map +1 -1
  317. package/dist/lib/services/ui-command-handler.service.d.ts +16 -2
  318. package/dist/lib/services/ui-command-handler.service.d.ts.map +1 -1
  319. package/dist/lib/services/ui-command-handler.service.js +36 -8
  320. package/dist/lib/services/ui-command-handler.service.js.map +1 -1
  321. package/dist/lib/utils/agent-artifact-summary.d.ts +2 -2
  322. package/dist/lib/utils/agent-artifact-summary.js +3 -3
  323. package/dist/lib/utils/agent-artifact-summary.js.map +1 -1
  324. package/dist/lib/utils/agent-turn-routing.d.ts +69 -0
  325. package/dist/lib/utils/agent-turn-routing.d.ts.map +1 -0
  326. package/dist/lib/utils/agent-turn-routing.js +96 -0
  327. package/dist/lib/utils/agent-turn-routing.js.map +1 -0
  328. package/dist/lib/utils/artifact-panel-action.d.ts +15 -4
  329. package/dist/lib/utils/artifact-panel-action.d.ts.map +1 -1
  330. package/dist/lib/utils/artifact-panel-action.js +10 -2
  331. package/dist/lib/utils/artifact-panel-action.js.map +1 -1
  332. package/dist/lib/utils/distinct-artifacts.d.ts +2 -0
  333. package/dist/lib/utils/distinct-artifacts.d.ts.map +1 -1
  334. package/dist/lib/utils/distinct-artifacts.js +5 -1
  335. package/dist/lib/utils/distinct-artifacts.js.map +1 -1
  336. package/dist/lib/utils/plan-mode-preference.d.ts +2 -2
  337. package/dist/lib/utils/plan-mode-preference.js +6 -6
  338. package/dist/lib/utils/plan-mode-preference.js.map +1 -1
  339. package/dist/public-api.d.ts +3 -0
  340. package/dist/public-api.d.ts.map +1 -1
  341. package/dist/public-api.js +3 -0
  342. package/dist/public-api.js.map +1 -1
  343. package/package.json +32 -32
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-artifact-info.d.ts","sourceRoot":"","sources":["../../../src/lib/models/lazy-artifact-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAA0B,MAAM,+BAA+B,CAAC;AAClH,OAAO,EAAY,QAAQ,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE7E;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAgB;IAsBzB,OAAO,CAAC,WAAW;IAGnB;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC;IA5BnB,SAAgB,oBAAoB,EAAE,MAAM,CAAC;IAC7C,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,iBAAiB,EAAE,MAAM,CAAC;IAC1C,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,SAAgB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,SAAgB,gBAAgB,EAAE,IAAI,CAAC;IACvC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,mBAAmB,EAAE,MAAM,CAAC;IAC5C,SAAgB,UAAU,EAAE,MAAM,CAAC;IAGnC,OAAO,CAAC,iBAAiB,CAAiC;IAC1D,OAAO,CAAC,gBAAgB,CAAwC;IAChE,OAAO,CAAC,oBAAoB,CAA8B;gBAGxD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,WAAW,EAAE,QAAQ,EAC7B,iBAAiB,CAAC,EAAE,gBAAgB,EACpC,gBAAgB,CAAC,EAAE,uBAAuB;IAC1C;;;;OAIG;IACK,QAAQ,CAAC,EAAE,iBAAiB,YAAA;IA0BtC;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAc9C;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAcpD;;;OAGG;IACH,IAAI,QAAQ,IAAI,OAAO,CAUtB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;;OAGG;YACW,oBAAoB;IASlC;;;OAGG;YACW,mBAAmB;IASjC;;;;OAIG;YACW,qBAAqB;YAkBrB,cAAc;YAed,kBAAkB;YAMlB,iBAAiB;CAKhC"}
1
+ {"version":3,"file":"lazy-artifact-info.d.ts","sourceRoot":"","sources":["../../../src/lib/models/lazy-artifact-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAA0B,MAAM,+BAA+B,CAAC;AAClH,OAAO,EAAY,QAAQ,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE7E;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAgB;IAkFzB,OAAO,CAAC,WAAW;IAGnB;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC;IAxFnB,SAAgB,oBAAoB,EAAE,MAAM,CAAC;IAE7C,oDAAoD;IACpD,IAAW,oBAAoB,IAAI,MAAM,CAExC;IACD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAElC,yCAAyC;IACzC,IAAW,SAAS,IAAI,MAAM,CAE7B;IACD,SAAgB,iBAAiB,EAAE,MAAM,CAAC;IAE1C,iDAAiD;IACjD,IAAW,iBAAiB,IAAI,MAAM,CAErC;IACD,SAAgB,aAAa,EAAE,MAAM,CAAC;IAEtC,6CAA6C;IAC7C,IAAW,aAAa,IAAI,MAAM,CAEjC;IACD,SAAgB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3C,2CAA2C;IAC3C,IAAW,WAAW,IAAI,MAAM,GAAG,IAAI,CAEtC;IACD,SAAgB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAElD,kDAAkD;IAClD,IAAW,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAE7C;IACD,SAAgB,gBAAgB,EAAE,IAAI,CAAC;IAEvC,gDAAgD;IAChD,IAAW,gBAAgB,IAAI,IAAI,CAElC;IACD,SAAgB,UAAU,EAAE,MAAM,CAAC;IAEnC,0CAA0C;IAC1C,IAAW,UAAU,IAAI,MAAM,CAE9B;IACD,SAAgB,YAAY,EAAE,MAAM,CAAC;IAErC,4CAA4C;IAC5C,IAAW,YAAY,IAAI,MAAM,CAEhC;IACD,SAAgB,YAAY,EAAE,MAAM,CAAC;IAErC,4CAA4C;IAC5C,IAAW,YAAY,IAAI,MAAM,CAEhC;IACD,SAAgB,mBAAmB,EAAE,MAAM,CAAC;IAE5C,mDAAmD;IACnD,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IACD,SAAgB,UAAU,EAAE,MAAM,CAAC;IAEnC,0CAA0C;IAC1C,IAAW,UAAU,IAAI,MAAM,CAE9B;IAGD,OAAO,CAAC,iBAAiB,CAAiC;IAC1D,OAAO,CAAC,gBAAgB,CAAwC;IAChE,OAAO,CAAC,oBAAoB,CAA8B;gBAGxD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,WAAW,EAAE,QAAQ,EAC7B,iBAAiB,CAAC,EAAE,gBAAgB,EACpC,gBAAgB,CAAC,EAAE,uBAAuB;IAC1C;;;;OAIG;IACK,QAAQ,CAAC,EAAE,iBAAiB,YAAA;IA0BtC;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAc9C,2CAA2C;IACrC,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAI9C;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAcpD,0CAA0C;IACpC,UAAU,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAIpD;;;OAGG;IACH,IAAI,QAAQ,IAAI,OAAO,CAUtB;IAED,wCAAwC;IACxC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,yCAAyC;IACzC,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;;OAGG;YACW,oBAAoB;IASlC;;;OAGG;YACW,mBAAmB;IASjC;;;;OAIG;YACW,qBAAqB;YAkBrB,cAAc;YAed,kBAAkB;YAMlB,iBAAiB;CAKhC"}
@@ -18,18 +18,66 @@ export class LazyArtifactInfo {
18
18
  currentUser;
19
19
  provider;
20
20
  // Display data (always available from initial query - no lazy loading needed)
21
- conversationDetailId;
22
- direction;
23
- artifactVersionId;
24
- versionNumber;
25
- versionName;
26
- versionDescription;
27
- versionCreatedAt;
28
- artifactId;
29
- artifactName;
30
- artifactType;
31
- artifactDescription;
32
- visibility;
21
+ ConversationDetailId;
22
+ /** @deprecated Use {@link ConversationDetailId}. */
23
+ get conversationDetailId() {
24
+ return this.ConversationDetailId;
25
+ }
26
+ Direction;
27
+ /** @deprecated Use {@link Direction}. */
28
+ get direction() {
29
+ return this.Direction;
30
+ }
31
+ ArtifactVersionId;
32
+ /** @deprecated Use {@link ArtifactVersionId}. */
33
+ get artifactVersionId() {
34
+ return this.ArtifactVersionId;
35
+ }
36
+ VersionNumber;
37
+ /** @deprecated Use {@link VersionNumber}. */
38
+ get versionNumber() {
39
+ return this.VersionNumber;
40
+ }
41
+ VersionName;
42
+ /** @deprecated Use {@link VersionName}. */
43
+ get versionName() {
44
+ return this.VersionName;
45
+ }
46
+ VersionDescription;
47
+ /** @deprecated Use {@link VersionDescription}. */
48
+ get versionDescription() {
49
+ return this.VersionDescription;
50
+ }
51
+ VersionCreatedAt;
52
+ /** @deprecated Use {@link VersionCreatedAt}. */
53
+ get versionCreatedAt() {
54
+ return this.VersionCreatedAt;
55
+ }
56
+ ArtifactId;
57
+ /** @deprecated Use {@link ArtifactId}. */
58
+ get artifactId() {
59
+ return this.ArtifactId;
60
+ }
61
+ ArtifactName;
62
+ /** @deprecated Use {@link ArtifactName}. */
63
+ get artifactName() {
64
+ return this.ArtifactName;
65
+ }
66
+ ArtifactType;
67
+ /** @deprecated Use {@link ArtifactType}. */
68
+ get artifactType() {
69
+ return this.ArtifactType;
70
+ }
71
+ ArtifactDescription;
72
+ /** @deprecated Use {@link ArtifactDescription}. */
73
+ get artifactDescription() {
74
+ return this.ArtifactDescription;
75
+ }
76
+ Visibility;
77
+ /** @deprecated Use {@link Visibility}. */
78
+ get visibility() {
79
+ return this.Visibility;
80
+ }
33
81
  // Fallback entities loaded directly when engine doesn't have them yet
34
82
  _fallbackArtifact = null;
35
83
  _fallbackVersion = null;
@@ -45,18 +93,18 @@ export class LazyArtifactInfo {
45
93
  this.provider = provider;
46
94
  // Populate display data from query result
47
95
  // These fields come from GetConversationComplete query
48
- this.conversationDetailId = queryResult.ConversationDetailID;
49
- this.direction = queryResult.Direction;
50
- this.artifactVersionId = queryResult.ArtifactVersionID;
51
- this.versionNumber = queryResult.VersionNumber;
52
- this.versionName = queryResult.VersionName || null;
53
- this.versionDescription = queryResult.VersionDescription || null;
54
- this.versionCreatedAt = queryResult.VersionCreatedAt ? new Date(queryResult.VersionCreatedAt) : new Date();
55
- this.artifactId = queryResult.ArtifactID;
56
- this.artifactName = queryResult.ArtifactName;
57
- this.artifactType = queryResult.ArtifactType;
58
- this.artifactDescription = queryResult.ArtifactDescription || '';
59
- this.visibility = queryResult.Visibility || 'User';
96
+ this.ConversationDetailId = queryResult.ConversationDetailID;
97
+ this.Direction = queryResult.Direction;
98
+ this.ArtifactVersionId = queryResult.ArtifactVersionID;
99
+ this.VersionNumber = queryResult.VersionNumber;
100
+ this.VersionName = queryResult.VersionName || null;
101
+ this.VersionDescription = queryResult.VersionDescription || null;
102
+ this.VersionCreatedAt = queryResult.VersionCreatedAt ? new Date(queryResult.VersionCreatedAt) : new Date();
103
+ this.ArtifactId = queryResult.ArtifactID;
104
+ this.ArtifactName = queryResult.ArtifactName;
105
+ this.ArtifactType = queryResult.ArtifactType;
106
+ this.ArtifactDescription = queryResult.ArtifactDescription || '';
107
+ this.Visibility = queryResult.Visibility || 'User';
60
108
  // If entities were pre-loaded via batch query, store as fallbacks
61
109
  if (preloadedArtifact) {
62
110
  this._fallbackArtifact = preloadedArtifact;
@@ -69,11 +117,11 @@ export class LazyArtifactInfo {
69
117
  * Gets the full Artifact entity.
70
118
  * Checks ArtifactMetadataEngine first (always fresh), falls back to direct load.
71
119
  */
72
- async getArtifact() {
120
+ async GetArtifact() {
73
121
  // Try the engine first — it stays in sync via BaseEntity events
74
122
  const engine = ArtifactMetadataEngine.Instance;
75
123
  if (engine.Loaded) {
76
- const fromEngine = engine.FindCachedArtifactByID(this.artifactId);
124
+ const fromEngine = engine.FindCachedArtifactByID(this.ArtifactId);
77
125
  if (fromEngine) {
78
126
  return fromEngine;
79
127
  }
@@ -81,15 +129,19 @@ export class LazyArtifactInfo {
81
129
  // Engine doesn't have it yet — use fallback
82
130
  return this.loadArtifactFallback();
83
131
  }
132
+ /** @deprecated Use {@link GetArtifact}. */
133
+ async getArtifact() {
134
+ return this.GetArtifact();
135
+ }
84
136
  /**
85
137
  * Gets the full ArtifactVersion entity including Content field.
86
138
  * Checks ArtifactMetadataEngine first (always fresh), falls back to direct load.
87
139
  */
88
- async getVersion() {
140
+ async GetVersion() {
89
141
  // Try the engine first — it stays in sync via BaseEntity events
90
142
  const engine = ArtifactMetadataEngine.Instance;
91
143
  if (engine.Loaded) {
92
- const fromEngine = engine.FindCachedArtifactVersionByID(this.artifactVersionId);
144
+ const fromEngine = engine.FindCachedArtifactVersionByID(this.ArtifactVersionId);
93
145
  if (fromEngine) {
94
146
  return fromEngine;
95
147
  }
@@ -97,27 +149,39 @@ export class LazyArtifactInfo {
97
149
  // Engine doesn't have it yet — use fallback
98
150
  return this.loadVersionFallback();
99
151
  }
152
+ /** @deprecated Use {@link GetVersion}. */
153
+ async getVersion() {
154
+ return this.GetVersion();
155
+ }
100
156
  /**
101
157
  * Checks if the artifact entities can be accessed without triggering a load.
102
158
  * True if the engine has them or fallbacks are populated.
103
159
  */
104
- get isLoaded() {
160
+ get IsLoaded() {
105
161
  const engine = ArtifactMetadataEngine.Instance;
106
162
  if (engine.Loaded) {
107
- const hasArtifact = !!engine.FindCachedArtifactByID(this.artifactId);
108
- const hasVersion = !!engine.FindCachedArtifactVersionByID(this.artifactVersionId);
163
+ const hasArtifact = !!engine.FindCachedArtifactByID(this.ArtifactId);
164
+ const hasVersion = !!engine.FindCachedArtifactVersionByID(this.ArtifactVersionId);
109
165
  if (hasArtifact && hasVersion) {
110
166
  return true;
111
167
  }
112
168
  }
113
169
  return this._fallbackArtifact !== null && this._fallbackVersion !== null;
114
170
  }
171
+ /** @deprecated Use {@link IsLoaded}. */
172
+ get isLoaded() {
173
+ return this.IsLoaded;
174
+ }
115
175
  /**
116
176
  * Checks if a fallback load is currently in progress.
117
177
  */
118
- get isLoading() {
178
+ get IsLoading() {
119
179
  return this._fallbackLoadPromise !== null;
120
180
  }
181
+ /** @deprecated Use {@link IsLoading}. */
182
+ get isLoading() {
183
+ return this.IsLoading;
184
+ }
121
185
  /**
122
186
  * Loads the artifact directly from the database as a fallback.
123
187
  * Uses a shared promise to coalesce concurrent calls.
@@ -178,12 +242,12 @@ export class LazyArtifactInfo {
178
242
  }
179
243
  async loadSingleArtifact(md) {
180
244
  const artifact = await md.GetEntityObject('MJ: Artifacts', this.currentUser);
181
- await artifact.Load(this.artifactId);
245
+ await artifact.Load(this.ArtifactId);
182
246
  return artifact;
183
247
  }
184
248
  async loadSingleVersion(md) {
185
249
  const version = await md.GetEntityObject('MJ: Artifact Versions', this.currentUser);
186
- await version.Load(this.artifactVersionId);
250
+ await version.Load(this.ArtifactVersionId);
187
251
  return version;
188
252
  }
189
253
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-artifact-info.js","sourceRoot":"","sources":["../../../src/lib/models/lazy-artifact-info.ts"],"names":[],"mappings":"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","sourcesContent":["import { MJArtifactEntity, MJArtifactVersionEntity, ArtifactMetadataEngine } from '@memberjunction/core-entities';\nimport { Metadata, UserInfo, IMetadataProvider } from '@memberjunction/core';\n\n/**\n * Represents artifact information with lazy-loading capabilities.\n * Stores minimal display data initially (from query) and loads full entities on-demand.\n *\n * For full entity access, this first checks {@link ArtifactMetadataEngine}'s\n * on-demand caches (populated when an artifact's versions were loaded earlier\n * this session) and otherwise loads the single artifact/version directly from\n * the database. Artifacts and versions are no longer bulk-loaded at boot — a\n * version's `Content` can be arbitrarily large — so a direct load is the normal\n * path here, not just a fallback.\n *\n * The direct load is coalesced via a shared promise so concurrent callers issue\n * a single query.\n */\nexport class LazyArtifactInfo {\n // Display data (always available from initial query - no lazy loading needed)\n public readonly conversationDetailId: string;\n public readonly direction: string;\n public readonly artifactVersionId: string;\n public readonly versionNumber: number;\n public readonly versionName: string | null;\n public readonly versionDescription: string | null;\n public readonly versionCreatedAt: Date;\n public readonly artifactId: string;\n public readonly artifactName: string;\n public readonly artifactType: string;\n public readonly artifactDescription: string;\n public readonly visibility: string;\n\n // Fallback entities loaded directly when engine doesn't have them yet\n private _fallbackArtifact: MJArtifactEntity | null = null;\n private _fallbackVersion: MJArtifactVersionEntity | null = null;\n private _fallbackLoadPromise: Promise<void> | null = null;\n\n constructor(\n queryResult: Record<string, unknown>,\n private currentUser: UserInfo,\n preloadedArtifact?: MJArtifactEntity,\n preloadedVersion?: MJArtifactVersionEntity,\n /**\n * The provider the fallback load reads through. A component constructing this in a\n * multi-provider tree passes its own `ProviderToUse`; omitting it falls back to the global\n * default, named explicitly rather than reached for via `new Metadata()`.\n */\n private provider?: IMetadataProvider\n ) {\n // Populate display data from query result\n // These fields come from GetConversationComplete query\n this.conversationDetailId = queryResult.ConversationDetailID as string;\n this.direction = queryResult.Direction as string;\n this.artifactVersionId = queryResult.ArtifactVersionID as string;\n this.versionNumber = queryResult.VersionNumber as number;\n this.versionName = (queryResult.VersionName as string) || null;\n this.versionDescription = (queryResult.VersionDescription as string) || null;\n this.versionCreatedAt = queryResult.VersionCreatedAt ? new Date(queryResult.VersionCreatedAt as string) : new Date();\n this.artifactId = queryResult.ArtifactID as string;\n this.artifactName = queryResult.ArtifactName as string;\n this.artifactType = queryResult.ArtifactType as string;\n this.artifactDescription = (queryResult.ArtifactDescription as string) || '';\n this.visibility = (queryResult.Visibility as string) || 'User';\n\n // If entities were pre-loaded via batch query, store as fallbacks\n if (preloadedArtifact) {\n this._fallbackArtifact = preloadedArtifact;\n }\n if (preloadedVersion) {\n this._fallbackVersion = preloadedVersion;\n }\n }\n\n /**\n * Gets the full Artifact entity.\n * Checks ArtifactMetadataEngine first (always fresh), falls back to direct load.\n */\n async getArtifact(): Promise<MJArtifactEntity> {\n // Try the engine first — it stays in sync via BaseEntity events\n const engine = ArtifactMetadataEngine.Instance;\n if (engine.Loaded) {\n const fromEngine = engine.FindCachedArtifactByID(this.artifactId);\n if (fromEngine) {\n return fromEngine;\n }\n }\n\n // Engine doesn't have it yet — use fallback\n return this.loadArtifactFallback();\n }\n\n /**\n * Gets the full ArtifactVersion entity including Content field.\n * Checks ArtifactMetadataEngine first (always fresh), falls back to direct load.\n */\n async getVersion(): Promise<MJArtifactVersionEntity> {\n // Try the engine first — it stays in sync via BaseEntity events\n const engine = ArtifactMetadataEngine.Instance;\n if (engine.Loaded) {\n const fromEngine = engine.FindCachedArtifactVersionByID(this.artifactVersionId);\n if (fromEngine) {\n return fromEngine;\n }\n }\n\n // Engine doesn't have it yet — use fallback\n return this.loadVersionFallback();\n }\n\n /**\n * Checks if the artifact entities can be accessed without triggering a load.\n * True if the engine has them or fallbacks are populated.\n */\n get isLoaded(): boolean {\n const engine = ArtifactMetadataEngine.Instance;\n if (engine.Loaded) {\n const hasArtifact = !!engine.FindCachedArtifactByID(this.artifactId);\n const hasVersion = !!engine.FindCachedArtifactVersionByID(this.artifactVersionId);\n if (hasArtifact && hasVersion) {\n return true;\n }\n }\n return this._fallbackArtifact !== null && this._fallbackVersion !== null;\n }\n\n /**\n * Checks if a fallback load is currently in progress.\n */\n get isLoading(): boolean {\n return this._fallbackLoadPromise !== null;\n }\n\n /**\n * Loads the artifact directly from the database as a fallback.\n * Uses a shared promise to coalesce concurrent calls.\n */\n private async loadArtifactFallback(): Promise<MJArtifactEntity> {\n if (this._fallbackArtifact) {\n return this._fallbackArtifact;\n }\n\n await this.ensureFallbacksLoaded();\n return this._fallbackArtifact!;\n }\n\n /**\n * Loads the artifact version directly from the database as a fallback.\n * Uses a shared promise to coalesce concurrent calls.\n */\n private async loadVersionFallback(): Promise<MJArtifactVersionEntity> {\n if (this._fallbackVersion) {\n return this._fallbackVersion;\n }\n\n await this.ensureFallbacksLoaded();\n return this._fallbackVersion!;\n }\n\n /**\n * Loads both artifact and version from database in parallel.\n * Called only when ArtifactMetadataEngine doesn't have the entities.\n * Shares a single promise across concurrent requests.\n */\n private async ensureFallbacksLoaded(): Promise<void> {\n if (this._fallbackArtifact && this._fallbackVersion) {\n return;\n }\n\n if (this._fallbackLoadPromise) {\n await this._fallbackLoadPromise;\n return;\n }\n\n this._fallbackLoadPromise = this.doFallbackLoad();\n try {\n await this._fallbackLoadPromise;\n } finally {\n this._fallbackLoadPromise = null;\n }\n }\n\n private async doFallbackLoad(): Promise<void> {\n try {\n const md = this.provider ?? Metadata.Provider;\n const [artifact, version] = await Promise.all([\n this._fallbackArtifact ? Promise.resolve(this._fallbackArtifact) : this.loadSingleArtifact(md),\n this._fallbackVersion ? Promise.resolve(this._fallbackVersion) : this.loadSingleVersion(md)\n ]);\n this._fallbackArtifact = artifact;\n this._fallbackVersion = version;\n } catch (error) {\n console.error('LazyArtifactInfo: Error loading fallback entities:', error);\n throw error;\n }\n }\n\n private async loadSingleArtifact(md: IMetadataProvider): Promise<MJArtifactEntity> {\n const artifact = await md.GetEntityObject<MJArtifactEntity>('MJ: Artifacts', this.currentUser);\n await artifact.Load(this.artifactId);\n return artifact;\n }\n\n private async loadSingleVersion(md: IMetadataProvider): Promise<MJArtifactVersionEntity> {\n const version = await md.GetEntityObject<MJArtifactVersionEntity>('MJ: Artifact Versions', this.currentUser);\n await version.Load(this.artifactVersionId);\n return version;\n }\n}\n"]}
1
+ {"version":3,"file":"lazy-artifact-info.js","sourceRoot":"","sources":["../../../src/lib/models/lazy-artifact-info.ts"],"names":[],"mappings":"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","sourcesContent":["import { MJArtifactEntity, MJArtifactVersionEntity, ArtifactMetadataEngine } from '@memberjunction/core-entities';\nimport { Metadata, UserInfo, IMetadataProvider } from '@memberjunction/core';\n\n/**\n * Represents artifact information with lazy-loading capabilities.\n * Stores minimal display data initially (from query) and loads full entities on-demand.\n *\n * For full entity access, this first checks {@link ArtifactMetadataEngine}'s\n * on-demand caches (populated when an artifact's versions were loaded earlier\n * this session) and otherwise loads the single artifact/version directly from\n * the database. Artifacts and versions are no longer bulk-loaded at boot — a\n * version's `Content` can be arbitrarily large — so a direct load is the normal\n * path here, not just a fallback.\n *\n * The direct load is coalesced via a shared promise so concurrent callers issue\n * a single query.\n */\nexport class LazyArtifactInfo {\n // Display data (always available from initial query - no lazy loading needed)\n public readonly ConversationDetailId: string;\n\n /** @deprecated Use {@link ConversationDetailId}. */\n public get conversationDetailId(): string {\n return this.ConversationDetailId;\n }\n public readonly Direction: string;\n\n /** @deprecated Use {@link Direction}. */\n public get direction(): string {\n return this.Direction;\n }\n public readonly ArtifactVersionId: string;\n\n /** @deprecated Use {@link ArtifactVersionId}. */\n public get artifactVersionId(): string {\n return this.ArtifactVersionId;\n }\n public readonly VersionNumber: number;\n\n /** @deprecated Use {@link VersionNumber}. */\n public get versionNumber(): number {\n return this.VersionNumber;\n }\n public readonly VersionName: string | null;\n\n /** @deprecated Use {@link VersionName}. */\n public get versionName(): string | null {\n return this.VersionName;\n }\n public readonly VersionDescription: string | null;\n\n /** @deprecated Use {@link VersionDescription}. */\n public get versionDescription(): string | null {\n return this.VersionDescription;\n }\n public readonly VersionCreatedAt: Date;\n\n /** @deprecated Use {@link VersionCreatedAt}. */\n public get versionCreatedAt(): Date {\n return this.VersionCreatedAt;\n }\n public readonly ArtifactId: string;\n\n /** @deprecated Use {@link ArtifactId}. */\n public get artifactId(): string {\n return this.ArtifactId;\n }\n public readonly ArtifactName: string;\n\n /** @deprecated Use {@link ArtifactName}. */\n public get artifactName(): string {\n return this.ArtifactName;\n }\n public readonly ArtifactType: string;\n\n /** @deprecated Use {@link ArtifactType}. */\n public get artifactType(): string {\n return this.ArtifactType;\n }\n public readonly ArtifactDescription: string;\n\n /** @deprecated Use {@link ArtifactDescription}. */\n public get artifactDescription(): string {\n return this.ArtifactDescription;\n }\n public readonly Visibility: string;\n\n /** @deprecated Use {@link Visibility}. */\n public get visibility(): string {\n return this.Visibility;\n }\n\n // Fallback entities loaded directly when engine doesn't have them yet\n private _fallbackArtifact: MJArtifactEntity | null = null;\n private _fallbackVersion: MJArtifactVersionEntity | null = null;\n private _fallbackLoadPromise: Promise<void> | null = null;\n\n constructor(\n queryResult: Record<string, unknown>,\n private currentUser: UserInfo,\n preloadedArtifact?: MJArtifactEntity,\n preloadedVersion?: MJArtifactVersionEntity,\n /**\n * The provider the fallback load reads through. A component constructing this in a\n * multi-provider tree passes its own `ProviderToUse`; omitting it falls back to the global\n * default, named explicitly rather than reached for via `new Metadata()`.\n */\n private provider?: IMetadataProvider\n ) {\n // Populate display data from query result\n // These fields come from GetConversationComplete query\n this.ConversationDetailId = queryResult.ConversationDetailID as string;\n this.Direction = queryResult.Direction as string;\n this.ArtifactVersionId = queryResult.ArtifactVersionID as string;\n this.VersionNumber = queryResult.VersionNumber as number;\n this.VersionName = (queryResult.VersionName as string) || null;\n this.VersionDescription = (queryResult.VersionDescription as string) || null;\n this.VersionCreatedAt = queryResult.VersionCreatedAt ? new Date(queryResult.VersionCreatedAt as string) : new Date();\n this.ArtifactId = queryResult.ArtifactID as string;\n this.ArtifactName = queryResult.ArtifactName as string;\n this.ArtifactType = queryResult.ArtifactType as string;\n this.ArtifactDescription = (queryResult.ArtifactDescription as string) || '';\n this.Visibility = (queryResult.Visibility as string) || 'User';\n\n // If entities were pre-loaded via batch query, store as fallbacks\n if (preloadedArtifact) {\n this._fallbackArtifact = preloadedArtifact;\n }\n if (preloadedVersion) {\n this._fallbackVersion = preloadedVersion;\n }\n }\n\n /**\n * Gets the full Artifact entity.\n * Checks ArtifactMetadataEngine first (always fresh), falls back to direct load.\n */\n async GetArtifact(): Promise<MJArtifactEntity> {\n // Try the engine first — it stays in sync via BaseEntity events\n const engine = ArtifactMetadataEngine.Instance;\n if (engine.Loaded) {\n const fromEngine = engine.FindCachedArtifactByID(this.ArtifactId);\n if (fromEngine) {\n return fromEngine;\n }\n }\n\n // Engine doesn't have it yet — use fallback\n return this.loadArtifactFallback();\n }\n\n /** @deprecated Use {@link GetArtifact}. */\n async getArtifact(): Promise<MJArtifactEntity> {\n return this.GetArtifact();\n }\n\n /**\n * Gets the full ArtifactVersion entity including Content field.\n * Checks ArtifactMetadataEngine first (always fresh), falls back to direct load.\n */\n async GetVersion(): Promise<MJArtifactVersionEntity> {\n // Try the engine first — it stays in sync via BaseEntity events\n const engine = ArtifactMetadataEngine.Instance;\n if (engine.Loaded) {\n const fromEngine = engine.FindCachedArtifactVersionByID(this.ArtifactVersionId);\n if (fromEngine) {\n return fromEngine;\n }\n }\n\n // Engine doesn't have it yet — use fallback\n return this.loadVersionFallback();\n }\n\n /** @deprecated Use {@link GetVersion}. */\n async getVersion(): Promise<MJArtifactVersionEntity> {\n return this.GetVersion();\n }\n\n /**\n * Checks if the artifact entities can be accessed without triggering a load.\n * True if the engine has them or fallbacks are populated.\n */\n get IsLoaded(): boolean {\n const engine = ArtifactMetadataEngine.Instance;\n if (engine.Loaded) {\n const hasArtifact = !!engine.FindCachedArtifactByID(this.ArtifactId);\n const hasVersion = !!engine.FindCachedArtifactVersionByID(this.ArtifactVersionId);\n if (hasArtifact && hasVersion) {\n return true;\n }\n }\n return this._fallbackArtifact !== null && this._fallbackVersion !== null;\n }\n\n /** @deprecated Use {@link IsLoaded}. */\n get isLoaded(): boolean {\n return this.IsLoaded;\n }\n\n /**\n * Checks if a fallback load is currently in progress.\n */\n get IsLoading(): boolean {\n return this._fallbackLoadPromise !== null;\n }\n\n /** @deprecated Use {@link IsLoading}. */\n get isLoading(): boolean {\n return this.IsLoading;\n }\n\n /**\n * Loads the artifact directly from the database as a fallback.\n * Uses a shared promise to coalesce concurrent calls.\n */\n private async loadArtifactFallback(): Promise<MJArtifactEntity> {\n if (this._fallbackArtifact) {\n return this._fallbackArtifact;\n }\n\n await this.ensureFallbacksLoaded();\n return this._fallbackArtifact!;\n }\n\n /**\n * Loads the artifact version directly from the database as a fallback.\n * Uses a shared promise to coalesce concurrent calls.\n */\n private async loadVersionFallback(): Promise<MJArtifactVersionEntity> {\n if (this._fallbackVersion) {\n return this._fallbackVersion;\n }\n\n await this.ensureFallbacksLoaded();\n return this._fallbackVersion!;\n }\n\n /**\n * Loads both artifact and version from database in parallel.\n * Called only when ArtifactMetadataEngine doesn't have the entities.\n * Shares a single promise across concurrent requests.\n */\n private async ensureFallbacksLoaded(): Promise<void> {\n if (this._fallbackArtifact && this._fallbackVersion) {\n return;\n }\n\n if (this._fallbackLoadPromise) {\n await this._fallbackLoadPromise;\n return;\n }\n\n this._fallbackLoadPromise = this.doFallbackLoad();\n try {\n await this._fallbackLoadPromise;\n } finally {\n this._fallbackLoadPromise = null;\n }\n }\n\n private async doFallbackLoad(): Promise<void> {\n try {\n const md = this.provider ?? Metadata.Provider;\n const [artifact, version] = await Promise.all([\n this._fallbackArtifact ? Promise.resolve(this._fallbackArtifact) : this.loadSingleArtifact(md),\n this._fallbackVersion ? Promise.resolve(this._fallbackVersion) : this.loadSingleVersion(md)\n ]);\n this._fallbackArtifact = artifact;\n this._fallbackVersion = version;\n } catch (error) {\n console.error('LazyArtifactInfo: Error loading fallback entities:', error);\n throw error;\n }\n }\n\n private async loadSingleArtifact(md: IMetadataProvider): Promise<MJArtifactEntity> {\n const artifact = await md.GetEntityObject<MJArtifactEntity>('MJ: Artifacts', this.currentUser);\n await artifact.Load(this.ArtifactId);\n return artifact;\n }\n\n private async loadSingleVersion(md: IMetadataProvider): Promise<MJArtifactVersionEntity> {\n const version = await md.GetEntityObject<MJArtifactVersionEntity>('MJ: Artifact Versions', this.currentUser);\n await version.Load(this.ArtifactVersionId);\n return version;\n }\n}\n"]}
@@ -33,31 +33,43 @@ export declare class ActiveTasksService {
33
33
  /**
34
34
  * Observable of all active tasks as an array
35
35
  */
36
- readonly tasks$: Observable<ActiveTask[]>;
36
+ readonly Tasks$: Observable<ActiveTask[]>;
37
+ /** @deprecated Use {@link Tasks$}. */
38
+ get tasks$(): Observable<ActiveTask[]>;
37
39
  /**
38
40
  * Observable of the count of active tasks
39
41
  */
40
- readonly taskCount$: Observable<number>;
42
+ readonly TaskCount$: Observable<number>;
43
+ /** @deprecated Use {@link TaskCount$}. */
44
+ get taskCount$(): Observable<number>;
41
45
  /**
42
46
  * Observable of conversation IDs that have 1+ active tasks
43
47
  * Use this for quick lookups in conversation lists
44
48
  */
45
- readonly conversationIdsWithTasks$: Observable<Set<string>>;
49
+ readonly ConversationIdsWithTasks$: Observable<Set<string>>;
50
+ /** @deprecated Use {@link ConversationIdsWithTasks$}. */
51
+ get conversationIdsWithTasks$(): Observable<Set<string>>;
46
52
  /**
47
53
  * Observable of tasks grouped by conversation ID
48
54
  * Returns Map<conversationId, ActiveTask[]>
49
55
  */
50
- readonly tasksByConversationId$: Observable<Map<string, ActiveTask[]>>;
56
+ readonly TasksByConversationId$: Observable<Map<string, ActiveTask[]>>;
57
+ /** @deprecated Use {@link TasksByConversationId$}. */
58
+ get tasksByConversationId$(): Observable<Map<string, ActiveTask[]>>;
51
59
  /**
52
60
  * Add a new active task
53
61
  * @param task Task details (without id and startTime)
54
62
  * @returns The generated task ID
55
63
  */
64
+ Add(task: Omit<ActiveTask, 'id' | 'startTime'>): string;
65
+ /** @deprecated Use {@link Add}. */
56
66
  add(task: Omit<ActiveTask, 'id' | 'startTime'>): string;
57
67
  /**
58
68
  * Remove an active task
59
69
  * @param id The task ID to remove
60
70
  */
71
+ Remove(id: string): void;
72
+ /** @deprecated Use {@link Remove}. */
61
73
  remove(id: string): void;
62
74
  /**
63
75
  * Update the set of conversation IDs with active tasks
@@ -69,12 +81,16 @@ export declare class ActiveTasksService {
69
81
  * @param id The task ID
70
82
  * @param status The new status text
71
83
  */
84
+ UpdateStatus(id: string, status: string): void;
85
+ /** @deprecated Use {@link UpdateStatus}. */
72
86
  updateStatus(id: string, status: string): void;
73
87
  /**
74
88
  * Get an active task by its conversation detail ID
75
89
  * @param conversationDetailId The conversation detail ID
76
90
  * @returns The task if found, undefined otherwise
77
91
  */
92
+ GetByConversationDetailId(conversationDetailId: string): ActiveTask | undefined;
93
+ /** @deprecated Use {@link GetByConversationDetailId}. */
78
94
  getByConversationDetailId(conversationDetailId: string): ActiveTask | undefined;
79
95
  /**
80
96
  * Update the status of a task by its conversation detail ID
@@ -82,28 +98,38 @@ export declare class ActiveTasksService {
82
98
  * @param status The new status text
83
99
  * @returns true if task was found and updated, false otherwise
84
100
  */
101
+ UpdateStatusByConversationDetailId(conversationDetailId: string, status: string): boolean;
102
+ /** @deprecated Use {@link UpdateStatusByConversationDetailId}. */
85
103
  updateStatusByConversationDetailId(conversationDetailId: string, status: string): boolean;
86
104
  /**
87
105
  * Get an active task by its agent run ID
88
106
  * @param agentRunId The AIAgentRun ID
89
107
  * @returns The task if found, undefined otherwise
90
108
  */
109
+ GetByAgentRunId(agentRunId: string): ActiveTask | undefined;
110
+ /** @deprecated Use {@link GetByAgentRunId}. */
91
111
  getByAgentRunId(agentRunId: string): ActiveTask | undefined;
92
112
  /**
93
113
  * Remove a task by its agent run ID
94
114
  * @param agentRunId The AIAgentRun ID
95
115
  * @returns true if task was found and removed, false otherwise
96
116
  */
117
+ RemoveByAgentRunId(agentRunId: string): boolean;
118
+ /** @deprecated Use {@link RemoveByAgentRunId}. */
97
119
  removeByAgentRunId(agentRunId: string): boolean;
98
120
  /**
99
121
  * Clear all active tasks
100
122
  */
123
+ Clear(): void;
124
+ /** @deprecated Use {@link Clear}. */
101
125
  clear(): void;
102
126
  /**
103
127
  * Restore active tasks from database by querying running agent runs.
104
128
  * Call this on app initialization to restore state after browser refresh.
105
129
  * @param currentUser The current user to filter agent runs by
106
130
  */
131
+ RestoreFromDatabase(currentUser: UserInfo): Promise<void>;
132
+ /** @deprecated Use {@link RestoreFromDatabase}. */
107
133
  restoreFromDatabase(currentUser: UserInfo): Promise<void>;
108
134
  static ɵfac: i0.ɵɵFactoryDeclaration<ActiveTasksService, never>;
109
135
  static ɵprov: i0.ɵɵInjectableDeclaration<ActiveTasksService>;
@@ -1 +1 @@
1
- {"version":3,"file":"active-tasks.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/active-tasks.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,UAAU,EAAE,MAAM,MAAM,CAAC;AAEnD,OAAO,EAAW,QAAQ,EAAY,iBAAiB,EAAe,MAAM,sBAAsB,CAAC;;AAInG;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,qBAGa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAA2D;IAC1E,OAAO,CAAC,0BAA0B,CAA+C;IACjF,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,SAAS,CAAkC;IAEnD;;OAEG;IACH,IAAW,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,EAElD;IAED,IAAW,QAAQ,IAAI,iBAAiB,CAEvC;IAED;;OAEG;IACH,SAAgB,MAAM,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAE9C;IAEF;;OAEG;IACH,SAAgB,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,CAE5C;IAEF;;;OAGG;IACH,SAAgB,yBAAyB,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAkD;IAEpH;;;OAGG;IACH,SAAgB,sBAAsB,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAY3E;IAEF;;;;OAIG;IACH,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,WAAW,CAAC,GAAG,MAAM;IAyBvD;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAgBxB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAUhC;;;;OAIG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAY9C;;;;OAIG;IACH,yBAAyB,CAAC,oBAAoB,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAK/E;;;;;OAKG;IACH,kCAAkC,CAAC,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IASzF;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAK3D;;;;OAIG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAS/C;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACG,mBAAmB,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;yCArMpD,kBAAkB;6CAAlB,kBAAkB;CAkQ9B"}
1
+ {"version":3,"file":"active-tasks.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/active-tasks.service.ts"],"names":[],"mappings":"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"}
@@ -25,21 +25,33 @@ export class ActiveTasksService {
25
25
  /**
26
26
  * Observable of all active tasks as an array
27
27
  */
28
- tasks$ = this._tasks$.pipe(map(taskMap => Array.from(taskMap.values())));
28
+ Tasks$ = this._tasks$.pipe(map(taskMap => Array.from(taskMap.values())));
29
+ /** @deprecated Use {@link Tasks$}. */
30
+ get tasks$() {
31
+ return this.Tasks$;
32
+ }
29
33
  /**
30
34
  * Observable of the count of active tasks
31
35
  */
32
- taskCount$ = this.tasks$.pipe(map(tasks => tasks.length));
36
+ TaskCount$ = this.Tasks$.pipe(map(tasks => tasks.length));
37
+ /** @deprecated Use {@link TaskCount$}. */
38
+ get taskCount$() {
39
+ return this.TaskCount$;
40
+ }
33
41
  /**
34
42
  * Observable of conversation IDs that have 1+ active tasks
35
43
  * Use this for quick lookups in conversation lists
36
44
  */
37
- conversationIdsWithTasks$ = this._conversationIdsWithTasks$.asObservable();
45
+ ConversationIdsWithTasks$ = this._conversationIdsWithTasks$.asObservable();
46
+ /** @deprecated Use {@link ConversationIdsWithTasks$}. */
47
+ get conversationIdsWithTasks$() {
48
+ return this.ConversationIdsWithTasks$;
49
+ }
38
50
  /**
39
51
  * Observable of tasks grouped by conversation ID
40
52
  * Returns Map<conversationId, ActiveTask[]>
41
53
  */
42
- tasksByConversationId$ = this.tasks$.pipe(map(tasks => {
54
+ TasksByConversationId$ = this.Tasks$.pipe(map(tasks => {
43
55
  const grouped = new Map();
44
56
  for (const task of tasks) {
45
57
  if (task.conversationId) {
@@ -50,12 +62,16 @@ export class ActiveTasksService {
50
62
  }
51
63
  return grouped;
52
64
  }));
65
+ /** @deprecated Use {@link TasksByConversationId$}. */
66
+ get tasksByConversationId$() {
67
+ return this.TasksByConversationId$;
68
+ }
53
69
  /**
54
70
  * Add a new active task
55
71
  * @param task Task details (without id and startTime)
56
72
  * @returns The generated task ID
57
73
  */
58
- add(task) {
74
+ Add(task) {
59
75
  const id = `task-${Date.now()}-${Math.random().toString(36).substring(2, 9)}`;
60
76
  const fullTask = {
61
77
  ...task,
@@ -76,11 +92,15 @@ export class ActiveTasksService {
76
92
  LogStatusEx({ message: `🗂️ Conversation IDs with tasks:`, additionalArgs: [Array.from(this._conversationIdsWithTasks$.value)], verboseOnly: true });
77
93
  return id;
78
94
  }
95
+ /** @deprecated Use {@link Add}. */
96
+ add(task) {
97
+ return this.Add(task);
98
+ }
79
99
  /**
80
100
  * Remove an active task
81
101
  * @param id The task ID to remove
82
102
  */
83
- remove(id) {
103
+ Remove(id) {
84
104
  const current = this._tasks$.value;
85
105
  const task = current.get(id);
86
106
  current.delete(id);
@@ -93,6 +113,10 @@ export class ActiveTasksService {
93
113
  LogStatusEx({ message: `📊 Total tasks remaining:`, additionalArgs: [this._tasks$.value.size], verboseOnly: true });
94
114
  LogStatusEx({ message: `🗂️ Conversation IDs with tasks:`, additionalArgs: [Array.from(this._conversationIdsWithTasks$.value)], verboseOnly: true });
95
115
  }
116
+ /** @deprecated Use {@link Remove}. */
117
+ remove(id) {
118
+ return this.Remove(id);
119
+ }
96
120
  /**
97
121
  * Update the set of conversation IDs with active tasks
98
122
  * @private
@@ -111,7 +135,7 @@ export class ActiveTasksService {
111
135
  * @param id The task ID
112
136
  * @param status The new status text
113
137
  */
114
- updateStatus(id, status) {
138
+ UpdateStatus(id, status) {
115
139
  const current = this._tasks$.value;
116
140
  const task = current.get(id);
117
141
  // Same-value updates are no-ops so high-frequency callers (e.g. the streamed
@@ -122,63 +146,87 @@ export class ActiveTasksService {
122
146
  this._tasks$.next(new Map(current));
123
147
  }
124
148
  }
149
+ /** @deprecated Use {@link UpdateStatus}. */
150
+ updateStatus(id, status) {
151
+ return this.UpdateStatus(id, status);
152
+ }
125
153
  /**
126
154
  * Get an active task by its conversation detail ID
127
155
  * @param conversationDetailId The conversation detail ID
128
156
  * @returns The task if found, undefined otherwise
129
157
  */
130
- getByConversationDetailId(conversationDetailId) {
158
+ GetByConversationDetailId(conversationDetailId) {
131
159
  const tasks = Array.from(this._tasks$.value.values());
132
160
  return tasks.find(task => task.conversationDetailId === conversationDetailId);
133
161
  }
162
+ /** @deprecated Use {@link GetByConversationDetailId}. */
163
+ getByConversationDetailId(conversationDetailId) {
164
+ return this.GetByConversationDetailId(conversationDetailId);
165
+ }
134
166
  /**
135
167
  * Update the status of a task by its conversation detail ID
136
168
  * @param conversationDetailId The conversation detail ID
137
169
  * @param status The new status text
138
170
  * @returns true if task was found and updated, false otherwise
139
171
  */
140
- updateStatusByConversationDetailId(conversationDetailId, status) {
141
- const task = this.getByConversationDetailId(conversationDetailId);
172
+ UpdateStatusByConversationDetailId(conversationDetailId, status) {
173
+ const task = this.GetByConversationDetailId(conversationDetailId);
142
174
  if (task) {
143
- this.updateStatus(task.id, status);
175
+ this.UpdateStatus(task.id, status);
144
176
  return true;
145
177
  }
146
178
  return false;
147
179
  }
180
+ /** @deprecated Use {@link UpdateStatusByConversationDetailId}. */
181
+ updateStatusByConversationDetailId(conversationDetailId, status) {
182
+ return this.UpdateStatusByConversationDetailId(conversationDetailId, status);
183
+ }
148
184
  /**
149
185
  * Get an active task by its agent run ID
150
186
  * @param agentRunId The AIAgentRun ID
151
187
  * @returns The task if found, undefined otherwise
152
188
  */
153
- getByAgentRunId(agentRunId) {
189
+ GetByAgentRunId(agentRunId) {
154
190
  const tasks = Array.from(this._tasks$.value.values());
155
191
  return tasks.find(task => task.agentRunId === agentRunId);
156
192
  }
193
+ /** @deprecated Use {@link GetByAgentRunId}. */
194
+ getByAgentRunId(agentRunId) {
195
+ return this.GetByAgentRunId(agentRunId);
196
+ }
157
197
  /**
158
198
  * Remove a task by its agent run ID
159
199
  * @param agentRunId The AIAgentRun ID
160
200
  * @returns true if task was found and removed, false otherwise
161
201
  */
162
- removeByAgentRunId(agentRunId) {
163
- const task = this.getByAgentRunId(agentRunId);
202
+ RemoveByAgentRunId(agentRunId) {
203
+ const task = this.GetByAgentRunId(agentRunId);
164
204
  if (task) {
165
- this.remove(task.id);
205
+ this.Remove(task.id);
166
206
  return true;
167
207
  }
168
208
  return false;
169
209
  }
210
+ /** @deprecated Use {@link RemoveByAgentRunId}. */
211
+ removeByAgentRunId(agentRunId) {
212
+ return this.RemoveByAgentRunId(agentRunId);
213
+ }
170
214
  /**
171
215
  * Clear all active tasks
172
216
  */
173
- clear() {
217
+ Clear() {
174
218
  this._tasks$.next(new Map());
175
219
  }
220
+ /** @deprecated Use {@link Clear}. */
221
+ clear() {
222
+ return this.Clear();
223
+ }
176
224
  /**
177
225
  * Restore active tasks from database by querying running agent runs.
178
226
  * Call this on app initialization to restore state after browser refresh.
179
227
  * @param currentUser The current user to filter agent runs by
180
228
  */
181
- async restoreFromDatabase(currentUser) {
229
+ async RestoreFromDatabase(currentUser) {
182
230
  try {
183
231
  const rv = RunView.FromMetadataProvider(this.Provider);
184
232
  // Query for running agent runs owned by this user
@@ -209,10 +257,10 @@ export class ActiveTasksService {
209
257
  for (const agentRun of result.Results) {
210
258
  // Skip if already tracked (prevents duplicates)
211
259
  if (agentRun.ConversationDetailID &&
212
- this.getByConversationDetailId(agentRun.ConversationDetailID)) {
260
+ this.GetByConversationDetailId(agentRun.ConversationDetailID)) {
213
261
  continue;
214
262
  }
215
- this.add({
263
+ this.Add({
216
264
  agentName: agentRun.Agent || 'Unknown Agent',
217
265
  agentId: agentRun.AgentID,
218
266
  agentRunId: agentRun.ID, // For finding task on completion
@@ -234,6 +282,10 @@ export class ActiveTasksService {
234
282
  console.error('Failed to restore active tasks from database:', error);
235
283
  }
236
284
  }
285
+ /** @deprecated Use {@link RestoreFromDatabase}. */
286
+ async restoreFromDatabase(currentUser) {
287
+ return this.RestoreFromDatabase(currentUser);
288
+ }
237
289
  static ɵfac = function ActiveTasksService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ActiveTasksService)(); };
238
290
  static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ActiveTasksService, factory: ActiveTasksService.ɵfac, providedIn: 'root' });
239
291
  }