@memberjunction/ng-core-entity-forms 6.2.0-edge.0 → 6.2.0-edge.2
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.
- package/dist/lib/custom/AIAgentCategories/ai-agent-category-overview.panel.d.ts +1 -1
- package/dist/lib/custom/AIAgentCategories/ai-agent-category-overview.panel.js +2 -2
- package/dist/lib/custom/AIAgentCategories/ai-agent-category-overview.panel.js.map +1 -1
- package/dist/lib/custom/AIAgentSessions/ai-agent-session-form.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts +90 -16
- package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js +218 -70
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/agent-form-tabs.d.ts +1 -0
- package/dist/lib/custom/AIAgents/agent-form-tabs.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/agent-form-tabs.js +2 -0
- package/dist/lib/custom/AIAgents/agent-form-tabs.js.map +1 -1
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts +80 -16
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js +146 -46
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts +329 -27
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js +1322 -783
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts +76 -0
- package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-management.service.js +77 -33
- package/dist/lib/custom/AIAgents/ai-agent-management.service.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +69 -15
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js +182 -74
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts +105 -25
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +272 -112
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts +32 -6
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +71 -19
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts +10 -0
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.js +27 -7
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.js.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +65 -15
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +152 -52
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts +81 -15
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js +145 -45
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +71 -17
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +175 -67
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts +173 -27
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +385 -93
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.d.ts +64 -4
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js +129 -29
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts +260 -27
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +694 -252
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts +10 -0
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js +17 -9
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js.map +1 -1
- package/dist/lib/custom/AIPrompts/pending-records.d.ts +11 -0
- package/dist/lib/custom/AIPrompts/pending-records.d.ts.map +1 -0
- package/dist/lib/custom/AIPrompts/pending-records.js +21 -0
- package/dist/lib/custom/AIPrompts/pending-records.js.map +1 -0
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts +74 -16
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js +174 -58
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts +108 -14
- package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Actions/action-execution-log-form.component.js +258 -70
- package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.d.ts +198 -14
- package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.js +387 -107
- package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
- package/dist/lib/custom/BridgeProviders/bridge-provider-features.d.ts +12 -6
- package/dist/lib/custom/BridgeProviders/bridge-provider-features.d.ts.map +1 -1
- package/dist/lib/custom/BridgeProviders/bridge-provider-features.js +41 -29
- package/dist/lib/custom/BridgeProviders/bridge-provider-features.js.map +1 -1
- package/dist/lib/custom/BridgeProviders/bridge-provider-form.component.js +14 -14
- package/dist/lib/custom/BridgeProviders/bridge-provider-form.component.js.map +1 -1
- package/dist/lib/custom/Companies/company-overview.panel.d.ts +1 -1
- package/dist/lib/custom/Companies/company-overview.panel.js +2 -2
- package/dist/lib/custom/Companies/company-overview.panel.js.map +1 -1
- package/dist/lib/custom/Conversations/conversation-overview.panel.d.ts +1 -1
- package/dist/lib/custom/Conversations/conversation-overview.panel.js +2 -2
- package/dist/lib/custom/Conversations/conversation-overview.panel.js.map +1 -1
- package/dist/lib/custom/Employees/employee-overview.panel.d.ts +1 -1
- package/dist/lib/custom/Employees/employee-overview.panel.js +2 -2
- package/dist/lib/custom/Employees/employee-overview.panel.js.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.d.ts +217 -29
- package/dist/lib/custom/Entities/entity-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.js +734 -285
- package/dist/lib/custom/Entities/entity-form.component.js.map +1 -1
- package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts +5 -1
- package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts.map +1 -1
- package/dist/lib/custom/EntityActions/entityaction.form.component.js +10 -2
- package/dist/lib/custom/EntityActions/entityaction.form.component.js.map +1 -1
- package/dist/lib/custom/Files/file-form.component.d.ts +1 -1
- package/dist/lib/custom/Files/file-form.component.js +2 -2
- package/dist/lib/custom/Files/file-form.component.js.map +1 -1
- package/dist/lib/custom/Lists/list-form.component.d.ts +300 -36
- package/dist/lib/custom/Lists/list-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Lists/list-form.component.js +664 -208
- package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
- package/dist/lib/custom/MLModels/ml-model-view-models.d.ts +31 -0
- package/dist/lib/custom/MLModels/ml-model-view-models.d.ts.map +1 -1
- package/dist/lib/custom/MLModels/ml-model-view-models.js +52 -16
- package/dist/lib/custom/MLModels/ml-model-view-models.js.map +1 -1
- package/dist/lib/custom/MLModels/ps-model-detail.component.d.ts +107 -10
- package/dist/lib/custom/MLModels/ps-model-detail.component.d.ts.map +1 -1
- package/dist/lib/custom/MLModels/ps-model-detail.component.js +291 -101
- package/dist/lib/custom/MLModels/ps-model-detail.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-form.component.d.ts +201 -26
- package/dist/lib/custom/Queries/query-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Queries/query-form.component.js +429 -109
- package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.d.ts +107 -14
- package/dist/lib/custom/Queries/query-run-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.js +249 -79
- package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
- package/dist/lib/custom/RecordProcesses/record-process-form.component.d.ts +129 -4
- package/dist/lib/custom/RecordProcesses/record-process-form.component.d.ts.map +1 -1
- package/dist/lib/custom/RecordProcesses/record-process-form.component.js +904 -90
- package/dist/lib/custom/RecordProcesses/record-process-form.component.js.map +1 -1
- package/dist/lib/custom/Rubrics/evaluation-form.component.d.ts +37 -0
- package/dist/lib/custom/Rubrics/evaluation-form.component.d.ts.map +1 -0
- package/dist/lib/custom/Rubrics/evaluation-form.component.js +399 -0
- package/dist/lib/custom/Rubrics/evaluation-form.component.js.map +1 -0
- package/dist/lib/custom/Rubrics/record-forms.component.d.ts +69 -0
- package/dist/lib/custom/Rubrics/record-forms.component.d.ts.map +1 -0
- package/dist/lib/custom/Rubrics/record-forms.component.js +587 -0
- package/dist/lib/custom/Rubrics/record-forms.component.js.map +1 -0
- package/dist/lib/custom/Rubrics/rubric-form.component.d.ts +67 -0
- package/dist/lib/custom/Rubrics/rubric-form.component.d.ts.map +1 -0
- package/dist/lib/custom/Rubrics/rubric-form.component.js +534 -0
- package/dist/lib/custom/Rubrics/rubric-form.component.js.map +1 -0
- package/dist/lib/custom/Rubrics/rubric-form.panels.d.ts +25 -0
- package/dist/lib/custom/Rubrics/rubric-form.panels.d.ts.map +1 -0
- package/dist/lib/custom/Rubrics/rubric-form.panels.js +299 -0
- package/dist/lib/custom/Rubrics/rubric-form.panels.js.map +1 -0
- package/dist/lib/custom/Rubrics/scale-form.component.d.ts +31 -0
- package/dist/lib/custom/Rubrics/scale-form.component.d.ts.map +1 -0
- package/dist/lib/custom/Rubrics/scale-form.component.js +395 -0
- package/dist/lib/custom/Rubrics/scale-form.component.js.map +1 -0
- package/dist/lib/custom/SearchScopes/searchscope-form.component.d.ts +1 -1
- package/dist/lib/custom/SearchScopes/searchscope-form.component.js +4 -4
- package/dist/lib/custom/SearchScopes/searchscope-form.component.js.map +1 -1
- package/dist/lib/custom/SessionBridges/session-bridge-form.component.js.map +1 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.d.ts +77 -13
- package/dist/lib/custom/Templates/template-param-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.js +196 -78
- package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
- package/dist/lib/custom/Templates/template-params-grid.component.d.ts +49 -7
- package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/template-params-grid.component.js +132 -44
- package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
- package/dist/lib/custom/Templates/templates-form.component.d.ts +153 -19
- package/dist/lib/custom/Templates/templates-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/templates-form.component.js +434 -217
- package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/entity-link-pill.component.d.ts +24 -4
- package/dist/lib/custom/Tests/entity-link-pill.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/entity-link-pill.component.js +64 -20
- package/dist/lib/custom/Tests/entity-link-pill.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.d.ts +223 -27
- package/dist/lib/custom/Tests/test-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.js +951 -530
- package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-checks.d.ts +2 -0
- package/dist/lib/custom/Tests/test-run-checks.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-run-checks.js +5 -1
- package/dist/lib/custom/Tests/test-run-checks.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts +2 -0
- package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-run-feedback-form.component.js +5 -1
- package/dist/lib/custom/Tests/test-run-feedback-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-form.component.d.ts +146 -18
- package/dist/lib/custom/Tests/test-run-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-run-form.component.js +362 -106
- package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts +395 -47
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.js +1719 -1007
- package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts +214 -26
- package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-suite-run-form.component.js +535 -159
- package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
- package/dist/lib/custom/Users/user-overview.panel.d.ts +1 -1
- package/dist/lib/custom/Users/user-overview.panel.js +3 -3
- package/dist/lib/custom/Users/user-overview.panel.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.d.ts +208 -29
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +446 -138
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.d.ts +6 -0
- package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.js +16 -4
- package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts +50 -6
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js +84 -12
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.d.ts +89 -5
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js +216 -70
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.d.ts +62 -3
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.js +140 -42
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts +81 -10
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +165 -37
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts +140 -15
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +326 -100
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.d.ts +101 -15
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.js +281 -97
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.d.ts +43 -25
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.js +100 -64
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.d.ts +14 -2
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.js +71 -53
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.d.ts +14 -2
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.js +70 -52
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.d.ts +8 -0
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.js +22 -6
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.d.ts +24 -2
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.js +91 -59
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.d.ts +10 -2
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.js +33 -17
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.d.ts +2 -0
- package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.js +34 -30
- package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.d.ts +14 -2
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.js +69 -51
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.js.map +1 -1
- package/dist/lib/custom/custom-forms.module.d.ts +56 -48
- package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
- package/dist/lib/custom/custom-forms.module.js +60 -0
- package/dist/lib/custom/custom-forms.module.js.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts +38 -12
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.js +103 -51
- package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js +61 -43
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentRubric/mjaiagentrubric.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAIAgentRubric/mjaiagentrubric.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAIAgentRubric/mjaiagentrubric.form.component.js +74 -0
- package/dist/lib/generated/Entities/MJAIAgentRubric/mjaiagentrubric.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAIAgentRun/mjaiagentrun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentRun/mjaiagentrun.form.component.js +37 -19
- package/dist/lib/generated/Entities/MJAIAgentRun/mjaiagentrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js +78 -52
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIVendor/mjaivendor.form.component.js +76 -74
- package/dist/lib/generated/Entities/MJAIVendor/mjaivendor.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js +156 -84
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJFeaturePipelineType/mjfeaturepipelinetype.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJFeaturePipelineType/mjfeaturepipelinetype.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJFeaturePipelineType/mjfeaturepipelinetype.form.component.js +62 -0
- package/dist/lib/generated/Entities/MJFeaturePipelineType/mjfeaturepipelinetype.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJProcessRun/mjprocessrun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJProcessRun/mjprocessrun.form.component.js +24 -6
- package/dist/lib/generated/Entities/MJProcessRun/mjprocessrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJProject/mjproject.form.component.js +27 -25
- package/dist/lib/generated/Entities/MJProject/mjproject.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJRecordChange/mjrecordchange.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJRecordChange/mjrecordchange.form.component.js +24 -16
- package/dist/lib/generated/Entities/MJRecordChange/mjrecordchange.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJRecordCloneLog/mjrecordclonelog.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRecordCloneLog/mjrecordclonelog.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRecordCloneLog/mjrecordclonelog.form.component.js +107 -0
- package/dist/lib/generated/Entities/MJRecordCloneLog/mjrecordclonelog.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRecordCloneLogItem/mjrecordclonelogitem.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRecordCloneLogItem/mjrecordclonelogitem.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRecordCloneLogItem/mjrecordclonelogitem.form.component.js +74 -0
- package/dist/lib/generated/Entities/MJRecordCloneLogItem/mjrecordclonelogitem.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubric/mjrubric.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubric/mjrubric.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubric/mjrubric.form.component.js +135 -0
- package/dist/lib/generated/Entities/MJRubric/mjrubric.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricBand/mjrubricband.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricBand/mjrubricband.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricBand/mjrubricband.form.component.js +87 -0
- package/dist/lib/generated/Entities/MJRubricBand/mjrubricband.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricCategory/mjrubriccategory.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricCategory/mjrubriccategory.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricCategory/mjrubriccategory.form.component.js +107 -0
- package/dist/lib/generated/Entities/MJRubricCategory/mjrubriccategory.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricCriterion/mjrubriccriterion.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricCriterion/mjrubriccriterion.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricCriterion/mjrubriccriterion.form.component.js +155 -0
- package/dist/lib/generated/Entities/MJRubricCriterion/mjrubriccriterion.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricCriterionLevel/mjrubriccriterionlevel.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricCriterionLevel/mjrubriccriterionlevel.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricCriterionLevel/mjrubriccriterionlevel.form.component.js +62 -0
- package/dist/lib/generated/Entities/MJRubricCriterionLevel/mjrubriccriterionlevel.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricEvaluation/mjrubricevaluation.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricEvaluation/mjrubricevaluation.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricEvaluation/mjrubricevaluation.form.component.js +183 -0
- package/dist/lib/generated/Entities/MJRubricEvaluation/mjrubricevaluation.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricEvaluationScore/mjrubricevaluationscore.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricEvaluationScore/mjrubricevaluationscore.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricEvaluationScore/mjrubricevaluationscore.form.component.js +120 -0
- package/dist/lib/generated/Entities/MJRubricEvaluationScore/mjrubricevaluationscore.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricScale/mjrubricscale.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricScale/mjrubricscale.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricScale/mjrubricscale.form.component.js +107 -0
- package/dist/lib/generated/Entities/MJRubricScale/mjrubricscale.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricScaleLevel/mjrubricscalelevel.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricScaleLevel/mjrubricscalelevel.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricScaleLevel/mjrubricscalelevel.form.component.js +103 -0
- package/dist/lib/generated/Entities/MJRubricScaleLevel/mjrubricscalelevel.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJRubricVersion/mjrubricversion.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJRubricVersion/mjrubricversion.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJRubricVersion/mjrubricversion.form.component.js +171 -0
- package/dist/lib/generated/Entities/MJRubricVersion/mjrubricversion.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJTest/mjtest.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJTest/mjtest.form.component.js +24 -16
- package/dist/lib/generated/Entities/MJTest/mjtest.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJTestSuite/mjtestsuite.form.component.js +27 -25
- package/dist/lib/generated/Entities/MJTestSuite/mjtestsuite.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJTestSuiteRun/mjtestsuiterun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJTestSuiteRun/mjtestsuiterun.form.component.js +19 -11
- package/dist/lib/generated/Entities/MJTestSuiteRun/mjtestsuiterun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js +209 -119
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js.map +1 -1
- package/dist/lib/generated/generated-forms.module.d.ts +436 -422
- package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
- package/dist/lib/generated/generated-forms.module.js +44 -2
- package/dist/lib/generated/generated-forms.module.js.map +1 -1
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.d.ts +5 -1
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.d.ts.map +1 -1
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.js +11 -3
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.js.map +1 -1
- package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.d.ts +2 -0
- package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.d.ts.map +1 -1
- package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.js +16 -12
- package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.js.map +1 -1
- package/dist/lib/panels/content-sources/website-crawler-settings.panel.d.ts +1 -1
- package/dist/lib/panels/content-sources/website-crawler-settings.panel.js +2 -2
- package/dist/lib/panels/content-sources/website-crawler-settings.panel.js.map +1 -1
- package/dist/lib/panels/model-predictions/model-prediction.logic.d.ts +45 -19
- package/dist/lib/panels/model-predictions/model-prediction.logic.d.ts.map +1 -1
- package/dist/lib/panels/model-predictions/model-prediction.logic.js +95 -43
- package/dist/lib/panels/model-predictions/model-prediction.logic.js.map +1 -1
- package/dist/lib/panels/model-predictions/model-prediction.panel.d.ts +20 -16
- package/dist/lib/panels/model-predictions/model-prediction.panel.d.ts.map +1 -1
- package/dist/lib/panels/model-predictions/model-prediction.panel.js +73 -65
- package/dist/lib/panels/model-predictions/model-prediction.panel.js.map +1 -1
- package/dist/lib/panels/record-clone/entity-clone-config-editor.component.d.ts +116 -0
- package/dist/lib/panels/record-clone/entity-clone-config-editor.component.d.ts.map +1 -0
- package/dist/lib/panels/record-clone/entity-clone-config-editor.component.js +820 -0
- package/dist/lib/panels/record-clone/entity-clone-config-editor.component.js.map +1 -0
- package/dist/lib/shared/components/template-editor.component.d.ts +158 -15
- package/dist/lib/shared/components/template-editor.component.d.ts.map +1 -1
- package/dist/lib/shared/components/template-editor.component.js +389 -127
- package/dist/lib/shared/components/template-editor.component.js.map +1 -1
- package/dist/public-api.d.ts +5 -0
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +5 -0
- package/dist/public-api.js.map +1 -1
- package/package.json +47 -42
|
@@ -6,11 +6,11 @@ import { MJAIAgentEntityExtended } from '@memberjunction/ai-core-plus';
|
|
|
6
6
|
import { BaseAngularComponent } from '@memberjunction/ng-base-types';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export interface SubAgentAdvancedSettingsFormData {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
ExecutionOrder: number;
|
|
10
|
+
ExecutionMode: 'Sequential' | 'Parallel';
|
|
11
|
+
Status: 'Active' | 'Disabled' | 'Pending';
|
|
12
|
+
TypeID: string | null;
|
|
13
|
+
ExposeAsAction: boolean;
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
16
|
* Advanced Settings dialog for Sub-Agents.
|
|
@@ -19,25 +19,81 @@ export interface SubAgentAdvancedSettingsFormData {
|
|
|
19
19
|
export declare class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponent implements OnInit, OnDestroy {
|
|
20
20
|
private fb;
|
|
21
21
|
private cdr;
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
SubAgent: MJAIAgentEntityExtended;
|
|
23
|
+
/** @deprecated Use {@link SubAgent}. */
|
|
24
|
+
get subAgent(): MJAIAgentEntityExtended;
|
|
25
|
+
/** @deprecated Use {@link SubAgent}. */
|
|
26
|
+
set subAgent(value: MJAIAgentEntityExtended);
|
|
27
|
+
AllSubAgents: MJAIAgentEntityExtended[];
|
|
28
|
+
/** @deprecated Use {@link AllSubAgents}. */
|
|
29
|
+
get allSubAgents(): MJAIAgentEntityExtended[];
|
|
30
|
+
/** @deprecated Use {@link AllSubAgents}. */
|
|
31
|
+
set allSubAgents(value: MJAIAgentEntityExtended[]);
|
|
24
32
|
private destroy$;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
33
|
+
Result: Subject<SubAgentAdvancedSettingsFormData | null>;
|
|
34
|
+
/** @deprecated Use {@link Result}. */
|
|
35
|
+
get result(): Subject<SubAgentAdvancedSettingsFormData | null>;
|
|
36
|
+
/** @deprecated Use {@link Result}. */
|
|
37
|
+
set result(value: Subject<SubAgentAdvancedSettingsFormData | null>);
|
|
38
|
+
AdvancedForm: FormGroup;
|
|
39
|
+
/** @deprecated Use {@link AdvancedForm}. */
|
|
40
|
+
get advancedForm(): FormGroup;
|
|
41
|
+
/** @deprecated Use {@link AdvancedForm}. */
|
|
42
|
+
set advancedForm(value: FormGroup);
|
|
43
|
+
IsLoading$: BehaviorSubject<boolean>;
|
|
44
|
+
/** @deprecated Use {@link IsLoading$}. */
|
|
45
|
+
get isLoading$(): BehaviorSubject<boolean>;
|
|
46
|
+
/** @deprecated Use {@link IsLoading$}. */
|
|
47
|
+
set isLoading$(value: BehaviorSubject<boolean>);
|
|
48
|
+
IsSaving$: BehaviorSubject<boolean>;
|
|
49
|
+
/** @deprecated Use {@link IsSaving$}. */
|
|
50
|
+
get isSaving$(): BehaviorSubject<boolean>;
|
|
51
|
+
/** @deprecated Use {@link IsSaving$}. */
|
|
52
|
+
set isSaving$(value: BehaviorSubject<boolean>);
|
|
53
|
+
AgentTypes$: BehaviorSubject<MJAIAgentTypeEntity[]>;
|
|
54
|
+
/** @deprecated Use {@link AgentTypes$}. */
|
|
55
|
+
get agentTypes$(): BehaviorSubject<MJAIAgentTypeEntity[]>;
|
|
56
|
+
/** @deprecated Use {@link AgentTypes$}. */
|
|
57
|
+
set agentTypes$(value: BehaviorSubject<MJAIAgentTypeEntity[]>);
|
|
58
|
+
ExecutionModeOptions: {
|
|
31
59
|
text: string;
|
|
32
60
|
value: string;
|
|
33
61
|
description: string;
|
|
34
62
|
icon: string;
|
|
35
63
|
}[];
|
|
36
|
-
|
|
64
|
+
/** @deprecated Use {@link ExecutionModeOptions}. */
|
|
65
|
+
get executionModeOptions(): {
|
|
66
|
+
text: string;
|
|
67
|
+
value: string;
|
|
68
|
+
description: string;
|
|
69
|
+
icon: string;
|
|
70
|
+
}[];
|
|
71
|
+
/** @deprecated Use {@link ExecutionModeOptions}. */
|
|
72
|
+
set executionModeOptions(value: {
|
|
73
|
+
text: string;
|
|
74
|
+
value: string;
|
|
75
|
+
description: string;
|
|
76
|
+
icon: string;
|
|
77
|
+
}[]);
|
|
78
|
+
StatusOptions: {
|
|
37
79
|
text: string;
|
|
38
80
|
value: string;
|
|
39
81
|
}[];
|
|
40
|
-
|
|
82
|
+
/** @deprecated Use {@link StatusOptions}. */
|
|
83
|
+
get statusOptions(): {
|
|
84
|
+
text: string;
|
|
85
|
+
value: string;
|
|
86
|
+
}[];
|
|
87
|
+
/** @deprecated Use {@link StatusOptions}. */
|
|
88
|
+
set statusOptions(value: {
|
|
89
|
+
text: string;
|
|
90
|
+
value: string;
|
|
91
|
+
}[]);
|
|
92
|
+
ExecutionOrderError: string | null;
|
|
93
|
+
/** @deprecated Use {@link ExecutionOrderError}. */
|
|
94
|
+
get executionOrderError(): string | null;
|
|
95
|
+
/** @deprecated Use {@link ExecutionOrderError}. */
|
|
96
|
+
set executionOrderError(value: string | null);
|
|
41
97
|
DialogClose: EventEmitter<void>;
|
|
42
98
|
constructor(fb: FormBuilder, cdr: ChangeDetectorRef);
|
|
43
99
|
ngOnInit(): void;
|
|
@@ -46,10 +102,20 @@ export declare class SubAgentAdvancedSettingsDialogComponent extends BaseAngular
|
|
|
46
102
|
private setupValidationLogic;
|
|
47
103
|
private validateExecutionOrder;
|
|
48
104
|
private loadDropdownData;
|
|
105
|
+
IsFieldInvalid(fieldName: string): boolean;
|
|
106
|
+
/** @deprecated Use {@link IsFieldInvalid}. */
|
|
49
107
|
isFieldInvalid(fieldName: string): boolean;
|
|
108
|
+
GetFieldError(fieldName: string): string;
|
|
109
|
+
/** @deprecated Use {@link GetFieldError}. */
|
|
50
110
|
getFieldError(fieldName: string): string;
|
|
111
|
+
HasExecutionOrderError(): boolean;
|
|
112
|
+
/** @deprecated Use {@link HasExecutionOrderError}. */
|
|
51
113
|
hasExecutionOrderError(): boolean;
|
|
114
|
+
GetExecutionModeIcon(mode: string): string;
|
|
115
|
+
/** @deprecated Use {@link GetExecutionModeIcon}. */
|
|
52
116
|
getExecutionModeIcon(mode: string): string;
|
|
117
|
+
GetExecutionModeDescription(mode: string): string;
|
|
118
|
+
/** @deprecated Use {@link GetExecutionModeDescription}. */
|
|
53
119
|
getExecutionModeDescription(mode: string): string;
|
|
54
120
|
cancel(): void;
|
|
55
121
|
save(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sub-agent-advanced-settings-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAU,YAAY,EAAE,MAAM,eAAe,CAAC;AACtG,OAAO,EAAE,SAAS,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAa,MAAM,MAAM,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAGvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;;AACrE,MAAM,WAAW,gCAAgC;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,YAAY,GAAG,UAAU,CAAC;IACzC,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1C,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,qBAMa,uCAAwC,SAAQ,oBAAqB,YAAW,MAAM,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"sub-agent-advanced-settings-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.ts"],"names":[],"mappings":"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"}
|
|
@@ -147,20 +147,100 @@ function SubAgentAdvancedSettingsDialogComponent_Conditional_13_Template(rf, ctx
|
|
|
147
147
|
* Manages execution order, execution mode, and other advanced sub-agent configurations.
|
|
148
148
|
*/
|
|
149
149
|
export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponent {
|
|
150
|
+
/** @deprecated Use {@link SubAgent}. */
|
|
151
|
+
get subAgent() {
|
|
152
|
+
return this.SubAgent;
|
|
153
|
+
}
|
|
154
|
+
/** @deprecated Use {@link SubAgent}. */
|
|
155
|
+
set subAgent(value) {
|
|
156
|
+
this.SubAgent = value;
|
|
157
|
+
}
|
|
158
|
+
/** @deprecated Use {@link AllSubAgents}. */
|
|
159
|
+
get allSubAgents() {
|
|
160
|
+
return this.AllSubAgents;
|
|
161
|
+
}
|
|
162
|
+
/** @deprecated Use {@link AllSubAgents}. */
|
|
163
|
+
set allSubAgents(value) {
|
|
164
|
+
this.AllSubAgents = value;
|
|
165
|
+
} // For execution order validation
|
|
166
|
+
/** @deprecated Use {@link Result}. */
|
|
167
|
+
get result() {
|
|
168
|
+
return this.Result;
|
|
169
|
+
}
|
|
170
|
+
/** @deprecated Use {@link Result}. */
|
|
171
|
+
set result(value) {
|
|
172
|
+
this.Result = value;
|
|
173
|
+
}
|
|
174
|
+
/** @deprecated Use {@link AdvancedForm}. */
|
|
175
|
+
get advancedForm() {
|
|
176
|
+
return this.AdvancedForm;
|
|
177
|
+
}
|
|
178
|
+
/** @deprecated Use {@link AdvancedForm}. */
|
|
179
|
+
set advancedForm(value) {
|
|
180
|
+
this.AdvancedForm = value;
|
|
181
|
+
}
|
|
182
|
+
/** @deprecated Use {@link IsLoading$}. */
|
|
183
|
+
get isLoading$() {
|
|
184
|
+
return this.IsLoading$;
|
|
185
|
+
}
|
|
186
|
+
/** @deprecated Use {@link IsLoading$}. */
|
|
187
|
+
set isLoading$(value) {
|
|
188
|
+
this.IsLoading$ = value;
|
|
189
|
+
}
|
|
190
|
+
/** @deprecated Use {@link IsSaving$}. */
|
|
191
|
+
get isSaving$() {
|
|
192
|
+
return this.IsSaving$;
|
|
193
|
+
}
|
|
194
|
+
/** @deprecated Use {@link IsSaving$}. */
|
|
195
|
+
set isSaving$(value) {
|
|
196
|
+
this.IsSaving$ = value;
|
|
197
|
+
}
|
|
198
|
+
/** @deprecated Use {@link AgentTypes$}. */
|
|
199
|
+
get agentTypes$() {
|
|
200
|
+
return this.AgentTypes$;
|
|
201
|
+
}
|
|
202
|
+
/** @deprecated Use {@link AgentTypes$}. */
|
|
203
|
+
set agentTypes$(value) {
|
|
204
|
+
this.AgentTypes$ = value;
|
|
205
|
+
}
|
|
206
|
+
/** @deprecated Use {@link ExecutionModeOptions}. */
|
|
207
|
+
get executionModeOptions() {
|
|
208
|
+
return this.ExecutionModeOptions;
|
|
209
|
+
}
|
|
210
|
+
/** @deprecated Use {@link ExecutionModeOptions}. */
|
|
211
|
+
set executionModeOptions(value) {
|
|
212
|
+
this.ExecutionModeOptions = value;
|
|
213
|
+
}
|
|
214
|
+
/** @deprecated Use {@link StatusOptions}. */
|
|
215
|
+
get statusOptions() {
|
|
216
|
+
return this.StatusOptions;
|
|
217
|
+
}
|
|
218
|
+
/** @deprecated Use {@link StatusOptions}. */
|
|
219
|
+
set statusOptions(value) {
|
|
220
|
+
this.StatusOptions = value;
|
|
221
|
+
}
|
|
222
|
+
/** @deprecated Use {@link ExecutionOrderError}. */
|
|
223
|
+
get executionOrderError() {
|
|
224
|
+
return this.ExecutionOrderError;
|
|
225
|
+
}
|
|
226
|
+
/** @deprecated Use {@link ExecutionOrderError}. */
|
|
227
|
+
set executionOrderError(value) {
|
|
228
|
+
this.ExecutionOrderError = value;
|
|
229
|
+
}
|
|
150
230
|
constructor(fb, cdr) {
|
|
151
231
|
super();
|
|
152
232
|
this.fb = fb;
|
|
153
233
|
this.cdr = cdr;
|
|
154
|
-
this.
|
|
234
|
+
this.AllSubAgents = [];
|
|
155
235
|
// Reactive state management
|
|
156
236
|
this.destroy$ = new Subject();
|
|
157
|
-
this.
|
|
158
|
-
this.
|
|
159
|
-
this.
|
|
237
|
+
this.Result = new Subject();
|
|
238
|
+
this.IsLoading$ = new BehaviorSubject(false);
|
|
239
|
+
this.IsSaving$ = new BehaviorSubject(false);
|
|
160
240
|
// Dropdown data
|
|
161
|
-
this.
|
|
241
|
+
this.AgentTypes$ = new BehaviorSubject([]);
|
|
162
242
|
// Available options
|
|
163
|
-
this.
|
|
243
|
+
this.ExecutionModeOptions = [
|
|
164
244
|
{
|
|
165
245
|
text: 'Sequential',
|
|
166
246
|
value: 'Sequential',
|
|
@@ -174,13 +254,13 @@ export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponen
|
|
|
174
254
|
icon: 'fa-layer-group'
|
|
175
255
|
}
|
|
176
256
|
];
|
|
177
|
-
this.
|
|
257
|
+
this.StatusOptions = [
|
|
178
258
|
{ text: 'Active', value: 'Active' },
|
|
179
259
|
{ text: 'Disabled', value: 'Disabled' },
|
|
180
260
|
{ text: 'Pending', value: 'Pending' }
|
|
181
261
|
];
|
|
182
262
|
// Execution order validation
|
|
183
|
-
this.
|
|
263
|
+
this.ExecutionOrderError = null;
|
|
184
264
|
this.DialogClose = new EventEmitter();
|
|
185
265
|
}
|
|
186
266
|
ngOnInit() {
|
|
@@ -192,25 +272,25 @@ export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponen
|
|
|
192
272
|
this.destroy$.complete();
|
|
193
273
|
}
|
|
194
274
|
initializeForm() {
|
|
195
|
-
this.
|
|
196
|
-
executionOrder: [this.
|
|
197
|
-
executionMode: [this.
|
|
198
|
-
status: [this.
|
|
199
|
-
typeID: [this.
|
|
200
|
-
exposeAsAction: [this.
|
|
275
|
+
this.AdvancedForm = this.fb.group({
|
|
276
|
+
executionOrder: [this.SubAgent.ExecutionOrder || 0, [Validators.required, Validators.min(0)]],
|
|
277
|
+
executionMode: [this.SubAgent.ExecutionMode || 'Sequential', [Validators.required]],
|
|
278
|
+
status: [this.SubAgent.Status || 'Active', [Validators.required]],
|
|
279
|
+
typeID: [this.SubAgent.TypeID],
|
|
280
|
+
exposeAsAction: [this.SubAgent.ExposeAsAction || false]
|
|
201
281
|
});
|
|
202
282
|
this.setupValidationLogic();
|
|
203
283
|
}
|
|
204
284
|
setupValidationLogic() {
|
|
205
285
|
// Execution order validation
|
|
206
|
-
const executionOrderControl = this.
|
|
286
|
+
const executionOrderControl = this.AdvancedForm.get('executionOrder');
|
|
207
287
|
executionOrderControl?.valueChanges.pipe(takeUntil(this.destroy$)).subscribe(order => {
|
|
208
288
|
this.validateExecutionOrder(order);
|
|
209
289
|
});
|
|
210
290
|
// ExposeAsAction validation (sub-agents cannot be exposed as actions)
|
|
211
|
-
const exposeAsActionControl = this.
|
|
291
|
+
const exposeAsActionControl = this.AdvancedForm.get('exposeAsAction');
|
|
212
292
|
exposeAsActionControl?.valueChanges.pipe(takeUntil(this.destroy$)).subscribe(expose => {
|
|
213
|
-
if (expose && this.
|
|
293
|
+
if (expose && this.SubAgent.ParentID) {
|
|
214
294
|
// Sub-agents cannot be exposed as actions
|
|
215
295
|
exposeAsActionControl.setValue(false);
|
|
216
296
|
MJNotificationService.Instance.CreateSimpleNotification('Sub-agents cannot be exposed as actions. Only root agents can be exposed.', 'warning', 4000);
|
|
@@ -219,23 +299,23 @@ export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponen
|
|
|
219
299
|
}
|
|
220
300
|
validateExecutionOrder(order) {
|
|
221
301
|
if (order == null) {
|
|
222
|
-
this.
|
|
302
|
+
this.ExecutionOrderError = null;
|
|
223
303
|
return;
|
|
224
304
|
}
|
|
225
305
|
// Check for conflicts with other sub-agents under the same parent (excluding current one)
|
|
226
|
-
const conflictingAgent = this.
|
|
227
|
-
UUIDsEqual(agent.ParentID, this.
|
|
306
|
+
const conflictingAgent = this.AllSubAgents.find(agent => !UUIDsEqual(agent.ID, this.SubAgent.ID) &&
|
|
307
|
+
UUIDsEqual(agent.ParentID, this.SubAgent.ParentID) &&
|
|
228
308
|
agent.ExecutionOrder === order);
|
|
229
309
|
if (conflictingAgent) {
|
|
230
|
-
this.
|
|
310
|
+
this.ExecutionOrderError = `Execution order ${order} is already used by "${conflictingAgent.Name}". Please choose a different order.`;
|
|
231
311
|
}
|
|
232
312
|
else {
|
|
233
|
-
this.
|
|
313
|
+
this.ExecutionOrderError = null;
|
|
234
314
|
}
|
|
235
315
|
this.cdr.detectChanges();
|
|
236
316
|
}
|
|
237
317
|
async loadDropdownData() {
|
|
238
|
-
this.
|
|
318
|
+
this.IsLoading$.next(true);
|
|
239
319
|
try {
|
|
240
320
|
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
241
321
|
// Load AI Agent Types
|
|
@@ -247,7 +327,7 @@ export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponen
|
|
|
247
327
|
MaxRows: 1000
|
|
248
328
|
});
|
|
249
329
|
if (agentTypesResult.Success) {
|
|
250
|
-
this.
|
|
330
|
+
this.AgentTypes$.next(agentTypesResult.Results || []);
|
|
251
331
|
}
|
|
252
332
|
}
|
|
253
333
|
catch (error) {
|
|
@@ -255,16 +335,20 @@ export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponen
|
|
|
255
335
|
MJNotificationService.Instance.CreateSimpleNotification('Error loading form data. Please try again.', 'error', 3000);
|
|
256
336
|
}
|
|
257
337
|
finally {
|
|
258
|
-
this.
|
|
338
|
+
this.IsLoading$.next(false);
|
|
259
339
|
}
|
|
260
340
|
}
|
|
261
341
|
// === Validation Helpers ===
|
|
262
|
-
|
|
263
|
-
const field = this.
|
|
342
|
+
IsFieldInvalid(fieldName) {
|
|
343
|
+
const field = this.AdvancedForm.get(fieldName);
|
|
264
344
|
return !!(field && field.invalid && (field.dirty || field.touched));
|
|
265
345
|
}
|
|
266
|
-
|
|
267
|
-
|
|
346
|
+
/** @deprecated Use {@link IsFieldInvalid}. */
|
|
347
|
+
isFieldInvalid(fieldName) {
|
|
348
|
+
return this.IsFieldInvalid(fieldName);
|
|
349
|
+
}
|
|
350
|
+
GetFieldError(fieldName) {
|
|
351
|
+
const field = this.AdvancedForm.get(fieldName);
|
|
268
352
|
if (field?.errors) {
|
|
269
353
|
if (field.errors['required'])
|
|
270
354
|
return `${fieldName} is required`;
|
|
@@ -273,39 +357,55 @@ export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponen
|
|
|
273
357
|
}
|
|
274
358
|
return '';
|
|
275
359
|
}
|
|
360
|
+
/** @deprecated Use {@link GetFieldError}. */
|
|
361
|
+
getFieldError(fieldName) {
|
|
362
|
+
return this.GetFieldError(fieldName);
|
|
363
|
+
}
|
|
364
|
+
HasExecutionOrderError() {
|
|
365
|
+
return !!this.ExecutionOrderError;
|
|
366
|
+
}
|
|
367
|
+
/** @deprecated Use {@link HasExecutionOrderError}. */
|
|
276
368
|
hasExecutionOrderError() {
|
|
277
|
-
return
|
|
369
|
+
return this.HasExecutionOrderError();
|
|
278
370
|
}
|
|
279
371
|
// === Execution Mode Helpers ===
|
|
280
|
-
|
|
281
|
-
const option = this.
|
|
372
|
+
GetExecutionModeIcon(mode) {
|
|
373
|
+
const option = this.ExecutionModeOptions.find(opt => opt.value === mode);
|
|
282
374
|
return option?.icon || 'fa-robot';
|
|
283
375
|
}
|
|
284
|
-
|
|
285
|
-
|
|
376
|
+
/** @deprecated Use {@link GetExecutionModeIcon}. */
|
|
377
|
+
getExecutionModeIcon(mode) {
|
|
378
|
+
return this.GetExecutionModeIcon(mode);
|
|
379
|
+
}
|
|
380
|
+
GetExecutionModeDescription(mode) {
|
|
381
|
+
const option = this.ExecutionModeOptions.find(opt => opt.value === mode);
|
|
286
382
|
return option?.description || '';
|
|
287
383
|
}
|
|
384
|
+
/** @deprecated Use {@link GetExecutionModeDescription}. */
|
|
385
|
+
getExecutionModeDescription(mode) {
|
|
386
|
+
return this.GetExecutionModeDescription(mode);
|
|
387
|
+
}
|
|
288
388
|
// === Dialog Actions ===
|
|
289
389
|
cancel() {
|
|
290
|
-
this.
|
|
390
|
+
this.Result.next(null);
|
|
291
391
|
this.DialogClose.emit();
|
|
292
392
|
}
|
|
293
393
|
async save() {
|
|
294
|
-
if (this.
|
|
295
|
-
this.
|
|
394
|
+
if (this.AdvancedForm.invalid || this.HasExecutionOrderError()) {
|
|
395
|
+
this.AdvancedForm.markAllAsTouched();
|
|
296
396
|
MJNotificationService.Instance.CreateSimpleNotification('Please fix validation errors before saving', 'error', 3000);
|
|
297
397
|
return;
|
|
298
398
|
}
|
|
299
|
-
this.
|
|
399
|
+
this.IsSaving$.next(true);
|
|
300
400
|
try {
|
|
301
401
|
const formData = {
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
402
|
+
ExecutionOrder: this.AdvancedForm.get('executionOrder')?.value,
|
|
403
|
+
ExecutionMode: this.AdvancedForm.get('executionMode')?.value,
|
|
404
|
+
Status: this.AdvancedForm.get('status')?.value,
|
|
405
|
+
TypeID: this.AdvancedForm.get('typeID')?.value || null,
|
|
406
|
+
ExposeAsAction: false // Sub-agents cannot be exposed as actions
|
|
307
407
|
};
|
|
308
|
-
this.
|
|
408
|
+
this.Result.next(formData);
|
|
309
409
|
this.DialogClose.emit();
|
|
310
410
|
}
|
|
311
411
|
catch (error) {
|
|
@@ -313,7 +413,7 @@ export class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponen
|
|
|
313
413
|
MJNotificationService.Instance.CreateSimpleNotification('Error saving settings. Please try again.', 'error', 3000);
|
|
314
414
|
}
|
|
315
415
|
finally {
|
|
316
|
-
this.
|
|
416
|
+
this.IsSaving$.next(false);
|
|
317
417
|
}
|
|
318
418
|
}
|
|
319
419
|
static { this.ɵfac = function SubAgentAdvancedSettingsDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SubAgentAdvancedSettingsDialogComponent)(i0.ɵɵdirectiveInject(i1.FormBuilder), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sub-agent-advanced-settings-dialog.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.ts","../../../../src/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit, OnDestroy, ChangeDetectorRef, Output, EventEmitter } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Subject, BehaviorSubject, takeUntil } from 'rxjs';\nimport { RunView } from '@memberjunction/core';\nimport { MJAIAgentTypeEntity } from '@memberjunction/core-entities';\nimport { MJNotificationService } from '@memberjunction/ng-notifications';\nimport { MJAIAgentEntityExtended } from '@memberjunction/ai-core-plus';\nimport { UUIDsEqual } from '@memberjunction/global';\n\nimport { BaseAngularComponent } from '@memberjunction/ng-base-types';\nexport interface SubAgentAdvancedSettingsFormData {\n executionOrder: number;\n executionMode: 'Sequential' | 'Parallel';\n status: 'Active' | 'Disabled' | 'Pending';\n typeID: string | null;\n exposeAsAction: boolean;\n}\n\n/**\n * Advanced Settings dialog for Sub-Agents.\n * Manages execution order, execution mode, and other advanced sub-agent configurations.\n */\n@Component({\n standalone: false,\n selector: 'mj-sub-agent-advanced-settings-dialog',\n templateUrl: './sub-agent-advanced-settings-dialog.component.html',\n styleUrls: ['./sub-agent-advanced-settings-dialog.component.css']\n})\nexport class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponent implements OnInit, OnDestroy {\n \n // Input properties set by service\n subAgent!: MJAIAgentEntityExtended;\n allSubAgents: MJAIAgentEntityExtended[] = []; // For execution order validation\n \n // Reactive state management\n private destroy$ = new Subject<void>();\n public result = new Subject<SubAgentAdvancedSettingsFormData | null>();\n \n // Form and data\n advancedForm!: FormGroup;\n isLoading$ = new BehaviorSubject<boolean>(false);\n isSaving$ = new BehaviorSubject<boolean>(false);\n \n // Dropdown data\n agentTypes$ = new BehaviorSubject<MJAIAgentTypeEntity[]>([]);\n \n // Available options\n executionModeOptions = [\n { \n text: 'Sequential', \n value: 'Sequential', \n description: 'Child agents execute one after another in order',\n icon: 'fa-list-ol'\n },\n { \n text: 'Parallel', \n value: 'Parallel', \n description: 'Child agents execute simultaneously for faster processing',\n icon: 'fa-layer-group'\n }\n ];\n\n statusOptions = [\n { text: 'Active', value: 'Active' },\n { text: 'Disabled', value: 'Disabled' },\n { text: 'Pending', value: 'Pending' }\n ];\n\n // Execution order validation\n executionOrderError: string | null = null;\n\n @Output() DialogClose = new EventEmitter<void>();\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef\n ) {\n super();}\n\n ngOnInit() {\n this.initializeForm();\n this.loadDropdownData();\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n private initializeForm() {\n this.advancedForm = this.fb.group({\n executionOrder: [this.subAgent.ExecutionOrder || 0, [Validators.required, Validators.min(0)]],\n executionMode: [this.subAgent.ExecutionMode || 'Sequential', [Validators.required]],\n status: [this.subAgent.Status || 'Active', [Validators.required]],\n typeID: [this.subAgent.TypeID],\n exposeAsAction: [this.subAgent.ExposeAsAction || false]\n });\n\n this.setupValidationLogic();\n }\n\n private setupValidationLogic() {\n // Execution order validation\n const executionOrderControl = this.advancedForm.get('executionOrder');\n executionOrderControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(order => {\n this.validateExecutionOrder(order);\n });\n\n // ExposeAsAction validation (sub-agents cannot be exposed as actions)\n const exposeAsActionControl = this.advancedForm.get('exposeAsAction');\n exposeAsActionControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(expose => {\n if (expose && this.subAgent.ParentID) {\n // Sub-agents cannot be exposed as actions\n exposeAsActionControl.setValue(false);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Sub-agents cannot be exposed as actions. Only root agents can be exposed.',\n 'warning',\n 4000\n );\n }\n });\n }\n\n private validateExecutionOrder(order: number) {\n if (order == null) {\n this.executionOrderError = null;\n return;\n }\n\n // Check for conflicts with other sub-agents under the same parent (excluding current one)\n const conflictingAgent = this.allSubAgents.find(agent => \n !UUIDsEqual(agent.ID, this.subAgent.ID) && \n UUIDsEqual(agent.ParentID, this.subAgent.ParentID) &&\n agent.ExecutionOrder === order\n );\n\n if (conflictingAgent) {\n this.executionOrderError = `Execution order ${order} is already used by \"${conflictingAgent.Name}\". Please choose a different order.`;\n } else {\n this.executionOrderError = null;\n }\n\n this.cdr.detectChanges();\n }\n\n private async loadDropdownData() {\n this.isLoading$.next(true);\n \n try {\n const rv = RunView.FromMetadataProvider(this.ProviderToUse);\n \n // Load AI Agent Types\n const agentTypesResult = await rv.RunView<MJAIAgentTypeEntity>({\n EntityName: 'MJ: AI Agent Types',\n ExtraFilter: 'IsActive = 1',\n OrderBy: 'Name',\n ResultType: 'entity_object',\n MaxRows: 1000\n });\n\n if (agentTypesResult.Success) {\n this.agentTypes$.next(agentTypesResult.Results || []);\n }\n\n } catch (error) {\n console.error('Error loading dropdown data:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error loading form data. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.isLoading$.next(false);\n }\n }\n\n // === Validation Helpers ===\n\n isFieldInvalid(fieldName: string): boolean {\n const field = this.advancedForm.get(fieldName);\n return !!(field && field.invalid && (field.dirty || field.touched));\n }\n\n getFieldError(fieldName: string): string {\n const field = this.advancedForm.get(fieldName);\n if (field?.errors) {\n if (field.errors['required']) return `${fieldName} is required`;\n if (field.errors['min']) return `${fieldName} must be greater than or equal to ${field.errors['min'].min}`;\n }\n return '';\n }\n\n hasExecutionOrderError(): boolean {\n return !!this.executionOrderError;\n }\n\n // === Execution Mode Helpers ===\n\n getExecutionModeIcon(mode: string): string {\n const option = this.executionModeOptions.find(opt => opt.value === mode);\n return option?.icon || 'fa-robot';\n }\n\n getExecutionModeDescription(mode: string): string {\n const option = this.executionModeOptions.find(opt => opt.value === mode);\n return option?.description || '';\n }\n\n // === Dialog Actions ===\n\n cancel() {\n this.result.next(null);\n this.DialogClose.emit();\n }\n\n async save() {\n if (this.advancedForm.invalid || this.hasExecutionOrderError()) {\n this.advancedForm.markAllAsTouched();\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Please fix validation errors before saving',\n 'error',\n 3000\n );\n return;\n }\n\n this.isSaving$.next(true);\n \n try {\n const formData: SubAgentAdvancedSettingsFormData = {\n executionOrder: this.advancedForm.get('executionOrder')?.value,\n executionMode: this.advancedForm.get('executionMode')?.value,\n status: this.advancedForm.get('status')?.value,\n typeID: this.advancedForm.get('typeID')?.value || null,\n exposeAsAction: false // Sub-agents cannot be exposed as actions\n };\n\n this.result.next(formData);\n this.DialogClose.emit();\n \n } catch (error) {\n console.error('Error saving advanced settings:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error saving settings. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.isSaving$.next(false);\n }\n }\n}","<!-- Sub-Agent Advanced Settings Dialog -->\n<div class=\"sub-agent-advanced-settings-dialog\">\n \n <!-- Loading State -->\n @if (isLoading$ | async) {\n <div class=\"loading-state\">\n <div class=\"loading-spinner\">\n <i class=\"fa-solid fa-spinner fa-spin fa-2x\"></i>\n </div>\n <p>Loading sub-agent settings...</p>\n </div>\n } @else {\n \n <!-- Form Content -->\n <form [formGroup]=\"advancedForm\" class=\"advanced-form\">\n \n <!-- Execution Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-play\"></i>\n Execution Configuration\n </h3>\n \n <div class=\"form-grid\">\n <!-- Execution Order -->\n <div class=\"form-field\">\n <label for=\"executionOrder\">Execution Order *</label>\n <mj-numeric-input\n formControlName=\"executionOrder\"\n [Min]=\"0\"\n Format=\"0\"\n [class.error-border]=\"hasExecutionOrderError()\"\n class=\"form-control\">\n </mj-numeric-input>\n @if (isFieldInvalid('executionOrder')) {\n <div class=\"field-error\">{{ getFieldError('executionOrder') }}</div>\n }\n @if (hasExecutionOrderError()) {\n <div class=\"field-error\">{{ executionOrderError }}</div>\n }\n <small class=\"field-hint\">Order in which this sub-agent executes among siblings (0 = first). Must be unique among sibling agents.</small>\n </div>\n \n <!-- Execution Mode -->\n <div class=\"form-field\">\n <label for=\"executionMode\">Execution Mode *</label>\n <mj-dropdown\n formControlName=\"executionMode\"\n [Data]=\"executionModeOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('executionMode')) {\n <div class=\"field-error\">{{ getFieldError('executionMode') }}</div>\n }\n <small class=\"field-hint\">{{ getExecutionModeDescription(advancedForm.get('executionMode')?.value) }}</small>\n </div>\n </div>\n </div>\n\n <!-- Agent Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-robot\"></i>\n Agent Configuration\n </h3>\n \n <div class=\"form-grid\">\n <!-- Agent Type -->\n <div class=\"form-field\">\n <label for=\"typeID\">Agent Type</label>\n <mj-dropdown\n formControlName=\"typeID\"\n [Data]=\"agentTypes$ | async\"\n TextField=\"Name\"\n ValueField=\"ID\"\n [ValuePrimitive]=\"true\"\n [DefaultItem]=\"{ Name: 'Default Type', ID: null }\"\n class=\"form-control\">\n </mj-dropdown>\n <small class=\"field-hint\">Specialized agent type that defines behavior and capabilities</small>\n </div>\n \n <!-- Status -->\n <div class=\"form-field\">\n <label for=\"status\">Status *</label>\n <mj-dropdown\n formControlName=\"status\"\n [Data]=\"statusOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('status')) {\n <div class=\"field-error\">{{ getFieldError('status') }}</div>\n }\n <small class=\"field-hint\">Current operational status of this sub-agent</small>\n </div>\n </div>\n </div>\n\n <!-- Capability Restrictions Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-shield-alt\"></i>\n Capability Restrictions\n </h3>\n \n <div class=\"form-grid\">\n <!-- Expose As Action (Disabled for Sub-Agents) -->\n <div class=\"form-field full-width\">\n <label class=\"checkbox-label disabled\">\n <input type=\"checkbox\"\n class=\"mj-checkbox\"\n formControlName=\"exposeAsAction\"\n [disabled]=\"true\">\n Expose As Action\n </label>\n <small class=\"field-hint disabled-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Sub-agents cannot be exposed as actions. Only root agents (without parents) can be exposed as actions for use by other agents.\n </small>\n </div>\n </div>\n </div>\n </form>\n }\n\n <!-- Dialog Footer -->\n <div class=\"dialog-footer\">\n <button mjButton\n variant=\"flat\"\n (click)=\"cancel()\"\n [disabled]=\"(isSaving$ | async) || false\">\n Cancel\n </button>\n\n <button mjButton\n variant=\"primary\"\n (click)=\"save()\"\n [disabled]=\"((isSaving$ | async) || false) || ((isLoading$ | async) || false) || hasExecutionOrderError()\">\n @if (isSaving$ | async) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Saving...\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n Save Settings\n }\n </button>\n </div>\n</div>"]}
|
|
1
|
+
{"version":3,"file":"sub-agent-advanced-settings-dialog.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.ts","../../../../src/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit, OnDestroy, ChangeDetectorRef, Output, EventEmitter } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Subject, BehaviorSubject, takeUntil } from 'rxjs';\nimport { RunView } from '@memberjunction/core';\nimport { MJAIAgentTypeEntity } from '@memberjunction/core-entities';\nimport { MJNotificationService } from '@memberjunction/ng-notifications';\nimport { MJAIAgentEntityExtended } from '@memberjunction/ai-core-plus';\nimport { UUIDsEqual } from '@memberjunction/global';\n\nimport { BaseAngularComponent } from '@memberjunction/ng-base-types';\nexport interface SubAgentAdvancedSettingsFormData {\n ExecutionOrder: number;\n ExecutionMode: 'Sequential' | 'Parallel';\n Status: 'Active' | 'Disabled' | 'Pending';\n TypeID: string | null;\n ExposeAsAction: boolean;\n}\n\n/**\n * Advanced Settings dialog for Sub-Agents.\n * Manages execution order, execution mode, and other advanced sub-agent configurations.\n */\n@Component({\n standalone: false,\n selector: 'mj-sub-agent-advanced-settings-dialog',\n templateUrl: './sub-agent-advanced-settings-dialog.component.html',\n styleUrls: ['./sub-agent-advanced-settings-dialog.component.css']\n})\nexport class SubAgentAdvancedSettingsDialogComponent extends BaseAngularComponent implements OnInit, OnDestroy {\n \n // Input properties set by service\n SubAgent!: MJAIAgentEntityExtended;\n\n /** @deprecated Use {@link SubAgent}. */\n get subAgent(): MJAIAgentEntityExtended {\n return this.SubAgent;\n }\n /** @deprecated Use {@link SubAgent}. */\n set subAgent(value: MJAIAgentEntityExtended) {\n this.SubAgent = value;\n }\n AllSubAgents: MJAIAgentEntityExtended[] = [];\n\n /** @deprecated Use {@link AllSubAgents}. */\n get allSubAgents(): MJAIAgentEntityExtended[] {\n return this.AllSubAgents;\n }\n /** @deprecated Use {@link AllSubAgents}. */\n set allSubAgents(value: MJAIAgentEntityExtended[]) {\n this.AllSubAgents = value;\n } // For execution order validation\n \n // Reactive state management\n private destroy$ = new Subject<void>();\n public Result = new Subject<SubAgentAdvancedSettingsFormData | null>();\n\n /** @deprecated Use {@link Result}. */\n public get result() {\n return this.Result;\n }\n /** @deprecated Use {@link Result}. */\n public set result(value) {\n this.Result = value;\n }\n \n // Form and data\n AdvancedForm!: FormGroup;\n\n /** @deprecated Use {@link AdvancedForm}. */\n get advancedForm(): FormGroup {\n return this.AdvancedForm;\n }\n /** @deprecated Use {@link AdvancedForm}. */\n set advancedForm(value: FormGroup) {\n this.AdvancedForm = value;\n }\n IsLoading$ = new BehaviorSubject<boolean>(false);\n\n /** @deprecated Use {@link IsLoading$}. */\n get isLoading$() {\n return this.IsLoading$;\n }\n /** @deprecated Use {@link IsLoading$}. */\n set isLoading$(value) {\n this.IsLoading$ = value;\n }\n IsSaving$ = new BehaviorSubject<boolean>(false);\n\n /** @deprecated Use {@link IsSaving$}. */\n get isSaving$() {\n return this.IsSaving$;\n }\n /** @deprecated Use {@link IsSaving$}. */\n set isSaving$(value) {\n this.IsSaving$ = value;\n }\n \n // Dropdown data\n AgentTypes$ = new BehaviorSubject<MJAIAgentTypeEntity[]>([]);\n\n /** @deprecated Use {@link AgentTypes$}. */\n get agentTypes$() {\n return this.AgentTypes$;\n }\n /** @deprecated Use {@link AgentTypes$}. */\n set agentTypes$(value) {\n this.AgentTypes$ = value;\n }\n \n // Available options\n ExecutionModeOptions = [\n { \n text: 'Sequential', \n value: 'Sequential', \n description: 'Child agents execute one after another in order',\n icon: 'fa-list-ol'\n },\n { \n text: 'Parallel', \n value: 'Parallel', \n description: 'Child agents execute simultaneously for faster processing',\n icon: 'fa-layer-group'\n }\n ];\n\n /** @deprecated Use {@link ExecutionModeOptions}. */\n get executionModeOptions() {\n return this.ExecutionModeOptions;\n }\n /** @deprecated Use {@link ExecutionModeOptions}. */\n set executionModeOptions(value) {\n this.ExecutionModeOptions = value;\n }\n\n StatusOptions = [\n { text: 'Active', value: 'Active' },\n { text: 'Disabled', value: 'Disabled' },\n { text: 'Pending', value: 'Pending' }\n ];\n\n /** @deprecated Use {@link StatusOptions}. */\n get statusOptions() {\n return this.StatusOptions;\n }\n /** @deprecated Use {@link StatusOptions}. */\n set statusOptions(value) {\n this.StatusOptions = value;\n }\n\n // Execution order validation\n ExecutionOrderError: string | null = null;\n\n /** @deprecated Use {@link ExecutionOrderError}. */\n get executionOrderError(): string | null {\n return this.ExecutionOrderError;\n }\n /** @deprecated Use {@link ExecutionOrderError}. */\n set executionOrderError(value: string | null) {\n this.ExecutionOrderError = value;\n }\n\n @Output() DialogClose = new EventEmitter<void>();\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef\n ) {\n super();}\n\n ngOnInit() {\n this.initializeForm();\n this.loadDropdownData();\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n private initializeForm() {\n this.AdvancedForm = this.fb.group({\n executionOrder: [this.SubAgent.ExecutionOrder || 0, [Validators.required, Validators.min(0)]],\n executionMode: [this.SubAgent.ExecutionMode || 'Sequential', [Validators.required]],\n status: [this.SubAgent.Status || 'Active', [Validators.required]],\n typeID: [this.SubAgent.TypeID],\n exposeAsAction: [this.SubAgent.ExposeAsAction || false]\n });\n\n this.setupValidationLogic();\n }\n\n private setupValidationLogic() {\n // Execution order validation\n const executionOrderControl = this.AdvancedForm.get('executionOrder');\n executionOrderControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(order => {\n this.validateExecutionOrder(order);\n });\n\n // ExposeAsAction validation (sub-agents cannot be exposed as actions)\n const exposeAsActionControl = this.AdvancedForm.get('exposeAsAction');\n exposeAsActionControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(expose => {\n if (expose && this.SubAgent.ParentID) {\n // Sub-agents cannot be exposed as actions\n exposeAsActionControl.setValue(false);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Sub-agents cannot be exposed as actions. Only root agents can be exposed.',\n 'warning',\n 4000\n );\n }\n });\n }\n\n private validateExecutionOrder(order: number) {\n if (order == null) {\n this.ExecutionOrderError = null;\n return;\n }\n\n // Check for conflicts with other sub-agents under the same parent (excluding current one)\n const conflictingAgent = this.AllSubAgents.find(agent => \n !UUIDsEqual(agent.ID, this.SubAgent.ID) && \n UUIDsEqual(agent.ParentID, this.SubAgent.ParentID) &&\n agent.ExecutionOrder === order\n );\n\n if (conflictingAgent) {\n this.ExecutionOrderError = `Execution order ${order} is already used by \"${conflictingAgent.Name}\". Please choose a different order.`;\n } else {\n this.ExecutionOrderError = null;\n }\n\n this.cdr.detectChanges();\n }\n\n private async loadDropdownData() {\n this.IsLoading$.next(true);\n \n try {\n const rv = RunView.FromMetadataProvider(this.ProviderToUse);\n \n // Load AI Agent Types\n const agentTypesResult = await rv.RunView<MJAIAgentTypeEntity>({\n EntityName: 'MJ: AI Agent Types',\n ExtraFilter: 'IsActive = 1',\n OrderBy: 'Name',\n ResultType: 'entity_object',\n MaxRows: 1000\n });\n\n if (agentTypesResult.Success) {\n this.AgentTypes$.next(agentTypesResult.Results || []);\n }\n\n } catch (error) {\n console.error('Error loading dropdown data:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error loading form data. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.IsLoading$.next(false);\n }\n }\n\n // === Validation Helpers ===\n\n IsFieldInvalid(fieldName: string): boolean {\n const field = this.AdvancedForm.get(fieldName);\n return !!(field && field.invalid && (field.dirty || field.touched));\n }\n\n /** @deprecated Use {@link IsFieldInvalid}. */\n isFieldInvalid(fieldName: string): boolean {\n return this.IsFieldInvalid(fieldName);\n }\n\n GetFieldError(fieldName: string): string {\n const field = this.AdvancedForm.get(fieldName);\n if (field?.errors) {\n if (field.errors['required']) return `${fieldName} is required`;\n if (field.errors['min']) return `${fieldName} must be greater than or equal to ${field.errors['min'].min}`;\n }\n return '';\n }\n\n /** @deprecated Use {@link GetFieldError}. */\n getFieldError(fieldName: string): string {\n return this.GetFieldError(fieldName);\n }\n\n HasExecutionOrderError(): boolean {\n return !!this.ExecutionOrderError;\n }\n\n /** @deprecated Use {@link HasExecutionOrderError}. */\n hasExecutionOrderError(): boolean {\n return this.HasExecutionOrderError();\n }\n\n // === Execution Mode Helpers ===\n\n GetExecutionModeIcon(mode: string): string {\n const option = this.ExecutionModeOptions.find(opt => opt.value === mode);\n return option?.icon || 'fa-robot';\n }\n\n /** @deprecated Use {@link GetExecutionModeIcon}. */\n getExecutionModeIcon(mode: string): string {\n return this.GetExecutionModeIcon(mode);\n }\n\n GetExecutionModeDescription(mode: string): string {\n const option = this.ExecutionModeOptions.find(opt => opt.value === mode);\n return option?.description || '';\n }\n\n /** @deprecated Use {@link GetExecutionModeDescription}. */\n getExecutionModeDescription(mode: string): string {\n return this.GetExecutionModeDescription(mode);\n }\n\n // === Dialog Actions ===\n\n cancel() {\n this.Result.next(null);\n this.DialogClose.emit();\n }\n\n async save() {\n if (this.AdvancedForm.invalid || this.HasExecutionOrderError()) {\n this.AdvancedForm.markAllAsTouched();\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Please fix validation errors before saving',\n 'error',\n 3000\n );\n return;\n }\n\n this.IsSaving$.next(true);\n \n try {\n const formData: SubAgentAdvancedSettingsFormData = {\n ExecutionOrder: this.AdvancedForm.get('executionOrder')?.value,\n ExecutionMode: this.AdvancedForm.get('executionMode')?.value,\n Status: this.AdvancedForm.get('status')?.value,\n TypeID: this.AdvancedForm.get('typeID')?.value || null,\n ExposeAsAction: false // Sub-agents cannot be exposed as actions\n };\n\n this.Result.next(formData);\n this.DialogClose.emit();\n \n } catch (error) {\n console.error('Error saving advanced settings:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error saving settings. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.IsSaving$.next(false);\n }\n }\n}","<!-- Sub-Agent Advanced Settings Dialog -->\n<div class=\"sub-agent-advanced-settings-dialog\">\n \n <!-- Loading State -->\n @if (isLoading$ | async) {\n <div class=\"loading-state\">\n <div class=\"loading-spinner\">\n <i class=\"fa-solid fa-spinner fa-spin fa-2x\"></i>\n </div>\n <p>Loading sub-agent settings...</p>\n </div>\n } @else {\n \n <!-- Form Content -->\n <form [formGroup]=\"advancedForm\" class=\"advanced-form\">\n \n <!-- Execution Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-play\"></i>\n Execution Configuration\n </h3>\n \n <div class=\"form-grid\">\n <!-- Execution Order -->\n <div class=\"form-field\">\n <label for=\"executionOrder\">Execution Order *</label>\n <mj-numeric-input\n formControlName=\"executionOrder\"\n [Min]=\"0\"\n Format=\"0\"\n [class.error-border]=\"hasExecutionOrderError()\"\n class=\"form-control\">\n </mj-numeric-input>\n @if (isFieldInvalid('executionOrder')) {\n <div class=\"field-error\">{{ getFieldError('executionOrder') }}</div>\n }\n @if (hasExecutionOrderError()) {\n <div class=\"field-error\">{{ executionOrderError }}</div>\n }\n <small class=\"field-hint\">Order in which this sub-agent executes among siblings (0 = first). Must be unique among sibling agents.</small>\n </div>\n \n <!-- Execution Mode -->\n <div class=\"form-field\">\n <label for=\"executionMode\">Execution Mode *</label>\n <mj-dropdown\n formControlName=\"executionMode\"\n [Data]=\"executionModeOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('executionMode')) {\n <div class=\"field-error\">{{ getFieldError('executionMode') }}</div>\n }\n <small class=\"field-hint\">{{ getExecutionModeDescription(advancedForm.get('executionMode')?.value) }}</small>\n </div>\n </div>\n </div>\n\n <!-- Agent Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-robot\"></i>\n Agent Configuration\n </h3>\n \n <div class=\"form-grid\">\n <!-- Agent Type -->\n <div class=\"form-field\">\n <label for=\"typeID\">Agent Type</label>\n <mj-dropdown\n formControlName=\"typeID\"\n [Data]=\"agentTypes$ | async\"\n TextField=\"Name\"\n ValueField=\"ID\"\n [ValuePrimitive]=\"true\"\n [DefaultItem]=\"{ Name: 'Default Type', ID: null }\"\n class=\"form-control\">\n </mj-dropdown>\n <small class=\"field-hint\">Specialized agent type that defines behavior and capabilities</small>\n </div>\n \n <!-- Status -->\n <div class=\"form-field\">\n <label for=\"status\">Status *</label>\n <mj-dropdown\n formControlName=\"status\"\n [Data]=\"statusOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('status')) {\n <div class=\"field-error\">{{ getFieldError('status') }}</div>\n }\n <small class=\"field-hint\">Current operational status of this sub-agent</small>\n </div>\n </div>\n </div>\n\n <!-- Capability Restrictions Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-shield-alt\"></i>\n Capability Restrictions\n </h3>\n \n <div class=\"form-grid\">\n <!-- Expose As Action (Disabled for Sub-Agents) -->\n <div class=\"form-field full-width\">\n <label class=\"checkbox-label disabled\">\n <input type=\"checkbox\"\n class=\"mj-checkbox\"\n formControlName=\"exposeAsAction\"\n [disabled]=\"true\">\n Expose As Action\n </label>\n <small class=\"field-hint disabled-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Sub-agents cannot be exposed as actions. Only root agents (without parents) can be exposed as actions for use by other agents.\n </small>\n </div>\n </div>\n </div>\n </form>\n }\n\n <!-- Dialog Footer -->\n <div class=\"dialog-footer\">\n <button mjButton\n variant=\"flat\"\n (click)=\"cancel()\"\n [disabled]=\"(isSaving$ | async) || false\">\n Cancel\n </button>\n\n <button mjButton\n variant=\"primary\"\n (click)=\"save()\"\n [disabled]=\"((isSaving$ | async) || false) || ((isLoading$ | async) || false) || hasExecutionOrderError()\">\n @if (isSaving$ | async) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Saving...\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n Save Settings\n }\n </button>\n </div>\n</div>"]}
|