@c8y/ngx-components 1021.57.0 → 1021.58.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/datapoint-explorer/view/configuration/name-generator.service.d.ts +7 -0
- package/datapoint-explorer/view/configuration/name-generator.service.d.ts.map +1 -0
- package/datapoint-explorer/view/configuration/workspace-configuration.component.d.ts +1 -0
- package/datapoint-explorer/view/configuration/workspace-configuration.component.d.ts.map +1 -1
- package/esm2022/datapoint-explorer/view/configuration/name-generator.service.mjs +20 -0
- package/esm2022/datapoint-explorer/view/configuration/workspace-configuration.component.mjs +4 -4
- package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs +19 -2
- package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class NameGeneratorService {
|
|
3
|
+
generateName(): string;
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NameGeneratorService, never>;
|
|
5
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<NameGeneratorService>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=name-generator.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"name-generator.service.d.ts","sourceRoot":"","sources":["../../../../datapoint-explorer/view/configuration/name-generator.service.ts"],"names":[],"mappings":";AAGA,qBAGa,oBAAoB;IAC/B,YAAY,IAAI,MAAM;yCADX,oBAAoB;6CAApB,oBAAoB;CAQhC"}
|
|
@@ -17,6 +17,7 @@ export declare class WorkspaceConfigComponent implements OnInit, OnChanges {
|
|
|
17
17
|
private readonly clipboardService;
|
|
18
18
|
private readonly activatedRoute;
|
|
19
19
|
private readonly router;
|
|
20
|
+
private readonly nameGeneratorService;
|
|
20
21
|
ngOnInit(): void;
|
|
21
22
|
ngOnChanges(changes: SimpleChanges): void;
|
|
22
23
|
addConfig(duplicatedConfig?: DatapointsGraphWidgetConfig): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-configuration.component.d.ts","sourceRoot":"","sources":["../../../../datapoint-explorer/view/configuration/workspace-configuration.component.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EAGZ,SAAS,EACT,MAAM,EAEN,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAA0B,SAAS,EAAe,MAAM,gBAAgB,CAAC;AAUhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;;
|
|
1
|
+
{"version":3,"file":"workspace-configuration.component.d.ts","sourceRoot":"","sources":["../../../../datapoint-explorer/view/configuration/workspace-configuration.component.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EAGZ,SAAS,EACT,MAAM,EAEN,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAA0B,SAAS,EAAe,MAAM,gBAAgB,CAAC;AAUhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;;AAKzE,qBAMa,wBAAyB,YAAW,MAAM,EAAE,SAAS;IACvD,aAAa,EAAE,2BAA2B,CAAC;IAC1C,qBAAqB,4CAAmD;IAElF,oBAAoB,EAAE,sBAAsB,CAAC;IAC7C,cAAc,EAAE,sBAAsB,EAAE,CAAM;IAC9C,uBAAuB,EAAE,SAAS,CAAC;IACnC,mBAAmB,2CAAqD;IACxE,mBAAmB,yBAAmC;IAEtD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAyC;IACvF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA+B;IACnE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA4B;IAC7D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAgC;IAErE,QAAQ,IAAI,IAAI;IAMhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAMzC,SAAS,CAAC,gBAAgB,CAAC,EAAE,2BAA2B,GAAG,IAAI;IAe/D,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,sBAAsB,GAAG,IAAI;IAYnF,wBAAwB,CAAC,aAAa,EAAE,sBAAsB,GAAG,IAAI;IAYrE,mBAAmB,CAAC,aAAa,EAAE,sBAAsB,GAAG,IAAI;IAShE,QAAQ,IAAI,IAAI;IASV,WAAW,CAAC,aAAa,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,oBAAoB;IA0B5B,OAAO,CAAC,wBAAwB;IA+BhC,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,yBAAyB;yCAjLtB,wBAAwB;2CAAxB,wBAAwB;CA2LpC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { adjectives, nouns } from './naming-dictionary';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class NameGeneratorService {
|
|
5
|
+
generateName() {
|
|
6
|
+
const getRandomElement = (arr) => arr[Math.floor(Math.random() * arr.length)];
|
|
7
|
+
const randomAdjective = getRandomElement(adjectives);
|
|
8
|
+
const randomNoun = getRandomElement(nouns);
|
|
9
|
+
return `${randomAdjective}_${randomNoun}`;
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NameGeneratorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
12
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NameGeneratorService, providedIn: 'root' }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NameGeneratorService, decorators: [{
|
|
15
|
+
type: Injectable,
|
|
16
|
+
args: [{
|
|
17
|
+
providedIn: 'root'
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZS1nZW5lcmF0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2RhdGFwb2ludC1leHBsb3Jlci92aWV3L2NvbmZpZ3VyYXRpb24vbmFtZS1nZW5lcmF0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBS3hELE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFBWTtRQUNWLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxHQUFhLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN4RixNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyRCxNQUFNLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUzQyxPQUFPLEdBQUcsZUFBZSxJQUFJLFVBQVUsRUFBRSxDQUFDO0lBQzVDLENBQUM7K0dBUFUsb0JBQW9CO21IQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7NEZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFkamVjdGl2ZXMsIG5vdW5zIH0gZnJvbSAnLi9uYW1pbmctZGljdGlvbmFyeSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE5hbWVHZW5lcmF0b3JTZXJ2aWNlIHtcbiAgZ2VuZXJhdGVOYW1lKCk6IHN0cmluZyB7XG4gICAgY29uc3QgZ2V0UmFuZG9tRWxlbWVudCA9IChhcnI6IHN0cmluZ1tdKSA9PiBhcnJbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogYXJyLmxlbmd0aCldO1xuICAgIGNvbnN0IHJhbmRvbUFkamVjdGl2ZSA9IGdldFJhbmRvbUVsZW1lbnQoYWRqZWN0aXZlcyk7XG4gICAgY29uc3QgcmFuZG9tTm91biA9IGdldFJhbmRvbUVsZW1lbnQobm91bnMpO1xuXG4gICAgcmV0dXJuIGAke3JhbmRvbUFkamVjdGl2ZX1fJHtyYW5kb21Ob3VufWA7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -6,8 +6,7 @@ import { BsDropdownModule } from 'ngx-bootstrap/dropdown';
|
|
|
6
6
|
import { TooltipModule } from 'ngx-bootstrap/tooltip';
|
|
7
7
|
import { WorkspaceConfigurationService } from './workspace-configuration.service';
|
|
8
8
|
import { ActivatedRoute, Router } from '@angular/router';
|
|
9
|
-
import {
|
|
10
|
-
import { adjectives, nouns } from './naming-dictionary';
|
|
9
|
+
import { NameGeneratorService } from './name-generator.service';
|
|
11
10
|
import * as i0 from "@angular/core";
|
|
12
11
|
import * as i1 from "@c8y/ngx-components";
|
|
13
12
|
import * as i2 from "@angular/common";
|
|
@@ -27,6 +26,7 @@ export class WorkspaceConfigComponent {
|
|
|
27
26
|
this.clipboardService = inject(ClipboardService);
|
|
28
27
|
this.activatedRoute = inject(ActivatedRoute);
|
|
29
28
|
this.router = inject(Router);
|
|
29
|
+
this.nameGeneratorService = inject(NameGeneratorService);
|
|
30
30
|
}
|
|
31
31
|
ngOnInit() {
|
|
32
32
|
this.initializeContextSourceId();
|
|
@@ -39,7 +39,7 @@ export class WorkspaceConfigComponent {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
addConfig(duplicatedConfig) {
|
|
42
|
-
const name =
|
|
42
|
+
const name = this.nameGeneratorService.generateName();
|
|
43
43
|
const workspace = {
|
|
44
44
|
id: new Date().toISOString(),
|
|
45
45
|
label: name,
|
|
@@ -171,4 +171,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
171
171
|
}], onConfigurationChange: [{
|
|
172
172
|
type: Output
|
|
173
173
|
}] } });
|
|
174
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vZGF0YXBvaW50LWV4cGxvcmVyL3ZpZXcvY29uZmlndXJhdGlvbi93b3Jrc3BhY2UtY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9kYXRhcG9pbnQtZXhwbG9yZXIvdmlldy9jb25maWd1cmF0aW9uL3dvcmtzcGFjZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUdMLE1BQU0sRUFFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWEsV0FBVyxFQUFhLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsbUJBQW1CLEVBQ25CLFVBQVUsRUFDVixPQUFPLEVBQ1AsV0FBVyxFQUNaLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR3RELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7QUFReEQsTUFBTSxPQUFPLHdCQUF3QjtJQU5yQztRQVFZLDBCQUFxQixHQUFHLElB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Z0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQzs4QkFHdEUsYUFBYTtzQkFBckIsS0FBSztnQkFDSSxxQkFBcUI7c0JBQTlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgQ2xpcGJvYXJkU2VydmljZSxcbiAgQ29udGV4dFJvdXRlU2VydmljZSxcbiAgQ29yZU1vZHVsZSxcbiAgZ2V0dGV4dCxcbiAgVmlld0NvbnRleHRcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBCc0Ryb3Bkb3duTW9kdWxlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9kcm9wZG93bic7XG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC90b29sdGlwJztcbmltcG9ydCB7IFdvcmtzcGFjZUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuL3dvcmtzcGFjZS1jb25maWd1cmF0aW9uLm1vZGVsJztcbmltcG9ydCB7IERhdGFwb2ludHNHcmFwaFdpZGdldENvbmZpZyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvZWNoYXJ0JztcbmltcG9ydCB7IFdvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi93b3Jrc3BhY2UtY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgdW5pcXVlTmFtZXNHZW5lcmF0b3IgfSBmcm9tICd1bmlxdWUtbmFtZXMtZ2VuZXJhdG9yJztcbmltcG9ydCB7IGFkamVjdGl2ZXMsIG5vdW5zIH0gZnJvbSAnLi9uYW1pbmctZGljdGlvbmFyeSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS13b3Jrc3BhY2UtY29uZmlnJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dvcmtzcGFjZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEJzRHJvcGRvd25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBMTF5TW9kdWxlLCBUb29sdGlwTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBXb3Jrc3BhY2VDb25maWdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHVwZGF0ZWRDb25maWc6IERhdGFwb2ludHNHcmFwaFdpZGdldENvbmZpZztcbiAgQE91dHB1dCgpIG9uQ29uZmlndXJhdGlvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0YXBvaW50c0dyYXBoV2lkZ2V0Q29uZmlnPigpO1xuXG4gIGN1cnJlbnRDb25maWd1cmF0aW9uOiBXb3Jrc3BhY2VDb25maWd1cmF0aW9uO1xuICBjb25maWd1cmF0aW9uczogV29ya3NwYWNlQ29uZmlndXJhdGlvbltdID0gW107XG4gIGNvbmZpZ3VyYXRpb25zRm9ybUdyb3VwOiBGb3JtR3JvdXA7XG4gIGFjdGl2ZUNvbmZpZ1Rvb2x0aXAgPSBnZXR0ZXh0KCdBY3RpdmUgY29uZmlndXJhdGlvbiBjYW5ub3QgYmUgcmVtb3ZlZCcpO1xuICByZW1vdmVDb25maWdUb29sdGlwID0gZ2V0dGV4dCgnUmVtb3ZlIGNvbmZpZ3VyYXRpb24nKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGZvcm1CdWlsZGVyID0gaW5qZWN0KEZvcm1CdWlsZGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSB3b3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZSA9IGluamVjdChXb3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29udGV4dFJvdXRlU2VydmljZSA9IGluamVjdChDb250ZXh0Um91dGVTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBjbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0KENsaXBib2FyZFNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxpemVDb250ZXh0U291cmNlSWQoKTtcbiAgICB0aGlzLmluaXRpYWxpemVDb25maWd1cmF0aW9ucygpO1xuICAgIHRoaXMuaW5pdFdvcmtzcGFjZUZvcm0oKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy51cGRhdGVkQ29uZmlnICYmICFjaGFuZ2VzLnVwZGF0ZWRDb25maWcuZmlyc3RDaGFuZ2UpIHtcbiAgICAgIHRoaXMudXBkYXRlQ29uZmlndXJhdGlvbnMoKTtcbiAgICB9XG4gIH1cblxuICBhZGRDb25maWcoZHVwbGljYXRlZENvbmZpZz86IERhdGFwb2ludHNHcmFwaFdpZGdldENvbmZpZyk6IHZvaWQge1xuICAgIGNvbnN0IG5hbWUgPSB1bmlxdWVOYW1lc0dlbmVyYXRvcih7IGRpY3Rpb25hcmllczogW2FkamVjdGl2ZXMsIG5vdW5zXSB9KTtcbiAgICBjb25zdCB3b3Jrc3BhY2U6IFdvcmtzcGFjZUNvbmZpZ3VyYXRpb24gPSB7XG4gICAgICBpZDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgbGFiZWw6IG5hbWUsXG4gICAgICBjb25maWc6IHsgZGF0YXBvaW50czogW10sIGFsYXJtc0V2ZW50c0NvbmZpZ3M6IFtdIH1cbiAgICB9O1xuICAgIGlmIChkdXBsaWNhdGVkQ29uZmlnKSB7XG4gICAgICB3b3Jrc3BhY2UuY29uZmlnID0gZHVwbGljYXRlZENvbmZpZztcbiAgICB9XG4gICAgdGhpcy5jb25maWd1cmF0aW9ucyA9IFt3b3Jrc3BhY2UsIC4uLnRoaXMuY29uZmlndXJhdGlvbnNdO1xuICAgIHRoaXMuaW5pdFdvcmtzcGFjZUZvcm0oKTtcbiAgICB0aGlzLmNoYW5nZUNvbmZpZ3VyYXRpb24odHJ1ZSwgd29ya3NwYWNlKTtcbiAgfVxuXG4gIGNoYW5nZUNvbmZpZ3VyYXRpb24oc2VsZWN0ZWQ6IGJvb2xlYW4sIGNvbmZpZ3VyYXRpb246IFdvcmtzcGFjZUNvbmZpZ3VyYXRpb24pOiB2b2lkIHtcbiAgICBpZiAoIXNlbGVjdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uO1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFxuICAgICAgdGhpcy53b3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZS5MT0NBTF9TVE9SQUdFX0RFRkFVTFRfSURfS0VZLFxuICAgICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5pZFxuICAgICk7XG4gICAgdGhpcy5vbkNvbmZpZ3VyYXRpb25DaGFuZ2UuZW1pdChjb25maWd1cmF0aW9uLmNvbmZpZyk7XG4gIH1cblxuICB1cGRhdGVDb25maWd1cmF0aW9uTGFiZWwoY29uZmlndXJhdGlvbjogV29ya3NwYWNlQ29uZmlndXJhdGlvbik6IHZvaWQge1xuICAgIHRoaXMuY29uZmlndXJhdGlvbnMgPSB0aGlzLmNvbmZpZ3VyYXRpb25zLm1hcChjID0+XG4gICAgICBjLmlkID09PSBjb25maWd1cmF0aW9uLmlkID8gY29uZmlndXJhdGlvbiA6IGNcbiAgICApO1xuICAgIHRoaXMud29ya3NwYWNlQ29uZmlndXJhdGlvblNlcnZpY2Uuc2F2ZUNvbmZpZ3VyYXRpb25zKFxuICAgICAgdGhpcy5jb25maWd1cmF0aW9ucyxcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24/LmlkIHx8ICcnXG4gICAgKTtcbiAgICB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uID0gY29uZmlndXJhdGlvbjtcbiAgICB0aGlzLm9uQ29uZmlndXJhdGlvbkNoYW5nZS5lbWl0KGNvbmZpZ3VyYXRpb24uY29uZmlnKTtcbiAgfVxuXG4gIGRlbGV0ZUNvbmZpZ3VyYXRpb24oY29uZmlndXJhdGlvbjogV29ya3NwYWNlQ29uZmlndXJhdGlvbik6IHZvaWQge1xuICAgIHRoaXMuY29uZmlndXJhdGlvbnMgPSB0aGlzLmNvbmZpZ3VyYXRpb25zLmZpbHRlcihjID0+IGMuaWQgIT09IGNvbmZpZ3VyYXRpb24uaWQpO1xuICAgIHRoaXMuaW5pdFdvcmtzcGFjZUZvcm0oKTtcbiAgICB0aGlzLndvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLnNhdmVDb25maWd1cmF0aW9ucyhcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvbnMsXG4gICAgICB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uPy5pZCB8fCAnJ1xuICAgICk7XG4gIH1cblxuICBjbGVhckFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbmZpZ3VyYXRpb25zID0gW3RoaXMuY3VycmVudENvbmZpZ3VyYXRpb25dO1xuICAgIHRoaXMuaW5pdFdvcmtzcGFjZUZvcm0oKTtcbiAgICB0aGlzLndvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLnNhdmVDb25maWd1cmF0aW9ucyhcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvbnMsXG4gICAgICB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uPy5pZCB8fCAnJ1xuICAgICk7XG4gIH1cblxuICBhc3luYyBzaGFyZUNvbmZpZyhjb25maWd1cmF0aW9uOiBXb3Jrc3BhY2VDb25maWd1cmF0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5jbGlwYm9hcmRTZXJ2aWNlLndyaXRlVGV4dChKU09OLnN0cmluZ2lmeShjb25maWd1cmF0aW9uLmNvbmZpZykpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRDb25maWdGcm9tVXJsKHF1ZXJ5UGFyYW1zOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmFkZENvbmZpZygpO1xuICAgIGNvbnN0IGNvbmZpZyA9IEpTT04ucGFyc2UocXVlcnlQYXJhbXMuY29uZmlnKTtcbiAgICB0aGlzLm9uQ29uZmlndXJhdGlvbkNoYW5nZS5lbWl0KGNvbmZpZyk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUNvbmZpZ3VyYXRpb25zKCk6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24uY29uZmlnID0gdGhpcy51cGRhdGVkQ29uZmlnO1xuICAgIHRoaXMuY29uZmlndXJhdGlvbnMgPSB0aGlzLmNvbmZpZ3VyYXRpb25zLm1hcChjdXJyZW50Q29uZmlnID0+XG4gICAgICBjdXJyZW50Q29uZmlnLmlkID09PSB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmlkID8gdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbiA6IGN1cnJlbnRDb25maWdcbiAgICApO1xuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0ge1xuICAgICAgY29uZmlnSWQ6IHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24uaWQsXG4gICAgICBsYWJlbDogdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5sYWJlbCxcbiAgICAgIGNvbmZpZzogSlNPTi5zdHJpbmdpZnkodGhpcy51cGRhdGVkQ29uZmlnKVxuICAgIH07XG4gICAgdGhpcy53b3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZS5zYXZlQ29uZmlndXJhdGlvbnMoXG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25zLFxuICAgICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5pZFxuICAgICk7XG4gICAgY29uc3QgY29udHJvbCA9IDxGb3JtQXJyYXk+dGhpcy5jb25maWd1cmF0aW9uc0Zvcm1Hcm91cC5jb250cm9sc1snY29uZmlndXJhdGlvbnMnXTtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuY29uZmlndXJhdGlvbnMuZmluZEluZGV4KGMgPT4gYy5pZCA9PT0gdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5pZCk7XG4gICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgY29udHJvbC5hdChpbmRleCkucGF0Y2hWYWx1ZSh7XG4gICAgICAgIGxhYmVsOiB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmxhYmVsLFxuICAgICAgICBjb25maWc6IHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24uY29uZmlnLFxuICAgICAgICBpZDogdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5pZFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtdLCB7IHF1ZXJ5UGFyYW1zIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplQ29uZmlndXJhdGlvbnMoKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlndXJhdGlvbnMgPSB0aGlzLndvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLmdldENvbmZpZ3VyYXRpb25zKCk7XG4gICAgY29uc3QgZGVmYXVsdElkID0gdGhpcy53b3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZS5nZXREZWZhdWx0Q29uZmlndXJhdGlvbklkKCk7XG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB0aGlzLnJvdXRlci5wYXJzZVVybCh0aGlzLnJvdXRlci51cmwpLnF1ZXJ5UGFyYW1zO1xuICAgIGlmIChjb25maWd1cmF0aW9ucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvbnMgPSBjb25maWd1cmF0aW9ucztcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24gPVxuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25zLmZpbmQoYyA9PiBjLmlkID09PSBkZWZhdWx0SWQpIHx8IHRoaXMuY29uZmlndXJhdGlvbnNbMF07XG5cbiAgICAgIHRoaXMub25Db25maWd1cmF0aW9uQ2hhbmdlLmVtaXQodGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5jb25maWcpO1xuICAgICAgaWYgKHF1ZXJ5UGFyYW1zPy5jb25maWdJZCAmJiAhdGhpcy5jb25maWd1cmF0aW9ucy5maW5kKGMgPT4gYy5pZCA9PT0gcXVlcnlQYXJhbXMuY29uZmlnSWQpKSB7XG4gICAgICAgIHRoaXMuYWRkQ29uZmlnRnJvbVVybChxdWVyeVBhcmFtcyk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBxdWVyeVBhcmFtcz8uY29uZmlnSWQgJiZcbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9ucy5maW5kKGMgPT4gYy5pZCA9PT0gcXVlcnlQYXJhbXMuY29uZmlnSWQpICYmXG4gICAgICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24uaWQgIT09IHF1ZXJ5UGFyYW1zLmNvbmZpZ0lkXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbiA9IHRoaXMuY29uZmlndXJhdGlvbnMuZmluZChjID0+IGMuaWQgPT09IHF1ZXJ5UGFyYW1zLmNvbmZpZ0lkKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VDb25maWd1cmF0aW9uKHRydWUsIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbikge1xuICAgICAgaWYgKE9iamVjdC5rZXlzKHF1ZXJ5UGFyYW1zKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhpcy5hZGRDb25maWcoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5hZGRDb25maWdGcm9tVXJsKHF1ZXJ5UGFyYW1zKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXRXb3Jrc3BhY2VGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlndXJhdGlvbnNGb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGNvbmZpZ3VyYXRpb25zOiB0aGlzLmZvcm1CdWlsZGVyLmFycmF5KFtdKVxuICAgIH0pO1xuXG4gICAgdGhpcy5wYXRjaEZvcm0oKTtcbiAgfVxuXG4gIHByaXZhdGUgcGF0Y2hGb3JtKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRyb2wgPSA8Rm9ybUFycmF5PnRoaXMuY29uZmlndXJhdGlvbnNGb3JtR3JvdXAuY29udHJvbHNbJ2NvbmZpZ3VyYXRpb25zJ107XG4gICAgdGhpcy5jb25maWd1cmF0aW9ucy5mb3JFYWNoKHdvcmtzcGFjZSA9PiB7XG4gICAgICBjb250cm9sLnB1c2godGhpcy5wYXRjaFZhbHVlcyh3b3Jrc3BhY2UpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcGF0Y2hWYWx1ZXMod29ya3NwYWNlOiBXb3Jrc3BhY2VDb25maWd1cmF0aW9uKTogRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBsYWJlbDogW3dvcmtzcGFjZS5sYWJlbF0sXG4gICAgICBjb25maWc6IFt3b3Jrc3BhY2UuY29uZmlnXSxcbiAgICAgIGlkOiBbd29ya3NwYWNlLmlkXVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplQ29udGV4dFNvdXJjZUlkKCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdXRlQ29udGV4dCA9IHRoaXMuY29udGV4dFJvdXRlU2VydmljZS5nZXRDb250ZXh0RGF0YSh0aGlzLmFjdGl2YXRlZFJvdXRlKTtcbiAgICBpZiAoIXJvdXRlQ29udGV4dCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB7IGNvbnRleHQsIGNvbnRleHREYXRhIH0gPSByb3V0ZUNvbnRleHQ7XG4gICAgaWYgKFtWaWV3Q29udGV4dC5EZXZpY2UsIFZpZXdDb250ZXh0Lkdyb3VwXS5pbmNsdWRlcyhjb250ZXh0KSkge1xuICAgICAgdGhpcy53b3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZS5jb250ZXh0SWRTaWduYWwuc2V0KGNvbnRleHREYXRhPy5pZCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZHJvcGRvd25cIlxuICAjYWN0aW9uYmFyX2Ryb3Bkb3duPVwiYnMtZHJvcGRvd25cIlxuICBbY2RrVHJhcEZvY3VzXT1cImFjdGlvbmJhcl9kcm9wZG93bi5pc09wZW5cIlxuICBkcm9wZG93blxuICBbaW5zaWRlQ2xpY2tdPVwidHJ1ZVwiXG4+XG5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiZHJvcGRvd24tdG9nZ2xlIGZvcm0tY29udHJvbCBsLWgtdGlnaHQgZC1mbGV4IGEtaS1jZW50ZXJcIlxuICAgIGF0dHIuYXJpYS1sYWJlbD1cInt7IGN1cnJlbnRDb25maWd1cmF0aW9uLmxhYmVsIH19XCJcbiAgICB0b29sdGlwPVwie3sgJ1NlbGVjdGVkIGNvbmZpZ3VyYXRpb24nIHwgdHJhbnNsYXRlIH19XCJcbiAgICBwbGFjZW1lbnQ9XCJ0b3BcIlxuICAgIGNvbnRhaW5lcj1cImJvZHlcIlxuICAgIGRhdGEtY3k9XCJjdXJyZW50LWNvbmZpZ3VyYXRpb24tZHJvcGRvd24tYnV0dG9uXCJcbiAgICBbYWRhcHRpdmVQb3NpdGlvbl09XCJmYWxzZVwiXG4gICAgW2RlbGF5XT1cIjUwMFwiXG4gICAgZHJvcGRvd25Ub2dnbGVcbiAgPlxuICAgIDxpXG4gICAgICBjbGFzcz1cIm0tci00XCJcbiAgICAgIGM4eUljb249XCJsaXN0XCJcbiAgICA+PC9pPlxuICAgIDxkaXYgY2xhc3M9XCJkLWNvbCB0ZXh0LWxlZnQgZml0LXdcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC0xMlwiPlxuICAgICAgICB7eyAnQ29uZmlndXJhdGlvbicgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC0xMCB0ZXh0LW11dGVkIHRleHQtdHJ1bmNhdGVcIj5cbiAgICAgICAge3sgY3VycmVudENvbmZpZ3VyYXRpb24ubGFiZWwgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8c3BhbiBjbGFzcz1cImNhcmV0IG0tci0xNiBtLWwtNFwiPjwvc3Bhbj5cbiAgPC9idXR0b24+XG4gIDxkaXZcbiAgICBjbGFzcz1cImRyb3Bkb3duLW1lbnUgZHJvcGRvd24tbWVudS13aWRlIGRyb3Bkb3duLW1lbnUtYWN0aW9uLWJhclwiXG4gICAgKmRyb3Bkb3duTWVudVxuICA+XG4gICAgPGRpdiBjbGFzcz1cInN0aWNreS10b3Agc2VwYXJhdG9yLWJvdHRvbSBwLXQtOCBwLWItOCBwLWwtMTYgcC1yLTE2XCI+XG4gICAgICA8cD5cbiAgICAgICAgPHN0cm9uZz57eyAnRGF0YSBleHBsb3JlciBjb25maWd1cmF0aW9ucycgfCB0cmFuc2xhdGUgfX08L3N0cm9uZz5cbiAgICAgIDwvcD5cbiAgICAgIDxwPlxuICAgICAgICA8c21hbGw+e3sgJ0Vhc2lseSBzd2l0Y2ggYW5kIG1hbmFnZSBjb25maWd1cmF0aW9ucy4nIHwgdHJhbnNsYXRlIH19PC9zbWFsbD5cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgICA8Yzh5LWxpc3QtZ3JvdXAgY2xhc3M9XCJuby1ib3JkZXItbGFzdFwiPlxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJjb25maWd1cmF0aW9uc0Zvcm1Hcm91cFwiPlxuICAgICAgICA8ZGl2IGZvcm1BcnJheU5hbWU9XCJjb25maWd1cmF0aW9uc1wiPlxuICAgICAgICAgIDxjOHktbGlcbiAgICAgICAgICAgIGNsYXNzPVwicC0wXCJcbiAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICBsZXQgY29uZmlndXJhdGlvbiBvZiBjb25maWd1cmF0aW9uc0Zvcm1Hcm91cC5jb250cm9scy5jb25maWd1cmF0aW9uc1snY29udHJvbHMnXTtcbiAgICAgICAgICAgICAgbGV0IGkgPSBpbmRleFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIFtkZW5zZV09XCJ0cnVlXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Yzh5LWxpLXJhZGlvXG4gICAgICAgICAgICAgIFtzZWxlY3RlZF09XCJjb25maWd1cmF0aW9uLnZhbHVlLmlkID09PSBjdXJyZW50Q29uZmlndXJhdGlvbi5pZFwiXG4gICAgICAgICAgICAgIChvblNlbGVjdCk9XCJjaGFuZ2VDb25maWd1cmF0aW9uKCRldmVudCwgY29uZmlndXJhdGlvbi52YWx1ZSlcIlxuICAgICAgICAgICAgPjwvYzh5LWxpLXJhZGlvPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhLWktY2VudGVyIGdhcC04XCI+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZsZXgtZ3JvdyBtaW4td2lkdGgtMFwiXG4gICAgICAgICAgICAgICAgW2Zvcm1Hcm91cE5hbWVdPVwiaVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZWRpdGFibGVcIlxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICB1cGRhdGVkOlxuICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24uY29udHJvbHMubGFiZWwudG91Y2hlZCAmJiBjb25maWd1cmF0aW9uLmNvbnRyb2xzLmxhYmVsLmRpcnR5XG4gICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGguY2hdPVwiY29uZmlndXJhdGlvbi52YWx1ZS5sYWJlbCB8fCAyNVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0NvbmZpZ3VyYXRpb24gbGFiZWwnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnQ29uZmlndXJhdGlvbiAxJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJ1cGRhdGVDb25maWd1cmF0aW9uTGFiZWwoY29uZmlndXJhdGlvbi52YWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtbm9ncm93IGQtZmxleCBnYXAtOFwiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLWRvdCBidG5cIlxuICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInRHVwbGljYXRlIGNvbmZpZ3VyYXRpb24nIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgIHRvb2x0aXA9XCJ7eyAnRHVwbGljYXRlIGNvbmZpZ3VyYXRpb24nIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImxlZnRcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFkZENvbmZpZyhjb25maWd1cmF0aW9uLnZhbHVlLmNvbmZpZylcIlxuICAgICAgICAgICAgICAgICAgW2RlbGF5XT1cIjUwMFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGkgYzh5SWNvbj1cImNvcHlcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bi1kb3QgYnRuIGJ0bi1kb3QtLWRhbmdlclwiXG4gICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidSZW1vdmUgY29uZmlndXJhdGlvbnMnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgIHRvb2x0aXA9XCJ7e1xuICAgICAgICAgICAgICAgICAgICAoY29uZmlndXJhdGlvbi52YWx1ZS5pZCA9PT0gY3VycmVudENvbmZpZ3VyYXRpb24uaWRcbiAgICAgICAgICAgICAgICAgICAgICA/IGFjdGl2ZUNvbmZpZ1Rvb2x0aXBcbiAgICAgICAgICAgICAgICAgICAgICA6IHJlbW92ZUNvbmZpZ1Rvb2x0aXBcbiAgICAgICAgICAgICAgICAgICAgKSB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwibGVmdFwiXG4gICAgICAgICAgICAgICAgICBbZGVsYXldPVwiNTAwXCJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGRlbGV0ZUNvbmZpZ3VyYXRpb24oY29uZmlndXJhdGlvbi52YWx1ZSlcIlxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbmZpZ3VyYXRpb24udmFsdWUuaWQgPT09IGN1cnJlbnRDb25maWd1cmF0aW9uLmlkXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8aSBjOHlJY29uPVwibWludXMtY2lyY2xlXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvYzh5LWxpPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZm9ybT5cbiAgICA8L2M4eS1saXN0LWdyb3VwPlxuICAgIDxkaXYgY2xhc3M9XCJzdGlja3ktYm90dG9tIHNlcGFyYXRvci10b3BcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggcC1sLTE2IHAtci0xNiBwLXQtOCBwLWItOFwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBidG4tc20gZmxleC1ncm93XCJcbiAgICAgICAgICAoY2xpY2spPVwiY2xlYXJBbGwoKVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImNvbmZpZ3VyYXRpb25zLmxlbmd0aCA8IDJcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgW2M4eUljb25dPVwiJ2RlbGV0ZSdcIj48L2k+XG4gICAgICAgICAge3sgJ0RlbGV0ZSBhbGwgY29uZmlndXJhdGlvbnMnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgYnRuLXNtIGZsZXgtZ3Jvd1wiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cImFkZENvbmZpZygpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxpIFtjOHlJY29uXT1cIidhZGQtY2lyY2xlLW91dGxpbmUnXCI+PC9pPlxuICAgICAgICAgIHt7ICdBZGQgY29uZmlndXJhdGlvbicgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vZGF0YXBvaW50LWV4cGxvcmVyL3ZpZXcvY29uZmlndXJhdGlvbi93b3Jrc3BhY2UtY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9kYXRhcG9pbnQtZXhwbG9yZXIvdmlldy9jb25maWd1cmF0aW9uL3dvcmtzcGFjZS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUdMLE1BQU0sRUFFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWEsV0FBVyxFQUFhLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsbUJBQW1CLEVBQ25CLFVBQVUsRUFDVixPQUFPLEVBQ1AsV0FBVyxFQUNaLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR3RELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7O0FBUWhFLE1BQU0sT0FBTyx3QkFBd0I7SUFOckM7UUFRWSwwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQztRQUdsRixtQkFBYyxHQUE2QixFQUFFLENBQUM7UUFFOUMs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OEJBR3RFLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0kscUJBQXFCO3NCQUE5QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIENsaXBib2FyZFNlcnZpY2UsXG4gIENvbnRleHRSb3V0ZVNlcnZpY2UsXG4gIENvcmVNb2R1bGUsXG4gIGdldHRleHQsXG4gIFZpZXdDb250ZXh0XG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgQnNEcm9wZG93bk1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvZHJvcGRvd24nO1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvdG9vbHRpcCc7XG5pbXBvcnQgeyBXb3Jrc3BhY2VDb25maWd1cmF0aW9uIH0gZnJvbSAnLi93b3Jrc3BhY2UtY29uZmlndXJhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBEYXRhcG9pbnRzR3JhcGhXaWRnZXRDb25maWcgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL2VjaGFydCc7XG5pbXBvcnQgeyBXb3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4vd29ya3NwYWNlLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5hbWVHZW5lcmF0b3JTZXJ2aWNlIH0gZnJvbSAnLi9uYW1lLWdlbmVyYXRvci5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LXdvcmtzcGFjZS1jb25maWcnLFxuICB0ZW1wbGF0ZVVybDogJy4vd29ya3NwYWNlLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgQnNEcm9wZG93bk1vZHVsZSwgRm9ybXNNb2R1bGUsIEExMXlNb2R1bGUsIFRvb2x0aXBNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFdvcmtzcGFjZUNvbmZpZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgdXBkYXRlZENvbmZpZzogRGF0YXBvaW50c0dyYXBoV2lkZ2V0Q29uZmlnO1xuICBAT3V0cHV0KCkgb25Db25maWd1cmF0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRhcG9pbnRzR3JhcGhXaWRnZXRDb25maWc+KCk7XG5cbiAgY3VycmVudENvbmZpZ3VyYXRpb246IFdvcmtzcGFjZUNvbmZpZ3VyYXRpb247XG4gIGNvbmZpZ3VyYXRpb25zOiBXb3Jrc3BhY2VDb25maWd1cmF0aW9uW10gPSBbXTtcbiAgY29uZmlndXJhdGlvbnNGb3JtR3JvdXA6IEZvcm1Hcm91cDtcbiAgYWN0aXZlQ29uZmlnVG9vbHRpcCA9IGdldHRleHQoJ0FjdGl2ZSBjb25maWd1cmF0aW9uIGNhbm5vdCBiZSByZW1vdmVkJyk7XG4gIHJlbW92ZUNvbmZpZ1Rvb2x0aXAgPSBnZXR0ZXh0KCdSZW1vdmUgY29uZmlndXJhdGlvbicpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZm9ybUJ1aWxkZXIgPSBpbmplY3QoRm9ybUJ1aWxkZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IHdvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlID0gaW5qZWN0KFdvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBjb250ZXh0Um91dGVTZXJ2aWNlID0gaW5qZWN0KENvbnRleHRSb3V0ZVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGNsaXBib2FyZFNlcnZpY2UgPSBpbmplY3QoQ2xpcGJvYXJkU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZhdGVkUm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IG5hbWVHZW5lcmF0b3JTZXJ2aWNlID0gaW5qZWN0KE5hbWVHZW5lcmF0b3JTZXJ2aWNlKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxpemVDb250ZXh0U291cmNlSWQoKTtcbiAgICB0aGlzLmluaXRpYWxpemVDb25maWd1cmF0aW9ucygpO1xuICAgIHRoaXMuaW5pdFdvcmtzcGFjZUZvcm0oKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy51cGRhdGVkQ29uZmlnICYmICFjaGFuZ2VzLnVwZGF0ZWRDb25maWcuZmlyc3RDaGFuZ2UpIHtcbiAgICAgIHRoaXMudXBkYXRlQ29uZmlndXJhdGlvbnMoKTtcbiAgICB9XG4gIH1cblxuICBhZGRDb25maWcoZHVwbGljYXRlZENvbmZpZz86IERhdGFwb2ludHNHcmFwaFdpZGdldENvbmZpZyk6IHZvaWQge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLm5hbWVHZW5lcmF0b3JTZXJ2aWNlLmdlbmVyYXRlTmFtZSgpO1xuICAgIGNvbnN0IHdvcmtzcGFjZTogV29ya3NwYWNlQ29uZmlndXJhdGlvbiA9IHtcbiAgICAgIGlkOiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICBsYWJlbDogbmFtZSxcbiAgICAgIGNvbmZpZzogeyBkYXRhcG9pbnRzOiBbXSwgYWxhcm1zRXZlbnRzQ29uZmlnczogW10gfVxuICAgIH07XG4gICAgaWYgKGR1cGxpY2F0ZWRDb25maWcpIHtcbiAgICAgIHdvcmtzcGFjZS5jb25maWcgPSBkdXBsaWNhdGVkQ29uZmlnO1xuICAgIH1cbiAgICB0aGlzLmNvbmZpZ3VyYXRpb25zID0gW3dvcmtzcGFjZSwgLi4udGhpcy5jb25maWd1cmF0aW9uc107XG4gICAgdGhpcy5pbml0V29ya3NwYWNlRm9ybSgpO1xuICAgIHRoaXMuY2hhbmdlQ29uZmlndXJhdGlvbih0cnVlLCB3b3Jrc3BhY2UpO1xuICB9XG5cbiAgY2hhbmdlQ29uZmlndXJhdGlvbihzZWxlY3RlZDogYm9vbGVhbiwgY29uZmlndXJhdGlvbjogV29ya3NwYWNlQ29uZmlndXJhdGlvbik6IHZvaWQge1xuICAgIGlmICghc2VsZWN0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbiA9IGNvbmZpZ3VyYXRpb247XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oXG4gICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLkxPQ0FMX1NUT1JBR0VfREVGQVVMVF9JRF9LRVksXG4gICAgICB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmlkXG4gICAgKTtcbiAgICB0aGlzLm9uQ29uZmlndXJhdGlvbkNoYW5nZS5lbWl0KGNvbmZpZ3VyYXRpb24uY29uZmlnKTtcbiAgfVxuXG4gIHVwZGF0ZUNvbmZpZ3VyYXRpb25MYWJlbChjb25maWd1cmF0aW9uOiBXb3Jrc3BhY2VDb25maWd1cmF0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9ucyA9IHRoaXMuY29uZmlndXJhdGlvbnMubWFwKGMgPT5cbiAgICAgIGMuaWQgPT09IGNvbmZpZ3VyYXRpb24uaWQgPyBjb25maWd1cmF0aW9uIDogY1xuICAgICk7XG4gICAgdGhpcy53b3Jrc3BhY2VDb25maWd1cmF0aW9uU2VydmljZS5zYXZlQ29uZmlndXJhdGlvbnMoXG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25zLFxuICAgICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbj8uaWQgfHwgJydcbiAgICApO1xuICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uO1xuICAgIHRoaXMub25Db25maWd1cmF0aW9uQ2hhbmdlLmVtaXQoY29uZmlndXJhdGlvbi5jb25maWcpO1xuICB9XG5cbiAgZGVsZXRlQ29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uOiBXb3Jrc3BhY2VDb25maWd1cmF0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9ucyA9IHRoaXMuY29uZmlndXJhdGlvbnMuZmlsdGVyKGMgPT4gYy5pZCAhPT0gY29uZmlndXJhdGlvbi5pZCk7XG4gICAgdGhpcy5pbml0V29ya3NwYWNlRm9ybSgpO1xuICAgIHRoaXMud29ya3NwYWNlQ29uZmlndXJhdGlvblNlcnZpY2Uuc2F2ZUNvbmZpZ3VyYXRpb25zKFxuICAgICAgdGhpcy5jb25maWd1cmF0aW9ucyxcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24/LmlkIHx8ICcnXG4gICAgKTtcbiAgfVxuXG4gIGNsZWFyQWxsKCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlndXJhdGlvbnMgPSBbdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbl07XG4gICAgdGhpcy5pbml0V29ya3NwYWNlRm9ybSgpO1xuICAgIHRoaXMud29ya3NwYWNlQ29uZmlndXJhdGlvblNlcnZpY2Uuc2F2ZUNvbmZpZ3VyYXRpb25zKFxuICAgICAgdGhpcy5jb25maWd1cmF0aW9ucyxcbiAgICAgIHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24/LmlkIHx8ICcnXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHNoYXJlQ29uZmlnKGNvbmZpZ3VyYXRpb246IFdvcmtzcGFjZUNvbmZpZ3VyYXRpb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmNsaXBib2FyZFNlcnZpY2Uud3JpdGVUZXh0KEpTT04uc3RyaW5naWZ5KGNvbmZpZ3VyYXRpb24uY29uZmlnKSk7XG4gIH1cblxuICBwcml2YXRlIGFkZENvbmZpZ0Zyb21VcmwocXVlcnlQYXJhbXM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuYWRkQ29uZmlnKCk7XG4gICAgY29uc3QgY29uZmlnID0gSlNPTi5wYXJzZShxdWVyeVBhcmFtcy5jb25maWcpO1xuICAgIHRoaXMub25Db25maWd1cmF0aW9uQ2hhbmdlLmVtaXQoY29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29uZmlndXJhdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5jb25maWcgPSB0aGlzLnVwZGF0ZWRDb25maWc7XG4gICAgdGhpcy5jb25maWd1cmF0aW9ucyA9IHRoaXMuY29uZmlndXJhdGlvbnMubWFwKGN1cnJlbnRDb25maWcgPT5cbiAgICAgIGN1cnJlbnRDb25maWcuaWQgPT09IHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24uaWQgPyB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uIDogY3VycmVudENvbmZpZ1xuICAgICk7XG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB7XG4gICAgICBjb25maWdJZDogdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5pZCxcbiAgICAgIGxhYmVsOiB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmxhYmVsLFxuICAgICAgY29uZmlnOiBKU09OLnN0cmluZ2lmeSh0aGlzLnVwZGF0ZWRDb25maWcpXG4gICAgfTtcbiAgICB0aGlzLndvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLnNhdmVDb25maWd1cmF0aW9ucyhcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvbnMsXG4gICAgICB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmlkXG4gICAgKTtcbiAgICBjb25zdCBjb250cm9sID0gPEZvcm1BcnJheT50aGlzLmNvbmZpZ3VyYXRpb25zRm9ybUdyb3VwLmNvbnRyb2xzWydjb25maWd1cmF0aW9ucyddO1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5jb25maWd1cmF0aW9ucy5maW5kSW5kZXgoYyA9PiBjLmlkID09PSB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmlkKTtcbiAgICBpZiAoaW5kZXggIT09IC0xKSB7XG4gICAgICBjb250cm9sLmF0KGluZGV4KS5wYXRjaFZhbHVlKHtcbiAgICAgICAgbGFiZWw6IHRoaXMuY3VycmVudENvbmZpZ3VyYXRpb24ubGFiZWwsXG4gICAgICAgIGNvbmZpZzogdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5jb25maWcsXG4gICAgICAgIGlkOiB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmlkXG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHsgcXVlcnlQYXJhbXMgfSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpemVDb25maWd1cmF0aW9ucygpOiB2b2lkIHtcbiAgICBjb25zdCBjb25maWd1cmF0aW9ucyA9IHRoaXMud29ya3NwYWNlQ29uZmlndXJhdGlvblNlcnZpY2UuZ2V0Q29uZmlndXJhdGlvbnMoKTtcbiAgICBjb25zdCBkZWZhdWx0SWQgPSB0aGlzLndvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLmdldERlZmF1bHRDb25maWd1cmF0aW9uSWQoKTtcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHRoaXMucm91dGVyLnBhcnNlVXJsKHRoaXMucm91dGVyLnVybCkucXVlcnlQYXJhbXM7XG4gICAgaWYgKGNvbmZpZ3VyYXRpb25zLmxlbmd0aCkge1xuICAgICAgdGhpcy5jb25maWd1cmF0aW9ucyA9IGNvbmZpZ3VyYXRpb25zO1xuICAgICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbiA9XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvbnMuZmluZChjID0+IGMuaWQgPT09IGRlZmF1bHRJZCkgfHwgdGhpcy5jb25maWd1cmF0aW9uc1swXTtcblxuICAgICAgdGhpcy5vbkNvbmZpZ3VyYXRpb25DaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uLmNvbmZpZyk7XG4gICAgICBpZiAocXVlcnlQYXJhbXM/LmNvbmZpZ0lkICYmICF0aGlzLmNvbmZpZ3VyYXRpb25zLmZpbmQoYyA9PiBjLmlkID09PSBxdWVyeVBhcmFtcy5jb25maWdJZCkpIHtcbiAgICAgICAgdGhpcy5hZGRDb25maWdGcm9tVXJsKHF1ZXJ5UGFyYW1zKTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIHF1ZXJ5UGFyYW1zPy5jb25maWdJZCAmJlxuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25zLmZpbmQoYyA9PiBjLmlkID09PSBxdWVyeVBhcmFtcy5jb25maWdJZCkgJiZcbiAgICAgICAgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbi5pZCAhPT0gcXVlcnlQYXJhbXMuY29uZmlnSWRcbiAgICAgICkge1xuICAgICAgICB0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uID0gdGhpcy5jb25maWd1cmF0aW9ucy5maW5kKGMgPT4gYy5pZCA9PT0gcXVlcnlQYXJhbXMuY29uZmlnSWQpO1xuICAgICAgICB0aGlzLmNoYW5nZUNvbmZpZ3VyYXRpb24odHJ1ZSwgdGhpcy5jdXJyZW50Q29uZmlndXJhdGlvbik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmN1cnJlbnRDb25maWd1cmF0aW9uKSB7XG4gICAgICBpZiAoT2JqZWN0LmtleXMocXVlcnlQYXJhbXMpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aGlzLmFkZENvbmZpZygpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmFkZENvbmZpZ0Zyb21VcmwocXVlcnlQYXJhbXMpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdFdvcmtzcGFjZUZvcm0oKTogdm9pZCB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uc0Zvcm1Hcm91cCA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgY29uZmlndXJhdGlvbnM6IHRoaXMuZm9ybUJ1aWxkZXIuYXJyYXkoW10pXG4gICAgfSk7XG5cbiAgICB0aGlzLnBhdGNoRm9ybSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXRjaEZvcm0oKTogdm9pZCB7XG4gICAgY29uc3QgY29udHJvbCA9IDxGb3JtQXJyYXk+dGhpcy5jb25maWd1cmF0aW9uc0Zvcm1Hcm91cC5jb250cm9sc1snY29uZmlndXJhdGlvbnMnXTtcbiAgICB0aGlzLmNvbmZpZ3VyYXRpb25zLmZvckVhY2god29ya3NwYWNlID0+IHtcbiAgICAgIGNvbnRyb2wucHVzaCh0aGlzLnBhdGNoVmFsdWVzKHdvcmtzcGFjZSkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXRjaFZhbHVlcyh3b3Jrc3BhY2U6IFdvcmtzcGFjZUNvbmZpZ3VyYXRpb24pOiBGb3JtR3JvdXAge1xuICAgIHJldHVybiB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGxhYmVsOiBbd29ya3NwYWNlLmxhYmVsXSxcbiAgICAgIGNvbmZpZzogW3dvcmtzcGFjZS5jb25maWddLFxuICAgICAgaWQ6IFt3b3Jrc3BhY2UuaWRdXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpemVDb250ZXh0U291cmNlSWQoKTogdm9pZCB7XG4gICAgY29uc3Qgcm91dGVDb250ZXh0ID0gdGhpcy5jb250ZXh0Um91dGVTZXJ2aWNlLmdldENvbnRleHREYXRhKHRoaXMuYWN0aXZhdGVkUm91dGUpO1xuICAgIGlmICghcm91dGVDb250ZXh0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHsgY29udGV4dCwgY29udGV4dERhdGEgfSA9IHJvdXRlQ29udGV4dDtcbiAgICBpZiAoW1ZpZXdDb250ZXh0LkRldmljZSwgVmlld0NvbnRleHQuR3JvdXBdLmluY2x1ZGVzKGNvbnRleHQpKSB7XG4gICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLmNvbnRleHRJZFNpZ25hbC5zZXQoY29udGV4dERhdGE/LmlkKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJkcm9wZG93blwiXG4gICNhY3Rpb25iYXJfZHJvcGRvd249XCJicy1kcm9wZG93blwiXG4gIFtjZGtUcmFwRm9jdXNdPVwiYWN0aW9uYmFyX2Ryb3Bkb3duLmlzT3BlblwiXG4gIGRyb3Bkb3duXG4gIFtpbnNpZGVDbGlja109XCJ0cnVlXCJcbj5cblxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJkcm9wZG93bi10b2dnbGUgZm9ybS1jb250cm9sIGwtaC10aWdodCBkLWZsZXggYS1pLWNlbnRlclwiXG4gICAgYXR0ci5hcmlhLWxhYmVsPVwie3sgY3VycmVudENvbmZpZ3VyYXRpb24ubGFiZWwgfX1cIlxuICAgIHRvb2x0aXA9XCJ7eyAnU2VsZWN0ZWQgY29uZmlndXJhdGlvbicgfCB0cmFuc2xhdGUgfX1cIlxuICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgY29udGFpbmVyPVwiYm9keVwiXG4gICAgZGF0YS1jeT1cImN1cnJlbnQtY29uZmlndXJhdGlvbi1kcm9wZG93bi1idXR0b25cIlxuICAgIFthZGFwdGl2ZVBvc2l0aW9uXT1cImZhbHNlXCJcbiAgICBbZGVsYXldPVwiNTAwXCJcbiAgICBkcm9wZG93blRvZ2dsZVxuICA+XG4gICAgPGlcbiAgICAgIGNsYXNzPVwibS1yLTRcIlxuICAgICAgYzh5SWNvbj1cImxpc3RcIlxuICAgID48L2k+XG4gICAgPGRpdiBjbGFzcz1cImQtY29sIHRleHQtbGVmdCBmaXQtd1wiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LTEyXCI+XG4gICAgICAgIHt7ICdDb25maWd1cmF0aW9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LTEwIHRleHQtbXV0ZWQgdGV4dC10cnVuY2F0ZVwiPlxuICAgICAgICB7eyBjdXJyZW50Q29uZmlndXJhdGlvbi5sYWJlbCB9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxzcGFuIGNsYXNzPVwiY2FyZXQgbS1yLTE2IG0tbC00XCI+PC9zcGFuPlxuICA8L2J1dHRvbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiZHJvcGRvd24tbWVudSBkcm9wZG93bi1tZW51LXdpZGUgZHJvcGRvd24tbWVudS1hY3Rpb24tYmFyXCJcbiAgICAqZHJvcGRvd25NZW51XG4gID5cbiAgICA8ZGl2IGNsYXNzPVwic3RpY2t5LXRvcCBzZXBhcmF0b3ItYm90dG9tIHAtdC04IHAtYi04IHAtbC0xNiBwLXItMTZcIj5cbiAgICAgIDxwPlxuICAgICAgICA8c3Ryb25nPnt7ICdEYXRhIGV4cGxvcmVyIGNvbmZpZ3VyYXRpb25zJyB8IHRyYW5zbGF0ZSB9fTwvc3Ryb25nPlxuICAgICAgPC9wPlxuICAgICAgPHA+XG4gICAgICAgIDxzbWFsbD57eyAnRWFzaWx5IHN3aXRjaCBhbmQgbWFuYWdlIGNvbmZpZ3VyYXRpb25zLicgfCB0cmFuc2xhdGUgfX08L3NtYWxsPlxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxjOHktbGlzdC1ncm91cCBjbGFzcz1cIm5vLWJvcmRlci1sYXN0XCI+XG4gICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImNvbmZpZ3VyYXRpb25zRm9ybUdyb3VwXCI+XG4gICAgICAgIDxkaXYgZm9ybUFycmF5TmFtZT1cImNvbmZpZ3VyYXRpb25zXCI+XG4gICAgICAgICAgPGM4eS1saVxuICAgICAgICAgICAgY2xhc3M9XCJwLTBcIlxuICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgIGxldCBjb25maWd1cmF0aW9uIG9mIGNvbmZpZ3VyYXRpb25zRm9ybUdyb3VwLmNvbnRyb2xzLmNvbmZpZ3VyYXRpb25zWydjb250cm9scyddO1xuICAgICAgICAgICAgICBsZXQgaSA9IGluZGV4XG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgW2RlbnNlXT1cInRydWVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxjOHktbGktcmFkaW9cbiAgICAgICAgICAgICAgW3NlbGVjdGVkXT1cImNvbmZpZ3VyYXRpb24udmFsdWUuaWQgPT09IGN1cnJlbnRDb25maWd1cmF0aW9uLmlkXCJcbiAgICAgICAgICAgICAgKG9uU2VsZWN0KT1cImNoYW5nZUNvbmZpZ3VyYXRpb24oJGV2ZW50LCBjb25maWd1cmF0aW9uLnZhbHVlKVwiXG4gICAgICAgICAgICA+PC9jOHktbGktcmFkaW8+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGEtaS1jZW50ZXIgZ2FwLThcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleC1ncm93IG1pbi13aWR0aC0wXCJcbiAgICAgICAgICAgICAgICBbZm9ybUdyb3VwTmFtZV09XCJpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0YWJsZVwiXG4gICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgIHVwZGF0ZWQ6XG4gICAgICAgICAgICAgICAgICAgICAgY29uZmlndXJhdGlvbi5jb250cm9scy5sYWJlbC50b3VjaGVkICYmIGNvbmZpZ3VyYXRpb24uY29udHJvbHMubGFiZWwuZGlydHlcbiAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS53aWR0aC5jaF09XCJjb25maWd1cmF0aW9uLnZhbHVlLmxhYmVsIHx8IDI1XCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInQ29uZmlndXJhdGlvbiBsYWJlbCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdDb25maWd1cmF0aW9uIDEnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJsYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIChibHVyKT1cInVwZGF0ZUNvbmZpZ3VyYXRpb25MYWJlbChjb25maWd1cmF0aW9uLnZhbHVlKVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ub2dyb3cgZC1mbGV4IGdhcC04XCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4tZG90IGJ0blwiXG4gICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidEdXBsaWNhdGUgY29uZmlndXJhdGlvbicgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgdG9vbHRpcD1cInt7ICdEdXBsaWNhdGUgY29uZmlndXJhdGlvbicgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwibGVmdFwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWRkQ29uZmlnKGNvbmZpZ3VyYXRpb24udmFsdWUuY29uZmlnKVwiXG4gICAgICAgICAgICAgICAgICBbZGVsYXldPVwiNTAwXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8aSBjOHlJY29uPVwiY29weVwiPjwvaT5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLWRvdCBidG4gYnRuLWRvdC0tZGFuZ2VyXCJcbiAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1JlbW92ZSBjb25maWd1cmF0aW9ucycgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgdG9vbHRpcD1cInt7XG4gICAgICAgICAgICAgICAgICAgIChjb25maWd1cmF0aW9uLnZhbHVlLmlkID09PSBjdXJyZW50Q29uZmlndXJhdGlvbi5pZFxuICAgICAgICAgICAgICAgICAgICAgID8gYWN0aXZlQ29uZmlnVG9vbHRpcFxuICAgICAgICAgICAgICAgICAgICAgIDogcmVtb3ZlQ29uZmlnVG9vbHRpcFxuICAgICAgICAgICAgICAgICAgICApIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCJcbiAgICAgICAgICAgICAgICAgIFtkZWxheV09XCI1MDBcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgZGVsZXRlQ29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uLnZhbHVlKVwiXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29uZmlndXJhdGlvbi52YWx1ZS5pZCA9PT0gY3VycmVudENvbmZpZ3VyYXRpb24uaWRcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxpIGM4eUljb249XCJtaW51cy1jaXJjbGVcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9jOHktbGk+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9mb3JtPlxuICAgIDwvYzh5LWxpc3QtZ3JvdXA+XG4gICAgPGRpdiBjbGFzcz1cInN0aWNreS1ib3R0b20gc2VwYXJhdG9yLXRvcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBwLWwtMTYgcC1yLTE2IHAtdC04IHAtYi04XCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGFuZ2VyIGJ0bi1zbSBmbGV4LWdyb3dcIlxuICAgICAgICAgIChjbGljayk9XCJjbGVhckFsbCgpXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiY29uZmlndXJhdGlvbnMubGVuZ3RoIDwgMlwiXG4gICAgICAgID5cbiAgICAgICAgICA8aSBbYzh5SWNvbl09XCInZGVsZXRlJ1wiPjwvaT5cbiAgICAgICAgICB7eyAnRGVsZXRlIGFsbCBjb25maWd1cmF0aW9ucycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBidG4tc20gZmxleC1ncm93XCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAoY2xpY2spPVwiYWRkQ29uZmlnKClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgW2M4eUljb25dPVwiJ2FkZC1jaXJjbGUtb3V0bGluZSdcIj48L2k+XG4gICAgICAgICAge3sgJ0FkZCBjb25maWd1cmF0aW9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -27,7 +27,6 @@ import { ContextDashboardService } from '@c8y/ngx-components/context-dashboard';
|
|
|
27
27
|
import { DatapointsExportSelectorComponent } from '@c8y/ngx-components/datapoints-export-selector';
|
|
28
28
|
import { InventoryService } from '@c8y/client';
|
|
29
29
|
import { ActivatedRoute, Router } from '@angular/router';
|
|
30
|
-
import { uniqueNamesGenerator } from 'unique-names-generator';
|
|
31
30
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
32
31
|
|
|
33
32
|
class SendAsWidgetToReportModal {
|
|
@@ -246,6 +245,23 @@ const nouns = [
|
|
|
246
245
|
'box'
|
|
247
246
|
];
|
|
248
247
|
|
|
248
|
+
class NameGeneratorService {
|
|
249
|
+
generateName() {
|
|
250
|
+
const getRandomElement = (arr) => arr[Math.floor(Math.random() * arr.length)];
|
|
251
|
+
const randomAdjective = getRandomElement(adjectives);
|
|
252
|
+
const randomNoun = getRandomElement(nouns);
|
|
253
|
+
return `${randomAdjective}_${randomNoun}`;
|
|
254
|
+
}
|
|
255
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NameGeneratorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
256
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NameGeneratorService, providedIn: 'root' }); }
|
|
257
|
+
}
|
|
258
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NameGeneratorService, decorators: [{
|
|
259
|
+
type: Injectable,
|
|
260
|
+
args: [{
|
|
261
|
+
providedIn: 'root'
|
|
262
|
+
}]
|
|
263
|
+
}] });
|
|
264
|
+
|
|
249
265
|
class WorkspaceConfigComponent {
|
|
250
266
|
constructor() {
|
|
251
267
|
this.onConfigurationChange = new EventEmitter();
|
|
@@ -258,6 +274,7 @@ class WorkspaceConfigComponent {
|
|
|
258
274
|
this.clipboardService = inject(ClipboardService);
|
|
259
275
|
this.activatedRoute = inject(ActivatedRoute);
|
|
260
276
|
this.router = inject(Router);
|
|
277
|
+
this.nameGeneratorService = inject(NameGeneratorService);
|
|
261
278
|
}
|
|
262
279
|
ngOnInit() {
|
|
263
280
|
this.initializeContextSourceId();
|
|
@@ -270,7 +287,7 @@ class WorkspaceConfigComponent {
|
|
|
270
287
|
}
|
|
271
288
|
}
|
|
272
289
|
addConfig(duplicatedConfig) {
|
|
273
|
-
const name =
|
|
290
|
+
const name = this.nameGeneratorService.generateName();
|
|
274
291
|
const workspace = {
|
|
275
292
|
id: new Date().toISOString(),
|
|
276
293
|
label: name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c8y-ngx-components-datapoint-explorer-view.mjs","sources":["../../datapoint-explorer/view/send-as-widget-to-report-modal/send-as-widget-to-report-modal.component.ts","../../datapoint-explorer/view/send-as-widget-to-report-modal/send-as-widget-to-report-modal.component.html","../../datapoint-explorer/view/create-new-report-modal/create-new-report-modal.component.ts","../../datapoint-explorer/view/create-new-report-modal/create-new-report-modal.component.html","../../datapoint-explorer/view/datapoint-explorer.service.ts","../../datapoint-explorer/view/configuration/workspace-configuration.service.ts","../../datapoint-explorer/view/configuration/naming-dictionary.ts","../../datapoint-explorer/view/configuration/workspace-configuration.component.ts","../../datapoint-explorer/view/configuration/workspace-configuration.component.html","../../datapoint-explorer/view/datapoint-explorer.component.ts","../../datapoint-explorer/view/datapoint-explorer.component.html","../../datapoint-explorer/view/c8y-ngx-components-datapoint-explorer-view.ts"],"sourcesContent":["import { Component, inject } from '@angular/core';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule, gettext, ModalLabels } from '@c8y/ngx-components';\nimport { Observable, merge, of } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport {\n ReportDashboardModule,\n ReportDashboardService\n} from '@c8y/ngx-components/report-dashboard';\nimport { IManagedObject } from '@c8y/client';\n@Component({\n selector: 'c8y-apply-branding-to-app-modal',\n templateUrl: './send-as-widget-to-report-modal.component.html',\n standalone: true,\n imports: [ReactiveFormsModule, CoreModule, ReportDashboardModule]\n})\nexport class SendAsWidgetToReportModal {\n reports: IManagedObject[] = [];\n numberOfSelectedReports$: Observable<number>;\n form: ReturnType<typeof this.initForm>;\n result = new Promise<ReturnType<typeof this.initForm>['value']>((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n labels: ModalLabels = { cancel: gettext('Cancel'), ok: gettext('Send') };\n private reportDashboardService = inject(ReportDashboardService);\n private _resolve: (value: ReturnType<typeof this.initForm>['value']) => void;\n private _reject: (reason?: any) => void;\n async ngOnInit() {\n this.reports = (await this.reportDashboardService.listReports({ pageSize: 2000 })).data;\n if (this.reports.length > 0) {\n this.form = this.initForm();\n }\n this.numberOfSelectedReports$ = merge(this.form.valueChanges, of(this.form.value)).pipe(\n map(value => Object.values(value).filter(Boolean).length)\n );\n }\n save() {\n this._resolve(this.form.value);\n }\n cancel() {\n this._reject();\n }\n private initForm(): FormGroup<Record<string, FormControl<boolean>>> {\n const controls = this.reports.reduce(\n (acc, report) => ({\n ...acc,\n [report.id]: new FormControl(false)\n }),\n {}\n );\n return new FormGroup(controls);\n }\n}\n","<c8y-modal\n [title]=\"'Send as widget to reports' | translate\"\n [disabled]=\"!form || form.invalid\"\n [headerClasses]=\"'dialog-header'\"\n (onDismiss)=\"cancel()\"\n (onClose)=\"save()\"\n [labels]=\"labels\"\n>\n <ng-container c8y-modal-title>\n <span c8yIcon=\"c8y-reports\"></span>\n </ng-container>\n\n <c8y-list-group\n class=\"m-b-0 no-border-last\"\n *ngIf=\"form\"\n [formGroup]=\"form\"\n >\n <c8y-li>\n <p\n class=\"text-center text-medium\"\n *ngIf=\"numberOfSelectedReports$ | async as numberOfReports; else noSelectedReports\"\n translate\n [translateParams]=\"{ numberOfReports: numberOfReports }\"\n ngNonBindable\n >\n {{ numberOfReports }} reports selected for widget\n </p>\n <ng-template #noSelectedReports>\n <p\n class=\"text-center text-medium\"\n translate\n >\n Select one or more reports to send the Data points graph widget with the current configuration\n </p>\n </ng-template>\n </c8y-li>\n <c8y-li *ngFor=\"let report of reports\">\n <c8y-li-checkbox\n [attr.data-cy]=\"'branding-apply-branding-to-app-checkbox-' + report.id\"\n [formControlName]=\"report.id\"\n ></c8y-li-checkbox>\n <c8y-li-icon class=\"p-l-0\">\n <i c8yIcon=\"{{ report.icon }}\"></i>\n </c8y-li-icon>\n <div class=\"text-truncate\" title=\"{{report.name}}\">{{ report.name }}</div>\n </c8y-li>\n </c8y-list-group>\n\n <c8y-ui-empty-state\n [icon]=\"'c8y-reports'\"\n [title]=\"'There are no reports defined.' | translate\"\n [subtitle]=\"'Add a report first.' | translate\"\n *ngIf=\"reports.length === 0\"\n ></c8y-ui-empty-state>\n</c8y-modal>\n","import { Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule, gettext, ModalLabels } from '@c8y/ngx-components';\nimport { ReportDashboardModule } from '@c8y/ngx-components/report-dashboard';\nimport { ContextDashboardService } from '@c8y/ngx-components/context-dashboard';\nimport { IManagedObject } from '@c8y/client';\n\n@Component({\n selector: 'c8y-create-new-report-modal',\n templateUrl: './create-new-report-modal.component.html',\n standalone: true,\n imports: [ReactiveFormsModule, CoreModule, ReportDashboardModule]\n})\nexport class CreateNewReportModalComponent {\n reportName = '';\n labels: ModalLabels = { cancel: gettext('Cancel'), ok: gettext('Send') };\n\n result = new Promise<IManagedObject>((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n\n styling = {\n themeClass: 'dashboard-theme-light',\n headerClass: 'panel-title-regular'\n };\n\n readonly DEFAULT_DASHBOARD_ICON = 'th';\n readonly DEFAULT_DASHBOARD_PRIORITY = 5000;\n readonly DEFAULT_DASHBOARD_MARGIN = 12;\n private _resolve: (value: IManagedObject) => void;\n private _reject: (reason?: any) => void;\n constructor(private contextDashboardService: ContextDashboardService) {}\n\n async save() {\n const dashboard = {\n name: this.reportName,\n icon: this.DEFAULT_DASHBOARD_ICON,\n c8y_IsNavigatorNode: null,\n priority: this.DEFAULT_DASHBOARD_PRIORITY,\n description: '',\n widgetMargin: this.DEFAULT_DASHBOARD_MARGIN,\n classes: { [this.styling.headerClass]: true },\n widgetClasses: { [this.styling.headerClass]: true }\n };\n try {\n const { name, icon, c8y_IsNavigatorNode, priority, description } = dashboard;\n const report = (\n await this.contextDashboardService.createReport({\n name,\n icon,\n c8y_IsNavigatorNode,\n priority,\n description\n } as Partial<IManagedObject>)\n ).data;\n\n await this.contextDashboardService.create(\n dashboard,\n undefined,\n `${this.contextDashboardService.REPORT_PARTIAL_NAME}${report.id}`\n );\n\n this._resolve(report);\n } catch (ex) {\n this._reject(ex);\n }\n }\n\n cancel() {\n this._reject();\n }\n}\n","<c8y-modal\n [title]=\"'Create new report with widget' | translate\"\n [headerClasses]=\"'dialog-header'\"\n [disabled]=\"reportName === ''\"\n (onDismiss)=\"cancel()\"\n (onClose)=\"save()\"\n [labels]=\"labels\"\n>\n <ng-container c8y-modal-title>\n <span c8yIcon=\"c8y-reports\"></span>\n </ng-container>\n\n <p class=\"text-center bg-component text-balance sticky-top p-l-24 p-r-24 p-t-8 p-b-8 separator-bottom\">\n {{' Create a new report with the Data points graph widget using the current configuration.' | translate}}\n </p>\n <div class=\"p-24 p-t-8\">\n <c8y-form-group>\n <label\n for=\"reportName\"\n translate\n >\n Report name\n </label>\n <input\n class=\"form-control\"\n id=\"reportName\"\n placeholder=\"{{ 'e.g. My data point Report' }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"reportName\"\n />\n <c8y-messages></c8y-messages>\n </c8y-form-group>\n </div>\n</c8y-modal>\n","import { inject, Injectable } from '@angular/core';\nimport { IManagedObject, InventoryService } from '@c8y/client';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataExplorerService {\n private readonly inventory = inject(InventoryService);\n\n async fetchReportDashboard(reportId: string): Promise<IManagedObject> {\n return (\n await this.inventory.list({\n pageSize: 1,\n query: `has('c8y_Dashboard!name!report_${reportId}')`\n })\n ).data[0];\n }\n}\n","import { effect, Injectable, signal, WritableSignal } from '@angular/core';\nimport { WorkspaceConfiguration } from './workspace-configuration.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WorkspaceConfigurationService {\n LOCAL_STORAGE_KEY = 'c8y-configs';\n LOCAL_STORAGE_DEFAULT_ID_KEY = 'c8y-default-config-id';\n contextIdSignal: WritableSignal<number | string | null> = signal(null);\n\n constructor() {\n effect(() => {\n const signalValue = this.contextIdSignal();\n if (signalValue !== null) {\n this.LOCAL_STORAGE_KEY = `c8y-configs-${signalValue}`;\n this.LOCAL_STORAGE_DEFAULT_ID_KEY = `c8y-default-config-id-${signalValue}`;\n }\n if (signalValue == null) {\n this.LOCAL_STORAGE_KEY = 'c8y-configs';\n this.LOCAL_STORAGE_DEFAULT_ID_KEY = 'c8y-default-config-id';\n }\n });\n }\n\n getConfigurations(): WorkspaceConfiguration[] {\n const configurations = localStorage.getItem(this.LOCAL_STORAGE_KEY);\n return configurations ? JSON.parse(configurations) : [];\n }\n\n getDefaultConfigurationId(): string | null {\n return localStorage.getItem(this.LOCAL_STORAGE_DEFAULT_ID_KEY);\n }\n\n saveConfigurations(configurations: WorkspaceConfiguration[], id: string): void {\n localStorage.setItem(this.LOCAL_STORAGE_KEY, JSON.stringify(configurations));\n localStorage.setItem(this.LOCAL_STORAGE_DEFAULT_ID_KEY, id);\n }\n}\n","export const adjectives = [\n 'caffeinated',\n 'sleepy',\n 'hungry',\n 'puzzled',\n 'overexcited',\n 'daydreaming',\n 'chocolate-loving',\n 'coffee-powered',\n 'cookie-craving',\n 'disco-ready',\n 'weekend-mode',\n 'pizza-powered',\n 'nap-seeking',\n 'wifi-hunting',\n 'battery-hungry',\n 'donut-powered',\n 'tea-sipping',\n 'keyboard-loving',\n 'screen-staring',\n 'mouse-chasing',\n 'code-dreaming',\n 'pixel-perfect',\n 'bug-finding',\n 'zoom-tired',\n 'meeting-dodging',\n 'deadline-racing',\n 'coffee-seeking',\n 'sandwich-craving',\n 'debug-ready',\n 'rest-needing'\n];\nexport const nouns = [\n 'sensor',\n 'robot',\n 'thermostat',\n 'gateway',\n 'dashboard',\n 'widget',\n 'gadget',\n 'button',\n 'antenna',\n 'beacon',\n 'adapter',\n 'gizmo',\n 'hub',\n 'switch',\n 'chip',\n 'controller',\n 'display',\n 'terminal',\n 'processor',\n 'transmitter',\n 'receiver',\n 'pod',\n 'device',\n 'module',\n 'relay',\n 'node',\n 'bridge',\n 'screen',\n 'router',\n 'box'\n];\n","import { A11yModule } from '@angular/cdk/a11y';\nimport {\n Component,\n EventEmitter,\n inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges\n} from '@angular/core';\nimport { FormArray, FormBuilder, FormGroup, FormsModule } from '@angular/forms';\nimport {\n ClipboardService,\n ContextRouteService,\n CoreModule,\n gettext,\n ViewContext\n} from '@c8y/ngx-components';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { WorkspaceConfiguration } from './workspace-configuration.model';\nimport { DatapointsGraphWidgetConfig } from '@c8y/ngx-components/echart';\nimport { WorkspaceConfigurationService } from './workspace-configuration.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { uniqueNamesGenerator } from 'unique-names-generator';\nimport { adjectives, nouns } from './naming-dictionary';\n\n@Component({\n selector: 'c8y-workspace-config',\n templateUrl: './workspace-configuration.component.html',\n standalone: true,\n imports: [CoreModule, BsDropdownModule, FormsModule, A11yModule, TooltipModule]\n})\nexport class WorkspaceConfigComponent implements OnInit, OnChanges {\n @Input() updatedConfig: DatapointsGraphWidgetConfig;\n @Output() onConfigurationChange = new EventEmitter<DatapointsGraphWidgetConfig>();\n\n currentConfiguration: WorkspaceConfiguration;\n configurations: WorkspaceConfiguration[] = [];\n configurationsFormGroup: FormGroup;\n activeConfigTooltip = gettext('Active configuration cannot be removed');\n removeConfigTooltip = gettext('Remove configuration');\n\n private readonly formBuilder = inject(FormBuilder);\n private readonly workspaceConfigurationService = inject(WorkspaceConfigurationService);\n private readonly contextRouteService = inject(ContextRouteService);\n private readonly clipboardService = inject(ClipboardService);\n private readonly activatedRoute = inject(ActivatedRoute);\n private readonly router = inject(Router);\n\n ngOnInit(): void {\n this.initializeContextSourceId();\n this.initializeConfigurations();\n this.initWorkspaceForm();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.updatedConfig && !changes.updatedConfig.firstChange) {\n this.updateConfigurations();\n }\n }\n\n addConfig(duplicatedConfig?: DatapointsGraphWidgetConfig): void {\n const name = uniqueNamesGenerator({ dictionaries: [adjectives, nouns] });\n const workspace: WorkspaceConfiguration = {\n id: new Date().toISOString(),\n label: name,\n config: { datapoints: [], alarmsEventsConfigs: [] }\n };\n if (duplicatedConfig) {\n workspace.config = duplicatedConfig;\n }\n this.configurations = [workspace, ...this.configurations];\n this.initWorkspaceForm();\n this.changeConfiguration(true, workspace);\n }\n\n changeConfiguration(selected: boolean, configuration: WorkspaceConfiguration): void {\n if (!selected) {\n return;\n }\n this.currentConfiguration = configuration;\n localStorage.setItem(\n this.workspaceConfigurationService.LOCAL_STORAGE_DEFAULT_ID_KEY,\n this.currentConfiguration.id\n );\n this.onConfigurationChange.emit(configuration.config);\n }\n\n updateConfigurationLabel(configuration: WorkspaceConfiguration): void {\n this.configurations = this.configurations.map(c =>\n c.id === configuration.id ? configuration : c\n );\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration?.id || ''\n );\n this.currentConfiguration = configuration;\n this.onConfigurationChange.emit(configuration.config);\n }\n\n deleteConfiguration(configuration: WorkspaceConfiguration): void {\n this.configurations = this.configurations.filter(c => c.id !== configuration.id);\n this.initWorkspaceForm();\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration?.id || ''\n );\n }\n\n clearAll(): void {\n this.configurations = [this.currentConfiguration];\n this.initWorkspaceForm();\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration?.id || ''\n );\n }\n\n async shareConfig(configuration: WorkspaceConfiguration): Promise<void> {\n await this.clipboardService.writeText(JSON.stringify(configuration.config));\n }\n\n private addConfigFromUrl(queryParams: any): void {\n this.addConfig();\n const config = JSON.parse(queryParams.config);\n this.onConfigurationChange.emit(config);\n }\n\n private updateConfigurations(): void {\n this.currentConfiguration.config = this.updatedConfig;\n this.configurations = this.configurations.map(currentConfig =>\n currentConfig.id === this.currentConfiguration.id ? this.currentConfiguration : currentConfig\n );\n const queryParams = {\n configId: this.currentConfiguration.id,\n label: this.currentConfiguration.label,\n config: JSON.stringify(this.updatedConfig)\n };\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration.id\n );\n const control = <FormArray>this.configurationsFormGroup.controls['configurations'];\n const index = this.configurations.findIndex(c => c.id === this.currentConfiguration.id);\n if (index !== -1) {\n control.at(index).patchValue({\n label: this.currentConfiguration.label,\n config: this.currentConfiguration.config,\n id: this.currentConfiguration.id\n });\n }\n this.router.navigate([], { queryParams });\n }\n\n private initializeConfigurations(): void {\n const configurations = this.workspaceConfigurationService.getConfigurations();\n const defaultId = this.workspaceConfigurationService.getDefaultConfigurationId();\n const queryParams = this.router.parseUrl(this.router.url).queryParams;\n if (configurations.length) {\n this.configurations = configurations;\n this.currentConfiguration =\n this.configurations.find(c => c.id === defaultId) || this.configurations[0];\n\n this.onConfigurationChange.emit(this.currentConfiguration.config);\n if (queryParams?.configId && !this.configurations.find(c => c.id === queryParams.configId)) {\n this.addConfigFromUrl(queryParams);\n } else if (\n queryParams?.configId &&\n this.configurations.find(c => c.id === queryParams.configId) &&\n this.currentConfiguration.id !== queryParams.configId\n ) {\n this.currentConfiguration = this.configurations.find(c => c.id === queryParams.configId);\n this.changeConfiguration(true, this.currentConfiguration);\n }\n }\n\n if (!this.currentConfiguration) {\n if (Object.keys(queryParams).length === 0) {\n this.addConfig();\n return;\n }\n this.addConfigFromUrl(queryParams);\n }\n }\n\n private initWorkspaceForm(): void {\n this.configurationsFormGroup = this.formBuilder.group({\n configurations: this.formBuilder.array([])\n });\n\n this.patchForm();\n }\n\n private patchForm(): void {\n const control = <FormArray>this.configurationsFormGroup.controls['configurations'];\n this.configurations.forEach(workspace => {\n control.push(this.patchValues(workspace));\n });\n }\n\n private patchValues(workspace: WorkspaceConfiguration): FormGroup {\n return this.formBuilder.group({\n label: [workspace.label],\n config: [workspace.config],\n id: [workspace.id]\n });\n }\n\n private initializeContextSourceId(): void {\n const routeContext = this.contextRouteService.getContextData(this.activatedRoute);\n if (!routeContext) {\n return;\n }\n const { context, contextData } = routeContext;\n if ([ViewContext.Device, ViewContext.Group].includes(context)) {\n this.workspaceConfigurationService.contextIdSignal.set(contextData?.id);\n }\n }\n}\n","<div\n class=\"dropdown\"\n #actionbar_dropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"actionbar_dropdown.isOpen\"\n dropdown\n [insideClick]=\"true\"\n>\n\n <button\n class=\"dropdown-toggle form-control l-h-tight d-flex a-i-center\"\n attr.aria-label=\"{{ currentConfiguration.label }}\"\n tooltip=\"{{ 'Selected configuration' | translate }}\"\n placement=\"top\"\n container=\"body\"\n data-cy=\"current-configuration-dropdown-button\"\n [adaptivePosition]=\"false\"\n [delay]=\"500\"\n dropdownToggle\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"list\"\n ></i>\n <div class=\"d-col text-left fit-w\">\n <span class=\"text-12\">\n {{ 'Configuration' | translate }}\n </span>\n <span class=\"text-10 text-muted text-truncate\">\n {{ currentConfiguration.label }}\n </span>\n </div>\n <span class=\"caret m-r-16 m-l-4\"></span>\n </button>\n <div\n class=\"dropdown-menu dropdown-menu-wide dropdown-menu-action-bar\"\n *dropdownMenu\n >\n <div class=\"sticky-top separator-bottom p-t-8 p-b-8 p-l-16 p-r-16\">\n <p>\n <strong>{{ 'Data explorer configurations' | translate }}</strong>\n </p>\n <p>\n <small>{{ 'Easily switch and manage configurations.' | translate }}</small>\n </p>\n </div>\n <c8y-list-group class=\"no-border-last\">\n <form [formGroup]=\"configurationsFormGroup\">\n <div formArrayName=\"configurations\">\n <c8y-li\n class=\"p-0\"\n *ngFor=\"\n let configuration of configurationsFormGroup.controls.configurations['controls'];\n let i = index\n \"\n [dense]=\"true\"\n >\n <c8y-li-radio\n [selected]=\"configuration.value.id === currentConfiguration.id\"\n (onSelect)=\"changeConfiguration($event, configuration.value)\"\n ></c8y-li-radio>\n <div class=\"d-flex a-i-center gap-8\">\n <div\n class=\"flex-grow min-width-0\"\n [formGroupName]=\"i\"\n >\n <label\n class=\"editable\"\n [ngClass]=\"{\n updated:\n configuration.controls.label.touched && configuration.controls.label.dirty\n }\"\n >\n <input\n class=\"form-control\"\n [style.width.ch]=\"configuration.value.label || 25\"\n [attr.aria-label]=\"'Configuration label' | translate\"\n placeholder=\"{{ 'Configuration 1' | translate }}\"\n type=\"text\"\n autocomplete=\"off\"\n required\n formControlName=\"label\"\n (blur)=\"updateConfigurationLabel(configuration.value)\"\n />\n </label>\n </div>\n <div class=\"flex-nogrow d-flex gap-8\">\n <button\n class=\"btn-dot btn\"\n [attr.aria-label]=\"'Duplicate configuration' | translate\"\n tooltip=\"{{ 'Duplicate configuration' | translate }}\"\n placement=\"left\"\n (click)=\"addConfig(configuration.value.config)\"\n [delay]=\"500\"\n >\n <i c8yIcon=\"copy\"></i>\n </button>\n\n <button\n class=\"btn-dot btn btn-dot--danger\"\n [attr.aria-label]=\"'Remove configurations' | translate\"\n tooltip=\"{{\n (configuration.value.id === currentConfiguration.id\n ? activeConfigTooltip\n : removeConfigTooltip\n ) | translate\n }}\"\n placement=\"left\"\n [delay]=\"500\"\n (click)=\"$event.stopPropagation(); deleteConfiguration(configuration.value)\"\n [disabled]=\"configuration.value.id === currentConfiguration.id\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </div>\n </c8y-li>\n </div>\n </form>\n </c8y-list-group>\n <div class=\"sticky-bottom separator-top\">\n <div class=\"d-flex p-l-16 p-r-16 p-t-8 p-b-8\">\n <button\n class=\"btn btn-danger btn-sm flex-grow\"\n (click)=\"clearAll()\"\n [disabled]=\"configurations.length < 2\"\n >\n <i [c8yIcon]=\"'delete'\"></i>\n {{ 'Delete all configurations' | translate }}\n </button>\n <button\n class=\"btn btn-default btn-sm flex-grow\"\n type=\"button\"\n (click)=\"addConfig()\"\n >\n <i [c8yIcon]=\"'add-circle-outline'\"></i>\n {{ 'Add configuration' | translate }}\n </button>\n </div>\n </div>\n </div>\n</div>\n","import { Component, DestroyRef, ElementRef, inject, ViewChild } from '@angular/core';\nimport {\n AlertService,\n CommonModule,\n ContextRouteService,\n CoreModule,\n DynamicComponentAlertAggregator,\n FormsModule,\n gettext,\n Permissions,\n ViewContext\n} from '@c8y/ngx-components';\nimport { AlarmEventSelectorModule } from '@c8y/ngx-components/alarm-event-selector';\nimport { TimeContextComponent } from '@c8y/ngx-components/time-context';\nimport {\n DatapointAttributesFormConfig,\n DatapointSelectorModule,\n KPIDetails\n} from '@c8y/ngx-components/datapoint-selector';\nimport {\n AlarmDetailsExtended,\n AlarmOrEventExtended,\n DatapointsGraphKPIDetails,\n DatapointsGraphWidgetConfig,\n EventDetailsExtended,\n TimeContextProps\n} from '@c8y/ngx-components/echart/models';\nimport {\n ChartAlarmsService,\n ChartEventsService,\n ChartsComponent\n} from '@c8y/ngx-components/echart';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\nimport { aggregationType, IIdentified } from '@c8y/client';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { Interval } from '@c8y/ngx-components/interval-picker';\nimport { BsModalService } from 'ngx-bootstrap/modal';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { SendAsWidgetToReportModal } from './send-as-widget-to-report-modal/send-as-widget-to-report-modal.component';\nimport { ContextDashboardService } from '@c8y/ngx-components/context-dashboard';\nimport {\n DatapointsExportSelectorComponent,\n ExportConfig\n} from '@c8y/ngx-components/datapoints-export-selector';\nimport { CreateNewReportModalComponent } from './create-new-report-modal/create-new-report-modal.component';\nimport { DataExplorerService } from './datapoint-explorer.service';\nimport { WorkspaceConfigComponent } from './configuration/workspace-configuration.component';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'c8y-datapoint-explorer',\n templateUrl: './datapoint-explorer.component.html',\n standalone: true,\n imports: [\n CoreModule,\n CommonModule,\n DatapointSelectorModule,\n AlarmEventSelectorModule,\n TooltipModule,\n PopoverModule,\n TimeContextComponent,\n ChartsComponent,\n BsDropdownModule,\n FormsModule,\n A11yModule,\n DatapointsExportSelectorComponent,\n WorkspaceConfigComponent\n ],\n providers: [ChartEventsService, ChartAlarmsService]\n})\nexport class DatapointExplorerComponent {\n @ViewChild('chart') chart: ElementRef;\n config: DatapointsGraphWidgetConfig = { datapoints: [], alarmsEventsConfigs: [] };\n exportConfig: ExportConfig;\n alerts: DynamicComponentAlertAggregator | undefined;\n alarms: AlarmDetailsExtended[] = [];\n events: EventDetailsExtended[] = [];\n datapointsOutOfSync = new Map<DatapointsGraphKPIDetails, boolean>();\n contextAsset: IIdentified;\n formGroup: FormGroup;\n hasAtLeastOneDatapointActive = true;\n hasAtLeastOneAlarmActive = true;\n isMarkedAreaEnabled = false;\n alarmsOrEventsHaveNoMatchingDps = false;\n canAddReport = false;\n timeProps: {\n dateFrom: Date;\n dateTo: Date;\n interval?: Interval['id'];\n realtime?: boolean;\n aggregation?: aggregationType | null;\n };\n datapointSelectDefaultFormOptions: Partial<DatapointAttributesFormConfig> = {\n showRange: true,\n showChart: true\n };\n\n #destroyRef = inject(DestroyRef);\n\n private readonly dataExplorerService = inject(DataExplorerService);\n private readonly formBuilder = inject(FormBuilder);\n private readonly alertService = inject(AlertService);\n private readonly bsModalService = inject(BsModalService);\n private readonly permissions = inject(Permissions);\n private readonly contextDashboardService = inject(ContextDashboardService);\n private readonly activatedRoute = inject(ActivatedRoute);\n private readonly contextRouteService = inject(ContextRouteService);\n\n constructor() {\n this.formGroup = this.initForm();\n }\n\n ngOnInit(): void {\n this.contextAsset = this.initializeContextSourceId();\n this.checkForMatchingDatapoints();\n this.canAddReport = this.permissions.hasAnyRole([\n Permissions.ROLE_INVENTORY_CREATE,\n Permissions.ROLE_INVENTORY_ADMIN,\n Permissions.ROLE_MANAGED_OBJECT_ADMIN,\n Permissions.ROLE_MANAGED_OBJECT_CREATE\n ]);\n this.formGroup.valueChanges\n .pipe(takeUntilDestroyed(this.#destroyRef))\n .subscribe(configChange => {\n const { alarms, events, ...configValues } = configChange;\n this.config = {\n ...configValues,\n alarmsEventsConfigs: [...(alarms || []), ...(events || [])]\n };\n this.updateExportConfig();\n this.checkForMatchingDatapoints();\n });\n }\n\n onTimeContextChange(timeProps: TimeContextProps): void {\n const realtime = this.formGroup.controls.realtime.value;\n if (timeProps.realtime !== realtime) {\n this.formGroup.patchValue({ realtime: timeProps.realtime });\n }\n if (timeProps.realtime) {\n if (timeProps.currentDateContextInterval !== this.formGroup.value.interval) {\n this.formGroup.patchValue({ interval: timeProps.currentDateContextInterval });\n }\n return;\n }\n this.formGroup.patchValue({\n dateFrom: timeProps.currentDateContextFromDate,\n dateTo: timeProps.currentDateContextToDate,\n interval: timeProps.currentDateContextInterval,\n aggregation: timeProps.aggregation || null\n });\n }\n\n onConfigurationChange(config: DatapointsGraphWidgetConfig): void {\n if (config.dateFrom && config.dateTo) {\n this.timeProps = {\n dateFrom: new Date(config?.dateFrom),\n dateTo: new Date(config?.dateTo),\n interval: config?.interval,\n realtime: config?.realtime,\n aggregation: config?.realtime ? null : config?.aggregation\n };\n }\n this.alarms = config.alarmsEventsConfigs.filter(ae => ae.timelineType === 'ALARM');\n this.events = config.alarmsEventsConfigs.filter(ae => ae.timelineType === 'EVENT');\n this.formGroup.patchValue({ alarms: this.alarms, events: this.events, ...config });\n }\n\n onSliderZoom(timeProps: { dateFrom: Date; dateTo: Date; interval?: Interval['id'] }) {\n this.formGroup.patchValue(timeProps);\n this.timeProps = { ...timeProps, realtime: false };\n }\n\n updateTimeRangeOnRealtime(\n timeRange: Pick<DatapointsGraphWidgetConfig, 'dateFrom' | 'dateTo'>\n ): void {\n this.formGroup.patchValue(timeRange, { emitEvent: false });\n }\n\n createNewReportWithWidget(): void {\n const modal = this.bsModalService.show(CreateNewReportModalComponent, {\n ignoreBackdropClick: true,\n keyboard: false,\n class: 'modal-sm'\n });\n const content = modal.content as CreateNewReportModalComponent;\n content.result\n .then(async report => {\n const reportDashboard = await this.dataExplorerService.fetchReportDashboard(report.id);\n const widget = this.createWidgetConfig();\n reportDashboard.c8y_Dashboard.children = { [widget.id]: widget };\n await this.contextDashboardService.update(reportDashboard);\n this.alertService.success(gettext('Report and widget created.'));\n })\n .catch(e => {\n if (e) {\n this.alertService.danger(gettext('Failed to create report and widget.'));\n this.alertService.addServerFailure(e);\n }\n // else: modal was closed\n });\n }\n\n sendAsWidgetToReport(): void {\n const modal = this.bsModalService.show(SendAsWidgetToReportModal, {\n ignoreBackdropClick: true,\n keyboard: false,\n class: 'modal-sm'\n });\n const content = modal.content as SendAsWidgetToReportModal;\n content.result\n .then(async reports => {\n const selectedReports = Object.entries(reports).filter(([, value]) => value);\n const reportPromises = selectedReports.map(async ([reportId]) => {\n const reportDashboard = await this.dataExplorerService.fetchReportDashboard(reportId);\n const widget = this.createWidgetConfig();\n const children = reportDashboard.c8y_Dashboard.children || {};\n reportDashboard.c8y_Dashboard.children = { ...children, [widget.id]: widget };\n await this.contextDashboardService.update(reportDashboard);\n });\n\n await Promise.all(reportPromises);\n this.alertService.success(gettext('Widget created.'));\n })\n .catch(e => {\n if (e) {\n this.alertService.danger(gettext('Failed to create widget.'));\n this.alertService.addServerFailure(e);\n }\n // else: modal was closed\n });\n }\n\n updateAlarmsAndEvents(alarmsEventsConfigs: AlarmOrEventExtended[]): void {\n this.alarms = alarmsEventsConfigs.filter(this.isAlarm);\n this.events = alarmsEventsConfigs.filter(this.isEvent);\n this.hasAtLeastOneAlarmActive = this.hasActiveAlarms(this.alarms);\n }\n\n handleDatapointOutOfSync(dpOutOfSync: DatapointsGraphKPIDetails): void {\n const key = (dp: KPIDetails) => dp.__target?.id + dp.fragment + dp.series;\n const dpMatch = this.config.datapoints?.find(dp => key(dp) === key(dpOutOfSync));\n if (!dpMatch) {\n return;\n }\n this.datapointsOutOfSync.set(dpMatch, true);\n }\n\n private isAlarm(item: AlarmOrEventExtended): item is AlarmDetailsExtended {\n return item.timelineType === 'ALARM';\n }\n\n private isEvent(item: AlarmOrEventExtended): item is EventDetailsExtended {\n return item.timelineType === 'EVENT';\n }\n\n private hasActiveAlarms(alarms: AlarmDetailsExtended[]): boolean {\n return alarms.length > 0 && alarms.some(alarm => alarm.__active);\n }\n\n private checkForMatchingDatapoints(): void {\n const allMatch = this.config?.alarmsEventsConfigs?.every(ae =>\n this.formGroup.value.datapoints?.some(dp => dp.__target?.id === ae.__target?.id)\n );\n\n queueMicrotask(() => {\n this.alarmsOrEventsHaveNoMatchingDps = !allMatch;\n });\n }\n\n private updateExportConfig(): void {\n const datapointDetails = this.config.datapoints\n .filter(({ __active }) => __active)\n .map(({ __target, fragment, series }) => ({\n deviceName: __target.name,\n source: __target.id,\n valueFragmentSeries: series,\n valueFragmentType: fragment\n }));\n\n if (datapointDetails.length === 0) {\n this.exportConfig = null;\n } else {\n this.exportConfig = {\n aggregation: this.config.aggregation,\n dateFrom: new Date(this.config.dateFrom).toISOString(),\n dateTo: new Date(this.config.dateTo).toISOString(),\n datapointDetails: datapointDetails\n };\n }\n }\n\n private initializeContextSourceId(): IIdentified {\n const routeContext = this.contextRouteService.getContextData(this.activatedRoute);\n if (!routeContext) {\n return;\n }\n const { context, contextData } = routeContext;\n if ([ViewContext.Device, ViewContext.Group].includes(context)) {\n return contextData;\n }\n }\n\n private createWidgetConfig(): any {\n return {\n name: 'Data points graph 2',\n title: gettext('Data points graph 2'),\n id: String(Math.random()).substr(2),\n _width: 24,\n _height: 5,\n config: this.config\n };\n }\n\n private initForm() {\n return this.formBuilder.group({\n datapoints: [this.config.datapoints || []],\n alarms: [this.alarms || []],\n events: [this.events || []],\n dateFrom: [this.config.dateFrom || (null as Date)],\n dateTo: [this.config.dateFrom || (null as Date)],\n interval: [this.config.interval || 'hours'],\n aggregation: [this.config.aggregation || (null as aggregationType | null)],\n realtime: [this.config.realtime || false],\n displayMarkedLine: [true, []],\n displayMarkedPoint: [true, []],\n mergeMatchingDatapoints: [true, []],\n showLabelAndUnit: [true, []],\n showSlider: [true, []],\n displayDateSelection: [false, []],\n yAxisSplitLines: [false],\n xAxisSplitLines: [false]\n });\n }\n}\n","<c8y-title>{{ 'Data explorer' | translate }}</c8y-title>\n\n<c8y-time-context\n (contextChange)=\"onTimeContextChange($event)\"\n [changedDateContext]=\"timeProps\"\n></c8y-time-context>\n\n<c8y-action-bar-item [placement]=\"'left'\">\n <c8y-workspace-config\n [updatedConfig]=\"config\"\n (onConfigurationChange)=\"onConfigurationChange($event)\"\n ></c8y-workspace-config>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item placement=\"right\">\n <c8y-datapoints-export-selector [exportConfig]=\"exportConfig\"></c8y-datapoints-export-selector>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item\n [placement]=\"'more'\"\n [priority]=\"-2000\"\n>\n <button\n title=\"{{ 'Send as widget to report' | translate }}\"\n type=\"button\"\n data-cy=\"widgets-dashboard--copy-dashboard\"\n (click)=\"sendAsWidgetToReport()\"\n [disabled]=\"config?.datapoints?.length === 0 || !canAddReport\"\n >\n <i c8yIcon=\"c8y-reports\"></i>\n <span>{{ 'Send as widget to report' | translate }}</span>\n </button>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item\n [placement]=\"'more'\"\n [priority]=\"-2000\"\n>\n <button\n title=\"{{ 'Create a new report with widget' | translate }}\"\n type=\"button\"\n data-cy=\"widgets-dashboard--copy-dashboard\"\n (click)=\"createNewReportWithWidget()\"\n [disabled]=\"config?.datapoints?.length === 0 || !canAddReport\"\n >\n <i c8yIcon=\"c8y-reports\"></i>\n <span>{{ 'Create a new report with widget' | translate }}</span>\n </button>\n</c8y-action-bar-item>\n\n<div class=\"content-fullpage d-grid grid_col--auto-360 gap-24\">\n <div class=\"d-col gap-16\">\n <c8y-charts\n class=\"flex-grow data-point-explorer\"\n #chart\n [config]=\"config\"\n [alerts]=\"alerts\"\n (updateAlarmsAndEvents)=\"updateAlarmsAndEvents($event)\"\n (configChangeOnZoomOut)=\"onSliderZoom($event)\"\n (datapointOutOfSync)=\"handleDatapointOutOfSync($event)\"\n (timeRangeChangeOnRealtime)=\"updateTimeRangeOnRealtime($event)\"\n (isMarkedAreaEnabled)=\"isMarkedAreaEnabled = $event\"\n ></c8y-charts>\n <form\n class=\"m-l-48 m-r-48\"\n [formGroup]=\"formGroup\"\n >\n <div class=\"d-grid-md grid__col--4-4-4 gap-16\">\n <fieldset class=\"c8y-fieldset form-group-sm m-t-md-0 p-b-8\">\n <legend>{{ 'Axis' | translate }}</legend>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Y axis helper lines' | translate\"\n >\n <input\n name=\"yAxisSplitLines\"\n type=\"checkbox\"\n formControlName=\"yAxisSplitLines\"\n />\n <span></span>\n <span translate>Y-axis helper lines</span>\n </label>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'X axis helper lines' | translate\"\n >\n <input\n name=\"xAxisSplitLines\"\n type=\"checkbox\"\n formControlName=\"xAxisSplitLines\"\n />\n <span></span>\n <span translate>X-axis helper lines</span>\n </label>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Merge matching data points into single axis' | translate\"\n >\n <input\n name=\"mergeMatchingDatapoints\"\n type=\"checkbox\"\n formControlName=\"mergeMatchingDatapoints\"\n />\n <span></span>\n <span translate>Merge matching data points into single axis</span>\n </label>\n </fieldset>\n <fieldset class=\"c8y-fieldset form-group-sm m-t-md-0 p-b-8\">\n <legend>{{ 'Alarms & events' | translate }}</legend>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show vertical line when alarm occurs' | translate\"\n >\n <input\n name=\"displayMarkedLine\"\n type=\"checkbox\"\n formControlName=\"displayMarkedLine\"\n />\n <span></span>\n <span translate>Show vertical line on every occurrence</span>\n </label>\n\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show icon when alarm or event occurs' | translate\"\n >\n <input\n name=\"displayMarkedPoint\"\n type=\"checkbox\"\n formControlName=\"displayMarkedPoint\"\n />\n <span></span>\n <span>\n {{\n 'Show icon when triggered`When alarms and events occur the icon will be shown`'\n | translate\n }}\n </span>\n <button\n class=\"btn-dot m-l-8\"\n [attr.aria-label]=\"\n 'Some alarms or events have no matching data points. No icons will be shown for them.'\n | translate\n \"\n [tooltip]=\"\n 'Some alarms or events have no matching data points. No icons will be shown for them.'\n | translate\n \"\n container=\"body\"\n type=\"button\"\n *ngIf=\"alarmsOrEventsHaveNoMatchingDps\"\n (click)=\"$event.stopPropagation()\"\n [adaptivePosition]=\"false\"\n >\n <i\n class=\"text-info\"\n c8yIcon=\"info\"\n ></i>\n </button>\n </label>\n </fieldset>\n <fieldset class=\"c8y-fieldset form-group-sm m-t-md-0 p-b-8\">\n <legend>{{ 'Chart' | translate }}</legend>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show labels and units' | translate\"\n >\n <input\n name=\"showLabelAndUnit\"\n type=\"checkbox\"\n formControlName=\"showLabelAndUnit\"\n />\n <span></span>\n <span translate>Display labels and units on Y-axis</span>\n </label>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show slider' | translate\"\n >\n <input\n name=\"showSlider\"\n type=\"checkbox\"\n formControlName=\"showSlider\"\n />\n <span></span>\n <span translate>Show slider</span>\n </label>\n </fieldset>\n </div>\n </form>\n </div>\n <div class=\"card inner-scroll bg-level-1\">\n <form\n class=\"bg-inherit\"\n [formGroup]=\"formGroup\"\n >\n <c8y-datapoint-selection-list\n class=\"bg-inherit separator-top d-block\"\n name=\"datapoints\"\n [minActiveCount]=\"0\"\n [defaultFormOptions]=\"datapointSelectDefaultFormOptions\"\n [config]=\"{ contextAsset: contextAsset }\"\n formControlName=\"datapoints\"\n [allowDragAndDrop]=\"true\"\n ></c8y-datapoint-selection-list>\n\n <c8y-alarm-event-selection-list\n class=\"bg-inherit\"\n name=\"alarms\"\n formControlName=\"alarms\"\n [timelineType]=\"'ALARM'\"\n [datapoints]=\"config.datapoints\"\n ></c8y-alarm-event-selection-list>\n\n <c8y-alarm-event-selection-list\n class=\"bg-inherit\"\n name=\"events\"\n formControlName=\"events\"\n [timelineType]=\"'EVENT'\"\n [datapoints]=\"config.datapoints\"\n ></c8y-alarm-event-selection-list>\n </form>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i4","i5","FormsModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-datapoint-explorer-view.mjs","sources":["../../datapoint-explorer/view/send-as-widget-to-report-modal/send-as-widget-to-report-modal.component.ts","../../datapoint-explorer/view/send-as-widget-to-report-modal/send-as-widget-to-report-modal.component.html","../../datapoint-explorer/view/create-new-report-modal/create-new-report-modal.component.ts","../../datapoint-explorer/view/create-new-report-modal/create-new-report-modal.component.html","../../datapoint-explorer/view/datapoint-explorer.service.ts","../../datapoint-explorer/view/configuration/workspace-configuration.service.ts","../../datapoint-explorer/view/configuration/naming-dictionary.ts","../../datapoint-explorer/view/configuration/name-generator.service.ts","../../datapoint-explorer/view/configuration/workspace-configuration.component.ts","../../datapoint-explorer/view/configuration/workspace-configuration.component.html","../../datapoint-explorer/view/datapoint-explorer.component.ts","../../datapoint-explorer/view/datapoint-explorer.component.html","../../datapoint-explorer/view/c8y-ngx-components-datapoint-explorer-view.ts"],"sourcesContent":["import { Component, inject } from '@angular/core';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule, gettext, ModalLabels } from '@c8y/ngx-components';\nimport { Observable, merge, of } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport {\n ReportDashboardModule,\n ReportDashboardService\n} from '@c8y/ngx-components/report-dashboard';\nimport { IManagedObject } from '@c8y/client';\n@Component({\n selector: 'c8y-apply-branding-to-app-modal',\n templateUrl: './send-as-widget-to-report-modal.component.html',\n standalone: true,\n imports: [ReactiveFormsModule, CoreModule, ReportDashboardModule]\n})\nexport class SendAsWidgetToReportModal {\n reports: IManagedObject[] = [];\n numberOfSelectedReports$: Observable<number>;\n form: ReturnType<typeof this.initForm>;\n result = new Promise<ReturnType<typeof this.initForm>['value']>((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n labels: ModalLabels = { cancel: gettext('Cancel'), ok: gettext('Send') };\n private reportDashboardService = inject(ReportDashboardService);\n private _resolve: (value: ReturnType<typeof this.initForm>['value']) => void;\n private _reject: (reason?: any) => void;\n async ngOnInit() {\n this.reports = (await this.reportDashboardService.listReports({ pageSize: 2000 })).data;\n if (this.reports.length > 0) {\n this.form = this.initForm();\n }\n this.numberOfSelectedReports$ = merge(this.form.valueChanges, of(this.form.value)).pipe(\n map(value => Object.values(value).filter(Boolean).length)\n );\n }\n save() {\n this._resolve(this.form.value);\n }\n cancel() {\n this._reject();\n }\n private initForm(): FormGroup<Record<string, FormControl<boolean>>> {\n const controls = this.reports.reduce(\n (acc, report) => ({\n ...acc,\n [report.id]: new FormControl(false)\n }),\n {}\n );\n return new FormGroup(controls);\n }\n}\n","<c8y-modal\n [title]=\"'Send as widget to reports' | translate\"\n [disabled]=\"!form || form.invalid\"\n [headerClasses]=\"'dialog-header'\"\n (onDismiss)=\"cancel()\"\n (onClose)=\"save()\"\n [labels]=\"labels\"\n>\n <ng-container c8y-modal-title>\n <span c8yIcon=\"c8y-reports\"></span>\n </ng-container>\n\n <c8y-list-group\n class=\"m-b-0 no-border-last\"\n *ngIf=\"form\"\n [formGroup]=\"form\"\n >\n <c8y-li>\n <p\n class=\"text-center text-medium\"\n *ngIf=\"numberOfSelectedReports$ | async as numberOfReports; else noSelectedReports\"\n translate\n [translateParams]=\"{ numberOfReports: numberOfReports }\"\n ngNonBindable\n >\n {{ numberOfReports }} reports selected for widget\n </p>\n <ng-template #noSelectedReports>\n <p\n class=\"text-center text-medium\"\n translate\n >\n Select one or more reports to send the Data points graph widget with the current configuration\n </p>\n </ng-template>\n </c8y-li>\n <c8y-li *ngFor=\"let report of reports\">\n <c8y-li-checkbox\n [attr.data-cy]=\"'branding-apply-branding-to-app-checkbox-' + report.id\"\n [formControlName]=\"report.id\"\n ></c8y-li-checkbox>\n <c8y-li-icon class=\"p-l-0\">\n <i c8yIcon=\"{{ report.icon }}\"></i>\n </c8y-li-icon>\n <div class=\"text-truncate\" title=\"{{report.name}}\">{{ report.name }}</div>\n </c8y-li>\n </c8y-list-group>\n\n <c8y-ui-empty-state\n [icon]=\"'c8y-reports'\"\n [title]=\"'There are no reports defined.' | translate\"\n [subtitle]=\"'Add a report first.' | translate\"\n *ngIf=\"reports.length === 0\"\n ></c8y-ui-empty-state>\n</c8y-modal>\n","import { Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule, gettext, ModalLabels } from '@c8y/ngx-components';\nimport { ReportDashboardModule } from '@c8y/ngx-components/report-dashboard';\nimport { ContextDashboardService } from '@c8y/ngx-components/context-dashboard';\nimport { IManagedObject } from '@c8y/client';\n\n@Component({\n selector: 'c8y-create-new-report-modal',\n templateUrl: './create-new-report-modal.component.html',\n standalone: true,\n imports: [ReactiveFormsModule, CoreModule, ReportDashboardModule]\n})\nexport class CreateNewReportModalComponent {\n reportName = '';\n labels: ModalLabels = { cancel: gettext('Cancel'), ok: gettext('Send') };\n\n result = new Promise<IManagedObject>((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n\n styling = {\n themeClass: 'dashboard-theme-light',\n headerClass: 'panel-title-regular'\n };\n\n readonly DEFAULT_DASHBOARD_ICON = 'th';\n readonly DEFAULT_DASHBOARD_PRIORITY = 5000;\n readonly DEFAULT_DASHBOARD_MARGIN = 12;\n private _resolve: (value: IManagedObject) => void;\n private _reject: (reason?: any) => void;\n constructor(private contextDashboardService: ContextDashboardService) {}\n\n async save() {\n const dashboard = {\n name: this.reportName,\n icon: this.DEFAULT_DASHBOARD_ICON,\n c8y_IsNavigatorNode: null,\n priority: this.DEFAULT_DASHBOARD_PRIORITY,\n description: '',\n widgetMargin: this.DEFAULT_DASHBOARD_MARGIN,\n classes: { [this.styling.headerClass]: true },\n widgetClasses: { [this.styling.headerClass]: true }\n };\n try {\n const { name, icon, c8y_IsNavigatorNode, priority, description } = dashboard;\n const report = (\n await this.contextDashboardService.createReport({\n name,\n icon,\n c8y_IsNavigatorNode,\n priority,\n description\n } as Partial<IManagedObject>)\n ).data;\n\n await this.contextDashboardService.create(\n dashboard,\n undefined,\n `${this.contextDashboardService.REPORT_PARTIAL_NAME}${report.id}`\n );\n\n this._resolve(report);\n } catch (ex) {\n this._reject(ex);\n }\n }\n\n cancel() {\n this._reject();\n }\n}\n","<c8y-modal\n [title]=\"'Create new report with widget' | translate\"\n [headerClasses]=\"'dialog-header'\"\n [disabled]=\"reportName === ''\"\n (onDismiss)=\"cancel()\"\n (onClose)=\"save()\"\n [labels]=\"labels\"\n>\n <ng-container c8y-modal-title>\n <span c8yIcon=\"c8y-reports\"></span>\n </ng-container>\n\n <p class=\"text-center bg-component text-balance sticky-top p-l-24 p-r-24 p-t-8 p-b-8 separator-bottom\">\n {{' Create a new report with the Data points graph widget using the current configuration.' | translate}}\n </p>\n <div class=\"p-24 p-t-8\">\n <c8y-form-group>\n <label\n for=\"reportName\"\n translate\n >\n Report name\n </label>\n <input\n class=\"form-control\"\n id=\"reportName\"\n placeholder=\"{{ 'e.g. My data point Report' }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"reportName\"\n />\n <c8y-messages></c8y-messages>\n </c8y-form-group>\n </div>\n</c8y-modal>\n","import { inject, Injectable } from '@angular/core';\nimport { IManagedObject, InventoryService } from '@c8y/client';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataExplorerService {\n private readonly inventory = inject(InventoryService);\n\n async fetchReportDashboard(reportId: string): Promise<IManagedObject> {\n return (\n await this.inventory.list({\n pageSize: 1,\n query: `has('c8y_Dashboard!name!report_${reportId}')`\n })\n ).data[0];\n }\n}\n","import { effect, Injectable, signal, WritableSignal } from '@angular/core';\nimport { WorkspaceConfiguration } from './workspace-configuration.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WorkspaceConfigurationService {\n LOCAL_STORAGE_KEY = 'c8y-configs';\n LOCAL_STORAGE_DEFAULT_ID_KEY = 'c8y-default-config-id';\n contextIdSignal: WritableSignal<number | string | null> = signal(null);\n\n constructor() {\n effect(() => {\n const signalValue = this.contextIdSignal();\n if (signalValue !== null) {\n this.LOCAL_STORAGE_KEY = `c8y-configs-${signalValue}`;\n this.LOCAL_STORAGE_DEFAULT_ID_KEY = `c8y-default-config-id-${signalValue}`;\n }\n if (signalValue == null) {\n this.LOCAL_STORAGE_KEY = 'c8y-configs';\n this.LOCAL_STORAGE_DEFAULT_ID_KEY = 'c8y-default-config-id';\n }\n });\n }\n\n getConfigurations(): WorkspaceConfiguration[] {\n const configurations = localStorage.getItem(this.LOCAL_STORAGE_KEY);\n return configurations ? JSON.parse(configurations) : [];\n }\n\n getDefaultConfigurationId(): string | null {\n return localStorage.getItem(this.LOCAL_STORAGE_DEFAULT_ID_KEY);\n }\n\n saveConfigurations(configurations: WorkspaceConfiguration[], id: string): void {\n localStorage.setItem(this.LOCAL_STORAGE_KEY, JSON.stringify(configurations));\n localStorage.setItem(this.LOCAL_STORAGE_DEFAULT_ID_KEY, id);\n }\n}\n","export const adjectives = [\n 'caffeinated',\n 'sleepy',\n 'hungry',\n 'puzzled',\n 'overexcited',\n 'daydreaming',\n 'chocolate-loving',\n 'coffee-powered',\n 'cookie-craving',\n 'disco-ready',\n 'weekend-mode',\n 'pizza-powered',\n 'nap-seeking',\n 'wifi-hunting',\n 'battery-hungry',\n 'donut-powered',\n 'tea-sipping',\n 'keyboard-loving',\n 'screen-staring',\n 'mouse-chasing',\n 'code-dreaming',\n 'pixel-perfect',\n 'bug-finding',\n 'zoom-tired',\n 'meeting-dodging',\n 'deadline-racing',\n 'coffee-seeking',\n 'sandwich-craving',\n 'debug-ready',\n 'rest-needing'\n];\nexport const nouns = [\n 'sensor',\n 'robot',\n 'thermostat',\n 'gateway',\n 'dashboard',\n 'widget',\n 'gadget',\n 'button',\n 'antenna',\n 'beacon',\n 'adapter',\n 'gizmo',\n 'hub',\n 'switch',\n 'chip',\n 'controller',\n 'display',\n 'terminal',\n 'processor',\n 'transmitter',\n 'receiver',\n 'pod',\n 'device',\n 'module',\n 'relay',\n 'node',\n 'bridge',\n 'screen',\n 'router',\n 'box'\n];\n","import { Injectable } from '@angular/core';\nimport { adjectives, nouns } from './naming-dictionary';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NameGeneratorService {\n generateName(): string {\n const getRandomElement = (arr: string[]) => arr[Math.floor(Math.random() * arr.length)];\n const randomAdjective = getRandomElement(adjectives);\n const randomNoun = getRandomElement(nouns);\n\n return `${randomAdjective}_${randomNoun}`;\n }\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport {\n Component,\n EventEmitter,\n inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges\n} from '@angular/core';\nimport { FormArray, FormBuilder, FormGroup, FormsModule } from '@angular/forms';\nimport {\n ClipboardService,\n ContextRouteService,\n CoreModule,\n gettext,\n ViewContext\n} from '@c8y/ngx-components';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { WorkspaceConfiguration } from './workspace-configuration.model';\nimport { DatapointsGraphWidgetConfig } from '@c8y/ngx-components/echart';\nimport { WorkspaceConfigurationService } from './workspace-configuration.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { NameGeneratorService } from './name-generator.service';\n\n@Component({\n selector: 'c8y-workspace-config',\n templateUrl: './workspace-configuration.component.html',\n standalone: true,\n imports: [CoreModule, BsDropdownModule, FormsModule, A11yModule, TooltipModule]\n})\nexport class WorkspaceConfigComponent implements OnInit, OnChanges {\n @Input() updatedConfig: DatapointsGraphWidgetConfig;\n @Output() onConfigurationChange = new EventEmitter<DatapointsGraphWidgetConfig>();\n\n currentConfiguration: WorkspaceConfiguration;\n configurations: WorkspaceConfiguration[] = [];\n configurationsFormGroup: FormGroup;\n activeConfigTooltip = gettext('Active configuration cannot be removed');\n removeConfigTooltip = gettext('Remove configuration');\n\n private readonly formBuilder = inject(FormBuilder);\n private readonly workspaceConfigurationService = inject(WorkspaceConfigurationService);\n private readonly contextRouteService = inject(ContextRouteService);\n private readonly clipboardService = inject(ClipboardService);\n private readonly activatedRoute = inject(ActivatedRoute);\n private readonly router = inject(Router);\n private readonly nameGeneratorService = inject(NameGeneratorService);\n\n ngOnInit(): void {\n this.initializeContextSourceId();\n this.initializeConfigurations();\n this.initWorkspaceForm();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.updatedConfig && !changes.updatedConfig.firstChange) {\n this.updateConfigurations();\n }\n }\n\n addConfig(duplicatedConfig?: DatapointsGraphWidgetConfig): void {\n const name = this.nameGeneratorService.generateName();\n const workspace: WorkspaceConfiguration = {\n id: new Date().toISOString(),\n label: name,\n config: { datapoints: [], alarmsEventsConfigs: [] }\n };\n if (duplicatedConfig) {\n workspace.config = duplicatedConfig;\n }\n this.configurations = [workspace, ...this.configurations];\n this.initWorkspaceForm();\n this.changeConfiguration(true, workspace);\n }\n\n changeConfiguration(selected: boolean, configuration: WorkspaceConfiguration): void {\n if (!selected) {\n return;\n }\n this.currentConfiguration = configuration;\n localStorage.setItem(\n this.workspaceConfigurationService.LOCAL_STORAGE_DEFAULT_ID_KEY,\n this.currentConfiguration.id\n );\n this.onConfigurationChange.emit(configuration.config);\n }\n\n updateConfigurationLabel(configuration: WorkspaceConfiguration): void {\n this.configurations = this.configurations.map(c =>\n c.id === configuration.id ? configuration : c\n );\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration?.id || ''\n );\n this.currentConfiguration = configuration;\n this.onConfigurationChange.emit(configuration.config);\n }\n\n deleteConfiguration(configuration: WorkspaceConfiguration): void {\n this.configurations = this.configurations.filter(c => c.id !== configuration.id);\n this.initWorkspaceForm();\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration?.id || ''\n );\n }\n\n clearAll(): void {\n this.configurations = [this.currentConfiguration];\n this.initWorkspaceForm();\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration?.id || ''\n );\n }\n\n async shareConfig(configuration: WorkspaceConfiguration): Promise<void> {\n await this.clipboardService.writeText(JSON.stringify(configuration.config));\n }\n\n private addConfigFromUrl(queryParams: any): void {\n this.addConfig();\n const config = JSON.parse(queryParams.config);\n this.onConfigurationChange.emit(config);\n }\n\n private updateConfigurations(): void {\n this.currentConfiguration.config = this.updatedConfig;\n this.configurations = this.configurations.map(currentConfig =>\n currentConfig.id === this.currentConfiguration.id ? this.currentConfiguration : currentConfig\n );\n const queryParams = {\n configId: this.currentConfiguration.id,\n label: this.currentConfiguration.label,\n config: JSON.stringify(this.updatedConfig)\n };\n this.workspaceConfigurationService.saveConfigurations(\n this.configurations,\n this.currentConfiguration.id\n );\n const control = <FormArray>this.configurationsFormGroup.controls['configurations'];\n const index = this.configurations.findIndex(c => c.id === this.currentConfiguration.id);\n if (index !== -1) {\n control.at(index).patchValue({\n label: this.currentConfiguration.label,\n config: this.currentConfiguration.config,\n id: this.currentConfiguration.id\n });\n }\n this.router.navigate([], { queryParams });\n }\n\n private initializeConfigurations(): void {\n const configurations = this.workspaceConfigurationService.getConfigurations();\n const defaultId = this.workspaceConfigurationService.getDefaultConfigurationId();\n const queryParams = this.router.parseUrl(this.router.url).queryParams;\n if (configurations.length) {\n this.configurations = configurations;\n this.currentConfiguration =\n this.configurations.find(c => c.id === defaultId) || this.configurations[0];\n\n this.onConfigurationChange.emit(this.currentConfiguration.config);\n if (queryParams?.configId && !this.configurations.find(c => c.id === queryParams.configId)) {\n this.addConfigFromUrl(queryParams);\n } else if (\n queryParams?.configId &&\n this.configurations.find(c => c.id === queryParams.configId) &&\n this.currentConfiguration.id !== queryParams.configId\n ) {\n this.currentConfiguration = this.configurations.find(c => c.id === queryParams.configId);\n this.changeConfiguration(true, this.currentConfiguration);\n }\n }\n\n if (!this.currentConfiguration) {\n if (Object.keys(queryParams).length === 0) {\n this.addConfig();\n return;\n }\n this.addConfigFromUrl(queryParams);\n }\n }\n\n private initWorkspaceForm(): void {\n this.configurationsFormGroup = this.formBuilder.group({\n configurations: this.formBuilder.array([])\n });\n\n this.patchForm();\n }\n\n private patchForm(): void {\n const control = <FormArray>this.configurationsFormGroup.controls['configurations'];\n this.configurations.forEach(workspace => {\n control.push(this.patchValues(workspace));\n });\n }\n\n private patchValues(workspace: WorkspaceConfiguration): FormGroup {\n return this.formBuilder.group({\n label: [workspace.label],\n config: [workspace.config],\n id: [workspace.id]\n });\n }\n\n private initializeContextSourceId(): void {\n const routeContext = this.contextRouteService.getContextData(this.activatedRoute);\n if (!routeContext) {\n return;\n }\n const { context, contextData } = routeContext;\n if ([ViewContext.Device, ViewContext.Group].includes(context)) {\n this.workspaceConfigurationService.contextIdSignal.set(contextData?.id);\n }\n }\n}\n","<div\n class=\"dropdown\"\n #actionbar_dropdown=\"bs-dropdown\"\n [cdkTrapFocus]=\"actionbar_dropdown.isOpen\"\n dropdown\n [insideClick]=\"true\"\n>\n\n <button\n class=\"dropdown-toggle form-control l-h-tight d-flex a-i-center\"\n attr.aria-label=\"{{ currentConfiguration.label }}\"\n tooltip=\"{{ 'Selected configuration' | translate }}\"\n placement=\"top\"\n container=\"body\"\n data-cy=\"current-configuration-dropdown-button\"\n [adaptivePosition]=\"false\"\n [delay]=\"500\"\n dropdownToggle\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"list\"\n ></i>\n <div class=\"d-col text-left fit-w\">\n <span class=\"text-12\">\n {{ 'Configuration' | translate }}\n </span>\n <span class=\"text-10 text-muted text-truncate\">\n {{ currentConfiguration.label }}\n </span>\n </div>\n <span class=\"caret m-r-16 m-l-4\"></span>\n </button>\n <div\n class=\"dropdown-menu dropdown-menu-wide dropdown-menu-action-bar\"\n *dropdownMenu\n >\n <div class=\"sticky-top separator-bottom p-t-8 p-b-8 p-l-16 p-r-16\">\n <p>\n <strong>{{ 'Data explorer configurations' | translate }}</strong>\n </p>\n <p>\n <small>{{ 'Easily switch and manage configurations.' | translate }}</small>\n </p>\n </div>\n <c8y-list-group class=\"no-border-last\">\n <form [formGroup]=\"configurationsFormGroup\">\n <div formArrayName=\"configurations\">\n <c8y-li\n class=\"p-0\"\n *ngFor=\"\n let configuration of configurationsFormGroup.controls.configurations['controls'];\n let i = index\n \"\n [dense]=\"true\"\n >\n <c8y-li-radio\n [selected]=\"configuration.value.id === currentConfiguration.id\"\n (onSelect)=\"changeConfiguration($event, configuration.value)\"\n ></c8y-li-radio>\n <div class=\"d-flex a-i-center gap-8\">\n <div\n class=\"flex-grow min-width-0\"\n [formGroupName]=\"i\"\n >\n <label\n class=\"editable\"\n [ngClass]=\"{\n updated:\n configuration.controls.label.touched && configuration.controls.label.dirty\n }\"\n >\n <input\n class=\"form-control\"\n [style.width.ch]=\"configuration.value.label || 25\"\n [attr.aria-label]=\"'Configuration label' | translate\"\n placeholder=\"{{ 'Configuration 1' | translate }}\"\n type=\"text\"\n autocomplete=\"off\"\n required\n formControlName=\"label\"\n (blur)=\"updateConfigurationLabel(configuration.value)\"\n />\n </label>\n </div>\n <div class=\"flex-nogrow d-flex gap-8\">\n <button\n class=\"btn-dot btn\"\n [attr.aria-label]=\"'Duplicate configuration' | translate\"\n tooltip=\"{{ 'Duplicate configuration' | translate }}\"\n placement=\"left\"\n (click)=\"addConfig(configuration.value.config)\"\n [delay]=\"500\"\n >\n <i c8yIcon=\"copy\"></i>\n </button>\n\n <button\n class=\"btn-dot btn btn-dot--danger\"\n [attr.aria-label]=\"'Remove configurations' | translate\"\n tooltip=\"{{\n (configuration.value.id === currentConfiguration.id\n ? activeConfigTooltip\n : removeConfigTooltip\n ) | translate\n }}\"\n placement=\"left\"\n [delay]=\"500\"\n (click)=\"$event.stopPropagation(); deleteConfiguration(configuration.value)\"\n [disabled]=\"configuration.value.id === currentConfiguration.id\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </div>\n </c8y-li>\n </div>\n </form>\n </c8y-list-group>\n <div class=\"sticky-bottom separator-top\">\n <div class=\"d-flex p-l-16 p-r-16 p-t-8 p-b-8\">\n <button\n class=\"btn btn-danger btn-sm flex-grow\"\n (click)=\"clearAll()\"\n [disabled]=\"configurations.length < 2\"\n >\n <i [c8yIcon]=\"'delete'\"></i>\n {{ 'Delete all configurations' | translate }}\n </button>\n <button\n class=\"btn btn-default btn-sm flex-grow\"\n type=\"button\"\n (click)=\"addConfig()\"\n >\n <i [c8yIcon]=\"'add-circle-outline'\"></i>\n {{ 'Add configuration' | translate }}\n </button>\n </div>\n </div>\n </div>\n</div>\n","import { Component, DestroyRef, ElementRef, inject, ViewChild } from '@angular/core';\nimport {\n AlertService,\n CommonModule,\n ContextRouteService,\n CoreModule,\n DynamicComponentAlertAggregator,\n FormsModule,\n gettext,\n Permissions,\n ViewContext\n} from '@c8y/ngx-components';\nimport { AlarmEventSelectorModule } from '@c8y/ngx-components/alarm-event-selector';\nimport { TimeContextComponent } from '@c8y/ngx-components/time-context';\nimport {\n DatapointAttributesFormConfig,\n DatapointSelectorModule,\n KPIDetails\n} from '@c8y/ngx-components/datapoint-selector';\nimport {\n AlarmDetailsExtended,\n AlarmOrEventExtended,\n DatapointsGraphKPIDetails,\n DatapointsGraphWidgetConfig,\n EventDetailsExtended,\n TimeContextProps\n} from '@c8y/ngx-components/echart/models';\nimport {\n ChartAlarmsService,\n ChartEventsService,\n ChartsComponent\n} from '@c8y/ngx-components/echart';\nimport { FormBuilder, FormGroup } from '@angular/forms';\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\nimport { aggregationType, IIdentified } from '@c8y/client';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { Interval } from '@c8y/ngx-components/interval-picker';\nimport { BsModalService } from 'ngx-bootstrap/modal';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { SendAsWidgetToReportModal } from './send-as-widget-to-report-modal/send-as-widget-to-report-modal.component';\nimport { ContextDashboardService } from '@c8y/ngx-components/context-dashboard';\nimport {\n DatapointsExportSelectorComponent,\n ExportConfig\n} from '@c8y/ngx-components/datapoints-export-selector';\nimport { CreateNewReportModalComponent } from './create-new-report-modal/create-new-report-modal.component';\nimport { DataExplorerService } from './datapoint-explorer.service';\nimport { WorkspaceConfigComponent } from './configuration/workspace-configuration.component';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute } from '@angular/router';\n\n@Component({\n selector: 'c8y-datapoint-explorer',\n templateUrl: './datapoint-explorer.component.html',\n standalone: true,\n imports: [\n CoreModule,\n CommonModule,\n DatapointSelectorModule,\n AlarmEventSelectorModule,\n TooltipModule,\n PopoverModule,\n TimeContextComponent,\n ChartsComponent,\n BsDropdownModule,\n FormsModule,\n A11yModule,\n DatapointsExportSelectorComponent,\n WorkspaceConfigComponent\n ],\n providers: [ChartEventsService, ChartAlarmsService]\n})\nexport class DatapointExplorerComponent {\n @ViewChild('chart') chart: ElementRef;\n config: DatapointsGraphWidgetConfig = { datapoints: [], alarmsEventsConfigs: [] };\n exportConfig: ExportConfig;\n alerts: DynamicComponentAlertAggregator | undefined;\n alarms: AlarmDetailsExtended[] = [];\n events: EventDetailsExtended[] = [];\n datapointsOutOfSync = new Map<DatapointsGraphKPIDetails, boolean>();\n contextAsset: IIdentified;\n formGroup: FormGroup;\n hasAtLeastOneDatapointActive = true;\n hasAtLeastOneAlarmActive = true;\n isMarkedAreaEnabled = false;\n alarmsOrEventsHaveNoMatchingDps = false;\n canAddReport = false;\n timeProps: {\n dateFrom: Date;\n dateTo: Date;\n interval?: Interval['id'];\n realtime?: boolean;\n aggregation?: aggregationType | null;\n };\n datapointSelectDefaultFormOptions: Partial<DatapointAttributesFormConfig> = {\n showRange: true,\n showChart: true\n };\n\n #destroyRef = inject(DestroyRef);\n\n private readonly dataExplorerService = inject(DataExplorerService);\n private readonly formBuilder = inject(FormBuilder);\n private readonly alertService = inject(AlertService);\n private readonly bsModalService = inject(BsModalService);\n private readonly permissions = inject(Permissions);\n private readonly contextDashboardService = inject(ContextDashboardService);\n private readonly activatedRoute = inject(ActivatedRoute);\n private readonly contextRouteService = inject(ContextRouteService);\n\n constructor() {\n this.formGroup = this.initForm();\n }\n\n ngOnInit(): void {\n this.contextAsset = this.initializeContextSourceId();\n this.checkForMatchingDatapoints();\n this.canAddReport = this.permissions.hasAnyRole([\n Permissions.ROLE_INVENTORY_CREATE,\n Permissions.ROLE_INVENTORY_ADMIN,\n Permissions.ROLE_MANAGED_OBJECT_ADMIN,\n Permissions.ROLE_MANAGED_OBJECT_CREATE\n ]);\n this.formGroup.valueChanges\n .pipe(takeUntilDestroyed(this.#destroyRef))\n .subscribe(configChange => {\n const { alarms, events, ...configValues } = configChange;\n this.config = {\n ...configValues,\n alarmsEventsConfigs: [...(alarms || []), ...(events || [])]\n };\n this.updateExportConfig();\n this.checkForMatchingDatapoints();\n });\n }\n\n onTimeContextChange(timeProps: TimeContextProps): void {\n const realtime = this.formGroup.controls.realtime.value;\n if (timeProps.realtime !== realtime) {\n this.formGroup.patchValue({ realtime: timeProps.realtime });\n }\n if (timeProps.realtime) {\n if (timeProps.currentDateContextInterval !== this.formGroup.value.interval) {\n this.formGroup.patchValue({ interval: timeProps.currentDateContextInterval });\n }\n return;\n }\n this.formGroup.patchValue({\n dateFrom: timeProps.currentDateContextFromDate,\n dateTo: timeProps.currentDateContextToDate,\n interval: timeProps.currentDateContextInterval,\n aggregation: timeProps.aggregation || null\n });\n }\n\n onConfigurationChange(config: DatapointsGraphWidgetConfig): void {\n if (config.dateFrom && config.dateTo) {\n this.timeProps = {\n dateFrom: new Date(config?.dateFrom),\n dateTo: new Date(config?.dateTo),\n interval: config?.interval,\n realtime: config?.realtime,\n aggregation: config?.realtime ? null : config?.aggregation\n };\n }\n this.alarms = config.alarmsEventsConfigs.filter(ae => ae.timelineType === 'ALARM');\n this.events = config.alarmsEventsConfigs.filter(ae => ae.timelineType === 'EVENT');\n this.formGroup.patchValue({ alarms: this.alarms, events: this.events, ...config });\n }\n\n onSliderZoom(timeProps: { dateFrom: Date; dateTo: Date; interval?: Interval['id'] }) {\n this.formGroup.patchValue(timeProps);\n this.timeProps = { ...timeProps, realtime: false };\n }\n\n updateTimeRangeOnRealtime(\n timeRange: Pick<DatapointsGraphWidgetConfig, 'dateFrom' | 'dateTo'>\n ): void {\n this.formGroup.patchValue(timeRange, { emitEvent: false });\n }\n\n createNewReportWithWidget(): void {\n const modal = this.bsModalService.show(CreateNewReportModalComponent, {\n ignoreBackdropClick: true,\n keyboard: false,\n class: 'modal-sm'\n });\n const content = modal.content as CreateNewReportModalComponent;\n content.result\n .then(async report => {\n const reportDashboard = await this.dataExplorerService.fetchReportDashboard(report.id);\n const widget = this.createWidgetConfig();\n reportDashboard.c8y_Dashboard.children = { [widget.id]: widget };\n await this.contextDashboardService.update(reportDashboard);\n this.alertService.success(gettext('Report and widget created.'));\n })\n .catch(e => {\n if (e) {\n this.alertService.danger(gettext('Failed to create report and widget.'));\n this.alertService.addServerFailure(e);\n }\n // else: modal was closed\n });\n }\n\n sendAsWidgetToReport(): void {\n const modal = this.bsModalService.show(SendAsWidgetToReportModal, {\n ignoreBackdropClick: true,\n keyboard: false,\n class: 'modal-sm'\n });\n const content = modal.content as SendAsWidgetToReportModal;\n content.result\n .then(async reports => {\n const selectedReports = Object.entries(reports).filter(([, value]) => value);\n const reportPromises = selectedReports.map(async ([reportId]) => {\n const reportDashboard = await this.dataExplorerService.fetchReportDashboard(reportId);\n const widget = this.createWidgetConfig();\n const children = reportDashboard.c8y_Dashboard.children || {};\n reportDashboard.c8y_Dashboard.children = { ...children, [widget.id]: widget };\n await this.contextDashboardService.update(reportDashboard);\n });\n\n await Promise.all(reportPromises);\n this.alertService.success(gettext('Widget created.'));\n })\n .catch(e => {\n if (e) {\n this.alertService.danger(gettext('Failed to create widget.'));\n this.alertService.addServerFailure(e);\n }\n // else: modal was closed\n });\n }\n\n updateAlarmsAndEvents(alarmsEventsConfigs: AlarmOrEventExtended[]): void {\n this.alarms = alarmsEventsConfigs.filter(this.isAlarm);\n this.events = alarmsEventsConfigs.filter(this.isEvent);\n this.hasAtLeastOneAlarmActive = this.hasActiveAlarms(this.alarms);\n }\n\n handleDatapointOutOfSync(dpOutOfSync: DatapointsGraphKPIDetails): void {\n const key = (dp: KPIDetails) => dp.__target?.id + dp.fragment + dp.series;\n const dpMatch = this.config.datapoints?.find(dp => key(dp) === key(dpOutOfSync));\n if (!dpMatch) {\n return;\n }\n this.datapointsOutOfSync.set(dpMatch, true);\n }\n\n private isAlarm(item: AlarmOrEventExtended): item is AlarmDetailsExtended {\n return item.timelineType === 'ALARM';\n }\n\n private isEvent(item: AlarmOrEventExtended): item is EventDetailsExtended {\n return item.timelineType === 'EVENT';\n }\n\n private hasActiveAlarms(alarms: AlarmDetailsExtended[]): boolean {\n return alarms.length > 0 && alarms.some(alarm => alarm.__active);\n }\n\n private checkForMatchingDatapoints(): void {\n const allMatch = this.config?.alarmsEventsConfigs?.every(ae =>\n this.formGroup.value.datapoints?.some(dp => dp.__target?.id === ae.__target?.id)\n );\n\n queueMicrotask(() => {\n this.alarmsOrEventsHaveNoMatchingDps = !allMatch;\n });\n }\n\n private updateExportConfig(): void {\n const datapointDetails = this.config.datapoints\n .filter(({ __active }) => __active)\n .map(({ __target, fragment, series }) => ({\n deviceName: __target.name,\n source: __target.id,\n valueFragmentSeries: series,\n valueFragmentType: fragment\n }));\n\n if (datapointDetails.length === 0) {\n this.exportConfig = null;\n } else {\n this.exportConfig = {\n aggregation: this.config.aggregation,\n dateFrom: new Date(this.config.dateFrom).toISOString(),\n dateTo: new Date(this.config.dateTo).toISOString(),\n datapointDetails: datapointDetails\n };\n }\n }\n\n private initializeContextSourceId(): IIdentified {\n const routeContext = this.contextRouteService.getContextData(this.activatedRoute);\n if (!routeContext) {\n return;\n }\n const { context, contextData } = routeContext;\n if ([ViewContext.Device, ViewContext.Group].includes(context)) {\n return contextData;\n }\n }\n\n private createWidgetConfig(): any {\n return {\n name: 'Data points graph 2',\n title: gettext('Data points graph 2'),\n id: String(Math.random()).substr(2),\n _width: 24,\n _height: 5,\n config: this.config\n };\n }\n\n private initForm() {\n return this.formBuilder.group({\n datapoints: [this.config.datapoints || []],\n alarms: [this.alarms || []],\n events: [this.events || []],\n dateFrom: [this.config.dateFrom || (null as Date)],\n dateTo: [this.config.dateFrom || (null as Date)],\n interval: [this.config.interval || 'hours'],\n aggregation: [this.config.aggregation || (null as aggregationType | null)],\n realtime: [this.config.realtime || false],\n displayMarkedLine: [true, []],\n displayMarkedPoint: [true, []],\n mergeMatchingDatapoints: [true, []],\n showLabelAndUnit: [true, []],\n showSlider: [true, []],\n displayDateSelection: [false, []],\n yAxisSplitLines: [false],\n xAxisSplitLines: [false]\n });\n }\n}\n","<c8y-title>{{ 'Data explorer' | translate }}</c8y-title>\n\n<c8y-time-context\n (contextChange)=\"onTimeContextChange($event)\"\n [changedDateContext]=\"timeProps\"\n></c8y-time-context>\n\n<c8y-action-bar-item [placement]=\"'left'\">\n <c8y-workspace-config\n [updatedConfig]=\"config\"\n (onConfigurationChange)=\"onConfigurationChange($event)\"\n ></c8y-workspace-config>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item placement=\"right\">\n <c8y-datapoints-export-selector [exportConfig]=\"exportConfig\"></c8y-datapoints-export-selector>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item\n [placement]=\"'more'\"\n [priority]=\"-2000\"\n>\n <button\n title=\"{{ 'Send as widget to report' | translate }}\"\n type=\"button\"\n data-cy=\"widgets-dashboard--copy-dashboard\"\n (click)=\"sendAsWidgetToReport()\"\n [disabled]=\"config?.datapoints?.length === 0 || !canAddReport\"\n >\n <i c8yIcon=\"c8y-reports\"></i>\n <span>{{ 'Send as widget to report' | translate }}</span>\n </button>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item\n [placement]=\"'more'\"\n [priority]=\"-2000\"\n>\n <button\n title=\"{{ 'Create a new report with widget' | translate }}\"\n type=\"button\"\n data-cy=\"widgets-dashboard--copy-dashboard\"\n (click)=\"createNewReportWithWidget()\"\n [disabled]=\"config?.datapoints?.length === 0 || !canAddReport\"\n >\n <i c8yIcon=\"c8y-reports\"></i>\n <span>{{ 'Create a new report with widget' | translate }}</span>\n </button>\n</c8y-action-bar-item>\n\n<div class=\"content-fullpage d-grid grid_col--auto-360 gap-24\">\n <div class=\"d-col gap-16\">\n <c8y-charts\n class=\"flex-grow data-point-explorer\"\n #chart\n [config]=\"config\"\n [alerts]=\"alerts\"\n (updateAlarmsAndEvents)=\"updateAlarmsAndEvents($event)\"\n (configChangeOnZoomOut)=\"onSliderZoom($event)\"\n (datapointOutOfSync)=\"handleDatapointOutOfSync($event)\"\n (timeRangeChangeOnRealtime)=\"updateTimeRangeOnRealtime($event)\"\n (isMarkedAreaEnabled)=\"isMarkedAreaEnabled = $event\"\n ></c8y-charts>\n <form\n class=\"m-l-48 m-r-48\"\n [formGroup]=\"formGroup\"\n >\n <div class=\"d-grid-md grid__col--4-4-4 gap-16\">\n <fieldset class=\"c8y-fieldset form-group-sm m-t-md-0 p-b-8\">\n <legend>{{ 'Axis' | translate }}</legend>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Y axis helper lines' | translate\"\n >\n <input\n name=\"yAxisSplitLines\"\n type=\"checkbox\"\n formControlName=\"yAxisSplitLines\"\n />\n <span></span>\n <span translate>Y-axis helper lines</span>\n </label>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'X axis helper lines' | translate\"\n >\n <input\n name=\"xAxisSplitLines\"\n type=\"checkbox\"\n formControlName=\"xAxisSplitLines\"\n />\n <span></span>\n <span translate>X-axis helper lines</span>\n </label>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Merge matching data points into single axis' | translate\"\n >\n <input\n name=\"mergeMatchingDatapoints\"\n type=\"checkbox\"\n formControlName=\"mergeMatchingDatapoints\"\n />\n <span></span>\n <span translate>Merge matching data points into single axis</span>\n </label>\n </fieldset>\n <fieldset class=\"c8y-fieldset form-group-sm m-t-md-0 p-b-8\">\n <legend>{{ 'Alarms & events' | translate }}</legend>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show vertical line when alarm occurs' | translate\"\n >\n <input\n name=\"displayMarkedLine\"\n type=\"checkbox\"\n formControlName=\"displayMarkedLine\"\n />\n <span></span>\n <span translate>Show vertical line on every occurrence</span>\n </label>\n\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show icon when alarm or event occurs' | translate\"\n >\n <input\n name=\"displayMarkedPoint\"\n type=\"checkbox\"\n formControlName=\"displayMarkedPoint\"\n />\n <span></span>\n <span>\n {{\n 'Show icon when triggered`When alarms and events occur the icon will be shown`'\n | translate\n }}\n </span>\n <button\n class=\"btn-dot m-l-8\"\n [attr.aria-label]=\"\n 'Some alarms or events have no matching data points. No icons will be shown for them.'\n | translate\n \"\n [tooltip]=\"\n 'Some alarms or events have no matching data points. No icons will be shown for them.'\n | translate\n \"\n container=\"body\"\n type=\"button\"\n *ngIf=\"alarmsOrEventsHaveNoMatchingDps\"\n (click)=\"$event.stopPropagation()\"\n [adaptivePosition]=\"false\"\n >\n <i\n class=\"text-info\"\n c8yIcon=\"info\"\n ></i>\n </button>\n </label>\n </fieldset>\n <fieldset class=\"c8y-fieldset form-group-sm m-t-md-0 p-b-8\">\n <legend>{{ 'Chart' | translate }}</legend>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show labels and units' | translate\"\n >\n <input\n name=\"showLabelAndUnit\"\n type=\"checkbox\"\n formControlName=\"showLabelAndUnit\"\n />\n <span></span>\n <span translate>Display labels and units on Y-axis</span>\n </label>\n <label\n class=\"c8y-checkbox\"\n [title]=\"'Show slider' | translate\"\n >\n <input\n name=\"showSlider\"\n type=\"checkbox\"\n formControlName=\"showSlider\"\n />\n <span></span>\n <span translate>Show slider</span>\n </label>\n </fieldset>\n </div>\n </form>\n </div>\n <div class=\"card inner-scroll bg-level-1\">\n <form\n class=\"bg-inherit\"\n [formGroup]=\"formGroup\"\n >\n <c8y-datapoint-selection-list\n class=\"bg-inherit separator-top d-block\"\n name=\"datapoints\"\n [minActiveCount]=\"0\"\n [defaultFormOptions]=\"datapointSelectDefaultFormOptions\"\n [config]=\"{ contextAsset: contextAsset }\"\n formControlName=\"datapoints\"\n [allowDragAndDrop]=\"true\"\n ></c8y-datapoint-selection-list>\n\n <c8y-alarm-event-selection-list\n class=\"bg-inherit\"\n name=\"alarms\"\n formControlName=\"alarms\"\n [timelineType]=\"'ALARM'\"\n [datapoints]=\"config.datapoints\"\n ></c8y-alarm-event-selection-list>\n\n <c8y-alarm-event-selection-list\n class=\"bg-inherit\"\n name=\"events\"\n formControlName=\"events\"\n [timelineType]=\"'EVENT'\"\n [datapoints]=\"config.datapoints\"\n ></c8y-alarm-event-selection-list>\n </form>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i4","i5","FormsModule"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@c8y/ngx-components","version":"1021.57.0","license":"Apache-2.0","author":"Cumulocity","description":"Angular modules for Cumulocity IoT applications","keywords":["Cumulocity","IoT","m2m","Angular","Components"],"peerDependencies":{"@angular/cdk":"^18.2.0","@angular/common":"^18.2.0","@angular/core":"^18.2.0","@angular/forms":"^18.2.0","@angular/platform-browser":"^18.2.0","@angular/router":"^18.2.0","@angular/upgrade":"^18.2.0","@c8y/bootstrap":"1021.57.0","@c8y/client":"1021.57.0","@novnc/novnc":"1.5.0","@xterm/addon-fit":"0.10.0","@xterm/xterm":"5.5.0","leaflet":"^1.7.1","rxjs":"^7.4.0"},"dependencies":{"@ngx-formly/core":"6.1.3","@ngx-translate/core":"15.0.0","@ngx-translate/http-loader":"8.0.0","@zip.js/zip.js":"2.7.52","angularx-qrcode":"18.0.1","chroma-js":"3.1.2","echarts":"5.5.1","file-saver":"2.0.5","libphonenumber-js":"1.11.9","lodash-es":"^4.0.0","marked":"14.1.2","monaco-editor":"^0.52.0","ngx-bootstrap":"18.0.0","ngx-echarts":"18.0.0","semver":"~7.6.0","three":"0.154.0","tslib":"^2.6.3","unique-names-generator":"^4.7.1"},"module":"fesm2022/c8y-ngx-components.mjs","typings":"index.d.ts","exports":{"./locales/de.po":"./locales/de.po","./locales/en.po":"./locales/en.po","./locales/es.po":"./locales/es.po","./locales/fr.po":"./locales/fr.po","./locales/ja_JP.po":"./locales/ja_JP.po","./locales/ko.po":"./locales/ko.po","./locales/nl.po":"./locales/nl.po","./locales/pt_BR.po":"./locales/pt_BR.po","./locales/zh_CN.po":"./locales/zh_CN.po","./locales/zh_TW.po":"./locales/zh_TW.po","./locales/pl.po":"./locales/pl.po","./locales/en_US.po":"./locales/en_US.po","./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2022":"./esm2022/c8y-ngx-components.mjs","esm":"./esm2022/c8y-ngx-components.mjs","default":"./fesm2022/c8y-ngx-components.mjs"},"./actility-device-registration":{"types":"./actility-device-registration/index.d.ts","esm2022":"./esm2022/actility-device-registration/c8y-ngx-components-actility-device-registration.mjs","esm":"./esm2022/actility-device-registration/c8y-ngx-components-actility-device-registration.mjs","default":"./fesm2022/c8y-ngx-components-actility-device-registration.mjs"},"./advanced-software-management":{"types":"./advanced-software-management/index.d.ts","esm2022":"./esm2022/advanced-software-management/c8y-ngx-components-advanced-software-management.mjs","esm":"./esm2022/advanced-software-management/c8y-ngx-components-advanced-software-management.mjs","default":"./fesm2022/c8y-ngx-components-advanced-software-management.mjs"},"./alarm-event-selector":{"types":"./alarm-event-selector/index.d.ts","esm2022":"./esm2022/alarm-event-selector/c8y-ngx-components-alarm-event-selector.mjs","esm":"./esm2022/alarm-event-selector/c8y-ngx-components-alarm-event-selector.mjs","default":"./fesm2022/c8y-ngx-components-alarm-event-selector.mjs"},"./alarms":{"types":"./alarms/index.d.ts","esm2022":"./esm2022/alarms/c8y-ngx-components-alarms.mjs","esm":"./esm2022/alarms/c8y-ngx-components-alarms.mjs","default":"./fesm2022/c8y-ngx-components-alarms.mjs"},"./api":{"types":"./api/index.d.ts","esm2022":"./esm2022/api/c8y-ngx-components-api.mjs","esm":"./esm2022/api/c8y-ngx-components-api.mjs","default":"./fesm2022/c8y-ngx-components-api.mjs"},"./app-logs":{"types":"./app-logs/index.d.ts","esm2022":"./esm2022/app-logs/c8y-ngx-components-app-logs.mjs","esm":"./esm2022/app-logs/c8y-ngx-components-app-logs.mjs","default":"./fesm2022/c8y-ngx-components-app-logs.mjs"},"./assets-navigator":{"types":"./assets-navigator/index.d.ts","esm2022":"./esm2022/assets-navigator/c8y-ngx-components-assets-navigator.mjs","esm":"./esm2022/assets-navigator/c8y-ngx-components-assets-navigator.mjs","default":"./fesm2022/c8y-ngx-components-assets-navigator.mjs"},"./auth-configuration":{"types":"./auth-configuration/index.d.ts","esm2022":"./esm2022/auth-configuration/c8y-ngx-components-auth-configuration.mjs","esm":"./esm2022/auth-configuration/c8y-ngx-components-auth-configuration.mjs","default":"./fesm2022/c8y-ngx-components-auth-configuration.mjs"},"./binary-file-download":{"types":"./binary-file-download/index.d.ts","esm2022":"./esm2022/binary-file-download/c8y-ngx-components-binary-file-download.mjs","esm":"./esm2022/binary-file-download/c8y-ngx-components-binary-file-download.mjs","default":"./fesm2022/c8y-ngx-components-binary-file-download.mjs"},"./bookmarks":{"types":"./bookmarks/index.d.ts","esm2022":"./esm2022/bookmarks/c8y-ngx-components-bookmarks.mjs","esm":"./esm2022/bookmarks/c8y-ngx-components-bookmarks.mjs","default":"./fesm2022/c8y-ngx-components-bookmarks.mjs"},"./child-devices":{"types":"./child-devices/index.d.ts","esm2022":"./esm2022/child-devices/c8y-ngx-components-child-devices.mjs","esm":"./esm2022/child-devices/c8y-ngx-components-child-devices.mjs","default":"./fesm2022/c8y-ngx-components-child-devices.mjs"},"./cockpit-config":{"types":"./cockpit-config/index.d.ts","esm2022":"./esm2022/cockpit-config/c8y-ngx-components-cockpit-config.mjs","esm":"./esm2022/cockpit-config/c8y-ngx-components-cockpit-config.mjs","default":"./fesm2022/c8y-ngx-components-cockpit-config.mjs"},"./connectivity":{"types":"./connectivity/index.d.ts","esm2022":"./esm2022/connectivity/c8y-ngx-components-connectivity.mjs","esm":"./esm2022/connectivity/c8y-ngx-components-connectivity.mjs","default":"./fesm2022/c8y-ngx-components-connectivity.mjs"},"./context-dashboard":{"types":"./context-dashboard/index.d.ts","esm2022":"./esm2022/context-dashboard/c8y-ngx-components-context-dashboard.mjs","esm":"./esm2022/context-dashboard/c8y-ngx-components-context-dashboard.mjs","default":"./fesm2022/c8y-ngx-components-context-dashboard.mjs"},"./data-broker":{"types":"./data-broker/index.d.ts","esm2022":"./esm2022/data-broker/c8y-ngx-components-data-broker.mjs","esm":"./esm2022/data-broker/c8y-ngx-components-data-broker.mjs","default":"./fesm2022/c8y-ngx-components-data-broker.mjs"},"./data-grid-columns":{"types":"./data-grid-columns/index.d.ts","esm2022":"./esm2022/data-grid-columns/c8y-ngx-components-data-grid-columns.mjs","esm":"./esm2022/data-grid-columns/c8y-ngx-components-data-grid-columns.mjs","default":"./fesm2022/c8y-ngx-components-data-grid-columns.mjs"},"./datapoint-explorer":{"types":"./datapoint-explorer/index.d.ts","esm2022":"./esm2022/datapoint-explorer/c8y-ngx-components-datapoint-explorer.mjs","esm":"./esm2022/datapoint-explorer/c8y-ngx-components-datapoint-explorer.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-explorer.mjs"},"./datapoint-library":{"types":"./datapoint-library/index.d.ts","esm2022":"./esm2022/datapoint-library/c8y-ngx-components-datapoint-library.mjs","esm":"./esm2022/datapoint-library/c8y-ngx-components-datapoint-library.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library.mjs"},"./datapoint-selector":{"types":"./datapoint-selector/index.d.ts","esm2022":"./esm2022/datapoint-selector/c8y-ngx-components-datapoint-selector.mjs","esm":"./esm2022/datapoint-selector/c8y-ngx-components-datapoint-selector.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-selector.mjs"},"./datapoints-export-selector":{"types":"./datapoints-export-selector/index.d.ts","esm2022":"./esm2022/datapoints-export-selector/c8y-ngx-components-datapoints-export-selector.mjs","esm":"./esm2022/datapoints-export-selector/c8y-ngx-components-datapoints-export-selector.mjs","default":"./fesm2022/c8y-ngx-components-datapoints-export-selector.mjs"},"./default-subscriptions":{"types":"./default-subscriptions/index.d.ts","esm2022":"./esm2022/default-subscriptions/c8y-ngx-components-default-subscriptions.mjs","esm":"./esm2022/default-subscriptions/c8y-ngx-components-default-subscriptions.mjs","default":"./fesm2022/c8y-ngx-components-default-subscriptions.mjs"},"./device-grid":{"types":"./device-grid/index.d.ts","esm2022":"./esm2022/device-grid/c8y-ngx-components-device-grid.mjs","esm":"./esm2022/device-grid/c8y-ngx-components-device-grid.mjs","default":"./fesm2022/c8y-ngx-components-device-grid.mjs"},"./device-list":{"types":"./device-list/index.d.ts","esm2022":"./esm2022/device-list/c8y-ngx-components-device-list.mjs","esm":"./esm2022/device-list/c8y-ngx-components-device-list.mjs","default":"./fesm2022/c8y-ngx-components-device-list.mjs"},"./device-map":{"types":"./device-map/index.d.ts","esm2022":"./esm2022/device-map/c8y-ngx-components-device-map.mjs","esm":"./esm2022/device-map/c8y-ngx-components-device-map.mjs","default":"./fesm2022/c8y-ngx-components-device-map.mjs"},"./device-profile":{"types":"./device-profile/index.d.ts","esm2022":"./esm2022/device-profile/c8y-ngx-components-device-profile.mjs","esm":"./esm2022/device-profile/c8y-ngx-components-device-profile.mjs","default":"./fesm2022/c8y-ngx-components-device-profile.mjs"},"./device-protocol-object-mappings":{"types":"./device-protocol-object-mappings/index.d.ts","esm2022":"./esm2022/device-protocol-object-mappings/c8y-ngx-components-device-protocol-object-mappings.mjs","esm":"./esm2022/device-protocol-object-mappings/c8y-ngx-components-device-protocol-object-mappings.mjs","default":"./fesm2022/c8y-ngx-components-device-protocol-object-mappings.mjs"},"./device-protocols":{"types":"./device-protocols/index.d.ts","esm2022":"./esm2022/device-protocols/c8y-ngx-components-device-protocols.mjs","esm":"./esm2022/device-protocols/c8y-ngx-components-device-protocols.mjs","default":"./fesm2022/c8y-ngx-components-device-protocols.mjs"},"./device-provisioned-certificates":{"types":"./device-provisioned-certificates/index.d.ts","esm2022":"./esm2022/device-provisioned-certificates/c8y-ngx-components-device-provisioned-certificates.mjs","esm":"./esm2022/device-provisioned-certificates/c8y-ngx-components-device-provisioned-certificates.mjs","default":"./fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs"},"./device-shell":{"types":"./device-shell/index.d.ts","esm2022":"./esm2022/device-shell/c8y-ngx-components-device-shell.mjs","esm":"./esm2022/device-shell/c8y-ngx-components-device-shell.mjs","default":"./fesm2022/c8y-ngx-components-device-shell.mjs"},"./diagnostics":{"types":"./diagnostics/index.d.ts","esm2022":"./esm2022/diagnostics/c8y-ngx-components-diagnostics.mjs","esm":"./esm2022/diagnostics/c8y-ngx-components-diagnostics.mjs","default":"./fesm2022/c8y-ngx-components-diagnostics.mjs"},"./echart":{"types":"./echart/index.d.ts","esm2022":"./esm2022/echart/c8y-ngx-components-echart.mjs","esm":"./esm2022/echart/c8y-ngx-components-echart.mjs","default":"./fesm2022/c8y-ngx-components-echart.mjs"},"./ecosystem":{"types":"./ecosystem/index.d.ts","esm2022":"./esm2022/ecosystem/c8y-ngx-components-ecosystem.mjs","esm":"./esm2022/ecosystem/c8y-ngx-components-ecosystem.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem.mjs"},"./editor":{"types":"./editor/index.d.ts","esm2022":"./esm2022/editor/c8y-ngx-components-editor.mjs","esm":"./esm2022/editor/c8y-ngx-components-editor.mjs","default":"./fesm2022/c8y-ngx-components-editor.mjs"},"./file-preview":{"types":"./file-preview/index.d.ts","esm2022":"./esm2022/file-preview/c8y-ngx-components-file-preview.mjs","esm":"./esm2022/file-preview/c8y-ngx-components-file-preview.mjs","default":"./fesm2022/c8y-ngx-components-file-preview.mjs"},"./files-repository":{"types":"./files-repository/index.d.ts","esm2022":"./esm2022/files-repository/c8y-ngx-components-files-repository.mjs","esm":"./esm2022/files-repository/c8y-ngx-components-files-repository.mjs","default":"./fesm2022/c8y-ngx-components-files-repository.mjs"},"./gettext":{"types":"./gettext/index.d.ts","esm2022":"./esm2022/gettext/c8y-ngx-components-gettext.mjs","esm":"./esm2022/gettext/c8y-ngx-components-gettext.mjs","default":"./fesm2022/c8y-ngx-components-gettext.mjs"},"./icon-selector":{"types":"./icon-selector/index.d.ts","esm2022":"./esm2022/icon-selector/c8y-ngx-components-icon-selector.mjs","esm":"./esm2022/icon-selector/c8y-ngx-components-icon-selector.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector.mjs"},"./interval-picker":{"types":"./interval-picker/index.d.ts","esm2022":"./esm2022/interval-picker/c8y-ngx-components-interval-picker.mjs","esm":"./esm2022/interval-picker/c8y-ngx-components-interval-picker.mjs","default":"./fesm2022/c8y-ngx-components-interval-picker.mjs"},"./location":{"types":"./location/index.d.ts","esm2022":"./esm2022/location/c8y-ngx-components-location.mjs","esm":"./esm2022/location/c8y-ngx-components-location.mjs","default":"./fesm2022/c8y-ngx-components-location.mjs"},"./loriot-device-registration":{"types":"./loriot-device-registration/index.d.ts","esm2022":"./esm2022/loriot-device-registration/c8y-ngx-components-loriot-device-registration.mjs","esm":"./esm2022/loriot-device-registration/c8y-ngx-components-loriot-device-registration.mjs","default":"./fesm2022/c8y-ngx-components-loriot-device-registration.mjs"},"./map":{"types":"./map/index.d.ts","esm2022":"./esm2022/map/c8y-ngx-components-map.mjs","esm":"./esm2022/map/c8y-ngx-components-map.mjs","default":"./fesm2022/c8y-ngx-components-map.mjs"},"./operations":{"types":"./operations/index.d.ts","esm2022":"./esm2022/operations/c8y-ngx-components-operations.mjs","esm":"./esm2022/operations/c8y-ngx-components-operations.mjs","default":"./fesm2022/c8y-ngx-components-operations.mjs"},"./pending-mo-request":{"types":"./pending-mo-request/index.d.ts","esm2022":"./esm2022/pending-mo-request/c8y-ngx-components-pending-mo-request.mjs","esm":"./esm2022/pending-mo-request/c8y-ngx-components-pending-mo-request.mjs","default":"./fesm2022/c8y-ngx-components-pending-mo-request.mjs"},"./platform-configuration":{"types":"./platform-configuration/index.d.ts","esm2022":"./esm2022/platform-configuration/c8y-ngx-components-platform-configuration.mjs","esm":"./esm2022/platform-configuration/c8y-ngx-components-platform-configuration.mjs","default":"./fesm2022/c8y-ngx-components-platform-configuration.mjs"},"./polyfills":{"types":"./polyfills/index.d.ts","esm2022":"./esm2022/polyfills/c8y-ngx-components-polyfills.mjs","esm":"./esm2022/polyfills/c8y-ngx-components-polyfills.mjs","default":"./fesm2022/c8y-ngx-components-polyfills.mjs"},"./protocol-lpwan":{"types":"./protocol-lpwan/index.d.ts","esm2022":"./esm2022/protocol-lpwan/c8y-ngx-components-protocol-lpwan.mjs","esm":"./esm2022/protocol-lpwan/c8y-ngx-components-protocol-lpwan.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lpwan.mjs"},"./protocol-lwm2m":{"types":"./protocol-lwm2m/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/c8y-ngx-components-protocol-lwm2m.mjs","esm":"./esm2022/protocol-lwm2m/c8y-ngx-components-protocol-lwm2m.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m.mjs"},"./protocol-opcua":{"types":"./protocol-opcua/index.d.ts","esm2022":"./esm2022/protocol-opcua/c8y-ngx-components-protocol-opcua.mjs","esm":"./esm2022/protocol-opcua/c8y-ngx-components-protocol-opcua.mjs","default":"./fesm2022/c8y-ngx-components-protocol-opcua.mjs"},"./register-device":{"types":"./register-device/index.d.ts","esm2022":"./esm2022/register-device/c8y-ngx-components-register-device.mjs","esm":"./esm2022/register-device/c8y-ngx-components-register-device.mjs","default":"./fesm2022/c8y-ngx-components-register-device.mjs"},"./replace-device":{"types":"./replace-device/index.d.ts","esm2022":"./esm2022/replace-device/c8y-ngx-components-replace-device.mjs","esm":"./esm2022/replace-device/c8y-ngx-components-replace-device.mjs","default":"./fesm2022/c8y-ngx-components-replace-device.mjs"},"./report-dashboard":{"types":"./report-dashboard/index.d.ts","esm2022":"./esm2022/report-dashboard/c8y-ngx-components-report-dashboard.mjs","esm":"./esm2022/report-dashboard/c8y-ngx-components-report-dashboard.mjs","default":"./fesm2022/c8y-ngx-components-report-dashboard.mjs"},"./reports":{"types":"./reports/index.d.ts","esm2022":"./esm2022/reports/c8y-ngx-components-reports.mjs","esm":"./esm2022/reports/c8y-ngx-components-reports.mjs","default":"./fesm2022/c8y-ngx-components-reports.mjs"},"./repository":{"types":"./repository/index.d.ts","esm2022":"./esm2022/repository/c8y-ngx-components-repository.mjs","esm":"./esm2022/repository/c8y-ngx-components-repository.mjs","default":"./fesm2022/c8y-ngx-components-repository.mjs"},"./search":{"types":"./search/index.d.ts","esm2022":"./esm2022/search/c8y-ngx-components-search.mjs","esm":"./esm2022/search/c8y-ngx-components-search.mjs","default":"./fesm2022/c8y-ngx-components-search.mjs"},"./sensor-phone":{"types":"./sensor-phone/index.d.ts","esm2022":"./esm2022/sensor-phone/c8y-ngx-components-sensor-phone.mjs","esm":"./esm2022/sensor-phone/c8y-ngx-components-sensor-phone.mjs","default":"./fesm2022/c8y-ngx-components-sensor-phone.mjs"},"./services":{"types":"./services/index.d.ts","esm2022":"./esm2022/services/c8y-ngx-components-services.mjs","esm":"./esm2022/services/c8y-ngx-components-services.mjs","default":"./fesm2022/c8y-ngx-components-services.mjs"},"./sigfox-device-registration":{"types":"./sigfox-device-registration/index.d.ts","esm2022":"./esm2022/sigfox-device-registration/c8y-ngx-components-sigfox-device-registration.mjs","esm":"./esm2022/sigfox-device-registration/c8y-ngx-components-sigfox-device-registration.mjs","default":"./fesm2022/c8y-ngx-components-sigfox-device-registration.mjs"},"./sms-gateway":{"types":"./sms-gateway/index.d.ts","esm2022":"./esm2022/sms-gateway/c8y-ngx-components-sms-gateway.mjs","esm":"./esm2022/sms-gateway/c8y-ngx-components-sms-gateway.mjs","default":"./fesm2022/c8y-ngx-components-sms-gateway.mjs"},"./static-assets":{"types":"./static-assets/index.d.ts","esm2022":"./esm2022/static-assets/c8y-ngx-components-static-assets.mjs","esm":"./esm2022/static-assets/c8y-ngx-components-static-assets.mjs","default":"./fesm2022/c8y-ngx-components-static-assets.mjs"},"./sub-assets":{"types":"./sub-assets/index.d.ts","esm2022":"./esm2022/sub-assets/c8y-ngx-components-sub-assets.mjs","esm":"./esm2022/sub-assets/c8y-ngx-components-sub-assets.mjs","default":"./fesm2022/c8y-ngx-components-sub-assets.mjs"},"./tenants":{"types":"./tenants/index.d.ts","esm2022":"./esm2022/tenants/c8y-ngx-components-tenants.mjs","esm":"./esm2022/tenants/c8y-ngx-components-tenants.mjs","default":"./fesm2022/c8y-ngx-components-tenants.mjs"},"./time-context":{"types":"./time-context/index.d.ts","esm2022":"./esm2022/time-context/c8y-ngx-components-time-context.mjs","esm":"./esm2022/time-context/c8y-ngx-components-time-context.mjs","default":"./fesm2022/c8y-ngx-components-time-context.mjs"},"./tracking":{"types":"./tracking/index.d.ts","esm2022":"./esm2022/tracking/c8y-ngx-components-tracking.mjs","esm":"./esm2022/tracking/c8y-ngx-components-tracking.mjs","default":"./fesm2022/c8y-ngx-components-tracking.mjs"},"./translation-editor":{"types":"./translation-editor/index.d.ts","esm2022":"./esm2022/translation-editor/c8y-ngx-components-translation-editor.mjs","esm":"./esm2022/translation-editor/c8y-ngx-components-translation-editor.mjs","default":"./fesm2022/c8y-ngx-components-translation-editor.mjs"},"./trusted-certificates":{"types":"./trusted-certificates/index.d.ts","esm2022":"./esm2022/trusted-certificates/c8y-ngx-components-trusted-certificates.mjs","esm":"./esm2022/trusted-certificates/c8y-ngx-components-trusted-certificates.mjs","default":"./fesm2022/c8y-ngx-components-trusted-certificates.mjs"},"./upgrade":{"types":"./upgrade/index.d.ts","esm2022":"./esm2022/upgrade/c8y-ngx-components-upgrade.mjs","esm":"./esm2022/upgrade/c8y-ngx-components-upgrade.mjs","default":"./fesm2022/c8y-ngx-components-upgrade.mjs"},"./user-roles":{"types":"./user-roles/index.d.ts","esm2022":"./esm2022/user-roles/c8y-ngx-components-user-roles.mjs","esm":"./esm2022/user-roles/c8y-ngx-components-user-roles.mjs","default":"./fesm2022/c8y-ngx-components-user-roles.mjs"},"./widgets":{"types":"./widgets/index.d.ts","esm2022":"./esm2022/widgets/c8y-ngx-components-widgets.mjs","esm":"./esm2022/widgets/c8y-ngx-components-widgets.mjs","default":"./fesm2022/c8y-ngx-components-widgets.mjs"},"./alarms/cockpit":{"types":"./alarms/cockpit/index.d.ts","esm2022":"./esm2022/alarms/cockpit/c8y-ngx-components-alarms-cockpit.mjs","esm":"./esm2022/alarms/cockpit/c8y-ngx-components-alarms-cockpit.mjs","default":"./fesm2022/c8y-ngx-components-alarms-cockpit.mjs"},"./alarms/devicemanagement":{"types":"./alarms/devicemanagement/index.d.ts","esm2022":"./esm2022/alarms/devicemanagement/c8y-ngx-components-alarms-devicemanagement.mjs","esm":"./esm2022/alarms/devicemanagement/c8y-ngx-components-alarms-devicemanagement.mjs","default":"./fesm2022/c8y-ngx-components-alarms-devicemanagement.mjs"},"./branding/base-branding":{"types":"./branding/base-branding/index.d.ts","esm2022":"./esm2022/branding/base-branding/c8y-ngx-components-branding-base-branding.mjs","esm":"./esm2022/branding/base-branding/c8y-ngx-components-branding-base-branding.mjs","default":"./fesm2022/c8y-ngx-components-branding-base-branding.mjs"},"./branding/dark-theme":{"types":"./branding/dark-theme/index.d.ts","esm2022":"./esm2022/branding/dark-theme/c8y-ngx-components-branding-dark-theme.mjs","esm":"./esm2022/branding/dark-theme/c8y-ngx-components-branding-dark-theme.mjs","default":"./fesm2022/c8y-ngx-components-branding-dark-theme.mjs"},"./branding/extra-css-branding-editor":{"types":"./branding/extra-css-branding-editor/index.d.ts","esm2022":"./esm2022/branding/extra-css-branding-editor/c8y-ngx-components-branding-extra-css-branding-editor.mjs","esm":"./esm2022/branding/extra-css-branding-editor/c8y-ngx-components-branding-extra-css-branding-editor.mjs","default":"./fesm2022/c8y-ngx-components-branding-extra-css-branding-editor.mjs"},"./branding/plain-branding-editor":{"types":"./branding/plain-branding-editor/index.d.ts","esm2022":"./esm2022/branding/plain-branding-editor/c8y-ngx-components-branding-plain-branding-editor.mjs","esm":"./esm2022/branding/plain-branding-editor/c8y-ngx-components-branding-plain-branding-editor.mjs","default":"./fesm2022/c8y-ngx-components-branding-plain-branding-editor.mjs"},"./branding/shared":{"types":"./branding/shared/index.d.ts","esm2022":"./esm2022/branding/shared/c8y-ngx-components-branding-shared.mjs","esm":"./esm2022/branding/shared/c8y-ngx-components-branding-shared.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared.mjs"},"./data-grid-columns/asset-type":{"types":"./data-grid-columns/asset-type/index.d.ts","esm2022":"./esm2022/data-grid-columns/asset-type/c8y-ngx-components-data-grid-columns-asset-type.mjs","esm":"./esm2022/data-grid-columns/asset-type/c8y-ngx-components-data-grid-columns-asset-type.mjs","default":"./fesm2022/c8y-ngx-components-data-grid-columns-asset-type.mjs"},"./datapoint-explorer/view":{"types":"./datapoint-explorer/view/index.d.ts","esm2022":"./esm2022/datapoint-explorer/view/c8y-ngx-components-datapoint-explorer-view.mjs","esm":"./esm2022/datapoint-explorer/view/c8y-ngx-components-datapoint-explorer-view.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs"},"./datapoint-library/details":{"types":"./datapoint-library/details/index.d.ts","esm2022":"./esm2022/datapoint-library/details/c8y-ngx-components-datapoint-library-details.mjs","esm":"./esm2022/datapoint-library/details/c8y-ngx-components-datapoint-library-details.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-details.mjs"},"./datapoint-library/list":{"types":"./datapoint-library/list/index.d.ts","esm2022":"./esm2022/datapoint-library/list/c8y-ngx-components-datapoint-library-list.mjs","esm":"./esm2022/datapoint-library/list/c8y-ngx-components-datapoint-library-list.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-list.mjs"},"./datapoint-library/model":{"types":"./datapoint-library/model/index.d.ts","esm2022":"./esm2022/datapoint-library/model/c8y-ngx-components-datapoint-library-model.mjs","esm":"./esm2022/datapoint-library/model/c8y-ngx-components-datapoint-library-model.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-model.mjs"},"./datapoint-library/services":{"types":"./datapoint-library/services/index.d.ts","esm2022":"./esm2022/datapoint-library/services/c8y-ngx-components-datapoint-library-services.mjs","esm":"./esm2022/datapoint-library/services/c8y-ngx-components-datapoint-library-services.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-services.mjs"},"./echart/models":{"types":"./echart/models/index.d.ts","esm2022":"./esm2022/echart/models/c8y-ngx-components-echart-models.mjs","esm":"./esm2022/echart/models/c8y-ngx-components-echart-models.mjs","default":"./fesm2022/c8y-ngx-components-echart-models.mjs"},"./ecosystem/application-plugins":{"types":"./ecosystem/application-plugins/index.d.ts","esm2022":"./esm2022/ecosystem/application-plugins/c8y-ngx-components-ecosystem-application-plugins.mjs","esm":"./esm2022/ecosystem/application-plugins/c8y-ngx-components-ecosystem-application-plugins.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs"},"./ecosystem/archived-confirm":{"types":"./ecosystem/archived-confirm/index.d.ts","esm2022":"./esm2022/ecosystem/archived-confirm/c8y-ngx-components-ecosystem-archived-confirm.mjs","esm":"./esm2022/ecosystem/archived-confirm/c8y-ngx-components-ecosystem-archived-confirm.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs"},"./ecosystem/license-confirm":{"types":"./ecosystem/license-confirm/index.d.ts","esm2022":"./esm2022/ecosystem/license-confirm/c8y-ngx-components-ecosystem-license-confirm.mjs","esm":"./esm2022/ecosystem/license-confirm/c8y-ngx-components-ecosystem-license-confirm.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs"},"./ecosystem/plugin-setup-stepper":{"types":"./ecosystem/plugin-setup-stepper/index.d.ts","esm2022":"./esm2022/ecosystem/plugin-setup-stepper/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","esm":"./esm2022/ecosystem/plugin-setup-stepper/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs"},"./ecosystem/shared":{"types":"./ecosystem/shared/index.d.ts","esm2022":"./esm2022/ecosystem/shared/c8y-ngx-components-ecosystem-shared.mjs","esm":"./esm2022/ecosystem/shared/c8y-ngx-components-ecosystem-shared.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-shared.mjs"},"./icon-selector/icons":{"types":"./icon-selector/icons/index.d.ts","esm2022":"./esm2022/icon-selector/icons/c8y-ngx-components-icon-selector-icons.mjs","esm":"./esm2022/icon-selector/icons/c8y-ngx-components-icon-selector-icons.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons.mjs"},"./icon-selector/model":{"types":"./icon-selector/model/index.d.ts","esm2022":"./esm2022/icon-selector/model/c8y-ngx-components-icon-selector-model.mjs","esm":"./esm2022/icon-selector/model/c8y-ngx-components-icon-selector-model.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-model.mjs"},"./lazy/three":{"types":"./lazy/three/index.d.ts","esm2022":"./esm2022/lazy/three/c8y-ngx-components-lazy-three.mjs","esm":"./esm2022/lazy/three/c8y-ngx-components-lazy-three.mjs","default":"./fesm2022/c8y-ngx-components-lazy-three.mjs"},"./lazy/three-orbit-controls":{"types":"./lazy/three-orbit-controls/index.d.ts","esm2022":"./esm2022/lazy/three-orbit-controls/c8y-ngx-components-lazy-three-orbit-controls.mjs","esm":"./esm2022/lazy/three-orbit-controls/c8y-ngx-components-lazy-three-orbit-controls.mjs","default":"./fesm2022/c8y-ngx-components-lazy-three-orbit-controls.mjs"},"./operations/bulk-operation-from-single":{"types":"./operations/bulk-operation-from-single/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-from-single/c8y-ngx-components-operations-bulk-operation-from-single.mjs","esm":"./esm2022/operations/bulk-operation-from-single/c8y-ngx-components-operations-bulk-operation-from-single.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-from-single.mjs"},"./operations/bulk-operation-list-item":{"types":"./operations/bulk-operation-list-item/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-list-item/c8y-ngx-components-operations-bulk-operation-list-item.mjs","esm":"./esm2022/operations/bulk-operation-list-item/c8y-ngx-components-operations-bulk-operation-list-item.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs"},"./operations/bulk-operation-modal-details":{"types":"./operations/bulk-operation-modal-details/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-modal-details/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","esm":"./esm2022/operations/bulk-operation-modal-details/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-modal-details.mjs"},"./operations/bulk-operation-scheduler":{"types":"./operations/bulk-operation-scheduler/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-scheduler/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","esm":"./esm2022/operations/bulk-operation-scheduler/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs"},"./operations/bulk-operation-stepper":{"types":"./operations/bulk-operation-stepper/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-stepper/c8y-ngx-components-operations-bulk-operation-stepper.mjs","esm":"./esm2022/operations/bulk-operation-stepper/c8y-ngx-components-operations-bulk-operation-stepper.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs"},"./operations/bulk-operations-service":{"types":"./operations/bulk-operations-service/index.d.ts","esm2022":"./esm2022/operations/bulk-operations-service/c8y-ngx-components-operations-bulk-operations-service.mjs","esm":"./esm2022/operations/bulk-operations-service/c8y-ngx-components-operations-bulk-operations-service.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operations-service.mjs"},"./operations/bulk-operations-list":{"types":"./operations/bulk-operations-list/index.d.ts","esm2022":"./esm2022/operations/bulk-operations-list/c8y-ngx-components-operations-bulk-operations-list.mjs","esm":"./esm2022/operations/bulk-operations-list/c8y-ngx-components-operations-bulk-operations-list.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operations-list.mjs"},"./operations/bulk-operations-stepper-container":{"types":"./operations/bulk-operations-stepper-container/index.d.ts","esm2022":"./esm2022/operations/bulk-operations-stepper-container/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","esm":"./esm2022/operations/bulk-operations-stepper-container/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs"},"./operations/bulk-single-operations-list":{"types":"./operations/bulk-single-operations-list/index.d.ts","esm2022":"./esm2022/operations/bulk-single-operations-list/c8y-ngx-components-operations-bulk-single-operations-list.mjs","esm":"./esm2022/operations/bulk-single-operations-list/c8y-ngx-components-operations-bulk-single-operations-list.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-single-operations-list.mjs"},"./operations/create-bulk-operation-details":{"types":"./operations/create-bulk-operation-details/index.d.ts","esm2022":"./esm2022/operations/create-bulk-operation-details/c8y-ngx-components-operations-create-bulk-operation-details.mjs","esm":"./esm2022/operations/create-bulk-operation-details/c8y-ngx-components-operations-create-bulk-operation-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs"},"./operations/device-selector":{"types":"./operations/device-selector/index.d.ts","esm2022":"./esm2022/operations/device-selector/c8y-ngx-components-operations-device-selector.mjs","esm":"./esm2022/operations/device-selector/c8y-ngx-components-operations-device-selector.mjs","default":"./fesm2022/c8y-ngx-components-operations-device-selector.mjs"},"./operations/operation-details":{"types":"./operations/operation-details/index.d.ts","esm2022":"./esm2022/operations/operation-details/c8y-ngx-components-operations-operation-details.mjs","esm":"./esm2022/operations/operation-details/c8y-ngx-components-operations-operation-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-operation-details.mjs"},"./operations/operation-summary":{"types":"./operations/operation-summary/index.d.ts","esm2022":"./esm2022/operations/operation-summary/c8y-ngx-components-operations-operation-summary.mjs","esm":"./esm2022/operations/operation-summary/c8y-ngx-components-operations-operation-summary.mjs","default":"./fesm2022/c8y-ngx-components-operations-operation-summary.mjs"},"./operations/operations-list":{"types":"./operations/operations-list/index.d.ts","esm2022":"./esm2022/operations/operations-list/c8y-ngx-components-operations-operations-list.mjs","esm":"./esm2022/operations/operations-list/c8y-ngx-components-operations-operations-list.mjs","default":"./fesm2022/c8y-ngx-components-operations-operations-list.mjs"},"./operations/operations-list-item-details":{"types":"./operations/operations-list-item-details/index.d.ts","esm2022":"./esm2022/operations/operations-list-item-details/c8y-ngx-components-operations-operations-list-item-details.mjs","esm":"./esm2022/operations/operations-list-item-details/c8y-ngx-components-operations-operations-list-item-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs"},"./operations/operations-timeline":{"types":"./operations/operations-timeline/index.d.ts","esm2022":"./esm2022/operations/operations-timeline/c8y-ngx-components-operations-operations-timeline.mjs","esm":"./esm2022/operations/operations-timeline/c8y-ngx-components-operations-operations-timeline.mjs","default":"./fesm2022/c8y-ngx-components-operations-operations-timeline.mjs"},"./operations/product-experience":{"types":"./operations/product-experience/index.d.ts","esm2022":"./esm2022/operations/product-experience/c8y-ngx-components-operations-product-experience.mjs","esm":"./esm2022/operations/product-experience/c8y-ngx-components-operations-product-experience.mjs","default":"./fesm2022/c8y-ngx-components-operations-product-experience.mjs"},"./operations/shared":{"types":"./operations/shared/index.d.ts","esm2022":"./esm2022/operations/shared/c8y-ngx-components-operations-shared.mjs","esm":"./esm2022/operations/shared/c8y-ngx-components-operations-shared.mjs","default":"./fesm2022/c8y-ngx-components-operations-shared.mjs"},"./operations/status-filter":{"types":"./operations/status-filter/index.d.ts","esm2022":"./esm2022/operations/status-filter/c8y-ngx-components-operations-status-filter.mjs","esm":"./esm2022/operations/status-filter/c8y-ngx-components-operations-status-filter.mjs","default":"./fesm2022/c8y-ngx-components-operations-status-filter.mjs"},"./operations/stepper-bulk-type-configuration":{"types":"./operations/stepper-bulk-type-configuration/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-configuration/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","esm":"./esm2022/operations/stepper-bulk-type-configuration/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs"},"./operations/stepper-bulk-type-device-profile":{"types":"./operations/stepper-bulk-type-device-profile/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-device-profile/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","esm":"./esm2022/operations/stepper-bulk-type-device-profile/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs"},"./operations/stepper-bulk-type-firmware":{"types":"./operations/stepper-bulk-type-firmware/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-firmware/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","esm":"./esm2022/operations/stepper-bulk-type-firmware/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs"},"./operations/stepper-bulk-type-software":{"types":"./operations/stepper-bulk-type-software/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-software/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","esm":"./esm2022/operations/stepper-bulk-type-software/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs"},"./operations/stepper-frames":{"types":"./operations/stepper-frames/index.d.ts","esm2022":"./esm2022/operations/stepper-frames/c8y-ngx-components-operations-stepper-frames.mjs","esm":"./esm2022/operations/stepper-frames/c8y-ngx-components-operations-stepper-frames.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-frames.mjs"},"./protocol-lwm2m/factories":{"types":"./protocol-lwm2m/factories/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/factories/c8y-ngx-components-protocol-lwm2m-factories.mjs","esm":"./esm2022/protocol-lwm2m/factories/c8y-ngx-components-protocol-lwm2m-factories.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-factories.mjs"},"./protocol-lwm2m/formly":{"types":"./protocol-lwm2m/formly/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/formly/c8y-ngx-components-protocol-lwm2m-formly.mjs","esm":"./esm2022/protocol-lwm2m/formly/c8y-ngx-components-protocol-lwm2m-formly.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-formly.mjs"},"./protocol-lwm2m/guards":{"types":"./protocol-lwm2m/guards/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/guards/c8y-ngx-components-protocol-lwm2m-guards.mjs","esm":"./esm2022/protocol-lwm2m/guards/c8y-ngx-components-protocol-lwm2m-guards.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-guards.mjs"},"./protocol-lwm2m/model":{"types":"./protocol-lwm2m/model/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/model/c8y-ngx-components-protocol-lwm2m-model.mjs","esm":"./esm2022/protocol-lwm2m/model/c8y-ngx-components-protocol-lwm2m-model.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-model.mjs"},"./protocol-lwm2m/services":{"types":"./protocol-lwm2m/services/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/services/c8y-ngx-components-protocol-lwm2m-services.mjs","esm":"./esm2022/protocol-lwm2m/services/c8y-ngx-components-protocol-lwm2m-services.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-services.mjs"},"./protocol-opcua/mappings":{"types":"./protocol-opcua/mappings/index.d.ts","esm2022":"./esm2022/protocol-opcua/mappings/c8y-ngx-components-protocol-opcua-mappings.mjs","esm":"./esm2022/protocol-opcua/mappings/c8y-ngx-components-protocol-opcua-mappings.mjs","default":"./fesm2022/c8y-ngx-components-protocol-opcua-mappings.mjs"},"./remote-access/configurations":{"types":"./remote-access/configurations/index.d.ts","esm2022":"./esm2022/remote-access/configurations/c8y-ngx-components-remote-access-configurations.mjs","esm":"./esm2022/remote-access/configurations/c8y-ngx-components-remote-access-configurations.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-configurations.mjs"},"./remote-access/data":{"types":"./remote-access/data/index.d.ts","esm2022":"./esm2022/remote-access/data/c8y-ngx-components-remote-access-data.mjs","esm":"./esm2022/remote-access/data/c8y-ngx-components-remote-access-data.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-data.mjs"},"./remote-access/passthrough":{"types":"./remote-access/passthrough/index.d.ts","esm2022":"./esm2022/remote-access/passthrough/c8y-ngx-components-remote-access-passthrough.mjs","esm":"./esm2022/remote-access/passthrough/c8y-ngx-components-remote-access-passthrough.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-passthrough.mjs"},"./remote-access/shared":{"types":"./remote-access/shared/index.d.ts","esm2022":"./esm2022/remote-access/shared/c8y-ngx-components-remote-access-shared.mjs","esm":"./esm2022/remote-access/shared/c8y-ngx-components-remote-access-shared.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-shared.mjs"},"./remote-access/ssh":{"types":"./remote-access/ssh/index.d.ts","esm2022":"./esm2022/remote-access/ssh/c8y-ngx-components-remote-access-ssh.mjs","esm":"./esm2022/remote-access/ssh/c8y-ngx-components-remote-access-ssh.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-ssh.mjs"},"./remote-access/telnet":{"types":"./remote-access/telnet/index.d.ts","esm2022":"./esm2022/remote-access/telnet/c8y-ngx-components-remote-access-telnet.mjs","esm":"./esm2022/remote-access/telnet/c8y-ngx-components-remote-access-telnet.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-telnet.mjs"},"./remote-access/terminal-viewer":{"types":"./remote-access/terminal-viewer/index.d.ts","esm2022":"./esm2022/remote-access/terminal-viewer/c8y-ngx-components-remote-access-terminal-viewer.mjs","esm":"./esm2022/remote-access/terminal-viewer/c8y-ngx-components-remote-access-terminal-viewer.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-terminal-viewer.mjs"},"./remote-access/vnc":{"types":"./remote-access/vnc/index.d.ts","esm2022":"./esm2022/remote-access/vnc/c8y-ngx-components-remote-access-vnc.mjs","esm":"./esm2022/remote-access/vnc/c8y-ngx-components-remote-access-vnc.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-vnc.mjs"},"./replace-device/replace-device-wizard":{"types":"./replace-device/replace-device-wizard/index.d.ts","esm2022":"./esm2022/replace-device/replace-device-wizard/c8y-ngx-components-replace-device-replace-device-wizard.mjs","esm":"./esm2022/replace-device/replace-device-wizard/c8y-ngx-components-replace-device-replace-device-wizard.mjs","default":"./fesm2022/c8y-ngx-components-replace-device-replace-device-wizard.mjs"},"./repository/configuration":{"types":"./repository/configuration/index.d.ts","esm2022":"./esm2022/repository/configuration/c8y-ngx-components-repository-configuration.mjs","esm":"./esm2022/repository/configuration/c8y-ngx-components-repository-configuration.mjs","default":"./fesm2022/c8y-ngx-components-repository-configuration.mjs"},"./repository/firmware":{"types":"./repository/firmware/index.d.ts","esm2022":"./esm2022/repository/firmware/c8y-ngx-components-repository-firmware.mjs","esm":"./esm2022/repository/firmware/c8y-ngx-components-repository-firmware.mjs","default":"./fesm2022/c8y-ngx-components-repository-firmware.mjs"},"./repository/shared":{"types":"./repository/shared/index.d.ts","esm2022":"./esm2022/repository/shared/c8y-ngx-components-repository-shared.mjs","esm":"./esm2022/repository/shared/c8y-ngx-components-repository-shared.mjs","default":"./fesm2022/c8y-ngx-components-repository-shared.mjs"},"./repository/software":{"types":"./repository/software/index.d.ts","esm2022":"./esm2022/repository/software/c8y-ngx-components-repository-software.mjs","esm":"./esm2022/repository/software/c8y-ngx-components-repository-software.mjs","default":"./fesm2022/c8y-ngx-components-repository-software.mjs"},"./sensor-phone/sensor-phone-modal":{"types":"./sensor-phone/sensor-phone-modal/index.d.ts","esm2022":"./esm2022/sensor-phone/sensor-phone-modal/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","esm":"./esm2022/sensor-phone/sensor-phone-modal/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","default":"./fesm2022/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs"},"./services/service-command-tab":{"types":"./services/service-command-tab/index.d.ts","esm2022":"./esm2022/services/service-command-tab/c8y-ngx-components-services-service-command-tab.mjs","esm":"./esm2022/services/service-command-tab/c8y-ngx-components-services-service-command-tab.mjs","default":"./fesm2022/c8y-ngx-components-services-service-command-tab.mjs"},"./services/shared":{"types":"./services/shared/index.d.ts","esm2022":"./esm2022/services/shared/c8y-ngx-components-services-shared.mjs","esm":"./esm2022/services/shared/c8y-ngx-components-services-shared.mjs","default":"./fesm2022/c8y-ngx-components-services-shared.mjs"},"./static-assets/data":{"types":"./static-assets/data/index.d.ts","esm2022":"./esm2022/static-assets/data/c8y-ngx-components-static-assets-data.mjs","esm":"./esm2022/static-assets/data/c8y-ngx-components-static-assets-data.mjs","default":"./fesm2022/c8y-ngx-components-static-assets-data.mjs"},"./static-assets/modal":{"types":"./static-assets/modal/index.d.ts","esm2022":"./esm2022/static-assets/modal/c8y-ngx-components-static-assets-modal.mjs","esm":"./esm2022/static-assets/modal/c8y-ngx-components-static-assets-modal.mjs","default":"./fesm2022/c8y-ngx-components-static-assets-modal.mjs"},"./translation-editor/data":{"types":"./translation-editor/data/index.d.ts","esm2022":"./esm2022/translation-editor/data/c8y-ngx-components-translation-editor-data.mjs","esm":"./esm2022/translation-editor/data/c8y-ngx-components-translation-editor-data.mjs","default":"./fesm2022/c8y-ngx-components-translation-editor-data.mjs"},"./translation-editor/lazy":{"types":"./translation-editor/lazy/index.d.ts","esm2022":"./esm2022/translation-editor/lazy/c8y-ngx-components-translation-editor-lazy.mjs","esm":"./esm2022/translation-editor/lazy/c8y-ngx-components-translation-editor-lazy.mjs","default":"./fesm2022/c8y-ngx-components-translation-editor-lazy.mjs"},"./upgrade/upgraded-services":{"types":"./upgrade/upgraded-services/index.d.ts","esm2022":"./esm2022/upgrade/upgraded-services/c8y-ngx-components-upgrade-upgraded-services.mjs","esm":"./esm2022/upgrade/upgraded-services/c8y-ngx-components-upgrade-upgraded-services.mjs","default":"./fesm2022/c8y-ngx-components-upgrade-upgraded-services.mjs"},"./widgets/cockpit":{"types":"./widgets/cockpit/index.d.ts","esm2022":"./esm2022/widgets/cockpit/c8y-ngx-components-widgets-cockpit.mjs","esm":"./esm2022/widgets/cockpit/c8y-ngx-components-widgets-cockpit.mjs","default":"./fesm2022/c8y-ngx-components-widgets-cockpit.mjs"},"./widgets/cockpit-exports":{"types":"./widgets/cockpit-exports/index.d.ts","esm2022":"./esm2022/widgets/cockpit-exports/c8y-ngx-components-widgets-cockpit-exports.mjs","esm":"./esm2022/widgets/cockpit-exports/c8y-ngx-components-widgets-cockpit-exports.mjs","default":"./fesm2022/c8y-ngx-components-widgets-cockpit-exports.mjs"},"./widgets/definitions":{"types":"./widgets/definitions/index.d.ts","esm2022":"./esm2022/widgets/definitions/c8y-ngx-components-widgets-definitions.mjs","esm":"./esm2022/widgets/definitions/c8y-ngx-components-widgets-definitions.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions.mjs"},"./widgets/device-management":{"types":"./widgets/device-management/index.d.ts","esm2022":"./esm2022/widgets/device-management/c8y-ngx-components-widgets-device-management.mjs","esm":"./esm2022/widgets/device-management/c8y-ngx-components-widgets-device-management.mjs","default":"./fesm2022/c8y-ngx-components-widgets-device-management.mjs"},"./branding/plain-branding-editor/lazy":{"types":"./branding/plain-branding-editor/lazy/index.d.ts","esm2022":"./esm2022/branding/plain-branding-editor/lazy/c8y-ngx-components-branding-plain-branding-editor-lazy.mjs","esm":"./esm2022/branding/plain-branding-editor/lazy/c8y-ngx-components-branding-plain-branding-editor-lazy.mjs","default":"./fesm2022/c8y-ngx-components-branding-plain-branding-editor-lazy.mjs"},"./branding/shared/data":{"types":"./branding/shared/data/index.d.ts","esm2022":"./esm2022/branding/shared/data/c8y-ngx-components-branding-shared-data.mjs","esm":"./esm2022/branding/shared/data/c8y-ngx-components-branding-shared-data.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared-data.mjs"},"./branding/shared/lazy":{"types":"./branding/shared/lazy/index.d.ts","esm2022":"./esm2022/branding/shared/lazy/c8y-ngx-components-branding-shared-lazy.mjs","esm":"./esm2022/branding/shared/lazy/c8y-ngx-components-branding-shared-lazy.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared-lazy.mjs"},"./icon-selector/icons/arrows":{"types":"./icon-selector/icons/arrows/index.d.ts","esm2022":"./esm2022/icon-selector/icons/arrows/c8y-ngx-components-icon-selector-icons-arrows.mjs","esm":"./esm2022/icon-selector/icons/arrows/c8y-ngx-components-icon-selector-icons-arrows.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-arrows.mjs"},"./icon-selector/icons/city":{"types":"./icon-selector/icons/city/index.d.ts","esm2022":"./esm2022/icon-selector/icons/city/c8y-ngx-components-icon-selector-icons-city.mjs","esm":"./esm2022/icon-selector/icons/city/c8y-ngx-components-icon-selector-icons-city.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-city.mjs"},"./icon-selector/icons/data":{"types":"./icon-selector/icons/data/index.d.ts","esm2022":"./esm2022/icon-selector/icons/data/c8y-ngx-components-icon-selector-icons-data.mjs","esm":"./esm2022/icon-selector/icons/data/c8y-ngx-components-icon-selector-icons-data.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-data.mjs"},"./icon-selector/icons/dateAndTime":{"types":"./icon-selector/icons/dateAndTime/index.d.ts","esm2022":"./esm2022/icon-selector/icons/dateAndTime/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","esm":"./esm2022/icon-selector/icons/dateAndTime/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs"},"./icon-selector/icons/devicesAndSensors":{"types":"./icon-selector/icons/devicesAndSensors/index.d.ts","esm2022":"./esm2022/icon-selector/icons/devicesAndSensors/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","esm":"./esm2022/icon-selector/icons/devicesAndSensors/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs"},"./icon-selector/icons/ecommerce":{"types":"./icon-selector/icons/ecommerce/index.d.ts","esm2022":"./esm2022/icon-selector/icons/ecommerce/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","esm":"./esm2022/icon-selector/icons/ecommerce/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-ecommerce.mjs"},"./icon-selector/icons/editing":{"types":"./icon-selector/icons/editing/index.d.ts","esm2022":"./esm2022/icon-selector/icons/editing/c8y-ngx-components-icon-selector-icons-editing.mjs","esm":"./esm2022/icon-selector/icons/editing/c8y-ngx-components-icon-selector-icons-editing.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-editing.mjs"},"./icon-selector/icons/filesAndFolders":{"types":"./icon-selector/icons/filesAndFolders/index.d.ts","esm2022":"./esm2022/icon-selector/icons/filesAndFolders/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","esm":"./esm2022/icon-selector/icons/filesAndFolders/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs"},"./icon-selector/icons/finance":{"types":"./icon-selector/icons/finance/index.d.ts","esm2022":"./esm2022/icon-selector/icons/finance/c8y-ngx-components-icon-selector-icons-finance.mjs","esm":"./esm2022/icon-selector/icons/finance/c8y-ngx-components-icon-selector-icons-finance.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-finance.mjs"},"./icon-selector/icons/hands":{"types":"./icon-selector/icons/hands/index.d.ts","esm2022":"./esm2022/icon-selector/icons/hands/c8y-ngx-components-icon-selector-icons-hands.mjs","esm":"./esm2022/icon-selector/icons/hands/c8y-ngx-components-icon-selector-icons-hands.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-hands.mjs"},"./icon-selector/icons/location":{"types":"./icon-selector/icons/location/index.d.ts","esm2022":"./esm2022/icon-selector/icons/location/c8y-ngx-components-icon-selector-icons-location.mjs","esm":"./esm2022/icon-selector/icons/location/c8y-ngx-components-icon-selector-icons-location.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-location.mjs"},"./icon-selector/icons/messaging":{"types":"./icon-selector/icons/messaging/index.d.ts","esm2022":"./esm2022/icon-selector/icons/messaging/c8y-ngx-components-icon-selector-icons-messaging.mjs","esm":"./esm2022/icon-selector/icons/messaging/c8y-ngx-components-icon-selector-icons-messaging.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-messaging.mjs"},"./icon-selector/icons/multimedia":{"types":"./icon-selector/icons/multimedia/index.d.ts","esm2022":"./esm2022/icon-selector/icons/multimedia/c8y-ngx-components-icon-selector-icons-multimedia.mjs","esm":"./esm2022/icon-selector/icons/multimedia/c8y-ngx-components-icon-selector-icons-multimedia.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-multimedia.mjs"},"./icon-selector/icons/network":{"types":"./icon-selector/icons/network/index.d.ts","esm2022":"./esm2022/icon-selector/icons/network/c8y-ngx-components-icon-selector-icons-network.mjs","esm":"./esm2022/icon-selector/icons/network/c8y-ngx-components-icon-selector-icons-network.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-network.mjs"},"./icon-selector/icons/office":{"types":"./icon-selector/icons/office/index.d.ts","esm2022":"./esm2022/icon-selector/icons/office/c8y-ngx-components-icon-selector-icons-office.mjs","esm":"./esm2022/icon-selector/icons/office/c8y-ngx-components-icon-selector-icons-office.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-office.mjs"},"./icon-selector/icons/people":{"types":"./icon-selector/icons/people/index.d.ts","esm2022":"./esm2022/icon-selector/icons/people/c8y-ngx-components-icon-selector-icons-people.mjs","esm":"./esm2022/icon-selector/icons/people/c8y-ngx-components-icon-selector-icons-people.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-people.mjs"},"./icon-selector/icons/platform":{"types":"./icon-selector/icons/platform/index.d.ts","esm2022":"./esm2022/icon-selector/icons/platform/c8y-ngx-components-icon-selector-icons-platform.mjs","esm":"./esm2022/icon-selector/icons/platform/c8y-ngx-components-icon-selector-icons-platform.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-platform.mjs"},"./icon-selector/icons/programming":{"types":"./icon-selector/icons/programming/index.d.ts","esm2022":"./esm2022/icon-selector/icons/programming/c8y-ngx-components-icon-selector-icons-programming.mjs","esm":"./esm2022/icon-selector/icons/programming/c8y-ngx-components-icon-selector-icons-programming.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-programming.mjs"},"./icon-selector/icons/transport":{"types":"./icon-selector/icons/transport/index.d.ts","esm2022":"./esm2022/icon-selector/icons/transport/c8y-ngx-components-icon-selector-icons-transport.mjs","esm":"./esm2022/icon-selector/icons/transport/c8y-ngx-components-icon-selector-icons-transport.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-transport.mjs"},"./icon-selector/icons/security":{"types":"./icon-selector/icons/security/index.d.ts","esm2022":"./esm2022/icon-selector/icons/security/c8y-ngx-components-icon-selector-icons-security.mjs","esm":"./esm2022/icon-selector/icons/security/c8y-ngx-components-icon-selector-icons-security.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-security.mjs"},"./icon-selector/icons/userInterface":{"types":"./icon-selector/icons/userInterface/index.d.ts","esm2022":"./esm2022/icon-selector/icons/userInterface/c8y-ngx-components-icon-selector-icons-userInterface.mjs","esm":"./esm2022/icon-selector/icons/userInterface/c8y-ngx-components-icon-selector-icons-userInterface.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-userInterface.mjs"},"./icon-selector/icons/weather":{"types":"./icon-selector/icons/weather/index.d.ts","esm2022":"./esm2022/icon-selector/icons/weather/c8y-ngx-components-icon-selector-icons-weather.mjs","esm":"./esm2022/icon-selector/icons/weather/c8y-ngx-components-icon-selector-icons-weather.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-weather.mjs"},"./protocol-lwm2m/components/bootstrap-parameters":{"types":"./protocol-lwm2m/components/bootstrap-parameters/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/components/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","esm":"./esm2022/protocol-lwm2m/components/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs"},"./protocol-lwm2m/components/configuration":{"types":"./protocol-lwm2m/components/configuration/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/components/configuration/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs","esm":"./esm2022/protocol-lwm2m/components/configuration/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs"},"./protocol-lwm2m/components/post-registration-operations":{"types":"./protocol-lwm2m/components/post-registration-operations/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","esm":"./esm2022/protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs"},"./remote-access/ssh/remote-access-ssh-endpoint-modal":{"types":"./remote-access/ssh/remote-access-ssh-endpoint-modal/index.d.ts","esm2022":"./esm2022/remote-access/ssh/remote-access-ssh-endpoint-modal/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs","esm":"./esm2022/remote-access/ssh/remote-access-ssh-endpoint-modal/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs"},"./remote-access/vnc/remote-access-vnc-endpoint-modal":{"types":"./remote-access/vnc/remote-access-vnc-endpoint-modal/index.d.ts","esm2022":"./esm2022/remote-access/vnc/remote-access-vnc-endpoint-modal/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs","esm":"./esm2022/remote-access/vnc/remote-access-vnc-endpoint-modal/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs"},"./remote-access/vnc/vnc-viewer":{"types":"./remote-access/vnc/vnc-viewer/index.d.ts","esm2022":"./esm2022/remote-access/vnc/vnc-viewer/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs","esm":"./esm2022/remote-access/vnc/vnc-viewer/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs"},"./widgets/definitions/applications":{"types":"./widgets/definitions/applications/index.d.ts","esm2022":"./esm2022/widgets/definitions/applications/c8y-ngx-components-widgets-definitions-applications.mjs","esm":"./esm2022/widgets/definitions/applications/c8y-ngx-components-widgets-definitions-applications.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-applications.mjs"},"./widgets/definitions/asset-notes":{"types":"./widgets/definitions/asset-notes/index.d.ts","esm2022":"./esm2022/widgets/definitions/asset-notes/c8y-ngx-components-widgets-definitions-asset-notes.mjs","esm":"./esm2022/widgets/definitions/asset-notes/c8y-ngx-components-widgets-definitions-asset-notes.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-asset-notes.mjs"},"./widgets/definitions/cockpit-legacy-welcome":{"types":"./widgets/definitions/cockpit-legacy-welcome/index.d.ts","esm2022":"./esm2022/widgets/definitions/cockpit-legacy-welcome/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","esm":"./esm2022/widgets/definitions/cockpit-legacy-welcome/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs"},"./widgets/definitions/cockpit-welcome":{"types":"./widgets/definitions/cockpit-welcome/index.d.ts","esm2022":"./esm2022/widgets/definitions/cockpit-welcome/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","esm":"./esm2022/widgets/definitions/cockpit-welcome/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs"},"./widgets/definitions/datapoints-graph":{"types":"./widgets/definitions/datapoints-graph/index.d.ts","esm2022":"./esm2022/widgets/definitions/datapoints-graph/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs","esm":"./esm2022/widgets/definitions/datapoints-graph/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs"},"./widgets/definitions/datapoints-table":{"types":"./widgets/definitions/datapoints-table/index.d.ts","esm2022":"./esm2022/widgets/definitions/datapoints-table/c8y-ngx-components-widgets-definitions-datapoints-table.mjs","esm":"./esm2022/widgets/definitions/datapoints-table/c8y-ngx-components-widgets-definitions-datapoints-table.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs"},"./widgets/definitions/device-control-message":{"types":"./widgets/definitions/device-control-message/index.d.ts","esm2022":"./esm2022/widgets/definitions/device-control-message/c8y-ngx-components-widgets-definitions-device-control-message.mjs","esm":"./esm2022/widgets/definitions/device-control-message/c8y-ngx-components-widgets-definitions-device-control-message.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-device-control-message.mjs"},"./widgets/definitions/device-management-welcome":{"types":"./widgets/definitions/device-management-welcome/index.d.ts","esm2022":"./esm2022/widgets/definitions/device-management-welcome/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","esm":"./esm2022/widgets/definitions/device-management-welcome/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs"},"./widgets/definitions/help-and-service":{"types":"./widgets/definitions/help-and-service/index.d.ts","esm2022":"./esm2022/widgets/definitions/help-and-service/c8y-ngx-components-widgets-definitions-help-and-service.mjs","esm":"./esm2022/widgets/definitions/help-and-service/c8y-ngx-components-widgets-definitions-help-and-service.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-help-and-service.mjs"},"./widgets/definitions/image":{"types":"./widgets/definitions/image/index.d.ts","esm2022":"./esm2022/widgets/definitions/image/c8y-ngx-components-widgets-definitions-image.mjs","esm":"./esm2022/widgets/definitions/image/c8y-ngx-components-widgets-definitions-image.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-image.mjs"},"./widgets/definitions/info-gauge":{"types":"./widgets/definitions/info-gauge/index.d.ts","esm2022":"./esm2022/widgets/definitions/info-gauge/c8y-ngx-components-widgets-definitions-info-gauge.mjs","esm":"./esm2022/widgets/definitions/info-gauge/c8y-ngx-components-widgets-definitions-info-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-info-gauge.mjs"},"./widgets/definitions/kpi":{"types":"./widgets/definitions/kpi/index.d.ts","esm2022":"./esm2022/widgets/definitions/kpi/c8y-ngx-components-widgets-definitions-kpi.mjs","esm":"./esm2022/widgets/definitions/kpi/c8y-ngx-components-widgets-definitions-kpi.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-kpi.mjs"},"./widgets/definitions/linear-gauge":{"types":"./widgets/definitions/linear-gauge/index.d.ts","esm2022":"./esm2022/widgets/definitions/linear-gauge/c8y-ngx-components-widgets-definitions-linear-gauge.mjs","esm":"./esm2022/widgets/definitions/linear-gauge/c8y-ngx-components-widgets-definitions-linear-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-linear-gauge.mjs"},"./widgets/definitions/map":{"types":"./widgets/definitions/map/index.d.ts","esm2022":"./esm2022/widgets/definitions/map/c8y-ngx-components-widgets-definitions-map.mjs","esm":"./esm2022/widgets/definitions/map/c8y-ngx-components-widgets-definitions-map.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-map.mjs"},"./widgets/definitions/markdown":{"types":"./widgets/definitions/markdown/index.d.ts","esm2022":"./esm2022/widgets/definitions/markdown/c8y-ngx-components-widgets-definitions-markdown.mjs","esm":"./esm2022/widgets/definitions/markdown/c8y-ngx-components-widgets-definitions-markdown.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-markdown.mjs"},"./widgets/definitions/silo":{"types":"./widgets/definitions/silo/index.d.ts","esm2022":"./esm2022/widgets/definitions/silo/c8y-ngx-components-widgets-definitions-silo.mjs","esm":"./esm2022/widgets/definitions/silo/c8y-ngx-components-widgets-definitions-silo.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-silo.mjs"},"./widgets/definitions/three-d-rotation":{"types":"./widgets/definitions/three-d-rotation/index.d.ts","esm2022":"./esm2022/widgets/definitions/three-d-rotation/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","esm":"./esm2022/widgets/definitions/three-d-rotation/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs"},"./widgets/implementations/alarms":{"types":"./widgets/implementations/alarms/index.d.ts","esm2022":"./esm2022/widgets/implementations/alarms/c8y-ngx-components-widgets-implementations-alarms.mjs","esm":"./esm2022/widgets/implementations/alarms/c8y-ngx-components-widgets-implementations-alarms.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs"},"./widgets/implementations/asset-notes":{"types":"./widgets/implementations/asset-notes/index.d.ts","esm2022":"./esm2022/widgets/implementations/asset-notes/c8y-ngx-components-widgets-implementations-asset-notes.mjs","esm":"./esm2022/widgets/implementations/asset-notes/c8y-ngx-components-widgets-implementations-asset-notes.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-asset-notes.mjs"},"./widgets/implementations/cockpit-legacy-welcome":{"types":"./widgets/implementations/cockpit-legacy-welcome/index.d.ts","esm2022":"./esm2022/widgets/implementations/cockpit-legacy-welcome/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","esm":"./esm2022/widgets/implementations/cockpit-legacy-welcome/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs"},"./widgets/implementations/cockpit-welcome":{"types":"./widgets/implementations/cockpit-welcome/index.d.ts","esm2022":"./esm2022/widgets/implementations/cockpit-welcome/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","esm":"./esm2022/widgets/implementations/cockpit-welcome/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs"},"./widgets/implementations/datapoints-graph":{"types":"./widgets/implementations/datapoints-graph/index.d.ts","esm2022":"./esm2022/widgets/implementations/datapoints-graph/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs","esm":"./esm2022/widgets/implementations/datapoints-graph/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs"},"./widgets/implementations/device-control-message":{"types":"./widgets/implementations/device-control-message/index.d.ts","esm2022":"./esm2022/widgets/implementations/device-control-message/c8y-ngx-components-widgets-implementations-device-control-message.mjs","esm":"./esm2022/widgets/implementations/device-control-message/c8y-ngx-components-widgets-implementations-device-control-message.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-device-control-message.mjs"},"./widgets/implementations/datapoints-table":{"types":"./widgets/implementations/datapoints-table/index.d.ts","esm2022":"./esm2022/widgets/implementations/datapoints-table/c8y-ngx-components-widgets-implementations-datapoints-table.mjs","esm":"./esm2022/widgets/implementations/datapoints-table/c8y-ngx-components-widgets-implementations-datapoints-table.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs"},"./widgets/implementations/device-management-welcome":{"types":"./widgets/implementations/device-management-welcome/index.d.ts","esm2022":"./esm2022/widgets/implementations/device-management-welcome/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","esm":"./esm2022/widgets/implementations/device-management-welcome/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs"},"./widgets/implementations/help-and-service-widget":{"types":"./widgets/implementations/help-and-service-widget/index.d.ts","esm2022":"./esm2022/widgets/implementations/help-and-service-widget/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","esm":"./esm2022/widgets/implementations/help-and-service-widget/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs"},"./widgets/implementations/image":{"types":"./widgets/implementations/image/index.d.ts","esm2022":"./esm2022/widgets/implementations/image/c8y-ngx-components-widgets-implementations-image.mjs","esm":"./esm2022/widgets/implementations/image/c8y-ngx-components-widgets-implementations-image.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-image.mjs"},"./widgets/implementations/info-gauge":{"types":"./widgets/implementations/info-gauge/index.d.ts","esm2022":"./esm2022/widgets/implementations/info-gauge/c8y-ngx-components-widgets-implementations-info-gauge.mjs","esm":"./esm2022/widgets/implementations/info-gauge/c8y-ngx-components-widgets-implementations-info-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs"},"./widgets/implementations/kpi":{"types":"./widgets/implementations/kpi/index.d.ts","esm2022":"./esm2022/widgets/implementations/kpi/c8y-ngx-components-widgets-implementations-kpi.mjs","esm":"./esm2022/widgets/implementations/kpi/c8y-ngx-components-widgets-implementations-kpi.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs"},"./widgets/implementations/linear-gauge":{"types":"./widgets/implementations/linear-gauge/index.d.ts","esm2022":"./esm2022/widgets/implementations/linear-gauge/c8y-ngx-components-widgets-implementations-linear-gauge.mjs","esm":"./esm2022/widgets/implementations/linear-gauge/c8y-ngx-components-widgets-implementations-linear-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs"},"./widgets/implementations/map":{"types":"./widgets/implementations/map/index.d.ts","esm2022":"./esm2022/widgets/implementations/map/c8y-ngx-components-widgets-implementations-map.mjs","esm":"./esm2022/widgets/implementations/map/c8y-ngx-components-widgets-implementations-map.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-map.mjs"},"./widgets/implementations/markdown":{"types":"./widgets/implementations/markdown/index.d.ts","esm2022":"./esm2022/widgets/implementations/markdown/c8y-ngx-components-widgets-implementations-markdown.mjs","esm":"./esm2022/widgets/implementations/markdown/c8y-ngx-components-widgets-implementations-markdown.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-markdown.mjs"},"./widgets/implementations/three-d-rotation":{"types":"./widgets/implementations/three-d-rotation/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs"},"./branding/shared/lazy/add-branding-modal":{"types":"./branding/shared/lazy/add-branding-modal/index.d.ts","esm2022":"./esm2022/branding/shared/lazy/add-branding-modal/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs","esm":"./esm2022/branding/shared/lazy/add-branding-modal/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs"},"./widgets/definitions/alarms/alarm-list":{"types":"./widgets/definitions/alarms/alarm-list/index.d.ts","esm2022":"./esm2022/widgets/definitions/alarms/alarm-list/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs","esm":"./esm2022/widgets/definitions/alarms/alarm-list/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs"},"./widgets/definitions/alarms/all-critical-alarms":{"types":"./widgets/definitions/alarms/all-critical-alarms/index.d.ts","esm2022":"./esm2022/widgets/definitions/alarms/all-critical-alarms/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs","esm":"./esm2022/widgets/definitions/alarms/all-critical-alarms/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs"},"./widgets/definitions/alarms/recent-alarms":{"types":"./widgets/definitions/alarms/recent-alarms/index.d.ts","esm2022":"./esm2022/widgets/definitions/alarms/recent-alarms/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs","esm":"./esm2022/widgets/definitions/alarms/recent-alarms/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs"},"./widgets/implementations/three-d-rotation/lazy-box-model":{"types":"./widgets/implementations/three-d-rotation/lazy-box-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/lazy-box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/lazy-box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs"},"./widgets/implementations/three-d-rotation/lazy-phone-model":{"types":"./widgets/implementations/three-d-rotation/lazy-phone-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/lazy-phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/lazy-phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs"}},"sideEffects":false}
|
|
1
|
+
{"name":"@c8y/ngx-components","version":"1021.58.0","license":"Apache-2.0","author":"Cumulocity","description":"Angular modules for Cumulocity IoT applications","keywords":["Cumulocity","IoT","m2m","Angular","Components"],"peerDependencies":{"@angular/cdk":"^18.2.0","@angular/common":"^18.2.0","@angular/core":"^18.2.0","@angular/forms":"^18.2.0","@angular/platform-browser":"^18.2.0","@angular/router":"^18.2.0","@angular/upgrade":"^18.2.0","@c8y/bootstrap":"1021.58.0","@c8y/client":"1021.58.0","@novnc/novnc":"1.5.0","@xterm/addon-fit":"0.10.0","@xterm/xterm":"5.5.0","leaflet":"^1.7.1","rxjs":"^7.4.0"},"dependencies":{"@ngx-formly/core":"6.1.3","@ngx-translate/core":"15.0.0","@ngx-translate/http-loader":"8.0.0","@zip.js/zip.js":"2.7.52","angularx-qrcode":"18.0.1","chroma-js":"3.1.2","echarts":"5.5.1","file-saver":"2.0.5","libphonenumber-js":"1.11.9","lodash-es":"^4.0.0","marked":"14.1.2","monaco-editor":"^0.52.0","ngx-bootstrap":"18.0.0","ngx-echarts":"18.0.0","semver":"~7.6.0","three":"0.154.0","tslib":"^2.6.3"},"module":"fesm2022/c8y-ngx-components.mjs","typings":"index.d.ts","exports":{"./locales/de.po":"./locales/de.po","./locales/en.po":"./locales/en.po","./locales/es.po":"./locales/es.po","./locales/fr.po":"./locales/fr.po","./locales/ja_JP.po":"./locales/ja_JP.po","./locales/ko.po":"./locales/ko.po","./locales/nl.po":"./locales/nl.po","./locales/pt_BR.po":"./locales/pt_BR.po","./locales/zh_CN.po":"./locales/zh_CN.po","./locales/zh_TW.po":"./locales/zh_TW.po","./locales/pl.po":"./locales/pl.po","./locales/en_US.po":"./locales/en_US.po","./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2022":"./esm2022/c8y-ngx-components.mjs","esm":"./esm2022/c8y-ngx-components.mjs","default":"./fesm2022/c8y-ngx-components.mjs"},"./actility-device-registration":{"types":"./actility-device-registration/index.d.ts","esm2022":"./esm2022/actility-device-registration/c8y-ngx-components-actility-device-registration.mjs","esm":"./esm2022/actility-device-registration/c8y-ngx-components-actility-device-registration.mjs","default":"./fesm2022/c8y-ngx-components-actility-device-registration.mjs"},"./advanced-software-management":{"types":"./advanced-software-management/index.d.ts","esm2022":"./esm2022/advanced-software-management/c8y-ngx-components-advanced-software-management.mjs","esm":"./esm2022/advanced-software-management/c8y-ngx-components-advanced-software-management.mjs","default":"./fesm2022/c8y-ngx-components-advanced-software-management.mjs"},"./alarm-event-selector":{"types":"./alarm-event-selector/index.d.ts","esm2022":"./esm2022/alarm-event-selector/c8y-ngx-components-alarm-event-selector.mjs","esm":"./esm2022/alarm-event-selector/c8y-ngx-components-alarm-event-selector.mjs","default":"./fesm2022/c8y-ngx-components-alarm-event-selector.mjs"},"./alarms":{"types":"./alarms/index.d.ts","esm2022":"./esm2022/alarms/c8y-ngx-components-alarms.mjs","esm":"./esm2022/alarms/c8y-ngx-components-alarms.mjs","default":"./fesm2022/c8y-ngx-components-alarms.mjs"},"./api":{"types":"./api/index.d.ts","esm2022":"./esm2022/api/c8y-ngx-components-api.mjs","esm":"./esm2022/api/c8y-ngx-components-api.mjs","default":"./fesm2022/c8y-ngx-components-api.mjs"},"./app-logs":{"types":"./app-logs/index.d.ts","esm2022":"./esm2022/app-logs/c8y-ngx-components-app-logs.mjs","esm":"./esm2022/app-logs/c8y-ngx-components-app-logs.mjs","default":"./fesm2022/c8y-ngx-components-app-logs.mjs"},"./assets-navigator":{"types":"./assets-navigator/index.d.ts","esm2022":"./esm2022/assets-navigator/c8y-ngx-components-assets-navigator.mjs","esm":"./esm2022/assets-navigator/c8y-ngx-components-assets-navigator.mjs","default":"./fesm2022/c8y-ngx-components-assets-navigator.mjs"},"./auth-configuration":{"types":"./auth-configuration/index.d.ts","esm2022":"./esm2022/auth-configuration/c8y-ngx-components-auth-configuration.mjs","esm":"./esm2022/auth-configuration/c8y-ngx-components-auth-configuration.mjs","default":"./fesm2022/c8y-ngx-components-auth-configuration.mjs"},"./binary-file-download":{"types":"./binary-file-download/index.d.ts","esm2022":"./esm2022/binary-file-download/c8y-ngx-components-binary-file-download.mjs","esm":"./esm2022/binary-file-download/c8y-ngx-components-binary-file-download.mjs","default":"./fesm2022/c8y-ngx-components-binary-file-download.mjs"},"./bookmarks":{"types":"./bookmarks/index.d.ts","esm2022":"./esm2022/bookmarks/c8y-ngx-components-bookmarks.mjs","esm":"./esm2022/bookmarks/c8y-ngx-components-bookmarks.mjs","default":"./fesm2022/c8y-ngx-components-bookmarks.mjs"},"./child-devices":{"types":"./child-devices/index.d.ts","esm2022":"./esm2022/child-devices/c8y-ngx-components-child-devices.mjs","esm":"./esm2022/child-devices/c8y-ngx-components-child-devices.mjs","default":"./fesm2022/c8y-ngx-components-child-devices.mjs"},"./cockpit-config":{"types":"./cockpit-config/index.d.ts","esm2022":"./esm2022/cockpit-config/c8y-ngx-components-cockpit-config.mjs","esm":"./esm2022/cockpit-config/c8y-ngx-components-cockpit-config.mjs","default":"./fesm2022/c8y-ngx-components-cockpit-config.mjs"},"./connectivity":{"types":"./connectivity/index.d.ts","esm2022":"./esm2022/connectivity/c8y-ngx-components-connectivity.mjs","esm":"./esm2022/connectivity/c8y-ngx-components-connectivity.mjs","default":"./fesm2022/c8y-ngx-components-connectivity.mjs"},"./context-dashboard":{"types":"./context-dashboard/index.d.ts","esm2022":"./esm2022/context-dashboard/c8y-ngx-components-context-dashboard.mjs","esm":"./esm2022/context-dashboard/c8y-ngx-components-context-dashboard.mjs","default":"./fesm2022/c8y-ngx-components-context-dashboard.mjs"},"./data-broker":{"types":"./data-broker/index.d.ts","esm2022":"./esm2022/data-broker/c8y-ngx-components-data-broker.mjs","esm":"./esm2022/data-broker/c8y-ngx-components-data-broker.mjs","default":"./fesm2022/c8y-ngx-components-data-broker.mjs"},"./data-grid-columns":{"types":"./data-grid-columns/index.d.ts","esm2022":"./esm2022/data-grid-columns/c8y-ngx-components-data-grid-columns.mjs","esm":"./esm2022/data-grid-columns/c8y-ngx-components-data-grid-columns.mjs","default":"./fesm2022/c8y-ngx-components-data-grid-columns.mjs"},"./datapoint-explorer":{"types":"./datapoint-explorer/index.d.ts","esm2022":"./esm2022/datapoint-explorer/c8y-ngx-components-datapoint-explorer.mjs","esm":"./esm2022/datapoint-explorer/c8y-ngx-components-datapoint-explorer.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-explorer.mjs"},"./datapoint-library":{"types":"./datapoint-library/index.d.ts","esm2022":"./esm2022/datapoint-library/c8y-ngx-components-datapoint-library.mjs","esm":"./esm2022/datapoint-library/c8y-ngx-components-datapoint-library.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library.mjs"},"./datapoint-selector":{"types":"./datapoint-selector/index.d.ts","esm2022":"./esm2022/datapoint-selector/c8y-ngx-components-datapoint-selector.mjs","esm":"./esm2022/datapoint-selector/c8y-ngx-components-datapoint-selector.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-selector.mjs"},"./datapoints-export-selector":{"types":"./datapoints-export-selector/index.d.ts","esm2022":"./esm2022/datapoints-export-selector/c8y-ngx-components-datapoints-export-selector.mjs","esm":"./esm2022/datapoints-export-selector/c8y-ngx-components-datapoints-export-selector.mjs","default":"./fesm2022/c8y-ngx-components-datapoints-export-selector.mjs"},"./default-subscriptions":{"types":"./default-subscriptions/index.d.ts","esm2022":"./esm2022/default-subscriptions/c8y-ngx-components-default-subscriptions.mjs","esm":"./esm2022/default-subscriptions/c8y-ngx-components-default-subscriptions.mjs","default":"./fesm2022/c8y-ngx-components-default-subscriptions.mjs"},"./device-grid":{"types":"./device-grid/index.d.ts","esm2022":"./esm2022/device-grid/c8y-ngx-components-device-grid.mjs","esm":"./esm2022/device-grid/c8y-ngx-components-device-grid.mjs","default":"./fesm2022/c8y-ngx-components-device-grid.mjs"},"./device-list":{"types":"./device-list/index.d.ts","esm2022":"./esm2022/device-list/c8y-ngx-components-device-list.mjs","esm":"./esm2022/device-list/c8y-ngx-components-device-list.mjs","default":"./fesm2022/c8y-ngx-components-device-list.mjs"},"./device-map":{"types":"./device-map/index.d.ts","esm2022":"./esm2022/device-map/c8y-ngx-components-device-map.mjs","esm":"./esm2022/device-map/c8y-ngx-components-device-map.mjs","default":"./fesm2022/c8y-ngx-components-device-map.mjs"},"./device-profile":{"types":"./device-profile/index.d.ts","esm2022":"./esm2022/device-profile/c8y-ngx-components-device-profile.mjs","esm":"./esm2022/device-profile/c8y-ngx-components-device-profile.mjs","default":"./fesm2022/c8y-ngx-components-device-profile.mjs"},"./device-protocol-object-mappings":{"types":"./device-protocol-object-mappings/index.d.ts","esm2022":"./esm2022/device-protocol-object-mappings/c8y-ngx-components-device-protocol-object-mappings.mjs","esm":"./esm2022/device-protocol-object-mappings/c8y-ngx-components-device-protocol-object-mappings.mjs","default":"./fesm2022/c8y-ngx-components-device-protocol-object-mappings.mjs"},"./device-protocols":{"types":"./device-protocols/index.d.ts","esm2022":"./esm2022/device-protocols/c8y-ngx-components-device-protocols.mjs","esm":"./esm2022/device-protocols/c8y-ngx-components-device-protocols.mjs","default":"./fesm2022/c8y-ngx-components-device-protocols.mjs"},"./device-provisioned-certificates":{"types":"./device-provisioned-certificates/index.d.ts","esm2022":"./esm2022/device-provisioned-certificates/c8y-ngx-components-device-provisioned-certificates.mjs","esm":"./esm2022/device-provisioned-certificates/c8y-ngx-components-device-provisioned-certificates.mjs","default":"./fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs"},"./device-shell":{"types":"./device-shell/index.d.ts","esm2022":"./esm2022/device-shell/c8y-ngx-components-device-shell.mjs","esm":"./esm2022/device-shell/c8y-ngx-components-device-shell.mjs","default":"./fesm2022/c8y-ngx-components-device-shell.mjs"},"./diagnostics":{"types":"./diagnostics/index.d.ts","esm2022":"./esm2022/diagnostics/c8y-ngx-components-diagnostics.mjs","esm":"./esm2022/diagnostics/c8y-ngx-components-diagnostics.mjs","default":"./fesm2022/c8y-ngx-components-diagnostics.mjs"},"./echart":{"types":"./echart/index.d.ts","esm2022":"./esm2022/echart/c8y-ngx-components-echart.mjs","esm":"./esm2022/echart/c8y-ngx-components-echart.mjs","default":"./fesm2022/c8y-ngx-components-echart.mjs"},"./ecosystem":{"types":"./ecosystem/index.d.ts","esm2022":"./esm2022/ecosystem/c8y-ngx-components-ecosystem.mjs","esm":"./esm2022/ecosystem/c8y-ngx-components-ecosystem.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem.mjs"},"./editor":{"types":"./editor/index.d.ts","esm2022":"./esm2022/editor/c8y-ngx-components-editor.mjs","esm":"./esm2022/editor/c8y-ngx-components-editor.mjs","default":"./fesm2022/c8y-ngx-components-editor.mjs"},"./file-preview":{"types":"./file-preview/index.d.ts","esm2022":"./esm2022/file-preview/c8y-ngx-components-file-preview.mjs","esm":"./esm2022/file-preview/c8y-ngx-components-file-preview.mjs","default":"./fesm2022/c8y-ngx-components-file-preview.mjs"},"./files-repository":{"types":"./files-repository/index.d.ts","esm2022":"./esm2022/files-repository/c8y-ngx-components-files-repository.mjs","esm":"./esm2022/files-repository/c8y-ngx-components-files-repository.mjs","default":"./fesm2022/c8y-ngx-components-files-repository.mjs"},"./gettext":{"types":"./gettext/index.d.ts","esm2022":"./esm2022/gettext/c8y-ngx-components-gettext.mjs","esm":"./esm2022/gettext/c8y-ngx-components-gettext.mjs","default":"./fesm2022/c8y-ngx-components-gettext.mjs"},"./icon-selector":{"types":"./icon-selector/index.d.ts","esm2022":"./esm2022/icon-selector/c8y-ngx-components-icon-selector.mjs","esm":"./esm2022/icon-selector/c8y-ngx-components-icon-selector.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector.mjs"},"./interval-picker":{"types":"./interval-picker/index.d.ts","esm2022":"./esm2022/interval-picker/c8y-ngx-components-interval-picker.mjs","esm":"./esm2022/interval-picker/c8y-ngx-components-interval-picker.mjs","default":"./fesm2022/c8y-ngx-components-interval-picker.mjs"},"./location":{"types":"./location/index.d.ts","esm2022":"./esm2022/location/c8y-ngx-components-location.mjs","esm":"./esm2022/location/c8y-ngx-components-location.mjs","default":"./fesm2022/c8y-ngx-components-location.mjs"},"./loriot-device-registration":{"types":"./loriot-device-registration/index.d.ts","esm2022":"./esm2022/loriot-device-registration/c8y-ngx-components-loriot-device-registration.mjs","esm":"./esm2022/loriot-device-registration/c8y-ngx-components-loriot-device-registration.mjs","default":"./fesm2022/c8y-ngx-components-loriot-device-registration.mjs"},"./map":{"types":"./map/index.d.ts","esm2022":"./esm2022/map/c8y-ngx-components-map.mjs","esm":"./esm2022/map/c8y-ngx-components-map.mjs","default":"./fesm2022/c8y-ngx-components-map.mjs"},"./operations":{"types":"./operations/index.d.ts","esm2022":"./esm2022/operations/c8y-ngx-components-operations.mjs","esm":"./esm2022/operations/c8y-ngx-components-operations.mjs","default":"./fesm2022/c8y-ngx-components-operations.mjs"},"./pending-mo-request":{"types":"./pending-mo-request/index.d.ts","esm2022":"./esm2022/pending-mo-request/c8y-ngx-components-pending-mo-request.mjs","esm":"./esm2022/pending-mo-request/c8y-ngx-components-pending-mo-request.mjs","default":"./fesm2022/c8y-ngx-components-pending-mo-request.mjs"},"./platform-configuration":{"types":"./platform-configuration/index.d.ts","esm2022":"./esm2022/platform-configuration/c8y-ngx-components-platform-configuration.mjs","esm":"./esm2022/platform-configuration/c8y-ngx-components-platform-configuration.mjs","default":"./fesm2022/c8y-ngx-components-platform-configuration.mjs"},"./polyfills":{"types":"./polyfills/index.d.ts","esm2022":"./esm2022/polyfills/c8y-ngx-components-polyfills.mjs","esm":"./esm2022/polyfills/c8y-ngx-components-polyfills.mjs","default":"./fesm2022/c8y-ngx-components-polyfills.mjs"},"./protocol-lpwan":{"types":"./protocol-lpwan/index.d.ts","esm2022":"./esm2022/protocol-lpwan/c8y-ngx-components-protocol-lpwan.mjs","esm":"./esm2022/protocol-lpwan/c8y-ngx-components-protocol-lpwan.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lpwan.mjs"},"./protocol-lwm2m":{"types":"./protocol-lwm2m/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/c8y-ngx-components-protocol-lwm2m.mjs","esm":"./esm2022/protocol-lwm2m/c8y-ngx-components-protocol-lwm2m.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m.mjs"},"./protocol-opcua":{"types":"./protocol-opcua/index.d.ts","esm2022":"./esm2022/protocol-opcua/c8y-ngx-components-protocol-opcua.mjs","esm":"./esm2022/protocol-opcua/c8y-ngx-components-protocol-opcua.mjs","default":"./fesm2022/c8y-ngx-components-protocol-opcua.mjs"},"./register-device":{"types":"./register-device/index.d.ts","esm2022":"./esm2022/register-device/c8y-ngx-components-register-device.mjs","esm":"./esm2022/register-device/c8y-ngx-components-register-device.mjs","default":"./fesm2022/c8y-ngx-components-register-device.mjs"},"./replace-device":{"types":"./replace-device/index.d.ts","esm2022":"./esm2022/replace-device/c8y-ngx-components-replace-device.mjs","esm":"./esm2022/replace-device/c8y-ngx-components-replace-device.mjs","default":"./fesm2022/c8y-ngx-components-replace-device.mjs"},"./report-dashboard":{"types":"./report-dashboard/index.d.ts","esm2022":"./esm2022/report-dashboard/c8y-ngx-components-report-dashboard.mjs","esm":"./esm2022/report-dashboard/c8y-ngx-components-report-dashboard.mjs","default":"./fesm2022/c8y-ngx-components-report-dashboard.mjs"},"./reports":{"types":"./reports/index.d.ts","esm2022":"./esm2022/reports/c8y-ngx-components-reports.mjs","esm":"./esm2022/reports/c8y-ngx-components-reports.mjs","default":"./fesm2022/c8y-ngx-components-reports.mjs"},"./repository":{"types":"./repository/index.d.ts","esm2022":"./esm2022/repository/c8y-ngx-components-repository.mjs","esm":"./esm2022/repository/c8y-ngx-components-repository.mjs","default":"./fesm2022/c8y-ngx-components-repository.mjs"},"./search":{"types":"./search/index.d.ts","esm2022":"./esm2022/search/c8y-ngx-components-search.mjs","esm":"./esm2022/search/c8y-ngx-components-search.mjs","default":"./fesm2022/c8y-ngx-components-search.mjs"},"./sensor-phone":{"types":"./sensor-phone/index.d.ts","esm2022":"./esm2022/sensor-phone/c8y-ngx-components-sensor-phone.mjs","esm":"./esm2022/sensor-phone/c8y-ngx-components-sensor-phone.mjs","default":"./fesm2022/c8y-ngx-components-sensor-phone.mjs"},"./services":{"types":"./services/index.d.ts","esm2022":"./esm2022/services/c8y-ngx-components-services.mjs","esm":"./esm2022/services/c8y-ngx-components-services.mjs","default":"./fesm2022/c8y-ngx-components-services.mjs"},"./sigfox-device-registration":{"types":"./sigfox-device-registration/index.d.ts","esm2022":"./esm2022/sigfox-device-registration/c8y-ngx-components-sigfox-device-registration.mjs","esm":"./esm2022/sigfox-device-registration/c8y-ngx-components-sigfox-device-registration.mjs","default":"./fesm2022/c8y-ngx-components-sigfox-device-registration.mjs"},"./sms-gateway":{"types":"./sms-gateway/index.d.ts","esm2022":"./esm2022/sms-gateway/c8y-ngx-components-sms-gateway.mjs","esm":"./esm2022/sms-gateway/c8y-ngx-components-sms-gateway.mjs","default":"./fesm2022/c8y-ngx-components-sms-gateway.mjs"},"./static-assets":{"types":"./static-assets/index.d.ts","esm2022":"./esm2022/static-assets/c8y-ngx-components-static-assets.mjs","esm":"./esm2022/static-assets/c8y-ngx-components-static-assets.mjs","default":"./fesm2022/c8y-ngx-components-static-assets.mjs"},"./sub-assets":{"types":"./sub-assets/index.d.ts","esm2022":"./esm2022/sub-assets/c8y-ngx-components-sub-assets.mjs","esm":"./esm2022/sub-assets/c8y-ngx-components-sub-assets.mjs","default":"./fesm2022/c8y-ngx-components-sub-assets.mjs"},"./tenants":{"types":"./tenants/index.d.ts","esm2022":"./esm2022/tenants/c8y-ngx-components-tenants.mjs","esm":"./esm2022/tenants/c8y-ngx-components-tenants.mjs","default":"./fesm2022/c8y-ngx-components-tenants.mjs"},"./time-context":{"types":"./time-context/index.d.ts","esm2022":"./esm2022/time-context/c8y-ngx-components-time-context.mjs","esm":"./esm2022/time-context/c8y-ngx-components-time-context.mjs","default":"./fesm2022/c8y-ngx-components-time-context.mjs"},"./tracking":{"types":"./tracking/index.d.ts","esm2022":"./esm2022/tracking/c8y-ngx-components-tracking.mjs","esm":"./esm2022/tracking/c8y-ngx-components-tracking.mjs","default":"./fesm2022/c8y-ngx-components-tracking.mjs"},"./translation-editor":{"types":"./translation-editor/index.d.ts","esm2022":"./esm2022/translation-editor/c8y-ngx-components-translation-editor.mjs","esm":"./esm2022/translation-editor/c8y-ngx-components-translation-editor.mjs","default":"./fesm2022/c8y-ngx-components-translation-editor.mjs"},"./trusted-certificates":{"types":"./trusted-certificates/index.d.ts","esm2022":"./esm2022/trusted-certificates/c8y-ngx-components-trusted-certificates.mjs","esm":"./esm2022/trusted-certificates/c8y-ngx-components-trusted-certificates.mjs","default":"./fesm2022/c8y-ngx-components-trusted-certificates.mjs"},"./upgrade":{"types":"./upgrade/index.d.ts","esm2022":"./esm2022/upgrade/c8y-ngx-components-upgrade.mjs","esm":"./esm2022/upgrade/c8y-ngx-components-upgrade.mjs","default":"./fesm2022/c8y-ngx-components-upgrade.mjs"},"./user-roles":{"types":"./user-roles/index.d.ts","esm2022":"./esm2022/user-roles/c8y-ngx-components-user-roles.mjs","esm":"./esm2022/user-roles/c8y-ngx-components-user-roles.mjs","default":"./fesm2022/c8y-ngx-components-user-roles.mjs"},"./widgets":{"types":"./widgets/index.d.ts","esm2022":"./esm2022/widgets/c8y-ngx-components-widgets.mjs","esm":"./esm2022/widgets/c8y-ngx-components-widgets.mjs","default":"./fesm2022/c8y-ngx-components-widgets.mjs"},"./alarms/cockpit":{"types":"./alarms/cockpit/index.d.ts","esm2022":"./esm2022/alarms/cockpit/c8y-ngx-components-alarms-cockpit.mjs","esm":"./esm2022/alarms/cockpit/c8y-ngx-components-alarms-cockpit.mjs","default":"./fesm2022/c8y-ngx-components-alarms-cockpit.mjs"},"./alarms/devicemanagement":{"types":"./alarms/devicemanagement/index.d.ts","esm2022":"./esm2022/alarms/devicemanagement/c8y-ngx-components-alarms-devicemanagement.mjs","esm":"./esm2022/alarms/devicemanagement/c8y-ngx-components-alarms-devicemanagement.mjs","default":"./fesm2022/c8y-ngx-components-alarms-devicemanagement.mjs"},"./branding/base-branding":{"types":"./branding/base-branding/index.d.ts","esm2022":"./esm2022/branding/base-branding/c8y-ngx-components-branding-base-branding.mjs","esm":"./esm2022/branding/base-branding/c8y-ngx-components-branding-base-branding.mjs","default":"./fesm2022/c8y-ngx-components-branding-base-branding.mjs"},"./branding/dark-theme":{"types":"./branding/dark-theme/index.d.ts","esm2022":"./esm2022/branding/dark-theme/c8y-ngx-components-branding-dark-theme.mjs","esm":"./esm2022/branding/dark-theme/c8y-ngx-components-branding-dark-theme.mjs","default":"./fesm2022/c8y-ngx-components-branding-dark-theme.mjs"},"./branding/extra-css-branding-editor":{"types":"./branding/extra-css-branding-editor/index.d.ts","esm2022":"./esm2022/branding/extra-css-branding-editor/c8y-ngx-components-branding-extra-css-branding-editor.mjs","esm":"./esm2022/branding/extra-css-branding-editor/c8y-ngx-components-branding-extra-css-branding-editor.mjs","default":"./fesm2022/c8y-ngx-components-branding-extra-css-branding-editor.mjs"},"./branding/plain-branding-editor":{"types":"./branding/plain-branding-editor/index.d.ts","esm2022":"./esm2022/branding/plain-branding-editor/c8y-ngx-components-branding-plain-branding-editor.mjs","esm":"./esm2022/branding/plain-branding-editor/c8y-ngx-components-branding-plain-branding-editor.mjs","default":"./fesm2022/c8y-ngx-components-branding-plain-branding-editor.mjs"},"./branding/shared":{"types":"./branding/shared/index.d.ts","esm2022":"./esm2022/branding/shared/c8y-ngx-components-branding-shared.mjs","esm":"./esm2022/branding/shared/c8y-ngx-components-branding-shared.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared.mjs"},"./data-grid-columns/asset-type":{"types":"./data-grid-columns/asset-type/index.d.ts","esm2022":"./esm2022/data-grid-columns/asset-type/c8y-ngx-components-data-grid-columns-asset-type.mjs","esm":"./esm2022/data-grid-columns/asset-type/c8y-ngx-components-data-grid-columns-asset-type.mjs","default":"./fesm2022/c8y-ngx-components-data-grid-columns-asset-type.mjs"},"./datapoint-explorer/view":{"types":"./datapoint-explorer/view/index.d.ts","esm2022":"./esm2022/datapoint-explorer/view/c8y-ngx-components-datapoint-explorer-view.mjs","esm":"./esm2022/datapoint-explorer/view/c8y-ngx-components-datapoint-explorer-view.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs"},"./datapoint-library/details":{"types":"./datapoint-library/details/index.d.ts","esm2022":"./esm2022/datapoint-library/details/c8y-ngx-components-datapoint-library-details.mjs","esm":"./esm2022/datapoint-library/details/c8y-ngx-components-datapoint-library-details.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-details.mjs"},"./datapoint-library/list":{"types":"./datapoint-library/list/index.d.ts","esm2022":"./esm2022/datapoint-library/list/c8y-ngx-components-datapoint-library-list.mjs","esm":"./esm2022/datapoint-library/list/c8y-ngx-components-datapoint-library-list.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-list.mjs"},"./datapoint-library/model":{"types":"./datapoint-library/model/index.d.ts","esm2022":"./esm2022/datapoint-library/model/c8y-ngx-components-datapoint-library-model.mjs","esm":"./esm2022/datapoint-library/model/c8y-ngx-components-datapoint-library-model.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-model.mjs"},"./datapoint-library/services":{"types":"./datapoint-library/services/index.d.ts","esm2022":"./esm2022/datapoint-library/services/c8y-ngx-components-datapoint-library-services.mjs","esm":"./esm2022/datapoint-library/services/c8y-ngx-components-datapoint-library-services.mjs","default":"./fesm2022/c8y-ngx-components-datapoint-library-services.mjs"},"./echart/models":{"types":"./echart/models/index.d.ts","esm2022":"./esm2022/echart/models/c8y-ngx-components-echart-models.mjs","esm":"./esm2022/echart/models/c8y-ngx-components-echart-models.mjs","default":"./fesm2022/c8y-ngx-components-echart-models.mjs"},"./ecosystem/application-plugins":{"types":"./ecosystem/application-plugins/index.d.ts","esm2022":"./esm2022/ecosystem/application-plugins/c8y-ngx-components-ecosystem-application-plugins.mjs","esm":"./esm2022/ecosystem/application-plugins/c8y-ngx-components-ecosystem-application-plugins.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs"},"./ecosystem/license-confirm":{"types":"./ecosystem/license-confirm/index.d.ts","esm2022":"./esm2022/ecosystem/license-confirm/c8y-ngx-components-ecosystem-license-confirm.mjs","esm":"./esm2022/ecosystem/license-confirm/c8y-ngx-components-ecosystem-license-confirm.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs"},"./ecosystem/archived-confirm":{"types":"./ecosystem/archived-confirm/index.d.ts","esm2022":"./esm2022/ecosystem/archived-confirm/c8y-ngx-components-ecosystem-archived-confirm.mjs","esm":"./esm2022/ecosystem/archived-confirm/c8y-ngx-components-ecosystem-archived-confirm.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs"},"./ecosystem/plugin-setup-stepper":{"types":"./ecosystem/plugin-setup-stepper/index.d.ts","esm2022":"./esm2022/ecosystem/plugin-setup-stepper/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","esm":"./esm2022/ecosystem/plugin-setup-stepper/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs"},"./ecosystem/shared":{"types":"./ecosystem/shared/index.d.ts","esm2022":"./esm2022/ecosystem/shared/c8y-ngx-components-ecosystem-shared.mjs","esm":"./esm2022/ecosystem/shared/c8y-ngx-components-ecosystem-shared.mjs","default":"./fesm2022/c8y-ngx-components-ecosystem-shared.mjs"},"./icon-selector/icons":{"types":"./icon-selector/icons/index.d.ts","esm2022":"./esm2022/icon-selector/icons/c8y-ngx-components-icon-selector-icons.mjs","esm":"./esm2022/icon-selector/icons/c8y-ngx-components-icon-selector-icons.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons.mjs"},"./icon-selector/model":{"types":"./icon-selector/model/index.d.ts","esm2022":"./esm2022/icon-selector/model/c8y-ngx-components-icon-selector-model.mjs","esm":"./esm2022/icon-selector/model/c8y-ngx-components-icon-selector-model.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-model.mjs"},"./lazy/three":{"types":"./lazy/three/index.d.ts","esm2022":"./esm2022/lazy/three/c8y-ngx-components-lazy-three.mjs","esm":"./esm2022/lazy/three/c8y-ngx-components-lazy-three.mjs","default":"./fesm2022/c8y-ngx-components-lazy-three.mjs"},"./lazy/three-orbit-controls":{"types":"./lazy/three-orbit-controls/index.d.ts","esm2022":"./esm2022/lazy/three-orbit-controls/c8y-ngx-components-lazy-three-orbit-controls.mjs","esm":"./esm2022/lazy/three-orbit-controls/c8y-ngx-components-lazy-three-orbit-controls.mjs","default":"./fesm2022/c8y-ngx-components-lazy-three-orbit-controls.mjs"},"./operations/bulk-operation-from-single":{"types":"./operations/bulk-operation-from-single/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-from-single/c8y-ngx-components-operations-bulk-operation-from-single.mjs","esm":"./esm2022/operations/bulk-operation-from-single/c8y-ngx-components-operations-bulk-operation-from-single.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-from-single.mjs"},"./operations/bulk-operation-list-item":{"types":"./operations/bulk-operation-list-item/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-list-item/c8y-ngx-components-operations-bulk-operation-list-item.mjs","esm":"./esm2022/operations/bulk-operation-list-item/c8y-ngx-components-operations-bulk-operation-list-item.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs"},"./operations/bulk-operation-modal-details":{"types":"./operations/bulk-operation-modal-details/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-modal-details/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","esm":"./esm2022/operations/bulk-operation-modal-details/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-modal-details.mjs"},"./operations/bulk-operation-scheduler":{"types":"./operations/bulk-operation-scheduler/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-scheduler/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","esm":"./esm2022/operations/bulk-operation-scheduler/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs"},"./operations/bulk-operation-stepper":{"types":"./operations/bulk-operation-stepper/index.d.ts","esm2022":"./esm2022/operations/bulk-operation-stepper/c8y-ngx-components-operations-bulk-operation-stepper.mjs","esm":"./esm2022/operations/bulk-operation-stepper/c8y-ngx-components-operations-bulk-operation-stepper.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs"},"./operations/bulk-operations-list":{"types":"./operations/bulk-operations-list/index.d.ts","esm2022":"./esm2022/operations/bulk-operations-list/c8y-ngx-components-operations-bulk-operations-list.mjs","esm":"./esm2022/operations/bulk-operations-list/c8y-ngx-components-operations-bulk-operations-list.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operations-list.mjs"},"./operations/bulk-operations-service":{"types":"./operations/bulk-operations-service/index.d.ts","esm2022":"./esm2022/operations/bulk-operations-service/c8y-ngx-components-operations-bulk-operations-service.mjs","esm":"./esm2022/operations/bulk-operations-service/c8y-ngx-components-operations-bulk-operations-service.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operations-service.mjs"},"./operations/bulk-operations-stepper-container":{"types":"./operations/bulk-operations-stepper-container/index.d.ts","esm2022":"./esm2022/operations/bulk-operations-stepper-container/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","esm":"./esm2022/operations/bulk-operations-stepper-container/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs"},"./operations/bulk-single-operations-list":{"types":"./operations/bulk-single-operations-list/index.d.ts","esm2022":"./esm2022/operations/bulk-single-operations-list/c8y-ngx-components-operations-bulk-single-operations-list.mjs","esm":"./esm2022/operations/bulk-single-operations-list/c8y-ngx-components-operations-bulk-single-operations-list.mjs","default":"./fesm2022/c8y-ngx-components-operations-bulk-single-operations-list.mjs"},"./operations/create-bulk-operation-details":{"types":"./operations/create-bulk-operation-details/index.d.ts","esm2022":"./esm2022/operations/create-bulk-operation-details/c8y-ngx-components-operations-create-bulk-operation-details.mjs","esm":"./esm2022/operations/create-bulk-operation-details/c8y-ngx-components-operations-create-bulk-operation-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs"},"./operations/device-selector":{"types":"./operations/device-selector/index.d.ts","esm2022":"./esm2022/operations/device-selector/c8y-ngx-components-operations-device-selector.mjs","esm":"./esm2022/operations/device-selector/c8y-ngx-components-operations-device-selector.mjs","default":"./fesm2022/c8y-ngx-components-operations-device-selector.mjs"},"./operations/operation-details":{"types":"./operations/operation-details/index.d.ts","esm2022":"./esm2022/operations/operation-details/c8y-ngx-components-operations-operation-details.mjs","esm":"./esm2022/operations/operation-details/c8y-ngx-components-operations-operation-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-operation-details.mjs"},"./operations/operation-summary":{"types":"./operations/operation-summary/index.d.ts","esm2022":"./esm2022/operations/operation-summary/c8y-ngx-components-operations-operation-summary.mjs","esm":"./esm2022/operations/operation-summary/c8y-ngx-components-operations-operation-summary.mjs","default":"./fesm2022/c8y-ngx-components-operations-operation-summary.mjs"},"./operations/operations-list":{"types":"./operations/operations-list/index.d.ts","esm2022":"./esm2022/operations/operations-list/c8y-ngx-components-operations-operations-list.mjs","esm":"./esm2022/operations/operations-list/c8y-ngx-components-operations-operations-list.mjs","default":"./fesm2022/c8y-ngx-components-operations-operations-list.mjs"},"./operations/operations-list-item-details":{"types":"./operations/operations-list-item-details/index.d.ts","esm2022":"./esm2022/operations/operations-list-item-details/c8y-ngx-components-operations-operations-list-item-details.mjs","esm":"./esm2022/operations/operations-list-item-details/c8y-ngx-components-operations-operations-list-item-details.mjs","default":"./fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs"},"./operations/operations-timeline":{"types":"./operations/operations-timeline/index.d.ts","esm2022":"./esm2022/operations/operations-timeline/c8y-ngx-components-operations-operations-timeline.mjs","esm":"./esm2022/operations/operations-timeline/c8y-ngx-components-operations-operations-timeline.mjs","default":"./fesm2022/c8y-ngx-components-operations-operations-timeline.mjs"},"./operations/product-experience":{"types":"./operations/product-experience/index.d.ts","esm2022":"./esm2022/operations/product-experience/c8y-ngx-components-operations-product-experience.mjs","esm":"./esm2022/operations/product-experience/c8y-ngx-components-operations-product-experience.mjs","default":"./fesm2022/c8y-ngx-components-operations-product-experience.mjs"},"./operations/shared":{"types":"./operations/shared/index.d.ts","esm2022":"./esm2022/operations/shared/c8y-ngx-components-operations-shared.mjs","esm":"./esm2022/operations/shared/c8y-ngx-components-operations-shared.mjs","default":"./fesm2022/c8y-ngx-components-operations-shared.mjs"},"./operations/status-filter":{"types":"./operations/status-filter/index.d.ts","esm2022":"./esm2022/operations/status-filter/c8y-ngx-components-operations-status-filter.mjs","esm":"./esm2022/operations/status-filter/c8y-ngx-components-operations-status-filter.mjs","default":"./fesm2022/c8y-ngx-components-operations-status-filter.mjs"},"./operations/stepper-bulk-type-configuration":{"types":"./operations/stepper-bulk-type-configuration/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-configuration/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","esm":"./esm2022/operations/stepper-bulk-type-configuration/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs"},"./operations/stepper-bulk-type-device-profile":{"types":"./operations/stepper-bulk-type-device-profile/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-device-profile/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","esm":"./esm2022/operations/stepper-bulk-type-device-profile/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs"},"./operations/stepper-bulk-type-firmware":{"types":"./operations/stepper-bulk-type-firmware/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-firmware/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","esm":"./esm2022/operations/stepper-bulk-type-firmware/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs"},"./operations/stepper-bulk-type-software":{"types":"./operations/stepper-bulk-type-software/index.d.ts","esm2022":"./esm2022/operations/stepper-bulk-type-software/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","esm":"./esm2022/operations/stepper-bulk-type-software/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs"},"./operations/stepper-frames":{"types":"./operations/stepper-frames/index.d.ts","esm2022":"./esm2022/operations/stepper-frames/c8y-ngx-components-operations-stepper-frames.mjs","esm":"./esm2022/operations/stepper-frames/c8y-ngx-components-operations-stepper-frames.mjs","default":"./fesm2022/c8y-ngx-components-operations-stepper-frames.mjs"},"./protocol-lwm2m/factories":{"types":"./protocol-lwm2m/factories/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/factories/c8y-ngx-components-protocol-lwm2m-factories.mjs","esm":"./esm2022/protocol-lwm2m/factories/c8y-ngx-components-protocol-lwm2m-factories.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-factories.mjs"},"./protocol-lwm2m/formly":{"types":"./protocol-lwm2m/formly/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/formly/c8y-ngx-components-protocol-lwm2m-formly.mjs","esm":"./esm2022/protocol-lwm2m/formly/c8y-ngx-components-protocol-lwm2m-formly.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-formly.mjs"},"./protocol-lwm2m/guards":{"types":"./protocol-lwm2m/guards/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/guards/c8y-ngx-components-protocol-lwm2m-guards.mjs","esm":"./esm2022/protocol-lwm2m/guards/c8y-ngx-components-protocol-lwm2m-guards.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-guards.mjs"},"./protocol-lwm2m/model":{"types":"./protocol-lwm2m/model/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/model/c8y-ngx-components-protocol-lwm2m-model.mjs","esm":"./esm2022/protocol-lwm2m/model/c8y-ngx-components-protocol-lwm2m-model.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-model.mjs"},"./protocol-lwm2m/services":{"types":"./protocol-lwm2m/services/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/services/c8y-ngx-components-protocol-lwm2m-services.mjs","esm":"./esm2022/protocol-lwm2m/services/c8y-ngx-components-protocol-lwm2m-services.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-services.mjs"},"./protocol-opcua/mappings":{"types":"./protocol-opcua/mappings/index.d.ts","esm2022":"./esm2022/protocol-opcua/mappings/c8y-ngx-components-protocol-opcua-mappings.mjs","esm":"./esm2022/protocol-opcua/mappings/c8y-ngx-components-protocol-opcua-mappings.mjs","default":"./fesm2022/c8y-ngx-components-protocol-opcua-mappings.mjs"},"./remote-access/configurations":{"types":"./remote-access/configurations/index.d.ts","esm2022":"./esm2022/remote-access/configurations/c8y-ngx-components-remote-access-configurations.mjs","esm":"./esm2022/remote-access/configurations/c8y-ngx-components-remote-access-configurations.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-configurations.mjs"},"./remote-access/data":{"types":"./remote-access/data/index.d.ts","esm2022":"./esm2022/remote-access/data/c8y-ngx-components-remote-access-data.mjs","esm":"./esm2022/remote-access/data/c8y-ngx-components-remote-access-data.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-data.mjs"},"./remote-access/passthrough":{"types":"./remote-access/passthrough/index.d.ts","esm2022":"./esm2022/remote-access/passthrough/c8y-ngx-components-remote-access-passthrough.mjs","esm":"./esm2022/remote-access/passthrough/c8y-ngx-components-remote-access-passthrough.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-passthrough.mjs"},"./remote-access/shared":{"types":"./remote-access/shared/index.d.ts","esm2022":"./esm2022/remote-access/shared/c8y-ngx-components-remote-access-shared.mjs","esm":"./esm2022/remote-access/shared/c8y-ngx-components-remote-access-shared.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-shared.mjs"},"./remote-access/ssh":{"types":"./remote-access/ssh/index.d.ts","esm2022":"./esm2022/remote-access/ssh/c8y-ngx-components-remote-access-ssh.mjs","esm":"./esm2022/remote-access/ssh/c8y-ngx-components-remote-access-ssh.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-ssh.mjs"},"./remote-access/telnet":{"types":"./remote-access/telnet/index.d.ts","esm2022":"./esm2022/remote-access/telnet/c8y-ngx-components-remote-access-telnet.mjs","esm":"./esm2022/remote-access/telnet/c8y-ngx-components-remote-access-telnet.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-telnet.mjs"},"./remote-access/terminal-viewer":{"types":"./remote-access/terminal-viewer/index.d.ts","esm2022":"./esm2022/remote-access/terminal-viewer/c8y-ngx-components-remote-access-terminal-viewer.mjs","esm":"./esm2022/remote-access/terminal-viewer/c8y-ngx-components-remote-access-terminal-viewer.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-terminal-viewer.mjs"},"./remote-access/vnc":{"types":"./remote-access/vnc/index.d.ts","esm2022":"./esm2022/remote-access/vnc/c8y-ngx-components-remote-access-vnc.mjs","esm":"./esm2022/remote-access/vnc/c8y-ngx-components-remote-access-vnc.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-vnc.mjs"},"./replace-device/replace-device-wizard":{"types":"./replace-device/replace-device-wizard/index.d.ts","esm2022":"./esm2022/replace-device/replace-device-wizard/c8y-ngx-components-replace-device-replace-device-wizard.mjs","esm":"./esm2022/replace-device/replace-device-wizard/c8y-ngx-components-replace-device-replace-device-wizard.mjs","default":"./fesm2022/c8y-ngx-components-replace-device-replace-device-wizard.mjs"},"./repository/configuration":{"types":"./repository/configuration/index.d.ts","esm2022":"./esm2022/repository/configuration/c8y-ngx-components-repository-configuration.mjs","esm":"./esm2022/repository/configuration/c8y-ngx-components-repository-configuration.mjs","default":"./fesm2022/c8y-ngx-components-repository-configuration.mjs"},"./repository/firmware":{"types":"./repository/firmware/index.d.ts","esm2022":"./esm2022/repository/firmware/c8y-ngx-components-repository-firmware.mjs","esm":"./esm2022/repository/firmware/c8y-ngx-components-repository-firmware.mjs","default":"./fesm2022/c8y-ngx-components-repository-firmware.mjs"},"./repository/shared":{"types":"./repository/shared/index.d.ts","esm2022":"./esm2022/repository/shared/c8y-ngx-components-repository-shared.mjs","esm":"./esm2022/repository/shared/c8y-ngx-components-repository-shared.mjs","default":"./fesm2022/c8y-ngx-components-repository-shared.mjs"},"./repository/software":{"types":"./repository/software/index.d.ts","esm2022":"./esm2022/repository/software/c8y-ngx-components-repository-software.mjs","esm":"./esm2022/repository/software/c8y-ngx-components-repository-software.mjs","default":"./fesm2022/c8y-ngx-components-repository-software.mjs"},"./sensor-phone/sensor-phone-modal":{"types":"./sensor-phone/sensor-phone-modal/index.d.ts","esm2022":"./esm2022/sensor-phone/sensor-phone-modal/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","esm":"./esm2022/sensor-phone/sensor-phone-modal/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","default":"./fesm2022/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs"},"./services/service-command-tab":{"types":"./services/service-command-tab/index.d.ts","esm2022":"./esm2022/services/service-command-tab/c8y-ngx-components-services-service-command-tab.mjs","esm":"./esm2022/services/service-command-tab/c8y-ngx-components-services-service-command-tab.mjs","default":"./fesm2022/c8y-ngx-components-services-service-command-tab.mjs"},"./services/shared":{"types":"./services/shared/index.d.ts","esm2022":"./esm2022/services/shared/c8y-ngx-components-services-shared.mjs","esm":"./esm2022/services/shared/c8y-ngx-components-services-shared.mjs","default":"./fesm2022/c8y-ngx-components-services-shared.mjs"},"./static-assets/data":{"types":"./static-assets/data/index.d.ts","esm2022":"./esm2022/static-assets/data/c8y-ngx-components-static-assets-data.mjs","esm":"./esm2022/static-assets/data/c8y-ngx-components-static-assets-data.mjs","default":"./fesm2022/c8y-ngx-components-static-assets-data.mjs"},"./static-assets/modal":{"types":"./static-assets/modal/index.d.ts","esm2022":"./esm2022/static-assets/modal/c8y-ngx-components-static-assets-modal.mjs","esm":"./esm2022/static-assets/modal/c8y-ngx-components-static-assets-modal.mjs","default":"./fesm2022/c8y-ngx-components-static-assets-modal.mjs"},"./translation-editor/data":{"types":"./translation-editor/data/index.d.ts","esm2022":"./esm2022/translation-editor/data/c8y-ngx-components-translation-editor-data.mjs","esm":"./esm2022/translation-editor/data/c8y-ngx-components-translation-editor-data.mjs","default":"./fesm2022/c8y-ngx-components-translation-editor-data.mjs"},"./translation-editor/lazy":{"types":"./translation-editor/lazy/index.d.ts","esm2022":"./esm2022/translation-editor/lazy/c8y-ngx-components-translation-editor-lazy.mjs","esm":"./esm2022/translation-editor/lazy/c8y-ngx-components-translation-editor-lazy.mjs","default":"./fesm2022/c8y-ngx-components-translation-editor-lazy.mjs"},"./upgrade/upgraded-services":{"types":"./upgrade/upgraded-services/index.d.ts","esm2022":"./esm2022/upgrade/upgraded-services/c8y-ngx-components-upgrade-upgraded-services.mjs","esm":"./esm2022/upgrade/upgraded-services/c8y-ngx-components-upgrade-upgraded-services.mjs","default":"./fesm2022/c8y-ngx-components-upgrade-upgraded-services.mjs"},"./widgets/cockpit":{"types":"./widgets/cockpit/index.d.ts","esm2022":"./esm2022/widgets/cockpit/c8y-ngx-components-widgets-cockpit.mjs","esm":"./esm2022/widgets/cockpit/c8y-ngx-components-widgets-cockpit.mjs","default":"./fesm2022/c8y-ngx-components-widgets-cockpit.mjs"},"./widgets/cockpit-exports":{"types":"./widgets/cockpit-exports/index.d.ts","esm2022":"./esm2022/widgets/cockpit-exports/c8y-ngx-components-widgets-cockpit-exports.mjs","esm":"./esm2022/widgets/cockpit-exports/c8y-ngx-components-widgets-cockpit-exports.mjs","default":"./fesm2022/c8y-ngx-components-widgets-cockpit-exports.mjs"},"./widgets/definitions":{"types":"./widgets/definitions/index.d.ts","esm2022":"./esm2022/widgets/definitions/c8y-ngx-components-widgets-definitions.mjs","esm":"./esm2022/widgets/definitions/c8y-ngx-components-widgets-definitions.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions.mjs"},"./widgets/device-management":{"types":"./widgets/device-management/index.d.ts","esm2022":"./esm2022/widgets/device-management/c8y-ngx-components-widgets-device-management.mjs","esm":"./esm2022/widgets/device-management/c8y-ngx-components-widgets-device-management.mjs","default":"./fesm2022/c8y-ngx-components-widgets-device-management.mjs"},"./branding/plain-branding-editor/lazy":{"types":"./branding/plain-branding-editor/lazy/index.d.ts","esm2022":"./esm2022/branding/plain-branding-editor/lazy/c8y-ngx-components-branding-plain-branding-editor-lazy.mjs","esm":"./esm2022/branding/plain-branding-editor/lazy/c8y-ngx-components-branding-plain-branding-editor-lazy.mjs","default":"./fesm2022/c8y-ngx-components-branding-plain-branding-editor-lazy.mjs"},"./branding/shared/lazy":{"types":"./branding/shared/lazy/index.d.ts","esm2022":"./esm2022/branding/shared/lazy/c8y-ngx-components-branding-shared-lazy.mjs","esm":"./esm2022/branding/shared/lazy/c8y-ngx-components-branding-shared-lazy.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared-lazy.mjs"},"./branding/shared/data":{"types":"./branding/shared/data/index.d.ts","esm2022":"./esm2022/branding/shared/data/c8y-ngx-components-branding-shared-data.mjs","esm":"./esm2022/branding/shared/data/c8y-ngx-components-branding-shared-data.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared-data.mjs"},"./icon-selector/icons/arrows":{"types":"./icon-selector/icons/arrows/index.d.ts","esm2022":"./esm2022/icon-selector/icons/arrows/c8y-ngx-components-icon-selector-icons-arrows.mjs","esm":"./esm2022/icon-selector/icons/arrows/c8y-ngx-components-icon-selector-icons-arrows.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-arrows.mjs"},"./icon-selector/icons/city":{"types":"./icon-selector/icons/city/index.d.ts","esm2022":"./esm2022/icon-selector/icons/city/c8y-ngx-components-icon-selector-icons-city.mjs","esm":"./esm2022/icon-selector/icons/city/c8y-ngx-components-icon-selector-icons-city.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-city.mjs"},"./icon-selector/icons/data":{"types":"./icon-selector/icons/data/index.d.ts","esm2022":"./esm2022/icon-selector/icons/data/c8y-ngx-components-icon-selector-icons-data.mjs","esm":"./esm2022/icon-selector/icons/data/c8y-ngx-components-icon-selector-icons-data.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-data.mjs"},"./icon-selector/icons/dateAndTime":{"types":"./icon-selector/icons/dateAndTime/index.d.ts","esm2022":"./esm2022/icon-selector/icons/dateAndTime/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","esm":"./esm2022/icon-selector/icons/dateAndTime/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs"},"./icon-selector/icons/devicesAndSensors":{"types":"./icon-selector/icons/devicesAndSensors/index.d.ts","esm2022":"./esm2022/icon-selector/icons/devicesAndSensors/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","esm":"./esm2022/icon-selector/icons/devicesAndSensors/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs"},"./icon-selector/icons/ecommerce":{"types":"./icon-selector/icons/ecommerce/index.d.ts","esm2022":"./esm2022/icon-selector/icons/ecommerce/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","esm":"./esm2022/icon-selector/icons/ecommerce/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-ecommerce.mjs"},"./icon-selector/icons/editing":{"types":"./icon-selector/icons/editing/index.d.ts","esm2022":"./esm2022/icon-selector/icons/editing/c8y-ngx-components-icon-selector-icons-editing.mjs","esm":"./esm2022/icon-selector/icons/editing/c8y-ngx-components-icon-selector-icons-editing.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-editing.mjs"},"./icon-selector/icons/filesAndFolders":{"types":"./icon-selector/icons/filesAndFolders/index.d.ts","esm2022":"./esm2022/icon-selector/icons/filesAndFolders/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","esm":"./esm2022/icon-selector/icons/filesAndFolders/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs"},"./icon-selector/icons/finance":{"types":"./icon-selector/icons/finance/index.d.ts","esm2022":"./esm2022/icon-selector/icons/finance/c8y-ngx-components-icon-selector-icons-finance.mjs","esm":"./esm2022/icon-selector/icons/finance/c8y-ngx-components-icon-selector-icons-finance.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-finance.mjs"},"./icon-selector/icons/hands":{"types":"./icon-selector/icons/hands/index.d.ts","esm2022":"./esm2022/icon-selector/icons/hands/c8y-ngx-components-icon-selector-icons-hands.mjs","esm":"./esm2022/icon-selector/icons/hands/c8y-ngx-components-icon-selector-icons-hands.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-hands.mjs"},"./icon-selector/icons/location":{"types":"./icon-selector/icons/location/index.d.ts","esm2022":"./esm2022/icon-selector/icons/location/c8y-ngx-components-icon-selector-icons-location.mjs","esm":"./esm2022/icon-selector/icons/location/c8y-ngx-components-icon-selector-icons-location.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-location.mjs"},"./icon-selector/icons/messaging":{"types":"./icon-selector/icons/messaging/index.d.ts","esm2022":"./esm2022/icon-selector/icons/messaging/c8y-ngx-components-icon-selector-icons-messaging.mjs","esm":"./esm2022/icon-selector/icons/messaging/c8y-ngx-components-icon-selector-icons-messaging.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-messaging.mjs"},"./icon-selector/icons/multimedia":{"types":"./icon-selector/icons/multimedia/index.d.ts","esm2022":"./esm2022/icon-selector/icons/multimedia/c8y-ngx-components-icon-selector-icons-multimedia.mjs","esm":"./esm2022/icon-selector/icons/multimedia/c8y-ngx-components-icon-selector-icons-multimedia.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-multimedia.mjs"},"./icon-selector/icons/network":{"types":"./icon-selector/icons/network/index.d.ts","esm2022":"./esm2022/icon-selector/icons/network/c8y-ngx-components-icon-selector-icons-network.mjs","esm":"./esm2022/icon-selector/icons/network/c8y-ngx-components-icon-selector-icons-network.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-network.mjs"},"./icon-selector/icons/office":{"types":"./icon-selector/icons/office/index.d.ts","esm2022":"./esm2022/icon-selector/icons/office/c8y-ngx-components-icon-selector-icons-office.mjs","esm":"./esm2022/icon-selector/icons/office/c8y-ngx-components-icon-selector-icons-office.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-office.mjs"},"./icon-selector/icons/people":{"types":"./icon-selector/icons/people/index.d.ts","esm2022":"./esm2022/icon-selector/icons/people/c8y-ngx-components-icon-selector-icons-people.mjs","esm":"./esm2022/icon-selector/icons/people/c8y-ngx-components-icon-selector-icons-people.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-people.mjs"},"./icon-selector/icons/platform":{"types":"./icon-selector/icons/platform/index.d.ts","esm2022":"./esm2022/icon-selector/icons/platform/c8y-ngx-components-icon-selector-icons-platform.mjs","esm":"./esm2022/icon-selector/icons/platform/c8y-ngx-components-icon-selector-icons-platform.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-platform.mjs"},"./icon-selector/icons/programming":{"types":"./icon-selector/icons/programming/index.d.ts","esm2022":"./esm2022/icon-selector/icons/programming/c8y-ngx-components-icon-selector-icons-programming.mjs","esm":"./esm2022/icon-selector/icons/programming/c8y-ngx-components-icon-selector-icons-programming.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-programming.mjs"},"./icon-selector/icons/security":{"types":"./icon-selector/icons/security/index.d.ts","esm2022":"./esm2022/icon-selector/icons/security/c8y-ngx-components-icon-selector-icons-security.mjs","esm":"./esm2022/icon-selector/icons/security/c8y-ngx-components-icon-selector-icons-security.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-security.mjs"},"./icon-selector/icons/transport":{"types":"./icon-selector/icons/transport/index.d.ts","esm2022":"./esm2022/icon-selector/icons/transport/c8y-ngx-components-icon-selector-icons-transport.mjs","esm":"./esm2022/icon-selector/icons/transport/c8y-ngx-components-icon-selector-icons-transport.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-transport.mjs"},"./icon-selector/icons/userInterface":{"types":"./icon-selector/icons/userInterface/index.d.ts","esm2022":"./esm2022/icon-selector/icons/userInterface/c8y-ngx-components-icon-selector-icons-userInterface.mjs","esm":"./esm2022/icon-selector/icons/userInterface/c8y-ngx-components-icon-selector-icons-userInterface.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-userInterface.mjs"},"./icon-selector/icons/weather":{"types":"./icon-selector/icons/weather/index.d.ts","esm2022":"./esm2022/icon-selector/icons/weather/c8y-ngx-components-icon-selector-icons-weather.mjs","esm":"./esm2022/icon-selector/icons/weather/c8y-ngx-components-icon-selector-icons-weather.mjs","default":"./fesm2022/c8y-ngx-components-icon-selector-icons-weather.mjs"},"./protocol-lwm2m/components/bootstrap-parameters":{"types":"./protocol-lwm2m/components/bootstrap-parameters/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/components/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","esm":"./esm2022/protocol-lwm2m/components/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs"},"./protocol-lwm2m/components/configuration":{"types":"./protocol-lwm2m/components/configuration/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/components/configuration/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs","esm":"./esm2022/protocol-lwm2m/components/configuration/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-components-configuration.mjs"},"./protocol-lwm2m/components/post-registration-operations":{"types":"./protocol-lwm2m/components/post-registration-operations/index.d.ts","esm2022":"./esm2022/protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","esm":"./esm2022/protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","default":"./fesm2022/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs"},"./remote-access/ssh/remote-access-ssh-endpoint-modal":{"types":"./remote-access/ssh/remote-access-ssh-endpoint-modal/index.d.ts","esm2022":"./esm2022/remote-access/ssh/remote-access-ssh-endpoint-modal/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs","esm":"./esm2022/remote-access/ssh/remote-access-ssh-endpoint-modal/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs"},"./remote-access/vnc/remote-access-vnc-endpoint-modal":{"types":"./remote-access/vnc/remote-access-vnc-endpoint-modal/index.d.ts","esm2022":"./esm2022/remote-access/vnc/remote-access-vnc-endpoint-modal/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs","esm":"./esm2022/remote-access/vnc/remote-access-vnc-endpoint-modal/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs"},"./remote-access/vnc/vnc-viewer":{"types":"./remote-access/vnc/vnc-viewer/index.d.ts","esm2022":"./esm2022/remote-access/vnc/vnc-viewer/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs","esm":"./esm2022/remote-access/vnc/vnc-viewer/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs","default":"./fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs"},"./widgets/definitions/applications":{"types":"./widgets/definitions/applications/index.d.ts","esm2022":"./esm2022/widgets/definitions/applications/c8y-ngx-components-widgets-definitions-applications.mjs","esm":"./esm2022/widgets/definitions/applications/c8y-ngx-components-widgets-definitions-applications.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-applications.mjs"},"./widgets/definitions/asset-notes":{"types":"./widgets/definitions/asset-notes/index.d.ts","esm2022":"./esm2022/widgets/definitions/asset-notes/c8y-ngx-components-widgets-definitions-asset-notes.mjs","esm":"./esm2022/widgets/definitions/asset-notes/c8y-ngx-components-widgets-definitions-asset-notes.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-asset-notes.mjs"},"./widgets/definitions/cockpit-legacy-welcome":{"types":"./widgets/definitions/cockpit-legacy-welcome/index.d.ts","esm2022":"./esm2022/widgets/definitions/cockpit-legacy-welcome/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","esm":"./esm2022/widgets/definitions/cockpit-legacy-welcome/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs"},"./widgets/definitions/cockpit-welcome":{"types":"./widgets/definitions/cockpit-welcome/index.d.ts","esm2022":"./esm2022/widgets/definitions/cockpit-welcome/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","esm":"./esm2022/widgets/definitions/cockpit-welcome/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs"},"./widgets/definitions/datapoints-graph":{"types":"./widgets/definitions/datapoints-graph/index.d.ts","esm2022":"./esm2022/widgets/definitions/datapoints-graph/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs","esm":"./esm2022/widgets/definitions/datapoints-graph/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs"},"./widgets/definitions/datapoints-table":{"types":"./widgets/definitions/datapoints-table/index.d.ts","esm2022":"./esm2022/widgets/definitions/datapoints-table/c8y-ngx-components-widgets-definitions-datapoints-table.mjs","esm":"./esm2022/widgets/definitions/datapoints-table/c8y-ngx-components-widgets-definitions-datapoints-table.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs"},"./widgets/definitions/device-control-message":{"types":"./widgets/definitions/device-control-message/index.d.ts","esm2022":"./esm2022/widgets/definitions/device-control-message/c8y-ngx-components-widgets-definitions-device-control-message.mjs","esm":"./esm2022/widgets/definitions/device-control-message/c8y-ngx-components-widgets-definitions-device-control-message.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-device-control-message.mjs"},"./widgets/definitions/device-management-welcome":{"types":"./widgets/definitions/device-management-welcome/index.d.ts","esm2022":"./esm2022/widgets/definitions/device-management-welcome/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","esm":"./esm2022/widgets/definitions/device-management-welcome/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs"},"./widgets/definitions/help-and-service":{"types":"./widgets/definitions/help-and-service/index.d.ts","esm2022":"./esm2022/widgets/definitions/help-and-service/c8y-ngx-components-widgets-definitions-help-and-service.mjs","esm":"./esm2022/widgets/definitions/help-and-service/c8y-ngx-components-widgets-definitions-help-and-service.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-help-and-service.mjs"},"./widgets/definitions/image":{"types":"./widgets/definitions/image/index.d.ts","esm2022":"./esm2022/widgets/definitions/image/c8y-ngx-components-widgets-definitions-image.mjs","esm":"./esm2022/widgets/definitions/image/c8y-ngx-components-widgets-definitions-image.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-image.mjs"},"./widgets/definitions/info-gauge":{"types":"./widgets/definitions/info-gauge/index.d.ts","esm2022":"./esm2022/widgets/definitions/info-gauge/c8y-ngx-components-widgets-definitions-info-gauge.mjs","esm":"./esm2022/widgets/definitions/info-gauge/c8y-ngx-components-widgets-definitions-info-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-info-gauge.mjs"},"./widgets/definitions/kpi":{"types":"./widgets/definitions/kpi/index.d.ts","esm2022":"./esm2022/widgets/definitions/kpi/c8y-ngx-components-widgets-definitions-kpi.mjs","esm":"./esm2022/widgets/definitions/kpi/c8y-ngx-components-widgets-definitions-kpi.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-kpi.mjs"},"./widgets/definitions/linear-gauge":{"types":"./widgets/definitions/linear-gauge/index.d.ts","esm2022":"./esm2022/widgets/definitions/linear-gauge/c8y-ngx-components-widgets-definitions-linear-gauge.mjs","esm":"./esm2022/widgets/definitions/linear-gauge/c8y-ngx-components-widgets-definitions-linear-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-linear-gauge.mjs"},"./widgets/definitions/map":{"types":"./widgets/definitions/map/index.d.ts","esm2022":"./esm2022/widgets/definitions/map/c8y-ngx-components-widgets-definitions-map.mjs","esm":"./esm2022/widgets/definitions/map/c8y-ngx-components-widgets-definitions-map.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-map.mjs"},"./widgets/definitions/markdown":{"types":"./widgets/definitions/markdown/index.d.ts","esm2022":"./esm2022/widgets/definitions/markdown/c8y-ngx-components-widgets-definitions-markdown.mjs","esm":"./esm2022/widgets/definitions/markdown/c8y-ngx-components-widgets-definitions-markdown.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-markdown.mjs"},"./widgets/definitions/silo":{"types":"./widgets/definitions/silo/index.d.ts","esm2022":"./esm2022/widgets/definitions/silo/c8y-ngx-components-widgets-definitions-silo.mjs","esm":"./esm2022/widgets/definitions/silo/c8y-ngx-components-widgets-definitions-silo.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-silo.mjs"},"./widgets/definitions/three-d-rotation":{"types":"./widgets/definitions/three-d-rotation/index.d.ts","esm2022":"./esm2022/widgets/definitions/three-d-rotation/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","esm":"./esm2022/widgets/definitions/three-d-rotation/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs"},"./widgets/implementations/alarms":{"types":"./widgets/implementations/alarms/index.d.ts","esm2022":"./esm2022/widgets/implementations/alarms/c8y-ngx-components-widgets-implementations-alarms.mjs","esm":"./esm2022/widgets/implementations/alarms/c8y-ngx-components-widgets-implementations-alarms.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs"},"./widgets/implementations/asset-notes":{"types":"./widgets/implementations/asset-notes/index.d.ts","esm2022":"./esm2022/widgets/implementations/asset-notes/c8y-ngx-components-widgets-implementations-asset-notes.mjs","esm":"./esm2022/widgets/implementations/asset-notes/c8y-ngx-components-widgets-implementations-asset-notes.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-asset-notes.mjs"},"./widgets/implementations/cockpit-legacy-welcome":{"types":"./widgets/implementations/cockpit-legacy-welcome/index.d.ts","esm2022":"./esm2022/widgets/implementations/cockpit-legacy-welcome/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","esm":"./esm2022/widgets/implementations/cockpit-legacy-welcome/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs"},"./widgets/implementations/cockpit-welcome":{"types":"./widgets/implementations/cockpit-welcome/index.d.ts","esm2022":"./esm2022/widgets/implementations/cockpit-welcome/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","esm":"./esm2022/widgets/implementations/cockpit-welcome/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs"},"./widgets/implementations/datapoints-graph":{"types":"./widgets/implementations/datapoints-graph/index.d.ts","esm2022":"./esm2022/widgets/implementations/datapoints-graph/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs","esm":"./esm2022/widgets/implementations/datapoints-graph/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs"},"./widgets/implementations/datapoints-table":{"types":"./widgets/implementations/datapoints-table/index.d.ts","esm2022":"./esm2022/widgets/implementations/datapoints-table/c8y-ngx-components-widgets-implementations-datapoints-table.mjs","esm":"./esm2022/widgets/implementations/datapoints-table/c8y-ngx-components-widgets-implementations-datapoints-table.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs"},"./widgets/implementations/device-control-message":{"types":"./widgets/implementations/device-control-message/index.d.ts","esm2022":"./esm2022/widgets/implementations/device-control-message/c8y-ngx-components-widgets-implementations-device-control-message.mjs","esm":"./esm2022/widgets/implementations/device-control-message/c8y-ngx-components-widgets-implementations-device-control-message.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-device-control-message.mjs"},"./widgets/implementations/device-management-welcome":{"types":"./widgets/implementations/device-management-welcome/index.d.ts","esm2022":"./esm2022/widgets/implementations/device-management-welcome/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","esm":"./esm2022/widgets/implementations/device-management-welcome/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs"},"./widgets/implementations/help-and-service-widget":{"types":"./widgets/implementations/help-and-service-widget/index.d.ts","esm2022":"./esm2022/widgets/implementations/help-and-service-widget/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","esm":"./esm2022/widgets/implementations/help-and-service-widget/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs"},"./widgets/implementations/image":{"types":"./widgets/implementations/image/index.d.ts","esm2022":"./esm2022/widgets/implementations/image/c8y-ngx-components-widgets-implementations-image.mjs","esm":"./esm2022/widgets/implementations/image/c8y-ngx-components-widgets-implementations-image.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-image.mjs"},"./widgets/implementations/info-gauge":{"types":"./widgets/implementations/info-gauge/index.d.ts","esm2022":"./esm2022/widgets/implementations/info-gauge/c8y-ngx-components-widgets-implementations-info-gauge.mjs","esm":"./esm2022/widgets/implementations/info-gauge/c8y-ngx-components-widgets-implementations-info-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs"},"./widgets/implementations/kpi":{"types":"./widgets/implementations/kpi/index.d.ts","esm2022":"./esm2022/widgets/implementations/kpi/c8y-ngx-components-widgets-implementations-kpi.mjs","esm":"./esm2022/widgets/implementations/kpi/c8y-ngx-components-widgets-implementations-kpi.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs"},"./widgets/implementations/linear-gauge":{"types":"./widgets/implementations/linear-gauge/index.d.ts","esm2022":"./esm2022/widgets/implementations/linear-gauge/c8y-ngx-components-widgets-implementations-linear-gauge.mjs","esm":"./esm2022/widgets/implementations/linear-gauge/c8y-ngx-components-widgets-implementations-linear-gauge.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs"},"./widgets/implementations/map":{"types":"./widgets/implementations/map/index.d.ts","esm2022":"./esm2022/widgets/implementations/map/c8y-ngx-components-widgets-implementations-map.mjs","esm":"./esm2022/widgets/implementations/map/c8y-ngx-components-widgets-implementations-map.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-map.mjs"},"./widgets/implementations/markdown":{"types":"./widgets/implementations/markdown/index.d.ts","esm2022":"./esm2022/widgets/implementations/markdown/c8y-ngx-components-widgets-implementations-markdown.mjs","esm":"./esm2022/widgets/implementations/markdown/c8y-ngx-components-widgets-implementations-markdown.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-markdown.mjs"},"./widgets/implementations/three-d-rotation":{"types":"./widgets/implementations/three-d-rotation/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs"},"./branding/shared/lazy/add-branding-modal":{"types":"./branding/shared/lazy/add-branding-modal/index.d.ts","esm2022":"./esm2022/branding/shared/lazy/add-branding-modal/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs","esm":"./esm2022/branding/shared/lazy/add-branding-modal/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs","default":"./fesm2022/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs"},"./widgets/definitions/alarms/alarm-list":{"types":"./widgets/definitions/alarms/alarm-list/index.d.ts","esm2022":"./esm2022/widgets/definitions/alarms/alarm-list/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs","esm":"./esm2022/widgets/definitions/alarms/alarm-list/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs"},"./widgets/definitions/alarms/all-critical-alarms":{"types":"./widgets/definitions/alarms/all-critical-alarms/index.d.ts","esm2022":"./esm2022/widgets/definitions/alarms/all-critical-alarms/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs","esm":"./esm2022/widgets/definitions/alarms/all-critical-alarms/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs"},"./widgets/definitions/alarms/recent-alarms":{"types":"./widgets/definitions/alarms/recent-alarms/index.d.ts","esm2022":"./esm2022/widgets/definitions/alarms/recent-alarms/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs","esm":"./esm2022/widgets/definitions/alarms/recent-alarms/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs","default":"./fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs"},"./widgets/implementations/three-d-rotation/lazy-box-model":{"types":"./widgets/implementations/three-d-rotation/lazy-box-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/lazy-box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/lazy-box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs"},"./widgets/implementations/three-d-rotation/lazy-phone-model":{"types":"./widgets/implementations/three-d-rotation/lazy-phone-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/lazy-phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/lazy-phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs"}},"sideEffects":false}
|