@c8y/ngx-components 1022.10.1 → 1022.16.2
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-button.component.d.ts +1 -1
- package/actility-device-registration/actility-device-registration-button.component.d.ts.map +1 -1
- package/actility-device-registration/actility-device-registration.component.d.ts +1 -1
- package/actility-device-registration/actility-device-registration.component.d.ts.map +1 -1
- package/actility-device-registration/actility-device-registration.module.d.ts +4 -4
- package/actility-device-registration/actility-device-registration.module.d.ts.map +1 -1
- package/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.d.ts +1 -1
- package/alarm-event-selector/alarm-event-attributes-form/alarm-event-attributes-form.component.d.ts.map +1 -1
- package/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.d.ts +25 -1
- package/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.d.ts.map +1 -1
- package/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.d.ts +1 -1
- package/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.d.ts.map +1 -1
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.d.ts +1 -1
- package/alarm-event-selector/alarm-event-selector-modal/alarm-event-selector-modal.component.d.ts.map +1 -1
- package/alarm-event-selector/alarm-event-selector.component.d.ts +1 -1
- package/alarm-event-selector/alarm-event-selector.component.d.ts.map +1 -1
- package/alarm-event-selector/alarm-event-selector.module.d.ts +15 -15
- package/alarm-event-selector/alarm-event-selector.module.d.ts.map +1 -1
- package/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.d.ts +1 -1
- package/alarm-event-selector/custom-alarm-event-form/custom-alarm-event-form.component.d.ts.map +1 -1
- package/alarm-event-selector/pipes/includes-alarm.pipe.d.ts +1 -1
- package/alarm-event-selector/pipes/includes-alarm.pipe.d.ts.map +1 -1
- package/alarms/alarm-details.component.d.ts +1 -1
- package/alarms/alarm-details.component.d.ts.map +1 -1
- package/alarms/alarm-empty.component.d.ts +1 -1
- package/alarms/alarm-empty.component.d.ts.map +1 -1
- package/alarms/alarm-info.component.d.ts +1 -1
- package/alarms/alarm-info.component.d.ts.map +1 -1
- package/alarms/alarm-severities-to-title.pipe.d.ts +1 -1
- package/alarms/alarm-severities-to-title.pipe.d.ts.map +1 -1
- package/alarms/alarm-severity-to-label.pipe.d.ts +1 -1
- package/alarms/alarm-severity-to-label.pipe.d.ts.map +1 -1
- package/alarms/alarm-status-to-icon.pipe.d.ts +1 -1
- package/alarms/alarm-status-to-icon.pipe.d.ts.map +1 -1
- package/alarms/alarm-status-to-label.pipe.d.ts +1 -1
- package/alarms/alarm-status-to-label.pipe.d.ts.map +1 -1
- package/alarms/alarms-date-filter.component.d.ts +1 -1
- package/alarms/alarms-date-filter.component.d.ts.map +1 -1
- package/alarms/alarms-filter.component.d.ts +1 -1
- package/alarms/alarms-filter.component.d.ts.map +1 -1
- package/alarms/alarms-icon.component.d.ts +1 -1
- package/alarms/alarms-icon.component.d.ts.map +1 -1
- package/alarms/alarms-interval-refresh.component.d.ts +1 -1
- package/alarms/alarms-interval-refresh.component.d.ts.map +1 -1
- package/alarms/alarms-list.component.d.ts +1 -1
- package/alarms/alarms-list.component.d.ts.map +1 -1
- package/alarms/alarms-type-filter.component.d.ts +1 -1
- package/alarms/alarms-type-filter.component.d.ts.map +1 -1
- package/alarms/alarms.component.d.ts +1 -1
- package/alarms/alarms.component.d.ts.map +1 -1
- package/alarms/alarms.helper.d.ts.map +1 -1
- package/alarms/alarms.module.d.ts +27 -27
- package/alarms/alarms.module.d.ts.map +1 -1
- package/alarms/audit-changes-message.pipe.d.ts +1 -1
- package/alarms/audit-changes-message.pipe.d.ts.map +1 -1
- package/api/api.service.d.ts +8 -0
- package/api/api.service.d.ts.map +1 -1
- package/app-logs/app-logs-auto-refresh.component.d.ts +1 -1
- package/app-logs/app-logs-auto-refresh.component.d.ts.map +1 -1
- package/app-logs/app-logs-auto-refresh.module.d.ts +4 -4
- package/app-logs/app-logs-auto-refresh.module.d.ts.map +1 -1
- package/assets-navigator/asset-selector/asset-selector-node.component.d.ts +1 -1
- package/assets-navigator/asset-selector/asset-selector-node.component.d.ts.map +1 -1
- package/assets-navigator/asset-selector/asset-selector.component.d.ts +12 -1
- package/assets-navigator/asset-selector/asset-selector.component.d.ts.map +1 -1
- package/assets-navigator/asset-selector/asset-selector.module.d.ts +8 -8
- package/assets-navigator/asset-selector/asset-selector.module.d.ts.map +1 -1
- package/assets-navigator/asset-selector/miller-view.component.d.ts +1 -1
- package/assets-navigator/asset-selector/miller-view.component.d.ts.map +1 -1
- package/auth-configuration/basic-settings/auth-configuration.component.d.ts +1 -1
- package/auth-configuration/basic-settings/auth-configuration.component.d.ts.map +1 -1
- package/auth-configuration/basic-settings/basic-auth-settings.component.d.ts +1 -1
- package/auth-configuration/basic-settings/basic-auth-settings.component.d.ts.map +1 -1
- package/auth-configuration/basic-settings/basic-settings.module.d.ts +8 -8
- package/auth-configuration/basic-settings/basic-settings.module.d.ts.map +1 -1
- package/auth-configuration/basic-settings/login-settings.component.d.ts +2 -2
- package/auth-configuration/basic-settings/login-settings.component.d.ts.map +1 -1
- package/auth-configuration/basic-settings/session-configuration.component.d.ts +1 -1
- package/auth-configuration/basic-settings/session-configuration.component.d.ts.map +1 -1
- package/auth-configuration/basic-settings/tfa-settings.component.d.ts +1 -1
- package/auth-configuration/basic-settings/tfa-settings.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/sso-configuration.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/sso-configuration.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/sso-configuration.module.d.ts +24 -24
- package/auth-configuration/sso-configuration/sso-configuration.module.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/access-mapping.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/access-mapping.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/child-predicates.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/child-predicates.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/dynamic-access-mapping.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/dynamic-access-mapping.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-mapping.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-mapping.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/access-mapping/inventory-roles-modal.component.d.ts +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/basic-configuration.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/basic-configuration.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/external-token-config.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/external-token-config.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/logout-configuration.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/logout-configuration.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/request-configuration.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/request-configuration.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/signature-configuration.component.d.ts +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 +1 -1
- package/auth-configuration/sso-configuration/template-parts/user-data-mapping.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/template-parts/user-id-configuration.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/template-parts/user-id-configuration.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/templates/aad-template.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/templates/aad-template.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/templates/custom-template.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/templates/custom-template.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/templates/key-cloak-template.component.d.ts +1 -1
- package/auth-configuration/sso-configuration/templates/key-cloak-template.component.d.ts.map +1 -1
- package/auth-configuration/sso-configuration/templates/template.component.d.ts +1 -1
- package/bookmarks/bookmarks.component.d.ts +1 -1
- package/bookmarks/bookmarks.component.d.ts.map +1 -1
- package/bookmarks/bookmarks.module.d.ts +7 -7
- package/bookmarks/bookmarks.module.d.ts.map +1 -1
- package/bookmarks/edit-bookmarks/edit-bookmarks.component.d.ts +1 -1
- package/bookmarks/edit-bookmarks/edit-bookmarks.component.d.ts.map +1 -1
- package/child-devices/child-devices.component.d.ts +1 -1
- package/child-devices/child-devices.component.d.ts.map +1 -1
- package/child-devices/child-devices.module.d.ts +5 -5
- package/child-devices/child-devices.module.d.ts.map +1 -1
- package/cockpit-config/cockpit-config.module.d.ts +17 -17
- package/cockpit-config/cockpit-config.module.d.ts.map +1 -1
- package/cockpit-config/cockpit-configuration.component.d.ts +1 -1
- package/cockpit-config/cockpit-configuration.component.d.ts.map +1 -1
- package/cockpit-config/feature-config.component.d.ts +1 -1
- package/cockpit-config/feature-config.component.d.ts.map +1 -1
- package/cockpit-config/home-dashboard-config.component.d.ts +1 -1
- package/cockpit-config/home-dashboard-config.component.d.ts.map +1 -1
- package/cockpit-config/misc-config.component.d.ts +1 -1
- package/cockpit-config/misc-config.component.d.ts.map +1 -1
- package/cockpit-config/root-node-config.component.d.ts +1 -1
- package/cockpit-config/root-node-config.component.d.ts.map +1 -1
- package/cockpit-config/setup/cockpit-setup-step1.component.d.ts +1 -1
- package/cockpit-config/setup/cockpit-setup-step1.component.d.ts.map +1 -1
- package/cockpit-config/setup/cockpit-setup-step2.component.d.ts +1 -1
- package/cockpit-config/setup/cockpit-setup-step2.component.d.ts.map +1 -1
- package/cockpit-config/setup/cockpit-setup-step3.component.d.ts +1 -1
- package/cockpit-config/setup/cockpit-setup-step3.component.d.ts.map +1 -1
- package/cockpit-config/setup/cockpit-setup-step4.component.d.ts +1 -1
- package/cockpit-config/setup/cockpit-setup-step4.component.d.ts.map +1 -1
- package/cockpit-config/setup/cockpit-setup-stepper-buttons.component.d.ts +1 -1
- package/cockpit-config/setup/cockpit-setup-stepper-buttons.component.d.ts.map +1 -1
- package/context-dashboard/add-dashboard.component.d.ts +1 -1
- package/context-dashboard/add-dashboard.component.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.component.d.ts +2 -1
- package/context-dashboard/context-dashboard.component.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.model.d.ts +0 -1
- package/context-dashboard/context-dashboard.model.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.module.d.ts +26 -19
- package/context-dashboard/context-dashboard.module.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.service.d.ts +6 -1
- package/context-dashboard/context-dashboard.service.d.ts.map +1 -1
- package/context-dashboard/dashboard-detail.component.d.ts +2 -2
- package/context-dashboard/dashboard-detail.component.d.ts.map +1 -1
- package/context-dashboard/device-info-dashboard/device-info-dashboard.component.d.ts +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 +5 -5
- 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 +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 +5 -5
- package/context-dashboard/device-management-home-dashboard/device-management-home-dashboard.module.d.ts.map +1 -1
- package/context-dashboard/paste-dashboard-action.component.d.ts +1 -1
- package/context-dashboard/paste-dashboard-action.component.d.ts.map +1 -1
- package/context-dashboard/widget-config.component.d.ts +1 -1
- package/context-dashboard/widget-config.component.d.ts.map +1 -1
- package/context-dashboard/widget-config.service.d.ts +1 -1
- package/core/alert/alert.service.d.ts +14 -5
- package/core/alert/alert.service.d.ts.map +1 -1
- package/core/asset-property/asset-property.model.d.ts +2 -0
- package/core/asset-property/asset-property.model.d.ts.map +1 -1
- package/core/authentication/authentication.module.d.ts.map +1 -1
- package/core/bottom-drawer/bottom-drawer.component.d.ts +3 -0
- package/core/bottom-drawer/bottom-drawer.component.d.ts.map +1 -1
- package/core/breadcrumb/breadcrumb.module.d.ts +3 -3
- package/core/common/ApplicationOptions.d.ts +14 -12
- package/core/common/ApplicationOptions.d.ts.map +1 -1
- package/core/common/date.pipe.d.ts +1 -1
- package/core/common/forOf.directive.d.ts +16 -16
- package/core/common/forOf.directive.d.ts.map +1 -1
- package/core/common/humanize-app-name.pipe.d.ts +7 -0
- package/core/common/humanize-app-name.pipe.d.ts.map +1 -1
- package/core/common/humanize.pipe.d.ts +7 -0
- package/core/common/humanize.pipe.d.ts.map +1 -1
- package/core/common/icon.directive.d.ts +19 -0
- package/core/common/icon.directive.d.ts.map +1 -1
- package/core/common/markdown-to-html.pipe.d.ts +8 -0
- package/core/common/markdown-to-html.pipe.d.ts.map +1 -1
- package/core/common/options.service.d.ts +5 -5
- package/core/common/outlet.directive.d.ts +4 -6
- package/core/common/outlet.directive.d.ts.map +1 -1
- package/core/common/permissions.service.d.ts +12 -12
- package/core/common/service-registry.service.d.ts +2 -1
- package/core/common/service-registry.service.d.ts.map +1 -1
- package/core/common/user-name-initials.pipe.d.ts +7 -0
- package/core/common/user-name-initials.pipe.d.ts.map +1 -1
- package/core/common/user-preferences/user-preferences.service.d.ts +1 -1
- package/core/countdown-interval/countdown-interval.component.d.ts +7 -0
- package/core/countdown-interval/countdown-interval.component.d.ts.map +1 -1
- package/core/dashboard/widget-auto-refresh-context/auto-refresh-control.component.d.ts.map +1 -1
- package/core/date-time-picker/date-time-picker.component.d.ts +20 -0
- package/core/date-time-picker/date-time-picker.component.d.ts.map +1 -1
- package/core/device-status/device-status.component.d.ts +3 -0
- package/core/device-status/device-status.component.d.ts.map +1 -1
- package/core/drop-area/drop-area.component.d.ts +2 -0
- package/core/drop-area/drop-area.component.d.ts.map +1 -1
- package/core/dynamic-forms/file/file.type.component.d.ts.map +1 -1
- package/core/header/header.model.d.ts +3 -2
- package/core/header/header.model.d.ts.map +1 -1
- package/core/header/title/title.component.d.ts +2 -0
- package/core/header/title/title.component.d.ts.map +1 -1
- package/core/i18n/c8y-translate.directive.d.ts +2 -2
- package/core/list-display-switch/list-display-switch.component.d.ts +9 -0
- package/core/list-display-switch/list-display-switch.component.d.ts.map +1 -1
- package/core/modal/modal.module.d.ts.map +1 -1
- package/core/plugins/plugins.module.d.ts.map +1 -1
- package/core/plugins/plugins.service.d.ts +1 -2
- package/core/plugins/plugins.service.d.ts.map +1 -1
- package/core/preview-feature/preview-feature.service.d.ts +1 -0
- package/core/preview-feature/preview-feature.service.d.ts.map +1 -1
- package/core/range-display/range-display.component.d.ts +11 -0
- package/core/range-display/range-display.component.d.ts.map +1 -1
- package/core/realtime/realtime.service.d.ts +4 -4
- package/core/select/select.component.d.ts.map +1 -1
- package/dashboard-manager/dashboard-manager.module.d.ts +8 -8
- package/dashboard-manager/dashboard-manager.module.d.ts.map +1 -1
- package/dashboard-manager/type-dashboard-target-assets-grid/type-dashboard-target-assets-grid.component.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 +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/type-dashboards-list.component.d.ts +1 -1
- package/dashboard-manager/type-dashboards-list/type-dashboards-list.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts +1 -1
- package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-selection-list/datapoint-selection-list.component.d.ts +10 -1
- package/datapoint-selector/datapoint-selection-list/datapoint-selection-list.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-selector-list-item/datapoint-selector-list-item.component.d.ts +1 -1
- package/datapoint-selector/datapoint-selector-list-item/datapoint-selector-list-item.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts +1 -1
- package/datapoint-selector/datapoint-selector-modal/datapoint-selector-modal.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-selector.component.d.ts +1 -1
- package/datapoint-selector/datapoint-selector.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-selector.module.d.ts +18 -18
- package/datapoint-selector/datapoint-selector.module.d.ts.map +1 -1
- package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts +1 -1
- package/datapoint-selector/datapoint-template-popover/datapoint-template-popover.component.d.ts.map +1 -1
- package/datapoint-selector/pipes/datapoint-label.pipe.d.ts +1 -1
- package/datapoint-selector/pipes/datapoint-label.pipe.d.ts.map +1 -1
- package/datapoint-selector/pipes/filter-datapoints.pipe.d.ts +1 -1
- package/datapoint-selector/pipes/filter-datapoints.pipe.d.ts.map +1 -1
- package/datapoint-selector/pipes/includes-datapoint.pipe.d.ts +1 -1
- package/datapoint-selector/pipes/includes-datapoint.pipe.d.ts.map +1 -1
- package/datapoints-export-selector/datapoints-export-selector.component.d.ts +7 -0
- package/datapoints-export-selector/datapoints-export-selector.component.d.ts.map +1 -1
- package/default-subscriptions/default-subscriptions.component.d.ts +1 -1
- package/default-subscriptions/default-subscriptions.component.d.ts.map +1 -1
- package/default-subscriptions/default-subscriptions.module.d.ts +4 -4
- package/default-subscriptions/default-subscriptions.module.d.ts.map +1 -1
- package/device-grid/columns/alarms.cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/alarms.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/alarms.header-cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/alarms.header-cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/group.cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/group.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/group.filtering-form-renderer.component.d.ts +1 -1
- package/device-grid/columns/group.filtering-form-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/model.cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/model.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/name.cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/name.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/registration-date.cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/registration-date.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/serial-number.cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/serial-number.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/columns/status.cell-renderer.component.d.ts +1 -1
- package/device-grid/columns/status.cell-renderer.component.d.ts.map +1 -1
- package/device-grid/device-grid.component.d.ts +1 -1
- package/device-grid/device-grid.component.d.ts.map +1 -1
- package/device-grid/device-grid.module.d.ts +15 -15
- package/device-grid/device-grid.module.d.ts.map +1 -1
- package/device-list/add-smart-group.component.d.ts +1 -1
- package/device-list/add-smart-group.component.d.ts.map +1 -1
- package/device-list/device-list.component.d.ts +1 -1
- package/device-list/device-list.component.d.ts.map +1 -1
- package/device-list/device-list.module.d.ts +8 -8
- package/device-list/device-list.module.d.ts.map +1 -1
- package/device-list/devices.breadcrumb-factory.d.ts +1 -0
- package/device-list/devices.breadcrumb-factory.d.ts.map +1 -1
- package/device-parameters/device-parameter-details.component.d.ts +22 -0
- package/device-parameters/device-parameter-details.component.d.ts.map +1 -0
- package/device-parameters/device-parameter-value.component.d.ts +12 -0
- package/device-parameters/device-parameter-value.component.d.ts.map +1 -0
- package/device-parameters/device-parameters-list.component.d.ts +2 -1
- package/device-parameters/device-parameters-list.component.d.ts.map +1 -1
- package/device-parameters/index.d.ts +5 -0
- package/device-parameters/index.d.ts.map +1 -1
- package/device-parameters/parameter-type-cell-renderer.components.d.ts +8 -0
- package/device-parameters/parameter-type-cell-renderer.components.d.ts.map +1 -0
- package/device-profile/add-device-profile.component.d.ts +1 -1
- package/device-profile/add-device-profile.component.d.ts.map +1 -1
- package/device-profile/device-profile-list.component.d.ts +1 -1
- package/device-profile/device-profile-list.component.d.ts.map +1 -1
- package/device-profile/device-profile.component.d.ts +1 -1
- package/device-profile/device-profile.component.d.ts.map +1 -1
- package/device-profile/device-profile.module.d.ts +17 -17
- package/device-profile/device-profile.module.d.ts.map +1 -1
- package/device-profile/device-tab-profile/device-profile-item-list.component.d.ts +1 -1
- package/device-profile/device-tab-profile/device-profile-item-list.component.d.ts.map +1 -1
- package/device-profile/device-tab-profile/device-tab-profile-detail.component.d.ts +1 -1
- package/device-profile/device-tab-profile/device-tab-profile-detail.component.d.ts.map +1 -1
- package/device-profile/device-tab-profile/device-tab-profile.component.d.ts +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 +1 -1
- package/device-profile/select-configuration-modal.component.d.ts.map +1 -1
- package/device-protocols/device-protocols.module.d.ts +1 -1
- package/device-protocols/device-type-detail.component.d.ts +1 -1
- package/device-protocols/device-type-detail.component.d.ts.map +1 -1
- package/device-protocols/device-type-detail.directive.d.ts +1 -1
- package/device-protocols/device-type-detail.directive.d.ts.map +1 -1
- package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts +7 -7
- package/device-provisioned-certificates/device-provisioned-certificates.module.d.ts.map +1 -1
- package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts +5 -3
- package/device-provisioned-certificates/device-tab-provisioned-certificates.component.d.ts.map +1 -1
- package/device-shell/command-templates/command-templates.component.d.ts +1 -1
- package/device-shell/command-templates/command-templates.component.d.ts.map +1 -1
- package/device-shell/command-templates/command-templates.directive.d.ts +1 -1
- package/device-shell/command-templates/command-templates.directive.d.ts.map +1 -1
- package/device-shell/command-templates/command-templates.module.d.ts +1 -1
- package/device-shell/shell/shell.component.d.ts +1 -1
- package/device-shell/shell/shell.component.d.ts.map +1 -1
- package/device-shell/shell/shell.module.d.ts +7 -7
- package/diagnostics/diagnostics.component.d.ts +1 -1
- package/diagnostics/diagnostics.component.d.ts.map +1 -1
- package/diagnostics/diagnostics.module.d.ts +8 -8
- package/diagnostics/diagnostics.module.d.ts.map +1 -1
- package/ecosystem/activity-log/activity-log.component.d.ts +1 -1
- package/ecosystem/activity-log/activity-log.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/appState.pipe.d.ts +1 -1
- package/ecosystem/application-plugins/appState.pipe.d.ts.map +1 -1
- package/ecosystem/application-plugins/application-plugin-readme.component.d.ts +1 -1
- package/ecosystem/application-plugins/application-plugin-readme.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/application-plugins.component.d.ts +1 -1
- package/ecosystem/application-plugins/application-plugins.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/application-plugins.module.d.ts +14 -14
- package/ecosystem/application-plugins/application-plugins.module.d.ts.map +1 -1
- package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts +2 -2
- package/ecosystem/application-plugins/apps-to-update-remotes-select.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/install-plugin.component.d.ts +1 -1
- package/ecosystem/application-plugins/install-plugin.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/label-cell-renderer.component.d.ts +1 -1
- package/ecosystem/application-plugins/label-cell-renderer.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/only-latest-filter/only-latest-filter.component.d.ts +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 +1 -1
- package/ecosystem/application-plugins/orphaned-status-cell-renderer.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/plugin-list-item.component.d.ts +1 -1
- package/ecosystem/application-plugins/plugin-list-item.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/plugin-list.component.d.ts +1 -1
- package/ecosystem/application-plugins/plugin-list.component.d.ts.map +1 -1
- package/ecosystem/application-plugins/update-plugin-of-app/update-plugin-of-app.component.d.ts +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 +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 +1 -1
- package/ecosystem/application-properties/subscription-modal/subscription-modal.component.d.ts.map +1 -1
- package/ecosystem/application-properties/update-application-modal/update-application-modal.component.d.ts +1 -1
- package/ecosystem/application-properties/update-application-modal/update-application-modal.component.d.ts.map +1 -1
- package/ecosystem/applications/add-external-applicaiton/add-external-application.component.d.ts +1 -1
- package/ecosystem/applications/add-external-applicaiton/add-external-application.component.d.ts.map +1 -1
- package/ecosystem/applications/add-web-application/add-web-application.component.d.ts +1 -1
- package/ecosystem/applications/add-web-application/add-web-application.component.d.ts.map +1 -1
- package/ecosystem/applications/application-list/application-list.component.d.ts +1 -1
- package/ecosystem/applications/application-list/application-list.component.d.ts.map +1 -1
- package/ecosystem/applications/install-from-package/install-from-package.component.d.ts +2 -3
- package/ecosystem/applications/install-from-package/install-from-package.component.d.ts.map +1 -1
- package/ecosystem/archived-confirm/archived-confirm-modal.component.d.ts +1 -1
- package/ecosystem/archived-confirm/archived-confirm-modal.component.d.ts.map +1 -1
- package/ecosystem/archived-confirm/archived-confirm.module.d.ts +4 -4
- package/ecosystem/archived-confirm/archived-confirm.module.d.ts.map +1 -1
- package/ecosystem/ecosystem.module.d.ts +34 -34
- package/ecosystem/ecosystem.module.d.ts.map +1 -1
- package/ecosystem/features/feature-list.component.d.ts +1 -1
- package/ecosystem/features/feature-list.component.d.ts.map +1 -1
- package/ecosystem/license-confirm/license-confirm-modal.component.d.ts +1 -1
- package/ecosystem/license-confirm/license-confirm-modal.component.d.ts.map +1 -1
- package/ecosystem/license-confirm/license-confirm.module.d.ts +5 -5
- package/ecosystem/license-confirm/license-confirm.module.d.ts.map +1 -1
- package/ecosystem/license-confirm/license-view.component.d.ts +1 -1
- package/ecosystem/license-confirm/license-view.component.d.ts.map +1 -1
- package/ecosystem/microservices/add-microservice.component.d.ts +1 -1
- package/ecosystem/microservices/add-microservice.component.d.ts.map +1 -1
- package/ecosystem/microservices/microservice-list.component.d.ts +1 -1
- package/ecosystem/microservices/microservice-list.component.d.ts.map +1 -1
- package/ecosystem/packages/add-package.component.d.ts +1 -1
- package/ecosystem/packages/add-package.component.d.ts.map +1 -1
- package/ecosystem/packages/deploy-application/deploy-application.component.d.ts +1 -1
- package/ecosystem/packages/deploy-application/deploy-application.component.d.ts.map +1 -1
- package/ecosystem/packages/package-details/package-details.component.d.ts +1 -1
- package/ecosystem/packages/package-details/package-details.component.d.ts.map +1 -1
- package/ecosystem/packages/package-list/packages-list.component.d.ts +1 -1
- package/ecosystem/packages/package-list/packages-list.component.d.ts.map +1 -1
- package/ecosystem/packages/package-versions/package-contents/contents-apps/contents-apps.component.d.ts +1 -1
- package/ecosystem/packages/package-versions/package-contents/contents-apps/contents-apps.component.d.ts.map +1 -1
- package/ecosystem/packages/package-versions/package-contents/contents-plugins/contents-plugins.component.d.ts +1 -1
- package/ecosystem/packages/package-versions/package-contents/contents-plugins/contents-plugins.component.d.ts.map +1 -1
- package/ecosystem/packages/package-versions/package-contents/packages-contents.component.d.ts +1 -1
- package/ecosystem/packages/package-versions/package-contents/packages-contents.component.d.ts.map +1 -1
- package/ecosystem/packages/package-versions/package-versions-list/package-versions-list.component.d.ts +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 +1 -1
- package/ecosystem/packages/package-versions/packages-versions.component.d.ts.map +1 -1
- package/ecosystem/shared/add-application.component.d.ts +1 -1
- package/ecosystem/shared/add-application.component.d.ts.map +1 -1
- package/ecosystem/shared/application-card.component.d.ts +1 -1
- package/ecosystem/shared/application-card.component.d.ts.map +1 -1
- package/ecosystem/shared/application-properties-form.component.d.ts +1 -1
- package/ecosystem/shared/application-properties-form.component.d.ts.map +1 -1
- package/ecosystem/shared/archived-filter/archived-filter.component.d.ts +1 -1
- package/ecosystem/shared/archived-filter/archived-filter.component.d.ts.map +1 -1
- package/ecosystem/shared/duplicate-application/duplicate-application-list/duplicate-application-list.component.d.ts +1 -1
- package/ecosystem/shared/duplicate-application/duplicate-application-list/duplicate-application-list.component.d.ts.map +1 -1
- package/ecosystem/shared/duplicate-application/duplicate-application-properties/duplicate-application-properties.component.d.ts +2 -2
- package/ecosystem/shared/duplicate-application/duplicate-application-properties/duplicate-application-properties.component.d.ts.map +1 -1
- package/ecosystem/shared/duplicate-application/duplicate-application.component.d.ts +1 -1
- package/ecosystem/shared/duplicate-application/duplicate-application.component.d.ts.map +1 -1
- package/ecosystem/shared/list-filters/list-filters.component.d.ts +1 -1
- package/ecosystem/shared/list-filters/list-filters.component.d.ts.map +1 -1
- package/ecosystem/shared/package-version-select/package-version-select.component.d.ts +1 -1
- package/ecosystem/shared/package-version-select/package-version-select.component.d.ts.map +1 -1
- package/ecosystem/shared/shared-ecosystem.module.d.ts +20 -20
- package/ecosystem/shared/shared-ecosystem.module.d.ts.map +1 -1
- package/ecosystem/shared/translate-package-label.pipe.d.ts +1 -1
- package/ecosystem/shared/translate-package-label.pipe.d.ts.map +1 -1
- package/ecosystem/shared/upload-archive.component.d.ts +1 -1
- package/ecosystem/shared/upload-archive.component.d.ts.map +1 -1
- package/events/c8y-ngx-components-events.d.ts.map +1 -0
- package/events/events-timeline/c8y-ngx-components-events-events-timeline.d.ts.map +1 -0
- package/events/events-timeline/events-timeline.component.d.ts +19 -0
- package/events/events-timeline/events-timeline.component.d.ts.map +1 -0
- package/events/events-timeline/index.d.ts +2 -0
- package/events/events-timeline/index.d.ts.map +1 -0
- package/events/events.model.d.ts +6 -0
- package/events/events.model.d.ts.map +1 -0
- package/events/events.service.d.ts +10 -0
- package/events/events.service.d.ts.map +1 -0
- package/events/index.d.ts +3 -0
- package/events/index.d.ts.map +1 -0
- package/fesm2022/c8y-ngx-components-actility-device-registration.mjs +36 -12
- package/fesm2022/c8y-ngx-components-actility-device-registration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs +195 -107
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarms.mjs +238 -97
- package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-api.mjs +8 -0
- package/fesm2022/c8y-ngx-components-api.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-app-logs.mjs +6 -8
- package/fesm2022/c8y-ngx-components-app-logs.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-assets-navigator.mjs +74 -26
- package/fesm2022/c8y-ngx-components-assets-navigator.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-auth-configuration.mjs +580 -368
- package/fesm2022/c8y-ngx-components-auth-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-bookmarks.mjs +36 -17
- package/fesm2022/c8y-ngx-components-bookmarks.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-child-devices.mjs +7 -9
- package/fesm2022/c8y-ngx-components-child-devices.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-cockpit-config.mjs +138 -67
- package/fesm2022/c8y-ngx-components-cockpit-config.mjs.map +1 -1
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-B7m2lsIe.mjs → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-C-JLbcn5.mjs} +3 -3
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-B7m2lsIe.mjs.map → c8y-ngx-components-context-dashboard-dashboard-appearance-settings.component-C-JLbcn5.mjs.map} +1 -1
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BCG_pjJz.mjs → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-RXvOcs04.mjs} +5 -5
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-general-settings.component-BCG_pjJz.mjs.map → c8y-ngx-components-context-dashboard-dashboard-general-settings.component-RXvOcs04.mjs.map} +1 -1
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-DjCdFkJw.mjs → c8y-ngx-components-context-dashboard-dashboard-version-history.component-DmPIJGXO.mjs} +3 -3
- package/fesm2022/{c8y-ngx-components-context-dashboard-dashboard-version-history.component-DjCdFkJw.mjs.map → c8y-ngx-components-context-dashboard-dashboard-version-history.component-DmPIJGXO.mjs.map} +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs +170 -94
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-dashboard-manager.mjs +44 -31
- package/fesm2022/c8y-ngx-components-dashboard-manager.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +132 -66
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-default-subscriptions.mjs +32 -16
- package/fesm2022/c8y-ngx-components-default-subscriptions.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-grid.mjs +50 -45
- package/fesm2022/c8y-ngx-components-device-grid.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-list.mjs +59 -27
- package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-parameters.mjs +110 -13
- package/fesm2022/c8y-ngx-components-device-parameters.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-profile.mjs +126 -49
- package/fesm2022/c8y-ngx-components-device-profile.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-protocols.mjs +6 -9
- package/fesm2022/c8y-ngx-components-device-protocols.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs +78 -18
- package/fesm2022/c8y-ngx-components-device-provisioned-certificates.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-device-shell.mjs +31 -22
- package/fesm2022/c8y-ngx-components-device-shell.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-diagnostics.mjs +36 -19
- package/fesm2022/c8y-ngx-components-diagnostics.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs +155 -72
- package/fesm2022/c8y-ngx-components-ecosystem-application-plugins.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs +13 -7
- package/fesm2022/c8y-ngx-components-ecosystem-archived-confirm.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs +43 -12
- package/fesm2022/c8y-ngx-components-ecosystem-license-confirm.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs +179 -80
- package/fesm2022/c8y-ngx-components-ecosystem-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-ecosystem.mjs +353 -1316
- package/fesm2022/c8y-ngx-components-ecosystem.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-events-events-timeline.mjs +45 -0
- package/fesm2022/c8y-ngx-components-events-events-timeline.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-events.mjs +44 -0
- package/fesm2022/c8y-ngx-components-events.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-file-preview.mjs +17 -8
- package/fesm2022/c8y-ngx-components-file-preview.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-files-repository.mjs +55 -22
- package/fesm2022/c8y-ngx-components-files-repository.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-icon-selector.mjs +46 -28
- package/fesm2022/c8y-ngx-components-icon-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-location.mjs +28 -15
- package/fesm2022/c8y-ngx-components-location.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs +36 -12
- package/fesm2022/c8y-ngx-components-loriot-device-registration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-map.mjs +260 -28
- package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-from-single.mjs +8 -14
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-from-single.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs +49 -49
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-list-item.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs +27 -14
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-scheduler.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs +27 -33
- package/fesm2022/c8y-ngx-components-operations-bulk-operation-stepper.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operations-list.mjs +51 -39
- package/fesm2022/c8y-ngx-components-operations-bulk-operations-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs +10 -8
- package/fesm2022/c8y-ngx-components-operations-bulk-operations-stepper-container.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs +16 -11
- package/fesm2022/c8y-ngx-components-operations-create-bulk-operation-details.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-device-selector.mjs +8 -11
- package/fesm2022/c8y-ngx-components-operations-device-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-operation-details.mjs +25 -21
- package/fesm2022/c8y-ngx-components-operations-operation-details.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-operation-summary.mjs +7 -9
- package/fesm2022/c8y-ngx-components-operations-operation-summary.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs +31 -31
- package/fesm2022/c8y-ngx-components-operations-operations-list-item-details.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-operations-list.mjs +3 -3
- package/fesm2022/c8y-ngx-components-operations-operations-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-operations-timeline.mjs +33 -13
- package/fesm2022/c8y-ngx-components-operations-operations-timeline.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-status-filter.mjs +19 -13
- package/fesm2022/c8y-ngx-components-operations-status-filter.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-configuration.mjs +40 -36
- 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 +60 -41
- 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 +122 -109
- 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 +66 -41
- package/fesm2022/c8y-ngx-components-operations-stepper-bulk-type-software.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-operations-stepper-frames.mjs +11 -16
- package/fesm2022/c8y-ngx-components-operations-stepper-frames.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-platform-configuration.mjs +24 -13
- package/fesm2022/c8y-ngx-components-platform-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs +133 -26
- package/fesm2022/c8y-ngx-components-protocol-lpwan.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-protocol-opcua.mjs +212 -83
- package/fesm2022/c8y-ngx-components-protocol-opcua.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-register-device.mjs +314 -249
- package/fesm2022/c8y-ngx-components-register-device.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-report-dashboard.mjs +41 -17
- package/fesm2022/c8y-ngx-components-report-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-reports.mjs +61 -21
- package/fesm2022/c8y-ngx-components-reports.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-configuration.mjs +113 -54
- package/fesm2022/c8y-ngx-components-repository-configuration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-firmware.mjs +130 -62
- package/fesm2022/c8y-ngx-components-repository-firmware.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-shared.mjs +37 -28
- package/fesm2022/c8y-ngx-components-repository-shared.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-repository-software.mjs +156 -83
- package/fesm2022/c8y-ngx-components-repository-software.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-search.mjs +34 -21
- package/fesm2022/c8y-ngx-components-search.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-services.mjs +32 -19
- package/fesm2022/c8y-ngx-components-services.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs +43 -19
- package/fesm2022/c8y-ngx-components-sigfox-device-registration.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-sub-assets.mjs +207 -72
- package/fesm2022/c8y-ngx-components-sub-assets.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-tenants.mjs +96 -39
- package/fesm2022/c8y-ngx-components-tenants.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-trusted-certificates.mjs +224 -67
- package/fesm2022/c8y-ngx-components-trusted-certificates.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-upgrade-upgraded-services.mjs +16 -3
- package/fesm2022/c8y-ngx-components-upgrade-upgraded-services.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-upgrade.mjs +20 -24
- package/fesm2022/c8y-ngx-components-upgrade.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-user-roles.mjs +24 -14
- package/fesm2022/c8y-ngx-components-user-roles.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +76 -50
- package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs +15 -8
- package/fesm2022/c8y-ngx-components-widgets-implementations-device-management-welcome.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +2 -2
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components.mjs +640 -549
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/file-preview/file-preview.component.d.ts +1 -1
- package/file-preview/file-preview.component.d.ts.map +1 -1
- package/file-preview/file-preview.module.d.ts +3 -3
- package/file-preview/file-preview.module.d.ts.map +1 -1
- package/files-repository/files-repository-upload.component.d.ts +1 -1
- package/files-repository/files-repository-upload.component.d.ts.map +1 -1
- package/files-repository/files-repository.component.d.ts +1 -1
- package/files-repository/files-repository.component.d.ts.map +1 -1
- package/files-repository/files-repository.module.d.ts +6 -6
- package/files-repository/files-repository.module.d.ts.map +1 -1
- package/icon-selector/icon-name.pipe.d.ts +1 -1
- package/icon-selector/icon-name.pipe.d.ts.map +1 -1
- package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts +1 -1
- package/icon-selector/icon-selector-modal/icon-selector-modal.component.d.ts.map +1 -1
- package/icon-selector/icon-selector-wrapper/icon-selector-wrapper.component.d.ts +1 -1
- package/icon-selector/icon-selector-wrapper/icon-selector-wrapper.component.d.ts.map +1 -1
- package/icon-selector/icon-selector.component.d.ts +1 -1
- package/icon-selector/icon-selector.component.d.ts.map +1 -1
- package/icon-selector/icon-selector.module.d.ts +8 -8
- package/icon-selector/icon-selector.module.d.ts.map +1 -1
- package/locales/de.po +55 -17
- package/locales/es.po +43 -4
- package/locales/fr.po +43 -4
- package/locales/ja_JP.po +45 -6
- package/locales/ko.po +43 -4
- package/locales/locales.pot +41 -2
- package/locales/nl.po +43 -4
- package/locales/pl.po +43 -4
- package/locales/pt_BR.po +43 -4
- package/locales/zh_CN.po +44 -5
- package/locales/zh_TW.po +43 -4
- package/location/add-location.component.d.ts +1 -1
- package/location/add-location.component.d.ts.map +1 -1
- package/location/location.component.d.ts +1 -1
- package/location/location.component.d.ts.map +1 -1
- package/location/location.module.d.ts +6 -6
- package/location/location.module.d.ts.map +1 -1
- package/loriot-device-registration/loriot-device-registration-button.component.d.ts +1 -1
- package/loriot-device-registration/loriot-device-registration-button.component.d.ts.map +1 -1
- package/loriot-device-registration/loriot-device-registration.component.d.ts +1 -1
- package/loriot-device-registration/loriot-device-registration.component.d.ts.map +1 -1
- package/loriot-device-registration/loriot-device-registration.module.d.ts +4 -4
- package/loriot-device-registration/loriot-device-registration.module.d.ts.map +1 -1
- package/map/cluster-map.component.d.ts +61 -1
- package/map/cluster-map.component.d.ts.map +1 -1
- package/map/map-popup.directive.d.ts +1 -1
- package/map/map-popup.directive.d.ts.map +1 -1
- package/map/map-status.component.d.ts +86 -3
- package/map/map-status.component.d.ts.map +1 -1
- package/map/map.component.d.ts +100 -5
- package/map/map.component.d.ts.map +1 -1
- package/map/map.model.d.ts +98 -4
- package/map/map.model.d.ts.map +1 -1
- package/map/map.module.d.ts +9 -9
- package/map/map.module.d.ts.map +1 -1
- package/operations/bulk-operation-from-single/bulk-operation-from-single.component.d.ts +1 -1
- package/operations/bulk-operation-from-single/bulk-operation-from-single.component.d.ts.map +1 -1
- package/operations/bulk-operation-from-single/bulk-operation-from-single.module.d.ts +3 -5
- package/operations/bulk-operation-from-single/bulk-operation-from-single.module.d.ts.map +1 -1
- package/operations/bulk-operation-list-item/bulk-operation-list-item.component.d.ts +1 -1
- package/operations/bulk-operation-list-item/bulk-operation-list-item.component.d.ts.map +1 -1
- package/operations/bulk-operation-list-item/bulk-operation-list-item.module.d.ts +1 -7
- package/operations/bulk-operation-list-item/bulk-operation-list-item.module.d.ts.map +1 -1
- package/operations/bulk-operation-list-item/bulk-operation-wrapper.component.d.ts +1 -1
- package/operations/bulk-operation-list-item/bulk-operation-wrapper.component.d.ts.map +1 -1
- package/operations/bulk-operation-list-item/modal-body-host.directive.d.ts +1 -1
- package/operations/bulk-operation-list-item/modal-body-host.directive.d.ts.map +1 -1
- package/operations/bulk-operation-list-item/modals/bulk-operations-reschedule-modal.component.d.ts +1 -1
- package/operations/bulk-operation-list-item/modals/bulk-operations-reschedule-modal.component.d.ts.map +1 -1
- package/operations/bulk-operation-scheduler/bulk-operation-scheduler.module.d.ts +6 -6
- package/operations/bulk-operation-scheduler/operation-scheduler.component.d.ts +1 -1
- package/operations/bulk-operation-scheduler/operation-scheduler.component.d.ts.map +1 -1
- package/operations/bulk-operation-stepper/base-stepper.component.d.ts +1 -1
- package/operations/bulk-operation-stepper/bulk-operation-stepper.component.d.ts +1 -1
- package/operations/bulk-operation-stepper/bulk-operation-stepper.component.d.ts.map +1 -1
- package/operations/bulk-operation-stepper/bulk-operation-stepper.module.d.ts +1 -5
- package/operations/bulk-operation-stepper/bulk-operation-stepper.module.d.ts.map +1 -1
- package/operations/bulk-operation-stepper/custom-step.directive.d.ts +1 -1
- package/operations/bulk-operation-stepper/custom-step.directive.d.ts.map +1 -1
- package/operations/bulk-operations-list/bulk-operations-list.component.d.ts +1 -1
- package/operations/bulk-operations-list/bulk-operations-list.component.d.ts.map +1 -1
- package/operations/bulk-operations-list/bulk-operations-list.module.d.ts +4 -10
- package/operations/bulk-operations-list/bulk-operations-list.module.d.ts.map +1 -1
- package/operations/bulk-operations-list/modals/bulk-operations-modal.component.d.ts +1 -1
- package/operations/bulk-operations-list/modals/bulk-operations-modal.component.d.ts.map +1 -1
- package/operations/bulk-operations-stepper-container/bulk-operations-stepper-container.component.d.ts +1 -1
- package/operations/bulk-operations-stepper-container/bulk-operations-stepper-container.component.d.ts.map +1 -1
- package/operations/bulk-operations-stepper-container/bulk-operations-stepper-container.module.d.ts +3 -4
- package/operations/bulk-operations-stepper-container/bulk-operations-stepper-container.module.d.ts.map +1 -1
- package/operations/create-bulk-operation-details/create-bulk-operation-details.component.d.ts +1 -1
- package/operations/create-bulk-operation-details/create-bulk-operation-details.component.d.ts.map +1 -1
- package/operations/create-bulk-operation-details/create-bulk-operation-details.module.d.ts +1 -4
- package/operations/create-bulk-operation-details/create-bulk-operation-details.module.d.ts.map +1 -1
- package/operations/device-selector/device-selector.component.d.ts +1 -1
- package/operations/device-selector/device-selector.component.d.ts.map +1 -1
- package/operations/device-selector/device-selector.module.d.ts +1 -3
- package/operations/device-selector/device-selector.module.d.ts.map +1 -1
- package/operations/operation-details/operation-details-modal.component.d.ts +1 -1
- package/operations/operation-details/operation-details-modal.component.d.ts.map +1 -1
- package/operations/operation-details/operation-details.component.d.ts +1 -1
- package/operations/operation-details/operation-details.component.d.ts.map +1 -1
- package/operations/operation-details/operation-details.module.d.ts +1 -7
- package/operations/operation-details/operation-details.module.d.ts.map +1 -1
- package/operations/operation-details/operation-details.service.d.ts.map +1 -1
- package/operations/operation-summary/operation-summary.component.d.ts +1 -1
- package/operations/operation-summary/operation-summary.component.d.ts.map +1 -1
- package/operations/operation-summary/operation-summary.module.d.ts +1 -2
- package/operations/operation-summary/operation-summary.module.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/operations-list.service.d.ts +1 -1
- package/operations/operations-list/operations-list.service.d.ts.map +1 -1
- package/operations/operations-list-item-details/operation-details-tabs.component.d.ts +1 -1
- package/operations/operations-list-item-details/operation-details-tabs.component.d.ts.map +1 -1
- package/operations/operations-list-item-details/operation-details.component.d.ts +1 -1
- package/operations/operations-list-item-details/operation-details.component.d.ts.map +1 -1
- package/operations/operations-list-item-details/operations-list-item-details.module.d.ts +1 -6
- package/operations/operations-list-item-details/operations-list-item-details.module.d.ts.map +1 -1
- package/operations/operations-timeline/operations-timeline.component.d.ts +5 -5
- package/operations/operations-timeline/operations-timeline.component.d.ts.map +1 -1
- package/operations/operations-timeline/operations-timeline.module.d.ts +4 -6
- package/operations/operations-timeline/operations-timeline.module.d.ts.map +1 -1
- package/operations/status-filter/status-filter.component.d.ts +1 -1
- package/operations/status-filter/status-filter.component.d.ts.map +1 -1
- package/operations/status-filter/status-filter.module.d.ts +1 -4
- package/operations/status-filter/status-filter.module.d.ts.map +1 -1
- package/operations/stepper-bulk-type-configuration/stepper-bulk-type-configuration.component.d.ts +1 -1
- package/operations/stepper-bulk-type-configuration/stepper-bulk-type-configuration.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-configuration/stepper-bulk-type-configuration.module.d.ts +1 -6
- package/operations/stepper-bulk-type-configuration/stepper-bulk-type-configuration.module.d.ts.map +1 -1
- package/operations/stepper-bulk-type-device-profile/confirm-device-profile-selection-step.component.d.ts +1 -1
- package/operations/stepper-bulk-type-device-profile/confirm-device-profile-selection-step.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-device-profile/select-device-profile-step.component.d.ts +1 -1
- package/operations/stepper-bulk-type-device-profile/select-device-profile-step.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-device-profile/stepper-bulk-type-device-profile.component.d.ts +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-device-profile/stepper-bulk-type-device-profile.module.d.ts +1 -6
- package/operations/stepper-bulk-type-device-profile/stepper-bulk-type-device-profile.module.d.ts.map +1 -1
- package/operations/stepper-bulk-type-firmware/select-firmware.component.d.ts +1 -1
- package/operations/stepper-bulk-type-firmware/select-firmware.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-firmware/stepper-bulk-type-firmware.component.d.ts +1 -1
- package/operations/stepper-bulk-type-firmware/stepper-bulk-type-firmware.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-firmware/stepper-bulk-type-firmware.module.d.ts +1 -6
- package/operations/stepper-bulk-type-firmware/stepper-bulk-type-firmware.module.d.ts.map +1 -1
- package/operations/stepper-bulk-type-firmware/version-or-patch.component.d.ts +1 -1
- package/operations/stepper-bulk-type-firmware/version-or-patch.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-software/confirm-software-selection-step.component.d.ts +1 -1
- package/operations/stepper-bulk-type-software/confirm-software-selection-step.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-software/select-software-step.component.d.ts +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 +1 -1
- package/operations/stepper-bulk-type-software/stepper-bulk-type-software.component.d.ts.map +1 -1
- package/operations/stepper-bulk-type-software/stepper-bulk-type-software.module.d.ts +1 -6
- package/operations/stepper-bulk-type-software/stepper-bulk-type-software.module.d.ts.map +1 -1
- package/operations/stepper-frames/preview-block.directive.d.ts +1 -1
- package/operations/stepper-frames/preview-block.directive.d.ts.map +1 -1
- package/operations/stepper-frames/preview-selection-frame.component.d.ts +1 -1
- package/operations/stepper-frames/preview-selection-frame.component.d.ts.map +1 -1
- package/operations/stepper-frames/select-step-frame.component.d.ts +1 -1
- package/operations/stepper-frames/select-step-frame.component.d.ts.map +1 -1
- package/operations/stepper-frames/stepper-frames.modules.d.ts +1 -2
- package/operations/stepper-frames/stepper-frames.modules.d.ts.map +1 -1
- package/package.json +1 -1
- package/platform-configuration/platform-configuration-form.component.d.ts +1 -1
- package/platform-configuration/platform-configuration-form.component.d.ts.map +1 -1
- package/platform-configuration/platform-configuration.module.d.ts +4 -4
- package/platform-configuration/platform-configuration.module.d.ts.map +1 -1
- package/protocol-lpwan/lpwan-protocol.module.d.ts +4 -4
- package/protocol-lpwan/lpwan-protocol.module.d.ts.map +1 -1
- package/protocol-lpwan/lpwan-set-connections.component.d.ts +1 -1
- package/protocol-lpwan/lpwan-set-connections.component.d.ts.map +1 -1
- package/protocol-lpwan/lpwan-set-device-protocol.component.d.ts +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 +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 +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 +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/multiple-lns-connectors.module.d.ts +8 -8
- package/protocol-lpwan/multiple-lns-connectors/multiple-lns-connectors.module.d.ts.map +1 -1
- package/protocol-lpwan/multiple-lns-connectors/no-connections-found.component.d.ts +1 -1
- package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts +1 -1
- package/protocol-lpwan/multiple-lns-connectors/sigfox-multiple-lns-connector.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-address-space-detail.component.d.ts +1 -1
- package/protocol-opcua/opcua-address-space-detail.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-address-space-tree.component.d.ts +1 -1
- package/protocol-opcua/opcua-address-space-tree.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-address-space.component.d.ts +1 -1
- package/protocol-opcua/opcua-address-space.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-auto-apply-settings.component.d.ts +1 -1
- package/protocol-opcua/opcua-auto-apply-settings.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-device-protocol-browse-path-validation.directive.d.ts +1 -1
- package/protocol-opcua/opcua-device-protocol-browse-path-validation.directive.d.ts.map +1 -1
- package/protocol-opcua/opcua-device-protocol-data-reporting.component.d.ts +1 -1
- package/protocol-opcua/opcua-device-protocol-data-reporting.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-device-protocol-description.component.d.ts +1 -1
- package/protocol-opcua/opcua-device-protocol-description.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-device-protocol-detail.component.d.ts +1 -1
- package/protocol-opcua/opcua-device-protocol-detail.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-device-protocol-mapping.component.d.ts +1 -1
- package/protocol-opcua/opcua-device-protocol-mapping.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-device-protocol-object-mapping-status-icon.component.d.ts +1 -1
- package/protocol-opcua/opcua-device-protocol-object-mapping-status-icon.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-protocol.module.d.ts +26 -26
- package/protocol-opcua/opcua-protocol.module.d.ts.map +1 -1
- package/protocol-opcua/opcua-server-config.component.d.ts +1 -1
- package/protocol-opcua/opcua-server-config.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-server-list.component.d.ts +1 -1
- package/protocol-opcua/opcua-server-list.component.d.ts.map +1 -1
- package/protocol-opcua/opcua-servers.component.d.ts +1 -1
- package/protocol-opcua/opcua-servers.component.d.ts.map +1 -1
- package/register-device/bulk/bulk-device-registration-button.component.d.ts +1 -1
- package/register-device/bulk/bulk-device-registration-button.component.d.ts.map +1 -1
- package/register-device/bulk/bulk-device-registration-modal.component.d.ts +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 +1 -1
- package/register-device/device-registration-view.component.d.ts.map +1 -1
- package/register-device/dropdown/register-device-dropdown.component.d.ts +1 -1
- package/register-device/dropdown/register-device-dropdown.component.d.ts.map +1 -1
- package/register-device/extensible/bulk/extensible-bulk-device-registration-button.component.d.ts +1 -1
- package/register-device/extensible/bulk/extensible-bulk-device-registration-button.component.d.ts.map +1 -1
- package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts +1 -1
- package/register-device/extensible/bulk/extensible-bulk-device-registration-modal.component.d.ts.map +1 -1
- package/register-device/extensible/single/extensible-device-registration-button.component.d.ts +1 -1
- package/register-device/extensible/single/extensible-device-registration-button.component.d.ts.map +1 -1
- package/register-device/extensible/single/extensible-device-registration-modal.component.d.ts +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 +1 -1
- package/register-device/extensible/single/extensible-device-registration-stepper.component.d.ts.map +1 -1
- package/register-device/general/general-device-registration-button.component.d.ts +1 -1
- package/register-device/general/general-device-registration-button.component.d.ts.map +1 -1
- package/register-device/general/general-device-registration.component.d.ts +3 -6
- package/register-device/general/general-device-registration.component.d.ts.map +1 -1
- package/register-device/register-device.module.d.ts +16 -16
- package/register-device/register-device.module.d.ts.map +1 -1
- package/report-dashboard/report-dashboard-list.component.d.ts +1 -1
- package/report-dashboard/report-dashboard-list.component.d.ts.map +1 -1
- package/report-dashboard/report-dashboard.module.d.ts +7 -7
- package/reports/cron.component.d.ts +1 -1
- package/reports/cron.component.d.ts.map +1 -1
- package/reports/export-schedules.component.d.ts +2 -3
- package/reports/export-schedules.component.d.ts.map +1 -1
- package/reports/reports.module.d.ts +7 -7
- package/reports/reports.module.d.ts.map +1 -1
- package/reports/schedule-modal.component.d.ts +2 -3
- package/reports/schedule-modal.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/configuration-filter.pipe.d.ts +1 -1
- package/repository/configuration/device-tab/configuration-filter.pipe.d.ts.map +1 -1
- package/repository/configuration/device-tab/configuration-preview.component.d.ts +1 -1
- package/repository/configuration/device-tab/configuration-preview.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/configuration-repository-device-tab.module.d.ts +11 -13
- package/repository/configuration/device-tab/configuration-repository-device-tab.module.d.ts.map +1 -1
- package/repository/configuration/device-tab/device-configuration-list.component.d.ts +1 -1
- package/repository/configuration/device-tab/device-configuration-list.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/device-configuration.component.d.ts +1 -1
- package/repository/configuration/device-tab/device-configuration.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/save-to-repository.component.d.ts +1 -1
- package/repository/configuration/device-tab/save-to-repository.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/source-code-preview.component.d.ts +1 -1
- package/repository/configuration/device-tab/source-code-preview.component.d.ts.map +1 -1
- package/repository/configuration/device-tab/text-based-configuration.component.d.ts +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 +1 -1
- package/repository/configuration/list/configuration-detail.component.d.ts.map +1 -1
- package/repository/configuration/list/configuration-list.component.d.ts +1 -1
- package/repository/configuration/list/configuration-list.component.d.ts.map +1 -1
- package/repository/configuration/list/configuration-repository-list.module.d.ts +4 -7
- package/repository/configuration/list/configuration-repository-list.module.d.ts.map +1 -1
- package/repository/firmware/device-tab/firmware-device-tab.component.d.ts +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 +4 -6
- 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 +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 +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 +1 -1
- package/repository/firmware/list/firmware-details.component.d.ts.map +1 -1
- package/repository/firmware/list/firmware-list.component.d.ts +1 -1
- package/repository/firmware/list/firmware-list.component.d.ts.map +1 -1
- package/repository/firmware/list/firmware-repository-list.module.d.ts +6 -11
- package/repository/firmware/list/firmware-repository-list.module.d.ts.map +1 -1
- package/repository/shared/file-download/file-download.component.d.ts +1 -1
- package/repository/shared/file-download/file-download.component.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/shared-repository.module.d.ts +1 -4
- package/repository/shared/shared-repository.module.d.ts.map +1 -1
- package/repository/shared/software-type/software-type.component.d.ts +1 -1
- package/repository/shared/software-type/software-type.component.d.ts.map +1 -1
- package/repository/software/device-tab/device-software-changes.component.d.ts +1 -1
- package/repository/software/device-tab/device-software-changes.component.d.ts.map +1 -1
- package/repository/software/device-tab/device-software-list.component.d.ts +1 -1
- package/repository/software/device-tab/device-software-list.component.d.ts.map +1 -1
- package/repository/software/device-tab/installed-software.component.d.ts +1 -1
- package/repository/software/device-tab/installed-software.component.d.ts.map +1 -1
- package/repository/software/device-tab/software-device-tab.component.d.ts +1 -1
- package/repository/software/device-tab/software-device-tab.component.d.ts.map +1 -1
- package/repository/software/device-tab/software-repository-device-tab.module.d.ts +7 -11
- 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 +1 -1
- package/repository/software/list/add-software-modal.component.d.ts.map +1 -1
- package/repository/software/list/software-details.component.d.ts +1 -1
- package/repository/software/list/software-details.component.d.ts.map +1 -1
- package/repository/software/list/software-list.component.d.ts +1 -1
- package/repository/software/list/software-list.component.d.ts.map +1 -1
- package/repository/software/list/software-repository-list.module.d.ts +5 -11
- package/repository/software/list/software-repository-list.module.d.ts.map +1 -1
- package/search/search-action.component.d.ts +1 -1
- package/search/search-action.component.d.ts.map +1 -1
- package/search/search-custom-filters.component.d.ts +1 -1
- package/search/search-custom-filters.component.d.ts.map +1 -1
- package/search/search-grid.component.d.ts +1 -1
- package/search/search-grid.component.d.ts.map +1 -1
- package/search/search-results.component.d.ts +1 -1
- package/search/search-results.component.d.ts.map +1 -1
- package/search/search.module.d.ts +8 -8
- package/search/search.module.d.ts.map +1 -1
- package/services/services-device-tab/columns/last-updated-date.cell-renderer.component.d.ts +1 -1
- package/services/services-device-tab/columns/last-updated-date.cell-renderer.component.d.ts.map +1 -1
- package/services/services-device-tab/columns/name.cell-renderer.component.d.ts +1 -1
- package/services/services-device-tab/columns/name.cell-renderer.component.d.ts.map +1 -1
- package/services/services-device-tab/columns/status.cell-renderer.component.d.ts +1 -1
- package/services/services-device-tab/columns/status.cell-renderer.component.d.ts.map +1 -1
- package/services/services-device-tab/services-device-tab.component.d.ts +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 +1 -4
- package/services/services-device-tab/services-device-tab.module.d.ts.map +1 -1
- package/sigfox-device-registration/sigfox-device-registration-button.component.d.ts +1 -1
- package/sigfox-device-registration/sigfox-device-registration-button.component.d.ts.map +1 -1
- package/sigfox-device-registration/sigfox-device-registration.component.d.ts +1 -1
- package/sigfox-device-registration/sigfox-device-registration.component.d.ts.map +1 -1
- package/sigfox-device-registration/sigfox-device-registration.module.d.ts +4 -4
- package/sigfox-device-registration/sigfox-device-registration.module.d.ts.map +1 -1
- package/sub-assets/add-group/add-group.component.d.ts +1 -1
- package/sub-assets/add-group/add-group.component.d.ts.map +1 -1
- package/sub-assets/add-group/add-group.module.d.ts +7 -7
- package/sub-assets/asset-properties-item.component.d.ts +1 -1
- package/sub-assets/asset-properties-item.component.d.ts.map +1 -1
- package/sub-assets/asset-properties.component.d.ts +1 -1
- package/sub-assets/asset-properties.component.d.ts.map +1 -1
- package/sub-assets/assign-devices/assign-child-devices.component.d.ts +2 -3
- package/sub-assets/assign-devices/assign-child-devices.component.d.ts.map +1 -1
- package/sub-assets/assign-devices/assign-devices.component.d.ts +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 +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 +1 -1
- package/sub-assets/group-info.component.d.ts.map +1 -1
- package/sub-assets/groups.component.d.ts +1 -1
- package/sub-assets/groups.component.d.ts.map +1 -1
- package/sub-assets/location/asset-location.component.d.ts +1 -1
- package/sub-assets/location/asset-location.component.d.ts.map +1 -1
- package/sub-assets/sub-assets-grid.component.d.ts +1 -1
- package/sub-assets/sub-assets-grid.component.d.ts.map +1 -1
- package/sub-assets/sub-assets-grids.module.d.ts +9 -9
- package/sub-assets/sub-assets-grids.module.d.ts.map +1 -1
- package/sub-assets/sub-assets.component.d.ts +1 -1
- package/sub-assets/sub-assets.component.d.ts.map +1 -1
- package/sub-assets/sub-assets.module.d.ts +18 -18
- package/sub-assets/sub-assets.module.d.ts.map +1 -1
- package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts +1 -1
- package/sub-assets/unassign-assets-modal/unassign-modal.component.d.ts.map +1 -1
- package/tenants/tenant-form/tenant-form.component.d.ts +1 -1
- package/tenants/tenant-form/tenant-form.component.d.ts.map +1 -1
- package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts +2 -3
- package/tenants/tenant-list/creation-time.filtering-form-renderer.component.d.ts.map +1 -1
- package/tenants/tenant-list/status.filtering-form-renderer.component.d.ts +1 -1
- package/tenants/tenant-list/status.filtering-form-renderer.component.d.ts.map +1 -1
- package/tenants/tenant-list/tenant-list.component.d.ts +1 -1
- package/tenants/tenant-list/tenant-list.component.d.ts.map +1 -1
- package/tenants/tenants.module.d.ts +9 -9
- package/tenants/tenants.module.d.ts.map +1 -1
- package/trusted-certificates/crl/crl-check-settings.component.d.ts +1 -1
- package/trusted-certificates/crl/crl-check-settings.component.d.ts.map +1 -1
- package/trusted-certificates/crl/crl-settings.component.d.ts +6 -2
- package/trusted-certificates/crl/crl-settings.component.d.ts.map +1 -1
- package/trusted-certificates/crl/crl-settings.module.d.ts +8 -8
- package/trusted-certificates/crl/crl-settings.module.d.ts.map +1 -1
- package/trusted-certificates/factories/tabs.factory.d.ts +3 -2
- package/trusted-certificates/factories/tabs.factory.d.ts.map +1 -1
- package/trusted-certificates/factories/trusted-certificates-navigation.factory.d.ts +2 -0
- package/trusted-certificates/factories/trusted-certificates-navigation.factory.d.ts.map +1 -1
- package/trusted-certificates/list/add-trusted-certificate.component.d.ts +4 -3
- package/trusted-certificates/list/add-trusted-certificate.component.d.ts.map +1 -1
- package/trusted-certificates/list/trusted-certificate-list.component.d.ts +16 -3
- package/trusted-certificates/list/trusted-certificate-list.component.d.ts.map +1 -1
- package/trusted-certificates/list/trusted-certificate-list.module.d.ts +10 -10
- package/trusted-certificates/list/trusted-certificate-list.module.d.ts.map +1 -1
- package/trusted-certificates/list/trusted-certificate.model.d.ts +2 -0
- package/trusted-certificates/list/trusted-certificate.model.d.ts.map +1 -1
- package/trusted-certificates/pattern-messages.data.d.ts +6 -0
- package/trusted-certificates/pattern-messages.data.d.ts.map +1 -1
- package/trusted-certificates/trusted-certificates.guard.d.ts +11 -0
- package/trusted-certificates/trusted-certificates.guard.d.ts.map +1 -0
- package/upgrade/dashboard/dashboard-upgrade.module.d.ts +6 -6
- package/upgrade/dashboard/dashboard-upgrade.module.d.ts.map +1 -1
- package/upgrade/dashboard/device-selector.component.d.ts +1 -1
- package/upgrade/dashboard/device-selector.component.d.ts.map +1 -1
- package/upgrade/dashboard/widget.component.d.ts +1 -1
- package/upgrade/dashboard/widget.component.d.ts.map +1 -1
- package/upgrade/index.d.ts +0 -1
- package/upgrade/index.d.ts.map +1 -1
- package/upgrade/upgrade.module.d.ts.map +1 -1
- package/upgrade/upgraded-services/index.d.ts +1 -0
- package/upgrade/upgraded-services/index.d.ts.map +1 -1
- package/upgrade/upgraded-services/smart-rules.service.d.ts.map +1 -0
- package/upgrade/upgraded-services/upgraded-services.module.d.ts.map +1 -1
- package/user-roles/inventory-role-selector/inventory-role-selector.component.d.ts +2 -1
- package/user-roles/inventory-role-selector/inventory-role-selector.component.d.ts.map +1 -1
- package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts +2 -1
- package/user-roles/roles-asset-tree/roles-asset-tree.component.d.ts.map +1 -1
- package/user-roles/user-roles.module.d.ts +4 -4
- package/user-roles/user-roles.module.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts +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 +1 -1
- package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts +1 -1
- package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarms-widget.module.d.ts +13 -13
- package/widgets/implementations/alarms/alarms-widget.module.d.ts.map +1 -1
- package/widgets/implementations/alarms/severity-icon.pipe.d.ts +1 -1
- package/widgets/implementations/alarms/severity-icon.pipe.d.ts.map +1 -1
- package/widgets/implementations/alarms/sorting-description-popover-message.pipe.d.ts +1 -1
- package/widgets/implementations/alarms/sorting-description-popover-message.pipe.d.ts.map +1 -1
- package/widgets/implementations/device-management-welcome/device-management-welcome-widget.module.d.ts +4 -4
- package/widgets/implementations/device-management-welcome/device-management-welcome-widget.module.d.ts.map +1 -1
- package/widgets/implementations/device-management-welcome/welcome.component.d.ts +1 -1
- package/widgets/implementations/device-management-welcome/welcome.component.d.ts.map +1 -1
- package/upgrade/smart-rules.service.d.ts.map +0 -1
- /package/upgrade/{smart-rules.service.d.ts → upgraded-services/smart-rules.service.d.ts} +0 -0
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, Component, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1$1 from '@angular/forms';
|
|
4
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
5
|
-
import * as
|
|
6
|
-
import { gettext, NavigatorNode, CoreModule, hookNavigator, hookRoute } from '@c8y/ngx-components';
|
|
4
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
+
import * as i2 from '@c8y/ngx-components';
|
|
6
|
+
import { gettext, TitleComponent, BreadcrumbComponent, BreadcrumbItemComponent, C8yTranslateDirective, RequiredInputPlaceholderDirective, LoadingComponent, EmptyStateComponent, AppIconComponent, C8yTranslatePipe, HumanizeAppNamePipe, NavigatorNode, CoreModule, hookNavigator, hookRoute } from '@c8y/ngx-components';
|
|
7
7
|
import { sortBy, isUndefined } from 'lodash-es';
|
|
8
8
|
import { debounceTime, take } from 'rxjs/operators';
|
|
9
9
|
import * as i1 from '@c8y/client';
|
|
10
10
|
import { ApplicationType } from '@c8y/client';
|
|
11
|
-
import
|
|
11
|
+
import { NgIf, NgFor, NgClass, AsyncPipe } from '@angular/common';
|
|
12
12
|
|
|
13
13
|
/** The context for evaluating default subscriptions configuration */
|
|
14
14
|
var DefaultSubscriptionsContext;
|
|
@@ -268,12 +268,12 @@ class DefaultSubscriptionsService {
|
|
|
268
268
|
.map(app => app.name)
|
|
269
269
|
.join(',');
|
|
270
270
|
}
|
|
271
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsService, deps: [{ token: i1.ApplicationService }, { token: i1.TenantService }, { token: i1.TenantOptionsService }, { token:
|
|
271
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsService, deps: [{ token: i1.ApplicationService }, { token: i1.TenantService }, { token: i1.TenantOptionsService }, { token: i2.HumanizeAppNamePipe }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
272
272
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsService }); }
|
|
273
273
|
}
|
|
274
274
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsService, decorators: [{
|
|
275
275
|
type: Injectable
|
|
276
|
-
}], ctorParameters: () => [{ type: i1.ApplicationService }, { type: i1.TenantService }, { type: i1.TenantOptionsService }, { type:
|
|
276
|
+
}], ctorParameters: () => [{ type: i1.ApplicationService }, { type: i1.TenantService }, { type: i1.TenantOptionsService }, { type: i2.HumanizeAppNamePipe }] });
|
|
277
277
|
|
|
278
278
|
/**
|
|
279
279
|
* The component shows the main view for managing default subscriptions configuration.
|
|
@@ -446,13 +446,30 @@ class DefaultSubscriptionsComponent {
|
|
|
446
446
|
: null
|
|
447
447
|
};
|
|
448
448
|
}
|
|
449
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsComponent, deps: [{ token: i1$1.FormBuilder }, { token: DefaultSubscriptionsService }, { token:
|
|
450
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DefaultSubscriptionsComponent, isStandalone: false, selector: "c8y-default-subscriptions", ngImport: i0, template: "<c8y-title>{{ 'Default subscriptions' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item [label]=\"'Ecosystem' | translate\" [icon]=\"'c8y-atom'\"></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [label]=\"'Default subscriptions' | translate\"\n [icon]=\"'c8y-atom'\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"card card--fullpage col-lg-max\">\n <div class=\"card-header separator\">\n <div class=\"card-title\" translate>Applications</div>\n </div>\n <div class=\"inner-scroll\">\n <div class=\"sticky-top separator-bottom\">\n <div class=\"d-flex\">\n <div class=\"col-sm-6 col-xs-6 p-24 p-t-16 p-l-xs-16\">\n <p translate>\n Configure default subscriptions in the platform, both for tenant creation and for\n platform upgrade. To display a full list of available applications, override inherited\n settings.\n </p>\n </div>\n <div class=\"col-sm-6 col-xs-6 bg-level-1 p-16 text-center separator-bottom\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on tenant creation</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnCreationSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on platform upgrade</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnUpgradeSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n <div class=\"card-block card-block d-flex a-i-center j-c-center d-col\" *ngIf=\"loading\">\n <c8y-loading></c8y-loading>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n\n <ng-container formArrayName=\"appRows\">\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n <div class=\"card-block bg-level-0\" *ngIf=\"!loading && isEmptyView()\">\n <c8y-ui-empty-state\n [icon]=\"'c8y-c8y-data'\"\n [title]=\"'No application subscriptions yet.' | translate\"\n [subtitle]=\"\n 'Select "Override inherited" to define the list of subscribed applications.'\n | translate\n \"\n ></c8y-ui-empty-state>\n </div>\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n\n <div *ngFor=\"let appRowControl of form.get('appRows')['controls']; let i = index\">\n <ng-container\n *ngIf=\"shouldShowAppRow(appRowControl.getRawValue())\"\n formArrayName=\"{{ i }}\"\n >\n <div class=\"d-flex a-i-stretch\">\n <div class=\"col-sm-6 col-xs-6 separator-bottom\">\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__appicon\">\n <c8y-app-icon\n [app]=\"appRowControl.value.app\"\n [name]=\"appRowControl.value.app.name\"\n [contextPath]=\"appRowControl.value.app.contextPath\"\n ></c8y-app-icon>\n </div>\n <div class=\"c8y-list__item__body\" data-cy=\"defaultSubscriptionForm--c8y-list_item\">\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <p\n class=\"text-truncate\"\n title=\"{{ appRowControl.value.app | humanizeAppName | async }}\"\n >\n {{ appRowControl.value.app | humanizeAppName | async }}\n </p>\n <small class=\"text-muted\">{{ appRowControl.value.app.contextPath }}</small>\n </div>\n <div class=\"col-6 text-right-sm\">\n <p>\n <span class=\"text-label-small m-r-4\" translate>Tenant ID</span>\n {{ appRowControl.value.app.owner.tenant.id }}\n </p>\n <!-- TODO: uncomment when company name is available\n <p>\n <span class=\"text-label-small m-r-4\" translate>Company</span>\n <small class=\"text-muted\">company name</small>\n </p> -->\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnCreation.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnCreation\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnCreation.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnCreation.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on tenant creation' | translate }}</span>\n </label>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnUpgrade.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnUpgrade\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnUpgrade.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnUpgrade.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on platform upgrade' | translate }}</span>\n </label>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n type=\"submit\"\n title=\"{{ 'Save default subscriptions' | translate }}\"\n [disabled]=\"form.invalid || form.pristine\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n", dependencies: [{ kind: "component", type: i3.AppIconComponent, selector: "c8y-app-icon", inputs: ["contextPath", "name", "app"] }, { kind: "component", type: i3.BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: i3.BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "component", type: i3.EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: i3.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.LoadingComponent, selector: "c8y-loading", inputs: ["layout", "progress", "message"] }, { kind: "component", type: i3.TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "pipe", type: i3.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.HumanizeAppNamePipe, name: "humanizeAppName" }] }); }
|
|
449
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsComponent, deps: [{ token: i1$1.FormBuilder }, { token: DefaultSubscriptionsService }, { token: i2.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
450
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DefaultSubscriptionsComponent, isStandalone: true, selector: "c8y-default-subscriptions", ngImport: i0, template: "<c8y-title>{{ 'Default subscriptions' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item [label]=\"'Ecosystem' | translate\" [icon]=\"'c8y-atom'\"></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [label]=\"'Default subscriptions' | translate\"\n [icon]=\"'c8y-atom'\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"card card--fullpage col-lg-max\">\n <div class=\"card-header separator\">\n <div class=\"card-title\" translate>Applications</div>\n </div>\n <div class=\"inner-scroll\">\n <div class=\"sticky-top separator-bottom\">\n <div class=\"d-flex\">\n <div class=\"col-sm-6 col-xs-6 p-24 p-t-16 p-l-xs-16\">\n <p translate>\n Configure default subscriptions in the platform, both for tenant creation and for\n platform upgrade. To display a full list of available applications, override inherited\n settings.\n </p>\n </div>\n <div class=\"col-sm-6 col-xs-6 bg-level-1 p-16 text-center separator-bottom\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on tenant creation</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnCreationSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on platform upgrade</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnUpgradeSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n <div class=\"card-block card-block d-flex a-i-center j-c-center d-col\" *ngIf=\"loading\">\n <c8y-loading></c8y-loading>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n\n <ng-container formArrayName=\"appRows\">\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n <div class=\"card-block bg-level-0\" *ngIf=\"!loading && isEmptyView()\">\n <c8y-ui-empty-state\n [icon]=\"'c8y-c8y-data'\"\n [title]=\"'No application subscriptions yet.' | translate\"\n [subtitle]=\"\n 'Select "Override inherited" to define the list of subscribed applications.'\n | translate\n \"\n ></c8y-ui-empty-state>\n </div>\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n\n <div *ngFor=\"let appRowControl of form.get('appRows')['controls']; let i = index\">\n <ng-container\n *ngIf=\"shouldShowAppRow(appRowControl.getRawValue())\"\n formArrayName=\"{{ i }}\"\n >\n <div class=\"d-flex a-i-stretch\">\n <div class=\"col-sm-6 col-xs-6 separator-bottom\">\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__appicon\">\n <c8y-app-icon\n [app]=\"appRowControl.value.app\"\n [name]=\"appRowControl.value.app.name\"\n [contextPath]=\"appRowControl.value.app.contextPath\"\n ></c8y-app-icon>\n </div>\n <div class=\"c8y-list__item__body\" data-cy=\"defaultSubscriptionForm--c8y-list_item\">\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <p\n class=\"text-truncate\"\n title=\"{{ appRowControl.value.app | humanizeAppName | async }}\"\n >\n {{ appRowControl.value.app | humanizeAppName | async }}\n </p>\n <small class=\"text-muted\">{{ appRowControl.value.app.contextPath }}</small>\n </div>\n <div class=\"col-6 text-right-sm\">\n <p>\n <span class=\"text-label-small m-r-4\" translate>Tenant ID</span>\n {{ appRowControl.value.app.owner.tenant.id }}\n </p>\n <!-- TODO: uncomment when company name is available\n <p>\n <span class=\"text-label-small m-r-4\" translate>Company</span>\n <small class=\"text-muted\">company name</small>\n </p> -->\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnCreation.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnCreation\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnCreation.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnCreation.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on tenant creation' | translate }}</span>\n </label>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnUpgrade.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnUpgrade\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnUpgrade.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnUpgrade.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on platform upgrade' | translate }}</span>\n </label>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n type=\"submit\"\n title=\"{{ 'Save default subscriptions' | translate }}\"\n [disabled]=\"form.invalid || form.pristine\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n", dependencies: [{ kind: "component", type: TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "component", type: BreadcrumbComponent, selector: "c8y-breadcrumb" }, { kind: "component", type: BreadcrumbItemComponent, selector: "c8y-breadcrumb-item", inputs: ["icon", "translate", "label", "path", "injector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LoadingComponent, selector: "c8y-loading", inputs: ["layout", "progress", "message"] }, { kind: "component", type: EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: AppIconComponent, selector: "c8y-app-icon", inputs: ["contextPath", "name", "app"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: HumanizeAppNamePipe, name: "humanizeAppName" }] }); }
|
|
451
451
|
}
|
|
452
452
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsComponent, decorators: [{
|
|
453
453
|
type: Component,
|
|
454
|
-
args: [{ selector: 'c8y-default-subscriptions',
|
|
455
|
-
|
|
454
|
+
args: [{ selector: 'c8y-default-subscriptions', imports: [
|
|
455
|
+
TitleComponent,
|
|
456
|
+
BreadcrumbComponent,
|
|
457
|
+
BreadcrumbItemComponent,
|
|
458
|
+
FormsModule,
|
|
459
|
+
ReactiveFormsModule,
|
|
460
|
+
C8yTranslateDirective,
|
|
461
|
+
RequiredInputPlaceholderDirective,
|
|
462
|
+
NgIf,
|
|
463
|
+
LoadingComponent,
|
|
464
|
+
EmptyStateComponent,
|
|
465
|
+
NgFor,
|
|
466
|
+
AppIconComponent,
|
|
467
|
+
NgClass,
|
|
468
|
+
C8yTranslatePipe,
|
|
469
|
+
AsyncPipe,
|
|
470
|
+
HumanizeAppNamePipe
|
|
471
|
+
], template: "<c8y-title>{{ 'Default subscriptions' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item [label]=\"'Ecosystem' | translate\" [icon]=\"'c8y-atom'\"></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [label]=\"'Default subscriptions' | translate\"\n [icon]=\"'c8y-atom'\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"card card--fullpage col-lg-max\">\n <div class=\"card-header separator\">\n <div class=\"card-title\" translate>Applications</div>\n </div>\n <div class=\"inner-scroll\">\n <div class=\"sticky-top separator-bottom\">\n <div class=\"d-flex\">\n <div class=\"col-sm-6 col-xs-6 p-24 p-t-16 p-l-xs-16\">\n <p translate>\n Configure default subscriptions in the platform, both for tenant creation and for\n platform upgrade. To display a full list of available applications, override inherited\n settings.\n </p>\n </div>\n <div class=\"col-sm-6 col-xs-6 bg-level-1 p-16 text-center separator-bottom\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on tenant creation</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnCreationSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on platform upgrade</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnUpgradeSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n <div class=\"card-block card-block d-flex a-i-center j-c-center d-col\" *ngIf=\"loading\">\n <c8y-loading></c8y-loading>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n\n <ng-container formArrayName=\"appRows\">\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n <div class=\"card-block bg-level-0\" *ngIf=\"!loading && isEmptyView()\">\n <c8y-ui-empty-state\n [icon]=\"'c8y-c8y-data'\"\n [title]=\"'No application subscriptions yet.' | translate\"\n [subtitle]=\"\n 'Select "Override inherited" to define the list of subscribed applications.'\n | translate\n \"\n ></c8y-ui-empty-state>\n </div>\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n\n <div *ngFor=\"let appRowControl of form.get('appRows')['controls']; let i = index\">\n <ng-container\n *ngIf=\"shouldShowAppRow(appRowControl.getRawValue())\"\n formArrayName=\"{{ i }}\"\n >\n <div class=\"d-flex a-i-stretch\">\n <div class=\"col-sm-6 col-xs-6 separator-bottom\">\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__appicon\">\n <c8y-app-icon\n [app]=\"appRowControl.value.app\"\n [name]=\"appRowControl.value.app.name\"\n [contextPath]=\"appRowControl.value.app.contextPath\"\n ></c8y-app-icon>\n </div>\n <div class=\"c8y-list__item__body\" data-cy=\"defaultSubscriptionForm--c8y-list_item\">\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <p\n class=\"text-truncate\"\n title=\"{{ appRowControl.value.app | humanizeAppName | async }}\"\n >\n {{ appRowControl.value.app | humanizeAppName | async }}\n </p>\n <small class=\"text-muted\">{{ appRowControl.value.app.contextPath }}</small>\n </div>\n <div class=\"col-6 text-right-sm\">\n <p>\n <span class=\"text-label-small m-r-4\" translate>Tenant ID</span>\n {{ appRowControl.value.app.owner.tenant.id }}\n </p>\n <!-- TODO: uncomment when company name is available\n <p>\n <span class=\"text-label-small m-r-4\" translate>Company</span>\n <small class=\"text-muted\">company name</small>\n </p> -->\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnCreation.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnCreation\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnCreation.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnCreation.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on tenant creation' | translate }}</span>\n </label>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnUpgrade.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnUpgrade\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnUpgrade.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnUpgrade.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on platform upgrade' | translate }}</span>\n </label>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n type=\"submit\"\n title=\"{{ 'Save default subscriptions' | translate }}\"\n [disabled]=\"form.invalid || form.pristine\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n" }]
|
|
472
|
+
}], ctorParameters: () => [{ type: i1$1.FormBuilder }, { type: DefaultSubscriptionsService }, { type: i2.AlertService }] });
|
|
456
473
|
|
|
457
474
|
class DefaultSubscriptionsGuard {
|
|
458
475
|
constructor(tenantUiService) {
|
|
@@ -473,12 +490,12 @@ class DefaultSubscriptionsGuard {
|
|
|
473
490
|
}
|
|
474
491
|
return this.active;
|
|
475
492
|
}
|
|
476
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsGuard, deps: [{ token:
|
|
493
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsGuard, deps: [{ token: i2.TenantUiService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
477
494
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsGuard }); }
|
|
478
495
|
}
|
|
479
496
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsGuard, decorators: [{
|
|
480
497
|
type: Injectable
|
|
481
|
-
}], ctorParameters: () => [{ type:
|
|
498
|
+
}], ctorParameters: () => [{ type: i2.TenantUiService }] });
|
|
482
499
|
|
|
483
500
|
class DefaultSubscriptionsNavigationFactory {
|
|
484
501
|
constructor(defaultSubscriptionsGuard) {
|
|
@@ -506,7 +523,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
506
523
|
|
|
507
524
|
class DefaultSubscriptionsModule {
|
|
508
525
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
509
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsModule,
|
|
526
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsModule, imports: [CoreModule, ReactiveFormsModule, DefaultSubscriptionsComponent], exports: [DefaultSubscriptionsComponent] }); }
|
|
510
527
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsModule, providers: [
|
|
511
528
|
DefaultSubscriptionsService,
|
|
512
529
|
DefaultSubscriptionsGuard,
|
|
@@ -516,13 +533,12 @@ class DefaultSubscriptionsModule {
|
|
|
516
533
|
component: DefaultSubscriptionsComponent,
|
|
517
534
|
canActivate: [DefaultSubscriptionsGuard]
|
|
518
535
|
})
|
|
519
|
-
], imports: [CoreModule, ReactiveFormsModule] }); }
|
|
536
|
+
], imports: [CoreModule, ReactiveFormsModule, DefaultSubscriptionsComponent] }); }
|
|
520
537
|
}
|
|
521
538
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DefaultSubscriptionsModule, decorators: [{
|
|
522
539
|
type: NgModule,
|
|
523
540
|
args: [{
|
|
524
|
-
imports: [CoreModule, ReactiveFormsModule],
|
|
525
|
-
declarations: [DefaultSubscriptionsComponent],
|
|
541
|
+
imports: [CoreModule, ReactiveFormsModule, DefaultSubscriptionsComponent],
|
|
526
542
|
exports: [DefaultSubscriptionsComponent],
|
|
527
543
|
providers: [
|
|
528
544
|
DefaultSubscriptionsService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"c8y-ngx-components-default-subscriptions.mjs","sources":["../../default-subscriptions/default-subscriptions.model.ts","../../default-subscriptions/default-subscriptions.service.ts","../../default-subscriptions/default-subscriptions.component.ts","../../default-subscriptions/default-subscriptions.component.html","../../default-subscriptions/default-subscriptions.guard.ts","../../default-subscriptions/default-subscriptions-navigation.factory.ts","../../default-subscriptions/default-subscriptions.module.ts","../../default-subscriptions/c8y-ngx-components-default-subscriptions.ts"],"sourcesContent":["import { IApplication } from '@c8y/client';\n\n/** The list of partial application objects. */\nexport type PartialAppsList = Array<Partial<IApplication>>;\n\n/** The interface for default subscriptions configuration. */\nexport interface DefaultSubscriptions {\n /** Whether the list of on tenant creation subscriptions is overridden in the current tenant. Won't be defined for inherited configuration. */\n overrideOnCreationSubscriptions?: boolean;\n /** The list of applications subscribed to new tenants on creation. */\n onCreationSubscriptions: PartialAppsList;\n /** Whether the list of on platform upgrade subscriptions is overridden in the current tenant. Won't be defined for inherited configuration. */\n overrideOnUpgradeSubscriptions?: boolean;\n /** The list of applications subscribed to existing tenants on platform upgrade. */\n onUpgradeSubscriptions: PartialAppsList;\n}\n\n/** The context for evaluating default subscriptions configuration */\nexport enum DefaultSubscriptionsContext {\n /** Current tenant context (only current tenant options are taken into account). */\n CURRENT_TENANT,\n /** Parent tenant context (only parent tenant options are taken into account). */\n PARENT_TENANT\n}\n","import { Injectable } from '@angular/core';\nimport { isUndefined, sortBy } from 'lodash-es';\nimport { debounceTime, take } from 'rxjs/operators';\n\nimport {\n IApplication,\n ApplicationType,\n ApplicationService,\n ISystemOption,\n TenantService,\n TenantOptionsService\n} from '@c8y/client';\nimport { HumanizeAppNamePipe } from '@c8y/ngx-components';\n\nimport {\n PartialAppsList,\n DefaultSubscriptions,\n DefaultSubscriptionsContext as DefaultSubscriptionsContextTenant\n} from './default-subscriptions.model';\n\n@Injectable()\nexport class DefaultSubscriptionsService {\n constructor(\n private applicationService: ApplicationService,\n private tenantService: TenantService,\n private tenantOptionsService: TenantOptionsService,\n private humanizeAppNamePipe: HumanizeAppNamePipe\n ) {}\n\n /**\n * Gets the list of applications which can be used in default subscriptions, i.e.:\n * - current tenant's all own applications,\n * - inherited applications, which do not have the same names as current tenant's own apps.\n * The list is sorted alphabetically by humanized app name and contains up to 2000 items.\n * @returns The list of applications, which can be used in default subscriptions.\n */\n async getSubscribableTenantApps(): Promise<IApplication[]> {\n const currentTenant = (await this.tenantService.current()).data;\n\n const allApps = (await this.applicationService.listByTenant(null, { pageSize: 2000 })).data;\n const ownApps = allApps.filter(app => app.owner.tenant.id === currentTenant.name);\n const inheritedApps = allApps.filter(app => app.owner.tenant.id !== currentTenant.name);\n\n const filteredApps: IApplication[] = [...ownApps];\n inheritedApps.forEach(inheritedApp => {\n if (!filteredApps.some(filteredApp => filteredApp.name === inheritedApp.name)) {\n filteredApps.push(inheritedApp);\n }\n });\n\n const filteredAppsWithHumanizedNames = await Promise.all(\n filteredApps.map(async app => {\n const humanizedName = await this.humanizeAppNamePipe\n .transform(app.name)\n .pipe(debounceTime(250), take(1))\n .toPromise();\n return { app, humanizedName };\n })\n );\n const sortedAppsWithHumanizedNames = sortBy(filteredAppsWithHumanizedNames, ['humanizedName']);\n const sortedApps = sortedAppsWithHumanizedNames.map(({ app }) => app);\n\n return sortedApps;\n }\n\n /**\n * Gets the default subscriptions configuration inherited from parent tenant.\n * @returns The default subscriptions object with settings from parent tenant.\n */\n async getDefaultSubscriptionsEvaluatedFromParentTenant(): Promise<DefaultSubscriptions> {\n return this.getDefaultSubscriptions(DefaultSubscriptionsContextTenant.PARENT_TENANT);\n }\n\n /**\n * Gets the default subscriptions configuration from the current tenant.\n * @returns The default subscriptions object with settings from the current tenant.\n */\n async getDefaultSubscriptionsFromCurrentTenant(): Promise<DefaultSubscriptions> {\n return this.getDefaultSubscriptions(DefaultSubscriptionsContextTenant.CURRENT_TENANT);\n }\n\n /**\n * Saves given default subscriptions configuration to the current tenant\n * (either sets, updates, or deletes corresponding tenant options).\n * @param defaultSubscriptions The default subscriptions configuration to be saved.\n */\n async saveDefaultSubscriptionsToCurrentTenant(defaultSubscriptions: DefaultSubscriptions) {\n await this.saveOnCreationSubscriptions(defaultSubscriptions);\n await this.saveOnUpgradeSubscriptions(defaultSubscriptions);\n }\n\n /**\n * Gets default subscriptions in the context of current or parent tenant.\n * @param contextTenant Tells whether to use current or parent tenant as context.\n */\n private async getDefaultSubscriptions(\n contextTenant: DefaultSubscriptionsContextTenant\n ): Promise<DefaultSubscriptions> {\n let tenantOptionsParams: object;\n let overridable: boolean;\n\n switch (contextTenant) {\n case DefaultSubscriptionsContextTenant.CURRENT_TENANT:\n tenantOptionsParams = { evaluate: 'current' };\n overridable = true;\n break;\n\n case DefaultSubscriptionsContextTenant.PARENT_TENANT:\n tenantOptionsParams = { evaluate: 'inherited' };\n overridable = false;\n break;\n }\n\n const {\n onCreationApps,\n onCreationMicroservices,\n onUpgradeAppsEnabled,\n onUpgradeApps,\n onUpgradeMicroservicesEnabled,\n onUpgradeMicroservices\n } = await this.getTenantOptions(tenantOptionsParams);\n\n const onCreationSubscriptions = this.namesToPartialApps({\n appsNamesStr: onCreationApps,\n microservicesNamesStr: onCreationMicroservices\n });\n\n const onUpgradeAppsDefault = overridable ? null : onCreationApps;\n const onUpgradeMicroservicesDefault = overridable ? null : onCreationMicroservices;\n const onUpgradeSubscriptions = this.namesToPartialApps({\n appsNamesStr: onUpgradeAppsEnabled ? onUpgradeApps : onUpgradeAppsDefault,\n microservicesNamesStr: onUpgradeMicroservicesEnabled\n ? onUpgradeMicroservices\n : onUpgradeMicroservicesDefault\n });\n\n const defaultSubscriptions: DefaultSubscriptions = {\n onCreationSubscriptions,\n onUpgradeSubscriptions\n };\n\n if (overridable) {\n defaultSubscriptions.overrideOnCreationSubscriptions =\n onCreationApps !== null || onCreationMicroservices !== null;\n defaultSubscriptions.overrideOnUpgradeSubscriptions =\n onUpgradeAppsEnabled || onUpgradeMicroservicesEnabled;\n }\n\n return defaultSubscriptions;\n }\n\n private async getTenantOptions(params = {}) {\n return {\n onCreationApps: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'default.tenant.applications'\n },\n null,\n params\n ),\n onCreationMicroservices: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'default.tenant.microservices'\n },\n null,\n params\n ),\n onUpgradeAppsEnabled: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.applications.enabled'\n },\n false,\n params\n ),\n onUpgradeApps: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.applications'\n },\n null,\n params\n ),\n onUpgradeMicroservicesEnabled: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.microservices.enabled'\n },\n false,\n params\n ),\n onUpgradeMicroservices: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.microservices'\n },\n null,\n params\n )\n };\n }\n\n private async saveOnCreationSubscriptions(defaultSubscriptions: DefaultSubscriptions) {\n if (defaultSubscriptions.overrideOnCreationSubscriptions) {\n await this.setTenantOption({\n category: 'configuration',\n key: 'default.tenant.applications',\n value: this.partialAppsListToAppsNames(defaultSubscriptions.onCreationSubscriptions)\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'default.tenant.microservices',\n value: this.partialAppsToMicroservicesNames(defaultSubscriptions.onCreationSubscriptions)\n });\n } else {\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'default.tenant.applications'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'default.tenant.microservices'\n });\n }\n }\n\n private async saveOnUpgradeSubscriptions(defaultSubscriptions: DefaultSubscriptions) {\n if (defaultSubscriptions.overrideOnUpgradeSubscriptions) {\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications.enabled',\n value: 'true'\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices.enabled',\n value: 'true'\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications',\n value: this.partialAppsListToAppsNames(defaultSubscriptions.onUpgradeSubscriptions)\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices',\n value: this.partialAppsToMicroservicesNames(defaultSubscriptions.onUpgradeSubscriptions)\n });\n } else {\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications.enabled'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices.enabled'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices'\n });\n }\n }\n\n private async getTenantOption(option: ISystemOption, defaultValue = null, params = {}) {\n let value;\n try {\n value = (await this.tenantOptionsService.detail(option, params)).data.value;\n value = JSON.parse(value);\n } catch (ex) {\n value = !isUndefined(value) ? value : defaultValue;\n }\n return value;\n }\n\n private async setTenantOption(option: ISystemOption) {\n return this.tenantOptionsService.update(option);\n }\n\n private async unsetTenantOption(option: ISystemOption) {\n try {\n await this.tenantOptionsService.delete(option);\n } catch (ex) {\n if (!ex || !ex.res || ex.res.status !== 404) {\n throw ex;\n }\n }\n }\n\n private namesToPartialApps({\n appsNamesStr,\n microservicesNamesStr\n }: {\n appsNamesStr?: string;\n microservicesNamesStr?: string;\n }): PartialAppsList {\n if (appsNamesStr === null && microservicesNamesStr === null) {\n return null;\n }\n\n return [\n ...(appsNamesStr || '')\n .split(',')\n .filter(name => name.length)\n .map(name => ({ name: name.trim() })),\n ...(microservicesNamesStr || '')\n .split(',')\n .filter(name => name.length)\n .map(name => ({\n name: name.trim(),\n type: ApplicationType.MICROSERVICE\n }))\n ];\n }\n\n private partialAppsListToAppsNames(apps: PartialAppsList): string {\n return apps\n .filter(app => app.type !== ApplicationType.MICROSERVICE)\n .map(app => app.name)\n .join(',');\n }\n\n private partialAppsToMicroservicesNames(apps: PartialAppsList): string {\n return apps\n .filter(app => app.type === ApplicationType.MICROSERVICE)\n .map(app => app.name)\n .join(',');\n }\n}\n","import { Component } from '@angular/core';\nimport { FormArray, FormBuilder, FormGroup } from '@angular/forms';\nimport { IApplication } from '@c8y/client';\nimport { AlertService, gettext } from '@c8y/ngx-components';\nimport { DefaultSubscriptions, PartialAppsList } from './default-subscriptions.model';\nimport { DefaultSubscriptionsService } from './default-subscriptions.service';\n\n/**\n * The component shows the main view for managing default subscriptions configuration.\n */\n@Component({\n selector: 'c8y-default-subscriptions',\n templateUrl: './default-subscriptions.component.html',\n standalone: false\n})\nexport class DefaultSubscriptionsComponent {\n /** Default subscriptions inherited from parent tenant. */\n parentDefaultSubscriptions: DefaultSubscriptions;\n /** Default subscriptions defined in the current tenant. */\n currentDefaultSubscriptions: DefaultSubscriptions;\n /** Form object. */\n form: FormGroup;\n /** Whether the configuration is being loaded. */\n loading: boolean;\n /** Hint text for disabled checkboxes. */\n disabledCheckboxHint = gettext('Select \"Override inherited\" to enable.');\n\n constructor(\n private fb: FormBuilder,\n private defaultSubscriptionsService: DefaultSubscriptionsService,\n private alertService: AlertService\n ) {}\n\n /** Initializes the loading of the form and the current settings. */\n async ngOnInit() {\n this.loading = true;\n await this.initForm();\n await this.loadDefaultSubscriptions();\n this.loading = false;\n }\n\n /** Loads the list of apps, builds the form and hooks value change events for override switches. */\n async initForm() {\n this.form = this.fb.group({\n overrideOnCreationSubscriptions: [''],\n overrideOnUpgradeSubscriptions: [''],\n appRows: this.fb.array([])\n });\n\n const apps = await this.defaultSubscriptionsService.getSubscribableTenantApps();\n const appRows = this.form.controls.appRows as FormArray;\n apps.forEach(app => {\n appRows.push(\n this.fb.group({\n app: [app],\n subscribedOnCreation: [''],\n subscribedOnUpgrade: ['']\n })\n );\n });\n\n this.form\n .get('overrideOnCreationSubscriptions')\n .valueChanges.subscribe(value => this.onOverrideOnCreationSubscriptionsChange(value));\n\n this.form\n .get('overrideOnUpgradeSubscriptions')\n .valueChanges.subscribe(value => this.onOverrideOnUpgradeSubscriptionsChange(value));\n }\n\n /**\n * Checks if given application row should be displayed.\n * The row is displayed when any of its checkboxes is selected or any of the lists is being overridden.\n */\n shouldShowAppRow(appRowRawValue): boolean {\n const { subscribedOnCreation, subscribedOnUpgrade } = appRowRawValue;\n const { overrideOnCreationSubscriptions, overrideOnUpgradeSubscriptions } = this.form.value;\n\n return (\n subscribedOnCreation ||\n subscribedOnUpgrade ||\n overrideOnCreationSubscriptions ||\n overrideOnUpgradeSubscriptions\n );\n }\n\n /** Checks if there are no application rows to be displayed. */\n isEmptyView(): boolean {\n return !this.form\n .getRawValue()\n .appRows.some(appRowRawValue => this.shouldShowAppRow(appRowRawValue));\n }\n\n /**\n * Checks if given application is subscribed (present in the given list of applications).\n * @param app Application object to check.\n * @param subscribedApps The list of application objects to check against.\n * @returns True, if the application is present in the list.\n */\n isSubscribed(app: IApplication, subscribedApps: PartialAppsList): boolean {\n return subscribedApps && subscribedApps.some(subscribedApp => subscribedApp.name === app.name);\n }\n\n /** Saves the current value of form object to backend. */\n async save() {\n try {\n const defaultSubscriptions = this.getDefaultSubscriptionsForSave();\n await this.defaultSubscriptionsService.saveDefaultSubscriptionsToCurrentTenant(\n defaultSubscriptions\n );\n this.alertService.success(gettext('Saved.'));\n } catch (ex) {\n this.alertService.addServerFailure(ex);\n }\n }\n\n private onOverrideOnCreationSubscriptionsChange(overrideOnCreationSubscriptions: boolean) {\n if (overrideOnCreationSubscriptions) {\n this.enableSubscribeOnCreationCheckboxes();\n return;\n }\n this.disableSubscribeOnCreationCheckboxes();\n this.restoreSubscribeOnCreationFromParent();\n }\n\n private enableSubscribeOnCreationCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnCreation').enable({ emitEvent: false });\n });\n }\n\n private disableSubscribeOnCreationCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnCreation').disable({ emitEvent: false });\n });\n }\n\n private restoreSubscribeOnCreationFromParent() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.patchValue({\n subscribedOnCreation: this.isSubscribed(\n appRowControl.value.app,\n this.parentDefaultSubscriptions.onCreationSubscriptions\n )\n });\n });\n }\n\n private onOverrideOnUpgradeSubscriptionsChange(overrideOnUpgradeSubscriptions: boolean) {\n if (overrideOnUpgradeSubscriptions) {\n this.enableSubscribeOnUpgradeCheckboxes();\n return;\n }\n this.disableSubscribeOnUpgradeCheckboxes();\n this.restoreSubscribeOnUpgradeFromParent();\n }\n\n private enableSubscribeOnUpgradeCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnUpgrade').enable({ emitEvent: false });\n });\n }\n\n private disableSubscribeOnUpgradeCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnUpgrade').disable({ emitEvent: false });\n });\n }\n\n private restoreSubscribeOnUpgradeFromParent() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.patchValue({\n subscribedOnUpgrade: this.isSubscribed(\n appRowControl.value.app,\n this.parentDefaultSubscriptions.onUpgradeSubscriptions\n )\n });\n });\n }\n\n private async loadDefaultSubscriptions() {\n this.parentDefaultSubscriptions =\n await this.defaultSubscriptionsService.getDefaultSubscriptionsEvaluatedFromParentTenant();\n this.currentDefaultSubscriptions =\n await this.defaultSubscriptionsService.getDefaultSubscriptionsFromCurrentTenant();\n\n const { overrideOnCreationSubscriptions, overrideOnUpgradeSubscriptions } =\n this.currentDefaultSubscriptions;\n const onCreationSubscriptions = overrideOnCreationSubscriptions\n ? this.currentDefaultSubscriptions.onCreationSubscriptions\n : this.parentDefaultSubscriptions.onCreationSubscriptions;\n const onUpgradeSubscriptions = overrideOnUpgradeSubscriptions\n ? this.currentDefaultSubscriptions.onUpgradeSubscriptions\n : this.parentDefaultSubscriptions.onUpgradeSubscriptions;\n\n this.form.patchValue({\n overrideOnCreationSubscriptions,\n overrideOnUpgradeSubscriptions\n });\n (this.form.controls.appRows as FormArray).controls.forEach(appRowControl => {\n appRowControl.patchValue({\n subscribedOnCreation: this.isSubscribed(appRowControl.value.app, onCreationSubscriptions),\n subscribedOnUpgrade: this.isSubscribed(appRowControl.value.app, onUpgradeSubscriptions)\n });\n });\n }\n\n private getDefaultSubscriptionsForSave(): DefaultSubscriptions {\n const { value } = this.form;\n return {\n overrideOnCreationSubscriptions: value.overrideOnCreationSubscriptions,\n onCreationSubscriptions: value.overrideOnCreationSubscriptions\n ? value.appRows.filter(app => app.subscribedOnCreation).map(app => app.app)\n : null,\n overrideOnUpgradeSubscriptions: value.overrideOnUpgradeSubscriptions,\n onUpgradeSubscriptions: value.overrideOnUpgradeSubscriptions\n ? value.appRows.filter(app => app.subscribedOnUpgrade).map(app => app.app)\n : null\n };\n }\n}\n","<c8y-title>{{ 'Default subscriptions' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item [label]=\"'Ecosystem' | translate\" [icon]=\"'c8y-atom'\"></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [label]=\"'Default subscriptions' | translate\"\n [icon]=\"'c8y-atom'\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"card card--fullpage col-lg-max\">\n <div class=\"card-header separator\">\n <div class=\"card-title\" translate>Applications</div>\n </div>\n <div class=\"inner-scroll\">\n <div class=\"sticky-top separator-bottom\">\n <div class=\"d-flex\">\n <div class=\"col-sm-6 col-xs-6 p-24 p-t-16 p-l-xs-16\">\n <p translate>\n Configure default subscriptions in the platform, both for tenant creation and for\n platform upgrade. To display a full list of available applications, override inherited\n settings.\n </p>\n </div>\n <div class=\"col-sm-6 col-xs-6 bg-level-1 p-16 text-center separator-bottom\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on tenant creation</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnCreationSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on platform upgrade</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnUpgradeSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n <div class=\"card-block card-block d-flex a-i-center j-c-center d-col\" *ngIf=\"loading\">\n <c8y-loading></c8y-loading>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n\n <ng-container formArrayName=\"appRows\">\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n <div class=\"card-block bg-level-0\" *ngIf=\"!loading && isEmptyView()\">\n <c8y-ui-empty-state\n [icon]=\"'c8y-c8y-data'\"\n [title]=\"'No application subscriptions yet.' | translate\"\n [subtitle]=\"\n 'Select "Override inherited" to define the list of subscribed applications.'\n | translate\n \"\n ></c8y-ui-empty-state>\n </div>\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n\n <div *ngFor=\"let appRowControl of form.get('appRows')['controls']; let i = index\">\n <ng-container\n *ngIf=\"shouldShowAppRow(appRowControl.getRawValue())\"\n formArrayName=\"{{ i }}\"\n >\n <div class=\"d-flex a-i-stretch\">\n <div class=\"col-sm-6 col-xs-6 separator-bottom\">\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__appicon\">\n <c8y-app-icon\n [app]=\"appRowControl.value.app\"\n [name]=\"appRowControl.value.app.name\"\n [contextPath]=\"appRowControl.value.app.contextPath\"\n ></c8y-app-icon>\n </div>\n <div class=\"c8y-list__item__body\" data-cy=\"defaultSubscriptionForm--c8y-list_item\">\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <p\n class=\"text-truncate\"\n title=\"{{ appRowControl.value.app | humanizeAppName | async }}\"\n >\n {{ appRowControl.value.app | humanizeAppName | async }}\n </p>\n <small class=\"text-muted\">{{ appRowControl.value.app.contextPath }}</small>\n </div>\n <div class=\"col-6 text-right-sm\">\n <p>\n <span class=\"text-label-small m-r-4\" translate>Tenant ID</span>\n {{ appRowControl.value.app.owner.tenant.id }}\n </p>\n <!-- TODO: uncomment when company name is available\n <p>\n <span class=\"text-label-small m-r-4\" translate>Company</span>\n <small class=\"text-muted\">company name</small>\n </p> -->\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnCreation.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnCreation\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnCreation.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnCreation.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on tenant creation' | translate }}</span>\n </label>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnUpgrade.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnUpgrade\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnUpgrade.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnUpgrade.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on platform upgrade' | translate }}</span>\n </label>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n type=\"submit\"\n title=\"{{ 'Save default subscriptions' | translate }}\"\n [disabled]=\"form.invalid || form.pristine\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n","import { Injectable } from '@angular/core';\n\nimport { TenantUiService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class DefaultSubscriptionsGuard {\n private active: boolean;\n\n constructor(private tenantUiService: TenantUiService) {}\n\n /**\n * Checks if default subscriptions feature should be active,\n * i.e. whether the current tenant is the management or an enterprise tenant.\n * **Note: the check is executed only once in the runtime.**\n *\n * @returns True, if the feature should be active.\n */\n async canActivate(): Promise<boolean> {\n if (this.active === undefined) {\n this.active =\n (await this.tenantUiService.isManagementTenant()) ||\n (await this.tenantUiService.isEnterpriseTenant());\n }\n return this.active;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { gettext, NavigatorNode, NavigatorNodeFactory } from '@c8y/ngx-components';\nimport { DefaultSubscriptionsGuard } from './default-subscriptions.guard';\n\n@Injectable()\nexport class DefaultSubscriptionsNavigationFactory implements NavigatorNodeFactory {\n private navNode = new NavigatorNode({\n label: gettext('Default subscriptions'),\n path: '/default-subscriptions',\n icon: 'c8y-c8y-data',\n parent: gettext('Ecosystem'),\n priority: 100\n });\n\n constructor(private defaultSubscriptionsGuard: DefaultSubscriptionsGuard) {}\n\n /** Returns the navigation node if the feature is active. */\n async get(): Promise<NavigatorNode> {\n if (await this.defaultSubscriptionsGuard.canActivate()) {\n return this.navNode;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule, hookNavigator, hookRoute } from '@c8y/ngx-components';\n\nimport { DefaultSubscriptionsComponent } from './default-subscriptions.component';\nimport { DefaultSubscriptionsService } from './default-subscriptions.service';\nimport { DefaultSubscriptionsGuard } from './default-subscriptions.guard';\nimport { DefaultSubscriptionsNavigationFactory } from './default-subscriptions-navigation.factory';\n\n@NgModule({\n imports: [CoreModule, ReactiveFormsModule],\n declarations: [DefaultSubscriptionsComponent],\n exports: [DefaultSubscriptionsComponent],\n providers: [\n DefaultSubscriptionsService,\n DefaultSubscriptionsGuard,\n hookNavigator(DefaultSubscriptionsNavigationFactory),\n hookRoute({\n path: 'default-subscriptions',\n component: DefaultSubscriptionsComponent,\n canActivate: [DefaultSubscriptionsGuard]\n })\n ]\n})\nexport class DefaultSubscriptionsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DefaultSubscriptionsContextTenant","i2","i1","i2.DefaultSubscriptionsService","i1.DefaultSubscriptionsGuard"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"c8y-ngx-components-default-subscriptions.mjs","sources":["../../default-subscriptions/default-subscriptions.model.ts","../../default-subscriptions/default-subscriptions.service.ts","../../default-subscriptions/default-subscriptions.component.ts","../../default-subscriptions/default-subscriptions.component.html","../../default-subscriptions/default-subscriptions.guard.ts","../../default-subscriptions/default-subscriptions-navigation.factory.ts","../../default-subscriptions/default-subscriptions.module.ts","../../default-subscriptions/c8y-ngx-components-default-subscriptions.ts"],"sourcesContent":["import { IApplication } from '@c8y/client';\n\n/** The list of partial application objects. */\nexport type PartialAppsList = Array<Partial<IApplication>>;\n\n/** The interface for default subscriptions configuration. */\nexport interface DefaultSubscriptions {\n /** Whether the list of on tenant creation subscriptions is overridden in the current tenant. Won't be defined for inherited configuration. */\n overrideOnCreationSubscriptions?: boolean;\n /** The list of applications subscribed to new tenants on creation. */\n onCreationSubscriptions: PartialAppsList;\n /** Whether the list of on platform upgrade subscriptions is overridden in the current tenant. Won't be defined for inherited configuration. */\n overrideOnUpgradeSubscriptions?: boolean;\n /** The list of applications subscribed to existing tenants on platform upgrade. */\n onUpgradeSubscriptions: PartialAppsList;\n}\n\n/** The context for evaluating default subscriptions configuration */\nexport enum DefaultSubscriptionsContext {\n /** Current tenant context (only current tenant options are taken into account). */\n CURRENT_TENANT,\n /** Parent tenant context (only parent tenant options are taken into account). */\n PARENT_TENANT\n}\n","import { Injectable } from '@angular/core';\nimport { isUndefined, sortBy } from 'lodash-es';\nimport { debounceTime, take } from 'rxjs/operators';\n\nimport {\n IApplication,\n ApplicationType,\n ApplicationService,\n ISystemOption,\n TenantService,\n TenantOptionsService\n} from '@c8y/client';\nimport { HumanizeAppNamePipe } from '@c8y/ngx-components';\n\nimport {\n PartialAppsList,\n DefaultSubscriptions,\n DefaultSubscriptionsContext as DefaultSubscriptionsContextTenant\n} from './default-subscriptions.model';\n\n@Injectable()\nexport class DefaultSubscriptionsService {\n constructor(\n private applicationService: ApplicationService,\n private tenantService: TenantService,\n private tenantOptionsService: TenantOptionsService,\n private humanizeAppNamePipe: HumanizeAppNamePipe\n ) {}\n\n /**\n * Gets the list of applications which can be used in default subscriptions, i.e.:\n * - current tenant's all own applications,\n * - inherited applications, which do not have the same names as current tenant's own apps.\n * The list is sorted alphabetically by humanized app name and contains up to 2000 items.\n * @returns The list of applications, which can be used in default subscriptions.\n */\n async getSubscribableTenantApps(): Promise<IApplication[]> {\n const currentTenant = (await this.tenantService.current()).data;\n\n const allApps = (await this.applicationService.listByTenant(null, { pageSize: 2000 })).data;\n const ownApps = allApps.filter(app => app.owner.tenant.id === currentTenant.name);\n const inheritedApps = allApps.filter(app => app.owner.tenant.id !== currentTenant.name);\n\n const filteredApps: IApplication[] = [...ownApps];\n inheritedApps.forEach(inheritedApp => {\n if (!filteredApps.some(filteredApp => filteredApp.name === inheritedApp.name)) {\n filteredApps.push(inheritedApp);\n }\n });\n\n const filteredAppsWithHumanizedNames = await Promise.all(\n filteredApps.map(async app => {\n const humanizedName = await this.humanizeAppNamePipe\n .transform(app.name)\n .pipe(debounceTime(250), take(1))\n .toPromise();\n return { app, humanizedName };\n })\n );\n const sortedAppsWithHumanizedNames = sortBy(filteredAppsWithHumanizedNames, ['humanizedName']);\n const sortedApps = sortedAppsWithHumanizedNames.map(({ app }) => app);\n\n return sortedApps;\n }\n\n /**\n * Gets the default subscriptions configuration inherited from parent tenant.\n * @returns The default subscriptions object with settings from parent tenant.\n */\n async getDefaultSubscriptionsEvaluatedFromParentTenant(): Promise<DefaultSubscriptions> {\n return this.getDefaultSubscriptions(DefaultSubscriptionsContextTenant.PARENT_TENANT);\n }\n\n /**\n * Gets the default subscriptions configuration from the current tenant.\n * @returns The default subscriptions object with settings from the current tenant.\n */\n async getDefaultSubscriptionsFromCurrentTenant(): Promise<DefaultSubscriptions> {\n return this.getDefaultSubscriptions(DefaultSubscriptionsContextTenant.CURRENT_TENANT);\n }\n\n /**\n * Saves given default subscriptions configuration to the current tenant\n * (either sets, updates, or deletes corresponding tenant options).\n * @param defaultSubscriptions The default subscriptions configuration to be saved.\n */\n async saveDefaultSubscriptionsToCurrentTenant(defaultSubscriptions: DefaultSubscriptions) {\n await this.saveOnCreationSubscriptions(defaultSubscriptions);\n await this.saveOnUpgradeSubscriptions(defaultSubscriptions);\n }\n\n /**\n * Gets default subscriptions in the context of current or parent tenant.\n * @param contextTenant Tells whether to use current or parent tenant as context.\n */\n private async getDefaultSubscriptions(\n contextTenant: DefaultSubscriptionsContextTenant\n ): Promise<DefaultSubscriptions> {\n let tenantOptionsParams: object;\n let overridable: boolean;\n\n switch (contextTenant) {\n case DefaultSubscriptionsContextTenant.CURRENT_TENANT:\n tenantOptionsParams = { evaluate: 'current' };\n overridable = true;\n break;\n\n case DefaultSubscriptionsContextTenant.PARENT_TENANT:\n tenantOptionsParams = { evaluate: 'inherited' };\n overridable = false;\n break;\n }\n\n const {\n onCreationApps,\n onCreationMicroservices,\n onUpgradeAppsEnabled,\n onUpgradeApps,\n onUpgradeMicroservicesEnabled,\n onUpgradeMicroservices\n } = await this.getTenantOptions(tenantOptionsParams);\n\n const onCreationSubscriptions = this.namesToPartialApps({\n appsNamesStr: onCreationApps,\n microservicesNamesStr: onCreationMicroservices\n });\n\n const onUpgradeAppsDefault = overridable ? null : onCreationApps;\n const onUpgradeMicroservicesDefault = overridable ? null : onCreationMicroservices;\n const onUpgradeSubscriptions = this.namesToPartialApps({\n appsNamesStr: onUpgradeAppsEnabled ? onUpgradeApps : onUpgradeAppsDefault,\n microservicesNamesStr: onUpgradeMicroservicesEnabled\n ? onUpgradeMicroservices\n : onUpgradeMicroservicesDefault\n });\n\n const defaultSubscriptions: DefaultSubscriptions = {\n onCreationSubscriptions,\n onUpgradeSubscriptions\n };\n\n if (overridable) {\n defaultSubscriptions.overrideOnCreationSubscriptions =\n onCreationApps !== null || onCreationMicroservices !== null;\n defaultSubscriptions.overrideOnUpgradeSubscriptions =\n onUpgradeAppsEnabled || onUpgradeMicroservicesEnabled;\n }\n\n return defaultSubscriptions;\n }\n\n private async getTenantOptions(params = {}) {\n return {\n onCreationApps: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'default.tenant.applications'\n },\n null,\n params\n ),\n onCreationMicroservices: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'default.tenant.microservices'\n },\n null,\n params\n ),\n onUpgradeAppsEnabled: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.applications.enabled'\n },\n false,\n params\n ),\n onUpgradeApps: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.applications'\n },\n null,\n params\n ),\n onUpgradeMicroservicesEnabled: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.microservices.enabled'\n },\n false,\n params\n ),\n onUpgradeMicroservices: await this.getTenantOption(\n {\n category: 'configuration',\n key: 'on-update.tenant.microservices'\n },\n null,\n params\n )\n };\n }\n\n private async saveOnCreationSubscriptions(defaultSubscriptions: DefaultSubscriptions) {\n if (defaultSubscriptions.overrideOnCreationSubscriptions) {\n await this.setTenantOption({\n category: 'configuration',\n key: 'default.tenant.applications',\n value: this.partialAppsListToAppsNames(defaultSubscriptions.onCreationSubscriptions)\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'default.tenant.microservices',\n value: this.partialAppsToMicroservicesNames(defaultSubscriptions.onCreationSubscriptions)\n });\n } else {\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'default.tenant.applications'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'default.tenant.microservices'\n });\n }\n }\n\n private async saveOnUpgradeSubscriptions(defaultSubscriptions: DefaultSubscriptions) {\n if (defaultSubscriptions.overrideOnUpgradeSubscriptions) {\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications.enabled',\n value: 'true'\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices.enabled',\n value: 'true'\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications',\n value: this.partialAppsListToAppsNames(defaultSubscriptions.onUpgradeSubscriptions)\n });\n await this.setTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices',\n value: this.partialAppsToMicroservicesNames(defaultSubscriptions.onUpgradeSubscriptions)\n });\n } else {\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications.enabled'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices.enabled'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.applications'\n });\n await this.unsetTenantOption({\n category: 'configuration',\n key: 'on-update.tenant.microservices'\n });\n }\n }\n\n private async getTenantOption(option: ISystemOption, defaultValue = null, params = {}) {\n let value;\n try {\n value = (await this.tenantOptionsService.detail(option, params)).data.value;\n value = JSON.parse(value);\n } catch (ex) {\n value = !isUndefined(value) ? value : defaultValue;\n }\n return value;\n }\n\n private async setTenantOption(option: ISystemOption) {\n return this.tenantOptionsService.update(option);\n }\n\n private async unsetTenantOption(option: ISystemOption) {\n try {\n await this.tenantOptionsService.delete(option);\n } catch (ex) {\n if (!ex || !ex.res || ex.res.status !== 404) {\n throw ex;\n }\n }\n }\n\n private namesToPartialApps({\n appsNamesStr,\n microservicesNamesStr\n }: {\n appsNamesStr?: string;\n microservicesNamesStr?: string;\n }): PartialAppsList {\n if (appsNamesStr === null && microservicesNamesStr === null) {\n return null;\n }\n\n return [\n ...(appsNamesStr || '')\n .split(',')\n .filter(name => name.length)\n .map(name => ({ name: name.trim() })),\n ...(microservicesNamesStr || '')\n .split(',')\n .filter(name => name.length)\n .map(name => ({\n name: name.trim(),\n type: ApplicationType.MICROSERVICE\n }))\n ];\n }\n\n private partialAppsListToAppsNames(apps: PartialAppsList): string {\n return apps\n .filter(app => app.type !== ApplicationType.MICROSERVICE)\n .map(app => app.name)\n .join(',');\n }\n\n private partialAppsToMicroservicesNames(apps: PartialAppsList): string {\n return apps\n .filter(app => app.type === ApplicationType.MICROSERVICE)\n .map(app => app.name)\n .join(',');\n }\n}\n","import { Component } from '@angular/core';\nimport {\n FormArray,\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule\n} from '@angular/forms';\nimport { IApplication } from '@c8y/client';\nimport {\n AlertService,\n gettext,\n TitleComponent,\n BreadcrumbComponent,\n BreadcrumbItemComponent,\n C8yTranslateDirective,\n RequiredInputPlaceholderDirective,\n LoadingComponent,\n EmptyStateComponent,\n AppIconComponent,\n C8yTranslatePipe,\n HumanizeAppNamePipe\n} from '@c8y/ngx-components';\nimport { DefaultSubscriptions, PartialAppsList } from './default-subscriptions.model';\nimport { DefaultSubscriptionsService } from './default-subscriptions.service';\nimport { NgIf, NgFor, NgClass, AsyncPipe } from '@angular/common';\n\n/**\n * The component shows the main view for managing default subscriptions configuration.\n */\n@Component({\n selector: 'c8y-default-subscriptions',\n templateUrl: './default-subscriptions.component.html',\n imports: [\n TitleComponent,\n BreadcrumbComponent,\n BreadcrumbItemComponent,\n FormsModule,\n ReactiveFormsModule,\n C8yTranslateDirective,\n RequiredInputPlaceholderDirective,\n NgIf,\n LoadingComponent,\n EmptyStateComponent,\n NgFor,\n AppIconComponent,\n NgClass,\n C8yTranslatePipe,\n AsyncPipe,\n HumanizeAppNamePipe\n ]\n})\nexport class DefaultSubscriptionsComponent {\n /** Default subscriptions inherited from parent tenant. */\n parentDefaultSubscriptions: DefaultSubscriptions;\n /** Default subscriptions defined in the current tenant. */\n currentDefaultSubscriptions: DefaultSubscriptions;\n /** Form object. */\n form: FormGroup;\n /** Whether the configuration is being loaded. */\n loading: boolean;\n /** Hint text for disabled checkboxes. */\n disabledCheckboxHint = gettext('Select \"Override inherited\" to enable.');\n\n constructor(\n private fb: FormBuilder,\n private defaultSubscriptionsService: DefaultSubscriptionsService,\n private alertService: AlertService\n ) {}\n\n /** Initializes the loading of the form and the current settings. */\n async ngOnInit() {\n this.loading = true;\n await this.initForm();\n await this.loadDefaultSubscriptions();\n this.loading = false;\n }\n\n /** Loads the list of apps, builds the form and hooks value change events for override switches. */\n async initForm() {\n this.form = this.fb.group({\n overrideOnCreationSubscriptions: [''],\n overrideOnUpgradeSubscriptions: [''],\n appRows: this.fb.array([])\n });\n\n const apps = await this.defaultSubscriptionsService.getSubscribableTenantApps();\n const appRows = this.form.controls.appRows as FormArray;\n apps.forEach(app => {\n appRows.push(\n this.fb.group({\n app: [app],\n subscribedOnCreation: [''],\n subscribedOnUpgrade: ['']\n })\n );\n });\n\n this.form\n .get('overrideOnCreationSubscriptions')\n .valueChanges.subscribe(value => this.onOverrideOnCreationSubscriptionsChange(value));\n\n this.form\n .get('overrideOnUpgradeSubscriptions')\n .valueChanges.subscribe(value => this.onOverrideOnUpgradeSubscriptionsChange(value));\n }\n\n /**\n * Checks if given application row should be displayed.\n * The row is displayed when any of its checkboxes is selected or any of the lists is being overridden.\n */\n shouldShowAppRow(appRowRawValue): boolean {\n const { subscribedOnCreation, subscribedOnUpgrade } = appRowRawValue;\n const { overrideOnCreationSubscriptions, overrideOnUpgradeSubscriptions } = this.form.value;\n\n return (\n subscribedOnCreation ||\n subscribedOnUpgrade ||\n overrideOnCreationSubscriptions ||\n overrideOnUpgradeSubscriptions\n );\n }\n\n /** Checks if there are no application rows to be displayed. */\n isEmptyView(): boolean {\n return !this.form\n .getRawValue()\n .appRows.some(appRowRawValue => this.shouldShowAppRow(appRowRawValue));\n }\n\n /**\n * Checks if given application is subscribed (present in the given list of applications).\n * @param app Application object to check.\n * @param subscribedApps The list of application objects to check against.\n * @returns True, if the application is present in the list.\n */\n isSubscribed(app: IApplication, subscribedApps: PartialAppsList): boolean {\n return subscribedApps && subscribedApps.some(subscribedApp => subscribedApp.name === app.name);\n }\n\n /** Saves the current value of form object to backend. */\n async save() {\n try {\n const defaultSubscriptions = this.getDefaultSubscriptionsForSave();\n await this.defaultSubscriptionsService.saveDefaultSubscriptionsToCurrentTenant(\n defaultSubscriptions\n );\n this.alertService.success(gettext('Saved.'));\n } catch (ex) {\n this.alertService.addServerFailure(ex);\n }\n }\n\n private onOverrideOnCreationSubscriptionsChange(overrideOnCreationSubscriptions: boolean) {\n if (overrideOnCreationSubscriptions) {\n this.enableSubscribeOnCreationCheckboxes();\n return;\n }\n this.disableSubscribeOnCreationCheckboxes();\n this.restoreSubscribeOnCreationFromParent();\n }\n\n private enableSubscribeOnCreationCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnCreation').enable({ emitEvent: false });\n });\n }\n\n private disableSubscribeOnCreationCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnCreation').disable({ emitEvent: false });\n });\n }\n\n private restoreSubscribeOnCreationFromParent() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.patchValue({\n subscribedOnCreation: this.isSubscribed(\n appRowControl.value.app,\n this.parentDefaultSubscriptions.onCreationSubscriptions\n )\n });\n });\n }\n\n private onOverrideOnUpgradeSubscriptionsChange(overrideOnUpgradeSubscriptions: boolean) {\n if (overrideOnUpgradeSubscriptions) {\n this.enableSubscribeOnUpgradeCheckboxes();\n return;\n }\n this.disableSubscribeOnUpgradeCheckboxes();\n this.restoreSubscribeOnUpgradeFromParent();\n }\n\n private enableSubscribeOnUpgradeCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnUpgrade').enable({ emitEvent: false });\n });\n }\n\n private disableSubscribeOnUpgradeCheckboxes() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.get('subscribedOnUpgrade').disable({ emitEvent: false });\n });\n }\n\n private restoreSubscribeOnUpgradeFromParent() {\n const appRowsControls = (this.form.controls.appRows as FormArray).controls;\n appRowsControls.forEach(appRowControl => {\n appRowControl.patchValue({\n subscribedOnUpgrade: this.isSubscribed(\n appRowControl.value.app,\n this.parentDefaultSubscriptions.onUpgradeSubscriptions\n )\n });\n });\n }\n\n private async loadDefaultSubscriptions() {\n this.parentDefaultSubscriptions =\n await this.defaultSubscriptionsService.getDefaultSubscriptionsEvaluatedFromParentTenant();\n this.currentDefaultSubscriptions =\n await this.defaultSubscriptionsService.getDefaultSubscriptionsFromCurrentTenant();\n\n const { overrideOnCreationSubscriptions, overrideOnUpgradeSubscriptions } =\n this.currentDefaultSubscriptions;\n const onCreationSubscriptions = overrideOnCreationSubscriptions\n ? this.currentDefaultSubscriptions.onCreationSubscriptions\n : this.parentDefaultSubscriptions.onCreationSubscriptions;\n const onUpgradeSubscriptions = overrideOnUpgradeSubscriptions\n ? this.currentDefaultSubscriptions.onUpgradeSubscriptions\n : this.parentDefaultSubscriptions.onUpgradeSubscriptions;\n\n this.form.patchValue({\n overrideOnCreationSubscriptions,\n overrideOnUpgradeSubscriptions\n });\n (this.form.controls.appRows as FormArray).controls.forEach(appRowControl => {\n appRowControl.patchValue({\n subscribedOnCreation: this.isSubscribed(appRowControl.value.app, onCreationSubscriptions),\n subscribedOnUpgrade: this.isSubscribed(appRowControl.value.app, onUpgradeSubscriptions)\n });\n });\n }\n\n private getDefaultSubscriptionsForSave(): DefaultSubscriptions {\n const { value } = this.form;\n return {\n overrideOnCreationSubscriptions: value.overrideOnCreationSubscriptions,\n onCreationSubscriptions: value.overrideOnCreationSubscriptions\n ? value.appRows.filter(app => app.subscribedOnCreation).map(app => app.app)\n : null,\n overrideOnUpgradeSubscriptions: value.overrideOnUpgradeSubscriptions,\n onUpgradeSubscriptions: value.overrideOnUpgradeSubscriptions\n ? value.appRows.filter(app => app.subscribedOnUpgrade).map(app => app.app)\n : null\n };\n }\n}\n","<c8y-title>{{ 'Default subscriptions' | translate }}</c8y-title>\n\n<c8y-breadcrumb>\n <c8y-breadcrumb-item [label]=\"'Ecosystem' | translate\" [icon]=\"'c8y-atom'\"></c8y-breadcrumb-item>\n <c8y-breadcrumb-item\n [label]=\"'Default subscriptions' | translate\"\n [icon]=\"'c8y-atom'\"\n ></c8y-breadcrumb-item>\n</c8y-breadcrumb>\n\n<form [formGroup]=\"form\" (ngSubmit)=\"save()\">\n <div class=\"card card--fullpage col-lg-max\">\n <div class=\"card-header separator\">\n <div class=\"card-title\" translate>Applications</div>\n </div>\n <div class=\"inner-scroll\">\n <div class=\"sticky-top separator-bottom\">\n <div class=\"d-flex\">\n <div class=\"col-sm-6 col-xs-6 p-24 p-t-16 p-l-xs-16\">\n <p translate>\n Configure default subscriptions in the platform, both for tenant creation and for\n platform upgrade. To display a full list of available applications, override inherited\n settings.\n </p>\n </div>\n <div class=\"col-sm-6 col-xs-6 bg-level-1 p-16 text-center separator-bottom\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on tenant creation</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnCreationSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n <div class=\"col-sm-6 col-xs-6\">\n <p><strong translate>Subscribed on platform upgrade</strong></p>\n <div>\n <label class=\"c8y-switch\" title=\"{{ 'Override inherited' | translate }}\">\n <input type=\"checkbox\" formControlName=\"overrideOnUpgradeSubscriptions\" />\n <span></span>\n <span>\n {{ 'Override inherited' | translate }}\n </span>\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n <div class=\"card-block card-block d-flex a-i-center j-c-center d-col\" *ngIf=\"loading\">\n <c8y-loading></c8y-loading>\n </div>\n <div class=\"card-block\" *ngIf=\"loading\"></div>\n\n <ng-container formArrayName=\"appRows\">\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n <div class=\"card-block bg-level-0\" *ngIf=\"!loading && isEmptyView()\">\n <c8y-ui-empty-state\n [icon]=\"'c8y-c8y-data'\"\n [title]=\"'No application subscriptions yet.' | translate\"\n [subtitle]=\"\n 'Select "Override inherited" to define the list of subscribed applications.'\n | translate\n \"\n ></c8y-ui-empty-state>\n </div>\n <div class=\"bg-level-1\" *ngIf=\"!loading && isEmptyView()\"></div>\n\n <div *ngFor=\"let appRowControl of form.get('appRows')['controls']; let i = index\">\n <ng-container\n *ngIf=\"shouldShowAppRow(appRowControl.getRawValue())\"\n formArrayName=\"{{ i }}\"\n >\n <div class=\"d-flex a-i-stretch\">\n <div class=\"col-sm-6 col-xs-6 separator-bottom\">\n <div class=\"c8y-list__item__block\">\n <div class=\"c8y-list__item__appicon\">\n <c8y-app-icon\n [app]=\"appRowControl.value.app\"\n [name]=\"appRowControl.value.app.name\"\n [contextPath]=\"appRowControl.value.app.contextPath\"\n ></c8y-app-icon>\n </div>\n <div class=\"c8y-list__item__body\" data-cy=\"defaultSubscriptionForm--c8y-list_item\">\n <div class=\"content-flex-30\">\n <div class=\"col-6\">\n <p\n class=\"text-truncate\"\n title=\"{{ appRowControl.value.app | humanizeAppName | async }}\"\n >\n {{ appRowControl.value.app | humanizeAppName | async }}\n </p>\n <small class=\"text-muted\">{{ appRowControl.value.app.contextPath }}</small>\n </div>\n <div class=\"col-6 text-right-sm\">\n <p>\n <span class=\"text-label-small m-r-4\" translate>Tenant ID</span>\n {{ appRowControl.value.app.owner.tenant.id }}\n </p>\n <!-- TODO: uncomment when company name is available\n <p>\n <span class=\"text-label-small m-r-4\" translate>Company</span>\n <small class=\"text-muted\">company name</small>\n </p> -->\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnCreation.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnCreation\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnCreation.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnCreation.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on tenant creation' | translate }}</span>\n </label>\n </div>\n\n <div\n class=\"col-sm-3 col-xs-3 bg-level-1 separator-bottom d-flex j-c-center a-i-center\"\n >\n <label\n class=\"c8y-checkbox\"\n [ngClass]=\"{ disabled: appRowControl.controls.subscribedOnUpgrade.disabled }\"\n >\n <input type=\"checkbox\" formControlName=\"subscribedOnUpgrade\" />\n <span *ngIf=\"!appRowControl.controls.subscribedOnUpgrade.disabled\"></span>\n <span\n *ngIf=\"appRowControl.controls.subscribedOnUpgrade.disabled\"\n title=\"{{ disabledCheckboxHint | translate }}\"\n ></span>\n <span class=\"sr-only\">{{ 'Subscribed on platform upgrade' | translate }}</span>\n </label>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <div class=\"card-footer separator\">\n <button\n class=\"btn btn-primary\"\n type=\"submit\"\n title=\"{{ 'Save default subscriptions' | translate }}\"\n [disabled]=\"form.invalid || form.pristine\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n </div>\n</form>\n","import { Injectable } from '@angular/core';\n\nimport { TenantUiService } from '@c8y/ngx-components';\n\n@Injectable()\nexport class DefaultSubscriptionsGuard {\n private active: boolean;\n\n constructor(private tenantUiService: TenantUiService) {}\n\n /**\n * Checks if default subscriptions feature should be active,\n * i.e. whether the current tenant is the management or an enterprise tenant.\n * **Note: the check is executed only once in the runtime.**\n *\n * @returns True, if the feature should be active.\n */\n async canActivate(): Promise<boolean> {\n if (this.active === undefined) {\n this.active =\n (await this.tenantUiService.isManagementTenant()) ||\n (await this.tenantUiService.isEnterpriseTenant());\n }\n return this.active;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { gettext, NavigatorNode, NavigatorNodeFactory } from '@c8y/ngx-components';\nimport { DefaultSubscriptionsGuard } from './default-subscriptions.guard';\n\n@Injectable()\nexport class DefaultSubscriptionsNavigationFactory implements NavigatorNodeFactory {\n private navNode = new NavigatorNode({\n label: gettext('Default subscriptions'),\n path: '/default-subscriptions',\n icon: 'c8y-c8y-data',\n parent: gettext('Ecosystem'),\n priority: 100\n });\n\n constructor(private defaultSubscriptionsGuard: DefaultSubscriptionsGuard) {}\n\n /** Returns the navigation node if the feature is active. */\n async get(): Promise<NavigatorNode> {\n if (await this.defaultSubscriptionsGuard.canActivate()) {\n return this.navNode;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { CoreModule, hookNavigator, hookRoute } from '@c8y/ngx-components';\n\nimport { DefaultSubscriptionsComponent } from './default-subscriptions.component';\nimport { DefaultSubscriptionsService } from './default-subscriptions.service';\nimport { DefaultSubscriptionsGuard } from './default-subscriptions.guard';\nimport { DefaultSubscriptionsNavigationFactory } from './default-subscriptions-navigation.factory';\n\n@NgModule({\n imports: [CoreModule, ReactiveFormsModule, DefaultSubscriptionsComponent],\n exports: [DefaultSubscriptionsComponent],\n providers: [\n DefaultSubscriptionsService,\n DefaultSubscriptionsGuard,\n hookNavigator(DefaultSubscriptionsNavigationFactory),\n hookRoute({\n path: 'default-subscriptions',\n component: DefaultSubscriptionsComponent,\n canActivate: [DefaultSubscriptionsGuard]\n })\n ]\n})\nexport class DefaultSubscriptionsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DefaultSubscriptionsContextTenant","i1","i2.DefaultSubscriptionsService","i3","i1.DefaultSubscriptionsGuard"],"mappings":"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"}
|