@memberjunction/ng-core-entity-forms 5.1.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js +4 -4
- package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts +18 -18
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js +309 -309
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts +9 -9
- package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-management.service.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +3 -3
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
- 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 +8 -8
- 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 +1 -1
- 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 +2 -2
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts +2 -2
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +10 -10
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
- 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 +3 -3
- 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.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +3 -3
- 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 +1 -1
- 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 +8 -8
- 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 +225 -225
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts +7 -7
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +259 -259
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts +3 -3
- 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 +48 -48
- package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.d.ts +4 -4
- package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.js +164 -164
- package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.d.ts +3 -3
- package/dist/lib/custom/Entities/entity-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.js +299 -299
- package/dist/lib/custom/Entities/entity-form.component.js.map +1 -1
- package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts +3 -3
- package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts.map +1 -1
- package/dist/lib/custom/EntityActions/entityaction.form.component.js +11 -11
- package/dist/lib/custom/EntityActions/entityaction.form.component.js.map +1 -1
- package/dist/lib/custom/Lists/list-form.component.d.ts +8 -8
- package/dist/lib/custom/Lists/list-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Lists/list-form.component.js +163 -163
- package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-form.component.d.ts +3 -3
- package/dist/lib/custom/Queries/query-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Queries/query-form.component.js +175 -184
- package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.d.ts +1 -0
- package/dist/lib/custom/Queries/query-run-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.js +3 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
- package/dist/lib/custom/Templates/templates-form.component.d.ts +3 -3
- package/dist/lib/custom/Templates/templates-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/templates-form.component.js +53 -53
- package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.d.ts +3 -3
- package/dist/lib/custom/Tests/test-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.js +161 -161
- package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-rubric-form.component.d.ts +3 -3
- package/dist/lib/custom/Tests/test-rubric-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-rubric-form.component.js +12 -12
- package/dist/lib/custom/Tests/test-rubric-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts +3 -3
- 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 +14 -14
- 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 +3 -3
- package/dist/lib/custom/Tests/test-run-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-run-form.component.js +140 -140
- package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts +3 -3
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.js +243 -243
- 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 +3 -3
- 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 +213 -213
- package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts +6 -6
- 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 +148 -148
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
- package/dist/lib/custom/custom-forms.module.d.ts +1 -1
- package/dist/lib/custom/custom-forms.module.js +85 -85
- package/dist/lib/custom/custom-forms.module.js.map +1 -1
- package/dist/lib/generated/Entities/MJOpenApp/mjopenapp.form.component.js +3 -3
- package/dist/lib/generated/Entities/MJOpenApp/mjopenapp.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js +5 -5
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js.map +1 -1
- package/package.json +30 -30
|
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
var
|
|
7
|
+
var MJAIAgentFormComponentExtended_1;
|
|
8
8
|
import { Component, ViewContainerRef, ViewChild, inject } from '@angular/core';
|
|
9
9
|
import { RegisterClass, MJGlobal } from '@memberjunction/global';
|
|
10
10
|
import { BaseFormComponent, BaseFormSectionComponent } from '@memberjunction/ng-base-forms';
|
|
@@ -38,28 +38,28 @@ const _c0 = ["customSectionContainer"];
|
|
|
38
38
|
const _c1 = () => ({ standalone: true });
|
|
39
39
|
const _forTrack0 = ($index, $item) => $item.ID;
|
|
40
40
|
const _forTrack1 = ($index, $item) => $item.agent.ID;
|
|
41
|
-
function
|
|
41
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
42
42
|
i0.ɵɵelement(0, "img", 29);
|
|
43
43
|
} if (rf & 2) {
|
|
44
44
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
45
45
|
i0.ɵɵproperty("src", ctx_r2.record.LogoURL, i0.ɵɵsanitizeUrl)("alt", ctx_r2.record.Name + " logo");
|
|
46
46
|
} }
|
|
47
|
-
function
|
|
47
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
48
48
|
i0.ɵɵelement(0, "i");
|
|
49
49
|
} if (rf & 2) {
|
|
50
50
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
51
51
|
i0.ɵɵclassMap(ctx_r2.getAgentIcon());
|
|
52
52
|
} }
|
|
53
|
-
function
|
|
53
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
54
54
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
55
55
|
i0.ɵɵelementStart(0, "kendo-textbox", 41);
|
|
56
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
56
|
+
i0.ɵɵtwoWayListener("ngModelChange", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_9_Template_kendo_textbox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r2.record.Name, $event) || (ctx_r2.record.Name = $event); return i0.ɵɵresetView($event); });
|
|
57
57
|
i0.ɵɵelementEnd();
|
|
58
58
|
} if (rf & 2) {
|
|
59
59
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
60
60
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r2.record.Name);
|
|
61
61
|
} }
|
|
62
|
-
function
|
|
62
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
63
63
|
i0.ɵɵelementStart(0, "h1", 33);
|
|
64
64
|
i0.ɵɵtext(1);
|
|
65
65
|
i0.ɵɵelementEnd();
|
|
@@ -68,7 +68,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_10
|
|
|
68
68
|
i0.ɵɵadvance();
|
|
69
69
|
i0.ɵɵtextInterpolate(ctx_r2.record.Name || "Untitled AI Agent");
|
|
70
70
|
} }
|
|
71
|
-
function
|
|
71
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
72
72
|
i0.ɵɵelementStart(0, "span", 42);
|
|
73
73
|
i0.ɵɵelement(1, "i", 43);
|
|
74
74
|
i0.ɵɵtext(2);
|
|
@@ -79,7 +79,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_12
|
|
|
79
79
|
i0.ɵɵadvance(2);
|
|
80
80
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.record.Status, " ");
|
|
81
81
|
} }
|
|
82
|
-
function
|
|
82
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
83
83
|
i0.ɵɵelementStart(0, "span", 36);
|
|
84
84
|
i0.ɵɵtext(1);
|
|
85
85
|
i0.ɵɵelementEnd();
|
|
@@ -88,10 +88,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_13
|
|
|
88
88
|
i0.ɵɵadvance();
|
|
89
89
|
i0.ɵɵtextInterpolate1(" Agent Type: ", ctx_r2.record.Type, " ");
|
|
90
90
|
} }
|
|
91
|
-
function
|
|
91
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
92
92
|
const _r5 = i0.ɵɵgetCurrentView();
|
|
93
93
|
i0.ɵɵelementStart(0, "span", 44);
|
|
94
|
-
i0.ɵɵlistener("click", function
|
|
94
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_14_Template_span_click_0_listener() { i0.ɵɵrestoreView(_r5); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.navigateToParentAgent()); });
|
|
95
95
|
i0.ɵɵelement(1, "i", 45);
|
|
96
96
|
i0.ɵɵtext(2);
|
|
97
97
|
i0.ɵɵelement(3, "i", 46);
|
|
@@ -102,15 +102,15 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_14
|
|
|
102
102
|
i0.ɵɵadvance(2);
|
|
103
103
|
i0.ɵɵtextInterpolate1(" Child of ", ctx_r2.record.Parent, " ");
|
|
104
104
|
} }
|
|
105
|
-
function
|
|
105
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_16_Template(rf, ctx) { if (rf & 1) {
|
|
106
106
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
107
107
|
i0.ɵɵelementStart(0, "button", 47);
|
|
108
|
-
i0.ɵɵlistener("click", function
|
|
108
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_16_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openTestHarness()); });
|
|
109
109
|
i0.ɵɵelement(1, "i", 48);
|
|
110
110
|
i0.ɵɵtext(2, " Run ");
|
|
111
111
|
i0.ɵɵelementEnd();
|
|
112
112
|
i0.ɵɵelementStart(3, "button", 49);
|
|
113
|
-
i0.ɵɵlistener("click", function
|
|
113
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_16_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r6); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openPermissionsDialog()); });
|
|
114
114
|
i0.ɵɵelement(4, "i", 50);
|
|
115
115
|
i0.ɵɵtext(5);
|
|
116
116
|
i0.ɵɵelementEnd();
|
|
@@ -125,26 +125,26 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_16
|
|
|
125
125
|
i0.ɵɵadvance();
|
|
126
126
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.IsOpenToEveryone ? "Open" : "Restricted", " ");
|
|
127
127
|
} }
|
|
128
|
-
function
|
|
128
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
129
129
|
const _r2 = i0.ɵɵgetCurrentView();
|
|
130
130
|
i0.ɵɵelementStart(0, "div", 8)(1, "div", 24)(2, "button", 25);
|
|
131
|
-
i0.ɵɵlistener("click", function
|
|
131
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.ToggleHeaderCollapsed()); });
|
|
132
132
|
i0.ɵɵelement(3, "i", 26);
|
|
133
133
|
i0.ɵɵelementEnd();
|
|
134
134
|
i0.ɵɵelementStart(4, "div", 27)(5, "div", 28);
|
|
135
|
-
i0.ɵɵconditionalCreate(6,
|
|
135
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_6_Template, 1, 2, "img", 29)(7, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_7_Template, 1, 2, "i", 30);
|
|
136
136
|
i0.ɵɵelementEnd();
|
|
137
137
|
i0.ɵɵelementStart(8, "div", 31);
|
|
138
|
-
i0.ɵɵconditionalCreate(9,
|
|
138
|
+
i0.ɵɵconditionalCreate(9, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_9_Template, 1, 1, "kendo-textbox", 32)(10, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_10_Template, 2, 1, "h1", 33);
|
|
139
139
|
i0.ɵɵelementStart(11, "div", 34);
|
|
140
|
-
i0.ɵɵconditionalCreate(12,
|
|
141
|
-
i0.ɵɵconditionalCreate(13,
|
|
142
|
-
i0.ɵɵconditionalCreate(14,
|
|
140
|
+
i0.ɵɵconditionalCreate(12, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_12_Template, 3, 3, "span", 35);
|
|
141
|
+
i0.ɵɵconditionalCreate(13, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_13_Template, 2, 1, "span", 36);
|
|
142
|
+
i0.ɵɵconditionalCreate(14, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_14_Template, 4, 3, "span", 37);
|
|
143
143
|
i0.ɵɵelementEnd()()();
|
|
144
144
|
i0.ɵɵelementStart(15, "div", 38);
|
|
145
|
-
i0.ɵɵconditionalCreate(16,
|
|
145
|
+
i0.ɵɵconditionalCreate(16, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Conditional_16_Template, 6, 9);
|
|
146
146
|
i0.ɵɵelementStart(17, "button", 39);
|
|
147
|
-
i0.ɵɵlistener("click", function
|
|
147
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Template_button_click_17_listener() { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.refreshRelatedData()); });
|
|
148
148
|
i0.ɵɵelement(18, "i", 40);
|
|
149
149
|
i0.ɵɵelementEnd()()()();
|
|
150
150
|
} if (rf & 2) {
|
|
@@ -162,7 +162,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_3_Template(rf, c
|
|
|
162
162
|
i0.ɵɵadvance(2);
|
|
163
163
|
i0.ɵɵconditional(ctx_r2.record.ID ? 16 : -1);
|
|
164
164
|
} }
|
|
165
|
-
function
|
|
165
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
166
166
|
i0.ɵɵelementStart(0, "span", 57);
|
|
167
167
|
i0.ɵɵtext(1);
|
|
168
168
|
i0.ɵɵelementEnd();
|
|
@@ -172,14 +172,14 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_5_
|
|
|
172
172
|
i0.ɵɵadvance();
|
|
173
173
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.record.Status, " ");
|
|
174
174
|
} }
|
|
175
|
-
function
|
|
175
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
176
176
|
const _r8 = i0.ɵɵgetCurrentView();
|
|
177
177
|
i0.ɵɵelementStart(0, "button", 58);
|
|
178
|
-
i0.ɵɵlistener("click", function
|
|
178
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openTestHarness()); });
|
|
179
179
|
i0.ɵɵelement(1, "i", 48);
|
|
180
180
|
i0.ɵɵelementEnd();
|
|
181
181
|
i0.ɵɵelementStart(2, "button", 59);
|
|
182
|
-
i0.ɵɵlistener("click", function
|
|
182
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_7_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.openPermissionsDialog()); });
|
|
183
183
|
i0.ɵɵelement(3, "i", 50);
|
|
184
184
|
i0.ɵɵelementEnd();
|
|
185
185
|
} if (rf & 2) {
|
|
@@ -191,20 +191,20 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_7_
|
|
|
191
191
|
i0.ɵɵstyleProp("color", ctx_r2.IsOpenToEveryone ? "#16a34a" : null);
|
|
192
192
|
i0.ɵɵclassProp("fa-lock-open", ctx_r2.IsOpenToEveryone)("fa-lock", !ctx_r2.IsOpenToEveryone);
|
|
193
193
|
} }
|
|
194
|
-
function
|
|
194
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
195
195
|
const _r7 = i0.ɵɵgetCurrentView();
|
|
196
196
|
i0.ɵɵelementStart(0, "div", 9)(1, "button", 51);
|
|
197
|
-
i0.ɵɵlistener("click", function
|
|
197
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.ToggleHeaderCollapsed()); });
|
|
198
198
|
i0.ɵɵelement(2, "i", 52);
|
|
199
199
|
i0.ɵɵelementEnd();
|
|
200
200
|
i0.ɵɵelementStart(3, "span", 53);
|
|
201
201
|
i0.ɵɵtext(4);
|
|
202
202
|
i0.ɵɵelementEnd();
|
|
203
|
-
i0.ɵɵconditionalCreate(5,
|
|
203
|
+
i0.ɵɵconditionalCreate(5, MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_5_Template, 2, 3, "span", 54);
|
|
204
204
|
i0.ɵɵelement(6, "div", 55);
|
|
205
|
-
i0.ɵɵconditionalCreate(7,
|
|
205
|
+
i0.ɵɵconditionalCreate(7, MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Conditional_7_Template, 4, 8);
|
|
206
206
|
i0.ɵɵelementStart(8, "button", 56);
|
|
207
|
-
i0.ɵɵlistener("click", function
|
|
207
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Template_button_click_8_listener() { i0.ɵɵrestoreView(_r7); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.refreshRelatedData()); });
|
|
208
208
|
i0.ɵɵelement(9, "i", 40);
|
|
209
209
|
i0.ɵɵelementEnd()();
|
|
210
210
|
} if (rf & 2) {
|
|
@@ -216,7 +216,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_4_Template(rf, c
|
|
|
216
216
|
i0.ɵɵadvance(2);
|
|
217
217
|
i0.ɵɵconditional(ctx_r2.record.ID ? 7 : -1);
|
|
218
218
|
} }
|
|
219
|
-
function
|
|
219
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
220
220
|
i0.ɵɵelement(0, "i", 60);
|
|
221
221
|
i0.ɵɵtext(1);
|
|
222
222
|
} if (rf & 2) {
|
|
@@ -224,15 +224,15 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_1_
|
|
|
224
224
|
i0.ɵɵadvance();
|
|
225
225
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.agentType.Name, " Configuration ");
|
|
226
226
|
} }
|
|
227
|
-
function
|
|
227
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
228
228
|
i0.ɵɵelement(0, "mj-loading", 62);
|
|
229
229
|
} if (rf & 2) {
|
|
230
230
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
231
231
|
i0.ɵɵproperty("text", i0.ɵɵinterpolate1("Loading ", ctx_r2.agentType.Name, " configuration..."));
|
|
232
232
|
} }
|
|
233
|
-
function
|
|
233
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
234
234
|
i0.ɵɵelementStart(0, "div", 61);
|
|
235
|
-
i0.ɵɵconditionalCreate(1,
|
|
235
|
+
i0.ɵɵconditionalCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_2_Conditional_1_Template, 1, 2, "mj-loading", 62);
|
|
236
236
|
i0.ɵɵelementContainer(2, null, 1);
|
|
237
237
|
i0.ɵɵelementEnd();
|
|
238
238
|
} if (rf & 2) {
|
|
@@ -241,29 +241,29 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_2_
|
|
|
241
241
|
i0.ɵɵadvance();
|
|
242
242
|
i0.ɵɵconditional(ctx_r2.loadingStates.customSection ? 1 : -1);
|
|
243
243
|
} }
|
|
244
|
-
function
|
|
244
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
245
245
|
i0.ɵɵelementStart(0, "kendo-panelbar-item", 12);
|
|
246
|
-
i0.ɵɵtemplate(1,
|
|
246
|
+
i0.ɵɵtemplate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_1_Template, 2, 1, "ng-template", 20)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_ng_template_2_Template, 4, 3, "ng-template", 21);
|
|
247
247
|
i0.ɵɵelementEnd();
|
|
248
248
|
} if (rf & 2) {
|
|
249
249
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
250
250
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("custom", ctx_r2.agentType.UIFormSectionExpandedByDefault));
|
|
251
251
|
} }
|
|
252
|
-
function
|
|
252
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
253
253
|
i0.ɵɵelementStart(0, "span", 64);
|
|
254
254
|
i0.ɵɵelement(1, "i", 65);
|
|
255
255
|
i0.ɵɵelementEnd();
|
|
256
256
|
} }
|
|
257
|
-
function
|
|
257
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Conditional_3_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
258
258
|
i0.ɵɵtext(0);
|
|
259
259
|
} if (rf & 2) {
|
|
260
260
|
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
261
261
|
i0.ɵɵtextInterpolate1(" of ", ctx_r2.totalExecutionHistoryCount, " ");
|
|
262
262
|
} }
|
|
263
|
-
function
|
|
263
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
264
264
|
i0.ɵɵelementStart(0, "span");
|
|
265
265
|
i0.ɵɵtext(1);
|
|
266
|
-
i0.ɵɵconditionalCreate(2,
|
|
266
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Conditional_3_Conditional_2_Template, 1, 1);
|
|
267
267
|
i0.ɵɵelementEnd();
|
|
268
268
|
} if (rf & 2) {
|
|
269
269
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
@@ -272,16 +272,16 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_
|
|
|
272
272
|
i0.ɵɵadvance();
|
|
273
273
|
i0.ɵɵconditional(ctx_r2.executionHistoryCount < ctx_r2.totalExecutionHistoryCount ? 2 : -1);
|
|
274
274
|
} }
|
|
275
|
-
function
|
|
275
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
276
276
|
i0.ɵɵelement(0, "i", 63);
|
|
277
277
|
i0.ɵɵtext(1, " Execution History ");
|
|
278
|
-
i0.ɵɵconditionalCreate(2,
|
|
278
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Conditional_2_Template, 2, 0, "span", 64)(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Conditional_3_Template, 3, 2, "span");
|
|
279
279
|
} if (rf & 2) {
|
|
280
280
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
281
281
|
i0.ɵɵadvance(2);
|
|
282
282
|
i0.ɵɵconditional(ctx_r2.loadingStates.executionHistory ? 2 : ctx_r2.executionHistoryCount > 0 ? 3 : -1);
|
|
283
283
|
} }
|
|
284
|
-
function
|
|
284
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
285
285
|
i0.ɵɵelementStart(0, "div", 67);
|
|
286
286
|
i0.ɵɵelement(1, "i", 63);
|
|
287
287
|
i0.ɵɵelementStart(2, "h4");
|
|
@@ -291,10 +291,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
291
291
|
i0.ɵɵtext(5, "This agent hasn't been executed yet. Use the Test Agent button to run the agent and see execution history here.");
|
|
292
292
|
i0.ɵɵelementEnd()();
|
|
293
293
|
} }
|
|
294
|
-
function
|
|
294
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
295
295
|
i0.ɵɵelement(0, "i", 74);
|
|
296
296
|
} }
|
|
297
|
-
function
|
|
297
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
298
298
|
i0.ɵɵelementStart(0, "div", 67);
|
|
299
299
|
i0.ɵɵelement(1, "i", 74);
|
|
300
300
|
i0.ɵɵelementStart(2, "h4");
|
|
@@ -308,7 +308,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
308
308
|
i0.ɵɵadvance(5);
|
|
309
309
|
i0.ɵɵtextInterpolate1("No execution history found matching \"", ctx_r2.executionSearchText, "\"");
|
|
310
310
|
} }
|
|
311
|
-
function
|
|
311
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
312
312
|
i0.ɵɵelementStart(0, "div", 85);
|
|
313
313
|
i0.ɵɵelement(1, "i", 90);
|
|
314
314
|
i0.ɵɵelementStart(2, "span", 91);
|
|
@@ -322,7 +322,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
322
322
|
i0.ɵɵadvance(5);
|
|
323
323
|
i0.ɵɵtextInterpolate(execution_r11.Configuration);
|
|
324
324
|
} }
|
|
325
|
-
function
|
|
325
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
326
326
|
i0.ɵɵelementStart(0, "div", 85);
|
|
327
327
|
i0.ɵɵelement(1, "i", 93);
|
|
328
328
|
i0.ɵɵelementStart(2, "span", 91);
|
|
@@ -337,14 +337,14 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
337
337
|
i0.ɵɵadvance(5);
|
|
338
338
|
i0.ɵɵtextInterpolate(ctx_r2.formatExecutionTimeFromDates(execution_r11.StartedAt, execution_r11.CompletedAt));
|
|
339
339
|
} }
|
|
340
|
-
function
|
|
340
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_16_Template(rf, ctx) { if (rf & 1) {
|
|
341
341
|
i0.ɵɵelementStart(0, "div", 85);
|
|
342
342
|
i0.ɵɵelement(1, "i", 94);
|
|
343
343
|
i0.ɵɵelementStart(2, "span", 91);
|
|
344
344
|
i0.ɵɵtext(3, "Running:");
|
|
345
345
|
i0.ɵɵelementEnd()();
|
|
346
346
|
} }
|
|
347
|
-
function
|
|
347
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_17_Template(rf, ctx) { if (rf & 1) {
|
|
348
348
|
i0.ɵɵelementStart(0, "div", 85);
|
|
349
349
|
i0.ɵɵelement(1, "i", 95);
|
|
350
350
|
i0.ɵɵelementStart(2, "span", 91);
|
|
@@ -359,7 +359,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
359
359
|
i0.ɵɵadvance(5);
|
|
360
360
|
i0.ɵɵtextInterpolate(ctx_r2.formatTokenCount(execution_r11.TotalTokensUsedRollup || execution_r11.TotalTokensUsed));
|
|
361
361
|
} }
|
|
362
|
-
function
|
|
362
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
363
363
|
i0.ɵɵelementStart(0, "div", 85);
|
|
364
364
|
i0.ɵɵelement(1, "i", 96);
|
|
365
365
|
i0.ɵɵelementStart(2, "span", 91);
|
|
@@ -374,7 +374,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
374
374
|
i0.ɵɵadvance(5);
|
|
375
375
|
i0.ɵɵtextInterpolate1("$", ctx_r2.formatCost(execution_r11.TotalCostRollup || execution_r11.TotalCost));
|
|
376
376
|
} }
|
|
377
|
-
function
|
|
377
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
378
378
|
i0.ɵɵelementStart(0, "div", 99);
|
|
379
379
|
i0.ɵɵelement(1, "i", 105);
|
|
380
380
|
i0.ɵɵelementStart(2, "div", 100)(3, "span", 101);
|
|
@@ -389,7 +389,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
389
389
|
i0.ɵɵadvance(6);
|
|
390
390
|
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(7, 1, execution_r11.CompletedAt, "medium"));
|
|
391
391
|
} }
|
|
392
|
-
function
|
|
392
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
393
393
|
i0.ɵɵelementStart(0, "div", 99);
|
|
394
394
|
i0.ɵɵelement(1, "i", 95);
|
|
395
395
|
i0.ɵɵelementStart(2, "div", 100)(3, "span", 101);
|
|
@@ -404,7 +404,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
404
404
|
i0.ɵɵadvance(6);
|
|
405
405
|
i0.ɵɵtextInterpolate(ctx_r2.formatTokenCount(execution_r11.TotalTokensUsed));
|
|
406
406
|
} }
|
|
407
|
-
function
|
|
407
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
408
408
|
i0.ɵɵelementStart(0, "div", 99);
|
|
409
409
|
i0.ɵɵelement(1, "i", 45);
|
|
410
410
|
i0.ɵɵelementStart(2, "div", 100)(3, "span", 101);
|
|
@@ -419,7 +419,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
419
419
|
i0.ɵɵadvance(6);
|
|
420
420
|
i0.ɵɵtextInterpolate(ctx_r2.formatTokenCount(execution_r11.TotalTokensUsedRollup));
|
|
421
421
|
} }
|
|
422
|
-
function
|
|
422
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
423
423
|
i0.ɵɵelementStart(0, "div", 99);
|
|
424
424
|
i0.ɵɵelement(1, "i", 96);
|
|
425
425
|
i0.ɵɵelementStart(2, "div", 100)(3, "span", 101);
|
|
@@ -434,7 +434,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
434
434
|
i0.ɵɵadvance(6);
|
|
435
435
|
i0.ɵɵtextInterpolate1("$", ctx_r2.formatCost(execution_r11.TotalCost));
|
|
436
436
|
} }
|
|
437
|
-
function
|
|
437
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
438
438
|
i0.ɵɵelementStart(0, "div", 99);
|
|
439
439
|
i0.ɵɵelement(1, "i", 106);
|
|
440
440
|
i0.ɵɵelementStart(2, "div", 100)(3, "span", 101);
|
|
@@ -449,7 +449,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
449
449
|
i0.ɵɵadvance(6);
|
|
450
450
|
i0.ɵɵtextInterpolate1("$", ctx_r2.formatCost(execution_r11.TotalCostRollup));
|
|
451
451
|
} }
|
|
452
|
-
function
|
|
452
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_16_Template(rf, ctx) { if (rf & 1) {
|
|
453
453
|
i0.ɵɵelementStart(0, "div", 99);
|
|
454
454
|
i0.ɵɵelement(1, "i", 107);
|
|
455
455
|
i0.ɵɵelementStart(2, "div", 100)(3, "span", 101);
|
|
@@ -463,7 +463,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
463
463
|
i0.ɵɵadvance(6);
|
|
464
464
|
i0.ɵɵtextInterpolate1("", execution_r11.ConversationID.substring(0, 8), "...");
|
|
465
465
|
} }
|
|
466
|
-
function
|
|
466
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_17_Template(rf, ctx) { if (rf & 1) {
|
|
467
467
|
i0.ɵɵelementStart(0, "div", 103)(1, "h5");
|
|
468
468
|
i0.ɵɵelement(2, "i", 108);
|
|
469
469
|
i0.ɵɵtext(3, " Result");
|
|
@@ -476,7 +476,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
476
476
|
i0.ɵɵadvance(4);
|
|
477
477
|
i0.ɵɵproperty("value", ctx_r2.getExecutionResultPreview(execution_r11, false))("readonly", true)("lineWrapping", true);
|
|
478
478
|
} }
|
|
479
|
-
function
|
|
479
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
480
480
|
i0.ɵɵelementStart(0, "div", 104)(1, "h5");
|
|
481
481
|
i0.ɵɵelement(2, "i", 110);
|
|
482
482
|
i0.ɵɵtext(3, " Error");
|
|
@@ -489,7 +489,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
489
489
|
i0.ɵɵadvance(5);
|
|
490
490
|
i0.ɵɵtextInterpolate(execution_r11.ErrorMessage);
|
|
491
491
|
} }
|
|
492
|
-
function
|
|
492
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Template(rf, ctx) { if (rf & 1) {
|
|
493
493
|
i0.ɵɵelementStart(0, "div", 89)(1, "div", 97)(2, "div", 98)(3, "div", 99);
|
|
494
494
|
i0.ɵɵelement(4, "i", 94);
|
|
495
495
|
i0.ɵɵelementStart(5, "div", 100)(6, "span", 101);
|
|
@@ -499,15 +499,15 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
499
499
|
i0.ɵɵtext(9);
|
|
500
500
|
i0.ɵɵpipe(10, "date");
|
|
501
501
|
i0.ɵɵelementEnd()()();
|
|
502
|
-
i0.ɵɵconditionalCreate(11,
|
|
503
|
-
i0.ɵɵconditionalCreate(12,
|
|
504
|
-
i0.ɵɵconditionalCreate(13,
|
|
505
|
-
i0.ɵɵconditionalCreate(14,
|
|
506
|
-
i0.ɵɵconditionalCreate(15,
|
|
507
|
-
i0.ɵɵconditionalCreate(16,
|
|
502
|
+
i0.ɵɵconditionalCreate(11, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_11_Template, 8, 4, "div", 99);
|
|
503
|
+
i0.ɵɵconditionalCreate(12, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_12_Template, 7, 1, "div", 99);
|
|
504
|
+
i0.ɵɵconditionalCreate(13, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_13_Template, 7, 1, "div", 99);
|
|
505
|
+
i0.ɵɵconditionalCreate(14, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_14_Template, 7, 1, "div", 99);
|
|
506
|
+
i0.ɵɵconditionalCreate(15, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_15_Template, 7, 1, "div", 99);
|
|
507
|
+
i0.ɵɵconditionalCreate(16, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_16_Template, 7, 1, "div", 99);
|
|
508
508
|
i0.ɵɵelementEnd()();
|
|
509
|
-
i0.ɵɵconditionalCreate(17,
|
|
510
|
-
i0.ɵɵconditionalCreate(18,
|
|
509
|
+
i0.ɵɵconditionalCreate(17, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_17_Template, 5, 3, "div", 103);
|
|
510
|
+
i0.ɵɵconditionalCreate(18, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Conditional_18_Template, 6, 1, "div", 104);
|
|
511
511
|
i0.ɵɵelementEnd();
|
|
512
512
|
} if (rf & 2) {
|
|
513
513
|
const execution_r11 = i0.ɵɵnextContext().$implicit;
|
|
@@ -530,10 +530,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
530
530
|
i0.ɵɵadvance();
|
|
531
531
|
i0.ɵɵconditional(execution_r11.ErrorMessage ? 18 : -1);
|
|
532
532
|
} }
|
|
533
|
-
function
|
|
533
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
534
534
|
const _r10 = i0.ɵɵgetCurrentView();
|
|
535
535
|
i0.ɵɵelementStart(0, "div", 75)(1, "div", 76);
|
|
536
|
-
i0.ɵɵlistener("click", function
|
|
536
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Template_div_click_1_listener() { const execution_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.toggleExecutionExpanded(execution_r11.ID)); });
|
|
537
537
|
i0.ɵɵelementStart(2, "div", 77)(3, "div", 78)(4, "div", 79);
|
|
538
538
|
i0.ɵɵelement(5, "i");
|
|
539
539
|
i0.ɵɵelementEnd();
|
|
@@ -546,16 +546,16 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
546
546
|
i0.ɵɵpipe(12, "date");
|
|
547
547
|
i0.ɵɵelementEnd()()();
|
|
548
548
|
i0.ɵɵelementStart(13, "div", 84);
|
|
549
|
-
i0.ɵɵconditionalCreate(14,
|
|
550
|
-
i0.ɵɵconditionalCreate(15,
|
|
551
|
-
i0.ɵɵconditionalCreate(17,
|
|
552
|
-
i0.ɵɵconditionalCreate(18,
|
|
549
|
+
i0.ɵɵconditionalCreate(14, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_14_Template, 6, 1, "div", 85);
|
|
550
|
+
i0.ɵɵconditionalCreate(15, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_15_Template, 6, 1, "div", 85)(16, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_16_Template, 4, 0, "div", 85);
|
|
551
|
+
i0.ɵɵconditionalCreate(17, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_17_Template, 6, 1, "div", 85);
|
|
552
|
+
i0.ɵɵconditionalCreate(18, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_18_Template, 6, 1, "div", 85);
|
|
553
553
|
i0.ɵɵelementEnd()();
|
|
554
554
|
i0.ɵɵelementStart(19, "div", 86)(20, "button", 87);
|
|
555
|
-
i0.ɵɵlistener("click", function
|
|
555
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Template_button_click_20_listener($event) { const execution_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); ctx_r2.openExecutionRecord(execution_r11.ID); return i0.ɵɵresetView($event.stopPropagation()); });
|
|
556
556
|
i0.ɵɵelement(21, "i", 88);
|
|
557
557
|
i0.ɵɵelementEnd()()();
|
|
558
|
-
i0.ɵɵconditionalCreate(22,
|
|
558
|
+
i0.ɵɵconditionalCreate(22, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Conditional_22_Template, 19, 12, "div", 89);
|
|
559
559
|
i0.ɵɵelementEnd();
|
|
560
560
|
} if (rf & 2) {
|
|
561
561
|
const execution_r11 = ctx.$implicit;
|
|
@@ -582,11 +582,11 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
582
582
|
i0.ɵɵadvance(4);
|
|
583
583
|
i0.ɵɵconditional(ctx_r2.expandedExecutions[execution_r11.ID] ? 22 : -1);
|
|
584
584
|
} }
|
|
585
|
-
function
|
|
585
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
586
586
|
i0.ɵɵelement(0, "i", 118);
|
|
587
587
|
i0.ɵɵtext(1, " Loading... ");
|
|
588
588
|
} }
|
|
589
|
-
function
|
|
589
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
590
590
|
i0.ɵɵtext(0);
|
|
591
591
|
i0.ɵɵelementStart(1, "span", 119);
|
|
592
592
|
i0.ɵɵtext(2);
|
|
@@ -597,23 +597,23 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
597
597
|
i0.ɵɵadvance(2);
|
|
598
598
|
i0.ɵɵtextInterpolate1("(", ctx_r2.totalExecutionHistoryCount, " total)");
|
|
599
599
|
} }
|
|
600
|
-
function
|
|
600
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
601
601
|
const _r12 = i0.ɵɵgetCurrentView();
|
|
602
602
|
i0.ɵɵelementStart(0, "div", 73)(1, "button", 112);
|
|
603
|
-
i0.ɵɵlistener("click", function
|
|
603
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r12); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.goToPreviousPage()); });
|
|
604
604
|
i0.ɵɵelement(2, "i", 113);
|
|
605
605
|
i0.ɵɵtext(3, " Previous ");
|
|
606
606
|
i0.ɵɵelementEnd();
|
|
607
607
|
i0.ɵɵelementStart(4, "div", 114);
|
|
608
|
-
i0.ɵɵconditionalCreate(5,
|
|
608
|
+
i0.ɵɵconditionalCreate(5, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Conditional_5_Template, 2, 0)(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Conditional_6_Template, 3, 3);
|
|
609
609
|
i0.ɵɵelementEnd();
|
|
610
610
|
i0.ɵɵelementStart(7, "button", 112);
|
|
611
|
-
i0.ɵɵlistener("click", function
|
|
611
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r12); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.goToNextPage()); });
|
|
612
612
|
i0.ɵɵtext(8, " Next ");
|
|
613
613
|
i0.ɵɵelement(9, "i", 115);
|
|
614
614
|
i0.ɵɵelementEnd();
|
|
615
615
|
i0.ɵɵelementStart(10, "button", 116);
|
|
616
|
-
i0.ɵɵlistener("click", function
|
|
616
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Template_button_click_10_listener() { i0.ɵɵrestoreView(_r12); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Agent Runs", "")); });
|
|
617
617
|
i0.ɵɵelement(11, "i", 117);
|
|
618
618
|
i0.ɵɵtext(12, " View All in Grid ");
|
|
619
619
|
i0.ɵɵelementEnd()();
|
|
@@ -626,17 +626,17 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
626
626
|
i0.ɵɵadvance(2);
|
|
627
627
|
i0.ɵɵproperty("disabled", !ctx_r2.hasNextPage || ctx_r2.isLoadingPage);
|
|
628
628
|
} }
|
|
629
|
-
function
|
|
629
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
630
630
|
const _r9 = i0.ɵɵgetCurrentView();
|
|
631
631
|
i0.ɵɵelementStart(0, "div", 68)(1, "kendo-textbox", 69);
|
|
632
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
633
|
-
i0.ɵɵlistener("ngModelChange", function
|
|
634
|
-
i0.ɵɵtemplate(2,
|
|
632
|
+
i0.ɵɵtwoWayListener("ngModelChange", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Template_kendo_textbox_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r2.executionSearchText, $event) || (ctx_r2.executionSearchText = $event); return i0.ɵɵresetView($event); });
|
|
633
|
+
i0.ɵɵlistener("ngModelChange", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Template_kendo_textbox_ngModelChange_1_listener() { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.onExecutionSearchChange()); });
|
|
634
|
+
i0.ɵɵtemplate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_ng_template_2_Template, 1, 0, "ng-template", 70);
|
|
635
635
|
i0.ɵɵelementEnd()();
|
|
636
636
|
i0.ɵɵelementStart(3, "div", 71);
|
|
637
|
-
i0.ɵɵconditionalCreate(4,
|
|
638
|
-
i0.ɵɵrepeaterCreate(5,
|
|
639
|
-
i0.ɵɵconditionalCreate(7,
|
|
637
|
+
i0.ɵɵconditionalCreate(4, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_4_Template, 6, 1, "div", 67);
|
|
638
|
+
i0.ɵɵrepeaterCreate(5, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_For_6_Template, 23, 18, "div", 72, _forTrack0);
|
|
639
|
+
i0.ɵɵconditionalCreate(7, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Conditional_7_Template, 13, 3, "div", 73);
|
|
640
640
|
i0.ɵɵelementEnd();
|
|
641
641
|
} if (rf & 2) {
|
|
642
642
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
@@ -650,29 +650,29 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_
|
|
|
650
650
|
i0.ɵɵadvance(2);
|
|
651
651
|
i0.ɵɵconditional(ctx_r2.totalPages > 1 ? 7 : -1);
|
|
652
652
|
} }
|
|
653
|
-
function
|
|
653
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
654
654
|
i0.ɵɵelementStart(0, "div", 66);
|
|
655
|
-
i0.ɵɵconditionalCreate(1,
|
|
655
|
+
i0.ɵɵconditionalCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_1_Template, 6, 0, "div", 67)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Conditional_2_Template, 8, 6);
|
|
656
656
|
i0.ɵɵelementEnd();
|
|
657
657
|
} if (rf & 2) {
|
|
658
658
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
659
659
|
i0.ɵɵadvance();
|
|
660
660
|
i0.ɵɵconditional(ctx_r2.executionHistoryCount === 0 ? 1 : 2);
|
|
661
661
|
} }
|
|
662
|
-
function
|
|
662
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
663
663
|
i0.ɵɵelementStart(0, "kendo-panelbar-item", 13);
|
|
664
|
-
i0.ɵɵtemplate(1,
|
|
664
|
+
i0.ɵɵtemplate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_1_Template, 4, 1, "ng-template", 20)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_ng_template_2_Template, 3, 1, "ng-template", 21);
|
|
665
665
|
i0.ɵɵelementEnd();
|
|
666
666
|
} if (rf & 2) {
|
|
667
667
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
668
668
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("history", false))("disabled", ctx_r2.loadingStates.executionHistory);
|
|
669
669
|
} }
|
|
670
|
-
function
|
|
670
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
671
671
|
i0.ɵɵelementStart(0, "span", 64);
|
|
672
672
|
i0.ɵɵelement(1, "i", 65);
|
|
673
673
|
i0.ɵɵelementEnd();
|
|
674
674
|
} }
|
|
675
|
-
function
|
|
675
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
676
676
|
i0.ɵɵelementStart(0, "span");
|
|
677
677
|
i0.ɵɵtext(1);
|
|
678
678
|
i0.ɵɵelementEnd();
|
|
@@ -681,39 +681,39 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_1_
|
|
|
681
681
|
i0.ɵɵadvance();
|
|
682
682
|
i0.ɵɵtextInterpolate1(" (", ctx_r2.actionCount, ")");
|
|
683
683
|
} }
|
|
684
|
-
function
|
|
684
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
685
685
|
i0.ɵɵelement(0, "i", 120);
|
|
686
686
|
i0.ɵɵtext(1, " Actions ");
|
|
687
|
-
i0.ɵɵconditionalCreate(2,
|
|
687
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_1_Conditional_2_Template, 2, 0, "span", 64)(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_1_Conditional_3_Template, 2, 1, "span");
|
|
688
688
|
} if (rf & 2) {
|
|
689
689
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
690
690
|
i0.ɵɵadvance(2);
|
|
691
691
|
i0.ɵɵconditional(ctx_r2.loadingStates.actions ? 2 : ctx_r2.actionCount > 0 ? 3 : -1);
|
|
692
692
|
} }
|
|
693
|
-
function
|
|
693
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
694
694
|
i0.ɵɵelementStart(0, "div", 122);
|
|
695
695
|
i0.ɵɵelement(1, "i", 118);
|
|
696
696
|
i0.ɵɵelementStart(2, "p");
|
|
697
697
|
i0.ɵɵtext(3, "Loading actions...");
|
|
698
698
|
i0.ɵɵelementEnd()();
|
|
699
699
|
} }
|
|
700
|
-
function
|
|
700
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
701
701
|
const _r13 = i0.ɵɵgetCurrentView();
|
|
702
702
|
i0.ɵɵelementStart(0, "button", 127);
|
|
703
|
-
i0.ɵɵlistener("click", function
|
|
703
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.configureActions()); });
|
|
704
704
|
i0.ɵɵelement(1, "i", 128);
|
|
705
705
|
i0.ɵɵtext(2, " Add Action ");
|
|
706
706
|
i0.ɵɵelementEnd();
|
|
707
707
|
} }
|
|
708
|
-
function
|
|
708
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_3_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
709
709
|
const _r14 = i0.ɵɵgetCurrentView();
|
|
710
710
|
i0.ɵɵelementStart(0, "button", 130);
|
|
711
|
-
i0.ɵɵlistener("click", function
|
|
711
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_3_Conditional_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r14); const ctx_r2 = i0.ɵɵnextContext(6); return i0.ɵɵresetView(ctx_r2.configureActions()); });
|
|
712
712
|
i0.ɵɵelement(1, "i", 128);
|
|
713
713
|
i0.ɵɵtext(2, " Configure First Action ");
|
|
714
714
|
i0.ɵɵelementEnd();
|
|
715
715
|
} }
|
|
716
|
-
function
|
|
716
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
717
717
|
i0.ɵɵelementStart(0, "div", 67);
|
|
718
718
|
i0.ɵɵelement(1, "i", 120);
|
|
719
719
|
i0.ɵɵelementStart(2, "h4");
|
|
@@ -722,14 +722,14 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_
|
|
|
722
722
|
i0.ɵɵelementStart(4, "p");
|
|
723
723
|
i0.ɵɵtext(5, "Add actions to enable this agent to perform specific tasks and operations.");
|
|
724
724
|
i0.ɵɵelementEnd();
|
|
725
|
-
i0.ɵɵconditionalCreate(6,
|
|
725
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_3_Conditional_6_Template, 3, 0, "button", 129);
|
|
726
726
|
i0.ɵɵelementEnd();
|
|
727
727
|
} if (rf & 2) {
|
|
728
728
|
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
729
729
|
i0.ɵɵadvance(6);
|
|
730
730
|
i0.ɵɵconditional(ctx_r2.EditMode && ctx_r2.UserCanCreateActions ? 6 : -1);
|
|
731
731
|
} }
|
|
732
|
-
function
|
|
732
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
733
733
|
i0.ɵɵelementStart(0, "div", 137);
|
|
734
734
|
i0.ɵɵtext(1);
|
|
735
735
|
i0.ɵɵelementEnd();
|
|
@@ -738,7 +738,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_
|
|
|
738
738
|
i0.ɵɵadvance();
|
|
739
739
|
i0.ɵɵtextInterpolate(action_r16.Description);
|
|
740
740
|
} }
|
|
741
|
-
function
|
|
741
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
742
742
|
i0.ɵɵelementStart(0, "span", 139);
|
|
743
743
|
i0.ɵɵtext(1);
|
|
744
744
|
i0.ɵɵelementEnd();
|
|
@@ -747,32 +747,32 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_
|
|
|
747
747
|
i0.ɵɵadvance();
|
|
748
748
|
i0.ɵɵtextInterpolate(action_r16.Type);
|
|
749
749
|
} }
|
|
750
|
-
function
|
|
750
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
751
751
|
const _r17 = i0.ɵɵgetCurrentView();
|
|
752
752
|
i0.ɵɵelementStart(0, "button", 143);
|
|
753
|
-
i0.ɵɵlistener("click", function
|
|
753
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Conditional_13_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r17); const action_r16 = i0.ɵɵnextContext().$implicit; const ctx_r2 = i0.ɵɵnextContext(6); return i0.ɵɵresetView(ctx_r2.removeAction(action_r16, $event)); });
|
|
754
754
|
i0.ɵɵelement(1, "i", 144);
|
|
755
755
|
i0.ɵɵelementEnd();
|
|
756
756
|
} }
|
|
757
|
-
function
|
|
757
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
758
758
|
const _r15 = i0.ɵɵgetCurrentView();
|
|
759
759
|
i0.ɵɵelementStart(0, "div", 133);
|
|
760
|
-
i0.ɵɵlistener("click", function
|
|
760
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Template_div_click_0_listener() { const action_r16 = i0.ɵɵrestoreView(_r15).$implicit; const ctx_r2 = i0.ɵɵnextContext(6); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: Actions", action_r16.ID)); });
|
|
761
761
|
i0.ɵɵelementStart(1, "div", 134);
|
|
762
762
|
i0.ɵɵelement(2, "i");
|
|
763
763
|
i0.ɵɵelementEnd();
|
|
764
764
|
i0.ɵɵelementStart(3, "div", 135)(4, "div", 136);
|
|
765
765
|
i0.ɵɵtext(5);
|
|
766
766
|
i0.ɵɵelementEnd();
|
|
767
|
-
i0.ɵɵconditionalCreate(6,
|
|
767
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Conditional_6_Template, 2, 1, "div", 137);
|
|
768
768
|
i0.ɵɵelementStart(7, "div", 138);
|
|
769
|
-
i0.ɵɵconditionalCreate(8,
|
|
769
|
+
i0.ɵɵconditionalCreate(8, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Conditional_8_Template, 2, 1, "span", 139);
|
|
770
770
|
i0.ɵɵelementStart(9, "span", 140);
|
|
771
771
|
i0.ɵɵelement(10, "i", 50);
|
|
772
772
|
i0.ɵɵtext(11);
|
|
773
773
|
i0.ɵɵelementEnd()()();
|
|
774
774
|
i0.ɵɵelementStart(12, "div", 141);
|
|
775
|
-
i0.ɵɵconditionalCreate(13,
|
|
775
|
+
i0.ɵɵconditionalCreate(13, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Conditional_13_Template, 2, 0, "button", 142);
|
|
776
776
|
i0.ɵɵelement(14, "i", 117);
|
|
777
777
|
i0.ɵɵelementEnd()();
|
|
778
778
|
} if (rf & 2) {
|
|
@@ -795,10 +795,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_
|
|
|
795
795
|
i0.ɵɵadvance(2);
|
|
796
796
|
i0.ɵɵconditional(ctx_r2.EditMode && ctx_r2.UserCanDeleteActions ? 13 : -1);
|
|
797
797
|
} }
|
|
798
|
-
function
|
|
798
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
799
799
|
const _r18 = i0.ɵɵgetCurrentView();
|
|
800
800
|
i0.ɵɵelementStart(0, "div", 145);
|
|
801
|
-
i0.ɵɵlistener("click", function
|
|
801
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_Conditional_3_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r18); const ctx_r2 = i0.ɵɵnextContext(6); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Agent Actions", "")); });
|
|
802
802
|
i0.ɵɵelementStart(1, "span");
|
|
803
803
|
i0.ɵɵtext(2);
|
|
804
804
|
i0.ɵɵelementEnd()();
|
|
@@ -807,10 +807,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_
|
|
|
807
807
|
i0.ɵɵadvance(2);
|
|
808
808
|
i0.ɵɵtextInterpolate1("View all ", ctx_r2.actionCount, " actions...");
|
|
809
809
|
} }
|
|
810
|
-
function
|
|
810
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
811
811
|
i0.ɵɵelementStart(0, "div", 126);
|
|
812
|
-
i0.ɵɵrepeaterCreate(1,
|
|
813
|
-
i0.ɵɵconditionalCreate(3,
|
|
812
|
+
i0.ɵɵrepeaterCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_For_2_Template, 15, 15, "div", 131, _forTrack0);
|
|
813
|
+
i0.ɵɵconditionalCreate(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_Conditional_3_Template, 3, 1, "div", 132);
|
|
814
814
|
i0.ɵɵelementEnd();
|
|
815
815
|
} if (rf & 2) {
|
|
816
816
|
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
@@ -819,11 +819,11 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_
|
|
|
819
819
|
i0.ɵɵadvance(2);
|
|
820
820
|
i0.ɵɵconditional(ctx_r2.actionCount > ctx_r2.agentActions.length ? 3 : -1);
|
|
821
821
|
} }
|
|
822
|
-
function
|
|
822
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
823
823
|
i0.ɵɵelementStart(0, "div", 123)(1, "div", 124);
|
|
824
|
-
i0.ɵɵconditionalCreate(2,
|
|
824
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_2_Template, 3, 0, "button", 125);
|
|
825
825
|
i0.ɵɵelementEnd()();
|
|
826
|
-
i0.ɵɵconditionalCreate(3,
|
|
826
|
+
i0.ɵɵconditionalCreate(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_3_Template, 7, 1, "div", 67)(4, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Conditional_4_Template, 4, 1, "div", 126);
|
|
827
827
|
} if (rf & 2) {
|
|
828
828
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
829
829
|
i0.ɵɵadvance(2);
|
|
@@ -831,29 +831,29 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_
|
|
|
831
831
|
i0.ɵɵadvance();
|
|
832
832
|
i0.ɵɵconditional(ctx_r2.actionCount === 0 ? 3 : 4);
|
|
833
833
|
} }
|
|
834
|
-
function
|
|
834
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
835
835
|
i0.ɵɵelementStart(0, "div", 121);
|
|
836
|
-
i0.ɵɵconditionalCreate(1,
|
|
836
|
+
i0.ɵɵconditionalCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_1_Template, 4, 0, "div", 122)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Conditional_2_Template, 5, 2);
|
|
837
837
|
i0.ɵɵelementEnd();
|
|
838
838
|
} if (rf & 2) {
|
|
839
839
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
840
840
|
i0.ɵɵadvance();
|
|
841
841
|
i0.ɵɵconditional(ctx_r2.loadingStates.actions ? 1 : 2);
|
|
842
842
|
} }
|
|
843
|
-
function
|
|
843
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_Template(rf, ctx) { if (rf & 1) {
|
|
844
844
|
i0.ɵɵelementStart(0, "kendo-panelbar-item", 14);
|
|
845
|
-
i0.ɵɵtemplate(1,
|
|
845
|
+
i0.ɵɵtemplate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_1_Template, 4, 1, "ng-template", 20)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_ng_template_2_Template, 3, 1, "ng-template", 21);
|
|
846
846
|
i0.ɵɵelementEnd();
|
|
847
847
|
} if (rf & 2) {
|
|
848
848
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
849
849
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("actions", false))("disabled", ctx_r2.loadingStates.actions);
|
|
850
850
|
} }
|
|
851
|
-
function
|
|
851
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
852
852
|
i0.ɵɵelementStart(0, "span", 64);
|
|
853
853
|
i0.ɵɵelement(1, "i", 65);
|
|
854
854
|
i0.ɵɵelementEnd();
|
|
855
855
|
} }
|
|
856
|
-
function
|
|
856
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
857
857
|
i0.ɵɵelementStart(0, "span");
|
|
858
858
|
i0.ɵɵtext(1);
|
|
859
859
|
i0.ɵɵelementEnd();
|
|
@@ -862,29 +862,29 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_1
|
|
|
862
862
|
i0.ɵɵadvance();
|
|
863
863
|
i0.ɵɵtextInterpolate1(" (", ctx_r2.totalSubAgentCount, ")");
|
|
864
864
|
} }
|
|
865
|
-
function
|
|
865
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
866
866
|
i0.ɵɵelement(0, "i", 45);
|
|
867
867
|
i0.ɵɵtext(1, " Sub-Agents ");
|
|
868
|
-
i0.ɵɵconditionalCreate(2,
|
|
868
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_1_Conditional_2_Template, 2, 0, "span", 64)(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_1_Conditional_3_Template, 2, 1, "span");
|
|
869
869
|
} if (rf & 2) {
|
|
870
870
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
871
871
|
i0.ɵɵadvance(2);
|
|
872
872
|
i0.ɵɵconditional(ctx_r2.loadingStates.subAgents ? 2 : ctx_r2.totalSubAgentCount > 0 ? 3 : -1);
|
|
873
873
|
} }
|
|
874
|
-
function
|
|
874
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
875
875
|
const _r20 = i0.ɵɵgetCurrentView();
|
|
876
876
|
i0.ɵɵelementStart(0, "button", 153);
|
|
877
|
-
i0.ɵɵlistener("click", function
|
|
877
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_14_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r20); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.createChildSubAgent()); });
|
|
878
878
|
i0.ɵɵelement(1, "i", 151);
|
|
879
879
|
i0.ɵɵtext(2, " Create Child ");
|
|
880
880
|
i0.ɵɵelementEnd();
|
|
881
881
|
i0.ɵɵelementStart(3, "button", 154);
|
|
882
|
-
i0.ɵɵlistener("click", function
|
|
882
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_14_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r20); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.linkRelatedSubAgent()); });
|
|
883
883
|
i0.ɵɵelement(4, "i", 152);
|
|
884
884
|
i0.ɵɵtext(5, " Link Related ");
|
|
885
885
|
i0.ɵɵelementEnd();
|
|
886
886
|
} }
|
|
887
|
-
function
|
|
887
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
888
888
|
i0.ɵɵelementStart(0, "div", 67);
|
|
889
889
|
i0.ɵɵelement(1, "i", 45);
|
|
890
890
|
i0.ɵɵelementStart(2, "h4");
|
|
@@ -910,20 +910,20 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
910
910
|
i0.ɵɵtext(18, "Reusable agents with payload mapping");
|
|
911
911
|
i0.ɵɵelementEnd()()()();
|
|
912
912
|
} }
|
|
913
|
-
function
|
|
913
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
914
914
|
i0.ɵɵelement(0, "img", 162);
|
|
915
915
|
} if (rf & 2) {
|
|
916
916
|
const item_r22 = i0.ɵɵnextContext().$implicit;
|
|
917
917
|
i0.ɵɵproperty("src", item_r22.agent.LogoURL, i0.ɵɵsanitizeUrl)("alt", item_r22.agent.Name + " logo");
|
|
918
918
|
} }
|
|
919
|
-
function
|
|
919
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
920
920
|
i0.ɵɵelement(0, "i");
|
|
921
921
|
} if (rf & 2) {
|
|
922
922
|
const item_r22 = i0.ɵɵnextContext().$implicit;
|
|
923
923
|
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
924
924
|
i0.ɵɵclassMap(ctx_r2.getSubAgentIcon(item_r22.agent));
|
|
925
925
|
} }
|
|
926
|
-
function
|
|
926
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
927
927
|
i0.ɵɵelementStart(0, "div", 137);
|
|
928
928
|
i0.ɵɵtext(1);
|
|
929
929
|
i0.ɵɵelementEnd();
|
|
@@ -932,7 +932,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
932
932
|
i0.ɵɵadvance();
|
|
933
933
|
i0.ɵɵtextInterpolate(item_r22.agent.Description);
|
|
934
934
|
} }
|
|
935
|
-
function
|
|
935
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
936
936
|
i0.ɵɵelementStart(0, "span", 140);
|
|
937
937
|
i0.ɵɵtext(1);
|
|
938
938
|
i0.ɵɵelementEnd();
|
|
@@ -943,7 +943,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
943
943
|
i0.ɵɵadvance();
|
|
944
944
|
i0.ɵɵtextInterpolate1(" ", item_r22.agent.Status, " ");
|
|
945
945
|
} }
|
|
946
|
-
function
|
|
946
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_16_Template(rf, ctx) { if (rf & 1) {
|
|
947
947
|
i0.ɵɵelementStart(0, "span", 139);
|
|
948
948
|
i0.ɵɵtext(1);
|
|
949
949
|
i0.ɵɵelementEnd();
|
|
@@ -952,24 +952,24 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
952
952
|
i0.ɵɵadvance();
|
|
953
953
|
i0.ɵɵtextInterpolate(item_r22.agent.Type);
|
|
954
954
|
} }
|
|
955
|
-
function
|
|
955
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
956
956
|
const _r23 = i0.ɵɵgetCurrentView();
|
|
957
957
|
i0.ɵɵelementStart(0, "button", 169);
|
|
958
|
-
i0.ɵɵlistener("click", function
|
|
958
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_0_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r23); const item_r22 = i0.ɵɵnextContext(2).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.configureOutputMapping(item_r22, $event)); });
|
|
959
959
|
i0.ɵɵelement(1, "i", 170);
|
|
960
960
|
i0.ɵɵelementEnd();
|
|
961
961
|
} }
|
|
962
|
-
function
|
|
962
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
963
963
|
const _r24 = i0.ɵɵgetCurrentView();
|
|
964
964
|
i0.ɵɵelementStart(0, "button", 171);
|
|
965
|
-
i0.ɵɵlistener("click", function
|
|
965
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_1_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r24); const item_r22 = i0.ɵɵnextContext(2).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.openSubAgentAdvancedSettings(item_r22.agent, $event)); });
|
|
966
966
|
i0.ɵɵelement(1, "i", 90);
|
|
967
967
|
i0.ɵɵelementEnd();
|
|
968
968
|
} }
|
|
969
|
-
function
|
|
969
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
970
970
|
const _r25 = i0.ɵɵgetCurrentView();
|
|
971
971
|
i0.ɵɵelementStart(0, "button", 172);
|
|
972
|
-
i0.ɵɵlistener("click", function
|
|
972
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_2_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r25); const item_r22 = i0.ɵɵnextContext(2).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(item_r22.type === "child" ? ctx_r2.removeChildSubAgent(item_r22, $event) : ctx_r2.unlinkRelatedSubAgent(item_r22, $event)); });
|
|
973
973
|
i0.ɵɵelement(1, "i");
|
|
974
974
|
i0.ɵɵelementEnd();
|
|
975
975
|
} if (rf & 2) {
|
|
@@ -978,10 +978,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
978
978
|
i0.ɵɵadvance();
|
|
979
979
|
i0.ɵɵclassMap(item_r22.type === "child" ? "fa-solid fa-trash" : "fa-solid fa-unlink");
|
|
980
980
|
} }
|
|
981
|
-
function
|
|
982
|
-
i0.ɵɵconditionalCreate(0,
|
|
983
|
-
i0.ɵɵconditionalCreate(1,
|
|
984
|
-
i0.ɵɵconditionalCreate(2,
|
|
981
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
982
|
+
i0.ɵɵconditionalCreate(0, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_0_Template, 2, 0, "button", 166);
|
|
983
|
+
i0.ɵɵconditionalCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_1_Template, 2, 0, "button", 167);
|
|
984
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Conditional_2_Template, 2, 3, "button", 168);
|
|
985
985
|
} if (rf & 2) {
|
|
986
986
|
const item_r22 = i0.ɵɵnextContext().$implicit;
|
|
987
987
|
const ctx_r2 = i0.ɵɵnextContext(5);
|
|
@@ -991,30 +991,30 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
991
991
|
i0.ɵɵadvance();
|
|
992
992
|
i0.ɵɵconditional(ctx_r2.UserCanDeleteSubAgents ? 2 : -1);
|
|
993
993
|
} }
|
|
994
|
-
function
|
|
994
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
995
995
|
const _r21 = i0.ɵɵgetCurrentView();
|
|
996
996
|
i0.ɵɵelementStart(0, "div", 160);
|
|
997
|
-
i0.ɵɵlistener("click", function
|
|
997
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Template_div_click_0_listener() { const item_r22 = i0.ɵɵrestoreView(_r21).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Agents", item_r22.agent.ID)); });
|
|
998
998
|
i0.ɵɵelementStart(1, "div", 161);
|
|
999
999
|
i0.ɵɵelement(2, "i");
|
|
1000
1000
|
i0.ɵɵtext(3);
|
|
1001
1001
|
i0.ɵɵelementEnd();
|
|
1002
1002
|
i0.ɵɵelementStart(4, "div", 134);
|
|
1003
|
-
i0.ɵɵconditionalCreate(5,
|
|
1003
|
+
i0.ɵɵconditionalCreate(5, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_5_Template, 1, 2, "img", 162)(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_6_Template, 1, 2, "i", 30);
|
|
1004
1004
|
i0.ɵɵelementEnd();
|
|
1005
1005
|
i0.ɵɵelementStart(7, "div", 135)(8, "div", 136);
|
|
1006
1006
|
i0.ɵɵtext(9);
|
|
1007
1007
|
i0.ɵɵelementEnd();
|
|
1008
|
-
i0.ɵɵconditionalCreate(10,
|
|
1008
|
+
i0.ɵɵconditionalCreate(10, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_10_Template, 2, 1, "div", 137);
|
|
1009
1009
|
i0.ɵɵelementStart(11, "div", 138)(12, "span", 163);
|
|
1010
1010
|
i0.ɵɵelement(13, "i", 164);
|
|
1011
1011
|
i0.ɵɵtext(14);
|
|
1012
1012
|
i0.ɵɵelementEnd();
|
|
1013
|
-
i0.ɵɵconditionalCreate(15,
|
|
1014
|
-
i0.ɵɵconditionalCreate(16,
|
|
1013
|
+
i0.ɵɵconditionalCreate(15, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_15_Template, 2, 3, "span", 165);
|
|
1014
|
+
i0.ɵɵconditionalCreate(16, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_16_Template, 2, 1, "span", 139);
|
|
1015
1015
|
i0.ɵɵelementEnd()();
|
|
1016
1016
|
i0.ɵɵelementStart(17, "div", 141);
|
|
1017
|
-
i0.ɵɵconditionalCreate(18,
|
|
1017
|
+
i0.ɵɵconditionalCreate(18, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Conditional_18_Template, 3, 3);
|
|
1018
1018
|
i0.ɵɵelement(19, "i", 117);
|
|
1019
1019
|
i0.ɵɵelementEnd()();
|
|
1020
1020
|
} if (rf & 2) {
|
|
@@ -1042,36 +1042,36 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
1042
1042
|
i0.ɵɵadvance(2);
|
|
1043
1043
|
i0.ɵɵconditional(ctx_r2.EditMode ? 18 : -1);
|
|
1044
1044
|
} }
|
|
1045
|
-
function
|
|
1045
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_Template(rf, ctx) { if (rf & 1) {
|
|
1046
1046
|
i0.ɵɵelementStart(0, "div", 126);
|
|
1047
|
-
i0.ɵɵrepeaterCreate(1,
|
|
1047
|
+
i0.ɵɵrepeaterCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_For_2_Template, 20, 16, "div", 159, _forTrack1);
|
|
1048
1048
|
i0.ɵɵelementEnd();
|
|
1049
1049
|
} if (rf & 2) {
|
|
1050
1050
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
1051
1051
|
i0.ɵɵadvance();
|
|
1052
1052
|
i0.ɵɵrepeater(ctx_r2.filteredSubAgents);
|
|
1053
1053
|
} }
|
|
1054
|
-
function
|
|
1054
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
1055
1055
|
const _r19 = i0.ɵɵgetCurrentView();
|
|
1056
1056
|
i0.ɵɵelementStart(0, "div", 121)(1, "div", 146)(2, "div", 147)(3, "kendo-buttongroup", 148)(4, "button", 149);
|
|
1057
|
-
i0.ɵɵlistener("click", function
|
|
1057
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r19); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.setSubAgentFilter("all")); });
|
|
1058
1058
|
i0.ɵɵelement(5, "i", 150);
|
|
1059
1059
|
i0.ɵɵtext(6);
|
|
1060
1060
|
i0.ɵɵelementEnd();
|
|
1061
1061
|
i0.ɵɵelementStart(7, "button", 149);
|
|
1062
|
-
i0.ɵɵlistener("click", function
|
|
1062
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r19); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.setSubAgentFilter("child")); });
|
|
1063
1063
|
i0.ɵɵelement(8, "i", 151);
|
|
1064
1064
|
i0.ɵɵtext(9);
|
|
1065
1065
|
i0.ɵɵelementEnd();
|
|
1066
1066
|
i0.ɵɵelementStart(10, "button", 149);
|
|
1067
|
-
i0.ɵɵlistener("click", function
|
|
1067
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Template_button_click_10_listener() { i0.ɵɵrestoreView(_r19); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.setSubAgentFilter("related")); });
|
|
1068
1068
|
i0.ɵɵelement(11, "i", 152);
|
|
1069
1069
|
i0.ɵɵtext(12);
|
|
1070
1070
|
i0.ɵɵelementEnd()()();
|
|
1071
1071
|
i0.ɵɵelementStart(13, "div", 124);
|
|
1072
|
-
i0.ɵɵconditionalCreate(14,
|
|
1072
|
+
i0.ɵɵconditionalCreate(14, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_14_Template, 6, 0);
|
|
1073
1073
|
i0.ɵɵelementEnd()();
|
|
1074
|
-
i0.ɵɵconditionalCreate(15,
|
|
1074
|
+
i0.ɵɵconditionalCreate(15, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_15_Template, 19, 0, "div", 67)(16, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Conditional_16_Template, 3, 0, "div", 126);
|
|
1075
1075
|
i0.ɵɵelementEnd();
|
|
1076
1076
|
} if (rf & 2) {
|
|
1077
1077
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
@@ -1092,20 +1092,20 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2
|
|
|
1092
1092
|
i0.ɵɵadvance();
|
|
1093
1093
|
i0.ɵɵconditional(ctx_r2.totalSubAgentCount === 0 ? 15 : 16);
|
|
1094
1094
|
} }
|
|
1095
|
-
function
|
|
1095
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
1096
1096
|
i0.ɵɵelementStart(0, "kendo-panelbar-item", 15);
|
|
1097
|
-
i0.ɵɵtemplate(1,
|
|
1097
|
+
i0.ɵɵtemplate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_1_Template, 4, 1, "ng-template", 20)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_ng_template_2_Template, 17, 11, "ng-template", 21);
|
|
1098
1098
|
i0.ɵɵelementEnd();
|
|
1099
1099
|
} if (rf & 2) {
|
|
1100
1100
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
1101
1101
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("subagents", false))("disabled", ctx_r2.loadingStates.subAgents);
|
|
1102
1102
|
} }
|
|
1103
|
-
function
|
|
1103
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
1104
1104
|
i0.ɵɵelementStart(0, "span", 64);
|
|
1105
1105
|
i0.ɵɵelement(1, "i", 65);
|
|
1106
1106
|
i0.ɵɵelementEnd();
|
|
1107
1107
|
} }
|
|
1108
|
-
function
|
|
1108
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
1109
1109
|
i0.ɵɵelementStart(0, "span");
|
|
1110
1110
|
i0.ɵɵtext(1);
|
|
1111
1111
|
i0.ɵɵelementEnd();
|
|
@@ -1114,26 +1114,26 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_1
|
|
|
1114
1114
|
i0.ɵɵadvance();
|
|
1115
1115
|
i0.ɵɵtextInterpolate1(" (", ctx_r2.promptCount, ")");
|
|
1116
1116
|
} }
|
|
1117
|
-
function
|
|
1117
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
1118
1118
|
i0.ɵɵelement(0, "i", 107);
|
|
1119
1119
|
i0.ɵɵtext(1, " Prompts ");
|
|
1120
|
-
i0.ɵɵconditionalCreate(2,
|
|
1120
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_1_Conditional_2_Template, 2, 0, "span", 64)(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_1_Conditional_3_Template, 2, 1, "span");
|
|
1121
1121
|
} if (rf & 2) {
|
|
1122
1122
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
1123
1123
|
i0.ɵɵadvance(2);
|
|
1124
1124
|
i0.ɵɵconditional(ctx_r2.loadingStates.prompts ? 2 : ctx_r2.promptCount > 0 ? 3 : -1);
|
|
1125
1125
|
} }
|
|
1126
|
-
function
|
|
1126
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
1127
1127
|
const _r26 = i0.ɵɵgetCurrentView();
|
|
1128
1128
|
i0.ɵɵelementStart(0, "kendo-dropdownlist", 179);
|
|
1129
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
1129
|
+
i0.ɵɵtwoWayListener("ngModelChange", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_7_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r26); const ctx_r2 = i0.ɵɵnextContext(4); i0.ɵɵtwoWayBindingSet(ctx_r2.record.ModelSelectionMode, $event) || (ctx_r2.record.ModelSelectionMode = $event); return i0.ɵɵresetView($event); });
|
|
1130
1130
|
i0.ɵɵelementEnd();
|
|
1131
1131
|
} if (rf & 2) {
|
|
1132
1132
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
1133
1133
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r2.record.ModelSelectionMode);
|
|
1134
1134
|
i0.ɵɵproperty("data", ctx_r2.modelSelectionModes)("valuePrimitive", true);
|
|
1135
1135
|
} }
|
|
1136
|
-
function
|
|
1136
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
1137
1137
|
i0.ɵɵelementStart(0, "span", 178);
|
|
1138
1138
|
i0.ɵɵtext(1);
|
|
1139
1139
|
i0.ɵɵelementEnd();
|
|
@@ -1142,23 +1142,23 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1142
1142
|
i0.ɵɵadvance();
|
|
1143
1143
|
i0.ɵɵtextInterpolate(ctx_r2.record.ModelSelectionMode || "Agent Type");
|
|
1144
1144
|
} }
|
|
1145
|
-
function
|
|
1145
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
1146
1146
|
const _r27 = i0.ɵɵgetCurrentView();
|
|
1147
1147
|
i0.ɵɵelementStart(0, "button", 127);
|
|
1148
|
-
i0.ɵɵlistener("click", function
|
|
1148
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_10_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r27); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.addPrompt()); });
|
|
1149
1149
|
i0.ɵɵelement(1, "i", 128);
|
|
1150
1150
|
i0.ɵɵtext(2, " Add Prompt ");
|
|
1151
1151
|
i0.ɵɵelementEnd();
|
|
1152
1152
|
} }
|
|
1153
|
-
function
|
|
1153
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_11_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
1154
1154
|
const _r28 = i0.ɵɵgetCurrentView();
|
|
1155
1155
|
i0.ɵɵelementStart(0, "button", 130);
|
|
1156
|
-
i0.ɵɵlistener("click", function
|
|
1156
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_11_Conditional_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r28); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.addPrompt()); });
|
|
1157
1157
|
i0.ɵɵelement(1, "i", 128);
|
|
1158
1158
|
i0.ɵɵtext(2, " Create First Prompt ");
|
|
1159
1159
|
i0.ɵɵelementEnd();
|
|
1160
1160
|
} }
|
|
1161
|
-
function
|
|
1161
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
1162
1162
|
i0.ɵɵelementStart(0, "div", 67);
|
|
1163
1163
|
i0.ɵɵelement(1, "i", 107);
|
|
1164
1164
|
i0.ɵɵelementStart(2, "h4");
|
|
@@ -1167,14 +1167,14 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1167
1167
|
i0.ɵɵelementStart(4, "p");
|
|
1168
1168
|
i0.ɵɵtext(5, "Add prompts to define how this agent processes requests and generates responses.");
|
|
1169
1169
|
i0.ɵɵelementEnd();
|
|
1170
|
-
i0.ɵɵconditionalCreate(6,
|
|
1170
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_11_Conditional_6_Template, 3, 0, "button", 129);
|
|
1171
1171
|
i0.ɵɵelementEnd();
|
|
1172
1172
|
} if (rf & 2) {
|
|
1173
1173
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
1174
1174
|
i0.ɵɵadvance(6);
|
|
1175
1175
|
i0.ɵɵconditional(ctx_r2.EditMode && ctx_r2.UserCanCreateNewPrompts ? 6 : -1);
|
|
1176
1176
|
} }
|
|
1177
|
-
function
|
|
1177
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
1178
1178
|
i0.ɵɵelementStart(0, "div", 137);
|
|
1179
1179
|
i0.ɵɵtext(1);
|
|
1180
1180
|
i0.ɵɵelementEnd();
|
|
@@ -1183,7 +1183,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1183
1183
|
i0.ɵɵadvance();
|
|
1184
1184
|
i0.ɵɵtextInterpolate2("", prompt_r30.TemplateText.substring(0, 120), "", prompt_r30.TemplateText.length > 120 ? "..." : "");
|
|
1185
1185
|
} }
|
|
1186
|
-
function
|
|
1186
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
1187
1187
|
i0.ɵɵelementStart(0, "span", 139);
|
|
1188
1188
|
i0.ɵɵtext(1);
|
|
1189
1189
|
i0.ɵɵelementEnd();
|
|
@@ -1192,37 +1192,37 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1192
1192
|
i0.ɵɵadvance();
|
|
1193
1193
|
i0.ɵɵtextInterpolate(prompt_r30.PromptRole);
|
|
1194
1194
|
} }
|
|
1195
|
-
function
|
|
1195
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
1196
1196
|
const _r31 = i0.ɵɵgetCurrentView();
|
|
1197
1197
|
i0.ɵɵelementStart(0, "button", 171);
|
|
1198
|
-
i0.ɵɵlistener("click", function
|
|
1198
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_10_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r31); const prompt_r30 = i0.ɵɵnextContext().$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.openPromptAdvancedSettings(prompt_r30, $event)); });
|
|
1199
1199
|
i0.ɵɵelement(1, "i", 90);
|
|
1200
1200
|
i0.ɵɵelementEnd();
|
|
1201
1201
|
} }
|
|
1202
|
-
function
|
|
1202
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
1203
1203
|
const _r32 = i0.ɵɵgetCurrentView();
|
|
1204
1204
|
i0.ɵɵelementStart(0, "button", 184);
|
|
1205
|
-
i0.ɵɵlistener("click", function
|
|
1205
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_11_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r32); const prompt_r30 = i0.ɵɵnextContext().$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.removePrompt(prompt_r30, $event)); });
|
|
1206
1206
|
i0.ɵɵelement(1, "i", 144);
|
|
1207
1207
|
i0.ɵɵelementEnd();
|
|
1208
1208
|
} }
|
|
1209
|
-
function
|
|
1209
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
1210
1210
|
const _r29 = i0.ɵɵgetCurrentView();
|
|
1211
1211
|
i0.ɵɵelementStart(0, "div", 181);
|
|
1212
|
-
i0.ɵɵlistener("click", function
|
|
1212
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Template_div_click_0_listener() { const prompt_r30 = i0.ɵɵrestoreView(_r29).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Prompts", prompt_r30.ID)); });
|
|
1213
1213
|
i0.ɵɵelementStart(1, "div", 134);
|
|
1214
1214
|
i0.ɵɵelement(2, "i", 182);
|
|
1215
1215
|
i0.ɵɵelementEnd();
|
|
1216
1216
|
i0.ɵɵelementStart(3, "div", 135)(4, "div", 136);
|
|
1217
1217
|
i0.ɵɵtext(5);
|
|
1218
1218
|
i0.ɵɵelementEnd();
|
|
1219
|
-
i0.ɵɵconditionalCreate(6,
|
|
1219
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_6_Template, 2, 2, "div", 137);
|
|
1220
1220
|
i0.ɵɵelementStart(7, "div", 138);
|
|
1221
|
-
i0.ɵɵconditionalCreate(8,
|
|
1221
|
+
i0.ɵɵconditionalCreate(8, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_8_Template, 2, 1, "span", 139);
|
|
1222
1222
|
i0.ɵɵelementEnd()();
|
|
1223
1223
|
i0.ɵɵelementStart(9, "div", 141);
|
|
1224
|
-
i0.ɵɵconditionalCreate(10,
|
|
1225
|
-
i0.ɵɵconditionalCreate(11,
|
|
1224
|
+
i0.ɵɵconditionalCreate(10, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_10_Template, 2, 0, "button", 167);
|
|
1225
|
+
i0.ɵɵconditionalCreate(11, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Conditional_11_Template, 2, 0, "button", 183);
|
|
1226
1226
|
i0.ɵɵelement(12, "i", 117);
|
|
1227
1227
|
i0.ɵɵelementEnd()();
|
|
1228
1228
|
} if (rf & 2) {
|
|
@@ -1239,10 +1239,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1239
1239
|
i0.ɵɵadvance();
|
|
1240
1240
|
i0.ɵɵconditional(ctx_r2.EditMode && ctx_r2.UserCanDeletePrompts ? 11 : -1);
|
|
1241
1241
|
} }
|
|
1242
|
-
function
|
|
1242
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
1243
1243
|
const _r33 = i0.ɵɵgetCurrentView();
|
|
1244
1244
|
i0.ɵɵelementStart(0, "div", 145);
|
|
1245
|
-
i0.ɵɵlistener("click", function
|
|
1245
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_Conditional_3_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r33); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Prompts", "")); });
|
|
1246
1246
|
i0.ɵɵelementStart(1, "span");
|
|
1247
1247
|
i0.ɵɵtext(2);
|
|
1248
1248
|
i0.ɵɵelementEnd()();
|
|
@@ -1251,10 +1251,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1251
1251
|
i0.ɵɵadvance(2);
|
|
1252
1252
|
i0.ɵɵtextInterpolate1("View all ", ctx_r2.promptCount, " prompts...");
|
|
1253
1253
|
} }
|
|
1254
|
-
function
|
|
1254
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
1255
1255
|
i0.ɵɵelementStart(0, "div", 126);
|
|
1256
|
-
i0.ɵɵrepeaterCreate(1,
|
|
1257
|
-
i0.ɵɵconditionalCreate(3,
|
|
1256
|
+
i0.ɵɵrepeaterCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_For_2_Template, 13, 5, "div", 180, _forTrack0);
|
|
1257
|
+
i0.ɵɵconditionalCreate(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_Conditional_3_Template, 3, 1, "div", 132);
|
|
1258
1258
|
i0.ɵɵelementEnd();
|
|
1259
1259
|
} if (rf & 2) {
|
|
1260
1260
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
@@ -1263,17 +1263,17 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1263
1263
|
i0.ɵɵadvance(2);
|
|
1264
1264
|
i0.ɵɵconditional(ctx_r2.promptCount > ctx_r2.agentPrompts.length ? 3 : -1);
|
|
1265
1265
|
} }
|
|
1266
|
-
function
|
|
1266
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
1267
1267
|
i0.ɵɵelementStart(0, "div", 121)(1, "div", 123)(2, "div", 173)(3, "div", 174)(4, "label", 175);
|
|
1268
1268
|
i0.ɵɵelement(5, "i", 176);
|
|
1269
1269
|
i0.ɵɵtext(6, " Model Selection: ");
|
|
1270
1270
|
i0.ɵɵelementEnd();
|
|
1271
|
-
i0.ɵɵconditionalCreate(7,
|
|
1271
|
+
i0.ɵɵconditionalCreate(7, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_7_Template, 1, 3, "kendo-dropdownlist", 177)(8, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_8_Template, 2, 1, "span", 178);
|
|
1272
1272
|
i0.ɵɵelementEnd()();
|
|
1273
1273
|
i0.ɵɵelementStart(9, "div", 124);
|
|
1274
|
-
i0.ɵɵconditionalCreate(10,
|
|
1274
|
+
i0.ɵɵconditionalCreate(10, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_10_Template, 3, 0, "button", 125);
|
|
1275
1275
|
i0.ɵɵelementEnd()();
|
|
1276
|
-
i0.ɵɵconditionalCreate(11,
|
|
1276
|
+
i0.ɵɵconditionalCreate(11, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_11_Template, 7, 1, "div", 67)(12, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Conditional_12_Template, 4, 1, "div", 126);
|
|
1277
1277
|
i0.ɵɵelementEnd();
|
|
1278
1278
|
} if (rf & 2) {
|
|
1279
1279
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
@@ -1284,23 +1284,23 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2
|
|
|
1284
1284
|
i0.ɵɵadvance();
|
|
1285
1285
|
i0.ɵɵconditional(ctx_r2.promptCount === 0 ? 11 : 12);
|
|
1286
1286
|
} }
|
|
1287
|
-
function
|
|
1287
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
1288
1288
|
i0.ɵɵelementStart(0, "kendo-panelbar-item", 16);
|
|
1289
|
-
i0.ɵɵtemplate(1,
|
|
1289
|
+
i0.ɵɵtemplate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_1_Template, 4, 1, "ng-template", 20)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_ng_template_2_Template, 13, 3, "ng-template", 21);
|
|
1290
1290
|
i0.ɵɵelementEnd();
|
|
1291
1291
|
} if (rf & 2) {
|
|
1292
1292
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
1293
1293
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("prompts", false))("disabled", ctx_r2.loadingStates.prompts);
|
|
1294
1294
|
} }
|
|
1295
|
-
function
|
|
1295
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
1296
1296
|
i0.ɵɵelementStart(0, "span", 64);
|
|
1297
1297
|
i0.ɵɵelement(1, "i", 65);
|
|
1298
1298
|
i0.ɵɵelementEnd();
|
|
1299
1299
|
} }
|
|
1300
|
-
function
|
|
1300
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
1301
1301
|
i0.ɵɵelement(0, "i", 185);
|
|
1302
1302
|
i0.ɵɵtext(1);
|
|
1303
|
-
i0.ɵɵconditionalCreate(2,
|
|
1303
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_1_Conditional_2_Template, 2, 0, "span", 64);
|
|
1304
1304
|
} if (rf & 2) {
|
|
1305
1305
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
1306
1306
|
i0.ɵɵadvance();
|
|
@@ -1308,7 +1308,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_1
|
|
|
1308
1308
|
i0.ɵɵadvance();
|
|
1309
1309
|
i0.ɵɵconditional(ctx_r2.loadingStates.learningCycles ? 2 : -1);
|
|
1310
1310
|
} }
|
|
1311
|
-
function
|
|
1311
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
1312
1312
|
i0.ɵɵelementStart(0, "div", 67);
|
|
1313
1313
|
i0.ɵɵelement(1, "i", 185);
|
|
1314
1314
|
i0.ɵɵelementStart(2, "h4");
|
|
@@ -1318,7 +1318,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2
|
|
|
1318
1318
|
i0.ɵɵtext(5, "Learning cycles will appear here as the agent processes requests and improves over time.");
|
|
1319
1319
|
i0.ɵɵelementEnd()();
|
|
1320
1320
|
} }
|
|
1321
|
-
function
|
|
1321
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
1322
1322
|
i0.ɵɵelementStart(0, "span", 139);
|
|
1323
1323
|
i0.ɵɵelement(1, "i", 189);
|
|
1324
1324
|
i0.ɵɵtext(2);
|
|
@@ -1329,7 +1329,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2
|
|
|
1329
1329
|
i0.ɵɵadvance(2);
|
|
1330
1330
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(3, 1, cycle_r35.StartedAt, "short"), " ");
|
|
1331
1331
|
} }
|
|
1332
|
-
function
|
|
1332
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
1333
1333
|
i0.ɵɵelementStart(0, "span", 140);
|
|
1334
1334
|
i0.ɵɵtext(1);
|
|
1335
1335
|
i0.ɵɵelementEnd();
|
|
@@ -1338,10 +1338,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2
|
|
|
1338
1338
|
i0.ɵɵadvance();
|
|
1339
1339
|
i0.ɵɵtextInterpolate(cycle_r35.Status);
|
|
1340
1340
|
} }
|
|
1341
|
-
function
|
|
1341
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
1342
1342
|
const _r34 = i0.ɵɵgetCurrentView();
|
|
1343
1343
|
i0.ɵɵelementStart(0, "div", 188);
|
|
1344
|
-
i0.ɵɵlistener("click", function
|
|
1344
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_For_2_Template_div_click_0_listener() { const cycle_r35 = i0.ɵɵrestoreView(_r34).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Agent Learning Cycles", cycle_r35.ID)); });
|
|
1345
1345
|
i0.ɵɵelementStart(1, "div", 134);
|
|
1346
1346
|
i0.ɵɵelement(2, "i", 185);
|
|
1347
1347
|
i0.ɵɵelementEnd();
|
|
@@ -1349,8 +1349,8 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2
|
|
|
1349
1349
|
i0.ɵɵtext(5);
|
|
1350
1350
|
i0.ɵɵelementEnd();
|
|
1351
1351
|
i0.ɵɵelementStart(6, "div", 138);
|
|
1352
|
-
i0.ɵɵconditionalCreate(7,
|
|
1353
|
-
i0.ɵɵconditionalCreate(8,
|
|
1352
|
+
i0.ɵɵconditionalCreate(7, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_For_2_Conditional_7_Template, 4, 4, "span", 139);
|
|
1353
|
+
i0.ɵɵconditionalCreate(8, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_For_2_Conditional_8_Template, 2, 1, "span", 140);
|
|
1354
1354
|
i0.ɵɵelementEnd()();
|
|
1355
1355
|
i0.ɵɵelementStart(9, "div", 141);
|
|
1356
1356
|
i0.ɵɵelement(10, "i", 117);
|
|
@@ -1364,10 +1364,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2
|
|
|
1364
1364
|
i0.ɵɵadvance();
|
|
1365
1365
|
i0.ɵɵconditional(cycle_r35.Status ? 8 : -1);
|
|
1366
1366
|
} }
|
|
1367
|
-
function
|
|
1367
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
1368
1368
|
const _r36 = i0.ɵɵgetCurrentView();
|
|
1369
1369
|
i0.ɵɵelementStart(0, "div", 145);
|
|
1370
|
-
i0.ɵɵlistener("click", function
|
|
1370
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_Conditional_3_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r36); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Agent Learning Cycles", "")); });
|
|
1371
1371
|
i0.ɵɵelementStart(1, "span");
|
|
1372
1372
|
i0.ɵɵtext(2);
|
|
1373
1373
|
i0.ɵɵelementEnd()();
|
|
@@ -1376,10 +1376,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2
|
|
|
1376
1376
|
i0.ɵɵadvance(2);
|
|
1377
1377
|
i0.ɵɵtextInterpolate1("View all ", ctx_r2.learningCycleCount, " cycles...");
|
|
1378
1378
|
} }
|
|
1379
|
-
function
|
|
1379
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
1380
1380
|
i0.ɵɵelementStart(0, "div", 126);
|
|
1381
|
-
i0.ɵɵrepeaterCreate(1,
|
|
1382
|
-
i0.ɵɵconditionalCreate(3,
|
|
1381
|
+
i0.ɵɵrepeaterCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_For_2_Template, 11, 3, "div", 187, _forTrack0);
|
|
1382
|
+
i0.ɵɵconditionalCreate(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_Conditional_3_Template, 3, 1, "div", 132);
|
|
1383
1383
|
i0.ɵɵelementEnd();
|
|
1384
1384
|
} if (rf & 2) {
|
|
1385
1385
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
@@ -1388,34 +1388,34 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2
|
|
|
1388
1388
|
i0.ɵɵadvance(2);
|
|
1389
1389
|
i0.ɵɵconditional(ctx_r2.learningCycleCount > ctx_r2.learningCycles.length ? 3 : -1);
|
|
1390
1390
|
} }
|
|
1391
|
-
function
|
|
1391
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
1392
1392
|
i0.ɵɵelementStart(0, "div", 121)(1, "div", 123)(2, "div", 186);
|
|
1393
1393
|
i0.ɵɵtext(3, " Monitor and manage learning cycles, training sessions, and performance analytics. ");
|
|
1394
1394
|
i0.ɵɵelementEnd()();
|
|
1395
|
-
i0.ɵɵconditionalCreate(4,
|
|
1395
|
+
i0.ɵɵconditionalCreate(4, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_4_Template, 6, 0, "div", 67)(5, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Conditional_5_Template, 4, 1, "div", 126);
|
|
1396
1396
|
i0.ɵɵelementEnd();
|
|
1397
1397
|
} if (rf & 2) {
|
|
1398
1398
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
1399
1399
|
i0.ɵɵadvance(4);
|
|
1400
1400
|
i0.ɵɵconditional(ctx_r2.learningCycleCount === 0 ? 4 : 5);
|
|
1401
1401
|
} }
|
|
1402
|
-
function
|
|
1402
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
1403
1403
|
i0.ɵɵelementStart(0, "kendo-panelbar-item", 17);
|
|
1404
|
-
i0.ɵɵtemplate(1,
|
|
1404
|
+
i0.ɵɵtemplate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_1_Template, 3, 2, "ng-template", 20)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_ng_template_2_Template, 6, 1, "ng-template", 21);
|
|
1405
1405
|
i0.ɵɵelementEnd();
|
|
1406
1406
|
} if (rf & 2) {
|
|
1407
1407
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
1408
1408
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("learning", false))("disabled", ctx_r2.loadingStates.learningCycles);
|
|
1409
1409
|
} }
|
|
1410
|
-
function
|
|
1410
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
1411
1411
|
i0.ɵɵelementStart(0, "span", 64);
|
|
1412
1412
|
i0.ɵɵelement(1, "i", 65);
|
|
1413
1413
|
i0.ɵɵelementEnd();
|
|
1414
1414
|
} }
|
|
1415
|
-
function
|
|
1415
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
1416
1416
|
i0.ɵɵelement(0, "i", 190);
|
|
1417
1417
|
i0.ɵɵtext(1);
|
|
1418
|
-
i0.ɵɵconditionalCreate(2,
|
|
1418
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_1_Conditional_2_Template, 2, 0, "span", 64);
|
|
1419
1419
|
} if (rf & 2) {
|
|
1420
1420
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
1421
1421
|
i0.ɵɵadvance();
|
|
@@ -1423,23 +1423,23 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_1
|
|
|
1423
1423
|
i0.ɵɵadvance();
|
|
1424
1424
|
i0.ɵɵconditional(ctx_r2.loadingStates.notes ? 2 : -1);
|
|
1425
1425
|
} }
|
|
1426
|
-
function
|
|
1426
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
1427
1427
|
const _r37 = i0.ɵɵgetCurrentView();
|
|
1428
1428
|
i0.ɵɵelementStart(0, "button", 127);
|
|
1429
|
-
i0.ɵɵlistener("click", function
|
|
1429
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r37); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.addNote()); });
|
|
1430
1430
|
i0.ɵɵelement(1, "i", 128);
|
|
1431
1431
|
i0.ɵɵtext(2, " Add Note ");
|
|
1432
1432
|
i0.ɵɵelementEnd();
|
|
1433
1433
|
} }
|
|
1434
|
-
function
|
|
1434
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_6_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
1435
1435
|
const _r38 = i0.ɵɵgetCurrentView();
|
|
1436
1436
|
i0.ɵɵelementStart(0, "button", 130);
|
|
1437
|
-
i0.ɵɵlistener("click", function
|
|
1437
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_6_Conditional_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r38); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.addNote()); });
|
|
1438
1438
|
i0.ɵɵelement(1, "i", 128);
|
|
1439
1439
|
i0.ɵɵtext(2, " Create First Note ");
|
|
1440
1440
|
i0.ɵɵelementEnd();
|
|
1441
1441
|
} }
|
|
1442
|
-
function
|
|
1442
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
1443
1443
|
i0.ɵɵelementStart(0, "div", 67);
|
|
1444
1444
|
i0.ɵɵelement(1, "i", 190);
|
|
1445
1445
|
i0.ɵɵelementStart(2, "h4");
|
|
@@ -1448,14 +1448,14 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2
|
|
|
1448
1448
|
i0.ɵɵelementStart(4, "p");
|
|
1449
1449
|
i0.ɵɵtext(5, "Add notes to document important information, observations, or instructions for this agent.");
|
|
1450
1450
|
i0.ɵɵelementEnd();
|
|
1451
|
-
i0.ɵɵconditionalCreate(6,
|
|
1451
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_6_Conditional_6_Template, 3, 0, "button", 129);
|
|
1452
1452
|
i0.ɵɵelementEnd();
|
|
1453
1453
|
} if (rf & 2) {
|
|
1454
1454
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
1455
1455
|
i0.ɵɵadvance(6);
|
|
1456
1456
|
i0.ɵɵconditional(ctx_r2.EditMode && ctx_r2.UserCanCreateNotes ? 6 : -1);
|
|
1457
1457
|
} }
|
|
1458
|
-
function
|
|
1458
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
1459
1459
|
i0.ɵɵelementStart(0, "div", 137);
|
|
1460
1460
|
i0.ɵɵtext(1);
|
|
1461
1461
|
i0.ɵɵelementEnd();
|
|
@@ -1464,7 +1464,7 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2
|
|
|
1464
1464
|
i0.ɵɵadvance();
|
|
1465
1465
|
i0.ɵɵtextInterpolate2("", note_r40.Note.substring(0, 100), "", note_r40.Note.length > 100 ? "..." : "");
|
|
1466
1466
|
} }
|
|
1467
|
-
function
|
|
1467
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_For_2_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
1468
1468
|
i0.ɵɵelementStart(0, "span", 139);
|
|
1469
1469
|
i0.ɵɵelement(1, "i", 189);
|
|
1470
1470
|
i0.ɵɵtext(2);
|
|
@@ -1475,19 +1475,19 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2
|
|
|
1475
1475
|
i0.ɵɵadvance(2);
|
|
1476
1476
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(3, 1, note_r40.__mj_CreatedAt, "short"), " ");
|
|
1477
1477
|
} }
|
|
1478
|
-
function
|
|
1478
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
1479
1479
|
const _r39 = i0.ɵɵgetCurrentView();
|
|
1480
1480
|
i0.ɵɵelementStart(0, "div", 192);
|
|
1481
|
-
i0.ɵɵlistener("click", function
|
|
1481
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_For_2_Template_div_click_0_listener() { const note_r40 = i0.ɵɵrestoreView(_r39).$implicit; const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Agent Notes", note_r40.ID)); });
|
|
1482
1482
|
i0.ɵɵelementStart(1, "div", 134);
|
|
1483
1483
|
i0.ɵɵelement(2, "i", 190);
|
|
1484
1484
|
i0.ɵɵelementEnd();
|
|
1485
1485
|
i0.ɵɵelementStart(3, "div", 135)(4, "div", 136);
|
|
1486
1486
|
i0.ɵɵtext(5);
|
|
1487
1487
|
i0.ɵɵelementEnd();
|
|
1488
|
-
i0.ɵɵconditionalCreate(6,
|
|
1488
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_For_2_Conditional_6_Template, 2, 2, "div", 137);
|
|
1489
1489
|
i0.ɵɵelementStart(7, "div", 138);
|
|
1490
|
-
i0.ɵɵconditionalCreate(8,
|
|
1490
|
+
i0.ɵɵconditionalCreate(8, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_For_2_Conditional_8_Template, 4, 4, "span", 139);
|
|
1491
1491
|
i0.ɵɵelementEnd()();
|
|
1492
1492
|
i0.ɵɵelementStart(9, "div", 141);
|
|
1493
1493
|
i0.ɵɵelement(10, "i", 117);
|
|
@@ -1501,10 +1501,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2
|
|
|
1501
1501
|
i0.ɵɵadvance(2);
|
|
1502
1502
|
i0.ɵɵconditional(note_r40.__mj_CreatedAt ? 8 : -1);
|
|
1503
1503
|
} }
|
|
1504
|
-
function
|
|
1504
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
1505
1505
|
const _r41 = i0.ɵɵgetCurrentView();
|
|
1506
1506
|
i0.ɵɵelementStart(0, "div", 145);
|
|
1507
|
-
i0.ɵɵlistener("click", function
|
|
1507
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_Conditional_3_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r41); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.navigateToEntity("MJ: AI Agent Notes", "")); });
|
|
1508
1508
|
i0.ɵɵelementStart(1, "span");
|
|
1509
1509
|
i0.ɵɵtext(2);
|
|
1510
1510
|
i0.ɵɵelementEnd()();
|
|
@@ -1513,10 +1513,10 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2
|
|
|
1513
1513
|
i0.ɵɵadvance(2);
|
|
1514
1514
|
i0.ɵɵtextInterpolate1("View all ", ctx_r2.noteCount, " notes...");
|
|
1515
1515
|
} }
|
|
1516
|
-
function
|
|
1516
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
1517
1517
|
i0.ɵɵelementStart(0, "div", 126);
|
|
1518
|
-
i0.ɵɵrepeaterCreate(1,
|
|
1519
|
-
i0.ɵɵconditionalCreate(3,
|
|
1518
|
+
i0.ɵɵrepeaterCreate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_For_2_Template, 11, 3, "div", 191, _forTrack0);
|
|
1519
|
+
i0.ɵɵconditionalCreate(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_Conditional_3_Template, 3, 1, "div", 132);
|
|
1520
1520
|
i0.ɵɵelementEnd();
|
|
1521
1521
|
} if (rf & 2) {
|
|
1522
1522
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
@@ -1525,14 +1525,14 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2
|
|
|
1525
1525
|
i0.ɵɵadvance(2);
|
|
1526
1526
|
i0.ɵɵconditional(ctx_r2.noteCount > ctx_r2.agentNotes.length ? 3 : -1);
|
|
1527
1527
|
} }
|
|
1528
|
-
function
|
|
1528
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
1529
1529
|
i0.ɵɵelementStart(0, "div", 121)(1, "div", 123)(2, "div", 186);
|
|
1530
1530
|
i0.ɵɵtext(3, " Manage notes, documentation, and annotations for this agent. ");
|
|
1531
1531
|
i0.ɵɵelementEnd();
|
|
1532
1532
|
i0.ɵɵelementStart(4, "div", 124);
|
|
1533
|
-
i0.ɵɵconditionalCreate(5,
|
|
1533
|
+
i0.ɵɵconditionalCreate(5, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_5_Template, 3, 0, "button", 125);
|
|
1534
1534
|
i0.ɵɵelementEnd()();
|
|
1535
|
-
i0.ɵɵconditionalCreate(6,
|
|
1535
|
+
i0.ɵɵconditionalCreate(6, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_6_Template, 7, 1, "div", 67)(7, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Conditional_7_Template, 4, 1, "div", 126);
|
|
1536
1536
|
i0.ɵɵelementEnd();
|
|
1537
1537
|
} if (rf & 2) {
|
|
1538
1538
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
@@ -1541,19 +1541,19 @@ function AIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2
|
|
|
1541
1541
|
i0.ɵɵadvance();
|
|
1542
1542
|
i0.ɵɵconditional(ctx_r2.noteCount === 0 ? 6 : 7);
|
|
1543
1543
|
} }
|
|
1544
|
-
function
|
|
1544
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
1545
1545
|
i0.ɵɵelementStart(0, "kendo-panelbar-item", 18);
|
|
1546
|
-
i0.ɵɵtemplate(1,
|
|
1546
|
+
i0.ɵɵtemplate(1, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_1_Template, 3, 2, "ng-template", 20)(2, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_ng_template_2_Template, 8, 2, "ng-template", 21);
|
|
1547
1547
|
i0.ɵɵelementEnd();
|
|
1548
1548
|
} if (rf & 2) {
|
|
1549
1549
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
1550
1550
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("notes", false))("disabled", ctx_r2.loadingStates.notes);
|
|
1551
1551
|
} }
|
|
1552
|
-
function
|
|
1552
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_15_Template(rf, ctx) { if (rf & 1) {
|
|
1553
1553
|
i0.ɵɵelement(0, "i", 170);
|
|
1554
1554
|
i0.ɵɵtext(1, " Payload Management ");
|
|
1555
1555
|
} }
|
|
1556
|
-
function
|
|
1556
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_16_Template(rf, ctx) { if (rf & 1) {
|
|
1557
1557
|
const _r42 = i0.ɵɵgetCurrentView();
|
|
1558
1558
|
i0.ɵɵelementStart(0, "div", 121)(1, "div", 123)(2, "div", 186);
|
|
1559
1559
|
i0.ɵɵtext(3, " Configure how this agent handles data payloads, path routing, and validation between parent and child agents. ");
|
|
@@ -1595,7 +1595,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_16_Template(rf,
|
|
|
1595
1595
|
i0.ɵɵtext(38, "JSON array of paths to pass to sub-agents");
|
|
1596
1596
|
i0.ɵɵelementEnd()()();
|
|
1597
1597
|
i0.ɵɵelementStart(39, "div", 211)(40, "div", 212)(41, "mj-code-editor", 213);
|
|
1598
|
-
i0.ɵɵlistener("valueChange", function
|
|
1598
|
+
i0.ɵɵlistener("valueChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_16_Template_mj_code_editor_valueChange_41_listener($event) { i0.ɵɵrestoreView(_r42); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.updatePayloadField("PayloadDownstreamPaths", $event)); });
|
|
1599
1599
|
i0.ɵɵelementEnd()();
|
|
1600
1600
|
i0.ɵɵelementStart(42, "div", 214);
|
|
1601
1601
|
i0.ɵɵelement(43, "i", 215);
|
|
@@ -1617,7 +1617,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_16_Template(rf,
|
|
|
1617
1617
|
i0.ɵɵtext(58, "JSON array of paths sub-agents can write back");
|
|
1618
1618
|
i0.ɵɵelementEnd()()();
|
|
1619
1619
|
i0.ɵɵelementStart(59, "div", 211)(60, "div", 212)(61, "mj-code-editor", 213);
|
|
1620
|
-
i0.ɵɵlistener("valueChange", function
|
|
1620
|
+
i0.ɵɵlistener("valueChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_16_Template_mj_code_editor_valueChange_61_listener($event) { i0.ɵɵrestoreView(_r42); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.updatePayloadField("PayloadUpstreamPaths", $event)); });
|
|
1621
1621
|
i0.ɵɵelementEnd()();
|
|
1622
1622
|
i0.ɵɵelementStart(62, "div", 214);
|
|
1623
1623
|
i0.ɵɵelement(63, "i", 215);
|
|
@@ -1637,7 +1637,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_16_Template(rf,
|
|
|
1637
1637
|
i0.ɵɵtext(76, "JSON array of paths this agent can read");
|
|
1638
1638
|
i0.ɵɵelementEnd()()();
|
|
1639
1639
|
i0.ɵɵelementStart(77, "div", 211)(78, "div", 212)(79, "mj-code-editor", 213);
|
|
1640
|
-
i0.ɵɵlistener("valueChange", function
|
|
1640
|
+
i0.ɵɵlistener("valueChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_16_Template_mj_code_editor_valueChange_79_listener($event) { i0.ɵɵrestoreView(_r42); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.updatePayloadField("PayloadSelfReadPaths", $event)); });
|
|
1641
1641
|
i0.ɵɵelementEnd()();
|
|
1642
1642
|
i0.ɵɵelementStart(80, "div", 214);
|
|
1643
1643
|
i0.ɵɵelement(81, "i", 215);
|
|
@@ -1653,7 +1653,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_16_Template(rf,
|
|
|
1653
1653
|
i0.ɵɵtext(91, "JSON array of paths this agent can write to");
|
|
1654
1654
|
i0.ɵɵelementEnd()()();
|
|
1655
1655
|
i0.ɵɵelementStart(92, "div", 211)(93, "div", 212)(94, "mj-code-editor", 213);
|
|
1656
|
-
i0.ɵɵlistener("valueChange", function
|
|
1656
|
+
i0.ɵɵlistener("valueChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_16_Template_mj_code_editor_valueChange_94_listener($event) { i0.ɵɵrestoreView(_r42); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.updatePayloadField("PayloadSelfWritePaths", $event)); });
|
|
1657
1657
|
i0.ɵɵelementEnd()();
|
|
1658
1658
|
i0.ɵɵelementStart(95, "div", 214);
|
|
1659
1659
|
i0.ɵɵelement(96, "i", 215);
|
|
@@ -1687,7 +1687,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_16_Template(rf,
|
|
|
1687
1687
|
i0.ɵɵtext(121, " JSON schema or validation rules for the final payload structure ");
|
|
1688
1688
|
i0.ɵɵelementEnd();
|
|
1689
1689
|
i0.ɵɵelementStart(122, "div", 234)(123, "mj-code-editor", 235);
|
|
1690
|
-
i0.ɵɵlistener("valueChange", function
|
|
1690
|
+
i0.ɵɵlistener("valueChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_16_Template_mj_code_editor_valueChange_123_listener($event) { i0.ɵɵrestoreView(_r42); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.updatePayloadField("FinalPayloadValidation", $event)); });
|
|
1691
1691
|
i0.ɵɵelementEnd()()()()()();
|
|
1692
1692
|
} if (rf & 2) {
|
|
1693
1693
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
@@ -1708,11 +1708,11 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_16_Template(rf,
|
|
|
1708
1708
|
i0.ɵɵadvance(8);
|
|
1709
1709
|
i0.ɵɵproperty("value", ctx_r2.record.FinalPayloadValidation || "{}")("readonly", !ctx_r2.EditMode)("lineWrapping", true);
|
|
1710
1710
|
} }
|
|
1711
|
-
function
|
|
1711
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_18_Template(rf, ctx) { if (rf & 1) {
|
|
1712
1712
|
i0.ɵɵelement(0, "i", 236);
|
|
1713
1713
|
i0.ɵɵtext(1, " Execution Guardrails ");
|
|
1714
1714
|
} }
|
|
1715
|
-
function
|
|
1715
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_19_Template(rf, ctx) { if (rf & 1) {
|
|
1716
1716
|
i0.ɵɵelementStart(0, "div", 121)(1, "div", 123)(2, "div", 186);
|
|
1717
1717
|
i0.ɵɵtext(3, " Set limits to prevent runaway agent executions and control resource usage. ");
|
|
1718
1718
|
i0.ɵɵelementEnd()();
|
|
@@ -1730,21 +1730,21 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_19_Template(rf,
|
|
|
1730
1730
|
i0.ɵɵadvance();
|
|
1731
1731
|
i0.ɵɵproperty("EditMode", ctx_r2.EditMode)("Record", ctx_r2.record);
|
|
1732
1732
|
} }
|
|
1733
|
-
function
|
|
1733
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_21_Template(rf, ctx) { if (rf & 1) {
|
|
1734
1734
|
i0.ɵɵelement(0, "i", 242);
|
|
1735
1735
|
i0.ɵɵtext(1, " Configuration ");
|
|
1736
1736
|
} }
|
|
1737
|
-
function
|
|
1737
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
1738
1738
|
const _r44 = i0.ɵɵgetCurrentView();
|
|
1739
1739
|
i0.ɵɵelementStart(0, "kendo-dropdownlist", 274);
|
|
1740
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
1740
|
+
i0.ɵɵtwoWayListener("ngModelChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_19_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r44); const ctx_r2 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r2.record.Status, $event) || (ctx_r2.record.Status = $event); return i0.ɵɵresetView($event); });
|
|
1741
1741
|
i0.ɵɵelementEnd();
|
|
1742
1742
|
} if (rf & 2) {
|
|
1743
1743
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
1744
1744
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r2.record.Status);
|
|
1745
1745
|
i0.ɵɵproperty("data", ctx_r2.statusOptions)("valuePrimitive", true);
|
|
1746
1746
|
} }
|
|
1747
|
-
function
|
|
1747
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_20_Template(rf, ctx) { if (rf & 1) {
|
|
1748
1748
|
i0.ɵɵelementStart(0, "span", 254);
|
|
1749
1749
|
i0.ɵɵtext(1);
|
|
1750
1750
|
i0.ɵɵelementEnd();
|
|
@@ -1753,17 +1753,17 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_2
|
|
|
1753
1753
|
i0.ɵɵadvance();
|
|
1754
1754
|
i0.ɵɵtextInterpolate(ctx_r2.record.Status || "Not Set");
|
|
1755
1755
|
} }
|
|
1756
|
-
function
|
|
1756
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_31_Template(rf, ctx) { if (rf & 1) {
|
|
1757
1757
|
const _r45 = i0.ɵɵgetCurrentView();
|
|
1758
1758
|
i0.ɵɵelementStart(0, "kendo-dropdownlist", 275);
|
|
1759
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
1759
|
+
i0.ɵɵtwoWayListener("ngModelChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_31_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r45); const ctx_r2 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r2.record.TypeID, $event) || (ctx_r2.record.TypeID = $event); return i0.ɵɵresetView($event); });
|
|
1760
1760
|
i0.ɵɵelementEnd();
|
|
1761
1761
|
} if (rf & 2) {
|
|
1762
1762
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
1763
1763
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r2.record.TypeID);
|
|
1764
1764
|
i0.ɵɵproperty("data", ctx_r2.agentTypes)("valuePrimitive", true);
|
|
1765
1765
|
} }
|
|
1766
|
-
function
|
|
1766
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_32_Template(rf, ctx) { if (rf & 1) {
|
|
1767
1767
|
i0.ɵɵelementStart(0, "span", 254);
|
|
1768
1768
|
i0.ɵɵtext(1);
|
|
1769
1769
|
i0.ɵɵelementEnd();
|
|
@@ -1772,7 +1772,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_3
|
|
|
1772
1772
|
i0.ɵɵadvance();
|
|
1773
1773
|
i0.ɵɵtextInterpolate(ctx_r2.record.Type || "Not Set");
|
|
1774
1774
|
} }
|
|
1775
|
-
function
|
|
1775
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
1776
1776
|
i0.ɵɵelementStart(0, "span", 282);
|
|
1777
1777
|
i0.ɵɵtext(1);
|
|
1778
1778
|
i0.ɵɵelementEnd();
|
|
@@ -1781,29 +1781,29 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_1
|
|
|
1781
1781
|
i0.ɵɵadvance();
|
|
1782
1782
|
i0.ɵɵtextInterpolate(ctx_r2.selectedContextCompressionPrompt.Name);
|
|
1783
1783
|
} }
|
|
1784
|
-
function
|
|
1784
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
1785
1785
|
i0.ɵɵelementStart(0, "span", 283);
|
|
1786
1786
|
i0.ɵɵtext(1, "No prompt selected");
|
|
1787
1787
|
i0.ɵɵelementEnd();
|
|
1788
1788
|
} }
|
|
1789
|
-
function
|
|
1789
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
1790
1790
|
const _r47 = i0.ɵɵgetCurrentView();
|
|
1791
1791
|
i0.ɵɵelementStart(0, "button", 287);
|
|
1792
|
-
i0.ɵɵlistener("click", function
|
|
1792
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Conditional_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r47); const ctx_r2 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r2.clearContextCompressionPrompt()); });
|
|
1793
1793
|
i0.ɵɵelement(1, "i", 288);
|
|
1794
1794
|
i0.ɵɵelementEnd();
|
|
1795
1795
|
} }
|
|
1796
|
-
function
|
|
1796
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Template(rf, ctx) { if (rf & 1) {
|
|
1797
1797
|
const _r46 = i0.ɵɵgetCurrentView();
|
|
1798
1798
|
i0.ɵɵelementStart(0, "div", 280)(1, "div", 281);
|
|
1799
|
-
i0.ɵɵconditionalCreate(2,
|
|
1799
|
+
i0.ɵɵconditionalCreate(2, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Conditional_2_Template, 2, 1, "span", 282)(3, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Conditional_3_Template, 2, 0, "span", 283);
|
|
1800
1800
|
i0.ɵɵelementEnd();
|
|
1801
1801
|
i0.ɵɵelementStart(4, "div", 284)(5, "button", 285);
|
|
1802
|
-
i0.ɵɵlistener("click", function
|
|
1802
|
+
i0.ɵɵlistener("click", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r46); const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.openContextCompressionPromptSelector()); });
|
|
1803
1803
|
i0.ɵɵelement(6, "i", 74);
|
|
1804
1804
|
i0.ɵɵtext(7);
|
|
1805
1805
|
i0.ɵɵelementEnd();
|
|
1806
|
-
i0.ɵɵconditionalCreate(8,
|
|
1806
|
+
i0.ɵɵconditionalCreate(8, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Conditional_8_Template, 2, 0, "button", 286);
|
|
1807
1807
|
i0.ɵɵelementEnd()();
|
|
1808
1808
|
} if (rf & 2) {
|
|
1809
1809
|
const ctx_r2 = i0.ɵɵnextContext(4);
|
|
@@ -1814,7 +1814,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_1
|
|
|
1814
1814
|
i0.ɵɵadvance();
|
|
1815
1815
|
i0.ɵɵconditional(ctx_r2.selectedContextCompressionPrompt ? 8 : -1);
|
|
1816
1816
|
} }
|
|
1817
|
-
function
|
|
1817
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_33_Template(rf, ctx) { if (rf & 1) {
|
|
1818
1818
|
i0.ɵɵelementStart(0, "span", 254);
|
|
1819
1819
|
i0.ɵɵtext(1);
|
|
1820
1820
|
i0.ɵɵelementEnd();
|
|
@@ -1823,7 +1823,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_1
|
|
|
1823
1823
|
i0.ɵɵadvance();
|
|
1824
1824
|
i0.ɵɵtextInterpolate((ctx_r2.selectedContextCompressionPrompt == null ? null : ctx_r2.selectedContextCompressionPrompt.Name) || ctx_r2.record.ContextCompressionPrompt || "Not Set");
|
|
1825
1825
|
} }
|
|
1826
|
-
function
|
|
1826
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Template(rf, ctx) { if (rf & 1) {
|
|
1827
1827
|
i0.ɵɵelementStart(0, "div", 247)(1, "div", 248)(2, "div", 249);
|
|
1828
1828
|
i0.ɵɵelement(3, "i", 276);
|
|
1829
1829
|
i0.ɵɵelementEnd();
|
|
@@ -1858,7 +1858,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_1
|
|
|
1858
1858
|
i0.ɵɵtext(30, "Prompt used for summarization");
|
|
1859
1859
|
i0.ɵɵelementEnd()()();
|
|
1860
1860
|
i0.ɵɵelementStart(31, "div", 252);
|
|
1861
|
-
i0.ɵɵconditionalCreate(32,
|
|
1861
|
+
i0.ɵɵconditionalCreate(32, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_32_Template, 9, 3, "div", 280)(33, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Conditional_33_Template, 2, 1, "span", 254);
|
|
1862
1862
|
i0.ɵɵelementEnd()();
|
|
1863
1863
|
} if (rf & 2) {
|
|
1864
1864
|
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
@@ -1869,7 +1869,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_1
|
|
|
1869
1869
|
i0.ɵɵadvance(11);
|
|
1870
1870
|
i0.ɵɵconditional(ctx_r2.EditMode ? 32 : 33);
|
|
1871
1871
|
} }
|
|
1872
|
-
function
|
|
1872
|
+
function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Template(rf, ctx) { if (rf & 1) {
|
|
1873
1873
|
const _r43 = i0.ɵɵgetCurrentView();
|
|
1874
1874
|
i0.ɵɵelementStart(0, "div", 121)(1, "div", 123)(2, "div", 186);
|
|
1875
1875
|
i0.ɵɵtext(3, " Configure agent behavior, execution settings, and advanced features. ");
|
|
@@ -1888,7 +1888,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Template(rf,
|
|
|
1888
1888
|
i0.ɵɵtext(17, "Current availability and operational status");
|
|
1889
1889
|
i0.ɵɵelementEnd()()();
|
|
1890
1890
|
i0.ɵɵelementStart(18, "div", 252);
|
|
1891
|
-
i0.ɵɵconditionalCreate(19,
|
|
1891
|
+
i0.ɵɵconditionalCreate(19, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_19_Template, 1, 3, "kendo-dropdownlist", 253)(20, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_20_Template, 2, 1, "span", 254);
|
|
1892
1892
|
i0.ɵɵelementEnd()();
|
|
1893
1893
|
i0.ɵɵelementStart(21, "div", 247)(22, "div", 248)(23, "div", 249);
|
|
1894
1894
|
i0.ɵɵelement(24, "i", 45);
|
|
@@ -1900,7 +1900,7 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Template(rf,
|
|
|
1900
1900
|
i0.ɵɵtext(29, "Category and system-level behavior");
|
|
1901
1901
|
i0.ɵɵelementEnd()()();
|
|
1902
1902
|
i0.ɵɵelementStart(30, "div", 252);
|
|
1903
|
-
i0.ɵɵconditionalCreate(31,
|
|
1903
|
+
i0.ɵɵconditionalCreate(31, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_31_Template, 1, 3, "kendo-dropdownlist", 255)(32, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_32_Template, 2, 1, "span", 254);
|
|
1904
1904
|
i0.ɵɵelementEnd()();
|
|
1905
1905
|
i0.ɵɵelementStart(33, "div", 247)(34, "div", 248)(35, "div", 249);
|
|
1906
1906
|
i0.ɵɵelement(36, "i", 120);
|
|
@@ -2031,9 +2031,9 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Template(rf,
|
|
|
2031
2031
|
i0.ɵɵtext(155, "Automatically compress conversation context when message threshold is reached");
|
|
2032
2032
|
i0.ɵɵelementEnd()()();
|
|
2033
2033
|
i0.ɵɵelementStart(156, "div", 252)(157, "mj-form-field", 273);
|
|
2034
|
-
i0.ɵɵlistener("valueChange", function
|
|
2034
|
+
i0.ɵɵlistener("valueChange", function MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Template_mj_form_field_valueChange_157_listener($event) { i0.ɵɵrestoreView(_r43); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onContextCompressionToggle($event)); });
|
|
2035
2035
|
i0.ɵɵelementEnd()()();
|
|
2036
|
-
i0.ɵɵconditionalCreate(158,
|
|
2036
|
+
i0.ɵɵconditionalCreate(158, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Conditional_158_Template, 34, 5);
|
|
2037
2037
|
i0.ɵɵelementEnd()()();
|
|
2038
2038
|
} if (rf & 2) {
|
|
2039
2039
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
@@ -2062,29 +2062,29 @@ function AIAgentFormComponentExtended_Conditional_3_ng_template_22_Template(rf,
|
|
|
2062
2062
|
i0.ɵɵadvance();
|
|
2063
2063
|
i0.ɵɵconditional(ctx_r2.record.EnableContextCompression ? 158 : -1);
|
|
2064
2064
|
} }
|
|
2065
|
-
function
|
|
2065
|
+
function MJAIAgentFormComponentExtended_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
2066
2066
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
2067
2067
|
i0.ɵɵelementStart(0, "form", 5, 0);
|
|
2068
2068
|
i0.ɵɵelement(2, "mj-form-toolbar", 7);
|
|
2069
|
-
i0.ɵɵconditionalCreate(3,
|
|
2070
|
-
i0.ɵɵconditionalCreate(4,
|
|
2069
|
+
i0.ɵɵconditionalCreate(3, MJAIAgentFormComponentExtended_Conditional_3_Conditional_3_Template, 19, 6, "div", 8);
|
|
2070
|
+
i0.ɵɵconditionalCreate(4, MJAIAgentFormComponentExtended_Conditional_3_Conditional_4_Template, 10, 3, "div", 9);
|
|
2071
2071
|
i0.ɵɵelementStart(5, "div", 10)(6, "kendo-panelbar", 11);
|
|
2072
|
-
i0.ɵɵlistener("stateChange", function
|
|
2073
|
-
i0.ɵɵconditionalCreate(7,
|
|
2074
|
-
i0.ɵɵconditionalCreate(8,
|
|
2075
|
-
i0.ɵɵconditionalCreate(9,
|
|
2076
|
-
i0.ɵɵconditionalCreate(10,
|
|
2077
|
-
i0.ɵɵconditionalCreate(11,
|
|
2078
|
-
i0.ɵɵconditionalCreate(12,
|
|
2079
|
-
i0.ɵɵconditionalCreate(13,
|
|
2072
|
+
i0.ɵɵlistener("stateChange", function MJAIAgentFormComponentExtended_Conditional_3_Template_kendo_panelbar_stateChange_6_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.OnPanelBarStateChange($event)); });
|
|
2073
|
+
i0.ɵɵconditionalCreate(7, MJAIAgentFormComponentExtended_Conditional_3_Conditional_7_Template, 3, 1, "kendo-panelbar-item", 12);
|
|
2074
|
+
i0.ɵɵconditionalCreate(8, MJAIAgentFormComponentExtended_Conditional_3_Conditional_8_Template, 3, 2, "kendo-panelbar-item", 13);
|
|
2075
|
+
i0.ɵɵconditionalCreate(9, MJAIAgentFormComponentExtended_Conditional_3_Conditional_9_Template, 3, 2, "kendo-panelbar-item", 14);
|
|
2076
|
+
i0.ɵɵconditionalCreate(10, MJAIAgentFormComponentExtended_Conditional_3_Conditional_10_Template, 3, 2, "kendo-panelbar-item", 15);
|
|
2077
|
+
i0.ɵɵconditionalCreate(11, MJAIAgentFormComponentExtended_Conditional_3_Conditional_11_Template, 3, 2, "kendo-panelbar-item", 16);
|
|
2078
|
+
i0.ɵɵconditionalCreate(12, MJAIAgentFormComponentExtended_Conditional_3_Conditional_12_Template, 3, 2, "kendo-panelbar-item", 17);
|
|
2079
|
+
i0.ɵɵconditionalCreate(13, MJAIAgentFormComponentExtended_Conditional_3_Conditional_13_Template, 3, 2, "kendo-panelbar-item", 18);
|
|
2080
2080
|
i0.ɵɵelementStart(14, "kendo-panelbar-item", 19);
|
|
2081
|
-
i0.ɵɵtemplate(15,
|
|
2081
|
+
i0.ɵɵtemplate(15, MJAIAgentFormComponentExtended_Conditional_3_ng_template_15_Template, 2, 0, "ng-template", 20)(16, MJAIAgentFormComponentExtended_Conditional_3_ng_template_16_Template, 124, 21, "ng-template", 21);
|
|
2082
2082
|
i0.ɵɵelementEnd();
|
|
2083
2083
|
i0.ɵɵelementStart(17, "kendo-panelbar-item", 22);
|
|
2084
|
-
i0.ɵɵtemplate(18,
|
|
2084
|
+
i0.ɵɵtemplate(18, MJAIAgentFormComponentExtended_Conditional_3_ng_template_18_Template, 2, 0, "ng-template", 20)(19, MJAIAgentFormComponentExtended_Conditional_3_ng_template_19_Template, 9, 8, "ng-template", 21);
|
|
2085
2085
|
i0.ɵɵelementEnd();
|
|
2086
2086
|
i0.ɵɵelementStart(20, "kendo-panelbar-item", 23);
|
|
2087
|
-
i0.ɵɵtemplate(21,
|
|
2087
|
+
i0.ɵɵtemplate(21, MJAIAgentFormComponentExtended_Conditional_3_ng_template_21_Template, 2, 0, "ng-template", 20)(22, MJAIAgentFormComponentExtended_Conditional_3_ng_template_22_Template, 159, 21, "ng-template", 21);
|
|
2088
2088
|
i0.ɵɵelementEnd()()()();
|
|
2089
2089
|
} if (rf & 2) {
|
|
2090
2090
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -2117,10 +2117,10 @@ function AIAgentFormComponentExtended_Conditional_3_Template(rf, ctx) { if (rf &
|
|
|
2117
2117
|
i0.ɵɵadvance(3);
|
|
2118
2118
|
i0.ɵɵproperty("expanded", ctx_r2.GetSectionExpanded("config", false));
|
|
2119
2119
|
} }
|
|
2120
|
-
function
|
|
2120
|
+
function MJAIAgentFormComponentExtended_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
2121
2121
|
const _r48 = i0.ɵɵgetCurrentView();
|
|
2122
2122
|
i0.ɵɵelementStart(0, "mj-agent-permissions-dialog", 289);
|
|
2123
|
-
i0.ɵɵlistener("Closed", function
|
|
2123
|
+
i0.ɵɵlistener("Closed", function MJAIAgentFormComponentExtended_Conditional_4_Template_mj_agent_permissions_dialog_Closed_0_listener() { i0.ɵɵrestoreView(_r48); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onPermissionsDialogClosed()); })("PermissionsChanged", function MJAIAgentFormComponentExtended_Conditional_4_Template_mj_agent_permissions_dialog_PermissionsChanged_0_listener() { i0.ɵɵrestoreView(_r48); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.refreshRelatedData()); });
|
|
2124
2124
|
i0.ɵɵelementEnd();
|
|
2125
2125
|
} if (rf & 2) {
|
|
2126
2126
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
@@ -2156,7 +2156,7 @@ function AIAgentFormComponentExtended_Conditional_4_Template(rf, ctx) { if (rf &
|
|
|
2156
2156
|
* <mj-ai-agent-form [recordId]="agentId"></mj-ai-agent-form>
|
|
2157
2157
|
* ```
|
|
2158
2158
|
*/
|
|
2159
|
-
let
|
|
2159
|
+
let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extends MJAIAgentFormComponent {
|
|
2160
2160
|
constructor() {
|
|
2161
2161
|
super(...arguments);
|
|
2162
2162
|
/** Subject for managing component lifecycle and cleaning up subscriptions */
|
|
@@ -2271,7 +2271,7 @@ let AIAgentFormComponentExtended = class AIAgentFormComponentExtended extends MJ
|
|
|
2271
2271
|
/** Flag to track if we're currently performing a cancel operation */
|
|
2272
2272
|
this.isPerformingCancel = false;
|
|
2273
2273
|
}
|
|
2274
|
-
static {
|
|
2274
|
+
static { MJAIAgentFormComponentExtended_1 = this; }
|
|
2275
2275
|
/** Helper method to create tracked setTimeout calls */
|
|
2276
2276
|
setTrackedTimeout(callback, delay) {
|
|
2277
2277
|
const timeoutId = setTimeout(() => {
|
|
@@ -2917,7 +2917,7 @@ let AIAgentFormComponentExtended = class AIAgentFormComponentExtended extends MJ
|
|
|
2917
2917
|
/** Load saved preferences for header state and section expand/collapse */
|
|
2918
2918
|
loadUserPreferences() {
|
|
2919
2919
|
try {
|
|
2920
|
-
const raw = UserInfoEngine.Instance.GetSetting(
|
|
2920
|
+
const raw = UserInfoEngine.Instance.GetSetting(MJAIAgentFormComponentExtended_1.PREFS_KEY);
|
|
2921
2921
|
if (raw) {
|
|
2922
2922
|
const prefs = JSON.parse(raw);
|
|
2923
2923
|
this.HeaderCollapsed = prefs.headerCollapsed ?? false;
|
|
@@ -2937,7 +2937,7 @@ let AIAgentFormComponentExtended = class AIAgentFormComponentExtended extends MJ
|
|
|
2937
2937
|
headerCollapsed: this.HeaderCollapsed,
|
|
2938
2938
|
sectionStates: this.SectionStates
|
|
2939
2939
|
};
|
|
2940
|
-
UserInfoEngine.Instance.SetSettingDebounced(
|
|
2940
|
+
UserInfoEngine.Instance.SetSettingDebounced(MJAIAgentFormComponentExtended_1.PREFS_KEY, JSON.stringify(prefs));
|
|
2941
2941
|
}
|
|
2942
2942
|
/** Toggle the header between expanded and collapsed modes */
|
|
2943
2943
|
ToggleHeaderCollapsed() {
|
|
@@ -4370,7 +4370,7 @@ let AIAgentFormComponentExtended = class AIAgentFormComponentExtended extends MJ
|
|
|
4370
4370
|
p.action === 'save' &&
|
|
4371
4371
|
p.entityObject.Get('_tempParentId') === this.record.ID);
|
|
4372
4372
|
for (const subAgentRecord of subAgentRecords) {
|
|
4373
|
-
// Cast to
|
|
4373
|
+
// Cast to MJAIAgentEntityExtended to access ParentID property
|
|
4374
4374
|
const subAgent = subAgentRecord.entityObject;
|
|
4375
4375
|
// Set the proper ParentID now that parent is saved
|
|
4376
4376
|
subAgent.ParentID = this.record.ID;
|
|
@@ -4466,17 +4466,17 @@ let AIAgentFormComponentExtended = class AIAgentFormComponentExtended extends MJ
|
|
|
4466
4466
|
this.customSectionComponent = null;
|
|
4467
4467
|
this.agentType = null;
|
|
4468
4468
|
}
|
|
4469
|
-
static { this.ɵfac = /*@__PURE__*/ (() => { let ɵ
|
|
4470
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
|
|
4469
|
+
static { this.ɵfac = /*@__PURE__*/ (() => { let ɵMJAIAgentFormComponentExtended_BaseFactory; return function MJAIAgentFormComponentExtended_Factory(__ngFactoryType__) { return (ɵMJAIAgentFormComponentExtended_BaseFactory || (ɵMJAIAgentFormComponentExtended_BaseFactory = i0.ɵɵgetInheritedFactory(MJAIAgentFormComponentExtended)))(__ngFactoryType__ || MJAIAgentFormComponentExtended); }; })(); }
|
|
4470
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MJAIAgentFormComponentExtended, selectors: [["mj-ai-agent-form"]], viewQuery: function MJAIAgentFormComponentExtended_Query(rf, ctx) { if (rf & 1) {
|
|
4471
4471
|
i0.ɵɵviewQuery(_c0, 5, ViewContainerRef);
|
|
4472
4472
|
} if (rf & 2) {
|
|
4473
4473
|
let _t;
|
|
4474
4474
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.customSectionContainer = _t.first);
|
|
4475
|
-
} }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 2, consts: [["form", "ngForm"], ["customSectionContainer", ""], [1, "record-form-container"], ["kendoDialogContainer", ""], ["kendoWindowContainer", ""], [1, "record-form"], [3, "Agent"], [3, "Form"], [1, "agent-header"], [1, "agent-header-mini"], [1, "form-content"], [3, "stateChange", "keepItemContent"], ["id", "custom", 3, "expanded"], ["id", "history", 3, "expanded", "disabled"], ["id", "actions", 3, "expanded", "disabled"], ["id", "subagents", 3, "expanded", "disabled"], ["id", "prompts", 3, "expanded", "disabled"], ["id", "learning", 3, "expanded", "disabled"], ["id", "notes", 3, "expanded", "disabled"], ["id", "payload", 3, "expanded"], ["kendoPanelBarItemTitle", ""], ["kendoPanelBarContent", ""], ["id", "guardrails", 3, "expanded"], ["id", "config", 3, "expanded"], [1, "agent-header-content"], ["title", "Minimize header", 1, "agent-header-toggle", 3, "click"], [1, "fa-solid", "fa-chevron-up"], [1, "agent-overview"], [1, "agent-icon-wrapper"], [1, "agent-logo", 3, "src", "alt"], [3, "class"], [1, "agent-info"], ["name", "agentName", "placeholder", "Enter agent name...", 1, "agent-name-input", 3, "ngModel"], [1, "agent-name"], [1, "agent-meta"], [1, "status-badge", 3, "background-color"], [1, "execution-mode"], [1, "parent-agent", "clickable", 3, "title"], [1, "agent-actions"], ["kendoButton", "", "fillMode", "outline", "size", "small", "title", "Refresh all data", 3, "click"], [1, "fa-solid", "fa-refresh"], ["name", "agentName", "placeholder", "Enter agent name...", 1, "agent-name-input", 3, "ngModelChange", "ngModel"], [1, "status-badge"], [1, "fa-solid", "fa-circle"], [1, "parent-agent", "clickable", 3, "click", "title"], [1, "fa-solid", "fa-sitemap"], [1, "fa-solid", "fa-external-link", 2, "margin-left", "4px", "font-size", "10px"], ["kendoButton", "", "themeColor", "primary", "size", "large", "title", "Run this AI agent", 3, "click", "disabled"], [1, "fa-solid", "fa-play"], ["kendoButton", "", "size", "large", 3, "click", "title"], [1, "fa-solid"], ["title", "Expand header", 1, "agent-header-mini-expand", 3, "click"], [1, "fa-solid", "fa-chevron-down"], [1, "agent-header-mini-name"], [1, "agent-header-mini-status", 3, "background-color"], [1, "agent-header-mini-spacer"], ["title", "Refresh", 1, "agent-header-mini-btn", 3, "click"], [1, "agent-header-mini-status"], ["title", "Run agent", 1, "agent-header-mini-btn", "agent-header-mini-btn--primary", 3, "click", "disabled"], [1, "agent-header-mini-btn", 3, "click", "title"], [1, "fa-solid", "fa-puzzle-piece"], [1, "panel-content", "custom-agent-type-section"], ["size", "medium", 3, "text"], [1, "fa-solid", "fa-history"], [2, "margin-left", "8px"], [1, "fa-solid", "fa-spinner", "fa-spin", 2, "font-size", "12px"], [1, "panel-content", "execution-history-panel"], [1, "empty-state"], [1, "execution-search-bar"], ["placeholder", "Search by Run ID...", 3, "ngModelChange", "ngModel", "ngModelOptions", "clearButton"], ["kendoTextBoxPrefixTemplate", ""], [1, "execution-history-list"], [1, "execution-card", 3, "expanded"], [1, "pagination-controls"], [1, "fa-solid", "fa-search"], [1, "execution-card"], [1, "execution-header", 3, "click"], [1, "execution-left-section"], [1, "execution-status"], [1, "status-indicator"], [1, "execution-info"], [1, "execution-title"], [1, "fa-solid", "fa-chevron-right", "expand-icon"], [1, "execution-date"], [1, "execution-metrics"], [1, "metric-item"], [1, "execution-actions"], ["title", "View details", 1, "action-btn", 3, "click"], [1, "fa-solid", "fa-external-link-alt"], [1, "execution-expanded-content"], [1, "fa-solid", "fa-cog"], [1, "metric-label"], [1, "metric-value"], [1, "fa-solid", "fa-stopwatch"], [1, "fa-solid", "fa-clock"], [1, "fa-solid", "fa-microchip"], [1, "fa-solid", "fa-dollar-sign"], [1, "detailed-metrics"], [1, "metrics-grid"], [1, "metric-detail"], [1, "metric-info"], [1, "metric-title"], [1, "metric-data"], [1, "result-section"], [1, "error-section"], [1, "fa-solid", "fa-check-circle"], [1, "fa-solid", "fa-calculator"], [1, "fa-solid", "fa-comments"], [1, "fa-solid", "fa-file-text"], ["language", "json", 2, "max-height", "200px", "width", "100%", 3, "value", "readonly", "lineWrapping"], [1, "fa-solid", "fa-exclamation-triangle"], [1, "error-content"], ["kendoButton", "", "fillMode", "outline", "size", "medium", 1, "page-nav-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-left"], [1, "page-info"], [1, "fa-solid", "fa-chevron-right"], ["kendoButton", "", "fillMode", "flat", "size", "small", 1, "view-all-btn", 3, "click"], [1, "fa-solid", "fa-external-link"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "record-count"], [1, "fa-solid", "fa-bolt"], [1, "panel-content"], [1, "loading-state"], [1, "section-header"], [1, "header-actions"], ["kendoButton", "", "themeColor", "primary", "size", "small"], [1, "entity-list"], ["kendoButton", "", "themeColor", "primary", "size", "small", 3, "click"], [1, "fa-solid", "fa-plus"], ["kendoButton", "", "themeColor", "primary"], ["kendoButton", "", "themeColor", "primary", 3, "click"], [1, "entity-item", "action-item"], [1, "view-more-item"], [1, "entity-item", "action-item", 3, "click"], [1, "item-icon"], [1, "item-content"], [1, "item-title"], [1, "item-preview"], [1, "item-meta"], [1, "meta-tag"], [1, "status-tag"], [1, "item-actions"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove action"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove action", 3, "click"], [1, "fa-solid", "fa-trash"], [1, "view-more-item", 3, "click"], [1, "section-header", "sub-agent-filter-header"], [1, "filter-controls"], ["selection", "single"], ["kendoButton", "", "size", "small", 3, "click", "toggleable", "selected"], [1, "fa-solid", "fa-layer-group"], [1, "fa-solid", "fa-link"], [1, "fa-solid", "fa-share-nodes"], ["kendoButton", "", "themeColor", "primary", "size", "small", "title", "Create a new child sub-agent that shares this agent's payload", 3, "click"], ["kendoButton", "", "themeColor", "secondary", "size", "small", "title", "Link an existing agent as a related sub-agent with payload mapping", 3, "click"], [1, "empty-state-info"], [1, "info-card"], [1, "fa-solid", "fa-link", 2, "color", "#2196F3"], [1, "fa-solid", "fa-share-nodes", 2, "color", "#9C27B0"], [1, "entity-item", "sub-agent-item", 3, "child-sub-agent", "related-sub-agent"], [1, "entity-item", "sub-agent-item", 3, "click"], [1, "sub-agent-type-badge"], [1, "sub-agent-logo", 3, "src", "alt"], [1, "meta-tag", "payload-info"], [1, "fa-solid", "fa-database"], [1, "status-tag", 3, "background-color"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Configure output mapping"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Advanced settings"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", 3, "title"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Configure output mapping", 3, "click"], [1, "fa-solid", "fa-exchange-alt"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Advanced settings", 3, "click"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", 3, "click", "title"], [1, "prompt-controls"], [1, "model-selection-mode"], [1, "model-selection-label"], [1, "fa-solid", "fa-sliders"], ["name", "modelSelectionMode", "textField", "text", "valueField", "value", 1, "model-selection-dropdown", 3, "ngModel", "data", "valuePrimitive"], [1, "model-selection-value"], ["name", "modelSelectionMode", "textField", "text", "valueField", "value", 1, "model-selection-dropdown", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], [1, "entity-item", "prompt-item"], [1, "entity-item", "prompt-item", 3, "click"], [1, "fa-solid", "fa-comment-dots"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove prompt"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove prompt", 3, "click"], [1, "fa-solid", "fa-brain"], [1, "section-description"], [1, "entity-item", "learning-item"], [1, "entity-item", "learning-item", 3, "click"], [1, "fa-solid", "fa-calendar"], [1, "fa-solid", "fa-sticky-note"], [1, "entity-item", "note-item"], [1, "entity-item", "note-item", 3, "click"], [1, "payload-section"], [1, "payload-section-title"], [1, "fa-solid", "fa-target"], [1, "payload-field-container"], [1, "payload-field-info"], [1, "payload-field-label"], [1, "payload-field-description"], [1, "payload-field-input"], ["FieldName", "PayloadScope", "Type", "textbox", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], [1, "payload-field-example"], [1, "fa-solid", "fa-lightbulb"], [1, "fa-solid", "fa-route"], [1, "payload-paths-grid"], [1, "payload-path-card"], [1, "payload-path-header"], [1, "payload-path-icon", "downstream"], [1, "fa-solid", "fa-arrow-down"], [1, "payload-path-info"], [1, "payload-path-content"], [1, "json-editor-container"], ["language", "json", 2, "height", "100px", "width", "100%", 3, "valueChange", "value", "readonly", "lineWrapping"], [1, "payload-path-hint"], [1, "fa-solid", "fa-info-circle"], [1, "payload-path-icon", "upstream"], [1, "fa-solid", "fa-arrow-up"], [1, "payload-path-icon", "self-read"], [1, "fa-solid", "fa-eye"], [1, "payload-path-icon", "self-write"], [1, "fa-solid", "fa-pen"], [1, "fa-solid", "fa-shield-check"], [1, "payload-validation-container"], [1, "payload-validation-settings"], [1, "validation-field-group"], [1, "validation-field-label"], [1, "validation-field-description"], ["FieldName", "FinalPayloadValidationMode", "Type", "dropdownlist", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], ["FieldName", "FinalPayloadValidationMaxRetries", "Type", "numerictextbox", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], [1, "payload-validation-schema"], [1, "validation-schema-label"], [1, "fa-solid", "fa-code"], [1, "validation-schema-description"], [1, "validation-schema-editor"], ["language", "json", 2, "height", "200px", "width", "100%", 3, "valueChange", "value", "readonly", "lineWrapping"], [1, "fa-solid", "fa-shield-halved"], [1, "form-fields-grid"], ["FieldName", "MaxCostPerRun", "Type", "numerictextbox", "Caption", "Max Cost ($)", "Description", "Maximum cost per run", 3, "EditMode", "Record"], ["FieldName", "MaxTokensPerRun", "Type", "numerictextbox", "Caption", "Max Tokens", "Description", "Maximum tokens per run", 3, "EditMode", "Record"], ["FieldName", "MaxIterationsPerRun", "Type", "numerictextbox", "Caption", "Max Iterations", "Description", "Maximum prompt iterations", 3, "EditMode", "Record"], ["FieldName", "MaxTimePerRun", "Type", "numerictextbox", "Caption", "Max Time (seconds)", "Description", "Maximum execution time", 3, "EditMode", "Record"], [1, "fa-solid", "fa-cogs"], [1, "config-section"], [1, "config-section-title"], [1, "fa-solid", "fa-id-card"], [1, "config-grid"], [1, "config-card"], [1, "config-card-header"], [1, "config-card-icon"], [1, "fa-solid", "fa-toggle-on"], [1, "config-card-info"], [1, "config-card-content"], ["textField", "text", "valueField", "value", "name", "agentStatus", 1, "config-field-input", 3, "ngModel", "data", "valuePrimitive"], [1, "config-field-display"], ["textField", "Name", "valueField", "ID", "name", "agentTypeID", 1, "config-field-input", 3, "ngModel", "data", "valuePrimitive"], ["FieldName", "ExposeAsAction", "Type", "checkbox", "Caption", "", 3, "EditMode", "Record"], [1, "config-card", "full-width"], [1, "fa-solid", "fa-align-left"], ["FieldName", "Description", "Type", "textarea", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], ["FieldName", "ExecutionMode", "Type", "dropdownlist", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-sort-numeric-down"], ["FieldName", "ExecutionOrder", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-tachometer-alt"], ["FieldName", "DefaultPromptEffortLevel", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "config-card-hint"], ["FieldName", "DriverClass", "Type", "textbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-palette"], [1, "fa-solid", "fa-icons"], ["FieldName", "IconClass", "Type", "textbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-image"], ["FieldName", "LogoURL", "Type", "textbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-compress"], ["FieldName", "EnableContextCompression", "Type", "checkbox", "Caption", "", 3, "valueChange", "EditMode", "Record"], ["textField", "text", "valueField", "value", "name", "agentStatus", 1, "config-field-input", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], ["textField", "Name", "valueField", "ID", "name", "agentTypeID", 1, "config-field-input", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], [1, "fa-solid", "fa-hashtag"], ["FieldName", "ContextCompressionMessageThreshold", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-save"], ["FieldName", "ContextCompressionMessageRetentionCount", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "prompt-selector-container"], [1, "prompt-display"], [1, "prompt-name"], [1, "no-prompt"], [1, "prompt-actions"], ["type", "button", "kendoButton", "", "fillMode", "outline", "size", "small", 1, "prompt-select-btn", 3, "click"], ["type", "button", "kendoButton", "", "fillMode", "flat", "size", "small", "title", "Clear selection", 1, "prompt-clear-btn"], ["type", "button", "kendoButton", "", "fillMode", "flat", "size", "small", "title", "Clear selection", 1, "prompt-clear-btn", 3, "click"], [1, "fa-solid", "fa-times"], [3, "Closed", "PermissionsChanged", "Agent"]], template: function AIAgentFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
|
|
4475
|
+
} }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 2, consts: [["form", "ngForm"], ["customSectionContainer", ""], [1, "record-form-container"], ["kendoDialogContainer", ""], ["kendoWindowContainer", ""], [1, "record-form"], [3, "Agent"], [3, "Form"], [1, "agent-header"], [1, "agent-header-mini"], [1, "form-content"], [3, "stateChange", "keepItemContent"], ["id", "custom", 3, "expanded"], ["id", "history", 3, "expanded", "disabled"], ["id", "actions", 3, "expanded", "disabled"], ["id", "subagents", 3, "expanded", "disabled"], ["id", "prompts", 3, "expanded", "disabled"], ["id", "learning", 3, "expanded", "disabled"], ["id", "notes", 3, "expanded", "disabled"], ["id", "payload", 3, "expanded"], ["kendoPanelBarItemTitle", ""], ["kendoPanelBarContent", ""], ["id", "guardrails", 3, "expanded"], ["id", "config", 3, "expanded"], [1, "agent-header-content"], ["title", "Minimize header", 1, "agent-header-toggle", 3, "click"], [1, "fa-solid", "fa-chevron-up"], [1, "agent-overview"], [1, "agent-icon-wrapper"], [1, "agent-logo", 3, "src", "alt"], [3, "class"], [1, "agent-info"], ["name", "agentName", "placeholder", "Enter agent name...", 1, "agent-name-input", 3, "ngModel"], [1, "agent-name"], [1, "agent-meta"], [1, "status-badge", 3, "background-color"], [1, "execution-mode"], [1, "parent-agent", "clickable", 3, "title"], [1, "agent-actions"], ["kendoButton", "", "fillMode", "outline", "size", "small", "title", "Refresh all data", 3, "click"], [1, "fa-solid", "fa-refresh"], ["name", "agentName", "placeholder", "Enter agent name...", 1, "agent-name-input", 3, "ngModelChange", "ngModel"], [1, "status-badge"], [1, "fa-solid", "fa-circle"], [1, "parent-agent", "clickable", 3, "click", "title"], [1, "fa-solid", "fa-sitemap"], [1, "fa-solid", "fa-external-link", 2, "margin-left", "4px", "font-size", "10px"], ["kendoButton", "", "themeColor", "primary", "size", "large", "title", "Run this AI agent", 3, "click", "disabled"], [1, "fa-solid", "fa-play"], ["kendoButton", "", "size", "large", 3, "click", "title"], [1, "fa-solid"], ["title", "Expand header", 1, "agent-header-mini-expand", 3, "click"], [1, "fa-solid", "fa-chevron-down"], [1, "agent-header-mini-name"], [1, "agent-header-mini-status", 3, "background-color"], [1, "agent-header-mini-spacer"], ["title", "Refresh", 1, "agent-header-mini-btn", 3, "click"], [1, "agent-header-mini-status"], ["title", "Run agent", 1, "agent-header-mini-btn", "agent-header-mini-btn--primary", 3, "click", "disabled"], [1, "agent-header-mini-btn", 3, "click", "title"], [1, "fa-solid", "fa-puzzle-piece"], [1, "panel-content", "custom-agent-type-section"], ["size", "medium", 3, "text"], [1, "fa-solid", "fa-history"], [2, "margin-left", "8px"], [1, "fa-solid", "fa-spinner", "fa-spin", 2, "font-size", "12px"], [1, "panel-content", "execution-history-panel"], [1, "empty-state"], [1, "execution-search-bar"], ["placeholder", "Search by Run ID...", 3, "ngModelChange", "ngModel", "ngModelOptions", "clearButton"], ["kendoTextBoxPrefixTemplate", ""], [1, "execution-history-list"], [1, "execution-card", 3, "expanded"], [1, "pagination-controls"], [1, "fa-solid", "fa-search"], [1, "execution-card"], [1, "execution-header", 3, "click"], [1, "execution-left-section"], [1, "execution-status"], [1, "status-indicator"], [1, "execution-info"], [1, "execution-title"], [1, "fa-solid", "fa-chevron-right", "expand-icon"], [1, "execution-date"], [1, "execution-metrics"], [1, "metric-item"], [1, "execution-actions"], ["title", "View details", 1, "action-btn", 3, "click"], [1, "fa-solid", "fa-external-link-alt"], [1, "execution-expanded-content"], [1, "fa-solid", "fa-cog"], [1, "metric-label"], [1, "metric-value"], [1, "fa-solid", "fa-stopwatch"], [1, "fa-solid", "fa-clock"], [1, "fa-solid", "fa-microchip"], [1, "fa-solid", "fa-dollar-sign"], [1, "detailed-metrics"], [1, "metrics-grid"], [1, "metric-detail"], [1, "metric-info"], [1, "metric-title"], [1, "metric-data"], [1, "result-section"], [1, "error-section"], [1, "fa-solid", "fa-check-circle"], [1, "fa-solid", "fa-calculator"], [1, "fa-solid", "fa-comments"], [1, "fa-solid", "fa-file-text"], ["language", "json", 2, "max-height", "200px", "width", "100%", 3, "value", "readonly", "lineWrapping"], [1, "fa-solid", "fa-exclamation-triangle"], [1, "error-content"], ["kendoButton", "", "fillMode", "outline", "size", "medium", 1, "page-nav-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-left"], [1, "page-info"], [1, "fa-solid", "fa-chevron-right"], ["kendoButton", "", "fillMode", "flat", "size", "small", 1, "view-all-btn", 3, "click"], [1, "fa-solid", "fa-external-link"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "record-count"], [1, "fa-solid", "fa-bolt"], [1, "panel-content"], [1, "loading-state"], [1, "section-header"], [1, "header-actions"], ["kendoButton", "", "themeColor", "primary", "size", "small"], [1, "entity-list"], ["kendoButton", "", "themeColor", "primary", "size", "small", 3, "click"], [1, "fa-solid", "fa-plus"], ["kendoButton", "", "themeColor", "primary"], ["kendoButton", "", "themeColor", "primary", 3, "click"], [1, "entity-item", "action-item"], [1, "view-more-item"], [1, "entity-item", "action-item", 3, "click"], [1, "item-icon"], [1, "item-content"], [1, "item-title"], [1, "item-preview"], [1, "item-meta"], [1, "meta-tag"], [1, "status-tag"], [1, "item-actions"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove action"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove action", 3, "click"], [1, "fa-solid", "fa-trash"], [1, "view-more-item", 3, "click"], [1, "section-header", "sub-agent-filter-header"], [1, "filter-controls"], ["selection", "single"], ["kendoButton", "", "size", "small", 3, "click", "toggleable", "selected"], [1, "fa-solid", "fa-layer-group"], [1, "fa-solid", "fa-link"], [1, "fa-solid", "fa-share-nodes"], ["kendoButton", "", "themeColor", "primary", "size", "small", "title", "Create a new child sub-agent that shares this agent's payload", 3, "click"], ["kendoButton", "", "themeColor", "secondary", "size", "small", "title", "Link an existing agent as a related sub-agent with payload mapping", 3, "click"], [1, "empty-state-info"], [1, "info-card"], [1, "fa-solid", "fa-link", 2, "color", "#2196F3"], [1, "fa-solid", "fa-share-nodes", 2, "color", "#9C27B0"], [1, "entity-item", "sub-agent-item", 3, "child-sub-agent", "related-sub-agent"], [1, "entity-item", "sub-agent-item", 3, "click"], [1, "sub-agent-type-badge"], [1, "sub-agent-logo", 3, "src", "alt"], [1, "meta-tag", "payload-info"], [1, "fa-solid", "fa-database"], [1, "status-tag", 3, "background-color"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Configure output mapping"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Advanced settings"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", 3, "title"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Configure output mapping", 3, "click"], [1, "fa-solid", "fa-exchange-alt"], ["kendoButton", "", "fillMode", "flat", "themeColor", "primary", "size", "small", "title", "Advanced settings", 3, "click"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", 3, "click", "title"], [1, "prompt-controls"], [1, "model-selection-mode"], [1, "model-selection-label"], [1, "fa-solid", "fa-sliders"], ["name", "modelSelectionMode", "textField", "text", "valueField", "value", 1, "model-selection-dropdown", 3, "ngModel", "data", "valuePrimitive"], [1, "model-selection-value"], ["name", "modelSelectionMode", "textField", "text", "valueField", "value", 1, "model-selection-dropdown", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], [1, "entity-item", "prompt-item"], [1, "entity-item", "prompt-item", 3, "click"], [1, "fa-solid", "fa-comment-dots"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove prompt"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove prompt", 3, "click"], [1, "fa-solid", "fa-brain"], [1, "section-description"], [1, "entity-item", "learning-item"], [1, "entity-item", "learning-item", 3, "click"], [1, "fa-solid", "fa-calendar"], [1, "fa-solid", "fa-sticky-note"], [1, "entity-item", "note-item"], [1, "entity-item", "note-item", 3, "click"], [1, "payload-section"], [1, "payload-section-title"], [1, "fa-solid", "fa-target"], [1, "payload-field-container"], [1, "payload-field-info"], [1, "payload-field-label"], [1, "payload-field-description"], [1, "payload-field-input"], ["FieldName", "PayloadScope", "Type", "textbox", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], [1, "payload-field-example"], [1, "fa-solid", "fa-lightbulb"], [1, "fa-solid", "fa-route"], [1, "payload-paths-grid"], [1, "payload-path-card"], [1, "payload-path-header"], [1, "payload-path-icon", "downstream"], [1, "fa-solid", "fa-arrow-down"], [1, "payload-path-info"], [1, "payload-path-content"], [1, "json-editor-container"], ["language", "json", 2, "height", "100px", "width", "100%", 3, "valueChange", "value", "readonly", "lineWrapping"], [1, "payload-path-hint"], [1, "fa-solid", "fa-info-circle"], [1, "payload-path-icon", "upstream"], [1, "fa-solid", "fa-arrow-up"], [1, "payload-path-icon", "self-read"], [1, "fa-solid", "fa-eye"], [1, "payload-path-icon", "self-write"], [1, "fa-solid", "fa-pen"], [1, "fa-solid", "fa-shield-check"], [1, "payload-validation-container"], [1, "payload-validation-settings"], [1, "validation-field-group"], [1, "validation-field-label"], [1, "validation-field-description"], ["FieldName", "FinalPayloadValidationMode", "Type", "dropdownlist", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], ["FieldName", "FinalPayloadValidationMaxRetries", "Type", "numerictextbox", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], [1, "payload-validation-schema"], [1, "validation-schema-label"], [1, "fa-solid", "fa-code"], [1, "validation-schema-description"], [1, "validation-schema-editor"], ["language", "json", 2, "height", "200px", "width", "100%", 3, "valueChange", "value", "readonly", "lineWrapping"], [1, "fa-solid", "fa-shield-halved"], [1, "form-fields-grid"], ["FieldName", "MaxCostPerRun", "Type", "numerictextbox", "Caption", "Max Cost ($)", "Description", "Maximum cost per run", 3, "EditMode", "Record"], ["FieldName", "MaxTokensPerRun", "Type", "numerictextbox", "Caption", "Max Tokens", "Description", "Maximum tokens per run", 3, "EditMode", "Record"], ["FieldName", "MaxIterationsPerRun", "Type", "numerictextbox", "Caption", "Max Iterations", "Description", "Maximum prompt iterations", 3, "EditMode", "Record"], ["FieldName", "MaxTimePerRun", "Type", "numerictextbox", "Caption", "Max Time (seconds)", "Description", "Maximum execution time", 3, "EditMode", "Record"], [1, "fa-solid", "fa-cogs"], [1, "config-section"], [1, "config-section-title"], [1, "fa-solid", "fa-id-card"], [1, "config-grid"], [1, "config-card"], [1, "config-card-header"], [1, "config-card-icon"], [1, "fa-solid", "fa-toggle-on"], [1, "config-card-info"], [1, "config-card-content"], ["textField", "text", "valueField", "value", "name", "agentStatus", 1, "config-field-input", 3, "ngModel", "data", "valuePrimitive"], [1, "config-field-display"], ["textField", "Name", "valueField", "ID", "name", "agentTypeID", 1, "config-field-input", 3, "ngModel", "data", "valuePrimitive"], ["FieldName", "ExposeAsAction", "Type", "checkbox", "Caption", "", 3, "EditMode", "Record"], [1, "config-card", "full-width"], [1, "fa-solid", "fa-align-left"], ["FieldName", "Description", "Type", "textarea", "Caption", "", 2, "width", "100%", 3, "EditMode", "Record"], ["FieldName", "ExecutionMode", "Type", "dropdownlist", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-sort-numeric-down"], ["FieldName", "ExecutionOrder", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-tachometer-alt"], ["FieldName", "DefaultPromptEffortLevel", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "config-card-hint"], ["FieldName", "DriverClass", "Type", "textbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-palette"], [1, "fa-solid", "fa-icons"], ["FieldName", "IconClass", "Type", "textbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-image"], ["FieldName", "LogoURL", "Type", "textbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-compress"], ["FieldName", "EnableContextCompression", "Type", "checkbox", "Caption", "", 3, "valueChange", "EditMode", "Record"], ["textField", "text", "valueField", "value", "name", "agentStatus", 1, "config-field-input", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], ["textField", "Name", "valueField", "ID", "name", "agentTypeID", 1, "config-field-input", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], [1, "fa-solid", "fa-hashtag"], ["FieldName", "ContextCompressionMessageThreshold", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "fa-solid", "fa-save"], ["FieldName", "ContextCompressionMessageRetentionCount", "Type", "numerictextbox", "Caption", "", 3, "EditMode", "Record"], [1, "prompt-selector-container"], [1, "prompt-display"], [1, "prompt-name"], [1, "no-prompt"], [1, "prompt-actions"], ["type", "button", "kendoButton", "", "fillMode", "outline", "size", "small", 1, "prompt-select-btn", 3, "click"], ["type", "button", "kendoButton", "", "fillMode", "flat", "size", "small", "title", "Clear selection", 1, "prompt-clear-btn"], ["type", "button", "kendoButton", "", "fillMode", "flat", "size", "small", "title", "Clear selection", 1, "prompt-clear-btn", 3, "click"], [1, "fa-solid", "fa-times"], [3, "Closed", "PermissionsChanged", "Agent"]], template: function MJAIAgentFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
|
|
4476
4476
|
i0.ɵɵelementStart(0, "div", 2);
|
|
4477
4477
|
i0.ɵɵelement(1, "div", 3)(2, "div", 4);
|
|
4478
|
-
i0.ɵɵconditionalCreate(3,
|
|
4479
|
-
i0.ɵɵconditionalCreate(4,
|
|
4478
|
+
i0.ɵɵconditionalCreate(3, MJAIAgentFormComponentExtended_Conditional_3_Template, 23, 14, "form", 5);
|
|
4479
|
+
i0.ɵɵconditionalCreate(4, MJAIAgentFormComponentExtended_Conditional_4_Template, 1, 1, "mj-agent-permissions-dialog", 6);
|
|
4480
4480
|
i0.ɵɵelementEnd();
|
|
4481
4481
|
} if (rf & 2) {
|
|
4482
4482
|
i0.ɵɵadvance(3);
|
|
@@ -4485,16 +4485,16 @@ let AIAgentFormComponentExtended = class AIAgentFormComponentExtended extends MJ
|
|
|
4485
4485
|
i0.ɵɵconditional(ctx.ShowPermissionsDialog ? 4 : -1);
|
|
4486
4486
|
} }, dependencies: [i1.ɵNgNoValidate, i1.NgControlStatus, i1.NgControlStatusGroup, i1.NgModel, i1.NgForm, i2.PanelBarComponent, i2.PanelBarItemComponent, i2.PanelBarContentDirective, i2.PanelBarItemTitleDirective, i3.DialogContainerDirective, i3.WindowContainerDirective, i4.TextBoxComponent, i4.TextBoxPrefixTemplateDirective, i5.DropDownListComponent, i6.ButtonComponent, i6.ButtonGroupComponent, i7.MjFormToolbarComponent, i7.MjFormFieldComponent, i8.CodeEditorComponent, i9.LoadingComponent, i10.AgentPermissionsDialogComponent, i11.DatePipe], styles: ["\n\n.record-form-container[_ngcontent-%COMP%] {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #f5f7fa;\n}\n\n.record-form[_ngcontent-%COMP%] {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n\n\n.agent-header[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);\n border-bottom: 1px solid #e0e6ed;\n padding: 8px 16px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.04);\n transition: padding 0.2s ease;\n}\n\n.agent-header-content[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 12px;\n}\n\n\n\n.agent-header-toggle[_ngcontent-%COMP%] {\n background: none;\n border: 1px solid #e0e6ed;\n border-radius: 6px;\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #94a3b8;\n flex-shrink: 0;\n padding: 0;\n transition: all 0.15s ease;\n}\n\n.agent-header-toggle[_ngcontent-%COMP%]:hover {\n background: #f1f5f9;\n color: #475569;\n border-color: #cbd5e1;\n}\n\n.agent-header-toggle[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 10px;\n}\n\n.agent-overview[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n min-width: 0;\n}\n\n.agent-icon-wrapper[_ngcontent-%COMP%] {\n width: 36px;\n height: 36px;\n background: linear-gradient(135deg, #2196f3 0%, #1976d2 100%);\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.15);\n flex-shrink: 0;\n transition: all 0.2s ease;\n}\n\n.agent-icon-wrapper[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n font-size: 18px;\n}\n\n\n\n.agent-header-mini[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 12px;\n background: #ffffff;\n border-bottom: 1px solid #e2e8f0;\n height: 32px;\n}\n\n.agent-header-mini-expand[_ngcontent-%COMP%] {\n background: none;\n border: 1px solid #e0e6ed;\n border-radius: 4px;\n width: 22px;\n height: 22px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #94a3b8;\n padding: 0;\n flex-shrink: 0;\n transition: all 0.15s ease;\n}\n\n.agent-header-mini-expand[_ngcontent-%COMP%]:hover {\n background: #f1f5f9;\n color: #475569;\n border-color: #cbd5e1;\n}\n\n.agent-header-mini-expand[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 9px;\n}\n\n.agent-header-mini-name[_ngcontent-%COMP%] {\n font-size: 13px;\n font-weight: 600;\n color: #334155;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 300px;\n}\n\n.agent-header-mini-status[_ngcontent-%COMP%] {\n padding: 1px 7px;\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n color: white;\n flex-shrink: 0;\n}\n\n.agent-header-mini-spacer[_ngcontent-%COMP%] {\n flex: 1;\n}\n\n.agent-header-mini-btn[_ngcontent-%COMP%] {\n background: none;\n border: 1px solid #e2e8f0;\n border-radius: 4px;\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #64748b;\n padding: 0;\n flex-shrink: 0;\n transition: all 0.15s ease;\n}\n\n.agent-header-mini-btn[_ngcontent-%COMP%]:hover:not(:disabled) {\n background: #f1f5f9;\n color: #334155;\n border-color: #cbd5e1;\n}\n\n.agent-header-mini-btn[_ngcontent-%COMP%]:disabled {\n opacity: 0.35;\n cursor: not-allowed;\n}\n\n.agent-header-mini-btn--primary[_ngcontent-%COMP%] {\n border-color: #93c5fd;\n color: #2563eb;\n background: #eff6ff;\n}\n\n.agent-header-mini-btn--primary[_ngcontent-%COMP%]:hover:not(:disabled) {\n background: #dbeafe;\n border-color: #60a5fa;\n color: #1d4ed8;\n}\n\n.agent-header-mini-btn[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 11px;\n}\n\n.agent-icon-wrapper[_ngcontent-%COMP%] img.agent-logo[_ngcontent-%COMP%] {\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: 8px;\n}\n\n.agent-info[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.agent-name[_ngcontent-%COMP%] {\n font-size: 18px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 4px 0;\n line-height: 1.2;\n}\n\n.agent-name-input[_ngcontent-%COMP%] {\n font-size: 16px !important;\n font-weight: 500 !important;\n height: 30px !important;\n width: 100% !important;\n max-width: 350px !important;\n}\n\n.agent-meta[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 10px;\n flex-wrap: wrap;\n}\n\n.status-badge[_ngcontent-%COMP%] {\n padding: 3px 10px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.status-badge.active[_ngcontent-%COMP%] {\n background: #28a745;\n color: white;\n}\n\n.status-badge.pending[_ngcontent-%COMP%] {\n background: #ffc107;\n color: #212529;\n}\n\n.status-badge.disabled[_ngcontent-%COMP%] {\n background: #6c757d;\n color: white;\n}\n\n.execution-mode[_ngcontent-%COMP%], \n.parent-agent[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 13px;\n color: #6c757d;\n background: #f8f9fa;\n padding: 4px 10px;\n border-radius: 12px;\n}\n\n.execution-mode[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.parent-agent[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n opacity: 0.8;\n}\n\n.parent-agent.clickable[_ngcontent-%COMP%] {\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.parent-agent.clickable[_ngcontent-%COMP%]:hover {\n background: #e3e7ed;\n color: #2196f3;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n.parent-agent.clickable[_ngcontent-%COMP%]:active {\n transform: translateY(0);\n box-shadow: 0 1px 2px rgba(0,0,0,0.1);\n}\n\n\n\n.prompt-controls[_ngcontent-%COMP%] {\n flex: 1;\n margin-right: 16px;\n}\n\n.agent-meta-info[_ngcontent-%COMP%] {\n display: flex;\n gap: 24px;\n margin-top: 12px;\n flex-wrap: wrap;\n}\n\n.meta-item[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.meta-label[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.meta-value[_ngcontent-%COMP%] {\n font-size: 14px;\n color: #495057;\n font-weight: 500;\n}\n\n.agent-description[_ngcontent-%COMP%] {\n margin-top: 16px;\n color: #6c757d;\n line-height: 1.6;\n font-size: 15px;\n}\n\n.agent-description-input[_ngcontent-%COMP%] {\n width: 100%;\n max-width: 600px;\n min-height: 80px;\n resize: vertical;\n}\n\n\n\n.agent-actions[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n gap: 8px;\n flex-shrink: 0;\n align-items: center;\n}\n\n.action-buttons-row[_ngcontent-%COMP%] {\n display: flex;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.action-button[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n border-radius: 8px;\n font-weight: 500;\n font-size: 14px;\n transition: all 0.2s ease;\n box-shadow: 0 2px 4px rgba(0,0,0,0.08);\n}\n\n.action-button[_ngcontent-%COMP%]:hover {\n transform: translateY(-1px);\n box-shadow: 0 4px 8px rgba(0,0,0,0.12);\n}\n\n.action-button.primary[_ngcontent-%COMP%] {\n background: #2196f3;\n color: white;\n}\n\n.action-button.primary[_ngcontent-%COMP%]:hover {\n background: #1976d2;\n}\n\n.action-button.secondary[_ngcontent-%COMP%] {\n background: #6c757d;\n color: white;\n}\n\n.action-button.secondary[_ngcontent-%COMP%]:hover {\n background: #5a6268;\n}\n\n.action-warnings[_ngcontent-%COMP%] {\n margin-top: 8px;\n font-size: 13px;\n color: #dc3545;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n\n\n.form-content[_ngcontent-%COMP%] {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n overflow-x: hidden;\n background: #f5f7fa;\n padding: 8px 12px;\n}\n\n\n\n .k-panelbar {\n border: none;\n background: transparent;\n}\n\n .k-panelbar > .k-panelbar-item {\n border: none;\n border-radius: 10px;\n margin-bottom: 8px;\n box-shadow: 0 1px 4px rgba(0,0,0,0.05);\n background: white;\n overflow: hidden;\n}\n\n .k-panelbar > .k-panelbar-item > .k-header {\n background: white;\n border: none;\n padding: 10px 16px;\n border-radius: 12px 12px 0 0;\n color: #2c3e50;\n font-weight: 600;\n font-size: 14px;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n .k-panelbar > .k-panelbar-item > .k-header:hover {\n background: #f8f9fa;\n}\n\n .k-panelbar > .k-panelbar-item.k-panelbar-expanded > .k-header {\n background: #2196f3;\n color: white;\n border-radius: 12px 12px 0 0;\n}\n\n .k-panelbar > .k-panelbar-item > .k-header .k-panelbar-toggle {\n position: absolute;\n right: 24px;\n color: inherit;\n font-size: 14px;\n transition: transform 0.2s ease;\n}\n\n .k-panelbar > .k-panelbar-item.k-panelbar-expanded > .k-header .k-panelbar-toggle {\n transform: rotate(180deg);\n}\n\n .k-panelbar > .k-panelbar-item > .k-header .k-panelbar-toggle::before {\n content: '\\f107';\n font-family: 'Font Awesome 6 Free';\n font-weight: 900;\n}\n\n .k-panelbar > .k-panelbar-item > .k-content {\n padding: 0;\n border: none;\n background: white;\n border-radius: 0 0 12px 12px;\n}\n\n .k-panelbar .k-header .k-panelbar-icon {\n font-size: 18px;\n color: #2196f3;\n margin-right: 8px;\n}\n\n .k-panelbar .k-panelbar-expanded .k-header .k-panelbar-icon {\n color: white;\n}\n\n\n\n.panel-content[_ngcontent-%COMP%] {\n padding: 16px;\n background: white;\n}\n\n.section-header[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 20px;\n gap: 16px;\n flex-wrap: wrap;\n}\n\n.section-description[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.6;\n margin-bottom: 16px;\n}\n\n.header-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n align-items: center;\n flex-shrink: 0;\n}\n\n.tab-section[_ngcontent-%COMP%] {\n background: white;\n border-radius: 12px;\n padding: 24px;\n margin-bottom: 24px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n border: 1px solid #e0e6ed;\n}\n\n.section-header[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 20px;\n padding-bottom: 16px;\n border-bottom: 2px solid #f0f4f8;\n}\n\n.section-title[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n margin: 0;\n color: #2c3e50;\n font-size: 18px;\n font-weight: 600;\n}\n\n.section-title[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #2196f3;\n font-size: 20px;\n}\n\n.section-description[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.6;\n margin-top: 8px;\n}\n\n\n\n.form-fields-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.form-field-group[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.form-field-label[_ngcontent-%COMP%] {\n font-size: 13px;\n font-weight: 600;\n color: #495057;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n\n\n.sub-grid-container[_ngcontent-%COMP%] {\n height: 500px;\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n overflow: hidden;\n display: none; \n\n}\n\n\n\n\n\n.loading-state[_ngcontent-%COMP%] {\n text-align: center;\n padding: 60px 20px;\n color: #64748b;\n}\n\n.loading-state[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 36px;\n color: #2196f3;\n margin-bottom: 16px;\n display: block;\n}\n\n.loading-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 14px;\n color: #94a3b8;\n}\n\n.empty-state[_ngcontent-%COMP%] {\n text-align: center;\n padding: 60px 20px;\n color: #6c757d;\n}\n\n.empty-state[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 48px;\n color: #dee2e6;\n margin-bottom: 16px;\n}\n\n.empty-state[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n color: #495057;\n font-weight: 600;\n margin-bottom: 8px;\n}\n\n.empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n font-size: 15px;\n line-height: 1.6;\n max-width: 400px;\n margin: 0 auto;\n}\n\n\n\n.loading-overlay[_ngcontent-%COMP%] {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.9);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n}\n\n.loading-spinner[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n}\n\n.spinner-icon[_ngcontent-%COMP%] {\n width: 48px;\n height: 48px;\n border: 4px solid #f3f3f3;\n border-top: 4px solid #2196f3;\n border-radius: 50%;\n animation: _ngcontent-%COMP%_spin 1s linear infinite;\n}\n\n@keyframes _ngcontent-%COMP%_spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n\n\n.quick-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 16px;\n margin-top: 20px;\n padding-top: 20px;\n border-top: 1px solid #e0e6ed;\n}\n\n.quick-action-card[_ngcontent-%COMP%] {\n flex: 1;\n padding: 16px;\n background: #f8f9fa;\n border-radius: 8px;\n border: 1px solid #e0e6ed;\n cursor: pointer;\n transition: all 0.2s ease;\n text-align: center;\n}\n\n.quick-action-card[_ngcontent-%COMP%]:hover {\n background: white;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n transform: translateY(-2px);\n}\n\n.quick-action-icon[_ngcontent-%COMP%] {\n font-size: 32px;\n color: #2196f3;\n margin-bottom: 8px;\n}\n\n.quick-action-title[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 4px;\n}\n\n.quick-action-description[_ngcontent-%COMP%] {\n font-size: 12px;\n color: #6c757d;\n}\n\n\n\n.header-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n align-items: center;\n}\n\n\n\n.entity-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n margin-top: 16px;\n}\n\n.entity-item[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 16px;\n background: #f8f9fa;\n border: 1px solid #e0e6ed;\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.entity-item[_ngcontent-%COMP%]:hover {\n background: white;\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n transform: translateY(-1px);\n}\n\n.item-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.prompt-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #20c997, #17a673);\n}\n\n.action-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffc107, #e0a800);\n}\n\n.sub-agent-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #2196f3, #1976d2);\n}\n\n.model-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #6f42c1, #563d7c);\n}\n\n.learning-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #e83e8c, #dc3545);\n}\n\n.note-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #fd7e14, #e55a00);\n}\n\n.item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 18px;\n}\n\n.prompt-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.action-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.sub-agent-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.model-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.learning-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.note-item[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n}\n\n.item-icon[_ngcontent-%COMP%] img.sub-agent-logo[_ngcontent-%COMP%] {\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: 6px;\n}\n\n.item-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.item-title[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 4px 0;\n line-height: 1.3;\n}\n\n.item-preview[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.4;\n margin: 4px 0 8px 0;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.item-meta[_ngcontent-%COMP%] {\n display: flex;\n gap: 12px;\n align-items: center;\n flex-wrap: wrap;\n}\n\n.meta-tag[_ngcontent-%COMP%], \n.priority-tag[_ngcontent-%COMP%], \n.status-tag[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n padding: 3px 8px;\n border-radius: 6px;\n font-weight: 500;\n}\n\n.meta-tag[_ngcontent-%COMP%] {\n background: #e9ecef;\n color: #495057;\n}\n\n.priority-tag[_ngcontent-%COMP%] {\n color: white;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.status-tag[_ngcontent-%COMP%] {\n background: #e9ecef;\n color: #495057;\n}\n\n.status-tag.active[_ngcontent-%COMP%] {\n background: #d4edda;\n color: #28a745;\n}\n\n.status-tag.inactive[_ngcontent-%COMP%] {\n background: #f8d7da;\n color: #dc3545;\n}\n\n.item-actions[_ngcontent-%COMP%] {\n opacity: 0;\n transition: opacity 0.2s ease;\n color: #6c757d;\n font-size: 16px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-item[_ngcontent-%COMP%]:hover .item-actions[_ngcontent-%COMP%] {\n opacity: 1;\n}\n\n.entity-item[_ngcontent-%COMP%]:hover .item-actions[_ngcontent-%COMP%] > i[_ngcontent-%COMP%] {\n color: #2196f3;\n}\n\n.view-more-item[_ngcontent-%COMP%] {\n padding: 16px;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border: 2px dashed #dee2e6;\n border-radius: 10px;\n text-align: center;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #6c757d;\n font-weight: 500;\n}\n\n.view-more-item[_ngcontent-%COMP%]:hover {\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-color: #2196f3;\n color: #2196f3;\n}\n\n\n\n.pagination-controls[_ngcontent-%COMP%] {\n display: flex;\n gap: 12px;\n align-items: center;\n justify-content: center;\n padding: 16px;\n margin-top: 12px;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-radius: 10px;\n border: 1px solid #dee2e6;\n}\n\n.page-nav-btn[_ngcontent-%COMP%] {\n min-width: 120px;\n font-weight: 500;\n}\n\n.page-nav-btn[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n}\n\n.page-nav-btn[_ngcontent-%COMP%]:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.page-info[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 4px;\n padding: 0 16px;\n font-weight: 500;\n color: #495057;\n min-width: 200px;\n text-align: center;\n}\n\n.page-info[_ngcontent-%COMP%] .record-count[_ngcontent-%COMP%] {\n font-size: 12px;\n color: #6c757d;\n font-weight: normal;\n}\n\n.page-info[_ngcontent-%COMP%] .fa-spinner[_ngcontent-%COMP%] {\n margin-right: 8px;\n color: #2196f3;\n}\n\n.view-all-btn[_ngcontent-%COMP%] {\n color: #6c757d;\n white-space: nowrap;\n margin-left: auto;\n}\n\n.view-all-btn[_ngcontent-%COMP%]:hover {\n color: #2196f3;\n}\n\n.view-all-btn[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n margin-right: 4px;\n}\n\n\n\n.payload-config-section[_ngcontent-%COMP%], \n.payload-paths-section[_ngcontent-%COMP%], \n.payload-validation-section[_ngcontent-%COMP%] {\n margin-bottom: 32px;\n}\n\n.subsection-title[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 16px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.subsection-title[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #2196f3;\n}\n\n.subsection-divider[_ngcontent-%COMP%] {\n margin-top: 32px;\n margin-bottom: 16px;\n padding-top: 24px;\n border-top: 1px solid #e0e6ed;\n}\n\n.payload-config-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: 1fr 1fr 1fr;\n gap: 16px;\n margin-bottom: 24px;\n}\n\n.payload-field-group[_ngcontent-%COMP%] {\n margin-bottom: 20px;\n}\n\n.payload-field-label[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 8px;\n}\n\n.payload-field-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 16px;\n}\n\n.field-description[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: normal;\n color: #6c757d;\n margin-left: auto;\n}\n\n\n\n.payload-field-group[_ngcontent-%COMP%] mj-code-editor[_ngcontent-%COMP%] {\n border: 1px solid #dee2e6;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.payload-field-group[_ngcontent-%COMP%] mj-code-editor[_ngcontent-%COMP%]:hover {\n border-color: #2196f3;\n}\n\n\n\n.payload-field-group[_ngcontent-%COMP%] mj-form-field[_ngcontent-%COMP%] textarea {\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 13px;\n line-height: 1.5;\n min-height: 120px;\n resize: vertical;\n}\n\n\n\n.execution-history-panel[_ngcontent-%COMP%] {\n max-height: 500px;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n\n\n.timeline-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 16px;\n margin-top: 16px;\n}\n\n.timeline-item[_ngcontent-%COMP%] {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n padding: 16px;\n background: #f8f9fa;\n border: 1px solid #e0e6ed;\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.timeline-item[_ngcontent-%COMP%]:hover {\n background: white;\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n}\n\n.timeline-marker[_ngcontent-%COMP%] {\n width: 32px;\n height: 32px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n}\n\n.timeline-marker[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n font-size: 14px;\n}\n\n.timeline-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.timeline-title[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 8px 0;\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 16px;\n}\n\n.timeline-date[_ngcontent-%COMP%] {\n font-size: 12px;\n color: #6c757d;\n background: #e9ecef;\n padding: 2px 8px;\n border-radius: 6px;\n white-space: nowrap;\n flex-shrink: 0;\n}\n\n.timeline-meta[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 8px;\n}\n\n.timeline-preview[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.4;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n\n\n.cards-container[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));\n gap: 20px;\n margin-top: 16px;\n}\n\n.entity-card[_ngcontent-%COMP%] {\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 12px;\n padding: 20px;\n cursor: pointer;\n transition: all 0.3s ease;\n box-shadow: 0 2px 8px rgba(0,0,0,0.06);\n position: relative;\n overflow: hidden;\n}\n\n.entity-card[_ngcontent-%COMP%]:hover {\n transform: translateY(-4px);\n box-shadow: 0 8px 24px rgba(0,0,0,0.12);\n border-color: #2196f3;\n}\n\n.entity-card[_ngcontent-%COMP%]::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: 4px;\n background: linear-gradient(90deg, #2196f3, #42a5f5);\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n\n.entity-card[_ngcontent-%COMP%]:hover::before {\n opacity: 1;\n}\n\n.card-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: flex-start;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.card-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.sub-agent-card[_ngcontent-%COMP%] .card-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #2196f3, #1976d2);\n}\n\n.prompt-card[_ngcontent-%COMP%] .card-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #20c997, #17a673);\n}\n\n.action-card[_ngcontent-%COMP%] .card-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffc107, #e0a800);\n}\n\n.card-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 18px;\n color: #6c757d;\n}\n\n.sub-agent-card[_ngcontent-%COMP%] .card-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.prompt-card[_ngcontent-%COMP%] .card-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.action-card[_ngcontent-%COMP%] .card-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n}\n\n.card-title-section[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.card-title[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 4px 0;\n line-height: 1.3;\n word-wrap: break-word;\n}\n\n.card-description[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.5;\n margin: 8px 0;\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.card-meta[_ngcontent-%COMP%] {\n display: flex;\n gap: 16px;\n margin-top: 12px;\n flex-wrap: wrap;\n}\n\n.meta-item[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n color: #6c757d;\n padding: 4px 8px;\n background: #f8f9fa;\n border-radius: 6px;\n}\n\n.meta-item[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 11px;\n opacity: 0.8;\n}\n\n.meta-item.active[_ngcontent-%COMP%] {\n color: #28a745;\n background: #d4edda;\n}\n\n.meta-item.inactive[_ngcontent-%COMP%] {\n color: #dc3545;\n background: #f8d7da;\n}\n\n.card-actions[_ngcontent-%COMP%] {\n opacity: 0;\n transition: opacity 0.3s ease;\n color: #6c757d;\n}\n\n.entity-card[_ngcontent-%COMP%]:hover .card-actions[_ngcontent-%COMP%] {\n opacity: 1;\n color: #2196f3;\n}\n\n\n\n.priority-badge[_ngcontent-%COMP%] {\n padding: 2px 8px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n color: white;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.type-badge[_ngcontent-%COMP%] {\n padding: 2px 8px;\n border-radius: 6px;\n font-size: 11px;\n font-weight: 500;\n background: #e9ecef;\n color: #495057;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n\n\n.view-all-card[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border: 2px dashed #dee2e6;\n border-radius: 12px;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 120px;\n cursor: pointer;\n transition: all 0.3s ease;\n}\n\n.view-all-card[_ngcontent-%COMP%]:hover {\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-color: #2196f3;\n transform: translateY(-2px);\n}\n\n.view-all-content[_ngcontent-%COMP%] {\n text-align: center;\n color: #6c757d;\n font-weight: 500;\n}\n\n.view-all-content[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 24px;\n margin-bottom: 8px;\n display: block;\n}\n\n\n\n.timeline-container[_ngcontent-%COMP%] {\n position: relative;\n margin-top: 16px;\n}\n\n.timeline-item[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n margin-bottom: 24px;\n transition: all 0.3s ease;\n border-radius: 12px;\n padding: 16px;\n background: transparent;\n border: 1px solid transparent;\n}\n\n.timeline-item[_ngcontent-%COMP%]:hover {\n background: #f8f9fa;\n border-color: #e0e6ed;\n}\n\n.timeline-item.expanded[_ngcontent-%COMP%] {\n background: #f8f9fa;\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.1);\n}\n\n.timeline-item.view-all[_ngcontent-%COMP%] {\n cursor: pointer;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border: 2px dashed #dee2e6;\n}\n\n.timeline-item.view-all[_ngcontent-%COMP%]:hover {\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-color: #2196f3;\n}\n\n.timeline-item[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]:first-child {\n display: flex;\n align-items: flex-start;\n}\n\n.timeline-marker[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: 16px;\n flex-shrink: 0;\n position: relative;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n}\n\n.timeline-marker[_ngcontent-%COMP%]::after {\n content: '';\n position: absolute;\n top: 50px;\n left: 50%;\n transform: translateX(-50%);\n width: 2px;\n height: 24px;\n background: #e0e6ed;\n}\n\n.timeline-item[_ngcontent-%COMP%]:last-child .timeline-marker[_ngcontent-%COMP%]::after {\n display: none;\n}\n\n.timeline-marker[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n font-size: 16px;\n}\n\n.timeline-marker.view-all-marker[_ngcontent-%COMP%] {\n background: #6c757d;\n}\n\n.timeline-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: flex-start;\n}\n\n.timeline-header[_ngcontent-%COMP%] {\n flex: 1;\n cursor: pointer;\n}\n\n.timeline-header[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]:first-child {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 8px;\n gap: 16px;\n}\n\n.expand-icon[_ngcontent-%COMP%] {\n transition: transform 0.3s ease;\n margin-right: 8px;\n color: #6c757d;\n}\n\n.expand-icon.expanded[_ngcontent-%COMP%] {\n transform: rotate(90deg);\n}\n\n.timeline-title[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0;\n line-height: 1.3;\n}\n\n.timeline-date[_ngcontent-%COMP%] {\n font-size: 12px;\n color: #6c757d;\n white-space: nowrap;\n background: #f8f9fa;\n padding: 4px 8px;\n border-radius: 6px;\n margin-left: auto;\n}\n\n.timeline-preview[_ngcontent-%COMP%] {\n font-size: 13px;\n color: #6c757d;\n line-height: 1.5;\n margin-top: 8px;\n padding: 8px 12px;\n background: #f8f9fa;\n border-radius: 6px;\n border: 1px solid #e0e6ed;\n}\n\n.timeline-status[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 8px;\n}\n\n.execution-time[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n color: #6c757d;\n background: #f8f9fa;\n padding: 4px 8px;\n border-radius: 6px;\n}\n\n.timeline-description[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.5;\n margin: 8px 0;\n}\n\n.timeline-error[_ngcontent-%COMP%] {\n color: #dc3545;\n font-size: 13px;\n background: #f8d7da;\n padding: 8px 12px;\n border-radius: 6px;\n margin-top: 8px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.timeline-error[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n flex-shrink: 0;\n}\n\n\n\n.timeline-expanded-content[_ngcontent-%COMP%] {\n margin-top: 20px;\n padding-top: 20px;\n border-top: 1px solid #e0e6ed;\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease;\n}\n\n@keyframes _ngcontent-%COMP%_fadeIn {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.result-section[_ngcontent-%COMP%], \n.error-section[_ngcontent-%COMP%] {\n margin-bottom: 20px;\n}\n\n.result-section[_ngcontent-%COMP%] h5[_ngcontent-%COMP%], \n.error-section[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 8px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.error-section[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] {\n color: #dc3545;\n}\n\n.result-content[_ngcontent-%COMP%], \n.error-content[_ngcontent-%COMP%] {\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n padding: 12px 16px;\n font-size: 14px;\n line-height: 1.6;\n color: #495057;\n white-space: pre-wrap;\n word-break: break-word;\n max-height: 200px;\n overflow-y: auto;\n}\n\n\n\n.result-section[_ngcontent-%COMP%] mj-code-editor[_ngcontent-%COMP%] {\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.error-content[_ngcontent-%COMP%] {\n background: #f8d7da;\n border-color: #f5c6cb;\n color: #721c24;\n}\n\n.execution-details[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 16px;\n margin-bottom: 20px;\n}\n\n.detail-row[_ngcontent-%COMP%] {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n\n.detail-label[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n min-width: 80px;\n}\n\n.detail-value[_ngcontent-%COMP%] {\n font-size: 14px;\n color: #495057;\n word-break: break-all;\n}\n\n.timeline-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 12px;\n justify-content: flex-end;\n}\n\n.btn-primary[_ngcontent-%COMP%] {\n padding: 8px 16px;\n background: #2196f3;\n color: white;\n border: none;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n transition: all 0.2s ease;\n}\n\n.btn-primary[_ngcontent-%COMP%]:hover {\n background: #1976d2;\n transform: translateY(-1px);\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.3);\n}\n\n.btn-primary[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n}\n\n\n\n.empty-state[_ngcontent-%COMP%] {\n text-align: center;\n padding: 60px 20px;\n color: #6c757d;\n background: #f8f9fa;\n border-radius: 12px;\n border: 2px dashed #dee2e6;\n margin-top: 16px;\n}\n\n.empty-state[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 48px;\n color: #dee2e6;\n margin-bottom: 16px;\n}\n\n.empty-state[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n color: #495057;\n font-weight: 600;\n margin-bottom: 8px;\n font-size: 18px;\n}\n\n.empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n font-size: 15px;\n line-height: 1.6;\n max-width: 400px;\n margin: 0 auto 20px auto;\n}\n\n\n\n@media (max-width: 768px) {\n \n\n .agent-header[_ngcontent-%COMP%] {\n padding: 16px;\n }\n \n .agent-header-content[_ngcontent-%COMP%] {\n flex-direction: column;\n gap: 16px;\n }\n \n .agent-overview[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n }\n \n .agent-meta[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n }\n \n .agent-actions[_ngcontent-%COMP%] {\n width: 100%;\n align-self: stretch;\n }\n \n .action-button[_ngcontent-%COMP%] {\n flex: 1;\n justify-content: center;\n }\n \n \n\n .form-content[_ngcontent-%COMP%] {\n padding: 12px;\n }\n \n .k-panelbar > .k-panelbar-item > .k-header {\n padding: 16px 20px;\n font-size: 15px;\n }\n \n .panel-content[_ngcontent-%COMP%] {\n padding: 20px 16px;\n }\n \n .section-header[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n }\n \n .header-actions[_ngcontent-%COMP%] {\n flex-wrap: wrap;\n align-self: stretch;\n }\n \n \n\n .entity-item[_ngcontent-%COMP%] {\n padding: 12px;\n gap: 12px;\n }\n \n .item-icon[_ngcontent-%COMP%] {\n width: 36px;\n height: 36px;\n }\n \n .item-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 16px;\n }\n \n .item-title[_ngcontent-%COMP%] {\n font-size: 15px;\n }\n \n .item-preview[_ngcontent-%COMP%] {\n font-size: 13px;\n }\n \n .item-meta[_ngcontent-%COMP%] {\n gap: 8px;\n }\n \n \n\n .timeline-item[_ngcontent-%COMP%] {\n padding: 12px;\n gap: 12px;\n }\n \n .timeline-marker[_ngcontent-%COMP%] {\n width: 28px;\n height: 28px;\n }\n \n .timeline-marker[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n }\n \n .timeline-title[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n }\n \n .timeline-date[_ngcontent-%COMP%] {\n align-self: flex-start;\n }\n \n \n\n .form-fields-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n gap: 16px;\n }\n \n \n\n .cards-container[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n}\n\n\n\n.execution-history-panel[_ngcontent-%COMP%] {\n max-height: 500px;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n\n\n.execution-history-panel[_ngcontent-%COMP%]::-webkit-scrollbar {\n width: 8px;\n}\n\n.execution-history-panel[_ngcontent-%COMP%]::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 4px;\n}\n\n.execution-history-panel[_ngcontent-%COMP%]::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 4px;\n}\n\n.execution-history-panel[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover {\n background: #a0a0a0;\n}\n\n\n\n.execution-search-bar[_ngcontent-%COMP%] {\n margin-bottom: 16px;\n padding: 0 4px;\n}\n\n.execution-search-bar[_ngcontent-%COMP%] kendo-textbox[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n.execution-search-bar[_ngcontent-%COMP%] .fa-search[_ngcontent-%COMP%] {\n color: #666;\n margin-right: 8px;\n font-size: 14px;\n}\n\n\n\n.execution-history-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n margin-top: 8px;\n}\n\n.execution-card[_ngcontent-%COMP%] {\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 12px;\n overflow: hidden;\n transition: all 0.2s ease;\n cursor: pointer;\n}\n\n.execution-card[_ngcontent-%COMP%]:hover {\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.1);\n transform: translateY(-1px);\n}\n\n.execution-card.expanded[_ngcontent-%COMP%] {\n border-color: #2196f3;\n box-shadow: 0 6px 20px rgba(33, 150, 243, 0.15);\n}\n\n.execution-header[_ngcontent-%COMP%] {\n padding: 16px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 16px;\n}\n\n.execution-left-section[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n flex: 1;\n min-width: 0;\n}\n\n.execution-status[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n.status-indicator[_ngcontent-%COMP%] {\n width: 32px;\n height: 32px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n}\n\n.status-indicator[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n font-size: 14px;\n}\n\n.execution-info[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.execution-title[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.execution-date[_ngcontent-%COMP%] {\n font-size: 12px;\n color: #6c757d;\n}\n\n.execution-metrics[_ngcontent-%COMP%] {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n flex-wrap: wrap;\n margin-left: 44px; \n\n}\n\n.metric-item[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n background: #f8f9fa;\n padding: 6px 10px;\n border-radius: 6px;\n color: #495057;\n white-space: nowrap;\n}\n\n.metric-item[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 12px;\n}\n\n.metric-label[_ngcontent-%COMP%] {\n font-weight: 500;\n}\n\n.metric-value[_ngcontent-%COMP%] {\n font-weight: 600;\n color: #2c3e50;\n}\n\n.execution-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.action-btn[_ngcontent-%COMP%] {\n width: 32px;\n height: 32px;\n border: none;\n background: #f8f9fa;\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #6c757d;\n}\n\n.action-btn[_ngcontent-%COMP%]:hover {\n background: #2196f3;\n color: white;\n transform: translateY(-1px);\n}\n\n.action-btn[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n}\n\n.expand-icon[_ngcontent-%COMP%] {\n transition: transform 0.2s ease;\n color: #6c757d;\n margin-right: 4px;\n}\n\n.expand-icon.expanded[_ngcontent-%COMP%] {\n transform: rotate(90deg);\n}\n\n\n\n.execution-expanded-content[_ngcontent-%COMP%] {\n padding: 16px;\n border-top: 1px solid #f0f4f8;\n background: #fafbfc;\n animation: _ngcontent-%COMP%_slideDown 0.2s ease;\n}\n\n@keyframes _ngcontent-%COMP%_slideDown {\n from {\n opacity: 0;\n max-height: 0;\n padding-top: 0;\n padding-bottom: 0;\n }\n to {\n opacity: 1;\n max-height: 500px;\n padding-top: 16px;\n padding-bottom: 16px;\n }\n}\n\n.detailed-metrics[_ngcontent-%COMP%] {\n margin-bottom: 20px;\n}\n\n.metrics-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 12px;\n}\n\n.metric-detail[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n}\n\n.metric-detail[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #2196f3;\n font-size: 16px;\n width: 20px;\n text-align: center;\n}\n\n.metric-info[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 2px;\n flex: 1;\n}\n\n.metric-title[_ngcontent-%COMP%] {\n font-size: 11px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.metric-data[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: #2c3e50;\n}\n\n.result-section[_ngcontent-%COMP%] {\n margin-top: 16px;\n}\n\n.result-section[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 8px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.error-section[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] {\n color: #dc3545;\n}\n\n.error-content[_ngcontent-%COMP%] {\n background: #f8d7da;\n border: 1px solid #f5c6cb;\n border-radius: 8px;\n padding: 12px 16px;\n font-size: 14px;\n line-height: 1.6;\n color: #721c24;\n white-space: pre-wrap;\n word-break: break-word;\n max-height: 150px;\n overflow-y: auto;\n}\n\n\n\n@media (max-width: 768px) {\n .execution-header[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n }\n \n .execution-left-section[_ngcontent-%COMP%] {\n width: 100%;\n }\n \n .execution-metrics[_ngcontent-%COMP%] {\n margin-left: 0; \n\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n width: 100%;\n }\n \n .metric-item[_ngcontent-%COMP%] {\n font-size: 11px;\n padding: 4px 8px;\n }\n \n .metrics-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n}\n\n\n\n.payload-section[_ngcontent-%COMP%] {\n margin-bottom: 2rem;\n background: white;\n border-radius: 12px;\n border: 1px solid #e0e0e0;\n overflow: hidden;\n}\n\n.payload-section-title[_ngcontent-%COMP%] {\n margin: 0;\n padding: 1rem 1.5rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n color: #495057;\n font-size: 1.1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.payload-section-title[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #2196f3;\n font-size: 1.2rem;\n}\n\n\n\n.payload-field-container[_ngcontent-%COMP%] {\n padding: 1.5rem;\n display: grid;\n grid-template-columns: 1fr 2fr;\n gap: 2rem;\n align-items: start;\n}\n\n.payload-field-info[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.payload-field-label[_ngcontent-%COMP%] {\n font-weight: 600;\n color: #495057;\n font-size: 0.95rem;\n}\n\n.payload-field-description[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 0.9rem;\n line-height: 1.5;\n margin: 0;\n}\n\n.payload-field-input[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.payload-field-example[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n font-size: 0.85rem;\n color: #6c757d;\n background: #f8f9fa;\n padding: 0.5rem 0.75rem;\n border-radius: 6px;\n border: 1px solid #e9ecef;\n}\n\n.payload-field-example[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #ffc107;\n font-size: 0.9rem;\n}\n\n.payload-field-example[_ngcontent-%COMP%] code[_ngcontent-%COMP%] {\n background: #e9ecef;\n padding: 0.2rem 0.4rem;\n border-radius: 4px;\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 0.8rem;\n color: #495057;\n}\n\n\n\n.payload-paths-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));\n gap: 1.5rem;\n padding: 1.5rem;\n}\n\n.payload-path-card[_ngcontent-%COMP%] {\n background: white;\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.payload-path-card[_ngcontent-%COMP%]:hover {\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.15);\n}\n\n.payload-path-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n}\n\n.payload-path-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.payload-path-icon.downstream[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #28a745, #20c997);\n}\n\n.payload-path-icon.upstream[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #007bff, #6610f2);\n}\n\n.payload-path-icon.self-read[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #17a2b8, #20c997);\n}\n\n.payload-path-icon.self-write[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #ffc107, #fd7e14);\n}\n\n.payload-path-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n font-size: 1.2rem;\n}\n\n.payload-path-info[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0 0 0.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #495057;\n}\n\n.payload-path-info[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 0.85rem;\n color: #6c757d;\n line-height: 1.4;\n}\n\n.payload-path-content[_ngcontent-%COMP%] {\n padding: 1rem;\n}\n\n.json-editor-container[_ngcontent-%COMP%] {\n border: 1px solid #dee2e6;\n border-radius: 6px;\n overflow: hidden;\n margin-bottom: 0.75rem;\n}\n\n.json-editor-container[_ngcontent-%COMP%]:hover {\n border-color: #2196f3;\n}\n\n.payload-path-hint[_ngcontent-%COMP%] {\n display: flex;\n align-items: flex-start;\n gap: 0.5rem;\n font-size: 0.8rem;\n color: #6c757d;\n line-height: 1.4;\n}\n\n.payload-path-hint[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #17a2b8;\n margin-top: 0.1rem;\n flex-shrink: 0;\n}\n\n.payload-path-hint[_ngcontent-%COMP%] code[_ngcontent-%COMP%] {\n background: #e9ecef;\n padding: 0.1rem 0.3rem;\n border-radius: 3px;\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 0.75rem;\n color: #495057;\n}\n\n\n\n.payload-validation-container[_ngcontent-%COMP%] {\n padding: 1.5rem;\n display: grid;\n grid-template-columns: 1fr 2fr;\n gap: 2rem;\n align-items: start;\n}\n\n.payload-validation-settings[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n}\n\n.validation-field-group[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.validation-field-label[_ngcontent-%COMP%] {\n font-weight: 600;\n color: #495057;\n font-size: 0.95rem;\n}\n\n.validation-field-description[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 0.9rem;\n line-height: 1.4;\n margin: 0 0 0.5rem 0;\n}\n\n.payload-validation-schema[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n}\n\n.validation-schema-label[_ngcontent-%COMP%] {\n font-weight: 600;\n color: #495057;\n font-size: 0.95rem;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.validation-schema-label[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #2196f3;\n}\n\n.validation-schema-description[_ngcontent-%COMP%] {\n color: #6c757d;\n font-size: 0.9rem;\n line-height: 1.4;\n margin: 0;\n}\n\n.validation-schema-editor[_ngcontent-%COMP%] {\n border: 1px solid #dee2e6;\n border-radius: 6px;\n overflow: hidden;\n}\n\n.validation-schema-editor[_ngcontent-%COMP%]:hover {\n border-color: #2196f3;\n}\n\n\n\n.config-section[_ngcontent-%COMP%] {\n margin-bottom: 2rem;\n background: white;\n border-radius: 12px;\n border: 1px solid #e0e0e0;\n overflow: hidden;\n}\n\n.config-section-title[_ngcontent-%COMP%] {\n margin: 0;\n padding: 1rem 1.5rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n color: #495057;\n font-size: 1.1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.config-section-title[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #2196f3;\n font-size: 1.2rem;\n}\n\n.config-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));\n gap: 1.5rem;\n padding: 1.5rem;\n width: 100%;\n}\n\n.config-card[_ngcontent-%COMP%] {\n background: white;\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.config-card[_ngcontent-%COMP%]:hover {\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.15);\n}\n\n.config-card.full-width[_ngcontent-%COMP%] {\n grid-column: 1 / -1;\n}\n\n.config-card-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n}\n\n.config-card-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n background: linear-gradient(135deg, #2196f3, #1976d2);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.config-card-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: white;\n font-size: 1.2rem;\n}\n\n.config-card-info[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0 0 0.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #495057;\n}\n\n.config-card-info[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 0.85rem;\n color: #6c757d;\n line-height: 1.4;\n}\n\n.config-card-content[_ngcontent-%COMP%] {\n padding: 1rem;\n}\n\n\n\n.config-field-input[_ngcontent-%COMP%] {\n width: 100%;\n min-width: 250px;\n}\n\n\n\n.config-card-content[_ngcontent-%COMP%] kendo-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content[_ngcontent-%COMP%] kendo-numerictextbox .k-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content[_ngcontent-%COMP%] kendo-numerictextbox .k-input {\n width: 100% !important;\n min-width: 200px !important;\n}\n\n.config-card-content[_ngcontent-%COMP%] mj-form-field {\n width: 100% !important;\n}\n\n.config-card-content[_ngcontent-%COMP%] mj-form-field kendo-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content[_ngcontent-%COMP%] mj-form-field kendo-numerictextbox .k-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content[_ngcontent-%COMP%] mj-form-field kendo-numerictextbox .k-input {\n width: 100% !important;\n min-width: 200px !important;\n}\n\n.config-field-display[_ngcontent-%COMP%] {\n color: #495057;\n font-size: 14px;\n font-weight: 500;\n padding: 8px 0;\n display: block;\n min-height: 20px;\n}\n\n\n\n.prompt-selector-container[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n width: 100%;\n}\n\n.prompt-display[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n padding: 8px 12px;\n background: #f8f9fa;\n border: 1px solid #dee2e6;\n border-radius: 6px;\n}\n\n.prompt-name[_ngcontent-%COMP%] {\n color: #495057;\n font-weight: 500;\n font-size: 14px;\n}\n\n.no-prompt[_ngcontent-%COMP%] {\n color: #6c757d;\n font-style: italic;\n font-size: 14px;\n}\n\n.prompt-actions[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.prompt-select-btn[_ngcontent-%COMP%] {\n white-space: nowrap;\n}\n\n.prompt-clear-btn[_ngcontent-%COMP%] {\n min-width: 32px;\n}\n\n.config-card-hint[_ngcontent-%COMP%] {\n display: flex;\n align-items: flex-start;\n gap: 0.5rem;\n font-size: 0.8rem;\n color: #6c757d;\n line-height: 1.4;\n margin-top: 0.5rem;\n}\n\n.config-card-hint[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: #17a2b8;\n margin-top: 0.1rem;\n flex-shrink: 0;\n}\n\n.config-card-hint[_ngcontent-%COMP%] code[_ngcontent-%COMP%] {\n background: #e9ecef;\n padding: 0.1rem 0.3rem;\n border-radius: 3px;\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 0.75rem;\n color: #495057;\n}\n\n\n\n\n@media (max-width: 768px) {\n .payload-field-container[_ngcontent-%COMP%], \n .payload-validation-container[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n gap: 1rem;\n }\n \n .payload-paths-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n gap: 1rem;\n padding: 1rem;\n }\n \n .config-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n gap: 1rem;\n padding: 1rem;\n }\n \n .payload-section-title[_ngcontent-%COMP%], \n .config-section-title[_ngcontent-%COMP%] {\n padding: 0.75rem 1rem;\n font-size: 1rem;\n }\n \n .payload-path-header[_ngcontent-%COMP%], \n .config-card-header[_ngcontent-%COMP%] {\n padding: 0.75rem;\n }\n \n .payload-path-content[_ngcontent-%COMP%], \n .config-card-content[_ngcontent-%COMP%] {\n padding: 0.75rem;\n }\n \n .payload-field-container[_ngcontent-%COMP%], \n .payload-validation-container[_ngcontent-%COMP%] {\n padding: 1rem;\n }\n}\n\n\n\n\n\n\n\n\n.sub-agent-filter-header[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n flex-wrap: wrap;\n gap: 12px;\n}\n\n.filter-controls[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.filter-controls[_ngcontent-%COMP%] kendo-buttongroup[_ngcontent-%COMP%] {\n flex: 0 0 auto;\n}\n\n\n\n.sub-agent-type-badge[_ngcontent-%COMP%] {\n position: absolute;\n top: 8px;\n right: 8px;\n padding: 4px 8px;\n border-radius: 4px;\n font-size: 10px;\n font-weight: 600;\n color: white;\n display: flex;\n align-items: center;\n gap: 4px;\n z-index: 1;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n\n\n.sub-agent-item[_ngcontent-%COMP%] {\n position: relative;\n padding-left: 8px;\n transition: all 0.2s ease;\n}\n\n.sub-agent-item.child-sub-agent[_ngcontent-%COMP%] {\n border-left: 4px solid #2196F3;\n}\n\n.sub-agent-item.related-sub-agent[_ngcontent-%COMP%] {\n border-left: 4px solid #9C27B0;\n}\n\n.sub-agent-item[_ngcontent-%COMP%]:hover {\n transform: translateX(4px);\n}\n\n\n\n.payload-info[_ngcontent-%COMP%] {\n background: #f5f5f5;\n color: #666;\n font-family: 'Roboto Mono', monospace;\n font-size: 11px;\n}\n\n\n\n.empty-state-info[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 16px;\n margin: 24px 0;\n max-width: 600px;\n margin-left: auto;\n margin-right: auto;\n}\n\n.info-card[_ngcontent-%COMP%] {\n background: #fafafa;\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n padding: 16px;\n text-align: left;\n}\n\n.info-card[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 24px;\n margin-bottom: 8px;\n display: block;\n}\n\n.info-card[_ngcontent-%COMP%] strong[_ngcontent-%COMP%] {\n display: block;\n margin-bottom: 4px;\n font-size: 14px;\n}\n\n.info-card[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 12px;\n color: #666;\n}\n\n.empty-state-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 12px;\n justify-content: center;\n margin-top: 16px;\n}\n\n\n\n@media (max-width: 768px) {\n .sub-agent-filter-header[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: stretch;\n }\n \n .filter-controls[_ngcontent-%COMP%], \n .header-actions[_ngcontent-%COMP%] {\n width: 100%;\n justify-content: center;\n }\n \n .empty-state-info[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n}"] }); }
|
|
4487
4487
|
};
|
|
4488
|
-
|
|
4488
|
+
MJAIAgentFormComponentExtended = MJAIAgentFormComponentExtended_1 = __decorate([
|
|
4489
4489
|
RegisterClass(BaseFormComponent, 'MJ: AI Agents')
|
|
4490
|
-
],
|
|
4491
|
-
export {
|
|
4492
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(
|
|
4490
|
+
], MJAIAgentFormComponentExtended);
|
|
4491
|
+
export { MJAIAgentFormComponentExtended };
|
|
4492
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MJAIAgentFormComponentExtended, [{
|
|
4493
4493
|
type: Component,
|
|
4494
4494
|
args: [{ standalone: false, selector: 'mj-ai-agent-form', template: "<div class=\"record-form-container\">\n <!-- Dialog container for Kendo dialogs -->\n <div kendoDialogContainer></div>\n <!-- Window container for Kendo windows -->\n <div kendoWindowContainer></div>\n @if (record) {\n <form class=\"record-form\" #form=\"ngForm\">\n <mj-form-toolbar [Form]=\"this\"></mj-form-toolbar>\n <!-- Agent Header \u2014 expanded view -->\n @if (!HeaderCollapsed) {\n <div class=\"agent-header\">\n <div class=\"agent-header-content\">\n <button class=\"agent-header-toggle\" (click)=\"ToggleHeaderCollapsed()\"\n title=\"Minimize header\">\n <i class=\"fa-solid fa-chevron-up\"></i>\n </button>\n <div class=\"agent-overview\">\n <div class=\"agent-icon-wrapper\">\n @if (hasLogoURL()) {\n <img [src]=\"record.LogoURL\" [alt]=\"record.Name + ' logo'\" class=\"agent-logo\">\n } @else {\n <i [class]=\"getAgentIcon()\"></i>\n }\n </div>\n <div class=\"agent-info\">\n @if (EditMode) {\n <kendo-textbox [(ngModel)]=\"record.Name\"\n name=\"agentName\"\n placeholder=\"Enter agent name...\"\n class=\"agent-name-input\">\n </kendo-textbox>\n } @else {\n <h1 class=\"agent-name\">{{ record.Name || 'Untitled AI Agent' }}</h1>\n }\n <div class=\"agent-meta\">\n @if (record.Status) {\n <span class=\"status-badge\" [style.background-color]=\"getStatusBadgeColor()\">\n <i class=\"fa-solid fa-circle\"></i>\n {{ record.Status }}\n </span>\n }\n @if (record.Type) {\n <span class=\"execution-mode\">\n Agent Type: {{ record.Type }}\n </span>\n }\n @if (record.Parent) {\n <span class=\"parent-agent clickable\"\n (click)=\"navigateToParentAgent()\"\n title=\"Open parent agent: {{ record.Parent }}\">\n <i class=\"fa-solid fa-sitemap\"></i>\n Child of {{ record.Parent }}\n <i class=\"fa-solid fa-external-link\" style=\"margin-left: 4px; font-size: 10px;\"></i>\n </span>\n }\n </div>\n </div>\n </div>\n <div class=\"agent-actions\">\n @if (record.ID) {\n <button kendoButton themeColor=\"primary\" size=\"large\"\n (click)=\"openTestHarness()\"\n [disabled]=\"record.Status !== 'Active'\"\n title=\"Run this AI agent\">\n <i class=\"fa-solid fa-play\"></i> Run\n </button>\n <button kendoButton size=\"large\"\n (click)=\"openPermissionsDialog()\"\n [title]=\"IsOpenToEveryone ? 'Open to everyone \u2014 click to manage permissions' : 'Restricted \u2014 click to manage permissions'\">\n <i class=\"fa-solid\" [class.fa-lock-open]=\"IsOpenToEveryone\" [class.fa-lock]=\"!IsOpenToEveryone\"\n [style.color]=\"IsOpenToEveryone ? '#16a34a' : null\"></i>\n {{ IsOpenToEveryone ? 'Open' : 'Restricted' }}\n </button>\n }\n <button kendoButton fillMode=\"outline\" size=\"small\" (click)=\"refreshRelatedData()\" title=\"Refresh all data\">\n <i class=\"fa-solid fa-refresh\"></i>\n </button>\n </div>\n </div>\n </div>\n }\n <!-- Agent Header \u2014 minimized floating bar -->\n @if (HeaderCollapsed) {\n <div class=\"agent-header-mini\">\n <button class=\"agent-header-mini-expand\" (click)=\"ToggleHeaderCollapsed()\"\n title=\"Expand header\">\n <i class=\"fa-solid fa-chevron-down\"></i>\n </button>\n <span class=\"agent-header-mini-name\">{{ record.Name || 'Untitled AI Agent' }}</span>\n @if (record.Status) {\n <span class=\"agent-header-mini-status\" [style.background-color]=\"getStatusBadgeColor()\">\n {{ record.Status }}\n </span>\n }\n <div class=\"agent-header-mini-spacer\"></div>\n @if (record.ID) {\n <button class=\"agent-header-mini-btn agent-header-mini-btn--primary\"\n (click)=\"openTestHarness()\"\n [disabled]=\"record.Status !== 'Active'\"\n title=\"Run agent\">\n <i class=\"fa-solid fa-play\"></i>\n </button>\n <button class=\"agent-header-mini-btn\"\n (click)=\"openPermissionsDialog()\"\n [title]=\"IsOpenToEveryone ? 'Open to everyone' : 'Restricted'\">\n <i class=\"fa-solid\" [class.fa-lock-open]=\"IsOpenToEveryone\" [class.fa-lock]=\"!IsOpenToEveryone\"\n [style.color]=\"IsOpenToEveryone ? '#16a34a' : null\"></i>\n </button>\n }\n <button class=\"agent-header-mini-btn\"\n (click)=\"refreshRelatedData()\" title=\"Refresh\">\n <i class=\"fa-solid fa-refresh\"></i>\n </button>\n </div>\n }\n <!-- Single Pane Layout with Expander Panels -->\n <div class=\"form-content\">\n <kendo-panelbar [keepItemContent]=\"true\" (stateChange)=\"OnPanelBarStateChange($event)\">\n <!-- Custom Agent Type Section (if defined) -->\n @if (record.ID && agentType && agentType.UIFormSectionKey) {\n <kendo-panelbar-item id=\"custom\"\n [expanded]=\"GetSectionExpanded('custom', agentType.UIFormSectionExpandedByDefault)\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-puzzle-piece\"></i> {{ agentType.Name }} Configuration\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content custom-agent-type-section\" [style.display]=\"'block'\">\n @if (loadingStates.customSection) {\n <mj-loading text=\"Loading {{ agentType.Name }} configuration...\" size=\"medium\"></mj-loading>\n }\n <ng-container #customSectionContainer></ng-container>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n <!-- Requests & History -->\n @if (record.ID) {\n <kendo-panelbar-item id=\"history\" [expanded]=\"GetSectionExpanded('history', false)\" [disabled]=\"loadingStates.executionHistory\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-history\"></i> Execution History\n @if (loadingStates.executionHistory) {\n <span style=\"margin-left: 8px;\"><i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 12px;\"></i></span>\n } @else if (executionHistoryCount > 0) {\n <span> ({{ executionHistoryCount }})@if(executionHistoryCount < totalExecutionHistoryCount){ of {{ totalExecutionHistoryCount }} }</span>\n }\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content execution-history-panel\">\n @if (executionHistoryCount === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-history\"></i>\n <h4>No Execution History</h4>\n <p>This agent hasn't been executed yet. Use the Test Agent button to run the agent and see execution history here.</p>\n </div>\n } @else {\n <!-- Search Bar -->\n <div class=\"execution-search-bar\">\n <kendo-textbox\n [(ngModel)]=\"executionSearchText\"\n (ngModelChange)=\"onExecutionSearchChange()\"\n [ngModelOptions]=\"{standalone: true}\"\n placeholder=\"Search by Run ID...\"\n [clearButton]=\"true\">\n <ng-template kendoTextBoxPrefixTemplate>\n <i class=\"fa-solid fa-search\"></i>\n </ng-template>\n </kendo-textbox>\n </div>\n <div class=\"execution-history-list\">\n @if (filteredExecutions.length === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-search\"></i>\n <h4>No Matching Results</h4>\n <p>No execution history found matching \"{{ executionSearchText }}\"</p>\n </div>\n }\n @for (execution of filteredExecutions; track execution.ID) {\n <div class=\"execution-card\" [class.expanded]=\"expandedExecutions[execution.ID]\">\n <div class=\"execution-header\" (click)=\"toggleExecutionExpanded(execution.ID)\">\n <div class=\"execution-left-section\">\n <div class=\"execution-status\">\n <div class=\"status-indicator\" [style.background-color]=\"getExecutionStatusColor(execution.Status)\">\n <i [class]=\"getExecutionStatusIcon(execution.Status)\"></i>\n </div>\n <div class=\"execution-info\">\n <div class=\"execution-title\">\n <i class=\"fa-solid fa-chevron-right expand-icon\" [class.expanded]=\"expandedExecutions[execution.ID]\"></i>\n Execution #{{ execution.ID.substring(0, 8) }}\n </div>\n <div class=\"execution-date\">{{ execution.__mj_CreatedAt | date:'MMM d, h:mm a' }}</div>\n </div>\n </div>\n <div class=\"execution-metrics\">\n @if (execution.Configuration) {\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-cog\"></i>\n <span class=\"metric-label\">Config:</span>\n <span class=\"metric-value\">{{ execution.Configuration }}</span>\n </div>\n }\n @if (execution.CompletedAt) {\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-stopwatch\"></i>\n <span class=\"metric-label\">Duration:</span>\n <span class=\"metric-value\">{{ formatExecutionTimeFromDates(execution.StartedAt, execution.CompletedAt) }}</span>\n </div>\n } @else if (execution.Status === 'Running') {\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-clock\"></i>\n <span class=\"metric-label\">Running:</span>\n <!-- <span class=\"metric-value\">{{ execution.StartedAt | runningTime }}</span> -->\n </div>\n }\n @if (execution.TotalTokensUsedRollup || execution.TotalTokensUsed) {\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-microchip\"></i>\n <span class=\"metric-label\">Tokens:</span>\n <span class=\"metric-value\">{{ formatTokenCount(execution.TotalTokensUsedRollup || execution.TotalTokensUsed) }}</span>\n </div>\n }\n @if (execution.TotalCostRollup || execution.TotalCost) {\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-dollar-sign\"></i>\n <span class=\"metric-label\">Cost:</span>\n <span class=\"metric-value\">${{ formatCost(execution.TotalCostRollup || execution.TotalCost) }}</span>\n </div>\n }\n </div>\n </div>\n <div class=\"execution-actions\">\n <button class=\"action-btn\" (click)=\"openExecutionRecord(execution.ID); $event.stopPropagation()\" title=\"View details\">\n <i class=\"fa-solid fa-external-link-alt\"></i>\n </button>\n </div>\n </div>\n @if (expandedExecutions[execution.ID]) {\n <div class=\"execution-expanded-content\">\n <!-- Detailed Metrics -->\n <div class=\"detailed-metrics\">\n <div class=\"metrics-grid\">\n <div class=\"metric-detail\">\n <i class=\"fa-solid fa-clock\"></i>\n <div class=\"metric-info\">\n <span class=\"metric-title\">Started</span>\n <span class=\"metric-data\">{{ execution.StartedAt | date:'medium' }}</span>\n </div>\n </div>\n @if (execution.CompletedAt) {\n <div class=\"metric-detail\">\n <i class=\"fa-solid fa-check-circle\"></i>\n <div class=\"metric-info\">\n <span class=\"metric-title\">Completed</span>\n <span class=\"metric-data\">{{ execution.CompletedAt | date:'medium' }}</span>\n </div>\n </div>\n }\n @if (execution.TotalTokensUsed) {\n <div class=\"metric-detail\">\n <i class=\"fa-solid fa-microchip\"></i>\n <div class=\"metric-info\">\n <span class=\"metric-title\">Direct Tokens</span>\n <span class=\"metric-data\">{{ formatTokenCount(execution.TotalTokensUsed) }}</span>\n </div>\n </div>\n }\n @if (execution.TotalTokensUsedRollup && execution.TotalTokensUsedRollup !== execution.TotalTokensUsed) {\n <div class=\"metric-detail\">\n <i class=\"fa-solid fa-sitemap\"></i>\n <div class=\"metric-info\">\n <span class=\"metric-title\">Total + Sub-agents</span>\n <span class=\"metric-data\">{{ formatTokenCount(execution.TotalTokensUsedRollup) }}</span>\n </div>\n </div>\n }\n @if (execution.TotalCost) {\n <div class=\"metric-detail\">\n <i class=\"fa-solid fa-dollar-sign\"></i>\n <div class=\"metric-info\">\n <span class=\"metric-title\">Direct Cost</span>\n <span class=\"metric-data\">${{ formatCost(execution.TotalCost) }}</span>\n </div>\n </div>\n }\n @if (execution.TotalCostRollup && execution.TotalCostRollup !== execution.TotalCost) {\n <div class=\"metric-detail\">\n <i class=\"fa-solid fa-calculator\"></i>\n <div class=\"metric-info\">\n <span class=\"metric-title\">Total + Sub-agents</span>\n <span class=\"metric-data\">${{ formatCost(execution.TotalCostRollup) }}</span>\n </div>\n </div>\n }\n @if (execution.ConversationID) {\n <div class=\"metric-detail\">\n <i class=\"fa-solid fa-comments\"></i>\n <div class=\"metric-info\">\n <span class=\"metric-title\">Conversation</span>\n <span class=\"metric-data\">{{ execution.ConversationID.substring(0, 8) }}...</span>\n </div>\n </div>\n }\n </div>\n </div>\n @if (execution.Result) {\n <div class=\"result-section\">\n <h5><i class=\"fa-solid fa-file-text\"></i> Result</h5>\n <mj-code-editor\n [value]=\"getExecutionResultPreview(execution, false)\"\n [readonly]=\"true\"\n language=\"json\"\n [lineWrapping]=\"true\"\n style=\"max-height: 200px; width: 100%;\">\n </mj-code-editor>\n </div>\n }\n @if (execution.ErrorMessage) {\n <div class=\"error-section\">\n <h5><i class=\"fa-solid fa-exclamation-triangle\"></i> Error</h5>\n <div class=\"error-content\">{{ execution.ErrorMessage }}</div>\n </div>\n }\n </div>\n }\n </div>\n }\n <!-- Pagination Controls -->\n @if (totalPages > 1) {\n <div class=\"pagination-controls\">\n <button kendoButton\n fillMode=\"outline\"\n size=\"medium\"\n (click)=\"goToPreviousPage()\"\n [disabled]=\"!hasPreviousPage || isLoadingPage\"\n class=\"page-nav-btn\">\n <i class=\"fa-solid fa-chevron-left\"></i>\n Previous\n </button>\n <div class=\"page-info\">\n @if (isLoadingPage) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Loading...\n } @else {\n Page {{ executionHistoryCurrentPage }} of {{ totalPages }}\n <span class=\"record-count\">({{ totalExecutionHistoryCount }} total)</span>\n }\n </div>\n <button kendoButton\n fillMode=\"outline\"\n size=\"medium\"\n (click)=\"goToNextPage()\"\n [disabled]=\"!hasNextPage || isLoadingPage\"\n class=\"page-nav-btn\">\n Next\n <i class=\"fa-solid fa-chevron-right\"></i>\n </button>\n <button kendoButton\n fillMode=\"flat\"\n size=\"small\"\n (click)=\"navigateToEntity('MJ: AI Agent Runs', '')\"\n class=\"view-all-btn\">\n <i class=\"fa-solid fa-external-link\"></i>\n View All in Grid\n </button>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n <!-- Actions -->\n @if (record.ID) {\n <kendo-panelbar-item id=\"actions\" [expanded]=\"GetSectionExpanded('actions', false)\" [disabled]=\"loadingStates.actions\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-bolt\"></i> Actions\n @if (loadingStates.actions) {\n <span style=\"margin-left: 8px;\"><i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 12px;\"></i></span>\n } @else if (actionCount > 0) {\n <span> ({{ actionCount }})</span>\n }\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n @if (loadingStates.actions) {\n <div class=\"loading-state\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n <p>Loading actions...</p>\n </div>\n } @else {\n <div class=\"section-header\">\n <div class=\"header-actions\">\n @if (EditMode && UserCanCreateActions) {\n <button kendoButton themeColor=\"primary\" size=\"small\" (click)=\"configureActions()\">\n <i class=\"fa-solid fa-plus\"></i> Add Action\n </button>\n }\n </div>\n </div>\n @if (actionCount === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-bolt\"></i>\n <h4>No Actions Configured</h4>\n <p>Add actions to enable this agent to perform specific tasks and operations.</p>\n @if (EditMode && UserCanCreateActions) {\n <button kendoButton themeColor=\"primary\" (click)=\"configureActions()\">\n <i class=\"fa-solid fa-plus\"></i> Configure First Action\n </button>\n }\n </div>\n } @else {\n <div class=\"entity-list\">\n @for (action of agentActions; track action.ID) {\n <div class=\"entity-item action-item\" (click)=\"navigateToEntity('MJ: Actions', action.ID)\">\n <div class=\"item-icon\">\n <i [class]=\"getActionIcon(action)\"></i>\n </div>\n <div class=\"item-content\">\n <div class=\"item-title\">{{ action.Name || 'Untitled Action' }}</div>\n @if (action.Description) {\n <div class=\"item-preview\">{{ action.Description }}</div>\n }\n <div class=\"item-meta\">\n @if (action.Type) {\n <span class=\"meta-tag\">{{ action.Type }}</span>\n }\n <span class=\"status-tag\" [class.active]=\"action.Status==='Active'\" [class.inactive]=\"action.Status!=='Active'\">\n <i class=\"fa-solid\" [class.fa-check-circle]=\"action.Status==='Active'\" [class.fa-times-circle]=\"action.Status!=='Active'\"></i>\n {{ action.Status }}\n </span>\n </div>\n </div>\n <div class=\"item-actions\">\n @if (EditMode && UserCanDeleteActions) {\n <button kendoButton\n fillMode=\"flat\"\n themeColor=\"error\"\n size=\"small\"\n (click)=\"removeAction(action, $event)\"\n title=\"Remove action\">\n <i class=\"fa-solid fa-trash\"></i>\n </button>\n }\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n @if (actionCount > agentActions.length) {\n <div class=\"view-more-item\" (click)=\"navigateToEntity('MJ: AI Agent Actions', '')\">\n <span>View all {{ actionCount }} actions...</span>\n </div>\n }\n </div>\n }\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n <!-- Sub-Agents (Unified View with Filter) -->\n @if (record.ID) {\n <kendo-panelbar-item id=\"subagents\" [expanded]=\"GetSectionExpanded('subagents', false)\" [disabled]=\"loadingStates.subAgents\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-sitemap\"></i> Sub-Agents\n @if (loadingStates.subAgents) {\n <span style=\"margin-left: 8px;\"><i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 12px;\"></i></span>\n } @else if (totalSubAgentCount > 0) {\n <span> ({{ totalSubAgentCount }})</span>\n }\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <!-- Filter Controls -->\n <div class=\"section-header sub-agent-filter-header\">\n <div class=\"filter-controls\">\n <kendo-buttongroup selection=\"single\">\n <button kendoButton\n [toggleable]=\"true\"\n [selected]=\"subAgentFilter === 'all'\"\n (click)=\"setSubAgentFilter('all')\"\n size=\"small\">\n <i class=\"fa-solid fa-layer-group\"></i>\n All ({{ totalSubAgentCount }})\n </button>\n <button kendoButton\n [toggleable]=\"true\"\n [selected]=\"subAgentFilter === 'child'\"\n (click)=\"setSubAgentFilter('child')\"\n size=\"small\">\n <i class=\"fa-solid fa-link\"></i>\n Child ({{ childSubAgentCount }})\n </button>\n <button kendoButton\n [toggleable]=\"true\"\n [selected]=\"subAgentFilter === 'related'\"\n (click)=\"setSubAgentFilter('related')\"\n size=\"small\">\n <i class=\"fa-solid fa-share-nodes\"></i>\n Related ({{ relatedSubAgentCount }})\n </button>\n </kendo-buttongroup>\n </div>\n <div class=\"header-actions\">\n @if (EditMode && UserCanCreateSubAgents) {\n <button kendoButton\n themeColor=\"primary\"\n size=\"small\"\n (click)=\"createChildSubAgent()\"\n title=\"Create a new child sub-agent that shares this agent's payload\">\n <i class=\"fa-solid fa-link\"></i>\n Create Child\n </button>\n <button kendoButton\n themeColor=\"secondary\"\n size=\"small\"\n (click)=\"linkRelatedSubAgent()\"\n title=\"Link an existing agent as a related sub-agent with payload mapping\">\n <i class=\"fa-solid fa-share-nodes\"></i>\n Link Related\n </button>\n }\n </div>\n </div>\n <!-- Empty State -->\n @if (totalSubAgentCount === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-sitemap\"></i>\n <h4>No Sub-Agents</h4>\n <p>Sub-agents help build complex workflows through hierarchical orchestration.</p>\n <div class=\"empty-state-info\">\n <div class=\"info-card\">\n <i class=\"fa-solid fa-link\" style=\"color: #2196F3;\"></i>\n <strong>Child Sub-Agents</strong>\n <p>Share payload structure, dedicated to parent</p>\n </div>\n <div class=\"info-card\">\n <i class=\"fa-solid fa-share-nodes\" style=\"color: #9C27B0;\"></i>\n <strong>Related Sub-Agents</strong>\n <p>Reusable agents with payload mapping</p>\n </div>\n </div>\n </div>\n } @else {\n <!-- Unified Sub-Agent List -->\n <div class=\"entity-list\">\n @for (item of filteredSubAgents; track item.agent.ID) {\n <div class=\"entity-item sub-agent-item\"\n [class.child-sub-agent]=\"item.type === 'child'\"\n [class.related-sub-agent]=\"item.type === 'related'\"\n (click)=\"navigateToEntity('MJ: AI Agents', item.agent.ID)\">\n <!-- Type Badge -->\n <div class=\"sub-agent-type-badge\"\n [style.background-color]=\"getSubAgentBadgeColor(item)\">\n <i [class]=\"getSubAgentBadgeIcon(item)\"></i>\n {{ getSubAgentBadgeText(item) }}\n </div>\n <!-- Agent Icon -->\n <div class=\"item-icon\">\n @if (hasSubAgentLogoURL(item.agent)) {\n <img [src]=\"item.agent.LogoURL\"\n [alt]=\"item.agent.Name + ' logo'\"\n class=\"sub-agent-logo\">\n } @else {\n <i [class]=\"getSubAgentIcon(item.agent)\"></i>\n }\n </div>\n <!-- Agent Content -->\n <div class=\"item-content\">\n <div class=\"item-title\">{{ item.agent.Name || 'Untitled Sub-Agent' }}</div>\n @if (item.agent.Description) {\n <div class=\"item-preview\">{{ item.agent.Description }}</div>\n }\n <div class=\"item-meta\">\n <!-- Payload Info -->\n <span class=\"meta-tag payload-info\">\n <i class=\"fa-solid fa-database\"></i>\n {{ getSubAgentPayloadInfo(item) }}\n </span>\n <!-- Status -->\n @if (item.agent.Status) {\n <span class=\"status-tag\"\n [style.background-color]=\"getStatusBadgeColor()\">\n {{ item.agent.Status }}\n </span>\n }\n <!-- Agent Type -->\n @if (item.agent.Type) {\n <span class=\"meta-tag\">{{ item.agent.Type }}</span>\n }\n </div>\n </div>\n <!-- Actions -->\n <div class=\"item-actions\">\n @if (EditMode) {\n <!-- Output Mapping Config (Related only) -->\n @if (item.type === 'related') {\n <button kendoButton\n fillMode=\"flat\"\n themeColor=\"primary\"\n size=\"small\"\n (click)=\"configureOutputMapping(item, $event)\"\n title=\"Configure output mapping\">\n <i class=\"fa-solid fa-exchange-alt\"></i>\n </button>\n }\n <!-- Advanced Settings (Child only) -->\n @if (item.type === 'child' && UserCanCreateSubAgents) {\n <button kendoButton\n fillMode=\"flat\"\n themeColor=\"primary\"\n size=\"small\"\n (click)=\"openSubAgentAdvancedSettings(item.agent, $event)\"\n title=\"Advanced settings\">\n <i class=\"fa-solid fa-cog\"></i>\n </button>\n }\n <!-- Remove/Unlink -->\n @if (UserCanDeleteSubAgents) {\n <button kendoButton\n fillMode=\"flat\"\n themeColor=\"error\"\n size=\"small\"\n (click)=\"item.type === 'child' ? removeChildSubAgent(item, $event) : unlinkRelatedSubAgent(item, $event)\"\n [title]=\"item.type === 'child' ? 'Delete child sub-agent' : 'Unlink related sub-agent'\">\n <i [class]=\"item.type === 'child' ? 'fa-solid fa-trash' : 'fa-solid fa-unlink'\"></i>\n </button>\n }\n }\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n <!-- Prompts (With Model Selection) -->\n @if (record.ID) {\n <kendo-panelbar-item id=\"prompts\" [expanded]=\"GetSectionExpanded('prompts', false)\" [disabled]=\"loadingStates.prompts\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-comments\"></i> Prompts\n @if (loadingStates.prompts) {\n <span style=\"margin-left: 8px;\"><i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 12px;\"></i></span>\n } @else if (promptCount > 0) {\n <span> ({{ promptCount }})</span>\n }\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"section-header\">\n <div class=\"prompt-controls\">\n <!-- Model Selection Mode Control -->\n <div class=\"model-selection-mode\">\n <label class=\"model-selection-label\">\n <i class=\"fa-solid fa-sliders\"></i>\n Model Selection:\n </label>\n @if (EditMode) {\n <kendo-dropdownlist\n [(ngModel)]=\"record.ModelSelectionMode\"\n name=\"modelSelectionMode\"\n [data]=\"modelSelectionModes\"\n textField=\"text\"\n valueField=\"value\"\n [valuePrimitive]=\"true\"\n class=\"model-selection-dropdown\">\n </kendo-dropdownlist>\n } @else {\n <span class=\"model-selection-value\">{{ record.ModelSelectionMode || 'Agent Type' }}</span>\n }\n </div>\n </div>\n <div class=\"header-actions\">\n @if (EditMode && UserCanCreateNewPrompts) {\n <button kendoButton themeColor=\"primary\" size=\"small\" (click)=\"addPrompt()\">\n <i class=\"fa-solid fa-plus\"></i> Add Prompt\n </button>\n }\n </div>\n </div>\n @if (promptCount === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-comments\"></i>\n <h4>No Prompts Configured</h4>\n <p>Add prompts to define how this agent processes requests and generates responses.</p>\n @if (EditMode && UserCanCreateNewPrompts) {\n <button kendoButton themeColor=\"primary\" (click)=\"addPrompt()\">\n <i class=\"fa-solid fa-plus\"></i> Create First Prompt\n </button>\n }\n </div>\n } @else {\n <div class=\"entity-list\">\n @for (prompt of agentPrompts; track prompt.ID) {\n <div class=\"entity-item prompt-item\" (click)=\"navigateToEntity('MJ: AI Prompts', prompt.ID)\">\n <div class=\"item-icon\">\n <i class=\"fa-solid fa-comment-dots\"></i>\n </div>\n <div class=\"item-content\">\n <div class=\"item-title\">{{ prompt.Name }}</div>\n @if (prompt.TemplateText) {\n <div class=\"item-preview\">{{ prompt.TemplateText.substring(0, 120) }}{{ prompt.TemplateText.length > 120 ? '...' : '' }}</div>\n }\n <div class=\"item-meta\">\n @if (prompt.PromptRole) {\n <span class=\"meta-tag\">{{ prompt.PromptRole }}</span>\n }\n </div>\n </div>\n <div class=\"item-actions\">\n @if (EditMode && UserCanCreatePrompts) {\n <button kendoButton\n fillMode=\"flat\"\n themeColor=\"primary\"\n size=\"small\"\n (click)=\"openPromptAdvancedSettings(prompt, $event)\"\n title=\"Advanced settings\">\n <i class=\"fa-solid fa-cog\"></i>\n </button>\n }\n @if (EditMode && UserCanDeletePrompts) {\n <button kendoButton\n fillMode=\"flat\"\n themeColor=\"error\"\n size=\"small\"\n (click)=\"removePrompt(prompt, $event)\"\n title=\"Remove prompt\">\n <i class=\"fa-solid fa-trash\"></i>\n </button>\n }\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n @if (promptCount > agentPrompts.length) {\n <div class=\"view-more-item\" (click)=\"navigateToEntity('MJ: AI Prompts', '')\">\n <span>View all {{ promptCount }} prompts...</span>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n <!-- Learning & Analytics -->\n @if (record.ID) {\n <kendo-panelbar-item id=\"learning\" [expanded]=\"GetSectionExpanded('learning', false)\" [disabled]=\"loadingStates.learningCycles\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-brain\"></i> Learning Cycles{{ learningCycleCount > 0 ? ' (' + learningCycleCount + ')' : '' }}\n @if (loadingStates.learningCycles) {\n <span style=\"margin-left: 8px;\"><i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 12px;\"></i></span>\n }\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"section-header\">\n <div class=\"section-description\">\n Monitor and manage learning cycles, training sessions, and performance analytics.\n </div>\n </div>\n @if (learningCycleCount === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-brain\"></i>\n <h4>No Learning Cycles</h4>\n <p>Learning cycles will appear here as the agent processes requests and improves over time.</p>\n </div>\n } @else {\n <div class=\"entity-list\">\n @for (cycle of learningCycles; track cycle.ID) {\n <div class=\"entity-item learning-item\" (click)=\"navigateToEntity('MJ: AI Agent Learning Cycles', cycle.ID)\">\n <div class=\"item-icon\">\n <i class=\"fa-solid fa-brain\"></i>\n </div>\n <div class=\"item-content\">\n <div class=\"item-title\">Learning Cycle {{ cycle.ID.substring(0, 8) }}</div>\n <div class=\"item-meta\">\n @if (cycle.StartedAt) {\n <span class=\"meta-tag\">\n <i class=\"fa-solid fa-calendar\"></i>\n {{ cycle.StartedAt | date:'short' }}\n </span>\n }\n @if (cycle.Status) {\n <span class=\"status-tag\">{{ cycle.Status }}</span>\n }\n </div>\n </div>\n <div class=\"item-actions\">\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n @if (learningCycleCount > learningCycles.length) {\n <div class=\"view-more-item\" (click)=\"navigateToEntity('MJ: AI Agent Learning Cycles', '')\">\n <span>View all {{ learningCycleCount }} cycles...</span>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n <!-- Notes & Documentation -->\n @if (record.ID) {\n <kendo-panelbar-item id=\"notes\" [expanded]=\"GetSectionExpanded('notes', false)\" [disabled]=\"loadingStates.notes\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-sticky-note\"></i> Notes{{ noteCount > 0 ? ' (' + noteCount + ')' : '' }}\n @if (loadingStates.notes) {\n <span style=\"margin-left: 8px;\"><i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 12px;\"></i></span>\n }\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"section-header\">\n <div class=\"section-description\">\n Manage notes, documentation, and annotations for this agent.\n </div>\n <div class=\"header-actions\">\n @if (EditMode && UserCanCreateNotes) {\n <button kendoButton themeColor=\"primary\" size=\"small\" (click)=\"addNote()\">\n <i class=\"fa-solid fa-plus\"></i> Add Note\n </button>\n }\n </div>\n </div>\n @if (noteCount === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-sticky-note\"></i>\n <h4>No Notes</h4>\n <p>Add notes to document important information, observations, or instructions for this agent.</p>\n @if (EditMode && UserCanCreateNotes) {\n <button kendoButton themeColor=\"primary\" (click)=\"addNote()\">\n <i class=\"fa-solid fa-plus\"></i> Create First Note\n </button>\n }\n </div>\n } @else {\n <div class=\"entity-list\">\n @for (note of agentNotes; track note.ID) {\n <div class=\"entity-item note-item\" (click)=\"navigateToEntity('MJ: AI Agent Notes', note.ID)\">\n <div class=\"item-icon\">\n <i class=\"fa-solid fa-sticky-note\"></i>\n </div>\n <div class=\"item-content\">\n <div class=\"item-title\">{{ note.Type || 'Note' }}</div>\n @if (note.Note) {\n <div class=\"item-preview\">{{ note.Note.substring(0, 100) }}{{ note.Note.length > 100 ? '...' : '' }}</div>\n }\n <div class=\"item-meta\">\n @if (note.__mj_CreatedAt) {\n <span class=\"meta-tag\">\n <i class=\"fa-solid fa-calendar\"></i>\n {{ note.__mj_CreatedAt | date:'short' }}\n </span>\n }\n </div>\n </div>\n <div class=\"item-actions\">\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n @if (noteCount > agentNotes.length) {\n <div class=\"view-more-item\" (click)=\"navigateToEntity('MJ: AI Agent Notes', '')\">\n <span>View all {{ noteCount }} notes...</span>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n <!-- Payload -->\n <kendo-panelbar-item id=\"payload\" [expanded]=\"GetSectionExpanded('payload', false)\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-exchange-alt\"></i> Payload Management\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"section-header\">\n <div class=\"section-description\">\n Configure how this agent handles data payloads, path routing, and validation between parent and child agents.\n </div>\n </div>\n <!-- Payload Scope Section -->\n <div class=\"payload-section\">\n <h3 class=\"payload-section-title\">\n <i class=\"fa-solid fa-target\"></i>\n Payload Scope\n </h3>\n <div class=\"payload-field-container\">\n <div class=\"payload-field-info\">\n <label class=\"payload-field-label\">Payload Scope Path</label>\n <p class=\"payload-field-description\">\n Specify a path within the parent payload that this sub-agent should operate on.\n Leave empty to receive the entire payload.\n </p>\n </div>\n <div class=\"payload-field-input\">\n <mj-form-field\n FieldName=\"PayloadScope\"\n Type=\"textbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\"\n style=\"width: 100%;\">\n </mj-form-field>\n <div class=\"payload-field-example\">\n <i class=\"fa-solid fa-lightbulb\"></i>\n <span>Example: <code>/customer/profile</code> or <code>/analysis/results</code></span>\n </div>\n </div>\n </div>\n </div>\n <!-- Path Configuration Section -->\n <div class=\"payload-section\">\n <h3 class=\"payload-section-title\">\n <i class=\"fa-solid fa-route\"></i>\n Path Configuration\n </h3>\n <div class=\"payload-paths-grid\">\n <!-- Downstream Paths -->\n <div class=\"payload-path-card\">\n <div class=\"payload-path-header\">\n <div class=\"payload-path-icon downstream\">\n <i class=\"fa-solid fa-arrow-down\"></i>\n </div>\n <div class=\"payload-path-info\">\n <h4>Downstream Paths</h4>\n <p>JSON array of paths to pass to sub-agents</p>\n </div>\n </div>\n <div class=\"payload-path-content\">\n <div class=\"json-editor-container\">\n <mj-code-editor\n [value]=\"record.PayloadDownstreamPaths || '["*"]'\"\n [readonly]=\"!EditMode\"\n language=\"json\"\n [lineWrapping]=\"true\"\n style=\"height: 100px; width: 100%;\"\n (valueChange)=\"updatePayloadField('PayloadDownstreamPaths', $event)\">\n </mj-code-editor>\n </div>\n <div class=\"payload-path-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Use <code>[\"*\"]</code> to pass entire payload or specify paths like <code>[\"user.id\", \"order.*\"]</code>\n </div>\n </div>\n </div>\n <!-- Upstream Paths -->\n <div class=\"payload-path-card\">\n <div class=\"payload-path-header\">\n <div class=\"payload-path-icon upstream\">\n <i class=\"fa-solid fa-arrow-up\"></i>\n </div>\n <div class=\"payload-path-info\">\n <h4>Upstream Paths</h4>\n <p>JSON array of paths sub-agents can write back</p>\n </div>\n </div>\n <div class=\"payload-path-content\">\n <div class=\"json-editor-container\">\n <mj-code-editor\n [value]=\"record.PayloadUpstreamPaths || '["*"]'\"\n [readonly]=\"!EditMode\"\n language=\"json\"\n [lineWrapping]=\"true\"\n style=\"height: 100px; width: 100%;\"\n (valueChange)=\"updatePayloadField('PayloadUpstreamPaths', $event)\">\n </mj-code-editor>\n </div>\n <div class=\"payload-path-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Use <code>[\"*\"]</code> to allow all writes or limit to specific paths\n </div>\n </div>\n </div>\n <!-- Self Read Paths -->\n <div class=\"payload-path-card\">\n <div class=\"payload-path-header\">\n <div class=\"payload-path-icon self-read\">\n <i class=\"fa-solid fa-eye\"></i>\n </div>\n <div class=\"payload-path-info\">\n <h4>Self Read Paths</h4>\n <p>JSON array of paths this agent can read</p>\n </div>\n </div>\n <div class=\"payload-path-content\">\n <div class=\"json-editor-container\">\n <mj-code-editor\n [value]=\"record.PayloadSelfReadPaths || '[]'\"\n [readonly]=\"!EditMode\"\n language=\"json\"\n [lineWrapping]=\"true\"\n style=\"height: 100px; width: 100%;\"\n (valueChange)=\"updatePayloadField('PayloadSelfReadPaths', $event)\">\n </mj-code-editor>\n </div>\n <div class=\"payload-path-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Paths this agent's prompts can read from the payload\n </div>\n </div>\n </div>\n <!-- Self Write Paths -->\n <div class=\"payload-path-card\">\n <div class=\"payload-path-header\">\n <div class=\"payload-path-icon self-write\">\n <i class=\"fa-solid fa-pen\"></i>\n </div>\n <div class=\"payload-path-info\">\n <h4>Self Write Paths</h4>\n <p>JSON array of paths this agent can write to</p>\n </div>\n </div>\n <div class=\"payload-path-content\">\n <div class=\"json-editor-container\">\n <mj-code-editor\n [value]=\"record.PayloadSelfWritePaths || '[]'\"\n [readonly]=\"!EditMode\"\n language=\"json\"\n [lineWrapping]=\"true\"\n style=\"height: 100px; width: 100%;\"\n (valueChange)=\"updatePayloadField('PayloadSelfWritePaths', $event)\">\n </mj-code-editor>\n </div>\n <div class=\"payload-path-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Paths this agent's prompts can write back to the payload\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- Validation Section -->\n <div class=\"payload-section\">\n <h3 class=\"payload-section-title\">\n <i class=\"fa-solid fa-shield-check\"></i>\n Final Payload Validation\n </h3>\n <div class=\"payload-validation-container\">\n <div class=\"payload-validation-settings\">\n <div class=\"validation-field-group\">\n <label class=\"validation-field-label\">Validation Mode</label>\n <p class=\"validation-field-description\">How to handle validation failures</p>\n <mj-form-field\n FieldName=\"FinalPayloadValidationMode\"\n Type=\"dropdownlist\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\"\n style=\"width: 100%;\">\n </mj-form-field>\n </div>\n <div class=\"validation-field-group\">\n <label class=\"validation-field-label\">Max Retries</label>\n <p class=\"validation-field-description\">Maximum validation retry attempts</p>\n <mj-form-field\n FieldName=\"FinalPayloadValidationMaxRetries\"\n Type=\"numerictextbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\"\n style=\"width: 100%;\">\n </mj-form-field>\n </div>\n </div>\n <div class=\"payload-validation-schema\">\n <label class=\"validation-schema-label\">\n <i class=\"fa-solid fa-code\"></i>\n Validation Schema\n </label>\n <p class=\"validation-schema-description\">\n JSON schema or validation rules for the final payload structure\n </p>\n <div class=\"validation-schema-editor\">\n <mj-code-editor\n [value]=\"record.FinalPayloadValidation || '{}'\"\n [readonly]=\"!EditMode\"\n language=\"json\"\n [lineWrapping]=\"true\"\n style=\"height: 200px; width: 100%;\"\n (valueChange)=\"updatePayloadField('FinalPayloadValidation', $event)\">\n </mj-code-editor>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n <!-- Execution Guardrails (New Separate Panel) -->\n <kendo-panelbar-item id=\"guardrails\" [expanded]=\"GetSectionExpanded('guardrails', false)\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-shield-halved\"></i> Execution Guardrails\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"section-header\">\n <div class=\"section-description\">\n Set limits to prevent runaway agent executions and control resource usage.\n </div>\n </div>\n <div class=\"form-fields-grid\">\n <mj-form-field\n FieldName=\"MaxCostPerRun\"\n Type=\"numerictextbox\"\n Caption=\"Max Cost ($)\"\n Description=\"Maximum cost per run\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n <mj-form-field\n FieldName=\"MaxTokensPerRun\"\n Type=\"numerictextbox\"\n Caption=\"Max Tokens\"\n Description=\"Maximum tokens per run\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n <mj-form-field\n FieldName=\"MaxIterationsPerRun\"\n Type=\"numerictextbox\"\n Caption=\"Max Iterations\"\n Description=\"Maximum prompt iterations\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n <mj-form-field\n FieldName=\"MaxTimePerRun\"\n Type=\"numerictextbox\"\n Caption=\"Max Time (seconds)\"\n Description=\"Maximum execution time\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n <!-- Configuration (Settings Panel) -->\n <kendo-panelbar-item id=\"config\" [expanded]=\"GetSectionExpanded('config', false)\">\n <ng-template kendoPanelBarItemTitle>\n <i class=\"fa-solid fa-cogs\"></i> Configuration\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"section-header\">\n <div class=\"section-description\">\n Configure agent behavior, execution settings, and advanced features.\n </div>\n </div>\n <!-- Identity & Behavior Section -->\n <div class=\"config-section\">\n <h3 class=\"config-section-title\">\n <i class=\"fa-solid fa-id-card\"></i>\n Identity & Behavior\n </h3>\n <div class=\"config-grid\">\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-toggle-on\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Agent Status</h4>\n <p>Current availability and operational status</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n @if (EditMode) {\n <kendo-dropdownlist\n [(ngModel)]=\"record.Status\"\n [data]=\"statusOptions\"\n textField=\"text\"\n valueField=\"value\"\n [valuePrimitive]=\"true\"\n name=\"agentStatus\"\n class=\"config-field-input\">\n </kendo-dropdownlist>\n } @else {\n <span class=\"config-field-display\">{{ record.Status || 'Not Set' }}</span>\n }\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-sitemap\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Agent Type</h4>\n <p>Category and system-level behavior</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n @if (EditMode) {\n <kendo-dropdownlist\n [(ngModel)]=\"record.TypeID\"\n [data]=\"agentTypes\"\n textField=\"Name\"\n valueField=\"ID\"\n [valuePrimitive]=\"true\"\n name=\"agentTypeID\"\n class=\"config-field-input\">\n </kendo-dropdownlist>\n } @else {\n <span class=\"config-field-display\">{{ record.Type || 'Not Set' }}</span>\n }\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-bolt\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Expose as Action</h4>\n <p>Make available as an action for other agents</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"ExposeAsAction\"\n Type=\"checkbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n </div>\n </div>\n <div class=\"config-card full-width\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-align-left\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Description</h4>\n <p>Detailed agent description and purpose</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"Description\"\n Type=\"textarea\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\"\n style=\"width: 100%;\">\n </mj-form-field>\n </div>\n </div>\n </div>\n </div>\n <!-- Execution Settings Section -->\n <div class=\"config-section\">\n <h3 class=\"config-section-title\">\n <i class=\"fa-solid fa-play\"></i>\n Execution Settings\n </h3>\n <div class=\"config-grid\">\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-layer-group\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Execution Mode</h4>\n <p>How sub-agents are executed</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"ExecutionMode\"\n Type=\"dropdownlist\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-sort-numeric-down\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Execution Order</h4>\n <p>Order when run with siblings</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"ExecutionOrder\"\n Type=\"numerictextbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-tachometer-alt\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Default Effort Level</h4>\n <p>Default effort level for all prompts (1-100)</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"DefaultPromptEffortLevel\"\n Type=\"numerictextbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n <div class=\"config-card-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Higher values request more thorough reasoning (1=minimal, 100=maximum)\n </div>\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-code\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Driver Class</h4>\n <p>Custom implementation class</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"DriverClass\"\n Type=\"textbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n </div>\n </div>\n </div>\n </div>\n <!-- Visual Identity Section -->\n <div class=\"config-section\">\n <h3 class=\"config-section-title\">\n <i class=\"fa-solid fa-palette\"></i>\n Visual Identity\n </h3>\n <div class=\"config-grid\">\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-icons\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Icon Class</h4>\n <p>Font Awesome icon class</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"IconClass\"\n Type=\"textbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n <div class=\"config-card-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Example: <code>fa-solid fa-robot</code>\n </div>\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-image\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Logo URL</h4>\n <p>URL for agent logo image</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"LogoURL\"\n Type=\"textbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n <div class=\"config-card-hint\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Takes precedence over Icon Class\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- Context Compression Section -->\n <div class=\"config-section\">\n <h3 class=\"config-section-title\">\n <i class=\"fa-solid fa-compress\"></i>\n Context Compression\n </h3>\n <div class=\"config-grid\">\n <div class=\"config-card full-width\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-toggle-on\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Enable Context Compression</h4>\n <p>Automatically compress conversation context when message threshold is reached</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"EnableContextCompression\"\n Type=\"checkbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\"\n (valueChange)=\"onContextCompressionToggle($event)\">\n </mj-form-field>\n </div>\n </div>\n @if (record.EnableContextCompression) {\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-hashtag\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Message Threshold</h4>\n <p>Messages before compression triggers</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"ContextCompressionMessageThreshold\"\n Type=\"numerictextbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-save\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Messages to Keep</h4>\n <p>Recent messages to retain uncompressed</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n <mj-form-field\n FieldName=\"ContextCompressionMessageRetentionCount\"\n Type=\"numerictextbox\"\n Caption=\"\"\n [EditMode]=\"EditMode\"\n [Record]=\"record\">\n </mj-form-field>\n </div>\n </div>\n <div class=\"config-card\">\n <div class=\"config-card-header\">\n <div class=\"config-card-icon\">\n <i class=\"fa-solid fa-comment-dots\"></i>\n </div>\n <div class=\"config-card-info\">\n <h4>Compression Prompt</h4>\n <p>Prompt used for summarization</p>\n </div>\n </div>\n <div class=\"config-card-content\">\n @if (EditMode) {\n <div class=\"prompt-selector-container\">\n <div class=\"prompt-display\">\n @if (selectedContextCompressionPrompt) {\n <span class=\"prompt-name\">{{ selectedContextCompressionPrompt.Name }}</span>\n } @else {\n <span class=\"no-prompt\">No prompt selected</span>\n }\n </div>\n <div class=\"prompt-actions\">\n <button type=\"button\"\n kendoButton\n fillMode=\"outline\"\n size=\"small\"\n (click)=\"openContextCompressionPromptSelector()\"\n class=\"prompt-select-btn\">\n <i class=\"fa-solid fa-search\"></i>\n {{ selectedContextCompressionPrompt ? 'Change' : 'Select' }} Prompt\n </button>\n @if (selectedContextCompressionPrompt) {\n <button type=\"button\"\n kendoButton\n fillMode=\"flat\"\n size=\"small\"\n (click)=\"clearContextCompressionPrompt()\"\n class=\"prompt-clear-btn\"\n title=\"Clear selection\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n }\n </div>\n </div>\n } @else {\n <span class=\"config-field-display\">{{ selectedContextCompressionPrompt?.Name || record.ContextCompressionPrompt || 'Not Set' }}</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n </kendo-panelbar>\n </div>\n </form>\n }\n\n <!-- Permissions Dialog (from @memberjunction/ng-agents) -->\n @if (ShowPermissionsDialog) {\n <mj-agent-permissions-dialog\n [Agent]=\"record\"\n (Closed)=\"onPermissionsDialogClosed()\"\n (PermissionsChanged)=\"refreshRelatedData()\">\n </mj-agent-permissions-dialog>\n }\n</div>", styles: ["/* AI Agent Form - Modern Redesign */\n.record-form-container {\n height: 100%;\n display: flex;\n flex-direction: column;\n background: #f5f7fa;\n}\n\n.record-form {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n\n/* Agent Header Section - Compact Design */\n.agent-header {\n background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);\n border-bottom: 1px solid #e0e6ed;\n padding: 8px 16px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.04);\n transition: padding 0.2s ease;\n}\n\n.agent-header-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 12px;\n}\n\n/* Header collapse toggle button */\n.agent-header-toggle {\n background: none;\n border: 1px solid #e0e6ed;\n border-radius: 6px;\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #94a3b8;\n flex-shrink: 0;\n padding: 0;\n transition: all 0.15s ease;\n}\n\n.agent-header-toggle:hover {\n background: #f1f5f9;\n color: #475569;\n border-color: #cbd5e1;\n}\n\n.agent-header-toggle i {\n font-size: 10px;\n}\n\n.agent-overview {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n min-width: 0;\n}\n\n.agent-icon-wrapper {\n width: 36px;\n height: 36px;\n background: linear-gradient(135deg, #2196f3 0%, #1976d2 100%);\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.15);\n flex-shrink: 0;\n transition: all 0.2s ease;\n}\n\n.agent-icon-wrapper i {\n color: white;\n font-size: 18px;\n}\n\n/* \u2500\u2500 Minimized Floating Header Bar \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.agent-header-mini {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 12px;\n background: #ffffff;\n border-bottom: 1px solid #e2e8f0;\n height: 32px;\n}\n\n.agent-header-mini-expand {\n background: none;\n border: 1px solid #e0e6ed;\n border-radius: 4px;\n width: 22px;\n height: 22px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #94a3b8;\n padding: 0;\n flex-shrink: 0;\n transition: all 0.15s ease;\n}\n\n.agent-header-mini-expand:hover {\n background: #f1f5f9;\n color: #475569;\n border-color: #cbd5e1;\n}\n\n.agent-header-mini-expand i {\n font-size: 9px;\n}\n\n.agent-header-mini-name {\n font-size: 13px;\n font-weight: 600;\n color: #334155;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 300px;\n}\n\n.agent-header-mini-status {\n padding: 1px 7px;\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n color: white;\n flex-shrink: 0;\n}\n\n.agent-header-mini-spacer {\n flex: 1;\n}\n\n.agent-header-mini-btn {\n background: none;\n border: 1px solid #e2e8f0;\n border-radius: 4px;\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n color: #64748b;\n padding: 0;\n flex-shrink: 0;\n transition: all 0.15s ease;\n}\n\n.agent-header-mini-btn:hover:not(:disabled) {\n background: #f1f5f9;\n color: #334155;\n border-color: #cbd5e1;\n}\n\n.agent-header-mini-btn:disabled {\n opacity: 0.35;\n cursor: not-allowed;\n}\n\n.agent-header-mini-btn--primary {\n border-color: #93c5fd;\n color: #2563eb;\n background: #eff6ff;\n}\n\n.agent-header-mini-btn--primary:hover:not(:disabled) {\n background: #dbeafe;\n border-color: #60a5fa;\n color: #1d4ed8;\n}\n\n.agent-header-mini-btn i {\n font-size: 11px;\n}\n\n.agent-icon-wrapper img.agent-logo {\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: 8px;\n}\n\n.agent-info {\n flex: 1;\n min-width: 0;\n}\n\n.agent-name {\n font-size: 18px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 4px 0;\n line-height: 1.2;\n}\n\n.agent-name-input {\n font-size: 16px !important;\n font-weight: 500 !important;\n height: 30px !important;\n width: 100% !important;\n max-width: 350px !important;\n}\n\n.agent-meta {\n display: flex;\n align-items: center;\n gap: 10px;\n flex-wrap: wrap;\n}\n\n.status-badge {\n padding: 3px 10px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.status-badge.active {\n background: #28a745;\n color: white;\n}\n\n.status-badge.pending {\n background: #ffc107;\n color: #212529;\n}\n\n.status-badge.disabled {\n background: #6c757d;\n color: white;\n}\n\n.execution-mode,\n.parent-agent {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 13px;\n color: #6c757d;\n background: #f8f9fa;\n padding: 4px 10px;\n border-radius: 12px;\n}\n\n.execution-mode i,\n.parent-agent i {\n font-size: 12px;\n opacity: 0.8;\n}\n\n.parent-agent.clickable {\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.parent-agent.clickable:hover {\n background: #e3e7ed;\n color: #2196f3;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n.parent-agent.clickable:active {\n transform: translateY(0);\n box-shadow: 0 1px 2px rgba(0,0,0,0.1);\n}\n\n/* Prompt Controls Section */\n.prompt-controls {\n flex: 1;\n margin-right: 16px;\n}\n\n.agent-meta-info {\n display: flex;\n gap: 24px;\n margin-top: 12px;\n flex-wrap: wrap;\n}\n\n.meta-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.meta-label {\n font-size: 12px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.meta-value {\n font-size: 14px;\n color: #495057;\n font-weight: 500;\n}\n\n.agent-description {\n margin-top: 16px;\n color: #6c757d;\n line-height: 1.6;\n font-size: 15px;\n}\n\n.agent-description-input {\n width: 100%;\n max-width: 600px;\n min-height: 80px;\n resize: vertical;\n}\n\n/* Action Buttons Section */\n.agent-actions {\n display: flex;\n flex-direction: row;\n gap: 8px;\n flex-shrink: 0;\n align-items: center;\n}\n\n.action-buttons-row {\n display: flex;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.action-button {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 20px;\n border-radius: 8px;\n font-weight: 500;\n font-size: 14px;\n transition: all 0.2s ease;\n box-shadow: 0 2px 4px rgba(0,0,0,0.08);\n}\n\n.action-button:hover {\n transform: translateY(-1px);\n box-shadow: 0 4px 8px rgba(0,0,0,0.12);\n}\n\n.action-button.primary {\n background: #2196f3;\n color: white;\n}\n\n.action-button.primary:hover {\n background: #1976d2;\n}\n\n.action-button.secondary {\n background: #6c757d;\n color: white;\n}\n\n.action-button.secondary:hover {\n background: #5a6268;\n}\n\n.action-warnings {\n margin-top: 8px;\n font-size: 13px;\n color: #dc3545;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n/* Panel-Based Form Content */\n.form-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n overflow-x: hidden;\n background: #f5f7fa;\n padding: 8px 12px;\n}\n\n/* Kendo PanelBar Styling */\n::ng-deep .k-panelbar {\n border: none;\n background: transparent;\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item {\n border: none;\n border-radius: 10px;\n margin-bottom: 8px;\n box-shadow: 0 1px 4px rgba(0,0,0,0.05);\n background: white;\n overflow: hidden;\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item > .k-header {\n background: white;\n border: none;\n padding: 10px 16px;\n border-radius: 12px 12px 0 0;\n color: #2c3e50;\n font-weight: 600;\n font-size: 14px;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item > .k-header:hover {\n background: #f8f9fa;\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item.k-panelbar-expanded > .k-header {\n background: #2196f3;\n color: white;\n border-radius: 12px 12px 0 0;\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item > .k-header .k-panelbar-toggle {\n position: absolute;\n right: 24px;\n color: inherit;\n font-size: 14px;\n transition: transform 0.2s ease;\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item.k-panelbar-expanded > .k-header .k-panelbar-toggle {\n transform: rotate(180deg);\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item > .k-header .k-panelbar-toggle::before {\n content: '\\f107';\n font-family: 'Font Awesome 6 Free';\n font-weight: 900;\n}\n\n::ng-deep .k-panelbar > .k-panelbar-item > .k-content {\n padding: 0;\n border: none;\n background: white;\n border-radius: 0 0 12px 12px;\n}\n\n::ng-deep .k-panelbar .k-header .k-panelbar-icon {\n font-size: 18px;\n color: #2196f3;\n margin-right: 8px;\n}\n\n::ng-deep .k-panelbar .k-panelbar-expanded .k-header .k-panelbar-icon {\n color: white;\n}\n\n/* Panel Content */\n.panel-content {\n padding: 16px;\n background: white;\n}\n\n.section-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 20px;\n gap: 16px;\n flex-wrap: wrap;\n}\n\n.section-description {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.6;\n margin-bottom: 16px;\n}\n\n.header-actions {\n display: flex;\n gap: 8px;\n align-items: center;\n flex-shrink: 0;\n}\n\n.tab-section {\n background: white;\n border-radius: 12px;\n padding: 24px;\n margin-bottom: 24px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.04);\n border: 1px solid #e0e6ed;\n}\n\n.section-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 20px;\n padding-bottom: 16px;\n border-bottom: 2px solid #f0f4f8;\n}\n\n.section-title {\n display: flex;\n align-items: center;\n gap: 12px;\n margin: 0;\n color: #2c3e50;\n font-size: 18px;\n font-weight: 600;\n}\n\n.section-title i {\n color: #2196f3;\n font-size: 20px;\n}\n\n.section-description {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.6;\n margin-top: 8px;\n}\n\n/* Form Fields Grid */\n.form-fields-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.form-field-group {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.form-field-label {\n font-size: 13px;\n font-weight: 600;\n color: #495057;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n/* Sub-grids styling (legacy) */\n.sub-grid-container {\n height: 500px;\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n overflow: hidden;\n display: none; /* Hidden as we now use cards */\n}\n\n/* Empty States */\n/* Loading State */\n.loading-state {\n text-align: center;\n padding: 60px 20px;\n color: #64748b;\n}\n\n.loading-state i {\n font-size: 36px;\n color: #2196f3;\n margin-bottom: 16px;\n display: block;\n}\n\n.loading-state p {\n margin: 0;\n font-size: 14px;\n color: #94a3b8;\n}\n\n.empty-state {\n text-align: center;\n padding: 60px 20px;\n color: #6c757d;\n}\n\n.empty-state i {\n font-size: 48px;\n color: #dee2e6;\n margin-bottom: 16px;\n}\n\n.empty-state h4 {\n color: #495057;\n font-weight: 600;\n margin-bottom: 8px;\n}\n\n.empty-state p {\n font-size: 15px;\n line-height: 1.6;\n max-width: 400px;\n margin: 0 auto;\n}\n\n/* Loading State */\n.loading-overlay {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.9);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n}\n\n.loading-spinner {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n}\n\n.spinner-icon {\n width: 48px;\n height: 48px;\n border: 4px solid #f3f3f3;\n border-top: 4px solid #2196f3;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n/* Quick Actions */\n.quick-actions {\n display: flex;\n gap: 16px;\n margin-top: 20px;\n padding-top: 20px;\n border-top: 1px solid #e0e6ed;\n}\n\n.quick-action-card {\n flex: 1;\n padding: 16px;\n background: #f8f9fa;\n border-radius: 8px;\n border: 1px solid #e0e6ed;\n cursor: pointer;\n transition: all 0.2s ease;\n text-align: center;\n}\n\n.quick-action-card:hover {\n background: white;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n transform: translateY(-2px);\n}\n\n.quick-action-icon {\n font-size: 32px;\n color: #2196f3;\n margin-bottom: 8px;\n}\n\n.quick-action-title {\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 4px;\n}\n\n.quick-action-description {\n font-size: 12px;\n color: #6c757d;\n}\n\n/* Header Actions */\n.header-actions {\n display: flex;\n gap: 8px;\n align-items: center;\n}\n\n/* Entity List Interface */\n.entity-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n margin-top: 16px;\n}\n\n.entity-item {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 16px;\n background: #f8f9fa;\n border: 1px solid #e0e6ed;\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.entity-item:hover {\n background: white;\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n transform: translateY(-1px);\n}\n\n.item-icon {\n width: 40px;\n height: 40px;\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.prompt-item .item-icon {\n background: linear-gradient(135deg, #20c997, #17a673);\n}\n\n.action-item .item-icon {\n background: linear-gradient(135deg, #ffc107, #e0a800);\n}\n\n.sub-agent-item .item-icon {\n background: linear-gradient(135deg, #2196f3, #1976d2);\n}\n\n.model-item .item-icon {\n background: linear-gradient(135deg, #6f42c1, #563d7c);\n}\n\n.learning-item .item-icon {\n background: linear-gradient(135deg, #e83e8c, #dc3545);\n}\n\n.note-item .item-icon {\n background: linear-gradient(135deg, #fd7e14, #e55a00);\n}\n\n.item-icon i {\n color: #6c757d;\n font-size: 18px;\n}\n\n.prompt-item .item-icon i,\n.action-item .item-icon i,\n.sub-agent-item .item-icon i,\n.model-item .item-icon i,\n.learning-item .item-icon i,\n.note-item .item-icon i {\n color: white;\n}\n\n.item-icon img.sub-agent-logo {\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: 6px;\n}\n\n.item-content {\n flex: 1;\n min-width: 0;\n}\n\n.item-title {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 4px 0;\n line-height: 1.3;\n}\n\n.item-preview {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.4;\n margin: 4px 0 8px 0;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.item-meta {\n display: flex;\n gap: 12px;\n align-items: center;\n flex-wrap: wrap;\n}\n\n.meta-tag,\n.priority-tag,\n.status-tag {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n padding: 3px 8px;\n border-radius: 6px;\n font-weight: 500;\n}\n\n.meta-tag {\n background: #e9ecef;\n color: #495057;\n}\n\n.priority-tag {\n color: white;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n.status-tag {\n background: #e9ecef;\n color: #495057;\n}\n\n.status-tag.active {\n background: #d4edda;\n color: #28a745;\n}\n\n.status-tag.inactive {\n background: #f8d7da;\n color: #dc3545;\n}\n\n.item-actions {\n opacity: 0;\n transition: opacity 0.2s ease;\n color: #6c757d;\n font-size: 16px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-item:hover .item-actions {\n opacity: 1;\n}\n\n.entity-item:hover .item-actions > i {\n color: #2196f3;\n}\n\n.view-more-item {\n padding: 16px;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border: 2px dashed #dee2e6;\n border-radius: 10px;\n text-align: center;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #6c757d;\n font-weight: 500;\n}\n\n.view-more-item:hover {\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-color: #2196f3;\n color: #2196f3;\n}\n\n/* Pagination Controls */\n.pagination-controls {\n display: flex;\n gap: 12px;\n align-items: center;\n justify-content: center;\n padding: 16px;\n margin-top: 12px;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-radius: 10px;\n border: 1px solid #dee2e6;\n}\n\n.page-nav-btn {\n min-width: 120px;\n font-weight: 500;\n}\n\n.page-nav-btn i {\n font-size: 12px;\n}\n\n.page-nav-btn:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.page-info {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 4px;\n padding: 0 16px;\n font-weight: 500;\n color: #495057;\n min-width: 200px;\n text-align: center;\n}\n\n.page-info .record-count {\n font-size: 12px;\n color: #6c757d;\n font-weight: normal;\n}\n\n.page-info .fa-spinner {\n margin-right: 8px;\n color: #2196f3;\n}\n\n.view-all-btn {\n color: #6c757d;\n white-space: nowrap;\n margin-left: auto;\n}\n\n.view-all-btn:hover {\n color: #2196f3;\n}\n\n.view-all-btn i {\n margin-right: 4px;\n}\n\n/* Payload Section Styles */\n.payload-config-section,\n.payload-paths-section,\n.payload-validation-section {\n margin-bottom: 32px;\n}\n\n.subsection-title {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 16px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.subsection-title i {\n color: #2196f3;\n}\n\n.subsection-divider {\n margin-top: 32px;\n margin-bottom: 16px;\n padding-top: 24px;\n border-top: 1px solid #e0e6ed;\n}\n\n.payload-config-grid {\n display: grid;\n grid-template-columns: 1fr 1fr 1fr;\n gap: 16px;\n margin-bottom: 24px;\n}\n\n.payload-field-group {\n margin-bottom: 20px;\n}\n\n.payload-field-label {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 8px;\n}\n\n.payload-field-label i {\n color: #6c757d;\n font-size: 16px;\n}\n\n.field-description {\n font-size: 12px;\n font-weight: normal;\n color: #6c757d;\n margin-left: auto;\n}\n\n/* Code editor styling */\n.payload-field-group mj-code-editor {\n border: 1px solid #dee2e6;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.payload-field-group mj-code-editor:hover {\n border-color: #2196f3;\n}\n\n/* Payload textarea styling */\n.payload-field-group mj-form-field ::ng-deep textarea {\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 13px;\n line-height: 1.5;\n min-height: 120px;\n resize: vertical;\n}\n\n/* Execution History Panel */\n.execution-history-panel {\n max-height: 500px;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n/* Timeline List for Execution History */\n.timeline-list {\n display: flex;\n flex-direction: column;\n gap: 16px;\n margin-top: 16px;\n}\n\n.timeline-item {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n padding: 16px;\n background: #f8f9fa;\n border: 1px solid #e0e6ed;\n border-radius: 10px;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.timeline-item:hover {\n background: white;\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(0,0,0,0.08);\n}\n\n.timeline-marker {\n width: 32px;\n height: 32px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n}\n\n.timeline-marker i {\n color: white;\n font-size: 14px;\n}\n\n.timeline-content {\n flex: 1;\n min-width: 0;\n}\n\n.timeline-title {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 8px 0;\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 16px;\n}\n\n.timeline-date {\n font-size: 12px;\n color: #6c757d;\n background: #e9ecef;\n padding: 2px 8px;\n border-radius: 6px;\n white-space: nowrap;\n flex-shrink: 0;\n}\n\n.timeline-meta {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 8px;\n}\n\n.timeline-preview {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.4;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n/* Modern Card-Based Interface (Legacy - Keep for backward compatibility) */\n.cards-container {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));\n gap: 20px;\n margin-top: 16px;\n}\n\n.entity-card {\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 12px;\n padding: 20px;\n cursor: pointer;\n transition: all 0.3s ease;\n box-shadow: 0 2px 8px rgba(0,0,0,0.06);\n position: relative;\n overflow: hidden;\n}\n\n.entity-card:hover {\n transform: translateY(-4px);\n box-shadow: 0 8px 24px rgba(0,0,0,0.12);\n border-color: #2196f3;\n}\n\n.entity-card::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: 4px;\n background: linear-gradient(90deg, #2196f3, #42a5f5);\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n\n.entity-card:hover::before {\n opacity: 1;\n}\n\n.card-header {\n display: flex;\n align-items: flex-start;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.card-icon {\n width: 40px;\n height: 40px;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.sub-agent-card .card-icon {\n background: linear-gradient(135deg, #2196f3, #1976d2);\n}\n\n.prompt-card .card-icon {\n background: linear-gradient(135deg, #20c997, #17a673);\n}\n\n.action-card .card-icon {\n background: linear-gradient(135deg, #ffc107, #e0a800);\n}\n\n.card-icon i {\n font-size: 18px;\n color: #6c757d;\n}\n\n.sub-agent-card .card-icon i,\n.prompt-card .card-icon i,\n.action-card .card-icon i {\n color: white;\n}\n\n.card-title-section {\n flex: 1;\n min-width: 0;\n}\n\n.card-title {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0 0 4px 0;\n line-height: 1.3;\n word-wrap: break-word;\n}\n\n.card-description {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.5;\n margin: 8px 0;\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.card-meta {\n display: flex;\n gap: 16px;\n margin-top: 12px;\n flex-wrap: wrap;\n}\n\n.meta-item {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n color: #6c757d;\n padding: 4px 8px;\n background: #f8f9fa;\n border-radius: 6px;\n}\n\n.meta-item i {\n font-size: 11px;\n opacity: 0.8;\n}\n\n.meta-item.active {\n color: #28a745;\n background: #d4edda;\n}\n\n.meta-item.inactive {\n color: #dc3545;\n background: #f8d7da;\n}\n\n.card-actions {\n opacity: 0;\n transition: opacity 0.3s ease;\n color: #6c757d;\n}\n\n.entity-card:hover .card-actions {\n opacity: 1;\n color: #2196f3;\n}\n\n/* Badge Styles */\n.priority-badge {\n padding: 2px 8px;\n border-radius: 12px;\n font-size: 11px;\n font-weight: 600;\n color: white;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.type-badge {\n padding: 2px 8px;\n border-radius: 6px;\n font-size: 11px;\n font-weight: 500;\n background: #e9ecef;\n color: #495057;\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n\n/* View All Card */\n.view-all-card {\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border: 2px dashed #dee2e6;\n border-radius: 12px;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 120px;\n cursor: pointer;\n transition: all 0.3s ease;\n}\n\n.view-all-card:hover {\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-color: #2196f3;\n transform: translateY(-2px);\n}\n\n.view-all-content {\n text-align: center;\n color: #6c757d;\n font-weight: 500;\n}\n\n.view-all-content i {\n font-size: 24px;\n margin-bottom: 8px;\n display: block;\n}\n\n/* Timeline Interface for History */\n.timeline-container {\n position: relative;\n margin-top: 16px;\n}\n\n.timeline-item {\n display: flex;\n flex-direction: column;\n margin-bottom: 24px;\n transition: all 0.3s ease;\n border-radius: 12px;\n padding: 16px;\n background: transparent;\n border: 1px solid transparent;\n}\n\n.timeline-item:hover {\n background: #f8f9fa;\n border-color: #e0e6ed;\n}\n\n.timeline-item.expanded {\n background: #f8f9fa;\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.1);\n}\n\n.timeline-item.view-all {\n cursor: pointer;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border: 2px dashed #dee2e6;\n}\n\n.timeline-item.view-all:hover {\n background: linear-gradient(135deg, #e9ecef, #dee2e6);\n border-color: #2196f3;\n}\n\n.timeline-item > div:first-child {\n display: flex;\n align-items: flex-start;\n}\n\n.timeline-marker {\n width: 40px;\n height: 40px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: 16px;\n flex-shrink: 0;\n position: relative;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n}\n\n.timeline-marker::after {\n content: '';\n position: absolute;\n top: 50px;\n left: 50%;\n transform: translateX(-50%);\n width: 2px;\n height: 24px;\n background: #e0e6ed;\n}\n\n.timeline-item:last-child .timeline-marker::after {\n display: none;\n}\n\n.timeline-marker i {\n color: white;\n font-size: 16px;\n}\n\n.timeline-marker.view-all-marker {\n background: #6c757d;\n}\n\n.timeline-content {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: flex-start;\n}\n\n.timeline-header {\n flex: 1;\n cursor: pointer;\n}\n\n.timeline-header > div:first-child {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 8px;\n gap: 16px;\n}\n\n.expand-icon {\n transition: transform 0.3s ease;\n margin-right: 8px;\n color: #6c757d;\n}\n\n.expand-icon.expanded {\n transform: rotate(90deg);\n}\n\n.timeline-title {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n margin: 0;\n line-height: 1.3;\n}\n\n.timeline-date {\n font-size: 12px;\n color: #6c757d;\n white-space: nowrap;\n background: #f8f9fa;\n padding: 4px 8px;\n border-radius: 6px;\n margin-left: auto;\n}\n\n.timeline-preview {\n font-size: 13px;\n color: #6c757d;\n line-height: 1.5;\n margin-top: 8px;\n padding: 8px 12px;\n background: #f8f9fa;\n border-radius: 6px;\n border: 1px solid #e0e6ed;\n}\n\n.timeline-status {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 8px;\n}\n\n.execution-time {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n color: #6c757d;\n background: #f8f9fa;\n padding: 4px 8px;\n border-radius: 6px;\n}\n\n.timeline-description {\n color: #6c757d;\n font-size: 14px;\n line-height: 1.5;\n margin: 8px 0;\n}\n\n.timeline-error {\n color: #dc3545;\n font-size: 13px;\n background: #f8d7da;\n padding: 8px 12px;\n border-radius: 6px;\n margin-top: 8px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.timeline-error i {\n flex-shrink: 0;\n}\n\n/* Expanded Content Styles */\n.timeline-expanded-content {\n margin-top: 20px;\n padding-top: 20px;\n border-top: 1px solid #e0e6ed;\n animation: fadeIn 0.3s ease;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.result-section,\n.error-section {\n margin-bottom: 20px;\n}\n\n.result-section h5,\n.error-section h5 {\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 8px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.error-section h5 {\n color: #dc3545;\n}\n\n.result-content,\n.error-content {\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n padding: 12px 16px;\n font-size: 14px;\n line-height: 1.6;\n color: #495057;\n white-space: pre-wrap;\n word-break: break-word;\n max-height: 200px;\n overflow-y: auto;\n}\n\n/* Code editor styling within result section */\n.result-section mj-code-editor {\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.error-content {\n background: #f8d7da;\n border-color: #f5c6cb;\n color: #721c24;\n}\n\n.execution-details {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 16px;\n margin-bottom: 20px;\n}\n\n.detail-row {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n\n.detail-label {\n font-size: 12px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n min-width: 80px;\n}\n\n.detail-value {\n font-size: 14px;\n color: #495057;\n word-break: break-all;\n}\n\n.timeline-actions {\n display: flex;\n gap: 12px;\n justify-content: flex-end;\n}\n\n.btn-primary {\n padding: 8px 16px;\n background: #2196f3;\n color: white;\n border: none;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n transition: all 0.2s ease;\n}\n\n.btn-primary:hover {\n background: #1976d2;\n transform: translateY(-1px);\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.3);\n}\n\n.btn-primary i {\n font-size: 12px;\n}\n\n/* Enhanced Empty States */\n.empty-state {\n text-align: center;\n padding: 60px 20px;\n color: #6c757d;\n background: #f8f9fa;\n border-radius: 12px;\n border: 2px dashed #dee2e6;\n margin-top: 16px;\n}\n\n.empty-state i {\n font-size: 48px;\n color: #dee2e6;\n margin-bottom: 16px;\n}\n\n.empty-state h4 {\n color: #495057;\n font-weight: 600;\n margin-bottom: 8px;\n font-size: 18px;\n}\n\n.empty-state p {\n font-size: 15px;\n line-height: 1.6;\n max-width: 400px;\n margin: 0 auto 20px auto;\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n /* Header Responsiveness */\n .agent-header {\n padding: 16px;\n }\n \n .agent-header-content {\n flex-direction: column;\n gap: 16px;\n }\n \n .agent-overview {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n }\n \n .agent-meta {\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n }\n \n .agent-actions {\n width: 100%;\n align-self: stretch;\n }\n \n .action-button {\n flex: 1;\n justify-content: center;\n }\n \n /* Panel Responsiveness */\n .form-content {\n padding: 12px;\n }\n \n ::ng-deep .k-panelbar > .k-panelbar-item > .k-header {\n padding: 16px 20px;\n font-size: 15px;\n }\n \n .panel-content {\n padding: 20px 16px;\n }\n \n .section-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n }\n \n .header-actions {\n flex-wrap: wrap;\n align-self: stretch;\n }\n \n /* Entity List Responsiveness */\n .entity-item {\n padding: 12px;\n gap: 12px;\n }\n \n .item-icon {\n width: 36px;\n height: 36px;\n }\n \n .item-icon i {\n font-size: 16px;\n }\n \n .item-title {\n font-size: 15px;\n }\n \n .item-preview {\n font-size: 13px;\n }\n \n .item-meta {\n gap: 8px;\n }\n \n /* Timeline Responsiveness */\n .timeline-item {\n padding: 12px;\n gap: 12px;\n }\n \n .timeline-marker {\n width: 28px;\n height: 28px;\n }\n \n .timeline-marker i {\n font-size: 12px;\n }\n \n .timeline-title {\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n }\n \n .timeline-date {\n align-self: flex-start;\n }\n \n /* Form Field Responsiveness */\n .form-fields-grid {\n grid-template-columns: 1fr;\n gap: 16px;\n }\n \n /* Legacy card support */\n .cards-container {\n grid-template-columns: 1fr;\n }\n}\n\n/* Execution History Panel - Max Height and Scroll */\n.execution-history-panel {\n max-height: 500px;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n/* Custom scrollbar for execution history */\n.execution-history-panel::-webkit-scrollbar {\n width: 8px;\n}\n\n.execution-history-panel::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 4px;\n}\n\n.execution-history-panel::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 4px;\n}\n\n.execution-history-panel::-webkit-scrollbar-thumb:hover {\n background: #a0a0a0;\n}\n\n/* Execution History Search Bar */\n.execution-search-bar {\n margin-bottom: 16px;\n padding: 0 4px;\n}\n\n.execution-search-bar kendo-textbox {\n width: 100%;\n}\n\n.execution-search-bar .fa-search {\n color: #666;\n margin-right: 8px;\n font-size: 14px;\n}\n\n/* New Execution History Card Design */\n.execution-history-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n margin-top: 8px;\n}\n\n.execution-card {\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 12px;\n overflow: hidden;\n transition: all 0.2s ease;\n cursor: pointer;\n}\n\n.execution-card:hover {\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.1);\n transform: translateY(-1px);\n}\n\n.execution-card.expanded {\n border-color: #2196f3;\n box-shadow: 0 6px 20px rgba(33, 150, 243, 0.15);\n}\n\n.execution-header {\n padding: 16px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 16px;\n}\n\n.execution-left-section {\n display: flex;\n flex-direction: column;\n gap: 12px;\n flex: 1;\n min-width: 0;\n}\n\n.execution-status {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n.status-indicator {\n width: 32px;\n height: 32px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 2px 8px rgba(0,0,0,0.1);\n}\n\n.status-indicator i {\n color: white;\n font-size: 14px;\n}\n\n.execution-info {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.execution-title {\n font-size: 16px;\n font-weight: 600;\n color: #2c3e50;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.execution-date {\n font-size: 12px;\n color: #6c757d;\n}\n\n.execution-metrics {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n flex-wrap: wrap;\n margin-left: 44px; /* Align with execution title text, accounting for status indicator + gap */\n}\n\n.metric-item {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n background: #f8f9fa;\n padding: 6px 10px;\n border-radius: 6px;\n color: #495057;\n white-space: nowrap;\n}\n\n.metric-item i {\n color: #6c757d;\n font-size: 12px;\n}\n\n.metric-label {\n font-weight: 500;\n}\n\n.metric-value {\n font-weight: 600;\n color: #2c3e50;\n}\n\n.execution-actions {\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.action-btn {\n width: 32px;\n height: 32px;\n border: none;\n background: #f8f9fa;\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #6c757d;\n}\n\n.action-btn:hover {\n background: #2196f3;\n color: white;\n transform: translateY(-1px);\n}\n\n.action-btn i {\n font-size: 12px;\n}\n\n.expand-icon {\n transition: transform 0.2s ease;\n color: #6c757d;\n margin-right: 4px;\n}\n\n.expand-icon.expanded {\n transform: rotate(90deg);\n}\n\n/* Execution Expanded Content */\n.execution-expanded-content {\n padding: 16px;\n border-top: 1px solid #f0f4f8;\n background: #fafbfc;\n animation: slideDown 0.2s ease;\n}\n\n@keyframes slideDown {\n from {\n opacity: 0;\n max-height: 0;\n padding-top: 0;\n padding-bottom: 0;\n }\n to {\n opacity: 1;\n max-height: 500px;\n padding-top: 16px;\n padding-bottom: 16px;\n }\n}\n\n.detailed-metrics {\n margin-bottom: 20px;\n}\n\n.metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 12px;\n}\n\n.metric-detail {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n background: white;\n border: 1px solid #e0e6ed;\n border-radius: 8px;\n}\n\n.metric-detail i {\n color: #2196f3;\n font-size: 16px;\n width: 20px;\n text-align: center;\n}\n\n.metric-info {\n display: flex;\n flex-direction: column;\n gap: 2px;\n flex: 1;\n}\n\n.metric-title {\n font-size: 11px;\n font-weight: 600;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.metric-data {\n font-size: 14px;\n font-weight: 600;\n color: #2c3e50;\n}\n\n.result-section {\n margin-top: 16px;\n}\n\n.result-section h5 {\n font-size: 14px;\n font-weight: 600;\n color: #495057;\n margin-bottom: 8px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.error-section h5 {\n color: #dc3545;\n}\n\n.error-content {\n background: #f8d7da;\n border: 1px solid #f5c6cb;\n border-radius: 8px;\n padding: 12px 16px;\n font-size: 14px;\n line-height: 1.6;\n color: #721c24;\n white-space: pre-wrap;\n word-break: break-word;\n max-height: 150px;\n overflow-y: auto;\n}\n\n/* Responsive adjustments for execution history */\n@media (max-width: 768px) {\n .execution-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 12px;\n }\n \n .execution-left-section {\n width: 100%;\n }\n \n .execution-metrics {\n margin-left: 0; /* Remove left margin on mobile */\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n width: 100%;\n }\n \n .metric-item {\n font-size: 11px;\n padding: 4px 8px;\n }\n \n .metrics-grid {\n grid-template-columns: 1fr;\n }\n}\n\n/* === PAYLOAD MANAGEMENT SECTION === */\n.payload-section {\n margin-bottom: 2rem;\n background: white;\n border-radius: 12px;\n border: 1px solid #e0e0e0;\n overflow: hidden;\n}\n\n.payload-section-title {\n margin: 0;\n padding: 1rem 1.5rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n color: #495057;\n font-size: 1.1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.payload-section-title i {\n color: #2196f3;\n font-size: 1.2rem;\n}\n\n/* Payload Scope Styling */\n.payload-field-container {\n padding: 1.5rem;\n display: grid;\n grid-template-columns: 1fr 2fr;\n gap: 2rem;\n align-items: start;\n}\n\n.payload-field-info {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.payload-field-label {\n font-weight: 600;\n color: #495057;\n font-size: 0.95rem;\n}\n\n.payload-field-description {\n color: #6c757d;\n font-size: 0.9rem;\n line-height: 1.5;\n margin: 0;\n}\n\n.payload-field-input {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.payload-field-example {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n font-size: 0.85rem;\n color: #6c757d;\n background: #f8f9fa;\n padding: 0.5rem 0.75rem;\n border-radius: 6px;\n border: 1px solid #e9ecef;\n}\n\n.payload-field-example i {\n color: #ffc107;\n font-size: 0.9rem;\n}\n\n.payload-field-example code {\n background: #e9ecef;\n padding: 0.2rem 0.4rem;\n border-radius: 4px;\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 0.8rem;\n color: #495057;\n}\n\n/* Path Configuration Grid */\n.payload-paths-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));\n gap: 1.5rem;\n padding: 1.5rem;\n}\n\n.payload-path-card {\n background: white;\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.payload-path-card:hover {\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.15);\n}\n\n.payload-path-header {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n}\n\n.payload-path-icon {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.payload-path-icon.downstream {\n background: linear-gradient(135deg, #28a745, #20c997);\n}\n\n.payload-path-icon.upstream {\n background: linear-gradient(135deg, #007bff, #6610f2);\n}\n\n.payload-path-icon.self-read {\n background: linear-gradient(135deg, #17a2b8, #20c997);\n}\n\n.payload-path-icon.self-write {\n background: linear-gradient(135deg, #ffc107, #fd7e14);\n}\n\n.payload-path-icon i {\n color: white;\n font-size: 1.2rem;\n}\n\n.payload-path-info h4 {\n margin: 0 0 0.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #495057;\n}\n\n.payload-path-info p {\n margin: 0;\n font-size: 0.85rem;\n color: #6c757d;\n line-height: 1.4;\n}\n\n.payload-path-content {\n padding: 1rem;\n}\n\n.json-editor-container {\n border: 1px solid #dee2e6;\n border-radius: 6px;\n overflow: hidden;\n margin-bottom: 0.75rem;\n}\n\n.json-editor-container:hover {\n border-color: #2196f3;\n}\n\n.payload-path-hint {\n display: flex;\n align-items: flex-start;\n gap: 0.5rem;\n font-size: 0.8rem;\n color: #6c757d;\n line-height: 1.4;\n}\n\n.payload-path-hint i {\n color: #17a2b8;\n margin-top: 0.1rem;\n flex-shrink: 0;\n}\n\n.payload-path-hint code {\n background: #e9ecef;\n padding: 0.1rem 0.3rem;\n border-radius: 3px;\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 0.75rem;\n color: #495057;\n}\n\n/* Payload Validation Container */\n.payload-validation-container {\n padding: 1.5rem;\n display: grid;\n grid-template-columns: 1fr 2fr;\n gap: 2rem;\n align-items: start;\n}\n\n.payload-validation-settings {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n}\n\n.validation-field-group {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.validation-field-label {\n font-weight: 600;\n color: #495057;\n font-size: 0.95rem;\n}\n\n.validation-field-description {\n color: #6c757d;\n font-size: 0.9rem;\n line-height: 1.4;\n margin: 0 0 0.5rem 0;\n}\n\n.payload-validation-schema {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n}\n\n.validation-schema-label {\n font-weight: 600;\n color: #495057;\n font-size: 0.95rem;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.validation-schema-label i {\n color: #2196f3;\n}\n\n.validation-schema-description {\n color: #6c757d;\n font-size: 0.9rem;\n line-height: 1.4;\n margin: 0;\n}\n\n.validation-schema-editor {\n border: 1px solid #dee2e6;\n border-radius: 6px;\n overflow: hidden;\n}\n\n.validation-schema-editor:hover {\n border-color: #2196f3;\n}\n\n/* === CONFIGURATION SECTION === */\n.config-section {\n margin-bottom: 2rem;\n background: white;\n border-radius: 12px;\n border: 1px solid #e0e0e0;\n overflow: hidden;\n}\n\n.config-section-title {\n margin: 0;\n padding: 1rem 1.5rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n color: #495057;\n font-size: 1.1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n}\n\n.config-section-title i {\n color: #2196f3;\n font-size: 1.2rem;\n}\n\n.config-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));\n gap: 1.5rem;\n padding: 1.5rem;\n width: 100%;\n}\n\n.config-card {\n background: white;\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.config-card:hover {\n border-color: #2196f3;\n box-shadow: 0 4px 12px rgba(33, 150, 243, 0.15);\n}\n\n.config-card.full-width {\n grid-column: 1 / -1;\n}\n\n.config-card-header {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n background: linear-gradient(135deg, #f8f9fa, #e9ecef);\n border-bottom: 1px solid #e0e0e0;\n}\n\n.config-card-icon {\n width: 40px;\n height: 40px;\n border-radius: 8px;\n background: linear-gradient(135deg, #2196f3, #1976d2);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.config-card-icon i {\n color: white;\n font-size: 1.2rem;\n}\n\n.config-card-info h4 {\n margin: 0 0 0.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #495057;\n}\n\n.config-card-info p {\n margin: 0;\n font-size: 0.85rem;\n color: #6c757d;\n line-height: 1.4;\n}\n\n.config-card-content {\n padding: 1rem;\n}\n\n/* Custom field styling for config cards */\n.config-field-input {\n width: 100%;\n min-width: 250px;\n}\n\n/* Fix numeric textbox cutoff issue */\n.config-card-content ::ng-deep kendo-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content ::ng-deep kendo-numerictextbox .k-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content ::ng-deep kendo-numerictextbox .k-input {\n width: 100% !important;\n min-width: 200px !important;\n}\n\n.config-card-content ::ng-deep mj-form-field {\n width: 100% !important;\n}\n\n.config-card-content ::ng-deep mj-form-field kendo-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content ::ng-deep mj-form-field kendo-numerictextbox .k-numerictextbox {\n width: 100% !important;\n}\n\n.config-card-content ::ng-deep mj-form-field kendo-numerictextbox .k-input {\n width: 100% !important;\n min-width: 200px !important;\n}\n\n.config-field-display {\n color: #495057;\n font-size: 14px;\n font-weight: 500;\n padding: 8px 0;\n display: block;\n min-height: 20px;\n}\n\n/* Prompt selector styling */\n.prompt-selector-container {\n display: flex;\n align-items: center;\n gap: 12px;\n width: 100%;\n}\n\n.prompt-display {\n flex: 1;\n min-width: 0;\n padding: 8px 12px;\n background: #f8f9fa;\n border: 1px solid #dee2e6;\n border-radius: 6px;\n}\n\n.prompt-name {\n color: #495057;\n font-weight: 500;\n font-size: 14px;\n}\n\n.no-prompt {\n color: #6c757d;\n font-style: italic;\n font-size: 14px;\n}\n\n.prompt-actions {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.prompt-select-btn {\n white-space: nowrap;\n}\n\n.prompt-clear-btn {\n min-width: 32px;\n}\n\n.config-card-hint {\n display: flex;\n align-items: flex-start;\n gap: 0.5rem;\n font-size: 0.8rem;\n color: #6c757d;\n line-height: 1.4;\n margin-top: 0.5rem;\n}\n\n.config-card-hint i {\n color: #17a2b8;\n margin-top: 0.1rem;\n flex-shrink: 0;\n}\n\n.config-card-hint code {\n background: #e9ecef;\n padding: 0.1rem 0.3rem;\n border-radius: 3px;\n font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;\n font-size: 0.75rem;\n color: #495057;\n}\n\n\n/* === RESPONSIVE DESIGN === */\n@media (max-width: 768px) {\n .payload-field-container,\n .payload-validation-container {\n grid-template-columns: 1fr;\n gap: 1rem;\n }\n \n .payload-paths-grid {\n grid-template-columns: 1fr;\n gap: 1rem;\n padding: 1rem;\n }\n \n .config-grid {\n grid-template-columns: 1fr;\n gap: 1rem;\n padding: 1rem;\n }\n \n .payload-section-title,\n .config-section-title {\n padding: 0.75rem 1rem;\n font-size: 1rem;\n }\n \n .payload-path-header,\n .config-card-header {\n padding: 0.75rem;\n }\n \n .payload-path-content,\n .config-card-content {\n padding: 0.75rem;\n }\n \n .payload-field-container,\n .payload-validation-container {\n padding: 1rem;\n }\n}\n\n/* ===================================\n Unified Sub-Agents with Filtering\n =================================== */\n\n/* Filter Controls */\n.sub-agent-filter-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n flex-wrap: wrap;\n gap: 12px;\n}\n\n.filter-controls {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.filter-controls kendo-buttongroup {\n flex: 0 0 auto;\n}\n\n/* Sub-Agent Type Badge */\n.sub-agent-type-badge {\n position: absolute;\n top: 8px;\n right: 8px;\n padding: 4px 8px;\n border-radius: 4px;\n font-size: 10px;\n font-weight: 600;\n color: white;\n display: flex;\n align-items: center;\n gap: 4px;\n z-index: 1;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n/* Sub-Agent Item Styling */\n.sub-agent-item {\n position: relative;\n padding-left: 8px;\n transition: all 0.2s ease;\n}\n\n.sub-agent-item.child-sub-agent {\n border-left: 4px solid #2196F3;\n}\n\n.sub-agent-item.related-sub-agent {\n border-left: 4px solid #9C27B0;\n}\n\n.sub-agent-item:hover {\n transform: translateX(4px);\n}\n\n/* Payload Info Tag */\n.payload-info {\n background: #f5f5f5;\n color: #666;\n font-family: 'Roboto Mono', monospace;\n font-size: 11px;\n}\n\n/* Empty State Info Cards */\n.empty-state-info {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 16px;\n margin: 24px 0;\n max-width: 600px;\n margin-left: auto;\n margin-right: auto;\n}\n\n.info-card {\n background: #fafafa;\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n padding: 16px;\n text-align: left;\n}\n\n.info-card i {\n font-size: 24px;\n margin-bottom: 8px;\n display: block;\n}\n\n.info-card strong {\n display: block;\n margin-bottom: 4px;\n font-size: 14px;\n}\n\n.info-card p {\n margin: 0;\n font-size: 12px;\n color: #666;\n}\n\n.empty-state-actions {\n display: flex;\n gap: 12px;\n justify-content: center;\n margin-top: 16px;\n}\n\n/* Responsive adjustments for sub-agent filters */\n@media (max-width: 768px) {\n .sub-agent-filter-header {\n flex-direction: column;\n align-items: stretch;\n }\n \n .filter-controls,\n .header-actions {\n width: 100%;\n justify-content: center;\n }\n \n .empty-state-info {\n grid-template-columns: 1fr;\n }\n}\n"] }]
|
|
4495
4495
|
}], null, { customSectionContainer: [{
|
|
4496
4496
|
type: ViewChild,
|
|
4497
4497
|
args: ['customSectionContainer', { read: ViewContainerRef }]
|
|
4498
4498
|
}] }); })();
|
|
4499
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(
|
|
4499
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MJAIAgentFormComponentExtended, { className: "MJAIAgentFormComponentExtended", filePath: "src/lib/custom/AIAgents/ai-agent-form.component.ts", lineNumber: 74 }); })();
|
|
4500
4500
|
//# sourceMappingURL=ai-agent-form.component.js.map
|