@c8y/ngx-components 1022.9.6 → 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 (710) 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-explorer/datapoint-explorer.module.d.ts.map +1 -1
  226. package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts +1 -1
  227. package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts.map +1 -1
  228. package/datapoint-selector/datapoint-selection-list/datapoint-selection-list.component.d.ts +10 -1
  229. package/datapoint-selector/datapoint-selection-list/datapoint-selection-list.component.d.ts.map +1 -1
  230. package/datapoint-selector/datapoint-selector-list-item/datapoint-selector-list-item.component.d.ts +1 -1
  231. package/datapoint-selector/datapoint-selector-list-item/datapoint-selector-list-item.component.d.ts.map +1 -1
  232. package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts +1 -1
  233. package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts.map +1 -1
  234. package/datapoint-selector/datapoint-selector.component.d.ts +1 -1
  235. package/datapoint-selector/datapoint-selector.component.d.ts.map +1 -1
  236. package/datapoint-selector/datapoint-selector.module.d.ts +18 -18
  237. package/datapoint-selector/datapoint-selector.module.d.ts.map +1 -1
  238. package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts +1 -1
  239. package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts.map +1 -1
  240. package/datapoint-selector/pipes/datapoint-label.pipe.d.ts +1 -1
  241. package/datapoint-selector/pipes/datapoint-label.pipe.d.ts.map +1 -1
  242. package/datapoint-selector/pipes/filter-datapoints.pipe.d.ts +1 -1
  243. package/datapoint-selector/pipes/filter-datapoints.pipe.d.ts.map +1 -1
  244. package/datapoint-selector/pipes/includes-datapoint.pipe.d.ts +1 -1
  245. package/datapoint-selector/pipes/includes-datapoint.pipe.d.ts.map +1 -1
  246. package/datapoints-export-selector/datapoints-export-selector.component.d.ts +7 -0
  247. package/datapoints-export-selector/datapoints-export-selector.component.d.ts.map +1 -1
  248. package/default-subscriptions/default-subscriptions.component.d.ts +1 -1
  249. package/default-subscriptions/default-subscriptions.component.d.ts.map +1 -1
  250. package/default-subscriptions/default-subscriptions.module.d.ts +4 -4
  251. package/default-subscriptions/default-subscriptions.module.d.ts.map +1 -1
  252. package/device-grid/columns/alarms.cell-renderer.component.d.ts +1 -1
  253. package/device-grid/columns/alarms.cell-renderer.component.d.ts.map +1 -1
  254. package/device-grid/columns/alarms.header-cell-renderer.component.d.ts +1 -1
  255. package/device-grid/columns/alarms.header-cell-renderer.component.d.ts.map +1 -1
  256. package/device-grid/columns/group.cell-renderer.component.d.ts +1 -1
  257. package/device-grid/columns/group.cell-renderer.component.d.ts.map +1 -1
  258. package/device-grid/columns/group.filtering-form-renderer.component.d.ts +1 -1
  259. package/device-grid/columns/group.filtering-form-renderer.component.d.ts.map +1 -1
  260. package/device-grid/columns/model.cell-renderer.component.d.ts +1 -1
  261. package/device-grid/columns/model.cell-renderer.component.d.ts.map +1 -1
  262. package/device-grid/columns/name.cell-renderer.component.d.ts +1 -1
  263. package/device-grid/columns/name.cell-renderer.component.d.ts.map +1 -1
  264. package/device-grid/columns/registration-date.cell-renderer.component.d.ts +1 -1
  265. package/device-grid/columns/registration-date.cell-renderer.component.d.ts.map +1 -1
  266. package/device-grid/columns/serial-number.cell-renderer.component.d.ts +1 -1
  267. package/device-grid/columns/serial-number.cell-renderer.component.d.ts.map +1 -1
  268. package/device-grid/columns/status.cell-renderer.component.d.ts +1 -1
  269. package/device-grid/columns/status.cell-renderer.component.d.ts.map +1 -1
  270. package/device-grid/device-grid.component.d.ts +1 -1
  271. package/device-grid/device-grid.component.d.ts.map +1 -1
  272. package/device-grid/device-grid.module.d.ts +15 -15
  273. package/device-grid/device-grid.module.d.ts.map +1 -1
  274. package/device-list/add-smart-group.component.d.ts +1 -1
  275. package/device-list/add-smart-group.component.d.ts.map +1 -1
  276. package/device-list/device-list.component.d.ts +1 -1
  277. package/device-list/device-list.component.d.ts.map +1 -1
  278. package/device-list/device-list.module.d.ts +8 -8
  279. package/device-list/device-list.module.d.ts.map +1 -1
  280. package/device-protocols/device-protocols.module.d.ts +1 -1
  281. package/device-protocols/device-type-detail.component.d.ts +1 -1
  282. package/device-protocols/device-type-detail.component.d.ts.map +1 -1
  283. package/device-protocols/device-type-detail.directive.d.ts +1 -1
  284. package/device-protocols/device-type-detail.directive.d.ts.map +1 -1
  285. package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts +7 -7
  286. package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts.map +1 -1
  287. package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts +1 -1
  288. package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts.map +1 -1
  289. package/echart/charts.component.d.ts.map +1 -1
  290. package/echart/models/datapoints-graph-widget.model.d.ts +1 -0
  291. package/echart/models/datapoints-graph-widget.model.d.ts.map +1 -1
  292. package/echart/services/chart-realtime.service.d.ts +8 -1
  293. package/echart/services/chart-realtime.service.d.ts.map +1 -1
  294. package/echart/services/echarts-options.service.d.ts +7 -0
  295. package/echart/services/echarts-options.service.d.ts.map +1 -1
  296. package/ecosystem/activity-log/activity-log.component.d.ts +1 -1
  297. package/ecosystem/activity-log/activity-log.component.d.ts.map +1 -1
  298. package/ecosystem/application-plugins/appState.pipe.d.ts +1 -1
  299. package/ecosystem/application-plugins/appState.pipe.d.ts.map +1 -1
  300. package/ecosystem/application-plugins/application-plugin-readme.component.d.ts +1 -1
  301. package/ecosystem/application-plugins/application-plugin-readme.component.d.ts.map +1 -1
  302. package/ecosystem/application-plugins/application-plugins.component.d.ts +1 -1
  303. package/ecosystem/application-plugins/application-plugins.component.d.ts.map +1 -1
  304. package/ecosystem/application-plugins/application-plugins.module.d.ts +14 -14
  305. package/ecosystem/application-plugins/application-plugins.module.d.ts.map +1 -1
  306. package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts +2 -2
  307. package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts.map +1 -1
  308. package/ecosystem/application-plugins/install-plugin.component.d.ts +1 -1
  309. package/ecosystem/application-plugins/install-plugin.component.d.ts.map +1 -1
  310. package/ecosystem/application-plugins/label-cell-renderer.component.d.ts +1 -1
  311. package/ecosystem/application-plugins/label-cell-renderer.component.d.ts.map +1 -1
  312. package/ecosystem/application-plugins/only-latest-filter/only-latest-filter.component.d.ts +1 -1
  313. package/ecosystem/application-plugins/only-latest-filter/only-latest-filter.component.d.ts.map +1 -1
  314. package/ecosystem/application-plugins/orphaned-status-cell-renderer.component.d.ts +1 -1
  315. package/ecosystem/application-plugins/orphaned-status-cell-renderer.component.d.ts.map +1 -1
  316. package/ecosystem/application-plugins/plugin-list-item.component.d.ts +1 -1
  317. package/ecosystem/application-plugins/plugin-list-item.component.d.ts.map +1 -1
  318. package/ecosystem/application-plugins/plugin-list.component.d.ts +1 -1
  319. package/ecosystem/application-plugins/plugin-list.component.d.ts.map +1 -1
  320. package/ecosystem/application-plugins/update-plugin-of-app/update-plugin-of-app.component.d.ts +1 -1
  321. package/ecosystem/application-plugins/update-plugin-of-app/update-plugin-of-app.component.d.ts.map +1 -1
  322. package/ecosystem/application-properties/application-properties.component.d.ts +1 -1
  323. package/ecosystem/application-properties/application-properties.component.d.ts.map +1 -1
  324. package/ecosystem/application-properties/subscription-modal/subscription-modal.component.d.ts +1 -1
  325. package/ecosystem/application-properties/subscription-modal/subscription-modal.component.d.ts.map +1 -1
  326. package/ecosystem/application-properties/update-application-modal/update-application-modal.component.d.ts +1 -1
  327. package/ecosystem/application-properties/update-application-modal/update-application-modal.component.d.ts.map +1 -1
  328. package/ecosystem/applications/add-external-applicaiton/add-external-application.component.d.ts +1 -1
  329. package/ecosystem/applications/add-external-applicaiton/add-external-application.component.d.ts.map +1 -1
  330. package/ecosystem/applications/add-web-application/add-web-application.component.d.ts +1 -1
  331. package/ecosystem/applications/add-web-application/add-web-application.component.d.ts.map +1 -1
  332. package/ecosystem/applications/application-list/application-list.component.d.ts +1 -1
  333. package/ecosystem/applications/application-list/application-list.component.d.ts.map +1 -1
  334. package/ecosystem/applications/install-from-package/install-from-package.component.d.ts +2 -3
  335. package/ecosystem/applications/install-from-package/install-from-package.component.d.ts.map +1 -1
  336. package/ecosystem/archived-confirm/archived-confirm-modal.component.d.ts +1 -1
  337. package/ecosystem/archived-confirm/archived-confirm-modal.component.d.ts.map +1 -1
  338. package/ecosystem/archived-confirm/archived-confirm.module.d.ts +4 -4
  339. package/ecosystem/archived-confirm/archived-confirm.module.d.ts.map +1 -1
  340. package/ecosystem/ecosystem.module.d.ts +34 -34
  341. package/ecosystem/ecosystem.module.d.ts.map +1 -1
  342. package/ecosystem/features/feature-list.component.d.ts +1 -1
  343. package/ecosystem/features/feature-list.component.d.ts.map +1 -1
  344. package/ecosystem/license-confirm/license-confirm-modal.component.d.ts +1 -1
  345. package/ecosystem/license-confirm/license-confirm-modal.component.d.ts.map +1 -1
  346. package/ecosystem/license-confirm/license-confirm.module.d.ts +5 -5
  347. package/ecosystem/license-confirm/license-confirm.module.d.ts.map +1 -1
  348. package/ecosystem/license-confirm/license-view.component.d.ts +1 -1
  349. package/ecosystem/license-confirm/license-view.component.d.ts.map +1 -1
  350. package/ecosystem/microservices/add-microservice.component.d.ts +1 -1
  351. package/ecosystem/microservices/add-microservice.component.d.ts.map +1 -1
  352. package/ecosystem/microservices/microservice-list.component.d.ts +1 -1
  353. package/ecosystem/microservices/microservice-list.component.d.ts.map +1 -1
  354. package/ecosystem/packages/add-package.component.d.ts +1 -1
  355. package/ecosystem/packages/add-package.component.d.ts.map +1 -1
  356. package/ecosystem/packages/deploy-application/deploy-application.component.d.ts +1 -1
  357. package/ecosystem/packages/deploy-application/deploy-application.component.d.ts.map +1 -1
  358. package/ecosystem/packages/package-details/package-details.component.d.ts +1 -1
  359. package/ecosystem/packages/package-details/package-details.component.d.ts.map +1 -1
  360. package/ecosystem/packages/package-list/packages-list.component.d.ts +1 -1
  361. package/ecosystem/packages/package-list/packages-list.component.d.ts.map +1 -1
  362. package/ecosystem/packages/package-versions/package-contents/contents-apps/contents-apps.component.d.ts +1 -1
  363. package/ecosystem/packages/package-versions/package-contents/contents-apps/contents-apps.component.d.ts.map +1 -1
  364. package/ecosystem/packages/package-versions/package-contents/contents-plugins/contents-plugins.component.d.ts +1 -1
  365. package/ecosystem/packages/package-versions/package-contents/contents-plugins/contents-plugins.component.d.ts.map +1 -1
  366. package/ecosystem/packages/package-versions/package-contents/packages-contents.component.d.ts +1 -1
  367. package/ecosystem/packages/package-versions/package-contents/packages-contents.component.d.ts.map +1 -1
  368. package/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.d.ts +1 -1
  369. package/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.d.ts.map +1 -1
  370. package/ecosystem/packages/package-versions/packages-versions.component.d.ts +1 -1
  371. package/ecosystem/packages/package-versions/packages-versions.component.d.ts.map +1 -1
  372. package/ecosystem/shared/add-application.component.d.ts +1 -1
  373. package/ecosystem/shared/add-application.component.d.ts.map +1 -1
  374. package/ecosystem/shared/application-card.component.d.ts +1 -1
  375. package/ecosystem/shared/application-card.component.d.ts.map +1 -1
  376. package/ecosystem/shared/application-properties-form.component.d.ts +1 -1
  377. package/ecosystem/shared/application-properties-form.component.d.ts.map +1 -1
  378. package/ecosystem/shared/archived-filter/archived-filter.component.d.ts +1 -1
  379. package/ecosystem/shared/archived-filter/archived-filter.component.d.ts.map +1 -1
  380. package/ecosystem/shared/duplicate-application/duplicate-application-list/duplicate-application-list.component.d.ts +1 -1
  381. package/ecosystem/shared/duplicate-application/duplicate-application-list/duplicate-application-list.component.d.ts.map +1 -1
  382. package/ecosystem/shared/duplicate-application/duplicate-application-properties/duplicate-application-properties.component.d.ts +2 -2
  383. package/ecosystem/shared/duplicate-application/duplicate-application-properties/duplicate-application-properties.component.d.ts.map +1 -1
  384. package/ecosystem/shared/duplicate-application/duplicate-application.component.d.ts +1 -1
  385. package/ecosystem/shared/duplicate-application/duplicate-application.component.d.ts.map +1 -1
  386. package/ecosystem/shared/list-filters/list-filters.component.d.ts +1 -1
  387. package/ecosystem/shared/list-filters/list-filters.component.d.ts.map +1 -1
  388. package/ecosystem/shared/package-version-select/package-version-select.component.d.ts +1 -1
  389. package/ecosystem/shared/package-version-select/package-version-select.component.d.ts.map +1 -1
  390. package/ecosystem/shared/shared-ecosystem.module.d.ts +20 -20
  391. package/ecosystem/shared/shared-ecosystem.module.d.ts.map +1 -1
  392. package/ecosystem/shared/translate-package-label.pipe.d.ts +1 -1
  393. package/ecosystem/shared/translate-package-label.pipe.d.ts.map +1 -1
  394. package/ecosystem/shared/upload-archive.component.d.ts +1 -1
  395. package/ecosystem/shared/upload-archive.component.d.ts.map +1 -1
  396. package/fesm2022/c8y-ngx-components-actility-device-registration.mjs +36 -12
  397. package/fesm2022/c8y-ngx-components-actility-device-registration.mjs.map +1 -1
  398. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +195 -107
  399. package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
  400. package/fesm2022/c8y-ngx-components-alarms.mjs +236 -96
  401. package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
  402. package/fesm2022/c8y-ngx-components-api.mjs +8 -0
  403. package/fesm2022/c8y-ngx-components-api.mjs.map +1 -1
  404. package/fesm2022/c8y-ngx-components-app-logs.mjs +6 -8
  405. package/fesm2022/c8y-ngx-components-app-logs.mjs.map +1 -1
  406. package/fesm2022/c8y-ngx-components-assets-navigator.mjs +74 -26
  407. package/fesm2022/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  408. package/fesm2022/c8y-ngx-components-auth-configuration.mjs +578 -366
  409. package/fesm2022/c8y-ngx-components-auth-configuration.mjs.map +1 -1
  410. package/fesm2022/c8y-ngx-components-bookmarks.mjs +36 -17
  411. package/fesm2022/c8y-ngx-components-bookmarks.mjs.map +1 -1
  412. package/fesm2022/c8y-ngx-components-child-devices.mjs +7 -9
  413. package/fesm2022/c8y-ngx-components-child-devices.mjs.map +1 -1
  414. package/fesm2022/c8y-ngx-components-cockpit-config.mjs +138 -67
  415. package/fesm2022/c8y-ngx-components-cockpit-config.mjs.map +1 -1
  416. 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
  417. 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
  418. 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
  419. 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
  420. 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
  421. 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
  422. package/fesm2022/c8y-ngx-components-context-dashboard.mjs +170 -94
  423. package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  424. package/fesm2022/c8y-ngx-components-dashboard-manager.mjs +44 -31
  425. package/fesm2022/c8y-ngx-components-dashboard-manager.mjs.map +1 -1
  426. package/fesm2022/c8y-ngx-components-datapoint-explorer.mjs +4 -2
  427. package/fesm2022/c8y-ngx-components-datapoint-explorer.mjs.map +1 -1
  428. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +132 -66
  429. package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
  430. package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
  431. package/fesm2022/c8y-ngx-components-default-subscriptions.mjs +32 -16
  432. package/fesm2022/c8y-ngx-components-default-subscriptions.mjs.map +1 -1
  433. package/fesm2022/c8y-ngx-components-device-grid.mjs +50 -45
  434. package/fesm2022/c8y-ngx-components-device-grid.mjs.map +1 -1
  435. package/fesm2022/c8y-ngx-components-device-list.mjs +50 -25
  436. package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
  437. package/fesm2022/c8y-ngx-components-device-protocols.mjs +6 -9
  438. package/fesm2022/c8y-ngx-components-device-protocols.mjs.map +1 -1
  439. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs +36 -8
  440. package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs.map +1 -1
  441. package/fesm2022/c8y-ngx-components-echart-models.mjs.map +1 -1
  442. package/fesm2022/c8y-ngx-components-echart.mjs +220 -7
  443. package/fesm2022/c8y-ngx-components-echart.mjs.map +1 -1
  444. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs +155 -72
  445. package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs.map +1 -1
  446. package/fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs +13 -7
  447. package/fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs.map +1 -1
  448. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs +43 -12
  449. package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs.map +1 -1
  450. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +179 -80
  451. package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs.map +1 -1
  452. package/fesm2022/c8y-ngx-components-ecosystem.mjs +353 -1316
  453. package/fesm2022/c8y-ngx-components-ecosystem.mjs.map +1 -1
  454. package/fesm2022/c8y-ngx-components-file-preview.mjs +17 -8
  455. package/fesm2022/c8y-ngx-components-file-preview.mjs.map +1 -1
  456. package/fesm2022/c8y-ngx-components-files-repository.mjs +55 -22
  457. package/fesm2022/c8y-ngx-components-files-repository.mjs.map +1 -1
  458. package/fesm2022/c8y-ngx-components-icon-selector.mjs +46 -28
  459. package/fesm2022/c8y-ngx-components-icon-selector.mjs.map +1 -1
  460. package/fesm2022/c8y-ngx-components-location.mjs +28 -15
  461. package/fesm2022/c8y-ngx-components-location.mjs.map +1 -1
  462. package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs +36 -12
  463. package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs.map +1 -1
  464. package/fesm2022/c8y-ngx-components-map.mjs +260 -28
  465. package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
  466. package/fesm2022/c8y-ngx-components-platform-configuration.mjs +24 -13
  467. package/fesm2022/c8y-ngx-components-platform-configuration.mjs.map +1 -1
  468. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +133 -26
  469. package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs.map +1 -1
  470. package/fesm2022/c8y-ngx-components-register-device.mjs +314 -249
  471. package/fesm2022/c8y-ngx-components-register-device.mjs.map +1 -1
  472. package/fesm2022/c8y-ngx-components-report-dashboard.mjs +41 -17
  473. package/fesm2022/c8y-ngx-components-report-dashboard.mjs.map +1 -1
  474. package/fesm2022/c8y-ngx-components-reports.mjs +61 -21
  475. package/fesm2022/c8y-ngx-components-reports.mjs.map +1 -1
  476. package/fesm2022/c8y-ngx-components-search.mjs +34 -21
  477. package/fesm2022/c8y-ngx-components-search.mjs.map +1 -1
  478. package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs +43 -19
  479. package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs.map +1 -1
  480. package/fesm2022/c8y-ngx-components-sub-assets.mjs +207 -72
  481. package/fesm2022/c8y-ngx-components-sub-assets.mjs.map +1 -1
  482. package/fesm2022/c8y-ngx-components-tenants.mjs +96 -39
  483. package/fesm2022/c8y-ngx-components-tenants.mjs.map +1 -1
  484. package/fesm2022/c8y-ngx-components-trusted-certificates.mjs +173 -53
  485. package/fesm2022/c8y-ngx-components-trusted-certificates.mjs.map +1 -1
  486. package/fesm2022/c8y-ngx-components-upgrade.mjs +19 -10
  487. package/fesm2022/c8y-ngx-components-upgrade.mjs.map +1 -1
  488. package/fesm2022/c8y-ngx-components-user-roles.mjs +19 -14
  489. package/fesm2022/c8y-ngx-components-user-roles.mjs.map +1 -1
  490. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +76 -50
  491. package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs.map +1 -1
  492. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs +2 -2
  493. package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs.map +1 -1
  494. package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs +15 -8
  495. package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs.map +1 -1
  496. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +2 -2
  497. package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
  498. package/fesm2022/c8y-ngx-components.mjs +166 -80
  499. package/fesm2022/c8y-ngx-components.mjs.map +1 -1
  500. package/file-preview/file-preview.component.d.ts +1 -1
  501. package/file-preview/file-preview.component.d.ts.map +1 -1
  502. package/file-preview/file-preview.module.d.ts +3 -3
  503. package/file-preview/file-preview.module.d.ts.map +1 -1
  504. package/files-repository/files-repository-upload.component.d.ts +1 -1
  505. package/files-repository/files-repository-upload.component.d.ts.map +1 -1
  506. package/files-repository/files-repository.component.d.ts +1 -1
  507. package/files-repository/files-repository.component.d.ts.map +1 -1
  508. package/files-repository/files-repository.module.d.ts +6 -6
  509. package/files-repository/files-repository.module.d.ts.map +1 -1
  510. package/icon-selector/icon-name.pipe.d.ts +1 -1
  511. package/icon-selector/icon-name.pipe.d.ts.map +1 -1
  512. package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts +1 -1
  513. package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts.map +1 -1
  514. package/icon-selector/icon-selector-wrapper/icon-selector-wrapper.component.d.ts +1 -1
  515. package/icon-selector/icon-selector-wrapper/icon-selector-wrapper.component.d.ts.map +1 -1
  516. package/icon-selector/icon-selector.component.d.ts +1 -1
  517. package/icon-selector/icon-selector.component.d.ts.map +1 -1
  518. package/icon-selector/icon-selector.module.d.ts +8 -8
  519. package/icon-selector/icon-selector.module.d.ts.map +1 -1
  520. package/locales/de.po +23 -2
  521. package/locales/es.po +23 -2
  522. package/locales/fr.po +23 -2
  523. package/locales/ja_JP.po +23 -2
  524. package/locales/ko.po +23 -2
  525. package/locales/locales.pot +22 -1
  526. package/locales/nl.po +23 -2
  527. package/locales/pl.po +23 -2
  528. package/locales/pt_BR.po +23 -2
  529. package/locales/zh_CN.po +23 -2
  530. package/locales/zh_TW.po +23 -2
  531. package/location/add-location.component.d.ts +1 -1
  532. package/location/add-location.component.d.ts.map +1 -1
  533. package/location/location.component.d.ts +1 -1
  534. package/location/location.component.d.ts.map +1 -1
  535. package/location/location.module.d.ts +6 -6
  536. package/location/location.module.d.ts.map +1 -1
  537. package/loriot-device-registration/loriot-device-registration-button.component.d.ts +1 -1
  538. package/loriot-device-registration/loriot-device-registration-button.component.d.ts.map +1 -1
  539. package/loriot-device-registration/loriot-device-registration.component.d.ts +1 -1
  540. package/loriot-device-registration/loriot-device-registration.component.d.ts.map +1 -1
  541. package/loriot-device-registration/loriot-device-registration.module.d.ts +4 -4
  542. package/loriot-device-registration/loriot-device-registration.module.d.ts.map +1 -1
  543. package/map/cluster-map.component.d.ts +61 -1
  544. package/map/cluster-map.component.d.ts.map +1 -1
  545. package/map/map-popup.directive.d.ts +1 -1
  546. package/map/map-popup.directive.d.ts.map +1 -1
  547. package/map/map-status.component.d.ts +86 -3
  548. package/map/map-status.component.d.ts.map +1 -1
  549. package/map/map.component.d.ts +100 -5
  550. package/map/map.component.d.ts.map +1 -1
  551. package/map/map.model.d.ts +98 -4
  552. package/map/map.model.d.ts.map +1 -1
  553. package/map/map.module.d.ts +9 -9
  554. package/map/map.module.d.ts.map +1 -1
  555. package/package.json +1 -1
  556. package/platform-configuration/platform-configuration-form.component.d.ts +1 -1
  557. package/platform-configuration/platform-configuration-form.component.d.ts.map +1 -1
  558. package/platform-configuration/platform-configuration.module.d.ts +4 -4
  559. package/platform-configuration/platform-configuration.module.d.ts.map +1 -1
  560. package/protocol-lpwan/lpwan-protocol.module.d.ts +4 -4
  561. package/protocol-lpwan/lpwan-protocol.module.d.ts.map +1 -1
  562. package/protocol-lpwan/lpwan-set-connections.component.d.ts +1 -1
  563. package/protocol-lpwan/lpwan-set-connections.component.d.ts.map +1 -1
  564. package/protocol-lpwan/lpwan-set-device-protocol.component.d.ts +1 -1
  565. package/protocol-lpwan/lpwan-set-device-protocol.component.d.ts.map +1 -1
  566. package/protocol-lpwan/multiple-lns-connectors/actility-multiple-lns-connector.component.d.ts +1 -1
  567. package/protocol-lpwan/multiple-lns-connectors/actility-multiple-lns-connector.component.d.ts.map +1 -1
  568. package/protocol-lpwan/multiple-lns-connectors/connection-info-with-download-csv.component.d.ts +1 -1
  569. package/protocol-lpwan/multiple-lns-connectors/connection-info-with-download-csv.component.d.ts.map +1 -1
  570. package/protocol-lpwan/multiple-lns-connectors/loriot/loriot-multiple-lns-connector.component.d.ts +1 -1
  571. package/protocol-lpwan/multiple-lns-connectors/loriot/loriot-multiple-lns-connector.component.d.ts.map +1 -1
  572. package/protocol-lpwan/multiple-lns-connectors/multiple-lns-connectors.module.d.ts +8 -8
  573. package/protocol-lpwan/multiple-lns-connectors/multiple-lns-connectors.module.d.ts.map +1 -1
  574. package/protocol-lpwan/multiple-lns-connectors/no-connections-found.component.d.ts +1 -1
  575. package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts +1 -1
  576. package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts.map +1 -1
  577. package/register-device/bulk/bulk-device-registration-button.component.d.ts +1 -1
  578. package/register-device/bulk/bulk-device-registration-button.component.d.ts.map +1 -1
  579. package/register-device/bulk/bulk-device-registration-modal.component.d.ts +1 -1
  580. package/register-device/bulk/bulk-device-registration-modal.component.d.ts.map +1 -1
  581. package/register-device/device-registration-view.component.d.ts +1 -1
  582. package/register-device/device-registration-view.component.d.ts.map +1 -1
  583. package/register-device/dropdown/register-device-dropdown.component.d.ts +1 -1
  584. package/register-device/dropdown/register-device-dropdown.component.d.ts.map +1 -1
  585. package/register-device/extensible/bulk/extensible-bulk-device-registration-button.component.d.ts +1 -1
  586. package/register-device/extensible/bulk/extensible-bulk-device-registration-button.component.d.ts.map +1 -1
  587. package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts +1 -1
  588. package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts.map +1 -1
  589. package/register-device/extensible/single/extensible-device-registration-button.component.d.ts +1 -1
  590. package/register-device/extensible/single/extensible-device-registration-button.component.d.ts.map +1 -1
  591. package/register-device/extensible/single/extensible-device-registration-modal.component.d.ts +1 -1
  592. package/register-device/extensible/single/extensible-device-registration-modal.component.d.ts.map +1 -1
  593. package/register-device/extensible/single/extensible-device-registration-stepper.component.d.ts +1 -1
  594. package/register-device/extensible/single/extensible-device-registration-stepper.component.d.ts.map +1 -1
  595. package/register-device/general/general-device-registration-button.component.d.ts +1 -1
  596. package/register-device/general/general-device-registration-button.component.d.ts.map +1 -1
  597. package/register-device/general/general-device-registration.component.d.ts +3 -6
  598. package/register-device/general/general-device-registration.component.d.ts.map +1 -1
  599. package/register-device/register-device.module.d.ts +16 -16
  600. package/register-device/register-device.module.d.ts.map +1 -1
  601. package/report-dashboard/report-dashboard-list.component.d.ts +1 -1
  602. package/report-dashboard/report-dashboard-list.component.d.ts.map +1 -1
  603. package/report-dashboard/report-dashboard.module.d.ts +7 -7
  604. package/reports/cron.component.d.ts +1 -1
  605. package/reports/cron.component.d.ts.map +1 -1
  606. package/reports/export-schedules.component.d.ts +2 -3
  607. package/reports/export-schedules.component.d.ts.map +1 -1
  608. package/reports/reports.module.d.ts +7 -7
  609. package/reports/reports.module.d.ts.map +1 -1
  610. package/reports/schedule-modal.component.d.ts +2 -3
  611. package/reports/schedule-modal.component.d.ts.map +1 -1
  612. package/search/search-action.component.d.ts +1 -1
  613. package/search/search-action.component.d.ts.map +1 -1
  614. package/search/search-custom-filters.component.d.ts +1 -1
  615. package/search/search-custom-filters.component.d.ts.map +1 -1
  616. package/search/search-grid.component.d.ts +1 -1
  617. package/search/search-grid.component.d.ts.map +1 -1
  618. package/search/search-results.component.d.ts +1 -1
  619. package/search/search-results.component.d.ts.map +1 -1
  620. package/search/search.module.d.ts +8 -8
  621. package/search/search.module.d.ts.map +1 -1
  622. package/sigfox-device-registration/sigfox-device-registration-button.component.d.ts +1 -1
  623. package/sigfox-device-registration/sigfox-device-registration-button.component.d.ts.map +1 -1
  624. package/sigfox-device-registration/sigfox-device-registration.component.d.ts +1 -1
  625. package/sigfox-device-registration/sigfox-device-registration.component.d.ts.map +1 -1
  626. package/sigfox-device-registration/sigfox-device-registration.module.d.ts +4 -4
  627. package/sigfox-device-registration/sigfox-device-registration.module.d.ts.map +1 -1
  628. package/sub-assets/add-group/add-group.component.d.ts +1 -1
  629. package/sub-assets/add-group/add-group.component.d.ts.map +1 -1
  630. package/sub-assets/add-group/add-group.module.d.ts +7 -7
  631. package/sub-assets/asset-properties-item.component.d.ts +1 -1
  632. package/sub-assets/asset-properties-item.component.d.ts.map +1 -1
  633. package/sub-assets/asset-properties.component.d.ts +1 -1
  634. package/sub-assets/asset-properties.component.d.ts.map +1 -1
  635. package/sub-assets/assign-devices/assign-child-devices.component.d.ts +2 -3
  636. package/sub-assets/assign-devices/assign-child-devices.component.d.ts.map +1 -1
  637. package/sub-assets/assign-devices/assign-devices.component.d.ts +1 -1
  638. package/sub-assets/assign-devices/assign-devices.component.d.ts.map +1 -1
  639. package/sub-assets/delete-assets-modal/delete-assets-modal.component.d.ts +1 -1
  640. package/sub-assets/delete-assets-modal/delete-assets-modal.component.d.ts.map +1 -1
  641. package/sub-assets/group-info.component.d.ts +1 -1
  642. package/sub-assets/group-info.component.d.ts.map +1 -1
  643. package/sub-assets/groups.component.d.ts +1 -1
  644. package/sub-assets/groups.component.d.ts.map +1 -1
  645. package/sub-assets/location/asset-location.component.d.ts +1 -1
  646. package/sub-assets/location/asset-location.component.d.ts.map +1 -1
  647. package/sub-assets/sub-assets-grid.component.d.ts +1 -1
  648. package/sub-assets/sub-assets-grid.component.d.ts.map +1 -1
  649. package/sub-assets/sub-assets-grids.module.d.ts +9 -9
  650. package/sub-assets/sub-assets-grids.module.d.ts.map +1 -1
  651. package/sub-assets/sub-assets.component.d.ts +1 -1
  652. package/sub-assets/sub-assets.component.d.ts.map +1 -1
  653. package/sub-assets/sub-assets.module.d.ts +18 -18
  654. package/sub-assets/sub-assets.module.d.ts.map +1 -1
  655. package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts +1 -1
  656. package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts.map +1 -1
  657. package/tenants/tenant-form/tenant-form.component.d.ts +1 -1
  658. package/tenants/tenant-form/tenant-form.component.d.ts.map +1 -1
  659. package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts +2 -3
  660. package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts.map +1 -1
  661. package/tenants/tenant-list/status.filtering-form-renderer.component.d.ts +1 -1
  662. package/tenants/tenant-list/status.filtering-form-renderer.component.d.ts.map +1 -1
  663. package/tenants/tenant-list/tenant-list.component.d.ts +1 -1
  664. package/tenants/tenant-list/tenant-list.component.d.ts.map +1 -1
  665. package/tenants/tenants.module.d.ts +9 -9
  666. package/tenants/tenants.module.d.ts.map +1 -1
  667. package/trusted-certificates/crl/crl-check-settings.component.d.ts +1 -1
  668. package/trusted-certificates/crl/crl-check-settings.component.d.ts.map +1 -1
  669. package/trusted-certificates/crl/crl-settings.component.d.ts +1 -1
  670. package/trusted-certificates/crl/crl-settings.component.d.ts.map +1 -1
  671. package/trusted-certificates/crl/crl-settings.module.d.ts +8 -8
  672. package/trusted-certificates/crl/crl-settings.module.d.ts.map +1 -1
  673. package/trusted-certificates/list/add-trusted-certificate.component.d.ts +4 -3
  674. package/trusted-certificates/list/add-trusted-certificate.component.d.ts.map +1 -1
  675. package/trusted-certificates/list/trusted-certificate-list.component.d.ts +11 -2
  676. package/trusted-certificates/list/trusted-certificate-list.component.d.ts.map +1 -1
  677. package/trusted-certificates/list/trusted-certificate-list.module.d.ts +10 -10
  678. package/trusted-certificates/list/trusted-certificate-list.module.d.ts.map +1 -1
  679. package/trusted-certificates/list/trusted-certificate.model.d.ts +2 -0
  680. package/trusted-certificates/list/trusted-certificate.model.d.ts.map +1 -1
  681. package/trusted-certificates/pattern-messages.data.d.ts +6 -0
  682. package/trusted-certificates/pattern-messages.data.d.ts.map +1 -1
  683. package/upgrade/dashboard/dashboard-upgrade.module.d.ts +6 -6
  684. package/upgrade/dashboard/dashboard-upgrade.module.d.ts.map +1 -1
  685. package/upgrade/dashboard/device-selector.component.d.ts +1 -1
  686. package/upgrade/dashboard/device-selector.component.d.ts.map +1 -1
  687. package/upgrade/dashboard/widget.component.d.ts +1 -1
  688. package/upgrade/dashboard/widget.component.d.ts.map +1 -1
  689. package/user-roles/inventory-role-selector/inventory-role-selector.component.d.ts +1 -1
  690. package/user-roles/inventory-role-selector/inventory-role-selector.component.d.ts.map +1 -1
  691. package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts +1 -1
  692. package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts.map +1 -1
  693. package/user-roles/user-roles.module.d.ts +4 -4
  694. package/user-roles/user-roles.module.d.ts.map +1 -1
  695. package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts +1 -1
  696. package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts.map +1 -1
  697. package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts +1 -1
  698. package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts.map +1 -1
  699. package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts +1 -1
  700. package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts.map +1 -1
  701. package/widgets/implementations/alarms/alarms-widget.module.d.ts +13 -13
  702. package/widgets/implementations/alarms/alarms-widget.module.d.ts.map +1 -1
  703. package/widgets/implementations/alarms/severity-icon.pipe.d.ts +1 -1
  704. package/widgets/implementations/alarms/severity-icon.pipe.d.ts.map +1 -1
  705. package/widgets/implementations/alarms/sorting-description-popover-message.pipe.d.ts +1 -1
  706. package/widgets/implementations/alarms/sorting-description-popover-message.pipe.d.ts.map +1 -1
  707. package/widgets/implementations/device-management-welcome/device-management-welcome-widget.module.d.ts +4 -4
  708. package/widgets/implementations/device-management-welcome/device-management-welcome-widget.module.d.ts.map +1 -1
  709. package/widgets/implementations/device-management-welcome/welcome.component.d.ts +1 -1
  710. package/widgets/implementations/device-management-welcome/welcome.component.d.ts.map +1 -1
@@ -1,23 +1,21 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, Optional, Inject, EventEmitter, Output, Input, Component, NgModule } from '@angular/core';
2
+ import { Injectable, Optional, Inject, Input, Component, EventEmitter, Output, NgModule } from '@angular/core';
3
3
  import * as i1 from '@c8y/ngx-components';
4
- import { NavigatorNode, gettext, Permissions, CoreModule, PluginLoadedPipe, hookRoute, hookNavigator, hookStepper, Steppers } from '@c8y/ngx-components';
4
+ import { NavigatorNode, gettext, Permissions, ListGroupComponent, ListItemComponent, C8yTranslatePipe, ListItemIconComponent, C8yTranslateDirective, PluginLoadedPipe, EmptyStateComponent, IconDirective, ListItemRadioComponent, TitleComponent, BreadcrumbComponent, BreadcrumbItemComponent, ProductExperienceDirective, CoreModule, hookRoute, hookNavigator, hookStepper, Steppers } from '@c8y/ngx-components';
5
5
  import * as i2 from '@c8y/ngx-components/ecosystem/shared';
6
6
  import * as i2$1 from '@c8y/ngx-components/assets-navigator';
7
- import { ASSET_NAVIGATOR_CONFIG, AssetSelectorModule } from '@c8y/ngx-components/assets-navigator';
7
+ import { ASSET_NAVIGATOR_CONFIG, AssetSelectorComponent, AssetSelectorModule } from '@c8y/ngx-components/assets-navigator';
8
8
  import { EcosystemModule } from '@c8y/ngx-components/ecosystem';
9
- import * as i6 from '@c8y/ngx-components/icon-selector';
10
- import { IconSelectorModule } from '@c8y/ngx-components/icon-selector';
11
- import * as i5$2 from 'ngx-bootstrap/popover';
12
- import { PopoverModule } from 'ngx-bootstrap/popover';
13
- import * as i5$1 from 'ngx-bootstrap/tooltip';
14
- import { TooltipModule } from 'ngx-bootstrap/tooltip';
9
+ import { IconSelectorWrapperComponent, IconSelectorModule } from '@c8y/ngx-components/icon-selector';
10
+ import { PopoverDirective, PopoverModule } from 'ngx-bootstrap/popover';
11
+ import { TooltipDirective, TooltipModule } from 'ngx-bootstrap/tooltip';
15
12
  import * as i3 from '@c8y/client';
16
13
  import { isUndefined, uniqBy, startCase } from 'lodash-es';
17
14
  import { take, map, filter } from 'rxjs/operators';
18
- import * as i2$2 from '@angular/common';
19
15
  import * as i5 from '@angular/forms';
20
- import * as i2$3 from '@angular/cdk/stepper';
16
+ import { FormsModule } from '@angular/forms';
17
+ import { NgIf, AsyncPipe, NgFor } from '@angular/common';
18
+ import * as i2$2 from '@angular/cdk/stepper';
21
19
 
22
20
  const DEFAULT_HOME_DASHBOARD_NAME = 'home-cockpit1';
23
21
  const USER_HOME_DASHBOARD_NAME = 'home-cockpit-user';
@@ -275,6 +273,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
275
273
  args: [ASSET_NAVIGATOR_CONFIG]
276
274
  }] }] });
277
275
 
276
+ class MiscConfigComponent {
277
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: MiscConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
278
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: MiscConfigComponent, isStandalone: true, selector: "c8y-misc-config", inputs: { config: "config" }, ngImport: i0, template: "<c8y-list-group class=\"separator-top\">\n <c8y-li>\n <div class=\"d-flex a-i-center\">\n <p>{{ 'Always collapse navigator on start up' | translate }}</p>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Collapse navigator on start up' | translate }}\"\n >\n <input data-cy=\"c8y-misc-config--collapse-button\" type=\"checkbox\" [(ngModel)]=\"config.hideNavigator\" name=\"hideNavigator\" />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n", dependencies: [{ kind: "component", type: ListGroupComponent, selector: "c8y-list-group" }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
279
+ }
280
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: MiscConfigComponent, decorators: [{
281
+ type: Component,
282
+ args: [{ selector: 'c8y-misc-config', imports: [ListGroupComponent, ListItemComponent, FormsModule, C8yTranslatePipe], template: "<c8y-list-group class=\"separator-top\">\n <c8y-li>\n <div class=\"d-flex a-i-center\">\n <p>{{ 'Always collapse navigator on start up' | translate }}</p>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Collapse navigator on start up' | translate }}\"\n >\n <input data-cy=\"c8y-misc-config--collapse-button\" type=\"checkbox\" [(ngModel)]=\"config.hideNavigator\" name=\"hideNavigator\" />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n" }]
283
+ }], propDecorators: { config: [{
284
+ type: Input
285
+ }] } });
286
+
278
287
  class FeatureConfigComponent {
279
288
  constructor() {
280
289
  this.onUpdate = new EventEmitter();
@@ -283,11 +292,21 @@ class FeatureConfigComponent {
283
292
  this.onUpdate.emit();
284
293
  }
285
294
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: FeatureConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
286
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: FeatureConfigComponent, isStandalone: false, selector: "c8y-feature-config", inputs: { config: "config" }, outputs: { onUpdate: "onUpdate" }, ngImport: i0, template: "<c8y-list-group>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'SearchModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"search\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global search' | translate }}</p>\n <p>\n <small translate>Display the global search in the main header.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global search' | translate }}\"\n >\n <input\n name=\"search\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.search\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Groups' | translate }}</p>\n <p>\n <small translate>Display top level groups under the Groups navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Groups' | translate }}\"\n >\n <input\n name=\"groups\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.groups\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'CockpitAlarmsModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"bell\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Alarms' | translate }}</p>\n <p>\n <small translate>Display a link to the global alarms list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global Alarms view' | translate }}\"\n >\n <input\n name=\"alarms\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.alarms\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-data-explorer\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data explorer' | translate }}</p>\n <p>\n <small translate>\n Display the data explorer in the navigator menu and on the group tabs.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data explorer' | translate }}\"\n >\n <input\n name=\"dataExplorer\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataExplorer\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'ReportDashboardModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-reports\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Reports' | translate }}</p>\n <p>\n <small translate>Display a link to the Reports list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Reports' | translate }}\"\n >\n <input\n name=\"reports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.reports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'exportsProviders' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"graph-report\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Exports' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Exports list under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Exports' | translate }}\"\n >\n <input\n name=\"exports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.exports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DatapointLibraryModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-data-points\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data point library' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Data point library under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data point library' | translate }}\"\n >\n <input\n name=\"dataPointLibrary\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataPointLibrary\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global smart rules' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Global smart rules under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global smart rules' | translate }}\"\n >\n <input\n name=\"globalSmartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.globalSmartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group-open\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Subassets view' | translate }}</p>\n <p><small translate>Display the \"Subassets\" tab on groups.</small></p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Subassets view' | translate }}\"\n >\n <input\n name=\"subassets\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.subassets\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Smart rules for devices and groups' | translate }}</p>\n <p>\n <small translate>Display the smart rules tab on groups and devices.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Smart rules for devices and groups' | translate }}\"\n >\n <input\n name=\"smartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.smartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DashboardManagerModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"management1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Dashboard manager' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Dashboard manager under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Dashboard manager' | translate }}\"\n >\n <input\n name=\"dashboardManager\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dashboardManager\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.ListGroupComponent, selector: "c8y-list-group" }, { kind: "component", type: i1.ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: i1.ListItemIconComponent, selector: "c8y-list-item-icon, c8y-li-icon", inputs: ["icon", "status"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i2$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.PluginLoadedPipe, name: "c8yPluginLoaded" }] }); }
295
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: FeatureConfigComponent, isStandalone: true, selector: "c8y-feature-config", inputs: { config: "config" }, outputs: { onUpdate: "onUpdate" }, ngImport: i0, template: "<c8y-list-group>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'SearchModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"search\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global search' | translate }}</p>\n <p>\n <small translate>Display the global search in the main header.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global search' | translate }}\"\n >\n <input\n name=\"search\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.search\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Groups' | translate }}</p>\n <p>\n <small translate>Display top level groups under the Groups navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Groups' | translate }}\"\n >\n <input\n name=\"groups\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.groups\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'CockpitAlarmsModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"bell\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Alarms' | translate }}</p>\n <p>\n <small translate>Display a link to the global alarms list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global Alarms view' | translate }}\"\n >\n <input\n name=\"alarms\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.alarms\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-data-explorer\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data explorer' | translate }}</p>\n <p>\n <small translate>\n Display the data explorer in the navigator menu and on the group tabs.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data explorer' | translate }}\"\n >\n <input\n name=\"dataExplorer\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataExplorer\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'ReportDashboardModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-reports\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Reports' | translate }}</p>\n <p>\n <small translate>Display a link to the Reports list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Reports' | translate }}\"\n >\n <input\n name=\"reports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.reports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'exportsProviders' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"graph-report\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Exports' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Exports list under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Exports' | translate }}\"\n >\n <input\n name=\"exports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.exports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DatapointLibraryModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-data-points\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data point library' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Data point library under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data point library' | translate }}\"\n >\n <input\n name=\"dataPointLibrary\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataPointLibrary\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global smart rules' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Global smart rules under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global smart rules' | translate }}\"\n >\n <input\n name=\"globalSmartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.globalSmartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group-open\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Subassets view' | translate }}</p>\n <p><small translate>Display the \"Subassets\" tab on groups.</small></p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Subassets view' | translate }}\"\n >\n <input\n name=\"subassets\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.subassets\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Smart rules for devices and groups' | translate }}</p>\n <p>\n <small translate>Display the smart rules tab on groups and devices.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Smart rules for devices and groups' | translate }}\"\n >\n <input\n name=\"smartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.smartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DashboardManagerModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"management1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Dashboard manager' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Dashboard manager under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Dashboard manager' | translate }}\"\n >\n <input\n name=\"dashboardManager\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dashboardManager\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n", dependencies: [{ kind: "component", type: ListGroupComponent, selector: "c8y-list-group" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: ListItemIconComponent, selector: "c8y-list-item-icon, c8y-li-icon", inputs: ["icon", "status"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: PluginLoadedPipe, name: "c8yPluginLoaded" }] }); }
287
296
  }
288
297
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: FeatureConfigComponent, decorators: [{
289
298
  type: Component,
290
- args: [{ selector: 'c8y-feature-config', standalone: false, template: "<c8y-list-group>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'SearchModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"search\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global search' | translate }}</p>\n <p>\n <small translate>Display the global search in the main header.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global search' | translate }}\"\n >\n <input\n name=\"search\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.search\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Groups' | translate }}</p>\n <p>\n <small translate>Display top level groups under the Groups navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Groups' | translate }}\"\n >\n <input\n name=\"groups\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.groups\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'CockpitAlarmsModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"bell\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Alarms' | translate }}</p>\n <p>\n <small translate>Display a link to the global alarms list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global Alarms view' | translate }}\"\n >\n <input\n name=\"alarms\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.alarms\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-data-explorer\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data explorer' | translate }}</p>\n <p>\n <small translate>\n Display the data explorer in the navigator menu and on the group tabs.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data explorer' | translate }}\"\n >\n <input\n name=\"dataExplorer\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataExplorer\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'ReportDashboardModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-reports\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Reports' | translate }}</p>\n <p>\n <small translate>Display a link to the Reports list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Reports' | translate }}\"\n >\n <input\n name=\"reports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.reports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'exportsProviders' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"graph-report\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Exports' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Exports list under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Exports' | translate }}\"\n >\n <input\n name=\"exports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.exports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DatapointLibraryModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-data-points\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data point library' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Data point library under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data point library' | translate }}\"\n >\n <input\n name=\"dataPointLibrary\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataPointLibrary\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global smart rules' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Global smart rules under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global smart rules' | translate }}\"\n >\n <input\n name=\"globalSmartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.globalSmartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group-open\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Subassets view' | translate }}</p>\n <p><small translate>Display the \"Subassets\" tab on groups.</small></p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Subassets view' | translate }}\"\n >\n <input\n name=\"subassets\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.subassets\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Smart rules for devices and groups' | translate }}</p>\n <p>\n <small translate>Display the smart rules tab on groups and devices.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Smart rules for devices and groups' | translate }}\"\n >\n <input\n name=\"smartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.smartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DashboardManagerModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"management1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Dashboard manager' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Dashboard manager under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Dashboard manager' | translate }}\"\n >\n <input\n name=\"dashboardManager\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dashboardManager\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n" }]
299
+ args: [{ selector: 'c8y-feature-config', imports: [
300
+ ListGroupComponent,
301
+ NgIf,
302
+ ListItemComponent,
303
+ ListItemIconComponent,
304
+ C8yTranslateDirective,
305
+ FormsModule,
306
+ C8yTranslatePipe,
307
+ AsyncPipe,
308
+ PluginLoadedPipe
309
+ ], template: "<c8y-list-group>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'SearchModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"search\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global search' | translate }}</p>\n <p>\n <small translate>Display the global search in the main header.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global search' | translate }}\"\n >\n <input\n name=\"search\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.search\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Groups' | translate }}</p>\n <p>\n <small translate>Display top level groups under the Groups navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Groups' | translate }}\"\n >\n <input\n name=\"groups\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.groups\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'CockpitAlarmsModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"bell\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Alarms' | translate }}</p>\n <p>\n <small translate>Display a link to the global alarms list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global Alarms view' | translate }}\"\n >\n <input\n name=\"alarms\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.alarms\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-data-explorer\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data explorer' | translate }}</p>\n <p>\n <small translate>\n Display the data explorer in the navigator menu and on the group tabs.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data explorer' | translate }}\"\n >\n <input\n name=\"dataExplorer\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataExplorer\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'ReportDashboardModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-reports\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Reports' | translate }}</p>\n <p>\n <small translate>Display a link to the Reports list in the navigator menu.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Reports' | translate }}\"\n >\n <input\n name=\"reports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.reports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'exportsProviders' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"graph-report\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Exports' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Exports list under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Exports' | translate }}\"\n >\n <input\n name=\"exports\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.exports\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DatapointLibraryModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"c8y-data-points\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Data point library' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Data point library under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Data point library' | translate }}\"\n >\n <input\n name=\"dataPointLibrary\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dataPointLibrary\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Global smart rules' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Global smart rules under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Global smart rules' | translate }}\"\n >\n <input\n name=\"globalSmartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.globalSmartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-group-open\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Subassets view' | translate }}</p>\n <p><small translate>Display the \"Subassets\" tab on groups.</small></p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Subassets view' | translate }}\"\n >\n <input\n name=\"subassets\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.subassets\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\">\n <c8y-li-icon icon=\"c8y-smart-rules\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Smart rules for devices and groups' | translate }}</p>\n <p>\n <small translate>Display the smart rules tab on groups and devices.</small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Smart rules for devices and groups' | translate }}\"\n >\n <input\n name=\"smartRules\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.smartRules\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li data-cy=\"feature-config--feature-list\" *ngIf=\"'DashboardManagerModule' | c8yPluginLoaded | async\">\n <c8y-li-icon icon=\"management1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div>\n <p>{{ 'Dashboard manager' | translate }}</p>\n <p>\n <small translate>\n Display a link to the Dashboard manager under the Configuration navigator menu.\n </small>\n </p>\n </div>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Dashboard manager' | translate }}\"\n >\n <input\n name=\"dashboardManager\"\n type=\"checkbox\"\n [(ngModel)]=\"config.features.dashboardManager\"\n (change)=\"updateFeatures()\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n" }]
291
310
  }], propDecorators: { config: [{
292
311
  type: Input
293
312
  }], onUpdate: [{
@@ -312,11 +331,24 @@ class RootNodeConfigComponent {
312
331
  }
313
332
  }
314
333
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: RootNodeConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
315
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: RootNodeConfigComponent, isStandalone: false, selector: "c8y-root-node-config", inputs: { config: "config", disabled: "disabled" }, outputs: { onUpdate: "onUpdate" }, ngImport: i0, template: "<div class=\"col-sm-6\">\n <label title=\"{{ 'Current top level nodes' | translate }}\" translate>\n Current top level nodes\n </label>\n <c8y-list-group class=\"separator-top\">\n <c8y-li *ngIf=\"config.rootNodes.length === 0\">\n <c8y-ui-empty-state\n [icon]=\"'folder-open'\"\n [title]=\"'No top level nodes set.' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n </c8y-li>\n <c8y-li *ngFor=\"let node of config.rootNodes; let index = index\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <div class=\"text-truncate\" title=\"{{ node.name }}\">\n {{ node.name }}\n </div>\n </div>\n <div class=\"col-4\">\n <label class=\"c8y-switch c8y-switch--inline d-flex\" title=\"{{ 'Hide devices' | translate }}\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"node.hideDevices\"\n name=\"node.{{ index }}.hideDevices\"\n (change)=\"onUpdate.emit()\"\n [disabled]=\"disabled\"\n />\n <span></span>\n <small class=\"text-truncate a-s-center l-h-1\">{{ 'Hide devices' | translate }}</small>\n </label>\n </div>\n <div class=\"col-2 text-right\">\n <div class=\"d-flex fit-w\">\n <button\n class=\"btn-dot btn-dot--danger m-l-auto\"\n type=\"button\"\n [attr.aria-label]=\"'Remove' | translate\"\n tooltip=\"{{ 'Remove' | translate }}\"\n [disabled]=\"disabled\"\n [delay]=\"500\"\n (click)=\"removeNavigatorNode(node)\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </div>\n </div>\n </c8y-li>\n </c8y-list-group>\n</div>\n\n<div class=\"col-sm-6 col-md-5\" style=\"height: calc(100vh - 430px)\">\n <label title=\"{{ 'Select top level nodes' | translate }}\" translate>Select top level nodes</label>\n <c8y-asset-selector\n [config]=\"{ groupsOnly: true, multi: true, groupsSelectable: true }\"\n [(ngModel)]=\"config.rootNodes\"\n [disabled]=\"disabled\"\n (onSelected)=\"onUpdate.emit()\"\n name=\"rootNodes\"\n class=\"border-top d-block\"\n ></c8y-asset-selector>\n</div>\n", dependencies: [{ kind: "component", type: i1.EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: i1.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i2$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.ListGroupComponent, selector: "c8y-list-group" }, { kind: "component", type: i1.ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: i1.ListItemIconComponent, selector: "c8y-list-item-icon, c8y-li-icon", inputs: ["icon", "status"] }, { kind: "component", type: i2$1.AssetSelectorComponent, selector: "c8y-asset-selector", inputs: ["config", "active", "index", "asset", "selectedDevice", "selected", "rootNode", "selectedItems", "container", "isNodeSelectable", "disabled"], outputs: ["onSelected", "onClearSelected", "onRowSelected", "onLoad"] }, { kind: "directive", type: i5$1.TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }] }); }
334
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: RootNodeConfigComponent, isStandalone: true, selector: "c8y-root-node-config", inputs: { config: "config", disabled: "disabled" }, outputs: { onUpdate: "onUpdate" }, ngImport: i0, template: "<div class=\"col-sm-6\">\n <label title=\"{{ 'Current top level nodes' | translate }}\" translate>\n Current top level nodes\n </label>\n <c8y-list-group class=\"separator-top\">\n <c8y-li *ngIf=\"config.rootNodes.length === 0\">\n <c8y-ui-empty-state\n [icon]=\"'folder-open'\"\n [title]=\"'No top level nodes set.' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n </c8y-li>\n <c8y-li *ngFor=\"let node of config.rootNodes; let index = index\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <div class=\"text-truncate\" title=\"{{ node.name }}\">\n {{ node.name }}\n </div>\n </div>\n <div class=\"col-4\">\n <label class=\"c8y-switch c8y-switch--inline d-flex\" title=\"{{ 'Hide devices' | translate }}\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"node.hideDevices\"\n name=\"node.{{ index }}.hideDevices\"\n (change)=\"onUpdate.emit()\"\n [disabled]=\"disabled\"\n />\n <span></span>\n <small class=\"text-truncate a-s-center l-h-1\">{{ 'Hide devices' | translate }}</small>\n </label>\n </div>\n <div class=\"col-2 text-right\">\n <div class=\"d-flex fit-w\">\n <button\n class=\"btn-dot btn-dot--danger m-l-auto\"\n type=\"button\"\n [attr.aria-label]=\"'Remove' | translate\"\n tooltip=\"{{ 'Remove' | translate }}\"\n [disabled]=\"disabled\"\n [delay]=\"500\"\n (click)=\"removeNavigatorNode(node)\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </div>\n </div>\n </c8y-li>\n </c8y-list-group>\n</div>\n\n<div class=\"col-sm-6 col-md-5\" style=\"height: calc(100vh - 430px)\">\n <label title=\"{{ 'Select top level nodes' | translate }}\" translate>Select top level nodes</label>\n <c8y-asset-selector\n [config]=\"{ groupsOnly: true, multi: true, groupsSelectable: true }\"\n [(ngModel)]=\"config.rootNodes\"\n [disabled]=\"disabled\"\n (onSelected)=\"onUpdate.emit()\"\n name=\"rootNodes\"\n class=\"border-top d-block\"\n ></c8y-asset-selector>\n</div>\n", dependencies: [{ kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "component", type: ListGroupComponent, selector: "c8y-list-group" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ListItemIconComponent, selector: "c8y-list-item-icon, c8y-li-icon", inputs: ["icon", "status"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "directive", type: IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "component", type: AssetSelectorComponent, selector: "c8y-asset-selector", inputs: ["config", "active", "index", "asset", "selectedDevice", "selected", "rootNode", "selectedItems", "container", "isNodeSelectable", "disabled"], outputs: ["onSelected", "onClearSelected", "onRowSelected", "onLoad"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }] }); }
316
335
  }
317
336
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: RootNodeConfigComponent, decorators: [{
318
337
  type: Component,
319
- args: [{ selector: 'c8y-root-node-config', standalone: false, template: "<div class=\"col-sm-6\">\n <label title=\"{{ 'Current top level nodes' | translate }}\" translate>\n Current top level nodes\n </label>\n <c8y-list-group class=\"separator-top\">\n <c8y-li *ngIf=\"config.rootNodes.length === 0\">\n <c8y-ui-empty-state\n [icon]=\"'folder-open'\"\n [title]=\"'No top level nodes set.' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n </c8y-li>\n <c8y-li *ngFor=\"let node of config.rootNodes; let index = index\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <div class=\"text-truncate\" title=\"{{ node.name }}\">\n {{ node.name }}\n </div>\n </div>\n <div class=\"col-4\">\n <label class=\"c8y-switch c8y-switch--inline d-flex\" title=\"{{ 'Hide devices' | translate }}\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"node.hideDevices\"\n name=\"node.{{ index }}.hideDevices\"\n (change)=\"onUpdate.emit()\"\n [disabled]=\"disabled\"\n />\n <span></span>\n <small class=\"text-truncate a-s-center l-h-1\">{{ 'Hide devices' | translate }}</small>\n </label>\n </div>\n <div class=\"col-2 text-right\">\n <div class=\"d-flex fit-w\">\n <button\n class=\"btn-dot btn-dot--danger m-l-auto\"\n type=\"button\"\n [attr.aria-label]=\"'Remove' | translate\"\n tooltip=\"{{ 'Remove' | translate }}\"\n [disabled]=\"disabled\"\n [delay]=\"500\"\n (click)=\"removeNavigatorNode(node)\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </div>\n </div>\n </c8y-li>\n </c8y-list-group>\n</div>\n\n<div class=\"col-sm-6 col-md-5\" style=\"height: calc(100vh - 430px)\">\n <label title=\"{{ 'Select top level nodes' | translate }}\" translate>Select top level nodes</label>\n <c8y-asset-selector\n [config]=\"{ groupsOnly: true, multi: true, groupsSelectable: true }\"\n [(ngModel)]=\"config.rootNodes\"\n [disabled]=\"disabled\"\n (onSelected)=\"onUpdate.emit()\"\n name=\"rootNodes\"\n class=\"border-top d-block\"\n ></c8y-asset-selector>\n</div>\n" }]
338
+ args: [{ selector: 'c8y-root-node-config', imports: [
339
+ C8yTranslateDirective,
340
+ ListGroupComponent,
341
+ NgIf,
342
+ ListItemComponent,
343
+ EmptyStateComponent,
344
+ NgFor,
345
+ ListItemIconComponent,
346
+ FormsModule,
347
+ TooltipDirective,
348
+ IconDirective,
349
+ AssetSelectorComponent,
350
+ C8yTranslatePipe
351
+ ], template: "<div class=\"col-sm-6\">\n <label title=\"{{ 'Current top level nodes' | translate }}\" translate>\n Current top level nodes\n </label>\n <c8y-list-group class=\"separator-top\">\n <c8y-li *ngIf=\"config.rootNodes.length === 0\">\n <c8y-ui-empty-state\n [icon]=\"'folder-open'\"\n [title]=\"'No top level nodes set.' | translate\"\n [horizontal]=\"true\"\n ></c8y-ui-empty-state>\n </c8y-li>\n <c8y-li *ngFor=\"let node of config.rootNodes; let index = index\">\n <c8y-li-icon icon=\"c8y-group\"></c8y-li-icon>\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <div class=\"text-truncate\" title=\"{{ node.name }}\">\n {{ node.name }}\n </div>\n </div>\n <div class=\"col-4\">\n <label class=\"c8y-switch c8y-switch--inline d-flex\" title=\"{{ 'Hide devices' | translate }}\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"node.hideDevices\"\n name=\"node.{{ index }}.hideDevices\"\n (change)=\"onUpdate.emit()\"\n [disabled]=\"disabled\"\n />\n <span></span>\n <small class=\"text-truncate a-s-center l-h-1\">{{ 'Hide devices' | translate }}</small>\n </label>\n </div>\n <div class=\"col-2 text-right\">\n <div class=\"d-flex fit-w\">\n <button\n class=\"btn-dot btn-dot--danger m-l-auto\"\n type=\"button\"\n [attr.aria-label]=\"'Remove' | translate\"\n tooltip=\"{{ 'Remove' | translate }}\"\n [disabled]=\"disabled\"\n [delay]=\"500\"\n (click)=\"removeNavigatorNode(node)\"\n >\n <i c8yIcon=\"minus-circle\"></i>\n </button>\n </div>\n </div>\n </div>\n </c8y-li>\n </c8y-list-group>\n</div>\n\n<div class=\"col-sm-6 col-md-5\" style=\"height: calc(100vh - 430px)\">\n <label title=\"{{ 'Select top level nodes' | translate }}\" translate>Select top level nodes</label>\n <c8y-asset-selector\n [config]=\"{ groupsOnly: true, multi: true, groupsSelectable: true }\"\n [(ngModel)]=\"config.rootNodes\"\n [disabled]=\"disabled\"\n (onSelected)=\"onUpdate.emit()\"\n name=\"rootNodes\"\n class=\"border-top d-block\"\n ></c8y-asset-selector>\n</div>\n" }]
320
352
  }], propDecorators: { config: [{
321
353
  type: Input
322
354
  }], disabled: [{
@@ -374,26 +406,15 @@ class HomeDashboardConfigComponent {
374
406
  return this.config.homeDashboardName === this.cockpitConfigService.getAppDashboardName();
375
407
  }
376
408
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: HomeDashboardConfigComponent, deps: [{ token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
377
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: HomeDashboardConfigComponent, isStandalone: false, selector: "c8y-home-dashboard-config", inputs: { config: "config" }, ngImport: i0, template: "<c8y-list-group>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.DEFAULT)\"\n [selected]=\"verifySelected(homeDashboardTypes.DEFAULT)\"\n ></c8y-li-radio>\n <p translate>Default home dashboard</p>\n <small translate>Changes done in the home dashboard are reflected across the platform.</small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.APP)\"\n [selected]=\"verifySelected(homeDashboardTypes.APP)\"\n ></c8y-li-radio>\n <p translate>Custom home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only in the current application.\n </small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.USER)\"\n [selected]=\"verifySelected(homeDashboardTypes.USER)\"\n ></c8y-li-radio>\n <p translate>User home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only for the current user. NOTE: This user\n needs to have inventory write permission.\n </small>\n </c8y-li>\n</c8y-list-group>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "component", type: i1.ListGroupComponent, selector: "c8y-list-group" }, { kind: "component", type: i1.ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: i1.ListItemRadioComponent, selector: "c8y-list-item-radio, c8y-li-radio", inputs: ["selected", "name", "disabled", "value"], outputs: ["onSelect"] }] }); }
409
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: HomeDashboardConfigComponent, isStandalone: true, selector: "c8y-home-dashboard-config", inputs: { config: "config" }, ngImport: i0, template: "<c8y-list-group>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.DEFAULT)\"\n [selected]=\"verifySelected(homeDashboardTypes.DEFAULT)\"\n ></c8y-li-radio>\n <p translate>Default home dashboard</p>\n <small translate>Changes done in the home dashboard are reflected across the platform.</small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.APP)\"\n [selected]=\"verifySelected(homeDashboardTypes.APP)\"\n ></c8y-li-radio>\n <p translate>Custom home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only in the current application.\n </small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.USER)\"\n [selected]=\"verifySelected(homeDashboardTypes.USER)\"\n ></c8y-li-radio>\n <p translate>User home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only for the current user. NOTE: This user\n needs to have inventory write permission.\n </small>\n </c8y-li>\n</c8y-list-group>\n", dependencies: [{ kind: "component", type: ListGroupComponent, selector: "c8y-list-group" }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: ListItemRadioComponent, selector: "c8y-list-item-radio, c8y-li-radio", inputs: ["selected", "name", "disabled", "value"], outputs: ["onSelect"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }] }); }
378
410
  }
379
411
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: HomeDashboardConfigComponent, decorators: [{
380
412
  type: Component,
381
- args: [{ selector: 'c8y-home-dashboard-config', standalone: false, template: "<c8y-list-group>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.DEFAULT)\"\n [selected]=\"verifySelected(homeDashboardTypes.DEFAULT)\"\n ></c8y-li-radio>\n <p translate>Default home dashboard</p>\n <small translate>Changes done in the home dashboard are reflected across the platform.</small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.APP)\"\n [selected]=\"verifySelected(homeDashboardTypes.APP)\"\n ></c8y-li-radio>\n <p translate>Custom home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only in the current application.\n </small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.USER)\"\n [selected]=\"verifySelected(homeDashboardTypes.USER)\"\n ></c8y-li-radio>\n <p translate>User home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only for the current user. NOTE: This user\n needs to have inventory write permission.\n </small>\n </c8y-li>\n</c8y-list-group>\n" }]
413
+ args: [{ selector: 'c8y-home-dashboard-config', imports: [ListGroupComponent, ListItemComponent, ListItemRadioComponent, C8yTranslateDirective], template: "<c8y-list-group>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.DEFAULT)\"\n [selected]=\"verifySelected(homeDashboardTypes.DEFAULT)\"\n ></c8y-li-radio>\n <p translate>Default home dashboard</p>\n <small translate>Changes done in the home dashboard are reflected across the platform.</small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.APP)\"\n [selected]=\"verifySelected(homeDashboardTypes.APP)\"\n ></c8y-li-radio>\n <p translate>Custom home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only in the current application.\n </small>\n </c8y-li>\n <c8y-li data-cy=\"home-dashboard-config--dashboard-list\">\n <c8y-li-radio\n (onSelect)=\"dashboardChange($event, homeDashboardTypes.USER)\"\n [selected]=\"verifySelected(homeDashboardTypes.USER)\"\n ></c8y-li-radio>\n <p translate>User home dashboard</p>\n <small translate>\n Changes done to the home dashboard are reflected only for the current user. NOTE: This user\n needs to have inventory write permission.\n </small>\n </c8y-li>\n</c8y-list-group>\n" }]
382
414
  }], ctorParameters: () => [{ type: CockpitConfigService }], propDecorators: { config: [{
383
415
  type: Input
384
416
  }] } });
385
417
 
386
- class MiscConfigComponent {
387
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: MiscConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
388
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: MiscConfigComponent, isStandalone: false, selector: "c8y-misc-config", inputs: { config: "config" }, ngImport: i0, template: "<c8y-list-group class=\"separator-top\">\n <c8y-li>\n <div class=\"d-flex a-i-center\">\n <p>{{ 'Always collapse navigator on start up' | translate }}</p>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Collapse navigator on start up' | translate }}\"\n >\n <input data-cy=\"c8y-misc-config--collapse-button\" type=\"checkbox\" [(ngModel)]=\"config.hideNavigator\" name=\"hideNavigator\" />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n", dependencies: [{ kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1.ListGroupComponent, selector: "c8y-list-group" }, { kind: "component", type: i1.ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }] }); }
389
- }
390
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: MiscConfigComponent, decorators: [{
391
- type: Component,
392
- args: [{ selector: 'c8y-misc-config', standalone: false, template: "<c8y-list-group class=\"separator-top\">\n <c8y-li>\n <div class=\"d-flex a-i-center\">\n <p>{{ 'Always collapse navigator on start up' | translate }}</p>\n <label\n class=\"c8y-switch c8y-switch--inline m-l-auto\"\n title=\"{{ 'Collapse navigator on start up' | translate }}\"\n >\n <input data-cy=\"c8y-misc-config--collapse-button\" type=\"checkbox\" [(ngModel)]=\"config.hideNavigator\" name=\"hideNavigator\" />\n <span></span>\n </label>\n </div>\n </c8y-li>\n</c8y-list-group>\n" }]
393
- }], propDecorators: { config: [{
394
- type: Input
395
- }] } });
396
-
397
418
  class CockpitConfigurationComponent {
398
419
  constructor(cockpitConfigService, alertService, appState) {
399
420
  this.cockpitConfigService = cockpitConfigService;
@@ -450,11 +471,30 @@ class CockpitConfigurationComponent {
450
471
  this.rootNodeDisabled = false;
451
472
  }
452
473
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitConfigurationComponent, deps: [{ token: CockpitConfigService }, { token: i1.AlertService }, { token: i1.AppStateService }], target: i0.ɵɵFactoryTarget.Component }); }
453
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitConfigurationComponent, isStandalone: false, selector: "c8y-cockpit-configuration", ngImport: i0, template: "<c8y-title>{{ 'Application configuration' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Configuration' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Application configuration' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n<div class=\"row\">\n <div class=\"col-lg-12 col-lg-max\">\n <form #configForm=\"ngForm\">\n <div class=\"card card--fullpage\">\n <div class=\"card-header separator\">\n <div class=\"card-title\">\n {{ config.appTitle || ('Cockpit' | translate) }} {{ 'configuration' | translate }}\n </div>\n </div>\n\n <div class=\"inner-scroll\">\n <div class=\"card-block p-t-0 p-b-0\">\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div\n class=\"h4 text-medium d-inline-block m-r-4\"\n translate\n >\n Title, icon, and navigator collapse\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8 p-l-16\">\n <div class=\"d-flex a-i-start gap-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-4\"\n translate\n >\n Features\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Define which are the enabled features in the current application.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-feature-config\n [config]=\"config\"\n (onUpdate)=\"updateFeatures()\"\n ></c8y-feature-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Top level nodes\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select which nodes to display in the top level of the navigator menu. By default, only Groups is shown.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-10 col-md-10\">\n <div class=\"row\">\n <c8y-root-node-config\n [config]=\"config\"\n (onUpdate)=\"updateRootNodes()\"\n [disabled]=\"rootNodeDisabled\"\n ></c8y-root-node-config>\n </div>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row separator-bottom p-t-24 p-b-24\"\n *ngIf=\"'CockpitDashboardModule' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Home dashboard\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'The homepage of this application. By default, it is a customizable dashboard displaying the most important alarms and shortcuts to frequently used features.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row p-t-24 p-b-24\"\n *ngIf=\"'htmlWidgetProviders' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n HTML widget\n </div>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-li>\n <c8y-li-icon icon=\"code1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p> {{ 'Disable sanitization' | translate }}</p>\n <p>\n <small translate>\n By default, every unsecure HTML is removed from the HTML widget. You can disable\n this behavior in this application and allow unsecure HTML to be used.\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Disable sanitization' | translate\"\n name=\"htmlWidgetDisableSanitization\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDisableSanitization\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li class=\"\">\n <c8y-li-icon icon=\"settings\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p>{{ 'Enforce advanced mode' | translate }}</p>\n <p>\n <small translate>\n If set to true, the HTML widget configuration will always be opened in the advanced mode\n (web component mode).\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Enforce advanced mode' | translate\"\n name=\"htmlWidgetDefaultToAdvancedMode\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDefaultToAdvancedMode\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n </div>\n </fieldset>\n </div>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n [disabled]=\"!configForm.form.valid\"\n (click)=\"save()\"\n [actionName]=\"'cockpitConfigurationSaved'\"\n [actionData]=\"{ config: config }\"\n c8yProductExperience\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n </form>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: i1.BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: i1.BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.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: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i1.ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: i1.ListItemIconComponent, selector: "c8y-list-item-icon, c8y-li-icon", inputs: ["icon", "status"] }, { kind: "directive", type: i1.ProductExperienceDirective, selector: "[c8yProductExperience]", inputs: ["actionName", "actionData", "inherit", "suppressDataOverriding"] }, { kind: "directive", type: i5$2.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { kind: "component", type: i6.IconSelectorWrapperComponent, selector: "c8y-icon-selector-wrapper", inputs: ["canRemoveIcon", "selectedIcon", "iconSize"], outputs: ["onSelect"] }, { kind: "component", type: FeatureConfigComponent, selector: "c8y-feature-config", inputs: ["config"], outputs: ["onUpdate"] }, { kind: "component", type: RootNodeConfigComponent, selector: "c8y-root-node-config", inputs: ["config", "disabled"], outputs: ["onUpdate"] }, { kind: "component", type: HomeDashboardConfigComponent, selector: "c8y-home-dashboard-config", inputs: ["config"] }, { kind: "component", type: MiscConfigComponent, selector: "c8y-misc-config", inputs: ["config"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i2$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.PluginLoadedPipe, name: "c8yPluginLoaded" }] }); }
474
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitConfigurationComponent, isStandalone: true, selector: "c8y-cockpit-configuration", ngImport: i0, template: "<c8y-title>{{ 'Application configuration' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Configuration' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Application configuration' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n<div class=\"row\">\n <div class=\"col-lg-12 col-lg-max\">\n <form #configForm=\"ngForm\">\n <div class=\"card card--fullpage\">\n <div class=\"card-header separator\">\n <div class=\"card-title\">\n {{ config.appTitle || ('Cockpit' | translate) }} {{ 'configuration' | translate }}\n </div>\n </div>\n\n <div class=\"inner-scroll\">\n <div class=\"card-block p-t-0 p-b-0\">\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div\n class=\"h4 text-medium d-inline-block m-r-4\"\n translate\n >\n Title, icon, and navigator collapse\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8 p-l-16\">\n <div class=\"d-flex a-i-start gap-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-4\"\n translate\n >\n Features\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Define which are the enabled features in the current application.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-feature-config\n [config]=\"config\"\n (onUpdate)=\"updateFeatures()\"\n ></c8y-feature-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Top level nodes\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select which nodes to display in the top level of the navigator menu. By default, only Groups is shown.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-10 col-md-10\">\n <div class=\"row\">\n <c8y-root-node-config\n [config]=\"config\"\n (onUpdate)=\"updateRootNodes()\"\n [disabled]=\"rootNodeDisabled\"\n ></c8y-root-node-config>\n </div>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row separator-bottom p-t-24 p-b-24\"\n *ngIf=\"'CockpitDashboardModule' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Home dashboard\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'The homepage of this application. By default, it is a customizable dashboard displaying the most important alarms and shortcuts to frequently used features.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row p-t-24 p-b-24\"\n *ngIf=\"'htmlWidgetProviders' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n HTML widget\n </div>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-li>\n <c8y-li-icon icon=\"code1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p> {{ 'Disable sanitization' | translate }}</p>\n <p>\n <small translate>\n By default, every unsecure HTML is removed from the HTML widget. You can disable\n this behavior in this application and allow unsecure HTML to be used.\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Disable sanitization' | translate\"\n name=\"htmlWidgetDisableSanitization\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDisableSanitization\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li class=\"\">\n <c8y-li-icon icon=\"settings\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p>{{ 'Enforce advanced mode' | translate }}</p>\n <p>\n <small translate>\n If set to true, the HTML widget configuration will always be opened in the advanced mode\n (web component mode).\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Enforce advanced mode' | translate\"\n name=\"htmlWidgetDefaultToAdvancedMode\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDefaultToAdvancedMode\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n </div>\n </fieldset>\n </div>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n [disabled]=\"!configForm.form.valid\"\n (click)=\"save()\"\n [actionName]=\"'cockpitConfigurationSaved'\"\n [actionData]=\"{ config: config }\"\n c8yProductExperience\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n </form>\n </div>\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: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.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: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "component", type: IconSelectorWrapperComponent, selector: "c8y-icon-selector-wrapper", inputs: ["canRemoveIcon", "selectedIcon", "iconSize"], outputs: ["onSelect"] }, { kind: "component", type: MiscConfigComponent, selector: "c8y-misc-config", inputs: ["config"] }, { 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: "component", type: FeatureConfigComponent, selector: "c8y-feature-config", inputs: ["config"], outputs: ["onUpdate"] }, { kind: "component", type: RootNodeConfigComponent, selector: "c8y-root-node-config", inputs: ["config", "disabled"], outputs: ["onUpdate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: HomeDashboardConfigComponent, selector: "c8y-home-dashboard-config", inputs: ["config"] }, { kind: "component", type: ListItemComponent, selector: "c8y-list-item, c8y-li", inputs: ["active", "highlighted", "emptyActions", "dense", "collapsed", "selectable"], outputs: ["collapsedChange"] }, { kind: "component", type: ListItemIconComponent, selector: "c8y-list-item-icon, c8y-li-icon", inputs: ["icon", "status"] }, { kind: "directive", type: ProductExperienceDirective, selector: "[c8yProductExperience]", inputs: ["actionName", "actionData", "inherit", "suppressDataOverriding"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: PluginLoadedPipe, name: "c8yPluginLoaded" }] }); }
454
475
  }
455
476
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitConfigurationComponent, decorators: [{
456
477
  type: Component,
457
- args: [{ selector: 'c8y-cockpit-configuration', standalone: false, template: "<c8y-title>{{ 'Application configuration' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Configuration' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Application configuration' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n<div class=\"row\">\n <div class=\"col-lg-12 col-lg-max\">\n <form #configForm=\"ngForm\">\n <div class=\"card card--fullpage\">\n <div class=\"card-header separator\">\n <div class=\"card-title\">\n {{ config.appTitle || ('Cockpit' | translate) }} {{ 'configuration' | translate }}\n </div>\n </div>\n\n <div class=\"inner-scroll\">\n <div class=\"card-block p-t-0 p-b-0\">\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div\n class=\"h4 text-medium d-inline-block m-r-4\"\n translate\n >\n Title, icon, and navigator collapse\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8 p-l-16\">\n <div class=\"d-flex a-i-start gap-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-4\"\n translate\n >\n Features\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Define which are the enabled features in the current application.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-feature-config\n [config]=\"config\"\n (onUpdate)=\"updateFeatures()\"\n ></c8y-feature-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Top level nodes\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select which nodes to display in the top level of the navigator menu. By default, only Groups is shown.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-10 col-md-10\">\n <div class=\"row\">\n <c8y-root-node-config\n [config]=\"config\"\n (onUpdate)=\"updateRootNodes()\"\n [disabled]=\"rootNodeDisabled\"\n ></c8y-root-node-config>\n </div>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row separator-bottom p-t-24 p-b-24\"\n *ngIf=\"'CockpitDashboardModule' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Home dashboard\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'The homepage of this application. By default, it is a customizable dashboard displaying the most important alarms and shortcuts to frequently used features.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row p-t-24 p-b-24\"\n *ngIf=\"'htmlWidgetProviders' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n HTML widget\n </div>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-li>\n <c8y-li-icon icon=\"code1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p> {{ 'Disable sanitization' | translate }}</p>\n <p>\n <small translate>\n By default, every unsecure HTML is removed from the HTML widget. You can disable\n this behavior in this application and allow unsecure HTML to be used.\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Disable sanitization' | translate\"\n name=\"htmlWidgetDisableSanitization\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDisableSanitization\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li class=\"\">\n <c8y-li-icon icon=\"settings\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p>{{ 'Enforce advanced mode' | translate }}</p>\n <p>\n <small translate>\n If set to true, the HTML widget configuration will always be opened in the advanced mode\n (web component mode).\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Enforce advanced mode' | translate\"\n name=\"htmlWidgetDefaultToAdvancedMode\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDefaultToAdvancedMode\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n </div>\n </fieldset>\n </div>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n [disabled]=\"!configForm.form.valid\"\n (click)=\"save()\"\n [actionName]=\"'cockpitConfigurationSaved'\"\n [actionData]=\"{ config: config }\"\n c8yProductExperience\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n </form>\n </div>\n</div>\n" }]
478
+ args: [{ selector: 'c8y-cockpit-configuration', imports: [
479
+ TitleComponent,
480
+ BreadcrumbComponent,
481
+ BreadcrumbItemComponent,
482
+ FormsModule,
483
+ C8yTranslateDirective,
484
+ IconSelectorWrapperComponent,
485
+ MiscConfigComponent,
486
+ PopoverDirective,
487
+ FeatureConfigComponent,
488
+ RootNodeConfigComponent,
489
+ NgIf,
490
+ HomeDashboardConfigComponent,
491
+ ListItemComponent,
492
+ ListItemIconComponent,
493
+ ProductExperienceDirective,
494
+ C8yTranslatePipe,
495
+ AsyncPipe,
496
+ PluginLoadedPipe
497
+ ], template: "<c8y-title>{{ 'Application configuration' | translate }}</c8y-title>\n<c8y-breadcrumb>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Configuration' | translate\"\n ></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [icon]=\"'c8y-tools'\"\n [label]=\"'Application configuration' | translate\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n<div class=\"row\">\n <div class=\"col-lg-12 col-lg-max\">\n <form #configForm=\"ngForm\">\n <div class=\"card card--fullpage\">\n <div class=\"card-header separator\">\n <div class=\"card-title\">\n {{ config.appTitle || ('Cockpit' | translate) }} {{ 'configuration' | translate }}\n </div>\n </div>\n\n <div class=\"inner-scroll\">\n <div class=\"card-block p-t-0 p-b-0\">\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div\n class=\"h4 text-medium d-inline-block m-r-4\"\n translate\n >\n Title, icon, and navigator collapse\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8 p-l-16\">\n <div class=\"d-flex a-i-start gap-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-4\"\n translate\n >\n Features\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Define which are the enabled features in the current application.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-feature-config\n [config]=\"config\"\n (onUpdate)=\"updateFeatures()\"\n ></c8y-feature-config>\n </div>\n </fieldset>\n <fieldset class=\"row separator-bottom p-t-24 p-b-24\">\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Top level nodes\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'Select which nodes to display in the top level of the navigator menu. By default, only Groups is shown.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-10 col-md-10\">\n <div class=\"row\">\n <c8y-root-node-config\n [config]=\"config\"\n (onUpdate)=\"updateRootNodes()\"\n [disabled]=\"rootNodeDisabled\"\n ></c8y-root-node-config>\n </div>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row separator-bottom p-t-24 p-b-24\"\n *ngIf=\"'CockpitDashboardModule' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n Home dashboard\n </div>\n <button\n class=\"btn-help btn-help--sm\"\n [attr.aria-label]=\"'Help' | translate\"\n popover=\"{{\n 'The homepage of this application. By default, it is a customizable dashboard displaying the most important alarms and shortcuts to frequently used features.'\n | translate\n }}\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n ></button>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </fieldset>\n\n <fieldset\n class=\"row p-t-24 p-b-24\"\n *ngIf=\"'htmlWidgetProviders' | c8yPluginLoaded | async\"\n >\n <div class=\"col-xs-12 col-sm-3 col-md-2 text-left-xs text-right-sm\">\n <div class=\"d-inline-flex m-b-16\">\n <div\n class=\"h4 text-medium m-r-8\"\n translate\n >\n HTML widget\n </div>\n </div>\n </div>\n <div class=\"col-xs-12 col-sm-9 col-md-8\">\n <c8y-li>\n <c8y-li-icon icon=\"code1\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p> {{ 'Disable sanitization' | translate }}</p>\n <p>\n <small translate>\n By default, every unsecure HTML is removed from the HTML widget. You can disable\n this behavior in this application and allow unsecure HTML to be used.\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Disable sanitization' | translate\"\n name=\"htmlWidgetDisableSanitization\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDisableSanitization\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n <c8y-li class=\"\">\n <c8y-li-icon icon=\"settings\"></c8y-li-icon>\n <div class=\"d-flex a-i-center\">\n <div class=\"p-r-16\">\n <p>{{ 'Enforce advanced mode' | translate }}</p>\n <p>\n <small translate>\n If set to true, the HTML widget configuration will always be opened in the advanced mode\n (web component mode).\n </small>\n </p>\n </div>\n <label class=\"c8y-switch c8y-switch--inline m-l-auto\">\n <input\n [attr.aria-label]=\"'Enforce advanced mode' | translate\"\n name=\"htmlWidgetDefaultToAdvancedMode\"\n type=\"checkbox\"\n [(ngModel)]=\"config.htmlWidgetDefaultToAdvancedMode\"\n />\n <span></span>\n </label>\n </div>\n </c8y-li>\n </div>\n </fieldset>\n </div>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"submit\"\n [disabled]=\"!configForm.form.valid\"\n (click)=\"save()\"\n [actionName]=\"'cockpitConfigurationSaved'\"\n [actionData]=\"{ config: config }\"\n c8yProductExperience\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n </form>\n </div>\n</div>\n" }]
458
498
  }], ctorParameters: () => [{ type: CockpitConfigService }, { type: i1.AlertService }, { type: i1.AppStateService }] });
459
499
 
460
500
  class CockpitSetupStep {
@@ -497,11 +537,11 @@ class CockpitSetupStepperButtonsComponent {
497
537
  this.onBack = new EventEmitter();
498
538
  }
499
539
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStepperButtonsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
500
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStepperButtonsComponent, isStandalone: false, selector: "c8y-cockpit-setup-stepper-buttons", inputs: { index: "index" }, outputs: { onNext: "onNext", onBack: "onBack" }, ngImport: i0, template: "<div class=\"card-footer separator d-flex j-c-center\">\n <button\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"onBack.emit()\"\n *ngIf=\"index !== 0\"\n translate\n >\n Previous\n </button>\n <button data-cy=\"c8y-cockpit-setup-stepper-buttons--save-continue-button\" class=\"btn btn-primary\" type=\"submit\" (click)=\"onNext.emit()\" translate>\n Continue\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
540
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStepperButtonsComponent, isStandalone: true, selector: "c8y-cockpit-setup-stepper-buttons", inputs: { index: "index" }, outputs: { onNext: "onNext", onBack: "onBack" }, ngImport: i0, template: "<div class=\"card-footer separator d-flex j-c-center\">\n <button\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"onBack.emit()\"\n *ngIf=\"index !== 0\"\n translate\n >\n Previous\n </button>\n <button data-cy=\"c8y-cockpit-setup-stepper-buttons--save-continue-button\" class=\"btn btn-primary\" type=\"submit\" (click)=\"onNext.emit()\" translate>\n Continue\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }] }); }
501
541
  }
502
542
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStepperButtonsComponent, decorators: [{
503
543
  type: Component,
504
- args: [{ selector: 'c8y-cockpit-setup-stepper-buttons', standalone: false, template: "<div class=\"card-footer separator d-flex j-c-center\">\n <button\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"onBack.emit()\"\n *ngIf=\"index !== 0\"\n translate\n >\n Previous\n </button>\n <button data-cy=\"c8y-cockpit-setup-stepper-buttons--save-continue-button\" class=\"btn btn-primary\" type=\"submit\" (click)=\"onNext.emit()\" translate>\n Continue\n </button>\n</div>\n" }]
544
+ args: [{ selector: 'c8y-cockpit-setup-stepper-buttons', imports: [NgIf, C8yTranslateDirective], template: "<div class=\"card-footer separator d-flex j-c-center\">\n <button\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"onBack.emit()\"\n *ngIf=\"index !== 0\"\n translate\n >\n Previous\n </button>\n <button data-cy=\"c8y-cockpit-setup-stepper-buttons--save-continue-button\" class=\"btn btn-primary\" type=\"submit\" (click)=\"onNext.emit()\" translate>\n Continue\n </button>\n</div>\n" }]
505
545
  }], propDecorators: { index: [{
506
546
  type: Input
507
547
  }], onNext: [{
@@ -525,13 +565,21 @@ class CockpitSetupStep1Component extends CockpitSetupStep {
525
565
  iconSelectionChange(icon) {
526
566
  this.config.icon = { class: icon };
527
567
  }
528
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep1Component, deps: [{ token: i1.C8yStepper }, { token: i2$3.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
529
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep1Component, isStandalone: false, selector: "c8y-cockpit-setup-step1", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form\n class=\"d-contents\"\n name=\"form\"\n #stepForm=\"ngForm\"\n>\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3\n data-cy=\"c8y-cockpit-setup-step1--step1-header-title\"\n class=\"text-medium l-h-base\"\n translate\n >\n Title, icon, and navigator collapse\n </h3>\n <p\n class=\"lead text-normal\"\n translate\n >\n Change the icon, the title, and set the initial navigator state.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <div class=\"d-flex a-i-start gap-16 p-t-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"(app$ | async)?.config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i6.IconSelectorWrapperComponent, selector: "c8y-icon-selector-wrapper", inputs: ["canRemoveIcon", "selectedIcon", "iconSize"], outputs: ["onSelect"] }, { kind: "component", type: MiscConfigComponent, selector: "c8y-misc-config", inputs: ["config"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i2$2.AsyncPipe, name: "async" }] }); }
568
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep1Component, deps: [{ token: i1.C8yStepper }, { token: i2$2.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
569
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep1Component, isStandalone: true, selector: "c8y-cockpit-setup-step1", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form\n class=\"d-contents\"\n name=\"form\"\n #stepForm=\"ngForm\"\n>\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3\n data-cy=\"c8y-cockpit-setup-step1--step1-header-title\"\n class=\"text-medium l-h-base\"\n translate\n >\n Title, icon, and navigator collapse\n </h3>\n <p\n class=\"lead text-normal\"\n translate\n >\n Change the icon, the title, and set the initial navigator state.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <div class=\"d-flex a-i-start gap-16 p-t-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"(app$ | async)?.config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "component", type: IconSelectorWrapperComponent, selector: "c8y-icon-selector-wrapper", inputs: ["canRemoveIcon", "selectedIcon", "iconSize"], outputs: ["onSelect"] }, { kind: "component", type: MiscConfigComponent, selector: "c8y-misc-config", inputs: ["config"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
530
570
  }
531
571
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep1Component, decorators: [{
532
572
  type: Component,
533
- args: [{ selector: 'c8y-cockpit-setup-step1', host: { class: 'd-contents' }, standalone: false, template: "<form\n class=\"d-contents\"\n name=\"form\"\n #stepForm=\"ngForm\"\n>\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3\n data-cy=\"c8y-cockpit-setup-step1--step1-header-title\"\n class=\"text-medium l-h-base\"\n translate\n >\n Title, icon, and navigator collapse\n </h3>\n <p\n class=\"lead text-normal\"\n translate\n >\n Change the icon, the title, and set the initial navigator state.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <div class=\"d-flex a-i-start gap-16 p-t-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"(app$ | async)?.config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
534
- }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$3.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
573
+ args: [{ selector: 'c8y-cockpit-setup-step1', host: { class: 'd-contents' }, imports: [
574
+ FormsModule,
575
+ C8yTranslateDirective,
576
+ IconSelectorWrapperComponent,
577
+ MiscConfigComponent,
578
+ CockpitSetupStepperButtonsComponent,
579
+ C8yTranslatePipe,
580
+ AsyncPipe
581
+ ], template: "<form\n class=\"d-contents\"\n name=\"form\"\n #stepForm=\"ngForm\"\n>\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3\n data-cy=\"c8y-cockpit-setup-step1--step1-header-title\"\n class=\"text-medium l-h-base\"\n translate\n >\n Title, icon, and navigator collapse\n </h3>\n <p\n class=\"lead text-normal\"\n translate\n >\n Change the icon, the title, and set the initial navigator state.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <div class=\"d-flex a-i-start gap-16 p-t-16\">\n <div class=\"form-group d-inline-block\">\n <label>{{ 'Icon' | translate }}</label>\n <c8y-icon-selector-wrapper\n [selectedIcon]=\"(app$ | async)?.config?.icon?.class || 'c8y-cockpit'\"\n [iconSize]=\"24\"\n (onSelect)=\"iconSelectionChange($event)\"\n ></c8y-icon-selector-wrapper>\n </div>\n <div class=\"form-group flex-grow\">\n <label\n for=\"confAppTitle\"\n translate\n >\n Change application title\n </label>\n <input\n class=\"form-control\"\n id=\"confAppTitle\"\n placeholder=\"{{ 'e.g. Cockpit' | translate }} \"\n type=\"text\"\n maxlength=\"254\"\n [(ngModel)]=\"config.appTitle\"\n [ngModelOptions]=\"{ standalone: true }\"\n />\n </div>\n </div>\n\n <c8y-misc-config [config]=\"config\"></c8y-misc-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
582
+ }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$2.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
535
583
 
536
584
  class CockpitSetupStep2Component extends CockpitSetupStep {
537
585
  constructor(stepper, step, setup, appState, alert, appService, cockpitConfigService) {
@@ -544,13 +592,18 @@ class CockpitSetupStep2Component extends CockpitSetupStep {
544
592
  this.appService = appService;
545
593
  this.cockpitConfigService = cockpitConfigService;
546
594
  }
547
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep2Component, deps: [{ token: i1.C8yStepper }, { token: i2$3.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
548
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep2Component, isStandalone: false, selector: "c8y-cockpit-setup-step2", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step2--step2-header-title\">Features</h3>\n <p class=\"lead text-normal\" translate>\n Define which are the enabled features in the current application.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-feature-config [config]=\"config\"></c8y-feature-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: FeatureConfigComponent, selector: "c8y-feature-config", inputs: ["config"], outputs: ["onUpdate"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }] }); }
595
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep2Component, deps: [{ token: i1.C8yStepper }, { token: i2$2.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
596
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep2Component, isStandalone: true, selector: "c8y-cockpit-setup-step2", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step2--step2-header-title\">Features</h3>\n <p class=\"lead text-normal\" translate>\n Define which are the enabled features in the current application.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-feature-config [config]=\"config\"></c8y-feature-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "component", type: FeatureConfigComponent, selector: "c8y-feature-config", inputs: ["config"], outputs: ["onUpdate"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }] }); }
549
597
  }
550
598
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep2Component, decorators: [{
551
599
  type: Component,
552
- args: [{ selector: 'c8y-cockpit-setup-step2', host: { class: 'd-contents' }, standalone: false, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step2--step2-header-title\">Features</h3>\n <p class=\"lead text-normal\" translate>\n Define which are the enabled features in the current application.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-feature-config [config]=\"config\"></c8y-feature-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
553
- }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$3.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
600
+ args: [{ selector: 'c8y-cockpit-setup-step2', host: { class: 'd-contents' }, imports: [
601
+ FormsModule,
602
+ C8yTranslateDirective,
603
+ FeatureConfigComponent,
604
+ CockpitSetupStepperButtonsComponent
605
+ ], template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step2--step2-header-title\">Features</h3>\n <p class=\"lead text-normal\" translate>\n Define which are the enabled features in the current application.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-feature-config [config]=\"config\"></c8y-feature-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
606
+ }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$2.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
554
607
 
555
608
  class CockpitSetupStep3Component extends CockpitSetupStep {
556
609
  constructor(stepper, step, setup, appState, alert, appService, cockpitConfigService) {
@@ -563,13 +616,18 @@ class CockpitSetupStep3Component extends CockpitSetupStep {
563
616
  this.appService = appService;
564
617
  this.cockpitConfigService = cockpitConfigService;
565
618
  }
566
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep3Component, deps: [{ token: i1.C8yStepper }, { token: i2$3.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
567
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep3Component, isStandalone: false, selector: "c8y-cockpit-setup-step3", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step3--step3-header-title\">Top level nodes</h3>\n <p class=\"lead text-normal\" translate>\n Select which nodes to display in the top level of the navigator menu. By default, only\n Groups is shown.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w p-t-16\">\n <div class=\"row\">\n <div class=\"col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2\">\n <c8y-root-node-config [config]=\"config\"></c8y-root-node-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: RootNodeConfigComponent, selector: "c8y-root-node-config", inputs: ["config", "disabled"], outputs: ["onUpdate"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }] }); }
619
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep3Component, deps: [{ token: i1.C8yStepper }, { token: i2$2.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
620
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep3Component, isStandalone: true, selector: "c8y-cockpit-setup-step3", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step3--step3-header-title\">Top level nodes</h3>\n <p class=\"lead text-normal\" translate>\n Select which nodes to display in the top level of the navigator menu. By default, only\n Groups is shown.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w p-t-16\">\n <div class=\"row\">\n <div class=\"col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2\">\n <c8y-root-node-config [config]=\"config\"></c8y-root-node-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "component", type: RootNodeConfigComponent, selector: "c8y-root-node-config", inputs: ["config", "disabled"], outputs: ["onUpdate"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }] }); }
568
621
  }
569
622
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep3Component, decorators: [{
570
623
  type: Component,
571
- args: [{ selector: 'c8y-cockpit-setup-step3', host: { class: 'd-contents' }, standalone: false, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step3--step3-header-title\">Top level nodes</h3>\n <p class=\"lead text-normal\" translate>\n Select which nodes to display in the top level of the navigator menu. By default, only\n Groups is shown.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w p-t-16\">\n <div class=\"row\">\n <div class=\"col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2\">\n <c8y-root-node-config [config]=\"config\"></c8y-root-node-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
572
- }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$3.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
624
+ args: [{ selector: 'c8y-cockpit-setup-step3', host: { class: 'd-contents' }, imports: [
625
+ FormsModule,
626
+ C8yTranslateDirective,
627
+ RootNodeConfigComponent,
628
+ CockpitSetupStepperButtonsComponent
629
+ ], template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step3--step3-header-title\">Top level nodes</h3>\n <p class=\"lead text-normal\" translate>\n Select which nodes to display in the top level of the navigator menu. By default, only\n Groups is shown.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w p-t-16\">\n <div class=\"row\">\n <div class=\"col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2\">\n <c8y-root-node-config [config]=\"config\"></c8y-root-node-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n >\n </c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
630
+ }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$2.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
573
631
 
574
632
  class CockpitSetupStep4Component extends CockpitSetupStep {
575
633
  constructor(stepper, step, setup, appState, alert, appService, cockpitConfigService) {
@@ -582,13 +640,18 @@ class CockpitSetupStep4Component extends CockpitSetupStep {
582
640
  this.appService = appService;
583
641
  this.cockpitConfigService = cockpitConfigService;
584
642
  }
585
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep4Component, deps: [{ token: i1.C8yStepper }, { token: i2$3.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
586
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep4Component, isStandalone: false, selector: "c8y-cockpit-setup-step4", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step4--step4-header-title\">Home dashboard</h3>\n <p class=\"lead text-normal\" translate>\n The homepage of this application. By default, it is a customizable dashboard displaying\n the most important alarms and shortcuts to frequently used features.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: HomeDashboardConfigComponent, selector: "c8y-home-dashboard-config", inputs: ["config"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }] }); }
643
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep4Component, deps: [{ token: i1.C8yStepper }, { token: i2$2.CdkStep }, { token: i1.SetupComponent }, { token: i1.AppStateService }, { token: i1.AlertService }, { token: i3.ApplicationService }, { token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
644
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: CockpitSetupStep4Component, isStandalone: true, selector: "c8y-cockpit-setup-step4", host: { classAttribute: "d-contents" }, usesInheritance: true, ngImport: i0, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step4--step4-header-title\">Home dashboard</h3>\n <p class=\"lead text-normal\" translate>\n The homepage of this application. By default, it is a customizable dashboard displaying\n the most important alarms and shortcuts to frequently used features.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "component", type: HomeDashboardConfigComponent, selector: "c8y-home-dashboard-config", inputs: ["config"] }, { kind: "component", type: CockpitSetupStepperButtonsComponent, selector: "c8y-cockpit-setup-stepper-buttons", inputs: ["index"], outputs: ["onNext", "onBack"] }] }); }
587
645
  }
588
646
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitSetupStep4Component, decorators: [{
589
647
  type: Component,
590
- args: [{ selector: 'c8y-cockpit-setup-step4', host: { class: 'd-contents' }, standalone: false, template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step4--step4-header-title\">Home dashboard</h3>\n <p class=\"lead text-normal\" translate>\n The homepage of this application. By default, it is a customizable dashboard displaying\n the most important alarms and shortcuts to frequently used features.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
591
- }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$3.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
648
+ args: [{ selector: 'c8y-cockpit-setup-step4', host: { class: 'd-contents' }, imports: [
649
+ FormsModule,
650
+ C8yTranslateDirective,
651
+ HomeDashboardConfigComponent,
652
+ CockpitSetupStepperButtonsComponent
653
+ ], template: "<form #stepForm=\"ngForm\" name=\"form\" class=\"d-contents\">\n <div class=\"container-fluid flex-no-shrink fit-w\">\n <div class=\"row separator-bottom\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 p-t-24 p-l-16 p-r-16\">\n <h3 translate class=\"text-medium l-h-base\" data-cy=\"c8y-cockpit-setup-step4--step4-header-title\">Home dashboard</h3>\n <p class=\"lead text-normal\" translate>\n The homepage of this application. By default, it is a customizable dashboard displaying\n the most important alarms and shortcuts to frequently used features.\n </p>\n </div>\n </div>\n </div>\n <div class=\"inner-scroll flex-grow\">\n <div class=\"container-fluid fit-w\">\n <div class=\"row\">\n <div class=\"col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3\">\n <c8y-home-dashboard-config [config]=\"config\"></c8y-home-dashboard-config>\n </div>\n </div>\n </div>\n </div>\n <c8y-cockpit-setup-stepper-buttons\n [index]=\"stepper.selectedIndex\"\n (onNext)=\"next()\"\n (onBack)=\"back()\"\n ></c8y-cockpit-setup-stepper-buttons>\n</form>\n" }]
654
+ }], ctorParameters: () => [{ type: i1.C8yStepper }, { type: i2$2.CdkStep }, { type: i1.SetupComponent }, { type: i1.AppStateService }, { type: i1.AlertService }, { type: i3.ApplicationService }, { type: CockpitConfigService }] });
592
655
 
593
656
  class CockpitConfigModule {
594
657
  constructor(service) {
@@ -596,7 +659,14 @@ class CockpitConfigModule {
596
659
  // only for DI, not used but needed.
597
660
  }
598
661
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitConfigModule, deps: [{ token: CockpitConfigService }], target: i0.ɵɵFactoryTarget.NgModule }); }
599
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: CockpitConfigModule, declarations: [CockpitConfigurationComponent,
662
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: CockpitConfigModule, imports: [CoreModule,
663
+ AssetSelectorModule,
664
+ PopoverModule,
665
+ TooltipModule,
666
+ EcosystemModule,
667
+ IconSelectorModule,
668
+ PluginLoadedPipe,
669
+ CockpitConfigurationComponent,
600
670
  CockpitSetupStep1Component,
601
671
  CockpitSetupStep2Component,
602
672
  CockpitSetupStep3Component,
@@ -605,13 +675,7 @@ class CockpitConfigModule {
605
675
  RootNodeConfigComponent,
606
676
  HomeDashboardConfigComponent,
607
677
  MiscConfigComponent,
608
- CockpitSetupStepperButtonsComponent], imports: [CoreModule,
609
- AssetSelectorModule,
610
- PopoverModule,
611
- TooltipModule,
612
- EcosystemModule,
613
- IconSelectorModule,
614
- PluginLoadedPipe] }); }
678
+ CockpitSetupStepperButtonsComponent] }); }
615
679
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitConfigModule, providers: [
616
680
  CockpitConfigGuard,
617
681
  hookRoute({
@@ -655,12 +719,28 @@ class CockpitConfigModule {
655
719
  PopoverModule,
656
720
  TooltipModule,
657
721
  EcosystemModule,
658
- IconSelectorModule] }); }
722
+ IconSelectorModule,
723
+ CockpitConfigurationComponent,
724
+ CockpitSetupStep1Component,
725
+ CockpitSetupStep2Component,
726
+ CockpitSetupStep3Component,
727
+ CockpitSetupStep4Component,
728
+ FeatureConfigComponent,
729
+ RootNodeConfigComponent,
730
+ HomeDashboardConfigComponent,
731
+ MiscConfigComponent] }); }
659
732
  }
660
733
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: CockpitConfigModule, decorators: [{
661
734
  type: NgModule,
662
735
  args: [{
663
- declarations: [
736
+ imports: [
737
+ CoreModule,
738
+ AssetSelectorModule,
739
+ PopoverModule,
740
+ TooltipModule,
741
+ EcosystemModule,
742
+ IconSelectorModule,
743
+ PluginLoadedPipe,
664
744
  CockpitConfigurationComponent,
665
745
  CockpitSetupStep1Component,
666
746
  CockpitSetupStep2Component,
@@ -672,15 +752,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
672
752
  MiscConfigComponent,
673
753
  CockpitSetupStepperButtonsComponent
674
754
  ],
675
- imports: [
676
- CoreModule,
677
- AssetSelectorModule,
678
- PopoverModule,
679
- TooltipModule,
680
- EcosystemModule,
681
- IconSelectorModule,
682
- PluginLoadedPipe
683
- ],
684
755
  providers: [
685
756
  CockpitConfigGuard,
686
757
  hookRoute({