@c8y/ngx-components 1022.34.0 → 1022.44.3
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.
- package/actility-device-registration/actility-device-registration.component.d.ts.map +1 -1
- package/actility-device-registration/actility-device-registration.service.d.ts.map +1 -1
- package/alarms/alarm-details.component.d.ts.map +1 -1
- package/alarms/alarm-info.component.d.ts.map +1 -1
- package/alarms/alarm-severity-to-icon-class.pipe.d.ts +9 -0
- package/alarms/alarm-severity-to-icon-class.pipe.d.ts.map +1 -0
- package/alarms/alarms-icon.component.d.ts.map +1 -1
- package/alarms/alarms-interval-refresh.component.d.ts.map +1 -1
- package/alarms/alarms-list.component.d.ts.map +1 -1
- package/alarms/alarms-view.service.d.ts.map +1 -1
- package/alarms/alarms.component.d.ts.map +1 -1
- package/alarms/alarms.helper.d.ts.map +1 -1
- package/alarms/alarms.model.d.ts.map +1 -1
- package/alarms/cockpit/index.d.ts.map +1 -1
- package/alarms/devicemanagement/index.d.ts.map +1 -1
- package/alarms/index.d.ts +1 -0
- package/alarms/index.d.ts.map +1 -1
- package/asset-properties/asset-properties.model.d.ts +77 -1
- package/asset-properties/asset-properties.model.d.ts.map +1 -1
- package/asset-properties/asset-properties.service.d.ts +17 -0
- package/asset-properties/asset-properties.service.d.ts.map +1 -1
- package/asset-properties/asset-property-list/asset-property-collapse-button-title.pipe.d.ts +14 -0
- package/asset-properties/asset-property-list/asset-property-collapse-button-title.pipe.d.ts.map +1 -0
- package/asset-properties/asset-property-list/asset-property-icon.pipe.d.ts +2 -1
- package/asset-properties/asset-property-list/asset-property-icon.pipe.d.ts.map +1 -1
- package/asset-properties/asset-property-list/asset-property-list.component.d.ts +52 -13
- package/asset-properties/asset-property-list/asset-property-list.component.d.ts.map +1 -1
- package/asset-properties/asset-property-list/asset-property-value.pipe.d.ts +7 -3
- package/asset-properties/asset-property-list/asset-property-value.pipe.d.ts.map +1 -1
- package/asset-properties/asset-property-list/tree-data-source.d.ts +1 -0
- package/asset-properties/asset-property-list/tree-data-source.d.ts.map +1 -1
- package/asset-properties/asset-property-selector-drawer/asset-property-selector-drawer.component.d.ts.map +1 -1
- package/asset-properties/computed-properties-config/computed-properties-config.component.d.ts +39 -0
- package/asset-properties/computed-properties-config/computed-properties-config.component.d.ts.map +1 -0
- package/asset-properties/computed-properties.service.d.ts +27 -0
- package/asset-properties/computed-properties.service.d.ts.map +1 -0
- package/asset-properties/custom-properties-drawer/custom-properties-drawer.component.d.ts +11 -6
- package/asset-properties/custom-properties-drawer/custom-properties-drawer.component.d.ts.map +1 -1
- package/asset-properties/custom-properties-drawer.service.d.ts +2 -1
- package/asset-properties/custom-properties-drawer.service.d.ts.map +1 -1
- package/asset-properties/index.d.ts +1 -0
- package/asset-properties/index.d.ts.map +1 -1
- package/assets-navigator/asset-node.d.ts.map +1 -1
- package/assets-navigator/asset-node.service.d.ts.map +1 -1
- package/assets-navigator/asset-selector/asset-selector-node.component.d.ts.map +1 -1
- package/assets-navigator/asset-selector/asset-selector.model.d.ts +1 -2
- package/assets-navigator/asset-selector/asset-selector.model.d.ts.map +1 -1
- package/assets-navigator/asset-selector/miller-view.component.d.ts +17 -5
- package/assets-navigator/asset-selector/miller-view.component.d.ts.map +1 -1
- package/assets-navigator/asset-selector/unassigned-devices-node.d.ts.map +1 -1
- package/assets-navigator/load-more-node.d.ts.map +1 -1
- package/auth-configuration/basic-settings/login-settings.component.d.ts.map +1 -1
- package/auth-configuration/basic-settings/session-configuration.component.d.ts.map +1 -1
- package/auth-configuration/factories/navigation.factory.d.ts.map +1 -1
- package/auth-configuration/factories/tabs.factory.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/sso-configuration.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-modal.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/signature-configuration.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/user-data-mapping.component.d.ts.map +1 -1
- package/binary-file-download/binary-file-download.service.d.ts.map +1 -1
- package/bookmarks/bookmarks.component.d.ts.map +1 -1
- package/bookmarks/bookmarks.service.d.ts.map +1 -1
- package/bookmarks/edit-bookmarks/edit-bookmarks.component.d.ts.map +1 -1
- package/branding/dark-theme/dark-theme-tab.factory.d.ts.map +1 -1
- package/branding/extra-css-branding-editor/extra-css-branding-editor-tab.factory.d.ts.map +1 -1
- package/branding/plain-branding-editor/plain-branding-editor-tab.factory.d.ts.map +1 -1
- package/branding/shared/lazy/branding-form/branding-form.component.d.ts.map +1 -1
- package/branding/shared/lazy/branding-import-modal/branding-import-modal.component.d.ts.map +1 -1
- package/branding/shared/lazy/edit-branding-router-outlet/edit-branding-router-outlet.component.d.ts.map +1 -1
- package/cockpit-config/cockpit-config.guard.d.ts.map +1 -1
- package/cockpit-config/cockpit-configuration.component.d.ts.map +1 -1
- package/computed-asset-properties/alarm-count/alarm-count-3-months-computed-property.d.ts +8 -0
- package/computed-asset-properties/alarm-count/alarm-count-3-months-computed-property.d.ts.map +1 -0
- package/computed-asset-properties/alarm-count/alarm-count-config.component.d.ts +26 -0
- package/computed-asset-properties/alarm-count/alarm-count-config.component.d.ts.map +1 -0
- package/computed-asset-properties/alarm-count/alarm-count-today-computed-property.d.ts +8 -0
- package/computed-asset-properties/alarm-count/alarm-count-today-computed-property.d.ts.map +1 -0
- package/computed-asset-properties/alarm-count/alarm-count-value.d.ts +17 -0
- package/computed-asset-properties/alarm-count/alarm-count-value.d.ts.map +1 -0
- package/computed-asset-properties/alarm-count/alarm-count.model.d.ts +6 -0
- package/computed-asset-properties/alarm-count/alarm-count.model.d.ts.map +1 -0
- package/computed-asset-properties/c8y-ngx-components-computed-asset-properties.d.ts.map +1 -0
- package/computed-asset-properties/child-count/child-assets-count-computed-property.d.ts +14 -0
- package/computed-asset-properties/child-count/child-assets-count-computed-property.d.ts.map +1 -0
- package/computed-asset-properties/child-count/child-count-value.d.ts +14 -0
- package/computed-asset-properties/child-count/child-count-value.d.ts.map +1 -0
- package/computed-asset-properties/child-count/child-devices-count-computed-property.d.ts +14 -0
- package/computed-asset-properties/child-count/child-devices-count-computed-property.d.ts.map +1 -0
- package/computed-asset-properties/common/realtime-value-base.d.ts +32 -0
- package/computed-asset-properties/common/realtime-value-base.d.ts.map +1 -0
- package/computed-asset-properties/common/realtime-value-handler.d.ts +19 -0
- package/computed-asset-properties/common/realtime-value-handler.d.ts.map +1 -0
- package/computed-asset-properties/configuration-snapshot/configuration-snapshot-computed-property.d.ts +7 -0
- package/computed-asset-properties/configuration-snapshot/configuration-snapshot-computed-property.d.ts.map +1 -0
- package/computed-asset-properties/configuration-snapshot/configuration-snapshot-config.component.d.ts +21 -0
- package/computed-asset-properties/configuration-snapshot/configuration-snapshot-config.component.d.ts.map +1 -0
- package/computed-asset-properties/configuration-snapshot/configuration-snapshot.model.d.ts +8 -0
- package/computed-asset-properties/configuration-snapshot/configuration-snapshot.model.d.ts.map +1 -0
- package/computed-asset-properties/event-count/event-count-3-months.d.ts +8 -0
- package/computed-asset-properties/event-count/event-count-3-months.d.ts.map +1 -0
- package/computed-asset-properties/event-count/event-count-config.component.d.ts +18 -0
- package/computed-asset-properties/event-count/event-count-config.component.d.ts.map +1 -0
- package/computed-asset-properties/event-count/event-count-today.d.ts +8 -0
- package/computed-asset-properties/event-count/event-count-today.d.ts.map +1 -0
- package/computed-asset-properties/event-count/event-count-value.d.ts +17 -0
- package/computed-asset-properties/event-count/event-count-value.d.ts.map +1 -0
- package/computed-asset-properties/event-count/event-count.model.d.ts +4 -0
- package/computed-asset-properties/event-count/event-count.model.d.ts.map +1 -0
- package/computed-asset-properties/index.d.ts +3 -0
- package/computed-asset-properties/index.d.ts.map +1 -0
- package/computed-asset-properties/last-device-message/last-device-message-computed-property.d.ts +3 -0
- package/computed-asset-properties/last-device-message/last-device-message-computed-property.d.ts.map +1 -0
- package/computed-asset-properties/last-device-message/last-device-message-value.d.ts +13 -0
- package/computed-asset-properties/last-device-message/last-device-message-value.d.ts.map +1 -0
- package/computed-asset-properties/last-measurement/last-measurement-computed-property.d.ts +8 -0
- package/computed-asset-properties/last-measurement/last-measurement-computed-property.d.ts.map +1 -0
- package/computed-asset-properties/last-measurement/last-measurement-config.component.d.ts +48 -0
- package/computed-asset-properties/last-measurement/last-measurement-config.component.d.ts.map +1 -0
- package/computed-asset-properties/last-measurement/last-measurement-value.d.ts +13 -0
- package/computed-asset-properties/last-measurement/last-measurement-value.d.ts.map +1 -0
- package/computed-asset-properties/last-measurement/last-measurement.model.d.ts +28 -0
- package/computed-asset-properties/last-measurement/last-measurement.model.d.ts.map +1 -0
- package/computed-asset-properties/strategies/alarm-count-strategy.d.ts +17 -0
- package/computed-asset-properties/strategies/alarm-count-strategy.d.ts.map +1 -0
- package/computed-asset-properties/strategies/child-count-strategy.d.ts +14 -0
- package/computed-asset-properties/strategies/child-count-strategy.d.ts.map +1 -0
- package/computed-asset-properties/strategies/count-strategy-base.d.ts +12 -0
- package/computed-asset-properties/strategies/count-strategy-base.d.ts.map +1 -0
- package/computed-asset-properties/strategies/event-count-strategy.d.ts +16 -0
- package/computed-asset-properties/strategies/event-count-strategy.d.ts.map +1 -0
- package/computed-asset-properties/strategies/last-device-message-strategy.d.ts +20 -0
- package/computed-asset-properties/strategies/last-device-message-strategy.d.ts.map +1 -0
- package/computed-asset-properties/strategies/last-measurement-strategy.d.ts +16 -0
- package/computed-asset-properties/strategies/last-measurement-strategy.d.ts.map +1 -0
- package/connectivity/abstract-connectivity-node.factory.d.ts.map +1 -1
- package/connectivity/actility/actility-tab.factory.d.ts.map +1 -1
- package/connectivity/sigfox/sigfox-tab.factory.d.ts.map +1 -1
- package/connectivity/sim/sim.module.d.ts.map +1 -1
- package/context-dashboard/cockpit-home-dashboard/cockpit-dashboard.component.d.ts.map +1 -1
- package/context-dashboard/cockpit-home-dashboard/cockpit-dashboard.model.d.ts.map +1 -1
- package/context-dashboard/cockpit-home-dashboard/cockpit-dashboard.module.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.component.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.model.d.ts +16 -0
- package/context-dashboard/context-dashboard.model.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.service.d.ts.map +1 -1
- package/context-dashboard/dashboard-detail.component.d.ts.map +1 -1
- package/context-dashboard/dashboard-detail.service.d.ts.map +1 -1
- package/context-dashboard/dashboard-details-tabs.factory.d.ts.map +1 -1
- package/context-dashboard/dashboard-settings/dashboard-general-settings.component.d.ts.map +1 -1
- package/context-dashboard/dashboard-settings/dashboard-version-history.component.d.ts.map +1 -1
- package/context-dashboard/dashboard-settings/typed-dashboard-settings.component.d.ts.map +1 -1
- package/context-dashboard/device-info-dashboard/device-info-dashboard.component.d.ts.map +1 -1
- package/context-dashboard/device-info-dashboard/device-info-dashboard.module.d.ts.map +1 -1
- package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.component.d.ts.map +1 -1
- package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.module.d.ts.map +1 -1
- package/context-dashboard/new-dashboard.guard.d.ts.map +1 -1
- package/context-dashboard/widget-config/appearance-settings.component.d.ts.map +1 -1
- package/context-dashboard/widget-config.service.d.ts +11 -1
- package/context-dashboard/widget-config.service.d.ts.map +1 -1
- package/core/action/action.service.d.ts +1 -1
- package/core/action-bar/action-bar.service.d.ts +1 -1
- package/core/authentication/simplified-auth.service.d.ts +1 -1
- package/core/authentication/simplified-auth.service.d.ts.map +1 -1
- package/core/breadcrumb/breadcrumb.service.d.ts +1 -1
- package/core/common/date.pipe.d.ts.map +1 -1
- package/core/common/extension-hooks.d.ts.map +1 -1
- package/core/common/options.service.d.ts +1 -1
- package/core/common/service-registry.service.d.ts +1 -1
- package/core/common/ui-state.service.d.ts +7 -7
- package/core/common/ui-state.service.d.ts.map +1 -1
- package/core/common/user-preferences/user-preferences.service.d.ts +4 -4
- package/core/common/user-preferences/user-preferences.service.d.ts.map +1 -1
- package/core/dashboard/widgets-dashboard.component.d.ts +1 -1
- package/core/dashboard/widgets-dashboard.component.d.ts.map +1 -1
- package/core/data-grid/action-controls-extension.service.d.ts +1 -1
- package/core/data-grid/filter-chip/filter-mapper.factory.d.ts +1 -1
- package/core/date-picker/date-picker.component.d.ts.map +1 -1
- package/core/docs/docs.models.d.ts +1 -1
- package/core/docs/docs.module.d.ts +1 -1
- package/core/docs/help-and-support-outlet/help-and-support-outlet.module.d.ts +1 -1
- package/core/docs/legal-notices-outlet/legal-notices-outlet.module.d.ts +1 -1
- package/core/docs/support-outlet/support-outlet.component.d.ts +4 -3
- package/core/docs/support-outlet/support-outlet.component.d.ts.map +1 -1
- package/core/docs/support-outlet/support-outlet.module.d.ts +1 -1
- package/core/drawer/drawer.service.d.ts +1 -1
- package/core/dynamic-component/dynamic-component.model.d.ts +18 -4
- package/core/dynamic-component/dynamic-component.model.d.ts.map +1 -1
- package/core/dynamic-forms/i18n/translate.extension.d.ts.map +1 -1
- package/core/feedback-form/feedback-form.component.d.ts +27 -0
- package/core/feedback-form/feedback-form.component.d.ts.map +1 -0
- package/core/feedback-form/feedback-form.model.d.ts +6 -0
- package/core/feedback-form/feedback-form.model.d.ts.map +1 -0
- package/core/feedback-form/index.d.ts +2 -0
- package/core/feedback-form/index.d.ts.map +1 -0
- package/core/i18n/gettext.d.ts +4 -1
- package/core/i18n/gettext.d.ts.map +1 -1
- package/core/i18n/pattern-messages.data.d.ts +61 -0
- package/core/i18n/pattern-messages.data.d.ts.map +1 -1
- package/core/i18n/patterns-message.hook.d.ts +1 -1
- package/core/index.d.ts +1 -0
- package/core/index.d.ts.map +1 -1
- package/core/modal/modal.service.d.ts +0 -1
- package/core/modal/modal.service.d.ts.map +1 -1
- package/core/navigator/navigator-bottom/navigator-bottom.module.d.ts +1 -1
- package/core/navigator/navigator-top/navigator-top.module.d.ts +1 -1
- package/core/navigator/navigator.module.d.ts +1 -1
- package/core/navigator/navigator.service.d.ts +1 -1
- package/core/plugins/index.d.ts +1 -0
- package/core/plugins/index.d.ts.map +1 -1
- package/core/plugins/plugins-injection-token.d.ts +14 -0
- package/core/plugins/plugins-injection-token.d.ts.map +1 -0
- package/core/plugins/plugins-loader.service.d.ts +7 -21
- package/core/plugins/plugins-loader.service.d.ts.map +1 -1
- package/core/plugins/plugins-resolve.service.d.ts +1 -0
- package/core/plugins/plugins-resolve.service.d.ts.map +1 -1
- package/core/preview-feature/preview-feature.component.d.ts.map +1 -1
- package/core/preview-feature/preview-feature.service.d.ts +1 -1
- package/core/provider-configuration/provider-configuration-hook.d.ts +1 -1
- package/core/query-param-handler/index.d.ts +1 -1
- package/core/query-param-handler/query-param-bottom-drawer.service.d.ts +1 -1
- package/core/query-param-handler/query-param-handler.service.d.ts +1 -1
- package/core/query-param-handler/query-param-modal-handler.service.d.ts +1 -1
- package/core/router/router.service.d.ts +1 -1
- package/core/search/search.service.d.ts +1 -1
- package/core/stepper/stepper.service.d.ts +1 -1
- package/core/tabs/tab.component.d.ts +2 -2
- package/core/tabs/tab.component.d.ts.map +1 -1
- package/core/tabs/tab.model.d.ts +2 -2
- package/core/tabs/tab.model.d.ts.map +1 -1
- package/core/tabs/tabs.service.d.ts +1 -1
- package/core/tabs/tabs.service.d.ts.map +1 -1
- package/core/ui-settings/ui-settings.module.d.ts +1 -1
- package/core/user/change-current-user-password.service.d.ts +10 -0
- package/core/user/change-current-user-password.service.d.ts.map +1 -0
- package/core/user/index.d.ts +1 -0
- package/core/user/index.d.ts.map +1 -1
- package/core/user/user-details-drawer/user-details-drawer.module.d.ts +1 -1
- package/core/user/user-menu.service.d.ts +1 -1
- package/core/user/user.module.d.ts +1 -1
- package/core/version/version.model.d.ts +1 -1
- package/core/version/version.module.d.ts +1 -1
- package/core/wizard/wizard.model.d.ts +1 -1
- package/dashboard-details-advanced-tab/advanced-tab.factory.d.ts.map +1 -1
- package/dashboard-details-advanced-tab/assign-widget-assets/assign-widget-asset-modal.component.d.ts.map +1 -1
- package/dashboard-details-advanced-tab/dashboard-json-editor/dashboard-json-editor.component.d.ts.map +1 -1
- package/dashboard-details-advanced-tab/dashboard-json-editor/import-export-widgets.service.d.ts.map +1 -1
- package/dashboard-manager/dashboard-manager-tabs.factory.d.ts.map +1 -1
- package/dashboard-manager/dashboard-manager.service.d.ts.map +1 -1
- package/dashboard-manager/devicemanagement/index.d.ts +1 -1
- package/dashboard-manager/type-dashboard-target-assets-grid/type-dashboard-target-assets-grid.component.d.ts.map +1 -1
- package/dashboard-manager/type-dashboard-target-assets-modal/type-dashboard-target-assets-modal.component.d.ts.map +1 -1
- package/dashboard-manager/type-dashboards-list/device-type-value.grid-column.d.ts.map +1 -1
- package/dashboard-manager/type-dashboards-list/type-dashboards-list.component.d.ts.map +1 -1
- package/data-grid-columns/asset-type/asset-type-grid-column.d.ts.map +1 -1
- package/data-grid-columns/asset-type/asset-type.cell-renderer.component.d.ts.map +1 -1
- package/datapoint-explorer/datapoint-explorer-navigation-factory.d.ts.map +1 -1
- package/datapoint-explorer/devicemanagement/index.d.ts +3 -0
- package/datapoint-explorer/devicemanagement/index.d.ts.map +1 -1
- package/datapoint-explorer/view/configuration/workspace-configuration.component.d.ts +4 -2
- package/datapoint-explorer/view/configuration/workspace-configuration.component.d.ts.map +1 -1
- package/datapoint-explorer/view/create-new-report-modal/create-new-report-modal.component.d.ts.map +1 -1
- package/datapoint-explorer/view/datapoint-explorer.component.d.ts +7 -3
- package/datapoint-explorer/view/datapoint-explorer.component.d.ts.map +1 -1
- package/datapoint-explorer/view/datapoint-explorer.model.d.ts +1 -0
- package/datapoint-explorer/view/datapoint-explorer.model.d.ts.map +1 -1
- package/datapoint-explorer/view/index.d.ts +3 -0
- package/datapoint-explorer/view/index.d.ts.map +1 -1
- package/datapoint-explorer/view/send-as-widget-to-dashboard-modal/send-as-widget-to-dashboard-modal.component.d.ts.map +1 -1
- package/datapoint-explorer/view/send-as-widget-to-report-modal/send-as-widget-to-report-modal.component.d.ts.map +1 -1
- package/datapoint-library/datapoint-library.module.d.ts.map +1 -1
- package/datapoint-library/details/datapoint-library-details.component.d.ts +1 -2
- package/datapoint-library/details/datapoint-library-details.component.d.ts.map +1 -1
- package/datapoint-library/list/datapoint-library-list.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form-validation.service.d.ts.map +1 -1
- package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts.map +1 -1
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-fetching.service.d.ts.map +1 -1
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.service.d.ts.map +1 -1
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-time-range/datapoints-exports-selector-time-range.component.d.ts.map +1 -1
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-modal.component.d.ts.map +1 -1
- package/datapoints-export-selector/datapoints-export-selector.model.d.ts.map +1 -1
- package/default-subscriptions/default-subscriptions-navigation.factory.d.ts.map +1 -1
- package/default-subscriptions/default-subscriptions.component.d.ts.map +1 -1
- package/device-grid/columns/alarms.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/alarms.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/group.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/imei.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/model.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/name.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/registration-date.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/serial-number.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/status.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/system-id.device-grid-column.d.ts.map +1 -1
- package/device-grid/columns/type.device-grid-column.d.ts.map +1 -1
- package/device-grid/device-grid.component.d.ts.map +1 -1
- package/device-grid/device-grid.service.d.ts.map +1 -1
- package/device-list/add-smart-group.component.d.ts.map +1 -1
- package/device-list/device-list-navigation.factory.d.ts.map +1 -1
- package/device-list/devices.breadcrumb-factory.d.ts.map +1 -1
- package/device-map/device-map-navigation.factory.d.ts.map +1 -1
- package/device-profile/add-device-profile.component.d.ts.map +1 -1
- package/device-profile/device-profile-list.component.d.ts.map +1 -1
- package/device-profile/device-profile-navigation.factory.d.ts.map +1 -1
- package/device-profile/device-profile.component.d.ts.map +1 -1
- package/device-profile/device-profile.service.d.ts.map +1 -1
- package/device-profile/device-tab-profile/device-tab-profile.component.d.ts.map +1 -1
- package/device-profile/select-configuration-modal.component.d.ts.map +1 -1
- package/device-protocols/device-protocols.guard.d.ts.map +1 -1
- package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts.map +1 -1
- package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts.map +1 -1
- package/device-shell/device-shell.module.d.ts.map +1 -1
- package/device-shell/shared/device-shell.service.d.ts.map +1 -1
- package/device-shell/shell/shell.component.d.ts.map +1 -1
- package/diagnostics/diagnostics.module.d.ts.map +1 -1
- package/diagnostics/diagnostics.service.d.ts.map +1 -1
- package/echart/charts.component.d.ts +11 -2
- package/echart/charts.component.d.ts.map +1 -1
- package/echart/index.d.ts +1 -0
- package/echart/index.d.ts.map +1 -1
- package/echart/models/chart.model.d.ts +5 -0
- package/echart/models/chart.model.d.ts.map +1 -1
- package/echart/models/datapoints-graph-widget.model.d.ts +2 -0
- package/echart/models/datapoints-graph-widget.model.d.ts.map +1 -1
- package/echart/select-aggregated-datapoint/select-aggregated-datapoint.component.d.ts +18 -0
- package/echart/select-aggregated-datapoint/select-aggregated-datapoint.component.d.ts.map +1 -0
- package/echart/services/chart-helpers.service.d.ts +4 -0
- package/echart/services/chart-helpers.service.d.ts.map +1 -1
- package/echart/services/echarts-options.service.d.ts +4 -5
- package/echart/services/echarts-options.service.d.ts.map +1 -1
- package/ecosystem/application-plugins/application-plugins.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/application-plugins.module.d.ts.map +1 -1
- package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/only-latest-filter/only-latest-filter.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/orphaned-status-cell-renderer.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/plugin-list.service.d.ts.map +1 -1
- package/ecosystem/application-plugins/update-plugin-of-app/update-plugin-of-app.component.d.ts.map +1 -1
- package/ecosystem/application-properties/application-properties.component.d.ts.map +1 -1
- package/ecosystem/application-properties/subscription-modal/subscription-modal.component.d.ts.map +1 -1
- package/ecosystem/ecosystem-tabs.factory.d.ts.map +1 -1
- package/ecosystem/license-confirm/license-confirm-modal.component.d.ts.map +1 -1
- package/ecosystem/license-confirm/license-view.component.d.ts.map +1 -1
- package/ecosystem/microservices/add-microservice.component.d.ts.map +1 -1
- package/ecosystem/packages/add-package.component.d.ts.map +1 -1
- package/ecosystem/packages/deploy-application/deploy-application.component.d.ts.map +1 -1
- package/ecosystem/packages/package-list/packages-list.component.d.ts.map +1 -1
- package/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.d.ts.map +1 -1
- package/ecosystem/packages/package-versions/packages-versions.component.d.ts.map +1 -1
- package/ecosystem/plugin-setup-stepper/plugin-setup-stepper.module.d.ts.map +1 -1
- package/ecosystem/shared/add-application.component.d.ts.map +1 -1
- package/ecosystem/shared/application-card.component.d.ts.map +1 -1
- package/ecosystem/shared/archived-filter/archived-filter.component.d.ts.map +1 -1
- package/ecosystem/shared/ecosystem.constants.d.ts.map +1 -1
- package/ecosystem/shared/ecosystem.service.d.ts.map +1 -1
- package/ecosystem/shared/package-availability.service.d.ts.map +1 -1
- package/ecosystem/shared/package-version-select/package-version-select.component.d.ts.map +1 -1
- package/ecosystem/shared/upload-archive.component.d.ts.map +1 -1
- package/editor/editor.component.d.ts +15 -0
- package/editor/editor.component.d.ts.map +1 -1
- package/exports/index.d.ts +1 -1
- package/exports/index.d.ts.map +1 -1
- package/exports/list/exports-grid.service.d.ts.map +1 -1
- package/exports/list/exports-list/exports-list.component.d.ts.map +1 -1
- package/fesm2022/c8y-ngx-components-actility-device-registration.mjs +2 -1
- package/fesm2022/c8y-ngx-components-actility-device-registration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +8 -7
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarms-cockpit.mjs +2 -1
- package/fesm2022/c8y-ngx-components-alarms-cockpit.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarms-devicemanagement.mjs +2 -1
- package/fesm2022/c8y-ngx-components-alarms-devicemanagement.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarms.mjs +40 -2
- package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-asset-properties.mjs +608 -97
- package/fesm2022/c8y-ngx-components-asset-properties.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-asset-property-grid.component-CRnyUbyz.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-assets-navigator.mjs +70 -23
- package/fesm2022/c8y-ngx-components-assets-navigator.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-auth-configuration.mjs +2 -1
- package/fesm2022/c8y-ngx-components-auth-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-binary-file-download.mjs +2 -1
- package/fesm2022/c8y-ngx-components-binary-file-download.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-bookmarks.mjs +2 -1
- package/fesm2022/c8y-ngx-components-bookmarks.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-branding-dark-theme.mjs +2 -1
- package/fesm2022/c8y-ngx-components-branding-dark-theme.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-branding-extra-css-branding-editor.mjs +3 -3
- package/fesm2022/c8y-ngx-components-branding-extra-css-branding-editor.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-branding-plain-branding-editor.mjs +2 -1
- package/fesm2022/c8y-ngx-components-branding-plain-branding-editor.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs +22 -12
- package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-child-devices.mjs +2 -1
- package/fesm2022/c8y-ngx-components-child-devices.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-cockpit-config.mjs +2 -1
- package/fesm2022/c8y-ngx-components-cockpit-config.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-computed-asset-properties-alarm-count-config.component-BOpIFCYh.mjs +68 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties-alarm-count-config.component-BOpIFCYh.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-D8otkLI8.mjs +73 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties-configuration-snapshot-config.component-D8otkLI8.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties-event-count-config.component-AVm6qa9k.mjs +44 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties-event-count-config.component-AVm6qa9k.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties-last-measurement-config.component-CtUoKGuU.mjs +91 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties-last-measurement-config.component-CtUoKGuU.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs +643 -0
- package/fesm2022/c8y-ngx-components-computed-asset-properties.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-connectivity.mjs +2 -1
- package/fesm2022/c8y-ngx-components-connectivity.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard-cockpit-home-dashboard.mjs +2 -1
- package/fesm2022/c8y-ngx-components-context-dashboard-cockpit-home-dashboard.mjs.map +1 -1
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-DjlpSztw.mjs → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BkcNSexF.mjs} +3 -2
- package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BkcNSexF.mjs.map +1 -0
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-B2zLhv0X.mjs → c8y-ngx-components-context-dashboard-dashboard-version-history.component-D9W68e7h.mjs} +3 -2
- package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-version-history.component-D9W68e7h.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs +43 -10
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
- package/fesm2022/{c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-CwfVxTSx.mjs → c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-D0lATUjO.mjs} +12 -8
- package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-D0lATUjO.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab.mjs +4 -3
- package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-dashboard-manager.mjs +2 -1
- package/fesm2022/c8y-ngx-components-dashboard-manager.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-data-broker.mjs +2 -1
- package/fesm2022/c8y-ngx-components-data-broker.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-data-grid-columns-asset-type.mjs +2 -1
- package/fesm2022/c8y-ngx-components-data-grid-columns-asset-type.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-data-grid-columns.mjs +2 -1
- package/fesm2022/c8y-ngx-components-data-grid-columns.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-explorer-devicemanagement.mjs +38 -9
- package/fesm2022/c8y-ngx-components-datapoint-explorer-devicemanagement.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs +61 -46
- package/fesm2022/c8y-ngx-components-datapoint-explorer-view.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-explorer.mjs +2 -1
- package/fesm2022/c8y-ngx-components-datapoint-explorer.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs +2 -1
- package/fesm2022/c8y-ngx-components-datapoint-library-details.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs +2 -1
- package/fesm2022/c8y-ngx-components-datapoint-library-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-library.mjs +2 -1
- package/fesm2022/c8y-ngx-components-datapoint-library.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +2 -1
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +2 -1
- package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-default-subscriptions.mjs +2 -1
- package/fesm2022/c8y-ngx-components-default-subscriptions.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-grid.mjs +3 -3
- package/fesm2022/c8y-ngx-components-device-grid.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-list.mjs +2 -1
- package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-map.mjs +2 -1
- package/fesm2022/c8y-ngx-components-device-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-profile.mjs +2 -1
- package/fesm2022/c8y-ngx-components-device-profile.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-protocol-object-mappings.mjs +3 -2
- package/fesm2022/c8y-ngx-components-device-protocol-object-mappings.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-protocols.mjs +2 -1
- package/fesm2022/c8y-ngx-components-device-protocols.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs +2 -1
- package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-shell.mjs +2 -1
- package/fesm2022/c8y-ngx-components-device-shell.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-diagnostics.mjs +2 -1
- package/fesm2022/c8y-ngx-components-diagnostics.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-echart-models.mjs +9 -2
- package/fesm2022/c8y-ngx-components-echart-models.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-echart.mjs +319 -140
- package/fesm2022/c8y-ngx-components-echart.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs +2 -1
- package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs +2 -1
- package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs +2 -1
- package/fesm2022/c8y-ngx-components-ecosystem-plugin-setup-stepper.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +2 -1
- package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem.mjs +2 -1
- package/fesm2022/c8y-ngx-components-ecosystem.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-editor.mjs +15 -0
- package/fesm2022/c8y-ngx-components-editor.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-events.mjs +1 -1
- package/fesm2022/c8y-ngx-components-events.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-exports-list.mjs +2 -1
- package/fesm2022/c8y-ngx-components-exports-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-exports.mjs +2 -1
- package/fesm2022/c8y-ngx-components-exports.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-file-preview.mjs +2 -1
- package/fesm2022/c8y-ngx-components-file-preview.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-files-repository.mjs +2 -1
- package/fesm2022/c8y-ngx-components-files-repository.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-icon-selector.mjs +2 -1
- package/fesm2022/c8y-ngx-components-icon-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-location.mjs +2 -1
- package/fesm2022/c8y-ngx-components-location.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs +2 -1
- package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-map.mjs +2 -1
- package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-messaging-management.mjs +2 -1
- package/fesm2022/c8y-ngx-components-messaging-management.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-single-operations-list.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-single-operations-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-grid-columns.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-grid-columns.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-operations-list.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-operations-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-shared.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs +4 -4
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs +4 -4
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-device-profile.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs +4 -4
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-firmware.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs +4 -4
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations.mjs +2 -1
- package/fesm2022/c8y-ngx-components-operations.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-pending-mo-request.mjs +2 -1
- package/fesm2022/c8y-ngx-components-pending-mo-request.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-platform-configuration.mjs +2 -1
- package/fesm2022/c8y-ngx-components-platform-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +2 -1
- package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-protocol-opcua-mappings.mjs +1 -1
- package/fesm2022/c8y-ngx-components-protocol-opcua-mappings.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-protocol-opcua.mjs +2 -1
- package/fesm2022/c8y-ngx-components-protocol-opcua.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-register-device.mjs +2 -1
- package/fesm2022/c8y-ngx-components-register-device.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-remote-access-configurations.mjs +3 -3
- package/fesm2022/c8y-ngx-components-remote-access-configurations.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-remote-access-passthrough.mjs +2 -1
- package/fesm2022/c8y-ngx-components-remote-access-passthrough.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-remote-access-shared.mjs +2 -1
- package/fesm2022/c8y-ngx-components-remote-access-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-remote-access-ssh.mjs +2 -1
- package/fesm2022/c8y-ngx-components-remote-access-ssh.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-remote-access-telnet.mjs +2 -1
- package/fesm2022/c8y-ngx-components-remote-access-telnet.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs +3 -3
- package/fesm2022/c8y-ngx-components-remote-access-vnc-vnc-viewer.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-remote-access-vnc.mjs +2 -1
- package/fesm2022/c8y-ngx-components-remote-access-vnc.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-replace-device-replace-device-wizard.mjs +2 -1
- package/fesm2022/c8y-ngx-components-replace-device-replace-device-wizard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-replace-device.mjs +2 -1
- package/fesm2022/c8y-ngx-components-replace-device.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-report-dashboard.mjs +2 -1
- package/fesm2022/c8y-ngx-components-report-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-reports.mjs +2 -1
- package/fesm2022/c8y-ngx-components-reports.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-configuration.mjs +2 -1
- package/fesm2022/c8y-ngx-components-repository-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-firmware.mjs +2 -1
- package/fesm2022/c8y-ngx-components-repository-firmware.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-shared.mjs +3 -2
- package/fesm2022/c8y-ngx-components-repository-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-software.mjs +2 -1
- package/fesm2022/c8y-ngx-components-repository-software.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-search.mjs +2 -1
- package/fesm2022/c8y-ngx-components-search.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs +2 -1
- package/fesm2022/c8y-ngx-components-sensor-phone-sensor-phone-modal.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sensor-phone.mjs +3 -2
- package/fesm2022/c8y-ngx-components-sensor-phone.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-services-service-command-tab.mjs +2 -1
- package/fesm2022/c8y-ngx-components-services-service-command-tab.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-services-shared.mjs +1 -1
- package/fesm2022/c8y-ngx-components-services-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-services.mjs +2 -1
- package/fesm2022/c8y-ngx-components-services.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs +2 -1
- package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sms-gateway.mjs +3 -2
- package/fesm2022/c8y-ngx-components-sms-gateway.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sub-assets.mjs +2 -1
- package/fesm2022/c8y-ngx-components-sub-assets.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-tenants.mjs +37 -37
- package/fesm2022/c8y-ngx-components-tenants.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-tracking.mjs +2 -1
- package/fesm2022/c8y-ngx-components-tracking.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs +5 -5
- package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-trusted-certificates.mjs +2 -1
- package/fesm2022/c8y-ngx-components-trusted-certificates.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-upgrade.mjs +10 -3
- package/fesm2022/c8y-ngx-components-upgrade.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-user-roles.mjs +2 -1
- package/fesm2022/c8y-ngx-components-user-roles.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-applications.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-applications.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-asset-notes.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-asset-notes.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-legacy-welcome.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-cockpit-welcome.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-graph.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-device-control-message.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-device-control-message.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-device-management-welcome.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-help-and-service.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-help-and-service.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs +3 -3
- package/fesm2022/c8y-ngx-components-widgets-definitions-html-widget.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-image.mjs +3 -6
- package/fesm2022/c8y-ngx-components-widgets-definitions-image.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-info-gauge.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-info-gauge.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-kpi.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-kpi.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-linear-gauge.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-linear-gauge.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-map.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-markdown.mjs +2 -2
- package/fesm2022/c8y-ngx-components-widgets-definitions-markdown.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-quick-links.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-quick-links.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-radial-gauge.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-radial-gauge.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-silo.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-silo.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-three-d-rotation.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-asset-notes.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-asset-notes.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs +9 -6
- package/fesm2022/c8y-ngx-components-widgets-implementations-cockpit-welcome.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs +15 -7
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-graph.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-device-control-message.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-device-control-message.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-help-and-service-widget.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs +13 -8
- package/fesm2022/c8y-ngx-components-widgets-implementations-html-widget.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-image.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-image.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-info-gauge.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-linear-gauge.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-markdown.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-markdown.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-quick-links.mjs +2 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-quick-links.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-import-export-config.mjs +3 -10
- package/fesm2022/c8y-ngx-components-widgets-import-export-config.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components.mjs +694 -504
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/file-preview/file-preview.component.d.ts.map +1 -1
- package/files-repository/files-repository-navigation.factory.d.ts.map +1 -1
- package/files-repository/files-repository-upload.component.d.ts.map +1 -1
- package/files-repository/files-repository.component.d.ts.map +1 -1
- package/files-repository/files-repository.service.d.ts +1 -2
- package/files-repository/files-repository.service.d.ts.map +1 -1
- package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts.map +1 -1
- package/icon-selector/icon-selector.component.d.ts.map +1 -1
- package/locales/de.po +138 -12
- package/locales/es.po +138 -12
- package/locales/fr.po +138 -12
- package/locales/ja_JP.po +132 -12
- package/locales/ko.po +137 -12
- package/locales/locales.pot +103 -12
- package/locales/nl.po +138 -12
- package/locales/pl.po +138 -12
- package/locales/pt_BR.po +138 -12
- package/locales/zh_CN.po +137 -12
- package/locales/zh_TW.po +137 -12
- package/location/location-tab.factory.d.ts.map +1 -1
- package/location/location.component.d.ts.map +1 -1
- package/loriot-device-registration/loriot-device-registration.component.d.ts.map +1 -1
- package/loriot-device-registration/loriot-provider.service.d.ts.map +1 -1
- package/map/map.component.d.ts.map +1 -1
- package/messaging-management/messaging/namespace-list/namespace-item/namespace-item-card/namespace-item-card.component.d.ts.map +1 -1
- package/messaging-management/messaging/shared/usage/usage.component.d.ts.map +1 -1
- package/messaging-management/messaging/topic/topic-list-view.component.d.ts.map +1 -1
- package/messaging-management/messaging/topic/topic-subscribers-view/topic-subscribers-data-grid.service.d.ts.map +1 -1
- package/messaging-management/messaging/topic/topic-subscribers-view/topic-subscribers-view.component.d.ts.map +1 -1
- package/messaging-management/messaging/topic/topics-data-grid.service.d.ts.map +1 -1
- package/messaging-management/navigator/messaging-navigator-factory.d.ts.map +1 -1
- package/messaging-management/navigator/topic-details-tab.factory.d.ts.map +1 -1
- package/operations/bulk-operation-list-item/bulk-operation-list-item.component.d.ts.map +1 -1
- package/operations/bulk-operation-list-item/modals/bulk-operations-reschedule-modal.component.d.ts.map +1 -1
- package/operations/bulk-operation-scheduler/operation-scheduler.component.d.ts.map +1 -1
- package/operations/bulk-operation-stepper/bulk-operation-stepper.component.d.ts.map +1 -1
- package/operations/bulk-single-operations-list/single-operation-item.component.d.ts.map +1 -1
- package/operations/bulk-single-operations-list/single-operations-list.component.d.ts.map +1 -1
- package/operations/factories/bulk-operations-tab.factory.d.ts.map +1 -1
- package/operations/grid-columns/creation-time.grid-column.d.ts.map +1 -1
- package/operations/grid-columns/device.grid-column.d.ts.map +1 -1
- package/operations/grid-columns/failure-reason.grid-column.d.ts.map +1 -1
- package/operations/grid-columns/status.grid-column.d.ts.map +1 -1
- package/operations/operations-list/device-control.feature.d.ts.map +1 -1
- package/operations/operations-list/operations-list-item.component.d.ts.map +1 -1
- package/operations/operations-list/operations-list.component.d.ts.map +1 -1
- package/operations/operations-list/single-operations-tab.factory.d.ts.map +1 -1
- package/operations/operations-list-item-details/operation-details-tabs.component.d.ts.map +1 -1
- package/operations/shared/nav.factory.d.ts.map +1 -1
- package/operations/shared/operations.service.d.ts.map +1 -1
- package/operations/stepper-bulk-type-configuration/stepper-bulk-type-configuration.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-device-profile/stepper-bulk-type-device-profile.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-firmware/stepper-bulk-type-firmware.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-software/select-software-step.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-software/stepper-bulk-type-software.component.d.ts.map +1 -1
- package/package.json +1 -1
- package/pending-mo-request/pending-mo-request-interceptor.d.ts.map +1 -1
- package/pending-mo-request/pending-mo-request.service.d.ts.map +1 -1
- package/platform-configuration/platform-configuration-form-provider.service.d.ts.map +1 -1
- package/protocol-lpwan/lpwan-protocol.module.d.ts.map +1 -1
- package/protocol-lpwan/lpwan-set-connections.component.d.ts.map +1 -1
- package/protocol-lpwan/lpwan-set-device-protocol.component.d.ts.map +1 -1
- package/protocol-lpwan/multiple-lns-connectors/actility-multiple-lns-connector.component.d.ts.map +1 -1
- package/protocol-lpwan/multiple-lns-connectors/connection-info-with-download-csv.component.d.ts.map +1 -1
- package/protocol-lpwan/multiple-lns-connectors/loriot/loriot-multiple-lns-connector.component.d.ts.map +1 -1
- package/protocol-lpwan/multiple-lns-connectors/no-connections-found.component.d.ts.map +1 -1
- package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-address-space.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-device-protocol-detail.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-server-config.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-servers.component.d.ts.map +1 -1
- package/register-device/bulk/bulk-device-registration-modal.component.d.ts.map +1 -1
- package/register-device/device-registration-view.component.d.ts.map +1 -1
- package/register-device/extensible/base-extensible-device-registration.service.d.ts.map +1 -1
- package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts.map +1 -1
- package/register-device/extensible/bulk/extensible-bulk-device-registration.service.d.ts.map +1 -1
- package/register-device/extensible/single/extensible-device-registration-modal.component.d.ts.map +1 -1
- package/register-device/extensible/single/extensible-device-registration-stepper.component.d.ts.map +1 -1
- package/register-device/extensible/single/extensible-device-registration.service.d.ts.map +1 -1
- package/register-device/general/general-device-registration.component.d.ts.map +1 -1
- package/register-device/register-device-navigation.factory.d.ts.map +1 -1
- package/register-device/register-device.service.d.ts.map +1 -1
- package/remote-access/configurations/remote-access-configuration-list/remote-access-configuration-list.component.d.ts.map +1 -1
- package/remote-access/configurations/remote-access-pick-protocol-modal/remote-access-pick-protocol-modal.component.d.ts.map +1 -1
- package/remote-access/passthrough/index.d.ts +1 -1
- package/remote-access/passthrough/index.d.ts.map +1 -1
- package/remote-access/shared/remote-access-basic-endpoint-modal/remote-access-basic-endpoint-modal.component.d.ts.map +1 -1
- package/remote-access/ssh/index.d.ts.map +1 -1
- package/remote-access/telnet/index.d.ts.map +1 -1
- package/remote-access/vnc/index.d.ts.map +1 -1
- package/replace-device/replace-device-grid-action.factory.d.ts.map +1 -1
- package/replace-device/replace-device-wizard/replace-device-wizard.component.d.ts.map +1 -1
- package/replace-device/replace-device-wizard/replace-device-wizard.service.d.ts.map +1 -1
- package/replace-device/replace-device.service.d.ts.map +1 -1
- package/report-dashboard/report-dashboard-list.component.d.ts.map +1 -1
- package/report-dashboard/report-dashboard-navigation.factory.d.ts.map +1 -1
- package/reports/export-schedules.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/configuration-repository-device-tab.module.d.ts.map +1 -1
- package/repository/configuration/device-tab/save-to-repository.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/text-based-configuration.component.d.ts.map +1 -1
- package/repository/configuration/list/configuration-detail.component.d.ts.map +1 -1
- package/repository/configuration/list/configuration-list.component.d.ts.map +1 -1
- package/repository/configuration/list/configuration-repository-navigation-factory.d.ts.map +1 -1
- package/repository/firmware/device-tab/firmware-device-tab.component.d.ts.map +1 -1
- package/repository/firmware/device-tab/firmware-repository-device-tab.module.d.ts.map +1 -1
- package/repository/firmware/list/add-firmware-modal.component.d.ts.map +1 -1
- package/repository/firmware/list/add-firmware-patch-modal.component.d.ts.map +1 -1
- package/repository/firmware/list/firmware-details.component.d.ts.map +1 -1
- package/repository/firmware/list/firmware-list.component.d.ts.map +1 -1
- package/repository/firmware/list/firmware-repository-navigation-factory.d.ts.map +1 -1
- package/repository/shared/columns/description.grid-column.d.ts.map +1 -1
- package/repository/shared/columns/device-type.grid-column.d.ts.map +1 -1
- package/repository/shared/columns/file.grid-column.d.ts.map +1 -1
- package/repository/shared/columns/name.grid-column.d.ts.map +1 -1
- package/repository/shared/columns/type.filtering-form-renderer.component.d.ts.map +1 -1
- package/repository/shared/columns/type.grid-column.d.ts.map +1 -1
- package/repository/shared/columns/versions.grid-column.d.ts.map +1 -1
- package/repository/shared/repository.service.d.ts.map +1 -1
- package/repository/shared/select-modal/repository-select-modal.component.d.ts +1 -1
- package/repository/shared/select-modal/repository-select-modal.component.d.ts.map +1 -1
- package/repository/shared/software-type/software-type.component.d.ts.map +1 -1
- package/repository/software/device-tab/installed-software.component.d.ts.map +1 -1
- package/repository/software/device-tab/software-repository-device-tab.module.d.ts.map +1 -1
- package/repository/software/list/add-software-modal.component.d.ts.map +1 -1
- package/repository/software/list/software-details.component.d.ts.map +1 -1
- package/repository/software/list/software-list.component.d.ts.map +1 -1
- package/repository/software/list/software-repository-navigation-factory.d.ts.map +1 -1
- package/search/columns/asset-type-search-grid-column.d.ts.map +1 -1
- package/search/search-grid.component.d.ts.map +1 -1
- package/search/search-results.component.d.ts.map +1 -1
- package/sensor-phone/connect-smartphone.factory.d.ts.map +1 -1
- package/sensor-phone/sensor-phone-modal/sensor-phone-modal.component.d.ts.map +1 -1
- package/sensor-phone/sensor-phone-modal/sensor-phone.service.d.ts.map +1 -1
- package/services/service-command-tab/service-command.feature.d.ts.map +1 -1
- package/services/services-device-tab/columns/last-updated-date.device-grid-column.d.ts.map +1 -1
- package/services/services-device-tab/columns/name.grid-column.d.ts.map +1 -1
- package/services/services-device-tab/columns/service-type.grid-column.d.ts.map +1 -1
- package/services/services-device-tab/columns/status.grid-column.d.ts.map +1 -1
- package/services/services-device-tab/services-device-tab.component.d.ts.map +1 -1
- package/services/services-device-tab/services-device-tab.module.d.ts.map +1 -1
- package/services/services-device-tab/services.breadcrumb-factory.d.ts.map +1 -1
- package/services/shared/service-command.service.d.ts.map +1 -1
- package/services/status-options/status-options.model.d.ts.map +1 -1
- package/sigfox-device-registration/sigfox-device-registration.component.d.ts.map +1 -1
- package/sigfox-device-registration/sigfox-provider.service.d.ts.map +1 -1
- package/sms-gateway/sms-gateway.module.d.ts.map +1 -1
- package/sub-assets/add-group/add-group.component.d.ts.map +1 -1
- package/sub-assets/asset-properties-item.component.d.ts.map +1 -1
- package/sub-assets/asset-properties.component.d.ts.map +1 -1
- package/sub-assets/assign-devices/assign-child-devices.component.d.ts.map +1 -1
- package/sub-assets/assign-devices/assign-devices.component.d.ts.map +1 -1
- package/sub-assets/delete-assets-modal/delete-assets-modal.component.d.ts.map +1 -1
- package/sub-assets/group-info.component.d.ts.map +1 -1
- package/sub-assets/sub-assets-grid.component.d.ts.map +1 -1
- package/sub-assets/sub-assets.module.d.ts.map +1 -1
- package/sub-assets/sub-assets.service.d.ts.map +1 -1
- package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts.map +1 -1
- package/tenants/custom-properties/custom-properties.component.d.ts.map +1 -1
- package/tenants/tenant-form/tenant-form.component.d.ts.map +1 -1
- package/tenants/tenant-limits/tenant-limits.component.d.ts.map +1 -1
- package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts.map +1 -1
- package/tenants/tenant-list/tenant-list.component.d.ts.map +1 -1
- package/tenants/tenants-navigation.factory.d.ts.map +1 -1
- package/tenants/tenants.module.d.ts.map +1 -1
- package/tracking/tracking.feature.d.ts.map +1 -1
- package/translation-editor/lazy/translation-editor/translation-editor.component.d.ts.map +1 -1
- package/trusted-certificates/crl/crl-check-settings.component.d.ts.map +1 -1
- package/trusted-certificates/crl/crl-settings.component.d.ts.map +1 -1
- package/trusted-certificates/factories/tabs.factory.d.ts.map +1 -1
- package/trusted-certificates/factories/trusted-certificates-navigation.factory.d.ts.map +1 -1
- package/trusted-certificates/list/add-trusted-certificate.component.d.ts.map +1 -1
- package/trusted-certificates/list/trusted-certificate-list.component.d.ts.map +1 -1
- package/upgrade/auth-bridge.service.d.ts.map +1 -1
- package/upgrade/bridge.service.d.ts.map +1 -1
- package/upgrade/ng1/downgraded.services.d.ts +1 -0
- package/upgrade/ng1/downgraded.services.d.ts.map +1 -1
- package/upgrade/ng1/index.d.ts.map +1 -1
- package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts.map +1 -1
- package/widgets/cockpit/index.d.ts +4 -4
- package/widgets/definitions/alarms/alarm-list/index.d.ts +1 -1
- package/widgets/definitions/alarms/alarm-list/index.d.ts.map +1 -1
- package/widgets/definitions/alarms/all-critical-alarms/index.d.ts +1 -1
- package/widgets/definitions/alarms/all-critical-alarms/index.d.ts.map +1 -1
- package/widgets/definitions/alarms/recent-alarms/index.d.ts +1 -1
- package/widgets/definitions/alarms/recent-alarms/index.d.ts.map +1 -1
- package/widgets/definitions/applications/index.d.ts +1 -1
- package/widgets/definitions/applications/index.d.ts.map +1 -1
- package/widgets/definitions/asset-notes/index.d.ts +1 -1
- package/widgets/definitions/asset-notes/index.d.ts.map +1 -1
- package/widgets/definitions/cockpit-legacy-welcome/index.d.ts +1 -1
- package/widgets/definitions/cockpit-legacy-welcome/index.d.ts.map +1 -1
- package/widgets/definitions/cockpit-welcome/index.d.ts +1 -1
- package/widgets/definitions/cockpit-welcome/index.d.ts.map +1 -1
- package/widgets/definitions/datapoints-graph/datapoint-graph-widget-factory.d.ts.map +1 -1
- package/widgets/definitions/datapoints-graph/index.d.ts +1 -1
- package/widgets/definitions/datapoints-table/index.d.ts +1 -1
- package/widgets/definitions/datapoints-table/index.d.ts.map +1 -1
- package/widgets/definitions/device-control-message/index.d.ts +1 -1
- package/widgets/definitions/device-control-message/index.d.ts.map +1 -1
- package/widgets/definitions/help-and-service/index.d.ts +1 -1
- package/widgets/definitions/help-and-service/index.d.ts.map +1 -1
- package/widgets/definitions/html-widget/html-widget.factory.d.ts.map +1 -1
- package/widgets/definitions/html-widget/index.d.ts +1 -1
- package/widgets/definitions/image/index.d.ts +5 -3
- package/widgets/definitions/image/index.d.ts.map +1 -1
- package/widgets/definitions/info-gauge/index.d.ts +2 -3
- package/widgets/definitions/info-gauge/index.d.ts.map +1 -1
- package/widgets/definitions/kpi/index.d.ts +1 -1
- package/widgets/definitions/kpi/index.d.ts.map +1 -1
- package/widgets/definitions/linear-gauge/index.d.ts +1 -1
- package/widgets/definitions/linear-gauge/index.d.ts.map +1 -1
- package/widgets/definitions/map/index.d.ts +1 -1
- package/widgets/definitions/map/index.d.ts.map +1 -1
- package/widgets/definitions/markdown/index.d.ts +5 -3
- package/widgets/definitions/markdown/index.d.ts.map +1 -1
- package/widgets/definitions/quick-links/index.d.ts +1 -1
- package/widgets/definitions/quick-links/index.d.ts.map +1 -1
- package/widgets/definitions/radial-gauge/index.d.ts +1 -1
- package/widgets/definitions/radial-gauge/index.d.ts.map +1 -1
- package/widgets/definitions/silo/index.d.ts +1 -1
- package/widgets/definitions/silo/index.d.ts.map +1 -1
- package/widgets/definitions/three-d-rotation/index.d.ts +1 -1
- package/widgets/definitions/three-d-rotation/index.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-list-widget.model.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts.map +1 -1
- package/widgets/implementations/cockpit-welcome/welcome.component.d.ts +3 -2
- package/widgets/implementations/cockpit-welcome/welcome.component.d.ts.map +1 -1
- package/widgets/implementations/datapoints-graph/datapoints-graph-config/datapoints-graph-widget-config.component.d.ts +4 -1
- package/widgets/implementations/datapoints-graph/datapoints-graph-config/datapoints-graph-widget-config.component.d.ts.map +1 -1
- package/widgets/implementations/datapoints-graph/datapoints-graph-view/datapoints-graph-widget-view.component.d.ts +2 -1
- package/widgets/implementations/datapoints-graph/datapoints-graph-view/datapoints-graph-widget-view.component.d.ts.map +1 -1
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-reload/datapoints-reload.component.d.ts.map +1 -1
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/datapoints-table.component.d.ts.map +1 -1
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.component.d.ts.map +1 -1
- package/widgets/implementations/datapoints-table/datapoints-table-widget.model.d.ts.map +1 -1
- package/widgets/implementations/datapoints-table/date-range-picker.component.d.ts.map +1 -1
- package/widgets/implementations/device-control-message/device-control-message-widget-view/device-control-message-widget-view.component.d.ts.map +1 -1
- package/widgets/implementations/device-management-welcome/welcome.component.d.ts.map +1 -1
- package/widgets/implementations/help-and-service-widget/help-and-service-view/help-and-service-view.component.d.ts.map +1 -1
- package/widgets/implementations/html-widget/advanced-settings/advanced-settings.component.d.ts.map +1 -1
- package/widgets/implementations/html-widget/html-widget-config.service.d.ts.map +1 -1
- package/widgets/implementations/html-widget/widget-code-editor-section/widget-code-editor.component.d.ts +5 -3
- package/widgets/implementations/html-widget/widget-code-editor-section/widget-code-editor.component.d.ts.map +1 -1
- package/widgets/implementations/image/image-widget-config/image-widget-config.component.d.ts.map +1 -1
- package/widgets/implementations/image/image-widget.service.d.ts +1 -2
- package/widgets/implementations/image/image-widget.service.d.ts.map +1 -1
- package/widgets/implementations/info-gauge/info-gauge-widget-config/info-gauge-widget-config.component.d.ts.map +1 -1
- package/widgets/implementations/linear-gauge/linear-gauge-widget-view/linear-gauge-widget-view.component.d.ts.map +1 -1
- package/widgets/implementations/map/map-widget-config.component.d.ts.map +1 -1
- package/widgets/implementations/map/map-widget.component.d.ts.map +1 -1
- package/widgets/implementations/markdown/markdown-widget-config/markdown-widget-config.component.d.ts.map +1 -1
- package/widgets/implementations/markdown/markdown-widget.service.d.ts.map +1 -1
- package/widgets/implementations/quick-links/quick-links-widget-config/quick-links-widget-config.component.d.ts.map +1 -1
- package/widgets/import-export-config/config-target-export.d.ts +3 -1
- package/widgets/import-export-config/config-target-export.d.ts.map +1 -1
- package/widgets/import-export-config/config-target-import.d.ts +3 -1
- package/widgets/import-export-config/config-target-import.d.ts.map +1 -1
- package/widgets/import-export-config/device-import-export.d.ts +3 -1
- package/widgets/import-export-config/device-import-export.d.ts.map +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-general-settings.component-DjlpSztw.mjs.map +0 -1
- package/fesm2022/c8y-ngx-components-context-dashboard-dashboard-version-history.component-B2zLhv0X.mjs.map +0 -1
- package/fesm2022/c8y-ngx-components-dashboard-details-advanced-tab-dashboard-details-advanced-tab.component-CwfVxTSx.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c8y-ngx-components-device-grid.mjs","sources":["../../device-grid/columns/column-util.service.ts","../../device-grid/columns/alarms.cell-renderer.component.ts","../../device-grid/columns/alarms.cell-renderer.component.html","../../device-grid/columns/alarms.header-cell-renderer.component.ts","../../device-grid/columns/alarms.device-grid-column.ts","../../device-grid/columns/group.cell-renderer.component.ts","../../device-grid/columns/group.cell-renderer.component.html","../../device-grid/columns/group.filtering-form-renderer.component.ts","../../device-grid/columns/group.filtering-form-renderer.component.html","../../device-grid/columns/group.device-grid-column.ts","../../device-grid/columns/imei.device-grid-column.ts","../../device-grid/columns/model.cell-renderer.component.ts","../../device-grid/columns/model.device-grid-column.ts","../../device-grid/columns/name.cell-renderer.component.ts","../../device-grid/columns/name.device-grid-column.ts","../../device-grid/columns/registration-date.cell-renderer.component.ts","../../device-grid/columns/registration-date.device-grid-column.ts","../../device-grid/columns/serial-number.cell-renderer.component.ts","../../device-grid/columns/serial-number.device-grid-column.ts","../../device-grid/columns/status.cell-renderer.component.ts","../../device-grid/columns/status.device-grid-column.ts","../../device-grid/columns/system-id.device-grid-column.ts","../../device-grid/columns/type.device-grid-column.ts","../../device-grid/columns/icon.cell-renderer.component.ts","../../device-grid/device-grid.service.ts","../../device-grid/device-grid.component.ts","../../device-grid/device-grid.component.html","../../device-grid/device-grid.module.ts","../../device-grid/c8y-ngx-components-device-grid.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport { TranslateService } from '@ngx-translate/core';\nimport { map, remove, sortBy } from 'lodash-es';\n\n/**\n * Service contains logic extracted from the device-grid service to avoid circular dependency MTM-40239.\n */\n\n@Injectable({ providedIn: 'root' })\nexport class ColumnUtilService {\n constructor(protected translateService: TranslateService) {}\n\n getAlarmsHref(device: IManagedObject): string {\n return `${this.getHref(device)}/alarms`;\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n if (groupOrDevice.c8y_IsDeviceGroup || groupOrDevice.c8y_IsDynamicGroup) {\n return `${prefix}group/${groupOrDevice.id}`;\n }\n return `${prefix}device/${groupOrDevice.id}`;\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n const assetParentsReferences = device.assetParents.references;\n const assetParents = map(assetParentsReferences, 'managedObject');\n const sortedByName = sortBy(assetParents, ['name']);\n const featuredItems = remove(sortedByName, { id: featuredParentId });\n const items = featuredItems.concat(sortedByName);\n const names = map(items, 'name');\n return names.join(', ');\n }\n\n getModel(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n return hardware && hardware.model;\n }\n\n getProperName(device: IManagedObject): string {\n const { id, name } = device;\n return name ? name : this.translateService.instant('Device {{id}}', { id });\n }\n\n getSerialNumber(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n return hardware && hardware['serialNumber'];\n }\n\n private getHardware(device: IManagedObject): any {\n return device && device['c8y_Hardware'];\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext, gettext, IconDirective, C8yTranslatePipe } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\nimport { NgIf } from '@angular/common';\n\n@Component({\n templateUrl: './alarms.cell-renderer.component.html',\n selector: 'c8y-alarms-cell-renderer',\n imports: [NgIf, IconDirective, C8yTranslatePipe]\n})\nexport class AlarmsCellRendererComponent {\n readonly linkAriaLabel = gettext('See alarms for device \"{{ name }}\"');\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","<a\n class=\"d-flex a-i-center flex-wrap gap-4 no-decoration\"\n [href]=\"columnUtilService.getAlarmsHref(context.item)\"\n [attr.aria-label]=\"\n linkAriaLabel | translate: { name: columnUtilService.getProperName(context.item) }\n \"\n *ngIf=\"\n context.item.c8y_ActiveAlarmsStatus?.critical ||\n context.item.c8y_ActiveAlarmsStatus?.major ||\n context.item.c8y_ActiveAlarmsStatus?.minor ||\n context.item.c8y_ActiveAlarmsStatus?.warning\n \"\n>\n <span\n class=\"c8y-icon-badge\"\n data-cy=\"alarms.cell-renderer--critical-alarm-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.critical }} {{ 'Critical alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.critical\"\n >\n <i [c8yIcon]=\"'exclamation-circle'\" class=\"status critical stroked-icon\" data-cy=\"alarms.cell-renderer--critical-alarm-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.critical }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.major }} {{ 'Major alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.major\"\n >\n <i [c8yIcon]=\"'warning'\" class=\"status major stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.major }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.minor }} {{ 'Minor alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.minor\"\n >\n <i [c8yIcon]=\"'high-priority'\" class=\"status minor stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.minor }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.warning }} {{ 'Warning alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.warning\"\n >\n <i [c8yIcon]=\"'info-circle'\" class=\"status warning stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.warning }}</span>\n </span>\n</a>\n","import { Component } from '@angular/core';\nimport { CellRendererContext, IconDirective, C8yTranslatePipe } from '@c8y/ngx-components';\nimport { PopoverDirective } from 'ngx-bootstrap/popover';\n\n@Component({\n template: `\n <div class=\"d-flex\">\n <span class=\"text-truncate\" [title]=\"context.property.header | translate\">\n {{ context.property.header | translate }}\n </span>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"'Only includes alarms for the parent device.' | translate\"\n placement=\"bottom\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n (click)=\"$event.stopPropagation()\"\n >\n <i c8yIcon=\"question-circle-o\"></i>\n </button>\n </div>\n `,\n selector: 'c8y-alarms-header-cell-renderer',\n imports: [PopoverDirective, IconDirective, C8yTranslatePipe]\n})\nexport class AlarmsHeaderCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { BaseColumn, ColumnConfig, gettext } from '@c8y/ngx-components';\nimport { map } from 'lodash-es';\nimport { AlarmsCellRendererComponent } from './alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './alarms.header-cell-renderer.component';\n\nexport class AlarmsDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'alarms';\n this.header = gettext('Alarms');\n this.headerCellRendererComponent = AlarmsHeaderCellRendererComponent;\n this.cellRendererComponent = AlarmsCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n key: 'alarm',\n templateOptions: {\n label: 'Show items'\n },\n fieldGroup: [\n {\n key: 'critical',\n type: 'switch',\n props: {\n label: gettext('With active critical alarms')\n }\n },\n {\n key: 'major',\n type: 'switch',\n props: {\n label: gettext('With active major alarms')\n }\n },\n {\n key: 'minor',\n type: 'switch',\n props: {\n label: gettext('With active minor alarms')\n }\n },\n {\n key: 'warning',\n type: 'switch',\n props: {\n label: gettext('With active warnings')\n }\n },\n {\n key: 'none',\n type: 'switch',\n props: {\n label: gettext('With no active alarms or warnings')\n }\n }\n ],\n validators: {\n atLeastOneSelected: {\n expression: control => {\n const alarmGroup = control.value;\n return (\n alarmGroup.critical ||\n alarmGroup.major ||\n alarmGroup.minor ||\n alarmGroup.warning ||\n alarmGroup.none\n );\n }\n }\n }\n }\n ],\n formGroup: new FormGroup({}),\n getFilter: model => {\n const filter: any = {};\n const ors = [];\n if (model.alarm.critical) {\n ors.push({ 'c8y_ActiveAlarmsStatus.critical': { __gt: 0 } });\n }\n if (model.alarm.major) {\n ors.push({ 'c8y_ActiveAlarmsStatus.major': { __gt: 0 } });\n }\n if (model.alarm.minor) {\n ors.push({ 'c8y_ActiveAlarmsStatus.minor': { __gt: 0 } });\n }\n if (model.alarm.warning) {\n ors.push({ 'c8y_ActiveAlarmsStatus.warning': { __gt: 0 } });\n }\n if (model.alarm.none) {\n ors.push({ __not: { __has: 'c8y_ActiveAlarmsStatus' } });\n ors.push({\n __and: map(['critical', 'major', 'minor', 'warning'], sev => {\n const zero = {};\n const has = { __not: { __has: undefined } };\n const key = `c8y_ActiveAlarmsStatus.${sev}`;\n zero[key] = 0;\n has.__not.__has = key;\n return { __or: [zero, has] };\n })\n });\n }\n if (ors.length) {\n filter.__or = ors;\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [\n { path: 'c8y_ActiveAlarmsStatus.critical' },\n { path: 'c8y_ActiveAlarmsStatus.major' },\n { path: 'c8y_ActiveAlarmsStatus.minor' },\n { path: 'c8y_ActiveAlarmsStatus.warning' }\n ]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n templateUrl: './group.cell-renderer.component.html',\n selector: 'c8y-group-cell-renderer'\n})\nexport class GroupCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","<span\n title=\"{{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\"\n>\n {{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\n</span>\n","import { Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';\nimport {\n Column,\n FilteringFormRendererContext,\n C8yTranslateDirective,\n C8yTranslatePipe\n} from '@c8y/ngx-components';\nimport { cloneDeep } from 'lodash-es';\nimport { AssetSelectorComponent } from '@c8y/ngx-components/assets-navigator';\n\n@Component({\n templateUrl: './group.filtering-form-renderer.component.html',\n imports: [AssetSelectorComponent, C8yTranslateDirective, C8yTranslatePipe]\n})\nexport class GroupFilteringFormRendererComponent implements OnInit {\n @ViewChild('assetSelector', { static: false, read: ElementRef }) assetSelector: ElementRef;\n model: any;\n preselected: string[] = [];\n initialSelection: string[] = [];\n isApplyDisabled = true;\n\n constructor(public context: FilteringFormRendererContext) {}\n\n @HostListener('keyup.enter', ['$event']) onEnterKeyUp(event: KeyboardEvent) {\n event.stopPropagation();\n this.applyFilter();\n }\n @HostListener('keydown.escape', ['$event']) onEscapeKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n this.resetFilter();\n }\n\n ngOnInit() {\n const column: Column = this.context.property;\n this.model = cloneDeep(column.externalFilterQuery || {});\n this.preselected = this.model.selectedNodes || [];\n this.initialSelection = [...this.preselected];\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n try {\n this.assetSelector.nativeElement.querySelector('input').focus();\n } catch (ex) {\n // intended empty\n }\n }, 250);\n }\n\n applyFilter() {\n this.context.applyFilter({\n externalFilterQuery: this.model\n });\n this.isApplyDisabled = true; // Disable button after applying the filter\n this.initialSelection = [...this.model.selectedNodes]; // Update initial selection\n }\n\n resetFilter() {\n this.context.resetFilter();\n this.model.selectedNodes = [];\n this.preselected = [];\n this.isApplyDisabled = true; // Disable button after resetting the filter\n }\n\n selectionChanged(nodes) {\n this.model.selectedNodes = nodes.items;\n this.isApplyDisabled = !this.isSelectionChanged();\n }\n\n private isSelectionChanged(): boolean {\n if (this.model.selectedNodes.length !== this.initialSelection.length) {\n return true;\n }\n const currentSelectionSet = new Set(this.model.selectedNodes);\n for (const item of this.initialSelection) {\n if (!currentSelectionSet.has(item)) {\n return true;\n }\n }\n return false;\n }\n}\n","<c8y-asset-selector\n class=\"bg-component\"\n #assetSelector\n [config]=\"{\n groupsOnly: true,\n multi: true,\n groupsSelectable: true,\n search: true,\n label: ''\n }\"\n [selected]=\"preselected\"\n (onSelected)=\"selectionChanged($event)\"\n></c8y-asset-selector>\n\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n title=\"{{ 'Reset' | translate }}\"\n (click)=\"resetFilter()\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n title=\"{{ 'Apply' | translate }}\"\n (click)=\"applyFilter()\"\n [disabled]=\"isApplyDisabled\"\n translate\n >\n Apply\n </button>\n</div>\n","import { IManagedObject } from '@c8y/client';\nimport {\n BaseColumn,\n ColumnConfig,\n FilterChip,\n gettext,\n PartialFilterChipGenerationType\n} from '@c8y/ngx-components';\nimport { GroupCellRendererComponent } from './group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './group.filtering-form-renderer.component';\n\nexport class GroupDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'group';\n this.header = gettext('Group');\n this.cellRendererComponent = GroupCellRendererComponent;\n this.filteringFormRendererComponent = GroupFilteringFormRendererComponent;\n this.filterable = true;\n this.filteringConfig = {\n generateChips(model): PartialFilterChipGenerationType[] {\n if (model.selectedNodes) {\n return model.selectedNodes.map(mo => ({\n displayValue: mo.name,\n value: mo,\n remove(): Partial<FilterChip> {\n const { externalFilterQuery, columnName, value } = this;\n const nodes = externalFilterQuery.selectedNodes.filter(node => node.id !== value.id);\n\n return {\n externalFilterQuery: { selectedNodes: nodes },\n columnName: columnName\n };\n }\n }));\n }\n },\n getFilter(model) {\n const filter: any = {};\n if (model.selectedNodes) {\n filter.__or = model.selectedNodes.map((mo: IManagedObject) => {\n if (mo.c8y_DeviceQueryString) {\n return { __useFilterQueryString: mo.c8y_DeviceQueryString };\n }\n return { __bygroupid: mo.id };\n });\n }\n return filter;\n }\n };\n this.sortable = false;\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class ImeiDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'c8y_Mobile.imei';\n this.name = 'imei';\n this.header = gettext('IMEI');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'imeis',\n label: gettext('Show items with IMEI'),\n addText: gettext('Add next`IMEI`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '46543432321'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.imeis.length) {\n filter[this.path] = { __in: model.imeis };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getModel(context.item) }} `,\n selector: 'c8y-model-cell-renderer'\n})\nexport class ModelCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { ModelCellRendererComponent } from './model.cell-renderer.component';\n\nexport class ModelDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareModelPath = 'c8y_Hardware.model';\n\n this.name = 'model';\n this.header = gettext('Model');\n this.cellRendererComponent = ModelCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'models',\n label: gettext('Show items with model'),\n addText: gettext('Add next`model`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: 'NTC-220'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.models.length) {\n filter.push = {\n [hardwareModelPath]: { __in: model.models }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareModelPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: `\n <a\n class=\"interact\"\n title=\"{{ columnUtilService.getProperName(context.item) }}\"\n [href]=\"columnUtilService.getHref(context.item)\"\n >\n {{ columnUtilService.getProperName(context.item) }}\n </a>\n `,\n selector: 'c8y-name-cell-renderer'\n})\nexport class NameCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n ColumnDataRecordClassName,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { NameCellRendererComponent } from './name.cell-renderer.component';\n\nexport class NameDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'name';\n this.path = 'name';\n this.header = gettext('Name');\n this.cellCSSClassName = ColumnDataRecordClassName.Header;\n this.cellRendererComponent = NameCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'names',\n label: gettext('Show items with name'),\n addText: gettext('Add next`name`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('My device`DEVICE_NAME`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.names.length) {\n filter.name = { __in: model.names };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext, DatePipe } from '@c8y/ngx-components';\n\n@Component({\n template: ` {{ context.value | c8yDate }} `,\n selector: 'c8y-registration-date-cell-renderer',\n imports: [DatePipe]\n})\nexport class RegistrationDateCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { BaseColumn, ColumnConfig, gettext } from '@c8y/ngx-components';\nimport { RegistrationDateCellRendererComponent } from './registration-date.cell-renderer.component';\n\nexport class RegistrationDateDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'creationTime';\n this.name = 'registrationDate';\n this.header = gettext('Registration date');\n this.cellRendererComponent = RegistrationDateCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n key: 'registrationDate',\n templateOptions: {\n label: gettext('Show items registered`between dates`')\n },\n fieldGroup: [\n {\n type: 'date-time',\n key: 'after',\n templateOptions: {\n label: gettext('from`date`')\n },\n expressionProperties: {\n 'templateOptions.maxDate': (model: any) => model?.before\n }\n },\n {\n type: 'date-time',\n key: 'before',\n templateOptions: {\n label: gettext('to`date`')\n },\n expressionProperties: {\n 'templateOptions.minDate': (model: any) => model?.after\n }\n }\n ],\n validators: {\n atLeastOneFilled: {\n expression: (formGroup: any) => {\n const after = formGroup.get('after').value;\n const before = formGroup.get('before').value;\n return after || before;\n }\n }\n }\n }\n ],\n formGroup: new FormGroup({}),\n getFilter: model => {\n const filter: any = {};\n const dates = model && model.registrationDate;\n if (dates && (dates.after || dates.before)) {\n filter.__and = [];\n if (dates.after) {\n const after = this.formatDate(dates.after);\n filter.__and.push({\n 'creationTime.date': { __gt: after }\n });\n }\n if (dates.before) {\n const before = this.formatDate(dates.before);\n filter.__and.push({\n 'creationTime.date': { __lt: before }\n });\n }\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: 'creationTime.date' }]\n };\n }\n\n protected formatDate(dateToFormat: string): string {\n return new Date(dateToFormat).toISOString();\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getSerialNumber(context.item) }} `,\n selector: 'c8y-serial-number-cell-renderer'\n})\nexport class SerialNumberCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\nimport { SerialNumberCellRendererComponent } from './serial-number.cell-renderer.component';\n\nexport class SerialNumberDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareSerialNumberPath = 'c8y_Hardware.serialNumber';\n\n this.name = 'serialNumber';\n this.header = gettext('Serial number');\n this.cellRendererComponent = SerialNumberCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'serialNumbers',\n label: gettext('Show items with serial number'),\n addText: gettext('Add next`serial number`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '54321-123'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.serialNumbers.length) {\n filter.push = {\n [hardwareSerialNumberPath]: { __in: model.serialNumbers }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareSerialNumberPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext, DeviceStatusComponent } from '@c8y/ngx-components';\n\n@Component({\n template: ` <device-status [mo]=\"context.item\"></device-status> `,\n selector: 'c8y-device-status-cell-renderer',\n imports: [DeviceStatusComponent]\n})\nexport class DeviceStatusCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { BaseColumn, ColumnDataType, gettext, PushStatus, SendStatus } from '@c8y/ngx-components';\nimport { DeviceStatusCellRendererComponent } from './status.cell-renderer.component';\n\nexport class StatusDeviceGridColumn extends BaseColumn {\n constructor() {\n super();\n\n const responseIntervalPath = 'c8y_RequiredAvailability.responseInterval';\n const responseIntervalLessThanOrEqualTo0 = { [responseIntervalPath]: { __le: 0 } };\n const responseIntervalNotDefined = { __not: { __has: responseIntervalPath } };\n\n const availabilityStatusPath = 'c8y_Availability.status';\n const availabilityStatusAvailable = { [availabilityStatusPath]: SendStatus.AVAILABLE };\n const availabilityStatusUnavailable = { [availabilityStatusPath]: SendStatus.UNAVAILABLE };\n const availabilityStatusMaintenance = { [availabilityStatusPath]: SendStatus.MAINTENANCE };\n const availabilityStatusNotDefined = { __not: { __has: availabilityStatusPath } };\n\n const connectionStatusPath = 'c8y_Connection.status';\n const connectionStatusConnected = { [connectionStatusPath]: PushStatus.CONNECTED };\n const connectionStatusDisconnected = { [connectionStatusPath]: PushStatus.DISCONNECTED };\n const connectionStatusMaintenance = { [connectionStatusPath]: PushStatus.MAINTENANCE };\n\n const deviceUnderMaintenance = {\n __or: [\n responseIntervalLessThanOrEqualTo0,\n availabilityStatusMaintenance,\n connectionStatusMaintenance\n ]\n };\n const deviceNotUnderMaintenance = {\n // using __and of __nots because backend does not support __not with __ors\n __and: [\n { __not: responseIntervalLessThanOrEqualTo0 },\n { __not: availabilityStatusMaintenance },\n { __not: connectionStatusMaintenance }\n ]\n };\n\n this.name = 'status';\n this.header = gettext('Status');\n this.dataType = ColumnDataType.Icon;\n this.cellRendererComponent = DeviceStatusCellRendererComponent;\n this.resizable = false;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n templateOptions: {\n label: 'Show items with status'\n },\n fieldGroup: [\n {\n key: 'sendStatus',\n type: 'object',\n props: {\n label: gettext('Send status')\n },\n fieldGroup: [\n {\n key: 'sendOnline',\n type: 'switch',\n props: { label: gettext('Online') }\n },\n {\n key: 'sendOffline',\n type: 'switch',\n props: { label: gettext('Offline') }\n },\n {\n key: 'sendUnknown',\n type: 'switch',\n props: { label: gettext('Unknown') }\n },\n {\n key: 'sendNotMonitored',\n type: 'switch',\n props: { label: gettext('Not monitored') }\n }\n ]\n },\n {\n key: 'pushStatus',\n type: 'object',\n props: {\n label: gettext('Push status')\n },\n fieldGroup: [\n {\n key: 'pushOnline',\n type: 'switch',\n props: { label: gettext('Online') }\n },\n {\n key: 'pushOffline',\n type: 'switch',\n props: { label: gettext('Offline') }\n },\n {\n key: 'pushNotMonitored',\n type: 'switch',\n props: { label: gettext('Not monitored') }\n }\n ]\n },\n {\n key: 'maintenanceStatus',\n type: 'object',\n props: {\n label: gettext('Maintenance status')\n },\n fieldGroup: [\n {\n key: 'maintenance',\n type: 'switch',\n props: { label: gettext('Device is under maintenance') }\n }\n ]\n }\n ],\n validators: {\n atLeastOneFilled: {\n expression: (formGroup: any) => {\n const sendStatus = formGroup.get('sendStatus').value || {};\n const pushStatus = formGroup.get('pushStatus').value || {};\n const maintenanceStatus = formGroup.get('maintenanceStatus').value || {};\n\n return (\n sendStatus.sendOnline ||\n sendStatus.sendOffline ||\n sendStatus.sendUnknown ||\n sendStatus.sendNotMonitored ||\n pushStatus.pushOnline ||\n pushStatus.pushOffline ||\n pushStatus.pushNotMonitored ||\n maintenanceStatus.maintenance\n );\n }\n }\n }\n }\n ],\n formGroup: new FormGroup({}),\n getFilter(model) {\n const filter: any = {};\n const ors = [];\n\n if (model?.sendStatus?.sendOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusAvailable]\n });\n }\n\n if (model?.sendStatus?.sendOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusUnavailable]\n });\n }\n\n if (model?.sendStatus?.sendUnknown) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusNotDefined]\n });\n }\n\n if (model?.sendStatus?.sendNotMonitored || model?.pushStatus?.pushNotMonitored) {\n ors.push(responseIntervalNotDefined);\n }\n\n if (model?.pushStatus?.pushOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusConnected]\n });\n }\n\n if (model?.pushStatus?.pushOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusDisconnected]\n });\n }\n\n if (model?.maintenanceStatus?.maintenance) {\n ors.push(deviceUnderMaintenance);\n }\n\n if (ors.length) {\n filter.__or = ors;\n }\n\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: availabilityStatusPath }]\n };\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class SystemIdDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'id';\n this.name = 'systemId';\n this.header = gettext('System ID');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'ids',\n label: gettext('Show items with system ID'),\n addText: gettext('Add next`id`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '10300'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.ids.length) {\n filter[this.path] = { __in: model.ids };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import {\n BaseColumn,\n ColumnConfig,\n getBasicInputArrayFormFieldConfig,\n gettext\n} from '@c8y/ngx-components';\n\nexport class TypeDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.name = 'type';\n this.path = 'type';\n this.header = gettext('Type');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'types',\n label: gettext('Show devices with type'),\n addText: gettext('Add next`type`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('MyType`DEVICE_TYPE`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.types.length) {\n filter.type = { __in: model.types };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = { pathSortingConfigs: [{ path: 'type' }] };\n }\n}\n","import { Component } from '@angular/core';\nimport {\n BaseColumn,\n CellRendererContext,\n ColumnDataType,\n IconDirective\n} from '@c8y/ngx-components';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { SupportedIcons } from '@c8y/ngx-components/icon-selector/icons';\n\n@Component({\n selector: 'c8y-icon-device-grid-column',\n standalone: true,\n imports: [IconDirective],\n template: `<i [c8yIcon]=\"icon\"></i>`\n})\nexport class IconDeviceGridColumnComponent {\n icon: SupportedIcons;\n constructor(context: CellRendererContext) {\n const propertyAsIconColumn = context.property as IconDeviceGridColumn;\n if (propertyAsIconColumn && typeof propertyAsIconColumn.iconRetriever === 'function') {\n this.icon = propertyAsIconColumn.iconRetriever(context);\n } else {\n this.icon = context.value;\n }\n }\n}\n\nexport class IconDeviceGridColumn extends BaseColumn {\n constructor(\n options: Partial<BaseColumn> = {},\n public iconRetriever?: (context: CellRendererContext) => SupportedIcons\n ) {\n super(options);\n this.dataType = ColumnDataType.Icon;\n this.name = 'icon';\n this.path = 'icon';\n this.filterable = false;\n this.resizable = false;\n this.header = gettext('Icon');\n this.cellRendererComponent = IconDeviceGridColumnComponent;\n\n Object.assign(this, options);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { IManagedObject, InventoryService, IUser, UserService } from '@c8y/client';\nimport {\n AlertService,\n BulkActionControl,\n Column,\n DataGridService,\n gettext,\n GridConfig,\n HeaderActionControl,\n InventorySearchService,\n ModalService,\n Pagination,\n Status,\n UserPreferencesService\n} from '@c8y/ngx-components';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Observable } from 'rxjs';\nimport { AlarmsDeviceGridColumn } from './columns/alarms.device-grid-column';\nimport { ColumnUtilService } from './columns/column-util.service';\nimport { GroupDeviceGridColumn } from './columns/group.device-grid-column';\nimport { ImeiDeviceGridColumn } from './columns/imei.device-grid-column';\nimport { ModelDeviceGridColumn } from './columns/model.device-grid-column';\nimport { NameDeviceGridColumn } from './columns/name.device-grid-column';\nimport { RegistrationDateDeviceGridColumn } from './columns/registration-date.device-grid-column';\nimport { SerialNumberDeviceGridColumn } from './columns/serial-number.device-grid-column';\nimport { StatusDeviceGridColumn } from './columns/status.device-grid-column';\nimport { SystemIdDeviceGridColumn } from './columns/system-id.device-grid-column';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceGridService extends DataGridService {\n protected GRID_CONFIG_DEFAULT_STORAGE_KEY = 'device-grid-config';\n\n constructor(\n protected inventoryService: InventoryService,\n protected userService: UserService,\n protected translateService: TranslateService,\n protected alertService: AlertService,\n protected modal: ModalService,\n protected columnUtilService: ColumnUtilService,\n protected userPreferencesService: UserPreferencesService,\n protected searchService: InventorySearchService\n ) {\n super(userPreferencesService);\n }\n\n getDefaultColumns(): Column[] {\n const defaultColumns = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new GroupDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return defaultColumns;\n }\n\n getChildDeviceGridColumns(): Column[] {\n const childDeviceGridColumn = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return childDeviceGridColumn;\n }\n\n getDefaultPagination(): Pagination {\n return {\n pageSize: 25,\n currentPage: 1\n };\n }\n\n getInfiniteScrollPagination(): Pagination {\n return {\n pageSize: 50,\n currentPage: 1\n };\n }\n\n getDefaultBulkActionControls(): BulkActionControl[] {\n return [];\n }\n\n getDefaultHeaderActionControls(): HeaderActionControl[] {\n return [];\n }\n\n getProperName(device: IManagedObject): string {\n return this.columnUtilService.getProperName(device);\n }\n\n getModel(device: IManagedObject): string {\n return this.columnUtilService.getModel(device);\n }\n\n getSerialNumber(device: IManagedObject): string {\n return this.columnUtilService.getSerialNumber(device);\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n return this.columnUtilService.getParentsNames(device, featuredParentId);\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n return this.columnUtilService.getHref(groupOrDevice, prefix);\n }\n\n getAlarmsHref(device: IManagedObject): string {\n return this.columnUtilService.getAlarmsHref(device);\n }\n\n async delete(device: IManagedObject): Promise<void> {\n try {\n const deviceWithChildren = await (\n await this.inventoryService.detail(device, { withChildren: true })\n ).data;\n const hasChildDevices = deviceWithChildren.childDevices?.references?.length > 0;\n const hasChildAdditions = deviceWithChildren.childAdditions?.references?.length > 0;\n const hasChildAssets = deviceWithChildren.childAssets?.references?.length > 0;\n const showDeleteChildren = () => hasChildAdditions || hasChildDevices || hasChildAssets;\n const modalResult = await this.modal.confirm(\n gettext('Delete device'),\n this.translateService.instant(\n gettext(`You are about to delete device \"{{ name }}\". Do you want to proceed?`),\n device\n ),\n Status.DANGER,\n { ok: gettext('Delete'), cancel: gettext('Cancel') },\n {\n cascade: {\n text: gettext('Also delete child hierarchy of this device.'),\n checked: showDeleteChildren(),\n showIf: showDeleteChildren,\n disabledByKey: 'withDeviceUser'\n },\n withDeviceUser: {\n text: this.translateService.instant(\n gettext('Also delete associated device owner \"{{ owner }}\".'),\n device\n ),\n checked: false,\n showIf: () => {\n const isRootDevice = device.c8y_IsDevice;\n const hasDeviceUserAsOwner =\n device.owner &&\n this.userService.isDeviceUser({ id: device.owner } as unknown as IUser);\n\n return Boolean(isRootDevice && hasDeviceUserAsOwner);\n },\n disabledByKey: 'cascade'\n }\n }\n );\n await this.inventoryService.delete(\n device,\n (modalResult as { confirmOptions: { [key: string]: any } }).confirmOptions\n );\n this.alertService.success(gettext('Device deleted.'));\n return Promise.resolve();\n } catch (ex) {\n // only if not cancel from modal\n if (ex) {\n this.alertService.addServerFailure(ex);\n }\n return Promise.reject();\n }\n }\n\n async getData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n text = null\n ) {\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, false, text)),\n withGroups: true,\n withChildren,\n withTotalElements: true\n };\n return this.inventoryService.list(filters);\n }\n\n async getChildDeviceData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, childDeviceFilters)),\n withGroups: true,\n withChildren\n };\n return this.inventoryService.childDevicesList(id, filters);\n }\n\n async getCount(columns: Column[], pagination: Pagination, query: any = {}, text: string = null) {\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, false, text)),\n withTotalElements: true\n };\n return (await this.inventoryService.list(filters)).paging.totalElements;\n }\n\n async getCountChildDevices(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, childDeviceFilters)),\n withTotalElements: true\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalElements;\n }\n\n async getTotalChildDevices(query: any = {}, id: string): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n withTotalElements: true\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalElements;\n }\n\n async getTotal(query: any = {}): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n withTotalElements: true\n };\n return (await this.inventoryService.list(filters)).paging.totalElements;\n }\n\n getDeviceQueryString(\n columns: Column[],\n query: any,\n text: string,\n isWildcardSearchEnabled: boolean\n ): string {\n let fullQuery = this.getQueryObj(columns);\n if (text && isWildcardSearchEnabled) {\n fullQuery = this.queriesUtil.addAndFilter(fullQuery, {\n name: `*${text.trim().replace(/\\s+/g, '*')}*`\n });\n }\n fullQuery = this.queriesUtil.addAndFilter(fullQuery, query);\n return this.queriesUtil.buildQuery(fullQuery);\n }\n\n clearConfig(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY) {\n super.clearConfig(key);\n }\n\n getConfig$(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY): Observable<GridConfig> {\n return super.getConfig$(key);\n }\n\n saveConfig$(\n config: GridConfig,\n key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY\n ): Observable<GridConfig> {\n return super.saveConfig$(config, key);\n }\n\n private async getDevicesFilters(\n columns: Column[],\n pagination: Pagination,\n query: any,\n childDeviceFilters?: boolean,\n text?: string\n ) {\n const isWildcardSearchEnabled = await this.searchService.isWildcardSearchEnabled();\n return {\n ...(childDeviceFilters\n ? { query: this.getDeviceQueryString(columns, query, text, isWildcardSearchEnabled) }\n : { q: this.getDeviceQueryString(columns, query, text, isWildcardSearchEnabled) }),\n ...(text && !isWildcardSearchEnabled && { text }),\n pageSize: pagination.pageSize,\n currentPage: pagination.currentPage,\n withChildren: false,\n withTotalPages: true\n };\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n Output,\n ViewChild\n} from '@angular/core';\nimport {\n ActionControl,\n alertOnError,\n BulkActionControl,\n C8yTranslatePipe,\n Column,\n ColumnDirective,\n DataGridComponent,\n DataSourceModifier,\n EmptyStateComponent,\n EmptyStateContextDirective,\n FilteringActionType,\n FilteringModifier,\n gettext,\n HeaderActionControl,\n LoadMoreMode,\n Pagination,\n PRODUCT_EXPERIENCE_EVENT_SOURCE,\n ProductExperienceDirective,\n ProductExperienceEvent,\n ProductExperienceEventSource,\n ServerSideDataCallback,\n ServerSideDataResult\n} from '@c8y/ngx-components';\nimport { Subject } from 'rxjs';\nimport { DataCallback, FilterConfig } from './device-grid.model';\nimport { DeviceGridService } from './device-grid.service';\n\nimport { NgFor } from '@angular/common';\n\n@Component({\n selector: 'c8y-device-grid',\n templateUrl: './device-grid.component.html',\n providers: [\n {\n provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,\n useExisting: forwardRef(() => DeviceGridComponent)\n }\n ],\n imports: [\n DataGridComponent,\n ProductExperienceDirective,\n EmptyStateContextDirective,\n EmptyStateComponent,\n NgFor,\n ColumnDirective,\n C8yTranslatePipe\n ]\n})\nexport class DeviceGridComponent implements OnDestroy, ProductExperienceEventSource {\n /** Optional callback function that allows to modify server side data result before it's rendered. */\n @Input() dataCallback: DataCallback;\n /** Takes an event emitter. When an event is emitted, the grid will be reloaded. */\n @Input() refresh: EventEmitter<void> = new EventEmitter();\n /** The title for the data grid, it's displayed in the grid's header. */\n @Input() title: string = gettext('Devices');\n /** The label for load more button. */\n @Input() loadMoreItemsLabel = gettext('Load more devices');\n /** The label for loading indicator. */\n @Input() loadingItemsLabel: string = gettext('Loading devices…');\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' column config is stored.\n */\n @Input() legacyConfigKey: string;\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' filter/sorting config is stored.\n */\n @Input() legacyFilterKey: string;\n /** The list of columns to be displayed in the grid. If not given, it defaults to standard columns. */\n @Input('columns') columns: Column[] = this.deviceGridService.getDefaultColumns();\n /** Pagination settings, e.g. allows for setting current page or page size. If not given, defaults to standard settings. */\n @Input('pagination') set _pagination(value: Pagination) {\n if (value) {\n this.pagination = value;\n }\n }\n infiniteScroll: LoadMoreMode;\n /** Sets load more mode. */\n @Input('infiniteScroll') set _infiniteScroll(infiniteScroll: LoadMoreMode) {\n this.infiniteScroll = infiniteScroll;\n if (infiniteScroll) {\n this.pagination = this.deviceGridService.getInfiniteScrollPagination();\n }\n }\n /** Sets action controls (actions available for individual items). If not given, it defaults to standard actions. */\n @Input('actionControls') set _actionControls(value: ActionControl[]) {\n this.actionControls = value;\n }\n /** Determines whether items can be selected by clicking a checkbox in the first column. */\n @Input() selectable = false;\n /** Restricts selection to a single row only. Selection column displays radio button instead of checkboxes */\n @Input() singleSelection = false;\n /** Sets the base query which is appended to the request for data. */\n @Input() baseQuery: object = {};\n /** Sets bulk action controls (actions available for items selected by user). If not given, it defaults to standard bulk actions. */\n @Input('bulkActionControls') set _bulkActionControls(value: BulkActionControl[]) {\n if (value) {\n this.bulkActionControls = value;\n } else {\n this.bulkActionControls = this.deviceGridService.getDefaultBulkActionControls();\n }\n }\n /** Sets header action controls (actions available from the grid header). If not given, it defaults to empty list of actions. */\n @Input('headerActionControls') set _headerActionControls(value: HeaderActionControl[]) {\n if (value) {\n this.headerActionControls = value;\n } else {\n this.headerActionControls = this.deviceGridService.getDefaultHeaderActionControls();\n }\n }\n @Input() childDeviceGrid = false;\n @Input() parentDeviceId: string;\n /** Sets the withChildren query which is appended to the request. */\n @Input() withChildren = false;\n /**\n * Enables the search for devices where any device propery is matched agains the search term.\n * Enabled by default. This input does not take effect if the <code>childDeviceGrid</code> input is set to <code>true</code>\n */\n @Input() showSearch = true;\n /**\n * Sets the class name used for active rows (last clicked).\n * Set empty string to disable appending active class to grid rows.\n */\n @Input()\n activeClassName = 'active';\n /** Emits an event when columns configuration changes. */\n @Output() onColumnsChange: EventEmitter<Column[]> = new EventEmitter<Column[]>();\n @Output() onFilterChange: EventEmitter<FilterConfig[]> = new EventEmitter<FilterConfig[]>();\n @Output() onDeviceQueryStringChange: EventEmitter<string> = new EventEmitter<string>();\n /** Emits an event when items selection changes. The array contains ids of selected items. */\n @Output() itemsSelect = new EventEmitter<string[]>();\n\n actionControls: ActionControl[] = [];\n appliedFilters: FilterConfig[] = [];\n pagination: Pagination = this.deviceGridService.getDefaultPagination();\n bulkActionControls: BulkActionControl[] = this.deviceGridService.getDefaultBulkActionControls();\n headerActionControls: HeaderActionControl[] =\n this.deviceGridService.getDefaultHeaderActionControls();\n serverSideDataCallback: ServerSideDataCallback;\n\n @ViewChild(DataGridComponent, { static: true })\n dataGrid: DataGridComponent;\n productExperienceEvent: ProductExperienceEvent;\n\n noResultsMessage = gettext('No matching devices.');\n noDataMessage = gettext('No devices to display.');\n noResultsSubtitle = gettext('Refine your search terms');\n\n private destroyed$: Subject<void> = new Subject();\n\n constructor(public deviceGridService: DeviceGridService) {\n this.serverSideDataCallback = this.onDataSourceModifier.bind(this);\n }\n\n ngOnDestroy(): void {\n this.destroyed$.next();\n this.destroyed$.complete();\n }\n\n trackByName(_index, column: Column): string {\n return column.name;\n }\n\n async onDataSourceModifier(\n dataSourceModifier: DataSourceModifier\n ): Promise<ServerSideDataResult> {\n let serverSideDataResult: ServerSideDataResult;\n let filteredSize: number;\n let size: number;\n if (this.childDeviceGrid) {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getChildDeviceData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n this.parentDeviceId\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCountChildDevices(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.parentDeviceId\n )\n );\n size = await alertOnError(\n this.deviceGridService.getTotalChildDevices(this.baseQuery, this.parentDeviceId)\n );\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n } else {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n dataSourceModifier.searchText\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCount(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n dataSourceModifier.searchText\n )\n );\n size = await alertOnError(this.deviceGridService.getTotal(this.baseQuery));\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n }\n\n this.onColumnsChange.emit(dataSourceModifier.columns);\n this.onDeviceQueryStringChange.emit(\n this.deviceGridService.getDeviceQueryString(\n dataSourceModifier.columns,\n this.baseQuery,\n dataSourceModifier.searchText,\n false // Search is not applied for smart groups\n )\n );\n\n if (this.dataCallback) {\n serverSideDataResult = this.dataCallback(serverSideDataResult);\n }\n\n return serverSideDataResult;\n }\n\n updateFiltering(\n columnNames: string[],\n action: {\n type: FilteringActionType;\n payload?: { filteringModifier: FilteringModifier };\n }\n ) {\n const { type } = action;\n if (type === FilteringActionType.ResetFilter) {\n this.dataGrid.clearFilters();\n } else {\n this.dataGrid.updateFiltering(columnNames, action);\n }\n }\n}\n","<c8y-data-grid\n [title]=\"title\"\n [loadMoreItemsLabel]=\"loadMoreItemsLabel\"\n [loadingItemsLabel]=\"loadingItemsLabel\"\n [columns]=\"columns\"\n [pagination]=\"pagination\"\n [infiniteScroll]=\"infiniteScroll\"\n [actionControls]=\"actionControls\"\n [selectable]=\"selectable\"\n [singleSelection]=\"singleSelection\"\n [bulkActionControls]=\"bulkActionControls\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n (itemsSelect)=\"itemsSelect.emit($event)\"\n [refresh]=\"refresh\"\n [showSearch]=\"showSearch && !childDeviceGrid\"\n [headerActionControls]=\"headerActionControls\"\n [activeClassName]=\"activeClassName\"\n c8yProductExperience\n inherit\n>\n <c8y-ui-empty-state\n [icon]=\"stats?.size > 0 ? 'search' : 'c8y-device-management'\"\n [title]=\"stats?.size > 0 ? (noResultsMessage | translate) : (noDataMessage | translate)\"\n [subtitle]=\"stats?.size > 0 ? (noResultsSubtitle | translate) : null\"\n *emptyStateContext=\"let stats\"\n [horizontal]=\"stats?.size > 0\"\n ></c8y-ui-empty-state>\n\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n</c8y-data-grid>\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport {\n CommonModule,\n DataGridModule,\n DeviceStatusModule,\n DynamicFormsModule,\n FormsModule,\n ProductExperienceModule\n} from '@c8y/ngx-components';\nimport { AssetSelectorModule } from '@c8y/ngx-components/assets-navigator';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { AlarmsCellRendererComponent } from './columns/alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './columns/alarms.header-cell-renderer.component';\nimport { GroupCellRendererComponent } from './columns/group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './columns/group.filtering-form-renderer.component';\nimport { ModelCellRendererComponent } from './columns/model.cell-renderer.component';\nimport { NameCellRendererComponent } from './columns/name.cell-renderer.component';\nimport { RegistrationDateCellRendererComponent } from './columns/registration-date.cell-renderer.component';\nimport { SerialNumberCellRendererComponent } from './columns/serial-number.cell-renderer.component';\nimport { DeviceStatusCellRendererComponent } from './columns/status.cell-renderer.component';\nimport { DeviceGridComponent } from './device-grid.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n DeviceStatusModule,\n DataGridModule,\n AssetSelectorModule,\n DynamicFormsModule,\n PopoverModule,\n RouterModule,\n ProductExperienceModule,\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ],\n exports: [\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ]\n})\nexport class DeviceGridModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.ColumnUtilService","gettext","i2","i3","i4.ColumnUtilService","i1.DeviceGridService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-device-grid.mjs","sources":["../../device-grid/columns/column-util.service.ts","../../device-grid/columns/alarms.cell-renderer.component.ts","../../device-grid/columns/alarms.cell-renderer.component.html","../../device-grid/columns/alarms.header-cell-renderer.component.ts","../../device-grid/columns/alarms.device-grid-column.ts","../../device-grid/columns/group.cell-renderer.component.ts","../../device-grid/columns/group.cell-renderer.component.html","../../device-grid/columns/group.filtering-form-renderer.component.ts","../../device-grid/columns/group.filtering-form-renderer.component.html","../../device-grid/columns/group.device-grid-column.ts","../../device-grid/columns/imei.device-grid-column.ts","../../device-grid/columns/model.cell-renderer.component.ts","../../device-grid/columns/model.device-grid-column.ts","../../device-grid/columns/name.cell-renderer.component.ts","../../device-grid/columns/name.device-grid-column.ts","../../device-grid/columns/registration-date.cell-renderer.component.ts","../../device-grid/columns/registration-date.device-grid-column.ts","../../device-grid/columns/serial-number.cell-renderer.component.ts","../../device-grid/columns/serial-number.device-grid-column.ts","../../device-grid/columns/status.cell-renderer.component.ts","../../device-grid/columns/status.device-grid-column.ts","../../device-grid/columns/system-id.device-grid-column.ts","../../device-grid/columns/type.device-grid-column.ts","../../device-grid/columns/icon.cell-renderer.component.ts","../../device-grid/device-grid.service.ts","../../device-grid/device-grid.component.ts","../../device-grid/device-grid.component.html","../../device-grid/device-grid.module.ts","../../device-grid/c8y-ngx-components-device-grid.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { IManagedObject } from '@c8y/client';\nimport { TranslateService } from '@ngx-translate/core';\nimport { map, remove, sortBy } from 'lodash-es';\n\n/**\n * Service contains logic extracted from the device-grid service to avoid circular dependency MTM-40239.\n */\n\n@Injectable({ providedIn: 'root' })\nexport class ColumnUtilService {\n constructor(protected translateService: TranslateService) {}\n\n getAlarmsHref(device: IManagedObject): string {\n return `${this.getHref(device)}/alarms`;\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n if (groupOrDevice.c8y_IsDeviceGroup || groupOrDevice.c8y_IsDynamicGroup) {\n return `${prefix}group/${groupOrDevice.id}`;\n }\n return `${prefix}device/${groupOrDevice.id}`;\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n const assetParentsReferences = device.assetParents.references;\n const assetParents = map(assetParentsReferences, 'managedObject');\n const sortedByName = sortBy(assetParents, ['name']);\n const featuredItems = remove(sortedByName, { id: featuredParentId });\n const items = featuredItems.concat(sortedByName);\n const names = map(items, 'name');\n return names.join(', ');\n }\n\n getModel(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n return hardware && hardware.model;\n }\n\n getProperName(device: IManagedObject): string {\n const { id, name } = device;\n return name ? name : this.translateService.instant('Device {{id}}', { id });\n }\n\n getSerialNumber(device: IManagedObject): string {\n const hardware = this.getHardware(device);\n return hardware && hardware['serialNumber'];\n }\n\n private getHardware(device: IManagedObject): any {\n return device && device['c8y_Hardware'];\n }\n}\n","import { Component } from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { CellRendererContext, IconDirective, C8yTranslatePipe } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\nimport { NgIf } from '@angular/common';\n\n@Component({\n templateUrl: './alarms.cell-renderer.component.html',\n selector: 'c8y-alarms-cell-renderer',\n imports: [NgIf, IconDirective, C8yTranslatePipe]\n})\nexport class AlarmsCellRendererComponent {\n readonly linkAriaLabel = gettext('See alarms for device \"{{ name }}\"');\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","<a\n class=\"d-flex a-i-center flex-wrap gap-4 no-decoration\"\n [href]=\"columnUtilService.getAlarmsHref(context.item)\"\n [attr.aria-label]=\"\n linkAriaLabel | translate: { name: columnUtilService.getProperName(context.item) }\n \"\n *ngIf=\"\n context.item.c8y_ActiveAlarmsStatus?.critical ||\n context.item.c8y_ActiveAlarmsStatus?.major ||\n context.item.c8y_ActiveAlarmsStatus?.minor ||\n context.item.c8y_ActiveAlarmsStatus?.warning\n \"\n>\n <span\n class=\"c8y-icon-badge\"\n data-cy=\"alarms.cell-renderer--critical-alarm-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.critical }} {{ 'Critical alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.critical\"\n >\n <i [c8yIcon]=\"'exclamation-circle'\" class=\"status critical stroked-icon\" data-cy=\"alarms.cell-renderer--critical-alarm-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.critical }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.major }} {{ 'Major alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.major\"\n >\n <i [c8yIcon]=\"'warning'\" class=\"status major stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.major }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.minor }} {{ 'Minor alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.minor\"\n >\n <i [c8yIcon]=\"'high-priority'\" class=\"status minor stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.minor }}</span>\n </span>\n <span\n class=\"c8y-icon-badge\"\n title=\"{{ context.item.c8y_ActiveAlarmsStatus?.warning }} {{ 'Warning alarms' | translate }}\"\n *ngIf=\"context.item.c8y_ActiveAlarmsStatus?.warning\"\n >\n <i [c8yIcon]=\"'info-circle'\" class=\"status warning stroked-icon\"></i>\n <span class=\"badge badge-info\">{{ context.item.c8y_ActiveAlarmsStatus?.warning }}</span>\n </span>\n</a>\n","import { Component } from '@angular/core';\nimport { CellRendererContext, IconDirective, C8yTranslatePipe } from '@c8y/ngx-components';\nimport { PopoverDirective } from 'ngx-bootstrap/popover';\n\n@Component({\n template: `\n <div class=\"d-flex\">\n <span class=\"text-truncate\" [title]=\"context.property.header | translate\">\n {{ context.property.header | translate }}\n </span>\n <button\n class=\"btn-help btn-help--sm a-s-center\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"'Only includes alarms for the parent device.' | translate\"\n placement=\"bottom\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n (click)=\"$event.stopPropagation()\"\n >\n <i c8yIcon=\"question-circle-o\"></i>\n </button>\n </div>\n `,\n selector: 'c8y-alarms-header-cell-renderer',\n imports: [PopoverDirective, IconDirective, C8yTranslatePipe]\n})\nexport class AlarmsHeaderCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnConfig } from '@c8y/ngx-components';\nimport { map } from 'lodash-es';\nimport { AlarmsCellRendererComponent } from './alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './alarms.header-cell-renderer.component';\n\nexport class AlarmsDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'alarms';\n this.header = gettext('Alarms');\n this.headerCellRendererComponent = AlarmsHeaderCellRendererComponent;\n this.cellRendererComponent = AlarmsCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n key: 'alarm',\n templateOptions: {\n label: 'Show items'\n },\n fieldGroup: [\n {\n key: 'critical',\n type: 'switch',\n props: {\n label: gettext('With active critical alarms')\n }\n },\n {\n key: 'major',\n type: 'switch',\n props: {\n label: gettext('With active major alarms')\n }\n },\n {\n key: 'minor',\n type: 'switch',\n props: {\n label: gettext('With active minor alarms')\n }\n },\n {\n key: 'warning',\n type: 'switch',\n props: {\n label: gettext('With active warnings')\n }\n },\n {\n key: 'none',\n type: 'switch',\n props: {\n label: gettext('With no active alarms or warnings')\n }\n }\n ],\n validators: {\n atLeastOneSelected: {\n expression: control => {\n const alarmGroup = control.value;\n return (\n alarmGroup.critical ||\n alarmGroup.major ||\n alarmGroup.minor ||\n alarmGroup.warning ||\n alarmGroup.none\n );\n }\n }\n }\n }\n ],\n formGroup: new FormGroup({}),\n getFilter: model => {\n const filter: any = {};\n const ors = [];\n if (model.alarm.critical) {\n ors.push({ 'c8y_ActiveAlarmsStatus.critical': { __gt: 0 } });\n }\n if (model.alarm.major) {\n ors.push({ 'c8y_ActiveAlarmsStatus.major': { __gt: 0 } });\n }\n if (model.alarm.minor) {\n ors.push({ 'c8y_ActiveAlarmsStatus.minor': { __gt: 0 } });\n }\n if (model.alarm.warning) {\n ors.push({ 'c8y_ActiveAlarmsStatus.warning': { __gt: 0 } });\n }\n if (model.alarm.none) {\n ors.push({ __not: { __has: 'c8y_ActiveAlarmsStatus' } });\n ors.push({\n __and: map(['critical', 'major', 'minor', 'warning'], sev => {\n const zero = {};\n const has = { __not: { __has: undefined } };\n const key = `c8y_ActiveAlarmsStatus.${sev}`;\n zero[key] = 0;\n has.__not.__has = key;\n return { __or: [zero, has] };\n })\n });\n }\n if (ors.length) {\n filter.__or = ors;\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [\n { path: 'c8y_ActiveAlarmsStatus.critical' },\n { path: 'c8y_ActiveAlarmsStatus.major' },\n { path: 'c8y_ActiveAlarmsStatus.minor' },\n { path: 'c8y_ActiveAlarmsStatus.warning' }\n ]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n templateUrl: './group.cell-renderer.component.html',\n selector: 'c8y-group-cell-renderer'\n})\nexport class GroupCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","<span\n title=\"{{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\"\n>\n {{\n columnUtilService.getParentsNames(\n context.item,\n context.property.externalFilterQuery?.deviceGroupId\n )\n }}\n</span>\n","import { Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';\nimport {\n Column,\n FilteringFormRendererContext,\n C8yTranslateDirective,\n C8yTranslatePipe\n} from '@c8y/ngx-components';\nimport { cloneDeep } from 'lodash-es';\nimport { AssetSelectorComponent } from '@c8y/ngx-components/assets-navigator';\n\n@Component({\n templateUrl: './group.filtering-form-renderer.component.html',\n imports: [AssetSelectorComponent, C8yTranslateDirective, C8yTranslatePipe]\n})\nexport class GroupFilteringFormRendererComponent implements OnInit {\n @ViewChild('assetSelector', { static: false, read: ElementRef }) assetSelector: ElementRef;\n model: any;\n preselected: string[] = [];\n initialSelection: string[] = [];\n isApplyDisabled = true;\n\n constructor(public context: FilteringFormRendererContext) {}\n\n @HostListener('keyup.enter', ['$event']) onEnterKeyUp(event: KeyboardEvent) {\n event.stopPropagation();\n this.applyFilter();\n }\n @HostListener('keydown.escape', ['$event']) onEscapeKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n this.resetFilter();\n }\n\n ngOnInit() {\n const column: Column = this.context.property;\n this.model = cloneDeep(column.externalFilterQuery || {});\n this.preselected = this.model.selectedNodes || [];\n this.initialSelection = [...this.preselected];\n }\n\n ngAfterViewInit() {\n setTimeout(() => {\n try {\n this.assetSelector.nativeElement.querySelector('input').focus();\n } catch (ex) {\n // intended empty\n }\n }, 250);\n }\n\n applyFilter() {\n this.context.applyFilter({\n externalFilterQuery: this.model\n });\n this.isApplyDisabled = true; // Disable button after applying the filter\n this.initialSelection = [...this.model.selectedNodes]; // Update initial selection\n }\n\n resetFilter() {\n this.context.resetFilter();\n this.model.selectedNodes = [];\n this.preselected = [];\n this.isApplyDisabled = true; // Disable button after resetting the filter\n }\n\n selectionChanged(nodes) {\n this.model.selectedNodes = nodes.items;\n this.isApplyDisabled = !this.isSelectionChanged();\n }\n\n private isSelectionChanged(): boolean {\n if (this.model.selectedNodes.length !== this.initialSelection.length) {\n return true;\n }\n const currentSelectionSet = new Set(this.model.selectedNodes);\n for (const item of this.initialSelection) {\n if (!currentSelectionSet.has(item)) {\n return true;\n }\n }\n return false;\n }\n}\n","<c8y-asset-selector\n class=\"bg-component\"\n #assetSelector\n [config]=\"{\n groupsOnly: true,\n multi: true,\n groupsSelectable: true,\n search: true,\n label: ''\n }\"\n [selected]=\"preselected\"\n (onSelected)=\"selectionChanged($event)\"\n></c8y-asset-selector>\n\n<div class=\"data-grid__dropdown__footer d-flex separator-top\">\n <button\n class=\"btn btn-default btn-sm m-r-8 flex-grow\"\n title=\"{{ 'Reset' | translate }}\"\n (click)=\"resetFilter()\"\n translate\n >\n Reset\n </button>\n\n <button\n class=\"btn btn-primary btn-sm flex-grow\"\n title=\"{{ 'Apply' | translate }}\"\n (click)=\"applyFilter()\"\n [disabled]=\"isApplyDisabled\"\n translate\n >\n Apply\n </button>\n</div>\n","import { IManagedObject } from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport {\n BaseColumn,\n ColumnConfig,\n FilterChip,\n PartialFilterChipGenerationType\n} from '@c8y/ngx-components';\nimport { GroupCellRendererComponent } from './group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './group.filtering-form-renderer.component';\n\nexport class GroupDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'group';\n this.header = gettext('Group');\n this.cellRendererComponent = GroupCellRendererComponent;\n this.filteringFormRendererComponent = GroupFilteringFormRendererComponent;\n this.filterable = true;\n this.filteringConfig = {\n generateChips(model): PartialFilterChipGenerationType[] {\n if (model.selectedNodes) {\n return model.selectedNodes.map(mo => ({\n displayValue: mo.name,\n value: mo,\n remove(): Partial<FilterChip> {\n const { externalFilterQuery, columnName, value } = this;\n const nodes = externalFilterQuery.selectedNodes.filter(node => node.id !== value.id);\n\n return {\n externalFilterQuery: { selectedNodes: nodes },\n columnName: columnName\n };\n }\n }));\n }\n },\n getFilter(model) {\n const filter: any = {};\n if (model.selectedNodes) {\n filter.__or = model.selectedNodes.map((mo: IManagedObject) => {\n if (mo.c8y_DeviceQueryString) {\n return { __useFilterQueryString: mo.c8y_DeviceQueryString };\n }\n return { __bygroupid: mo.id };\n });\n }\n return filter;\n }\n };\n this.sortable = false;\n }\n}\n","import { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnConfig, getBasicInputArrayFormFieldConfig } from '@c8y/ngx-components';\n\nexport class ImeiDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'c8y_Mobile.imei';\n this.name = 'imei';\n this.header = gettext('IMEI');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'imeis',\n label: gettext('Show items with IMEI'),\n addText: gettext('Add next`IMEI`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '46543432321'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.imeis.length) {\n filter[this.path] = { __in: model.imeis };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getModel(context.item) }} `,\n selector: 'c8y-model-cell-renderer'\n})\nexport class ModelCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnConfig, getBasicInputArrayFormFieldConfig } from '@c8y/ngx-components';\nimport { ModelCellRendererComponent } from './model.cell-renderer.component';\n\nexport class ModelDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareModelPath = 'c8y_Hardware.model';\n\n this.name = 'model';\n this.header = gettext('Model');\n this.cellRendererComponent = ModelCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'models',\n label: gettext('Show items with model'),\n addText: gettext('Add next`model`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: 'NTC-220'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.models.length) {\n filter.push = {\n [hardwareModelPath]: { __in: model.models }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareModelPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: `\n <a\n class=\"interact\"\n title=\"{{ columnUtilService.getProperName(context.item) }}\"\n [href]=\"columnUtilService.getHref(context.item)\"\n >\n {{ columnUtilService.getProperName(context.item) }}\n </a>\n `,\n selector: 'c8y-name-cell-renderer'\n})\nexport class NameCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import { gettext } from '@c8y/ngx-components/gettext';\nimport {\n BaseColumn,\n ColumnConfig,\n ColumnDataRecordClassName,\n getBasicInputArrayFormFieldConfig\n} from '@c8y/ngx-components';\nimport { NameCellRendererComponent } from './name.cell-renderer.component';\n\nexport class NameDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n this.name = 'name';\n this.path = 'name';\n this.header = gettext('Name');\n this.cellCSSClassName = ColumnDataRecordClassName.Header;\n this.cellRendererComponent = NameCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'names',\n label: gettext('Show items with name'),\n addText: gettext('Add next`name`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('My device`DEVICE_NAME`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.names.length) {\n filter.name = { __in: model.names };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext, DatePipe } from '@c8y/ngx-components';\n\n@Component({\n template: ` {{ context.value | c8yDate }} `,\n selector: 'c8y-registration-date-cell-renderer',\n imports: [DatePipe]\n})\nexport class RegistrationDateCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnConfig } from '@c8y/ngx-components';\nimport { RegistrationDateCellRendererComponent } from './registration-date.cell-renderer.component';\n\nexport class RegistrationDateDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'creationTime';\n this.name = 'registrationDate';\n this.header = gettext('Registration date');\n this.cellRendererComponent = RegistrationDateCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n key: 'registrationDate',\n templateOptions: {\n label: gettext('Show items registered`between dates`')\n },\n fieldGroup: [\n {\n type: 'date-time',\n key: 'after',\n templateOptions: {\n label: gettext('from`date`')\n },\n expressionProperties: {\n 'templateOptions.maxDate': (model: any) => model?.before\n }\n },\n {\n type: 'date-time',\n key: 'before',\n templateOptions: {\n label: gettext('to`date`')\n },\n expressionProperties: {\n 'templateOptions.minDate': (model: any) => model?.after\n }\n }\n ],\n validators: {\n atLeastOneFilled: {\n expression: (formGroup: any) => {\n const after = formGroup.get('after').value;\n const before = formGroup.get('before').value;\n return after || before;\n }\n }\n }\n }\n ],\n formGroup: new FormGroup({}),\n getFilter: model => {\n const filter: any = {};\n const dates = model && model.registrationDate;\n if (dates && (dates.after || dates.before)) {\n filter.__and = [];\n if (dates.after) {\n const after = this.formatDate(dates.after);\n filter.__and.push({\n 'creationTime.date': { __gt: after }\n });\n }\n if (dates.before) {\n const before = this.formatDate(dates.before);\n filter.__and.push({\n 'creationTime.date': { __lt: before }\n });\n }\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: 'creationTime.date' }]\n };\n }\n\n protected formatDate(dateToFormat: string): string {\n return new Date(dateToFormat).toISOString();\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext } from '@c8y/ngx-components';\nimport { ColumnUtilService } from './column-util.service';\n\n@Component({\n template: ` {{ columnUtilService.getSerialNumber(context.item) }} `,\n selector: 'c8y-serial-number-cell-renderer'\n})\nexport class SerialNumberCellRendererComponent {\n constructor(\n public context: CellRendererContext,\n public columnUtilService: ColumnUtilService\n ) {}\n}\n","import { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnConfig, getBasicInputArrayFormFieldConfig } from '@c8y/ngx-components';\nimport { SerialNumberCellRendererComponent } from './serial-number.cell-renderer.component';\n\nexport class SerialNumberDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n const hardwareSerialNumberPath = 'c8y_Hardware.serialNumber';\n\n this.name = 'serialNumber';\n this.header = gettext('Serial number');\n this.cellRendererComponent = SerialNumberCellRendererComponent;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'serialNumbers',\n label: gettext('Show items with serial number'),\n addText: gettext('Add next`serial number`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '54321-123'\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.serialNumbers.length) {\n filter.push = {\n [hardwareSerialNumberPath]: { __in: model.serialNumbers }\n };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: hardwareSerialNumberPath }]\n };\n }\n}\n","import { Component } from '@angular/core';\nimport { CellRendererContext, DeviceStatusComponent } from '@c8y/ngx-components';\n\n@Component({\n template: ` <device-status [mo]=\"context.item\"></device-status> `,\n selector: 'c8y-device-status-cell-renderer',\n imports: [DeviceStatusComponent]\n})\nexport class DeviceStatusCellRendererComponent {\n constructor(public context: CellRendererContext) {}\n}\n","import { FormGroup } from '@angular/forms';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnDataType, PushStatus, SendStatus } from '@c8y/ngx-components';\nimport { DeviceStatusCellRendererComponent } from './status.cell-renderer.component';\n\nexport class StatusDeviceGridColumn extends BaseColumn {\n constructor() {\n super();\n\n const responseIntervalPath = 'c8y_RequiredAvailability.responseInterval';\n const responseIntervalLessThanOrEqualTo0 = { [responseIntervalPath]: { __le: 0 } };\n const responseIntervalNotDefined = { __not: { __has: responseIntervalPath } };\n\n const availabilityStatusPath = 'c8y_Availability.status';\n const availabilityStatusAvailable = { [availabilityStatusPath]: SendStatus.AVAILABLE };\n const availabilityStatusUnavailable = { [availabilityStatusPath]: SendStatus.UNAVAILABLE };\n const availabilityStatusMaintenance = { [availabilityStatusPath]: SendStatus.MAINTENANCE };\n const availabilityStatusNotDefined = { __not: { __has: availabilityStatusPath } };\n\n const connectionStatusPath = 'c8y_Connection.status';\n const connectionStatusConnected = { [connectionStatusPath]: PushStatus.CONNECTED };\n const connectionStatusDisconnected = { [connectionStatusPath]: PushStatus.DISCONNECTED };\n const connectionStatusMaintenance = { [connectionStatusPath]: PushStatus.MAINTENANCE };\n\n const deviceUnderMaintenance = {\n __or: [\n responseIntervalLessThanOrEqualTo0,\n availabilityStatusMaintenance,\n connectionStatusMaintenance\n ]\n };\n const deviceNotUnderMaintenance = {\n // using __and of __nots because backend does not support __not with __ors\n __and: [\n { __not: responseIntervalLessThanOrEqualTo0 },\n { __not: availabilityStatusMaintenance },\n { __not: connectionStatusMaintenance }\n ]\n };\n\n this.name = 'status';\n this.header = gettext('Status');\n this.dataType = ColumnDataType.Icon;\n this.cellRendererComponent = DeviceStatusCellRendererComponent;\n this.resizable = false;\n\n this.filterable = true;\n this.filteringConfig = {\n fields: [\n {\n type: 'object',\n templateOptions: {\n label: 'Show items with status'\n },\n fieldGroup: [\n {\n key: 'sendStatus',\n type: 'object',\n props: {\n label: gettext('Send status')\n },\n fieldGroup: [\n {\n key: 'sendOnline',\n type: 'switch',\n props: { label: gettext('Online') }\n },\n {\n key: 'sendOffline',\n type: 'switch',\n props: { label: gettext('Offline') }\n },\n {\n key: 'sendUnknown',\n type: 'switch',\n props: { label: gettext('Unknown') }\n },\n {\n key: 'sendNotMonitored',\n type: 'switch',\n props: { label: gettext('Not monitored') }\n }\n ]\n },\n {\n key: 'pushStatus',\n type: 'object',\n props: {\n label: gettext('Push status')\n },\n fieldGroup: [\n {\n key: 'pushOnline',\n type: 'switch',\n props: { label: gettext('Online') }\n },\n {\n key: 'pushOffline',\n type: 'switch',\n props: { label: gettext('Offline') }\n },\n {\n key: 'pushNotMonitored',\n type: 'switch',\n props: { label: gettext('Not monitored') }\n }\n ]\n },\n {\n key: 'maintenanceStatus',\n type: 'object',\n props: {\n label: gettext('Maintenance status')\n },\n fieldGroup: [\n {\n key: 'maintenance',\n type: 'switch',\n props: { label: gettext('Device is under maintenance') }\n }\n ]\n }\n ],\n validators: {\n atLeastOneFilled: {\n expression: (formGroup: any) => {\n const sendStatus = formGroup.get('sendStatus').value || {};\n const pushStatus = formGroup.get('pushStatus').value || {};\n const maintenanceStatus = formGroup.get('maintenanceStatus').value || {};\n\n return (\n sendStatus.sendOnline ||\n sendStatus.sendOffline ||\n sendStatus.sendUnknown ||\n sendStatus.sendNotMonitored ||\n pushStatus.pushOnline ||\n pushStatus.pushOffline ||\n pushStatus.pushNotMonitored ||\n maintenanceStatus.maintenance\n );\n }\n }\n }\n }\n ],\n formGroup: new FormGroup({}),\n getFilter(model) {\n const filter: any = {};\n const ors = [];\n\n if (model?.sendStatus?.sendOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusAvailable]\n });\n }\n\n if (model?.sendStatus?.sendOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusUnavailable]\n });\n }\n\n if (model?.sendStatus?.sendUnknown) {\n ors.push({\n __and: [deviceNotUnderMaintenance, availabilityStatusNotDefined]\n });\n }\n\n if (model?.sendStatus?.sendNotMonitored || model?.pushStatus?.pushNotMonitored) {\n ors.push(responseIntervalNotDefined);\n }\n\n if (model?.pushStatus?.pushOnline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusConnected]\n });\n }\n\n if (model?.pushStatus?.pushOffline) {\n ors.push({\n __and: [deviceNotUnderMaintenance, connectionStatusDisconnected]\n });\n }\n\n if (model?.maintenanceStatus?.maintenance) {\n ors.push(deviceUnderMaintenance);\n }\n\n if (ors.length) {\n filter.__or = ors;\n }\n\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: availabilityStatusPath }]\n };\n }\n}\n","import { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnConfig, getBasicInputArrayFormFieldConfig } from '@c8y/ngx-components';\n\nexport class SystemIdDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.path = 'id';\n this.name = 'systemId';\n this.header = gettext('System ID');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'ids',\n label: gettext('Show items with system ID'),\n addText: gettext('Add next`id`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: '10300'\n }),\n getFilter: (model: any): any => {\n const filter: any = {};\n if (model.ids.length) {\n filter[this.path] = { __in: model.ids };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = {\n pathSortingConfigs: [{ path: this.path }]\n };\n }\n}\n","import { gettext } from '@c8y/ngx-components/gettext';\nimport { BaseColumn, ColumnConfig, getBasicInputArrayFormFieldConfig } from '@c8y/ngx-components';\n\nexport class TypeDeviceGridColumn extends BaseColumn {\n constructor(initialColumnConfig?: ColumnConfig) {\n super(initialColumnConfig);\n\n this.name = 'type';\n this.path = 'type';\n this.header = gettext('Type');\n\n this.filterable = true;\n this.filteringConfig = {\n fields: getBasicInputArrayFormFieldConfig({\n key: 'types',\n label: gettext('Show devices with type'),\n addText: gettext('Add next`type`'),\n tooltip: gettext('Use * as a wildcard character'),\n placeholder: gettext('MyType`DEVICE_TYPE`')\n }),\n getFilter(model: any): any {\n const filter: any = {};\n if (model.types.length) {\n filter.type = { __in: model.types };\n }\n return filter;\n }\n };\n\n this.sortable = true;\n this.sortingConfig = { pathSortingConfigs: [{ path: 'type' }] };\n }\n}\n","import { Component } from '@angular/core';\nimport {\n BaseColumn,\n CellRendererContext,\n ColumnDataType,\n IconDirective\n} from '@c8y/ngx-components';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport { SupportedIcons } from '@c8y/ngx-components/icon-selector/icons';\n\n@Component({\n selector: 'c8y-icon-device-grid-column',\n standalone: true,\n imports: [IconDirective],\n template: `<i [c8yIcon]=\"icon\"></i>`\n})\nexport class IconDeviceGridColumnComponent {\n icon: SupportedIcons;\n constructor(context: CellRendererContext) {\n const propertyAsIconColumn = context.property as IconDeviceGridColumn;\n if (propertyAsIconColumn && typeof propertyAsIconColumn.iconRetriever === 'function') {\n this.icon = propertyAsIconColumn.iconRetriever(context);\n } else {\n this.icon = context.value;\n }\n }\n}\n\nexport class IconDeviceGridColumn extends BaseColumn {\n constructor(\n options: Partial<BaseColumn> = {},\n public iconRetriever?: (context: CellRendererContext) => SupportedIcons\n ) {\n super(options);\n this.dataType = ColumnDataType.Icon;\n this.name = 'icon';\n this.path = 'icon';\n this.filterable = false;\n this.resizable = false;\n this.header = gettext('Icon');\n this.cellRendererComponent = IconDeviceGridColumnComponent;\n\n Object.assign(this, options);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { IManagedObject, InventoryService, IUser, UserService } from '@c8y/client';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport {\n AlertService,\n BulkActionControl,\n Column,\n DataGridService,\n GridConfig,\n HeaderActionControl,\n InventorySearchService,\n ModalService,\n Pagination,\n Status,\n UserPreferencesService\n} from '@c8y/ngx-components';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Observable } from 'rxjs';\nimport { AlarmsDeviceGridColumn } from './columns/alarms.device-grid-column';\nimport { ColumnUtilService } from './columns/column-util.service';\nimport { GroupDeviceGridColumn } from './columns/group.device-grid-column';\nimport { ImeiDeviceGridColumn } from './columns/imei.device-grid-column';\nimport { ModelDeviceGridColumn } from './columns/model.device-grid-column';\nimport { NameDeviceGridColumn } from './columns/name.device-grid-column';\nimport { RegistrationDateDeviceGridColumn } from './columns/registration-date.device-grid-column';\nimport { SerialNumberDeviceGridColumn } from './columns/serial-number.device-grid-column';\nimport { StatusDeviceGridColumn } from './columns/status.device-grid-column';\nimport { SystemIdDeviceGridColumn } from './columns/system-id.device-grid-column';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DeviceGridService extends DataGridService {\n protected GRID_CONFIG_DEFAULT_STORAGE_KEY = 'device-grid-config';\n\n constructor(\n protected inventoryService: InventoryService,\n protected userService: UserService,\n protected translateService: TranslateService,\n protected alertService: AlertService,\n protected modal: ModalService,\n protected columnUtilService: ColumnUtilService,\n protected userPreferencesService: UserPreferencesService,\n protected searchService: InventorySearchService\n ) {\n super(userPreferencesService);\n }\n\n getDefaultColumns(): Column[] {\n const defaultColumns = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new GroupDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return defaultColumns;\n }\n\n getChildDeviceGridColumns(): Column[] {\n const childDeviceGridColumn = [\n new StatusDeviceGridColumn(),\n new NameDeviceGridColumn(),\n new ModelDeviceGridColumn(),\n new SerialNumberDeviceGridColumn(),\n new RegistrationDateDeviceGridColumn(),\n new SystemIdDeviceGridColumn(),\n new ImeiDeviceGridColumn(),\n new AlarmsDeviceGridColumn()\n ];\n\n return childDeviceGridColumn;\n }\n\n getDefaultPagination(): Pagination {\n return {\n pageSize: 25,\n currentPage: 1\n };\n }\n\n getInfiniteScrollPagination(): Pagination {\n return {\n pageSize: 50,\n currentPage: 1\n };\n }\n\n getDefaultBulkActionControls(): BulkActionControl[] {\n return [];\n }\n\n getDefaultHeaderActionControls(): HeaderActionControl[] {\n return [];\n }\n\n getProperName(device: IManagedObject): string {\n return this.columnUtilService.getProperName(device);\n }\n\n getModel(device: IManagedObject): string {\n return this.columnUtilService.getModel(device);\n }\n\n getSerialNumber(device: IManagedObject): string {\n return this.columnUtilService.getSerialNumber(device);\n }\n\n getParentsNames(device: IManagedObject, featuredParentId?: string | number): string {\n return this.columnUtilService.getParentsNames(device, featuredParentId);\n }\n\n getHref(groupOrDevice: IManagedObject, prefix = '#/'): string {\n return this.columnUtilService.getHref(groupOrDevice, prefix);\n }\n\n getAlarmsHref(device: IManagedObject): string {\n return this.columnUtilService.getAlarmsHref(device);\n }\n\n async delete(device: IManagedObject): Promise<void> {\n try {\n const deviceWithChildren = await (\n await this.inventoryService.detail(device, { withChildren: true })\n ).data;\n const hasChildDevices = deviceWithChildren.childDevices?.references?.length > 0;\n const hasChildAdditions = deviceWithChildren.childAdditions?.references?.length > 0;\n const hasChildAssets = deviceWithChildren.childAssets?.references?.length > 0;\n const showDeleteChildren = () => hasChildAdditions || hasChildDevices || hasChildAssets;\n const modalResult = await this.modal.confirm(\n gettext('Delete device'),\n this.translateService.instant(\n gettext(`You are about to delete device \"{{ name }}\". Do you want to proceed?`),\n device\n ),\n Status.DANGER,\n { ok: gettext('Delete'), cancel: gettext('Cancel') },\n {\n cascade: {\n text: gettext('Also delete child hierarchy of this device.'),\n checked: showDeleteChildren(),\n showIf: showDeleteChildren,\n disabledByKey: 'withDeviceUser'\n },\n withDeviceUser: {\n text: this.translateService.instant(\n gettext('Also delete associated device owner \"{{ owner }}\".'),\n device\n ),\n checked: false,\n showIf: () => {\n const isRootDevice = device.c8y_IsDevice;\n const hasDeviceUserAsOwner =\n device.owner &&\n this.userService.isDeviceUser({ id: device.owner } as unknown as IUser);\n\n return Boolean(isRootDevice && hasDeviceUserAsOwner);\n },\n disabledByKey: 'cascade'\n }\n }\n );\n await this.inventoryService.delete(\n device,\n (modalResult as { confirmOptions: { [key: string]: any } }).confirmOptions\n );\n this.alertService.success(gettext('Device deleted.'));\n return Promise.resolve();\n } catch (ex) {\n // only if not cancel from modal\n if (ex) {\n this.alertService.addServerFailure(ex);\n }\n return Promise.reject();\n }\n }\n\n async getData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n text = null\n ) {\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, false, text)),\n withGroups: true,\n withChildren,\n withTotalElements: true\n };\n return this.inventoryService.list(filters);\n }\n\n async getChildDeviceData(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n withChildren = false,\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, childDeviceFilters)),\n withGroups: true,\n withChildren\n };\n return this.inventoryService.childDevicesList(id, filters);\n }\n\n async getCount(columns: Column[], pagination: Pagination, query: any = {}, text: string = null) {\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, false, text)),\n withTotalElements: true\n };\n return (await this.inventoryService.list(filters)).paging.totalElements;\n }\n\n async getCountChildDevices(\n columns: Column[],\n pagination: Pagination,\n query: any = {},\n id: string\n ) {\n const childDeviceFilters = true;\n const filters = {\n ...(await this.getDevicesFilters(columns, pagination, query, childDeviceFilters)),\n withTotalElements: true\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalElements;\n }\n\n async getTotalChildDevices(query: any = {}, id: string): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n withTotalElements: true\n };\n return (await this.inventoryService.childDevicesList(id, filters)).paging.totalElements;\n }\n\n async getTotal(query: any = {}): Promise<number> {\n const filters = {\n q: this.queriesUtil.buildQuery(query),\n withTotalElements: true\n };\n return (await this.inventoryService.list(filters)).paging.totalElements;\n }\n\n getDeviceQueryString(\n columns: Column[],\n query: any,\n text: string,\n isWildcardSearchEnabled: boolean\n ): string {\n let fullQuery = this.getQueryObj(columns);\n if (text && isWildcardSearchEnabled) {\n fullQuery = this.queriesUtil.addAndFilter(fullQuery, {\n name: `*${text.trim().replace(/\\s+/g, '*')}*`\n });\n }\n fullQuery = this.queriesUtil.addAndFilter(fullQuery, query);\n return this.queriesUtil.buildQuery(fullQuery);\n }\n\n clearConfig(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY) {\n super.clearConfig(key);\n }\n\n getConfig$(key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY): Observable<GridConfig> {\n return super.getConfig$(key);\n }\n\n saveConfig$(\n config: GridConfig,\n key: string = this.GRID_CONFIG_DEFAULT_STORAGE_KEY\n ): Observable<GridConfig> {\n return super.saveConfig$(config, key);\n }\n\n private async getDevicesFilters(\n columns: Column[],\n pagination: Pagination,\n query: any,\n childDeviceFilters?: boolean,\n text?: string\n ) {\n const isWildcardSearchEnabled = await this.searchService.isWildcardSearchEnabled();\n return {\n ...(childDeviceFilters\n ? { query: this.getDeviceQueryString(columns, query, text, isWildcardSearchEnabled) }\n : { q: this.getDeviceQueryString(columns, query, text, isWildcardSearchEnabled) }),\n ...(text && !isWildcardSearchEnabled && { text }),\n pageSize: pagination.pageSize,\n currentPage: pagination.currentPage,\n withChildren: false,\n withTotalPages: true\n };\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n Output,\n ViewChild\n} from '@angular/core';\nimport { gettext } from '@c8y/ngx-components/gettext';\nimport {\n ActionControl,\n alertOnError,\n BulkActionControl,\n C8yTranslatePipe,\n Column,\n ColumnDirective,\n DataGridComponent,\n DataSourceModifier,\n EmptyStateComponent,\n EmptyStateContextDirective,\n FilteringActionType,\n FilteringModifier,\n HeaderActionControl,\n LoadMoreMode,\n Pagination,\n PRODUCT_EXPERIENCE_EVENT_SOURCE,\n ProductExperienceDirective,\n ProductExperienceEvent,\n ProductExperienceEventSource,\n ServerSideDataCallback,\n ServerSideDataResult\n} from '@c8y/ngx-components';\nimport { Subject } from 'rxjs';\nimport { DataCallback, FilterConfig } from './device-grid.model';\nimport { DeviceGridService } from './device-grid.service';\n\nimport { NgFor } from '@angular/common';\n\n@Component({\n selector: 'c8y-device-grid',\n templateUrl: './device-grid.component.html',\n providers: [\n {\n provide: PRODUCT_EXPERIENCE_EVENT_SOURCE,\n useExisting: forwardRef(() => DeviceGridComponent)\n }\n ],\n imports: [\n DataGridComponent,\n ProductExperienceDirective,\n EmptyStateContextDirective,\n EmptyStateComponent,\n NgFor,\n ColumnDirective,\n C8yTranslatePipe\n ]\n})\nexport class DeviceGridComponent implements OnDestroy, ProductExperienceEventSource {\n /** Optional callback function that allows to modify server side data result before it's rendered. */\n @Input() dataCallback: DataCallback;\n /** Takes an event emitter. When an event is emitted, the grid will be reloaded. */\n @Input() refresh: EventEmitter<void> = new EventEmitter();\n /** The title for the data grid, it's displayed in the grid's header. */\n @Input() title: string = gettext('Devices');\n /** The label for load more button. */\n @Input() loadMoreItemsLabel = gettext('Load more devices');\n /** The label for loading indicator. */\n @Input() loadingItemsLabel: string = gettext('Loading devices…');\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' column config is stored.\n */\n @Input() legacyConfigKey: string;\n /**\n * @deprecated\n *\n * Internal use only: used to define user preferences key under which 'All devices' filter/sorting config is stored.\n */\n @Input() legacyFilterKey: string;\n /** The list of columns to be displayed in the grid. If not given, it defaults to standard columns. */\n @Input('columns') columns: Column[] = this.deviceGridService.getDefaultColumns();\n /** Pagination settings, e.g. allows for setting current page or page size. If not given, defaults to standard settings. */\n @Input('pagination') set _pagination(value: Pagination) {\n if (value) {\n this.pagination = value;\n }\n }\n infiniteScroll: LoadMoreMode;\n /** Sets load more mode. */\n @Input('infiniteScroll') set _infiniteScroll(infiniteScroll: LoadMoreMode) {\n this.infiniteScroll = infiniteScroll;\n if (infiniteScroll) {\n this.pagination = this.deviceGridService.getInfiniteScrollPagination();\n }\n }\n /** Sets action controls (actions available for individual items). If not given, it defaults to standard actions. */\n @Input('actionControls') set _actionControls(value: ActionControl[]) {\n this.actionControls = value;\n }\n /** Determines whether items can be selected by clicking a checkbox in the first column. */\n @Input() selectable = false;\n /** Restricts selection to a single row only. Selection column displays radio button instead of checkboxes */\n @Input() singleSelection = false;\n /** Sets the base query which is appended to the request for data. */\n @Input() baseQuery: object = {};\n /** Sets bulk action controls (actions available for items selected by user). If not given, it defaults to standard bulk actions. */\n @Input('bulkActionControls') set _bulkActionControls(value: BulkActionControl[]) {\n if (value) {\n this.bulkActionControls = value;\n } else {\n this.bulkActionControls = this.deviceGridService.getDefaultBulkActionControls();\n }\n }\n /** Sets header action controls (actions available from the grid header). If not given, it defaults to empty list of actions. */\n @Input('headerActionControls') set _headerActionControls(value: HeaderActionControl[]) {\n if (value) {\n this.headerActionControls = value;\n } else {\n this.headerActionControls = this.deviceGridService.getDefaultHeaderActionControls();\n }\n }\n @Input() childDeviceGrid = false;\n @Input() parentDeviceId: string;\n /** Sets the withChildren query which is appended to the request. */\n @Input() withChildren = false;\n /**\n * Enables the search for devices where any device propery is matched agains the search term.\n * Enabled by default. This input does not take effect if the <code>childDeviceGrid</code> input is set to <code>true</code>\n */\n @Input() showSearch = true;\n /**\n * Sets the class name used for active rows (last clicked).\n * Set empty string to disable appending active class to grid rows.\n */\n @Input()\n activeClassName = 'active';\n /** Emits an event when columns configuration changes. */\n @Output() onColumnsChange: EventEmitter<Column[]> = new EventEmitter<Column[]>();\n @Output() onFilterChange: EventEmitter<FilterConfig[]> = new EventEmitter<FilterConfig[]>();\n @Output() onDeviceQueryStringChange: EventEmitter<string> = new EventEmitter<string>();\n /** Emits an event when items selection changes. The array contains ids of selected items. */\n @Output() itemsSelect = new EventEmitter<string[]>();\n\n actionControls: ActionControl[] = [];\n appliedFilters: FilterConfig[] = [];\n pagination: Pagination = this.deviceGridService.getDefaultPagination();\n bulkActionControls: BulkActionControl[] = this.deviceGridService.getDefaultBulkActionControls();\n headerActionControls: HeaderActionControl[] =\n this.deviceGridService.getDefaultHeaderActionControls();\n serverSideDataCallback: ServerSideDataCallback;\n\n @ViewChild(DataGridComponent, { static: true })\n dataGrid: DataGridComponent;\n productExperienceEvent: ProductExperienceEvent;\n\n noResultsMessage = gettext('No matching devices.');\n noDataMessage = gettext('No devices to display.');\n noResultsSubtitle = gettext('Refine your search terms');\n\n private destroyed$: Subject<void> = new Subject();\n\n constructor(public deviceGridService: DeviceGridService) {\n this.serverSideDataCallback = this.onDataSourceModifier.bind(this);\n }\n\n ngOnDestroy(): void {\n this.destroyed$.next();\n this.destroyed$.complete();\n }\n\n trackByName(_index, column: Column): string {\n return column.name;\n }\n\n async onDataSourceModifier(\n dataSourceModifier: DataSourceModifier\n ): Promise<ServerSideDataResult> {\n let serverSideDataResult: ServerSideDataResult;\n let filteredSize: number;\n let size: number;\n if (this.childDeviceGrid) {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getChildDeviceData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n this.parentDeviceId\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCountChildDevices(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.parentDeviceId\n )\n );\n size = await alertOnError(\n this.deviceGridService.getTotalChildDevices(this.baseQuery, this.parentDeviceId)\n );\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n } else {\n const { res, data, paging } = await alertOnError(\n this.deviceGridService.getData(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n this.withChildren,\n dataSourceModifier.searchText\n )\n );\n\n filteredSize = await alertOnError(\n this.deviceGridService.getCount(\n dataSourceModifier.columns,\n dataSourceModifier.pagination,\n this.baseQuery,\n dataSourceModifier.searchText\n )\n );\n size = await alertOnError(this.deviceGridService.getTotal(this.baseQuery));\n\n serverSideDataResult = {\n res,\n data,\n paging,\n filteredSize,\n size\n };\n }\n\n this.onColumnsChange.emit(dataSourceModifier.columns);\n this.onDeviceQueryStringChange.emit(\n this.deviceGridService.getDeviceQueryString(\n dataSourceModifier.columns,\n this.baseQuery,\n dataSourceModifier.searchText,\n false // Search is not applied for smart groups\n )\n );\n\n if (this.dataCallback) {\n serverSideDataResult = this.dataCallback(serverSideDataResult);\n }\n\n return serverSideDataResult;\n }\n\n updateFiltering(\n columnNames: string[],\n action: {\n type: FilteringActionType;\n payload?: { filteringModifier: FilteringModifier };\n }\n ) {\n const { type } = action;\n if (type === FilteringActionType.ResetFilter) {\n this.dataGrid.clearFilters();\n } else {\n this.dataGrid.updateFiltering(columnNames, action);\n }\n }\n}\n","<c8y-data-grid\n [title]=\"title\"\n [loadMoreItemsLabel]=\"loadMoreItemsLabel\"\n [loadingItemsLabel]=\"loadingItemsLabel\"\n [columns]=\"columns\"\n [pagination]=\"pagination\"\n [infiniteScroll]=\"infiniteScroll\"\n [actionControls]=\"actionControls\"\n [selectable]=\"selectable\"\n [singleSelection]=\"singleSelection\"\n [bulkActionControls]=\"bulkActionControls\"\n [serverSideDataCallback]=\"serverSideDataCallback\"\n (itemsSelect)=\"itemsSelect.emit($event)\"\n [refresh]=\"refresh\"\n [showSearch]=\"showSearch && !childDeviceGrid\"\n [headerActionControls]=\"headerActionControls\"\n [activeClassName]=\"activeClassName\"\n c8yProductExperience\n inherit\n>\n <c8y-ui-empty-state\n [icon]=\"stats?.size > 0 ? 'search' : 'c8y-device-management'\"\n [title]=\"stats?.size > 0 ? (noResultsMessage | translate) : (noDataMessage | translate)\"\n [subtitle]=\"stats?.size > 0 ? (noResultsSubtitle | translate) : null\"\n *emptyStateContext=\"let stats\"\n [horizontal]=\"stats?.size > 0\"\n ></c8y-ui-empty-state>\n\n <ng-container *ngFor=\"let column of columns; trackBy: trackByName\">\n <c8y-column [name]=\"column.name\"></c8y-column>\n </ng-container>\n</c8y-data-grid>\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport {\n CommonModule,\n DataGridModule,\n DeviceStatusModule,\n DynamicFormsModule,\n FormsModule,\n ProductExperienceModule\n} from '@c8y/ngx-components';\nimport { AssetSelectorModule } from '@c8y/ngx-components/assets-navigator';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { AlarmsCellRendererComponent } from './columns/alarms.cell-renderer.component';\nimport { AlarmsHeaderCellRendererComponent } from './columns/alarms.header-cell-renderer.component';\nimport { GroupCellRendererComponent } from './columns/group.cell-renderer.component';\nimport { GroupFilteringFormRendererComponent } from './columns/group.filtering-form-renderer.component';\nimport { ModelCellRendererComponent } from './columns/model.cell-renderer.component';\nimport { NameCellRendererComponent } from './columns/name.cell-renderer.component';\nimport { RegistrationDateCellRendererComponent } from './columns/registration-date.cell-renderer.component';\nimport { SerialNumberCellRendererComponent } from './columns/serial-number.cell-renderer.component';\nimport { DeviceStatusCellRendererComponent } from './columns/status.cell-renderer.component';\nimport { DeviceGridComponent } from './device-grid.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n DeviceStatusModule,\n DataGridModule,\n AssetSelectorModule,\n DynamicFormsModule,\n PopoverModule,\n RouterModule,\n ProductExperienceModule,\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ],\n exports: [\n DeviceGridComponent,\n GroupFilteringFormRendererComponent,\n DeviceStatusCellRendererComponent,\n NameCellRendererComponent,\n ModelCellRendererComponent,\n SerialNumberCellRendererComponent,\n GroupCellRendererComponent,\n RegistrationDateCellRendererComponent,\n AlarmsCellRendererComponent,\n AlarmsHeaderCellRendererComponent\n ]\n})\nexport class DeviceGridModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.ColumnUtilService","i2","i3","i4.ColumnUtilService","i1.DeviceGridService"],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Component, InjectionToken, Injectable, inject, NgModule } from '@angular/core';
|
|
3
3
|
import * as i2 from '@c8y/client';
|
|
4
|
+
import { gettext } from '@c8y/ngx-components/gettext';
|
|
4
5
|
import * as i4 from '@c8y/ngx-components';
|
|
5
|
-
import {
|
|
6
|
+
import { IconDirective, C8yTranslateDirective, FormGroupComponent, RequiredInputPlaceholderDirective, GuideDocsComponent, GuideHrefDirective, C8yTranslatePipe, hookGeneric, ExtensionPointWithoutStateForPlugins, fromTriggerOnce, NavigatorNode, TitleComponent, BreadcrumbComponent, BreadcrumbItemComponent, ActionBarItemComponent, HelpComponent, ProductExperienceDirective, UserPreferencesConfigurationStrategy, DATA_GRID_CONFIGURATION_STRATEGY, DATA_GRID_CONFIGURATION_CONTEXT_PROVIDER, BuiltInActionType, ContextRouteService, ViewContext, CoreModule, CommonModule, hookNavigator, hookBreadcrumb, hookDataGridActionControls } from '@c8y/ngx-components';
|
|
6
7
|
import * as i3 from '@c8y/ngx-components/device-grid';
|
|
7
8
|
import { DeviceGridComponent, DeviceGridModule } from '@c8y/ngx-components/device-grid';
|
|
8
9
|
import * as i5 from '@ngx-translate/core';
|