@c8y/ngx-components 1022.21.3 → 1022.27.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 (144) hide show
  1. package/asset-properties/asset-properties.model.d.ts +117 -0
  2. package/asset-properties/asset-properties.model.d.ts.map +1 -0
  3. package/asset-properties/asset-properties.service.d.ts +72 -0
  4. package/asset-properties/asset-properties.service.d.ts.map +1 -0
  5. package/asset-properties/asset-property-list/asset-property-action.directive.d.ts +11 -0
  6. package/asset-properties/asset-property-list/asset-property-action.directive.d.ts.map +1 -0
  7. package/asset-properties/asset-property-list/asset-property-icon.pipe.d.ts +11 -0
  8. package/asset-properties/asset-property-list/asset-property-icon.pipe.d.ts.map +1 -0
  9. package/asset-properties/asset-property-list/asset-property-list.component.d.ts +195 -0
  10. package/asset-properties/asset-property-list/asset-property-list.component.d.ts.map +1 -0
  11. package/asset-properties/asset-property-list/asset-property-value.pipe.d.ts +17 -0
  12. package/asset-properties/asset-property-list/asset-property-value.pipe.d.ts.map +1 -0
  13. package/asset-properties/asset-property-list/tree-data-source.d.ts +19 -0
  14. package/asset-properties/asset-property-list/tree-data-source.d.ts.map +1 -0
  15. package/asset-properties/asset-property-selector-drawer/asset-property-selector-drawer.component.d.ts +75 -0
  16. package/asset-properties/asset-property-selector-drawer/asset-property-selector-drawer.component.d.ts.map +1 -0
  17. package/asset-properties/c8y-ngx-components-asset-properties.d.ts.map +1 -0
  18. package/asset-properties/index.d.ts +6 -0
  19. package/asset-properties/index.d.ts.map +1 -0
  20. package/core/search/inventory-search.service.d.ts +4 -3
  21. package/core/search/inventory-search.service.d.ts.map +1 -1
  22. package/core/search/search-input.component.d.ts +5 -2
  23. package/core/search/search-input.component.d.ts.map +1 -1
  24. package/core/search/search.model.d.ts +4 -0
  25. package/core/search/search.model.d.ts.map +1 -1
  26. package/core/search/search.service.d.ts +2 -1
  27. package/core/search/search.service.d.ts.map +1 -1
  28. package/core/select/typeahead.component.d.ts +2 -1
  29. package/core/select/typeahead.component.d.ts.map +1 -1
  30. package/core/user/user-edit-modal.component.d.ts.map +1 -1
  31. package/datapoint-explorer/view/datapoint-explorer.component.d.ts +2 -0
  32. package/datapoint-explorer/view/datapoint-explorer.component.d.ts.map +1 -1
  33. package/device-grid/device-grid.component.d.ts.map +1 -1
  34. package/device-grid/device-grid.service.d.ts +4 -3
  35. package/device-grid/device-grid.service.d.ts.map +1 -1
  36. package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts +8 -2
  37. package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts.map +1 -1
  38. package/echart/charts.component.d.ts +1 -1
  39. package/echart/charts.component.d.ts.map +1 -1
  40. package/echart/index.d.ts +1 -0
  41. package/echart/index.d.ts.map +1 -1
  42. package/echart/models/datapoints-graph-widget.model.d.ts +13 -0
  43. package/echart/models/datapoints-graph-widget.model.d.ts.map +1 -1
  44. package/echart/services/chart-helpers.service.d.ts +23 -0
  45. package/echart/services/chart-helpers.service.d.ts.map +1 -0
  46. package/echart/services/echarts-options.service.d.ts +1 -1
  47. package/echart/services/echarts-options.service.d.ts.map +1 -1
  48. package/ecosystem/application-plugins/application-plugins.component.d.ts +3 -0
  49. package/ecosystem/application-plugins/application-plugins.component.d.ts.map +1 -1
  50. package/fesm2022/c8y-ngx-components-alarms.mjs +2 -2
  51. package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
  52. package/fesm2022/c8y-ngx-components-asset-properties.mjs +1573 -0
  53. package/fesm2022/c8y-ngx-components-asset-properties.mjs.map +1 -0
  54. package/fesm2022/c8y-ngx-components-assets-navigator.mjs +2 -2
  55. package/fesm2022/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  56. package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs +22 -7
  57. package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs.map +1 -1
  58. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +1 -1
  59. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
  60. package/fesm2022/c8y-ngx-components-device-grid.mjs +21 -13
  61. package/fesm2022/c8y-ngx-components-device-grid.mjs.map +1 -1
  62. package/fesm2022/c8y-ngx-components-device-list.mjs +2 -2
  63. package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
  64. package/fesm2022/c8y-ngx-components-device-profile.mjs +1 -1
  65. package/fesm2022/c8y-ngx-components-device-profile.mjs.map +1 -1
  66. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs +32 -18
  67. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs.map +1 -1
  68. package/fesm2022/c8y-ngx-components-echart-models.mjs +14 -1
  69. package/fesm2022/c8y-ngx-components-echart-models.mjs.map +1 -1
  70. package/fesm2022/c8y-ngx-components-echart.mjs +109 -98
  71. package/fesm2022/c8y-ngx-components-echart.mjs.map +1 -1
  72. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs +41 -21
  73. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs.map +1 -1
  74. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +1 -1
  75. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs.map +1 -1
  76. package/fesm2022/c8y-ngx-components-ecosystem.mjs +1 -1
  77. package/fesm2022/c8y-ngx-components-ecosystem.mjs.map +1 -1
  78. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs +1 -1
  79. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs.map +1 -1
  80. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs +1 -1
  81. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs.map +1 -1
  82. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs +1 -1
  83. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs.map +1 -1
  84. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +2 -2
  85. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs.map +1 -1
  86. package/fesm2022/c8y-ngx-components-protocol-opcua.mjs +3 -3
  87. package/fesm2022/c8y-ngx-components-protocol-opcua.mjs.map +1 -1
  88. package/fesm2022/c8y-ngx-components-repository-configuration.mjs +1 -1
  89. package/fesm2022/c8y-ngx-components-repository-configuration.mjs.map +1 -1
  90. package/fesm2022/c8y-ngx-components-repository-firmware.mjs +2 -2
  91. package/fesm2022/c8y-ngx-components-repository-firmware.mjs.map +1 -1
  92. package/fesm2022/c8y-ngx-components-repository-shared.mjs +2 -2
  93. package/fesm2022/c8y-ngx-components-repository-shared.mjs.map +1 -1
  94. package/fesm2022/c8y-ngx-components-repository-software.mjs +1 -1
  95. package/fesm2022/c8y-ngx-components-repository-software.mjs.map +1 -1
  96. package/fesm2022/c8y-ngx-components-search.mjs +328 -210
  97. package/fesm2022/c8y-ngx-components-search.mjs.map +1 -1
  98. package/fesm2022/c8y-ngx-components-sub-assets.mjs +36 -16
  99. package/fesm2022/c8y-ngx-components-sub-assets.mjs.map +1 -1
  100. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs +6 -0
  101. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs.map +1 -1
  102. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs +12 -4
  103. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs.map +1 -1
  104. package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs +51 -10
  105. package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs.map +1 -1
  106. package/fesm2022/c8y-ngx-components.mjs +7390 -7345
  107. package/fesm2022/c8y-ngx-components.mjs.map +1 -1
  108. package/locales/de.po +43 -24
  109. package/locales/es.po +43 -24
  110. package/locales/fr.po +43 -24
  111. package/locales/ja_JP.po +41 -24
  112. package/locales/ko.po +42 -24
  113. package/locales/locales.pot +67 -12
  114. package/locales/nl.po +43 -24
  115. package/locales/pl.po +43 -24
  116. package/locales/pt_BR.po +43 -24
  117. package/locales/zh_CN.po +43 -24
  118. package/locales/zh_TW.po +43 -24
  119. package/package.json +1 -1
  120. package/search/columns/asset-type-search-grid-column.d.ts.map +1 -1
  121. package/search/search-action.component.d.ts +12 -8
  122. package/search/search-action.component.d.ts.map +1 -1
  123. package/search/search-custom-filters.component.d.ts +18 -4
  124. package/search/search-custom-filters.component.d.ts.map +1 -1
  125. package/search/search-grid.component.d.ts +14 -14
  126. package/search/search-grid.component.d.ts.map +1 -1
  127. package/search/search-results.component.d.ts +3 -1
  128. package/search/search-results.component.d.ts.map +1 -1
  129. package/search/search.module.d.ts.map +1 -1
  130. package/search/search.service.d.ts +14 -6
  131. package/search/search.service.d.ts.map +1 -1
  132. package/sub-assets/sub-assets.service.d.ts +9 -5
  133. package/sub-assets/sub-assets.service.d.ts.map +1 -1
  134. package/widgets/definitions/html-widget/html-widget-config.factory.d.ts.map +1 -1
  135. package/widgets/implementations/datapoints-graph/datapoints-graph-config/datapoints-graph-widget-config.component.d.ts +2 -0
  136. package/widgets/implementations/datapoints-graph/datapoints-graph-config/datapoints-graph-widget-config.component.d.ts.map +1 -1
  137. package/widgets/implementations/html-widget/html-widget-properties-selector/html-widget-properties-selector.component.d.ts +17 -0
  138. package/widgets/implementations/html-widget/html-widget-properties-selector/html-widget-properties-selector.component.d.ts.map +1 -0
  139. package/widgets/implementations/html-widget/html-widget.model.d.ts +2 -2
  140. package/widgets/implementations/html-widget/html-widget.model.d.ts.map +1 -1
  141. package/widgets/implementations/html-widget/index.d.ts +1 -0
  142. package/widgets/implementations/html-widget/index.d.ts.map +1 -1
  143. package/echart/services/custom-measurements.service.d.ts +0 -12
  144. package/echart/services/custom-measurements.service.d.ts.map +0 -1
@@ -1484,7 +1484,7 @@ class TypeFilteringFormRendererComponent {
1484
1484
  return uniqueByType;
1485
1485
  }
1486
1486
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: TypeFilteringFormRendererComponent, deps: [{ token: i1.FilteringFormRendererContext }, { token: i0.ChangeDetectorRef }, { token: RepositoryService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1487
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: TypeFilteringFormRendererComponent, isStandalone: true, selector: "c8y-type-filtering-form-renderer", host: { listeners: { "keyup.enter": "onEnterKeyUp($event)", "keydown.escape": "onEscapeKeyDown($event)" } }, viewQueries: [{ propertyName: "typeahead", first: true, predicate: TypeaheadComponent, descendants: true }], ngImport: i0, template: "<c8y-form-group>\n <label>\n {{ context?.property?.filterLabel | translate }}\n </label>\n <c8y-typeahead\n placeholder=\"{{ typeaheadPlaceholder | translate: { example: context?.property?.example } }}\"\n [name]=\"path\"\n [(ngModel)]=\"selectedType\"\n [displayProperty]=\"path\"\n (onSearch)=\"search$.next($event)\"\n >\n <c8y-li\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n *c8yFor=\"let type of types$; pipe: filterPipe; loadMore: 'auto'\"\n (click)=\"$event.stopPropagation(); selectedType = type; typeahead.dropdown.hide()\"\n [active]=\"selectedType?.[path] === type?.[path]\"\n >\n <c8y-highlight\n [text]=\"type?.[path] || '--'\"\n [pattern]=\"search$.value\"\n ></c8y-highlight>\n </c8y-li>\n </c8y-typeahead>\n</c8y-form-group>\n\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n title=\"{{ 'Reset' | translate }}\"\n (click)=\"context.resetFilter()\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n title=\"{{ 'Apply' | translate }}\"\n (click)=\"applyFilter()\"\n translate\n >\n Apply\n </button>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule$1 }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { 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: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CoreModule }, { kind: "component", type: i1.HighlightComponent, selector: "c8y-highlight", inputs: ["pattern", "text", "elementClass", "shouldTrimPattern"] }, { kind: "component", type: i1.TypeaheadComponent, selector: "c8y-typeahead", inputs: ["required", "maxlength", "disabled", "allowFreeEntries", "placeholder", "displayProperty", "icon", "name", "autoClose", "hideNew", "container", "selected", "highlightFirstItem"], outputs: ["onSearch", "onIconClick"] }, { kind: "component", type: i1.FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "component", type: i1.ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
1487
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: TypeFilteringFormRendererComponent, isStandalone: true, selector: "c8y-type-filtering-form-renderer", host: { listeners: { "keyup.enter": "onEnterKeyUp($event)", "keydown.escape": "onEscapeKeyDown($event)" } }, viewQueries: [{ propertyName: "typeahead", first: true, predicate: TypeaheadComponent, descendants: true }], ngImport: i0, template: "<c8y-form-group>\n <label>\n {{ context?.property?.filterLabel | translate }}\n </label>\n <c8y-typeahead\n placeholder=\"{{ typeaheadPlaceholder | translate: { example: context?.property?.example } }}\"\n [name]=\"path\"\n [(ngModel)]=\"selectedType\"\n [displayProperty]=\"path\"\n (onSearch)=\"search$.next($event)\"\n >\n <c8y-li\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n *c8yFor=\"let type of types$; pipe: filterPipe; loadMore: 'auto'\"\n (click)=\"$event.stopPropagation(); selectedType = type; typeahead.dropdown.hide()\"\n [active]=\"selectedType?.[path] === type?.[path]\"\n >\n <c8y-highlight\n [text]=\"type?.[path] || '--'\"\n [pattern]=\"search$.value\"\n ></c8y-highlight>\n </c8y-li>\n </c8y-typeahead>\n</c8y-form-group>\n\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n title=\"{{ 'Reset' | translate }}\"\n (click)=\"context.resetFilter()\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n title=\"{{ 'Apply' | translate }}\"\n (click)=\"applyFilter()\"\n translate\n >\n Apply\n </button>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule$1 }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { 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: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CoreModule }, { kind: "component", type: i1.HighlightComponent, selector: "c8y-highlight", inputs: ["pattern", "text", "elementClass", "shouldTrimPattern"] }, { kind: "component", type: i1.TypeaheadComponent, selector: "c8y-typeahead", inputs: ["required", "maxlength", "disabled", "allowFreeEntries", "placeholder", "displayProperty", "icon", "name", "autoClose", "hideNew", "container", "selected", "title", "highlightFirstItem"], outputs: ["onSearch", "onIconClick"] }, { kind: "component", type: i1.FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "component", type: i1.ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
1488
1488
  }
1489
1489
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: TypeFilteringFormRendererComponent, decorators: [{
1490
1490
  type: Component,
@@ -2009,7 +2009,7 @@ class SoftwareTypeComponent {
2009
2009
  useExisting: forwardRef(() => SoftwareTypeComponent),
2010
2010
  multi: true
2011
2011
  }
2012
- ], viewQueries: [{ propertyName: "deviceSoftwareTypeModel", first: true, predicate: ["deviceSoftwareTypeModel"], descendants: true }, { propertyName: "notFoundTypeAddNewTemplate", first: true, predicate: ["notFoundTypeAddNewTemplate"], descendants: true, static: true }, { propertyName: "notFoundTypeTemplate", first: true, predicate: ["notFoundTypeTemplate"], descendants: true, static: true }], ngImport: i0, template: "<c8y-typeahead\n [(ngModel)]=\"softwareTypeMO\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n name=\"softwareType\"\n [placeholder]=\"placeholder\"\n [allowFreeEntries]=\"allowFreeEntries\"\n #deviceSoftwareTypeModel\n (onSearch)=\"search$.next($event)\"\n displayProperty=\"softwareType\"\n [ngStyle]=\"style\"\n>\n <c8y-li\n *ngIf=\"showClearSelectionOption\"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"clearSoftware()\"\n [active]=\"!softwareTypeMO?.softwareType\"\n >\n <span>{{ clearSelectionOptionLabel | translate }}</span>\n </c8y-li>\n <c8y-li\n *c8yFor=\"\n let software of softwaresResult$;\n pipe: filterPipe;\n loadMore: 'auto';\n notFound: notFoundTemplateToUse\n \"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"selectSoftware(software)\"\n [active]=\"softwareTypeMO?.softwareType === software.softwareType\"\n >\n <c8y-highlight\n [text]=\"software.softwareType || '--'\"\n [pattern]=\"search$ | async\"\n ></c8y-highlight>\n </c8y-li>\n <ng-template #notFoundTypeAddNewTemplate>\n <c8y-li class=\"bg-level-2 p-8\" *ngIf=\"(search$ | async)?.length > 0\">\n <span translate>No match found.</span>\n <button\n title=\"{{ 'Add new`software type`' | translate }}\"\n type=\"button\"\n class=\"btn btn-primary btn-xs m-l-8\"\n translate\n >\n Add new`software type`\n </button>\n </c8y-li>\n </ng-template>\n <ng-template #notFoundTypeTemplate>\n <c8y-li\n class=\"bg-level-2 p-8\"\n *ngIf=\"(search$ | async)?.length > 0 && (softwaresResult$ | async)?.data?.length === 0\"\n >\n <span translate>No match found. Refine your search terms or check your spelling.</span>\n </c8y-li>\n </ng-template>\n</c8y-typeahead>\n", dependencies: [{ kind: "component", type: TypeaheadComponent, selector: "c8y-typeahead", inputs: ["required", "maxlength", "disabled", "allowFreeEntries", "placeholder", "displayProperty", "icon", "name", "autoClose", "hideNew", "container", "selected", "highlightFirstItem"], outputs: ["onSearch", "onIconClick"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "directive", type: 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: HighlightComponent, selector: "c8y-highlight", inputs: ["pattern", "text", "elementClass", "shouldTrimPattern"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
2012
+ ], viewQueries: [{ propertyName: "deviceSoftwareTypeModel", first: true, predicate: ["deviceSoftwareTypeModel"], descendants: true }, { propertyName: "notFoundTypeAddNewTemplate", first: true, predicate: ["notFoundTypeAddNewTemplate"], descendants: true, static: true }, { propertyName: "notFoundTypeTemplate", first: true, predicate: ["notFoundTypeTemplate"], descendants: true, static: true }], ngImport: i0, template: "<c8y-typeahead\n [(ngModel)]=\"softwareTypeMO\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n name=\"softwareType\"\n [placeholder]=\"placeholder\"\n [allowFreeEntries]=\"allowFreeEntries\"\n #deviceSoftwareTypeModel\n (onSearch)=\"search$.next($event)\"\n displayProperty=\"softwareType\"\n [ngStyle]=\"style\"\n>\n <c8y-li\n *ngIf=\"showClearSelectionOption\"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"clearSoftware()\"\n [active]=\"!softwareTypeMO?.softwareType\"\n >\n <span>{{ clearSelectionOptionLabel | translate }}</span>\n </c8y-li>\n <c8y-li\n *c8yFor=\"\n let software of softwaresResult$;\n pipe: filterPipe;\n loadMore: 'auto';\n notFound: notFoundTemplateToUse\n \"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"selectSoftware(software)\"\n [active]=\"softwareTypeMO?.softwareType === software.softwareType\"\n >\n <c8y-highlight\n [text]=\"software.softwareType || '--'\"\n [pattern]=\"search$ | async\"\n ></c8y-highlight>\n </c8y-li>\n <ng-template #notFoundTypeAddNewTemplate>\n <c8y-li class=\"bg-level-2 p-8\" *ngIf=\"(search$ | async)?.length > 0\">\n <span translate>No match found.</span>\n <button\n title=\"{{ 'Add new`software type`' | translate }}\"\n type=\"button\"\n class=\"btn btn-primary btn-xs m-l-8\"\n translate\n >\n Add new`software type`\n </button>\n </c8y-li>\n </ng-template>\n <ng-template #notFoundTypeTemplate>\n <c8y-li\n class=\"bg-level-2 p-8\"\n *ngIf=\"(search$ | async)?.length > 0 && (softwaresResult$ | async)?.data?.length === 0\"\n >\n <span translate>No match found. Refine your search terms or check your spelling.</span>\n </c8y-li>\n </ng-template>\n</c8y-typeahead>\n", dependencies: [{ kind: "component", type: TypeaheadComponent, selector: "c8y-typeahead", inputs: ["required", "maxlength", "disabled", "allowFreeEntries", "placeholder", "displayProperty", "icon", "name", "autoClose", "hideNew", "container", "selected", "title", "highlightFirstItem"], outputs: ["onSearch", "onIconClick"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "directive", type: 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: HighlightComponent, selector: "c8y-highlight", inputs: ["pattern", "text", "elementClass", "shouldTrimPattern"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
2013
2013
  }
2014
2014
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: SoftwareTypeComponent, decorators: [{
2015
2015
  type: Component,