@c8y/ngx-components 1018.0.164 → 1018.0.170

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,6 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { UserService, InventoryService, DeviceRegistrationService, DeviceRegistrationStatus } from '@c8y/client';
3
- import { gettext } from '@c8y/client/src/gettext';
3
+ import { gettext } from '@c8y/ngx-components';
4
4
  import { get, pick, set } from 'lodash-es';
5
5
  import { BehaviorSubject, interval, merge, Subject } from 'rxjs';
6
6
  import { ManagedObjectRealtimeService, DeviceBootstrapRealtimeService, AppStateService } from '@c8y/ngx-components';
@@ -189,4 +189,4 @@ DataBrokerSubscriptionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion:
189
189
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DataBrokerSubscriptionsService, decorators: [{
190
190
  type: Injectable
191
191
  }], ctorParameters: function () { return [{ type: i1.ManagedObjectRealtimeService }, { type: i1.DeviceBootstrapRealtimeService }, { type: i2.InventoryService }, { type: i2.UserService }, { type: i2.DeviceRegistrationService }, { type: i1.AppStateService }]; } });
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1icm9rZXItc3Vic2NyaXB0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZGF0YS1icm9rZXIvZGF0YS1icm9rZXItc3Vic2NyaXB0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUlMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIseUJBQXlCLEVBQ3pCLHdCQUF3QixFQUN6QixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBYyxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzNGLE9BQU8sRUFDTCw0QkFBNEIsRUFDNUIsOEJBQThCLEVBQzlCLGVBQWUsRUFDaEIsTUFBTSxxQkFBcUIsQ0FBQztBQU83QixPQUFPLEVBQ0wsa0NBQWtDLEVBQ2xDLDZCQUE2QixFQUM5QixNQUFNLDhDQUE4QyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHOUYsTUFBTSxPQUFPLDhCQUE4QjtJQStCekMsWUFDVSxpQkFBK0MsRUFDL0MsOEJBQThELEVBQzlELGdCQUFrQyxFQUNsQyxXQUF3QixFQUN4Qix5QkFBb0QsRUFDcEQsZUFBZ0M7UUFMaEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUE4QjtRQUMvQyxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO1FBQzlELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMs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TUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCwrR0FBK0c7SUFDdkcsS0FBSyxDQUFDLGtCQUFrQixDQUM5QixhQUErQjtRQUUvQixNQUFNLHNCQUFzQixHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFDLFlBQVksRUFBQyxFQUFFO1lBQ3BFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEYsT0FBTztnQkFDTCxXQUFXLEVBQUUsV0FBVyxDQUFDLE9BQU87Z0JBQ2hDLGlCQUFpQixFQUFFLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxXQUFXLENBQUM7Z0JBQzdELE1BQU0sRUFBRSxXQUFXLENBQUMsRUFBRTtnQkFDdEIsTUFBTSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDO2dCQUNyRSxFQUFFLEVBQUUsWUFBWSxDQUFDLEVBQUU7Z0JBQ25CLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxnQkFBZ0I7YUFDeEIsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCwyQ0FBMkM7SUFDbkMsa0JBQWtCLENBQUMsTUFBaUM7UUFDMUQsT0FBTyxJQUFJLENBQUMsa0NBQWtDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9ELENBQUM7OzJIQWhRVSw4QkFBOEI7K0hBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUQxQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSURldmljZVJlZ2lzdHJhdGlvbixcbiAgSU1hbmFnZWRPYmplY3QsXG4gIElVc2VyLFxuICBVc2VyU2VydmljZSxcbiAgSW52ZW50b3J5U2VydmljZSxcbiAgRGV2aWNlUmVnaXN0cmF0aW9uU2VydmljZSxcbiAgRGV2aWNlUmVnaXN0cmF0aW9uU3RhdHVzXG59IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IGdldHRleHQgfSBmcm9tICdAYzh5L2NsaWVudC9zcmMvZ2V0dGV4dCc7XG5pbXBvcnQgeyBnZXQsIHBpY2ssIHNldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGludGVydmFsLCBtZXJnZSwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBNYW5hZ2VkT2JqZWN0UmVhbHRpbWVTZXJ2aWNlLFxuICBEZXZpY2VCb290c3RyYXBSZWFsdGltZVNlcnZpY2UsXG4gIEFwcFN0YXRlU2VydmljZVxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7XG4gIFN1YnNjcmlwdGlvblN0YXR1c1ZpZXdNb2RlbCxcbiAgRGF0YUJyb2tlckNvbm5lY3RvclN0YXR1cyxcbiAgU3Vic2NyaXB0aW9uVmlld01vZGVsLFxuICBTdWJzY3JpcHRpb25zVmlld01vZGVsTmcxXG59IGZyb20gJy4vbW9kZWwvZGF0YS1icm9rZXIuc3Vic2NyaXB0aW9uLm1vZGVsJztcbmltcG9ydCB7XG4gIFN1YnNjcmlwdGlvblN0YXR1c1ZpZXdNb2RlbEZhY3RvcnksXG4gIE5ld0RldmljZVJlcXVlc3RTdGF0dXNGYWN0b3J5XG59IGZyb20gJy4vZmFjdG9yaWVzL2RhdGEtYnJva2VyLnN1YnNjcmlwdGlvbi5mYWN0b3J5JztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERhdGFCcm9rZXJTdWJzY3JpcHRpb25zU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgRlJBR01FTlRfVFlQRTogc3RyaW5nID0gJ2M4eV9Ccm9rZXJTb3VyY2UnO1xuICBwcml2YXRlIHJlYWRvbmx5IE5FV19ERVZJQ0VfUkVRVUVTVF9UWVBFOiBzdHJpbmcgPSAnYzh5X0RhdGFCcm9rZXInO1xuICAvKipcbiAgICogaW52ZW50b3J5IHBvbGxpbmcgaW50ZXJ2YWxcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgUE9MTF9JTlRFUlZBTF9GT1JfU1VCU0NSSVBUSU9OUyA9IDE1MDAwO1xuICAvKipcbiAgICogcHJvZHVjZSBzdGF0dXMgZnJhZ21lbnQgZm9yIHN1YnNjcmlwdGlvblxuICAgKi9cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25TdGF0dXNWaWV3TW9kZWxGYWN0b3J5OiBTdWJzY3JpcHRpb25TdGF0dXNWaWV3TW9kZWxGYWN0b3J5O1xuICAvKipcbiAgICogcHJvZHVjZSByZXF1ZXN0IHN0YXR1cyB2aWV3IG1vZGVsXG4gICAqL1xuICBwcml2YXRlIG5ld0RldmljZVJlcXVlc3RTdGF0dXNWaWV3TW9kZWxGYWN0b3J5OiBOZXdEZXZpY2VSZXF1ZXN0U3RhdHVzRmFjdG9yeTtcblxuICBwcml2YXRlIG1vUmVhbHRpbWVTdWJzY3JpcHRpb25zTWFwID0gbmV3IE1hcDxzdHJpbmcsIFN1YnNjcmlwdGlvbj4oKTtcblxuICBwcml2YXRlIHN1YnNjcmlwdGlvbnNDb3VudDtcblxuICBwcml2YXRlIHJlZnJlc2hQZW5kaW5nVHJpZ2dlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHZvaWQ+KG51bGwpO1xuXG4gIGZpbHRlcnMgPSB7XG4gICAgZnJhZ21lbnRUeXBlOiB0aGlzLkZSQUdNRU5UX1RZUEVcbiAgfTtcblxuICAvKipcbiAgICogbGVnYWN5IGVudW0gdmFsdWVzXG4gICAqL1xuICBORVdfREVWSUNFX1JFUVVFU1RfU1RBVFVTO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbW9SZWFsdGltZVNlcnZpY2U6IE1hbmFnZWRPYmplY3RSZWFsdGltZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkZXZpY2VCb290c3RyYXBSZWFsdGltZVNlcnZpY2U6IERldmljZUJvb3RzdHJhcFJlYWx0aW1lU2VydmljZSxcbiAgICBwcml2YXRlIGludmVudG9yeVNlcnZpY2U6IEludmVudG9yeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkZXZpY2VSZWdpc3RyYXRpb25TZXJ2aWNlOiBEZXZpY2VSZWdpc3RyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgYXBwU3RhdGVTZXJ2aWNlOiBBcHBTdGF0ZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25TdGF0dXNWaWV3TW9kZWxGYWN0b3J5ID0gbmV3IFN1YnNjcmlwdGlvblN0YXR1c1ZpZXdNb2RlbEZhY3RvcnkoKTtcbiAgICB0aGlzLm5ld0RldmljZVJlcXVlc3RTdGF0dXNWaWV3TW9kZWxGYWN0b3J5ID0gbmV3IE5ld0RldmljZVJlcXVlc3RTdGF0dXNGYWN0b3J5KCk7XG5cbiAgICAvLyBCdWlsZCBsZWdhY3kgZW51bSBzdHJ1Y3R1cmUgZm9yIG5nMSBjb21wb25lbnRcbiAgICB0aGlzLk5FV19ERVZJQ0VfUkVRVUVTVF9TVEFUVVMgPSB0aGlzLmdlbmVyYXRlRGV2aWNlUmVxdWVzdFN0YXR1c0VudW0oXG4gICAgICB0aGlzLm5ld0RldmljZVJlcXVlc3RTdGF0dXNWaWV3TW9kZWxGYWN0b3J5XG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIGdldEJyb2tlclN1YnNjcmlwdGlvbnNMaXN0KCk6IFByb21pc2U8SU1hbmFnZWRPYmplY3RbXT4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5pbnZlbnRvcnlTZXJ2aWNlLmxpc3QodGhpcy5maWx0ZXJzKSkuZGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2VyIHN0YXR1cyB0ZXh0IChsZWdhY3kgY29tcGF0aWJpbGl0eSlcbiAgICovXG4gIGdldFZpc2libGVVc2VyU3RhdHVzVGV4dCh1c2VyKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdXNlci5lbmFibGVkID8gZ2V0dGV4dCgnYWN0aXZlYHN1YnNjcmlwdGlvbmAnKSA6IGdldHRleHQoJ2luYWN0aXZlYHN1YnNjcmlwdGlvbmAnKTtcbiAgfVxuXG4gIGFzeW5jIHJlbW92ZShzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblZpZXdNb2RlbCkge1xuICAgIC8vIGhhbmRsZSByZWFsdGltZSB1bnN1YnNyaWJlXG4gICAgaWYgKHRoaXMubW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAuaGFzKHN1YnNjcmlwdGlvbi5pZCkpIHtcbiAgICAgIHRoaXMubW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAuZ2V0KHN1YnNjcmlwdGlvbi5pZCkudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMubW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAuZGVsZXRlKHN1YnNjcmlwdGlvbi5pZCk7XG4gICAgfVxuICAgIC8vIGhhbmRsZSByZW1vdmFsXG4gICAgY29uc3QgYnJva2VyU291cmNlUmVuYW1lZCA9IGBfJHt0aGlzLkZSQUdNRU5UX1RZUEV9YDtcbiAgICBzZXQoc3Vic2NyaXB0aW9uLCB0aGlzLkZSQUdNRU5UX1RZUEUsIG51bGwpO1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuaW52ZW50b3J5U2VydmljZS51cGRhdGUoXG4gICAgICBwaWNrKHN1YnNjcmlwdGlvbiwgWydpZCcsIHRoaXMuRlJBR01FTlRfVFlQRSwgYnJva2VyU291cmNlUmVuYW1lZF0pXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHNldFN0YXR1cyhcbiAgICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblZpZXdNb2RlbCxcbiAgICBlbmFibGVkOiBib29sZWFuXG4gICk6IFByb21pc2U8U3Vic2NyaXB0aW9uVmlld01vZGVsPiB7XG4gICAgY29uc3QgdXNlckRhdGEgPSAoXG4gICAgICBhd2FpdCB0aGlzLnVzZXJTZXJ2aWNlLnVwZGF0ZSh7XG4gICAgICAgIGlkOiBzdWJzY3JpcHRpb24udXNlcklkLFxuICAgICAgICBlbmFibGVkXG4gICAgICB9IGFzIFBhcnRpYWw8SVVzZXI+KVxuICAgICkuZGF0YTtcbiAgICBzdWJzY3JpcHRpb24udXNlckVuYWJsZWQgPSB1c2VyRGF0YS5lbmFibGVkO1xuICAgIHN1YnNjcmlwdGlvbi52aXNpYmxlVXNlclN0YXR1cyA9IHRoaXMuZ2V0VmlzaWJsZVVzZXJTdGF0dXNUZXh0KHVzZXJEYXRhKTtcbiAgICByZXR1cm4gc3Vic2NyaXB0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcGVuZGluZyBzdWJzY3JpcHRpb25zXG4gICAqL1xuICBhc3luYyBsaXN0UGVuZGluZ0Jyb2tlclN1YnNjcmlwdGlvbnMoKTogUHJvbWlzZTxJRGV2aWNlUmVnaXN0cmF0aW9uW10+IHtcbiAgICByZXR1cm4gKFxuICAgICAgYXdhaXQgdGhpcy5kZXZpY2VSZWdpc3RyYXRpb25TZXJ2aWNlLmxpc3Qoe1xuICAgICAgICBwYWdlU2l6ZTogMjAwMCxcbiAgICAgICAgd2l0aFRvdGFsUGFnZXM6IHRydWVcbiAgICAgIH0pXG4gICAgKS5kYXRhO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdCBzdWJzY3JpcHRpb25cbiAgICovXG4gIGFzeW5jIGFjY2VwdChjb2RlOiBzdHJpbmcpOiBQcm9taXNlPElEZXZpY2VSZWdpc3RyYXRpb24+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZGV2aWNlUmVnaXN0cmF0aW9uU2VydmljZS5hY2NlcHQoY29kZSkpLmRhdGE7XG4gIH1cblxuICAvKipcbiAgICogRGlzY2FyZCBzdWJzY3JpcHRpb25cbiAgICovXG4gIGFzeW5jIGRpc2NhcmQoY29kZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuZGV2aWNlUmVnaXN0cmF0aW9uU2VydmljZS5kZWxldGUoY29kZSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIG5ldyBzdWJzY3JpcHRpb25cbiAgICovXG4gIGFzeW5jIGNyZWF0ZShjb2RlOiBzdHJpbmcpOiBQcm9taXNlPElEZXZpY2VSZWdpc3RyYXRpb24+IHtcbiAgICByZXR1cm4gKFxuICAgICAgYXdhaXQgdGhpcy5kZXZpY2VSZWdpc3RyYXRpb25TZXJ2aWNlLmNyZWF0ZSh7XG4gICAgICAgIGlkOiBjb2RlLFxuICAgICAgICB0eXBlOiB0aGlzLk5FV19ERVZJQ0VfUkVRVUVTVF9UWVBFXG4gICAgICB9KVxuICAgICkuZGF0YTtcbiAgfVxuXG4gIGdldEZvck5nMSh7XG4gICAgcG9sbGluZ0ludGVydmFsLFxuICAgIG9uUGVuZGluZ1N1YnNjcmlwdGlvbnMsXG4gICAgb25FeGlzdGluZ1N1YnNjcmlwdGlvbnMsXG4gICAgb25Nb1VwZGF0ZVxuICB9KTogU3Vic2NyaXB0aW9uc1ZpZXdNb2RlbE5nMSB7XG4gICAgY29uc3QgcmVsb2FkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgY29uc3QgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIGNvbnN0IHJlYWR5JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBjb25zdCB1bnN1YnNjcmliZVJlYWx0aW1lID0gKCkgPT4ge1xuICAgICAgY29uc3QgbW9SZWFsdGltZVN1YnNjcmlwdGlvbkl0ZXJhdG9yID0gdGhpcy5tb1JlYWx0aW1lU3Vic2NyaXB0aW9uc01hcC5rZXlzKCk7XG4gICAgICBsZXQga2V5ID0gbW9SZWFsdGltZVN1YnNjcmlwdGlvbkl0ZXJhdG9yLm5leHQoKS52YWx1ZSBhcyBzdHJpbmc7XG4gICAgICB3aGlsZSAodGhpcy5tb1JlYWx0aW1lU3Vic2NyaXB0aW9uc01hcC5oYXMoa2V5KSkge1xuICAgICAgICB0aGlzLm1vUmVhbHRpbWVTdWJzY3JpcHRpb25zTWFwLmdldChrZXkpLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMubW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAuZGVsZXRlKGtleSBhcyBzdHJpbmcpO1xuICAgICAgICBrZXkgPSBtb1JlYWx0aW1lU3Vic2NyaXB0aW9uSXRlcmF0b3IubmV4dCgpLnZhbHVlIGFzIHN0cmluZztcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgdXNlckluaXRpYWxpemVkJCA9IHRoaXMuYXBwU3RhdGVTZXJ2aWNlLmN1cnJlbnRVc2VyLnBpcGUoXG4gICAgICBmaWx0ZXIoY3VycmVudFVzZXIgPT4gY3VycmVudFVzZXIgIT09IG51bGwpXG4gICAgKTtcbiAgICBjb25zdCB0cmlnZ2VycyA9IG1lcmdlKHJlbG9hZCQsIHJlYWR5JCk7XG4gICAgY29uc3QgcGVuZGluZ1N1YnNjcmlwdGlvbnMkOiBPYnNlcnZhYmxlPFN1YnNjcmlwdGlvblZpZXdNb2RlbFtdPiA9IG1lcmdlKFxuICAgICAgdHJpZ2dlcnMsXG4gICAgICB0aGlzLmRldmljZUJvb3RzdHJhcFJlYWx0aW1lU2VydmljZS5vbkFsbCQoKSxcbiAgICAgIHRoaXMucmVmcmVzaFBlbmRpbmdUcmlnZ2VyJFxuICAgICkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB1c2VySW5pdGlhbGl6ZWQkKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmxpc3RQZW5kaW5nQnJva2VyU3Vic2NyaXB0aW9ucygpKSxcbiAgICAgIG1hcChwZW5kaW5nU3Vic2NyaXB0aW9ucyA9PlxuICAgICAgICB0aGlzLmNvbnZlcnREZXZpY2VSZWdpc3RyYXRpb25zVG9TdWJzY3JpcHRpb25WaWV3TW9kZWxzKHBlbmRpbmdTdWJzY3JpcHRpb25zKVxuICAgICAgKSxcbiAgICAgIHRha2VVbnRpbChkZXN0cm95JClcbiAgICApO1xuICAgIGNvbnN0IGV4aXN0aW5nU3Vic2NyaXB0aW9ucyQ6IE9ic2VydmFibGU8U3Vic2NyaXB0aW9uVmlld01vZGVsW10+ID0gbWVyZ2UoXG4gICAgICB0cmlnZ2VycyxcbiAgICAgIGludGVydmFsKHBvbGxpbmdJbnRlcnZhbClcbiAgICApLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdXNlckluaXRpYWxpemVkJCksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5nZXRCcm9rZXJTdWJzY3JpcHRpb25zTGlzdCgpKSxcbiAgICAgIHRhcChtb3MgPT4ge1xuICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb25zQ291bnQgIT09IG1vcy5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLnJlZnJlc2hQZW5kaW5nVHJpZ2dlciQubmV4dCgpO1xuICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uc0NvdW50ID0gbW9zLmxlbmd0aDtcbiAgICAgICAgfVxuICAgICAgICBtb3MuZm9yRWFjaChtbyA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLm1vUmVhbHRpbWVTdWJzY3JpcHRpb25zTWFwLmhhcyhtby5pZCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG1vcnRPYnNlcnZhYmxlID0gdGhpcy5tb1JlYWx0aW1lU2VydmljZVxuICAgICAgICAgICAgICAub25VcGRhdGUkKG1vLmlkKVxuICAgICAgICAgICAgICAucGlwZShzd2l0Y2hNYXAobW8gPT4gdGhpcy5jb252ZXJ0VG9WaWV3TW9kZWwoW21vXSkpKTtcbiAgICAgICAgICAgIHRoaXMubW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAuc2V0KG1vLmlkLCBtb3J0T2JzZXJ2YWJsZS5zdWJzY3JpYmUob25Nb1VwZGF0ZSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBzd2l0Y2hNYXAobW9zID0+IHRoaXMuY29udmVydFRvVmlld01vZGVsKG1vcykpLFxuICAgICAgdGFrZVVudGlsKGRlc3Ryb3kkKVxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgaW5pdCgpIHtcbiAgICAgICAgcGVuZGluZ1N1YnNjcmlwdGlvbnMkLnN1YnNjcmliZShvblBlbmRpbmdTdWJzY3JpcHRpb25zKTtcbiAgICAgICAgZXhpc3RpbmdTdWJzY3JpcHRpb25zJC5zdWJzY3JpYmUob25FeGlzdGluZ1N1YnNjcmlwdGlvbnMpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICByZWFkeSQubmV4dCgpO1xuICAgICAgICB9LCAxMDAwKTtcbiAgICAgIH0sXG4gICAgICByZWxvYWQoKSB7XG4gICAgICAgIHJlbG9hZCQubmV4dCgpO1xuICAgICAgfSxcbiAgICAgIGRlc3Ryb3koKSB7XG4gICAgICAgIGRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICAgICAgdW5zdWJzY3JpYmVSZWFsdGltZSgpO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGNvbnZlcnREZXZpY2VSZWdpc3RyYXRpb25zVG9TdWJzY3JpcHRpb25WaWV3TW9kZWxzKFxuICAgIHBlbmRpbmdTdWJzY3JpcHRpb25zXG4gICk6IFN1YnNjcmlwdGlvblZpZXdNb2RlbFtdIHtcbiAgICBjb25zdCBjb252ZXJ0ZWRUb1ZpZXdNb2RlbCA9IHBlbmRpbmdTdWJzY3JpcHRpb25zXG4gICAgICAuZmlsdGVyKGRldmljZVJlcXVlc3QgPT4gZGV2aWNlUmVxdWVzdC50eXBlID09PSB0aGlzLk5FV19ERVZJQ0VfUkVRVUVTVF9UWVBFKVxuICAgICAgLm1hcChkZXZpY2VSZXF1ZXN0ID0+IHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGdldChkZXZpY2VSZXF1ZXN0LCAnY3VzdG9tUHJvcGVydGllcy5jOHlfQnJva2VyU291cmNlJyksIHtcbiAgICAgICAgICBzdGF0dXM6IHRoaXMubmV3RGV2aWNlUmVxdWVzdFN0YXR1c1ZpZXdNb2RlbEZhY3RvcnkuYnVpbGQoZGV2aWNlUmVxdWVzdC5zdGF0dXMpLFxuICAgICAgICAgIHR5cGU6IGRldmljZVJlcXVlc3QudHlwZSxcbiAgICAgICAgICBpZDogZGV2aWNlUmVxdWVzdC5pZFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBjb252ZXJ0ZWRUb1ZpZXdNb2RlbDtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVEZXZpY2VSZXF1ZXN0U3RhdHVzRW51bShuZXdEZXZpY2VSZXF1ZXN0Vmlld01vZGVsRmFjdG9yeSkge1xuICAgIGNvbnN0IHJlc3VsdCA9IHt9O1xuICAgIGZvciAoY29uc3Qgc3RhdHVzIGluIERldmljZVJlZ2lzdHJhdGlvblN0YXR1cykge1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlc3VsdCwgc3RhdHVzLCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSxcbiAgICAgICAgdmFsdWU6IG5ld0RldmljZVJlcXVlc3RWaWV3TW9kZWxGYWN0b3J5LmJ1aWxkKHN0YXR1cyBhcyBhbnkgYXMgRGV2aWNlUmVnaXN0cmF0aW9uU3RhdHVzKVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvLyBGdW5jdGlvbiBtYXBzIGRhdGEgaW4gc3VpdGFibGUgbWFubmVyIHRvIGhhdmUgaXQgZWFzaWVyIHRvIGRpc3BsYXkuIFVzZWQgaW4gc2VydmljZSBtYWlubHkgZm9yIGNvbXBhdGliaWxpdHlcbiAgcHJpdmF0ZSBhc3luYyBjb252ZXJ0VG9WaWV3TW9kZWwoXG4gICAgc3Vic2NyaXB0aW9uczogSU1hbmFnZWRPYmplY3RbXVxuICApOiBQcm9taXNlPFN1YnNjcmlwdGlvblZpZXdNb2RlbFtdPiB7XG4gICAgY29uc3Qgdmlld01vZGVsU3Vic2NyaXB0aW9ucyA9IHN1YnNjcmlwdGlvbnMubWFwKGFzeW5jIHN1YnNjcmlwdGlvbiA9PiB7XG4gICAgICBjb25zdCB7IGRhdGE6IHVzZXJEZXRhaWxzIH0gPSBhd2FpdCB0aGlzLnVzZXJTZXJ2aWNlLmRldGFpbChzdWJzY3JpcHRpb24ub3duZXIpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdXNlckVuYWJsZWQ6IHVzZXJEZXRhaWxzLmVuYWJsZWQsXG4gICAgICAgIHZpc2libGVVc2VyU3RhdHVzOiB0aGlzLmdldFZpc2libGVVc2VyU3RhdHVzVGV4dCh1c2VyRGV0YWlscyksIC8vVE9ETzpJSUFSIHNob3VsZCBiZSBleHRyYWN0ZWQgdG8gbmd4IHBpcGUgd2hlbiB0aGUgcmVzdCBvZiBkYXRhLWJyb2tlciBpcyBtaWdyYXRlZFxuICAgICAgICB1c2VySWQ6IHVzZXJEZXRhaWxzLmlkLFxuICAgICAgICBzdGF0dXM6IHRoaXMuZ2V0U3RhdHVzVmlld01vZGVsKHN1YnNjcmlwdGlvbi5jOHlfQnJva2VyU291cmNlLnN0YXR1cyksIC8vVE9ETzpJSUFSIHNob3VsZCBiZSBleHRyYWN0ZWQgdG8gbmd4IHBpcGUgd2hlbiB0aGUgcmVzdCBvZiBkYXRhLWJyb2tlciBpcyBtaWdyYXRlZFxuICAgICAgICBpZDogc3Vic2NyaXB0aW9uLmlkLFxuICAgICAgICBfYzh5X0Jyb2tlclNvdXJjZTogc3Vic2NyaXB0aW9uLmM4eV9Ccm9rZXJTb3VyY2VcbiAgICAgIH0gYXMgU3Vic2NyaXB0aW9uVmlld01vZGVsO1xuICAgIH0pO1xuICAgIHJldHVybiBQcm9taXNlLmFsbCh2aWV3TW9kZWxTdWJzY3JpcHRpb25zKTtcbiAgfVxuXG4gIC8vIFN0YXR1cyBkZWNvcmF0aW9uIChsZWdhY3kgY29tcGF0aWJpbGl0eSlcbiAgcHJpdmF0ZSBnZXRTdGF0dXNWaWV3TW9kZWwoc3RhdHVzOiBEYXRhQnJva2VyQ29ubmVjdG9yU3RhdHVzKTogU3Vic2NyaXB0aW9uU3RhdHVzVmlld01vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5zdWJzY3JpcHRpb25TdGF0dXNWaWV3TW9kZWxGYWN0b3J5LmJ1aWxkKHN0YXR1cyk7XG4gIH1cbn1cbiJdfQ==
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1icm9rZXItc3Vic2NyaXB0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZGF0YS1icm9rZXIvZGF0YS1icm9rZXItc3Vic2NyaXB0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUlMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIseUJBQXlCLEVBQ3pCLHdCQUF3QixFQUN6QixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDOUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBYyxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzNGLE9BQU8sRUFDTCw0QkFBNEIsRUFDNUIsOEJBQThCLEVBQzlCLGVBQWUsRUFDaEIsTUFBTSxxQkFBcUIsQ0FBQztBQU83QixPQUFPLEVBQ0wsa0NBQWtDLEVBQ2xDLDZCQUE2QixFQUM5QixNQUFNLDhDQUE4QyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHOUYsTUFBTSxPQUFPLDhCQUE4QjtJQStCekMsWUFDVSxpQkFBK0MsRUFDL0MsOEJBQThELEVBQzlELGdCQUFrQyxFQUNsQyxXQUF3QixFQUN4Qix5QkFBb0QsRUFDcEQsZUFBZ0M7UUFMaEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUE4QjtRQUMvQyxtQ0FBOEIsR0FBOUIsOEJBQThCLENBQWdDO1FBQzlELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMs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TUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCwrR0FBK0c7SUFDdkcsS0FBSyxDQUFDLGtCQUFrQixDQUM5QixhQUErQjtRQUUvQixNQUFNLHNCQUFzQixHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFDLFlBQVksRUFBQyxFQUFFO1lBQ3BFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEYsT0FBTztnQkFDTCxXQUFXLEVBQUUsV0FBVyxDQUFDLE9BQU87Z0JBQ2hDLGlCQUFpQixFQUFFLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxXQUFXLENBQUM7Z0JBQzdELE1BQU0sRUFBRSxXQUFXLENBQUMsRUFBRTtnQkFDdEIsTUFBTSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDO2dCQUNyRSxFQUFFLEVBQUUsWUFBWSxDQUFDLEVBQUU7Z0JBQ25CLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxnQkFBZ0I7YUFDeEIsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCwyQ0FBMkM7SUFDbkMsa0JBQWtCLENBQUMsTUFBaUM7UUFDMUQsT0FBTyxJQUFJLENBQUMsa0NBQWtDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9ELENBQUM7OzJIQWhRVSw4QkFBOEI7K0hBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUQxQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSURldmljZVJlZ2lzdHJhdGlvbixcbiAgSU1hbmFnZWRPYmplY3QsXG4gIElVc2VyLFxuICBVc2VyU2VydmljZSxcbiAgSW52ZW50b3J5U2VydmljZSxcbiAgRGV2aWNlUmVnaXN0cmF0aW9uU2VydmljZSxcbiAgRGV2aWNlUmVnaXN0cmF0aW9uU3RhdHVzXG59IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IGdldHRleHQgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IGdldCwgcGljaywgc2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgaW50ZXJ2YWwsIG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIE1hbmFnZWRPYmplY3RSZWFsdGltZVNlcnZpY2UsXG4gIERldmljZUJvb3RzdHJhcFJlYWx0aW1lU2VydmljZSxcbiAgQXBwU3RhdGVTZXJ2aWNlXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHtcbiAgU3Vic2NyaXB0aW9uU3RhdHVzVmlld01vZGVsLFxuICBEYXRhQnJva2VyQ29ubmVjdG9yU3RhdHVzLFxuICBTdWJzY3JpcHRpb25WaWV3TW9kZWwsXG4gIFN1YnNjcmlwdGlvbnNWaWV3TW9kZWxOZzFcbn0gZnJvbSAnLi9tb2RlbC9kYXRhLWJyb2tlci5zdWJzY3JpcHRpb24ubW9kZWwnO1xuaW1wb3J0IHtcbiAgU3Vic2NyaXB0aW9uU3RhdHVzVmlld01vZGVsRmFjdG9yeSxcbiAgTmV3RGV2aWNlUmVxdWVzdFN0YXR1c0ZhY3Rvcnlcbn0gZnJvbSAnLi9mYWN0b3JpZXMvZGF0YS1icm9rZXIuc3Vic2NyaXB0aW9uLmZhY3RvcnknO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGF0YUJyb2tlclN1YnNjcmlwdGlvbnNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBGUkFHTUVOVF9UWVBFOiBzdHJpbmcgPSAnYzh5X0Jyb2tlclNvdXJjZSc7XG4gIHByaXZhdGUgcmVhZG9ubHkgTkVXX0RFVklDRV9SRVFVRVNUX1RZUEU6IHN0cmluZyA9ICdjOHlfRGF0YUJyb2tlcic7XG4gIC8qKlxuICAgKiBpbnZlbnRvcnkgcG9sbGluZyBpbnRlcnZhbFxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBQT0xMX0lOVEVSVkFMX0ZPUl9TVUJTQ1JJUFRJT05TID0gMTUwMDA7XG4gIC8qKlxuICAgKiBwcm9kdWNlIHN0YXR1cyBmcmFnbWVudCBmb3Igc3Vic2NyaXB0aW9uXG4gICAqL1xuICBwcml2YXRlIHN1YnNjcmlwdGlvblN0YXR1c1ZpZXdNb2RlbEZhY3Rvcnk6IFN1YnNjcmlwdGlvblN0YXR1c1ZpZXdNb2RlbEZhY3Rvcnk7XG4gIC8qKlxuICAgKiBwcm9kdWNlIHJlcXVlc3Qgc3RhdHVzIHZpZXcgbW9kZWxcbiAgICovXG4gIHByaXZhdGUgbmV3RGV2aWNlUmVxdWVzdFN0YXR1c1ZpZXdNb2RlbEZhY3Rvcnk6IE5ld0RldmljZVJlcXVlc3RTdGF0dXNGYWN0b3J5O1xuXG4gIHByaXZhdGUgbW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAgPSBuZXcgTWFwPHN0cmluZywgU3Vic2NyaXB0aW9uPigpO1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uc0NvdW50O1xuXG4gIHByaXZhdGUgcmVmcmVzaFBlbmRpbmdUcmlnZ2VyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8dm9pZD4obnVsbCk7XG5cbiAgZmlsdGVycyA9IHtcbiAgICBmcmFnbWVudFR5cGU6IHRoaXMuRlJBR01FTlRfVFlQRVxuICB9O1xuXG4gIC8qKlxuICAgKiBsZWdhY3kgZW51bSB2YWx1ZXNcbiAgICovXG4gIE5FV19ERVZJQ0VfUkVRVUVTVF9TVEFUVVM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBtb1JlYWx0aW1lU2VydmljZTogTWFuYWdlZE9iamVjdFJlYWx0aW1lU2VydmljZSxcbiAgICBwcml2YXRlIGRldmljZUJvb3RzdHJhcFJlYWx0aW1lU2VydmljZTogRGV2aWNlQm9vdHN0cmFwUmVhbHRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW52ZW50b3J5U2VydmljZTogSW52ZW50b3J5U2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIGRldmljZVJlZ2lzdHJhdGlvblNlcnZpY2U6IERldmljZVJlZ2lzdHJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcHBTdGF0ZVNlcnZpY2U6IEFwcFN0YXRlU2VydmljZVxuICApIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvblN0YXR1c1ZpZXdNb2RlbEZhY3RvcnkgPSBuZXcgU3Vic2NyaXB0aW9uU3RhdHVzVmlld01vZGVsRmFjdG9yeSgpO1xuICAgIHRoaXMubmV3RGV2aWNlUmVxdWVzdFN0YXR1c1ZpZXdNb2RlbEZhY3RvcnkgPSBuZXcgTmV3RGV2aWNlUmVxdWVzdFN0YXR1c0ZhY3RvcnkoKTtcblxuICAgIC8vIEJ1aWxkIGxlZ2FjeSBlbnVtIHN0cnVjdHVyZSBmb3IgbmcxIGNvbXBvbmVudFxuICAgIHRoaXMuTkVXX0RFVklDRV9SRVFVRVNUX1NUQVRVUyA9IHRoaXMuZ2VuZXJhdGVEZXZpY2VSZXF1ZXN0U3RhdHVzRW51bShcbiAgICAgIHRoaXMubmV3RGV2aWNlUmVxdWVzdFN0YXR1c1ZpZXdNb2RlbEZhY3RvcnlcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgZ2V0QnJva2VyU3Vic2NyaXB0aW9uc0xpc3QoKTogUHJvbWlzZTxJTWFuYWdlZE9iamVjdFtdPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmludmVudG9yeVNlcnZpY2UubGlzdCh0aGlzLmZpbHRlcnMpKS5kYXRhO1xuICB9XG5cbiAgLyoqXG4gICAqIFVzZXIgc3RhdHVzIHRleHQgKGxlZ2FjeSBjb21wYXRpYmlsaXR5KVxuICAgKi9cbiAgZ2V0VmlzaWJsZVVzZXJTdGF0dXNUZXh0KHVzZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiB1c2VyLmVuYWJsZWQgPyBnZXR0ZXh0KCdhY3RpdmVgc3Vic2NyaXB0aW9uYCcpIDogZ2V0dGV4dCgnaW5hY3RpdmVgc3Vic2NyaXB0aW9uYCcpO1xuICB9XG5cbiAgYXN5bmMgcmVtb3ZlKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uVmlld01vZGVsKSB7XG4gICAgLy8gaGFuZGxlIHJlYWx0aW1lIHVuc3Vic3JpYmVcbiAgICBpZiAodGhpcy5tb1JlYWx0aW1lU3Vic2NyaXB0aW9uc01hcC5oYXMoc3Vic2NyaXB0aW9uLmlkKSkge1xuICAgICAgdGhpcy5tb1JlYWx0aW1lU3Vic2NyaXB0aW9uc01hcC5nZXQoc3Vic2NyaXB0aW9uLmlkKS51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5tb1JlYWx0aW1lU3Vic2NyaXB0aW9uc01hcC5kZWxldGUoc3Vic2NyaXB0aW9uLmlkKTtcbiAgICB9XG4gICAgLy8gaGFuZGxlIHJlbW92YWxcbiAgICBjb25zdCBicm9rZXJTb3VyY2VSZW5hbWVkID0gYF8ke3RoaXMuRlJBR01FTlRfVFlQRX1gO1xuICAgIHNldChzdWJzY3JpcHRpb24sIHRoaXMuRlJBR01FTlRfVFlQRSwgbnVsbCk7XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5pbnZlbnRvcnlTZXJ2aWNlLnVwZGF0ZShcbiAgICAgIHBpY2soc3Vic2NyaXB0aW9uLCBbJ2lkJywgdGhpcy5GUkFHTUVOVF9UWVBFLCBicm9rZXJTb3VyY2VSZW5hbWVkXSlcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgc2V0U3RhdHVzKFxuICAgIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uVmlld01vZGVsLFxuICAgIGVuYWJsZWQ6IGJvb2xlYW5cbiAgKTogUHJvbWlzZTxTdWJzY3JpcHRpb25WaWV3TW9kZWw+IHtcbiAgICBjb25zdCB1c2VyRGF0YSA9IChcbiAgICAgIGF3YWl0IHRoaXMudXNlclNlcnZpY2UudXBkYXRlKHtcbiAgICAgICAgaWQ6IHN1YnNjcmlwdGlvbi51c2VySWQsXG4gICAgICAgIGVuYWJsZWRcbiAgICAgIH0gYXMgUGFydGlhbDxJVXNlcj4pXG4gICAgKS5kYXRhO1xuICAgIHN1YnNjcmlwdGlvbi51c2VyRW5hYmxlZCA9IHVzZXJEYXRhLmVuYWJsZWQ7XG4gICAgc3Vic2NyaXB0aW9uLnZpc2libGVVc2VyU3RhdHVzID0gdGhpcy5nZXRWaXNpYmxlVXNlclN0YXR1c1RleHQodXNlckRhdGEpO1xuICAgIHJldHVybiBzdWJzY3JpcHRpb247XG4gIH1cblxuICAvKipcbiAgICogTGlzdCBvZiBwZW5kaW5nIHN1YnNjcmlwdGlvbnNcbiAgICovXG4gIGFzeW5jIGxpc3RQZW5kaW5nQnJva2VyU3Vic2NyaXB0aW9ucygpOiBQcm9taXNlPElEZXZpY2VSZWdpc3RyYXRpb25bXT4ge1xuICAgIHJldHVybiAoXG4gICAgICBhd2FpdCB0aGlzLmRldmljZVJlZ2lzdHJhdGlvblNlcnZpY2UubGlzdCh7XG4gICAgICAgIHBhZ2VTaXplOiAyMDAwLFxuICAgICAgICB3aXRoVG90YWxQYWdlczogdHJ1ZVxuICAgICAgfSlcbiAgICApLmRhdGE7XG4gIH1cblxuICAvKipcbiAgICogQWNjZXB0IHN1YnNjcmlwdGlvblxuICAgKi9cbiAgYXN5bmMgYWNjZXB0KGNvZGU6IHN0cmluZyk6IFByb21pc2U8SURldmljZVJlZ2lzdHJhdGlvbj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5kZXZpY2VSZWdpc3RyYXRpb25TZXJ2aWNlLmFjY2VwdChjb2RlKSkuZGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNjYXJkIHN1YnNjcmlwdGlvblxuICAgKi9cbiAgYXN5bmMgZGlzY2FyZChjb2RlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5kZXZpY2VSZWdpc3RyYXRpb25TZXJ2aWNlLmRlbGV0ZShjb2RlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgbmV3IHN1YnNjcmlwdGlvblxuICAgKi9cbiAgYXN5bmMgY3JlYXRlKGNvZGU6IHN0cmluZyk6IFByb21pc2U8SURldmljZVJlZ2lzdHJhdGlvbj4ge1xuICAgIHJldHVybiAoXG4gICAgICBhd2FpdCB0aGlzLmRldmljZVJlZ2lzdHJhdGlvblNlcnZpY2UuY3JlYXRlKHtcbiAgICAgICAgaWQ6IGNvZGUsXG4gICAgICAgIHR5cGU6IHRoaXMuTkVXX0RFVklDRV9SRVFVRVNUX1RZUEVcbiAgICAgIH0pXG4gICAgKS5kYXRhO1xuICB9XG5cbiAgZ2V0Rm9yTmcxKHtcbiAgICBwb2xsaW5nSW50ZXJ2YWwsXG4gICAgb25QZW5kaW5nU3Vic2NyaXB0aW9ucyxcbiAgICBvbkV4aXN0aW5nU3Vic2NyaXB0aW9ucyxcbiAgICBvbk1vVXBkYXRlXG4gIH0pOiBTdWJzY3JpcHRpb25zVmlld01vZGVsTmcxIHtcbiAgICBjb25zdCByZWxvYWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBjb25zdCBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgY29uc3QgcmVhZHkkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIGNvbnN0IHVuc3Vic2NyaWJlUmVhbHRpbWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtb1JlYWx0aW1lU3Vic2NyaXB0aW9uSXRlcmF0b3IgPSB0aGlzLm1vUmVhbHRpbWVTdWJzY3JpcHRpb25zTWFwLmtleXMoKTtcbiAgICAgIGxldCBrZXkgPSBtb1JlYWx0aW1lU3Vic2NyaXB0aW9uSXRlcmF0b3IubmV4dCgpLnZhbHVlIGFzIHN0cmluZztcbiAgICAgIHdoaWxlICh0aGlzLm1vUmVhbHRpbWVTdWJzY3JpcHRpb25zTWFwLmhhcyhrZXkpKSB7XG4gICAgICAgIHRoaXMubW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAuZ2V0KGtleSkudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5tb1JlYWx0aW1lU3Vic2NyaXB0aW9uc01hcC5kZWxldGUoa2V5IGFzIHN0cmluZyk7XG4gICAgICAgIGtleSA9IG1vUmVhbHRpbWVTdWJzY3JpcHRpb25JdGVyYXRvci5uZXh0KCkudmFsdWUgYXMgc3RyaW5nO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCB1c2VySW5pdGlhbGl6ZWQkID0gdGhpcy5hcHBTdGF0ZVNlcnZpY2UuY3VycmVudFVzZXIucGlwZShcbiAgICAgIGZpbHRlcihjdXJyZW50VXNlciA9PiBjdXJyZW50VXNlciAhPT0gbnVsbClcbiAgICApO1xuICAgIGNvbnN0IHRyaWdnZXJzID0gbWVyZ2UocmVsb2FkJCwgcmVhZHkkKTtcbiAgICBjb25zdCBwZW5kaW5nU3Vic2NyaXB0aW9ucyQ6IE9ic2VydmFibGU8U3Vic2NyaXB0aW9uVmlld01vZGVsW10+ID0gbWVyZ2UoXG4gICAgICB0cmlnZ2VycyxcbiAgICAgIHRoaXMuZGV2aWNlQm9vdHN0cmFwUmVhbHRpbWVTZXJ2aWNlLm9uQWxsJCgpLFxuICAgICAgdGhpcy5yZWZyZXNoUGVuZGluZ1RyaWdnZXIkXG4gICAgKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHVzZXJJbml0aWFsaXplZCQpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMubGlzdFBlbmRpbmdCcm9rZXJTdWJzY3JpcHRpb25zKCkpLFxuICAgICAgbWFwKHBlbmRpbmdTdWJzY3JpcHRpb25zID0+XG4gICAgICAgIHRoaXMuY29udmVydERldmljZVJlZ2lzdHJhdGlvbnNUb1N1YnNjcmlwdGlvblZpZXdNb2RlbHMocGVuZGluZ1N1YnNjcmlwdGlvbnMpXG4gICAgICApLFxuICAgICAgdGFrZVVudGlsKGRlc3Ryb3kkKVxuICAgICk7XG4gICAgY29uc3QgZXhpc3RpbmdTdWJzY3JpcHRpb25zJDogT2JzZXJ2YWJsZTxTdWJzY3JpcHRpb25WaWV3TW9kZWxbXT4gPSBtZXJnZShcbiAgICAgIHRyaWdnZXJzLFxuICAgICAgaW50ZXJ2YWwocG9sbGluZ0ludGVydmFsKVxuICAgICkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB1c2VySW5pdGlhbGl6ZWQkKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmdldEJyb2tlclN1YnNjcmlwdGlvbnNMaXN0KCkpLFxuICAgICAgdGFwKG1vcyA9PiB7XG4gICAgICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbnNDb3VudCAhPT0gbW9zLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMucmVmcmVzaFBlbmRpbmdUcmlnZ2VyJC5uZXh0KCk7XG4gICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zQ291bnQgPSBtb3MubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIG1vcy5mb3JFYWNoKG1vID0+IHtcbiAgICAgICAgICBpZiAoIXRoaXMubW9SZWFsdGltZVN1YnNjcmlwdGlvbnNNYXAuaGFzKG1vLmlkKSkge1xuICAgICAgICAgICAgY29uc3QgbW9ydE9ic2VydmFibGUgPSB0aGlzLm1vUmVhbHRpbWVTZXJ2aWNlXG4gICAgICAgICAgICAgIC5vblVwZGF0ZSQobW8uaWQpXG4gICAgICAgICAgICAgIC5waXBlKHN3aXRjaE1hcChtbyA9PiB0aGlzLmNvbnZlcnRUb1ZpZXdNb2RlbChbbW9dKSkpO1xuICAgICAgICAgICAgdGhpcy5tb1JlYWx0aW1lU3Vic2NyaXB0aW9uc01hcC5zZXQobW8uaWQsIG1vcnRPYnNlcnZhYmxlLnN1YnNjcmliZShvbk1vVXBkYXRlKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHN3aXRjaE1hcChtb3MgPT4gdGhpcy5jb252ZXJ0VG9WaWV3TW9kZWwobW9zKSksXG4gICAgICB0YWtlVW50aWwoZGVzdHJveSQpXG4gICAgKTtcblxuICAgIHJldHVybiB7XG4gICAgICBpbml0KCkge1xuICAgICAgICBwZW5kaW5nU3Vic2NyaXB0aW9ucyQuc3Vic2NyaWJlKG9uUGVuZGluZ1N1YnNjcmlwdGlvbnMpO1xuICAgICAgICBleGlzdGluZ1N1YnNjcmlwdGlvbnMkLnN1YnNjcmliZShvbkV4aXN0aW5nU3Vic2NyaXB0aW9ucyk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHJlYWR5JC5uZXh0KCk7XG4gICAgICAgIH0sIDEwMDApO1xuICAgICAgfSxcbiAgICAgIHJlbG9hZCgpIHtcbiAgICAgICAgcmVsb2FkJC5uZXh0KCk7XG4gICAgICB9LFxuICAgICAgZGVzdHJveSgpIHtcbiAgICAgICAgZGVzdHJveSQubmV4dCgpO1xuICAgICAgICBkZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgICAgICB1bnN1YnNjcmliZVJlYWx0aW1lKCk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgY29udmVydERldmljZVJlZ2lzdHJhdGlvbnNUb1N1YnNjcmlwdGlvblZpZXdNb2RlbHMoXG4gICAgcGVuZGluZ1N1YnNjcmlwdGlvbnNcbiAgKTogU3Vic2NyaXB0aW9uVmlld01vZGVsW10ge1xuICAgIGNvbnN0IGNvbnZlcnRlZFRvVmlld01vZGVsID0gcGVuZGluZ1N1YnNjcmlwdGlvbnNcbiAgICAgIC5maWx0ZXIoZGV2aWNlUmVxdWVzdCA9PiBkZXZpY2VSZXF1ZXN0LnR5cGUgPT09IHRoaXMuTkVXX0RFVklDRV9SRVFVRVNUX1RZUEUpXG4gICAgICAubWFwKGRldmljZVJlcXVlc3QgPT4ge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgZ2V0KGRldmljZVJlcXVlc3QsICdjdXN0b21Qcm9wZXJ0aWVzLmM4eV9Ccm9rZXJTb3VyY2UnKSwge1xuICAgICAgICAgIHN0YXR1czogdGhpcy5uZXdEZXZpY2VSZXF1ZXN0U3RhdHVzVmlld01vZGVsRmFjdG9yeS5idWlsZChkZXZpY2VSZXF1ZXN0LnN0YXR1cyksXG4gICAgICAgICAgdHlwZTogZGV2aWNlUmVxdWVzdC50eXBlLFxuICAgICAgICAgIGlkOiBkZXZpY2VSZXF1ZXN0LmlkXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgcmV0dXJuIGNvbnZlcnRlZFRvVmlld01vZGVsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZURldmljZVJlcXVlc3RTdGF0dXNFbnVtKG5ld0RldmljZVJlcXVlc3RWaWV3TW9kZWxGYWN0b3J5KSB7XG4gICAgY29uc3QgcmVzdWx0ID0ge307XG4gICAgZm9yIChjb25zdCBzdGF0dXMgaW4gRGV2aWNlUmVnaXN0cmF0aW9uU3RhdHVzKSB7XG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocmVzdWx0LCBzdGF0dXMsIHtcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgICB2YWx1ZTogbmV3RGV2aWNlUmVxdWVzdFZpZXdNb2RlbEZhY3RvcnkuYnVpbGQoc3RhdHVzIGFzIGFueSBhcyBEZXZpY2VSZWdpc3RyYXRpb25TdGF0dXMpXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8vIEZ1bmN0aW9uIG1hcHMgZGF0YSBpbiBzdWl0YWJsZSBtYW5uZXIgdG8gaGF2ZSBpdCBlYXNpZXIgdG8gZGlzcGxheS4gVXNlZCBpbiBzZXJ2aWNlIG1haW5seSBmb3IgY29tcGF0aWJpbGl0eVxuICBwcml2YXRlIGFzeW5jIGNvbnZlcnRUb1ZpZXdNb2RlbChcbiAgICBzdWJzY3JpcHRpb25zOiBJTWFuYWdlZE9iamVjdFtdXG4gICk6IFByb21pc2U8U3Vic2NyaXB0aW9uVmlld01vZGVsW10+IHtcbiAgICBjb25zdCB2aWV3TW9kZWxTdWJzY3JpcHRpb25zID0gc3Vic2NyaXB0aW9ucy5tYXAoYXN5bmMgc3Vic2NyaXB0aW9uID0+IHtcbiAgICAgIGNvbnN0IHsgZGF0YTogdXNlckRldGFpbHMgfSA9IGF3YWl0IHRoaXMudXNlclNlcnZpY2UuZGV0YWlsKHN1YnNjcmlwdGlvbi5vd25lcik7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB1c2VyRW5hYmxlZDogdXNlckRldGFpbHMuZW5hYmxlZCxcbiAgICAgICAgdmlzaWJsZVVzZXJTdGF0dXM6IHRoaXMuZ2V0VmlzaWJsZVVzZXJTdGF0dXNUZXh0KHVzZXJEZXRhaWxzKSwgLy9UT0RPOklJQVIgc2hvdWxkIGJlIGV4dHJhY3RlZCB0byBuZ3ggcGlwZSB3aGVuIHRoZSByZXN0IG9mIGRhdGEtYnJva2VyIGlzIG1pZ3JhdGVkXG4gICAgICAgIHVzZXJJZDogdXNlckRldGFpbHMuaWQsXG4gICAgICAgIHN0YXR1czogdGhpcy5nZXRTdGF0dXNWaWV3TW9kZWwoc3Vic2NyaXB0aW9uLmM4eV9Ccm9rZXJTb3VyY2Uuc3RhdHVzKSwgLy9UT0RPOklJQVIgc2hvdWxkIGJlIGV4dHJhY3RlZCB0byBuZ3ggcGlwZSB3aGVuIHRoZSByZXN0IG9mIGRhdGEtYnJva2VyIGlzIG1pZ3JhdGVkXG4gICAgICAgIGlkOiBzdWJzY3JpcHRpb24uaWQsXG4gICAgICAgIF9jOHlfQnJva2VyU291cmNlOiBzdWJzY3JpcHRpb24uYzh5X0Jyb2tlclNvdXJjZVxuICAgICAgfSBhcyBTdWJzY3JpcHRpb25WaWV3TW9kZWw7XG4gICAgfSk7XG4gICAgcmV0dXJuIFByb21pc2UuYWxsKHZpZXdNb2RlbFN1YnNjcmlwdGlvbnMpO1xuICB9XG5cbiAgLy8gU3RhdHVzIGRlY29yYXRpb24gKGxlZ2FjeSBjb21wYXRpYmlsaXR5KVxuICBwcml2YXRlIGdldFN0YXR1c1ZpZXdNb2RlbChzdGF0dXM6IERhdGFCcm9rZXJDb25uZWN0b3JTdGF0dXMpOiBTdWJzY3JpcHRpb25TdGF0dXNWaWV3TW9kZWwge1xuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvblN0YXR1c1ZpZXdNb2RlbEZhY3RvcnkuYnVpbGQoc3RhdHVzKTtcbiAgfVxufVxuIl19
@@ -1,6 +1,6 @@
1
1
  import { Component, ViewChild } from '@angular/core';
2
2
  import { NgForm } from '@angular/forms';
3
- import { gettext } from '@c8y/client/src/gettext';
3
+ import { gettext } from '@c8y/ngx-components';
4
4
  import { LWM2MPostOperationsParametersService } from './lwm2m-post-operations.service';
5
5
  import { AlertService, CoreModule, CommonModule } from '@c8y/ngx-components';
6
6
  import * as i0 from "@angular/core";
@@ -83,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
83
83
  type: ViewChild,
84
84
  args: ['commandsForm']
85
85
  }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHdtMm0tcG9zdC1vcGVyYXRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb3RvY29sLWx3bTJtL2NvbXBvbmVudHMvcG9zdC1yZWdpc3RyYXRpb24tb3BlcmF0aW9ucy9sd20ybS1wb3N0LW9wZXJhdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvdG9jb2wtbHdtMm0vY29tcG9uZW50cy9wb3N0LXJlZ2lzdHJhdGlvbi1vcGVyYXRpb25zL2x3bTJtLXBvc3Qtb3BlcmF0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7QUFTN0UsTUFBTSxPQUFPLDRCQUE0QjtJQTBDdkMsWUFDVSxzQkFBNEQsRUFDNUQsWUFBMEI7UUFEMUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFzQztRQUM1RCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQXpDcEMsb0JBQWUsR0FBRztZQUNoQjtnQkFDRSxPQUFPLEVBQUUsVUFBVTtnQkFDbkIsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLFdBQVcsRUFBRSxPQUFPLENBQUMsNERBQTRELENBQUM7YUFDbkY7WUFDRDtnQkFDRSxPQUFPLEVBQUUsTUFBTTtnQkFDZixRQUFRLEVBQUUsNENBQTRDO2dCQUN0RCxXQUFXLEVBQUUsT0FBTyxDQUFDLDJCQUEyQixDQUFDO2FBQ2xEO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLFFBQVEsRUFBRSw4REFBOEQ7Z0JBQ3hFLFdBQVcsRUFBRSxPQUFPLENBQUMsd0NBQXdDLENBQUM7YUFDL0Q7WUFDRDtnQkFDRSxPQUFPLEVBQUUsU0FBUztnQkFDbEIsUUFBUSxFQUFFLDRDQUE0QztnQkFDdEQsV0FBVyxFQUFFLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQzthQUNqRDtZQUNEO2dCQUNFLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixRQUFRLEVBQUUsNENBQTRDO2dCQUN0RCxXQUFXLEVBQUUsT0FBTyxDQUFDLG9FQUFvRSxDQUFDO2FBQzNGO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLFdBQVc7Z0JBQ3BCLFFBQVEsRUFBRSw0REFBNEQ7Z0JBQ3RFLFdBQVcsRUFBRSxPQUFPLENBQUMsMkRBQTJELENBQUM7YUFDbEY7U0FDRixDQUFDO1FBRUYsZUFBVSxHQUFrQztZQUMxQyxRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxFQUFFO1lBQ1IsRUFBRSxFQUFFLEVBQUU7U0FDUCxDQUFDO0lBS0MsQ0FBQztJQUVKLEtBQUssQ0FBQyxRQUFRO1FBQ1osSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQWtDLENBQUM7SUFDaEcsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBeUM7UUFDbEQsSUFBSTtZQUNGLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzNDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQywyQkFBMkI7UUFDL0IsSUFBSTtZQUNGLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3BELE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBa0MsQ0FBQztTQUM1RDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQyxPQUFPLEVBQUUsQ0FBQztTQUNYO0lBQ0gsQ0FBQzs7eUhBckVVLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLCtMQ2J6QyxzK0VBc0VBLDJDRDNEWSxZQUFZLHNUQUFFLFVBQVU7MkZBRXZCLDRCQUE0QjtrQkFOeEMsU0FBUzsrQkFDRSx1QkFBdUIsY0FFckIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztzSkFHUixZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBnZXR0ZXh0IH0gZnJvbSAnQGM4eS9jbGllbnQvc3JjL2dldHRleHQnO1xuaW1wb3J0IHsgTFdNMk1Qb3N0T3BlcmF0aW9uc1BhcmFtZXRlcnNTZXJ2aWNlIH0gZnJvbSAnLi9sd20ybS1wb3N0LW9wZXJhdGlvbnMuc2VydmljZSc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UsIENvcmVNb2R1bGUsIENvbW1vbk1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgTFdNMk1Qb3N0T3BlcmF0aW9uc1BhcmFtZXRlcnMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL3Byb3RvY29sLWx3bTJtL21vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbHdtMm0tcG9zdC1vcGVyYXRpb25zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2x3bTJtLXBvc3Qtb3BlcmF0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENvcmVNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIExXTTJNUG9zdE9wZXJhdGlvbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKCdjb21tYW5kc0Zvcm0nKSBjb21tYW5kc0Zvcm06IE5nRm9ybTtcblxuICBleGFtcGxlQ29tbWFuZHMgPSBbXG4gICAge1xuICAgICAgY29tbWFuZDogJ2Rpc2NvdmVyJyxcbiAgICAgIHJlc291cmNlOiAnPG9iamVjdElkPicsXG4gICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dCgnRGlzY292ZXIgYWxsIHJlc291cmNlcyBvZiBPYmplY3QgMzMwMCwgdGhlIGdlbmVyaWMgc2Vuc29yLicpXG4gICAgfSxcbiAgICB7XG4gICAgICBjb21tYW5kOiAncmVhZCcsXG4gICAgICByZXNvdXJjZTogJzxvYmplY3RJZD4vPG9iamVjdEluc3RhbmNlSWQ+LzxyZXNvdXJjZUlkPicsXG4gICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dCgnUmVhZCBtYXhpbXVtIHNlbnNvciB2YWx1ZScpXG4gICAgfSxcbiAgICB7XG4gICAgICBjb21tYW5kOiAnd3JpdGUnLFxuICAgICAgcmVzb3VyY2U6ICc8b2JqZWN0SWQ+LzxvYmplY3RJbnN0YW5jZUlkPi88cmVzb3VyY2VJZD4gPGFwcGxpY2F0aW9uVHlwZT4nLFxuICAgICAgZGVzY3JpcHRpb246IGdldHRleHQoJ1dyaXRlIGFwcGxpY2F0aW9uIHR5cGUgXCJDTzJcIiB0byBkZXZpY2UnKVxuICAgIH0sXG4gICAge1xuICAgICAgY29tbWFuZDogJ2V4ZWN1dGUnLFxuICAgICAgcmVzb3VyY2U6ICc8b2JqZWN0SWQ+LzxvYmplY3RJbnN0YW5jZUlkPi88cmVzb3VyY2VJZD4nLFxuICAgICAgZGVzY3JpcHRpb246IGdldHRleHQoJ1Jlc2V0IG1pbiBhbmQgbWF4IHZhbHVlcycpXG4gICAgfSxcbiAgICB7XG4gICAgICBjb21tYW5kOiAnb2JzZXJ2ZScsXG4gICAgICByZXNvdXJjZTogJzxvYmplY3RJZD4vPG9iamVjdEluc3RhbmNlSWQ+LzxyZXNvdXJjZUlkPicsXG4gICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dCgnT2JzZXJ2ZSBzZW5zb3IgdmFsdWUuIENhdXNlcyBkZXZpY2UgdG8gc2VuZCBldmVyeSBuZXcgc2Vuc29yIHZhbHVlJylcbiAgICB9LFxuICAgIHtcbiAgICAgIGNvbW1hbmQ6ICd3cml0ZWF0dHInLFxuICAgICAgcmVzb3VyY2U6ICc8b2JqZWN0SWQ+LzxvYmplY3RJbnN0YW5jZUlkPi88cmVzb3VyY2VJZD4gZ3JlYXRlcj08dmFsdWU+JyxcbiAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdPbmx5IHNlbmQgb2JzZXJ2YXRpb25zIGlmIHNlbnNvciB2YWx1ZSBpcyBoaWdoZXIgdGhhbiAxMDAnKVxuICAgIH1cbiAgXTtcblxuICBvcGVyYXRpb25zOiBMV00yTVBvc3RPcGVyYXRpb25zUGFyYW1ldGVycyA9IHtcbiAgICBjb21tYW5kczogJycsXG4gICAgdHlwZTogJycsXG4gICAgaWQ6ICcnXG4gIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsd20ybVBvc3RPcGVyYXRpb25zU3ZjOiBMV00yTVBvc3RPcGVyYXRpb25zUGFyYW1ldGVyc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZVxuICApIHt9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5vcGVyYXRpb25zID0gKGF3YWl0IHRoaXMuZ2V0UG9zdE9wZXJhdGlvbnNQYXJhbWV0ZXJzKCkpIGFzIExXTTJNUG9zdE9wZXJhdGlvbnNQYXJhbWV0ZXJzO1xuICB9XG5cbiAgYXN5bmMgc2F2ZShvcGVyYXRpb25zOiBMV00yTVBvc3RPcGVyYXRpb25zUGFyYW1ldGVycykge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLmx3bTJtUG9zdE9wZXJhdGlvbnNTdmMucHV0KG9wZXJhdGlvbnMpO1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2Uuc3VjY2VzcyhnZXR0ZXh0KCdQb3N0LW9wZXJhdGlvbnMgc2F2ZWQnKSk7XG4gICAgICB0aGlzLmNvbW1hbmRzRm9ybS5mb3JtLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZFNlcnZlckZhaWx1cmUoZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGdldFBvc3RPcGVyYXRpb25zUGFyYW1ldGVycygpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5sd20ybVBvc3RPcGVyYXRpb25zU3ZjLmdldCgpO1xuICAgICAgcmV0dXJuIChhd2FpdCByZXMuanNvbigpKSBhcyBMV00yTVBvc3RPcGVyYXRpb25zUGFyYW1ldGVycztcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkU2VydmVyRmFpbHVyZShlcnJvcik7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICB9XG59XG4iLCI8Yzh5LXRpdGxlPnt7ICdMV00yTSBwb3N0LW9wZXJhdGlvbnMnIHwgdHJhbnNsYXRlIH19PC9jOHktdGl0bGU+XG48Yzh5LWJyZWFkY3J1bWI+XG4gIDxjOHktYnJlYWRjcnVtYi1pdGVtXG4gICAgW2xhYmVsXT1cIidEZXZpY2UgdHlwZXMnIHwgdHJhbnNsYXRlXCJcbiAgICBbaWNvbl09XCInYzh5LWRldmljZS1wcm90b2NvbHMnXCJcbiAgPjwvYzh5LWJyZWFkY3J1bWItaXRlbT5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW0gW2xhYmVsXT1cIidMV00yTSBwb3N0LW9wZXJhdGlvbnMnIHwgdHJhbnNsYXRlXCI+PC9jOHktYnJlYWRjcnVtYi1pdGVtPlxuPC9jOHktYnJlYWRjcnVtYj5cblxuPGRpdiBjbGFzcz1cImNhcmQgY29udGVudC1mdWxscGFnZSBjYXJkLS1ncmlkIGdyaWRfX2NvbC0tNy01LS1tZCBncmlkX19yb3ctLWF1dG8tbWluLWNvbnRlbnRcIj5cbiAgPGRpdiBjbGFzcz1cImlubmVyLXNjcm9sbCBiZy1jb21wb25lbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgbGFyZ2UtcGFkZGluZyBzZXBhcmF0b3Igc3RpY2t5LXRvcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImg0IG0tci0xNlwiIGlkPVwiY29tbWFuZHNcIj5cbiAgICAgICAge3sgJ0NvbW1hbmRzJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYmxvY2sgbGFyZ2UtcGFkZGluZ1wiPlxuICAgICAgPGZvcm1cbiAgICAgICAgI2NvbW1hbmRzRm9ybT1cIm5nRm9ybVwiXG4gICAgICAgIGlkPVwiY29tbWFuZHNGb3JtXCJcbiAgICAgICAgY2xhc3M9XCJkLWZsZXggZC1jb2wgZmxleC1ncm93IGZpdC1oXCJcbiAgICAgICAgKG5nU3VibWl0KT1cInNhdmUob3BlcmF0aW9ucylcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJvcGVyYXRpb25zLmNvbW1hbmRzXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT1cImNvbW1hbmRzXCJcbiAgICAgICAgICAgIG5hbWU9XCJjb21tYW5kc1wiXG4gICAgICAgICAgICByb3dzPVwiMjBcIlxuICAgICAgICAgID48L3RleHRhcmVhPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZm9ybT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImlubmVyLXNjcm9sbCBiZy1sZXZlbC0xXCIgdGFiaW5kZXg9XCIwXCI+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYmxvY2sgbGFyZ2UtcGFkZGluZ1wiPlxuICAgICAgPHAgY2xhc3M9XCJtLWItMTZcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJ0ZXh0LWluZm8gbS1yLTQgdGV4dC0xNFwiIGM4eUljb249XCJpbmZvLWNpcmNsZVwiPjwvaT5cbiAgICAgICAge3tcbiAgICAgICAgICAnWW91IGNhbiBlbnRlciBhIHNldCBvZiBMV00yTSBzaGVsbCBjb21tYW5kcy4gRWFjaCBjb21tYW5kIHdpbGwgYmUgc2VudCB0byBldmVyeSBuZXdseSByZWdpc3RlcmVkIExXTTJNIGRldmljZS4gRWFjaCBjb21tYW5kIG11c3QgYmUgZW50ZXJlZCBpbiBhIG5ldyBsaW5lLiBVc2UgdGhlIGZvbGxvd2luZyBzeW50YXggZm9yIHNwZWNpZnlpbmcgcG9zdC1yZWdpc3RyYXRpb24gYWN0aW9uczonXG4gICAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgICB9fVxuICAgICAgPC9wPlxuICAgICAgPHByZSBjbGFzcz1cImJnLWxldmVsLTAgdGV4dC1wcmUtbm9ybWFsIG0tYi0wXCI+XG4gICAgICAgIDx1bCBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbS1iLTBcIj5cbiAgICAgICAgICA8bGkgY2xhc3M9XCJtLTE2XCIgKm5nRm9yPVwibGV0IGMgb2YgZXhhbXBsZUNvbW1hbmRzXCI+XG4gICAgICAgICAgICA8cCBjbGFzcz1cInRleHQtbXV0ZWRcIj4jIHt7Yy5kZXNjcmlwdGlvbiB8IHRyYW5zbGF0ZX19PC9wPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPnt7Yy5jb21tYW5kfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtbXV0ZWRcIj57e2MucmVzb3VyY2V9fTwvc3Bhbj5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPlxuICAgICAgPC9wcmU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlciBsYXJnZS1wYWRkaW5nIHNlcGFyYXRvciBncmlkX19jb2wtLWZ1bGxzcGFuXCI+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxuICAgICAgdGl0bGU9XCJ7eyAnU2F2ZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICBmb3JtPVwiY29tbWFuZHNGb3JtXCJcbiAgICAgIFtkaXNhYmxlZF09XCJjb21tYW5kc0Zvcm0udmFsaWQgJiYgIWNvbW1hbmRzRm9ybS5kaXJ0eVwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidTYXZlJyB8IHRyYW5zbGF0ZVwiXG4gICAgPlxuICAgICAge3sgJ1NhdmUnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHdtMm0tcG9zdC1vcGVyYXRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb3RvY29sLWx3bTJtL2NvbXBvbmVudHMvcG9zdC1yZWdpc3RyYXRpb24tb3BlcmF0aW9ucy9sd20ybS1wb3N0LW9wZXJhdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvdG9jb2wtbHdtMm0vY29tcG9uZW50cy9wb3N0LXJlZ2lzdHJhdGlvbi1vcGVyYXRpb25zL2x3bTJtLXBvc3Qtb3BlcmF0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7QUFTN0UsTUFBTSxPQUFPLDRCQUE0QjtJQTBDdkMsWUFDVSxzQkFBNEQsRUFDNUQsWUFBMEI7UUFEMUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFzQztRQUM1RCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQXpDcEMsb0JBQWUsR0FBRztZQUNoQjtnQkFDRSxPQUFPLEVBQUUsVUFBVTtnQkFDbkIsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLFdBQVcsRUFBRSxPQUFPLENBQUMsNERBQTRELENBQUM7YUFDbkY7WUFDRDtnQkFDRSxPQUFPLEVBQUUsTUFBTTtnQkFDZixRQUFRLEVBQUUsNENBQTRDO2dCQUN0RCxXQUFXLEVBQUUsT0FBTyxDQUFDLDJCQUEyQixDQUFDO2FBQ2xEO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLFFBQVEsRUFBRSw4REFBOEQ7Z0JBQ3hFLFdBQVcsRUFBRSxPQUFPLENBQUMsd0NBQXdDLENBQUM7YUFDL0Q7WUFDRDtnQkFDRSxPQUFPLEVBQUUsU0FBUztnQkFDbEIsUUFBUSxFQUFFLDRDQUE0QztnQkFDdEQsV0FBVyxFQUFFLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQzthQUNqRDtZQUNEO2dCQUNFLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixRQUFRLEVBQUUsNENBQTRDO2dCQUN0RCxXQUFXLEVBQUUsT0FBTyxDQUFDLG9FQUFvRSxDQUFDO2FBQzNGO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLFdBQVc7Z0JBQ3BCLFFBQVEsRUFBRSw0REFBNEQ7Z0JBQ3RFLFdBQVcsRUFBRSxPQUFPLENBQUMsMkRBQTJELENBQUM7YUFDbEY7U0FDRixDQUFDO1FBRUYsZUFBVSxHQUFrQztZQUMxQyxRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxFQUFFO1lBQ1IsRUFBRSxFQUFFLEVBQUU7U0FDUCxDQUFDO0lBS0MsQ0FBQztJQUVKLEtBQUssQ0FBQyxRQUFRO1FBQ1osSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQWtDLENBQUM7SUFDaEcsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBeUM7UUFDbEQsSUFBSTtZQUNGLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzNDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQywyQkFBMkI7UUFDL0IsSUFBSTtZQUNGLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3BELE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBa0MsQ0FBQztTQUM1RDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQyxPQUFPLEVBQUUsQ0FBQztTQUNYO0lBQ0gsQ0FBQzs7eUhBckVVLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLCtMQ2J6QyxzK0VBc0VBLDJDRDNEWSxZQUFZLHNUQUFFLFVBQVU7MkZBRXZCLDRCQUE0QjtrQkFOeEMsU0FBUzsrQkFDRSx1QkFBdUIsY0FFckIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztzSkFHUixZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBnZXR0ZXh0IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBMV00yTVBvc3RPcGVyYXRpb25zUGFyYW1ldGVyc1NlcnZpY2UgfSBmcm9tICcuL2x3bTJtLXBvc3Qtb3BlcmF0aW9ucy5zZXJ2aWNlJztcbmltcG9ydCB7IEFsZXJ0U2VydmljZSwgQ29yZU1vZHVsZSwgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBMV00yTVBvc3RPcGVyYXRpb25zUGFyYW1ldGVycyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvcHJvdG9jb2wtbHdtMm0vbW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsd20ybS1wb3N0LW9wZXJhdGlvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vbHdtMm0tcG9zdC1vcGVyYXRpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQ29yZU1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgTFdNMk1Qb3N0T3BlcmF0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoJ2NvbW1hbmRzRm9ybScpIGNvbW1hbmRzRm9ybTogTmdGb3JtO1xuXG4gIGV4YW1wbGVDb21tYW5kcyA9IFtcbiAgICB7XG4gICAgICBjb21tYW5kOiAnZGlzY292ZXInLFxuICAgICAgcmVzb3VyY2U6ICc8b2JqZWN0SWQ+JyxcbiAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdEaXNjb3ZlciBhbGwgcmVzb3VyY2VzIG9mIE9iamVjdCAzMzAwLCB0aGUgZ2VuZXJpYyBzZW5zb3IuJylcbiAgICB9LFxuICAgIHtcbiAgICAgIGNvbW1hbmQ6ICdyZWFkJyxcbiAgICAgIHJlc291cmNlOiAnPG9iamVjdElkPi88b2JqZWN0SW5zdGFuY2VJZD4vPHJlc291cmNlSWQ+JyxcbiAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdSZWFkIG1heGltdW0gc2Vuc29yIHZhbHVlJylcbiAgICB9LFxuICAgIHtcbiAgICAgIGNvbW1hbmQ6ICd3cml0ZScsXG4gICAgICByZXNvdXJjZTogJzxvYmplY3RJZD4vPG9iamVjdEluc3RhbmNlSWQ+LzxyZXNvdXJjZUlkPiA8YXBwbGljYXRpb25UeXBlPicsXG4gICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dCgnV3JpdGUgYXBwbGljYXRpb24gdHlwZSBcIkNPMlwiIHRvIGRldmljZScpXG4gICAgfSxcbiAgICB7XG4gICAgICBjb21tYW5kOiAnZXhlY3V0ZScsXG4gICAgICByZXNvdXJjZTogJzxvYmplY3RJZD4vPG9iamVjdEluc3RhbmNlSWQ+LzxyZXNvdXJjZUlkPicsXG4gICAgICBkZXNjcmlwdGlvbjogZ2V0dGV4dCgnUmVzZXQgbWluIGFuZCBtYXggdmFsdWVzJylcbiAgICB9LFxuICAgIHtcbiAgICAgIGNvbW1hbmQ6ICdvYnNlcnZlJyxcbiAgICAgIHJlc291cmNlOiAnPG9iamVjdElkPi88b2JqZWN0SW5zdGFuY2VJZD4vPHJlc291cmNlSWQ+JyxcbiAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdPYnNlcnZlIHNlbnNvciB2YWx1ZS4gQ2F1c2VzIGRldmljZSB0byBzZW5kIGV2ZXJ5IG5ldyBzZW5zb3IgdmFsdWUnKVxuICAgIH0sXG4gICAge1xuICAgICAgY29tbWFuZDogJ3dyaXRlYXR0cicsXG4gICAgICByZXNvdXJjZTogJzxvYmplY3RJZD4vPG9iamVjdEluc3RhbmNlSWQ+LzxyZXNvdXJjZUlkPiBncmVhdGVyPTx2YWx1ZT4nLFxuICAgICAgZGVzY3JpcHRpb246IGdldHRleHQoJ09ubHkgc2VuZCBvYnNlcnZhdGlvbnMgaWYgc2Vuc29yIHZhbHVlIGlzIGhpZ2hlciB0aGFuIDEwMCcpXG4gICAgfVxuICBdO1xuXG4gIG9wZXJhdGlvbnM6IExXTTJNUG9zdE9wZXJhdGlvbnNQYXJhbWV0ZXJzID0ge1xuICAgIGNvbW1hbmRzOiAnJyxcbiAgICB0eXBlOiAnJyxcbiAgICBpZDogJydcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGx3bTJtUG9zdE9wZXJhdGlvbnNTdmM6IExXTTJNUG9zdE9wZXJhdGlvbnNQYXJhbWV0ZXJzU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlXG4gICkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm9wZXJhdGlvbnMgPSAoYXdhaXQgdGhpcy5nZXRQb3N0T3BlcmF0aW9uc1BhcmFtZXRlcnMoKSkgYXMgTFdNMk1Qb3N0T3BlcmF0aW9uc1BhcmFtZXRlcnM7XG4gIH1cblxuICBhc3luYyBzYXZlKG9wZXJhdGlvbnM6IExXTTJNUG9zdE9wZXJhdGlvbnNQYXJhbWV0ZXJzKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMubHdtMm1Qb3N0T3BlcmF0aW9uc1N2Yy5wdXQob3BlcmF0aW9ucyk7XG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5zdWNjZXNzKGdldHRleHQoJ1Bvc3Qtb3BlcmF0aW9ucyBzYXZlZCcpKTtcbiAgICAgIHRoaXMuY29tbWFuZHNGb3JtLmZvcm0ubWFya0FzUHJpc3RpbmUoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkU2VydmVyRmFpbHVyZShlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZ2V0UG9zdE9wZXJhdGlvbnNQYXJhbWV0ZXJzKCkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLmx3bTJtUG9zdE9wZXJhdGlvbnNTdmMuZ2V0KCk7XG4gICAgICByZXR1cm4gKGF3YWl0IHJlcy5qc29uKCkpIGFzIExXTTJNUG9zdE9wZXJhdGlvbnNQYXJhbWV0ZXJzO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRTZXJ2ZXJGYWlsdXJlKGVycm9yKTtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cbn1cbiIsIjxjOHktdGl0bGU+e3sgJ0xXTTJNIHBvc3Qtb3BlcmF0aW9ucycgfCB0cmFuc2xhdGUgfX08L2M4eS10aXRsZT5cbjxjOHktYnJlYWRjcnVtYj5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBbbGFiZWxdPVwiJ0RldmljZSB0eXBlcycgfCB0cmFuc2xhdGVcIlxuICAgIFtpY29uXT1cIidjOHktZGV2aWNlLXByb3RvY29scydcIlxuICA+PC9jOHktYnJlYWRjcnVtYi1pdGVtPlxuICA8Yzh5LWJyZWFkY3J1bWItaXRlbSBbbGFiZWxdPVwiJ0xXTTJNIHBvc3Qtb3BlcmF0aW9ucycgfCB0cmFuc2xhdGVcIj48L2M4eS1icmVhZGNydW1iLWl0ZW0+XG48L2M4eS1icmVhZGNydW1iPlxuXG48ZGl2IGNsYXNzPVwiY2FyZCBjb250ZW50LWZ1bGxwYWdlIGNhcmQtLWdyaWQgZ3JpZF9fY29sLS03LTUtLW1kIGdyaWRfX3Jvdy0tYXV0by1taW4tY29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwiaW5uZXItc2Nyb2xsIGJnLWNvbXBvbmVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBsYXJnZS1wYWRkaW5nIHNlcGFyYXRvciBzdGlja3ktdG9wXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaDQgbS1yLTE2XCIgaWQ9XCJjb21tYW5kc1wiPlxuICAgICAgICB7eyAnQ29tbWFuZHMnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ibG9jayBsYXJnZS1wYWRkaW5nXCI+XG4gICAgICA8Zm9ybVxuICAgICAgICAjY29tbWFuZHNGb3JtPVwibmdGb3JtXCJcbiAgICAgICAgaWQ9XCJjb21tYW5kc0Zvcm1cIlxuICAgICAgICBjbGFzcz1cImQtZmxleCBkLWNvbCBmbGV4LWdyb3cgZml0LWhcIlxuICAgICAgICAobmdTdWJtaXQpPVwic2F2ZShvcGVyYXRpb25zKVwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm9wZXJhdGlvbnMuY29tbWFuZHNcIlxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwiY29tbWFuZHNcIlxuICAgICAgICAgICAgbmFtZT1cImNvbW1hbmRzXCJcbiAgICAgICAgICAgIHJvd3M9XCIyMFwiXG4gICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9mb3JtPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiaW5uZXItc2Nyb2xsIGJnLWxldmVsLTFcIiB0YWJpbmRleD1cIjBcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ibG9jayBsYXJnZS1wYWRkaW5nXCI+XG4gICAgICA8cCBjbGFzcz1cIm0tYi0xNlwiPlxuICAgICAgICA8aSBjbGFzcz1cInRleHQtaW5mbyBtLXItNCB0ZXh0LTE0XCIgYzh5SWNvbj1cImluZm8tY2lyY2xlXCI+PC9pPlxuICAgICAgICB7e1xuICAgICAgICAgICdZb3UgY2FuIGVudGVyIGEgc2V0IG9mIExXTTJNIHNoZWxsIGNvbW1hbmRzLiBFYWNoIGNvbW1hbmQgd2lsbCBiZSBzZW50IHRvIGV2ZXJ5IG5ld2x5IHJlZ2lzdGVyZWQgTFdNMk0gZGV2aWNlLiBFYWNoIGNvbW1hbmQgbXVzdCBiZSBlbnRlcmVkIGluIGEgbmV3IGxpbmUuIFVzZSB0aGUgZm9sbG93aW5nIHN5bnRheCBmb3Igc3BlY2lmeWluZyBwb3N0LXJlZ2lzdHJhdGlvbiBhY3Rpb25zOidcbiAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgIH19XG4gICAgICA8L3A+XG4gICAgICA8cHJlIGNsYXNzPVwiYmctbGV2ZWwtMCB0ZXh0LXByZS1ub3JtYWwgbS1iLTBcIj5cbiAgICAgICAgPHVsIGNsYXNzPVwibGlzdC11bnN0eWxlZCBtLWItMFwiPlxuICAgICAgICAgIDxsaSBjbGFzcz1cIm0tMTZcIiAqbmdGb3I9XCJsZXQgYyBvZiBleGFtcGxlQ29tbWFuZHNcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1tdXRlZFwiPiMge3tjLmRlc2NyaXB0aW9uIHwgdHJhbnNsYXRlfX08L3A+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+e3tjLmNvbW1hbmR9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1tdXRlZFwiPnt7Yy5yZXNvdXJjZX19PC9zcGFuPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L3ByZT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyIGxhcmdlLXBhZGRpbmcgc2VwYXJhdG9yIGdyaWRfX2NvbC0tZnVsbHNwYW5cIj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXG4gICAgICB0aXRsZT1cInt7ICdTYXZlJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgIGZvcm09XCJjb21tYW5kc0Zvcm1cIlxuICAgICAgW2Rpc2FibGVkXT1cImNvbW1hbmRzRm9ybS52YWxpZCAmJiAhY29tbWFuZHNGb3JtLmRpcnR5XCJcbiAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1NhdmUnIHwgdHJhbnNsYXRlXCJcbiAgICA+XG4gICAgICB7eyAnU2F2ZScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -5,7 +5,6 @@ import { gettext, CoreModule, ManagedObjectRealtimeService, DeviceBootstrapRealt
5
5
  import { __awaiter } from 'tslib';
6
6
  import * as i2 from '@c8y/client';
7
7
  import { DeviceRegistrationStatus } from '@c8y/client';
8
- import { gettext as gettext$1 } from '@c8y/client/src/gettext';
9
8
  import { set, pick, get } from 'lodash-es';
10
9
  import { BehaviorSubject, Subject, merge, interval } from 'rxjs';
11
10
  import { filter, switchMap, map, takeUntil, tap, distinctUntilChanged } from 'rxjs/operators';
@@ -121,7 +120,7 @@ class DataBrokerSubscriptionsService {
121
120
  * User status text (legacy compatibility)
122
121
  */
123
122
  getVisibleUserStatusText(user) {
124
- return user.enabled ? gettext$1('active`subscription`') : gettext$1('inactive`subscription`');
123
+ return user.enabled ? gettext('active`subscription`') : gettext('inactive`subscription`');
125
124
  }
126
125
  remove(subscription) {
127
126
  return __awaiter(this, void 0, void 0, function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-data-broker.mjs","sources":["../../data-broker/model/data-broker.subscription.model.ts","../../data-broker/factories/data-broker.subscription.factory.ts","../../data-broker/data-broker-subscriptions.service.ts","../../data-broker/data-broker.module.ts","../../data-broker/ng1/downgraded.services.ts","../../data-broker/ng1/index.ts","../../data-broker/c8y-ngx-components-data-broker.ts"],"sourcesContent":["import { IUser } from '@c8y/client';\n\nexport enum DataBrokerConnectorStatus {\n ACTIVE = 'ACTIVE',\n SUSPENDED = 'SUSPENDED',\n WAITING = 'WAITING'\n}\n\nexport interface SubscriptionStatusViewModel {\n icon: string;\n textClass: string;\n text: string;\n iconClass?: string;\n}\n\nexport interface SubscriptionViewModel {\n userEnabled: boolean;\n visibleUserStatus: string;\n userId: string;\n status: SubscriptionStatusViewModel;\n id: string;\n _c8y_BrokerSource: any;\n}\n\nexport interface NewDeviceRequestStatus {\n name: string;\n label: string;\n value: string;\n}\n\nexport interface SubscriptionsViewModelNg1 {\n init(): void;\n reload(): void;\n destroy(): void;\n}\n\nexport type UserStatusPartial = Required<Pick<IUser, 'id' | 'enabled'>>;\n","import { DeviceRegistrationStatus } from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n NewDeviceRequestStatus\n} from '../model/data-broker.subscription.model';\n\nexport class SubscriptionStatusViewModelFactory {\n build(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n let statusViewModel = null;\n switch (status) {\n case DataBrokerConnectorStatus.ACTIVE: // dataBrokerConnectorsSvc.STATUS.ACTIVE.value\n statusViewModel = {\n icon: 'check-circle',\n textClass: 'text-success',\n text: gettext('Active`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.SUSPENDED: // dataBrokerConnectorsSvc.STATUS.SUSPENDED.value\n statusViewModel = {\n icon: 'exclamation-triangle',\n textClass: 'text-warning',\n text: gettext('Inactive`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.WAITING: // dataBrokerConnectorsSvc.STATUS.WAITING.value\n statusViewModel = {\n icon: 'spinner',\n iconClass: 'icon-spin',\n textClass: 'text-warning',\n text: gettext('Waiting`data broker subscription`')\n };\n break;\n default:\n break;\n }\n return statusViewModel;\n }\n}\n\nexport class NewDeviceRequestStatusFactory {\n build(status: DeviceRegistrationStatus): NewDeviceRequestStatus {\n let result = null;\n switch (status) {\n case DeviceRegistrationStatus.WAITING_FOR_CONNECTION:\n result = {\n name: DeviceRegistrationStatus.WAITING_FOR_CONNECTION,\n label: gettext('Waiting for connection`data broker subscription`'),\n value: DeviceRegistrationStatus.WAITING_FOR_CONNECTION\n };\n break;\n case DeviceRegistrationStatus.PENDING_ACCEPTANCE:\n result = {\n name: DeviceRegistrationStatus.PENDING_ACCEPTANCE,\n label: gettext('Pending acceptance`data broker subscription`'),\n value: DeviceRegistrationStatus.PENDING_ACCEPTANCE\n };\n break;\n case DeviceRegistrationStatus.ACCEPTED:\n result = {\n name: DeviceRegistrationStatus.ACCEPTED,\n label: gettext('Accepted`data broker subscription`'),\n value: DeviceRegistrationStatus.ACCEPTED\n };\n case DeviceRegistrationStatus.BLOCKED:\n result = {\n name: DeviceRegistrationStatus.BLOCKED,\n label: gettext('Blocked`data broker subscription`'),\n value: DeviceRegistrationStatus.BLOCKED\n };\n break;\n }\n return result;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n IDeviceRegistration,\n IManagedObject,\n IUser,\n UserService,\n InventoryService,\n DeviceRegistrationService,\n DeviceRegistrationStatus\n} from '@c8y/client';\nimport { gettext } from '@c8y/client/src/gettext';\nimport { get, pick, set } from 'lodash-es';\nimport { BehaviorSubject, interval, merge, Observable, Subject, Subscription } from 'rxjs';\nimport {\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService,\n AppStateService\n} from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n SubscriptionViewModel,\n SubscriptionsViewModelNg1\n} from './model/data-broker.subscription.model';\nimport {\n SubscriptionStatusViewModelFactory,\n NewDeviceRequestStatusFactory\n} from './factories/data-broker.subscription.factory';\nimport { distinctUntilChanged, filter, map, switchMap, takeUntil, tap } from 'rxjs/operators';\n\n@Injectable()\nexport class DataBrokerSubscriptionsService {\n private readonly FRAGMENT_TYPE: string = 'c8y_BrokerSource';\n private readonly NEW_DEVICE_REQUEST_TYPE: string = 'c8y_DataBroker';\n /**\n * inventory polling interval\n */\n private readonly POLL_INTERVAL_FOR_SUBSCRIPTIONS = 15000;\n /**\n * produce status fragment for subscription\n */\n private subscriptionStatusViewModelFactory: SubscriptionStatusViewModelFactory;\n /**\n * produce request status view model\n */\n private newDeviceRequestStatusViewModelFactory: NewDeviceRequestStatusFactory;\n\n private moRealtimeSubscriptionsMap = new Map<string, Subscription>();\n\n private subscriptionsCount;\n\n private refreshPendingTrigger$ = new BehaviorSubject<void>(null);\n\n filters = {\n fragmentType: this.FRAGMENT_TYPE\n };\n\n /**\n * legacy enum values\n */\n NEW_DEVICE_REQUEST_STATUS;\n\n constructor(\n private moRealtimeService: ManagedObjectRealtimeService,\n private deviceBootstrapRealtimeService: DeviceBootstrapRealtimeService,\n private inventoryService: InventoryService,\n private userService: UserService,\n private deviceRegistrationService: DeviceRegistrationService,\n private appStateService: AppStateService\n ) {\n this.subscriptionStatusViewModelFactory = new SubscriptionStatusViewModelFactory();\n this.newDeviceRequestStatusViewModelFactory = new NewDeviceRequestStatusFactory();\n\n // Build legacy enum structure for ng1 component\n this.NEW_DEVICE_REQUEST_STATUS = this.generateDeviceRequestStatusEnum(\n this.newDeviceRequestStatusViewModelFactory\n );\n }\n\n async getBrokerSubscriptionsList(): Promise<IManagedObject[]> {\n return (await this.inventoryService.list(this.filters)).data;\n }\n\n /**\n * User status text (legacy compatibility)\n */\n getVisibleUserStatusText(user): string {\n return user.enabled ? gettext('active`subscription`') : gettext('inactive`subscription`');\n }\n\n async remove(subscription: SubscriptionViewModel) {\n // handle realtime unsubsribe\n if (this.moRealtimeSubscriptionsMap.has(subscription.id)) {\n this.moRealtimeSubscriptionsMap.get(subscription.id).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(subscription.id);\n }\n // handle removal\n const brokerSourceRenamed = `_${this.FRAGMENT_TYPE}`;\n set(subscription, this.FRAGMENT_TYPE, null);\n\n return await this.inventoryService.update(\n pick(subscription, ['id', this.FRAGMENT_TYPE, brokerSourceRenamed])\n );\n }\n\n async setStatus(\n subscription: SubscriptionViewModel,\n enabled: boolean\n ): Promise<SubscriptionViewModel> {\n const userData = (\n await this.userService.update({\n id: subscription.userId,\n enabled\n } as Partial<IUser>)\n ).data;\n subscription.userEnabled = userData.enabled;\n subscription.visibleUserStatus = this.getVisibleUserStatusText(userData);\n return subscription;\n }\n\n /**\n * List of pending subscriptions\n */\n async listPendingBrokerSubscriptions(): Promise<IDeviceRegistration[]> {\n return (\n await this.deviceRegistrationService.list({\n pageSize: 2000,\n withTotalPages: true\n })\n ).data;\n }\n\n /**\n * Accept subscription\n */\n async accept(code: string): Promise<IDeviceRegistration> {\n return (await this.deviceRegistrationService.accept(code)).data;\n }\n\n /**\n * Discard subscription\n */\n async discard(code: string) {\n return await this.deviceRegistrationService.delete(code);\n }\n\n /**\n * Add new subscription\n */\n async create(code: string): Promise<IDeviceRegistration> {\n return (\n await this.deviceRegistrationService.create({\n id: code,\n type: this.NEW_DEVICE_REQUEST_TYPE\n })\n ).data;\n }\n\n getForNg1({\n pollingInterval,\n onPendingSubscriptions,\n onExistingSubscriptions,\n onMoUpdate\n }): SubscriptionsViewModelNg1 {\n const reload$ = new Subject<void>();\n const destroy$ = new Subject<void>();\n const ready$ = new Subject<void>();\n\n const unsubscribeRealtime = () => {\n const moRealtimeSubscriptionIterator = this.moRealtimeSubscriptionsMap.keys();\n let key = moRealtimeSubscriptionIterator.next().value as string;\n while (this.moRealtimeSubscriptionsMap.has(key)) {\n this.moRealtimeSubscriptionsMap.get(key).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(key as string);\n key = moRealtimeSubscriptionIterator.next().value as string;\n }\n };\n\n const userInitialized$ = this.appStateService.currentUser.pipe(\n filter(currentUser => currentUser !== null)\n );\n const triggers = merge(reload$, ready$);\n const pendingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n this.deviceBootstrapRealtimeService.onAll$(),\n this.refreshPendingTrigger$\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.listPendingBrokerSubscriptions()),\n map(pendingSubscriptions =>\n this.convertDeviceRegistrationsToSubscriptionViewModels(pendingSubscriptions)\n ),\n takeUntil(destroy$)\n );\n const existingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n interval(pollingInterval)\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.getBrokerSubscriptionsList()),\n tap(mos => {\n if (this.subscriptionsCount !== mos.length) {\n this.refreshPendingTrigger$.next();\n this.subscriptionsCount = mos.length;\n }\n mos.forEach(mo => {\n if (!this.moRealtimeSubscriptionsMap.has(mo.id)) {\n const mortObservable = this.moRealtimeService\n .onUpdate$(mo.id)\n .pipe(switchMap(mo => this.convertToViewModel([mo])));\n this.moRealtimeSubscriptionsMap.set(mo.id, mortObservable.subscribe(onMoUpdate));\n }\n });\n }),\n distinctUntilChanged(),\n switchMap(mos => this.convertToViewModel(mos)),\n takeUntil(destroy$)\n );\n\n return {\n init() {\n pendingSubscriptions$.subscribe(onPendingSubscriptions);\n existingSubscriptions$.subscribe(onExistingSubscriptions);\n setTimeout(() => {\n ready$.next();\n }, 1000);\n },\n reload() {\n reload$.next();\n },\n destroy() {\n destroy$.next();\n destroy$.complete();\n unsubscribeRealtime();\n }\n };\n }\n\n private convertDeviceRegistrationsToSubscriptionViewModels(\n pendingSubscriptions\n ): SubscriptionViewModel[] {\n const convertedToViewModel = pendingSubscriptions\n .filter(deviceRequest => deviceRequest.type === this.NEW_DEVICE_REQUEST_TYPE)\n .map(deviceRequest => {\n return Object.assign({}, get(deviceRequest, 'customProperties.c8y_BrokerSource'), {\n status: this.newDeviceRequestStatusViewModelFactory.build(deviceRequest.status),\n type: deviceRequest.type,\n id: deviceRequest.id\n });\n });\n return convertedToViewModel;\n }\n\n private generateDeviceRequestStatusEnum(newDeviceRequestViewModelFactory) {\n const result = {};\n for (const status in DeviceRegistrationStatus) {\n Object.defineProperty(result, status, {\n enumerable: true,\n writable: false,\n configurable: false,\n value: newDeviceRequestViewModelFactory.build(status as any as DeviceRegistrationStatus)\n });\n }\n return result;\n }\n\n // Function maps data in suitable manner to have it easier to display. Used in service mainly for compatibility\n private async convertToViewModel(\n subscriptions: IManagedObject[]\n ): Promise<SubscriptionViewModel[]> {\n const viewModelSubscriptions = subscriptions.map(async subscription => {\n const { data: userDetails } = await this.userService.detail(subscription.owner);\n return {\n userEnabled: userDetails.enabled,\n visibleUserStatus: this.getVisibleUserStatusText(userDetails), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n userId: userDetails.id,\n status: this.getStatusViewModel(subscription.c8y_BrokerSource.status), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n id: subscription.id,\n _c8y_BrokerSource: subscription.c8y_BrokerSource\n } as SubscriptionViewModel;\n });\n return Promise.all(viewModelSubscriptions);\n }\n\n // Status decoration (legacy compatibility)\n private getStatusViewModel(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n return this.subscriptionStatusViewModelFactory.build(status);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n CoreModule,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n} from '@c8y/ngx-components';\nimport { DataBrokerSubscriptionsService } from './data-broker-subscriptions.service';\n\n@NgModule({\n declarations: [],\n imports: [CoreModule],\n entryComponents: [],\n providers: [\n DataBrokerSubscriptionsService,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n ],\n exports: []\n})\nexport class DataBrokerModule {}\n","import { downgradeInjectable } from '@angular/upgrade/static';\nimport { DataBrokerSubscriptionsService } from '../data-broker-subscriptions.service';\nexport const dataBrokerSubscriptionsService = downgradeInjectable(DataBrokerSubscriptionsService);\n","import * as angular from 'angular';\nimport { registerNgModule } from '@c8y/ng1-modules';\nimport { dataBrokerSubscriptionsService } from './downgraded.services';\n\nconst NAME = 'c8y.upgrade.dataBroker';\n\nangular\n .module(NAME, [])\n .service('c8yDataBrokerSubscriptionsService', dataBrokerSubscriptionsService);\n\nexport const ng1Modules = [NAME];\n\nregisterNgModule(ng1Modules);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["gettext"],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-data-broker.mjs","sources":["../../data-broker/model/data-broker.subscription.model.ts","../../data-broker/factories/data-broker.subscription.factory.ts","../../data-broker/data-broker-subscriptions.service.ts","../../data-broker/data-broker.module.ts","../../data-broker/ng1/downgraded.services.ts","../../data-broker/ng1/index.ts","../../data-broker/c8y-ngx-components-data-broker.ts"],"sourcesContent":["import { IUser } from '@c8y/client';\n\nexport enum DataBrokerConnectorStatus {\n ACTIVE = 'ACTIVE',\n SUSPENDED = 'SUSPENDED',\n WAITING = 'WAITING'\n}\n\nexport interface SubscriptionStatusViewModel {\n icon: string;\n textClass: string;\n text: string;\n iconClass?: string;\n}\n\nexport interface SubscriptionViewModel {\n userEnabled: boolean;\n visibleUserStatus: string;\n userId: string;\n status: SubscriptionStatusViewModel;\n id: string;\n _c8y_BrokerSource: any;\n}\n\nexport interface NewDeviceRequestStatus {\n name: string;\n label: string;\n value: string;\n}\n\nexport interface SubscriptionsViewModelNg1 {\n init(): void;\n reload(): void;\n destroy(): void;\n}\n\nexport type UserStatusPartial = Required<Pick<IUser, 'id' | 'enabled'>>;\n","import { DeviceRegistrationStatus } from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n NewDeviceRequestStatus\n} from '../model/data-broker.subscription.model';\n\nexport class SubscriptionStatusViewModelFactory {\n build(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n let statusViewModel = null;\n switch (status) {\n case DataBrokerConnectorStatus.ACTIVE: // dataBrokerConnectorsSvc.STATUS.ACTIVE.value\n statusViewModel = {\n icon: 'check-circle',\n textClass: 'text-success',\n text: gettext('Active`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.SUSPENDED: // dataBrokerConnectorsSvc.STATUS.SUSPENDED.value\n statusViewModel = {\n icon: 'exclamation-triangle',\n textClass: 'text-warning',\n text: gettext('Inactive`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.WAITING: // dataBrokerConnectorsSvc.STATUS.WAITING.value\n statusViewModel = {\n icon: 'spinner',\n iconClass: 'icon-spin',\n textClass: 'text-warning',\n text: gettext('Waiting`data broker subscription`')\n };\n break;\n default:\n break;\n }\n return statusViewModel;\n }\n}\n\nexport class NewDeviceRequestStatusFactory {\n build(status: DeviceRegistrationStatus): NewDeviceRequestStatus {\n let result = null;\n switch (status) {\n case DeviceRegistrationStatus.WAITING_FOR_CONNECTION:\n result = {\n name: DeviceRegistrationStatus.WAITING_FOR_CONNECTION,\n label: gettext('Waiting for connection`data broker subscription`'),\n value: DeviceRegistrationStatus.WAITING_FOR_CONNECTION\n };\n break;\n case DeviceRegistrationStatus.PENDING_ACCEPTANCE:\n result = {\n name: DeviceRegistrationStatus.PENDING_ACCEPTANCE,\n label: gettext('Pending acceptance`data broker subscription`'),\n value: DeviceRegistrationStatus.PENDING_ACCEPTANCE\n };\n break;\n case DeviceRegistrationStatus.ACCEPTED:\n result = {\n name: DeviceRegistrationStatus.ACCEPTED,\n label: gettext('Accepted`data broker subscription`'),\n value: DeviceRegistrationStatus.ACCEPTED\n };\n case DeviceRegistrationStatus.BLOCKED:\n result = {\n name: DeviceRegistrationStatus.BLOCKED,\n label: gettext('Blocked`data broker subscription`'),\n value: DeviceRegistrationStatus.BLOCKED\n };\n break;\n }\n return result;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n IDeviceRegistration,\n IManagedObject,\n IUser,\n UserService,\n InventoryService,\n DeviceRegistrationService,\n DeviceRegistrationStatus\n} from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components';\nimport { get, pick, set } from 'lodash-es';\nimport { BehaviorSubject, interval, merge, Observable, Subject, Subscription } from 'rxjs';\nimport {\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService,\n AppStateService\n} from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n SubscriptionViewModel,\n SubscriptionsViewModelNg1\n} from './model/data-broker.subscription.model';\nimport {\n SubscriptionStatusViewModelFactory,\n NewDeviceRequestStatusFactory\n} from './factories/data-broker.subscription.factory';\nimport { distinctUntilChanged, filter, map, switchMap, takeUntil, tap } from 'rxjs/operators';\n\n@Injectable()\nexport class DataBrokerSubscriptionsService {\n private readonly FRAGMENT_TYPE: string = 'c8y_BrokerSource';\n private readonly NEW_DEVICE_REQUEST_TYPE: string = 'c8y_DataBroker';\n /**\n * inventory polling interval\n */\n private readonly POLL_INTERVAL_FOR_SUBSCRIPTIONS = 15000;\n /**\n * produce status fragment for subscription\n */\n private subscriptionStatusViewModelFactory: SubscriptionStatusViewModelFactory;\n /**\n * produce request status view model\n */\n private newDeviceRequestStatusViewModelFactory: NewDeviceRequestStatusFactory;\n\n private moRealtimeSubscriptionsMap = new Map<string, Subscription>();\n\n private subscriptionsCount;\n\n private refreshPendingTrigger$ = new BehaviorSubject<void>(null);\n\n filters = {\n fragmentType: this.FRAGMENT_TYPE\n };\n\n /**\n * legacy enum values\n */\n NEW_DEVICE_REQUEST_STATUS;\n\n constructor(\n private moRealtimeService: ManagedObjectRealtimeService,\n private deviceBootstrapRealtimeService: DeviceBootstrapRealtimeService,\n private inventoryService: InventoryService,\n private userService: UserService,\n private deviceRegistrationService: DeviceRegistrationService,\n private appStateService: AppStateService\n ) {\n this.subscriptionStatusViewModelFactory = new SubscriptionStatusViewModelFactory();\n this.newDeviceRequestStatusViewModelFactory = new NewDeviceRequestStatusFactory();\n\n // Build legacy enum structure for ng1 component\n this.NEW_DEVICE_REQUEST_STATUS = this.generateDeviceRequestStatusEnum(\n this.newDeviceRequestStatusViewModelFactory\n );\n }\n\n async getBrokerSubscriptionsList(): Promise<IManagedObject[]> {\n return (await this.inventoryService.list(this.filters)).data;\n }\n\n /**\n * User status text (legacy compatibility)\n */\n getVisibleUserStatusText(user): string {\n return user.enabled ? gettext('active`subscription`') : gettext('inactive`subscription`');\n }\n\n async remove(subscription: SubscriptionViewModel) {\n // handle realtime unsubsribe\n if (this.moRealtimeSubscriptionsMap.has(subscription.id)) {\n this.moRealtimeSubscriptionsMap.get(subscription.id).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(subscription.id);\n }\n // handle removal\n const brokerSourceRenamed = `_${this.FRAGMENT_TYPE}`;\n set(subscription, this.FRAGMENT_TYPE, null);\n\n return await this.inventoryService.update(\n pick(subscription, ['id', this.FRAGMENT_TYPE, brokerSourceRenamed])\n );\n }\n\n async setStatus(\n subscription: SubscriptionViewModel,\n enabled: boolean\n ): Promise<SubscriptionViewModel> {\n const userData = (\n await this.userService.update({\n id: subscription.userId,\n enabled\n } as Partial<IUser>)\n ).data;\n subscription.userEnabled = userData.enabled;\n subscription.visibleUserStatus = this.getVisibleUserStatusText(userData);\n return subscription;\n }\n\n /**\n * List of pending subscriptions\n */\n async listPendingBrokerSubscriptions(): Promise<IDeviceRegistration[]> {\n return (\n await this.deviceRegistrationService.list({\n pageSize: 2000,\n withTotalPages: true\n })\n ).data;\n }\n\n /**\n * Accept subscription\n */\n async accept(code: string): Promise<IDeviceRegistration> {\n return (await this.deviceRegistrationService.accept(code)).data;\n }\n\n /**\n * Discard subscription\n */\n async discard(code: string) {\n return await this.deviceRegistrationService.delete(code);\n }\n\n /**\n * Add new subscription\n */\n async create(code: string): Promise<IDeviceRegistration> {\n return (\n await this.deviceRegistrationService.create({\n id: code,\n type: this.NEW_DEVICE_REQUEST_TYPE\n })\n ).data;\n }\n\n getForNg1({\n pollingInterval,\n onPendingSubscriptions,\n onExistingSubscriptions,\n onMoUpdate\n }): SubscriptionsViewModelNg1 {\n const reload$ = new Subject<void>();\n const destroy$ = new Subject<void>();\n const ready$ = new Subject<void>();\n\n const unsubscribeRealtime = () => {\n const moRealtimeSubscriptionIterator = this.moRealtimeSubscriptionsMap.keys();\n let key = moRealtimeSubscriptionIterator.next().value as string;\n while (this.moRealtimeSubscriptionsMap.has(key)) {\n this.moRealtimeSubscriptionsMap.get(key).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(key as string);\n key = moRealtimeSubscriptionIterator.next().value as string;\n }\n };\n\n const userInitialized$ = this.appStateService.currentUser.pipe(\n filter(currentUser => currentUser !== null)\n );\n const triggers = merge(reload$, ready$);\n const pendingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n this.deviceBootstrapRealtimeService.onAll$(),\n this.refreshPendingTrigger$\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.listPendingBrokerSubscriptions()),\n map(pendingSubscriptions =>\n this.convertDeviceRegistrationsToSubscriptionViewModels(pendingSubscriptions)\n ),\n takeUntil(destroy$)\n );\n const existingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n interval(pollingInterval)\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.getBrokerSubscriptionsList()),\n tap(mos => {\n if (this.subscriptionsCount !== mos.length) {\n this.refreshPendingTrigger$.next();\n this.subscriptionsCount = mos.length;\n }\n mos.forEach(mo => {\n if (!this.moRealtimeSubscriptionsMap.has(mo.id)) {\n const mortObservable = this.moRealtimeService\n .onUpdate$(mo.id)\n .pipe(switchMap(mo => this.convertToViewModel([mo])));\n this.moRealtimeSubscriptionsMap.set(mo.id, mortObservable.subscribe(onMoUpdate));\n }\n });\n }),\n distinctUntilChanged(),\n switchMap(mos => this.convertToViewModel(mos)),\n takeUntil(destroy$)\n );\n\n return {\n init() {\n pendingSubscriptions$.subscribe(onPendingSubscriptions);\n existingSubscriptions$.subscribe(onExistingSubscriptions);\n setTimeout(() => {\n ready$.next();\n }, 1000);\n },\n reload() {\n reload$.next();\n },\n destroy() {\n destroy$.next();\n destroy$.complete();\n unsubscribeRealtime();\n }\n };\n }\n\n private convertDeviceRegistrationsToSubscriptionViewModels(\n pendingSubscriptions\n ): SubscriptionViewModel[] {\n const convertedToViewModel = pendingSubscriptions\n .filter(deviceRequest => deviceRequest.type === this.NEW_DEVICE_REQUEST_TYPE)\n .map(deviceRequest => {\n return Object.assign({}, get(deviceRequest, 'customProperties.c8y_BrokerSource'), {\n status: this.newDeviceRequestStatusViewModelFactory.build(deviceRequest.status),\n type: deviceRequest.type,\n id: deviceRequest.id\n });\n });\n return convertedToViewModel;\n }\n\n private generateDeviceRequestStatusEnum(newDeviceRequestViewModelFactory) {\n const result = {};\n for (const status in DeviceRegistrationStatus) {\n Object.defineProperty(result, status, {\n enumerable: true,\n writable: false,\n configurable: false,\n value: newDeviceRequestViewModelFactory.build(status as any as DeviceRegistrationStatus)\n });\n }\n return result;\n }\n\n // Function maps data in suitable manner to have it easier to display. Used in service mainly for compatibility\n private async convertToViewModel(\n subscriptions: IManagedObject[]\n ): Promise<SubscriptionViewModel[]> {\n const viewModelSubscriptions = subscriptions.map(async subscription => {\n const { data: userDetails } = await this.userService.detail(subscription.owner);\n return {\n userEnabled: userDetails.enabled,\n visibleUserStatus: this.getVisibleUserStatusText(userDetails), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n userId: userDetails.id,\n status: this.getStatusViewModel(subscription.c8y_BrokerSource.status), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n id: subscription.id,\n _c8y_BrokerSource: subscription.c8y_BrokerSource\n } as SubscriptionViewModel;\n });\n return Promise.all(viewModelSubscriptions);\n }\n\n // Status decoration (legacy compatibility)\n private getStatusViewModel(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n return this.subscriptionStatusViewModelFactory.build(status);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n CoreModule,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n} from '@c8y/ngx-components';\nimport { DataBrokerSubscriptionsService } from './data-broker-subscriptions.service';\n\n@NgModule({\n declarations: [],\n imports: [CoreModule],\n entryComponents: [],\n providers: [\n DataBrokerSubscriptionsService,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n ],\n exports: []\n})\nexport class DataBrokerModule {}\n","import { downgradeInjectable } from '@angular/upgrade/static';\nimport { DataBrokerSubscriptionsService } from '../data-broker-subscriptions.service';\nexport const dataBrokerSubscriptionsService = downgradeInjectable(DataBrokerSubscriptionsService);\n","import * as angular from 'angular';\nimport { registerNgModule } from '@c8y/ng1-modules';\nimport { dataBrokerSubscriptionsService } from './downgraded.services';\n\nconst NAME = 'c8y.upgrade.dataBroker';\n\nangular\n .module(NAME, [])\n .service('c8yDataBrokerSubscriptionsService', dataBrokerSubscriptionsService);\n\nexport const ng1Modules = [NAME];\n\nregisterNgModule(ng1Modules);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
3
  import { Injectable, Component, ViewChild } from '@angular/core';
4
- import { gettext } from '@c8y/client/src/gettext';
5
4
  import * as i2 from '@c8y/ngx-components';
6
- import { CommonModule, CoreModule } from '@c8y/ngx-components';
5
+ import { gettext, CommonModule, CoreModule } from '@c8y/ngx-components';
7
6
  import { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/services';
8
7
  import * as i1 from '@c8y/client';
9
8
  import * as i3 from '@angular/common';
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","sources":["../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.service.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.html","../../protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { FetchClient, IFetchResponse } from '@c8y/client';\nimport { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/services';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LWM2MPostOperationsParametersService extends Lwm2mClientService<LWM2MPostOperationsParameters> {\n private readonly detailUrl: string = '/postRegistrationOptions';\n\n constructor(client: FetchClient) {\n super(client);\n }\n\n get(): Promise<IFetchResponse> {\n return super.fetch(this.detailUrl);\n }\n\n put(data: LWM2MPostOperationsParameters) {\n const headers = { 'content-type': 'application/json', accept: 'application/json' };\n return super.fetch(this.detailUrl, {\n method: 'PUT',\n body: JSON.stringify(data),\n headers: headers\n });\n }\n}\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { NgForm } from '@angular/forms';\nimport { gettext } from '@c8y/client/src/gettext';\nimport { LWM2MPostOperationsParametersService } from './lwm2m-post-operations.service';\nimport { AlertService, CoreModule, CommonModule } from '@c8y/ngx-components';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Component({\n selector: 'lwm2m-post-operations',\n templateUrl: './lwm2m-post-operations.component.html',\n standalone: true,\n imports: [CommonModule, CoreModule]\n})\nexport class LWM2MPostOperationsComponent implements OnInit {\n @ViewChild('commandsForm') commandsForm: NgForm;\n\n exampleCommands = [\n {\n command: 'discover',\n resource: '<objectId>',\n description: gettext('Discover all resources of Object 3300, the generic sensor.')\n },\n {\n command: 'read',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Read maximum sensor value')\n },\n {\n command: 'write',\n resource: '<objectId>/<objectInstanceId>/<resourceId> <applicationType>',\n description: gettext('Write application type \"CO2\" to device')\n },\n {\n command: 'execute',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Reset min and max values')\n },\n {\n command: 'observe',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Observe sensor value. Causes device to send every new sensor value')\n },\n {\n command: 'writeattr',\n resource: '<objectId>/<objectInstanceId>/<resourceId> greater=<value>',\n description: gettext('Only send observations if sensor value is higher than 100')\n }\n ];\n\n operations: LWM2MPostOperationsParameters = {\n commands: '',\n type: '',\n id: ''\n };\n\n constructor(\n private lwm2mPostOperationsSvc: LWM2MPostOperationsParametersService,\n private alertService: AlertService\n ) {}\n\n async ngOnInit() {\n this.operations = (await this.getPostOperationsParameters()) as LWM2MPostOperationsParameters;\n }\n\n async save(operations: LWM2MPostOperationsParameters) {\n try {\n await this.lwm2mPostOperationsSvc.put(operations);\n this.alertService.success(gettext('Post-operations saved'));\n this.commandsForm.form.markAsPristine();\n } catch (error) {\n this.alertService.addServerFailure(error);\n }\n }\n\n async getPostOperationsParameters() {\n try {\n const res = await this.lwm2mPostOperationsSvc.get();\n return (await res.json()) as LWM2MPostOperationsParameters;\n } catch (error) {\n this.alertService.addServerFailure(error);\n return {};\n }\n }\n}\n","<c8y-title>{{ 'LWM2M post-operations' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [label]=\"'Device types' | translate\"\n [icon]=\"'c8y-device-protocols'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item [label]=\"'LWM2M post-operations' | translate\"></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<div class=\"card content-fullpage card--grid grid__col--7-5--md grid__row--auto-min-content\">\n <div class=\"inner-scroll bg-component\">\n <div class=\"card-header large-padding separator sticky-top\">\n <div class=\"h4 m-r-16\" id=\"commands\">\n {{ 'Commands' | translate }}\n </div>\n </div>\n <div class=\"card-block large-padding\">\n <form\n #commandsForm=\"ngForm\"\n id=\"commandsForm\"\n class=\"d-flex d-col flex-grow fit-h\"\n (ngSubmit)=\"save(operations)\"\n >\n <div class=\"form-group\">\n <textarea\n [(ngModel)]=\"operations.commands\"\n class=\"form-control\"\n aria-labelledby=\"commands\"\n name=\"commands\"\n rows=\"20\"\n ></textarea>\n </div>\n </form>\n </div>\n </div>\n\n <div class=\"inner-scroll bg-level-1\" tabindex=\"0\">\n <div class=\"card-block large-padding\">\n <p class=\"m-b-16\">\n <i class=\"text-info m-r-4 text-14\" c8yIcon=\"info-circle\"></i>\n {{\n 'You can enter a set of LWM2M shell commands. Each command will be sent to every newly registered LWM2M device. Each command must be entered in a new line. Use the following syntax for specifying post-registration actions:'\n | translate\n }}\n </p>\n <pre class=\"bg-level-0 text-pre-normal m-b-0\">\n <ul class=\"list-unstyled m-b-0\">\n <li class=\"m-16\" *ngFor=\"let c of exampleCommands\">\n <p class=\"text-muted\"># {{c.description | translate}}</p>\n <span class=\"text-danger\">{{c.command}}</span>\n <span class=\"text-muted\">{{c.resource}}</span>\n </li>\n </ul>\n </pre>\n </div>\n </div>\n\n <div class=\"card-footer large-padding separator grid__col--fullspan\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n form=\"commandsForm\"\n [disabled]=\"commandsForm.valid && !commandsForm.dirty\"\n [attr.aria-label]=\"'Save' | translate\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.LWM2MPostOperationsParametersService"],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","sources":["../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.service.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.html","../../protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { FetchClient, IFetchResponse } from '@c8y/client';\nimport { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/services';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LWM2MPostOperationsParametersService extends Lwm2mClientService<LWM2MPostOperationsParameters> {\n private readonly detailUrl: string = '/postRegistrationOptions';\n\n constructor(client: FetchClient) {\n super(client);\n }\n\n get(): Promise<IFetchResponse> {\n return super.fetch(this.detailUrl);\n }\n\n put(data: LWM2MPostOperationsParameters) {\n const headers = { 'content-type': 'application/json', accept: 'application/json' };\n return super.fetch(this.detailUrl, {\n method: 'PUT',\n body: JSON.stringify(data),\n headers: headers\n });\n }\n}\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { NgForm } from '@angular/forms';\nimport { gettext } from '@c8y/ngx-components';\nimport { LWM2MPostOperationsParametersService } from './lwm2m-post-operations.service';\nimport { AlertService, CoreModule, CommonModule } from '@c8y/ngx-components';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Component({\n selector: 'lwm2m-post-operations',\n templateUrl: './lwm2m-post-operations.component.html',\n standalone: true,\n imports: [CommonModule, CoreModule]\n})\nexport class LWM2MPostOperationsComponent implements OnInit {\n @ViewChild('commandsForm') commandsForm: NgForm;\n\n exampleCommands = [\n {\n command: 'discover',\n resource: '<objectId>',\n description: gettext('Discover all resources of Object 3300, the generic sensor.')\n },\n {\n command: 'read',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Read maximum sensor value')\n },\n {\n command: 'write',\n resource: '<objectId>/<objectInstanceId>/<resourceId> <applicationType>',\n description: gettext('Write application type \"CO2\" to device')\n },\n {\n command: 'execute',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Reset min and max values')\n },\n {\n command: 'observe',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Observe sensor value. Causes device to send every new sensor value')\n },\n {\n command: 'writeattr',\n resource: '<objectId>/<objectInstanceId>/<resourceId> greater=<value>',\n description: gettext('Only send observations if sensor value is higher than 100')\n }\n ];\n\n operations: LWM2MPostOperationsParameters = {\n commands: '',\n type: '',\n id: ''\n };\n\n constructor(\n private lwm2mPostOperationsSvc: LWM2MPostOperationsParametersService,\n private alertService: AlertService\n ) {}\n\n async ngOnInit() {\n this.operations = (await this.getPostOperationsParameters()) as LWM2MPostOperationsParameters;\n }\n\n async save(operations: LWM2MPostOperationsParameters) {\n try {\n await this.lwm2mPostOperationsSvc.put(operations);\n this.alertService.success(gettext('Post-operations saved'));\n this.commandsForm.form.markAsPristine();\n } catch (error) {\n this.alertService.addServerFailure(error);\n }\n }\n\n async getPostOperationsParameters() {\n try {\n const res = await this.lwm2mPostOperationsSvc.get();\n return (await res.json()) as LWM2MPostOperationsParameters;\n } catch (error) {\n this.alertService.addServerFailure(error);\n return {};\n }\n }\n}\n","<c8y-title>{{ 'LWM2M post-operations' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [label]=\"'Device types' | translate\"\n [icon]=\"'c8y-device-protocols'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item [label]=\"'LWM2M post-operations' | translate\"></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<div class=\"card content-fullpage card--grid grid__col--7-5--md grid__row--auto-min-content\">\n <div class=\"inner-scroll bg-component\">\n <div class=\"card-header large-padding separator sticky-top\">\n <div class=\"h4 m-r-16\" id=\"commands\">\n {{ 'Commands' | translate }}\n </div>\n </div>\n <div class=\"card-block large-padding\">\n <form\n #commandsForm=\"ngForm\"\n id=\"commandsForm\"\n class=\"d-flex d-col flex-grow fit-h\"\n (ngSubmit)=\"save(operations)\"\n >\n <div class=\"form-group\">\n <textarea\n [(ngModel)]=\"operations.commands\"\n class=\"form-control\"\n aria-labelledby=\"commands\"\n name=\"commands\"\n rows=\"20\"\n ></textarea>\n </div>\n </form>\n </div>\n </div>\n\n <div class=\"inner-scroll bg-level-1\" tabindex=\"0\">\n <div class=\"card-block large-padding\">\n <p class=\"m-b-16\">\n <i class=\"text-info m-r-4 text-14\" c8yIcon=\"info-circle\"></i>\n {{\n 'You can enter a set of LWM2M shell commands. Each command will be sent to every newly registered LWM2M device. Each command must be entered in a new line. Use the following syntax for specifying post-registration actions:'\n | translate\n }}\n </p>\n <pre class=\"bg-level-0 text-pre-normal m-b-0\">\n <ul class=\"list-unstyled m-b-0\">\n <li class=\"m-16\" *ngFor=\"let c of exampleCommands\">\n <p class=\"text-muted\"># {{c.description | translate}}</p>\n <span class=\"text-danger\">{{c.command}}</span>\n <span class=\"text-muted\">{{c.resource}}</span>\n </li>\n </ul>\n </pre>\n </div>\n </div>\n\n <div class=\"card-footer large-padding separator grid__col--fullspan\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n form=\"commandsForm\"\n [disabled]=\"commandsForm.valid && !commandsForm.dirty\"\n [attr.aria-label]=\"'Save' | translate\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.LWM2MPostOperationsParametersService"],"mappings":"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"}
@@ -4,7 +4,6 @@ import * as i1 from '@c8y/ngx-components';
4
4
  import { gettext, CoreModule, ManagedObjectRealtimeService, DeviceBootstrapRealtimeService } from '@c8y/ngx-components';
5
5
  import * as i2 from '@c8y/client';
6
6
  import { DeviceRegistrationStatus } from '@c8y/client';
7
- import { gettext as gettext$1 } from '@c8y/client/src/gettext';
8
7
  import { set, pick, get } from 'lodash-es';
9
8
  import { BehaviorSubject, Subject, merge, interval } from 'rxjs';
10
9
  import { filter, switchMap, map, takeUntil, tap, distinctUntilChanged } from 'rxjs/operators';
@@ -118,7 +117,7 @@ class DataBrokerSubscriptionsService {
118
117
  * User status text (legacy compatibility)
119
118
  */
120
119
  getVisibleUserStatusText(user) {
121
- return user.enabled ? gettext$1('active`subscription`') : gettext$1('inactive`subscription`');
120
+ return user.enabled ? gettext('active`subscription`') : gettext('inactive`subscription`');
122
121
  }
123
122
  async remove(subscription) {
124
123
  // handle realtime unsubsribe
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-data-broker.mjs","sources":["../../data-broker/model/data-broker.subscription.model.ts","../../data-broker/factories/data-broker.subscription.factory.ts","../../data-broker/data-broker-subscriptions.service.ts","../../data-broker/data-broker.module.ts","../../data-broker/ng1/downgraded.services.ts","../../data-broker/ng1/index.ts","../../data-broker/c8y-ngx-components-data-broker.ts"],"sourcesContent":["import { IUser } from '@c8y/client';\n\nexport enum DataBrokerConnectorStatus {\n ACTIVE = 'ACTIVE',\n SUSPENDED = 'SUSPENDED',\n WAITING = 'WAITING'\n}\n\nexport interface SubscriptionStatusViewModel {\n icon: string;\n textClass: string;\n text: string;\n iconClass?: string;\n}\n\nexport interface SubscriptionViewModel {\n userEnabled: boolean;\n visibleUserStatus: string;\n userId: string;\n status: SubscriptionStatusViewModel;\n id: string;\n _c8y_BrokerSource: any;\n}\n\nexport interface NewDeviceRequestStatus {\n name: string;\n label: string;\n value: string;\n}\n\nexport interface SubscriptionsViewModelNg1 {\n init(): void;\n reload(): void;\n destroy(): void;\n}\n\nexport type UserStatusPartial = Required<Pick<IUser, 'id' | 'enabled'>>;\n","import { DeviceRegistrationStatus } from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n NewDeviceRequestStatus\n} from '../model/data-broker.subscription.model';\n\nexport class SubscriptionStatusViewModelFactory {\n build(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n let statusViewModel = null;\n switch (status) {\n case DataBrokerConnectorStatus.ACTIVE: // dataBrokerConnectorsSvc.STATUS.ACTIVE.value\n statusViewModel = {\n icon: 'check-circle',\n textClass: 'text-success',\n text: gettext('Active`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.SUSPENDED: // dataBrokerConnectorsSvc.STATUS.SUSPENDED.value\n statusViewModel = {\n icon: 'exclamation-triangle',\n textClass: 'text-warning',\n text: gettext('Inactive`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.WAITING: // dataBrokerConnectorsSvc.STATUS.WAITING.value\n statusViewModel = {\n icon: 'spinner',\n iconClass: 'icon-spin',\n textClass: 'text-warning',\n text: gettext('Waiting`data broker subscription`')\n };\n break;\n default:\n break;\n }\n return statusViewModel;\n }\n}\n\nexport class NewDeviceRequestStatusFactory {\n build(status: DeviceRegistrationStatus): NewDeviceRequestStatus {\n let result = null;\n switch (status) {\n case DeviceRegistrationStatus.WAITING_FOR_CONNECTION:\n result = {\n name: DeviceRegistrationStatus.WAITING_FOR_CONNECTION,\n label: gettext('Waiting for connection`data broker subscription`'),\n value: DeviceRegistrationStatus.WAITING_FOR_CONNECTION\n };\n break;\n case DeviceRegistrationStatus.PENDING_ACCEPTANCE:\n result = {\n name: DeviceRegistrationStatus.PENDING_ACCEPTANCE,\n label: gettext('Pending acceptance`data broker subscription`'),\n value: DeviceRegistrationStatus.PENDING_ACCEPTANCE\n };\n break;\n case DeviceRegistrationStatus.ACCEPTED:\n result = {\n name: DeviceRegistrationStatus.ACCEPTED,\n label: gettext('Accepted`data broker subscription`'),\n value: DeviceRegistrationStatus.ACCEPTED\n };\n case DeviceRegistrationStatus.BLOCKED:\n result = {\n name: DeviceRegistrationStatus.BLOCKED,\n label: gettext('Blocked`data broker subscription`'),\n value: DeviceRegistrationStatus.BLOCKED\n };\n break;\n }\n return result;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n IDeviceRegistration,\n IManagedObject,\n IUser,\n UserService,\n InventoryService,\n DeviceRegistrationService,\n DeviceRegistrationStatus\n} from '@c8y/client';\nimport { gettext } from '@c8y/client/src/gettext';\nimport { get, pick, set } from 'lodash-es';\nimport { BehaviorSubject, interval, merge, Observable, Subject, Subscription } from 'rxjs';\nimport {\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService,\n AppStateService\n} from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n SubscriptionViewModel,\n SubscriptionsViewModelNg1\n} from './model/data-broker.subscription.model';\nimport {\n SubscriptionStatusViewModelFactory,\n NewDeviceRequestStatusFactory\n} from './factories/data-broker.subscription.factory';\nimport { distinctUntilChanged, filter, map, switchMap, takeUntil, tap } from 'rxjs/operators';\n\n@Injectable()\nexport class DataBrokerSubscriptionsService {\n private readonly FRAGMENT_TYPE: string = 'c8y_BrokerSource';\n private readonly NEW_DEVICE_REQUEST_TYPE: string = 'c8y_DataBroker';\n /**\n * inventory polling interval\n */\n private readonly POLL_INTERVAL_FOR_SUBSCRIPTIONS = 15000;\n /**\n * produce status fragment for subscription\n */\n private subscriptionStatusViewModelFactory: SubscriptionStatusViewModelFactory;\n /**\n * produce request status view model\n */\n private newDeviceRequestStatusViewModelFactory: NewDeviceRequestStatusFactory;\n\n private moRealtimeSubscriptionsMap = new Map<string, Subscription>();\n\n private subscriptionsCount;\n\n private refreshPendingTrigger$ = new BehaviorSubject<void>(null);\n\n filters = {\n fragmentType: this.FRAGMENT_TYPE\n };\n\n /**\n * legacy enum values\n */\n NEW_DEVICE_REQUEST_STATUS;\n\n constructor(\n private moRealtimeService: ManagedObjectRealtimeService,\n private deviceBootstrapRealtimeService: DeviceBootstrapRealtimeService,\n private inventoryService: InventoryService,\n private userService: UserService,\n private deviceRegistrationService: DeviceRegistrationService,\n private appStateService: AppStateService\n ) {\n this.subscriptionStatusViewModelFactory = new SubscriptionStatusViewModelFactory();\n this.newDeviceRequestStatusViewModelFactory = new NewDeviceRequestStatusFactory();\n\n // Build legacy enum structure for ng1 component\n this.NEW_DEVICE_REQUEST_STATUS = this.generateDeviceRequestStatusEnum(\n this.newDeviceRequestStatusViewModelFactory\n );\n }\n\n async getBrokerSubscriptionsList(): Promise<IManagedObject[]> {\n return (await this.inventoryService.list(this.filters)).data;\n }\n\n /**\n * User status text (legacy compatibility)\n */\n getVisibleUserStatusText(user): string {\n return user.enabled ? gettext('active`subscription`') : gettext('inactive`subscription`');\n }\n\n async remove(subscription: SubscriptionViewModel) {\n // handle realtime unsubsribe\n if (this.moRealtimeSubscriptionsMap.has(subscription.id)) {\n this.moRealtimeSubscriptionsMap.get(subscription.id).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(subscription.id);\n }\n // handle removal\n const brokerSourceRenamed = `_${this.FRAGMENT_TYPE}`;\n set(subscription, this.FRAGMENT_TYPE, null);\n\n return await this.inventoryService.update(\n pick(subscription, ['id', this.FRAGMENT_TYPE, brokerSourceRenamed])\n );\n }\n\n async setStatus(\n subscription: SubscriptionViewModel,\n enabled: boolean\n ): Promise<SubscriptionViewModel> {\n const userData = (\n await this.userService.update({\n id: subscription.userId,\n enabled\n } as Partial<IUser>)\n ).data;\n subscription.userEnabled = userData.enabled;\n subscription.visibleUserStatus = this.getVisibleUserStatusText(userData);\n return subscription;\n }\n\n /**\n * List of pending subscriptions\n */\n async listPendingBrokerSubscriptions(): Promise<IDeviceRegistration[]> {\n return (\n await this.deviceRegistrationService.list({\n pageSize: 2000,\n withTotalPages: true\n })\n ).data;\n }\n\n /**\n * Accept subscription\n */\n async accept(code: string): Promise<IDeviceRegistration> {\n return (await this.deviceRegistrationService.accept(code)).data;\n }\n\n /**\n * Discard subscription\n */\n async discard(code: string) {\n return await this.deviceRegistrationService.delete(code);\n }\n\n /**\n * Add new subscription\n */\n async create(code: string): Promise<IDeviceRegistration> {\n return (\n await this.deviceRegistrationService.create({\n id: code,\n type: this.NEW_DEVICE_REQUEST_TYPE\n })\n ).data;\n }\n\n getForNg1({\n pollingInterval,\n onPendingSubscriptions,\n onExistingSubscriptions,\n onMoUpdate\n }): SubscriptionsViewModelNg1 {\n const reload$ = new Subject<void>();\n const destroy$ = new Subject<void>();\n const ready$ = new Subject<void>();\n\n const unsubscribeRealtime = () => {\n const moRealtimeSubscriptionIterator = this.moRealtimeSubscriptionsMap.keys();\n let key = moRealtimeSubscriptionIterator.next().value as string;\n while (this.moRealtimeSubscriptionsMap.has(key)) {\n this.moRealtimeSubscriptionsMap.get(key).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(key as string);\n key = moRealtimeSubscriptionIterator.next().value as string;\n }\n };\n\n const userInitialized$ = this.appStateService.currentUser.pipe(\n filter(currentUser => currentUser !== null)\n );\n const triggers = merge(reload$, ready$);\n const pendingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n this.deviceBootstrapRealtimeService.onAll$(),\n this.refreshPendingTrigger$\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.listPendingBrokerSubscriptions()),\n map(pendingSubscriptions =>\n this.convertDeviceRegistrationsToSubscriptionViewModels(pendingSubscriptions)\n ),\n takeUntil(destroy$)\n );\n const existingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n interval(pollingInterval)\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.getBrokerSubscriptionsList()),\n tap(mos => {\n if (this.subscriptionsCount !== mos.length) {\n this.refreshPendingTrigger$.next();\n this.subscriptionsCount = mos.length;\n }\n mos.forEach(mo => {\n if (!this.moRealtimeSubscriptionsMap.has(mo.id)) {\n const mortObservable = this.moRealtimeService\n .onUpdate$(mo.id)\n .pipe(switchMap(mo => this.convertToViewModel([mo])));\n this.moRealtimeSubscriptionsMap.set(mo.id, mortObservable.subscribe(onMoUpdate));\n }\n });\n }),\n distinctUntilChanged(),\n switchMap(mos => this.convertToViewModel(mos)),\n takeUntil(destroy$)\n );\n\n return {\n init() {\n pendingSubscriptions$.subscribe(onPendingSubscriptions);\n existingSubscriptions$.subscribe(onExistingSubscriptions);\n setTimeout(() => {\n ready$.next();\n }, 1000);\n },\n reload() {\n reload$.next();\n },\n destroy() {\n destroy$.next();\n destroy$.complete();\n unsubscribeRealtime();\n }\n };\n }\n\n private convertDeviceRegistrationsToSubscriptionViewModels(\n pendingSubscriptions\n ): SubscriptionViewModel[] {\n const convertedToViewModel = pendingSubscriptions\n .filter(deviceRequest => deviceRequest.type === this.NEW_DEVICE_REQUEST_TYPE)\n .map(deviceRequest => {\n return Object.assign({}, get(deviceRequest, 'customProperties.c8y_BrokerSource'), {\n status: this.newDeviceRequestStatusViewModelFactory.build(deviceRequest.status),\n type: deviceRequest.type,\n id: deviceRequest.id\n });\n });\n return convertedToViewModel;\n }\n\n private generateDeviceRequestStatusEnum(newDeviceRequestViewModelFactory) {\n const result = {};\n for (const status in DeviceRegistrationStatus) {\n Object.defineProperty(result, status, {\n enumerable: true,\n writable: false,\n configurable: false,\n value: newDeviceRequestViewModelFactory.build(status as any as DeviceRegistrationStatus)\n });\n }\n return result;\n }\n\n // Function maps data in suitable manner to have it easier to display. Used in service mainly for compatibility\n private async convertToViewModel(\n subscriptions: IManagedObject[]\n ): Promise<SubscriptionViewModel[]> {\n const viewModelSubscriptions = subscriptions.map(async subscription => {\n const { data: userDetails } = await this.userService.detail(subscription.owner);\n return {\n userEnabled: userDetails.enabled,\n visibleUserStatus: this.getVisibleUserStatusText(userDetails), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n userId: userDetails.id,\n status: this.getStatusViewModel(subscription.c8y_BrokerSource.status), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n id: subscription.id,\n _c8y_BrokerSource: subscription.c8y_BrokerSource\n } as SubscriptionViewModel;\n });\n return Promise.all(viewModelSubscriptions);\n }\n\n // Status decoration (legacy compatibility)\n private getStatusViewModel(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n return this.subscriptionStatusViewModelFactory.build(status);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n CoreModule,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n} from '@c8y/ngx-components';\nimport { DataBrokerSubscriptionsService } from './data-broker-subscriptions.service';\n\n@NgModule({\n declarations: [],\n imports: [CoreModule],\n entryComponents: [],\n providers: [\n DataBrokerSubscriptionsService,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n ],\n exports: []\n})\nexport class DataBrokerModule {}\n","import { downgradeInjectable } from '@angular/upgrade/static';\nimport { DataBrokerSubscriptionsService } from '../data-broker-subscriptions.service';\nexport const dataBrokerSubscriptionsService = downgradeInjectable(DataBrokerSubscriptionsService);\n","import * as angular from 'angular';\nimport { registerNgModule } from '@c8y/ng1-modules';\nimport { dataBrokerSubscriptionsService } from './downgraded.services';\n\nconst NAME = 'c8y.upgrade.dataBroker';\n\nangular\n .module(NAME, [])\n .service('c8yDataBrokerSubscriptionsService', dataBrokerSubscriptionsService);\n\nexport const ng1Modules = [NAME];\n\nregisterNgModule(ng1Modules);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["gettext"],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-data-broker.mjs","sources":["../../data-broker/model/data-broker.subscription.model.ts","../../data-broker/factories/data-broker.subscription.factory.ts","../../data-broker/data-broker-subscriptions.service.ts","../../data-broker/data-broker.module.ts","../../data-broker/ng1/downgraded.services.ts","../../data-broker/ng1/index.ts","../../data-broker/c8y-ngx-components-data-broker.ts"],"sourcesContent":["import { IUser } from '@c8y/client';\n\nexport enum DataBrokerConnectorStatus {\n ACTIVE = 'ACTIVE',\n SUSPENDED = 'SUSPENDED',\n WAITING = 'WAITING'\n}\n\nexport interface SubscriptionStatusViewModel {\n icon: string;\n textClass: string;\n text: string;\n iconClass?: string;\n}\n\nexport interface SubscriptionViewModel {\n userEnabled: boolean;\n visibleUserStatus: string;\n userId: string;\n status: SubscriptionStatusViewModel;\n id: string;\n _c8y_BrokerSource: any;\n}\n\nexport interface NewDeviceRequestStatus {\n name: string;\n label: string;\n value: string;\n}\n\nexport interface SubscriptionsViewModelNg1 {\n init(): void;\n reload(): void;\n destroy(): void;\n}\n\nexport type UserStatusPartial = Required<Pick<IUser, 'id' | 'enabled'>>;\n","import { DeviceRegistrationStatus } from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n NewDeviceRequestStatus\n} from '../model/data-broker.subscription.model';\n\nexport class SubscriptionStatusViewModelFactory {\n build(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n let statusViewModel = null;\n switch (status) {\n case DataBrokerConnectorStatus.ACTIVE: // dataBrokerConnectorsSvc.STATUS.ACTIVE.value\n statusViewModel = {\n icon: 'check-circle',\n textClass: 'text-success',\n text: gettext('Active`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.SUSPENDED: // dataBrokerConnectorsSvc.STATUS.SUSPENDED.value\n statusViewModel = {\n icon: 'exclamation-triangle',\n textClass: 'text-warning',\n text: gettext('Inactive`data broker subscription`')\n };\n break;\n case DataBrokerConnectorStatus.WAITING: // dataBrokerConnectorsSvc.STATUS.WAITING.value\n statusViewModel = {\n icon: 'spinner',\n iconClass: 'icon-spin',\n textClass: 'text-warning',\n text: gettext('Waiting`data broker subscription`')\n };\n break;\n default:\n break;\n }\n return statusViewModel;\n }\n}\n\nexport class NewDeviceRequestStatusFactory {\n build(status: DeviceRegistrationStatus): NewDeviceRequestStatus {\n let result = null;\n switch (status) {\n case DeviceRegistrationStatus.WAITING_FOR_CONNECTION:\n result = {\n name: DeviceRegistrationStatus.WAITING_FOR_CONNECTION,\n label: gettext('Waiting for connection`data broker subscription`'),\n value: DeviceRegistrationStatus.WAITING_FOR_CONNECTION\n };\n break;\n case DeviceRegistrationStatus.PENDING_ACCEPTANCE:\n result = {\n name: DeviceRegistrationStatus.PENDING_ACCEPTANCE,\n label: gettext('Pending acceptance`data broker subscription`'),\n value: DeviceRegistrationStatus.PENDING_ACCEPTANCE\n };\n break;\n case DeviceRegistrationStatus.ACCEPTED:\n result = {\n name: DeviceRegistrationStatus.ACCEPTED,\n label: gettext('Accepted`data broker subscription`'),\n value: DeviceRegistrationStatus.ACCEPTED\n };\n case DeviceRegistrationStatus.BLOCKED:\n result = {\n name: DeviceRegistrationStatus.BLOCKED,\n label: gettext('Blocked`data broker subscription`'),\n value: DeviceRegistrationStatus.BLOCKED\n };\n break;\n }\n return result;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n IDeviceRegistration,\n IManagedObject,\n IUser,\n UserService,\n InventoryService,\n DeviceRegistrationService,\n DeviceRegistrationStatus\n} from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components';\nimport { get, pick, set } from 'lodash-es';\nimport { BehaviorSubject, interval, merge, Observable, Subject, Subscription } from 'rxjs';\nimport {\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService,\n AppStateService\n} from '@c8y/ngx-components';\nimport {\n SubscriptionStatusViewModel,\n DataBrokerConnectorStatus,\n SubscriptionViewModel,\n SubscriptionsViewModelNg1\n} from './model/data-broker.subscription.model';\nimport {\n SubscriptionStatusViewModelFactory,\n NewDeviceRequestStatusFactory\n} from './factories/data-broker.subscription.factory';\nimport { distinctUntilChanged, filter, map, switchMap, takeUntil, tap } from 'rxjs/operators';\n\n@Injectable()\nexport class DataBrokerSubscriptionsService {\n private readonly FRAGMENT_TYPE: string = 'c8y_BrokerSource';\n private readonly NEW_DEVICE_REQUEST_TYPE: string = 'c8y_DataBroker';\n /**\n * inventory polling interval\n */\n private readonly POLL_INTERVAL_FOR_SUBSCRIPTIONS = 15000;\n /**\n * produce status fragment for subscription\n */\n private subscriptionStatusViewModelFactory: SubscriptionStatusViewModelFactory;\n /**\n * produce request status view model\n */\n private newDeviceRequestStatusViewModelFactory: NewDeviceRequestStatusFactory;\n\n private moRealtimeSubscriptionsMap = new Map<string, Subscription>();\n\n private subscriptionsCount;\n\n private refreshPendingTrigger$ = new BehaviorSubject<void>(null);\n\n filters = {\n fragmentType: this.FRAGMENT_TYPE\n };\n\n /**\n * legacy enum values\n */\n NEW_DEVICE_REQUEST_STATUS;\n\n constructor(\n private moRealtimeService: ManagedObjectRealtimeService,\n private deviceBootstrapRealtimeService: DeviceBootstrapRealtimeService,\n private inventoryService: InventoryService,\n private userService: UserService,\n private deviceRegistrationService: DeviceRegistrationService,\n private appStateService: AppStateService\n ) {\n this.subscriptionStatusViewModelFactory = new SubscriptionStatusViewModelFactory();\n this.newDeviceRequestStatusViewModelFactory = new NewDeviceRequestStatusFactory();\n\n // Build legacy enum structure for ng1 component\n this.NEW_DEVICE_REQUEST_STATUS = this.generateDeviceRequestStatusEnum(\n this.newDeviceRequestStatusViewModelFactory\n );\n }\n\n async getBrokerSubscriptionsList(): Promise<IManagedObject[]> {\n return (await this.inventoryService.list(this.filters)).data;\n }\n\n /**\n * User status text (legacy compatibility)\n */\n getVisibleUserStatusText(user): string {\n return user.enabled ? gettext('active`subscription`') : gettext('inactive`subscription`');\n }\n\n async remove(subscription: SubscriptionViewModel) {\n // handle realtime unsubsribe\n if (this.moRealtimeSubscriptionsMap.has(subscription.id)) {\n this.moRealtimeSubscriptionsMap.get(subscription.id).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(subscription.id);\n }\n // handle removal\n const brokerSourceRenamed = `_${this.FRAGMENT_TYPE}`;\n set(subscription, this.FRAGMENT_TYPE, null);\n\n return await this.inventoryService.update(\n pick(subscription, ['id', this.FRAGMENT_TYPE, brokerSourceRenamed])\n );\n }\n\n async setStatus(\n subscription: SubscriptionViewModel,\n enabled: boolean\n ): Promise<SubscriptionViewModel> {\n const userData = (\n await this.userService.update({\n id: subscription.userId,\n enabled\n } as Partial<IUser>)\n ).data;\n subscription.userEnabled = userData.enabled;\n subscription.visibleUserStatus = this.getVisibleUserStatusText(userData);\n return subscription;\n }\n\n /**\n * List of pending subscriptions\n */\n async listPendingBrokerSubscriptions(): Promise<IDeviceRegistration[]> {\n return (\n await this.deviceRegistrationService.list({\n pageSize: 2000,\n withTotalPages: true\n })\n ).data;\n }\n\n /**\n * Accept subscription\n */\n async accept(code: string): Promise<IDeviceRegistration> {\n return (await this.deviceRegistrationService.accept(code)).data;\n }\n\n /**\n * Discard subscription\n */\n async discard(code: string) {\n return await this.deviceRegistrationService.delete(code);\n }\n\n /**\n * Add new subscription\n */\n async create(code: string): Promise<IDeviceRegistration> {\n return (\n await this.deviceRegistrationService.create({\n id: code,\n type: this.NEW_DEVICE_REQUEST_TYPE\n })\n ).data;\n }\n\n getForNg1({\n pollingInterval,\n onPendingSubscriptions,\n onExistingSubscriptions,\n onMoUpdate\n }): SubscriptionsViewModelNg1 {\n const reload$ = new Subject<void>();\n const destroy$ = new Subject<void>();\n const ready$ = new Subject<void>();\n\n const unsubscribeRealtime = () => {\n const moRealtimeSubscriptionIterator = this.moRealtimeSubscriptionsMap.keys();\n let key = moRealtimeSubscriptionIterator.next().value as string;\n while (this.moRealtimeSubscriptionsMap.has(key)) {\n this.moRealtimeSubscriptionsMap.get(key).unsubscribe();\n this.moRealtimeSubscriptionsMap.delete(key as string);\n key = moRealtimeSubscriptionIterator.next().value as string;\n }\n };\n\n const userInitialized$ = this.appStateService.currentUser.pipe(\n filter(currentUser => currentUser !== null)\n );\n const triggers = merge(reload$, ready$);\n const pendingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n this.deviceBootstrapRealtimeService.onAll$(),\n this.refreshPendingTrigger$\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.listPendingBrokerSubscriptions()),\n map(pendingSubscriptions =>\n this.convertDeviceRegistrationsToSubscriptionViewModels(pendingSubscriptions)\n ),\n takeUntil(destroy$)\n );\n const existingSubscriptions$: Observable<SubscriptionViewModel[]> = merge(\n triggers,\n interval(pollingInterval)\n ).pipe(\n switchMap(() => userInitialized$),\n switchMap(() => this.getBrokerSubscriptionsList()),\n tap(mos => {\n if (this.subscriptionsCount !== mos.length) {\n this.refreshPendingTrigger$.next();\n this.subscriptionsCount = mos.length;\n }\n mos.forEach(mo => {\n if (!this.moRealtimeSubscriptionsMap.has(mo.id)) {\n const mortObservable = this.moRealtimeService\n .onUpdate$(mo.id)\n .pipe(switchMap(mo => this.convertToViewModel([mo])));\n this.moRealtimeSubscriptionsMap.set(mo.id, mortObservable.subscribe(onMoUpdate));\n }\n });\n }),\n distinctUntilChanged(),\n switchMap(mos => this.convertToViewModel(mos)),\n takeUntil(destroy$)\n );\n\n return {\n init() {\n pendingSubscriptions$.subscribe(onPendingSubscriptions);\n existingSubscriptions$.subscribe(onExistingSubscriptions);\n setTimeout(() => {\n ready$.next();\n }, 1000);\n },\n reload() {\n reload$.next();\n },\n destroy() {\n destroy$.next();\n destroy$.complete();\n unsubscribeRealtime();\n }\n };\n }\n\n private convertDeviceRegistrationsToSubscriptionViewModels(\n pendingSubscriptions\n ): SubscriptionViewModel[] {\n const convertedToViewModel = pendingSubscriptions\n .filter(deviceRequest => deviceRequest.type === this.NEW_DEVICE_REQUEST_TYPE)\n .map(deviceRequest => {\n return Object.assign({}, get(deviceRequest, 'customProperties.c8y_BrokerSource'), {\n status: this.newDeviceRequestStatusViewModelFactory.build(deviceRequest.status),\n type: deviceRequest.type,\n id: deviceRequest.id\n });\n });\n return convertedToViewModel;\n }\n\n private generateDeviceRequestStatusEnum(newDeviceRequestViewModelFactory) {\n const result = {};\n for (const status in DeviceRegistrationStatus) {\n Object.defineProperty(result, status, {\n enumerable: true,\n writable: false,\n configurable: false,\n value: newDeviceRequestViewModelFactory.build(status as any as DeviceRegistrationStatus)\n });\n }\n return result;\n }\n\n // Function maps data in suitable manner to have it easier to display. Used in service mainly for compatibility\n private async convertToViewModel(\n subscriptions: IManagedObject[]\n ): Promise<SubscriptionViewModel[]> {\n const viewModelSubscriptions = subscriptions.map(async subscription => {\n const { data: userDetails } = await this.userService.detail(subscription.owner);\n return {\n userEnabled: userDetails.enabled,\n visibleUserStatus: this.getVisibleUserStatusText(userDetails), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n userId: userDetails.id,\n status: this.getStatusViewModel(subscription.c8y_BrokerSource.status), //TODO:IIAR should be extracted to ngx pipe when the rest of data-broker is migrated\n id: subscription.id,\n _c8y_BrokerSource: subscription.c8y_BrokerSource\n } as SubscriptionViewModel;\n });\n return Promise.all(viewModelSubscriptions);\n }\n\n // Status decoration (legacy compatibility)\n private getStatusViewModel(status: DataBrokerConnectorStatus): SubscriptionStatusViewModel {\n return this.subscriptionStatusViewModelFactory.build(status);\n }\n}\n","import { NgModule } from '@angular/core';\nimport {\n CoreModule,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n} from '@c8y/ngx-components';\nimport { DataBrokerSubscriptionsService } from './data-broker-subscriptions.service';\n\n@NgModule({\n declarations: [],\n imports: [CoreModule],\n entryComponents: [],\n providers: [\n DataBrokerSubscriptionsService,\n ManagedObjectRealtimeService,\n DeviceBootstrapRealtimeService\n ],\n exports: []\n})\nexport class DataBrokerModule {}\n","import { downgradeInjectable } from '@angular/upgrade/static';\nimport { DataBrokerSubscriptionsService } from '../data-broker-subscriptions.service';\nexport const dataBrokerSubscriptionsService = downgradeInjectable(DataBrokerSubscriptionsService);\n","import * as angular from 'angular';\nimport { registerNgModule } from '@c8y/ng1-modules';\nimport { dataBrokerSubscriptionsService } from './downgraded.services';\n\nconst NAME = 'c8y.upgrade.dataBroker';\n\nangular\n .module(NAME, [])\n .service('c8yDataBrokerSubscriptionsService', dataBrokerSubscriptionsService);\n\nexport const ng1Modules = [NAME];\n\nregisterNgModule(ng1Modules);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Component, ViewChild } from '@angular/core';
3
3
  import * as i4 from '@angular/forms';
4
- import { gettext } from '@c8y/client/src/gettext';
4
+ import * as i2 from '@c8y/ngx-components';
5
+ import { gettext, CommonModule, CoreModule } from '@c8y/ngx-components';
5
6
  import * as i1 from '@c8y/client';
6
7
  import { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/services';
7
- import * as i2 from '@c8y/ngx-components';
8
- import { CommonModule, CoreModule } from '@c8y/ngx-components';
9
8
  import * as i3 from '@angular/common';
10
9
 
11
10
  class LWM2MPostOperationsParametersService extends Lwm2mClientService {
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","sources":["../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.service.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.html","../../protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { FetchClient, IFetchResponse } from '@c8y/client';\nimport { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/services';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LWM2MPostOperationsParametersService extends Lwm2mClientService<LWM2MPostOperationsParameters> {\n private readonly detailUrl: string = '/postRegistrationOptions';\n\n constructor(client: FetchClient) {\n super(client);\n }\n\n get(): Promise<IFetchResponse> {\n return super.fetch(this.detailUrl);\n }\n\n put(data: LWM2MPostOperationsParameters) {\n const headers = { 'content-type': 'application/json', accept: 'application/json' };\n return super.fetch(this.detailUrl, {\n method: 'PUT',\n body: JSON.stringify(data),\n headers: headers\n });\n }\n}\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { NgForm } from '@angular/forms';\nimport { gettext } from '@c8y/client/src/gettext';\nimport { LWM2MPostOperationsParametersService } from './lwm2m-post-operations.service';\nimport { AlertService, CoreModule, CommonModule } from '@c8y/ngx-components';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Component({\n selector: 'lwm2m-post-operations',\n templateUrl: './lwm2m-post-operations.component.html',\n standalone: true,\n imports: [CommonModule, CoreModule]\n})\nexport class LWM2MPostOperationsComponent implements OnInit {\n @ViewChild('commandsForm') commandsForm: NgForm;\n\n exampleCommands = [\n {\n command: 'discover',\n resource: '<objectId>',\n description: gettext('Discover all resources of Object 3300, the generic sensor.')\n },\n {\n command: 'read',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Read maximum sensor value')\n },\n {\n command: 'write',\n resource: '<objectId>/<objectInstanceId>/<resourceId> <applicationType>',\n description: gettext('Write application type \"CO2\" to device')\n },\n {\n command: 'execute',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Reset min and max values')\n },\n {\n command: 'observe',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Observe sensor value. Causes device to send every new sensor value')\n },\n {\n command: 'writeattr',\n resource: '<objectId>/<objectInstanceId>/<resourceId> greater=<value>',\n description: gettext('Only send observations if sensor value is higher than 100')\n }\n ];\n\n operations: LWM2MPostOperationsParameters = {\n commands: '',\n type: '',\n id: ''\n };\n\n constructor(\n private lwm2mPostOperationsSvc: LWM2MPostOperationsParametersService,\n private alertService: AlertService\n ) {}\n\n async ngOnInit() {\n this.operations = (await this.getPostOperationsParameters()) as LWM2MPostOperationsParameters;\n }\n\n async save(operations: LWM2MPostOperationsParameters) {\n try {\n await this.lwm2mPostOperationsSvc.put(operations);\n this.alertService.success(gettext('Post-operations saved'));\n this.commandsForm.form.markAsPristine();\n } catch (error) {\n this.alertService.addServerFailure(error);\n }\n }\n\n async getPostOperationsParameters() {\n try {\n const res = await this.lwm2mPostOperationsSvc.get();\n return (await res.json()) as LWM2MPostOperationsParameters;\n } catch (error) {\n this.alertService.addServerFailure(error);\n return {};\n }\n }\n}\n","<c8y-title>{{ 'LWM2M post-operations' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [label]=\"'Device types' | translate\"\n [icon]=\"'c8y-device-protocols'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item [label]=\"'LWM2M post-operations' | translate\"></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<div class=\"card content-fullpage card--grid grid__col--7-5--md grid__row--auto-min-content\">\n <div class=\"inner-scroll bg-component\">\n <div class=\"card-header large-padding separator sticky-top\">\n <div class=\"h4 m-r-16\" id=\"commands\">\n {{ 'Commands' | translate }}\n </div>\n </div>\n <div class=\"card-block large-padding\">\n <form\n #commandsForm=\"ngForm\"\n id=\"commandsForm\"\n class=\"d-flex d-col flex-grow fit-h\"\n (ngSubmit)=\"save(operations)\"\n >\n <div class=\"form-group\">\n <textarea\n [(ngModel)]=\"operations.commands\"\n class=\"form-control\"\n aria-labelledby=\"commands\"\n name=\"commands\"\n rows=\"20\"\n ></textarea>\n </div>\n </form>\n </div>\n </div>\n\n <div class=\"inner-scroll bg-level-1\" tabindex=\"0\">\n <div class=\"card-block large-padding\">\n <p class=\"m-b-16\">\n <i class=\"text-info m-r-4 text-14\" c8yIcon=\"info-circle\"></i>\n {{\n 'You can enter a set of LWM2M shell commands. Each command will be sent to every newly registered LWM2M device. Each command must be entered in a new line. Use the following syntax for specifying post-registration actions:'\n | translate\n }}\n </p>\n <pre class=\"bg-level-0 text-pre-normal m-b-0\">\n <ul class=\"list-unstyled m-b-0\">\n <li class=\"m-16\" *ngFor=\"let c of exampleCommands\">\n <p class=\"text-muted\"># {{c.description | translate}}</p>\n <span class=\"text-danger\">{{c.command}}</span>\n <span class=\"text-muted\">{{c.resource}}</span>\n </li>\n </ul>\n </pre>\n </div>\n </div>\n\n <div class=\"card-footer large-padding separator grid__col--fullspan\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n form=\"commandsForm\"\n [disabled]=\"commandsForm.valid && !commandsForm.dirty\"\n [attr.aria-label]=\"'Save' | translate\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.LWM2MPostOperationsParametersService"],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","sources":["../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.service.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.ts","../../protocol-lwm2m/components/post-registration-operations/lwm2m-post-operations.component.html","../../protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { FetchClient, IFetchResponse } from '@c8y/client';\nimport { Lwm2mClientService } from '@c8y/ngx-components/protocol-lwm2m/services';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LWM2MPostOperationsParametersService extends Lwm2mClientService<LWM2MPostOperationsParameters> {\n private readonly detailUrl: string = '/postRegistrationOptions';\n\n constructor(client: FetchClient) {\n super(client);\n }\n\n get(): Promise<IFetchResponse> {\n return super.fetch(this.detailUrl);\n }\n\n put(data: LWM2MPostOperationsParameters) {\n const headers = { 'content-type': 'application/json', accept: 'application/json' };\n return super.fetch(this.detailUrl, {\n method: 'PUT',\n body: JSON.stringify(data),\n headers: headers\n });\n }\n}\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { NgForm } from '@angular/forms';\nimport { gettext } from '@c8y/ngx-components';\nimport { LWM2MPostOperationsParametersService } from './lwm2m-post-operations.service';\nimport { AlertService, CoreModule, CommonModule } from '@c8y/ngx-components';\nimport { LWM2MPostOperationsParameters } from '@c8y/ngx-components/protocol-lwm2m/model';\n\n@Component({\n selector: 'lwm2m-post-operations',\n templateUrl: './lwm2m-post-operations.component.html',\n standalone: true,\n imports: [CommonModule, CoreModule]\n})\nexport class LWM2MPostOperationsComponent implements OnInit {\n @ViewChild('commandsForm') commandsForm: NgForm;\n\n exampleCommands = [\n {\n command: 'discover',\n resource: '<objectId>',\n description: gettext('Discover all resources of Object 3300, the generic sensor.')\n },\n {\n command: 'read',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Read maximum sensor value')\n },\n {\n command: 'write',\n resource: '<objectId>/<objectInstanceId>/<resourceId> <applicationType>',\n description: gettext('Write application type \"CO2\" to device')\n },\n {\n command: 'execute',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Reset min and max values')\n },\n {\n command: 'observe',\n resource: '<objectId>/<objectInstanceId>/<resourceId>',\n description: gettext('Observe sensor value. Causes device to send every new sensor value')\n },\n {\n command: 'writeattr',\n resource: '<objectId>/<objectInstanceId>/<resourceId> greater=<value>',\n description: gettext('Only send observations if sensor value is higher than 100')\n }\n ];\n\n operations: LWM2MPostOperationsParameters = {\n commands: '',\n type: '',\n id: ''\n };\n\n constructor(\n private lwm2mPostOperationsSvc: LWM2MPostOperationsParametersService,\n private alertService: AlertService\n ) {}\n\n async ngOnInit() {\n this.operations = (await this.getPostOperationsParameters()) as LWM2MPostOperationsParameters;\n }\n\n async save(operations: LWM2MPostOperationsParameters) {\n try {\n await this.lwm2mPostOperationsSvc.put(operations);\n this.alertService.success(gettext('Post-operations saved'));\n this.commandsForm.form.markAsPristine();\n } catch (error) {\n this.alertService.addServerFailure(error);\n }\n }\n\n async getPostOperationsParameters() {\n try {\n const res = await this.lwm2mPostOperationsSvc.get();\n return (await res.json()) as LWM2MPostOperationsParameters;\n } catch (error) {\n this.alertService.addServerFailure(error);\n return {};\n }\n }\n}\n","<c8y-title>{{ 'LWM2M post-operations' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [label]=\"'Device types' | translate\"\n [icon]=\"'c8y-device-protocols'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item [label]=\"'LWM2M post-operations' | translate\"></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<div class=\"card content-fullpage card--grid grid__col--7-5--md grid__row--auto-min-content\">\n <div class=\"inner-scroll bg-component\">\n <div class=\"card-header large-padding separator sticky-top\">\n <div class=\"h4 m-r-16\" id=\"commands\">\n {{ 'Commands' | translate }}\n </div>\n </div>\n <div class=\"card-block large-padding\">\n <form\n #commandsForm=\"ngForm\"\n id=\"commandsForm\"\n class=\"d-flex d-col flex-grow fit-h\"\n (ngSubmit)=\"save(operations)\"\n >\n <div class=\"form-group\">\n <textarea\n [(ngModel)]=\"operations.commands\"\n class=\"form-control\"\n aria-labelledby=\"commands\"\n name=\"commands\"\n rows=\"20\"\n ></textarea>\n </div>\n </form>\n </div>\n </div>\n\n <div class=\"inner-scroll bg-level-1\" tabindex=\"0\">\n <div class=\"card-block large-padding\">\n <p class=\"m-b-16\">\n <i class=\"text-info m-r-4 text-14\" c8yIcon=\"info-circle\"></i>\n {{\n 'You can enter a set of LWM2M shell commands. Each command will be sent to every newly registered LWM2M device. Each command must be entered in a new line. Use the following syntax for specifying post-registration actions:'\n | translate\n }}\n </p>\n <pre class=\"bg-level-0 text-pre-normal m-b-0\">\n <ul class=\"list-unstyled m-b-0\">\n <li class=\"m-16\" *ngFor=\"let c of exampleCommands\">\n <p class=\"text-muted\"># {{c.description | translate}}</p>\n <span class=\"text-danger\">{{c.command}}</span>\n <span class=\"text-muted\">{{c.resource}}</span>\n </li>\n </ul>\n </pre>\n </div>\n </div>\n\n <div class=\"card-footer large-padding separator grid__col--fullspan\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n form=\"commandsForm\"\n [disabled]=\"commandsForm.valid && !commandsForm.dirty\"\n [attr.aria-label]=\"'Save' | translate\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.LWM2MPostOperationsParametersService"],"mappings":"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"}
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@c8y/ngx-components","version":"1018.0.164","license":"Apache-2.0","author":"Cumulocity","description":"Angular modules for Cumulocity IoT applications","keywords":["Cumulocity","IoT","m2m","Angular","Components"],"peerDependencies":{"@angular/cdk":"^14.0.6","@angular/common":"^14.0.6","@angular/core":"^14.0.6","@angular/forms":"^14.0.6","@angular/platform-browser":"^14.0.6","@angular/router":"^14.0.6","@angular/upgrade":"^14.0.6","rxjs":"~6.6.3","leaflet":"^1.7.1"},"dependencies":{"@c8y/client":"1018.0.164","@ngx-translate/core":"14.0.0","@ngx-translate/http-loader":"7.0.0","@ngx-formly/core":"6.1.3","libphonenumber-js":"1.10.17","lodash-es":"^4.0.0","ngx-bootstrap":"9.0.0","three":"0.148.0","tslib":"^2.3.1","angularx-qrcode":"14.0.0","file-saver":"2.0.5","marked":"4.2.12","semver":"~7.5.2"},"module":"fesm2015/c8y-ngx-components.mjs","es2020":"fesm2020/c8y-ngx-components.mjs","esm2020":"esm2020/c8y-ngx-components.mjs","fesm2020":"fesm2020/c8y-ngx-components.mjs","fesm2015":"fesm2015/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","esm2020":"./esm2020/c8y-ngx-components.mjs","es2020":"./fesm2020/c8y-ngx-components.mjs","es2015":"./fesm2015/c8y-ngx-components.mjs","node":"./fesm2015/c8y-ngx-components.mjs","default":"./fesm2020/c8y-ngx-components.mjs"},"./actility-device-registration":{"types":"./actility-device-registration/index.d.ts","esm2020":"./esm2020/actility-device-registration/c8y-ngx-components-actility-device-registration.mjs","es2020":"./fesm2020/c8y-ngx-components-actility-device-registration.mjs","es2015":"./fesm2015/c8y-ngx-components-actility-device-registration.mjs","node":"./fesm2015/c8y-ngx-components-actility-device-registration.mjs","default":"./fesm2020/c8y-ngx-components-actility-device-registration.mjs"},"./api":{"types":"./api/index.d.ts","esm2020":"./esm2020/api/c8y-ngx-components-api.mjs","es2020":"./fesm2020/c8y-ngx-components-api.mjs","es2015":"./fesm2015/c8y-ngx-components-api.mjs","node":"./fesm2015/c8y-ngx-components-api.mjs","default":"./fesm2020/c8y-ngx-components-api.mjs"},"./app-logs":{"types":"./app-logs/index.d.ts","esm2020":"./esm2020/app-logs/c8y-ngx-components-app-logs.mjs","es2020":"./fesm2020/c8y-ngx-components-app-logs.mjs","es2015":"./fesm2015/c8y-ngx-components-app-logs.mjs","node":"./fesm2015/c8y-ngx-components-app-logs.mjs","default":"./fesm2020/c8y-ngx-components-app-logs.mjs"},"./assets-navigator":{"types":"./assets-navigator/index.d.ts","esm2020":"./esm2020/assets-navigator/c8y-ngx-components-assets-navigator.mjs","es2020":"./fesm2020/c8y-ngx-components-assets-navigator.mjs","es2015":"./fesm2015/c8y-ngx-components-assets-navigator.mjs","node":"./fesm2015/c8y-ngx-components-assets-navigator.mjs","default":"./fesm2020/c8y-ngx-components-assets-navigator.mjs"},"./auth-configuration":{"types":"./auth-configuration/index.d.ts","esm2020":"./esm2020/auth-configuration/c8y-ngx-components-auth-configuration.mjs","es2020":"./fesm2020/c8y-ngx-components-auth-configuration.mjs","es2015":"./fesm2015/c8y-ngx-components-auth-configuration.mjs","node":"./fesm2015/c8y-ngx-components-auth-configuration.mjs","default":"./fesm2020/c8y-ngx-components-auth-configuration.mjs"},"./binary-file-download":{"types":"./binary-file-download/index.d.ts","esm2020":"./esm2020/binary-file-download/c8y-ngx-components-binary-file-download.mjs","es2020":"./fesm2020/c8y-ngx-components-binary-file-download.mjs","es2015":"./fesm2015/c8y-ngx-components-binary-file-download.mjs","node":"./fesm2015/c8y-ngx-components-binary-file-download.mjs","default":"./fesm2020/c8y-ngx-components-binary-file-download.mjs"},"./child-devices":{"types":"./child-devices/index.d.ts","esm2020":"./esm2020/child-devices/c8y-ngx-components-child-devices.mjs","es2020":"./fesm2020/c8y-ngx-components-child-devices.mjs","es2015":"./fesm2015/c8y-ngx-components-child-devices.mjs","node":"./fesm2015/c8y-ngx-components-child-devices.mjs","default":"./fesm2020/c8y-ngx-components-child-devices.mjs"},"./cockpit-config":{"types":"./cockpit-config/index.d.ts","esm2020":"./esm2020/cockpit-config/c8y-ngx-components-cockpit-config.mjs","es2020":"./fesm2020/c8y-ngx-components-cockpit-config.mjs","es2015":"./fesm2015/c8y-ngx-components-cockpit-config.mjs","node":"./fesm2015/c8y-ngx-components-cockpit-config.mjs","default":"./fesm2020/c8y-ngx-components-cockpit-config.mjs"},"./connectivity":{"types":"./connectivity/index.d.ts","esm2020":"./esm2020/connectivity/c8y-ngx-components-connectivity.mjs","es2020":"./fesm2020/c8y-ngx-components-connectivity.mjs","es2015":"./fesm2015/c8y-ngx-components-connectivity.mjs","node":"./fesm2015/c8y-ngx-components-connectivity.mjs","default":"./fesm2020/c8y-ngx-components-connectivity.mjs"},"./context-dashboard":{"types":"./context-dashboard/index.d.ts","esm2020":"./esm2020/context-dashboard/c8y-ngx-components-context-dashboard.mjs","es2020":"./fesm2020/c8y-ngx-components-context-dashboard.mjs","es2015":"./fesm2015/c8y-ngx-components-context-dashboard.mjs","node":"./fesm2015/c8y-ngx-components-context-dashboard.mjs","default":"./fesm2020/c8y-ngx-components-context-dashboard.mjs"},"./data-broker":{"types":"./data-broker/index.d.ts","esm2020":"./esm2020/data-broker/c8y-ngx-components-data-broker.mjs","es2020":"./fesm2020/c8y-ngx-components-data-broker.mjs","es2015":"./fesm2015/c8y-ngx-components-data-broker.mjs","node":"./fesm2015/c8y-ngx-components-data-broker.mjs","default":"./fesm2020/c8y-ngx-components-data-broker.mjs"},"./datapoint-library/details":{"types":"./datapoint-library/details/index.d.ts","esm2020":"./esm2020/datapoint-library/details/c8y-ngx-components-datapoint-library-details.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-details.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-details.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-details.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-details.mjs"},"./datapoint-library/list":{"types":"./datapoint-library/list/index.d.ts","esm2020":"./esm2020/datapoint-library/list/c8y-ngx-components-datapoint-library-list.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-list.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-list.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-list.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-list.mjs"},"./datapoint-library/model":{"types":"./datapoint-library/model/index.d.ts","esm2020":"./esm2020/datapoint-library/model/c8y-ngx-components-datapoint-library-model.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-model.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-model.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-model.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-model.mjs"},"./datapoint-library":{"types":"./datapoint-library/index.d.ts","esm2020":"./esm2020/datapoint-library/c8y-ngx-components-datapoint-library.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library.mjs"},"./datapoint-library/services":{"types":"./datapoint-library/services/index.d.ts","esm2020":"./esm2020/datapoint-library/services/c8y-ngx-components-datapoint-library-services.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-services.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-services.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-services.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-services.mjs"},"./datapoint-selector":{"types":"./datapoint-selector/index.d.ts","esm2020":"./esm2020/datapoint-selector/c8y-ngx-components-datapoint-selector.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-selector.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-selector.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-selector.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-selector.mjs"},"./default-subscriptions":{"types":"./default-subscriptions/index.d.ts","esm2020":"./esm2020/default-subscriptions/c8y-ngx-components-default-subscriptions.mjs","es2020":"./fesm2020/c8y-ngx-components-default-subscriptions.mjs","es2015":"./fesm2015/c8y-ngx-components-default-subscriptions.mjs","node":"./fesm2015/c8y-ngx-components-default-subscriptions.mjs","default":"./fesm2020/c8y-ngx-components-default-subscriptions.mjs"},"./device-grid":{"types":"./device-grid/index.d.ts","esm2020":"./esm2020/device-grid/c8y-ngx-components-device-grid.mjs","es2020":"./fesm2020/c8y-ngx-components-device-grid.mjs","es2015":"./fesm2015/c8y-ngx-components-device-grid.mjs","node":"./fesm2015/c8y-ngx-components-device-grid.mjs","default":"./fesm2020/c8y-ngx-components-device-grid.mjs"},"./device-list":{"types":"./device-list/index.d.ts","esm2020":"./esm2020/device-list/c8y-ngx-components-device-list.mjs","es2020":"./fesm2020/c8y-ngx-components-device-list.mjs","es2015":"./fesm2015/c8y-ngx-components-device-list.mjs","node":"./fesm2015/c8y-ngx-components-device-list.mjs","default":"./fesm2020/c8y-ngx-components-device-list.mjs"},"./device-profile":{"types":"./device-profile/index.d.ts","esm2020":"./esm2020/device-profile/c8y-ngx-components-device-profile.mjs","es2020":"./fesm2020/c8y-ngx-components-device-profile.mjs","es2015":"./fesm2015/c8y-ngx-components-device-profile.mjs","node":"./fesm2015/c8y-ngx-components-device-profile.mjs","default":"./fesm2020/c8y-ngx-components-device-profile.mjs"},"./device-protocols":{"types":"./device-protocols/index.d.ts","esm2020":"./esm2020/device-protocols/c8y-ngx-components-device-protocols.mjs","es2020":"./fesm2020/c8y-ngx-components-device-protocols.mjs","es2015":"./fesm2015/c8y-ngx-components-device-protocols.mjs","node":"./fesm2015/c8y-ngx-components-device-protocols.mjs","default":"./fesm2020/c8y-ngx-components-device-protocols.mjs"},"./device-shell":{"types":"./device-shell/index.d.ts","esm2020":"./esm2020/device-shell/c8y-ngx-components-device-shell.mjs","es2020":"./fesm2020/c8y-ngx-components-device-shell.mjs","es2015":"./fesm2015/c8y-ngx-components-device-shell.mjs","node":"./fesm2015/c8y-ngx-components-device-shell.mjs","default":"./fesm2020/c8y-ngx-components-device-shell.mjs"},"./diagnostics":{"types":"./diagnostics/index.d.ts","esm2020":"./esm2020/diagnostics/c8y-ngx-components-diagnostics.mjs","es2020":"./fesm2020/c8y-ngx-components-diagnostics.mjs","es2015":"./fesm2015/c8y-ngx-components-diagnostics.mjs","node":"./fesm2015/c8y-ngx-components-diagnostics.mjs","default":"./fesm2020/c8y-ngx-components-diagnostics.mjs"},"./ecosystem/application-plugins":{"types":"./ecosystem/application-plugins/index.d.ts","esm2020":"./esm2020/ecosystem/application-plugins/c8y-ngx-components-ecosystem-application-plugins.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-application-plugins.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-application-plugins.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-application-plugins.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-application-plugins.mjs"},"./ecosystem/license-confirm":{"types":"./ecosystem/license-confirm/index.d.ts","esm2020":"./esm2020/ecosystem/license-confirm/c8y-ngx-components-ecosystem-license-confirm.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-license-confirm.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-license-confirm.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-license-confirm.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-license-confirm.mjs"},"./ecosystem":{"types":"./ecosystem/index.d.ts","esm2020":"./esm2020/ecosystem/c8y-ngx-components-ecosystem.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem.mjs"},"./ecosystem/plugin-setup-stepper":{"types":"./ecosystem/plugin-setup-stepper/index.d.ts","esm2020":"./esm2020/ecosystem/plugin-setup-stepper/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs"},"./ecosystem/shared":{"types":"./ecosystem/shared/index.d.ts","esm2020":"./esm2020/ecosystem/shared/c8y-ngx-components-ecosystem-shared.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-shared.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-shared.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-shared.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-shared.mjs"},"./file-preview":{"types":"./file-preview/index.d.ts","esm2020":"./esm2020/file-preview/c8y-ngx-components-file-preview.mjs","es2020":"./fesm2020/c8y-ngx-components-file-preview.mjs","es2015":"./fesm2015/c8y-ngx-components-file-preview.mjs","node":"./fesm2015/c8y-ngx-components-file-preview.mjs","default":"./fesm2020/c8y-ngx-components-file-preview.mjs"},"./files-repository":{"types":"./files-repository/index.d.ts","esm2020":"./esm2020/files-repository/c8y-ngx-components-files-repository.mjs","es2020":"./fesm2020/c8y-ngx-components-files-repository.mjs","es2015":"./fesm2015/c8y-ngx-components-files-repository.mjs","node":"./fesm2015/c8y-ngx-components-files-repository.mjs","default":"./fesm2020/c8y-ngx-components-files-repository.mjs"},"./icon-selector/icons/arrows":{"types":"./icon-selector/icons/arrows/index.d.ts","esm2020":"./esm2020/icon-selector/icons/arrows/c8y-ngx-components-icon-selector-icons-arrows.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-arrows.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-arrows.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-arrows.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-arrows.mjs"},"./icon-selector/icons/city":{"types":"./icon-selector/icons/city/index.d.ts","esm2020":"./esm2020/icon-selector/icons/city/c8y-ngx-components-icon-selector-icons-city.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-city.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-city.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-city.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-city.mjs"},"./icon-selector/icons/data":{"types":"./icon-selector/icons/data/index.d.ts","esm2020":"./esm2020/icon-selector/icons/data/c8y-ngx-components-icon-selector-icons-data.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-data.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-data.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-data.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-data.mjs"},"./icon-selector/icons/dateAndTime":{"types":"./icon-selector/icons/dateAndTime/index.d.ts","esm2020":"./esm2020/icon-selector/icons/dateAndTime/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs"},"./icon-selector/icons/devicesAndSensors":{"types":"./icon-selector/icons/devicesAndSensors/index.d.ts","esm2020":"./esm2020/icon-selector/icons/devicesAndSensors/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs"},"./icon-selector/icons/ecommerce":{"types":"./icon-selector/icons/ecommerce/index.d.ts","esm2020":"./esm2020/icon-selector/icons/ecommerce/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-ecommerce.mjs"},"./icon-selector/icons/editing":{"types":"./icon-selector/icons/editing/index.d.ts","esm2020":"./esm2020/icon-selector/icons/editing/c8y-ngx-components-icon-selector-icons-editing.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-editing.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-editing.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-editing.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-editing.mjs"},"./icon-selector/icons/filesAndFolders":{"types":"./icon-selector/icons/filesAndFolders/index.d.ts","esm2020":"./esm2020/icon-selector/icons/filesAndFolders/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs"},"./icon-selector/icons/finance":{"types":"./icon-selector/icons/finance/index.d.ts","esm2020":"./esm2020/icon-selector/icons/finance/c8y-ngx-components-icon-selector-icons-finance.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-finance.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-finance.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-finance.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-finance.mjs"},"./icon-selector/icons/hands":{"types":"./icon-selector/icons/hands/index.d.ts","esm2020":"./esm2020/icon-selector/icons/hands/c8y-ngx-components-icon-selector-icons-hands.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-hands.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-hands.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-hands.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-hands.mjs"},"./icon-selector/icons/location":{"types":"./icon-selector/icons/location/index.d.ts","esm2020":"./esm2020/icon-selector/icons/location/c8y-ngx-components-icon-selector-icons-location.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-location.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-location.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-location.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-location.mjs"},"./icon-selector/icons/messaging":{"types":"./icon-selector/icons/messaging/index.d.ts","esm2020":"./esm2020/icon-selector/icons/messaging/c8y-ngx-components-icon-selector-icons-messaging.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-messaging.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-messaging.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-messaging.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-messaging.mjs"},"./icon-selector/icons/multimedia":{"types":"./icon-selector/icons/multimedia/index.d.ts","esm2020":"./esm2020/icon-selector/icons/multimedia/c8y-ngx-components-icon-selector-icons-multimedia.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-multimedia.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-multimedia.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-multimedia.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-multimedia.mjs"},"./icon-selector/icons/network":{"types":"./icon-selector/icons/network/index.d.ts","esm2020":"./esm2020/icon-selector/icons/network/c8y-ngx-components-icon-selector-icons-network.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-network.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-network.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-network.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-network.mjs"},"./icon-selector/icons":{"types":"./icon-selector/icons/index.d.ts","esm2020":"./esm2020/icon-selector/icons/c8y-ngx-components-icon-selector-icons.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons.mjs"},"./icon-selector/icons/office":{"types":"./icon-selector/icons/office/index.d.ts","esm2020":"./esm2020/icon-selector/icons/office/c8y-ngx-components-icon-selector-icons-office.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-office.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-office.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-office.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-office.mjs"},"./icon-selector/icons/people":{"types":"./icon-selector/icons/people/index.d.ts","esm2020":"./esm2020/icon-selector/icons/people/c8y-ngx-components-icon-selector-icons-people.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-people.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-people.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-people.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-people.mjs"},"./icon-selector/icons/platform":{"types":"./icon-selector/icons/platform/index.d.ts","esm2020":"./esm2020/icon-selector/icons/platform/c8y-ngx-components-icon-selector-icons-platform.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-platform.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-platform.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-platform.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-platform.mjs"},"./icon-selector/icons/programming":{"types":"./icon-selector/icons/programming/index.d.ts","esm2020":"./esm2020/icon-selector/icons/programming/c8y-ngx-components-icon-selector-icons-programming.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-programming.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-programming.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-programming.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-programming.mjs"},"./icon-selector/icons/security":{"types":"./icon-selector/icons/security/index.d.ts","esm2020":"./esm2020/icon-selector/icons/security/c8y-ngx-components-icon-selector-icons-security.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-security.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-security.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-security.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-security.mjs"},"./icon-selector/icons/transport":{"types":"./icon-selector/icons/transport/index.d.ts","esm2020":"./esm2020/icon-selector/icons/transport/c8y-ngx-components-icon-selector-icons-transport.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-transport.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-transport.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-transport.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-transport.mjs"},"./icon-selector/icons/userInterface":{"types":"./icon-selector/icons/userInterface/index.d.ts","esm2020":"./esm2020/icon-selector/icons/userInterface/c8y-ngx-components-icon-selector-icons-userInterface.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-userInterface.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-userInterface.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-userInterface.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-userInterface.mjs"},"./icon-selector/icons/weather":{"types":"./icon-selector/icons/weather/index.d.ts","esm2020":"./esm2020/icon-selector/icons/weather/c8y-ngx-components-icon-selector-icons-weather.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-weather.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-weather.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-weather.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-weather.mjs"},"./icon-selector/model":{"types":"./icon-selector/model/index.d.ts","esm2020":"./esm2020/icon-selector/model/c8y-ngx-components-icon-selector-model.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-model.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-model.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-model.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-model.mjs"},"./icon-selector":{"types":"./icon-selector/index.d.ts","esm2020":"./esm2020/icon-selector/c8y-ngx-components-icon-selector.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector.mjs"},"./lazy/three-orbit-controls":{"types":"./lazy/three-orbit-controls/index.d.ts","esm2020":"./esm2020/lazy/three-orbit-controls/c8y-ngx-components-lazy-three-orbit-controls.mjs","es2020":"./fesm2020/c8y-ngx-components-lazy-three-orbit-controls.mjs","es2015":"./fesm2015/c8y-ngx-components-lazy-three-orbit-controls.mjs","node":"./fesm2015/c8y-ngx-components-lazy-three-orbit-controls.mjs","default":"./fesm2020/c8y-ngx-components-lazy-three-orbit-controls.mjs"},"./lazy/three":{"types":"./lazy/three/index.d.ts","esm2020":"./esm2020/lazy/three/c8y-ngx-components-lazy-three.mjs","es2020":"./fesm2020/c8y-ngx-components-lazy-three.mjs","es2015":"./fesm2015/c8y-ngx-components-lazy-three.mjs","node":"./fesm2015/c8y-ngx-components-lazy-three.mjs","default":"./fesm2020/c8y-ngx-components-lazy-three.mjs"},"./loriot-device-registration":{"types":"./loriot-device-registration/index.d.ts","esm2020":"./esm2020/loriot-device-registration/c8y-ngx-components-loriot-device-registration.mjs","es2020":"./fesm2020/c8y-ngx-components-loriot-device-registration.mjs","es2015":"./fesm2015/c8y-ngx-components-loriot-device-registration.mjs","node":"./fesm2015/c8y-ngx-components-loriot-device-registration.mjs","default":"./fesm2020/c8y-ngx-components-loriot-device-registration.mjs"},"./map":{"types":"./map/index.d.ts","esm2020":"./esm2020/map/c8y-ngx-components-map.mjs","es2020":"./fesm2020/c8y-ngx-components-map.mjs","es2015":"./fesm2015/c8y-ngx-components-map.mjs","node":"./fesm2015/c8y-ngx-components-map.mjs","default":"./fesm2020/c8y-ngx-components-map.mjs"},"./operations/bulk-operation-from-single":{"types":"./operations/bulk-operation-from-single/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-from-single/c8y-ngx-components-operations-bulk-operation-from-single.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-from-single.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-from-single.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-from-single.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-from-single.mjs"},"./operations/bulk-operation-list-item":{"types":"./operations/bulk-operation-list-item/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-list-item/c8y-ngx-components-operations-bulk-operation-list-item.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-list-item.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-list-item.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-list-item.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-list-item.mjs"},"./operations/bulk-operation-modal-details":{"types":"./operations/bulk-operation-modal-details/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-modal-details/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-modal-details.mjs"},"./operations/bulk-operation-scheduler":{"types":"./operations/bulk-operation-scheduler/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-scheduler/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-scheduler.mjs"},"./operations/bulk-operation-stepper":{"types":"./operations/bulk-operation-stepper/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-stepper/c8y-ngx-components-operations-bulk-operation-stepper.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-stepper.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-stepper.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-stepper.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-stepper.mjs"},"./operations/bulk-operations-list":{"types":"./operations/bulk-operations-list/index.d.ts","esm2020":"./esm2020/operations/bulk-operations-list/c8y-ngx-components-operations-bulk-operations-list.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operations-list.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operations-list.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operations-list.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operations-list.mjs"},"./operations/bulk-operations-service":{"types":"./operations/bulk-operations-service/index.d.ts","esm2020":"./esm2020/operations/bulk-operations-service/c8y-ngx-components-operations-bulk-operations-service.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operations-service.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operations-service.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operations-service.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operations-service.mjs"},"./operations/bulk-operations-stepper-container":{"types":"./operations/bulk-operations-stepper-container/index.d.ts","esm2020":"./esm2020/operations/bulk-operations-stepper-container/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs"},"./operations/bulk-single-operations-list":{"types":"./operations/bulk-single-operations-list/index.d.ts","esm2020":"./esm2020/operations/bulk-single-operations-list/c8y-ngx-components-operations-bulk-single-operations-list.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-single-operations-list.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-single-operations-list.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-single-operations-list.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-single-operations-list.mjs"},"./operations/create-bulk-operation-details":{"types":"./operations/create-bulk-operation-details/index.d.ts","esm2020":"./esm2020/operations/create-bulk-operation-details/c8y-ngx-components-operations-create-bulk-operation-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-create-bulk-operation-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-create-bulk-operation-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-create-bulk-operation-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-create-bulk-operation-details.mjs"},"./operations/device-selector":{"types":"./operations/device-selector/index.d.ts","esm2020":"./esm2020/operations/device-selector/c8y-ngx-components-operations-device-selector.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-device-selector.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-device-selector.mjs","node":"./fesm2015/c8y-ngx-components-operations-device-selector.mjs","default":"./fesm2020/c8y-ngx-components-operations-device-selector.mjs"},"./operations":{"types":"./operations/index.d.ts","esm2020":"./esm2020/operations/c8y-ngx-components-operations.mjs","es2020":"./fesm2020/c8y-ngx-components-operations.mjs","es2015":"./fesm2015/c8y-ngx-components-operations.mjs","node":"./fesm2015/c8y-ngx-components-operations.mjs","default":"./fesm2020/c8y-ngx-components-operations.mjs"},"./operations/operation-details":{"types":"./operations/operation-details/index.d.ts","esm2020":"./esm2020/operations/operation-details/c8y-ngx-components-operations-operation-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operation-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operation-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-operation-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-operation-details.mjs"},"./operations/operation-summary":{"types":"./operations/operation-summary/index.d.ts","esm2020":"./esm2020/operations/operation-summary/c8y-ngx-components-operations-operation-summary.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operation-summary.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operation-summary.mjs","node":"./fesm2015/c8y-ngx-components-operations-operation-summary.mjs","default":"./fesm2020/c8y-ngx-components-operations-operation-summary.mjs"},"./operations/operations-list-item-details":{"types":"./operations/operations-list-item-details/index.d.ts","esm2020":"./esm2020/operations/operations-list-item-details/c8y-ngx-components-operations-operations-list-item-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operations-list-item-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operations-list-item-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-operations-list-item-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-operations-list-item-details.mjs"},"./operations/operations-list":{"types":"./operations/operations-list/index.d.ts","esm2020":"./esm2020/operations/operations-list/c8y-ngx-components-operations-operations-list.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operations-list.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operations-list.mjs","node":"./fesm2015/c8y-ngx-components-operations-operations-list.mjs","default":"./fesm2020/c8y-ngx-components-operations-operations-list.mjs"},"./operations/operations-timeline":{"types":"./operations/operations-timeline/index.d.ts","esm2020":"./esm2020/operations/operations-timeline/c8y-ngx-components-operations-operations-timeline.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operations-timeline.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operations-timeline.mjs","node":"./fesm2015/c8y-ngx-components-operations-operations-timeline.mjs","default":"./fesm2020/c8y-ngx-components-operations-operations-timeline.mjs"},"./operations/product-experience":{"types":"./operations/product-experience/index.d.ts","esm2020":"./esm2020/operations/product-experience/c8y-ngx-components-operations-product-experience.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-product-experience.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-product-experience.mjs","node":"./fesm2015/c8y-ngx-components-operations-product-experience.mjs","default":"./fesm2020/c8y-ngx-components-operations-product-experience.mjs"},"./operations/shared":{"types":"./operations/shared/index.d.ts","esm2020":"./esm2020/operations/shared/c8y-ngx-components-operations-shared.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-shared.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-shared.mjs","node":"./fesm2015/c8y-ngx-components-operations-shared.mjs","default":"./fesm2020/c8y-ngx-components-operations-shared.mjs"},"./operations/status-filter":{"types":"./operations/status-filter/index.d.ts","esm2020":"./esm2020/operations/status-filter/c8y-ngx-components-operations-status-filter.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-status-filter.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-status-filter.mjs","node":"./fesm2015/c8y-ngx-components-operations-status-filter.mjs","default":"./fesm2020/c8y-ngx-components-operations-status-filter.mjs"},"./operations/stepper-bulk-type-configuration":{"types":"./operations/stepper-bulk-type-configuration/index.d.ts","esm2020":"./esm2020/operations/stepper-bulk-type-configuration/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","default":"./fesm2020/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","esm2020":"./esm2020/operations/stepper-bulk-type-device-profile/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs"},"./operations/stepper-bulk-type-firmware":{"types":"./operations/stepper-bulk-type-firmware/index.d.ts","esm2020":"./esm2020/operations/stepper-bulk-type-firmware/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs"},"./operations/stepper-bulk-type-software":{"types":"./operations/stepper-bulk-type-software/index.d.ts","esm2020":"./esm2020/operations/stepper-bulk-type-software/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-software.mjs"},"./operations/stepper-frames":{"types":"./operations/stepper-frames/index.d.ts","esm2020":"./esm2020/operations/stepper-frames/c8y-ngx-components-operations-stepper-frames.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-frames.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-frames.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-frames.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-frames.mjs"},"./polyfills":{"types":"./polyfills/index.d.ts","esm2020":"./esm2020/polyfills/c8y-ngx-components-polyfills.mjs","es2020":"./fesm2020/c8y-ngx-components-polyfills.mjs","es2015":"./fesm2015/c8y-ngx-components-polyfills.mjs","node":"./fesm2015/c8y-ngx-components-polyfills.mjs","default":"./fesm2020/c8y-ngx-components-polyfills.mjs"},"./protocol-impact":{"types":"./protocol-impact/index.d.ts","esm2020":"./esm2020/protocol-impact/c8y-ngx-components-protocol-impact.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-impact.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-impact.mjs","node":"./fesm2015/c8y-ngx-components-protocol-impact.mjs","default":"./fesm2020/c8y-ngx-components-protocol-impact.mjs"},"./protocol-lpwan":{"types":"./protocol-lpwan/index.d.ts","esm2020":"./esm2020/protocol-lpwan/c8y-ngx-components-protocol-lpwan.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lpwan.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lpwan.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lpwan.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lpwan.mjs"},"./protocol-lwm2m/components/bootstrap-parameters":{"types":"./protocol-lwm2m/components/bootstrap-parameters/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/components/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs"},"./protocol-lwm2m/components/post-registration-operations":{"types":"./protocol-lwm2m/components/post-registration-operations/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs"},"./protocol-lwm2m/factories":{"types":"./protocol-lwm2m/factories/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/factories/c8y-ngx-components-protocol-lwm2m-factories.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-factories.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-factories.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-factories.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-factories.mjs"},"./protocol-lwm2m/guards":{"types":"./protocol-lwm2m/guards/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/guards/c8y-ngx-components-protocol-lwm2m-guards.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-guards.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-guards.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-guards.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-guards.mjs"},"./protocol-lwm2m/model":{"types":"./protocol-lwm2m/model/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/model/c8y-ngx-components-protocol-lwm2m-model.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-model.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-model.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-model.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-model.mjs"},"./protocol-lwm2m":{"types":"./protocol-lwm2m/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/c8y-ngx-components-protocol-lwm2m.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m.mjs"},"./protocol-lwm2m/services":{"types":"./protocol-lwm2m/services/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/services/c8y-ngx-components-protocol-lwm2m-services.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-services.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-services.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-services.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-services.mjs"},"./protocol-opcua":{"types":"./protocol-opcua/index.d.ts","esm2020":"./esm2020/protocol-opcua/c8y-ngx-components-protocol-opcua.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-opcua.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-opcua.mjs","node":"./fesm2015/c8y-ngx-components-protocol-opcua.mjs","default":"./fesm2020/c8y-ngx-components-protocol-opcua.mjs"},"./register-device":{"types":"./register-device/index.d.ts","esm2020":"./esm2020/register-device/c8y-ngx-components-register-device.mjs","es2020":"./fesm2020/c8y-ngx-components-register-device.mjs","es2015":"./fesm2015/c8y-ngx-components-register-device.mjs","node":"./fesm2015/c8y-ngx-components-register-device.mjs","default":"./fesm2020/c8y-ngx-components-register-device.mjs"},"./reports":{"types":"./reports/index.d.ts","esm2020":"./esm2020/reports/c8y-ngx-components-reports.mjs","es2020":"./fesm2020/c8y-ngx-components-reports.mjs","es2015":"./fesm2015/c8y-ngx-components-reports.mjs","node":"./fesm2015/c8y-ngx-components-reports.mjs","default":"./fesm2020/c8y-ngx-components-reports.mjs"},"./repository/configuration":{"types":"./repository/configuration/index.d.ts","esm2020":"./esm2020/repository/configuration/c8y-ngx-components-repository-configuration.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-configuration.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-configuration.mjs","node":"./fesm2015/c8y-ngx-components-repository-configuration.mjs","default":"./fesm2020/c8y-ngx-components-repository-configuration.mjs"},"./repository/firmware":{"types":"./repository/firmware/index.d.ts","esm2020":"./esm2020/repository/firmware/c8y-ngx-components-repository-firmware.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-firmware.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-firmware.mjs","node":"./fesm2015/c8y-ngx-components-repository-firmware.mjs","default":"./fesm2020/c8y-ngx-components-repository-firmware.mjs"},"./repository":{"types":"./repository/index.d.ts","esm2020":"./esm2020/repository/c8y-ngx-components-repository.mjs","es2020":"./fesm2020/c8y-ngx-components-repository.mjs","es2015":"./fesm2015/c8y-ngx-components-repository.mjs","node":"./fesm2015/c8y-ngx-components-repository.mjs","default":"./fesm2020/c8y-ngx-components-repository.mjs"},"./repository/shared":{"types":"./repository/shared/index.d.ts","esm2020":"./esm2020/repository/shared/c8y-ngx-components-repository-shared.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-shared.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-shared.mjs","node":"./fesm2015/c8y-ngx-components-repository-shared.mjs","default":"./fesm2020/c8y-ngx-components-repository-shared.mjs"},"./repository/software":{"types":"./repository/software/index.d.ts","esm2020":"./esm2020/repository/software/c8y-ngx-components-repository-software.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-software.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-software.mjs","node":"./fesm2015/c8y-ngx-components-repository-software.mjs","default":"./fesm2020/c8y-ngx-components-repository-software.mjs"},"./search":{"types":"./search/index.d.ts","esm2020":"./esm2020/search/c8y-ngx-components-search.mjs","es2020":"./fesm2020/c8y-ngx-components-search.mjs","es2015":"./fesm2015/c8y-ngx-components-search.mjs","node":"./fesm2015/c8y-ngx-components-search.mjs","default":"./fesm2020/c8y-ngx-components-search.mjs"},"./sensor-phone":{"types":"./sensor-phone/index.d.ts","esm2020":"./esm2020/sensor-phone/c8y-ngx-components-sensor-phone.mjs","es2020":"./fesm2020/c8y-ngx-components-sensor-phone.mjs","es2015":"./fesm2015/c8y-ngx-components-sensor-phone.mjs","node":"./fesm2015/c8y-ngx-components-sensor-phone.mjs","default":"./fesm2020/c8y-ngx-components-sensor-phone.mjs"},"./sensor-phone/sensor-phone-modal":{"types":"./sensor-phone/sensor-phone-modal/index.d.ts","esm2020":"./esm2020/sensor-phone/sensor-phone-modal/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","es2020":"./fesm2020/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","es2015":"./fesm2015/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","node":"./fesm2015/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","default":"./fesm2020/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs"},"./services":{"types":"./services/index.d.ts","esm2020":"./esm2020/services/c8y-ngx-components-services.mjs","es2020":"./fesm2020/c8y-ngx-components-services.mjs","es2015":"./fesm2015/c8y-ngx-components-services.mjs","node":"./fesm2015/c8y-ngx-components-services.mjs","default":"./fesm2020/c8y-ngx-components-services.mjs"},"./sigfox-device-registration":{"types":"./sigfox-device-registration/index.d.ts","esm2020":"./esm2020/sigfox-device-registration/c8y-ngx-components-sigfox-device-registration.mjs","es2020":"./fesm2020/c8y-ngx-components-sigfox-device-registration.mjs","es2015":"./fesm2015/c8y-ngx-components-sigfox-device-registration.mjs","node":"./fesm2015/c8y-ngx-components-sigfox-device-registration.mjs","default":"./fesm2020/c8y-ngx-components-sigfox-device-registration.mjs"},"./sms-gateway":{"types":"./sms-gateway/index.d.ts","esm2020":"./esm2020/sms-gateway/c8y-ngx-components-sms-gateway.mjs","es2020":"./fesm2020/c8y-ngx-components-sms-gateway.mjs","es2015":"./fesm2015/c8y-ngx-components-sms-gateway.mjs","node":"./fesm2015/c8y-ngx-components-sms-gateway.mjs","default":"./fesm2020/c8y-ngx-components-sms-gateway.mjs"},"./sub-assets":{"types":"./sub-assets/index.d.ts","esm2020":"./esm2020/sub-assets/c8y-ngx-components-sub-assets.mjs","es2020":"./fesm2020/c8y-ngx-components-sub-assets.mjs","es2015":"./fesm2015/c8y-ngx-components-sub-assets.mjs","node":"./fesm2015/c8y-ngx-components-sub-assets.mjs","default":"./fesm2020/c8y-ngx-components-sub-assets.mjs"},"./tenants":{"types":"./tenants/index.d.ts","esm2020":"./esm2020/tenants/c8y-ngx-components-tenants.mjs","es2020":"./fesm2020/c8y-ngx-components-tenants.mjs","es2015":"./fesm2015/c8y-ngx-components-tenants.mjs","node":"./fesm2015/c8y-ngx-components-tenants.mjs","default":"./fesm2020/c8y-ngx-components-tenants.mjs"},"./trusted-certificates":{"types":"./trusted-certificates/index.d.ts","esm2020":"./esm2020/trusted-certificates/c8y-ngx-components-trusted-certificates.mjs","es2020":"./fesm2020/c8y-ngx-components-trusted-certificates.mjs","es2015":"./fesm2015/c8y-ngx-components-trusted-certificates.mjs","node":"./fesm2015/c8y-ngx-components-trusted-certificates.mjs","default":"./fesm2020/c8y-ngx-components-trusted-certificates.mjs"},"./upgrade":{"types":"./upgrade/index.d.ts","esm2020":"./esm2020/upgrade/c8y-ngx-components-upgrade.mjs","es2020":"./fesm2020/c8y-ngx-components-upgrade.mjs","es2015":"./fesm2015/c8y-ngx-components-upgrade.mjs","node":"./fesm2015/c8y-ngx-components-upgrade.mjs","default":"./fesm2020/c8y-ngx-components-upgrade.mjs"},"./widgets/cockpit":{"types":"./widgets/cockpit/index.d.ts","esm2020":"./esm2020/widgets/cockpit/c8y-ngx-components-widgets-cockpit.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-cockpit.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-cockpit.mjs","node":"./fesm2015/c8y-ngx-components-widgets-cockpit.mjs","default":"./fesm2020/c8y-ngx-components-widgets-cockpit.mjs"},"./widgets/definitions/cockpit-legacy-welcome":{"types":"./widgets/definitions/cockpit-legacy-welcome/index.d.ts","esm2020":"./esm2020/widgets/definitions/cockpit-legacy-welcome/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs"},"./widgets/definitions/cockpit-welcome":{"types":"./widgets/definitions/cockpit-welcome/index.d.ts","esm2020":"./esm2020/widgets/definitions/cockpit-welcome/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs"},"./widgets/definitions/device-management-welcome":{"types":"./widgets/definitions/device-management-welcome/index.d.ts","esm2020":"./esm2020/widgets/definitions/device-management-welcome/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs"},"./widgets/definitions/help-and-service":{"types":"./widgets/definitions/help-and-service/index.d.ts","esm2020":"./esm2020/widgets/definitions/help-and-service/c8y-ngx-components-widgets-definitions-help-and-service.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-help-and-service.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-help-and-service.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-help-and-service.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-help-and-service.mjs"},"./widgets/definitions/image":{"types":"./widgets/definitions/image/index.d.ts","esm2020":"./esm2020/widgets/definitions/image/c8y-ngx-components-widgets-definitions-image.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-image.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-image.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-image.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-image.mjs"},"./widgets/definitions/kpi":{"types":"./widgets/definitions/kpi/index.d.ts","esm2020":"./esm2020/widgets/definitions/kpi/c8y-ngx-components-widgets-definitions-kpi.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-kpi.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-kpi.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-kpi.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-kpi.mjs"},"./widgets/definitions/map":{"types":"./widgets/definitions/map/index.d.ts","esm2020":"./esm2020/widgets/definitions/map/c8y-ngx-components-widgets-definitions-map.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-map.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-map.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-map.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-map.mjs"},"./widgets/definitions/markdown":{"types":"./widgets/definitions/markdown/index.d.ts","esm2020":"./esm2020/widgets/definitions/markdown/c8y-ngx-components-widgets-definitions-markdown.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-markdown.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-markdown.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-markdown.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-markdown.mjs"},"./widgets/definitions":{"types":"./widgets/definitions/index.d.ts","esm2020":"./esm2020/widgets/definitions/c8y-ngx-components-widgets-definitions.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions.mjs"},"./widgets/definitions/three-d-rotation":{"types":"./widgets/definitions/three-d-rotation/index.d.ts","esm2020":"./esm2020/widgets/definitions/three-d-rotation/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs"},"./widgets/device-management":{"types":"./widgets/device-management/index.d.ts","esm2020":"./esm2020/widgets/device-management/c8y-ngx-components-widgets-device-management.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-device-management.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-device-management.mjs","node":"./fesm2015/c8y-ngx-components-widgets-device-management.mjs","default":"./fesm2020/c8y-ngx-components-widgets-device-management.mjs"},"./widgets/implementations/cockpit-legacy-welcome":{"types":"./widgets/implementations/cockpit-legacy-welcome/index.d.ts","esm2020":"./esm2020/widgets/implementations/cockpit-legacy-welcome/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs"},"./widgets/implementations/cockpit-welcome":{"types":"./widgets/implementations/cockpit-welcome/index.d.ts","esm2020":"./esm2020/widgets/implementations/cockpit-welcome/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs"},"./widgets/implementations/device-management-welcome":{"types":"./widgets/implementations/device-management-welcome/index.d.ts","esm2020":"./esm2020/widgets/implementations/device-management-welcome/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","default":"./fesm2020/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","esm2020":"./esm2020/widgets/implementations/help-and-service-widget/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs"},"./widgets/implementations/image":{"types":"./widgets/implementations/image/index.d.ts","esm2020":"./esm2020/widgets/implementations/image/c8y-ngx-components-widgets-implementations-image.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-image.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-image.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-image.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-image.mjs"},"./widgets/implementations/kpi":{"types":"./widgets/implementations/kpi/index.d.ts","esm2020":"./esm2020/widgets/implementations/kpi/c8y-ngx-components-widgets-implementations-kpi.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-kpi.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-kpi.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-kpi.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-kpi.mjs"},"./widgets/implementations/map":{"types":"./widgets/implementations/map/index.d.ts","esm2020":"./esm2020/widgets/implementations/map/c8y-ngx-components-widgets-implementations-map.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-map.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-map.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-map.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-map.mjs"},"./widgets/implementations/markdown":{"types":"./widgets/implementations/markdown/index.d.ts","esm2020":"./esm2020/widgets/implementations/markdown/c8y-ngx-components-widgets-implementations-markdown.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-markdown.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-markdown.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-markdown.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-markdown.mjs"},"./widgets/implementations/three-d-rotation/box-model":{"types":"./widgets/implementations/three-d-rotation/box-model/index.d.ts","esm2020":"./esm2020/widgets/implementations/three-d-rotation/box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","default":"./fesm2020/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","esm2020":"./esm2020/widgets/implementations/three-d-rotation/lazy-box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","default":"./fesm2020/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","esm2020":"./esm2020/widgets/implementations/three-d-rotation/lazy-phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs"},"./widgets/implementations/three-d-rotation":{"types":"./widgets/implementations/three-d-rotation/index.d.ts","esm2020":"./esm2020/widgets/implementations/three-d-rotation/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs"},"./widgets/implementations/three-d-rotation/phone-model":{"types":"./widgets/implementations/three-d-rotation/phone-model/index.d.ts","esm2020":"./esm2020/widgets/implementations/three-d-rotation/phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs"},"./widgets":{"types":"./widgets/index.d.ts","esm2020":"./esm2020/widgets/c8y-ngx-components-widgets.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets.mjs","node":"./fesm2015/c8y-ngx-components-widgets.mjs","default":"./fesm2020/c8y-ngx-components-widgets.mjs"}},"sideEffects":false}
1
+ {"name":"@c8y/ngx-components","version":"1018.0.170","license":"Apache-2.0","author":"Cumulocity","description":"Angular modules for Cumulocity IoT applications","keywords":["Cumulocity","IoT","m2m","Angular","Components"],"peerDependencies":{"@angular/cdk":"^14.0.6","@angular/common":"^14.0.6","@angular/core":"^14.0.6","@angular/forms":"^14.0.6","@angular/platform-browser":"^14.0.6","@angular/router":"^14.0.6","@angular/upgrade":"^14.0.6","rxjs":"~6.6.3","leaflet":"^1.7.1"},"dependencies":{"@c8y/client":"1018.0.170","@ngx-translate/core":"14.0.0","@ngx-translate/http-loader":"7.0.0","@ngx-formly/core":"6.1.3","libphonenumber-js":"1.10.17","lodash-es":"^4.0.0","ngx-bootstrap":"9.0.0","three":"0.148.0","tslib":"^2.3.1","angularx-qrcode":"14.0.0","file-saver":"2.0.5","marked":"4.2.12","semver":"~7.5.2"},"module":"fesm2015/c8y-ngx-components.mjs","es2020":"fesm2020/c8y-ngx-components.mjs","esm2020":"esm2020/c8y-ngx-components.mjs","fesm2020":"fesm2020/c8y-ngx-components.mjs","fesm2015":"fesm2015/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","esm2020":"./esm2020/c8y-ngx-components.mjs","es2020":"./fesm2020/c8y-ngx-components.mjs","es2015":"./fesm2015/c8y-ngx-components.mjs","node":"./fesm2015/c8y-ngx-components.mjs","default":"./fesm2020/c8y-ngx-components.mjs"},"./actility-device-registration":{"types":"./actility-device-registration/index.d.ts","esm2020":"./esm2020/actility-device-registration/c8y-ngx-components-actility-device-registration.mjs","es2020":"./fesm2020/c8y-ngx-components-actility-device-registration.mjs","es2015":"./fesm2015/c8y-ngx-components-actility-device-registration.mjs","node":"./fesm2015/c8y-ngx-components-actility-device-registration.mjs","default":"./fesm2020/c8y-ngx-components-actility-device-registration.mjs"},"./api":{"types":"./api/index.d.ts","esm2020":"./esm2020/api/c8y-ngx-components-api.mjs","es2020":"./fesm2020/c8y-ngx-components-api.mjs","es2015":"./fesm2015/c8y-ngx-components-api.mjs","node":"./fesm2015/c8y-ngx-components-api.mjs","default":"./fesm2020/c8y-ngx-components-api.mjs"},"./app-logs":{"types":"./app-logs/index.d.ts","esm2020":"./esm2020/app-logs/c8y-ngx-components-app-logs.mjs","es2020":"./fesm2020/c8y-ngx-components-app-logs.mjs","es2015":"./fesm2015/c8y-ngx-components-app-logs.mjs","node":"./fesm2015/c8y-ngx-components-app-logs.mjs","default":"./fesm2020/c8y-ngx-components-app-logs.mjs"},"./assets-navigator":{"types":"./assets-navigator/index.d.ts","esm2020":"./esm2020/assets-navigator/c8y-ngx-components-assets-navigator.mjs","es2020":"./fesm2020/c8y-ngx-components-assets-navigator.mjs","es2015":"./fesm2015/c8y-ngx-components-assets-navigator.mjs","node":"./fesm2015/c8y-ngx-components-assets-navigator.mjs","default":"./fesm2020/c8y-ngx-components-assets-navigator.mjs"},"./auth-configuration":{"types":"./auth-configuration/index.d.ts","esm2020":"./esm2020/auth-configuration/c8y-ngx-components-auth-configuration.mjs","es2020":"./fesm2020/c8y-ngx-components-auth-configuration.mjs","es2015":"./fesm2015/c8y-ngx-components-auth-configuration.mjs","node":"./fesm2015/c8y-ngx-components-auth-configuration.mjs","default":"./fesm2020/c8y-ngx-components-auth-configuration.mjs"},"./binary-file-download":{"types":"./binary-file-download/index.d.ts","esm2020":"./esm2020/binary-file-download/c8y-ngx-components-binary-file-download.mjs","es2020":"./fesm2020/c8y-ngx-components-binary-file-download.mjs","es2015":"./fesm2015/c8y-ngx-components-binary-file-download.mjs","node":"./fesm2015/c8y-ngx-components-binary-file-download.mjs","default":"./fesm2020/c8y-ngx-components-binary-file-download.mjs"},"./child-devices":{"types":"./child-devices/index.d.ts","esm2020":"./esm2020/child-devices/c8y-ngx-components-child-devices.mjs","es2020":"./fesm2020/c8y-ngx-components-child-devices.mjs","es2015":"./fesm2015/c8y-ngx-components-child-devices.mjs","node":"./fesm2015/c8y-ngx-components-child-devices.mjs","default":"./fesm2020/c8y-ngx-components-child-devices.mjs"},"./cockpit-config":{"types":"./cockpit-config/index.d.ts","esm2020":"./esm2020/cockpit-config/c8y-ngx-components-cockpit-config.mjs","es2020":"./fesm2020/c8y-ngx-components-cockpit-config.mjs","es2015":"./fesm2015/c8y-ngx-components-cockpit-config.mjs","node":"./fesm2015/c8y-ngx-components-cockpit-config.mjs","default":"./fesm2020/c8y-ngx-components-cockpit-config.mjs"},"./connectivity":{"types":"./connectivity/index.d.ts","esm2020":"./esm2020/connectivity/c8y-ngx-components-connectivity.mjs","es2020":"./fesm2020/c8y-ngx-components-connectivity.mjs","es2015":"./fesm2015/c8y-ngx-components-connectivity.mjs","node":"./fesm2015/c8y-ngx-components-connectivity.mjs","default":"./fesm2020/c8y-ngx-components-connectivity.mjs"},"./context-dashboard":{"types":"./context-dashboard/index.d.ts","esm2020":"./esm2020/context-dashboard/c8y-ngx-components-context-dashboard.mjs","es2020":"./fesm2020/c8y-ngx-components-context-dashboard.mjs","es2015":"./fesm2015/c8y-ngx-components-context-dashboard.mjs","node":"./fesm2015/c8y-ngx-components-context-dashboard.mjs","default":"./fesm2020/c8y-ngx-components-context-dashboard.mjs"},"./data-broker":{"types":"./data-broker/index.d.ts","esm2020":"./esm2020/data-broker/c8y-ngx-components-data-broker.mjs","es2020":"./fesm2020/c8y-ngx-components-data-broker.mjs","es2015":"./fesm2015/c8y-ngx-components-data-broker.mjs","node":"./fesm2015/c8y-ngx-components-data-broker.mjs","default":"./fesm2020/c8y-ngx-components-data-broker.mjs"},"./datapoint-library/details":{"types":"./datapoint-library/details/index.d.ts","esm2020":"./esm2020/datapoint-library/details/c8y-ngx-components-datapoint-library-details.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-details.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-details.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-details.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-details.mjs"},"./datapoint-library/list":{"types":"./datapoint-library/list/index.d.ts","esm2020":"./esm2020/datapoint-library/list/c8y-ngx-components-datapoint-library-list.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-list.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-list.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-list.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-list.mjs"},"./datapoint-library/model":{"types":"./datapoint-library/model/index.d.ts","esm2020":"./esm2020/datapoint-library/model/c8y-ngx-components-datapoint-library-model.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-model.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-model.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-model.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-model.mjs"},"./datapoint-library":{"types":"./datapoint-library/index.d.ts","esm2020":"./esm2020/datapoint-library/c8y-ngx-components-datapoint-library.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library.mjs"},"./datapoint-library/services":{"types":"./datapoint-library/services/index.d.ts","esm2020":"./esm2020/datapoint-library/services/c8y-ngx-components-datapoint-library-services.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-library-services.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-library-services.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-library-services.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-library-services.mjs"},"./datapoint-selector":{"types":"./datapoint-selector/index.d.ts","esm2020":"./esm2020/datapoint-selector/c8y-ngx-components-datapoint-selector.mjs","es2020":"./fesm2020/c8y-ngx-components-datapoint-selector.mjs","es2015":"./fesm2015/c8y-ngx-components-datapoint-selector.mjs","node":"./fesm2015/c8y-ngx-components-datapoint-selector.mjs","default":"./fesm2020/c8y-ngx-components-datapoint-selector.mjs"},"./default-subscriptions":{"types":"./default-subscriptions/index.d.ts","esm2020":"./esm2020/default-subscriptions/c8y-ngx-components-default-subscriptions.mjs","es2020":"./fesm2020/c8y-ngx-components-default-subscriptions.mjs","es2015":"./fesm2015/c8y-ngx-components-default-subscriptions.mjs","node":"./fesm2015/c8y-ngx-components-default-subscriptions.mjs","default":"./fesm2020/c8y-ngx-components-default-subscriptions.mjs"},"./device-grid":{"types":"./device-grid/index.d.ts","esm2020":"./esm2020/device-grid/c8y-ngx-components-device-grid.mjs","es2020":"./fesm2020/c8y-ngx-components-device-grid.mjs","es2015":"./fesm2015/c8y-ngx-components-device-grid.mjs","node":"./fesm2015/c8y-ngx-components-device-grid.mjs","default":"./fesm2020/c8y-ngx-components-device-grid.mjs"},"./device-list":{"types":"./device-list/index.d.ts","esm2020":"./esm2020/device-list/c8y-ngx-components-device-list.mjs","es2020":"./fesm2020/c8y-ngx-components-device-list.mjs","es2015":"./fesm2015/c8y-ngx-components-device-list.mjs","node":"./fesm2015/c8y-ngx-components-device-list.mjs","default":"./fesm2020/c8y-ngx-components-device-list.mjs"},"./device-profile":{"types":"./device-profile/index.d.ts","esm2020":"./esm2020/device-profile/c8y-ngx-components-device-profile.mjs","es2020":"./fesm2020/c8y-ngx-components-device-profile.mjs","es2015":"./fesm2015/c8y-ngx-components-device-profile.mjs","node":"./fesm2015/c8y-ngx-components-device-profile.mjs","default":"./fesm2020/c8y-ngx-components-device-profile.mjs"},"./device-protocols":{"types":"./device-protocols/index.d.ts","esm2020":"./esm2020/device-protocols/c8y-ngx-components-device-protocols.mjs","es2020":"./fesm2020/c8y-ngx-components-device-protocols.mjs","es2015":"./fesm2015/c8y-ngx-components-device-protocols.mjs","node":"./fesm2015/c8y-ngx-components-device-protocols.mjs","default":"./fesm2020/c8y-ngx-components-device-protocols.mjs"},"./device-shell":{"types":"./device-shell/index.d.ts","esm2020":"./esm2020/device-shell/c8y-ngx-components-device-shell.mjs","es2020":"./fesm2020/c8y-ngx-components-device-shell.mjs","es2015":"./fesm2015/c8y-ngx-components-device-shell.mjs","node":"./fesm2015/c8y-ngx-components-device-shell.mjs","default":"./fesm2020/c8y-ngx-components-device-shell.mjs"},"./diagnostics":{"types":"./diagnostics/index.d.ts","esm2020":"./esm2020/diagnostics/c8y-ngx-components-diagnostics.mjs","es2020":"./fesm2020/c8y-ngx-components-diagnostics.mjs","es2015":"./fesm2015/c8y-ngx-components-diagnostics.mjs","node":"./fesm2015/c8y-ngx-components-diagnostics.mjs","default":"./fesm2020/c8y-ngx-components-diagnostics.mjs"},"./ecosystem/application-plugins":{"types":"./ecosystem/application-plugins/index.d.ts","esm2020":"./esm2020/ecosystem/application-plugins/c8y-ngx-components-ecosystem-application-plugins.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-application-plugins.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-application-plugins.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-application-plugins.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-application-plugins.mjs"},"./ecosystem/license-confirm":{"types":"./ecosystem/license-confirm/index.d.ts","esm2020":"./esm2020/ecosystem/license-confirm/c8y-ngx-components-ecosystem-license-confirm.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-license-confirm.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-license-confirm.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-license-confirm.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-license-confirm.mjs"},"./ecosystem":{"types":"./ecosystem/index.d.ts","esm2020":"./esm2020/ecosystem/c8y-ngx-components-ecosystem.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem.mjs"},"./ecosystem/plugin-setup-stepper":{"types":"./ecosystem/plugin-setup-stepper/index.d.ts","esm2020":"./esm2020/ecosystem/plugin-setup-stepper/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs"},"./ecosystem/shared":{"types":"./ecosystem/shared/index.d.ts","esm2020":"./esm2020/ecosystem/shared/c8y-ngx-components-ecosystem-shared.mjs","es2020":"./fesm2020/c8y-ngx-components-ecosystem-shared.mjs","es2015":"./fesm2015/c8y-ngx-components-ecosystem-shared.mjs","node":"./fesm2015/c8y-ngx-components-ecosystem-shared.mjs","default":"./fesm2020/c8y-ngx-components-ecosystem-shared.mjs"},"./file-preview":{"types":"./file-preview/index.d.ts","esm2020":"./esm2020/file-preview/c8y-ngx-components-file-preview.mjs","es2020":"./fesm2020/c8y-ngx-components-file-preview.mjs","es2015":"./fesm2015/c8y-ngx-components-file-preview.mjs","node":"./fesm2015/c8y-ngx-components-file-preview.mjs","default":"./fesm2020/c8y-ngx-components-file-preview.mjs"},"./files-repository":{"types":"./files-repository/index.d.ts","esm2020":"./esm2020/files-repository/c8y-ngx-components-files-repository.mjs","es2020":"./fesm2020/c8y-ngx-components-files-repository.mjs","es2015":"./fesm2015/c8y-ngx-components-files-repository.mjs","node":"./fesm2015/c8y-ngx-components-files-repository.mjs","default":"./fesm2020/c8y-ngx-components-files-repository.mjs"},"./icon-selector/icons/arrows":{"types":"./icon-selector/icons/arrows/index.d.ts","esm2020":"./esm2020/icon-selector/icons/arrows/c8y-ngx-components-icon-selector-icons-arrows.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-arrows.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-arrows.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-arrows.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-arrows.mjs"},"./icon-selector/icons/city":{"types":"./icon-selector/icons/city/index.d.ts","esm2020":"./esm2020/icon-selector/icons/city/c8y-ngx-components-icon-selector-icons-city.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-city.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-city.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-city.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-city.mjs"},"./icon-selector/icons/data":{"types":"./icon-selector/icons/data/index.d.ts","esm2020":"./esm2020/icon-selector/icons/data/c8y-ngx-components-icon-selector-icons-data.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-data.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-data.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-data.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-data.mjs"},"./icon-selector/icons/dateAndTime":{"types":"./icon-selector/icons/dateAndTime/index.d.ts","esm2020":"./esm2020/icon-selector/icons/dateAndTime/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-dateAndTime.mjs"},"./icon-selector/icons/devicesAndSensors":{"types":"./icon-selector/icons/devicesAndSensors/index.d.ts","esm2020":"./esm2020/icon-selector/icons/devicesAndSensors/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-devicesAndSensors.mjs"},"./icon-selector/icons/ecommerce":{"types":"./icon-selector/icons/ecommerce/index.d.ts","esm2020":"./esm2020/icon-selector/icons/ecommerce/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-ecommerce.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-ecommerce.mjs"},"./icon-selector/icons/editing":{"types":"./icon-selector/icons/editing/index.d.ts","esm2020":"./esm2020/icon-selector/icons/editing/c8y-ngx-components-icon-selector-icons-editing.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-editing.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-editing.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-editing.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-editing.mjs"},"./icon-selector/icons/filesAndFolders":{"types":"./icon-selector/icons/filesAndFolders/index.d.ts","esm2020":"./esm2020/icon-selector/icons/filesAndFolders/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-filesAndFolders.mjs"},"./icon-selector/icons/finance":{"types":"./icon-selector/icons/finance/index.d.ts","esm2020":"./esm2020/icon-selector/icons/finance/c8y-ngx-components-icon-selector-icons-finance.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-finance.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-finance.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-finance.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-finance.mjs"},"./icon-selector/icons/hands":{"types":"./icon-selector/icons/hands/index.d.ts","esm2020":"./esm2020/icon-selector/icons/hands/c8y-ngx-components-icon-selector-icons-hands.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-hands.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-hands.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-hands.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-hands.mjs"},"./icon-selector/icons/location":{"types":"./icon-selector/icons/location/index.d.ts","esm2020":"./esm2020/icon-selector/icons/location/c8y-ngx-components-icon-selector-icons-location.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-location.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-location.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-location.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-location.mjs"},"./icon-selector/icons/messaging":{"types":"./icon-selector/icons/messaging/index.d.ts","esm2020":"./esm2020/icon-selector/icons/messaging/c8y-ngx-components-icon-selector-icons-messaging.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-messaging.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-messaging.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-messaging.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-messaging.mjs"},"./icon-selector/icons/multimedia":{"types":"./icon-selector/icons/multimedia/index.d.ts","esm2020":"./esm2020/icon-selector/icons/multimedia/c8y-ngx-components-icon-selector-icons-multimedia.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-multimedia.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-multimedia.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-multimedia.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-multimedia.mjs"},"./icon-selector/icons/network":{"types":"./icon-selector/icons/network/index.d.ts","esm2020":"./esm2020/icon-selector/icons/network/c8y-ngx-components-icon-selector-icons-network.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-network.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-network.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-network.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-network.mjs"},"./icon-selector/icons":{"types":"./icon-selector/icons/index.d.ts","esm2020":"./esm2020/icon-selector/icons/c8y-ngx-components-icon-selector-icons.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons.mjs"},"./icon-selector/icons/office":{"types":"./icon-selector/icons/office/index.d.ts","esm2020":"./esm2020/icon-selector/icons/office/c8y-ngx-components-icon-selector-icons-office.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-office.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-office.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-office.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-office.mjs"},"./icon-selector/icons/people":{"types":"./icon-selector/icons/people/index.d.ts","esm2020":"./esm2020/icon-selector/icons/people/c8y-ngx-components-icon-selector-icons-people.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-people.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-people.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-people.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-people.mjs"},"./icon-selector/icons/platform":{"types":"./icon-selector/icons/platform/index.d.ts","esm2020":"./esm2020/icon-selector/icons/platform/c8y-ngx-components-icon-selector-icons-platform.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-platform.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-platform.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-platform.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-platform.mjs"},"./icon-selector/icons/programming":{"types":"./icon-selector/icons/programming/index.d.ts","esm2020":"./esm2020/icon-selector/icons/programming/c8y-ngx-components-icon-selector-icons-programming.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-programming.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-programming.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-programming.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-programming.mjs"},"./icon-selector/icons/security":{"types":"./icon-selector/icons/security/index.d.ts","esm2020":"./esm2020/icon-selector/icons/security/c8y-ngx-components-icon-selector-icons-security.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-security.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-security.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-security.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-security.mjs"},"./icon-selector/icons/transport":{"types":"./icon-selector/icons/transport/index.d.ts","esm2020":"./esm2020/icon-selector/icons/transport/c8y-ngx-components-icon-selector-icons-transport.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-transport.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-transport.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-transport.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-transport.mjs"},"./icon-selector/icons/userInterface":{"types":"./icon-selector/icons/userInterface/index.d.ts","esm2020":"./esm2020/icon-selector/icons/userInterface/c8y-ngx-components-icon-selector-icons-userInterface.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-userInterface.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-userInterface.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-userInterface.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-userInterface.mjs"},"./icon-selector/icons/weather":{"types":"./icon-selector/icons/weather/index.d.ts","esm2020":"./esm2020/icon-selector/icons/weather/c8y-ngx-components-icon-selector-icons-weather.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-icons-weather.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-icons-weather.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-icons-weather.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-icons-weather.mjs"},"./icon-selector/model":{"types":"./icon-selector/model/index.d.ts","esm2020":"./esm2020/icon-selector/model/c8y-ngx-components-icon-selector-model.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector-model.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector-model.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector-model.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector-model.mjs"},"./icon-selector":{"types":"./icon-selector/index.d.ts","esm2020":"./esm2020/icon-selector/c8y-ngx-components-icon-selector.mjs","es2020":"./fesm2020/c8y-ngx-components-icon-selector.mjs","es2015":"./fesm2015/c8y-ngx-components-icon-selector.mjs","node":"./fesm2015/c8y-ngx-components-icon-selector.mjs","default":"./fesm2020/c8y-ngx-components-icon-selector.mjs"},"./lazy/three-orbit-controls":{"types":"./lazy/three-orbit-controls/index.d.ts","esm2020":"./esm2020/lazy/three-orbit-controls/c8y-ngx-components-lazy-three-orbit-controls.mjs","es2020":"./fesm2020/c8y-ngx-components-lazy-three-orbit-controls.mjs","es2015":"./fesm2015/c8y-ngx-components-lazy-three-orbit-controls.mjs","node":"./fesm2015/c8y-ngx-components-lazy-three-orbit-controls.mjs","default":"./fesm2020/c8y-ngx-components-lazy-three-orbit-controls.mjs"},"./lazy/three":{"types":"./lazy/three/index.d.ts","esm2020":"./esm2020/lazy/three/c8y-ngx-components-lazy-three.mjs","es2020":"./fesm2020/c8y-ngx-components-lazy-three.mjs","es2015":"./fesm2015/c8y-ngx-components-lazy-three.mjs","node":"./fesm2015/c8y-ngx-components-lazy-three.mjs","default":"./fesm2020/c8y-ngx-components-lazy-three.mjs"},"./loriot-device-registration":{"types":"./loriot-device-registration/index.d.ts","esm2020":"./esm2020/loriot-device-registration/c8y-ngx-components-loriot-device-registration.mjs","es2020":"./fesm2020/c8y-ngx-components-loriot-device-registration.mjs","es2015":"./fesm2015/c8y-ngx-components-loriot-device-registration.mjs","node":"./fesm2015/c8y-ngx-components-loriot-device-registration.mjs","default":"./fesm2020/c8y-ngx-components-loriot-device-registration.mjs"},"./map":{"types":"./map/index.d.ts","esm2020":"./esm2020/map/c8y-ngx-components-map.mjs","es2020":"./fesm2020/c8y-ngx-components-map.mjs","es2015":"./fesm2015/c8y-ngx-components-map.mjs","node":"./fesm2015/c8y-ngx-components-map.mjs","default":"./fesm2020/c8y-ngx-components-map.mjs"},"./operations/bulk-operation-from-single":{"types":"./operations/bulk-operation-from-single/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-from-single/c8y-ngx-components-operations-bulk-operation-from-single.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-from-single.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-from-single.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-from-single.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-from-single.mjs"},"./operations/bulk-operation-list-item":{"types":"./operations/bulk-operation-list-item/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-list-item/c8y-ngx-components-operations-bulk-operation-list-item.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-list-item.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-list-item.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-list-item.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-list-item.mjs"},"./operations/bulk-operation-modal-details":{"types":"./operations/bulk-operation-modal-details/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-modal-details/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-modal-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-modal-details.mjs"},"./operations/bulk-operation-scheduler":{"types":"./operations/bulk-operation-scheduler/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-scheduler/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-scheduler.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-scheduler.mjs"},"./operations/bulk-operation-stepper":{"types":"./operations/bulk-operation-stepper/index.d.ts","esm2020":"./esm2020/operations/bulk-operation-stepper/c8y-ngx-components-operations-bulk-operation-stepper.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operation-stepper.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operation-stepper.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operation-stepper.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operation-stepper.mjs"},"./operations/bulk-operations-list":{"types":"./operations/bulk-operations-list/index.d.ts","esm2020":"./esm2020/operations/bulk-operations-list/c8y-ngx-components-operations-bulk-operations-list.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operations-list.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operations-list.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operations-list.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operations-list.mjs"},"./operations/bulk-operations-service":{"types":"./operations/bulk-operations-service/index.d.ts","esm2020":"./esm2020/operations/bulk-operations-service/c8y-ngx-components-operations-bulk-operations-service.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operations-service.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operations-service.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operations-service.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operations-service.mjs"},"./operations/bulk-operations-stepper-container":{"types":"./operations/bulk-operations-stepper-container/index.d.ts","esm2020":"./esm2020/operations/bulk-operations-stepper-container/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs"},"./operations/bulk-single-operations-list":{"types":"./operations/bulk-single-operations-list/index.d.ts","esm2020":"./esm2020/operations/bulk-single-operations-list/c8y-ngx-components-operations-bulk-single-operations-list.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-bulk-single-operations-list.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-bulk-single-operations-list.mjs","node":"./fesm2015/c8y-ngx-components-operations-bulk-single-operations-list.mjs","default":"./fesm2020/c8y-ngx-components-operations-bulk-single-operations-list.mjs"},"./operations/create-bulk-operation-details":{"types":"./operations/create-bulk-operation-details/index.d.ts","esm2020":"./esm2020/operations/create-bulk-operation-details/c8y-ngx-components-operations-create-bulk-operation-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-create-bulk-operation-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-create-bulk-operation-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-create-bulk-operation-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-create-bulk-operation-details.mjs"},"./operations/device-selector":{"types":"./operations/device-selector/index.d.ts","esm2020":"./esm2020/operations/device-selector/c8y-ngx-components-operations-device-selector.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-device-selector.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-device-selector.mjs","node":"./fesm2015/c8y-ngx-components-operations-device-selector.mjs","default":"./fesm2020/c8y-ngx-components-operations-device-selector.mjs"},"./operations":{"types":"./operations/index.d.ts","esm2020":"./esm2020/operations/c8y-ngx-components-operations.mjs","es2020":"./fesm2020/c8y-ngx-components-operations.mjs","es2015":"./fesm2015/c8y-ngx-components-operations.mjs","node":"./fesm2015/c8y-ngx-components-operations.mjs","default":"./fesm2020/c8y-ngx-components-operations.mjs"},"./operations/operation-details":{"types":"./operations/operation-details/index.d.ts","esm2020":"./esm2020/operations/operation-details/c8y-ngx-components-operations-operation-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operation-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operation-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-operation-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-operation-details.mjs"},"./operations/operation-summary":{"types":"./operations/operation-summary/index.d.ts","esm2020":"./esm2020/operations/operation-summary/c8y-ngx-components-operations-operation-summary.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operation-summary.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operation-summary.mjs","node":"./fesm2015/c8y-ngx-components-operations-operation-summary.mjs","default":"./fesm2020/c8y-ngx-components-operations-operation-summary.mjs"},"./operations/operations-list-item-details":{"types":"./operations/operations-list-item-details/index.d.ts","esm2020":"./esm2020/operations/operations-list-item-details/c8y-ngx-components-operations-operations-list-item-details.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operations-list-item-details.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operations-list-item-details.mjs","node":"./fesm2015/c8y-ngx-components-operations-operations-list-item-details.mjs","default":"./fesm2020/c8y-ngx-components-operations-operations-list-item-details.mjs"},"./operations/operations-list":{"types":"./operations/operations-list/index.d.ts","esm2020":"./esm2020/operations/operations-list/c8y-ngx-components-operations-operations-list.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operations-list.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operations-list.mjs","node":"./fesm2015/c8y-ngx-components-operations-operations-list.mjs","default":"./fesm2020/c8y-ngx-components-operations-operations-list.mjs"},"./operations/operations-timeline":{"types":"./operations/operations-timeline/index.d.ts","esm2020":"./esm2020/operations/operations-timeline/c8y-ngx-components-operations-operations-timeline.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-operations-timeline.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-operations-timeline.mjs","node":"./fesm2015/c8y-ngx-components-operations-operations-timeline.mjs","default":"./fesm2020/c8y-ngx-components-operations-operations-timeline.mjs"},"./operations/product-experience":{"types":"./operations/product-experience/index.d.ts","esm2020":"./esm2020/operations/product-experience/c8y-ngx-components-operations-product-experience.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-product-experience.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-product-experience.mjs","node":"./fesm2015/c8y-ngx-components-operations-product-experience.mjs","default":"./fesm2020/c8y-ngx-components-operations-product-experience.mjs"},"./operations/shared":{"types":"./operations/shared/index.d.ts","esm2020":"./esm2020/operations/shared/c8y-ngx-components-operations-shared.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-shared.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-shared.mjs","node":"./fesm2015/c8y-ngx-components-operations-shared.mjs","default":"./fesm2020/c8y-ngx-components-operations-shared.mjs"},"./operations/status-filter":{"types":"./operations/status-filter/index.d.ts","esm2020":"./esm2020/operations/status-filter/c8y-ngx-components-operations-status-filter.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-status-filter.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-status-filter.mjs","node":"./fesm2015/c8y-ngx-components-operations-status-filter.mjs","default":"./fesm2020/c8y-ngx-components-operations-status-filter.mjs"},"./operations/stepper-bulk-type-configuration":{"types":"./operations/stepper-bulk-type-configuration/index.d.ts","esm2020":"./esm2020/operations/stepper-bulk-type-configuration/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs","default":"./fesm2020/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","esm2020":"./esm2020/operations/stepper-bulk-type-device-profile/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs"},"./operations/stepper-bulk-type-firmware":{"types":"./operations/stepper-bulk-type-firmware/index.d.ts","esm2020":"./esm2020/operations/stepper-bulk-type-firmware/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs"},"./operations/stepper-bulk-type-software":{"types":"./operations/stepper-bulk-type-software/index.d.ts","esm2020":"./esm2020/operations/stepper-bulk-type-software/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-bulk-type-software.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-bulk-type-software.mjs"},"./operations/stepper-frames":{"types":"./operations/stepper-frames/index.d.ts","esm2020":"./esm2020/operations/stepper-frames/c8y-ngx-components-operations-stepper-frames.mjs","es2020":"./fesm2020/c8y-ngx-components-operations-stepper-frames.mjs","es2015":"./fesm2015/c8y-ngx-components-operations-stepper-frames.mjs","node":"./fesm2015/c8y-ngx-components-operations-stepper-frames.mjs","default":"./fesm2020/c8y-ngx-components-operations-stepper-frames.mjs"},"./polyfills":{"types":"./polyfills/index.d.ts","esm2020":"./esm2020/polyfills/c8y-ngx-components-polyfills.mjs","es2020":"./fesm2020/c8y-ngx-components-polyfills.mjs","es2015":"./fesm2015/c8y-ngx-components-polyfills.mjs","node":"./fesm2015/c8y-ngx-components-polyfills.mjs","default":"./fesm2020/c8y-ngx-components-polyfills.mjs"},"./protocol-impact":{"types":"./protocol-impact/index.d.ts","esm2020":"./esm2020/protocol-impact/c8y-ngx-components-protocol-impact.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-impact.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-impact.mjs","node":"./fesm2015/c8y-ngx-components-protocol-impact.mjs","default":"./fesm2020/c8y-ngx-components-protocol-impact.mjs"},"./protocol-lpwan":{"types":"./protocol-lpwan/index.d.ts","esm2020":"./esm2020/protocol-lpwan/c8y-ngx-components-protocol-lpwan.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lpwan.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lpwan.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lpwan.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lpwan.mjs"},"./protocol-lwm2m/components/bootstrap-parameters":{"types":"./protocol-lwm2m/components/bootstrap-parameters/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/components/bootstrap-parameters/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-bootstrap-parameters.mjs"},"./protocol-lwm2m/components/post-registration-operations":{"types":"./protocol-lwm2m/components/post-registration-operations/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/components/post-registration-operations/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-components-post-registration-operations.mjs"},"./protocol-lwm2m/factories":{"types":"./protocol-lwm2m/factories/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/factories/c8y-ngx-components-protocol-lwm2m-factories.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-factories.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-factories.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-factories.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-factories.mjs"},"./protocol-lwm2m/guards":{"types":"./protocol-lwm2m/guards/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/guards/c8y-ngx-components-protocol-lwm2m-guards.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-guards.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-guards.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-guards.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-guards.mjs"},"./protocol-lwm2m/model":{"types":"./protocol-lwm2m/model/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/model/c8y-ngx-components-protocol-lwm2m-model.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-model.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-model.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-model.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-model.mjs"},"./protocol-lwm2m":{"types":"./protocol-lwm2m/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/c8y-ngx-components-protocol-lwm2m.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m.mjs"},"./protocol-lwm2m/services":{"types":"./protocol-lwm2m/services/index.d.ts","esm2020":"./esm2020/protocol-lwm2m/services/c8y-ngx-components-protocol-lwm2m-services.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-lwm2m-services.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-lwm2m-services.mjs","node":"./fesm2015/c8y-ngx-components-protocol-lwm2m-services.mjs","default":"./fesm2020/c8y-ngx-components-protocol-lwm2m-services.mjs"},"./protocol-opcua":{"types":"./protocol-opcua/index.d.ts","esm2020":"./esm2020/protocol-opcua/c8y-ngx-components-protocol-opcua.mjs","es2020":"./fesm2020/c8y-ngx-components-protocol-opcua.mjs","es2015":"./fesm2015/c8y-ngx-components-protocol-opcua.mjs","node":"./fesm2015/c8y-ngx-components-protocol-opcua.mjs","default":"./fesm2020/c8y-ngx-components-protocol-opcua.mjs"},"./register-device":{"types":"./register-device/index.d.ts","esm2020":"./esm2020/register-device/c8y-ngx-components-register-device.mjs","es2020":"./fesm2020/c8y-ngx-components-register-device.mjs","es2015":"./fesm2015/c8y-ngx-components-register-device.mjs","node":"./fesm2015/c8y-ngx-components-register-device.mjs","default":"./fesm2020/c8y-ngx-components-register-device.mjs"},"./reports":{"types":"./reports/index.d.ts","esm2020":"./esm2020/reports/c8y-ngx-components-reports.mjs","es2020":"./fesm2020/c8y-ngx-components-reports.mjs","es2015":"./fesm2015/c8y-ngx-components-reports.mjs","node":"./fesm2015/c8y-ngx-components-reports.mjs","default":"./fesm2020/c8y-ngx-components-reports.mjs"},"./repository/configuration":{"types":"./repository/configuration/index.d.ts","esm2020":"./esm2020/repository/configuration/c8y-ngx-components-repository-configuration.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-configuration.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-configuration.mjs","node":"./fesm2015/c8y-ngx-components-repository-configuration.mjs","default":"./fesm2020/c8y-ngx-components-repository-configuration.mjs"},"./repository/firmware":{"types":"./repository/firmware/index.d.ts","esm2020":"./esm2020/repository/firmware/c8y-ngx-components-repository-firmware.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-firmware.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-firmware.mjs","node":"./fesm2015/c8y-ngx-components-repository-firmware.mjs","default":"./fesm2020/c8y-ngx-components-repository-firmware.mjs"},"./repository":{"types":"./repository/index.d.ts","esm2020":"./esm2020/repository/c8y-ngx-components-repository.mjs","es2020":"./fesm2020/c8y-ngx-components-repository.mjs","es2015":"./fesm2015/c8y-ngx-components-repository.mjs","node":"./fesm2015/c8y-ngx-components-repository.mjs","default":"./fesm2020/c8y-ngx-components-repository.mjs"},"./repository/shared":{"types":"./repository/shared/index.d.ts","esm2020":"./esm2020/repository/shared/c8y-ngx-components-repository-shared.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-shared.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-shared.mjs","node":"./fesm2015/c8y-ngx-components-repository-shared.mjs","default":"./fesm2020/c8y-ngx-components-repository-shared.mjs"},"./repository/software":{"types":"./repository/software/index.d.ts","esm2020":"./esm2020/repository/software/c8y-ngx-components-repository-software.mjs","es2020":"./fesm2020/c8y-ngx-components-repository-software.mjs","es2015":"./fesm2015/c8y-ngx-components-repository-software.mjs","node":"./fesm2015/c8y-ngx-components-repository-software.mjs","default":"./fesm2020/c8y-ngx-components-repository-software.mjs"},"./search":{"types":"./search/index.d.ts","esm2020":"./esm2020/search/c8y-ngx-components-search.mjs","es2020":"./fesm2020/c8y-ngx-components-search.mjs","es2015":"./fesm2015/c8y-ngx-components-search.mjs","node":"./fesm2015/c8y-ngx-components-search.mjs","default":"./fesm2020/c8y-ngx-components-search.mjs"},"./sensor-phone":{"types":"./sensor-phone/index.d.ts","esm2020":"./esm2020/sensor-phone/c8y-ngx-components-sensor-phone.mjs","es2020":"./fesm2020/c8y-ngx-components-sensor-phone.mjs","es2015":"./fesm2015/c8y-ngx-components-sensor-phone.mjs","node":"./fesm2015/c8y-ngx-components-sensor-phone.mjs","default":"./fesm2020/c8y-ngx-components-sensor-phone.mjs"},"./sensor-phone/sensor-phone-modal":{"types":"./sensor-phone/sensor-phone-modal/index.d.ts","esm2020":"./esm2020/sensor-phone/sensor-phone-modal/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","es2020":"./fesm2020/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","es2015":"./fesm2015/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","node":"./fesm2015/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs","default":"./fesm2020/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs"},"./services":{"types":"./services/index.d.ts","esm2020":"./esm2020/services/c8y-ngx-components-services.mjs","es2020":"./fesm2020/c8y-ngx-components-services.mjs","es2015":"./fesm2015/c8y-ngx-components-services.mjs","node":"./fesm2015/c8y-ngx-components-services.mjs","default":"./fesm2020/c8y-ngx-components-services.mjs"},"./sigfox-device-registration":{"types":"./sigfox-device-registration/index.d.ts","esm2020":"./esm2020/sigfox-device-registration/c8y-ngx-components-sigfox-device-registration.mjs","es2020":"./fesm2020/c8y-ngx-components-sigfox-device-registration.mjs","es2015":"./fesm2015/c8y-ngx-components-sigfox-device-registration.mjs","node":"./fesm2015/c8y-ngx-components-sigfox-device-registration.mjs","default":"./fesm2020/c8y-ngx-components-sigfox-device-registration.mjs"},"./sms-gateway":{"types":"./sms-gateway/index.d.ts","esm2020":"./esm2020/sms-gateway/c8y-ngx-components-sms-gateway.mjs","es2020":"./fesm2020/c8y-ngx-components-sms-gateway.mjs","es2015":"./fesm2015/c8y-ngx-components-sms-gateway.mjs","node":"./fesm2015/c8y-ngx-components-sms-gateway.mjs","default":"./fesm2020/c8y-ngx-components-sms-gateway.mjs"},"./sub-assets":{"types":"./sub-assets/index.d.ts","esm2020":"./esm2020/sub-assets/c8y-ngx-components-sub-assets.mjs","es2020":"./fesm2020/c8y-ngx-components-sub-assets.mjs","es2015":"./fesm2015/c8y-ngx-components-sub-assets.mjs","node":"./fesm2015/c8y-ngx-components-sub-assets.mjs","default":"./fesm2020/c8y-ngx-components-sub-assets.mjs"},"./tenants":{"types":"./tenants/index.d.ts","esm2020":"./esm2020/tenants/c8y-ngx-components-tenants.mjs","es2020":"./fesm2020/c8y-ngx-components-tenants.mjs","es2015":"./fesm2015/c8y-ngx-components-tenants.mjs","node":"./fesm2015/c8y-ngx-components-tenants.mjs","default":"./fesm2020/c8y-ngx-components-tenants.mjs"},"./trusted-certificates":{"types":"./trusted-certificates/index.d.ts","esm2020":"./esm2020/trusted-certificates/c8y-ngx-components-trusted-certificates.mjs","es2020":"./fesm2020/c8y-ngx-components-trusted-certificates.mjs","es2015":"./fesm2015/c8y-ngx-components-trusted-certificates.mjs","node":"./fesm2015/c8y-ngx-components-trusted-certificates.mjs","default":"./fesm2020/c8y-ngx-components-trusted-certificates.mjs"},"./upgrade":{"types":"./upgrade/index.d.ts","esm2020":"./esm2020/upgrade/c8y-ngx-components-upgrade.mjs","es2020":"./fesm2020/c8y-ngx-components-upgrade.mjs","es2015":"./fesm2015/c8y-ngx-components-upgrade.mjs","node":"./fesm2015/c8y-ngx-components-upgrade.mjs","default":"./fesm2020/c8y-ngx-components-upgrade.mjs"},"./widgets/cockpit":{"types":"./widgets/cockpit/index.d.ts","esm2020":"./esm2020/widgets/cockpit/c8y-ngx-components-widgets-cockpit.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-cockpit.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-cockpit.mjs","node":"./fesm2015/c8y-ngx-components-widgets-cockpit.mjs","default":"./fesm2020/c8y-ngx-components-widgets-cockpit.mjs"},"./widgets/definitions/cockpit-legacy-welcome":{"types":"./widgets/definitions/cockpit-legacy-welcome/index.d.ts","esm2020":"./esm2020/widgets/definitions/cockpit-legacy-welcome/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs"},"./widgets/definitions/cockpit-welcome":{"types":"./widgets/definitions/cockpit-welcome/index.d.ts","esm2020":"./esm2020/widgets/definitions/cockpit-welcome/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs"},"./widgets/definitions/device-management-welcome":{"types":"./widgets/definitions/device-management-welcome/index.d.ts","esm2020":"./esm2020/widgets/definitions/device-management-welcome/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs"},"./widgets/definitions/help-and-service":{"types":"./widgets/definitions/help-and-service/index.d.ts","esm2020":"./esm2020/widgets/definitions/help-and-service/c8y-ngx-components-widgets-definitions-help-and-service.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-help-and-service.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-help-and-service.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-help-and-service.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-help-and-service.mjs"},"./widgets/definitions/image":{"types":"./widgets/definitions/image/index.d.ts","esm2020":"./esm2020/widgets/definitions/image/c8y-ngx-components-widgets-definitions-image.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-image.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-image.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-image.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-image.mjs"},"./widgets/definitions/kpi":{"types":"./widgets/definitions/kpi/index.d.ts","esm2020":"./esm2020/widgets/definitions/kpi/c8y-ngx-components-widgets-definitions-kpi.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-kpi.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-kpi.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-kpi.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-kpi.mjs"},"./widgets/definitions/map":{"types":"./widgets/definitions/map/index.d.ts","esm2020":"./esm2020/widgets/definitions/map/c8y-ngx-components-widgets-definitions-map.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-map.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-map.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-map.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-map.mjs"},"./widgets/definitions/markdown":{"types":"./widgets/definitions/markdown/index.d.ts","esm2020":"./esm2020/widgets/definitions/markdown/c8y-ngx-components-widgets-definitions-markdown.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-markdown.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-markdown.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-markdown.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-markdown.mjs"},"./widgets/definitions":{"types":"./widgets/definitions/index.d.ts","esm2020":"./esm2020/widgets/definitions/c8y-ngx-components-widgets-definitions.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions.mjs"},"./widgets/definitions/three-d-rotation":{"types":"./widgets/definitions/three-d-rotation/index.d.ts","esm2020":"./esm2020/widgets/definitions/three-d-rotation/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","node":"./fesm2015/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs","default":"./fesm2020/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs"},"./widgets/device-management":{"types":"./widgets/device-management/index.d.ts","esm2020":"./esm2020/widgets/device-management/c8y-ngx-components-widgets-device-management.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-device-management.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-device-management.mjs","node":"./fesm2015/c8y-ngx-components-widgets-device-management.mjs","default":"./fesm2020/c8y-ngx-components-widgets-device-management.mjs"},"./widgets/implementations/cockpit-legacy-welcome":{"types":"./widgets/implementations/cockpit-legacy-welcome/index.d.ts","esm2020":"./esm2020/widgets/implementations/cockpit-legacy-welcome/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs"},"./widgets/implementations/cockpit-welcome":{"types":"./widgets/implementations/cockpit-welcome/index.d.ts","esm2020":"./esm2020/widgets/implementations/cockpit-welcome/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs"},"./widgets/implementations/device-management-welcome":{"types":"./widgets/implementations/device-management-welcome/index.d.ts","esm2020":"./esm2020/widgets/implementations/device-management-welcome/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs","default":"./fesm2020/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","esm2020":"./esm2020/widgets/implementations/help-and-service-widget/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs"},"./widgets/implementations/image":{"types":"./widgets/implementations/image/index.d.ts","esm2020":"./esm2020/widgets/implementations/image/c8y-ngx-components-widgets-implementations-image.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-image.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-image.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-image.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-image.mjs"},"./widgets/implementations/kpi":{"types":"./widgets/implementations/kpi/index.d.ts","esm2020":"./esm2020/widgets/implementations/kpi/c8y-ngx-components-widgets-implementations-kpi.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-kpi.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-kpi.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-kpi.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-kpi.mjs"},"./widgets/implementations/map":{"types":"./widgets/implementations/map/index.d.ts","esm2020":"./esm2020/widgets/implementations/map/c8y-ngx-components-widgets-implementations-map.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-map.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-map.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-map.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-map.mjs"},"./widgets/implementations/markdown":{"types":"./widgets/implementations/markdown/index.d.ts","esm2020":"./esm2020/widgets/implementations/markdown/c8y-ngx-components-widgets-implementations-markdown.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-markdown.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-markdown.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-markdown.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-markdown.mjs"},"./widgets/implementations/three-d-rotation/box-model":{"types":"./widgets/implementations/three-d-rotation/box-model/index.d.ts","esm2020":"./esm2020/widgets/implementations/three-d-rotation/box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-box-model.mjs","default":"./fesm2020/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","esm2020":"./esm2020/widgets/implementations/three-d-rotation/lazy-box-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-box-model.mjs","default":"./fesm2020/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","esm2020":"./esm2020/widgets/implementations/three-d-rotation/lazy-phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-lazy-phone-model.mjs"},"./widgets/implementations/three-d-rotation":{"types":"./widgets/implementations/three-d-rotation/index.d.ts","esm2020":"./esm2020/widgets/implementations/three-d-rotation/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs"},"./widgets/implementations/three-d-rotation/phone-model":{"types":"./widgets/implementations/three-d-rotation/phone-model/index.d.ts","esm2020":"./esm2020/widgets/implementations/three-d-rotation/phone-model/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","node":"./fesm2015/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs","default":"./fesm2020/c8y-ngx-components-widgets-implementations-three-d-rotation-phone-model.mjs"},"./widgets":{"types":"./widgets/index.d.ts","esm2020":"./esm2020/widgets/c8y-ngx-components-widgets.mjs","es2020":"./fesm2020/c8y-ngx-components-widgets.mjs","es2015":"./fesm2015/c8y-ngx-components-widgets.mjs","node":"./fesm2015/c8y-ngx-components-widgets.mjs","default":"./fesm2020/c8y-ngx-components-widgets.mjs"}},"sideEffects":false}
@@ -8,11 +8,31 @@ export declare class LWM2MPostOperationsComponent implements OnInit {
8
8
  private lwm2mPostOperationsSvc;
9
9
  private alertService;
10
10
  commandsForm: NgForm;
11
- exampleCommands: {
11
+ exampleCommands: ({
12
12
  command: string;
13
13
  resource: string;
14
- description: any;
15
- }[];
14
+ description: "Discover all resources of Object 3300, the generic sensor.";
15
+ } | {
16
+ command: string;
17
+ resource: string;
18
+ description: "Read maximum sensor value";
19
+ } | {
20
+ command: string;
21
+ resource: string;
22
+ description: "Write application type \"CO2\" to device";
23
+ } | {
24
+ command: string;
25
+ resource: string;
26
+ description: "Reset min and max values";
27
+ } | {
28
+ command: string;
29
+ resource: string;
30
+ description: "Observe sensor value. Causes device to send every new sensor value";
31
+ } | {
32
+ command: string;
33
+ resource: string;
34
+ description: "Only send observations if sensor value is higher than 100";
35
+ })[];
16
36
  operations: LWM2MPostOperationsParameters;
17
37
  constructor(lwm2mPostOperationsSvc: LWM2MPostOperationsParametersService, alertService: AlertService);
18
38
  ngOnInit(): Promise<void>;