@memberjunction/ng-dashboards 5.22.0 → 5.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -0
- package/dist/AI/components/agents/agent-configuration.component.d.ts.map +1 -1
- package/dist/AI/components/agents/agent-configuration.component.js +364 -362
- package/dist/AI/components/agents/agent-configuration.component.js.map +1 -1
- package/dist/AI/components/agents/agent-editor.component.js +2 -2
- package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts +947 -64
- package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts.map +1 -1
- package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js +7645 -430
- package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js.map +1 -1
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts +285 -6
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts.map +1 -1
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.js +2454 -277
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.js.map +1 -1
- package/dist/AI/components/execution-monitoring.component.d.ts.map +1 -1
- package/dist/AI/components/execution-monitoring.component.js +191 -197
- package/dist/AI/components/execution-monitoring.component.js.map +1 -1
- package/dist/AI/components/models/model-management.component.js +9 -8
- package/dist/AI/components/models/model-management.component.js.map +1 -1
- package/dist/AI/components/prompts/prompt-management.component.js +305 -299
- package/dist/AI/components/prompts/prompt-management.component.js.map +1 -1
- package/dist/AI/components/system/system-configuration.component.js +319 -313
- package/dist/AI/components/system/system-configuration.component.js.map +1 -1
- package/dist/AI/components/vectors/vector-management-resource.component.d.ts +20 -2
- package/dist/AI/components/vectors/vector-management-resource.component.d.ts.map +1 -1
- package/dist/AI/components/vectors/vector-management-resource.component.js +419 -232
- package/dist/AI/components/vectors/vector-management-resource.component.js.map +1 -1
- package/dist/APIKeys/api-applications-panel.component.js +10 -12
- package/dist/APIKeys/api-applications-panel.component.js.map +1 -1
- package/dist/APIKeys/api-key-create-dialog.component.js +13 -19
- package/dist/APIKeys/api-key-create-dialog.component.js.map +1 -1
- package/dist/APIKeys/api-key-edit-panel.component.js +12 -14
- package/dist/APIKeys/api-key-edit-panel.component.js.map +1 -1
- package/dist/APIKeys/api-scopes-panel.component.js +61 -68
- package/dist/APIKeys/api-scopes-panel.component.js.map +1 -1
- package/dist/APIKeys/api-usage-panel.component.js +10 -11
- package/dist/APIKeys/api-usage-panel.component.js.map +1 -1
- package/dist/Actions/components/actions-list-view.component.js +82 -96
- package/dist/Actions/components/actions-list-view.component.js.map +1 -1
- package/dist/Actions/components/actions-overview.component.js +130 -134
- package/dist/Actions/components/actions-overview.component.js.map +1 -1
- package/dist/Actions/components/categories-list-view.component.d.ts.map +1 -1
- package/dist/Actions/components/categories-list-view.component.js +40 -46
- package/dist/Actions/components/categories-list-view.component.js.map +1 -1
- package/dist/Actions/components/code-management.component.js +2 -2
- package/dist/Actions/components/code-management.component.js.map +1 -1
- package/dist/Actions/components/entity-integration.component.js +2 -2
- package/dist/Actions/components/entity-integration.component.js.map +1 -1
- package/dist/Actions/components/execution-monitoring.component.js +127 -132
- package/dist/Actions/components/execution-monitoring.component.js.map +1 -1
- package/dist/Actions/components/executions-list-view.component.js +2 -2
- package/dist/Actions/components/executions-list-view.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-card.component.js +11 -17
- package/dist/Actions/components/explorer/action-card.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-explorer.component.js +5 -11
- package/dist/Actions/components/explorer/action-explorer.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-list-item.component.js +8 -10
- package/dist/Actions/components/explorer/action-list-item.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-toolbar.component.js +112 -133
- package/dist/Actions/components/explorer/action-toolbar.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-tree-panel.component.js +63 -83
- package/dist/Actions/components/explorer/action-tree-panel.component.js.map +1 -1
- package/dist/Actions/components/explorer/new-action-panel.component.js +17 -21
- package/dist/Actions/components/explorer/new-action-panel.component.js.map +1 -1
- package/dist/Actions/components/explorer/new-category-panel.component.js +17 -21
- package/dist/Actions/components/explorer/new-category-panel.component.js.map +1 -1
- package/dist/Actions/components/scheduled-actions.component.js +2 -2
- package/dist/Actions/components/scheduled-actions.component.js.map +1 -1
- package/dist/Actions/components/security-permissions.component.js +2 -2
- package/dist/Actions/components/security-permissions.component.js.map +1 -1
- package/dist/ComponentStudio/component-studio-dashboard.component.d.ts +13 -5
- package/dist/ComponentStudio/component-studio-dashboard.component.d.ts.map +1 -1
- package/dist/ComponentStudio/component-studio-dashboard.component.js +168 -145
- package/dist/ComponentStudio/component-studio-dashboard.component.js.map +1 -1
- package/dist/ComponentStudio/components/artifact-load-dialog.component.d.ts +4 -5
- package/dist/ComponentStudio/components/artifact-load-dialog.component.d.ts.map +1 -1
- package/dist/ComponentStudio/components/artifact-load-dialog.component.js +197 -200
- package/dist/ComponentStudio/components/artifact-load-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/artifact-selection-dialog.component.d.ts +5 -7
- package/dist/ComponentStudio/components/artifact-selection-dialog.component.d.ts.map +1 -1
- package/dist/ComponentStudio/components/artifact-selection-dialog.component.js +142 -148
- package/dist/ComponentStudio/components/artifact-selection-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/browser/component-browser.component.js +153 -166
- package/dist/ComponentStudio/components/browser/component-browser.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/code-editor-panel.component.js +15 -20
- package/dist/ComponentStudio/components/editors/code-editor-panel.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/data-requirements-editor.component.js +16 -21
- package/dist/ComponentStudio/components/editors/data-requirements-editor.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/requirements-editor.component.js +18 -23
- package/dist/ComponentStudio/components/editors/requirements-editor.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/spec-editor.component.js +25 -30
- package/dist/ComponentStudio/components/editors/spec-editor.component.js.map +1 -1
- package/dist/ComponentStudio/components/new-component-dialog/new-component-dialog.component.js +10 -11
- package/dist/ComponentStudio/components/new-component-dialog/new-component-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.d.ts.map +1 -1
- package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.js +24 -35
- package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/text-import-dialog.component.js +15 -17
- package/dist/ComponentStudio/components/text-import-dialog.component.js.map +1 -1
- package/dist/Credentials/components/credentials-categories-resource.component.js +7 -6
- package/dist/Credentials/components/credentials-categories-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-list-resource.component.js +6 -5
- package/dist/Credentials/components/credentials-list-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-types-resource.component.js +7 -6
- package/dist/Credentials/components/credentials-types-resource.component.js.map +1 -1
- package/dist/DashboardBrowser/dashboard-share-dialog.component.js +9 -9
- package/dist/DashboardBrowser/dashboard-share-dialog.component.js.map +1 -1
- package/dist/DataExplorer/data-explorer-dashboard.component.d.ts.map +1 -1
- package/dist/DataExplorer/data-explorer-dashboard.component.js +17 -17
- package/dist/DataExplorer/data-explorer-dashboard.component.js.map +1 -1
- package/dist/Home/home-dashboard.component.js +4 -4
- package/dist/Home/home-dashboard.component.js.map +1 -1
- package/dist/Integration/components/activity/activity.component.d.ts.map +1 -1
- package/dist/Integration/components/activity/activity.component.js +1 -0
- package/dist/Integration/components/activity/activity.component.js.map +1 -1
- package/dist/Integration/components/connections/connections.component.d.ts.map +1 -1
- package/dist/Integration/components/connections/connections.component.js +5 -4
- package/dist/Integration/components/connections/connections.component.js.map +1 -1
- package/dist/Integration/components/mapping-workspace/mapping-workspace.component.d.ts.map +1 -1
- package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js +247 -259
- package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js.map +1 -1
- package/dist/Integration/components/overview/overview.component.d.ts.map +1 -1
- package/dist/Integration/components/overview/overview.component.js +1 -0
- package/dist/Integration/components/overview/overview.component.js.map +1 -1
- package/dist/Integration/components/pipelines/pipelines.component.d.ts.map +1 -1
- package/dist/Integration/components/pipelines/pipelines.component.js +1 -0
- package/dist/Integration/components/pipelines/pipelines.component.js.map +1 -1
- package/dist/Integration/components/schedules/schedules.component.d.ts.map +1 -1
- package/dist/Integration/components/schedules/schedules.component.js +1 -0
- package/dist/Integration/components/schedules/schedules.component.js.map +1 -1
- package/dist/Integration/components/widgets/integration-card.component.js +7 -9
- package/dist/Integration/components/widgets/integration-card.component.js.map +1 -1
- package/dist/Integration/integration.module.d.ts +6 -10
- package/dist/Integration/integration.module.d.ts.map +1 -1
- package/dist/Integration/integration.module.js +12 -20
- package/dist/Integration/integration.module.js.map +1 -1
- package/dist/KnowledgeHub/components/analytics/analytics-resource.component.d.ts +411 -0
- package/dist/KnowledgeHub/components/analytics/analytics-resource.component.d.ts.map +1 -0
- package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js +4266 -0
- package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js.map +1 -0
- package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts +140 -0
- package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts.map +1 -0
- package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js +780 -0
- package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js.map +1 -0
- package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.d.ts +8 -2
- package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.d.ts.map +1 -1
- package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js +246 -195
- package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js.map +1 -1
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.d.ts +75 -0
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.d.ts.map +1 -0
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js +601 -0
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js.map +1 -0
- package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.d.ts +93 -12
- package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.d.ts.map +1 -1
- package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.js +637 -107
- package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.js.map +1 -1
- package/dist/KnowledgeHub/index.d.ts +3 -0
- package/dist/KnowledgeHub/index.d.ts.map +1 -1
- package/dist/KnowledgeHub/index.js +3 -0
- package/dist/KnowledgeHub/index.js.map +1 -1
- package/dist/Lists/components/lists-browse-resource.component.d.ts.map +1 -1
- package/dist/Lists/components/lists-browse-resource.component.js +9 -7
- package/dist/Lists/components/lists-browse-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-my-lists-resource.component.js +5 -4
- package/dist/Lists/components/lists-my-lists-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-operations-resource.component.js +10 -9
- package/dist/Lists/components/lists-operations-resource.component.js.map +1 -1
- package/dist/MCP/components/mcp-connection-dialog.component.js +141 -132
- package/dist/MCP/components/mcp-connection-dialog.component.js.map +1 -1
- package/dist/MCP/components/mcp-log-detail-panel.component.js +4 -4
- package/dist/MCP/components/mcp-log-detail-panel.component.js.map +1 -1
- package/dist/MCP/components/mcp-server-dialog.component.js +141 -128
- package/dist/MCP/components/mcp-server-dialog.component.js.map +1 -1
- package/dist/MCP/components/mcp-test-tool-dialog.component.js +210 -218
- package/dist/MCP/components/mcp-test-tool-dialog.component.js.map +1 -1
- package/dist/MCP/mcp-dashboard.component.js +2 -2
- package/dist/MCP/mcp-dashboard.component.js.map +1 -1
- package/dist/MCP/mcp.module.d.ts +6 -9
- package/dist/MCP/mcp.module.d.ts.map +1 -1
- package/dist/MCP/mcp.module.js +20 -22
- package/dist/MCP/mcp.module.js.map +1 -1
- package/dist/Scheduling/components/scheduling-activity.component.js +5 -4
- package/dist/Scheduling/components/scheduling-activity.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-jobs.component.js +6 -5
- package/dist/Scheduling/components/scheduling-jobs.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-overview.component.js +93 -92
- package/dist/Scheduling/components/scheduling-overview.component.js.map +1 -1
- package/dist/Testing/testing-dashboard.component.js +9 -10
- package/dist/Testing/testing-dashboard.component.js.map +1 -1
- package/dist/__tests__/analytics-resource.test.d.ts +2 -0
- package/dist/__tests__/analytics-resource.test.d.ts.map +1 -0
- package/dist/__tests__/analytics-resource.test.js +181 -0
- package/dist/__tests__/analytics-resource.test.js.map +1 -0
- package/dist/__tests__/scheduling.test.d.ts +2 -0
- package/dist/__tests__/scheduling.test.d.ts.map +1 -0
- package/dist/__tests__/scheduling.test.js +205 -0
- package/dist/__tests__/scheduling.test.js.map +1 -0
- package/dist/actions-dashboards.module.d.ts +8 -13
- package/dist/actions-dashboards.module.d.ts.map +1 -1
- package/dist/actions-dashboards.module.js +6 -27
- package/dist/actions-dashboards.module.js.map +1 -1
- package/dist/ai-dashboards.module.d.ts +20 -20
- package/dist/ai-dashboards.module.d.ts.map +1 -1
- package/dist/ai-dashboards.module.js +43 -44
- package/dist/ai-dashboards.module.js.map +1 -1
- package/dist/communication-dashboards.module.d.ts +4 -8
- package/dist/communication-dashboards.module.d.ts.map +1 -1
- package/dist/communication-dashboards.module.js +0 -19
- package/dist/communication-dashboards.module.js.map +1 -1
- package/dist/component-studio-dashboards.module.d.ts +7 -11
- package/dist/component-studio-dashboards.module.d.ts.map +1 -1
- package/dist/component-studio-dashboards.module.js +22 -34
- package/dist/component-studio-dashboards.module.js.map +1 -1
- package/dist/core-dashboards.module.d.ts +12 -18
- package/dist/core-dashboards.module.d.ts.map +1 -1
- package/dist/core-dashboards.module.js +15 -31
- package/dist/core-dashboards.module.js.map +1 -1
- package/dist/credentials-dashboards.module.d.ts +5 -8
- package/dist/credentials-dashboards.module.d.ts.map +1 -1
- package/dist/credentials-dashboards.module.js +3 -19
- package/dist/credentials-dashboards.module.js.map +1 -1
- package/dist/data-explorer-dashboards.module.d.ts +7 -13
- package/dist/data-explorer-dashboards.module.d.ts.map +1 -1
- package/dist/data-explorer-dashboards.module.js +0 -27
- package/dist/data-explorer-dashboards.module.js.map +1 -1
- package/dist/lists-dashboards.module.d.ts +5 -8
- package/dist/lists-dashboards.module.d.ts.map +1 -1
- package/dist/lists-dashboards.module.js +3 -19
- package/dist/lists-dashboards.module.js.map +1 -1
- package/dist/public-api.d.ts +2 -0
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +2 -0
- package/dist/public-api.js.map +1 -1
- package/dist/scheduling-dashboards.module.d.ts +6 -10
- package/dist/scheduling-dashboards.module.d.ts.map +1 -1
- package/dist/scheduling-dashboards.module.js +3 -23
- package/dist/scheduling-dashboards.module.js.map +1 -1
- package/dist/shared/entity-field-display.d.ts +44 -0
- package/dist/shared/entity-field-display.d.ts.map +1 -0
- package/dist/shared/entity-field-display.js +118 -0
- package/dist/shared/entity-field-display.js.map +1 -0
- package/dist/testing-dashboards.module.d.ts +7 -13
- package/dist/testing-dashboards.module.d.ts.map +1 -1
- package/dist/testing-dashboards.module.js +0 -27
- package/dist/testing-dashboards.module.js.map +1 -1
- package/package.json +48 -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 "@
|
|
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
|
|
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
|
|
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
|
|
26
|
-
i0.ɵɵelementStart(0, "span",
|
|
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
|
|
25
|
+
function ActionToolbarComponent_Conditional_13_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
35
26
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
36
|
-
i0.ɵɵelementStart(0, "button",
|
|
37
|
-
i0.ɵɵlistener("click", function
|
|
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
|
|
32
|
+
function ActionToolbarComponent_Conditional_13_For_8_Template(rf, ctx) { if (rf & 1) {
|
|
44
33
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
45
|
-
i0.ɵɵelementStart(0, "label",
|
|
46
|
-
i0.ɵɵlistener("change", function
|
|
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",
|
|
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
|
|
51
|
+
function ActionToolbarComponent_Conditional_13_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
63
52
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
64
|
-
i0.ɵɵelementStart(0, "button",
|
|
65
|
-
i0.ɵɵlistener("click", function
|
|
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
|
|
58
|
+
function ActionToolbarComponent_Conditional_13_For_16_Template(rf, ctx) { if (rf & 1) {
|
|
72
59
|
const _r7 = i0.ɵɵgetCurrentView();
|
|
73
|
-
i0.ɵɵelementStart(0, "label",
|
|
74
|
-
i0.ɵɵlistener("change", function
|
|
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
|
|
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",
|
|
93
|
-
i0.ɵɵlistener("click", function
|
|
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
|
|
102
|
-
i0.ɵɵelementStart(0, "div",
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
100
|
+
i0.ɵɵrepeaterCreate(15, ActionToolbarComponent_Conditional_13_For_16_Template, 4, 6, "label", 36, _forTrack0);
|
|
117
101
|
i0.ɵɵelementEnd()();
|
|
118
|
-
i0.ɵɵconditionalCreate(17,
|
|
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
|
|
117
|
+
function ActionToolbarComponent_Conditional_14_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
134
118
|
const _r10 = i0.ɵɵgetCurrentView();
|
|
135
|
-
i0.ɵɵelementStart(0, "
|
|
136
|
-
i0.ɵɵlistener("
|
|
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
|
|
129
|
+
function ActionToolbarComponent_Conditional_14_For_4_Template(rf, ctx) { if (rf & 1) {
|
|
146
130
|
const _r12 = i0.ɵɵgetCurrentView();
|
|
147
|
-
i0.ɵɵelementStart(0, "
|
|
148
|
-
i0.ɵɵlistener("
|
|
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
|
|
158
|
-
i0.ɵɵelementStart(0, "div",
|
|
159
|
-
i0.ɵɵrepeaterCreate(1,
|
|
160
|
-
i0.ɵɵrepeaterCreate(3,
|
|
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
|
|
170
|
-
i0.ɵɵelementStart(0, "span",
|
|
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
|
|
179
|
-
i0.ɵɵelement(0, "i",
|
|
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
|
|
168
|
+
function ActionToolbarComponent_Conditional_27_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
185
169
|
const _r14 = i0.ɵɵgetCurrentView();
|
|
186
|
-
i0.ɵɵelementStart(0, "button",
|
|
187
|
-
i0.ɵɵlistener("click", function
|
|
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,
|
|
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
|
|
204
|
-
i0.ɵɵelementStart(0, "div",
|
|
205
|
-
i0.ɵɵrepeaterCreate(1,
|
|
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:
|
|
373
|
-
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "
|
|
374
|
-
i0.ɵɵ
|
|
375
|
-
i0.ɵɵ
|
|
376
|
-
i0.ɵɵ
|
|
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(
|
|
379
|
-
i0.ɵɵlistener("clickOutside", function
|
|
380
|
-
i0.ɵɵelementStart(
|
|
381
|
-
i0.ɵɵlistener("click", function
|
|
382
|
-
i0.ɵɵelement(
|
|
383
|
-
i0.ɵɵtext(
|
|
384
|
-
i0.ɵɵconditionalCreate(
|
|
385
|
-
i0.ɵɵelement(
|
|
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(
|
|
373
|
+
i0.ɵɵconditionalCreate(13, ActionToolbarComponent_Conditional_13_Template, 18, 3, "div", 11);
|
|
388
374
|
i0.ɵɵelementEnd();
|
|
389
|
-
i0.ɵɵconditionalCreate(
|
|
375
|
+
i0.ɵɵconditionalCreate(14, ActionToolbarComponent_Conditional_14_Template, 5, 0, "div", 12);
|
|
390
376
|
i0.ɵɵelementEnd();
|
|
391
|
-
i0.ɵɵelementStart(
|
|
392
|
-
i0.ɵɵtext(
|
|
377
|
+
i0.ɵɵelementStart(15, "div", 13)(16, "div", 14)(17, "span", 15);
|
|
378
|
+
i0.ɵɵtext(18);
|
|
393
379
|
i0.ɵɵelementEnd();
|
|
394
|
-
i0.ɵɵconditionalCreate(
|
|
395
|
-
i0.ɵɵelementStart(
|
|
396
|
-
i0.ɵɵtext(
|
|
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(
|
|
399
|
-
i0.ɵɵlistener("clickOutside", function
|
|
400
|
-
i0.ɵɵelementStart(
|
|
401
|
-
i0.ɵɵlistener("click", function
|
|
402
|
-
i0.ɵɵelement(
|
|
403
|
-
i0.ɵɵtext(
|
|
404
|
-
i0.ɵɵelement(
|
|
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(
|
|
392
|
+
i0.ɵɵconditionalCreate(27, ActionToolbarComponent_Conditional_27_Template, 3, 0, "div", 18);
|
|
407
393
|
i0.ɵɵelementEnd();
|
|
408
|
-
i0.ɵɵelementStart(
|
|
409
|
-
i0.ɵɵlistener("click", function
|
|
410
|
-
i0.ɵɵelement(
|
|
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(
|
|
413
|
-
i0.ɵɵlistener("click", function
|
|
414
|
-
i0.ɵɵelement(
|
|
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(
|
|
417
|
-
i0.ɵɵlistener("click", function
|
|
418
|
-
i0.ɵɵelement(
|
|
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(
|
|
421
|
-
i0.ɵɵlistener("click", function
|
|
422
|
-
i0.ɵɵelement(
|
|
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(
|
|
425
|
-
i0.ɵɵlistener("click", function
|
|
426
|
-
i0.ɵɵelement(
|
|
427
|
-
i0.ɵɵtext(
|
|
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(
|
|
431
|
-
i0.ɵɵproperty("
|
|
432
|
-
i0.ɵɵadvance(
|
|
433
|
-
i0.ɵɵconditional(ctx.Filters.searchTerm ?
|
|
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 ?
|
|
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 ?
|
|
427
|
+
i0.ɵɵconditional(ctx.ShowFiltersDropdown ? 13 : -1);
|
|
443
428
|
i0.ɵɵadvance();
|
|
444
|
-
i0.ɵɵconditional(ctx.hasActiveFilters() ?
|
|
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 ?
|
|
449
|
-
i0.ɵɵadvance(
|
|
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 ?
|
|
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("
|
|
443
|
+
i0.ɵɵproperty("variant", ctx.ViewMode === "card" ? "primary" : "outline");
|
|
465
444
|
i0.ɵɵadvance(2);
|
|
466
|
-
i0.ɵɵproperty("
|
|
445
|
+
i0.ɵɵproperty("variant", ctx.ViewMode === "list" ? "primary" : "outline");
|
|
467
446
|
i0.ɵɵadvance(2);
|
|
468
|
-
i0.ɵɵproperty("
|
|
469
|
-
} }, dependencies: [i2.
|
|
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: [{
|