@c8y/ngx-components 1022.10.1 → 1022.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (695) hide show
  1. package/actility-device-registration/actility-device-registration-button.component.d.ts +1 -1
  2. package/actility-device-registration/actility-device-registration-button.component.d.ts.map +1 -1
  3. package/actility-device-registration/actility-device-registration.component.d.ts +1 -1
  4. package/actility-device-registration/actility-device-registration.component.d.ts.map +1 -1
  5. package/actility-device-registration/actility-device-registration.module.d.ts +4 -4
  6. package/actility-device-registration/actility-device-registration.module.d.ts.map +1 -1
  7. package/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.d.ts +1 -1
  8. package/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.d.ts.map +1 -1
  9. package/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.d.ts +25 -1
  10. package/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.d.ts.map +1 -1
  11. package/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.d.ts +1 -1
  12. package/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.d.ts.map +1 -1
  13. package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.d.ts +1 -1
  14. package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.d.ts.map +1 -1
  15. package/alarm-event-selector/alarm-event-selector.component.d.ts +1 -1
  16. package/alarm-event-selector/alarm-event-selector.component.d.ts.map +1 -1
  17. package/alarm-event-selector/alarm-event-selector.module.d.ts +15 -15
  18. package/alarm-event-selector/alarm-event-selector.module.d.ts.map +1 -1
  19. package/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.d.ts +1 -1
  20. package/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.d.ts.map +1 -1
  21. package/alarm-event-selector/pipes/includes-alarm.pipe.d.ts +1 -1
  22. package/alarm-event-selector/pipes/includes-alarm.pipe.d.ts.map +1 -1
  23. package/alarms/alarm-details.component.d.ts +1 -1
  24. package/alarms/alarm-details.component.d.ts.map +1 -1
  25. package/alarms/alarm-empty.component.d.ts +1 -1
  26. package/alarms/alarm-empty.component.d.ts.map +1 -1
  27. package/alarms/alarm-info.component.d.ts +1 -1
  28. package/alarms/alarm-info.component.d.ts.map +1 -1
  29. package/alarms/alarm-severities-to-title.pipe.d.ts +1 -1
  30. package/alarms/alarm-severities-to-title.pipe.d.ts.map +1 -1
  31. package/alarms/alarm-severity-to-label.pipe.d.ts +1 -1
  32. package/alarms/alarm-severity-to-label.pipe.d.ts.map +1 -1
  33. package/alarms/alarm-status-to-icon.pipe.d.ts +1 -1
  34. package/alarms/alarm-status-to-icon.pipe.d.ts.map +1 -1
  35. package/alarms/alarm-status-to-label.pipe.d.ts +1 -1
  36. package/alarms/alarm-status-to-label.pipe.d.ts.map +1 -1
  37. package/alarms/alarms-date-filter.component.d.ts +1 -1
  38. package/alarms/alarms-date-filter.component.d.ts.map +1 -1
  39. package/alarms/alarms-filter.component.d.ts +1 -1
  40. package/alarms/alarms-filter.component.d.ts.map +1 -1
  41. package/alarms/alarms-icon.component.d.ts +1 -1
  42. package/alarms/alarms-icon.component.d.ts.map +1 -1
  43. package/alarms/alarms-interval-refresh.component.d.ts +1 -1
  44. package/alarms/alarms-interval-refresh.component.d.ts.map +1 -1
  45. package/alarms/alarms-list.component.d.ts +1 -1
  46. package/alarms/alarms-list.component.d.ts.map +1 -1
  47. package/alarms/alarms-type-filter.component.d.ts +1 -1
  48. package/alarms/alarms-type-filter.component.d.ts.map +1 -1
  49. package/alarms/alarms.component.d.ts +1 -1
  50. package/alarms/alarms.component.d.ts.map +1 -1
  51. package/alarms/alarms.module.d.ts +27 -27
  52. package/alarms/alarms.module.d.ts.map +1 -1
  53. package/alarms/audit-changes-message.pipe.d.ts +1 -1
  54. package/alarms/audit-changes-message.pipe.d.ts.map +1 -1
  55. package/api/api.service.d.ts +8 -0
  56. package/api/api.service.d.ts.map +1 -1
  57. package/app-logs/app-logs-auto-refresh.component.d.ts +1 -1
  58. package/app-logs/app-logs-auto-refresh.component.d.ts.map +1 -1
  59. package/app-logs/app-logs-auto-refresh.module.d.ts +4 -4
  60. package/app-logs/app-logs-auto-refresh.module.d.ts.map +1 -1
  61. package/assets-navigator/asset-selector/asset-selector-node.component.d.ts +1 -1
  62. package/assets-navigator/asset-selector/asset-selector-node.component.d.ts.map +1 -1
  63. package/assets-navigator/asset-selector/asset-selector.component.d.ts +12 -1
  64. package/assets-navigator/asset-selector/asset-selector.component.d.ts.map +1 -1
  65. package/assets-navigator/asset-selector/asset-selector.module.d.ts +8 -8
  66. package/assets-navigator/asset-selector/asset-selector.module.d.ts.map +1 -1
  67. package/assets-navigator/asset-selector/miller-view.component.d.ts +1 -1
  68. package/assets-navigator/asset-selector/miller-view.component.d.ts.map +1 -1
  69. package/auth-configuration/basic-settings/auth-configuration.component.d.ts +1 -1
  70. package/auth-configuration/basic-settings/auth-configuration.component.d.ts.map +1 -1
  71. package/auth-configuration/basic-settings/basic-auth-settings.component.d.ts +1 -1
  72. package/auth-configuration/basic-settings/basic-auth-settings.component.d.ts.map +1 -1
  73. package/auth-configuration/basic-settings/basic-settings.module.d.ts +8 -8
  74. package/auth-configuration/basic-settings/basic-settings.module.d.ts.map +1 -1
  75. package/auth-configuration/basic-settings/login-settings.component.d.ts +2 -2
  76. package/auth-configuration/basic-settings/login-settings.component.d.ts.map +1 -1
  77. package/auth-configuration/basic-settings/session-configuration.component.d.ts +1 -1
  78. package/auth-configuration/basic-settings/session-configuration.component.d.ts.map +1 -1
  79. package/auth-configuration/basic-settings/tfa-settings.component.d.ts +1 -1
  80. package/auth-configuration/basic-settings/tfa-settings.component.d.ts.map +1 -1
  81. package/auth-configuration/sso-configuration/sso-configuration.component.d.ts +1 -1
  82. package/auth-configuration/sso-configuration/sso-configuration.component.d.ts.map +1 -1
  83. package/auth-configuration/sso-configuration/sso-configuration.module.d.ts +24 -24
  84. package/auth-configuration/sso-configuration/sso-configuration.module.d.ts.map +1 -1
  85. package/auth-configuration/sso-configuration/template-parts/access-mapping/access-mapping.component.d.ts +1 -1
  86. package/auth-configuration/sso-configuration/template-parts/access-mapping/access-mapping.component.d.ts.map +1 -1
  87. package/auth-configuration/sso-configuration/template-parts/access-mapping/child-predicates.component.d.ts +1 -1
  88. package/auth-configuration/sso-configuration/template-parts/access-mapping/child-predicates.component.d.ts.map +1 -1
  89. package/auth-configuration/sso-configuration/template-parts/access-mapping/dynamic-access-mapping.component.d.ts +1 -1
  90. package/auth-configuration/sso-configuration/template-parts/access-mapping/dynamic-access-mapping.component.d.ts.map +1 -1
  91. package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-mapping.component.d.ts +1 -1
  92. package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-mapping.component.d.ts.map +1 -1
  93. package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-modal.component.d.ts +1 -1
  94. package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-modal.component.d.ts.map +1 -1
  95. package/auth-configuration/sso-configuration/template-parts/basic-configuration.component.d.ts +1 -1
  96. package/auth-configuration/sso-configuration/template-parts/basic-configuration.component.d.ts.map +1 -1
  97. package/auth-configuration/sso-configuration/template-parts/external-token-config.component.d.ts +1 -1
  98. package/auth-configuration/sso-configuration/template-parts/external-token-config.component.d.ts.map +1 -1
  99. package/auth-configuration/sso-configuration/template-parts/logout-configuration.component.d.ts +1 -1
  100. package/auth-configuration/sso-configuration/template-parts/logout-configuration.component.d.ts.map +1 -1
  101. package/auth-configuration/sso-configuration/template-parts/request-configuration.component.d.ts +1 -1
  102. package/auth-configuration/sso-configuration/template-parts/request-configuration.component.d.ts.map +1 -1
  103. package/auth-configuration/sso-configuration/template-parts/signature-configuration.component.d.ts +1 -1
  104. package/auth-configuration/sso-configuration/template-parts/signature-configuration.component.d.ts.map +1 -1
  105. package/auth-configuration/sso-configuration/template-parts/user-data-mapping.component.d.ts +1 -1
  106. package/auth-configuration/sso-configuration/template-parts/user-data-mapping.component.d.ts.map +1 -1
  107. package/auth-configuration/sso-configuration/template-parts/user-id-configuration.component.d.ts +1 -1
  108. package/auth-configuration/sso-configuration/template-parts/user-id-configuration.component.d.ts.map +1 -1
  109. package/auth-configuration/sso-configuration/templates/aad-template.component.d.ts +1 -1
  110. package/auth-configuration/sso-configuration/templates/aad-template.component.d.ts.map +1 -1
  111. package/auth-configuration/sso-configuration/templates/custom-template.component.d.ts +1 -1
  112. package/auth-configuration/sso-configuration/templates/custom-template.component.d.ts.map +1 -1
  113. package/auth-configuration/sso-configuration/templates/key-cloak-template.component.d.ts +1 -1
  114. package/auth-configuration/sso-configuration/templates/key-cloak-template.component.d.ts.map +1 -1
  115. package/bookmarks/bookmarks.component.d.ts +1 -1
  116. package/bookmarks/bookmarks.component.d.ts.map +1 -1
  117. package/bookmarks/bookmarks.module.d.ts +7 -7
  118. package/bookmarks/bookmarks.module.d.ts.map +1 -1
  119. package/bookmarks/edit-bookmarks/edit-bookmarks.component.d.ts +1 -1
  120. package/bookmarks/edit-bookmarks/edit-bookmarks.component.d.ts.map +1 -1
  121. package/child-devices/child-devices.component.d.ts +1 -1
  122. package/child-devices/child-devices.component.d.ts.map +1 -1
  123. package/child-devices/child-devices.module.d.ts +5 -5
  124. package/child-devices/child-devices.module.d.ts.map +1 -1
  125. package/cockpit-config/cockpit-config.module.d.ts +17 -17
  126. package/cockpit-config/cockpit-config.module.d.ts.map +1 -1
  127. package/cockpit-config/cockpit-configuration.component.d.ts +1 -1
  128. package/cockpit-config/cockpit-configuration.component.d.ts.map +1 -1
  129. package/cockpit-config/feature-config.component.d.ts +1 -1
  130. package/cockpit-config/feature-config.component.d.ts.map +1 -1
  131. package/cockpit-config/home-dashboard-config.component.d.ts +1 -1
  132. package/cockpit-config/home-dashboard-config.component.d.ts.map +1 -1
  133. package/cockpit-config/misc-config.component.d.ts +1 -1
  134. package/cockpit-config/misc-config.component.d.ts.map +1 -1
  135. package/cockpit-config/root-node-config.component.d.ts +1 -1
  136. package/cockpit-config/root-node-config.component.d.ts.map +1 -1
  137. package/cockpit-config/setup/cockpit-setup-step1.component.d.ts +1 -1
  138. package/cockpit-config/setup/cockpit-setup-step1.component.d.ts.map +1 -1
  139. package/cockpit-config/setup/cockpit-setup-step2.component.d.ts +1 -1
  140. package/cockpit-config/setup/cockpit-setup-step2.component.d.ts.map +1 -1
  141. package/cockpit-config/setup/cockpit-setup-step3.component.d.ts +1 -1
  142. package/cockpit-config/setup/cockpit-setup-step3.component.d.ts.map +1 -1
  143. package/cockpit-config/setup/cockpit-setup-step4.component.d.ts +1 -1
  144. package/cockpit-config/setup/cockpit-setup-step4.component.d.ts.map +1 -1
  145. package/cockpit-config/setup/cockpit-setup-stepper-buttons.component.d.ts +1 -1
  146. package/cockpit-config/setup/cockpit-setup-stepper-buttons.component.d.ts.map +1 -1
  147. package/context-dashboard/add-dashboard.component.d.ts +1 -1
  148. package/context-dashboard/add-dashboard.component.d.ts.map +1 -1
  149. package/context-dashboard/context-dashboard.component.d.ts +2 -1
  150. package/context-dashboard/context-dashboard.component.d.ts.map +1 -1
  151. package/context-dashboard/context-dashboard.model.d.ts +0 -1
  152. package/context-dashboard/context-dashboard.model.d.ts.map +1 -1
  153. package/context-dashboard/context-dashboard.module.d.ts +26 -19
  154. package/context-dashboard/context-dashboard.module.d.ts.map +1 -1
  155. package/context-dashboard/context-dashboard.service.d.ts +6 -1
  156. package/context-dashboard/context-dashboard.service.d.ts.map +1 -1
  157. package/context-dashboard/dashboard-detail.component.d.ts +2 -2
  158. package/context-dashboard/dashboard-detail.component.d.ts.map +1 -1
  159. package/context-dashboard/device-info-dashboard/device-info-dashboard.component.d.ts +1 -1
  160. package/context-dashboard/device-info-dashboard/device-info-dashboard.component.d.ts.map +1 -1
  161. package/context-dashboard/device-info-dashboard/device-info-dashboard.module.d.ts +5 -5
  162. package/context-dashboard/device-info-dashboard/device-info-dashboard.module.d.ts.map +1 -1
  163. package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.component.d.ts +1 -1
  164. package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.component.d.ts.map +1 -1
  165. package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.module.d.ts +5 -5
  166. package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.module.d.ts.map +1 -1
  167. package/context-dashboard/paste-dashboard-action.component.d.ts +1 -1
  168. package/context-dashboard/paste-dashboard-action.component.d.ts.map +1 -1
  169. package/context-dashboard/widget-config.component.d.ts +1 -1
  170. package/context-dashboard/widget-config.component.d.ts.map +1 -1
  171. package/context-dashboard/widget-config.service.d.ts +1 -1
  172. package/core/alert/alert.service.d.ts +14 -5
  173. package/core/alert/alert.service.d.ts.map +1 -1
  174. package/core/bottom-drawer/bottom-drawer.component.d.ts +3 -0
  175. package/core/bottom-drawer/bottom-drawer.component.d.ts.map +1 -1
  176. package/core/breadcrumb/breadcrumb.module.d.ts +3 -3
  177. package/core/common/ApplicationOptions.d.ts +14 -12
  178. package/core/common/ApplicationOptions.d.ts.map +1 -1
  179. package/core/common/date.pipe.d.ts +1 -1
  180. package/core/common/forOf.directive.d.ts +16 -16
  181. package/core/common/forOf.directive.d.ts.map +1 -1
  182. package/core/common/humanize-app-name.pipe.d.ts +7 -0
  183. package/core/common/humanize-app-name.pipe.d.ts.map +1 -1
  184. package/core/common/humanize.pipe.d.ts +7 -0
  185. package/core/common/humanize.pipe.d.ts.map +1 -1
  186. package/core/common/icon.directive.d.ts +19 -0
  187. package/core/common/icon.directive.d.ts.map +1 -1
  188. package/core/common/markdown-to-html.pipe.d.ts +8 -0
  189. package/core/common/markdown-to-html.pipe.d.ts.map +1 -1
  190. package/core/common/options.service.d.ts +5 -5
  191. package/core/common/outlet.directive.d.ts +4 -6
  192. package/core/common/outlet.directive.d.ts.map +1 -1
  193. package/core/common/permissions.service.d.ts +12 -12
  194. package/core/common/service-registry.service.d.ts +2 -1
  195. package/core/common/service-registry.service.d.ts.map +1 -1
  196. package/core/common/user-name-initials.pipe.d.ts +7 -0
  197. package/core/common/user-name-initials.pipe.d.ts.map +1 -1
  198. package/core/common/user-preferences/user-preferences.service.d.ts +1 -1
  199. package/core/countdown-interval/countdown-interval.component.d.ts +7 -0
  200. package/core/countdown-interval/countdown-interval.component.d.ts.map +1 -1
  201. package/core/date-time-picker/date-time-picker.component.d.ts +20 -0
  202. package/core/date-time-picker/date-time-picker.component.d.ts.map +1 -1
  203. package/core/device-status/device-status.component.d.ts +3 -0
  204. package/core/device-status/device-status.component.d.ts.map +1 -1
  205. package/core/header/header.model.d.ts +3 -2
  206. package/core/header/header.model.d.ts.map +1 -1
  207. package/core/header/title/title.component.d.ts +2 -0
  208. package/core/header/title/title.component.d.ts.map +1 -1
  209. package/core/i18n/c8y-translate.directive.d.ts +2 -2
  210. package/core/list-display-switch/list-display-switch.component.d.ts +9 -0
  211. package/core/list-display-switch/list-display-switch.component.d.ts.map +1 -1
  212. package/core/preview-feature/preview-feature.service.d.ts +1 -0
  213. package/core/preview-feature/preview-feature.service.d.ts.map +1 -1
  214. package/core/range-display/range-display.component.d.ts +11 -0
  215. package/core/range-display/range-display.component.d.ts.map +1 -1
  216. package/core/realtime/realtime.service.d.ts +4 -4
  217. package/dashboard-manager/dashboard-manager.module.d.ts +8 -8
  218. package/dashboard-manager/dashboard-manager.module.d.ts.map +1 -1
  219. package/dashboard-manager/type-dashboard-target-assets-grid/type-dashboard-target-assets-grid.component.d.ts +1 -1
  220. package/dashboard-manager/type-dashboard-target-assets-grid/type-dashboard-target-assets-grid.component.d.ts.map +1 -1
  221. package/dashboard-manager/type-dashboard-target-assets-modal/type-dashboard-target-assets-modal.component.d.ts +1 -1
  222. package/dashboard-manager/type-dashboard-target-assets-modal/type-dashboard-target-assets-modal.component.d.ts.map +1 -1
  223. package/dashboard-manager/type-dashboards-list/type-dashboards-list.component.d.ts +1 -1
  224. package/dashboard-manager/type-dashboards-list/type-dashboards-list.component.d.ts.map +1 -1
  225. package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts +1 -1
  226. package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts.map +1 -1
  227. package/datapoint-selector/datapoint-selection-list/datapoint-selection-list.component.d.ts +10 -1
  228. package/datapoint-selector/datapoint-selection-list/datapoint-selection-list.component.d.ts.map +1 -1
  229. package/datapoint-selector/datapoint-selector-list-item/datapoint-selector-list-item.component.d.ts +1 -1
  230. package/datapoint-selector/datapoint-selector-list-item/datapoint-selector-list-item.component.d.ts.map +1 -1
  231. package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts +1 -1
  232. package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts.map +1 -1
  233. package/datapoint-selector/datapoint-selector.component.d.ts +1 -1
  234. package/datapoint-selector/datapoint-selector.component.d.ts.map +1 -1
  235. package/datapoint-selector/datapoint-selector.module.d.ts +18 -18
  236. package/datapoint-selector/datapoint-selector.module.d.ts.map +1 -1
  237. package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts +1 -1
  238. package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts.map +1 -1
  239. package/datapoint-selector/pipes/datapoint-label.pipe.d.ts +1 -1
  240. package/datapoint-selector/pipes/datapoint-label.pipe.d.ts.map +1 -1
  241. package/datapoint-selector/pipes/filter-datapoints.pipe.d.ts +1 -1
  242. package/datapoint-selector/pipes/filter-datapoints.pipe.d.ts.map +1 -1
  243. package/datapoint-selector/pipes/includes-datapoint.pipe.d.ts +1 -1
  244. package/datapoint-selector/pipes/includes-datapoint.pipe.d.ts.map +1 -1
  245. package/datapoints-export-selector/datapoints-export-selector.component.d.ts +7 -0
  246. package/datapoints-export-selector/datapoints-export-selector.component.d.ts.map +1 -1
  247. package/default-subscriptions/default-subscriptions.component.d.ts +1 -1
  248. package/default-subscriptions/default-subscriptions.component.d.ts.map +1 -1
  249. package/default-subscriptions/default-subscriptions.module.d.ts +4 -4
  250. package/default-subscriptions/default-subscriptions.module.d.ts.map +1 -1
  251. package/device-grid/columns/alarms.cell-renderer.component.d.ts +1 -1
  252. package/device-grid/columns/alarms.cell-renderer.component.d.ts.map +1 -1
  253. package/device-grid/columns/alarms.header-cell-renderer.component.d.ts +1 -1
  254. package/device-grid/columns/alarms.header-cell-renderer.component.d.ts.map +1 -1
  255. package/device-grid/columns/group.cell-renderer.component.d.ts +1 -1
  256. package/device-grid/columns/group.cell-renderer.component.d.ts.map +1 -1
  257. package/device-grid/columns/group.filtering-form-renderer.component.d.ts +1 -1
  258. package/device-grid/columns/group.filtering-form-renderer.component.d.ts.map +1 -1
  259. package/device-grid/columns/model.cell-renderer.component.d.ts +1 -1
  260. package/device-grid/columns/model.cell-renderer.component.d.ts.map +1 -1
  261. package/device-grid/columns/name.cell-renderer.component.d.ts +1 -1
  262. package/device-grid/columns/name.cell-renderer.component.d.ts.map +1 -1
  263. package/device-grid/columns/registration-date.cell-renderer.component.d.ts +1 -1
  264. package/device-grid/columns/registration-date.cell-renderer.component.d.ts.map +1 -1
  265. package/device-grid/columns/serial-number.cell-renderer.component.d.ts +1 -1
  266. package/device-grid/columns/serial-number.cell-renderer.component.d.ts.map +1 -1
  267. package/device-grid/columns/status.cell-renderer.component.d.ts +1 -1
  268. package/device-grid/columns/status.cell-renderer.component.d.ts.map +1 -1
  269. package/device-grid/device-grid.component.d.ts +1 -1
  270. package/device-grid/device-grid.component.d.ts.map +1 -1
  271. package/device-grid/device-grid.module.d.ts +15 -15
  272. package/device-grid/device-grid.module.d.ts.map +1 -1
  273. package/device-list/add-smart-group.component.d.ts +1 -1
  274. package/device-list/add-smart-group.component.d.ts.map +1 -1
  275. package/device-list/device-list.component.d.ts +1 -1
  276. package/device-list/device-list.component.d.ts.map +1 -1
  277. package/device-list/device-list.module.d.ts +8 -8
  278. package/device-list/device-list.module.d.ts.map +1 -1
  279. package/device-protocols/device-protocols.module.d.ts +1 -1
  280. package/device-protocols/device-type-detail.component.d.ts +1 -1
  281. package/device-protocols/device-type-detail.component.d.ts.map +1 -1
  282. package/device-protocols/device-type-detail.directive.d.ts +1 -1
  283. package/device-protocols/device-type-detail.directive.d.ts.map +1 -1
  284. package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts +7 -7
  285. package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts.map +1 -1
  286. package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts +1 -1
  287. package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts.map +1 -1
  288. package/ecosystem/activity-log/activity-log.component.d.ts +1 -1
  289. package/ecosystem/activity-log/activity-log.component.d.ts.map +1 -1
  290. package/ecosystem/application-plugins/appState.pipe.d.ts +1 -1
  291. package/ecosystem/application-plugins/appState.pipe.d.ts.map +1 -1
  292. package/ecosystem/application-plugins/application-plugin-readme.component.d.ts +1 -1
  293. package/ecosystem/application-plugins/application-plugin-readme.component.d.ts.map +1 -1
  294. package/ecosystem/application-plugins/application-plugins.component.d.ts +1 -1
  295. package/ecosystem/application-plugins/application-plugins.component.d.ts.map +1 -1
  296. package/ecosystem/application-plugins/application-plugins.module.d.ts +14 -14
  297. package/ecosystem/application-plugins/application-plugins.module.d.ts.map +1 -1
  298. package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts +2 -2
  299. package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts.map +1 -1
  300. package/ecosystem/application-plugins/install-plugin.component.d.ts +1 -1
  301. package/ecosystem/application-plugins/install-plugin.component.d.ts.map +1 -1
  302. package/ecosystem/application-plugins/label-cell-renderer.component.d.ts +1 -1
  303. package/ecosystem/application-plugins/label-cell-renderer.component.d.ts.map +1 -1
  304. package/ecosystem/application-plugins/only-latest-filter/only-latest-filter.component.d.ts +1 -1
  305. package/ecosystem/application-plugins/only-latest-filter/only-latest-filter.component.d.ts.map +1 -1
  306. package/ecosystem/application-plugins/orphaned-status-cell-renderer.component.d.ts +1 -1
  307. package/ecosystem/application-plugins/orphaned-status-cell-renderer.component.d.ts.map +1 -1
  308. package/ecosystem/application-plugins/plugin-list-item.component.d.ts +1 -1
  309. package/ecosystem/application-plugins/plugin-list-item.component.d.ts.map +1 -1
  310. package/ecosystem/application-plugins/plugin-list.component.d.ts +1 -1
  311. package/ecosystem/application-plugins/plugin-list.component.d.ts.map +1 -1
  312. package/ecosystem/application-plugins/update-plugin-of-app/update-plugin-of-app.component.d.ts +1 -1
  313. package/ecosystem/application-plugins/update-plugin-of-app/update-plugin-of-app.component.d.ts.map +1 -1
  314. package/ecosystem/application-properties/application-properties.component.d.ts +1 -1
  315. package/ecosystem/application-properties/application-properties.component.d.ts.map +1 -1
  316. package/ecosystem/application-properties/subscription-modal/subscription-modal.component.d.ts +1 -1
  317. package/ecosystem/application-properties/subscription-modal/subscription-modal.component.d.ts.map +1 -1
  318. package/ecosystem/application-properties/update-application-modal/update-application-modal.component.d.ts +1 -1
  319. package/ecosystem/application-properties/update-application-modal/update-application-modal.component.d.ts.map +1 -1
  320. package/ecosystem/applications/add-external-applicaiton/add-external-application.component.d.ts +1 -1
  321. package/ecosystem/applications/add-external-applicaiton/add-external-application.component.d.ts.map +1 -1
  322. package/ecosystem/applications/add-web-application/add-web-application.component.d.ts +1 -1
  323. package/ecosystem/applications/add-web-application/add-web-application.component.d.ts.map +1 -1
  324. package/ecosystem/applications/application-list/application-list.component.d.ts +1 -1
  325. package/ecosystem/applications/application-list/application-list.component.d.ts.map +1 -1
  326. package/ecosystem/applications/install-from-package/install-from-package.component.d.ts +2 -3
  327. package/ecosystem/applications/install-from-package/install-from-package.component.d.ts.map +1 -1
  328. package/ecosystem/archived-confirm/archived-confirm-modal.component.d.ts +1 -1
  329. package/ecosystem/archived-confirm/archived-confirm-modal.component.d.ts.map +1 -1
  330. package/ecosystem/archived-confirm/archived-confirm.module.d.ts +4 -4
  331. package/ecosystem/archived-confirm/archived-confirm.module.d.ts.map +1 -1
  332. package/ecosystem/ecosystem.module.d.ts +34 -34
  333. package/ecosystem/ecosystem.module.d.ts.map +1 -1
  334. package/ecosystem/features/feature-list.component.d.ts +1 -1
  335. package/ecosystem/features/feature-list.component.d.ts.map +1 -1
  336. package/ecosystem/license-confirm/license-confirm-modal.component.d.ts +1 -1
  337. package/ecosystem/license-confirm/license-confirm-modal.component.d.ts.map +1 -1
  338. package/ecosystem/license-confirm/license-confirm.module.d.ts +5 -5
  339. package/ecosystem/license-confirm/license-confirm.module.d.ts.map +1 -1
  340. package/ecosystem/license-confirm/license-view.component.d.ts +1 -1
  341. package/ecosystem/license-confirm/license-view.component.d.ts.map +1 -1
  342. package/ecosystem/microservices/add-microservice.component.d.ts +1 -1
  343. package/ecosystem/microservices/add-microservice.component.d.ts.map +1 -1
  344. package/ecosystem/microservices/microservice-list.component.d.ts +1 -1
  345. package/ecosystem/microservices/microservice-list.component.d.ts.map +1 -1
  346. package/ecosystem/packages/add-package.component.d.ts +1 -1
  347. package/ecosystem/packages/add-package.component.d.ts.map +1 -1
  348. package/ecosystem/packages/deploy-application/deploy-application.component.d.ts +1 -1
  349. package/ecosystem/packages/deploy-application/deploy-application.component.d.ts.map +1 -1
  350. package/ecosystem/packages/package-details/package-details.component.d.ts +1 -1
  351. package/ecosystem/packages/package-details/package-details.component.d.ts.map +1 -1
  352. package/ecosystem/packages/package-list/packages-list.component.d.ts +1 -1
  353. package/ecosystem/packages/package-list/packages-list.component.d.ts.map +1 -1
  354. package/ecosystem/packages/package-versions/package-contents/contents-apps/contents-apps.component.d.ts +1 -1
  355. package/ecosystem/packages/package-versions/package-contents/contents-apps/contents-apps.component.d.ts.map +1 -1
  356. package/ecosystem/packages/package-versions/package-contents/contents-plugins/contents-plugins.component.d.ts +1 -1
  357. package/ecosystem/packages/package-versions/package-contents/contents-plugins/contents-plugins.component.d.ts.map +1 -1
  358. package/ecosystem/packages/package-versions/package-contents/packages-contents.component.d.ts +1 -1
  359. package/ecosystem/packages/package-versions/package-contents/packages-contents.component.d.ts.map +1 -1
  360. package/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.d.ts +1 -1
  361. package/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.d.ts.map +1 -1
  362. package/ecosystem/packages/package-versions/packages-versions.component.d.ts +1 -1
  363. package/ecosystem/packages/package-versions/packages-versions.component.d.ts.map +1 -1
  364. package/ecosystem/shared/add-application.component.d.ts +1 -1
  365. package/ecosystem/shared/add-application.component.d.ts.map +1 -1
  366. package/ecosystem/shared/application-card.component.d.ts +1 -1
  367. package/ecosystem/shared/application-card.component.d.ts.map +1 -1
  368. package/ecosystem/shared/application-properties-form.component.d.ts +1 -1
  369. package/ecosystem/shared/application-properties-form.component.d.ts.map +1 -1
  370. package/ecosystem/shared/archived-filter/archived-filter.component.d.ts +1 -1
  371. package/ecosystem/shared/archived-filter/archived-filter.component.d.ts.map +1 -1
  372. package/ecosystem/shared/duplicate-application/duplicate-application-list/duplicate-application-list.component.d.ts +1 -1
  373. package/ecosystem/shared/duplicate-application/duplicate-application-list/duplicate-application-list.component.d.ts.map +1 -1
  374. package/ecosystem/shared/duplicate-application/duplicate-application-properties/duplicate-application-properties.component.d.ts +2 -2
  375. package/ecosystem/shared/duplicate-application/duplicate-application-properties/duplicate-application-properties.component.d.ts.map +1 -1
  376. package/ecosystem/shared/duplicate-application/duplicate-application.component.d.ts +1 -1
  377. package/ecosystem/shared/duplicate-application/duplicate-application.component.d.ts.map +1 -1
  378. package/ecosystem/shared/list-filters/list-filters.component.d.ts +1 -1
  379. package/ecosystem/shared/list-filters/list-filters.component.d.ts.map +1 -1
  380. package/ecosystem/shared/package-version-select/package-version-select.component.d.ts +1 -1
  381. package/ecosystem/shared/package-version-select/package-version-select.component.d.ts.map +1 -1
  382. package/ecosystem/shared/shared-ecosystem.module.d.ts +20 -20
  383. package/ecosystem/shared/shared-ecosystem.module.d.ts.map +1 -1
  384. package/ecosystem/shared/translate-package-label.pipe.d.ts +1 -1
  385. package/ecosystem/shared/translate-package-label.pipe.d.ts.map +1 -1
  386. package/ecosystem/shared/upload-archive.component.d.ts +1 -1
  387. package/ecosystem/shared/upload-archive.component.d.ts.map +1 -1
  388. package/fesm2022/c8y-ngx-components-actility-device-registration.mjs +36 -12
  389. package/fesm2022/c8y-ngx-components-actility-device-registration.mjs.map +1 -1
  390. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +195 -107
  391. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
  392. package/fesm2022/c8y-ngx-components-alarms.mjs +236 -96
  393. package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
  394. package/fesm2022/c8y-ngx-components-api.mjs +8 -0
  395. package/fesm2022/c8y-ngx-components-api.mjs.map +1 -1
  396. package/fesm2022/c8y-ngx-components-app-logs.mjs +6 -8
  397. package/fesm2022/c8y-ngx-components-app-logs.mjs.map +1 -1
  398. package/fesm2022/c8y-ngx-components-assets-navigator.mjs +74 -26
  399. package/fesm2022/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  400. package/fesm2022/c8y-ngx-components-auth-configuration.mjs +578 -366
  401. package/fesm2022/c8y-ngx-components-auth-configuration.mjs.map +1 -1
  402. package/fesm2022/c8y-ngx-components-bookmarks.mjs +36 -17
  403. package/fesm2022/c8y-ngx-components-bookmarks.mjs.map +1 -1
  404. package/fesm2022/c8y-ngx-components-child-devices.mjs +7 -9
  405. package/fesm2022/c8y-ngx-components-child-devices.mjs.map +1 -1
  406. package/fesm2022/c8y-ngx-components-cockpit-config.mjs +138 -67
  407. package/fesm2022/c8y-ngx-components-cockpit-config.mjs.map +1 -1
  408. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-B7m2lsIe.mjs → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-C-JLbcn5.mjs} +3 -3
  409. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-B7m2lsIe.mjs.map → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-C-JLbcn5.mjs.map} +1 -1
  410. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BCG_pjJz.mjs → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-RXvOcs04.mjs} +5 -5
  411. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BCG_pjJz.mjs.map → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-RXvOcs04.mjs.map} +1 -1
  412. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-DjCdFkJw.mjs → c8y-ngx-components-context-dashboard-dashboard-version-history.component-DmPIJGXO.mjs} +3 -3
  413. package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-DjCdFkJw.mjs.map → c8y-ngx-components-context-dashboard-dashboard-version-history.component-DmPIJGXO.mjs.map} +1 -1
  414. package/fesm2022/c8y-ngx-components-context-dashboard.mjs +170 -94
  415. package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  416. package/fesm2022/c8y-ngx-components-dashboard-manager.mjs +44 -31
  417. package/fesm2022/c8y-ngx-components-dashboard-manager.mjs.map +1 -1
  418. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +132 -66
  419. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
  420. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
  421. package/fesm2022/c8y-ngx-components-default-subscriptions.mjs +32 -16
  422. package/fesm2022/c8y-ngx-components-default-subscriptions.mjs.map +1 -1
  423. package/fesm2022/c8y-ngx-components-device-grid.mjs +50 -45
  424. package/fesm2022/c8y-ngx-components-device-grid.mjs.map +1 -1
  425. package/fesm2022/c8y-ngx-components-device-list.mjs +50 -25
  426. package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
  427. package/fesm2022/c8y-ngx-components-device-protocols.mjs +6 -9
  428. package/fesm2022/c8y-ngx-components-device-protocols.mjs.map +1 -1
  429. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs +36 -8
  430. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs.map +1 -1
  431. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs +155 -72
  432. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs.map +1 -1
  433. package/fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs +13 -7
  434. package/fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs.map +1 -1
  435. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs +43 -12
  436. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs.map +1 -1
  437. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +179 -80
  438. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs.map +1 -1
  439. package/fesm2022/c8y-ngx-components-ecosystem.mjs +353 -1316
  440. package/fesm2022/c8y-ngx-components-ecosystem.mjs.map +1 -1
  441. package/fesm2022/c8y-ngx-components-file-preview.mjs +17 -8
  442. package/fesm2022/c8y-ngx-components-file-preview.mjs.map +1 -1
  443. package/fesm2022/c8y-ngx-components-files-repository.mjs +55 -22
  444. package/fesm2022/c8y-ngx-components-files-repository.mjs.map +1 -1
  445. package/fesm2022/c8y-ngx-components-icon-selector.mjs +46 -28
  446. package/fesm2022/c8y-ngx-components-icon-selector.mjs.map +1 -1
  447. package/fesm2022/c8y-ngx-components-location.mjs +28 -15
  448. package/fesm2022/c8y-ngx-components-location.mjs.map +1 -1
  449. package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs +36 -12
  450. package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs.map +1 -1
  451. package/fesm2022/c8y-ngx-components-map.mjs +260 -28
  452. package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
  453. package/fesm2022/c8y-ngx-components-platform-configuration.mjs +24 -13
  454. package/fesm2022/c8y-ngx-components-platform-configuration.mjs.map +1 -1
  455. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +133 -26
  456. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs.map +1 -1
  457. package/fesm2022/c8y-ngx-components-register-device.mjs +314 -249
  458. package/fesm2022/c8y-ngx-components-register-device.mjs.map +1 -1
  459. package/fesm2022/c8y-ngx-components-report-dashboard.mjs +41 -17
  460. package/fesm2022/c8y-ngx-components-report-dashboard.mjs.map +1 -1
  461. package/fesm2022/c8y-ngx-components-reports.mjs +61 -21
  462. package/fesm2022/c8y-ngx-components-reports.mjs.map +1 -1
  463. package/fesm2022/c8y-ngx-components-search.mjs +34 -21
  464. package/fesm2022/c8y-ngx-components-search.mjs.map +1 -1
  465. package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs +43 -19
  466. package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs.map +1 -1
  467. package/fesm2022/c8y-ngx-components-sub-assets.mjs +207 -72
  468. package/fesm2022/c8y-ngx-components-sub-assets.mjs.map +1 -1
  469. package/fesm2022/c8y-ngx-components-tenants.mjs +96 -39
  470. package/fesm2022/c8y-ngx-components-tenants.mjs.map +1 -1
  471. package/fesm2022/c8y-ngx-components-trusted-certificates.mjs +173 -53
  472. package/fesm2022/c8y-ngx-components-trusted-certificates.mjs.map +1 -1
  473. package/fesm2022/c8y-ngx-components-upgrade.mjs +19 -10
  474. package/fesm2022/c8y-ngx-components-upgrade.mjs.map +1 -1
  475. package/fesm2022/c8y-ngx-components-user-roles.mjs +19 -14
  476. package/fesm2022/c8y-ngx-components-user-roles.mjs.map +1 -1
  477. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +76 -50
  478. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs.map +1 -1
  479. package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs +15 -8
  480. package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs.map +1 -1
  481. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +2 -2
  482. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
  483. package/fesm2022/c8y-ngx-components.mjs +166 -80
  484. package/fesm2022/c8y-ngx-components.mjs.map +1 -1
  485. package/file-preview/file-preview.component.d.ts +1 -1
  486. package/file-preview/file-preview.component.d.ts.map +1 -1
  487. package/file-preview/file-preview.module.d.ts +3 -3
  488. package/file-preview/file-preview.module.d.ts.map +1 -1
  489. package/files-repository/files-repository-upload.component.d.ts +1 -1
  490. package/files-repository/files-repository-upload.component.d.ts.map +1 -1
  491. package/files-repository/files-repository.component.d.ts +1 -1
  492. package/files-repository/files-repository.component.d.ts.map +1 -1
  493. package/files-repository/files-repository.module.d.ts +6 -6
  494. package/files-repository/files-repository.module.d.ts.map +1 -1
  495. package/icon-selector/icon-name.pipe.d.ts +1 -1
  496. package/icon-selector/icon-name.pipe.d.ts.map +1 -1
  497. package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts +1 -1
  498. package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts.map +1 -1
  499. package/icon-selector/icon-selector-wrapper/icon-selector-wrapper.component.d.ts +1 -1
  500. package/icon-selector/icon-selector-wrapper/icon-selector-wrapper.component.d.ts.map +1 -1
  501. package/icon-selector/icon-selector.component.d.ts +1 -1
  502. package/icon-selector/icon-selector.component.d.ts.map +1 -1
  503. package/icon-selector/icon-selector.module.d.ts +8 -8
  504. package/icon-selector/icon-selector.module.d.ts.map +1 -1
  505. package/locales/de.po +23 -2
  506. package/locales/es.po +23 -2
  507. package/locales/fr.po +23 -2
  508. package/locales/ja_JP.po +23 -2
  509. package/locales/ko.po +23 -2
  510. package/locales/locales.pot +22 -1
  511. package/locales/nl.po +23 -2
  512. package/locales/pl.po +23 -2
  513. package/locales/pt_BR.po +23 -2
  514. package/locales/zh_CN.po +23 -2
  515. package/locales/zh_TW.po +23 -2
  516. package/location/add-location.component.d.ts +1 -1
  517. package/location/add-location.component.d.ts.map +1 -1
  518. package/location/location.component.d.ts +1 -1
  519. package/location/location.component.d.ts.map +1 -1
  520. package/location/location.module.d.ts +6 -6
  521. package/location/location.module.d.ts.map +1 -1
  522. package/loriot-device-registration/loriot-device-registration-button.component.d.ts +1 -1
  523. package/loriot-device-registration/loriot-device-registration-button.component.d.ts.map +1 -1
  524. package/loriot-device-registration/loriot-device-registration.component.d.ts +1 -1
  525. package/loriot-device-registration/loriot-device-registration.component.d.ts.map +1 -1
  526. package/loriot-device-registration/loriot-device-registration.module.d.ts +4 -4
  527. package/loriot-device-registration/loriot-device-registration.module.d.ts.map +1 -1
  528. package/map/cluster-map.component.d.ts +61 -1
  529. package/map/cluster-map.component.d.ts.map +1 -1
  530. package/map/map-popup.directive.d.ts +1 -1
  531. package/map/map-popup.directive.d.ts.map +1 -1
  532. package/map/map-status.component.d.ts +86 -3
  533. package/map/map-status.component.d.ts.map +1 -1
  534. package/map/map.component.d.ts +100 -5
  535. package/map/map.component.d.ts.map +1 -1
  536. package/map/map.model.d.ts +98 -4
  537. package/map/map.model.d.ts.map +1 -1
  538. package/map/map.module.d.ts +9 -9
  539. package/map/map.module.d.ts.map +1 -1
  540. package/package.json +1 -1
  541. package/platform-configuration/platform-configuration-form.component.d.ts +1 -1
  542. package/platform-configuration/platform-configuration-form.component.d.ts.map +1 -1
  543. package/platform-configuration/platform-configuration.module.d.ts +4 -4
  544. package/platform-configuration/platform-configuration.module.d.ts.map +1 -1
  545. package/protocol-lpwan/lpwan-protocol.module.d.ts +4 -4
  546. package/protocol-lpwan/lpwan-protocol.module.d.ts.map +1 -1
  547. package/protocol-lpwan/lpwan-set-connections.component.d.ts +1 -1
  548. package/protocol-lpwan/lpwan-set-connections.component.d.ts.map +1 -1
  549. package/protocol-lpwan/lpwan-set-device-protocol.component.d.ts +1 -1
  550. package/protocol-lpwan/lpwan-set-device-protocol.component.d.ts.map +1 -1
  551. package/protocol-lpwan/multiple-lns-connectors/actility-multiple-lns-connector.component.d.ts +1 -1
  552. package/protocol-lpwan/multiple-lns-connectors/actility-multiple-lns-connector.component.d.ts.map +1 -1
  553. package/protocol-lpwan/multiple-lns-connectors/connection-info-with-download-csv.component.d.ts +1 -1
  554. package/protocol-lpwan/multiple-lns-connectors/connection-info-with-download-csv.component.d.ts.map +1 -1
  555. package/protocol-lpwan/multiple-lns-connectors/loriot/loriot-multiple-lns-connector.component.d.ts +1 -1
  556. package/protocol-lpwan/multiple-lns-connectors/loriot/loriot-multiple-lns-connector.component.d.ts.map +1 -1
  557. package/protocol-lpwan/multiple-lns-connectors/multiple-lns-connectors.module.d.ts +8 -8
  558. package/protocol-lpwan/multiple-lns-connectors/multiple-lns-connectors.module.d.ts.map +1 -1
  559. package/protocol-lpwan/multiple-lns-connectors/no-connections-found.component.d.ts +1 -1
  560. package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts +1 -1
  561. package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts.map +1 -1
  562. package/register-device/bulk/bulk-device-registration-button.component.d.ts +1 -1
  563. package/register-device/bulk/bulk-device-registration-button.component.d.ts.map +1 -1
  564. package/register-device/bulk/bulk-device-registration-modal.component.d.ts +1 -1
  565. package/register-device/bulk/bulk-device-registration-modal.component.d.ts.map +1 -1
  566. package/register-device/device-registration-view.component.d.ts +1 -1
  567. package/register-device/device-registration-view.component.d.ts.map +1 -1
  568. package/register-device/dropdown/register-device-dropdown.component.d.ts +1 -1
  569. package/register-device/dropdown/register-device-dropdown.component.d.ts.map +1 -1
  570. package/register-device/extensible/bulk/extensible-bulk-device-registration-button.component.d.ts +1 -1
  571. package/register-device/extensible/bulk/extensible-bulk-device-registration-button.component.d.ts.map +1 -1
  572. package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts +1 -1
  573. package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts.map +1 -1
  574. package/register-device/extensible/single/extensible-device-registration-button.component.d.ts +1 -1
  575. package/register-device/extensible/single/extensible-device-registration-button.component.d.ts.map +1 -1
  576. package/register-device/extensible/single/extensible-device-registration-modal.component.d.ts +1 -1
  577. package/register-device/extensible/single/extensible-device-registration-modal.component.d.ts.map +1 -1
  578. package/register-device/extensible/single/extensible-device-registration-stepper.component.d.ts +1 -1
  579. package/register-device/extensible/single/extensible-device-registration-stepper.component.d.ts.map +1 -1
  580. package/register-device/general/general-device-registration-button.component.d.ts +1 -1
  581. package/register-device/general/general-device-registration-button.component.d.ts.map +1 -1
  582. package/register-device/general/general-device-registration.component.d.ts +3 -6
  583. package/register-device/general/general-device-registration.component.d.ts.map +1 -1
  584. package/register-device/register-device.module.d.ts +16 -16
  585. package/register-device/register-device.module.d.ts.map +1 -1
  586. package/report-dashboard/report-dashboard-list.component.d.ts +1 -1
  587. package/report-dashboard/report-dashboard-list.component.d.ts.map +1 -1
  588. package/report-dashboard/report-dashboard.module.d.ts +7 -7
  589. package/reports/cron.component.d.ts +1 -1
  590. package/reports/cron.component.d.ts.map +1 -1
  591. package/reports/export-schedules.component.d.ts +2 -3
  592. package/reports/export-schedules.component.d.ts.map +1 -1
  593. package/reports/reports.module.d.ts +7 -7
  594. package/reports/reports.module.d.ts.map +1 -1
  595. package/reports/schedule-modal.component.d.ts +2 -3
  596. package/reports/schedule-modal.component.d.ts.map +1 -1
  597. package/search/search-action.component.d.ts +1 -1
  598. package/search/search-action.component.d.ts.map +1 -1
  599. package/search/search-custom-filters.component.d.ts +1 -1
  600. package/search/search-custom-filters.component.d.ts.map +1 -1
  601. package/search/search-grid.component.d.ts +1 -1
  602. package/search/search-grid.component.d.ts.map +1 -1
  603. package/search/search-results.component.d.ts +1 -1
  604. package/search/search-results.component.d.ts.map +1 -1
  605. package/search/search.module.d.ts +8 -8
  606. package/search/search.module.d.ts.map +1 -1
  607. package/sigfox-device-registration/sigfox-device-registration-button.component.d.ts +1 -1
  608. package/sigfox-device-registration/sigfox-device-registration-button.component.d.ts.map +1 -1
  609. package/sigfox-device-registration/sigfox-device-registration.component.d.ts +1 -1
  610. package/sigfox-device-registration/sigfox-device-registration.component.d.ts.map +1 -1
  611. package/sigfox-device-registration/sigfox-device-registration.module.d.ts +4 -4
  612. package/sigfox-device-registration/sigfox-device-registration.module.d.ts.map +1 -1
  613. package/sub-assets/add-group/add-group.component.d.ts +1 -1
  614. package/sub-assets/add-group/add-group.component.d.ts.map +1 -1
  615. package/sub-assets/add-group/add-group.module.d.ts +7 -7
  616. package/sub-assets/asset-properties-item.component.d.ts +1 -1
  617. package/sub-assets/asset-properties-item.component.d.ts.map +1 -1
  618. package/sub-assets/asset-properties.component.d.ts +1 -1
  619. package/sub-assets/asset-properties.component.d.ts.map +1 -1
  620. package/sub-assets/assign-devices/assign-child-devices.component.d.ts +2 -3
  621. package/sub-assets/assign-devices/assign-child-devices.component.d.ts.map +1 -1
  622. package/sub-assets/assign-devices/assign-devices.component.d.ts +1 -1
  623. package/sub-assets/assign-devices/assign-devices.component.d.ts.map +1 -1
  624. package/sub-assets/delete-assets-modal/delete-assets-modal.component.d.ts +1 -1
  625. package/sub-assets/delete-assets-modal/delete-assets-modal.component.d.ts.map +1 -1
  626. package/sub-assets/group-info.component.d.ts +1 -1
  627. package/sub-assets/group-info.component.d.ts.map +1 -1
  628. package/sub-assets/groups.component.d.ts +1 -1
  629. package/sub-assets/groups.component.d.ts.map +1 -1
  630. package/sub-assets/location/asset-location.component.d.ts +1 -1
  631. package/sub-assets/location/asset-location.component.d.ts.map +1 -1
  632. package/sub-assets/sub-assets-grid.component.d.ts +1 -1
  633. package/sub-assets/sub-assets-grid.component.d.ts.map +1 -1
  634. package/sub-assets/sub-assets-grids.module.d.ts +9 -9
  635. package/sub-assets/sub-assets-grids.module.d.ts.map +1 -1
  636. package/sub-assets/sub-assets.component.d.ts +1 -1
  637. package/sub-assets/sub-assets.component.d.ts.map +1 -1
  638. package/sub-assets/sub-assets.module.d.ts +18 -18
  639. package/sub-assets/sub-assets.module.d.ts.map +1 -1
  640. package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts +1 -1
  641. package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts.map +1 -1
  642. package/tenants/tenant-form/tenant-form.component.d.ts +1 -1
  643. package/tenants/tenant-form/tenant-form.component.d.ts.map +1 -1
  644. package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts +2 -3
  645. package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts.map +1 -1
  646. package/tenants/tenant-list/status.filtering-form-renderer.component.d.ts +1 -1
  647. package/tenants/tenant-list/status.filtering-form-renderer.component.d.ts.map +1 -1
  648. package/tenants/tenant-list/tenant-list.component.d.ts +1 -1
  649. package/tenants/tenant-list/tenant-list.component.d.ts.map +1 -1
  650. package/tenants/tenants.module.d.ts +9 -9
  651. package/tenants/tenants.module.d.ts.map +1 -1
  652. package/trusted-certificates/crl/crl-check-settings.component.d.ts +1 -1
  653. package/trusted-certificates/crl/crl-check-settings.component.d.ts.map +1 -1
  654. package/trusted-certificates/crl/crl-settings.component.d.ts +1 -1
  655. package/trusted-certificates/crl/crl-settings.component.d.ts.map +1 -1
  656. package/trusted-certificates/crl/crl-settings.module.d.ts +8 -8
  657. package/trusted-certificates/crl/crl-settings.module.d.ts.map +1 -1
  658. package/trusted-certificates/list/add-trusted-certificate.component.d.ts +4 -3
  659. package/trusted-certificates/list/add-trusted-certificate.component.d.ts.map +1 -1
  660. package/trusted-certificates/list/trusted-certificate-list.component.d.ts +11 -2
  661. package/trusted-certificates/list/trusted-certificate-list.component.d.ts.map +1 -1
  662. package/trusted-certificates/list/trusted-certificate-list.module.d.ts +10 -10
  663. package/trusted-certificates/list/trusted-certificate-list.module.d.ts.map +1 -1
  664. package/trusted-certificates/list/trusted-certificate.model.d.ts +2 -0
  665. package/trusted-certificates/list/trusted-certificate.model.d.ts.map +1 -1
  666. package/trusted-certificates/pattern-messages.data.d.ts +6 -0
  667. package/trusted-certificates/pattern-messages.data.d.ts.map +1 -1
  668. package/upgrade/dashboard/dashboard-upgrade.module.d.ts +6 -6
  669. package/upgrade/dashboard/dashboard-upgrade.module.d.ts.map +1 -1
  670. package/upgrade/dashboard/device-selector.component.d.ts +1 -1
  671. package/upgrade/dashboard/device-selector.component.d.ts.map +1 -1
  672. package/upgrade/dashboard/widget.component.d.ts +1 -1
  673. package/upgrade/dashboard/widget.component.d.ts.map +1 -1
  674. package/user-roles/inventory-role-selector/inventory-role-selector.component.d.ts +1 -1
  675. package/user-roles/inventory-role-selector/inventory-role-selector.component.d.ts.map +1 -1
  676. package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts +1 -1
  677. package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts.map +1 -1
  678. package/user-roles/user-roles.module.d.ts +4 -4
  679. package/user-roles/user-roles.module.d.ts.map +1 -1
  680. package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts +1 -1
  681. package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts.map +1 -1
  682. package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts +1 -1
  683. package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts.map +1 -1
  684. package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts +1 -1
  685. package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts.map +1 -1
  686. package/widgets/implementations/alarms/alarms-widget.module.d.ts +13 -13
  687. package/widgets/implementations/alarms/alarms-widget.module.d.ts.map +1 -1
  688. package/widgets/implementations/alarms/severity-icon.pipe.d.ts +1 -1
  689. package/widgets/implementations/alarms/severity-icon.pipe.d.ts.map +1 -1
  690. package/widgets/implementations/alarms/sorting-description-popover-message.pipe.d.ts +1 -1
  691. package/widgets/implementations/alarms/sorting-description-popover-message.pipe.d.ts.map +1 -1
  692. package/widgets/implementations/device-management-welcome/device-management-welcome-widget.module.d.ts +4 -4
  693. package/widgets/implementations/device-management-welcome/device-management-welcome-widget.module.d.ts.map +1 -1
  694. package/widgets/implementations/device-management-welcome/welcome.component.d.ts +1 -1
  695. package/widgets/implementations/device-management-welcome/welcome.component.d.ts.map +1 -1
@@ -2,20 +2,20 @@ import * as i0 from '@angular/core';
2
2
  import { Component, InjectionToken, Injectable, NgModule } from '@angular/core';
3
3
  import * as i2 from '@c8y/client';
4
4
  import * as i4 from '@c8y/ngx-components';
5
- import { gettext, hookGeneric, ExtensionPointWithoutStateForPlugins, fromTriggerOnce, NavigatorNode, UserPreferencesConfigurationStrategy, DATA_GRID_CONFIGURATION_STRATEGY, DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER, BuiltInActionType, ViewContext, CoreModule, CommonModule, hookNavigator, hookBreadcrumb, hookDataGridActionControls } from '@c8y/ngx-components';
6
- import * as i1$1 from '@c8y/ngx-components/device-grid';
7
- import { DeviceGridModule } from '@c8y/ngx-components/device-grid';
5
+ import { gettext, IconDirective, C8yTranslateDirective, FormGroupComponent, RequiredInputPlaceholderDirective, GuideDocsComponent, GuideHrefDirective, C8yTranslatePipe, hookGeneric, ExtensionPointWithoutStateForPlugins, fromTriggerOnce, NavigatorNode, TitleComponent, BreadcrumbComponent, BreadcrumbItemComponent, ActionBarItemComponent, HelpComponent, ProductExperienceDirective, UserPreferencesConfigurationStrategy, DATA_GRID_CONFIGURATION_STRATEGY, DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER, BuiltInActionType, ViewContext, CoreModule, CommonModule, hookNavigator, hookBreadcrumb, hookDataGridActionControls } from '@c8y/ngx-components';
6
+ import * as i3 from '@c8y/ngx-components/device-grid';
7
+ import { DeviceGridComponent, DeviceGridModule } from '@c8y/ngx-components/device-grid';
8
8
  import * as i5 from '@ngx-translate/core';
9
9
  import * as i1 from 'ngx-bootstrap/modal';
10
10
  import { of } from 'rxjs';
11
11
  import { switchMap, tap, catchError, take, map, startWith, shareReplay } from 'rxjs/operators';
12
12
  import * as i6 from '@angular/forms';
13
- import * as i7 from 'ngx-bootstrap/popover';
14
- import { PopoverModule } from 'ngx-bootstrap/popover';
15
- import * as i1$2 from '@angular/router';
13
+ import { FormsModule } from '@angular/forms';
14
+ import { PopoverDirective, PopoverModule } from 'ngx-bootstrap/popover';
15
+ import * as i1$1 from '@angular/router';
16
16
  import { RouterModule } from '@angular/router';
17
17
  import { flatten, isEmpty } from 'lodash-es';
18
- import * as i5$1 from '@angular/common';
18
+ import { AsyncPipe } from '@angular/common';
19
19
  import { TooltipModule } from 'ngx-bootstrap/tooltip';
20
20
 
21
21
  class AddSmartGroupComponent {
@@ -54,13 +54,23 @@ class AddSmartGroupComponent {
54
54
  close() {
55
55
  this.modal.hide();
56
56
  }
57
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AddSmartGroupComponent, deps: [{ token: i1.BsModalRef }, { token: i2.SmartGroupsService }, { token: i1$1.DeviceGridService }, { token: i4.AlertService }, { token: i5.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
58
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: AddSmartGroupComponent, isStandalone: false, selector: "c8y-add-smart-group", ngImport: i0, template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-group-smart'\"></i>\n <h4\n id=\"modal-title\"\n translate\n >\n Add smart group\n </h4>\n </div>\n\n <form\n #createSmartGroup=\"ngForm\"\n (ngSubmit)=\"createSmartGroup.form.valid && create()\"\n >\n <div class=\"modal-inner-scroll\">\n <div\n class=\"modal-body\"\n id=\"modal-body\"\n >\n <c8y-form-group>\n <label\n class=\"d-inline-block\"\n for=\"name\"\n translate\n >\n Group name\n </label>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"customPopoverTemplate\"\n placement=\"right\"\n type=\"button\"\n [outsideClick]=\"true\"\n data-cy=\"add-smart-group-component--Help-button\"\n ></button>\n <input\n class=\"form-control\"\n id=\"name\"\n placeholder=\"{{ 'e.g. My smart group' | translate }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"smartGroup.name\"\n />\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"close()\"\n translate\n >\n Cancel\n </button>\n\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add' | translate }}\"\n type=\"submit\"\n [disabled]=\"createSmartGroup.form.invalid\"\n translate\n >\n Add\n </button>\n </div>\n </form>\n</div>\n\n<ng-template #customPopoverTemplate>\n <div\n class=\"m-b-16\"\n style=\"pointer-events: auto\"\n tabindex=\"0\"\n data-cy=\"add-smart-group-component--popover-Template\"\n translate\n >\n Th\u0435 smart group will be created based on the filters currently applied in the device list.\n </div>\n <br />\n <p\n c8y-guide-docs\n translate\n ngNonBindable\n >\n <small>\n Find out more in the\n <a c8y-guide-href=\"docs/device-management-application/grouping-devices/#using-smart-groups\">\n user documentation\n </a>\n .\n </small>\n </p>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i4.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i4.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: i4.RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "directive", type: i4.GuideHrefDirective, selector: "[c8y-guide-href]", inputs: ["c8y-guide-href"] }, { kind: "component", type: i4.GuideDocsComponent, selector: "[c8y-guide-docs]" }, { kind: "directive", type: i7.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { kind: "pipe", type: i4.C8yTranslatePipe, name: "translate" }] }); }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AddSmartGroupComponent, deps: [{ token: i1.BsModalRef }, { token: i2.SmartGroupsService }, { token: i3.DeviceGridService }, { token: i4.AlertService }, { token: i5.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: AddSmartGroupComponent, isStandalone: true, selector: "c8y-add-smart-group", ngImport: i0, template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-group-smart'\"></i>\n <h4\n id=\"modal-title\"\n translate\n >\n Add smart group\n </h4>\n </div>\n\n <form\n #createSmartGroup=\"ngForm\"\n (ngSubmit)=\"createSmartGroup.form.valid && create()\"\n >\n <div class=\"modal-inner-scroll\">\n <div\n class=\"modal-body\"\n id=\"modal-body\"\n >\n <c8y-form-group>\n <label\n class=\"d-inline-block\"\n for=\"name\"\n translate\n >\n Group name\n </label>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"customPopoverTemplate\"\n placement=\"right\"\n type=\"button\"\n [outsideClick]=\"true\"\n data-cy=\"add-smart-group-component--Help-button\"\n ></button>\n <input\n class=\"form-control\"\n id=\"name\"\n placeholder=\"{{ 'e.g. My smart group' | translate }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"smartGroup.name\"\n />\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"close()\"\n translate\n >\n Cancel\n </button>\n\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add' | translate }}\"\n type=\"submit\"\n [disabled]=\"createSmartGroup.form.invalid\"\n translate\n >\n Add\n </button>\n </div>\n </form>\n</div>\n\n<ng-template #customPopoverTemplate>\n <div\n class=\"m-b-16\"\n style=\"pointer-events: auto\"\n tabindex=\"0\"\n data-cy=\"add-smart-group-component--popover-Template\"\n translate\n >\n Th\u0435 smart group will be created based on the filters currently applied in the device list.\n </div>\n <br />\n <p\n c8y-guide-docs\n translate\n ngNonBindable\n >\n <small>\n Find out more in the\n <a c8y-guide-href=\"docs/device-management-application/grouping-devices/#using-smart-groups\">\n user documentation\n </a>\n .\n </small>\n </p>\n</ng-template>\n", dependencies: [{ kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { kind: "directive", type: RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "component", type: GuideDocsComponent, selector: "[c8y-guide-docs]" }, { kind: "directive", type: GuideHrefDirective, selector: "[c8y-guide-href]", inputs: ["c8y-guide-href"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
59
59
  }
60
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AddSmartGroupComponent, decorators: [{
61
61
  type: Component,
62
- args: [{ selector: 'c8y-add-smart-group', standalone: false, template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-group-smart'\"></i>\n <h4\n id=\"modal-title\"\n translate\n >\n Add smart group\n </h4>\n </div>\n\n <form\n #createSmartGroup=\"ngForm\"\n (ngSubmit)=\"createSmartGroup.form.valid && create()\"\n >\n <div class=\"modal-inner-scroll\">\n <div\n class=\"modal-body\"\n id=\"modal-body\"\n >\n <c8y-form-group>\n <label\n class=\"d-inline-block\"\n for=\"name\"\n translate\n >\n Group name\n </label>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"customPopoverTemplate\"\n placement=\"right\"\n type=\"button\"\n [outsideClick]=\"true\"\n data-cy=\"add-smart-group-component--Help-button\"\n ></button>\n <input\n class=\"form-control\"\n id=\"name\"\n placeholder=\"{{ 'e.g. My smart group' | translate }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"smartGroup.name\"\n />\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"close()\"\n translate\n >\n Cancel\n </button>\n\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add' | translate }}\"\n type=\"submit\"\n [disabled]=\"createSmartGroup.form.invalid\"\n translate\n >\n Add\n </button>\n </div>\n </form>\n</div>\n\n<ng-template #customPopoverTemplate>\n <div\n class=\"m-b-16\"\n style=\"pointer-events: auto\"\n tabindex=\"0\"\n data-cy=\"add-smart-group-component--popover-Template\"\n translate\n >\n Th\u0435 smart group will be created based on the filters currently applied in the device list.\n </div>\n <br />\n <p\n c8y-guide-docs\n translate\n ngNonBindable\n >\n <small>\n Find out more in the\n <a c8y-guide-href=\"docs/device-management-application/grouping-devices/#using-smart-groups\">\n user documentation\n </a>\n .\n </small>\n </p>\n</ng-template>\n" }]
63
- }], ctorParameters: () => [{ type: i1.BsModalRef }, { type: i2.SmartGroupsService }, { type: i1$1.DeviceGridService }, { type: i4.AlertService }, { type: i5.TranslateService }] });
62
+ args: [{ selector: 'c8y-add-smart-group', imports: [
63
+ IconDirective,
64
+ C8yTranslateDirective,
65
+ FormsModule,
66
+ FormGroupComponent,
67
+ PopoverDirective,
68
+ RequiredInputPlaceholderDirective,
69
+ GuideDocsComponent,
70
+ GuideHrefDirective,
71
+ C8yTranslatePipe
72
+ ], template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-group-smart'\"></i>\n <h4\n id=\"modal-title\"\n translate\n >\n Add smart group\n </h4>\n </div>\n\n <form\n #createSmartGroup=\"ngForm\"\n (ngSubmit)=\"createSmartGroup.form.valid && create()\"\n >\n <div class=\"modal-inner-scroll\">\n <div\n class=\"modal-body\"\n id=\"modal-body\"\n >\n <c8y-form-group>\n <label\n class=\"d-inline-block\"\n for=\"name\"\n translate\n >\n Group name\n </label>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"customPopoverTemplate\"\n placement=\"right\"\n type=\"button\"\n [outsideClick]=\"true\"\n data-cy=\"add-smart-group-component--Help-button\"\n ></button>\n <input\n class=\"form-control\"\n id=\"name\"\n placeholder=\"{{ 'e.g. My smart group' | translate }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"smartGroup.name\"\n />\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"close()\"\n translate\n >\n Cancel\n </button>\n\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add' | translate }}\"\n type=\"submit\"\n [disabled]=\"createSmartGroup.form.invalid\"\n translate\n >\n Add\n </button>\n </div>\n </form>\n</div>\n\n<ng-template #customPopoverTemplate>\n <div\n class=\"m-b-16\"\n style=\"pointer-events: auto\"\n tabindex=\"0\"\n data-cy=\"add-smart-group-component--popover-Template\"\n translate\n >\n Th\u0435 smart group will be created based on the filters currently applied in the device list.\n </div>\n <br />\n <p\n c8y-guide-docs\n translate\n ngNonBindable\n >\n <small>\n Find out more in the\n <a c8y-guide-href=\"docs/device-management-application/grouping-devices/#using-smart-groups\">\n user documentation\n </a>\n .\n </small>\n </p>\n</ng-template>\n" }]
73
+ }], ctorParameters: () => [{ type: i1.BsModalRef }, { type: i2.SmartGroupsService }, { type: i3.DeviceGridService }, { type: i4.AlertService }, { type: i5.TranslateService }] });
64
74
 
65
75
  const HOOK_DEVICE_LIST_COLUMNS = new InjectionToken('HOOK_ALL_DEVICES_LIST_COLUMNS');
66
76
  /**
@@ -87,7 +97,7 @@ class DeviceListExtensionService extends ExtensionPointWithoutStateForPlugins {
87
97
  () => this.factories
88
98
  ]).pipe(map((columns) => isEmpty(columns) ? this.deviceGridService.getDefaultColumns() : columns), startWith(this.deviceGridService.getDefaultColumns()), shareReplay(1));
89
99
  }
90
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListExtensionService, deps: [{ token: i0.Injector }, { token: i1$2.Router }, { token: i4.PluginsResolveService }, { token: i1$1.DeviceGridService }], target: i0.ɵɵFactoryTarget.Injectable }); }
100
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListExtensionService, deps: [{ token: i0.Injector }, { token: i1$1.Router }, { token: i4.PluginsResolveService }, { token: i3.DeviceGridService }], target: i0.ɵɵFactoryTarget.Injectable }); }
91
101
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListExtensionService, providedIn: 'root' }); }
92
102
  }
93
103
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListExtensionService, decorators: [{
@@ -95,7 +105,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
95
105
  args: [{
96
106
  providedIn: 'root'
97
107
  }]
98
- }], ctorParameters: () => [{ type: i0.Injector }, { type: i1$2.Router }, { type: i4.PluginsResolveService }, { type: i1$1.DeviceGridService }] });
108
+ }], ctorParameters: () => [{ type: i0.Injector }, { type: i1$1.Router }, { type: i4.PluginsResolveService }, { type: i3.DeviceGridService }] });
99
109
 
100
110
  class DeviceListNavigationFactory {
101
111
  constructor() {
@@ -150,8 +160,8 @@ class DeviceListComponent {
150
160
  initialState
151
161
  });
152
162
  }
153
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListComponent, deps: [{ token: i1$1.DeviceGridService }, { token: i1.BsModalService }, { token: DeviceListExtensionService }], target: i0.ɵɵFactoryTarget.Component }); }
154
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DeviceListComponent, isStandalone: false, selector: "c8y-device-list", providers: [
163
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListComponent, deps: [{ token: i3.DeviceGridService }, { token: i1.BsModalService }, { token: DeviceListExtensionService }], target: i0.ɵɵFactoryTarget.Component }); }
164
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DeviceListComponent, isStandalone: true, selector: "c8y-device-list", providers: [
155
165
  {
156
166
  provide: DATA_GRID_CONFIGURATION_STRATEGY,
157
167
  useClass: UserPreferencesConfigurationStrategy
@@ -160,7 +170,7 @@ class DeviceListComponent {
160
170
  provide: DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER,
161
171
  useExisting: DeviceListComponent
162
172
  }
163
- ], ngImport: i0, template: "<c8y-title>\n {{ 'All devices' | translate }}\n</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'exchange'\"\n [label]=\"'Devices' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-management'\"\n [label]=\"'All devices' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add smart group' | translate }}\"\n (click)=\"createSmartGroup()\"\n >\n <i c8yIcon=\"c8y-group-smart\"></i>\n {{ 'Add smart group' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/viewing-all-devices/#viewing-all-devices\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-device-grid\n [columns]=\"columns$ | async\"\n [infiniteScroll]=\"(count$ | async) === undefined ? 'auto' : undefined\"\n (onDeviceQueryStringChange)=\"deviceQueryStringOutput = $event\"\n c8yProductExperience\n [actionName]=\"'allDevices'\"\n ></c8y-device-grid>\n</div>\n", dependencies: [{ kind: "component", type: i4.ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "component", type: i4.BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: i4.BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "directive", type: i4.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "component", type: i4.TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "directive", type: i4.ProductExperienceDirective, selector: "[c8yProductExperience]", inputs: ["actionName", "actionData", "inherit", "suppressDataOverriding"] }, { kind: "component", type: i4.HelpComponent, selector: "c8y-help", inputs: ["src", "isCollapsed", "priority", "icon"] }, { kind: "component", type: i1$1.DeviceGridComponent, selector: "c8y-device-grid", inputs: ["dataCallback", "refresh", "title", "loadMoreItemsLabel", "loadingItemsLabel", "legacyConfigKey", "legacyFilterKey", "columns", "pagination", "infiniteScroll", "actionControls", "selectable", "singleSelection", "baseQuery", "bulkActionControls", "headerActionControls", "childDeviceGrid", "parentDeviceId", "withChildren", "showSearch", "activeClassName"], outputs: ["onColumnsChange", "onFilterChange", "onDeviceQueryStringChange", "itemsSelect"] }, { kind: "pipe", type: i4.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i5$1.AsyncPipe, name: "async" }] }); }
173
+ ], ngImport: i0, template: "<c8y-title>\n {{ 'All devices' | translate }}\n</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'exchange'\"\n [label]=\"'Devices' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-management'\"\n [label]=\"'All devices' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add smart group' | translate }}\"\n (click)=\"createSmartGroup()\"\n >\n <i c8yIcon=\"c8y-group-smart\"></i>\n {{ 'Add smart group' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/viewing-all-devices/#viewing-all-devices\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-device-grid\n [columns]=\"columns$ | async\"\n [infiniteScroll]=\"(count$ | async) === undefined ? 'auto' : undefined\"\n (onDeviceQueryStringChange)=\"deviceQueryStringOutput = $event\"\n c8yProductExperience\n [actionName]=\"'allDevices'\"\n ></c8y-device-grid>\n</div>\n", dependencies: [{ kind: "component", type: TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "component", type: BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "component", type: ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "component", type: HelpComponent, selector: "c8y-help", inputs: ["src", "isCollapsed", "priority", "icon"] }, { kind: "component", type: DeviceGridComponent, selector: "c8y-device-grid", inputs: ["dataCallback", "refresh", "title", "loadMoreItemsLabel", "loadingItemsLabel", "legacyConfigKey", "legacyFilterKey", "columns", "pagination", "infiniteScroll", "actionControls", "selectable", "singleSelection", "baseQuery", "bulkActionControls", "headerActionControls", "childDeviceGrid", "parentDeviceId", "withChildren", "showSearch", "activeClassName"], outputs: ["onColumnsChange", "onFilterChange", "onDeviceQueryStringChange", "itemsSelect"] }, { kind: "directive", type: ProductExperienceDirective, selector: "[c8yProductExperience]", inputs: ["actionName", "actionData", "inherit", "suppressDataOverriding"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
164
174
  }
165
175
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListComponent, decorators: [{
166
176
  type: Component,
@@ -173,8 +183,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
173
183
  provide: DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER,
174
184
  useExisting: DeviceListComponent
175
185
  }
176
- ], standalone: false, template: "<c8y-title>\n {{ 'All devices' | translate }}\n</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'exchange'\"\n [label]=\"'Devices' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-management'\"\n [label]=\"'All devices' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add smart group' | translate }}\"\n (click)=\"createSmartGroup()\"\n >\n <i c8yIcon=\"c8y-group-smart\"></i>\n {{ 'Add smart group' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/viewing-all-devices/#viewing-all-devices\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-device-grid\n [columns]=\"columns$ | async\"\n [infiniteScroll]=\"(count$ | async) === undefined ? 'auto' : undefined\"\n (onDeviceQueryStringChange)=\"deviceQueryStringOutput = $event\"\n c8yProductExperience\n [actionName]=\"'allDevices'\"\n ></c8y-device-grid>\n</div>\n" }]
177
- }], ctorParameters: () => [{ type: i1$1.DeviceGridService }, { type: i1.BsModalService }, { type: DeviceListExtensionService }] });
186
+ ], imports: [
187
+ TitleComponent,
188
+ BreadcrumbComponent,
189
+ BreadcrumbItemComponent,
190
+ ActionBarItemComponent,
191
+ IconDirective,
192
+ HelpComponent,
193
+ DeviceGridComponent,
194
+ ProductExperienceDirective,
195
+ C8yTranslatePipe,
196
+ AsyncPipe
197
+ ], template: "<c8y-title>\n {{ 'All devices' | translate }}\n</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'exchange'\"\n [label]=\"'Devices' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-management'\"\n [label]=\"'All devices' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add smart group' | translate }}\"\n (click)=\"createSmartGroup()\"\n >\n <i c8yIcon=\"c8y-group-smart\"></i>\n {{ 'Add smart group' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/viewing-all-devices/#viewing-all-devices\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-device-grid\n [columns]=\"columns$ | async\"\n [infiniteScroll]=\"(count$ | async) === undefined ? 'auto' : undefined\"\n (onDeviceQueryStringChange)=\"deviceQueryStringOutput = $event\"\n c8yProductExperience\n [actionName]=\"'allDevices'\"\n ></c8y-device-grid>\n</div>\n" }]
198
+ }], ctorParameters: () => [{ type: i3.DeviceGridService }, { type: i1.BsModalService }, { type: DeviceListExtensionService }] });
178
199
 
179
200
  class ActionControlsFactory {
180
201
  constructor(deviceGridService) {
@@ -197,13 +218,13 @@ class ActionControlsFactory {
197
218
  }
198
219
  };
199
220
  }
200
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ActionControlsFactory, deps: [{ token: i1$1.DeviceGridService }], target: i0.ɵɵFactoryTarget.Injectable }); }
221
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ActionControlsFactory, deps: [{ token: i3.DeviceGridService }], target: i0.ɵɵFactoryTarget.Injectable }); }
201
222
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ActionControlsFactory, providedIn: 'root' }); }
202
223
  }
203
224
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ActionControlsFactory, decorators: [{
204
225
  type: Injectable,
205
226
  args: [{ providedIn: 'root' }]
206
- }], ctorParameters: () => [{ type: i1$1.DeviceGridService }] });
227
+ }], ctorParameters: () => [{ type: i3.DeviceGridService }] });
207
228
 
208
229
  class DevicesBreadcrumbFactory {
209
230
  async get(route) {
@@ -248,11 +269,12 @@ const deviceListRoutes = [
248
269
  ];
249
270
  class DeviceListModule {
250
271
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
251
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DeviceListModule, declarations: [DeviceListComponent, AddSmartGroupComponent], imports: [CoreModule,
272
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DeviceListModule, imports: [CoreModule,
252
273
  CommonModule,
253
274
  DeviceGridModule,
254
275
  PopoverModule,
255
- TooltipModule, i1$2.RouterModule] }); }
276
+ TooltipModule, i1$1.RouterModule, DeviceListComponent,
277
+ AddSmartGroupComponent] }); }
256
278
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListModule, providers: [
257
279
  hookNavigator(DeviceListNavigationFactory),
258
280
  hookBreadcrumb(DevicesBreadcrumbFactory),
@@ -262,7 +284,9 @@ class DeviceListModule {
262
284
  DeviceGridModule,
263
285
  PopoverModule,
264
286
  TooltipModule,
265
- RouterModule.forChild(deviceListRoutes)] }); }
287
+ RouterModule.forChild(deviceListRoutes),
288
+ DeviceListComponent,
289
+ AddSmartGroupComponent] }); }
266
290
  }
267
291
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceListModule, decorators: [{
268
292
  type: NgModule,
@@ -273,9 +297,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
273
297
  DeviceGridModule,
274
298
  PopoverModule,
275
299
  TooltipModule,
276
- RouterModule.forChild(deviceListRoutes)
300
+ RouterModule.forChild(deviceListRoutes),
301
+ DeviceListComponent,
302
+ AddSmartGroupComponent
277
303
  ],
278
- declarations: [DeviceListComponent, AddSmartGroupComponent],
279
304
  exports: [],
280
305
  providers: [
281
306
  hookNavigator(DeviceListNavigationFactory),
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-device-list.mjs","sources":["../../device-list/add-smart-group.component.ts","../../device-list/add-smart-group.component.html","../../device-list/device-list-extension.service.ts","../../device-list/device-list-navigation.factory.ts","../../device-list/device-list.component.ts","../../device-list/device-list.component.html","../../device-list/action-controls.factory.ts","../../device-list/devices.breadcrumb-factory.ts","../../device-list/device-list.module.ts","../../device-list/c8y-ngx-components-device-list.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { SmartGroupsService } from '@c8y/client';\nimport { AlertService, gettext } from '@c8y/ngx-components';\nimport { DeviceGridService } from '@c8y/ngx-components/device-grid';\nimport { TranslateService } from '@ngx-translate/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { of } from 'rxjs';\nimport { catchError, switchMap, take, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'c8y-add-smart-group',\n templateUrl: './add-smart-group.component.html',\n standalone: false\n})\nexport class AddSmartGroupComponent {\n smartGroup = {\n name: '',\n type: 'c8y_DynamicGroup',\n c8y_IsDynamicGroup: {}\n };\n\n configKey: string;\n deviceQuery: string;\n\n constructor(\n private modal: BsModalRef,\n private smartGroupsService: SmartGroupsService,\n private deviceGridService: DeviceGridService,\n private alert: AlertService,\n private translateService: TranslateService\n ) {}\n\n create() {\n return this.deviceGridService\n .getConfig$(this.configKey)\n .pipe(\n switchMap(config => {\n return this.smartGroupsService.create({\n smartGroup: this.smartGroup,\n deviceQueryString: this.deviceQuery,\n configurableColumns: config\n });\n }),\n tap(() => {\n this.alert.success(\n this.translateService.instant(gettext('Smart group \"{{ name }}\" added.'), {\n name: this.smartGroup.name\n })\n );\n this.modal.hide();\n }),\n catchError(ex => {\n this.alert.addServerFailure(ex);\n return of([]);\n }),\n take(1)\n )\n .subscribe();\n }\n\n close() {\n this.modal.hide();\n }\n}\n","<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-group-smart'\"></i>\n <h4\n id=\"modal-title\"\n translate\n >\n Add smart group\n </h4>\n </div>\n\n <form\n #createSmartGroup=\"ngForm\"\n (ngSubmit)=\"createSmartGroup.form.valid && create()\"\n >\n <div class=\"modal-inner-scroll\">\n <div\n class=\"modal-body\"\n id=\"modal-body\"\n >\n <c8y-form-group>\n <label\n class=\"d-inline-block\"\n for=\"name\"\n translate\n >\n Group name\n </label>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"customPopoverTemplate\"\n placement=\"right\"\n type=\"button\"\n [outsideClick]=\"true\"\n data-cy=\"add-smart-group-component--Help-button\"\n ></button>\n <input\n class=\"form-control\"\n id=\"name\"\n placeholder=\"{{ 'e.g. My smart group' | translate }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"smartGroup.name\"\n />\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"close()\"\n translate\n >\n Cancel\n </button>\n\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add' | translate }}\"\n type=\"submit\"\n [disabled]=\"createSmartGroup.form.invalid\"\n translate\n >\n Add\n </button>\n </div>\n </form>\n</div>\n\n<ng-template #customPopoverTemplate>\n <div\n class=\"m-b-16\"\n style=\"pointer-events: auto\"\n tabindex=\"0\"\n data-cy=\"add-smart-group-component--popover-Template\"\n translate\n >\n Thе smart group will be created based on the filters currently applied in the device list.\n </div>\n <br />\n <p\n c8y-guide-docs\n translate\n ngNonBindable\n >\n <small>\n Find out more in the\n <a c8y-guide-href=\"docs/device-management-application/grouping-devices/#using-smart-groups\">\n user documentation\n </a>\n .\n </small>\n </p>\n</ng-template>\n","import { Injectable, InjectionToken, Injector } from '@angular/core';\nimport { Router } from '@angular/router';\nimport {\n Column,\n ExtensionFactory,\n ExtensionPointWithoutStateForPlugins,\n fromTriggerOnce,\n GenericHookOptions,\n GenericHookType,\n hookGeneric,\n PluginsResolveService\n} from '@c8y/ngx-components';\nimport { DeviceGridService } from '@c8y/ngx-components/device-grid';\nimport { flatten, isEmpty } from 'lodash-es';\nimport { Observable } from 'rxjs';\nimport { map, shareReplay, startWith } from 'rxjs/operators';\n\nconst HOOK_DEVICE_LIST_COLUMNS = new InjectionToken<GenericHookType<Column>>(\n 'HOOK_ALL_DEVICES_LIST_COLUMNS'\n);\n\nexport type DeviceListColumnsFactory = ExtensionFactory<Column>;\n\n/**\n * A hook to override the default device grid columns configuration in `c8y-device-list` component.\n */\nexport function hookDeviceListColumns(\n columns: GenericHookType<Column>,\n options?: Partial<GenericHookOptions>\n) {\n return hookGeneric<Column>(columns, HOOK_DEVICE_LIST_COLUMNS, options);\n}\n\n/**\n * A service defining device list column extension options.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceListExtensionService extends ExtensionPointWithoutStateForPlugins<Column> {\n constructor(\n rootInjector: Injector,\n private router: Router,\n plugins: PluginsResolveService,\n private deviceGridService: DeviceGridService\n ) {\n super(rootInjector, plugins);\n this.items$ = this.setupItemsObservable();\n }\n\n protected setupItemsObservable(): Observable<Column[]> {\n return fromTriggerOnce<Column>(this.router, this.refresh$, [\n () =>\n flatten(\n this.injectors.map(injector =>\n injector.get(HOOK_DEVICE_LIST_COLUMNS, [], {\n self: true\n })\n )\n ),\n () => this.factories\n ]).pipe(\n map((columns: Column[]) =>\n isEmpty(columns) ? this.deviceGridService.getDefaultColumns() : columns\n ),\n startWith(this.deviceGridService.getDefaultColumns()),\n shareReplay(1)\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { gettext, NavigatorNode, NavigatorNodeFactory } from '@c8y/ngx-components';\n\n@Injectable()\nexport class DeviceListNavigationFactory implements NavigatorNodeFactory {\n nav = new NavigatorNode({\n label: gettext('All devices'),\n path: 'device',\n icon: 'c8y-device-management',\n parent: {\n label: gettext('Devices'),\n icon: 'exchange'\n },\n priority: 2000\n });\n\n async get() {\n return this.nav;\n }\n}\n","import { Component } from '@angular/core';\nimport {\n Column,\n DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER,\n DATA_GRID_CONFIGURATION_STRATEGY,\n GridConfigContextProvider,\n UserPreferencesConfigurationStrategy,\n UserPreferencesGridConfigContext\n} from '@c8y/ngx-components';\nimport { DeviceGridService } from '@c8y/ngx-components/device-grid';\nimport { BsModalService } from 'ngx-bootstrap/modal';\nimport { Observable } from 'rxjs';\nimport { AddSmartGroupComponent } from './add-smart-group.component';\nimport { DeviceListExtensionService } from './device-list-extension.service';\n\n@Component({\n selector: 'c8y-device-list',\n templateUrl: './device-list.component.html',\n providers: [\n {\n provide: DATA_GRID_CONFIGURATION_STRATEGY,\n useClass: UserPreferencesConfigurationStrategy\n },\n {\n provide: DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER,\n useExisting: DeviceListComponent\n }\n ],\n standalone: false\n})\nexport class DeviceListComponent implements GridConfigContextProvider {\n readonly GRID_CONFIG_KEY = 'device-grid-all';\n\n count$ = this.deviceGridService.getTotal({});\n\n columns$: Observable<Column[]>;\n deviceQueryStringOutput: string;\n\n constructor(\n protected deviceGridService: DeviceGridService,\n private bsModalService: BsModalService,\n deviceListExtensionService: DeviceListExtensionService\n ) {\n this.columns$ = deviceListExtensionService.items$;\n }\n\n getGridConfigContext(): UserPreferencesGridConfigContext {\n return {\n key: this.GRID_CONFIG_KEY,\n defaultColumns: this.deviceGridService.getDefaultColumns(),\n legacyConfigKey: 'all-devices-columns-meta_',\n legacyFilterKey: 'all-devices-columns-config'\n };\n }\n\n async createSmartGroup() {\n const initialState = {\n configKey: this.GRID_CONFIG_KEY,\n deviceQuery: this.deviceQueryStringOutput\n };\n\n this.bsModalService.show(AddSmartGroupComponent, {\n class: 'modal-sm',\n ariaDescribedby: 'modal-body',\n ariaLabelledBy: 'modal-title',\n ignoreBackdropClick: true,\n keyboard: false,\n initialState\n });\n }\n}\n","<c8y-title>\n {{ 'All devices' | translate }}\n</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'exchange'\"\n [label]=\"'Devices' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-management'\"\n [label]=\"'All devices' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add smart group' | translate }}\"\n (click)=\"createSmartGroup()\"\n >\n <i c8yIcon=\"c8y-group-smart\"></i>\n {{ 'Add smart group' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/viewing-all-devices/#viewing-all-devices\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-device-grid\n [columns]=\"columns$ | async\"\n [infiniteScroll]=\"(count$ | async) === undefined ? 'auto' : undefined\"\n (onDeviceQueryStringChange)=\"deviceQueryStringOutput = $event\"\n c8yProductExperience\n [actionName]=\"'allDevices'\"\n ></c8y-device-grid>\n</div>\n","import { Injectable } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport {\n ActionControlFactory,\n ActionControlHook,\n BuiltInActionType,\n Row\n} from '@c8y/ngx-components';\nimport { DeviceGridService } from '@c8y/ngx-components/device-grid';\n\n@Injectable({ providedIn: 'root' })\nexport class ActionControlsFactory implements ActionControlFactory {\n constructor(private deviceGridService: DeviceGridService) {}\n\n get(): ActionControlHook {\n return {\n actionControls: [\n {\n type: BuiltInActionType.Delete,\n priority: -Infinity,\n callback: async (item: Row, reload: (boolean?) => void) => {\n await this.deviceGridService.delete(item as IManagedObject);\n reload(false);\n }\n }\n ],\n matchesGrid(_, context) {\n return context?.key === 'device-grid-all';\n }\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport {\n Breadcrumb,\n BreadcrumbFactory,\n BreadcrumbItem,\n gettext,\n ViewContext\n} from '@c8y/ngx-components';\n\n@Injectable()\nexport class DevicesBreadcrumbFactory implements BreadcrumbFactory {\n async get(route: ActivatedRoute) {\n const { context, contextData } = route.snapshot?.parent?.data || {};\n const { routeConfig } = route.snapshot;\n\n if (\n context === ViewContext.Device ||\n (routeConfig as { context: ViewContext })?.context === ViewContext.Device\n ) {\n const breadcrumb: Breadcrumb = { items: [] };\n const breadcrumbItems: BreadcrumbItem[] = [];\n\n breadcrumbItems.push({\n label: gettext('Devices'),\n icon: 'exchange'\n } as BreadcrumbItem);\n\n breadcrumbItems.push({\n label: gettext('All devices'),\n path: '/device'\n });\n\n const name = contextData?.name;\n\n if (!!name) {\n breadcrumbItems.push({ label: name } as BreadcrumbItem);\n }\n\n const label = (routeConfig as { label: string })?.label;\n\n if (!!label) {\n breadcrumbItems.push({ label } as BreadcrumbItem);\n }\n\n breadcrumb.items = breadcrumbItems;\n return breadcrumb;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Route, RouterModule } from '@angular/router';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport {\n CommonModule,\n CoreModule,\n hookBreadcrumb,\n hookDataGridActionControls,\n hookNavigator\n} from '@c8y/ngx-components';\nimport { DeviceGridModule } from '@c8y/ngx-components/device-grid';\nimport { ActionControlsFactory } from './action-controls.factory';\n\nimport { AddSmartGroupComponent } from './add-smart-group.component';\nimport { DeviceListNavigationFactory } from './device-list-navigation.factory';\nimport { DeviceListComponent } from './device-list.component';\nimport { DevicesBreadcrumbFactory } from './devices.breadcrumb-factory';\n\nconst deviceListRoutes: Route[] = [\n {\n path: 'device',\n component: DeviceListComponent\n }\n];\n\n@NgModule({\n imports: [\n CoreModule,\n CommonModule,\n DeviceGridModule,\n PopoverModule,\n TooltipModule,\n RouterModule.forChild(deviceListRoutes)\n ],\n declarations: [DeviceListComponent, AddSmartGroupComponent],\n exports: [],\n providers: [\n hookNavigator(DeviceListNavigationFactory),\n hookBreadcrumb(DevicesBreadcrumbFactory),\n hookDataGridActionControls(ActionControlsFactory)\n ]\n})\nexport class DeviceListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i1","i2","i3.DeviceListExtensionService","i5"],"mappings":"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"}
1
+ {"version":3,"file":"c8y-ngx-components-device-list.mjs","sources":["../../device-list/add-smart-group.component.ts","../../device-list/add-smart-group.component.html","../../device-list/device-list-extension.service.ts","../../device-list/device-list-navigation.factory.ts","../../device-list/device-list.component.ts","../../device-list/device-list.component.html","../../device-list/action-controls.factory.ts","../../device-list/devices.breadcrumb-factory.ts","../../device-list/device-list.module.ts","../../device-list/c8y-ngx-components-device-list.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { SmartGroupsService } from '@c8y/client';\nimport {\n AlertService,\n gettext,\n IconDirective,\n C8yTranslateDirective,\n FormGroupComponent,\n RequiredInputPlaceholderDirective,\n GuideDocsComponent,\n GuideHrefDirective,\n C8yTranslatePipe\n} from '@c8y/ngx-components';\nimport { DeviceGridService } from '@c8y/ngx-components/device-grid';\nimport { TranslateService } from '@ngx-translate/core';\nimport { BsModalRef } from 'ngx-bootstrap/modal';\nimport { of } from 'rxjs';\nimport { catchError, switchMap, take, tap } from 'rxjs/operators';\nimport { FormsModule } from '@angular/forms';\nimport { PopoverDirective } from 'ngx-bootstrap/popover';\n\n@Component({\n selector: 'c8y-add-smart-group',\n templateUrl: './add-smart-group.component.html',\n imports: [\n IconDirective,\n C8yTranslateDirective,\n FormsModule,\n FormGroupComponent,\n PopoverDirective,\n RequiredInputPlaceholderDirective,\n GuideDocsComponent,\n GuideHrefDirective,\n C8yTranslatePipe\n ]\n})\nexport class AddSmartGroupComponent {\n smartGroup = {\n name: '',\n type: 'c8y_DynamicGroup',\n c8y_IsDynamicGroup: {}\n };\n\n configKey: string;\n deviceQuery: string;\n\n constructor(\n private modal: BsModalRef,\n private smartGroupsService: SmartGroupsService,\n private deviceGridService: DeviceGridService,\n private alert: AlertService,\n private translateService: TranslateService\n ) {}\n\n create() {\n return this.deviceGridService\n .getConfig$(this.configKey)\n .pipe(\n switchMap(config => {\n return this.smartGroupsService.create({\n smartGroup: this.smartGroup,\n deviceQueryString: this.deviceQuery,\n configurableColumns: config\n });\n }),\n tap(() => {\n this.alert.success(\n this.translateService.instant(gettext('Smart group \"{{ name }}\" added.'), {\n name: this.smartGroup.name\n })\n );\n this.modal.hide();\n }),\n catchError(ex => {\n this.alert.addServerFailure(ex);\n return of([]);\n }),\n take(1)\n )\n .subscribe();\n }\n\n close() {\n this.modal.hide();\n }\n}\n","<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-group-smart'\"></i>\n <h4\n id=\"modal-title\"\n translate\n >\n Add smart group\n </h4>\n </div>\n\n <form\n #createSmartGroup=\"ngForm\"\n (ngSubmit)=\"createSmartGroup.form.valid && create()\"\n >\n <div class=\"modal-inner-scroll\">\n <div\n class=\"modal-body\"\n id=\"modal-body\"\n >\n <c8y-form-group>\n <label\n class=\"d-inline-block\"\n for=\"name\"\n translate\n >\n Group name\n </label>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"customPopoverTemplate\"\n placement=\"right\"\n type=\"button\"\n [outsideClick]=\"true\"\n data-cy=\"add-smart-group-component--Help-button\"\n ></button>\n <input\n class=\"form-control\"\n id=\"name\"\n placeholder=\"{{ 'e.g. My smart group' | translate }}\"\n name=\"name\"\n type=\"text\"\n autocomplete=\"off\"\n required\n [(ngModel)]=\"smartGroup.name\"\n />\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"close()\"\n translate\n >\n Cancel\n </button>\n\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Add' | translate }}\"\n type=\"submit\"\n [disabled]=\"createSmartGroup.form.invalid\"\n translate\n >\n Add\n </button>\n </div>\n </form>\n</div>\n\n<ng-template #customPopoverTemplate>\n <div\n class=\"m-b-16\"\n style=\"pointer-events: auto\"\n tabindex=\"0\"\n data-cy=\"add-smart-group-component--popover-Template\"\n translate\n >\n Thе smart group will be created based on the filters currently applied in the device list.\n </div>\n <br />\n <p\n c8y-guide-docs\n translate\n ngNonBindable\n >\n <small>\n Find out more in the\n <a c8y-guide-href=\"docs/device-management-application/grouping-devices/#using-smart-groups\">\n user documentation\n </a>\n .\n </small>\n </p>\n</ng-template>\n","import { Injectable, InjectionToken, Injector } from '@angular/core';\nimport { Router } from '@angular/router';\nimport {\n Column,\n ExtensionFactory,\n ExtensionPointWithoutStateForPlugins,\n fromTriggerOnce,\n GenericHookOptions,\n GenericHookType,\n hookGeneric,\n PluginsResolveService\n} from '@c8y/ngx-components';\nimport { DeviceGridService } from '@c8y/ngx-components/device-grid';\nimport { flatten, isEmpty } from 'lodash-es';\nimport { Observable } from 'rxjs';\nimport { map, shareReplay, startWith } from 'rxjs/operators';\n\nconst HOOK_DEVICE_LIST_COLUMNS = new InjectionToken<GenericHookType<Column>>(\n 'HOOK_ALL_DEVICES_LIST_COLUMNS'\n);\n\nexport type DeviceListColumnsFactory = ExtensionFactory<Column>;\n\n/**\n * A hook to override the default device grid columns configuration in `c8y-device-list` component.\n */\nexport function hookDeviceListColumns(\n columns: GenericHookType<Column>,\n options?: Partial<GenericHookOptions>\n) {\n return hookGeneric<Column>(columns, HOOK_DEVICE_LIST_COLUMNS, options);\n}\n\n/**\n * A service defining device list column extension options.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceListExtensionService extends ExtensionPointWithoutStateForPlugins<Column> {\n constructor(\n rootInjector: Injector,\n private router: Router,\n plugins: PluginsResolveService,\n private deviceGridService: DeviceGridService\n ) {\n super(rootInjector, plugins);\n this.items$ = this.setupItemsObservable();\n }\n\n protected setupItemsObservable(): Observable<Column[]> {\n return fromTriggerOnce<Column>(this.router, this.refresh$, [\n () =>\n flatten(\n this.injectors.map(injector =>\n injector.get(HOOK_DEVICE_LIST_COLUMNS, [], {\n self: true\n })\n )\n ),\n () => this.factories\n ]).pipe(\n map((columns: Column[]) =>\n isEmpty(columns) ? this.deviceGridService.getDefaultColumns() : columns\n ),\n startWith(this.deviceGridService.getDefaultColumns()),\n shareReplay(1)\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { gettext, NavigatorNode, NavigatorNodeFactory } from '@c8y/ngx-components';\n\n@Injectable()\nexport class DeviceListNavigationFactory implements NavigatorNodeFactory {\n nav = new NavigatorNode({\n label: gettext('All devices'),\n path: 'device',\n icon: 'c8y-device-management',\n parent: {\n label: gettext('Devices'),\n icon: 'exchange'\n },\n priority: 2000\n });\n\n async get() {\n return this.nav;\n }\n}\n","import { Component } from '@angular/core';\nimport {\n Column,\n DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER,\n DATA_GRID_CONFIGURATION_STRATEGY,\n GridConfigContextProvider,\n UserPreferencesConfigurationStrategy,\n UserPreferencesGridConfigContext,\n TitleComponent,\n BreadcrumbComponent,\n BreadcrumbItemComponent,\n ActionBarItemComponent,\n IconDirective,\n HelpComponent,\n ProductExperienceDirective,\n C8yTranslatePipe\n} from '@c8y/ngx-components';\nimport { DeviceGridService, DeviceGridComponent } from '@c8y/ngx-components/device-grid';\nimport { BsModalService } from 'ngx-bootstrap/modal';\nimport { Observable } from 'rxjs';\nimport { AddSmartGroupComponent } from './add-smart-group.component';\nimport { DeviceListExtensionService } from './device-list-extension.service';\nimport { AsyncPipe } from '@angular/common';\n\n@Component({\n selector: 'c8y-device-list',\n templateUrl: './device-list.component.html',\n providers: [\n {\n provide: DATA_GRID_CONFIGURATION_STRATEGY,\n useClass: UserPreferencesConfigurationStrategy\n },\n {\n provide: DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER,\n useExisting: DeviceListComponent\n }\n ],\n imports: [\n TitleComponent,\n BreadcrumbComponent,\n BreadcrumbItemComponent,\n ActionBarItemComponent,\n IconDirective,\n HelpComponent,\n DeviceGridComponent,\n ProductExperienceDirective,\n C8yTranslatePipe,\n AsyncPipe\n ]\n})\nexport class DeviceListComponent implements GridConfigContextProvider {\n readonly GRID_CONFIG_KEY = 'device-grid-all';\n\n count$ = this.deviceGridService.getTotal({});\n\n columns$: Observable<Column[]>;\n deviceQueryStringOutput: string;\n\n constructor(\n protected deviceGridService: DeviceGridService,\n private bsModalService: BsModalService,\n deviceListExtensionService: DeviceListExtensionService\n ) {\n this.columns$ = deviceListExtensionService.items$;\n }\n\n getGridConfigContext(): UserPreferencesGridConfigContext {\n return {\n key: this.GRID_CONFIG_KEY,\n defaultColumns: this.deviceGridService.getDefaultColumns(),\n legacyConfigKey: 'all-devices-columns-meta_',\n legacyFilterKey: 'all-devices-columns-config'\n };\n }\n\n async createSmartGroup() {\n const initialState = {\n configKey: this.GRID_CONFIG_KEY,\n deviceQuery: this.deviceQueryStringOutput\n };\n\n this.bsModalService.show(AddSmartGroupComponent, {\n class: 'modal-sm',\n ariaDescribedby: 'modal-body',\n ariaLabelledBy: 'modal-title',\n ignoreBackdropClick: true,\n keyboard: false,\n initialState\n });\n }\n}\n","<c8y-title>\n {{ 'All devices' | translate }}\n</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'exchange'\"\n [label]=\"'Devices' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-device-management'\"\n [label]=\"'All devices' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Add smart group' | translate }}\"\n (click)=\"createSmartGroup()\"\n >\n <i c8yIcon=\"c8y-group-smart\"></i>\n {{ 'Add smart group' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-help\n src=\"/docs/device-management-application/viewing-all-devices/#viewing-all-devices\"\n></c8y-help>\n\n<div class=\"content-fullpage border-top border-bottom\">\n <c8y-device-grid\n [columns]=\"columns$ | async\"\n [infiniteScroll]=\"(count$ | async) === undefined ? 'auto' : undefined\"\n (onDeviceQueryStringChange)=\"deviceQueryStringOutput = $event\"\n c8yProductExperience\n [actionName]=\"'allDevices'\"\n ></c8y-device-grid>\n</div>\n","import { Injectable } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport {\n ActionControlFactory,\n ActionControlHook,\n BuiltInActionType,\n Row\n} from '@c8y/ngx-components';\nimport { DeviceGridService } from '@c8y/ngx-components/device-grid';\n\n@Injectable({ providedIn: 'root' })\nexport class ActionControlsFactory implements ActionControlFactory {\n constructor(private deviceGridService: DeviceGridService) {}\n\n get(): ActionControlHook {\n return {\n actionControls: [\n {\n type: BuiltInActionType.Delete,\n priority: -Infinity,\n callback: async (item: Row, reload: (boolean?) => void) => {\n await this.deviceGridService.delete(item as IManagedObject);\n reload(false);\n }\n }\n ],\n matchesGrid(_, context) {\n return context?.key === 'device-grid-all';\n }\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport {\n Breadcrumb,\n BreadcrumbFactory,\n BreadcrumbItem,\n gettext,\n ViewContext\n} from '@c8y/ngx-components';\n\n@Injectable()\nexport class DevicesBreadcrumbFactory implements BreadcrumbFactory {\n async get(route: ActivatedRoute) {\n const { context, contextData } = route.snapshot?.parent?.data || {};\n const { routeConfig } = route.snapshot;\n\n if (\n context === ViewContext.Device ||\n (routeConfig as { context: ViewContext })?.context === ViewContext.Device\n ) {\n const breadcrumb: Breadcrumb = { items: [] };\n const breadcrumbItems: BreadcrumbItem[] = [];\n\n breadcrumbItems.push({\n label: gettext('Devices'),\n icon: 'exchange'\n } as BreadcrumbItem);\n\n breadcrumbItems.push({\n label: gettext('All devices'),\n path: '/device'\n });\n\n const name = contextData?.name;\n\n if (!!name) {\n breadcrumbItems.push({ label: name } as BreadcrumbItem);\n }\n\n const label = (routeConfig as { label: string })?.label;\n\n if (!!label) {\n breadcrumbItems.push({ label } as BreadcrumbItem);\n }\n\n breadcrumb.items = breadcrumbItems;\n return breadcrumb;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Route, RouterModule } from '@angular/router';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport {\n CommonModule,\n CoreModule,\n hookBreadcrumb,\n hookDataGridActionControls,\n hookNavigator\n} from '@c8y/ngx-components';\nimport { DeviceGridModule } from '@c8y/ngx-components/device-grid';\nimport { ActionControlsFactory } from './action-controls.factory';\n\nimport { AddSmartGroupComponent } from './add-smart-group.component';\nimport { DeviceListNavigationFactory } from './device-list-navigation.factory';\nimport { DeviceListComponent } from './device-list.component';\nimport { DevicesBreadcrumbFactory } from './devices.breadcrumb-factory';\n\nconst deviceListRoutes: Route[] = [\n {\n path: 'device',\n component: DeviceListComponent\n }\n];\n\n@NgModule({\n imports: [\n CoreModule,\n CommonModule,\n DeviceGridModule,\n PopoverModule,\n TooltipModule,\n RouterModule.forChild(deviceListRoutes),\n DeviceListComponent,\n AddSmartGroupComponent\n ],\n exports: [],\n providers: [\n hookNavigator(DeviceListNavigationFactory),\n hookBreadcrumb(DevicesBreadcrumbFactory),\n hookDataGridActionControls(ActionControlsFactory)\n ]\n})\nexport class DeviceListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3.DeviceListExtensionService"],"mappings":"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"}
@@ -61,14 +61,11 @@ class DeviceTypeDetail extends UpgradeComponent {
61
61
  super('c8yDeviceTypeDetail', elementRef, injector);
62
62
  }
63
63
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceTypeDetail, deps: [{ token: i0.ElementRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
64
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.14", type: DeviceTypeDetail, isStandalone: false, selector: "c8y-device-type-detail-directive", inputs: { id: "id" }, usesInheritance: true, ngImport: i0 }); }
64
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.14", type: DeviceTypeDetail, isStandalone: true, selector: "c8y-device-type-detail-directive", inputs: { id: "id" }, usesInheritance: true, ngImport: i0 }); }
65
65
  }
66
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceTypeDetail, decorators: [{
67
67
  type: Directive,
68
- args: [{
69
- selector: 'c8y-device-type-detail-directive',
70
- standalone: false
71
- }]
68
+ args: [{ selector: 'c8y-device-type-detail-directive' }]
72
69
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Injector }], propDecorators: { id: [{
73
70
  type: Input
74
71
  }] } });
@@ -85,7 +82,7 @@ class DeviceTypeDetailComponent {
85
82
  this.deviceTypeId = this.route.snapshot.paramMap.get('id');
86
83
  }
87
84
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceTypeDetailComponent, deps: [{ token: i1$1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
88
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DeviceTypeDetailComponent, isStandalone: false, selector: "c8y-device-type-detail", providers: [
85
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DeviceTypeDetailComponent, isStandalone: true, selector: "c8y-device-type-detail", providers: [
89
86
  {
90
87
  deps: ['$injector'],
91
88
  provide: '$scope',
@@ -110,7 +107,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
110
107
  }
111
108
  ],
112
109
  changeDetection: ChangeDetectionStrategy.OnPush,
113
- standalone: false
110
+ imports: [DeviceTypeDetail]
114
111
  }]
115
112
  }], ctorParameters: () => [{ type: i1$1.ActivatedRoute }] });
116
113
 
@@ -132,7 +129,7 @@ const protocolRoutes = fieldbusTypes.map(protocol => ({
132
129
  }));
133
130
  class DeviceProtocolsModule {
134
131
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceProtocolsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
135
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DeviceProtocolsModule, declarations: [DeviceTypeDetail, DeviceTypeDetailComponent], exports: [DeviceTypeDetailComponent] }); }
132
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DeviceProtocolsModule, imports: [DeviceTypeDetail, DeviceTypeDetailComponent], exports: [DeviceTypeDetailComponent] }); }
136
133
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceProtocolsModule, providers: [
137
134
  DeviceTypeDetailEditedService,
138
135
  DeviceProtocolsGuard,
@@ -142,7 +139,7 @@ class DeviceProtocolsModule {
142
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceProtocolsModule, decorators: [{
143
140
  type: NgModule,
144
141
  args: [{
145
- declarations: [DeviceTypeDetail, DeviceTypeDetailComponent],
142
+ imports: [DeviceTypeDetail, DeviceTypeDetailComponent],
146
143
  exports: [DeviceTypeDetailComponent],
147
144
  providers: [
148
145
  DeviceTypeDetailEditedService,
@@ -1 +1 @@
1
- {"version":3,"file":"c8y-ngx-components-device-protocols.mjs","sources":["../../device-protocols/device-type-detail-edited.service.ts","../../device-protocols/device-protocols.guard.ts","../../device-protocols/device-type-detail.directive.ts","../../device-protocols/device-type-detail.component.ts","../../device-protocols/device-protocols.module.ts","../../device-protocols/c8y-ngx-components-device-protocols.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class DeviceTypeDetailEditedService {\n isDetailEdited = false;\n\n getIsDetailEdited() {\n return this.isDetailEdited;\n }\n\n setIsDetailEdited(value) {\n this.isDetailEdited = value;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AlertService, gettext, ModalService, Status } from '@c8y/ngx-components';\nimport { DeviceTypeDetailEditedService } from './device-type-detail-edited.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceProtocolsGuard {\n constructor(\n private modal: ModalService,\n private alert: AlertService,\n private deviceTypeDetailEditedService: DeviceTypeDetailEditedService\n ) {}\n\n async canDeactivate(): Promise<boolean> {\n if (this.deviceTypeDetailEditedService.getIsDetailEdited()) {\n try {\n await this.modal.confirm(\n gettext('Discard changes'),\n gettext(\n 'You are about to leave this page and discard the changes made. Do you want to proceed?'\n ),\n Status.WARNING,\n {\n ok: gettext('Discard')\n }\n );\n this.deviceTypeDetailEditedService.setIsDetailEdited(false);\n return true;\n } catch (e) {\n if (e) {\n this.alert.danger(e);\n }\n return false;\n }\n }\n return true;\n }\n}\n","import { Directive, ElementRef, Injector, Input } from '@angular/core';\nimport { UpgradeComponent } from '@angular/upgrade/static';\n\n@Directive({\n selector: 'c8y-device-type-detail-directive',\n standalone: false\n})\nexport class DeviceTypeDetail extends UpgradeComponent {\n @Input() id: string;\n\n constructor(elementRef: ElementRef, injector: Injector) {\n super('c8yDeviceTypeDetail', elementRef, injector);\n }\n}\n","import { ChangeDetectionStrategy, Component, Injector, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\n\n/* https://stackoverflow.com/a/65290658 */\nexport function rootScopeTypeDetailFactory($injector: Injector) {\n return $injector.get('$rootScope').$new();\n}\n\n@Component({\n selector: 'c8y-device-type-detail',\n template: `<c8y-device-type-detail-directive\n [id]=\"deviceTypeId\"\n ></c8y-device-type-detail-directive>`,\n providers: [\n {\n deps: ['$injector'],\n provide: '$scope',\n useFactory: rootScopeTypeDetailFactory\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class DeviceTypeDetailComponent implements OnInit {\n deviceTypeId: string;\n\n constructor(private route: ActivatedRoute) {}\n\n ngOnInit() {\n this.deviceTypeId = this.route.snapshot.paramMap.get('id');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Route } from '@angular/router';\nimport { hookRoute } from '@c8y/ngx-components';\nimport { DeviceProtocolsGuard } from './device-protocols.guard';\nimport { DeviceTypeDetailEditedService } from './device-type-detail-edited.service';\nimport { DeviceTypeDetailComponent } from './device-type-detail.component';\nimport { DeviceTypeDetail } from './device-type-detail.directive';\n\nconst fieldbusTypes = [\n 'actility',\n 'canbus',\n 'canopen',\n 'lora',\n 'lpwan',\n 'modbus',\n 'opcua',\n 'profibus',\n 'sigfox'\n];\n\nconst protocolRoutes: Route[] = fieldbusTypes.map(protocol => ({\n path: `deviceprotocols/${protocol}/:id`,\n component: DeviceTypeDetailComponent,\n canDeactivate: [DeviceProtocolsGuard]\n}));\n\n@NgModule({\n declarations: [DeviceTypeDetail, DeviceTypeDetailComponent],\n exports: [DeviceTypeDetailComponent],\n providers: [\n DeviceTypeDetailEditedService,\n DeviceProtocolsGuard,\n ...protocolRoutes.map(route => hookRoute(route))\n ]\n})\nexport class DeviceProtocolsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.DeviceTypeDetailEditedService","i1","i2.DeviceTypeDetail"],"mappings":";;;;;;;MAGa,6BAA6B,CAAA;AAD1C,IAAA,WAAA,GAAA;QAEE,IAAc,CAAA,cAAA,GAAG,KAAK;AASvB;IAPC,iBAAiB,GAAA;QACf,OAAO,IAAI,CAAC,cAAc;;AAG5B,IAAA,iBAAiB,CAAC,KAAK,EAAA;AACrB,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK;;+GARlB,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAA7B,6BAA6B,EAAA,CAAA,CAAA;;4FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADzC;;;MCKY,oBAAoB,CAAA;AAC/B,IAAA,WAAA,CACU,KAAmB,EACnB,KAAmB,EACnB,6BAA4D,EAAA;QAF5D,IAAK,CAAA,KAAA,GAAL,KAAK;QACL,IAAK,CAAA,KAAA,GAAL,KAAK;QACL,IAA6B,CAAA,6BAAA,GAA7B,6BAA6B;;AAGvC,IAAA,MAAM,aAAa,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,6BAA6B,CAAC,iBAAiB,EAAE,EAAE;AAC1D,YAAA,IAAI;AACF,gBAAA,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CACtB,OAAO,CAAC,iBAAiB,CAAC,EAC1B,OAAO,CACL,wFAAwF,CACzF,EACD,MAAM,CAAC,OAAO,EACd;AACE,oBAAA,EAAE,EAAE,OAAO,CAAC,SAAS;AACtB,iBAAA,CACF;AACD,gBAAA,IAAI,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,KAAK,CAAC;AAC3D,gBAAA,OAAO,IAAI;;YACX,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,EAAE;AACL,oBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;;AAEtB,gBAAA,OAAO,KAAK;;;AAGhB,QAAA,OAAO,IAAI;;+GA7BF,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,6BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFnB,MAAM,EAAA,CAAA,CAAA;;4FAEP,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;ACCK,MAAO,gBAAiB,SAAQ,gBAAgB,CAAA;IAGpD,WAAY,CAAA,UAAsB,EAAE,QAAkB,EAAA;AACpD,QAAA,KAAK,CAAC,qBAAqB,EAAE,UAAU,EAAE,QAAQ,CAAC;;+GAJzC,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kCAAkC;AAC5C,oBAAA,UAAU,EAAE;AACb,iBAAA;sGAEU,EAAE,EAAA,CAAA;sBAAV;;;ACLH;AACM,SAAU,0BAA0B,CAAC,SAAmB,EAAA;IAC5D,OAAO,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE;AAC3C;MAiBa,yBAAyB,CAAA;AAGpC,IAAA,WAAA,CAAoB,KAAqB,EAAA;QAArB,IAAK,CAAA,KAAA,GAAL,KAAK;;IAEzB,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;;+GANjD,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,EAVzB,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,SAAA,EAAA;AACT,YAAA;gBACE,IAAI,EAAE,CAAC,WAAW,CAAC;AACnB,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,UAAU,EAAE;AACb;SACF,EATS,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;AAE2B,sCAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,gBAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAW1B,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAfrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,QAAQ,EAAE,CAAA;;AAE2B,sCAAA,CAAA;AACrC,oBAAA,SAAS,EAAE;AACT,wBAAA;4BACE,IAAI,EAAE,CAAC,WAAW,CAAC;AACnB,4BAAA,OAAO,EAAE,QAAQ;AACjB,4BAAA,UAAU,EAAE;AACb;AACF,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE;AACb,iBAAA;;;ACdD,MAAM,aAAa,GAAG;IACpB,UAAU;IACV,QAAQ;IACR,SAAS;IACT,MAAM;IACN,OAAO;IACP,QAAQ;IACR,OAAO;IACP,UAAU;IACV;CACD;AAED,MAAM,cAAc,GAAY,aAAa,CAAC,GAAG,CAAC,QAAQ,KAAK;IAC7D,IAAI,EAAE,CAAmB,gBAAA,EAAA,QAAQ,CAAM,IAAA,CAAA;AACvC,IAAA,SAAS,EAAE,yBAAyB;IACpC,aAAa,EAAE,CAAC,oBAAoB;AACrC,CAAA,CAAC,CAAC;MAWU,qBAAqB,CAAA;+GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,EARjB,YAAA,EAAA,CAAA,gBAAgB,EAAE,yBAAyB,aAChD,yBAAyB,CAAA,EAAA,CAAA,CAAA;AAOxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,EANrB,SAAA,EAAA;YACT,6BAA6B;YAC7B,oBAAoB;AACpB,YAAA,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC;AAChD,SAAA,EAAA,CAAA,CAAA;;4FAEU,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBATjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,gBAAgB,EAAE,yBAAyB,CAAC;oBAC3D,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACpC,oBAAA,SAAS,EAAE;wBACT,6BAA6B;wBAC7B,oBAAoB;AACpB,wBAAA,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC;AAChD;AACF,iBAAA;;;AClCD;;AAEG;;;;"}
1
+ {"version":3,"file":"c8y-ngx-components-device-protocols.mjs","sources":["../../device-protocols/device-type-detail-edited.service.ts","../../device-protocols/device-protocols.guard.ts","../../device-protocols/device-type-detail.directive.ts","../../device-protocols/device-type-detail.component.ts","../../device-protocols/device-protocols.module.ts","../../device-protocols/c8y-ngx-components-device-protocols.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class DeviceTypeDetailEditedService {\n isDetailEdited = false;\n\n getIsDetailEdited() {\n return this.isDetailEdited;\n }\n\n setIsDetailEdited(value) {\n this.isDetailEdited = value;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AlertService, gettext, ModalService, Status } from '@c8y/ngx-components';\nimport { DeviceTypeDetailEditedService } from './device-type-detail-edited.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceProtocolsGuard {\n constructor(\n private modal: ModalService,\n private alert: AlertService,\n private deviceTypeDetailEditedService: DeviceTypeDetailEditedService\n ) {}\n\n async canDeactivate(): Promise<boolean> {\n if (this.deviceTypeDetailEditedService.getIsDetailEdited()) {\n try {\n await this.modal.confirm(\n gettext('Discard changes'),\n gettext(\n 'You are about to leave this page and discard the changes made. Do you want to proceed?'\n ),\n Status.WARNING,\n {\n ok: gettext('Discard')\n }\n );\n this.deviceTypeDetailEditedService.setIsDetailEdited(false);\n return true;\n } catch (e) {\n if (e) {\n this.alert.danger(e);\n }\n return false;\n }\n }\n return true;\n }\n}\n","import { Directive, ElementRef, Injector, Input } from '@angular/core';\nimport { UpgradeComponent } from '@angular/upgrade/static';\n\n@Directive({ selector: 'c8y-device-type-detail-directive' })\nexport class DeviceTypeDetail extends UpgradeComponent {\n @Input() id: string;\n\n constructor(elementRef: ElementRef, injector: Injector) {\n super('c8yDeviceTypeDetail', elementRef, injector);\n }\n}\n","import { ChangeDetectionStrategy, Component, Injector, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { DeviceTypeDetail } from './device-type-detail.directive';\n\n/* https://stackoverflow.com/a/65290658 */\nexport function rootScopeTypeDetailFactory($injector: Injector) {\n return $injector.get('$rootScope').$new();\n}\n\n@Component({\n selector: 'c8y-device-type-detail',\n template: `<c8y-device-type-detail-directive\n [id]=\"deviceTypeId\"\n ></c8y-device-type-detail-directive>`,\n providers: [\n {\n deps: ['$injector'],\n provide: '$scope',\n useFactory: rootScopeTypeDetailFactory\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [DeviceTypeDetail]\n})\nexport class DeviceTypeDetailComponent implements OnInit {\n deviceTypeId: string;\n\n constructor(private route: ActivatedRoute) {}\n\n ngOnInit() {\n this.deviceTypeId = this.route.snapshot.paramMap.get('id');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Route } from '@angular/router';\nimport { hookRoute } from '@c8y/ngx-components';\nimport { DeviceProtocolsGuard } from './device-protocols.guard';\nimport { DeviceTypeDetailEditedService } from './device-type-detail-edited.service';\nimport { DeviceTypeDetailComponent } from './device-type-detail.component';\nimport { DeviceTypeDetail } from './device-type-detail.directive';\n\nconst fieldbusTypes = [\n 'actility',\n 'canbus',\n 'canopen',\n 'lora',\n 'lpwan',\n 'modbus',\n 'opcua',\n 'profibus',\n 'sigfox'\n];\n\nconst protocolRoutes: Route[] = fieldbusTypes.map(protocol => ({\n path: `deviceprotocols/${protocol}/:id`,\n component: DeviceTypeDetailComponent,\n canDeactivate: [DeviceProtocolsGuard]\n}));\n\n@NgModule({\n imports: [DeviceTypeDetail, DeviceTypeDetailComponent],\n exports: [DeviceTypeDetailComponent],\n providers: [\n DeviceTypeDetailEditedService,\n DeviceProtocolsGuard,\n ...protocolRoutes.map(route => hookRoute(route))\n ]\n})\nexport class DeviceProtocolsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.DeviceTypeDetailEditedService","i1"],"mappings":";;;;;;;MAGa,6BAA6B,CAAA;AAD1C,IAAA,WAAA,GAAA;QAEE,IAAc,CAAA,cAAA,GAAG,KAAK;AASvB;IAPC,iBAAiB,GAAA;QACf,OAAO,IAAI,CAAC,cAAc;;AAG5B,IAAA,iBAAiB,CAAC,KAAK,EAAA;AACrB,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK;;+GARlB,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAA7B,6BAA6B,EAAA,CAAA,CAAA;;4FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADzC;;;MCKY,oBAAoB,CAAA;AAC/B,IAAA,WAAA,CACU,KAAmB,EACnB,KAAmB,EACnB,6BAA4D,EAAA;QAF5D,IAAK,CAAA,KAAA,GAAL,KAAK;QACL,IAAK,CAAA,KAAA,GAAL,KAAK;QACL,IAA6B,CAAA,6BAAA,GAA7B,6BAA6B;;AAGvC,IAAA,MAAM,aAAa,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,6BAA6B,CAAC,iBAAiB,EAAE,EAAE;AAC1D,YAAA,IAAI;AACF,gBAAA,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CACtB,OAAO,CAAC,iBAAiB,CAAC,EAC1B,OAAO,CACL,wFAAwF,CACzF,EACD,MAAM,CAAC,OAAO,EACd;AACE,oBAAA,EAAE,EAAE,OAAO,CAAC,SAAS;AACtB,iBAAA,CACF;AACD,gBAAA,IAAI,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,KAAK,CAAC;AAC3D,gBAAA,OAAO,IAAI;;YACX,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,EAAE;AACL,oBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;;AAEtB,gBAAA,OAAO,KAAK;;;AAGhB,QAAA,OAAO,IAAI;;+GA7BF,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,6BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFnB,MAAM,EAAA,CAAA,CAAA;;4FAEP,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;ACFK,MAAO,gBAAiB,SAAQ,gBAAgB,CAAA;IAGpD,WAAY,CAAA,UAAsB,EAAE,QAAkB,EAAA;AACpD,QAAA,KAAK,CAAC,qBAAqB,EAAE,UAAU,EAAE,QAAQ,CAAC;;+GAJzC,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,SAAS;mBAAC,EAAE,QAAQ,EAAE,kCAAkC,EAAE;sGAEhD,EAAE,EAAA,CAAA;sBAAV;;;ACDH;AACM,SAAU,0BAA0B,CAAC,SAAmB,EAAA;IAC5D,OAAO,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE;AAC3C;MAiBa,yBAAyB,CAAA;AAGpC,IAAA,WAAA,CAAoB,KAAqB,EAAA;QAArB,IAAK,CAAA,KAAA,GAAL,KAAK;;IAEzB,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;;+GANjD,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,EAVzB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,SAAA,EAAA;AACT,YAAA;gBACE,IAAI,EAAE,CAAC,WAAW,CAAC;AACnB,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,UAAU,EAAE;AACb;SACF,EATS,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;AAE2B,sCAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAS3B,gBAAgB,EAAA,QAAA,EAAA,kCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAEf,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAfrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,QAAQ,EAAE,CAAA;;AAE2B,sCAAA,CAAA;AACrC,oBAAA,SAAS,EAAE;AACT,wBAAA;4BACE,IAAI,EAAE,CAAC,WAAW,CAAC;AACnB,4BAAA,OAAO,EAAE,QAAQ;AACjB,4BAAA,UAAU,EAAE;AACb;AACF,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,OAAO,EAAE,CAAC,gBAAgB;AAC3B,iBAAA;;;ACfD,MAAM,aAAa,GAAG;IACpB,UAAU;IACV,QAAQ;IACR,SAAS;IACT,MAAM;IACN,OAAO;IACP,QAAQ;IACR,OAAO;IACP,UAAU;IACV;CACD;AAED,MAAM,cAAc,GAAY,aAAa,CAAC,GAAG,CAAC,QAAQ,KAAK;IAC7D,IAAI,EAAE,CAAmB,gBAAA,EAAA,QAAQ,CAAM,IAAA,CAAA;AACvC,IAAA,SAAS,EAAE,yBAAyB;IACpC,aAAa,EAAE,CAAC,oBAAoB;AACrC,CAAA,CAAC,CAAC;MAWU,qBAAqB,CAAA;+GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,EARtB,OAAA,EAAA,CAAA,gBAAgB,EAAE,yBAAyB,aAC3C,yBAAyB,CAAA,EAAA,CAAA,CAAA;AAOxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,EANrB,SAAA,EAAA;YACT,6BAA6B;YAC7B,oBAAoB;AACpB,YAAA,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC;AAChD,SAAA,EAAA,CAAA,CAAA;;4FAEU,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBATjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,yBAAyB,CAAC;oBACtD,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACpC,oBAAA,SAAS,EAAE;wBACT,6BAA6B;wBAC7B,oBAAoB;AACpB,wBAAA,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC;AAChD;AACF,iBAAA;;;AClCD;;AAEG;;;;"}
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Component, NgModule } from '@angular/core';
3
3
  import * as i1$1 from '@c8y/ngx-components';
4
- import { gettext, PX_ACTIONS, Status, CoreModule, hookRoute, ViewContext } from '@c8y/ngx-components';
4
+ import { gettext, PX_ACTIONS, Status, ActionBarItemComponent, IconDirective, DataGridComponent, EmptyStateComponent, ColumnDirective, CellRendererDefDirective, C8yTranslatePipe, DatePipe, CoreModule, hookRoute, ViewContext } from '@c8y/ngx-components';
5
5
  import { PopoverModule } from 'ngx-bootstrap/popover';
6
6
  import { TooltipModule } from 'ngx-bootstrap/tooltip';
7
7
  import { ButtonsModule } from 'ngx-bootstrap/buttons';
@@ -11,7 +11,7 @@ import * as i4 from '@angular/router';
11
11
  import { BehaviorSubject } from 'rxjs';
12
12
  import { tap, map, switchMap, shareReplay, finalize } from 'rxjs/operators';
13
13
  import * as i5 from '@ngx-translate/core';
14
- import * as i6 from '@angular/common';
14
+ import { NgClass, NgIf, AsyncPipe } from '@angular/common';
15
15
 
16
16
  class DeviceProvisionedCertificatesService {
17
17
  constructor(userService, client) {
@@ -165,16 +165,33 @@ class DeviceTabProvisionedCertificatesComponent {
165
165
  return await this.modalService.confirm(gettext('Revoke provisioned certificate'), this.translateService.instant(gettext(`You are about to revoke provisioned certificate {{ serialNumber }}. Do you want to proceed?`), { serialNumber }), Status.DANGER, { ok: gettext('Revoke'), cancel: gettext('Cancel') });
166
166
  }
167
167
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceTabProvisionedCertificatesComponent, deps: [{ token: i1$1.AlertService }, { token: i1$1.ModalService }, { token: DeviceProvisionedCertificatesService }, { token: i1.CrlService }, { token: i4.ActivatedRoute }, { token: i5.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
168
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DeviceTabProvisionedCertificatesComponent, isStandalone: false, selector: "device-tab-serials-component", ngImport: i0, template: "<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Reload' | translate }}\"\n type=\"button\"\n (click)=\"reload()\"\n >\n <i\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': reloading }\"\n ></i>\n {{ 'Reload' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-data-grid\n [title]=\"tableTitle | translate\"\n [columns]=\"columns\"\n [rows]=\"rows$ | async\"\n [pagination]=\"pagination\"\n [actionControls]=\"actionControls\"\n [displayOptions]=\"displayOptions\"\n [hideReload]=\"true\"\n>\n <c8y-ui-empty-state\n [icon]=\"'certificate'\"\n [title]=\"'No provisioned certificates to display.' | translate\"\n *ngIf=\"(rows$ | async)?.length === 0\"\n ></c8y-ui-empty-state>\n\n <c8y-column name=\"serialNumber\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value }}\"\n >\n {{ context.value }}\n </span>\n </ng-container>\n </c8y-column>\n\n <c8y-column name=\"validTill\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value | c8yDate }}\"\n >\n <span\n *ngIf=\"context.value\"\n [ngClass]=\"highlightDependingOnExpirationStatus(context.item)\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"calendar\"\n *ngIf=\"!highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <i\n class=\"m-r-4\"\n c8yIcon=\"warning\"\n *ngIf=\"highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <span>{{ context.value | c8yDate }}</span>\n </span>\n </span>\n </ng-container>\n </c8y-column>\n</c8y-data-grid>\n", dependencies: [{ kind: "component", type: i1$1.ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "component", type: i1$1.EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: i1$1.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.CellRendererDefDirective, selector: "[c8yCellRendererDef]" }, { kind: "directive", type: i1$1.ColumnDirective, selector: "c8y-column", inputs: ["name"] }, { kind: "component", type: i1$1.DataGridComponent, selector: "c8y-data-grid", inputs: ["title", "loadMoreItemsLabel", "loadingItemsLabel", "showSearch", "refresh", "columns", "rows", "pagination", "childNodePagination", "infiniteScroll", "serverSideDataCallback", "selectable", "singleSelection", "selectionPrimaryKey", "displayOptions", "actionControls", "bulkActionControls", "headerActionControls", "searchText", "configureColumnsEnabled", "showCounterWarning", "activeClassName", "expandableRows", "treeGrid", "hideReload", "childNodesProperty", "parentNodeLabelProperty"], outputs: ["rowMouseOver", "rowMouseLeave", "rowClick", "onConfigChange", "onBeforeFilter", "onBeforeSearch", "onFilter", "itemsSelect", "onReload", "onAddCustomColumn", "onRemoveCustomColumn", "onColumnFilterReset", "onSort", "onPageSizeChange", "onColumnReordered", "onColumnVisibilityChange"] }, { kind: "pipe", type: i1$1.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.DatePipe, name: "c8yDate" }] }); }
168
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DeviceTabProvisionedCertificatesComponent, isStandalone: true, selector: "device-tab-serials-component", ngImport: i0, template: "<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Reload' | translate }}\"\n type=\"button\"\n (click)=\"reload()\"\n >\n <i\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': reloading }\"\n ></i>\n {{ 'Reload' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-data-grid\n [title]=\"tableTitle | translate\"\n [columns]=\"columns\"\n [rows]=\"rows$ | async\"\n [pagination]=\"pagination\"\n [actionControls]=\"actionControls\"\n [displayOptions]=\"displayOptions\"\n [hideReload]=\"true\"\n>\n <c8y-ui-empty-state\n [icon]=\"'certificate'\"\n [title]=\"'No provisioned certificates to display.' | translate\"\n *ngIf=\"(rows$ | async)?.length === 0\"\n ></c8y-ui-empty-state>\n\n <c8y-column name=\"serialNumber\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value }}\"\n >\n {{ context.value }}\n </span>\n </ng-container>\n </c8y-column>\n\n <c8y-column name=\"validTill\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value | c8yDate }}\"\n >\n <span\n *ngIf=\"context.value\"\n [ngClass]=\"highlightDependingOnExpirationStatus(context.item)\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"calendar\"\n *ngIf=\"!highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <i\n class=\"m-r-4\"\n c8yIcon=\"warning\"\n *ngIf=\"highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <span>{{ context.value | c8yDate }}</span>\n </span>\n </span>\n </ng-container>\n </c8y-column>\n</c8y-data-grid>\n", dependencies: [{ kind: "component", type: ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: DataGridComponent, selector: "c8y-data-grid", inputs: ["title", "loadMoreItemsLabel", "loadingItemsLabel", "showSearch", "refresh", "columns", "rows", "pagination", "childNodePagination", "infiniteScroll", "serverSideDataCallback", "selectable", "singleSelection", "selectionPrimaryKey", "displayOptions", "actionControls", "bulkActionControls", "headerActionControls", "searchText", "configureColumnsEnabled", "showCounterWarning", "activeClassName", "expandableRows", "treeGrid", "hideReload", "childNodesProperty", "parentNodeLabelProperty"], outputs: ["rowMouseOver", "rowMouseLeave", "rowClick", "onConfigChange", "onBeforeFilter", "onBeforeSearch", "onFilter", "itemsSelect", "onReload", "onAddCustomColumn", "onRemoveCustomColumn", "onColumnFilterReset", "onSort", "onPageSizeChange", "onColumnReordered", "onColumnVisibilityChange"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: ColumnDirective, selector: "c8y-column", inputs: ["name"] }, { kind: "directive", type: CellRendererDefDirective, selector: "[c8yCellRendererDef]" }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: DatePipe, name: "c8yDate" }] }); }
169
169
  }
170
170
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceTabProvisionedCertificatesComponent, decorators: [{
171
171
  type: Component,
172
- args: [{ selector: 'device-tab-serials-component', standalone: false, template: "<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Reload' | translate }}\"\n type=\"button\"\n (click)=\"reload()\"\n >\n <i\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': reloading }\"\n ></i>\n {{ 'Reload' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-data-grid\n [title]=\"tableTitle | translate\"\n [columns]=\"columns\"\n [rows]=\"rows$ | async\"\n [pagination]=\"pagination\"\n [actionControls]=\"actionControls\"\n [displayOptions]=\"displayOptions\"\n [hideReload]=\"true\"\n>\n <c8y-ui-empty-state\n [icon]=\"'certificate'\"\n [title]=\"'No provisioned certificates to display.' | translate\"\n *ngIf=\"(rows$ | async)?.length === 0\"\n ></c8y-ui-empty-state>\n\n <c8y-column name=\"serialNumber\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value }}\"\n >\n {{ context.value }}\n </span>\n </ng-container>\n </c8y-column>\n\n <c8y-column name=\"validTill\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value | c8yDate }}\"\n >\n <span\n *ngIf=\"context.value\"\n [ngClass]=\"highlightDependingOnExpirationStatus(context.item)\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"calendar\"\n *ngIf=\"!highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <i\n class=\"m-r-4\"\n c8yIcon=\"warning\"\n *ngIf=\"highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <span>{{ context.value | c8yDate }}</span>\n </span>\n </span>\n </ng-container>\n </c8y-column>\n</c8y-data-grid>\n" }]
172
+ args: [{ selector: 'device-tab-serials-component', imports: [
173
+ ActionBarItemComponent,
174
+ IconDirective,
175
+ NgClass,
176
+ DataGridComponent,
177
+ NgIf,
178
+ EmptyStateComponent,
179
+ ColumnDirective,
180
+ CellRendererDefDirective,
181
+ C8yTranslatePipe,
182
+ AsyncPipe,
183
+ DatePipe
184
+ ], template: "<c8y-action-bar-item [placement]=\"'right'\">\n <button\n class=\"btn btn-link\"\n title=\"{{ 'Reload' | translate }}\"\n type=\"button\"\n (click)=\"reload()\"\n >\n <i\n c8yIcon=\"refresh\"\n [ngClass]=\"{ 'icon-spin': reloading }\"\n ></i>\n {{ 'Reload' | translate }}\n </button>\n</c8y-action-bar-item>\n\n<c8y-data-grid\n [title]=\"tableTitle | translate\"\n [columns]=\"columns\"\n [rows]=\"rows$ | async\"\n [pagination]=\"pagination\"\n [actionControls]=\"actionControls\"\n [displayOptions]=\"displayOptions\"\n [hideReload]=\"true\"\n>\n <c8y-ui-empty-state\n [icon]=\"'certificate'\"\n [title]=\"'No provisioned certificates to display.' | translate\"\n *ngIf=\"(rows$ | async)?.length === 0\"\n ></c8y-ui-empty-state>\n\n <c8y-column name=\"serialNumber\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value }}\"\n >\n {{ context.value }}\n </span>\n </ng-container>\n </c8y-column>\n\n <c8y-column name=\"validTill\">\n <ng-container *c8yCellRendererDef=\"let context\">\n <span\n class=\"text-truncate\"\n title=\"{{ context.property.header | translate }}: {{ context.value | c8yDate }}\"\n >\n <span\n *ngIf=\"context.value\"\n [ngClass]=\"highlightDependingOnExpirationStatus(context.item)\"\n >\n <i\n class=\"m-r-4\"\n c8yIcon=\"calendar\"\n *ngIf=\"!highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <i\n class=\"m-r-4\"\n c8yIcon=\"warning\"\n *ngIf=\"highlightDependingOnExpirationStatus(context.item)\"\n ></i>\n <span>{{ context.value | c8yDate }}</span>\n </span>\n </span>\n </ng-container>\n </c8y-column>\n</c8y-data-grid>\n" }]
173
185
  }], ctorParameters: () => [{ type: i1$1.AlertService }, { type: i1$1.ModalService }, { type: DeviceProvisionedCertificatesService }, { type: i1.CrlService }, { type: i4.ActivatedRoute }, { type: i5.TranslateService }] });
174
186
 
175
187
  class DeviceProvisionedCertificatesModule {
176
188
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceProvisionedCertificatesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
177
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DeviceProvisionedCertificatesModule, declarations: [DeviceTabProvisionedCertificatesComponent], imports: [CoreModule, TooltipModule, ReactiveFormsModule, ButtonsModule, PopoverModule] }); }
189
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DeviceProvisionedCertificatesModule, imports: [CoreModule,
190
+ TooltipModule,
191
+ ReactiveFormsModule,
192
+ ButtonsModule,
193
+ PopoverModule,
194
+ DeviceTabProvisionedCertificatesComponent] }); }
178
195
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceProvisionedCertificatesModule, providers: [
179
196
  hookRoute([
180
197
  {
@@ -188,14 +205,25 @@ class DeviceProvisionedCertificatesModule {
188
205
  ]),
189
206
  DeviceProvisionedCertificatesService,
190
207
  DeviceProvisionedCertificatesGuard
191
- ], imports: [CoreModule, TooltipModule, ReactiveFormsModule, ButtonsModule, PopoverModule] }); }
208
+ ], imports: [CoreModule,
209
+ TooltipModule,
210
+ ReactiveFormsModule,
211
+ ButtonsModule,
212
+ PopoverModule,
213
+ DeviceTabProvisionedCertificatesComponent] }); }
192
214
  }
193
215
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DeviceProvisionedCertificatesModule, decorators: [{
194
216
  type: NgModule,
195
217
  args: [{
196
- declarations: [DeviceTabProvisionedCertificatesComponent],
197
218
  exports: [],
198
- imports: [CoreModule, TooltipModule, ReactiveFormsModule, ButtonsModule, PopoverModule],
219
+ imports: [
220
+ CoreModule,
221
+ TooltipModule,
222
+ ReactiveFormsModule,
223
+ ButtonsModule,
224
+ PopoverModule,
225
+ DeviceTabProvisionedCertificatesComponent
226
+ ],
199
227
  providers: [
200
228
  hookRoute([
201
229
  {