@memberjunction/ng-conversations 2.104.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 (226) hide show
  1. package/README.md +197 -0
  2. package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts +20 -0
  3. package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts.map +1 -0
  4. package/dist/lib/components/active-tasks/active-tasks-panel.component.js +125 -0
  5. package/dist/lib/components/active-tasks/active-tasks-panel.component.js.map +1 -0
  6. package/dist/lib/components/agent/active-agent-indicator.component.d.ts +48 -0
  7. package/dist/lib/components/agent/active-agent-indicator.component.d.ts.map +1 -0
  8. package/dist/lib/components/agent/active-agent-indicator.component.js +199 -0
  9. package/dist/lib/components/agent/active-agent-indicator.component.js.map +1 -0
  10. package/dist/lib/components/agent/agent-process-panel.component.d.ts +30 -0
  11. package/dist/lib/components/agent/agent-process-panel.component.d.ts.map +1 -0
  12. package/dist/lib/components/agent/agent-process-panel.component.js +333 -0
  13. package/dist/lib/components/agent/agent-process-panel.component.js.map +1 -0
  14. package/dist/lib/components/artifact/artifact-panel.component.d.ts +22 -0
  15. package/dist/lib/components/artifact/artifact-panel.component.d.ts.map +1 -0
  16. package/dist/lib/components/artifact/artifact-panel.component.js +237 -0
  17. package/dist/lib/components/artifact/artifact-panel.component.js.map +1 -0
  18. package/dist/lib/components/artifact/artifact-upload-modal.component.d.ts +39 -0
  19. package/dist/lib/components/artifact/artifact-upload-modal.component.d.ts.map +1 -0
  20. package/dist/lib/components/artifact/artifact-upload-modal.component.js +384 -0
  21. package/dist/lib/components/artifact/artifact-upload-modal.component.js.map +1 -0
  22. package/dist/lib/components/artifact/artifact-version-history.component.d.ts +28 -0
  23. package/dist/lib/components/artifact/artifact-version-history.component.d.ts.map +1 -0
  24. package/dist/lib/components/artifact/artifact-version-history.component.js +280 -0
  25. package/dist/lib/components/artifact/artifact-version-history.component.js.map +1 -0
  26. package/dist/lib/components/artifact/artifact-viewer-panel.component.d.ts +22 -0
  27. package/dist/lib/components/artifact/artifact-viewer-panel.component.d.ts.map +1 -0
  28. package/dist/lib/components/artifact/artifact-viewer-panel.component.js +182 -0
  29. package/dist/lib/components/artifact/artifact-viewer-panel.component.js.map +1 -0
  30. package/dist/lib/components/artifact/artifact-viewer.component.d.ts +27 -0
  31. package/dist/lib/components/artifact/artifact-viewer.component.d.ts.map +1 -0
  32. package/dist/lib/components/artifact/artifact-viewer.component.js +266 -0
  33. package/dist/lib/components/artifact/artifact-viewer.component.js.map +1 -0
  34. package/dist/lib/components/artifact/inline-artifact.component.d.ts +46 -0
  35. package/dist/lib/components/artifact/inline-artifact.component.d.ts.map +1 -0
  36. package/dist/lib/components/artifact/inline-artifact.component.js +447 -0
  37. package/dist/lib/components/artifact/inline-artifact.component.js.map +1 -0
  38. package/dist/lib/components/collection/collection-artifact-card.component.d.ts +18 -0
  39. package/dist/lib/components/collection/collection-artifact-card.component.d.ts.map +1 -0
  40. package/dist/lib/components/collection/collection-artifact-card.component.js +147 -0
  41. package/dist/lib/components/collection/collection-artifact-card.component.js.map +1 -0
  42. package/dist/lib/components/collection/collection-form-modal.component.d.ts +33 -0
  43. package/dist/lib/components/collection/collection-form-modal.component.d.ts.map +1 -0
  44. package/dist/lib/components/collection/collection-form-modal.component.js +245 -0
  45. package/dist/lib/components/collection/collection-form-modal.component.js.map +1 -0
  46. package/dist/lib/components/collection/collection-tree.component.d.ts +42 -0
  47. package/dist/lib/components/collection/collection-tree.component.d.ts.map +1 -0
  48. package/dist/lib/components/collection/collection-tree.component.js +482 -0
  49. package/dist/lib/components/collection/collection-tree.component.js.map +1 -0
  50. package/dist/lib/components/collection/collection-view.component.d.ts +31 -0
  51. package/dist/lib/components/collection/collection-view.component.d.ts.map +1 -0
  52. package/dist/lib/components/collection/collection-view.component.js +254 -0
  53. package/dist/lib/components/collection/collection-view.component.js.map +1 -0
  54. package/dist/lib/components/collection/collections-full-view.component.d.ts +55 -0
  55. package/dist/lib/components/collection/collections-full-view.component.d.ts.map +1 -0
  56. package/dist/lib/components/collection/collections-full-view.component.js +578 -0
  57. package/dist/lib/components/collection/collections-full-view.component.js.map +1 -0
  58. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +160 -0
  59. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -0
  60. package/dist/lib/components/conversation/conversation-chat-area.component.js +891 -0
  61. package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -0
  62. package/dist/lib/components/conversation/conversation-list.component.d.ts +29 -0
  63. package/dist/lib/components/conversation/conversation-list.component.d.ts.map +1 -0
  64. package/dist/lib/components/conversation/conversation-list.component.js +255 -0
  65. package/dist/lib/components/conversation/conversation-list.component.js.map +1 -0
  66. package/dist/lib/components/dialogs/input-dialog.component.d.ts +17 -0
  67. package/dist/lib/components/dialogs/input-dialog.component.d.ts.map +1 -0
  68. package/dist/lib/components/dialogs/input-dialog.component.js +122 -0
  69. package/dist/lib/components/dialogs/input-dialog.component.js.map +1 -0
  70. package/dist/lib/components/export/export-modal.component.d.ts +37 -0
  71. package/dist/lib/components/export/export-modal.component.d.ts.map +1 -0
  72. package/dist/lib/components/export/export-modal.component.js +414 -0
  73. package/dist/lib/components/export/export-modal.component.js.map +1 -0
  74. package/dist/lib/components/library/library-full-view.component.d.ts +36 -0
  75. package/dist/lib/components/library/library-full-view.component.d.ts.map +1 -0
  76. package/dist/lib/components/library/library-full-view.component.js +270 -0
  77. package/dist/lib/components/library/library-full-view.component.js.map +1 -0
  78. package/dist/lib/components/members/members-modal.component.d.ts +42 -0
  79. package/dist/lib/components/members/members-modal.component.d.ts.map +1 -0
  80. package/dist/lib/components/members/members-modal.component.js +352 -0
  81. package/dist/lib/components/members/members-modal.component.js.map +1 -0
  82. package/dist/lib/components/mention/mention-dropdown.component.d.ts +44 -0
  83. package/dist/lib/components/mention/mention-dropdown.component.d.ts.map +1 -0
  84. package/dist/lib/components/mention/mention-dropdown.component.js +194 -0
  85. package/dist/lib/components/mention/mention-dropdown.component.js.map +1 -0
  86. package/dist/lib/components/message/message-input.component.d.ts +137 -0
  87. package/dist/lib/components/message/message-input.component.d.ts.map +1 -0
  88. package/dist/lib/components/message/message-input.component.js +1159 -0
  89. package/dist/lib/components/message/message-input.component.js.map +1 -0
  90. package/dist/lib/components/message/message-item.component.d.ts +140 -0
  91. package/dist/lib/components/message/message-item.component.d.ts.map +1 -0
  92. package/dist/lib/components/message/message-item.component.js +817 -0
  93. package/dist/lib/components/message/message-item.component.js.map +1 -0
  94. package/dist/lib/components/message/message-list.component.d.ts +77 -0
  95. package/dist/lib/components/message/message-list.component.d.ts.map +1 -0
  96. package/dist/lib/components/message/message-list.component.js +316 -0
  97. package/dist/lib/components/message/message-list.component.js.map +1 -0
  98. package/dist/lib/components/navigation/conversation-navigation.component.d.ts +13 -0
  99. package/dist/lib/components/navigation/conversation-navigation.component.d.ts.map +1 -0
  100. package/dist/lib/components/navigation/conversation-navigation.component.js +88 -0
  101. package/dist/lib/components/navigation/conversation-navigation.component.js.map +1 -0
  102. package/dist/lib/components/notification/activity-indicator.component.d.ts +11 -0
  103. package/dist/lib/components/notification/activity-indicator.component.d.ts.map +1 -0
  104. package/dist/lib/components/notification/activity-indicator.component.js +56 -0
  105. package/dist/lib/components/notification/activity-indicator.component.js.map +1 -0
  106. package/dist/lib/components/notification/notification-badge.component.d.ts +27 -0
  107. package/dist/lib/components/notification/notification-badge.component.d.ts.map +1 -0
  108. package/dist/lib/components/notification/notification-badge.component.js +160 -0
  109. package/dist/lib/components/notification/notification-badge.component.js.map +1 -0
  110. package/dist/lib/components/project/project-form-modal.component.d.ts +34 -0
  111. package/dist/lib/components/project/project-form-modal.component.d.ts.map +1 -0
  112. package/dist/lib/components/project/project-form-modal.component.js +357 -0
  113. package/dist/lib/components/project/project-form-modal.component.js.map +1 -0
  114. package/dist/lib/components/project/project-selector.component.d.ts +36 -0
  115. package/dist/lib/components/project/project-selector.component.d.ts.map +1 -0
  116. package/dist/lib/components/project/project-selector.component.js +317 -0
  117. package/dist/lib/components/project/project-selector.component.js.map +1 -0
  118. package/dist/lib/components/search/search-panel.component.d.ts +120 -0
  119. package/dist/lib/components/search/search-panel.component.d.ts.map +1 -0
  120. package/dist/lib/components/search/search-panel.component.js +714 -0
  121. package/dist/lib/components/search/search-panel.component.js.map +1 -0
  122. package/dist/lib/components/share/share-modal.component.d.ts +46 -0
  123. package/dist/lib/components/share/share-modal.component.d.ts.map +1 -0
  124. package/dist/lib/components/share/share-modal.component.js +431 -0
  125. package/dist/lib/components/share/share-modal.component.js.map +1 -0
  126. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts +18 -0
  127. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts.map +1 -0
  128. package/dist/lib/components/sidebar/conversation-sidebar.component.js +81 -0
  129. package/dist/lib/components/sidebar/conversation-sidebar.component.js.map +1 -0
  130. package/dist/lib/components/task/task-form-modal.component.d.ts +42 -0
  131. package/dist/lib/components/task/task-form-modal.component.d.ts.map +1 -0
  132. package/dist/lib/components/task/task-form-modal.component.js +329 -0
  133. package/dist/lib/components/task/task-form-modal.component.js.map +1 -0
  134. package/dist/lib/components/task/task-item.component.d.ts +22 -0
  135. package/dist/lib/components/task/task-item.component.d.ts.map +1 -0
  136. package/dist/lib/components/task/task-item.component.js +234 -0
  137. package/dist/lib/components/task/task-item.component.js.map +1 -0
  138. package/dist/lib/components/task/task-list.component.d.ts +32 -0
  139. package/dist/lib/components/task/task-list.component.d.ts.map +1 -0
  140. package/dist/lib/components/task/task-list.component.js +290 -0
  141. package/dist/lib/components/task/task-list.component.js.map +1 -0
  142. package/dist/lib/components/tasks/tasks-dropdown.component.d.ts +27 -0
  143. package/dist/lib/components/tasks/tasks-dropdown.component.d.ts.map +1 -0
  144. package/dist/lib/components/tasks/tasks-dropdown.component.js +254 -0
  145. package/dist/lib/components/tasks/tasks-dropdown.component.js.map +1 -0
  146. package/dist/lib/components/thread/thread-panel.component.d.ts +65 -0
  147. package/dist/lib/components/thread/thread-panel.component.d.ts.map +1 -0
  148. package/dist/lib/components/thread/thread-panel.component.js +325 -0
  149. package/dist/lib/components/thread/thread-panel.component.js.map +1 -0
  150. package/dist/lib/components/toast/toast.component.d.ts +26 -0
  151. package/dist/lib/components/toast/toast.component.d.ts.map +1 -0
  152. package/dist/lib/components/toast/toast.component.js +108 -0
  153. package/dist/lib/components/toast/toast.component.js.map +1 -0
  154. package/dist/lib/components/workspace/conversation-workspace.component.d.ts +75 -0
  155. package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -0
  156. package/dist/lib/components/workspace/conversation-workspace.component.js +299 -0
  157. package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -0
  158. package/dist/lib/conversations.module.d.ts +62 -0
  159. package/dist/lib/conversations.module.d.ts.map +1 -0
  160. package/dist/lib/conversations.module.js +248 -0
  161. package/dist/lib/conversations.module.js.map +1 -0
  162. package/dist/lib/directives/search-shortcut.directive.d.ts +17 -0
  163. package/dist/lib/directives/search-shortcut.directive.d.ts.map +1 -0
  164. package/dist/lib/directives/search-shortcut.directive.js +39 -0
  165. package/dist/lib/directives/search-shortcut.directive.js.map +1 -0
  166. package/dist/lib/models/conversation-state.model.d.ts +72 -0
  167. package/dist/lib/models/conversation-state.model.d.ts.map +1 -0
  168. package/dist/lib/models/conversation-state.model.js +2 -0
  169. package/dist/lib/models/conversation-state.model.js.map +1 -0
  170. package/dist/lib/models/notification.model.d.ts +89 -0
  171. package/dist/lib/models/notification.model.d.ts.map +1 -0
  172. package/dist/lib/models/notification.model.js +11 -0
  173. package/dist/lib/models/notification.model.js.map +1 -0
  174. package/dist/lib/services/active-tasks.service.d.ts +65 -0
  175. package/dist/lib/services/active-tasks.service.d.ts.map +1 -0
  176. package/dist/lib/services/active-tasks.service.js +95 -0
  177. package/dist/lib/services/active-tasks.service.js.map +1 -0
  178. package/dist/lib/services/agent-state.service.d.ts +78 -0
  179. package/dist/lib/services/agent-state.service.d.ts.map +1 -0
  180. package/dist/lib/services/agent-state.service.js +213 -0
  181. package/dist/lib/services/agent-state.service.js.map +1 -0
  182. package/dist/lib/services/artifact-state.service.d.ts +114 -0
  183. package/dist/lib/services/artifact-state.service.d.ts.map +1 -0
  184. package/dist/lib/services/artifact-state.service.js +288 -0
  185. package/dist/lib/services/artifact-state.service.js.map +1 -0
  186. package/dist/lib/services/conversation-agent.service.d.ts +79 -0
  187. package/dist/lib/services/conversation-agent.service.d.ts.map +1 -0
  188. package/dist/lib/services/conversation-agent.service.js +259 -0
  189. package/dist/lib/services/conversation-agent.service.js.map +1 -0
  190. package/dist/lib/services/conversation-state.service.d.ts +122 -0
  191. package/dist/lib/services/conversation-state.service.d.ts.map +1 -0
  192. package/dist/lib/services/conversation-state.service.js +255 -0
  193. package/dist/lib/services/conversation-state.service.js.map +1 -0
  194. package/dist/lib/services/dialog.service.d.ts +54 -0
  195. package/dist/lib/services/dialog.service.d.ts.map +1 -0
  196. package/dist/lib/services/dialog.service.js +157 -0
  197. package/dist/lib/services/dialog.service.js.map +1 -0
  198. package/dist/lib/services/export.service.d.ts +25 -0
  199. package/dist/lib/services/export.service.d.ts.map +1 -0
  200. package/dist/lib/services/export.service.js +237 -0
  201. package/dist/lib/services/export.service.js.map +1 -0
  202. package/dist/lib/services/mention-autocomplete.service.d.ts +59 -0
  203. package/dist/lib/services/mention-autocomplete.service.d.ts.map +1 -0
  204. package/dist/lib/services/mention-autocomplete.service.js +160 -0
  205. package/dist/lib/services/mention-autocomplete.service.js.map +1 -0
  206. package/dist/lib/services/mention-parser.service.d.ts +46 -0
  207. package/dist/lib/services/mention-parser.service.d.ts.map +1 -0
  208. package/dist/lib/services/mention-parser.service.js +156 -0
  209. package/dist/lib/services/mention-parser.service.js.map +1 -0
  210. package/dist/lib/services/notification.service.d.ts +108 -0
  211. package/dist/lib/services/notification.service.d.ts.map +1 -0
  212. package/dist/lib/services/notification.service.js +431 -0
  213. package/dist/lib/services/notification.service.js.map +1 -0
  214. package/dist/lib/services/search.service.d.ts +144 -0
  215. package/dist/lib/services/search.service.d.ts.map +1 -0
  216. package/dist/lib/services/search.service.js +370 -0
  217. package/dist/lib/services/search.service.js.map +1 -0
  218. package/dist/lib/services/toast.service.d.ts +46 -0
  219. package/dist/lib/services/toast.service.d.ts.map +1 -0
  220. package/dist/lib/services/toast.service.js +76 -0
  221. package/dist/lib/services/toast.service.js.map +1 -0
  222. package/dist/public-api.d.ts +42 -0
  223. package/dist/public-api.d.ts.map +1 -0
  224. package/dist/public-api.js +49 -0
  225. package/dist/public-api.js.map +1 -0
  226. package/package.json +54 -0
@@ -0,0 +1,370 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject, Subject } from 'rxjs';
3
+ import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
4
+ import { RunView } from '@memberjunction/core';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * Service for searching across conversations, messages, and artifacts
8
+ * Provides debounced search with result ranking and filtering
9
+ */
10
+ export class SearchService {
11
+ _searchQuery$ = new Subject();
12
+ _searchFilter$ = new BehaviorSubject('all');
13
+ _dateRange$ = new BehaviorSubject({ start: null, end: null });
14
+ _isSearching$ = new BehaviorSubject(false);
15
+ _searchResults$ = new BehaviorSubject({
16
+ conversations: [],
17
+ messages: [],
18
+ artifacts: [],
19
+ total: 0
20
+ });
21
+ // Recent searches stored in memory (could be persisted to localStorage)
22
+ recentSearches = [];
23
+ MAX_RECENT_SEARCHES = 10;
24
+ // Public observables
25
+ searchQuery$ = this._searchQuery$.asObservable();
26
+ searchFilter$ = this._searchFilter$.asObservable();
27
+ dateRange$ = this._dateRange$.asObservable();
28
+ isSearching$ = this._isSearching$.asObservable();
29
+ searchResults$ = this._searchResults$.asObservable();
30
+ constructor() {
31
+ this.initializeSearch();
32
+ this.loadRecentSearches();
33
+ }
34
+ /**
35
+ * Initialize debounced search
36
+ */
37
+ initializeSearch() {
38
+ this._searchQuery$.pipe(debounceTime(300), distinctUntilChanged()).subscribe(query => {
39
+ if (query && query.trim().length > 0) {
40
+ this.addToRecentSearches(query);
41
+ }
42
+ });
43
+ }
44
+ /**
45
+ * Search across all content types
46
+ */
47
+ async search(query, environmentId, currentUser) {
48
+ if (!query || query.trim().length === 0) {
49
+ const emptyResults = {
50
+ conversations: [],
51
+ messages: [],
52
+ artifacts: [],
53
+ total: 0
54
+ };
55
+ this._searchResults$.next(emptyResults);
56
+ return emptyResults;
57
+ }
58
+ this._isSearching$.next(true);
59
+ this._searchQuery$.next(query);
60
+ try {
61
+ const filter = this._searchFilter$.value;
62
+ const dateRange = this._dateRange$.value;
63
+ // Search based on active filter
64
+ const [conversations, messages, artifacts] = await Promise.all([
65
+ filter === 'all' || filter === 'conversations'
66
+ ? this.searchConversations(query, environmentId, currentUser, dateRange)
67
+ : Promise.resolve([]),
68
+ filter === 'all' || filter === 'messages'
69
+ ? this.searchMessages(query, environmentId, currentUser, dateRange)
70
+ : Promise.resolve([]),
71
+ filter === 'all' || filter === 'artifacts'
72
+ ? this.searchArtifacts(query, environmentId, currentUser, dateRange)
73
+ : Promise.resolve([])
74
+ ]);
75
+ const results = {
76
+ conversations,
77
+ messages,
78
+ artifacts,
79
+ total: conversations.length + messages.length + artifacts.length
80
+ };
81
+ this._searchResults$.next(results);
82
+ return results;
83
+ }
84
+ finally {
85
+ this._isSearching$.next(false);
86
+ }
87
+ }
88
+ /**
89
+ * Search conversations by name and description
90
+ */
91
+ async searchConversations(query, environmentId, currentUser, dateRange) {
92
+ const rv = new RunView();
93
+ const lowerQuery = query.toLowerCase();
94
+ let filter = `EnvironmentID='${environmentId}' AND (IsArchived IS NULL OR IsArchived=0)`;
95
+ filter += ` AND (LOWER(Name) LIKE '%${this.escapeSQL(lowerQuery)}%' OR LOWER(Description) LIKE '%${this.escapeSQL(lowerQuery)}%')`;
96
+ if (dateRange.start) {
97
+ filter += ` AND __mj_CreatedAt >= '${dateRange.start.toISOString()}'`;
98
+ }
99
+ if (dateRange.end) {
100
+ filter += ` AND __mj_CreatedAt <= '${dateRange.end.toISOString()}'`;
101
+ }
102
+ const result = await rv.RunView({
103
+ EntityName: 'Conversations',
104
+ ExtraFilter: filter,
105
+ OrderBy: '__mj_UpdatedAt DESC',
106
+ MaxRows: 100,
107
+ ResultType: 'entity_object'
108
+ }, currentUser);
109
+ if (!result.Success || !result.Results) {
110
+ console.error('Failed to search conversations:', result.ErrorMessage);
111
+ return [];
112
+ }
113
+ return result.Results.map(conv => this.mapConversationToSearchResult(conv, query));
114
+ }
115
+ /**
116
+ * Search message content
117
+ */
118
+ async searchMessages(query, environmentId, currentUser, dateRange) {
119
+ const rv = new RunView();
120
+ const lowerQuery = query.toLowerCase();
121
+ // First get conversations in this environment
122
+ let filter = `ConversationID IN (SELECT ID FROM vwConversations WHERE EnvironmentID='${environmentId}' AND (IsArchived IS NULL OR IsArchived=0))`;
123
+ filter += ` AND LOWER(Message) LIKE '%${this.escapeSQL(lowerQuery)}%'`;
124
+ filter += ` AND (HiddenToUser IS NULL OR HiddenToUser=0)`;
125
+ if (dateRange.start) {
126
+ filter += ` AND __mj_CreatedAt >= '${dateRange.start.toISOString()}'`;
127
+ }
128
+ if (dateRange.end) {
129
+ filter += ` AND __mj_CreatedAt <= '${dateRange.end.toISOString()}'`;
130
+ }
131
+ const result = await rv.RunView({
132
+ EntityName: 'Conversation Details',
133
+ ExtraFilter: filter,
134
+ OrderBy: '__mj_CreatedAt DESC',
135
+ MaxRows: 100,
136
+ ResultType: 'entity_object'
137
+ }, currentUser);
138
+ if (!result.Success || !result.Results) {
139
+ console.error('Failed to search messages:', result.ErrorMessage);
140
+ return [];
141
+ }
142
+ return result.Results.map(msg => this.mapMessageToSearchResult(msg, query));
143
+ }
144
+ /**
145
+ * Search artifacts by name and content
146
+ */
147
+ async searchArtifacts(query, environmentId, currentUser, dateRange) {
148
+ const rv = new RunView();
149
+ const lowerQuery = query.toLowerCase();
150
+ // Get artifacts in conversations from this environment
151
+ let filter = `ConversationID IN (SELECT ID FROM vwConversations WHERE EnvironmentID='${environmentId}' AND (IsArchived IS NULL OR IsArchived=0))`;
152
+ filter += ` AND (LOWER(Name) LIKE '%${this.escapeSQL(lowerQuery)}%' OR LOWER(Description) LIKE '%${this.escapeSQL(lowerQuery)}%')`;
153
+ if (dateRange.start) {
154
+ filter += ` AND __mj_CreatedAt >= '${dateRange.start.toISOString()}'`;
155
+ }
156
+ if (dateRange.end) {
157
+ filter += ` AND __mj_CreatedAt <= '${dateRange.end.toISOString()}'`;
158
+ }
159
+ const result = await rv.RunView({
160
+ EntityName: 'MJ: Conversation Artifacts',
161
+ ExtraFilter: filter,
162
+ OrderBy: '__mj_UpdatedAt DESC',
163
+ MaxRows: 100,
164
+ ResultType: 'entity_object'
165
+ }, currentUser);
166
+ if (!result.Success || !result.Results) {
167
+ console.error('Failed to search artifacts:', result.ErrorMessage);
168
+ return [];
169
+ }
170
+ return result.Results.map(artifact => this.mapArtifactToSearchResult(artifact, query));
171
+ }
172
+ /**
173
+ * Map conversation entity to search result
174
+ */
175
+ mapConversationToSearchResult(conversation, query) {
176
+ const lowerQuery = query.toLowerCase();
177
+ const name = conversation.Name || 'Untitled Conversation';
178
+ const description = conversation.Description || '';
179
+ // Calculate relevance score
180
+ let score = 0;
181
+ if (name.toLowerCase().includes(lowerQuery))
182
+ score += 10;
183
+ if (description.toLowerCase().includes(lowerQuery))
184
+ score += 5;
185
+ // Find matched text
186
+ const matchedText = this.extractMatchContext(name.toLowerCase().includes(lowerQuery) ? name : description, query);
187
+ return {
188
+ id: conversation.ID,
189
+ type: 'conversation',
190
+ title: name,
191
+ preview: description || 'No description',
192
+ matchedText,
193
+ conversationId: conversation.ID,
194
+ conversationName: name,
195
+ createdAt: conversation.__mj_CreatedAt,
196
+ relevanceScore: score
197
+ };
198
+ }
199
+ /**
200
+ * Map message entity to search result
201
+ */
202
+ mapMessageToSearchResult(message, query) {
203
+ const messageText = message.Message || '';
204
+ const matchedText = this.extractMatchContext(messageText, query);
205
+ return {
206
+ id: message.ID,
207
+ type: 'message',
208
+ title: `Message in ${message.Conversation || 'Unknown Conversation'}`,
209
+ preview: this.truncateText(messageText, 150),
210
+ matchedText,
211
+ conversationId: message.ConversationID,
212
+ conversationName: message.Conversation || undefined,
213
+ createdAt: message.__mj_CreatedAt,
214
+ relevanceScore: 5
215
+ };
216
+ }
217
+ /**
218
+ * Map artifact entity to search result
219
+ */
220
+ mapArtifactToSearchResult(artifact, query) {
221
+ const name = artifact.Name || 'Untitled Artifact';
222
+ const description = artifact.Description || '';
223
+ const lowerQuery = query.toLowerCase();
224
+ let score = 0;
225
+ if (name.toLowerCase().includes(lowerQuery))
226
+ score += 10;
227
+ if (description.toLowerCase().includes(lowerQuery))
228
+ score += 5;
229
+ const matchedText = this.extractMatchContext(name.toLowerCase().includes(lowerQuery) ? name : description, query);
230
+ return {
231
+ id: artifact.ID,
232
+ type: 'artifact',
233
+ title: name,
234
+ preview: description || 'No description',
235
+ matchedText,
236
+ conversationId: artifact.ConversationID,
237
+ conversationName: artifact.Conversation || undefined,
238
+ artifactType: artifact.ArtifactType || undefined,
239
+ createdAt: artifact.__mj_CreatedAt,
240
+ relevanceScore: score
241
+ };
242
+ }
243
+ /**
244
+ * Extract context around matched text
245
+ */
246
+ extractMatchContext(text, query, contextLength = 100) {
247
+ const lowerText = text.toLowerCase();
248
+ const lowerQuery = query.toLowerCase();
249
+ const index = lowerText.indexOf(lowerQuery);
250
+ if (index === -1)
251
+ return this.truncateText(text, contextLength);
252
+ const start = Math.max(0, index - contextLength / 2);
253
+ const end = Math.min(text.length, index + query.length + contextLength / 2);
254
+ let context = text.substring(start, end);
255
+ if (start > 0)
256
+ context = '...' + context;
257
+ if (end < text.length)
258
+ context = context + '...';
259
+ return context;
260
+ }
261
+ /**
262
+ * Truncate text to specified length
263
+ */
264
+ truncateText(text, maxLength) {
265
+ if (text.length <= maxLength)
266
+ return text;
267
+ return text.substring(0, maxLength) + '...';
268
+ }
269
+ /**
270
+ * Escape SQL special characters
271
+ */
272
+ escapeSQL(value) {
273
+ return value.replace(/'/g, "''");
274
+ }
275
+ /**
276
+ * Set search filter
277
+ */
278
+ setSearchFilter(filter) {
279
+ this._searchFilter$.next(filter);
280
+ }
281
+ /**
282
+ * Set date range filter
283
+ */
284
+ setDateRange(range) {
285
+ this._dateRange$.next(range);
286
+ }
287
+ /**
288
+ * Clear all filters
289
+ */
290
+ clearFilters() {
291
+ this._searchFilter$.next('all');
292
+ this._dateRange$.next({ start: null, end: null });
293
+ }
294
+ /**
295
+ * Clear search results
296
+ */
297
+ clearResults() {
298
+ this._searchResults$.next({
299
+ conversations: [],
300
+ messages: [],
301
+ artifacts: [],
302
+ total: 0
303
+ });
304
+ }
305
+ /**
306
+ * Get recent searches
307
+ */
308
+ getRecentSearches() {
309
+ return [...this.recentSearches];
310
+ }
311
+ /**
312
+ * Add to recent searches
313
+ */
314
+ addToRecentSearches(query) {
315
+ const trimmed = query.trim();
316
+ if (!trimmed)
317
+ return;
318
+ // Remove if already exists
319
+ this.recentSearches = this.recentSearches.filter(q => q !== trimmed);
320
+ // Add to front
321
+ this.recentSearches.unshift(trimmed);
322
+ // Keep only MAX_RECENT_SEARCHES
323
+ if (this.recentSearches.length > this.MAX_RECENT_SEARCHES) {
324
+ this.recentSearches = this.recentSearches.slice(0, this.MAX_RECENT_SEARCHES);
325
+ }
326
+ this.saveRecentSearches();
327
+ }
328
+ /**
329
+ * Clear recent searches
330
+ */
331
+ clearRecentSearches() {
332
+ this.recentSearches = [];
333
+ this.saveRecentSearches();
334
+ }
335
+ /**
336
+ * Load recent searches from localStorage
337
+ */
338
+ loadRecentSearches() {
339
+ try {
340
+ const stored = localStorage.getItem('mj-recent-searches');
341
+ if (stored) {
342
+ this.recentSearches = JSON.parse(stored);
343
+ }
344
+ }
345
+ catch (error) {
346
+ console.error('Failed to load recent searches:', error);
347
+ this.recentSearches = [];
348
+ }
349
+ }
350
+ /**
351
+ * Save recent searches to localStorage
352
+ */
353
+ saveRecentSearches() {
354
+ try {
355
+ localStorage.setItem('mj-recent-searches', JSON.stringify(this.recentSearches));
356
+ }
357
+ catch (error) {
358
+ console.error('Failed to save recent searches:', error);
359
+ }
360
+ }
361
+ static ɵfac = function SearchService_Factory(t) { return new (t || SearchService)(); };
362
+ static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SearchService, factory: SearchService.ɵfac, providedIn: 'root' });
363
+ }
364
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchService, [{
365
+ type: Injectable,
366
+ args: [{
367
+ providedIn: 'root'
368
+ }]
369
+ }], () => [], null); })();
370
+ //# sourceMappingURL=search.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.service.js","sourceRoot":"","sources":["../../../src/lib/services/search.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { Observable } from 'rxjs';
2
+ import * as i0 from "@angular/core";
3
+ export type ToastType = 'success' | 'error' | 'warning' | 'info';
4
+ export interface Toast {
5
+ id: string;
6
+ message: string;
7
+ type: ToastType;
8
+ duration: number;
9
+ timestamp: number;
10
+ }
11
+ export declare class ToastService {
12
+ private toastsSubject;
13
+ toasts$: Observable<Toast[]>;
14
+ private idCounter;
15
+ /**
16
+ * Show a toast notification
17
+ */
18
+ show(message: string, type?: ToastType, duration?: number): string;
19
+ /**
20
+ * Show a success toast
21
+ */
22
+ success(message: string, duration?: number): string;
23
+ /**
24
+ * Show an error toast
25
+ */
26
+ error(message: string, duration?: number): string;
27
+ /**
28
+ * Show a warning toast
29
+ */
30
+ warning(message: string, duration?: number): string;
31
+ /**
32
+ * Show an info toast
33
+ */
34
+ info(message: string, duration?: number): string;
35
+ /**
36
+ * Dismiss a specific toast by ID
37
+ */
38
+ dismiss(id: string): void;
39
+ /**
40
+ * Clear all toasts
41
+ */
42
+ clear(): void;
43
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToastService, never>;
44
+ static ɵprov: i0.ɵɵInjectableDeclaration<ToastService>;
45
+ }
46
+ //# sourceMappingURL=toast.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/toast.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,UAAU,EAAE,MAAM,MAAM,CAAC;;AAEnD,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEjE,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAGa,YAAY;IACvB,OAAO,CAAC,aAAa,CAAoC;IAClD,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAqC;IAExE,OAAO,CAAC,SAAS,CAAK;IAEtB;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,SAAkB,EAAE,QAAQ,GAAE,MAAa,GAAG,MAAM;IAsBvF;;OAEG;IACI,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,MAAM;IAIhE;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,MAAM;IAI9D;;OAEG;IACI,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,MAAM;IAIhE;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAa,GAAG,MAAM;IAI7D;;OAEG;IACI,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAMhC;;OAEG;IACI,KAAK,IAAI,IAAI;yCAvET,YAAY;6CAAZ,YAAY;CA0ExB"}
@@ -0,0 +1,76 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class ToastService {
5
+ toastsSubject = new BehaviorSubject([]);
6
+ toasts$ = this.toastsSubject.asObservable();
7
+ idCounter = 0;
8
+ /**
9
+ * Show a toast notification
10
+ */
11
+ show(message, type = 'info', duration = 3000) {
12
+ const toast = {
13
+ id: `toast-${++this.idCounter}-${Date.now()}`,
14
+ message,
15
+ type,
16
+ duration,
17
+ timestamp: Date.now()
18
+ };
19
+ const currentToasts = this.toastsSubject.value;
20
+ this.toastsSubject.next([...currentToasts, toast]);
21
+ // Auto-dismiss after duration
22
+ if (duration > 0) {
23
+ setTimeout(() => {
24
+ this.dismiss(toast.id);
25
+ }, duration);
26
+ }
27
+ return toast.id;
28
+ }
29
+ /**
30
+ * Show a success toast
31
+ */
32
+ success(message, duration = 3000) {
33
+ return this.show(message, 'success', duration);
34
+ }
35
+ /**
36
+ * Show an error toast
37
+ */
38
+ error(message, duration = 5000) {
39
+ return this.show(message, 'error', duration);
40
+ }
41
+ /**
42
+ * Show a warning toast
43
+ */
44
+ warning(message, duration = 4000) {
45
+ return this.show(message, 'warning', duration);
46
+ }
47
+ /**
48
+ * Show an info toast
49
+ */
50
+ info(message, duration = 3000) {
51
+ return this.show(message, 'info', duration);
52
+ }
53
+ /**
54
+ * Dismiss a specific toast by ID
55
+ */
56
+ dismiss(id) {
57
+ const currentToasts = this.toastsSubject.value;
58
+ const filteredToasts = currentToasts.filter(t => t.id !== id);
59
+ this.toastsSubject.next(filteredToasts);
60
+ }
61
+ /**
62
+ * Clear all toasts
63
+ */
64
+ clear() {
65
+ this.toastsSubject.next([]);
66
+ }
67
+ static ɵfac = function ToastService_Factory(t) { return new (t || ToastService)(); };
68
+ static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ToastService, factory: ToastService.ɵfac, providedIn: 'root' });
69
+ }
70
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastService, [{
71
+ type: Injectable,
72
+ args: [{
73
+ providedIn: 'root'
74
+ }]
75
+ }], null, null); })();
76
+ //# sourceMappingURL=toast.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.service.js","sourceRoot":"","sources":["../../../src/lib/services/toast.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAc,MAAM,MAAM,CAAC;;AAenD,MAAM,OAAO,YAAY;IACf,aAAa,GAAG,IAAI,eAAe,CAAU,EAAE,CAAC,CAAC;IAClD,OAAO,GAAwB,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;IAEhE,SAAS,GAAG,CAAC,CAAC;IAEtB;;OAEG;IACI,IAAI,CAAC,OAAe,EAAE,OAAkB,MAAM,EAAE,WAAmB,IAAI;QAC5E,MAAM,KAAK,GAAU;YACnB,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE;YAC7C,OAAO;YACP,IAAI;YACJ,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QAC/C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;QAEnD,8BAA8B;QAC9B,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC,EAAE,QAAQ,CAAC,CAAC;QACf,CAAC;QAED,OAAO,KAAK,CAAC,EAAE,CAAC;IAClB,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,OAAe,EAAE,WAAmB,IAAI;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAe,EAAE,WAAmB,IAAI;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,OAAe,EAAE,WAAmB,IAAI;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACI,IAAI,CAAC,OAAe,EAAE,WAAmB,IAAI;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,EAAU;QACvB,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QAC/C,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACI,KAAK;QACV,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;sEAzEU,YAAY;gEAAZ,YAAY,WAAZ,YAAY,mBAFX,MAAM;;iFAEP,YAAY;cAHxB,UAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB"}
@@ -0,0 +1,42 @@
1
+ export * from './lib/conversations.module';
2
+ export * from './lib/models/conversation-state.model';
3
+ export * from './lib/models/notification.model';
4
+ export * from './lib/services/conversation-state.service';
5
+ export * from './lib/services/artifact-state.service';
6
+ export * from './lib/services/agent-state.service';
7
+ export * from './lib/services/conversation-agent.service';
8
+ export * from './lib/services/active-tasks.service';
9
+ export * from './lib/services/dialog.service';
10
+ export * from './lib/services/export.service';
11
+ export * from './lib/services/notification.service';
12
+ export * from './lib/services/toast.service';
13
+ export * from './lib/services/mention-parser.service';
14
+ export * from './lib/services/mention-autocomplete.service';
15
+ export * from './lib/components/workspace/conversation-workspace.component';
16
+ export * from './lib/components/navigation/conversation-navigation.component';
17
+ export * from './lib/components/sidebar/conversation-sidebar.component';
18
+ export * from './lib/components/conversation/conversation-list.component';
19
+ export * from './lib/components/conversation/conversation-chat-area.component';
20
+ export * from './lib/components/artifact/artifact-panel.component';
21
+ export * from './lib/components/artifact/artifact-viewer.component';
22
+ export * from './lib/components/artifact/artifact-version-history.component';
23
+ export * from './lib/components/artifact/inline-artifact.component';
24
+ export * from './lib/components/message/message-item.component';
25
+ export * from './lib/components/message/message-list.component';
26
+ export * from './lib/components/message/message-input.component';
27
+ export * from './lib/components/mention/mention-dropdown.component';
28
+ export * from './lib/components/collection/collection-tree.component';
29
+ export * from './lib/components/collection/collection-view.component';
30
+ export * from './lib/components/collection/collection-artifact-card.component';
31
+ export * from './lib/components/project/project-selector.component';
32
+ export * from './lib/components/project/project-form-modal.component';
33
+ export * from './lib/components/task/task-list.component';
34
+ export * from './lib/components/task/task-item.component';
35
+ export * from './lib/components/agent/agent-process-panel.component';
36
+ export * from './lib/components/agent/active-agent-indicator.component';
37
+ export * from './lib/components/active-tasks/active-tasks-panel.component';
38
+ export * from './lib/components/share/share-modal.component';
39
+ export * from './lib/components/notification/notification-badge.component';
40
+ export * from './lib/components/notification/activity-indicator.component';
41
+ export * from './lib/components/toast/toast.component';
42
+ //# sourceMappingURL=public-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAKA,cAAc,4BAA4B,CAAC;AAG3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAGhD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAG5D,cAAc,6DAA6D,CAAC;AAC5E,cAAc,+DAA+D,CAAC;AAC9E,cAAc,yDAAyD,CAAC;AACxE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,oDAAoD,CAAC;AACnE,cAAc,qDAAqD,CAAC;AACpE,cAAc,8DAA8D,CAAC;AAC7E,cAAc,qDAAqD,CAAC;AACpE,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sDAAsD,CAAC;AACrE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wCAAwC,CAAC"}
@@ -0,0 +1,49 @@
1
+ /*
2
+ * Public API Surface of @memberjunction/ng-conversations
3
+ */
4
+ // Module
5
+ export * from './lib/conversations.module';
6
+ // Models
7
+ export * from './lib/models/conversation-state.model';
8
+ export * from './lib/models/notification.model';
9
+ // Services - State
10
+ export * from './lib/services/conversation-state.service';
11
+ export * from './lib/services/artifact-state.service';
12
+ export * from './lib/services/agent-state.service';
13
+ export * from './lib/services/conversation-agent.service';
14
+ export * from './lib/services/active-tasks.service';
15
+ export * from './lib/services/dialog.service';
16
+ export * from './lib/services/export.service';
17
+ export * from './lib/services/notification.service';
18
+ export * from './lib/services/toast.service';
19
+ export * from './lib/services/mention-parser.service';
20
+ export * from './lib/services/mention-autocomplete.service';
21
+ // Components
22
+ export * from './lib/components/workspace/conversation-workspace.component';
23
+ export * from './lib/components/navigation/conversation-navigation.component';
24
+ export * from './lib/components/sidebar/conversation-sidebar.component';
25
+ export * from './lib/components/conversation/conversation-list.component';
26
+ export * from './lib/components/conversation/conversation-chat-area.component';
27
+ export * from './lib/components/artifact/artifact-panel.component';
28
+ export * from './lib/components/artifact/artifact-viewer.component';
29
+ export * from './lib/components/artifact/artifact-version-history.component';
30
+ export * from './lib/components/artifact/inline-artifact.component';
31
+ export * from './lib/components/message/message-item.component';
32
+ export * from './lib/components/message/message-list.component';
33
+ export * from './lib/components/message/message-input.component';
34
+ export * from './lib/components/mention/mention-dropdown.component';
35
+ export * from './lib/components/collection/collection-tree.component';
36
+ export * from './lib/components/collection/collection-view.component';
37
+ export * from './lib/components/collection/collection-artifact-card.component';
38
+ export * from './lib/components/project/project-selector.component';
39
+ export * from './lib/components/project/project-form-modal.component';
40
+ export * from './lib/components/task/task-list.component';
41
+ export * from './lib/components/task/task-item.component';
42
+ export * from './lib/components/agent/agent-process-panel.component';
43
+ export * from './lib/components/agent/active-agent-indicator.component';
44
+ export * from './lib/components/active-tasks/active-tasks-panel.component';
45
+ export * from './lib/components/share/share-modal.component';
46
+ export * from './lib/components/notification/notification-badge.component';
47
+ export * from './lib/components/notification/activity-indicator.component';
48
+ export * from './lib/components/toast/toast.component';
49
+ //# sourceMappingURL=public-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-api.js","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,SAAS;AACT,cAAc,4BAA4B,CAAC;AAE3C,SAAS;AACT,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAEhD,mBAAmB;AACnB,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAE5D,aAAa;AACb,cAAc,6DAA6D,CAAC;AAC5E,cAAc,+DAA+D,CAAC;AAC9E,cAAc,yDAAyD,CAAC;AACxE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,oDAAoD,CAAC;AACnE,cAAc,qDAAqD,CAAC;AACpE,cAAc,8DAA8D,CAAC;AAC7E,cAAc,qDAAqD,CAAC;AACpE,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sDAAsD,CAAC;AACrE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wCAAwC,CAAC"}