@c8y/ngx-components 1022.44.7 → 1022.46.1
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/asset-properties/asset-properties.model.d.ts +1 -1
- package/asset-properties/asset-properties.model.d.ts.map +1 -1
- package/asset-properties/asset-property-list/asset-property-value.pipe.d.ts.map +1 -1
- package/computed-asset-properties/last-measurement/last-measurement-value.d.ts +2 -1
- package/computed-asset-properties/last-measurement/last-measurement-value.d.ts.map +1 -1
- package/computed-asset-properties/strategies/last-measurement-strategy.d.ts +4 -3
- package/computed-asset-properties/strategies/last-measurement-strategy.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.service.d.ts +20 -2
- package/context-dashboard/context-dashboard.service.d.ts.map +1 -1
- package/context-dashboard/widget-config/widget-asset-selector.component.d.ts +8 -2
- package/context-dashboard/widget-config/widget-asset-selector.component.d.ts.map +1 -1
- package/context-dashboard/widget-config.component.d.ts.map +1 -1
- package/context-dashboard/widget-config.service.d.ts +7 -1
- package/context-dashboard/widget-config.service.d.ts.map +1 -1
- package/core/router/router.service.d.ts +1 -0
- package/core/router/router.service.d.ts.map +1 -1
- package/dashboard-manager/dashboard-manager.service.d.ts +5 -4
- package/dashboard-manager/dashboard-manager.service.d.ts.map +1 -1
- package/dashboard-manager/devicemanagement/dashboard-manager-navigation.factory.d.ts +10 -0
- package/dashboard-manager/devicemanagement/dashboard-manager-navigation.factory.d.ts.map +1 -0
- package/dashboard-manager/devicemanagement/dashboard-manager-tabs.factory.d.ts +11 -0
- package/dashboard-manager/devicemanagement/dashboard-manager-tabs.factory.d.ts.map +1 -0
- package/dashboard-manager/devicemanagement/index.d.ts +4 -0
- package/dashboard-manager/devicemanagement/index.d.ts.map +1 -1
- package/dashboard-manager/index.d.ts +2 -1
- package/dashboard-manager/index.d.ts.map +1 -1
- package/dashboard-manager/type-dashboards-list/index.d.ts +2 -0
- package/dashboard-manager/type-dashboards-list/index.d.ts.map +1 -0
- package/fesm2022/c8y-ngx-components-asset-properties.mjs +1 -1
- package/fesm2022/c8y-ngx-components-asset-properties.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs +1 -1
- package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs +54 -24
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-dashboard-manager-devicemanagement.mjs +81 -6
- package/fesm2022/c8y-ngx-components-dashboard-manager-devicemanagement.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-dashboard-manager.mjs +185 -166
- package/fesm2022/c8y-ngx-components-dashboard-manager.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-map.mjs +1 -1
- package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sub-assets.mjs +2 -2
- package/fesm2022/c8y-ngx-components-sub-assets.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs +2 -2
- package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +12 -7
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components.mjs +16 -6
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/locales/de.po +25 -0
- package/locales/es.po +27 -2
- package/locales/fr.po +25 -0
- package/locales/ja_JP.po +23 -0
- package/locales/ko.po +26 -2
- package/locales/locales.pot +29 -6
- package/locales/nl.po +27 -2
- package/locales/pl.po +31 -6
- package/locales/pt_BR.po +25 -0
- package/locales/zh_CN.po +26 -2
- package/locales/zh_TW.po +26 -2
- package/package.json +1 -1
- package/widgets/implementations/map/map-widget.component.d.ts +1 -0
- package/widgets/implementations/map/map-widget.component.d.ts.map +1 -1
|
@@ -1,13 +1,88 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
|
+
import { PreviewService, NavigatorNode, hookTab, hookRoute, hookNavigator, hookPreview } from '@c8y/ngx-components';
|
|
4
|
+
import { TypeDashboardsListComponent } from '@c8y/ngx-components/dashboard-manager';
|
|
5
|
+
import { map, first } from 'rxjs';
|
|
6
|
+
import { gettext } from '@c8y/ngx-components/gettext';
|
|
7
|
+
import * as i1 from '@angular/router';
|
|
2
8
|
|
|
9
|
+
class DashboardManagerNavigationFactory {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.previewFeatureService = inject(PreviewService);
|
|
12
|
+
}
|
|
13
|
+
get() {
|
|
14
|
+
return this.previewFeatureService.getState$(DM_DASHBOARD_MANAGER_PREVIEW_KEY).pipe(map(state => {
|
|
15
|
+
if (state) {
|
|
16
|
+
return [
|
|
17
|
+
new NavigatorNode({
|
|
18
|
+
parent: gettext('Management'),
|
|
19
|
+
path: DM_DASHBOARD_MANAGER_PATH,
|
|
20
|
+
label: gettext('Dashboard manager'),
|
|
21
|
+
icon: 'management1',
|
|
22
|
+
routerLinkExact: false,
|
|
23
|
+
preventDuplicates: true,
|
|
24
|
+
featureId: 'dashboardManager'
|
|
25
|
+
})
|
|
26
|
+
];
|
|
27
|
+
}
|
|
28
|
+
return [];
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerNavigationFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
32
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerNavigationFactory }); }
|
|
33
|
+
}
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerNavigationFactory, decorators: [{
|
|
35
|
+
type: Injectable
|
|
36
|
+
}] });
|
|
37
|
+
|
|
38
|
+
class DashboardManagerTabsFactory {
|
|
39
|
+
constructor(router) {
|
|
40
|
+
this.router = router;
|
|
41
|
+
}
|
|
42
|
+
get() {
|
|
43
|
+
const tabs = [];
|
|
44
|
+
if (this.router.url.match(/\/dashboard-manager/g)) {
|
|
45
|
+
tabs.push({
|
|
46
|
+
path: 'dashboard-manager/type-dashboards',
|
|
47
|
+
priority: 1000,
|
|
48
|
+
label: gettext('Type dashboards')
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
return tabs;
|
|
52
|
+
}
|
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerTabsFactory, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
54
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerTabsFactory }); }
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerTabsFactory, decorators: [{
|
|
57
|
+
type: Injectable
|
|
58
|
+
}], ctorParameters: () => [{ type: i1.Router }] });
|
|
59
|
+
|
|
60
|
+
const DM_DASHBOARD_MANAGER_PREVIEW_KEY = 'ui.dm-dashboard-manager';
|
|
61
|
+
const DM_DASHBOARD_MANAGER_PATH = 'dashboard-manager';
|
|
62
|
+
function canActivateDashboardManager() {
|
|
63
|
+
const previewFeatureService = inject(PreviewService);
|
|
64
|
+
return previewFeatureService.getState$(DM_DASHBOARD_MANAGER_PREVIEW_KEY).pipe(first());
|
|
65
|
+
}
|
|
3
66
|
const dashboardManagerFeatureProvider = [
|
|
67
|
+
hookTab(DashboardManagerTabsFactory),
|
|
68
|
+
hookRoute([
|
|
69
|
+
{
|
|
70
|
+
path: DM_DASHBOARD_MANAGER_PATH,
|
|
71
|
+
redirectTo: `${DM_DASHBOARD_MANAGER_PATH}/type-dashboards`,
|
|
72
|
+
pathMatch: 'full'
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
path: `${DM_DASHBOARD_MANAGER_PATH}/type-dashboards`,
|
|
76
|
+
component: TypeDashboardsListComponent,
|
|
77
|
+
canActivate: [canActivateDashboardManager]
|
|
78
|
+
}
|
|
79
|
+
]),
|
|
80
|
+
hookNavigator(DashboardManagerNavigationFactory),
|
|
4
81
|
hookPreview({
|
|
5
|
-
key:
|
|
82
|
+
key: DM_DASHBOARD_MANAGER_PREVIEW_KEY,
|
|
6
83
|
label: 'Dashboard manager',
|
|
7
84
|
description: () => import('@c8y/style/markdown-files/dm-dashboard-manager-preview.md').then(m => m.default),
|
|
8
|
-
settings: {
|
|
9
|
-
reload: true
|
|
10
|
-
}
|
|
85
|
+
settings: { reload: true }
|
|
11
86
|
})
|
|
12
87
|
];
|
|
13
88
|
|
|
@@ -15,5 +90,5 @@ const dashboardManagerFeatureProvider = [
|
|
|
15
90
|
* Generated bundle index. Do not edit.
|
|
16
91
|
*/
|
|
17
92
|
|
|
18
|
-
export { dashboardManagerFeatureProvider };
|
|
93
|
+
export { DM_DASHBOARD_MANAGER_PATH, DM_DASHBOARD_MANAGER_PREVIEW_KEY, canActivateDashboardManager, dashboardManagerFeatureProvider };
|
|
19
94
|
//# sourceMappingURL=c8y-ngx-components-dashboard-manager-devicemanagement.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c8y-ngx-components-dashboard-manager-devicemanagement.mjs","sources":["../../dashboard-manager/devicemanagement/index.ts","../../dashboard-manager/devicemanagement/c8y-ngx-components-dashboard-manager-devicemanagement.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-dashboard-manager-devicemanagement.mjs","sources":["../../dashboard-manager/devicemanagement/dashboard-manager-navigation.factory.ts","../../dashboard-manager/devicemanagement/dashboard-manager-tabs.factory.ts","../../dashboard-manager/devicemanagement/index.ts","../../dashboard-manager/devicemanagement/c8y-ngx-components-dashboard-manager-devicemanagement.ts"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { NavigatorNode, NavigatorNodeFactory, PreviewService } from '@c8y/ngx-components';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { map, Observable } from 'rxjs';\nimport { DM_DASHBOARD_MANAGER_PATH, DM_DASHBOARD_MANAGER_PREVIEW_KEY } from './index';\n\n@Injectable()\nexport class DashboardManagerNavigationFactory implements NavigatorNodeFactory {\n private readonly previewFeatureService = inject(PreviewService);\n\n get(): Observable<NavigatorNode[]> {\n return this.previewFeatureService.getState$(DM_DASHBOARD_MANAGER_PREVIEW_KEY).pipe(\n map(state => {\n if (state) {\n return [\n new NavigatorNode({\n parent: gettext('Management'),\n path: DM_DASHBOARD_MANAGER_PATH,\n label: gettext('Dashboard manager'),\n icon: 'management1',\n routerLinkExact: false,\n preventDuplicates: true,\n featureId: 'dashboardManager'\n })\n ];\n }\n return [];\n })\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Tab, TabFactory } from '@c8y/ngx-components';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\n@Injectable()\nexport class DashboardManagerTabsFactory implements TabFactory {\n constructor(public router: Router) {}\n\n get() {\n const tabs: Tab[] = [];\n\n if (this.router.url.match(/\\/dashboard-manager/g)) {\n tabs.push({\n path: 'dashboard-manager/type-dashboards',\n priority: 1000,\n label: gettext('Type dashboards')\n } as Tab);\n }\n\n return tabs;\n }\n}\n","import { inject } from '@angular/core';\nimport {\n hookNavigator,\n hookPreview,\n hookRoute,\n hookTab,\n PreviewService\n} from '@c8y/ngx-components';\nimport { TypeDashboardsListComponent } from '@c8y/ngx-components/dashboard-manager';\nimport { first, Observable } from 'rxjs';\nimport { DashboardManagerNavigationFactory } from './dashboard-manager-navigation.factory';\nimport { DashboardManagerTabsFactory } from './dashboard-manager-tabs.factory';\n\nexport const DM_DASHBOARD_MANAGER_PREVIEW_KEY = 'ui.dm-dashboard-manager';\nexport const DM_DASHBOARD_MANAGER_PATH = 'dashboard-manager';\n\nexport function canActivateDashboardManager(): Observable<boolean> {\n const previewFeatureService = inject(PreviewService);\n return previewFeatureService.getState$(DM_DASHBOARD_MANAGER_PREVIEW_KEY).pipe(first());\n}\n\nexport const dashboardManagerFeatureProvider = [\n hookTab(DashboardManagerTabsFactory),\n hookRoute([\n {\n path: DM_DASHBOARD_MANAGER_PATH,\n redirectTo: `${DM_DASHBOARD_MANAGER_PATH}/type-dashboards`,\n pathMatch: 'full'\n },\n {\n path: `${DM_DASHBOARD_MANAGER_PATH}/type-dashboards`,\n component: TypeDashboardsListComponent,\n canActivate: [canActivateDashboardManager]\n }\n ]),\n hookNavigator(DashboardManagerNavigationFactory),\n hookPreview({\n key: DM_DASHBOARD_MANAGER_PREVIEW_KEY,\n label: 'Dashboard manager',\n description: () =>\n import('@c8y/style/markdown-files/dm-dashboard-manager-preview.md').then(m => m.default),\n settings: { reload: true }\n })\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,33 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, EventEmitter, Output, Input, Component, HostListener, NgModule } from '@angular/core';
|
|
3
|
-
import { gettext } from '@c8y/ngx-components/gettext';
|
|
4
3
|
import * as i2 from '@c8y/ngx-components';
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
4
|
+
import { DataGridService, alertOnError, DataGridComponent, EmptyStateComponent, ColumnDirective, C8yTranslatePipe, ModalComponent, BaseColumn, getBasicInputArrayFormFieldConfig, Status, BuiltInActionType, TitleComponent, ExpandableRowDirective, CellRendererDefDirective, IconDirective, CoreModule, ModalModule, hookTab, hookRoute, hookNavigator, NavigatorNode } from '@c8y/ngx-components';
|
|
5
|
+
import * as i3 from '@c8y/ngx-components/context-dashboard';
|
|
6
|
+
import { TypeDashboardInfoComponent, ContextDashboardModule } from '@c8y/ngx-components/context-dashboard';
|
|
7
7
|
import { NameDeviceGridColumn, TypeDeviceGridColumn, GroupDeviceGridColumn, RegistrationDateDeviceGridColumn, DeviceGridModule } from '@c8y/ngx-components/device-grid';
|
|
8
|
+
import { gettext } from '@c8y/ngx-components/gettext';
|
|
9
|
+
import { TooltipModule } from 'ngx-bootstrap/tooltip';
|
|
8
10
|
import * as i1 from '@angular/router';
|
|
9
11
|
import * as i1$1 from '@c8y/client';
|
|
10
|
-
import
|
|
11
|
-
import * as i1$2 from 'ngx-bootstrap/modal';
|
|
12
|
-
import * as i3$1 from '@c8y/ngx-components/context-dashboard';
|
|
13
|
-
import { TypeDashboardInfoComponent, ContextDashboardModule } from '@c8y/ngx-components/context-dashboard';
|
|
12
|
+
import { QueriesUtil } from '@c8y/client';
|
|
14
13
|
import { NgFor } from '@angular/common';
|
|
14
|
+
import * as i1$2 from 'ngx-bootstrap/modal';
|
|
15
|
+
import * as i3$1 from '@ngx-translate/core';
|
|
16
|
+
|
|
17
|
+
const DASHBOARD_MANAGER_PRODUCT_EXPERIENCE = {
|
|
18
|
+
EVENTS: {
|
|
19
|
+
DASHBOARD_TEMPLATE: 'dashboardTemplate'
|
|
20
|
+
},
|
|
21
|
+
COMPONENTS: {
|
|
22
|
+
TYPE_DASHBOARDS_LIST: 'type-dashboards-list',
|
|
23
|
+
TYPE_DASHBOARD_TARGET_ASSETS_GRID: 'type-dashboard-target-assets-grid'
|
|
24
|
+
},
|
|
25
|
+
ACTIONS: {
|
|
26
|
+
DELETE_TYPE_DASHBOARD: 'deleteTypeDashboard',
|
|
27
|
+
EDIT_TYPE_DASHBOARD: 'editTypeDashboard',
|
|
28
|
+
OPEN_DASHBOARD_INSTANCE_TO_EDIT: 'openDashboardInstanceToEdit'
|
|
29
|
+
}
|
|
30
|
+
};
|
|
15
31
|
|
|
16
32
|
class DashboardManagerTabsFactory {
|
|
17
33
|
constructor(router) {
|
|
@@ -35,162 +51,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
35
51
|
type: Injectable
|
|
36
52
|
}], ctorParameters: () => [{ type: i1.Router }] });
|
|
37
53
|
|
|
38
|
-
class DeviceTypeValueGridColumn extends BaseColumn {
|
|
39
|
-
constructor(initialColumnConfig) {
|
|
40
|
-
super(initialColumnConfig);
|
|
41
|
-
this.name = 'deviceTypeValue';
|
|
42
|
-
this.path = 'c8y_Dashboard.deviceTypeValue';
|
|
43
|
-
this.header = gettext('Target asset model');
|
|
44
|
-
this.filterable = true;
|
|
45
|
-
this.sortable = false;
|
|
46
|
-
this.filteringConfig = {
|
|
47
|
-
fields: getBasicInputArrayFormFieldConfig({
|
|
48
|
-
key: 'deviceTypeValues',
|
|
49
|
-
label: gettext('Filter dashboards by target asset model'),
|
|
50
|
-
addText: gettext('Add next`target asset model`'),
|
|
51
|
-
tooltip: gettext('Use * as a wildcard character'),
|
|
52
|
-
placeholder: 'c8y_MQTTDevice'
|
|
53
|
-
}),
|
|
54
|
-
getFilter: (model) => {
|
|
55
|
-
const filter = {};
|
|
56
|
-
if (model.deviceTypeValues.length) {
|
|
57
|
-
filter[this.path] = { __in: model.deviceTypeValues };
|
|
58
|
-
}
|
|
59
|
-
return filter;
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
const DASHBOARD_MANAGER_PRODUCT_EXPERIENCE = {
|
|
66
|
-
EVENTS: {
|
|
67
|
-
DASHBOARD_TEMPLATE: 'dashboardTemplate'
|
|
68
|
-
},
|
|
69
|
-
COMPONENTS: {
|
|
70
|
-
TYPE_DASHBOARDS_LIST: 'type-dashboards-list',
|
|
71
|
-
TYPE_DASHBOARD_TARGET_ASSETS_GRID: 'type-dashboard-target-assets-grid'
|
|
72
|
-
},
|
|
73
|
-
ACTIONS: {
|
|
74
|
-
DELETE_TYPE_DASHBOARD: 'deleteTypeDashboard',
|
|
75
|
-
EDIT_TYPE_DASHBOARD: 'editTypeDashboard',
|
|
76
|
-
OPEN_DASHBOARD_INSTANCE_TO_EDIT: 'openDashboardInstanceToEdit'
|
|
77
|
-
}
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
class DashboardManagerService extends DataGridService {
|
|
81
|
-
constructor(inventory, userPreferencesService, modal, translateService) {
|
|
82
|
-
super(userPreferencesService);
|
|
83
|
-
this.inventory = inventory;
|
|
84
|
-
this.userPreferencesService = userPreferencesService;
|
|
85
|
-
this.modal = modal;
|
|
86
|
-
this.translateService = translateService;
|
|
87
|
-
this.baseQuery = {
|
|
88
|
-
__filter: {
|
|
89
|
-
__and: [
|
|
90
|
-
{ 'c8y_Dashboard.deviceType': { __eq: true } },
|
|
91
|
-
{ __has: 'c8y_Dashboard.deviceTypeValue' }
|
|
92
|
-
]
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
this.TYPE_DASHBOARDS_QUERY = '$filter=((c8y_Dashboard.deviceType eq true) and (has(c8y_Dashboard.deviceTypeValue)))';
|
|
96
|
-
}
|
|
97
|
-
getColumns() {
|
|
98
|
-
return [
|
|
99
|
-
{
|
|
100
|
-
name: 'icon',
|
|
101
|
-
header: gettext('Icon'),
|
|
102
|
-
path: 'c8y_Dashboard.icon',
|
|
103
|
-
sortable: false,
|
|
104
|
-
gridTrackSize: '45px'
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
name: 'name',
|
|
108
|
-
header: gettext('Name'),
|
|
109
|
-
path: 'name',
|
|
110
|
-
sortable: false,
|
|
111
|
-
gridTrackSize: '200px'
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
name: 'description',
|
|
115
|
-
header: gettext('Description'),
|
|
116
|
-
path: 'c8y_Dashboard.description',
|
|
117
|
-
sortable: false
|
|
118
|
-
},
|
|
119
|
-
new DeviceTypeValueGridColumn(),
|
|
120
|
-
{
|
|
121
|
-
name: 'lastUpdated',
|
|
122
|
-
header: gettext('Last update'),
|
|
123
|
-
path: 'lastUpdated',
|
|
124
|
-
sortable: false,
|
|
125
|
-
gridTrackSize: '200px'
|
|
126
|
-
}
|
|
127
|
-
];
|
|
128
|
-
}
|
|
129
|
-
getDefaultPagination() {
|
|
130
|
-
return {
|
|
131
|
-
pageSize: 25,
|
|
132
|
-
currentPage: 1
|
|
133
|
-
};
|
|
134
|
-
}
|
|
135
|
-
async getData(columns, pagination, text) {
|
|
136
|
-
const filters = this.getFilters(columns, pagination, text);
|
|
137
|
-
return await this.inventory.list(filters);
|
|
138
|
-
}
|
|
139
|
-
async getTotal() {
|
|
140
|
-
return (await this.inventory.list({
|
|
141
|
-
query: this.TYPE_DASHBOARDS_QUERY,
|
|
142
|
-
withTotalElements: true
|
|
143
|
-
})).paging.totalElements;
|
|
144
|
-
}
|
|
145
|
-
async delete(dashboard, onSuccess) {
|
|
146
|
-
try {
|
|
147
|
-
const msg = gettext(`You are about to delete the dashboard "{{ dashboardName }}" from all devices of type "{{ deviceType }}".
|
|
148
|
-
Do you want to proceed?`);
|
|
149
|
-
await this.modal.confirm(gettext('Delete dashboard'), this.translateService.instant(msg, {
|
|
150
|
-
dashboardName: dashboard.c8y_Dashboard.name,
|
|
151
|
-
deviceType: dashboard.c8y_Dashboard.deviceTypeValue
|
|
152
|
-
}), Status.DANGER, {
|
|
153
|
-
ok: gettext('Delete'),
|
|
154
|
-
cancel: gettext('Cancel')
|
|
155
|
-
}, {}, {
|
|
156
|
-
eventName: DASHBOARD_MANAGER_PRODUCT_EXPERIENCE.EVENTS.DASHBOARD_TEMPLATE,
|
|
157
|
-
data: {
|
|
158
|
-
action: DASHBOARD_MANAGER_PRODUCT_EXPERIENCE.ACTIONS.DELETE_TYPE_DASHBOARD,
|
|
159
|
-
component: DASHBOARD_MANAGER_PRODUCT_EXPERIENCE.COMPONENTS.TYPE_DASHBOARDS_LIST
|
|
160
|
-
}
|
|
161
|
-
});
|
|
162
|
-
await this.inventory.delete(dashboard);
|
|
163
|
-
onSuccess();
|
|
164
|
-
}
|
|
165
|
-
catch (ex) {
|
|
166
|
-
// intended empty
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
getFilters(columns, pagination, text) {
|
|
170
|
-
return {
|
|
171
|
-
query: this.getQueryString(columns),
|
|
172
|
-
...(text && { text }),
|
|
173
|
-
pageSize: pagination.pageSize,
|
|
174
|
-
currentPage: pagination.currentPage,
|
|
175
|
-
withTotalPages: true,
|
|
176
|
-
withTotalElements: true
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
getQueryString(columns) {
|
|
180
|
-
const queryFromColumns = this.getQueryObj(columns);
|
|
181
|
-
const fullQuery = this.queriesUtil.addAndFilter(queryFromColumns, this.baseQuery);
|
|
182
|
-
return this.queriesUtil.buildQuery(fullQuery);
|
|
183
|
-
}
|
|
184
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerService, deps: [{ token: i1$1.InventoryService }, { token: i2.UserPreferencesService }, { token: i2.ModalService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
185
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerService, providedIn: 'root' }); }
|
|
186
|
-
}
|
|
187
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerService, decorators: [{
|
|
188
|
-
type: Injectable,
|
|
189
|
-
args: [{
|
|
190
|
-
providedIn: 'root'
|
|
191
|
-
}]
|
|
192
|
-
}], ctorParameters: () => [{ type: i1$1.InventoryService }, { type: i2.UserPreferencesService }, { type: i2.ModalService }, { type: i3.TranslateService }] });
|
|
193
|
-
|
|
194
54
|
class BasicNameDeviceGridColumn extends NameDeviceGridColumn {
|
|
195
55
|
constructor(initialColumnConfig) {
|
|
196
56
|
super(initialColumnConfig);
|
|
@@ -321,13 +181,13 @@ class TypeDashboardTargetAssetsGridComponent {
|
|
|
321
181
|
action: DASHBOARD_MANAGER_PRODUCT_EXPERIENCE.ACTIONS.OPEN_DASHBOARD_INSTANCE_TO_EDIT
|
|
322
182
|
});
|
|
323
183
|
}
|
|
324
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TypeDashboardTargetAssetsGridComponent, deps: [{ token: i1.Router }, { token: TypeDashboardAssetsGridService }, { token: i3
|
|
184
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TypeDashboardTargetAssetsGridComponent, deps: [{ token: i1.Router }, { token: TypeDashboardAssetsGridService }, { token: i3.ContextDashboardService }, { token: i2.GainsightService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
325
185
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TypeDashboardTargetAssetsGridComponent, isStandalone: true, selector: "c8y-type-dashboard-target-assets-grid", inputs: { dashboard: "dashboard" }, outputs: { onNavigateToAsset: "onNavigateToAsset" }, ngImport: i0, template: "<c8y-data-grid\n [title]=\"''\"\n [loadMoreItemsLabel]=\"loadMoreItemsLabel\"\n [loadingItemsLabel]=\"loadingItemsLabel\"\n [columns]=\"columns\"\n [pagination]=\"pagination\"\n [infiniteScroll]=\"'auto'\"\n [actionControls]=\"actionControls\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n [showSearch]=\"true\"\n>\n <c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No results to display.' | translate\"\n [subtitle]=\"'Refine your search terms.' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n</c8y-data-grid>\n", dependencies: [{ kind: "component", type: DataGridComponent, selector: "c8y-data-grid", inputs: ["title", "loadMoreItemsLabel", "loadingItemsLabel", "showSearch", "refresh", "columns", "rows", "pagination", "childNodePagination", "infiniteScroll", "serverSideDataCallback", "selectable", "singleSelection", "selectionPrimaryKey", "displayOptions", "actionControls", "bulkActionControls", "headerActionControls", "searchText", "configureColumnsEnabled", "showCounterWarning", "activeClassName", "expandableRows", "treeGrid", "hideReload", "childNodesProperty", "parentNodeLabelProperty"], outputs: ["rowMouseOver", "rowMouseLeave", "rowClick", "onConfigChange", "onBeforeFilter", "onBeforeSearch", "onFilter", "itemsSelect", "onReload", "onAddCustomColumn", "onRemoveCustomColumn", "onColumnFilterReset", "onSort", "onPageSizeChange", "onColumnReordered", "onColumnVisibilityChange"] }, { kind: "component", type: EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ColumnDirective, selector: "c8y-column", inputs: ["name"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
|
|
326
186
|
}
|
|
327
187
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TypeDashboardTargetAssetsGridComponent, decorators: [{
|
|
328
188
|
type: Component,
|
|
329
189
|
args: [{ selector: 'c8y-type-dashboard-target-assets-grid', imports: [DataGridComponent, EmptyStateComponent, NgFor, ColumnDirective, C8yTranslatePipe], template: "<c8y-data-grid\n [title]=\"''\"\n [loadMoreItemsLabel]=\"loadMoreItemsLabel\"\n [loadingItemsLabel]=\"loadingItemsLabel\"\n [columns]=\"columns\"\n [pagination]=\"pagination\"\n [infiniteScroll]=\"'auto'\"\n [actionControls]=\"actionControls\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n [showSearch]=\"true\"\n>\n <c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No results to display.' | translate\"\n [subtitle]=\"'Refine your search terms.' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n</c8y-data-grid>\n" }]
|
|
330
|
-
}], ctorParameters: () => [{ type: i1.Router }, { type: TypeDashboardAssetsGridService }, { type: i3
|
|
190
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: TypeDashboardAssetsGridService }, { type: i3.ContextDashboardService }, { type: i2.GainsightService }], propDecorators: { dashboard: [{
|
|
331
191
|
type: Input
|
|
332
192
|
}], onNavigateToAsset: [{
|
|
333
193
|
type: Output
|
|
@@ -359,6 +219,165 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
359
219
|
args: ['document:keydown', ['$event']]
|
|
360
220
|
}] } });
|
|
361
221
|
|
|
222
|
+
class DeviceTypeValueGridColumn extends BaseColumn {
|
|
223
|
+
constructor(initialColumnConfig) {
|
|
224
|
+
super(initialColumnConfig);
|
|
225
|
+
this.name = 'deviceTypeValue';
|
|
226
|
+
this.path = 'c8y_Dashboard.deviceTypeValue';
|
|
227
|
+
this.header = gettext('Target asset model');
|
|
228
|
+
this.filterable = true;
|
|
229
|
+
this.sortable = false;
|
|
230
|
+
this.filteringConfig = {
|
|
231
|
+
fields: getBasicInputArrayFormFieldConfig({
|
|
232
|
+
key: 'deviceTypeValues',
|
|
233
|
+
label: gettext('Filter dashboards by target asset model'),
|
|
234
|
+
addText: gettext('Add next`target asset model`'),
|
|
235
|
+
tooltip: gettext('Use * as a wildcard character'),
|
|
236
|
+
placeholder: 'c8y_MQTTDevice'
|
|
237
|
+
}),
|
|
238
|
+
getFilter: (model) => {
|
|
239
|
+
const filter = {};
|
|
240
|
+
if (model.deviceTypeValues.length) {
|
|
241
|
+
filter[this.path] = { __in: model.deviceTypeValues };
|
|
242
|
+
}
|
|
243
|
+
return filter;
|
|
244
|
+
}
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
class DashboardManagerService extends DataGridService {
|
|
250
|
+
constructor(inventory, userPreferencesService, modal, translateService, contextDashboardService) {
|
|
251
|
+
super(userPreferencesService);
|
|
252
|
+
this.inventory = inventory;
|
|
253
|
+
this.userPreferencesService = userPreferencesService;
|
|
254
|
+
this.modal = modal;
|
|
255
|
+
this.translateService = translateService;
|
|
256
|
+
this.contextDashboardService = contextDashboardService;
|
|
257
|
+
this.baseQuery = {
|
|
258
|
+
__filter: {
|
|
259
|
+
__and: [
|
|
260
|
+
{ 'c8y_Dashboard.deviceType': { __eq: true } },
|
|
261
|
+
{ __has: 'c8y_Dashboard.deviceTypeValue' }
|
|
262
|
+
]
|
|
263
|
+
}
|
|
264
|
+
};
|
|
265
|
+
this.baseTypeDashboardsFilter = {
|
|
266
|
+
__filter: {
|
|
267
|
+
__and: [
|
|
268
|
+
{ 'c8y_Dashboard.deviceType': { __eq: true } },
|
|
269
|
+
{ __has: 'c8y_Dashboard.deviceTypeValue' }
|
|
270
|
+
]
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
this.queriesUtil = new QueriesUtil();
|
|
274
|
+
}
|
|
275
|
+
getColumns() {
|
|
276
|
+
return [
|
|
277
|
+
{
|
|
278
|
+
name: 'icon',
|
|
279
|
+
header: gettext('Icon'),
|
|
280
|
+
path: 'c8y_Dashboard.icon',
|
|
281
|
+
sortable: false,
|
|
282
|
+
gridTrackSize: '45px'
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
name: 'name',
|
|
286
|
+
header: gettext('Name'),
|
|
287
|
+
path: 'name',
|
|
288
|
+
sortable: false,
|
|
289
|
+
gridTrackSize: '200px'
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
name: 'description',
|
|
293
|
+
header: gettext('Description'),
|
|
294
|
+
path: 'c8y_Dashboard.description',
|
|
295
|
+
sortable: false
|
|
296
|
+
},
|
|
297
|
+
new DeviceTypeValueGridColumn(),
|
|
298
|
+
{
|
|
299
|
+
name: 'lastUpdated',
|
|
300
|
+
header: gettext('Last update'),
|
|
301
|
+
path: 'lastUpdated',
|
|
302
|
+
sortable: false,
|
|
303
|
+
gridTrackSize: '200px'
|
|
304
|
+
}
|
|
305
|
+
];
|
|
306
|
+
}
|
|
307
|
+
getDefaultPagination() {
|
|
308
|
+
return {
|
|
309
|
+
pageSize: 25,
|
|
310
|
+
currentPage: 1
|
|
311
|
+
};
|
|
312
|
+
}
|
|
313
|
+
async getData(columns, pagination, text) {
|
|
314
|
+
const filters = this.getFilters(columns, pagination, text);
|
|
315
|
+
return await this.inventory.list(filters);
|
|
316
|
+
}
|
|
317
|
+
async getTotal() {
|
|
318
|
+
const query = this.queriesUtil.buildQuery({
|
|
319
|
+
__filter: {
|
|
320
|
+
__and: [
|
|
321
|
+
this.baseTypeDashboardsFilter.__filter,
|
|
322
|
+
this.contextDashboardService.appliedToFilter()
|
|
323
|
+
]
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
const res = await this.inventory.list({ query, withTotalElements: true, pageSize: 1 });
|
|
327
|
+
return res.paging.totalElements;
|
|
328
|
+
}
|
|
329
|
+
async delete(dashboard, onSuccess) {
|
|
330
|
+
try {
|
|
331
|
+
const msg = gettext(`You are about to delete the dashboard "{{ dashboardName }}" from all devices of type "{{ deviceType }}".
|
|
332
|
+
Do you want to proceed?`);
|
|
333
|
+
await this.modal.confirm(gettext('Delete dashboard'), this.translateService.instant(msg, {
|
|
334
|
+
dashboardName: dashboard.c8y_Dashboard.name,
|
|
335
|
+
deviceType: dashboard.c8y_Dashboard.deviceTypeValue
|
|
336
|
+
}), Status.DANGER, {
|
|
337
|
+
ok: gettext('Delete'),
|
|
338
|
+
cancel: gettext('Cancel')
|
|
339
|
+
}, {}, {
|
|
340
|
+
eventName: DASHBOARD_MANAGER_PRODUCT_EXPERIENCE.EVENTS.DASHBOARD_TEMPLATE,
|
|
341
|
+
data: {
|
|
342
|
+
action: DASHBOARD_MANAGER_PRODUCT_EXPERIENCE.ACTIONS.DELETE_TYPE_DASHBOARD,
|
|
343
|
+
component: DASHBOARD_MANAGER_PRODUCT_EXPERIENCE.COMPONENTS.TYPE_DASHBOARDS_LIST
|
|
344
|
+
}
|
|
345
|
+
});
|
|
346
|
+
await this.inventory.delete(dashboard);
|
|
347
|
+
onSuccess();
|
|
348
|
+
}
|
|
349
|
+
catch (ex) {
|
|
350
|
+
// intended empty
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
getFilters(columns, pagination, text) {
|
|
354
|
+
return {
|
|
355
|
+
query: this.getQueryString(columns),
|
|
356
|
+
...(text && { text }),
|
|
357
|
+
pageSize: pagination.pageSize,
|
|
358
|
+
currentPage: pagination.currentPage,
|
|
359
|
+
withTotalPages: true,
|
|
360
|
+
withTotalElements: true
|
|
361
|
+
};
|
|
362
|
+
}
|
|
363
|
+
getQueryString(columns) {
|
|
364
|
+
const queryFromColumns = this.getQueryObj(columns);
|
|
365
|
+
const base = this.queriesUtil.addAndFilter(queryFromColumns, this.baseTypeDashboardsFilter);
|
|
366
|
+
const withAppliedTo = this.queriesUtil.addAndFilter(base, {
|
|
367
|
+
__filter: this.contextDashboardService.appliedToFilter()
|
|
368
|
+
});
|
|
369
|
+
return this.queriesUtil.buildQuery(withAppliedTo);
|
|
370
|
+
}
|
|
371
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerService, deps: [{ token: i1$1.InventoryService }, { token: i2.UserPreferencesService }, { token: i2.ModalService }, { token: i3$1.TranslateService }, { token: i3.ContextDashboardService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
372
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerService, providedIn: 'root' }); }
|
|
373
|
+
}
|
|
374
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: DashboardManagerService, decorators: [{
|
|
375
|
+
type: Injectable,
|
|
376
|
+
args: [{
|
|
377
|
+
providedIn: 'root'
|
|
378
|
+
}]
|
|
379
|
+
}], ctorParameters: () => [{ type: i1$1.InventoryService }, { type: i2.UserPreferencesService }, { type: i2.ModalService }, { type: i3$1.TranslateService }, { type: i3.ContextDashboardService }] });
|
|
380
|
+
|
|
362
381
|
class TypeDashboardsListComponent {
|
|
363
382
|
constructor(dashboardManagerService, bsModalService, gainsightService) {
|
|
364
383
|
this.dashboardManagerService = dashboardManagerService;
|
|
@@ -528,5 +547,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
528
547
|
* Generated bundle index. Do not edit.
|
|
529
548
|
*/
|
|
530
549
|
|
|
531
|
-
export { DASHBOARD_MANAGER_PRODUCT_EXPERIENCE, DashboardManagerModule };
|
|
550
|
+
export { DASHBOARD_MANAGER_PRODUCT_EXPERIENCE, DashboardManagerModule, TypeDashboardsListComponent };
|
|
532
551
|
//# sourceMappingURL=c8y-ngx-components-dashboard-manager.mjs.map
|