@c8y/ngx-components 1022.35.1 → 1022.44.7

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 (925) hide show
  1. package/actility-device-registration/actility-device-registration.component.d.ts.map +1 -1
  2. package/actility-device-registration/actility-device-registration.service.d.ts.map +1 -1
  3. package/alarms/alarm-details.component.d.ts.map +1 -1
  4. package/alarms/alarm-info.component.d.ts.map +1 -1
  5. package/alarms/alarm-severity-to-icon-class.pipe.d.ts +9 -0
  6. package/alarms/alarm-severity-to-icon-class.pipe.d.ts.map +1 -0
  7. package/alarms/alarms-icon.component.d.ts.map +1 -1
  8. package/alarms/alarms-interval-refresh.component.d.ts.map +1 -1
  9. package/alarms/alarms-list.component.d.ts.map +1 -1
  10. package/alarms/alarms-view.service.d.ts.map +1 -1
  11. package/alarms/alarms.component.d.ts.map +1 -1
  12. package/alarms/alarms.helper.d.ts.map +1 -1
  13. package/alarms/alarms.model.d.ts.map +1 -1
  14. package/alarms/cockpit/index.d.ts.map +1 -1
  15. package/alarms/devicemanagement/index.d.ts.map +1 -1
  16. package/alarms/index.d.ts +1 -0
  17. package/alarms/index.d.ts.map +1 -1
  18. package/asset-properties/asset-properties.model.d.ts +77 -1
  19. package/asset-properties/asset-properties.model.d.ts.map +1 -1
  20. package/asset-properties/asset-properties.service.d.ts +17 -0
  21. package/asset-properties/asset-properties.service.d.ts.map +1 -1
  22. package/asset-properties/asset-property-list/asset-property-collapse-button-title.pipe.d.ts +14 -0
  23. package/asset-properties/asset-property-list/asset-property-collapse-button-title.pipe.d.ts.map +1 -0
  24. package/asset-properties/asset-property-list/asset-property-icon.pipe.d.ts +2 -1
  25. package/asset-properties/asset-property-list/asset-property-icon.pipe.d.ts.map +1 -1
  26. package/asset-properties/asset-property-list/asset-property-list.component.d.ts +52 -13
  27. package/asset-properties/asset-property-list/asset-property-list.component.d.ts.map +1 -1
  28. package/asset-properties/asset-property-list/asset-property-value.pipe.d.ts +7 -3
  29. package/asset-properties/asset-property-list/asset-property-value.pipe.d.ts.map +1 -1
  30. package/asset-properties/asset-property-list/tree-data-source.d.ts +1 -0
  31. package/asset-properties/asset-property-list/tree-data-source.d.ts.map +1 -1
  32. package/asset-properties/asset-property-selector-drawer/asset-property-selector-drawer.component.d.ts.map +1 -1
  33. package/asset-properties/computed-properties-config/computed-properties-config.component.d.ts +39 -0
  34. package/asset-properties/computed-properties-config/computed-properties-config.component.d.ts.map +1 -0
  35. package/asset-properties/computed-properties.service.d.ts +27 -0
  36. package/asset-properties/computed-properties.service.d.ts.map +1 -0
  37. package/asset-properties/custom-properties-drawer/custom-properties-drawer.component.d.ts +11 -6
  38. package/asset-properties/custom-properties-drawer/custom-properties-drawer.component.d.ts.map +1 -1
  39. package/asset-properties/custom-properties-drawer.service.d.ts +2 -1
  40. package/asset-properties/custom-properties-drawer.service.d.ts.map +1 -1
  41. package/asset-properties/index.d.ts +1 -0
  42. package/asset-properties/index.d.ts.map +1 -1
  43. package/assets-navigator/asset-node.d.ts.map +1 -1
  44. package/assets-navigator/asset-node.service.d.ts.map +1 -1
  45. package/assets-navigator/asset-selector/asset-selector-node.component.d.ts.map +1 -1
  46. package/assets-navigator/asset-selector/asset-selector.model.d.ts +1 -2
  47. package/assets-navigator/asset-selector/asset-selector.model.d.ts.map +1 -1
  48. package/assets-navigator/asset-selector/miller-view.component.d.ts +17 -5
  49. package/assets-navigator/asset-selector/miller-view.component.d.ts.map +1 -1
  50. package/assets-navigator/asset-selector/unassigned-devices-node.d.ts.map +1 -1
  51. package/assets-navigator/load-more-node.d.ts.map +1 -1
  52. package/auth-configuration/basic-settings/login-settings.component.d.ts.map +1 -1
  53. package/auth-configuration/basic-settings/session-configuration.component.d.ts.map +1 -1
  54. package/auth-configuration/factories/navigation.factory.d.ts.map +1 -1
  55. package/auth-configuration/factories/tabs.factory.d.ts.map +1 -1
  56. package/auth-configuration/sso-configuration/sso-configuration.component.d.ts.map +1 -1
  57. package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-modal.component.d.ts.map +1 -1
  58. package/auth-configuration/sso-configuration/template-parts/signature-configuration.component.d.ts.map +1 -1
  59. package/auth-configuration/sso-configuration/template-parts/user-data-mapping.component.d.ts.map +1 -1
  60. package/binary-file-download/binary-file-download.service.d.ts.map +1 -1
  61. package/bookmarks/bookmarks.component.d.ts.map +1 -1
  62. package/bookmarks/bookmarks.service.d.ts.map +1 -1
  63. package/bookmarks/edit-bookmarks/edit-bookmarks.component.d.ts.map +1 -1
  64. package/branding/dark-theme/dark-theme-tab.factory.d.ts.map +1 -1
  65. package/branding/extra-css-branding-editor/extra-css-branding-editor-tab.factory.d.ts.map +1 -1
  66. package/branding/plain-branding-editor/plain-branding-editor-tab.factory.d.ts.map +1 -1
  67. package/branding/shared/lazy/branding-form/branding-form.component.d.ts.map +1 -1
  68. package/branding/shared/lazy/branding-import-modal/branding-import-modal.component.d.ts.map +1 -1
  69. package/branding/shared/lazy/edit-branding-router-outlet/edit-branding-router-outlet.component.d.ts.map +1 -1
  70. package/cockpit-config/cockpit-config.guard.d.ts.map +1 -1
  71. package/cockpit-config/cockpit-configuration.component.d.ts.map +1 -1
  72. package/computed-asset-properties/alarm-count/alarm-count-3-months-computed-property.d.ts +8 -0
  73. package/computed-asset-properties/alarm-count/alarm-count-3-months-computed-property.d.ts.map +1 -0
  74. package/computed-asset-properties/alarm-count/alarm-count-config.component.d.ts +26 -0
  75. package/computed-asset-properties/alarm-count/alarm-count-config.component.d.ts.map +1 -0
  76. package/computed-asset-properties/alarm-count/alarm-count-today-computed-property.d.ts +8 -0
  77. package/computed-asset-properties/alarm-count/alarm-count-today-computed-property.d.ts.map +1 -0
  78. package/computed-asset-properties/alarm-count/alarm-count-value.d.ts +17 -0
  79. package/computed-asset-properties/alarm-count/alarm-count-value.d.ts.map +1 -0
  80. package/computed-asset-properties/alarm-count/alarm-count.model.d.ts +6 -0
  81. package/computed-asset-properties/alarm-count/alarm-count.model.d.ts.map +1 -0
  82. package/computed-asset-properties/c8y-ngx-components-computed-asset-properties.d.ts.map +1 -0
  83. package/computed-asset-properties/child-count/child-assets-count-computed-property.d.ts +14 -0
  84. package/computed-asset-properties/child-count/child-assets-count-computed-property.d.ts.map +1 -0
  85. package/computed-asset-properties/child-count/child-count-value.d.ts +14 -0
  86. package/computed-asset-properties/child-count/child-count-value.d.ts.map +1 -0
  87. package/computed-asset-properties/child-count/child-devices-count-computed-property.d.ts +14 -0
  88. package/computed-asset-properties/child-count/child-devices-count-computed-property.d.ts.map +1 -0
  89. package/computed-asset-properties/common/realtime-value-base.d.ts +32 -0
  90. package/computed-asset-properties/common/realtime-value-base.d.ts.map +1 -0
  91. package/computed-asset-properties/common/realtime-value-handler.d.ts +19 -0
  92. package/computed-asset-properties/common/realtime-value-handler.d.ts.map +1 -0
  93. package/computed-asset-properties/configuration-snapshot/configuration-snapshot-computed-property.d.ts +7 -0
  94. package/computed-asset-properties/configuration-snapshot/configuration-snapshot-computed-property.d.ts.map +1 -0
  95. package/computed-asset-properties/configuration-snapshot/configuration-snapshot-config.component.d.ts +21 -0
  96. package/computed-asset-properties/configuration-snapshot/configuration-snapshot-config.component.d.ts.map +1 -0
  97. package/computed-asset-properties/configuration-snapshot/configuration-snapshot.model.d.ts +8 -0
  98. package/computed-asset-properties/configuration-snapshot/configuration-snapshot.model.d.ts.map +1 -0
  99. package/computed-asset-properties/event-count/event-count-3-months.d.ts +8 -0
  100. package/computed-asset-properties/event-count/event-count-3-months.d.ts.map +1 -0
  101. package/computed-asset-properties/event-count/event-count-config.component.d.ts +18 -0
  102. package/computed-asset-properties/event-count/event-count-config.component.d.ts.map +1 -0
  103. package/computed-asset-properties/event-count/event-count-today.d.ts +8 -0
  104. package/computed-asset-properties/event-count/event-count-today.d.ts.map +1 -0
  105. package/computed-asset-properties/event-count/event-count-value.d.ts +17 -0
  106. package/computed-asset-properties/event-count/event-count-value.d.ts.map +1 -0
  107. package/computed-asset-properties/event-count/event-count.model.d.ts +4 -0
  108. package/computed-asset-properties/event-count/event-count.model.d.ts.map +1 -0
  109. package/computed-asset-properties/index.d.ts +3 -0
  110. package/computed-asset-properties/index.d.ts.map +1 -0
  111. package/computed-asset-properties/last-device-message/last-device-message-computed-property.d.ts +3 -0
  112. package/computed-asset-properties/last-device-message/last-device-message-computed-property.d.ts.map +1 -0
  113. package/computed-asset-properties/last-device-message/last-device-message-value.d.ts +13 -0
  114. package/computed-asset-properties/last-device-message/last-device-message-value.d.ts.map +1 -0
  115. package/computed-asset-properties/last-measurement/last-measurement-computed-property.d.ts +8 -0
  116. package/computed-asset-properties/last-measurement/last-measurement-computed-property.d.ts.map +1 -0
  117. package/computed-asset-properties/last-measurement/last-measurement-config.component.d.ts +48 -0
  118. package/computed-asset-properties/last-measurement/last-measurement-config.component.d.ts.map +1 -0
  119. package/computed-asset-properties/last-measurement/last-measurement-value.d.ts +13 -0
  120. package/computed-asset-properties/last-measurement/last-measurement-value.d.ts.map +1 -0
  121. package/computed-asset-properties/last-measurement/last-measurement.model.d.ts +28 -0
  122. package/computed-asset-properties/last-measurement/last-measurement.model.d.ts.map +1 -0
  123. package/computed-asset-properties/strategies/alarm-count-strategy.d.ts +17 -0
  124. package/computed-asset-properties/strategies/alarm-count-strategy.d.ts.map +1 -0
  125. package/computed-asset-properties/strategies/child-count-strategy.d.ts +14 -0
  126. package/computed-asset-properties/strategies/child-count-strategy.d.ts.map +1 -0
  127. package/computed-asset-properties/strategies/count-strategy-base.d.ts +12 -0
  128. package/computed-asset-properties/strategies/count-strategy-base.d.ts.map +1 -0
  129. package/computed-asset-properties/strategies/event-count-strategy.d.ts +16 -0
  130. package/computed-asset-properties/strategies/event-count-strategy.d.ts.map +1 -0
  131. package/computed-asset-properties/strategies/last-device-message-strategy.d.ts +20 -0
  132. package/computed-asset-properties/strategies/last-device-message-strategy.d.ts.map +1 -0
  133. package/computed-asset-properties/strategies/last-measurement-strategy.d.ts +16 -0
  134. package/computed-asset-properties/strategies/last-measurement-strategy.d.ts.map +1 -0
  135. package/connectivity/abstract-connectivity-node.factory.d.ts.map +1 -1
  136. package/connectivity/actility/actility-tab.factory.d.ts.map +1 -1
  137. package/connectivity/sigfox/sigfox-tab.factory.d.ts.map +1 -1
  138. package/connectivity/sim/sim.module.d.ts.map +1 -1
  139. package/context-dashboard/cockpit-home-dashboard/cockpit-dashboard.component.d.ts.map +1 -1
  140. package/context-dashboard/cockpit-home-dashboard/cockpit-dashboard.model.d.ts.map +1 -1
  141. package/context-dashboard/cockpit-home-dashboard/cockpit-dashboard.module.d.ts.map +1 -1
  142. package/context-dashboard/context-dashboard.component.d.ts.map +1 -1
  143. package/context-dashboard/context-dashboard.model.d.ts +16 -0
  144. package/context-dashboard/context-dashboard.model.d.ts.map +1 -1
  145. package/context-dashboard/context-dashboard.service.d.ts.map +1 -1
  146. package/context-dashboard/dashboard-detail.component.d.ts.map +1 -1
  147. package/context-dashboard/dashboard-detail.service.d.ts.map +1 -1
  148. package/context-dashboard/dashboard-details-tabs.factory.d.ts.map +1 -1
  149. package/context-dashboard/dashboard-settings/dashboard-general-settings.component.d.ts.map +1 -1
  150. package/context-dashboard/dashboard-settings/dashboard-version-history.component.d.ts.map +1 -1
  151. package/context-dashboard/dashboard-settings/typed-dashboard-settings.component.d.ts.map +1 -1
  152. package/context-dashboard/device-info-dashboard/device-info-dashboard.component.d.ts.map +1 -1
  153. package/context-dashboard/device-info-dashboard/device-info-dashboard.module.d.ts.map +1 -1
  154. package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.component.d.ts.map +1 -1
  155. package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.module.d.ts.map +1 -1
  156. package/context-dashboard/new-dashboard.guard.d.ts.map +1 -1
  157. package/context-dashboard/widget-config/appearance-settings.component.d.ts.map +1 -1
  158. package/context-dashboard/widget-config.service.d.ts +11 -1
  159. package/context-dashboard/widget-config.service.d.ts.map +1 -1
  160. package/core/action/action.service.d.ts +1 -1
  161. package/core/action-bar/action-bar.service.d.ts +1 -1
  162. package/core/authentication/simplified-auth.service.d.ts +1 -1
  163. package/core/authentication/simplified-auth.service.d.ts.map +1 -1
  164. package/core/bottom-drawer/bottom-drawer.component.d.ts +16 -2
  165. package/core/bottom-drawer/bottom-drawer.component.d.ts.map +1 -1
  166. package/core/bottom-drawer/bottom-drawer.service.d.ts +13 -5
  167. package/core/bottom-drawer/bottom-drawer.service.d.ts.map +1 -1
  168. package/core/breadcrumb/breadcrumb.service.d.ts +1 -1
  169. package/core/common/extension-hooks.d.ts.map +1 -1
  170. package/core/common/options.service.d.ts +1 -1
  171. package/core/common/service-registry.service.d.ts +1 -1
  172. package/core/common/ui-state.service.d.ts +7 -7
  173. package/core/common/ui-state.service.d.ts.map +1 -1
  174. package/core/common/user-preferences/user-preferences.service.d.ts +4 -4
  175. package/core/common/user-preferences/user-preferences.service.d.ts.map +1 -1
  176. package/core/dashboard/widgets-dashboard.component.d.ts +9 -1
  177. package/core/dashboard/widgets-dashboard.component.d.ts.map +1 -1
  178. package/core/data-grid/action-controls-extension.service.d.ts +1 -1
  179. package/core/data-grid/filter-chip/filter-mapper.factory.d.ts +1 -1
  180. package/core/date-picker/date-picker.component.d.ts.map +1 -1
  181. package/core/docs/docs.models.d.ts +1 -1
  182. package/core/docs/docs.module.d.ts +1 -1
  183. package/core/docs/help-and-support-outlet/help-and-support-outlet.module.d.ts +1 -1
  184. package/core/docs/legal-notices-outlet/legal-notices-outlet.module.d.ts +1 -1
  185. package/core/docs/support-outlet/support-outlet.component.d.ts +4 -3
  186. package/core/docs/support-outlet/support-outlet.component.d.ts.map +1 -1
  187. package/core/docs/support-outlet/support-outlet.module.d.ts +1 -1
  188. package/core/drawer/drawer.service.d.ts +1 -1
  189. package/core/dynamic-component/dynamic-component.model.d.ts +18 -4
  190. package/core/dynamic-component/dynamic-component.model.d.ts.map +1 -1
  191. package/core/dynamic-forms/i18n/translate.extension.d.ts.map +1 -1
  192. package/core/feedback-form/feedback-form.component.d.ts +27 -0
  193. package/core/feedback-form/feedback-form.component.d.ts.map +1 -0
  194. package/core/feedback-form/feedback-form.model.d.ts +6 -0
  195. package/core/feedback-form/feedback-form.model.d.ts.map +1 -0
  196. package/core/feedback-form/index.d.ts +2 -0
  197. package/core/feedback-form/index.d.ts.map +1 -0
  198. package/core/i18n/gettext.d.ts +4 -1
  199. package/core/i18n/gettext.d.ts.map +1 -1
  200. package/core/i18n/pattern-messages.data.d.ts +61 -0
  201. package/core/i18n/pattern-messages.data.d.ts.map +1 -1
  202. package/core/i18n/patterns-message.hook.d.ts +1 -1
  203. package/core/index.d.ts +1 -0
  204. package/core/index.d.ts.map +1 -1
  205. package/core/modal/modal.service.d.ts +0 -1
  206. package/core/modal/modal.service.d.ts.map +1 -1
  207. package/core/navigator/navigator-bottom/navigator-bottom.module.d.ts +1 -1
  208. package/core/navigator/navigator-top/navigator-top.module.d.ts +1 -1
  209. package/core/navigator/navigator.module.d.ts +1 -1
  210. package/core/navigator/navigator.service.d.ts +1 -1
  211. package/core/plugins/index.d.ts +1 -0
  212. package/core/plugins/index.d.ts.map +1 -1
  213. package/core/plugins/plugins-injection-token.d.ts +14 -0
  214. package/core/plugins/plugins-injection-token.d.ts.map +1 -0
  215. package/core/plugins/plugins-loader.service.d.ts +7 -21
  216. package/core/plugins/plugins-loader.service.d.ts.map +1 -1
  217. package/core/plugins/plugins-resolve.service.d.ts +1 -0
  218. package/core/plugins/plugins-resolve.service.d.ts.map +1 -1
  219. package/core/preview-feature/preview-feature.component.d.ts.map +1 -1
  220. package/core/preview-feature/preview-feature.service.d.ts +1 -1
  221. package/core/provider-configuration/provider-configuration-hook.d.ts +1 -1
  222. package/core/query-param-handler/index.d.ts +1 -1
  223. package/core/query-param-handler/query-param-bottom-drawer.service.d.ts +1 -1
  224. package/core/query-param-handler/query-param-handler.service.d.ts +1 -1
  225. package/core/query-param-handler/query-param-modal-handler.service.d.ts +1 -1
  226. package/core/router/router.service.d.ts +1 -1
  227. package/core/search/search.service.d.ts +1 -1
  228. package/core/stepper/stepper.service.d.ts +1 -1
  229. package/core/tabs/tab.component.d.ts +2 -2
  230. package/core/tabs/tab.component.d.ts.map +1 -1
  231. package/core/tabs/tab.model.d.ts +2 -2
  232. package/core/tabs/tab.model.d.ts.map +1 -1
  233. package/core/tabs/tabs.service.d.ts +1 -1
  234. package/core/tabs/tabs.service.d.ts.map +1 -1
  235. package/core/ui-settings/ui-settings.module.d.ts +1 -1
  236. package/core/user/change-current-user-password.service.d.ts +10 -0
  237. package/core/user/change-current-user-password.service.d.ts.map +1 -0
  238. package/core/user/index.d.ts +1 -0
  239. package/core/user/index.d.ts.map +1 -1
  240. package/core/user/user-details-drawer/user-details-drawer.module.d.ts +1 -1
  241. package/core/user/user-menu.service.d.ts +1 -1
  242. package/core/user/user.module.d.ts +1 -1
  243. package/core/version/version.model.d.ts +1 -1
  244. package/core/version/version.module.d.ts +1 -1
  245. package/core/wizard/wizard.model.d.ts +1 -1
  246. package/dashboard-details-advanced-tab/advanced-tab.factory.d.ts.map +1 -1
  247. package/dashboard-details-advanced-tab/assign-widget-assets/assign-widget-asset-modal.component.d.ts.map +1 -1
  248. package/dashboard-details-advanced-tab/dashboard-json-editor/dashboard-json-editor.component.d.ts.map +1 -1
  249. package/dashboard-details-advanced-tab/dashboard-json-editor/import-export-widgets.service.d.ts.map +1 -1
  250. package/dashboard-manager/dashboard-manager-tabs.factory.d.ts.map +1 -1
  251. package/dashboard-manager/dashboard-manager.service.d.ts.map +1 -1
  252. package/dashboard-manager/devicemanagement/index.d.ts +1 -1
  253. package/dashboard-manager/type-dashboard-target-assets-grid/type-dashboard-target-assets-grid.component.d.ts.map +1 -1
  254. package/dashboard-manager/type-dashboard-target-assets-modal/type-dashboard-target-assets-modal.component.d.ts.map +1 -1
  255. package/dashboard-manager/type-dashboards-list/device-type-value.grid-column.d.ts.map +1 -1
  256. package/dashboard-manager/type-dashboards-list/type-dashboards-list.component.d.ts.map +1 -1
  257. package/data-grid-columns/asset-type/asset-type-grid-column.d.ts.map +1 -1
  258. package/data-grid-columns/asset-type/asset-type.cell-renderer.component.d.ts.map +1 -1
  259. package/datapoint-explorer/datapoint-explorer-navigation-factory.d.ts.map +1 -1
  260. package/datapoint-explorer/devicemanagement/index.d.ts +3 -0
  261. package/datapoint-explorer/devicemanagement/index.d.ts.map +1 -1
  262. package/datapoint-explorer/view/configuration/workspace-configuration.component.d.ts +4 -2
  263. package/datapoint-explorer/view/configuration/workspace-configuration.component.d.ts.map +1 -1
  264. package/datapoint-explorer/view/create-new-report-modal/create-new-report-modal.component.d.ts.map +1 -1
  265. package/datapoint-explorer/view/datapoint-explorer.model.d.ts +1 -0
  266. package/datapoint-explorer/view/datapoint-explorer.model.d.ts.map +1 -1
  267. package/datapoint-explorer/view/index.d.ts +3 -0
  268. package/datapoint-explorer/view/index.d.ts.map +1 -1
  269. package/datapoint-explorer/view/send-as-widget-to-dashboard-modal/send-as-widget-to-dashboard-modal.component.d.ts.map +1 -1
  270. package/datapoint-explorer/view/send-as-widget-to-report-modal/send-as-widget-to-report-modal.component.d.ts.map +1 -1
  271. package/datapoint-library/datapoint-library.module.d.ts.map +1 -1
  272. package/datapoint-library/details/datapoint-library-details.component.d.ts +1 -2
  273. package/datapoint-library/details/datapoint-library-details.component.d.ts.map +1 -1
  274. package/datapoint-library/list/datapoint-library-list.component.d.ts.map +1 -1
  275. package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form-validation.service.d.ts.map +1 -1
  276. package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts.map +1 -1
  277. package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts.map +1 -1
  278. package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-fetching.service.d.ts.map +1 -1
  279. package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.service.d.ts.map +1 -1
  280. package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-time-range/datapoints-exports-selector-time-range.component.d.ts.map +1 -1
  281. package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-modal.component.d.ts.map +1 -1
  282. package/datapoints-export-selector/datapoints-export-selector.model.d.ts.map +1 -1
  283. package/default-subscriptions/default-subscriptions-navigation.factory.d.ts.map +1 -1
  284. package/default-subscriptions/default-subscriptions.component.d.ts.map +1 -1
  285. package/device-grid/columns/alarms.cell-renderer.component.d.ts.map +1 -1
  286. package/device-grid/columns/alarms.device-grid-column.d.ts.map +1 -1
  287. package/device-grid/columns/group.device-grid-column.d.ts.map +1 -1
  288. package/device-grid/columns/imei.device-grid-column.d.ts.map +1 -1
  289. package/device-grid/columns/model.device-grid-column.d.ts.map +1 -1
  290. package/device-grid/columns/name.device-grid-column.d.ts.map +1 -1
  291. package/device-grid/columns/registration-date.device-grid-column.d.ts.map +1 -1
  292. package/device-grid/columns/serial-number.device-grid-column.d.ts.map +1 -1
  293. package/device-grid/columns/status.device-grid-column.d.ts.map +1 -1
  294. package/device-grid/columns/system-id.device-grid-column.d.ts.map +1 -1
  295. package/device-grid/columns/type.device-grid-column.d.ts.map +1 -1
  296. package/device-grid/device-grid.component.d.ts.map +1 -1
  297. package/device-grid/device-grid.service.d.ts.map +1 -1
  298. package/device-list/add-smart-group.component.d.ts.map +1 -1
  299. package/device-list/device-list-navigation.factory.d.ts.map +1 -1
  300. package/device-list/devices.breadcrumb-factory.d.ts.map +1 -1
  301. package/device-map/device-map-navigation.factory.d.ts.map +1 -1
  302. package/device-profile/add-device-profile.component.d.ts.map +1 -1
  303. package/device-profile/device-profile-list.component.d.ts.map +1 -1
  304. package/device-profile/device-profile-navigation.factory.d.ts.map +1 -1
  305. package/device-profile/device-profile.component.d.ts.map +1 -1
  306. package/device-profile/device-profile.service.d.ts.map +1 -1
  307. package/device-profile/device-tab-profile/device-tab-profile.component.d.ts.map +1 -1
  308. package/device-profile/select-configuration-modal.component.d.ts.map +1 -1
  309. package/device-protocols/device-protocols.guard.d.ts.map +1 -1
  310. package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts.map +1 -1
  311. package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts.map +1 -1
  312. package/device-shell/device-shell.module.d.ts.map +1 -1
  313. package/device-shell/shared/device-shell.service.d.ts.map +1 -1
  314. package/device-shell/shell/shell.component.d.ts.map +1 -1
  315. package/diagnostics/diagnostics.module.d.ts.map +1 -1
  316. package/diagnostics/diagnostics.service.d.ts.map +1 -1
  317. package/echart/services/echarts-options.service.d.ts +2 -3
  318. package/echart/services/echarts-options.service.d.ts.map +1 -1
  319. package/ecosystem/application-plugins/application-plugins.component.d.ts.map +1 -1
  320. package/ecosystem/application-plugins/application-plugins.module.d.ts.map +1 -1
  321. package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts.map +1 -1
  322. package/ecosystem/application-plugins/only-latest-filter/only-latest-filter.component.d.ts.map +1 -1
  323. package/ecosystem/application-plugins/orphaned-status-cell-renderer.component.d.ts.map +1 -1
  324. package/ecosystem/application-plugins/plugin-list.service.d.ts.map +1 -1
  325. package/ecosystem/application-plugins/update-plugin-of-app/update-plugin-of-app.component.d.ts.map +1 -1
  326. package/ecosystem/application-properties/application-properties.component.d.ts.map +1 -1
  327. package/ecosystem/application-properties/subscription-modal/subscription-modal.component.d.ts.map +1 -1
  328. package/ecosystem/ecosystem-tabs.factory.d.ts.map +1 -1
  329. package/ecosystem/license-confirm/license-confirm-modal.component.d.ts.map +1 -1
  330. package/ecosystem/license-confirm/license-view.component.d.ts.map +1 -1
  331. package/ecosystem/microservices/add-microservice.component.d.ts.map +1 -1
  332. package/ecosystem/packages/add-package.component.d.ts.map +1 -1
  333. package/ecosystem/packages/deploy-application/deploy-application.component.d.ts.map +1 -1
  334. package/ecosystem/packages/package-list/packages-list.component.d.ts.map +1 -1
  335. package/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.d.ts.map +1 -1
  336. package/ecosystem/packages/package-versions/packages-versions.component.d.ts.map +1 -1
  337. package/ecosystem/plugin-setup-stepper/plugin-setup-stepper.module.d.ts.map +1 -1
  338. package/ecosystem/shared/add-application.component.d.ts.map +1 -1
  339. package/ecosystem/shared/application-card.component.d.ts.map +1 -1
  340. package/ecosystem/shared/archived-filter/archived-filter.component.d.ts.map +1 -1
  341. package/ecosystem/shared/ecosystem.constants.d.ts.map +1 -1
  342. package/ecosystem/shared/ecosystem.service.d.ts.map +1 -1
  343. package/ecosystem/shared/package-availability.service.d.ts.map +1 -1
  344. package/ecosystem/shared/package-version-select/package-version-select.component.d.ts.map +1 -1
  345. package/ecosystem/shared/upload-archive.component.d.ts.map +1 -1
  346. package/editor/editor.component.d.ts +16 -0
  347. package/editor/editor.component.d.ts.map +1 -1
  348. package/exports/index.d.ts +1 -1
  349. package/exports/index.d.ts.map +1 -1
  350. package/exports/list/exports-grid.service.d.ts.map +1 -1
  351. package/exports/list/exports-list/exports-list.component.d.ts.map +1 -1
  352. package/fesm2022/c8y-ngx-components-actility-device-registration.mjs +2 -1
  353. package/fesm2022/c8y-ngx-components-actility-device-registration.mjs.map +1 -1
  354. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +8 -7
  355. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
  356. package/fesm2022/c8y-ngx-components-alarms-cockpit.mjs +2 -1
  357. package/fesm2022/c8y-ngx-components-alarms-cockpit.mjs.map +1 -1
  358. package/fesm2022/c8y-ngx-components-alarms-devicemanagement.mjs +2 -1
  359. package/fesm2022/c8y-ngx-components-alarms-devicemanagement.mjs.map +1 -1
  360. package/fesm2022/c8y-ngx-components-alarms.mjs +40 -2
  361. package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
  362. package/fesm2022/c8y-ngx-components-asset-properties.mjs +608 -97
  363. package/fesm2022/c8y-ngx-components-asset-properties.mjs.map +1 -1
  364. package/fesm2022/c8y-ngx-components-asset-property-grid.component-CRnyUbyz.mjs.map +1 -1
  365. package/fesm2022/c8y-ngx-components-assets-navigator.mjs +70 -23
  366. package/fesm2022/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  367. package/fesm2022/c8y-ngx-components-auth-configuration.mjs +2 -1
  368. package/fesm2022/c8y-ngx-components-auth-configuration.mjs.map +1 -1
  369. package/fesm2022/c8y-ngx-components-binary-file-download.mjs +2 -1
  370. package/fesm2022/c8y-ngx-components-binary-file-download.mjs.map +1 -1
  371. package/fesm2022/c8y-ngx-components-bookmarks.mjs +2 -1
  372. package/fesm2022/c8y-ngx-components-bookmarks.mjs.map +1 -1
  373. package/fesm2022/c8y-ngx-components-branding-dark-theme.mjs +2 -1
  374. package/fesm2022/c8y-ngx-components-branding-dark-theme.mjs.map +1 -1
  375. package/fesm2022/c8y-ngx-components-branding-extra-css-branding-editor.mjs +3 -3
  376. package/fesm2022/c8y-ngx-components-branding-extra-css-branding-editor.mjs.map +1 -1
  377. package/fesm2022/c8y-ngx-components-branding-plain-branding-editor.mjs +2 -1
  378. package/fesm2022/c8y-ngx-components-branding-plain-branding-editor.mjs.map +1 -1
  379. package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs +22 -12
  380. package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs.map +1 -1
  381. package/fesm2022/c8y-ngx-components-child-devices.mjs +2 -1
  382. package/fesm2022/c8y-ngx-components-child-devices.mjs.map +1 -1
  383. package/fesm2022/c8y-ngx-components-cockpit-config.mjs +2 -1
  384. package/fesm2022/c8y-ngx-components-cockpit-config.mjs.map +1 -1
  385. package/fesm2022/c8y-ngx-components-computed-asset-properties-alarm-count-config.component-BOpIFCYh.mjs +68 -0
  386. package/fesm2022/c8y-ngx-components-computed-asset-properties-alarm-count-config.component-BOpIFCYh.mjs.map +1 -0
  387. package/fesm2022/c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-D8otkLI8.mjs +73 -0
  388. package/fesm2022/c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-D8otkLI8.mjs.map +1 -0
  389. package/fesm2022/c8y-ngx-components-computed-asset-properties-event-count-config.component-AVm6qa9k.mjs +44 -0
  390. package/fesm2022/c8y-ngx-components-computed-asset-properties-event-count-config.component-AVm6qa9k.mjs.map +1 -0
  391. package/fesm2022/c8y-ngx-components-computed-asset-properties-last-measurement-config.component-CtUoKGuU.mjs +91 -0
  392. package/fesm2022/c8y-ngx-components-computed-asset-properties-last-measurement-config.component-CtUoKGuU.mjs.map +1 -0
  393. package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs +643 -0
  394. package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs.map +1 -0
  395. package/fesm2022/c8y-ngx-components-connectivity.mjs +2 -1
  396. package/fesm2022/c8y-ngx-components-connectivity.mjs.map +1 -1
  397. package/fesm2022/c8y-ngx-components-context-dashboard-cockpit-home-dashboard.mjs +2 -1
  398. package/fesm2022/c8y-ngx-components-context-dashboard-cockpit-home-dashboard.mjs.map +1 -1
  399. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-DjlpSztw.mjs → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BkcNSexF.mjs} +3 -2
  400. package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BkcNSexF.mjs.map +1 -0
  401. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-B2zLhv0X.mjs → c8y-ngx-components-context-dashboard-dashboard-version-history.component-D9W68e7h.mjs} +3 -2
  402. package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-version-history.component-D9W68e7h.mjs.map +1 -0
  403. package/fesm2022/c8y-ngx-components-context-dashboard.mjs +45 -12
  404. package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  405. package/fesm2022/{c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-CwfVxTSx.mjs → c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-D0lATUjO.mjs} +12 -8
  406. package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-D0lATUjO.mjs.map +1 -0
  407. package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab.mjs +4 -3
  408. package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab.mjs.map +1 -1
  409. package/fesm2022/c8y-ngx-components-dashboard-manager.mjs +2 -1
  410. package/fesm2022/c8y-ngx-components-dashboard-manager.mjs.map +1 -1
  411. package/fesm2022/c8y-ngx-components-data-broker.mjs +2 -1
  412. package/fesm2022/c8y-ngx-components-data-broker.mjs.map +1 -1
  413. package/fesm2022/c8y-ngx-components-data-grid-columns-asset-type.mjs +2 -1
  414. package/fesm2022/c8y-ngx-components-data-grid-columns-asset-type.mjs.map +1 -1
  415. package/fesm2022/c8y-ngx-components-data-grid-columns.mjs +2 -1
  416. package/fesm2022/c8y-ngx-components-data-grid-columns.mjs.map +1 -1
  417. package/fesm2022/c8y-ngx-components-datapoint-explorer-devicemanagement.mjs +38 -9
  418. package/fesm2022/c8y-ngx-components-datapoint-explorer-devicemanagement.mjs.map +1 -1
  419. package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs +58 -53
  420. package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs.map +1 -1
  421. package/fesm2022/c8y-ngx-components-datapoint-explorer.mjs +2 -1
  422. package/fesm2022/c8y-ngx-components-datapoint-explorer.mjs.map +1 -1
  423. package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs +2 -1
  424. package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs.map +1 -1
  425. package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs +2 -1
  426. package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs.map +1 -1
  427. package/fesm2022/c8y-ngx-components-datapoint-library.mjs +2 -1
  428. package/fesm2022/c8y-ngx-components-datapoint-library.mjs.map +1 -1
  429. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +2 -1
  430. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
  431. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +2 -1
  432. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
  433. package/fesm2022/c8y-ngx-components-default-subscriptions.mjs +2 -1
  434. package/fesm2022/c8y-ngx-components-default-subscriptions.mjs.map +1 -1
  435. package/fesm2022/c8y-ngx-components-device-grid.mjs +3 -3
  436. package/fesm2022/c8y-ngx-components-device-grid.mjs.map +1 -1
  437. package/fesm2022/c8y-ngx-components-device-list.mjs +2 -1
  438. package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
  439. package/fesm2022/c8y-ngx-components-device-map.mjs +2 -1
  440. package/fesm2022/c8y-ngx-components-device-map.mjs.map +1 -1
  441. package/fesm2022/c8y-ngx-components-device-profile.mjs +2 -1
  442. package/fesm2022/c8y-ngx-components-device-profile.mjs.map +1 -1
  443. package/fesm2022/c8y-ngx-components-device-protocol-object-mappings.mjs +3 -2
  444. package/fesm2022/c8y-ngx-components-device-protocol-object-mappings.mjs.map +1 -1
  445. package/fesm2022/c8y-ngx-components-device-protocols.mjs +2 -1
  446. package/fesm2022/c8y-ngx-components-device-protocols.mjs.map +1 -1
  447. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs +2 -1
  448. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs.map +1 -1
  449. package/fesm2022/c8y-ngx-components-device-shell.mjs +2 -1
  450. package/fesm2022/c8y-ngx-components-device-shell.mjs.map +1 -1
  451. package/fesm2022/c8y-ngx-components-diagnostics.mjs +2 -1
  452. package/fesm2022/c8y-ngx-components-diagnostics.mjs.map +1 -1
  453. package/fesm2022/c8y-ngx-components-echart.mjs +6 -8
  454. package/fesm2022/c8y-ngx-components-echart.mjs.map +1 -1
  455. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs +2 -1
  456. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs.map +1 -1
  457. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs +2 -1
  458. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs.map +1 -1
  459. package/fesm2022/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs +2 -1
  460. package/fesm2022/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs.map +1 -1
  461. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +2 -1
  462. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs.map +1 -1
  463. package/fesm2022/c8y-ngx-components-ecosystem.mjs +2 -1
  464. package/fesm2022/c8y-ngx-components-ecosystem.mjs.map +1 -1
  465. package/fesm2022/c8y-ngx-components-editor.mjs +39 -1
  466. package/fesm2022/c8y-ngx-components-editor.mjs.map +1 -1
  467. package/fesm2022/c8y-ngx-components-events.mjs +1 -1
  468. package/fesm2022/c8y-ngx-components-events.mjs.map +1 -1
  469. package/fesm2022/c8y-ngx-components-exports-list.mjs +2 -1
  470. package/fesm2022/c8y-ngx-components-exports-list.mjs.map +1 -1
  471. package/fesm2022/c8y-ngx-components-exports.mjs +2 -1
  472. package/fesm2022/c8y-ngx-components-exports.mjs.map +1 -1
  473. package/fesm2022/c8y-ngx-components-file-preview.mjs +2 -1
  474. package/fesm2022/c8y-ngx-components-file-preview.mjs.map +1 -1
  475. package/fesm2022/c8y-ngx-components-files-repository.mjs +2 -1
  476. package/fesm2022/c8y-ngx-components-files-repository.mjs.map +1 -1
  477. package/fesm2022/c8y-ngx-components-icon-selector.mjs +2 -1
  478. package/fesm2022/c8y-ngx-components-icon-selector.mjs.map +1 -1
  479. package/fesm2022/c8y-ngx-components-location.mjs +2 -1
  480. package/fesm2022/c8y-ngx-components-location.mjs.map +1 -1
  481. package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs +2 -1
  482. package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs.map +1 -1
  483. package/fesm2022/c8y-ngx-components-map.mjs +2 -1
  484. package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
  485. package/fesm2022/c8y-ngx-components-messaging-management.mjs +2 -1
  486. package/fesm2022/c8y-ngx-components-messaging-management.mjs.map +1 -1
  487. package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs +2 -1
  488. package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs.map +1 -1
  489. package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs +2 -1
  490. package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs.map +1 -1
  491. package/fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs +2 -1
  492. package/fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs.map +1 -1
  493. package/fesm2022/c8y-ngx-components-operations-bulk-single-operations-list.mjs +2 -1
  494. package/fesm2022/c8y-ngx-components-operations-bulk-single-operations-list.mjs.map +1 -1
  495. package/fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs +2 -1
  496. package/fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs.map +1 -1
  497. package/fesm2022/c8y-ngx-components-operations-grid-columns.mjs +2 -1
  498. package/fesm2022/c8y-ngx-components-operations-grid-columns.mjs.map +1 -1
  499. package/fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs +2 -1
  500. package/fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs.map +1 -1
  501. package/fesm2022/c8y-ngx-components-operations-operations-list.mjs +2 -1
  502. package/fesm2022/c8y-ngx-components-operations-operations-list.mjs.map +1 -1
  503. package/fesm2022/c8y-ngx-components-operations-shared.mjs +2 -1
  504. package/fesm2022/c8y-ngx-components-operations-shared.mjs.map +1 -1
  505. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs +4 -4
  506. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs.map +1 -1
  507. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs +4 -4
  508. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs.map +1 -1
  509. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs +4 -4
  510. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs.map +1 -1
  511. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs +4 -4
  512. package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs.map +1 -1
  513. package/fesm2022/c8y-ngx-components-operations.mjs +2 -1
  514. package/fesm2022/c8y-ngx-components-operations.mjs.map +1 -1
  515. package/fesm2022/c8y-ngx-components-pending-mo-request.mjs +2 -1
  516. package/fesm2022/c8y-ngx-components-pending-mo-request.mjs.map +1 -1
  517. package/fesm2022/c8y-ngx-components-platform-configuration.mjs +2 -1
  518. package/fesm2022/c8y-ngx-components-platform-configuration.mjs.map +1 -1
  519. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +2 -1
  520. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs.map +1 -1
  521. package/fesm2022/c8y-ngx-components-protocol-opcua-mappings.mjs +1 -1
  522. package/fesm2022/c8y-ngx-components-protocol-opcua-mappings.mjs.map +1 -1
  523. package/fesm2022/c8y-ngx-components-protocol-opcua.mjs +2 -1
  524. package/fesm2022/c8y-ngx-components-protocol-opcua.mjs.map +1 -1
  525. package/fesm2022/c8y-ngx-components-register-device.mjs +2 -1
  526. package/fesm2022/c8y-ngx-components-register-device.mjs.map +1 -1
  527. package/fesm2022/c8y-ngx-components-remote-access-configurations.mjs +3 -3
  528. package/fesm2022/c8y-ngx-components-remote-access-configurations.mjs.map +1 -1
  529. package/fesm2022/c8y-ngx-components-remote-access-passthrough.mjs +2 -1
  530. package/fesm2022/c8y-ngx-components-remote-access-passthrough.mjs.map +1 -1
  531. package/fesm2022/c8y-ngx-components-remote-access-shared.mjs +2 -1
  532. package/fesm2022/c8y-ngx-components-remote-access-shared.mjs.map +1 -1
  533. package/fesm2022/c8y-ngx-components-remote-access-ssh.mjs +2 -1
  534. package/fesm2022/c8y-ngx-components-remote-access-ssh.mjs.map +1 -1
  535. package/fesm2022/c8y-ngx-components-remote-access-telnet.mjs +2 -1
  536. package/fesm2022/c8y-ngx-components-remote-access-telnet.mjs.map +1 -1
  537. package/fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs +3 -3
  538. package/fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs.map +1 -1
  539. package/fesm2022/c8y-ngx-components-remote-access-vnc.mjs +2 -1
  540. package/fesm2022/c8y-ngx-components-remote-access-vnc.mjs.map +1 -1
  541. package/fesm2022/c8y-ngx-components-replace-device-replace-device-wizard.mjs +2 -1
  542. package/fesm2022/c8y-ngx-components-replace-device-replace-device-wizard.mjs.map +1 -1
  543. package/fesm2022/c8y-ngx-components-replace-device.mjs +2 -1
  544. package/fesm2022/c8y-ngx-components-replace-device.mjs.map +1 -1
  545. package/fesm2022/c8y-ngx-components-report-dashboard.mjs +2 -1
  546. package/fesm2022/c8y-ngx-components-report-dashboard.mjs.map +1 -1
  547. package/fesm2022/c8y-ngx-components-reports.mjs +2 -1
  548. package/fesm2022/c8y-ngx-components-reports.mjs.map +1 -1
  549. package/fesm2022/c8y-ngx-components-repository-configuration.mjs +2 -1
  550. package/fesm2022/c8y-ngx-components-repository-configuration.mjs.map +1 -1
  551. package/fesm2022/c8y-ngx-components-repository-firmware.mjs +2 -1
  552. package/fesm2022/c8y-ngx-components-repository-firmware.mjs.map +1 -1
  553. package/fesm2022/c8y-ngx-components-repository-shared.mjs +3 -2
  554. package/fesm2022/c8y-ngx-components-repository-shared.mjs.map +1 -1
  555. package/fesm2022/c8y-ngx-components-repository-software.mjs +2 -1
  556. package/fesm2022/c8y-ngx-components-repository-software.mjs.map +1 -1
  557. package/fesm2022/c8y-ngx-components-search.mjs +2 -1
  558. package/fesm2022/c8y-ngx-components-search.mjs.map +1 -1
  559. package/fesm2022/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs +2 -1
  560. package/fesm2022/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs.map +1 -1
  561. package/fesm2022/c8y-ngx-components-sensor-phone.mjs +3 -2
  562. package/fesm2022/c8y-ngx-components-sensor-phone.mjs.map +1 -1
  563. package/fesm2022/c8y-ngx-components-services-service-command-tab.mjs +2 -1
  564. package/fesm2022/c8y-ngx-components-services-service-command-tab.mjs.map +1 -1
  565. package/fesm2022/c8y-ngx-components-services-shared.mjs +1 -1
  566. package/fesm2022/c8y-ngx-components-services-shared.mjs.map +1 -1
  567. package/fesm2022/c8y-ngx-components-services.mjs +2 -1
  568. package/fesm2022/c8y-ngx-components-services.mjs.map +1 -1
  569. package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs +2 -1
  570. package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs.map +1 -1
  571. package/fesm2022/c8y-ngx-components-sms-gateway.mjs +3 -2
  572. package/fesm2022/c8y-ngx-components-sms-gateway.mjs.map +1 -1
  573. package/fesm2022/c8y-ngx-components-sub-assets.mjs +13 -9
  574. package/fesm2022/c8y-ngx-components-sub-assets.mjs.map +1 -1
  575. package/fesm2022/c8y-ngx-components-tenants.mjs +37 -37
  576. package/fesm2022/c8y-ngx-components-tenants.mjs.map +1 -1
  577. package/fesm2022/c8y-ngx-components-tracking.mjs +2 -1
  578. package/fesm2022/c8y-ngx-components-tracking.mjs.map +1 -1
  579. package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs +5 -5
  580. package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs.map +1 -1
  581. package/fesm2022/c8y-ngx-components-trusted-certificates.mjs +2 -1
  582. package/fesm2022/c8y-ngx-components-trusted-certificates.mjs.map +1 -1
  583. package/fesm2022/c8y-ngx-components-upgrade.mjs +10 -3
  584. package/fesm2022/c8y-ngx-components-upgrade.mjs.map +1 -1
  585. package/fesm2022/c8y-ngx-components-user-roles.mjs +2 -1
  586. package/fesm2022/c8y-ngx-components-user-roles.mjs.map +1 -1
  587. package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs +2 -1
  588. package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs.map +1 -1
  589. package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs +2 -1
  590. package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs.map +1 -1
  591. package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs +2 -1
  592. package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs.map +1 -1
  593. package/fesm2022/c8y-ngx-components-widgets-definitions-applications.mjs +2 -1
  594. package/fesm2022/c8y-ngx-components-widgets-definitions-applications.mjs.map +1 -1
  595. package/fesm2022/c8y-ngx-components-widgets-definitions-asset-notes.mjs +2 -1
  596. package/fesm2022/c8y-ngx-components-widgets-definitions-asset-notes.mjs.map +1 -1
  597. package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs +2 -1
  598. package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs.map +1 -1
  599. package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs +2 -1
  600. package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs.map +1 -1
  601. package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs +2 -1
  602. package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs.map +1 -1
  603. package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs +2 -1
  604. package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs.map +1 -1
  605. package/fesm2022/c8y-ngx-components-widgets-definitions-device-control-message.mjs +2 -1
  606. package/fesm2022/c8y-ngx-components-widgets-definitions-device-control-message.mjs.map +1 -1
  607. package/fesm2022/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs +1 -1
  608. package/fesm2022/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs.map +1 -1
  609. package/fesm2022/c8y-ngx-components-widgets-definitions-help-and-service.mjs +2 -1
  610. package/fesm2022/c8y-ngx-components-widgets-definitions-help-and-service.mjs.map +1 -1
  611. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs +3 -3
  612. package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs.map +1 -1
  613. package/fesm2022/c8y-ngx-components-widgets-definitions-image.mjs +3 -6
  614. package/fesm2022/c8y-ngx-components-widgets-definitions-image.mjs.map +1 -1
  615. package/fesm2022/c8y-ngx-components-widgets-definitions-info-gauge.mjs +2 -1
  616. package/fesm2022/c8y-ngx-components-widgets-definitions-info-gauge.mjs.map +1 -1
  617. package/fesm2022/c8y-ngx-components-widgets-definitions-kpi.mjs +2 -1
  618. package/fesm2022/c8y-ngx-components-widgets-definitions-kpi.mjs.map +1 -1
  619. package/fesm2022/c8y-ngx-components-widgets-definitions-linear-gauge.mjs +2 -1
  620. package/fesm2022/c8y-ngx-components-widgets-definitions-linear-gauge.mjs.map +1 -1
  621. package/fesm2022/c8y-ngx-components-widgets-definitions-map.mjs +2 -1
  622. package/fesm2022/c8y-ngx-components-widgets-definitions-map.mjs.map +1 -1
  623. package/fesm2022/c8y-ngx-components-widgets-definitions-markdown.mjs +2 -2
  624. package/fesm2022/c8y-ngx-components-widgets-definitions-markdown.mjs.map +1 -1
  625. package/fesm2022/c8y-ngx-components-widgets-definitions-quick-links.mjs +2 -1
  626. package/fesm2022/c8y-ngx-components-widgets-definitions-quick-links.mjs.map +1 -1
  627. package/fesm2022/c8y-ngx-components-widgets-definitions-radial-gauge.mjs +2 -1
  628. package/fesm2022/c8y-ngx-components-widgets-definitions-radial-gauge.mjs.map +1 -1
  629. package/fesm2022/c8y-ngx-components-widgets-definitions-silo.mjs +2 -1
  630. package/fesm2022/c8y-ngx-components-widgets-definitions-silo.mjs.map +1 -1
  631. package/fesm2022/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs +2 -1
  632. package/fesm2022/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs.map +1 -1
  633. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +2 -1
  634. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs.map +1 -1
  635. package/fesm2022/c8y-ngx-components-widgets-implementations-asset-notes.mjs +2 -1
  636. package/fesm2022/c8y-ngx-components-widgets-implementations-asset-notes.mjs.map +1 -1
  637. package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs +9 -6
  638. package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs.map +1 -1
  639. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs +2 -1
  640. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs.map +1 -1
  641. package/fesm2022/c8y-ngx-components-widgets-implementations-device-control-message.mjs +2 -1
  642. package/fesm2022/c8y-ngx-components-widgets-implementations-device-control-message.mjs.map +1 -1
  643. package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs +2 -1
  644. package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs.map +1 -1
  645. package/fesm2022/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs +2 -1
  646. package/fesm2022/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs.map +1 -1
  647. package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs +13 -8
  648. package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs.map +1 -1
  649. package/fesm2022/c8y-ngx-components-widgets-implementations-image.mjs +2 -1
  650. package/fesm2022/c8y-ngx-components-widgets-implementations-image.mjs.map +1 -1
  651. package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs +2 -1
  652. package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs.map +1 -1
  653. package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs +2 -1
  654. package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs.map +1 -1
  655. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +2 -1
  656. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
  657. package/fesm2022/c8y-ngx-components-widgets-implementations-markdown.mjs +2 -1
  658. package/fesm2022/c8y-ngx-components-widgets-implementations-markdown.mjs.map +1 -1
  659. package/fesm2022/c8y-ngx-components-widgets-implementations-quick-links.mjs +2 -1
  660. package/fesm2022/c8y-ngx-components-widgets-implementations-quick-links.mjs.map +1 -1
  661. package/fesm2022/c8y-ngx-components-widgets-import-export-config.mjs +3 -10
  662. package/fesm2022/c8y-ngx-components-widgets-import-export-config.mjs.map +1 -1
  663. package/fesm2022/c8y-ngx-components.mjs +789 -531
  664. package/fesm2022/c8y-ngx-components.mjs.map +1 -1
  665. package/file-preview/file-preview.component.d.ts.map +1 -1
  666. package/files-repository/files-repository-navigation.factory.d.ts.map +1 -1
  667. package/files-repository/files-repository-upload.component.d.ts.map +1 -1
  668. package/files-repository/files-repository.component.d.ts.map +1 -1
  669. package/files-repository/files-repository.service.d.ts +1 -2
  670. package/files-repository/files-repository.service.d.ts.map +1 -1
  671. package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts.map +1 -1
  672. package/icon-selector/icon-selector.component.d.ts.map +1 -1
  673. package/locales/de.po +105 -12
  674. package/locales/es.po +105 -12
  675. package/locales/fr.po +105 -12
  676. package/locales/ja_JP.po +99 -12
  677. package/locales/ko.po +104 -12
  678. package/locales/locales.pot +97 -12
  679. package/locales/nl.po +105 -12
  680. package/locales/pl.po +105 -12
  681. package/locales/pt_BR.po +105 -12
  682. package/locales/zh_CN.po +104 -12
  683. package/locales/zh_TW.po +104 -12
  684. package/location/location-tab.factory.d.ts.map +1 -1
  685. package/location/location.component.d.ts.map +1 -1
  686. package/loriot-device-registration/loriot-device-registration.component.d.ts.map +1 -1
  687. package/loriot-device-registration/loriot-provider.service.d.ts.map +1 -1
  688. package/map/map.component.d.ts.map +1 -1
  689. package/messaging-management/messaging/namespace-list/namespace-item/namespace-item-card/namespace-item-card.component.d.ts.map +1 -1
  690. package/messaging-management/messaging/shared/usage/usage.component.d.ts.map +1 -1
  691. package/messaging-management/messaging/topic/topic-list-view.component.d.ts.map +1 -1
  692. package/messaging-management/messaging/topic/topic-subscribers-view/topic-subscribers-data-grid.service.d.ts.map +1 -1
  693. package/messaging-management/messaging/topic/topic-subscribers-view/topic-subscribers-view.component.d.ts.map +1 -1
  694. package/messaging-management/messaging/topic/topics-data-grid.service.d.ts.map +1 -1
  695. package/messaging-management/navigator/messaging-navigator-factory.d.ts.map +1 -1
  696. package/messaging-management/navigator/topic-details-tab.factory.d.ts.map +1 -1
  697. package/operations/bulk-operation-list-item/bulk-operation-list-item.component.d.ts.map +1 -1
  698. package/operations/bulk-operation-list-item/modals/bulk-operations-reschedule-modal.component.d.ts.map +1 -1
  699. package/operations/bulk-operation-scheduler/operation-scheduler.component.d.ts.map +1 -1
  700. package/operations/bulk-operation-stepper/bulk-operation-stepper.component.d.ts.map +1 -1
  701. package/operations/bulk-single-operations-list/single-operation-item.component.d.ts.map +1 -1
  702. package/operations/bulk-single-operations-list/single-operations-list.component.d.ts.map +1 -1
  703. package/operations/factories/bulk-operations-tab.factory.d.ts.map +1 -1
  704. package/operations/grid-columns/creation-time.grid-column.d.ts.map +1 -1
  705. package/operations/grid-columns/device.grid-column.d.ts.map +1 -1
  706. package/operations/grid-columns/failure-reason.grid-column.d.ts.map +1 -1
  707. package/operations/grid-columns/status.grid-column.d.ts.map +1 -1
  708. package/operations/operations-list/device-control.feature.d.ts.map +1 -1
  709. package/operations/operations-list/operations-list-item.component.d.ts.map +1 -1
  710. package/operations/operations-list/operations-list.component.d.ts.map +1 -1
  711. package/operations/operations-list/single-operations-tab.factory.d.ts.map +1 -1
  712. package/operations/operations-list-item-details/operation-details-tabs.component.d.ts.map +1 -1
  713. package/operations/shared/nav.factory.d.ts.map +1 -1
  714. package/operations/shared/operations.service.d.ts.map +1 -1
  715. package/operations/stepper-bulk-type-configuration/stepper-bulk-type-configuration.component.d.ts.map +1 -1
  716. package/operations/stepper-bulk-type-device-profile/stepper-bulk-type-device-profile.component.d.ts.map +1 -1
  717. package/operations/stepper-bulk-type-firmware/stepper-bulk-type-firmware.component.d.ts.map +1 -1
  718. package/operations/stepper-bulk-type-software/select-software-step.component.d.ts.map +1 -1
  719. package/operations/stepper-bulk-type-software/stepper-bulk-type-software.component.d.ts.map +1 -1
  720. package/package.json +1 -1
  721. package/pending-mo-request/pending-mo-request-interceptor.d.ts.map +1 -1
  722. package/pending-mo-request/pending-mo-request.service.d.ts.map +1 -1
  723. package/platform-configuration/platform-configuration-form-provider.service.d.ts.map +1 -1
  724. package/protocol-lpwan/lpwan-protocol.module.d.ts.map +1 -1
  725. package/protocol-lpwan/lpwan-set-connections.component.d.ts.map +1 -1
  726. package/protocol-lpwan/lpwan-set-device-protocol.component.d.ts.map +1 -1
  727. package/protocol-lpwan/multiple-lns-connectors/actility-multiple-lns-connector.component.d.ts.map +1 -1
  728. package/protocol-lpwan/multiple-lns-connectors/connection-info-with-download-csv.component.d.ts.map +1 -1
  729. package/protocol-lpwan/multiple-lns-connectors/loriot/loriot-multiple-lns-connector.component.d.ts.map +1 -1
  730. package/protocol-lpwan/multiple-lns-connectors/no-connections-found.component.d.ts.map +1 -1
  731. package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts.map +1 -1
  732. package/protocol-opcua/opcua-address-space.component.d.ts.map +1 -1
  733. package/protocol-opcua/opcua-device-protocol-detail.component.d.ts.map +1 -1
  734. package/protocol-opcua/opcua-server-config.component.d.ts.map +1 -1
  735. package/protocol-opcua/opcua-servers.component.d.ts.map +1 -1
  736. package/register-device/bulk/bulk-device-registration-modal.component.d.ts.map +1 -1
  737. package/register-device/device-registration-view.component.d.ts.map +1 -1
  738. package/register-device/extensible/base-extensible-device-registration.service.d.ts.map +1 -1
  739. package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts.map +1 -1
  740. package/register-device/extensible/bulk/extensible-bulk-device-registration.service.d.ts.map +1 -1
  741. package/register-device/extensible/single/extensible-device-registration-modal.component.d.ts.map +1 -1
  742. package/register-device/extensible/single/extensible-device-registration-stepper.component.d.ts.map +1 -1
  743. package/register-device/extensible/single/extensible-device-registration.service.d.ts.map +1 -1
  744. package/register-device/general/general-device-registration.component.d.ts.map +1 -1
  745. package/register-device/register-device-navigation.factory.d.ts.map +1 -1
  746. package/register-device/register-device.service.d.ts.map +1 -1
  747. package/remote-access/configurations/remote-access-configuration-list/remote-access-configuration-list.component.d.ts.map +1 -1
  748. package/remote-access/configurations/remote-access-pick-protocol-modal/remote-access-pick-protocol-modal.component.d.ts.map +1 -1
  749. package/remote-access/passthrough/index.d.ts +1 -1
  750. package/remote-access/passthrough/index.d.ts.map +1 -1
  751. package/remote-access/shared/remote-access-basic-endpoint-modal/remote-access-basic-endpoint-modal.component.d.ts.map +1 -1
  752. package/remote-access/ssh/index.d.ts.map +1 -1
  753. package/remote-access/telnet/index.d.ts.map +1 -1
  754. package/remote-access/vnc/index.d.ts.map +1 -1
  755. package/replace-device/replace-device-grid-action.factory.d.ts.map +1 -1
  756. package/replace-device/replace-device-wizard/replace-device-wizard.component.d.ts.map +1 -1
  757. package/replace-device/replace-device-wizard/replace-device-wizard.service.d.ts.map +1 -1
  758. package/replace-device/replace-device.service.d.ts.map +1 -1
  759. package/report-dashboard/report-dashboard-list.component.d.ts.map +1 -1
  760. package/report-dashboard/report-dashboard-navigation.factory.d.ts.map +1 -1
  761. package/reports/export-schedules.component.d.ts.map +1 -1
  762. package/repository/configuration/device-tab/configuration-repository-device-tab.module.d.ts.map +1 -1
  763. package/repository/configuration/device-tab/save-to-repository.component.d.ts.map +1 -1
  764. package/repository/configuration/device-tab/text-based-configuration.component.d.ts.map +1 -1
  765. package/repository/configuration/list/configuration-detail.component.d.ts.map +1 -1
  766. package/repository/configuration/list/configuration-list.component.d.ts.map +1 -1
  767. package/repository/configuration/list/configuration-repository-navigation-factory.d.ts.map +1 -1
  768. package/repository/firmware/device-tab/firmware-device-tab.component.d.ts.map +1 -1
  769. package/repository/firmware/device-tab/firmware-repository-device-tab.module.d.ts.map +1 -1
  770. package/repository/firmware/list/add-firmware-modal.component.d.ts.map +1 -1
  771. package/repository/firmware/list/add-firmware-patch-modal.component.d.ts.map +1 -1
  772. package/repository/firmware/list/firmware-details.component.d.ts.map +1 -1
  773. package/repository/firmware/list/firmware-list.component.d.ts.map +1 -1
  774. package/repository/firmware/list/firmware-repository-navigation-factory.d.ts.map +1 -1
  775. package/repository/shared/columns/description.grid-column.d.ts.map +1 -1
  776. package/repository/shared/columns/device-type.grid-column.d.ts.map +1 -1
  777. package/repository/shared/columns/file.grid-column.d.ts.map +1 -1
  778. package/repository/shared/columns/name.grid-column.d.ts.map +1 -1
  779. package/repository/shared/columns/type.filtering-form-renderer.component.d.ts.map +1 -1
  780. package/repository/shared/columns/type.grid-column.d.ts.map +1 -1
  781. package/repository/shared/columns/versions.grid-column.d.ts.map +1 -1
  782. package/repository/shared/repository.service.d.ts.map +1 -1
  783. package/repository/shared/select-modal/repository-select-modal.component.d.ts +1 -1
  784. package/repository/shared/select-modal/repository-select-modal.component.d.ts.map +1 -1
  785. package/repository/shared/software-type/software-type.component.d.ts.map +1 -1
  786. package/repository/software/device-tab/installed-software.component.d.ts.map +1 -1
  787. package/repository/software/device-tab/software-repository-device-tab.module.d.ts.map +1 -1
  788. package/repository/software/list/add-software-modal.component.d.ts.map +1 -1
  789. package/repository/software/list/software-details.component.d.ts.map +1 -1
  790. package/repository/software/list/software-list.component.d.ts.map +1 -1
  791. package/repository/software/list/software-repository-navigation-factory.d.ts.map +1 -1
  792. package/search/columns/asset-type-search-grid-column.d.ts.map +1 -1
  793. package/search/search-grid.component.d.ts.map +1 -1
  794. package/search/search-results.component.d.ts.map +1 -1
  795. package/sensor-phone/connect-smartphone.factory.d.ts.map +1 -1
  796. package/sensor-phone/sensor-phone-modal/sensor-phone-modal.component.d.ts.map +1 -1
  797. package/sensor-phone/sensor-phone-modal/sensor-phone.service.d.ts.map +1 -1
  798. package/services/service-command-tab/service-command.feature.d.ts.map +1 -1
  799. package/services/services-device-tab/columns/last-updated-date.device-grid-column.d.ts.map +1 -1
  800. package/services/services-device-tab/columns/name.grid-column.d.ts.map +1 -1
  801. package/services/services-device-tab/columns/service-type.grid-column.d.ts.map +1 -1
  802. package/services/services-device-tab/columns/status.grid-column.d.ts.map +1 -1
  803. package/services/services-device-tab/services-device-tab.component.d.ts.map +1 -1
  804. package/services/services-device-tab/services-device-tab.module.d.ts.map +1 -1
  805. package/services/services-device-tab/services.breadcrumb-factory.d.ts.map +1 -1
  806. package/services/shared/service-command.service.d.ts.map +1 -1
  807. package/services/status-options/status-options.model.d.ts.map +1 -1
  808. package/sigfox-device-registration/sigfox-device-registration.component.d.ts.map +1 -1
  809. package/sigfox-device-registration/sigfox-provider.service.d.ts.map +1 -1
  810. package/sms-gateway/sms-gateway.module.d.ts.map +1 -1
  811. package/sub-assets/add-group/add-group.component.d.ts.map +1 -1
  812. package/sub-assets/asset-properties-item.component.d.ts.map +1 -1
  813. package/sub-assets/asset-properties.component.d.ts.map +1 -1
  814. package/sub-assets/assign-devices/assign-child-devices.component.d.ts.map +1 -1
  815. package/sub-assets/assign-devices/assign-devices.component.d.ts.map +1 -1
  816. package/sub-assets/delete-assets-modal/delete-assets-modal.component.d.ts.map +1 -1
  817. package/sub-assets/group-info.component.d.ts.map +1 -1
  818. package/sub-assets/sub-assets-grid.component.d.ts.map +1 -1
  819. package/sub-assets/sub-assets.component.d.ts.map +1 -1
  820. package/sub-assets/sub-assets.module.d.ts.map +1 -1
  821. package/sub-assets/sub-assets.service.d.ts.map +1 -1
  822. package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts.map +1 -1
  823. package/tenants/custom-properties/custom-properties.component.d.ts.map +1 -1
  824. package/tenants/tenant-form/tenant-form.component.d.ts.map +1 -1
  825. package/tenants/tenant-limits/tenant-limits.component.d.ts.map +1 -1
  826. package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts.map +1 -1
  827. package/tenants/tenant-list/tenant-list.component.d.ts.map +1 -1
  828. package/tenants/tenants-navigation.factory.d.ts.map +1 -1
  829. package/tenants/tenants.module.d.ts.map +1 -1
  830. package/tracking/tracking.feature.d.ts.map +1 -1
  831. package/translation-editor/lazy/translation-editor/translation-editor.component.d.ts.map +1 -1
  832. package/trusted-certificates/crl/crl-check-settings.component.d.ts.map +1 -1
  833. package/trusted-certificates/crl/crl-settings.component.d.ts.map +1 -1
  834. package/trusted-certificates/factories/tabs.factory.d.ts.map +1 -1
  835. package/trusted-certificates/factories/trusted-certificates-navigation.factory.d.ts.map +1 -1
  836. package/trusted-certificates/list/add-trusted-certificate.component.d.ts.map +1 -1
  837. package/trusted-certificates/list/trusted-certificate-list.component.d.ts.map +1 -1
  838. package/upgrade/auth-bridge.service.d.ts.map +1 -1
  839. package/upgrade/bridge.service.d.ts.map +1 -1
  840. package/upgrade/ng1/downgraded.services.d.ts +1 -0
  841. package/upgrade/ng1/downgraded.services.d.ts.map +1 -1
  842. package/upgrade/ng1/index.d.ts.map +1 -1
  843. package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts.map +1 -1
  844. package/widgets/cockpit/index.d.ts +4 -4
  845. package/widgets/definitions/alarms/alarm-list/index.d.ts +1 -1
  846. package/widgets/definitions/alarms/alarm-list/index.d.ts.map +1 -1
  847. package/widgets/definitions/alarms/all-critical-alarms/index.d.ts +1 -1
  848. package/widgets/definitions/alarms/all-critical-alarms/index.d.ts.map +1 -1
  849. package/widgets/definitions/alarms/recent-alarms/index.d.ts +1 -1
  850. package/widgets/definitions/alarms/recent-alarms/index.d.ts.map +1 -1
  851. package/widgets/definitions/applications/index.d.ts +1 -1
  852. package/widgets/definitions/applications/index.d.ts.map +1 -1
  853. package/widgets/definitions/asset-notes/index.d.ts +1 -1
  854. package/widgets/definitions/asset-notes/index.d.ts.map +1 -1
  855. package/widgets/definitions/cockpit-legacy-welcome/index.d.ts +1 -1
  856. package/widgets/definitions/cockpit-legacy-welcome/index.d.ts.map +1 -1
  857. package/widgets/definitions/cockpit-welcome/index.d.ts +1 -1
  858. package/widgets/definitions/cockpit-welcome/index.d.ts.map +1 -1
  859. package/widgets/definitions/datapoints-graph/datapoint-graph-widget-factory.d.ts.map +1 -1
  860. package/widgets/definitions/datapoints-graph/index.d.ts +1 -1
  861. package/widgets/definitions/datapoints-table/index.d.ts +1 -1
  862. package/widgets/definitions/datapoints-table/index.d.ts.map +1 -1
  863. package/widgets/definitions/device-control-message/index.d.ts +1 -1
  864. package/widgets/definitions/device-control-message/index.d.ts.map +1 -1
  865. package/widgets/definitions/help-and-service/index.d.ts +1 -1
  866. package/widgets/definitions/help-and-service/index.d.ts.map +1 -1
  867. package/widgets/definitions/html-widget/html-widget.factory.d.ts.map +1 -1
  868. package/widgets/definitions/html-widget/index.d.ts +1 -1
  869. package/widgets/definitions/image/index.d.ts +5 -3
  870. package/widgets/definitions/image/index.d.ts.map +1 -1
  871. package/widgets/definitions/info-gauge/index.d.ts +2 -3
  872. package/widgets/definitions/info-gauge/index.d.ts.map +1 -1
  873. package/widgets/definitions/kpi/index.d.ts +1 -1
  874. package/widgets/definitions/kpi/index.d.ts.map +1 -1
  875. package/widgets/definitions/linear-gauge/index.d.ts +1 -1
  876. package/widgets/definitions/linear-gauge/index.d.ts.map +1 -1
  877. package/widgets/definitions/map/index.d.ts +1 -1
  878. package/widgets/definitions/map/index.d.ts.map +1 -1
  879. package/widgets/definitions/markdown/index.d.ts +5 -3
  880. package/widgets/definitions/markdown/index.d.ts.map +1 -1
  881. package/widgets/definitions/quick-links/index.d.ts +1 -1
  882. package/widgets/definitions/quick-links/index.d.ts.map +1 -1
  883. package/widgets/definitions/radial-gauge/index.d.ts +1 -1
  884. package/widgets/definitions/radial-gauge/index.d.ts.map +1 -1
  885. package/widgets/definitions/silo/index.d.ts +1 -1
  886. package/widgets/definitions/silo/index.d.ts.map +1 -1
  887. package/widgets/definitions/three-d-rotation/index.d.ts +1 -1
  888. package/widgets/definitions/three-d-rotation/index.d.ts.map +1 -1
  889. package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts.map +1 -1
  890. package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts.map +1 -1
  891. package/widgets/implementations/alarms/alarm-list-widget.model.d.ts.map +1 -1
  892. package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts.map +1 -1
  893. package/widgets/implementations/cockpit-welcome/welcome.component.d.ts +3 -2
  894. package/widgets/implementations/cockpit-welcome/welcome.component.d.ts.map +1 -1
  895. package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-reload/datapoints-reload.component.d.ts.map +1 -1
  896. package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/datapoints-table.component.d.ts.map +1 -1
  897. package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.component.d.ts.map +1 -1
  898. package/widgets/implementations/datapoints-table/datapoints-table-widget.model.d.ts.map +1 -1
  899. package/widgets/implementations/datapoints-table/date-range-picker.component.d.ts.map +1 -1
  900. package/widgets/implementations/device-control-message/device-control-message-widget-view/device-control-message-widget-view.component.d.ts.map +1 -1
  901. package/widgets/implementations/device-management-welcome/welcome.component.d.ts.map +1 -1
  902. package/widgets/implementations/help-and-service-widget/help-and-service-view/help-and-service-view.component.d.ts.map +1 -1
  903. package/widgets/implementations/html-widget/advanced-settings/advanced-settings.component.d.ts.map +1 -1
  904. package/widgets/implementations/html-widget/html-widget-config.service.d.ts.map +1 -1
  905. package/widgets/implementations/html-widget/widget-code-editor-section/widget-code-editor.component.d.ts +5 -3
  906. package/widgets/implementations/html-widget/widget-code-editor-section/widget-code-editor.component.d.ts.map +1 -1
  907. package/widgets/implementations/image/image-widget-config/image-widget-config.component.d.ts.map +1 -1
  908. package/widgets/implementations/image/image-widget.service.d.ts +1 -2
  909. package/widgets/implementations/image/image-widget.service.d.ts.map +1 -1
  910. package/widgets/implementations/info-gauge/info-gauge-widget-config/info-gauge-widget-config.component.d.ts.map +1 -1
  911. package/widgets/implementations/linear-gauge/linear-gauge-widget-view/linear-gauge-widget-view.component.d.ts.map +1 -1
  912. package/widgets/implementations/map/map-widget-config.component.d.ts.map +1 -1
  913. package/widgets/implementations/map/map-widget.component.d.ts.map +1 -1
  914. package/widgets/implementations/markdown/markdown-widget-config/markdown-widget-config.component.d.ts.map +1 -1
  915. package/widgets/implementations/markdown/markdown-widget.service.d.ts.map +1 -1
  916. package/widgets/implementations/quick-links/quick-links-widget-config/quick-links-widget-config.component.d.ts.map +1 -1
  917. package/widgets/import-export-config/config-target-export.d.ts +3 -1
  918. package/widgets/import-export-config/config-target-export.d.ts.map +1 -1
  919. package/widgets/import-export-config/config-target-import.d.ts +3 -1
  920. package/widgets/import-export-config/config-target-import.d.ts.map +1 -1
  921. package/widgets/import-export-config/device-import-export.d.ts +3 -1
  922. package/widgets/import-export-config/device-import-export.d.ts.map +1 -1
  923. package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-general-settings.component-DjlpSztw.mjs.map +0 -1
  924. package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-version-history.component-B2zLhv0X.mjs.map +0 -1
  925. package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-CwfVxTSx.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c8y-ngx-components-computed-asset-properties.mjs","sources":["../../computed-asset-properties/strategies/last-measurement-strategy.ts","../../computed-asset-properties/common/realtime-value-handler.ts","../../computed-asset-properties/last-measurement/last-measurement-value.ts","../../computed-asset-properties/last-measurement/last-measurement-computed-property.ts","../../computed-asset-properties/strategies/child-count-strategy.ts","../../computed-asset-properties/child-count/child-count-value.ts","../../computed-asset-properties/child-count/child-assets-count-computed-property.ts","../../computed-asset-properties/strategies/count-strategy-base.ts","../../computed-asset-properties/strategies/alarm-count-strategy.ts","../../computed-asset-properties/alarm-count/alarm-count-value.ts","../../computed-asset-properties/alarm-count/alarm-count-3-months-computed-property.ts","../../computed-asset-properties/alarm-count/alarm-count-today-computed-property.ts","../../computed-asset-properties/strategies/event-count-strategy.ts","../../computed-asset-properties/event-count/event-count-value.ts","../../computed-asset-properties/event-count/event-count-today.ts","../../computed-asset-properties/event-count/event-count-3-months.ts","../../computed-asset-properties/configuration-snapshot/configuration-snapshot-computed-property.ts","../../computed-asset-properties/child-count/child-devices-count-computed-property.ts","../../computed-asset-properties/strategies/last-device-message-strategy.ts","../../computed-asset-properties/last-device-message/last-device-message-value.ts","../../computed-asset-properties/last-device-message/last-device-message-computed-property.ts","../../computed-asset-properties/index.ts","../../computed-asset-properties/c8y-ngx-components-computed-asset-properties.ts"],"sourcesContent":["// strategies/last-measurement-strategy.ts\nimport { Injector } from '@angular/core';\nimport { IMeasurement, MeasurementService } from '@c8y/client';\nimport { DatePipe, MeasurementRealtimeService } from '@c8y/ngx-components';\nimport { filter, from, map, Observable, startWith } from 'rxjs';\nimport { KPIDetails } from '@c8y/ngx-components/datapoint-selector';\nimport { LastMeasurementConfig } from '../last-measurement/last-measurement.model';\nimport { ValueStrategy } from '../common/realtime-value-base';\n\nexport class LastMeasurementStrategy implements ValueStrategy<string> {\n private measurementService: MeasurementService;\n private measurementRealtime: MeasurementRealtimeService;\n private datapoint: KPIDetails;\n private datePipe: DatePipe;\n\n constructor(\n private config: LastMeasurementConfig,\n injector: Injector\n ) {\n this.measurementService = injector.get(MeasurementService);\n this.measurementRealtime = injector.get(MeasurementRealtimeService);\n this.datePipe = injector.get(DatePipe);\n this.datapoint = config.dp.filter(dp => dp.__active)[0];\n }\n\n fetchCurrentValue(): Observable<string> {\n const measurementFilter: any = {\n valueFragmentSeries: this.datapoint.series,\n valueFragmentType: this.datapoint.fragment,\n pageSize: 1,\n revert: true,\n dateFrom: '1970-01-01',\n source: this.datapoint.__target.id\n };\n\n return from(this.measurementService.list(measurementFilter)).pipe(\n map(({ data }) => data[0]),\n filter(measurement => !!measurement),\n map(measurement => this.formatMeasurement(measurement))\n );\n }\n\n createRealtimeStream(initialValue: string): Observable<string> {\n return this.measurementRealtime\n .onCreateOfSpecificMeasurement$(\n this.datapoint.fragment,\n this.datapoint.series,\n this.datapoint.__target\n )\n .pipe(\n map(measurement => this.formatMeasurement(measurement)),\n startWith(initialValue)\n );\n }\n\n private formatMeasurement(measurement: IMeasurement): string {\n const resultType = this.config?.resultType;\n const fragment = this.datapoint.fragment;\n const series = this.datapoint.series;\n\n if (resultType === 1) {\n return measurement[fragment][series].value;\n } else if (resultType === 2) {\n return measurement[fragment][series].value + ' ' + measurement[fragment][series].unit;\n } else if (resultType === 3) {\n const date = this.datePipe.transform(new Date(measurement.time as string), 'short');\n return `${date} | ${measurement[fragment][series].value} ${measurement[fragment][series].unit}`;\n } else if (resultType === 4) {\n return JSON.stringify(measurement);\n }\n return '';\n }\n}\n","import {\n distinctUntilChanged,\n NEVER,\n Observable,\n pairwise,\n share,\n startWith,\n switchMap,\n take\n} from 'rxjs';\nimport { ValueCallbackMetadata } from '@c8y/ngx-components/asset-properties';\nimport { ValueStrategy, RealtimeValueConfig } from './realtime-value-base';\n\n/**\n * Generic handler for realtime values following the three modes pattern\n * Closed for modification but open for extension through strategies\n */\nexport class RealtimeValueHandler<T> {\n private readonly config: Required<RealtimeValueConfig> = {\n refetchOnResume: true,\n preserveValueOnPause: true\n };\n\n constructor(\n private strategy: ValueStrategy<T>,\n config?: RealtimeValueConfig\n ) {\n if (config) {\n this.config = { ...this.config, ...config };\n }\n }\n\n /**\n * Creates an Observable based on the metadata mode\n */\n getValue(metadata: ValueCallbackMetadata = { mode: 'realtime' }): Observable<T> {\n if (metadata.mode === 'singleValue') {\n return this.strategy.fetchCurrentValue().pipe(take(1));\n }\n\n if (metadata.mode === 'realtime' && !metadata.realtimeControl$) {\n return this.handleUncontrolledRealtime();\n }\n\n if (metadata.mode === 'realtime' && metadata.realtimeControl$) {\n return this.handleControlledRealtime(metadata.realtimeControl$);\n }\n }\n\n private handleUncontrolledRealtime(): Observable<T> {\n return this.strategy\n .fetchCurrentValue()\n .pipe(switchMap(initialValue => this.strategy.createRealtimeStream(initialValue)));\n }\n\n private handleControlledRealtime(control$: Observable<boolean>): Observable<T> {\n const controlWithPrevious$ = control$.pipe(\n distinctUntilChanged(),\n startWith(null),\n pairwise(),\n share()\n );\n\n return controlWithPrevious$.pipe(\n switchMap(([previous, current]) => {\n if (!current) {\n // Realtime is disabled\n if (previous === null) {\n // Initial emission while disabled\n return this.strategy.fetchCurrentValue().pipe(take(1));\n } else if (this.config.preserveValueOnPause) {\n // Was previously enabled - preserve last value\n return NEVER;\n } else {\n // Don't preserve value - fetch current\n return this.strategy.fetchCurrentValue().pipe(take(1));\n }\n } else {\n // Realtime is enabled\n if (this.config.refetchOnResume || previous === null) {\n // Re-fetch current value and start streaming\n return this.strategy\n .fetchCurrentValue()\n .pipe(switchMap(currentValue => this.strategy.createRealtimeStream(currentValue)));\n } else {\n // Continue with realtime stream without re-fetching\n return this.strategy.createRealtimeStream(null as T);\n }\n }\n })\n );\n }\n}\n","import { inject, Injector } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { LastMeasurementConfig } from './last-measurement.model';\nimport { ValueCallbackMetadata } from '@c8y/ngx-components/asset-properties';\nimport { LastMeasurementStrategy } from '../strategies/last-measurement-strategy';\nimport { RealtimeValueHandler } from '../common/realtime-value-handler';\n\n/**\n * Creates an Observable that tracks the latest measurement value for a specific datapoint.\n * Combines initial server fetch with real-time measurement updates.\n *\n * @param config - Measurement configuration (datapoint, result type, etc.)\n * @param metadata - Configuration controlling the behavior of the function\n * @returns Observable<string> - Stream of measurement string values\n */\nexport function lastMeasurementValue(\n config: LastMeasurementConfig,\n metadata: ValueCallbackMetadata = { mode: 'realtime' }\n): Observable<string> {\n const injector = inject(Injector);\n const strategy = new LastMeasurementStrategy(config, injector);\n const handler = new RealtimeValueHandler(strategy);\n return handler.getValue(metadata);\n}\n","import { ComputedPropertyDefinition } from '@c8y/ngx-components/asset-properties';\nimport { LastMeasurementConfig } from './last-measurement.model';\nimport { lastMeasurementValue } from './last-measurement-value';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const lastMeasurement: ComputedPropertyDefinition<\n ['device', 'asset', 'group'],\n LastMeasurementConfig\n> = {\n name: 'lastMeasurement',\n contextType: ['device', 'asset', 'group'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n lastMeasurement: {\n label: 'Last measurement',\n type: 'string'\n }\n }\n },\n name: 'lastMeasurement',\n label: gettext('Last measurement'),\n type: 'string',\n config: { dp: [], resultType: 1 } as LastMeasurementConfig,\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n loadConfigComponent: () =>\n import('./last-measurement-config.component').then(\n m => m.ComputedPropertyLastMeasurementConfigComponent\n ),\n value: ({ config }) => {\n return lastMeasurementValue(config);\n }\n};\n","import { Injector } from '@angular/core';\nimport { IManagedObject, InventoryService } from '@c8y/client';\nimport { ManagedObjectRealtimeService } from '@c8y/ngx-components';\nimport { from, map, Observable, startWith } from 'rxjs';\nimport { ValueStrategy } from '../common/realtime-value-base';\n\nexport class ChildCountStrategy implements ValueStrategy<number> {\n private inventoryService: InventoryService;\n private moRealtimeService: ManagedObjectRealtimeService;\n\n constructor(\n private asset: IManagedObject,\n private childType: 'childDevices' | 'childAssets',\n injector: Injector\n ) {\n this.inventoryService = injector.get(InventoryService);\n this.moRealtimeService = injector.get(ManagedObjectRealtimeService);\n }\n\n fetchCurrentValue(): Observable<number> {\n return from(this.inventoryService.detail(this.asset.id, { withChildren: true })).pipe(\n map(resp => resp?.data?.[this.childType]?.references?.length || 0)\n );\n }\n\n createRealtimeStream(initialValue: number): Observable<number> {\n return this.moRealtimeService.onAll$(this.asset.id).pipe(\n map(resp => (resp?.data as IManagedObject)?.[this.childType]?.references?.length || 0),\n startWith(initialValue)\n );\n }\n}\n","import { inject, Injector } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport { ValueCallbackMetadata } from '@c8y/ngx-components/asset-properties';\nimport { Observable } from 'rxjs';\nimport { ChildCountStrategy } from '../strategies/child-count-strategy';\nimport { RealtimeValueHandler } from '../common/realtime-value-handler';\n\n/**\n * Shared function that tracks the count of child items (devices or assets) for a specific managed object.\n * Supports real-time updates when child items are added or removed.\n *\n * @param asset - The managed object to track child items for\n * @param childType - Type of child items ('childDevices' or 'childAssets')\n * @param metadata - Configuration controlling the behavior of the function\n * @returns Observable<number> - Stream of child items count values\n */\nexport function childCountValue(\n asset: IManagedObject,\n metadata: ValueCallbackMetadata = { mode: 'realtime' },\n childType: 'childDevices' | 'childAssets'\n): Observable<number> {\n const injector = inject(Injector);\n const strategy = new ChildCountStrategy(asset, childType, injector);\n const handler = new RealtimeValueHandler(strategy);\n return handler.getValue(metadata);\n}\n","import { IManagedObject } from '@c8y/client';\nimport {\n ComputedPropertyDefinition,\n ValueCallbackMetadata\n} from '@c8y/ngx-components/asset-properties';\nimport { Observable } from 'rxjs';\nimport { childCountValue } from './child-count-value';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const childAssetsCount: ComputedPropertyDefinition<['group', 'asset']> = {\n name: 'childAssetsCount',\n contextType: ['group', 'asset'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n childAssetsCount: {\n label: 'Number of child assets',\n type: 'number'\n }\n }\n },\n name: 'childAssetsCount',\n label: gettext('Number of child assets'),\n type: 'number',\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n value: ({ context, metadata }) => childAssetsCountValue(context, metadata)\n};\n\n/**\n * Creates an Observable that tracks the count of child assets for a specific asset.\n * Supports real-time updates when child assets are added or removed.\n *\n * @param asset - The managed object (asset) to track child assets for\n * @param metadata - Configuration controlling the behavior of the function\n * @returns Observable<number> - Stream of child assets count values\n */\nexport function childAssetsCountValue(\n asset: IManagedObject,\n metadata: ValueCallbackMetadata = { mode: 'realtime' }\n): Observable<number> {\n return childCountValue(asset, metadata, 'childAssets');\n}\n","import { Observable, scan, startWith } from 'rxjs';\nimport { ValueStrategy } from '../common/realtime-value-base';\n\n/**\n * Base class for count-based strategies\n * Provides common accumulation logic\n */\nexport abstract class CountStrategyBase implements ValueStrategy<number> {\n abstract fetchCurrentValue(): Observable<number>;\n abstract getRealtimeIncrement$(): Observable<number>;\n\n createRealtimeStream(initialValue: number): Observable<number> {\n return this.getRealtimeIncrement$().pipe(\n scan((count, increment) => count + increment, initialValue),\n startWith(initialValue)\n );\n }\n}\n","import { Injector } from '@angular/core';\nimport {\n AlarmQueryFilter,\n AlarmService,\n IAlarm,\n IManagedObject,\n SeverityFilter\n} from '@c8y/client';\nimport { AlarmRealtimeService } from '@c8y/ngx-components';\nimport { filter, from, map, Observable, tap } from 'rxjs';\nimport { AlarmCountConfig } from '../alarm-count/alarm-count.model';\nimport { CountStrategyBase } from './count-strategy-base';\n\nexport class AlarmCountStrategy extends CountStrategyBase {\n private alarmService: AlarmService;\n private alarmRealtimeService: AlarmRealtimeService;\n private startTime: Date;\n\n constructor(\n private config: AlarmCountConfig,\n private asset: IManagedObject,\n private dateFrom: Date,\n injector: Injector\n ) {\n super();\n this.alarmService = injector.get(AlarmService);\n this.alarmRealtimeService = injector.get(AlarmRealtimeService);\n this.startTime = new Date();\n }\n\n fetchCurrentValue(): Observable<number> {\n const severities: SeverityFilter[] = Object.keys(this.config.severities || {}).filter(\n key => this.config.severities[key]\n ) as SeverityFilter[];\n\n const filters: AlarmQueryFilter = {\n source: this.asset.id,\n dateFrom: this.dateFrom.toISOString(),\n type: this.config.type,\n pageSize: 1,\n withTotalElements: true,\n ...(severities.length && { severity: severities.join(',') })\n };\n\n return from(this.alarmService.list(filters)).pipe(\n map(resp => resp?.paging?.totalElements || 0),\n tap(() => (this.startTime = new Date())) // Update start time after fetch\n );\n }\n\n getRealtimeIncrement$(): Observable<number> {\n return this.alarmRealtimeService.onAll$(this.asset.id).pipe(\n map(({ data }) => data as IAlarm),\n filter(\n alarm =>\n alarm.type === this.config.type &&\n this.config.severities[alarm.severity] &&\n new Date(alarm.creationTime) > this.startTime\n ),\n tap(() => (this.startTime = new Date())),\n map(() => 1) // Each matching alarm increments by 1\n );\n }\n}\n","import { inject, Injector } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport { ValueCallbackMetadata } from '@c8y/ngx-components/asset-properties';\nimport { Observable } from 'rxjs';\nimport { AlarmCountStrategy } from '../strategies/alarm-count-strategy';\nimport { AlarmCountConfig } from './alarm-count.model';\nimport { RealtimeValueHandler } from '../common/realtime-value-handler';\n\n/**\n * Creates an Observable that tracks alarm count for a specific asset.\n * When real-time is paused and resumed, it re-fetches the current count from server\n * to account for alarms that occurred during the pause.\n *\n * @param config - Alarm filtering configuration (type, severities, etc.)\n * @param asset - The managed object (device/asset) to track alarms for\n * @param dateFrom - Start date for counting alarms\n * @param metadata - Configuration controlling the behavior of the function\n * @returns Observable<number> - Stream of alarm count values\n */\nexport function alarmCountValue(\n config: AlarmCountConfig,\n asset: IManagedObject,\n dateFrom: Date,\n metadata: ValueCallbackMetadata = { mode: 'realtime' }\n): Observable<number> {\n const injector = inject(Injector);\n const strategy = new AlarmCountStrategy(config, asset, dateFrom, injector);\n const handler = new RealtimeValueHandler(strategy);\n return handler.getValue(metadata);\n}\n","import { IManagedObject } from '@c8y/client';\nimport {\n ComputedPropertyDefinition,\n ValueCallbackMetadata\n} from '@c8y/ngx-components/asset-properties';\nimport { AlarmCountConfig } from './alarm-count.model';\nimport { alarmCountValue } from './alarm-count-value';\nimport { Observable } from 'rxjs';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const alarmCount3Months: ComputedPropertyDefinition<\n ['device', 'group', 'asset'],\n AlarmCountConfig\n> = {\n name: 'alarmCount3Months',\n contextType: ['device', 'group', 'asset'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n alarmCount3Months: {\n label: 'Alarm count 3 months',\n type: 'number'\n }\n }\n },\n name: 'alarmCount3Months',\n label: gettext('Alarm count 3 months'),\n type: 'number',\n config: { type: '' } as AlarmCountConfig,\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n loadConfigComponent: () =>\n import('./alarm-count-config.component').then(m => m.ComputedPropertyAlarmCountConfigComponent),\n value: ({ config, context, metadata }) => alarmCount3MonthsValue(config, context, metadata)\n};\n\nfunction alarmCount3MonthsValue(\n config: AlarmCountConfig,\n asset: IManagedObject,\n metadata: ValueCallbackMetadata\n): Observable<number> {\n const threeMonthsAgo = new Date();\n threeMonthsAgo.setMonth(threeMonthsAgo.getMonth() - 3);\n return alarmCountValue(config, asset, threeMonthsAgo, metadata);\n}\n","import { IManagedObject } from '@c8y/client';\nimport {\n ComputedPropertyDefinition,\n ValueCallbackMetadata\n} from '@c8y/ngx-components/asset-properties';\nimport { AlarmCountConfig } from './alarm-count.model';\nimport { alarmCountValue } from './alarm-count-value';\nimport { Observable } from 'rxjs';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const alarmCountToday: ComputedPropertyDefinition<\n ['device', 'group', 'asset'],\n AlarmCountConfig\n> = {\n name: 'alarmCountToday',\n contextType: ['device', 'group', 'asset'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n alarmCountToday: {\n label: 'Alarm count today',\n type: 'number'\n }\n }\n },\n name: 'alarmCountToday',\n label: gettext('Alarm count today'),\n type: 'number',\n config: { type: '' } as AlarmCountConfig,\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n loadConfigComponent: () =>\n import('./alarm-count-config.component').then(m => m.ComputedPropertyAlarmCountConfigComponent),\n value: ({ config, context, metadata }) => alarmCountTodayValue(config, context, metadata)\n};\n\nfunction alarmCountTodayValue(\n config: AlarmCountConfig,\n asset: IManagedObject,\n metadata: ValueCallbackMetadata\n): Observable<number> {\n const oneDayAgo = new Date();\n oneDayAgo.setDate(oneDayAgo.getDate() - 1);\n return alarmCountValue(config, asset, oneDayAgo, metadata);\n}\n","import { Injector } from '@angular/core';\nimport { EventService, IEvent, IManagedObject } from '@c8y/client';\nimport { EventRealtimeService } from '@c8y/ngx-components';\nimport { filter, from, map, Observable } from 'rxjs';\nimport { EventCountConfig } from '../event-count/event-count.model';\nimport { CountStrategyBase } from './count-strategy-base';\n\nexport class EventCountStrategy extends CountStrategyBase {\n private eventService: EventService;\n private eventRealtimeService: EventRealtimeService;\n\n constructor(\n private config: EventCountConfig,\n private asset: IManagedObject,\n private dateFrom: Date,\n injector: Injector\n ) {\n super();\n this.eventService = injector.get(EventService);\n this.eventRealtimeService = injector.get(EventRealtimeService);\n }\n\n fetchCurrentValue(): Observable<number> {\n const filters = {\n source: this.asset.id,\n dateFrom: this.dateFrom.toISOString(),\n type: this.config.type,\n pageSize: 1,\n withTotalElements: true\n };\n\n return from(this.eventService.list(filters)).pipe(\n map(resp => resp?.paging?.totalElements || 0)\n );\n }\n\n getRealtimeIncrement$(): Observable<number> {\n return this.eventRealtimeService.onAll$(this.asset.id).pipe(\n map(({ data }) => data as IEvent),\n filter(event => event.type === this.config.type && new Date(event.time) >= this.dateFrom),\n map(() => 1)\n );\n }\n}\n","import { inject, Injector } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport { EventCountConfig } from './event-count.model';\nimport { Observable } from 'rxjs';\nimport { ValueCallbackMetadata } from '@c8y/ngx-components/asset-properties';\nimport { EventCountStrategy } from '../strategies/event-count-strategy';\nimport { RealtimeValueHandler } from '../common/realtime-value-handler';\n\n/**\n * Creates an Observable that tracks event count for a specific asset.\n * When real-time is paused and resumed, it re-fetches the current count from server\n * to account for events that occurred during the pause.\n *\n * @param config - Event filtering configuration (type, etc.)\n * @param asset - The managed object (device/asset) to track events for\n * @param dateFrom - Start date for counting events\n * @param metadata - Configuration controlling the behavior of the function\n * @returns Observable<number> - Stream of event count values\n */\nexport function eventCountValue(\n config: EventCountConfig,\n asset: IManagedObject,\n dateFrom: Date,\n metadata: ValueCallbackMetadata = { mode: 'realtime' }\n): Observable<number> {\n const injector = inject(Injector);\n const strategy = new EventCountStrategy(config, asset, dateFrom, injector);\n const handler = new RealtimeValueHandler(strategy);\n return handler.getValue(metadata);\n}\n","import { IManagedObject } from '@c8y/client';\nimport {\n ComputedPropertyDefinition,\n ValueCallbackMetadata\n} from '@c8y/ngx-components/asset-properties';\nimport { EventCountConfig } from './event-count.model';\nimport { eventCountValue } from './event-count-value';\nimport { Observable } from 'rxjs';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const eventCountToday: ComputedPropertyDefinition<\n ['device', 'group', 'asset'],\n EventCountConfig\n> = {\n name: 'eventCountToday',\n contextType: ['device', 'group', 'asset'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n eventCountToday: {\n label: 'Event count today',\n type: 'number'\n }\n }\n },\n name: 'eventCountToday',\n label: gettext('Event count today'),\n type: 'number',\n config: { type: '' },\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n loadConfigComponent: () =>\n import('./event-count-config.component').then(m => m.ComputedPropertyEventCountConfigComponent),\n value: ({ config, context, metadata }) => eventCountTodayValue(config, context, metadata)\n};\n\nfunction eventCountTodayValue(\n config: EventCountConfig,\n asset: IManagedObject,\n metadata: ValueCallbackMetadata\n): Observable<number> {\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n return eventCountValue(config, asset, today, metadata);\n}\n","import { IManagedObject } from '@c8y/client';\nimport {\n ComputedPropertyDefinition,\n ValueCallbackMetadata\n} from '@c8y/ngx-components/asset-properties';\nimport { EventCountConfig } from './event-count.model';\nimport { eventCountValue } from './event-count-value';\nimport { Observable } from 'rxjs';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const eventCount3Months: ComputedPropertyDefinition<\n ['device', 'group', 'asset'],\n EventCountConfig\n> = {\n name: 'eventCount3Months',\n contextType: ['device', 'group', 'asset'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n eventCount3Months: {\n label: 'Event count 3 months',\n type: 'number'\n }\n }\n },\n name: 'eventCount3Months',\n label: gettext('Event count 3 months'),\n type: 'number',\n config: { type: '' },\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n loadConfigComponent: () =>\n import('./event-count-config.component').then(m => m.ComputedPropertyEventCountConfigComponent),\n value: ({ config, context, metadata }) => eventCount3MonthsValue(config, context, metadata)\n};\n\nfunction eventCount3MonthsValue(\n config: EventCountConfig,\n asset: IManagedObject,\n metadata: ValueCallbackMetadata\n): Observable<number> {\n const threeMonthsAgo = new Date();\n threeMonthsAgo.setMonth(threeMonthsAgo.getMonth() - 3);\n return eventCountValue(config, asset, threeMonthsAgo, metadata);\n}\n","import { ComputedPropertyDefinition } from '@c8y/ngx-components/asset-properties';\nimport { from, Observable, of, switchMap } from 'rxjs';\nimport { ConfigurationSnapshotConfig } from './configuration-snapshot.model';\nimport { IManagedObject, InventoryService } from '@c8y/client';\nimport { inject, Injector } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const configurationSnapshot: ComputedPropertyDefinition<\n ['device', 'asset'],\n ConfigurationSnapshotConfig\n> = {\n name: 'configurationSnapshot',\n contextType: ['device', 'asset'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n configurationSnapshot: {\n label: 'Configuration snapshot',\n type: 'string'\n }\n }\n },\n contextType: ['device', 'asset'],\n name: 'configurationSnapshot',\n label: gettext('Configuration snapshot'),\n type: 'string',\n config: { legacy: true } as ConfigurationSnapshotConfig,\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n loadConfigComponent: () =>\n import('./configuration-snapshot-config.component').then(\n m => m.ConfigurationSnapshotConfigComponent\n ),\n value: ({ config, context }) => configurationSnapshotValue(config, context)\n};\n\nfunction configurationSnapshotValue(\n config: ConfigurationSnapshotConfig,\n asset: IManagedObject\n): Observable<string> {\n if (config.legacy) {\n const configId = asset.c8y_ConfigurationDump?.id;\n if (!configId) {\n return of(null);\n }\n const injector = inject(Injector);\n const inventoryService = injector.get(InventoryService);\n return from(inventoryService.detail(configId)).pipe(\n switchMap(({ data }) => {\n return of(data?.name);\n })\n );\n } else {\n const fragment = `c8y_Configuration_${config.type}`;\n return of(asset[fragment]?.name);\n }\n}\n","import { IManagedObject } from '@c8y/client';\nimport {\n ComputedPropertyDefinition,\n ValueCallbackMetadata\n} from '@c8y/ngx-components/asset-properties';\nimport { Observable } from 'rxjs';\nimport { childCountValue } from './child-count-value';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const childDevicesCount: ComputedPropertyDefinition<['group', 'device', 'asset']> = {\n name: 'childDevicesCount',\n contextType: ['group', 'device', 'asset'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n childDevicesCount: {\n label: 'Number of child devices',\n type: 'number'\n }\n }\n },\n name: 'childDevicesCount',\n label: gettext('Number of child devices'),\n type: 'number',\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n value: ({ context, metadata }) => childDevicesCountValue(context, metadata)\n};\n\n/**\n * Creates an Observable that tracks the count of child devices for a specific asset.\n * Supports real-time updates when child devices are added or removed.\n *\n * @param asset - The managed object (asset) to track child devices for\n * @param metadata - Configuration controlling the behavior of the function\n * @returns Observable<number> - Stream of child devices count values\n */\nexport function childDevicesCountValue(\n asset: IManagedObject,\n metadata: ValueCallbackMetadata = { mode: 'realtime' }\n): Observable<number> {\n return childCountValue(asset, metadata, 'childDevices');\n}\n","import { Injector } from '@angular/core';\nimport {\n AlarmService,\n EventService,\n IAlarm,\n IEvent,\n IManagedObject,\n IMeasurement,\n IOperation,\n MeasurementService,\n OperationService\n} from '@c8y/client';\nimport {\n AlarmRealtimeService,\n EventRealtimeService,\n MeasurementRealtimeService,\n OperationRealtimeService\n} from '@c8y/ngx-components';\nimport {\n catchError,\n combineLatest,\n filter,\n from,\n map,\n merge,\n Observable,\n of,\n scan,\n startWith\n} from 'rxjs';\nimport { ValueStrategy } from '../common/realtime-value-base';\n\nexport class LastDeviceMessageStrategy implements ValueStrategy<string> {\n private measurementService: MeasurementService;\n private measurementRealtime: MeasurementRealtimeService;\n private eventService: EventService;\n private eventRealtimeService: EventRealtimeService;\n private alarmService: AlarmService;\n private alarmRealtimeService: AlarmRealtimeService;\n private operationService: OperationService;\n private operationRealtimeService: OperationRealtimeService;\n private startTime: Date;\n\n constructor(\n private asset: IManagedObject,\n injector: Injector\n ) {\n this.measurementService = injector.get(MeasurementService);\n this.measurementRealtime = injector.get(MeasurementRealtimeService);\n this.eventService = injector.get(EventService);\n this.eventRealtimeService = injector.get(EventRealtimeService);\n this.alarmService = injector.get(AlarmService);\n this.alarmRealtimeService = injector.get(AlarmRealtimeService);\n this.operationService = injector.get(OperationService);\n this.operationRealtimeService = injector.get(OperationRealtimeService);\n this.startTime = new Date();\n }\n\n fetchCurrentValue(): Observable<string> {\n const fetchFilter = {\n source: this.asset.id,\n pageSize: 1,\n revert: true\n };\n\n const fetchLatestMeasurement = (): Observable<string | null> => {\n return from(this.measurementService.list(fetchFilter)).pipe(\n map(resp => resp.data?.[0]?.time || null),\n catchError(() => of(null))\n );\n };\n\n const fetchLatestEvent = (): Observable<string | null> => {\n return from(this.eventService.list(fetchFilter)).pipe(\n map(resp => resp.data?.[0]?.time || null),\n catchError(() => of(null))\n );\n };\n\n const fetchLatestAlarm = (): Observable<string | null> => {\n return from(this.alarmService.list(fetchFilter)).pipe(\n map(resp => resp.data?.[0]?.time || null),\n catchError(() => of(null))\n );\n };\n\n const fetchLatestOperation = (): Observable<string | null> => {\n return from(this.operationService.list(fetchFilter)).pipe(\n map(resp => resp.data?.[0]?.creationTime || null),\n catchError(() => of(null))\n );\n };\n\n return combineLatest([\n fetchLatestMeasurement(),\n fetchLatestEvent(),\n fetchLatestAlarm(),\n fetchLatestOperation()\n ]).pipe(\n map(timestamps => {\n const validTimestamps = timestamps.filter(Boolean) as string[];\n\n if (validTimestamps.length === 0) {\n return null;\n }\n\n const latest = validTimestamps.reduce((latest, current) => {\n return new Date(current) > new Date(latest) ? current : latest;\n });\n\n // Update start time for realtime filtering\n this.startTime = new Date();\n return latest;\n })\n );\n }\n\n createRealtimeStream(initialValue: string): Observable<string> {\n const measurementStream$ = this.measurementRealtime.onAll$(this.asset.id).pipe(\n map(({ data }) => (data as IMeasurement).time),\n filter(time => new Date(time) > this.startTime)\n );\n\n const eventStream$ = this.eventRealtimeService.onAll$(this.asset.id).pipe(\n map(({ data }) => (data as IEvent).time),\n filter(time => new Date(time) > this.startTime)\n );\n\n const alarmStream$ = this.alarmRealtimeService.onAll$(this.asset.id).pipe(\n map(({ data }) => (data as IAlarm).time),\n filter(time => time && new Date(time) > this.startTime)\n );\n\n const operationStream$ = this.operationRealtimeService.onAll$(this.asset.id).pipe(\n map(({ data }) => (data as IOperation).creationTime),\n filter(time => time && new Date(time) > this.startTime)\n );\n\n return merge(measurementStream$, eventStream$, alarmStream$, operationStream$).pipe(\n scan((latestTimestamp, newTimestamp) => {\n return new Date(newTimestamp) > new Date(latestTimestamp) ? newTimestamp : latestTimestamp;\n }, initialValue),\n startWith(initialValue)\n );\n }\n}\n","import { ValueCallbackMetadata } from '@c8y/ngx-components/asset-properties';\nimport { IManagedObject } from '@c8y/client';\nimport { inject, Injector } from '@angular/core';\nimport { Observable } from 'rxjs';\n\nimport { LastDeviceMessageStrategy } from '../strategies/last-device-message-strategy';\nimport { RealtimeValueHandler } from '../common/realtime-value-handler';\n\n/**\n * Gets the latest timestamp from events, alarms, measurements, and operations for a device.\n * Returns the most recent timestamp across all these sources.\n *\n * @param asset - The managed object (device/asset) to track\n * @param metadata - Configuration controlling the behavior of the function\n * @returns Observable<string> - Stream of latest timestamp values\n */\nexport function getLastDeviceMessage(\n asset: IManagedObject,\n metadata: ValueCallbackMetadata = { mode: 'realtime' }\n): Observable<string> {\n const injector = inject(Injector);\n const strategy = new LastDeviceMessageStrategy(asset, injector);\n const handler = new RealtimeValueHandler(strategy);\n return handler.getValue(metadata);\n}\n","import { ComputedPropertyDefinition } from '@c8y/ngx-components/asset-properties';\nimport { getLastDeviceMessage } from './last-device-message-value';\nimport { gettext } from '@c8y/ngx-components/gettext';\n\nexport const lastDeviceMessage: ComputedPropertyDefinition<['device']> = {\n name: 'lastDeviceMessage',\n contextType: ['device'],\n prop: {\n c8y_JsonSchema: {\n properties: {\n lastDeviceMessage: {\n label: 'Last device message',\n type: 'string'\n }\n }\n },\n name: 'lastDeviceMessage',\n label: gettext('Last device message'),\n printFormat: 'datetime',\n type: 'string',\n computed: true,\n isEditable: false,\n isStandardProperty: true\n },\n value: ({ context }) => {\n return getLastDeviceMessage(context);\n }\n};\n","import { hookComputedProperty } from '@c8y/ngx-components/asset-properties';\nimport { lastMeasurement } from './last-measurement/last-measurement-computed-property';\nimport { childAssetsCount } from './child-count/child-assets-count-computed-property';\nimport {\n AlarmRealtimeService,\n EventRealtimeService,\n ManagedObjectRealtimeService,\n MeasurementRealtimeService,\n OperationRealtimeService\n} from '@c8y/ngx-components';\nimport { alarmCount3Months } from './alarm-count/alarm-count-3-months-computed-property';\nimport { alarmCountToday } from './alarm-count/alarm-count-today-computed-property';\nimport { eventCountToday } from './event-count/event-count-today';\nimport { eventCount3Months } from './event-count/event-count-3-months';\nimport { configurationSnapshot } from './configuration-snapshot/configuration-snapshot-computed-property';\nimport { childDevicesCount } from './child-count/child-devices-count-computed-property';\nimport { lastDeviceMessage } from './last-device-message/last-device-message-computed-property';\n\nexport const computedAssetPropertiesProviders = [\n AlarmRealtimeService,\n EventRealtimeService,\n MeasurementRealtimeService,\n OperationRealtimeService,\n ManagedObjectRealtimeService,\n hookComputedProperty([\n lastMeasurement,\n lastDeviceMessage,\n childAssetsCount,\n childDevicesCount,\n alarmCount3Months,\n alarmCountToday,\n eventCountToday,\n eventCount3Months,\n configurationSnapshot\n ])\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, NgModule } from '@angular/core';
3
+ import { gettext } from '@c8y/ngx-components/gettext';
3
4
  import * as i1 from '@c8y/ngx-components';
4
- import { toObservable, NavigatorNode, gettext, hookNavigator, hookTab, ConditionalTabsOutletComponent, CoreModule, ProviderConfigurationModule, hookPatternMessages } from '@c8y/ngx-components';
5
+ import { toObservable, NavigatorNode, hookNavigator, hookTab, ConditionalTabsOutletComponent, CoreModule, ProviderConfigurationModule, hookPatternMessages } from '@c8y/ngx-components';
5
6
  import { map } from 'rxjs/operators';
6
7
  import * as i1$1 from '@angular/router';
7
8
  import { RouterModule } from '@angular/router';
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-connectivity.mjs","sources":["../../connectivity/abstract-connectivity-tab.factory.ts","../../connectivity/abstract-connectivity-node.factory.ts","../../connectivity/actility/actility.guard.ts","../../connectivity/actility/actility-tab.factory.ts","../../connectivity/actility/actility-node.factory.ts","../../connectivity/actility/actility.module.ts","../../connectivity/loriot/loriot.guard.ts","../../connectivity/loriot/loriot-tab.factory.ts","../../connectivity/loriot/loriot-node.factory.ts","../../connectivity/loriot/loriot.module.ts","../../connectivity/sigfox/sigfox.guard.ts","../../connectivity/sigfox/sigfox-tab.factory.ts","../../connectivity/sigfox/sigfox-node.factory.ts","../../connectivity/sigfox/sigfox.module.ts","../../connectivity/connectivity.module.ts","../../connectivity/sim/sim.guard.ts","../../connectivity/sim/pattern-messages.data.ts","../../connectivity/sim/sim.module.ts","../../connectivity/c8y-ngx-components-connectivity.ts"],"sourcesContent":["import { Router, CanActivateFn } from '@angular/router';\nimport { Tab, TabFactory, toObservable } from '@c8y/ngx-components';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nexport abstract class AbstractConnectivityTabFactory implements TabFactory {\n constructor(\n protected router: Router,\n protected guard: {\n canActivate: CanActivateFn;\n }\n ) {}\n\n get() {\n return this.router.url.match(/connectivitySettings/g) ? this.tab() : [];\n }\n\n tab(): Tab | Observable<Tab> {\n return toObservable(\n this.guard.canActivate(\n this.router.routerState.snapshot.root,\n this.router.routerState.snapshot\n )\n ).pipe(map(canActivate => (canActivate ? this.config() : null)));\n }\n\n protected abstract config(): Tab;\n}\n","import { Injectable } from '@angular/core';\nimport { gettext, NavigatorNode, NavigatorNodeFactory, toObservable } from '@c8y/ngx-components';\nimport { map } from 'rxjs/operators';\nimport { AbstractConnectivityTabFactory } from './abstract-connectivity-tab.factory';\n\n@Injectable()\nexport abstract class AbstractConnectivityNodeFactory implements NavigatorNodeFactory {\n protected readonly connectivityNode: NavigatorNode = new NavigatorNode({\n parent: gettext('Settings'),\n label: gettext('Connectivity'),\n path: 'connectivitySettings',\n icon: 'plug',\n preventDuplicates: true\n });\n\n constructor(protected tabFactory: AbstractConnectivityTabFactory) {}\n\n get() {\n return toObservable(this.tabFactory.tab()).pipe(\n map(tab => {\n return !!tab ? [this.connectivityNode] : [];\n })\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class ActilityGuard {\n private static readonly applicationName = 'actility';\n private showActilityProvider: Promise<boolean>;\n\n constructor(private appState: AppStateService) {}\n\n canActivate(): Promise<boolean> {\n if (this.showActilityProvider === undefined) {\n this.showActilityProvider = this.appState.isApplicationAvailable(\n ActilityGuard.applicationName\n );\n }\n\n return this.showActilityProvider;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { gettext, Tab } from '@c8y/ngx-components';\nimport { AbstractConnectivityTabFactory } from '../abstract-connectivity-tab.factory';\nimport { ActilityGuard } from './actility.guard';\n\n@Injectable({ providedIn: 'root' })\nexport class ActilityTabFactory extends AbstractConnectivityTabFactory {\n private tabConfig: Tab = {\n label: gettext('Actility'),\n path: '/connectivitySettings/multiple_lns_connectors_actility',\n icon: 'wall-socket'\n };\n\n constructor(protected router: Router, protected guard: ActilityGuard) {\n super(router, guard);\n }\n\n protected config(): Tab {\n return this.tabConfig;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractConnectivityNodeFactory } from '../abstract-connectivity-node.factory';\nimport { ActilityTabFactory } from './actility-tab.factory';\n\n@Injectable({ providedIn: 'root' })\nexport class ActilityNodeFactory extends AbstractConnectivityNodeFactory {\n constructor(protected tabFactory: ActilityTabFactory) {\n super(tabFactory);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { hookNavigator, hookTab } from '@c8y/ngx-components';\nimport { ActilityNodeFactory } from './actility-node.factory';\nimport { ActilityTabFactory } from './actility-tab.factory';\nimport { ActilityGuard } from './actility.guard';\n\n@NgModule({\n providers: [ActilityGuard, hookNavigator(ActilityNodeFactory), hookTab(ActilityTabFactory)]\n})\nexport class ActilityModule {}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class LoriotGuard {\n private static readonly applicationName = 'loriot';\n private showLoriotProvider: Promise<boolean>;\n\n constructor(private appState: AppStateService) {}\n\n canActivate(): Promise<boolean> {\n if (this.showLoriotProvider === undefined) {\n this.showLoriotProvider = this.appState.isApplicationAvailable(LoriotGuard.applicationName);\n }\n\n return this.showLoriotProvider;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Tab } from '@c8y/ngx-components';\nimport { AbstractConnectivityTabFactory } from '../abstract-connectivity-tab.factory';\nimport { LoriotGuard } from './loriot.guard';\n\n@Injectable({ providedIn: 'root' })\nexport class LoriotTabFactory extends AbstractConnectivityTabFactory {\n private tabConfig: Tab = {\n label: 'LORIOT',\n path: '/connectivitySettings/multiple_lns_connectors_loriot',\n icon: 'wall-socket'\n };\n\n constructor(protected router: Router, protected guard: LoriotGuard) {\n super(router, guard);\n }\n\n protected config(): Tab {\n return this.tabConfig;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractConnectivityNodeFactory } from '../abstract-connectivity-node.factory';\nimport { LoriotTabFactory } from './loriot-tab.factory';\n\n@Injectable({ providedIn: 'root' })\nexport class LoriotNodeFactory extends AbstractConnectivityNodeFactory {\n constructor(protected tabFactory: LoriotTabFactory) {\n super(tabFactory);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { hookNavigator, hookTab } from '@c8y/ngx-components';\nimport { LoriotNodeFactory } from './loriot-node.factory';\nimport { LoriotTabFactory } from './loriot-tab.factory';\nimport { LoriotGuard } from './loriot.guard';\n\n@NgModule({\n providers: [LoriotGuard, hookNavigator(LoriotNodeFactory), hookTab(LoriotTabFactory)]\n})\nexport class LoriotModule {}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class SigfoxGuard {\n private static readonly applicationName = 'sigfox-agent';\n private showSigfoxProvider: Promise<boolean>;\n\n constructor(private appState: AppStateService) {}\n\n canActivate(): Promise<boolean> {\n if (this.showSigfoxProvider === undefined) {\n this.showSigfoxProvider = this.appState.isApplicationAvailable(SigfoxGuard.applicationName);\n }\n\n return this.showSigfoxProvider;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { gettext, Tab } from '@c8y/ngx-components';\nimport { AbstractConnectivityTabFactory } from '../abstract-connectivity-tab.factory';\nimport { SigfoxGuard } from './sigfox.guard';\n\n@Injectable({ providedIn: 'root' })\nexport class SigfoxTabFactory extends AbstractConnectivityTabFactory {\n private tabConfig: Tab = {\n label: gettext('Sigfox'),\n path: '/connectivitySettings/multiple_lns_connectors_sigfox',\n icon: 'wall-socket'\n };\n\n constructor(protected router: Router, protected guard: SigfoxGuard) {\n super(router, guard);\n }\n\n protected config(): Tab {\n return this.tabConfig;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractConnectivityNodeFactory } from '../abstract-connectivity-node.factory';\nimport { SigfoxTabFactory } from './sigfox-tab.factory';\n\n@Injectable({ providedIn: 'root' })\nexport class SigfoxNodeFactory extends AbstractConnectivityNodeFactory {\n constructor(protected tabFactory: SigfoxTabFactory) {\n super(tabFactory);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { hookNavigator, hookTab } from '@c8y/ngx-components';\nimport { SigfoxNodeFactory } from './sigfox-node.factory';\nimport { SigfoxTabFactory } from './sigfox-tab.factory';\nimport { SigfoxGuard } from './sigfox.guard';\n\n@NgModule({\n providers: [SigfoxGuard, hookNavigator(SigfoxNodeFactory), hookTab(SigfoxTabFactory)]\n})\nexport class SigfoxModule {}\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { ConditionalTabsOutletComponent, CoreModule, Route } from '@c8y/ngx-components';\nimport { ActilityModule } from './actility/actility.module';\nimport { LoriotModule } from './loriot/loriot.module';\nimport { SigfoxModule } from './sigfox/sigfox.module';\n\nconst connectivityRoutes: Route[] = [\n {\n path: 'connectivitySettings',\n component: ConditionalTabsOutletComponent\n }\n];\n\n@NgModule({\n imports: [\n CoreModule,\n ActilityModule,\n SigfoxModule,\n LoriotModule,\n RouterModule.forChild(connectivityRoutes)\n ]\n})\nexport class ConnectivityModule {}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\nimport { Permissions } from '@c8y/ngx-components';\n\n@Injectable()\nexport class SimGuard {\n private static readonly applicationName = 'connectivity';\n private showSimProvider: Promise<boolean>;\n\n constructor(\n private permissions: Permissions,\n private appState: AppStateService\n ) {}\n\n canActivate(): Promise<boolean> {\n if (this.showSimProvider === undefined) {\n const hasRole: Promise<boolean> = Promise.resolve(\n this.permissions.hasRole('ROLE_CONNECTIVITY_READ')\n );\n\n this.showSimProvider = hasRole.then(\n (hasPermissions: boolean) =>\n hasPermissions && this.appState.isApplicationAvailable(SimGuard.applicationName)\n );\n }\n\n return this.showSimProvider;\n }\n}\n","import { gettext } from '@c8y/ngx-components';\n\nexport const MESSAGES_CONNECTIVITY_SIM = {\n '^Cache duration$': {\n gettext: gettext('Cache duration')\n },\n '^Sets the duration how long information from the provider may be cached in seconds$': {\n gettext: gettext(\n 'Sets the duration in seconds how long the information from the provider may be cached.'\n )\n },\n '^Certificate$': {\n gettext: gettext('Certificate')\n },\n '^Certificate file$': {\n gettext: gettext('Certificate file')\n },\n '^API URL$': {\n gettext: gettext('API URL')\n },\n '^Sim source$': {\n gettext: gettext('SIM source')\n },\n '^source$': {\n gettext: gettext('source')\n },\n '^Password$': {\n gettext: gettext('Password')\n },\n '^Trust store password$': {\n gettext: gettext('Trust store password')\n },\n '^Trust store type$': {\n gettext: gettext('Trust store type')\n },\n '^License key$': {\n gettext: gettext('License key')\n },\n '^Username$': {\n gettext: gettext('Username')\n }\n} as const;\n","import { NgModule } from '@angular/core';\nimport {\n DroppedFile,\n gettext,\n hookPatternMessages,\n ProviderConfigurationModule,\n ProviderProperties\n} from '@c8y/ngx-components';\nimport { FormlyFieldConfig } from '@ngx-formly/core';\nimport { get } from 'lodash-es';\nimport { MESSAGES_CONNECTIVITY_SIM } from './pattern-messages.data';\nimport { SimGuard } from './sim.guard';\n\nexport async function encodeFiles(\n model: ProviderProperties,\n fields: FormlyFieldConfig[]\n): Promise<ProviderProperties> {\n const result: ProviderProperties = { ...model };\n const fileFields: FormlyFieldConfig[] = (get(fields, '[0].fieldGroup') || []).filter(\n (field: FormlyFieldConfig) => {\n return field.type === 'file' && field.templateOptions.contentEncoding === 'base64';\n }\n );\n\n for (const fileField of fileFields) {\n const files: DroppedFile[] = model[fileField.key as string];\n if (files && Array.isArray(files) && files.length) {\n if (fileField.templateOptions.maxAllowedFiles === 1) {\n result[fileField.key as string] = (await files[0].readAsDataURL()).replace(\n /data:\\S+;base64,/gi,\n ''\n );\n } else {\n const encodedFileContent: string[] = [];\n\n for (const file of files) {\n encodedFileContent.push((await file.readAsDataURL()).replace(/data:\\S+;base64,/gi, ''));\n }\n\n result[fileField.key as string] = encodedFileContent;\n }\n } else if (typeof files === 'string' || files instanceof String) {\n result[fileField.key as string] = files;\n }\n }\n return result;\n}\n\n@NgModule({\n providers: [SimGuard, hookPatternMessages(MESSAGES_CONNECTIVITY_SIM)],\n imports: [\n ProviderConfigurationModule.config([\n {\n navigation: {\n label: gettext('Connectivity'),\n path: 'connectivitySettings',\n icon: 'plug',\n parent: gettext('Settings'),\n priority: 1000,\n preventDuplicates: true\n },\n tab: {\n path: 'sim_provider_settings',\n label: 'SIM provider settings',\n icon: 'mobile',\n canActivate: [SimGuard]\n },\n layout: {\n pageTitle: gettext('Connectivity'),\n cardTitle: gettext('Settings'),\n description: gettext(\n `In order to see the 'Connectivity' tab in device details, the user needs to have 'Read' permission for 'Connectivity'. To change SIM card status and send text messages, the user needs to have 'Admin' permission for 'Connectivity'.`\n ),\n providerName: gettext('Provider'),\n providerNamePlaceholder: gettext('Select or type to filter providers'),\n providerNameNoMatchesHint: gettext('Select one of the existing providers.'),\n deleteRoles: ['ROLE_CONNECTIVITY_ADMIN'],\n deleteBtnLabel: gettext('Delete'),\n saveRoles: ['ROLE_CONNECTIVITY_ADMIN'],\n saveBtnLabel: gettext('Save'),\n beforeSaveHook: encodeFiles,\n configurationUpdatedSuccessMsg: gettext('Settings updated.'),\n deleteConfigurationModalTitle: gettext('Delete settings'),\n deleteConfigurationModalBody: gettext(\n `You are about to delete SIM provider settings. Do you want to proceed?`\n ),\n deleteConfigurationModalOkBtnLabel: gettext('Delete'),\n configurationDeletedSuccessMsg: gettext('Settings deleted.')\n },\n endpoint: {\n definitionsEndpoint: {\n baseUrl: 'service/connectivity/metadata',\n listUrl: 'definitions'\n },\n configurationEndpoint: {\n baseUrl: 'service/connectivity/metadata',\n listUrl: 'sim/provider'\n }\n }\n }\n ])\n ]\n})\nexport class SimModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AbstractConnectivityTabFactory","i1","i2.ActilityGuard","i1.ActilityTabFactory","i2.LoriotGuard","i1.LoriotTabFactory","i2.SigfoxGuard","i1.SigfoxTabFactory"],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-connectivity.mjs","sources":["../../connectivity/abstract-connectivity-tab.factory.ts","../../connectivity/abstract-connectivity-node.factory.ts","../../connectivity/actility/actility.guard.ts","../../connectivity/actility/actility-tab.factory.ts","../../connectivity/actility/actility-node.factory.ts","../../connectivity/actility/actility.module.ts","../../connectivity/loriot/loriot.guard.ts","../../connectivity/loriot/loriot-tab.factory.ts","../../connectivity/loriot/loriot-node.factory.ts","../../connectivity/loriot/loriot.module.ts","../../connectivity/sigfox/sigfox.guard.ts","../../connectivity/sigfox/sigfox-tab.factory.ts","../../connectivity/sigfox/sigfox-node.factory.ts","../../connectivity/sigfox/sigfox.module.ts","../../connectivity/connectivity.module.ts","../../connectivity/sim/sim.guard.ts","../../connectivity/sim/pattern-messages.data.ts","../../connectivity/sim/sim.module.ts","../../connectivity/c8y-ngx-components-connectivity.ts"],"sourcesContent":["import { Router, CanActivateFn } from '@angular/router';\nimport { Tab, TabFactory, toObservable } from '@c8y/ngx-components';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nexport abstract class AbstractConnectivityTabFactory implements TabFactory {\n constructor(\n protected router: Router,\n protected guard: {\n canActivate: CanActivateFn;\n }\n ) {}\n\n get() {\n return this.router.url.match(/connectivitySettings/g) ? this.tab() : [];\n }\n\n tab(): Tab | Observable<Tab> {\n return toObservable(\n this.guard.canActivate(\n this.router.routerState.snapshot.root,\n this.router.routerState.snapshot\n )\n ).pipe(map(canActivate => (canActivate ? this.config() : null)));\n }\n\n protected abstract config(): Tab;\n}\n","import { Injectable } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { NavigatorNode, NavigatorNodeFactory, toObservable } from '@c8y/ngx-components';\nimport { map } from 'rxjs/operators';\nimport { AbstractConnectivityTabFactory } from './abstract-connectivity-tab.factory';\n\n@Injectable()\nexport abstract class AbstractConnectivityNodeFactory implements NavigatorNodeFactory {\n protected readonly connectivityNode: NavigatorNode = new NavigatorNode({\n parent: gettext('Settings'),\n label: gettext('Connectivity'),\n path: 'connectivitySettings',\n icon: 'plug',\n preventDuplicates: true\n });\n\n constructor(protected tabFactory: AbstractConnectivityTabFactory) {}\n\n get() {\n return toObservable(this.tabFactory.tab()).pipe(\n map(tab => {\n return !!tab ? [this.connectivityNode] : [];\n })\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class ActilityGuard {\n private static readonly applicationName = 'actility';\n private showActilityProvider: Promise<boolean>;\n\n constructor(private appState: AppStateService) {}\n\n canActivate(): Promise<boolean> {\n if (this.showActilityProvider === undefined) {\n this.showActilityProvider = this.appState.isApplicationAvailable(\n ActilityGuard.applicationName\n );\n }\n\n return this.showActilityProvider;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { Tab } from '@c8y/ngx-components';\nimport { AbstractConnectivityTabFactory } from '../abstract-connectivity-tab.factory';\nimport { ActilityGuard } from './actility.guard';\n\n@Injectable({ providedIn: 'root' })\nexport class ActilityTabFactory extends AbstractConnectivityTabFactory {\n private tabConfig: Tab = {\n label: gettext('Actility'),\n path: '/connectivitySettings/multiple_lns_connectors_actility',\n icon: 'wall-socket'\n };\n\n constructor(\n protected router: Router,\n protected guard: ActilityGuard\n ) {\n super(router, guard);\n }\n\n protected config(): Tab {\n return this.tabConfig;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractConnectivityNodeFactory } from '../abstract-connectivity-node.factory';\nimport { ActilityTabFactory } from './actility-tab.factory';\n\n@Injectable({ providedIn: 'root' })\nexport class ActilityNodeFactory extends AbstractConnectivityNodeFactory {\n constructor(protected tabFactory: ActilityTabFactory) {\n super(tabFactory);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { hookNavigator, hookTab } from '@c8y/ngx-components';\nimport { ActilityNodeFactory } from './actility-node.factory';\nimport { ActilityTabFactory } from './actility-tab.factory';\nimport { ActilityGuard } from './actility.guard';\n\n@NgModule({\n providers: [ActilityGuard, hookNavigator(ActilityNodeFactory), hookTab(ActilityTabFactory)]\n})\nexport class ActilityModule {}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class LoriotGuard {\n private static readonly applicationName = 'loriot';\n private showLoriotProvider: Promise<boolean>;\n\n constructor(private appState: AppStateService) {}\n\n canActivate(): Promise<boolean> {\n if (this.showLoriotProvider === undefined) {\n this.showLoriotProvider = this.appState.isApplicationAvailable(LoriotGuard.applicationName);\n }\n\n return this.showLoriotProvider;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Tab } from '@c8y/ngx-components';\nimport { AbstractConnectivityTabFactory } from '../abstract-connectivity-tab.factory';\nimport { LoriotGuard } from './loriot.guard';\n\n@Injectable({ providedIn: 'root' })\nexport class LoriotTabFactory extends AbstractConnectivityTabFactory {\n private tabConfig: Tab = {\n label: 'LORIOT',\n path: '/connectivitySettings/multiple_lns_connectors_loriot',\n icon: 'wall-socket'\n };\n\n constructor(protected router: Router, protected guard: LoriotGuard) {\n super(router, guard);\n }\n\n protected config(): Tab {\n return this.tabConfig;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractConnectivityNodeFactory } from '../abstract-connectivity-node.factory';\nimport { LoriotTabFactory } from './loriot-tab.factory';\n\n@Injectable({ providedIn: 'root' })\nexport class LoriotNodeFactory extends AbstractConnectivityNodeFactory {\n constructor(protected tabFactory: LoriotTabFactory) {\n super(tabFactory);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { hookNavigator, hookTab } from '@c8y/ngx-components';\nimport { LoriotNodeFactory } from './loriot-node.factory';\nimport { LoriotTabFactory } from './loriot-tab.factory';\nimport { LoriotGuard } from './loriot.guard';\n\n@NgModule({\n providers: [LoriotGuard, hookNavigator(LoriotNodeFactory), hookTab(LoriotTabFactory)]\n})\nexport class LoriotModule {}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class SigfoxGuard {\n private static readonly applicationName = 'sigfox-agent';\n private showSigfoxProvider: Promise<boolean>;\n\n constructor(private appState: AppStateService) {}\n\n canActivate(): Promise<boolean> {\n if (this.showSigfoxProvider === undefined) {\n this.showSigfoxProvider = this.appState.isApplicationAvailable(SigfoxGuard.applicationName);\n }\n\n return this.showSigfoxProvider;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { Tab } from '@c8y/ngx-components';\nimport { AbstractConnectivityTabFactory } from '../abstract-connectivity-tab.factory';\nimport { SigfoxGuard } from './sigfox.guard';\n\n@Injectable({ providedIn: 'root' })\nexport class SigfoxTabFactory extends AbstractConnectivityTabFactory {\n private tabConfig: Tab = {\n label: gettext('Sigfox'),\n path: '/connectivitySettings/multiple_lns_connectors_sigfox',\n icon: 'wall-socket'\n };\n\n constructor(\n protected router: Router,\n protected guard: SigfoxGuard\n ) {\n super(router, guard);\n }\n\n protected config(): Tab {\n return this.tabConfig;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractConnectivityNodeFactory } from '../abstract-connectivity-node.factory';\nimport { SigfoxTabFactory } from './sigfox-tab.factory';\n\n@Injectable({ providedIn: 'root' })\nexport class SigfoxNodeFactory extends AbstractConnectivityNodeFactory {\n constructor(protected tabFactory: SigfoxTabFactory) {\n super(tabFactory);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { hookNavigator, hookTab } from '@c8y/ngx-components';\nimport { SigfoxNodeFactory } from './sigfox-node.factory';\nimport { SigfoxTabFactory } from './sigfox-tab.factory';\nimport { SigfoxGuard } from './sigfox.guard';\n\n@NgModule({\n providers: [SigfoxGuard, hookNavigator(SigfoxNodeFactory), hookTab(SigfoxTabFactory)]\n})\nexport class SigfoxModule {}\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { ConditionalTabsOutletComponent, CoreModule, Route } from '@c8y/ngx-components';\nimport { ActilityModule } from './actility/actility.module';\nimport { LoriotModule } from './loriot/loriot.module';\nimport { SigfoxModule } from './sigfox/sigfox.module';\n\nconst connectivityRoutes: Route[] = [\n {\n path: 'connectivitySettings',\n component: ConditionalTabsOutletComponent\n }\n];\n\n@NgModule({\n imports: [\n CoreModule,\n ActilityModule,\n SigfoxModule,\n LoriotModule,\n RouterModule.forChild(connectivityRoutes)\n ]\n})\nexport class ConnectivityModule {}\n","import { Injectable } from '@angular/core';\n\nimport { AppStateService } from '@c8y/ngx-components';\nimport { Permissions } from '@c8y/ngx-components';\n\n@Injectable()\nexport class SimGuard {\n private static readonly applicationName = 'connectivity';\n private showSimProvider: Promise<boolean>;\n\n constructor(\n private permissions: Permissions,\n private appState: AppStateService\n ) {}\n\n canActivate(): Promise<boolean> {\n if (this.showSimProvider === undefined) {\n const hasRole: Promise<boolean> = Promise.resolve(\n this.permissions.hasRole('ROLE_CONNECTIVITY_READ')\n );\n\n this.showSimProvider = hasRole.then(\n (hasPermissions: boolean) =>\n hasPermissions && this.appState.isApplicationAvailable(SimGuard.applicationName)\n );\n }\n\n return this.showSimProvider;\n }\n}\n","import { gettext } from '@c8y/ngx-components/gettext';\n\nexport const MESSAGES_CONNECTIVITY_SIM = {\n '^Cache duration$': {\n gettext: gettext('Cache duration')\n },\n '^Sets the duration how long information from the provider may be cached in seconds$': {\n gettext: gettext(\n 'Sets the duration in seconds how long the information from the provider may be cached.'\n )\n },\n '^Certificate$': {\n gettext: gettext('Certificate')\n },\n '^Certificate file$': {\n gettext: gettext('Certificate file')\n },\n '^API URL$': {\n gettext: gettext('API URL')\n },\n '^Sim source$': {\n gettext: gettext('SIM source')\n },\n '^source$': {\n gettext: gettext('source')\n },\n '^Password$': {\n gettext: gettext('Password')\n },\n '^Trust store password$': {\n gettext: gettext('Trust store password')\n },\n '^Trust store type$': {\n gettext: gettext('Trust store type')\n },\n '^License key$': {\n gettext: gettext('License key')\n },\n '^Username$': {\n gettext: gettext('Username')\n }\n} as const;\n","import { NgModule } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport {\n DroppedFile,\n hookPatternMessages,\n ProviderConfigurationModule,\n ProviderProperties\n} from '@c8y/ngx-components';\nimport { FormlyFieldConfig } from '@ngx-formly/core';\nimport { get } from 'lodash-es';\nimport { MESSAGES_CONNECTIVITY_SIM } from './pattern-messages.data';\nimport { SimGuard } from './sim.guard';\n\nexport async function encodeFiles(\n model: ProviderProperties,\n fields: FormlyFieldConfig[]\n): Promise<ProviderProperties> {\n const result: ProviderProperties = { ...model };\n const fileFields: FormlyFieldConfig[] = (get(fields, '[0].fieldGroup') || []).filter(\n (field: FormlyFieldConfig) => {\n return field.type === 'file' && field.templateOptions.contentEncoding === 'base64';\n }\n );\n\n for (const fileField of fileFields) {\n const files: DroppedFile[] = model[fileField.key as string];\n if (files && Array.isArray(files) && files.length) {\n if (fileField.templateOptions.maxAllowedFiles === 1) {\n result[fileField.key as string] = (await files[0].readAsDataURL()).replace(\n /data:\\S+;base64,/gi,\n ''\n );\n } else {\n const encodedFileContent: string[] = [];\n\n for (const file of files) {\n encodedFileContent.push((await file.readAsDataURL()).replace(/data:\\S+;base64,/gi, ''));\n }\n\n result[fileField.key as string] = encodedFileContent;\n }\n } else if (typeof files === 'string' || files instanceof String) {\n result[fileField.key as string] = files;\n }\n }\n return result;\n}\n\n@NgModule({\n providers: [SimGuard, hookPatternMessages(MESSAGES_CONNECTIVITY_SIM)],\n imports: [\n ProviderConfigurationModule.config([\n {\n navigation: {\n label: gettext('Connectivity'),\n path: 'connectivitySettings',\n icon: 'plug',\n parent: gettext('Settings'),\n priority: 1000,\n preventDuplicates: true\n },\n tab: {\n path: 'sim_provider_settings',\n label: 'SIM provider settings',\n icon: 'mobile',\n canActivate: [SimGuard]\n },\n layout: {\n pageTitle: gettext('Connectivity'),\n cardTitle: gettext('Settings'),\n description: gettext(\n `In order to see the 'Connectivity' tab in device details, the user needs to have 'Read' permission for 'Connectivity'. To change SIM card status and send text messages, the user needs to have 'Admin' permission for 'Connectivity'.`\n ),\n providerName: gettext('Provider'),\n providerNamePlaceholder: gettext('Select or type to filter providers'),\n providerNameNoMatchesHint: gettext('Select one of the existing providers.'),\n deleteRoles: ['ROLE_CONNECTIVITY_ADMIN'],\n deleteBtnLabel: gettext('Delete'),\n saveRoles: ['ROLE_CONNECTIVITY_ADMIN'],\n saveBtnLabel: gettext('Save'),\n beforeSaveHook: encodeFiles,\n configurationUpdatedSuccessMsg: gettext('Settings updated.'),\n deleteConfigurationModalTitle: gettext('Delete settings'),\n deleteConfigurationModalBody: gettext(\n `You are about to delete SIM provider settings. Do you want to proceed?`\n ),\n deleteConfigurationModalOkBtnLabel: gettext('Delete'),\n configurationDeletedSuccessMsg: gettext('Settings deleted.')\n },\n endpoint: {\n definitionsEndpoint: {\n baseUrl: 'service/connectivity/metadata',\n listUrl: 'definitions'\n },\n configurationEndpoint: {\n baseUrl: 'service/connectivity/metadata',\n listUrl: 'sim/provider'\n }\n }\n }\n ])\n ]\n})\nexport class SimModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AbstractConnectivityTabFactory","i1","i2.ActilityGuard","i1.ActilityTabFactory","i2.LoriotGuard","i1.LoriotTabFactory","i2.SigfoxGuard","i1.SigfoxTabFactory"],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, ViewChild, Optional, Inject, Component, NgModule } from '@angular/core';
3
+ import { gettext } from '@c8y/ngx-components/gettext';
3
4
  import * as i1 from '@c8y/ngx-components';
4
- import { gettext, CoreModule, hookNavigator, hookRoute, ViewContext } from '@c8y/ngx-components';
5
+ import { CoreModule, hookNavigator, hookRoute, ViewContext } from '@c8y/ngx-components';
5
6
  import * as i2 from '@c8y/ngx-components/context-dashboard';
6
7
  import { ContextDashboardModule, ContextDashboardComponent } from '@c8y/ngx-components/context-dashboard';
7
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-context-dashboard-cockpit-home-dashboard.mjs","sources":["../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.model.ts","../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.component.ts","../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.component.html","../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.module.ts","../../context-dashboard/cockpit-home-dashboard/c8y-ngx-components-context-dashboard-cockpit-home-dashboard.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { gettext, Widget } from '@c8y/ngx-components';\n\n/**\n * A hook to define the default widgets of the home dashboard in the cockpit app.\n */\nexport const COCKPIT_HOME_DASHBOARD_CONFIG = new InjectionToken('CockpitHomeDashboardConfig');\n\nexport interface CockpitDashboardConfig {\n /**\n * Allows to have customized dashboard context name in case the CockpitDashboardModule is used in different apps and should have individual home dashboards per app\n */\n dashboardName?: string;\n /**\n * Allows to define the default widgets shown on the Cockpit Homepage\n */\n defaultWidgets?: Widget[];\n /**\n * Allows to have a different page title than the default 'Home'\n */\n pageTitle?: string;\n /**\n * Allows to have individual home dashboards per user\n */\n userSpecific?: boolean;\n}\n\n/**\n * An array of widgets that is per default placed on the home dashboard of the cockpit app.\n */\nexport const DEFAULT_COCKPIT_HOME_WIDGETS = [\n {\n name: 'cockpit.welcome.widget',\n title: gettext('Welcome to Cockpit'),\n _x: 0,\n _y: 0,\n _height: 5,\n _width: 24,\n classes: { 'panel-title-hidden': true }\n },\n {\n name: 'Asset Alarms',\n title: gettext('Active, critical alarms'),\n _x: 0,\n _y: 5,\n _height: 4,\n _width: 12\n },\n {\n name: 'Recent Alarms',\n title: gettext('Recent alarms'),\n _x: 0,\n _y: 9,\n _height: 4,\n _width: 12\n },\n {\n name: 'Map',\n title: gettext('Map'),\n _x: 12,\n _y: 5,\n _height: 8,\n _width: 12\n }\n] as Partial<Widget>[] as Widget[];\n","import { Component, Inject, Optional, ViewChild } from '@angular/core';\nimport { AppStateService, CoreModule, gettext } from '@c8y/ngx-components';\nimport {\n CockpitDashboardConfig,\n COCKPIT_HOME_DASHBOARD_CONFIG,\n DEFAULT_COCKPIT_HOME_WIDGETS\n} from './cockpit-dashboard.model';\nimport {\n CanDeactivateComponent,\n ContextDashboardComponent,\n ContextDashboardModule\n} from '@c8y/ngx-components/context-dashboard';\n\n@Component({\n selector: 'c8y-cockpit-dashboard',\n templateUrl: './cockpit-dashboard.component.html',\n standalone: true,\n imports: [CoreModule, ContextDashboardModule]\n})\nexport class CockpitDashboardComponent implements CanDeactivateComponent {\n defaultWidgets = DEFAULT_COCKPIT_HOME_WIDGETS;\n dashboardName = 'home-cockpit1';\n pageTitle: string = gettext('Home');\n @ViewChild(ContextDashboardComponent, { static: true })\n contextDashboard: ContextDashboardComponent;\n\n constructor(\n private appState: AppStateService,\n @Optional()\n @Inject(COCKPIT_HOME_DASHBOARD_CONFIG)\n private homeDashboardConfig: CockpitDashboardConfig\n ) {\n const config = {\n ...this.homeDashboardConfig,\n dashboardName: appState.currentApplication.value?.config?.homeDashboardName,\n userSpecific: appState.currentApplication.value?.config?.userSpecificHomeDashboard\n };\n this.applyDashboardConfig(config);\n }\n\n canDeactivate(): Promise<boolean> {\n return this.contextDashboard.canDeactivate();\n }\n\n private applyDashboardConfig(config: CockpitDashboardConfig) {\n if (!config) {\n return;\n }\n\n if (config.dashboardName) {\n this.dashboardName = config.dashboardName;\n }\n\n if (config.defaultWidgets) {\n this.defaultWidgets = config.defaultWidgets;\n }\n\n if (config.userSpecific && this.appState.currentUser.value) {\n this.dashboardName = `${this.appState.currentUser.value.userName.replace(/\\./g, '__')}_${\n this.dashboardName\n }`;\n }\n\n if (config.pageTitle) {\n this.pageTitle = config.pageTitle;\n }\n }\n}\n","<c8y-title>\n {{ pageTitle | translate }}\n</c8y-title>\n\n<c8y-context-dashboard\n [name]=\"dashboardName\"\n [defaultWidgets]=\"defaultWidgets\"\n [canDelete]=\"false\"\n [hideAvailability]=\"true\"\n></c8y-context-dashboard>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { hookNavigator, gettext, hookRoute, ViewContext } from '@c8y/ngx-components';\nimport { CockpitDashboardComponent } from './cockpit-dashboard.component';\nimport { CockpitDashboardConfig, COCKPIT_HOME_DASHBOARD_CONFIG } from './cockpit-dashboard.model';\nimport { CanDeactivateComponent } from '@c8y/ngx-components/context-dashboard';\n\n@NgModule({\n providers: [\n hookNavigator({\n label: gettext('Home'),\n icon: 'home',\n priority: 10000,\n path: '/home',\n routerLinkExact: false\n }),\n hookRoute({\n path: 'home',\n component: CockpitDashboardComponent,\n canDeactivate: [(component: CanDeactivateComponent) => component.canDeactivate()],\n rootContext: ViewContext.Dashboard\n })\n ]\n})\nexport class CockpitHomeDashboardModule {}\n\n@NgModule({\n imports: [CockpitHomeDashboardModule]\n})\nexport class CockpitDashboardModule {\n static config(config: CockpitDashboardConfig = {}): ModuleWithProviders<CockpitDashboardModule> {\n return {\n ngModule: CockpitDashboardModule,\n providers: [\n {\n provide: COCKPIT_HOME_DASHBOARD_CONFIG,\n useValue: config\n }\n ]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-context-dashboard-cockpit-home-dashboard.mjs","sources":["../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.model.ts","../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.component.ts","../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.component.html","../../context-dashboard/cockpit-home-dashboard/cockpit-dashboard.module.ts","../../context-dashboard/cockpit-home-dashboard/c8y-ngx-components-context-dashboard-cockpit-home-dashboard.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { Widget } from '@c8y/ngx-components';\n\n/**\n * A hook to define the default widgets of the home dashboard in the cockpit app.\n */\nexport const COCKPIT_HOME_DASHBOARD_CONFIG = new InjectionToken('CockpitHomeDashboardConfig');\n\nexport interface CockpitDashboardConfig {\n /**\n * Allows to have customized dashboard context name in case the CockpitDashboardModule is used in different apps and should have individual home dashboards per app\n */\n dashboardName?: string;\n /**\n * Allows to define the default widgets shown on the Cockpit Homepage\n */\n defaultWidgets?: Widget[];\n /**\n * Allows to have a different page title than the default 'Home'\n */\n pageTitle?: string;\n /**\n * Allows to have individual home dashboards per user\n */\n userSpecific?: boolean;\n}\n\n/**\n * An array of widgets that is per default placed on the home dashboard of the cockpit app.\n */\nexport const DEFAULT_COCKPIT_HOME_WIDGETS = [\n {\n name: 'cockpit.welcome.widget',\n title: gettext('Welcome to Cockpit'),\n _x: 0,\n _y: 0,\n _height: 5,\n _width: 24,\n classes: { 'panel-title-hidden': true }\n },\n {\n name: 'Asset Alarms',\n title: gettext('Active, critical alarms'),\n _x: 0,\n _y: 5,\n _height: 4,\n _width: 12\n },\n {\n name: 'Recent Alarms',\n title: gettext('Recent alarms'),\n _x: 0,\n _y: 9,\n _height: 4,\n _width: 12\n },\n {\n name: 'Map',\n title: gettext('Map'),\n _x: 12,\n _y: 5,\n _height: 8,\n _width: 12\n }\n] as Partial<Widget>[] as Widget[];\n","import { Component, Inject, Optional, ViewChild } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { AppStateService, CoreModule } from '@c8y/ngx-components';\nimport {\n CockpitDashboardConfig,\n COCKPIT_HOME_DASHBOARD_CONFIG,\n DEFAULT_COCKPIT_HOME_WIDGETS\n} from './cockpit-dashboard.model';\nimport {\n CanDeactivateComponent,\n ContextDashboardComponent,\n ContextDashboardModule\n} from '@c8y/ngx-components/context-dashboard';\n\n@Component({\n selector: 'c8y-cockpit-dashboard',\n templateUrl: './cockpit-dashboard.component.html',\n standalone: true,\n imports: [CoreModule, ContextDashboardModule]\n})\nexport class CockpitDashboardComponent implements CanDeactivateComponent {\n defaultWidgets = DEFAULT_COCKPIT_HOME_WIDGETS;\n dashboardName = 'home-cockpit1';\n pageTitle: string = gettext('Home');\n @ViewChild(ContextDashboardComponent, { static: true })\n contextDashboard: ContextDashboardComponent;\n\n constructor(\n private appState: AppStateService,\n @Optional()\n @Inject(COCKPIT_HOME_DASHBOARD_CONFIG)\n private homeDashboardConfig: CockpitDashboardConfig\n ) {\n const config = {\n ...this.homeDashboardConfig,\n dashboardName: appState.currentApplication.value?.config?.homeDashboardName,\n userSpecific: appState.currentApplication.value?.config?.userSpecificHomeDashboard\n };\n this.applyDashboardConfig(config);\n }\n\n canDeactivate(): Promise<boolean> {\n return this.contextDashboard.canDeactivate();\n }\n\n private applyDashboardConfig(config: CockpitDashboardConfig) {\n if (!config) {\n return;\n }\n\n if (config.dashboardName) {\n this.dashboardName = config.dashboardName;\n }\n\n if (config.defaultWidgets) {\n this.defaultWidgets = config.defaultWidgets;\n }\n\n if (config.userSpecific && this.appState.currentUser.value) {\n this.dashboardName = `${this.appState.currentUser.value.userName.replace(/\\./g, '__')}_${\n this.dashboardName\n }`;\n }\n\n if (config.pageTitle) {\n this.pageTitle = config.pageTitle;\n }\n }\n}\n","<c8y-title>\n {{ pageTitle | translate }}\n</c8y-title>\n\n<c8y-context-dashboard\n [name]=\"dashboardName\"\n [defaultWidgets]=\"defaultWidgets\"\n [canDelete]=\"false\"\n [hideAvailability]=\"true\"\n></c8y-context-dashboard>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { hookNavigator, hookRoute, ViewContext } from '@c8y/ngx-components';\nimport { CockpitDashboardComponent } from './cockpit-dashboard.component';\nimport { CockpitDashboardConfig, COCKPIT_HOME_DASHBOARD_CONFIG } from './cockpit-dashboard.model';\nimport { CanDeactivateComponent } from '@c8y/ngx-components/context-dashboard';\n\n@NgModule({\n providers: [\n hookNavigator({\n label: gettext('Home'),\n icon: 'home',\n priority: 10000,\n path: '/home',\n routerLinkExact: false\n }),\n hookRoute({\n path: 'home',\n component: CockpitDashboardComponent,\n canDeactivate: [(component: CanDeactivateComponent) => component.canDeactivate()],\n rootContext: ViewContext.Dashboard\n })\n ]\n})\nexport class CockpitHomeDashboardModule {}\n\n@NgModule({\n imports: [CockpitHomeDashboardModule]\n})\nexport class CockpitDashboardModule {\n static config(config: CockpitDashboardConfig = {}): ModuleWithProviders<CockpitDashboardModule> {\n return {\n ngModule: CockpitDashboardModule,\n providers: [\n {\n provide: COCKPIT_HOME_DASHBOARD_CONFIG,\n useValue: config\n }\n ]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { EventEmitter, Output, Input, Component, forwardRef } from '@angular/core';
3
+ import { gettext } from '@c8y/ngx-components/gettext';
3
4
  import * as i2 from '@c8y/ngx-components';
4
- import { Permissions, C8yTranslatePipe, FormsModule, SelectModule, SupportedApps, gettext, CoreModule, ProductExperienceDirective } from '@c8y/ngx-components';
5
+ import { Permissions, C8yTranslatePipe, FormsModule, SelectModule, SupportedApps, CoreModule, ProductExperienceDirective } from '@c8y/ngx-components';
5
6
  import { ALL_GLOBAL_ROLES_SELECTED, PRODUCT_EXPERIENCE, TypeDashboardInfoComponent, DashboardDetailService } from './c8y-ngx-components-context-dashboard.mjs';
6
7
  import * as i5$1 from '@c8y/ngx-components/icon-selector';
7
8
  import { IconSelectorModule } from '@c8y/ngx-components/icon-selector';
@@ -272,4 +273,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
272
273
  }], ctorParameters: () => [{ type: i2.NavigatorService }, { type: DashboardDetailService }] });
273
274
 
274
275
  export { DashboardGeneralSettingsComponent };
275
- //# sourceMappingURL=c8y-ngx-components-context-dashboard-dashboard-general-settings.component-DjlpSztw.mjs.map
276
+ //# sourceMappingURL=c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BkcNSexF.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BkcNSexF.mjs","sources":["../../context-dashboard/dashboard-availability.component.ts","../../context-dashboard/dashboard-availability.component.html","../../context-dashboard/dashboard-settings/typed-dashboard-settings.component.ts","../../context-dashboard/dashboard-settings/typed-dashboard-settings.component.html","../../context-dashboard/dashboard-settings/dashboard-general-settings.component.ts","../../context-dashboard/dashboard-settings/dashboard-general-settings.component.html"],"sourcesContent":["import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { IUserGroup, UserGroupService } from '@c8y/client';\nimport {\n C8yTranslatePipe,\n FormsModule,\n GainsightService,\n Item,\n Permissions,\n SelectModule\n} from '@c8y/ngx-components';\nimport {\n DashboardGlobalRoles,\n ALL_GLOBAL_ROLES_SELECTED,\n PRODUCT_EXPERIENCE\n} from './context-dashboard.model';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { NgIf } from '@angular/common';\n\n@Component({\n selector: 'c8y-dashboard-availability',\n templateUrl: './dashboard-availability.component.html',\n standalone: true,\n imports: [C8yTranslatePipe, ReactiveFormsModule, PopoverModule, FormsModule, NgIf, SelectModule]\n})\nexport class DashboardAvailabilityComponent implements OnInit {\n /**\n * Ids of global roles assigned to the dashboard or a string \"all\" indicating the selection of all global roles.\n * The value undefined is treated as equivalent to 'all'.\n */\n @Input()\n get globalRolesIds(): DashboardGlobalRoles {\n return this._globalRolesIds;\n }\n set globalRolesIds(ids: DashboardGlobalRoles) {\n if (!ids || ids === ALL_GLOBAL_ROLES_SELECTED) {\n this._globalRolesIds = ALL_GLOBAL_ROLES_SELECTED;\n return;\n }\n this._globalRolesIds = [...ids];\n }\n @Output() globalRolesIdsChange = new EventEmitter<DashboardGlobalRoles>();\n globalRolesItems: Item[] = [];\n globalRolesItemsSelected: Item[] = [];\n selectHidden = false;\n private globalRoles: IUserGroup[] = [];\n private PAGE_SIZE = 100;\n private _globalRolesIds: DashboardGlobalRoles;\n\n constructor(\n private userGroupService: UserGroupService,\n private gainsightService: GainsightService,\n private permissions: Permissions\n ) {}\n\n async ngOnInit() {\n if (this.permissions.hasRole(Permissions.ROLE_USER_MANAGEMENT_READ)) {\n this.globalRoles = await this.getGlobalRoles();\n this.globalRolesItems = this.mapGlobalRolesToItems();\n this.globalRolesItemsSelected = this.getSelectedGlobalRolesItems();\n } else {\n this.selectHidden = true;\n }\n }\n\n onSelected(items: Item[]) {\n if (!items || !Array.isArray(items)) {\n return;\n }\n\n const allItemsSelected = items.length === this.globalRolesItems.length;\n this.globalRolesItemsSelected = items;\n\n if (allItemsSelected) {\n this.globalRolesIdsChange.emit(ALL_GLOBAL_ROLES_SELECTED);\n this.gainsightService.triggerEvent(PRODUCT_EXPERIENCE.DASHBOARD.EVENTS.DASHBOARDS, {\n component: PRODUCT_EXPERIENCE.DASHBOARD.COMPONENTS.DASHBOARD_AVAILABILITY,\n action: PRODUCT_EXPERIENCE.DASHBOARD.ACTIONS.APPLY_GLOBAL_ROLES_CHANGES,\n globalRoles: ALL_GLOBAL_ROLES_SELECTED\n });\n } else {\n const selectedGlobalRolesIds = items.map(i => i.id);\n this.globalRolesIdsChange.emit([...selectedGlobalRolesIds]);\n\n this.gainsightService.triggerEvent(PRODUCT_EXPERIENCE.DASHBOARD.EVENTS.DASHBOARDS, {\n component: PRODUCT_EXPERIENCE.DASHBOARD.COMPONENTS.DASHBOARD_AVAILABILITY,\n action: PRODUCT_EXPERIENCE.DASHBOARD.ACTIONS.APPLY_GLOBAL_ROLES_CHANGES,\n globalRoles: selectedGlobalRolesIds?.sort()?.join()\n });\n }\n }\n\n private async getGlobalRoles() {\n return (await this.userGroupService.list({ pageSize: this.PAGE_SIZE })).data;\n }\n\n private mapGlobalRolesToItems(): Item[] {\n return this.globalRoles.map(({ name, id }) => ({\n name,\n id\n }));\n }\n\n private getSelectedGlobalRolesItems(): Item[] {\n if (!this.globalRolesIds || this.globalRolesIds === ALL_GLOBAL_ROLES_SELECTED) {\n return this.globalRolesItems;\n }\n return this.globalRolesIds\n .map(globalRoleId => this.globalRolesItems.find(gR => gR.id === globalRoleId))\n .filter(Boolean);\n }\n}\n","<fieldset class=\"c8y-fieldset c8y-fieldset--lg\">\n <legend>{{ 'Availability`of dashboard based on permissions`' | translate }}</legend>\n <c8y-form-group>\n <label for=\"availability\">\n <span\n class=\"m-r-4\"\n id=\"availability\"\n >\n {{ 'Global roles' | translate }}\n </span>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select the global roles for which the dashboard will be available' | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </label>\n <c8y-select-legacy\n *ngIf=\"!selectHidden\"\n [items]=\"globalRolesItems\"\n [selected]=\"globalRolesItemsSelected\"\n (onChange)=\"onSelected($event)\"\n ></c8y-select-legacy>\n <p\n class=\"form-control-static\"\n *ngIf=\"selectHidden\"\n >\n {{ \"You don't have permission to change global roles.\" | translate }}\n </p>\n </c8y-form-group>\n</fieldset>\n","import { Component, EventEmitter, forwardRef, Input, OnInit, Output } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport {\n InterAppService,\n SupportedApps,\n SupportedAppKey,\n CoreModule,\n C8yTranslatePipe,\n ProductExperienceDirective\n} from '@c8y/ngx-components';\nimport { IApplication, InventoryService } from '@c8y/client';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n AllowTypeDashboard,\n ContextDashboardManagedObject,\n PRODUCT_EXPERIENCE\n} from '../context-dashboard.model';\nimport { Observable } from 'rxjs';\nimport { ActivatedRoute } from '@angular/router';\nimport { TypeDashboardInfoComponent } from '../type-dashboard-info/type-dashboard-info.component';\n\n@Component({\n selector: 'c8y-typed-dashboard-settings',\n templateUrl: './typed-dashboard-settings.component.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TypedDashboardSettingsComponent),\n multi: true\n }\n ],\n standalone: true,\n imports: [C8yTranslatePipe, CoreModule, TypeDashboardInfoComponent, ProductExperienceDirective]\n})\nexport class TypedDashboardSettingsComponent implements ControlValueAccessor, OnInit {\n value: boolean;\n touched = false;\n disabled = false;\n\n @Input() deviceTypeValue: string;\n @Input() displayDeviceTypeValue: string;\n @Input() formInvalid: boolean;\n @Input() mo: ContextDashboardManagedObject;\n @Input() isDevice: boolean;\n @Input() allowTypeDashboard: AllowTypeDashboard;\n @Output() onDuplicateWithoutType = new EventEmitter<void>();\n typedDashboardStatus: string;\n infoText: string;\n deviceTypeInstancesCount: number;\n showSourceNavigationLink$: Observable<boolean>;\n userDeviceManagementApp$: Observable<IApplication>;\n context: any;\n deviceManagementAppKey: SupportedAppKey = SupportedApps.devicemanagement;\n deviceManagementLinkTitle = gettext('Device Info page in {{ deviceManagementAppName }}');\n PRODUCT_EXPERIENCE = PRODUCT_EXPERIENCE;\n\n constructor(\n private inventory: InventoryService,\n private interAppService: InterAppService,\n private route: ActivatedRoute\n ) {}\n\n async ngOnInit() {\n this.userDeviceManagementApp$ = this.interAppService.getApp$(this.deviceManagementAppKey);\n this.context = this.route.parent.snapshot.data.contextData;\n this.showSourceNavigationLink$ = this.interAppService.shouldShowAppLink$(\n this.deviceManagementAppKey\n );\n }\n\n async goToDeviceView(): Promise<void> {\n await this.interAppService.navigateToApp(\n this.deviceManagementAppKey,\n `#/device/${this.context.id}/device-info`\n );\n }\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onChange = _ => {};\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onTouched = () => {};\n\n writeValue(value: boolean): void {\n this.value = value;\n this.updateTexts();\n if (value) {\n this.updateDeviceTypeCount();\n }\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(onTouched: any): void {\n this.onTouched = onTouched;\n }\n\n markAsTouched(): void {\n if (!this.touched) {\n this.onTouched();\n this.touched = true;\n }\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n async toggle(): Promise<void> {\n this.value = !this.value;\n this.onChange(this.value);\n if (this.value && this.deviceTypeInstancesCount == null) {\n this.setDisabledState(true);\n await this.updateDeviceTypeCount();\n }\n this.updateTexts();\n this.setDisabledState(false);\n }\n\n private updateTexts(): void {\n this.typedDashboardStatus = this.value\n ? gettext('Enabled`typed dashboard`')\n : gettext('Disabled`typed dashboard`');\n\n if (this.allowTypeDashboard === 'allow_if_type_filled') {\n this.infoText = gettext(\n `<p class=\"p-b-8\">Enabling this option uses the layout and configuration of this dashboard to create dashboard instances for all devices based on the device type.</p>\n <p class=\"p-b-16\">The current device doesn't have a device type assigned to it. Assign a device type to the device via the \"Asset properties\" widget in the <strong>Info</strong> tab of the device.</p>`\n );\n return;\n }\n\n if (this.value) {\n if (this.isDevice) {\n this.infoText = gettext(\n `<p class=\"p-b-8\">\n The layout and configuration of this dashboard is used by all devices based on device type <span class=\"tag tag--info text-12\">{{ displayDeviceTypeValue }}</span>.\n </p>\n <p class=\"p-b-16\">\n Disabling this option removes it from all devices based on the same type and makes it available only for the current instance.\n </p>`\n );\n } else {\n this.infoText = gettext(\n `<p class=\"p-b-8\">\n The layout and configuration of this dashboard is used by all assets based on asset model <span class=\"tag tag--info text-12\">{{ displayDeviceTypeValue }}</span>.\n </p>\n <p class=\"p-b-16\">\n Disabling this option removes it from all assets based on the same model and makes it available only for the current instance.\n </p>`\n );\n }\n } else {\n if (this.isDevice) {\n this.infoText = gettext(\n `<p>Enabling this option uses the layout and configuration of this dashboard to create dashboard instances for all devices based on the type <span class=\"tag tag--info text-12\">{{ displayDeviceTypeValue }}</span>.</p>`\n );\n } else {\n this.infoText = gettext(\n `<p>Enabling this option uses the layout and configuration of this dashboard to create dashboard instances for all assets based on the model <span class=\"tag tag--info text-12\">{{ displayDeviceTypeValue }}</span>.</p>`\n );\n }\n }\n }\n\n private async updateDeviceTypeCount(): Promise<void> {\n const count = await this.inventory.count({\n type: this.deviceTypeValue\n });\n this.deviceTypeInstancesCount = count.data;\n }\n}\n","<fieldset class=\"c8y-fieldset c8y-fieldset--lg\">\n <legend>{{ 'Dashboard template' | translate }}</legend>\n <div class=\"d-flex p-b-16 gap-16\">\n <label class=\"c8y-switch flex-no-shrink\">\n <input\n type=\"checkbox\"\n [checked]=\"value\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n />\n <span></span>\n <span>{{ typedDashboardStatus | translate }}</span>\n </label>\n <div class=\"flex-grow d-flex d-col\">\n <div\n class=\"flex-grow\"\n [innerHtml]=\"infoText | translate: { displayDeviceTypeValue: displayDeviceTypeValue }\"\n ></div>\n <button\n class=\"btn-link p-0 m-r-auto\"\n type=\"button\"\n *ngIf=\"allowTypeDashboard === 'allow_if_type_filled' && showSourceNavigationLink$ | async\"\n (click)=\"goToDeviceView()\"\n >\n {{\n deviceManagementLinkTitle\n | translate\n : {\n deviceManagementAppName:\n userDeviceManagementApp$ | async | humanizeAppName | async\n }\n }}\n <i c8yIcon=\"external-link\"></i>\n </button>\n </div>\n </div>\n\n <c8y-type-dashboard-info\n *ngIf=\"allowTypeDashboard === 'allow'\"\n [context]=\"mo\"\n [deviceTypeValue]=\"deviceTypeValue\"\n [displayDeviceTypeValue]=\"displayDeviceTypeValue\"\n ></c8y-type-dashboard-info>\n\n <div\n class=\"p-t-8 p-b-16\"\n *ngIf=\"mo?.c8y_Dashboard && value\"\n >\n <button\n class=\"btn btn-default btn-sm\"\n type=\"button\"\n c8yProductExperience\n [actionName]=\"PRODUCT_EXPERIENCE.DASHBOARD.EVENTS.DASHBOARD_TEMPLATE\"\n [actionData]=\"{\n component: PRODUCT_EXPERIENCE.DASHBOARD.COMPONENTS.TYPED_DASHBOARD_SETTINGS,\n action: PRODUCT_EXPERIENCE.DASHBOARD.ACTIONS.DUPLICATE_AS_REGULAR_DASHBOARD\n }\"\n (click)=\"onDuplicateWithoutType.emit()\"\n [disabled]=\"formInvalid\"\n >\n {{ 'Duplicate as regular dashboard' | translate }}\n </button>\n </div>\n</fieldset>\n","import { Component } from '@angular/core';\nimport {\n AllowTypeDashboard,\n ContextDashboard,\n ContextDashboardManagedObject,\n DashboardGlobalRoles,\n DashboardMetadata\n} from '../context-dashboard.model';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { C8yTranslatePipe, CoreModule, NavigatorNode, NavigatorService } from '@c8y/ngx-components';\nimport { Observable } from 'rxjs';\nimport { DashboardDetailService } from '../dashboard-detail.service';\nimport { IconSelectorModule } from '@c8y/ngx-components/icon-selector';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { DashboardAvailabilityComponent } from '../dashboard-availability.component';\nimport { TypedDashboardSettingsComponent } from './typed-dashboard-settings.component';\n\n@Component({\n selector: 'c8y-dashboard-general-settings',\n templateUrl: './dashboard-general-settings.component.html',\n standalone: true,\n imports: [\n CoreModule,\n IconSelectorModule,\n C8yTranslatePipe,\n PopoverModule,\n DashboardAvailabilityComponent,\n TypedDashboardSettingsComponent\n ]\n})\nexport class DashboardGeneralSettingsComponent implements Omit<DashboardMetadata, 'context'> {\n isReport: boolean;\n isNamedDashboard: boolean;\n hideAvailability: boolean;\n dashboard: ContextDashboard;\n deviceTypeValue: string;\n displayDeviceTypeValue: string;\n allowTypeDashboard: AllowTypeDashboard;\n isDevice: boolean;\n mo: ContextDashboardManagedObject;\n\n generalSettingsForm: DashboardDetailService['generalSettingsForm'];\n dashboardName: string;\n navigatorNodes$: Observable<NavigatorNode[]>;\n globalRolesIds: DashboardGlobalRoles;\n readonly priorityExampleLabel = gettext('e.g. {{ example }}');\n readonly positionInTabsExampleLabel = gettext('Position in tabs (10000 first, -10000 last)');\n namePlaceholder: string;\n constructor(\n private navigatorService: NavigatorService,\n private dashboardDetailService: DashboardDetailService\n ) {}\n\n ngOnInit() {\n this.generalSettingsForm = this.dashboardDetailService.generalSettingsForm;\n Object.assign(this, this.dashboardDetailService.details);\n this.namePlaceholder = this.isReport ? gettext('e.g. My report') : gettext('e.g. My dashboard');\n this.navigatorNodes$ = this.navigatorService.items$;\n this.globalRolesIds = this.generalSettingsForm.value.globalRolesIds;\n }\n\n changeGlobalRoleIds() {\n this.generalSettingsForm.get('globalRolesIds').setValue(this.globalRolesIds);\n this.generalSettingsForm.markAsDirty();\n }\n\n async duplicateWithoutType() {\n await this.dashboardDetailService.duplicateWithoutTypeFn();\n }\n}\n","<div\n class=\"row\"\n [formGroup]=\"generalSettingsForm\"\n>\n <div\n class=\"col-xs-12 p-b-24\"\n [ngClass]=\"{ 'col-md-6': !isReport, 'col-md-8': isReport }\"\n *ngIf=\"!isNamedDashboard || isReport\"\n >\n <fieldset class=\"c8y-fieldset c8y-fieldset--lg m-b-24\">\n <legend>{{ 'Navigation' | translate }}</legend>\n <div class=\"d-flex gap-16\">\n <c8y-form-group>\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [iconSize]=\"24\"\n name=\"icon\"\n formControlName=\"icon\"\n ></c8y-icon-selector-wrapper>\n </c8y-form-group>\n <c8y-form-group class=\"flex-grow\">\n <label for=\"menuLabel\">\n {{ 'Menu label' | translate }}\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Menu label to display in submenu when dashboard is attached' | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </label>\n <input\n class=\"form-control\"\n id=\"menuLabel\"\n placeholder=\"{{ namePlaceholder | translate }}\"\n name=\"name\"\n type=\"text\"\n formControlName=\"name\"\n />\n </c8y-form-group>\n </div>\n\n <c8y-form-group>\n <label for=\"description\">{{ 'Description ' | translate }}</label>\n <textarea\n class=\"form-control\"\n id=\"description\"\n name=\"description\"\n c8y-textarea-autoresize\n formControlName=\"description\"\n ></textarea>\n </c8y-form-group>\n\n <div class=\"row\">\n <div\n class=\"col-lg-7 col-xs-12\"\n *ngIf=\"!isReport\"\n >\n <c8y-form-group>\n <label for=\"position\">\n {{ 'Position in tabs' | translate }}\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{ positionInTabsExampleLabel | translate }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </label>\n <input\n class=\"form-control\"\n id=\"positionNav\"\n placeholder=\"{{ priorityExampleLabel | translate: { example: '500' } }}\"\n name=\"priority\"\n for=\"position\"\n type=\"number\"\n formControlName=\"priority\"\n />\n </c8y-form-group>\n </div>\n\n <div\n class=\"col-xs-6\"\n *ngIf=\"isReport\"\n >\n <label translate>Navigator menu item</label>\n <c8y-form-group>\n <label\n class=\"c8y-switch\"\n title=\"{{ 'Show in navigator' | translate }}\"\n >\n <input\n type=\"checkbox\"\n formControlName=\"c8y_IsNavigatorNode\"\n />\n <span></span>\n <span>{{ 'Show in navigator' | translate }}</span>\n </label>\n </c8y-form-group>\n </div>\n\n <div\n class=\"col-xs-6\"\n *ngIf=\"isReport && generalSettingsForm.value.c8y_IsNavigatorNode\"\n >\n <c8y-form-group>\n <label\n class=\"d-block\"\n for=\"position\"\n >\n {{ 'Position in navigator' | translate }}\n <ng-template #positionInNavPop>\n <span>\n {{ positionInTabsExampleLabel | translate }}&nbsp;\n {{ 'Existing nodes:' | translate }}\n </span>\n <ul class=\"list-unstyled m-t-16 m-b-0\">\n <li\n class=\"p-t-4 p-b-4\"\n title=\"{{ node.label | translate }}\"\n *ngFor=\"let node of navigatorNodes$ | async\"\n >\n <div class=\"icon-flex fit-w\">\n <i [c8yIcon]=\"node.icon\"></i>\n <span class=\"text-truncate m-l-4 m-r-16 flex-grow\">\n {{ node.label | translate }}\n </span>\n <span class=\"text-medium flex-no-shrink\">{{ node.priority }}</span>\n </div>\n </li>\n </ul>\n </ng-template>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"positionInNavPop\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </label>\n <input\n class=\"form-control\"\n placeholder=\"{{ priorityExampleLabel | translate: { example: '500' } }}\"\n name=\"priority\"\n for=\"position\"\n type=\"number\"\n formControlName=\"priority\"\n />\n </c8y-form-group>\n </div>\n </div>\n </fieldset>\n <c8y-dashboard-availability\n *ngIf=\"\n !!isReport === false &&\n allowTypeDashboard &&\n deviceTypeValue &&\n generalSettingsForm.get('deviceType') &&\n !hideAvailability\n \"\n [(globalRolesIds)]=\"globalRolesIds\"\n (globalRolesIdsChange)=\"changeGlobalRoleIds()\"\n ></c8y-dashboard-availability>\n </div>\n\n <div class=\"col-xs-12 col-md-6 p-b-24\">\n <c8y-typed-dashboard-settings\n *ngIf=\"allowTypeDashboard !== 'disallow'\"\n formControlName=\"deviceType\"\n [deviceTypeValue]=\"deviceTypeValue\"\n [displayDeviceTypeValue]=\"displayDeviceTypeValue\"\n [formInvalid]=\"generalSettingsForm.invalid\"\n [mo]=\"mo\"\n [isDevice]=\"isDevice\"\n [allowTypeDashboard]=\"allowTypeDashboard\"\n (onDuplicateWithoutType)=\"duplicateWithoutType()\"\n ></c8y-typed-dashboard-settings>\n <c8y-dashboard-availability\n *ngIf=\"\n !!isReport === false &&\n (!allowTypeDashboard || !deviceTypeValue || !generalSettingsForm.get('deviceType')) &&\n !hideAvailability\n \"\n [(globalRolesIds)]=\"globalRolesIds\"\n (globalRolesIdsChange)=\"changeGlobalRoleIds()\"\n ></c8y-dashboard-availability>\n </div>\n</div>\n"],"names":["i3","i1","i2.DashboardDetailService","i4","i5","i6"],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component } from '@angular/core';
3
+ import { gettext } from '@c8y/ngx-components/gettext';
3
4
  import * as i2$1 from '@c8y/ngx-components';
4
- import { gettext, C8yTranslatePipe, CoreModule } from '@c8y/ngx-components';
5
+ import { C8yTranslatePipe, CoreModule } from '@c8y/ngx-components';
5
6
  import * as i2 from '@ngx-translate/core';
6
7
  import { cloneDeep } from 'lodash-es';
7
8
  import { ContextDashboardService, DashboardDetailService } from './c8y-ngx-components-context-dashboard.mjs';
@@ -114,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
114
115
  }], ctorParameters: () => [{ type: i2.TranslateService }, { type: ContextDashboardService }, { type: DashboardDetailService }] });
115
116
 
116
117
  export { DashboardVersionHistoryComponent };
117
- //# sourceMappingURL=c8y-ngx-components-context-dashboard-dashboard-version-history.component-B2zLhv0X.mjs.map
118
+ //# sourceMappingURL=c8y-ngx-components-context-dashboard-dashboard-version-history.component-D9W68e7h.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c8y-ngx-components-context-dashboard-dashboard-version-history.component-D9W68e7h.mjs","sources":["../../context-dashboard/dashboard-settings/dashboard-version-history.component.ts","../../context-dashboard/dashboard-settings/dashboard-version-history.component.html"],"sourcesContent":["import { Component } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { C8yTranslatePipe, CoreModule } from '@c8y/ngx-components';\nimport { ContextDashboard } from '../context-dashboard.model';\nimport { TranslateService } from '@ngx-translate/core';\nimport { cloneDeep } from 'lodash-es';\nimport { ContextDashboardService } from '../context-dashboard.service';\nimport { DashboardDetailService } from '../dashboard-detail.service';\n\n@Component({\n selector: 'c8y-dashboard-version-history',\n templateUrl: './dashboard-version-history.component.html',\n standalone: true,\n imports: [C8yTranslatePipe, CoreModule]\n})\nexport class DashboardVersionHistoryComponent {\n dashboardHistory: ContextDashboard[] = [];\n isReport: boolean;\n dashboardHistoryExtended: (ContextDashboard & { descriptionText?: string })[] = [];\n restoredDashboardMessage = gettext(\n 'Restored dashboard state from {{ restoredStateCreationDate }}'\n );\n versionHistoryLimitMessage = gettext(\n 'Store up to {{ versionHistoryLimit }} dashboard versions. Any additional versions will replace/delete older ones'\n );\n\n constructor(\n private translateService: TranslateService,\n public contextDashboardService: ContextDashboardService,\n private dashboardDetailService: DashboardDetailService\n ) {}\n\n ngOnInit() {\n this.isReport = this.dashboardDetailService.details.isReport;\n this.dashboardHistory = this.dashboardDetailService.details.mo.c8y_DashboardHistory;\n this.generateDashboardHistoryDescription();\n }\n\n generateDashboardHistoryDescription() {\n for (const dashboard of this.dashboardHistory) {\n const copiedDashboard: ContextDashboard & { descriptionText?: string } = { ...dashboard };\n\n let settingChangesMessage = '';\n let assetModelMessage = '';\n let widgetChanges = '';\n\n if (dashboard.historyDescription.changeType === 'create') {\n copiedDashboard.descriptionText = this.translateService.instant(\n this.isReport ? gettext('Report created.') : gettext('Dashboard created.')\n );\n this.dashboardHistoryExtended.push(copiedDashboard);\n continue;\n }\n if (dashboard.historyDescription.changeType === 'reset') {\n copiedDashboard.descriptionText = this.translateService.instant(gettext('Reset widgets'));\n this.dashboardHistoryExtended.push(copiedDashboard);\n continue;\n }\n\n const isDashboardUpdated = dashboard.historyDescription.dashboardSettingChanges?.length > 0;\n if (isDashboardUpdated) {\n const translatedValuesChanged = dashboard.historyDescription.dashboardSettingChanges\n .map(val => this.translateService.instant(val))\n .join(', ');\n settingChangesMessage = this.translateService.instant(\n this.isReport\n ? gettext('Report updated: {{ values }}.')\n : gettext('Dashboard updated: {{ values }}.'),\n { values: translatedValuesChanged }\n );\n }\n\n const isDeviceDashboard = dashboard.historyDescription.deviceType != null && !this.isReport;\n if (isDeviceDashboard) {\n assetModelMessage = this.translateService.instant(\n dashboard.historyDescription.deviceType\n ? gettext('Dashboard asset model has been enabled.')\n : gettext('Dashboard asset model has been disabled.')\n );\n }\n\n if (dashboard.historyDescription.widgetChanges) {\n for (const change in dashboard.historyDescription.widgetChanges) {\n const widgetList = dashboard.historyDescription.widgetChanges[change];\n if (!widgetList) {\n continue;\n }\n const translatedWidgetList = dashboard.translateWidgetTitle\n ? widgetList.map(widget => this.translateService.instant(widget))\n : widgetList;\n switch (change) {\n case 'added':\n widgetChanges =\n widgetChanges +\n this.translateService.instant(gettext('Added widgets: {{ widgetList }}. '), {\n widgetList: `\"${translatedWidgetList.join('\", \"')}\"`\n });\n break;\n case 'removed':\n widgetChanges =\n widgetChanges +\n this.translateService.instant(gettext('Removed widgets: {{ widgetList }}. '), {\n widgetList: `\"${translatedWidgetList.join('\", \"')}\"`\n });\n break;\n case 'config':\n widgetChanges =\n widgetChanges +\n this.translateService.instant(gettext('Updated widgets: {{ widgetList }}. '), {\n widgetList: `\"${translatedWidgetList.join('\", \"')}\"`\n });\n break;\n case 'arrangement':\n widgetChanges =\n widgetChanges +\n this.translateService.instant(gettext('Rearranged widgets: {{ widgetList }}. '), {\n widgetList: `\"${translatedWidgetList.join('\", \"')}\"`\n });\n break;\n default:\n break;\n }\n }\n }\n\n copiedDashboard.descriptionText = `${settingChangesMessage} ${assetModelMessage} ${widgetChanges}`;\n this.dashboardHistoryExtended.push(copiedDashboard);\n }\n }\n\n revertDashboard(dashboard: ContextDashboard) {\n const newDashboard = cloneDeep(dashboard);\n newDashboard.historyDescription.restored = dashboard.created;\n this.dashboardDetailService.revertToDashboardFn(newDashboard);\n }\n}\n","<div class=\"bg-component p-t-8 p-b-8 separator-bottom text-center\">\n <i\n class=\"text-info m-r-4\"\n c8yIcon=\"info\"\n ></i>\n {{\n versionHistoryLimitMessage\n | translate: { versionHistoryLimit: contextDashboardService.VERSION_HISTORY_SIZE_LIMIT }\n }}\n</div>\n<c8y-list-group class=\"p-t-24 p-b-24\">\n <c8y-li-timeline\n *ngFor=\"let dashboard of dashboardHistoryExtended; index as i\"\n [ngClass]=\"{ active: i === 0 }\"\n >\n {{ dashboard.created | date: 'mediumDate' }}\n {{ dashboard.created | date: 'shortTime' }}\n <c8y-li data-cy=\"c8y-dashboard-version-history--history-row\">\n <c8y-li-body>\n <div class=\"d-flex a-i-start\">\n <div class=\"flex-grow\">\n <span\n class=\"text-truncate-wrap\"\n title=\"{{ dashboard.descriptionText }}\"\n data-cy=\"c8y-dashboard-version-history--history-title\"\n >\n {{ dashboard.descriptionText }}\n {{\n dashboard.historyDescription.restored\n ? (restoredDashboardMessage\n | translate\n : {\n restoredStateCreationDate: dashboard.historyDescription.restored | c8yDate\n })\n : ''\n }}\n </span>\n <small\n class=\"text-muted\"\n title=\"{{ 'by`user`' | translate }} {{ dashboard.author }}\"\n *ngIf=\"dashboard.author\"\n >\n <div class=\"icon-flex\">\n <i c8yIcon=\"c8y-user\"></i>\n {{ dashboard.author }}\n </div>\n </small>\n </div>\n\n <span\n class=\"label label-primary m-l-auto\"\n title=\"{{ 'The last saved status of the dashboard' | translate }}\"\n *ngIf=\"i === 0\"\n >\n {{ 'Current`dashboard status`' | translate }}\n </span>\n <span\n class=\"m-l-auto showOnHover\"\n *ngIf=\"dashboardHistoryExtended.length > 1 && i > 0\"\n >\n <button\n class=\"btn btn-default btn-sm\"\n title=\"{{ 'Restore the dashboard to this status' | translate }}\"\n type=\"button\"\n (click)=\"revertDashboard(dashboard)\"\n >\n {{ 'Restore' | translate }}\n </button>\n </span>\n </div>\n </c8y-li-body>\n </c8y-li>\n </c8y-li-timeline>\n</c8y-list-group>\n"],"names":["i1","i2.ContextDashboardService","i3.DashboardDetailService","i4","i5"],"mappings":"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"}