@memberjunction/ng-dashboards 2.54.0 → 2.56.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 (28) hide show
  1. package/dist/AI/ai-dashboard.component.d.ts.map +1 -1
  2. package/dist/AI/ai-dashboard.component.js +47 -47
  3. package/dist/AI/ai-dashboard.component.js.map +1 -1
  4. package/dist/AI/components/agents/agent-configuration.component.d.ts +19 -3
  5. package/dist/AI/components/agents/agent-configuration.component.d.ts.map +1 -1
  6. package/dist/AI/components/agents/agent-configuration.component.js +155 -94
  7. package/dist/AI/components/agents/agent-configuration.component.js.map +1 -1
  8. package/dist/AI/components/prompts/prompt-management-v2.component.d.ts +6 -1
  9. package/dist/AI/components/prompts/prompt-management-v2.component.d.ts.map +1 -1
  10. package/dist/AI/components/prompts/prompt-management-v2.component.js +61 -35
  11. package/dist/AI/components/prompts/prompt-management-v2.component.js.map +1 -1
  12. package/dist/Actions/actions-management-dashboard.component.d.ts +1 -0
  13. package/dist/Actions/actions-management-dashboard.component.d.ts.map +1 -1
  14. package/dist/Actions/actions-management-dashboard.component.js +31 -16
  15. package/dist/Actions/actions-management-dashboard.component.js.map +1 -1
  16. package/dist/Actions/components/actions-list-view.component.d.ts +5 -0
  17. package/dist/Actions/components/actions-list-view.component.d.ts.map +1 -1
  18. package/dist/Actions/components/actions-list-view.component.js +9 -2
  19. package/dist/Actions/components/actions-list-view.component.js.map +1 -1
  20. package/dist/Actions/components/actions-overview.component.d.ts +8 -1
  21. package/dist/Actions/components/actions-overview.component.d.ts.map +1 -1
  22. package/dist/Actions/components/actions-overview.component.js +105 -78
  23. package/dist/Actions/components/actions-overview.component.js.map +1 -1
  24. package/dist/module.d.ts +10 -6
  25. package/dist/module.d.ts.map +1 -1
  26. package/dist/module.js +22 -3
  27. package/dist/module.js.map +1 -1
  28. package/package.json +12 -7
@@ -22,26 +22,26 @@ const _c6 = () => ({ text: "AI Generated", value: "Generated" });
22
22
  const _c7 = () => ({ text: "Custom", value: "Custom" });
23
23
  const _c8 = (a0, a1, a2) => [a0, a1, a2];
24
24
  function ActionsOverviewComponent_ng_template_5_Template(rf, ctx) { if (rf & 1) {
25
- i0.ɵɵelement(0, "i", 42);
25
+ i0.ɵɵelement(0, "i", 45);
26
26
  } }
27
- function ActionsOverviewComponent_Conditional_68_For_2_Template(rf, ctx) { if (rf & 1) {
27
+ function ActionsOverviewComponent_Conditional_79_For_2_Template(rf, ctx) { if (rf & 1) {
28
28
  const _r1 = i0.ɵɵgetCurrentView();
29
- i0.ɵɵelementStart(0, "div", 44);
30
- i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_68_For_2_Template_div_click_0_listener() { const category_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openCategory(category_r2.categoryId)); });
31
- i0.ɵɵelementStart(1, "div", 45)(2, "div", 46);
29
+ i0.ɵɵelementStart(0, "div", 47);
30
+ i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_79_For_2_Template_div_click_0_listener() { const category_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openCategory(category_r2.categoryId)); });
31
+ i0.ɵɵelementStart(1, "div", 48)(2, "div", 49);
32
32
  i0.ɵɵtext(3);
33
33
  i0.ɵɵelementEnd();
34
- i0.ɵɵelementStart(4, "div", 47)(5, "span", 48);
34
+ i0.ɵɵelementStart(4, "div", 50)(5, "span", 51);
35
35
  i0.ɵɵtext(6);
36
36
  i0.ɵɵelementEnd();
37
- i0.ɵɵelementStart(7, "span", 48);
37
+ i0.ɵɵelementStart(7, "span", 51);
38
38
  i0.ɵɵtext(8);
39
39
  i0.ɵɵelementEnd();
40
- i0.ɵɵelementStart(9, "span", 49);
40
+ i0.ɵɵelementStart(9, "span", 52);
41
41
  i0.ɵɵtext(10);
42
42
  i0.ɵɵelementEnd()()();
43
- i0.ɵɵelementStart(11, "div", 50)(12, "div", 51);
44
- i0.ɵɵelement(13, "div", 52);
43
+ i0.ɵɵelementStart(11, "div", 53)(12, "div", 54);
44
+ i0.ɵɵelement(13, "div", 55);
45
45
  i0.ɵɵelementEnd()()();
46
46
  } if (rf & 2) {
47
47
  const category_r2 = ctx.$implicit;
@@ -56,43 +56,43 @@ function ActionsOverviewComponent_Conditional_68_For_2_Template(rf, ctx) { if (r
56
56
  i0.ɵɵadvance(3);
57
57
  i0.ɵɵstyleProp("width", category_r2.successRate, "%");
58
58
  } }
59
- function ActionsOverviewComponent_Conditional_68_Template(rf, ctx) { if (rf & 1) {
60
- i0.ɵɵelementStart(0, "div", 33);
61
- i0.ɵɵrepeaterCreate(1, ActionsOverviewComponent_Conditional_68_For_2_Template, 14, 6, "div", 43, _forTrack0);
59
+ function ActionsOverviewComponent_Conditional_79_Template(rf, ctx) { if (rf & 1) {
60
+ i0.ɵɵelementStart(0, "div", 36);
61
+ i0.ɵɵrepeaterCreate(1, ActionsOverviewComponent_Conditional_79_For_2_Template, 14, 6, "div", 46, _forTrack0);
62
62
  i0.ɵɵelementEnd();
63
63
  } if (rf & 2) {
64
64
  const ctx_r2 = i0.ɵɵnextContext();
65
65
  i0.ɵɵadvance();
66
66
  i0.ɵɵrepeater(ctx_r2.categoryStats);
67
67
  } }
68
- function ActionsOverviewComponent_Conditional_69_Template(rf, ctx) { if (rf & 1) {
69
- i0.ɵɵelementStart(0, "div", 34);
70
- i0.ɵɵelement(1, "i", 31);
68
+ function ActionsOverviewComponent_Conditional_80_Template(rf, ctx) { if (rf & 1) {
69
+ i0.ɵɵelementStart(0, "div", 37);
70
+ i0.ɵɵelement(1, "i", 34);
71
71
  i0.ɵɵelementStart(2, "p");
72
72
  i0.ɵɵtext(3, "No category statistics available");
73
73
  i0.ɵɵelementEnd()();
74
74
  } }
75
- function ActionsOverviewComponent_Conditional_76_For_2_Template(rf, ctx) { if (rf & 1) {
75
+ function ActionsOverviewComponent_Conditional_87_For_2_Template(rf, ctx) { if (rf & 1) {
76
76
  const _r4 = i0.ɵɵgetCurrentView();
77
- i0.ɵɵelementStart(0, "div", 54);
78
- i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_76_For_2_Template_div_click_0_listener() { const action_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openAction(action_r5)); });
79
- i0.ɵɵelementStart(1, "div", 55);
77
+ i0.ɵɵelementStart(0, "div", 57);
78
+ i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_87_For_2_Template_div_click_0_listener() { const action_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openAction(action_r5)); });
79
+ i0.ɵɵelementStart(1, "div", 58);
80
80
  i0.ɵɵelement(2, "i");
81
81
  i0.ɵɵelementEnd();
82
- i0.ɵɵelementStart(3, "div", 56)(4, "div", 57);
82
+ i0.ɵɵelementStart(3, "div", 59)(4, "div", 60);
83
83
  i0.ɵɵtext(5);
84
84
  i0.ɵɵelementEnd();
85
- i0.ɵɵelementStart(6, "div", 58);
85
+ i0.ɵɵelementStart(6, "div", 61);
86
86
  i0.ɵɵtext(7);
87
87
  i0.ɵɵelementEnd()();
88
- i0.ɵɵelementStart(8, "div", 59)(9, "kendo-chip", 60);
88
+ i0.ɵɵelementStart(8, "div", 62)(9, "kendo-chip", 63);
89
89
  i0.ɵɵtext(10);
90
90
  i0.ɵɵelementEnd()()();
91
91
  } if (rf & 2) {
92
92
  const action_r5 = ctx.$implicit;
93
93
  const ctx_r2 = i0.ɵɵnextContext(2);
94
94
  i0.ɵɵadvance(2);
95
- i0.ɵɵclassMap(ctx_r2.getTypeIcon(action_r5.Type));
95
+ i0.ɵɵclassMap(ctx_r2.getActionIcon(action_r5));
96
96
  i0.ɵɵadvance(3);
97
97
  i0.ɵɵtextInterpolate(action_r5.Name);
98
98
  i0.ɵɵadvance(2);
@@ -102,33 +102,33 @@ function ActionsOverviewComponent_Conditional_76_For_2_Template(rf, ctx) { if (r
102
102
  i0.ɵɵadvance();
103
103
  i0.ɵɵtextInterpolate1(" ", action_r5.Status, " ");
104
104
  } }
105
- function ActionsOverviewComponent_Conditional_76_Template(rf, ctx) { if (rf & 1) {
106
- i0.ɵɵelementStart(0, "div", 37);
107
- i0.ɵɵrepeaterCreate(1, ActionsOverviewComponent_Conditional_76_For_2_Template, 11, 7, "div", 53, _forTrack1);
105
+ function ActionsOverviewComponent_Conditional_87_Template(rf, ctx) { if (rf & 1) {
106
+ i0.ɵɵelementStart(0, "div", 40);
107
+ i0.ɵɵrepeaterCreate(1, ActionsOverviewComponent_Conditional_87_For_2_Template, 11, 7, "div", 56, _forTrack1);
108
108
  i0.ɵɵelementEnd();
109
109
  } if (rf & 2) {
110
110
  const ctx_r2 = i0.ɵɵnextContext();
111
111
  i0.ɵɵadvance();
112
112
  i0.ɵɵrepeater(ctx_r2.recentActions);
113
113
  } }
114
- function ActionsOverviewComponent_Conditional_77_Template(rf, ctx) { if (rf & 1) {
115
- i0.ɵɵelementStart(0, "div", 34);
114
+ function ActionsOverviewComponent_Conditional_88_Template(rf, ctx) { if (rf & 1) {
115
+ i0.ɵɵelementStart(0, "div", 37);
116
116
  i0.ɵɵelement(1, "i", 11);
117
117
  i0.ɵɵelementStart(2, "p");
118
118
  i0.ɵɵtext(3, "No recent actions found");
119
119
  i0.ɵɵelementEnd()();
120
120
  } }
121
- function ActionsOverviewComponent_Conditional_84_For_2_Conditional_15_Template(rf, ctx) { if (rf & 1) {
121
+ function ActionsOverviewComponent_Conditional_95_For_2_Conditional_15_Template(rf, ctx) { if (rf & 1) {
122
122
  const _r8 = i0.ɵɵgetCurrentView();
123
- i0.ɵɵelementStart(0, "div", 70)(1, "div", 71)(2, "h5");
124
- i0.ɵɵelement(3, "i", 72);
123
+ i0.ɵɵelementStart(0, "div", 73)(1, "div", 74)(2, "h5");
124
+ i0.ɵɵelement(3, "i", 75);
125
125
  i0.ɵɵtext(4, " Parameters");
126
126
  i0.ɵɵelementEnd();
127
- i0.ɵɵelement(5, "mj-code-editor", 73);
127
+ i0.ɵɵelement(5, "mj-code-editor", 76);
128
128
  i0.ɵɵelementEnd();
129
- i0.ɵɵelementStart(6, "div", 74)(7, "kendo-button", 75);
130
- i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_84_For_2_Conditional_15_Template_kendo_button_click_7_listener() { i0.ɵɵrestoreView(_r8); const execution_r7 = i0.ɵɵnextContext().$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openExecution(execution_r7)); });
131
- i0.ɵɵelement(8, "i", 76);
129
+ i0.ɵɵelementStart(6, "div", 77)(7, "button", 78);
130
+ i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_95_For_2_Conditional_15_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r8); const execution_r7 = i0.ɵɵnextContext().$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.openExecution(execution_r7)); });
131
+ i0.ɵɵelement(8, "i", 79);
132
132
  i0.ɵɵtext(9, " Open Details ");
133
133
  i0.ɵɵelementEnd()()();
134
134
  } if (rf & 2) {
@@ -137,27 +137,27 @@ function ActionsOverviewComponent_Conditional_84_For_2_Conditional_15_Template(r
137
137
  i0.ɵɵadvance(5);
138
138
  i0.ɵɵproperty("ngModel", ctx_r2.formatJsonParams(execution_r7.Params))("readonly", true)("language", "json")("lineWrapping", true);
139
139
  } }
140
- function ActionsOverviewComponent_Conditional_84_For_2_Template(rf, ctx) { if (rf & 1) {
140
+ function ActionsOverviewComponent_Conditional_95_For_2_Template(rf, ctx) { if (rf & 1) {
141
141
  const _r6 = i0.ɵɵgetCurrentView();
142
- i0.ɵɵelementStart(0, "div", 62)(1, "div", 63);
143
- i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_84_For_2_Template_div_click_1_listener() { const execution_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.toggleExecutionExpanded(execution_r7)); });
144
- i0.ɵɵelementStart(2, "div", 64);
142
+ i0.ɵɵelementStart(0, "div", 65)(1, "div", 66);
143
+ i0.ɵɵlistener("click", function ActionsOverviewComponent_Conditional_95_For_2_Template_div_click_1_listener() { const execution_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.toggleExecutionExpanded(execution_r7)); });
144
+ i0.ɵɵelementStart(2, "div", 67);
145
145
  i0.ɵɵtext(3);
146
146
  i0.ɵɵpipe(4, "date");
147
147
  i0.ɵɵelementEnd();
148
- i0.ɵɵelementStart(5, "div", 65)(6, "div", 66);
148
+ i0.ɵɵelementStart(5, "div", 68)(6, "div", 69);
149
149
  i0.ɵɵtext(7);
150
150
  i0.ɵɵelementEnd();
151
- i0.ɵɵelementStart(8, "div", 67);
151
+ i0.ɵɵelementStart(8, "div", 70);
152
152
  i0.ɵɵtext(9);
153
153
  i0.ɵɵelementEnd()();
154
- i0.ɵɵelementStart(10, "div", 68)(11, "kendo-chip", 60);
154
+ i0.ɵɵelementStart(10, "div", 71)(11, "kendo-chip", 63);
155
155
  i0.ɵɵtext(12);
156
156
  i0.ɵɵelementEnd()();
157
- i0.ɵɵelementStart(13, "div", 69);
157
+ i0.ɵɵelementStart(13, "div", 72);
158
158
  i0.ɵɵelement(14, "i");
159
159
  i0.ɵɵelementEnd()();
160
- i0.ɵɵtemplate(15, ActionsOverviewComponent_Conditional_84_For_2_Conditional_15_Template, 10, 4, "div", 70);
160
+ i0.ɵɵtemplate(15, ActionsOverviewComponent_Conditional_95_For_2_Conditional_15_Template, 10, 4, "div", 73);
161
161
  i0.ɵɵelementEnd();
162
162
  } if (rf & 2) {
163
163
  const execution_r7 = ctx.$implicit;
@@ -178,25 +178,25 @@ function ActionsOverviewComponent_Conditional_84_For_2_Template(rf, ctx) { if (r
178
178
  i0.ɵɵadvance();
179
179
  i0.ɵɵconditional(execution_r7.isExpanded ? 15 : -1);
180
180
  } }
181
- function ActionsOverviewComponent_Conditional_84_Template(rf, ctx) { if (rf & 1) {
182
- i0.ɵɵelementStart(0, "div", 40);
183
- i0.ɵɵrepeaterCreate(1, ActionsOverviewComponent_Conditional_84_For_2_Template, 16, 14, "div", 61, _forTrack1);
181
+ function ActionsOverviewComponent_Conditional_95_Template(rf, ctx) { if (rf & 1) {
182
+ i0.ɵɵelementStart(0, "div", 43);
183
+ i0.ɵɵrepeaterCreate(1, ActionsOverviewComponent_Conditional_95_For_2_Template, 16, 14, "div", 64, _forTrack1);
184
184
  i0.ɵɵelementEnd();
185
185
  } if (rf & 2) {
186
186
  const ctx_r2 = i0.ɵɵnextContext();
187
187
  i0.ɵɵadvance();
188
188
  i0.ɵɵrepeater(ctx_r2.recentExecutions);
189
189
  } }
190
- function ActionsOverviewComponent_Conditional_85_Template(rf, ctx) { if (rf & 1) {
191
- i0.ɵɵelementStart(0, "div", 34);
192
- i0.ɵɵelement(1, "i", 39);
190
+ function ActionsOverviewComponent_Conditional_96_Template(rf, ctx) { if (rf & 1) {
191
+ i0.ɵɵelementStart(0, "div", 37);
192
+ i0.ɵɵelement(1, "i", 42);
193
193
  i0.ɵɵelementStart(2, "p");
194
194
  i0.ɵɵtext(3, "No recent executions found");
195
195
  i0.ɵɵelementEnd()();
196
196
  } }
197
- function ActionsOverviewComponent_Conditional_86_Template(rf, ctx) { if (rf & 1) {
198
- i0.ɵɵelementStart(0, "div", 41);
199
- i0.ɵɵelement(1, "kendo-loader", 77);
197
+ function ActionsOverviewComponent_Conditional_97_Template(rf, ctx) { if (rf & 1) {
198
+ i0.ɵɵelementStart(0, "div", 44);
199
+ i0.ɵɵelement(1, "kendo-loader", 80);
200
200
  i0.ɵɵelementEnd();
201
201
  } if (rf & 2) {
202
202
  i0.ɵɵadvance();
@@ -207,6 +207,7 @@ export class ActionsOverviewComponent {
207
207
  showActionsListView = new EventEmitter();
208
208
  showExecutionsListView = new EventEmitter();
209
209
  showCategoriesListView = new EventEmitter();
210
+ showActionGalleryView = new EventEmitter();
210
211
  isLoading = true;
211
212
  metrics = {
212
213
  totalActions: 0,
@@ -470,6 +471,9 @@ export class ActionsOverviewComponent {
470
471
  // Filter to show AI generated actions in the current view
471
472
  this.selectedType$.next('Generated');
472
473
  }
474
+ onActionGalleryClick() {
475
+ this.showActionGalleryView.emit();
476
+ }
473
477
  toggleExecutionExpanded(execution) {
474
478
  execution.isExpanded = !execution.isExpanded;
475
479
  }
@@ -486,8 +490,15 @@ export class ActionsOverviewComponent {
486
490
  return params;
487
491
  }
488
492
  }
493
+ /**
494
+ * Gets the icon class for an action
495
+ * Falls back to type-based icon if no IconClass is set
496
+ */
497
+ getActionIcon(action) {
498
+ return action?.IconClass || this.getTypeIcon(action.Type);
499
+ }
489
500
  static ɵfac = function ActionsOverviewComponent_Factory(t) { return new (t || ActionsOverviewComponent)(); };
490
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionsOverviewComponent, selectors: [["mj-actions-overview"]], outputs: { openEntityRecord: "openEntityRecord", showActionsListView: "showActionsListView", showExecutionsListView: "showExecutionsListView", showCategoriesListView: "showCategoriesListView" }, decls: 87, vars: 35, consts: [[1, "actions-overview"], [1, "overview-header"], [1, "filters-row"], [1, "search-container"], ["placeholder", "Search actions...", 3, "valueChange", "value"], ["kendoTextBoxPrefixTemplate", ""], [1, "filter-container"], ["textField", "text", "valueField", "value", 3, "valueChange", "data", "value"], [1, "metrics-grid"], [1, "metric-card", "primary", "clickable", 3, "click"], [1, "metric-icon"], [1, "fa-solid", "fa-cogs"], [1, "metric-content"], [1, "metric-value"], [1, "metric-label"], [1, "metric-breakdown"], [1, "active"], [1, "pending"], [1, "disabled"], [1, "metric-card", "success", "clickable", 3, "click"], [1, "fa-solid", "fa-play-circle"], [1, "recent"], [1, "success-rate"], [1, "metric-card", "info", "clickable", 3, "click"], [1, "fa-solid", "fa-sitemap"], [1, "metric-card", "warning", "clickable", 3, "click"], [1, "fa-solid", "fa-robot"], [1, "custom"], [1, "content-grid"], [1, "panel", "category-stats"], [1, "panel-header"], [1, "fa-solid", "fa-chart-bar"], [1, "panel-content"], [1, "category-list"], [1, "empty-state"], [1, "panel", "recent-actions"], [1, "fa-solid", "fa-clock"], [1, "actions-list"], [1, "panel", "recent-executions"], [1, "fa-solid", "fa-history"], [1, "executions-list"], [1, "loading-overlay"], [1, "fa-solid", "fa-search"], [1, "category-item"], [1, "category-item", 3, "click"], [1, "category-info"], [1, "category-name"], [1, "category-metrics"], [1, "metric"], [1, "metric", "success-rate"], [1, "category-chart"], [1, "progress-bar"], [1, "progress-fill"], [1, "action-item"], [1, "action-item", 3, "click"], [1, "action-icon"], [1, "action-info"], [1, "action-name"], [1, "action-description"], [1, "action-status"], [3, "themeColor", "size"], [1, "execution-item", 3, "expanded"], [1, "execution-item"], [1, "execution-header", 3, "click"], [1, "execution-time"], [1, "execution-info"], [1, "execution-action"], [1, "execution-user"], [1, "execution-result"], [1, "execution-expand-icon"], [1, "execution-details"], [1, "params-section"], [1, "fa-solid", "fa-sliders"], [2, "height", "150px", "width", "100%", 3, "ngModel", "readonly", "language", "lineWrapping"], [1, "execution-actions"], ["themeColor", "primary", "size", "small", 3, "click"], [1, "fa-solid", "fa-external-link"], ["type", "converging-spinner", 3, "themeColor"]], template: function ActionsOverviewComponent_Template(rf, ctx) { if (rf & 1) {
501
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionsOverviewComponent, selectors: [["mj-actions-overview"]], outputs: { openEntityRecord: "openEntityRecord", showActionsListView: "showActionsListView", showExecutionsListView: "showExecutionsListView", showCategoriesListView: "showCategoriesListView", showActionGalleryView: "showActionGalleryView" }, decls: 98, vars: 35, consts: [[1, "actions-overview"], [1, "overview-header"], [1, "filters-row"], [1, "search-container"], ["placeholder", "Search actions...", 3, "valueChange", "value"], ["kendoTextBoxPrefixTemplate", ""], [1, "filter-container"], ["textField", "text", "valueField", "value", 3, "valueChange", "data", "value"], [1, "metrics-grid"], [1, "metric-card", "primary", "clickable", 3, "click"], [1, "metric-icon"], [1, "fa-solid", "fa-cogs"], [1, "metric-content"], [1, "metric-value"], [1, "metric-label"], [1, "metric-breakdown"], [1, "active"], [1, "pending"], [1, "disabled"], [1, "metric-card", "success", "clickable", 3, "click"], [1, "fa-solid", "fa-play-circle"], [1, "recent"], [1, "success-rate"], [1, "metric-card", "info", "clickable", 3, "click"], [1, "fa-solid", "fa-sitemap"], [1, "metric-card", "warning", "clickable", 3, "click"], [1, "fa-solid", "fa-robot"], [1, "custom"], [1, "metric-card", "gallery", "clickable", 3, "click"], [1, "fa-solid", "fa-th"], [1, "fa-solid", "fa-sparkles"], [1, "content-grid"], [1, "panel", "category-stats"], [1, "panel-header"], [1, "fa-solid", "fa-chart-bar"], [1, "panel-content"], [1, "category-list"], [1, "empty-state"], [1, "panel", "recent-actions"], [1, "fa-solid", "fa-clock"], [1, "actions-list"], [1, "panel", "recent-executions"], [1, "fa-solid", "fa-history"], [1, "executions-list"], [1, "loading-overlay"], [1, "fa-solid", "fa-search"], [1, "category-item"], [1, "category-item", 3, "click"], [1, "category-info"], [1, "category-name"], [1, "category-metrics"], [1, "metric"], [1, "metric", "success-rate"], [1, "category-chart"], [1, "progress-bar"], [1, "progress-fill"], [1, "action-item"], [1, "action-item", 3, "click"], [1, "action-icon"], [1, "action-info"], [1, "action-name"], [1, "action-description"], [1, "action-status"], [3, "themeColor", "size"], [1, "execution-item", 3, "expanded"], [1, "execution-item"], [1, "execution-header", 3, "click"], [1, "execution-time"], [1, "execution-info"], [1, "execution-action"], [1, "execution-user"], [1, "execution-result"], [1, "execution-expand-icon"], [1, "execution-details"], [1, "params-section"], [1, "fa-solid", "fa-sliders"], [2, "height", "150px", "width", "100%", 3, "ngModel", "readonly", "language", "lineWrapping"], [1, "execution-actions"], ["kendoButton", "", "themeColor", "primary", "size", "small", 3, "click"], [1, "fa-solid", "fa-external-link"], ["type", "converging-spinner", 3, "themeColor"]], template: function ActionsOverviewComponent_Template(rf, ctx) { if (rf & 1) {
491
502
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3)(4, "kendo-textbox", 4);
492
503
  i0.ɵɵlistener("valueChange", function ActionsOverviewComponent_Template_kendo_textbox_valueChange_4_listener($event) { return ctx.onSearchChange($event); });
493
504
  i0.ɵɵtemplate(5, ActionsOverviewComponent_ng_template_5_Template, 1, 0, "ng-template", 5);
@@ -562,29 +573,43 @@ export class ActionsOverviewComponent {
562
573
  i0.ɵɵelementEnd();
563
574
  i0.ɵɵelementStart(58, "div", 15)(59, "span", 27);
564
575
  i0.ɵɵtext(60);
576
+ i0.ɵɵelementEnd()()()();
577
+ i0.ɵɵelementStart(61, "div", 28);
578
+ i0.ɵɵlistener("click", function ActionsOverviewComponent_Template_div_click_61_listener() { return ctx.onActionGalleryClick(); });
579
+ i0.ɵɵelementStart(62, "div", 10);
580
+ i0.ɵɵelement(63, "i", 29);
581
+ i0.ɵɵelementEnd();
582
+ i0.ɵɵelementStart(64, "div", 12)(65, "div", 13);
583
+ i0.ɵɵelement(66, "i", 30);
584
+ i0.ɵɵelementEnd();
585
+ i0.ɵɵelementStart(67, "div", 14);
586
+ i0.ɵɵtext(68, "Action Gallery");
587
+ i0.ɵɵelementEnd();
588
+ i0.ɵɵelementStart(69, "div", 15)(70, "span");
589
+ i0.ɵɵtext(71, "Visual action browser");
565
590
  i0.ɵɵelementEnd()()()()();
566
- i0.ɵɵelementStart(61, "div", 28)(62, "div", 29)(63, "div", 30)(64, "h3");
567
- i0.ɵɵelement(65, "i", 31);
568
- i0.ɵɵtext(66, " Category Performance");
591
+ i0.ɵɵelementStart(72, "div", 31)(73, "div", 32)(74, "div", 33)(75, "h3");
592
+ i0.ɵɵelement(76, "i", 34);
593
+ i0.ɵɵtext(77, " Category Performance");
569
594
  i0.ɵɵelementEnd()();
570
- i0.ɵɵelementStart(67, "div", 32);
571
- i0.ɵɵtemplate(68, ActionsOverviewComponent_Conditional_68_Template, 3, 0, "div", 33)(69, ActionsOverviewComponent_Conditional_69_Template, 4, 0, "div", 34);
595
+ i0.ɵɵelementStart(78, "div", 35);
596
+ i0.ɵɵtemplate(79, ActionsOverviewComponent_Conditional_79_Template, 3, 0, "div", 36)(80, ActionsOverviewComponent_Conditional_80_Template, 4, 0, "div", 37);
572
597
  i0.ɵɵelementEnd()();
573
- i0.ɵɵelementStart(70, "div", 35)(71, "div", 30)(72, "h3");
574
- i0.ɵɵelement(73, "i", 36);
575
- i0.ɵɵtext(74, " Recent Actions");
598
+ i0.ɵɵelementStart(81, "div", 38)(82, "div", 33)(83, "h3");
599
+ i0.ɵɵelement(84, "i", 39);
600
+ i0.ɵɵtext(85, " Recent Actions");
576
601
  i0.ɵɵelementEnd()();
577
- i0.ɵɵelementStart(75, "div", 32);
578
- i0.ɵɵtemplate(76, ActionsOverviewComponent_Conditional_76_Template, 3, 0, "div", 37)(77, ActionsOverviewComponent_Conditional_77_Template, 4, 0, "div", 34);
602
+ i0.ɵɵelementStart(86, "div", 35);
603
+ i0.ɵɵtemplate(87, ActionsOverviewComponent_Conditional_87_Template, 3, 0, "div", 40)(88, ActionsOverviewComponent_Conditional_88_Template, 4, 0, "div", 37);
579
604
  i0.ɵɵelementEnd()();
580
- i0.ɵɵelementStart(78, "div", 38)(79, "div", 30)(80, "h3");
581
- i0.ɵɵelement(81, "i", 39);
582
- i0.ɵɵtext(82, " Recent Executions");
605
+ i0.ɵɵelementStart(89, "div", 41)(90, "div", 33)(91, "h3");
606
+ i0.ɵɵelement(92, "i", 42);
607
+ i0.ɵɵtext(93, " Recent Executions");
583
608
  i0.ɵɵelementEnd()();
584
- i0.ɵɵelementStart(83, "div", 32);
585
- i0.ɵɵtemplate(84, ActionsOverviewComponent_Conditional_84_Template, 3, 0, "div", 40)(85, ActionsOverviewComponent_Conditional_85_Template, 4, 0, "div", 34);
609
+ i0.ɵɵelementStart(94, "div", 35);
610
+ i0.ɵɵtemplate(95, ActionsOverviewComponent_Conditional_95_Template, 3, 0, "div", 43)(96, ActionsOverviewComponent_Conditional_96_Template, 4, 0, "div", 37);
586
611
  i0.ɵɵelementEnd()()();
587
- i0.ɵɵtemplate(86, ActionsOverviewComponent_Conditional_86_Template, 2, 1, "div", 41);
612
+ i0.ɵɵtemplate(97, ActionsOverviewComponent_Conditional_97_Template, 2, 1, "div", 44);
588
613
  i0.ɵɵelementEnd();
589
614
  } if (rf & 2) {
590
615
  i0.ɵɵadvance(4);
@@ -613,19 +638,19 @@ export class ActionsOverviewComponent {
613
638
  i0.ɵɵtextInterpolate(ctx.metrics.aiGeneratedActions);
614
639
  i0.ɵɵadvance(5);
615
640
  i0.ɵɵtextInterpolate1("", ctx.metrics.customActions, " Custom");
641
+ i0.ɵɵadvance(19);
642
+ i0.ɵɵconditional(ctx.categoryStats.length > 0 ? 79 : 80);
616
643
  i0.ɵɵadvance(8);
617
- i0.ɵɵconditional(ctx.categoryStats.length > 0 ? 68 : 69);
644
+ i0.ɵɵconditional(ctx.recentActions.length > 0 ? 87 : 88);
618
645
  i0.ɵɵadvance(8);
619
- i0.ɵɵconditional(ctx.recentActions.length > 0 ? 76 : 77);
620
- i0.ɵɵadvance(8);
621
- i0.ɵɵconditional(ctx.recentExecutions.length > 0 ? 84 : 85);
646
+ i0.ɵɵconditional(ctx.recentExecutions.length > 0 ? 95 : 96);
622
647
  i0.ɵɵadvance(2);
623
- i0.ɵɵconditional(ctx.isLoading ? 86 : -1);
624
- } }, dependencies: [i1.NgControlStatus, i1.NgModel, i2.LoaderComponent, i3.DropDownListComponent, i4.TextBoxComponent, i4.TextBoxPrefixTemplateDirective, i5.CodeEditorComponent, i6.ButtonComponent, i6.ChipComponent, i7.DatePipe], styles: [".actions-overview[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n padding: 1.5rem;\n height: 100%;\n overflow-y: auto;\n\n .overview-header {\n .filters-row {\n display: flex;\n align-items: center;\n gap: 1rem;\n flex-wrap: wrap;\n\n .search-container {\n flex: 1;\n min-width: 200px;\n\n kendo-textbox {\n width: 100%;\n }\n }\n\n .filter-container {\n min-width: 150px;\n \n kendo-dropdownlist {\n width: 100%;\n }\n }\n }\n }\n\n .metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 1.5rem;\n\n .metric-card {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1.5rem;\n border-radius: 0.75rem;\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n transition: all 0.2s ease;\n\n &.clickable {\n cursor: pointer;\n \n &:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);\n }\n }\n\n .metric-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 3rem;\n height: 3rem;\n border-radius: 0.5rem;\n font-size: 1.25rem;\n\n i {\n color: white;\n }\n }\n\n .metric-content {\n flex: 1;\n\n .metric-value {\n font-size: 1.75rem;\n font-weight: 700;\n line-height: 1;\n margin-bottom: 0.25rem;\n }\n\n .metric-label {\n font-size: 0.875rem;\n font-weight: 600;\n color: var(--kendo-color-subtle);\n margin-bottom: 0.5rem;\n }\n\n .metric-breakdown {\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n font-size: 0.75rem;\n\n span {\n color: var(--kendo-color-subtle);\n\n &.active { color: var(--kendo-color-success); }\n &.pending { color: var(--kendo-color-warning); }\n &.disabled { color: var(--kendo-color-error); }\n &.recent { color: var(--kendo-color-info); }\n &.success-rate { color: var(--kendo-color-success); }\n &.custom { color: var(--kendo-color-primary); }\n }\n }\n }\n\n &.primary .metric-icon { background: var(--kendo-color-primary); }\n &.success .metric-icon { background: var(--kendo-color-success); }\n &.info .metric-icon { background: var(--kendo-color-info); }\n &.warning .metric-icon { background: var(--kendo-color-warning); }\n }\n }\n\n .content-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n gap: 1.5rem;\n flex: 1;\n\n .panel {\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.75rem;\n overflow: hidden;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n\n .panel-header {\n padding: 1rem 1.5rem;\n background: var(--kendo-color-app-surface);\n border-bottom: 1px solid var(--kendo-color-border);\n\n h3 {\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n color: var(--kendo-color-primary);\n }\n }\n }\n\n .panel-content {\n padding: 1.5rem;\n height: calc(100% - 60px);\n overflow-y: auto;\n }\n }\n\n .category-stats {\n .category-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .category-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .category-info {\n flex: 1;\n\n .category-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .category-metrics {\n display: flex;\n gap: 1rem;\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n\n .metric {\n &.success-rate {\n color: var(--kendo-color-success);\n font-weight: 600;\n }\n }\n }\n }\n\n .category-chart {\n width: 60px;\n\n .progress-bar {\n height: 6px;\n background: var(--kendo-color-border);\n border-radius: 3px;\n overflow: hidden;\n\n .progress-fill {\n height: 100%;\n background: var(--kendo-color-success);\n transition: width 0.3s ease;\n }\n }\n }\n }\n }\n }\n\n .recent-actions {\n .actions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .action-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .action-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n border-radius: 0.375rem;\n background: var(--kendo-color-primary-subtle);\n\n i {\n color: var(--kendo-color-primary);\n font-size: 1rem;\n }\n }\n\n .action-info {\n flex: 1;\n\n .action-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .action-description {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n line-height: 1.3;\n }\n }\n\n .action-status {\n flex-shrink: 0;\n }\n }\n }\n }\n\n .recent-executions {\n grid-column: 1 / -1;\n\n .executions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .execution-item {\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n transition: all 0.2s ease;\n margin-bottom: 0.5rem;\n\n &.expanded {\n border-color: var(--kendo-color-primary);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n }\n\n .execution-header {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n cursor: pointer;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n }\n\n .execution-time {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n font-weight: 600;\n min-width: 80px;\n }\n\n .execution-info {\n flex: 1;\n\n .execution-action {\n font-weight: 600;\n margin-bottom: 0.25rem;\n font-size: 0.875rem;\n }\n\n .execution-user {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n }\n }\n\n .execution-result {\n flex-shrink: 0;\n }\n\n .execution-expand-icon {\n color: var(--kendo-color-subtle);\n font-size: 0.75rem;\n margin-left: 0.5rem;\n }\n }\n\n .execution-details {\n padding: 1rem;\n background: var(--kendo-color-base-subtle);\n border-top: 1px solid var(--kendo-color-border);\n\n .params-section {\n margin-bottom: 1rem;\n\n h5 {\n margin: 0 0 0.5rem 0;\n font-size: 0.875rem;\n color: var(--kendo-color-subtle);\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n font-size: 0.75rem;\n }\n }\n }\n\n .execution-actions {\n display: flex;\n justify-content: flex-end;\n }\n }\n }\n }\n }\n }\n\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 2rem;\n text-align: center;\n color: var(--kendo-color-subtle);\n\n i {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n opacity: 0.5;\n }\n\n p {\n margin: 0;\n font-size: 0.875rem;\n }\n }\n\n .loading-overlay {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n }\n}\n\n//[_ngcontent-%COMP%] Responsive[_ngcontent-%COMP%] design\n@media[_ngcontent-%COMP%] (max-width[_ngcontent-%COMP%]: 1200px)[_ngcontent-%COMP%] {\n .actions-overview .content-grid {\n grid-template-columns: 1fr;\n \n .recent-executions {\n grid-column: 1;\n }\n }\n}\n\n@media (max-width: 768px) {\n .actions-overview[_ngcontent-%COMP%] {\n padding: 1rem;\n gap: 1rem;\n\n .metrics-grid {\n grid-template-columns: 1fr;\n gap: 1rem;\n }\n\n .overview-header .filters-row {\n flex-direction: column;\n align-items: stretch;\n\n .search-container,\n .filter-container {\n min-width: unset;\n }\n }\n }\n}"] });
648
+ i0.ɵɵconditional(ctx.isLoading ? 97 : -1);
649
+ } }, dependencies: [i1.NgControlStatus, i1.NgModel, i2.LoaderComponent, i3.DropDownListComponent, i4.TextBoxComponent, i4.TextBoxPrefixTemplateDirective, i5.CodeEditorComponent, i6.ButtonComponent, i6.ChipComponent, i7.DatePipe], styles: [".actions-overview[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n padding: 1.5rem;\n height: 100%;\n overflow-y: auto;\n\n .overview-header {\n .filters-row {\n display: flex;\n align-items: center;\n gap: 1rem;\n flex-wrap: wrap;\n\n .search-container {\n flex: 1;\n min-width: 200px;\n\n kendo-textbox {\n width: 100%;\n }\n }\n\n .filter-container {\n min-width: 150px;\n \n kendo-dropdownlist {\n width: 100%;\n }\n }\n }\n }\n\n .metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 1.5rem;\n\n .metric-card {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1.5rem;\n border-radius: 0.75rem;\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n transition: all 0.2s ease;\n\n &.clickable {\n cursor: pointer;\n \n &:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);\n }\n }\n\n .metric-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 3rem;\n height: 3rem;\n border-radius: 0.5rem;\n font-size: 1.25rem;\n\n i {\n color: white;\n }\n }\n\n .metric-content {\n flex: 1;\n\n .metric-value {\n font-size: 1.75rem;\n font-weight: 700;\n line-height: 1;\n margin-bottom: 0.25rem;\n }\n\n .metric-label {\n font-size: 0.875rem;\n font-weight: 600;\n color: var(--kendo-color-subtle);\n margin-bottom: 0.5rem;\n }\n\n .metric-breakdown {\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n font-size: 0.75rem;\n\n span {\n color: var(--kendo-color-subtle);\n\n &.active { color: var(--kendo-color-success); }\n &.pending { color: var(--kendo-color-warning); }\n &.disabled { color: var(--kendo-color-error); }\n &.recent { color: var(--kendo-color-info); }\n &.success-rate { color: var(--kendo-color-success); }\n &.custom { color: var(--kendo-color-primary); }\n }\n }\n }\n\n &.primary .metric-icon { background: var(--kendo-color-primary); }\n &.success .metric-icon { background: var(--kendo-color-success); }\n &.info .metric-icon { background: var(--kendo-color-info); }\n &.warning .metric-icon { background: var(--kendo-color-warning); }\n &.gallery .metric-icon { \n background: linear-gradient(135deg, var(--kendo-color-primary), var(--kendo-color-secondary)); \n }\n }\n }\n\n .content-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n gap: 1.5rem;\n flex: 1;\n\n .panel {\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.75rem;\n overflow: hidden;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n\n .panel-header {\n padding: 1rem 1.5rem;\n background: var(--kendo-color-app-surface);\n border-bottom: 1px solid var(--kendo-color-border);\n\n h3 {\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n color: var(--kendo-color-primary);\n }\n }\n }\n\n .panel-content {\n padding: 1.5rem;\n height: calc(100% - 60px);\n overflow-y: auto;\n }\n }\n\n .category-stats {\n .category-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .category-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .category-info {\n flex: 1;\n\n .category-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .category-metrics {\n display: flex;\n gap: 1rem;\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n\n .metric {\n &.success-rate {\n color: var(--kendo-color-success);\n font-weight: 600;\n }\n }\n }\n }\n\n .category-chart {\n width: 60px;\n\n .progress-bar {\n height: 6px;\n background: var(--kendo-color-border);\n border-radius: 3px;\n overflow: hidden;\n\n .progress-fill {\n height: 100%;\n background: var(--kendo-color-success);\n transition: width 0.3s ease;\n }\n }\n }\n }\n }\n }\n\n .recent-actions {\n .actions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .action-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .action-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n border-radius: 0.375rem;\n background: var(--kendo-color-primary-subtle);\n\n i {\n color: var(--kendo-color-primary);\n font-size: 1rem;\n }\n }\n\n .action-info {\n flex: 1;\n\n .action-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .action-description {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n line-height: 1.3;\n }\n }\n\n .action-status {\n flex-shrink: 0;\n }\n }\n }\n }\n\n .recent-executions {\n grid-column: 1 / -1;\n\n .executions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .execution-item {\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n transition: all 0.2s ease;\n margin-bottom: 0.5rem;\n\n &.expanded {\n border-color: var(--kendo-color-primary);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n }\n\n .execution-header {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n cursor: pointer;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n }\n\n .execution-time {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n font-weight: 600;\n min-width: 80px;\n }\n\n .execution-info {\n flex: 1;\n\n .execution-action {\n font-weight: 600;\n margin-bottom: 0.25rem;\n font-size: 0.875rem;\n }\n\n .execution-user {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n }\n }\n\n .execution-result {\n flex-shrink: 0;\n }\n\n .execution-expand-icon {\n color: var(--kendo-color-subtle);\n font-size: 0.75rem;\n margin-left: 0.5rem;\n }\n }\n\n .execution-details {\n padding: 1rem;\n background: var(--kendo-color-base-subtle);\n border-top: 1px solid var(--kendo-color-border);\n\n .params-section {\n margin-bottom: 1rem;\n\n h5 {\n margin: 0 0 0.5rem 0;\n font-size: 0.875rem;\n color: var(--kendo-color-subtle);\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n font-size: 0.75rem;\n }\n }\n }\n\n .execution-actions {\n display: flex;\n justify-content: flex-end;\n }\n }\n }\n }\n }\n }\n\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 2rem;\n text-align: center;\n color: var(--kendo-color-subtle);\n\n i {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n opacity: 0.5;\n }\n\n p {\n margin: 0;\n font-size: 0.875rem;\n }\n }\n\n .loading-overlay {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n }\n}\n\n//[_ngcontent-%COMP%] Responsive[_ngcontent-%COMP%] design\n@media[_ngcontent-%COMP%] (max-width[_ngcontent-%COMP%]: 1200px)[_ngcontent-%COMP%] {\n .actions-overview .content-grid {\n grid-template-columns: 1fr;\n \n .recent-executions {\n grid-column: 1;\n }\n }\n}\n\n@media (max-width: 768px) {\n .actions-overview[_ngcontent-%COMP%] {\n padding: 1rem;\n gap: 1rem;\n\n .metrics-grid {\n grid-template-columns: 1fr;\n gap: 1rem;\n }\n\n .overview-header .filters-row {\n flex-direction: column;\n align-items: stretch;\n\n .search-container,\n .filter-container {\n min-width: unset;\n }\n }\n }\n}"] });
625
650
  }
626
651
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionsOverviewComponent, [{
627
652
  type: Component,
628
- args: [{ selector: 'mj-actions-overview', template: "<div class=\"actions-overview\" >\n <!-- Header with search and filters -->\n <div class=\"overview-header\">\n <div class=\"filters-row\">\n <div class=\"search-container\">\n <kendo-textbox \n placeholder=\"Search actions...\" \n [value]=\"searchTerm$.value\"\n (valueChange)=\"onSearchChange($event)\">\n <ng-template kendoTextBoxPrefixTemplate>\n <i class=\"fa-solid fa-search\"></i>\n </ng-template>\n </kendo-textbox>\n </div>\n \n <div class=\"filter-container\">\n <kendo-dropdownlist \n [data]=\"[\n { text: 'All Statuses', value: 'all' },\n { text: 'Active', value: 'Active' },\n { text: 'Pending', value: 'Pending' },\n { text: 'Disabled', value: 'Disabled' }\n ]\"\n textField=\"text\"\n valueField=\"value\"\n [value]=\"selectedStatus$.value\"\n (valueChange)=\"onStatusFilterChange($event)\">\n </kendo-dropdownlist>\n </div>\n \n <div class=\"filter-container\">\n <kendo-dropdownlist \n [data]=\"[\n { text: 'All Types', value: 'all' },\n { text: 'AI Generated', value: 'Generated' },\n { text: 'Custom', value: 'Custom' }\n ]\"\n textField=\"text\"\n valueField=\"value\"\n [value]=\"selectedType$.value\"\n (valueChange)=\"onTypeFilterChange($event)\">\n </kendo-dropdownlist>\n </div>\n </div>\n </div>\n\n <!-- Metrics Cards -->\n <div class=\"metrics-grid\">\n <div class=\"metric-card primary clickable\" (click)=\"onTotalActionsClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-cogs\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.totalActions }}</div>\n <div class=\"metric-label\">Total Actions</div>\n <div class=\"metric-breakdown\">\n <span class=\"active\">{{ metrics.activeActions }} Active</span>\n <span class=\"pending\">{{ metrics.pendingActions }} Pending</span>\n <span class=\"disabled\">{{ metrics.disabledActions }} Disabled</span>\n </div>\n </div>\n </div>\n\n <div class=\"metric-card success clickable\" (click)=\"onExecutionsClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-play-circle\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.totalExecutions }}</div>\n <div class=\"metric-label\">Total Executions</div>\n <div class=\"metric-breakdown\">\n <span class=\"recent\">{{ metrics.recentExecutions }} in last 24h</span>\n <span class=\"success-rate\">{{ metrics.successRate }}% success rate</span>\n </div>\n </div>\n </div>\n\n <div class=\"metric-card info clickable\" (click)=\"onCategoriesClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-sitemap\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.totalCategories }}</div>\n <div class=\"metric-label\">Categories</div>\n <div class=\"metric-breakdown\">\n <span>Organized structure</span>\n </div>\n </div>\n </div>\n\n <div class=\"metric-card warning clickable\" (click)=\"onAIGeneratedClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-robot\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.aiGeneratedActions }}</div>\n <div class=\"metric-label\">AI Generated</div>\n <div class=\"metric-breakdown\">\n <span class=\"custom\">{{ metrics.customActions }} Custom</span>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Content Grid -->\n <div class=\"content-grid\">\n <!-- Category Statistics -->\n <div class=\"panel category-stats\">\n <div class=\"panel-header\">\n <h3><i class=\"fa-solid fa-chart-bar\"></i> Category Performance</h3>\n </div>\n <div class=\"panel-content\">\n @if (categoryStats.length > 0) {\n <div class=\"category-list\">\n @for (category of categoryStats; track category.categoryId) {\n <div class=\"category-item\" (click)=\"openCategory(category.categoryId)\">\n <div class=\"category-info\">\n <div class=\"category-name\">{{ category.categoryName }}</div>\n <div class=\"category-metrics\">\n <span class=\"metric\">{{ category.actionCount }} actions</span>\n <span class=\"metric\">{{ category.executionCount }} executions</span>\n <span class=\"metric success-rate\">{{ category.successRate }}% success</span>\n </div>\n </div>\n <div class=\"category-chart\">\n <div class=\"progress-bar\">\n <div class=\"progress-fill\" [style.width.%]=\"category.successRate\"></div>\n </div>\n </div>\n </div>\n }\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-chart-bar\"></i>\n <p>No category statistics available</p>\n </div>\n }\n </div>\n </div>\n\n <!-- Recent Actions -->\n <div class=\"panel recent-actions\">\n <div class=\"panel-header\">\n <h3><i class=\"fa-solid fa-clock\"></i> Recent Actions</h3>\n </div>\n <div class=\"panel-content\">\n @if (recentActions.length > 0) {\n <div class=\"actions-list\">\n @for (action of recentActions; track action.ID) {\n <div class=\"action-item\" (click)=\"openAction(action)\">\n <div class=\"action-icon\">\n <i [class]=\"getTypeIcon(action.Type)\"></i>\n </div>\n <div class=\"action-info\">\n <div class=\"action-name\">{{ action.Name }}</div>\n <div class=\"action-description\">{{ action.Description || 'No description' }}</div>\n </div>\n <div class=\"action-status\">\n <kendo-chip \n [themeColor]=\"getStatusColor(action.Status)\"\n [size]=\"'small'\">\n {{ action.Status }}\n </kendo-chip>\n </div>\n </div>\n }\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-cogs\"></i>\n <p>No recent actions found</p>\n </div>\n }\n </div>\n </div>\n\n <!-- Recent Executions -->\n <div class=\"panel recent-executions\">\n <div class=\"panel-header\">\n <h3><i class=\"fa-solid fa-history\"></i> Recent Executions</h3>\n </div>\n <div class=\"panel-content\">\n @if (recentExecutions.length > 0) {\n <div class=\"executions-list\">\n @for (execution of recentExecutions; track execution.ID) {\n <div class=\"execution-item\" [class.expanded]=\"execution.isExpanded\">\n <div class=\"execution-header\" (click)=\"toggleExecutionExpanded(execution)\">\n <div class=\"execution-time\">\n {{ execution.StartedAt | date:'MMM d, HH:mm' }}\n </div>\n <div class=\"execution-info\">\n <div class=\"execution-action\">{{ execution.Action || 'Action ID: ' + execution.ActionID }}</div>\n <div class=\"execution-user\">{{ execution.User || 'User ID: ' + execution.UserID }}</div>\n </div>\n <div class=\"execution-result\">\n <kendo-chip \n [themeColor]=\"isExecutionSuccess(execution) ? 'success' : 'error'\"\n [size]=\"'small'\">\n {{ execution.ResultCode || 'Unknown' }}\n </kendo-chip>\n </div>\n <div class=\"execution-expand-icon\">\n <i [class]=\"execution.isExpanded ? 'fa-solid fa-chevron-up' : 'fa-solid fa-chevron-down'\"></i>\n </div>\n </div>\n @if (execution.isExpanded) {\n <div class=\"execution-details\">\n <div class=\"params-section\">\n <h5><i class=\"fa-solid fa-sliders\"></i> Parameters</h5>\n <mj-code-editor \n [ngModel]=\"formatJsonParams(execution.Params)\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 150px; width: 100%;\">\n </mj-code-editor>\n </div>\n <div class=\"execution-actions\">\n <kendo-button \n themeColor=\"primary\" \n size=\"small\"\n (click)=\"openExecution(execution)\">\n <i class=\"fa-solid fa-external-link\"></i> Open Details\n </kendo-button>\n </div>\n </div>\n }\n </div>\n }\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-history\"></i>\n <p>No recent executions found</p>\n </div>\n }\n </div>\n </div>\n </div>\n\n @if (isLoading) {\n <div class=\"loading-overlay\">\n <kendo-loader type=\"converging-spinner\" [themeColor]=\"'primary'\"></kendo-loader>\n </div>\n }\n</div>", styles: [".actions-overview {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n padding: 1.5rem;\n height: 100%;\n overflow-y: auto;\n\n .overview-header {\n .filters-row {\n display: flex;\n align-items: center;\n gap: 1rem;\n flex-wrap: wrap;\n\n .search-container {\n flex: 1;\n min-width: 200px;\n\n kendo-textbox {\n width: 100%;\n }\n }\n\n .filter-container {\n min-width: 150px;\n \n kendo-dropdownlist {\n width: 100%;\n }\n }\n }\n }\n\n .metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 1.5rem;\n\n .metric-card {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1.5rem;\n border-radius: 0.75rem;\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n transition: all 0.2s ease;\n\n &.clickable {\n cursor: pointer;\n \n &:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);\n }\n }\n\n .metric-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 3rem;\n height: 3rem;\n border-radius: 0.5rem;\n font-size: 1.25rem;\n\n i {\n color: white;\n }\n }\n\n .metric-content {\n flex: 1;\n\n .metric-value {\n font-size: 1.75rem;\n font-weight: 700;\n line-height: 1;\n margin-bottom: 0.25rem;\n }\n\n .metric-label {\n font-size: 0.875rem;\n font-weight: 600;\n color: var(--kendo-color-subtle);\n margin-bottom: 0.5rem;\n }\n\n .metric-breakdown {\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n font-size: 0.75rem;\n\n span {\n color: var(--kendo-color-subtle);\n\n &.active { color: var(--kendo-color-success); }\n &.pending { color: var(--kendo-color-warning); }\n &.disabled { color: var(--kendo-color-error); }\n &.recent { color: var(--kendo-color-info); }\n &.success-rate { color: var(--kendo-color-success); }\n &.custom { color: var(--kendo-color-primary); }\n }\n }\n }\n\n &.primary .metric-icon { background: var(--kendo-color-primary); }\n &.success .metric-icon { background: var(--kendo-color-success); }\n &.info .metric-icon { background: var(--kendo-color-info); }\n &.warning .metric-icon { background: var(--kendo-color-warning); }\n }\n }\n\n .content-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n gap: 1.5rem;\n flex: 1;\n\n .panel {\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.75rem;\n overflow: hidden;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n\n .panel-header {\n padding: 1rem 1.5rem;\n background: var(--kendo-color-app-surface);\n border-bottom: 1px solid var(--kendo-color-border);\n\n h3 {\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n color: var(--kendo-color-primary);\n }\n }\n }\n\n .panel-content {\n padding: 1.5rem;\n height: calc(100% - 60px);\n overflow-y: auto;\n }\n }\n\n .category-stats {\n .category-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .category-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .category-info {\n flex: 1;\n\n .category-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .category-metrics {\n display: flex;\n gap: 1rem;\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n\n .metric {\n &.success-rate {\n color: var(--kendo-color-success);\n font-weight: 600;\n }\n }\n }\n }\n\n .category-chart {\n width: 60px;\n\n .progress-bar {\n height: 6px;\n background: var(--kendo-color-border);\n border-radius: 3px;\n overflow: hidden;\n\n .progress-fill {\n height: 100%;\n background: var(--kendo-color-success);\n transition: width 0.3s ease;\n }\n }\n }\n }\n }\n }\n\n .recent-actions {\n .actions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .action-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .action-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n border-radius: 0.375rem;\n background: var(--kendo-color-primary-subtle);\n\n i {\n color: var(--kendo-color-primary);\n font-size: 1rem;\n }\n }\n\n .action-info {\n flex: 1;\n\n .action-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .action-description {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n line-height: 1.3;\n }\n }\n\n .action-status {\n flex-shrink: 0;\n }\n }\n }\n }\n\n .recent-executions {\n grid-column: 1 / -1;\n\n .executions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .execution-item {\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n transition: all 0.2s ease;\n margin-bottom: 0.5rem;\n\n &.expanded {\n border-color: var(--kendo-color-primary);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n }\n\n .execution-header {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n cursor: pointer;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n }\n\n .execution-time {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n font-weight: 600;\n min-width: 80px;\n }\n\n .execution-info {\n flex: 1;\n\n .execution-action {\n font-weight: 600;\n margin-bottom: 0.25rem;\n font-size: 0.875rem;\n }\n\n .execution-user {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n }\n }\n\n .execution-result {\n flex-shrink: 0;\n }\n\n .execution-expand-icon {\n color: var(--kendo-color-subtle);\n font-size: 0.75rem;\n margin-left: 0.5rem;\n }\n }\n\n .execution-details {\n padding: 1rem;\n background: var(--kendo-color-base-subtle);\n border-top: 1px solid var(--kendo-color-border);\n\n .params-section {\n margin-bottom: 1rem;\n\n h5 {\n margin: 0 0 0.5rem 0;\n font-size: 0.875rem;\n color: var(--kendo-color-subtle);\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n font-size: 0.75rem;\n }\n }\n }\n\n .execution-actions {\n display: flex;\n justify-content: flex-end;\n }\n }\n }\n }\n }\n }\n\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 2rem;\n text-align: center;\n color: var(--kendo-color-subtle);\n\n i {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n opacity: 0.5;\n }\n\n p {\n margin: 0;\n font-size: 0.875rem;\n }\n }\n\n .loading-overlay {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n }\n}\n\n// Responsive design\n@media (max-width: 1200px) {\n .actions-overview .content-grid {\n grid-template-columns: 1fr;\n \n .recent-executions {\n grid-column: 1;\n }\n }\n}\n\n@media (max-width: 768px) {\n .actions-overview {\n padding: 1rem;\n gap: 1rem;\n\n .metrics-grid {\n grid-template-columns: 1fr;\n gap: 1rem;\n }\n\n .overview-header .filters-row {\n flex-direction: column;\n align-items: stretch;\n\n .search-container,\n .filter-container {\n min-width: unset;\n }\n }\n }\n}"] }]
653
+ args: [{ selector: 'mj-actions-overview', template: "<div class=\"actions-overview\" >\n <!-- Header with search and filters -->\n <div class=\"overview-header\">\n <div class=\"filters-row\">\n <div class=\"search-container\">\n <kendo-textbox \n placeholder=\"Search actions...\" \n [value]=\"searchTerm$.value\"\n (valueChange)=\"onSearchChange($event)\">\n <ng-template kendoTextBoxPrefixTemplate>\n <i class=\"fa-solid fa-search\"></i>\n </ng-template>\n </kendo-textbox>\n </div>\n \n <div class=\"filter-container\">\n <kendo-dropdownlist \n [data]=\"[\n { text: 'All Statuses', value: 'all' },\n { text: 'Active', value: 'Active' },\n { text: 'Pending', value: 'Pending' },\n { text: 'Disabled', value: 'Disabled' }\n ]\"\n textField=\"text\"\n valueField=\"value\"\n [value]=\"selectedStatus$.value\"\n (valueChange)=\"onStatusFilterChange($event)\">\n </kendo-dropdownlist>\n </div>\n \n <div class=\"filter-container\">\n <kendo-dropdownlist \n [data]=\"[\n { text: 'All Types', value: 'all' },\n { text: 'AI Generated', value: 'Generated' },\n { text: 'Custom', value: 'Custom' }\n ]\"\n textField=\"text\"\n valueField=\"value\"\n [value]=\"selectedType$.value\"\n (valueChange)=\"onTypeFilterChange($event)\">\n </kendo-dropdownlist>\n </div>\n </div>\n </div>\n\n <!-- Metrics Cards -->\n <div class=\"metrics-grid\">\n <div class=\"metric-card primary clickable\" (click)=\"onTotalActionsClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-cogs\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.totalActions }}</div>\n <div class=\"metric-label\">Total Actions</div>\n <div class=\"metric-breakdown\">\n <span class=\"active\">{{ metrics.activeActions }} Active</span>\n <span class=\"pending\">{{ metrics.pendingActions }} Pending</span>\n <span class=\"disabled\">{{ metrics.disabledActions }} Disabled</span>\n </div>\n </div>\n </div>\n\n <div class=\"metric-card success clickable\" (click)=\"onExecutionsClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-play-circle\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.totalExecutions }}</div>\n <div class=\"metric-label\">Total Executions</div>\n <div class=\"metric-breakdown\">\n <span class=\"recent\">{{ metrics.recentExecutions }} in last 24h</span>\n <span class=\"success-rate\">{{ metrics.successRate }}% success rate</span>\n </div>\n </div>\n </div>\n\n <div class=\"metric-card info clickable\" (click)=\"onCategoriesClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-sitemap\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.totalCategories }}</div>\n <div class=\"metric-label\">Categories</div>\n <div class=\"metric-breakdown\">\n <span>Organized structure</span>\n </div>\n </div>\n </div>\n\n <div class=\"metric-card warning clickable\" (click)=\"onAIGeneratedClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-robot\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">{{ metrics.aiGeneratedActions }}</div>\n <div class=\"metric-label\">AI Generated</div>\n <div class=\"metric-breakdown\">\n <span class=\"custom\">{{ metrics.customActions }} Custom</span>\n </div>\n </div>\n </div>\n \n <div class=\"metric-card gallery clickable\" (click)=\"onActionGalleryClick()\">\n <div class=\"metric-icon\">\n <i class=\"fa-solid fa-th\"></i>\n </div>\n <div class=\"metric-content\">\n <div class=\"metric-value\">\n <i class=\"fa-solid fa-sparkles\"></i>\n </div>\n <div class=\"metric-label\">Action Gallery</div>\n <div class=\"metric-breakdown\">\n <span>Visual action browser</span>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Content Grid -->\n <div class=\"content-grid\">\n <!-- Category Statistics -->\n <div class=\"panel category-stats\">\n <div class=\"panel-header\">\n <h3><i class=\"fa-solid fa-chart-bar\"></i> Category Performance</h3>\n </div>\n <div class=\"panel-content\">\n @if (categoryStats.length > 0) {\n <div class=\"category-list\">\n @for (category of categoryStats; track category.categoryId) {\n <div class=\"category-item\" (click)=\"openCategory(category.categoryId)\">\n <div class=\"category-info\">\n <div class=\"category-name\">{{ category.categoryName }}</div>\n <div class=\"category-metrics\">\n <span class=\"metric\">{{ category.actionCount }} actions</span>\n <span class=\"metric\">{{ category.executionCount }} executions</span>\n <span class=\"metric success-rate\">{{ category.successRate }}% success</span>\n </div>\n </div>\n <div class=\"category-chart\">\n <div class=\"progress-bar\">\n <div class=\"progress-fill\" [style.width.%]=\"category.successRate\"></div>\n </div>\n </div>\n </div>\n }\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-chart-bar\"></i>\n <p>No category statistics available</p>\n </div>\n }\n </div>\n </div>\n\n <!-- Recent Actions -->\n <div class=\"panel recent-actions\">\n <div class=\"panel-header\">\n <h3><i class=\"fa-solid fa-clock\"></i> Recent Actions</h3>\n </div>\n <div class=\"panel-content\">\n @if (recentActions.length > 0) {\n <div class=\"actions-list\">\n @for (action of recentActions; track action.ID) {\n <div class=\"action-item\" (click)=\"openAction(action)\">\n <div class=\"action-icon\">\n <i [class]=\"getActionIcon(action)\"></i>\n </div>\n <div class=\"action-info\">\n <div class=\"action-name\">{{ action.Name }}</div>\n <div class=\"action-description\">{{ action.Description || 'No description' }}</div>\n </div>\n <div class=\"action-status\">\n <kendo-chip \n [themeColor]=\"getStatusColor(action.Status)\"\n [size]=\"'small'\">\n {{ action.Status }}\n </kendo-chip>\n </div>\n </div>\n }\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-cogs\"></i>\n <p>No recent actions found</p>\n </div>\n }\n </div>\n </div>\n\n <!-- Recent Executions -->\n <div class=\"panel recent-executions\">\n <div class=\"panel-header\">\n <h3><i class=\"fa-solid fa-history\"></i> Recent Executions</h3>\n </div>\n <div class=\"panel-content\">\n @if (recentExecutions.length > 0) {\n <div class=\"executions-list\">\n @for (execution of recentExecutions; track execution.ID) {\n <div class=\"execution-item\" [class.expanded]=\"execution.isExpanded\">\n <div class=\"execution-header\" (click)=\"toggleExecutionExpanded(execution)\">\n <div class=\"execution-time\">\n {{ execution.StartedAt | date:'MMM d, HH:mm' }}\n </div>\n <div class=\"execution-info\">\n <div class=\"execution-action\">{{ execution.Action || 'Action ID: ' + execution.ActionID }}</div>\n <div class=\"execution-user\">{{ execution.User || 'User ID: ' + execution.UserID }}</div>\n </div>\n <div class=\"execution-result\">\n <kendo-chip \n [themeColor]=\"isExecutionSuccess(execution) ? 'success' : 'error'\"\n [size]=\"'small'\">\n {{ execution.ResultCode || 'Unknown' }}\n </kendo-chip>\n </div>\n <div class=\"execution-expand-icon\">\n <i [class]=\"execution.isExpanded ? 'fa-solid fa-chevron-up' : 'fa-solid fa-chevron-down'\"></i>\n </div>\n </div>\n @if (execution.isExpanded) {\n <div class=\"execution-details\">\n <div class=\"params-section\">\n <h5><i class=\"fa-solid fa-sliders\"></i> Parameters</h5>\n <mj-code-editor \n [ngModel]=\"formatJsonParams(execution.Params)\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 150px; width: 100%;\">\n </mj-code-editor>\n </div>\n <div class=\"execution-actions\">\n <button kendoButton \n themeColor=\"primary\" \n size=\"small\"\n (click)=\"openExecution(execution)\">\n <i class=\"fa-solid fa-external-link\"></i> Open Details\n </button>\n </div>\n </div>\n }\n </div>\n }\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-history\"></i>\n <p>No recent executions found</p>\n </div>\n }\n </div>\n </div>\n </div>\n\n @if (isLoading) {\n <div class=\"loading-overlay\">\n <kendo-loader type=\"converging-spinner\" [themeColor]=\"'primary'\"></kendo-loader>\n </div>\n }\n</div>", styles: [".actions-overview {\n display: flex;\n flex-direction: column;\n gap: 1.5rem;\n padding: 1.5rem;\n height: 100%;\n overflow-y: auto;\n\n .overview-header {\n .filters-row {\n display: flex;\n align-items: center;\n gap: 1rem;\n flex-wrap: wrap;\n\n .search-container {\n flex: 1;\n min-width: 200px;\n\n kendo-textbox {\n width: 100%;\n }\n }\n\n .filter-container {\n min-width: 150px;\n \n kendo-dropdownlist {\n width: 100%;\n }\n }\n }\n }\n\n .metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 1.5rem;\n\n .metric-card {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1.5rem;\n border-radius: 0.75rem;\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n transition: all 0.2s ease;\n\n &.clickable {\n cursor: pointer;\n \n &:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);\n }\n }\n\n .metric-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 3rem;\n height: 3rem;\n border-radius: 0.5rem;\n font-size: 1.25rem;\n\n i {\n color: white;\n }\n }\n\n .metric-content {\n flex: 1;\n\n .metric-value {\n font-size: 1.75rem;\n font-weight: 700;\n line-height: 1;\n margin-bottom: 0.25rem;\n }\n\n .metric-label {\n font-size: 0.875rem;\n font-weight: 600;\n color: var(--kendo-color-subtle);\n margin-bottom: 0.5rem;\n }\n\n .metric-breakdown {\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n font-size: 0.75rem;\n\n span {\n color: var(--kendo-color-subtle);\n\n &.active { color: var(--kendo-color-success); }\n &.pending { color: var(--kendo-color-warning); }\n &.disabled { color: var(--kendo-color-error); }\n &.recent { color: var(--kendo-color-info); }\n &.success-rate { color: var(--kendo-color-success); }\n &.custom { color: var(--kendo-color-primary); }\n }\n }\n }\n\n &.primary .metric-icon { background: var(--kendo-color-primary); }\n &.success .metric-icon { background: var(--kendo-color-success); }\n &.info .metric-icon { background: var(--kendo-color-info); }\n &.warning .metric-icon { background: var(--kendo-color-warning); }\n &.gallery .metric-icon { \n background: linear-gradient(135deg, var(--kendo-color-primary), var(--kendo-color-secondary)); \n }\n }\n }\n\n .content-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-template-rows: auto auto;\n gap: 1.5rem;\n flex: 1;\n\n .panel {\n background: var(--kendo-color-surface);\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.75rem;\n overflow: hidden;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n\n .panel-header {\n padding: 1rem 1.5rem;\n background: var(--kendo-color-app-surface);\n border-bottom: 1px solid var(--kendo-color-border);\n\n h3 {\n margin: 0;\n font-size: 1rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n color: var(--kendo-color-primary);\n }\n }\n }\n\n .panel-content {\n padding: 1.5rem;\n height: calc(100% - 60px);\n overflow-y: auto;\n }\n }\n\n .category-stats {\n .category-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .category-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .category-info {\n flex: 1;\n\n .category-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .category-metrics {\n display: flex;\n gap: 1rem;\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n\n .metric {\n &.success-rate {\n color: var(--kendo-color-success);\n font-weight: 600;\n }\n }\n }\n }\n\n .category-chart {\n width: 60px;\n\n .progress-bar {\n height: 6px;\n background: var(--kendo-color-border);\n border-radius: 3px;\n overflow: hidden;\n\n .progress-fill {\n height: 100%;\n background: var(--kendo-color-success);\n transition: width 0.3s ease;\n }\n }\n }\n }\n }\n }\n\n .recent-actions {\n .actions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .action-item {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n cursor: pointer;\n transition: all 0.2s ease;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n border-color: var(--kendo-color-primary);\n }\n\n .action-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n border-radius: 0.375rem;\n background: var(--kendo-color-primary-subtle);\n\n i {\n color: var(--kendo-color-primary);\n font-size: 1rem;\n }\n }\n\n .action-info {\n flex: 1;\n\n .action-name {\n font-weight: 600;\n margin-bottom: 0.25rem;\n }\n\n .action-description {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n line-height: 1.3;\n }\n }\n\n .action-status {\n flex-shrink: 0;\n }\n }\n }\n }\n\n .recent-executions {\n grid-column: 1 / -1;\n\n .executions-list {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n .execution-item {\n border: 1px solid var(--kendo-color-border);\n border-radius: 0.5rem;\n transition: all 0.2s ease;\n margin-bottom: 0.5rem;\n\n &.expanded {\n border-color: var(--kendo-color-primary);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n }\n\n .execution-header {\n display: flex;\n align-items: center;\n gap: 1rem;\n padding: 1rem;\n cursor: pointer;\n\n &:hover {\n background: var(--kendo-color-base-hover);\n }\n\n .execution-time {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n font-weight: 600;\n min-width: 80px;\n }\n\n .execution-info {\n flex: 1;\n\n .execution-action {\n font-weight: 600;\n margin-bottom: 0.25rem;\n font-size: 0.875rem;\n }\n\n .execution-user {\n font-size: 0.75rem;\n color: var(--kendo-color-subtle);\n }\n }\n\n .execution-result {\n flex-shrink: 0;\n }\n\n .execution-expand-icon {\n color: var(--kendo-color-subtle);\n font-size: 0.75rem;\n margin-left: 0.5rem;\n }\n }\n\n .execution-details {\n padding: 1rem;\n background: var(--kendo-color-base-subtle);\n border-top: 1px solid var(--kendo-color-border);\n\n .params-section {\n margin-bottom: 1rem;\n\n h5 {\n margin: 0 0 0.5rem 0;\n font-size: 0.875rem;\n color: var(--kendo-color-subtle);\n display: flex;\n align-items: center;\n gap: 0.5rem;\n\n i {\n font-size: 0.75rem;\n }\n }\n }\n\n .execution-actions {\n display: flex;\n justify-content: flex-end;\n }\n }\n }\n }\n }\n }\n\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 2rem;\n text-align: center;\n color: var(--kendo-color-subtle);\n\n i {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n opacity: 0.5;\n }\n\n p {\n margin: 0;\n font-size: 0.875rem;\n }\n }\n\n .loading-overlay {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.8);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000;\n }\n}\n\n// Responsive design\n@media (max-width: 1200px) {\n .actions-overview .content-grid {\n grid-template-columns: 1fr;\n \n .recent-executions {\n grid-column: 1;\n }\n }\n}\n\n@media (max-width: 768px) {\n .actions-overview {\n padding: 1rem;\n gap: 1rem;\n\n .metrics-grid {\n grid-template-columns: 1fr;\n gap: 1rem;\n }\n\n .overview-header .filters-row {\n flex-direction: column;\n align-items: stretch;\n\n .search-container,\n .filter-container {\n min-width: unset;\n }\n }\n }\n}"] }]
629
654
  }], () => [], { openEntityRecord: [{
630
655
  type: Output
631
656
  }], showActionsListView: [{
@@ -634,6 +659,8 @@ export class ActionsOverviewComponent {
634
659
  type: Output
635
660
  }], showCategoriesListView: [{
636
661
  type: Output
662
+ }], showActionGalleryView: [{
663
+ type: Output
637
664
  }] }); })();
638
665
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ActionsOverviewComponent, { className: "ActionsOverviewComponent", filePath: "src/Actions/components/actions-overview.component.ts", lineNumber: 38 }); })();
639
666
  //# sourceMappingURL=actions-overview.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions-overview.component.js","sourceRoot":"","sources":["../../../src/Actions/components/actions-overview.component.ts","../../../src/Actions/components/actions-overview.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions-overview.component.js","sourceRoot":"","sources":["../../../src/Actions/components/actions-overview.component.ts","../../../src/Actions/components/actions-overview.component.html"],"names":[],"mappings":"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"}