@c8y/ngx-components 1023.17.6 → 1023.17.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. package/fesm2022/c8y-ngx-components-actility-device-registration.mjs +16 -16
  2. package/fesm2022/c8y-ngx-components-advanced-software-management.mjs +7 -7
  3. package/fesm2022/c8y-ngx-components-ai-agent-chat.mjs +9 -9
  4. package/fesm2022/c8y-ngx-components-ai-ai-chat.mjs +12 -12
  5. package/fesm2022/c8y-ngx-components-ai.mjs +3 -3
  6. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +34 -34
  7. package/fesm2022/c8y-ngx-components-alarms-cockpit.mjs +4 -4
  8. package/fesm2022/c8y-ngx-components-alarms.mjs +76 -76
  9. package/fesm2022/c8y-ngx-components-api.mjs +7 -7
  10. package/fesm2022/c8y-ngx-components-app-logs.mjs +10 -10
  11. package/fesm2022/c8y-ngx-components-asset-properties.mjs +39 -39
  12. package/fesm2022/{c8y-ngx-components-asset-property-grid.component-CHjd7Q21.mjs → c8y-ngx-components-asset-property-grid.component-QedBlFUH.mjs} +13 -13
  13. package/fesm2022/{c8y-ngx-components-asset-property-grid.component-CHjd7Q21.mjs.map → c8y-ngx-components-asset-property-grid.component-QedBlFUH.mjs.map} +1 -1
  14. package/fesm2022/c8y-ngx-components-assets-navigator.mjs +32 -32
  15. package/fesm2022/c8y-ngx-components-auth-configuration.mjs +114 -114
  16. package/fesm2022/c8y-ngx-components-binary-file-download.mjs +7 -7
  17. package/fesm2022/c8y-ngx-components-bookmarks.mjs +13 -13
  18. package/fesm2022/c8y-ngx-components-branding-base-branding.mjs +4 -4
  19. package/fesm2022/c8y-ngx-components-branding-dark-theme.mjs +7 -7
  20. package/fesm2022/c8y-ngx-components-branding-extra-css-branding-editor.mjs +7 -7
  21. package/fesm2022/c8y-ngx-components-branding-plain-branding-editor-lazy.mjs +3 -3
  22. package/fesm2022/c8y-ngx-components-branding-plain-branding-editor.mjs +7 -7
  23. package/fesm2022/c8y-ngx-components-branding-shared-data.mjs +15 -15
  24. package/fesm2022/c8y-ngx-components-branding-shared-lazy-add-branding-modal.mjs +6 -6
  25. package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs +36 -36
  26. package/fesm2022/c8y-ngx-components-branding-shared.mjs +13 -13
  27. package/fesm2022/c8y-ngx-components-child-devices.mjs +13 -13
  28. package/fesm2022/c8y-ngx-components-cockpit-config.mjs +40 -40
  29. package/fesm2022/{c8y-ngx-components-computed-asset-properties-alarm-count-config.component-Bl18pHcM.mjs → c8y-ngx-components-computed-asset-properties-alarm-count-config.component-SA0syLy7.mjs} +4 -4
  30. package/fesm2022/{c8y-ngx-components-computed-asset-properties-alarm-count-config.component-Bl18pHcM.mjs.map → c8y-ngx-components-computed-asset-properties-alarm-count-config.component-SA0syLy7.mjs.map} +1 -1
  31. package/fesm2022/{c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-C5QMFdX1.mjs → c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-BOmgJI14.mjs} +4 -4
  32. package/fesm2022/{c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-C5QMFdX1.mjs.map → c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-BOmgJI14.mjs.map} +1 -1
  33. package/fesm2022/{c8y-ngx-components-computed-asset-properties-event-count-config.component-C-Lc5Ble.mjs → c8y-ngx-components-computed-asset-properties-event-count-config.component-CaTb9cph.mjs} +4 -4
  34. package/fesm2022/{c8y-ngx-components-computed-asset-properties-event-count-config.component-C-Lc5Ble.mjs.map → c8y-ngx-components-computed-asset-properties-event-count-config.component-CaTb9cph.mjs.map} +1 -1
  35. package/fesm2022/{c8y-ngx-components-computed-asset-properties-last-measurement-config.component-BXfM7hTQ.mjs → c8y-ngx-components-computed-asset-properties-last-measurement-config.component-DkrSvf9F.mjs} +4 -4
  36. package/fesm2022/{c8y-ngx-components-computed-asset-properties-last-measurement-config.component-BXfM7hTQ.mjs.map → c8y-ngx-components-computed-asset-properties-last-measurement-config.component-DkrSvf9F.mjs.map} +1 -1
  37. package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs +6 -6
  38. package/fesm2022/c8y-ngx-components-connectivity.mjs +53 -53
  39. package/fesm2022/c8y-ngx-components-context-dashboard-asset-add.mjs +10 -10
  40. package/fesm2022/c8y-ngx-components-context-dashboard-asset-view.mjs +7 -7
  41. package/fesm2022/c8y-ngx-components-context-dashboard-cockpit-home-dashboard.mjs +11 -11
  42. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-BuGMpNrA.mjs → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-DM3hASUP.mjs} +4 -4
  43. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-BuGMpNrA.mjs.map → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-DM3hASUP.mjs.map} +1 -1
  44. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-DN-f35bA.mjs → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-CC5346kW.mjs} +10 -10
  45. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-DN-f35bA.mjs.map → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-CC5346kW.mjs.map} +1 -1
  46. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-BlIVEV__.mjs → c8y-ngx-components-context-dashboard-dashboard-version-history.component-CHuc--XM.mjs} +4 -4
  47. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-BlIVEV__.mjs.map → c8y-ngx-components-context-dashboard-dashboard-version-history.component-CHuc--XM.mjs.map} +1 -1
  48. package/fesm2022/c8y-ngx-components-context-dashboard-device-add.mjs +10 -10
  49. package/fesm2022/c8y-ngx-components-context-dashboard-device-view.mjs +7 -7
  50. package/fesm2022/c8y-ngx-components-context-dashboard-devicemanagement.mjs +3 -3
  51. package/fesm2022/c8y-ngx-components-context-dashboard-state.mjs +3 -3
  52. package/fesm2022/c8y-ngx-components-context-dashboard.mjs +102 -102
  53. package/fesm2022/{c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-m7YeEj9R.mjs → c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-D0C7SH6L.mjs} +16 -16
  54. package/fesm2022/{c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-m7YeEj9R.mjs.map → c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-D0C7SH6L.mjs.map} +1 -1
  55. package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab.mjs +12 -12
  56. package/fesm2022/c8y-ngx-components-dashboard-manager-devicemanagement.mjs +6 -6
  57. package/fesm2022/c8y-ngx-components-dashboard-manager.mjs +22 -22
  58. package/fesm2022/c8y-ngx-components-data-broker.mjs +7 -7
  59. package/fesm2022/c8y-ngx-components-data-grid-columns-asset-type.mjs +3 -3
  60. package/fesm2022/c8y-ngx-components-data-grid-columns.mjs +3 -3
  61. package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs +24 -24
  62. package/fesm2022/c8y-ngx-components-datapoint-explorer.mjs +13 -13
  63. package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs +3 -3
  64. package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs +3 -3
  65. package/fesm2022/c8y-ngx-components-datapoint-library-services.mjs +3 -3
  66. package/fesm2022/c8y-ngx-components-datapoint-library.mjs +4 -4
  67. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +40 -40
  68. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +33 -33
  69. package/fesm2022/c8y-ngx-components-default-subscriptions.mjs +16 -16
  70. package/fesm2022/c8y-ngx-components-device-grid.mjs +43 -43
  71. package/fesm2022/c8y-ngx-components-device-list.mjs +22 -22
  72. package/fesm2022/c8y-ngx-components-device-map.mjs +12 -12
  73. package/fesm2022/c8y-ngx-components-device-profile.mjs +34 -34
  74. package/fesm2022/c8y-ngx-components-device-protocol-object-mappings.mjs +3 -3
  75. package/fesm2022/c8y-ngx-components-device-protocols.mjs +16 -16
  76. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs +13 -13
  77. package/fesm2022/c8y-ngx-components-device-shell.mjs +31 -31
  78. package/fesm2022/c8y-ngx-components-diagnostics.mjs +13 -13
  79. package/fesm2022/c8y-ngx-components-echart.mjs +35 -33
  80. package/fesm2022/c8y-ngx-components-echart.mjs.map +1 -1
  81. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs +43 -43
  82. package/fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs +7 -7
  83. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs +10 -10
  84. package/fesm2022/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs +7 -7
  85. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +46 -46
  86. package/fesm2022/c8y-ngx-components-ecosystem.mjs +82 -82
  87. package/fesm2022/c8y-ngx-components-editor.mjs +6 -6
  88. package/fesm2022/c8y-ngx-components-events-events-timeline.mjs +4 -4
  89. package/fesm2022/c8y-ngx-components-events-events-timeline.mjs.map +1 -1
  90. package/fesm2022/c8y-ngx-components-events.mjs +3 -3
  91. package/fesm2022/c8y-ngx-components-exports-list.mjs +6 -6
  92. package/fesm2022/c8y-ngx-components-file-preview.mjs +7 -7
  93. package/fesm2022/c8y-ngx-components-files-repository.mjs +19 -19
  94. package/fesm2022/c8y-ngx-components-global-context.mjs +130 -130
  95. package/fesm2022/c8y-ngx-components-group-breadcrumbs.mjs +6 -6
  96. package/fesm2022/c8y-ngx-components-icon-selector.mjs +19 -19
  97. package/fesm2022/c8y-ngx-components-interval-picker.mjs +3 -3
  98. package/fesm2022/c8y-ngx-components-location.mjs +28 -28
  99. package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs +16 -16
  100. package/fesm2022/c8y-ngx-components-map.mjs +19 -19
  101. package/fesm2022/c8y-ngx-components-messaging-management.mjs +55 -55
  102. package/fesm2022/c8y-ngx-components-operations-bulk-operation-from-single.mjs +7 -7
  103. package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs +19 -19
  104. package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs +7 -7
  105. package/fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs +13 -13
  106. package/fesm2022/c8y-ngx-components-operations-bulk-operations-list.mjs +13 -13
  107. package/fesm2022/c8y-ngx-components-operations-bulk-operations-service.mjs +7 -7
  108. package/fesm2022/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs +7 -7
  109. package/fesm2022/c8y-ngx-components-operations-bulk-single-operations-list.mjs +3 -3
  110. package/fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs +7 -7
  111. package/fesm2022/c8y-ngx-components-operations-device-selector.mjs +7 -7
  112. package/fesm2022/c8y-ngx-components-operations-grid-columns.mjs +12 -12
  113. package/fesm2022/c8y-ngx-components-operations-operation-details.mjs +13 -13
  114. package/fesm2022/c8y-ngx-components-operations-operation-summary.mjs +7 -7
  115. package/fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs +10 -10
  116. package/fesm2022/c8y-ngx-components-operations-operations-list.mjs +12 -12
  117. package/fesm2022/c8y-ngx-components-operations-operations-timeline.mjs +10 -12
  118. package/fesm2022/c8y-ngx-components-operations-operations-timeline.mjs.map +1 -1
  119. package/fesm2022/c8y-ngx-components-operations-shared.mjs +10 -10
  120. package/fesm2022/c8y-ngx-components-operations-status-filter.mjs +7 -7
  121. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs +7 -7
  122. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs +13 -13
  123. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs +13 -13
  124. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs +13 -13
  125. package/fesm2022/c8y-ngx-components-operations-stepper-frames.mjs +13 -13
  126. package/fesm2022/c8y-ngx-components-operations.mjs +7 -7
  127. package/fesm2022/c8y-ngx-components-pending-mo-request.mjs +7 -7
  128. package/fesm2022/c8y-ngx-components-platform-configuration.mjs +10 -10
  129. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +38 -38
  130. package/fesm2022/c8y-ngx-components-protocol-opcua.mjs +58 -58
  131. package/fesm2022/c8y-ngx-components-register-device.mjs +58 -58
  132. package/fesm2022/c8y-ngx-components-remote-access-configurations.mjs +9 -9
  133. package/fesm2022/c8y-ngx-components-remote-access-data.mjs +3 -3
  134. package/fesm2022/c8y-ngx-components-remote-access-passthrough.mjs +3 -3
  135. package/fesm2022/c8y-ngx-components-remote-access-shared.mjs +6 -6
  136. package/fesm2022/c8y-ngx-components-remote-access-ssh-remote-access-ssh-endpoint-modal.mjs +3 -3
  137. package/fesm2022/c8y-ngx-components-remote-access-ssh.mjs +3 -3
  138. package/fesm2022/c8y-ngx-components-remote-access-telnet.mjs +3 -3
  139. package/fesm2022/c8y-ngx-components-remote-access-terminal-viewer.mjs +3 -3
  140. package/fesm2022/c8y-ngx-components-remote-access-vnc-remote-access-vnc-endpoint-modal.mjs +3 -3
  141. package/fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs +6 -6
  142. package/fesm2022/c8y-ngx-components-remote-access-vnc.mjs +3 -3
  143. package/fesm2022/c8y-ngx-components-replace-device-replace-device-wizard.mjs +6 -6
  144. package/fesm2022/c8y-ngx-components-replace-device.mjs +10 -10
  145. package/fesm2022/c8y-ngx-components-report-dashboard.mjs +16 -16
  146. package/fesm2022/c8y-ngx-components-reports.mjs +19 -19
  147. package/fesm2022/c8y-ngx-components-repository-configuration.mjs +48 -48
  148. package/fesm2022/c8y-ngx-components-repository-firmware.mjs +33 -33
  149. package/fesm2022/c8y-ngx-components-repository-shared.mjs +34 -34
  150. package/fesm2022/c8y-ngx-components-repository-software.mjs +42 -42
  151. package/fesm2022/c8y-ngx-components-repository.mjs +4 -4
  152. package/fesm2022/c8y-ngx-components-search.mjs +19 -19
  153. package/fesm2022/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs +6 -6
  154. package/fesm2022/c8y-ngx-components-sensor-phone.mjs +7 -7
  155. package/fesm2022/c8y-ngx-components-services-service-command-tab.mjs +3 -3
  156. package/fesm2022/c8y-ngx-components-services-shared.mjs +3 -3
  157. package/fesm2022/c8y-ngx-components-services.mjs +29 -29
  158. package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs +16 -16
  159. package/fesm2022/c8y-ngx-components-sms-gateway.mjs +7 -7
  160. package/fesm2022/c8y-ngx-components-static-assets-data.mjs +3 -3
  161. package/fesm2022/c8y-ngx-components-static-assets-modal.mjs +9 -9
  162. package/fesm2022/c8y-ngx-components-static-assets.mjs +6 -6
  163. package/fesm2022/c8y-ngx-components-sub-assets.mjs +60 -60
  164. package/fesm2022/c8y-ngx-components-tenants.mjs +40 -40
  165. package/fesm2022/c8y-ngx-components-time-context.mjs +6 -6
  166. package/fesm2022/c8y-ngx-components-tracking.mjs +12 -12
  167. package/fesm2022/c8y-ngx-components-translation-editor-data.mjs +3 -3
  168. package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs +12 -12
  169. package/fesm2022/c8y-ngx-components-translation-editor.mjs +6 -6
  170. package/fesm2022/c8y-ngx-components-trusted-certificates.mjs +33 -33
  171. package/fesm2022/c8y-ngx-components-upgrade-upgraded-services.mjs +4 -4
  172. package/fesm2022/c8y-ngx-components-upgrade.mjs +41 -41
  173. package/fesm2022/c8y-ngx-components-user-roles.mjs +10 -10
  174. package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs +3 -3
  175. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget-ai-config.mjs +3 -3
  176. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs +6 -6
  177. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +19 -19
  178. package/fesm2022/c8y-ngx-components-widgets-implementations-asset-notes.mjs +3 -3
  179. package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-legacy-welcome.mjs +3 -3
  180. package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs +3 -3
  181. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs +7 -7
  182. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs.map +1 -1
  183. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs +27 -27
  184. package/fesm2022/c8y-ngx-components-widgets-implementations-device-control-message.mjs +3 -3
  185. package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs +7 -7
  186. package/fesm2022/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs +3 -3
  187. package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs +24 -24
  188. package/fesm2022/c8y-ngx-components-widgets-implementations-image.mjs +9 -9
  189. package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs +18 -18
  190. package/fesm2022/c8y-ngx-components-widgets-implementations-kpi.mjs +6 -6
  191. package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs +6 -6
  192. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +9 -9
  193. package/fesm2022/c8y-ngx-components-widgets-implementations-markdown.mjs +9 -9
  194. package/fesm2022/c8y-ngx-components-widgets-implementations-quick-links.mjs +18 -18
  195. package/fesm2022/c8y-ngx-components-widgets-implementations-three-d-rotation.mjs +9 -9
  196. package/fesm2022/c8y-ngx-components.mjs +1371 -1371
  197. package/locales/de.po +50 -70
  198. package/locales/zh_TW.po +2 -1
  199. package/operations/operations-timeline/index.d.ts.map +1 -1
  200. package/package.json +1 -1
@@ -24,10 +24,10 @@ class GroupBreadcrumbEllipsisComponent {
24
24
  this.factory.setAncestorPaths(ancestorPaths);
25
25
  this.isLoading = false;
26
26
  }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: GroupBreadcrumbEllipsisComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: GroupBreadcrumbEllipsisComponent, isStandalone: true, selector: "c8y-group-breadcrumb-ellipsis", ngImport: i0, template: "<button\n class=\"btn-clean btn btn-xs\"\n [ngStyle]=\"{ cursor: isLoading ? 'wait' : 'pointer' }\"\n title=\"{{ 'Show all paths' | translate }}\"\n type=\"button\"\n (click)=\"!isLoading && onClick()\"\n>\n ...\n</button>\n", dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: GroupBreadcrumbEllipsisComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: GroupBreadcrumbEllipsisComponent, isStandalone: true, selector: "c8y-group-breadcrumb-ellipsis", ngImport: i0, template: "<button\n class=\"btn-clean btn btn-xs\"\n [ngStyle]=\"{ cursor: isLoading ? 'wait' : 'pointer' }\"\n title=\"{{ 'Show all paths' | translate }}\"\n type=\"button\"\n (click)=\"!isLoading && onClick()\"\n>\n ...\n</button>\n", dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: GroupBreadcrumbEllipsisComponent, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: GroupBreadcrumbEllipsisComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'c8y-group-breadcrumb-ellipsis', standalone: true, imports: [NgStyle, C8yTranslatePipe], template: "<button\n class=\"btn-clean btn btn-xs\"\n [ngStyle]=\"{ cursor: isLoading ? 'wait' : 'pointer' }\"\n title=\"{{ 'Show all paths' | translate }}\"\n type=\"button\"\n (click)=\"!isLoading && onClick()\"\n>\n ...\n</button>\n" }]
33
33
  }] });
@@ -175,10 +175,10 @@ class GroupBreadcrumbFactory {
175
175
  }
176
176
  return this.groupService.getIcon(managedObject);
177
177
  }
178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: GroupBreadcrumbFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
179
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: GroupBreadcrumbFactory }); }
178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: GroupBreadcrumbFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
179
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: GroupBreadcrumbFactory }); }
180
180
  }
181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: GroupBreadcrumbFactory, decorators: [{
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: GroupBreadcrumbFactory, decorators: [{
182
182
  type: Injectable
183
183
  }] });
184
184
 
@@ -20,10 +20,10 @@ class IconNamePipe {
20
20
  }
21
21
  return icon;
22
22
  }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
24
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: IconNamePipe, isStandalone: true, name: "iconName" }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
24
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: IconNamePipe, isStandalone: true, name: "iconName" }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconNamePipe, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconNamePipe, decorators: [{
27
27
  type: Pipe,
28
28
  args: [{ name: 'iconName' }]
29
29
  }] });
@@ -75,10 +75,10 @@ class IconSelectorComponent {
75
75
  this.selectedIcon = icon[0];
76
76
  this.onSelect.emit(icon[0]);
77
77
  }
78
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
79
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: IconSelectorComponent, isStandalone: true, selector: "c8y-icon-selector", inputs: { iconCategoriesToExclude: "iconCategoriesToExclude", showIconClass: "showIconClass", selectedIcon: "selectedIcon" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<div class=\"p-l-24 p-r-24 p-t-8 p-b-8 separator-bottom\">\n <div class=\"row d-flex-sm\">\n <div class=\"col-sm-6 m-b-8\">\n <div class=\"input-group-search input-group\" style=\"width: auto\">\n <input\n type=\"search\"\n class=\"form-control\"\n id=\"filter-icons\"\n [ngModel]=\"searchTerm$ | async\"\n (ngModelChange)=\"onSearchChange($event)\"\n placeholder=\"{{ 'Type to filter icons\u2026' | translate }}\"\n />\n <ng-template #searchIcon>\n <span class=\"input-group-addon\">\n <i c8yIcon=\"search\"></i>\n </span>\n </ng-template>\n <span\n class=\"input-group-addon pointer\"\n *ngIf=\"searchTerm$ | async; else searchIcon\"\n (click)=\"onSearchChange('')\"\n >\n <i c8yIcon=\"times\"></i>\n </span>\n </div>\n </div>\n <div class=\"col-sm-6 m-b-8 text-right\">\n <div class=\"d-inline-flex a-i-center text-left\">\n <label class=\"m-b-0 m-r-8 flex-no-shrink\" translate>Filter by type</label>\n <div class=\"c8y-select-wrapper\">\n <select\n id=\"exampleSelect\"\n class=\"form-control\"\n [ngModel]=\"selectedIconCategory$ | async\"\n (ngModelChange)=\"onCategoryFilterChanged($event)\"\n >\n <option *ngFor=\"let category of availableIconCategories$ | async\" [ngValue]=\"category\">\n {{ category | translate }}\n </option>\n </select>\n <span></span>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-inner-scroll\">\n <div class=\"modal-body\" style=\"height: calc(100vh - 293px)\">\n <div class=\"dtm-icon-grid\">\n <div *ngFor=\"let iconDefinition of filteredIcons$ | async\" class=\"d-contents\">\n <div class=\"legend form-block center grid__col--fullspan\">\n {{ iconDefinition.label | translate }}\n </div>\n\n <div class=\"d-contents\" *ngFor=\"let icon of iconDefinition.icons\">\n <div\n class=\"dtm-icon-grid__item\"\n [ngClass]=\"{\n 'dtm-icon-grid__item--selected': selectedIcon && icon[0] === selectedIcon\n }\"\n >\n <button (click)=\"onIconClicked(icon)\" class=\"dtm-icon-grid__btn\" [title]=\"icon[0] | iconName\">\n <i [c8yIcon]=\"icon[0]\" class=\"d-block icon-40\"></i>\n <small *ngIf=\"showIconClass\" class=\"text-break-word\">{{ icon[0] | iconName }}</small>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: IconNamePipe, name: "iconName" }] }); }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
79
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: IconSelectorComponent, isStandalone: true, selector: "c8y-icon-selector", inputs: { iconCategoriesToExclude: "iconCategoriesToExclude", showIconClass: "showIconClass", selectedIcon: "selectedIcon" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<div class=\"p-l-24 p-r-24 p-t-8 p-b-8 separator-bottom\">\n <div class=\"row d-flex-sm\">\n <div class=\"col-sm-6 m-b-8\">\n <div class=\"input-group-search input-group\" style=\"width: auto\">\n <input\n type=\"search\"\n class=\"form-control\"\n id=\"filter-icons\"\n [ngModel]=\"searchTerm$ | async\"\n (ngModelChange)=\"onSearchChange($event)\"\n placeholder=\"{{ 'Type to filter icons\u2026' | translate }}\"\n />\n <ng-template #searchIcon>\n <span class=\"input-group-addon\">\n <i c8yIcon=\"search\"></i>\n </span>\n </ng-template>\n <span\n class=\"input-group-addon pointer\"\n *ngIf=\"searchTerm$ | async; else searchIcon\"\n (click)=\"onSearchChange('')\"\n >\n <i c8yIcon=\"times\"></i>\n </span>\n </div>\n </div>\n <div class=\"col-sm-6 m-b-8 text-right\">\n <div class=\"d-inline-flex a-i-center text-left\">\n <label class=\"m-b-0 m-r-8 flex-no-shrink\" translate>Filter by type</label>\n <div class=\"c8y-select-wrapper\">\n <select\n id=\"exampleSelect\"\n class=\"form-control\"\n [ngModel]=\"selectedIconCategory$ | async\"\n (ngModelChange)=\"onCategoryFilterChanged($event)\"\n >\n <option *ngFor=\"let category of availableIconCategories$ | async\" [ngValue]=\"category\">\n {{ category | translate }}\n </option>\n </select>\n <span></span>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-inner-scroll\">\n <div class=\"modal-body\" style=\"height: calc(100vh - 293px)\">\n <div class=\"dtm-icon-grid\">\n <div *ngFor=\"let iconDefinition of filteredIcons$ | async\" class=\"d-contents\">\n <div class=\"legend form-block center grid__col--fullspan\">\n {{ iconDefinition.label | translate }}\n </div>\n\n <div class=\"d-contents\" *ngFor=\"let icon of iconDefinition.icons\">\n <div\n class=\"dtm-icon-grid__item\"\n [ngClass]=\"{\n 'dtm-icon-grid__item--selected': selectedIcon && icon[0] === selectedIcon\n }\"\n >\n <button (click)=\"onIconClicked(icon)\" class=\"dtm-icon-grid__btn\" [title]=\"icon[0] | iconName\">\n <i [c8yIcon]=\"icon[0]\" class=\"d-block icon-40\"></i>\n <small *ngIf=\"showIconClass\" class=\"text-break-word\">{{ icon[0] | iconName }}</small>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: IconNamePipe, name: "iconName" }] }); }
80
80
  }
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorComponent, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorComponent, decorators: [{
82
82
  type: Component,
83
83
  args: [{ selector: 'c8y-icon-selector', imports: [
84
84
  FormsModule,
@@ -124,10 +124,10 @@ class IconSelectorModalComponent {
124
124
  selectionChange(newSelection) {
125
125
  this.currentSelection = newSelection;
126
126
  }
127
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorModalComponent, deps: [{ token: i1$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component }); }
128
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: IconSelectorModalComponent, isStandalone: true, selector: "c8y-icon-selector-modal", ngImport: i0, template: "<div class=\"modal-header\">\n <div id=\"modal-title\" class=\"modal-title h4\">{{ title | translate }}</div>\n</div>\n<div id=\"modal-body\">\n <c8y-icon-selector\n (onSelect)=\"selectionChange($event)\"\n [selectedIcon]=\"currentSelection\"\n [iconCategoriesToExclude]=\"iconCategoriesToExclude\"\n [showIconClass]=\"showIconClass\"\n ></c8y-icon-selector>\n</div>\n<div class=\"modal-footer separator text-center\">\n <button class=\"btn btn-default\" (click)=\"close()\">\n {{ 'Cancel' | translate }}\n </button>\n <button class=\"btn btn-primary\" [disabled]=\"!currentSelection\" (click)=\"saveChanges()\">\n {{ saveButtonLabel | translate }}\n </button>\n</div>\n", dependencies: [{ kind: "component", type: IconSelectorComponent, selector: "c8y-icon-selector", inputs: ["iconCategoriesToExclude", "showIconClass", "selectedIcon"], outputs: ["onSelect"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorModalComponent, deps: [{ token: i1$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component }); }
128
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: IconSelectorModalComponent, isStandalone: true, selector: "c8y-icon-selector-modal", ngImport: i0, template: "<div class=\"modal-header\">\n <div id=\"modal-title\" class=\"modal-title h4\">{{ title | translate }}</div>\n</div>\n<div id=\"modal-body\">\n <c8y-icon-selector\n (onSelect)=\"selectionChange($event)\"\n [selectedIcon]=\"currentSelection\"\n [iconCategoriesToExclude]=\"iconCategoriesToExclude\"\n [showIconClass]=\"showIconClass\"\n ></c8y-icon-selector>\n</div>\n<div class=\"modal-footer separator text-center\">\n <button class=\"btn btn-default\" (click)=\"close()\">\n {{ 'Cancel' | translate }}\n </button>\n <button class=\"btn btn-primary\" [disabled]=\"!currentSelection\" (click)=\"saveChanges()\">\n {{ saveButtonLabel | translate }}\n </button>\n</div>\n", dependencies: [{ kind: "component", type: IconSelectorComponent, selector: "c8y-icon-selector", inputs: ["iconCategoriesToExclude", "showIconClass", "selectedIcon"], outputs: ["onSelect"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
129
129
  }
130
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorModalComponent, decorators: [{
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorModalComponent, decorators: [{
131
131
  type: Component,
132
132
  args: [{ selector: 'c8y-icon-selector-modal', imports: [IconSelectorComponent, C8yTranslatePipe], template: "<div class=\"modal-header\">\n <div id=\"modal-title\" class=\"modal-title h4\">{{ title | translate }}</div>\n</div>\n<div id=\"modal-body\">\n <c8y-icon-selector\n (onSelect)=\"selectionChange($event)\"\n [selectedIcon]=\"currentSelection\"\n [iconCategoriesToExclude]=\"iconCategoriesToExclude\"\n [showIconClass]=\"showIconClass\"\n ></c8y-icon-selector>\n</div>\n<div class=\"modal-footer separator text-center\">\n <button class=\"btn btn-default\" (click)=\"close()\">\n {{ 'Cancel' | translate }}\n </button>\n <button class=\"btn btn-primary\" [disabled]=\"!currentSelection\" (click)=\"saveChanges()\">\n {{ saveButtonLabel | translate }}\n </button>\n</div>\n" }]
133
133
  }], ctorParameters: () => [{ type: i1$1.BsModalRef }] });
@@ -146,10 +146,10 @@ class IconSelectorService {
146
146
  const content = modal.content;
147
147
  return content.result;
148
148
  }
149
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorService, deps: [{ token: i1$1.BsModalService }], target: i0.ɵɵFactoryTarget.Injectable }); }
150
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorService, providedIn: 'root' }); }
149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorService, deps: [{ token: i1$1.BsModalService }], target: i0.ɵɵFactoryTarget.Injectable }); }
150
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorService, providedIn: 'root' }); }
151
151
  }
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorService, decorators: [{
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorService, decorators: [{
153
153
  type: Injectable,
154
154
  args: [{ providedIn: 'root' }]
155
155
  }], ctorParameters: () => [{ type: i1$1.BsModalService }] });
@@ -232,8 +232,8 @@ class IconSelectorWrapperComponent {
232
232
  // nothing to do
233
233
  }
234
234
  }
235
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorWrapperComponent, deps: [{ token: IconSelectorService }, { token: i2.GainsightService }], target: i0.ɵɵFactoryTarget.Component }); }
236
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: IconSelectorWrapperComponent, isStandalone: true, selector: "c8y-icon-selector-wrapper", inputs: { canRemoveIcon: "canRemoveIcon", selectedIcon: "selectedIcon", iconSize: "iconSize" }, outputs: { onSelect: "onSelect" }, providers: [
235
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorWrapperComponent, deps: [{ token: IconSelectorService }, { token: i2.GainsightService }], target: i0.ɵɵFactoryTarget.Component }); }
236
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: IconSelectorWrapperComponent, isStandalone: true, selector: "c8y-icon-selector-wrapper", inputs: { canRemoveIcon: "canRemoveIcon", selectedIcon: "selectedIcon", iconSize: "iconSize" }, outputs: { onSelect: "onSelect" }, providers: [
237
237
  {
238
238
  provide: NG_VALUE_ACCESSOR,
239
239
  useExisting: forwardRef(() => IconSelectorWrapperComponent),
@@ -241,7 +241,7 @@ class IconSelectorWrapperComponent {
241
241
  }
242
242
  ], ngImport: i0, template: "<div class=\"d-flex a-i-center j-c-center p-relative\">\n @if (selectedIcon) {\n <div class=\"icon-{{ iconSize }} text-center l-h-1 fit-w fit-h\">\n <i\n class=\"c8y-icon-duocolor\"\n [c8yIcon]=\"selectedIcon\"\n ></i>\n </div>\n }\n\n @if (!selectedIcon) {\n <div\n class=\"icon-{{ iconSize }} text-muted text-center a-s-stretch fit-w\"\n style=\"border: 2px dashed var(--c8y-root-component-border-color)\"\n >\n <span class=\"d-flex a-i-center j-c-center text-12 fit-h\">\n <em>{{ 'Auto' | translate }}</em>\n </span>\n </div>\n }\n <div class=\"showOnHover d-flex j-c-center p-absolute fit-h fit-w\">\n @if (!selectedIcon) {\n <button\n class=\"btn btn-clean btn-icon btn-sm m-0\"\n title=\"{{ 'Select icon' | translate }}\"\n [attr.aria-label]=\"'Select icon' | translate\"\n type=\"button\"\n (click)=\"openIconSelector()\"\n >\n {{ 'Select' | translate }}\n </button>\n }\n @if (selectedIcon) {\n <button\n class=\"btn btn-dot btn-sm btn-icon m-0\"\n [attr.aria-label]=\"'Change icon' | translate\"\n tooltip=\"{{ 'Change icon' | translate }}\"\n placement=\"top\"\n container=\"body\"\n type=\"button\"\n [delay]=\"500\"\n (click)=\"openIconSelector()\"\n >\n <i [c8yIcon]=\"'replace'\"></i>\n </button>\n }\n @if (selectedIcon && canRemoveIcon) {\n <button\n class=\"btn btn-dot btn-dot--danger btn-icon btn-sm m-0\"\n [attr.aria-label]=\"'Remove icon and use default icon' | translate\"\n tooltip=\"{{ 'Remove icon and use default icon' | translate }}\"\n placement=\"top\"\n container=\"body\"\n type=\"button\"\n [delay]=\"500\"\n (click)=\"removeIcon()\"\n >\n <i [c8yIcon]=\"'trash'\"></i>\n </button>\n }\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
243
243
  }
244
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorWrapperComponent, decorators: [{
244
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorWrapperComponent, decorators: [{
245
245
  type: Component,
246
246
  args: [{ selector: 'c8y-icon-selector-wrapper', providers: [
247
247
  {
@@ -261,8 +261,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
261
261
  }] } });
262
262
 
263
263
  class IconSelectorModule {
264
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
265
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorModule, imports: [CommonModule,
264
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
265
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorModule, imports: [CommonModule,
266
266
  FormsModule,
267
267
  DropAreaModule,
268
268
  TooltipModule,
@@ -273,14 +273,14 @@ class IconSelectorModule {
273
273
  IconSelectorModalComponent,
274
274
  IconNamePipe,
275
275
  IconSelectorWrapperComponent] }); }
276
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorModule, imports: [CommonModule,
276
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorModule, imports: [CommonModule,
277
277
  FormsModule,
278
278
  DropAreaModule,
279
279
  TooltipModule,
280
280
  IconSelectorComponent,
281
281
  IconSelectorModalComponent] }); }
282
282
  }
283
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IconSelectorModule, decorators: [{
283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IconSelectorModule, decorators: [{
284
284
  type: NgModule,
285
285
  args: [{
286
286
  imports: [
@@ -94,8 +94,8 @@ class IntervalPickerComponent {
94
94
  setDisabledState(disabled) {
95
95
  this.disabled = disabled;
96
96
  }
97
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IntervalPickerComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
98
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: IntervalPickerComponent, isStandalone: true, selector: "c8y-interval-picker", inputs: { INTERVALS: "INTERVALS" }, providers: [
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IntervalPickerComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
98
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: IntervalPickerComponent, isStandalone: true, selector: "c8y-interval-picker", inputs: { INTERVALS: "INTERVALS" }, providers: [
99
99
  {
100
100
  provide: NG_VALUE_ACCESSOR,
101
101
  useExisting: forwardRef(() => IntervalPickerComponent),
@@ -103,7 +103,7 @@ class IntervalPickerComponent {
103
103
  }
104
104
  ], ngImport: i0, template: "<li\n *ngFor=\"let interval of translatedIntervals\"\n [ngClass]=\"{\n active: interval.id === value\n }\"\n>\n <button\n type=\"button\"\n (click)=\"onChange(interval.id)\"\n >\n <span\n [ngClass]=\"{\n 'text-primary': interval.id === value\n }\"\n >\n <span\n c8yIcon=\"check\"\n [ngStyle]=\"{ visibility: interval.id === value ? 'visible' : 'hidden' }\"\n ></span>\n {{ interval.title }}\n </span>\n </button>\n</li>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: A11yModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: BsDropdownModule }] }); }
105
105
  }
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: IntervalPickerComponent, decorators: [{
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IntervalPickerComponent, decorators: [{
107
107
  type: Component,
108
108
  args: [{ selector: 'c8y-interval-picker', standalone: true, imports: [CommonModule, FormsModule, A11yModule, ReactiveFormsModule, BsDropdownModule], providers: [
109
109
  {
@@ -46,10 +46,10 @@ class AddLocationComponent {
46
46
  this.router.navigateByUrl(route + '/location');
47
47
  });
48
48
  }
49
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationComponent, deps: [{ token: i1.InventoryService }, { token: i1$1.ContextRouteService }, { token: MAP_DEFAULT_CONFIG, optional: true }, { token: i3.Router }, { token: i1$1.AlertService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
50
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: AddLocationComponent, isStandalone: true, selector: "c8y-add-location", viewQueries: [{ propertyName: "templateCopy", first: true, predicate: ["templateCopy"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #templateCopy>\n <button\n class=\"btn btn-link\"\n [title]=\"'Add location' | translate\"\n (click)=\"onClick()\"\n >\n <i c8yIcon=\"location-arrow\"></i>\n <span translate>Add location</span>\n </button>\n</ng-template>\n", dependencies: [{ kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationComponent, deps: [{ token: i1.InventoryService }, { token: i1$1.ContextRouteService }, { token: MAP_DEFAULT_CONFIG, optional: true }, { token: i3.Router }, { token: i1$1.AlertService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: AddLocationComponent, isStandalone: true, selector: "c8y-add-location", viewQueries: [{ propertyName: "templateCopy", first: true, predicate: ["templateCopy"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #templateCopy>\n <button\n class=\"btn btn-link\"\n [title]=\"'Add location' | translate\"\n (click)=\"onClick()\"\n >\n <i c8yIcon=\"location-arrow\"></i>\n <span translate>Add location</span>\n </button>\n</ng-template>\n", dependencies: [{ kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
51
51
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationComponent, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationComponent, decorators: [{
53
53
  type: Component,
54
54
  args: [{ selector: 'c8y-add-location', imports: [IconDirective, C8yTranslateDirective, C8yTranslatePipe], template: "<ng-template #templateCopy>\n <button\n class=\"btn btn-link\"\n [title]=\"'Add location' | translate\"\n (click)=\"onClick()\"\n >\n <i c8yIcon=\"location-arrow\"></i>\n <span translate>Add location</span>\n </button>\n</ng-template>\n" }]
55
55
  }], ctorParameters: () => [{ type: i1.InventoryService }, { type: i1$1.ContextRouteService }, { type: i4.Observable, decorators: [{
@@ -80,10 +80,10 @@ class AddLocationFactory {
80
80
  return this.action;
81
81
  }
82
82
  }
83
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationFactory, deps: [{ token: i1$1.ContextRouteService }], target: i0.ɵɵFactoryTarget.Injectable }); }
84
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationFactory, providedIn: 'root' }); }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationFactory, deps: [{ token: i1$1.ContextRouteService }], target: i0.ɵɵFactoryTarget.Injectable }); }
84
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationFactory, providedIn: 'root' }); }
85
85
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationFactory, decorators: [{
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationFactory, decorators: [{
87
87
  type: Injectable,
88
88
  args: [{ providedIn: 'root' }]
89
89
  }], ctorParameters: () => [{ type: i1$1.ContextRouteService }] });
@@ -107,10 +107,10 @@ class LocationTabFactory {
107
107
  }
108
108
  return [];
109
109
  }
110
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationTabFactory, deps: [{ token: i1$1.ContextRouteService }], target: i0.ɵɵFactoryTarget.Injectable }); }
111
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationTabFactory, providedIn: 'root' }); }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationTabFactory, deps: [{ token: i1$1.ContextRouteService }], target: i0.ɵɵFactoryTarget.Injectable }); }
111
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationTabFactory, providedIn: 'root' }); }
112
112
  }
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationTabFactory, decorators: [{
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationTabFactory, decorators: [{
114
114
  type: Injectable,
115
115
  args: [{
116
116
  providedIn: 'root'
@@ -233,10 +233,10 @@ class LocationComponent {
233
233
  });
234
234
  }
235
235
  }
236
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationComponent, deps: [{ token: i1$1.ContextRouteService }, { token: i3.ActivatedRoute }, { token: i1.InventoryService }, { token: i1$1.Permissions }, { token: i1$1.OptionsService }, { token: i1$1.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
237
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: LocationComponent, isStandalone: true, selector: "c8y-location", viewQueries: [{ propertyName: "map", first: true, predicate: MapComponent, descendants: true }], ngImport: i0, template: "<c8y-action-bar-item placement=\"right\">\n <button\n class=\"btn btn-link c8y-realtime\"\n title=\"{{ 'Toggle realtime' | translate }}\"\n type=\"button\"\n (click)=\"toggleRealtime()\"\n >\n <span\n class=\"c8y-pulse\"\n [ngClass]=\"{ active: config.realtime, inactive: !config.realtime }\"\n ></span>\n <span translate>Realtime</span>\n </button>\n</c8y-action-bar-item>\n<c8y-action-bar-item placement=\"right\">\n <button\n class=\"btn btn-clean\"\n title=\"{{ 'Center`verb`' | translate }}\"\n (click)=\"centerMap()\"\n >\n <i [c8yIcon]=\"'target1'\"></i>\n <span translate>Center`verb`</span>\n </button>\n</c8y-action-bar-item>\n\n<div class=\"card card--grid content-fullpage d-grid grid__col--8-4--md\">\n <div\n class=\"bg-white p-relative\"\n style=\"min-height: 30vh\"\n >\n <c8y-map\n [assets]=\"[position]\"\n [config]=\"config\"\n (onRealtimeUpdate)=\"positionChanged($event)\"\n ></c8y-map>\n </div>\n\n <form\n class=\"d-flex d-col bg-inherit content-fullpage bg-gray-white\"\n #positionForm=\"ngForm\"\n (ngSubmit)=\"save()\"\n >\n <div class=\"card-header large-padding separator sticky-top\">\n <span\n class=\"card-title\"\n translate\n >\n Device location\n </span>\n </div>\n <div class=\"inner-scroll\">\n <div\n class=\"m-16\"\n *ngIf=\"!isEdit\"\n >\n <div class=\"p-b-40\">\n <div\n class=\"text-bold\"\n translate\n >\n Latitude (\u00B0)\n </div>\n {{ position.c8y_Position.lat }}\n </div>\n <div class=\"p-b-40\">\n <div\n class=\"text-bold\"\n translate\n >\n Longitude (\u00B0)\n </div>\n {{ position.c8y_Position.lng }}\n </div>\n <div class=\"p-b-40\">\n <div\n class=\"text-bold\"\n translate\n >\n Altitude (m)\n </div>\n {{ position.c8y_Position.alt }}\n </div>\n </div>\n <div\n class=\"m-16\"\n *ngIf=\"isEdit\"\n >\n <c8y-form-group>\n <label\n for=\"lat\"\n translate\n >\n Latitude (\u00B0)\n </label>\n\n <input\n class=\"form-control\"\n [title]=\"'Latitude (\u00B0)' | translate\"\n id=\"lat\"\n name=\"lat\"\n type=\"number\"\n required\n min=\"-90\"\n max=\"90\"\n (blur)=\"positionForm.valid && updateMarkerPosition()\"\n [(ngModel)]=\"position.c8y_Position.lat\"\n />\n <c8y-messages>\n <c8y-message\n name=\"min\"\n [text]=\"'The minimum latitude value is -90\u00B0.' | translate\"\n ></c8y-message>\n <c8y-message\n name=\"max\"\n [text]=\"'The maximum latitude value is 90\u00B0.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n <c8y-form-group>\n <label\n for=\"lat\"\n translate\n >\n Longitude (\u00B0)\n </label>\n\n <input\n class=\"form-control\"\n [title]=\"'Longitude (\u00B0)' | translate\"\n id=\"lng\"\n name=\"lng\"\n type=\"number\"\n required\n min=\"-180\"\n max=\"180\"\n (blur)=\"positionForm.valid && updateMarkerPosition()\"\n [(ngModel)]=\"position.c8y_Position.lng\"\n />\n <c8y-messages>\n <c8y-message\n name=\"min\"\n [text]=\"'The minimum longitude value is -180\u00B0.' | translate\"\n ></c8y-message>\n <c8y-message\n name=\"max\"\n [text]=\"'The maximum longitude value is 180\u00B0.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n <c8y-form-group>\n <label\n for=\"alt\"\n translate\n >\n Altitude (m)\n </label>\n\n <input\n class=\"form-control\"\n [title]=\"'Altitude (m)' | translate\"\n id=\"alt\"\n name=\"alt\"\n type=\"number\"\n [(ngModel)]=\"position.c8y_Position.alt\"\n />\n </c8y-form-group>\n </div>\n\n <form\n class=\"card-block bg-level-1\"\n #addressSearch=\"ngForm\"\n novalidate\n (submit)=\"searchAddress(addressSearchTerm)\"\n *ngIf=\"isEdit && !hideAddressSearchFeature\"\n >\n <div class=\"form-group\">\n <label\n for=\"searchAddress\"\n translate\n >\n Find lat/long by address\n </label>\n <div class=\"input-group input-group-search\">\n <input\n class=\"form-control\"\n id=\"searchAddress\"\n name=\"addressSearchTerm\"\n type=\"text\"\n [placeholder]=\"'e.g. Speditionstra\u00DFe 13, D\u00FCsseldorf`LOCALIZE`' | translate\"\n [(ngModel)]=\"addressSearchTerm\"\n />\n <span class=\"input-group-btn\">\n <button\n class=\"btn btn-dot\"\n [title]=\"'Search' | translate\"\n type=\"submit\"\n >\n <i\n class=\"dlt-c8y-icon-search\"\n c8y-icon=\"search\"\n ></i>\n </button>\n </span>\n </div>\n </div>\n </form>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-default\"\n [title]=\"'Edit location' | translate\"\n type=\"button\"\n *ngIf=\"canEdit && !isEdit\"\n (click)=\"edit()\"\n translate\n >\n Edit location\n </button>\n <button\n class=\"btn btn-default\"\n [title]=\"'Cancel' | translate\"\n type=\"button\"\n (click)=\"cancel()\"\n *ngIf=\"isEdit\"\n translate\n >\n Cancel\n </button>\n <button\n class=\"btn btn-primary\"\n [title]=\"'Save' | translate\"\n type=\"submit\"\n *ngIf=\"isEdit\"\n translate\n [disabled]=\"!positionForm.valid\"\n >\n Save\n </button>\n </div>\n </form>\n</div>\n", dependencies: [{ kind: "component", type: ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "component", type: MapComponent, selector: "c8y-map", inputs: ["config", "assets", "polyline$", "polylineOptions"], outputs: ["onRealtimeUpdate", "onMove", "onMoveEnd", "onZoomStart", "onZoomEnd", "onMap", "onInit"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4$1.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i4$1.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i4$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4$1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "directive", type: MinValidationDirective, selector: "[min]", inputs: ["min"] }, { kind: "directive", type: MaxValidationDirective, selector: "[max]", inputs: ["max"] }, { kind: "component", type: MessagesComponent, selector: "c8y-messages", inputs: ["show", "defaults", "helpMessage"] }, { kind: "directive", type: MessageDirective, selector: "c8y-message", inputs: ["name", "text"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
236
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationComponent, deps: [{ token: i1$1.ContextRouteService }, { token: i3.ActivatedRoute }, { token: i1.InventoryService }, { token: i1$1.Permissions }, { token: i1$1.OptionsService }, { token: i1$1.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
237
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: LocationComponent, isStandalone: true, selector: "c8y-location", viewQueries: [{ propertyName: "map", first: true, predicate: MapComponent, descendants: true }], ngImport: i0, template: "<c8y-action-bar-item placement=\"right\">\n <button\n class=\"btn btn-link c8y-realtime\"\n title=\"{{ 'Toggle realtime' | translate }}\"\n type=\"button\"\n (click)=\"toggleRealtime()\"\n >\n <span\n class=\"c8y-pulse\"\n [ngClass]=\"{ active: config.realtime, inactive: !config.realtime }\"\n ></span>\n <span translate>Realtime</span>\n </button>\n</c8y-action-bar-item>\n<c8y-action-bar-item placement=\"right\">\n <button\n class=\"btn btn-clean\"\n title=\"{{ 'Center`verb`' | translate }}\"\n (click)=\"centerMap()\"\n >\n <i [c8yIcon]=\"'target1'\"></i>\n <span translate>Center`verb`</span>\n </button>\n</c8y-action-bar-item>\n\n<div class=\"card card--grid content-fullpage d-grid grid__col--8-4--md\">\n <div\n class=\"bg-white p-relative\"\n style=\"min-height: 30vh\"\n >\n <c8y-map\n [assets]=\"[position]\"\n [config]=\"config\"\n (onRealtimeUpdate)=\"positionChanged($event)\"\n ></c8y-map>\n </div>\n\n <form\n class=\"d-flex d-col bg-inherit content-fullpage bg-gray-white\"\n #positionForm=\"ngForm\"\n (ngSubmit)=\"save()\"\n >\n <div class=\"card-header large-padding separator sticky-top\">\n <span\n class=\"card-title\"\n translate\n >\n Device location\n </span>\n </div>\n <div class=\"inner-scroll\">\n <div\n class=\"m-16\"\n *ngIf=\"!isEdit\"\n >\n <div class=\"p-b-40\">\n <div\n class=\"text-bold\"\n translate\n >\n Latitude (\u00B0)\n </div>\n {{ position.c8y_Position.lat }}\n </div>\n <div class=\"p-b-40\">\n <div\n class=\"text-bold\"\n translate\n >\n Longitude (\u00B0)\n </div>\n {{ position.c8y_Position.lng }}\n </div>\n <div class=\"p-b-40\">\n <div\n class=\"text-bold\"\n translate\n >\n Altitude (m)\n </div>\n {{ position.c8y_Position.alt }}\n </div>\n </div>\n <div\n class=\"m-16\"\n *ngIf=\"isEdit\"\n >\n <c8y-form-group>\n <label\n for=\"lat\"\n translate\n >\n Latitude (\u00B0)\n </label>\n\n <input\n class=\"form-control\"\n [title]=\"'Latitude (\u00B0)' | translate\"\n id=\"lat\"\n name=\"lat\"\n type=\"number\"\n required\n min=\"-90\"\n max=\"90\"\n (blur)=\"positionForm.valid && updateMarkerPosition()\"\n [(ngModel)]=\"position.c8y_Position.lat\"\n />\n <c8y-messages>\n <c8y-message\n name=\"min\"\n [text]=\"'The minimum latitude value is -90\u00B0.' | translate\"\n ></c8y-message>\n <c8y-message\n name=\"max\"\n [text]=\"'The maximum latitude value is 90\u00B0.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n <c8y-form-group>\n <label\n for=\"lat\"\n translate\n >\n Longitude (\u00B0)\n </label>\n\n <input\n class=\"form-control\"\n [title]=\"'Longitude (\u00B0)' | translate\"\n id=\"lng\"\n name=\"lng\"\n type=\"number\"\n required\n min=\"-180\"\n max=\"180\"\n (blur)=\"positionForm.valid && updateMarkerPosition()\"\n [(ngModel)]=\"position.c8y_Position.lng\"\n />\n <c8y-messages>\n <c8y-message\n name=\"min\"\n [text]=\"'The minimum longitude value is -180\u00B0.' | translate\"\n ></c8y-message>\n <c8y-message\n name=\"max\"\n [text]=\"'The maximum longitude value is 180\u00B0.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n <c8y-form-group>\n <label\n for=\"alt\"\n translate\n >\n Altitude (m)\n </label>\n\n <input\n class=\"form-control\"\n [title]=\"'Altitude (m)' | translate\"\n id=\"alt\"\n name=\"alt\"\n type=\"number\"\n [(ngModel)]=\"position.c8y_Position.alt\"\n />\n </c8y-form-group>\n </div>\n\n <form\n class=\"card-block bg-level-1\"\n #addressSearch=\"ngForm\"\n novalidate\n (submit)=\"searchAddress(addressSearchTerm)\"\n *ngIf=\"isEdit && !hideAddressSearchFeature\"\n >\n <div class=\"form-group\">\n <label\n for=\"searchAddress\"\n translate\n >\n Find lat/long by address\n </label>\n <div class=\"input-group input-group-search\">\n <input\n class=\"form-control\"\n id=\"searchAddress\"\n name=\"addressSearchTerm\"\n type=\"text\"\n [placeholder]=\"'e.g. Speditionstra\u00DFe 13, D\u00FCsseldorf`LOCALIZE`' | translate\"\n [(ngModel)]=\"addressSearchTerm\"\n />\n <span class=\"input-group-btn\">\n <button\n class=\"btn btn-dot\"\n [title]=\"'Search' | translate\"\n type=\"submit\"\n >\n <i\n class=\"dlt-c8y-icon-search\"\n c8y-icon=\"search\"\n ></i>\n </button>\n </span>\n </div>\n </div>\n </form>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-default\"\n [title]=\"'Edit location' | translate\"\n type=\"button\"\n *ngIf=\"canEdit && !isEdit\"\n (click)=\"edit()\"\n translate\n >\n Edit location\n </button>\n <button\n class=\"btn btn-default\"\n [title]=\"'Cancel' | translate\"\n type=\"button\"\n (click)=\"cancel()\"\n *ngIf=\"isEdit\"\n translate\n >\n Cancel\n </button>\n <button\n class=\"btn btn-primary\"\n [title]=\"'Save' | translate\"\n type=\"submit\"\n *ngIf=\"isEdit\"\n translate\n [disabled]=\"!positionForm.valid\"\n >\n Save\n </button>\n </div>\n </form>\n</div>\n", dependencies: [{ kind: "component", type: ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "component", type: MapComponent, selector: "c8y-map", inputs: ["config", "assets", "polyline$", "polylineOptions"], outputs: ["onRealtimeUpdate", "onMove", "onMoveEnd", "onZoomStart", "onZoomEnd", "onMap", "onInit"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4$1.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i4$1.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i4$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4$1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "directive", type: MinValidationDirective, selector: "[min]", inputs: ["min"] }, { kind: "directive", type: MaxValidationDirective, selector: "[max]", inputs: ["max"] }, { kind: "component", type: MessagesComponent, selector: "c8y-messages", inputs: ["show", "defaults", "helpMessage"] }, { kind: "directive", type: MessageDirective, selector: "c8y-message", inputs: ["name", "text"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
238
238
  }
239
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationComponent, decorators: [{
239
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationComponent, decorators: [{
240
240
  type: Component,
241
241
  args: [{ selector: 'c8y-location', imports: [
242
242
  ActionBarItemComponent,
@@ -260,9 +260,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
260
260
  }] } });
261
261
 
262
262
  class LocationRouteModule {
263
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationRouteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
264
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: LocationRouteModule, imports: [MapModule, CoreModule, RouterModule, LocationComponent], exports: [LocationComponent] }); }
265
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationRouteModule, providers: [
263
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationRouteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
264
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: LocationRouteModule, imports: [MapModule, CoreModule, RouterModule, LocationComponent], exports: [LocationComponent] }); }
265
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationRouteModule, providers: [
266
266
  hookRoute({
267
267
  path: 'location',
268
268
  component: LocationComponent,
@@ -277,7 +277,7 @@ class LocationRouteModule {
277
277
  })
278
278
  ], imports: [MapModule, CoreModule, RouterModule, LocationComponent] }); }
279
279
  }
280
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationRouteModule, decorators: [{
280
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationRouteModule, decorators: [{
281
281
  type: NgModule,
282
282
  args: [{
283
283
  imports: [MapModule, CoreModule, RouterModule, LocationComponent],
@@ -299,11 +299,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
299
299
  }]
300
300
  }] });
301
301
  class LocationTabModule {
302
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationTabModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
303
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: LocationTabModule, imports: [LocationRouteModule] }); }
304
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationTabModule, providers: [hookTab(LocationTabFactory)], imports: [LocationRouteModule] }); }
302
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationTabModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
303
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: LocationTabModule, imports: [LocationRouteModule] }); }
304
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationTabModule, providers: [hookTab(LocationTabFactory)], imports: [LocationRouteModule] }); }
305
305
  }
306
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationTabModule, decorators: [{
306
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationTabModule, decorators: [{
307
307
  type: NgModule,
308
308
  args: [{
309
309
  imports: [LocationRouteModule],
@@ -324,22 +324,22 @@ class LocationModule {
324
324
  providers: config.addLocation ? [hookActionBar(AddLocationFactory)] : []
325
325
  };
326
326
  }
327
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
328
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: LocationModule, imports: [LocationTabModule] }); }
329
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationModule, imports: [LocationTabModule] }); }
327
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
328
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: LocationModule, imports: [LocationTabModule] }); }
329
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationModule, imports: [LocationTabModule] }); }
330
330
  }
331
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationModule, decorators: [{
331
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LocationModule, decorators: [{
332
332
  type: NgModule,
333
333
  args: [{
334
334
  imports: [LocationTabModule]
335
335
  }]
336
336
  }] });
337
337
  class AddLocationModule {
338
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
339
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: AddLocationModule, imports: [CoreModule, LocationRouteModule, AddLocationComponent], exports: [AddLocationComponent] }); }
340
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationModule, providers: [hookActionBar(AddLocationFactory)], imports: [CoreModule, LocationRouteModule] }); }
338
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
339
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AddLocationModule, imports: [CoreModule, LocationRouteModule, AddLocationComponent], exports: [AddLocationComponent] }); }
340
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationModule, providers: [hookActionBar(AddLocationFactory)], imports: [CoreModule, LocationRouteModule] }); }
341
341
  }
342
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AddLocationModule, decorators: [{
342
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AddLocationModule, decorators: [{
343
343
  type: NgModule,
344
344
  args: [{
345
345
  imports: [CoreModule, LocationRouteModule, AddLocationComponent],
@@ -159,10 +159,10 @@ class LoriotProviderService {
159
159
  error.message = data.message;
160
160
  throw error;
161
161
  }
162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotProviderService, deps: [{ token: i1.FetchClient }, { token: i1.InventoryService }, { token: i2.TranslateService }, { token: i3.AppStateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
163
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotProviderService, providedIn: 'root' }); }
162
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotProviderService, deps: [{ token: i1.FetchClient }, { token: i1.InventoryService }, { token: i2.TranslateService }, { token: i3.AppStateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
163
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotProviderService, providedIn: 'root' }); }
164
164
  }
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotProviderService, decorators: [{
165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotProviderService, decorators: [{
166
166
  type: Injectable,
167
167
  args: [{
168
168
  providedIn: 'root'
@@ -368,10 +368,10 @@ class LoriotDeviceRegistrationComponent {
368
368
  this.unsubscribe$.next();
369
369
  this.unsubscribe$.complete();
370
370
  }
371
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationComponent, deps: [{ token: i1$1.BsModalRef }, { token: LoriotProviderService }, { token: i3.GainsightService }], target: i0.ɵɵFactoryTarget.Component }); }
372
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: LoriotDeviceRegistrationComponent, isStandalone: true, selector: "c8y-loriot-registration", ngImport: i0, template: "<c8y-modal\n [title]=\"'LORIOT registration' | translate\"\n [headerClasses]=\"'dialog-header'\"\n [customFooter]=\"true\"\n>\n <ng-container c8y-modal-title>\n <span [c8yIcon]=\"'c8y-device-connect'\"></span>\n </ng-container>\n <ng-container *ngIf=\"state === 'loadPending'; else registrationForm\">\n <div class=\"p-16 text-center\">\n <c8y-loading></c8y-loading>\n </div>\n </ng-container>\n\n <ng-template #registrationForm>\n <c8y-stepper\n [hideStepProgress]=\"true\"\n linear\n c8y-modal-body\n *ngIf=\"(errorMessages$ | async).length === 0; else errorMessagesPresent\"\n >\n <cdk-step [stepControl]=\"form\">\n <div class=\"p-b-16\">\n <p class=\"modal-subtitle sticky-top\">\n {{ 'Register a single LORIOT device' | translate }}\n </p>\n <formly-form\n class=\"d-block p-l-24 p-r-24 p-t-16\"\n [form]=\"form\"\n [fields]=\"fields\"\n [model]=\"model\"\n ></formly-form>\n </div>\n <c8y-stepper-buttons\n class=\"modal-footer d-block sticky-bottom separator-top bg-component\"\n [labels]=\"registrationStepLabels\"\n (onNext)=\"create($event)\"\n (onCancel)=\"bsModalRef.hide()\"\n [showButtons]=\"{ cancel: true, next: true }\"\n [pending]=\"state === 'registrationPending'\"\n [disabled]=\"!form.valid\"\n ></c8y-stepper-buttons>\n </cdk-step>\n <cdk-step state=\"final\">\n <div\n class=\"p-16 text-center\"\n *ngIf=\"state === 'registrationPending'\"\n >\n <c8y-loading></c8y-loading>\n </div>\n <div class=\"m-24\">\n <c8y-operation-result\n class=\"lead m-b-0\"\n type=\"success\"\n *ngIf=\"state === 'registrationSuccess'\"\n text=\"{{ 'Device registered' | translate }}\"\n [size]=\"84\"\n [vertical]=\"true\"\n ></c8y-operation-result>\n </div>\n\n <c8y-stepper-buttons\n class=\"sticky-bottom d-block p-t-16 p-b-16 separator-top bg-component\"\n (onCustom)=\"bsModalRef.hide()\"\n [showButtons]=\"{ custom: true }\"\n [labels]=\"finalStepLabels\"\n ></c8y-stepper-buttons>\n </cdk-step>\n </c8y-stepper>\n </ng-template>\n\n <ng-template #errorMessagesPresent>\n <div class=\"m-24\">\n <c8y-operation-result\n class=\"lead\"\n type=\"error\"\n *ngIf=\"state === 'registrationError'\"\n text=\"{{ 'Failed to register' | translate }}\"\n [size]=\"84\"\n [vertical]=\"true\"\n ></c8y-operation-result>\n <div\n class=\"m-b-8\"\n *ngFor=\"let msg of errorMessages$ | async\"\n data-cy=\"loriot-device-registration.component--registration-error\"\n [ngClass]=\"{\n 'text-center': state === 'registrationError',\n 'alert alert-danger': state === 'loadError'\n }\"\n >\n <span [innerHTML]=\"msg | translate\"></span>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Close' | translate }}\"\n type=\"button\"\n (click)=\"bsModalRef.hide()\"\n >\n {{ 'Close' | translate }}\n </button>\n </div>\n </ng-template>\n</c8y-modal>\n", dependencies: [{ kind: "component", type: ModalComponent, selector: "c8y-modal", inputs: ["disabled", "close", "dismiss", "title", "body", "customFooter", "headerClasses", "labels"], outputs: ["onDismiss", "onClose"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LoadingComponent, selector: "c8y-loading", inputs: ["layout", "progress", "message"] }, { kind: "component", type: C8yStepper, selector: "c8y-stepper", inputs: ["disableDefaultIcons", "disableProgressButtons", "customClasses", "hideStepProgress", "useStepLabelsAsTitlesOnly"], outputs: ["onStepChange"] }, { kind: "component", type: CdkStep, selector: "cdk-step", inputs: ["stepControl", "label", "errorMessage", "aria-label", "aria-labelledby", "state", "editable", "optional", "completed", "hasError"], outputs: ["interacted"], exportAs: ["cdkStep"] }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: i4.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }, { kind: "component", type: C8yStepperButtons, selector: "c8y-stepper-buttons", inputs: ["labels", "pending", "disabled", "showButtons"], outputs: ["onCancel", "onNext", "onBack", "onCustom"] }, { kind: "component", type: OperationResultComponent, selector: "c8y-operation-result", inputs: ["text", "vertical", "size", "type"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
371
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationComponent, deps: [{ token: i1$1.BsModalRef }, { token: LoriotProviderService }, { token: i3.GainsightService }], target: i0.ɵɵFactoryTarget.Component }); }
372
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: LoriotDeviceRegistrationComponent, isStandalone: true, selector: "c8y-loriot-registration", ngImport: i0, template: "<c8y-modal\n [title]=\"'LORIOT registration' | translate\"\n [headerClasses]=\"'dialog-header'\"\n [customFooter]=\"true\"\n>\n <ng-container c8y-modal-title>\n <span [c8yIcon]=\"'c8y-device-connect'\"></span>\n </ng-container>\n <ng-container *ngIf=\"state === 'loadPending'; else registrationForm\">\n <div class=\"p-16 text-center\">\n <c8y-loading></c8y-loading>\n </div>\n </ng-container>\n\n <ng-template #registrationForm>\n <c8y-stepper\n [hideStepProgress]=\"true\"\n linear\n c8y-modal-body\n *ngIf=\"(errorMessages$ | async).length === 0; else errorMessagesPresent\"\n >\n <cdk-step [stepControl]=\"form\">\n <div class=\"p-b-16\">\n <p class=\"modal-subtitle sticky-top\">\n {{ 'Register a single LORIOT device' | translate }}\n </p>\n <formly-form\n class=\"d-block p-l-24 p-r-24 p-t-16\"\n [form]=\"form\"\n [fields]=\"fields\"\n [model]=\"model\"\n ></formly-form>\n </div>\n <c8y-stepper-buttons\n class=\"modal-footer d-block sticky-bottom separator-top bg-component\"\n [labels]=\"registrationStepLabels\"\n (onNext)=\"create($event)\"\n (onCancel)=\"bsModalRef.hide()\"\n [showButtons]=\"{ cancel: true, next: true }\"\n [pending]=\"state === 'registrationPending'\"\n [disabled]=\"!form.valid\"\n ></c8y-stepper-buttons>\n </cdk-step>\n <cdk-step state=\"final\">\n <div\n class=\"p-16 text-center\"\n *ngIf=\"state === 'registrationPending'\"\n >\n <c8y-loading></c8y-loading>\n </div>\n <div class=\"m-24\">\n <c8y-operation-result\n class=\"lead m-b-0\"\n type=\"success\"\n *ngIf=\"state === 'registrationSuccess'\"\n text=\"{{ 'Device registered' | translate }}\"\n [size]=\"84\"\n [vertical]=\"true\"\n ></c8y-operation-result>\n </div>\n\n <c8y-stepper-buttons\n class=\"sticky-bottom d-block p-t-16 p-b-16 separator-top bg-component\"\n (onCustom)=\"bsModalRef.hide()\"\n [showButtons]=\"{ custom: true }\"\n [labels]=\"finalStepLabels\"\n ></c8y-stepper-buttons>\n </cdk-step>\n </c8y-stepper>\n </ng-template>\n\n <ng-template #errorMessagesPresent>\n <div class=\"m-24\">\n <c8y-operation-result\n class=\"lead\"\n type=\"error\"\n *ngIf=\"state === 'registrationError'\"\n text=\"{{ 'Failed to register' | translate }}\"\n [size]=\"84\"\n [vertical]=\"true\"\n ></c8y-operation-result>\n <div\n class=\"m-b-8\"\n *ngFor=\"let msg of errorMessages$ | async\"\n data-cy=\"loriot-device-registration.component--registration-error\"\n [ngClass]=\"{\n 'text-center': state === 'registrationError',\n 'alert alert-danger': state === 'loadError'\n }\"\n >\n <span [innerHTML]=\"msg | translate\"></span>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Close' | translate }}\"\n type=\"button\"\n (click)=\"bsModalRef.hide()\"\n >\n {{ 'Close' | translate }}\n </button>\n </div>\n </ng-template>\n</c8y-modal>\n", dependencies: [{ kind: "component", type: ModalComponent, selector: "c8y-modal", inputs: ["disabled", "close", "dismiss", "title", "body", "customFooter", "headerClasses", "labels"], outputs: ["onDismiss", "onClose"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LoadingComponent, selector: "c8y-loading", inputs: ["layout", "progress", "message"] }, { kind: "component", type: C8yStepper, selector: "c8y-stepper", inputs: ["disableDefaultIcons", "disableProgressButtons", "customClasses", "hideStepProgress", "useStepLabelsAsTitlesOnly"], outputs: ["onStepChange"] }, { kind: "component", type: CdkStep, selector: "cdk-step", inputs: ["stepControl", "label", "errorMessage", "aria-label", "aria-labelledby", "state", "editable", "optional", "completed", "hasError"], outputs: ["interacted"], exportAs: ["cdkStep"] }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: i4.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }, { kind: "component", type: C8yStepperButtons, selector: "c8y-stepper-buttons", inputs: ["labels", "pending", "disabled", "showButtons"], outputs: ["onCancel", "onNext", "onBack", "onCustom"] }, { kind: "component", type: OperationResultComponent, selector: "c8y-operation-result", inputs: ["text", "vertical", "size", "type"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
373
373
  }
374
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationComponent, decorators: [{
374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationComponent, decorators: [{
375
375
  type: Component,
376
376
  args: [{ selector: 'c8y-loriot-registration', imports: [
377
377
  ModalComponent,
@@ -402,10 +402,10 @@ class LoriotDeviceRegistrationButtonComponent {
402
402
  ignoreBackdropClick: true
403
403
  });
404
404
  }
405
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationButtonComponent, deps: [{ token: i1$1.BsModalService }], target: i0.ɵɵFactoryTarget.Component }); }
406
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: LoriotDeviceRegistrationButtonComponent, isStandalone: true, selector: "c8y-loriot-registration", ngImport: i0, template: "<button (click)=\"open()\"><i c8yIcon=\"c8y-device-connect\"></i> {{ 'LORIOT LoRa' | translate }} </button>", dependencies: [{ kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
405
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationButtonComponent, deps: [{ token: i1$1.BsModalService }], target: i0.ɵɵFactoryTarget.Component }); }
406
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: LoriotDeviceRegistrationButtonComponent, isStandalone: true, selector: "c8y-loriot-registration", ngImport: i0, template: "<button (click)=\"open()\"><i c8yIcon=\"c8y-device-connect\"></i> {{ 'LORIOT LoRa' | translate }} </button>", dependencies: [{ kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
407
407
  }
408
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationButtonComponent, decorators: [{
408
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationButtonComponent, decorators: [{
409
409
  type: Component,
410
410
  args: [{ selector: 'c8y-loriot-registration', imports: [IconDirective, C8yTranslatePipe], template: "<button (click)=\"open()\"><i c8yIcon=\"c8y-device-connect\"></i> {{ 'LORIOT LoRa' | translate }} </button>" }]
411
411
  }], ctorParameters: () => [{ type: i1$1.BsModalService }] });
@@ -425,10 +425,10 @@ class LoriotDeviceRegistrationFactory {
425
425
  }
426
426
  return items;
427
427
  }
428
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationFactory, deps: [{ token: i3.TenantUiService }], target: i0.ɵɵFactoryTarget.Injectable }); }
429
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationFactory, providedIn: 'root' }); }
428
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationFactory, deps: [{ token: i3.TenantUiService }], target: i0.ɵɵFactoryTarget.Injectable }); }
429
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationFactory, providedIn: 'root' }); }
430
430
  }
431
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationFactory, decorators: [{
431
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationFactory, decorators: [{
432
432
  type: Injectable,
433
433
  args: [{
434
434
  providedIn: 'root'
@@ -436,16 +436,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
436
436
  }], ctorParameters: () => [{ type: i3.TenantUiService }] });
437
437
 
438
438
  class LoriotDeviceRegistrationModule {
439
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
440
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationModule, imports: [CoreModule,
439
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
440
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationModule, imports: [CoreModule,
441
441
  CommonModule,
442
442
  LoriotDeviceRegistrationButtonComponent,
443
443
  LoriotDeviceRegistrationComponent] }); }
444
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationModule, providers: [hookDeviceRegistration(LoriotDeviceRegistrationFactory), LoriotProviderService], imports: [CoreModule,
444
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationModule, providers: [hookDeviceRegistration(LoriotDeviceRegistrationFactory), LoriotProviderService], imports: [CoreModule,
445
445
  CommonModule,
446
446
  LoriotDeviceRegistrationComponent] }); }
447
447
  }
448
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LoriotDeviceRegistrationModule, decorators: [{
448
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoriotDeviceRegistrationModule, decorators: [{
449
449
  type: NgModule,
450
450
  args: [{
451
451
  imports: [