@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.
Files changed (108) hide show
  1. package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.js.map +1 -1
  2. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js +4 -4
  3. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js.map +1 -1
  4. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts +18 -18
  5. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
  6. package/dist/lib/custom/AIAgents/ai-agent-form.component.js +309 -309
  7. package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
  8. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts +9 -9
  9. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts.map +1 -1
  10. package/dist/lib/custom/AIAgents/ai-agent-management.service.js.map +1 -1
  11. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +3 -3
  12. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
  13. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
  14. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts +8 -8
  15. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
  16. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +1 -1
  17. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
  18. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts +2 -2
  19. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
  20. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
  21. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts +2 -2
  22. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts.map +1 -1
  23. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +10 -10
  24. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
  25. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
  26. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts +3 -3
  27. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
  28. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
  29. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +3 -3
  30. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
  31. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +1 -1
  32. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
  33. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts +8 -8
  34. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts.map +1 -1
  35. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +225 -225
  36. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
  37. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts +7 -7
  38. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts.map +1 -1
  39. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +259 -259
  40. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
  41. package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts +3 -3
  42. package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts.map +1 -1
  43. package/dist/lib/custom/Actions/action-execution-log-form.component.js +48 -48
  44. package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
  45. package/dist/lib/custom/Actions/action-form.component.d.ts +4 -4
  46. package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
  47. package/dist/lib/custom/Actions/action-form.component.js +164 -164
  48. package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
  49. package/dist/lib/custom/Entities/entity-form.component.d.ts +3 -3
  50. package/dist/lib/custom/Entities/entity-form.component.d.ts.map +1 -1
  51. package/dist/lib/custom/Entities/entity-form.component.js +299 -299
  52. package/dist/lib/custom/Entities/entity-form.component.js.map +1 -1
  53. package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts +3 -3
  54. package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts.map +1 -1
  55. package/dist/lib/custom/EntityActions/entityaction.form.component.js +11 -11
  56. package/dist/lib/custom/EntityActions/entityaction.form.component.js.map +1 -1
  57. package/dist/lib/custom/Lists/list-form.component.d.ts +8 -8
  58. package/dist/lib/custom/Lists/list-form.component.d.ts.map +1 -1
  59. package/dist/lib/custom/Lists/list-form.component.js +163 -163
  60. package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
  61. package/dist/lib/custom/Queries/query-form.component.d.ts +3 -3
  62. package/dist/lib/custom/Queries/query-form.component.d.ts.map +1 -1
  63. package/dist/lib/custom/Queries/query-form.component.js +175 -184
  64. package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
  65. package/dist/lib/custom/Queries/query-run-dialog.component.d.ts +1 -0
  66. package/dist/lib/custom/Queries/query-run-dialog.component.d.ts.map +1 -1
  67. package/dist/lib/custom/Queries/query-run-dialog.component.js +3 -1
  68. package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
  69. package/dist/lib/custom/Templates/templates-form.component.d.ts +3 -3
  70. package/dist/lib/custom/Templates/templates-form.component.d.ts.map +1 -1
  71. package/dist/lib/custom/Templates/templates-form.component.js +53 -53
  72. package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
  73. package/dist/lib/custom/Tests/test-form.component.d.ts +3 -3
  74. package/dist/lib/custom/Tests/test-form.component.d.ts.map +1 -1
  75. package/dist/lib/custom/Tests/test-form.component.js +161 -161
  76. package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
  77. package/dist/lib/custom/Tests/test-rubric-form.component.d.ts +3 -3
  78. package/dist/lib/custom/Tests/test-rubric-form.component.d.ts.map +1 -1
  79. package/dist/lib/custom/Tests/test-rubric-form.component.js +12 -12
  80. package/dist/lib/custom/Tests/test-rubric-form.component.js.map +1 -1
  81. package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts +3 -3
  82. package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts.map +1 -1
  83. package/dist/lib/custom/Tests/test-run-feedback-form.component.js +14 -14
  84. package/dist/lib/custom/Tests/test-run-feedback-form.component.js.map +1 -1
  85. package/dist/lib/custom/Tests/test-run-form.component.d.ts +3 -3
  86. package/dist/lib/custom/Tests/test-run-form.component.d.ts.map +1 -1
  87. package/dist/lib/custom/Tests/test-run-form.component.js +140 -140
  88. package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
  89. package/dist/lib/custom/Tests/test-suite-form.component.d.ts +3 -3
  90. package/dist/lib/custom/Tests/test-suite-form.component.d.ts.map +1 -1
  91. package/dist/lib/custom/Tests/test-suite-form.component.js +243 -243
  92. package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
  93. package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts +3 -3
  94. package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts.map +1 -1
  95. package/dist/lib/custom/Tests/test-suite-run-form.component.js +213 -213
  96. package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
  97. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts +6 -6
  98. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
  99. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +148 -148
  100. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
  101. package/dist/lib/custom/custom-forms.module.d.ts +1 -1
  102. package/dist/lib/custom/custom-forms.module.js +85 -85
  103. package/dist/lib/custom/custom-forms.module.js.map +1 -1
  104. package/dist/lib/generated/Entities/MJOpenApp/mjopenapp.form.component.js +3 -3
  105. package/dist/lib/generated/Entities/MJOpenApp/mjopenapp.form.component.js.map +1 -1
  106. package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js +5 -5
  107. package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js.map +1 -1
  108. package/package.json +30 -30
@@ -36,16 +36,16 @@ const _c6 = () => ({ text: "Static Count", value: "StaticCount" });
36
36
  const _c7 = () => ({ text: "Config Param", value: "ConfigParam" });
37
37
  function _forTrack0($index, $item) { return this.getModelTrackId($item) || $index; }
38
38
  const _forTrack1 = ($index, $item) => $item.ID;
39
- function AIPromptFormComponentExtended_Conditional_2_Conditional_9_Template(rf, ctx) { if (rf & 1) {
39
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_9_Template(rf, ctx) { if (rf & 1) {
40
40
  const _r1 = i0.ɵɵgetCurrentView();
41
41
  i0.ɵɵelementStart(0, "kendo-textbox", 48);
42
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_9_Template_kendo_textbox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.record.Name, $event) || (ctx_r1.record.Name = $event); return i0.ɵɵresetView($event); });
42
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_9_Template_kendo_textbox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.record.Name, $event) || (ctx_r1.record.Name = $event); return i0.ɵɵresetView($event); });
43
43
  i0.ɵɵelementEnd();
44
44
  } if (rf & 2) {
45
45
  const ctx_r1 = i0.ɵɵnextContext(2);
46
46
  i0.ɵɵtwoWayProperty("ngModel", ctx_r1.record.Name);
47
47
  } }
48
- function AIPromptFormComponentExtended_Conditional_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
48
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
49
49
  i0.ɵɵelementStart(0, "h4", 49);
50
50
  i0.ɵɵtext(1);
51
51
  i0.ɵɵelementEnd();
@@ -61,36 +61,36 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_10_Template(rf,
61
61
  i0.ɵɵadvance();
62
62
  i0.ɵɵtextInterpolate1(" ", ctx_r1.record.Status, " ");
63
63
  } }
64
- function AIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_10_Template(rf, ctx) { if (rf & 1) {
64
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_10_Template(rf, ctx) { if (rf & 1) {
65
65
  i0.ɵɵelementStart(0, "div", 53);
66
66
  i0.ɵɵelement(1, "i", 55);
67
67
  i0.ɵɵtext(2, " Loading types... ");
68
68
  i0.ɵɵelementEnd();
69
69
  } }
70
- function AIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_11_Template(rf, ctx) { if (rf & 1) {
70
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_11_Template(rf, ctx) { if (rf & 1) {
71
71
  const _r4 = i0.ɵɵgetCurrentView();
72
72
  i0.ɵɵelementStart(0, "kendo-dropdownlist", 56);
73
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_11_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.record.TypeID, $event) || (ctx_r1.record.TypeID = $event); return i0.ɵɵresetView($event); });
73
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_11_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.record.TypeID, $event) || (ctx_r1.record.TypeID = $event); return i0.ɵɵresetView($event); });
74
74
  i0.ɵɵelementEnd();
75
75
  } if (rf & 2) {
76
76
  const ctx_r1 = i0.ɵɵnextContext(3);
77
77
  i0.ɵɵtwoWayProperty("ngModel", ctx_r1.record.TypeID);
78
78
  i0.ɵɵproperty("data", ctx_r1.availablePromptTypes)("valuePrimitive", true)("filterable", true);
79
79
  } }
80
- function AIPromptFormComponentExtended_Conditional_2_Conditional_11_Template(rf, ctx) { if (rf & 1) {
80
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Template(rf, ctx) { if (rf & 1) {
81
81
  const _r3 = i0.ɵɵgetCurrentView();
82
82
  i0.ɵɵelementStart(0, "div", 14)(1, "div")(2, "label", 46);
83
83
  i0.ɵɵtext(3, "Status");
84
84
  i0.ɵɵelementEnd();
85
85
  i0.ɵɵelementStart(4, "kendo-dropdownlist", 51);
86
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_11_Template_kendo_dropdownlist_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.record.Status, $event) || (ctx_r1.record.Status = $event); return i0.ɵɵresetView($event); });
86
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Template_kendo_dropdownlist_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.record.Status, $event) || (ctx_r1.record.Status = $event); return i0.ɵɵresetView($event); });
87
87
  i0.ɵɵelementEnd()();
88
88
  i0.ɵɵelementStart(5, "div")(6, "label", 46);
89
89
  i0.ɵɵtext(7, " Type ");
90
90
  i0.ɵɵelementStart(8, "span", 52);
91
91
  i0.ɵɵtext(9, "*");
92
92
  i0.ɵɵelementEnd()();
93
- i0.ɵɵconditionalCreate(10, AIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_10_Template, 3, 0, "div", 53)(11, AIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_11_Template, 1, 4, "kendo-dropdownlist", 54);
93
+ i0.ɵɵconditionalCreate(10, MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_10_Template, 3, 0, "div", 53)(11, MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Conditional_11_Template, 1, 4, "kendo-dropdownlist", 54);
94
94
  i0.ɵɵelementEnd()();
95
95
  } if (rf & 2) {
96
96
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -100,17 +100,17 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_11_Template(rf,
100
100
  i0.ɵɵadvance(6);
101
101
  i0.ɵɵconditional(ctx_r1.isLoadingPromptTypes ? 10 : 11);
102
102
  } }
103
- function AIPromptFormComponentExtended_Conditional_2_Conditional_12_Template(rf, ctx) { if (rf & 1) {
103
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_12_Template(rf, ctx) { if (rf & 1) {
104
104
  const _r5 = i0.ɵɵgetCurrentView();
105
105
  i0.ɵɵelementStart(0, "kendo-textarea", 57);
106
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_12_Template_kendo_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.record.Description, $event) || (ctx_r1.record.Description = $event); return i0.ɵɵresetView($event); });
106
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_12_Template_kendo_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.record.Description, $event) || (ctx_r1.record.Description = $event); return i0.ɵɵresetView($event); });
107
107
  i0.ɵɵelementEnd();
108
108
  } if (rf & 2) {
109
109
  const ctx_r1 = i0.ɵɵnextContext(2);
110
110
  i0.ɵɵtwoWayProperty("ngModel", ctx_r1.record.Description);
111
111
  i0.ɵɵproperty("rows", 2);
112
112
  } }
113
- function AIPromptFormComponentExtended_Conditional_2_Conditional_13_Template(rf, ctx) { if (rf & 1) {
113
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_13_Template(rf, ctx) { if (rf & 1) {
114
114
  i0.ɵɵelementStart(0, "p", 16);
115
115
  i0.ɵɵtext(1);
116
116
  i0.ɵɵelementEnd();
@@ -119,7 +119,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_13_Template(rf,
119
119
  i0.ɵɵadvance();
120
120
  i0.ɵɵtextInterpolate(ctx_r1.record.Description);
121
121
  } }
122
- function AIPromptFormComponentExtended_Conditional_2_Conditional_15_Template(rf, ctx) { if (rf & 1) {
122
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_15_Template(rf, ctx) { if (rf & 1) {
123
123
  i0.ɵɵelementStart(0, "div", 18);
124
124
  i0.ɵɵelement(1, "i", 58);
125
125
  i0.ɵɵelementStart(2, "span", 20);
@@ -133,14 +133,14 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_15_Template(rf,
133
133
  i0.ɵɵadvance(5);
134
134
  i0.ɵɵtextInterpolate(ctx_r1.getPromptTypeDisplayName(ctx_r1.record.TypeID));
135
135
  } }
136
- function AIPromptFormComponentExtended_Conditional_2_Conditional_28_Template(rf, ctx) { if (rf & 1) {
136
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_28_Template(rf, ctx) { if (rf & 1) {
137
137
  i0.ɵɵelementStart(0, "div", 18);
138
138
  i0.ɵɵelement(1, "i", 59);
139
139
  i0.ɵɵelementStart(2, "span", 60);
140
140
  i0.ɵɵtext(3, "Caching Enabled");
141
141
  i0.ɵɵelementEnd()();
142
142
  } }
143
- function AIPromptFormComponentExtended_Conditional_2_Conditional_29_Template(rf, ctx) { if (rf & 1) {
143
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_29_Template(rf, ctx) { if (rf & 1) {
144
144
  i0.ɵɵelementStart(0, "div", 18);
145
145
  i0.ɵɵelement(1, "i", 61);
146
146
  i0.ɵɵelementStart(2, "span", 20);
@@ -154,33 +154,33 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_29_Template(rf,
154
154
  i0.ɵɵadvance(5);
155
155
  i0.ɵɵtextInterpolate(ctx_r1.record.EffortLevel);
156
156
  } }
157
- function AIPromptFormComponentExtended_Conditional_2_Conditional_32_Template(rf, ctx) { if (rf & 1) {
157
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_32_Template(rf, ctx) { if (rf & 1) {
158
158
  const _r6 = i0.ɵɵgetCurrentView();
159
159
  i0.ɵɵelementStart(0, "button", 62);
160
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_32_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.openTestHarness()); });
160
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_32_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.openTestHarness()); });
161
161
  i0.ɵɵelement(1, "i", 63);
162
162
  i0.ɵɵtext(2, " Run ");
163
163
  i0.ɵɵelementEnd();
164
164
  } if (rf & 2) {
165
165
  i0.ɵɵproperty("themeColor", "primary")("size", "large");
166
166
  } }
167
- function AIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_1_Template(rf, ctx) { if (rf & 1) {
167
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_1_Template(rf, ctx) { if (rf & 1) {
168
168
  i0.ɵɵtext(0, " \u2022 Prompt must be Active");
169
169
  i0.ɵɵelement(1, "br");
170
170
  } }
171
- function AIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_2_Template(rf, ctx) { if (rf & 1) {
171
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_2_Template(rf, ctx) { if (rf & 1) {
172
172
  i0.ɵɵtext(0, " \u2022 Template is required");
173
173
  i0.ɵɵelement(1, "br");
174
174
  } }
175
- function AIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_3_Template(rf, ctx) { if (rf & 1) {
175
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_3_Template(rf, ctx) { if (rf & 1) {
176
176
  i0.ɵɵtext(0, " \u2022 Template not found");
177
177
  i0.ɵɵelement(1, "br");
178
178
  } }
179
- function AIPromptFormComponentExtended_Conditional_2_Conditional_33_Template(rf, ctx) { if (rf & 1) {
179
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Template(rf, ctx) { if (rf & 1) {
180
180
  i0.ɵɵelementStart(0, "div", 27);
181
- i0.ɵɵconditionalCreate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_1_Template, 2, 0);
182
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_2_Template, 2, 0);
183
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_3_Template, 2, 0);
181
+ i0.ɵɵconditionalCreate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_1_Template, 2, 0);
182
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_2_Template, 2, 0);
183
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Conditional_3_Template, 2, 0);
184
184
  i0.ɵɵelementEnd();
185
185
  } if (rf & 2) {
186
186
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -191,7 +191,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_33_Template(rf,
191
191
  i0.ɵɵadvance();
192
192
  i0.ɵɵconditional(!ctx_r1.template && ctx_r1.record.TemplateID ? 3 : -1);
193
193
  } }
194
- function AIPromptFormComponentExtended_Conditional_2_ng_template_36_Conditional_3_Template(rf, ctx) { if (rf & 1) {
194
+ function MJAIPromptFormComponentExtended_Conditional_2_ng_template_36_Conditional_3_Template(rf, ctx) { if (rf & 1) {
195
195
  i0.ɵɵelementStart(0, "span", 65);
196
196
  i0.ɵɵtext(1);
197
197
  i0.ɵɵelementEnd();
@@ -200,44 +200,44 @@ function AIPromptFormComponentExtended_Conditional_2_ng_template_36_Conditional_
200
200
  i0.ɵɵadvance();
201
201
  i0.ɵɵtextInterpolate1("\u2022 ", ctx_r1.template.Name);
202
202
  } }
203
- function AIPromptFormComponentExtended_Conditional_2_ng_template_36_Template(rf, ctx) { if (rf & 1) {
203
+ function MJAIPromptFormComponentExtended_Conditional_2_ng_template_36_Template(rf, ctx) { if (rf & 1) {
204
204
  i0.ɵɵelementStart(0, "span", 64);
205
205
  i0.ɵɵelement(1, "i", 22);
206
206
  i0.ɵɵtext(2, " Template Editor ");
207
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_ng_template_36_Conditional_3_Template, 2, 1, "span", 65);
207
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_ng_template_36_Conditional_3_Template, 2, 1, "span", 65);
208
208
  i0.ɵɵelementEnd();
209
209
  } if (rf & 2) {
210
210
  const ctx_r1 = i0.ɵɵnextContext(2);
211
211
  i0.ɵɵadvance(3);
212
212
  i0.ɵɵconditional(ctx_r1.template ? 3 : -1);
213
213
  } }
214
- function AIPromptFormComponentExtended_Conditional_2_Conditional_38_Template(rf, ctx) { if (rf & 1) {
214
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_38_Template(rf, ctx) { if (rf & 1) {
215
215
  i0.ɵɵelementStart(0, "div", 32);
216
216
  i0.ɵɵelement(1, "i", 66);
217
217
  i0.ɵɵtext(2, " Loading template... ");
218
218
  i0.ɵɵelementEnd();
219
219
  } }
220
- function AIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_7_Template(rf, ctx) { if (rf & 1) {
220
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_7_Template(rf, ctx) { if (rf & 1) {
221
221
  const _r7 = i0.ɵɵgetCurrentView();
222
222
  i0.ɵɵelementStart(0, "button", 73);
223
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createNewTemplate()); });
223
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createNewTemplate()); });
224
224
  i0.ɵɵelement(1, "i", 74);
225
225
  i0.ɵɵtext(2, " Create New Template ");
226
226
  i0.ɵɵelementEnd();
227
227
  } if (rf & 2) {
228
228
  i0.ɵɵproperty("themeColor", "primary");
229
229
  } }
230
- function AIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_8_Template(rf, ctx) { if (rf & 1) {
230
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_8_Template(rf, ctx) { if (rf & 1) {
231
231
  const _r8 = i0.ɵɵgetCurrentView();
232
232
  i0.ɵɵelementStart(0, "button", 75);
233
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.linkExistingTemplate()); });
233
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.linkExistingTemplate()); });
234
234
  i0.ɵɵelement(1, "i", 76);
235
235
  i0.ɵɵtext(2, " Link Existing Template ");
236
236
  i0.ɵɵelementEnd();
237
237
  } if (rf & 2) {
238
238
  i0.ɵɵproperty("fillMode", "outline");
239
239
  } }
240
- function AIPromptFormComponentExtended_Conditional_2_Conditional_39_Template(rf, ctx) { if (rf & 1) {
240
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Template(rf, ctx) { if (rf & 1) {
241
241
  i0.ɵɵelementStart(0, "div", 33);
242
242
  i0.ɵɵelement(1, "i", 67);
243
243
  i0.ɵɵelementStart(2, "h5", 68);
@@ -247,8 +247,8 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_39_Template(rf,
247
247
  i0.ɵɵtext(5, " This AI prompt needs a template to define its structure and parameters. Create a new template or link to an existing one. ");
248
248
  i0.ɵɵelementEnd();
249
249
  i0.ɵɵelementStart(6, "div", 70);
250
- i0.ɵɵconditionalCreate(7, AIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_7_Template, 3, 1, "button", 71);
251
- i0.ɵɵconditionalCreate(8, AIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_8_Template, 3, 1, "button", 72);
250
+ i0.ɵɵconditionalCreate(7, MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_7_Template, 3, 1, "button", 71);
251
+ i0.ɵɵconditionalCreate(8, MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Conditional_8_Template, 3, 1, "button", 72);
252
252
  i0.ɵɵelementEnd()();
253
253
  } if (rf & 2) {
254
254
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -257,17 +257,17 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_39_Template(rf,
257
257
  i0.ɵɵadvance();
258
258
  i0.ɵɵconditional(ctx_r1.UserCanReadTemplates ? 8 : -1);
259
259
  } }
260
- function AIPromptFormComponentExtended_Conditional_2_Conditional_40_Conditional_10_Template(rf, ctx) { if (rf & 1) {
260
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_40_Conditional_10_Template(rf, ctx) { if (rf & 1) {
261
261
  const _r10 = i0.ɵɵgetCurrentView();
262
262
  i0.ɵɵelementStart(0, "button", 73);
263
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_40_Conditional_10_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createNewTemplate()); });
263
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_40_Conditional_10_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.createNewTemplate()); });
264
264
  i0.ɵɵelement(1, "i", 74);
265
265
  i0.ɵɵtext(2, " Create New Template ");
266
266
  i0.ɵɵelementEnd();
267
267
  } if (rf & 2) {
268
268
  i0.ɵɵproperty("themeColor", "primary");
269
269
  } }
270
- function AIPromptFormComponentExtended_Conditional_2_Conditional_40_Template(rf, ctx) { if (rf & 1) {
270
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_40_Template(rf, ctx) { if (rf & 1) {
271
271
  const _r9 = i0.ɵɵgetCurrentView();
272
272
  i0.ɵɵelementStart(0, "div", 34);
273
273
  i0.ɵɵelement(1, "i", 77);
@@ -278,11 +278,11 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_40_Template(rf,
278
278
  i0.ɵɵtext(5, " The referenced template could not be loaded. It may have been deleted or moved. ");
279
279
  i0.ɵɵelementEnd();
280
280
  i0.ɵɵelementStart(6, "div", 70)(7, "button", 75);
281
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_40_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r9); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.loadTemplate()); });
281
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_40_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r9); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.loadTemplate()); });
282
282
  i0.ɵɵelement(8, "i", 79);
283
283
  i0.ɵɵtext(9, " Retry Loading ");
284
284
  i0.ɵɵelementEnd();
285
- i0.ɵɵconditionalCreate(10, AIPromptFormComponentExtended_Conditional_2_Conditional_40_Conditional_10_Template, 3, 1, "button", 71);
285
+ i0.ɵɵconditionalCreate(10, MJAIPromptFormComponentExtended_Conditional_2_Conditional_40_Conditional_10_Template, 3, 1, "button", 71);
286
286
  i0.ɵɵelementEnd()();
287
287
  } if (rf & 2) {
288
288
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -291,30 +291,30 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_40_Template(rf,
291
291
  i0.ɵɵadvance(3);
292
292
  i0.ɵɵconditional(ctx_r1.UserCanCreateTemplates ? 10 : -1);
293
293
  } }
294
- function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
294
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
295
295
  const _r12 = i0.ɵɵgetCurrentView();
296
296
  i0.ɵɵelementStart(0, "button", 85);
297
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r12); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.linkExistingTemplate()); });
297
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r12); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.linkExistingTemplate()); });
298
298
  i0.ɵɵelement(1, "i", 86);
299
299
  i0.ɵɵtext(2, " Change Template ");
300
300
  i0.ɵɵelementEnd();
301
301
  } if (rf & 2) {
302
302
  i0.ɵɵproperty("fillMode", "outline")("size", "small");
303
303
  } }
304
- function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
304
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
305
305
  const _r13 = i0.ɵɵgetCurrentView();
306
306
  i0.ɵɵelementStart(0, "button", 87);
307
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.openTemplateInNewWindow()); });
307
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.openTemplateInNewWindow()); });
308
308
  i0.ɵɵelement(1, "i", 88);
309
309
  i0.ɵɵtext(2, " Open in New Window ");
310
310
  i0.ɵɵelementEnd();
311
311
  } if (rf & 2) {
312
312
  i0.ɵɵproperty("fillMode", "outline")("size", "small");
313
313
  } }
314
- function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Template(rf, ctx) { if (rf & 1) {
314
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Template(rf, ctx) { if (rf & 1) {
315
315
  i0.ɵɵelementStart(0, "div", 80);
316
- i0.ɵɵconditionalCreate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_1_Template, 3, 2, "button", 83);
317
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_2_Template, 3, 2, "button", 84);
316
+ i0.ɵɵconditionalCreate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_1_Template, 3, 2, "button", 83);
317
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Conditional_2_Template, 3, 2, "button", 84);
318
318
  i0.ɵɵelementEnd();
319
319
  } if (rf & 2) {
320
320
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -323,12 +323,12 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_
323
323
  i0.ɵɵadvance();
324
324
  i0.ɵɵconditional(ctx_r1.UserCanReadTemplates ? 2 : -1);
325
325
  } }
326
- function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Template(rf, ctx) { if (rf & 1) {
326
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Template(rf, ctx) { if (rf & 1) {
327
327
  const _r11 = i0.ɵɵgetCurrentView();
328
328
  i0.ɵɵelementStart(0, "div", 35);
329
- i0.ɵɵconditionalCreate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Template, 3, 2, "div", 80);
329
+ i0.ɵɵconditionalCreate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Conditional_1_Template, 3, 2, "div", 80);
330
330
  i0.ɵɵelementStart(2, "div", 81)(3, "mj-template-editor", 82, 1);
331
- i0.ɵɵlistener("contentChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Template_mj_template_editor_contentChange_3_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onTemplateContentChange($event)); })("runTemplate", function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Template_mj_template_editor_runTemplate_3_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onTemplateRun($event)); });
331
+ i0.ɵɵlistener("contentChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Template_mj_template_editor_contentChange_3_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onTemplateContentChange($event)); })("runTemplate", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Template_mj_template_editor_runTemplate_3_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onTemplateRun($event)); });
332
332
  i0.ɵɵelementEnd()()();
333
333
  } if (rf & 2) {
334
334
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -337,7 +337,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_41_Template(rf,
337
337
  i0.ɵɵadvance(2);
338
338
  i0.ɵɵproperty("template", ctx_r1.template)("config", ctx_r1.templateEditorConfig);
339
339
  } }
340
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
340
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
341
341
  i0.ɵɵelementStart(0, "span", 92);
342
342
  i0.ɵɵtext(1);
343
343
  i0.ɵɵelementEnd();
@@ -346,11 +346,11 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_
346
346
  i0.ɵɵadvance();
347
347
  i0.ɵɵtextInterpolate1(" ", ctx_r1.promptModels.length, " ");
348
348
  } }
349
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Template(rf, ctx) { if (rf & 1) {
349
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Template(rf, ctx) { if (rf & 1) {
350
350
  i0.ɵɵelementStart(0, "span", 64);
351
351
  i0.ɵɵelement(1, "i", 91);
352
352
  i0.ɵɵtext(2, " Models ");
353
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Conditional_3_Template, 2, 1, "span", 92);
353
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Conditional_3_Template, 2, 1, "span", 92);
354
354
  i0.ɵɵelementStart(4, "span", 93);
355
355
  i0.ɵɵelement(5, "i", 94);
356
356
  i0.ɵɵtext(6, " Priority order (first available model will be used) ");
@@ -360,38 +360,38 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_
360
360
  i0.ɵɵadvance(3);
361
361
  i0.ɵɵconditional(ctx_r1.promptModels.length > 0 ? 3 : -1);
362
362
  } }
363
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_4_Template(rf, ctx) { if (rf & 1) {
363
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_4_Template(rf, ctx) { if (rf & 1) {
364
364
  i0.ɵɵelementStart(0, "div", 90);
365
365
  i0.ɵɵelement(1, "i", 55);
366
366
  i0.ɵɵtext(2, " Loading models... ");
367
367
  i0.ɵɵelementEnd();
368
368
  } }
369
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
369
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
370
370
  const _r14 = i0.ɵɵgetCurrentView();
371
371
  i0.ɵɵelementStart(0, "div", 97)(1, "button", 98);
372
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Conditional_3_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r14); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.addNewModel()); });
372
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Conditional_3_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r14); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.addNewModel()); });
373
373
  i0.ɵɵelement(2, "i", 74);
374
374
  i0.ɵɵtext(3, " Add Model ");
375
375
  i0.ɵɵelementEnd()();
376
376
  } }
377
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Template(rf, ctx) { if (rf & 1) {
377
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Template(rf, ctx) { if (rf & 1) {
378
378
  i0.ɵɵelementStart(0, "div", 95);
379
379
  i0.ɵɵelement(1, "i", 96);
380
380
  i0.ɵɵtext(2, " No models configured ");
381
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Conditional_3_Template, 4, 0, "div", 97);
381
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Conditional_3_Template, 4, 0, "div", 97);
382
382
  i0.ɵɵelementEnd();
383
383
  } if (rf & 2) {
384
384
  const ctx_r1 = i0.ɵɵnextContext(4);
385
385
  i0.ɵɵadvance(3);
386
386
  i0.ɵɵconditional(ctx_r1.EditMode && ctx_r1.UserCanCreatePromptModels ? 3 : -1);
387
387
  } }
388
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
388
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
389
389
  i0.ɵɵelementStart(0, "div", 99);
390
390
  i0.ɵɵelement(1, "i", 104);
391
391
  i0.ɵɵtext(2, " Models are tried in priority order (highest priority first). The first available model that meets requirements will be used for execution. ");
392
392
  i0.ɵɵelementEnd();
393
393
  } }
394
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_2_Template(rf, ctx) { if (rf & 1) {
394
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_2_Template(rf, ctx) { if (rf & 1) {
395
395
  i0.ɵɵelement(0, "i", 120);
396
396
  i0.ɵɵelementStart(1, "span", 121);
397
397
  i0.ɵɵtext(2);
@@ -401,7 +401,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
401
401
  i0.ɵɵadvance(2);
402
402
  i0.ɵɵtextInterpolate1("#", ɵ$index_312_r16 + 1);
403
403
  } }
404
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_3_Template(rf, ctx) { if (rf & 1) {
404
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_3_Template(rf, ctx) { if (rf & 1) {
405
405
  i0.ɵɵelementStart(0, "span", 107);
406
406
  i0.ɵɵtext(1);
407
407
  i0.ɵɵelementEnd();
@@ -413,11 +413,11 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
413
413
  i0.ɵɵadvance();
414
414
  i0.ɵɵtextInterpolate1("#", ɵ$index_312_r16 + 1);
415
415
  } }
416
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template(rf, ctx) { if (rf & 1) {
416
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template(rf, ctx) { if (rf & 1) {
417
417
  const _r19 = i0.ɵɵgetCurrentView();
418
418
  i0.ɵɵelementStart(0, "kendo-dropdownlist", 122);
419
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r19); const model_r18 = i0.ɵɵnextContext().$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ModelID, $event) || (model_r18.ModelID = $event); return i0.ɵɵresetView($event); });
420
- i0.ɵɵlistener("valueChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template_kendo_dropdownlist_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r19); const ɵ$index_312_r16 = i0.ɵɵnextContext().$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onModelChange($event, ɵ$index_312_r16)); });
419
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r19); const model_r18 = i0.ɵɵnextContext().$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ModelID, $event) || (model_r18.ModelID = $event); return i0.ɵɵresetView($event); });
420
+ i0.ɵɵlistener("valueChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template_kendo_dropdownlist_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r19); const ɵ$index_312_r16 = i0.ɵɵnextContext().$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onModelChange($event, ɵ$index_312_r16)); });
421
421
  i0.ɵɵelementEnd();
422
422
  } if (rf & 2) {
423
423
  const model_r18 = i0.ɵɵnextContext().$implicit;
@@ -425,7 +425,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
425
425
  i0.ɵɵtwoWayProperty("ngModel", model_r18.ModelID);
426
426
  i0.ɵɵproperty("name", "modelId_" + ctx_r1.getModelTrackId(model_r18))("data", ctx_r1.availableModels)("valuePrimitive", true)("filterable", true);
427
427
  } }
428
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_6_Template(rf, ctx) { if (rf & 1) {
428
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_6_Template(rf, ctx) { if (rf & 1) {
429
429
  i0.ɵɵelementStart(0, "span", 23);
430
430
  i0.ɵɵtext(1);
431
431
  i0.ɵɵelementEnd();
@@ -435,7 +435,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
435
435
  i0.ɵɵadvance();
436
436
  i0.ɵɵtextInterpolate(ctx_r1.getModelDisplayName(model_r18.ModelID));
437
437
  } }
438
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
438
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
439
439
  i0.ɵɵelementStart(0, "span", 127);
440
440
  i0.ɵɵtext(1);
441
441
  i0.ɵɵelementEnd();
@@ -446,10 +446,10 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
446
446
  i0.ɵɵadvance();
447
447
  i0.ɵɵtextInterpolate1("(", ctx_r1.getModelVendorStatus(model_r18.ModelID, dataItem_r21.ID), ")");
448
448
  } }
449
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Template(rf, ctx) { if (rf & 1) {
449
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Template(rf, ctx) { if (rf & 1) {
450
450
  i0.ɵɵelementStart(0, "span");
451
451
  i0.ɵɵtext(1);
452
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Conditional_2_Template, 2, 1, "span", 127);
452
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Conditional_2_Template, 2, 1, "span", 127);
453
453
  i0.ɵɵelementEnd();
454
454
  } if (rf & 2) {
455
455
  const dataItem_r21 = ctx.$implicit;
@@ -461,11 +461,11 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
461
461
  i0.ɵɵadvance();
462
462
  i0.ɵɵconditional(ctx_r1.getModelVendorStatus(model_r18.ModelID, dataItem_r21.ID) !== "Active" ? 2 : -1);
463
463
  } }
464
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
464
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
465
465
  const _r20 = i0.ɵɵgetCurrentView();
466
466
  i0.ɵɵelementStart(0, "kendo-dropdownlist", 125);
467
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r20); const model_r18 = i0.ɵɵnextContext(3).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.VendorID, $event) || (model_r18.VendorID = $event); return i0.ɵɵresetView($event); });
468
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Template, 3, 4, "ng-template", 126);
467
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r20); const model_r18 = i0.ɵɵnextContext(3).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.VendorID, $event) || (model_r18.VendorID = $event); return i0.ɵɵresetView($event); });
468
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_ng_template_1_Template, 3, 4, "ng-template", 126);
469
469
  i0.ɵɵelementEnd();
470
470
  } if (rf & 2) {
471
471
  const model_r18 = i0.ɵɵnextContext(3).$implicit;
@@ -473,7 +473,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
473
473
  i0.ɵɵtwoWayProperty("ngModel", model_r18.VendorID);
474
474
  i0.ɵɵproperty("name", "vendorId_" + ctx_r1.getModelTrackId(model_r18))("data", ctx_r1.getVendorsForModelSync(model_r18.ModelID))("valuePrimitive", true)("filterable", true);
475
475
  } }
476
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
476
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
477
477
  i0.ɵɵelementStart(0, "span", 127);
478
478
  i0.ɵɵtext(1);
479
479
  i0.ɵɵelementEnd();
@@ -483,10 +483,10 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
483
483
  i0.ɵɵadvance();
484
484
  i0.ɵɵtextInterpolate1("(", ctx_r1.getModelVendorStatus(model_r18.ModelID, ctx_r1.getVendorsForModelSync(model_r18.ModelID)[0].ID), ")");
485
485
  } }
486
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
486
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
487
487
  i0.ɵɵelementStart(0, "span", 129);
488
488
  i0.ɵɵtext(1);
489
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Conditional_2_Template, 2, 1, "span", 127);
489
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Conditional_2_Template, 2, 1, "span", 127);
490
490
  i0.ɵɵelementEnd();
491
491
  } if (rf & 2) {
492
492
  const model_r18 = i0.ɵɵnextContext(4).$implicit;
@@ -497,37 +497,37 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
497
497
  i0.ɵɵadvance();
498
498
  i0.ɵɵconditional(ctx_r1.getModelVendorStatus(model_r18.ModelID, ctx_r1.getVendorsForModelSync(model_r18.ModelID)[0].ID) !== "Active" ? 2 : -1);
499
499
  } }
500
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
500
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
501
501
  i0.ɵɵelementStart(0, "span", 123);
502
502
  i0.ɵɵtext(1, "No vendors available");
503
503
  i0.ɵɵelementEnd();
504
504
  } }
505
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
506
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Template, 3, 4, "span", 128)(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_1_Template, 2, 0, "span", 123);
505
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
506
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_0_Template, 3, 4, "span", 128)(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Conditional_1_Template, 2, 0, "span", 123);
507
507
  } if (rf & 2) {
508
508
  const model_r18 = i0.ɵɵnextContext(3).$implicit;
509
509
  const ctx_r1 = i0.ɵɵnextContext(5);
510
510
  i0.ɵɵconditional(ctx_r1.getVendorsForModelSync(model_r18.ModelID).length === 1 ? 0 : 1);
511
511
  } }
512
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Template(rf, ctx) { if (rf & 1) {
513
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_Template, 2, 5, "kendo-dropdownlist", 124)(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Template, 2, 1);
512
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Template(rf, ctx) { if (rf & 1) {
513
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_0_Template, 2, 5, "kendo-dropdownlist", 124)(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Conditional_1_Template, 2, 1);
514
514
  } if (rf & 2) {
515
515
  const model_r18 = i0.ɵɵnextContext(2).$implicit;
516
516
  const ctx_r1 = i0.ɵɵnextContext(5);
517
517
  i0.ɵɵconditional(ctx_r1.shouldShowVendorDropdown(model_r18.ModelID) ? 0 : 1);
518
518
  } }
519
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_1_Template(rf, ctx) { if (rf & 1) {
519
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_1_Template(rf, ctx) { if (rf & 1) {
520
520
  i0.ɵɵelementStart(0, "span", 123);
521
521
  i0.ɵɵtext(1, "Select model first");
522
522
  i0.ɵɵelementEnd();
523
523
  } }
524
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Template(rf, ctx) { if (rf & 1) {
525
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Template, 2, 1)(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_1_Template, 2, 0, "span", 123);
524
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Template(rf, ctx) { if (rf & 1) {
525
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_0_Template, 2, 1)(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Conditional_1_Template, 2, 0, "span", 123);
526
526
  } if (rf & 2) {
527
527
  const model_r18 = i0.ɵɵnextContext().$implicit;
528
528
  i0.ɵɵconditional(model_r18.ModelID ? 0 : 1);
529
529
  } }
530
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
530
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
531
531
  i0.ɵɵelementStart(0, "span", 127);
532
532
  i0.ɵɵtext(1);
533
533
  i0.ɵɵelementEnd();
@@ -537,10 +537,10 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
537
537
  i0.ɵɵadvance();
538
538
  i0.ɵɵtextInterpolate1("(", ctx_r1.getModelVendorStatus(model_r18.ModelID, model_r18.VendorID), ")");
539
539
  } }
540
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Template(rf, ctx) { if (rf & 1) {
540
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Template(rf, ctx) { if (rf & 1) {
541
541
  i0.ɵɵelementStart(0, "span", 112);
542
542
  i0.ɵɵtext(1);
543
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Conditional_2_Template, 2, 1, "span", 127);
543
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Conditional_2_Template, 2, 1, "span", 127);
544
544
  i0.ɵɵelementEnd();
545
545
  } if (rf & 2) {
546
546
  const model_r18 = i0.ɵɵnextContext(2).$implicit;
@@ -551,34 +551,34 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
551
551
  i0.ɵɵadvance();
552
552
  i0.ɵɵconditional(ctx_r1.getModelVendorStatus(model_r18.ModelID, model_r18.VendorID) !== "Active" ? 2 : -1);
553
553
  } }
554
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_1_Template(rf, ctx) { if (rf & 1) {
554
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_1_Template(rf, ctx) { if (rf & 1) {
555
555
  i0.ɵɵelementStart(0, "span", 131);
556
556
  i0.ɵɵtext(1, "-");
557
557
  i0.ɵɵelementEnd();
558
558
  } }
559
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Template(rf, ctx) { if (rf & 1) {
560
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Template, 3, 4, "span", 130)(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_1_Template, 2, 0, "span", 131);
559
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Template(rf, ctx) { if (rf & 1) {
560
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_0_Template, 3, 4, "span", 130)(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Conditional_1_Template, 2, 0, "span", 131);
561
561
  } if (rf & 2) {
562
562
  const model_r18 = i0.ɵɵnextContext().$implicit;
563
563
  i0.ɵɵconditional(model_r18.VendorID && model_r18.ModelID ? 0 : 1);
564
564
  } }
565
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_0_Template(rf, ctx) { if (rf & 1) {
565
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_0_Template(rf, ctx) { if (rf & 1) {
566
566
  i0.ɵɵelementStart(0, "div", 132);
567
567
  i0.ɵɵelement(1, "i", 55);
568
568
  i0.ɵɵtext(2, " Loading... ");
569
569
  i0.ɵɵelementEnd();
570
570
  } }
571
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_ng_template_1_Template(rf, ctx) { if (rf & 1) {
571
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_ng_template_1_Template(rf, ctx) { if (rf & 1) {
572
572
  i0.ɵɵelementStart(0, "div", 136);
573
573
  i0.ɵɵtext(1, " No configurations available ");
574
574
  i0.ɵɵelementEnd();
575
575
  } }
576
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template(rf, ctx) { if (rf & 1) {
576
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template(rf, ctx) { if (rf & 1) {
577
577
  const _r22 = i0.ɵɵgetCurrentView();
578
578
  i0.ɵɵelementStart(0, "kendo-dropdownlist", 134);
579
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r22); const model_r18 = i0.ɵɵnextContext(2).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ConfigurationID, $event) || (model_r18.ConfigurationID = $event); return i0.ɵɵresetView($event); });
580
- i0.ɵɵlistener("valueChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template_kendo_dropdownlist_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r22); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onConfigurationChange($event, ɵ$index_312_r16)); });
581
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_ng_template_1_Template, 2, 0, "ng-template", 135);
579
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r22); const model_r18 = i0.ɵɵnextContext(2).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ConfigurationID, $event) || (model_r18.ConfigurationID = $event); return i0.ɵɵresetView($event); });
580
+ i0.ɵɵlistener("valueChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template_kendo_dropdownlist_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r22); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onConfigurationChange($event, ɵ$index_312_r16)); });
581
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_ng_template_1_Template, 2, 0, "ng-template", 135);
582
582
  i0.ɵɵelementEnd();
583
583
  } if (rf & 2) {
584
584
  const model_r18 = i0.ɵɵnextContext(2).$implicit;
@@ -586,13 +586,13 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
586
586
  i0.ɵɵtwoWayProperty("ngModel", model_r18.ConfigurationID);
587
587
  i0.ɵɵproperty("name", "configurationId_" + ctx_r1.getModelTrackId(model_r18))("data", ctx_r1.availableConfigurations)("valuePrimitive", true)("filterable", true);
588
588
  } }
589
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Template(rf, ctx) { if (rf & 1) {
590
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_0_Template, 3, 0, "div", 132)(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template, 2, 5, "kendo-dropdownlist", 133);
589
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Template(rf, ctx) { if (rf & 1) {
590
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_0_Template, 3, 0, "div", 132)(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Conditional_1_Template, 2, 5, "kendo-dropdownlist", 133);
591
591
  } if (rf & 2) {
592
592
  const ctx_r1 = i0.ɵɵnextContext(6);
593
593
  i0.ɵɵconditional(ctx_r1.isLoadingConfigurations ? 0 : 1);
594
594
  } }
595
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_12_Template(rf, ctx) { if (rf & 1) {
595
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_12_Template(rf, ctx) { if (rf & 1) {
596
596
  i0.ɵɵelementStart(0, "span", 112);
597
597
  i0.ɵɵtext(1);
598
598
  i0.ɵɵelementEnd();
@@ -602,7 +602,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
602
602
  i0.ɵɵadvance();
603
603
  i0.ɵɵtextInterpolate(ctx_r1.getConfigurationDisplayName(model_r18.ConfigurationID));
604
604
  } }
605
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_14_Template(rf, ctx) { if (rf & 1) {
605
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_14_Template(rf, ctx) { if (rf & 1) {
606
606
  i0.ɵɵelementStart(0, "span", 114);
607
607
  i0.ɵɵtext(1);
608
608
  i0.ɵɵpipe(2, "date");
@@ -612,19 +612,19 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
612
612
  i0.ɵɵadvance();
613
613
  i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(2, 1, model_r18.__mj_CreatedAt, "short"));
614
614
  } }
615
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_15_Template(rf, ctx) { if (rf & 1) {
615
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_15_Template(rf, ctx) { if (rf & 1) {
616
616
  i0.ɵɵelementStart(0, "span", 115);
617
617
  i0.ɵɵtext(1, "New");
618
618
  i0.ɵɵelementEnd();
619
619
  } }
620
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template(rf, ctx) { if (rf & 1) {
620
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template(rf, ctx) { if (rf & 1) {
621
621
  const _r23 = i0.ɵɵgetCurrentView();
622
622
  i0.ɵɵelementStart(0, "button", 139);
623
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r23); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.moveModelUp(ɵ$index_312_r16)); });
623
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r23); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.moveModelUp(ɵ$index_312_r16)); });
624
624
  i0.ɵɵelement(1, "i", 140);
625
625
  i0.ɵɵelementEnd();
626
626
  i0.ɵɵelementStart(2, "button", 141);
627
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r23); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.moveModelDown(ɵ$index_312_r16)); });
627
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r23); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.moveModelDown(ɵ$index_312_r16)); });
628
628
  i0.ɵɵelement(3, "i", 142);
629
629
  i0.ɵɵelementEnd();
630
630
  } if (rf & 2) {
@@ -634,18 +634,18 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
634
634
  i0.ɵɵadvance(2);
635
635
  i0.ɵɵproperty("disabled", ɵ$index_312_r16 === ctx_r1.promptModels.length - 1);
636
636
  } }
637
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_2_Template(rf, ctx) { if (rf & 1) {
637
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_2_Template(rf, ctx) { if (rf & 1) {
638
638
  const _r24 = i0.ɵɵgetCurrentView();
639
639
  i0.ɵɵelementStart(0, "button", 143);
640
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r24); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.removePromptModel(ɵ$index_312_r16)); });
640
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r24); const ɵ$index_312_r16 = i0.ɵɵnextContext(2).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.removePromptModel(ɵ$index_312_r16)); });
641
641
  i0.ɵɵelement(1, "i", 144);
642
642
  i0.ɵɵelementEnd();
643
643
  } }
644
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Template(rf, ctx) { if (rf & 1) {
644
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Template(rf, ctx) { if (rf & 1) {
645
645
  i0.ɵɵelementStart(0, "div", 137);
646
- i0.ɵɵconditionalCreate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template, 4, 2);
646
+ i0.ɵɵconditionalCreate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_1_Template, 4, 2);
647
647
  i0.ɵɵelementEnd();
648
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_2_Template, 2, 0, "button", 138);
648
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Conditional_2_Template, 2, 0, "button", 138);
649
649
  } if (rf & 2) {
650
650
  const ctx_r1 = i0.ɵɵnextContext(6);
651
651
  i0.ɵɵadvance();
@@ -653,7 +653,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
653
653
  i0.ɵɵadvance();
654
654
  i0.ɵɵconditional(ctx_r1.UserCanDeletePromptModels ? 2 : -1);
655
655
  } }
656
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_22_Template(rf, ctx) { if (rf & 1) {
656
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_22_Template(rf, ctx) { if (rf & 1) {
657
657
  i0.ɵɵelementStart(0, "span")(1, "strong");
658
658
  i0.ɵɵtext(2, "Status:");
659
659
  i0.ɵɵelementEnd();
@@ -664,13 +664,13 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
664
664
  i0.ɵɵadvance(3);
665
665
  i0.ɵɵtextInterpolate1(" ", model_r18.Status);
666
666
  } }
667
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_5_Template(rf, ctx) { if (rf & 1) {
667
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_5_Template(rf, ctx) { if (rf & 1) {
668
668
  const _r26 = i0.ɵɵgetCurrentView();
669
669
  i0.ɵɵelementStart(0, "div")(1, "label", 149);
670
670
  i0.ɵɵtext(2, "Parallel Count");
671
671
  i0.ɵɵelementEnd();
672
672
  i0.ɵɵelementStart(3, "kendo-numerictextbox", 151);
673
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_5_Template_kendo_numerictextbox_ngModelChange_3_listener($event) { i0.ɵɵrestoreView(_r26); const model_r18 = i0.ɵɵnextContext(3).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ParallelCount, $event) || (model_r18.ParallelCount = $event); return i0.ɵɵresetView($event); });
673
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_5_Template_kendo_numerictextbox_ngModelChange_3_listener($event) { i0.ɵɵrestoreView(_r26); const model_r18 = i0.ɵɵnextContext(3).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ParallelCount, $event) || (model_r18.ParallelCount = $event); return i0.ɵɵresetView($event); });
674
674
  i0.ɵɵelementEnd()();
675
675
  } if (rf & 2) {
676
676
  const ctx_r16 = i0.ɵɵnextContext(3);
@@ -680,13 +680,13 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
680
680
  i0.ɵɵtwoWayProperty("ngModel", model_r18.ParallelCount);
681
681
  i0.ɵɵproperty("name", "parallelCount_" + ɵ$index_312_r16)("min", 1)("step", 1)("format", "n0");
682
682
  } }
683
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_6_Template(rf, ctx) { if (rf & 1) {
683
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_6_Template(rf, ctx) { if (rf & 1) {
684
684
  const _r27 = i0.ɵɵgetCurrentView();
685
685
  i0.ɵɵelementStart(0, "div")(1, "label", 149);
686
686
  i0.ɵɵtext(2, "Config Parameter");
687
687
  i0.ɵɵelementEnd();
688
688
  i0.ɵɵelementStart(3, "kendo-textbox", 152);
689
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_6_Template_kendo_textbox_ngModelChange_3_listener($event) { i0.ɵɵrestoreView(_r27); const model_r18 = i0.ɵɵnextContext(3).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ParallelConfigParam, $event) || (model_r18.ParallelConfigParam = $event); return i0.ɵɵresetView($event); });
689
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_6_Template_kendo_textbox_ngModelChange_3_listener($event) { i0.ɵɵrestoreView(_r27); const model_r18 = i0.ɵɵnextContext(3).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ParallelConfigParam, $event) || (model_r18.ParallelConfigParam = $event); return i0.ɵɵresetView($event); });
690
690
  i0.ɵɵelementEnd()();
691
691
  } if (rf & 2) {
692
692
  const ctx_r16 = i0.ɵɵnextContext(3);
@@ -696,16 +696,16 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
696
696
  i0.ɵɵtwoWayProperty("ngModel", model_r18.ParallelConfigParam);
697
697
  i0.ɵɵproperty("name", "parallelConfigParam_" + ɵ$index_312_r16);
698
698
  } }
699
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Template(rf, ctx) { if (rf & 1) {
699
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Template(rf, ctx) { if (rf & 1) {
700
700
  const _r25 = i0.ɵɵgetCurrentView();
701
701
  i0.ɵɵelementStart(0, "div", 147)(1, "div")(2, "label", 149);
702
702
  i0.ɵɵtext(3, "Parallel Mode");
703
703
  i0.ɵɵelementEnd();
704
704
  i0.ɵɵelementStart(4, "kendo-dropdownlist", 150);
705
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Template_kendo_dropdownlist_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r25); const model_r18 = i0.ɵɵnextContext(2).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ParallelizationMode, $event) || (model_r18.ParallelizationMode = $event); return i0.ɵɵresetView($event); });
705
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Template_kendo_dropdownlist_ngModelChange_4_listener($event) { i0.ɵɵrestoreView(_r25); const model_r18 = i0.ɵɵnextContext(2).$implicit; i0.ɵɵtwoWayBindingSet(model_r18.ParallelizationMode, $event) || (model_r18.ParallelizationMode = $event); return i0.ɵɵresetView($event); });
706
706
  i0.ɵɵelementEnd()();
707
- i0.ɵɵconditionalCreate(5, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_5_Template, 4, 5, "div");
708
- i0.ɵɵconditionalCreate(6, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_6_Template, 4, 2, "div");
707
+ i0.ɵɵconditionalCreate(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_5_Template, 4, 5, "div");
708
+ i0.ɵɵconditionalCreate(6, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Conditional_6_Template, 4, 2, "div");
709
709
  i0.ɵɵelementEnd();
710
710
  } if (rf & 2) {
711
711
  const ctx_r16 = i0.ɵɵnextContext(2);
@@ -719,7 +719,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
719
719
  i0.ɵɵadvance();
720
720
  i0.ɵɵconditional(model_r18.ParallelizationMode === "ConfigParam" ? 6 : -1);
721
721
  } }
722
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_1_Template(rf, ctx) { if (rf & 1) {
722
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_1_Template(rf, ctx) { if (rf & 1) {
723
723
  i0.ɵɵelementStart(0, "span")(1, "strong");
724
724
  i0.ɵɵtext(2, "Parallel Mode:");
725
725
  i0.ɵɵelementEnd();
@@ -730,7 +730,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
730
730
  i0.ɵɵadvance(3);
731
731
  i0.ɵɵtextInterpolate1(" ", model_r18.ParallelizationMode);
732
732
  } }
733
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_2_Template(rf, ctx) { if (rf & 1) {
733
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_2_Template(rf, ctx) { if (rf & 1) {
734
734
  i0.ɵɵelementStart(0, "span")(1, "strong");
735
735
  i0.ɵɵtext(2, "Parallel Count:");
736
736
  i0.ɵɵelementEnd();
@@ -741,7 +741,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
741
741
  i0.ɵɵadvance(3);
742
742
  i0.ɵɵtextInterpolate1(" ", model_r18.ParallelCount);
743
743
  } }
744
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_3_Template(rf, ctx) { if (rf & 1) {
744
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_3_Template(rf, ctx) { if (rf & 1) {
745
745
  i0.ɵɵelementStart(0, "span")(1, "strong");
746
746
  i0.ɵɵtext(2, "Config Param:");
747
747
  i0.ɵɵelementEnd();
@@ -752,11 +752,11 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
752
752
  i0.ɵɵadvance(3);
753
753
  i0.ɵɵtextInterpolate1(" ", model_r18.ParallelConfigParam);
754
754
  } }
755
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Template(rf, ctx) { if (rf & 1) {
755
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Template(rf, ctx) { if (rf & 1) {
756
756
  i0.ɵɵelementStart(0, "div", 148);
757
- i0.ɵɵconditionalCreate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_1_Template, 4, 1, "span");
758
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_2_Template, 4, 1, "span");
759
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_3_Template, 4, 1, "span");
757
+ i0.ɵɵconditionalCreate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_1_Template, 4, 1, "span");
758
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_2_Template, 4, 1, "span");
759
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Conditional_3_Template, 4, 1, "span");
760
760
  i0.ɵɵelementEnd();
761
761
  } if (rf & 2) {
762
762
  const model_r18 = i0.ɵɵnextContext(2).$implicit;
@@ -767,46 +767,46 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
767
767
  i0.ɵɵadvance();
768
768
  i0.ɵɵconditional(model_r18.ParallelConfigParam ? 3 : -1);
769
769
  } }
770
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Template(rf, ctx) { if (rf & 1) {
770
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Template(rf, ctx) { if (rf & 1) {
771
771
  i0.ɵɵelementStart(0, "div", 119)(1, "div", 145);
772
772
  i0.ɵɵelement(2, "i", 146);
773
773
  i0.ɵɵtext(3, " Model-Specific Parallel Execution ");
774
774
  i0.ɵɵelementEnd();
775
- i0.ɵɵconditionalCreate(4, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Template, 7, 13, "div", 147)(5, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Template, 4, 3, "div", 148);
775
+ i0.ɵɵconditionalCreate(4, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_4_Template, 7, 13, "div", 147)(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Conditional_5_Template, 4, 3, "div", 148);
776
776
  i0.ɵɵelementEnd();
777
777
  } if (rf & 2) {
778
778
  const ctx_r1 = i0.ɵɵnextContext(6);
779
779
  i0.ɵɵadvance(4);
780
780
  i0.ɵɵconditional(ctx_r1.EditMode ? 4 : 5);
781
781
  } }
782
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template(rf, ctx) { if (rf & 1) {
782
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template(rf, ctx) { if (rf & 1) {
783
783
  const _r15 = i0.ɵɵgetCurrentView();
784
784
  i0.ɵɵelementStart(0, "div", 105);
785
- i0.ɵɵlistener("dragstart", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_dragstart_0_listener($event) { const ɵ$index_312_r16 = i0.ɵɵrestoreView(_r15).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDragStart($event, ɵ$index_312_r16)); })("dragover", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_dragover_0_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDragOver($event)); })("drop", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_drop_0_listener($event) { const ɵ$index_312_r16 = i0.ɵɵrestoreView(_r15).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDrop($event, ɵ$index_312_r16)); })("dragend", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_dragend_0_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDragEnd($event)); });
785
+ i0.ɵɵlistener("dragstart", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_dragstart_0_listener($event) { const ɵ$index_312_r16 = i0.ɵɵrestoreView(_r15).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDragStart($event, ɵ$index_312_r16)); })("dragover", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_dragover_0_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDragOver($event)); })("drop", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_drop_0_listener($event) { const ɵ$index_312_r16 = i0.ɵɵrestoreView(_r15).$index; const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDrop($event, ɵ$index_312_r16)); })("dragend", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template_div_dragend_0_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onDragEnd($event)); });
786
786
  i0.ɵɵelementStart(1, "div", 106);
787
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_2_Template, 3, 1)(3, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_3_Template, 2, 3, "span", 107);
787
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_2_Template, 3, 1)(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_3_Template, 2, 3, "span", 107);
788
788
  i0.ɵɵelementEnd();
789
789
  i0.ɵɵelementStart(4, "div", 108);
790
- i0.ɵɵconditionalCreate(5, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template, 1, 5, "kendo-dropdownlist", 109)(6, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_6_Template, 2, 1, "span", 23);
790
+ i0.ɵɵconditionalCreate(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_5_Template, 1, 5, "kendo-dropdownlist", 109)(6, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_6_Template, 2, 1, "span", 23);
791
791
  i0.ɵɵelementEnd();
792
792
  i0.ɵɵelementStart(7, "div", 110);
793
- i0.ɵɵconditionalCreate(8, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Template, 2, 1)(9, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Template, 2, 1);
793
+ i0.ɵɵconditionalCreate(8, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_8_Template, 2, 1)(9, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_9_Template, 2, 1);
794
794
  i0.ɵɵelementEnd();
795
795
  i0.ɵɵelementStart(10, "div", 111);
796
- i0.ɵɵconditionalCreate(11, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Template, 2, 1)(12, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_12_Template, 2, 1, "span", 112);
796
+ i0.ɵɵconditionalCreate(11, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_11_Template, 2, 1)(12, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_12_Template, 2, 1, "span", 112);
797
797
  i0.ɵɵelementEnd();
798
798
  i0.ɵɵelementStart(13, "div", 113);
799
- i0.ɵɵconditionalCreate(14, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_14_Template, 3, 4, "span", 114)(15, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_15_Template, 2, 0, "span", 115);
799
+ i0.ɵɵconditionalCreate(14, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_14_Template, 3, 4, "span", 114)(15, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_15_Template, 2, 0, "span", 115);
800
800
  i0.ɵɵelementEnd();
801
801
  i0.ɵɵelementStart(16, "div", 116);
802
- i0.ɵɵconditionalCreate(17, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Template, 3, 2);
802
+ i0.ɵɵconditionalCreate(17, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_17_Template, 3, 2);
803
803
  i0.ɵɵelementEnd()();
804
804
  i0.ɵɵelementStart(18, "div", 117);
805
805
  i0.ɵɵelement(19, "div");
806
806
  i0.ɵɵelementStart(20, "div")(21, "div", 118);
807
- i0.ɵɵconditionalCreate(22, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_22_Template, 4, 1, "span");
807
+ i0.ɵɵconditionalCreate(22, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_22_Template, 4, 1, "span");
808
808
  i0.ɵɵelementEnd();
809
- i0.ɵɵconditionalCreate(23, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Template, 6, 1, "div", 119);
809
+ i0.ɵɵconditionalCreate(23, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Conditional_23_Template, 6, 1, "div", 119);
810
810
  i0.ɵɵelementEnd()();
811
811
  } if (rf & 2) {
812
812
  const model_r18 = ctx.$implicit;
@@ -831,16 +831,16 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
831
831
  i0.ɵɵadvance();
832
832
  i0.ɵɵconditional(ctx_r1.record.ParallelizationMode === "ModelSpecific" ? 23 : -1);
833
833
  } }
834
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_18_Template(rf, ctx) { if (rf & 1) {
834
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_18_Template(rf, ctx) { if (rf & 1) {
835
835
  const _r28 = i0.ɵɵgetCurrentView();
836
836
  i0.ɵɵelementStart(0, "div", 103)(1, "button", 153);
837
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_18_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r28); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.addNewModel()); });
837
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_18_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r28); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.addNewModel()); });
838
838
  i0.ɵɵelement(2, "i", 74);
839
839
  i0.ɵɵtext(3, " Add Model ");
840
840
  i0.ɵɵelementEnd()();
841
841
  } }
842
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Template(rf, ctx) { if (rf & 1) {
843
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_0_Template, 3, 0, "div", 99);
842
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Template(rf, ctx) { if (rf & 1) {
843
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_0_Template, 3, 0, "div", 99);
844
844
  i0.ɵɵelementStart(1, "div", 100)(2, "div", 101);
845
845
  i0.ɵɵelement(3, "i", 102);
846
846
  i0.ɵɵelementEnd();
@@ -861,8 +861,8 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
861
861
  i0.ɵɵelementStart(14, "div");
862
862
  i0.ɵɵtext(15, "Actions");
863
863
  i0.ɵɵelementEnd()();
864
- i0.ɵɵrepeaterCreate(16, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template, 24, 15, null, null, _forTrack0, true);
865
- i0.ɵɵconditionalCreate(18, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_18_Template, 4, 0, "div", 103);
864
+ i0.ɵɵrepeaterCreate(16, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_For_17_Template, 24, 15, null, null, _forTrack0, true);
865
+ i0.ɵɵconditionalCreate(18, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Conditional_18_Template, 4, 0, "div", 103);
866
866
  } if (rf & 2) {
867
867
  const ctx_r1 = i0.ɵɵnextContext(4);
868
868
  i0.ɵɵconditional(ctx_r1.promptModels.length > 1 ? 0 : -1);
@@ -871,17 +871,17 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_
871
871
  i0.ɵɵadvance(2);
872
872
  i0.ɵɵconditional(ctx_r1.EditMode && ctx_r1.UserCanCreatePromptModels ? 18 : -1);
873
873
  } }
874
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Template(rf, ctx) { if (rf & 1) {
875
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Template, 4, 1, "div", 95)(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Template, 19, 2);
874
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Template(rf, ctx) { if (rf & 1) {
875
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_0_Template, 4, 1, "div", 95)(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Conditional_1_Template, 19, 2);
876
876
  } if (rf & 2) {
877
877
  const ctx_r1 = i0.ɵɵnextContext(3);
878
878
  i0.ɵɵconditional(ctx_r1.promptModels.length === 0 ? 0 : 1);
879
879
  } }
880
- function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Template(rf, ctx) { if (rf & 1) {
880
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Template(rf, ctx) { if (rf & 1) {
881
881
  i0.ɵɵelementStart(0, "kendo-expansionpanel", 29);
882
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Template, 7, 1, "ng-template", 30);
882
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_ng_template_1_Template, 7, 1, "ng-template", 30);
883
883
  i0.ɵɵelementStart(2, "div", 36)(3, "div", 89);
884
- i0.ɵɵconditionalCreate(4, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_4_Template, 3, 0, "div", 90)(5, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Template, 2, 1);
884
+ i0.ɵɵconditionalCreate(4, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_4_Template, 3, 0, "div", 90)(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Conditional_5_Template, 2, 1);
885
885
  i0.ɵɵelementEnd()()();
886
886
  } if (rf & 2) {
887
887
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -889,48 +889,48 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_42_Template(rf,
889
889
  i0.ɵɵadvance(4);
890
890
  i0.ɵɵconditional(ctx_r1.isLoadingModels ? 4 : 5);
891
891
  } }
892
- function AIPromptFormComponentExtended_Conditional_2_ng_template_44_Template(rf, ctx) { if (rf & 1) {
892
+ function MJAIPromptFormComponentExtended_Conditional_2_ng_template_44_Template(rf, ctx) { if (rf & 1) {
893
893
  i0.ɵɵelementStart(0, "span", 64);
894
894
  i0.ɵɵelement(1, "i", 154);
895
895
  i0.ɵɵtext(2, " Advanced Configuration ");
896
896
  i0.ɵɵelementEnd();
897
897
  } }
898
- function AIPromptFormComponentExtended_Conditional_2_Conditional_49_Template(rf, ctx) { if (rf & 1) {
898
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_49_Template(rf, ctx) { if (rf & 1) {
899
899
  i0.ɵɵelement(0, "mj-form-field", 39);
900
900
  } if (rf & 2) {
901
901
  const ctx_r1 = i0.ɵɵnextContext(2);
902
902
  i0.ɵɵproperty("Record", ctx_r1.record)("ShowLabel", true)("EditMode", ctx_r1.EditMode);
903
903
  } }
904
- function AIPromptFormComponentExtended_Conditional_2_Conditional_50_Template(rf, ctx) { if (rf & 1) {
904
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_50_Template(rf, ctx) { if (rf & 1) {
905
905
  i0.ɵɵelement(0, "mj-form-field", 40);
906
906
  } if (rf & 2) {
907
907
  const ctx_r1 = i0.ɵɵnextContext(2);
908
908
  i0.ɵɵproperty("Record", ctx_r1.record)("ShowLabel", true)("EditMode", ctx_r1.EditMode);
909
909
  } }
910
- function AIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_0_Template(rf, ctx) { if (rf & 1) {
910
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_0_Template(rf, ctx) { if (rf & 1) {
911
911
  i0.ɵɵelementStart(0, "div", 155);
912
912
  i0.ɵɵelement(1, "i", 55);
913
913
  i0.ɵɵtext(2, " Loading prompts... ");
914
914
  i0.ɵɵelementEnd();
915
915
  } }
916
- function AIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template(rf, ctx) { if (rf & 1) {
916
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template(rf, ctx) { if (rf & 1) {
917
917
  const _r29 = i0.ɵɵgetCurrentView();
918
918
  i0.ɵɵelementStart(0, "kendo-dropdowntree", 157);
919
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template_kendo_dropdowntree_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r29); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.record.ResultSelectorPromptID, $event) || (ctx_r1.record.ResultSelectorPromptID = $event); return i0.ɵɵresetView($event); });
920
- i0.ɵɵlistener("valueChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template_kendo_dropdowntree_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r29); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onResultSelectorChange($event)); });
919
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template_kendo_dropdowntree_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r29); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.record.ResultSelectorPromptID, $event) || (ctx_r1.record.ResultSelectorPromptID = $event); return i0.ɵɵresetView($event); });
920
+ i0.ɵɵlistener("valueChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template_kendo_dropdowntree_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r29); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onResultSelectorChange($event)); });
921
921
  i0.ɵɵelementEnd();
922
922
  } if (rf & 2) {
923
923
  const ctx_r1 = i0.ɵɵnextContext(3);
924
924
  i0.ɵɵtwoWayProperty("ngModel", ctx_r1.record.ResultSelectorPromptID);
925
925
  i0.ɵɵproperty("data", ctx_r1.resultSelectorTreeData)("valuePrimitive", true)("filterable", true);
926
926
  } }
927
- function AIPromptFormComponentExtended_Conditional_2_Conditional_59_Template(rf, ctx) { if (rf & 1) {
928
- i0.ɵɵconditionalCreate(0, AIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_0_Template, 3, 0, "div", 155)(1, AIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template, 1, 4, "kendo-dropdowntree", 156);
927
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Template(rf, ctx) { if (rf & 1) {
928
+ i0.ɵɵconditionalCreate(0, MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_0_Template, 3, 0, "div", 155)(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Conditional_1_Template, 1, 4, "kendo-dropdowntree", 156);
929
929
  } if (rf & 2) {
930
930
  const ctx_r1 = i0.ɵɵnextContext(2);
931
931
  i0.ɵɵconditional(ctx_r1.isLoadingResultSelectorData ? 0 : 1);
932
932
  } }
933
- function AIPromptFormComponentExtended_Conditional_2_Conditional_60_Template(rf, ctx) { if (rf & 1) {
933
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_60_Template(rf, ctx) { if (rf & 1) {
934
934
  i0.ɵɵelementStart(0, "span", 47);
935
935
  i0.ɵɵtext(1);
936
936
  i0.ɵɵelementEnd();
@@ -939,7 +939,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_60_Template(rf,
939
939
  i0.ɵɵadvance();
940
940
  i0.ɵɵtextInterpolate(ctx_r1.getPromptDisplayName(ctx_r1.record.ResultSelectorPromptID || "") || "None selected");
941
941
  } }
942
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_ng_template_1_Template(rf, ctx) { if (rf & 1) {
942
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_ng_template_1_Template(rf, ctx) { if (rf & 1) {
943
943
  i0.ɵɵelementStart(0, "span", 64);
944
944
  i0.ɵɵelement(1, "i", 158);
945
945
  i0.ɵɵtext(2, " Template Parameters ");
@@ -955,34 +955,34 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_ng_template_
955
955
  i0.ɵɵadvance(4);
956
956
  i0.ɵɵtextInterpolate1(" ", ctx_r1.templateParams.length, " ");
957
957
  } }
958
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_3_Template(rf, ctx) { if (rf & 1) {
958
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_3_Template(rf, ctx) { if (rf & 1) {
959
959
  i0.ɵɵelementStart(0, "div", 90);
960
960
  i0.ɵɵelement(1, "i", 55);
961
961
  i0.ɵɵtext(2, " Loading template parameters... ");
962
962
  i0.ɵɵelementEnd();
963
963
  } }
964
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_4_Template(rf, ctx) { if (rf & 1) {
964
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_4_Template(rf, ctx) { if (rf & 1) {
965
965
  i0.ɵɵelementStart(0, "div", 95);
966
966
  i0.ɵɵelement(1, "i", 96);
967
967
  i0.ɵɵtext(2, " This template has no parameters defined ");
968
968
  i0.ɵɵelementEnd();
969
969
  } }
970
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
970
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
971
971
  i0.ɵɵelementStart(0, "span", 172);
972
972
  i0.ɵɵtext(1, "*");
973
973
  i0.ɵɵelementEnd();
974
974
  } }
975
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
975
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
976
976
  i0.ɵɵelementStart(0, "span", 174);
977
977
  i0.ɵɵtext(1, "Required");
978
978
  i0.ɵɵelementEnd();
979
979
  } }
980
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_11_Template(rf, ctx) { if (rf & 1) {
980
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_11_Template(rf, ctx) { if (rf & 1) {
981
981
  i0.ɵɵelementStart(0, "span", 175);
982
982
  i0.ɵɵtext(1, "Optional");
983
983
  i0.ɵɵelementEnd();
984
984
  } }
985
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_12_Template(rf, ctx) { if (rf & 1) {
985
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_12_Template(rf, ctx) { if (rf & 1) {
986
986
  i0.ɵɵelementStart(0, "p", 176);
987
987
  i0.ɵɵtext(1);
988
988
  i0.ɵɵelementEnd();
@@ -991,7 +991,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
991
991
  i0.ɵɵadvance();
992
992
  i0.ɵɵtextInterpolate1(" ", param_r30.Description, " ");
993
993
  } }
994
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_18_Template(rf, ctx) { if (rf & 1) {
994
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_18_Template(rf, ctx) { if (rf & 1) {
995
995
  i0.ɵɵelementStart(0, "div", 181)(1, "label", 182);
996
996
  i0.ɵɵtext(2, "Default Value");
997
997
  i0.ɵɵelementEnd();
@@ -1003,7 +1003,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
1003
1003
  i0.ɵɵadvance(4);
1004
1004
  i0.ɵɵtextInterpolate(param_r30.DefaultValue);
1005
1005
  } }
1006
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_19_Template(rf, ctx) { if (rf & 1) {
1006
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_19_Template(rf, ctx) { if (rf & 1) {
1007
1007
  i0.ɵɵelementStart(0, "div", 181)(1, "label", 182);
1008
1008
  i0.ɵɵtext(2, "Entity");
1009
1009
  i0.ɵɵelementEnd();
@@ -1015,19 +1015,19 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
1015
1015
  i0.ɵɵadvance(4);
1016
1016
  i0.ɵɵtextInterpolate(param_r30.Entity || "Entity ID: " + param_r30.EntityID);
1017
1017
  } }
1018
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1018
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1019
1019
  i0.ɵɵtext(0);
1020
1020
  } if (rf & 2) {
1021
1021
  const param_r30 = i0.ɵɵnextContext(2).$implicit;
1022
1022
  i0.ɵɵtextInterpolate1(" (", param_r30.LinkedParameterField, ") ");
1023
1023
  } }
1024
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Template(rf, ctx) { if (rf & 1) {
1024
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Template(rf, ctx) { if (rf & 1) {
1025
1025
  i0.ɵɵelementStart(0, "div", 181)(1, "label", 182);
1026
1026
  i0.ɵɵtext(2, "Linked To");
1027
1027
  i0.ɵɵelementEnd();
1028
1028
  i0.ɵɵelementStart(3, "span", 177);
1029
1029
  i0.ɵɵtext(4);
1030
- i0.ɵɵconditionalCreate(5, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Conditional_5_Template, 1, 1);
1030
+ i0.ɵɵconditionalCreate(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Conditional_5_Template, 1, 1);
1031
1031
  i0.ɵɵelementEnd()();
1032
1032
  } if (rf & 2) {
1033
1033
  const param_r30 = i0.ɵɵnextContext().$implicit;
@@ -1036,7 +1036,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
1036
1036
  i0.ɵɵadvance();
1037
1037
  i0.ɵɵconditional(param_r30.LinkedParameterField ? 5 : -1);
1038
1038
  } }
1039
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_21_Template(rf, ctx) { if (rf & 1) {
1039
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_21_Template(rf, ctx) { if (rf & 1) {
1040
1040
  i0.ɵɵelementStart(0, "div", 181)(1, "label", 182);
1041
1041
  i0.ɵɵtext(2, "Filter");
1042
1042
  i0.ɵɵelementEnd();
@@ -1048,7 +1048,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
1048
1048
  i0.ɵɵadvance(4);
1049
1049
  i0.ɵɵtextInterpolate(param_r30.ExtraFilter);
1050
1050
  } }
1051
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_22_Template(rf, ctx) { if (rf & 1) {
1051
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_22_Template(rf, ctx) { if (rf & 1) {
1052
1052
  i0.ɵɵelementStart(0, "div", 181)(1, "label", 182);
1053
1053
  i0.ɵɵtext(2, "Record ID");
1054
1054
  i0.ɵɵelementEnd();
@@ -1060,29 +1060,29 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
1060
1060
  i0.ɵɵadvance(4);
1061
1061
  i0.ɵɵtextInterpolate(param_r30.RecordID);
1062
1062
  } }
1063
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Template(rf, ctx) { if (rf & 1) {
1063
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Template(rf, ctx) { if (rf & 1) {
1064
1064
  i0.ɵɵelementStart(0, "div", 167)(1, "div", 168)(2, "div", 169);
1065
1065
  i0.ɵɵelement(3, "i", 170);
1066
1066
  i0.ɵɵelementStart(4, "h6", 171);
1067
1067
  i0.ɵɵtext(5);
1068
- i0.ɵɵconditionalCreate(6, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_6_Template, 2, 0, "span", 172);
1068
+ i0.ɵɵconditionalCreate(6, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_6_Template, 2, 0, "span", 172);
1069
1069
  i0.ɵɵelementEnd()();
1070
1070
  i0.ɵɵelementStart(7, "div", 169)(8, "span", 173);
1071
1071
  i0.ɵɵtext(9);
1072
1072
  i0.ɵɵelementEnd();
1073
- i0.ɵɵconditionalCreate(10, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_10_Template, 2, 0, "span", 174)(11, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_11_Template, 2, 0, "span", 175);
1073
+ i0.ɵɵconditionalCreate(10, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_10_Template, 2, 0, "span", 174)(11, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_11_Template, 2, 0, "span", 175);
1074
1074
  i0.ɵɵelementEnd()();
1075
- i0.ɵɵconditionalCreate(12, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_12_Template, 2, 1, "p", 176);
1075
+ i0.ɵɵconditionalCreate(12, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_12_Template, 2, 1, "p", 176);
1076
1076
  i0.ɵɵelementStart(13, "div", 177)(14, "span", 178);
1077
1077
  i0.ɵɵelement(15, "i", 179);
1078
1078
  i0.ɵɵtext(16);
1079
1079
  i0.ɵɵelementEnd()();
1080
1080
  i0.ɵɵelementStart(17, "div", 180);
1081
- i0.ɵɵconditionalCreate(18, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_18_Template, 5, 1, "div", 181);
1082
- i0.ɵɵconditionalCreate(19, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_19_Template, 5, 1, "div", 181);
1083
- i0.ɵɵconditionalCreate(20, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Template, 6, 2, "div", 181);
1084
- i0.ɵɵconditionalCreate(21, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_21_Template, 5, 1, "div", 181);
1085
- i0.ɵɵconditionalCreate(22, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_22_Template, 5, 1, "div", 181);
1081
+ i0.ɵɵconditionalCreate(18, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_18_Template, 5, 1, "div", 181);
1082
+ i0.ɵɵconditionalCreate(19, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_19_Template, 5, 1, "div", 181);
1083
+ i0.ɵɵconditionalCreate(20, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_20_Template, 6, 2, "div", 181);
1084
+ i0.ɵɵconditionalCreate(21, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_21_Template, 5, 1, "div", 181);
1085
+ i0.ɵɵconditionalCreate(22, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Conditional_22_Template, 5, 1, "div", 181);
1086
1086
  i0.ɵɵelementEnd()();
1087
1087
  } if (rf & 2) {
1088
1088
  const param_r30 = ctx.$implicit;
@@ -1116,9 +1116,9 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
1116
1116
  i0.ɵɵadvance();
1117
1117
  i0.ɵɵconditional(param_r30.RecordID ? 22 : -1);
1118
1118
  } }
1119
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1119
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1120
1120
  i0.ɵɵelementStart(0, "div", 161);
1121
- i0.ɵɵrepeaterCreate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Template, 23, 19, "div", 162, _forTrack1);
1121
+ i0.ɵɵrepeaterCreate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_For_2_Template, 23, 19, "div", 162, _forTrack1);
1122
1122
  i0.ɵɵelementEnd();
1123
1123
  i0.ɵɵelementStart(3, "div", 163)(4, "div", 164);
1124
1124
  i0.ɵɵelement(5, "i", 165);
@@ -1132,11 +1132,11 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_
1132
1132
  i0.ɵɵadvance();
1133
1133
  i0.ɵɵrepeater(ctx_r1.templateParams);
1134
1134
  } }
1135
- function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Template(rf, ctx) { if (rf & 1) {
1135
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Template(rf, ctx) { if (rf & 1) {
1136
1136
  i0.ɵɵelementStart(0, "kendo-expansionpanel", 29);
1137
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_61_ng_template_1_Template, 8, 1, "ng-template", 30);
1137
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_ng_template_1_Template, 8, 1, "ng-template", 30);
1138
1138
  i0.ɵɵelementStart(2, "div", 36);
1139
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_3_Template, 3, 0, "div", 90)(4, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_4_Template, 3, 0, "div", 95)(5, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_Template, 10, 0);
1139
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_3_Template, 3, 0, "div", 90)(4, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_4_Template, 3, 0, "div", 95)(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Conditional_5_Template, 10, 0);
1140
1140
  i0.ɵɵelementEnd()();
1141
1141
  } if (rf & 2) {
1142
1142
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -1144,7 +1144,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_61_Template(rf,
1144
1144
  i0.ɵɵadvance(3);
1145
1145
  i0.ɵɵconditional(ctx_r1.isLoadingTemplateParams ? 3 : ctx_r1.templateParams.length === 0 ? 4 : 5);
1146
1146
  } }
1147
- function AIPromptFormComponentExtended_Conditional_2_Conditional_62_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1147
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1148
1148
  i0.ɵɵelementStart(0, "span", 64);
1149
1149
  i0.ɵɵelement(1, "i", 22);
1150
1150
  i0.ɵɵtext(2, " Output Example (JSON) ");
@@ -1152,10 +1152,10 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_62_ng_template_
1152
1152
  i0.ɵɵtext(4, "\u2022 Required for object output type");
1153
1153
  i0.ɵɵelementEnd()();
1154
1154
  } }
1155
- function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1155
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1156
1156
  const _r31 = i0.ɵɵgetCurrentView();
1157
1157
  i0.ɵɵelementStart(0, "mj-code-editor", 189);
1158
- i0.ɵɵtwoWayListener("ngModelChange", function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_3_Template_mj_code_editor_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r31); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.record.OutputExample, $event) || (ctx_r1.record.OutputExample = $event); return i0.ɵɵresetView($event); });
1158
+ i0.ɵɵtwoWayListener("ngModelChange", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_3_Template_mj_code_editor_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r31); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.record.OutputExample, $event) || (ctx_r1.record.OutputExample = $event); return i0.ɵɵresetView($event); });
1159
1159
  i0.ɵɵelementEnd();
1160
1160
  i0.ɵɵelementStart(1, "div", 190);
1161
1161
  i0.ɵɵelement(2, "i", 96);
@@ -1165,7 +1165,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_
1165
1165
  const ctx_r1 = i0.ɵɵnextContext(3);
1166
1166
  i0.ɵɵtwoWayProperty("ngModel", ctx_r1.record.OutputExample);
1167
1167
  } }
1168
- function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_4_Template(rf, ctx) { if (rf & 1) {
1168
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_4_Template(rf, ctx) { if (rf & 1) {
1169
1169
  i0.ɵɵelementStart(0, "div", 186);
1170
1170
  i0.ɵɵtext(1);
1171
1171
  i0.ɵɵelementEnd();
@@ -1174,17 +1174,17 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_
1174
1174
  i0.ɵɵadvance();
1175
1175
  i0.ɵɵtextInterpolate(ctx_r1.record.OutputExample);
1176
1176
  } }
1177
- function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1177
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1178
1178
  i0.ɵɵelementStart(0, "div", 187);
1179
1179
  i0.ɵɵelement(1, "i", 191);
1180
1180
  i0.ɵɵtext(2, " Output example is required when output type is 'object' ");
1181
1181
  i0.ɵɵelementEnd();
1182
1182
  } }
1183
- function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Template(rf, ctx) { if (rf & 1) {
1183
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Template(rf, ctx) { if (rf & 1) {
1184
1184
  i0.ɵɵelementStart(0, "kendo-expansionpanel", 29);
1185
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_62_ng_template_1_Template, 5, 0, "ng-template", 30);
1185
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_ng_template_1_Template, 5, 0, "ng-template", 30);
1186
1186
  i0.ɵɵelementStart(2, "div", 185);
1187
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_3_Template, 4, 1)(4, AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_4_Template, 2, 1, "div", 186)(5, AIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_5_Template, 3, 0, "div", 187);
1187
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_3_Template, 4, 1)(4, MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_4_Template, 2, 1, "div", 186)(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Conditional_5_Template, 3, 0, "div", 187);
1188
1188
  i0.ɵɵelementEnd()();
1189
1189
  } if (rf & 2) {
1190
1190
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -1192,7 +1192,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_62_Template(rf,
1192
1192
  i0.ɵɵadvance(3);
1193
1193
  i0.ɵɵconditional(ctx_r1.EditMode ? 3 : ctx_r1.record.OutputExample ? 4 : 5);
1194
1194
  } }
1195
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1195
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1196
1196
  i0.ɵɵelementStart(0, "span", 194);
1197
1197
  i0.ɵɵtext(1);
1198
1198
  i0.ɵɵelementEnd();
@@ -1201,25 +1201,25 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_
1201
1201
  i0.ɵɵadvance();
1202
1202
  i0.ɵɵtextInterpolate1("(", ctx_r1.executionHistory.length, ")");
1203
1203
  } }
1204
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1204
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1205
1205
  i0.ɵɵelementStart(0, "span", 64);
1206
1206
  i0.ɵɵelement(1, "i", 193);
1207
1207
  i0.ɵɵtext(2, " Execution History ");
1208
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Conditional_3_Template, 2, 1, "span", 194);
1208
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Conditional_3_Template, 2, 1, "span", 194);
1209
1209
  i0.ɵɵelementEnd();
1210
1210
  } if (rf & 2) {
1211
1211
  const ctx_r1 = i0.ɵɵnextContext(3);
1212
1212
  i0.ɵɵadvance(3);
1213
1213
  i0.ɵɵconditional(ctx_r1.executionHistory.length > 0 ? 3 : -1);
1214
1214
  } }
1215
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1215
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1216
1216
  i0.ɵɵelementStart(0, "div", 192);
1217
1217
  i0.ɵɵelement(1, "i", 195);
1218
1218
  i0.ɵɵelementStart(2, "p");
1219
1219
  i0.ɵɵtext(3, "Loading execution history...");
1220
1220
  i0.ɵɵelementEnd()();
1221
1221
  } }
1222
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_4_Template(rf, ctx) { if (rf & 1) {
1222
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_4_Template(rf, ctx) { if (rf & 1) {
1223
1223
  i0.ɵɵelementStart(0, "div", 192);
1224
1224
  i0.ɵɵelement(1, "i", 196);
1225
1225
  i0.ɵɵelementStart(2, "p");
@@ -1229,31 +1229,31 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_
1229
1229
  i0.ɵɵtext(5, "Run this prompt to see execution history here");
1230
1230
  i0.ɵɵelementEnd()();
1231
1231
  } }
1232
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_9_Template(rf, ctx) { if (rf & 1) {
1232
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_9_Template(rf, ctx) { if (rf & 1) {
1233
1233
  i0.ɵɵelement(0, "i", 209);
1234
1234
  } if (rf & 2) {
1235
1235
  const ctx_r1 = i0.ɵɵnextContext(4);
1236
1236
  i0.ɵɵclassMap("fa-solid fa-sort-" + (ctx_r1.historySortDirection === "asc" ? "up" : "down"));
1237
1237
  } }
1238
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_12_Template(rf, ctx) { if (rf & 1) {
1238
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_12_Template(rf, ctx) { if (rf & 1) {
1239
1239
  i0.ɵɵelement(0, "i", 209);
1240
1240
  } if (rf & 2) {
1241
1241
  const ctx_r1 = i0.ɵɵnextContext(4);
1242
1242
  i0.ɵɵclassMap("fa-solid fa-sort-" + (ctx_r1.historySortDirection === "asc" ? "up" : "down"));
1243
1243
  } }
1244
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_15_Template(rf, ctx) { if (rf & 1) {
1244
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_15_Template(rf, ctx) { if (rf & 1) {
1245
1245
  i0.ɵɵelement(0, "i", 209);
1246
1246
  } if (rf & 2) {
1247
1247
  const ctx_r1 = i0.ɵɵnextContext(4);
1248
1248
  i0.ɵɵclassMap("fa-solid fa-sort-" + (ctx_r1.historySortDirection === "asc" ? "up" : "down"));
1249
1249
  } }
1250
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_18_Template(rf, ctx) { if (rf & 1) {
1250
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_18_Template(rf, ctx) { if (rf & 1) {
1251
1251
  i0.ɵɵelement(0, "i", 209);
1252
1252
  } if (rf & 2) {
1253
1253
  const ctx_r1 = i0.ɵɵnextContext(4);
1254
1254
  i0.ɵɵclassMap("fa-solid fa-sort-" + (ctx_r1.historySortDirection === "asc" ? "up" : "down"));
1255
1255
  } }
1256
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Conditional_20_Template(rf, ctx) { if (rf & 1) {
1256
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Conditional_20_Template(rf, ctx) { if (rf & 1) {
1257
1257
  i0.ɵɵelementStart(0, "span", 216);
1258
1258
  i0.ɵɵtext(1);
1259
1259
  i0.ɵɵelementEnd();
@@ -1262,7 +1262,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_
1262
1262
  i0.ɵɵadvance();
1263
1263
  i0.ɵɵtextInterpolate1(" ", run_r34.RunType, " ");
1264
1264
  } }
1265
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Template(rf, ctx) { if (rf & 1) {
1265
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Template(rf, ctx) { if (rf & 1) {
1266
1266
  const _r33 = i0.ɵɵgetCurrentView();
1267
1267
  i0.ɵɵelementStart(0, "tr", 210)(1, "td", 211)(2, "span", 212);
1268
1268
  i0.ɵɵelement(3, "i");
@@ -1287,10 +1287,10 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_
1287
1287
  i0.ɵɵtext(18);
1288
1288
  i0.ɵɵelementEnd();
1289
1289
  i0.ɵɵelementStart(19, "td", 215);
1290
- i0.ɵɵconditionalCreate(20, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Conditional_20_Template, 2, 1, "span", 216);
1290
+ i0.ɵɵconditionalCreate(20, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Conditional_20_Template, 2, 1, "span", 216);
1291
1291
  i0.ɵɵelementEnd();
1292
1292
  i0.ɵɵelementStart(21, "td", 215)(22, "button", 217);
1293
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Template_button_click_22_listener() { const run_r34 = i0.ɵɵrestoreView(_r33).$implicit; const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.navigateToPromptRun(run_r34.ID)); });
1293
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Template_button_click_22_listener() { const run_r34 = i0.ɵɵrestoreView(_r33).$implicit; const ctx_r1 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r1.navigateToPromptRun(run_r34.ID)); });
1294
1294
  i0.ɵɵelement(23, "i", 218);
1295
1295
  i0.ɵɵelementEnd()()();
1296
1296
  } if (rf & 2) {
@@ -1318,7 +1318,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_
1318
1318
  i0.ɵɵadvance(2);
1319
1319
  i0.ɵɵconditional(run_r34.RunType ? 20 : -1);
1320
1320
  } }
1321
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1321
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template(rf, ctx) { if (rf & 1) {
1322
1322
  const _r32 = i0.ɵɵgetCurrentView();
1323
1323
  i0.ɵɵelementStart(0, "div", 197)(1, "div", 131);
1324
1324
  i0.ɵɵtext(2);
@@ -1327,24 +1327,24 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_
1327
1327
  i0.ɵɵtext(5, "Sort by:");
1328
1328
  i0.ɵɵelementEnd();
1329
1329
  i0.ɵɵelementStart(6, "kendo-buttongroup", 199)(7, "button", 200);
1330
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("runAt")); });
1330
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("runAt")); });
1331
1331
  i0.ɵɵtext(8, " Date ");
1332
- i0.ɵɵconditionalCreate(9, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_9_Template, 1, 2, "i", 201);
1332
+ i0.ɵɵconditionalCreate(9, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_9_Template, 1, 2, "i", 201);
1333
1333
  i0.ɵɵelementEnd();
1334
1334
  i0.ɵɵelementStart(10, "button", 200);
1335
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_10_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("executionTime")); });
1335
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_10_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("executionTime")); });
1336
1336
  i0.ɵɵtext(11, " Duration ");
1337
- i0.ɵɵconditionalCreate(12, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_12_Template, 1, 2, "i", 201);
1337
+ i0.ɵɵconditionalCreate(12, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_12_Template, 1, 2, "i", 201);
1338
1338
  i0.ɵɵelementEnd();
1339
1339
  i0.ɵɵelementStart(13, "button", 200);
1340
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_13_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("tokens")); });
1340
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_13_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("tokens")); });
1341
1341
  i0.ɵɵtext(14, " Tokens ");
1342
- i0.ɵɵconditionalCreate(15, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_15_Template, 1, 2, "i", 201);
1342
+ i0.ɵɵconditionalCreate(15, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_15_Template, 1, 2, "i", 201);
1343
1343
  i0.ɵɵelementEnd();
1344
1344
  i0.ɵɵelementStart(16, "button", 200);
1345
- i0.ɵɵlistener("click", function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_16_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("cost")); });
1345
+ i0.ɵɵlistener("click", function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template_button_click_16_listener() { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.changeHistorySort("cost")); });
1346
1346
  i0.ɵɵtext(17, " Cost ");
1347
- i0.ɵɵconditionalCreate(18, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_18_Template, 1, 2, "i", 201);
1347
+ i0.ɵɵconditionalCreate(18, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Conditional_18_Template, 1, 2, "i", 201);
1348
1348
  i0.ɵɵelementEnd()()()();
1349
1349
  i0.ɵɵelementStart(19, "div", 202)(20, "table", 203)(21, "thead")(22, "tr", 204)(23, "th", 205);
1350
1350
  i0.ɵɵtext(24, "Status");
@@ -1371,7 +1371,7 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_
1371
1371
  i0.ɵɵtext(38, "Actions");
1372
1372
  i0.ɵɵelementEnd()()();
1373
1373
  i0.ɵɵelementStart(39, "tbody");
1374
- i0.ɵɵrepeaterCreate(40, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Template, 24, 18, "tr", 208, _forTrack1);
1374
+ i0.ɵɵrepeaterCreate(40, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_For_41_Template, 24, 18, "tr", 208, _forTrack1);
1375
1375
  i0.ɵɵelementEnd()()();
1376
1376
  } if (rf & 2) {
1377
1377
  const ctx_r1 = i0.ɵɵnextContext(3);
@@ -1396,11 +1396,11 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_
1396
1396
  i0.ɵɵadvance(22);
1397
1397
  i0.ɵɵrepeater(ctx_r1.executionHistory);
1398
1398
  } }
1399
- function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Template(rf, ctx) { if (rf & 1) {
1399
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Template(rf, ctx) { if (rf & 1) {
1400
1400
  i0.ɵɵelementStart(0, "kendo-expansionpanel", 29);
1401
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Template, 4, 1, "ng-template", 30);
1401
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_ng_template_1_Template, 4, 1, "ng-template", 30);
1402
1402
  i0.ɵɵelementStart(2, "div", 185);
1403
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_3_Template, 4, 0, "div", 192)(4, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_4_Template, 6, 0, "div", 192)(5, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template, 42, 9);
1403
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_3_Template, 4, 0, "div", 192)(4, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_4_Template, 6, 0, "div", 192)(5, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Conditional_5_Template, 42, 9);
1404
1404
  i0.ɵɵelementEnd()();
1405
1405
  } if (rf & 2) {
1406
1406
  const ctx_r1 = i0.ɵɵnextContext(2);
@@ -1408,15 +1408,15 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_63_Template(rf,
1408
1408
  i0.ɵɵadvance(3);
1409
1409
  i0.ɵɵconditional(ctx_r1.isLoadingHistory ? 3 : ctx_r1.executionHistory.length === 0 ? 4 : 5);
1410
1410
  } }
1411
- function AIPromptFormComponentExtended_Conditional_2_Conditional_64_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1411
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_64_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1412
1412
  i0.ɵɵelementStart(0, "span", 64);
1413
1413
  i0.ɵɵelement(1, "i", 220);
1414
1414
  i0.ɵɵtext(2, " Result Cache ");
1415
1415
  i0.ɵɵelementEnd();
1416
1416
  } }
1417
- function AIPromptFormComponentExtended_Conditional_2_Conditional_64_Template(rf, ctx) { if (rf & 1) {
1417
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_64_Template(rf, ctx) { if (rf & 1) {
1418
1418
  i0.ɵɵelementStart(0, "kendo-expansionpanel", 29);
1419
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_64_ng_template_1_Template, 3, 0, "ng-template", 30);
1419
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_64_ng_template_1_Template, 3, 0, "ng-template", 30);
1420
1420
  i0.ɵɵelementStart(2, "div", 36);
1421
1421
  i0.ɵɵelement(3, "mj-explorer-entity-data-grid", 219);
1422
1422
  i0.ɵɵelementEnd()();
@@ -1426,15 +1426,15 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_64_Template(rf,
1426
1426
  i0.ɵɵadvance(3);
1427
1427
  i0.ɵɵproperty("Params", ctx_r1.BuildRelationshipViewParamsByEntityName("MJ: AI Result Cache", "AIPromptID"))("NewRecordValues", ctx_r1.NewRecordValues("MJ: AI Result Cache"))("AllowLoad", true)("ShowToolbar", false);
1428
1428
  } }
1429
- function AIPromptFormComponentExtended_Conditional_2_Conditional_65_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1429
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_65_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1430
1430
  i0.ɵɵelementStart(0, "span", 64);
1431
1431
  i0.ɵɵelement(1, "i", 222);
1432
1432
  i0.ɵɵtext(2, " Related Items ");
1433
1433
  i0.ɵɵelementEnd();
1434
1434
  } }
1435
- function AIPromptFormComponentExtended_Conditional_2_Conditional_65_Template(rf, ctx) { if (rf & 1) {
1435
+ function MJAIPromptFormComponentExtended_Conditional_2_Conditional_65_Template(rf, ctx) { if (rf & 1) {
1436
1436
  i0.ɵɵelementStart(0, "kendo-expansionpanel", 29);
1437
- i0.ɵɵtemplate(1, AIPromptFormComponentExtended_Conditional_2_Conditional_65_ng_template_1_Template, 3, 0, "ng-template", 30);
1437
+ i0.ɵɵtemplate(1, MJAIPromptFormComponentExtended_Conditional_2_Conditional_65_ng_template_1_Template, 3, 0, "ng-template", 30);
1438
1438
  i0.ɵɵelementStart(2, "div", 36)(3, "div", 37)(4, "div")(5, "h6", 221);
1439
1439
  i0.ɵɵtext(6, "AI Agents Using This Prompt");
1440
1440
  i0.ɵɵelementEnd();
@@ -1453,17 +1453,17 @@ function AIPromptFormComponentExtended_Conditional_2_Conditional_65_Template(rf,
1453
1453
  i0.ɵɵadvance(4);
1454
1454
  i0.ɵɵproperty("Params", ctx_r1.BuildRelationshipViewParamsByEntityName("MJ: AI Prompts", "ResultSelectorPromptID"))("NewRecordValues", ctx_r1.NewRecordValues("MJ: AI Prompts"))("AllowLoad", true)("ShowToolbar", false);
1455
1455
  } }
1456
- function AIPromptFormComponentExtended_Conditional_2_Template(rf, ctx) { if (rf & 1) {
1456
+ function MJAIPromptFormComponentExtended_Conditional_2_Template(rf, ctx) { if (rf & 1) {
1457
1457
  i0.ɵɵelementStart(0, "form", 4, 0);
1458
1458
  i0.ɵɵelement(2, "mj-form-toolbar", 6);
1459
1459
  i0.ɵɵelementStart(3, "div", 7)(4, "div", 8)(5, "div", 9)(6, "div", 10)(7, "div", 11);
1460
1460
  i0.ɵɵelement(8, "i", 12);
1461
- i0.ɵɵconditionalCreate(9, AIPromptFormComponentExtended_Conditional_2_Conditional_9_Template, 1, 1, "kendo-textbox", 13)(10, AIPromptFormComponentExtended_Conditional_2_Conditional_10_Template, 4, 4);
1461
+ i0.ɵɵconditionalCreate(9, MJAIPromptFormComponentExtended_Conditional_2_Conditional_9_Template, 1, 1, "kendo-textbox", 13)(10, MJAIPromptFormComponentExtended_Conditional_2_Conditional_10_Template, 4, 4);
1462
1462
  i0.ɵɵelementEnd();
1463
- i0.ɵɵconditionalCreate(11, AIPromptFormComponentExtended_Conditional_2_Conditional_11_Template, 12, 11, "div", 14);
1464
- i0.ɵɵconditionalCreate(12, AIPromptFormComponentExtended_Conditional_2_Conditional_12_Template, 1, 2, "kendo-textarea", 15)(13, AIPromptFormComponentExtended_Conditional_2_Conditional_13_Template, 2, 1, "p", 16);
1463
+ i0.ɵɵconditionalCreate(11, MJAIPromptFormComponentExtended_Conditional_2_Conditional_11_Template, 12, 11, "div", 14);
1464
+ i0.ɵɵconditionalCreate(12, MJAIPromptFormComponentExtended_Conditional_2_Conditional_12_Template, 1, 2, "kendo-textarea", 15)(13, MJAIPromptFormComponentExtended_Conditional_2_Conditional_13_Template, 2, 1, "p", 16);
1465
1465
  i0.ɵɵelementStart(14, "div", 17);
1466
- i0.ɵɵconditionalCreate(15, AIPromptFormComponentExtended_Conditional_2_Conditional_15_Template, 6, 1, "div", 18);
1466
+ i0.ɵɵconditionalCreate(15, MJAIPromptFormComponentExtended_Conditional_2_Conditional_15_Template, 6, 1, "div", 18);
1467
1467
  i0.ɵɵelementStart(16, "div", 18);
1468
1468
  i0.ɵɵelement(17, "i", 19);
1469
1469
  i0.ɵɵelementStart(18, "span", 20);
@@ -1480,26 +1480,26 @@ function AIPromptFormComponentExtended_Conditional_2_Template(rf, ctx) { if (rf
1480
1480
  i0.ɵɵelementStart(26, "span", 23);
1481
1481
  i0.ɵɵtext(27);
1482
1482
  i0.ɵɵelementEnd()();
1483
- i0.ɵɵconditionalCreate(28, AIPromptFormComponentExtended_Conditional_2_Conditional_28_Template, 4, 0, "div", 18);
1484
- i0.ɵɵconditionalCreate(29, AIPromptFormComponentExtended_Conditional_2_Conditional_29_Template, 6, 1, "div", 18);
1483
+ i0.ɵɵconditionalCreate(28, MJAIPromptFormComponentExtended_Conditional_2_Conditional_28_Template, 4, 0, "div", 18);
1484
+ i0.ɵɵconditionalCreate(29, MJAIPromptFormComponentExtended_Conditional_2_Conditional_29_Template, 6, 1, "div", 18);
1485
1485
  i0.ɵɵelementEnd()();
1486
1486
  i0.ɵɵelementStart(30, "div", 24)(31, "div", 25);
1487
- i0.ɵɵconditionalCreate(32, AIPromptFormComponentExtended_Conditional_2_Conditional_32_Template, 3, 2, "button", 26);
1487
+ i0.ɵɵconditionalCreate(32, MJAIPromptFormComponentExtended_Conditional_2_Conditional_32_Template, 3, 2, "button", 26);
1488
1488
  i0.ɵɵelementEnd();
1489
- i0.ɵɵconditionalCreate(33, AIPromptFormComponentExtended_Conditional_2_Conditional_33_Template, 4, 3, "div", 27);
1489
+ i0.ɵɵconditionalCreate(33, MJAIPromptFormComponentExtended_Conditional_2_Conditional_33_Template, 4, 3, "div", 27);
1490
1490
  i0.ɵɵelementEnd()()();
1491
1491
  i0.ɵɵelementStart(34, "div", 28)(35, "kendo-expansionpanel", 29);
1492
- i0.ɵɵtemplate(36, AIPromptFormComponentExtended_Conditional_2_ng_template_36_Template, 4, 1, "ng-template", 30);
1492
+ i0.ɵɵtemplate(36, MJAIPromptFormComponentExtended_Conditional_2_ng_template_36_Template, 4, 1, "ng-template", 30);
1493
1493
  i0.ɵɵelementStart(37, "div", 31);
1494
- i0.ɵɵconditionalCreate(38, AIPromptFormComponentExtended_Conditional_2_Conditional_38_Template, 3, 0, "div", 32)(39, AIPromptFormComponentExtended_Conditional_2_Conditional_39_Template, 9, 2, "div", 33)(40, AIPromptFormComponentExtended_Conditional_2_Conditional_40_Template, 11, 2, "div", 34)(41, AIPromptFormComponentExtended_Conditional_2_Conditional_41_Template, 5, 3, "div", 35);
1494
+ i0.ɵɵconditionalCreate(38, MJAIPromptFormComponentExtended_Conditional_2_Conditional_38_Template, 3, 0, "div", 32)(39, MJAIPromptFormComponentExtended_Conditional_2_Conditional_39_Template, 9, 2, "div", 33)(40, MJAIPromptFormComponentExtended_Conditional_2_Conditional_40_Template, 11, 2, "div", 34)(41, MJAIPromptFormComponentExtended_Conditional_2_Conditional_41_Template, 5, 3, "div", 35);
1495
1495
  i0.ɵɵelementEnd()();
1496
- i0.ɵɵconditionalCreate(42, AIPromptFormComponentExtended_Conditional_2_Conditional_42_Template, 6, 2, "kendo-expansionpanel", 29);
1496
+ i0.ɵɵconditionalCreate(42, MJAIPromptFormComponentExtended_Conditional_2_Conditional_42_Template, 6, 2, "kendo-expansionpanel", 29);
1497
1497
  i0.ɵɵelementStart(43, "kendo-expansionpanel", 29);
1498
- i0.ɵɵtemplate(44, AIPromptFormComponentExtended_Conditional_2_ng_template_44_Template, 3, 0, "ng-template", 30);
1498
+ i0.ɵɵtemplate(44, MJAIPromptFormComponentExtended_Conditional_2_ng_template_44_Template, 3, 0, "ng-template", 30);
1499
1499
  i0.ɵɵelementStart(45, "div", 36)(46, "div", 37)(47, "div");
1500
1500
  i0.ɵɵelement(48, "mj-form-field", 38);
1501
- i0.ɵɵconditionalCreate(49, AIPromptFormComponentExtended_Conditional_2_Conditional_49_Template, 1, 3, "mj-form-field", 39);
1502
- i0.ɵɵconditionalCreate(50, AIPromptFormComponentExtended_Conditional_2_Conditional_50_Template, 1, 3, "mj-form-field", 40);
1501
+ i0.ɵɵconditionalCreate(49, MJAIPromptFormComponentExtended_Conditional_2_Conditional_49_Template, 1, 3, "mj-form-field", 39);
1502
+ i0.ɵɵconditionalCreate(50, MJAIPromptFormComponentExtended_Conditional_2_Conditional_50_Template, 1, 3, "mj-form-field", 40);
1503
1503
  i0.ɵɵelement(51, "mj-form-field", 41)(52, "mj-form-field", 42);
1504
1504
  i0.ɵɵelementEnd();
1505
1505
  i0.ɵɵelementStart(53, "div");
@@ -1507,13 +1507,13 @@ function AIPromptFormComponentExtended_Conditional_2_Template(rf, ctx) { if (rf
1507
1507
  i0.ɵɵelementStart(56, "div", 45)(57, "label", 46);
1508
1508
  i0.ɵɵtext(58, " Result Selector Prompt ");
1509
1509
  i0.ɵɵelementEnd();
1510
- i0.ɵɵconditionalCreate(59, AIPromptFormComponentExtended_Conditional_2_Conditional_59_Template, 2, 1)(60, AIPromptFormComponentExtended_Conditional_2_Conditional_60_Template, 2, 1, "span", 47);
1510
+ i0.ɵɵconditionalCreate(59, MJAIPromptFormComponentExtended_Conditional_2_Conditional_59_Template, 2, 1)(60, MJAIPromptFormComponentExtended_Conditional_2_Conditional_60_Template, 2, 1, "span", 47);
1511
1511
  i0.ɵɵelementEnd()()()()();
1512
- i0.ɵɵconditionalCreate(61, AIPromptFormComponentExtended_Conditional_2_Conditional_61_Template, 6, 2, "kendo-expansionpanel", 29);
1513
- i0.ɵɵconditionalCreate(62, AIPromptFormComponentExtended_Conditional_2_Conditional_62_Template, 6, 2, "kendo-expansionpanel", 29);
1514
- i0.ɵɵconditionalCreate(63, AIPromptFormComponentExtended_Conditional_2_Conditional_63_Template, 6, 2, "kendo-expansionpanel", 29);
1515
- i0.ɵɵconditionalCreate(64, AIPromptFormComponentExtended_Conditional_2_Conditional_64_Template, 4, 5, "kendo-expansionpanel", 29);
1516
- i0.ɵɵconditionalCreate(65, AIPromptFormComponentExtended_Conditional_2_Conditional_65_Template, 12, 9, "kendo-expansionpanel", 29);
1512
+ i0.ɵɵconditionalCreate(61, MJAIPromptFormComponentExtended_Conditional_2_Conditional_61_Template, 6, 2, "kendo-expansionpanel", 29);
1513
+ i0.ɵɵconditionalCreate(62, MJAIPromptFormComponentExtended_Conditional_2_Conditional_62_Template, 6, 2, "kendo-expansionpanel", 29);
1514
+ i0.ɵɵconditionalCreate(63, MJAIPromptFormComponentExtended_Conditional_2_Conditional_63_Template, 6, 2, "kendo-expansionpanel", 29);
1515
+ i0.ɵɵconditionalCreate(64, MJAIPromptFormComponentExtended_Conditional_2_Conditional_64_Template, 4, 5, "kendo-expansionpanel", 29);
1516
+ i0.ɵɵconditionalCreate(65, MJAIPromptFormComponentExtended_Conditional_2_Conditional_65_Template, 12, 9, "kendo-expansionpanel", 29);
1517
1517
  i0.ɵɵelementEnd()()();
1518
1518
  } if (rf & 2) {
1519
1519
  const ctx_r1 = i0.ɵɵnextContext();
@@ -1576,12 +1576,12 @@ function AIPromptFormComponentExtended_Conditional_2_Template(rf, ctx) { if (rf
1576
1576
  i0.ɵɵadvance();
1577
1577
  i0.ɵɵconditional(ctx_r1.record.IsSaved ? 65 : -1);
1578
1578
  } }
1579
- function AIPromptFormComponentExtended_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1579
+ function MJAIPromptFormComponentExtended_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1580
1580
  const _r36 = i0.ɵɵgetCurrentView();
1581
1581
  i0.ɵɵelementStart(0, "kendo-window", 223);
1582
- i0.ɵɵlistener("close", function AIPromptFormComponentExtended_Conditional_3_Template_kendo_window_close_0_listener() { i0.ɵɵrestoreView(_r36); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onTestHarnessVisibilityChanged(false)); });
1582
+ i0.ɵɵlistener("close", function MJAIPromptFormComponentExtended_Conditional_3_Template_kendo_window_close_0_listener() { i0.ɵɵrestoreView(_r36); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onTestHarnessVisibilityChanged(false)); });
1583
1583
  i0.ɵɵelementStart(1, "mj-ai-test-harness", 224);
1584
- i0.ɵɵlistener("visibilityChange", function AIPromptFormComponentExtended_Conditional_3_Template_mj_ai_test_harness_visibilityChange_1_listener($event) { i0.ɵɵrestoreView(_r36); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onTestHarnessVisibilityChanged($event)); });
1584
+ i0.ɵɵlistener("visibilityChange", function MJAIPromptFormComponentExtended_Conditional_3_Template_mj_ai_test_harness_visibilityChange_1_listener($event) { i0.ɵɵrestoreView(_r36); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onTestHarnessVisibilityChanged($event)); });
1585
1585
  i0.ɵɵelementEnd()();
1586
1586
  } if (rf & 2) {
1587
1587
  const ctx_r1 = i0.ɵɵnextContext();
@@ -1589,7 +1589,7 @@ function AIPromptFormComponentExtended_Conditional_3_Template(rf, ctx) { if (rf
1589
1589
  i0.ɵɵadvance();
1590
1590
  i0.ɵɵproperty("entity", ctx_r1.record)("mode", "prompt")("isVisible", ctx_r1.showTestHarness);
1591
1591
  } }
1592
- let AIPromptFormComponentExtended = class AIPromptFormComponentExtended extends MJAIPromptFormComponent {
1592
+ let MJAIPromptFormComponentExtended = class MJAIPromptFormComponentExtended extends MJAIPromptFormComponent {
1593
1593
  constructor() {
1594
1594
  super(...arguments);
1595
1595
  this.testHarnessService = inject(AITestHarnessDialogService);
@@ -3055,17 +3055,17 @@ let AIPromptFormComponentExtended = class AIPromptFormComponentExtended extends
3055
3055
  return 'Unknown type';
3056
3056
  }
3057
3057
  }
3058
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵAIPromptFormComponentExtended_BaseFactory; return function AIPromptFormComponentExtended_Factory(__ngFactoryType__) { return (ɵAIPromptFormComponentExtended_BaseFactory || (ɵAIPromptFormComponentExtended_BaseFactory = i0.ɵɵgetInheritedFactory(AIPromptFormComponentExtended)))(__ngFactoryType__ || AIPromptFormComponentExtended); }; })(); }
3059
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AIPromptFormComponentExtended, selectors: [["mj-ai-prompt-form"]], viewQuery: function AIPromptFormComponentExtended_Query(rf, ctx) { if (rf & 1) {
3058
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵMJAIPromptFormComponentExtended_BaseFactory; return function MJAIPromptFormComponentExtended_Factory(__ngFactoryType__) { return (ɵMJAIPromptFormComponentExtended_BaseFactory || (ɵMJAIPromptFormComponentExtended_BaseFactory = i0.ɵɵgetInheritedFactory(MJAIPromptFormComponentExtended)))(__ngFactoryType__ || MJAIPromptFormComponentExtended); }; })(); }
3059
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MJAIPromptFormComponentExtended, selectors: [["mj-ai-prompt-form"]], viewQuery: function MJAIPromptFormComponentExtended_Query(rf, ctx) { if (rf & 1) {
3060
3060
  i0.ɵɵviewQuery(_c0, 5);
3061
3061
  } if (rf & 2) {
3062
3062
  let _t;
3063
3063
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templateEditor = _t.first);
3064
- } }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 4, vars: 2, consts: [["form", "ngForm"], ["templateEditor", ""], [1, "record-form-container"], ["kendoDialogContainer", ""], [1, "record-form"], [3, "width", "height", "minWidth", "minHeight", "draggable", "resizable", "state", "title"], [3, "Form"], [1, "prompt-main-area", 2, "display", "flex", "flex-direction", "column", "height", "100%", "overflow-y", "auto"], [1, "prompt-header", 2, "flex-shrink", "0", "padding", "20px", "background", "#f8f9fa", "border-bottom", "2px solid #e9ecef"], [2, "display", "flex", "justify-content", "space-between", "align-items", "flex-start", "gap", "20px"], [2, "flex", "1", "min-width", "0"], [2, "display", "flex", "align-items", "center", "gap", "12px", "margin-bottom", "8px"], [1, "fa-solid", "fa-robot", 2, "color", "#6f42c1", "font-size", "1.4em"], ["name", "promptName", "placeholder", "Enter prompt name...", 2, "font-size", "1.2em", "font-weight", "600", "min-width", "300px", "flex", "1", 3, "ngModel"], [2, "display", "flex", "gap", "16px", "margin-bottom", "12px", "flex-wrap", "wrap"], ["name", "promptDescription", "placeholder", "Enter prompt description...", 2, "width", "100%", "max-width", "600px", "margin-bottom", "12px", 3, "ngModel", "rows"], [2, "margin", "0 0 12px 0", "color", "#6c757d", "font-size", "0.9em", "line-height", "1.4"], [1, "quick-config", 2, "display", "flex", "align-items", "center", "gap", "16px", "flex-wrap", "wrap"], [1, "config-item", 2, "display", "flex", "align-items", "center", "gap", "6px", "font-size", "0.85em"], [1, "fa-solid", "fa-layer-group", 2, "color", "#6c757d"], [2, "color", "#6c757d"], [2, "color", "#495057", "font-weight", "500"], [1, "fa-solid", "fa-code", 2, "color", "#6c757d"], [2, "font-weight", "500"], [1, "action-buttons", 2, "display", "flex", "flex-direction", "column", "gap", "8px", "align-items", "flex-end"], [2, "display", "flex", "gap", "8px"], ["kendoButton", "", "title", "Run AI Prompt Test Harness", 3, "themeColor", "size"], [2, "font-size", "0.75em", "color", "#dc3545", "text-align", "right", "max-width", "200px"], [1, "configuration-sections", 2, "flex", "1", "background", "white", "border-top", "2px solid #e9ecef", "padding", "16px", "min-height", "0"], [2, "margin-bottom", "12px", 3, "expanded"], ["kendoExpansionPanelTitleDirective", ""], [1, "template-section", 2, "display", "flex", "flex-direction", "column", "min-height", "400px", "padding", "8px"], [1, "loading-state", 2, "flex", "1", "display", "flex", "align-items", "center", "justify-content", "center", "color", "#6c757d"], [1, "no-template-state", 2, "flex", "1", "display", "flex", "flex-direction", "column", "align-items", "center", "justify-content", "center", "padding", "40px", "color", "#6c757d"], [1, "invalid-template-state", 2, "flex", "1", "display", "flex", "flex-direction", "column", "align-items", "center", "justify-content", "center", "padding", "40px", "color", "#dc3545"], [1, "template-editor-container", 2, "flex", "1", "display", "flex", "flex-direction", "column", "min-height", "350px"], [2, "padding", "16px 0"], [2, "display", "grid", "grid-template-columns", "1fr 1fr", "gap", "20px"], ["FieldName", "ParallelizationMode", "Type", "dropdownlist", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "ParallelCount", "Type", "numerictextbox", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "ParallelConfigParam", "Type", "textbox", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "OutputType", "Type", "dropdownlist", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "EffortLevel", "Type", "numerictextbox", "Caption", "Effort Level (1-100)", "Description", "Higher values request more thorough reasoning", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "ValidationBehavior", "Type", "dropdownlist", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "EnableCaching", "Type", "checkbox", 3, "Record", "ShowLabel", "EditMode"], [2, "margin-bottom", "16px"], [2, "display", "block", "margin-bottom", "4px", "font-weight", "600", "color", "#495057", "font-size", "0.9em"], [2, "color", "#495057"], ["name", "promptName", "placeholder", "Enter prompt name...", 2, "font-size", "1.2em", "font-weight", "600", "min-width", "300px", "flex", "1", 3, "ngModelChange", "ngModel"], [2, "margin", "0", "color", "#495057", "font-weight", "600", "flex", "1"], [1, "status-badge", 2, "color", "white", "padding", "4px 10px", "border-radius", "12px", "font-size", "0.75em", "font-weight", "500"], ["name", "promptStatus", "textField", "text", "valueField", "value", 2, "width", "150px", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], [2, "color", "#dc3545"], [2, "padding", "8px", "color", "#6c757d", "font-style", "italic", "width", "200px"], ["name", "promptTypeID", "textField", "Name", "valueField", "ID", "placeholder", "Select prompt type...", 2, "width", "200px", 3, "ngModel", "data", "valuePrimitive", "filterable"], [1, "fa-solid", "fa-spinner", "fa-spin"], ["name", "promptTypeID", "textField", "Name", "valueField", "ID", "placeholder", "Select prompt type...", 2, "width", "200px", 3, "ngModelChange", "ngModel", "data", "valuePrimitive", "filterable"], ["name", "promptDescription", "placeholder", "Enter prompt description...", 2, "width", "100%", "max-width", "600px", "margin-bottom", "12px", 3, "ngModelChange", "ngModel", "rows"], [1, "fa-solid", "fa-tag", 2, "color", "#6c757d"], [1, "fa-solid", "fa-database", 2, "color", "#28a745"], [2, "color", "#28a745", "font-weight", "500"], [1, "fa-solid", "fa-tachometer-alt", 2, "color", "#6c757d"], ["kendoButton", "", "title", "Run AI Prompt Test Harness", 3, "click", "themeColor", "size"], [1, "fa-solid", "fa-play"], [2, "display", "flex", "align-items", "center", "gap", "8px", "font-weight", "600"], [2, "color", "#6c757d", "font-size", "0.9em", "font-weight", "normal"], [1, "fa-solid", "fa-spinner", "fa-spin", 2, "font-size", "24px", "margin-right", "12px"], [1, "fa-solid", "fa-code", 2, "font-size", "64px", "margin-bottom", "20px", "opacity", "0.3"], [2, "margin-bottom", "12px", "color", "#495057"], [2, "margin-bottom", "24px", "text-align", "center", "max-width", "400px"], [2, "display", "flex", "gap", "12px"], ["kendoButton", "", 3, "themeColor"], ["kendoButton", "", 3, "fillMode"], ["kendoButton", "", 3, "click", "themeColor"], [1, "fa-solid", "fa-plus"], ["kendoButton", "", 3, "click", "fillMode"], [1, "fa-solid", "fa-link"], [1, "fa-solid", "fa-exclamation-triangle", 2, "font-size", "64px", "margin-bottom", "20px", "opacity", "0.7"], [2, "margin-bottom", "12px"], [1, "fa-solid", "fa-refresh"], [1, "template-actions", 2, "display", "flex", "gap", "8px", "padding", "8px", "border-bottom", "1px solid #e9ecef", "background", "#f8f9fa"], [2, "flex", "1", "background", "white", "border-radius", "6px", "border", "1px solid #e9ecef"], [2, "display", "block", "min-height", "300px", 3, "contentChange", "runTemplate", "template", "config"], ["kendoButton", "", "title", "Change to a different template", 3, "fillMode", "size"], ["kendoButton", "", "title", "Open template in new window", 3, "fillMode", "size"], ["kendoButton", "", "title", "Change to a different template", 3, "click", "fillMode", "size"], [1, "fa-solid", "fa-exchange-alt"], ["kendoButton", "", "title", "Open template in new window", 3, "click", "fillMode", "size"], [1, "fa-solid", "fa-external-link-alt"], [1, "model-management", 2, "border", "1px solid #dee2e6", "border-radius", "6px", "background", "#f8f9fa"], [1, "loading-state", 2, "padding", "20px", "text-align", "center", "color", "#6c757d"], [1, "fa-solid", "fa-microchip", 2, "color", "#6c757d"], [1, "badge", 2, "background", "#17a2b8", "color", "white", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], [2, "color", "#6c757d", "font-size", "0.8em", "font-weight", "normal", "margin-left", "8px"], ["title", "Models are tried in order from top to bottom. The first available model will be used.", 1, "fa-solid", "fa-info-circle"], [1, "empty-state", 2, "padding", "20px", "text-align", "center", "color", "#6c757d"], [1, "fa-solid", "fa-info-circle"], [2, "margin-top", "10px"], ["kendoButton", "", "fillMode", "outline", "themeColor", "primary", "size", "small", 3, "click"], [2, "padding", "12px 16px", "background", "#e3f2fd", "border-bottom", "1px solid #bbdefb", "color", "#1565c0", "font-size", "0.85em"], [1, "model-header", 2, "display", "grid", "grid-template-columns", "40px 2fr 1fr 1fr 1fr 60px", "gap", "12px", "padding", "12px 16px", "background", "#e9ecef", "font-weight", "600", "font-size", "0.85em", "color", "#495057", "border-bottom", "1px solid #dee2e6"], ["title", "Priority order - models are tried from top to bottom"], [1, "fa-solid", "fa-sort", 2, "color", "#6c757d"], [1, "add-model-row", 2, "padding", "12px 16px", "text-align", "center", "background", "#f8f9fa", "border-top", "1px solid #dee2e6"], [1, "fa-solid", "fa-info-circle", 2, "margin-right", "6px"], [1, "model-row", 2, "display", "grid", "grid-template-columns", "40px 2fr 1fr 1fr 1fr 60px", "gap", "12px", "padding", "12px 16px", "border-bottom", "1px solid #e9ecef", "align-items", "start", "transition", "background 0.2s, opacity 0.2s", 3, "dragstart", "dragover", "drop", "dragend", "draggable"], [1, "drag-handle", 2, "display", "flex", "flex-direction", "column", "align-items", "center", "justify-content", "center", "color", "#6c757d"], [2, "font-size", "0.9em", "font-weight", "600", 3, "title"], [1, "model-select"], ["textField", "Name", "valueField", "ID", "placeholder", "Select a model...", 2, "width", "100%", 3, "ngModel", "name", "data", "valuePrimitive", "filterable"], [1, "model-vendor"], [1, "model-configuration"], [2, "font-size", "0.9em"], [1, "model-created"], [2, "color", "#6c757d", "font-size", "0.8em"], [2, "color", "#28a745", "font-size", "0.8em", "font-style", "italic"], [1, "model-actions", 2, "display", "flex", "gap", "2px", "flex-direction", "column"], [2, "display", "grid", "grid-template-columns", "40px 1fr", "gap", "12px", "padding", "8px 16px", "border-bottom", "1px solid #e9ecef", "background", "#f8f9fa", "font-size", "0.85em", "color", "#6c757d"], [2, "display", "flex", "gap", "16px", "flex-wrap", "wrap", "align-items", "center", "margin-bottom", "8px"], [2, "padding", "8px", "background", "#fff", "border", "1px solid #dee2e6", "border-radius", "4px", "margin-top", "8px"], ["title", "Drag to reorder priority", 1, "fa-solid", "fa-grip-vertical", 2, "cursor", "move"], [2, "font-size", "0.7em", "margin-top", "2px"], ["textField", "Name", "valueField", "ID", "placeholder", "Select a model...", 2, "width", "100%", 3, "ngModelChange", "valueChange", "ngModel", "name", "data", "valuePrimitive", "filterable"], [2, "color", "#6c757d", "font-style", "italic", "font-size", "0.9em"], ["textField", "Name", "valueField", "ID", "placeholder", "Select vendor...", 2, "width", "100%", 3, "ngModel", "name", "data", "valuePrimitive", "filterable"], ["textField", "Name", "valueField", "ID", "placeholder", "Select vendor...", 2, "width", "100%", 3, "ngModelChange", "ngModel", "name", "data", "valuePrimitive", "filterable"], ["kendoDropDownListItemTemplate", ""], [2, "font-size", "0.8em", "margin-left", "4px"], [2, "font-size", "0.9em", "font-weight", "500", 3, "color"], [2, "font-size", "0.9em", "font-weight", "500"], [2, "font-size", "0.9em", 3, "color"], [2, "color", "#6c757d", "font-size", "0.9em"], [2, "padding", "4px", "color", "#6c757d", "font-style", "italic", "font-size", "0.85em"], ["textField", "Name", "valueField", "ID", "placeholder", "Default", 2, "width", "100%", 3, "ngModel", "name", "data", "valuePrimitive", "filterable"], ["textField", "Name", "valueField", "ID", "placeholder", "Default", 2, "width", "100%", 3, "ngModelChange", "valueChange", "ngModel", "name", "data", "valuePrimitive", "filterable"], ["kendoDropDownListNoDataTemplate", ""], [2, "padding", "8px", "text-align", "center", "color", "#6c757d"], [2, "display", "flex", "gap", "2px", "margin-bottom", "4px"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove model"], ["kendoButton", "", "fillMode", "flat", "size", "small", "title", "Move up", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-up"], ["kendoButton", "", "fillMode", "flat", "size", "small", "title", "Move down", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-down"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove model", 3, "click"], [1, "fa-solid", "fa-times"], [2, "margin-bottom", "6px", "font-weight", "600", "color", "#495057", "font-size", "0.9em"], [1, "fa-solid", "fa-layer-group"], [2, "display", "grid", "grid-template-columns", "1fr 1fr 1fr", "gap", "12px", "align-items", "center"], [2, "display", "flex", "gap", "16px", "flex-wrap", "wrap", "align-items", "center"], [2, "display", "block", "margin-bottom", "2px", "font-size", "0.8em", "font-weight", "600", "color", "#495057"], ["textField", "text", "valueField", "value", "placeholder", "Select mode...", 2, "width", "100%", "font-size", "0.85em", 3, "ngModelChange", "ngModel", "name", "data", "valuePrimitive"], ["placeholder", "Count...", 2, "width", "100%", "font-size", "0.85em", 3, "ngModelChange", "ngModel", "name", "min", "step", "format"], ["placeholder", "Parameter name...", 2, "width", "100%", "font-size", "0.85em", 3, "ngModelChange", "ngModel", "name"], ["kendoButton", "", "fillMode", "outline", "themeColor", "success", "size", "small", 3, "click"], [1, "fa-solid", "fa-cogs", 2, "color", "#6c757d"], [2, "padding", "8px", "color", "#6c757d", "font-style", "italic"], ["name", "resultSelectorPromptID", "textField", "text", "valueField", "value", "placeholder", "Select a result selector prompt...", 2, "width", "100%", 3, "ngModel", "data", "valuePrimitive", "filterable"], ["name", "resultSelectorPromptID", "textField", "text", "valueField", "value", "placeholder", "Select a result selector prompt...", 2, "width", "100%", 3, "ngModelChange", "valueChange", "ngModel", "data", "valuePrimitive", "filterable"], [1, "fa-solid", "fa-sliders", 2, "color", "#6c757d"], [1, "badge", 2, "background", "#6f42c1", "color", "white", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], ["title", "These parameters are defined in the template and will be available when executing this prompt", 1, "fa-solid", "fa-info-circle"], [2, "display", "grid", "gap", "12px"], [1, "parameter-card", 2, "border", "1px solid #e9ecef", "border-radius", "8px", "padding", "16px", "background", "#f8f9fa", "transition", "all 0.2s", 3, "border-left"], [2, "margin-top", "16px", "padding", "12px", "background", "#e3f2fd", "border-radius", "6px", "border", "1px solid #bbdefb"], [2, "display", "flex", "align-items", "flex-start", "gap", "8px"], [1, "fa-solid", "fa-lightbulb", 2, "color", "#1976d2", "margin-top", "2px"], [2, "flex", "1", "font-size", "0.85em", "color", "#1565c0", "line-height", "1.5"], [1, "parameter-card", 2, "border", "1px solid #e9ecef", "border-radius", "8px", "padding", "16px", "background", "#f8f9fa", "transition", "all 0.2s"], [2, "display", "flex", "justify-content", "space-between", "align-items", "flex-start", "margin-bottom", "8px"], [2, "display", "flex", "align-items", "center", "gap", "8px"], [2, "font-size", "1.2em"], [2, "margin", "0", "color", "#495057", "font-weight", "600"], [2, "color", "#dc3545", "font-size", "0.9em", "margin-left", "4px"], [1, "type-badge", 2, "color", "white", "padding", "4px 8px", "border-radius", "12px", "font-size", "0.75em", "font-weight", "500"], [2, "color", "#dc3545", "font-size", "0.85em", "font-weight", "500"], [2, "color", "#6c757d", "font-size", "0.85em"], [2, "margin", "0 0 8px 0", "color", "#6c757d", "font-size", "0.9em", "line-height", "1.4"], [2, "font-size", "0.85em", "color", "#495057"], [2, "display", "flex", "align-items", "center", "gap", "4px", "margin-bottom", "4px"], [1, "fa-solid", "fa-info-circle", 2, "color", "#6c757d"], [2, "display", "grid", "grid-template-columns", "repeat(auto-fit, minmax(200px, 1fr))", "gap", "12px", "margin-top", "12px"], [2, "background", "white", "padding", "8px 12px", "border-radius", "4px", "border", "1px solid #dee2e6"], [2, "display", "block", "font-size", "0.8em", "color", "#6c757d", "margin-bottom", "2px"], [2, "font-size", "0.85em", "color", "#495057", "word-break", "break-all"], [2, "font-size", "0.8em", "color", "#495057", "word-break", "break-all"], [2, "padding", "16px"], [2, "background", "#f8f9fa", "border", "1px solid #dee2e6", "border-radius", "4px", "padding", "12px", "font-family", "'Courier New', monospace", "font-size", "0.9em", "white-space", "pre-wrap", "overflow", "auto", "max-height", "250px"], [2, "background", "#fff3cd", "border", "1px solid #ffeaa7", "border-radius", "4px", "padding", "12px", "color", "#856404", "text-align", "center"], [2, "color", "#dc3545", "font-size", "0.8em", "font-weight", "normal"], ["name", "outputExample", "language", "json", "placeholder", "Enter JSON example structure...", 2, "width", "100%", "height", "200px", "border", "1px solid #dee2e6", "border-radius", "4px", 3, "ngModelChange", "ngModel"], [2, "margin-top", "8px", "color", "#6c757d", "font-size", "0.85em"], [1, "fa-solid", "fa-exclamation-triangle"], [2, "text-align", "center", "padding", "40px", "color", "#6c757d"], [1, "fa-solid", "fa-history", 2, "color", "#6c757d"], [2, "color", "#6c757d", "font-weight", "normal"], [1, "fa-solid", "fa-spinner", "fa-spin", 2, "font-size", "2em", "margin-bottom", "12px"], [1, "fa-solid", "fa-history", 2, "font-size", "3em", "margin-bottom", "12px", "opacity", "0.3"], [2, "display", "flex", "justify-content", "space-between", "align-items", "center", "margin-bottom", "16px"], [2, "display", "flex", "gap", "8px", "align-items", "center"], ["selection", "single"], ["kendoButton", "", "size", "small", 3, "click", "selected"], [2, "margin-left", "4px", "font-size", "0.8em", 3, "class"], [2, "border", "1px solid #e9ecef", "border-radius", "8px", "overflow", "hidden"], [2, "width", "100%", "border-collapse", "collapse"], [2, "background", "#f8f9fa", "border-bottom", "2px solid #e9ecef"], [2, "padding", "12px", "text-align", "left", "font-weight", "600", "color", "#495057"], [2, "padding", "12px", "text-align", "right", "font-weight", "600", "color", "#495057"], [2, "padding", "12px", "text-align", "center", "font-weight", "600", "color", "#495057"], [1, "history-row", 2, "border-bottom", "1px solid #f1f3f5", 3, "even-row"], [2, "margin-left", "4px", "font-size", "0.8em"], [1, "history-row", 2, "border-bottom", "1px solid #f1f3f5"], [2, "padding", "12px"], [2, "display", "flex", "align-items", "center", "gap", "6px"], [2, "padding", "12px", "color", "#495057"], [2, "padding", "12px", "text-align", "right", "color", "#495057"], [2, "padding", "12px", "text-align", "center"], [2, "padding", "4px 8px", "border-radius", "12px", "background", "#e9ecef", "color", "#495057", "font-size", "0.85em", "font-weight", "500"], ["kendoButton", "", "fillMode", "flat", "size", "small", "title", "View details", 3, "click"], [1, "fa-solid", "fa-external-link"], [3, "Params", "NewRecordValues", "AllowLoad", "ShowToolbar"], [1, "fa-solid", "fa-database", 2, "color", "#6c757d"], [2, "margin", "0 0 12px 0", "color", "#495057"], [1, "fa-solid", "fa-link", 2, "color", "#6c757d"], [3, "close", "width", "height", "minWidth", "minHeight", "draggable", "resizable", "state", "title"], [3, "visibilityChange", "entity", "mode", "isVisible"]], template: function AIPromptFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
3064
+ } }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 4, vars: 2, consts: [["form", "ngForm"], ["templateEditor", ""], [1, "record-form-container"], ["kendoDialogContainer", ""], [1, "record-form"], [3, "width", "height", "minWidth", "minHeight", "draggable", "resizable", "state", "title"], [3, "Form"], [1, "prompt-main-area", 2, "display", "flex", "flex-direction", "column", "height", "100%", "overflow-y", "auto"], [1, "prompt-header", 2, "flex-shrink", "0", "padding", "20px", "background", "#f8f9fa", "border-bottom", "2px solid #e9ecef"], [2, "display", "flex", "justify-content", "space-between", "align-items", "flex-start", "gap", "20px"], [2, "flex", "1", "min-width", "0"], [2, "display", "flex", "align-items", "center", "gap", "12px", "margin-bottom", "8px"], [1, "fa-solid", "fa-robot", 2, "color", "#6f42c1", "font-size", "1.4em"], ["name", "promptName", "placeholder", "Enter prompt name...", 2, "font-size", "1.2em", "font-weight", "600", "min-width", "300px", "flex", "1", 3, "ngModel"], [2, "display", "flex", "gap", "16px", "margin-bottom", "12px", "flex-wrap", "wrap"], ["name", "promptDescription", "placeholder", "Enter prompt description...", 2, "width", "100%", "max-width", "600px", "margin-bottom", "12px", 3, "ngModel", "rows"], [2, "margin", "0 0 12px 0", "color", "#6c757d", "font-size", "0.9em", "line-height", "1.4"], [1, "quick-config", 2, "display", "flex", "align-items", "center", "gap", "16px", "flex-wrap", "wrap"], [1, "config-item", 2, "display", "flex", "align-items", "center", "gap", "6px", "font-size", "0.85em"], [1, "fa-solid", "fa-layer-group", 2, "color", "#6c757d"], [2, "color", "#6c757d"], [2, "color", "#495057", "font-weight", "500"], [1, "fa-solid", "fa-code", 2, "color", "#6c757d"], [2, "font-weight", "500"], [1, "action-buttons", 2, "display", "flex", "flex-direction", "column", "gap", "8px", "align-items", "flex-end"], [2, "display", "flex", "gap", "8px"], ["kendoButton", "", "title", "Run AI Prompt Test Harness", 3, "themeColor", "size"], [2, "font-size", "0.75em", "color", "#dc3545", "text-align", "right", "max-width", "200px"], [1, "configuration-sections", 2, "flex", "1", "background", "white", "border-top", "2px solid #e9ecef", "padding", "16px", "min-height", "0"], [2, "margin-bottom", "12px", 3, "expanded"], ["kendoExpansionPanelTitleDirective", ""], [1, "template-section", 2, "display", "flex", "flex-direction", "column", "min-height", "400px", "padding", "8px"], [1, "loading-state", 2, "flex", "1", "display", "flex", "align-items", "center", "justify-content", "center", "color", "#6c757d"], [1, "no-template-state", 2, "flex", "1", "display", "flex", "flex-direction", "column", "align-items", "center", "justify-content", "center", "padding", "40px", "color", "#6c757d"], [1, "invalid-template-state", 2, "flex", "1", "display", "flex", "flex-direction", "column", "align-items", "center", "justify-content", "center", "padding", "40px", "color", "#dc3545"], [1, "template-editor-container", 2, "flex", "1", "display", "flex", "flex-direction", "column", "min-height", "350px"], [2, "padding", "16px 0"], [2, "display", "grid", "grid-template-columns", "1fr 1fr", "gap", "20px"], ["FieldName", "ParallelizationMode", "Type", "dropdownlist", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "ParallelCount", "Type", "numerictextbox", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "ParallelConfigParam", "Type", "textbox", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "OutputType", "Type", "dropdownlist", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "EffortLevel", "Type", "numerictextbox", "Caption", "Effort Level (1-100)", "Description", "Higher values request more thorough reasoning", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "ValidationBehavior", "Type", "dropdownlist", 3, "Record", "ShowLabel", "EditMode"], ["FieldName", "EnableCaching", "Type", "checkbox", 3, "Record", "ShowLabel", "EditMode"], [2, "margin-bottom", "16px"], [2, "display", "block", "margin-bottom", "4px", "font-weight", "600", "color", "#495057", "font-size", "0.9em"], [2, "color", "#495057"], ["name", "promptName", "placeholder", "Enter prompt name...", 2, "font-size", "1.2em", "font-weight", "600", "min-width", "300px", "flex", "1", 3, "ngModelChange", "ngModel"], [2, "margin", "0", "color", "#495057", "font-weight", "600", "flex", "1"], [1, "status-badge", 2, "color", "white", "padding", "4px 10px", "border-radius", "12px", "font-size", "0.75em", "font-weight", "500"], ["name", "promptStatus", "textField", "text", "valueField", "value", 2, "width", "150px", 3, "ngModelChange", "ngModel", "data", "valuePrimitive"], [2, "color", "#dc3545"], [2, "padding", "8px", "color", "#6c757d", "font-style", "italic", "width", "200px"], ["name", "promptTypeID", "textField", "Name", "valueField", "ID", "placeholder", "Select prompt type...", 2, "width", "200px", 3, "ngModel", "data", "valuePrimitive", "filterable"], [1, "fa-solid", "fa-spinner", "fa-spin"], ["name", "promptTypeID", "textField", "Name", "valueField", "ID", "placeholder", "Select prompt type...", 2, "width", "200px", 3, "ngModelChange", "ngModel", "data", "valuePrimitive", "filterable"], ["name", "promptDescription", "placeholder", "Enter prompt description...", 2, "width", "100%", "max-width", "600px", "margin-bottom", "12px", 3, "ngModelChange", "ngModel", "rows"], [1, "fa-solid", "fa-tag", 2, "color", "#6c757d"], [1, "fa-solid", "fa-database", 2, "color", "#28a745"], [2, "color", "#28a745", "font-weight", "500"], [1, "fa-solid", "fa-tachometer-alt", 2, "color", "#6c757d"], ["kendoButton", "", "title", "Run AI Prompt Test Harness", 3, "click", "themeColor", "size"], [1, "fa-solid", "fa-play"], [2, "display", "flex", "align-items", "center", "gap", "8px", "font-weight", "600"], [2, "color", "#6c757d", "font-size", "0.9em", "font-weight", "normal"], [1, "fa-solid", "fa-spinner", "fa-spin", 2, "font-size", "24px", "margin-right", "12px"], [1, "fa-solid", "fa-code", 2, "font-size", "64px", "margin-bottom", "20px", "opacity", "0.3"], [2, "margin-bottom", "12px", "color", "#495057"], [2, "margin-bottom", "24px", "text-align", "center", "max-width", "400px"], [2, "display", "flex", "gap", "12px"], ["kendoButton", "", 3, "themeColor"], ["kendoButton", "", 3, "fillMode"], ["kendoButton", "", 3, "click", "themeColor"], [1, "fa-solid", "fa-plus"], ["kendoButton", "", 3, "click", "fillMode"], [1, "fa-solid", "fa-link"], [1, "fa-solid", "fa-exclamation-triangle", 2, "font-size", "64px", "margin-bottom", "20px", "opacity", "0.7"], [2, "margin-bottom", "12px"], [1, "fa-solid", "fa-refresh"], [1, "template-actions", 2, "display", "flex", "gap", "8px", "padding", "8px", "border-bottom", "1px solid #e9ecef", "background", "#f8f9fa"], [2, "flex", "1", "background", "white", "border-radius", "6px", "border", "1px solid #e9ecef"], [2, "display", "block", "min-height", "300px", 3, "contentChange", "runTemplate", "template", "config"], ["kendoButton", "", "title", "Change to a different template", 3, "fillMode", "size"], ["kendoButton", "", "title", "Open template in new window", 3, "fillMode", "size"], ["kendoButton", "", "title", "Change to a different template", 3, "click", "fillMode", "size"], [1, "fa-solid", "fa-exchange-alt"], ["kendoButton", "", "title", "Open template in new window", 3, "click", "fillMode", "size"], [1, "fa-solid", "fa-external-link-alt"], [1, "model-management", 2, "border", "1px solid #dee2e6", "border-radius", "6px", "background", "#f8f9fa"], [1, "loading-state", 2, "padding", "20px", "text-align", "center", "color", "#6c757d"], [1, "fa-solid", "fa-microchip", 2, "color", "#6c757d"], [1, "badge", 2, "background", "#17a2b8", "color", "white", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], [2, "color", "#6c757d", "font-size", "0.8em", "font-weight", "normal", "margin-left", "8px"], ["title", "Models are tried in order from top to bottom. The first available model will be used.", 1, "fa-solid", "fa-info-circle"], [1, "empty-state", 2, "padding", "20px", "text-align", "center", "color", "#6c757d"], [1, "fa-solid", "fa-info-circle"], [2, "margin-top", "10px"], ["kendoButton", "", "fillMode", "outline", "themeColor", "primary", "size", "small", 3, "click"], [2, "padding", "12px 16px", "background", "#e3f2fd", "border-bottom", "1px solid #bbdefb", "color", "#1565c0", "font-size", "0.85em"], [1, "model-header", 2, "display", "grid", "grid-template-columns", "40px 2fr 1fr 1fr 1fr 60px", "gap", "12px", "padding", "12px 16px", "background", "#e9ecef", "font-weight", "600", "font-size", "0.85em", "color", "#495057", "border-bottom", "1px solid #dee2e6"], ["title", "Priority order - models are tried from top to bottom"], [1, "fa-solid", "fa-sort", 2, "color", "#6c757d"], [1, "add-model-row", 2, "padding", "12px 16px", "text-align", "center", "background", "#f8f9fa", "border-top", "1px solid #dee2e6"], [1, "fa-solid", "fa-info-circle", 2, "margin-right", "6px"], [1, "model-row", 2, "display", "grid", "grid-template-columns", "40px 2fr 1fr 1fr 1fr 60px", "gap", "12px", "padding", "12px 16px", "border-bottom", "1px solid #e9ecef", "align-items", "start", "transition", "background 0.2s, opacity 0.2s", 3, "dragstart", "dragover", "drop", "dragend", "draggable"], [1, "drag-handle", 2, "display", "flex", "flex-direction", "column", "align-items", "center", "justify-content", "center", "color", "#6c757d"], [2, "font-size", "0.9em", "font-weight", "600", 3, "title"], [1, "model-select"], ["textField", "Name", "valueField", "ID", "placeholder", "Select a model...", 2, "width", "100%", 3, "ngModel", "name", "data", "valuePrimitive", "filterable"], [1, "model-vendor"], [1, "model-configuration"], [2, "font-size", "0.9em"], [1, "model-created"], [2, "color", "#6c757d", "font-size", "0.8em"], [2, "color", "#28a745", "font-size", "0.8em", "font-style", "italic"], [1, "model-actions", 2, "display", "flex", "gap", "2px", "flex-direction", "column"], [2, "display", "grid", "grid-template-columns", "40px 1fr", "gap", "12px", "padding", "8px 16px", "border-bottom", "1px solid #e9ecef", "background", "#f8f9fa", "font-size", "0.85em", "color", "#6c757d"], [2, "display", "flex", "gap", "16px", "flex-wrap", "wrap", "align-items", "center", "margin-bottom", "8px"], [2, "padding", "8px", "background", "#fff", "border", "1px solid #dee2e6", "border-radius", "4px", "margin-top", "8px"], ["title", "Drag to reorder priority", 1, "fa-solid", "fa-grip-vertical", 2, "cursor", "move"], [2, "font-size", "0.7em", "margin-top", "2px"], ["textField", "Name", "valueField", "ID", "placeholder", "Select a model...", 2, "width", "100%", 3, "ngModelChange", "valueChange", "ngModel", "name", "data", "valuePrimitive", "filterable"], [2, "color", "#6c757d", "font-style", "italic", "font-size", "0.9em"], ["textField", "Name", "valueField", "ID", "placeholder", "Select vendor...", 2, "width", "100%", 3, "ngModel", "name", "data", "valuePrimitive", "filterable"], ["textField", "Name", "valueField", "ID", "placeholder", "Select vendor...", 2, "width", "100%", 3, "ngModelChange", "ngModel", "name", "data", "valuePrimitive", "filterable"], ["kendoDropDownListItemTemplate", ""], [2, "font-size", "0.8em", "margin-left", "4px"], [2, "font-size", "0.9em", "font-weight", "500", 3, "color"], [2, "font-size", "0.9em", "font-weight", "500"], [2, "font-size", "0.9em", 3, "color"], [2, "color", "#6c757d", "font-size", "0.9em"], [2, "padding", "4px", "color", "#6c757d", "font-style", "italic", "font-size", "0.85em"], ["textField", "Name", "valueField", "ID", "placeholder", "Default", 2, "width", "100%", 3, "ngModel", "name", "data", "valuePrimitive", "filterable"], ["textField", "Name", "valueField", "ID", "placeholder", "Default", 2, "width", "100%", 3, "ngModelChange", "valueChange", "ngModel", "name", "data", "valuePrimitive", "filterable"], ["kendoDropDownListNoDataTemplate", ""], [2, "padding", "8px", "text-align", "center", "color", "#6c757d"], [2, "display", "flex", "gap", "2px", "margin-bottom", "4px"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove model"], ["kendoButton", "", "fillMode", "flat", "size", "small", "title", "Move up", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-up"], ["kendoButton", "", "fillMode", "flat", "size", "small", "title", "Move down", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-down"], ["kendoButton", "", "fillMode", "flat", "themeColor", "error", "size", "small", "title", "Remove model", 3, "click"], [1, "fa-solid", "fa-times"], [2, "margin-bottom", "6px", "font-weight", "600", "color", "#495057", "font-size", "0.9em"], [1, "fa-solid", "fa-layer-group"], [2, "display", "grid", "grid-template-columns", "1fr 1fr 1fr", "gap", "12px", "align-items", "center"], [2, "display", "flex", "gap", "16px", "flex-wrap", "wrap", "align-items", "center"], [2, "display", "block", "margin-bottom", "2px", "font-size", "0.8em", "font-weight", "600", "color", "#495057"], ["textField", "text", "valueField", "value", "placeholder", "Select mode...", 2, "width", "100%", "font-size", "0.85em", 3, "ngModelChange", "ngModel", "name", "data", "valuePrimitive"], ["placeholder", "Count...", 2, "width", "100%", "font-size", "0.85em", 3, "ngModelChange", "ngModel", "name", "min", "step", "format"], ["placeholder", "Parameter name...", 2, "width", "100%", "font-size", "0.85em", 3, "ngModelChange", "ngModel", "name"], ["kendoButton", "", "fillMode", "outline", "themeColor", "success", "size", "small", 3, "click"], [1, "fa-solid", "fa-cogs", 2, "color", "#6c757d"], [2, "padding", "8px", "color", "#6c757d", "font-style", "italic"], ["name", "resultSelectorPromptID", "textField", "text", "valueField", "value", "placeholder", "Select a result selector prompt...", 2, "width", "100%", 3, "ngModel", "data", "valuePrimitive", "filterable"], ["name", "resultSelectorPromptID", "textField", "text", "valueField", "value", "placeholder", "Select a result selector prompt...", 2, "width", "100%", 3, "ngModelChange", "valueChange", "ngModel", "data", "valuePrimitive", "filterable"], [1, "fa-solid", "fa-sliders", 2, "color", "#6c757d"], [1, "badge", 2, "background", "#6f42c1", "color", "white", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], ["title", "These parameters are defined in the template and will be available when executing this prompt", 1, "fa-solid", "fa-info-circle"], [2, "display", "grid", "gap", "12px"], [1, "parameter-card", 2, "border", "1px solid #e9ecef", "border-radius", "8px", "padding", "16px", "background", "#f8f9fa", "transition", "all 0.2s", 3, "border-left"], [2, "margin-top", "16px", "padding", "12px", "background", "#e3f2fd", "border-radius", "6px", "border", "1px solid #bbdefb"], [2, "display", "flex", "align-items", "flex-start", "gap", "8px"], [1, "fa-solid", "fa-lightbulb", 2, "color", "#1976d2", "margin-top", "2px"], [2, "flex", "1", "font-size", "0.85em", "color", "#1565c0", "line-height", "1.5"], [1, "parameter-card", 2, "border", "1px solid #e9ecef", "border-radius", "8px", "padding", "16px", "background", "#f8f9fa", "transition", "all 0.2s"], [2, "display", "flex", "justify-content", "space-between", "align-items", "flex-start", "margin-bottom", "8px"], [2, "display", "flex", "align-items", "center", "gap", "8px"], [2, "font-size", "1.2em"], [2, "margin", "0", "color", "#495057", "font-weight", "600"], [2, "color", "#dc3545", "font-size", "0.9em", "margin-left", "4px"], [1, "type-badge", 2, "color", "white", "padding", "4px 8px", "border-radius", "12px", "font-size", "0.75em", "font-weight", "500"], [2, "color", "#dc3545", "font-size", "0.85em", "font-weight", "500"], [2, "color", "#6c757d", "font-size", "0.85em"], [2, "margin", "0 0 8px 0", "color", "#6c757d", "font-size", "0.9em", "line-height", "1.4"], [2, "font-size", "0.85em", "color", "#495057"], [2, "display", "flex", "align-items", "center", "gap", "4px", "margin-bottom", "4px"], [1, "fa-solid", "fa-info-circle", 2, "color", "#6c757d"], [2, "display", "grid", "grid-template-columns", "repeat(auto-fit, minmax(200px, 1fr))", "gap", "12px", "margin-top", "12px"], [2, "background", "white", "padding", "8px 12px", "border-radius", "4px", "border", "1px solid #dee2e6"], [2, "display", "block", "font-size", "0.8em", "color", "#6c757d", "margin-bottom", "2px"], [2, "font-size", "0.85em", "color", "#495057", "word-break", "break-all"], [2, "font-size", "0.8em", "color", "#495057", "word-break", "break-all"], [2, "padding", "16px"], [2, "background", "#f8f9fa", "border", "1px solid #dee2e6", "border-radius", "4px", "padding", "12px", "font-family", "'Courier New', monospace", "font-size", "0.9em", "white-space", "pre-wrap", "overflow", "auto", "max-height", "250px"], [2, "background", "#fff3cd", "border", "1px solid #ffeaa7", "border-radius", "4px", "padding", "12px", "color", "#856404", "text-align", "center"], [2, "color", "#dc3545", "font-size", "0.8em", "font-weight", "normal"], ["name", "outputExample", "language", "json", "placeholder", "Enter JSON example structure...", 2, "width", "100%", "height", "200px", "border", "1px solid #dee2e6", "border-radius", "4px", 3, "ngModelChange", "ngModel"], [2, "margin-top", "8px", "color", "#6c757d", "font-size", "0.85em"], [1, "fa-solid", "fa-exclamation-triangle"], [2, "text-align", "center", "padding", "40px", "color", "#6c757d"], [1, "fa-solid", "fa-history", 2, "color", "#6c757d"], [2, "color", "#6c757d", "font-weight", "normal"], [1, "fa-solid", "fa-spinner", "fa-spin", 2, "font-size", "2em", "margin-bottom", "12px"], [1, "fa-solid", "fa-history", 2, "font-size", "3em", "margin-bottom", "12px", "opacity", "0.3"], [2, "display", "flex", "justify-content", "space-between", "align-items", "center", "margin-bottom", "16px"], [2, "display", "flex", "gap", "8px", "align-items", "center"], ["selection", "single"], ["kendoButton", "", "size", "small", 3, "click", "selected"], [2, "margin-left", "4px", "font-size", "0.8em", 3, "class"], [2, "border", "1px solid #e9ecef", "border-radius", "8px", "overflow", "hidden"], [2, "width", "100%", "border-collapse", "collapse"], [2, "background", "#f8f9fa", "border-bottom", "2px solid #e9ecef"], [2, "padding", "12px", "text-align", "left", "font-weight", "600", "color", "#495057"], [2, "padding", "12px", "text-align", "right", "font-weight", "600", "color", "#495057"], [2, "padding", "12px", "text-align", "center", "font-weight", "600", "color", "#495057"], [1, "history-row", 2, "border-bottom", "1px solid #f1f3f5", 3, "even-row"], [2, "margin-left", "4px", "font-size", "0.8em"], [1, "history-row", 2, "border-bottom", "1px solid #f1f3f5"], [2, "padding", "12px"], [2, "display", "flex", "align-items", "center", "gap", "6px"], [2, "padding", "12px", "color", "#495057"], [2, "padding", "12px", "text-align", "right", "color", "#495057"], [2, "padding", "12px", "text-align", "center"], [2, "padding", "4px 8px", "border-radius", "12px", "background", "#e9ecef", "color", "#495057", "font-size", "0.85em", "font-weight", "500"], ["kendoButton", "", "fillMode", "flat", "size", "small", "title", "View details", 3, "click"], [1, "fa-solid", "fa-external-link"], [3, "Params", "NewRecordValues", "AllowLoad", "ShowToolbar"], [1, "fa-solid", "fa-database", 2, "color", "#6c757d"], [2, "margin", "0 0 12px 0", "color", "#495057"], [1, "fa-solid", "fa-link", 2, "color", "#6c757d"], [3, "close", "width", "height", "minWidth", "minHeight", "draggable", "resizable", "state", "title"], [3, "visibilityChange", "entity", "mode", "isVisible"]], template: function MJAIPromptFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
3065
3065
  i0.ɵɵelementStart(0, "div", 2);
3066
3066
  i0.ɵɵelement(1, "div", 3);
3067
- i0.ɵɵconditionalCreate(2, AIPromptFormComponentExtended_Conditional_2_Template, 66, 40, "form", 4);
3068
- i0.ɵɵconditionalCreate(3, AIPromptFormComponentExtended_Conditional_3_Template, 2, 12, "kendo-window", 5);
3067
+ i0.ɵɵconditionalCreate(2, MJAIPromptFormComponentExtended_Conditional_2_Template, 66, 40, "form", 4);
3068
+ i0.ɵɵconditionalCreate(3, MJAIPromptFormComponentExtended_Conditional_3_Template, 2, 12, "kendo-window", 5);
3069
3069
  i0.ɵɵelementEnd();
3070
3070
  } if (rf & 2) {
3071
3071
  i0.ɵɵadvance(2);
@@ -3074,16 +3074,16 @@ let AIPromptFormComponentExtended = class AIPromptFormComponentExtended extends
3074
3074
  i0.ɵɵconditional(ctx.showTestHarness ? 3 : -1);
3075
3075
  } }, dependencies: [i1.ɵNgNoValidate, i1.NgControlStatus, i1.NgControlStatusGroup, i1.NgModel, i1.NgForm, i2.ExpansionPanelComponent, i2.ExpansionPanelTitleDirective, i3.DialogContainerDirective, i3.WindowComponent, i4.TextBoxComponent, i4.NumericTextBoxComponent, i4.TextAreaComponent, i5.ItemTemplateDirective, i5.NoDataTemplateDirective, i5.DropDownListComponent, i5.DropDownTreeComponent, i6.ButtonComponent, i6.ButtonGroupComponent, i7.MjFormToolbarComponent, i7.MjFormFieldComponent, i7.ExplorerEntityDataGridComponent, i8.CodeEditorComponent, i9.AITestHarnessComponent, i10.TemplateEditorComponent, i11.DatePipe], styles: [".record-form-container[_ngcontent-%COMP%] {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n padding: 10px;\n}\n\n.custom-toolbar-actions[_ngcontent-%COMP%] {\n margin-left: auto;\n}\n\n.status-badge[_ngcontent-%COMP%] {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n font-weight: 500;\n letter-spacing: 0.02em;\n}\n\n.config-summary[_ngcontent-%COMP%] {\n position: sticky;\n top: 0;\n max-height: 600px;\n overflow-y: auto;\n}\n\n.config-item[_ngcontent-%COMP%] {\n padding: 8px 0;\n border-bottom: 1px solid #e9ecef;\n}\n\n.config-item[_ngcontent-%COMP%]:last-child {\n border-bottom: none;\n}\n\n.template-tab-content[_ngcontent-%COMP%] {\n background: #fff;\n}\n\n.template-header[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] {\n font-size: 1.1em;\n}\n\n.loading-state[_ngcontent-%COMP%], \n.no-template-state[_ngcontent-%COMP%], \n.invalid-template-state[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n\n.no-template-state[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.invalid-template-state[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n opacity: 0.6;\n}\n\n.template-editor-container[_ngcontent-%COMP%] {\n background: #fff;\n border-radius: 6px;\n}\n\n\n\n@media (max-width: 1200px) {\n .record-form-container[_ngcontent-%COMP%] .mj-tab-body[_ngcontent-%COMP%] > div[_ngcontent-%COMP%] {\n grid-template-columns: 1fr !important;\n gap: 20px;\n }\n \n .config-summary[_ngcontent-%COMP%] {\n order: -1;\n position: static;\n max-height: none;\n }\n}\n\n\n\n@media (max-width: 768px) {\n .custom-toolbar-actions[_ngcontent-%COMP%] {\n flex-direction: column;\n gap: 4px !important;\n }\n \n .status-badge[_ngcontent-%COMP%] {\n align-self: flex-start;\n }\n}\n\n\n\n.record-form-container[_ngcontent-%COMP%] mj-form-section[_ngcontent-%COMP%] {\n padding: 16px;\n}\n\n\n\n.status-badge[_ngcontent-%COMP%], \n.config-item[_ngcontent-%COMP%], \n.template-header[_ngcontent-%COMP%] {\n transition: all 0.2s ease;\n}\n\n.config-item[_ngcontent-%COMP%]:hover {\n background-color: rgba(0,0,0,0.02);\n border-radius: 4px;\n margin: 0 -8px;\n padding: 8px;\n}\n\n\n\n.history-row[_ngcontent-%COMP%] {\n transition: background 0.2s;\n}\n\n.history-row[_ngcontent-%COMP%]:not(.even-row) {\n background: #f8f9fa;\n}\n\n.history-row.even-row[_ngcontent-%COMP%] {\n background: white;\n}\n\n.history-row[_ngcontent-%COMP%]:hover {\n background: #e9ecef !important;\n}\n\n\n\n.parameter-card[_ngcontent-%COMP%] {\n position: relative;\n overflow: hidden;\n}\n\n.parameter-card[_ngcontent-%COMP%]::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 4px;\n background: inherit;\n transition: width 0.2s;\n}\n\n.parameter-card[_ngcontent-%COMP%]:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 12px rgba(0,0,0,0.1);\n}\n\n.parameter-card[_ngcontent-%COMP%]:hover::before {\n width: 6px;\n}\n\n.type-badge[_ngcontent-%COMP%] {\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n transition: transform 0.2s;\n}\n\n.parameter-card[_ngcontent-%COMP%]:hover .type-badge[_ngcontent-%COMP%] {\n transform: scale(1.05);\n}\n\n\n\n.parameter-card[_ngcontent-%COMP%] i.fa-solid[_ngcontent-%COMP%] {\n transition: transform 0.3s;\n}\n\n.parameter-card[_ngcontent-%COMP%]:hover i.fa-solid[_ngcontent-%COMP%] {\n transform: rotate(360deg);\n}\n\n\n\n@media (max-width: 768px) {\n .parameter-card[_ngcontent-%COMP%] {\n margin-bottom: 8px;\n }\n \n .parameter-card[_ngcontent-%COMP%] h6[_ngcontent-%COMP%] {\n font-size: 0.95em;\n }\n \n .type-badge[_ngcontent-%COMP%] {\n font-size: 0.7em !important;\n }\n}"] }); }
3076
3076
  };
3077
- AIPromptFormComponentExtended = __decorate([
3077
+ MJAIPromptFormComponentExtended = __decorate([
3078
3078
  RegisterClass(BaseFormComponent, 'MJ: AI Prompts')
3079
- ], AIPromptFormComponentExtended);
3080
- export { AIPromptFormComponentExtended };
3081
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AIPromptFormComponentExtended, [{
3079
+ ], MJAIPromptFormComponentExtended);
3080
+ export { MJAIPromptFormComponentExtended };
3081
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MJAIPromptFormComponentExtended, [{
3082
3082
  type: Component,
3083
3083
  args: [{ standalone: false, selector: 'mj-ai-prompt-form', template: "<div class=\"record-form-container\">\n <!-- Dialog container for Kendo dialogs -->\n <div kendoDialogContainer></div>\n @if (record) {\n <form class=\"record-form\" #form=\"ngForm\" >\n <mj-form-toolbar [Form]=\"this\"></mj-form-toolbar>\n <!-- Main Content Area - Template Editor and Configuration -->\n <div class=\"prompt-main-area\" style=\"display: flex; flex-direction: column; height: 100%; overflow-y: auto;\">\n <!-- Header Section -->\n <div class=\"prompt-header\" style=\"flex-shrink: 0; padding: 20px; background: #f8f9fa; border-bottom: 2px solid #e9ecef;\">\n <div style=\"display: flex; justify-content: space-between; align-items: flex-start; gap: 20px;\">\n <!-- Left: Prompt Info -->\n <div style=\"flex: 1; min-width: 0;\">\n <div style=\"display: flex; align-items: center; gap: 12px; margin-bottom: 8px;\">\n <i class=\"fa-solid fa-robot\" style=\"color: #6f42c1; font-size: 1.4em;\"></i>\n @if (EditMode) {\n <kendo-textbox [(ngModel)]=\"record.Name\"\n name=\"promptName\"\n placeholder=\"Enter prompt name...\"\n style=\"font-size: 1.2em; font-weight: 600; min-width: 300px; flex: 1;\">\n </kendo-textbox>\n } @else {\n <h4 style=\"margin: 0; color: #495057; font-weight: 600; flex: 1;\">{{ record.Name || 'Untitled AI Prompt' }}</h4>\n <span class=\"status-badge\" [style.background-color]=\"getStatusBadgeColor()\"\n style=\"color: white; padding: 4px 10px; border-radius: 12px; font-size: 0.75em; font-weight: 500;\">\n {{ record.Status }}\n </span>\n }\n </div>\n <!-- Status and Type Editors when in edit mode -->\n @if (EditMode) {\n <div style=\"display: flex; gap: 16px; margin-bottom: 12px; flex-wrap: wrap;\">\n <div>\n <label style=\"display: block; margin-bottom: 4px; font-weight: 600; color: #495057; font-size: 0.9em;\">Status</label>\n <kendo-dropdownlist [(ngModel)]=\"record.Status\"\n name=\"promptStatus\"\n [data]=\"[{text: 'Active', value: 'Active'}, {text: 'Pending', value: 'Pending'}, {text: 'Disabled', value: 'Disabled'}]\"\n textField=\"text\"\n valueField=\"value\"\n [valuePrimitive]=\"true\"\n style=\"width: 150px;\">\n </kendo-dropdownlist>\n </div>\n <div>\n <label style=\"display: block; margin-bottom: 4px; font-weight: 600; color: #495057; font-size: 0.9em;\">\n Type <span style=\"color: #dc3545;\">*</span>\n </label>\n @if (isLoadingPromptTypes) {\n <div style=\"padding: 8px; color: #6c757d; font-style: italic; width: 200px;\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Loading types...\n </div>\n } @else {\n <kendo-dropdownlist [(ngModel)]=\"record.TypeID\"\n name=\"promptTypeID\"\n [data]=\"availablePromptTypes\"\n textField=\"Name\"\n valueField=\"ID\"\n [valuePrimitive]=\"true\"\n [filterable]=\"true\"\n placeholder=\"Select prompt type...\"\n style=\"width: 200px;\">\n </kendo-dropdownlist>\n }\n </div>\n </div>\n }\n @if (EditMode) {\n <kendo-textarea [(ngModel)]=\"record.Description\"\n name=\"promptDescription\"\n [rows]=\"2\"\n placeholder=\"Enter prompt description...\"\n style=\"width: 100%; max-width: 600px; margin-bottom: 12px;\">\n </kendo-textarea>\n } @else if (record.Description) {\n <p style=\"margin: 0 0 12px 0; color: #6c757d; font-size: 0.9em; line-height: 1.4;\">{{ record.Description }}</p>\n }\n <!-- Quick Config Row -->\n <div class=\"quick-config\" style=\"display: flex; align-items: center; gap: 16px; flex-wrap: wrap;\">\n @if (record.TypeID) {\n <div class=\"config-item\" style=\"display: flex; align-items: center; gap: 6px; font-size: 0.85em;\">\n <i class=\"fa-solid fa-tag\" style=\"color: #6c757d;\"></i>\n <span style=\"color: #6c757d;\">Type:</span>\n <span style=\"color: #495057; font-weight: 500;\">{{ getPromptTypeDisplayName(record.TypeID) }}</span>\n </div>\n }\n <div class=\"config-item\" style=\"display: flex; align-items: center; gap: 6px; font-size: 0.85em;\">\n <i class=\"fa-solid fa-layer-group\" style=\"color: #6c757d;\"></i>\n <span style=\"color: #6c757d;\">Parallelization:</span>\n <span style=\"color: #495057; font-weight: 500;\">{{ getParallelizationModeDisplay() }}</span>\n </div>\n <div class=\"config-item\" style=\"display: flex; align-items: center; gap: 6px; font-size: 0.85em;\">\n <i class=\"fa-solid fa-code\" style=\"color: #6c757d;\"></i>\n <span style=\"color: #6c757d;\">Output:</span>\n <span [style.color]=\"getValidationColor()\" style=\"font-weight: 500;\">{{ getOutputTypeDisplay() }}</span>\n </div>\n @if (record.EnableCaching) {\n <div class=\"config-item\" style=\"display: flex; align-items: center; gap: 6px; font-size: 0.85em;\">\n <i class=\"fa-solid fa-database\" style=\"color: #28a745;\"></i>\n <span style=\"color: #28a745; font-weight: 500;\">Caching Enabled</span>\n </div>\n }\n @if (record.EffortLevel) {\n <div class=\"config-item\" style=\"display: flex; align-items: center; gap: 6px; font-size: 0.85em;\">\n <i class=\"fa-solid fa-tachometer-alt\" style=\"color: #6c757d;\"></i>\n <span style=\"color: #6c757d;\">Effort Level:</span>\n <span style=\"color: #495057; font-weight: 500;\">{{ record.EffortLevel }}</span>\n </div>\n }\n </div>\n </div>\n <!-- Right: Action Buttons -->\n <div class=\"action-buttons\" style=\"display: flex; flex-direction: column; gap: 8px; align-items: flex-end;\">\n <div style=\"display: flex; gap: 8px;\">\n @if (record.ID) {\n <button kendoButton [themeColor]=\"'primary'\" [size]=\"'large'\"\n (click)=\"openTestHarness()\"\n title=\"Run AI Prompt Test Harness\">\n <i class=\"fa-solid fa-play\"></i> Run\n </button>\n }\n </div>\n @if (!canExecute && record.ID) {\n <div style=\"font-size: 0.75em; color: #dc3545; text-align: right; max-width: 200px;\">\n @if (record.Status !== 'Active') {\n \u2022 Prompt must be Active<br>\n }\n @if (!record.TemplateID) {\n \u2022 Template is required<br>\n }\n @if (!template && record.TemplateID) {\n \u2022 Template not found<br>\n }\n </div>\n }\n </div>\n </div>\n </div>\n <!-- Configuration Sections with Expansion Panels -->\n <div class=\"configuration-sections\" style=\"flex: 1; background: white; border-top: 2px solid #e9ecef; padding: 16px; min-height: 0;\">\n <!-- Template Editor Section -->\n <kendo-expansionpanel\n [expanded]=\"true\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-code\" style=\"color: #6c757d;\"></i>\n Template Editor\n @if (template) {\n <span style=\"color: #6c757d; font-size: 0.9em; font-weight: normal;\">\u2022 {{ template.Name }}</span>\n }\n </span>\n </ng-template>\n <!-- Direct Content Projection -->\n <div class=\"template-section\" style=\"display: flex; flex-direction: column; min-height: 400px; padding: 8px;\">\n @if (isLoadingTemplate) {\n <div class=\"loading-state\" style=\"flex: 1; display: flex; align-items: center; justify-content: center; color: #6c757d;\">\n <i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 24px; margin-right: 12px;\"></i>\n Loading template...\n </div>\n } @else if (!record.TemplateID) {\n <div class=\"no-template-state\" style=\"flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px; color: #6c757d;\">\n <i class=\"fa-solid fa-code\" style=\"font-size: 64px; margin-bottom: 20px; opacity: 0.3;\"></i>\n <h5 style=\"margin-bottom: 12px; color: #495057;\">No Template Associated</h5>\n <p style=\"margin-bottom: 24px; text-align: center; max-width: 400px;\">\n This AI prompt needs a template to define its structure and parameters.\n Create a new template or link to an existing one.\n </p>\n <div style=\"display: flex; gap: 12px;\">\n @if (UserCanCreateTemplates) {\n <button kendoButton [themeColor]=\"'primary'\" (click)=\"createNewTemplate()\">\n <i class=\"fa-solid fa-plus\"></i> Create New Template\n </button>\n }\n @if (UserCanReadTemplates) {\n <button kendoButton [fillMode]=\"'outline'\" (click)=\"linkExistingTemplate()\">\n <i class=\"fa-solid fa-link\"></i> Link Existing Template\n </button>\n }\n </div>\n </div>\n } @else if (templateNotFoundInDatabase) {\n <div class=\"invalid-template-state\" style=\"flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px; color: #dc3545;\">\n <i class=\"fa-solid fa-exclamation-triangle\" style=\"font-size: 64px; margin-bottom: 20px; opacity: 0.7;\"></i>\n <h5 style=\"margin-bottom: 12px;\">Template Not Found</h5>\n <p style=\"margin-bottom: 24px; text-align: center; max-width: 400px;\">\n The referenced template could not be loaded. It may have been deleted or moved.\n </p>\n <div style=\"display: flex; gap: 12px;\">\n <button kendoButton [fillMode]=\"'outline'\" (click)=\"loadTemplate()\">\n <i class=\"fa-solid fa-refresh\"></i> Retry Loading\n </button>\n @if (UserCanCreateTemplates) {\n <button kendoButton [themeColor]=\"'primary'\" (click)=\"createNewTemplate()\">\n <i class=\"fa-solid fa-plus\"></i> Create New Template\n </button>\n }\n </div>\n </div>\n } @else {\n <!-- Active Template Editor -->\n <div class=\"template-editor-container\" style=\"flex: 1; display: flex; flex-direction: column; min-height: 350px;\">\n <!-- Template Actions Bar -->\n @if (template && EditMode) {\n <div class=\"template-actions\" style=\"display: flex; gap: 8px; padding: 8px; border-bottom: 1px solid #e9ecef; background: #f8f9fa;\">\n @if (UserCanUpdateTemplates) {\n <button kendoButton\n [fillMode]=\"'outline'\"\n [size]=\"'small'\"\n (click)=\"linkExistingTemplate()\"\n title=\"Change to a different template\">\n <i class=\"fa-solid fa-exchange-alt\"></i> Change Template\n </button>\n }\n @if (UserCanReadTemplates) {\n <button kendoButton\n [fillMode]=\"'outline'\"\n [size]=\"'small'\"\n (click)=\"openTemplateInNewWindow()\"\n title=\"Open template in new window\">\n <i class=\"fa-solid fa-external-link-alt\"></i> Open in New Window\n </button>\n }\n </div>\n }\n <!-- Template Editor -->\n <div style=\"flex: 1; background: white; border-radius: 6px; border: 1px solid #e9ecef;\">\n <mj-template-editor\n #templateEditor\n [template]=\"template\"\n [config]=\"templateEditorConfig\"\n (contentChange)=\"onTemplateContentChange($event)\"\n (runTemplate)=\"onTemplateRun($event)\"\n style=\"display: block; min-height: 300px;\">\n </mj-template-editor>\n </div>\n </div>\n }\n </div>\n </kendo-expansionpanel>\n <!-- Model Configuration Expansion Panel -->\n @if (record.IsSaved) {\n <kendo-expansionpanel\n [expanded]=\"true\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-microchip\" style=\"color: #6c757d;\"></i>\n Models\n @if (promptModels.length > 0) {\n <span class=\"badge\" style=\"background: #17a2b8; color: white; padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ promptModels.length }}\n </span>\n }\n <span style=\"color: #6c757d; font-size: 0.8em; font-weight: normal; margin-left: 8px;\">\n <i class=\"fa-solid fa-info-circle\" title=\"Models are tried in order from top to bottom. The first available model will be used.\"></i>\n Priority order (first available model will be used)\n </span>\n </span>\n </ng-template>\n <!-- Direct Content Projection -->\n <div style=\"padding: 16px 0;\">\n <!-- Model Management Interface -->\n <div class=\"model-management\" style=\"border: 1px solid #dee2e6; border-radius: 6px; background: #f8f9fa;\">\n @if (isLoadingModels) {\n <div class=\"loading-state\" style=\"padding: 20px; text-align: center; color: #6c757d;\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Loading models...\n </div>\n } @else {\n @if (promptModels.length === 0) {\n <div class=\"empty-state\" style=\"padding: 20px; text-align: center; color: #6c757d;\">\n <i class=\"fa-solid fa-info-circle\"></i> No models configured\n @if (EditMode && UserCanCreatePromptModels) {\n <div style=\"margin-top: 10px;\">\n <button kendoButton fillMode=\"outline\" themeColor=\"primary\" size=\"small\"\n (click)=\"addNewModel()\">\n <i class=\"fa-solid fa-plus\"></i> Add Model\n </button>\n </div>\n }\n </div>\n } @else {\n <!-- Priority explanation for multiple models -->\n @if (promptModels.length > 1) {\n <div style=\"padding: 12px 16px; background: #e3f2fd; border-bottom: 1px solid #bbdefb; color: #1565c0; font-size: 0.85em;\">\n <i class=\"fa-solid fa-info-circle\" style=\"margin-right: 6px;\"></i>\n Models are tried in priority order (highest priority first). The first available model that meets requirements will be used for execution.\n </div>\n }\n <!-- Column Headers -->\n <div class=\"model-header\" style=\"display: grid; grid-template-columns: 40px 2fr 1fr 1fr 1fr 60px; gap: 12px; padding: 12px 16px; background: #e9ecef; font-weight: 600; font-size: 0.85em; color: #495057; border-bottom: 1px solid #dee2e6;\">\n <div title=\"Priority order - models are tried from top to bottom\">\n <i class=\"fa-solid fa-sort\" style=\"color: #6c757d;\"></i>\n </div>\n <div>AI Model <span style=\"color: #dc3545;\">*</span></div>\n <div>Vendor</div>\n <div>Configuration</div>\n <div>Created</div>\n <div>Actions</div>\n </div>\n @for (model of promptModels; track getModelTrackId(model) || $index; let i = $index) {\n <div class=\"model-row\"\n [draggable]=\"EditMode\"\n (dragstart)=\"onDragStart($event, i)\"\n (dragover)=\"onDragOver($event)\"\n (drop)=\"onDrop($event, i)\"\n (dragend)=\"onDragEnd($event)\"\n [style.background]=\"!model.ModelID ? '#fff3cd' : (draggedIndex === i ? '#e3f2fd' : 'white')\"\n [style.border-left]=\"!model.ModelID ? '3px solid #ffc107' : 'none'\"\n [style.opacity]=\"draggedIndex === i ? '0.5' : '1'\"\n style=\"display: grid; grid-template-columns: 40px 2fr 1fr 1fr 1fr 60px; gap: 12px; padding: 12px 16px; border-bottom: 1px solid #e9ecef; align-items: start; transition: background 0.2s, opacity 0.2s;\">\n <!-- Drag Handle / Priority -->\n <div class=\"drag-handle\" style=\"display: flex; flex-direction: column; align-items: center; justify-content: center; color: #6c757d;\">\n @if (EditMode) {\n <i class=\"fa-solid fa-grip-vertical\" title=\"Drag to reorder priority\" style=\"cursor: move;\"></i>\n <span style=\"font-size: 0.7em; margin-top: 2px;\">#{{ i + 1 }}</span>\n } @else {\n <span style=\"font-size: 0.9em; font-weight: 600;\" title=\"Priority {{ model.Priority }} - Higher priority numbers are tried first\">#{{ i + 1 }}</span>\n }\n </div>\n <!-- Model Selection -->\n <div class=\"model-select\">\n @if (EditMode) {\n <kendo-dropdownlist [(ngModel)]=\"model.ModelID\"\n [name]=\"'modelId_' + getModelTrackId(model)\"\n [data]=\"availableModels\"\n textField=\"Name\"\n valueField=\"ID\"\n [valuePrimitive]=\"true\"\n [filterable]=\"true\"\n placeholder=\"Select a model...\"\n (valueChange)=\"onModelChange($event, i)\"\n style=\"width: 100%;\">\n </kendo-dropdownlist>\n } @else {\n <span style=\"font-weight: 500;\">{{ getModelDisplayName(model.ModelID) }}</span>\n }\n </div>\n <!-- Vendor -->\n <div class=\"model-vendor\">\n @if (EditMode) {\n @if (model.ModelID) {\n @if (shouldShowVendorDropdown(model.ModelID)) {\n <kendo-dropdownlist [(ngModel)]=\"model.VendorID\"\n [name]=\"'vendorId_' + getModelTrackId(model)\"\n [data]=\"getVendorsForModelSync(model.ModelID)\"\n textField=\"Name\"\n valueField=\"ID\"\n [valuePrimitive]=\"true\"\n [filterable]=\"true\"\n placeholder=\"Select vendor...\"\n style=\"width: 100%;\">\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span [style.color]=\"getVendorStatusColor(model.ModelID, dataItem.ID)\">\n {{ dataItem.Name }}\n @if (getModelVendorStatus(model.ModelID, dataItem.ID) !== 'Active') {\n <span style=\"font-size: 0.8em; margin-left: 4px;\">({{ getModelVendorStatus(model.ModelID, dataItem.ID) }})</span>\n }\n </span>\n </ng-template>\n </kendo-dropdownlist>\n } @else {\n <!-- Single vendor - just show the name -->\n @if (getVendorsForModelSync(model.ModelID).length === 1) {\n <span [style.color]=\"getVendorStatusColor(model.ModelID, getVendorsForModelSync(model.ModelID)[0].ID)\" style=\"font-size: 0.9em; font-weight: 500;\">\n {{ getVendorsForModelSync(model.ModelID)[0].Name }}\n @if (getModelVendorStatus(model.ModelID, getVendorsForModelSync(model.ModelID)[0].ID) !== 'Active') {\n <span style=\"font-size: 0.8em; margin-left: 4px;\">({{ getModelVendorStatus(model.ModelID, getVendorsForModelSync(model.ModelID)[0].ID) }})</span>\n }\n </span>\n } @else {\n <span style=\"color: #6c757d; font-style: italic; font-size: 0.9em;\">No vendors available</span>\n }\n }\n } @else {\n <span style=\"color: #6c757d; font-style: italic; font-size: 0.9em;\">Select model first</span>\n }\n } @else {\n @if (model.VendorID && model.ModelID) {\n <span [style.color]=\"getVendorStatusColor(model.ModelID, model.VendorID)\" style=\"font-size: 0.9em;\">\n {{ getVendorDisplayName(model.VendorID) }}\n @if (getModelVendorStatus(model.ModelID, model.VendorID) !== 'Active') {\n <span style=\"font-size: 0.8em; margin-left: 4px;\">({{ getModelVendorStatus(model.ModelID, model.VendorID) }})</span>\n }\n </span>\n } @else {\n <span style=\"color: #6c757d; font-size: 0.9em;\">-</span>\n }\n }\n </div>\n <!-- Configuration -->\n <div class=\"model-configuration\">\n @if (EditMode) {\n @if (isLoadingConfigurations) {\n <div style=\"padding: 4px; color: #6c757d; font-style: italic; font-size: 0.85em;\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Loading...\n </div>\n } @else {\n <kendo-dropdownlist [(ngModel)]=\"model.ConfigurationID\"\n [name]=\"'configurationId_' + getModelTrackId(model)\"\n [data]=\"availableConfigurations\"\n textField=\"Name\"\n valueField=\"ID\"\n [valuePrimitive]=\"true\"\n [filterable]=\"true\"\n placeholder=\"Default\"\n (valueChange)=\"onConfigurationChange($event, i)\"\n style=\"width: 100%;\">\n <ng-template kendoDropDownListNoDataTemplate>\n <div style=\"padding: 8px; text-align: center; color: #6c757d;\">\n No configurations available\n </div>\n </ng-template>\n </kendo-dropdownlist>\n }\n } @else {\n <span style=\"font-size: 0.9em;\">{{ getConfigurationDisplayName(model.ConfigurationID) }}</span>\n }\n </div>\n <!-- Created Date -->\n <div class=\"model-created\">\n @if (model.ID) {\n <span style=\"color: #6c757d; font-size: 0.8em;\">{{ model.__mj_CreatedAt | date:'short' }}</span>\n } @else {\n <span style=\"color: #28a745; font-size: 0.8em; font-style: italic;\">New</span>\n }\n </div>\n <!-- Actions -->\n <div class=\"model-actions\" style=\"display: flex; gap: 2px; flex-direction: column;\">\n @if (EditMode) {\n <div style=\"display: flex; gap: 2px; margin-bottom: 4px;\">\n @if (UserCanUpdatePromptModels) {\n <button kendoButton fillMode=\"flat\" size=\"small\"\n (click)=\"moveModelUp(i)\"\n [disabled]=\"i === 0\"\n title=\"Move up\">\n <i class=\"fa-solid fa-chevron-up\"></i>\n </button>\n <button kendoButton fillMode=\"flat\" size=\"small\"\n (click)=\"moveModelDown(i)\"\n [disabled]=\"i === promptModels.length - 1\"\n title=\"Move down\">\n <i class=\"fa-solid fa-chevron-down\"></i>\n </button>\n }\n </div>\n @if (UserCanDeletePromptModels) {\n <button kendoButton fillMode=\"flat\" themeColor=\"error\" size=\"small\"\n (click)=\"removePromptModel(i)\"\n title=\"Remove model\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n }\n }\n </div>\n </div>\n <!-- Second row with additional details -->\n <div style=\"display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 8px 16px; border-bottom: 1px solid #e9ecef; background: #f8f9fa; font-size: 0.85em; color: #6c757d;\">\n <div></div>\n <div>\n <!-- Basic model details -->\n <div style=\"display: flex; gap: 16px; flex-wrap: wrap; align-items: center; margin-bottom: 8px;\">\n @if (model.Status) {\n <span><strong>Status:</strong> {{ model.Status }}</span>\n }\n </div>\n <!-- Parallel execution fields when prompt is ModelSpecific -->\n @if (record.ParallelizationMode === 'ModelSpecific') {\n <div style=\"padding: 8px; background: #fff; border: 1px solid #dee2e6; border-radius: 4px; margin-top: 8px;\">\n <div style=\"margin-bottom: 6px; font-weight: 600; color: #495057; font-size: 0.9em;\">\n <i class=\"fa-solid fa-layer-group\"></i> Model-Specific Parallel Execution\n </div>\n @if (EditMode) {\n <div style=\"display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; align-items: center;\">\n <!-- Parallel Mode -->\n <div>\n <label style=\"display: block; margin-bottom: 2px; font-size: 0.8em; font-weight: 600; color: #495057;\">Parallel Mode</label>\n <kendo-dropdownlist [(ngModel)]=\"model.ParallelizationMode\"\n [name]=\"'parallelMode_' + i\"\n [data]=\"[{text: 'None', value: 'None'}, {text: 'Static Count', value: 'StaticCount'}, {text: 'Config Param', value: 'ConfigParam'}]\"\n textField=\"text\"\n valueField=\"value\"\n [valuePrimitive]=\"true\"\n placeholder=\"Select mode...\"\n style=\"width: 100%; font-size: 0.85em;\">\n </kendo-dropdownlist>\n </div>\n <!-- Parallel Count (when StaticCount) -->\n @if (model.ParallelizationMode === 'StaticCount') {\n <div>\n <label style=\"display: block; margin-bottom: 2px; font-size: 0.8em; font-weight: 600; color: #495057;\">Parallel Count</label>\n <kendo-numerictextbox [(ngModel)]=\"model.ParallelCount\"\n [name]=\"'parallelCount_' + i\"\n [min]=\"1\"\n [step]=\"1\"\n [format]=\"'n0'\"\n placeholder=\"Count...\"\n style=\"width: 100%; font-size: 0.85em;\">\n </kendo-numerictextbox>\n </div>\n }\n <!-- Config Param (when ConfigParam) -->\n @if (model.ParallelizationMode === 'ConfigParam') {\n <div>\n <label style=\"display: block; margin-bottom: 2px; font-size: 0.8em; font-weight: 600; color: #495057;\">Config Parameter</label>\n <kendo-textbox [(ngModel)]=\"model.ParallelConfigParam\"\n [name]=\"'parallelConfigParam_' + i\"\n placeholder=\"Parameter name...\"\n style=\"width: 100%; font-size: 0.85em;\">\n </kendo-textbox>\n </div>\n }\n </div>\n } @else {\n <!-- Read-only display -->\n <div style=\"display: flex; gap: 16px; flex-wrap: wrap; align-items: center;\">\n @if (model.ParallelizationMode) {\n <span><strong>Parallel Mode:</strong> {{ model.ParallelizationMode }}</span>\n }\n @if (model.ParallelCount) {\n <span><strong>Parallel Count:</strong> {{ model.ParallelCount }}</span>\n }\n @if (model.ParallelConfigParam) {\n <span><strong>Config Param:</strong> {{ model.ParallelConfigParam }}</span>\n }\n </div>\n }\n </div>\n }\n </div>\n </div>\n }\n @if (EditMode && UserCanCreatePromptModels) {\n <div class=\"add-model-row\" style=\"padding: 12px 16px; text-align: center; background: #f8f9fa; border-top: 1px solid #dee2e6;\">\n <button kendoButton fillMode=\"outline\" themeColor=\"success\" size=\"small\"\n (click)=\"addNewModel()\">\n <i class=\"fa-solid fa-plus\"></i> Add Model\n </button>\n </div>\n }\n }\n }\n </div>\n </div>\n </kendo-expansionpanel>\n }\n <!-- Advanced Configuration Expansion Panel -->\n <kendo-expansionpanel\n [expanded]=\"false\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-cogs\" style=\"color: #6c757d;\"></i>\n Advanced Configuration\n </span>\n </ng-template>\n <!-- Direct Content Projection -->\n <div style=\"padding: 16px 0;\">\n <div style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 20px;\">\n <!-- Left Column -->\n <div>\n <mj-form-field\n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ParallelizationMode\"\n Type=\"dropdownlist\"\n [EditMode]=\"EditMode\">\n </mj-form-field>\n @if (showParallelCount) {\n <mj-form-field\n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ParallelCount\"\n Type=\"numerictextbox\"\n [EditMode]=\"EditMode\">\n </mj-form-field>\n }\n @if (showParallelConfigParam) {\n <mj-form-field\n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ParallelConfigParam\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\">\n </mj-form-field>\n }\n <mj-form-field\n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"OutputType\"\n Type=\"dropdownlist\"\n [EditMode]=\"EditMode\">\n </mj-form-field>\n <mj-form-field\n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"EffortLevel\"\n Type=\"numerictextbox\"\n Caption=\"Effort Level (1-100)\"\n Description=\"Higher values request more thorough reasoning\"\n [EditMode]=\"EditMode\">\n </mj-form-field>\n </div>\n <!-- Right Column -->\n <div>\n <mj-form-field\n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ValidationBehavior\"\n Type=\"dropdownlist\"\n [EditMode]=\"EditMode\">\n </mj-form-field>\n <mj-form-field\n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"EnableCaching\"\n Type=\"checkbox\"\n [EditMode]=\"EditMode\">\n </mj-form-field>\n <!-- Result Selector Prompt with Tree Selector -->\n <div style=\"margin-bottom: 16px;\">\n <label style=\"display: block; margin-bottom: 4px; font-weight: 600; color: #495057; font-size: 0.9em;\">\n Result Selector Prompt\n </label>\n @if (EditMode) {\n @if (isLoadingResultSelectorData) {\n <div style=\"padding: 8px; color: #6c757d; font-style: italic;\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Loading prompts...\n </div>\n } @else {\n <kendo-dropdowntree\n [(ngModel)]=\"record.ResultSelectorPromptID\"\n name=\"resultSelectorPromptID\"\n [data]=\"resultSelectorTreeData\"\n textField=\"text\"\n valueField=\"value\"\n [valuePrimitive]=\"true\"\n [filterable]=\"true\"\n placeholder=\"Select a result selector prompt...\"\n style=\"width: 100%;\"\n (valueChange)=\"onResultSelectorChange($event)\">\n </kendo-dropdowntree>\n }\n } @else {\n <span style=\"color: #495057;\">{{ getPromptDisplayName(record.ResultSelectorPromptID || '') || 'None selected' }}</span>\n }\n </div>\n </div>\n </div>\n </div>\n </kendo-expansionpanel>\n <!-- Template Parameters Expansion Panel -->\n @if (template && templateParams.length > 0) {\n <kendo-expansionpanel\n [expanded]=\"false\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-sliders\" style=\"color: #6c757d;\"></i>\n Template Parameters\n <span class=\"badge\" style=\"background: #6f42c1; color: white; padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ templateParams.length }}\n </span>\n <span style=\"color: #6c757d; font-size: 0.8em; font-weight: normal; margin-left: 8px;\">\n <i class=\"fa-solid fa-info-circle\" title=\"These parameters are defined in the template and will be available when executing this prompt\"></i>\n Parameters defined in the template\n </span>\n </span>\n </ng-template>\n <!-- Template Parameters Display -->\n <div style=\"padding: 16px 0;\">\n @if (isLoadingTemplateParams) {\n <div class=\"loading-state\" style=\"padding: 20px; text-align: center; color: #6c757d;\">\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Loading template parameters...\n </div>\n } @else if (templateParams.length === 0) {\n <div class=\"empty-state\" style=\"padding: 20px; text-align: center; color: #6c757d;\">\n <i class=\"fa-solid fa-info-circle\"></i> This template has no parameters defined\n </div>\n } @else {\n <!-- Parameters Grid -->\n <div style=\"display: grid; gap: 12px;\">\n @for (param of templateParams; track param.ID) {\n <div class=\"parameter-card\"\n style=\"border: 1px solid #e9ecef; border-radius: 8px; padding: 16px; background: #f8f9fa; transition: all 0.2s;\"\n [style.border-left]=\"'4px solid ' + getParamTypeColor(param.Type)\">\n <!-- Parameter Header -->\n <div style=\"display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 8px;\">\n <div style=\"display: flex; align-items: center; gap: 8px;\">\n <i [class]=\"'fa-solid ' + getParamTypeIcon(param.Type)\"\n [style.color]=\"getParamTypeColor(param.Type)\"\n style=\"font-size: 1.2em;\"></i>\n <h6 style=\"margin: 0; color: #495057; font-weight: 600;\">\n {{ param.Name }}\n @if (param.IsRequired) {\n <span style=\"color: #dc3545; font-size: 0.9em; margin-left: 4px;\">*</span>\n }\n </h6>\n </div>\n <div style=\"display: flex; align-items: center; gap: 8px;\">\n <span class=\"type-badge\"\n [style.background-color]=\"getParamTypeColor(param.Type)\"\n style=\"color: white; padding: 4px 8px; border-radius: 12px; font-size: 0.75em; font-weight: 500;\">\n {{ param.Type }}\n </span>\n @if (param.IsRequired) {\n <span style=\"color: #dc3545; font-size: 0.85em; font-weight: 500;\">Required</span>\n } @else {\n <span style=\"color: #6c757d; font-size: 0.85em;\">Optional</span>\n }\n </div>\n </div>\n <!-- Parameter Description -->\n @if (param.Description) {\n <p style=\"margin: 0 0 8px 0; color: #6c757d; font-size: 0.9em; line-height: 1.4;\">\n {{ param.Description }}\n </p>\n }\n <!-- Type-specific Information -->\n <div style=\"font-size: 0.85em; color: #495057;\">\n <span style=\"display: flex; align-items: center; gap: 4px; margin-bottom: 4px;\">\n <i class=\"fa-solid fa-info-circle\" style=\"color: #6c757d;\"></i>\n {{ getParamTypeDescription(param) }}\n </span>\n </div>\n <!-- Additional Parameter Details -->\n <div style=\"display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin-top: 12px;\">\n @if (param.DefaultValue) {\n <div style=\"background: white; padding: 8px 12px; border-radius: 4px; border: 1px solid #dee2e6;\">\n <label style=\"display: block; font-size: 0.8em; color: #6c757d; margin-bottom: 2px;\">Default Value</label>\n <code style=\"font-size: 0.85em; color: #495057; word-break: break-all;\">{{ param.DefaultValue }}</code>\n </div>\n }\n @if (param.EntityID) {\n <div style=\"background: white; padding: 8px 12px; border-radius: 4px; border: 1px solid #dee2e6;\">\n <label style=\"display: block; font-size: 0.8em; color: #6c757d; margin-bottom: 2px;\">Entity</label>\n <span style=\"font-size: 0.85em; color: #495057;\">{{ param.Entity || 'Entity ID: ' + param.EntityID }}</span>\n </div>\n }\n @if (param.LinkedParameterName) {\n <div style=\"background: white; padding: 8px 12px; border-radius: 4px; border: 1px solid #dee2e6;\">\n <label style=\"display: block; font-size: 0.8em; color: #6c757d; margin-bottom: 2px;\">Linked To</label>\n <span style=\"font-size: 0.85em; color: #495057;\">\n {{ param.LinkedParameterName }}\n @if (param.LinkedParameterField) {\n ({{ param.LinkedParameterField }})\n }\n </span>\n </div>\n }\n @if (param.ExtraFilter) {\n <div style=\"background: white; padding: 8px 12px; border-radius: 4px; border: 1px solid #dee2e6;\">\n <label style=\"display: block; font-size: 0.8em; color: #6c757d; margin-bottom: 2px;\">Filter</label>\n <code style=\"font-size: 0.8em; color: #495057; word-break: break-all;\">{{ param.ExtraFilter }}</code>\n </div>\n }\n @if (param.RecordID) {\n <div style=\"background: white; padding: 8px 12px; border-radius: 4px; border: 1px solid #dee2e6;\">\n <label style=\"display: block; font-size: 0.8em; color: #6c757d; margin-bottom: 2px;\">Record ID</label>\n <code style=\"font-size: 0.85em; color: #495057;\">{{ param.RecordID }}</code>\n </div>\n }\n </div>\n </div>\n }\n </div>\n <!-- Help Text -->\n <div style=\"margin-top: 16px; padding: 12px; background: #e3f2fd; border-radius: 6px; border: 1px solid #bbdefb;\">\n <div style=\"display: flex; align-items: flex-start; gap: 8px;\">\n <i class=\"fa-solid fa-lightbulb\" style=\"color: #1976d2; margin-top: 2px;\"></i>\n <div style=\"flex: 1; font-size: 0.85em; color: #1565c0; line-height: 1.5;\">\n <strong>Using Template Parameters:</strong> When executing this prompt, you'll be prompted to provide values for all required parameters.\n Parameters can be simple values (text, numbers) or complex data structures (JSON objects, database records, or entire entity collections).\n The template will use these parameters to generate dynamic content based on the values provided at execution time.\n </div>\n </div>\n </div>\n }\n </div>\n </kendo-expansionpanel>\n }\n <!-- Output Example Expansion Panel (when OutputType = object) -->\n @if (showOutputExample) {\n <kendo-expansionpanel\n [expanded]=\"true\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-code\" style=\"color: #6c757d;\"></i>\n Output Example (JSON)\n <span style=\"color: #dc3545; font-size: 0.8em; font-weight: normal;\">\u2022 Required for object output type</span>\n </span>\n </ng-template>\n <!-- Direct Content Projection -->\n <div style=\"padding: 16px;\">\n @if (EditMode) {\n <mj-code-editor\n [(ngModel)]=\"record.OutputExample\"\n name=\"outputExample\"\n language=\"json\"\n placeholder=\"Enter JSON example structure...\"\n style=\"width: 100%; height: 200px; border: 1px solid #dee2e6; border-radius: 4px;\">\n </mj-code-editor>\n <div style=\"margin-top: 8px; color: #6c757d; font-size: 0.85em;\">\n <i class=\"fa-solid fa-info-circle\"></i> Provide a JSON example that defines the expected structure for object output validation.\n </div>\n } @else if (record.OutputExample) {\n <div style=\"background: #f8f9fa; border: 1px solid #dee2e6; border-radius: 4px; padding: 12px; font-family: 'Courier New', monospace; font-size: 0.9em; white-space: pre-wrap; overflow: auto; max-height: 250px;\">{{ record.OutputExample }}</div>\n } @else {\n <div style=\"background: #fff3cd; border: 1px solid #ffeaa7; border-radius: 4px; padding: 12px; color: #856404; text-align: center;\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i> Output example is required when output type is 'object'\n </div>\n }\n </div>\n </kendo-expansionpanel>\n }\n <!-- Execution History Expansion Panel -->\n @if (record.IsSaved) {\n <kendo-expansionpanel\n [expanded]=\"false\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-history\" style=\"color: #6c757d;\"></i>\n Execution History\n @if (executionHistory.length > 0) {\n <span style=\"color: #6c757d; font-weight: normal;\">({{ executionHistory.length }})</span>\n }\n </span>\n </ng-template>\n <!-- Custom Execution History Viewer -->\n <div style=\"padding: 16px;\">\n @if (isLoadingHistory) {\n <div style=\"text-align: center; padding: 40px; color: #6c757d;\">\n <i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 2em; margin-bottom: 12px;\"></i>\n <p>Loading execution history...</p>\n </div>\n } @else if (executionHistory.length === 0) {\n <div style=\"text-align: center; padding: 40px; color: #6c757d;\">\n <i class=\"fa-solid fa-history\" style=\"font-size: 3em; margin-bottom: 12px; opacity: 0.3;\"></i>\n <p>No execution history yet</p>\n <p style=\"font-size: 0.9em;\">Run this prompt to see execution history here</p>\n </div>\n } @else {\n <!-- Sort Controls -->\n <div style=\"display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;\">\n <div style=\"color: #6c757d; font-size: 0.9em;\">\n Showing {{ executionHistory.length }} executions\n </div>\n <div style=\"display: flex; gap: 8px; align-items: center;\">\n <span style=\"color: #6c757d; font-size: 0.85em;\">Sort by:</span>\n <kendo-buttongroup selection=\"single\">\n <button kendoButton\n [selected]=\"historySortField === 'runAt'\"\n (click)=\"changeHistorySort('runAt')\"\n size=\"small\">\n Date\n @if (historySortField === 'runAt') {\n <i [class]=\"'fa-solid fa-sort-' + (historySortDirection === 'asc' ? 'up' : 'down')\"\n style=\"margin-left: 4px; font-size: 0.8em;\"></i>\n }\n </button>\n <button kendoButton\n [selected]=\"historySortField === 'executionTime'\"\n (click)=\"changeHistorySort('executionTime')\"\n size=\"small\">\n Duration\n @if (historySortField === 'executionTime') {\n <i [class]=\"'fa-solid fa-sort-' + (historySortDirection === 'asc' ? 'up' : 'down')\"\n style=\"margin-left: 4px; font-size: 0.8em;\"></i>\n }\n </button>\n <button kendoButton\n [selected]=\"historySortField === 'tokens'\"\n (click)=\"changeHistorySort('tokens')\"\n size=\"small\">\n Tokens\n @if (historySortField === 'tokens') {\n <i [class]=\"'fa-solid fa-sort-' + (historySortDirection === 'asc' ? 'up' : 'down')\"\n style=\"margin-left: 4px; font-size: 0.8em;\"></i>\n }\n </button>\n <button kendoButton\n [selected]=\"historySortField === 'cost'\"\n (click)=\"changeHistorySort('cost')\"\n size=\"small\">\n Cost\n @if (historySortField === 'cost') {\n <i [class]=\"'fa-solid fa-sort-' + (historySortDirection === 'asc' ? 'up' : 'down')\"\n style=\"margin-left: 4px; font-size: 0.8em;\"></i>\n }\n </button>\n </kendo-buttongroup>\n </div>\n </div>\n <!-- Execution History Table -->\n <div style=\"border: 1px solid #e9ecef; border-radius: 8px; overflow: hidden;\">\n <table style=\"width: 100%; border-collapse: collapse;\">\n <thead>\n <tr style=\"background: #f8f9fa; border-bottom: 2px solid #e9ecef;\">\n <th style=\"padding: 12px; text-align: left; font-weight: 600; color: #495057;\">Status</th>\n <th style=\"padding: 12px; text-align: left; font-weight: 600; color: #495057;\">Date & Time</th>\n <th style=\"padding: 12px; text-align: left; font-weight: 600; color: #495057;\">Model</th>\n <th style=\"padding: 12px; text-align: left; font-weight: 600; color: #495057;\">Duration</th>\n <th style=\"padding: 12px; text-align: right; font-weight: 600; color: #495057;\">Tokens</th>\n <th style=\"padding: 12px; text-align: right; font-weight: 600; color: #495057;\">Cost</th>\n <th style=\"padding: 12px; text-align: center; font-weight: 600; color: #495057;\">Type</th>\n <th style=\"padding: 12px; text-align: center; font-weight: 600; color: #495057;\">Actions</th>\n </tr>\n </thead>\n <tbody>\n @for (run of executionHistory; track run.ID; let i = $index) {\n <tr class=\"history-row\"\n [class.even-row]=\"i % 2 === 0\"\n style=\"border-bottom: 1px solid #f1f3f5;\">\n <td style=\"padding: 12px;\">\n <span style=\"display: flex; align-items: center; gap: 6px;\">\n <i [class]=\"'fa-solid ' + getExecutionStatusIcon(run.Success)\"\n [style.color]=\"getExecutionStatusColor(run.Success)\"></i>\n <span [style.color]=\"getExecutionStatusColor(run.Success)\" style=\"font-weight: 500;\">\n {{ run.Success === true ? 'Success' : run.Success === false ? 'Failed' : 'Running' }}\n </span>\n </span>\n </td>\n <td style=\"padding: 12px; color: #495057;\">\n {{ run.RunAt | date:'short' }}\n </td>\n <td style=\"padding: 12px; color: #495057;\">\n <span style=\"display: flex; align-items: center; gap: 6px;\">\n <i class=\"fa-solid fa-microchip\" style=\"color: #6c757d;\"></i>\n {{ run.Model || 'Unknown' }}\n </span>\n </td>\n <td style=\"padding: 12px; color: #495057;\">\n {{ formatDuration(run.ExecutionTimeMS) }}\n </td>\n <td style=\"padding: 12px; text-align: right; color: #495057;\">\n {{ formatTokens(run.TokensUsed) }}\n </td>\n <td style=\"padding: 12px; text-align: right; color: #495057;\">\n {{ formatCost(run.TotalCost || run.Cost) }}\n </td>\n <td style=\"padding: 12px; text-align: center;\">\n @if (run.RunType) {\n <span style=\"padding: 4px 8px; border-radius: 12px; background: #e9ecef; \n color: #495057; font-size: 0.85em; font-weight: 500;\">\n {{ run.RunType }}\n </span>\n }\n </td>\n <td style=\"padding: 12px; text-align: center;\">\n <button kendoButton\n fillMode=\"flat\"\n size=\"small\"\n (click)=\"navigateToPromptRun(run.ID)\"\n title=\"View details\">\n <i class=\"fa-solid fa-external-link\"></i>\n </button>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n }\n </div>\n </kendo-expansionpanel>\n }\n <!-- Cache Expansion Panel -->\n @if (record.IsSaved && record.EnableCaching) {\n <kendo-expansionpanel\n [expanded]=\"false\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-database\" style=\"color: #6c757d;\"></i>\n Result Cache\n </span>\n </ng-template>\n <!-- Direct Content Projection -->\n <div style=\"padding: 16px 0;\">\n <mj-explorer-entity-data-grid\n [Params]=\"BuildRelationshipViewParamsByEntityName('MJ: AI Result Cache','AIPromptID')\"\n [NewRecordValues]=\"NewRecordValues('MJ: AI Result Cache')\"\n [AllowLoad]=\"true\"\n [ShowToolbar]=\"false\">\n </mj-explorer-entity-data-grid>\n </div>\n </kendo-expansionpanel>\n }\n <!-- Related Items Expansion Panel -->\n @if (record.IsSaved) {\n <kendo-expansionpanel\n [expanded]=\"false\"\n style=\"margin-bottom: 12px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-link\" style=\"color: #6c757d;\"></i>\n Related Items\n </span>\n </ng-template>\n <!-- Direct Content Projection -->\n <div style=\"padding: 16px 0;\">\n <div style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 20px;\">\n <!-- AI Agents -->\n <div>\n <h6 style=\"margin: 0 0 12px 0; color: #495057;\">AI Agents Using This Prompt</h6>\n <mj-explorer-entity-data-grid\n [Params]=\"BuildRelationshipViewParamsByEntityName('MJ: AI Agent Prompts','PromptID')\"\n [NewRecordValues]=\"NewRecordValues('MJ: AI Agent Prompts')\"\n [AllowLoad]=\"true\"\n [ShowToolbar]=\"false\">\n </mj-explorer-entity-data-grid>\n </div>\n <!-- Result Selector References -->\n <div>\n <h6 style=\"margin: 0 0 12px 0; color: #495057;\">Prompts Using This as Result Selector</h6>\n <mj-explorer-entity-data-grid\n [Params]=\"BuildRelationshipViewParamsByEntityName('MJ: AI Prompts','ResultSelectorPromptID')\"\n [NewRecordValues]=\"NewRecordValues('MJ: AI Prompts')\"\n [AllowLoad]=\"true\"\n [ShowToolbar]=\"false\">\n </mj-explorer-entity-data-grid>\n </div>\n </div>\n </div>\n </kendo-expansionpanel>\n }\n </div>\n </div>\n </form>\n }\n\n\n <!-- AI Prompt Test Harness -->\n @if (showTestHarness) {\n <kendo-window\n [width]=\"1200\"\n [height]=\"800\"\n [minWidth]=\"800\"\n [minHeight]=\"600\"\n [draggable]=\"true\"\n [resizable]=\"true\"\n [state]=\"'default'\"\n (close)=\"onTestHarnessVisibilityChanged(false)\"\n title=\"Run AI Prompt - {{ record.Name || 'Untitled' }}\">\n <mj-ai-test-harness\n [entity]=\"record\"\n [mode]=\"'prompt'\"\n [isVisible]=\"showTestHarness\"\n (visibilityChange)=\"onTestHarnessVisibilityChanged($event)\">\n </mj-ai-test-harness>\n </kendo-window>\n }\n</div>", styles: [".record-form-container {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n padding: 10px;\n}\n\n.custom-toolbar-actions {\n margin-left: auto;\n}\n\n.status-badge {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n font-weight: 500;\n letter-spacing: 0.02em;\n}\n\n.config-summary {\n position: sticky;\n top: 0;\n max-height: 600px;\n overflow-y: auto;\n}\n\n.config-item {\n padding: 8px 0;\n border-bottom: 1px solid #e9ecef;\n}\n\n.config-item:last-child {\n border-bottom: none;\n}\n\n.template-tab-content {\n background: #fff;\n}\n\n.template-header h5 {\n font-size: 1.1em;\n}\n\n.loading-state,\n.no-template-state,\n.invalid-template-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n\n.no-template-state i,\n.invalid-template-state i {\n opacity: 0.6;\n}\n\n.template-editor-container {\n background: #fff;\n border-radius: 6px;\n}\n\n/* Grid layout adjustments */\n@media (max-width: 1200px) {\n .record-form-container .mj-tab-body > div {\n grid-template-columns: 1fr !important;\n gap: 20px;\n }\n \n .config-summary {\n order: -1;\n position: static;\n max-height: none;\n }\n}\n\n/* Responsive toolbar */\n@media (max-width: 768px) {\n .custom-toolbar-actions {\n flex-direction: column;\n gap: 4px !important;\n }\n \n .status-badge {\n align-self: flex-start;\n }\n}\n\n/* Ensure proper spacing in form sections */\n.record-form-container mj-form-section {\n padding: 16px;\n}\n\n/* Smooth transitions for better UX */\n.status-badge,\n.config-item,\n.template-header {\n transition: all 0.2s ease;\n}\n\n.config-item:hover {\n background-color: rgba(0,0,0,0.02);\n border-radius: 4px;\n margin: 0 -8px;\n padding: 8px;\n}\n\n/* Execution History Table Styles */\n.history-row {\n transition: background 0.2s;\n}\n\n.history-row:not(.even-row) {\n background: #f8f9fa;\n}\n\n.history-row.even-row {\n background: white;\n}\n\n.history-row:hover {\n background: #e9ecef !important;\n}\n\n/* Template Parameters Styles */\n.parameter-card {\n position: relative;\n overflow: hidden;\n}\n\n.parameter-card::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 4px;\n background: inherit;\n transition: width 0.2s;\n}\n\n.parameter-card:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 12px rgba(0,0,0,0.1);\n}\n\n.parameter-card:hover::before {\n width: 6px;\n}\n\n.type-badge {\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n transition: transform 0.2s;\n}\n\n.parameter-card:hover .type-badge {\n transform: scale(1.05);\n}\n\n/* Parameter type icons animation */\n.parameter-card i.fa-solid {\n transition: transform 0.3s;\n}\n\n.parameter-card:hover i.fa-solid {\n transform: rotate(360deg);\n}\n\n/* Grid responsive behavior */\n@media (max-width: 768px) {\n .parameter-card {\n margin-bottom: 8px;\n }\n \n .parameter-card h6 {\n font-size: 0.95em;\n }\n \n .type-badge {\n font-size: 0.7em !important;\n }\n}"] }]
3084
3084
  }], null, { templateEditor: [{
3085
3085
  type: ViewChild,
3086
3086
  args: ['templateEditor']
3087
3087
  }] }); })();
3088
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AIPromptFormComponentExtended, { className: "AIPromptFormComponentExtended", filePath: "src/lib/custom/AIPrompts/ai-prompt-form.component.ts", lineNumber: 22 }); })();
3088
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MJAIPromptFormComponentExtended, { className: "MJAIPromptFormComponentExtended", filePath: "src/lib/custom/AIPrompts/ai-prompt-form.component.ts", lineNumber: 22 }); })();
3089
3089
  //# sourceMappingURL=ai-prompt-form.component.js.map