@memberjunction/ng-core-entity-forms 5.22.0 → 5.24.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 (215) hide show
  1. package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts +4 -5
  2. package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
  3. package/dist/lib/custom/AIAgents/add-action-dialog.component.js +55 -59
  4. package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
  5. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js +0 -1
  6. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js.map +1 -1
  7. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts +4 -5
  8. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts.map +1 -1
  9. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js +54 -71
  10. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js.map +1 -1
  11. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
  12. package/dist/lib/custom/AIAgents/ai-agent-form.component.js +1053 -1096
  13. package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
  14. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts +2 -3
  15. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts.map +1 -1
  16. package/dist/lib/custom/AIAgents/ai-agent-management.service.js +39 -82
  17. package/dist/lib/custom/AIAgents/ai-agent-management.service.js.map +1 -1
  18. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +4 -5
  19. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
  20. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js +28 -31
  21. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
  22. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts +4 -5
  23. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
  24. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +15 -14
  25. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
  26. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts +4 -7
  27. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
  28. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +77 -124
  29. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
  30. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts +2 -2
  31. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts.map +1 -1
  32. package/dist/lib/custom/AIAgents/new-agent-dialog.service.js +10 -11
  33. package/dist/lib/custom/AIAgents/new-agent-dialog.service.js.map +1 -1
  34. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +4 -5
  35. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
  36. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +18 -18
  37. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
  38. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts +4 -5
  39. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
  40. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js +59 -80
  41. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
  42. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +4 -5
  43. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
  44. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +23 -24
  45. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
  46. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts.map +1 -1
  47. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +862 -906
  48. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
  49. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js +4 -5
  50. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js.map +1 -1
  51. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +448 -499
  52. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
  53. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts +2 -2
  54. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts.map +1 -1
  55. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js +6 -11
  56. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js.map +1 -1
  57. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts +4 -5
  58. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts.map +1 -1
  59. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js +16 -15
  60. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js.map +1 -1
  61. package/dist/lib/custom/Actions/action-execution-log-form.component.js +160 -166
  62. package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
  63. package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
  64. package/dist/lib/custom/Actions/action-form.component.js +93 -94
  65. package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
  66. package/dist/lib/custom/ContentSources/content-source-form.component.d.ts +22 -0
  67. package/dist/lib/custom/ContentSources/content-source-form.component.d.ts.map +1 -0
  68. package/dist/lib/custom/ContentSources/content-source-form.component.js +165 -0
  69. package/dist/lib/custom/ContentSources/content-source-form.component.js.map +1 -0
  70. package/dist/lib/custom/Entities/entity-form.component.js +2 -2
  71. package/dist/lib/custom/Lists/list-form.component.js +61 -63
  72. package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
  73. package/dist/lib/custom/Queries/query-category-dialog.component.js +33 -59
  74. package/dist/lib/custom/Queries/query-category-dialog.component.js.map +1 -1
  75. package/dist/lib/custom/Queries/query-form.component.js +354 -360
  76. package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
  77. package/dist/lib/custom/Queries/query-run-dialog.component.js +62 -71
  78. package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
  79. package/dist/lib/custom/Templates/template-param-dialog.component.js +128 -124
  80. package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
  81. package/dist/lib/custom/Templates/template-params-grid.component.d.ts +45 -22
  82. package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
  83. package/dist/lib/custom/Templates/template-params-grid.component.js +380 -384
  84. package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
  85. package/dist/lib/custom/Templates/templates-form.component.js +34 -36
  86. package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
  87. package/dist/lib/custom/Tests/test-form.component.js +8 -9
  88. package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
  89. package/dist/lib/custom/Tests/test-run-feedback-form.component.js +4 -4
  90. package/dist/lib/custom/Tests/test-run-feedback-form.component.js.map +1 -1
  91. package/dist/lib/custom/Tests/test-run-form.component.js +7 -7
  92. package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
  93. package/dist/lib/custom/Tests/test-suite-form.component.js +6 -7
  94. package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
  95. package/dist/lib/custom/Tests/test-suite-run-form.component.js +6 -7
  96. package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
  97. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +381 -409
  98. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
  99. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts.map +1 -1
  100. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js +1 -1
  101. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js.map +1 -1
  102. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts.map +1 -1
  103. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +74 -63
  104. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
  105. package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js +10 -10
  106. package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js.map +1 -1
  107. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
  108. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +352 -332
  109. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
  110. package/dist/lib/custom/custom-forms.module.d.ts +25 -29
  111. package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
  112. package/dist/lib/custom/custom-forms.module.js +57 -82
  113. package/dist/lib/custom/custom-forms.module.js.map +1 -1
  114. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts +4 -5
  115. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
  116. package/dist/lib/custom/shared/entity-selector-dialog.component.js +59 -66
  117. package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
  118. package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.d.ts.map +1 -1
  119. package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js +176 -156
  120. package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js.map +1 -1
  121. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.d.ts +10 -0
  122. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.d.ts.map +1 -0
  123. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.js +65 -0
  124. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.js.map +1 -0
  125. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.d.ts +10 -0
  126. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.d.ts.map +1 -0
  127. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.js +89 -0
  128. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.js.map +1 -0
  129. package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.d.ts.map +1 -1
  130. package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js +98 -44
  131. package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js.map +1 -1
  132. package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.d.ts.map +1 -1
  133. package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js +35 -17
  134. package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js.map +1 -1
  135. package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.d.ts.map +1 -1
  136. package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.js +79 -20
  137. package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.js.map +1 -1
  138. package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.d.ts +10 -0
  139. package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.d.ts.map +1 -0
  140. package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.js +73 -0
  141. package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.js.map +1 -0
  142. package/dist/lib/generated/Entities/MJContentItemTag/mjcontentitemtag.form.component.js +11 -6
  143. package/dist/lib/generated/Entities/MJContentItemTag/mjcontentitemtag.form.component.js.map +1 -1
  144. package/dist/lib/generated/Entities/MJContentProcessRun/mjcontentprocessrun.form.component.d.ts.map +1 -1
  145. package/dist/lib/generated/Entities/MJContentProcessRun/mjcontentprocessrun.form.component.js +49 -8
  146. package/dist/lib/generated/Entities/MJContentProcessRun/mjcontentprocessrun.form.component.js.map +1 -1
  147. package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.d.ts +10 -0
  148. package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.d.ts.map +1 -0
  149. package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.js +107 -0
  150. package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.js.map +1 -0
  151. package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.d.ts +10 -0
  152. package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.d.ts.map +1 -0
  153. package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.js +57 -0
  154. package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.js.map +1 -0
  155. package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.d.ts.map +1 -1
  156. package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js +71 -24
  157. package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js.map +1 -1
  158. package/dist/lib/generated/Entities/MJContentSourceType/mjcontentsourcetype.form.component.d.ts.map +1 -1
  159. package/dist/lib/generated/Entities/MJContentSourceType/mjcontentsourcetype.form.component.js +43 -15
  160. package/dist/lib/generated/Entities/MJContentSourceType/mjcontentsourcetype.form.component.js.map +1 -1
  161. package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.d.ts.map +1 -1
  162. package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.js +43 -17
  163. package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.js.map +1 -1
  164. package/dist/lib/generated/Entities/MJDuplicateRun/mjduplicaterun.form.component.js +21 -11
  165. package/dist/lib/generated/Entities/MJDuplicateRun/mjduplicaterun.form.component.js.map +1 -1
  166. package/dist/lib/generated/Entities/MJDuplicateRunDetail/mjduplicaterundetail.form.component.js +19 -13
  167. package/dist/lib/generated/Entities/MJDuplicateRunDetail/mjduplicaterundetail.form.component.js.map +1 -1
  168. package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.d.ts.map +1 -1
  169. package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js +7 -9
  170. package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js.map +1 -1
  171. package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.d.ts.map +1 -1
  172. package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js +78 -60
  173. package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js.map +1 -1
  174. package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.d.ts.map +1 -1
  175. package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js +24 -6
  176. package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js.map +1 -1
  177. package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.d.ts.map +1 -1
  178. package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js +21 -9
  179. package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js.map +1 -1
  180. package/dist/lib/generated/Entities/MJEntityRecordDocument/mjentityrecorddocument.form.component.d.ts.map +1 -1
  181. package/dist/lib/generated/Entities/MJEntityRecordDocument/mjentityrecorddocument.form.component.js +23 -5
  182. package/dist/lib/generated/Entities/MJEntityRecordDocument/mjentityrecorddocument.form.component.js.map +1 -1
  183. package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.d.ts +10 -0
  184. package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.d.ts.map +1 -0
  185. package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.js +77 -0
  186. package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.js.map +1 -0
  187. package/dist/lib/generated/Entities/MJScheduledAction/mjscheduledaction.form.component.d.ts.map +1 -1
  188. package/dist/lib/generated/Entities/MJScheduledAction/mjscheduledaction.form.component.js +22 -4
  189. package/dist/lib/generated/Entities/MJScheduledAction/mjscheduledaction.form.component.js.map +1 -1
  190. package/dist/lib/generated/Entities/MJTag/mjtag.form.component.d.ts.map +1 -1
  191. package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js +139 -19
  192. package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js.map +1 -1
  193. package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.d.ts +10 -0
  194. package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.d.ts.map +1 -0
  195. package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.js +67 -0
  196. package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.js.map +1 -0
  197. package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.d.ts +10 -0
  198. package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.d.ts.map +1 -0
  199. package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.js +65 -0
  200. package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.js.map +1 -0
  201. package/dist/lib/generated/Entities/MJTaggedItem/mjtaggeditem.form.component.js +10 -8
  202. package/dist/lib/generated/Entities/MJTaggedItem/mjtaggeditem.form.component.js.map +1 -1
  203. package/dist/lib/generated/Entities/MJUser/mjuser.form.component.d.ts.map +1 -1
  204. package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js +226 -154
  205. package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js.map +1 -1
  206. package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.d.ts.map +1 -1
  207. package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js +41 -5
  208. package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js.map +1 -1
  209. package/dist/lib/generated/generated-forms.module.d.ts +286 -279
  210. package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
  211. package/dist/lib/generated/generated-forms.module.js +192 -214
  212. package/dist/lib/generated/generated-forms.module.js.map +1 -1
  213. package/dist/lib/shared/components/template-editor.component.js +14 -15
  214. package/dist/lib/shared/components/template-editor.component.js.map +1 -1
  215. package/package.json +34 -41
@@ -1,5 +1,5 @@
1
1
  import { ViewContainerRef } from '@angular/core';
2
- import { DialogService, WindowService } from '@progress/kendo-angular-dialog';
2
+ import { MJDialogService } from '@memberjunction/ng-ui-components';
3
3
  import { Observable } from 'rxjs';
4
4
  import { MJActionEntity, MJAIAgentPromptEntity } from '@memberjunction/core-entities';
5
5
  import { PromptSelectorResult } from './prompt-selector-dialog.component';
@@ -22,8 +22,7 @@ import * as i0 from "@angular/core";
22
22
  */
23
23
  export declare class AIAgentManagementService {
24
24
  private dialogService;
25
- private windowService;
26
- constructor(dialogService: DialogService, windowService: WindowService);
25
+ constructor(dialogService: MJDialogService);
27
26
  /**
28
27
  * Opens the Add Action dialog for selecting actions to link to an agent
29
28
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent-management.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/ai-agent-management.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-agent-management.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/ai-agent-management.service.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import { SubAgentSelectorDialogComponent } from './sub-agent-selector-dialog.com
8
8
  import { CreatePromptDialogComponent } from './create-prompt-dialog.component';
9
9
  import { CreateSubAgentDialogComponent } from './create-sub-agent-dialog.component';
10
10
  import * as i0 from "@angular/core";
11
- import * as i1 from "@progress/kendo-angular-dialog";
11
+ import * as i1 from "@memberjunction/ng-ui-components";
12
12
  /**
13
13
  * Consolidated service for managing AI Agent operations including:
14
14
  * - Adding/removing actions
@@ -20,9 +20,8 @@ import * as i1 from "@progress/kendo-angular-dialog";
20
20
  * to provide a consistent interface for both editing existing agents and creating new ones.
21
21
  */
22
22
  export class AIAgentManagementService {
23
- constructor(dialogService, windowService) {
23
+ constructor(dialogService) {
24
24
  this.dialogService = dialogService;
25
- this.windowService = windowService;
26
25
  }
27
26
  // === Action Management ===
28
27
  /**
@@ -32,26 +31,20 @@ export class AIAgentManagementService {
32
31
  * @returns Observable that emits the selected actions when dialog is closed
33
32
  */
34
33
  openAddActionDialog(config) {
35
- const windowSettings = {
34
+ const dialogRef = this.dialogService.open({
36
35
  title: `Add Actions to ${config.agentName}`,
37
36
  content: AddActionDialogComponent,
38
37
  width: 1000,
39
38
  height: 700,
40
39
  minWidth: 800,
41
- minHeight: 600,
42
- draggable: true,
43
- resizable: true,
44
- state: 'default'
45
- };
46
- if (config.viewContainerRef) {
47
- windowSettings.appendTo = config.viewContainerRef;
48
- }
49
- const windowRef = this.windowService.open(windowSettings);
40
+ appendTo: config.viewContainerRef
41
+ });
50
42
  // Pass configuration to the dialog component
51
- const componentInstance = windowRef.content.instance;
43
+ const componentInstance = dialogRef.Content.instance;
52
44
  componentInstance.agentId = config.agentId;
53
45
  componentInstance.agentName = config.agentName;
54
46
  componentInstance.existingActionIds = [...config.existingActionIds];
47
+ componentInstance.DialogClose?.subscribe(() => dialogRef.Close());
55
48
  return componentInstance.result.asObservable();
56
49
  }
57
50
  // === Prompt Management ===
@@ -70,24 +63,18 @@ export class AIAgentManagementService {
70
63
  extraFilter: config.extraFilter,
71
64
  linkedPromptIds: config.linkedPromptIds || []
72
65
  };
73
- const windowSettings = {
66
+ const dialogRef = this.dialogService.open({
74
67
  title: selectorConfig.title,
75
68
  content: PromptSelectorDialogComponent,
76
69
  width: 900,
77
70
  height: 600,
78
71
  minWidth: 600,
79
- minHeight: 400,
80
- draggable: true,
81
- resizable: true,
82
- state: 'default'
83
- };
84
- if (config.viewContainerRef) {
85
- windowSettings.appendTo = config.viewContainerRef;
86
- }
87
- const windowRef = this.windowService.open(windowSettings);
72
+ appendTo: config.viewContainerRef
73
+ });
88
74
  // Pass configuration to the dialog component
89
- const componentInstance = windowRef.content.instance;
75
+ const componentInstance = dialogRef.Content.instance;
90
76
  componentInstance.config = selectorConfig;
77
+ componentInstance.DialogClose?.subscribe(() => dialogRef.Close());
91
78
  return componentInstance.result.asObservable();
92
79
  }
93
80
  /**
@@ -131,24 +118,18 @@ export class AIAgentManagementService {
131
118
  showCreateNew: config.showCreateNew ?? true,
132
119
  parentAgentId: config.parentAgentId
133
120
  };
134
- const windowSettings = {
121
+ const dialogRef = this.dialogService.open({
135
122
  title: selectorConfig.title,
136
123
  content: SubAgentSelectorDialogComponent,
137
124
  width: 1000,
138
125
  height: 700,
139
126
  minWidth: 800,
140
- minHeight: 600,
141
- draggable: true,
142
- resizable: true,
143
- state: 'default'
144
- };
145
- if (config.viewContainerRef) {
146
- windowSettings.appendTo = config.viewContainerRef;
147
- }
148
- const windowRef = this.windowService.open(windowSettings);
127
+ appendTo: config.viewContainerRef
128
+ });
149
129
  // Pass configuration to the dialog component
150
- const componentInstance = windowRef.content.instance;
130
+ const componentInstance = dialogRef.Content.instance;
151
131
  componentInstance.config = selectorConfig;
132
+ componentInstance.DialogClose?.subscribe(() => dialogRef.Close());
152
133
  return componentInstance.result.asObservable();
153
134
  }
154
135
  // === Advanced Settings for Related Entities ===
@@ -159,25 +140,19 @@ export class AIAgentManagementService {
159
140
  * @returns Observable that emits the form data when dialog is closed, or null if cancelled
160
141
  */
161
142
  openAgentPromptAdvancedSettingsDialog(config) {
162
- const windowSettings = {
143
+ const dialogRef = this.dialogService.open({
163
144
  title: `Advanced Settings - Prompt Configuration`,
164
145
  content: AgentPromptAdvancedSettingsDialogComponent,
165
146
  width: 700,
166
147
  height: 600,
167
148
  minWidth: 500,
168
- minHeight: 400,
169
- draggable: true,
170
- resizable: true,
171
- state: 'default'
172
- };
173
- if (config.viewContainerRef) {
174
- windowSettings.appendTo = config.viewContainerRef;
175
- }
176
- const windowRef = this.windowService.open(windowSettings);
149
+ appendTo: config.viewContainerRef
150
+ });
177
151
  // Pass configuration to the dialog component
178
- const componentInstance = windowRef.content.instance;
152
+ const componentInstance = dialogRef.Content.instance;
179
153
  componentInstance.agentPrompt = config.agentPrompt;
180
154
  componentInstance.allAgentPrompts = config.allAgentPrompts;
155
+ componentInstance.DialogClose?.subscribe(() => dialogRef.Close());
181
156
  return componentInstance.result.asObservable();
182
157
  }
183
158
  /**
@@ -187,25 +162,19 @@ export class AIAgentManagementService {
187
162
  * @returns Observable that emits the form data when dialog is closed, or null if cancelled
188
163
  */
189
164
  openSubAgentAdvancedSettingsDialog(config) {
190
- const windowSettings = {
165
+ const dialogRef = this.dialogService.open({
191
166
  title: `Advanced Settings - ${config.subAgent.Name || 'Sub-Agent'}`,
192
167
  content: SubAgentAdvancedSettingsDialogComponent,
193
168
  width: 700,
194
169
  height: 600,
195
170
  minWidth: 500,
196
- minHeight: 400,
197
- draggable: true,
198
- resizable: true,
199
- state: 'default'
200
- };
201
- if (config.viewContainerRef) {
202
- windowSettings.appendTo = config.viewContainerRef;
203
- }
204
- const windowRef = this.windowService.open(windowSettings);
171
+ appendTo: config.viewContainerRef
172
+ });
205
173
  // Pass configuration to the dialog component
206
- const componentInstance = windowRef.content.instance;
174
+ const componentInstance = dialogRef.Content.instance;
207
175
  componentInstance.subAgent = config.subAgent;
208
176
  componentInstance.allSubAgents = config.allSubAgents;
177
+ componentInstance.DialogClose?.subscribe(() => dialogRef.Close());
209
178
  return componentInstance.result.asObservable();
210
179
  }
211
180
  // === Prompt Creation ===
@@ -222,24 +191,18 @@ export class AIAgentManagementService {
222
191
  initialName: config.initialName,
223
192
  initialTypeID: config.initialTypeID
224
193
  };
225
- const windowSettings = {
194
+ const dialogRef = this.dialogService.open({
226
195
  title: createConfig.title,
227
196
  content: CreatePromptDialogComponent,
228
197
  width: 900,
229
198
  height: 700,
230
199
  minWidth: 700,
231
- minHeight: 500,
232
- draggable: true,
233
- resizable: true,
234
- state: 'default'
235
- };
236
- if (config.viewContainerRef) {
237
- windowSettings.appendTo = config.viewContainerRef;
238
- }
239
- const windowRef = this.windowService.open(windowSettings);
200
+ appendTo: config.viewContainerRef
201
+ });
240
202
  // Pass configuration to the dialog component
241
- const componentInstance = windowRef.content.instance;
203
+ const componentInstance = dialogRef.Content.instance;
242
204
  componentInstance.config = createConfig;
205
+ componentInstance.DialogClose?.subscribe(() => dialogRef.Close());
243
206
  return componentInstance.result.asObservable();
244
207
  }
245
208
  // === Sub-Agent Creation ===
@@ -258,24 +221,18 @@ export class AIAgentManagementService {
258
221
  parentAgentId: config.parentAgentId,
259
222
  parentAgentName: config.parentAgentName
260
223
  };
261
- const windowSettings = {
224
+ const dialogRef = this.dialogService.open({
262
225
  title: createConfig.title,
263
226
  content: CreateSubAgentDialogComponent,
264
227
  width: 1000,
265
228
  height: 800,
266
229
  minWidth: 800,
267
- minHeight: 600,
268
- draggable: true,
269
- resizable: true,
270
- state: 'default'
271
- };
272
- if (config.viewContainerRef) {
273
- windowSettings.appendTo = config.viewContainerRef;
274
- }
275
- const windowRef = this.windowService.open(windowSettings);
230
+ appendTo: config.viewContainerRef
231
+ });
276
232
  // Pass configuration to the dialog component
277
- const componentInstance = windowRef.content.instance;
233
+ const componentInstance = dialogRef.Content.instance;
278
234
  componentInstance.config = createConfig;
235
+ componentInstance.DialogClose?.subscribe(() => dialogRef.Close());
279
236
  return componentInstance.result.asObservable();
280
237
  }
281
238
  // === Future: Agent Creation ===
@@ -331,7 +288,7 @@ export class AIAgentManagementService {
331
288
  // This will handle the hierarchy settings that were removed from Advanced Settings
332
289
  throw new Error('Sub-agent management dialog not yet implemented');
333
290
  }
334
- static { this.ɵfac = function AIAgentManagementService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AIAgentManagementService)(i0.ɵɵinject(i1.DialogService), i0.ɵɵinject(i1.WindowService)); }; }
291
+ static { this.ɵfac = function AIAgentManagementService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AIAgentManagementService)(i0.ɵɵinject(i1.MJDialogService)); }; }
335
292
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AIAgentManagementService, factory: AIAgentManagementService.ɵfac, providedIn: 'root' }); }
336
293
  }
337
294
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AIAgentManagementService, [{
@@ -339,5 +296,5 @@ export class AIAgentManagementService {
339
296
  args: [{
340
297
  providedIn: 'root'
341
298
  }]
342
- }], () => [{ type: i1.DialogService }, { type: i1.WindowService }], null); })();
299
+ }], () => [{ type: i1.MJDialogService }], null); })();
343
300
  //# sourceMappingURL=ai-agent-management.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent-management.service.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/ai-agent-management.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, ViewContainerRef } from '@angular/core';\nimport { DialogService, DialogRef, WindowService, WindowRef, WindowSettings } from '@progress/kendo-angular-dialog';\nimport { Observable } from 'rxjs';\nimport { MJActionEntity, MJAIAgentPromptEntity, } from '@memberjunction/core-entities';\nimport { AddActionDialogComponent } from './add-action-dialog.component';\nimport { PromptSelectorDialogComponent, PromptSelectorConfig, PromptSelectorResult } from './prompt-selector-dialog.component';\nimport { AgentPromptAdvancedSettingsDialogComponent, AgentPromptAdvancedSettingsFormData } from './agent-prompt-advanced-settings-dialog.component';\nimport { SubAgentAdvancedSettingsDialogComponent, SubAgentAdvancedSettingsFormData } from './sub-agent-advanced-settings-dialog.component';\nimport { SubAgentSelectorDialogComponent, SubAgentSelectorConfig, SubAgentSelectorResult } from './sub-agent-selector-dialog.component';\nimport { CreatePromptDialogComponent, CreatePromptConfig, CreatePromptResult } from './create-prompt-dialog.component';\nimport { CreateSubAgentDialogComponent, CreateSubAgentConfig, CreateSubAgentResult } from './create-sub-agent-dialog.component';\nimport { MJAIAgentEntityExtended, MJAIPromptEntityExtended } from '@memberjunction/ai-core-plus';\n\n/**\n * Consolidated service for managing AI Agent operations including:\n * - Adding/removing actions\n * - Advanced settings configuration \n * - Agent creation (future)\n * - Agent editing operations\n * \n * This service centralizes all agent-related dialog and management functionality\n * to provide a consistent interface for both editing existing agents and creating new ones.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class AIAgentManagementService {\n\n constructor(\n private dialogService: DialogService,\n private windowService: WindowService\n ) {}\n\n // === Action Management ===\n\n /**\n * Opens the Add Action dialog for selecting actions to link to an agent\n * \n * @param config Configuration for the action selection dialog\n * @returns Observable that emits the selected actions when dialog is closed\n */\n openAddActionDialog(config: {\n agentId: string;\n agentName: string;\n existingActionIds: string[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<MJActionEntity[]> {\n const windowSettings: WindowSettings = {\n title: `Add Actions to ${config.agentName}`,\n content: AddActionDialogComponent,\n width: 1000,\n height: 700,\n minWidth: 800,\n minHeight: 600,\n draggable: true,\n resizable: true,\n state: 'default'\n };\n\n if (config.viewContainerRef) {\n windowSettings.appendTo = config.viewContainerRef;\n }\n\n const windowRef: WindowRef = this.windowService.open(windowSettings);\n\n // Pass configuration to the dialog component\n const componentInstance = windowRef.content.instance as AddActionDialogComponent;\n componentInstance.agentId = config.agentId;\n componentInstance.agentName = config.agentName;\n componentInstance.existingActionIds = [...config.existingActionIds];\n\n return componentInstance.result.asObservable();\n }\n\n\n // === Prompt Management ===\n\n /**\n * Opens the prompt selector dialog for selecting general prompts to add to an agent\n * \n * @param config Configuration for the prompt selection dialog\n * @returns Observable that emits the selected prompts when dialog is closed\n */\n openPromptSelectorDialog(config: {\n title?: string;\n multiSelect?: boolean;\n selectedPromptIds?: string[];\n showCreateNew?: boolean;\n extraFilter?: string;\n linkedPromptIds?: string[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<PromptSelectorResult | null> {\n const selectorConfig: PromptSelectorConfig = {\n title: config.title || 'Select Prompts',\n multiSelect: config.multiSelect ?? true,\n selectedPromptIds: config.selectedPromptIds || [],\n showCreateNew: config.showCreateNew ?? true,\n extraFilter: config.extraFilter,\n linkedPromptIds: config.linkedPromptIds || []\n };\n\n const windowSettings: WindowSettings = {\n title: selectorConfig.title,\n content: PromptSelectorDialogComponent,\n width: 900,\n height: 600,\n minWidth: 600,\n minHeight: 400,\n draggable: true,\n resizable: true,\n state: 'default'\n };\n\n if (config.viewContainerRef) {\n windowSettings.appendTo = config.viewContainerRef;\n }\n\n const windowRef: WindowRef = this.windowService.open(windowSettings);\n\n // Pass configuration to the dialog component\n const componentInstance = windowRef.content.instance as PromptSelectorDialogComponent;\n componentInstance.config = selectorConfig;\n\n return componentInstance.result.asObservable();\n }\n\n /**\n * Opens the prompt selector for selecting a context compression prompt (single select)\n * \n * @param config Configuration for the context compression prompt selection\n * @returns Observable that emits the selected prompt when dialog is closed\n */\n openContextCompressionPromptSelector(config: {\n currentPromptId?: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<MJAIPromptEntityExtended | null> {\n return new Observable(observer => {\n this.openPromptSelectorDialog({\n title: 'Select Context Compression Prompt',\n multiSelect: false,\n selectedPromptIds: config.currentPromptId ? [config.currentPromptId] : [],\n showCreateNew: false,\n extraFilter: undefined, // Show all active prompts\n viewContainerRef: config.viewContainerRef\n }).subscribe(result => {\n if (result && result.selectedPrompts.length > 0) {\n observer.next(result.selectedPrompts[0]);\n } else {\n observer.next(null);\n }\n observer.complete();\n });\n });\n }\n\n // === Sub-Agent Management ===\n\n /**\n * Opens the sub-agent selector dialog for selecting agents to convert to sub-agents\n * \n * @param config Configuration for the sub-agent selection dialog\n * @returns Observable that emits the selected agents when dialog is closed\n */\n openSubAgentSelectorDialog(config: {\n title?: string;\n multiSelect?: boolean;\n selectedAgentIds?: string[];\n showCreateNew?: boolean;\n parentAgentId: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<SubAgentSelectorResult | null> {\n const selectorConfig: SubAgentSelectorConfig = {\n title: config.title || 'Add Sub-Agents',\n multiSelect: config.multiSelect ?? true,\n selectedAgentIds: config.selectedAgentIds || [],\n showCreateNew: config.showCreateNew ?? true,\n parentAgentId: config.parentAgentId\n };\n\n const windowSettings: WindowSettings = {\n title: selectorConfig.title,\n content: SubAgentSelectorDialogComponent,\n width: 1000,\n height: 700,\n minWidth: 800,\n minHeight: 600,\n draggable: true,\n resizable: true,\n state: 'default'\n };\n\n if (config.viewContainerRef) {\n windowSettings.appendTo = config.viewContainerRef;\n }\n\n const windowRef: WindowRef = this.windowService.open(windowSettings);\n\n // Pass configuration to the dialog component\n const componentInstance = windowRef.content.instance as SubAgentSelectorDialogComponent;\n componentInstance.config = selectorConfig;\n\n return componentInstance.result.asObservable();\n }\n\n // === Advanced Settings for Related Entities ===\n\n /**\n * Opens the advanced settings dialog for an AI Agent Prompt\n * \n * @param config Configuration for the agent prompt advanced settings dialog\n * @returns Observable that emits the form data when dialog is closed, or null if cancelled\n */\n openAgentPromptAdvancedSettingsDialog(config: {\n agentPrompt: MJAIAgentPromptEntity;\n allAgentPrompts: MJAIAgentPromptEntity[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<AgentPromptAdvancedSettingsFormData | null> {\n const windowSettings: WindowSettings = {\n title: `Advanced Settings - Prompt Configuration`,\n content: AgentPromptAdvancedSettingsDialogComponent,\n width: 700,\n height: 600,\n minWidth: 500,\n minHeight: 400,\n draggable: true,\n resizable: true,\n state: 'default'\n };\n\n if (config.viewContainerRef) {\n windowSettings.appendTo = config.viewContainerRef;\n }\n\n const windowRef: WindowRef = this.windowService.open(windowSettings);\n\n // Pass configuration to the dialog component\n const componentInstance = windowRef.content.instance as AgentPromptAdvancedSettingsDialogComponent;\n componentInstance.agentPrompt = config.agentPrompt;\n componentInstance.allAgentPrompts = config.allAgentPrompts;\n\n return componentInstance.result.asObservable();\n }\n\n /**\n * Opens the advanced settings dialog for a Sub-Agent\n * \n * @param config Configuration for the sub-agent advanced settings dialog\n * @returns Observable that emits the form data when dialog is closed, or null if cancelled\n */\n openSubAgentAdvancedSettingsDialog(config: {\n subAgent: MJAIAgentEntityExtended;\n allSubAgents: MJAIAgentEntityExtended[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<SubAgentAdvancedSettingsFormData | null> {\n const windowSettings: WindowSettings = {\n title: `Advanced Settings - ${config.subAgent.Name || 'Sub-Agent'}`,\n content: SubAgentAdvancedSettingsDialogComponent,\n width: 700,\n height: 600,\n minWidth: 500,\n minHeight: 400,\n draggable: true,\n resizable: true,\n state: 'default'\n };\n\n if (config.viewContainerRef) {\n windowSettings.appendTo = config.viewContainerRef;\n }\n\n const windowRef: WindowRef = this.windowService.open(windowSettings);\n\n // Pass configuration to the dialog component\n const componentInstance = windowRef.content.instance as SubAgentAdvancedSettingsDialogComponent;\n componentInstance.subAgent = config.subAgent;\n componentInstance.allSubAgents = config.allSubAgents;\n\n return componentInstance.result.asObservable();\n }\n\n // === Prompt Creation ===\n\n /**\n * Opens the create prompt dialog for creating new prompts from within the AI Agent form\n * Returns the created entities (not saved to database) for parent to add to PendingRecords\n * \n * @param config Configuration for prompt creation\n * @returns Observable that emits the created prompt and related entities when dialog is closed\n */\n openCreatePromptDialog(config: {\n title?: string;\n initialName?: string;\n initialTypeID?: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<CreatePromptResult | null> {\n const createConfig: CreatePromptConfig = {\n title: config.title || 'Create New Prompt',\n initialName: config.initialName,\n initialTypeID: config.initialTypeID\n };\n\n const windowSettings: WindowSettings = {\n title: createConfig.title,\n content: CreatePromptDialogComponent,\n width: 900,\n height: 700,\n minWidth: 700,\n minHeight: 500,\n draggable: true,\n resizable: true,\n state: 'default'\n };\n\n if (config.viewContainerRef) {\n windowSettings.appendTo = config.viewContainerRef;\n }\n\n const windowRef: WindowRef = this.windowService.open(windowSettings);\n\n // Pass configuration to the dialog component\n const componentInstance = windowRef.content.instance as CreatePromptDialogComponent;\n componentInstance.config = createConfig;\n\n return componentInstance.result.asObservable();\n }\n\n // === Sub-Agent Creation ===\n\n /**\n * Opens the create sub-agent dialog for creating new sub-agents from within the AI Agent form\n * Returns the created entities (not saved to database) for parent to add to PendingRecords\n * \n * @param config Configuration for sub-agent creation\n * @returns Observable that emits the created sub-agent and related entities when dialog is closed\n */\n openCreateSubAgentDialog(config: {\n title?: string;\n initialName?: string;\n initialTypeID?: string;\n parentAgentId: string;\n parentAgentName?: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<CreateSubAgentResult | null> {\n const createConfig: CreateSubAgentConfig = {\n title: config.title || 'Create New Sub-Agent',\n initialName: config.initialName,\n initialTypeID: config.initialTypeID,\n parentAgentId: config.parentAgentId,\n parentAgentName: config.parentAgentName\n };\n\n const windowSettings: WindowSettings = {\n title: createConfig.title,\n content: CreateSubAgentDialogComponent,\n width: 1000,\n height: 800,\n minWidth: 800,\n minHeight: 600,\n draggable: true,\n resizable: true,\n state: 'default'\n };\n\n if (config.viewContainerRef) {\n windowSettings.appendTo = config.viewContainerRef;\n }\n\n const windowRef: WindowRef = this.windowService.open(windowSettings);\n\n // Pass configuration to the dialog component\n const componentInstance = windowRef.content.instance as CreateSubAgentDialogComponent;\n componentInstance.config = createConfig;\n\n return componentInstance.result.asObservable();\n }\n\n // === Future: Agent Creation ===\n\n /**\n * Opens the agent creation dialog (to be implemented)\n * This will reuse existing components and provide a streamlined agent creation experience\n * \n * @param config Configuration for agent creation\n * @returns Observable that emits the created agent when dialog is closed\n */\n openCreateAgentDialog(config: {\n parentAgentId?: string;\n initialData?: Partial<MJAIAgentEntityExtended>;\n viewContainerRef?: ViewContainerRef;\n }): Observable<MJAIAgentEntityExtended | null> {\n // TODO: Implement agent creation dialog\n // This will reuse the same form components and advanced settings\n // but in a creation context rather than editing context\n throw new Error('Agent creation dialog not yet implemented');\n }\n\n // === Utility Methods ===\n\n /**\n * Validates agent configuration and relationships\n * Used by both creation and editing workflows\n */\n validateAgentConfiguration(agent: MJAIAgentEntityExtended): { isValid: boolean; errors: string[] } {\n const errors: string[] = [];\n\n // ParentID vs ExposeAsAction validation\n if (agent.ParentID && agent.ExposeAsAction) {\n errors.push('Agents with a parent cannot be exposed as actions');\n }\n\n // Context compression validation\n if (agent.EnableContextCompression) {\n if (!agent.ContextCompressionMessageThreshold) {\n errors.push('Context compression requires a message threshold');\n }\n if (!agent.ContextCompressionPromptID) {\n errors.push('Context compression requires a compression prompt');\n }\n if (!agent.ContextCompressionMessageRetentionCount) {\n errors.push('Context compression requires a message retention count');\n }\n }\n\n return {\n isValid: errors.length === 0,\n errors\n };\n }\n\n // === Sub-Agent Management ===\n\n /**\n * Future method for managing sub-agent relationships\n * This will handle ParentID, ExecutionOrder, and ExecutionMode\n * in the context of the parent agent's sub-agents section\n */\n openSubAgentManagementDialog(config: {\n parentAgent: MJAIAgentEntityExtended;\n subAgent?: MJAIAgentEntityExtended; // For editing existing sub-agent relationship\n viewContainerRef?: ViewContainerRef;\n }): Observable<any> {\n // TODO: Implement sub-agent management dialog\n // This will handle the hierarchy settings that were removed from Advanced Settings\n throw new Error('Sub-agent management dialog not yet implemented');\n }\n\n}"]}
1
+ {"version":3,"file":"ai-agent-management.service.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/ai-agent-management.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,eAAe,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,6BAA6B,EAA8C,MAAM,oCAAoC,CAAC;AAC/H,OAAO,EAAE,0CAA0C,EAAuC,MAAM,mDAAmD,CAAC;AACpJ,OAAO,EAAE,uCAAuC,EAAoC,MAAM,gDAAgD,CAAC;AAC3I,OAAO,EAAE,+BAA+B,EAAkD,MAAM,uCAAuC,CAAC;AACxI,OAAO,EAAE,2BAA2B,EAA0C,MAAM,kCAAkC,CAAC;AACvH,OAAO,EAAE,6BAA6B,EAA8C,MAAM,qCAAqC,CAAC;;;AAGhI;;;;;;;;;GASG;AAIH,MAAM,OAAO,wBAAwB;IAEnC,YACU,aAA8B;QAA9B,kBAAa,GAAb,aAAa,CAAiB;IACrC,CAAC;IAEJ,4BAA4B;IAE5B;;;;;OAKG;IACH,mBAAmB,CAAC,MAKnB;QACC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACxC,KAAK,EAAE,kBAAkB,MAAM,CAAC,SAAS,EAAE;YAC3C,OAAO,EAAE,wBAAwB;YACjC,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB;SAClC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAQ,CAAC,QAA+C,CAAC;QAC7F,iBAAiB,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC3C,iBAAiB,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAC/C,iBAAiB,CAAC,iBAAiB,GAAG,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACpE,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAElE,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAGD,4BAA4B;IAE5B;;;;;OAKG;IACH,wBAAwB,CAAC,MAQxB;QACC,MAAM,cAAc,GAAyB;YAC3C,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,gBAAgB;YACvC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;YACvC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,EAAE;YACjD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI;YAC3C,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,EAAE;SAC9C,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACxC,KAAK,EAAE,cAAc,CAAC,KAAK;YAC3B,OAAO,EAAE,6BAA6B;YACtC,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB;SAClC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAQ,CAAC,QAAoD,CAAC;QAClG,iBAAiB,CAAC,MAAM,GAAG,cAAc,CAAC;QAC1C,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAElE,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACH,oCAAoC,CAAC,MAGpC;QACC,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC/B,IAAI,CAAC,wBAAwB,CAAC;gBAC5B,KAAK,EAAE,mCAAmC;gBAC1C,WAAW,EAAE,KAAK;gBAClB,iBAAiB,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE;gBACzE,aAAa,EAAE,KAAK;gBACpB,WAAW,EAAE,SAAS,EAAE,0BAA0B;gBAClD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;aAC1C,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;gBACpB,IAAI,MAAM,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;gBACD,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,+BAA+B;IAE/B;;;;;OAKG;IACH,0BAA0B,CAAC,MAO1B;QACC,MAAM,cAAc,GAA2B;YAC7C,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,gBAAgB;YACvC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;YACvC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,EAAE;YAC/C,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI;YAC3C,aAAa,EAAE,MAAM,CAAC,aAAa;SACpC,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACxC,KAAK,EAAE,cAAc,CAAC,KAAK;YAC3B,OAAO,EAAE,+BAA+B;YACxC,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB;SAClC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAQ,CAAC,QAAsD,CAAC;QACpG,iBAAiB,CAAC,MAAM,GAAG,cAAc,CAAC;QAC1C,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAElE,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAED,iDAAiD;IAEjD;;;;;OAKG;IACH,qCAAqC,CAAC,MAIrC;QACC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACxC,KAAK,EAAE,0CAA0C;YACjD,OAAO,EAAE,0CAA0C;YACnD,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB;SAClC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAQ,CAAC,QAAiE,CAAC;QAC/G,iBAAiB,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACnD,iBAAiB,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAC3D,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAElE,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACH,kCAAkC,CAAC,MAIlC;QACC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACxC,KAAK,EAAE,uBAAuB,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,WAAW,EAAE;YACnE,OAAO,EAAE,uCAAuC;YAChD,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB;SAClC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAQ,CAAC,QAA8D,CAAC;QAC5G,iBAAiB,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC7C,iBAAiB,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACrD,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAElE,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAED,0BAA0B;IAE1B;;;;;;OAMG;IACH,sBAAsB,CAAC,MAKtB;QACC,MAAM,YAAY,GAAuB;YACvC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,mBAAmB;YAC1C,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;SACpC,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACxC,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,OAAO,EAAE,2BAA2B;YACpC,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB;SAClC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAQ,CAAC,QAAkD,CAAC;QAChG,iBAAiB,CAAC,MAAM,GAAG,YAAY,CAAC;QACxC,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAElE,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAED,6BAA6B;IAE7B;;;;;;OAMG;IACH,wBAAwB,CAAC,MAOxB;QACC,MAAM,YAAY,GAAyB;YACzC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,sBAAsB;YAC7C,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,eAAe,EAAE,MAAM,CAAC,eAAe;SACxC,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACxC,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,OAAO,EAAE,6BAA6B;YACtC,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,MAAM,CAAC,gBAAgB;SAClC,CAAC,CAAC;QAEH,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAQ,CAAC,QAAoD,CAAC;QAClG,iBAAiB,CAAC,MAAM,GAAG,YAAY,CAAC;QACxC,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAElE,OAAO,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACjD,CAAC;IAED,iCAAiC;IAEjC;;;;;;OAMG;IACH,qBAAqB,CAAC,MAIrB;QACC,wCAAwC;QACxC,iEAAiE;QACjE,wDAAwD;QACxD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,0BAA0B;IAE1B;;;OAGG;IACH,0BAA0B,CAAC,KAA8B;QACvD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,wCAAwC;QACxC,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QACnE,CAAC;QAED,iCAAiC;QACjC,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,kCAAkC,EAAE,CAAC;gBAC9C,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,uCAAuC,EAAE,CAAC;gBACnD,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC5B,MAAM;SACP,CAAC;IACJ,CAAC;IAED,+BAA+B;IAE/B;;;;OAIG;IACH,4BAA4B,CAAC,MAI5B;QACC,8CAA8C;QAC9C,mFAAmF;QACnF,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;yHAzWU,wBAAwB;uEAAxB,wBAAwB,WAAxB,wBAAwB,mBAFvB,MAAM;;iFAEP,wBAAwB;cAHpC,UAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB","sourcesContent":["import { Injectable, ViewContainerRef } from '@angular/core';\nimport { MJDialogService } from '@memberjunction/ng-ui-components';\nimport { Observable } from 'rxjs';\nimport { MJActionEntity, MJAIAgentPromptEntity, } from '@memberjunction/core-entities';\nimport { AddActionDialogComponent } from './add-action-dialog.component';\nimport { PromptSelectorDialogComponent, PromptSelectorConfig, PromptSelectorResult } from './prompt-selector-dialog.component';\nimport { AgentPromptAdvancedSettingsDialogComponent, AgentPromptAdvancedSettingsFormData } from './agent-prompt-advanced-settings-dialog.component';\nimport { SubAgentAdvancedSettingsDialogComponent, SubAgentAdvancedSettingsFormData } from './sub-agent-advanced-settings-dialog.component';\nimport { SubAgentSelectorDialogComponent, SubAgentSelectorConfig, SubAgentSelectorResult } from './sub-agent-selector-dialog.component';\nimport { CreatePromptDialogComponent, CreatePromptConfig, CreatePromptResult } from './create-prompt-dialog.component';\nimport { CreateSubAgentDialogComponent, CreateSubAgentConfig, CreateSubAgentResult } from './create-sub-agent-dialog.component';\nimport { MJAIAgentEntityExtended, MJAIPromptEntityExtended } from '@memberjunction/ai-core-plus';\n\n/**\n * Consolidated service for managing AI Agent operations including:\n * - Adding/removing actions\n * - Advanced settings configuration \n * - Agent creation (future)\n * - Agent editing operations\n * \n * This service centralizes all agent-related dialog and management functionality\n * to provide a consistent interface for both editing existing agents and creating new ones.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class AIAgentManagementService {\n\n constructor(\n private dialogService: MJDialogService\n ) {}\n\n // === Action Management ===\n\n /**\n * Opens the Add Action dialog for selecting actions to link to an agent\n * \n * @param config Configuration for the action selection dialog\n * @returns Observable that emits the selected actions when dialog is closed\n */\n openAddActionDialog(config: {\n agentId: string;\n agentName: string;\n existingActionIds: string[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<MJActionEntity[]> {\n const dialogRef = this.dialogService.open({\n title: `Add Actions to ${config.agentName}`,\n content: AddActionDialogComponent,\n width: 1000,\n height: 700,\n minWidth: 800,\n appendTo: config.viewContainerRef\n });\n\n // Pass configuration to the dialog component\n const componentInstance = dialogRef.Content!.instance as unknown as AddActionDialogComponent;\n componentInstance.agentId = config.agentId;\n componentInstance.agentName = config.agentName;\n componentInstance.existingActionIds = [...config.existingActionIds];\n componentInstance.DialogClose?.subscribe(() => dialogRef.Close());\n\n return componentInstance.result.asObservable();\n }\n\n\n // === Prompt Management ===\n\n /**\n * Opens the prompt selector dialog for selecting general prompts to add to an agent\n * \n * @param config Configuration for the prompt selection dialog\n * @returns Observable that emits the selected prompts when dialog is closed\n */\n openPromptSelectorDialog(config: {\n title?: string;\n multiSelect?: boolean;\n selectedPromptIds?: string[];\n showCreateNew?: boolean;\n extraFilter?: string;\n linkedPromptIds?: string[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<PromptSelectorResult | null> {\n const selectorConfig: PromptSelectorConfig = {\n title: config.title || 'Select Prompts',\n multiSelect: config.multiSelect ?? true,\n selectedPromptIds: config.selectedPromptIds || [],\n showCreateNew: config.showCreateNew ?? true,\n extraFilter: config.extraFilter,\n linkedPromptIds: config.linkedPromptIds || []\n };\n\n const dialogRef = this.dialogService.open({\n title: selectorConfig.title,\n content: PromptSelectorDialogComponent,\n width: 900,\n height: 600,\n minWidth: 600,\n appendTo: config.viewContainerRef\n });\n\n // Pass configuration to the dialog component\n const componentInstance = dialogRef.Content!.instance as unknown as PromptSelectorDialogComponent;\n componentInstance.config = selectorConfig;\n componentInstance.DialogClose?.subscribe(() => dialogRef.Close());\n\n return componentInstance.result.asObservable();\n }\n\n /**\n * Opens the prompt selector for selecting a context compression prompt (single select)\n * \n * @param config Configuration for the context compression prompt selection\n * @returns Observable that emits the selected prompt when dialog is closed\n */\n openContextCompressionPromptSelector(config: {\n currentPromptId?: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<MJAIPromptEntityExtended | null> {\n return new Observable(observer => {\n this.openPromptSelectorDialog({\n title: 'Select Context Compression Prompt',\n multiSelect: false,\n selectedPromptIds: config.currentPromptId ? [config.currentPromptId] : [],\n showCreateNew: false,\n extraFilter: undefined, // Show all active prompts\n viewContainerRef: config.viewContainerRef\n }).subscribe(result => {\n if (result && result.selectedPrompts.length > 0) {\n observer.next(result.selectedPrompts[0]);\n } else {\n observer.next(null);\n }\n observer.complete();\n });\n });\n }\n\n // === Sub-Agent Management ===\n\n /**\n * Opens the sub-agent selector dialog for selecting agents to convert to sub-agents\n * \n * @param config Configuration for the sub-agent selection dialog\n * @returns Observable that emits the selected agents when dialog is closed\n */\n openSubAgentSelectorDialog(config: {\n title?: string;\n multiSelect?: boolean;\n selectedAgentIds?: string[];\n showCreateNew?: boolean;\n parentAgentId: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<SubAgentSelectorResult | null> {\n const selectorConfig: SubAgentSelectorConfig = {\n title: config.title || 'Add Sub-Agents',\n multiSelect: config.multiSelect ?? true,\n selectedAgentIds: config.selectedAgentIds || [],\n showCreateNew: config.showCreateNew ?? true,\n parentAgentId: config.parentAgentId\n };\n\n const dialogRef = this.dialogService.open({\n title: selectorConfig.title,\n content: SubAgentSelectorDialogComponent,\n width: 1000,\n height: 700,\n minWidth: 800,\n appendTo: config.viewContainerRef\n });\n\n // Pass configuration to the dialog component\n const componentInstance = dialogRef.Content!.instance as unknown as SubAgentSelectorDialogComponent;\n componentInstance.config = selectorConfig;\n componentInstance.DialogClose?.subscribe(() => dialogRef.Close());\n\n return componentInstance.result.asObservable();\n }\n\n // === Advanced Settings for Related Entities ===\n\n /**\n * Opens the advanced settings dialog for an AI Agent Prompt\n * \n * @param config Configuration for the agent prompt advanced settings dialog\n * @returns Observable that emits the form data when dialog is closed, or null if cancelled\n */\n openAgentPromptAdvancedSettingsDialog(config: {\n agentPrompt: MJAIAgentPromptEntity;\n allAgentPrompts: MJAIAgentPromptEntity[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<AgentPromptAdvancedSettingsFormData | null> {\n const dialogRef = this.dialogService.open({\n title: `Advanced Settings - Prompt Configuration`,\n content: AgentPromptAdvancedSettingsDialogComponent,\n width: 700,\n height: 600,\n minWidth: 500,\n appendTo: config.viewContainerRef\n });\n\n // Pass configuration to the dialog component\n const componentInstance = dialogRef.Content!.instance as unknown as AgentPromptAdvancedSettingsDialogComponent;\n componentInstance.agentPrompt = config.agentPrompt;\n componentInstance.allAgentPrompts = config.allAgentPrompts;\n componentInstance.DialogClose?.subscribe(() => dialogRef.Close());\n\n return componentInstance.result.asObservable();\n }\n\n /**\n * Opens the advanced settings dialog for a Sub-Agent\n * \n * @param config Configuration for the sub-agent advanced settings dialog\n * @returns Observable that emits the form data when dialog is closed, or null if cancelled\n */\n openSubAgentAdvancedSettingsDialog(config: {\n subAgent: MJAIAgentEntityExtended;\n allSubAgents: MJAIAgentEntityExtended[];\n viewContainerRef?: ViewContainerRef;\n }): Observable<SubAgentAdvancedSettingsFormData | null> {\n const dialogRef = this.dialogService.open({\n title: `Advanced Settings - ${config.subAgent.Name || 'Sub-Agent'}`,\n content: SubAgentAdvancedSettingsDialogComponent,\n width: 700,\n height: 600,\n minWidth: 500,\n appendTo: config.viewContainerRef\n });\n\n // Pass configuration to the dialog component\n const componentInstance = dialogRef.Content!.instance as unknown as SubAgentAdvancedSettingsDialogComponent;\n componentInstance.subAgent = config.subAgent;\n componentInstance.allSubAgents = config.allSubAgents;\n componentInstance.DialogClose?.subscribe(() => dialogRef.Close());\n\n return componentInstance.result.asObservable();\n }\n\n // === Prompt Creation ===\n\n /**\n * Opens the create prompt dialog for creating new prompts from within the AI Agent form\n * Returns the created entities (not saved to database) for parent to add to PendingRecords\n * \n * @param config Configuration for prompt creation\n * @returns Observable that emits the created prompt and related entities when dialog is closed\n */\n openCreatePromptDialog(config: {\n title?: string;\n initialName?: string;\n initialTypeID?: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<CreatePromptResult | null> {\n const createConfig: CreatePromptConfig = {\n title: config.title || 'Create New Prompt',\n initialName: config.initialName,\n initialTypeID: config.initialTypeID\n };\n\n const dialogRef = this.dialogService.open({\n title: createConfig.title,\n content: CreatePromptDialogComponent,\n width: 900,\n height: 700,\n minWidth: 700,\n appendTo: config.viewContainerRef\n });\n\n // Pass configuration to the dialog component\n const componentInstance = dialogRef.Content!.instance as unknown as CreatePromptDialogComponent;\n componentInstance.config = createConfig;\n componentInstance.DialogClose?.subscribe(() => dialogRef.Close());\n\n return componentInstance.result.asObservable();\n }\n\n // === Sub-Agent Creation ===\n\n /**\n * Opens the create sub-agent dialog for creating new sub-agents from within the AI Agent form\n * Returns the created entities (not saved to database) for parent to add to PendingRecords\n * \n * @param config Configuration for sub-agent creation\n * @returns Observable that emits the created sub-agent and related entities when dialog is closed\n */\n openCreateSubAgentDialog(config: {\n title?: string;\n initialName?: string;\n initialTypeID?: string;\n parentAgentId: string;\n parentAgentName?: string;\n viewContainerRef?: ViewContainerRef;\n }): Observable<CreateSubAgentResult | null> {\n const createConfig: CreateSubAgentConfig = {\n title: config.title || 'Create New Sub-Agent',\n initialName: config.initialName,\n initialTypeID: config.initialTypeID,\n parentAgentId: config.parentAgentId,\n parentAgentName: config.parentAgentName\n };\n\n const dialogRef = this.dialogService.open({\n title: createConfig.title,\n content: CreateSubAgentDialogComponent,\n width: 1000,\n height: 800,\n minWidth: 800,\n appendTo: config.viewContainerRef\n });\n\n // Pass configuration to the dialog component\n const componentInstance = dialogRef.Content!.instance as unknown as CreateSubAgentDialogComponent;\n componentInstance.config = createConfig;\n componentInstance.DialogClose?.subscribe(() => dialogRef.Close());\n\n return componentInstance.result.asObservable();\n }\n\n // === Future: Agent Creation ===\n\n /**\n * Opens the agent creation dialog (to be implemented)\n * This will reuse existing components and provide a streamlined agent creation experience\n * \n * @param config Configuration for agent creation\n * @returns Observable that emits the created agent when dialog is closed\n */\n openCreateAgentDialog(config: {\n parentAgentId?: string;\n initialData?: Partial<MJAIAgentEntityExtended>;\n viewContainerRef?: ViewContainerRef;\n }): Observable<MJAIAgentEntityExtended | null> {\n // TODO: Implement agent creation dialog\n // This will reuse the same form components and advanced settings\n // but in a creation context rather than editing context\n throw new Error('Agent creation dialog not yet implemented');\n }\n\n // === Utility Methods ===\n\n /**\n * Validates agent configuration and relationships\n * Used by both creation and editing workflows\n */\n validateAgentConfiguration(agent: MJAIAgentEntityExtended): { isValid: boolean; errors: string[] } {\n const errors: string[] = [];\n\n // ParentID vs ExposeAsAction validation\n if (agent.ParentID && agent.ExposeAsAction) {\n errors.push('Agents with a parent cannot be exposed as actions');\n }\n\n // Context compression validation\n if (agent.EnableContextCompression) {\n if (!agent.ContextCompressionMessageThreshold) {\n errors.push('Context compression requires a message threshold');\n }\n if (!agent.ContextCompressionPromptID) {\n errors.push('Context compression requires a compression prompt');\n }\n if (!agent.ContextCompressionMessageRetentionCount) {\n errors.push('Context compression requires a message retention count');\n }\n }\n\n return {\n isValid: errors.length === 0,\n errors\n };\n }\n\n // === Sub-Agent Management ===\n\n /**\n * Future method for managing sub-agent relationships\n * This will handle ParentID, ExecutionOrder, and ExecutionMode\n * in the context of the parent agent's sub-agents section\n */\n openSubAgentManagementDialog(config: {\n parentAgent: MJAIAgentEntityExtended;\n subAgent?: MJAIAgentEntityExtended; // For editing existing sub-agent relationship\n viewContainerRef?: ViewContainerRef;\n }): Observable<any> {\n // TODO: Implement sub-agent management dialog\n // This will handle the hierarchy settings that were removed from Advanced Settings\n throw new Error('Sub-agent management dialog not yet implemented');\n }\n\n}"]}
@@ -1,6 +1,5 @@
1
- import { OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';
1
+ import { OnInit, OnDestroy, ChangeDetectorRef, EventEmitter } from '@angular/core';
2
2
  import { FormGroup } from '@angular/forms';
3
- import { WindowRef } from '@progress/kendo-angular-dialog';
4
3
  import { Subject, BehaviorSubject } from 'rxjs';
5
4
  import { MJTemplateEntity, MJAIPromptTypeEntity, MJTemplateContentEntity } from '@memberjunction/core-entities';
6
5
  import { MJAIPromptEntityExtended } from "@memberjunction/ai-core-plus";
@@ -29,7 +28,6 @@ export interface CreatePromptResult {
29
28
  * This ensures atomicity with the parent form's save operation.
30
29
  */
31
30
  export declare class CreatePromptDialogComponent implements OnInit, OnDestroy {
32
- private dialogRef;
33
31
  private cdr;
34
32
  private aiPromptManagementService;
35
33
  config: CreatePromptConfig;
@@ -46,7 +44,8 @@ export declare class CreatePromptDialogComponent implements OnInit, OnDestroy {
46
44
  showTemplateEditor: boolean;
47
45
  templateEditorConfig: TemplateEditorConfig;
48
46
  templateMode: 'new' | 'existing';
49
- constructor(dialogRef: WindowRef, cdr: ChangeDetectorRef, aiPromptManagementService: AIPromptManagementService);
47
+ DialogClose: EventEmitter<void>;
48
+ constructor(cdr: ChangeDetectorRef, aiPromptManagementService: AIPromptManagementService);
50
49
  ngOnInit(): void;
51
50
  ngOnDestroy(): void;
52
51
  private createForm;
@@ -63,6 +62,6 @@ export declare class CreatePromptDialogComponent implements OnInit, OnDestroy {
63
62
  private openTemplateSelector;
64
63
  get currentTemplate(): MJTemplateEntity | null;
65
64
  static ɵfac: i0.ɵɵFactoryDeclaration<CreatePromptDialogComponent, never>;
66
- static ɵcmp: i0.ɵɵComponentDeclaration<CreatePromptDialogComponent, "mj-create-prompt-dialog", never, {}, {}, never, never, false, never>;
65
+ static ɵcmp: i0.ɵɵComponentDeclaration<CreatePromptDialogComponent, "mj-create-prompt-dialog", never, {}, { "DialogClose": "DialogClose"; }, never, never, false, never>;
67
66
  }
68
67
  //# sourceMappingURL=create-prompt-dialog.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-prompt-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/create-prompt-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAa,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAe,SAAS,EAAc,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,eAAe,EAAa,MAAM,MAAM,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAChH,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;;AAGtF,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,MAAM,EAAE,wBAAwB,CAAC;IACjC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,uBAAuB,EAAE,CAAC;CAC9C;AAED;;;;GAIG;AACH,qBAMa,2BAA4B,YAAW,MAAM,EAAE,SAAS;IAmCjE,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,yBAAyB;IAlCnC,MAAM,EAAE,kBAAkB,CAAM;IAGhC,OAAO,CAAC,QAAQ,CAAuB;IAChC,MAAM,qCAA4C;IAGzD,UAAU,EAAE,SAAS,CAAC;IACtB,UAAU,2BAAuC;IACjD,SAAS,2BAAuC;IAGhD,qBAAqB,0CAAmD;IAGxE,YAAY,EAAE,wBAAwB,GAAG,IAAI,CAAQ;IACrD,cAAc,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAC/C,gBAAgB,EAAE,uBAAuB,EAAE,CAAM;IAGpB,cAAc,EAAE,GAAG,CAAC;IACjD,kBAAkB,UAAS;IAC3B,oBAAoB,EAAE,oBAAoB,CAIxC;IAGF,YAAY,EAAE,KAAK,GAAG,UAAU,CAAS;gBAG/B,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,iBAAiB,EACtB,yBAAyB,EAAE,yBAAyB;IAK9D,QAAQ;IAKR,WAAW;IAKX,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,iBAAiB;YAUX,eAAe;IAgDhB,wBAAwB,CAAC,IAAI,EAAE,MAAM;YAWpC,iBAAiB;IA6BxB,uBAAuB,CAAC,QAAQ,EAAE,uBAAuB,EAAE;IAIrD,IAAI;IAyDV,MAAM;IAKb;;OAEG;YACW,oBAAoB;IA8ClC,IAAW,eAAe,IAAI,gBAAgB,GAAG,IAAI,CAEpD;yCAtRU,2BAA2B;2CAA3B,2BAA2B;CAuRvC"}
1
+ {"version":3,"file":"create-prompt-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/create-prompt-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAqB,YAAY,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAe,SAAS,EAAc,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAa,MAAM,MAAM,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAChH,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;;AAGtF,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,MAAM,EAAE,wBAAwB,CAAC;IACjC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,uBAAuB,EAAE,CAAC;CAC9C;AAED;;;;GAIG;AACH,qBAMa,2BAA4B,YAAW,MAAM,EAAE,SAAS;IAqCjE,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,yBAAyB;IAnCnC,MAAM,EAAE,kBAAkB,CAAM;IAGhC,OAAO,CAAC,QAAQ,CAAuB;IAChC,MAAM,qCAA4C;IAGzD,UAAU,EAAE,SAAS,CAAC;IACtB,UAAU,2BAAuC;IACjD,SAAS,2BAAuC;IAGhD,qBAAqB,0CAAmD;IAGxE,YAAY,EAAE,wBAAwB,GAAG,IAAI,CAAQ;IACrD,cAAc,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IAC/C,gBAAgB,EAAE,uBAAuB,EAAE,CAAM;IAGpB,cAAc,EAAE,GAAG,CAAC;IACjD,kBAAkB,UAAS;IAC3B,oBAAoB,EAAE,oBAAoB,CAIxC;IAGF,YAAY,EAAE,KAAK,GAAG,UAAU,CAAS;IAE/B,WAAW,qBAA4B;gBAGvC,GAAG,EAAE,iBAAiB,EACtB,yBAAyB,EAAE,yBAAyB;IAK9D,QAAQ;IAKR,WAAW;IAKX,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,iBAAiB;YAUX,eAAe;IAgDhB,wBAAwB,CAAC,IAAI,EAAE,MAAM;YAWpC,iBAAiB;IA6BxB,uBAAuB,CAAC,QAAQ,EAAE,uBAAuB,EAAE;IAIrD,IAAI;IAyDV,MAAM;IAKb;;OAEG;YACW,oBAAoB;IA8ClC,IAAW,eAAe,IAAI,gBAAgB,GAAG,IAAI,CAEpD;yCAvRU,2BAA2B;2CAA3B,2BAA2B;CAwRvC"}