@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
|
@@ -1304,13 +1304,13 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1304
1304
|
// expand/collapse, manage-sections, and width-toggle widgets don't
|
|
1305
1305
|
// apply. `CUSTOM_LAYOUT_TOOLBAR_CONFIG` hides the entire right-hand
|
|
1306
1306
|
// group while keeping favorite / history / tags / list buttons intact.
|
|
1307
|
-
this.
|
|
1307
|
+
this.ToolbarConfig = CUSTOM_LAYOUT_TOOLBAR_CONFIG;
|
|
1308
1308
|
// Related entities
|
|
1309
1309
|
this.category = null;
|
|
1310
|
-
this.
|
|
1311
|
-
this.
|
|
1312
|
-
this.
|
|
1313
|
-
this.
|
|
1310
|
+
this.ActionParams = [];
|
|
1311
|
+
this.ResultCodes = [];
|
|
1312
|
+
this.RecentExecutions = [];
|
|
1313
|
+
this.ActionLibraries = [];
|
|
1314
1314
|
this.libraries = [];
|
|
1315
1315
|
// Cached filtered params
|
|
1316
1316
|
this._inputParams = [];
|
|
@@ -1320,12 +1320,12 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1320
1320
|
// Track result codes to delete
|
|
1321
1321
|
this.resultCodesToDelete = [];
|
|
1322
1322
|
// Loading states
|
|
1323
|
-
this.
|
|
1324
|
-
this.
|
|
1325
|
-
this.
|
|
1326
|
-
this.
|
|
1323
|
+
this.IsLoadingParams = false;
|
|
1324
|
+
this.IsLoadingResultCodes = false;
|
|
1325
|
+
this.IsLoadingExecutions = false;
|
|
1326
|
+
this.IsLoadingLibraries = false;
|
|
1327
1327
|
// UI state
|
|
1328
|
-
this.
|
|
1328
|
+
this.ExpandedSections = {
|
|
1329
1329
|
overview: true,
|
|
1330
1330
|
code: true,
|
|
1331
1331
|
params: true,
|
|
@@ -1334,23 +1334,131 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1334
1334
|
configuration: false
|
|
1335
1335
|
};
|
|
1336
1336
|
// Test harness state
|
|
1337
|
-
this.
|
|
1337
|
+
this.ShowTestHarness = false;
|
|
1338
1338
|
// Execution stats
|
|
1339
|
-
this.
|
|
1339
|
+
this.ExecutionStats = {
|
|
1340
1340
|
totalRuns: 0,
|
|
1341
1341
|
successRate: 0,
|
|
1342
1342
|
avgDuration: 0,
|
|
1343
1343
|
lastRun: null
|
|
1344
1344
|
};
|
|
1345
1345
|
// Code editor config
|
|
1346
|
-
this.
|
|
1347
|
-
this.
|
|
1346
|
+
this.CodeLanguage = 'typescript';
|
|
1347
|
+
this.ShowCodeComments = false;
|
|
1348
1348
|
this.dialogService = inject(MJDialogService);
|
|
1349
1349
|
this.viewContainerRef = inject(ViewContainerRef);
|
|
1350
1350
|
this.sharedService = inject(SharedService);
|
|
1351
1351
|
}
|
|
1352
|
+
/** @deprecated Use {@link ToolbarConfig}. */
|
|
1353
|
+
get toolbarConfig() {
|
|
1354
|
+
return this.ToolbarConfig;
|
|
1355
|
+
}
|
|
1352
1356
|
/** Custom-layout Action form looks best full-width on first open. */
|
|
1353
1357
|
getDefaultFormWidthMode() { return 'full-width'; }
|
|
1358
|
+
/** @deprecated Use {@link ActionParams}. */
|
|
1359
|
+
get actionParams() {
|
|
1360
|
+
return this.ActionParams;
|
|
1361
|
+
}
|
|
1362
|
+
/** @deprecated Use {@link ActionParams}. */
|
|
1363
|
+
set actionParams(value) {
|
|
1364
|
+
this.ActionParams = value;
|
|
1365
|
+
}
|
|
1366
|
+
/** @deprecated Use {@link ResultCodes}. */
|
|
1367
|
+
get resultCodes() {
|
|
1368
|
+
return this.ResultCodes;
|
|
1369
|
+
}
|
|
1370
|
+
/** @deprecated Use {@link ResultCodes}. */
|
|
1371
|
+
set resultCodes(value) {
|
|
1372
|
+
this.ResultCodes = value;
|
|
1373
|
+
}
|
|
1374
|
+
/** @deprecated Use {@link RecentExecutions}. */
|
|
1375
|
+
get recentExecutions() {
|
|
1376
|
+
return this.RecentExecutions;
|
|
1377
|
+
}
|
|
1378
|
+
/** @deprecated Use {@link RecentExecutions}. */
|
|
1379
|
+
set recentExecutions(value) {
|
|
1380
|
+
this.RecentExecutions = value;
|
|
1381
|
+
}
|
|
1382
|
+
/** @deprecated Use {@link ActionLibraries}. */
|
|
1383
|
+
get actionLibraries() {
|
|
1384
|
+
return this.ActionLibraries;
|
|
1385
|
+
}
|
|
1386
|
+
/** @deprecated Use {@link ActionLibraries}. */
|
|
1387
|
+
set actionLibraries(value) {
|
|
1388
|
+
this.ActionLibraries = value;
|
|
1389
|
+
}
|
|
1390
|
+
/** @deprecated Use {@link IsLoadingParams}. */
|
|
1391
|
+
get isLoadingParams() {
|
|
1392
|
+
return this.IsLoadingParams;
|
|
1393
|
+
}
|
|
1394
|
+
/** @deprecated Use {@link IsLoadingParams}. */
|
|
1395
|
+
set isLoadingParams(value) {
|
|
1396
|
+
this.IsLoadingParams = value;
|
|
1397
|
+
}
|
|
1398
|
+
/** @deprecated Use {@link IsLoadingResultCodes}. */
|
|
1399
|
+
get isLoadingResultCodes() {
|
|
1400
|
+
return this.IsLoadingResultCodes;
|
|
1401
|
+
}
|
|
1402
|
+
/** @deprecated Use {@link IsLoadingResultCodes}. */
|
|
1403
|
+
set isLoadingResultCodes(value) {
|
|
1404
|
+
this.IsLoadingResultCodes = value;
|
|
1405
|
+
}
|
|
1406
|
+
/** @deprecated Use {@link IsLoadingExecutions}. */
|
|
1407
|
+
get isLoadingExecutions() {
|
|
1408
|
+
return this.IsLoadingExecutions;
|
|
1409
|
+
}
|
|
1410
|
+
/** @deprecated Use {@link IsLoadingExecutions}. */
|
|
1411
|
+
set isLoadingExecutions(value) {
|
|
1412
|
+
this.IsLoadingExecutions = value;
|
|
1413
|
+
}
|
|
1414
|
+
/** @deprecated Use {@link IsLoadingLibraries}. */
|
|
1415
|
+
get isLoadingLibraries() {
|
|
1416
|
+
return this.IsLoadingLibraries;
|
|
1417
|
+
}
|
|
1418
|
+
/** @deprecated Use {@link IsLoadingLibraries}. */
|
|
1419
|
+
set isLoadingLibraries(value) {
|
|
1420
|
+
this.IsLoadingLibraries = value;
|
|
1421
|
+
}
|
|
1422
|
+
/** @deprecated Use {@link ExpandedSections}. */
|
|
1423
|
+
get expandedSections() {
|
|
1424
|
+
return this.ExpandedSections;
|
|
1425
|
+
}
|
|
1426
|
+
/** @deprecated Use {@link ExpandedSections}. */
|
|
1427
|
+
set expandedSections(value) {
|
|
1428
|
+
this.ExpandedSections = value;
|
|
1429
|
+
}
|
|
1430
|
+
/** @deprecated Use {@link ShowTestHarness}. */
|
|
1431
|
+
get showTestHarness() {
|
|
1432
|
+
return this.ShowTestHarness;
|
|
1433
|
+
}
|
|
1434
|
+
/** @deprecated Use {@link ShowTestHarness}. */
|
|
1435
|
+
set showTestHarness(value) {
|
|
1436
|
+
this.ShowTestHarness = value;
|
|
1437
|
+
}
|
|
1438
|
+
/** @deprecated Use {@link ExecutionStats}. */
|
|
1439
|
+
get executionStats() {
|
|
1440
|
+
return this.ExecutionStats;
|
|
1441
|
+
}
|
|
1442
|
+
/** @deprecated Use {@link ExecutionStats}. */
|
|
1443
|
+
set executionStats(value) {
|
|
1444
|
+
this.ExecutionStats = value;
|
|
1445
|
+
}
|
|
1446
|
+
/** @deprecated Use {@link CodeLanguage}. */
|
|
1447
|
+
get codeLanguage() {
|
|
1448
|
+
return this.CodeLanguage;
|
|
1449
|
+
}
|
|
1450
|
+
/** @deprecated Use {@link CodeLanguage}. */
|
|
1451
|
+
set codeLanguage(value) {
|
|
1452
|
+
this.CodeLanguage = value;
|
|
1453
|
+
}
|
|
1454
|
+
/** @deprecated Use {@link ShowCodeComments}. */
|
|
1455
|
+
get showCodeComments() {
|
|
1456
|
+
return this.ShowCodeComments;
|
|
1457
|
+
}
|
|
1458
|
+
/** @deprecated Use {@link ShowCodeComments}. */
|
|
1459
|
+
set showCodeComments(value) {
|
|
1460
|
+
this.ShowCodeComments = value;
|
|
1461
|
+
}
|
|
1354
1462
|
async ngOnInit() {
|
|
1355
1463
|
await super.ngOnInit();
|
|
1356
1464
|
if (this.record?.IsSaved) {
|
|
@@ -1478,7 +1586,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1478
1586
|
}
|
|
1479
1587
|
}
|
|
1480
1588
|
async loadActionParams() {
|
|
1481
|
-
this.
|
|
1589
|
+
this.IsLoadingParams = true;
|
|
1482
1590
|
try {
|
|
1483
1591
|
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
1484
1592
|
const result = await rv.RunView({
|
|
@@ -1488,36 +1596,36 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1488
1596
|
ResultType: 'entity_object' // This ensures we get proper entity instances
|
|
1489
1597
|
});
|
|
1490
1598
|
if (result.Success) {
|
|
1491
|
-
this.
|
|
1599
|
+
this.ActionParams = result.Results || [];
|
|
1492
1600
|
// Update cached filtered params - trim and lowercase Type values to handle any whitespace and case
|
|
1493
|
-
this._inputParams = this.
|
|
1601
|
+
this._inputParams = this.ActionParams.filter(p => {
|
|
1494
1602
|
const type = p.Type?.trim().toLowerCase();
|
|
1495
1603
|
return type === 'input' || type === 'both';
|
|
1496
1604
|
});
|
|
1497
|
-
this._outputParams = this.
|
|
1605
|
+
this._outputParams = this.ActionParams.filter(p => {
|
|
1498
1606
|
const type = p.Type?.trim().toLowerCase();
|
|
1499
1607
|
return type === 'output' || type === 'both';
|
|
1500
1608
|
});
|
|
1501
1609
|
}
|
|
1502
1610
|
else {
|
|
1503
1611
|
// Failed to load action params
|
|
1504
|
-
this.
|
|
1612
|
+
this.ActionParams = [];
|
|
1505
1613
|
this._inputParams = [];
|
|
1506
1614
|
this._outputParams = [];
|
|
1507
1615
|
}
|
|
1508
1616
|
}
|
|
1509
1617
|
catch (error) {
|
|
1510
1618
|
// Error loading action params
|
|
1511
|
-
this.
|
|
1619
|
+
this.ActionParams = [];
|
|
1512
1620
|
this._inputParams = [];
|
|
1513
1621
|
this._outputParams = [];
|
|
1514
1622
|
}
|
|
1515
1623
|
finally {
|
|
1516
|
-
this.
|
|
1624
|
+
this.IsLoadingParams = false;
|
|
1517
1625
|
}
|
|
1518
1626
|
}
|
|
1519
1627
|
async loadResultCodes() {
|
|
1520
|
-
this.
|
|
1628
|
+
this.IsLoadingResultCodes = true;
|
|
1521
1629
|
try {
|
|
1522
1630
|
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
1523
1631
|
const result = await rv.RunView({
|
|
@@ -1527,19 +1635,19 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1527
1635
|
ResultType: 'entity_object' // This ensures we get proper entity instances
|
|
1528
1636
|
});
|
|
1529
1637
|
if (result.Success) {
|
|
1530
|
-
this.
|
|
1638
|
+
this.ResultCodes = result.Results || [];
|
|
1531
1639
|
}
|
|
1532
1640
|
else {
|
|
1533
1641
|
// Failed to load result codes
|
|
1534
|
-
this.
|
|
1642
|
+
this.ResultCodes = [];
|
|
1535
1643
|
}
|
|
1536
1644
|
}
|
|
1537
1645
|
catch (error) {
|
|
1538
1646
|
// Error loading result codes
|
|
1539
|
-
this.
|
|
1647
|
+
this.ResultCodes = [];
|
|
1540
1648
|
}
|
|
1541
1649
|
finally {
|
|
1542
|
-
this.
|
|
1650
|
+
this.IsLoadingResultCodes = false;
|
|
1543
1651
|
}
|
|
1544
1652
|
}
|
|
1545
1653
|
/**
|
|
@@ -1578,7 +1686,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1578
1686
|
const codes = (codeResult.Success ? codeResult.Results : []);
|
|
1579
1687
|
// Single synchronous commit — all template-observable arrays
|
|
1580
1688
|
// swap at once, avoiding interleaved CD passes.
|
|
1581
|
-
this.
|
|
1689
|
+
this.ActionParams = params;
|
|
1582
1690
|
this._inputParams = params.filter((p) => {
|
|
1583
1691
|
const type = p.Type?.trim().toLowerCase();
|
|
1584
1692
|
return type === 'input' || type === 'both';
|
|
@@ -1587,7 +1695,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1587
1695
|
const type = p.Type?.trim().toLowerCase();
|
|
1588
1696
|
return type === 'output' || type === 'both';
|
|
1589
1697
|
});
|
|
1590
|
-
this.
|
|
1698
|
+
this.ResultCodes = codes;
|
|
1591
1699
|
this.cdr.detectChanges();
|
|
1592
1700
|
}
|
|
1593
1701
|
catch (e) {
|
|
@@ -1595,7 +1703,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1595
1703
|
}
|
|
1596
1704
|
}
|
|
1597
1705
|
async loadRecentExecutions() {
|
|
1598
|
-
this.
|
|
1706
|
+
this.IsLoadingExecutions = true;
|
|
1599
1707
|
try {
|
|
1600
1708
|
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
1601
1709
|
const result = await rv.RunView({
|
|
@@ -1605,23 +1713,23 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1605
1713
|
MaxRows: 10
|
|
1606
1714
|
});
|
|
1607
1715
|
if (result.Success) {
|
|
1608
|
-
this.
|
|
1716
|
+
this.RecentExecutions = result.Results || [];
|
|
1609
1717
|
}
|
|
1610
1718
|
else {
|
|
1611
1719
|
// Failed to load executions
|
|
1612
|
-
this.
|
|
1720
|
+
this.RecentExecutions = [];
|
|
1613
1721
|
}
|
|
1614
1722
|
}
|
|
1615
1723
|
catch (error) {
|
|
1616
1724
|
// Error loading executions
|
|
1617
|
-
this.
|
|
1725
|
+
this.RecentExecutions = [];
|
|
1618
1726
|
}
|
|
1619
1727
|
finally {
|
|
1620
|
-
this.
|
|
1728
|
+
this.IsLoadingExecutions = false;
|
|
1621
1729
|
}
|
|
1622
1730
|
}
|
|
1623
1731
|
async loadActionLibraries() {
|
|
1624
|
-
this.
|
|
1732
|
+
this.IsLoadingLibraries = true;
|
|
1625
1733
|
try {
|
|
1626
1734
|
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
1627
1735
|
const result = await rv.RunView({
|
|
@@ -1630,10 +1738,10 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1630
1738
|
OrderBy: 'Library'
|
|
1631
1739
|
});
|
|
1632
1740
|
if (result.Success) {
|
|
1633
|
-
this.
|
|
1741
|
+
this.ActionLibraries = result.Results || [];
|
|
1634
1742
|
// Load library details
|
|
1635
|
-
if (this.
|
|
1636
|
-
const libraryIds = this.
|
|
1743
|
+
if (this.ActionLibraries.length > 0) {
|
|
1744
|
+
const libraryIds = this.ActionLibraries.map(al => al.LibraryID).filter(id => id);
|
|
1637
1745
|
const md = this.ProviderToUse;
|
|
1638
1746
|
this.libraries = [];
|
|
1639
1747
|
for (const libId of libraryIds) {
|
|
@@ -1650,7 +1758,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1650
1758
|
// Error loading libraries
|
|
1651
1759
|
}
|
|
1652
1760
|
finally {
|
|
1653
|
-
this.
|
|
1761
|
+
this.IsLoadingLibraries = false;
|
|
1654
1762
|
}
|
|
1655
1763
|
}
|
|
1656
1764
|
async loadExecutionStats() {
|
|
@@ -1664,14 +1772,14 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1664
1772
|
});
|
|
1665
1773
|
if (result.Success && result.Results && result.Results.length > 0) {
|
|
1666
1774
|
const allExecutions = result.Results;
|
|
1667
|
-
this.
|
|
1775
|
+
this.ExecutionStats.totalRuns = allExecutions.length;
|
|
1668
1776
|
// Calculate success rate based on result codes
|
|
1669
1777
|
const successfulRuns = allExecutions.filter(e => {
|
|
1670
|
-
const resultCode = this.
|
|
1778
|
+
const resultCode = this.ResultCodes.find(rc => rc.ResultCode === e.ResultCode);
|
|
1671
1779
|
return resultCode?.IsSuccess || false;
|
|
1672
1780
|
});
|
|
1673
|
-
this.
|
|
1674
|
-
? (successfulRuns.length / this.
|
|
1781
|
+
this.ExecutionStats.successRate = this.ExecutionStats.totalRuns > 0
|
|
1782
|
+
? (successfulRuns.length / this.ExecutionStats.totalRuns) * 100
|
|
1675
1783
|
: 0;
|
|
1676
1784
|
// Calculate average duration from ALL completed executions
|
|
1677
1785
|
const completedExecutions = allExecutions.filter(e => e.StartedAt && e.EndedAt);
|
|
@@ -1681,10 +1789,10 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1681
1789
|
// Use absolute value to handle any swapped dates
|
|
1682
1790
|
return sum + Math.abs(duration);
|
|
1683
1791
|
}, 0);
|
|
1684
|
-
this.
|
|
1792
|
+
this.ExecutionStats.avgDuration = totalDuration / completedExecutions.length;
|
|
1685
1793
|
}
|
|
1686
1794
|
// Get last run date from most recent execution
|
|
1687
|
-
this.
|
|
1795
|
+
this.ExecutionStats.lastRun = new Date(allExecutions[0].StartedAt);
|
|
1688
1796
|
}
|
|
1689
1797
|
}
|
|
1690
1798
|
catch (error) {
|
|
@@ -1692,7 +1800,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1692
1800
|
}
|
|
1693
1801
|
}
|
|
1694
1802
|
// UI Helper Methods
|
|
1695
|
-
|
|
1803
|
+
GetStatusColor() {
|
|
1696
1804
|
switch (this.record.Status) {
|
|
1697
1805
|
case 'Active': return 'var(--mj-status-success)';
|
|
1698
1806
|
case 'Pending': return 'var(--mj-status-warning)';
|
|
@@ -1700,7 +1808,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1700
1808
|
default: return 'var(--mj-text-muted)';
|
|
1701
1809
|
}
|
|
1702
1810
|
}
|
|
1703
|
-
|
|
1811
|
+
/** @deprecated Use {@link GetStatusColor}. */
|
|
1812
|
+
getStatusColor() {
|
|
1813
|
+
return this.GetStatusColor();
|
|
1814
|
+
}
|
|
1815
|
+
GetStatusIcon() {
|
|
1704
1816
|
switch (this.record.Status) {
|
|
1705
1817
|
case 'Active': return 'fa-check-circle';
|
|
1706
1818
|
case 'Pending': return 'fa-clock';
|
|
@@ -1708,7 +1820,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1708
1820
|
default: return 'fa-question-circle';
|
|
1709
1821
|
}
|
|
1710
1822
|
}
|
|
1711
|
-
|
|
1823
|
+
/** @deprecated Use {@link GetStatusIcon}. */
|
|
1824
|
+
getStatusIcon() {
|
|
1825
|
+
return this.GetStatusIcon();
|
|
1826
|
+
}
|
|
1827
|
+
GetTypeColor() {
|
|
1712
1828
|
switch (this.record.Type) {
|
|
1713
1829
|
case 'Runtime':
|
|
1714
1830
|
return 'var(--mj-status-warning)';
|
|
@@ -1718,7 +1834,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1718
1834
|
return 'var(--mj-brand-primary)';
|
|
1719
1835
|
}
|
|
1720
1836
|
}
|
|
1721
|
-
|
|
1837
|
+
/** @deprecated Use {@link GetTypeColor}. */
|
|
1838
|
+
getTypeColor() {
|
|
1839
|
+
return this.GetTypeColor();
|
|
1840
|
+
}
|
|
1841
|
+
GetTypeIcon() {
|
|
1722
1842
|
switch (this.record.Type) {
|
|
1723
1843
|
case 'Runtime': return 'fa-wand-magic-sparkles';
|
|
1724
1844
|
case 'Generated': return 'fa-robot';
|
|
@@ -1726,6 +1846,10 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1726
1846
|
default: return 'fa-code';
|
|
1727
1847
|
}
|
|
1728
1848
|
}
|
|
1849
|
+
/** @deprecated Use {@link GetTypeIcon}. */
|
|
1850
|
+
getTypeIcon() {
|
|
1851
|
+
return this.GetTypeIcon();
|
|
1852
|
+
}
|
|
1729
1853
|
// =====================================================================
|
|
1730
1854
|
// Runtime Actions — approval-UI helpers (Phase 1i)
|
|
1731
1855
|
//
|
|
@@ -1735,61 +1859,97 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1735
1859
|
// raw JSON string. The approval panel uses these to surface the
|
|
1736
1860
|
// permission set an approver is implicitly blessing.
|
|
1737
1861
|
// =====================================================================
|
|
1738
|
-
get
|
|
1862
|
+
get IsRuntimeAction() {
|
|
1739
1863
|
return this.record?.Type === 'Runtime';
|
|
1740
1864
|
}
|
|
1741
|
-
|
|
1742
|
-
|
|
1865
|
+
/** @deprecated Use {@link IsRuntimeAction}. */
|
|
1866
|
+
get isRuntimeAction() {
|
|
1867
|
+
return this.IsRuntimeAction;
|
|
1868
|
+
}
|
|
1869
|
+
get RuntimeConfig() {
|
|
1870
|
+
if (!this.IsRuntimeAction)
|
|
1743
1871
|
return null;
|
|
1744
1872
|
const accessor = this.record;
|
|
1745
1873
|
return accessor.RuntimeActionConfigurationObject ?? null;
|
|
1746
1874
|
}
|
|
1875
|
+
/** @deprecated Use {@link RuntimeConfig}. */
|
|
1876
|
+
get runtimeConfig() {
|
|
1877
|
+
return this.RuntimeConfig;
|
|
1878
|
+
}
|
|
1879
|
+
GetAllowedEntities() {
|
|
1880
|
+
return this.RuntimeConfig?.permissions?.allowedEntities ?? [];
|
|
1881
|
+
}
|
|
1882
|
+
/** @deprecated Use {@link GetAllowedEntities}. */
|
|
1747
1883
|
getAllowedEntities() {
|
|
1748
|
-
return this.
|
|
1884
|
+
return this.GetAllowedEntities();
|
|
1885
|
+
}
|
|
1886
|
+
GetAllowedActions() {
|
|
1887
|
+
return this.RuntimeConfig?.permissions?.allowedActions ?? [];
|
|
1749
1888
|
}
|
|
1889
|
+
/** @deprecated Use {@link GetAllowedActions}. */
|
|
1750
1890
|
getAllowedActions() {
|
|
1751
|
-
return this.
|
|
1891
|
+
return this.GetAllowedActions();
|
|
1752
1892
|
}
|
|
1893
|
+
GetAllowedAgents() {
|
|
1894
|
+
return this.RuntimeConfig?.permissions?.allowedAgents ?? [];
|
|
1895
|
+
}
|
|
1896
|
+
/** @deprecated Use {@link GetAllowedAgents}. */
|
|
1753
1897
|
getAllowedAgents() {
|
|
1754
|
-
return this.
|
|
1898
|
+
return this.GetAllowedAgents();
|
|
1899
|
+
}
|
|
1900
|
+
GetRequestedLibraries() {
|
|
1901
|
+
return this.RuntimeConfig?.sandbox?.additionalLibraries ?? [];
|
|
1755
1902
|
}
|
|
1903
|
+
/** @deprecated Use {@link GetRequestedLibraries}. */
|
|
1756
1904
|
getRequestedLibraries() {
|
|
1757
|
-
return this.
|
|
1905
|
+
return this.GetRequestedLibraries();
|
|
1758
1906
|
}
|
|
1759
|
-
|
|
1760
|
-
const limits = this.
|
|
1907
|
+
GetRuntimeLimits() {
|
|
1908
|
+
const limits = this.RuntimeConfig?.limits ?? {};
|
|
1761
1909
|
return {
|
|
1762
1910
|
maxMemoryMB: limits.maxMemoryMB ?? 128,
|
|
1763
1911
|
maxBridgeCalls: limits.maxBridgeCalls ?? 100
|
|
1764
1912
|
};
|
|
1765
1913
|
}
|
|
1766
|
-
|
|
1767
|
-
|
|
1914
|
+
/** @deprecated Use {@link GetRuntimeLimits}. */
|
|
1915
|
+
getRuntimeLimits() {
|
|
1916
|
+
return this.GetRuntimeLimits();
|
|
1917
|
+
}
|
|
1918
|
+
GetRuntimeConfigSummary() {
|
|
1919
|
+
const perms = this.RuntimeConfig?.permissions;
|
|
1768
1920
|
if (!perms)
|
|
1769
1921
|
return 'No permissions declared';
|
|
1770
1922
|
const e = perms.allowedEntities?.length ?? 0;
|
|
1771
1923
|
const a = perms.allowedActions?.length ?? 0;
|
|
1772
1924
|
const ag = perms.allowedAgents?.length ?? 0;
|
|
1773
|
-
const wildcards = this.
|
|
1925
|
+
const wildcards = this.GetWildcardFlags();
|
|
1774
1926
|
const parts = [];
|
|
1775
1927
|
parts.push(wildcards.entity ? 'ANY entity' : `${e} entit${e === 1 ? 'y' : 'ies'}`);
|
|
1776
1928
|
parts.push(wildcards.action ? 'ANY action' : `${a} action${a === 1 ? '' : 's'}`);
|
|
1777
1929
|
parts.push(wildcards.agent ? 'ANY agent' : `${ag} agent${ag === 1 ? '' : 's'}`);
|
|
1778
1930
|
return parts.join(', ');
|
|
1779
1931
|
}
|
|
1932
|
+
/** @deprecated Use {@link GetRuntimeConfigSummary}. */
|
|
1933
|
+
getRuntimeConfigSummary() {
|
|
1934
|
+
return this.GetRuntimeConfigSummary();
|
|
1935
|
+
}
|
|
1780
1936
|
/**
|
|
1781
1937
|
* Returns which wildcard permission flags are set on the runtime
|
|
1782
1938
|
* configuration. Any `true` flag is a prominent security-relevant
|
|
1783
1939
|
* concession to the action — the approval UI renders a warning banner
|
|
1784
1940
|
* when any of these are on so the approver sees the blast radius.
|
|
1785
1941
|
*/
|
|
1786
|
-
|
|
1787
|
-
const perms = this.
|
|
1942
|
+
GetWildcardFlags() {
|
|
1943
|
+
const perms = this.RuntimeConfig?.permissions;
|
|
1788
1944
|
const entity = perms?.allowAnyEntity === true;
|
|
1789
1945
|
const action = perms?.allowAnyAction === true;
|
|
1790
1946
|
const agent = perms?.allowAnyAgent === true;
|
|
1791
1947
|
return { entity, action, agent, any: entity || action || agent };
|
|
1792
1948
|
}
|
|
1949
|
+
/** @deprecated Use {@link GetWildcardFlags}. */
|
|
1950
|
+
getWildcardFlags() {
|
|
1951
|
+
return this.GetWildcardFlags();
|
|
1952
|
+
}
|
|
1793
1953
|
/**
|
|
1794
1954
|
* Both Generated and Runtime actions carry executable code gated by
|
|
1795
1955
|
* `CodeApprovalStatus` — the RuntimeActionExecutor refuses to run
|
|
@@ -1802,10 +1962,14 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1802
1962
|
* is the standard fix for NG0100 when a conditional's expression
|
|
1803
1963
|
* depends on a method call.
|
|
1804
1964
|
*/
|
|
1805
|
-
get
|
|
1965
|
+
get HasCodeApproval() {
|
|
1806
1966
|
return this.record?.Type === 'Generated' || this.record?.Type === 'Runtime';
|
|
1807
1967
|
}
|
|
1808
|
-
|
|
1968
|
+
/** @deprecated Use {@link HasCodeApproval}. */
|
|
1969
|
+
get hasCodeApproval() {
|
|
1970
|
+
return this.HasCodeApproval;
|
|
1971
|
+
}
|
|
1972
|
+
GetApprovalStatusColor() {
|
|
1809
1973
|
switch (this.record.CodeApprovalStatus) {
|
|
1810
1974
|
case 'Approved': return 'var(--mj-status-success)';
|
|
1811
1975
|
case 'Pending': return 'var(--mj-status-warning)';
|
|
@@ -1813,7 +1977,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1813
1977
|
default: return 'var(--mj-text-muted)';
|
|
1814
1978
|
}
|
|
1815
1979
|
}
|
|
1816
|
-
|
|
1980
|
+
/** @deprecated Use {@link GetApprovalStatusColor}. */
|
|
1981
|
+
getApprovalStatusColor() {
|
|
1982
|
+
return this.GetApprovalStatusColor();
|
|
1983
|
+
}
|
|
1984
|
+
GetApprovalStatusIcon() {
|
|
1817
1985
|
switch (this.record.CodeApprovalStatus) {
|
|
1818
1986
|
case 'Approved': return 'fa-check-circle';
|
|
1819
1987
|
case 'Pending': return 'fa-clock';
|
|
@@ -1821,7 +1989,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1821
1989
|
default: return 'fa-question-circle';
|
|
1822
1990
|
}
|
|
1823
1991
|
}
|
|
1824
|
-
|
|
1992
|
+
/** @deprecated Use {@link GetApprovalStatusIcon}. */
|
|
1993
|
+
getApprovalStatusIcon() {
|
|
1994
|
+
return this.GetApprovalStatusIcon();
|
|
1995
|
+
}
|
|
1996
|
+
GetParamTypeIcon(type) {
|
|
1825
1997
|
switch (type) {
|
|
1826
1998
|
case 'Input': return 'fa-sign-in-alt';
|
|
1827
1999
|
case 'Output': return 'fa-sign-out-alt';
|
|
@@ -1829,7 +2001,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1829
2001
|
default: return 'fa-question';
|
|
1830
2002
|
}
|
|
1831
2003
|
}
|
|
1832
|
-
|
|
2004
|
+
/** @deprecated Use {@link GetParamTypeIcon}. */
|
|
2005
|
+
getParamTypeIcon(type) {
|
|
2006
|
+
return this.GetParamTypeIcon(type);
|
|
2007
|
+
}
|
|
2008
|
+
GetParamTypeColor(type) {
|
|
1833
2009
|
switch (type) {
|
|
1834
2010
|
case 'Input': return 'var(--mj-brand-primary)';
|
|
1835
2011
|
case 'Output': return 'var(--mj-status-success)';
|
|
@@ -1837,6 +2013,10 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1837
2013
|
default: return 'var(--mj-text-muted)';
|
|
1838
2014
|
}
|
|
1839
2015
|
}
|
|
2016
|
+
/** @deprecated Use {@link GetParamTypeColor}. */
|
|
2017
|
+
getParamTypeColor(type) {
|
|
2018
|
+
return this.GetParamTypeColor(type);
|
|
2019
|
+
}
|
|
1840
2020
|
formatDuration(ms) {
|
|
1841
2021
|
if (ms < 1000)
|
|
1842
2022
|
return `${ms}ms`;
|
|
@@ -1861,37 +2041,61 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1861
2041
|
return d.toLocaleDateString();
|
|
1862
2042
|
}
|
|
1863
2043
|
// Navigation
|
|
1864
|
-
|
|
2044
|
+
NavigateToEntity(entityName, recordId) {
|
|
1865
2045
|
if (!recordId)
|
|
1866
2046
|
return;
|
|
1867
2047
|
SharedService.Instance.OpenEntityRecord(entityName, CompositeKey.FromURLSegment(this.ProviderToUse.EntityByName(entityName), recordId));
|
|
1868
2048
|
}
|
|
1869
|
-
|
|
2049
|
+
/** @deprecated Use {@link NavigateToEntity}. */
|
|
2050
|
+
navigateToEntity(entityName, recordId) {
|
|
2051
|
+
return this.NavigateToEntity(entityName, recordId);
|
|
2052
|
+
}
|
|
2053
|
+
NavigateToCategory() {
|
|
1870
2054
|
if (this.record.CategoryID) {
|
|
1871
|
-
this.
|
|
2055
|
+
this.NavigateToEntity('MJ: Action Categories', this.record.CategoryID);
|
|
1872
2056
|
}
|
|
1873
2057
|
}
|
|
2058
|
+
/** @deprecated Use {@link NavigateToCategory}. */
|
|
2059
|
+
navigateToCategory() {
|
|
2060
|
+
return this.NavigateToCategory();
|
|
2061
|
+
}
|
|
2062
|
+
NavigateToExecution(executionId) {
|
|
2063
|
+
this.NavigateToEntity('MJ: Action Execution Logs', executionId);
|
|
2064
|
+
}
|
|
2065
|
+
/** @deprecated Use {@link NavigateToExecution}. */
|
|
1874
2066
|
navigateToExecution(executionId) {
|
|
1875
|
-
this.
|
|
2067
|
+
return this.NavigateToExecution(executionId);
|
|
2068
|
+
}
|
|
2069
|
+
NavigateToLibrary(libraryId) {
|
|
2070
|
+
this.NavigateToEntity('MJ: Libraries', libraryId);
|
|
1876
2071
|
}
|
|
2072
|
+
/** @deprecated Use {@link NavigateToLibrary}. */
|
|
1877
2073
|
navigateToLibrary(libraryId) {
|
|
1878
|
-
this.
|
|
2074
|
+
return this.NavigateToLibrary(libraryId);
|
|
1879
2075
|
}
|
|
1880
2076
|
// Actions
|
|
1881
|
-
|
|
2077
|
+
OpenTestHarness() {
|
|
1882
2078
|
if (!this.record || !this.record.ID || !this.record.IsSaved || this.record.Status !== 'Active') {
|
|
1883
2079
|
// Cannot open test harness: Action must be saved and active
|
|
1884
2080
|
return;
|
|
1885
2081
|
}
|
|
1886
|
-
this.
|
|
2082
|
+
this.ShowTestHarness = true;
|
|
2083
|
+
}
|
|
2084
|
+
/** @deprecated Use {@link OpenTestHarness}. */
|
|
2085
|
+
openTestHarness() {
|
|
2086
|
+
return this.OpenTestHarness();
|
|
1887
2087
|
}
|
|
1888
2088
|
/**
|
|
1889
2089
|
* Event handler for test harness visibility changes
|
|
1890
2090
|
*/
|
|
2091
|
+
OnTestHarnessVisibilityChanged(isVisible) {
|
|
2092
|
+
this.ShowTestHarness = isVisible;
|
|
2093
|
+
}
|
|
2094
|
+
/** @deprecated Use {@link OnTestHarnessVisibilityChanged}. */
|
|
1891
2095
|
onTestHarnessVisibilityChanged(isVisible) {
|
|
1892
|
-
this.
|
|
2096
|
+
return this.OnTestHarnessVisibilityChanged(isVisible);
|
|
1893
2097
|
}
|
|
1894
|
-
async
|
|
2098
|
+
async RegenerateCode() {
|
|
1895
2099
|
if (!this.EditMode)
|
|
1896
2100
|
return;
|
|
1897
2101
|
this.record.ForceCodeGeneration = true;
|
|
@@ -1899,10 +2103,18 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1899
2103
|
// Reload related data after save
|
|
1900
2104
|
await this.loadResultCodes();
|
|
1901
2105
|
}
|
|
2106
|
+
/** @deprecated Use {@link RegenerateCode}. */
|
|
2107
|
+
async regenerateCode() {
|
|
2108
|
+
return this.RegenerateCode();
|
|
2109
|
+
}
|
|
2110
|
+
ToggleCodeComments() {
|
|
2111
|
+
this.ShowCodeComments = !this.ShowCodeComments;
|
|
2112
|
+
}
|
|
2113
|
+
/** @deprecated Use {@link ToggleCodeComments}. */
|
|
1902
2114
|
toggleCodeComments() {
|
|
1903
|
-
|
|
2115
|
+
return this.ToggleCodeComments();
|
|
1904
2116
|
}
|
|
1905
|
-
async
|
|
2117
|
+
async ApproveCode() {
|
|
1906
2118
|
if (!this.EditMode)
|
|
1907
2119
|
return;
|
|
1908
2120
|
this.record.CodeApprovalStatus = 'Approved';
|
|
@@ -1910,13 +2122,21 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1910
2122
|
// Note: CodeApprovedByUserID would be set server-side
|
|
1911
2123
|
await this.record.Save();
|
|
1912
2124
|
}
|
|
1913
|
-
|
|
2125
|
+
/** @deprecated Use {@link ApproveCode}. */
|
|
2126
|
+
async approveCode() {
|
|
2127
|
+
return this.ApproveCode();
|
|
2128
|
+
}
|
|
2129
|
+
async RejectCode() {
|
|
1914
2130
|
if (!this.EditMode)
|
|
1915
2131
|
return;
|
|
1916
2132
|
this.record.CodeApprovalStatus = 'Rejected';
|
|
1917
2133
|
await this.record.Save();
|
|
1918
2134
|
}
|
|
1919
|
-
|
|
2135
|
+
/** @deprecated Use {@link RejectCode}. */
|
|
2136
|
+
async rejectCode() {
|
|
2137
|
+
return this.RejectCode();
|
|
2138
|
+
}
|
|
2139
|
+
async CopyToClipboard(text) {
|
|
1920
2140
|
try {
|
|
1921
2141
|
await navigator.clipboard.writeText(text);
|
|
1922
2142
|
// Could add a notification here
|
|
@@ -1925,8 +2145,12 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1925
2145
|
// Failed to copy
|
|
1926
2146
|
}
|
|
1927
2147
|
}
|
|
2148
|
+
/** @deprecated Use {@link CopyToClipboard}. */
|
|
2149
|
+
async copyToClipboard(text) {
|
|
2150
|
+
return this.CopyToClipboard(text);
|
|
2151
|
+
}
|
|
1928
2152
|
// Helper methods for template filtering
|
|
1929
|
-
|
|
2153
|
+
GetInputParams() {
|
|
1930
2154
|
// Sort by IsRequired (required first) then by Name
|
|
1931
2155
|
return this._inputParams.sort((a, b) => {
|
|
1932
2156
|
if (a.IsRequired === b.IsRequired) {
|
|
@@ -1935,21 +2159,33 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1935
2159
|
return a.IsRequired ? -1 : 1;
|
|
1936
2160
|
});
|
|
1937
2161
|
}
|
|
1938
|
-
|
|
2162
|
+
/** @deprecated Use {@link GetInputParams}. */
|
|
2163
|
+
getInputParams() {
|
|
2164
|
+
return this.GetInputParams();
|
|
2165
|
+
}
|
|
2166
|
+
GetOutputParams() {
|
|
1939
2167
|
// Sort by Name
|
|
1940
2168
|
return this._outputParams.sort((a, b) => (a.Name || '').localeCompare(b.Name || ''));
|
|
1941
2169
|
}
|
|
1942
|
-
|
|
2170
|
+
/** @deprecated Use {@link GetOutputParams}. */
|
|
2171
|
+
getOutputParams() {
|
|
2172
|
+
return this.GetOutputParams();
|
|
2173
|
+
}
|
|
2174
|
+
IsExecutionSuccess(execution) {
|
|
1943
2175
|
const code = execution.ResultCode?.toLowerCase();
|
|
1944
2176
|
// First check if we have a result code definition
|
|
1945
|
-
const resultCode = this.
|
|
2177
|
+
const resultCode = this.ResultCodes.find(rc => rc.ResultCode === execution.ResultCode);
|
|
1946
2178
|
if (resultCode) {
|
|
1947
2179
|
return resultCode.IsSuccess;
|
|
1948
2180
|
}
|
|
1949
2181
|
// Fallback to common success patterns if no result code defined
|
|
1950
2182
|
return code === 'success' || code === 'ok' || code === 'completed' || code === '200';
|
|
1951
2183
|
}
|
|
1952
|
-
|
|
2184
|
+
/** @deprecated Use {@link IsExecutionSuccess}. */
|
|
2185
|
+
isExecutionSuccess(execution) {
|
|
2186
|
+
return this.IsExecutionSuccess(execution);
|
|
2187
|
+
}
|
|
2188
|
+
GetExecutionDuration(execution) {
|
|
1953
2189
|
if (!execution.EndedAt)
|
|
1954
2190
|
return 0;
|
|
1955
2191
|
const startTime = new Date(execution.StartedAt).getTime();
|
|
@@ -1958,16 +2194,24 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1958
2194
|
// Return absolute value to handle timezone mismatches
|
|
1959
2195
|
return Math.abs(duration);
|
|
1960
2196
|
}
|
|
1961
|
-
|
|
1962
|
-
|
|
2197
|
+
/** @deprecated Use {@link GetExecutionDuration}. */
|
|
2198
|
+
getExecutionDuration(execution) {
|
|
2199
|
+
return this.GetExecutionDuration(execution);
|
|
2200
|
+
}
|
|
2201
|
+
GetSuccessRateColor() {
|
|
2202
|
+
const rate = this.ExecutionStats.successRate;
|
|
1963
2203
|
if (rate >= 80)
|
|
1964
2204
|
return 'var(--mj-status-success)';
|
|
1965
2205
|
if (rate >= 60)
|
|
1966
2206
|
return 'var(--mj-status-warning)';
|
|
1967
2207
|
return 'var(--mj-status-error)';
|
|
1968
2208
|
}
|
|
2209
|
+
/** @deprecated Use {@link GetSuccessRateColor}. */
|
|
2210
|
+
getSuccessRateColor() {
|
|
2211
|
+
return this.GetSuccessRateColor();
|
|
2212
|
+
}
|
|
1969
2213
|
// Parameter management methods
|
|
1970
|
-
async
|
|
2214
|
+
async AddParameter(type) {
|
|
1971
2215
|
if (!this.EditMode || !this.record.IsSaved)
|
|
1972
2216
|
return;
|
|
1973
2217
|
const md = this.ProviderToUse;
|
|
@@ -1993,7 +2237,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
1993
2237
|
// The dialog has already modified the newParam entity directly
|
|
1994
2238
|
// New entities are automatically dirty (IsSaved = false)
|
|
1995
2239
|
// Add to local array
|
|
1996
|
-
this.
|
|
2240
|
+
this.ActionParams.push(newParam);
|
|
1997
2241
|
// Add to pending records for saving
|
|
1998
2242
|
this.PendingRecords.push({
|
|
1999
2243
|
entityObject: newParam,
|
|
@@ -2005,7 +2249,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2005
2249
|
}
|
|
2006
2250
|
});
|
|
2007
2251
|
}
|
|
2008
|
-
|
|
2252
|
+
/** @deprecated Use {@link AddParameter}. */
|
|
2253
|
+
async addParameter(type) {
|
|
2254
|
+
return this.AddParameter(type);
|
|
2255
|
+
}
|
|
2256
|
+
async EditParameter(param) {
|
|
2009
2257
|
const dialogRef = this.dialogService.open({
|
|
2010
2258
|
content: ActionParamDialogComponent,
|
|
2011
2259
|
width: 500,
|
|
@@ -2034,18 +2282,26 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2034
2282
|
}
|
|
2035
2283
|
});
|
|
2036
2284
|
}
|
|
2037
|
-
|
|
2285
|
+
/** @deprecated Use {@link EditParameter}. */
|
|
2286
|
+
async editParameter(param) {
|
|
2287
|
+
return this.EditParameter(param);
|
|
2288
|
+
}
|
|
2289
|
+
OnParamClick(param, event) {
|
|
2038
2290
|
// Prevent event bubbling if clicking on edit/delete buttons
|
|
2039
2291
|
const target = event.target;
|
|
2040
2292
|
if (target.closest('.param-edit-btn') || target.closest('.param-delete-btn')) {
|
|
2041
2293
|
return;
|
|
2042
2294
|
}
|
|
2043
2295
|
// Show the parameter dialog
|
|
2044
|
-
this.
|
|
2296
|
+
this.EditParameter(param);
|
|
2297
|
+
}
|
|
2298
|
+
/** @deprecated Use {@link OnParamClick}. */
|
|
2299
|
+
onParamClick(param, event) {
|
|
2300
|
+
return this.OnParamClick(param, event);
|
|
2045
2301
|
}
|
|
2046
2302
|
async updateParamArrays() {
|
|
2047
2303
|
// Update cached filtered params - exclude deleted items
|
|
2048
|
-
const activeParams = this.
|
|
2304
|
+
const activeParams = this.ActionParams.filter(p => !this.paramsToDelete || !this.paramsToDelete.includes(p));
|
|
2049
2305
|
this._inputParams = activeParams.filter(p => {
|
|
2050
2306
|
const type = p.Type?.trim().toLowerCase();
|
|
2051
2307
|
return type === 'input' || type === 'both';
|
|
@@ -2073,7 +2329,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2073
2329
|
}
|
|
2074
2330
|
}
|
|
2075
2331
|
// Add action params that need saving
|
|
2076
|
-
for (const param of this.
|
|
2332
|
+
for (const param of this.ActionParams) {
|
|
2077
2333
|
if (!param.IsSaved || param.Dirty) {
|
|
2078
2334
|
// Check if not already in pending records
|
|
2079
2335
|
const exists = this.PendingRecords.some(pr => pr.entityObject === param);
|
|
@@ -2099,7 +2355,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2099
2355
|
}
|
|
2100
2356
|
}
|
|
2101
2357
|
// Add result codes that need saving
|
|
2102
|
-
for (const resultCode of this.
|
|
2358
|
+
for (const resultCode of this.ResultCodes) {
|
|
2103
2359
|
if (!resultCode.IsSaved || resultCode.Dirty) {
|
|
2104
2360
|
// Check if not already in pending records
|
|
2105
2361
|
const exists = this.PendingRecords.some(pr => pr.entityObject === resultCode);
|
|
@@ -2129,11 +2385,15 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2129
2385
|
* Gets the action's display icon
|
|
2130
2386
|
* Falls back to default cog icon if no IconClass is set
|
|
2131
2387
|
*/
|
|
2132
|
-
|
|
2388
|
+
GetActionIcon() {
|
|
2133
2389
|
return this.record?.IconClass || 'fa-solid fa-cog';
|
|
2134
2390
|
}
|
|
2391
|
+
/** @deprecated Use {@link GetActionIcon}. */
|
|
2392
|
+
getActionIcon() {
|
|
2393
|
+
return this.GetActionIcon();
|
|
2394
|
+
}
|
|
2135
2395
|
// Result Code management methods
|
|
2136
|
-
async
|
|
2396
|
+
async AddResultCode() {
|
|
2137
2397
|
if (!this.EditMode || !this.record.IsSaved)
|
|
2138
2398
|
return;
|
|
2139
2399
|
const md = this.ProviderToUse;
|
|
@@ -2155,7 +2415,7 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2155
2415
|
dialogRef.Result.subscribe(result => {
|
|
2156
2416
|
if (result && typeof result === 'object' && 'save' in result) {
|
|
2157
2417
|
// Add to local array
|
|
2158
|
-
this.
|
|
2418
|
+
this.ResultCodes.push(newResultCode);
|
|
2159
2419
|
// Add to pending records for saving
|
|
2160
2420
|
this.PendingRecords.push({
|
|
2161
2421
|
entityObject: newResultCode,
|
|
@@ -2165,7 +2425,11 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2165
2425
|
}
|
|
2166
2426
|
});
|
|
2167
2427
|
}
|
|
2168
|
-
|
|
2428
|
+
/** @deprecated Use {@link AddResultCode}. */
|
|
2429
|
+
async addResultCode() {
|
|
2430
|
+
return this.AddResultCode();
|
|
2431
|
+
}
|
|
2432
|
+
async EditResultCode(resultCode) {
|
|
2169
2433
|
const dialogRef = this.dialogService.open({
|
|
2170
2434
|
content: ActionResultCodeDialogComponent,
|
|
2171
2435
|
width: 500,
|
|
@@ -2191,25 +2455,33 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2191
2455
|
}
|
|
2192
2456
|
});
|
|
2193
2457
|
}
|
|
2194
|
-
|
|
2458
|
+
/** @deprecated Use {@link EditResultCode}. */
|
|
2459
|
+
async editResultCode(resultCode) {
|
|
2460
|
+
return this.EditResultCode(resultCode);
|
|
2461
|
+
}
|
|
2462
|
+
OnResultCodeClick(resultCode, event) {
|
|
2195
2463
|
// Prevent event bubbling if clicking on edit/delete buttons
|
|
2196
2464
|
const target = event.target;
|
|
2197
2465
|
if (target.closest('.result-edit-btn') || target.closest('.result-delete-btn')) {
|
|
2198
2466
|
return;
|
|
2199
2467
|
}
|
|
2200
2468
|
// Show the result code dialog
|
|
2201
|
-
this.
|
|
2469
|
+
this.EditResultCode(resultCode);
|
|
2470
|
+
}
|
|
2471
|
+
/** @deprecated Use {@link OnResultCodeClick}. */
|
|
2472
|
+
onResultCodeClick(resultCode, event) {
|
|
2473
|
+
return this.OnResultCodeClick(resultCode, event);
|
|
2202
2474
|
}
|
|
2203
2475
|
/**
|
|
2204
2476
|
* Delete a result code (marks for deletion on save)
|
|
2205
2477
|
*/
|
|
2206
|
-
|
|
2478
|
+
DeleteResultCode(resultCode) {
|
|
2207
2479
|
if (!this.EditMode)
|
|
2208
2480
|
return;
|
|
2209
2481
|
// Remove from main array
|
|
2210
|
-
const index = this.
|
|
2482
|
+
const index = this.ResultCodes.indexOf(resultCode);
|
|
2211
2483
|
if (index > -1) {
|
|
2212
|
-
this.
|
|
2484
|
+
this.ResultCodes.splice(index, 1);
|
|
2213
2485
|
}
|
|
2214
2486
|
// Handle pending records
|
|
2215
2487
|
if (resultCode.IsSaved) {
|
|
@@ -2230,16 +2502,20 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2230
2502
|
}
|
|
2231
2503
|
this.cdr.detectChanges();
|
|
2232
2504
|
}
|
|
2505
|
+
/** @deprecated Use {@link DeleteResultCode}. */
|
|
2506
|
+
deleteResultCode(resultCode) {
|
|
2507
|
+
return this.DeleteResultCode(resultCode);
|
|
2508
|
+
}
|
|
2233
2509
|
/**
|
|
2234
2510
|
* Delete a parameter (marks for deletion on save)
|
|
2235
2511
|
*/
|
|
2236
|
-
|
|
2512
|
+
DeleteParameter(param) {
|
|
2237
2513
|
if (!this.EditMode)
|
|
2238
2514
|
return;
|
|
2239
2515
|
// Remove from main array
|
|
2240
|
-
const index = this.
|
|
2516
|
+
const index = this.ActionParams.indexOf(param);
|
|
2241
2517
|
if (index > -1) {
|
|
2242
|
-
this.
|
|
2518
|
+
this.ActionParams.splice(index, 1);
|
|
2243
2519
|
}
|
|
2244
2520
|
// Handle pending records
|
|
2245
2521
|
if (param.IsSaved) {
|
|
@@ -2262,6 +2538,10 @@ let MJActionFormComponentExtended = class MJActionFormComponentExtended extends
|
|
|
2262
2538
|
this.updateParamArrays();
|
|
2263
2539
|
this.cdr.detectChanges();
|
|
2264
2540
|
}
|
|
2541
|
+
/** @deprecated Use {@link DeleteParameter}. */
|
|
2542
|
+
deleteParameter(param) {
|
|
2543
|
+
return this.DeleteParameter(param);
|
|
2544
|
+
}
|
|
2265
2545
|
static { this.ɵfac = /*@__PURE__*/ (() => { let ɵMJActionFormComponentExtended_BaseFactory; return function MJActionFormComponentExtended_Factory(__ngFactoryType__) { return (ɵMJActionFormComponentExtended_BaseFactory || (ɵMJActionFormComponentExtended_BaseFactory = i0.ɵɵgetInheritedFactory(MJActionFormComponentExtended)))(__ngFactoryType__ || MJActionFormComponentExtended); }; })(); }
|
|
2266
2546
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MJActionFormComponentExtended, selectors: [["mj-action-form"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 4, consts: [["form", "ngForm"], [3, "Record", "FormComponent", "ToolbarConfig", "WidthMode"], [3, "Close", "Action", "ActionParams", "IsOpen"], [3, "Navigate", "DeleteRequested", "FavoriteToggled", "HistoryRequested", "ListManagementRequested", "Record", "FormComponent", "ToolbarConfig", "WidthMode"], [1, "record-form", 2, "display", "flex", "flex-direction", "column", "height", "100%", "overflow", "hidden"], [1, "action-main-area", 2, "display", "flex", "flex-direction", "column", "flex", "1", "min-height", "0", "overflow-y", "auto"], [1, "action-header", 2, "flex-shrink", "0", "padding", "20px", "background", "var(--mj-bg-surface-card)", "border-bottom", "2px solid var(--mj-border-default)"], [2, "display", "flex", "justify-content", "space-between", "align-items", "flex-start", "gap", "20px"], [2, "flex", "1", "min-width", "0"], [2, "display", "flex", "align-items", "center", "gap", "12px", "margin-bottom", "8px"], [2, "font-size", "1.4em"], ["type", "text", "name", "actionName", "placeholder", "Enter action name...", 1, "mj-input", 2, "font-size", "1.2em", "font-weight", "600", "min-width", "300px", "flex", "1", 3, "ngModel"], [2, "display", "flex", "gap", "16px", "margin-bottom", "12px", "flex-wrap", "wrap"], ["name", "actionDescription", "placeholder", "Enter action description...", 1, "mj-textarea", 2, "width", "100%", "max-width", "600px", "margin-bottom", "12px", 3, "ngModel", "rows"], [2, "margin", "0 0 12px 0", "color", "var(--mj-text-muted)", "font-size", "0.9em", "line-height", "1.4"], [1, "quick-config", 2, "display", "flex", "align-items", "center", "gap", "16px", "flex-wrap", "wrap"], [1, "config-item", 2, "display", "flex", "align-items", "center", "gap", "6px", "font-size", "0.85em"], [1, "fa-solid", "fa-cube", 2, "color", "var(--mj-text-muted)"], [2, "color", "var(--mj-text-muted)"], [2, "color", "var(--mj-text-secondary)", "font-weight", "500"], [1, "action-buttons", 2, "display", "flex", "flex-direction", "column", "gap", "8px", "align-items", "flex-end"], [2, "display", "flex", "gap", "8px"], ["mjButton", "", "variant", "primary", "size", "lg", "title", "Open Run Harness", 3, "disabled"], ["mjButton", "", "variant", "outline", "size", "md", "title", "Regenerate Code"], [2, "font-size", "0.75em", "color", "var(--mj-status-error)", "text-align", "right"], [1, "configuration-sections", 2, "flex", "1", "background", "var(--mj-bg-surface-card)", "border-top", "2px solid var(--mj-border-default)", "padding", "16px", "min-height", "0"], [2, "margin-bottom", "12px", 3, "Expanded"], ["mjAccordionTitle", ""], [2, "padding", "16px"], [1, "loading-state"], ["Size", "compact", "Icon", "fa-solid fa-sliders", "Title", "No parameters defined", 3, "Message"], [2, "display", "flex", "justify-content", "flex-end", "margin-bottom", "12px"], ["Size", "compact", "Icon", "fa-solid fa-flag-checkered", "Title", "No result codes defined", 3, "Message"], [1, "result-codes-grid"], ["type", "text", "name", "actionName", "placeholder", "Enter action name...", 1, "mj-input", 2, "font-size", "1.2em", "font-weight", "600", "min-width", "300px", "flex", "1", 3, "ngModelChange", "ngModel"], [2, "margin", "0", "color", "var(--mj-text-secondary)", "font-weight", "600", "flex", "1"], [1, "status-chip"], [1, "status-chip", 3, "title"], [2, "margin-right", "4px"], [2, "display", "block", "margin-bottom", "4px", "font-weight", "600", "color", "var(--mj-text-secondary)", "font-size", "0.9em"], ["name", "actionStatus", "TextField", "text", "ValueField", "value", 2, "width", "150px", 3, "ngModelChange", "ngModel", "Data", "ValuePrimitive"], [2, "color", "var(--mj-status-error)"], ["name", "actionType", "TextField", "text", "ValueField", "value", 2, "width", "150px", 3, "ngModelChange", "ngModel", "Data", "ValuePrimitive"], ["name", "categoryID", "Placeholder", "Select category...", 2, "width", "200px", 3, "ngModelChange", "ngModel", "Data"], ["name", "codeApprovalStatus", "TextField", "text", "ValueField", "value", 2, "width", "160px", 3, "ngModelChange", "ngModel", "Data", "ValuePrimitive"], ["name", "actionDescription", "placeholder", "Enter action description...", 1, "mj-textarea", 2, "width", "100%", "max-width", "600px", "margin-bottom", "12px", 3, "ngModelChange", "ngModel", "rows"], [1, "fa-solid", "fa-folder", 2, "color", "var(--mj-text-muted)"], [2, "color", "var(--mj-text-secondary)", "font-weight", "500", "cursor", "pointer", 3, "click"], [1, "fa-solid", "fa-external-link", 2, "font-size", "0.75em", "margin-left", "4px"], [2, "font-weight", "500"], [1, "fa-solid", "fa-sliders", 2, "color", "var(--mj-text-muted)"], ["mjButton", "", "variant", "primary", "size", "lg", "title", "Open Run Harness", 3, "click", "disabled"], [1, "fa-solid", "fa-play"], ["mjButton", "", "variant", "outline", "size", "md", "title", "Regenerate Code", 3, "click"], [1, "fa-solid", "fa-robot"], [2, "display", "flex", "align-items", "center", "gap", "8px", "font-weight", "600"], [2, "background", "var(--mj-status-info)", "color", "var(--mj-text-inverse)", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "params-section"], [1, "params-header"], [1, "fa-solid", "fa-sign-in-alt"], ["mjButton", "", "variant", "flat", "size", "sm"], ["Size", "compact", "Icon", "fa-solid fa-inbox", "Title", "No input parameters defined"], [1, "params-grid"], [1, "params-section", 2, "margin-top", "24px"], [1, "fa-solid", "fa-sign-out-alt"], ["Size", "compact", "Icon", "fa-solid fa-inbox", "Title", "No output parameters defined"], ["mjButton", "", "variant", "flat", "size", "sm", 3, "click"], [1, "fa-solid", "fa-plus"], [1, "param-card", 3, "required", "clickable"], [1, "param-card", 3, "click"], [1, "param-header"], [1, "param-name"], [1, "param-badges"], [1, "required-badge"], [1, "array-badge"], [1, "param-details"], [1, "param-type"], [1, "param-description"], [1, "param-default"], ["title", "Edit parameter", 1, "param-edit-btn", 3, "click"], [1, "fa-solid", "fa-edit"], ["title", "Delete parameter", 1, "param-delete-btn", 3, "click"], [1, "fa-solid", "fa-trash"], [1, "default-label"], [1, "param-card", 3, "clickable"], [1, "generation-panel"], [1, "code-editor-section"], [1, "code-toolbar"], [1, "fa-solid", "fa-file-code"], [1, "code-actions"], [1, "fa-solid", "fa-copy"], ["name", "actionCode", 2, "height", "400px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], [1, "code-comments"], [1, "approval-comments"], [1, "fa-solid", "fa-code", 2, "color", "var(--mj-text-muted)"], [2, "background", "var(--mj-status-warning)", "color", "var(--mj-color-warning-800)", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], [1, "fa-solid", "fa-lock"], [1, "prompt-section"], ["name", "userPrompt", "placeholder", "Describe what this action should do...", 1, "mj-textarea", 2, "width", "100%", "min-height", "120px", 3, "ngModelChange", "ngModel", "rows"], [1, "comments-section"], ["name", "userComments", "placeholder", "Internal notes...", 1, "mj-textarea", 2, "width", "100%", 3, "ngModelChange", "ngModel", "rows"], [1, "generation-controls"], ["name", "codeLocked", 3, "ngModelChange", "ngModel"], [2, "margin-left", "8px"], [1, "fa-solid", "fa-comment"], ["name", "codeApprovalComments", "placeholder", "Explain why the code was rejected...", 1, "mj-textarea", 2, "width", "100%", 3, "ngModelChange", "ngModel", "rows"], ["Variant", "error"], [2, "font-weight", "600", "margin-bottom", "6px", "color", "var(--mj-text-primary)"], [1, "fa-solid", "fa-code", 2, "margin-right", "6px", "color", "var(--mj-text-muted)"], [2, "background", "var(--mj-bg-surface-sunken)", "color", "var(--mj-text-primary)", "padding", "12px", "border-radius", "4px", "overflow-x", "auto", "max-height", "400px", "font-family", "'SF Mono', Monaco, Consolas, monospace", "font-size", "0.85em", "margin", "0"], ["Variant", "warning", "Title", "Approval required before this Runtime action can execute.", 1, "approval-required-alert"], [1, "fa-solid", "fa-wand-magic-sparkles", 2, "color", "var(--mj-status-warning)"], [2, "color", "var(--mj-text-muted)", "font-weight", "400", "font-size", "0.85em"], ["Variant", "warning", "Title", "Wildcard permissions enabled"], [2, "display", "grid", "grid-template-columns", "repeat(auto-fit, minmax(280px, 1fr))", "gap", "16px", "margin-bottom", "20px"], [2, "border", "1px solid var(--mj-border-default)", "border-radius", "6px", "padding", "12px", "background", "var(--mj-bg-surface-card)"], [2, "font-weight", "600", "margin-bottom", "8px", "color", "var(--mj-text-primary)"], [1, "fa-solid", "fa-database", 2, "margin-right", "6px", "color", "var(--mj-brand-primary)"], [2, "color", "var(--mj-text-muted)", "font-style", "italic"], [2, "display", "flex", "flex-direction", "column", "gap", "4px"], [1, "fa-solid", "fa-bolt", 2, "margin-right", "6px", "color", "var(--mj-brand-primary)"], [1, "fa-solid", "fa-robot", 2, "margin-right", "6px", "color", "var(--mj-brand-primary)"], [2, "display", "grid", "grid-template-columns", "1fr 1fr", "gap", "16px", "margin-bottom", "16px"], [1, "fa-solid", "fa-gauge-high", 2, "margin-right", "6px", "color", "var(--mj-text-muted)"], [2, "color", "var(--mj-text-secondary)", "font-size", "0.9em"], [1, "fa-solid", "fa-book", 2, "margin-right", "6px", "color", "var(--mj-text-muted)"], [2, "display", "flex", "flex-wrap", "wrap", "gap", "4px"], [2, "background", "var(--mj-bg-surface-sunken)", "padding", "4px 8px", "border-radius", "4px", "font-size", "0.9em", "color", "var(--mj-text-primary)"], [2, "background", "var(--mj-bg-surface-sunken)", "padding", "2px 8px", "border-radius", "10px", "font-size", "0.85em"], [2, "color", "var(--mj-text-secondary)", "font-size", "0.9em", "margin-bottom", "12px"], [1, "mj-button", "mj-button-primary", 3, "click"], [1, "fa-solid", "fa-check"], [1, "mj-button", 3, "click"], [1, "fa-solid", "fa-ban"], [1, "fa-solid", "fa-flag-checkered", 2, "color", "var(--mj-text-muted)"], [2, "background", "var(--mj-status-success)", "color", "var(--mj-text-inverse)", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], ["mjButton", "", "variant", "primary", "size", "sm", 3, "click"], [1, "result-code-card", 3, "success", "failure", "clickable"], [1, "result-code-card", 3, "click"], [1, "result-icon"], [1, "result-content"], [1, "result-code"], [1, "result-description"], [1, "result-actions"], ["title", "Edit result code", 1, "result-edit-btn", 3, "click"], ["title", "Delete result code", 1, "result-delete-btn", 3, "click"], ["Size", "compact", "Icon", "fa-solid fa-chart-line", "Title", "No executions yet"], [1, "fa-solid", "fa-chart-line", 2, "color", "var(--mj-text-muted)"], [1, "execution-stats-row"], [1, "stat-box"], [1, "fa-solid", "fa-tachometer-alt"], [1, "stat-info"], [1, "stat-label", 2, "color", "var(--mj-text-primary)"], [1, "stat-value", 2, "color", "var(--mj-text-primary)"], [1, "fa-solid", "fa-check-circle"], [1, "stat-value", 2, "font-weight", "600"], [1, "fa-solid", "fa-play-circle"], [2, "margin-top", "24px"], [1, "fa-solid", "fa-history"], [1, "executions-table"], [1, "execution-row", 3, "success"], [1, "execution-row"], [1, "running"], [1, "fa-solid", "fa-external-link"], [1, "config-subsection"], [1, "fa-solid", "fa-book"], ["Size", "compact", "Icon", "fa-solid fa-book", "Title", "No libraries configured"], [1, "library-cards"], [1, "related-entities-grid"], [1, "related-entity-link"], [1, "fa-solid", "fa-shield-alt"], [1, "entity-count"], [1, "fa-solid", "fa-layer-group"], [1, "fa-solid", "fa-calendar"], [1, "fa-solid", "fa-cube"], [1, "fa-solid", "fa-cogs", 2, "color", "var(--mj-text-muted)"], [1, "library-card"], [1, "library-card", 3, "click"], [1, "library-info"], [1, "library-name"], [1, "library-items"]], template: function MJActionFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
|
|
2267
2547
|
i0.ɵɵconditionalCreate(0, MJActionFormComponentExtended_Conditional_0_Template, 47, 27, "mj-record-form-container", 1);
|