@c8y/ngx-components 1021.13.3 → 1021.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/alarms/alarms-list.component.d.ts +2 -17
- package/alarms/alarms-list.component.d.ts.map +1 -1
- package/alarms/alarms-view.service.d.ts +1 -0
- package/alarms/alarms-view.service.d.ts.map +1 -1
- package/alarms/alarms.model.d.ts +30 -0
- package/alarms/alarms.model.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.model.d.ts +1 -0
- package/context-dashboard/context-dashboard.model.d.ts.map +1 -1
- package/context-dashboard/context-dashboard.service.d.ts +7 -5
- package/context-dashboard/context-dashboard.service.d.ts.map +1 -1
- package/context-dashboard/dashboard-detail.component.d.ts +4 -7
- package/context-dashboard/dashboard-detail.component.d.ts.map +1 -1
- package/context-dashboard/dashboard-detail.service.d.ts +4 -4
- package/context-dashboard/dashboard-detail.service.d.ts.map +1 -1
- package/context-dashboard/dashboard-settings/dashboard-general-settings.component.d.ts +2 -2
- package/context-dashboard/dashboard-settings/dashboard-general-settings.component.d.ts.map +1 -1
- package/context-dashboard/dashboard-settings/typed-dashboard-settings.component.d.ts +19 -6
- package/context-dashboard/dashboard-settings/typed-dashboard-settings.component.d.ts.map +1 -1
- package/core/action-bar/action-bar-item.component.d.ts +1 -1
- package/core/action-bar/action-bar-item.component.d.ts.map +1 -1
- package/core/action-bar/action-bar.module.d.ts +6 -6
- package/core/action-bar/action-bar.module.d.ts.map +1 -1
- package/core/bootstrap/bootstrap.component.d.ts +3 -1
- package/core/bootstrap/bootstrap.component.d.ts.map +1 -1
- package/core/common/aggregation/aggregation.model.d.ts +39 -0
- package/core/common/aggregation/aggregation.model.d.ts.map +1 -0
- package/core/common/aggregation/aggregation.service.d.ts +17 -0
- package/core/common/aggregation/aggregation.service.d.ts.map +1 -0
- package/core/common/index.d.ts +4 -0
- package/core/common/index.d.ts.map +1 -1
- package/core/common/inter-app.service.d.ts +48 -0
- package/core/common/inter-app.service.d.ts.map +1 -0
- package/core/common/interval-based-reload.abstract.d.ts +120 -0
- package/core/common/interval-based-reload.abstract.d.ts.map +1 -0
- package/core/dashboard/dashboard.module.d.ts +24 -18
- package/core/dashboard/dashboard.module.d.ts.map +1 -1
- package/core/dashboard/index.d.ts +3 -0
- package/core/dashboard/index.d.ts.map +1 -1
- package/core/dashboard/widget-auto-refresh-context/auto-refresh-control.component.d.ts +31 -0
- package/core/dashboard/widget-auto-refresh-context/auto-refresh-control.component.d.ts.map +1 -0
- package/core/dashboard/widget-auto-refresh-context/auto-refresh-select-control.component.d.ts +17 -0
- package/core/dashboard/widget-auto-refresh-context/auto-refresh-select-control.component.d.ts.map +1 -0
- package/core/dashboard/widget-auto-refresh-context/global-refresh-loading.operator.d.ts +4 -0
- package/core/dashboard/widget-auto-refresh-context/global-refresh-loading.operator.d.ts.map +1 -0
- package/core/dashboard/widget-auto-refresh-context/index.d.ts +8 -0
- package/core/dashboard/widget-auto-refresh-context/index.d.ts.map +1 -0
- package/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context-icon-bar.component.d.ts +7 -0
- package/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context-icon-bar.component.d.ts.map +1 -0
- package/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context.component.d.ts +29 -0
- package/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context.component.d.ts.map +1 -0
- package/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context.model.d.ts +15 -0
- package/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context.model.d.ts.map +1 -0
- package/core/dashboard/widget-auto-refresh-context/widget-global-auto-refresh.service.d.ts +169 -0
- package/core/dashboard/widget-auto-refresh-context/widget-global-auto-refresh.service.d.ts.map +1 -0
- package/core/dashboard/widgets-dashboard.component.d.ts +6 -3
- package/core/dashboard/widgets-dashboard.component.d.ts.map +1 -1
- package/core/dashboard/wiget-time-context/aggregation-picker/aggregation-picker.component.d.ts +2 -2
- package/core/dashboard/wiget-time-context/aggregation-picker/aggregation-picker.component.d.ts.map +1 -1
- package/core/dashboard/wiget-time-context/widget-time-context-icon-bar/widget-time-context-icon-bar.component.d.ts +1 -1
- package/core/dashboard/wiget-time-context/widget-time-context-icon-bar/widget-time-context-icon-bar.component.d.ts.map +1 -1
- package/core/dashboard/wiget-time-context/widget-time-context-query.service.d.ts.map +1 -1
- package/core/dashboard/wiget-time-context/widget-time-context.component.d.ts +11 -8
- package/core/dashboard/wiget-time-context/widget-time-context.component.d.ts.map +1 -1
- package/core/dashboard/wiget-time-context/widget-time-context.model.d.ts +6 -12
- package/core/dashboard/wiget-time-context/widget-time-context.model.d.ts.map +1 -1
- package/core/header/header.module.d.ts +18 -18
- package/core/header/header.module.d.ts.map +1 -1
- package/core/header/title/title.component.d.ts +1 -1
- package/core/header/title/title.component.d.ts.map +1 -1
- package/core/i18n/cached-locale-dictionary.service.d.ts +5 -1
- package/core/i18n/cached-locale-dictionary.service.d.ts.map +1 -1
- package/core/i18n/i18n.module.d.ts +0 -4
- package/core/i18n/i18n.module.d.ts.map +1 -1
- package/core/i18n/index.d.ts +2 -1
- package/core/i18n/index.d.ts.map +1 -1
- package/core/i18n/translation-loader.service.d.ts +50 -0
- package/core/i18n/translation-loader.service.d.ts.map +1 -0
- package/core/i18n/translation-utils.d.ts +14 -0
- package/core/i18n/translation-utils.d.ts.map +1 -0
- package/core/plugins/plugins-resolve.service.d.ts +7 -10
- package/core/plugins/plugins-resolve.service.d.ts.map +1 -1
- package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form-validation.service.d.ts +2 -1
- package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form-validation.service.d.ts.map +1 -1
- package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts +11 -2
- package/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.d.ts.map +1 -1
- package/datapoint-selector/datapoint-selection.model.d.ts +6 -0
- package/datapoint-selector/datapoint-selection.model.d.ts.map +1 -1
- package/datapoints-export-selector/c8y-ngx-components-datapoints-export-selector.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-fetching.service.d.ts +117 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-fetching.service.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-processing.service.d.ts +90 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-processing.service.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.component.d.ts +160 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.component.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.service.d.ts +89 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.service.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-preview/datapoints-export-selector-preview.component.d.ts +11 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-preview/datapoints-export-selector-preview.component.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-data-scope/datapoints-exports-selector-data-scope.component.d.ts +27 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-data-scope/datapoints-exports-selector-data-scope.component.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-file-types/datapoints-exports-selector-file-types.component.d.ts +12 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-file-types/datapoints-exports-selector-file-types.component.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-time-range/datapoints-exports-selector-time-range.component.d.ts +22 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-time-range/datapoints-exports-selector-time-range.component.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/generators/csv-generator.d.ts +3 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/generators/csv-generator.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/generators/excel-generator.d.ts +9 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/generators/excel-generator.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/utils.service.d.ts +56 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/utils.service.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-modal.component.d.ts +21 -0
- package/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-modal.component.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector.component.d.ts +14 -0
- package/datapoints-export-selector/datapoints-export-selector.component.d.ts.map +1 -0
- package/datapoints-export-selector/datapoints-export-selector.model.d.ts +232 -0
- package/datapoints-export-selector/datapoints-export-selector.model.d.ts.map +1 -0
- package/datapoints-export-selector/index.d.ts +15 -0
- package/datapoints-export-selector/index.d.ts.map +1 -0
- package/device-list/device-list.module.d.ts +4 -2
- package/device-list/device-list.module.d.ts.map +1 -1
- package/esm2022/alarms/alarms-list.component.mjs +5 -16
- package/esm2022/alarms/alarms-view.service.mjs +2 -1
- package/esm2022/alarms/alarms.model.mjs +1 -1
- package/esm2022/context-dashboard/context-dashboard.component.mjs +4 -4
- package/esm2022/context-dashboard/context-dashboard.model.mjs +1 -1
- package/esm2022/context-dashboard/context-dashboard.service.mjs +47 -21
- package/esm2022/context-dashboard/dashboard-detail.component.mjs +8 -16
- package/esm2022/context-dashboard/dashboard-detail.service.mjs +13 -6
- package/esm2022/context-dashboard/dashboard-settings/dashboard-general-settings.component.mjs +3 -3
- package/esm2022/context-dashboard/dashboard-settings/typed-dashboard-settings.component.mjs +32 -11
- package/esm2022/core/action-bar/action-bar-item.component.mjs +3 -3
- package/esm2022/core/action-bar/action-bar.module.mjs +16 -5
- package/esm2022/core/bootstrap/bootstrap.component.mjs +21 -16
- package/esm2022/core/common/aggregation/aggregation.model.mjs +46 -0
- package/esm2022/core/common/aggregation/aggregation.service.mjs +34 -0
- package/esm2022/core/common/humanize-app-name.model.mjs +2 -2
- package/esm2022/core/common/humanize-app-name.pipe.mjs +2 -2
- package/esm2022/core/common/index.mjs +5 -1
- package/esm2022/core/common/inter-app.service.mjs +76 -0
- package/esm2022/core/common/interval-based-reload.abstract.mjs +110 -0
- package/esm2022/core/countdown-interval/countdown-interval.component.mjs +3 -3
- package/esm2022/core/dashboard/dashboard-child.component.mjs +6 -5
- package/esm2022/core/dashboard/dashboard.module.mjs +18 -1
- package/esm2022/core/dashboard/index.mjs +4 -1
- package/esm2022/core/dashboard/widget-auto-refresh-context/auto-refresh-control.component.mjs +101 -0
- package/esm2022/core/dashboard/widget-auto-refresh-context/auto-refresh-select-control.component.mjs +50 -0
- package/esm2022/core/dashboard/widget-auto-refresh-context/global-refresh-loading.operator.mjs +7 -0
- package/esm2022/core/dashboard/widget-auto-refresh-context/index.mjs +8 -0
- package/esm2022/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context-icon-bar.component.mjs +18 -0
- package/esm2022/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context.component.mjs +127 -0
- package/esm2022/core/dashboard/widget-auto-refresh-context/widget-auto-refresh-context.model.mjs +5 -0
- package/esm2022/core/dashboard/widget-auto-refresh-context/widget-global-auto-refresh.service.mjs +233 -0
- package/esm2022/core/dashboard/widgets-dashboard.component.mjs +35 -30
- package/esm2022/core/dashboard/wiget-time-context/aggregation-picker/aggregation-picker.component.mjs +4 -4
- package/esm2022/core/dashboard/wiget-time-context/realtime-control/realtime-control.component.mjs +2 -2
- package/esm2022/core/dashboard/wiget-time-context/widget-time-context-icon-bar/widget-time-context-icon-bar.component.mjs +5 -5
- package/esm2022/core/dashboard/wiget-time-context/widget-time-context-query.service.mjs +7 -4
- package/esm2022/core/dashboard/wiget-time-context/widget-time-context.component.mjs +37 -37
- package/esm2022/core/dashboard/wiget-time-context/widget-time-context.model.mjs +1 -28
- package/esm2022/core/date-time-picker/date-time-picker.component.mjs +3 -3
- package/esm2022/core/header/header.module.mjs +7 -5
- package/esm2022/core/header/title/title.component.mjs +3 -3
- package/esm2022/core/i18n/cached-locale-dictionary.service.mjs +1 -1
- package/esm2022/core/i18n/i18n.module.mjs +7 -14
- package/esm2022/core/i18n/index.mjs +3 -2
- package/esm2022/core/i18n/translate.parser.mjs +2 -2
- package/esm2022/core/i18n/translation-loader.service.mjs +132 -0
- package/esm2022/core/i18n/translation-utils.mjs +24 -0
- package/esm2022/core/plugins/plugins-resolve.service.mjs +12 -37
- package/esm2022/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form-validation.service.mjs +13 -6
- package/esm2022/datapoint-selector/datapoint-attributes-form/datapoint-attributes-form.component.mjs +22 -5
- package/esm2022/datapoint-selector/datapoint-selection-list/datapoint-selection-list.component.mjs +3 -3
- package/esm2022/datapoint-selector/datapoint-selection.model.mjs +1 -1
- package/esm2022/datapoint-selector/datapoint-selector-list-item/datapoint-selector-list-item.component.mjs +3 -3
- package/esm2022/datapoints-export-selector/c8y-ngx-components-datapoints-export-selector.mjs +5 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-fetching.service.mjs +407 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/data-processing.service.mjs +207 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.component.mjs +467 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-file-exporter.service.mjs +187 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-export-selector-preview/datapoints-export-selector-preview.component.mjs +27 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-data-scope/datapoints-exports-selector-data-scope.component.mjs +41 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-file-types/datapoints-exports-selector-file-types.component.mjs +23 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/datapoints-exports-selector-time-range/datapoints-exports-selector-time-range.component.mjs +42 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/generators/csv-generator.mjs +120 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/generators/excel-generator.mjs +282 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-file-exporter/utils.service.mjs +76 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector-modal/datapoints-export-selector-modal.component.mjs +46 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector.component.mjs +42 -0
- package/esm2022/datapoints-export-selector/datapoints-export-selector.model.mjs +43 -0
- package/esm2022/datapoints-export-selector/index.mjs +15 -0
- package/esm2022/device-list/add-smart-group.component.mjs +4 -3
- package/esm2022/device-list/device-list.module.mjs +22 -4
- package/esm2022/map/cluster-map.component.mjs +41 -13
- package/esm2022/map/map-status.component.mjs +6 -5
- package/esm2022/map/map.component.mjs +9 -5
- package/esm2022/map/map.model.mjs +1 -1
- package/esm2022/translation-editor/c8y-ngx-components-translation-editor.mjs +5 -0
- package/esm2022/translation-editor/data/c8y-ngx-components-translation-editor-data.mjs +5 -0
- package/esm2022/translation-editor/data/index.mjs +2 -0
- package/esm2022/translation-editor/data/translation-store.service.mjs +175 -0
- package/esm2022/translation-editor/index.mjs +10 -0
- package/esm2022/translation-editor/lazy/add-translation-modal/add-translation-modal.component.mjs +70 -0
- package/esm2022/translation-editor/lazy/c8y-ngx-components-translation-editor-lazy.mjs +5 -0
- package/esm2022/translation-editor/lazy/index.mjs +2 -0
- package/esm2022/translation-editor/lazy/manage-translation-cell-renderer/manage-translation-cell-renderer.component.mjs +53 -0
- package/esm2022/translation-editor/lazy/translation-editor/translation-editor.component.mjs +124 -0
- package/esm2022/translation-editor/translation-editor-naviagtor-factory.service.mjs +31 -0
- package/esm2022/widgets/cockpit/index.mjs +4 -2
- package/esm2022/widgets/cockpit-exports/index.mjs +8 -1
- package/esm2022/widgets/definitions/alarms/alarm-list/index.mjs +6 -2
- package/esm2022/widgets/definitions/alarms/all-critical-alarms/index.mjs +6 -2
- package/esm2022/widgets/definitions/alarms/recent-alarms/index.mjs +6 -2
- package/esm2022/widgets/definitions/datapoints-table/c8y-ngx-components-widgets-definitions-datapoints-table.mjs +5 -0
- package/esm2022/widgets/definitions/datapoints-table/index.mjs +34 -0
- package/esm2022/widgets/definitions/index.mjs +2 -1
- package/esm2022/widgets/definitions/map/index.mjs +4 -2
- package/esm2022/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.mjs +29 -15
- package/esm2022/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.mjs +57 -25
- package/esm2022/widgets/implementations/alarms/alarm-list-widget.model.mjs +2 -1
- package/esm2022/widgets/implementations/alarms/alarm-widget-alarms-reload.component.mjs +19 -21
- package/esm2022/widgets/implementations/datapoints-table/c8y-ngx-components-widgets-implementations-datapoints-table.mjs +5 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-config/datapoints-table-config.component.mjs +383 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-config/datapoints-table-config.service.mjs +124 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/adjust-aggregated-time-range.pipe.mjs +191 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/apply-range-class.pipe.mjs +36 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/column-title.pipe.mjs +45 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-reload/datapoints-reload.component.mjs +116 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/datapoints-table.component.mjs +116 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/dynamic-column.directive.mjs +43 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.component.mjs +282 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.service.mjs +430 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-view/virtual-scroll-listener.directive.mjs +75 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table-widget.model.mjs +76 -0
- package/esm2022/widgets/implementations/datapoints-table/datapoints-table.service.mjs +52 -0
- package/esm2022/widgets/implementations/datapoints-table/date-range-picker.component.mjs +68 -0
- package/esm2022/widgets/implementations/datapoints-table/index.mjs +10 -0
- package/esm2022/widgets/implementations/map/map-widget-config.component.mjs +19 -11
- package/esm2022/widgets/implementations/map/map-widget.component.mjs +20 -2
- package/esm2022/widgets/implementations/map/map-widget.model.mjs +1 -1
- package/fesm2022/c8y-ngx-components-alarms.mjs +5 -15
- package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs +135 -91
- package/fesm2022/c8y-ngx-components-context-dashboard.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs +37 -13
- package/fesm2022/c8y-ngx-components-datapoint-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs +1928 -0
- package/fesm2022/c8y-ngx-components-datapoints-export-selector.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-device-list.mjs +24 -5
- package/fesm2022/c8y-ngx-components-device-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-map.mjs +52 -19
- package/fesm2022/c8y-ngx-components-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-translation-editor-data.mjs +181 -0
- package/fesm2022/c8y-ngx-components-translation-editor-data.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs +236 -0
- package/fesm2022/c8y-ngx-components-translation-editor-lazy.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-translation-editor.mjs +46 -0
- package/fesm2022/c8y-ngx-components-translation-editor.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-widgets-cockpit-exports.mjs +7 -0
- package/fesm2022/c8y-ngx-components-widgets-cockpit-exports.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-cockpit.mjs +3 -1
- package/fesm2022/c8y-ngx-components-widgets-cockpit.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs +5 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-alarm-list.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs +5 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-all-critical-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs +5 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-alarms-recent-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs +41 -0
- package/fesm2022/c8y-ngx-components-widgets-definitions-datapoints-table.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-widgets-definitions-map.mjs +3 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-definitions.mjs +1 -0
- package/fesm2022/c8y-ngx-components-widgets-definitions.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs +101 -58
- package/fesm2022/c8y-ngx-components-widgets-implementations-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs +1967 -0
- package/fesm2022/c8y-ngx-components-widgets-implementations-datapoints-table.mjs.map +1 -0
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs +37 -11
- package/fesm2022/c8y-ngx-components-widgets-implementations-map.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components.mjs +5080 -4272
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/locales/de.po +289 -18
- package/locales/en.po +12 -0
- package/locales/en_US.po +3 -0
- package/locales/es.po +253 -18
- package/locales/fr.po +253 -18
- package/locales/ja_JP.po +282 -18
- package/locales/locales.pot +257 -18
- package/locales/nl.po +253 -18
- package/locales/pl.po +253 -18
- package/locales/pt_BR.po +253 -18
- package/map/cluster-map.component.d.ts +8 -3
- package/map/cluster-map.component.d.ts.map +1 -1
- package/map/map-status.component.d.ts +0 -3
- package/map/map-status.component.d.ts.map +1 -1
- package/map/map.component.d.ts +4 -2
- package/map/map.component.d.ts.map +1 -1
- package/map/map.model.d.ts +2 -1
- package/map/map.model.d.ts.map +1 -1
- package/package.json +1 -1
- package/translation-editor/c8y-ngx-components-translation-editor.d.ts.map +1 -0
- package/translation-editor/data/c8y-ngx-components-translation-editor-data.d.ts.map +1 -0
- package/translation-editor/data/index.d.ts +2 -0
- package/translation-editor/data/index.d.ts.map +1 -0
- package/translation-editor/data/translation-store.service.d.ts +61 -0
- package/translation-editor/data/translation-store.service.d.ts.map +1 -0
- package/translation-editor/index.d.ts +2 -0
- package/translation-editor/index.d.ts.map +1 -0
- package/translation-editor/lazy/add-translation-modal/add-translation-modal.component.d.ts +30 -0
- package/translation-editor/lazy/add-translation-modal/add-translation-modal.component.d.ts.map +1 -0
- package/translation-editor/lazy/c8y-ngx-components-translation-editor-lazy.d.ts.map +1 -0
- package/translation-editor/lazy/index.d.ts +2 -0
- package/translation-editor/lazy/index.d.ts.map +1 -0
- package/translation-editor/lazy/manage-translation-cell-renderer/manage-translation-cell-renderer.component.d.ts +22 -0
- package/translation-editor/lazy/manage-translation-cell-renderer/manage-translation-cell-renderer.component.d.ts.map +1 -0
- package/translation-editor/lazy/translation-editor/translation-editor.component.d.ts +34 -0
- package/translation-editor/lazy/translation-editor/translation-editor.component.d.ts.map +1 -0
- package/translation-editor/translation-editor-naviagtor-factory.service.d.ts +11 -0
- package/translation-editor/translation-editor-naviagtor-factory.service.d.ts.map +1 -0
- package/widgets/cockpit/index.d.ts +13 -0
- package/widgets/cockpit/index.d.ts.map +1 -1
- package/widgets/cockpit-exports/index.d.ts +6 -0
- package/widgets/cockpit-exports/index.d.ts.map +1 -1
- package/widgets/definitions/alarms/alarm-list/index.d.ts +2 -0
- package/widgets/definitions/alarms/alarm-list/index.d.ts.map +1 -1
- package/widgets/definitions/alarms/all-critical-alarms/index.d.ts +2 -0
- package/widgets/definitions/alarms/all-critical-alarms/index.d.ts.map +1 -1
- package/widgets/definitions/alarms/recent-alarms/index.d.ts +2 -0
- package/widgets/definitions/alarms/recent-alarms/index.d.ts.map +1 -1
- package/widgets/definitions/datapoints-table/c8y-ngx-components-widgets-definitions-datapoints-table.d.ts.map +1 -0
- package/widgets/definitions/datapoints-table/index.d.ts +14 -0
- package/widgets/definitions/datapoints-table/index.d.ts.map +1 -0
- package/widgets/definitions/index.d.ts +1 -0
- package/widgets/definitions/index.d.ts.map +1 -1
- package/widgets/definitions/map/index.d.ts +2 -1
- package/widgets/definitions/map/index.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-list-widget-config/alarm-list-widget-config.component.d.ts +5 -9
- 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 +17 -10
- package/widgets/implementations/alarms/alarm-list-widget-view/alarm-list-widget.component.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-list-widget.model.d.ts +5 -1
- package/widgets/implementations/alarms/alarm-list-widget.model.d.ts.map +1 -1
- package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts +5 -11
- package/widgets/implementations/alarms/alarm-widget-alarms-reload.component.d.ts.map +1 -1
- package/widgets/implementations/datapoints-table/c8y-ngx-components-widgets-implementations-datapoints-table.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-config/datapoints-table-config.component.d.ts +129 -0
- package/widgets/implementations/datapoints-table/datapoints-table-config/datapoints-table-config.component.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-config/datapoints-table-config.service.d.ts +56 -0
- package/widgets/implementations/datapoints-table/datapoints-table-config/datapoints-table-config.service.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/adjust-aggregated-time-range.pipe.d.ts +88 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/adjust-aggregated-time-range.pipe.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/apply-range-class.pipe.d.ts +19 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/apply-range-class.pipe.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/column-title.pipe.d.ts +26 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/column-title.pipe.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-reload/datapoints-reload.component.d.ts +63 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-reload/datapoints-reload.component.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/datapoints-table.component.d.ts +38 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/datapoints-table.component.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/dynamic-column.directive.d.ts +13 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table/dynamic-column.directive.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.component.d.ts +123 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.component.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.service.d.ts +196 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/datapoints-table-view.service.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/virtual-scroll-listener.directive.d.ts +41 -0
- package/widgets/implementations/datapoints-table/datapoints-table-view/virtual-scroll-listener.directive.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table-widget.model.d.ts +175 -0
- package/widgets/implementations/datapoints-table/datapoints-table-widget.model.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/datapoints-table.service.d.ts +12 -0
- package/widgets/implementations/datapoints-table/datapoints-table.service.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/date-range-picker.component.d.ts +34 -0
- package/widgets/implementations/datapoints-table/date-range-picker.component.d.ts.map +1 -0
- package/widgets/implementations/datapoints-table/index.d.ts +10 -0
- package/widgets/implementations/datapoints-table/index.d.ts.map +1 -0
- package/widgets/implementations/map/map-widget-config.component.d.ts +4 -4
- package/widgets/implementations/map/map-widget-config.component.d.ts.map +1 -1
- package/widgets/implementations/map/map-widget.component.d.ts +8 -3
- package/widgets/implementations/map/map-widget.component.d.ts.map +1 -1
- package/widgets/implementations/map/map-widget.model.d.ts +4 -3
- package/widgets/implementations/map/map-widget.model.d.ts.map +1 -1
- package/core/i18n/translate.loader.d.ts +0 -31
- package/core/i18n/translate.loader.d.ts.map +0 -1
- package/esm2022/core/i18n/translate.loader.mjs +0 -71
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { AGGREGATION_VALUES, AggregationService, AlertService, gettext } from '@c8y/ngx-components';
|
|
3
|
+
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
+
import { TIME_RANGE_INTERVAL_UNITS_VALUES } from '../../datapoints-export-selector.model';
|
|
5
|
+
import { DataProcessingService } from './data-processing.service';
|
|
6
|
+
import { TimeSpanInMs } from '@c8y/ngx-components/interval-picker';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@c8y/ngx-components";
|
|
9
|
+
import * as i2 from "./data-processing.service";
|
|
10
|
+
import * as i3 from "@ngx-translate/core";
|
|
11
|
+
export class DatapointsExportSelectorFileExporterService {
|
|
12
|
+
constructor(aggregationService, alertService, datapointsExportSelectorDataProcessingService, translateService) {
|
|
13
|
+
this.aggregationService = aggregationService;
|
|
14
|
+
this.alertService = alertService;
|
|
15
|
+
this.datapointsExportSelectorDataProcessingService = datapointsExportSelectorDataProcessingService;
|
|
16
|
+
this.translateService = translateService;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Determines the interval between two dates.
|
|
20
|
+
*
|
|
21
|
+
* @param dateFrom - The starting date in ISO 8601 string format.
|
|
22
|
+
* @param dateTo - The ending date in ISO 8601 string format.
|
|
23
|
+
* @returns The time range interval unit.
|
|
24
|
+
*/
|
|
25
|
+
determineInterval(dateFrom, dateTo) {
|
|
26
|
+
const from = new Date(dateFrom);
|
|
27
|
+
const to = new Date(dateTo);
|
|
28
|
+
const differenceInMilliseconds = to.getTime() - from.getTime();
|
|
29
|
+
const intervals = [
|
|
30
|
+
{ value: TimeSpanInMs.MINUTE, label: TIME_RANGE_INTERVAL_UNITS_VALUES.minutes }, // milliseconds in one minute
|
|
31
|
+
{ value: TimeSpanInMs.HOUR, label: TIME_RANGE_INTERVAL_UNITS_VALUES.hours }, // milliseconds in one hour
|
|
32
|
+
{ value: TimeSpanInMs.DAY, label: TIME_RANGE_INTERVAL_UNITS_VALUES.days }, // milliseconds in one day
|
|
33
|
+
{ value: TimeSpanInMs.WEEK, label: TIME_RANGE_INTERVAL_UNITS_VALUES.weeks }, // milliseconds in one week
|
|
34
|
+
{ value: TimeSpanInMs.MONTH, label: TIME_RANGE_INTERVAL_UNITS_VALUES.months } // approximation for milliseconds in one month
|
|
35
|
+
];
|
|
36
|
+
for (let i = 0; i < intervals.length; i++) {
|
|
37
|
+
if (differenceInMilliseconds <= intervals[i].value) {
|
|
38
|
+
return intervals[i].label;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return TIME_RANGE_INTERVAL_UNITS_VALUES.custom;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Updates the disabled state of aggregation options based on the current value of the time interval form control.
|
|
45
|
+
*
|
|
46
|
+
* This method:
|
|
47
|
+
* - Retrieves the current date range from the form controls.
|
|
48
|
+
* - Determines the current time interval based on the date range.
|
|
49
|
+
* - Sets the disabled state for each aggregation option based on predefined conditions.
|
|
50
|
+
*
|
|
51
|
+
* The disabled state is stored in the `disabledAggregationOptions` object,
|
|
52
|
+
* where the key is the aggregation value and the value is a boolean indicating whether the option should be disabled.
|
|
53
|
+
*
|
|
54
|
+
* The `disabledConditions` object defines the conditions under which each aggregation option should be disabled.
|
|
55
|
+
*
|
|
56
|
+
* @param dateFrom - The value of the "date from" input.
|
|
57
|
+
* @param dateTo - The value of the "date to" input.
|
|
58
|
+
* @param disabledAggregationOptions - The object containing the disabled state of aggregation options.
|
|
59
|
+
* @returns The updated object with the disabled state of aggregation options.
|
|
60
|
+
*/
|
|
61
|
+
updateDisabledStateOfAggregationOptionEntries(dateFrom, dateTo, disabledAggregationOptions) {
|
|
62
|
+
disabledAggregationOptions = this.aggregationService.getDisabledAggregationOptions(dateFrom, dateTo);
|
|
63
|
+
return disabledAggregationOptions;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Sets the aggregation control to the first available (non-disabled) option if the current option is disabled.
|
|
67
|
+
*
|
|
68
|
+
* This method:
|
|
69
|
+
* - Retrieves the current value of the aggregation control.
|
|
70
|
+
* - Checks if the current aggregation option is disabled.
|
|
71
|
+
* - If the current option is disabled, sets the control to the first available (non-disabled) option based on the following order:
|
|
72
|
+
* - If the current value is `DAILY`, it switches to `HOURLY` if it's not disabled, otherwise to `MINUTELY` if `HOURLY` is also disabled.
|
|
73
|
+
* - If the current value is `HOURLY`, it switches to `MINUTELY` if it's not disabled.
|
|
74
|
+
* - If all options are disabled, it sets the value to `NONE`.
|
|
75
|
+
*
|
|
76
|
+
* The disabled state is stored in the `disabledAggregationOptions` object,
|
|
77
|
+
* where the key is the aggregation value and the value is a boolean indicating whether the option is disabled.
|
|
78
|
+
*
|
|
79
|
+
* The `AGGREGATION_VALUES` object defines the possible aggregation values.
|
|
80
|
+
*
|
|
81
|
+
* @param aggregationValue - The value of the current aggregation option.
|
|
82
|
+
* @param disabledAggregationOptions - An object containing disabled aggregation options.
|
|
83
|
+
* @returns The new aggregation option to be set.
|
|
84
|
+
*/
|
|
85
|
+
setToFirstAvailableAggregationOptionIfCurrentIsDisabled(aggregationValue, disabledAggregationOptions) {
|
|
86
|
+
const currentValue = aggregationValue;
|
|
87
|
+
const disabledOptions = disabledAggregationOptions;
|
|
88
|
+
if (disabledOptions[currentValue]) {
|
|
89
|
+
const { daily, hourly, minutely, none } = AGGREGATION_VALUES;
|
|
90
|
+
let newAggregationValue = none;
|
|
91
|
+
if (currentValue === daily) {
|
|
92
|
+
if (!disabledOptions[hourly]) {
|
|
93
|
+
newAggregationValue = hourly;
|
|
94
|
+
}
|
|
95
|
+
else if (!disabledOptions[minutely]) {
|
|
96
|
+
newAggregationValue = minutely;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else if (currentValue === hourly && !disabledOptions[minutely]) {
|
|
100
|
+
newAggregationValue = minutely;
|
|
101
|
+
}
|
|
102
|
+
return newAggregationValue;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
async getMeasurementExportedDataBlob(extension, dataToExport) {
|
|
106
|
+
try {
|
|
107
|
+
return await this.getMeasurementDataZipBlob(extension, dataToExport);
|
|
108
|
+
}
|
|
109
|
+
catch (error) {
|
|
110
|
+
this.showZipCreationErrorAlert();
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
async getSeriesExportedDataBlob(fileType, dataToExport, mergedExportDetails) {
|
|
115
|
+
try {
|
|
116
|
+
return await this.getSeriesDataBlob(fileType, dataToExport, mergedExportDetails);
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
this.showZipCreationErrorAlert();
|
|
120
|
+
return null;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
cleanupCachedData() {
|
|
124
|
+
this.cachedRawExportSeriesData = null;
|
|
125
|
+
this.cachedFlatteredAndSortedSeriesExportData = null;
|
|
126
|
+
}
|
|
127
|
+
showZipCreationErrorAlert() {
|
|
128
|
+
const alertMessage = this.translateService.instant(gettext('Could not create zip file.'));
|
|
129
|
+
this.alertService.danger(alertMessage);
|
|
130
|
+
return null;
|
|
131
|
+
}
|
|
132
|
+
getMeasurementDataZipBlob(extension, dataToExportWithBackendCreatedFile) {
|
|
133
|
+
const files = [];
|
|
134
|
+
this.createRawMeasurementExportedFiles(dataToExportWithBackendCreatedFile, extension, files);
|
|
135
|
+
return this.datapointsExportSelectorDataProcessingService.zipFiles(files);
|
|
136
|
+
}
|
|
137
|
+
createRawMeasurementExportedFiles(dataToExportWithBackendCreatedFile, fileExtension, files) {
|
|
138
|
+
dataToExportWithBackendCreatedFile.forEach(data => {
|
|
139
|
+
if (data) {
|
|
140
|
+
const fragmentSeries = `${data.valueFragmentType}_${data.valueFragmentSeries}`;
|
|
141
|
+
const fileName = this.datapointsExportSelectorDataProcessingService.createFileName(data.source, fragmentSeries, fileExtension);
|
|
142
|
+
const fileData = data.fetchedMeasurementsBlobFile;
|
|
143
|
+
const exportedFile = { fileName, fileData };
|
|
144
|
+
files.push(exportedFile);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Converts data to a specified file type and returns the generated blob.
|
|
150
|
+
*
|
|
151
|
+
* Unlike measurements, data must be transformed to an exportable file structure before exporting.
|
|
152
|
+
*
|
|
153
|
+
* @param fileType - The type of file to which the data points should be exported. This can be 'csv' or 'excel'.
|
|
154
|
+
* @param dataToExport - An array of processed measurement data combined with the respective properties of the datapoint.
|
|
155
|
+
* @param mergedExportDetails - The details for the merged export, contains date range and aggregation.
|
|
156
|
+
* @returns A promise that resolves to the generated ZIP blob or null if an error occurs.
|
|
157
|
+
*/
|
|
158
|
+
async getSeriesDataBlob(fileType, dataToExport, mergedExportDetails) {
|
|
159
|
+
this.transformSeriesDataToExportableFileStructure(dataToExport);
|
|
160
|
+
const exportParams = {
|
|
161
|
+
flattenedAndSortedExportData: this.cachedFlatteredAndSortedSeriesExportData,
|
|
162
|
+
fileType,
|
|
163
|
+
mergedExportDetails: mergedExportDetails
|
|
164
|
+
};
|
|
165
|
+
return await this.datapointsExportSelectorDataProcessingService.exportSeriesData(exportParams);
|
|
166
|
+
}
|
|
167
|
+
transformSeriesDataToExportableFileStructure(dataToExport) {
|
|
168
|
+
if (!this.cachedRawExportSeriesData) {
|
|
169
|
+
this.cachedRawExportSeriesData =
|
|
170
|
+
this.datapointsExportSelectorDataProcessingService.transformToExportFileStructure(dataToExport);
|
|
171
|
+
this.cachedFlatteredAndSortedSeriesExportData = this.cachedRawExportSeriesData
|
|
172
|
+
.flat()
|
|
173
|
+
.sort((a, b) => {
|
|
174
|
+
return new Date(a.time).getTime() - new Date(b.time).getTime();
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DatapointsExportSelectorFileExporterService, deps: [{ token: i1.AggregationService }, { token: i1.AlertService }, { token: i2.DataProcessingService }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
179
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DatapointsExportSelectorFileExporterService, providedIn: 'root' }); }
|
|
180
|
+
}
|
|
181
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DatapointsExportSelectorFileExporterService, decorators: [{
|
|
182
|
+
type: Injectable,
|
|
183
|
+
args: [{
|
|
184
|
+
providedIn: 'root'
|
|
185
|
+
}]
|
|
186
|
+
}], ctorParameters: () => [{ type: i1.AggregationService }, { type: i1.AlertService }, { type: i2.DataProcessingService }, { type: i3.TranslateService }] });
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItZmlsZS1leHBvcnRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3IvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItbW9kYWwvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItZmlsZS1leHBvcnRlci9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1maWxlLWV4cG9ydGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsa0JBQWtCLEVBR2xCLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osT0FBTyxFQUNSLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQU9MLGdDQUFnQyxFQUVqQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7QUFLbkUsTUFBTSxPQUFPLDJDQUEyQztJQVV0RCxZQUNVLGtCQUFzQyxFQUN0QyxZQUEwQixFQUMxQiw2Q0FBb0UsRUFDcEUsZ0JBQWtDO1FBSGxDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsa0RBQTZDLEdBQTdDLDZDQUE2QyxDQUF1QjtRQUNwRSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQ3pDLENBQUM7SUFFSjs7Ozs7O09BTUc7SUFDSCxpQkFBaUIsQ0FBQyxRQUFnQixFQUFFLE1BQWM7UUFDaEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEMsTUFBTSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUIsTUFBTSx3QkFBd0IsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRS9ELE1BQU0sU0FBUyxHQUFHO1lBQ2hCLEVBQUUsS0FBSyxFQUFFLFlBQVksQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLGdDQUFnQyxDQUFDLE9BQU8sRUFBRSxFQUFFLDZCQUE2QjtZQUM5RyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxnQ0FBZ0MsQ0FBQyxLQUFLLEVBQUUsRUFBRSwyQkFBMkI7WUFDeEcsRUFBRSxLQUFLLEVBQUUsWUFBWSxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsZ0NBQWdDLENBQUMsSUFBSSxFQUFFLEVBQUUsMEJBQTBCO1lBQ3JHLEVBQUUsS0FBSyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLGdDQUFnQyxDQUFDLEtBQUssRUFBRSxFQUFFLDJCQUEyQjtZQUN4RyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxnQ0FBZ0MsQ0FBQyxNQUFNLEVBQUUsQ0FBQyw4Q0FBOEM7U0FDN0gsQ0FBQztRQUVGLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUMsSUFBSSx3QkFBd0IsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25ELE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUM1QixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sZ0NBQWdDLENBQUMsTUFBTSxDQUFDO0lBQ2pELENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FpQkc7SUFDSCw2Q0FBNkMsQ0FDM0MsUUFBZ0IsRUFDaEIsTUFBYyxFQUNkLDBCQUFtRDtRQUVuRCwwQkFBMEIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsNkJBQTZCLENBQ2hGLFFBQVEsRUFDUixNQUFNLENBQ1AsQ0FBQztRQUNGLE9BQU8sMEJBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BbUJHO0lBQ0gsdURBQXVELENBQ3JELGdCQUF3QixFQUN4QiwwQkFBbUQ7UUFFbkQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUM7UUFDdEMsTUFBTSxlQUFlLEdBQUcsMEJBQTBCLENBQUM7UUFFbkQsSUFBSSxlQUFlLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztZQUNsQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEdBQUcsa0JBQWtCLENBQUM7WUFDN0QsSUFBSSxtQkFBbUIsR0FBc0IsSUFBSSxDQUFDO1lBRWxELElBQUksWUFBWSxLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7b0JBQzdCLG1CQUFtQixHQUFHLE1BQU0sQ0FBQztnQkFDL0IsQ0FBQztxQkFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQ3RDLG1CQUFtQixHQUFHLFFBQVEsQ0FBQztnQkFDakMsQ0FBQztZQUNILENBQUM7aUJBQU0sSUFBSSxZQUFZLEtBQUssTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ2pFLG1CQUFtQixHQUFHLFFBQVEsQ0FBQztZQUNqQyxDQUFDO1lBRUQsT0FBTyxtQkFBbUIsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyw4QkFBOEIsQ0FDbEMsU0FBaUIsRUFDakIsWUFBa0Q7UUFFbEQsSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLElBQUksQ0FBQyx5QkFBeUIsQ0FDekMsU0FBUyxFQUNULFlBQW9ELENBQ3JELENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1lBRWpDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMseUJBQXlCLENBQzdCLFFBQWdCLEVBQ2hCLFlBQTRCLEVBQzVCLG1CQUF3QztRQUV4QyxJQUFJLENBQUM7WUFDSCxPQUFPLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUNqQyxRQUFRLEVBQ1IsWUFBOEIsRUFDOUIsbUJBQW1CLENBQ3BCLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1lBRWpDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxDQUFDO1FBQ3RDLElBQUksQ0FBQyx3Q0FBd0MsR0FBRyxJQUFJLENBQUM7SUFDdkQsQ0FBQztJQUVPLHlCQUF5QjtRQUMvQixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFdkMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8seUJBQXlCLENBQy9CLFNBQWlCLEVBQ2pCLGtDQUF3RTtRQUV4RSxNQUFNLEtBQUssR0FBbUIsRUFBRSxDQUFDO1FBRWpDLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxrQ0FBa0MsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFN0YsT0FBTyxJQUFJLENBQUMsNkNBQTZDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTyxpQ0FBaUMsQ0FDdkMsa0NBQXdFLEVBQ3hFLGFBQXFCLEVBQ3JCLEtBQXFCO1FBRXJCLGtDQUFrQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNoRCxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNULE1BQU0sY0FBYyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUUvRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsNkNBQTZDLENBQUMsY0FBYyxDQUNoRixJQUFJLENBQUMsTUFBTSxFQUNYLGNBQWMsRUFDZCxhQUFhLENBQ2QsQ0FBQztnQkFFRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUM7Z0JBRWxELE1BQU0sWUFBWSxHQUFpQixFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQztnQkFFMUQsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUMzQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ssS0FBSyxDQUFDLGlCQUFpQixDQUM3QixRQUFnQixFQUNoQixZQUE0QixFQUM1QixtQkFBd0M7UUFFeEMsSUFBSSxDQUFDLDRDQUE0QyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRWhFLE1BQU0sWUFBWSxHQUF1QjtZQUN2Qyw0QkFBNEIsRUFBRSxJQUFJLENBQUMsd0NBQXdDO1lBQzNFLFFBQVE7WUFDUixtQkFBbUIsRUFBRSxtQkFBbUI7U0FDekMsQ0FBQztRQUVGLE9BQU8sTUFBTSxJQUFJLENBQUMsNkNBQTZDLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVPLDRDQUE0QyxDQUFDLFlBQTRCO1FBQy9FLElBQUksQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMseUJBQXlCO2dCQUM1QixJQUFJLENBQUMsNkNBQTZDLENBQUMsOEJBQThCLENBQy9FLFlBQVksQ0FDYixDQUFDO1lBQ0osSUFBSSxDQUFDLHdDQUF3QyxHQUFHLElBQUksQ0FBQyx5QkFBeUI7aUJBQzNFLElBQUksRUFBRTtpQkFDTixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ2IsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pFLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNILENBQUM7OEdBaFBVLDJDQUEyQztrSEFBM0MsMkNBQTJDLGNBRjFDLE1BQU07OzJGQUVQLDJDQUEyQztrQkFIdkQsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBR0dSRUdBVElPTl9WQUxVRVMsXG4gIEFnZ3JlZ2F0aW9uT3B0aW9uLFxuICBBZ2dyZWdhdGlvbk9wdGlvblN0YXR1cyxcbiAgQWdncmVnYXRpb25TZXJ2aWNlLFxuICBBbGVydFNlcnZpY2UsXG4gIGdldHRleHRcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICBEYXRhVG9FeHBvcnQsXG4gIERhdGFUb0V4cG9ydFdpdGhCYWNrZW5kQ3JlYXRlZEZpbGUsXG4gIEV4cG9ydERhdGEsXG4gIEV4cG9ydGVkRmlsZSxcbiAgTWVyZ2VkRXhwb3J0RGV0YWlscyxcbiAgU2VyaWVzRXhwb3J0UGFyYW1zLFxuICBUSU1FX1JBTkdFX0lOVEVSVkFMX1VOSVRTX1ZBTFVFUyxcbiAgVGltZVJhbmdlSW50ZXJ2YWxcbn0gZnJvbSAnLi4vLi4vZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3IubW9kZWwnO1xuaW1wb3J0IHsgRGF0YVByb2Nlc3NpbmdTZXJ2aWNlIH0gZnJvbSAnLi9kYXRhLXByb2Nlc3Npbmcuc2VydmljZSc7XG5pbXBvcnQgeyBUaW1lU3BhbkluTXMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL2ludGVydmFsLXBpY2tlcic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERhdGFwb2ludHNFeHBvcnRTZWxlY3RvckZpbGVFeHBvcnRlclNlcnZpY2Uge1xuICAvKipcbiAgICogQ2FjaGVkIGRhdGEgaXMgcmV1c2VkIHdoZW4gYm90aCBDU1YgYW5kIEV4Y2VsIGZpbGVzIHdlcmUgc2VsZWN0ZWQgZm9yIGV4cG9ydCwgdXNlZCBmb3IgbWVyZ2VkIGZpbGUuXG4gICAqL1xuICBwcml2YXRlIGNhY2hlZEZsYXR0ZXJlZEFuZFNvcnRlZFNlcmllc0V4cG9ydERhdGE6IEV4cG9ydERhdGFbXTtcbiAgLyoqXG4gICAqIENhY2hlZCBkYXRhIGlzIHJldXNlZCB3aGVuIGJvdGggQ1NWIGFuZCBFeGNlbCBmaWxlcyB3ZXJlIHNlbGVjdGVkIGZvciBleHBvcnQsIHVzZWQgZm9yIHJhdyBmaWxlcy5cbiAgICovXG4gIHByaXZhdGUgY2FjaGVkUmF3RXhwb3J0U2VyaWVzRGF0YTogRXhwb3J0RGF0YVtdW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhZ2dyZWdhdGlvblNlcnZpY2U6IEFnZ3JlZ2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGF0YXBvaW50c0V4cG9ydFNlbGVjdG9yRGF0YVByb2Nlc3NpbmdTZXJ2aWNlOiBEYXRhUHJvY2Vzc2luZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICkge31cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgaW50ZXJ2YWwgYmV0d2VlbiB0d28gZGF0ZXMuXG4gICAqXG4gICAqIEBwYXJhbSBkYXRlRnJvbSAtIFRoZSBzdGFydGluZyBkYXRlIGluIElTTyA4NjAxIHN0cmluZyBmb3JtYXQuXG4gICAqIEBwYXJhbSBkYXRlVG8gLSBUaGUgZW5kaW5nIGRhdGUgaW4gSVNPIDg2MDEgc3RyaW5nIGZvcm1hdC5cbiAgICogQHJldHVybnMgVGhlIHRpbWUgcmFuZ2UgaW50ZXJ2YWwgdW5pdC5cbiAgICovXG4gIGRldGVybWluZUludGVydmFsKGRhdGVGcm9tOiBzdHJpbmcsIGRhdGVUbzogc3RyaW5nKTogVGltZVJhbmdlSW50ZXJ2YWwge1xuICAgIGNvbnN0IGZyb20gPSBuZXcgRGF0ZShkYXRlRnJvbSk7XG4gICAgY29uc3QgdG8gPSBuZXcgRGF0ZShkYXRlVG8pO1xuICAgIGNvbnN0IGRpZmZlcmVuY2VJbk1pbGxpc2Vjb25kcyA9IHRvLmdldFRpbWUoKSAtIGZyb20uZ2V0VGltZSgpO1xuXG4gICAgY29uc3QgaW50ZXJ2YWxzID0gW1xuICAgICAgeyB2YWx1ZTogVGltZVNwYW5Jbk1zLk1JTlVURSwgbGFiZWw6IFRJTUVfUkFOR0VfSU5URVJWQUxfVU5JVFNfVkFMVUVTLm1pbnV0ZXMgfSwgLy8gbWlsbGlzZWNvbmRzIGluIG9uZSBtaW51dGVcbiAgICAgIHsgdmFsdWU6IFRpbWVTcGFuSW5Ncy5IT1VSLCBsYWJlbDogVElNRV9SQU5HRV9JTlRFUlZBTF9VTklUU19WQUxVRVMuaG91cnMgfSwgLy8gbWlsbGlzZWNvbmRzIGluIG9uZSBob3VyXG4gICAgICB7IHZhbHVlOiBUaW1lU3BhbkluTXMuREFZLCBsYWJlbDogVElNRV9SQU5HRV9JTlRFUlZBTF9VTklUU19WQUxVRVMuZGF5cyB9LCAvLyBtaWxsaXNlY29uZHMgaW4gb25lIGRheVxuICAgICAgeyB2YWx1ZTogVGltZVNwYW5Jbk1zLldFRUssIGxhYmVsOiBUSU1FX1JBTkdFX0lOVEVSVkFMX1VOSVRTX1ZBTFVFUy53ZWVrcyB9LCAvLyBtaWxsaXNlY29uZHMgaW4gb25lIHdlZWtcbiAgICAgIHsgdmFsdWU6IFRpbWVTcGFuSW5Ncy5NT05USCwgbGFiZWw6IFRJTUVfUkFOR0VfSU5URVJWQUxfVU5JVFNfVkFMVUVTLm1vbnRocyB9IC8vIGFwcHJveGltYXRpb24gZm9yIG1pbGxpc2Vjb25kcyBpbiBvbmUgbW9udGhcbiAgICBdO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnRlcnZhbHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmIChkaWZmZXJlbmNlSW5NaWxsaXNlY29uZHMgPD0gaW50ZXJ2YWxzW2ldLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpbnRlcnZhbHNbaV0ubGFiZWw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFRJTUVfUkFOR0VfSU5URVJWQUxfVU5JVFNfVkFMVUVTLmN1c3RvbTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiBhZ2dyZWdhdGlvbiBvcHRpb25zIGJhc2VkIG9uIHRoZSBjdXJyZW50IHZhbHVlIG9mIHRoZSB0aW1lIGludGVydmFsIGZvcm0gY29udHJvbC5cbiAgICpcbiAgICogVGhpcyBtZXRob2Q6XG4gICAqIC0gUmV0cmlldmVzIHRoZSBjdXJyZW50IGRhdGUgcmFuZ2UgZnJvbSB0aGUgZm9ybSBjb250cm9scy5cbiAgICogLSBEZXRlcm1pbmVzIHRoZSBjdXJyZW50IHRpbWUgaW50ZXJ2YWwgYmFzZWQgb24gdGhlIGRhdGUgcmFuZ2UuXG4gICAqIC0gU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgZm9yIGVhY2ggYWdncmVnYXRpb24gb3B0aW9uIGJhc2VkIG9uIHByZWRlZmluZWQgY29uZGl0aW9ucy5cbiAgICpcbiAgICogVGhlIGRpc2FibGVkIHN0YXRlIGlzIHN0b3JlZCBpbiB0aGUgYGRpc2FibGVkQWdncmVnYXRpb25PcHRpb25zYCBvYmplY3QsXG4gICAqIHdoZXJlIHRoZSBrZXkgaXMgdGhlIGFnZ3JlZ2F0aW9uIHZhbHVlIGFuZCB0aGUgdmFsdWUgaXMgYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgb3B0aW9uIHNob3VsZCBiZSBkaXNhYmxlZC5cbiAgICpcbiAgICogVGhlIGBkaXNhYmxlZENvbmRpdGlvbnNgIG9iamVjdCBkZWZpbmVzIHRoZSBjb25kaXRpb25zIHVuZGVyIHdoaWNoIGVhY2ggYWdncmVnYXRpb24gb3B0aW9uIHNob3VsZCBiZSBkaXNhYmxlZC5cbiAgICpcbiAgICogQHBhcmFtIGRhdGVGcm9tIC0gVGhlIHZhbHVlIG9mIHRoZSBcImRhdGUgZnJvbVwiIGlucHV0LlxuICAgKiBAcGFyYW0gZGF0ZVRvIC0gVGhlIHZhbHVlIG9mIHRoZSBcImRhdGUgdG9cIiBpbnB1dC5cbiAgICogQHBhcmFtIGRpc2FibGVkQWdncmVnYXRpb25PcHRpb25zIC0gVGhlIG9iamVjdCBjb250YWluaW5nIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiBhZ2dyZWdhdGlvbiBvcHRpb25zLlxuICAgKiBAcmV0dXJucyBUaGUgdXBkYXRlZCBvYmplY3Qgd2l0aCB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgYWdncmVnYXRpb24gb3B0aW9ucy5cbiAgICovXG4gIHVwZGF0ZURpc2FibGVkU3RhdGVPZkFnZ3JlZ2F0aW9uT3B0aW9uRW50cmllcyhcbiAgICBkYXRlRnJvbTogc3RyaW5nLFxuICAgIGRhdGVUbzogc3RyaW5nLFxuICAgIGRpc2FibGVkQWdncmVnYXRpb25PcHRpb25zOiBBZ2dyZWdhdGlvbk9wdGlvblN0YXR1c1xuICApOiBBZ2dyZWdhdGlvbk9wdGlvblN0YXR1cyB7XG4gICAgZGlzYWJsZWRBZ2dyZWdhdGlvbk9wdGlvbnMgPSB0aGlzLmFnZ3JlZ2F0aW9uU2VydmljZS5nZXREaXNhYmxlZEFnZ3JlZ2F0aW9uT3B0aW9ucyhcbiAgICAgIGRhdGVGcm9tLFxuICAgICAgZGF0ZVRvXG4gICAgKTtcbiAgICByZXR1cm4gZGlzYWJsZWRBZ2dyZWdhdGlvbk9wdGlvbnM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgYWdncmVnYXRpb24gY29udHJvbCB0byB0aGUgZmlyc3QgYXZhaWxhYmxlIChub24tZGlzYWJsZWQpIG9wdGlvbiBpZiB0aGUgY3VycmVudCBvcHRpb24gaXMgZGlzYWJsZWQuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kOlxuICAgKiAtIFJldHJpZXZlcyB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgYWdncmVnYXRpb24gY29udHJvbC5cbiAgICogLSBDaGVja3MgaWYgdGhlIGN1cnJlbnQgYWdncmVnYXRpb24gb3B0aW9uIGlzIGRpc2FibGVkLlxuICAgKiAtIElmIHRoZSBjdXJyZW50IG9wdGlvbiBpcyBkaXNhYmxlZCwgc2V0cyB0aGUgY29udHJvbCB0byB0aGUgZmlyc3QgYXZhaWxhYmxlIChub24tZGlzYWJsZWQpIG9wdGlvbiBiYXNlZCBvbiB0aGUgZm9sbG93aW5nIG9yZGVyOlxuICAgKiAgIC0gSWYgdGhlIGN1cnJlbnQgdmFsdWUgaXMgYERBSUxZYCwgaXQgc3dpdGNoZXMgdG8gYEhPVVJMWWAgaWYgaXQncyBub3QgZGlzYWJsZWQsIG90aGVyd2lzZSB0byBgTUlOVVRFTFlgIGlmIGBIT1VSTFlgIGlzIGFsc28gZGlzYWJsZWQuXG4gICAqICAgLSBJZiB0aGUgY3VycmVudCB2YWx1ZSBpcyBgSE9VUkxZYCwgaXQgc3dpdGNoZXMgdG8gYE1JTlVURUxZYCBpZiBpdCdzIG5vdCBkaXNhYmxlZC5cbiAgICogICAtIElmIGFsbCBvcHRpb25zIGFyZSBkaXNhYmxlZCwgaXQgc2V0cyB0aGUgdmFsdWUgdG8gYE5PTkVgLlxuICAgKlxuICAgKiBUaGUgZGlzYWJsZWQgc3RhdGUgaXMgc3RvcmVkIGluIHRoZSBgZGlzYWJsZWRBZ2dyZWdhdGlvbk9wdGlvbnNgIG9iamVjdCxcbiAgICogd2hlcmUgdGhlIGtleSBpcyB0aGUgYWdncmVnYXRpb24gdmFsdWUgYW5kIHRoZSB2YWx1ZSBpcyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBvcHRpb24gaXMgZGlzYWJsZWQuXG4gICAqXG4gICAqIFRoZSBgQUdHUkVHQVRJT05fVkFMVUVTYCBvYmplY3QgZGVmaW5lcyB0aGUgcG9zc2libGUgYWdncmVnYXRpb24gdmFsdWVzLlxuICAgKlxuICAgKiBAcGFyYW0gYWdncmVnYXRpb25WYWx1ZSAtIFRoZSB2YWx1ZSBvZiB0aGUgY3VycmVudCBhZ2dyZWdhdGlvbiBvcHRpb24uXG4gICAqIEBwYXJhbSBkaXNhYmxlZEFnZ3JlZ2F0aW9uT3B0aW9ucyAtIEFuIG9iamVjdCBjb250YWluaW5nIGRpc2FibGVkIGFnZ3JlZ2F0aW9uIG9wdGlvbnMuXG4gICAqIEByZXR1cm5zIFRoZSBuZXcgYWdncmVnYXRpb24gb3B0aW9uIHRvIGJlIHNldC5cbiAgICovXG4gIHNldFRvRmlyc3RBdmFpbGFibGVBZ2dyZWdhdGlvbk9wdGlvbklmQ3VycmVudElzRGlzYWJsZWQoXG4gICAgYWdncmVnYXRpb25WYWx1ZTogc3RyaW5nLFxuICAgIGRpc2FibGVkQWdncmVnYXRpb25PcHRpb25zOiBBZ2dyZWdhdGlvbk9wdGlvblN0YXR1c1xuICApOiBBZ2dyZWdhdGlvbk9wdGlvbiB7XG4gICAgY29uc3QgY3VycmVudFZhbHVlID0gYWdncmVnYXRpb25WYWx1ZTtcbiAgICBjb25zdCBkaXNhYmxlZE9wdGlvbnMgPSBkaXNhYmxlZEFnZ3JlZ2F0aW9uT3B0aW9ucztcblxuICAgIGlmIChkaXNhYmxlZE9wdGlvbnNbY3VycmVudFZhbHVlXSkge1xuICAgICAgY29uc3QgeyBkYWlseSwgaG91cmx5LCBtaW51dGVseSwgbm9uZSB9ID0gQUdHUkVHQVRJT05fVkFMVUVTO1xuICAgICAgbGV0IG5ld0FnZ3JlZ2F0aW9uVmFsdWU6IEFnZ3JlZ2F0aW9uT3B0aW9uID0gbm9uZTtcblxuICAgICAgaWYgKGN1cnJlbnRWYWx1ZSA9PT0gZGFpbHkpIHtcbiAgICAgICAgaWYgKCFkaXNhYmxlZE9wdGlvbnNbaG91cmx5XSkge1xuICAgICAgICAgIG5ld0FnZ3JlZ2F0aW9uVmFsdWUgPSBob3VybHk7XG4gICAgICAgIH0gZWxzZSBpZiAoIWRpc2FibGVkT3B0aW9uc1ttaW51dGVseV0pIHtcbiAgICAgICAgICBuZXdBZ2dyZWdhdGlvblZhbHVlID0gbWludXRlbHk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoY3VycmVudFZhbHVlID09PSBob3VybHkgJiYgIWRpc2FibGVkT3B0aW9uc1ttaW51dGVseV0pIHtcbiAgICAgICAgbmV3QWdncmVnYXRpb25WYWx1ZSA9IG1pbnV0ZWx5O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbmV3QWdncmVnYXRpb25WYWx1ZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBnZXRNZWFzdXJlbWVudEV4cG9ydGVkRGF0YUJsb2IoXG4gICAgZXh0ZW5zaW9uOiBzdHJpbmcsXG4gICAgZGF0YVRvRXhwb3J0OiBEYXRhVG9FeHBvcnRXaXRoQmFja2VuZENyZWF0ZWRGaWxlW11cbiAgKTogUHJvbWlzZTxCbG9iIHwgbnVsbD4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5nZXRNZWFzdXJlbWVudERhdGFaaXBCbG9iKFxuICAgICAgICBleHRlbnNpb24sXG4gICAgICAgIGRhdGFUb0V4cG9ydCBhcyBEYXRhVG9FeHBvcnRXaXRoQmFja2VuZENyZWF0ZWRGaWxlW11cbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuc2hvd1ppcENyZWF0aW9uRXJyb3JBbGVydCgpO1xuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBhc3luYyBnZXRTZXJpZXNFeHBvcnRlZERhdGFCbG9iKFxuICAgIGZpbGVUeXBlOiBzdHJpbmcsXG4gICAgZGF0YVRvRXhwb3J0OiBEYXRhVG9FeHBvcnRbXSxcbiAgICBtZXJnZWRFeHBvcnREZXRhaWxzOiBNZXJnZWRFeHBvcnREZXRhaWxzXG4gICk6IFByb21pc2U8QmxvYiB8IG51bGw+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZ2V0U2VyaWVzRGF0YUJsb2IoXG4gICAgICAgIGZpbGVUeXBlLFxuICAgICAgICBkYXRhVG9FeHBvcnQgYXMgRGF0YVRvRXhwb3J0W10sXG4gICAgICAgIG1lcmdlZEV4cG9ydERldGFpbHNcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuc2hvd1ppcENyZWF0aW9uRXJyb3JBbGVydCgpO1xuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBjbGVhbnVwQ2FjaGVkRGF0YSgpOiB2b2lkIHtcbiAgICB0aGlzLmNhY2hlZFJhd0V4cG9ydFNlcmllc0RhdGEgPSBudWxsO1xuICAgIHRoaXMuY2FjaGVkRmxhdHRlcmVkQW5kU29ydGVkU2VyaWVzRXhwb3J0RGF0YSA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIHNob3daaXBDcmVhdGlvbkVycm9yQWxlcnQoKTogdm9pZCB7XG4gICAgY29uc3QgYWxlcnRNZXNzYWdlID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoZ2V0dGV4dCgnQ291bGQgbm90IGNyZWF0ZSB6aXAgZmlsZS4nKSk7XG4gICAgdGhpcy5hbGVydFNlcnZpY2UuZGFuZ2VyKGFsZXJ0TWVzc2FnZSk7XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TWVhc3VyZW1lbnREYXRhWmlwQmxvYihcbiAgICBleHRlbnNpb246IHN0cmluZyxcbiAgICBkYXRhVG9FeHBvcnRXaXRoQmFja2VuZENyZWF0ZWRGaWxlOiBEYXRhVG9FeHBvcnRXaXRoQmFja2VuZENyZWF0ZWRGaWxlW11cbiAgKTogUHJvbWlzZTxCbG9iIHwgbnVsbD4ge1xuICAgIGNvbnN0IGZpbGVzOiBFeHBvcnRlZEZpbGVbXSA9IFtdO1xuXG4gICAgdGhpcy5jcmVhdGVSYXdNZWFzdXJlbWVudEV4cG9ydGVkRmlsZXMoZGF0YVRvRXhwb3J0V2l0aEJhY2tlbmRDcmVhdGVkRmlsZSwgZXh0ZW5zaW9uLCBmaWxlcyk7XG5cbiAgICByZXR1cm4gdGhpcy5kYXRhcG9pbnRzRXhwb3J0U2VsZWN0b3JEYXRhUHJvY2Vzc2luZ1NlcnZpY2UuemlwRmlsZXMoZmlsZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSYXdNZWFzdXJlbWVudEV4cG9ydGVkRmlsZXMoXG4gICAgZGF0YVRvRXhwb3J0V2l0aEJhY2tlbmRDcmVhdGVkRmlsZTogRGF0YVRvRXhwb3J0V2l0aEJhY2tlbmRDcmVhdGVkRmlsZVtdLFxuICAgIGZpbGVFeHRlbnNpb246IHN0cmluZyxcbiAgICBmaWxlczogRXhwb3J0ZWRGaWxlW11cbiAgKTogdm9pZCB7XG4gICAgZGF0YVRvRXhwb3J0V2l0aEJhY2tlbmRDcmVhdGVkRmlsZS5mb3JFYWNoKGRhdGEgPT4ge1xuICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgY29uc3QgZnJhZ21lbnRTZXJpZXMgPSBgJHtkYXRhLnZhbHVlRnJhZ21lbnRUeXBlfV8ke2RhdGEudmFsdWVGcmFnbWVudFNlcmllc31gO1xuXG4gICAgICAgIGNvbnN0IGZpbGVOYW1lID0gdGhpcy5kYXRhcG9pbnRzRXhwb3J0U2VsZWN0b3JEYXRhUHJvY2Vzc2luZ1NlcnZpY2UuY3JlYXRlRmlsZU5hbWUoXG4gICAgICAgICAgZGF0YS5zb3VyY2UsXG4gICAgICAgICAgZnJhZ21lbnRTZXJpZXMsXG4gICAgICAgICAgZmlsZUV4dGVuc2lvblxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGZpbGVEYXRhID0gZGF0YS5mZXRjaGVkTWVhc3VyZW1lbnRzQmxvYkZpbGU7XG5cbiAgICAgICAgY29uc3QgZXhwb3J0ZWRGaWxlOiBFeHBvcnRlZEZpbGUgPSB7IGZpbGVOYW1lLCBmaWxlRGF0YSB9O1xuXG4gICAgICAgIGZpbGVzLnB1c2goZXhwb3J0ZWRGaWxlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBkYXRhIHRvIGEgc3BlY2lmaWVkIGZpbGUgdHlwZSBhbmQgcmV0dXJucyB0aGUgZ2VuZXJhdGVkIGJsb2IuXG4gICAqXG4gICAqIFVubGlrZSBtZWFzdXJlbWVudHMsIGRhdGEgbXVzdCBiZSB0cmFuc2Zvcm1lZCB0byBhbiBleHBvcnRhYmxlIGZpbGUgc3RydWN0dXJlIGJlZm9yZSBleHBvcnRpbmcuXG4gICAqXG4gICAqIEBwYXJhbSBmaWxlVHlwZSAtIFRoZSB0eXBlIG9mIGZpbGUgdG8gd2hpY2ggdGhlIGRhdGEgcG9pbnRzIHNob3VsZCBiZSBleHBvcnRlZC4gVGhpcyBjYW4gYmUgJ2Nzdicgb3IgJ2V4Y2VsJy5cbiAgICogQHBhcmFtIGRhdGFUb0V4cG9ydCAtIEFuIGFycmF5IG9mIHByb2Nlc3NlZCBtZWFzdXJlbWVudCBkYXRhIGNvbWJpbmVkIHdpdGggdGhlIHJlc3BlY3RpdmUgcHJvcGVydGllcyBvZiB0aGUgZGF0YXBvaW50LlxuICAgKiBAcGFyYW0gbWVyZ2VkRXhwb3J0RGV0YWlscyAtIFRoZSBkZXRhaWxzIGZvciB0aGUgbWVyZ2VkIGV4cG9ydCwgY29udGFpbnMgZGF0ZSByYW5nZSBhbmQgYWdncmVnYXRpb24uXG4gICAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBnZW5lcmF0ZWQgWklQIGJsb2Igb3IgbnVsbCBpZiBhbiBlcnJvciBvY2N1cnMuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGdldFNlcmllc0RhdGFCbG9iKFxuICAgIGZpbGVUeXBlOiBzdHJpbmcsXG4gICAgZGF0YVRvRXhwb3J0OiBEYXRhVG9FeHBvcnRbXSxcbiAgICBtZXJnZWRFeHBvcnREZXRhaWxzOiBNZXJnZWRFeHBvcnREZXRhaWxzXG4gICk6IFByb21pc2U8QmxvYiB8IG51bGw+IHtcbiAgICB0aGlzLnRyYW5zZm9ybVNlcmllc0RhdGFUb0V4cG9ydGFibGVGaWxlU3RydWN0dXJlKGRhdGFUb0V4cG9ydCk7XG5cbiAgICBjb25zdCBleHBvcnRQYXJhbXM6IFNlcmllc0V4cG9ydFBhcmFtcyA9IHtcbiAgICAgIGZsYXR0ZW5lZEFuZFNvcnRlZEV4cG9ydERhdGE6IHRoaXMuY2FjaGVkRmxhdHRlcmVkQW5kU29ydGVkU2VyaWVzRXhwb3J0RGF0YSxcbiAgICAgIGZpbGVUeXBlLFxuICAgICAgbWVyZ2VkRXhwb3J0RGV0YWlsczogbWVyZ2VkRXhwb3J0RGV0YWlsc1xuICAgIH07XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5kYXRhcG9pbnRzRXhwb3J0U2VsZWN0b3JEYXRhUHJvY2Vzc2luZ1NlcnZpY2UuZXhwb3J0U2VyaWVzRGF0YShleHBvcnRQYXJhbXMpO1xuICB9XG5cbiAgcHJpdmF0ZSB0cmFuc2Zvcm1TZXJpZXNEYXRhVG9FeHBvcnRhYmxlRmlsZVN0cnVjdHVyZShkYXRhVG9FeHBvcnQ6IERhdGFUb0V4cG9ydFtdKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNhY2hlZFJhd0V4cG9ydFNlcmllc0RhdGEpIHtcbiAgICAgIHRoaXMuY2FjaGVkUmF3RXhwb3J0U2VyaWVzRGF0YSA9XG4gICAgICAgIHRoaXMuZGF0YXBvaW50c0V4cG9ydFNlbGVjdG9yRGF0YVByb2Nlc3NpbmdTZXJ2aWNlLnRyYW5zZm9ybVRvRXhwb3J0RmlsZVN0cnVjdHVyZShcbiAgICAgICAgICBkYXRhVG9FeHBvcnRcbiAgICAgICAgKTtcbiAgICAgIHRoaXMuY2FjaGVkRmxhdHRlcmVkQW5kU29ydGVkU2VyaWVzRXhwb3J0RGF0YSA9IHRoaXMuY2FjaGVkUmF3RXhwb3J0U2VyaWVzRGF0YVxuICAgICAgICAuZmxhdCgpXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKGEudGltZSkuZ2V0VGltZSgpIC0gbmV3IERhdGUoYi50aW1lKS5nZXRUaW1lKCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { A11yModule } from '@angular/cdk/a11y';
|
|
2
|
+
import { Component, Input } from '@angular/core';
|
|
3
|
+
import { CoreModule } from '@c8y/ngx-components';
|
|
4
|
+
import { PopoverModule } from 'ngx-bootstrap/popover';
|
|
5
|
+
import { MEASUREMENTS_PREVIEW_ITEMS_LIMIT } from '../../../datapoints-export-selector.model';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@c8y/ngx-components";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "ngx-bootstrap/popover";
|
|
10
|
+
export class DataPointsExportSelectorPreviewComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.MEASUREMENTS_PREVIEW_ITEMS_LIMIT = MEASUREMENTS_PREVIEW_ITEMS_LIMIT;
|
|
13
|
+
}
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: DataPointsExportSelectorPreviewComponent, isStandalone: true, selector: "c8y-datapoints-export-selector-preview", inputs: { hasFetchedDataAnyValuesToExport: "hasFetchedDataAnyValuesToExport", isPreviewLoading: "isPreviewLoading", previewTableData: "previewTableData" }, ngImport: i0, template: "<div class=\"p-t-16 p-l-16 p-r-16 m-b-0\">\n <div class=\"d-flex a-i-center\">\n <label\n class=\"m-b-0 d-flex a-i-center gap-4\"\n [title]=\"'Preview`of exported file`' | translate\"\n >\n {{ 'Preview`of exported file`' | translate }}\n <button\n class=\"btn-help\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"popoverPreviewTemplate\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n [adaptivePosition]=\"true\"\n ></button>\n <ng-template #popoverPreviewTemplate>\n <span translate>\n <p>The preview shows the structure of the raw file from a single source.</p>\n <p>If no data is available, only the column headers are visible.</p>\n <p>\n The preview is limited to\n <b>{{ MEASUREMENTS_PREVIEW_ITEMS_LIMIT }}</b>\n records.\n </p>\n </span>\n </ng-template>\n </label>\n </div>\n <div\n class=\"table-responsive\"\n style=\"min-height: 275px\"\n >\n <table class=\"table\">\n <thead>\n <tr>\n <th>{{ 'Time' | translate }}</th>\n <th>{{ 'Source' | translate }}</th>\n <th>{{ 'Device name' | translate }}</th>\n <th>\n {{ 'Fragment and series' | translate }}\n </th>\n <th>{{ 'Value' | translate }}</th>\n <th>{{ 'Unit' | translate }}</th>\n </tr>\n </thead>\n <ng-container *ngIf=\"hasFetchedDataAnyValuesToExport || isPreviewLoading; else emptyState\">\n <ng-container *ngIf=\"!isPreviewLoading; else loading\">\n <tbody>\n <tr *ngFor=\"let row of previewTableData\">\n <td>{{ row.time }}</td>\n <td>{{ row.source }}</td>\n <td>{{ row.device_name }}</td>\n <td>\n {{ row.fragment_series }}\n </td>\n <td>{{ row.value }}</td>\n <td>{{ row.unit }}</td>\n </tr>\n </tbody>\n </ng-container>\n </ng-container>\n <ng-template #emptyState>\n <tbody>\n <tr>\n <td colspan=\"8\">\n <div class=\"d-col a-i-center\">\n <c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No data available.' | translate\"\n [horizontal]=\"true\"\n data-cy=\"datapoints-table-list--empty-state\"\n ></c8y-ui-empty-state>\n </div>\n </td>\n </tr>\n </tbody>\n </ng-template>\n <ng-template #loading>\n <tbody>\n <tr>\n <td colspan=\"8\">\n <c8y-loading></c8y-loading>\n </td>\n </tr>\n </tbody>\n </ng-template>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "ngmodule", type: CoreModule }, { kind: "component", type: i1.EmptyStateComponent, selector: "c8y-ui-empty-state", inputs: ["icon", "title", "subtitle", "horizontal"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.LoadingComponent, selector: "c8y-loading", inputs: ["layout", "progress", "message"] }, { kind: "ngmodule", type: PopoverModule }, { kind: "directive", type: i3.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }] }); }
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorPreviewComponent, decorators: [{
|
|
18
|
+
type: Component,
|
|
19
|
+
args: [{ selector: 'c8y-datapoints-export-selector-preview', standalone: true, imports: [A11yModule, CoreModule, PopoverModule], template: "<div class=\"p-t-16 p-l-16 p-r-16 m-b-0\">\n <div class=\"d-flex a-i-center\">\n <label\n class=\"m-b-0 d-flex a-i-center gap-4\"\n [title]=\"'Preview`of exported file`' | translate\"\n >\n {{ 'Preview`of exported file`' | translate }}\n <button\n class=\"btn-help\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"popoverPreviewTemplate\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n [adaptivePosition]=\"true\"\n ></button>\n <ng-template #popoverPreviewTemplate>\n <span translate>\n <p>The preview shows the structure of the raw file from a single source.</p>\n <p>If no data is available, only the column headers are visible.</p>\n <p>\n The preview is limited to\n <b>{{ MEASUREMENTS_PREVIEW_ITEMS_LIMIT }}</b>\n records.\n </p>\n </span>\n </ng-template>\n </label>\n </div>\n <div\n class=\"table-responsive\"\n style=\"min-height: 275px\"\n >\n <table class=\"table\">\n <thead>\n <tr>\n <th>{{ 'Time' | translate }}</th>\n <th>{{ 'Source' | translate }}</th>\n <th>{{ 'Device name' | translate }}</th>\n <th>\n {{ 'Fragment and series' | translate }}\n </th>\n <th>{{ 'Value' | translate }}</th>\n <th>{{ 'Unit' | translate }}</th>\n </tr>\n </thead>\n <ng-container *ngIf=\"hasFetchedDataAnyValuesToExport || isPreviewLoading; else emptyState\">\n <ng-container *ngIf=\"!isPreviewLoading; else loading\">\n <tbody>\n <tr *ngFor=\"let row of previewTableData\">\n <td>{{ row.time }}</td>\n <td>{{ row.source }}</td>\n <td>{{ row.device_name }}</td>\n <td>\n {{ row.fragment_series }}\n </td>\n <td>{{ row.value }}</td>\n <td>{{ row.unit }}</td>\n </tr>\n </tbody>\n </ng-container>\n </ng-container>\n <ng-template #emptyState>\n <tbody>\n <tr>\n <td colspan=\"8\">\n <div class=\"d-col a-i-center\">\n <c8y-ui-empty-state\n [icon]=\"'search'\"\n [title]=\"'No data available.' | translate\"\n [horizontal]=\"true\"\n data-cy=\"datapoints-table-list--empty-state\"\n ></c8y-ui-empty-state>\n </div>\n </td>\n </tr>\n </tbody>\n </ng-template>\n <ng-template #loading>\n <tbody>\n <tr>\n <td colspan=\"8\">\n <c8y-loading></c8y-loading>\n </td>\n </tr>\n </tbody>\n </ng-template>\n </table>\n </div>\n</div>\n" }]
|
|
20
|
+
}], propDecorators: { hasFetchedDataAnyValuesToExport: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}], isPreviewLoading: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}], previewTableData: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItcHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1tb2RhbC9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1maWxlLWV4cG9ydGVyL2RhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLXByZXZpZXcvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItcHJldmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1tb2RhbC9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1maWxlLWV4cG9ydGVyL2RhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLXByZXZpZXcvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItcHJldmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBRUwsZ0NBQWdDLEVBQ2pDLE1BQU0sMkNBQTJDLENBQUM7Ozs7O0FBUW5ELE1BQU0sT0FBTyx3Q0FBd0M7SUFOckQ7UUFXVyxxQ0FBZ0MsR0FBRyxnQ0FBZ0MsQ0FBQztLQUM5RTs4R0FOWSx3Q0FBd0M7a0dBQXhDLHdDQUF3Qyw4UENmckQsczFGQTJGQSwyQ0Q5RVksVUFBVSw4QkFBRSxVQUFVLCtwQkFBRSxhQUFhOzsyRkFFcEMsd0NBQXdDO2tCQU5wRCxTQUFTOytCQUNFLHdDQUF3QyxjQUV0QyxJQUFJLFdBQ1AsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQzs4QkFHdkMsK0JBQStCO3NCQUF2QyxLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgUG9wb3Zlck1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvcG9wb3Zlcic7XG5pbXBvcnQge1xuICBFeHBvcnREYXRhLFxuICBNRUFTVVJFTUVOVFNfUFJFVklFV19JVEVNU19MSU1JVFxufSBmcm9tICcuLi8uLi8uLi9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1wcmV2aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQTExeU1vZHVsZSwgQ29yZU1vZHVsZSwgUG9wb3Zlck1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgRGF0YVBvaW50c0V4cG9ydFNlbGVjdG9yUHJldmlld0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGhhc0ZldGNoZWREYXRhQW55VmFsdWVzVG9FeHBvcnQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzUHJldmlld0xvYWRpbmc6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHByZXZpZXdUYWJsZURhdGE6IEV4cG9ydERhdGFbXTtcblxuICByZWFkb25seSBNRUFTVVJFTUVOVFNfUFJFVklFV19JVEVNU19MSU1JVCA9IE1FQVNVUkVNRU5UU19QUkVWSUVXX0lURU1TX0xJTUlUO1xufVxuIiwiPGRpdiBjbGFzcz1cInAtdC0xNiBwLWwtMTYgcC1yLTE2IG0tYi0wXCI+XG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggYS1pLWNlbnRlclwiPlxuICAgIDxsYWJlbFxuICAgICAgY2xhc3M9XCJtLWItMCBkLWZsZXggYS1pLWNlbnRlciBnYXAtNFwiXG4gICAgICBbdGl0bGVdPVwiJ1ByZXZpZXdgb2YgZXhwb3J0ZWQgZmlsZWAnIHwgdHJhbnNsYXRlXCJcbiAgICA+XG4gICAgICB7eyAnUHJldmlld2BvZiBleHBvcnRlZCBmaWxlYCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJidG4taGVscFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0hlbHAnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgW3BvcG92ZXJdPVwicG9wb3ZlclByZXZpZXdUZW1wbGF0ZVwiXG4gICAgICAgIHBsYWNlbWVudD1cInJpZ2h0XCJcbiAgICAgICAgdHJpZ2dlcnM9XCJmb2N1c1wiXG4gICAgICAgIGNvbnRhaW5lcj1cImJvZHlcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW2FkYXB0aXZlUG9zaXRpb25dPVwidHJ1ZVwiXG4gICAgICA+PC9idXR0b24+XG4gICAgICA8bmctdGVtcGxhdGUgI3BvcG92ZXJQcmV2aWV3VGVtcGxhdGU+XG4gICAgICAgIDxzcGFuIHRyYW5zbGF0ZT5cbiAgICAgICAgICA8cD5UaGUgcHJldmlldyBzaG93cyB0aGUgc3RydWN0dXJlIG9mIHRoZSByYXcgZmlsZSBmcm9tIGEgc2luZ2xlIHNvdXJjZS48L3A+XG4gICAgICAgICAgPHA+SWYgbm8gZGF0YSBpcyBhdmFpbGFibGUsIG9ubHkgdGhlIGNvbHVtbiBoZWFkZXJzIGFyZSB2aXNpYmxlLjwvcD5cbiAgICAgICAgICA8cD5cbiAgICAgICAgICAgIFRoZSBwcmV2aWV3IGlzIGxpbWl0ZWQgdG9cbiAgICAgICAgICAgIDxiPnt7IE1FQVNVUkVNRU5UU19QUkVWSUVXX0lURU1TX0xJTUlUIH19PC9iPlxuICAgICAgICAgICAgcmVjb3Jkcy5cbiAgICAgICAgICA8L3A+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9sYWJlbD5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmVcIlxuICAgIHN0eWxlPVwibWluLWhlaWdodDogMjc1cHhcIlxuICA+XG4gICAgPHRhYmxlIGNsYXNzPVwidGFibGVcIj5cbiAgICAgIDx0aGVhZD5cbiAgICAgICAgPHRyPlxuICAgICAgICAgIDx0aD57eyAnVGltZScgfCB0cmFuc2xhdGUgfX08L3RoPlxuICAgICAgICAgIDx0aD57eyAnU291cmNlJyB8IHRyYW5zbGF0ZSB9fTwvdGg+XG4gICAgICAgICAgPHRoPnt7ICdEZXZpY2UgbmFtZScgfCB0cmFuc2xhdGUgfX08L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIHt7ICdGcmFnbWVudCBhbmQgc2VyaWVzJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPnt7ICdWYWx1ZScgfCB0cmFuc2xhdGUgfX08L3RoPlxuICAgICAgICAgIDx0aD57eyAnVW5pdCcgfCB0cmFuc2xhdGUgfX08L3RoPlxuICAgICAgICA8L3RyPlxuICAgICAgPC90aGVhZD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNGZXRjaGVkRGF0YUFueVZhbHVlc1RvRXhwb3J0IHx8IGlzUHJldmlld0xvYWRpbmc7IGVsc2UgZW1wdHlTdGF0ZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzUHJldmlld0xvYWRpbmc7IGVsc2UgbG9hZGluZ1wiPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcm93IG9mIHByZXZpZXdUYWJsZURhdGFcIj5cbiAgICAgICAgICAgICAgPHRkPnt7IHJvdy50aW1lIH19PC90ZD5cbiAgICAgICAgICAgICAgPHRkPnt7IHJvdy5zb3VyY2UgfX08L3RkPlxuICAgICAgICAgICAgICA8dGQ+e3sgcm93LmRldmljZV9uYW1lIH19PC90ZD5cbiAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgIHt7IHJvdy5mcmFnbWVudF9zZXJpZXMgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkPnt7IHJvdy52YWx1ZSB9fTwvdGQ+XG4gICAgICAgICAgICAgIDx0ZD57eyByb3cudW5pdCB9fTwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2VtcHR5U3RhdGU+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjhcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtY29sIGEtaS1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8Yzh5LXVpLWVtcHR5LXN0YXRlXG4gICAgICAgICAgICAgICAgICBbaWNvbl09XCInc2VhcmNoJ1wiXG4gICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ05vIGRhdGEgYXZhaWxhYmxlLicgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgW2hvcml6b250YWxdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICBkYXRhLWN5PVwiZGF0YXBvaW50cy10YWJsZS1saXN0LS1lbXB0eS1zdGF0ZVwiXG4gICAgICAgICAgICAgICAgPjwvYzh5LXVpLWVtcHR5LXN0YXRlPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC90Ym9keT5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjhcIj5cbiAgICAgICAgICAgICAgPGM4eS1sb2FkaW5nPjwvYzh5LWxvYWRpbmc+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvdGFibGU+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { FormsModule } from '@angular/forms';
|
|
3
|
+
import { AGGREGATION_LABELS, AGGREGATION_VALUES_ARR, CoreModule } from '@c8y/ngx-components';
|
|
4
|
+
import { PopoverModule } from 'ngx-bootstrap/popover';
|
|
5
|
+
import { EXPORT_MODE_LABELS, EXPORT_MODE_VALUES } from '../../../datapoints-export-selector.model';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@c8y/ngx-components";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "@angular/forms";
|
|
10
|
+
import * as i4 from "ngx-bootstrap/popover";
|
|
11
|
+
export class DataPointsExportSelectorDataScopeComponent {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.onAggregationChange = new EventEmitter();
|
|
14
|
+
this.onExportTypeChange = new EventEmitter();
|
|
15
|
+
this.AGGREGATION_LABELS = AGGREGATION_LABELS;
|
|
16
|
+
this.AGGREGATION_VALUES_ARR = AGGREGATION_VALUES_ARR;
|
|
17
|
+
this.EXPORT_MODE_LABELS = EXPORT_MODE_LABELS;
|
|
18
|
+
this.EXPORT_MODE_VALUES_ARR = [EXPORT_MODE_VALUES.full, EXPORT_MODE_VALUES.compact];
|
|
19
|
+
}
|
|
20
|
+
emitAggregationChange(aggregation) {
|
|
21
|
+
this.onAggregationChange.emit(aggregation);
|
|
22
|
+
}
|
|
23
|
+
emitExportTypeChange(exportType) {
|
|
24
|
+
this.onExportTypeChange.emit(exportType);
|
|
25
|
+
}
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorDataScopeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: DataPointsExportSelectorDataScopeComponent, isStandalone: true, selector: "c8y-datapoints-export-selector-data-scope", inputs: { disabledAggregationOptions: "disabledAggregationOptions", formGroup: "formGroup" }, outputs: { onAggregationChange: "onAggregationChange", onExportTypeChange: "onExportTypeChange" }, ngImport: i0, template: "<fieldset class=\"c8y-fieldset\">\n <legend class=\"d-flex a-i-center\">\n {{ 'Data scope' | translate }}\n <button\n class=\"btn-help\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"popoverDataScopeTemplate\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n [adaptivePosition]=\"true\"\n ></button>\n <ng-template #popoverDataScopeTemplate>\n <p\n class=\"m-b-8\"\n translate\n >\n Choose type of an export to generate, the available options are:\n </p>\n <p><strong translate>Compact</strong></p>\n <ul class=\"p-l-16\">\n <li translate>\n Up to 5,000 records per data point, or up to the data retention limit\n </li>\n <li translate>Creates a single merged file containing all the data</li>\n <li translate>Preview is not available</li>\n <li translate>Supports data aggregation (optional)</li>\n </ul>\n <p><strong translate>Full</strong></p>\n <ul class=\"p-l-16\">\n <li translate>\n Up to 1,000,000 records per data point, or up to the data retention limit\n </li>\n <li translate>\n If the export exceeds 50,000 records, the data will be sent via email\n </li>\n <li translate>\n Creates a compressed ZIP file that contains separate data files for each of your\n selected points\n </li>\n <li translate>Preview is available</li>\n <li translate>No data aggregation</li>\n </ul>\n </ng-template>\n </legend>\n <c8y-form-group class=\"m-b-8\">\n <label>\n {{ 'Export mode' | translate }}\n </label>\n <div\n class=\"c8y-select-wrapper\"\n [formGroup]=\"formGroup\"\n >\n <select\n class=\"form-control text-12\"\n [title]=\"'Export mode' | translate\"\n id=\"exportMode\"\n formControlName=\"exportMode\"\n (ngModelChange)=\"emitExportTypeChange($event)\"\n >\n <option\n *ngFor=\"let exportModeValue of EXPORT_MODE_VALUES_ARR\"\n [ngValue]=\"exportModeValue\"\n >\n {{ EXPORT_MODE_LABELS[exportModeValue] | translate }}\n </option>\n </select>\n </div>\n </c8y-form-group>\n <c8y-form-group class=\"m-b-8\">\n <label>\n {{ 'Aggregation' | translate }}\n </label>\n <div\n class=\"c8y-select-wrapper\"\n [formGroup]=\"formGroup\"\n >\n <select\n class=\"form-control text-12\"\n [title]=\"'Aggregation' | translate\"\n id=\"aggregation\"\n formControlName=\"aggregation\"\n (ngModelChange)=\"emitAggregationChange($event)\"\n >\n <option\n *ngFor=\"let aggregationValue of AGGREGATION_VALUES_ARR\"\n [ngValue]=\"aggregationValue\"\n [disabled]=\"disabledAggregationOptions[aggregationValue]\"\n >\n {{ AGGREGATION_LABELS[aggregationValue] | translate }}\n </option>\n </select>\n </div>\n </c8y-form-group>\n </fieldset>", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "directive", type: i1.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i1.FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: PopoverModule }, { kind: "directive", type: i4.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }] }); }
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorDataScopeComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'c8y-datapoints-export-selector-data-scope', standalone: true, imports: [CoreModule, FormsModule, PopoverModule], template: "<fieldset class=\"c8y-fieldset\">\n <legend class=\"d-flex a-i-center\">\n {{ 'Data scope' | translate }}\n <button\n class=\"btn-help\"\n [attr.aria-label]=\"'Help' | translate\"\n [popover]=\"popoverDataScopeTemplate\"\n placement=\"right\"\n triggers=\"focus\"\n container=\"body\"\n type=\"button\"\n [adaptivePosition]=\"true\"\n ></button>\n <ng-template #popoverDataScopeTemplate>\n <p\n class=\"m-b-8\"\n translate\n >\n Choose type of an export to generate, the available options are:\n </p>\n <p><strong translate>Compact</strong></p>\n <ul class=\"p-l-16\">\n <li translate>\n Up to 5,000 records per data point, or up to the data retention limit\n </li>\n <li translate>Creates a single merged file containing all the data</li>\n <li translate>Preview is not available</li>\n <li translate>Supports data aggregation (optional)</li>\n </ul>\n <p><strong translate>Full</strong></p>\n <ul class=\"p-l-16\">\n <li translate>\n Up to 1,000,000 records per data point, or up to the data retention limit\n </li>\n <li translate>\n If the export exceeds 50,000 records, the data will be sent via email\n </li>\n <li translate>\n Creates a compressed ZIP file that contains separate data files for each of your\n selected points\n </li>\n <li translate>Preview is available</li>\n <li translate>No data aggregation</li>\n </ul>\n </ng-template>\n </legend>\n <c8y-form-group class=\"m-b-8\">\n <label>\n {{ 'Export mode' | translate }}\n </label>\n <div\n class=\"c8y-select-wrapper\"\n [formGroup]=\"formGroup\"\n >\n <select\n class=\"form-control text-12\"\n [title]=\"'Export mode' | translate\"\n id=\"exportMode\"\n formControlName=\"exportMode\"\n (ngModelChange)=\"emitExportTypeChange($event)\"\n >\n <option\n *ngFor=\"let exportModeValue of EXPORT_MODE_VALUES_ARR\"\n [ngValue]=\"exportModeValue\"\n >\n {{ EXPORT_MODE_LABELS[exportModeValue] | translate }}\n </option>\n </select>\n </div>\n </c8y-form-group>\n <c8y-form-group class=\"m-b-8\">\n <label>\n {{ 'Aggregation' | translate }}\n </label>\n <div\n class=\"c8y-select-wrapper\"\n [formGroup]=\"formGroup\"\n >\n <select\n class=\"form-control text-12\"\n [title]=\"'Aggregation' | translate\"\n id=\"aggregation\"\n formControlName=\"aggregation\"\n (ngModelChange)=\"emitAggregationChange($event)\"\n >\n <option\n *ngFor=\"let aggregationValue of AGGREGATION_VALUES_ARR\"\n [ngValue]=\"aggregationValue\"\n [disabled]=\"disabledAggregationOptions[aggregationValue]\"\n >\n {{ AGGREGATION_LABELS[aggregationValue] | translate }}\n </option>\n </select>\n </div>\n </c8y-form-group>\n </fieldset>" }]
|
|
32
|
+
}], propDecorators: { disabledAggregationOptions: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], formGroup: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], onAggregationChange: [{
|
|
37
|
+
type: Output
|
|
38
|
+
}], onExportTypeChange: [{
|
|
39
|
+
type: Output
|
|
40
|
+
}] } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXBvaW50cy1leHBvcnRzLXNlbGVjdG9yLWRhdGEtc2NvcGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3IvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItbW9kYWwvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItZmlsZS1leHBvcnRlci9kYXRhcG9pbnRzLWV4cG9ydHMtc2VsZWN0b3ItZGF0YS1zY29wZS9kYXRhcG9pbnRzLWV4cG9ydHMtc2VsZWN0b3ItZGF0YS1zY29wZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1tb2RhbC9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1maWxlLWV4cG9ydGVyL2RhdGFwb2ludHMtZXhwb3J0cy1zZWxlY3Rvci1kYXRhLXNjb3BlL2RhdGFwb2ludHMtZXhwb3J0cy1zZWxlY3Rvci1kYXRhLXNjb3BlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsc0JBQXNCLEVBR3RCLFVBQVUsRUFDWCxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7O0FBU25HLE1BQU0sT0FBTywwQ0FBMEM7SUFOdkQ7UUFTWSx3QkFBbUIsR0FDM0IsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFDOUIsdUJBQWtCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFFdkUsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUM7UUFDeEMsMkJBQXNCLEdBQUcsc0JBQXNCLENBQUM7UUFDaEQsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUM7UUFDeEMsMkJBQXNCLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsT0FBTyxDQUFVLENBQUM7S0FTbEc7SUFQQyxxQkFBcUIsQ0FBQyxXQUE4QjtRQUNsRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxVQUFrQjtRQUNyQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7OEdBbEJVLDBDQUEwQztrR0FBMUMsMENBQTBDLHNTQ25CdkQsMnRHQStGYSwyQ0Q5RUQsVUFBVSx1NkNBQUUsV0FBVyw4QkFBRSxhQUFhOzsyRkFFckMsMENBQTBDO2tCQU50RCxTQUFTOytCQUNFLDJDQUEyQyxjQUV6QyxJQUFJLFdBQ1AsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLGFBQWEsQ0FBQzs4QkFHeEMsMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0ksbUJBQW1CO3NCQUE1QixNQUFNO2dCQUVHLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIEFHR1JFR0FUSU9OX0xBQkVMUyxcbiAgQUdHUkVHQVRJT05fVkFMVUVTX0FSUixcbiAgQWdncmVnYXRpb25PcHRpb24sXG4gIEFnZ3JlZ2F0aW9uT3B0aW9uU3RhdHVzLFxuICBDb3JlTW9kdWxlXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgUG9wb3Zlck1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvcG9wb3Zlcic7XG5pbXBvcnQgeyBFWFBPUlRfTU9ERV9MQUJFTFMsIEVYUE9SVF9NT0RFX1ZBTFVFUyB9IGZyb20gJy4uLy4uLy4uL2RhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLm1vZGVsJztcbmltcG9ydCB7IERhdGFwb2ludHNFeHBvcnRTZWxlY3RvckZpbGVFeHBvcnRlckNvbXBvbmVudCB9IGZyb20gJy4uL2RhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLWZpbGUtZXhwb3J0ZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LWRhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLWRhdGEtc2NvcGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YXBvaW50cy1leHBvcnRzLXNlbGVjdG9yLWRhdGEtc2NvcGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgRm9ybXNNb2R1bGUsIFBvcG92ZXJNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIERhdGFQb2ludHNFeHBvcnRTZWxlY3RvckRhdGFTY29wZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGRpc2FibGVkQWdncmVnYXRpb25PcHRpb25zOiBBZ2dyZWdhdGlvbk9wdGlvblN0YXR1cztcbiAgQElucHV0KCkgZm9ybUdyb3VwOiBSZXR1cm5UeXBlPERhdGFwb2ludHNFeHBvcnRTZWxlY3RvckZpbGVFeHBvcnRlckNvbXBvbmVudFsnY3JlYXRlRm9ybSddPjtcbiAgQE91dHB1dCgpIG9uQWdncmVnYXRpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxBZ2dyZWdhdGlvbk9wdGlvbj4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8QWdncmVnYXRpb25PcHRpb24+KCk7XG4gIEBPdXRwdXQoKSBvbkV4cG9ydFR5cGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgcmVhZG9ubHkgQUdHUkVHQVRJT05fTEFCRUxTID0gQUdHUkVHQVRJT05fTEFCRUxTO1xuICByZWFkb25seSBBR0dSRUdBVElPTl9WQUxVRVNfQVJSID0gQUdHUkVHQVRJT05fVkFMVUVTX0FSUjtcbiAgcmVhZG9ubHkgRVhQT1JUX01PREVfTEFCRUxTID0gRVhQT1JUX01PREVfTEFCRUxTO1xuICByZWFkb25seSBFWFBPUlRfTU9ERV9WQUxVRVNfQVJSID0gW0VYUE9SVF9NT0RFX1ZBTFVFUy5mdWxsLCBFWFBPUlRfTU9ERV9WQUxVRVMuY29tcGFjdF0gYXMgY29uc3Q7XG5cbiAgZW1pdEFnZ3JlZ2F0aW9uQ2hhbmdlKGFnZ3JlZ2F0aW9uOiBBZ2dyZWdhdGlvbk9wdGlvbik6IHZvaWQge1xuICAgIHRoaXMub25BZ2dyZWdhdGlvbkNoYW5nZS5lbWl0KGFnZ3JlZ2F0aW9uKTtcbiAgfVxuXG4gIGVtaXRFeHBvcnRUeXBlQ2hhbmdlKGV4cG9ydFR5cGU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMub25FeHBvcnRUeXBlQ2hhbmdlLmVtaXQoZXhwb3J0VHlwZSk7XG4gIH1cbn1cbiIsIjxmaWVsZHNldCBjbGFzcz1cImM4eS1maWVsZHNldFwiPlxuICAgIDxsZWdlbmQgY2xhc3M9XCJkLWZsZXggYS1pLWNlbnRlclwiPlxuICAgICAge3sgJ0RhdGEgc2NvcGUnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwiYnRuLWhlbHBcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidIZWxwJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgIFtwb3BvdmVyXT1cInBvcG92ZXJEYXRhU2NvcGVUZW1wbGF0ZVwiXG4gICAgICAgIHBsYWNlbWVudD1cInJpZ2h0XCJcbiAgICAgICAgdHJpZ2dlcnM9XCJmb2N1c1wiXG4gICAgICAgIGNvbnRhaW5lcj1cImJvZHlcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW2FkYXB0aXZlUG9zaXRpb25dPVwidHJ1ZVwiXG4gICAgICA+PC9idXR0b24+XG4gICAgICA8bmctdGVtcGxhdGUgI3BvcG92ZXJEYXRhU2NvcGVUZW1wbGF0ZT5cbiAgICAgICAgPHBcbiAgICAgICAgICBjbGFzcz1cIm0tYi04XCJcbiAgICAgICAgICB0cmFuc2xhdGVcbiAgICAgICAgPlxuICAgICAgICAgIENob29zZSB0eXBlIG9mIGFuIGV4cG9ydCB0byBnZW5lcmF0ZSwgdGhlIGF2YWlsYWJsZSBvcHRpb25zIGFyZTpcbiAgICAgICAgPC9wPlxuICAgICAgICA8cD48c3Ryb25nIHRyYW5zbGF0ZT5Db21wYWN0PC9zdHJvbmc+PC9wPlxuICAgICAgICA8dWwgY2xhc3M9XCJwLWwtMTZcIj5cbiAgICAgICAgICA8bGkgdHJhbnNsYXRlPlxuICAgICAgICAgICAgVXAgdG8gNSwwMDAgcmVjb3JkcyBwZXIgZGF0YSBwb2ludCwgb3IgdXAgdG8gdGhlIGRhdGEgcmV0ZW50aW9uIGxpbWl0XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgdHJhbnNsYXRlPkNyZWF0ZXMgYSBzaW5nbGUgbWVyZ2VkIGZpbGUgY29udGFpbmluZyBhbGwgdGhlIGRhdGE8L2xpPlxuICAgICAgICAgIDxsaSB0cmFuc2xhdGU+UHJldmlldyBpcyBub3QgYXZhaWxhYmxlPC9saT5cbiAgICAgICAgICA8bGkgdHJhbnNsYXRlPlN1cHBvcnRzIGRhdGEgYWdncmVnYXRpb24gKG9wdGlvbmFsKTwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICAgIDxwPjxzdHJvbmcgdHJhbnNsYXRlPkZ1bGw8L3N0cm9uZz48L3A+XG4gICAgICAgIDx1bCBjbGFzcz1cInAtbC0xNlwiPlxuICAgICAgICAgIDxsaSB0cmFuc2xhdGU+XG4gICAgICAgICAgICBVcCB0byAxLDAwMCwwMDAgcmVjb3JkcyBwZXIgZGF0YSBwb2ludCwgb3IgdXAgdG8gdGhlIGRhdGEgcmV0ZW50aW9uIGxpbWl0XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgdHJhbnNsYXRlPlxuICAgICAgICAgICAgSWYgdGhlIGV4cG9ydCBleGNlZWRzIDUwLDAwMCByZWNvcmRzLCB0aGUgZGF0YSB3aWxsIGJlIHNlbnQgdmlhIGVtYWlsXG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgdHJhbnNsYXRlPlxuICAgICAgICAgICAgQ3JlYXRlcyBhIGNvbXByZXNzZWQgWklQIGZpbGUgdGhhdCBjb250YWlucyBzZXBhcmF0ZSBkYXRhIGZpbGVzIGZvciBlYWNoIG9mIHlvdXJcbiAgICAgICAgICAgIHNlbGVjdGVkIHBvaW50c1xuICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPGxpIHRyYW5zbGF0ZT5QcmV2aWV3IGlzIGF2YWlsYWJsZTwvbGk+XG4gICAgICAgICAgPGxpIHRyYW5zbGF0ZT5ObyBkYXRhIGFnZ3JlZ2F0aW9uPC9saT5cbiAgICAgICAgPC91bD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9sZWdlbmQ+XG4gICAgPGM4eS1mb3JtLWdyb3VwIGNsYXNzPVwibS1iLThcIj5cbiAgICAgIDxsYWJlbD5cbiAgICAgICAge3sgJ0V4cG9ydCBtb2RlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJjOHktc2VsZWN0LXdyYXBwZXJcIlxuICAgICAgICBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXG4gICAgICA+XG4gICAgICAgIDxzZWxlY3RcbiAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCB0ZXh0LTEyXCJcbiAgICAgICAgICBbdGl0bGVdPVwiJ0V4cG9ydCBtb2RlJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgaWQ9XCJleHBvcnRNb2RlXCJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJleHBvcnRNb2RlXCJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJlbWl0RXhwb3J0VHlwZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxvcHRpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBleHBvcnRNb2RlVmFsdWUgb2YgRVhQT1JUX01PREVfVkFMVUVTX0FSUlwiXG4gICAgICAgICAgICBbbmdWYWx1ZV09XCJleHBvcnRNb2RlVmFsdWVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IEVYUE9SVF9NT0RFX0xBQkVMU1tleHBvcnRNb2RlVmFsdWVdIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgIDwvc2VsZWN0PlxuICAgICAgPC9kaXY+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cbiAgICA8Yzh5LWZvcm0tZ3JvdXAgY2xhc3M9XCJtLWItOFwiPlxuICAgICAgPGxhYmVsPlxuICAgICAgICB7eyAnQWdncmVnYXRpb24nIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2xhYmVsPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImM4eS1zZWxlY3Qtd3JhcHBlclwiXG4gICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCJcbiAgICAgID5cbiAgICAgICAgPHNlbGVjdFxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIHRleHQtMTJcIlxuICAgICAgICAgIFt0aXRsZV09XCInQWdncmVnYXRpb24nIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICBpZD1cImFnZ3JlZ2F0aW9uXCJcbiAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJhZ2dyZWdhdGlvblwiXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiZW1pdEFnZ3JlZ2F0aW9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgPG9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFnZ3JlZ2F0aW9uVmFsdWUgb2YgQUdHUkVHQVRJT05fVkFMVUVTX0FSUlwiXG4gICAgICAgICAgICBbbmdWYWx1ZV09XCJhZ2dyZWdhdGlvblZhbHVlXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZEFnZ3JlZ2F0aW9uT3B0aW9uc1thZ2dyZWdhdGlvblZhbHVlXVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgQUdHUkVHQVRJT05fTEFCRUxTW2FnZ3JlZ2F0aW9uVmFsdWVdIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgIDwvc2VsZWN0PlxuICAgICAgPC9kaXY+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cbiAgPC9maWVsZHNldD4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { FormsModule } from '@angular/forms';
|
|
3
|
+
import { CoreModule } from '@c8y/ngx-components';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@c8y/ngx-components";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
7
|
+
import * as i3 from "@angular/forms";
|
|
8
|
+
export class DataPointsExportSelectorFileTypesComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.dynamicFilesTypeMetadata = {};
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorFileTypesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: DataPointsExportSelectorFileTypesComponent, isStandalone: true, selector: "c8y-datapoints-export-selector-file-types", inputs: { dynamicFilesTypeMetadata: "dynamicFilesTypeMetadata", formGroup: "formGroup" }, ngImport: i0, template: "<fieldset class=\"c8y-fieldset\">\n <legend class=\"d-flex a-i-center\">{{ 'File types' | translate }}</legend>\n <div [formGroup]=\"formGroup\">\n <div formGroupName=\"fileTypes\">\n <c8y-form-group\n class=\"m-b-8\"\n *ngFor=\"let item of dynamicFilesTypeMetadata | keyvalue\"\n >\n <label>{{ item.value.label | translate }}</label>\n <label\n class=\"c8y-checkbox m-t-0\"\n title=\"{{ item.value.title }}\"\n >\n <input\n type=\"checkbox\"\n formControlName=\"{{ item.key }}\"\n />\n <span></span>\n <i\n class=\"m-l-8 m-r-4\"\n c8yIcon=\"{{ item.value.icon }}\"\n ></i>\n </label>\n </c8y-form-group>\n </div>\n </div>\n</fieldset>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i1.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i2.KeyValuePipe, name: "keyvalue" }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i1.FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: i1.RequiredInputPlaceholderDirective, selector: "input[required], input[formControlName]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "ngmodule", type: FormsModule }] }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorFileTypesComponent, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{ selector: 'c8y-datapoints-export-selector-file-types', standalone: true, imports: [CoreModule, FormsModule], template: "<fieldset class=\"c8y-fieldset\">\n <legend class=\"d-flex a-i-center\">{{ 'File types' | translate }}</legend>\n <div [formGroup]=\"formGroup\">\n <div formGroupName=\"fileTypes\">\n <c8y-form-group\n class=\"m-b-8\"\n *ngFor=\"let item of dynamicFilesTypeMetadata | keyvalue\"\n >\n <label>{{ item.value.label | translate }}</label>\n <label\n class=\"c8y-checkbox m-t-0\"\n title=\"{{ item.value.title }}\"\n >\n <input\n type=\"checkbox\"\n formControlName=\"{{ item.key }}\"\n />\n <span></span>\n <i\n class=\"m-l-8 m-r-4\"\n c8yIcon=\"{{ item.value.icon }}\"\n ></i>\n </label>\n </c8y-form-group>\n </div>\n </div>\n</fieldset>\n" }]
|
|
18
|
+
}], propDecorators: { dynamicFilesTypeMetadata: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}], formGroup: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXBvaW50cy1leHBvcnRzLXNlbGVjdG9yLWZpbGUtdHlwZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3IvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItbW9kYWwvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItZmlsZS1leHBvcnRlci9kYXRhcG9pbnRzLWV4cG9ydHMtc2VsZWN0b3ItZmlsZS10eXBlcy9kYXRhcG9pbnRzLWV4cG9ydHMtc2VsZWN0b3ItZmlsZS10eXBlcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1tb2RhbC9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1maWxlLWV4cG9ydGVyL2RhdGFwb2ludHMtZXhwb3J0cy1zZWxlY3Rvci1maWxlLXR5cGVzL2RhdGFwb2ludHMtZXhwb3J0cy1zZWxlY3Rvci1maWxlLXR5cGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBVWpELE1BQU0sT0FBTywwQ0FBMEM7SUFOdkQ7UUFPVyw2QkFBd0IsR0FBd0MsRUFBRSxDQUFDO0tBRTdFOzhHQUhZLDBDQUEwQztrR0FBMUMsMENBQTBDLCtMQ1p2RCw0eUJBMkJBLDJDRGpCWSxVQUFVLGs5Q0FBRSxXQUFXOzsyRkFFdEIsMENBQTBDO2tCQU50RCxTQUFTOytCQUNFLDJDQUEyQyxjQUV6QyxJQUFJLFdBQ1AsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDOzhCQUd6Qix3QkFBd0I7c0JBQWhDLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgRmlsZVR5cGVNZXRhZGF0YSB9IGZyb20gJy4uLy4uLy4uL2RhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLm1vZGVsJztcbmltcG9ydCB7IERhdGFwb2ludHNFeHBvcnRTZWxlY3RvckZpbGVFeHBvcnRlckNvbXBvbmVudCB9IGZyb20gJy4uL2RhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLWZpbGUtZXhwb3J0ZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LWRhdGFwb2ludHMtZXhwb3J0LXNlbGVjdG9yLWZpbGUtdHlwZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YXBvaW50cy1leHBvcnRzLXNlbGVjdG9yLWZpbGUtdHlwZXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgRm9ybXNNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIERhdGFQb2ludHNFeHBvcnRTZWxlY3RvckZpbGVUeXBlc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGR5bmFtaWNGaWxlc1R5cGVNZXRhZGF0YTogeyBba2V5OiBzdHJpbmddOiBGaWxlVHlwZU1ldGFkYXRhIH0gPSB7fTtcbiAgQElucHV0KCkgZm9ybUdyb3VwOiBSZXR1cm5UeXBlPERhdGFwb2ludHNFeHBvcnRTZWxlY3RvckZpbGVFeHBvcnRlckNvbXBvbmVudFsnY3JlYXRlRm9ybSddPjtcbn1cbiIsIjxmaWVsZHNldCBjbGFzcz1cImM4eS1maWVsZHNldFwiPlxuICA8bGVnZW5kIGNsYXNzPVwiZC1mbGV4IGEtaS1jZW50ZXJcIj57eyAnRmlsZSB0eXBlcycgfCB0cmFuc2xhdGUgfX08L2xlZ2VuZD5cbiAgPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgIDxkaXYgZm9ybUdyb3VwTmFtZT1cImZpbGVUeXBlc1wiPlxuICAgICAgPGM4eS1mb3JtLWdyb3VwXG4gICAgICAgIGNsYXNzPVwibS1iLThcIlxuICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkeW5hbWljRmlsZXNUeXBlTWV0YWRhdGEgfCBrZXl2YWx1ZVwiXG4gICAgICA+XG4gICAgICAgIDxsYWJlbD57eyBpdGVtLnZhbHVlLmxhYmVsIHwgdHJhbnNsYXRlIH19PC9sYWJlbD5cbiAgICAgICAgPGxhYmVsXG4gICAgICAgICAgY2xhc3M9XCJjOHktY2hlY2tib3ggbS10LTBcIlxuICAgICAgICAgIHRpdGxlPVwie3sgaXRlbS52YWx1ZS50aXRsZSB9fVwiXG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ7eyBpdGVtLmtleSB9fVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8c3Bhbj48L3NwYW4+XG4gICAgICAgICAgPGlcbiAgICAgICAgICAgIGNsYXNzPVwibS1sLTggbS1yLTRcIlxuICAgICAgICAgICAgYzh5SWNvbj1cInt7IGl0ZW0udmFsdWUuaWNvbiB9fVwiXG4gICAgICAgICAgPjwvaT5cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgIDwvYzh5LWZvcm0tZ3JvdXA+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9maWVsZHNldD5cbiJdfQ==
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { FormsModule } from '@angular/forms';
|
|
3
|
+
import { CoreModule, gettext } from '@c8y/ngx-components';
|
|
4
|
+
import { HAS_ERROR } from '../../../datapoints-export-selector.model';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@c8y/ngx-components";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "@angular/forms";
|
|
9
|
+
export class DataPointsExportSelectorTimeRangeComponent {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.onDateFromChange = new EventEmitter();
|
|
12
|
+
this.onDateToChange = new EventEmitter();
|
|
13
|
+
this.DATE_FROM = 'dateFrom';
|
|
14
|
+
this.DATE_TO = 'dateTo';
|
|
15
|
+
this.FROM_DATE = gettext('From`date`');
|
|
16
|
+
this.HAS_ERROR = HAS_ERROR;
|
|
17
|
+
this.INVALID_DATE_TIME = 'invalidDateTime';
|
|
18
|
+
this.THIS_DATE_IS_INVALID = gettext('This date is invalid.');
|
|
19
|
+
this.THIS_DATE_IS_AFTER_THE_LAST_ALLOWED_DATE = gettext('This date is after the latest allowed date.');
|
|
20
|
+
this.THIS_DATE_IS_BEFORE_THE_EARLIEST_ALLOWED_DATE = gettext('This date is before the earliest allowed date.');
|
|
21
|
+
this.TO_DATE = gettext('To`date`');
|
|
22
|
+
}
|
|
23
|
+
emitDateFromChange(updatedDate) {
|
|
24
|
+
this.onDateFromChange.emit(updatedDate);
|
|
25
|
+
}
|
|
26
|
+
emitDateToChange(updatedDate) {
|
|
27
|
+
this.onDateToChange.emit(updatedDate);
|
|
28
|
+
}
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorTimeRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: DataPointsExportSelectorTimeRangeComponent, isStandalone: true, selector: "c8y-datapoints-export-selector-time-range", inputs: { formGroup: "formGroup" }, outputs: { onDateFromChange: "onDateFromChange", onDateToChange: "onDateToChange" }, ngImport: i0, template: "<fieldset class=\"c8y-fieldset\">\n <legend>{{ 'Time range' | translate }}</legend>\n <c8y-form-group\n class=\"m-b-8\"\n [ngClass]=\"formGroup.controls.dateFrom.errors ? HAS_ERROR : ''\"\n >\n <label\n [title]=\"FROM_DATE | translate\"\n [for]=\"DATE_FROM\"\n >\n {{ FROM_DATE | translate }}\n </label>\n <div>\n <c8y-date-time-picker\n id=\"DATE_FROM\"\n [maxDate]=\"formGroup.value.dateTo\"\n [placeholder]=\"FROM_DATE | translate\"\n [formControl]=\"formGroup.controls.dateFrom\"\n [ngClass]=\"formGroup.controls.dateFrom.errors ? HAS_ERROR : ''\"\n (ngModelChange)=\"emitDateFromChange($event)\"\n ></c8y-date-time-picker>\n <c8y-messages [show]=\"formGroup.controls.dateFrom.errors\">\n <c8y-message\n name=\"dateAfterRangeMax\"\n [text]=\"THIS_DATE_IS_AFTER_THE_LAST_ALLOWED_DATE | translate\"\n ></c8y-message>\n <c8y-message\n name=\"INVALID_DATE_TIME\"\n [text]=\"THIS_DATE_IS_INVALID | translate\"\n ></c8y-message>\n </c8y-messages>\n </div>\n </c8y-form-group>\n <c8y-form-group\n class=\"m-b-8\"\n [ngClass]=\"formGroup.controls.dateTo.errors ? HAS_ERROR : ''\"\n >\n <label\n [title]=\"TO_DATE | translate\"\n [for]=\"DATE_TO\"\n >\n {{ TO_DATE | translate }}\n </label>\n <div>\n <c8y-date-time-picker\n id=\"DATE_TO\"\n [minDate]=\"formGroup.value.dateFrom\"\n [placeholder]=\"TO_DATE | translate\"\n [formControl]=\"formGroup.controls.dateTo\"\n [ngClass]=\"formGroup.controls.dateTo.errors ? HAS_ERROR : ''\"\n (ngModelChange)=\"emitDateToChange($event)\"\n ></c8y-date-time-picker>\n <c8y-messages [show]=\"formGroup.controls.dateTo.errors\">\n <c8y-message\n name=\"dateBeforeRangeMin\"\n [text]=\"THIS_DATE_IS_BEFORE_THE_EARLIEST_ALLOWED_DATE | translate\"\n ></c8y-message>\n <c8y-message\n name=\"INVALID_DATE_TIME\"\n [text]=\"THIS_DATE_IS_INVALID | translate\"\n ></c8y-message>\n </c8y-messages>\n </div>\n </c8y-form-group>\n</fieldset>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i1.C8yTranslatePipe, name: "translate" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i1.FormGroupComponent, selector: "c8y-form-group", inputs: ["hasError", "hasWarning", "hasSuccess", "novalidation", "status"] }, { kind: "directive", type: i1.MessageDirective, selector: "c8y-message", inputs: ["name", "text"] }, { kind: "component", type: i1.MessagesComponent, selector: "c8y-messages", inputs: ["show", "defaults", "helpMessage"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i1.DateTimePickerComponent, selector: "c8y-date-time-picker", inputs: ["minDate", "maxDate", "placeholder", "dateInputFormat", "adaptivePosition", "size", "dateType", "config"], outputs: ["onDateSelected"] }, { kind: "ngmodule", type: FormsModule }] }); }
|
|
31
|
+
}
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: DataPointsExportSelectorTimeRangeComponent, decorators: [{
|
|
33
|
+
type: Component,
|
|
34
|
+
args: [{ selector: 'c8y-datapoints-export-selector-time-range', standalone: true, imports: [CoreModule, FormsModule], template: "<fieldset class=\"c8y-fieldset\">\n <legend>{{ 'Time range' | translate }}</legend>\n <c8y-form-group\n class=\"m-b-8\"\n [ngClass]=\"formGroup.controls.dateFrom.errors ? HAS_ERROR : ''\"\n >\n <label\n [title]=\"FROM_DATE | translate\"\n [for]=\"DATE_FROM\"\n >\n {{ FROM_DATE | translate }}\n </label>\n <div>\n <c8y-date-time-picker\n id=\"DATE_FROM\"\n [maxDate]=\"formGroup.value.dateTo\"\n [placeholder]=\"FROM_DATE | translate\"\n [formControl]=\"formGroup.controls.dateFrom\"\n [ngClass]=\"formGroup.controls.dateFrom.errors ? HAS_ERROR : ''\"\n (ngModelChange)=\"emitDateFromChange($event)\"\n ></c8y-date-time-picker>\n <c8y-messages [show]=\"formGroup.controls.dateFrom.errors\">\n <c8y-message\n name=\"dateAfterRangeMax\"\n [text]=\"THIS_DATE_IS_AFTER_THE_LAST_ALLOWED_DATE | translate\"\n ></c8y-message>\n <c8y-message\n name=\"INVALID_DATE_TIME\"\n [text]=\"THIS_DATE_IS_INVALID | translate\"\n ></c8y-message>\n </c8y-messages>\n </div>\n </c8y-form-group>\n <c8y-form-group\n class=\"m-b-8\"\n [ngClass]=\"formGroup.controls.dateTo.errors ? HAS_ERROR : ''\"\n >\n <label\n [title]=\"TO_DATE | translate\"\n [for]=\"DATE_TO\"\n >\n {{ TO_DATE | translate }}\n </label>\n <div>\n <c8y-date-time-picker\n id=\"DATE_TO\"\n [minDate]=\"formGroup.value.dateFrom\"\n [placeholder]=\"TO_DATE | translate\"\n [formControl]=\"formGroup.controls.dateTo\"\n [ngClass]=\"formGroup.controls.dateTo.errors ? HAS_ERROR : ''\"\n (ngModelChange)=\"emitDateToChange($event)\"\n ></c8y-date-time-picker>\n <c8y-messages [show]=\"formGroup.controls.dateTo.errors\">\n <c8y-message\n name=\"dateBeforeRangeMin\"\n [text]=\"THIS_DATE_IS_BEFORE_THE_EARLIEST_ALLOWED_DATE | translate\"\n ></c8y-message>\n <c8y-message\n name=\"INVALID_DATE_TIME\"\n [text]=\"THIS_DATE_IS_INVALID | translate\"\n ></c8y-message>\n </c8y-messages>\n </div>\n </c8y-form-group>\n</fieldset>\n" }]
|
|
35
|
+
}], propDecorators: { formGroup: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], onDateFromChange: [{
|
|
38
|
+
type: Output
|
|
39
|
+
}], onDateToChange: [{
|
|
40
|
+
type: Output
|
|
41
|
+
}] } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXBvaW50cy1leHBvcnRzLXNlbGVjdG9yLXRpbWUtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3IvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItbW9kYWwvZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItZmlsZS1leHBvcnRlci9kYXRhcG9pbnRzLWV4cG9ydHMtc2VsZWN0b3ItdGltZS1yYW5nZS9kYXRhcG9pbnRzLWV4cG9ydHMtc2VsZWN0b3ItdGltZS1yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1tb2RhbC9kYXRhcG9pbnRzLWV4cG9ydC1zZWxlY3Rvci1maWxlLWV4cG9ydGVyL2RhdGFwb2ludHMtZXhwb3J0cy1zZWxlY3Rvci10aW1lLXJhbmdlL2RhdGFwb2ludHMtZXhwb3J0cy1zZWxlY3Rvci10aW1lLXJhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7OztBQVN0RSxNQUFNLE9BQU8sMENBQTBDO0lBTnZEO1FBUVkscUJBQWdCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFDcEUsbUJBQWMsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVuRSxjQUFTLEdBQUcsVUFBVSxDQUFDO1FBQ3ZCLFlBQU8sR0FBRyxRQUFRLENBQUM7UUFDbkIsY0FBUyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsQyxjQUFTLEdBQUcsU0FBUyxDQUFDO1FBQ3RCLHNCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQ3RDLHlCQUFvQixHQUFHLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3hELDZDQUF3QyxHQUFHLE9BQU8sQ0FDekQsNkNBQTZDLENBQzlDLENBQUM7UUFDTyxrREFBNkMsR0FBRyxPQUFPLENBQzlELGdEQUFnRCxDQUNqRCxDQUFDO1FBQ08sWUFBTyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQVN4QztJQVBDLGtCQUFrQixDQUFDLFdBQW1CO1FBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELGdCQUFnQixDQUFDLFdBQW1CO1FBQ2xDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7OEdBekJVLDBDQUEwQztrR0FBMUMsMENBQTBDLDhOQ1p2RCx1cEVBaUVBLDJDRHZEWSxVQUFVLDhqQ0FBRSxXQUFXOzsyRkFFdEIsMENBQTBDO2tCQU50RCxTQUFTOytCQUNFLDJDQUEyQyxjQUV6QyxJQUFJLFdBQ1AsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDOzhCQUd6QixTQUFTO3NCQUFqQixLQUFLO2dCQUNJLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29yZU1vZHVsZSwgZ2V0dGV4dCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgSEFTX0VSUk9SIH0gZnJvbSAnLi4vLi4vLi4vZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3IubW9kZWwnO1xuaW1wb3J0IHsgRGF0YXBvaW50c0V4cG9ydFNlbGVjdG9yRmlsZUV4cG9ydGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItZmlsZS1leHBvcnRlci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktZGF0YXBvaW50cy1leHBvcnQtc2VsZWN0b3ItdGltZS1yYW5nZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhcG9pbnRzLWV4cG9ydHMtc2VsZWN0b3ItdGltZS1yYW5nZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb3JlTW9kdWxlLCBGb3Jtc01vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgRGF0YVBvaW50c0V4cG9ydFNlbGVjdG9yVGltZVJhbmdlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZm9ybUdyb3VwOiBSZXR1cm5UeXBlPERhdGFwb2ludHNFeHBvcnRTZWxlY3RvckZpbGVFeHBvcnRlckNvbXBvbmVudFsnY3JlYXRlRm9ybSddPjtcbiAgQE91dHB1dCgpIG9uRGF0ZUZyb21DaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBvbkRhdGVUb0NoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICByZWFkb25seSBEQVRFX0ZST00gPSAnZGF0ZUZyb20nO1xuICByZWFkb25seSBEQVRFX1RPID0gJ2RhdGVUbyc7XG4gIHJlYWRvbmx5IEZST01fREFURSA9IGdldHRleHQoJ0Zyb21gZGF0ZWAnKTtcbiAgcmVhZG9ubHkgSEFTX0VSUk9SID0gSEFTX0VSUk9SO1xuICByZWFkb25seSBJTlZBTElEX0RBVEVfVElNRSA9ICdpbnZhbGlkRGF0ZVRpbWUnO1xuICByZWFkb25seSBUSElTX0RBVEVfSVNfSU5WQUxJRCA9IGdldHRleHQoJ1RoaXMgZGF0ZSBpcyBpbnZhbGlkLicpO1xuICByZWFkb25seSBUSElTX0RBVEVfSVNfQUZURVJfVEhFX0xBU1RfQUxMT1dFRF9EQVRFID0gZ2V0dGV4dChcbiAgICAnVGhpcyBkYXRlIGlzIGFmdGVyIHRoZSBsYXRlc3QgYWxsb3dlZCBkYXRlLidcbiAgKTtcbiAgcmVhZG9ubHkgVEhJU19EQVRFX0lTX0JFRk9SRV9USEVfRUFSTElFU1RfQUxMT1dFRF9EQVRFID0gZ2V0dGV4dChcbiAgICAnVGhpcyBkYXRlIGlzIGJlZm9yZSB0aGUgZWFybGllc3QgYWxsb3dlZCBkYXRlLidcbiAgKTtcbiAgcmVhZG9ubHkgVE9fREFURSA9IGdldHRleHQoJ1RvYGRhdGVgJyk7XG5cbiAgZW1pdERhdGVGcm9tQ2hhbmdlKHVwZGF0ZWREYXRlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLm9uRGF0ZUZyb21DaGFuZ2UuZW1pdCh1cGRhdGVkRGF0ZSk7XG4gIH1cblxuICBlbWl0RGF0ZVRvQ2hhbmdlKHVwZGF0ZWREYXRlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLm9uRGF0ZVRvQ2hhbmdlLmVtaXQodXBkYXRlZERhdGUpO1xuICB9XG59XG4iLCI8ZmllbGRzZXQgY2xhc3M9XCJjOHktZmllbGRzZXRcIj5cbiAgPGxlZ2VuZD57eyAnVGltZSByYW5nZScgfCB0cmFuc2xhdGUgfX08L2xlZ2VuZD5cbiAgPGM4eS1mb3JtLWdyb3VwXG4gICAgY2xhc3M9XCJtLWItOFwiXG4gICAgW25nQ2xhc3NdPVwiZm9ybUdyb3VwLmNvbnRyb2xzLmRhdGVGcm9tLmVycm9ycyA/IEhBU19FUlJPUiA6ICcnXCJcbiAgPlxuICAgIDxsYWJlbFxuICAgICAgW3RpdGxlXT1cIkZST01fREFURSB8IHRyYW5zbGF0ZVwiXG4gICAgICBbZm9yXT1cIkRBVEVfRlJPTVwiXG4gICAgPlxuICAgICAge3sgRlJPTV9EQVRFIHwgdHJhbnNsYXRlIH19XG4gICAgPC9sYWJlbD5cbiAgICA8ZGl2PlxuICAgICAgPGM4eS1kYXRlLXRpbWUtcGlja2VyXG4gICAgICAgIGlkPVwiREFURV9GUk9NXCJcbiAgICAgICAgW21heERhdGVdPVwiZm9ybUdyb3VwLnZhbHVlLmRhdGVUb1wiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJGUk9NX0RBVEUgfCB0cmFuc2xhdGVcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUdyb3VwLmNvbnRyb2xzLmRhdGVGcm9tXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiZm9ybUdyb3VwLmNvbnRyb2xzLmRhdGVGcm9tLmVycm9ycyA/IEhBU19FUlJPUiA6ICcnXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiZW1pdERhdGVGcm9tQ2hhbmdlKCRldmVudClcIlxuICAgICAgPjwvYzh5LWRhdGUtdGltZS1waWNrZXI+XG4gICAgICA8Yzh5LW1lc3NhZ2VzIFtzaG93XT1cImZvcm1Hcm91cC5jb250cm9scy5kYXRlRnJvbS5lcnJvcnNcIj5cbiAgICAgICAgPGM4eS1tZXNzYWdlXG4gICAgICAgICAgbmFtZT1cImRhdGVBZnRlclJhbmdlTWF4XCJcbiAgICAgICAgICBbdGV4dF09XCJUSElTX0RBVEVfSVNfQUZURVJfVEhFX0xBU1RfQUxMT1dFRF9EQVRFIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgPjwvYzh5LW1lc3NhZ2U+XG4gICAgICAgIDxjOHktbWVzc2FnZVxuICAgICAgICAgIG5hbWU9XCJJTlZBTElEX0RBVEVfVElNRVwiXG4gICAgICAgICAgW3RleHRdPVwiVEhJU19EQVRFX0lTX0lOVkFMSUQgfCB0cmFuc2xhdGVcIlxuICAgICAgICA+PC9jOHktbWVzc2FnZT5cbiAgICAgIDwvYzh5LW1lc3NhZ2VzPlxuICAgIDwvZGl2PlxuICA8L2M4eS1mb3JtLWdyb3VwPlxuICA8Yzh5LWZvcm0tZ3JvdXBcbiAgICBjbGFzcz1cIm0tYi04XCJcbiAgICBbbmdDbGFzc109XCJmb3JtR3JvdXAuY29udHJvbHMuZGF0ZVRvLmVycm9ycyA/IEhBU19FUlJPUiA6ICcnXCJcbiAgPlxuICAgIDxsYWJlbFxuICAgICAgW3RpdGxlXT1cIlRPX0RBVEUgfCB0cmFuc2xhdGVcIlxuICAgICAgW2Zvcl09XCJEQVRFX1RPXCJcbiAgICA+XG4gICAgICB7eyBUT19EQVRFIHwgdHJhbnNsYXRlIH19XG4gICAgPC9sYWJlbD5cbiAgICA8ZGl2PlxuICAgICAgPGM4eS1kYXRlLXRpbWUtcGlja2VyXG4gICAgICAgIGlkPVwiREFURV9UT1wiXG4gICAgICAgIFttaW5EYXRlXT1cImZvcm1Hcm91cC52YWx1ZS5kYXRlRnJvbVwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJUT19EQVRFIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Hcm91cC5jb250cm9scy5kYXRlVG9cIlxuICAgICAgICBbbmdDbGFzc109XCJmb3JtR3JvdXAuY29udHJvbHMuZGF0ZVRvLmVycm9ycyA/IEhBU19FUlJPUiA6ICcnXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiZW1pdERhdGVUb0NoYW5nZSgkZXZlbnQpXCJcbiAgICAgID48L2M4eS1kYXRlLXRpbWUtcGlja2VyPlxuICAgICAgPGM4eS1tZXNzYWdlcyBbc2hvd109XCJmb3JtR3JvdXAuY29udHJvbHMuZGF0ZVRvLmVycm9yc1wiPlxuICAgICAgICA8Yzh5LW1lc3NhZ2VcbiAgICAgICAgICBuYW1lPVwiZGF0ZUJlZm9yZVJhbmdlTWluXCJcbiAgICAgICAgICBbdGV4dF09XCJUSElTX0RBVEVfSVNfQkVGT1JFX1RIRV9FQVJMSUVTVF9BTExPV0VEX0RBVEUgfCB0cmFuc2xhdGVcIlxuICAgICAgICA+PC9jOHktbWVzc2FnZT5cbiAgICAgICAgPGM4eS1tZXNzYWdlXG4gICAgICAgICAgbmFtZT1cIklOVkFMSURfREFURV9USU1FXCJcbiAgICAgICAgICBbdGV4dF09XCJUSElTX0RBVEVfSVNfSU5WQUxJRCB8IHRyYW5zbGF0ZVwiXG4gICAgICAgID48L2M4eS1tZXNzYWdlPlxuICAgICAgPC9jOHktbWVzc2FnZXM+XG4gICAgPC9kaXY+XG4gIDwvYzh5LWZvcm0tZ3JvdXA+XG48L2ZpZWxkc2V0PlxuIl19
|