@c8y/ngx-components 1021.49.12 → 1021.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/core/i18n/pattern-messages.data.d.ts +18 -0
  2. package/core/i18n/pattern-messages.data.d.ts.map +1 -1
  3. package/esm2022/alarms/alarms-type-filter.component.mjs +3 -3
  4. package/esm2022/core/i18n/pattern-messages.data.mjs +19 -1
  5. package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-fetching.service.mjs +2 -2
  6. package/esm2022/device-list/add-smart-group.component.mjs +3 -3
  7. package/esm2022/operations/bulk-operation-list-item/bulk-operation-list-item.service.mjs +5 -4
  8. package/esm2022/operations/operation-details/operation-details.module.mjs +7 -7
  9. package/esm2022/operations/operations-list/device-control.feature.mjs +20 -0
  10. package/esm2022/operations/operations-list/index.mjs +4 -3
  11. package/esm2022/operations/operations-list/operations-list-item.component.mjs +11 -9
  12. package/esm2022/operations/operations-list/operations-list.component.mjs +15 -10
  13. package/esm2022/operations/operations-list/operations-list.module.mjs +16 -41
  14. package/esm2022/operations/operations-list/operations-list.service.mjs +4 -3
  15. package/esm2022/operations/operations.module.mjs +21 -14
  16. package/esm2022/operations/shared/operations.service.mjs +4 -3
  17. package/esm2022/services/index.mjs +14 -3
  18. package/esm2022/services/service-command-tab/c8y-ngx-components-services-service-command-tab.mjs +5 -0
  19. package/esm2022/services/service-command-tab/index.mjs +3 -0
  20. package/esm2022/services/service-command-tab/service-command-tab.component.mjs +33 -0
  21. package/esm2022/services/service-command-tab/service-command.feature.mjs +14 -0
  22. package/esm2022/services/services-device-tab/index.mjs +9 -3
  23. package/esm2022/services/services-device-tab/services-device-tab.component.mjs +3 -4
  24. package/esm2022/services/services-device-tab/services-device-tab.guard.mjs +2 -2
  25. package/esm2022/services/services-device-tab/services.breadcrumb-factory.mjs +13 -1
  26. package/esm2022/services/services.module.mjs +4 -2
  27. package/esm2022/services/shared/c8y-ngx-components-services-shared.mjs +5 -0
  28. package/esm2022/services/shared/index.mjs +3 -0
  29. package/esm2022/services/shared/service-command.service.mjs +118 -0
  30. package/esm2022/services/shared/services.model.mjs +23 -0
  31. package/fesm2022/c8y-ngx-components-alarms.mjs +2 -2
  32. package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
  33. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +1 -1
  34. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
  35. package/fesm2022/c8y-ngx-components-device-list.mjs +2 -2
  36. package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
  37. package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs +3 -2
  38. package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs.map +1 -1
  39. package/fesm2022/c8y-ngx-components-operations-operation-details.mjs +5 -5
  40. package/fesm2022/c8y-ngx-components-operations-operation-details.mjs.map +1 -1
  41. package/fesm2022/c8y-ngx-components-operations-operations-list.mjs +57 -52
  42. package/fesm2022/c8y-ngx-components-operations-operations-list.mjs.map +1 -1
  43. package/fesm2022/c8y-ngx-components-operations-shared.mjs +3 -2
  44. package/fesm2022/c8y-ngx-components-operations-shared.mjs.map +1 -1
  45. package/fesm2022/c8y-ngx-components-operations.mjs +42 -35
  46. package/fesm2022/c8y-ngx-components-operations.mjs.map +1 -1
  47. package/fesm2022/c8y-ngx-components-services-service-command-tab.mjs +49 -0
  48. package/fesm2022/c8y-ngx-components-services-service-command-tab.mjs.map +1 -0
  49. package/fesm2022/c8y-ngx-components-services-shared.mjs +145 -0
  50. package/fesm2022/c8y-ngx-components-services-shared.mjs.map +1 -0
  51. package/fesm2022/c8y-ngx-components-services.mjs +20 -113
  52. package/fesm2022/c8y-ngx-components-services.mjs.map +1 -1
  53. package/fesm2022/c8y-ngx-components.mjs +18 -0
  54. package/fesm2022/c8y-ngx-components.mjs.map +1 -1
  55. package/locales/de.po +12 -14
  56. package/locales/es.po +12 -14
  57. package/locales/fr.po +11 -13
  58. package/locales/ja_JP.po +13 -17
  59. package/locales/ko.po +13 -10
  60. package/locales/locales.pot +19 -6
  61. package/locales/nl.po +12 -14
  62. package/locales/pl.po +12 -14
  63. package/locales/pt_BR.po +11 -13
  64. package/locales/zh_CN.po +12 -9
  65. package/locales/zh_TW.po +12 -9
  66. package/operations/bulk-operation-list-item/bulk-operation-list-item.service.d.ts +2 -2
  67. package/operations/bulk-operation-list-item/bulk-operation-list-item.service.d.ts.map +1 -1
  68. package/operations/operation-details/operation-details.module.d.ts +1 -1
  69. package/operations/operations-list/device-control.feature.d.ts +4 -0
  70. package/operations/operations-list/device-control.feature.d.ts.map +1 -0
  71. package/operations/operations-list/index.d.ts +3 -2
  72. package/operations/operations-list/index.d.ts.map +1 -1
  73. package/operations/operations-list/operations-list-item.component.d.ts +1 -1
  74. package/operations/operations-list/operations-list-item.component.d.ts.map +1 -1
  75. package/operations/operations-list/operations-list.component.d.ts +3 -1
  76. package/operations/operations-list/operations-list.component.d.ts.map +1 -1
  77. package/operations/operations-list/operations-list.module.d.ts +3 -9
  78. package/operations/operations-list/operations-list.module.d.ts.map +1 -1
  79. package/operations/operations.module.d.ts +1 -2
  80. package/operations/operations.module.d.ts.map +1 -1
  81. package/package.json +1 -1
  82. package/services/index.d.ts +13 -2
  83. package/services/index.d.ts.map +1 -1
  84. package/services/service-command-tab/c8y-ngx-components-services-service-command-tab.d.ts.map +1 -0
  85. package/services/service-command-tab/index.d.ts +3 -0
  86. package/services/service-command-tab/index.d.ts.map +1 -0
  87. package/services/service-command-tab/service-command-tab.component.d.ts +12 -0
  88. package/services/service-command-tab/service-command-tab.component.d.ts.map +1 -0
  89. package/services/service-command-tab/service-command.feature.d.ts +3 -0
  90. package/services/service-command-tab/service-command.feature.d.ts.map +1 -0
  91. package/services/services-device-tab/index.d.ts +8 -2
  92. package/services/services-device-tab/index.d.ts.map +1 -1
  93. package/services/services-device-tab/services-device-tab.component.d.ts +2 -2
  94. package/services/services-device-tab/services-device-tab.component.d.ts.map +1 -1
  95. package/services/services-device-tab/services.breadcrumb-factory.d.ts.map +1 -1
  96. package/services/services.module.d.ts.map +1 -1
  97. package/services/shared/c8y-ngx-components-services-shared.d.ts.map +1 -0
  98. package/services/shared/index.d.ts +3 -0
  99. package/services/shared/index.d.ts.map +1 -0
  100. package/services/{services-device-tab → shared}/service-command.service.d.ts +10 -7
  101. package/services/shared/service-command.service.d.ts.map +1 -0
  102. package/services/shared/services.model.d.ts +31 -0
  103. package/services/shared/services.model.d.ts.map +1 -0
  104. package/esm2022/services/services-device-tab/service-command.service.mjs +0 -113
  105. package/esm2022/services/services-device-tab/service-device-tab.model.mjs +0 -2
  106. package/services/services-device-tab/service-command.service.d.ts.map +0 -1
  107. package/services/services-device-tab/service-device-tab.model.d.ts +0 -11
  108. package/services/services-device-tab/service-device-tab.model.d.ts.map +0 -1
@@ -1,12 +1,13 @@
1
- import { Component, forwardRef, ViewChild } from '@angular/core';
1
+ import { Component, forwardRef, input, ViewChild } from '@angular/core';
2
2
  import { ActivatedRoute } from '@angular/router';
3
- import { gettext, OperationRealtimeService, PRODUCT_EXPERIENCE_EVENT_SOURCE } from '@c8y/ngx-components';
3
+ import { CoreModule, gettext, OperationRealtimeService, PRODUCT_EXPERIENCE_EVENT_SOURCE } from '@c8y/ngx-components';
4
4
  import { SINGLE_OPERATION_EVENT_DEVICE_TAB, SINGLE_OPERATION_EVENT_OVERVIEW } from '@c8y/ngx-components/operations/product-experience';
5
5
  import { OPERATION_STATUS_OPTIONS_MAP } from '@c8y/ngx-components/operations/shared';
6
- import { StatusFilterComponent } from '@c8y/ngx-components/operations/status-filter';
6
+ import { StatusFilterComponent, StatusFilterModule } from '@c8y/ngx-components/operations/status-filter';
7
7
  import { flatten } from 'lodash-es';
8
8
  import { BehaviorSubject, combineLatest, pipe } from 'rxjs';
9
9
  import { map, shareReplay, switchMap, tap } from 'rxjs/operators';
10
+ import { OperationsListItemComponent } from './operations-list-item.component';
10
11
  import { OperationsListService } from './operations-list.service';
11
12
  import * as i0 from "@angular/core";
12
13
  import * as i1 from "@c8y/ngx-components";
@@ -14,12 +15,13 @@ import * as i2 from "./operations-list.service";
14
15
  import * as i3 from "@angular/router";
15
16
  import * as i4 from "@angular/common";
16
17
  import * as i5 from "@c8y/ngx-components/operations/status-filter";
17
- import * as i6 from "./operations-list-item.component";
18
18
  export class OperationsListComponent {
19
19
  constructor(realtime, operationsListService, route) {
20
20
  this.realtime = realtime;
21
21
  this.operationsListService = operationsListService;
22
22
  this.route = route;
23
+ this.fragmentType = input();
24
+ this.readOnlyItems = input(false);
23
25
  this.deviceId = this.route.snapshot.parent.data.contextData?.id;
24
26
  this.OPERATION_STATUS_OPTIONS_MAP = OPERATION_STATUS_OPTIONS_MAP;
25
27
  this.refreshLoading = false;
@@ -61,32 +63,35 @@ export class OperationsListComponent {
61
63
  return this.getOperations(status);
62
64
  }
63
65
  getOperations(filter) {
64
- const queryFilter = this.deviceId ? { ...filter, deviceId: this.deviceId } : filter;
66
+ let queryFilter = this.deviceId ? { ...filter, deviceId: this.deviceId } : filter;
67
+ if (this.fragmentType()) {
68
+ queryFilter = { ...queryFilter, fragmentType: this.fragmentType() };
69
+ }
65
70
  return this.operationsListService.getOperations(queryFilter);
66
71
  }
67
72
  compareOperations(operationA, operationB) {
68
73
  return (new Date(operationA.creationTime).getTime() - new Date(operationB.creationTime).getTime());
69
74
  }
70
75
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListComponent, deps: [{ token: i1.OperationRealtimeService }, { token: i2.OperationsListService }, { token: i3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
71
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: OperationsListComponent, selector: "c8y-operations-list", providers: [
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.9", type: OperationsListComponent, isStandalone: true, selector: "c8y-operations-list", inputs: { fragmentType: { classPropertyName: "fragmentType", publicName: "fragmentType", isSignal: true, isRequired: false, transformFunction: null }, readOnlyItems: { classPropertyName: "readOnlyItems", publicName: "readOnlyItems", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
72
77
  OperationRealtimeService,
73
78
  {
74
79
  provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,
75
80
  useExisting: forwardRef(() => OperationsListComponent)
76
81
  }
77
- ], viewQueries: [{ propertyName: "statusFilter", first: true, predicate: ["statusFilter"], descendants: true, static: true }], ngImport: i0, template: "<c8y-title>{{ title | translate }}</c8y-title>\n\n<c8y-breadcrumb *ngIf=\"showOverviewBreadcrumbs\">\n <c8y-breadcrumb-item\n [icon]=\"'c8y-overviews'\"\n [label]=\"'Overviews' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Device Control' | translate\"\n [path]=\"'devicecontrol/single'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Single operations' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item\n [placement]=\"'left'\"\n itemClass=\"navbar-form\"\n>\n <c8y-status-filter\n #statusFilter\n [options]=\"OPERATION_STATUS_OPTIONS_MAP\"\n (onFilterChanged)=\"statusFilter$.next($event)\"\n c8yProductExperience\n inherit\n ></c8y-status-filter>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <c8y-realtime-btn [service]=\"realtime\"></c8y-realtime-btn>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link d-flex a-i-center\"\n title=\"{{ 'Reload' | translate }}\"\n (click)=\"reload$.next()\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': refreshLoading }\"\n ></i>\n <span class=\"text-truncate\">\n {{ 'Reload' | translate }}\n </span>\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/monitoring-and-controlling-devices/#to-view-single-operations\"\n></c8y-help>\n\n<!-- Empty state -->\n<c8y-ui-empty-state\n [icon]=\"'c8y-energy'\"\n [title]=\"'No items to display.' | translate\"\n [subtitle]=\"'Operations will be displayed here.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && !(statusFilter$ | async)\"\n></c8y-ui-empty-state>\n<!-- No results empty state -->\n<c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No results to display.' | translate\"\n [subtitle]=\"'Adjust or reset the filter.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && (statusFilter$ | async)\"\n>\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Reset filter' | translate }}\"\n type=\"button\"\n (click)=\"statusFilter.reset()\"\n translate\n >\n Reset filter\n </button>\n</c8y-ui-empty-state>\n\n<!-- Detailed list of operations + load more button -->\n<c8y-list-group class=\"m-b-24\">\n <div\n class=\"page-sticky-header c8y-list__item c8y-list__item--double-actions hidden-xs\"\n *ngIf=\"(operations$ | async)?.data.length\"\n >\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__icon\">\n <i class=\"p-l-24\"></i>\n </div>\n <div class=\"c8y-list__item__body text-truncate-wrap\">\n <div class=\"content-flex-57\">\n <div class=\"col-5\">\n {{ 'Operation' | translate }}\n </div>\n <div\n class=\"flex-grow\"\n *ngIf=\"!deviceId\"\n >\n {{ 'Device' | translate }}\n </div>\n <div class=\"col-4\">\n {{ 'Date created' | translate }}\n </div>\n </div>\n </div>\n <div class=\"c8y-list__item__actions\"></div>\n </div>\n </div>\n <div\n class=\"d-contents\"\n *c8yFor=\"\n let op of operations$ | async;\n let i = index;\n realtime: realtime;\n realtimeOptions: { entityOrId: deviceId, removeOnUpdate: true, insertOnUpdate: true };\n comparator: compareOperations.bind(this);\n loadMore: 'auto';\n pipe: operationsFilterPipe\n \"\n >\n <c8y-operations-list-item\n class=\"d-contents\"\n [operation]=\"op\"\n [isSmartRulesMicroserviceAvailable]=\"isSmartRulesMicroserviceAvailable\"\n (reload)=\"reload$.next()\"\n c8yProductExperience\n inherit\n ></c8y-operations-list-item>\n </div>\n</c8y-list-group>\n", dependencies: [{ kind: "component", type: i1.ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "component", type: i1.BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: i1.BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "component", type: i1.EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: i1.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ForOfDirective, selector: "[c8yFor]", inputs: ["c8yForOf", "c8yForLoadMore", "c8yForPipe", "c8yForNotFound", "c8yForMaxIterations", "c8yForLoadingTemplate", "c8yForLoadNextLabel", "c8yForLoadingLabel", "c8yForRealtime", "c8yForRealtimeOptions", "c8yForComparator", "c8yForEnableVirtualScroll", "c8yForVirtualScrollElementSize", "c8yForVirtualScrollStrategy", "c8yForVirtualScrollContainerHeight"], outputs: ["c8yForCount", "c8yForChange", "c8yForLoadMoreComponent"] }, { kind: "component", type: i1.TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "component", type: i1.ListGroupComponent, selector: "c8y-list-group" }, { kind: "directive", type: i1.ProductExperienceDirective, selector: "[c8yProductExperience]", inputs: ["actionName", "actionData", "inherit", "suppressDataOverriding"] }, { kind: "component", type: i1.HelpComponent, selector: "c8y-help", inputs: ["src", "isCollapsed", "priority", "icon"] }, { kind: "component", type: i1.RealtimeButtonComponent, selector: "c8y-realtime-btn", inputs: ["service", "label", "title", "disabled"], outputs: ["onToggle"] }, { kind: "component", type: i5.StatusFilterComponent, selector: "c8y-status-filter", inputs: ["options", "multiple", "small"], outputs: ["onFilterChanged"] }, { kind: "component", type: i6.OperationsListItemComponent, selector: "c8y-operations-list-item", inputs: ["operation", "collapsed", "readOnly", "noExpandToggle", "isSmartRulesMicroserviceAvailable"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
82
+ ], viewQueries: [{ propertyName: "statusFilter", first: true, predicate: ["statusFilter"], descendants: true, static: true }], ngImport: i0, template: "<c8y-title>{{ title | translate }}</c8y-title>\n\n<c8y-breadcrumb *ngIf=\"showOverviewBreadcrumbs\">\n <c8y-breadcrumb-item\n [icon]=\"'c8y-overviews'\"\n [label]=\"'Overviews' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Device Control' | translate\"\n [path]=\"'devicecontrol/single'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Single operations' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item\n [placement]=\"'left'\"\n itemClass=\"navbar-form\"\n>\n <c8y-status-filter\n #statusFilter\n [options]=\"OPERATION_STATUS_OPTIONS_MAP\"\n (onFilterChanged)=\"statusFilter$.next($event)\"\n c8yProductExperience\n inherit\n ></c8y-status-filter>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <c8y-realtime-btn [service]=\"realtime\"></c8y-realtime-btn>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link d-flex a-i-center\"\n title=\"{{ 'Reload' | translate }}\"\n (click)=\"reload$.next()\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': refreshLoading }\"\n ></i>\n <span class=\"text-truncate\">\n {{ 'Reload' | translate }}\n </span>\n </button>\n</c8y-action-bar-item>\n\n<ng-content select=\"c8y-help\">\n <c8y-help\n src=\"/docs/device-management-application/monitoring-and-controlling-devices/#to-view-single-operations\"\n ></c8y-help>\n</ng-content>\n\n<!-- Empty state -->\n<c8y-ui-empty-state\n [icon]=\"'c8y-energy'\"\n [title]=\"'No items to display.' | translate\"\n [subtitle]=\"'Operations will be displayed here.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && !(statusFilter$ | async)\"\n></c8y-ui-empty-state>\n<!-- No results empty state -->\n<c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No results to display.' | translate\"\n [subtitle]=\"'Adjust or reset the filter.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && (statusFilter$ | async)\"\n>\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Reset filter' | translate }}\"\n type=\"button\"\n (click)=\"statusFilter.reset()\"\n translate\n >\n Reset filter\n </button>\n</c8y-ui-empty-state>\n\n<!-- Detailed list of operations + load more button -->\n<c8y-list-group class=\"m-b-24\">\n <div\n class=\"page-sticky-header c8y-list__item c8y-list__item--double-actions hidden-xs\"\n *ngIf=\"(operations$ | async)?.data.length\"\n >\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__icon\">\n <i class=\"p-l-24\"></i>\n </div>\n <div class=\"c8y-list__item__body text-truncate-wrap\">\n <div class=\"content-flex-57\">\n <div class=\"col-5\">\n {{ 'Operation' | translate }}\n </div>\n <div\n class=\"flex-grow\"\n *ngIf=\"!deviceId\"\n >\n {{ 'Device' | translate }}\n </div>\n <div class=\"col-4\">\n {{ 'Date created' | translate }}\n </div>\n </div>\n </div>\n <div class=\"c8y-list__item__actions\"></div>\n </div>\n </div>\n <div\n class=\"d-contents\"\n *c8yFor=\"\n let op of operations$ | async;\n let i = index;\n realtime: realtime;\n realtimeOptions: { entityOrId: deviceId, removeOnUpdate: true, insertOnUpdate: true };\n comparator: compareOperations.bind(this);\n loadMore: 'auto';\n pipe: operationsFilterPipe\n \"\n >\n <c8y-operations-list-item\n class=\"d-contents\"\n [operation]=\"op\"\n [readOnly]=\"readOnlyItems()\"\n [isSmartRulesMicroserviceAvailable]=\"isSmartRulesMicroserviceAvailable\"\n (reload)=\"reload$.next()\"\n c8yProductExperience\n inherit\n ></c8y-operations-list-item>\n </div>\n</c8y-list-group>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "component", type: i1.ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "component", type: i1.BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: i1.BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "component", type: i1.EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: i1.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "directive", type: i1.ForOfDirective, selector: "[c8yFor]", inputs: ["c8yForOf", "c8yForLoadMore", "c8yForPipe", "c8yForNotFound", "c8yForMaxIterations", "c8yForLoadingTemplate", "c8yForLoadNextLabel", "c8yForLoadingLabel", "c8yForRealtime", "c8yForRealtimeOptions", "c8yForComparator", "c8yForEnableVirtualScroll", "c8yForVirtualScrollElementSize", "c8yForVirtualScrollStrategy", "c8yForVirtualScrollContainerHeight"], outputs: ["c8yForCount", "c8yForChange", "c8yForLoadMoreComponent"] }, { kind: "component", type: i1.TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "component", type: i1.ListGroupComponent, selector: "c8y-list-group" }, { kind: "directive", type: i1.ProductExperienceDirective, selector: "[c8yProductExperience]", inputs: ["actionName", "actionData", "inherit", "suppressDataOverriding"] }, { kind: "component", type: i1.HelpComponent, selector: "c8y-help", inputs: ["src", "isCollapsed", "priority", "icon"] }, { kind: "component", type: i1.RealtimeButtonComponent, selector: "c8y-realtime-btn", inputs: ["service", "label", "title", "disabled"], outputs: ["onToggle"] }, { kind: "ngmodule", type: StatusFilterModule }, { kind: "component", type: i5.StatusFilterComponent, selector: "c8y-status-filter", inputs: ["options", "multiple", "small"], outputs: ["onFilterChanged"] }, { kind: "component", type: OperationsListItemComponent, selector: "c8y-operations-list-item", inputs: ["operation", "collapsed", "readOnly", "noExpandToggle", "isSmartRulesMicroserviceAvailable"] }] }); }
78
83
  }
79
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListComponent, decorators: [{
80
85
  type: Component,
81
- args: [{ selector: 'c8y-operations-list', providers: [
86
+ args: [{ selector: 'c8y-operations-list', standalone: true, imports: [CoreModule, StatusFilterModule, OperationsListItemComponent], providers: [
82
87
  OperationRealtimeService,
83
88
  {
84
89
  provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,
85
90
  useExisting: forwardRef(() => OperationsListComponent)
86
91
  }
87
- ], template: "<c8y-title>{{ title | translate }}</c8y-title>\n\n<c8y-breadcrumb *ngIf=\"showOverviewBreadcrumbs\">\n <c8y-breadcrumb-item\n [icon]=\"'c8y-overviews'\"\n [label]=\"'Overviews' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Device Control' | translate\"\n [path]=\"'devicecontrol/single'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Single operations' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item\n [placement]=\"'left'\"\n itemClass=\"navbar-form\"\n>\n <c8y-status-filter\n #statusFilter\n [options]=\"OPERATION_STATUS_OPTIONS_MAP\"\n (onFilterChanged)=\"statusFilter$.next($event)\"\n c8yProductExperience\n inherit\n ></c8y-status-filter>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <c8y-realtime-btn [service]=\"realtime\"></c8y-realtime-btn>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link d-flex a-i-center\"\n title=\"{{ 'Reload' | translate }}\"\n (click)=\"reload$.next()\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': refreshLoading }\"\n ></i>\n <span class=\"text-truncate\">\n {{ 'Reload' | translate }}\n </span>\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/monitoring-and-controlling-devices/#to-view-single-operations\"\n></c8y-help>\n\n<!-- Empty state -->\n<c8y-ui-empty-state\n [icon]=\"'c8y-energy'\"\n [title]=\"'No items to display.' | translate\"\n [subtitle]=\"'Operations will be displayed here.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && !(statusFilter$ | async)\"\n></c8y-ui-empty-state>\n<!-- No results empty state -->\n<c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No results to display.' | translate\"\n [subtitle]=\"'Adjust or reset the filter.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && (statusFilter$ | async)\"\n>\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Reset filter' | translate }}\"\n type=\"button\"\n (click)=\"statusFilter.reset()\"\n translate\n >\n Reset filter\n </button>\n</c8y-ui-empty-state>\n\n<!-- Detailed list of operations + load more button -->\n<c8y-list-group class=\"m-b-24\">\n <div\n class=\"page-sticky-header c8y-list__item c8y-list__item--double-actions hidden-xs\"\n *ngIf=\"(operations$ | async)?.data.length\"\n >\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__icon\">\n <i class=\"p-l-24\"></i>\n </div>\n <div class=\"c8y-list__item__body text-truncate-wrap\">\n <div class=\"content-flex-57\">\n <div class=\"col-5\">\n {{ 'Operation' | translate }}\n </div>\n <div\n class=\"flex-grow\"\n *ngIf=\"!deviceId\"\n >\n {{ 'Device' | translate }}\n </div>\n <div class=\"col-4\">\n {{ 'Date created' | translate }}\n </div>\n </div>\n </div>\n <div class=\"c8y-list__item__actions\"></div>\n </div>\n </div>\n <div\n class=\"d-contents\"\n *c8yFor=\"\n let op of operations$ | async;\n let i = index;\n realtime: realtime;\n realtimeOptions: { entityOrId: deviceId, removeOnUpdate: true, insertOnUpdate: true };\n comparator: compareOperations.bind(this);\n loadMore: 'auto';\n pipe: operationsFilterPipe\n \"\n >\n <c8y-operations-list-item\n class=\"d-contents\"\n [operation]=\"op\"\n [isSmartRulesMicroserviceAvailable]=\"isSmartRulesMicroserviceAvailable\"\n (reload)=\"reload$.next()\"\n c8yProductExperience\n inherit\n ></c8y-operations-list-item>\n </div>\n</c8y-list-group>\n" }]
92
+ ], template: "<c8y-title>{{ title | translate }}</c8y-title>\n\n<c8y-breadcrumb *ngIf=\"showOverviewBreadcrumbs\">\n <c8y-breadcrumb-item\n [icon]=\"'c8y-overviews'\"\n [label]=\"'Overviews' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Device Control' | translate\"\n [path]=\"'devicecontrol/single'\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-control'\"\n [label]=\"'Single operations' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item\n [placement]=\"'left'\"\n itemClass=\"navbar-form\"\n>\n <c8y-status-filter\n #statusFilter\n [options]=\"OPERATION_STATUS_OPTIONS_MAP\"\n (onFilterChanged)=\"statusFilter$.next($event)\"\n c8yProductExperience\n inherit\n ></c8y-status-filter>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <c8y-realtime-btn [service]=\"realtime\"></c8y-realtime-btn>\n</c8y-action-bar-item>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link d-flex a-i-center\"\n title=\"{{ 'Reload' | translate }}\"\n (click)=\"reload$.next()\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': refreshLoading }\"\n ></i>\n <span class=\"text-truncate\">\n {{ 'Reload' | translate }}\n </span>\n </button>\n</c8y-action-bar-item>\n\n<ng-content select=\"c8y-help\">\n <c8y-help\n src=\"/docs/device-management-application/monitoring-and-controlling-devices/#to-view-single-operations\"\n ></c8y-help>\n</ng-content>\n\n<!-- Empty state -->\n<c8y-ui-empty-state\n [icon]=\"'c8y-energy'\"\n [title]=\"'No items to display.' | translate\"\n [subtitle]=\"'Operations will be displayed here.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && !(statusFilter$ | async)\"\n></c8y-ui-empty-state>\n<!-- No results empty state -->\n<c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No results to display.' | translate\"\n [subtitle]=\"'Adjust or reset the filter.' | translate\"\n *ngIf=\"(operations$ | async)?.data.length === 0 && (statusFilter$ | async)\"\n>\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Reset filter' | translate }}\"\n type=\"button\"\n (click)=\"statusFilter.reset()\"\n translate\n >\n Reset filter\n </button>\n</c8y-ui-empty-state>\n\n<!-- Detailed list of operations + load more button -->\n<c8y-list-group class=\"m-b-24\">\n <div\n class=\"page-sticky-header c8y-list__item c8y-list__item--double-actions hidden-xs\"\n *ngIf=\"(operations$ | async)?.data.length\"\n >\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__icon\">\n <i class=\"p-l-24\"></i>\n </div>\n <div class=\"c8y-list__item__body text-truncate-wrap\">\n <div class=\"content-flex-57\">\n <div class=\"col-5\">\n {{ 'Operation' | translate }}\n </div>\n <div\n class=\"flex-grow\"\n *ngIf=\"!deviceId\"\n >\n {{ 'Device' | translate }}\n </div>\n <div class=\"col-4\">\n {{ 'Date created' | translate }}\n </div>\n </div>\n </div>\n <div class=\"c8y-list__item__actions\"></div>\n </div>\n </div>\n <div\n class=\"d-contents\"\n *c8yFor=\"\n let op of operations$ | async;\n let i = index;\n realtime: realtime;\n realtimeOptions: { entityOrId: deviceId, removeOnUpdate: true, insertOnUpdate: true };\n comparator: compareOperations.bind(this);\n loadMore: 'auto';\n pipe: operationsFilterPipe\n \"\n >\n <c8y-operations-list-item\n class=\"d-contents\"\n [operation]=\"op\"\n [readOnly]=\"readOnlyItems()\"\n [isSmartRulesMicroserviceAvailable]=\"isSmartRulesMicroserviceAvailable\"\n (reload)=\"reload$.next()\"\n c8yProductExperience\n inherit\n ></c8y-operations-list-item>\n </div>\n</c8y-list-group>\n" }]
88
93
  }], ctorParameters: () => [{ type: i1.OperationRealtimeService }, { type: i2.OperationsListService }, { type: i3.ActivatedRoute }], propDecorators: { statusFilter: [{
89
94
  type: ViewChild,
90
95
  args: ['statusFilter', { static: true }]
91
96
  }] } });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL29wZXJhdGlvbnMvb3BlcmF0aW9ucy1saXN0L29wZXJhdGlvbnMtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9vcGVyYXRpb25zL29wZXJhdGlvbnMtbGlzdC9vcGVyYXRpb25zLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQ0wsT0FBTyxFQUNQLHdCQUF3QixFQUd4QiwrQkFBK0IsRUFDaEMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUNoQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzNELE9BQU8sRUFHTCw0QkFBNEIsRUFDN0IsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RSxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7O0FBYWxFLE1BQU0sT0FBTyx1QkFBdUI7SUF5Q2xDLFlBQ1MsUUFBa0MsRUFDakMscUJBQTRDLEVBQzVDLEtBQXFCO1FBRnRCLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBQ2pDLDBCQUFxQixH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d0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJT3BlcmF0aW9uLCBJUmVzdWx0TGlzdCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7XG4gIGdldHRleHQsXG4gIE9wZXJhdGlvblJlYWx0aW1lU2VydmljZSxcbiAgUHJvZHVjdEV4cGVyaWVuY2VFdmVudCxcbiAgUHJvZHVjdEV4cGVyaWVuY2VFdmVudFNvdXJjZSxcbiAgUFJPRFVDVF9FWFBFUklFTkNFX0VWRU5UX1NPVVJDRVxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7XG4gIFNJTkdMRV9PUEVSQVRJT05fRVZFTlRfREVWSUNFX1RBQixcbiAgU0lOR0xFX09QRVJBVElPTl9FVkVOVF9PVkVSVklFV1xufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvcHJvZHVjdC1leHBlcmllbmNlJztcbmltcG9ydCB7XG4gIE9wZXJhdGlvblN0YXR1c09wdGlvbixcbiAgT3BlcmF0aW9uU3RhdHVzT3B0aW9uc01hcFNoYXJlZCxcbiAgT1BFUkFUSU9OX1NUQVRVU19PUFRJT05TX01BUFxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvc2hhcmVkJztcbmltcG9ydCB7IFN0YXR1c0ZpbHRlckNvbXBvbmVudCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9zdGF0dXMtZmlsdGVyJztcbmltcG9ydCB7IGZsYXR0ZW4gfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBwaXBlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9wZXJhdGlvbnNMaXN0U2VydmljZSB9IGZyb20gJy4vb3BlcmF0aW9ucy1saXN0LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktb3BlcmF0aW9ucy1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICdvcGVyYXRpb25zLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtcbiAgICBPcGVyYXRpb25SZWFsdGltZVNlcnZpY2UsXG4gICAge1xuICAgICAgcHJvdmlkZTogUFJPRFVDVF9FWFBFUklFTkNFX0VWRU5UX1NPVVJDRSxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE9wZXJhdGlvbnNMaXN0Q29tcG9uZW50KVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBPcGVyYXRpb25zTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIFByb2R1Y3RFeHBlcmllbmNlRXZlbnRTb3VyY2Uge1xuICBkZXZpY2VJZDogc3RyaW5nIHwgbnVtYmVyID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJlbnQuZGF0YS5jb250ZXh0RGF0YT8uaWQ7XG4gIE9QRVJBVElPTl9TVEFUVVNfT1BUSU9OU19NQVA6IE9wZXJhdGlvblN0YXR1c09wdGlvbnNNYXBTaGFyZWQgPSBPUEVSQVRJT05fU1RBVFVTX09QVElPTlNfTUFQO1xuXG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJlZnJlc2hMb2FkaW5nID0gZmFsc2U7XG4gIGlzU21hcnRSdWxlc01pY3Jvc2VydmljZUF2YWlsYWJsZSA9IGZhbHNlO1xuICBzaG93T3ZlcnZpZXdCcmVhZGNydW1icyA9IGZhbHNlO1xuICBzdGF0dXNGaWx0ZXIkOiBCZWhhdmlvclN1YmplY3Q8T3BlcmF0aW9uU3RhdHVzT3B0aW9uW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcmVsb2FkJDogQmVoYXZpb3JTdWJqZWN0PHZvaWQ+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgQFZpZXdDaGlsZCgnc3RhdHVzRmlsdGVyJywgeyBzdGF0aWM6IHRydWUgfSkgc3RhdHVzRmlsdGVyOiBTdGF0dXNGaWx0ZXJDb21wb25lbnQ7XG5cbiAgb3BlcmF0aW9ucyQ6IE9ic2VydmFibGU8SVJlc3VsdExpc3Q8SU9wZXJhdGlvbj4+ID0gY29tYmluZUxhdGVzdChcbiAgICB0aGlzLnN0YXR1c0ZpbHRlciQsXG4gICAgdGhpcy5yZWxvYWQkXG4gICkucGlwZShcbiAgICB0YXAoKCkgPT4ge1xuICAgICAgdGhpcy5yZWZyZXNoTG9hZGluZyA9IHRydWU7XG4gICAgfSksXG4gICAgc3dpdGNoTWFwKChbc3RhdHVzRmlsdGVyc10pID0+IHRoaXMuZmlsdGVyKHN0YXR1c0ZpbHRlcnMpKSxcbiAgICB0YXAoKCkgPT4ge1xuICAgICAgdGhpcy5yZWZyZXNoTG9hZGluZyA9IGZhbHNlO1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgb3BlcmF0aW9uc0ZpbHRlclBpcGUgPSBwaXBlKFxuICAgIG1hcCgob3BlcmF0aW9uczogSU9wZXJhdGlvbltdKSA9PiB7XG4gICAgICBjb25zdCBzdGF0dXNGaWx0ZXJzID0gdGhpcy5zdGF0dXNGaWx0ZXIkLmdldFZhbHVlKCk7XG4gICAgICBpZiAoIXN0YXR1c0ZpbHRlcnMgfHwgIXN0YXR1c0ZpbHRlcnMubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiBvcGVyYXRpb25zO1xuICAgICAgfVxuICAgICAgY29uc3QgYWxsb3dlZFN0YXR1c2VzID0gZmxhdHRlbihzdGF0dXNGaWx0ZXJzLm1hcChzZiA9PiBzZi5zdGF0dXMpKTtcbiAgICAgIHJldHVybiBvcGVyYXRpb25zLmZpbHRlcihvcCA9PiBhbGxvd2VkU3RhdHVzZXMuaW5jbHVkZXMob3Auc3RhdHVzKSk7XG4gICAgfSlcbiAgKTtcblxuICBwcm9kdWN0RXhwZXJpZW5jZUV2ZW50OiBQcm9kdWN0RXhwZXJpZW5jZUV2ZW50ID0ge1xuICAgIGV2ZW50TmFtZTogISF0aGlzLmRldmljZUlkID8gU0lOR0xFX09QRVJBVElPTl9FVkVOVF9ERVZJQ0VfVEFCIDogU0lOR0xFX09QRVJBVElPTl9FVkVOVF9PVkVSVklFV1xuICB9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFsdGltZTogT3BlcmF0aW9uUmVhbHRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgb3BlcmF0aW9uc0xpc3RTZXJ2aWNlOiBPcGVyYXRpb25zTGlzdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGVcbiAgKSB7XG4gICAgdGhpcy50aXRsZSA9IHRoaXMucm91dGUuc25hcHNob3QucGFyZW50LmRhdGEuY29udGV4dERhdGFcbiAgICAgID8gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJlbnQuZGF0YS5jb250ZXh0RGF0YS5uYW1lXG4gICAgICA6IGdldHRleHQoJ1NpbmdsZSBvcGVyYXRpb25zJyk7XG4gICAgdGhpcy5zaG93T3ZlcnZpZXdCcmVhZGNydW1icyA9ICF0aGlzLmRldmljZUlkO1xuICB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pc1NtYXJ0UnVsZXNNaWNyb3NlcnZpY2VBdmFpbGFibGUgPVxuICAgICAgYXdhaXQgdGhpcy5vcGVyYXRpb25zTGlzdFNlcnZpY2UuaXNTbWFydFJ1bGVzTWljcm9zZXJ2aWNlQXZhaWxhYmxlKCk7XG4gIH1cblxuICBmaWx0ZXIoc3RhdHVzRmlsdGVyczogT3BlcmF0aW9uU3RhdHVzT3B0aW9uW10pIHtcbiAgICBjb25zdCBzdGF0dXMgPVxuICAgICAgc3RhdHVzRmlsdGVycyAmJiBzdGF0dXNGaWx0ZXJzLmxlbmd0aCA+IDBcbiAgICAgICAgPyB7XG4gICAgICAgICAgICBzdGF0dXM6IGZsYXR0ZW4oc3RhdHVzRmlsdGVycy5tYXAoc3RhdHVzRmlsdGVyID0+IHN0YXR1c0ZpbHRlci5zdGF0dXMpKVxuICAgICAgICAgIH1cbiAgICAgICAgOiB7fTtcblxuICAgIHJldHVybiB0aGlzLmdldE9wZXJhdGlvbnMoc3RhdHVzKTtcbiAgfVxuXG4gIGdldE9wZXJhdGlvbnMoZmlsdGVyPykge1xuICAgIGNvbnN0IHF1ZXJ5RmlsdGVyID0gdGhpcy5kZXZpY2VJZCA/IHsgLi4uZmlsdGVyLCBkZXZpY2VJZDogdGhpcy5kZXZpY2VJZCB9IDogZmlsdGVyO1xuICAgIHJldHVybiB0aGlzLm9wZXJhdGlvbnNMaXN0U2VydmljZS5nZXRPcGVyYXRpb25zKHF1ZXJ5RmlsdGVyKTtcbiAgfVxuXG4gIGNvbXBhcmVPcGVyYXRpb25zKG9wZXJhdGlvbkE6IElPcGVyYXRpb24sIG9wZXJhdGlvbkI6IElPcGVyYXRpb24pOiBudW1iZXIge1xuICAgIHJldHVybiAoXG4gICAgICBuZXcgRGF0ZShvcGVyYXRpb25BLmNyZWF0aW9uVGltZSkuZ2V0VGltZSgpIC0gbmV3IERhdGUob3BlcmF0aW9uQi5jcmVhdGlvblRpbWUpLmdldFRpbWUoKVxuICAgICk7XG4gIH1cbn1cbiIsIjxjOHktdGl0bGU+e3sgdGl0bGUgfCB0cmFuc2xhdGUgfX08L2M4eS10aXRsZT5cblxuPGM4eS1icmVhZGNydW1iICpuZ0lmPVwic2hvd092ZXJ2aWV3QnJlYWRjcnVtYnNcIj5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBbaWNvbl09XCInYzh5LW92ZXJ2aWV3cydcIlxuICAgIFtsYWJlbF09XCInT3ZlcnZpZXdzJyB8IHRyYW5zbGF0ZVwiXG4gID48L2M4eS1icmVhZGNydW1iLWl0ZW0+XG4gIDxjOHktYnJlYWRjcnVtYi1pdGVtXG4gICAgW2ljb25dPVwiJ2M4eS1kZXZpY2UtY29udHJvbCdcIlxuICAgIFtsYWJlbF09XCInRGV2aWNlIENvbnRyb2wnIHwgdHJhbnNsYXRlXCJcbiAgICBbcGF0aF09XCInZGV2aWNlY29udHJvbC9zaW5nbGUnXCJcbiAgPjwvYzh5LWJyZWFkY3J1bWItaXRlbT5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBbaWNvbl09XCInYzh5LWRldmljZS1jb250cm9sJ1wiXG4gICAgW2xhYmVsXT1cIidTaW5nbGUgb3BlcmF0aW9ucycgfCB0cmFuc2xhdGVcIlxuICA+PC9jOHktYnJlYWRjcnVtYi1pdGVtPlxuPC9jOHktYnJlYWRjcnVtYj5cblxuPGM4eS1hY3Rpb24tYmFyLWl0ZW1cbiAgW3BsYWNlbWVudF09XCInbGVmdCdcIlxuICBpdGVtQ2xhc3M9XCJuYXZiYXItZm9ybVwiXG4+XG4gIDxjOHktc3RhdHVzLWZpbHRlclxuICAgICNzdGF0dXNGaWx0ZXJcbiAgICBbb3B0aW9uc109XCJPUEVSQVRJT05fU1RBVFVTX09QVElPTlNfTUFQXCJcbiAgICAob25GaWx0ZXJDaGFuZ2VkKT1cInN0YXR1c0ZpbHRlciQubmV4dCgkZXZlbnQpXCJcbiAgICBjOHlQcm9kdWN0RXhwZXJpZW5jZVxuICAgIGluaGVyaXRcbiAgPjwvYzh5LXN0YXR1cy1maWx0ZXI+XG48L2M4eS1hY3Rpb24tYmFyLWl0ZW0+XG5cbjxjOHktYWN0aW9uLWJhci1pdGVtIFtwbGFjZW1lbnRdPVwiJ3JpZ2h0J1wiPlxuICA8Yzh5LXJlYWx0aW1lLWJ0biBbc2VydmljZV09XCJyZWFsdGltZVwiPjwvYzh5LXJlYWx0aW1lLWJ0bj5cbjwvYzh5LWFjdGlvbi1iYXItaXRlbT5cblxuPGM4eS1hY3Rpb24tYmFyLWl0ZW0gW3BsYWNlbWVudF09XCIncmlnaHQnXCI+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGluayBkLWZsZXggYS1pLWNlbnRlclwiXG4gICAgdGl0bGU9XCJ7eyAnUmVsb2FkJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgKGNsaWNrKT1cInJlbG9hZCQubmV4dCgpXCJcbiAgPlxuICAgIDxpXG4gICAgICBjbGFzcz1cIm0tci00XCJcbiAgICAgIGM4eUljb249XCJyZWZyZXNoXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2ljb24tc3Bpbic6IHJlZnJlc2hMb2FkaW5nIH1cIlxuICAgID48L2k+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXRydW5jYXRlXCI+XG4gICAgICB7eyAnUmVsb2FkJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvc3Bhbj5cbiAgPC9idXR0b24+XG48L2M4eS1hY3Rpb24tYmFyLWl0ZW0+XG5cbjxjOHktaGVscFxuICBzcmM9XCIvZG9jcy9kZXZpY2UtbWFuYWdlbWVudC1hcHBsaWNhdGlvbi9tb25pdG9yaW5nLWFuZC1jb250cm9sbGluZy1kZXZpY2VzLyN0by12aWV3LXNpbmdsZS1vcGVyYXRpb25zXCJcbj48L2M4eS1oZWxwPlxuXG48IS0tIEVtcHR5IHN0YXRlICAtLT5cbjxjOHktdWktZW1wdHktc3RhdGVcbiAgW2ljb25dPVwiJ2M4eS1lbmVyZ3knXCJcbiAgW3RpdGxlXT1cIidObyBpdGVtcyB0byBkaXNwbGF5LicgfCB0cmFuc2xhdGVcIlxuICBbc3VidGl0bGVdPVwiJ09wZXJhdGlvbnMgd2lsbCBiZSBkaXNwbGF5ZWQgaGVyZS4nIHwgdHJhbnNsYXRlXCJcbiAgKm5nSWY9XCIob3BlcmF0aW9ucyQgfCBhc3luYyk/LmRhdGEubGVuZ3RoID09PSAwICYmICEoc3RhdHVzRmlsdGVyJCB8IGFzeW5jKVwiXG4+PC9jOHktdWktZW1wdHktc3RhdGU+XG48IS0tIE5vIHJlc3VsdHMgZW1wdHkgc3RhdGUgLS0+XG48Yzh5LXVpLWVtcHR5LXN0YXRlXG4gIFtpY29uXT1cIidzZWFyY2gnXCJcbiAgW3RpdGxlXT1cIidObyByZXN1bHRzIHRvIGRpc3BsYXkuJyB8IHRyYW5zbGF0ZVwiXG4gIFtzdWJ0aXRsZV09XCInQWRqdXN0IG9yIHJlc2V0IHRoZSBmaWx0ZXIuJyB8IHRyYW5zbGF0ZVwiXG4gICpuZ0lmPVwiKG9wZXJhdGlvbnMkIHwgYXN5bmMpPy5kYXRhLmxlbmd0aCA9PT0gMCAmJiAoc3RhdHVzRmlsdGVyJCB8IGFzeW5jKVwiXG4+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXG4gICAgdGl0bGU9XCJ7eyAnUmVzZXQgZmlsdGVyJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgKGNsaWNrKT1cInN0YXR1c0ZpbHRlci5yZXNldCgpXCJcbiAgICB0cmFuc2xhdGVcbiAgPlxuICAgIFJlc2V0IGZpbHRlclxuICA8L2J1dHRvbj5cbjwvYzh5LXVpLWVtcHR5LXN0YXRlPlxuXG48IS0tIERldGFpbGVkIGxpc3Qgb2Ygb3BlcmF0aW9ucyArIGxvYWQgbW9yZSBidXR0b24gLS0+XG48Yzh5LWxpc3QtZ3JvdXAgY2xhc3M9XCJtLWItMjRcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwicGFnZS1zdGlja3ktaGVhZGVyIGM4eS1saXN0X19pdGVtIGM4eS1saXN0X19pdGVtLS1kb3VibGUtYWN0aW9ucyBoaWRkZW4teHNcIlxuICAgICpuZ0lmPVwiKG9wZXJhdGlvbnMkIHwgYXN5bmMpPy5kYXRhLmxlbmd0aFwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiYzh5LWxpc3RfX2l0ZW1fX2Jsb2NrXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYzh5LWxpc3RfX2l0ZW1fX2ljb25cIj5cbiAgICAgICAgPGkgY2xhc3M9XCJwLWwtMjRcIj48L2k+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjOHktbGlzdF9faXRlbV9fYm9keSB0ZXh0LXRydW5jYXRlLXdyYXBcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtZmxleC01N1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNVwiPlxuICAgICAgICAgICAge3sgJ09wZXJhdGlvbicgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImZsZXgtZ3Jvd1wiXG4gICAgICAgICAgICAqbmdJZj1cIiFkZXZpY2VJZFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgJ0RldmljZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTRcIj5cbiAgICAgICAgICAgIHt7ICdEYXRlIGNyZWF0ZWQnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYzh5LWxpc3RfX2l0ZW1fX2FjdGlvbnNcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cImQtY29udGVudHNcIlxuICAgICpjOHlGb3I9XCJcbiAgICAgIGxldCBvcCBvZiBvcGVyYXRpb25zJCB8IGFzeW5jO1xuICAgICAgbGV0IGkgPSBpbmRleDtcbiAgICAgIHJlYWx0aW1lOiByZWFsdGltZTtcbiAgICAgIHJlYWx0aW1lT3B0aW9uczogeyBlbnRpdHlPcklkOiBkZXZpY2VJZCwgcmVtb3ZlT25VcGRhdGU6IHRydWUsIGluc2VydE9uVXBkYXRlOiB0cnVlIH07XG4gICAgICBjb21wYXJhdG9yOiBjb21wYXJlT3BlcmF0aW9ucy5iaW5kKHRoaXMpO1xuICAgICAgbG9hZE1vcmU6ICdhdXRvJztcbiAgICAgIHBpcGU6IG9wZXJhdGlvbnNGaWx0ZXJQaXBlXG4gICAgXCJcbiAgPlxuICAgIDxjOHktb3BlcmF0aW9ucy1saXN0LWl0ZW1cbiAgICAgIGNsYXNzPVwiZC1jb250ZW50c1wiXG4gICAgICBbb3BlcmF0aW9uXT1cIm9wXCJcbiAgICAgIFtpc1NtYXJ0UnVsZXNNaWNyb3NlcnZpY2VBdmFpbGFibGVdPVwiaXNTbWFydFJ1bGVzTWljcm9zZXJ2aWNlQXZhaWxhYmxlXCJcbiAgICAgIChyZWxvYWQpPVwicmVsb2FkJC5uZXh0KClcIlxuICAgICAgYzh5UHJvZHVjdEV4cGVyaWVuY2VcbiAgICAgIGluaGVyaXRcbiAgICA+PC9jOHktb3BlcmF0aW9ucy1saXN0LWl0ZW0+XG4gIDwvZGl2PlxuPC9jOHktbGlzdC1ncm91cD5cbiJdfQ==
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL29wZXJhdGlvbnMvb3BlcmF0aW9ucy1saXN0L29wZXJhdGlvbnMtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9vcGVyYXRpb25zL29wZXJhdGlvbnMtbGlzdC9vcGVyYXRpb25zLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFakQsT0FBTyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBQ1Asd0JBQXdCLEVBQ3hCLCtCQUErQixFQUdoQyxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFDTCxpQ0FBaUMsRUFDakMsK0JBQStCLEVBQ2hDLE1BQU0sbURBQW1ELENBQUM7QUFDM0QsT0FBTyxFQUNMLDRCQUE0QixFQUc3QixNQUFNLHVDQUF1QyxDQUFDO0FBQy9DLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ25CLE1BQU0sOENBQThDLENBQUM7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7O0FBZWxFLE1BQU0sT0FBTyx1QkFBdUI7SUEyQ2xD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aTlIQXVJQSwyQ0RyR1ksVUFBVSxncUVBQUUsa0JBQWtCLDZMQUFFLDJCQUEyQjs7MkZBUzFELHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDRSxxQkFBcUIsY0FDbkIsSUFBSSxXQUVQLENBQUMsVUFBVSxFQUFFLGtCQUFrQixFQUFFLDJCQUEyQixDQUFDLGFBQzNEO3dCQUNULHdCQUF3Qjt3QkFDeEI7NEJBQ0UsT0FBTyxFQUFFLCtCQUErQjs0QkFDeEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLENBQUM7eUJBQ3ZEO3FCQUNGOzhKQWM0QyxZQUFZO3NCQUF4RCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIGlucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IElPcGVyYXRpb24sIElSZXN1bHRMaXN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHtcbiAgQ29yZU1vZHVsZSxcbiAgZ2V0dGV4dCxcbiAgT3BlcmF0aW9uUmVhbHRpbWVTZXJ2aWNlLFxuICBQUk9EVUNUX0VYUEVSSUVOQ0VfRVZFTlRfU09VUkNFLFxuICBQcm9kdWN0RXhwZXJpZW5jZUV2ZW50LFxuICBQcm9kdWN0RXhwZXJpZW5jZUV2ZW50U291cmNlXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHtcbiAgU0lOR0xFX09QRVJBVElPTl9FVkVOVF9ERVZJQ0VfVEFCLFxuICBTSU5HTEVfT1BFUkFUSU9OX0VWRU5UX09WRVJWSUVXXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9wcm9kdWN0LWV4cGVyaWVuY2UnO1xuaW1wb3J0IHtcbiAgT1BFUkFUSU9OX1NUQVRVU19PUFRJT05TX01BUCxcbiAgT3BlcmF0aW9uU3RhdHVzT3B0aW9uLFxuICBPcGVyYXRpb25TdGF0dXNPcHRpb25zTWFwU2hhcmVkXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9zaGFyZWQnO1xuaW1wb3J0IHtcbiAgU3RhdHVzRmlsdGVyQ29tcG9uZW50LFxuICBTdGF0dXNGaWx0ZXJNb2R1bGVcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0YXR1cy1maWx0ZXInO1xuaW1wb3J0IHsgZmxhdHRlbiB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIHBpcGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT3BlcmF0aW9uc0xpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9vcGVyYXRpb25zLWxpc3QtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3BlcmF0aW9uc0xpc3RTZXJ2aWNlIH0gZnJvbSAnLi9vcGVyYXRpb25zLWxpc3Quc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1vcGVyYXRpb25zLWxpc3QnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZVVybDogJ29wZXJhdGlvbnMtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIGltcG9ydHM6IFtDb3JlTW9kdWxlLCBTdGF0dXNGaWx0ZXJNb2R1bGUsIE9wZXJhdGlvbnNMaXN0SXRlbUNvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW1xuICAgIE9wZXJhdGlvblJlYWx0aW1lU2VydmljZSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBQUk9EVUNUX0VYUEVSSUVOQ0VfRVZFTlRfU09VUkNFLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT3BlcmF0aW9uc0xpc3RDb21wb25lbnQpXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgUHJvZHVjdEV4cGVyaWVuY2VFdmVudFNvdXJjZSB7XG4gIGZyYWdtZW50VHlwZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgcmVhZE9ubHlJdGVtcyA9IGlucHV0KGZhbHNlKTtcbiAgZGV2aWNlSWQ6IHN0cmluZyB8IG51bWJlciA9IHRoaXMucm91dGUuc25hcHNob3QucGFyZW50LmRhdGEuY29udGV4dERhdGE/LmlkO1xuICBPUEVSQVRJT05fU1RBVFVTX09QVElPTlNfTUFQOiBPcGVyYXRpb25TdGF0dXNPcHRpb25zTWFwU2hhcmVkID0gT1BFUkFUSU9OX1NUQVRVU19PUFRJT05TX01BUDtcblxuICB0aXRsZTogc3RyaW5nO1xuICByZWZyZXNoTG9hZGluZyA9IGZhbHNlO1xuICBpc1NtYXJ0UnVsZXNNaWNyb3NlcnZpY2VBdmFpbGFibGUgPSBmYWxzZTtcbiAgc2hvd092ZXJ2aWV3QnJlYWRjcnVtYnMgPSBmYWxzZTtcbiAgc3RhdHVzRmlsdGVyJDogQmVoYXZpb3JTdWJqZWN0PE9wZXJhdGlvblN0YXR1c09wdGlvbltdPiA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XG4gIHJlbG9hZCQ6IEJlaGF2aW9yU3ViamVjdDx2b2lkPiA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XG4gIEBWaWV3Q2hpbGQoJ3N0YXR1c0ZpbHRlcicsIHsgc3RhdGljOiB0cnVlIH0pIHN0YXR1c0ZpbHRlcjogU3RhdHVzRmlsdGVyQ29tcG9uZW50O1xuXG4gIG9wZXJhdGlvbnMkOiBPYnNlcnZhYmxlPElSZXN1bHRMaXN0PElPcGVyYXRpb24+PiA9IGNvbWJpbmVMYXRlc3QoXG4gICAgdGhpcy5zdGF0dXNGaWx0ZXIkLFxuICAgIHRoaXMucmVsb2FkJFxuICApLnBpcGUoXG4gICAgdGFwKCgpID0+IHtcbiAgICAgIHRoaXMucmVmcmVzaExvYWRpbmcgPSB0cnVlO1xuICAgIH0pLFxuICAgIHN3aXRjaE1hcCgoW3N0YXR1c0ZpbHRlcnNdKSA9PiB0aGlzLmZpbHRlcihzdGF0dXNGaWx0ZXJzKSksXG4gICAgdGFwKCgpID0+IHtcbiAgICAgIHRoaXMucmVmcmVzaExvYWRpbmcgPSBmYWxzZTtcbiAgICB9KSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIG9wZXJhdGlvbnNGaWx0ZXJQaXBlID0gcGlwZShcbiAgICBtYXAoKG9wZXJhdGlvbnM6IElPcGVyYXRpb25bXSkgPT4ge1xuICAgICAgY29uc3Qgc3RhdHVzRmlsdGVycyA9IHRoaXMuc3RhdHVzRmlsdGVyJC5nZXRWYWx1ZSgpO1xuICAgICAgaWYgKCFzdGF0dXNGaWx0ZXJzIHx8ICFzdGF0dXNGaWx0ZXJzLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gb3BlcmF0aW9ucztcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFsbG93ZWRTdGF0dXNlcyA9IGZsYXR0ZW4oc3RhdHVzRmlsdGVycy5tYXAoc2YgPT4gc2Yuc3RhdHVzKSk7XG4gICAgICByZXR1cm4gb3BlcmF0aW9ucy5maWx0ZXIob3AgPT4gYWxsb3dlZFN0YXR1c2VzLmluY2x1ZGVzKG9wLnN0YXR1cykpO1xuICAgIH0pXG4gICk7XG5cbiAgcHJvZHVjdEV4cGVyaWVuY2VFdmVudDogUHJvZHVjdEV4cGVyaWVuY2VFdmVudCA9IHtcbiAgICBldmVudE5hbWU6ICEhdGhpcy5kZXZpY2VJZCA/IFNJTkdMRV9PUEVSQVRJT05fRVZFTlRfREVWSUNFX1RBQiA6IFNJTkdMRV9PUEVSQVRJT05fRVZFTlRfT1ZFUlZJRVdcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhbHRpbWU6IE9wZXJhdGlvblJlYWx0aW1lU2VydmljZSxcbiAgICBwcml2YXRlIG9wZXJhdGlvbnNMaXN0U2VydmljZTogT3BlcmF0aW9uc0xpc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlXG4gICkge1xuICAgIHRoaXMudGl0bGUgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmVudC5kYXRhLmNvbnRleHREYXRhXG4gICAgICA/IHRoaXMucm91dGUuc25hcHNob3QucGFyZW50LmRhdGEuY29udGV4dERhdGEubmFtZVxuICAgICAgOiBnZXR0ZXh0KCdTaW5nbGUgb3BlcmF0aW9ucycpO1xuICAgIHRoaXMuc2hvd092ZXJ2aWV3QnJlYWRjcnVtYnMgPSAhdGhpcy5kZXZpY2VJZDtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaXNTbWFydFJ1bGVzTWljcm9zZXJ2aWNlQXZhaWxhYmxlID1cbiAgICAgIGF3YWl0IHRoaXMub3BlcmF0aW9uc0xpc3RTZXJ2aWNlLmlzU21hcnRSdWxlc01pY3Jvc2VydmljZUF2YWlsYWJsZSgpO1xuICB9XG5cbiAgZmlsdGVyKHN0YXR1c0ZpbHRlcnM6IE9wZXJhdGlvblN0YXR1c09wdGlvbltdKSB7XG4gICAgY29uc3Qgc3RhdHVzID1cbiAgICAgIHN0YXR1c0ZpbHRlcnMgJiYgc3RhdHVzRmlsdGVycy5sZW5ndGggPiAwXG4gICAgICAgID8ge1xuICAgICAgICAgICAgc3RhdHVzOiBmbGF0dGVuKHN0YXR1c0ZpbHRlcnMubWFwKHN0YXR1c0ZpbHRlciA9PiBzdGF0dXNGaWx0ZXIuc3RhdHVzKSlcbiAgICAgICAgICB9XG4gICAgICAgIDoge307XG5cbiAgICByZXR1cm4gdGhpcy5nZXRPcGVyYXRpb25zKHN0YXR1cyk7XG4gIH1cblxuICBnZXRPcGVyYXRpb25zKGZpbHRlcj8pIHtcbiAgICBsZXQgcXVlcnlGaWx0ZXIgPSB0aGlzLmRldmljZUlkID8geyAuLi5maWx0ZXIsIGRldmljZUlkOiB0aGlzLmRldmljZUlkIH0gOiBmaWx0ZXI7XG4gICAgaWYgKHRoaXMuZnJhZ21lbnRUeXBlKCkpIHtcbiAgICAgIHF1ZXJ5RmlsdGVyID0geyAuLi5xdWVyeUZpbHRlciwgZnJhZ21lbnRUeXBlOiB0aGlzLmZyYWdtZW50VHlwZSgpIH07XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9wZXJhdGlvbnNMaXN0U2VydmljZS5nZXRPcGVyYXRpb25zKHF1ZXJ5RmlsdGVyKTtcbiAgfVxuXG4gIGNvbXBhcmVPcGVyYXRpb25zKG9wZXJhdGlvbkE6IElPcGVyYXRpb24sIG9wZXJhdGlvbkI6IElPcGVyYXRpb24pOiBudW1iZXIge1xuICAgIHJldHVybiAoXG4gICAgICBuZXcgRGF0ZShvcGVyYXRpb25BLmNyZWF0aW9uVGltZSkuZ2V0VGltZSgpIC0gbmV3IERhdGUob3BlcmF0aW9uQi5jcmVhdGlvblRpbWUpLmdldFRpbWUoKVxuICAgICk7XG4gIH1cbn1cbiIsIjxjOHktdGl0bGU+e3sgdGl0bGUgfCB0cmFuc2xhdGUgfX08L2M4eS10aXRsZT5cblxuPGM4eS1icmVhZGNydW1iICpuZ0lmPVwic2hvd092ZXJ2aWV3QnJlYWRjcnVtYnNcIj5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBbaWNvbl09XCInYzh5LW92ZXJ2aWV3cydcIlxuICAgIFtsYWJlbF09XCInT3ZlcnZpZXdzJyB8IHRyYW5zbGF0ZVwiXG4gID48L2M4eS1icmVhZGNydW1iLWl0ZW0+XG4gIDxjOHktYnJlYWRjcnVtYi1pdGVtXG4gICAgW2ljb25dPVwiJ2M4eS1kZXZpY2UtY29udHJvbCdcIlxuICAgIFtsYWJlbF09XCInRGV2aWNlIENvbnRyb2wnIHwgdHJhbnNsYXRlXCJcbiAgICBbcGF0aF09XCInZGV2aWNlY29udHJvbC9zaW5nbGUnXCJcbiAgPjwvYzh5LWJyZWFkY3J1bWItaXRlbT5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBbaWNvbl09XCInYzh5LWRldmljZS1jb250cm9sJ1wiXG4gICAgW2xhYmVsXT1cIidTaW5nbGUgb3BlcmF0aW9ucycgfCB0cmFuc2xhdGVcIlxuICA+PC9jOHktYnJlYWRjcnVtYi1pdGVtPlxuPC9jOHktYnJlYWRjcnVtYj5cblxuPGM4eS1hY3Rpb24tYmFyLWl0ZW1cbiAgW3BsYWNlbWVudF09XCInbGVmdCdcIlxuICBpdGVtQ2xhc3M9XCJuYXZiYXItZm9ybVwiXG4+XG4gIDxjOHktc3RhdHVzLWZpbHRlclxuICAgICNzdGF0dXNGaWx0ZXJcbiAgICBbb3B0aW9uc109XCJPUEVSQVRJT05fU1RBVFVTX09QVElPTlNfTUFQXCJcbiAgICAob25GaWx0ZXJDaGFuZ2VkKT1cInN0YXR1c0ZpbHRlciQubmV4dCgkZXZlbnQpXCJcbiAgICBjOHlQcm9kdWN0RXhwZXJpZW5jZVxuICAgIGluaGVyaXRcbiAgPjwvYzh5LXN0YXR1cy1maWx0ZXI+XG48L2M4eS1hY3Rpb24tYmFyLWl0ZW0+XG5cbjxjOHktYWN0aW9uLWJhci1pdGVtIFtwbGFjZW1lbnRdPVwiJ3JpZ2h0J1wiPlxuICA8Yzh5LXJlYWx0aW1lLWJ0biBbc2VydmljZV09XCJyZWFsdGltZVwiPjwvYzh5LXJlYWx0aW1lLWJ0bj5cbjwvYzh5LWFjdGlvbi1iYXItaXRlbT5cblxuPGM4eS1hY3Rpb24tYmFyLWl0ZW0gW3BsYWNlbWVudF09XCIncmlnaHQnXCI+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGluayBkLWZsZXggYS1pLWNlbnRlclwiXG4gICAgdGl0bGU9XCJ7eyAnUmVsb2FkJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgKGNsaWNrKT1cInJlbG9hZCQubmV4dCgpXCJcbiAgPlxuICAgIDxpXG4gICAgICBjbGFzcz1cIm0tci00XCJcbiAgICAgIGM4eUljb249XCJyZWZyZXNoXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2ljb24tc3Bpbic6IHJlZnJlc2hMb2FkaW5nIH1cIlxuICAgID48L2k+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXRydW5jYXRlXCI+XG4gICAgICB7eyAnUmVsb2FkJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvc3Bhbj5cbiAgPC9idXR0b24+XG48L2M4eS1hY3Rpb24tYmFyLWl0ZW0+XG5cbjxuZy1jb250ZW50IHNlbGVjdD1cImM4eS1oZWxwXCI+XG4gIDxjOHktaGVscFxuICAgIHNyYz1cIi9kb2NzL2RldmljZS1tYW5hZ2VtZW50LWFwcGxpY2F0aW9uL21vbml0b3JpbmctYW5kLWNvbnRyb2xsaW5nLWRldmljZXMvI3RvLXZpZXctc2luZ2xlLW9wZXJhdGlvbnNcIlxuICA+PC9jOHktaGVscD5cbjwvbmctY29udGVudD5cblxuPCEtLSBFbXB0eSBzdGF0ZSAgLS0+XG48Yzh5LXVpLWVtcHR5LXN0YXRlXG4gIFtpY29uXT1cIidjOHktZW5lcmd5J1wiXG4gIFt0aXRsZV09XCInTm8gaXRlbXMgdG8gZGlzcGxheS4nIHwgdHJhbnNsYXRlXCJcbiAgW3N1YnRpdGxlXT1cIidPcGVyYXRpb25zIHdpbGwgYmUgZGlzcGxheWVkIGhlcmUuJyB8IHRyYW5zbGF0ZVwiXG4gICpuZ0lmPVwiKG9wZXJhdGlvbnMkIHwgYXN5bmMpPy5kYXRhLmxlbmd0aCA9PT0gMCAmJiAhKHN0YXR1c0ZpbHRlciQgfCBhc3luYylcIlxuPjwvYzh5LXVpLWVtcHR5LXN0YXRlPlxuPCEtLSBObyByZXN1bHRzIGVtcHR5IHN0YXRlIC0tPlxuPGM4eS11aS1lbXB0eS1zdGF0ZVxuICBbaWNvbl09XCInc2VhcmNoJ1wiXG4gIFt0aXRsZV09XCInTm8gcmVzdWx0cyB0byBkaXNwbGF5LicgfCB0cmFuc2xhdGVcIlxuICBbc3VidGl0bGVdPVwiJ0FkanVzdCBvciByZXNldCB0aGUgZmlsdGVyLicgfCB0cmFuc2xhdGVcIlxuICAqbmdJZj1cIihvcGVyYXRpb25zJCB8IGFzeW5jKT8uZGF0YS5sZW5ndGggPT09IDAgJiYgKHN0YXR1c0ZpbHRlciQgfCBhc3luYylcIlxuPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxuICAgIHRpdGxlPVwie3sgJ1Jlc2V0IGZpbHRlcicgfCB0cmFuc2xhdGUgfX1cIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIChjbGljayk9XCJzdGF0dXNGaWx0ZXIucmVzZXQoKVwiXG4gICAgdHJhbnNsYXRlXG4gID5cbiAgICBSZXNldCBmaWx0ZXJcbiAgPC9idXR0b24+XG48L2M4eS11aS1lbXB0eS1zdGF0ZT5cblxuPCEtLSBEZXRhaWxlZCBsaXN0IG9mIG9wZXJhdGlvbnMgKyBsb2FkIG1vcmUgYnV0dG9uIC0tPlxuPGM4eS1saXN0LWdyb3VwIGNsYXNzPVwibS1iLTI0XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInBhZ2Utc3RpY2t5LWhlYWRlciBjOHktbGlzdF9faXRlbSBjOHktbGlzdF9faXRlbS0tZG91YmxlLWFjdGlvbnMgaGlkZGVuLXhzXCJcbiAgICAqbmdJZj1cIihvcGVyYXRpb25zJCB8IGFzeW5jKT8uZGF0YS5sZW5ndGhcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImM4eS1saXN0X19pdGVtX19ibG9ja1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImM4eS1saXN0X19pdGVtX19pY29uXCI+XG4gICAgICAgIDxpIGNsYXNzPVwicC1sLTI0XCI+PC9pPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYzh5LWxpc3RfX2l0ZW1fX2JvZHkgdGV4dC10cnVuY2F0ZS13cmFwXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50LWZsZXgtNTdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTVcIj5cbiAgICAgICAgICAgIHt7ICdPcGVyYXRpb24nIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJmbGV4LWdyb3dcIlxuICAgICAgICAgICAgKm5nSWY9XCIhZGV2aWNlSWRcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7ICdEZXZpY2UnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC00XCI+XG4gICAgICAgICAgICB7eyAnRGF0ZSBjcmVhdGVkJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImM4eS1saXN0X19pdGVtX19hY3Rpb25zXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJkLWNvbnRlbnRzXCJcbiAgICAqYzh5Rm9yPVwiXG4gICAgICBsZXQgb3Agb2Ygb3BlcmF0aW9ucyQgfCBhc3luYztcbiAgICAgIGxldCBpID0gaW5kZXg7XG4gICAgICByZWFsdGltZTogcmVhbHRpbWU7XG4gICAgICByZWFsdGltZU9wdGlvbnM6IHsgZW50aXR5T3JJZDogZGV2aWNlSWQsIHJlbW92ZU9uVXBkYXRlOiB0cnVlLCBpbnNlcnRPblVwZGF0ZTogdHJ1ZSB9O1xuICAgICAgY29tcGFyYXRvcjogY29tcGFyZU9wZXJhdGlvbnMuYmluZCh0aGlzKTtcbiAgICAgIGxvYWRNb3JlOiAnYXV0byc7XG4gICAgICBwaXBlOiBvcGVyYXRpb25zRmlsdGVyUGlwZVxuICAgIFwiXG4gID5cbiAgICA8Yzh5LW9wZXJhdGlvbnMtbGlzdC1pdGVtXG4gICAgICBjbGFzcz1cImQtY29udGVudHNcIlxuICAgICAgW29wZXJhdGlvbl09XCJvcFwiXG4gICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlJdGVtcygpXCJcbiAgICAgIFtpc1NtYXJ0UnVsZXNNaWNyb3NlcnZpY2VBdmFpbGFibGVdPVwiaXNTbWFydFJ1bGVzTWljcm9zZXJ2aWNlQXZhaWxhYmxlXCJcbiAgICAgIChyZWxvYWQpPVwicmVsb2FkJC5uZXh0KClcIlxuICAgICAgYzh5UHJvZHVjdEV4cGVyaWVuY2VcbiAgICAgIGluaGVyaXRcbiAgICA+PC9jOHktb3BlcmF0aW9ucy1saXN0LWl0ZW0+XG4gIDwvZGl2PlxuPC9jOHktbGlzdC1ncm91cD5cbiJdfQ==
@@ -1,35 +1,21 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { RouterModule } from '@angular/router';
3
- import { TooltipModule } from 'ngx-bootstrap/tooltip';
4
- import { CoreModule, gettext, hookRoute, ViewContext } from '@c8y/ngx-components';
5
- import { StatusFilterModule } from '@c8y/ngx-components/operations/status-filter';
6
- import { OperationsListItemDetailsModule } from '@c8y/ngx-components/operations/operations-list-item-details';
7
- import { BulkOperationListItemService } from '@c8y/ngx-components/operations/bulk-operation-list-item';
8
- import { OperationsSharedModule } from '@c8y/ngx-components/operations/shared';
9
- import { OperationsListComponent } from './operations-list.component';
2
+ import { gettext, hookRoute, ViewContext } from '@c8y/ngx-components';
10
3
  import { OperationsListItemComponent } from './operations-list-item.component';
11
- import { OperationsListService } from './operations-list.service';
4
+ import { OperationsListComponent } from './operations-list.component';
12
5
  import * as i0 from "@angular/core";
13
- import * as i1 from "@angular/router";
14
- export const singleOperationListRoutes = [
15
- {
16
- path: 'devicecontrol/single',
17
- component: OperationsListComponent
18
- }
19
- ];
20
6
  /**
7
+ * @deprecated Use `OperationsListComponent` and `OperationsListItemComponent` as standalone components.
8
+ *
21
9
  * This module allows for displaying the list item details of single and bulk operations.
22
10
  */
23
11
  export class OperationsListModule {
24
12
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.9", ngImport: i0, type: OperationsListModule, declarations: [OperationsListComponent, OperationsListItemComponent], imports: [CoreModule,
26
- StatusFilterModule,
27
- OperationsListItemDetailsModule,
28
- OperationsSharedModule,
29
- TooltipModule, i1.RouterModule], exports: [OperationsListComponent, OperationsListItemComponent] }); }
13
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.9", ngImport: i0, type: OperationsListModule, imports: [OperationsListComponent, OperationsListItemComponent], exports: [OperationsListComponent, OperationsListItemComponent] }); }
30
14
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListModule, providers: [
31
- OperationsListService,
32
- BulkOperationListItemService,
15
+ hookRoute({
16
+ path: 'devicecontrol/single',
17
+ component: OperationsListComponent
18
+ }),
33
19
  hookRoute({
34
20
  context: ViewContext.Device,
35
21
  path: 'control',
@@ -38,29 +24,18 @@ export class OperationsListModule {
38
24
  icon: 'c8y-icon c8y-icon-device-control',
39
25
  priority: 600
40
26
  })
41
- ], imports: [CoreModule,
42
- StatusFilterModule,
43
- OperationsListItemDetailsModule,
44
- OperationsSharedModule,
45
- TooltipModule,
46
- RouterModule.forChild(singleOperationListRoutes)] }); }
27
+ ], imports: [OperationsListComponent, OperationsListItemComponent] }); }
47
28
  }
48
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListModule, decorators: [{
49
30
  type: NgModule,
50
31
  args: [{
51
- imports: [
52
- CoreModule,
53
- StatusFilterModule,
54
- OperationsListItemDetailsModule,
55
- OperationsSharedModule,
56
- TooltipModule,
57
- RouterModule.forChild(singleOperationListRoutes)
58
- ],
59
- declarations: [OperationsListComponent, OperationsListItemComponent],
32
+ imports: [OperationsListComponent, OperationsListItemComponent],
60
33
  exports: [OperationsListComponent, OperationsListItemComponent],
61
34
  providers: [
62
- OperationsListService,
63
- BulkOperationListItemService,
35
+ hookRoute({
36
+ path: 'devicecontrol/single',
37
+ component: OperationsListComponent
38
+ }),
64
39
  hookRoute({
65
40
  context: ViewContext.Device,
66
41
  path: 'control',
@@ -72,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
72
47
  ]
73
48
  }]
74
49
  }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL29wZXJhdGlvbnMvb3BlcmF0aW9ucy1saXN0L29wZXJhdGlvbnMtbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBUyxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM5RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN2RyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBRWxFLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFZO0lBQ2hEO1FBQ0UsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixTQUFTLEVBQUUsdUJBQXVCO0tBQ25DO0NBQ0YsQ0FBQztBQUVGOztHQUVHO0FBeUJILE1BQU0sT0FBTyxvQkFBb0I7OEdBQXBCLG9CQUFvQjsrR0FBcEIsb0JBQW9CLGlCQWZoQix1QkFBdUIsRUFBRSwyQkFBMkIsYUFQakUsVUFBVTtZQUNWLGtCQUFrQjtZQUNsQiwrQkFBK0I7WUFDL0Isc0JBQXNCO1lBQ3RCLGFBQWEsOEJBSUwsdUJBQXVCLEVBQUUsMkJBQTJCOytHQWNuRCxvQkFBb0IsYUFicEI7WUFDVCxxQkFBcUI7WUFDckIsNEJBQTRCO1lBQzVCLFNBQVMsQ0FBQztnQkFDUixPQUFPLEVBQUUsV0FBVyxDQUFDLE1BQU07Z0JBQzNCLElBQUksRUFBRSxTQUFTO2dCQUNmLFNBQVMsRUFBRSx1QkFBdUI7Z0JBQ2xDLEtBQUssRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDO2dCQUN6QixJQUFJLEVBQUUsa0NBQWtDO2dCQUN4QyxRQUFRLEVBQUUsR0FBRzthQUNkLENBQUM7U0FDSCxZQXBCQyxVQUFVO1lBQ1Ysa0JBQWtCO1lBQ2xCLCtCQUErQjtZQUMvQixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLFlBQVksQ0FBQyxRQUFRLENBQUMseUJBQXlCLENBQUM7OzJGQWlCdkMsb0JBQW9CO2tCQXhCaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsVUFBVTt3QkFDVixrQkFBa0I7d0JBQ2xCLCtCQUErQjt3QkFDL0Isc0JBQXNCO3dCQUN0QixhQUFhO3dCQUNiLFlBQVksQ0FBQyxRQUFRLENBQUMseUJBQXlCLENBQUM7cUJBQ2pEO29CQUNELFlBQVksRUFBRSxDQUFDLHVCQUF1QixFQUFFLDJCQUEyQixDQUFDO29CQUNwRSxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSwyQkFBMkIsQ0FBQztvQkFDL0QsU0FBUyxFQUFFO3dCQUNULHFCQUFxQjt3QkFDckIsNEJBQTRCO3dCQUM1QixTQUFTLENBQUM7NEJBQ1IsT0FBTyxFQUFFLFdBQVcsQ0FBQyxNQUFNOzRCQUMzQixJQUFJLEVBQUUsU0FBUzs0QkFDZixTQUFTLEVBQUUsdUJBQXVCOzRCQUNsQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQzs0QkFDekIsSUFBSSxFQUFFLGtDQUFrQzs0QkFDeEMsUUFBUSxFQUFFLEdBQUc7eUJBQ2QsQ0FBQztxQkFDSDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvdG9vbHRpcCc7XG5pbXBvcnQgeyBDb3JlTW9kdWxlLCBnZXR0ZXh0LCBob29rUm91dGUsIFJvdXRlLCBWaWV3Q29udGV4dCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgU3RhdHVzRmlsdGVyTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0YXR1cy1maWx0ZXInO1xuaW1wb3J0IHsgT3BlcmF0aW9uc0xpc3RJdGVtRGV0YWlsc01vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9vcGVyYXRpb25zLWxpc3QtaXRlbS1kZXRhaWxzJztcbmltcG9ydCB7IEJ1bGtPcGVyYXRpb25MaXN0SXRlbVNlcnZpY2UgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvYnVsay1vcGVyYXRpb24tbGlzdC1pdGVtJztcbmltcG9ydCB7IE9wZXJhdGlvbnNTaGFyZWRNb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvc2hhcmVkJztcblxuaW1wb3J0IHsgT3BlcmF0aW9uc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL29wZXJhdGlvbnMtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3BlcmF0aW9uc0xpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9vcGVyYXRpb25zLWxpc3QtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3BlcmF0aW9uc0xpc3RTZXJ2aWNlIH0gZnJvbSAnLi9vcGVyYXRpb25zLWxpc3Quc2VydmljZSc7XG5cbmV4cG9ydCBjb25zdCBzaW5nbGVPcGVyYXRpb25MaXN0Um91dGVzOiBSb3V0ZVtdID0gW1xuICB7XG4gICAgcGF0aDogJ2RldmljZWNvbnRyb2wvc2luZ2xlJyxcbiAgICBjb21wb25lbnQ6IE9wZXJhdGlvbnNMaXN0Q29tcG9uZW50XG4gIH1cbl07XG5cbi8qKlxuICogVGhpcyBtb2R1bGUgYWxsb3dzIGZvciBkaXNwbGF5aW5nIHRoZSBsaXN0IGl0ZW0gZGV0YWlscyBvZiBzaW5nbGUgYW5kIGJ1bGsgb3BlcmF0aW9ucy5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvcmVNb2R1bGUsXG4gICAgU3RhdHVzRmlsdGVyTW9kdWxlLFxuICAgIE9wZXJhdGlvbnNMaXN0SXRlbURldGFpbHNNb2R1bGUsXG4gICAgT3BlcmF0aW9uc1NoYXJlZE1vZHVsZSxcbiAgICBUb29sdGlwTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZS5mb3JDaGlsZChzaW5nbGVPcGVyYXRpb25MaXN0Um91dGVzKVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtPcGVyYXRpb25zTGlzdENvbXBvbmVudCwgT3BlcmF0aW9uc0xpc3RJdGVtQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW09wZXJhdGlvbnNMaXN0Q29tcG9uZW50LCBPcGVyYXRpb25zTGlzdEl0ZW1Db21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtcbiAgICBPcGVyYXRpb25zTGlzdFNlcnZpY2UsXG4gICAgQnVsa09wZXJhdGlvbkxpc3RJdGVtU2VydmljZSxcbiAgICBob29rUm91dGUoe1xuICAgICAgY29udGV4dDogVmlld0NvbnRleHQuRGV2aWNlLFxuICAgICAgcGF0aDogJ2NvbnRyb2wnLFxuICAgICAgY29tcG9uZW50OiBPcGVyYXRpb25zTGlzdENvbXBvbmVudCxcbiAgICAgIGxhYmVsOiBnZXR0ZXh0KCdDb250cm9sJyksXG4gICAgICBpY29uOiAnYzh5LWljb24gYzh5LWljb24tZGV2aWNlLWNvbnRyb2wnLFxuICAgICAgcHJpb3JpdHk6IDYwMFxuICAgIH0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgT3BlcmF0aW9uc0xpc3RNb2R1bGUge31cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL29wZXJhdGlvbnMvb3BlcmF0aW9ucy1saXN0L29wZXJhdGlvbnMtbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFdEU7Ozs7R0FJRztBQW1CSCxNQUFNLE9BQU8sb0JBQW9COzhHQUFwQixvQkFBb0I7K0dBQXBCLG9CQUFvQixZQWpCckIsdUJBQXVCLEVBQUUsMkJBQTJCLGFBQ3BELHVCQUF1QixFQUFFLDJCQUEyQjsrR0FnQm5ELG9CQUFvQixhQWZwQjtZQUNULFNBQVMsQ0FBQztnQkFDUixJQUFJLEVBQUUsc0JBQXNCO2dCQUM1QixTQUFTLEVBQUUsdUJBQXVCO2FBQ25DLENBQUM7WUFDRixTQUFTLENBQUM7Z0JBQ1IsT0FBTyxFQUFFLFdBQVcsQ0FBQyxNQUFNO2dCQUMzQixJQUFJLEVBQUUsU0FBUztnQkFDZixTQUFTLEVBQUUsdUJBQXVCO2dCQUNsQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQztnQkFDekIsSUFBSSxFQUFFLGtDQUFrQztnQkFDeEMsUUFBUSxFQUFFLEdBQUc7YUFDZCxDQUFDO1NBQ0gsWUFmUyx1QkFBdUIsRUFBRSwyQkFBMkI7OzJGQWlCbkQsb0JBQW9CO2tCQWxCaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSwyQkFBMkIsQ0FBQztvQkFDL0QsT0FBTyxFQUFFLENBQUMsdUJBQXVCLEVBQUUsMkJBQTJCLENBQUM7b0JBQy9ELFNBQVMsRUFBRTt3QkFDVCxTQUFTLENBQUM7NEJBQ1IsSUFBSSxFQUFFLHNCQUFzQjs0QkFDNUIsU0FBUyxFQUFFLHVCQUF1Qjt5QkFDbkMsQ0FBQzt3QkFDRixTQUFTLENBQUM7NEJBQ1IsT0FBTyxFQUFFLFdBQVcsQ0FBQyxNQUFNOzRCQUMzQixJQUFJLEVBQUUsU0FBUzs0QkFDZixTQUFTLEVBQUUsdUJBQXVCOzRCQUNsQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQzs0QkFDekIsSUFBSSxFQUFFLGtDQUFrQzs0QkFDeEMsUUFBUSxFQUFFLEdBQUc7eUJBQ2QsQ0FBQztxQkFDSDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXR0ZXh0LCBob29rUm91dGUsIFZpZXdDb250ZXh0IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5cbmltcG9ydCB7IE9wZXJhdGlvbnNMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vb3BlcmF0aW9ucy1saXN0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE9wZXJhdGlvbnNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9vcGVyYXRpb25zLWxpc3QuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBVc2UgYE9wZXJhdGlvbnNMaXN0Q29tcG9uZW50YCBhbmQgYE9wZXJhdGlvbnNMaXN0SXRlbUNvbXBvbmVudGAgYXMgc3RhbmRhbG9uZSBjb21wb25lbnRzLlxuICpcbiAqIFRoaXMgbW9kdWxlIGFsbG93cyBmb3IgZGlzcGxheWluZyB0aGUgbGlzdCBpdGVtIGRldGFpbHMgb2Ygc2luZ2xlIGFuZCBidWxrIG9wZXJhdGlvbnMuXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtPcGVyYXRpb25zTGlzdENvbXBvbmVudCwgT3BlcmF0aW9uc0xpc3RJdGVtQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW09wZXJhdGlvbnNMaXN0Q29tcG9uZW50LCBPcGVyYXRpb25zTGlzdEl0ZW1Db21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtcbiAgICBob29rUm91dGUoe1xuICAgICAgcGF0aDogJ2RldmljZWNvbnRyb2wvc2luZ2xlJyxcbiAgICAgIGNvbXBvbmVudDogT3BlcmF0aW9uc0xpc3RDb21wb25lbnRcbiAgICB9KSxcbiAgICBob29rUm91dGUoe1xuICAgICAgY29udGV4dDogVmlld0NvbnRleHQuRGV2aWNlLFxuICAgICAgcGF0aDogJ2NvbnRyb2wnLFxuICAgICAgY29tcG9uZW50OiBPcGVyYXRpb25zTGlzdENvbXBvbmVudCxcbiAgICAgIGxhYmVsOiBnZXR0ZXh0KCdDb250cm9sJyksXG4gICAgICBpY29uOiAnYzh5LWljb24gYzh5LWljb24tZGV2aWNlLWNvbnRyb2wnLFxuICAgICAgcHJpb3JpdHk6IDYwMFxuICAgIH0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgT3BlcmF0aW9uc0xpc3RNb2R1bGUge31cbiJdfQ==
@@ -35,11 +35,12 @@ export class OperationsListService {
35
35
  }
36
36
  }
37
37
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListService, deps: [{ token: i1.OperationService }, { token: i1.SmartRulesService }, { token: i2.Ng1SmartRulesService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
38
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListService }); }
38
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListService, providedIn: 'root' }); }
39
39
  }
40
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsListService, decorators: [{
41
- type: Injectable
41
+ type: Injectable,
42
+ args: [{ providedIn: 'root' }]
42
43
  }], ctorParameters: () => [{ type: i1.OperationService }, { type: i1.SmartRulesService }, { type: i2.Ng1SmartRulesService, decorators: [{
43
44
  type: Optional
44
45
  }] }] });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy1saXN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9vcGVyYXRpb25zL29wZXJhdGlvbnMtbGlzdC9vcGVyYXRpb25zLWxpc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQWMsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFHbkUsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUNVLGdCQUFrQyxFQUNsQyxpQkFBb0MsRUFDeEIsb0JBQTBDO1FBRnRELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUN4Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBQzdELENBQUM7SUFFSixhQUFhLENBQUMsWUFBWSxHQUFHLEVBQUU7UUFDN0IsTUFBTSxNQUFNLEdBQUc7WUFDYixjQUFjLEVBQUUsSUFBSTtZQUNwQixXQUFXLEVBQUUsSUFBSTtZQUNqQixRQUFRLEVBQUUsRUFBRTtZQUNaLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUU7WUFDbkMsTUFBTSxFQUFFLElBQUk7WUFDWixHQUFHLFlBQVk7U0FDaEIsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsaUNBQWlDO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDMUQsQ0FBQztJQUVELDhCQUE4QjtRQUM1QixJQUFJLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDM0UsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztRQUMxRCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBOEI7UUFDbEQsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM5QixPQUFPLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLDhCQUE4QixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ25GLENBQUM7SUFDSCxDQUFDOzhHQWxDVSxxQkFBcUI7a0hBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVTs7MEJBS04sUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJT3BlcmF0aW9uLCBPcGVyYXRpb25TZXJ2aWNlLCBTbWFydFJ1bGVzU2VydmljZSB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IE5nMVNtYXJ0UnVsZXNTZXJ2aWNlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy91cGdyYWRlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNMaXN0U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3BlcmF0aW9uU2VydmljZTogT3BlcmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHNtYXJ0UnVsZXNTZXJ2aWNlOiBTbWFydFJ1bGVzU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIG5nMVNtYXJ0UnVsZXNTZXJ2aWNlOiBOZzFTbWFydFJ1bGVzU2VydmljZVxuICApIHt9XG5cbiAgZ2V0T3BlcmF0aW9ucyhjdXN0b21GaWx0ZXIgPSB7fSkge1xuICAgIGNvbnN0IGZpbHRlciA9IHtcbiAgICAgIHdpdGhUb3RhbFBhZ2VzOiB0cnVlLFxuICAgICAgd2l0aERlbGV0ZWQ6IHRydWUsXG4gICAgICBwYWdlU2l6ZTogNTAsXG4gICAgICBkYXRlRnJvbTogbmV3IERhdGUoMCkudG9JU09TdHJpbmcoKSxcbiAgICAgIHJldmVydDogdHJ1ZSxcbiAgICAgIC4uLmN1c3RvbUZpbHRlclxuICAgIH07XG5cbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb25TZXJ2aWNlLmxpc3QoZmlsdGVyKTtcbiAgfVxuXG4gIGlzU21hcnRSdWxlc01pY3Jvc2VydmljZUF2YWlsYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zbWFydFJ1bGVzU2VydmljZS5pc01pY3Jvc2VydmljZUF2YWlsYWJsZSgpO1xuICB9XG5cbiAgZ2V0U21hcnRSdWxlc0NyZWF0ZVBlcm1pc3Npb25zKCkge1xuICAgIGlmICh0aGlzLm5nMVNtYXJ0UnVsZXNTZXJ2aWNlICYmIHRoaXMubmcxU21hcnRSdWxlc1NlcnZpY2UucGVybWlzc2lvbnNDZmdzKSB7XG4gICAgICByZXR1cm4gdGhpcy5uZzFTbWFydFJ1bGVzU2VydmljZS5wZXJtaXNzaW9uc0NmZ3MuY3JlYXRlO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZVNtYXJ0UnVsZShvcGVyYXRpb246IFBhcnRpYWw8SU9wZXJhdGlvbj4pIHtcbiAgICBpZiAodGhpcy5uZzFTbWFydFJ1bGVzU2VydmljZSkge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMubmcxU21hcnRSdWxlc1NlcnZpY2UuYWRkTmV3Rm9yT3V0cHV0T3BlcmF0aW9uV2l0aFVJKG9wZXJhdGlvbik7XG4gICAgfVxuICB9XG59XG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy1saXN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9vcGVyYXRpb25zL29wZXJhdGlvbnMtbGlzdC9vcGVyYXRpb25zLWxpc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQWMsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFHbkUsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUNVLGdCQUFrQyxFQUNsQyxpQkFBb0MsRUFDeEIsb0JBQTBDO1FBRnRELHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUN4Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBQzdELENBQUM7SUFFSixhQUFhLENBQUMsWUFBWSxHQUFHLEVBQUU7UUFDN0IsTUFBTSxNQUFNLEdBQUc7WUFDYixjQUFjLEVBQUUsSUFBSTtZQUNwQixXQUFXLEVBQUUsSUFBSTtZQUNqQixRQUFRLEVBQUUsRUFBRTtZQUNaLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUU7WUFDbkMsTUFBTSxFQUFFLElBQUk7WUFDWixHQUFHLFlBQVk7U0FDaEIsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsaUNBQWlDO1FBQy9CLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDMUQsQ0FBQztJQUVELDhCQUE4QjtRQUM1QixJQUFJLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDM0UsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztRQUMxRCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBOEI7UUFDbEQsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM5QixPQUFPLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLDhCQUE4QixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ25GLENBQUM7SUFDSCxDQUFDOzhHQWxDVSxxQkFBcUI7a0hBQXJCLHFCQUFxQixjQURSLE1BQU07OzJGQUNuQixxQkFBcUI7a0JBRGpDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFLN0IsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJT3BlcmF0aW9uLCBPcGVyYXRpb25TZXJ2aWNlLCBTbWFydFJ1bGVzU2VydmljZSB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IE5nMVNtYXJ0UnVsZXNTZXJ2aWNlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy91cGdyYWRlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBPcGVyYXRpb25zTGlzdFNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG9wZXJhdGlvblNlcnZpY2U6IE9wZXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzbWFydFJ1bGVzU2VydmljZTogU21hcnRSdWxlc1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBuZzFTbWFydFJ1bGVzU2VydmljZTogTmcxU21hcnRSdWxlc1NlcnZpY2VcbiAgKSB7fVxuXG4gIGdldE9wZXJhdGlvbnMoY3VzdG9tRmlsdGVyID0ge30pIHtcbiAgICBjb25zdCBmaWx0ZXIgPSB7XG4gICAgICB3aXRoVG90YWxQYWdlczogdHJ1ZSxcbiAgICAgIHdpdGhEZWxldGVkOiB0cnVlLFxuICAgICAgcGFnZVNpemU6IDUwLFxuICAgICAgZGF0ZUZyb206IG5ldyBEYXRlKDApLnRvSVNPU3RyaW5nKCksXG4gICAgICByZXZlcnQ6IHRydWUsXG4gICAgICAuLi5jdXN0b21GaWx0ZXJcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMub3BlcmF0aW9uU2VydmljZS5saXN0KGZpbHRlcik7XG4gIH1cblxuICBpc1NtYXJ0UnVsZXNNaWNyb3NlcnZpY2VBdmFpbGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc21hcnRSdWxlc1NlcnZpY2UuaXNNaWNyb3NlcnZpY2VBdmFpbGFibGUoKTtcbiAgfVxuXG4gIGdldFNtYXJ0UnVsZXNDcmVhdGVQZXJtaXNzaW9ucygpIHtcbiAgICBpZiAodGhpcy5uZzFTbWFydFJ1bGVzU2VydmljZSAmJiB0aGlzLm5nMVNtYXJ0UnVsZXNTZXJ2aWNlLnBlcm1pc3Npb25zQ2Zncykge1xuICAgICAgcmV0dXJuIHRoaXMubmcxU21hcnRSdWxlc1NlcnZpY2UucGVybWlzc2lvbnNDZmdzLmNyZWF0ZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBjcmVhdGVTbWFydFJ1bGUob3BlcmF0aW9uOiBQYXJ0aWFsPElPcGVyYXRpb24+KSB7XG4gICAgaWYgKHRoaXMubmcxU21hcnRSdWxlc1NlcnZpY2UpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLm5nMVNtYXJ0UnVsZXNTZXJ2aWNlLmFkZE5ld0Zvck91dHB1dE9wZXJhdGlvbldpdGhVSShvcGVyYXRpb24pO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,17 +1,17 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { RouterModule } from '@angular/router';
3
- import { CoreModule, hookTab, hookNavigator } from '@c8y/ngx-components';
4
- import { BulkOperationsServiceModule } from '@c8y/ngx-components/operations/bulk-operations-service';
5
- import { BulkOperationsStepperContainerModule } from '@c8y/ngx-components/operations/bulk-operations-stepper-container';
3
+ import { CoreModule, hookNavigator, hookTab } from '@c8y/ngx-components';
6
4
  import { BulkOperationFromSingleModule } from '@c8y/ngx-components/operations/bulk-operation-from-single';
7
5
  import { BulkOperationsListModule } from '@c8y/ngx-components/operations/bulk-operations-list';
6
+ import { BulkOperationsServiceModule } from '@c8y/ngx-components/operations/bulk-operations-service';
7
+ import { BulkOperationsStepperContainerModule } from '@c8y/ngx-components/operations/bulk-operations-stepper-container';
8
8
  import { StepperBulkTypeConfigurationModule } from '@c8y/ngx-components/operations/stepper-bulk-type-configuration';
9
9
  import { StepperBulkTypeDeviceProfileModule } from '@c8y/ngx-components/operations/stepper-bulk-type-device-profile';
10
10
  import { StepperBulkTypeFirmwareModule } from '@c8y/ngx-components/operations/stepper-bulk-type-firmware';
11
11
  import { StepperBulkTypeSoftwareModule } from '@c8y/ngx-components/operations/stepper-bulk-type-software';
12
- import { OperationsListModule } from '@c8y/ngx-components/operations/operations-list';
13
- import { OperationsTabsFactory } from './factories/tabs.factory';
12
+ import { deviceControlOverviewFeatureProvider, deviceControlTabFeatureProvider } from '@c8y/ngx-components/operations/operations-list';
14
13
  import { OperationsNavigationFactory } from './factories/nav.factory';
14
+ import { OperationsTabsFactory } from './factories/tabs.factory';
15
15
  import * as i0 from "@angular/core";
16
16
  import * as i1 from "@angular/router";
17
17
  export const operationsRoutes = [
@@ -102,9 +102,13 @@ export class OperationsModule {
102
102
  StepperBulkTypeConfigurationModule,
103
103
  StepperBulkTypeFirmwareModule,
104
104
  StepperBulkTypeSoftwareModule,
105
- StepperBulkTypeDeviceProfileModule,
106
- OperationsListModule] }); }
107
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsModule, providers: [hookTab(OperationsTabsFactory), hookNavigator(OperationsNavigationFactory)], imports: [CoreModule,
105
+ StepperBulkTypeDeviceProfileModule] }); }
106
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsModule, providers: [
107
+ hookTab(OperationsTabsFactory),
108
+ hookNavigator(OperationsNavigationFactory),
109
+ deviceControlOverviewFeatureProvider,
110
+ deviceControlTabFeatureProvider
111
+ ], imports: [CoreModule,
108
112
  RouterModule.forChild(operationsRoutes),
109
113
  BulkOperationFromSingleModule,
110
114
  BulkOperationsListModule,
@@ -113,8 +117,7 @@ export class OperationsModule {
113
117
  StepperBulkTypeConfigurationModule,
114
118
  StepperBulkTypeFirmwareModule,
115
119
  StepperBulkTypeSoftwareModule,
116
- StepperBulkTypeDeviceProfileModule,
117
- OperationsListModule] }); }
120
+ StepperBulkTypeDeviceProfileModule] }); }
118
121
  }
119
122
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsModule, decorators: [{
120
123
  type: NgModule,
@@ -129,10 +132,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
129
132
  StepperBulkTypeConfigurationModule,
130
133
  StepperBulkTypeFirmwareModule,
131
134
  StepperBulkTypeSoftwareModule,
132
- StepperBulkTypeDeviceProfileModule,
133
- OperationsListModule
135
+ StepperBulkTypeDeviceProfileModule
134
136
  ],
135
- providers: [hookTab(OperationsTabsFactory), hookNavigator(OperationsNavigationFactory)]
137
+ providers: [
138
+ hookTab(OperationsTabsFactory),
139
+ hookNavigator(OperationsNavigationFactory),
140
+ deviceControlOverviewFeatureProvider,
141
+ deviceControlTabFeatureProvider
142
+ ]
136
143
  }]
137
144
  }] });
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9vcGVyYXRpb25zL29wZXJhdGlvbnMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBUyxNQUFNLHFCQUFxQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ3JILE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRXRGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7QUFFdEUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQVk7SUFDdkM7UUFDRSxJQUFJLEVBQUUsZUFBZTtRQUNyQixVQUFVLEVBQUUsc0JBQXNCO1FBQ2xDLFNBQVMsRUFBRSxNQUFNO0tBQ2xCO0NBQ0YsQ0FBQztBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVFRztBQWlCSCxNQUFNLE9BQU8sZ0JBQWdCOzhHQUFoQixnQkFBZ0I7K0dBQWhCLGdCQUFnQixZQWR6QixVQUFVLG1CQUVWLDZCQUE2QjtZQUM3Qix3QkFBd0I7WUFDeEIsMkJBQTJCO1lBQzNCLG9DQUFvQztZQUNwQyxrQ0FBa0M7WUFDbEMsNkJBQTZCO1lBQzdCLDZCQUE2QjtZQUM3QixrQ0FBa0M7WUFDbEMsb0JBQW9COytHQUlYLGdCQUFnQixhQUZoQixDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLFlBWnJGLFVBQVU7WUFDVixZQUFZLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDO1lBQ3ZDLDZCQUE2QjtZQUM3Qix3QkFBd0I7WUFDeEIsMkJBQTJCO1lBQzNCLG9DQUFvQztZQUNwQyxrQ0FBa0M7WUFDbEMsNkJBQTZCO1lBQzdCLDZCQUE2QjtZQUM3QixrQ0FBa0M7WUFDbEMsb0JBQW9COzsyRkFJWCxnQkFBZ0I7a0JBaEI1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxVQUFVO3dCQUNWLFlBQVksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUM7d0JBQ3ZDLDZCQUE2Qjt3QkFDN0Isd0JBQXdCO3dCQUN4QiwyQkFBMkI7d0JBQzNCLG9DQUFvQzt3QkFDcEMsa0NBQWtDO3dCQUNsQyw2QkFBNkI7d0JBQzdCLDZCQUE2Qjt3QkFDN0Isa0NBQWtDO3dCQUNsQyxvQkFBb0I7cUJBQ3JCO29CQUNELFNBQVMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO2lCQUN4RiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBDb3JlTW9kdWxlLCBob29rVGFiLCBob29rTmF2aWdhdG9yLCBSb3V0ZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNTZXJ2aWNlTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1zZXJ2aWNlJztcbmltcG9ydCB7IEJ1bGtPcGVyYXRpb25zU3RlcHBlckNvbnRhaW5lck1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9idWxrLW9wZXJhdGlvbnMtc3RlcHBlci1jb250YWluZXInO1xuaW1wb3J0IHsgQnVsa09wZXJhdGlvbkZyb21TaW5nbGVNb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvYnVsay1vcGVyYXRpb24tZnJvbS1zaW5nbGUnO1xuaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1saXN0JztcbmltcG9ydCB7IFN0ZXBwZXJCdWxrVHlwZUNvbmZpZ3VyYXRpb25Nb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvc3RlcHBlci1idWxrLXR5cGUtY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBTdGVwcGVyQnVsa1R5cGVEZXZpY2VQcm9maWxlTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0ZXBwZXItYnVsay10eXBlLWRldmljZS1wcm9maWxlJztcbmltcG9ydCB7IFN0ZXBwZXJCdWxrVHlwZUZpcm13YXJlTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0ZXBwZXItYnVsay10eXBlLWZpcm13YXJlJztcbmltcG9ydCB7IFN0ZXBwZXJCdWxrVHlwZVNvZnR3YXJlTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0ZXBwZXItYnVsay10eXBlLXNvZnR3YXJlJztcbmltcG9ydCB7IE9wZXJhdGlvbnNMaXN0TW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL29wZXJhdGlvbnMtbGlzdCc7XG5cbmltcG9ydCB7IE9wZXJhdGlvbnNUYWJzRmFjdG9yeSB9IGZyb20gJy4vZmFjdG9yaWVzL3RhYnMuZmFjdG9yeSc7XG5pbXBvcnQgeyBPcGVyYXRpb25zTmF2aWdhdGlvbkZhY3RvcnkgfSBmcm9tICcuL2ZhY3Rvcmllcy9uYXYuZmFjdG9yeSc7XG5cbmV4cG9ydCBjb25zdCBvcGVyYXRpb25zUm91dGVzOiBSb3V0ZVtdID0gW1xuICB7XG4gICAgcGF0aDogJ2RldmljZWNvbnRyb2wnLFxuICAgIHJlZGlyZWN0VG86ICdkZXZpY2Vjb250cm9sL3NpbmdsZScsXG4gICAgcGF0aE1hdGNoOiAnZnVsbCdcbiAgfVxuXTtcblxuLyoqXG4gKiBUaGlzIG1vZHVsZSBzZXRzIHVwIHRoZSAnRGV2aWNlIGNvbnRyb2wnIHZpZXcuIEJ5IGltcG9ydGluZyBpdCBpbiB5b3VyIGN1c3RvbSBhcHBsaWNhdGlvbiB5b3Ugd2lsbCBoYXZlOlxuICogLSBhICdEZXZpY2UgY29udHJvbCcgdGFiIGluIGRldmljZSBkZXRhaWxzIHZpZXdcbiAqIC0gYSAnRGV2aWNlIGNvbnRyb2wnIGVudHJ5IGluIHRoZSAnT3ZlcnZpZXdzJyBzZWN0aW9uIG9mIG5hdmlnYXRvclxuICogLSAnQnVsayBvcGVyYXRpb25zJyB0YWIgb24gdGhlICdEZXZpY2UgY29udHJvbCcgcGFnZVxuICogLSBsaXN0IHZpZXcgb2YgZXhpc3RpbmcgYnVsayBvcGVyYXRpb25zIHdpdGggZXhwYW5kYWJsZSBkZXRhaWxzIGFuZCBvcHRpb25zIHRvIGZpbHRlclxuICogLSBndWlkZWQgc3RlcHBlciBkaWFsb2dzIHRvIHNjaGVkdWxlIG5ldyBidWxrIG9wZXJhdGlvbnMgb2Ygc3VwcG9ydGVkIHR5cGVzXG4gKiAoQ29uZmlndXJhdGlvbiB1cGRhdGUsIEZpcm13YXJlIHVwZGF0ZSwgU29mdHdhcmUgdXBkYXRlLCBBcHBseSBkZXZpY2UgcHJvZmlsZSkuXG4gKlxuICogQWRkaXRpb25hbHkgeW91IGNhbiB1c2UgdGhlIG1vZHVsZXMgaW1wb3J0ZWQgYnkge0BsaW5rIE9wZXJhdGlvbnNNb2R1bGV9IHNlcGFyYXRlbHkgdG8gYWNoaWV2ZVxuICogdGhlIHJlc3VsdHMgeW91IHdpc2ggdG8gaGF2ZSBpbiB5b3VyIGFwcGxpY2F0aW9uLCBlLmcuOlxuICogLSBpbXBvcnQge0BsaW5rIEJ1bGtPcGVyYXRpb25zTGlzdE1vZHVsZX0gYW5kIHtAbGluayBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGV9XG4gKiB0byBoYXZlIGFuIG92ZXJ2aWV3IG9mIGV4aXN0aW5nIGJ1bGsgb3BlcmF0aW9uIHdpdGggZXhwYW5kYWJsZSBkZXRhaWxzXG4gKiAtIGFkZGl0aW9uYWx5IGltcG9ydCB7QGxpbmsgQnVsa09wZXJhdGlvbnNTdGVwcGVyQ29udGFpbmVyTW9kdWxlfSBhbmQgYW55IG9mIHRoZSBleGlzdGluZ1xuICogYFN0ZXBwZXJCdWxrVHlwZSpNb2R1bGVgIG1vZHVsZXMgKHtAbGluayBTdGVwcGVyQnVsa1R5cGVDb25maWd1cmF0aW9uTW9kdWxlfSxcbiAqIHtAbGluayBTdGVwcGVyQnVsa1R5cGVGaXJtd2FyZU1vZHVsZX0sIHtAbGluayBTdGVwcGVyQnVsa1R5cGVTb2Z0d2FyZU1vZHVsZX0sXG4gKiB7QGxpbmsgU3RlcHBlckJ1bGtUeXBlRGV2aWNlUHJvZmlsZU1vZHVsZX0pIHRvIGhhdmUgdGhlIG9wdGlvblxuICogdG8gY3JlYXRlIG5ldyBidWxrIG9wZXJhdGlvbiBpbiBhIGd1aWRlZCBzdGVwcGVyIGRpYWxvZy5cbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvYnVsay1vcGVyYXRpb25zLXNlcnZpY2UnO1xuICogaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1saXN0JztcbiAqXG4gKiBATmdNb2R1bGUoe1xuICogICBpbXBvcnRzOiBbXG4gKiAgICAgWy4uLl1cbiAqICAgICBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUsXG4gKiAgICAgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlXG4gKiAgIF0sXG4gKiAgIFsuLi5dXG4gKiB9KVxuICogZXhwb3J0IGNsYXNzIEN1c3RvbU9wZXJhdGlvbnNNb2R1bGUge31gYGBcbiAqIHJlc3BlY3RpdmVseVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNTdGVwcGVyQ29udGFpbmVyTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1zdGVwcGVyLWNvbnRhaW5lcic7XG4gKiBpbXBvcnQgeyBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvYnVsay1vcGVyYXRpb25zLXNlcnZpY2UnO1xuICogaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1saXN0JztcbiAqIGltcG9ydCB7IFN0ZXBwZXJCdWxrVHlwZVNvZnR3YXJlTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0ZXBwZXItYnVsay10eXBlLXNvZnR3YXJlJztcbiAqXG4gKiBATmdNb2R1bGUoe1xuICogICBpbXBvcnRzOiBbXG4gKiAgICAgWy4uLl1cbiAqICAgICBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUsXG4gKiAgICAgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlLFxuICogICAgIEJ1bGtPcGVyYXRpb25zU3RlcHBlckNvbnRhaW5lck1vZHVsZSxcbiAqICAgICBTdGVwcGVyQnVsa1R5cGVTb2Z0d2FyZU1vZHVsZVxuICogICBdLFxuICogICBbLi4uXVxuICogfSlcbiAqIGV4cG9ydCBjbGFzcyBDdXN0b21PcGVyYXRpb25zTW9kdWxlIHt9YGBgXG4gKiBZb3UgY2FuIHByb3ZpZGUgeW91ciBvd24gYnVsayBvcGVyYXRpb24gc3RlcHBlciBieSByZWdpc3RlcmluZyBhIGNvbXBvbmVudCB2aWEgdGhlIGBob29rTGlzdEJ1bGtUeXBlYDpcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQge1xuICogICBob29rTGlzdEJ1bGtUeXBlLFxuICogICBiYXNlVXJsXG4gKiB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9idWxrLW9wZXJhdGlvbnMtc2VydmljZSc7XG4gKlxuICogWy4uLl1cbiAqXG4gKiBwcm92aWRlcnM6IFtcbiAqICAgaG9va0xpc3RCdWxrVHlwZSh7XG4gKiAgICAgdHlwZTogJ215LWJ1bGstb3AtdHlwZScsXG4gKiAgICAgYzh5SWNvbjogJ2M4eS10b29scycsXG4gKiAgICAgbmFtZTogJ015IGJ1bGsgb3AgdHlwZScsXG4gKiAgICAgcGF0aDogYCR7YmFzZVVybH1teS10eXBlYCxcbiAqICAgICBjb21wb25lbnQ6IFN0ZXBwZXJNeUJ1bGtUeXBlQ29tcG9uZW50LFxuICogICAgIGZyYWdtZW50czogWydjOHlfTXlUeXBlJ10sXG4gKiAgICAgc2VsZWN0ZWQ6IGZhbHNlXG4gKiAgIH0pXG4gKiBdYGBgXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb3JlTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZS5mb3JDaGlsZChvcGVyYXRpb25zUm91dGVzKSxcbiAgICBCdWxrT3BlcmF0aW9uRnJvbVNpbmdsZU1vZHVsZSxcbiAgICBCdWxrT3BlcmF0aW9uc0xpc3RNb2R1bGUsXG4gICAgQnVsa09wZXJhdGlvbnNTZXJ2aWNlTW9kdWxlLFxuICAgIEJ1bGtPcGVyYXRpb25zU3RlcHBlckNvbnRhaW5lck1vZHVsZSxcbiAgICBTdGVwcGVyQnVsa1R5cGVDb25maWd1cmF0aW9uTW9kdWxlLFxuICAgIFN0ZXBwZXJCdWxrVHlwZUZpcm13YXJlTW9kdWxlLFxuICAgIFN0ZXBwZXJCdWxrVHlwZVNvZnR3YXJlTW9kdWxlLFxuICAgIFN0ZXBwZXJCdWxrVHlwZURldmljZVByb2ZpbGVNb2R1bGUsXG4gICAgT3BlcmF0aW9uc0xpc3RNb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbaG9va1RhYihPcGVyYXRpb25zVGFic0ZhY3RvcnkpLCBob29rTmF2aWdhdG9yKE9wZXJhdGlvbnNOYXZpZ2F0aW9uRmFjdG9yeSldXG59KVxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNNb2R1bGUge31cbiJdfQ==
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9vcGVyYXRpb25zL29wZXJhdGlvbnMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBUyxNQUFNLHFCQUFxQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ3JILE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBRTFHLE9BQU8sRUFDTCxvQ0FBb0MsRUFDcEMsK0JBQStCLEVBQ2hDLE1BQU0sZ0RBQWdELENBQUM7QUFDeEQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUVqRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBWTtJQUN2QztRQUNFLElBQUksRUFBRSxlQUFlO1FBQ3JCLFVBQVUsRUFBRSxzQkFBc0I7UUFDbEMsU0FBUyxFQUFFLE1BQU07S0FDbEI7Q0FDRixDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUVHO0FBcUJILE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLFlBbEJ6QixVQUFVLG1CQUVWLDZCQUE2QjtZQUM3Qix3QkFBd0I7WUFDeEIsMkJBQTJCO1lBQzNCLG9DQUFvQztZQUNwQyxrQ0FBa0M7WUFDbEMsNkJBQTZCO1lBQzdCLDZCQUE2QjtZQUM3QixrQ0FBa0M7K0dBU3pCLGdCQUFnQixhQVBoQjtZQUNULE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQztZQUM5QixhQUFhLENBQUMsMkJBQTJCLENBQUM7WUFDMUMsb0NBQW9DO1lBQ3BDLCtCQUErQjtTQUNoQyxZQWhCQyxVQUFVO1lBQ1YsWUFBWSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQztZQUN2Qyw2QkFBNkI7WUFDN0Isd0JBQXdCO1lBQ3hCLDJCQUEyQjtZQUMzQixvQ0FBb0M7WUFDcEMsa0NBQWtDO1lBQ2xDLDZCQUE2QjtZQUM3Qiw2QkFBNkI7WUFDN0Isa0NBQWtDOzsyRkFTekIsZ0JBQWdCO2tCQXBCNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsVUFBVTt3QkFDVixZQUFZLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDO3dCQUN2Qyw2QkFBNkI7d0JBQzdCLHdCQUF3Qjt3QkFDeEIsMkJBQTJCO3dCQUMzQixvQ0FBb0M7d0JBQ3BDLGtDQUFrQzt3QkFDbEMsNkJBQTZCO3dCQUM3Qiw2QkFBNkI7d0JBQzdCLGtDQUFrQztxQkFDbkM7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQzt3QkFDOUIsYUFBYSxDQUFDLDJCQUEyQixDQUFDO3dCQUMxQyxvQ0FBb0M7d0JBQ3BDLCtCQUErQjtxQkFDaEM7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgQ29yZU1vZHVsZSwgaG9va05hdmlnYXRvciwgaG9va1RhYiwgUm91dGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IEJ1bGtPcGVyYXRpb25Gcm9tU2luZ2xlTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9uLWZyb20tc2luZ2xlJztcbmltcG9ydCB7IEJ1bGtPcGVyYXRpb25zTGlzdE1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9idWxrLW9wZXJhdGlvbnMtbGlzdCc7XG5pbXBvcnQgeyBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvYnVsay1vcGVyYXRpb25zLXNlcnZpY2UnO1xuaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNTdGVwcGVyQ29udGFpbmVyTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1zdGVwcGVyLWNvbnRhaW5lcic7XG5pbXBvcnQgeyBTdGVwcGVyQnVsa1R5cGVDb25maWd1cmF0aW9uTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0ZXBwZXItYnVsay10eXBlLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgU3RlcHBlckJ1bGtUeXBlRGV2aWNlUHJvZmlsZU1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9zdGVwcGVyLWJ1bGstdHlwZS1kZXZpY2UtcHJvZmlsZSc7XG5pbXBvcnQgeyBTdGVwcGVyQnVsa1R5cGVGaXJtd2FyZU1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9zdGVwcGVyLWJ1bGstdHlwZS1maXJtd2FyZSc7XG5pbXBvcnQgeyBTdGVwcGVyQnVsa1R5cGVTb2Z0d2FyZU1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9zdGVwcGVyLWJ1bGstdHlwZS1zb2Z0d2FyZSc7XG5cbmltcG9ydCB7XG4gIGRldmljZUNvbnRyb2xPdmVydmlld0ZlYXR1cmVQcm92aWRlcixcbiAgZGV2aWNlQ29udHJvbFRhYkZlYXR1cmVQcm92aWRlclxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvb3BlcmF0aW9ucy1saXN0JztcbmltcG9ydCB7IE9wZXJhdGlvbnNOYXZpZ2F0aW9uRmFjdG9yeSB9IGZyb20gJy4vZmFjdG9yaWVzL25hdi5mYWN0b3J5JztcbmltcG9ydCB7IE9wZXJhdGlvbnNUYWJzRmFjdG9yeSB9IGZyb20gJy4vZmFjdG9yaWVzL3RhYnMuZmFjdG9yeSc7XG5cbmV4cG9ydCBjb25zdCBvcGVyYXRpb25zUm91dGVzOiBSb3V0ZVtdID0gW1xuICB7XG4gICAgcGF0aDogJ2RldmljZWNvbnRyb2wnLFxuICAgIHJlZGlyZWN0VG86ICdkZXZpY2Vjb250cm9sL3NpbmdsZScsXG4gICAgcGF0aE1hdGNoOiAnZnVsbCdcbiAgfVxuXTtcblxuLyoqXG4gKiBUaGlzIG1vZHVsZSBzZXRzIHVwIHRoZSAnRGV2aWNlIGNvbnRyb2wnIHZpZXcuIEJ5IGltcG9ydGluZyBpdCBpbiB5b3VyIGN1c3RvbSBhcHBsaWNhdGlvbiB5b3Ugd2lsbCBoYXZlOlxuICogLSBhICdEZXZpY2UgY29udHJvbCcgdGFiIGluIGRldmljZSBkZXRhaWxzIHZpZXdcbiAqIC0gYSAnRGV2aWNlIGNvbnRyb2wnIGVudHJ5IGluIHRoZSAnT3ZlcnZpZXdzJyBzZWN0aW9uIG9mIG5hdmlnYXRvclxuICogLSAnQnVsayBvcGVyYXRpb25zJyB0YWIgb24gdGhlICdEZXZpY2UgY29udHJvbCcgcGFnZVxuICogLSBsaXN0IHZpZXcgb2YgZXhpc3RpbmcgYnVsayBvcGVyYXRpb25zIHdpdGggZXhwYW5kYWJsZSBkZXRhaWxzIGFuZCBvcHRpb25zIHRvIGZpbHRlclxuICogLSBndWlkZWQgc3RlcHBlciBkaWFsb2dzIHRvIHNjaGVkdWxlIG5ldyBidWxrIG9wZXJhdGlvbnMgb2Ygc3VwcG9ydGVkIHR5cGVzXG4gKiAoQ29uZmlndXJhdGlvbiB1cGRhdGUsIEZpcm13YXJlIHVwZGF0ZSwgU29mdHdhcmUgdXBkYXRlLCBBcHBseSBkZXZpY2UgcHJvZmlsZSkuXG4gKlxuICogQWRkaXRpb25hbHkgeW91IGNhbiB1c2UgdGhlIG1vZHVsZXMgaW1wb3J0ZWQgYnkge0BsaW5rIE9wZXJhdGlvbnNNb2R1bGV9IHNlcGFyYXRlbHkgdG8gYWNoaWV2ZVxuICogdGhlIHJlc3VsdHMgeW91IHdpc2ggdG8gaGF2ZSBpbiB5b3VyIGFwcGxpY2F0aW9uLCBlLmcuOlxuICogLSBpbXBvcnQge0BsaW5rIEJ1bGtPcGVyYXRpb25zTGlzdE1vZHVsZX0gYW5kIHtAbGluayBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGV9XG4gKiB0byBoYXZlIGFuIG92ZXJ2aWV3IG9mIGV4aXN0aW5nIGJ1bGsgb3BlcmF0aW9uIHdpdGggZXhwYW5kYWJsZSBkZXRhaWxzXG4gKiAtIGFkZGl0aW9uYWx5IGltcG9ydCB7QGxpbmsgQnVsa09wZXJhdGlvbnNTdGVwcGVyQ29udGFpbmVyTW9kdWxlfSBhbmQgYW55IG9mIHRoZSBleGlzdGluZ1xuICogYFN0ZXBwZXJCdWxrVHlwZSpNb2R1bGVgIG1vZHVsZXMgKHtAbGluayBTdGVwcGVyQnVsa1R5cGVDb25maWd1cmF0aW9uTW9kdWxlfSxcbiAqIHtAbGluayBTdGVwcGVyQnVsa1R5cGVGaXJtd2FyZU1vZHVsZX0sIHtAbGluayBTdGVwcGVyQnVsa1R5cGVTb2Z0d2FyZU1vZHVsZX0sXG4gKiB7QGxpbmsgU3RlcHBlckJ1bGtUeXBlRGV2aWNlUHJvZmlsZU1vZHVsZX0pIHRvIGhhdmUgdGhlIG9wdGlvblxuICogdG8gY3JlYXRlIG5ldyBidWxrIG9wZXJhdGlvbiBpbiBhIGd1aWRlZCBzdGVwcGVyIGRpYWxvZy5cbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvYnVsay1vcGVyYXRpb25zLXNlcnZpY2UnO1xuICogaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1saXN0JztcbiAqXG4gKiBATmdNb2R1bGUoe1xuICogICBpbXBvcnRzOiBbXG4gKiAgICAgWy4uLl1cbiAqICAgICBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUsXG4gKiAgICAgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlXG4gKiAgIF0sXG4gKiAgIFsuLi5dXG4gKiB9KVxuICogZXhwb3J0IGNsYXNzIEN1c3RvbU9wZXJhdGlvbnNNb2R1bGUge31gYGBcbiAqIHJlc3BlY3RpdmVseVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNTdGVwcGVyQ29udGFpbmVyTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1zdGVwcGVyLWNvbnRhaW5lcic7XG4gKiBpbXBvcnQgeyBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL29wZXJhdGlvbnMvYnVsay1vcGVyYXRpb25zLXNlcnZpY2UnO1xuICogaW1wb3J0IHsgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL2J1bGstb3BlcmF0aW9ucy1saXN0JztcbiAqIGltcG9ydCB7IFN0ZXBwZXJCdWxrVHlwZVNvZnR3YXJlTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9vcGVyYXRpb25zL3N0ZXBwZXItYnVsay10eXBlLXNvZnR3YXJlJztcbiAqXG4gKiBATmdNb2R1bGUoe1xuICogICBpbXBvcnRzOiBbXG4gKiAgICAgWy4uLl1cbiAqICAgICBCdWxrT3BlcmF0aW9uc1NlcnZpY2VNb2R1bGUsXG4gKiAgICAgQnVsa09wZXJhdGlvbnNMaXN0TW9kdWxlLFxuICogICAgIEJ1bGtPcGVyYXRpb25zU3RlcHBlckNvbnRhaW5lck1vZHVsZSxcbiAqICAgICBTdGVwcGVyQnVsa1R5cGVTb2Z0d2FyZU1vZHVsZVxuICogICBdLFxuICogICBbLi4uXVxuICogfSlcbiAqIGV4cG9ydCBjbGFzcyBDdXN0b21PcGVyYXRpb25zTW9kdWxlIHt9YGBgXG4gKiBZb3UgY2FuIHByb3ZpZGUgeW91ciBvd24gYnVsayBvcGVyYXRpb24gc3RlcHBlciBieSByZWdpc3RlcmluZyBhIGNvbXBvbmVudCB2aWEgdGhlIGBob29rTGlzdEJ1bGtUeXBlYDpcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQge1xuICogICBob29rTGlzdEJ1bGtUeXBlLFxuICogICBiYXNlVXJsXG4gKiB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9idWxrLW9wZXJhdGlvbnMtc2VydmljZSc7XG4gKlxuICogWy4uLl1cbiAqXG4gKiBwcm92aWRlcnM6IFtcbiAqICAgaG9va0xpc3RCdWxrVHlwZSh7XG4gKiAgICAgdHlwZTogJ215LWJ1bGstb3AtdHlwZScsXG4gKiAgICAgYzh5SWNvbjogJ2M4eS10b29scycsXG4gKiAgICAgbmFtZTogJ015IGJ1bGsgb3AgdHlwZScsXG4gKiAgICAgcGF0aDogYCR7YmFzZVVybH1teS10eXBlYCxcbiAqICAgICBjb21wb25lbnQ6IFN0ZXBwZXJNeUJ1bGtUeXBlQ29tcG9uZW50LFxuICogICAgIGZyYWdtZW50czogWydjOHlfTXlUeXBlJ10sXG4gKiAgICAgc2VsZWN0ZWQ6IGZhbHNlXG4gKiAgIH0pXG4gKiBdYGBgXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb3JlTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZS5mb3JDaGlsZChvcGVyYXRpb25zUm91dGVzKSxcbiAgICBCdWxrT3BlcmF0aW9uRnJvbVNpbmdsZU1vZHVsZSxcbiAgICBCdWxrT3BlcmF0aW9uc0xpc3RNb2R1bGUsXG4gICAgQnVsa09wZXJhdGlvbnNTZXJ2aWNlTW9kdWxlLFxuICAgIEJ1bGtPcGVyYXRpb25zU3RlcHBlckNvbnRhaW5lck1vZHVsZSxcbiAgICBTdGVwcGVyQnVsa1R5cGVDb25maWd1cmF0aW9uTW9kdWxlLFxuICAgIFN0ZXBwZXJCdWxrVHlwZUZpcm13YXJlTW9kdWxlLFxuICAgIFN0ZXBwZXJCdWxrVHlwZVNvZnR3YXJlTW9kdWxlLFxuICAgIFN0ZXBwZXJCdWxrVHlwZURldmljZVByb2ZpbGVNb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgaG9va1RhYihPcGVyYXRpb25zVGFic0ZhY3RvcnkpLFxuICAgIGhvb2tOYXZpZ2F0b3IoT3BlcmF0aW9uc05hdmlnYXRpb25GYWN0b3J5KSxcbiAgICBkZXZpY2VDb250cm9sT3ZlcnZpZXdGZWF0dXJlUHJvdmlkZXIsXG4gICAgZGV2aWNlQ29udHJvbFRhYkZlYXR1cmVQcm92aWRlclxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvbnNNb2R1bGUge31cbiJdfQ==
@@ -39,9 +39,10 @@ export class OperationsService {
39
39
  return Object.keys({ ...managedObject }).filter(key => !includes(RESERVED_KEYS, key));
40
40
  }
41
41
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsService, deps: [{ token: i1.OperationService }, { token: i2.ModalService }, { token: i2.AlertService }], target: i0.ɵɵFactoryTarget.Injectable }); }
42
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsService }); }
42
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsService, providedIn: 'root' }); }
43
43
  }
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: OperationsService, decorators: [{
45
- type: Injectable
45
+ type: Injectable,
46
+ args: [{ providedIn: 'root' }]
46
47
  }], ctorParameters: () => [{ type: i1.OperationService }, { type: i2.ModalService }, { type: i2.AlertService }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vb3BlcmF0aW9ucy9zaGFyZWQvb3BlcmF0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyRixPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7O0FBR2xFLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFDVSxnQkFBa0MsRUFDbEMsS0FBbUIsRUFDbkIsWUFBMEI7UUFGMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLGlCQUFZLEdBQVosWUFBWSxDQUFjO0lBQ2pDLENBQUM7SUFFSixlQUFlLENBQUMsU0FBcUI7UUFDbkMsT0FBTyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUFxQixFQUFFLFlBQXNCLEVBQUU7UUFDaEUsT0FBTyxPQUFPLENBQ1osVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUMxRSxHQUFHLFNBQVMsQ0FDYixDQUFDO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBOEI7UUFDekMsSUFBSSxDQUFDO1lBQ0gsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FDdEIsT0FBTyxDQUFDLGtCQUFrQixDQUFDLEVBQzNCLE9BQU8sQ0FBQyxnRUFBZ0UsQ0FBQyxFQUN6RSxNQUFNLENBQUMsTUFBTSxDQUNkLENBQUM7WUFFRixNQUFNLG9CQUFvQixHQUFHLENBQzNCLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztnQkFDakMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxFQUFFO2dCQUNoQixNQUFNLEVBQUUsZUFBZSxDQUFDLE1BQU07Z0JBQzlCLGFBQWEsRUFBRSxPQUFPLENBQUMsOEJBQThCLENBQUM7YUFDdkQsQ0FBQyxDQUNILENBQUMsSUFBSSxDQUFDO1lBQ1AsTUFBTSxDQUFDLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDWixJQUFJLEVBQUUsRUFBRSxDQUFDO2dCQUNQLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDekMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU8sT0FBTyxDQUFDLGFBQWE7UUFDM0IsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7OEdBNUNVLGlCQUFpQjtrSEFBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSU9wZXJhdGlvbiwgT3BlcmF0aW9uU2VydmljZSwgT3BlcmF0aW9uU3RhdHVzIH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlLCBnZXR0ZXh0LCBNb2RhbFNlcnZpY2UsIFN0YXR1cyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgYXNzaWduLCBkaWZmZXJlbmNlLCBoYXMsIGluY2x1ZGVzLCBrZXlzLCBwaWNrQnksIHdpdGhvdXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgUkVTRVJWRURfS0VZUywgU1RBTkRBUkRfS0VZUyB9IGZyb20gJy4vb3BlcmF0aW9ucy5tb2RlbCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPcGVyYXRpb25zU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3BlcmF0aW9uU2VydmljZTogT3BlcmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1vZGFsOiBNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZVxuICApIHt9XG5cbiAgZ2V0U3RhbmRhcmRLZXlzKG9wZXJhdGlvbjogSU9wZXJhdGlvbikge1xuICAgIHJldHVybiBwaWNrQnkoU1RBTkRBUkRfS0VZUywgKF8sIGtleSkgPT4gaGFzKG9wZXJhdGlvbiwga2V5KSk7XG4gIH1cblxuICBnZXROb25TdGFuZGFyZEtleXMob3BlcmF0aW9uOiBJT3BlcmF0aW9uLCBleGNsdWRpbmc6IHN0cmluZ1tdID0gW10pIHtcbiAgICByZXR1cm4gd2l0aG91dChcbiAgICAgIGRpZmZlcmVuY2UodGhpcy5nZXRLZXlzKG9wZXJhdGlvbiksIGtleXModGhpcy5nZXRTdGFuZGFyZEtleXMob3BlcmF0aW9uKSkpLFxuICAgICAgLi4uZXhjbHVkaW5nXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIGNhbmNlbChvcGVyYXRpb246IFBhcnRpYWw8SU9wZXJhdGlvbj4pIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5tb2RhbC5jb25maXJtKFxuICAgICAgICBnZXR0ZXh0KCdDYW5jZWwgb3BlcmF0aW9uJyksXG4gICAgICAgIGdldHRleHQoJ1lvdSBhcmUgYWJvdXQgdG8gY2FuY2VsIHRoZSBvcGVyYXRpb24uIERvIHlvdSB3YW50IHRvIHByb2NlZWQ/JyksXG4gICAgICAgIFN0YXR1cy5EQU5HRVJcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IG9wZXJhdGlvbkFmdGVyVXBkYXRlID0gKFxuICAgICAgICBhd2FpdCB0aGlzLm9wZXJhdGlvblNlcnZpY2UudXBkYXRlKHtcbiAgICAgICAgICBpZDogb3BlcmF0aW9uLmlkLFxuICAgICAgICAgIHN0YXR1czogT3BlcmF0aW9uU3RhdHVzLkZBSUxFRCxcbiAgICAgICAgICBmYWlsdXJlUmVhc29uOiBnZXR0ZXh0KCdPcGVyYXRpb24gY2FuY2VsbGVkIGJ5IHVzZXIuJylcbiAgICAgICAgfSlcbiAgICAgICkuZGF0YTtcbiAgICAgIGFzc2lnbihvcGVyYXRpb24sIG9wZXJhdGlvbkFmdGVyVXBkYXRlKTtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3MoZ2V0dGV4dCgnT3BlcmF0aW9uIGNhbmNlbGxlZC4nKSk7XG4gICAgfSBjYXRjaCAoZXIpIHtcbiAgICAgIGlmIChlcikge1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRTZXJ2ZXJGYWlsdXJlKGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEtleXMobWFuYWdlZE9iamVjdCkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh7IC4uLm1hbmFnZWRPYmplY3QgfSkuZmlsdGVyKGtleSA9PiAhaW5jbHVkZXMoUkVTRVJWRURfS0VZUywga2V5KSk7XG4gIH1cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vb3BlcmF0aW9ucy9zaGFyZWQvb3BlcmF0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyRixPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7O0FBR2xFLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFDVSxnQkFBa0MsRUFDbEMsS0FBbUIsRUFDbkIsWUFBMEI7UUFGMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLGlCQUFZLEdBQVosWUFBWSxDQUFjO0lBQ2pDLENBQUM7SUFFSixlQUFlLENBQUMsU0FBcUI7UUFDbkMsT0FBTyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUFxQixFQUFFLFlBQXNCLEVBQUU7UUFDaEUsT0FBTyxPQUFPLENBQ1osVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUMxRSxHQUFHLFNBQVMsQ0FDYixDQUFDO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBOEI7UUFDekMsSUFBSSxDQUFDO1lBQ0gsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FDdEIsT0FBTyxDQUFDLGtCQUFrQixDQUFDLEVBQzNCLE9BQU8sQ0FBQyxnRUFBZ0UsQ0FBQyxFQUN6RSxNQUFNLENBQUMsTUFBTSxDQUNkLENBQUM7WUFFRixNQUFNLG9CQUFvQixHQUFHLENBQzNCLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztnQkFDakMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxFQUFFO2dCQUNoQixNQUFNLEVBQUUsZUFBZSxDQUFDLE1BQU07Z0JBQzlCLGFBQWEsRUFBRSxPQUFPLENBQUMsOEJBQThCLENBQUM7YUFDdkQsQ0FBQyxDQUNILENBQUMsSUFBSSxDQUFDO1lBQ1AsTUFBTSxDQUFDLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDWixJQUFJLEVBQUUsRUFBRSxDQUFDO2dCQUNQLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDekMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU8sT0FBTyxDQUFDLGFBQWE7UUFDM0IsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7OEdBNUNVLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREosTUFBTTs7MkZBQ25CLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJT3BlcmF0aW9uLCBPcGVyYXRpb25TZXJ2aWNlLCBPcGVyYXRpb25TdGF0dXMgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UsIGdldHRleHQsIE1vZGFsU2VydmljZSwgU3RhdHVzIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBhc3NpZ24sIGRpZmZlcmVuY2UsIGhhcywgaW5jbHVkZXMsIGtleXMsIHBpY2tCeSwgd2l0aG91dCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBSRVNFUlZFRF9LRVlTLCBTVEFOREFSRF9LRVlTIH0gZnJvbSAnLi9vcGVyYXRpb25zLm1vZGVsJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBPcGVyYXRpb25zU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3BlcmF0aW9uU2VydmljZTogT3BlcmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG1vZGFsOiBNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZVxuICApIHt9XG5cbiAgZ2V0U3RhbmRhcmRLZXlzKG9wZXJhdGlvbjogSU9wZXJhdGlvbikge1xuICAgIHJldHVybiBwaWNrQnkoU1RBTkRBUkRfS0VZUywgKF8sIGtleSkgPT4gaGFzKG9wZXJhdGlvbiwga2V5KSk7XG4gIH1cblxuICBnZXROb25TdGFuZGFyZEtleXMob3BlcmF0aW9uOiBJT3BlcmF0aW9uLCBleGNsdWRpbmc6IHN0cmluZ1tdID0gW10pIHtcbiAgICByZXR1cm4gd2l0aG91dChcbiAgICAgIGRpZmZlcmVuY2UodGhpcy5nZXRLZXlzKG9wZXJhdGlvbiksIGtleXModGhpcy5nZXRTdGFuZGFyZEtleXMob3BlcmF0aW9uKSkpLFxuICAgICAgLi4uZXhjbHVkaW5nXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIGNhbmNlbChvcGVyYXRpb246IFBhcnRpYWw8SU9wZXJhdGlvbj4pIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5tb2RhbC5jb25maXJtKFxuICAgICAgICBnZXR0ZXh0KCdDYW5jZWwgb3BlcmF0aW9uJyksXG4gICAgICAgIGdldHRleHQoJ1lvdSBhcmUgYWJvdXQgdG8gY2FuY2VsIHRoZSBvcGVyYXRpb24uIERvIHlvdSB3YW50IHRvIHByb2NlZWQ/JyksXG4gICAgICAgIFN0YXR1cy5EQU5HRVJcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IG9wZXJhdGlvbkFmdGVyVXBkYXRlID0gKFxuICAgICAgICBhd2FpdCB0aGlzLm9wZXJhdGlvblNlcnZpY2UudXBkYXRlKHtcbiAgICAgICAgICBpZDogb3BlcmF0aW9uLmlkLFxuICAgICAgICAgIHN0YXR1czogT3BlcmF0aW9uU3RhdHVzLkZBSUxFRCxcbiAgICAgICAgICBmYWlsdXJlUmVhc29uOiBnZXR0ZXh0KCdPcGVyYXRpb24gY2FuY2VsbGVkIGJ5IHVzZXIuJylcbiAgICAgICAgfSlcbiAgICAgICkuZGF0YTtcbiAgICAgIGFzc2lnbihvcGVyYXRpb24sIG9wZXJhdGlvbkFmdGVyVXBkYXRlKTtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3MoZ2V0dGV4dCgnT3BlcmF0aW9uIGNhbmNlbGxlZC4nKSk7XG4gICAgfSBjYXRjaCAoZXIpIHtcbiAgICAgIGlmIChlcikge1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRTZXJ2ZXJGYWlsdXJlKGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEtleXMobWFuYWdlZE9iamVjdCkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh7IC4uLm1hbmFnZWRPYmplY3QgfSkuZmlsdGVyKGtleSA9PiAhaW5jbHVkZXMoUkVTRVJWRURfS0VZUywga2V5KSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,15 @@
1
- export * from './services-device-tab';
1
+ export * from './services-device-tab/columns/last-updated-date.cell-renderer.component';
2
+ export * from './services-device-tab/columns/last-updated-date.device-grid-column';
3
+ export * from './services-device-tab/columns/name.cell-renderer.component';
4
+ export * from './services-device-tab/columns/name.grid-column';
5
+ export * from './services-device-tab/columns/service-type.grid-column';
6
+ export * from './services-device-tab/columns/status.cell-renderer.component';
7
+ export * from './services-device-tab/columns/status.grid-column';
8
+ export * from './services-device-tab/services-device-tab.component';
9
+ export * from './services-device-tab/services-device-tab.guard';
10
+ export * from './services-device-tab/services-device-tab.module';
11
+ export * from './services-device-tab/services.breadcrumb-factory';
2
12
  export * from './services.module';
3
- export * from './status-options';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zZXJ2aWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMtZGV2aWNlLXRhYic7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0YXR1cy1vcHRpb25zJztcbiJdfQ==
13
+ export * from './status-options/status-options.model';
14
+ export * from './status-options/status-options.service';
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zZXJ2aWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMsb0VBQW9FLENBQUM7QUFDbkYsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLWRldmljZS10YWIvY29sdW1ucy9sYXN0LXVwZGF0ZWQtZGF0ZS5jZWxsLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLWRldmljZS10YWIvY29sdW1ucy9sYXN0LXVwZGF0ZWQtZGF0ZS5kZXZpY2UtZ3JpZC1jb2x1bW4nO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy1kZXZpY2UtdGFiL2NvbHVtbnMvbmFtZS5jZWxsLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLWRldmljZS10YWIvY29sdW1ucy9uYW1lLmdyaWQtY29sdW1uJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMtZGV2aWNlLXRhYi9jb2x1bW5zL3NlcnZpY2UtdHlwZS5ncmlkLWNvbHVtbic7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLWRldmljZS10YWIvY29sdW1ucy9zdGF0dXMuY2VsbC1yZW5kZXJlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy1kZXZpY2UtdGFiL2NvbHVtbnMvc3RhdHVzLmdyaWQtY29sdW1uJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMtZGV2aWNlLXRhYi9zZXJ2aWNlcy1kZXZpY2UtdGFiLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLWRldmljZS10YWIvc2VydmljZXMtZGV2aWNlLXRhYi5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLWRldmljZS10YWIvc2VydmljZXMtZGV2aWNlLXRhYi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy1kZXZpY2UtdGFiL3NlcnZpY2VzLmJyZWFkY3J1bWItZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0YXR1cy1vcHRpb25zL3N0YXR1cy1vcHRpb25zLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdHVzLW9wdGlvbnMvc3RhdHVzLW9wdGlvbnMuc2VydmljZSc7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYzh5LW5neC1jb21wb25lbnRzLXNlcnZpY2VzLXNlcnZpY2UtY29tbWFuZC10YWIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zZXJ2aWNlcy9zZXJ2aWNlLWNvbW1hbmQtdGFiL2M4eS1uZ3gtY29tcG9uZW50cy1zZXJ2aWNlcy1zZXJ2aWNlLWNvbW1hbmQtdGFiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,3 @@
1
+ export * from './service-command-tab.component';
2
+ export * from './service-command.feature';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zZXJ2aWNlcy9zZXJ2aWNlLWNvbW1hbmQtdGFiL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1jb21tYW5kLXRhYi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLWNvbW1hbmQuZmVhdHVyZSc7XG4iXX0=
@@ -0,0 +1,33 @@
1
+ import { NgFor } from '@angular/common';
2
+ import { Component } from '@angular/core';
3
+ import { ActivatedRoute } from '@angular/router';
4
+ import { ActionBarItemComponent, C8yTranslatePipe, ContextRouteService, HelpModule, IconDirective } from '@c8y/ngx-components';
5
+ import { OperationsListComponent } from '@c8y/ngx-components/operations/operations-list';
6
+ import { ServiceCommandService } from '@c8y/ngx-components/services/shared';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@c8y/ngx-components/services/shared";
9
+ import * as i2 from "@c8y/ngx-components";
10
+ import * as i3 from "@angular/router";
11
+ export class ServiceCommandTabComponent {
12
+ constructor(commandService, contextRouteService, activatedRoute) {
13
+ this.actions = [];
14
+ const { contextData } = contextRouteService.getContextData(activatedRoute);
15
+ this.service = contextData;
16
+ const commands = commandService.getAllSupportedCommands([contextData]);
17
+ this.actions = commandService.generateActionControls(commands);
18
+ }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ServiceCommandTabComponent, deps: [{ token: i1.ServiceCommandService }, { token: i2.ContextRouteService }, { token: i3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: ServiceCommandTabComponent, isStandalone: true, selector: "c8y-service-command-tab", ngImport: i0, template: "<c8y-action-bar-item\n *ngFor=\"let action of actions; let i = index\"\n [placement]=\"i < 3 ? 'right' : 'more'\"\n>\n <button\n class=\"d-flex a-i-center {{ i < 3 ? 'btn btn-link' : '' }}\"\n [title]=\"action.text | translate\"\n (click)=\"action.callback(service)\"\n style=\"max-width: {{ i < 3 ? '160px' : 'unset' }};\"\n >\n <i\n class=\"m-r-4\"\n [class]=\"action.iconClasses\"\n [c8yIcon]=\"action.icon\"\n ></i>\n <span\n class=\"text-truncate\"\n translate\n >\n {{ action.text }}\n </span>\n </button>\n</c8y-action-bar-item>\n\n<c8y-operations-list\n fragmentType=\"c8y_ServiceCommand\"\n [readOnlyItems]=\"true\"\n>\n <!-- TODO Add context help \n <c8y-help></c8y-help>\n -->\n</c8y-operations-list>\n", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "component", type: OperationsListComponent, selector: "c8y-operations-list", inputs: ["fragmentType", "readOnlyItems"] }, { kind: "component", type: ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "ngmodule", type: HelpModule }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
21
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ServiceCommandTabComponent, decorators: [{
23
+ type: Component,
24
+ args: [{ selector: 'c8y-service-command-tab', standalone: true, imports: [
25
+ NgFor,
26
+ IconDirective,
27
+ OperationsListComponent,
28
+ ActionBarItemComponent,
29
+ HelpModule,
30
+ C8yTranslatePipe
31
+ ], template: "<c8y-action-bar-item\n *ngFor=\"let action of actions; let i = index\"\n [placement]=\"i < 3 ? 'right' : 'more'\"\n>\n <button\n class=\"d-flex a-i-center {{ i < 3 ? 'btn btn-link' : '' }}\"\n [title]=\"action.text | translate\"\n (click)=\"action.callback(service)\"\n style=\"max-width: {{ i < 3 ? '160px' : 'unset' }};\"\n >\n <i\n class=\"m-r-4\"\n [class]=\"action.iconClasses\"\n [c8yIcon]=\"action.icon\"\n ></i>\n <span\n class=\"text-truncate\"\n translate\n >\n {{ action.text }}\n </span>\n </button>\n</c8y-action-bar-item>\n\n<c8y-operations-list\n fragmentType=\"c8y_ServiceCommand\"\n [readOnlyItems]=\"true\"\n>\n <!-- TODO Add context help \n <c8y-help></c8y-help>\n -->\n</c8y-operations-list>\n" }]
32
+ }], ctorParameters: () => [{ type: i1.ServiceCommandService }, { type: i2.ContextRouteService }, { type: i3.ActivatedRoute }] });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jb21tYW5kLXRhYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zZXJ2aWNlcy9zZXJ2aWNlLWNvbW1hbmQtdGFiL3NlcnZpY2UtY29tbWFuZC10YWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc2VydmljZXMvc2VydmljZS1jb21tYW5kLXRhYi9zZXJ2aWNlLWNvbW1hbmQtdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQ0wsc0JBQXNCLEVBRXRCLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLGFBQWEsRUFDZCxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3pGLE9BQU8sRUFBVyxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7OztBQWVyRixNQUFNLE9BQU8sMEJBQTBCO0lBSXJDLFlBQ0UsY0FBcUMsRUFDckMsbUJBQXdDLEVBQ3hDLGNBQThCO1FBTGhDLFlBQU8sR0FBb0IsRUFBRSxDQUFDO1FBTzVCLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLE9BQU8sR0FBWSxXQUFXLENBQUM7UUFDcEMsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFDLHVCQUF1QixDQUFDLENBQUMsV0FBaUMsQ0FBQyxDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakUsQ0FBQzs4R0FiVSwwQkFBMEI7a0dBQTFCLDBCQUEwQixtRkMzQnZDLDh3QkFnQ0EsNENEZEksS0FBSyxtSEFDTCxhQUFhLDJFQUNiLHVCQUF1QiwyR0FDdkIsc0JBQXNCLHlKQUN0QixVQUFVLDBCQUNWLGdCQUFnQjs7MkZBSVAsMEJBQTBCO2tCQWJ0QyxTQUFTOytCQUNFLHlCQUF5QixjQUN2QixJQUFJLFdBQ1A7d0JBQ1AsS0FBSzt3QkFDTCxhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3dCQUN0QixVQUFVO3dCQUNWLGdCQUFnQjtxQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIEFjdGlvbkJhckl0ZW1Db21wb25lbnQsXG4gIEFjdGlvbkNvbnRyb2wsXG4gIEM4eVRyYW5zbGF0ZVBpcGUsXG4gIENvbnRleHRSb3V0ZVNlcnZpY2UsXG4gIEhlbHBNb2R1bGUsXG4gIEljb25EaXJlY3RpdmVcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBPcGVyYXRpb25zTGlzdENvbXBvbmVudCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvb3BlcmF0aW9ucy9vcGVyYXRpb25zLWxpc3QnO1xuaW1wb3J0IHsgU2VydmljZSwgU2VydmljZUNvbW1hbmRTZXJ2aWNlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9zZXJ2aWNlcy9zaGFyZWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktc2VydmljZS1jb21tYW5kLXRhYicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0ZvcixcbiAgICBJY29uRGlyZWN0aXZlLFxuICAgIE9wZXJhdGlvbnNMaXN0Q29tcG9uZW50LFxuICAgIEFjdGlvbkJhckl0ZW1Db21wb25lbnQsXG4gICAgSGVscE1vZHVsZSxcbiAgICBDOHlUcmFuc2xhdGVQaXBlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9zZXJ2aWNlLWNvbW1hbmQtdGFiLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTZXJ2aWNlQ29tbWFuZFRhYkNvbXBvbmVudCB7XG4gIHNlcnZpY2U6IFNlcnZpY2U7XG4gIGFjdGlvbnM6IEFjdGlvbkNvbnRyb2xbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNvbW1hbmRTZXJ2aWNlOiBTZXJ2aWNlQ29tbWFuZFNlcnZpY2UsXG4gICAgY29udGV4dFJvdXRlU2VydmljZTogQ29udGV4dFJvdXRlU2VydmljZSxcbiAgICBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGVcbiAgKSB7XG4gICAgY29uc3QgeyBjb250ZXh0RGF0YSB9ID0gY29udGV4dFJvdXRlU2VydmljZS5nZXRDb250ZXh0RGF0YShhY3RpdmF0ZWRSb3V0ZSk7XG4gICAgdGhpcy5zZXJ2aWNlID0gPFNlcnZpY2U+Y29udGV4dERhdGE7XG4gICAgY29uc3QgY29tbWFuZHMgPSBjb21tYW5kU2VydmljZS5nZXRBbGxTdXBwb3J0ZWRDb21tYW5kcyhbY29udGV4dERhdGEgYXMgdW5rbm93biBhcyBTZXJ2aWNlXSk7XG4gICAgdGhpcy5hY3Rpb25zID0gY29tbWFuZFNlcnZpY2UuZ2VuZXJhdGVBY3Rpb25Db250cm9scyhjb21tYW5kcyk7XG4gIH1cbn1cbiIsIjxjOHktYWN0aW9uLWJhci1pdGVtXG4gICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgYWN0aW9uczsgbGV0IGkgPSBpbmRleFwiXG4gIFtwbGFjZW1lbnRdPVwiaSA8IDMgPyAncmlnaHQnIDogJ21vcmUnXCJcbj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiZC1mbGV4IGEtaS1jZW50ZXIge3sgaSA8IDMgPyAnYnRuIGJ0bi1saW5rJyA6ICcnIH19XCJcbiAgICBbdGl0bGVdPVwiYWN0aW9uLnRleHQgfCB0cmFuc2xhdGVcIlxuICAgIChjbGljayk9XCJhY3Rpb24uY2FsbGJhY2soc2VydmljZSlcIlxuICAgIHN0eWxlPVwibWF4LXdpZHRoOiB7eyBpIDwgMyA/ICcxNjBweCcgOiAndW5zZXQnIH19O1wiXG4gID5cbiAgICA8aVxuICAgICAgY2xhc3M9XCJtLXItNFwiXG4gICAgICBbY2xhc3NdPVwiYWN0aW9uLmljb25DbGFzc2VzXCJcbiAgICAgIFtjOHlJY29uXT1cImFjdGlvbi5pY29uXCJcbiAgICA+PC9pPlxuICAgIDxzcGFuXG4gICAgICBjbGFzcz1cInRleHQtdHJ1bmNhdGVcIlxuICAgICAgdHJhbnNsYXRlXG4gICAgPlxuICAgICAge3sgYWN0aW9uLnRleHQgfX1cbiAgICA8L3NwYW4+XG4gIDwvYnV0dG9uPlxuPC9jOHktYWN0aW9uLWJhci1pdGVtPlxuXG48Yzh5LW9wZXJhdGlvbnMtbGlzdFxuICBmcmFnbWVudFR5cGU9XCJjOHlfU2VydmljZUNvbW1hbmRcIlxuICBbcmVhZE9ubHlJdGVtc109XCJ0cnVlXCJcbj5cbiAgPCEtLSBUT0RPIEFkZCBjb250ZXh0IGhlbHAgXG4gIDxjOHktaGVscD48L2M4eS1oZWxwPlxuICAtLT5cbjwvYzh5LW9wZXJhdGlvbnMtbGlzdD5cbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { makeEnvironmentProviders } from '@angular/core';
2
+ import { gettext, hookRoute, ViewContext } from '@c8y/ngx-components';
3
+ import { ServiceCommandTabComponent } from './service-command-tab.component';
4
+ export const serviceCommandTabFeatureProvider = makeEnvironmentProviders([
5
+ hookRoute({
6
+ context: ViewContext.Service,
7
+ path: 'commands',
8
+ component: ServiceCommandTabComponent,
9
+ label: gettext('Commands'),
10
+ icon: 'sliders1',
11
+ priority: 600
12
+ })
13
+ ]);
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jb21tYW5kLmZlYXR1cmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zZXJ2aWNlcy9zZXJ2aWNlLWNvbW1hbmQtdGFiL3NlcnZpY2UtY29tbWFuZC5mZWF0dXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBd0Isd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQXlCLHdCQUF3QixDQUFDO0lBQzdGLFNBQVMsQ0FBQztRQUNSLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTztRQUM1QixJQUFJLEVBQUUsVUFBVTtRQUNoQixTQUFTLEVBQUUsMEJBQTBCO1FBQ3JDLEtBQUssRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQzFCLElBQUksRUFBRSxVQUFVO1FBQ2hCLFFBQVEsRUFBRSxHQUFHO0tBQ2QsQ0FBQztDQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldHRleHQsIGhvb2tSb3V0ZSwgVmlld0NvbnRleHQgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IFNlcnZpY2VDb21tYW5kVGFiQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJ2aWNlLWNvbW1hbmQtdGFiLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBzZXJ2aWNlQ29tbWFuZFRhYkZlYXR1cmVQcm92aWRlcjogRW52aXJvbm1lbnRQcm92aWRlcnMgPSBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW1xuICBob29rUm91dGUoe1xuICAgIGNvbnRleHQ6IFZpZXdDb250ZXh0LlNlcnZpY2UsXG4gICAgcGF0aDogJ2NvbW1hbmRzJyxcbiAgICBjb21wb25lbnQ6IFNlcnZpY2VDb21tYW5kVGFiQ29tcG9uZW50LFxuICAgIGxhYmVsOiBnZXR0ZXh0KCdDb21tYW5kcycpLFxuICAgIGljb246ICdzbGlkZXJzMScsXG4gICAgcHJpb3JpdHk6IDYwMFxuICB9KVxuXSk7XG4iXX0=