@c8y/ngx-components 1021.11.1 → 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-date-filter.component.d.ts +34 -0
- package/alarms/alarms-date-filter.component.d.ts.map +1 -0
- package/alarms/alarms-filter.component.d.ts +2 -1
- package/alarms/alarms-filter.component.d.ts.map +1 -1
- 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 +5 -2
- package/alarms/alarms-view.service.d.ts.map +1 -1
- package/alarms/alarms.component.d.ts +3 -1
- package/alarms/alarms.component.d.ts.map +1 -1
- package/alarms/alarms.model.d.ts +47 -1
- package/alarms/alarms.model.d.ts.map +1 -1
- package/alarms/alarms.module.d.ts +15 -13
- package/alarms/alarms.module.d.ts.map +1 -1
- package/branding/shared/data/store-branding.service.d.ts +5 -0
- package/branding/shared/data/store-branding.service.d.ts.map +1 -1
- package/branding/shared/lazy/branding/branding.component.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 +26 -20
- 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/widget-change-event.model.d.ts +1 -1
- package/core/dashboard/widget-change-event.model.d.ts.map +1 -1
- 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-helper.service.d.ts +2 -1
- package/core/dashboard/wiget-time-context/widget-time-context-helper.service.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 +12 -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 +7 -26
- package/core/dashboard/wiget-time-context/widget-time-context.model.d.ts.map +1 -1
- package/core/date-time-picker/date-time-picker.component.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/alarm-event-selector/alarm-event-selection-list/alarm-event-selection-list.component.mjs +4 -4
- package/esm2022/alarm-event-selector/alarm-event-selector-list-item/alarm-event-selector-list-item.component.mjs +3 -3
- package/esm2022/alarms/alarms-date-filter.component.mjs +139 -0
- package/esm2022/alarms/alarms-filter.component.mjs +11 -5
- package/esm2022/alarms/alarms-list.component.mjs +5 -16
- package/esm2022/alarms/alarms-type-filter.component.mjs +3 -3
- package/esm2022/alarms/alarms-view.service.mjs +16 -2
- package/esm2022/alarms/alarms.component.mjs +12 -6
- package/esm2022/alarms/alarms.model.mjs +17 -1
- package/esm2022/alarms/alarms.module.mjs +11 -4
- package/esm2022/branding/shared/data/store-branding.service.mjs +24 -1
- package/esm2022/branding/shared/lazy/branding/branding.component.mjs +3 -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.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 +22 -4
- 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/widget-change-event.model.mjs +1 -1
- 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-helper.service.mjs +3 -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 -36
- package/esm2022/core/dashboard/wiget-time-context/widget-time-context.model.mjs +1 -72
- package/esm2022/core/date-time-picker/date-time-picker.component.mjs +9 -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/list-display-switch/list-display-switch.component.mjs +3 -3
- 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/interval-picker/c8y-ngx-components-interval-picker.mjs +5 -0
- package/esm2022/interval-picker/index.mjs +3 -0
- package/esm2022/interval-picker/interval-picker.component.mjs +68 -0
- package/esm2022/interval-picker/interval-picker.model.mjs +47 -0
- 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-alarm-event-selector.mjs +5 -5
- package/fesm2022/c8y-ngx-components-alarm-event-selector.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-alarms.mjs +189 -31
- package/fesm2022/c8y-ngx-components-alarms.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-branding-shared-data.mjs +23 -0
- package/fesm2022/c8y-ngx-components-branding-shared-data.mjs.map +1 -1
- package/fesm2022/c8y-ngx-components-branding-shared-lazy.mjs +2 -0
- package/fesm2022/c8y-ngx-components-branding-shared-lazy.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-interval-picker.mjs +120 -0
- package/fesm2022/c8y-ngx-components-interval-picker.mjs.map +1 -0
- 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 +5093 -4369
- package/fesm2022/c8y-ngx-components.mjs.map +1 -1
- package/interval-picker/c8y-ngx-components-interval-picker.d.ts.map +1 -0
- package/interval-picker/index.d.ts +3 -0
- package/interval-picker/index.d.ts.map +1 -0
- package/{core/dashboard/wiget-time-context/interval-picker → interval-picker}/interval-picker.component.d.ts +10 -2
- package/interval-picker/interval-picker.component.d.ts.map +1 -0
- package/interval-picker/interval-picker.model.d.ts +15 -0
- package/interval-picker/interval-picker.model.d.ts.map +1 -0
- 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 +266 -21
- 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/dashboard/wiget-time-context/interval-picker/interval-picker.component.d.ts.map +0 -1
- package/core/i18n/translate.loader.d.ts +0 -31
- package/core/i18n/translate.loader.d.ts.map +0 -1
- package/esm2022/core/dashboard/wiget-time-context/interval-picker/interval-picker.component.mjs +0 -55
- package/esm2022/core/i18n/translate.loader.mjs +0 -71
|
@@ -1,23 +1,37 @@
|
|
|
1
1
|
import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
|
|
2
|
-
import { gettext } from '@c8y/ngx-components';
|
|
2
|
+
import { gettext, InterAppService, SupportedApps } from '@c8y/ngx-components';
|
|
3
3
|
import { InventoryService } from '@c8y/client';
|
|
4
4
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
|
+
import { ActivatedRoute } from '@angular/router';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@c8y/client";
|
|
7
|
-
import * as i2 from "@
|
|
8
|
-
import * as i3 from "
|
|
9
|
-
import * as i4 from "@
|
|
8
|
+
import * as i2 from "@c8y/ngx-components";
|
|
9
|
+
import * as i3 from "@angular/router";
|
|
10
|
+
import * as i4 from "@angular/common";
|
|
11
|
+
import * as i5 from "../type-dashboard-info/type-dashboard-info.component";
|
|
10
12
|
export class TypedDashboardSettingsComponent {
|
|
11
|
-
constructor(inventory) {
|
|
13
|
+
constructor(inventory, interAppService, route) {
|
|
12
14
|
this.inventory = inventory;
|
|
15
|
+
this.interAppService = interAppService;
|
|
16
|
+
this.route = route;
|
|
13
17
|
this.touched = false;
|
|
14
18
|
this.disabled = false;
|
|
15
19
|
this.onDuplicateWithoutType = new EventEmitter();
|
|
20
|
+
this.deviceManagementAppKey = SupportedApps.devicemanagement;
|
|
21
|
+
this.deviceManagementLinkTitle = gettext('Device Info page in {{ deviceManagementAppName }}');
|
|
16
22
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
17
23
|
this.onChange = _ => { };
|
|
18
24
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
19
25
|
this.onTouched = () => { };
|
|
20
26
|
}
|
|
27
|
+
async ngOnInit() {
|
|
28
|
+
this.userDeviceManagementApp$ = this.interAppService.getApp$(this.deviceManagementAppKey);
|
|
29
|
+
this.context = this.route.parent.snapshot.data.contextData;
|
|
30
|
+
this.showSourceNavigationLink$ = this.interAppService.shouldShowAppLink$(this.deviceManagementAppKey);
|
|
31
|
+
}
|
|
32
|
+
async goToDeviceView() {
|
|
33
|
+
await this.interAppService.navigateToApp(this.deviceManagementAppKey, `#/device/${this.context.id}/device-info`);
|
|
34
|
+
}
|
|
21
35
|
writeValue(value) {
|
|
22
36
|
this.value = value;
|
|
23
37
|
this.updateTexts();
|
|
@@ -54,6 +68,11 @@ export class TypedDashboardSettingsComponent {
|
|
|
54
68
|
this.typedDashboardStatus = this.value
|
|
55
69
|
? gettext('Enabled`typed dashboard`')
|
|
56
70
|
: gettext('Disabled`typed dashboard`');
|
|
71
|
+
if (this.allowTypeDashboard === 'allow_if_type_filled') {
|
|
72
|
+
this.infoText = gettext(`<p class="p-b-8">Enabling this option uses the layout and configuration of this dashboard to create dashboard instances for all devices based on the device type.</p>
|
|
73
|
+
<p class="p-b-16">The current device doesn't have a device type assigned to it. Assign a device type to the device via the "Asset properties" widget in the <strong>Info</strong> tab of the device.</p>`);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
57
76
|
if (this.value) {
|
|
58
77
|
if (this.isDevice) {
|
|
59
78
|
this.infoText = gettext(`<p class="p-b-8">
|
|
@@ -87,14 +106,14 @@ export class TypedDashboardSettingsComponent {
|
|
|
87
106
|
});
|
|
88
107
|
this.deviceTypeInstancesCount = count.data;
|
|
89
108
|
}
|
|
90
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: TypedDashboardSettingsComponent, deps: [{ token: i1.InventoryService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
91
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: TypedDashboardSettingsComponent, selector: "c8y-typed-dashboard-settings", inputs: { deviceTypeValue: "deviceTypeValue", displayDeviceTypeValue: "displayDeviceTypeValue", formInvalid: "formInvalid", mo: "mo", isDevice: "isDevice" }, outputs: { onDuplicateWithoutType: "onDuplicateWithoutType" }, providers: [
|
|
109
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: TypedDashboardSettingsComponent, deps: [{ token: i1.InventoryService }, { token: i2.InterAppService }, { token: i3.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
110
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: TypedDashboardSettingsComponent, selector: "c8y-typed-dashboard-settings", inputs: { deviceTypeValue: "deviceTypeValue", displayDeviceTypeValue: "displayDeviceTypeValue", formInvalid: "formInvalid", mo: "mo", isDevice: "isDevice", allowTypeDashboard: "allowTypeDashboard" }, outputs: { onDuplicateWithoutType: "onDuplicateWithoutType" }, providers: [
|
|
92
111
|
{
|
|
93
112
|
provide: NG_VALUE_ACCESSOR,
|
|
94
113
|
useExisting: forwardRef(() => TypedDashboardSettingsComponent),
|
|
95
114
|
multi: true
|
|
96
115
|
}
|
|
97
|
-
], ngImport: i0, template: "<fieldset class=\"c8y-fieldset c8y-fieldset--lg\">\n <legend>{{ 'Dashboard template' | translate }}</legend>\n <div class=\"d-flex p-b-16 gap-16\">\n <label class=\"c8y-switch flex-no-shrink\">\n <input\n type=\"checkbox\"\n [checked]=\"value\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n />\n <span></span>\n <span>{{ typedDashboardStatus | translate }}</span>\n </label>\n <div\n class=\"flex-grow\"\n
|
|
116
|
+
], ngImport: i0, template: "<fieldset class=\"c8y-fieldset c8y-fieldset--lg\">\n <legend>{{ 'Dashboard template' | translate }}</legend>\n <div class=\"d-flex p-b-16 gap-16\">\n <label class=\"c8y-switch flex-no-shrink\">\n <input\n type=\"checkbox\"\n [checked]=\"value\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n />\n <span></span>\n <span>{{ typedDashboardStatus | translate }}</span>\n </label>\n <div class=\"flex-grow d-flex d-col\">\n <div\n class=\"flex-grow\"\n [innerHtml]=\"infoText | translate: { displayDeviceTypeValue: displayDeviceTypeValue }\"\n ></div>\n <button\n class=\"btn-link p-0 m-r-auto\"\n type=\"button\"\n *ngIf=\"allowTypeDashboard === 'allow_if_type_filled' && showSourceNavigationLink$ | async\"\n (click)=\"goToDeviceView()\"\n >\n {{\n deviceManagementLinkTitle\n | translate\n : {\n deviceManagementAppName:\n userDeviceManagementApp$ | async | humanizeAppName | async\n }\n }}\n <i c8yIcon=\"external-link\"></i>\n </button>\n </div>\n </div>\n\n <c8y-type-dashboard-info\n *ngIf=\"allowTypeDashboard === 'allow'\"\n [context]=\"mo\"\n [deviceTypeValue]=\"deviceTypeValue\"\n [displayDeviceTypeValue]=\"displayDeviceTypeValue\"\n ></c8y-type-dashboard-info>\n\n <div\n class=\"p-t-8 p-b-16\"\n *ngIf=\"mo?.c8y_Dashboard && value\"\n >\n <button\n class=\"btn btn-default btn-sm\"\n type=\"button\"\n (click)=\"onDuplicateWithoutType.emit()\"\n [disabled]=\"formInvalid\"\n >\n {{ 'Duplicate as regular dashboard' | translate }}\n </button>\n </div>\n</fieldset>\n", dependencies: [{ kind: "directive", type: i2.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.TypeDashboardInfoComponent, selector: "c8y-type-dashboard-info", inputs: ["deviceTypeValue", "displayDeviceTypeValue", "context", "asyncRenderSuccess", "asyncRenderFail"] }, { kind: "pipe", type: i2.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.HumanizeAppNamePipe, name: "humanizeAppName" }] }); }
|
|
98
117
|
}
|
|
99
118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: TypedDashboardSettingsComponent, decorators: [{
|
|
100
119
|
type: Component,
|
|
@@ -104,8 +123,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
104
123
|
useExisting: forwardRef(() => TypedDashboardSettingsComponent),
|
|
105
124
|
multi: true
|
|
106
125
|
}
|
|
107
|
-
], template: "<fieldset class=\"c8y-fieldset c8y-fieldset--lg\">\n <legend>{{ 'Dashboard template' | translate }}</legend>\n <div class=\"d-flex p-b-16 gap-16\">\n <label class=\"c8y-switch flex-no-shrink\">\n <input\n type=\"checkbox\"\n [checked]=\"value\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n />\n <span></span>\n <span>{{ typedDashboardStatus | translate }}</span>\n </label>\n <div\n class=\"flex-grow\"\n
|
|
108
|
-
}], ctorParameters: () => [{ type: i1.InventoryService }], propDecorators: { deviceTypeValue: [{
|
|
126
|
+
], template: "<fieldset class=\"c8y-fieldset c8y-fieldset--lg\">\n <legend>{{ 'Dashboard template' | translate }}</legend>\n <div class=\"d-flex p-b-16 gap-16\">\n <label class=\"c8y-switch flex-no-shrink\">\n <input\n type=\"checkbox\"\n [checked]=\"value\"\n [disabled]=\"disabled\"\n (click)=\"toggle()\"\n />\n <span></span>\n <span>{{ typedDashboardStatus | translate }}</span>\n </label>\n <div class=\"flex-grow d-flex d-col\">\n <div\n class=\"flex-grow\"\n [innerHtml]=\"infoText | translate: { displayDeviceTypeValue: displayDeviceTypeValue }\"\n ></div>\n <button\n class=\"btn-link p-0 m-r-auto\"\n type=\"button\"\n *ngIf=\"allowTypeDashboard === 'allow_if_type_filled' && showSourceNavigationLink$ | async\"\n (click)=\"goToDeviceView()\"\n >\n {{\n deviceManagementLinkTitle\n | translate\n : {\n deviceManagementAppName:\n userDeviceManagementApp$ | async | humanizeAppName | async\n }\n }}\n <i c8yIcon=\"external-link\"></i>\n </button>\n </div>\n </div>\n\n <c8y-type-dashboard-info\n *ngIf=\"allowTypeDashboard === 'allow'\"\n [context]=\"mo\"\n [deviceTypeValue]=\"deviceTypeValue\"\n [displayDeviceTypeValue]=\"displayDeviceTypeValue\"\n ></c8y-type-dashboard-info>\n\n <div\n class=\"p-t-8 p-b-16\"\n *ngIf=\"mo?.c8y_Dashboard && value\"\n >\n <button\n class=\"btn btn-default btn-sm\"\n type=\"button\"\n (click)=\"onDuplicateWithoutType.emit()\"\n [disabled]=\"formInvalid\"\n >\n {{ 'Duplicate as regular dashboard' | translate }}\n </button>\n </div>\n</fieldset>\n" }]
|
|
127
|
+
}], ctorParameters: () => [{ type: i1.InventoryService }, { type: i2.InterAppService }, { type: i3.ActivatedRoute }], propDecorators: { deviceTypeValue: [{
|
|
109
128
|
type: Input
|
|
110
129
|
}], displayDeviceTypeValue: [{
|
|
111
130
|
type: Input
|
|
@@ -115,7 +134,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
115
134
|
type: Input
|
|
116
135
|
}], isDevice: [{
|
|
117
136
|
type: Input
|
|
137
|
+
}], allowTypeDashboard: [{
|
|
138
|
+
type: Input
|
|
118
139
|
}], onDuplicateWithoutType: [{
|
|
119
140
|
type: Output
|
|
120
141
|
}] } });
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZGFzaGJvYXJkLXNldHRpbmdzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbnRleHQtZGFzaGJvYXJkL2Rhc2hib2FyZC1zZXR0aW5ncy90eXBlZC1kYXNoYm9hcmQtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vY29udGV4dC1kYXNoYm9hcmQvZGFzaGJvYXJkLXNldHRpbmdzL3R5cGVkLWRhc2hib2FyZC1zZXR0aW5ncy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBY3pFLE1BQU0sT0FBTywrQkFBK0I7SUFlMUMsWUFBb0IsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFiL0MsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBT1AsMkJBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQU81RCxnRUFBZ0U7UUFDaEUsYUFBUSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ25CLGdFQUFnRTtRQUNoRSxjQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBTDZCLENBQUM7SUFPbkQsVUFBVSxDQUFDLEtBQWM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksS0FBSyxFQUFFLENB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QUFDOzRCQUM5RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtxRkFPUSxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNJLHNCQUFzQjtzQkFBL0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXR0ZXh0IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBJbnZlbnRvcnlTZXJ2aWNlIH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29udGV4dERhc2hib2FyZE1hbmFnZWRPYmplY3QgfSBmcm9tICcuLi9jb250ZXh0LWRhc2hib2FyZC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS10eXBlZC1kYXNoYm9hcmQtc2V0dGluZ3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vdHlwZWQtZGFzaGJvYXJkLXNldHRpbmdzLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUeXBlZERhc2hib2FyZFNldHRpbmdzQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVkRGFzaGJvYXJkU2V0dGluZ3NDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHZhbHVlOiBib29sZWFuO1xuICB0b3VjaGVkID0gZmFsc2U7XG4gIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQElucHV0KCkgZGV2aWNlVHlwZVZhbHVlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc3BsYXlEZXZpY2VUeXBlVmFsdWU6IHN0cmluZztcbiAgQElucHV0KCkgZm9ybUludmFsaWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG1vOiBDb250ZXh0RGFzaGJvYXJkTWFuYWdlZE9iamVjdDtcbiAgQElucHV0KCkgaXNEZXZpY2U6IGJvb2xlYW47XG4gIEBPdXRwdXQoKSBvbkR1cGxpY2F0ZVdpdGhvdXRUeXBlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICB0eXBlZERhc2hib2FyZFN0YXR1czogc3RyaW5nO1xuICBpbmZvVGV4dDogc3RyaW5nO1xuICBkZXZpY2VUeXBlSW5zdGFuY2VzQ291bnQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGludmVudG9yeTogSW52ZW50b3J5U2VydmljZSkge31cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIG9uQ2hhbmdlID0gXyA9PiB7fTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICB3cml0ZVZhbHVlKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMudXBkYXRlVGV4dHMoKTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMudXBkYXRlRGV2aWNlVHlwZUNvdW50KCk7XG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQob25Ub3VjaGVkOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IG9uVG91Y2hlZDtcbiAgfVxuXG4gIG1hcmtBc1RvdWNoZWQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnRvdWNoZWQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICB0aGlzLnRvdWNoZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gZGlzYWJsZWQ7XG4gIH1cblxuICBhc3luYyB0b2dnbGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy52YWx1ZSA9ICF0aGlzLnZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy5kZXZpY2VUeXBlSW5zdGFuY2VzQ291bnQgPT0gbnVsbCkge1xuICAgICAgdGhpcy5zZXREaXNhYmxlZFN0YXRlKHRydWUpO1xuICAgICAgYXdhaXQgdGhpcy51cGRhdGVEZXZpY2VUeXBlQ291bnQoKTtcbiAgICB9XG4gICAgdGhpcy51cGRhdGVUZXh0cygpO1xuICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZShmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVRleHRzKCk6IHZvaWQge1xuICAgIHRoaXMudHlwZWREYXNoYm9hcmRTdGF0dXMgPSB0aGlzLnZhbHVlXG4gICAgICA/IGdldHRleHQoJ0VuYWJsZWRgdHlwZWQgZGFzaGJvYXJkYCcpXG4gICAgICA6IGdldHRleHQoJ0Rpc2FibGVkYHR5cGVkIGRhc2hib2FyZGAnKTtcblxuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5pc0RldmljZSkge1xuICAgICAgICB0aGlzLmluZm9UZXh0ID0gZ2V0dGV4dChcbiAgICAgICAgICBgPHAgY2xhc3M9XCJwLWItOFwiPlxuICAgICAgICAgICAgVGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCBpcyB1c2VkIGJ5IGFsbCBkZXZpY2VzIGJhc2VkIG9uIGRldmljZSB0eXBlIDxzcGFuIGNsYXNzPVwidGFnIHRhZy0taW5mbyB0ZXh0LTEyXCI+e3sgZGlzcGxheURldmljZVR5cGVWYWx1ZSB9fTwvc3Bhbj4uXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwIGNsYXNzPVwicC1iLTE2XCI+XG4gICAgICAgICAgICBEaXNhYmxpbmcgdGhpcyBvcHRpb24gcmVtb3ZlcyBpdCBmcm9tIGFsbCBkZXZpY2VzIGJhc2VkIG9uIHRoZSBzYW1lIHR5cGUgYW5kIG1ha2VzIGl0IGF2YWlsYWJsZSBvbmx5IGZvciB0aGUgY3VycmVudCBpbnN0YW5jZS5cbiAgICAgICAgICA8L3A+YFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbmZvVGV4dCA9IGdldHRleHQoXG4gICAgICAgICAgYDxwIGNsYXNzPVwicC1iLThcIj5cbiAgICAgICAgICAgICAgVGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCBpcyB1c2VkIGJ5IGFsbCBhc3NldHMgYmFzZWQgb24gYXNzZXQgbW9kZWwgPHNwYW4gY2xhc3M9XCJ0YWcgdGFnLS1pbmZvIHRleHQtMTJcIj57eyBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlIH19PC9zcGFuPi5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwicC1iLTE2XCI+XG4gICAgICAgICAgICAgIERpc2FibGluZyB0aGlzIG9wdGlvbiByZW1vdmVzIGl0IGZyb20gYWxsIGFzc2V0cyBiYXNlZCBvbiB0aGUgc2FtZSBtb2RlbCBhbmQgbWFrZXMgaXQgYXZhaWxhYmxlIG9ubHkgZm9yIHRoZSBjdXJyZW50IGluc3RhbmNlLlxuICAgICAgICAgICAgPC9wPmBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuaXNEZXZpY2UpIHtcbiAgICAgICAgdGhpcy5pbmZvVGV4dCA9IGdldHRleHQoXG4gICAgICAgICAgYDxwPkVuYWJsaW5nIHRoaXMgb3B0aW9uIHVzZXMgdGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCB0byBjcmVhdGUgZGFzaGJvYXJkIGluc3RhbmNlcyBmb3IgYWxsIGRldmljZXMgYmFzZWQgb24gdGhlIHR5cGUgPHNwYW4gY2xhc3M9XCJ0YWcgdGFnLS1pbmZvIHRleHQtMTJcIj57eyBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlIH19PC9zcGFuPi48L3A+YFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbmZvVGV4dCA9IGdldHRleHQoXG4gICAgICAgICAgYDxwPkVuYWJsaW5nIHRoaXMgb3B0aW9uIHVzZXMgdGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCB0byBjcmVhdGUgZGFzaGJvYXJkIGluc3RhbmNlcyBmb3IgYWxsIGFzc2V0cyBiYXNlZCBvbiB0aGUgbW9kZWwgPHNwYW4gY2xhc3M9XCJ0YWcgdGFnLS1pbmZvIHRleHQtMTJcIj57eyBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlIH19PC9zcGFuPi48L3A+YFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgdXBkYXRlRGV2aWNlVHlwZUNvdW50KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNvdW50ID0gYXdhaXQgdGhpcy5pbnZlbnRvcnkuY291bnQoe1xuICAgICAgdHlwZTogdGhpcy5kZXZpY2VUeXBlVmFsdWVcbiAgICB9KTtcbiAgICB0aGlzLmRldmljZVR5cGVJbnN0YW5jZXNDb3VudCA9IGNvdW50LmRhdGE7XG4gIH1cbn1cbiIsIjxmaWVsZHNldCBjbGFzcz1cImM4eS1maWVsZHNldCBjOHktZmllbGRzZXQtLWxnXCI+XG4gIDxsZWdlbmQ+e3sgJ0Rhc2hib2FyZCB0ZW1wbGF0ZScgfCB0cmFuc2xhdGUgfX08L2xlZ2VuZD5cbiAgPGRpdiBjbGFzcz1cImQtZmxleCBwLWItMTYgZ2FwLTE2XCI+XG4gICAgPGxhYmVsIGNsYXNzPVwiYzh5LXN3aXRjaCBmbGV4LW5vLXNocmlua1wiPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgIFtjaGVja2VkXT1cInZhbHVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZSgpXCJcbiAgICAgIC8+XG4gICAgICA8c3Bhbj48L3NwYW4+XG4gICAgICA8c3Bhbj57eyB0eXBlZERhc2hib2FyZFN0YXR1cyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICA8L2xhYmVsPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZmxleC1ncm93XCJcbiAgICAgIFtpbm5lckh0bWxdPVwiaW5mb1RleHQgfCB0cmFuc2xhdGU6IHsgZGlzcGxheURldmljZVR5cGVWYWx1ZTogZGlzcGxheURldmljZVR5cGVWYWx1ZSB9XCJcbiAgICA+PC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxjOHktdHlwZS1kYXNoYm9hcmQtaW5mb1xuICAgIFtjb250ZXh0XT1cIm1vXCJcbiAgICBbZGV2aWNlVHlwZVZhbHVlXT1cImRldmljZVR5cGVWYWx1ZVwiXG4gICAgW2Rpc3BsYXlEZXZpY2VUeXBlVmFsdWVdPVwiZGlzcGxheURldmljZVR5cGVWYWx1ZVwiXG4gID48L2M4eS10eXBlLWRhc2hib2FyZC1pbmZvPlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cInAtdC04IHAtYi0xNlwiXG4gICAgKm5nSWY9XCJtbz8uYzh5X0Rhc2hib2FyZCAmJiB2YWx1ZVwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBidG4tc21cIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAoY2xpY2spPVwib25EdXBsaWNhdGVXaXRob3V0VHlwZS5lbWl0KClcIlxuICAgICAgW2Rpc2FibGVkXT1cImZvcm1JbnZhbGlkXCJcbiAgICA+XG4gICAgICB7eyAnRHVwbGljYXRlIGFzIHJlZ3VsYXIgZGFzaGJvYXJkJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZmllbGRzZXQ+XG4iXX0=
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZGFzaGJvYXJkLXNldHRpbmdzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbnRleHQtZGFzaGJvYXJkL2Rhc2hib2FyZC1zZXR0aW5ncy90eXBlZC1kYXNoYm9hcmQtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vY29udGV4dC1kYXNoYm9hcmQvZGFzaGJvYXJkLXNldHRpbmdzL3R5cGVkLWRhc2hib2FyZC1zZXR0aW5ncy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQW1CLE1BQU0scUJBQXFCLENBQUM7QUFDL0YsT0FBTyxFQUFnQixnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3RCxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7O0FBYWpELE1BQU0sT0FBTywrQkFBK0I7SUFxQjFDLFlBQ1UsU0FBMkIsRUFDM0IsZUFBZ0MsRUFDaEMsS0FBcUI7UUFGckIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBdEIvQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFRUCwyQkFBc0IsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBTzVELDJCQUFzQixHQUFvQixhQUFhLENBQUMsZ0JBQWdCLENBQUM7UUFDekUsOEJBQXlCLEdBQUcsT0FBTyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7UUF1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Q0csRUFBRTtzQkFBVixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNJLHNCQUFzQjtzQkFBL0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldHRleHQsIEludGVyQXBwU2VydmljZSwgU3VwcG9ydGVkQXBwcywgU3VwcG9ydGVkQXBwS2V5IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBJQXBwbGljYXRpb24sIEludmVudG9yeVNlcnZpY2UgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBbGxvd1R5cGVEYXNoYm9hcmQsIENvbnRleHREYXNoYm9hcmRNYW5hZ2VkT2JqZWN0IH0gZnJvbSAnLi4vY29udGV4dC1kYXNoYm9hcmQubW9kZWwnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktdHlwZWQtZGFzaGJvYXJkLXNldHRpbmdzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3R5cGVkLWRhc2hib2FyZC1zZXR0aW5ncy5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHlwZWREYXNoYm9hcmRTZXR0aW5nc0NvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUeXBlZERhc2hib2FyZFNldHRpbmdzQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XG4gIHZhbHVlOiBib29sZWFuO1xuICB0b3VjaGVkID0gZmFsc2U7XG4gIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQElucHV0KCkgZGV2aWNlVHlwZVZhbHVlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc3BsYXlEZXZpY2VUeXBlVmFsdWU6IHN0cmluZztcbiAgQElucHV0KCkgZm9ybUludmFsaWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG1vOiBDb250ZXh0RGFzaGJvYXJkTWFuYWdlZE9iamVjdDtcbiAgQElucHV0KCkgaXNEZXZpY2U6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGFsbG93VHlwZURhc2hib2FyZDogQWxsb3dUeXBlRGFzaGJvYXJkO1xuICBAT3V0cHV0KCkgb25EdXBsaWNhdGVXaXRob3V0VHlwZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgdHlwZWREYXNoYm9hcmRTdGF0dXM6IHN0cmluZztcbiAgaW5mb1RleHQ6IHN0cmluZztcbiAgZGV2aWNlVHlwZUluc3RhbmNlc0NvdW50OiBudW1iZXI7XG4gIHNob3dTb3VyY2VOYXZpZ2F0aW9uTGluayQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHVzZXJEZXZpY2VNYW5hZ2VtZW50QXBwJDogT2JzZXJ2YWJsZTxJQXBwbGljYXRpb24+O1xuICBjb250ZXh0OiBhbnk7XG4gIGRldmljZU1hbmFnZW1lbnRBcHBLZXk6IFN1cHBvcnRlZEFwcEtleSA9IFN1cHBvcnRlZEFwcHMuZGV2aWNlbWFuYWdlbWVudDtcbiAgZGV2aWNlTWFuYWdlbWVudExpbmtUaXRsZSA9IGdldHRleHQoJ0RldmljZSBJbmZvIHBhZ2UgaW4ge3sgZGV2aWNlTWFuYWdlbWVudEFwcE5hbWUgfX0nKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGludmVudG9yeTogSW52ZW50b3J5U2VydmljZSxcbiAgICBwcml2YXRlIGludGVyQXBwU2VydmljZTogSW50ZXJBcHBTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlXG4gICkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVzZXJEZXZpY2VNYW5hZ2VtZW50QXBwJCA9IHRoaXMuaW50ZXJBcHBTZXJ2aWNlLmdldEFwcCQodGhpcy5kZXZpY2VNYW5hZ2VtZW50QXBwS2V5KTtcbiAgICB0aGlzLmNvbnRleHQgPSB0aGlzLnJvdXRlLnBhcmVudC5zbmFwc2hvdC5kYXRhLmNvbnRleHREYXRhO1xuICAgIHRoaXMuc2hvd1NvdXJjZU5hdmlnYXRpb25MaW5rJCA9IHRoaXMuaW50ZXJBcHBTZXJ2aWNlLnNob3VsZFNob3dBcHBMaW5rJChcbiAgICAgIHRoaXMuZGV2aWNlTWFuYWdlbWVudEFwcEtleVxuICAgICk7XG4gIH1cblxuICBhc3luYyBnb1RvRGV2aWNlVmlldygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmludGVyQXBwU2VydmljZS5uYXZpZ2F0ZVRvQXBwKFxuICAgICAgdGhpcy5kZXZpY2VNYW5hZ2VtZW50QXBwS2V5LFxuICAgICAgYCMvZGV2aWNlLyR7dGhpcy5jb250ZXh0LmlkfS9kZXZpY2UtaW5mb2BcbiAgICApO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvbkNoYW5nZSA9IF8gPT4ge307XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnVwZGF0ZVRleHRzKCk7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnVwZGF0ZURldmljZVR5cGVDb3VudCgpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hlZDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBvblRvdWNoZWQ7XG4gIH1cblxuICBtYXJrQXNUb3VjaGVkKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy50b3VjaGVkKSB7XG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgdGhpcy50b3VjaGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xuICB9XG5cbiAgYXN5bmMgdG9nZ2xlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMudmFsdWUgPSAhdGhpcy52YWx1ZTtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMuZGV2aWNlVHlwZUluc3RhbmNlc0NvdW50ID09IG51bGwpIHtcbiAgICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSh0cnVlKTtcbiAgICAgIGF3YWl0IHRoaXMudXBkYXRlRGV2aWNlVHlwZUNvdW50KCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlVGV4dHMoKTtcbiAgICB0aGlzLnNldERpc2FibGVkU3RhdGUoZmFsc2UpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVUZXh0cygpOiB2b2lkIHtcbiAgICB0aGlzLnR5cGVkRGFzaGJvYXJkU3RhdHVzID0gdGhpcy52YWx1ZVxuICAgICAgPyBnZXR0ZXh0KCdFbmFibGVkYHR5cGVkIGRhc2hib2FyZGAnKVxuICAgICAgOiBnZXR0ZXh0KCdEaXNhYmxlZGB0eXBlZCBkYXNoYm9hcmRgJyk7XG5cbiAgICBpZiAodGhpcy5hbGxvd1R5cGVEYXNoYm9hcmQgPT09ICdhbGxvd19pZl90eXBlX2ZpbGxlZCcpIHtcbiAgICAgIHRoaXMuaW5mb1RleHQgPSBnZXR0ZXh0KFxuICAgICAgICBgPHAgY2xhc3M9XCJwLWItOFwiPkVuYWJsaW5nIHRoaXMgb3B0aW9uIHVzZXMgdGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCB0byBjcmVhdGUgZGFzaGJvYXJkIGluc3RhbmNlcyBmb3IgYWxsIGRldmljZXMgYmFzZWQgb24gdGhlIGRldmljZSB0eXBlLjwvcD5cbiAgICAgICAgICAgICA8cCBjbGFzcz1cInAtYi0xNlwiPlRoZSBjdXJyZW50IGRldmljZSBkb2Vzbid0IGhhdmUgYSBkZXZpY2UgdHlwZSBhc3NpZ25lZCB0byBpdC4gQXNzaWduIGEgZGV2aWNlIHR5cGUgdG8gdGhlIGRldmljZSB2aWEgdGhlIFwiQXNzZXQgcHJvcGVydGllc1wiIHdpZGdldCBpbiB0aGUgPHN0cm9uZz5JbmZvPC9zdHJvbmc+IHRhYiBvZiB0aGUgZGV2aWNlLjwvcD5gXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5pc0RldmljZSkge1xuICAgICAgICB0aGlzLmluZm9UZXh0ID0gZ2V0dGV4dChcbiAgICAgICAgICBgPHAgY2xhc3M9XCJwLWItOFwiPlxuICAgICAgICAgICAgVGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCBpcyB1c2VkIGJ5IGFsbCBkZXZpY2VzIGJhc2VkIG9uIGRldmljZSB0eXBlIDxzcGFuIGNsYXNzPVwidGFnIHRhZy0taW5mbyB0ZXh0LTEyXCI+e3sgZGlzcGxheURldmljZVR5cGVWYWx1ZSB9fTwvc3Bhbj4uXG4gICAgICAgICAgPC9wPlxuICAgICAgICAgIDxwIGNsYXNzPVwicC1iLTE2XCI+XG4gICAgICAgICAgICBEaXNhYmxpbmcgdGhpcyBvcHRpb24gcmVtb3ZlcyBpdCBmcm9tIGFsbCBkZXZpY2VzIGJhc2VkIG9uIHRoZSBzYW1lIHR5cGUgYW5kIG1ha2VzIGl0IGF2YWlsYWJsZSBvbmx5IGZvciB0aGUgY3VycmVudCBpbnN0YW5jZS5cbiAgICAgICAgICA8L3A+YFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbmZvVGV4dCA9IGdldHRleHQoXG4gICAgICAgICAgYDxwIGNsYXNzPVwicC1iLThcIj5cbiAgICAgICAgICAgICAgVGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCBpcyB1c2VkIGJ5IGFsbCBhc3NldHMgYmFzZWQgb24gYXNzZXQgbW9kZWwgPHNwYW4gY2xhc3M9XCJ0YWcgdGFnLS1pbmZvIHRleHQtMTJcIj57eyBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlIH19PC9zcGFuPi5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwicC1iLTE2XCI+XG4gICAgICAgICAgICAgIERpc2FibGluZyB0aGlzIG9wdGlvbiByZW1vdmVzIGl0IGZyb20gYWxsIGFzc2V0cyBiYXNlZCBvbiB0aGUgc2FtZSBtb2RlbCBhbmQgbWFrZXMgaXQgYXZhaWxhYmxlIG9ubHkgZm9yIHRoZSBjdXJyZW50IGluc3RhbmNlLlxuICAgICAgICAgICAgPC9wPmBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuaXNEZXZpY2UpIHtcbiAgICAgICAgdGhpcy5pbmZvVGV4dCA9IGdldHRleHQoXG4gICAgICAgICAgYDxwPkVuYWJsaW5nIHRoaXMgb3B0aW9uIHVzZXMgdGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCB0byBjcmVhdGUgZGFzaGJvYXJkIGluc3RhbmNlcyBmb3IgYWxsIGRldmljZXMgYmFzZWQgb24gdGhlIHR5cGUgPHNwYW4gY2xhc3M9XCJ0YWcgdGFnLS1pbmZvIHRleHQtMTJcIj57eyBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlIH19PC9zcGFuPi48L3A+YFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbmZvVGV4dCA9IGdldHRleHQoXG4gICAgICAgICAgYDxwPkVuYWJsaW5nIHRoaXMgb3B0aW9uIHVzZXMgdGhlIGxheW91dCBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGlzIGRhc2hib2FyZCB0byBjcmVhdGUgZGFzaGJvYXJkIGluc3RhbmNlcyBmb3IgYWxsIGFzc2V0cyBiYXNlZCBvbiB0aGUgbW9kZWwgPHNwYW4gY2xhc3M9XCJ0YWcgdGFnLS1pbmZvIHRleHQtMTJcIj57eyBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlIH19PC9zcGFuPi48L3A+YFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgdXBkYXRlRGV2aWNlVHlwZUNvdW50KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNvdW50ID0gYXdhaXQgdGhpcy5pbnZlbnRvcnkuY291bnQoe1xuICAgICAgdHlwZTogdGhpcy5kZXZpY2VUeXBlVmFsdWVcbiAgICB9KTtcbiAgICB0aGlzLmRldmljZVR5cGVJbnN0YW5jZXNDb3VudCA9IGNvdW50LmRhdGE7XG4gIH1cbn1cbiIsIjxmaWVsZHNldCBjbGFzcz1cImM4eS1maWVsZHNldCBjOHktZmllbGRzZXQtLWxnXCI+XG4gIDxsZWdlbmQ+e3sgJ0Rhc2hib2FyZCB0ZW1wbGF0ZScgfCB0cmFuc2xhdGUgfX08L2xlZ2VuZD5cbiAgPGRpdiBjbGFzcz1cImQtZmxleCBwLWItMTYgZ2FwLTE2XCI+XG4gICAgPGxhYmVsIGNsYXNzPVwiYzh5LXN3aXRjaCBmbGV4LW5vLXNocmlua1wiPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgIFtjaGVja2VkXT1cInZhbHVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZSgpXCJcbiAgICAgIC8+XG4gICAgICA8c3Bhbj48L3NwYW4+XG4gICAgICA8c3Bhbj57eyB0eXBlZERhc2hib2FyZFN0YXR1cyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICA8L2xhYmVsPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3cgZC1mbGV4IGQtY29sXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiZmxleC1ncm93XCJcbiAgICAgICAgW2lubmVySHRtbF09XCJpbmZvVGV4dCB8IHRyYW5zbGF0ZTogeyBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlOiBkaXNwbGF5RGV2aWNlVHlwZVZhbHVlIH1cIlxuICAgICAgPjwvZGl2PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImJ0bi1saW5rIHAtMCBtLXItYXV0b1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAqbmdJZj1cImFsbG93VHlwZURhc2hib2FyZCA9PT0gJ2FsbG93X2lmX3R5cGVfZmlsbGVkJyAmJiBzaG93U291cmNlTmF2aWdhdGlvbkxpbmskIHwgYXN5bmNcIlxuICAgICAgICAoY2xpY2spPVwiZ29Ub0RldmljZVZpZXcoKVwiXG4gICAgICA+XG4gICAgICAgIHt7XG4gICAgICAgICAgZGV2aWNlTWFuYWdlbWVudExpbmtUaXRsZVxuICAgICAgICAgICAgfCB0cmFuc2xhdGVcbiAgICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgICBkZXZpY2VNYW5hZ2VtZW50QXBwTmFtZTpcbiAgICAgICAgICAgICAgICAgICAgdXNlckRldmljZU1hbmFnZW1lbnRBcHAkIHwgYXN5bmMgfCBodW1hbml6ZUFwcE5hbWUgfCBhc3luY1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfX1cbiAgICAgICAgPGkgYzh5SWNvbj1cImV4dGVybmFsLWxpbmtcIj48L2k+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGM4eS10eXBlLWRhc2hib2FyZC1pbmZvXG4gICAgKm5nSWY9XCJhbGxvd1R5cGVEYXNoYm9hcmQgPT09ICdhbGxvdydcIlxuICAgIFtjb250ZXh0XT1cIm1vXCJcbiAgICBbZGV2aWNlVHlwZVZhbHVlXT1cImRldmljZVR5cGVWYWx1ZVwiXG4gICAgW2Rpc3BsYXlEZXZpY2VUeXBlVmFsdWVdPVwiZGlzcGxheURldmljZVR5cGVWYWx1ZVwiXG4gID48L2M4eS10eXBlLWRhc2hib2FyZC1pbmZvPlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cInAtdC04IHAtYi0xNlwiXG4gICAgKm5nSWY9XCJtbz8uYzh5X0Rhc2hib2FyZCAmJiB2YWx1ZVwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBidG4tc21cIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAoY2xpY2spPVwib25EdXBsaWNhdGVXaXRob3V0VHlwZS5lbWl0KClcIlxuICAgICAgW2Rpc2FibGVkXT1cImZvcm1JbnZhbGlkXCJcbiAgICA+XG4gICAgICB7eyAnRHVwbGljYXRlIGFzIHJlZ3VsYXIgZGFzaGJvYXJkJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZmllbGRzZXQ+XG4iXX0=
|
|
@@ -49,11 +49,11 @@ export class ActionBarItemComponent {
|
|
|
49
49
|
this.actionBarService.remove(this);
|
|
50
50
|
}
|
|
51
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ActionBarItemComponent, deps: [{ token: i1.ActionBarService }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
52
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: { placement: "placement", priority: "priority", itemClass: "itemClass", injector: "injector", groupId: "groupId", inGroupPriority: "inGroupPriority" }, viewQueries: [{ propertyName: "component", first: true, predicate: ["template"], descendants: true }], ngImport: i0, template: "<ng-template #template>\n <li class=\"{{ itemClass }}\">\n <ng-content></ng-content>\n </li>\n</ng-template>\n" }); }
|
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: ActionBarItemComponent, isStandalone: true, selector: "c8y-action-bar-item", inputs: { placement: "placement", priority: "priority", itemClass: "itemClass", injector: "injector", groupId: "groupId", inGroupPriority: "inGroupPriority" }, viewQueries: [{ propertyName: "component", first: true, predicate: ["template"], descendants: true }], ngImport: i0, template: "<ng-template #template>\n <li class=\"{{ itemClass }}\">\n <ng-content></ng-content>\n </li>\n</ng-template>\n" }); }
|
|
53
53
|
}
|
|
54
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ActionBarItemComponent, decorators: [{
|
|
55
55
|
type: Component,
|
|
56
|
-
args: [{ selector: 'c8y-action-bar-item', template: "<ng-template #template>\n <li class=\"{{ itemClass }}\">\n <ng-content></ng-content>\n </li>\n</ng-template>\n" }]
|
|
56
|
+
args: [{ selector: 'c8y-action-bar-item', standalone: true, imports: [], template: "<ng-template #template>\n <li class=\"{{ itemClass }}\">\n <ng-content></ng-content>\n </li>\n</ng-template>\n" }]
|
|
57
57
|
}], ctorParameters: () => [{ type: i1.ActionBarService }, { type: i0.EnvironmentInjector }], propDecorators: { placement: [{
|
|
58
58
|
type: Input
|
|
59
59
|
}], priority: [{
|
|
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
70
70
|
type: ViewChild,
|
|
71
71
|
args: ['template', { static: false }]
|
|
72
72
|
}] } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvYWN0aW9uLWJhci9hY3Rpb24tYmFyLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vY29yZS9hY3Rpb24tYmFyL2FjdGlvbi1iYXItaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULG1CQUFtQixFQUNuQixLQUFLLEVBR0wsU0FBUyxFQUNULFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBRXhEOzs7Ozs7Ozs7O0dBVUc7QUFPSCxNQUFNLE9BQU8sc0JBQXNCO0lBd0NqQzs7T0FFRztJQUNILFlBQ1UsZ0JBQWtDLEVBQzFDLFNBQThCO1FBRHRCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUEzQzVDOzs7V0FHRztRQUNNLGNBQVMsR0FBOEIsTUFBTSxDQUFDO1FBRXZEOzs7V0FHRztRQUNNLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFFdEI7O1dBRUc7UUFDTSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBK0J0QixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGVBQWUsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxJQUFxQixDQUFDLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsWUFBWSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQXFCLENBQUMsQ0FBQztJQUN0RCxDQUFDOzhHQS9EVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixzVkM3Qm5DLHFIQUtBOzsyRkR3QmEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLHFCQUFxQixjQUVuQixJQUFJLFdBQ1AsRUFBRTt1SEFPRixTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFLRyxlQUFlO3NCQUF2QixLQUFLO2dCQUtvQyxTQUFTO3NCQUFsRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVudmlyb25tZW50SW5qZWN0b3IsXG4gIElucHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVHlwZSxcbiAgVmlld0NoaWxkLFxuICBJbmplY3RvclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbkJhckl0ZW0sIEFjdGlvbkJhckl0ZW1XaXRoQ29tcG9uZW50IH0gZnJvbSAnLi9hY3Rpb24tYmFyLm1vZGVsJztcbmltcG9ydCB7IEFjdGlvbkJhclNlcnZpY2UgfSBmcm9tICcuL2FjdGlvbi1iYXIuc2VydmljZSc7XG5cbi8qKlxuICogQSA8Yzh5LWFjdGlvbi1iYXItaXRlbT4gY2FuIGJlIGFkZGVkIHdpdGggY29udGVudCBwcm9qZWN0aW9uLlxuICogSXQgYWxsb3dzIHRvIHNob3cgaXRlbXMgaW4gdGhyZWUgcG9zaXRpb25zIChsZWZ0LCByaWdodFxuICogb3IgbW9yZSkuXG4gKlxuICogYGBgaHRtbFxuICogPGM4eS1hY3Rpb24tYmFyLWl0ZW0gW3BsYWNlbWVudF09XCIncmlnaHQnXCI+XG4gKiAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWxpbmtcIiAoY2xpY2spPVwiYWRkUmFuZG9tKClcIj48aSBjOHlJY29uPVwicGx1cy1jaXJjbGVcIj48L2k+IEFkZCByYW5kb208L2J1dHRvbj5cbiAqIDwvYzh5LWFjdGlvbi1iYXItaXRlbT5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktYWN0aW9uLWJhci1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1iYXItaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFjdGlvbkJhckl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBBY3Rpb25CYXJJdGVtV2l0aENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBXaGVyZSB0aGUgaXRlbSBzaG91bGQgYmUgc2hvd24uIFVzZSBcIm1vcmVcIiB0byBwbGFjZVxuICAgKiBpdCBpbiBhIGRyb3Bkb3duIG9uIHRoZSByaWdodC5cbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlbWVudDogJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdtb3JlJyA9ICdsZWZ0JztcblxuICAvKipcbiAgICogUHJpb3JpdHkgZm9yIHNvcnRpbmcgdGhlIGxpc3QuIEhpZ2hlciBwcmlvcml0eSBtZWFuc1xuICAgKiBhbiBlYXJsaWVyIHBvc2l0aW9uIGluIHRoZSBsaXN0LlxuICAgKi9cbiAgQElucHV0KCkgcHJpb3JpdHkgPSAwO1xuXG4gIC8qKlxuICAgKiBBZGRzIGFkZGl0aW9uYWwgY2xhc3NlcyB0byB0aGUgaXRlbS5cbiAgICovXG4gIEBJbnB1dCgpIGl0ZW1DbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBBbGxvd3MgdG8gZGVmaW5lIGEgZGlmZmVyZW50IGluamVjdG9yLlxuICAgKi9cbiAgQElucHV0KCkgaW5qZWN0b3I6IEluamVjdG9yO1xuXG4gIC8qKlxuICAgKiBJZiBhIGdyb3VwIGlkIGlzIHNldCwgdGhlIGFjdGlvbiBiYXIgd2l0aCB0aGUgc2FtZSBncm91cCBpZCBpcyBvbmx5IHJlbmRlcmVkIG9uY2UuXG4gICAqL1xuICBASW5wdXQoKSBncm91cElkO1xuICAvKipcbiAgICogSWYgYWN0aW9uIGJhciBpdGVtcyBoYXMgdGhlIHNhbWUgZ3JvdXBJZCwgb25seSBvbmUgaXMgZGlzcGxheWVkLlxuICAgKiBBY3Rpb24gYmFyIGl0ZW0gd2l0aCB0aGUgc2FtZSBncm91cElkIHRoYXQgaGFzIGhpZ2hlc3QgaW5Hcm91cFByaW9yaXR5IGlzIGRpc3BsYXllZC5cbiAgICovXG4gIEBJbnB1dCgpIGluR3JvdXBQcmlvcml0eTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZCgndGVtcGxhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSkgY29tcG9uZW50OiBUeXBlPGFueT4gfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHByaXZhdGUgdmlld0luaXRUaW1lb3V0O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbkJhclNlcnZpY2U6IEFjdGlvbkJhclNlcnZpY2UsXG4gICAgX2luamVjdG9yOiBFbnZpcm9ubWVudEluamVjdG9yXG4gICkge1xuICAgIHRoaXMuaW5qZWN0b3IgPSBfaW5qZWN0b3I7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMudmlld0luaXRUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLmFjdGlvbkJhclNlcnZpY2UuYWRkKHRoaXMgYXMgQWN0aW9uQmFySXRlbSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnZpZXdJbml0VGltZW91dCk7XG4gICAgdGhpcy5hY3Rpb25CYXJTZXJ2aWNlLnJlbW92ZSh0aGlzIGFzIEFjdGlvbkJhckl0ZW0pO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8bGkgY2xhc3M9XCJ7eyBpdGVtQ2xhc3MgfX1cIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvbGk+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -110,11 +110,11 @@ export class ActionBarComponent {
|
|
|
110
110
|
return -item.priority;
|
|
111
111
|
}
|
|
112
112
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ActionBarComponent, deps: [{ token: i1.GainsightService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
113
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: ActionBarComponent, selector: "c8y-action-bar", inputs: { navigatorOpen: "navigatorOpen", hasTabs: "hasTabs", hasHeader: "hasHeader", isTabsHorizontal: "isTabsHorizontal", items$: "items$" }, host: { listeners: { "mousedown": "mouseDown($event.target)" }, properties: { "class.navigator-open": "this.navigatorOpen", "class.has-tabs": "this.hasTabs", "class.has-header": "this.hasHeader", "class.horizontal-tabs": "this.isTabsHorizontal", "class.c8y-ui-action-bar": "this.uiActionBar", "hidden": "this.hidden" }, classAttribute: "c8y-ui-action-bar" }, ngImport: i0, template: "<div\n class=\"navbar-header\"\n role=\"presentation\"\n>\n <p class=\"text-label-small p-l-16 p-t-8 p-b-8 visible-xs\">\n <span class=\"text-primary\">{{ 'Action bar' | translate }}</span>\n </p>\n</div>\n\n<div\n class=\"navbar-collapse\"\n id=\"page-toolbar\"\n role=\"complementary\"\n>\n <ul class=\"nav navbar-nav navbar-left gap-sm-8 p-l-sm-16\">\n <ng-container *ngFor=\"let item of left$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul class=\"nav navbar-nav navbar-right gap-sm-8\">\n <ng-container *ngFor=\"let item of right$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n <li *ngIf=\"(more$ | async).length === 1; else moreWithMultipleOptions\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </li>\n <ng-template #moreWithMultipleOptions>\n <li\n class=\"no-remove more-wrapper\"\n *ngIf=\"(more$ | async).length > 1\"\n >\n <div\n class=\"dropdown\"\n dropdown\n >\n <c8y-action-bar-item\n [placement]=\"'right'\"\n >\n <button\n class=\"dropdown-toggle c8y-dropdown d-flex\"\n title=\"{{ 'More\u2026' | translate }}\"\n aria-haspopup=\"true\"\n type=\"button\"\n dropdownToggle\n data-cy=\"action-bar--button-more\"\n >\n <span\n class=\"text-truncate\"\n translate\n >\n More\u2026\n </span>\n <i [c8yIcon]=\"'caret-down'\"></i>\n </button>\n <ul class=\"dropdown-menu visible-xs\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul\n class=\"dropdown-menu dropdown-menu-right hidden-xs\"\n *dropdownMenu\n >\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n </c8y-action-bar-item>\n </div>\n </li>\n </ng-template>\n </ul>\n</div>\n", dependencies: [{ kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "directive", type: i3.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i4.OutletDirective, selector: "[c8yOutlet]", inputs: ["c8yOutlet", "c8yOutletProperties", "c8yOutletInjector"] }, { kind: "directive", type: i5.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "pipe", type: i8.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] }); }
|
|
113
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: ActionBarComponent, selector: "c8y-action-bar", inputs: { navigatorOpen: "navigatorOpen", hasTabs: "hasTabs", hasHeader: "hasHeader", isTabsHorizontal: "isTabsHorizontal", items$: "items$" }, host: { listeners: { "mousedown": "mouseDown($event.target)" }, properties: { "class.navigator-open": "this.navigatorOpen", "class.has-tabs": "this.hasTabs", "class.has-header": "this.hasHeader", "class.horizontal-tabs": "this.isTabsHorizontal", "class.c8y-ui-action-bar": "this.uiActionBar", "hidden": "this.hidden" }, classAttribute: "c8y-ui-action-bar" }, ngImport: i0, template: "<div\n class=\"navbar-header\"\n role=\"presentation\"\n>\n <p class=\"text-label-small p-l-16 p-t-8 p-b-8 visible-xs\">\n <span class=\"text-primary\">{{ 'Action bar' | translate }}</span>\n </p>\n</div>\n\n<div\n class=\"navbar-collapse\"\n id=\"page-toolbar\"\n role=\"complementary\"\n>\n <ul class=\"nav navbar-nav navbar-left gap-sm-8 p-l-sm-16 p-l-lg-0\">\n <ng-container *ngFor=\"let item of left$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul class=\"nav navbar-nav navbar-right gap-sm-8\">\n <ng-container *ngFor=\"let item of right$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n <li *ngIf=\"(more$ | async).length === 1; else moreWithMultipleOptions\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </li>\n <ng-template #moreWithMultipleOptions>\n <li\n class=\"no-remove more-wrapper\"\n *ngIf=\"(more$ | async).length > 1\"\n >\n <div\n class=\"dropdown\"\n dropdown\n >\n <c8y-action-bar-item\n [placement]=\"'right'\"\n >\n <button\n class=\"dropdown-toggle c8y-dropdown d-flex\"\n title=\"{{ 'More\u2026' | translate }}\"\n aria-haspopup=\"true\"\n type=\"button\"\n dropdownToggle\n data-cy=\"action-bar--button-more\"\n >\n <span\n class=\"text-truncate\"\n translate\n >\n More\u2026\n </span>\n <i [c8yIcon]=\"'caret-down'\"></i>\n </button>\n <ul class=\"dropdown-menu visible-xs\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul\n class=\"dropdown-menu dropdown-menu-right hidden-xs\"\n *dropdownMenu\n >\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n </c8y-action-bar-item>\n </div>\n </li>\n </ng-template>\n </ul>\n</div>\n", dependencies: [{ kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "directive", type: i3.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i4.OutletDirective, selector: "[c8yOutlet]", inputs: ["c8yOutlet", "c8yOutletProperties", "c8yOutletInjector"] }, { kind: "directive", type: i5.C8yTranslateDirective, selector: "[translate],[ngx-translate]" }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.ActionBarItemComponent, selector: "c8y-action-bar-item", inputs: ["placement", "priority", "itemClass", "injector", "groupId", "inGroupPriority"] }, { kind: "pipe", type: i8.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] }); }
|
|
114
114
|
}
|
|
115
115
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ActionBarComponent, decorators: [{
|
|
116
116
|
type: Component,
|
|
117
|
-
args: [{ selector: 'c8y-action-bar', host: { class: 'c8y-ui-action-bar' }, template: "<div\n class=\"navbar-header\"\n role=\"presentation\"\n>\n <p class=\"text-label-small p-l-16 p-t-8 p-b-8 visible-xs\">\n <span class=\"text-primary\">{{ 'Action bar' | translate }}</span>\n </p>\n</div>\n\n<div\n class=\"navbar-collapse\"\n id=\"page-toolbar\"\n role=\"complementary\"\n>\n <ul class=\"nav navbar-nav navbar-left gap-sm-8 p-l-sm-16\">\n <ng-container *ngFor=\"let item of left$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul class=\"nav navbar-nav navbar-right gap-sm-8\">\n <ng-container *ngFor=\"let item of right$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n <li *ngIf=\"(more$ | async).length === 1; else moreWithMultipleOptions\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </li>\n <ng-template #moreWithMultipleOptions>\n <li\n class=\"no-remove more-wrapper\"\n *ngIf=\"(more$ | async).length > 1\"\n >\n <div\n class=\"dropdown\"\n dropdown\n >\n <c8y-action-bar-item\n [placement]=\"'right'\"\n >\n <button\n class=\"dropdown-toggle c8y-dropdown d-flex\"\n title=\"{{ 'More\u2026' | translate }}\"\n aria-haspopup=\"true\"\n type=\"button\"\n dropdownToggle\n data-cy=\"action-bar--button-more\"\n >\n <span\n class=\"text-truncate\"\n translate\n >\n More\u2026\n </span>\n <i [c8yIcon]=\"'caret-down'\"></i>\n </button>\n <ul class=\"dropdown-menu visible-xs\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul\n class=\"dropdown-menu dropdown-menu-right hidden-xs\"\n *dropdownMenu\n >\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n </c8y-action-bar-item>\n </div>\n </li>\n </ng-template>\n </ul>\n</div>\n" }]
|
|
117
|
+
args: [{ selector: 'c8y-action-bar', host: { class: 'c8y-ui-action-bar' }, template: "<div\n class=\"navbar-header\"\n role=\"presentation\"\n>\n <p class=\"text-label-small p-l-16 p-t-8 p-b-8 visible-xs\">\n <span class=\"text-primary\">{{ 'Action bar' | translate }}</span>\n </p>\n</div>\n\n<div\n class=\"navbar-collapse\"\n id=\"page-toolbar\"\n role=\"complementary\"\n>\n <ul class=\"nav navbar-nav navbar-left gap-sm-8 p-l-sm-16 p-l-lg-0\">\n <ng-container *ngFor=\"let item of left$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul class=\"nav navbar-nav navbar-right gap-sm-8\">\n <ng-container *ngFor=\"let item of right$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n <li *ngIf=\"(more$ | async).length === 1; else moreWithMultipleOptions\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </li>\n <ng-template #moreWithMultipleOptions>\n <li\n class=\"no-remove more-wrapper\"\n *ngIf=\"(more$ | async).length > 1\"\n >\n <div\n class=\"dropdown\"\n dropdown\n >\n <c8y-action-bar-item\n [placement]=\"'right'\"\n >\n <button\n class=\"dropdown-toggle c8y-dropdown d-flex\"\n title=\"{{ 'More\u2026' | translate }}\"\n aria-haspopup=\"true\"\n type=\"button\"\n dropdownToggle\n data-cy=\"action-bar--button-more\"\n >\n <span\n class=\"text-truncate\"\n translate\n >\n More\u2026\n </span>\n <i [c8yIcon]=\"'caret-down'\"></i>\n </button>\n <ul class=\"dropdown-menu visible-xs\">\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n <ul\n class=\"dropdown-menu dropdown-menu-right hidden-xs\"\n *dropdownMenu\n >\n <ng-container *ngFor=\"let item of more$ | async\">\n <ng-container\n *c8yOutlet=\"item.component || item.template; injector: item.injector\"\n ></ng-container>\n </ng-container>\n </ul>\n </c8y-action-bar-item>\n </div>\n </li>\n </ng-template>\n </ul>\n</div>\n" }]
|
|
118
118
|
}], ctorParameters: () => [{ type: i1.GainsightService }], propDecorators: { navigatorOpen: [{
|
|
119
119
|
type: Input
|
|
120
120
|
}, {
|
|
@@ -146,4 +146,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
146
146
|
type: HostListener,
|
|
147
147
|
args: ['mousedown', ['$event.target']]
|
|
148
148
|
}] } });
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb3JlL2FjdGlvbi1iYXIvYWN0aW9uLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9jb3JlL2FjdGlvbi1iYXIvYWN0aW9uLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7Ozs7OztBQUczRTs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sa0JBQWtCO0lBbUU3QixZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWxFdEQ7OztXQUdHO1FBQzJDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRXBFOzs7V0FHRztRQUNxQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXhEOztXQUVHO1FBQ3VDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFNUQ7OztXQUdHO1FBQzRDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUV4RTs7V0FFRztRQUNILDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUU5Qjs7V0FFRztRQUNxQyxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUUzRDs7V0FFRztRQUNNLFdBQU0sR0FBZ0MsRUFBRSxD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QUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQUk9EVUNUX0VYUEVSSUVOQ0VfQ09SRV9TSEFSRUQgfSBmcm9tICcuLi9zaGFyZWQvY29yZS5tb2RlbCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlsdGVyLCBzb3J0QnkgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgR2FpbnNpZ2h0U2VydmljZSB9IGZyb20gJy4uL3Byb2R1Y3QtZXhwZXJpZW5jZS9nYWluc2lnaHQuc2VydmljZSc7XG5pbXBvcnQgeyBBY3Rpb25CYXJJdGVtIH0gZnJvbSAnLi9hY3Rpb24tYmFyLm1vZGVsJztcblxuLyoqXG4gKiBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIGFzIHRoZSBvdXRsZXQgdG8gc2hvdyB0aGUgYWN0aW9uIGJhcnMuXG4gKiBJbiBhIGM4eWNsaSBhcHAgaXQgaXMgYnkgZGVmYXVsdCBwbGFjZWQgb24gdGhlIGJvb3RzdHJhcCBjb21wb25lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1hY3Rpb24tYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBob3N0OiB7IGNsYXNzOiAnYzh5LXVpLWFjdGlvbi1iYXInIH1cbn0pXG5leHBvcnQgY2xhc3MgQWN0aW9uQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogSWRlbnRpZmllcyBpZiB0aGUgbmF2aWdhdG9yIGlzIG9wZW5lZC4gSWYgeWVzLCB0aGUgYWN0aW9uLWJhclxuICAgKiBuZWVkcyB0byBtb3ZlIHRvIHRoZSByaWdodC5cbiAgICovXG4gIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MubmF2aWdhdG9yLW9wZW4nKSBuYXZpZ2F0b3JPcGVuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXMgaWYgdGhlIGN1cnJlbnQgdmlldyBoYXMgdGFicy4gSWYgeWVzLCB0aGUgYWN0aW9uIGJhciBuZWVkc1xuICAgKiB0byBtb3ZlIGRvd24uXG4gICAqL1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhcy10YWJzJykgaGFzVGFicyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVzIGlmIHRoZSBjdXJyZW50IHZpZXcgaGFzIGEgaGVhZGVyIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhcy1oZWFkZXInKSBoYXNIZWFkZXIgPSBmYWxzZTtcblxuICAvKipcbiAgICogSWRlbnRpZmllcyBpZiB0aGUgdGFicyBhcmUgYWxpZ25lZCBob3Jpem9udGFsbHkuIElmIHllcywgdGhlIHRhYnMgZG9uJ3RcbiAgICogbmVlZCB0byBtb3ZlIHRvIHRoZSBsZWZ0LlxuICAgKi9cbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy5ob3Jpem9udGFsLXRhYnMnKSBpc1RhYnNIb3Jpem9udGFsID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXMgaWYgaW4gYSBtb2JpbGUgdmlldyB0aGUgdG9vbGJhciBpcyBleHBhbmRlZCBvciBub3QuXG4gICAqL1xuICBpc1BhZ2VUb29sYmFyRXhwYW5kZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogQWRkcyB0aGUgZGVmYXVsdCBgYzh5LXVpLWFjdGlvbi1iYXJgIGNsYXNzLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jOHktdWktYWN0aW9uLWJhcicpIHVpQWN0aW9uQmFyID0gdHJ1ZTtcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgaXRlbXMgdG8gZGlzcGxheSBpbiB0aGUgQWN0aW9uQmFyLlxuICAgKi9cbiAgQElucHV0KCkgaXRlbXMkOiBPYnNlcnZhYmxlPEFjdGlvbkJhckl0ZW1bXT4gPSBvZihbXSk7XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIG9ic2VydmFibGUgZm9yIHJpZ2h0IGFjdGlvbiBpdGVtcy5cbiAgICovXG4gIHJpZ2h0JDogT2JzZXJ2YWJsZTxBY3Rpb25CYXJJdGVtW10+ID0gb2YoW10pO1xuXG4gIC8qKlxuICAgKiBQcm92aWRlcyBvYnNlcnZhYmxlIGZvciBsZWZ0IGFjdGlvbiBpdGVtcy5cbiAgICovXG4gIGxlZnQkOiBPYnNlcnZhYmxlPEFjdGlvbkJhckl0ZW1bXT4gPSBvZihbXSk7XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIG9ic2VydmFibGUgZm9yIG1vcmUgYWN0aW9uIGl0ZW1zLlxuICAgKi9cbiAgbW9yZSQ6IE9ic2VydmFibGU8QWN0aW9uQmFySXRlbVtdPiA9IG9mKFtdKTtcblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIG5vIGl0ZW1zIGFyZSBwcmVzZW50IGFuZCBoaWRlcyB0aGUgYWN0aW9uIGJhci5cbiAgICovXG4gIGhpZGRlbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSBvZih0cnVlKTtcblxuICAvKipcbiAgICogQmluZHMgaGlkZGVuIHByb3BlcnR5IHRvIHRoaXMgY29tcG9uZW50J3MgbmF0aXZlIGVsZW1lbnRcbiAgICovXG4gIEBIb3N0QmluZGluZygpXG4gIGhpZGRlbiA9IHRydWU7XG5cbiAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBnYWluc2lnaHRTZXJ2aWNlOiBHYWluc2lnaHRTZXJ2aWNlKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50LnRhcmdldCddKVxuICBtb3VzZURvd24oZXZlbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgaWYgKGV2ZW50LmdldEF0dHJpYnV0ZSgnaWQnKSA9PT0gJ3BhZ2UtdG9vbGJhcicpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZWxlbWVudCA9XG4gICAgICBldmVudC5jbG9zZXN0KCdbcHgtZXZlbnRdJykgfHwgZXZlbnQuY2xvc2VzdCgnW3RpdGxlXScpIHx8IGV2ZW50LmNsb3Nlc3QoJ1t1aWItdG9vbHRpcF0nKTtcbiAgICBpZiAoIWVsZW1lbnQgfHwgZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpdGVtTmFtZSA9XG4gICAgICBlbGVtZW50LmdldEF0dHJpYnV0ZSgncHgtZXZlbnQnKSB8fFxuICAgICAgZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3RpdGxlJykgfHxcbiAgICAgIGVsZW1lbnQuZ2V0QXR0cmlidXRlKCd1aWItdG9vbHRpcCcpO1xuICAgIGNvbnN0IHRyYW5zbGF0ZWRJdGVtTmFtZSA9IHRoaXMuZ2FpbnNpZ2h0U2VydmljZS50cmFuc2xhdGVUb0VuZ2xpc2goaXRlbU5hbWUpO1xuXG4gICAgdGhpcy5nYWluc2lnaHRTZXJ2aWNlLnRyaWdnZXJFdmVudChcbiAgICAgIFBST0RVQ1RfRVhQRVJJRU5DRV9DT1JFX1NIQVJFRC5BQ1RJT05fQkFSLkVWRU5UUy5BQ1RJT05fQkFSX0lURU0sXG4gICAgICB7XG4gICAgICAgIGNvbXBvbmVudDogUFJPRFVDVF9FWFBFUklFTkNFX0NPUkVfU0hBUkVELkFDVElPTl9CQVIuQ09NUE9ORU5UUy5BQ1RJT05fQkFSX0NPTVBPTkVOVCxcbiAgICAgICAgYWN0aW9uOiBgJHt0cmFuc2xhdGVkSXRlbU5hbWV9YCxcbiAgICAgICAgdXJsOiBsb2NhdGlvbi5ocmVmXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmlnaHQkID0gdGhpcy5pdGVtcyQucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PiBmaWx0ZXIoaXRlbXMsIHsgcGxhY2VtZW50OiAncmlnaHQnIH0pKSxcbiAgICAgIG1hcChpdGVtcyA9PiBzb3J0QnkoaXRlbXMsIHRoaXMuYnlQcmlvcml0eSkpXG4gICAgKTtcblxuICAgIHRoaXMubGVmdCQgPSB0aGlzLml0ZW1zJC5waXBlKFxuICAgICAgbWFwKGl0ZW1zID0+IGZpbHRlcihpdGVtcywgeyBwbGFjZW1lbnQ6ICdsZWZ0JyB9KSksXG4gICAgICBtYXAoaXRlbXMgPT4gc29ydEJ5KGl0ZW1zLCB0aGlzLmJ5UHJpb3JpdHkpKVxuICAgICk7XG5cbiAgICB0aGlzLm1vcmUkID0gdGhpcy5pdGVtcyQucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PiBmaWx0ZXIoaXRlbXMsIHsgcGxhY2VtZW50OiAnbW9yZScgfSkpLFxuICAgICAgbWFwKGl0ZW1zID0+IHNvcnRCeShpdGVtcywgdGhpcy5ieVByaW9yaXR5KSlcbiAgICApO1xuXG4gICAgdGhpcy5oaWRkZW4kID0gdGhpcy5pdGVtcyQucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PiB7XG4gICAgICAgIHJldHVybiAhKGl0ZW1zICYmIGl0ZW1zLmxlbmd0aCk7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLmhpZGRlbiQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShoaWRkZW4gPT4ge1xuICAgICAgdGhpcy5oaWRkZW4gPSBoaWRkZW47XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGJ5UHJpb3JpdHkoaXRlbSkge1xuICAgIHJldHVybiAtaXRlbS5wcmlvcml0eTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cIm5hdmJhci1oZWFkZXJcIlxuICByb2xlPVwicHJlc2VudGF0aW9uXCJcbj5cbiAgPHAgY2xhc3M9XCJ0ZXh0LWxhYmVsLXNtYWxsIHAtbC0xNiBwLXQtOCBwLWItOCB2aXNpYmxlLXhzXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXByaW1hcnlcIj57eyAnQWN0aW9uIGJhcicgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gIDwvcD5cbjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwibmF2YmFyLWNvbGxhcHNlXCJcbiAgaWQ9XCJwYWdlLXRvb2xiYXJcIlxuICByb2xlPVwiY29tcGxlbWVudGFyeVwiXG4+XG4gIDx1bCBjbGFzcz1cIm5hdiBuYXZiYXItbmF2IG5hdmJhci1sZWZ0IGdhcC1zbS04IHAtbC1zbS0xNlwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGVmdCQgfCBhc3luY1wiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqYzh5T3V0bGV0PVwiaXRlbS5jb21wb25lbnQgfHwgaXRlbS50ZW1wbGF0ZTsgaW5qZWN0b3I6IGl0ZW0uaW5qZWN0b3JcIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3VsPlxuICA8dWwgY2xhc3M9XCJuYXYgbmF2YmFyLW5hdiBuYXZiYXItcmlnaHQgZ2FwLXNtLThcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHJpZ2h0JCB8IGFzeW5jXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpjOHlPdXRsZXQ9XCJpdGVtLmNvbXBvbmVudCB8fCBpdGVtLnRlbXBsYXRlOyBpbmplY3RvcjogaXRlbS5pbmplY3RvclwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGxpICpuZ0lmPVwiKG1vcmUkIHwgYXN5bmMpLmxlbmd0aCA9PT0gMTsgZWxzZSBtb3JlV2l0aE11bHRpcGxlT3B0aW9uc1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtb3JlJCB8IGFzeW5jXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqYzh5T3V0bGV0PVwiaXRlbS5jb21wb25lbnQgfHwgaXRlbS50ZW1wbGF0ZTsgaW5qZWN0b3I6IGl0ZW0uaW5qZWN0b3JcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2xpPlxuICAgIDxuZy10ZW1wbGF0ZSAjbW9yZVdpdGhNdWx0aXBsZU9wdGlvbnM+XG4gICAgICA8bGlcbiAgICAgICAgY2xhc3M9XCJuby1yZW1vdmUgbW9yZS13cmFwcGVyXCJcbiAgICAgICAgKm5nSWY9XCIobW9yZSQgfCBhc3luYykubGVuZ3RoID4gMVwiXG4gICAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImRyb3Bkb3duXCJcbiAgICAgICAgICBkcm9wZG93blxuICAgICAgICA+XG4gICAgICAgICAgPGM4eS1hY3Rpb24tYmFyLWl0ZW1cbiAgICAgICAgICAgIFtwbGFjZW1lbnRdPVwiJ3JpZ2h0J1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBjbGFzcz1cImRyb3Bkb3duLXRvZ2dsZSBjOHktZHJvcGRvd24gZC1mbGV4XCJcbiAgICAgICAgICAgICAgdGl0bGU9XCJ7eyAnTW9yZeKApicgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBkcm9wZG93blRvZ2dsZVxuICAgICAgICAgICAgICBkYXRhLWN5PVwiYWN0aW9uLWJhci0tYnV0dG9uLW1vcmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC10cnVuY2F0ZVwiXG4gICAgICAgICAgICAgICAgdHJhbnNsYXRlXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBNb3Jl4oCmXG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPGkgW2M4eUljb25dPVwiJ2NhcmV0LWRvd24nXCI+PC9pPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJkcm9wZG93bi1tZW51IHZpc2libGUteHNcIj5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtb3JlJCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgKmM4eU91dGxldD1cIml0ZW0uY29tcG9uZW50IHx8IGl0ZW0udGVtcGxhdGU7IGluamVjdG9yOiBpdGVtLmluamVjdG9yXCJcbiAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDx1bFxuICAgICAgICAgICAgICBjbGFzcz1cImRyb3Bkb3duLW1lbnUgZHJvcGRvd24tbWVudS1yaWdodCBoaWRkZW4teHNcIlxuICAgICAgICAgICAgICAqZHJvcGRvd25NZW51XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbW9yZSQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICpjOHlPdXRsZXQ9XCJpdGVtLmNvbXBvbmVudCB8fCBpdGVtLnRlbXBsYXRlOyBpbmplY3RvcjogaXRlbS5pbmplY3RvclwiXG4gICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPC9jOHktYWN0aW9uLWJhci1pdGVtPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbGk+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC91bD5cbjwvZGl2PlxuIl19
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb3JlL2FjdGlvbi1iYXIvYWN0aW9uLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9jb3JlL2FjdGlvbi1iYXIvYWN0aW9uLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7Ozs7OztBQUczRTs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sa0JBQWtCO0lBbUU3QixZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWxFdEQ7OztXQUdHO1FBQzJDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRXBFOzs7V0FHRztRQUNxQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXhEOztXQUVHO1FBQ3VDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFNUQ7OztXQUdHO1FBQzRDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUV4RTs7V0FFRztRQUNILDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUU5Qjs7V0FFRztRQUNxQyxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUUzRDs7V0FFRztRQUNNLFdBQU0sR0FBZ0MsRUFBRSxD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QUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQUk9EVUNUX0VYUEVSSUVOQ0VfQ09SRV9TSEFSRUQgfSBmcm9tICcuLi9zaGFyZWQvY29yZS5tb2RlbCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlsdGVyLCBzb3J0QnkgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgR2FpbnNpZ2h0U2VydmljZSB9IGZyb20gJy4uL3Byb2R1Y3QtZXhwZXJpZW5jZS9nYWluc2lnaHQuc2VydmljZSc7XG5pbXBvcnQgeyBBY3Rpb25CYXJJdGVtIH0gZnJvbSAnLi9hY3Rpb24tYmFyLm1vZGVsJztcblxuLyoqXG4gKiBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIGFzIHRoZSBvdXRsZXQgdG8gc2hvdyB0aGUgYWN0aW9uIGJhcnMuXG4gKiBJbiBhIGM4eWNsaSBhcHAgaXQgaXMgYnkgZGVmYXVsdCBwbGFjZWQgb24gdGhlIGJvb3RzdHJhcCBjb21wb25lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1hY3Rpb24tYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBob3N0OiB7IGNsYXNzOiAnYzh5LXVpLWFjdGlvbi1iYXInIH1cbn0pXG5leHBvcnQgY2xhc3MgQWN0aW9uQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogSWRlbnRpZmllcyBpZiB0aGUgbmF2aWdhdG9yIGlzIG9wZW5lZC4gSWYgeWVzLCB0aGUgYWN0aW9uLWJhclxuICAgKiBuZWVkcyB0byBtb3ZlIHRvIHRoZSByaWdodC5cbiAgICovXG4gIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MubmF2aWdhdG9yLW9wZW4nKSBuYXZpZ2F0b3JPcGVuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXMgaWYgdGhlIGN1cnJlbnQgdmlldyBoYXMgdGFicy4gSWYgeWVzLCB0aGUgYWN0aW9uIGJhciBuZWVkc1xuICAgKiB0byBtb3ZlIGRvd24uXG4gICAqL1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhcy10YWJzJykgaGFzVGFicyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVzIGlmIHRoZSBjdXJyZW50IHZpZXcgaGFzIGEgaGVhZGVyIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhcy1oZWFkZXInKSBoYXNIZWFkZXIgPSBmYWxzZTtcblxuICAvKipcbiAgICogSWRlbnRpZmllcyBpZiB0aGUgdGFicyBhcmUgYWxpZ25lZCBob3Jpem9udGFsbHkuIElmIHllcywgdGhlIHRhYnMgZG9uJ3RcbiAgICogbmVlZCB0byBtb3ZlIHRvIHRoZSBsZWZ0LlxuICAgKi9cbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy5ob3Jpem9udGFsLXRhYnMnKSBpc1RhYnNIb3Jpem9udGFsID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXMgaWYgaW4gYSBtb2JpbGUgdmlldyB0aGUgdG9vbGJhciBpcyBleHBhbmRlZCBvciBub3QuXG4gICAqL1xuICBpc1BhZ2VUb29sYmFyRXhwYW5kZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogQWRkcyB0aGUgZGVmYXVsdCBgYzh5LXVpLWFjdGlvbi1iYXJgIGNsYXNzLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jOHktdWktYWN0aW9uLWJhcicpIHVpQWN0aW9uQmFyID0gdHJ1ZTtcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgaXRlbXMgdG8gZGlzcGxheSBpbiB0aGUgQWN0aW9uQmFyLlxuICAgKi9cbiAgQElucHV0KCkgaXRlbXMkOiBPYnNlcnZhYmxlPEFjdGlvbkJhckl0ZW1bXT4gPSBvZihbXSk7XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIG9ic2VydmFibGUgZm9yIHJpZ2h0IGFjdGlvbiBpdGVtcy5cbiAgICovXG4gIHJpZ2h0JDogT2JzZXJ2YWJsZTxBY3Rpb25CYXJJdGVtW10+ID0gb2YoW10pO1xuXG4gIC8qKlxuICAgKiBQcm92aWRlcyBvYnNlcnZhYmxlIGZvciBsZWZ0IGFjdGlvbiBpdGVtcy5cbiAgICovXG4gIGxlZnQkOiBPYnNlcnZhYmxlPEFjdGlvbkJhckl0ZW1bXT4gPSBvZihbXSk7XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIG9ic2VydmFibGUgZm9yIG1vcmUgYWN0aW9uIGl0ZW1zLlxuICAgKi9cbiAgbW9yZSQ6IE9ic2VydmFibGU8QWN0aW9uQmFySXRlbVtdPiA9IG9mKFtdKTtcblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIG5vIGl0ZW1zIGFyZSBwcmVzZW50IGFuZCBoaWRlcyB0aGUgYWN0aW9uIGJhci5cbiAgICovXG4gIGhpZGRlbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSBvZih0cnVlKTtcblxuICAvKipcbiAgICogQmluZHMgaGlkZGVuIHByb3BlcnR5IHRvIHRoaXMgY29tcG9uZW50J3MgbmF0aXZlIGVsZW1lbnRcbiAgICovXG4gIEBIb3N0QmluZGluZygpXG4gIGhpZGRlbiA9IHRydWU7XG5cbiAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBnYWluc2lnaHRTZXJ2aWNlOiBHYWluc2lnaHRTZXJ2aWNlKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50LnRhcmdldCddKVxuICBtb3VzZURvd24oZXZlbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgaWYgKGV2ZW50LmdldEF0dHJpYnV0ZSgnaWQnKSA9PT0gJ3BhZ2UtdG9vbGJhcicpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZWxlbWVudCA9XG4gICAgICBldmVudC5jbG9zZXN0KCdbcHgtZXZlbnRdJykgfHwgZXZlbnQuY2xvc2VzdCgnW3RpdGxlXScpIHx8IGV2ZW50LmNsb3Nlc3QoJ1t1aWItdG9vbHRpcF0nKTtcbiAgICBpZiAoIWVsZW1lbnQgfHwgZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpdGVtTmFtZSA9XG4gICAgICBlbGVtZW50LmdldEF0dHJpYnV0ZSgncHgtZXZlbnQnKSB8fFxuICAgICAgZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3RpdGxlJykgfHxcbiAgICAgIGVsZW1lbnQuZ2V0QXR0cmlidXRlKCd1aWItdG9vbHRpcCcpO1xuICAgIGNvbnN0IHRyYW5zbGF0ZWRJdGVtTmFtZSA9IHRoaXMuZ2FpbnNpZ2h0U2VydmljZS50cmFuc2xhdGVUb0VuZ2xpc2goaXRlbU5hbWUpO1xuXG4gICAgdGhpcy5nYWluc2lnaHRTZXJ2aWNlLnRyaWdnZXJFdmVudChcbiAgICAgIFBST0RVQ1RfRVhQRVJJRU5DRV9DT1JFX1NIQVJFRC5BQ1RJT05fQkFSLkVWRU5UUy5BQ1RJT05fQkFSX0lURU0sXG4gICAgICB7XG4gICAgICAgIGNvbXBvbmVudDogUFJPRFVDVF9FWFBFUklFTkNFX0NPUkVfU0hBUkVELkFDVElPTl9CQVIuQ09NUE9ORU5UUy5BQ1RJT05fQkFSX0NPTVBPTkVOVCxcbiAgICAgICAgYWN0aW9uOiBgJHt0cmFuc2xhdGVkSXRlbU5hbWV9YCxcbiAgICAgICAgdXJsOiBsb2NhdGlvbi5ocmVmXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmlnaHQkID0gdGhpcy5pdGVtcyQucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PiBmaWx0ZXIoaXRlbXMsIHsgcGxhY2VtZW50OiAncmlnaHQnIH0pKSxcbiAgICAgIG1hcChpdGVtcyA9PiBzb3J0QnkoaXRlbXMsIHRoaXMuYnlQcmlvcml0eSkpXG4gICAgKTtcblxuICAgIHRoaXMubGVmdCQgPSB0aGlzLml0ZW1zJC5waXBlKFxuICAgICAgbWFwKGl0ZW1zID0+IGZpbHRlcihpdGVtcywgeyBwbGFjZW1lbnQ6ICdsZWZ0JyB9KSksXG4gICAgICBtYXAoaXRlbXMgPT4gc29ydEJ5KGl0ZW1zLCB0aGlzLmJ5UHJpb3JpdHkpKVxuICAgICk7XG5cbiAgICB0aGlzLm1vcmUkID0gdGhpcy5pdGVtcyQucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PiBmaWx0ZXIoaXRlbXMsIHsgcGxhY2VtZW50OiAnbW9yZScgfSkpLFxuICAgICAgbWFwKGl0ZW1zID0+IHNvcnRCeShpdGVtcywgdGhpcy5ieVByaW9yaXR5KSlcbiAgICApO1xuXG4gICAgdGhpcy5oaWRkZW4kID0gdGhpcy5pdGVtcyQucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PiB7XG4gICAgICAgIHJldHVybiAhKGl0ZW1zICYmIGl0ZW1zLmxlbmd0aCk7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLmhpZGRlbiQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShoaWRkZW4gPT4ge1xuICAgICAgdGhpcy5oaWRkZW4gPSBoaWRkZW47XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGJ5UHJpb3JpdHkoaXRlbSkge1xuICAgIHJldHVybiAtaXRlbS5wcmlvcml0eTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cIm5hdmJhci1oZWFkZXJcIlxuICByb2xlPVwicHJlc2VudGF0aW9uXCJcbj5cbiAgPHAgY2xhc3M9XCJ0ZXh0LWxhYmVsLXNtYWxsIHAtbC0xNiBwLXQtOCBwLWItOCB2aXNpYmxlLXhzXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXByaW1hcnlcIj57eyAnQWN0aW9uIGJhcicgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gIDwvcD5cbjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwibmF2YmFyLWNvbGxhcHNlXCJcbiAgaWQ9XCJwYWdlLXRvb2xiYXJcIlxuICByb2xlPVwiY29tcGxlbWVudGFyeVwiXG4+XG4gIDx1bCBjbGFzcz1cIm5hdiBuYXZiYXItbmF2IG5hdmJhci1sZWZ0IGdhcC1zbS04IHAtbC1zbS0xNiBwLWwtbGctMFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGVmdCQgfCBhc3luY1wiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqYzh5T3V0bGV0PVwiaXRlbS5jb21wb25lbnQgfHwgaXRlbS50ZW1wbGF0ZTsgaW5qZWN0b3I6IGl0ZW0uaW5qZWN0b3JcIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3VsPlxuICA8dWwgY2xhc3M9XCJuYXYgbmF2YmFyLW5hdiBuYXZiYXItcmlnaHQgZ2FwLXNtLThcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIHJpZ2h0JCB8IGFzeW5jXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpjOHlPdXRsZXQ9XCJpdGVtLmNvbXBvbmVudCB8fCBpdGVtLnRlbXBsYXRlOyBpbmplY3RvcjogaXRlbS5pbmplY3RvclwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGxpICpuZ0lmPVwiKG1vcmUkIHwgYXN5bmMpLmxlbmd0aCA9PT0gMTsgZWxzZSBtb3JlV2l0aE11bHRpcGxlT3B0aW9uc1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtb3JlJCB8IGFzeW5jXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqYzh5T3V0bGV0PVwiaXRlbS5jb21wb25lbnQgfHwgaXRlbS50ZW1wbGF0ZTsgaW5qZWN0b3I6IGl0ZW0uaW5qZWN0b3JcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2xpPlxuICAgIDxuZy10ZW1wbGF0ZSAjbW9yZVdpdGhNdWx0aXBsZU9wdGlvbnM+XG4gICAgICA8bGlcbiAgICAgICAgY2xhc3M9XCJuby1yZW1vdmUgbW9yZS13cmFwcGVyXCJcbiAgICAgICAgKm5nSWY9XCIobW9yZSQgfCBhc3luYykubGVuZ3RoID4gMVwiXG4gICAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImRyb3Bkb3duXCJcbiAgICAgICAgICBkcm9wZG93blxuICAgICAgICA+XG4gICAgICAgICAgPGM4eS1hY3Rpb24tYmFyLWl0ZW1cbiAgICAgICAgICAgIFtwbGFjZW1lbnRdPVwiJ3JpZ2h0J1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBjbGFzcz1cImRyb3Bkb3duLXRvZ2dsZSBjOHktZHJvcGRvd24gZC1mbGV4XCJcbiAgICAgICAgICAgICAgdGl0bGU9XCJ7eyAnTW9yZeKApicgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBkcm9wZG93blRvZ2dsZVxuICAgICAgICAgICAgICBkYXRhLWN5PVwiYWN0aW9uLWJhci0tYnV0dG9uLW1vcmVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dC10cnVuY2F0ZVwiXG4gICAgICAgICAgICAgICAgdHJhbnNsYXRlXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBNb3Jl4oCmXG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPGkgW2M4eUljb25dPVwiJ2NhcmV0LWRvd24nXCI+PC9pPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJkcm9wZG93bi1tZW51IHZpc2libGUteHNcIj5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtb3JlJCB8IGFzeW5jXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgKmM4eU91dGxldD1cIml0ZW0uY29tcG9uZW50IHx8IGl0ZW0udGVtcGxhdGU7IGluamVjdG9yOiBpdGVtLmluamVjdG9yXCJcbiAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDx1bFxuICAgICAgICAgICAgICBjbGFzcz1cImRyb3Bkb3duLW1lbnUgZHJvcGRvd24tbWVudS1yaWdodCBoaWRkZW4teHNcIlxuICAgICAgICAgICAgICAqZHJvcGRvd25NZW51XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbW9yZSQgfCBhc3luY1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICpjOHlPdXRsZXQ9XCJpdGVtLmNvbXBvbmVudCB8fCBpdGVtLnRlbXBsYXRlOyBpbmplY3RvcjogaXRlbS5pbmplY3RvclwiXG4gICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPC9jOHktYWN0aW9uLWJhci1pdGVtPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbGk+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC91bD5cbjwvZGl2PlxuIl19
|
|
@@ -23,15 +23,26 @@ import * as i1 from "@angular/router";
|
|
|
23
23
|
*/
|
|
24
24
|
export class ActionBarModule {
|
|
25
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ActionBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
26
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.9", ngImport: i0, type: ActionBarModule, declarations: [ActionBarComponent
|
|
27
|
-
|
|
26
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.9", ngImport: i0, type: ActionBarModule, declarations: [ActionBarComponent], imports: [BsDropdownModule,
|
|
27
|
+
CommonModule,
|
|
28
|
+
CollapseModule, i1.RouterModule, ActionBarItemComponent], exports: [ActionBarComponent, ActionBarItemComponent] }); }
|
|
29
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ActionBarModule, imports: [BsDropdownModule,
|
|
30
|
+
CommonModule,
|
|
31
|
+
CollapseModule,
|
|
32
|
+
RouterModule.forChild([])] }); }
|
|
28
33
|
}
|
|
29
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ActionBarModule, decorators: [{
|
|
30
35
|
type: NgModule,
|
|
31
36
|
args: [{
|
|
32
|
-
declarations: [ActionBarComponent
|
|
33
|
-
imports: [
|
|
37
|
+
declarations: [ActionBarComponent],
|
|
38
|
+
imports: [
|
|
39
|
+
BsDropdownModule,
|
|
40
|
+
CommonModule,
|
|
41
|
+
CollapseModule,
|
|
42
|
+
RouterModule.forChild([]),
|
|
43
|
+
ActionBarItemComponent
|
|
44
|
+
],
|
|
34
45
|
exports: [ActionBarComponent, ActionBarItemComponent]
|
|
35
46
|
}]
|
|
36
47
|
}] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb3JlL2FjdGlvbi1iYXIvYWN0aW9uLWJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRTVEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFZSCxNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlOytHQUFmLGVBQWUsaUJBVlgsa0JBQWtCLGFBRS9CLGdCQUFnQjtZQUNoQixZQUFZO1lBQ1osY0FBYyxtQkFFZCxzQkFBc0IsYUFFZCxrQkFBa0IsRUFBRSxzQkFBc0I7K0dBRXpDLGVBQWUsWUFSeEIsZ0JBQWdCO1lBQ2hCLFlBQVk7WUFDWixjQUFjO1lBQ2QsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7OzJGQUtoQixlQUFlO2tCQVgzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGtCQUFrQixDQUFDO29CQUNsQyxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7d0JBQ3pCLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsc0JBQXNCLENBQUM7aUJBQ3REIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDb2xsYXBzZU1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvY29sbGFwc2UnO1xuaW1wb3J0IHsgQnNEcm9wZG93bk1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvZHJvcGRvd24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnLi4vY29tbW9uL2NvbW1vbi5tb2R1bGUnO1xuaW1wb3J0IHsgQWN0aW9uQmFySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYWN0aW9uLWJhci1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY3Rpb25CYXJDb21wb25lbnQgfSBmcm9tICcuL2FjdGlvbi1iYXIuY29tcG9uZW50JztcblxuLyoqXG4gKiBBbiBhY3Rpb24gYmFyIGNhbiBiZSBhZGRlZCB3aXRoIGNvbnRlbnQgcHJvamVjdGlvbiBvciBtdWx0aSBwcm92aWRlclxuICogZXh0ZW5zaW9uLiBJdCBhbGxvd3MgdG8gc2hvdyB0aGVtIGluIHRocmVlIHBvc2l0aW9ucyAobGVmdCwgcmlnaHRcbiAqIG9yIG1vcmUpLiBUaGUgYWN0aW9ucyBwbGFjZWQgaGVyZSBhcmUgYWx3YXlzIGxvY2FsIGFjdGlvbnMgdG8gdGhlXG4gKiBjdXJyZW50IHJvdXRlIGxpa2UgXCJhZGQgZGV2aWNlXCIgb3IgXCJsb2NrIGRhc2hib2FyZFwiLlxuICpcbiAqIGBgYGh0bWxcbiAqIDxjOHktYWN0aW9uLWJhci1pdGVtIFtwbGFjZW1lbnRdPVwiJ3JpZ2h0J1wiPlxuICogICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCIgKGNsaWNrKT1cImFkZFJhbmRvbSgpXCI+PGkgYzh5SWNvbj1cInBsdXMtY2lyY2xlXCI+PC9pPiBBZGQgcmFuZG9tPC9idXR0b24+XG4gKiA8L2M4eS1hY3Rpb24tYmFyLWl0ZW0+XG4gKiBgYGBcbiAqIEBleHBvcnRzIEFjdGlvbkJhckNvbXBvbmVudCBUaGUgb3V0bGV0IGNvbXBvbmVudFxuICogQGV4cG9ydHMgQWN0aW9uQmFySXRlbUNvbXBvbmVudCBUaGUgaXRlbXMgdG8gYWRkIHdpdGggY3AuXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0FjdGlvbkJhckNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBCc0Ryb3Bkb3duTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDb2xsYXBzZU1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQoW10pLFxuICAgIEFjdGlvbkJhckl0ZW1Db21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW0FjdGlvbkJhckNvbXBvbmVudCwgQWN0aW9uQmFySXRlbUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgQWN0aW9uQmFyTW9kdWxlIHt9XG4iXX0=
|
|
@@ -11,6 +11,7 @@ import { SetupService } from '../setup/setup.service';
|
|
|
11
11
|
import { TabsService } from '../tabs/tabs.service';
|
|
12
12
|
import { isEmpty } from 'lodash-es';
|
|
13
13
|
import { LoginService } from '../login/login.service';
|
|
14
|
+
import { TranslationLoaderService } from '../i18n/translation-loader.service';
|
|
14
15
|
import * as i0 from "@angular/core";
|
|
15
16
|
import * as i1 from "../tabs/tabs.service";
|
|
16
17
|
import * as i2 from "../common/ui-state.service";
|
|
@@ -21,19 +22,22 @@ import * as i6 from "../common/options.service";
|
|
|
21
22
|
import * as i7 from "../plugins/plugins-resolve.service";
|
|
22
23
|
import * as i8 from "../setup/setup.service";
|
|
23
24
|
import * as i9 from "../login/login.service";
|
|
24
|
-
import * as i10 from "
|
|
25
|
-
import * as i11 from "
|
|
26
|
-
import * as i12 from "../
|
|
27
|
-
import * as i13 from "
|
|
28
|
-
import * as i14 from "
|
|
29
|
-
import * as i15 from "../
|
|
30
|
-
import * as i16 from "../
|
|
31
|
-
import * as i17 from "../
|
|
32
|
-
import * as i18 from "../
|
|
33
|
-
import * as i19 from "
|
|
34
|
-
import * as i20 from "./
|
|
25
|
+
import * as i10 from "../i18n/translation-loader.service";
|
|
26
|
+
import * as i11 from "@angular/common";
|
|
27
|
+
import * as i12 from "../header/header-bar/header-bar.component";
|
|
28
|
+
import * as i13 from "../login/login.component";
|
|
29
|
+
import * as i14 from "@angular/router";
|
|
30
|
+
import * as i15 from "../tabs/tabs-outlet.component";
|
|
31
|
+
import * as i16 from "../action-bar/action-bar.component";
|
|
32
|
+
import * as i17 from "../alert/alert-outlet.component";
|
|
33
|
+
import * as i18 from "../setup/setup.component";
|
|
34
|
+
import * as i19 from "../drawer/drawer-outlet/drawer-outlet.component";
|
|
35
|
+
import * as i20 from "./cookie-banner/cookie-banner.component";
|
|
36
|
+
import * as i21 from "./message-banner/message-banner.component";
|
|
35
37
|
export class BootstrapComponent {
|
|
36
|
-
constructor(tabs, ui, navigator, actionBar, headerService, options, pluginsResolve, setupService, loginService
|
|
38
|
+
constructor(tabs, ui, navigator, actionBar, headerService, options, pluginsResolve, setupService, loginService,
|
|
39
|
+
// only here to ensure the service is instantiated
|
|
40
|
+
translationLoaderService) {
|
|
37
41
|
this.tabs = tabs;
|
|
38
42
|
this.ui = ui;
|
|
39
43
|
this.navigator = navigator;
|
|
@@ -43,6 +47,7 @@ export class BootstrapComponent {
|
|
|
43
47
|
this.pluginsResolve = pluginsResolve;
|
|
44
48
|
this.setupService = setupService;
|
|
45
49
|
this.loginService = loginService;
|
|
50
|
+
this.translationLoaderService = translationLoaderService;
|
|
46
51
|
this.showPoweredBy = true;
|
|
47
52
|
this.destroy$ = new Subject();
|
|
48
53
|
this.loadedRemotesContextPathCache = new Map();
|
|
@@ -152,11 +157,11 @@ export class BootstrapComponent {
|
|
|
152
157
|
// ensure we call markPluginsAsLoaded on the DynamicComponentService
|
|
153
158
|
this.pluginsResolve.markPluginsAsLoaded();
|
|
154
159
|
}
|
|
155
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: BootstrapComponent, deps: [{ token: i1.TabsService }, { token: i2.AppStateService }, { token: i3.NavigatorService }, { token: i4.ActionBarService }, { token: i5.HeaderService }, { token: i6.OptionsService }, { token: i7.PluginsResolveService }, { token: i8.SetupService }, { token: i9.LoginService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
156
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: BootstrapComponent, selector: "c8y-bootstrap", ngImport: i0, template: "<c8y-message-banner\n *ngIf=\"!(showLogin$ | async)\"\n class=\"c8y-message-banner\"\n></c8y-message-banner>\n<c8y-login *ngIf=\"showLogin$ | async\"></c8y-login>\n\n<div\n class=\"init-load\"\n *ngIf=\"showLoadingIndicator$ | async\"\n>\n <div class=\"spinner-snake\"></div>\n <div class=\"mainlogo-placeholder mainlogo\"></div>\n</div>\n\n<div\n [class.head-open]=\"headerService.headerOpen\"\n *ngIf=\"showMainView$ | async\"\n>\n <c8y-header-bar\n *ngIf=\"!headerService.hideHeader\"\n #header\n ></c8y-header-bar>\n <c8y-drawer-outlet\n [tabindex]=\"(headerService.navigatorOpen$ | async) ? '0' : '-1'\"\n role=\"region\"\n position=\"left\"\n data-cy=\"bootstrap.template--c8y-drawer-outlet\"\n [open]=\"headerService.navigatorOpen$ | async\"\n ></c8y-drawer-outlet>\n\n <div class=\"alerts\">\n <c8y-alert-outlet></c8y-alert-outlet>\n </div>\n <c8y-tabs-outlet\n role=\"navigation\"\n #tabsComponent\n [tabs]=\"tabs.items$ | async\"\n [hasHeader]=\"tabsComponent.hasHeader\"\n [navigatorOpen]=\"headerService.navigatorOpen$ | async\"\n [orientation]=\"tabs.orientation$ | async\"\n ></c8y-tabs-outlet>\n <c8y-action-bar\n role=\"group\"\n #actionBarComponent\n [navigatorOpen]=\"headerService.navigatorOpen$ | async\"\n [hasTabs]=\"tabsComponent.hasTabs\"\n [hasHeader]=\"tabsComponent.hasHeader\"\n [isTabsHorizontal]=\"tabsComponent?.isHorizontal\"\n [items$]=\"actionBar.items$\"\n ></c8y-action-bar>\n\n <div\n class=\"mcontainer\"\n [ngClass]=\"{\n open: headerService.navigatorOpen$ | async,\n 'no-apps-margin': noAppsMargin$ | async,\n 'horizontal-tabs': tabsComponent.isHorizontal,\n 'vertical-tabs': !tabsComponent.isHorizontal,\n 'has-tabs': tabsComponent.hasTabs,\n 'has-action-bar': !actionBarComponent?.hidden,\n 'has-header': headerService.hideHeader\n }\"\n >\n <main\n class=\"container-fluid\"\n id=\"main-content\"\n tabindex=\"-1\"\n >\n <router-outlet></router-outlet>\n <ng-content select=\"#c8y-legacy-view\"></ng-content>\n <!-- legacy ng-view, will not be migrated atm -->\n </main>\n </div>\n</div>\n\n<div *ngIf=\"showSetup$ | async\">\n <c8y-header-bar\n *ngIf=\"!headerService.hideHeader\"\n [simple]=\"true\"\n ></c8y-header-bar>\n <div class=\"alerts\">\n <c8y-alert-outlet></c8y-alert-outlet>\n </div>\n <div\n class=\"mcontainer\"\n role=\"main\"\n >\n <div class=\"container-fluid\">\n <c8y-setup></c8y-setup>\n </div>\n </div>\n</div>\n\n<c8y-cookie-banner></c8y-cookie-banner>\n", dependencies: [{ kind: "directive", type:
|
|
160
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: BootstrapComponent, deps: [{ token: i1.TabsService }, { token: i2.AppStateService }, { token: i3.NavigatorService }, { token: i4.ActionBarService }, { token: i5.HeaderService }, { token: i6.OptionsService }, { token: i7.PluginsResolveService }, { token: i8.SetupService }, { token: i9.LoginService }, { token: i10.TranslationLoaderService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
161
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: BootstrapComponent, selector: "c8y-bootstrap", ngImport: i0, template: "<c8y-message-banner\n *ngIf=\"!(showLogin$ | async)\"\n class=\"c8y-message-banner\"\n></c8y-message-banner>\n<c8y-login *ngIf=\"showLogin$ | async\"></c8y-login>\n\n<div\n class=\"init-load\"\n *ngIf=\"showLoadingIndicator$ | async\"\n>\n <div class=\"spinner-snake\"></div>\n <div class=\"mainlogo-placeholder mainlogo\"></div>\n</div>\n\n<div\n [class.head-open]=\"headerService.headerOpen\"\n *ngIf=\"showMainView$ | async\"\n>\n <c8y-header-bar\n *ngIf=\"!headerService.hideHeader\"\n #header\n ></c8y-header-bar>\n <c8y-drawer-outlet\n [tabindex]=\"(headerService.navigatorOpen$ | async) ? '0' : '-1'\"\n role=\"region\"\n position=\"left\"\n data-cy=\"bootstrap.template--c8y-drawer-outlet\"\n [open]=\"headerService.navigatorOpen$ | async\"\n ></c8y-drawer-outlet>\n\n <div class=\"alerts\">\n <c8y-alert-outlet></c8y-alert-outlet>\n </div>\n <c8y-tabs-outlet\n role=\"navigation\"\n #tabsComponent\n [tabs]=\"tabs.items$ | async\"\n [hasHeader]=\"tabsComponent.hasHeader\"\n [navigatorOpen]=\"headerService.navigatorOpen$ | async\"\n [orientation]=\"tabs.orientation$ | async\"\n ></c8y-tabs-outlet>\n <c8y-action-bar\n role=\"group\"\n #actionBarComponent\n [navigatorOpen]=\"headerService.navigatorOpen$ | async\"\n [hasTabs]=\"tabsComponent.hasTabs\"\n [hasHeader]=\"tabsComponent.hasHeader\"\n [isTabsHorizontal]=\"tabsComponent?.isHorizontal\"\n [items$]=\"actionBar.items$\"\n ></c8y-action-bar>\n\n <div\n class=\"mcontainer\"\n [ngClass]=\"{\n open: headerService.navigatorOpen$ | async,\n 'no-apps-margin': noAppsMargin$ | async,\n 'horizontal-tabs': tabsComponent.isHorizontal,\n 'vertical-tabs': !tabsComponent.isHorizontal,\n 'has-tabs': tabsComponent.hasTabs,\n 'has-action-bar': !actionBarComponent?.hidden,\n 'has-header': headerService.hideHeader\n }\"\n >\n <main\n class=\"container-fluid\"\n id=\"main-content\"\n tabindex=\"-1\"\n >\n <router-outlet></router-outlet>\n <ng-content select=\"#c8y-legacy-view\"></ng-content>\n <!-- legacy ng-view, will not be migrated atm -->\n </main>\n </div>\n</div>\n\n<div *ngIf=\"showSetup$ | async\">\n <c8y-header-bar\n *ngIf=\"!headerService.hideHeader\"\n [simple]=\"true\"\n ></c8y-header-bar>\n <div class=\"alerts\">\n <c8y-alert-outlet></c8y-alert-outlet>\n </div>\n <div\n class=\"mcontainer\"\n role=\"main\"\n >\n <div class=\"container-fluid\">\n <c8y-setup></c8y-setup>\n </div>\n </div>\n</div>\n\n<c8y-cookie-banner></c8y-cookie-banner>\n", dependencies: [{ kind: "directive", type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i12.HeaderBarComponent, selector: "c8y-header-bar", inputs: ["simple"] }, { kind: "component", type: i13.LoginComponent, selector: "c8y-login", inputs: ["name"] }, { kind: "directive", type: i14.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i15.TabsOutletComponent, selector: "c8y-tabs-outlet,c8y-ui-tabs", inputs: ["tabs", "orientation", "navigatorOpen", "outletName", "context", "hasHeader"] }, { kind: "component", type: i16.ActionBarComponent, selector: "c8y-action-bar", inputs: ["navigatorOpen", "hasTabs", "hasHeader", "isTabsHorizontal", "items$"] }, { kind: "component", type: i17.AlertOutletComponent, selector: "c8y-alert-outlet" }, { kind: "component", type: i18.SetupComponent, selector: "c8y-setup" }, { kind: "component", type: i19.DrawerOutletComponent, selector: "c8y-drawer-outlet", inputs: ["position", "open"] }, { kind: "component", type: i20.CookieBannerComponent, selector: "c8y-cookie-banner" }, { kind: "component", type: i21.MessageBannerComponent, selector: "c8y-message-banner" }, { kind: "pipe", type: i11.AsyncPipe, name: "async" }] }); }
|
|
157
162
|
}
|
|
158
163
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: BootstrapComponent, decorators: [{
|
|
159
164
|
type: Component,
|
|
160
165
|
args: [{ selector: 'c8y-bootstrap', template: "<c8y-message-banner\n *ngIf=\"!(showLogin$ | async)\"\n class=\"c8y-message-banner\"\n></c8y-message-banner>\n<c8y-login *ngIf=\"showLogin$ | async\"></c8y-login>\n\n<div\n class=\"init-load\"\n *ngIf=\"showLoadingIndicator$ | async\"\n>\n <div class=\"spinner-snake\"></div>\n <div class=\"mainlogo-placeholder mainlogo\"></div>\n</div>\n\n<div\n [class.head-open]=\"headerService.headerOpen\"\n *ngIf=\"showMainView$ | async\"\n>\n <c8y-header-bar\n *ngIf=\"!headerService.hideHeader\"\n #header\n ></c8y-header-bar>\n <c8y-drawer-outlet\n [tabindex]=\"(headerService.navigatorOpen$ | async) ? '0' : '-1'\"\n role=\"region\"\n position=\"left\"\n data-cy=\"bootstrap.template--c8y-drawer-outlet\"\n [open]=\"headerService.navigatorOpen$ | async\"\n ></c8y-drawer-outlet>\n\n <div class=\"alerts\">\n <c8y-alert-outlet></c8y-alert-outlet>\n </div>\n <c8y-tabs-outlet\n role=\"navigation\"\n #tabsComponent\n [tabs]=\"tabs.items$ | async\"\n [hasHeader]=\"tabsComponent.hasHeader\"\n [navigatorOpen]=\"headerService.navigatorOpen$ | async\"\n [orientation]=\"tabs.orientation$ | async\"\n ></c8y-tabs-outlet>\n <c8y-action-bar\n role=\"group\"\n #actionBarComponent\n [navigatorOpen]=\"headerService.navigatorOpen$ | async\"\n [hasTabs]=\"tabsComponent.hasTabs\"\n [hasHeader]=\"tabsComponent.hasHeader\"\n [isTabsHorizontal]=\"tabsComponent?.isHorizontal\"\n [items$]=\"actionBar.items$\"\n ></c8y-action-bar>\n\n <div\n class=\"mcontainer\"\n [ngClass]=\"{\n open: headerService.navigatorOpen$ | async,\n 'no-apps-margin': noAppsMargin$ | async,\n 'horizontal-tabs': tabsComponent.isHorizontal,\n 'vertical-tabs': !tabsComponent.isHorizontal,\n 'has-tabs': tabsComponent.hasTabs,\n 'has-action-bar': !actionBarComponent?.hidden,\n 'has-header': headerService.hideHeader\n }\"\n >\n <main\n class=\"container-fluid\"\n id=\"main-content\"\n tabindex=\"-1\"\n >\n <router-outlet></router-outlet>\n <ng-content select=\"#c8y-legacy-view\"></ng-content>\n <!-- legacy ng-view, will not be migrated atm -->\n </main>\n </div>\n</div>\n\n<div *ngIf=\"showSetup$ | async\">\n <c8y-header-bar\n *ngIf=\"!headerService.hideHeader\"\n [simple]=\"true\"\n ></c8y-header-bar>\n <div class=\"alerts\">\n <c8y-alert-outlet></c8y-alert-outlet>\n </div>\n <div\n class=\"mcontainer\"\n role=\"main\"\n >\n <div class=\"container-fluid\">\n <c8y-setup></c8y-setup>\n </div>\n </div>\n</div>\n\n<c8y-cookie-banner></c8y-cookie-banner>\n" }]
|
|
161
|
-
}], ctorParameters: () => [{ type: i1.TabsService }, { type: i2.AppStateService }, { type: i3.NavigatorService }, { type: i4.ActionBarService }, { type: i5.HeaderService }, { type: i6.OptionsService }, { type: i7.PluginsResolveService }, { type: i8.SetupService }, { type: i9.LoginService }] });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvYm9vdHN0cmFwL2Jvb3RzdHJhcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9jb3JlL2Jvb3RzdHJhcC9ib290c3RyYXAudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQWMsT0FBTyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUUzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTXRELE1BQU0sT0FBTyxrQkFBa0I7SUFZN0IsWUFDUyxJQUFpQixFQUNqQixF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Qyx3QkFBd0I7YUFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUyxDQUFDLENBQUMsTUFBcUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU8sMkJBQTJCO1FBQ2pDLG9FQUFvRTtRQUNwRSxJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDNUMsQ0FBQzs4R0E5SlUsa0JBQWtCO2tHQUFsQixrQkFBa0IscURDcEIvQiw4akZBOEZBOzsyRkQxRWEsa0JBQWtCO2tCQUo5QixTQUFTOytCQUNFLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblJlbW90ZVBsdWdpbnMgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBY3Rpb25CYXJTZXJ2aWNlIH0gZnJvbSAnLi4vYWN0aW9uLWJhci9hY3Rpb24tYmFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgT3B0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi9jb21tb24vb3B0aW9ucy5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi91aS1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IEhlYWRlclNlcnZpY2UgfSBmcm9tICcuLi9oZWFkZXIvaGVhZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmF2aWdhdG9yU2VydmljZSB9IGZyb20gJy4uL25hdmlnYXRvci9uYXZpZ2F0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBQbHVnaW5zUmVzb2x2ZVNlcnZpY2UgfSBmcm9tICcuLi9wbHVnaW5zL3BsdWdpbnMtcmVzb2x2ZS5zZXJ2aWNlJztcbmltcG9ydCB7IFBsdWdpbnNDb25maWcgfSBmcm9tICcuLi9wbHVnaW5zL3BsdWdpbnMubW9kZWwnO1xuaW1wb3J0IHsgU2V0dXBTZXJ2aWNlIH0gZnJvbSAnLi4vc2V0dXAvc2V0dXAuc2VydmljZSc7XG5pbXBvcnQgeyBUYWJzU2VydmljZSB9IGZyb20gJy4uL3RhYnMvdGFicy5zZXJ2aWNlJztcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vbG9naW4vbG9naW4uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1ib290c3RyYXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vYm9vdHN0cmFwLnRlbXBsYXRlLmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEJvb3RzdHJhcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0IHtcbiAgbmF2aWdhdG9yT3BlbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIG5vQXBwc01hcmdpbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHRhYnNPcmllbnRhdGlvbjogc3RyaW5nO1xuICBzaG93UG93ZXJlZEJ5ID0gdHJ1ZTtcbiAgc2hvd0xvZ2luJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgc2hvd0xvYWRpbmdJbmRpY2F0b3IkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBzaG93TWFpblZpZXckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBzaG93U2V0dXAkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBsb2FkZWRSZW1vdGVzQ29udGV4dFBhdGhDYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBib29sZWFuPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB0YWJzOiBUYWJzU2VydmljZSxcbiAgICBwdWJsaWMgdWk6IEFwcFN0YXRlU2VydmljZSxcbiAgICBwdWJsaWMgbmF2aWdhdG9yOiBOYXZpZ2F0b3JTZXJ2aWNlLFxuICAgIHB1YmxpYyBhY3Rpb25CYXI6IEFjdGlvbkJhclNlcnZpY2UsXG4gICAgcHVibGljIGhlYWRlclNlcnZpY2U6IEhlYWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBvcHRpb25zOiBPcHRpb25zU2VydmljZSxcbiAgICBwcml2YXRlIHBsdWdpbnNSZXNvbHZlOiBQbHVnaW5zUmVzb2x2ZVNlcnZpY2UsXG4gICAgcHVibGljIHNldHVwU2VydmljZTogU2V0dXBTZXJ2aWNlLFxuICAgIHB1YmxpYyBsb2dpblNlcnZpY2U6IExvZ2luU2VydmljZVxuICApIHtcbiAgICB0aGlzLm5vQXBwc01hcmdpbiQgPSB0aGlzLmhlYWRlclNlcnZpY2UubWFwKCh7IG5hdiB9KSA9PiAhbmF2Lm9wZW4gJiYgbmF2LmhpZGRlbk9uU3RhcnR1cCk7XG4gICAgdGhpcy50YWJzT3JpZW50YXRpb24gPSB0aGlzLm9wdGlvbnMudGFic0hvcml6b250YWwgPyAnaG9yaXpvbnRhbCcgOiAndmVydGljYWwnO1xuICAgIHRoaXMudWlcbiAgICAgIC5tYXAoKHsgbGFuZyB9KSA9PiBsYW5nKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuYWN0aW9uQmFyLnJlZnJlc2goKTtcbiAgICAgIH0pO1xuICAgIHRoaXMuc2hvd1Bvd2VyZWRCeSA9ICF0aGlzLm9wdGlvbnMuZ2V0KCdoaWRlUG93ZXJlZCcpO1xuICAgIGNvbnN0IG5vTG9naW4kID0gb2YodGhpcy5vcHRpb25zLmdldCgnbm9Mb2dpbicsIGZhbHNlKSk7XG4gICAgdGhpcy5zaG93TG9naW4kID0gY29tYmluZUxhdGVzdChbbm9Mb2dpbiQsIHRoaXMudWkuY3VycmVudFVzZXJdKS5waXBlKFxuICAgICAgbWFwKChbbm9Mb2dpbiwgY3VycmVudFVzZXJdKSA9PiAhbm9Mb2dpbiAmJiAhY3VycmVudFVzZXIpXG4gICAgKTtcbiAgICB0aGlzLnNob3dMb2FkaW5nSW5kaWNhdG9yJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgbm9Mb2dpbiQsXG4gICAgICB0aGlzLnVpLmN1cnJlbnRVc2VyLFxuICAgICAgdGhpcy5sb2dpblNlcnZpY2UuYXV0b21hdGljTG9naW5JblByb2dyZXNzJCxcbiAgICAgIHRoaXMucGx1Z2luc1Jlc29sdmUuYWxsUGx1Z2luc0xvYWRlZCRcbiAgICBdKS5waXBlKFxuICAgICAgZGVsYXkoMCksIC8vIGRlbGF5IHRvIGF2b2lkIEV4cHJlc3Npb25DaGFuZ2VkQWZ0ZXJJdEhhc0JlZW5DaGVja2VkRXJyb3JcbiAgICAgIG1hcChcbiAgICAgICAgKFtub0xvZ2luLCBjdXJyZW50VXNlciwgYXV0b21hdGljTG9naW5JblByb2dyZXNzLCBhbGxQbHVnaW5zTG9hZGVkXSkgPT5cbiAgICAgICAgICAoIW5vTG9naW4gJiYgYXV0b21hdGljTG9naW5JblByb2dyZXNzKSB8fCAoY3VycmVudFVzZXIgJiYgIWFsbFBsdWdpbnNMb2FkZWQpXG4gICAgICApLFxuICAgICAgc3RhcnRXaXRoKHRydWUpXG4gICAgKTtcbiAgICB0aGlzLnNob3dNYWluVmlldyQgPSBub0xvZ2luJC5waXBlKFxuICAgICAgc3dpdGNoTWFwKG5vTG9naW4gPT4ge1xuICAgICAgICBpZiAobm9Mb2dpbikge1xuICAgICAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgdGhpcy51aS5jdXJyZW50VXNlcixcbiAgICAgICAgICB0aGlzLnNldHVwU2VydmljZS5pc1NldHVwTmVlZGVkJCxcbiAgICAgICAgICB0aGlzLnBsdWdpbnNSZXNvbHZlLmFsbFBsdWdpbnNMb2FkZWQkXG4gICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgbWFwKChbY3VycmVudFVzZXIsIGlzU2V0dXBOZWVkZWQsIGFsbFBsdWdpbnNMb2FkZWRdKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gY3VycmVudFVzZXIgJiYgIWlzU2V0dXBOZWVkZWQgJiYgYWxsUGx1Z2luc0xvYWRlZDtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMuc2hvd1NldHVwJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMudWkuY3VycmVudFVzZXIsIHRoaXMuc2V0dXBTZXJ2aWNlLmlzU2V0dXBOZWVkZWQkXSkucGlwZShcbiAgICAgIG1hcCgoW2N1cnJlbnRVc2VyLCBpc1NldHVwTmVlZGVkXSkgPT4gY3VycmVudFVzZXIgJiYgaXNTZXR1cE5lZWRlZClcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zdWJzY3JpYmVUb0xvYWRSZW1vdGVzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFJlbW90ZXMoY29uZmlnOiBQbHVnaW5zQ29uZmlnKTogQXBwbGljYXRpb25SZW1vdGVQbHVnaW5zIHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgc2VsZlJlbW90ZXM6IEFwcGxpY2F0aW9uUmVtb3RlUGx1Z2lucztcblxuICAgIC8vIFdlIG5lZWQgdG8gaW1wb3J0IHRoZSBzZWxmIGltcG9ydHMsIGFzIHRoaXMgYXBwIGlzIG5vdCBjb25maWd1cmVkIGF0IGFsbFxuICAgIGlmICh0aGlzLm9wdGlvbnM/LmV4cG9ydHMpIHtcbiAgICAgIGNvbnN0IHNlbGZNb2R1bGVOYW1lczogc3RyaW5nW10gPSB0aGlzLm9wdGlvbnMuZXhwb3J0c1xuICAgICAgICAuZmlsdGVyKHBsdWdpbiA9PiBwbHVnaW4uc2NvcGUgPT09ICdzZWxmJylcbiAgICAgICAgLm1hcChwbHVnaW4gPT4gcGx1Z2luLm1vZHVsZSB8fCBwbHVnaW4ubmFtZSk7XG4gICAgICBzZWxmUmVtb3RlcyA9IHsgW3RoaXMub3B0aW9ucy5jb250ZXh0UGF0aF06IHNlbGZNb2R1bGVOYW1lcyB9O1xuICAgIH1cblxuICAgIC8vIE1lcmdlIHBsdWdpbnMgY29uZmlnIHJlbW90ZXMgYW5kIHJlbW90ZXMgcGFzc2VkIGluIHRoZSBVUkwuXG4gICAgLy8gUmVtb3RlcyBpbiB0aGUgVVJMIGFyZSB1c2VkIGluIHRoZSBkZXZlbG9wbWVudCBwcm9jZXNzLlxuICAgIGxldCByZW1vdGVzID0gUGx1Z2luc1Jlc29sdmVTZXJ2aWNlLm1lcmdlUmVtb3RlcyhbXG4gICAgICBzZWxmUmVtb3RlcyxcbiAgICAgIHRoaXMub3B0aW9ucz8ucmVtb3RlcyxcbiAgICAgIGNvbmZpZz8ucmVtb3RlcyxcbiAgICAgIHRoaXMucGx1Z2luc1Jlc29sdmUubG9hZFVybFJlbW90ZXMoKVxuICAgIF0pO1xuXG4gICAgLy8gcmVtb3ZlIHJlbW90ZXMgdGhhdCBhcmUgb24gdGhlIGV4Y2x1ZGUgbGlzdFxuICAgIHJlbW90ZXMgPSBQbHVnaW5zUmVzb2x2ZVNlcnZpY2UucmVtb3ZlUmVtb3RlcyhyZW1vdGVzLCBjb25maWc/LmV4Y2x1ZGVkUmVtb3Rlcyk7XG5cbiAgICAvLyBCbG9jayB0aGUgcG9zc2liaWxpdHkgb2YgbG9hZGluZyBwbHVnaW5zIG11bHRpcGxlIHRpbWVzLlxuICAgIE9iamVjdC5rZXlzKHJlbW90ZXMgfHwge30pLmZvckVhY2goY29udGV4dFBhdGggPT4ge1xuICAgICAgaWYgKHRoaXMubG9hZGVkUmVtb3Rlc0NvbnRleHRQYXRoQ2FjaGUuZ2V0KGNvbnRleHRQYXRoKSkge1xuICAgICAgICBkZWxldGUgcmVtb3Rlc1tjb250ZXh0UGF0aF07XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGlzRW1wdHkocmVtb3RlcykgPyB1bmRlZmluZWQgOiByZW1vdGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkUmVtb3RlcyhyZW1vdGVzOiBBcHBsaWNhdGlvblJlbW90ZVBsdWdpbnMpIHtcbiAgICBpZiAoIXJlbW90ZXMpIHtcbiAgICAgIHRoaXMuZW5zdXJlV2VNYXJrUGx1Z2luc0FzTG9hZGVkKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHJlbW90ZU1vZHVsZXMgPSBhd2FpdCB0aGlzLnBsdWdpbnNSZXNvbHZlLmxvYWRSZW1vdGVzKHJlbW90ZXMpO1xuXG4gICAgLy8gQ2FjaGUgbG9hZGVkIHJlbW90ZXMuXG4gICAgT2JqZWN0LmtleXMocmVtb3RlcykuZm9yRWFjaChjb250ZXh0UGF0aCA9PlxuICAgICAgdGhpcy5sb2FkZWRSZW1vdGVzQ29udGV4dFBhdGhDYWNoZS5zZXQoY29udGV4dFBhdGgsIHRydWUpXG4gICAgKTtcblxuICAgIGlmIChyZW1vdGVNb2R1bGVzLmxlbmd0aCkge1xuICAgICAgdGhpcy5wbHVnaW5zUmVzb2x2ZS5yZXNvbHZlUmVtb3RlUGx1Z2lucyhyZW1vdGVNb2R1bGVzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gaW4gY2FzZSBsb2FkaW5nIGFsbCBtb2R1bGVzIHZpYSBwbHVnaW5zUmVzb2x2ZS5sb2FkUmVtb3RlcyBmYWlsZWRcbiAgICAgIC8vIChlLmcuIGFsbCBwbHVnaW5zIHRoYXQgd2VyZSBpbnN0YWxsZWQgaGF2ZSBiZWVuIGRlbGV0ZWQgZnJvbSB0aGUgdGVuYW50KVxuICAgICAgLy8gd2Ugc3RpbGwgbmVlZCB0byBtYXJrIGxvYWRpbmcgdGhlIHBsdWdpbnMgYXMgc3VjY2Vzc2Z1bC5cbiAgICAgIHRoaXMuZW5zdXJlV2VNYXJrUGx1Z2luc0FzTG9hZGVkKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVUb0xvYWRSZW1vdGVzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm9wdGlvbnMuZ2V0KCdub1BsdWdpbnMnLCBmYWxzZSkpIHtcbiAgICAgIHRoaXMuZW5zdXJlV2VNYXJrUGx1Z2luc0FzTG9hZGVkKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5nZXQoJ2ZvcmNlVXJsUmVtb3RlcycsIGZhbHNlKSkge1xuICAgICAgY29uc3QgcmVtb3RlcyA9IHRoaXMucGx1Z2luc1Jlc29sdmUubG9hZFVybFJlbW90ZXMoKTtcbiAgICAgIHRoaXMubG9hZFJlbW90ZXMocmVtb3Rlcyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5nZXQoJ25vTG9naW4nLCBmYWxzZSkpIHtcbiAgICAgIHRoaXMubG9hZFJlbW90ZXModGhpcy5nZXRSZW1vdGVzKG51bGwpKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnVpLmN1cnJlbnRBcHBsaWNhdGlvbkNvbmZpZ1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoY29uZmlnOiBQbHVnaW5zQ29uZmlnKSA9PiB0aGlzLmxvYWRSZW1vdGVzKHRoaXMuZ2V0UmVtb3Rlcyhjb25maWcpKSk7XG4gIH1cblxuICBwcml2YXRlIGVuc3VyZVdlTWFya1BsdWdpbnNBc0xvYWRlZCgpOiB2b2lkIHtcbiAgICAvLyBlbnN1cmUgd2UgY2FsbCBtYXJrUGx1Z2luc0FzTG9hZGVkIG9uIHRoZSBEeW5hbWljQ29tcG9uZW50U2VydmljZVxuICAgIHRoaXMucGx1Z2luc1Jlc29sdmUubWFya1BsdWdpbnNBc0xvYWRlZCgpO1xuICB9XG59XG4iLCI8Yzh5LW1lc3NhZ2UtYmFubmVyXG4gICpuZ0lmPVwiIShzaG93TG9naW4kIHwgYXN5bmMpXCJcbiAgY2xhc3M9XCJjOHktbWVzc2FnZS1iYW5uZXJcIlxuPjwvYzh5LW1lc3NhZ2UtYmFubmVyPlxuPGM4eS1sb2dpbiAqbmdJZj1cInNob3dMb2dpbiQgfCBhc3luY1wiPjwvYzh5LWxvZ2luPlxuXG48ZGl2XG4gIGNsYXNzPVwiaW5pdC1sb2FkXCJcbiAgKm5nSWY9XCJzaG93TG9hZGluZ0luZGljYXRvciQgfCBhc3luY1wiXG4+XG4gIDxkaXYgY2xhc3M9XCJzcGlubmVyLXNuYWtlXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJtYWlubG9nby1wbGFjZWhvbGRlciBtYWlubG9nb1wiPjwvZGl2PlxuPC9kaXY+XG5cbjxkaXZcbiAgW2NsYXNzLmhlYWQtb3Blbl09XCJoZWFkZXJTZXJ2aWNlLmhlYWRlck9wZW5cIlxuICAqbmdJZj1cInNob3dNYWluVmlldyQgfCBhc3luY1wiXG4+XG4gIDxjOHktaGVhZGVyLWJhclxuICAgICpuZ0lmPVwiIWhlYWRlclNlcnZpY2UuaGlkZUhlYWRlclwiXG4gICAgI2hlYWRlclxuICA+PC9jOHktaGVhZGVyLWJhcj5cbiAgPGM4eS1kcmF3ZXItb3V0bGV0XG4gICAgW3RhYmluZGV4XT1cIihoZWFkZXJTZXJ2aWNlLm5hdmlnYXRvck9wZW4kIHwgYXN5bmMpID8gJzAnIDogJy0xJ1wiXG4gICAgcm9sZT1cInJlZ2lvblwiXG4gICAgcG9zaXRpb249XCJsZWZ0XCJcbiAgICBkYXRhLWN5PVwiYm9vdHN0cmFwLnRlbXBsYXRlLS1jOHktZHJhd2VyLW91dGxldFwiXG4gICAgW29wZW5dPVwiaGVhZGVyU2VydmljZS5uYXZpZ2F0b3JPcGVuJCB8IGFzeW5jXCJcbiAgPjwvYzh5LWRyYXdlci1vdXRsZXQ+XG5cbiAgPGRpdiBjbGFzcz1cImFsZXJ0c1wiPlxuICAgIDxjOHktYWxlcnQtb3V0bGV0PjwvYzh5LWFsZXJ0LW91dGxldD5cbiAgPC9kaXY+XG4gIDxjOHktdGFicy1vdXRsZXRcbiAgICByb2xlPVwibmF2aWdhdGlvblwiXG4gICAgI3RhYnNDb21wb25lbnRcbiAgICBbdGFic109XCJ0YWJzLml0ZW1zJCB8IGFzeW5jXCJcbiAgICBbaGFzSGVhZGVyXT1cInRhYnNDb21wb25lbnQuaGFzSGVhZGVyXCJcbiAgICBbbmF2aWdhdG9yT3Blbl09XCJoZWFkZXJTZXJ2aWNlLm5hdmlnYXRvck9wZW4kIHwgYXN5bmNcIlxuICAgIFtvcmllbnRhdGlvbl09XCJ0YWJzLm9yaWVudGF0aW9uJCB8IGFzeW5jXCJcbiAgPjwvYzh5LXRhYnMtb3V0bGV0PlxuICA8Yzh5LWFjdGlvbi1iYXJcbiAgICByb2xlPVwiZ3JvdXBcIlxuICAgICNhY3Rpb25CYXJDb21wb25lbnRcbiAgICBbbmF2aWdhdG9yT3Blbl09XCJoZWFkZXJTZXJ2aWNlLm5hdmlnYXRvck9wZW4kIHwgYXN5bmNcIlxuICAgIFtoYXNUYWJzXT1cInRhYnNDb21wb25lbnQuaGFzVGFic1wiXG4gICAgW2hhc0hlYWRlcl09XCJ0YWJzQ29tcG9uZW50Lmhhc0hlYWRlclwiXG4gICAgW2lzVGFic0hvcml6b250YWxdPVwidGFic0NvbXBvbmVudD8uaXNIb3Jpem9udGFsXCJcbiAgICBbaXRlbXMkXT1cImFjdGlvbkJhci5pdGVtcyRcIlxuICA+PC9jOHktYWN0aW9uLWJhcj5cblxuICA8ZGl2XG4gICAgY2xhc3M9XCJtY29udGFpbmVyXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICBvcGVuOiBoZWFkZXJTZXJ2aWNlLm5hdmlnYXRvck9wZW4kIHwgYXN5bmMsXG4gICAgICAnbm8tYXBwcy1tYXJnaW4nOiBub0FwcHNNYXJnaW4kIHwgYXN5bmMsXG4gICAgICAnaG9yaXpvbnRhbC10YWJzJzogdGFic0NvbXBvbmVudC5pc0hvcml6b250YWwsXG4gICAgICAndmVydGljYWwtdGFicyc6ICF0YWJzQ29tcG9uZW50LmlzSG9yaXpvbnRhbCxcbiAgICAgICdoYXMtdGFicyc6IHRhYnNDb21wb25lbnQuaGFzVGFicyxcbiAgICAgICdoYXMtYWN0aW9uLWJhcic6ICFhY3Rpb25CYXJDb21wb25lbnQ/LmhpZGRlbixcbiAgICAgICdoYXMtaGVhZGVyJzogaGVhZGVyU2VydmljZS5oaWRlSGVhZGVyXG4gICAgfVwiXG4gID5cbiAgICA8bWFpblxuICAgICAgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIlxuICAgICAgaWQ9XCJtYWluLWNvbnRlbnRcIlxuICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgPlxuICAgICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiI2M4eS1sZWdhY3ktdmlld1wiPjwvbmctY29udGVudD5cbiAgICAgIDwhLS0gbGVnYWN5IG5nLXZpZXcsIHdpbGwgbm90IGJlIG1pZ3JhdGVkIGF0bSAtLT5cbiAgICA8L21haW4+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgKm5nSWY9XCJzaG93U2V0dXAkIHwgYXN5bmNcIj5cbiAgPGM4eS1oZWFkZXItYmFyXG4gICAgKm5nSWY9XCIhaGVhZGVyU2VydmljZS5oaWRlSGVhZGVyXCJcbiAgICBbc2ltcGxlXT1cInRydWVcIlxuICA+PC9jOHktaGVhZGVyLWJhcj5cbiAgPGRpdiBjbGFzcz1cImFsZXJ0c1wiPlxuICAgIDxjOHktYWxlcnQtb3V0bGV0PjwvYzh5LWFsZXJ0LW91dGxldD5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cIm1jb250YWluZXJcIlxuICAgIHJvbGU9XCJtYWluXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIj5cbiAgICAgIDxjOHktc2V0dXA+PC9jOHktc2V0dXA+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxjOHktY29va2llLWJhbm5lcj48L2M4eS1jb29raWUtYmFubmVyPlxuIl19
|
|
166
|
+
}], ctorParameters: () => [{ type: i1.TabsService }, { type: i2.AppStateService }, { type: i3.NavigatorService }, { type: i4.ActionBarService }, { type: i5.HeaderService }, { type: i6.OptionsService }, { type: i7.PluginsResolveService }, { type: i8.SetupService }, { type: i9.LoginService }, { type: i10.TranslationLoaderService }] });
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvYm9vdHN0cmFwL2Jvb3RzdHJhcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9jb3JlL2Jvb3RzdHJhcC9ib290c3RyYXAudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQWMsT0FBTyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUUzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztB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SUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDeEMsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsRUFBRSxDQUFDLHdCQUF3QjthQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsQ0FBQyxNQUFxQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFTywyQkFBMkI7UUFDakMsb0VBQW9FO1FBQ3BFLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzhHQWhLVSxrQkFBa0I7a0dBQWxCLGtCQUFrQixxRENyQi9CLDhqRkE4RkE7OzJGRHpFYSxrQkFBa0I7a0JBSjlCLFNBQVM7K0JBQ0UsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uUmVtb3RlUGx1Z2lucyB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFjdGlvbkJhclNlcnZpY2UgfSBmcm9tICcuLi9hY3Rpb24tYmFyL2FjdGlvbi1iYXIuc2VydmljZSc7XG5pbXBvcnQgeyBPcHRpb25zU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi9vcHRpb25zLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL3VpLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSGVhZGVyU2VydmljZSB9IGZyb20gJy4uL2hlYWRlci9oZWFkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBOYXZpZ2F0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vbmF2aWdhdG9yL25hdmlnYXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IFBsdWdpbnNSZXNvbHZlU2VydmljZSB9IGZyb20gJy4uL3BsdWdpbnMvcGx1Z2lucy1yZXNvbHZlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGx1Z2luc0NvbmZpZyB9IGZyb20gJy4uL3BsdWdpbnMvcGx1Z2lucy5tb2RlbCc7XG5pbXBvcnQgeyBTZXR1cFNlcnZpY2UgfSBmcm9tICcuLi9zZXR1cC9zZXR1cC5zZXJ2aWNlJztcbmltcG9ydCB7IFRhYnNTZXJ2aWNlIH0gZnJvbSAnLi4vdGFicy90YWJzLnNlcnZpY2UnO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBMb2dpblNlcnZpY2UgfSBmcm9tICcuLi9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uTG9hZGVyU2VydmljZSB9IGZyb20gJy4uL2kxOG4vdHJhbnNsYXRpb24tbG9hZGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktYm9vdHN0cmFwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Jvb3RzdHJhcC50ZW1wbGF0ZS5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBCb290c3RyYXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCB7XG4gIG5hdmlnYXRvck9wZW4kOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBub0FwcHNNYXJnaW4kOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICB0YWJzT3JpZW50YXRpb246IHN0cmluZztcbiAgc2hvd1Bvd2VyZWRCeSA9IHRydWU7XG4gIHNob3dMb2dpbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHNob3dMb2FkaW5nSW5kaWNhdG9yJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgc2hvd01haW5WaWV3JDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgc2hvd1NldHVwJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgbG9hZGVkUmVtb3Rlc0NvbnRleHRQYXRoQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgYm9vbGVhbj4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdGFiczogVGFic1NlcnZpY2UsXG4gICAgcHVibGljIHVpOiBBcHBTdGF0ZVNlcnZpY2UsXG4gICAgcHVibGljIG5hdmlnYXRvcjogTmF2aWdhdG9yU2VydmljZSxcbiAgICBwdWJsaWMgYWN0aW9uQmFyOiBBY3Rpb25CYXJTZXJ2aWNlLFxuICAgIHB1YmxpYyBoZWFkZXJTZXJ2aWNlOiBIZWFkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgb3B0aW9uczogT3B0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwbHVnaW5zUmVzb2x2ZTogUGx1Z2luc1Jlc29sdmVTZXJ2aWNlLFxuICAgIHB1YmxpYyBzZXR1cFNlcnZpY2U6IFNldHVwU2VydmljZSxcbiAgICBwdWJsaWMgbG9naW5TZXJ2aWNlOiBMb2dpblNlcnZpY2UsXG4gICAgLy8gb25seSBoZXJlIHRvIGVuc3VyZSB0aGUgc2VydmljZSBpcyBpbnN0YW50aWF0ZWRcbiAgICBwdWJsaWMgdHJhbnNsYXRpb25Mb2FkZXJTZXJ2aWNlOiBUcmFuc2xhdGlvbkxvYWRlclNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5ub0FwcHNNYXJnaW4kID0gdGhpcy5oZWFkZXJTZXJ2aWNlLm1hcCgoeyBuYXYgfSkgPT4gIW5hdi5vcGVuICYmIG5hdi5oaWRkZW5PblN0YXJ0dXApO1xuICAgIHRoaXMudGFic09yaWVudGF0aW9uID0gdGhpcy5vcHRpb25zLnRhYnNIb3Jpem9udGFsID8gJ2hvcml6b250YWwnIDogJ3ZlcnRpY2FsJztcbiAgICB0aGlzLnVpXG4gICAgICAubWFwKCh7IGxhbmcgfSkgPT4gbGFuZylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmFjdGlvbkJhci5yZWZyZXNoKCk7XG4gICAgICB9KTtcbiAgICB0aGlzLnNob3dQb3dlcmVkQnkgPSAhdGhpcy5vcHRpb25zLmdldCgnaGlkZVBvd2VyZWQnKTtcbiAgICBjb25zdCBub0xvZ2luJCA9IG9mKHRoaXMub3B0aW9ucy5nZXQoJ25vTG9naW4nLCBmYWxzZSkpO1xuICAgIHRoaXMuc2hvd0xvZ2luJCA9IGNvbWJpbmVMYXRlc3QoW25vTG9naW4kLCB0aGlzLnVpLmN1cnJlbnRVc2VyXSkucGlwZShcbiAgICAgIG1hcCgoW25vTG9naW4sIGN1cnJlbnRVc2VyXSkgPT4gIW5vTG9naW4gJiYgIWN1cnJlbnRVc2VyKVxuICAgICk7XG4gICAgdGhpcy5zaG93TG9hZGluZ0luZGljYXRvciQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIG5vTG9naW4kLFxuICAgICAgdGhpcy51aS5jdXJyZW50VXNlcixcbiAgICAgIHRoaXMubG9naW5TZXJ2aWNlLmF1dG9tYXRpY0xvZ2luSW5Qcm9ncmVzcyQsXG4gICAgICB0aGlzLnBsdWdpbnNSZXNvbHZlLmFsbFBsdWdpbnNMb2FkZWQkXG4gICAgXSkucGlwZShcbiAgICAgIGRlbGF5KDApLCAvLyBkZWxheSB0byBhdm9pZCBFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZEVycm9yXG4gICAgICBtYXAoXG4gICAgICAgIChbbm9Mb2dpbiwgY3VycmVudFVzZXIsIGF1dG9tYXRpY0xvZ2luSW5Qcm9ncmVzcywgYWxsUGx1Z2luc0xvYWRlZF0pID0+XG4gICAgICAgICAgKCFub0xvZ2luICYmIGF1dG9tYXRpY0xvZ2luSW5Qcm9ncmVzcykgfHwgKGN1cnJlbnRVc2VyICYmICFhbGxQbHVnaW5zTG9hZGVkKVxuICAgICAgKSxcbiAgICAgIHN0YXJ0V2l0aCh0cnVlKVxuICAgICk7XG4gICAgdGhpcy5zaG93TWFpblZpZXckID0gbm9Mb2dpbiQucGlwZShcbiAgICAgIHN3aXRjaE1hcChub0xvZ2luID0+IHtcbiAgICAgICAgaWYgKG5vTG9naW4pIHtcbiAgICAgICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgIHRoaXMudWkuY3VycmVudFVzZXIsXG4gICAgICAgICAgdGhpcy5zZXR1cFNlcnZpY2UuaXNTZXR1cE5lZWRlZCQsXG4gICAgICAgICAgdGhpcy5wbHVnaW5zUmVzb2x2ZS5hbGxQbHVnaW5zTG9hZGVkJFxuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgIG1hcCgoW2N1cnJlbnRVc2VyLCBpc1NldHVwTmVlZGVkLCBhbGxQbHVnaW5zTG9hZGVkXSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnRVc2VyICYmICFpc1NldHVwTmVlZGVkICYmIGFsbFBsdWdpbnNMb2FkZWQ7XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLnNob3dTZXR1cCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnVpLmN1cnJlbnRVc2VyLCB0aGlzLnNldHVwU2VydmljZS5pc1NldHVwTmVlZGVkJF0pLnBpcGUoXG4gICAgICBtYXAoKFtjdXJyZW50VXNlciwgaXNTZXR1cE5lZWRlZF0pID0+IGN1cnJlbnRVc2VyICYmIGlzU2V0dXBOZWVkZWQpXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc3Vic2NyaWJlVG9Mb2FkUmVtb3RlcygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZW1vdGVzKGNvbmZpZzogUGx1Z2luc0NvbmZpZyk6IEFwcGxpY2F0aW9uUmVtb3RlUGx1Z2lucyB8IHVuZGVmaW5lZCB7XG4gICAgbGV0IHNlbGZSZW1vdGVzOiBBcHBsaWNhdGlvblJlbW90ZVBsdWdpbnM7XG5cbiAgICAvLyBXZSBuZWVkIHRvIGltcG9ydCB0aGUgc2VsZiBpbXBvcnRzLCBhcyB0aGlzIGFwcCBpcyBub3QgY29uZmlndXJlZCBhdCBhbGxcbiAgICBpZiAodGhpcy5vcHRpb25zPy5leHBvcnRzKSB7XG4gICAgICBjb25zdCBzZWxmTW9kdWxlTmFtZXM6IHN0cmluZ1tdID0gdGhpcy5vcHRpb25zLmV4cG9ydHNcbiAgICAgICAgLmZpbHRlcihwbHVnaW4gPT4gcGx1Z2luLnNjb3BlID09PSAnc2VsZicpXG4gICAgICAgIC5tYXAocGx1Z2luID0+IHBsdWdpbi5tb2R1bGUgfHwgcGx1Z2luLm5hbWUpO1xuICAgICAgc2VsZlJlbW90ZXMgPSB7IFt0aGlzLm9wdGlvbnMuY29udGV4dFBhdGhdOiBzZWxmTW9kdWxlTmFtZXMgfTtcbiAgICB9XG5cbiAgICAvLyBNZXJnZSBwbHVnaW5zIGNvbmZpZyByZW1vdGVzIGFuZCByZW1vdGVzIHBhc3NlZCBpbiB0aGUgVVJMLlxuICAgIC8vIFJlbW90ZXMgaW4gdGhlIFVSTCBhcmUgdXNlZCBpbiB0aGUgZGV2ZWxvcG1lbnQgcHJvY2Vzcy5cbiAgICBsZXQgcmVtb3RlcyA9IFBsdWdpbnNSZXNvbHZlU2VydmljZS5tZXJnZVJlbW90ZXMoW1xuICAgICAgc2VsZlJlbW90ZXMsXG4gICAgICB0aGlzLm9wdGlvbnM/LnJlbW90ZXMsXG4gICAgICBjb25maWc/LnJlbW90ZXMsXG4gICAgICB0aGlzLnBsdWdpbnNSZXNvbHZlLmxvYWRVcmxSZW1vdGVzKClcbiAgICBdKTtcblxuICAgIC8vIHJlbW92ZSByZW1vdGVzIHRoYXQgYXJlIG9uIHRoZSBleGNsdWRlIGxpc3RcbiAgICByZW1vdGVzID0gUGx1Z2luc1Jlc29sdmVTZXJ2aWNlLnJlbW92ZVJlbW90ZXMocmVtb3RlcywgY29uZmlnPy5leGNsdWRlZFJlbW90ZXMpO1xuXG4gICAgLy8gQmxvY2sgdGhlIHBvc3NpYmlsaXR5IG9mIGxvYWRpbmcgcGx1Z2lucyBtdWx0aXBsZSB0aW1lcy5cbiAgICBPYmplY3Qua2V5cyhyZW1vdGVzIHx8IHt9KS5mb3JFYWNoKGNvbnRleHRQYXRoID0+IHtcbiAgICAgIGlmICh0aGlzLmxvYWRlZFJlbW90ZXNDb250ZXh0UGF0aENhY2hlLmdldChjb250ZXh0UGF0aCkpIHtcbiAgICAgICAgZGVsZXRlIHJlbW90ZXNbY29udGV4dFBhdGhdO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBpc0VtcHR5KHJlbW90ZXMpID8gdW5kZWZpbmVkIDogcmVtb3RlcztcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZFJlbW90ZXMocmVtb3RlczogQXBwbGljYXRpb25SZW1vdGVQbHVnaW5zKSB7XG4gICAgaWYgKCFyZW1vdGVzKSB7XG4gICAgICB0aGlzLmVuc3VyZVdlTWFya1BsdWdpbnNBc0xvYWRlZCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCByZW1vdGVNb2R1bGVzID0gYXdhaXQgdGhpcy5wbHVnaW5zUmVzb2x2ZS5sb2FkUmVtb3RlcyhyZW1vdGVzKTtcblxuICAgIC8vIENhY2hlIGxvYWRlZCByZW1vdGVzLlxuICAgIE9iamVjdC5rZXlzKHJlbW90ZXMpLmZvckVhY2goY29udGV4dFBhdGggPT5cbiAgICAgIHRoaXMubG9hZGVkUmVtb3Rlc0NvbnRleHRQYXRoQ2FjaGUuc2V0KGNvbnRleHRQYXRoLCB0cnVlKVxuICAgICk7XG5cbiAgICBpZiAocmVtb3RlTW9kdWxlcy5sZW5ndGgpIHtcbiAgICAgIHRoaXMucGx1Z2luc1Jlc29sdmUucmVzb2x2ZVJlbW90ZVBsdWdpbnMocmVtb3RlTW9kdWxlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGluIGNhc2UgbG9hZGluZyBhbGwgbW9kdWxlcyB2aWEgcGx1Z2luc1Jlc29sdmUubG9hZFJlbW90ZXMgZmFpbGVkXG4gICAgICAvLyAoZS5nLiBhbGwgcGx1Z2lucyB0aGF0IHdlcmUgaW5zdGFsbGVkIGhhdmUgYmVlbiBkZWxldGVkIGZyb20gdGhlIHRlbmFudClcbiAgICAgIC8vIHdlIHN0aWxsIG5lZWQgdG8gbWFyayBsb2FkaW5nIHRoZSBwbHVnaW5zIGFzIHN1Y2Nlc3NmdWwuXG4gICAgICB0aGlzLmVuc3VyZVdlTWFya1BsdWdpbnNBc0xvYWRlZCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3Vic2NyaWJlVG9Mb2FkUmVtb3RlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vcHRpb25zLmdldCgnbm9QbHVnaW5zJywgZmFsc2UpKSB7XG4gICAgICB0aGlzLmVuc3VyZVdlTWFya1BsdWdpbnNBc0xvYWRlZCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm9wdGlvbnMuZ2V0KCdmb3JjZVVybFJlbW90ZXMnLCBmYWxzZSkpIHtcbiAgICAgIGNvbnN0IHJlbW90ZXMgPSB0aGlzLnBsdWdpbnNSZXNvbHZlLmxvYWRVcmxSZW1vdGVzKCk7XG4gICAgICB0aGlzLmxvYWRSZW1vdGVzKHJlbW90ZXMpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm9wdGlvbnMuZ2V0KCdub0xvZ2luJywgZmFsc2UpKSB7XG4gICAgICB0aGlzLmxvYWRSZW1vdGVzKHRoaXMuZ2V0UmVtb3RlcyhudWxsKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy51aS5jdXJyZW50QXBwbGljYXRpb25Db25maWdcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGNvbmZpZzogUGx1Z2luc0NvbmZpZykgPT4gdGhpcy5sb2FkUmVtb3Rlcyh0aGlzLmdldFJlbW90ZXMoY29uZmlnKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbnN1cmVXZU1hcmtQbHVnaW5zQXNMb2FkZWQoKTogdm9pZCB7XG4gICAgLy8gZW5zdXJlIHdlIGNhbGwgbWFya1BsdWdpbnNBc0xvYWRlZCBvbiB0aGUgRHluYW1pY0NvbXBvbmVudFNlcnZpY2VcbiAgICB0aGlzLnBsdWdpbnNSZXNvbHZlLm1hcmtQbHVnaW5zQXNMb2FkZWQoKTtcbiAgfVxufVxuIiwiPGM4eS1tZXNzYWdlLWJhbm5lclxuICAqbmdJZj1cIiEoc2hvd0xvZ2luJCB8IGFzeW5jKVwiXG4gIGNsYXNzPVwiYzh5LW1lc3NhZ2UtYmFubmVyXCJcbj48L2M4eS1tZXNzYWdlLWJhbm5lcj5cbjxjOHktbG9naW4gKm5nSWY9XCJzaG93TG9naW4kIHwgYXN5bmNcIj48L2M4eS1sb2dpbj5cblxuPGRpdlxuICBjbGFzcz1cImluaXQtbG9hZFwiXG4gICpuZ0lmPVwic2hvd0xvYWRpbmdJbmRpY2F0b3IkIHwgYXN5bmNcIlxuPlxuICA8ZGl2IGNsYXNzPVwic3Bpbm5lci1zbmFrZVwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwibWFpbmxvZ28tcGxhY2Vob2xkZXIgbWFpbmxvZ29cIj48L2Rpdj5cbjwvZGl2PlxuXG48ZGl2XG4gIFtjbGFzcy5oZWFkLW9wZW5dPVwiaGVhZGVyU2VydmljZS5oZWFkZXJPcGVuXCJcbiAgKm5nSWY9XCJzaG93TWFpblZpZXckIHwgYXN5bmNcIlxuPlxuICA8Yzh5LWhlYWRlci1iYXJcbiAgICAqbmdJZj1cIiFoZWFkZXJTZXJ2aWNlLmhpZGVIZWFkZXJcIlxuICAgICNoZWFkZXJcbiAgPjwvYzh5LWhlYWRlci1iYXI+XG4gIDxjOHktZHJhd2VyLW91dGxldFxuICAgIFt0YWJpbmRleF09XCIoaGVhZGVyU2VydmljZS5uYXZpZ2F0b3JPcGVuJCB8IGFzeW5jKSA/ICcwJyA6ICctMSdcIlxuICAgIHJvbGU9XCJyZWdpb25cIlxuICAgIHBvc2l0aW9uPVwibGVmdFwiXG4gICAgZGF0YS1jeT1cImJvb3RzdHJhcC50ZW1wbGF0ZS0tYzh5LWRyYXdlci1vdXRsZXRcIlxuICAgIFtvcGVuXT1cImhlYWRlclNlcnZpY2UubmF2aWdhdG9yT3BlbiQgfCBhc3luY1wiXG4gID48L2M4eS1kcmF3ZXItb3V0bGV0PlxuXG4gIDxkaXYgY2xhc3M9XCJhbGVydHNcIj5cbiAgICA8Yzh5LWFsZXJ0LW91dGxldD48L2M4eS1hbGVydC1vdXRsZXQ+XG4gIDwvZGl2PlxuICA8Yzh5LXRhYnMtb3V0bGV0XG4gICAgcm9sZT1cIm5hdmlnYXRpb25cIlxuICAgICN0YWJzQ29tcG9uZW50XG4gICAgW3RhYnNdPVwidGFicy5pdGVtcyQgfCBhc3luY1wiXG4gICAgW2hhc0hlYWRlcl09XCJ0YWJzQ29tcG9uZW50Lmhhc0hlYWRlclwiXG4gICAgW25hdmlnYXRvck9wZW5dPVwiaGVhZGVyU2VydmljZS5uYXZpZ2F0b3JPcGVuJCB8IGFzeW5jXCJcbiAgICBbb3JpZW50YXRpb25dPVwidGFicy5vcmllbnRhdGlvbiQgfCBhc3luY1wiXG4gID48L2M4eS10YWJzLW91dGxldD5cbiAgPGM4eS1hY3Rpb24tYmFyXG4gICAgcm9sZT1cImdyb3VwXCJcbiAgICAjYWN0aW9uQmFyQ29tcG9uZW50XG4gICAgW25hdmlnYXRvck9wZW5dPVwiaGVhZGVyU2VydmljZS5uYXZpZ2F0b3JPcGVuJCB8IGFzeW5jXCJcbiAgICBbaGFzVGFic109XCJ0YWJzQ29tcG9uZW50Lmhhc1RhYnNcIlxuICAgIFtoYXNIZWFkZXJdPVwidGFic0NvbXBvbmVudC5oYXNIZWFkZXJcIlxuICAgIFtpc1RhYnNIb3Jpem9udGFsXT1cInRhYnNDb21wb25lbnQ/LmlzSG9yaXpvbnRhbFwiXG4gICAgW2l0ZW1zJF09XCJhY3Rpb25CYXIuaXRlbXMkXCJcbiAgPjwvYzh5LWFjdGlvbi1iYXI+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwibWNvbnRhaW5lclwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgb3BlbjogaGVhZGVyU2VydmljZS5uYXZpZ2F0b3JPcGVuJCB8IGFzeW5jLFxuICAgICAgJ25vLWFwcHMtbWFyZ2luJzogbm9BcHBzTWFyZ2luJCB8IGFzeW5jLFxuICAgICAgJ2hvcml6b250YWwtdGFicyc6IHRhYnNDb21wb25lbnQuaXNIb3Jpem9udGFsLFxuICAgICAgJ3ZlcnRpY2FsLXRhYnMnOiAhdGFic0NvbXBvbmVudC5pc0hvcml6b250YWwsXG4gICAgICAnaGFzLXRhYnMnOiB0YWJzQ29tcG9uZW50Lmhhc1RhYnMsXG4gICAgICAnaGFzLWFjdGlvbi1iYXInOiAhYWN0aW9uQmFyQ29tcG9uZW50Py5oaWRkZW4sXG4gICAgICAnaGFzLWhlYWRlcic6IGhlYWRlclNlcnZpY2UuaGlkZUhlYWRlclxuICAgIH1cIlxuICA+XG4gICAgPG1haW5cbiAgICAgIGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCJcbiAgICAgIGlkPVwibWFpbi1jb250ZW50XCJcbiAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgID5cbiAgICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIiNjOHktbGVnYWN5LXZpZXdcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8IS0tIGxlZ2FjeSBuZy12aWV3LCB3aWxsIG5vdCBiZSBtaWdyYXRlZCBhdG0gLS0+XG4gICAgPC9tYWluPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwic2hvd1NldHVwJCB8IGFzeW5jXCI+XG4gIDxjOHktaGVhZGVyLWJhclxuICAgICpuZ0lmPVwiIWhlYWRlclNlcnZpY2UuaGlkZUhlYWRlclwiXG4gICAgW3NpbXBsZV09XCJ0cnVlXCJcbiAgPjwvYzh5LWhlYWRlci1iYXI+XG4gIDxkaXYgY2xhc3M9XCJhbGVydHNcIj5cbiAgICA8Yzh5LWFsZXJ0LW91dGxldD48L2M4eS1hbGVydC1vdXRsZXQ+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJtY29udGFpbmVyXCJcbiAgICByb2xlPVwibWFpblwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkXCI+XG4gICAgICA8Yzh5LXNldHVwPjwvYzh5LXNldHVwPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48Yzh5LWNvb2tpZS1iYW5uZXI+PC9jOHktY29va2llLWJhbm5lcj5cbiJdfQ==
|