@c8y/ngx-components 1019.4.9 → 1019.4.11
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-grid-extension.service.d.ts","sourceRoot":"","sources":["../../device-grid/device-grid-extension.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EACL,gBAAgB,EAChB,oCAAoC,EAEpC,eAAe,EAEf,qBAAqB,EACrB,kBAAkB,EAEnB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,yBAAyB,GACjC,oBAAoB,GACpB,oBAAoB,EAAE,GACtB,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,2CAEnC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,CAAC,yBAAyB,CAAC,EAClD,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,4HAGtC;AAED;;GAEG;AACH,qBAGa,0BAA2B,SAAQ,oCAAoC,CAAC,oBAAoB,CAAC;IAItG,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,iBAAiB;gBAHzB,YAAY,EAAE,QAAQ,EACtB,OAAO,EAAE,qBAAqB,EACtB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,iBAAiB;IAM9C,SAAS,CAAC,oBAAoB,IAAI,UAAU,CAAC,oBAAoB,EAAE,CAAC;yCAXzD,0BAA0B;6CAA1B,0BAA0B;
|
|
1
|
+
{"version":3,"file":"device-grid-extension.service.d.ts","sourceRoot":"","sources":["../../device-grid/device-grid-extension.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EACL,gBAAgB,EAChB,oCAAoC,EAEpC,eAAe,EAEf,qBAAqB,EACrB,kBAAkB,EAEnB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,yBAAyB,GACjC,oBAAoB,GACpB,oBAAoB,EAAE,GACtB,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,2CAEnC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,CAAC,yBAAyB,CAAC,EAClD,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,4HAGtC;AAED;;GAEG;AACH,qBAGa,0BAA2B,SAAQ,oCAAoC,CAAC,oBAAoB,CAAC;IAItG,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,iBAAiB;gBAHzB,YAAY,EAAE,QAAQ,EACtB,OAAO,EAAE,qBAAqB,EACtB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,iBAAiB;IAM9C,SAAS,CAAC,oBAAoB,IAAI,UAAU,CAAC,oBAAoB,EAAE,CAAC;yCAXzD,0BAA0B;6CAA1B,0BAA0B;CAkCtC"}
|
|
@@ -49,14 +49,19 @@ export class DeviceGridExtensionService extends ExtensionPointWithoutStateForPlu
|
|
|
49
49
|
}
|
|
50
50
|
setupItemsObservable() {
|
|
51
51
|
return fromTriggerOnce(this.router, this.refresh$, [
|
|
52
|
-
() =>
|
|
53
|
-
{
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
() => {
|
|
53
|
+
const actions = flatten(this.injectors.map(injector => injector.get(HOOK_DEVICE_GRID_ACTION, [], { self: true })));
|
|
54
|
+
const hasDeleteAction = actions.some(action => action.type === "DELETE" /* BuiltInActionType.Delete */);
|
|
55
|
+
if (!hasDeleteAction) {
|
|
56
|
+
actions.push({
|
|
57
|
+
type: "DELETE" /* BuiltInActionType.Delete */,
|
|
58
|
+
deviceMatches: (_mo) => true,
|
|
59
|
+
onAction: (mo) => this.deviceGridService.delete(mo),
|
|
60
|
+
refreshAfterActionDone: true
|
|
61
|
+
});
|
|
58
62
|
}
|
|
59
|
-
|
|
63
|
+
return actions;
|
|
64
|
+
},
|
|
60
65
|
() => this.factories
|
|
61
66
|
]).pipe(shareReplay(1));
|
|
62
67
|
}
|
|
@@ -69,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
69
74
|
providedIn: 'root'
|
|
70
75
|
}]
|
|
71
76
|
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.PluginsResolveService }, { type: i2.Router }, { type: i3.DeviceGridService }]; } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWdyaWQtZXh0ZW5zaW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9kZXZpY2UtZ3JpZC9kZXZpY2UtZ3JpZC1leHRlbnNpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpDLE9BQU8sRUFFTCxvQ0FBb0MsRUFDcEMsZUFBZSxFQUVmLFdBQVcsRUFDWCxxQkFBcUIsRUFHdEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7QUF5QjFEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLElBQUksY0FBYyxDQUN2RCxzQkFBc0IsQ0FDdkIsQ0FBQztBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsTUFBa0QsRUFDbEQsT0FBcUM7SUFFckMsT0FBTyxXQUFXLENBQTRCLE1BQU0sRUFBRSx1QkFBdUIsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUMxRixDQUFDO0FBRUQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsb0NBQTBEO0lBQ3hHLFlBQ0UsWUFBc0IsRUFDdEIsT0FBOEIsRUFDdEIsTUFBYyxFQUNkLGlCQUFvQztRQUU1QyxLQUFLLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBSHJCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBRzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVTLG9CQUFvQjtRQUM1QixPQUFPLGVBQWUsQ0FBdUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3ZFLEdBQUcsRUFBRTtnQkFDSCxNQUFNLE9BQU8sR0FBMkIsT0FBTyxDQUM3QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FDMUYsQ0FBQztnQkFFRixNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksNENBQTZCLENBQUMsQ0FBQztnQkFFekYsSUFBSSxDQUFDLGVBQWUsRUFBRTtvQkFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQzt3QkFDWCxJQUFJLHlDQUEwQjt3QkFDOUIsYUFBYSxFQUFFLENBQUMsR0FBbUIsRUFBRSxFQUFFLENBQUMsSUFBSTt3QkFDNUMsUUFBUSxFQUFFLENBQUMsRUFBa0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7d0JBQ25FLHNCQUFzQixFQUFFLElBQUk7cUJBQzdCLENBQUMsQ0FBQztpQkFDSjtnQkFFRCxPQUFPLE9BQU8sQ0FBQztZQUNqQixDQUFDO1lBQ0QsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVM7U0FDckIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOytHQWpDVSwwQkFBMEI7bUhBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzs0RkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSU1hbmFnZWRPYmplY3QgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQge1xuICBFeHRlbnNpb25GYWN0b3J5LFxuICBFeHRlbnNpb25Qb2ludFdpdGhvdXRTdGF0ZUZvclBsdWdpbnMsXG4gIGZyb21UcmlnZ2VyT25jZSxcbiAgR2VuZXJpY0hvb2tUeXBlLFxuICBob29rR2VuZXJpYyxcbiAgUGx1Z2luc1Jlc29sdmVTZXJ2aWNlLFxuICBHZW5lcmljSG9va09wdGlvbnMsXG4gIEJ1aWx0SW5BY3Rpb25UeXBlXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgZmxhdHRlbiB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERldmljZUdyaWRBY3Rpb25Ib29rIH0gZnJvbSAnLi9kZXZpY2UtZ3JpZC5tb2RlbCc7XG5pbXBvcnQgeyBEZXZpY2VHcmlkU2VydmljZSB9IGZyb20gJy4vZGV2aWNlLWdyaWQuc2VydmljZSc7XG5cbi8qKlxuICogQW4gZXh0ZW5zaW9uIEhPT0sgY2FuIHVzZSBlaXRoZXIgYSBwdXJlIHZhbHVlOlxuICogYGBgdHlwZXNjcmlwdFxuICogIHsgcHJvdmlkZTogSE9PS19YLCB1c2VWYWx1ZTogeyAuLi5ob29rVmFsdWUgfSwgbXVsdGk6IHRydWUgfVxuICogYGBgXG4gKlxuICogT3IgYW4gYXJyYXkgdG8gZGlyZWN0bHkgcmVnaXN0ZXIgbXVsdGlwbGU6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiAgeyBwcm92aWRlOiBIT09LX1gsIHVzZVZhbHVlOiBbeyAuLi5ob29rVmFsdWVzIH1dLCBtdWx0aTogdHJ1ZSB9XG4gKiBgYGBcbiAqXG4gKiBPciBhbiBFeHRlbnNpb25GYWN0b3J5IHdoaWNoIGFsbG93cyB0byBkZWZpbmUgYSBnZXQoKSBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvblxuICogZ2V0cyBjYWxsZWQgb24gZWFjaCBuYXZpZ2F0aW9uIHdpdGggdGhlIGN1cnJlbnQgcm91dGUgYW5kIGNhbiByZXR1cm4gdmFsdWVzXG4gKiBhc3luYyAob2JzZXJ2YWJsZSBvciBwcm9taXNlKS5cbiAqIGBgYHR5cGVzY3JpcHRcbiAqICB7IHByb3ZpZGU6IEhPT0tfWCwgdXNlRmFjdG9yeTogeyBnZXQ6IChyb3V0ZSkgPT4gZG9Tb21ldGhpbmdBc3luYyhyb3V0ZSkgfSwgbXVsdGk6IHRydWUgfVxuICogYGBgXG4gKi9cbmV4cG9ydCB0eXBlIERldmljZUdyaWRBY3Rpb25FeHRlbnNpb24gPVxuICB8IERldmljZUdyaWRBY3Rpb25Ib29rXG4gIHwgRGV2aWNlR3JpZEFjdGlvbkhvb2tbXVxuICB8IEV4dGVuc2lvbkZhY3Rvcnk8RGV2aWNlR3JpZEFjdGlvbkhvb2s+O1xuXG4vKipcbiAqIEEgaG9vayB0byB1c2UgZm9yIE11bHRpIFByb3ZpZGVyIGV4dGVuc2lvbi5cbiAqIEBkZXByZWNhdGVkIENvbnNpZGVyIHVzaW5nIHRoZSBgaG9va0RldmljZUdyaWRBY3Rpb25gIGZ1bmN0aW9uIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBjb25zdCBIT09LX0RFVklDRV9HUklEX0FDVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxEZXZpY2VHcmlkQWN0aW9uRXh0ZW5zaW9uPihcbiAgJ0RldmljZUdyaWRBY3Rpb25Ib29rJ1xuKTtcblxuLyoqXG4gKiBZb3UgY2FuIGVpdGhlciBwcm92aWRlIGEgc2luZ2xlIGBEZXZpY2VHcmlkQWN0aW9uRXh0ZW5zaW9uYCBhcyBwYXJhbWV0ZXI6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiAgaG9va0RldmljZUdyaWRBY3Rpb24oLi4uKVxuICogYGBgXG4gKlxuICogT3IgYW4gYXJyYXkgdG8gZGlyZWN0bHkgcmVnaXN0ZXIgbXVsdGlwbGU6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiAgaG9va0RldmljZUdyaWRBY3Rpb24oWy4uLl0pXG4gKiBgYGBcbiAqXG4gKiBPciB5b3UgcHJvdmlkZSBhbiBTZXJ2aWNlIHRoYXQgaW1wbGVtZW50cyBgRXh0ZW5zaW9uRmFjdG9yeTxEZXZpY2VHcmlkQWN0aW9uRXh0ZW5zaW9uPmBcbiAqIGBgYHR5cGVzY3JpcHRcbiAqICBleHBvcnQgY2xhc3MgTXlEZXZpY2VHcmlkQWN0aW9uRmFjdG9yeSBpbXBsZW1lbnRzIEV4dGVuc2lvbkZhY3Rvcnk8RGV2aWNlR3JpZEFjdGlvbkV4dGVuc2lvbj4gey4uLn1cbiAqICAuLi5cbiAqICBob29rRGV2aWNlR3JpZEFjdGlvbihNeURldmljZUdyaWRBY3Rpb25GYWN0b3J5KVxuICogYGBgXG4gKiBBIHR5cGVkIGFsdGVybmF0aXZlIHRvIGBIT09LX0RFVklDRV9HUklEX0FDVElPTl9ERUxFVEVgLlxuICogQHBhcmFtIGFjdGlvbiBUaGUgYERldmljZUdyaWREZWxldGVFeHRlbnNpb25gJ3Mgb3IgYEV4dGVuc2lvbkZhY3RvcnlgIHRvIGJlIHByb3ZpZGVkLlxuICogQHJldHVybnMgQW4gYFByb3ZpZGVyYCB0byBiZSBwcm92aWRlZCBpbiB5b3VyIG1vZHVsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhvb2tEZXZpY2VHcmlkQWN0aW9uKFxuICBhY3Rpb246IEdlbmVyaWNIb29rVHlwZTxEZXZpY2VHcmlkQWN0aW9uRXh0ZW5zaW9uPixcbiAgb3B0aW9ucz86IFBhcnRpYWw8R2VuZXJpY0hvb2tPcHRpb25zPlxuKSB7XG4gIHJldHVybiBob29rR2VuZXJpYzxEZXZpY2VHcmlkQWN0aW9uRXh0ZW5zaW9uPihhY3Rpb24sIEhPT0tfREVWSUNFX0dSSURfQUNUSU9OLCBvcHRpb25zKTtcbn1cblxuLyoqXG4gKiBBIHNlcnZpY2Ugd2hpY2ggZGVmaW5lcyBkZXZpY2UgZ3JpZCBhY3Rpb24gb3B0aW9ucy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGV2aWNlR3JpZEV4dGVuc2lvblNlcnZpY2UgZXh0ZW5kcyBFeHRlbnNpb25Qb2ludFdpdGhvdXRTdGF0ZUZvclBsdWdpbnM8RGV2aWNlR3JpZEFjdGlvbkhvb2s+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcm9vdEluamVjdG9yOiBJbmplY3RvcixcbiAgICBwbHVnaW5zOiBQbHVnaW5zUmVzb2x2ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGRldmljZUdyaWRTZXJ2aWNlOiBEZXZpY2VHcmlkU2VydmljZVxuICApIHtcbiAgICBzdXBlcihyb290SW5qZWN0b3IsIHBsdWdpbnMpO1xuICAgIHRoaXMuaXRlbXMkID0gdGhpcy5zZXR1cEl0ZW1zT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldHVwSXRlbXNPYnNlcnZhYmxlKCk6IE9ic2VydmFibGU8RGV2aWNlR3JpZEFjdGlvbkhvb2tbXT4ge1xuICAgIHJldHVybiBmcm9tVHJpZ2dlck9uY2U8RGV2aWNlR3JpZEFjdGlvbkhvb2s+KHRoaXMucm91dGVyLCB0aGlzLnJlZnJlc2gkLCBbXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGFjdGlvbnM6IERldmljZUdyaWRBY3Rpb25Ib29rW10gPSBmbGF0dGVuKFxuICAgICAgICAgIHRoaXMuaW5qZWN0b3JzLm1hcChpbmplY3RvciA9PiBpbmplY3Rvci5nZXQoSE9PS19ERVZJQ0VfR1JJRF9BQ1RJT04sIFtdLCB7IHNlbGY6IHRydWUgfSkpXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgaGFzRGVsZXRlQWN0aW9uID0gYWN0aW9ucy5zb21lKGFjdGlvbiA9PiBhY3Rpb24udHlwZSA9PT0gQnVpbHRJbkFjdGlvblR5cGUuRGVsZXRlKTtcblxuICAgICAgICBpZiAoIWhhc0RlbGV0ZUFjdGlvbikge1xuICAgICAgICAgIGFjdGlvbnMucHVzaCh7XG4gICAgICAgICAgICB0eXBlOiBCdWlsdEluQWN0aW9uVHlwZS5EZWxldGUsXG4gICAgICAgICAgICBkZXZpY2VNYXRjaGVzOiAoX21vOiBJTWFuYWdlZE9iamVjdCkgPT4gdHJ1ZSxcbiAgICAgICAgICAgIG9uQWN0aW9uOiAobW86IElNYW5hZ2VkT2JqZWN0KSA9PiB0aGlzLmRldmljZUdyaWRTZXJ2aWNlLmRlbGV0ZShtbyksXG4gICAgICAgICAgICByZWZyZXNoQWZ0ZXJBY3Rpb25Eb25lOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgIH0sXG4gICAgICAoKSA9PiB0aGlzLmZhY3Rvcmllc1xuICAgIF0pLnBpcGUoc2hhcmVSZXBsYXkoMSkpO1xuICB9XG59XG4iXX0=
|
|
@@ -1077,14 +1077,19 @@ class DeviceGridExtensionService extends ExtensionPointWithoutStateForPlugins {
|
|
|
1077
1077
|
}
|
|
1078
1078
|
setupItemsObservable() {
|
|
1079
1079
|
return fromTriggerOnce(this.router, this.refresh$, [
|
|
1080
|
-
() =>
|
|
1081
|
-
{
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1080
|
+
() => {
|
|
1081
|
+
const actions = flatten(this.injectors.map(injector => injector.get(HOOK_DEVICE_GRID_ACTION, [], { self: true })));
|
|
1082
|
+
const hasDeleteAction = actions.some(action => action.type === "DELETE" /* BuiltInActionType.Delete */);
|
|
1083
|
+
if (!hasDeleteAction) {
|
|
1084
|
+
actions.push({
|
|
1085
|
+
type: "DELETE" /* BuiltInActionType.Delete */,
|
|
1086
|
+
deviceMatches: (_mo) => true,
|
|
1087
|
+
onAction: (mo) => this.deviceGridService.delete(mo),
|
|
1088
|
+
refreshAfterActionDone: true
|
|
1089
|
+
});
|
|
1086
1090
|
}
|
|
1087
|
-
|
|
1091
|
+
return actions;
|
|
1092
|
+
},
|
|
1088
1093
|
() => this.factories
|
|
1089
1094
|
]).pipe(shareReplay(1));
|
|
1090
1095
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c8y-ngx-components-device-grid.mjs","sources":["../../device-grid/columns/column-util.service.ts","../../device-grid/columns/alarms.cell-renderer.component.ts","../../device-grid/columns/alarms.cell-renderer.component.html","../../device-grid/columns/alarms.header-cell-renderer.component.ts","../../device-grid/columns/alarms.device-grid-column.ts","../../device-grid/columns/group.cell-renderer.component.ts","../../device-grid/columns/group.cell-renderer.component.html","../../device-grid/columns/group.filtering-form-renderer.component.ts","../../device-grid/columns/group.filtering-form-renderer.component.html","../../device-grid/columns/group.device-grid-column.ts","../../device-grid/columns/imei.device-grid-column.ts","../../device-grid/columns/model.cell-renderer.component.ts","../../device-grid/columns/model.device-grid-column.ts","../../device-grid/columns/name.cell-renderer.component.ts","../../device-grid/columns/name.device-grid-column.ts","../../device-grid/columns/registration-date.cell-renderer.component.ts","../../device-grid/columns/registration-date.device-grid-column.ts","../../device-grid/columns/serial-number.cell-renderer.component.ts","../../device-grid/columns/serial-number.device-grid-column.ts","../../device-grid/columns/status.cell-renderer.component.ts","../../device-grid/columns/status.device-grid-column.ts","../../device-grid/columns/system-id.device-grid-column.ts","../../device-grid/columns/type.device-grid-column.ts","../../device-grid/device-grid.service.ts","../../device-grid/device-grid-extension.service.ts","../../device-grid/device-grid.component.ts","../../device-grid/device-grid.component.html","../../device-grid/device-grid.module.ts","../../device-grid/c8y-ngx-components-device-grid.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport { TranslateService } from '@ngx-translate/core';\nimport { map, remove, sortBy } from 'lodash-es';\n\n/**\n * Service contains logic extracted from the device-grid service to avoid circular dependency MTM-40239.\n */\n\n@Injectable({ providedIn: 'root' })\nexport class ColumnUtilService {\n constructor(protected translateService: TranslateService) {}\n\n getAlarmsHref(device: IManagedObject): string {\n return `${this.getHref(device)}/alarms`;\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n if (groupOrDevice.c8y_IsDeviceGroup || groupOrDevice.c8y_IsDynamicGroup) {\n return `${prefix}group/${groupOrDevice.id}`;\n }\n return `${prefix}device/${groupOrDevice.id}`;\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n const assetParentsReferences = device.assetParents.references;\n const assetParents = map(assetParentsReferences, 'managedObject');\n const sortedByName = sortBy(assetParents, ['name']);\n const featuredItems = remove(sortedByName, { id: featuredParentId });\n const items = featuredItems.concat(sortedByName);\n const names = map(items, 'name');\n return names.join(', ');\n }\n\n getModel(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n return hardware && hardware.model;\n }\n\n getProperName(device: IManagedObject): string {\n const { id, name } = device;\n return name ? name : this.translateService.instant('Device {{id}}', { id });\n }\n\n getSerialNumber(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n const serialPropertyName = this.isVendme(device) ? 'serial' : 'serialNumber';\n return hardware && hardware[serialPropertyName];\n }\n\n private getHardware(device: IManagedObject): any {\n const hardwarePropertyName = this.isVendme(device)\n ? 'com_nsn_startups_vendme_fragments_VendingMachineTypeInfo'\n : 'c8y_Hardware';\n return device && device[hardwarePropertyName];\n }\n\n private isVendme(device: IManagedObject) {\n return device.type === 'com_nsn_startups_vendme_VendingMachine';\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext, gettext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n templateUrl: './alarms.cell-renderer.component.html'\n})\nexport class AlarmsCellRendererComponent {\n readonly linkAriaLabel = gettext('See alarms for device \"{{ name }}\"');\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","<a\n class=\"d-flex a-i-center flex-wrap gap-4 no-decoration\"\n [href]=\"columnUtilService.getAlarmsHref(context.item)\"\n [attr.aria-label]=\"\n linkAriaLabel | translate: { name: columnUtilService.getProperName(context.item) }\n \"\n *ngIf=\"\n context.item.c8y_ActiveAlarmsStatus?.critical ||\n context.item.c8y_ActiveAlarmsStatus?.major ||\n context.item.c8y_ActiveAlarmsStatus?.minor ||\n context.item.c8y_ActiveAlarmsStatus?.warning\n \"\n>\n <span\n class=\"c8y-icon-badge\"\n data-cy=\"alarms.cell-renderer--critical-alarm-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.critical }} {{ 'Critical alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.critical\"\n >\n <i [c8yIcon]=\"'exclamation-circle'\" class=\"status critical stroked-icon\" data-cy=\"alarms.cell-renderer--critical-alarm-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.critical }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.major }} {{ 'Major alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.major\"\n >\n <i [c8yIcon]=\"'warning'\" class=\"status major stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.major }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.minor }} {{ 'Minor alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.minor\"\n >\n <i [c8yIcon]=\"'high-priority'\" class=\"status minor stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.minor }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.warning }} {{ 'Warning alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.warning\"\n >\n <i [c8yIcon]=\"'info-circle'\" class=\"status warning stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.warning }}</span>\n </span>\n</a>\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\n\n@Component({\n template: `\n <div class=\"d-flex\">\n <span class=\"text-truncate\" [title]=\"context.property.header | translate\">\n {{ context.property.header | translate }}\n </span>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n type=\"button\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"'Only includes alarms for the parent device.' | translate\"\n placement=\"bottom\"\n triggers=\"focus\"\n container=\"body\"\n (click)=\"$event.stopPropagation()\"\n >\n <i c8yIcon=\"question-circle-o\"></i>\n </button>\n </div>\n `\n})\nexport class AlarmsHeaderCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { BaseColumn, ColumnConfig, gettext } from '@c8y/ngx-components';\nimport { map } from 'lodash-es';\nimport { AlarmsCellRendererComponent } from './alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './alarms.header-cell-renderer.component';\n\nexport class AlarmsDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'alarms';\n this.header = gettext('Alarms');\n this.headerCellRendererComponent = AlarmsHeaderCellRendererComponent;\n this.cellRendererComponent = AlarmsCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n schema: {\n type: 'object',\n properties: {\n alarm: {\n type: 'object',\n title: gettext('Show items'),\n properties: {\n critical: {\n type: 'switch',\n title: gettext('With active critical alarms')\n },\n major: {\n type: 'switch',\n title: gettext('With active major alarms')\n },\n minor: {\n type: 'switch',\n title: gettext('With active minor alarms')\n },\n warning: {\n type: 'switch',\n title: gettext('With active warnings')\n },\n none: {\n type: 'switch',\n title: gettext('With no active alarms or warnings')\n }\n }\n }\n }\n },\n getFilter(model) {\n const filter: any = {};\n const ors = [];\n if (model.alarm.critical) {\n ors.push({ 'c8y_ActiveAlarmsStatus.critical': { __gt: 0 } });\n }\n if (model.alarm.major) {\n ors.push({ 'c8y_ActiveAlarmsStatus.major': { __gt: 0 } });\n }\n if (model.alarm.minor) {\n ors.push({ 'c8y_ActiveAlarmsStatus.minor': { __gt: 0 } });\n }\n if (model.alarm.warning) {\n ors.push({ 'c8y_ActiveAlarmsStatus.warning': { __gt: 0 } });\n }\n if (model.alarm.none) {\n ors.push({ __not: { __has: 'c8y_ActiveAlarmsStatus' } });\n ors.push({\n __and: map(['critical', 'major', 'minor', 'warning'], sev => {\n const zero = {};\n const has = { __not: { __has: undefined } };\n const key = `c8y_ActiveAlarmsStatus.${sev}`;\n zero[key] = 0;\n has.__not.__has = key;\n return { __or: [zero, has] };\n })\n });\n }\n if (ors.length) {\n filter.__or = ors;\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [\n { path: 'c8y_ActiveAlarmsStatus.critical' },\n { path: 'c8y_ActiveAlarmsStatus.major' },\n { path: 'c8y_ActiveAlarmsStatus.minor' },\n { path: 'c8y_ActiveAlarmsStatus.warning' }\n ]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n templateUrl: './group.cell-renderer.component.html'\n})\nexport class GroupCellRendererComponent {\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","<span\n title=\"{{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\"\n>\n {{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\n</span>\n","import { Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';\nimport { Column, FilteringFormRendererContext } from '@c8y/ngx-components';\nimport { cloneDeep } from 'lodash-es';\n\n@Component({\n templateUrl: './group.filtering-form-renderer.component.html'\n})\nexport class GroupFilteringFormRendererComponent implements OnInit {\n @ViewChild('assetSelector', { static: false, read: ElementRef }) assetSelector: ElementRef;\n model: any;\n preselected: string[] = [];\n\n constructor(public context: FilteringFormRendererContext) {}\n\n @HostListener('keyup.enter', ['$event']) onEnterKeyUp(event: KeyboardEvent) {\n event.stopPropagation();\n this.applyFilter();\n }\n @HostListener('keydown.escape', ['$event']) onEscapeKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n this.resetFilter();\n }\n\n ngOnInit() {\n const column: Column = this.context.property;\n this.model = cloneDeep(column.externalFilterQuery || {});\n this.preselected = this.model.selectedNodes || [];\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n try {\n this.assetSelector.nativeElement.querySelector('input').focus();\n } catch (ex) {\n // intended empty\n }\n }, 250);\n }\n\n applyFilter() {\n this.context.applyFilter({\n externalFilterQuery: this.model\n });\n }\n\n resetFilter() {\n this.context.resetFilter();\n }\n\n selectionChanged(nodes) {\n this.model.selectedNodes = nodes.items;\n }\n}\n","<c8y-asset-selector\n #assetSelector\n [config]=\"{\n groupsOnly: true,\n multi: true,\n groupsSelectable: true,\n search: true\n }\"\n [selected]=\"preselected\"\n (onSelected)=\"selectionChanged($event)\"\n class=\"bg-component\"\n></c8y-asset-selector>\n\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n (click)=\"resetFilter()\"\n title=\"{{ 'Reset' | translate }}\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n (click)=\"applyFilter()\"\n title=\"{{ 'Apply' | translate }}\"\n translate\n >\n Apply\n </button>\n</div>\n","import { IManagedObject } from '@c8y/client';\nimport {\n BaseColumn,\n ColumnConfig,\n FilterChip,\n gettext,\n PartialFilterChipGenerationType\n} from '@c8y/ngx-components';\nimport { GroupCellRendererComponent } from './group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './group.filtering-form-renderer.component';\n\nexport class GroupDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'group';\n this.header = gettext('Group');\n this.cellRendererComponent = GroupCellRendererComponent;\n this.filteringFormRendererComponent = GroupFilteringFormRendererComponent;\n this.filterable = true;\n this.filteringConfig = {\n generateChips(model): PartialFilterChipGenerationType[] {\n if (model.selectedNodes) {\n return model.selectedNodes.map(mo => ({\n displayValue: mo.name,\n value: mo,\n remove(): Partial<FilterChip> {\n const { externalFilterQuery, columnName, value } = this;\n const nodes = externalFilterQuery.selectedNodes.filter(node => node.id !== value.id);\n\n return {\n externalFilterQuery: { selectedNodes: nodes },\n columnName: columnName\n };\n }\n }));\n }\n },\n getFilter(model) {\n const filter: any = {};\n if (model.selectedNodes) {\n filter.__or = model.selectedNodes.map((mo: IManagedObject) => {\n if (mo.c8y_DeviceQueryString) {\n return { __useFilterQueryString: mo.c8y_DeviceQueryString };\n }\n return { __bygroupid: mo.id };\n });\n }\n return filter;\n }\n };\n this.sortable = false;\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class ImeiDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'c8y_Mobile.imei';\n this.name = 'imei';\n this.header = gettext('IMEI');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'imeis',\n label: gettext('Show items with IMEI'),\n addText: gettext('Add next`IMEI`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '46543432321'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.imeis.length) {\n filter[this.path] = { __in: model.imeis };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getModel(context.item) }} `\n})\nexport class ModelCellRendererComponent {\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { ModelCellRendererComponent } from './model.cell-renderer.component';\n\nexport class ModelDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareModelPath = 'c8y_Hardware.model';\n const vendingModelPath = 'com_nsn_startups_vendme_fragments_VendingMachineTypeInfo.model';\n\n this.name = 'model';\n this.header = gettext('Model');\n this.cellRendererComponent = ModelCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'models',\n label: gettext('Show items with model'),\n addText: gettext('Add next`model`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: 'NTC-220'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.models.length) {\n filter.__or = {\n [hardwareModelPath]: { __in: model.models },\n [vendingModelPath]: { __in: model.models }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareModelPath }, { path: vendingModelPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: `\n <a\n class=\"interact\"\n title=\"{{ columnUtilService.getProperName(context.item) }}\"\n [href]=\"columnUtilService.getHref(context.item)\"\n >\n {{ columnUtilService.getProperName(context.item) }}\n </a>\n `\n})\nexport class NameCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n ColumnDataRecordClassName,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { NameCellRendererComponent } from './name.cell-renderer.component';\n\nexport class NameDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'name';\n this.path = 'name';\n this.header = gettext('Name');\n this.cellCSSClassName = ColumnDataRecordClassName.Header;\n this.cellRendererComponent = NameCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'names',\n label: gettext('Show items with name'),\n addText: gettext('Add next`name`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('My device`DEVICE_NAME`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.names.length) {\n filter.name = { __in: model.names };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\n\n@Component({\n template: ` {{ context.value | c8yDate }} `\n})\nexport class RegistrationDateCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { BaseColumn, ColumnConfig, gettext } from '@c8y/ngx-components';\nimport { RegistrationDateCellRendererComponent } from './registration-date.cell-renderer.component';\n\nexport class RegistrationDateDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'creationTime';\n this.name = 'registrationDate';\n this.header = gettext('Registration date');\n this.cellRendererComponent = RegistrationDateCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n key: 'registrationDate',\n templateOptions: {\n label: gettext('Show items registered`between dates`')\n },\n fieldGroup: [\n {\n type: 'date-time',\n key: 'after',\n templateOptions: {\n label: gettext('from`date`')\n },\n expressionProperties: {\n 'templateOptions.maxDate': (model: any) => model?.before\n }\n },\n {\n type: 'date-time',\n key: 'before',\n templateOptions: {\n label: gettext('to`date`')\n },\n expressionProperties: {\n 'templateOptions.minDate': (model: any) => model?.after\n }\n }\n ]\n }\n ],\n formGroup: new FormGroup({}),\n getFilter: model => {\n const filter: any = {};\n const dates = model && model.registrationDate;\n if (dates && (dates.after || dates.before)) {\n filter.__and = [];\n if (dates.after) {\n const after = this.formatDate(dates.after);\n filter.__and.push({\n __or: {\n [this.path]: { __gt: after },\n [`${this.path}.date`]: { __gt: after }\n }\n });\n }\n if (dates.before) {\n const before = this.formatDate(dates.before);\n filter.__and.push({\n __or: {\n [this.path]: { __lt: before },\n [`${this.path}.date`]: { __lt: before }\n }\n });\n }\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: `${this.path}.date` }, { path: this.path }]\n };\n }\n\n protected formatDate(dateToFormat: string): string {\n return new Date(dateToFormat).toISOString();\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getSerialNumber(context.item) }} `\n})\nexport class SerialNumberCellRendererComponent {\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { SerialNumberCellRendererComponent } from './serial-number.cell-renderer.component';\n\nexport class SerialNumberDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareSerialNumberPath = 'c8y_Hardware.serialNumber';\n const vendingSerialNumberPath =\n 'com_nsn_startups_vendme_fragments_VendingMachineTypeInfo.serial';\n\n this.name = 'serialNumber';\n this.header = gettext('Serial number');\n this.cellRendererComponent = SerialNumberCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'serialNumbers',\n label: gettext('Show items with serial number'),\n addText: gettext('Add next`serial number`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '54321-123'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.serialNumbers.length) {\n filter.__or = {\n [hardwareSerialNumberPath]: { __in: model.serialNumbers },\n [vendingSerialNumberPath]: { __in: model.serialNumbers }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareSerialNumberPath }, { path: vendingSerialNumberPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\n\n@Component({\n template: ` <device-status [mo]=\"context.item\"></device-status> `\n})\nexport class DeviceStatusCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { BaseColumn, ColumnDataType, gettext, PushStatus, SendStatus } from '@c8y/ngx-components';\nimport { DeviceStatusCellRendererComponent } from './status.cell-renderer.component';\n\nexport class StatusDeviceGridColumn extends BaseColumn {\n constructor() {\n super();\n\n const responseIntervalPath = 'c8y_RequiredAvailability.responseInterval';\n const responseIntervalLessThanOrEqualTo0 = { [responseIntervalPath]: { __le: 0 } };\n const responseIntervalNotDefined = { __not: { __has: responseIntervalPath } };\n\n const availabilityStatusPath = 'c8y_Availability.status';\n const availabilityStatusAvailable = { [availabilityStatusPath]: SendStatus.AVAILABLE };\n const availabilityStatusUnavailable = { [availabilityStatusPath]: SendStatus.UNAVAILABLE };\n const availabilityStatusMaintenance = { [availabilityStatusPath]: SendStatus.MAINTENANCE };\n const availabilityStatusNotDefined = { __not: { __has: availabilityStatusPath } };\n\n const connectionStatusPath = 'c8y_Connection.status';\n const connectionStatusConnected = { [connectionStatusPath]: PushStatus.CONNECTED };\n const connectionStatusDisconnected = { [connectionStatusPath]: PushStatus.DISCONNECTED };\n const connectionStatusMaintenance = { [connectionStatusPath]: PushStatus.MAINTENANCE };\n\n const deviceUnderMaintenance = {\n __or: [\n responseIntervalLessThanOrEqualTo0,\n availabilityStatusMaintenance,\n connectionStatusMaintenance\n ]\n };\n const deviceNotUnderMaintenance = {\n // using __and of __nots because backend does not support __not with __ors\n __and: [\n { __not: responseIntervalLessThanOrEqualTo0 },\n { __not: availabilityStatusMaintenance },\n { __not: connectionStatusMaintenance }\n ]\n };\n\n this.name = 'status';\n this.header = gettext('Status');\n this.dataType = ColumnDataType.Icon;\n this.cellRendererComponent = DeviceStatusCellRendererComponent;\n this.resizable = false;\n\n this.filterable = true;\n this.filteringConfig = {\n schema: {\n type: 'object',\n properties: {\n sendStatus: {\n title: gettext('Show devices with send status'),\n type: 'object',\n properties: {\n sendOnline: {\n type: 'switch',\n title: gettext('Online')\n },\n sendOffline: {\n type: 'switch',\n title: gettext('Offline')\n },\n sendUnknown: {\n type: 'switch',\n title: gettext('Unknown')\n },\n sendNotMonitored: {\n type: 'switch',\n title: gettext('Not monitored')\n }\n }\n },\n pushStatus: {\n title: gettext('Show devices with push status'),\n type: 'object',\n properties: {\n pushOnline: {\n type: 'switch',\n title: gettext('Online')\n },\n pushOffline: {\n type: 'switch',\n title: gettext('Offline')\n },\n pushNotMonitored: {\n type: 'switch',\n title: gettext('Not monitored')\n }\n }\n },\n maintenanceStatus: {\n title: gettext('Show devices with maintenance status'),\n type: 'object',\n properties: {\n maintenance: {\n type: 'switch',\n title: gettext('Device is under maintenance')\n }\n }\n }\n }\n },\n formGroup: new FormGroup({}),\n getFilter(model) {\n const filter: any = {};\n const ors = [];\n\n if (model?.sendStatus?.sendOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusAvailable]\n });\n }\n\n if (model?.sendStatus?.sendOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusUnavailable]\n });\n }\n\n if (model?.sendStatus?.sendUnknown) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusNotDefined]\n });\n }\n\n if (model?.sendStatus?.sendNotMonitored || model?.pushStatus?.pushNotMonitored) {\n ors.push(responseIntervalNotDefined);\n }\n\n if (model?.pushStatus?.pushOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusConnected]\n });\n }\n\n if (model?.pushStatus?.pushOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusDisconnected]\n });\n }\n\n if (model?.maintenanceStatus?.maintenance) {\n ors.push(deviceUnderMaintenance);\n }\n\n if (ors.length) {\n filter.__or = ors;\n }\n\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: availabilityStatusPath }]\n };\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class SystemIdDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'id';\n this.name = 'systemId';\n this.header = gettext('System ID');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'ids',\n label: gettext('Show items with system ID'),\n addText: gettext('Add next`id`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '10300'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.ids.length) {\n filter[this.path] = { __in: model.ids };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class TypeDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.name = 'type';\n this.path = 'type';\n this.header = gettext('Type');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'types',\n label: gettext('Show devices with type'),\n addText: gettext('Add next`type`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('MyType`DEVICE_TYPE`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.types.length) {\n filter.type = { __in: model.types };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = { pathSortingConfigs: [{ path: 'type' }] };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { IManagedObject, InventoryService, IUser, UserService } from '@c8y/client';\nimport {\n ActionControl,\n AlertService,\n BulkActionControl,\n Column,\n DataGridService,\n gettext,\n GridConfig,\n HeaderActionControl,\n ModalService,\n Pagination,\n Row,\n Status,\n UserPreferencesService\n} from '@c8y/ngx-components';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Observable } from 'rxjs';\nimport { AlarmsDeviceGridColumn } from './columns/alarms.device-grid-column';\nimport { ColumnUtilService } from './columns/column-util.service';\nimport { GroupDeviceGridColumn } from './columns/group.device-grid-column';\nimport { ImeiDeviceGridColumn } from './columns/imei.device-grid-column';\nimport { ModelDeviceGridColumn } from './columns/model.device-grid-column';\nimport { NameDeviceGridColumn } from './columns/name.device-grid-column';\nimport { RegistrationDateDeviceGridColumn } from './columns/registration-date.device-grid-column';\nimport { SerialNumberDeviceGridColumn } from './columns/serial-number.device-grid-column';\nimport { StatusDeviceGridColumn } from './columns/status.device-grid-column';\nimport { SystemIdDeviceGridColumn } from './columns/system-id.device-grid-column';\nimport { DeviceGridActionType } from './device-grid.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceGridService extends DataGridService {\n protected GRID_CONFIG_DEFAULT_STORAGE_KEY = 'device-grid-config';\n\n constructor(\n protected inventoryService: InventoryService,\n protected userService: UserService,\n protected translateService: TranslateService,\n protected alertService: AlertService,\n protected modal: ModalService,\n protected columnUtilService: ColumnUtilService,\n protected userPreferencesService: UserPreferencesService\n ) {\n super(userPreferencesService);\n }\n\n getDefaultColumns(): Column[] {\n const defaultColumns = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new GroupDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return defaultColumns;\n }\n\n getChildDeviceGridColumns(): Column[] {\n const childDeviceGridColumn = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return childDeviceGridColumn;\n }\n\n getDefaultPagination(): Pagination {\n return {\n pageSize: 25,\n currentPage: 1\n };\n }\n\n getInfiniteScrollPagination(): Pagination {\n return {\n pageSize: 50,\n currentPage: 1\n };\n }\n\n getDefaultActionControls(): ActionControl[] {\n return [\n {\n type: DeviceGridActionType.Delete,\n callback: (item: Row) => this.delete(item as IManagedObject)\n }\n ];\n }\n\n getDefaultBulkActionControls(): BulkActionControl[] {\n return [];\n }\n\n getDefaultHeaderActionControls(): HeaderActionControl[] {\n return [];\n }\n\n getProperName(device: IManagedObject): string {\n return this.columnUtilService.getProperName(device);\n }\n\n getModel(device: IManagedObject): string {\n return this.columnUtilService.getModel(device);\n }\n\n getSerialNumber(device: IManagedObject): string {\n return this.columnUtilService.getSerialNumber(device);\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n return this.columnUtilService.getParentsNames(device, featuredParentId);\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n return this.columnUtilService.getHref(groupOrDevice, prefix);\n }\n\n getAlarmsHref(device: IManagedObject): string {\n return this.columnUtilService.getAlarmsHref(device);\n }\n\n async delete(device: IManagedObject): Promise<void> {\n try {\n const deviceWithChildren = await (\n await this.inventoryService.detail(device, { withChildren: true })\n ).data;\n const hasChildDevices = deviceWithChildren.childDevices?.references?.length > 0;\n const hasChildAdditions = deviceWithChildren.childAdditions?.references?.length > 0;\n const hasChildAssets = deviceWithChildren.childAssets?.references?.length > 0;\n const showDeleteChildren = () => hasChildAdditions || hasChildDevices || hasChildAssets;\n const modalResult = await this.modal.confirm(\n gettext('Delete device'),\n this.translateService.instant(\n gettext(`You are about to delete device \"{{ name }}\". Do you want to proceed?`),\n device\n ),\n Status.DANGER,\n { ok: gettext('Delete'), cancel: gettext('Cancel') },\n {\n cascade: {\n text: gettext('Also delete child hierarchy of this device.'),\n checked: showDeleteChildren(),\n showIf: showDeleteChildren,\n disabledByKey: 'withDeviceUser'\n },\n withDeviceUser: {\n text: this.translateService.instant(\n gettext('Also delete associated device owner \"{{ owner }}\".'),\n device\n ),\n checked: false,\n showIf: () => {\n const isRootDevice = device.c8y_IsDevice;\n const hasDeviceUserAsOwner =\n device.owner &&\n this.userService.isDeviceUser({ id: device.owner } as unknown as IUser);\n\n return Boolean(isRootDevice && hasDeviceUserAsOwner);\n },\n disabledByKey: 'cascade'\n }\n }\n );\n await this.inventoryService.delete(\n device,\n (modalResult as { confirmOptions: { [key: string]: any } }).confirmOptions\n );\n this.alertService.success(gettext('Device deleted.'));\n return Promise.resolve();\n } catch (ex) {\n // only if not cancel from modal\n if (ex) {\n this.alertService.addServerFailure(ex);\n }\n return Promise.reject();\n }\n }\n\n async getData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n text = null\n ) {\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, false, text),\n withGroups: true,\n withChildren\n };\n return this.inventoryService.list(filters);\n }\n\n async getChildDeviceData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, childDeviceFilters),\n withGroups: true,\n withChildren\n };\n return this.inventoryService.childDevicesList(id, filters);\n }\n\n async getCount(columns: Column[], pagination: Pagination, query: any = {}, text: string = null) {\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, false, text),\n pageSize: 1,\n currentPage: 1\n };\n return (await this.inventoryService.list(filters)).paging.totalPages;\n }\n\n async getCountChildDevices(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, childDeviceFilters),\n pageSize: 1,\n currentPage: 1\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalPages;\n }\n\n async getTotalChildDevices(query: any = {}, id: string): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n pageSize: 1,\n withTotalPages: true\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalPages;\n }\n\n async getTotal(query: any = {}): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n pageSize: 1,\n withTotalPages: true\n };\n return (await this.inventoryService.list(filters)).paging.totalPages;\n }\n\n getDeviceQueryString(columns: Column[], query: any): string {\n let fullQuery = this.getQueryObj(columns);\n fullQuery = this.queriesUtil.addAndFilter(fullQuery, query);\n return this.queriesUtil.buildQuery(fullQuery);\n }\n\n clearConfig(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY) {\n super.clearConfig(key);\n }\n\n getConfig$(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY): Observable<GridConfig> {\n return super.getConfig$(key);\n }\n\n saveConfig$(\n config: GridConfig,\n key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY\n ): Observable<GridConfig> {\n return super.saveConfig$(config, key);\n }\n\n private getDevicesFilters(\n columns: Column[],\n pagination: Pagination,\n query: any,\n childDeviceFilters?: boolean,\n text?: string\n ) {\n return {\n ...(childDeviceFilters\n ? { query: this.getDeviceQueryString(columns, query) }\n : { q: this.getDeviceQueryString(columns, query) }),\n ...(text && { text }),\n pageSize: pagination.pageSize,\n currentPage: pagination.currentPage,\n withChildren: false,\n withTotalPages: true\n };\n }\n}\n","import { Injectable, InjectionToken, Injector } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { IManagedObject } from '@c8y/client';\nimport {\n ExtensionFactory,\n ExtensionPointWithoutStateForPlugins,\n fromTriggerOnce,\n GenericHookType,\n hookGeneric,\n PluginsResolveService,\n GenericHookOptions,\n BuiltInActionType\n} from '@c8y/ngx-components';\nimport { flatten } from 'lodash-es';\nimport { Observable } from 'rxjs';\nimport { shareReplay } from 'rxjs/operators';\nimport { DeviceGridActionHook } from './device-grid.model';\nimport { DeviceGridService } from './device-grid.service';\n\n/**\n * An extension HOOK can use either a pure value:\n * ```typescript\n * { provide: HOOK_X, useValue: { ...hookValue }, multi: true }\n * ```\n *\n * Or an array to directly register multiple:\n * ```typescript\n * { provide: HOOK_X, useValue: [{ ...hookValues }], multi: true }\n * ```\n *\n * Or an ExtensionFactory which allows to define a get() function. This function\n * gets called on each navigation with the current route and can return values\n * async (observable or promise).\n * ```typescript\n * { provide: HOOK_X, useFactory: { get: (route) => doSomethingAsync(route) }, multi: true }\n * ```\n */\nexport type DeviceGridActionExtension =\n | DeviceGridActionHook\n | DeviceGridActionHook[]\n | ExtensionFactory<DeviceGridActionHook>;\n\n/**\n * A hook to use for Multi Provider extension.\n * @deprecated Consider using the `hookDeviceGridAction` function instead.\n */\nexport const HOOK_DEVICE_GRID_ACTION = new InjectionToken<DeviceGridActionExtension>(\n 'DeviceGridActionHook'\n);\n\n/**\n * You can either provide a single `DeviceGridActionExtension` as parameter:\n * ```typescript\n * hookDeviceGridAction(...)\n * ```\n *\n * Or an array to directly register multiple:\n * ```typescript\n * hookDeviceGridAction([...])\n * ```\n *\n * Or you provide an Service that implements `ExtensionFactory<DeviceGridActionExtension>`\n * ```typescript\n * export class MyDeviceGridActionFactory implements ExtensionFactory<DeviceGridActionExtension> {...}\n * ...\n * hookDeviceGridAction(MyDeviceGridActionFactory)\n * ```\n * A typed alternative to `HOOK_DEVICE_GRID_ACTION_DELETE`.\n * @param action The `DeviceGridDeleteExtension`'s or `ExtensionFactory` to be provided.\n * @returns An `Provider` to be provided in your module.\n */\nexport function hookDeviceGridAction(\n action: GenericHookType<DeviceGridActionExtension>,\n options?: Partial<GenericHookOptions>\n) {\n return hookGeneric<DeviceGridActionExtension>(action, HOOK_DEVICE_GRID_ACTION, options);\n}\n\n/**\n * A service which defines device grid action options.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceGridExtensionService extends ExtensionPointWithoutStateForPlugins<DeviceGridActionHook> {\n constructor(\n rootInjector: Injector,\n plugins: PluginsResolveService,\n private router: Router,\n private deviceGridService: DeviceGridService\n ) {\n super(rootInjector, plugins);\n this.items$ = this.setupItemsObservable();\n }\n\n protected setupItemsObservable(): Observable<DeviceGridActionHook[]> {\n return fromTriggerOnce<DeviceGridActionHook>(this.router, this.refresh$, [\n () =>\n flatten(\n this.injectors.map(injector =>\n injector.get(\n HOOK_DEVICE_GRID_ACTION,\n [\n {\n type: BuiltInActionType.Delete,\n deviceMatches: (_mo: IManagedObject) => true,\n onAction: (mo: IManagedObject) => this.deviceGridService.delete(mo),\n refreshAfterActionDone: true\n }\n ],\n { self: true }\n )\n )\n ),\n () => this.factories\n ]).pipe(shareReplay(1));\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild\n} from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport {\n ActionControl,\n alertOnError,\n BuiltInActionType,\n BulkActionControl,\n Column,\n DataGridComponent,\n DataSourceModifier,\n FilteringActionType,\n FilteringModifier,\n gettext,\n HeaderActionControl,\n LoadMoreMode,\n Pagination,\n ProductExperienceEvent,\n ProductExperienceEventSource,\n PRODUCT_EXPERIENCE_EVENT_SOURCE,\n Row,\n ServerSideDataCallback,\n ServerSideDataResult,\n toObservable\n} from '@c8y/ngx-components';\nimport { groupBy } from 'lodash-es';\nimport { EMPTY, from, Subject } from 'rxjs';\nimport { catchError, map, switchMap, takeUntil } from 'rxjs/operators';\nimport { DeviceGridExtensionService } from './device-grid-extension.service';\nimport { DataCallback, DeviceGridActionHook, FilterConfig } from './device-grid.model';\nimport { DeviceGridService } from './device-grid.service';\n\n@Component({\n selector: 'c8y-device-grid',\n templateUrl: './device-grid.component.html',\n providers: [\n {\n provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,\n useExisting: forwardRef(() => DeviceGridComponent)\n }\n ]\n})\nexport class DeviceGridComponent implements OnInit, OnDestroy, ProductExperienceEventSource {\n /** Optional callback function that allows to modify server side data result before it's rendered. */\n @Input() dataCallback: DataCallback;\n /** Takes an event emitter. When an event is emitted, the grid will be reloaded. */\n @Input() refresh: EventEmitter<void> = new EventEmitter();\n /** The title for the data grid, it's displayed in the grid's header. */\n @Input() title: string = gettext('Devices');\n /** The label for load more button. */\n @Input() loadMoreItemsLabel = gettext('Load more devices');\n /** The label for loading indicator. */\n @Input() loadingItemsLabel: string = gettext('Loading devices…');\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' column config is stored.\n */\n @Input() legacyConfigKey: string;\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' filter/sorting config is stored.\n */\n @Input() legacyFilterKey: string;\n /** The list of columns to be displayed in the grid. If not given, it defaults to standard columns. */\n @Input('columns') columns: Column[] = this.deviceGridService.getDefaultColumns();\n /** Pagination settings, e.g. allows for setting current page or page size. If not given, defaults to standard settings. */\n @Input('pagination') set _pagination(value: Pagination) {\n if (value) {\n this.pagination = value;\n }\n }\n infiniteScroll: LoadMoreMode;\n /** Sets load more mode. */\n @Input('infiniteScroll') set _infiniteScroll(infiniteScroll: LoadMoreMode) {\n this.infiniteScroll = infiniteScroll;\n if (infiniteScroll) {\n this.pagination = this.deviceGridService.getInfiniteScrollPagination();\n }\n }\n /**\n * Represents the input property for hiding specific built-in action types.\n * The `actionsToHide` input allows specifying an array of `BuiltInActionType` values or the string 'ALL' to hide all action controls\n */\n @Input() builtInActionsToHide: BuiltInActionType[] | 'ALL' = [];\n /** Sets action controls (actions available for individual items). If not given, it defaults to standard actions. */\n @Input('actionControls') set _actionControls(value: ActionControl[]) {\n if (value) {\n this.actionControls = value;\n } else {\n this.actionControls = this.deviceGridService.getDefaultActionControls();\n }\n }\n /** Determines whether items can be selected by clicking a checkbox in the first column. */\n @Input() selectable = false;\n /** Restricts selection to a single row only. Selection column displays radio button instead of checkboxes */\n @Input() singleSelection = false;\n /** Sets the base query which is appended to the request for data. */\n @Input() baseQuery: object = {};\n /** Sets bulk action controls (actions available for items selected by user). If not given, it defaults to standard bulk actions. */\n @Input('bulkActionControls') set _bulkActionControls(value: BulkActionControl[]) {\n if (value) {\n this.bulkActionControls = value;\n } else {\n this.bulkActionControls = this.deviceGridService.getDefaultBulkActionControls();\n }\n }\n /** Sets header action controls (actions available from the grid header). If not given, it defaults to empty list of actions. */\n @Input('headerActionControls') set _headerActionControls(value: HeaderActionControl[]) {\n if (value) {\n this.headerActionControls = value;\n } else {\n this.headerActionControls = this.deviceGridService.getDefaultHeaderActionControls();\n }\n }\n @Input() childDeviceGrid = false;\n @Input() parentDeviceId: string;\n /** Sets the withChildren query which is appended to the request. */\n @Input() withChildren = false;\n /**\n * Enables the search for devices where any device propery is matched agains the search term.\n * Enabled by default. This input does not take effect if the <code>childDeviceGrid</code> input is set to <code>true</code>\n */\n @Input() showSearch = true;\n /**\n * Sets the class name used for active rows (last clicked).\n * Set empty string to disable appending active class to grid rows.\n */\n @Input()\n activeClassName = 'active';\n /** Emits an event when columns configuration changes. */\n @Output() onColumnsChange: EventEmitter<Column[]> = new EventEmitter<Column[]>();\n @Output() onFilterChange: EventEmitter<FilterConfig[]> = new EventEmitter<FilterConfig[]>();\n @Output() onDeviceQueryStringChange: EventEmitter<string> = new EventEmitter<string>();\n /** Emits an event when items selection changes. The array contains ids of selected items. */\n @Output() itemsSelect = new EventEmitter<string[]>();\n\n actionControls: ActionControl[] = [];\n appliedFilters: FilterConfig[] = [];\n pagination: Pagination = this.deviceGridService.getDefaultPagination();\n bulkActionControls: BulkActionControl[] = this.deviceGridService.getDefaultBulkActionControls();\n headerActionControls: HeaderActionControl[] =\n this.deviceGridService.getDefaultHeaderActionControls();\n serverSideDataCallback: ServerSideDataCallback;\n\n @ViewChild(DataGridComponent, { static: true })\n dataGrid: DataGridComponent;\n productExperienceEvent: ProductExperienceEvent;\n\n private destroyed$: Subject<void> = new Subject();\n\n constructor(\n public deviceGridService: DeviceGridService,\n private dgExtensionService: DeviceGridExtensionService\n ) {\n this.serverSideDataCallback = this.onDataSourceModifier.bind(this);\n }\n\n ngOnInit() {\n this.setActionControls();\n }\n\n ngOnDestroy(): void {\n this.destroyed$.next();\n this.destroyed$.complete();\n }\n\n trackByName(_index, column: Column): string {\n return column.name;\n }\n\n async onDataSourceModifier(\n dataSourceModifier: DataSourceModifier\n ): Promise<ServerSideDataResult> {\n let serverSideDataResult: ServerSideDataResult;\n let filteredSize: number;\n let size: number;\n if (this.childDeviceGrid) {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getChildDeviceData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n this.parentDeviceId\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCountChildDevices(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.parentDeviceId\n )\n );\n size = await alertOnError(\n this.deviceGridService.getTotalChildDevices(this.baseQuery, this.parentDeviceId)\n );\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n } else {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n dataSourceModifier.searchText\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCount(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n dataSourceModifier.searchText\n )\n );\n size = await alertOnError(this.deviceGridService.getTotal(this.baseQuery));\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n }\n\n this.onColumnsChange.emit(dataSourceModifier.columns);\n this.onDeviceQueryStringChange.emit(\n this.deviceGridService.getDeviceQueryString(dataSourceModifier.columns, this.baseQuery)\n );\n\n if (this.dataCallback) {\n serverSideDataResult = this.dataCallback(serverSideDataResult);\n }\n\n return serverSideDataResult;\n }\n\n setActionControls() {\n if (this.builtInActionsToHide === 'ALL') {\n return;\n }\n const asArrayOfGroupedActionHooks = (hooks: DeviceGridActionHook[]) =>\n Object.values(groupBy(hooks, 'type')) as DeviceGridActionHook[];\n\n this.dgExtensionService.items$\n .pipe(\n map(asArrayOfGroupedActionHooks),\n switchMap(from),\n map((hooks: DeviceGridActionHook[]) => {\n const { type, icon, text, showOnHover } = hooks[0];\n const actionsToHide = this.builtInActionsToHide as typeof type;\n const shouldPushToActionControls =\n actionsToHide.length === 0 || !actionsToHide.includes(type);\n\n const matchingHooks = (device: Row) =>\n hooks.filter(hook => hook.deviceMatches(device as IManagedObject));\n\n const hasMatchingHooks = (device: Row) => !!matchingHooks(device).length;\n const useInventoryDelete = (device: Row) =>\n !hasMatchingHooks(device) && type === BuiltInActionType.Delete;\n\n const resolveAction = (device: Row) =>\n useInventoryDelete(device)\n ? this.deviceGridService.delete(device as IManagedObject)\n : matchingHooks(device)[0].onAction(device as IManagedObject);\n\n if (shouldPushToActionControls) {\n this.actionControls.push({\n type,\n icon,\n text,\n showOnHover,\n showIf: (device: Row) =>\n type === BuiltInActionType.Delete || hasMatchingHooks(device),\n callback: (device: Row) =>\n toObservable(resolveAction(device))\n .pipe(\n catchError(_err => EMPTY),\n takeUntil(this.destroyed$)\n )\n .subscribe(_success => {\n if (\n useInventoryDelete(device) ||\n matchingHooks(device)[0].refreshAfterActionDone\n )\n this.refresh.emit();\n })\n });\n }\n }),\n takeUntil(this.destroyed$)\n )\n .subscribe();\n }\n\n updateFiltering(\n columnNames: string[],\n action: {\n type: FilteringActionType;\n payload?: { filteringModifier: FilteringModifier };\n }\n ) {\n const { type } = action;\n if (type === FilteringActionType.ResetFilter) {\n this.dataGrid.clearFilters();\n } else {\n this.dataGrid.updateFiltering(columnNames, action);\n }\n }\n}\n","<c8y-data-grid\n [title]=\"title\"\n [loadMoreItemsLabel]=\"loadMoreItemsLabel\"\n [loadingItemsLabel]=\"loadingItemsLabel\"\n [columns]=\"columns\"\n [pagination]=\"pagination\"\n [infiniteScroll]=\"infiniteScroll\"\n [actionControls]=\"actionControls\"\n [selectable]=\"selectable\"\n [singleSelection]=\"singleSelection\"\n [bulkActionControls]=\"bulkActionControls\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n (itemsSelect)=\"itemsSelect.emit($event)\"\n [refresh]=\"refresh\"\n [showSearch]=\"showSearch && !childDeviceGrid\"\n [headerActionControls]=\"headerActionControls\"\n [activeClassName]=\"activeClassName\"\n c8yProductExperience\n inherit\n>\n <c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No matching devices.' | translate\"\n [subtitle]=\"'Refine your search terms' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n</c8y-data-grid>\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport {\n CommonModule,\n DataGridModule,\n DeviceStatusModule,\n DynamicFormsModule,\n FormsModule,\n ProductExperienceModule\n} from '@c8y/ngx-components';\nimport { AssetSelectorModule } from '@c8y/ngx-components/assets-navigator';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { AlarmsCellRendererComponent } from './columns/alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './columns/alarms.header-cell-renderer.component';\nimport { GroupCellRendererComponent } from './columns/group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './columns/group.filtering-form-renderer.component';\nimport { ModelCellRendererComponent } from './columns/model.cell-renderer.component';\nimport { NameCellRendererComponent } from './columns/name.cell-renderer.component';\nimport { RegistrationDateCellRendererComponent } from './columns/registration-date.cell-renderer.component';\nimport { SerialNumberCellRendererComponent } from './columns/serial-number.cell-renderer.component';\nimport { DeviceStatusCellRendererComponent } from './columns/status.cell-renderer.component';\nimport { DeviceGridComponent } from './device-grid.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n DeviceStatusModule,\n DataGridModule,\n AssetSelectorModule,\n DynamicFormsModule,\n PopoverModule,\n RouterModule,\n ProductExperienceModule\n ],\n declarations: [\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ],\n exports: [\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ]\n})\nexport class DeviceGridModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.ColumnUtilService","i2","i3","i4.ColumnUtilService","i3.DeviceGridService","map","i1.DeviceGridService","i2.DeviceGridExtensionService","i4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-device-grid.mjs","sources":["../../device-grid/columns/column-util.service.ts","../../device-grid/columns/alarms.cell-renderer.component.ts","../../device-grid/columns/alarms.cell-renderer.component.html","../../device-grid/columns/alarms.header-cell-renderer.component.ts","../../device-grid/columns/alarms.device-grid-column.ts","../../device-grid/columns/group.cell-renderer.component.ts","../../device-grid/columns/group.cell-renderer.component.html","../../device-grid/columns/group.filtering-form-renderer.component.ts","../../device-grid/columns/group.filtering-form-renderer.component.html","../../device-grid/columns/group.device-grid-column.ts","../../device-grid/columns/imei.device-grid-column.ts","../../device-grid/columns/model.cell-renderer.component.ts","../../device-grid/columns/model.device-grid-column.ts","../../device-grid/columns/name.cell-renderer.component.ts","../../device-grid/columns/name.device-grid-column.ts","../../device-grid/columns/registration-date.cell-renderer.component.ts","../../device-grid/columns/registration-date.device-grid-column.ts","../../device-grid/columns/serial-number.cell-renderer.component.ts","../../device-grid/columns/serial-number.device-grid-column.ts","../../device-grid/columns/status.cell-renderer.component.ts","../../device-grid/columns/status.device-grid-column.ts","../../device-grid/columns/system-id.device-grid-column.ts","../../device-grid/columns/type.device-grid-column.ts","../../device-grid/device-grid.service.ts","../../device-grid/device-grid-extension.service.ts","../../device-grid/device-grid.component.ts","../../device-grid/device-grid.component.html","../../device-grid/device-grid.module.ts","../../device-grid/c8y-ngx-components-device-grid.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport { TranslateService } from '@ngx-translate/core';\nimport { map, remove, sortBy } from 'lodash-es';\n\n/**\n * Service contains logic extracted from the device-grid service to avoid circular dependency MTM-40239.\n */\n\n@Injectable({ providedIn: 'root' })\nexport class ColumnUtilService {\n constructor(protected translateService: TranslateService) {}\n\n getAlarmsHref(device: IManagedObject): string {\n return `${this.getHref(device)}/alarms`;\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n if (groupOrDevice.c8y_IsDeviceGroup || groupOrDevice.c8y_IsDynamicGroup) {\n return `${prefix}group/${groupOrDevice.id}`;\n }\n return `${prefix}device/${groupOrDevice.id}`;\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n const assetParentsReferences = device.assetParents.references;\n const assetParents = map(assetParentsReferences, 'managedObject');\n const sortedByName = sortBy(assetParents, ['name']);\n const featuredItems = remove(sortedByName, { id: featuredParentId });\n const items = featuredItems.concat(sortedByName);\n const names = map(items, 'name');\n return names.join(', ');\n }\n\n getModel(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n return hardware && hardware.model;\n }\n\n getProperName(device: IManagedObject): string {\n const { id, name } = device;\n return name ? name : this.translateService.instant('Device {{id}}', { id });\n }\n\n getSerialNumber(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n const serialPropertyName = this.isVendme(device) ? 'serial' : 'serialNumber';\n return hardware && hardware[serialPropertyName];\n }\n\n private getHardware(device: IManagedObject): any {\n const hardwarePropertyName = this.isVendme(device)\n ? 'com_nsn_startups_vendme_fragments_VendingMachineTypeInfo'\n : 'c8y_Hardware';\n return device && device[hardwarePropertyName];\n }\n\n private isVendme(device: IManagedObject) {\n return device.type === 'com_nsn_startups_vendme_VendingMachine';\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext, gettext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n templateUrl: './alarms.cell-renderer.component.html'\n})\nexport class AlarmsCellRendererComponent {\n readonly linkAriaLabel = gettext('See alarms for device \"{{ name }}\"');\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","<a\n class=\"d-flex a-i-center flex-wrap gap-4 no-decoration\"\n [href]=\"columnUtilService.getAlarmsHref(context.item)\"\n [attr.aria-label]=\"\n linkAriaLabel | translate: { name: columnUtilService.getProperName(context.item) }\n \"\n *ngIf=\"\n context.item.c8y_ActiveAlarmsStatus?.critical ||\n context.item.c8y_ActiveAlarmsStatus?.major ||\n context.item.c8y_ActiveAlarmsStatus?.minor ||\n context.item.c8y_ActiveAlarmsStatus?.warning\n \"\n>\n <span\n class=\"c8y-icon-badge\"\n data-cy=\"alarms.cell-renderer--critical-alarm-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.critical }} {{ 'Critical alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.critical\"\n >\n <i [c8yIcon]=\"'exclamation-circle'\" class=\"status critical stroked-icon\" data-cy=\"alarms.cell-renderer--critical-alarm-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.critical }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.major }} {{ 'Major alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.major\"\n >\n <i [c8yIcon]=\"'warning'\" class=\"status major stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.major }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.minor }} {{ 'Minor alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.minor\"\n >\n <i [c8yIcon]=\"'high-priority'\" class=\"status minor stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.minor }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.warning }} {{ 'Warning alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.warning\"\n >\n <i [c8yIcon]=\"'info-circle'\" class=\"status warning stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.warning }}</span>\n </span>\n</a>\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\n\n@Component({\n template: `\n <div class=\"d-flex\">\n <span class=\"text-truncate\" [title]=\"context.property.header | translate\">\n {{ context.property.header | translate }}\n </span>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n type=\"button\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"'Only includes alarms for the parent device.' | translate\"\n placement=\"bottom\"\n triggers=\"focus\"\n container=\"body\"\n (click)=\"$event.stopPropagation()\"\n >\n <i c8yIcon=\"question-circle-o\"></i>\n </button>\n </div>\n `\n})\nexport class AlarmsHeaderCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { BaseColumn, ColumnConfig, gettext } from '@c8y/ngx-components';\nimport { map } from 'lodash-es';\nimport { AlarmsCellRendererComponent } from './alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './alarms.header-cell-renderer.component';\n\nexport class AlarmsDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'alarms';\n this.header = gettext('Alarms');\n this.headerCellRendererComponent = AlarmsHeaderCellRendererComponent;\n this.cellRendererComponent = AlarmsCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n schema: {\n type: 'object',\n properties: {\n alarm: {\n type: 'object',\n title: gettext('Show items'),\n properties: {\n critical: {\n type: 'switch',\n title: gettext('With active critical alarms')\n },\n major: {\n type: 'switch',\n title: gettext('With active major alarms')\n },\n minor: {\n type: 'switch',\n title: gettext('With active minor alarms')\n },\n warning: {\n type: 'switch',\n title: gettext('With active warnings')\n },\n none: {\n type: 'switch',\n title: gettext('With no active alarms or warnings')\n }\n }\n }\n }\n },\n getFilter(model) {\n const filter: any = {};\n const ors = [];\n if (model.alarm.critical) {\n ors.push({ 'c8y_ActiveAlarmsStatus.critical': { __gt: 0 } });\n }\n if (model.alarm.major) {\n ors.push({ 'c8y_ActiveAlarmsStatus.major': { __gt: 0 } });\n }\n if (model.alarm.minor) {\n ors.push({ 'c8y_ActiveAlarmsStatus.minor': { __gt: 0 } });\n }\n if (model.alarm.warning) {\n ors.push({ 'c8y_ActiveAlarmsStatus.warning': { __gt: 0 } });\n }\n if (model.alarm.none) {\n ors.push({ __not: { __has: 'c8y_ActiveAlarmsStatus' } });\n ors.push({\n __and: map(['critical', 'major', 'minor', 'warning'], sev => {\n const zero = {};\n const has = { __not: { __has: undefined } };\n const key = `c8y_ActiveAlarmsStatus.${sev}`;\n zero[key] = 0;\n has.__not.__has = key;\n return { __or: [zero, has] };\n })\n });\n }\n if (ors.length) {\n filter.__or = ors;\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [\n { path: 'c8y_ActiveAlarmsStatus.critical' },\n { path: 'c8y_ActiveAlarmsStatus.major' },\n { path: 'c8y_ActiveAlarmsStatus.minor' },\n { path: 'c8y_ActiveAlarmsStatus.warning' }\n ]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n templateUrl: './group.cell-renderer.component.html'\n})\nexport class GroupCellRendererComponent {\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","<span\n title=\"{{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\"\n>\n {{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\n</span>\n","import { Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';\nimport { Column, FilteringFormRendererContext } from '@c8y/ngx-components';\nimport { cloneDeep } from 'lodash-es';\n\n@Component({\n templateUrl: './group.filtering-form-renderer.component.html'\n})\nexport class GroupFilteringFormRendererComponent implements OnInit {\n @ViewChild('assetSelector', { static: false, read: ElementRef }) assetSelector: ElementRef;\n model: any;\n preselected: string[] = [];\n\n constructor(public context: FilteringFormRendererContext) {}\n\n @HostListener('keyup.enter', ['$event']) onEnterKeyUp(event: KeyboardEvent) {\n event.stopPropagation();\n this.applyFilter();\n }\n @HostListener('keydown.escape', ['$event']) onEscapeKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n this.resetFilter();\n }\n\n ngOnInit() {\n const column: Column = this.context.property;\n this.model = cloneDeep(column.externalFilterQuery || {});\n this.preselected = this.model.selectedNodes || [];\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n try {\n this.assetSelector.nativeElement.querySelector('input').focus();\n } catch (ex) {\n // intended empty\n }\n }, 250);\n }\n\n applyFilter() {\n this.context.applyFilter({\n externalFilterQuery: this.model\n });\n }\n\n resetFilter() {\n this.context.resetFilter();\n }\n\n selectionChanged(nodes) {\n this.model.selectedNodes = nodes.items;\n }\n}\n","<c8y-asset-selector\n #assetSelector\n [config]=\"{\n groupsOnly: true,\n multi: true,\n groupsSelectable: true,\n search: true\n }\"\n [selected]=\"preselected\"\n (onSelected)=\"selectionChanged($event)\"\n class=\"bg-component\"\n></c8y-asset-selector>\n\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n (click)=\"resetFilter()\"\n title=\"{{ 'Reset' | translate }}\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n (click)=\"applyFilter()\"\n title=\"{{ 'Apply' | translate }}\"\n translate\n >\n Apply\n </button>\n</div>\n","import { IManagedObject } from '@c8y/client';\nimport {\n BaseColumn,\n ColumnConfig,\n FilterChip,\n gettext,\n PartialFilterChipGenerationType\n} from '@c8y/ngx-components';\nimport { GroupCellRendererComponent } from './group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './group.filtering-form-renderer.component';\n\nexport class GroupDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'group';\n this.header = gettext('Group');\n this.cellRendererComponent = GroupCellRendererComponent;\n this.filteringFormRendererComponent = GroupFilteringFormRendererComponent;\n this.filterable = true;\n this.filteringConfig = {\n generateChips(model): PartialFilterChipGenerationType[] {\n if (model.selectedNodes) {\n return model.selectedNodes.map(mo => ({\n displayValue: mo.name,\n value: mo,\n remove(): Partial<FilterChip> {\n const { externalFilterQuery, columnName, value } = this;\n const nodes = externalFilterQuery.selectedNodes.filter(node => node.id !== value.id);\n\n return {\n externalFilterQuery: { selectedNodes: nodes },\n columnName: columnName\n };\n }\n }));\n }\n },\n getFilter(model) {\n const filter: any = {};\n if (model.selectedNodes) {\n filter.__or = model.selectedNodes.map((mo: IManagedObject) => {\n if (mo.c8y_DeviceQueryString) {\n return { __useFilterQueryString: mo.c8y_DeviceQueryString };\n }\n return { __bygroupid: mo.id };\n });\n }\n return filter;\n }\n };\n this.sortable = false;\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class ImeiDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'c8y_Mobile.imei';\n this.name = 'imei';\n this.header = gettext('IMEI');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'imeis',\n label: gettext('Show items with IMEI'),\n addText: gettext('Add next`IMEI`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '46543432321'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.imeis.length) {\n filter[this.path] = { __in: model.imeis };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getModel(context.item) }} `\n})\nexport class ModelCellRendererComponent {\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { ModelCellRendererComponent } from './model.cell-renderer.component';\n\nexport class ModelDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareModelPath = 'c8y_Hardware.model';\n const vendingModelPath = 'com_nsn_startups_vendme_fragments_VendingMachineTypeInfo.model';\n\n this.name = 'model';\n this.header = gettext('Model');\n this.cellRendererComponent = ModelCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'models',\n label: gettext('Show items with model'),\n addText: gettext('Add next`model`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: 'NTC-220'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.models.length) {\n filter.__or = {\n [hardwareModelPath]: { __in: model.models },\n [vendingModelPath]: { __in: model.models }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareModelPath }, { path: vendingModelPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: `\n <a\n class=\"interact\"\n title=\"{{ columnUtilService.getProperName(context.item) }}\"\n [href]=\"columnUtilService.getHref(context.item)\"\n >\n {{ columnUtilService.getProperName(context.item) }}\n </a>\n `\n})\nexport class NameCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n ColumnDataRecordClassName,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { NameCellRendererComponent } from './name.cell-renderer.component';\n\nexport class NameDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'name';\n this.path = 'name';\n this.header = gettext('Name');\n this.cellCSSClassName = ColumnDataRecordClassName.Header;\n this.cellRendererComponent = NameCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'names',\n label: gettext('Show items with name'),\n addText: gettext('Add next`name`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('My device`DEVICE_NAME`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.names.length) {\n filter.name = { __in: model.names };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\n\n@Component({\n template: ` {{ context.value | c8yDate }} `\n})\nexport class RegistrationDateCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { BaseColumn, ColumnConfig, gettext } from '@c8y/ngx-components';\nimport { RegistrationDateCellRendererComponent } from './registration-date.cell-renderer.component';\n\nexport class RegistrationDateDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'creationTime';\n this.name = 'registrationDate';\n this.header = gettext('Registration date');\n this.cellRendererComponent = RegistrationDateCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n key: 'registrationDate',\n templateOptions: {\n label: gettext('Show items registered`between dates`')\n },\n fieldGroup: [\n {\n type: 'date-time',\n key: 'after',\n templateOptions: {\n label: gettext('from`date`')\n },\n expressionProperties: {\n 'templateOptions.maxDate': (model: any) => model?.before\n }\n },\n {\n type: 'date-time',\n key: 'before',\n templateOptions: {\n label: gettext('to`date`')\n },\n expressionProperties: {\n 'templateOptions.minDate': (model: any) => model?.after\n }\n }\n ]\n }\n ],\n formGroup: new FormGroup({}),\n getFilter: model => {\n const filter: any = {};\n const dates = model && model.registrationDate;\n if (dates && (dates.after || dates.before)) {\n filter.__and = [];\n if (dates.after) {\n const after = this.formatDate(dates.after);\n filter.__and.push({\n __or: {\n [this.path]: { __gt: after },\n [`${this.path}.date`]: { __gt: after }\n }\n });\n }\n if (dates.before) {\n const before = this.formatDate(dates.before);\n filter.__and.push({\n __or: {\n [this.path]: { __lt: before },\n [`${this.path}.date`]: { __lt: before }\n }\n });\n }\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: `${this.path}.date` }, { path: this.path }]\n };\n }\n\n protected formatDate(dateToFormat: string): string {\n return new Date(dateToFormat).toISOString();\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getSerialNumber(context.item) }} `\n})\nexport class SerialNumberCellRendererComponent {\n constructor(public context: CellRendererContext, public columnUtilService: ColumnUtilService) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { SerialNumberCellRendererComponent } from './serial-number.cell-renderer.component';\n\nexport class SerialNumberDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareSerialNumberPath = 'c8y_Hardware.serialNumber';\n const vendingSerialNumberPath =\n 'com_nsn_startups_vendme_fragments_VendingMachineTypeInfo.serial';\n\n this.name = 'serialNumber';\n this.header = gettext('Serial number');\n this.cellRendererComponent = SerialNumberCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'serialNumbers',\n label: gettext('Show items with serial number'),\n addText: gettext('Add next`serial number`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '54321-123'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.serialNumbers.length) {\n filter.__or = {\n [hardwareSerialNumberPath]: { __in: model.serialNumbers },\n [vendingSerialNumberPath]: { __in: model.serialNumbers }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareSerialNumberPath }, { path: vendingSerialNumberPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\n\n@Component({\n template: ` <device-status [mo]=\"context.item\"></device-status> `\n})\nexport class DeviceStatusCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { BaseColumn, ColumnDataType, gettext, PushStatus, SendStatus } from '@c8y/ngx-components';\nimport { DeviceStatusCellRendererComponent } from './status.cell-renderer.component';\n\nexport class StatusDeviceGridColumn extends BaseColumn {\n constructor() {\n super();\n\n const responseIntervalPath = 'c8y_RequiredAvailability.responseInterval';\n const responseIntervalLessThanOrEqualTo0 = { [responseIntervalPath]: { __le: 0 } };\n const responseIntervalNotDefined = { __not: { __has: responseIntervalPath } };\n\n const availabilityStatusPath = 'c8y_Availability.status';\n const availabilityStatusAvailable = { [availabilityStatusPath]: SendStatus.AVAILABLE };\n const availabilityStatusUnavailable = { [availabilityStatusPath]: SendStatus.UNAVAILABLE };\n const availabilityStatusMaintenance = { [availabilityStatusPath]: SendStatus.MAINTENANCE };\n const availabilityStatusNotDefined = { __not: { __has: availabilityStatusPath } };\n\n const connectionStatusPath = 'c8y_Connection.status';\n const connectionStatusConnected = { [connectionStatusPath]: PushStatus.CONNECTED };\n const connectionStatusDisconnected = { [connectionStatusPath]: PushStatus.DISCONNECTED };\n const connectionStatusMaintenance = { [connectionStatusPath]: PushStatus.MAINTENANCE };\n\n const deviceUnderMaintenance = {\n __or: [\n responseIntervalLessThanOrEqualTo0,\n availabilityStatusMaintenance,\n connectionStatusMaintenance\n ]\n };\n const deviceNotUnderMaintenance = {\n // using __and of __nots because backend does not support __not with __ors\n __and: [\n { __not: responseIntervalLessThanOrEqualTo0 },\n { __not: availabilityStatusMaintenance },\n { __not: connectionStatusMaintenance }\n ]\n };\n\n this.name = 'status';\n this.header = gettext('Status');\n this.dataType = ColumnDataType.Icon;\n this.cellRendererComponent = DeviceStatusCellRendererComponent;\n this.resizable = false;\n\n this.filterable = true;\n this.filteringConfig = {\n schema: {\n type: 'object',\n properties: {\n sendStatus: {\n title: gettext('Show devices with send status'),\n type: 'object',\n properties: {\n sendOnline: {\n type: 'switch',\n title: gettext('Online')\n },\n sendOffline: {\n type: 'switch',\n title: gettext('Offline')\n },\n sendUnknown: {\n type: 'switch',\n title: gettext('Unknown')\n },\n sendNotMonitored: {\n type: 'switch',\n title: gettext('Not monitored')\n }\n }\n },\n pushStatus: {\n title: gettext('Show devices with push status'),\n type: 'object',\n properties: {\n pushOnline: {\n type: 'switch',\n title: gettext('Online')\n },\n pushOffline: {\n type: 'switch',\n title: gettext('Offline')\n },\n pushNotMonitored: {\n type: 'switch',\n title: gettext('Not monitored')\n }\n }\n },\n maintenanceStatus: {\n title: gettext('Show devices with maintenance status'),\n type: 'object',\n properties: {\n maintenance: {\n type: 'switch',\n title: gettext('Device is under maintenance')\n }\n }\n }\n }\n },\n formGroup: new FormGroup({}),\n getFilter(model) {\n const filter: any = {};\n const ors = [];\n\n if (model?.sendStatus?.sendOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusAvailable]\n });\n }\n\n if (model?.sendStatus?.sendOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusUnavailable]\n });\n }\n\n if (model?.sendStatus?.sendUnknown) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusNotDefined]\n });\n }\n\n if (model?.sendStatus?.sendNotMonitored || model?.pushStatus?.pushNotMonitored) {\n ors.push(responseIntervalNotDefined);\n }\n\n if (model?.pushStatus?.pushOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusConnected]\n });\n }\n\n if (model?.pushStatus?.pushOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusDisconnected]\n });\n }\n\n if (model?.maintenanceStatus?.maintenance) {\n ors.push(deviceUnderMaintenance);\n }\n\n if (ors.length) {\n filter.__or = ors;\n }\n\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: availabilityStatusPath }]\n };\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class SystemIdDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'id';\n this.name = 'systemId';\n this.header = gettext('System ID');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'ids',\n label: gettext('Show items with system ID'),\n addText: gettext('Add next`id`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '10300'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.ids.length) {\n filter[this.path] = { __in: model.ids };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class TypeDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.name = 'type';\n this.path = 'type';\n this.header = gettext('Type');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'types',\n label: gettext('Show devices with type'),\n addText: gettext('Add next`type`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('MyType`DEVICE_TYPE`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.types.length) {\n filter.type = { __in: model.types };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = { pathSortingConfigs: [{ path: 'type' }] };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { IManagedObject, InventoryService, IUser, UserService } from '@c8y/client';\nimport {\n ActionControl,\n AlertService,\n BulkActionControl,\n Column,\n DataGridService,\n gettext,\n GridConfig,\n HeaderActionControl,\n ModalService,\n Pagination,\n Row,\n Status,\n UserPreferencesService\n} from '@c8y/ngx-components';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Observable } from 'rxjs';\nimport { AlarmsDeviceGridColumn } from './columns/alarms.device-grid-column';\nimport { ColumnUtilService } from './columns/column-util.service';\nimport { GroupDeviceGridColumn } from './columns/group.device-grid-column';\nimport { ImeiDeviceGridColumn } from './columns/imei.device-grid-column';\nimport { ModelDeviceGridColumn } from './columns/model.device-grid-column';\nimport { NameDeviceGridColumn } from './columns/name.device-grid-column';\nimport { RegistrationDateDeviceGridColumn } from './columns/registration-date.device-grid-column';\nimport { SerialNumberDeviceGridColumn } from './columns/serial-number.device-grid-column';\nimport { StatusDeviceGridColumn } from './columns/status.device-grid-column';\nimport { SystemIdDeviceGridColumn } from './columns/system-id.device-grid-column';\nimport { DeviceGridActionType } from './device-grid.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceGridService extends DataGridService {\n protected GRID_CONFIG_DEFAULT_STORAGE_KEY = 'device-grid-config';\n\n constructor(\n protected inventoryService: InventoryService,\n protected userService: UserService,\n protected translateService: TranslateService,\n protected alertService: AlertService,\n protected modal: ModalService,\n protected columnUtilService: ColumnUtilService,\n protected userPreferencesService: UserPreferencesService\n ) {\n super(userPreferencesService);\n }\n\n getDefaultColumns(): Column[] {\n const defaultColumns = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new GroupDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return defaultColumns;\n }\n\n getChildDeviceGridColumns(): Column[] {\n const childDeviceGridColumn = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return childDeviceGridColumn;\n }\n\n getDefaultPagination(): Pagination {\n return {\n pageSize: 25,\n currentPage: 1\n };\n }\n\n getInfiniteScrollPagination(): Pagination {\n return {\n pageSize: 50,\n currentPage: 1\n };\n }\n\n getDefaultActionControls(): ActionControl[] {\n return [\n {\n type: DeviceGridActionType.Delete,\n callback: (item: Row) => this.delete(item as IManagedObject)\n }\n ];\n }\n\n getDefaultBulkActionControls(): BulkActionControl[] {\n return [];\n }\n\n getDefaultHeaderActionControls(): HeaderActionControl[] {\n return [];\n }\n\n getProperName(device: IManagedObject): string {\n return this.columnUtilService.getProperName(device);\n }\n\n getModel(device: IManagedObject): string {\n return this.columnUtilService.getModel(device);\n }\n\n getSerialNumber(device: IManagedObject): string {\n return this.columnUtilService.getSerialNumber(device);\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n return this.columnUtilService.getParentsNames(device, featuredParentId);\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n return this.columnUtilService.getHref(groupOrDevice, prefix);\n }\n\n getAlarmsHref(device: IManagedObject): string {\n return this.columnUtilService.getAlarmsHref(device);\n }\n\n async delete(device: IManagedObject): Promise<void> {\n try {\n const deviceWithChildren = await (\n await this.inventoryService.detail(device, { withChildren: true })\n ).data;\n const hasChildDevices = deviceWithChildren.childDevices?.references?.length > 0;\n const hasChildAdditions = deviceWithChildren.childAdditions?.references?.length > 0;\n const hasChildAssets = deviceWithChildren.childAssets?.references?.length > 0;\n const showDeleteChildren = () => hasChildAdditions || hasChildDevices || hasChildAssets;\n const modalResult = await this.modal.confirm(\n gettext('Delete device'),\n this.translateService.instant(\n gettext(`You are about to delete device \"{{ name }}\". Do you want to proceed?`),\n device\n ),\n Status.DANGER,\n { ok: gettext('Delete'), cancel: gettext('Cancel') },\n {\n cascade: {\n text: gettext('Also delete child hierarchy of this device.'),\n checked: showDeleteChildren(),\n showIf: showDeleteChildren,\n disabledByKey: 'withDeviceUser'\n },\n withDeviceUser: {\n text: this.translateService.instant(\n gettext('Also delete associated device owner \"{{ owner }}\".'),\n device\n ),\n checked: false,\n showIf: () => {\n const isRootDevice = device.c8y_IsDevice;\n const hasDeviceUserAsOwner =\n device.owner &&\n this.userService.isDeviceUser({ id: device.owner } as unknown as IUser);\n\n return Boolean(isRootDevice && hasDeviceUserAsOwner);\n },\n disabledByKey: 'cascade'\n }\n }\n );\n await this.inventoryService.delete(\n device,\n (modalResult as { confirmOptions: { [key: string]: any } }).confirmOptions\n );\n this.alertService.success(gettext('Device deleted.'));\n return Promise.resolve();\n } catch (ex) {\n // only if not cancel from modal\n if (ex) {\n this.alertService.addServerFailure(ex);\n }\n return Promise.reject();\n }\n }\n\n async getData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n text = null\n ) {\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, false, text),\n withGroups: true,\n withChildren\n };\n return this.inventoryService.list(filters);\n }\n\n async getChildDeviceData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, childDeviceFilters),\n withGroups: true,\n withChildren\n };\n return this.inventoryService.childDevicesList(id, filters);\n }\n\n async getCount(columns: Column[], pagination: Pagination, query: any = {}, text: string = null) {\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, false, text),\n pageSize: 1,\n currentPage: 1\n };\n return (await this.inventoryService.list(filters)).paging.totalPages;\n }\n\n async getCountChildDevices(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...this.getDevicesFilters(columns, pagination, query, childDeviceFilters),\n pageSize: 1,\n currentPage: 1\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalPages;\n }\n\n async getTotalChildDevices(query: any = {}, id: string): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n pageSize: 1,\n withTotalPages: true\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalPages;\n }\n\n async getTotal(query: any = {}): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n pageSize: 1,\n withTotalPages: true\n };\n return (await this.inventoryService.list(filters)).paging.totalPages;\n }\n\n getDeviceQueryString(columns: Column[], query: any): string {\n let fullQuery = this.getQueryObj(columns);\n fullQuery = this.queriesUtil.addAndFilter(fullQuery, query);\n return this.queriesUtil.buildQuery(fullQuery);\n }\n\n clearConfig(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY) {\n super.clearConfig(key);\n }\n\n getConfig$(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY): Observable<GridConfig> {\n return super.getConfig$(key);\n }\n\n saveConfig$(\n config: GridConfig,\n key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY\n ): Observable<GridConfig> {\n return super.saveConfig$(config, key);\n }\n\n private getDevicesFilters(\n columns: Column[],\n pagination: Pagination,\n query: any,\n childDeviceFilters?: boolean,\n text?: string\n ) {\n return {\n ...(childDeviceFilters\n ? { query: this.getDeviceQueryString(columns, query) }\n : { q: this.getDeviceQueryString(columns, query) }),\n ...(text && { text }),\n pageSize: pagination.pageSize,\n currentPage: pagination.currentPage,\n withChildren: false,\n withTotalPages: true\n };\n }\n}\n","import { Injectable, InjectionToken, Injector } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { IManagedObject } from '@c8y/client';\nimport {\n ExtensionFactory,\n ExtensionPointWithoutStateForPlugins,\n fromTriggerOnce,\n GenericHookType,\n hookGeneric,\n PluginsResolveService,\n GenericHookOptions,\n BuiltInActionType\n} from '@c8y/ngx-components';\nimport { flatten } from 'lodash-es';\nimport { Observable } from 'rxjs';\nimport { shareReplay } from 'rxjs/operators';\nimport { DeviceGridActionHook } from './device-grid.model';\nimport { DeviceGridService } from './device-grid.service';\n\n/**\n * An extension HOOK can use either a pure value:\n * ```typescript\n * { provide: HOOK_X, useValue: { ...hookValue }, multi: true }\n * ```\n *\n * Or an array to directly register multiple:\n * ```typescript\n * { provide: HOOK_X, useValue: [{ ...hookValues }], multi: true }\n * ```\n *\n * Or an ExtensionFactory which allows to define a get() function. This function\n * gets called on each navigation with the current route and can return values\n * async (observable or promise).\n * ```typescript\n * { provide: HOOK_X, useFactory: { get: (route) => doSomethingAsync(route) }, multi: true }\n * ```\n */\nexport type DeviceGridActionExtension =\n | DeviceGridActionHook\n | DeviceGridActionHook[]\n | ExtensionFactory<DeviceGridActionHook>;\n\n/**\n * A hook to use for Multi Provider extension.\n * @deprecated Consider using the `hookDeviceGridAction` function instead.\n */\nexport const HOOK_DEVICE_GRID_ACTION = new InjectionToken<DeviceGridActionExtension>(\n 'DeviceGridActionHook'\n);\n\n/**\n * You can either provide a single `DeviceGridActionExtension` as parameter:\n * ```typescript\n * hookDeviceGridAction(...)\n * ```\n *\n * Or an array to directly register multiple:\n * ```typescript\n * hookDeviceGridAction([...])\n * ```\n *\n * Or you provide an Service that implements `ExtensionFactory<DeviceGridActionExtension>`\n * ```typescript\n * export class MyDeviceGridActionFactory implements ExtensionFactory<DeviceGridActionExtension> {...}\n * ...\n * hookDeviceGridAction(MyDeviceGridActionFactory)\n * ```\n * A typed alternative to `HOOK_DEVICE_GRID_ACTION_DELETE`.\n * @param action The `DeviceGridDeleteExtension`'s or `ExtensionFactory` to be provided.\n * @returns An `Provider` to be provided in your module.\n */\nexport function hookDeviceGridAction(\n action: GenericHookType<DeviceGridActionExtension>,\n options?: Partial<GenericHookOptions>\n) {\n return hookGeneric<DeviceGridActionExtension>(action, HOOK_DEVICE_GRID_ACTION, options);\n}\n\n/**\n * A service which defines device grid action options.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceGridExtensionService extends ExtensionPointWithoutStateForPlugins<DeviceGridActionHook> {\n constructor(\n rootInjector: Injector,\n plugins: PluginsResolveService,\n private router: Router,\n private deviceGridService: DeviceGridService\n ) {\n super(rootInjector, plugins);\n this.items$ = this.setupItemsObservable();\n }\n\n protected setupItemsObservable(): Observable<DeviceGridActionHook[]> {\n return fromTriggerOnce<DeviceGridActionHook>(this.router, this.refresh$, [\n () => {\n const actions: DeviceGridActionHook[] = flatten(\n this.injectors.map(injector => injector.get(HOOK_DEVICE_GRID_ACTION, [], { self: true }))\n );\n\n const hasDeleteAction = actions.some(action => action.type === BuiltInActionType.Delete);\n\n if (!hasDeleteAction) {\n actions.push({\n type: BuiltInActionType.Delete,\n deviceMatches: (_mo: IManagedObject) => true,\n onAction: (mo: IManagedObject) => this.deviceGridService.delete(mo),\n refreshAfterActionDone: true\n });\n }\n\n return actions;\n },\n () => this.factories\n ]).pipe(shareReplay(1));\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild\n} from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport {\n ActionControl,\n alertOnError,\n BuiltInActionType,\n BulkActionControl,\n Column,\n DataGridComponent,\n DataSourceModifier,\n FilteringActionType,\n FilteringModifier,\n gettext,\n HeaderActionControl,\n LoadMoreMode,\n Pagination,\n ProductExperienceEvent,\n ProductExperienceEventSource,\n PRODUCT_EXPERIENCE_EVENT_SOURCE,\n Row,\n ServerSideDataCallback,\n ServerSideDataResult,\n toObservable\n} from '@c8y/ngx-components';\nimport { groupBy } from 'lodash-es';\nimport { EMPTY, from, Subject } from 'rxjs';\nimport { catchError, map, switchMap, takeUntil } from 'rxjs/operators';\nimport { DeviceGridExtensionService } from './device-grid-extension.service';\nimport { DataCallback, DeviceGridActionHook, FilterConfig } from './device-grid.model';\nimport { DeviceGridService } from './device-grid.service';\n\n@Component({\n selector: 'c8y-device-grid',\n templateUrl: './device-grid.component.html',\n providers: [\n {\n provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,\n useExisting: forwardRef(() => DeviceGridComponent)\n }\n ]\n})\nexport class DeviceGridComponent implements OnInit, OnDestroy, ProductExperienceEventSource {\n /** Optional callback function that allows to modify server side data result before it's rendered. */\n @Input() dataCallback: DataCallback;\n /** Takes an event emitter. When an event is emitted, the grid will be reloaded. */\n @Input() refresh: EventEmitter<void> = new EventEmitter();\n /** The title for the data grid, it's displayed in the grid's header. */\n @Input() title: string = gettext('Devices');\n /** The label for load more button. */\n @Input() loadMoreItemsLabel = gettext('Load more devices');\n /** The label for loading indicator. */\n @Input() loadingItemsLabel: string = gettext('Loading devices…');\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' column config is stored.\n */\n @Input() legacyConfigKey: string;\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' filter/sorting config is stored.\n */\n @Input() legacyFilterKey: string;\n /** The list of columns to be displayed in the grid. If not given, it defaults to standard columns. */\n @Input('columns') columns: Column[] = this.deviceGridService.getDefaultColumns();\n /** Pagination settings, e.g. allows for setting current page or page size. If not given, defaults to standard settings. */\n @Input('pagination') set _pagination(value: Pagination) {\n if (value) {\n this.pagination = value;\n }\n }\n infiniteScroll: LoadMoreMode;\n /** Sets load more mode. */\n @Input('infiniteScroll') set _infiniteScroll(infiniteScroll: LoadMoreMode) {\n this.infiniteScroll = infiniteScroll;\n if (infiniteScroll) {\n this.pagination = this.deviceGridService.getInfiniteScrollPagination();\n }\n }\n /**\n * Represents the input property for hiding specific built-in action types.\n * The `actionsToHide` input allows specifying an array of `BuiltInActionType` values or the string 'ALL' to hide all action controls\n */\n @Input() builtInActionsToHide: BuiltInActionType[] | 'ALL' = [];\n /** Sets action controls (actions available for individual items). If not given, it defaults to standard actions. */\n @Input('actionControls') set _actionControls(value: ActionControl[]) {\n if (value) {\n this.actionControls = value;\n } else {\n this.actionControls = this.deviceGridService.getDefaultActionControls();\n }\n }\n /** Determines whether items can be selected by clicking a checkbox in the first column. */\n @Input() selectable = false;\n /** Restricts selection to a single row only. Selection column displays radio button instead of checkboxes */\n @Input() singleSelection = false;\n /** Sets the base query which is appended to the request for data. */\n @Input() baseQuery: object = {};\n /** Sets bulk action controls (actions available for items selected by user). If not given, it defaults to standard bulk actions. */\n @Input('bulkActionControls') set _bulkActionControls(value: BulkActionControl[]) {\n if (value) {\n this.bulkActionControls = value;\n } else {\n this.bulkActionControls = this.deviceGridService.getDefaultBulkActionControls();\n }\n }\n /** Sets header action controls (actions available from the grid header). If not given, it defaults to empty list of actions. */\n @Input('headerActionControls') set _headerActionControls(value: HeaderActionControl[]) {\n if (value) {\n this.headerActionControls = value;\n } else {\n this.headerActionControls = this.deviceGridService.getDefaultHeaderActionControls();\n }\n }\n @Input() childDeviceGrid = false;\n @Input() parentDeviceId: string;\n /** Sets the withChildren query which is appended to the request. */\n @Input() withChildren = false;\n /**\n * Enables the search for devices where any device propery is matched agains the search term.\n * Enabled by default. This input does not take effect if the <code>childDeviceGrid</code> input is set to <code>true</code>\n */\n @Input() showSearch = true;\n /**\n * Sets the class name used for active rows (last clicked).\n * Set empty string to disable appending active class to grid rows.\n */\n @Input()\n activeClassName = 'active';\n /** Emits an event when columns configuration changes. */\n @Output() onColumnsChange: EventEmitter<Column[]> = new EventEmitter<Column[]>();\n @Output() onFilterChange: EventEmitter<FilterConfig[]> = new EventEmitter<FilterConfig[]>();\n @Output() onDeviceQueryStringChange: EventEmitter<string> = new EventEmitter<string>();\n /** Emits an event when items selection changes. The array contains ids of selected items. */\n @Output() itemsSelect = new EventEmitter<string[]>();\n\n actionControls: ActionControl[] = [];\n appliedFilters: FilterConfig[] = [];\n pagination: Pagination = this.deviceGridService.getDefaultPagination();\n bulkActionControls: BulkActionControl[] = this.deviceGridService.getDefaultBulkActionControls();\n headerActionControls: HeaderActionControl[] =\n this.deviceGridService.getDefaultHeaderActionControls();\n serverSideDataCallback: ServerSideDataCallback;\n\n @ViewChild(DataGridComponent, { static: true })\n dataGrid: DataGridComponent;\n productExperienceEvent: ProductExperienceEvent;\n\n private destroyed$: Subject<void> = new Subject();\n\n constructor(\n public deviceGridService: DeviceGridService,\n private dgExtensionService: DeviceGridExtensionService\n ) {\n this.serverSideDataCallback = this.onDataSourceModifier.bind(this);\n }\n\n ngOnInit() {\n this.setActionControls();\n }\n\n ngOnDestroy(): void {\n this.destroyed$.next();\n this.destroyed$.complete();\n }\n\n trackByName(_index, column: Column): string {\n return column.name;\n }\n\n async onDataSourceModifier(\n dataSourceModifier: DataSourceModifier\n ): Promise<ServerSideDataResult> {\n let serverSideDataResult: ServerSideDataResult;\n let filteredSize: number;\n let size: number;\n if (this.childDeviceGrid) {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getChildDeviceData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n this.parentDeviceId\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCountChildDevices(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.parentDeviceId\n )\n );\n size = await alertOnError(\n this.deviceGridService.getTotalChildDevices(this.baseQuery, this.parentDeviceId)\n );\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n } else {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n dataSourceModifier.searchText\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCount(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n dataSourceModifier.searchText\n )\n );\n size = await alertOnError(this.deviceGridService.getTotal(this.baseQuery));\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n }\n\n this.onColumnsChange.emit(dataSourceModifier.columns);\n this.onDeviceQueryStringChange.emit(\n this.deviceGridService.getDeviceQueryString(dataSourceModifier.columns, this.baseQuery)\n );\n\n if (this.dataCallback) {\n serverSideDataResult = this.dataCallback(serverSideDataResult);\n }\n\n return serverSideDataResult;\n }\n\n setActionControls() {\n if (this.builtInActionsToHide === 'ALL') {\n return;\n }\n const asArrayOfGroupedActionHooks = (hooks: DeviceGridActionHook[]) =>\n Object.values(groupBy(hooks, 'type')) as DeviceGridActionHook[];\n\n this.dgExtensionService.items$\n .pipe(\n map(asArrayOfGroupedActionHooks),\n switchMap(from),\n map((hooks: DeviceGridActionHook[]) => {\n const { type, icon, text, showOnHover } = hooks[0];\n const actionsToHide = this.builtInActionsToHide as typeof type;\n const shouldPushToActionControls =\n actionsToHide.length === 0 || !actionsToHide.includes(type);\n\n const matchingHooks = (device: Row) =>\n hooks.filter(hook => hook.deviceMatches(device as IManagedObject));\n\n const hasMatchingHooks = (device: Row) => !!matchingHooks(device).length;\n const useInventoryDelete = (device: Row) =>\n !hasMatchingHooks(device) && type === BuiltInActionType.Delete;\n\n const resolveAction = (device: Row) =>\n useInventoryDelete(device)\n ? this.deviceGridService.delete(device as IManagedObject)\n : matchingHooks(device)[0].onAction(device as IManagedObject);\n\n if (shouldPushToActionControls) {\n this.actionControls.push({\n type,\n icon,\n text,\n showOnHover,\n showIf: (device: Row) =>\n type === BuiltInActionType.Delete || hasMatchingHooks(device),\n callback: (device: Row) =>\n toObservable(resolveAction(device))\n .pipe(\n catchError(_err => EMPTY),\n takeUntil(this.destroyed$)\n )\n .subscribe(_success => {\n if (\n useInventoryDelete(device) ||\n matchingHooks(device)[0].refreshAfterActionDone\n )\n this.refresh.emit();\n })\n });\n }\n }),\n takeUntil(this.destroyed$)\n )\n .subscribe();\n }\n\n updateFiltering(\n columnNames: string[],\n action: {\n type: FilteringActionType;\n payload?: { filteringModifier: FilteringModifier };\n }\n ) {\n const { type } = action;\n if (type === FilteringActionType.ResetFilter) {\n this.dataGrid.clearFilters();\n } else {\n this.dataGrid.updateFiltering(columnNames, action);\n }\n }\n}\n","<c8y-data-grid\n [title]=\"title\"\n [loadMoreItemsLabel]=\"loadMoreItemsLabel\"\n [loadingItemsLabel]=\"loadingItemsLabel\"\n [columns]=\"columns\"\n [pagination]=\"pagination\"\n [infiniteScroll]=\"infiniteScroll\"\n [actionControls]=\"actionControls\"\n [selectable]=\"selectable\"\n [singleSelection]=\"singleSelection\"\n [bulkActionControls]=\"bulkActionControls\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n (itemsSelect)=\"itemsSelect.emit($event)\"\n [refresh]=\"refresh\"\n [showSearch]=\"showSearch && !childDeviceGrid\"\n [headerActionControls]=\"headerActionControls\"\n [activeClassName]=\"activeClassName\"\n c8yProductExperience\n inherit\n>\n <c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No matching devices.' | translate\"\n [subtitle]=\"'Refine your search terms' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n</c8y-data-grid>\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport {\n CommonModule,\n DataGridModule,\n DeviceStatusModule,\n DynamicFormsModule,\n FormsModule,\n ProductExperienceModule\n} from '@c8y/ngx-components';\nimport { AssetSelectorModule } from '@c8y/ngx-components/assets-navigator';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { AlarmsCellRendererComponent } from './columns/alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './columns/alarms.header-cell-renderer.component';\nimport { GroupCellRendererComponent } from './columns/group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './columns/group.filtering-form-renderer.component';\nimport { ModelCellRendererComponent } from './columns/model.cell-renderer.component';\nimport { NameCellRendererComponent } from './columns/name.cell-renderer.component';\nimport { RegistrationDateCellRendererComponent } from './columns/registration-date.cell-renderer.component';\nimport { SerialNumberCellRendererComponent } from './columns/serial-number.cell-renderer.component';\nimport { DeviceStatusCellRendererComponent } from './columns/status.cell-renderer.component';\nimport { DeviceGridComponent } from './device-grid.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n DeviceStatusModule,\n DataGridModule,\n AssetSelectorModule,\n DynamicFormsModule,\n PopoverModule,\n RouterModule,\n ProductExperienceModule\n ],\n declarations: [\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ],\n exports: [\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ]\n})\nexport class DeviceGridModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.ColumnUtilService","i2","i3","i4.ColumnUtilService","i3.DeviceGridService","map","i1.DeviceGridService","i2.DeviceGridExtensionService","i4"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@c8y/ngx-components","version":"1019.4.9","license":"Apache-2.0","author":"Cumulocity","description":"Angular modules for Cumulocity IoT applications","keywords":["Cumulocity","IoT","m2m","Angular","Components"],"peerDependencies":{"@angular/cdk":"^16.2.11","@angular/common":"^16.2.11","@angular/core":"^16.2.11","@angular/forms":"^16.2.11","@angular/platform-browser":"^16.2.11","@angular/router":"^16.2.11","@angular/upgrade":"^16.2.11","@c8y/client":"1019.4.9","@c8y/devkit":"1019.4.9","leaflet":"^1.7.1","rxjs":"^7.4.0"},"dependencies":{"@c8y/client":"1019.4.9","@ngx-formly/core":"6.1.3","@ngx-translate/core":"15.0.0","@ngx-translate/http-loader":"8.0.0","angularx-qrcode":"16.0.2","file-saver":"2.0.5","libphonenumber-js":"1.10.54","lodash-es":"^4.0.0","marked":"4.2.12","ngx-bootstrap":"11.0.2","semver":"~7.5.3","three":"0.154.0","tslib":"^2.6.0"},"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/ru.po":"./locales/ru.po","./locales/zh_CN.po":"./locales/zh_CN.po","./locales/zh_TW.po":"./locales/zh_TW.po","./locales/pl.po":"./locales/pl.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"},"./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-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"},"./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-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-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-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"},"./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"},"./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"},"./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"},"./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"},"./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"},"./replace-device-wizard":{"types":"./replace-device-wizard/index.d.ts","esm2022":"./esm2022/replace-device-wizard/c8y-ngx-components-replace-device-wizard.mjs","esm":"./esm2022/replace-device-wizard/c8y-ngx-components-replace-device-wizard.mjs","default":"./fesm2022/c8y-ngx-components-replace-device-wizard.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"},"./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"},"./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"},"./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"},"./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-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"},"./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/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"},"./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"},"./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/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"},"./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"},"./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/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/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/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/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/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/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/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"},"./widgets/implementations/three-d-rotation/box-model":{"types":"./widgets/implementations/three-d-rotation/box-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.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"},"./widgets/implementations/three-d-rotation/phone-model":{"types":"./widgets/implementations/three-d-rotation/phone-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs"}},"sideEffects":false}
|
|
1
|
+
{"name":"@c8y/ngx-components","version":"1019.4.11","license":"Apache-2.0","author":"Cumulocity","description":"Angular modules for Cumulocity IoT applications","keywords":["Cumulocity","IoT","m2m","Angular","Components"],"peerDependencies":{"@angular/cdk":"^16.2.11","@angular/common":"^16.2.11","@angular/core":"^16.2.11","@angular/forms":"^16.2.11","@angular/platform-browser":"^16.2.11","@angular/router":"^16.2.11","@angular/upgrade":"^16.2.11","@c8y/client":"1019.4.11","@c8y/devkit":"1019.4.11","leaflet":"^1.7.1","rxjs":"^7.4.0"},"dependencies":{"@c8y/client":"1019.4.11","@ngx-formly/core":"6.1.3","@ngx-translate/core":"15.0.0","@ngx-translate/http-loader":"8.0.0","angularx-qrcode":"16.0.2","file-saver":"2.0.5","libphonenumber-js":"1.10.54","lodash-es":"^4.0.0","marked":"4.2.12","ngx-bootstrap":"11.0.2","semver":"~7.5.3","three":"0.154.0","tslib":"^2.6.0"},"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/ru.po":"./locales/ru.po","./locales/zh_CN.po":"./locales/zh_CN.po","./locales/zh_TW.po":"./locales/zh_TW.po","./locales/pl.po":"./locales/pl.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"},"./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-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"},"./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-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-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-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"},"./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"},"./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"},"./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"},"./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"},"./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"},"./replace-device-wizard":{"types":"./replace-device-wizard/index.d.ts","esm2022":"./esm2022/replace-device-wizard/c8y-ngx-components-replace-device-wizard.mjs","esm":"./esm2022/replace-device-wizard/c8y-ngx-components-replace-device-wizard.mjs","default":"./fesm2022/c8y-ngx-components-replace-device-wizard.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"},"./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"},"./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"},"./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"},"./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-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/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/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/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"},"./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/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"},"./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"},"./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/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"},"./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"},"./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/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/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/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/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/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/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/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"},"./widgets/implementations/three-d-rotation/box-model":{"types":"./widgets/implementations/three-d-rotation/box-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.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"},"./widgets/implementations/three-d-rotation/phone-model":{"types":"./widgets/implementations/three-d-rotation/phone-model/index.d.ts","esm2022":"./esm2022/widgets/implementations/three-d-rotation/phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","esm":"./esm2022/widgets/implementations/three-d-rotation/phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","default":"./fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs"}},"sideEffects":false}
|