@memberjunction/ng-dashboards 5.34.1 → 5.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AI/components/agents/agent-configuration.component.d.ts +51 -0
- package/dist/AI/components/agents/agent-configuration.component.d.ts.map +1 -1
- package/dist/AI/components/agents/agent-configuration.component.js +399 -292
- package/dist/AI/components/agents/agent-configuration.component.js.map +1 -1
- package/dist/AI/components/analytics/agent-runs/agent-run-analysis.component.d.ts +8 -2
- package/dist/AI/components/analytics/agent-runs/agent-run-analysis.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/agent-runs/agent-run-analysis.component.js +87 -85
- package/dist/AI/components/analytics/agent-runs/agent-run-analysis.component.js.map +1 -1
- package/dist/AI/components/analytics/ai-analytics-resource.component.d.ts +75 -0
- package/dist/AI/components/analytics/ai-analytics-resource.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/ai-analytics-resource.component.js +400 -89
- package/dist/AI/components/analytics/ai-analytics-resource.component.js.map +1 -1
- package/dist/AI/components/analytics/analytics-filter-bar.component.d.ts +5 -0
- package/dist/AI/components/analytics/analytics-filter-bar.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/analytics-filter-bar.component.js +184 -135
- package/dist/AI/components/analytics/analytics-filter-bar.component.js.map +1 -1
- package/dist/AI/components/analytics/cost-budget/cost-budget.component.d.ts +8 -2
- package/dist/AI/components/analytics/cost-budget/cost-budget.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/cost-budget/cost-budget.component.js +104 -103
- package/dist/AI/components/analytics/cost-budget/cost-budget.component.js.map +1 -1
- package/dist/AI/components/analytics/error-analysis/error-analysis.component.d.ts +8 -2
- package/dist/AI/components/analytics/error-analysis/error-analysis.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/error-analysis/error-analysis.component.js +76 -74
- package/dist/AI/components/analytics/error-analysis/error-analysis.component.js.map +1 -1
- package/dist/AI/components/analytics/executive-summary/executive-summary.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/executive-summary/executive-summary.component.js +67 -87
- package/dist/AI/components/analytics/executive-summary/executive-summary.component.js.map +1 -1
- package/dist/AI/components/analytics/model-performance/model-performance.component.d.ts +12 -19
- package/dist/AI/components/analytics/model-performance/model-performance.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/model-performance/model-performance.component.js +96 -203
- package/dist/AI/components/analytics/model-performance/model-performance.component.js.map +1 -1
- package/dist/AI/components/analytics/prompt-runs/prompt-run-analysis.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/prompt-runs/prompt-run-analysis.component.js +110 -126
- package/dist/AI/components/analytics/prompt-runs/prompt-run-analysis.component.js.map +1 -1
- package/dist/AI/components/analytics/usage-patterns/usage-patterns.component.d.ts.map +1 -1
- package/dist/AI/components/analytics/usage-patterns/usage-patterns.component.js +61 -77
- package/dist/AI/components/analytics/usage-patterns/usage-patterns.component.js.map +1 -1
- package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js +990 -992
- package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js.map +1 -1
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts +6 -3
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts.map +1 -1
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.js +493 -490
- package/dist/AI/components/duplicates/duplicate-detection-resource.component.js.map +1 -1
- package/dist/AI/components/models/model-management.component.d.ts +17 -0
- package/dist/AI/components/models/model-management.component.d.ts.map +1 -1
- package/dist/AI/components/models/model-management.component.js +370 -425
- package/dist/AI/components/models/model-management.component.js.map +1 -1
- package/dist/AI/components/prompts/prompt-management.component.d.ts +17 -0
- package/dist/AI/components/prompts/prompt-management.component.d.ts.map +1 -1
- package/dist/AI/components/prompts/prompt-management.component.js +317 -357
- package/dist/AI/components/prompts/prompt-management.component.js.map +1 -1
- package/dist/AI/components/requests/agent-requests-resource.component.d.ts +11 -0
- package/dist/AI/components/requests/agent-requests-resource.component.d.ts.map +1 -1
- package/dist/AI/components/requests/agent-requests-resource.component.js +170 -175
- package/dist/AI/components/requests/agent-requests-resource.component.js.map +1 -1
- package/dist/AI/components/system/system-configuration.component.d.ts +19 -0
- package/dist/AI/components/system/system-configuration.component.d.ts.map +1 -1
- package/dist/AI/components/system/system-configuration.component.js +403 -362
- package/dist/AI/components/system/system-configuration.component.js.map +1 -1
- package/dist/AI/components/tags/tags-resource.component.js +781 -783
- package/dist/AI/components/tags/tags-resource.component.js.map +1 -1
- package/dist/AI/components/vectors/vector-management-resource.component.d.ts +8 -3
- package/dist/AI/components/vectors/vector-management-resource.component.d.ts.map +1 -1
- package/dist/AI/components/vectors/vector-management-resource.component.js +547 -521
- package/dist/AI/components/vectors/vector-management-resource.component.js.map +1 -1
- package/dist/Actions/components/actions-overview.component.d.ts +6 -0
- package/dist/Actions/components/actions-overview.component.d.ts.map +1 -1
- package/dist/Actions/components/actions-overview.component.js +79 -30
- package/dist/Actions/components/actions-overview.component.js.map +1 -1
- package/dist/Actions/components/execution-monitoring.component.d.ts +9 -3
- package/dist/Actions/components/execution-monitoring.component.d.ts.map +1 -1
- package/dist/Actions/components/execution-monitoring.component.js +196 -142
- package/dist/Actions/components/execution-monitoring.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-explorer.component.d.ts +41 -1
- package/dist/Actions/components/explorer/action-explorer.component.d.ts.map +1 -1
- package/dist/Actions/components/explorer/action-explorer.component.js +388 -94
- package/dist/Actions/components/explorer/action-explorer.component.js.map +1 -1
- package/dist/Actions/components/explorer/index.d.ts +0 -1
- package/dist/Actions/components/explorer/index.d.ts.map +1 -1
- package/dist/Actions/components/explorer/index.js +0 -1
- package/dist/Actions/components/explorer/index.js.map +1 -1
- package/dist/Admin/admin-data-schema.component.js +32 -40
- package/dist/Admin/admin-data-schema.component.js.map +1 -1
- package/dist/Admin/admin-dev-tools-resource.component.js +32 -40
- package/dist/Admin/admin-dev-tools-resource.component.js.map +1 -1
- package/dist/Admin/admin-identity-access.component.js +32 -40
- package/dist/Admin/admin-identity-access.component.js.map +1 -1
- package/dist/Admin/admin-monitoring.component.js +32 -40
- package/dist/Admin/admin-monitoring.component.js.map +1 -1
- package/dist/ApplicationRoles/application-roles-resource.component.js +76 -82
- package/dist/ApplicationRoles/application-roles-resource.component.js.map +1 -1
- package/dist/Archiving/components/archive-config-resource.component.d.ts.map +1 -1
- package/dist/Archiving/components/archive-config-resource.component.js +24 -5
- package/dist/Archiving/components/archive-config-resource.component.js.map +1 -1
- package/dist/Archiving/components/archive-runs-resource.component.d.ts.map +1 -1
- package/dist/Archiving/components/archive-runs-resource.component.js +24 -5
- package/dist/Archiving/components/archive-runs-resource.component.js.map +1 -1
- package/dist/Communication/communication-logs-resource.component.d.ts +1 -1
- package/dist/Communication/communication-logs-resource.component.d.ts.map +1 -1
- package/dist/Communication/communication-logs-resource.component.js +80 -99
- package/dist/Communication/communication-logs-resource.component.js.map +1 -1
- package/dist/Communication/communication-monitor-resource.component.d.ts.map +1 -1
- package/dist/Communication/communication-monitor-resource.component.js +127 -106
- package/dist/Communication/communication-monitor-resource.component.js.map +1 -1
- package/dist/Communication/communication-providers-resource.component.d.ts.map +1 -1
- package/dist/Communication/communication-providers-resource.component.js +44 -45
- package/dist/Communication/communication-providers-resource.component.js.map +1 -1
- package/dist/Communication/communication-runs-resource.component.d.ts.map +1 -1
- package/dist/Communication/communication-runs-resource.component.js +60 -58
- package/dist/Communication/communication-runs-resource.component.js.map +1 -1
- package/dist/Communication/communication-templates-resource.component.d.ts +1 -1
- package/dist/Communication/communication-templates-resource.component.d.ts.map +1 -1
- package/dist/Communication/communication-templates-resource.component.js +139 -162
- package/dist/Communication/communication-templates-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-audit-resource.component.d.ts +7 -0
- package/dist/Credentials/components/credentials-audit-resource.component.d.ts.map +1 -1
- package/dist/Credentials/components/credentials-audit-resource.component.js +310 -297
- package/dist/Credentials/components/credentials-audit-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-categories-resource.component.js +245 -266
- package/dist/Credentials/components/credentials-categories-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-list-resource.component.d.ts +7 -0
- package/dist/Credentials/components/credentials-list-resource.component.d.ts.map +1 -1
- package/dist/Credentials/components/credentials-list-resource.component.js +381 -399
- package/dist/Credentials/components/credentials-list-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-overview-resource.component.js +222 -228
- package/dist/Credentials/components/credentials-overview-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-types-resource.component.d.ts +6 -0
- package/dist/Credentials/components/credentials-types-resource.component.d.ts.map +1 -1
- package/dist/Credentials/components/credentials-types-resource.component.js +294 -305
- package/dist/Credentials/components/credentials-types-resource.component.js.map +1 -1
- package/dist/DatabaseDesigner/components/database-designer-dashboard.component.d.ts +8 -0
- package/dist/DatabaseDesigner/components/database-designer-dashboard.component.d.ts.map +1 -1
- package/dist/DatabaseDesigner/components/database-designer-dashboard.component.js +21 -0
- package/dist/DatabaseDesigner/components/database-designer-dashboard.component.js.map +1 -1
- package/dist/DatabaseDesigner/components/entity-list.component.js +147 -160
- package/dist/DatabaseDesigner/components/entity-list.component.js.map +1 -1
- package/dist/DatabaseDesigner/database-designer-dashboards.module.d.ts +1 -1
- package/dist/DatabaseDesigner/database-designer-dashboards.module.d.ts.map +1 -1
- package/dist/DatabaseDesigner/database-designer-dashboards.module.js +19 -1
- package/dist/DatabaseDesigner/database-designer-dashboards.module.js.map +1 -1
- package/dist/EntityAdmin/entity-admin-dashboard.component.js +20 -16
- package/dist/EntityAdmin/entity-admin-dashboard.component.js.map +1 -1
- package/dist/Home/home-dashboard.component.d.ts +6 -0
- package/dist/Home/home-dashboard.component.d.ts.map +1 -1
- package/dist/Home/home-dashboard.component.js +521 -485
- package/dist/Home/home-dashboard.component.js.map +1 -1
- package/dist/Integration/components/activity/activity.component.d.ts +8 -0
- package/dist/Integration/components/activity/activity.component.d.ts.map +1 -1
- package/dist/Integration/components/activity/activity.component.js +309 -318
- package/dist/Integration/components/activity/activity.component.js.map +1 -1
- package/dist/Integration/components/connections/connections.component.js +866 -847
- package/dist/Integration/components/connections/connections.component.js.map +1 -1
- package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js +234 -233
- package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js.map +1 -1
- package/dist/Integration/components/overview/overview.component.js +182 -163
- package/dist/Integration/components/overview/overview.component.js.map +1 -1
- package/dist/Integration/components/pipelines/pipelines.component.d.ts +2 -0
- package/dist/Integration/components/pipelines/pipelines.component.d.ts.map +1 -1
- package/dist/Integration/components/pipelines/pipelines.component.js +610 -606
- package/dist/Integration/components/pipelines/pipelines.component.js.map +1 -1
- package/dist/Integration/components/schedules/schedules.component.js +241 -241
- package/dist/Integration/components/schedules/schedules.component.js.map +1 -1
- package/dist/Integration/integration.module.d.ts +1 -1
- package/dist/Integration/integration.module.d.ts.map +1 -1
- package/dist/Integration/integration.module.js +28 -1
- package/dist/Integration/integration.module.js.map +1 -1
- package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js +673 -674
- package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js.map +1 -1
- package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js +54 -51
- package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js.map +1 -1
- package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js +745 -703
- package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js.map +1 -1
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.d.ts +12 -1
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.d.ts.map +1 -1
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js +191 -120
- package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-browse-resource.component.d.ts +18 -1
- package/dist/Lists/components/lists-browse-resource.component.d.ts.map +1 -1
- package/dist/Lists/components/lists-browse-resource.component.js +486 -532
- package/dist/Lists/components/lists-browse-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-categories-resource.component.d.ts.map +1 -1
- package/dist/Lists/components/lists-categories-resource.component.js +152 -160
- package/dist/Lists/components/lists-categories-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-my-lists-resource.component.d.ts.map +1 -1
- package/dist/Lists/components/lists-my-lists-resource.component.js +302 -319
- package/dist/Lists/components/lists-my-lists-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-operations-resource.component.d.ts.map +1 -1
- package/dist/Lists/components/lists-operations-resource.component.js +234 -246
- package/dist/Lists/components/lists-operations-resource.component.js.map +1 -1
- package/dist/MCP/mcp-dashboard.component.d.ts +20 -0
- package/dist/MCP/mcp-dashboard.component.d.ts.map +1 -1
- package/dist/MCP/mcp-dashboard.component.js +1248 -1338
- package/dist/MCP/mcp-dashboard.component.js.map +1 -1
- package/dist/MCP/mcp.module.d.ts +1 -1
- package/dist/MCP/mcp.module.d.ts.map +1 -1
- package/dist/MCP/mcp.module.js +34 -1
- package/dist/MCP/mcp.module.js.map +1 -1
- package/dist/Permissions/audit-log-resource.component.js +76 -85
- package/dist/Permissions/audit-log-resource.component.js.map +1 -1
- package/dist/Permissions/resource-access-resource.component.js +64 -69
- package/dist/Permissions/resource-access-resource.component.js.map +1 -1
- package/dist/Permissions/user-access-resource.component.js +63 -74
- package/dist/Permissions/user-access-resource.component.js.map +1 -1
- package/dist/QueryBrowser/query-browser-resource.component.js +2 -2
- package/dist/QueryBrowser/query-browser-resource.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-activity-resource.component.d.ts +2 -1
- package/dist/Scheduling/components/scheduling-activity-resource.component.d.ts.map +1 -1
- package/dist/Scheduling/components/scheduling-activity-resource.component.js +11 -12
- package/dist/Scheduling/components/scheduling-activity-resource.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-activity.component.d.ts +9 -1
- package/dist/Scheduling/components/scheduling-activity.component.d.ts.map +1 -1
- package/dist/Scheduling/components/scheduling-activity.component.js +250 -197
- package/dist/Scheduling/components/scheduling-activity.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-jobs-resource.component.d.ts +2 -1
- package/dist/Scheduling/components/scheduling-jobs-resource.component.d.ts.map +1 -1
- package/dist/Scheduling/components/scheduling-jobs-resource.component.js +11 -12
- package/dist/Scheduling/components/scheduling-jobs-resource.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-jobs.component.d.ts +9 -1
- package/dist/Scheduling/components/scheduling-jobs.component.d.ts.map +1 -1
- package/dist/Scheduling/components/scheduling-jobs.component.js +203 -147
- package/dist/Scheduling/components/scheduling-jobs.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-overview-resource.component.d.ts +2 -1
- package/dist/Scheduling/components/scheduling-overview-resource.component.d.ts.map +1 -1
- package/dist/Scheduling/components/scheduling-overview-resource.component.js +11 -12
- package/dist/Scheduling/components/scheduling-overview-resource.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-overview.component.d.ts +3 -1
- package/dist/Scheduling/components/scheduling-overview.component.d.ts.map +1 -1
- package/dist/Scheduling/components/scheduling-overview.component.js +224 -190
- package/dist/Scheduling/components/scheduling-overview.component.js.map +1 -1
- package/dist/Scheduling/scheduling-dashboard.component.d.ts +19 -6
- package/dist/Scheduling/scheduling-dashboard.component.d.ts.map +1 -1
- package/dist/Scheduling/scheduling-dashboard.component.js +262 -104
- package/dist/Scheduling/scheduling-dashboard.component.js.map +1 -1
- package/dist/SystemDiagnostics/system-diagnostics.component.js +773 -783
- package/dist/SystemDiagnostics/system-diagnostics.component.js.map +1 -1
- package/dist/Testing/components/testing-analytics-resource.component.d.ts +2 -1
- package/dist/Testing/components/testing-analytics-resource.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-analytics-resource.component.js +7 -14
- package/dist/Testing/components/testing-analytics-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-analytics.component.d.ts +3 -1
- package/dist/Testing/components/testing-analytics.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-analytics.component.js +420 -393
- package/dist/Testing/components/testing-analytics.component.js.map +1 -1
- package/dist/Testing/components/testing-dashboard-tab-resource.component.d.ts +2 -1
- package/dist/Testing/components/testing-dashboard-tab-resource.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-dashboard-tab-resource.component.js +16 -19
- package/dist/Testing/components/testing-dashboard-tab-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-dashboard-tab.component.d.ts +3 -1
- package/dist/Testing/components/testing-dashboard-tab.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-dashboard-tab.component.js +157 -122
- package/dist/Testing/components/testing-dashboard-tab.component.js.map +1 -1
- package/dist/Testing/components/testing-explorer-resource.component.d.ts +2 -1
- package/dist/Testing/components/testing-explorer-resource.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-explorer-resource.component.js +7 -12
- package/dist/Testing/components/testing-explorer-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-explorer.component.d.ts +8 -1
- package/dist/Testing/components/testing-explorer.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-explorer.component.js +587 -608
- package/dist/Testing/components/testing-explorer.component.js.map +1 -1
- package/dist/Testing/components/testing-review-resource.component.d.ts +4 -1
- package/dist/Testing/components/testing-review-resource.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-review-resource.component.js +9 -12
- package/dist/Testing/components/testing-review-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-review.component.d.ts +3 -1
- package/dist/Testing/components/testing-review.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-review.component.js +310 -274
- package/dist/Testing/components/testing-review.component.js.map +1 -1
- package/dist/Testing/components/testing-runs-resource.component.d.ts +2 -1
- package/dist/Testing/components/testing-runs-resource.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-runs-resource.component.js +16 -19
- package/dist/Testing/components/testing-runs-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-runs.component.d.ts +3 -1
- package/dist/Testing/components/testing-runs.component.d.ts.map +1 -1
- package/dist/Testing/components/testing-runs.component.js +307 -273
- package/dist/Testing/components/testing-runs.component.js.map +1 -1
- package/dist/Testing/testing-dashboard.component.d.ts +2 -0
- package/dist/Testing/testing-dashboard.component.d.ts.map +1 -1
- package/dist/Testing/testing-dashboard.component.js +107 -93
- package/dist/Testing/testing-dashboard.component.js.map +1 -1
- package/dist/VersionHistory/components/diff-resource.component.js +185 -188
- package/dist/VersionHistory/components/diff-resource.component.js.map +1 -1
- package/dist/VersionHistory/components/graph-resource.component.js +154 -184
- package/dist/VersionHistory/components/graph-resource.component.js.map +1 -1
- package/dist/VersionHistory/components/labels-resource.component.d.ts +7 -0
- package/dist/VersionHistory/components/labels-resource.component.d.ts.map +1 -1
- package/dist/VersionHistory/components/labels-resource.component.js +350 -354
- package/dist/VersionHistory/components/labels-resource.component.js.map +1 -1
- package/dist/VersionHistory/components/restore-resource.component.js +163 -169
- package/dist/VersionHistory/components/restore-resource.component.js.map +1 -1
- package/dist/actions-dashboards.module.d.ts +15 -16
- package/dist/actions-dashboards.module.d.ts.map +1 -1
- package/dist/actions-dashboards.module.js +34 -11
- package/dist/actions-dashboards.module.js.map +1 -1
- package/dist/ai-dashboards.module.d.ts +45 -48
- package/dist/ai-dashboards.module.d.ts.map +1 -1
- package/dist/ai-dashboards.module.js +36 -10
- package/dist/ai-dashboards.module.js.map +1 -1
- package/dist/archiving-dashboards.module.d.ts +2 -1
- package/dist/archiving-dashboards.module.d.ts.map +1 -1
- package/dist/archiving-dashboards.module.js +12 -2
- package/dist/archiving-dashboards.module.js.map +1 -1
- package/dist/communication-dashboards.module.d.ts +2 -1
- package/dist/communication-dashboards.module.d.ts.map +1 -1
- package/dist/communication-dashboards.module.js +24 -3
- package/dist/communication-dashboards.module.js.map +1 -1
- package/dist/core-dashboards.module.d.ts +1 -1
- package/dist/core-dashboards.module.d.ts.map +1 -1
- package/dist/core-dashboards.module.js +31 -1
- package/dist/core-dashboards.module.js.map +1 -1
- package/dist/credentials-dashboards.module.d.ts +1 -1
- package/dist/credentials-dashboards.module.d.ts.map +1 -1
- package/dist/credentials-dashboards.module.js +28 -1
- package/dist/credentials-dashboards.module.js.map +1 -1
- package/dist/lists-dashboards.module.d.ts +1 -1
- package/dist/lists-dashboards.module.d.ts.map +1 -1
- package/dist/lists-dashboards.module.js +28 -1
- package/dist/lists-dashboards.module.js.map +1 -1
- package/dist/public-api.d.ts +2 -2
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +3 -3
- package/dist/public-api.js.map +1 -1
- package/dist/scheduling-dashboards.module.d.ts +1 -1
- package/dist/scheduling-dashboards.module.d.ts.map +1 -1
- package/dist/scheduling-dashboards.module.js +31 -1
- package/dist/scheduling-dashboards.module.js.map +1 -1
- package/dist/testing-dashboards.module.d.ts +8 -7
- package/dist/testing-dashboards.module.d.ts.map +1 -1
- package/dist/testing-dashboards.module.js +30 -0
- package/dist/testing-dashboards.module.js.map +1 -1
- package/package.json +52 -52
- package/dist/AI/components/agents/agent-filter-panel.component.d.ts +0 -56
- package/dist/AI/components/agents/agent-filter-panel.component.d.ts.map +0 -1
- package/dist/AI/components/agents/agent-filter-panel.component.js +0 -285
- package/dist/AI/components/agents/agent-filter-panel.component.js.map +0 -1
- package/dist/AI/components/prompts/prompt-filter-panel.component.d.ts +0 -49
- package/dist/AI/components/prompts/prompt-filter-panel.component.d.ts.map +0 -1
- package/dist/AI/components/prompts/prompt-filter-panel.component.js +0 -184
- package/dist/AI/components/prompts/prompt-filter-panel.component.js.map +0 -1
- package/dist/AI/components/system/system-config-filter-panel.component.d.ts +0 -33
- package/dist/AI/components/system/system-config-filter-panel.component.d.ts.map +0 -1
- package/dist/AI/components/system/system-config-filter-panel.component.js +0 -144
- package/dist/AI/components/system/system-config-filter-panel.component.js.map +0 -1
- package/dist/Actions/components/explorer/action-toolbar.component.d.ts +0 -63
- package/dist/Actions/components/explorer/action-toolbar.component.d.ts.map +0 -1
- package/dist/Actions/components/explorer/action-toolbar.component.js +0 -463
- package/dist/Actions/components/explorer/action-toolbar.component.js.map +0 -1
|
@@ -13,285 +13,254 @@ import { RunView } from '@memberjunction/core';
|
|
|
13
13
|
import { UserInfoEngine } from '@memberjunction/core-entities';
|
|
14
14
|
import * as i0 from "@angular/core";
|
|
15
15
|
import * as i1 from "@angular/common";
|
|
16
|
-
import * as i2 from "@memberjunction/ng-
|
|
16
|
+
import * as i2 from "@memberjunction/ng-ui-components";
|
|
17
|
+
import * as i3 from "@memberjunction/ng-shared-generic";
|
|
17
18
|
const _c0 = a0 => ({ "expanded": a0 });
|
|
18
|
-
function
|
|
19
|
-
i0.ɵɵelement(0, "mj-loading",
|
|
19
|
+
function VersionHistoryRestoreResourceComponent_Conditional_11_Template(rf, ctx) { if (rf & 1) {
|
|
20
|
+
i0.ɵɵelement(0, "mj-loading", 9);
|
|
20
21
|
} }
|
|
21
|
-
function
|
|
22
|
-
i0.ɵɵelementStart(0, "div",
|
|
22
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
23
|
+
i0.ɵɵelementStart(0, "div", 31);
|
|
23
24
|
i0.ɵɵtext(1);
|
|
24
25
|
i0.ɵɵelementEnd();
|
|
25
26
|
} if (rf & 2) {
|
|
26
|
-
const
|
|
27
|
-
const
|
|
27
|
+
const restore_r2 = i0.ɵɵnextContext().$implicit;
|
|
28
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
28
29
|
i0.ɵɵadvance();
|
|
29
|
-
i0.ɵɵtextInterpolate(
|
|
30
|
+
i0.ɵɵtextInterpolate(ctx_r2.FormatDate(restore_r2.StartedAt));
|
|
30
31
|
} }
|
|
31
|
-
function
|
|
32
|
-
i0.ɵɵelementStart(0, "div",
|
|
32
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_17_Template(rf, ctx) { if (rf & 1) {
|
|
33
|
+
i0.ɵɵelementStart(0, "div", 39)(1, "span", 40);
|
|
33
34
|
i0.ɵɵtext(2, "Restored By");
|
|
34
35
|
i0.ɵɵelementEnd();
|
|
35
|
-
i0.ɵɵelementStart(3, "span",
|
|
36
|
+
i0.ɵɵelementStart(3, "span", 42);
|
|
36
37
|
i0.ɵɵtext(4);
|
|
37
38
|
i0.ɵɵelementEnd()();
|
|
38
39
|
} if (rf & 2) {
|
|
39
|
-
const
|
|
40
|
+
const restore_r2 = i0.ɵɵnextContext(2).$implicit;
|
|
40
41
|
i0.ɵɵadvance(4);
|
|
41
|
-
i0.ɵɵtextInterpolate(
|
|
42
|
+
i0.ɵɵtextInterpolate(restore_r2.User);
|
|
42
43
|
} }
|
|
43
|
-
function
|
|
44
|
-
i0.ɵɵelementStart(0, "span",
|
|
44
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_18_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
45
|
+
i0.ɵɵelementStart(0, "span", 44);
|
|
45
46
|
i0.ɵɵtext(1);
|
|
46
47
|
i0.ɵɵelementEnd();
|
|
47
48
|
} if (rf & 2) {
|
|
48
|
-
const
|
|
49
|
+
const restore_r2 = i0.ɵɵnextContext(3).$implicit;
|
|
49
50
|
i0.ɵɵadvance();
|
|
50
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
51
|
+
i0.ɵɵtextInterpolate1(" ", restore_r2.PreRestoreLabel, " ");
|
|
51
52
|
} }
|
|
52
|
-
function
|
|
53
|
-
i0.ɵɵelementStart(0, "span",
|
|
53
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_18_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
54
|
+
i0.ɵɵelementStart(0, "span", 44);
|
|
54
55
|
i0.ɵɵtext(1);
|
|
55
56
|
i0.ɵɵpipe(2, "slice");
|
|
56
57
|
i0.ɵɵelementEnd();
|
|
57
58
|
} if (rf & 2) {
|
|
58
|
-
const
|
|
59
|
+
const restore_r2 = i0.ɵɵnextContext(3).$implicit;
|
|
59
60
|
i0.ɵɵadvance();
|
|
60
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(2, 1,
|
|
61
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind3(2, 1, restore_r2.PreRestoreLabelID, 0, 20), "... ");
|
|
61
62
|
} }
|
|
62
|
-
function
|
|
63
|
-
i0.ɵɵelementStart(0, "div",
|
|
63
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
64
|
+
i0.ɵɵelementStart(0, "div", 39)(1, "span", 40);
|
|
64
65
|
i0.ɵɵtext(2, "Pre-Restore Label");
|
|
65
66
|
i0.ɵɵelementEnd();
|
|
66
|
-
i0.ɵɵconditionalCreate(3,
|
|
67
|
-
i0.ɵɵconditionalCreate(4,
|
|
67
|
+
i0.ɵɵconditionalCreate(3, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_18_Conditional_3_Template, 2, 1, "span", 44);
|
|
68
|
+
i0.ɵɵconditionalCreate(4, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_18_Conditional_4_Template, 3, 5, "span", 44);
|
|
68
69
|
i0.ɵɵelementEnd();
|
|
69
70
|
} if (rf & 2) {
|
|
70
|
-
const
|
|
71
|
+
const restore_r2 = i0.ɵɵnextContext(2).$implicit;
|
|
71
72
|
i0.ɵɵadvance(3);
|
|
72
|
-
i0.ɵɵconditional(
|
|
73
|
+
i0.ɵɵconditional(restore_r2.PreRestoreLabel ? 3 : -1);
|
|
73
74
|
i0.ɵɵadvance();
|
|
74
|
-
i0.ɵɵconditional(!
|
|
75
|
+
i0.ɵɵconditional(!restore_r2.PreRestoreLabel ? 4 : -1);
|
|
75
76
|
} }
|
|
76
|
-
function
|
|
77
|
-
i0.ɵɵelementStart(0, "div",
|
|
78
|
-
i0.ɵɵelement(2, "i",
|
|
77
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
78
|
+
i0.ɵɵelementStart(0, "div", 43)(1, "div", 45);
|
|
79
|
+
i0.ɵɵelement(2, "i", 46);
|
|
79
80
|
i0.ɵɵtext(3, " Error Log ");
|
|
80
81
|
i0.ɵɵelementEnd();
|
|
81
|
-
i0.ɵɵelementStart(4, "pre",
|
|
82
|
+
i0.ɵɵelementStart(4, "pre", 47);
|
|
82
83
|
i0.ɵɵtext(5);
|
|
83
84
|
i0.ɵɵelementEnd()();
|
|
84
85
|
} if (rf & 2) {
|
|
85
|
-
const
|
|
86
|
+
const restore_r2 = i0.ɵɵnextContext(2).$implicit;
|
|
86
87
|
i0.ɵɵadvance(5);
|
|
87
|
-
i0.ɵɵtextInterpolate(
|
|
88
|
+
i0.ɵɵtextInterpolate(restore_r2.ErrorLog);
|
|
88
89
|
} }
|
|
89
|
-
function
|
|
90
|
-
i0.ɵɵelementStart(0, "div",
|
|
90
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
91
|
+
i0.ɵɵelementStart(0, "div", 37)(1, "div", 38)(2, "div", 39)(3, "span", 40);
|
|
91
92
|
i0.ɵɵtext(4, "Status");
|
|
92
93
|
i0.ɵɵelementEnd();
|
|
93
|
-
i0.ɵɵelementStart(5, "span",
|
|
94
|
+
i0.ɵɵelementStart(5, "span", 41);
|
|
94
95
|
i0.ɵɵtext(6);
|
|
95
96
|
i0.ɵɵelementEnd()();
|
|
96
|
-
i0.ɵɵelementStart(7, "div",
|
|
97
|
+
i0.ɵɵelementStart(7, "div", 39)(8, "span", 40);
|
|
97
98
|
i0.ɵɵtext(9, "Items Completed");
|
|
98
99
|
i0.ɵɵelementEnd();
|
|
99
|
-
i0.ɵɵelementStart(10, "span",
|
|
100
|
+
i0.ɵɵelementStart(10, "span", 42);
|
|
100
101
|
i0.ɵɵtext(11);
|
|
101
102
|
i0.ɵɵelementEnd()();
|
|
102
|
-
i0.ɵɵelementStart(12, "div",
|
|
103
|
+
i0.ɵɵelementStart(12, "div", 39)(13, "span", 40);
|
|
103
104
|
i0.ɵɵtext(14, "Items Failed");
|
|
104
105
|
i0.ɵɵelementEnd();
|
|
105
|
-
i0.ɵɵelementStart(15, "span",
|
|
106
|
+
i0.ɵɵelementStart(15, "span", 42);
|
|
106
107
|
i0.ɵɵtext(16);
|
|
107
108
|
i0.ɵɵelementEnd()();
|
|
108
|
-
i0.ɵɵconditionalCreate(17,
|
|
109
|
-
i0.ɵɵconditionalCreate(18,
|
|
109
|
+
i0.ɵɵconditionalCreate(17, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_17_Template, 5, 1, "div", 39);
|
|
110
|
+
i0.ɵɵconditionalCreate(18, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_18_Template, 5, 2, "div", 39);
|
|
110
111
|
i0.ɵɵelementEnd();
|
|
111
|
-
i0.ɵɵconditionalCreate(19,
|
|
112
|
+
i0.ɵɵconditionalCreate(19, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Conditional_19_Template, 6, 1, "div", 43);
|
|
112
113
|
i0.ɵɵelementEnd();
|
|
113
114
|
} if (rf & 2) {
|
|
114
|
-
const
|
|
115
|
-
const
|
|
115
|
+
const restore_r2 = i0.ɵɵnextContext().$implicit;
|
|
116
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
116
117
|
i0.ɵɵadvance(5);
|
|
117
|
-
i0.ɵɵproperty("ngClass",
|
|
118
|
+
i0.ɵɵproperty("ngClass", ctx_r2.GetStatusClass(restore_r2.Status));
|
|
118
119
|
i0.ɵɵadvance();
|
|
119
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
120
|
+
i0.ɵɵtextInterpolate1(" ", restore_r2.Status, " ");
|
|
120
121
|
i0.ɵɵadvance(5);
|
|
121
|
-
i0.ɵɵtextInterpolate(
|
|
122
|
+
i0.ɵɵtextInterpolate(restore_r2.CompletedItems ?? 0);
|
|
122
123
|
i0.ɵɵadvance(4);
|
|
123
|
-
i0.ɵɵclassProp("text-error", (
|
|
124
|
+
i0.ɵɵclassProp("text-error", (restore_r2.FailedItems ?? 0) > 0);
|
|
124
125
|
i0.ɵɵadvance();
|
|
125
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
126
|
+
i0.ɵɵtextInterpolate1(" ", restore_r2.FailedItems ?? 0, " ");
|
|
126
127
|
i0.ɵɵadvance();
|
|
127
|
-
i0.ɵɵconditional(
|
|
128
|
+
i0.ɵɵconditional(restore_r2.User ? 17 : -1);
|
|
128
129
|
i0.ɵɵadvance();
|
|
129
|
-
i0.ɵɵconditional(
|
|
130
|
+
i0.ɵɵconditional(restore_r2.PreRestoreLabelID ? 18 : -1);
|
|
130
131
|
i0.ɵɵadvance();
|
|
131
|
-
i0.ɵɵconditional(
|
|
132
|
+
i0.ɵɵconditional(restore_r2.ErrorLog ? 19 : -1);
|
|
132
133
|
} }
|
|
133
|
-
function
|
|
134
|
-
const
|
|
135
|
-
i0.ɵɵelementStart(0, "div",
|
|
136
|
-
i0.ɵɵlistener("click", function
|
|
137
|
-
i0.ɵɵelementStart(2, "div",
|
|
138
|
-
i0.ɵɵelement(3, "i",
|
|
139
|
-
i0.ɵɵelementStart(4, "div",
|
|
134
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
135
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
136
|
+
i0.ɵɵelementStart(0, "div", 25)(1, "div", 26);
|
|
137
|
+
i0.ɵɵlistener("click", function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Template_div_click_1_listener() { const restore_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.ToggleExpand(restore_r2.ID)); });
|
|
138
|
+
i0.ɵɵelementStart(2, "div", 27);
|
|
139
|
+
i0.ɵɵelement(3, "i", 28);
|
|
140
|
+
i0.ɵɵelementStart(4, "div", 29)(5, "div", 30);
|
|
140
141
|
i0.ɵɵtext(6);
|
|
141
142
|
i0.ɵɵelementEnd();
|
|
142
|
-
i0.ɵɵconditionalCreate(7,
|
|
143
|
+
i0.ɵɵconditionalCreate(7, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_7_Template, 2, 1, "div", 31);
|
|
143
144
|
i0.ɵɵelementEnd()();
|
|
144
|
-
i0.ɵɵelementStart(8, "div",
|
|
145
|
-
i0.ɵɵelement(10, "div",
|
|
145
|
+
i0.ɵɵelementStart(8, "div", 32)(9, "div", 33);
|
|
146
|
+
i0.ɵɵelement(10, "div", 34);
|
|
146
147
|
i0.ɵɵelementEnd();
|
|
147
|
-
i0.ɵɵelementStart(11, "span",
|
|
148
|
+
i0.ɵɵelementStart(11, "span", 35);
|
|
148
149
|
i0.ɵɵtext(12);
|
|
149
150
|
i0.ɵɵelementEnd();
|
|
150
|
-
i0.ɵɵelement(13, "i",
|
|
151
|
+
i0.ɵɵelement(13, "i", 36);
|
|
151
152
|
i0.ɵɵelementEnd()();
|
|
152
|
-
i0.ɵɵconditionalCreate(14,
|
|
153
|
+
i0.ɵɵconditionalCreate(14, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Conditional_14_Template, 20, 9, "div", 37);
|
|
153
154
|
i0.ɵɵelementEnd();
|
|
154
155
|
} if (rf & 2) {
|
|
155
|
-
const
|
|
156
|
-
const
|
|
157
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(13, _c0,
|
|
156
|
+
const restore_r2 = ctx.$implicit;
|
|
157
|
+
const ctx_r2 = i0.ɵɵnextContext(3);
|
|
158
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(13, _c0, ctx_r2.IsExpanded(restore_r2.ID)));
|
|
158
159
|
i0.ɵɵadvance(3);
|
|
159
|
-
i0.ɵɵclassMap(
|
|
160
|
-
i0.ɵɵproperty("ngClass",
|
|
160
|
+
i0.ɵɵclassMap(ctx_r2.GetStatusIcon(restore_r2.Status));
|
|
161
|
+
i0.ɵɵproperty("ngClass", ctx_r2.GetStatusClass(restore_r2.Status));
|
|
161
162
|
i0.ɵɵadvance(3);
|
|
162
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
163
|
+
i0.ɵɵtextInterpolate1(" ", restore_r2.VersionLabel, " ");
|
|
163
164
|
i0.ɵɵadvance();
|
|
164
|
-
i0.ɵɵconditional(
|
|
165
|
+
i0.ɵɵconditional(restore_r2.StartedAt ? 7 : -1);
|
|
165
166
|
i0.ɵɵadvance(3);
|
|
166
|
-
i0.ɵɵstyleProp("width",
|
|
167
|
-
i0.ɵɵproperty("ngClass",
|
|
167
|
+
i0.ɵɵstyleProp("width", ctx_r2.GetProgressPercent(restore_r2), "%");
|
|
168
|
+
i0.ɵɵproperty("ngClass", ctx_r2.GetStatusClass(restore_r2.Status));
|
|
168
169
|
i0.ɵɵadvance(2);
|
|
169
|
-
i0.ɵɵtextInterpolate2(" ",
|
|
170
|
+
i0.ɵɵtextInterpolate2(" ", restore_r2.CompletedItems ?? 0, " / ", restore_r2.TotalItems ?? 0, " items ");
|
|
170
171
|
i0.ɵɵadvance();
|
|
171
|
-
i0.ɵɵproperty("ngClass",
|
|
172
|
+
i0.ɵɵproperty("ngClass", ctx_r2.IsExpanded(restore_r2.ID) ? "fa-chevron-up" : "fa-chevron-down");
|
|
172
173
|
i0.ɵɵadvance();
|
|
173
|
-
i0.ɵɵconditional(
|
|
174
|
+
i0.ɵɵconditional(ctx_r2.IsExpanded(restore_r2.ID) ? 14 : -1);
|
|
174
175
|
} }
|
|
175
|
-
function
|
|
176
|
-
i0.ɵɵelementStart(0, "div",
|
|
177
|
-
i0.ɵɵrepeaterCreate(1,
|
|
176
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_Template(rf, ctx) { if (rf & 1) {
|
|
177
|
+
i0.ɵɵelementStart(0, "div", 23);
|
|
178
|
+
i0.ɵɵrepeaterCreate(1, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_For_2_Template, 15, 15, "div", 25, i0.ɵɵrepeaterTrackByIdentity);
|
|
178
179
|
i0.ɵɵelementEnd();
|
|
179
180
|
} if (rf & 2) {
|
|
180
|
-
const
|
|
181
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
181
182
|
i0.ɵɵadvance();
|
|
182
|
-
i0.ɵɵrepeater(
|
|
183
|
+
i0.ɵɵrepeater(ctx_r2.FilteredRestores);
|
|
183
184
|
} }
|
|
184
|
-
function
|
|
185
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_34_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
185
186
|
i0.ɵɵelementStart(0, "p");
|
|
186
187
|
i0.ɵɵtext(1, " Try adjusting your filters. ");
|
|
187
188
|
i0.ɵɵelementEnd();
|
|
188
189
|
} }
|
|
189
|
-
function
|
|
190
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_34_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
190
191
|
i0.ɵɵelementStart(0, "p");
|
|
191
192
|
i0.ɵɵtext(1, " No restores have been performed yet. Use the VersionHistoryEngine to restore records to a labeled state. ");
|
|
192
193
|
i0.ɵɵelementEnd();
|
|
193
194
|
} }
|
|
194
|
-
function
|
|
195
|
-
i0.ɵɵelementStart(0, "div",
|
|
196
|
-
i0.ɵɵelement(1, "i",
|
|
195
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_34_Template(rf, ctx) { if (rf & 1) {
|
|
196
|
+
i0.ɵɵelementStart(0, "div", 24);
|
|
197
|
+
i0.ɵɵelement(1, "i", 48);
|
|
197
198
|
i0.ɵɵelementStart(2, "h3");
|
|
198
199
|
i0.ɵɵtext(3, "No restore operations found");
|
|
199
200
|
i0.ɵɵelementEnd();
|
|
200
|
-
i0.ɵɵconditionalCreate(4,
|
|
201
|
-
i0.ɵɵconditionalCreate(5,
|
|
201
|
+
i0.ɵɵconditionalCreate(4, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_34_Conditional_4_Template, 2, 0, "p");
|
|
202
|
+
i0.ɵɵconditionalCreate(5, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_34_Conditional_5_Template, 2, 0, "p");
|
|
202
203
|
i0.ɵɵelementEnd();
|
|
203
204
|
} if (rf & 2) {
|
|
204
|
-
const
|
|
205
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
205
206
|
i0.ɵɵadvance(4);
|
|
206
|
-
i0.ɵɵconditional(
|
|
207
|
+
i0.ɵɵconditional(ctx_r2.StatusFilter ? 4 : -1);
|
|
207
208
|
i0.ɵɵadvance();
|
|
208
|
-
i0.ɵɵconditional(!
|
|
209
|
+
i0.ɵɵconditional(!ctx_r2.StatusFilter ? 5 : -1);
|
|
209
210
|
} }
|
|
210
|
-
function
|
|
211
|
-
|
|
212
|
-
i0.ɵɵ
|
|
213
|
-
i0.ɵɵtext(3, "Restore History");
|
|
211
|
+
function VersionHistoryRestoreResourceComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
212
|
+
i0.ɵɵelementStart(0, "div", 10)(1, "div", 11)(2, "div", 12);
|
|
213
|
+
i0.ɵɵelement(3, "i", 13);
|
|
214
214
|
i0.ɵɵelementEnd();
|
|
215
|
-
i0.ɵɵelementStart(4, "
|
|
216
|
-
i0.ɵɵtext(
|
|
217
|
-
i0.ɵɵelementEnd()();
|
|
218
|
-
i0.ɵɵelementStart(6, "div", 6)(7, "button", 7);
|
|
219
|
-
i0.ɵɵlistener("click", function VersionHistoryRestoreResourceComponent_Conditional_2_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.Refresh()); });
|
|
220
|
-
i0.ɵɵelement(8, "i", 8);
|
|
221
|
-
i0.ɵɵelementEnd()()();
|
|
222
|
-
i0.ɵɵelementStart(9, "div", 9)(10, "div", 10)(11, "div", 11);
|
|
223
|
-
i0.ɵɵelement(12, "i", 12);
|
|
224
|
-
i0.ɵɵelementEnd();
|
|
225
|
-
i0.ɵɵelementStart(13, "div", 13)(14, "div", 14);
|
|
226
|
-
i0.ɵɵtext(15);
|
|
215
|
+
i0.ɵɵelementStart(4, "div", 14)(5, "div", 15);
|
|
216
|
+
i0.ɵɵtext(6);
|
|
227
217
|
i0.ɵɵelementEnd();
|
|
228
|
-
i0.ɵɵelementStart(
|
|
229
|
-
i0.ɵɵtext(
|
|
218
|
+
i0.ɵɵelementStart(7, "div", 16);
|
|
219
|
+
i0.ɵɵtext(8, "Total Restores");
|
|
230
220
|
i0.ɵɵelementEnd()()();
|
|
231
|
-
i0.ɵɵelementStart(
|
|
232
|
-
i0.ɵɵelement(
|
|
221
|
+
i0.ɵɵelementStart(9, "div", 11)(10, "div", 17);
|
|
222
|
+
i0.ɵɵelement(11, "i", 18);
|
|
233
223
|
i0.ɵɵelementEnd();
|
|
234
|
-
i0.ɵɵelementStart(
|
|
235
|
-
i0.ɵɵtext(
|
|
224
|
+
i0.ɵɵelementStart(12, "div", 14)(13, "div", 15);
|
|
225
|
+
i0.ɵɵtext(14);
|
|
236
226
|
i0.ɵɵelementEnd();
|
|
237
|
-
i0.ɵɵelementStart(
|
|
238
|
-
i0.ɵɵtext(
|
|
227
|
+
i0.ɵɵelementStart(15, "div", 16);
|
|
228
|
+
i0.ɵɵtext(16, "Successful");
|
|
239
229
|
i0.ɵɵelementEnd()()();
|
|
240
|
-
i0.ɵɵelementStart(
|
|
241
|
-
i0.ɵɵelement(
|
|
230
|
+
i0.ɵɵelementStart(17, "div", 11)(18, "div", 19);
|
|
231
|
+
i0.ɵɵelement(19, "i", 20);
|
|
242
232
|
i0.ɵɵelementEnd();
|
|
243
|
-
i0.ɵɵelementStart(
|
|
244
|
-
i0.ɵɵtext(
|
|
233
|
+
i0.ɵɵelementStart(20, "div", 14)(21, "div", 15);
|
|
234
|
+
i0.ɵɵtext(22);
|
|
245
235
|
i0.ɵɵelementEnd();
|
|
246
|
-
i0.ɵɵelementStart(
|
|
247
|
-
i0.ɵɵtext(
|
|
236
|
+
i0.ɵɵelementStart(23, "div", 16);
|
|
237
|
+
i0.ɵɵtext(24, "Failed");
|
|
248
238
|
i0.ɵɵelementEnd()()();
|
|
249
|
-
i0.ɵɵelementStart(
|
|
250
|
-
i0.ɵɵelement(
|
|
239
|
+
i0.ɵɵelementStart(25, "div", 11)(26, "div", 21);
|
|
240
|
+
i0.ɵɵelement(27, "i", 22);
|
|
251
241
|
i0.ɵɵelementEnd();
|
|
252
|
-
i0.ɵɵelementStart(
|
|
253
|
-
i0.ɵɵtext(
|
|
242
|
+
i0.ɵɵelementStart(28, "div", 14)(29, "div", 15);
|
|
243
|
+
i0.ɵɵtext(30);
|
|
254
244
|
i0.ɵɵelementEnd();
|
|
255
|
-
i0.ɵɵelementStart(
|
|
256
|
-
i0.ɵɵtext(
|
|
245
|
+
i0.ɵɵelementStart(31, "div", 16);
|
|
246
|
+
i0.ɵɵtext(32, "Partial");
|
|
257
247
|
i0.ɵɵelementEnd()()()();
|
|
258
|
-
i0.ɵɵ
|
|
259
|
-
i0.ɵɵ
|
|
260
|
-
i0.ɵɵelement(44, "i", 17);
|
|
261
|
-
i0.ɵɵtext(45, " Complete ");
|
|
262
|
-
i0.ɵɵelementEnd();
|
|
263
|
-
i0.ɵɵelementStart(46, "button", 23);
|
|
264
|
-
i0.ɵɵlistener("click", function VersionHistoryRestoreResourceComponent_Conditional_2_Template_button_click_46_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.OnStatusFilterChange("Error")); });
|
|
265
|
-
i0.ɵɵelement(47, "i", 19);
|
|
266
|
-
i0.ɵɵtext(48, " Error ");
|
|
267
|
-
i0.ɵɵelementEnd();
|
|
268
|
-
i0.ɵɵelementStart(49, "button", 23);
|
|
269
|
-
i0.ɵɵlistener("click", function VersionHistoryRestoreResourceComponent_Conditional_2_Template_button_click_49_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.OnStatusFilterChange("Partial")); });
|
|
270
|
-
i0.ɵɵelement(50, "i", 21);
|
|
271
|
-
i0.ɵɵtext(51, " Partial ");
|
|
272
|
-
i0.ɵɵelementEnd()();
|
|
273
|
-
i0.ɵɵconditionalCreate(52, VersionHistoryRestoreResourceComponent_Conditional_2_Conditional_52_Template, 3, 0, "div", 24);
|
|
274
|
-
i0.ɵɵconditionalCreate(53, VersionHistoryRestoreResourceComponent_Conditional_2_Conditional_53_Template, 6, 2, "div", 25);
|
|
248
|
+
i0.ɵɵconditionalCreate(33, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_33_Template, 3, 0, "div", 23);
|
|
249
|
+
i0.ɵɵconditionalCreate(34, VersionHistoryRestoreResourceComponent_Conditional_12_Conditional_34_Template, 6, 2, "div", 24);
|
|
275
250
|
} if (rf & 2) {
|
|
276
|
-
const
|
|
277
|
-
i0.ɵɵadvance(
|
|
278
|
-
i0.ɵɵtextInterpolate(
|
|
251
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
252
|
+
i0.ɵɵadvance(6);
|
|
253
|
+
i0.ɵɵtextInterpolate(ctx_r2.TotalRestores);
|
|
279
254
|
i0.ɵɵadvance(8);
|
|
280
|
-
i0.ɵɵtextInterpolate(
|
|
255
|
+
i0.ɵɵtextInterpolate(ctx_r2.SuccessfulRestores);
|
|
281
256
|
i0.ɵɵadvance(8);
|
|
282
|
-
i0.ɵɵtextInterpolate(
|
|
257
|
+
i0.ɵɵtextInterpolate(ctx_r2.FailedRestores);
|
|
283
258
|
i0.ɵɵadvance(8);
|
|
284
|
-
i0.ɵɵtextInterpolate(
|
|
285
|
-
i0.ɵɵadvance(4);
|
|
286
|
-
i0.ɵɵclassProp("active", ctx_r1.StatusFilter === "Complete");
|
|
287
|
-
i0.ɵɵadvance(3);
|
|
288
|
-
i0.ɵɵclassProp("active", ctx_r1.StatusFilter === "Error");
|
|
259
|
+
i0.ɵɵtextInterpolate(ctx_r2.PartialRestores);
|
|
289
260
|
i0.ɵɵadvance(3);
|
|
290
|
-
i0.ɵɵ
|
|
291
|
-
i0.ɵɵadvance(3);
|
|
292
|
-
i0.ɵɵconditional(ctx_r1.FilteredRestores.length > 0 ? 52 : -1);
|
|
261
|
+
i0.ɵɵconditional(ctx_r2.FilteredRestores.length > 0 ? 33 : -1);
|
|
293
262
|
i0.ɵɵadvance();
|
|
294
|
-
i0.ɵɵconditional(
|
|
263
|
+
i0.ɵɵconditional(ctx_r2.FilteredRestores.length === 0 && !ctx_r2.IsLoading ? 34 : -1);
|
|
295
264
|
} }
|
|
296
265
|
let VersionHistoryRestoreResourceComponent = class VersionHistoryRestoreResourceComponent extends BaseResourceComponent {
|
|
297
266
|
static { VersionHistoryRestoreResourceComponent_1 = this; }
|
|
@@ -450,17 +419,42 @@ let VersionHistoryRestoreResourceComponent = class VersionHistoryRestoreResource
|
|
|
450
419
|
this.LoadData();
|
|
451
420
|
}
|
|
452
421
|
static ɵfac = function VersionHistoryRestoreResourceComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || VersionHistoryRestoreResourceComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
453
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: VersionHistoryRestoreResourceComponent, selectors: [["mj-version-history-restore-resource"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls:
|
|
454
|
-
i0.ɵɵelementStart(0, "
|
|
455
|
-
i0.ɵɵ
|
|
456
|
-
i0.ɵɵ
|
|
422
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: VersionHistoryRestoreResourceComponent, selectors: [["mj-version-history-restore-resource"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 13, vars: 8, consts: [["Title", "Restore History", "Icon", "fa-solid fa-clock-rotate-left", "Subtitle", "Track all restore operations and their outcomes"], ["meta", ""], ["Label", "restores", 3, "Count", "Total"], ["actions", ""], [3, "Clicked", "Loading"], ["toolbar", ""], ["Label", "Complete", "Icon", "fa-solid fa-circle-check", 3, "Clicked", "Active"], ["Label", "Error", "Icon", "fa-solid fa-circle-xmark", 3, "Clicked", "Active"], ["Label", "Partial", "Icon", "fa-solid fa-circle-half-stroke", 3, "Clicked", "Active"], ["text", "Loading restore history..."], [1, "kpi-row"], [1, "kpi-card"], [1, "kpi-icon", 2, "background", "color-mix(in srgb, var(--mj-brand-primary) 10%, transparent)", "color", "var(--mj-brand-primary)"], [1, "fa-solid", "fa-clock-rotate-left"], [1, "kpi-content"], [1, "kpi-value"], [1, "kpi-label"], [1, "kpi-icon", 2, "background", "color-mix(in srgb, var(--mj-status-success) 10%, transparent)", "color", "var(--mj-status-success)"], [1, "fa-solid", "fa-circle-check"], [1, "kpi-icon", 2, "background", "color-mix(in srgb, var(--mj-status-error) 10%, transparent)", "color", "var(--mj-status-error)"], [1, "fa-solid", "fa-circle-xmark"], [1, "kpi-icon", 2, "background", "color-mix(in srgb, var(--mj-status-warning) 10%, transparent)", "color", "var(--mj-status-warning)"], [1, "fa-solid", "fa-circle-half-stroke"], [1, "restore-list"], [1, "empty-state"], [1, "restore-card", 3, "ngClass"], [1, "restore-header", 3, "click"], [1, "restore-header-left"], [1, "status-icon", 3, "ngClass"], [1, "restore-info"], [1, "restore-label-name"], [1, "restore-date"], [1, "restore-header-right"], [1, "restore-progress-bar"], [1, "progress-fill", 3, "ngClass"], [1, "restore-count"], [1, "expand-icon", 3, "ngClass"], [1, "restore-details"], [1, "detail-grid"], [1, "detail-item"], [1, "detail-label"], [1, "detail-value", 3, "ngClass"], [1, "detail-value"], [1, "error-log"], [1, "detail-value", "detail-mono"], [1, "error-log-header"], [1, "fa-solid", "fa-triangle-exclamation"], [1, "error-log-content"], [1, "fa-solid", "fa-clock-rotate-left", "empty-icon"]], template: function VersionHistoryRestoreResourceComponent_Template(rf, ctx) { if (rf & 1) {
|
|
423
|
+
i0.ɵɵelementStart(0, "mj-page-layout")(1, "mj-page-header", 0)(2, "div", 1);
|
|
424
|
+
i0.ɵɵelement(3, "mj-stat-badge", 2);
|
|
425
|
+
i0.ɵɵelementEnd();
|
|
426
|
+
i0.ɵɵelementStart(4, "div", 3)(5, "mj-refresh-button", 4);
|
|
427
|
+
i0.ɵɵlistener("Clicked", function VersionHistoryRestoreResourceComponent_Template_mj_refresh_button_Clicked_5_listener() { return ctx.Refresh(); });
|
|
428
|
+
i0.ɵɵelementEnd()();
|
|
429
|
+
i0.ɵɵelementStart(6, "div", 5)(7, "mj-filter-chip", 6);
|
|
430
|
+
i0.ɵɵlistener("Clicked", function VersionHistoryRestoreResourceComponent_Template_mj_filter_chip_Clicked_7_listener() { return ctx.OnStatusFilterChange("Complete"); });
|
|
457
431
|
i0.ɵɵelementEnd();
|
|
432
|
+
i0.ɵɵelementStart(8, "mj-filter-chip", 7);
|
|
433
|
+
i0.ɵɵlistener("Clicked", function VersionHistoryRestoreResourceComponent_Template_mj_filter_chip_Clicked_8_listener() { return ctx.OnStatusFilterChange("Error"); });
|
|
434
|
+
i0.ɵɵelementEnd();
|
|
435
|
+
i0.ɵɵelementStart(9, "mj-filter-chip", 8);
|
|
436
|
+
i0.ɵɵlistener("Clicked", function VersionHistoryRestoreResourceComponent_Template_mj_filter_chip_Clicked_9_listener() { return ctx.OnStatusFilterChange("Partial"); });
|
|
437
|
+
i0.ɵɵelementEnd()()();
|
|
438
|
+
i0.ɵɵelementStart(10, "mj-page-body");
|
|
439
|
+
i0.ɵɵconditionalCreate(11, VersionHistoryRestoreResourceComponent_Conditional_11_Template, 1, 0, "mj-loading", 9);
|
|
440
|
+
i0.ɵɵconditionalCreate(12, VersionHistoryRestoreResourceComponent_Conditional_12_Template, 35, 6);
|
|
441
|
+
i0.ɵɵelementEnd()();
|
|
458
442
|
} if (rf & 2) {
|
|
443
|
+
i0.ɵɵadvance(3);
|
|
444
|
+
i0.ɵɵproperty("Count", ctx.FilteredRestores.length)("Total", ctx.Restores.length);
|
|
445
|
+
i0.ɵɵadvance(2);
|
|
446
|
+
i0.ɵɵproperty("Loading", ctx.IsLoading);
|
|
447
|
+
i0.ɵɵadvance(2);
|
|
448
|
+
i0.ɵɵproperty("Active", ctx.StatusFilter === "Complete");
|
|
449
|
+
i0.ɵɵadvance();
|
|
450
|
+
i0.ɵɵproperty("Active", ctx.StatusFilter === "Error");
|
|
459
451
|
i0.ɵɵadvance();
|
|
460
|
-
i0.ɵɵ
|
|
452
|
+
i0.ɵɵproperty("Active", ctx.StatusFilter === "Partial");
|
|
453
|
+
i0.ɵɵadvance(2);
|
|
454
|
+
i0.ɵɵconditional(ctx.IsLoading ? 11 : -1);
|
|
461
455
|
i0.ɵɵadvance();
|
|
462
|
-
i0.ɵɵconditional(!ctx.IsLoading ?
|
|
463
|
-
} }, dependencies: [i1.NgClass, i2.
|
|
456
|
+
i0.ɵɵconditional(!ctx.IsLoading ? 12 : -1);
|
|
457
|
+
} }, dependencies: [i1.NgClass, i2.MJPageHeaderComponent, i2.MJPageLayoutComponent, i2.MJPageBodyComponent, i2.MJFilterChipComponent, i2.MJStatBadgeComponent, i2.MJRefreshButtonComponent, i3.LoadingComponent, i1.SlicePipe], styles: ["\n\n.kpi-row[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 16px;\n margin-bottom: 24px;\n}\n\n.kpi-card[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 20px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 12px;\n}\n\n.kpi-icon[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 48px;\n height: 48px;\n border-radius: 12px;\n font-size: 20px;\n flex-shrink: 0;\n}\n\n.kpi-value[_ngcontent-%COMP%] {\n font-size: 28px;\n font-weight: 700;\n color: var(--mj-text-primary);\n line-height: 1;\n}\n\n.kpi-label[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-secondary);\n margin-top: 4px;\n}\n\n\n\n.restore-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.restore-card[_ngcontent-%COMP%] {\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 12px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.restore-card[_ngcontent-%COMP%]:hover {\n border-color: var(--mj-border-strong);\n}\n\n.restore-card.expanded[_ngcontent-%COMP%] {\n box-shadow: var(--mj-shadow-md);\n}\n\n.restore-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n cursor: pointer;\n}\n\n.restore-header-left[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n}\n\n.status-icon[_ngcontent-%COMP%] {\n font-size: 20px;\n}\n\n.status-success[_ngcontent-%COMP%] { color: var(--mj-status-success); }\n.status-failed[_ngcontent-%COMP%] { color: var(--mj-status-error); }\n.status-progress[_ngcontent-%COMP%] { color: var(--mj-brand-primary); }\n.status-pending[_ngcontent-%COMP%] { color: var(--mj-status-warning); }\n\n.restore-info[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.restore-label-name[_ngcontent-%COMP%] {\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.dry-run-badge[_ngcontent-%COMP%] {\n font-size: 10px;\n font-weight: 700;\n padding: 2px 8px;\n background: color-mix(in srgb, var(--mj-status-warning) 10%, transparent);\n color: var(--mj-status-warning);\n border-radius: 8px;\n letter-spacing: 0.5px;\n}\n\n.restore-date[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-secondary);\n}\n\n.restore-header-right[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n}\n\n.restore-progress-bar[_ngcontent-%COMP%] {\n width: 80px;\n height: 6px;\n background: var(--mj-bg-surface-sunken);\n border-radius: 3px;\n overflow: hidden;\n}\n\n.progress-fill[_ngcontent-%COMP%] {\n height: 100%;\n border-radius: 3px;\n transition: width 0.3s ease;\n}\n\n.progress-fill.status-success[_ngcontent-%COMP%] { background: var(--mj-status-success); }\n.progress-fill.status-failed[_ngcontent-%COMP%] { background: var(--mj-status-error); }\n.progress-fill.status-progress[_ngcontent-%COMP%] { background: var(--mj-brand-primary); }\n.progress-fill.status-pending[_ngcontent-%COMP%] { background: var(--mj-status-warning); }\n\n.restore-count[_ngcontent-%COMP%] {\n font-size: 13px;\n color: var(--mj-text-secondary);\n white-space: nowrap;\n}\n\n.expand-icon[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n font-size: 12px;\n}\n\n\n\n.restore-details[_ngcontent-%COMP%] {\n padding: 0 20px 20px;\n border-top: 1px solid var(--mj-border-default);\n}\n\n.detail-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));\n gap: 16px;\n padding-top: 16px;\n}\n\n.detail-item[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.detail-label[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.detail-value[_ngcontent-%COMP%] {\n font-size: 15px;\n color: var(--mj-text-primary);\n font-weight: 500;\n}\n\n.detail-mono[_ngcontent-%COMP%] {\n font-family: 'SF Mono', 'Fira Code', monospace;\n font-size: 13px;\n}\n\n.text-error[_ngcontent-%COMP%] {\n color: var(--mj-status-error);\n}\n\n\n\n.error-log[_ngcontent-%COMP%] {\n margin-top: 16px;\n border: 1px solid color-mix(in srgb, var(--mj-status-error) 20%, transparent);\n border-radius: 8px;\n overflow: hidden;\n}\n\n.error-log-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 14px;\n background: color-mix(in srgb, var(--mj-status-error) 6%, transparent);\n color: var(--mj-status-error);\n font-size: 13px;\n font-weight: 600;\n}\n\n.error-log-content[_ngcontent-%COMP%] {\n margin: 0;\n padding: 12px 14px;\n font-size: 12px;\n font-family: 'SF Mono', 'Fira Code', monospace;\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface-card);\n overflow-x: auto;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n\n\n.empty-state[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 20px;\n text-align: center;\n}\n\n.empty-icon[_ngcontent-%COMP%] {\n font-size: 48px;\n color: var(--mj-text-muted);\n margin-bottom: 16px;\n}\n\n.empty-state[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n font-size: 18px;\n font-weight: 600;\n color: var(--mj-text-primary);\n margin: 0 0 8px 0;\n}\n\n.empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n font-size: 14px;\n color: var(--mj-text-secondary);\n margin: 0;\n max-width: 400px;\n}\n\n@media (max-width: 768px) {\n .kpi-row[_ngcontent-%COMP%] { grid-template-columns: repeat(2, 1fr); }\n}"], changeDetection: 0 });
|
|
464
458
|
};
|
|
465
459
|
VersionHistoryRestoreResourceComponent = VersionHistoryRestoreResourceComponent_1 = __decorate([
|
|
466
460
|
RegisterClass(BaseResourceComponent, 'VersionHistoryRestoreResource')
|
|
@@ -468,7 +462,7 @@ VersionHistoryRestoreResourceComponent = VersionHistoryRestoreResourceComponent_
|
|
|
468
462
|
export { VersionHistoryRestoreResourceComponent };
|
|
469
463
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(VersionHistoryRestoreResourceComponent, [{
|
|
470
464
|
type: Component,
|
|
471
|
-
args: [{ standalone: false, selector: 'mj-version-history-restore-resource', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"restore-container\">\n @if (IsLoading) {\n <mj-loading text=\"Loading restore history...\"></mj-loading>\n }\n\n @if (!IsLoading) {\n <!-- Header -->\n <div class=\"page-header\">\n <div class=\"header-left\">\n <h2 class=\"page-title\">Restore History</h2>\n <p class=\"page-subtitle\">Track all restore operations and their outcomes</p>\n </div>\n <div class=\"header-actions\">\n <button class=\"btn-icon\" (click)=\"Refresh()\" title=\"Refresh\">\n <i class=\"fa-solid fa-refresh\"></i>\n </button>\n </div>\n </div>\n <!-- KPI Cards -->\n <div class=\"kpi-row\">\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-brand-primary) 10%, transparent); color: var(--mj-brand-primary);\">\n <i class=\"fa-solid fa-clock-rotate-left\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{TotalRestores}}</div>\n <div class=\"kpi-label\">Total Restores</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-status-success) 10%, transparent); color: var(--mj-status-success);\">\n <i class=\"fa-solid fa-circle-check\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{SuccessfulRestores}}</div>\n <div class=\"kpi-label\">Successful</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-status-error) 10%, transparent); color: var(--mj-status-error);\">\n <i class=\"fa-solid fa-circle-xmark\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{FailedRestores}}</div>\n <div class=\"kpi-label\">Failed</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-status-warning) 10%, transparent); color: var(--mj-status-warning);\">\n <i class=\"fa-solid fa-circle-half-stroke\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{PartialRestores}}</div>\n <div class=\"kpi-label\">Partial</div>\n </div>\n </div>\n </div>\n <!-- Filters -->\n <div class=\"filter-row\">\n <button class=\"filter-chip\"\n [class.active]=\"StatusFilter === 'Complete'\"\n (click)=\"OnStatusFilterChange('Complete')\">\n <i class=\"fa-solid fa-circle-check\"></i> Complete\n </button>\n <button class=\"filter-chip\"\n [class.active]=\"StatusFilter === 'Error'\"\n (click)=\"OnStatusFilterChange('Error')\">\n <i class=\"fa-solid fa-circle-xmark\"></i> Error\n </button>\n <button class=\"filter-chip\"\n [class.active]=\"StatusFilter === 'Partial'\"\n (click)=\"OnStatusFilterChange('Partial')\">\n <i class=\"fa-solid fa-circle-half-stroke\"></i> Partial\n </button>\n </div>\n <!-- Restore List -->\n @if (FilteredRestores.length > 0) {\n <div class=\"restore-list\">\n @for (restore of FilteredRestores; track restore) {\n <div class=\"restore-card\"\n [ngClass]=\"{'expanded': IsExpanded(restore.ID)}\">\n <div class=\"restore-header\" (click)=\"ToggleExpand(restore.ID)\">\n <div class=\"restore-header-left\">\n <i [class]=\"GetStatusIcon(restore.Status)\"\n [ngClass]=\"GetStatusClass(restore.Status)\"\n class=\"status-icon\"></i>\n <div class=\"restore-info\">\n <div class=\"restore-label-name\">\n {{restore.VersionLabel}}\n </div>\n @if (restore.StartedAt) {\n <div class=\"restore-date\">{{FormatDate(restore.StartedAt)}}</div>\n }\n </div>\n </div>\n <div class=\"restore-header-right\">\n <div class=\"restore-progress-bar\">\n <div class=\"progress-fill\"\n [ngClass]=\"GetStatusClass(restore.Status)\"\n [style.width.%]=\"GetProgressPercent(restore)\">\n </div>\n </div>\n <span class=\"restore-count\">\n {{restore.CompletedItems ?? 0}} / {{restore.TotalItems ?? 0}} items\n </span>\n <i class=\"fa-solid\"\n [ngClass]=\"IsExpanded(restore.ID) ? 'fa-chevron-up' : 'fa-chevron-down'\"\n class=\"expand-icon\">\n </i>\n </div>\n </div>\n <!-- Expanded Details -->\n @if (IsExpanded(restore.ID)) {\n <div class=\"restore-details\">\n <div class=\"detail-grid\">\n <div class=\"detail-item\">\n <span class=\"detail-label\">Status</span>\n <span class=\"detail-value\" [ngClass]=\"GetStatusClass(restore.Status)\">\n {{restore.Status}}\n </span>\n </div>\n <div class=\"detail-item\">\n <span class=\"detail-label\">Items Completed</span>\n <span class=\"detail-value\">{{restore.CompletedItems ?? 0}}</span>\n </div>\n <div class=\"detail-item\">\n <span class=\"detail-label\">Items Failed</span>\n <span class=\"detail-value\" [class.text-error]=\"(restore.FailedItems ?? 0) > 0\">\n {{restore.FailedItems ?? 0}}\n </span>\n </div>\n @if (restore.User) {\n <div class=\"detail-item\">\n <span class=\"detail-label\">Restored By</span>\n <span class=\"detail-value\">{{restore.User}}</span>\n </div>\n }\n @if (restore.PreRestoreLabelID) {\n <div class=\"detail-item\">\n <span class=\"detail-label\">Pre-Restore Label</span>\n @if (restore.PreRestoreLabel) {\n <span class=\"detail-value detail-mono\">\n {{restore.PreRestoreLabel}}\n </span>\n }\n @if (!restore.PreRestoreLabel) {\n <span class=\"detail-value detail-mono\">\n {{restore.PreRestoreLabelID | slice:0:20}}...\n </span>\n }\n </div>\n }\n </div>\n @if (restore.ErrorLog) {\n <div class=\"error-log\">\n <div class=\"error-log-header\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i>\n Error Log\n </div>\n <pre class=\"error-log-content\">{{restore.ErrorLog}}</pre>\n </div>\n }\n </div>\n }\n </div>\n }\n </div>\n }\n <!-- Empty State -->\n @if (FilteredRestores.length === 0 && !IsLoading) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-clock-rotate-left empty-icon\"></i>\n <h3>No restore operations found</h3>\n @if (StatusFilter) {\n <p>\n Try adjusting your filters.\n </p>\n }\n @if (!StatusFilter) {\n <p>\n No restores have been performed yet. Use the VersionHistoryEngine to restore records to a labeled state.\n </p>\n }\n </div>\n }\n }\n</div>\n", styles: [".restore-container {\n padding: 24px;\n height: 100%;\n overflow-y: auto;\n}\n\n/* Header */\n.page-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 24px;\n}\n\n.header-left { flex: 1; }\n\n.page-title {\n font-size: 24px;\n font-weight: 700;\n color: var(--mj-text-primary);\n margin: 0 0 4px 0;\n}\n\n.page-subtitle {\n font-size: 14px;\n color: var(--mj-text-secondary);\n margin: 0;\n}\n\n.header-actions { display: flex; gap: 12px; }\n\n.btn-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 8px;\n cursor: pointer;\n transition: all 0.2s ease;\n color: var(--mj-text-secondary);\n}\n\n.btn-icon:hover {\n background: var(--mj-bg-surface-sunken);\n color: var(--mj-text-primary);\n}\n\n/* KPI Row */\n.kpi-row {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 16px;\n margin-bottom: 24px;\n}\n\n.kpi-card {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 20px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 12px;\n}\n\n.kpi-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 48px;\n height: 48px;\n border-radius: 12px;\n font-size: 20px;\n flex-shrink: 0;\n}\n\n.kpi-value {\n font-size: 28px;\n font-weight: 700;\n color: var(--mj-text-primary);\n line-height: 1;\n}\n\n.kpi-label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n margin-top: 4px;\n}\n\n/* Filter Row */\n.filter-row {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n margin-bottom: 20px;\n}\n\n.filter-chip {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 20px;\n cursor: pointer;\n font-size: 13px;\n color: var(--mj-text-secondary);\n transition: all 0.2s ease;\n}\n\n.filter-chip:hover {\n background: var(--mj-bg-surface-sunken);\n}\n\n.filter-chip.active {\n background: var(--mj-brand-primary);\n border-color: var(--mj-brand-primary);\n color: var(--mj-text-inverse);\n}\n\n/* Restore List */\n.restore-list {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.restore-card {\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 12px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.restore-card:hover {\n border-color: var(--mj-border-strong);\n}\n\n.restore-card.expanded {\n box-shadow: var(--mj-shadow-md);\n}\n\n.restore-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n cursor: pointer;\n}\n\n.restore-header-left {\n display: flex;\n align-items: center;\n gap: 14px;\n}\n\n.status-icon {\n font-size: 20px;\n}\n\n.status-success { color: var(--mj-status-success); }\n.status-failed { color: var(--mj-status-error); }\n.status-progress { color: var(--mj-brand-primary); }\n.status-pending { color: var(--mj-status-warning); }\n\n.restore-info {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.restore-label-name {\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.dry-run-badge {\n font-size: 10px;\n font-weight: 700;\n padding: 2px 8px;\n background: color-mix(in srgb, var(--mj-status-warning) 10%, transparent);\n color: var(--mj-status-warning);\n border-radius: 8px;\n letter-spacing: 0.5px;\n}\n\n.restore-date {\n font-size: 13px;\n color: var(--mj-text-secondary);\n}\n\n.restore-header-right {\n display: flex;\n align-items: center;\n gap: 14px;\n}\n\n.restore-progress-bar {\n width: 80px;\n height: 6px;\n background: var(--mj-bg-surface-sunken);\n border-radius: 3px;\n overflow: hidden;\n}\n\n.progress-fill {\n height: 100%;\n border-radius: 3px;\n transition: width 0.3s ease;\n}\n\n.progress-fill.status-success { background: var(--mj-status-success); }\n.progress-fill.status-failed { background: var(--mj-status-error); }\n.progress-fill.status-progress { background: var(--mj-brand-primary); }\n.progress-fill.status-pending { background: var(--mj-status-warning); }\n\n.restore-count {\n font-size: 13px;\n color: var(--mj-text-secondary);\n white-space: nowrap;\n}\n\n.expand-icon {\n color: var(--mj-text-muted);\n font-size: 12px;\n}\n\n/* Expanded Details */\n.restore-details {\n padding: 0 20px 20px;\n border-top: 1px solid var(--mj-border-default);\n}\n\n.detail-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));\n gap: 16px;\n padding-top: 16px;\n}\n\n.detail-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.detail-label {\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.detail-value {\n font-size: 15px;\n color: var(--mj-text-primary);\n font-weight: 500;\n}\n\n.detail-mono {\n font-family: 'SF Mono', 'Fira Code', monospace;\n font-size: 13px;\n}\n\n.text-error {\n color: var(--mj-status-error);\n}\n\n/* Error Log */\n.error-log {\n margin-top: 16px;\n border: 1px solid color-mix(in srgb, var(--mj-status-error) 20%, transparent);\n border-radius: 8px;\n overflow: hidden;\n}\n\n.error-log-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 14px;\n background: color-mix(in srgb, var(--mj-status-error) 6%, transparent);\n color: var(--mj-status-error);\n font-size: 13px;\n font-weight: 600;\n}\n\n.error-log-content {\n margin: 0;\n padding: 12px 14px;\n font-size: 12px;\n font-family: 'SF Mono', 'Fira Code', monospace;\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface-card);\n overflow-x: auto;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Empty State */\n.empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 20px;\n text-align: center;\n}\n\n.empty-icon {\n font-size: 48px;\n color: var(--mj-text-muted);\n margin-bottom: 16px;\n}\n\n.empty-state h3 {\n font-size: 18px;\n font-weight: 600;\n color: var(--mj-text-primary);\n margin: 0 0 8px 0;\n}\n\n.empty-state p {\n font-size: 14px;\n color: var(--mj-text-secondary);\n margin: 0;\n max-width: 400px;\n}\n\n@media (max-width: 768px) {\n .kpi-row { grid-template-columns: repeat(2, 1fr); }\n}\n"] }]
|
|
465
|
+
args: [{ standalone: false, selector: 'mj-version-history-restore-resource', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mj-page-layout>\n <mj-page-header\n Title=\"Restore History\"\n Icon=\"fa-solid fa-clock-rotate-left\"\n Subtitle=\"Track all restore operations and their outcomes\">\n <div meta>\n <mj-stat-badge\n [Count]=\"FilteredRestores.length\"\n [Total]=\"Restores.length\"\n Label=\"restores\">\n </mj-stat-badge>\n </div>\n <div actions>\n <mj-refresh-button [Loading]=\"IsLoading\" (Clicked)=\"Refresh()\"></mj-refresh-button>\n </div>\n <div toolbar>\n <mj-filter-chip\n Label=\"Complete\"\n Icon=\"fa-solid fa-circle-check\"\n [Active]=\"StatusFilter === 'Complete'\"\n (Clicked)=\"OnStatusFilterChange('Complete')\">\n </mj-filter-chip>\n <mj-filter-chip\n Label=\"Error\"\n Icon=\"fa-solid fa-circle-xmark\"\n [Active]=\"StatusFilter === 'Error'\"\n (Clicked)=\"OnStatusFilterChange('Error')\">\n </mj-filter-chip>\n <mj-filter-chip\n Label=\"Partial\"\n Icon=\"fa-solid fa-circle-half-stroke\"\n [Active]=\"StatusFilter === 'Partial'\"\n (Clicked)=\"OnStatusFilterChange('Partial')\">\n </mj-filter-chip>\n </div>\n </mj-page-header>\n\n <mj-page-body>\n @if (IsLoading) {\n <mj-loading text=\"Loading restore history...\"></mj-loading>\n }\n\n @if (!IsLoading) {\n <!-- KPI Cards -->\n <div class=\"kpi-row\">\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-brand-primary) 10%, transparent); color: var(--mj-brand-primary);\">\n <i class=\"fa-solid fa-clock-rotate-left\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{TotalRestores}}</div>\n <div class=\"kpi-label\">Total Restores</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-status-success) 10%, transparent); color: var(--mj-status-success);\">\n <i class=\"fa-solid fa-circle-check\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{SuccessfulRestores}}</div>\n <div class=\"kpi-label\">Successful</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-status-error) 10%, transparent); color: var(--mj-status-error);\">\n <i class=\"fa-solid fa-circle-xmark\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{FailedRestores}}</div>\n <div class=\"kpi-label\">Failed</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\" style=\"background: color-mix(in srgb, var(--mj-status-warning) 10%, transparent); color: var(--mj-status-warning);\">\n <i class=\"fa-solid fa-circle-half-stroke\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{PartialRestores}}</div>\n <div class=\"kpi-label\">Partial</div>\n </div>\n </div>\n </div>\n <!-- Restore List -->\n @if (FilteredRestores.length > 0) {\n <div class=\"restore-list\">\n @for (restore of FilteredRestores; track restore) {\n <div class=\"restore-card\"\n [ngClass]=\"{'expanded': IsExpanded(restore.ID)}\">\n <div class=\"restore-header\" (click)=\"ToggleExpand(restore.ID)\">\n <div class=\"restore-header-left\">\n <i [class]=\"GetStatusIcon(restore.Status)\"\n [ngClass]=\"GetStatusClass(restore.Status)\"\n class=\"status-icon\"></i>\n <div class=\"restore-info\">\n <div class=\"restore-label-name\">\n {{restore.VersionLabel}}\n </div>\n @if (restore.StartedAt) {\n <div class=\"restore-date\">{{FormatDate(restore.StartedAt)}}</div>\n }\n </div>\n </div>\n <div class=\"restore-header-right\">\n <div class=\"restore-progress-bar\">\n <div class=\"progress-fill\"\n [ngClass]=\"GetStatusClass(restore.Status)\"\n [style.width.%]=\"GetProgressPercent(restore)\">\n </div>\n </div>\n <span class=\"restore-count\">\n {{restore.CompletedItems ?? 0}} / {{restore.TotalItems ?? 0}} items\n </span>\n <i class=\"fa-solid\"\n [ngClass]=\"IsExpanded(restore.ID) ? 'fa-chevron-up' : 'fa-chevron-down'\"\n class=\"expand-icon\">\n </i>\n </div>\n </div>\n <!-- Expanded Details -->\n @if (IsExpanded(restore.ID)) {\n <div class=\"restore-details\">\n <div class=\"detail-grid\">\n <div class=\"detail-item\">\n <span class=\"detail-label\">Status</span>\n <span class=\"detail-value\" [ngClass]=\"GetStatusClass(restore.Status)\">\n {{restore.Status}}\n </span>\n </div>\n <div class=\"detail-item\">\n <span class=\"detail-label\">Items Completed</span>\n <span class=\"detail-value\">{{restore.CompletedItems ?? 0}}</span>\n </div>\n <div class=\"detail-item\">\n <span class=\"detail-label\">Items Failed</span>\n <span class=\"detail-value\" [class.text-error]=\"(restore.FailedItems ?? 0) > 0\">\n {{restore.FailedItems ?? 0}}\n </span>\n </div>\n @if (restore.User) {\n <div class=\"detail-item\">\n <span class=\"detail-label\">Restored By</span>\n <span class=\"detail-value\">{{restore.User}}</span>\n </div>\n }\n @if (restore.PreRestoreLabelID) {\n <div class=\"detail-item\">\n <span class=\"detail-label\">Pre-Restore Label</span>\n @if (restore.PreRestoreLabel) {\n <span class=\"detail-value detail-mono\">\n {{restore.PreRestoreLabel}}\n </span>\n }\n @if (!restore.PreRestoreLabel) {\n <span class=\"detail-value detail-mono\">\n {{restore.PreRestoreLabelID | slice:0:20}}...\n </span>\n }\n </div>\n }\n </div>\n @if (restore.ErrorLog) {\n <div class=\"error-log\">\n <div class=\"error-log-header\">\n <i class=\"fa-solid fa-triangle-exclamation\"></i>\n Error Log\n </div>\n <pre class=\"error-log-content\">{{restore.ErrorLog}}</pre>\n </div>\n }\n </div>\n }\n </div>\n }\n </div>\n }\n <!-- Empty State -->\n @if (FilteredRestores.length === 0 && !IsLoading) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-clock-rotate-left empty-icon\"></i>\n <h3>No restore operations found</h3>\n @if (StatusFilter) {\n <p>\n Try adjusting your filters.\n </p>\n }\n @if (!StatusFilter) {\n <p>\n No restores have been performed yet. Use the VersionHistoryEngine to restore records to a labeled state.\n </p>\n }\n </div>\n }\n }\n </mj-page-body>\n</mj-page-layout>\n", styles: ["/* KPI Row */\n.kpi-row {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 16px;\n margin-bottom: 24px;\n}\n\n.kpi-card {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 20px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 12px;\n}\n\n.kpi-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 48px;\n height: 48px;\n border-radius: 12px;\n font-size: 20px;\n flex-shrink: 0;\n}\n\n.kpi-value {\n font-size: 28px;\n font-weight: 700;\n color: var(--mj-text-primary);\n line-height: 1;\n}\n\n.kpi-label {\n font-size: 13px;\n color: var(--mj-text-secondary);\n margin-top: 4px;\n}\n\n/* Restore List */\n.restore-list {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.restore-card {\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-default);\n border-radius: 12px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.restore-card:hover {\n border-color: var(--mj-border-strong);\n}\n\n.restore-card.expanded {\n box-shadow: var(--mj-shadow-md);\n}\n\n.restore-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n cursor: pointer;\n}\n\n.restore-header-left {\n display: flex;\n align-items: center;\n gap: 14px;\n}\n\n.status-icon {\n font-size: 20px;\n}\n\n.status-success { color: var(--mj-status-success); }\n.status-failed { color: var(--mj-status-error); }\n.status-progress { color: var(--mj-brand-primary); }\n.status-pending { color: var(--mj-status-warning); }\n\n.restore-info {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.restore-label-name {\n font-size: 15px;\n font-weight: 600;\n color: var(--mj-text-primary);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.dry-run-badge {\n font-size: 10px;\n font-weight: 700;\n padding: 2px 8px;\n background: color-mix(in srgb, var(--mj-status-warning) 10%, transparent);\n color: var(--mj-status-warning);\n border-radius: 8px;\n letter-spacing: 0.5px;\n}\n\n.restore-date {\n font-size: 13px;\n color: var(--mj-text-secondary);\n}\n\n.restore-header-right {\n display: flex;\n align-items: center;\n gap: 14px;\n}\n\n.restore-progress-bar {\n width: 80px;\n height: 6px;\n background: var(--mj-bg-surface-sunken);\n border-radius: 3px;\n overflow: hidden;\n}\n\n.progress-fill {\n height: 100%;\n border-radius: 3px;\n transition: width 0.3s ease;\n}\n\n.progress-fill.status-success { background: var(--mj-status-success); }\n.progress-fill.status-failed { background: var(--mj-status-error); }\n.progress-fill.status-progress { background: var(--mj-brand-primary); }\n.progress-fill.status-pending { background: var(--mj-status-warning); }\n\n.restore-count {\n font-size: 13px;\n color: var(--mj-text-secondary);\n white-space: nowrap;\n}\n\n.expand-icon {\n color: var(--mj-text-muted);\n font-size: 12px;\n}\n\n/* Expanded Details */\n.restore-details {\n padding: 0 20px 20px;\n border-top: 1px solid var(--mj-border-default);\n}\n\n.detail-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));\n gap: 16px;\n padding-top: 16px;\n}\n\n.detail-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.detail-label {\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-secondary);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.detail-value {\n font-size: 15px;\n color: var(--mj-text-primary);\n font-weight: 500;\n}\n\n.detail-mono {\n font-family: 'SF Mono', 'Fira Code', monospace;\n font-size: 13px;\n}\n\n.text-error {\n color: var(--mj-status-error);\n}\n\n/* Error Log */\n.error-log {\n margin-top: 16px;\n border: 1px solid color-mix(in srgb, var(--mj-status-error) 20%, transparent);\n border-radius: 8px;\n overflow: hidden;\n}\n\n.error-log-header {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 10px 14px;\n background: color-mix(in srgb, var(--mj-status-error) 6%, transparent);\n color: var(--mj-status-error);\n font-size: 13px;\n font-weight: 600;\n}\n\n.error-log-content {\n margin: 0;\n padding: 12px 14px;\n font-size: 12px;\n font-family: 'SF Mono', 'Fira Code', monospace;\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface-card);\n overflow-x: auto;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Empty State */\n.empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 20px;\n text-align: center;\n}\n\n.empty-icon {\n font-size: 48px;\n color: var(--mj-text-muted);\n margin-bottom: 16px;\n}\n\n.empty-state h3 {\n font-size: 18px;\n font-weight: 600;\n color: var(--mj-text-primary);\n margin: 0 0 8px 0;\n}\n\n.empty-state p {\n font-size: 14px;\n color: var(--mj-text-secondary);\n margin: 0;\n max-width: 400px;\n}\n\n@media (max-width: 768px) {\n .kpi-row { grid-template-columns: repeat(2, 1fr); }\n}\n"] }]
|
|
472
466
|
}], () => [{ type: i0.ChangeDetectorRef }], null); })();
|
|
473
467
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(VersionHistoryRestoreResourceComponent, { className: "VersionHistoryRestoreResourceComponent", filePath: "src/VersionHistory/components/restore-resource.component.ts", lineNumber: 19 }); })();
|
|
474
468
|
//# sourceMappingURL=restore-resource.component.js.map
|