@memberjunction/ng-dashboards 5.22.0 → 5.23.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 (204) hide show
  1. package/README.md +51 -0
  2. package/dist/AI/components/agents/agent-configuration.component.d.ts.map +1 -1
  3. package/dist/AI/components/agents/agent-configuration.component.js +364 -362
  4. package/dist/AI/components/agents/agent-configuration.component.js.map +1 -1
  5. package/dist/AI/components/agents/agent-editor.component.js +2 -2
  6. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts +275 -64
  7. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts.map +1 -1
  8. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js +2645 -436
  9. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js.map +1 -1
  10. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts +240 -6
  11. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts.map +1 -1
  12. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js +2166 -256
  13. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js.map +1 -1
  14. package/dist/AI/components/execution-monitoring.component.d.ts.map +1 -1
  15. package/dist/AI/components/execution-monitoring.component.js +191 -197
  16. package/dist/AI/components/execution-monitoring.component.js.map +1 -1
  17. package/dist/AI/components/models/model-management.component.js +9 -8
  18. package/dist/AI/components/models/model-management.component.js.map +1 -1
  19. package/dist/AI/components/prompts/prompt-management.component.js +305 -299
  20. package/dist/AI/components/prompts/prompt-management.component.js.map +1 -1
  21. package/dist/AI/components/system/system-configuration.component.js +319 -313
  22. package/dist/AI/components/system/system-configuration.component.js.map +1 -1
  23. package/dist/AI/components/vectors/vector-management-resource.component.d.ts +1 -2
  24. package/dist/AI/components/vectors/vector-management-resource.component.d.ts.map +1 -1
  25. package/dist/AI/components/vectors/vector-management-resource.component.js +12 -27
  26. package/dist/AI/components/vectors/vector-management-resource.component.js.map +1 -1
  27. package/dist/APIKeys/api-applications-panel.component.js +10 -12
  28. package/dist/APIKeys/api-applications-panel.component.js.map +1 -1
  29. package/dist/APIKeys/api-key-create-dialog.component.js +13 -19
  30. package/dist/APIKeys/api-key-create-dialog.component.js.map +1 -1
  31. package/dist/APIKeys/api-key-edit-panel.component.js +12 -14
  32. package/dist/APIKeys/api-key-edit-panel.component.js.map +1 -1
  33. package/dist/APIKeys/api-scopes-panel.component.js +61 -68
  34. package/dist/APIKeys/api-scopes-panel.component.js.map +1 -1
  35. package/dist/APIKeys/api-usage-panel.component.js +10 -11
  36. package/dist/APIKeys/api-usage-panel.component.js.map +1 -1
  37. package/dist/Actions/components/actions-list-view.component.js +82 -96
  38. package/dist/Actions/components/actions-list-view.component.js.map +1 -1
  39. package/dist/Actions/components/actions-overview.component.js +130 -134
  40. package/dist/Actions/components/actions-overview.component.js.map +1 -1
  41. package/dist/Actions/components/categories-list-view.component.d.ts.map +1 -1
  42. package/dist/Actions/components/categories-list-view.component.js +40 -46
  43. package/dist/Actions/components/categories-list-view.component.js.map +1 -1
  44. package/dist/Actions/components/code-management.component.js +2 -2
  45. package/dist/Actions/components/code-management.component.js.map +1 -1
  46. package/dist/Actions/components/entity-integration.component.js +2 -2
  47. package/dist/Actions/components/entity-integration.component.js.map +1 -1
  48. package/dist/Actions/components/execution-monitoring.component.js +127 -132
  49. package/dist/Actions/components/execution-monitoring.component.js.map +1 -1
  50. package/dist/Actions/components/executions-list-view.component.js +2 -2
  51. package/dist/Actions/components/executions-list-view.component.js.map +1 -1
  52. package/dist/Actions/components/explorer/action-card.component.js +11 -17
  53. package/dist/Actions/components/explorer/action-card.component.js.map +1 -1
  54. package/dist/Actions/components/explorer/action-explorer.component.js +5 -11
  55. package/dist/Actions/components/explorer/action-explorer.component.js.map +1 -1
  56. package/dist/Actions/components/explorer/action-list-item.component.js +8 -10
  57. package/dist/Actions/components/explorer/action-list-item.component.js.map +1 -1
  58. package/dist/Actions/components/explorer/action-toolbar.component.js +112 -133
  59. package/dist/Actions/components/explorer/action-toolbar.component.js.map +1 -1
  60. package/dist/Actions/components/explorer/action-tree-panel.component.js +63 -83
  61. package/dist/Actions/components/explorer/action-tree-panel.component.js.map +1 -1
  62. package/dist/Actions/components/explorer/new-action-panel.component.js +17 -21
  63. package/dist/Actions/components/explorer/new-action-panel.component.js.map +1 -1
  64. package/dist/Actions/components/explorer/new-category-panel.component.js +17 -21
  65. package/dist/Actions/components/explorer/new-category-panel.component.js.map +1 -1
  66. package/dist/Actions/components/scheduled-actions.component.js +2 -2
  67. package/dist/Actions/components/scheduled-actions.component.js.map +1 -1
  68. package/dist/Actions/components/security-permissions.component.js +2 -2
  69. package/dist/Actions/components/security-permissions.component.js.map +1 -1
  70. package/dist/ComponentStudio/component-studio-dashboard.component.d.ts +13 -5
  71. package/dist/ComponentStudio/component-studio-dashboard.component.d.ts.map +1 -1
  72. package/dist/ComponentStudio/component-studio-dashboard.component.js +168 -145
  73. package/dist/ComponentStudio/component-studio-dashboard.component.js.map +1 -1
  74. package/dist/ComponentStudio/components/artifact-load-dialog.component.d.ts +4 -5
  75. package/dist/ComponentStudio/components/artifact-load-dialog.component.d.ts.map +1 -1
  76. package/dist/ComponentStudio/components/artifact-load-dialog.component.js +197 -200
  77. package/dist/ComponentStudio/components/artifact-load-dialog.component.js.map +1 -1
  78. package/dist/ComponentStudio/components/artifact-selection-dialog.component.d.ts +5 -7
  79. package/dist/ComponentStudio/components/artifact-selection-dialog.component.d.ts.map +1 -1
  80. package/dist/ComponentStudio/components/artifact-selection-dialog.component.js +142 -148
  81. package/dist/ComponentStudio/components/artifact-selection-dialog.component.js.map +1 -1
  82. package/dist/ComponentStudio/components/browser/component-browser.component.js +153 -166
  83. package/dist/ComponentStudio/components/browser/component-browser.component.js.map +1 -1
  84. package/dist/ComponentStudio/components/editors/code-editor-panel.component.js +15 -20
  85. package/dist/ComponentStudio/components/editors/code-editor-panel.component.js.map +1 -1
  86. package/dist/ComponentStudio/components/editors/data-requirements-editor.component.js +16 -21
  87. package/dist/ComponentStudio/components/editors/data-requirements-editor.component.js.map +1 -1
  88. package/dist/ComponentStudio/components/editors/requirements-editor.component.js +18 -23
  89. package/dist/ComponentStudio/components/editors/requirements-editor.component.js.map +1 -1
  90. package/dist/ComponentStudio/components/editors/spec-editor.component.js +25 -30
  91. package/dist/ComponentStudio/components/editors/spec-editor.component.js.map +1 -1
  92. package/dist/ComponentStudio/components/new-component-dialog/new-component-dialog.component.js +10 -11
  93. package/dist/ComponentStudio/components/new-component-dialog/new-component-dialog.component.js.map +1 -1
  94. package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.d.ts.map +1 -1
  95. package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.js +24 -35
  96. package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.js.map +1 -1
  97. package/dist/ComponentStudio/components/text-import-dialog.component.js +15 -17
  98. package/dist/ComponentStudio/components/text-import-dialog.component.js.map +1 -1
  99. package/dist/Credentials/components/credentials-categories-resource.component.js +7 -6
  100. package/dist/Credentials/components/credentials-categories-resource.component.js.map +1 -1
  101. package/dist/Credentials/components/credentials-list-resource.component.js +6 -5
  102. package/dist/Credentials/components/credentials-list-resource.component.js.map +1 -1
  103. package/dist/Credentials/components/credentials-types-resource.component.js +7 -6
  104. package/dist/Credentials/components/credentials-types-resource.component.js.map +1 -1
  105. package/dist/DashboardBrowser/dashboard-share-dialog.component.js +9 -9
  106. package/dist/DashboardBrowser/dashboard-share-dialog.component.js.map +1 -1
  107. package/dist/Home/home-dashboard.component.js +4 -4
  108. package/dist/Home/home-dashboard.component.js.map +1 -1
  109. package/dist/Integration/components/connections/connections.component.js +4 -4
  110. package/dist/Integration/components/connections/connections.component.js.map +1 -1
  111. package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js +246 -259
  112. package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js.map +1 -1
  113. package/dist/Integration/components/widgets/integration-card.component.js +7 -9
  114. package/dist/Integration/components/widgets/integration-card.component.js.map +1 -1
  115. package/dist/Integration/integration.module.d.ts +6 -10
  116. package/dist/Integration/integration.module.d.ts.map +1 -1
  117. package/dist/Integration/integration.module.js +12 -20
  118. package/dist/Integration/integration.module.js.map +1 -1
  119. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts +106 -0
  120. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts.map +1 -0
  121. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js +607 -0
  122. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js.map +1 -0
  123. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.d.ts +7 -2
  124. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.d.ts.map +1 -1
  125. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js +59 -31
  126. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js.map +1 -1
  127. package/dist/KnowledgeHub/index.d.ts +1 -0
  128. package/dist/KnowledgeHub/index.d.ts.map +1 -1
  129. package/dist/KnowledgeHub/index.js +1 -0
  130. package/dist/KnowledgeHub/index.js.map +1 -1
  131. package/dist/Lists/components/lists-browse-resource.component.d.ts.map +1 -1
  132. package/dist/Lists/components/lists-browse-resource.component.js +9 -7
  133. package/dist/Lists/components/lists-browse-resource.component.js.map +1 -1
  134. package/dist/Lists/components/lists-my-lists-resource.component.js +5 -4
  135. package/dist/Lists/components/lists-my-lists-resource.component.js.map +1 -1
  136. package/dist/Lists/components/lists-operations-resource.component.js +10 -9
  137. package/dist/Lists/components/lists-operations-resource.component.js.map +1 -1
  138. package/dist/MCP/components/mcp-connection-dialog.component.js +141 -132
  139. package/dist/MCP/components/mcp-connection-dialog.component.js.map +1 -1
  140. package/dist/MCP/components/mcp-log-detail-panel.component.js +4 -4
  141. package/dist/MCP/components/mcp-log-detail-panel.component.js.map +1 -1
  142. package/dist/MCP/components/mcp-server-dialog.component.js +141 -128
  143. package/dist/MCP/components/mcp-server-dialog.component.js.map +1 -1
  144. package/dist/MCP/components/mcp-test-tool-dialog.component.js +210 -218
  145. package/dist/MCP/components/mcp-test-tool-dialog.component.js.map +1 -1
  146. package/dist/MCP/mcp-dashboard.component.js +2 -2
  147. package/dist/MCP/mcp-dashboard.component.js.map +1 -1
  148. package/dist/MCP/mcp.module.d.ts +6 -9
  149. package/dist/MCP/mcp.module.d.ts.map +1 -1
  150. package/dist/MCP/mcp.module.js +20 -22
  151. package/dist/MCP/mcp.module.js.map +1 -1
  152. package/dist/Scheduling/components/scheduling-activity.component.js +5 -4
  153. package/dist/Scheduling/components/scheduling-activity.component.js.map +1 -1
  154. package/dist/Scheduling/components/scheduling-jobs.component.js +6 -5
  155. package/dist/Scheduling/components/scheduling-jobs.component.js.map +1 -1
  156. package/dist/Scheduling/components/scheduling-overview.component.js +93 -92
  157. package/dist/Scheduling/components/scheduling-overview.component.js.map +1 -1
  158. package/dist/Testing/testing-dashboard.component.js +9 -10
  159. package/dist/Testing/testing-dashboard.component.js.map +1 -1
  160. package/dist/actions-dashboards.module.d.ts +8 -13
  161. package/dist/actions-dashboards.module.d.ts.map +1 -1
  162. package/dist/actions-dashboards.module.js +6 -27
  163. package/dist/actions-dashboards.module.js.map +1 -1
  164. package/dist/ai-dashboards.module.d.ts +16 -20
  165. package/dist/ai-dashboards.module.d.ts.map +1 -1
  166. package/dist/ai-dashboards.module.js +23 -44
  167. package/dist/ai-dashboards.module.js.map +1 -1
  168. package/dist/communication-dashboards.module.d.ts +4 -8
  169. package/dist/communication-dashboards.module.d.ts.map +1 -1
  170. package/dist/communication-dashboards.module.js +0 -19
  171. package/dist/communication-dashboards.module.js.map +1 -1
  172. package/dist/component-studio-dashboards.module.d.ts +7 -11
  173. package/dist/component-studio-dashboards.module.d.ts.map +1 -1
  174. package/dist/component-studio-dashboards.module.js +22 -34
  175. package/dist/component-studio-dashboards.module.js.map +1 -1
  176. package/dist/core-dashboards.module.d.ts +12 -18
  177. package/dist/core-dashboards.module.d.ts.map +1 -1
  178. package/dist/core-dashboards.module.js +15 -31
  179. package/dist/core-dashboards.module.js.map +1 -1
  180. package/dist/credentials-dashboards.module.d.ts +5 -8
  181. package/dist/credentials-dashboards.module.d.ts.map +1 -1
  182. package/dist/credentials-dashboards.module.js +3 -19
  183. package/dist/credentials-dashboards.module.js.map +1 -1
  184. package/dist/data-explorer-dashboards.module.d.ts +7 -13
  185. package/dist/data-explorer-dashboards.module.d.ts.map +1 -1
  186. package/dist/data-explorer-dashboards.module.js +0 -27
  187. package/dist/data-explorer-dashboards.module.js.map +1 -1
  188. package/dist/lists-dashboards.module.d.ts +5 -8
  189. package/dist/lists-dashboards.module.d.ts.map +1 -1
  190. package/dist/lists-dashboards.module.js +3 -19
  191. package/dist/lists-dashboards.module.js.map +1 -1
  192. package/dist/public-api.d.ts +1 -0
  193. package/dist/public-api.d.ts.map +1 -1
  194. package/dist/public-api.js +1 -0
  195. package/dist/public-api.js.map +1 -1
  196. package/dist/scheduling-dashboards.module.d.ts +6 -10
  197. package/dist/scheduling-dashboards.module.d.ts.map +1 -1
  198. package/dist/scheduling-dashboards.module.js +3 -23
  199. package/dist/scheduling-dashboards.module.js.map +1 -1
  200. package/dist/testing-dashboards.module.d.ts +7 -13
  201. package/dist/testing-dashboards.module.d.ts.map +1 -1
  202. package/dist/testing-dashboards.module.js +0 -27
  203. package/dist/testing-dashboards.module.js.map +1 -1
  204. package/package.json +47 -55
@@ -3,27 +3,18 @@ import { Subject } from 'rxjs';
3
3
  import { takeUntil, debounceTime, distinctUntilChanged } from 'rxjs/operators';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "../../services/action-explorer-state.service";
6
- import * as i2 from "@progress/kendo-angular-buttons";
7
- import * as i3 from "@progress/kendo-angular-inputs";
6
+ import * as i2 from "@memberjunction/ng-ui-components";
8
7
  const _forTrack0 = ($index, $item) => $item.value;
9
8
  const _forTrack1 = ($index, $item) => $item.field;
10
- function ActionToolbarComponent_ng_template_4_Template(rf, ctx) { if (rf & 1) {
11
- i0.ɵɵelement(0, "i", 29);
12
- } }
13
- function ActionToolbarComponent_Conditional_5_ng_template_0_Template(rf, ctx) { if (rf & 1) {
9
+ function ActionToolbarComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
14
10
  const _r1 = i0.ɵɵgetCurrentView();
15
11
  i0.ɵɵelementStart(0, "button", 30);
16
- i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_5_ng_template_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.clearSearch()); });
12
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.clearSearch()); });
17
13
  i0.ɵɵelement(1, "i", 31);
18
14
  i0.ɵɵelementEnd();
19
- } if (rf & 2) {
20
- i0.ɵɵproperty("fillMode", "flat")("size", "small");
21
- } }
22
- function ActionToolbarComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
23
- i0.ɵɵtemplate(0, ActionToolbarComponent_Conditional_5_ng_template_0_Template, 2, 2, "ng-template", 5);
24
15
  } }
25
- function ActionToolbarComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
26
- i0.ɵɵelementStart(0, "span", 9);
16
+ function ActionToolbarComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
17
+ i0.ɵɵelementStart(0, "span", 10);
27
18
  i0.ɵɵtext(1);
28
19
  i0.ɵɵelementEnd();
29
20
  } if (rf & 2) {
@@ -31,21 +22,19 @@ function ActionToolbarComponent_Conditional_10_Template(rf, ctx) { if (rf & 1) {
31
22
  i0.ɵɵadvance();
32
23
  i0.ɵɵtextInterpolate(ctx_r1.getActiveFilterCount());
33
24
  } }
34
- function ActionToolbarComponent_Conditional_12_Conditional_5_Template(rf, ctx) { if (rf & 1) {
25
+ function ActionToolbarComponent_Conditional_13_Conditional_5_Template(rf, ctx) { if (rf & 1) {
35
26
  const _r3 = i0.ɵɵgetCurrentView();
36
- i0.ɵɵelementStart(0, "button", 30);
37
- i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_12_Conditional_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.StateService.setStatusFilter([])); });
27
+ i0.ɵɵelementStart(0, "button", 38);
28
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_13_Conditional_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.StateService.setStatusFilter([])); });
38
29
  i0.ɵɵtext(1, " Clear ");
39
30
  i0.ɵɵelementEnd();
40
- } if (rf & 2) {
41
- i0.ɵɵproperty("fillMode", "flat")("size", "small");
42
31
  } }
43
- function ActionToolbarComponent_Conditional_12_For_8_Template(rf, ctx) { if (rf & 1) {
32
+ function ActionToolbarComponent_Conditional_13_For_8_Template(rf, ctx) { if (rf & 1) {
44
33
  const _r4 = i0.ɵɵgetCurrentView();
45
- i0.ɵɵelementStart(0, "label", 38)(1, "input", 39);
46
- i0.ɵɵlistener("change", function ActionToolbarComponent_Conditional_12_For_8_Template_input_change_1_listener() { const status_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleStatus(status_r5.value)); });
34
+ i0.ɵɵelementStart(0, "label", 39)(1, "input", 40);
35
+ i0.ɵɵlistener("change", function ActionToolbarComponent_Conditional_13_For_8_Template_input_change_1_listener() { const status_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleStatus(status_r5.value)); });
47
36
  i0.ɵɵelementEnd();
48
- i0.ɵɵelement(2, "span", 40);
37
+ i0.ɵɵelement(2, "span", 41);
49
38
  i0.ɵɵtext(3);
50
39
  i0.ɵɵelementEnd();
51
40
  } if (rf & 2) {
@@ -59,19 +48,17 @@ function ActionToolbarComponent_Conditional_12_For_8_Template(rf, ctx) { if (rf
59
48
  i0.ɵɵadvance();
60
49
  i0.ɵɵtextInterpolate1(" ", status_r5.label, " ");
61
50
  } }
62
- function ActionToolbarComponent_Conditional_12_Conditional_13_Template(rf, ctx) { if (rf & 1) {
51
+ function ActionToolbarComponent_Conditional_13_Conditional_13_Template(rf, ctx) { if (rf & 1) {
63
52
  const _r6 = i0.ɵɵgetCurrentView();
64
- i0.ɵɵelementStart(0, "button", 30);
65
- i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_12_Conditional_13_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.StateService.setTypeFilter([])); });
53
+ i0.ɵɵelementStart(0, "button", 38);
54
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_13_Conditional_13_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.StateService.setTypeFilter([])); });
66
55
  i0.ɵɵtext(1, " Clear ");
67
56
  i0.ɵɵelementEnd();
68
- } if (rf & 2) {
69
- i0.ɵɵproperty("fillMode", "flat")("size", "small");
70
57
  } }
71
- function ActionToolbarComponent_Conditional_12_For_16_Template(rf, ctx) { if (rf & 1) {
58
+ function ActionToolbarComponent_Conditional_13_For_16_Template(rf, ctx) { if (rf & 1) {
72
59
  const _r7 = i0.ɵɵgetCurrentView();
73
- i0.ɵɵelementStart(0, "label", 38)(1, "input", 39);
74
- i0.ɵɵlistener("change", function ActionToolbarComponent_Conditional_12_For_16_Template_input_change_1_listener() { const type_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleType(type_r8.value)); });
60
+ i0.ɵɵelementStart(0, "label", 39)(1, "input", 40);
61
+ i0.ɵɵlistener("change", function ActionToolbarComponent_Conditional_13_For_16_Template_input_change_1_listener() { const type_r8 = i0.ɵɵrestoreView(_r7).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleType(type_r8.value)); });
75
62
  i0.ɵɵelementEnd();
76
63
  i0.ɵɵelement(2, "i");
77
64
  i0.ɵɵtext(3);
@@ -87,35 +74,32 @@ function ActionToolbarComponent_Conditional_12_For_16_Template(rf, ctx) { if (rf
87
74
  i0.ɵɵadvance();
88
75
  i0.ɵɵtextInterpolate1(" ", type_r8.label, " ");
89
76
  } }
90
- function ActionToolbarComponent_Conditional_12_Conditional_17_Template(rf, ctx) { if (rf & 1) {
77
+ function ActionToolbarComponent_Conditional_13_Conditional_17_Template(rf, ctx) { if (rf & 1) {
91
78
  const _r9 = i0.ɵɵgetCurrentView();
92
- i0.ɵɵelementStart(0, "div", 37)(1, "button", 27);
93
- i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_12_Conditional_17_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r9); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.clearFilters()); });
79
+ i0.ɵɵelementStart(0, "div", 37)(1, "button", 42);
80
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_13_Conditional_17_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r9); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.clearFilters()); });
94
81
  i0.ɵɵelement(2, "i", 31);
95
82
  i0.ɵɵtext(3, " Clear All Filters ");
96
83
  i0.ɵɵelementEnd()();
97
- } if (rf & 2) {
98
- i0.ɵɵadvance();
99
- i0.ɵɵproperty("fillMode", "flat")("themeColor", "error");
100
84
  } }
101
- function ActionToolbarComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
102
- i0.ɵɵelementStart(0, "div", 10)(1, "div", 32)(2, "div", 33)(3, "span");
85
+ function ActionToolbarComponent_Conditional_13_Template(rf, ctx) { if (rf & 1) {
86
+ i0.ɵɵelementStart(0, "div", 11)(1, "div", 32)(2, "div", 33)(3, "span");
103
87
  i0.ɵɵtext(4, "Status");
104
88
  i0.ɵɵelementEnd();
105
- i0.ɵɵconditionalCreate(5, ActionToolbarComponent_Conditional_12_Conditional_5_Template, 2, 2, "button", 34);
89
+ i0.ɵɵconditionalCreate(5, ActionToolbarComponent_Conditional_13_Conditional_5_Template, 2, 0, "button", 34);
106
90
  i0.ɵɵelementEnd();
107
91
  i0.ɵɵelementStart(6, "div", 35);
108
- i0.ɵɵrepeaterCreate(7, ActionToolbarComponent_Conditional_12_For_8_Template, 4, 5, "label", 36, _forTrack0);
92
+ i0.ɵɵrepeaterCreate(7, ActionToolbarComponent_Conditional_13_For_8_Template, 4, 5, "label", 36, _forTrack0);
109
93
  i0.ɵɵelementEnd()();
110
94
  i0.ɵɵelementStart(9, "div", 32)(10, "div", 33)(11, "span");
111
95
  i0.ɵɵtext(12, "Type");
112
96
  i0.ɵɵelementEnd();
113
- i0.ɵɵconditionalCreate(13, ActionToolbarComponent_Conditional_12_Conditional_13_Template, 2, 2, "button", 34);
97
+ i0.ɵɵconditionalCreate(13, ActionToolbarComponent_Conditional_13_Conditional_13_Template, 2, 0, "button", 34);
114
98
  i0.ɵɵelementEnd();
115
99
  i0.ɵɵelementStart(14, "div", 35);
116
- i0.ɵɵrepeaterCreate(15, ActionToolbarComponent_Conditional_12_For_16_Template, 4, 6, "label", 36, _forTrack0);
100
+ i0.ɵɵrepeaterCreate(15, ActionToolbarComponent_Conditional_13_For_16_Template, 4, 6, "label", 36, _forTrack0);
117
101
  i0.ɵɵelementEnd()();
118
- i0.ɵɵconditionalCreate(17, ActionToolbarComponent_Conditional_12_Conditional_17_Template, 4, 2, "div", 37);
102
+ i0.ɵɵconditionalCreate(17, ActionToolbarComponent_Conditional_13_Conditional_17_Template, 4, 0, "div", 37);
119
103
  i0.ɵɵelementEnd();
120
104
  } if (rf & 2) {
121
105
  const ctx_r1 = i0.ɵɵnextContext();
@@ -130,34 +114,34 @@ function ActionToolbarComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
130
114
  i0.ɵɵadvance(2);
131
115
  i0.ɵɵconditional(ctx_r1.hasActiveFilters() ? 17 : -1);
132
116
  } }
133
- function ActionToolbarComponent_Conditional_13_For_2_Template(rf, ctx) { if (rf & 1) {
117
+ function ActionToolbarComponent_Conditional_14_For_2_Template(rf, ctx) { if (rf & 1) {
134
118
  const _r10 = i0.ɵɵgetCurrentView();
135
- i0.ɵɵelementStart(0, "kendo-chip", 42);
136
- i0.ɵɵlistener("remove", function ActionToolbarComponent_Conditional_13_For_2_Template_kendo_chip_remove_0_listener() { const status_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleStatus(status_r11)); });
119
+ i0.ɵɵelementStart(0, "span", 44);
120
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_14_For_2_Template_span_click_0_listener() { const status_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleStatus(status_r11)); });
137
121
  i0.ɵɵtext(1);
122
+ i0.ɵɵelement(2, "i", 31);
138
123
  i0.ɵɵelementEnd();
139
124
  } if (rf & 2) {
140
125
  const status_r11 = ctx.$implicit;
141
- i0.ɵɵproperty("removable", true)("size", "small");
142
126
  i0.ɵɵadvance();
143
127
  i0.ɵɵtextInterpolate1(" Status: ", status_r11, " ");
144
128
  } }
145
- function ActionToolbarComponent_Conditional_13_For_4_Template(rf, ctx) { if (rf & 1) {
129
+ function ActionToolbarComponent_Conditional_14_For_4_Template(rf, ctx) { if (rf & 1) {
146
130
  const _r12 = i0.ɵɵgetCurrentView();
147
- i0.ɵɵelementStart(0, "kendo-chip", 42);
148
- i0.ɵɵlistener("remove", function ActionToolbarComponent_Conditional_13_For_4_Template_kendo_chip_remove_0_listener() { const type_r13 = i0.ɵɵrestoreView(_r12).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleType(type_r13)); });
131
+ i0.ɵɵelementStart(0, "span", 44);
132
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_14_For_4_Template_span_click_0_listener() { const type_r13 = i0.ɵɵrestoreView(_r12).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.toggleType(type_r13)); });
149
133
  i0.ɵɵtext(1);
134
+ i0.ɵɵelement(2, "i", 31);
150
135
  i0.ɵɵelementEnd();
151
136
  } if (rf & 2) {
152
137
  const type_r13 = ctx.$implicit;
153
- i0.ɵɵproperty("removable", true)("size", "small");
154
138
  i0.ɵɵadvance();
155
139
  i0.ɵɵtextInterpolate1(" Type: ", type_r13 === "Generated" ? "AI Generated" : type_r13, " ");
156
140
  } }
157
- function ActionToolbarComponent_Conditional_13_Template(rf, ctx) { if (rf & 1) {
158
- i0.ɵɵelementStart(0, "div", 11);
159
- i0.ɵɵrepeaterCreate(1, ActionToolbarComponent_Conditional_13_For_2_Template, 2, 3, "kendo-chip", 41, i0.ɵɵrepeaterTrackByIdentity);
160
- i0.ɵɵrepeaterCreate(3, ActionToolbarComponent_Conditional_13_For_4_Template, 2, 3, "kendo-chip", 41, i0.ɵɵrepeaterTrackByIdentity);
141
+ function ActionToolbarComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
142
+ i0.ɵɵelementStart(0, "div", 12);
143
+ i0.ɵɵrepeaterCreate(1, ActionToolbarComponent_Conditional_14_For_2_Template, 3, 1, "span", 43, i0.ɵɵrepeaterTrackByIdentity);
144
+ i0.ɵɵrepeaterCreate(3, ActionToolbarComponent_Conditional_14_For_4_Template, 3, 1, "span", 43, i0.ɵɵrepeaterTrackByIdentity);
161
145
  i0.ɵɵelementEnd();
162
146
  } if (rf & 2) {
163
147
  const ctx_r1 = i0.ɵɵnextContext();
@@ -166,8 +150,8 @@ function ActionToolbarComponent_Conditional_13_Template(rf, ctx) { if (rf & 1) {
166
150
  i0.ɵɵadvance(2);
167
151
  i0.ɵɵrepeater(ctx_r1.Filters.types);
168
152
  } }
169
- function ActionToolbarComponent_Conditional_18_Template(rf, ctx) { if (rf & 1) {
170
- i0.ɵɵelementStart(0, "span", 15);
153
+ function ActionToolbarComponent_Conditional_19_Template(rf, ctx) { if (rf & 1) {
154
+ i0.ɵɵelementStart(0, "span", 16);
171
155
  i0.ɵɵtext(1);
172
156
  i0.ɵɵelementEnd();
173
157
  } if (rf & 2) {
@@ -175,19 +159,19 @@ function ActionToolbarComponent_Conditional_18_Template(rf, ctx) { if (rf & 1) {
175
159
  i0.ɵɵadvance();
176
160
  i0.ɵɵtextInterpolate1("of ", ctx_r1.TotalCount);
177
161
  } }
178
- function ActionToolbarComponent_Conditional_26_For_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
179
- i0.ɵɵelement(0, "i", 46);
162
+ function ActionToolbarComponent_Conditional_27_For_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
163
+ i0.ɵɵelement(0, "i", 48);
180
164
  } if (rf & 2) {
181
165
  const ctx_r1 = i0.ɵɵnextContext(3);
182
166
  i0.ɵɵclassMap(ctx_r1.SortDirection === "asc" ? "fa-solid fa-arrow-up" : "fa-solid fa-arrow-down");
183
167
  } }
184
- function ActionToolbarComponent_Conditional_26_For_2_Template(rf, ctx) { if (rf & 1) {
168
+ function ActionToolbarComponent_Conditional_27_For_2_Template(rf, ctx) { if (rf & 1) {
185
169
  const _r14 = i0.ɵɵgetCurrentView();
186
- i0.ɵɵelementStart(0, "button", 44);
187
- i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_26_For_2_Template_button_click_0_listener() { const option_r15 = i0.ɵɵrestoreView(_r14).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setSortField(option_r15.field)); });
170
+ i0.ɵɵelementStart(0, "button", 46);
171
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Conditional_27_For_2_Template_button_click_0_listener() { const option_r15 = i0.ɵɵrestoreView(_r14).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setSortField(option_r15.field)); });
188
172
  i0.ɵɵelement(1, "i");
189
173
  i0.ɵɵtext(2);
190
- i0.ɵɵconditionalCreate(3, ActionToolbarComponent_Conditional_26_For_2_Conditional_3_Template, 1, 2, "i", 45);
174
+ i0.ɵɵconditionalCreate(3, ActionToolbarComponent_Conditional_27_For_2_Conditional_3_Template, 1, 2, "i", 47);
191
175
  i0.ɵɵelementEnd();
192
176
  } if (rf & 2) {
193
177
  const option_r15 = ctx.$implicit;
@@ -200,9 +184,9 @@ function ActionToolbarComponent_Conditional_26_For_2_Template(rf, ctx) { if (rf
200
184
  i0.ɵɵadvance();
201
185
  i0.ɵɵconditional(ctx_r1.SortField === option_r15.field ? 3 : -1);
202
186
  } }
203
- function ActionToolbarComponent_Conditional_26_Template(rf, ctx) { if (rf & 1) {
204
- i0.ɵɵelementStart(0, "div", 17);
205
- i0.ɵɵrepeaterCreate(1, ActionToolbarComponent_Conditional_26_For_2_Template, 4, 6, "button", 43, _forTrack1);
187
+ function ActionToolbarComponent_Conditional_27_Template(rf, ctx) { if (rf & 1) {
188
+ i0.ɵɵelementStart(0, "div", 18);
189
+ i0.ɵɵrepeaterCreate(1, ActionToolbarComponent_Conditional_27_For_2_Template, 4, 6, "button", 45, _forTrack1);
206
190
  i0.ɵɵelementEnd();
207
191
  } if (rf & 2) {
208
192
  const ctx_r1 = i0.ɵɵnextContext();
@@ -369,108 +353,103 @@ export class ActionToolbarComponent {
369
353
  this.RefreshClick.emit();
370
354
  }
371
355
  static ɵfac = function ActionToolbarComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ActionToolbarComponent)(i0.ɵɵdirectiveInject(i1.ActionExplorerStateService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
372
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionToolbarComponent, selectors: [["mj-action-toolbar"]], inputs: { TotalCount: "TotalCount", FilteredCount: "FilteredCount" }, outputs: { NewActionClick: "NewActionClick", RefreshClick: "RefreshClick" }, standalone: false, decls: 39, vars: 29, consts: [[1, "action-toolbar"], [1, "toolbar-left"], [1, "search-container"], [3, "valueChange", "placeholder", "value"], ["kendoTextBoxPrefixTemplate", ""], ["kendoTextBoxSuffixTemplate", ""], [1, "dropdown-container", 3, "clickOutside"], ["kendoButton", "", 3, "click", "fillMode"], [1, "fa-solid", "fa-filter"], [1, "filter-badge"], [1, "dropdown-menu", "filters-menu"], [1, "active-filters"], [1, "toolbar-right"], [1, "results-count"], [1, "count"], [1, "of-total"], [1, "label"], [1, "dropdown-menu", "sort-menu"], [1, "view-toggle"], ["kendoButton", "", "title", "Card View", 3, "click", "fillMode", "themeColor"], [1, "fa-solid", "fa-grip"], ["kendoButton", "", "title", "List View", 3, "click", "fillMode", "themeColor"], [1, "fa-solid", "fa-list"], ["kendoButton", "", "title", "Compact View", 3, "click", "fillMode", "themeColor"], [1, "fa-solid", "fa-bars"], ["kendoButton", "", "title", "Refresh", 3, "click", "fillMode"], [1, "fa-solid", "fa-refresh"], ["kendoButton", "", 3, "click", "fillMode", "themeColor"], [1, "fa-solid", "fa-plus"], [1, "fa-solid", "fa-search"], ["kendoButton", "", 3, "click", "fillMode", "size"], [1, "fa-solid", "fa-times"], [1, "dropdown-section"], [1, "section-header"], ["kendoButton", "", 3, "fillMode", "size"], [1, "filter-options"], [1, "filter-option", 3, "selected"], [1, "dropdown-footer"], [1, "filter-option"], ["type", "checkbox", 3, "change", "checked"], [1, "status-dot"], [3, "removable", "size"], [3, "remove", "removable", "size"], [1, "sort-option", 3, "selected"], [1, "sort-option", 3, "click"], [1, "direction-icon", 3, "class"], [1, "direction-icon"]], template: function ActionToolbarComponent_Template(rf, ctx) { if (rf & 1) {
373
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "kendo-textbox", 3);
374
- i0.ɵɵlistener("valueChange", function ActionToolbarComponent_Template_kendo_textbox_valueChange_3_listener($event) { return ctx.onSearchInput($event); });
375
- i0.ɵɵtemplate(4, ActionToolbarComponent_ng_template_4_Template, 1, 0, "ng-template", 4);
376
- i0.ɵɵconditionalCreate(5, ActionToolbarComponent_Conditional_5_Template, 1, 0, null, 5);
356
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionToolbarComponent, selectors: [["mj-action-toolbar"]], inputs: { TotalCount: "TotalCount", FilteredCount: "FilteredCount" }, outputs: { NewActionClick: "NewActionClick", RefreshClick: "RefreshClick" }, standalone: false, decls: 40, vars: 20, consts: [[1, "action-toolbar"], [1, "toolbar-left"], [1, "search-container"], [1, "search-input-wrapper"], [1, "fa-solid", "fa-search", "search-icon"], ["type", "text", "placeholder", "Search actions...", 1, "mj-input", 3, "input", "value"], ["mjButton", "", "variant", "flat", "size", "sm", 1, "search-clear"], [1, "dropdown-container", 3, "clickOutside"], ["mjButton", "", "variant", "outline", 3, "click"], [1, "fa-solid", "fa-filter"], [1, "filter-badge"], [1, "dropdown-menu", "filters-menu"], [1, "active-filters"], [1, "toolbar-right"], [1, "results-count"], [1, "count"], [1, "of-total"], [1, "label"], [1, "dropdown-menu", "sort-menu"], [1, "view-toggle"], ["mjButton", "", "title", "Card View", 3, "click", "variant"], [1, "fa-solid", "fa-grip"], ["mjButton", "", "title", "List View", 3, "click", "variant"], [1, "fa-solid", "fa-list"], ["mjButton", "", "title", "Compact View", 3, "click", "variant"], [1, "fa-solid", "fa-bars"], ["mjButton", "", "variant", "flat", "title", "Refresh", 3, "click"], [1, "fa-solid", "fa-refresh"], ["mjButton", "", "variant", "primary", 3, "click"], [1, "fa-solid", "fa-plus"], ["mjButton", "", "variant", "flat", "size", "sm", 1, "search-clear", 3, "click"], [1, "fa-solid", "fa-times"], [1, "dropdown-section"], [1, "section-header"], ["mjButton", "", "variant", "flat", "size", "sm"], [1, "filter-options"], [1, "filter-option", 3, "selected"], [1, "dropdown-footer"], ["mjButton", "", "variant", "flat", "size", "sm", 3, "click"], [1, "filter-option"], ["type", "checkbox", 3, "change", "checked"], [1, "status-dot"], ["mjButton", "", "variant", "danger", 3, "click"], [1, "status-chip", "removable"], [1, "status-chip", "removable", 3, "click"], [1, "sort-option", 3, "selected"], [1, "sort-option", 3, "click"], [1, "direction-icon", 3, "class"], [1, "direction-icon"]], template: function ActionToolbarComponent_Template(rf, ctx) { if (rf & 1) {
357
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3);
358
+ i0.ɵɵelement(4, "i", 4);
359
+ i0.ɵɵelementStart(5, "input", 5);
360
+ i0.ɵɵlistener("input", function ActionToolbarComponent_Template_input_input_5_listener($event) { return ctx.onSearchInput($event.target.value); });
361
+ i0.ɵɵelementEnd();
362
+ i0.ɵɵconditionalCreate(6, ActionToolbarComponent_Conditional_6_Template, 2, 0, "button", 6);
377
363
  i0.ɵɵelementEnd()();
378
- i0.ɵɵelementStart(6, "div", 6);
379
- i0.ɵɵlistener("clickOutside", function ActionToolbarComponent_Template_div_clickOutside_6_listener() { return ctx.ShowFiltersDropdown = false; });
380
- i0.ɵɵelementStart(7, "button", 7);
381
- i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_7_listener() { return ctx.toggleFiltersDropdown(); });
382
- i0.ɵɵelement(8, "i", 8);
383
- i0.ɵɵtext(9, " Filters ");
384
- i0.ɵɵconditionalCreate(10, ActionToolbarComponent_Conditional_10_Template, 2, 1, "span", 9);
385
- i0.ɵɵelement(11, "i");
364
+ i0.ɵɵelementStart(7, "div", 7);
365
+ i0.ɵɵlistener("clickOutside", function ActionToolbarComponent_Template_div_clickOutside_7_listener() { return ctx.ShowFiltersDropdown = false; });
366
+ i0.ɵɵelementStart(8, "button", 8);
367
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_8_listener() { return ctx.toggleFiltersDropdown(); });
368
+ i0.ɵɵelement(9, "i", 9);
369
+ i0.ɵɵtext(10, " Filters ");
370
+ i0.ɵɵconditionalCreate(11, ActionToolbarComponent_Conditional_11_Template, 2, 1, "span", 10);
371
+ i0.ɵɵelement(12, "i");
386
372
  i0.ɵɵelementEnd();
387
- i0.ɵɵconditionalCreate(12, ActionToolbarComponent_Conditional_12_Template, 18, 3, "div", 10);
373
+ i0.ɵɵconditionalCreate(13, ActionToolbarComponent_Conditional_13_Template, 18, 3, "div", 11);
388
374
  i0.ɵɵelementEnd();
389
- i0.ɵɵconditionalCreate(13, ActionToolbarComponent_Conditional_13_Template, 5, 0, "div", 11);
375
+ i0.ɵɵconditionalCreate(14, ActionToolbarComponent_Conditional_14_Template, 5, 0, "div", 12);
390
376
  i0.ɵɵelementEnd();
391
- i0.ɵɵelementStart(14, "div", 12)(15, "div", 13)(16, "span", 14);
392
- i0.ɵɵtext(17);
377
+ i0.ɵɵelementStart(15, "div", 13)(16, "div", 14)(17, "span", 15);
378
+ i0.ɵɵtext(18);
393
379
  i0.ɵɵelementEnd();
394
- i0.ɵɵconditionalCreate(18, ActionToolbarComponent_Conditional_18_Template, 2, 1, "span", 15);
395
- i0.ɵɵelementStart(19, "span", 16);
396
- i0.ɵɵtext(20, "actions");
380
+ i0.ɵɵconditionalCreate(19, ActionToolbarComponent_Conditional_19_Template, 2, 1, "span", 16);
381
+ i0.ɵɵelementStart(20, "span", 17);
382
+ i0.ɵɵtext(21, "actions");
397
383
  i0.ɵɵelementEnd()();
398
- i0.ɵɵelementStart(21, "div", 6);
399
- i0.ɵɵlistener("clickOutside", function ActionToolbarComponent_Template_div_clickOutside_21_listener() { return ctx.ShowSortDropdown = false; });
400
- i0.ɵɵelementStart(22, "button", 7);
401
- i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_22_listener() { return ctx.toggleSortDropdown(); });
402
- i0.ɵɵelement(23, "i");
403
- i0.ɵɵtext(24);
404
- i0.ɵɵelement(25, "i");
384
+ i0.ɵɵelementStart(22, "div", 7);
385
+ i0.ɵɵlistener("clickOutside", function ActionToolbarComponent_Template_div_clickOutside_22_listener() { return ctx.ShowSortDropdown = false; });
386
+ i0.ɵɵelementStart(23, "button", 8);
387
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_23_listener() { return ctx.toggleSortDropdown(); });
388
+ i0.ɵɵelement(24, "i");
389
+ i0.ɵɵtext(25);
390
+ i0.ɵɵelement(26, "i");
405
391
  i0.ɵɵelementEnd();
406
- i0.ɵɵconditionalCreate(26, ActionToolbarComponent_Conditional_26_Template, 3, 0, "div", 17);
392
+ i0.ɵɵconditionalCreate(27, ActionToolbarComponent_Conditional_27_Template, 3, 0, "div", 18);
407
393
  i0.ɵɵelementEnd();
408
- i0.ɵɵelementStart(27, "div", 18)(28, "button", 19);
409
- i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_28_listener() { return ctx.setViewMode("card"); });
410
- i0.ɵɵelement(29, "i", 20);
394
+ i0.ɵɵelementStart(28, "div", 19)(29, "button", 20);
395
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_29_listener() { return ctx.setViewMode("card"); });
396
+ i0.ɵɵelement(30, "i", 21);
411
397
  i0.ɵɵelementEnd();
412
- i0.ɵɵelementStart(30, "button", 21);
413
- i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_30_listener() { return ctx.setViewMode("list"); });
414
- i0.ɵɵelement(31, "i", 22);
398
+ i0.ɵɵelementStart(31, "button", 22);
399
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_31_listener() { return ctx.setViewMode("list"); });
400
+ i0.ɵɵelement(32, "i", 23);
415
401
  i0.ɵɵelementEnd();
416
- i0.ɵɵelementStart(32, "button", 23);
417
- i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_32_listener() { return ctx.setViewMode("compact"); });
418
- i0.ɵɵelement(33, "i", 24);
402
+ i0.ɵɵelementStart(33, "button", 24);
403
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_33_listener() { return ctx.setViewMode("compact"); });
404
+ i0.ɵɵelement(34, "i", 25);
419
405
  i0.ɵɵelementEnd()();
420
- i0.ɵɵelementStart(34, "button", 25);
421
- i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_34_listener() { return ctx.onRefresh(); });
422
- i0.ɵɵelement(35, "i", 26);
406
+ i0.ɵɵelementStart(35, "button", 26);
407
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_35_listener() { return ctx.onRefresh(); });
408
+ i0.ɵɵelement(36, "i", 27);
423
409
  i0.ɵɵelementEnd();
424
- i0.ɵɵelementStart(36, "button", 27);
425
- i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_36_listener() { return ctx.onNewAction(); });
426
- i0.ɵɵelement(37, "i", 28);
427
- i0.ɵɵtext(38, " New Action ");
410
+ i0.ɵɵelementStart(37, "button", 28);
411
+ i0.ɵɵlistener("click", function ActionToolbarComponent_Template_button_click_37_listener() { return ctx.onNewAction(); });
412
+ i0.ɵɵelement(38, "i", 29);
413
+ i0.ɵɵtext(39, " New Action ");
428
414
  i0.ɵɵelementEnd()()();
429
415
  } if (rf & 2) {
430
- i0.ɵɵadvance(3);
431
- i0.ɵɵproperty("placeholder", "Search actions...")("value", ctx.Filters.searchTerm);
432
- i0.ɵɵadvance(2);
433
- i0.ɵɵconditional(ctx.Filters.searchTerm ? 5 : -1);
416
+ i0.ɵɵadvance(5);
417
+ i0.ɵɵproperty("value", ctx.Filters.searchTerm);
418
+ i0.ɵɵadvance();
419
+ i0.ɵɵconditional(ctx.Filters.searchTerm ? 6 : -1);
434
420
  i0.ɵɵadvance(2);
435
421
  i0.ɵɵclassProp("active", ctx.hasActiveFilters());
436
- i0.ɵɵproperty("fillMode", "outline");
437
422
  i0.ɵɵadvance(3);
438
- i0.ɵɵconditional(ctx.getActiveFilterCount() > 0 ? 10 : -1);
423
+ i0.ɵɵconditional(ctx.getActiveFilterCount() > 0 ? 11 : -1);
439
424
  i0.ɵɵadvance();
440
425
  i0.ɵɵclassMap(ctx.ShowFiltersDropdown ? "fa-solid fa-chevron-up" : "fa-solid fa-chevron-down");
441
426
  i0.ɵɵadvance();
442
- i0.ɵɵconditional(ctx.ShowFiltersDropdown ? 12 : -1);
427
+ i0.ɵɵconditional(ctx.ShowFiltersDropdown ? 13 : -1);
443
428
  i0.ɵɵadvance();
444
- i0.ɵɵconditional(ctx.hasActiveFilters() ? 13 : -1);
429
+ i0.ɵɵconditional(ctx.hasActiveFilters() ? 14 : -1);
445
430
  i0.ɵɵadvance(4);
446
431
  i0.ɵɵtextInterpolate(ctx.FilteredCount);
447
432
  i0.ɵɵadvance();
448
- i0.ɵɵconditional(ctx.FilteredCount !== ctx.TotalCount ? 18 : -1);
449
- i0.ɵɵadvance(4);
450
- i0.ɵɵproperty("fillMode", "outline");
451
- i0.ɵɵadvance();
433
+ i0.ɵɵconditional(ctx.FilteredCount !== ctx.TotalCount ? 19 : -1);
434
+ i0.ɵɵadvance(5);
452
435
  i0.ɵɵclassMap(ctx.getSortIcon());
453
436
  i0.ɵɵadvance();
454
437
  i0.ɵɵtextInterpolate1(" ", ctx.getSortLabel(), " ");
455
438
  i0.ɵɵadvance();
456
439
  i0.ɵɵclassMap(ctx.ShowSortDropdown ? "fa-solid fa-chevron-up" : "fa-solid fa-chevron-down");
457
440
  i0.ɵɵadvance();
458
- i0.ɵɵconditional(ctx.ShowSortDropdown ? 26 : -1);
459
- i0.ɵɵadvance(2);
460
- i0.ɵɵproperty("fillMode", ctx.ViewMode === "card" ? "solid" : "outline")("themeColor", ctx.ViewMode === "card" ? "primary" : "base");
461
- i0.ɵɵadvance(2);
462
- i0.ɵɵproperty("fillMode", ctx.ViewMode === "list" ? "solid" : "outline")("themeColor", ctx.ViewMode === "list" ? "primary" : "base");
441
+ i0.ɵɵconditional(ctx.ShowSortDropdown ? 27 : -1);
463
442
  i0.ɵɵadvance(2);
464
- i0.ɵɵproperty("fillMode", ctx.ViewMode === "compact" ? "solid" : "outline")("themeColor", ctx.ViewMode === "compact" ? "primary" : "base");
443
+ i0.ɵɵproperty("variant", ctx.ViewMode === "card" ? "primary" : "outline");
465
444
  i0.ɵɵadvance(2);
466
- i0.ɵɵproperty("fillMode", "flat");
445
+ i0.ɵɵproperty("variant", ctx.ViewMode === "list" ? "primary" : "outline");
467
446
  i0.ɵɵadvance(2);
468
- i0.ɵɵproperty("fillMode", "solid")("themeColor", "primary");
469
- } }, dependencies: [i2.ButtonComponent, i2.ChipComponent, i3.TextBoxComponent, i3.TextBoxSuffixTemplateDirective, i3.TextBoxPrefixTemplateDirective], styles: [".action-toolbar[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 20px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n gap: 16px;\n flex-wrap: wrap;\n}\n\n.toolbar-left[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n min-width: 0;\n flex-wrap: wrap;\n}\n\n.toolbar-right[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n\n\n.search-container[_ngcontent-%COMP%] {\n min-width: 200px;\n max-width: 320px;\n flex: 1;\n}\n\n.search-container[_ngcontent-%COMP%] kendo-textbox[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n.search-container[_ngcontent-%COMP%] i.fa-search[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-muted);\n}\n\n\n\n.dropdown-container[_ngcontent-%COMP%] {\n position: relative;\n}\n\n.dropdown-container[_ngcontent-%COMP%] > button[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.dropdown-container[_ngcontent-%COMP%] > button.active[_ngcontent-%COMP%] {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.dropdown-container[_ngcontent-%COMP%] > button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]:last-child {\n font-size: 10px;\n margin-left: 4px;\n}\n\n.filter-badge[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n font-size: 10px;\n font-weight: 600;\n padding: 2px 6px;\n border-radius: 10px;\n min-width: 18px;\n text-align: center;\n}\n\n\n\n.dropdown-menu[_ngcontent-%COMP%] {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);\n z-index: 100;\n min-width: 220px;\n padding: 8px 0;\n}\n\n.dropdown-menu.sort-menu[_ngcontent-%COMP%] {\n right: 0;\n left: auto;\n}\n\n\n\n.dropdown-section[_ngcontent-%COMP%] {\n padding: 8px 12px;\n}\n\n.dropdown-section[_ngcontent-%COMP%]:not(:last-child) {\n border-bottom: 1px solid var(--mj-border-default);\n}\n\n.section-header[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 8px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n color: var(--mj-text-muted);\n letter-spacing: 0.5px;\n}\n\n.section-header[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n font-size: 11px;\n padding: 2px 6px;\n}\n\n.filter-options[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.filter-option[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 8px;\n border-radius: 4px;\n cursor: pointer;\n transition: background 0.15s ease;\n font-size: 13px;\n}\n\n.filter-option[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.filter-option.selected[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.filter-option[_ngcontent-%COMP%] input[type=\"checkbox\"][_ngcontent-%COMP%] {\n display: none;\n}\n\n.filter-option[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 13px;\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.filter-option.selected[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary);\n}\n\n.status-dot[_ngcontent-%COMP%] {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.status-dot[data-status=\"Active\"][_ngcontent-%COMP%] {\n background: var(--mj-status-success);\n}\n\n.status-dot[data-status=\"Pending\"][_ngcontent-%COMP%] {\n background: var(--mj-status-warning);\n}\n\n.status-dot[data-status=\"Disabled\"][_ngcontent-%COMP%] {\n background: var(--mj-status-error);\n}\n\n.dropdown-footer[_ngcontent-%COMP%] {\n padding: 8px 12px;\n border-top: 1px solid var(--mj-border-default);\n}\n\n.dropdown-footer[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.sort-option[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 8px 12px;\n border: none;\n background: transparent;\n cursor: pointer;\n font-size: 13px;\n text-align: left;\n transition: background 0.15s ease;\n}\n\n.sort-option[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.sort-option.selected[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n}\n\n.sort-option[_ngcontent-%COMP%] i[_ngcontent-%COMP%]:first-child {\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.sort-option.selected[_ngcontent-%COMP%] i[_ngcontent-%COMP%]:first-child {\n color: var(--mj-brand-primary);\n}\n\n.sort-option[_ngcontent-%COMP%] .direction-icon[_ngcontent-%COMP%] {\n margin-left: auto;\n font-size: 11px;\n}\n\n\n\n.active-filters[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.active-filters[_ngcontent-%COMP%] kendo-chip[_ngcontent-%COMP%] {\n font-size: 12px;\n}\n\n\n\n.results-count[_ngcontent-%COMP%] {\n display: flex;\n align-items: baseline;\n gap: 4px;\n font-size: 13px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n}\n\n.results-count[_ngcontent-%COMP%] .count[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--mj-text-primary);\n font-size: 14px;\n}\n\n.results-count[_ngcontent-%COMP%] .of-total[_ngcontent-%COMP%] {\n opacity: 0.7;\n}\n\n\n\n.view-toggle[_ngcontent-%COMP%] {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 4px;\n overflow: hidden;\n}\n\n.view-toggle[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n border-radius: 0;\n border: none;\n min-width: 36px;\n}\n\n.view-toggle[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:not(:last-child) {\n border-right: 1px solid var(--mj-border-default);\n}\n\n\n\n@media (max-width: 1024px) {\n .action-toolbar[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: stretch;\n }\n\n .toolbar-left[_ngcontent-%COMP%], \n .toolbar-right[_ngcontent-%COMP%] {\n width: 100%;\n justify-content: flex-start;\n }\n\n .search-container[_ngcontent-%COMP%] {\n max-width: none;\n flex: 1;\n }\n}\n\n@media (max-width: 640px) {\n .toolbar-right[_ngcontent-%COMP%] {\n flex-wrap: wrap;\n }\n\n .results-count[_ngcontent-%COMP%] {\n order: -1;\n width: 100%;\n }\n}"], changeDetection: 0 });
447
+ i0.ɵɵproperty("variant", ctx.ViewMode === "compact" ? "primary" : "outline");
448
+ } }, dependencies: [i2.MJButtonDirective], styles: [".action-toolbar[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 20px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n gap: 16px;\n flex-wrap: wrap;\n}\n\n.toolbar-left[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n min-width: 0;\n flex-wrap: wrap;\n}\n\n.toolbar-right[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n\n\n.search-container[_ngcontent-%COMP%] {\n min-width: 200px;\n max-width: 320px;\n flex: 1;\n}\n\n.search-container[_ngcontent-%COMP%] i.fa-search[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-muted);\n}\n\n\n\n.dropdown-container[_ngcontent-%COMP%] {\n position: relative;\n}\n\n.dropdown-container[_ngcontent-%COMP%] > button[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.dropdown-container[_ngcontent-%COMP%] > button.active[_ngcontent-%COMP%] {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.dropdown-container[_ngcontent-%COMP%] > button[_ngcontent-%COMP%] i[_ngcontent-%COMP%]:last-child {\n font-size: 10px;\n margin-left: 4px;\n}\n\n.filter-badge[_ngcontent-%COMP%] {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n font-size: 10px;\n font-weight: 600;\n padding: 2px 6px;\n border-radius: 10px;\n min-width: 18px;\n text-align: center;\n}\n\n\n\n.dropdown-menu[_ngcontent-%COMP%] {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);\n z-index: 100;\n min-width: 220px;\n padding: 8px 0;\n}\n\n.dropdown-menu.sort-menu[_ngcontent-%COMP%] {\n right: 0;\n left: auto;\n}\n\n\n\n.dropdown-section[_ngcontent-%COMP%] {\n padding: 8px 12px;\n}\n\n.dropdown-section[_ngcontent-%COMP%]:not(:last-child) {\n border-bottom: 1px solid var(--mj-border-default);\n}\n\n.section-header[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 8px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n color: var(--mj-text-muted);\n letter-spacing: 0.5px;\n}\n\n.section-header[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n font-size: 11px;\n padding: 2px 6px;\n}\n\n.filter-options[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.filter-option[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 8px;\n border-radius: 4px;\n cursor: pointer;\n transition: background 0.15s ease;\n font-size: 13px;\n}\n\n.filter-option[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.filter-option.selected[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.filter-option[_ngcontent-%COMP%] input[type=\"checkbox\"][_ngcontent-%COMP%] {\n display: none;\n}\n\n.filter-option[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 13px;\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.filter-option.selected[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary);\n}\n\n.status-dot[_ngcontent-%COMP%] {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.status-dot[data-status=\"Active\"][_ngcontent-%COMP%] {\n background: var(--mj-status-success);\n}\n\n.status-dot[data-status=\"Pending\"][_ngcontent-%COMP%] {\n background: var(--mj-status-warning);\n}\n\n.status-dot[data-status=\"Disabled\"][_ngcontent-%COMP%] {\n background: var(--mj-status-error);\n}\n\n.dropdown-footer[_ngcontent-%COMP%] {\n padding: 8px 12px;\n border-top: 1px solid var(--mj-border-default);\n}\n\n.dropdown-footer[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n width: 100%;\n}\n\n\n\n.sort-option[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 8px 12px;\n border: none;\n background: transparent;\n cursor: pointer;\n font-size: 13px;\n text-align: left;\n transition: background 0.15s ease;\n}\n\n.sort-option[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.sort-option.selected[_ngcontent-%COMP%] {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n}\n\n.sort-option[_ngcontent-%COMP%] i[_ngcontent-%COMP%]:first-child {\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.sort-option.selected[_ngcontent-%COMP%] i[_ngcontent-%COMP%]:first-child {\n color: var(--mj-brand-primary);\n}\n\n.sort-option[_ngcontent-%COMP%] .direction-icon[_ngcontent-%COMP%] {\n margin-left: auto;\n font-size: 11px;\n}\n\n\n\n.active-filters[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n\n\n.results-count[_ngcontent-%COMP%] {\n display: flex;\n align-items: baseline;\n gap: 4px;\n font-size: 13px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n}\n\n.results-count[_ngcontent-%COMP%] .count[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--mj-text-primary);\n font-size: 14px;\n}\n\n.results-count[_ngcontent-%COMP%] .of-total[_ngcontent-%COMP%] {\n opacity: 0.7;\n}\n\n\n\n.view-toggle[_ngcontent-%COMP%] {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 4px;\n overflow: hidden;\n}\n\n.view-toggle[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n border-radius: 0;\n border: none;\n min-width: 36px;\n}\n\n.view-toggle[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:not(:last-child) {\n border-right: 1px solid var(--mj-border-default);\n}\n\n\n\n@media (max-width: 1024px) {\n .action-toolbar[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: stretch;\n }\n\n .toolbar-left[_ngcontent-%COMP%], \n .toolbar-right[_ngcontent-%COMP%] {\n width: 100%;\n justify-content: flex-start;\n }\n\n .search-container[_ngcontent-%COMP%] {\n max-width: none;\n flex: 1;\n }\n}\n\n@media (max-width: 640px) {\n .toolbar-right[_ngcontent-%COMP%] {\n flex-wrap: wrap;\n }\n\n .results-count[_ngcontent-%COMP%] {\n order: -1;\n width: 100%;\n }\n}"], changeDetection: 0 });
470
449
  }
471
450
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionToolbarComponent, [{
472
451
  type: Component,
473
- args: [{ standalone: false, selector: 'mj-action-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"action-toolbar\">\n <div class=\"toolbar-left\">\n <!-- Search -->\n <div class=\"search-container\">\n <kendo-textbox\n [placeholder]=\"'Search actions...'\"\n [value]=\"Filters.searchTerm\"\n (valueChange)=\"onSearchInput($event)\">\n <ng-template kendoTextBoxPrefixTemplate>\n <i class=\"fa-solid fa-search\"></i>\n </ng-template>\n @if (Filters.searchTerm) {\n <ng-template kendoTextBoxSuffixTemplate>\n <button kendoButton\n [fillMode]=\"'flat'\"\n [size]=\"'small'\"\n (click)=\"clearSearch()\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n </ng-template>\n }\n </kendo-textbox>\n </div>\n\n <!-- Filters Dropdown -->\n <div class=\"dropdown-container\" (clickOutside)=\"ShowFiltersDropdown = false\">\n <button kendoButton\n [fillMode]=\"'outline'\"\n [class.active]=\"hasActiveFilters()\"\n (click)=\"toggleFiltersDropdown()\">\n <i class=\"fa-solid fa-filter\"></i>\n Filters\n @if (getActiveFilterCount() > 0) {\n <span class=\"filter-badge\">{{ getActiveFilterCount() }}</span>\n }\n <i [class]=\"ShowFiltersDropdown ? 'fa-solid fa-chevron-up' : 'fa-solid fa-chevron-down'\"></i>\n </button>\n\n @if (ShowFiltersDropdown) {\n <div class=\"dropdown-menu filters-menu\">\n <div class=\"dropdown-section\">\n <div class=\"section-header\">\n <span>Status</span>\n @if (Filters.statuses.length > 0) {\n <button kendoButton\n [fillMode]=\"'flat'\"\n [size]=\"'small'\"\n (click)=\"StateService.setStatusFilter([])\">\n Clear\n </button>\n }\n </div>\n <div class=\"filter-options\">\n @for (status of StatusOptions; track status.value) {\n <label class=\"filter-option\" [class.selected]=\"isStatusSelected(status.value)\">\n <input type=\"checkbox\"\n [checked]=\"isStatusSelected(status.value)\"\n (change)=\"toggleStatus(status.value)\">\n <span class=\"status-dot\" [attr.data-status]=\"status.value\"></span>\n {{ status.label }}\n </label>\n }\n </div>\n </div>\n\n <div class=\"dropdown-section\">\n <div class=\"section-header\">\n <span>Type</span>\n @if (Filters.types.length > 0) {\n <button kendoButton\n [fillMode]=\"'flat'\"\n [size]=\"'small'\"\n (click)=\"StateService.setTypeFilter([])\">\n Clear\n </button>\n }\n </div>\n <div class=\"filter-options\">\n @for (type of TypeOptions; track type.value) {\n <label class=\"filter-option\" [class.selected]=\"isTypeSelected(type.value)\">\n <input type=\"checkbox\"\n [checked]=\"isTypeSelected(type.value)\"\n (change)=\"toggleType(type.value)\">\n <i [class]=\"type.icon\"></i>\n {{ type.label }}\n </label>\n }\n </div>\n </div>\n\n @if (hasActiveFilters()) {\n <div class=\"dropdown-footer\">\n <button kendoButton\n [fillMode]=\"'flat'\"\n [themeColor]=\"'error'\"\n (click)=\"clearFilters()\">\n <i class=\"fa-solid fa-times\"></i>\n Clear All Filters\n </button>\n </div>\n }\n </div>\n }\n </div>\n\n <!-- Active Filter Chips -->\n @if (hasActiveFilters()) {\n <div class=\"active-filters\">\n @for (status of Filters.statuses; track status) {\n <kendo-chip\n [removable]=\"true\"\n [size]=\"'small'\"\n (remove)=\"toggleStatus(status)\">\n Status: {{ status }}\n </kendo-chip>\n }\n @for (type of Filters.types; track type) {\n <kendo-chip\n [removable]=\"true\"\n [size]=\"'small'\"\n (remove)=\"toggleType(type)\">\n Type: {{ type === 'Generated' ? 'AI Generated' : type }}\n </kendo-chip>\n }\n </div>\n }\n </div>\n\n <div class=\"toolbar-right\">\n <!-- Results Count -->\n <div class=\"results-count\">\n <span class=\"count\">{{ FilteredCount }}</span>\n @if (FilteredCount !== TotalCount) {\n <span class=\"of-total\">of {{ TotalCount }}</span>\n }\n <span class=\"label\">actions</span>\n </div>\n\n <!-- Sort Dropdown -->\n <div class=\"dropdown-container\" (clickOutside)=\"ShowSortDropdown = false\">\n <button kendoButton\n [fillMode]=\"'outline'\"\n (click)=\"toggleSortDropdown()\">\n <i [class]=\"getSortIcon()\"></i>\n {{ getSortLabel() }}\n <i [class]=\"ShowSortDropdown ? 'fa-solid fa-chevron-up' : 'fa-solid fa-chevron-down'\"></i>\n </button>\n\n @if (ShowSortDropdown) {\n <div class=\"dropdown-menu sort-menu\">\n @for (option of SortOptions; track option.field) {\n <button class=\"sort-option\"\n [class.selected]=\"SortField === option.field\"\n (click)=\"setSortField(option.field)\">\n <i [class]=\"option.icon\"></i>\n {{ option.label }}\n @if (SortField === option.field) {\n <i [class]=\"SortDirection === 'asc' ? 'fa-solid fa-arrow-up' : 'fa-solid fa-arrow-down'\" class=\"direction-icon\"></i>\n }\n </button>\n }\n </div>\n }\n </div>\n\n <!-- View Mode Toggle -->\n <div class=\"view-toggle\">\n <button kendoButton\n [fillMode]=\"ViewMode === 'card' ? 'solid' : 'outline'\"\n [themeColor]=\"ViewMode === 'card' ? 'primary' : 'base'\"\n title=\"Card View\"\n (click)=\"setViewMode('card')\">\n <i class=\"fa-solid fa-grip\"></i>\n </button>\n <button kendoButton\n [fillMode]=\"ViewMode === 'list' ? 'solid' : 'outline'\"\n [themeColor]=\"ViewMode === 'list' ? 'primary' : 'base'\"\n title=\"List View\"\n (click)=\"setViewMode('list')\">\n <i class=\"fa-solid fa-list\"></i>\n </button>\n <button kendoButton\n [fillMode]=\"ViewMode === 'compact' ? 'solid' : 'outline'\"\n [themeColor]=\"ViewMode === 'compact' ? 'primary' : 'base'\"\n title=\"Compact View\"\n (click)=\"setViewMode('compact')\">\n <i class=\"fa-solid fa-bars\"></i>\n </button>\n </div>\n\n <!-- Refresh Button -->\n <button kendoButton\n [fillMode]=\"'flat'\"\n title=\"Refresh\"\n (click)=\"onRefresh()\">\n <i class=\"fa-solid fa-refresh\"></i>\n </button>\n\n <!-- New Action Button -->\n <button kendoButton\n [fillMode]=\"'solid'\"\n [themeColor]=\"'primary'\"\n (click)=\"onNewAction()\">\n <i class=\"fa-solid fa-plus\"></i>\n New Action\n </button>\n </div>\n</div>\n", styles: [".action-toolbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 20px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n gap: 16px;\n flex-wrap: wrap;\n}\n\n.toolbar-left {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n min-width: 0;\n flex-wrap: wrap;\n}\n\n.toolbar-right {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n/* Search */\n.search-container {\n min-width: 200px;\n max-width: 320px;\n flex: 1;\n}\n\n.search-container kendo-textbox {\n width: 100%;\n}\n\n.search-container i.fa-search {\n font-size: 13px;\n color: var(--mj-text-muted);\n}\n\n/* Dropdown Container */\n.dropdown-container {\n position: relative;\n}\n\n.dropdown-container > button {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.dropdown-container > button.active {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.dropdown-container > button i:last-child {\n font-size: 10px;\n margin-left: 4px;\n}\n\n.filter-badge {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n font-size: 10px;\n font-weight: 600;\n padding: 2px 6px;\n border-radius: 10px;\n min-width: 18px;\n text-align: center;\n}\n\n/* Dropdown Menu */\n.dropdown-menu {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);\n z-index: 100;\n min-width: 220px;\n padding: 8px 0;\n}\n\n.dropdown-menu.sort-menu {\n right: 0;\n left: auto;\n}\n\n/* Dropdown Section */\n.dropdown-section {\n padding: 8px 12px;\n}\n\n.dropdown-section:not(:last-child) {\n border-bottom: 1px solid var(--mj-border-default);\n}\n\n.section-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 8px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n color: var(--mj-text-muted);\n letter-spacing: 0.5px;\n}\n\n.section-header button {\n font-size: 11px;\n padding: 2px 6px;\n}\n\n.filter-options {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.filter-option {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 8px;\n border-radius: 4px;\n cursor: pointer;\n transition: background 0.15s ease;\n font-size: 13px;\n}\n\n.filter-option:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.filter-option.selected {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.filter-option input[type=\"checkbox\"] {\n display: none;\n}\n\n.filter-option i {\n font-size: 13px;\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.filter-option.selected i {\n color: var(--mj-brand-primary);\n}\n\n.status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.status-dot[data-status=\"Active\"] {\n background: var(--mj-status-success);\n}\n\n.status-dot[data-status=\"Pending\"] {\n background: var(--mj-status-warning);\n}\n\n.status-dot[data-status=\"Disabled\"] {\n background: var(--mj-status-error);\n}\n\n.dropdown-footer {\n padding: 8px 12px;\n border-top: 1px solid var(--mj-border-default);\n}\n\n.dropdown-footer button {\n width: 100%;\n}\n\n/* Sort Options */\n.sort-option {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 8px 12px;\n border: none;\n background: transparent;\n cursor: pointer;\n font-size: 13px;\n text-align: left;\n transition: background 0.15s ease;\n}\n\n.sort-option:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.sort-option.selected {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n}\n\n.sort-option i:first-child {\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.sort-option.selected i:first-child {\n color: var(--mj-brand-primary);\n}\n\n.sort-option .direction-icon {\n margin-left: auto;\n font-size: 11px;\n}\n\n/* Active Filters */\n.active-filters {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.active-filters kendo-chip {\n font-size: 12px;\n}\n\n/* Results Count */\n.results-count {\n display: flex;\n align-items: baseline;\n gap: 4px;\n font-size: 13px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n}\n\n.results-count .count {\n font-weight: 600;\n color: var(--mj-text-primary);\n font-size: 14px;\n}\n\n.results-count .of-total {\n opacity: 0.7;\n}\n\n/* View Toggle */\n.view-toggle {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 4px;\n overflow: hidden;\n}\n\n.view-toggle button {\n border-radius: 0;\n border: none;\n min-width: 36px;\n}\n\n.view-toggle button:not(:last-child) {\n border-right: 1px solid var(--mj-border-default);\n}\n\n/* Responsive */\n@media (max-width: 1024px) {\n .action-toolbar {\n flex-direction: column;\n align-items: stretch;\n }\n\n .toolbar-left,\n .toolbar-right {\n width: 100%;\n justify-content: flex-start;\n }\n\n .search-container {\n max-width: none;\n flex: 1;\n }\n}\n\n@media (max-width: 640px) {\n .toolbar-right {\n flex-wrap: wrap;\n }\n\n .results-count {\n order: -1;\n width: 100%;\n }\n}\n"] }]
452
+ args: [{ standalone: false, selector: 'mj-action-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"action-toolbar\">\n <div class=\"toolbar-left\">\n <!-- Search -->\n <div class=\"search-container\">\n <div class=\"search-input-wrapper\">\n <i class=\"fa-solid fa-search search-icon\"></i>\n <input type=\"text\" class=\"mj-input\"\n placeholder=\"Search actions...\"\n [value]=\"Filters.searchTerm\"\n (input)=\"onSearchInput($any($event.target).value)\" />\n @if (Filters.searchTerm) {\n <button mjButton variant=\"flat\" size=\"sm\" class=\"search-clear\"\n (click)=\"clearSearch()\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n }\n </div>\n </div>\n\n <!-- Filters Dropdown -->\n <div class=\"dropdown-container\" (clickOutside)=\"ShowFiltersDropdown = false\">\n <button mjButton\n variant=\"outline\"\n [class.active]=\"hasActiveFilters()\"\n (click)=\"toggleFiltersDropdown()\">\n <i class=\"fa-solid fa-filter\"></i>\n Filters\n @if (getActiveFilterCount() > 0) {\n <span class=\"filter-badge\">{{ getActiveFilterCount() }}</span>\n }\n <i [class]=\"ShowFiltersDropdown ? 'fa-solid fa-chevron-up' : 'fa-solid fa-chevron-down'\"></i>\n </button>\n\n @if (ShowFiltersDropdown) {\n <div class=\"dropdown-menu filters-menu\">\n <div class=\"dropdown-section\">\n <div class=\"section-header\">\n <span>Status</span>\n @if (Filters.statuses.length > 0) {\n <button mjButton\n variant=\"flat\"\n size=\"sm\"\n (click)=\"StateService.setStatusFilter([])\">\n Clear\n </button>\n }\n </div>\n <div class=\"filter-options\">\n @for (status of StatusOptions; track status.value) {\n <label class=\"filter-option\" [class.selected]=\"isStatusSelected(status.value)\">\n <input type=\"checkbox\"\n [checked]=\"isStatusSelected(status.value)\"\n (change)=\"toggleStatus(status.value)\">\n <span class=\"status-dot\" [attr.data-status]=\"status.value\"></span>\n {{ status.label }}\n </label>\n }\n </div>\n </div>\n\n <div class=\"dropdown-section\">\n <div class=\"section-header\">\n <span>Type</span>\n @if (Filters.types.length > 0) {\n <button mjButton\n variant=\"flat\"\n size=\"sm\"\n (click)=\"StateService.setTypeFilter([])\">\n Clear\n </button>\n }\n </div>\n <div class=\"filter-options\">\n @for (type of TypeOptions; track type.value) {\n <label class=\"filter-option\" [class.selected]=\"isTypeSelected(type.value)\">\n <input type=\"checkbox\"\n [checked]=\"isTypeSelected(type.value)\"\n (change)=\"toggleType(type.value)\">\n <i [class]=\"type.icon\"></i>\n {{ type.label }}\n </label>\n }\n </div>\n </div>\n\n @if (hasActiveFilters()) {\n <div class=\"dropdown-footer\">\n <button mjButton\n variant=\"danger\"\n (click)=\"clearFilters()\">\n <i class=\"fa-solid fa-times\"></i>\n Clear All Filters\n </button>\n </div>\n }\n </div>\n }\n </div>\n\n <!-- Active Filter Chips -->\n @if (hasActiveFilters()) {\n <div class=\"active-filters\">\n @for (status of Filters.statuses; track status) {\n <span class=\"status-chip removable\" (click)=\"toggleStatus(status)\">\n Status: {{ status }} <i class=\"fa-solid fa-times\"></i>\n </span>\n }\n @for (type of Filters.types; track type) {\n <span class=\"status-chip removable\" (click)=\"toggleType(type)\">\n Type: {{ type === 'Generated' ? 'AI Generated' : type }} <i class=\"fa-solid fa-times\"></i>\n </span>\n }\n </div>\n }\n </div>\n\n <div class=\"toolbar-right\">\n <!-- Results Count -->\n <div class=\"results-count\">\n <span class=\"count\">{{ FilteredCount }}</span>\n @if (FilteredCount !== TotalCount) {\n <span class=\"of-total\">of {{ TotalCount }}</span>\n }\n <span class=\"label\">actions</span>\n </div>\n\n <!-- Sort Dropdown -->\n <div class=\"dropdown-container\" (clickOutside)=\"ShowSortDropdown = false\">\n <button mjButton\n variant=\"outline\"\n (click)=\"toggleSortDropdown()\">\n <i [class]=\"getSortIcon()\"></i>\n {{ getSortLabel() }}\n <i [class]=\"ShowSortDropdown ? 'fa-solid fa-chevron-up' : 'fa-solid fa-chevron-down'\"></i>\n </button>\n\n @if (ShowSortDropdown) {\n <div class=\"dropdown-menu sort-menu\">\n @for (option of SortOptions; track option.field) {\n <button class=\"sort-option\"\n [class.selected]=\"SortField === option.field\"\n (click)=\"setSortField(option.field)\">\n <i [class]=\"option.icon\"></i>\n {{ option.label }}\n @if (SortField === option.field) {\n <i [class]=\"SortDirection === 'asc' ? 'fa-solid fa-arrow-up' : 'fa-solid fa-arrow-down'\" class=\"direction-icon\"></i>\n }\n </button>\n }\n </div>\n }\n </div>\n\n <!-- View Mode Toggle -->\n <div class=\"view-toggle\">\n <button mjButton\n [variant]=\"ViewMode === 'card' ? 'primary' : 'outline'\"\n title=\"Card View\"\n (click)=\"setViewMode('card')\">\n <i class=\"fa-solid fa-grip\"></i>\n </button>\n <button mjButton\n [variant]=\"ViewMode === 'list' ? 'primary' : 'outline'\"\n title=\"List View\"\n (click)=\"setViewMode('list')\">\n <i class=\"fa-solid fa-list\"></i>\n </button>\n <button mjButton\n [variant]=\"ViewMode === 'compact' ? 'primary' : 'outline'\"\n title=\"Compact View\"\n (click)=\"setViewMode('compact')\">\n <i class=\"fa-solid fa-bars\"></i>\n </button>\n </div>\n\n <!-- Refresh Button -->\n <button mjButton\n variant=\"flat\"\n title=\"Refresh\"\n (click)=\"onRefresh()\">\n <i class=\"fa-solid fa-refresh\"></i>\n </button>\n\n <!-- New Action Button -->\n <button mjButton\n variant=\"primary\"\n (click)=\"onNewAction()\">\n <i class=\"fa-solid fa-plus\"></i>\n New Action\n </button>\n </div>\n</div>\n", styles: [".action-toolbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 20px;\n background: var(--mj-bg-surface-card);\n border-bottom: 1px solid var(--mj-border-default);\n gap: 16px;\n flex-wrap: wrap;\n}\n\n.toolbar-left {\n display: flex;\n align-items: center;\n gap: 12px;\n flex: 1;\n min-width: 0;\n flex-wrap: wrap;\n}\n\n.toolbar-right {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-shrink: 0;\n}\n\n/* Search */\n.search-container {\n min-width: 200px;\n max-width: 320px;\n flex: 1;\n}\n\n.search-container i.fa-search {\n font-size: 13px;\n color: var(--mj-text-muted);\n}\n\n/* Dropdown Container */\n.dropdown-container {\n position: relative;\n}\n\n.dropdown-container > button {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.dropdown-container > button.active {\n border-color: var(--mj-brand-primary);\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.dropdown-container > button i:last-child {\n font-size: 10px;\n margin-left: 4px;\n}\n\n.filter-badge {\n background: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n font-size: 10px;\n font-weight: 600;\n padding: 2px 6px;\n border-radius: 10px;\n min-width: 18px;\n text-align: center;\n}\n\n/* Dropdown Menu */\n.dropdown-menu {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);\n z-index: 100;\n min-width: 220px;\n padding: 8px 0;\n}\n\n.dropdown-menu.sort-menu {\n right: 0;\n left: auto;\n}\n\n/* Dropdown Section */\n.dropdown-section {\n padding: 8px 12px;\n}\n\n.dropdown-section:not(:last-child) {\n border-bottom: 1px solid var(--mj-border-default);\n}\n\n.section-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 8px;\n font-size: 11px;\n font-weight: 600;\n text-transform: uppercase;\n color: var(--mj-text-muted);\n letter-spacing: 0.5px;\n}\n\n.section-header button {\n font-size: 11px;\n padding: 2px 6px;\n}\n\n.filter-options {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.filter-option {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 8px;\n border-radius: 4px;\n cursor: pointer;\n transition: background 0.15s ease;\n font-size: 13px;\n}\n\n.filter-option:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.filter-option.selected {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n}\n\n.filter-option input[type=\"checkbox\"] {\n display: none;\n}\n\n.filter-option i {\n font-size: 13px;\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.filter-option.selected i {\n color: var(--mj-brand-primary);\n}\n\n.status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.status-dot[data-status=\"Active\"] {\n background: var(--mj-status-success);\n}\n\n.status-dot[data-status=\"Pending\"] {\n background: var(--mj-status-warning);\n}\n\n.status-dot[data-status=\"Disabled\"] {\n background: var(--mj-status-error);\n}\n\n.dropdown-footer {\n padding: 8px 12px;\n border-top: 1px solid var(--mj-border-default);\n}\n\n.dropdown-footer button {\n width: 100%;\n}\n\n/* Sort Options */\n.sort-option {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 8px 12px;\n border: none;\n background: transparent;\n cursor: pointer;\n font-size: 13px;\n text-align: left;\n transition: background 0.15s ease;\n}\n\n.sort-option:hover {\n background: var(--mj-bg-surface-hover);\n}\n\n.sort-option.selected {\n background: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n}\n\n.sort-option i:first-child {\n width: 18px;\n color: var(--mj-text-muted);\n}\n\n.sort-option.selected i:first-child {\n color: var(--mj-brand-primary);\n}\n\n.sort-option .direction-icon {\n margin-left: auto;\n font-size: 11px;\n}\n\n/* Active Filters */\n.active-filters {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n/* Results Count */\n.results-count {\n display: flex;\n align-items: baseline;\n gap: 4px;\n font-size: 13px;\n color: var(--mj-text-muted);\n white-space: nowrap;\n}\n\n.results-count .count {\n font-weight: 600;\n color: var(--mj-text-primary);\n font-size: 14px;\n}\n\n.results-count .of-total {\n opacity: 0.7;\n}\n\n/* View Toggle */\n.view-toggle {\n display: flex;\n border: 1px solid var(--mj-border-default);\n border-radius: 4px;\n overflow: hidden;\n}\n\n.view-toggle button {\n border-radius: 0;\n border: none;\n min-width: 36px;\n}\n\n.view-toggle button:not(:last-child) {\n border-right: 1px solid var(--mj-border-default);\n}\n\n/* Responsive */\n@media (max-width: 1024px) {\n .action-toolbar {\n flex-direction: column;\n align-items: stretch;\n }\n\n .toolbar-left,\n .toolbar-right {\n width: 100%;\n justify-content: flex-start;\n }\n\n .search-container {\n max-width: none;\n flex: 1;\n }\n}\n\n@media (max-width: 640px) {\n .toolbar-right {\n flex-wrap: wrap;\n }\n\n .results-count {\n order: -1;\n width: 100%;\n }\n}\n"] }]
474
453
  }], () => [{ type: i1.ActionExplorerStateService }, { type: i0.ChangeDetectorRef }], { TotalCount: [{
475
454
  type: Input
476
455
  }], FilteredCount: [{