@energinet/watt 4.2.2 → 4.2.4
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/data/watt-data-table.component.d.ts +2 -1
- package/esm2022/badge/energinet-watt-badge.js +1 -1
- package/esm2022/badge/energinet-watt-badge.js.map +1 -0
- package/esm2022/badge/index.js +1 -1
- package/esm2022/badge/index.js.map +1 -0
- package/esm2022/badge/watt-badge.component.js +1 -1
- package/esm2022/badge/watt-badge.component.js.map +1 -0
- package/esm2022/breadcrumbs/energinet-watt-breadcrumbs.js +1 -1
- package/esm2022/breadcrumbs/energinet-watt-breadcrumbs.js.map +1 -0
- package/esm2022/breadcrumbs/index.js +1 -1
- package/esm2022/breadcrumbs/index.js.map +1 -0
- package/esm2022/breadcrumbs/watt-breadcrumbs.component.js +1 -1
- package/esm2022/breadcrumbs/watt-breadcrumbs.component.js.map +1 -0
- package/esm2022/button/energinet-watt-button.js +1 -1
- package/esm2022/button/energinet-watt-button.js.map +1 -0
- package/esm2022/button/index.js +1 -1
- package/esm2022/button/index.js.map +1 -0
- package/esm2022/button/watt-button.component.js +1 -1
- package/esm2022/button/watt-button.component.js.map +1 -0
- package/esm2022/card/energinet-watt-card.js +1 -1
- package/esm2022/card/energinet-watt-card.js.map +1 -0
- package/esm2022/card/index.js +1 -1
- package/esm2022/card/index.js.map +1 -0
- package/esm2022/card/watt-card-title.component.js +1 -1
- package/esm2022/card/watt-card-title.component.js.map +1 -0
- package/esm2022/card/watt-card.component.js +1 -1
- package/esm2022/card/watt-card.component.js.map +1 -0
- package/esm2022/checkbox/energinet-watt-checkbox.js +1 -1
- package/esm2022/checkbox/energinet-watt-checkbox.js.map +1 -0
- package/esm2022/checkbox/index.js +1 -1
- package/esm2022/checkbox/index.js.map +1 -0
- package/esm2022/checkbox/watt-checkbox.component.js +1 -1
- package/esm2022/checkbox/watt-checkbox.component.js.map +1 -0
- package/esm2022/chip/energinet-watt-chip.js +1 -1
- package/esm2022/chip/energinet-watt-chip.js.map +1 -0
- package/esm2022/chip/index.js +1 -1
- package/esm2022/chip/index.js.map +1 -0
- package/esm2022/chip/watt-action-chip.component.js +1 -1
- package/esm2022/chip/watt-action-chip.component.js.map +1 -0
- package/esm2022/chip/watt-chip.component.js +1 -1
- package/esm2022/chip/watt-chip.component.js.map +1 -0
- package/esm2022/chip/watt-chip.directive.js +1 -1
- package/esm2022/chip/watt-chip.directive.js.map +1 -0
- package/esm2022/chip/watt-date-chip.component.js +1 -1
- package/esm2022/chip/watt-date-chip.component.js.map +1 -0
- package/esm2022/chip/watt-date-range-chip.component.js +1 -1
- package/esm2022/chip/watt-date-range-chip.component.js.map +1 -0
- package/esm2022/chip/watt-filter-chip.component.js +1 -1
- package/esm2022/chip/watt-filter-chip.component.js.map +1 -0
- package/esm2022/chip/watt-menu-chip.component.js +1 -1
- package/esm2022/chip/watt-menu-chip.component.js.map +1 -0
- package/esm2022/clipboard/energinet-watt-clipboard.js +1 -1
- package/esm2022/clipboard/energinet-watt-clipboard.js.map +1 -0
- package/esm2022/clipboard/index.js +1 -1
- package/esm2022/clipboard/index.js.map +1 -0
- package/esm2022/clipboard/watt-clipboard-intl.service.js +1 -1
- package/esm2022/clipboard/watt-clipboard-intl.service.js.map +1 -0
- package/esm2022/clipboard/watt-copy-to-clipboard.directive.js +1 -1
- package/esm2022/clipboard/watt-copy-to-clipboard.directive.js.map +1 -0
- package/esm2022/code/energinet-watt-code.js +1 -1
- package/esm2022/code/energinet-watt-code.js.map +1 -0
- package/esm2022/code/index.js +1 -1
- package/esm2022/code/index.js.map +1 -0
- package/esm2022/code/watt-code-intl.service.js +1 -1
- package/esm2022/code/watt-code-intl.service.js.map +1 -0
- package/esm2022/code/watt-code.component.js +1 -1
- package/esm2022/code/watt-code.component.js.map +1 -0
- package/esm2022/code/watt-code.worker.token.js +1 -1
- package/esm2022/code/watt-code.worker.token.js.map +1 -0
- package/esm2022/core/breakpoints/breakpoints-observer.js +1 -1
- package/esm2022/core/breakpoints/breakpoints-observer.js.map +1 -0
- package/esm2022/core/breakpoints/breakpoints.js +1 -1
- package/esm2022/core/breakpoints/breakpoints.js.map +1 -0
- package/esm2022/core/breakpoints/energinet-watt-core-breakpoints.js +1 -1
- package/esm2022/core/breakpoints/energinet-watt-core-breakpoints.js.map +1 -0
- package/esm2022/core/breakpoints/index.js +1 -1
- package/esm2022/core/breakpoints/index.js.map +1 -0
- package/esm2022/core/color/color-helper.service.js +1 -1
- package/esm2022/core/color/color-helper.service.js.map +1 -0
- package/esm2022/core/color/colors.js +1 -1
- package/esm2022/core/color/colors.js.map +1 -0
- package/esm2022/core/color/energinet-watt-core-color.js +1 -1
- package/esm2022/core/color/energinet-watt-core-color.js.map +1 -0
- package/esm2022/core/color/index.js +1 -1
- package/esm2022/core/color/index.js.map +1 -0
- package/esm2022/core/date/dayjs.js +1 -1
- package/esm2022/core/date/dayjs.js.map +1 -0
- package/esm2022/core/date/energinet-watt-core-date.js +1 -1
- package/esm2022/core/date/energinet-watt-core-date.js.map +1 -0
- package/esm2022/core/date/index.js +1 -1
- package/esm2022/core/date/index.js.map +1 -0
- package/esm2022/core/date/watt-danish-datetime.providers.js +1 -1
- package/esm2022/core/date/watt-danish-datetime.providers.js.map +1 -0
- package/esm2022/core/date/watt-date-adapter.js +1 -1
- package/esm2022/core/date/watt-date-adapter.js.map +1 -0
- package/esm2022/core/date/watt-date-range.js +1 -1
- package/esm2022/core/date/watt-date-range.js.map +1 -0
- package/esm2022/core/date/watt-date.pipe.js +1 -1
- package/esm2022/core/date/watt-date.pipe.js.map +1 -0
- package/esm2022/core/date/watt-format-date.js +1 -1
- package/esm2022/core/date/watt-format-date.js.map +1 -0
- package/esm2022/core/date/watt-locale.service.js +1 -1
- package/esm2022/core/date/watt-locale.service.js.map +1 -0
- package/esm2022/data/energinet-watt-data.js +1 -1
- package/esm2022/data/energinet-watt-data.js.map +1 -0
- package/esm2022/data/index.js +1 -1
- package/esm2022/data/index.js.map +1 -0
- package/esm2022/data/watt-data-actions.component.js +1 -1
- package/esm2022/data/watt-data-actions.component.js.map +1 -0
- package/esm2022/data/watt-data-filters.component.js +1 -1
- package/esm2022/data/watt-data-filters.component.js.map +1 -0
- package/esm2022/data/watt-data-intl.service.js +1 -1
- package/esm2022/data/watt-data-intl.service.js.map +1 -0
- package/esm2022/data/watt-data-table.component.js +6 -3
- package/esm2022/data/watt-data-table.component.js.map +1 -0
- package/esm2022/datetime-field/energinet-watt-datetime-field.js +1 -1
- package/esm2022/datetime-field/energinet-watt-datetime-field.js.map +1 -0
- package/esm2022/datetime-field/index.js +1 -1
- package/esm2022/datetime-field/index.js.map +1 -0
- package/esm2022/datetime-field/watt-datetime-field.component.js +1 -1
- package/esm2022/datetime-field/watt-datetime-field.component.js.map +1 -0
- package/esm2022/description-list/energinet-watt-description-list.js +1 -1
- package/esm2022/description-list/energinet-watt-description-list.js.map +1 -0
- package/esm2022/description-list/index.js +1 -1
- package/esm2022/description-list/index.js.map +1 -0
- package/esm2022/description-list/watt-description-list-item.component.js +1 -1
- package/esm2022/description-list/watt-description-list-item.component.js.map +1 -0
- package/esm2022/description-list/watt-description-list.component.js +1 -1
- package/esm2022/description-list/watt-description-list.component.js.map +1 -0
- package/esm2022/drawer/energinet-watt-drawer.js +1 -1
- package/esm2022/drawer/energinet-watt-drawer.js.map +1 -0
- package/esm2022/drawer/index.js +1 -1
- package/esm2022/drawer/index.js.map +1 -0
- package/esm2022/drawer/watt-drawer-actions.component.js +1 -1
- package/esm2022/drawer/watt-drawer-actions.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer-content.component.js +1 -1
- package/esm2022/drawer/watt-drawer-content.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer-heading.component.js +1 -1
- package/esm2022/drawer/watt-drawer-heading.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer-topbar.component.js +1 -1
- package/esm2022/drawer/watt-drawer-topbar.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer.component.js +1 -1
- package/esm2022/drawer/watt-drawer.component.js.map +1 -0
- package/esm2022/dropdown/energinet-watt-dropdown.js +1 -1
- package/esm2022/dropdown/energinet-watt-dropdown.js.map +1 -0
- package/esm2022/dropdown/index.js +1 -1
- package/esm2022/dropdown/index.js.map +1 -0
- package/esm2022/dropdown/watt-dropdown-option.js +1 -1
- package/esm2022/dropdown/watt-dropdown-option.js.map +1 -0
- package/esm2022/dropdown/watt-dropdown-value.js +1 -1
- package/esm2022/dropdown/watt-dropdown-value.js.map +1 -0
- package/esm2022/dropdown/watt-dropdown.component.js +1 -1
- package/esm2022/dropdown/watt-dropdown.component.js.map +1 -0
- package/esm2022/dropzone/energinet-watt-dropzone.js +1 -1
- package/esm2022/dropzone/energinet-watt-dropzone.js.map +1 -0
- package/esm2022/dropzone/index.js +1 -1
- package/esm2022/dropzone/index.js.map +1 -0
- package/esm2022/dropzone/watt-dropzone-intl.js +1 -1
- package/esm2022/dropzone/watt-dropzone-intl.js.map +1 -0
- package/esm2022/dropzone/watt-dropzone-validators.js +1 -1
- package/esm2022/dropzone/watt-dropzone-validators.js.map +1 -0
- package/esm2022/dropzone/watt-dropzone.js +1 -1
- package/esm2022/dropzone/watt-dropzone.js.map +1 -0
- package/esm2022/empty-state/energinet-watt-empty-state.js +1 -1
- package/esm2022/empty-state/energinet-watt-empty-state.js.map +1 -0
- package/esm2022/empty-state/icons/explore.js +1 -1
- package/esm2022/empty-state/icons/explore.js.map +1 -0
- package/esm2022/empty-state/icons/no-results.js +1 -1
- package/esm2022/empty-state/icons/no-results.js.map +1 -0
- package/esm2022/empty-state/icons/not-found.js +1 -1
- package/esm2022/empty-state/icons/not-found.js.map +1 -0
- package/esm2022/empty-state/icons/power.js +1 -1
- package/esm2022/empty-state/icons/power.js.map +1 -0
- package/esm2022/empty-state/index.js +1 -1
- package/esm2022/empty-state/index.js.map +1 -0
- package/esm2022/empty-state/watt-empty-state.component.js +1 -1
- package/esm2022/empty-state/watt-empty-state.component.js.map +1 -0
- package/esm2022/energinet-watt.js +1 -1
- package/esm2022/energinet-watt.js.map +1 -0
- package/esm2022/expandable-card/energinet-watt-expandable-card.js +1 -1
- package/esm2022/expandable-card/energinet-watt-expandable-card.js.map +1 -0
- package/esm2022/expandable-card/index.js +1 -1
- package/esm2022/expandable-card/index.js.map +1 -0
- package/esm2022/expandable-card/watt-expandable-card.component.js +1 -1
- package/esm2022/expandable-card/watt-expandable-card.component.js.map +1 -0
- package/esm2022/field/energinet-watt-field.js +1 -1
- package/esm2022/field/energinet-watt-field.js.map +1 -0
- package/esm2022/field/index.js +1 -1
- package/esm2022/field/index.js.map +1 -0
- package/esm2022/field/watt-field-error.component.js +1 -1
- package/esm2022/field/watt-field-error.component.js.map +1 -0
- package/esm2022/field/watt-field-hint.component.js +1 -1
- package/esm2022/field/watt-field-hint.component.js.map +1 -0
- package/esm2022/field/watt-field-intl.service.js +1 -1
- package/esm2022/field/watt-field-intl.service.js.map +1 -0
- package/esm2022/field/watt-field-warning.component.js +1 -1
- package/esm2022/field/watt-field-warning.component.js.map +1 -0
- package/esm2022/field/watt-field.component.js +1 -1
- package/esm2022/field/watt-field.component.js.map +1 -0
- package/esm2022/file-field/energinet-watt-file-field.js +1 -1
- package/esm2022/file-field/energinet-watt-file-field.js.map +1 -0
- package/esm2022/file-field/index.js +1 -1
- package/esm2022/file-field/index.js.map +1 -0
- package/esm2022/file-field/watt-file-field.component.js +1 -1
- package/esm2022/file-field/watt-file-field.component.js.map +1 -0
- package/esm2022/icon/energinet-watt-icon.js +1 -1
- package/esm2022/icon/energinet-watt-icon.js.map +1 -0
- package/esm2022/icon/flags/energinet-watt-icon-flags.js +1 -1
- package/esm2022/icon/flags/energinet-watt-icon-flags.js.map +1 -0
- package/esm2022/icon/flags/index.js +1 -1
- package/esm2022/icon/flags/index.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-ch.js +1 -1
- package/esm2022/icon/flags/watt-flag-ch.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-de.js +1 -1
- package/esm2022/icon/flags/watt-flag-de.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-dk.js +1 -1
- package/esm2022/icon/flags/watt-flag-dk.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-fi.js +1 -1
- package/esm2022/icon/flags/watt-flag-fi.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-gb.js +1 -1
- package/esm2022/icon/flags/watt-flag-gb.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-nl.js +1 -1
- package/esm2022/icon/flags/watt-flag-nl.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-no.js +1 -1
- package/esm2022/icon/flags/watt-flag-no.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-pl.js +1 -1
- package/esm2022/icon/flags/watt-flag-pl.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-se.js +1 -1
- package/esm2022/icon/flags/watt-flag-se.js.map +1 -0
- package/esm2022/icon/flags/watt-flag.js +1 -1
- package/esm2022/icon/flags/watt-flag.js.map +1 -0
- package/esm2022/icon/icon.component.js +1 -1
- package/esm2022/icon/icon.component.js.map +1 -0
- package/esm2022/icon/icons.js +1 -1
- package/esm2022/icon/icons.js.map +1 -0
- package/esm2022/icon/index.js +1 -1
- package/esm2022/icon/index.js.map +1 -0
- package/esm2022/index.js +1 -1
- package/esm2022/index.js.map +1 -0
- package/esm2022/menu/energinet-watt-menu.js +1 -1
- package/esm2022/menu/energinet-watt-menu.js.map +1 -0
- package/esm2022/menu/index.js +1 -1
- package/esm2022/menu/index.js.map +1 -0
- package/esm2022/menu/watt-menu-group.component.js +1 -1
- package/esm2022/menu/watt-menu-group.component.js.map +1 -0
- package/esm2022/menu/watt-menu-item.component.js +1 -1
- package/esm2022/menu/watt-menu-item.component.js.map +1 -0
- package/esm2022/menu/watt-menu-trigger.directive.js +1 -1
- package/esm2022/menu/watt-menu-trigger.directive.js.map +1 -0
- package/esm2022/menu/watt-menu.component.js +1 -1
- package/esm2022/menu/watt-menu.component.js.map +1 -0
- package/esm2022/modal/energinet-watt-modal.js +1 -1
- package/esm2022/modal/energinet-watt-modal.js.map +1 -0
- package/esm2022/modal/index.js +1 -1
- package/esm2022/modal/index.js.map +1 -0
- package/esm2022/modal/watt-modal.component.js +1 -1
- package/esm2022/modal/watt-modal.component.js.map +1 -0
- package/esm2022/modal/watt-modal.service.js +1 -1
- package/esm2022/modal/watt-modal.service.js.map +1 -0
- package/esm2022/paginator/energinet-watt-paginator.js +1 -1
- package/esm2022/paginator/energinet-watt-paginator.js.map +1 -0
- package/esm2022/paginator/index.js +1 -1
- package/esm2022/paginator/index.js.map +1 -0
- package/esm2022/paginator/watt-paginator-intl.service.js +1 -1
- package/esm2022/paginator/watt-paginator-intl.service.js.map +1 -0
- package/esm2022/paginator/watt-paginator.component.js +1 -1
- package/esm2022/paginator/watt-paginator.component.js.map +1 -0
- package/esm2022/phone-field/energinet-watt-phone-field.js +1 -1
- package/esm2022/phone-field/energinet-watt-phone-field.js.map +1 -0
- package/esm2022/phone-field/index.js +1 -1
- package/esm2022/phone-field/index.js.map +1 -0
- package/esm2022/phone-field/watt-phone-field-intl.service.js +1 -1
- package/esm2022/phone-field/watt-phone-field-intl.service.js.map +1 -0
- package/esm2022/phone-field/watt-phone-field.component.js +1 -1
- package/esm2022/phone-field/watt-phone-field.component.js.map +1 -0
- package/esm2022/picker/__shared/energinet-watt-picker-__shared.js +1 -1
- package/esm2022/picker/__shared/energinet-watt-picker-__shared.js.map +1 -0
- package/esm2022/picker/__shared/index.js +1 -1
- package/esm2022/picker/__shared/index.js.map +1 -0
- package/esm2022/picker/__shared/placeholder-mask/watt-placeholder-mask.component.js +1 -1
- package/esm2022/picker/__shared/placeholder-mask/watt-placeholder-mask.component.js.map +1 -0
- package/esm2022/picker/__shared/watt-picker-base.js +1 -1
- package/esm2022/picker/__shared/watt-picker-base.js.map +1 -0
- package/esm2022/picker/__shared/watt-picker-value.js +1 -1
- package/esm2022/picker/__shared/watt-picker-value.js.map +1 -0
- package/esm2022/picker/datepicker/energinet-watt-picker-datepicker.js +1 -1
- package/esm2022/picker/datepicker/energinet-watt-picker-datepicker.js.map +1 -0
- package/esm2022/picker/datepicker/index.js +1 -1
- package/esm2022/picker/datepicker/index.js.map +1 -0
- package/esm2022/picker/datepicker/watt-datepicker-intl.service.js +1 -1
- package/esm2022/picker/datepicker/watt-datepicker-intl.service.js.map +1 -0
- package/esm2022/picker/datepicker/watt-datepicker.component.js +1 -1
- package/esm2022/picker/datepicker/watt-datepicker.component.js.map +1 -0
- package/esm2022/picker/timepicker/energinet-watt-picker-timepicker.js +1 -1
- package/esm2022/picker/timepicker/energinet-watt-picker-timepicker.js.map +1 -0
- package/esm2022/picker/timepicker/index.js +1 -1
- package/esm2022/picker/timepicker/index.js.map +1 -0
- package/esm2022/picker/timepicker/maskito-time-range-mask.js +1 -1
- package/esm2022/picker/timepicker/maskito-time-range-mask.js.map +1 -0
- package/esm2022/picker/timepicker/watt-timepicker.component.js +1 -1
- package/esm2022/picker/timepicker/watt-timepicker.component.js.map +1 -0
- package/esm2022/progress-tracker/energinet-watt-progress-tracker.js +1 -1
- package/esm2022/progress-tracker/energinet-watt-progress-tracker.js.map +1 -0
- package/esm2022/progress-tracker/index.js +1 -1
- package/esm2022/progress-tracker/index.js.map +1 -0
- package/esm2022/progress-tracker/watt-progress-tracker-step.component.js +1 -1
- package/esm2022/progress-tracker/watt-progress-tracker-step.component.js.map +1 -0
- package/esm2022/progress-tracker/watt-progress-tracker.component.js +1 -1
- package/esm2022/progress-tracker/watt-progress-tracker.component.js.map +1 -0
- package/esm2022/query-params/energinet-watt-query-params.js +1 -1
- package/esm2022/query-params/energinet-watt-query-params.js.map +1 -0
- package/esm2022/query-params/index.js +1 -1
- package/esm2022/query-params/index.js.map +1 -0
- package/esm2022/query-params/watt-query-params.directive.js +1 -1
- package/esm2022/query-params/watt-query-params.directive.js.map +1 -0
- package/esm2022/radio/energinet-watt-radio.js +1 -1
- package/esm2022/radio/energinet-watt-radio.js.map +1 -0
- package/esm2022/radio/index.js +1 -1
- package/esm2022/radio/index.js.map +1 -0
- package/esm2022/radio/watt-radio-group.component.js +1 -1
- package/esm2022/radio/watt-radio-group.component.js.map +1 -0
- package/esm2022/radio/watt-radio.component.js +1 -1
- package/esm2022/radio/watt-radio.component.js.map +1 -0
- package/esm2022/search/energinet-watt-search.js +1 -1
- package/esm2022/search/energinet-watt-search.js.map +1 -0
- package/esm2022/search/index.js +1 -1
- package/esm2022/search/index.js.map +1 -0
- package/esm2022/search/watt-search.component.js +1 -1
- package/esm2022/search/watt-search.component.js.map +1 -0
- package/esm2022/segmented-buttons/energinet-watt-segmented-buttons.js +1 -1
- package/esm2022/segmented-buttons/energinet-watt-segmented-buttons.js.map +1 -0
- package/esm2022/segmented-buttons/index.js +1 -1
- package/esm2022/segmented-buttons/index.js.map +1 -0
- package/esm2022/segmented-buttons/watt-segmented-button.component.js +1 -1
- package/esm2022/segmented-buttons/watt-segmented-button.component.js.map +1 -0
- package/esm2022/segmented-buttons/watt-segmented-buttons.component.js +1 -1
- package/esm2022/segmented-buttons/watt-segmented-buttons.component.js.map +1 -0
- package/esm2022/shell/energinet-watt-shell.js +1 -1
- package/esm2022/shell/energinet-watt-shell.js.map +1 -0
- package/esm2022/shell/index.js +1 -1
- package/esm2022/shell/index.js.map +1 -0
- package/esm2022/shell/nav-list/index.js +1 -1
- package/esm2022/shell/nav-list/index.js.map +1 -0
- package/esm2022/shell/nav-list/watt-expand-on-active-link.directive.js +1 -1
- package/esm2022/shell/nav-list/watt-expand-on-active-link.directive.js.map +1 -0
- package/esm2022/shell/nav-list/watt-nav-list-item.component.js +1 -1
- package/esm2022/shell/nav-list/watt-nav-list-item.component.js.map +1 -0
- package/esm2022/shell/nav-list/watt-nav-list.component.js +1 -1
- package/esm2022/shell/nav-list/watt-nav-list.component.js.map +1 -0
- package/esm2022/shell/shell.component.js +1 -1
- package/esm2022/shell/shell.component.js.map +1 -0
- package/esm2022/slide-toggle/energinet-watt-slide-toggle.js +1 -1
- package/esm2022/slide-toggle/energinet-watt-slide-toggle.js.map +1 -0
- package/esm2022/slide-toggle/index.js +1 -1
- package/esm2022/slide-toggle/index.js.map +1 -0
- package/esm2022/slide-toggle/watt-slide-toggle.component.js +1 -1
- package/esm2022/slide-toggle/watt-slide-toggle.component.js.map +1 -0
- package/esm2022/slider/energinet-watt-slider.js +1 -1
- package/esm2022/slider/energinet-watt-slider.js.map +1 -0
- package/esm2022/slider/index.js +1 -1
- package/esm2022/slider/index.js.map +1 -0
- package/esm2022/slider/watt-slider.component.js +1 -1
- package/esm2022/slider/watt-slider.component.js.map +1 -0
- package/esm2022/spinner/energinet-watt-spinner.js +1 -1
- package/esm2022/spinner/energinet-watt-spinner.js.map +1 -0
- package/esm2022/spinner/index.js +1 -1
- package/esm2022/spinner/index.js.map +1 -0
- package/esm2022/spinner/watt-spinner.component.js +1 -1
- package/esm2022/spinner/watt-spinner.component.js.map +1 -0
- package/esm2022/stepper/energinet-watt-stepper.js +1 -1
- package/esm2022/stepper/energinet-watt-stepper.js.map +1 -0
- package/esm2022/stepper/index.js +1 -1
- package/esm2022/stepper/index.js.map +1 -0
- package/esm2022/stepper/watt-stepper-step.component.js +1 -1
- package/esm2022/stepper/watt-stepper-step.component.js.map +1 -0
- package/esm2022/stepper/watt-stepper.component.js +1 -1
- package/esm2022/stepper/watt-stepper.component.js.map +1 -0
- package/esm2022/table/energinet-watt-table.js +1 -1
- package/esm2022/table/energinet-watt-table.js.map +1 -0
- package/esm2022/table/index.js +1 -1
- package/esm2022/table/index.js.map +1 -0
- package/esm2022/table/watt-table-data-source.js +1 -1
- package/esm2022/table/watt-table-data-source.js.map +1 -0
- package/esm2022/table/watt-table-expand-animation.js +1 -1
- package/esm2022/table/watt-table-expand-animation.js.map +1 -0
- package/esm2022/table/watt-table.component.js +15 -4
- package/esm2022/table/watt-table.component.js.map +1 -0
- package/esm2022/tabs/energinet-watt-tabs.js +1 -1
- package/esm2022/tabs/energinet-watt-tabs.js.map +1 -0
- package/esm2022/tabs/index.js +1 -1
- package/esm2022/tabs/index.js.map +1 -0
- package/esm2022/tabs/watt-link-tab.component.js +1 -1
- package/esm2022/tabs/watt-link-tab.component.js.map +1 -0
- package/esm2022/tabs/watt-link-tabs.component.js +1 -1
- package/esm2022/tabs/watt-link-tabs.component.js.map +1 -0
- package/esm2022/tabs/watt-tab.component.js +1 -1
- package/esm2022/tabs/watt-tab.component.js.map +1 -0
- package/esm2022/tabs/watt-tabs-action.component.js +1 -1
- package/esm2022/tabs/watt-tabs-action.component.js.map +1 -0
- package/esm2022/tabs/watt-tabs.component.js +1 -1
- package/esm2022/tabs/watt-tabs.component.js.map +1 -0
- package/esm2022/text-field/energinet-watt-text-field.js +1 -1
- package/esm2022/text-field/energinet-watt-text-field.js.map +1 -0
- package/esm2022/text-field/index.js +1 -1
- package/esm2022/text-field/index.js.map +1 -0
- package/esm2022/text-field/watt-text-field.component.js +1 -1
- package/esm2022/text-field/watt-text-field.component.js.map +1 -0
- package/esm2022/textarea-field/energinet-watt-textarea-field.js +1 -1
- package/esm2022/textarea-field/energinet-watt-textarea-field.js.map +1 -0
- package/esm2022/textarea-field/index.js +1 -1
- package/esm2022/textarea-field/index.js.map +1 -0
- package/esm2022/textarea-field/watt-textarea-field.component.js +1 -1
- package/esm2022/textarea-field/watt-textarea-field.component.js.map +1 -0
- package/esm2022/toast/energinet-watt-toast.js +1 -1
- package/esm2022/toast/energinet-watt-toast.js.map +1 -0
- package/esm2022/toast/index.js +1 -1
- package/esm2022/toast/index.js.map +1 -0
- package/esm2022/toast/watt-toast.component.js +1 -1
- package/esm2022/toast/watt-toast.component.js.map +1 -0
- package/esm2022/toast/watt-toast.service.js +1 -1
- package/esm2022/toast/watt-toast.service.js.map +1 -0
- package/esm2022/tooltip/energinet-watt-tooltip.js +1 -1
- package/esm2022/tooltip/energinet-watt-tooltip.js.map +1 -0
- package/esm2022/tooltip/index.js +1 -1
- package/esm2022/tooltip/index.js.map +1 -0
- package/esm2022/tooltip/watt-tooltip.component.js +1 -1
- package/esm2022/tooltip/watt-tooltip.component.js.map +1 -0
- package/esm2022/tooltip/watt-tooltip.directive.js +1 -1
- package/esm2022/tooltip/watt-tooltip.directive.js.map +1 -0
- package/esm2022/utils/css/css-custom-properties.service.js +1 -1
- package/esm2022/utils/css/css-custom-properties.service.js.map +1 -0
- package/esm2022/utils/css/energinet-watt-utils-css.js +1 -1
- package/esm2022/utils/css/energinet-watt-utils-css.js.map +1 -0
- package/esm2022/utils/css/index.js +1 -1
- package/esm2022/utils/css/index.js.map +1 -0
- package/esm2022/utils/intersection-observer/energinet-watt-utils-intersection-observer.js +1 -1
- package/esm2022/utils/intersection-observer/energinet-watt-utils-intersection-observer.js.map +1 -0
- package/esm2022/utils/intersection-observer/index.js +1 -1
- package/esm2022/utils/intersection-observer/index.js.map +1 -0
- package/esm2022/utils/intersection-observer/watt-intersection-observer.service.js +1 -1
- package/esm2022/utils/intersection-observer/watt-intersection-observer.service.js.map +1 -0
- package/esm2022/utils/resize-observer/energinet-watt-utils-resize-observer.js +1 -1
- package/esm2022/utils/resize-observer/energinet-watt-utils-resize-observer.js.map +1 -0
- package/esm2022/utils/resize-observer/index.js +1 -1
- package/esm2022/utils/resize-observer/index.js.map +1 -0
- package/esm2022/utils/resize-observer/watt-resize-observer.directive.js +1 -1
- package/esm2022/utils/resize-observer/watt-resize-observer.directive.js.map +1 -0
- package/esm2022/utils/resize-observer/watt-resize-observer.service.js +1 -1
- package/esm2022/utils/resize-observer/watt-resize-observer.service.js.map +1 -0
- package/esm2022/validation-message/energinet-watt-validation-message.js +1 -1
- package/esm2022/validation-message/energinet-watt-validation-message.js.map +1 -0
- package/esm2022/validation-message/index.js +1 -1
- package/esm2022/validation-message/index.js.map +1 -0
- package/esm2022/validation-message/watt-validation-message.component.js +1 -1
- package/esm2022/validation-message/watt-validation-message.component.js.map +1 -0
- package/esm2022/validators/energinet-watt-validators.js +1 -1
- package/esm2022/validators/energinet-watt-validators.js.map +1 -0
- package/esm2022/validators/index.js +1 -1
- package/esm2022/validators/index.js.map +1 -0
- package/esm2022/validators/watt-range.validators.js +1 -1
- package/esm2022/validators/watt-range.validators.js.map +1 -0
- package/esm2022/vater/energinet-watt-vater.js +1 -1
- package/esm2022/vater/energinet-watt-vater.js.map +1 -0
- package/esm2022/vater/index.js +1 -1
- package/esm2022/vater/index.js.map +1 -0
- package/esm2022/vater/types.js +1 -1
- package/esm2022/vater/types.js.map +1 -0
- package/esm2022/vater/vater-flex.component.js +1 -1
- package/esm2022/vater/vater-flex.component.js.map +1 -0
- package/esm2022/vater/vater-layout.directive.js +1 -1
- package/esm2022/vater/vater-layout.directive.js.map +1 -0
- package/esm2022/vater/vater-spacer.component.js +1 -1
- package/esm2022/vater/vater-spacer.component.js.map +1 -0
- package/esm2022/vater/vater-stack.component.js +1 -1
- package/esm2022/vater/vater-stack.component.js.map +1 -0
- package/esm2022/vater/vater-utility.directive.js +1 -1
- package/esm2022/vater/vater-utility.directive.js.map +1 -0
- package/esm2022/year-field/energinet-watt-year-field.js +1 -1
- package/esm2022/year-field/energinet-watt-year-field.js.map +1 -0
- package/esm2022/year-field/index.js +1 -1
- package/esm2022/year-field/index.js.map +1 -0
- package/esm2022/year-field/watt-year-field.component.js +1 -1
- package/esm2022/year-field/watt-year-field.component.js.map +1 -0
- package/esm2022/yearmonth-field/energinet-watt-yearmonth-field.js +1 -1
- package/esm2022/yearmonth-field/energinet-watt-yearmonth-field.js.map +1 -0
- package/esm2022/yearmonth-field/index.js +1 -1
- package/esm2022/yearmonth-field/index.js.map +1 -0
- package/esm2022/yearmonth-field/watt-yearmonth-field.component.js +1 -1
- package/esm2022/yearmonth-field/watt-yearmonth-field.component.js.map +1 -0
- package/esm2022/yearmonth-field/year-month.js +1 -1
- package/esm2022/yearmonth-field/year-month.js.map +1 -0
- package/package.json +110 -110
- package/table/watt-table.component.d.ts +6 -1
|
@@ -186,4 +186,4 @@ export const WATT_DRAWER = [
|
|
|
186
186
|
WattDrawerContentComponent,
|
|
187
187
|
WattDrawerHeadingComponent,
|
|
188
188
|
];
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0dC1kcmF3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy93YXR0L3BhY2thZ2UvZHJhd2VyL3dhdHQtZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xpYnMvd2F0dC9wYWNrYWdlL2RyYXdlci93YXR0LWRyYXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUFDakI7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsWUFBWTtBQUNaLE9BQU8sRUFDTCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBRVQsU0FBUyxFQUNULFVBQVUsRUFDVix1QkFBdUIsRUFDdkIsTUFBTSxFQUNOLFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQ0wsa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNwQixtQkFBbUIsRUFDbkIscUJBQXFCLEdBQ3RCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFL0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7QUFJN0UsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLENBQUM7QUFDbkMsTUFBTSx1QkFBdUIsR0FBRztJQUM5QixTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxlQUFlLENBQUM7SUFDaEQsT0FBTyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQztDQUNwQixDQUFDO0FBc0JGLE1BQU0sT0FBTyxtQkFBbUI7SUFDdEIsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1QyxPQUFPLEdBQUcsWUFBWSxDQUFDLDBCQUEwQiwyQ0FBSSxJQUFJLEVBQUUsVUFBVSxPQUFsQixFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsR0FBQyxDQUFDO0lBQ3pFLE9BQU8sR0FBRyxZQUFZLENBQUMsMEJBQTBCLDJDQUFJLElBQUksRUFBRSxVQUFVLE9BQWxCLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFDLENBQUM7SUFDekUsTUFBTSxHQUFHLFlBQVksQ0FBQyx5QkFBeUIsMENBQUksSUFBSSxFQUFFLFVBQVUsT0FBbEIsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUMsQ0FBQztJQUN2RSxZQUFZLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoRCxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDekIsY0FBYyxHQUFHLE1BQU0sQ0FBQyxLQUFLLDBEQUFDLENBQUM7SUFFdkMsOEVBQThFO0lBQzlFLHlFQUF5RTtJQUNqRSxNQUFNLENBQUMsYUFBYSxDQUF1QjtJQUVuRCwwREFBMEQ7SUFDMUQsSUFBSSxHQUFHLEtBQUssQ0FBaUIsUUFBUSxnREFBQyxDQUFDO0lBRXZDOzs7T0FHRztJQUNILFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyw0Q0FBSSxTQUFTLEVBQUUsZ0JBQWdCLE9BQTdCLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEdBQUMsQ0FBQztJQUV6RDs7OztPQUlHO0lBQ0gsR0FBRyxHQUFHLEtBQUsseURBQVcsQ0FBQztJQUV2QixzREFBc0Q7SUFDdEQsT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLG1EQUFDLENBQUM7SUFFdkIsdUVBQXVFO0lBQ3ZFLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxLQUFLLDhEQUFDLENBQUM7SUFFbEMsaURBQWlEO0lBQ2pELE1BQU0sR0FBRyxNQUFNLEVBQVEsQ0FBQztJQUV4QixtQ0FBbUM7SUFDbkMsTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7SUFFMUM7UUFDRSxpQkFBaUIsQ0FBQztZQUNoQixJQUFJLEVBQUUsR0FBRyxFQUFFO2dCQUNULElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDWCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7b0JBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO29CQUFFLE9BQU87Z0JBQ3ZDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7b0JBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7d0JBQUUsT0FBTztvQkFDM0IsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztvQkFDdkYsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztvQkFDdkYsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztnQkFDeEYsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsNkNBQTZDO1FBQzdDLHlFQUF5RTtRQUN6RSxFQUFFO1FBQ0YsbUVBQW1FO1FBQ25FLHNGQUFzRjtRQUN0Rix3Q0FBd0M7UUFDeEMseUZBQXlGO1FBQ3pGLEVBQUU7UUFDRixtR0FBbUc7UUFDbkcscUZBQXFGO1FBQ3JGLG1HQUFtRztRQUNuRyx1RkFBdUY7UUFDdkYsNEdBQTRHO1FBQzVHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFWixRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLG1CQUFtQixDQUFDLEtBQWlCO1FBQ25DLDREQUE0RDtRQUM1RCxJQUFJLElBQUksQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPO1FBRWxDLCtEQUErRDtRQUMvRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLElBQUksYUFBYTtZQUFFLE9BQU87UUFFMUIseUVBQXlFO1FBQ3pFLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDdkUsTUFBTSxjQUFjLEdBQUcsa0JBQWtCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFjLENBQUMsQ0FBQztRQUN6RSxJQUFJLGNBQWM7WUFBRSxPQUFPO1FBRTNCLDJDQUEyQztRQUMzQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsY0FBYztJQUNkLG1CQUFtQjtRQUNqQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsY0FBYztJQUNkLFdBQVc7UUFDVCxJQUFJLG1CQUFtQixDQUFDLGFBQWEsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUMvQyxtQkFBbUIsQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDO1FBQ2hELENBQUM7SUFDSCxDQUFDO0lBRUQsaUZBQWlGO0lBQ2pGLElBQUk7UUFDRiwrREFBK0Q7UUFDL0QsNERBQTREO1FBQzVELG1EQUFtRDtRQUNuRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFFN0Qsd0VBQXdFO1FBQ3hFLHNFQUFzRTtRQUN0RSwwRUFBMEU7UUFDMUUsdUVBQXVFO1FBQ3ZFLHNEQUFzRDtRQUN0RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVOLHNGQUFzRjtRQUN0RixvRkFBb0Y7UUFDcEYsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU87UUFDbkMsbUJBQW1CLENBQUMsYUFBYSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQzNDLG1CQUFtQixDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDekMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELHlCQUF5QjtJQUN6QixLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQUUsT0FBTztRQUNwQyxtQkFBbUIsQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDO1FBQzlDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7dUdBeklVLG1CQUFtQjsyRkFBbkIsbUJBQW1CLGk1QkFHQywwQkFBMEIsMkJBQVUsVUFBVSx1RUFDOUMsMEJBQTBCLDJCQUFVLFVBQVUsc0VBQy9DLHlCQUF5QiwyQkFBVSxVQUFVLDJGQUNqQyxZQUFZLGdFQ3ZGeEQsNjNEQXlEQSxnbUJEY0ksVUFBVSx5TEFDVixnQkFBZ0IseWRBQ2hCLGtCQUFrQiwyRkFDbEIsbUJBQW1CLHVFQUNuQixvQkFBb0IseUVBRXBCLG1CQUFtQixzSUFDbkIsb0JBQW9COzsyRkFHWCxtQkFBbUI7a0JBcEIvQixTQUFTO3NDQUNTLHVCQUF1QixDQUFDLE1BQU0sWUFDckMsYUFBYSxRQUdqQjt3QkFDSixrQkFBa0IsRUFBRSw2QkFBNkI7d0JBQ2pELGtCQUFrQixFQUFFLHVCQUF1QjtxQkFDNUMsV0FDUTt3QkFDUCxVQUFVO3dCQUNWLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLG9CQUFvQjtxQkFDckI7c0hBSzhCLDBCQUEwQixRQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxzRkFDaEQsMEJBQTBCLFFBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLHFGQUNqRCx5QkFBeUIsUUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsd0ZBQ25DLFlBQVk7QUFzSXhELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUN6QixtQkFBbUI7SUFDbkIseUJBQXlCO0lBQ3pCLDBCQUEwQjtJQUMxQiwwQkFBMEI7SUFDMUIsMEJBQTBCO0NBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gTGljZW5zZVxuLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjAgRW5lcmdpbmV0IERhdGFIdWIgQS9TXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZTJcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLy8jZW5kcmVnaW9uXG5pbXBvcnQge1xuICBpbmplY3QsXG4gIGlucHV0LFxuICBvdXRwdXQsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICB2aWV3Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBzaWduYWwsXG4gIHVudHJhY2tlZCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgY29udGVudENoaWxkLFxuICBlZmZlY3QsXG4gIGFmdGVyUmVuZGVyRWZmZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgT3ZlcmxheUNvbnRhaW5lciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENka1RyYXBGb2N1cywgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcblxuaW1wb3J0IHtcbiAgVmF0ZXJGbGV4Q29tcG9uZW50LFxuICBWYXRlclNwYWNlckNvbXBvbmVudCxcbiAgVmF0ZXJTdGFja0NvbXBvbmVudCxcbiAgVmF0ZXJVdGlsaXR5RGlyZWN0aXZlLFxufSBmcm9tICdAZW5lcmdpbmV0L3dhdHQvdmF0ZXInO1xuaW1wb3J0IHsgV2F0dEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BlbmVyZ2luZXQvd2F0dC9idXR0b24nO1xuaW1wb3J0IHsgV2F0dFNwaW5uZXJDb21wb25lbnQgfSBmcm9tICdAZW5lcmdpbmV0L3dhdHQvc3Bpbm5lcic7XG5cbmltcG9ydCB7IFdhdHREcmF3ZXJUb3BiYXJDb21wb25lbnQgfSBmcm9tICcuL3dhdHQtZHJhd2VyLXRvcGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2F0dERyYXdlckFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL3dhdHQtZHJhd2VyLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IFdhdHREcmF3ZXJDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi93YXR0LWRyYXdlci1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXYXR0RHJhd2VySGVhZGluZ0NvbXBvbmVudCB9IGZyb20gJy4vd2F0dC1kcmF3ZXItaGVhZGluZy5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBXYXR0RHJhd2VyU2l6ZSA9ICdzbWFsbCcgfCAnbm9ybWFsJyB8ICdsYXJnZSc7XG5cbmNvbnN0IEFQUEVBUl9BTklNQVRJT05fREVMQVkgPSAyNTA7XG5jb25zdCBBUFBFQVJfQU5JTUFUSU9OX0ZSQU1FUyA9IHtcbiAgdHJhbnNmb3JtOiBbJ3RyYW5zbGF0ZVgoMzBweCknLCAndHJhbnNsYXRlWCgwKSddLFxuICBvcGFjaXR5OiBbJzAnLCAnMSddLFxufTtcblxuQENvbXBvbmVudCh7XG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzZWxlY3RvcjogJ3dhdHQtZHJhd2VyJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2F0dC1kcmF3ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3dhdHQtZHJhd2VyLmNvbXBvbmVudC5odG1sJyxcbiAgaG9zdDoge1xuICAgICcoZG9jdW1lbnQ6Y2xpY2spJzogJ2hhbmRsZURvY3VtZW50Q2xpY2soJGV2ZW50KScsXG4gICAgJyhrZXlkb3duLmVzY2FwZSknOiAnaGFuZGxlRXNjS2V5UHJlc3NlZCgpJyxcbiAgfSxcbiAgaW1wb3J0czogW1xuICAgIEExMXlNb2R1bGUsXG4gICAgTWF0U2lkZW5hdk1vZHVsZSxcbiAgICBWYXRlckZsZXhDb21wb25lbnQsXG4gICAgVmF0ZXJTdGFja0NvbXBvbmVudCxcbiAgICBWYXRlclNwYWNlckNvbXBvbmVudCxcbiAgICBWYXRlclV0aWxpdHlEaXJlY3RpdmUsXG4gICAgV2F0dEJ1dHRvbkNvbXBvbmVudCxcbiAgICBXYXR0U3Bpbm5lckNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgV2F0dERyYXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBvdmVybGF5Q29udGFpbmVyID0gaW5qZWN0KE92ZXJsYXlDb250YWluZXIpO1xuICBwcml2YXRlIGNvbnRlbnQgPSBjb250ZW50Q2hpbGQoV2F0dERyYXdlckNvbnRlbnRDb21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KTtcbiAgcHJpdmF0ZSBoZWFkaW5nID0gY29udGVudENoaWxkKFdhdHREcmF3ZXJIZWFkaW5nQ29tcG9uZW50LCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG4gIHByaXZhdGUgdG9wQmFyID0gY29udGVudENoaWxkKFdhdHREcmF3ZXJUb3BiYXJDb21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KTtcbiAgcHJpdmF0ZSBjZGtUcmFwRm9jdXMgPSB2aWV3Q2hpbGQucmVxdWlyZWQoQ2RrVHJhcEZvY3VzKTtcbiAgcHJpdmF0ZSBieXBhc3NDbGlja0NoZWNrID0gZmFsc2U7XG4gIHByaXZhdGUgd3JpdGFibGVJc09wZW4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIC8vIE11bHRpcGxlIGRyYXdlcnMgb3BlbiBhdCB0aGUgc2FtZSB0aW1lIGFyZSBub3QgYWxsb3dlZC4gVGhpcyBrZWVwcyB0cmFjayBvZlxuICAvLyB0aGUgY3VycmVudGx5IG9wZW5lZCBkcmF3ZXIgYW5kIGNsb3NlcyBpdCB3aGVuIGEgbmV3IGRyYXdlciBpcyBvcGVuZWQuXG4gIHByaXZhdGUgc3RhdGljIGN1cnJlbnREcmF3ZXI/OiBXYXR0RHJhd2VyQ29tcG9uZW50O1xuXG4gIC8qKiBVc2VkIHRvIGFkanVzdCBkcmF3ZXIgc2l6ZSB0byBiZXN0IGZpdCB0aGUgY29udGVudC4gKi9cbiAgc2l6ZSA9IGlucHV0PFdhdHREcmF3ZXJTaXplPignbm9ybWFsJyk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGRyYXdlciBzaG91bGQgb3BlbiBhdXRvbWF0aWNhbGx5LiBJZiBga2V5YCBpcyBwcm92aWRlZCBhbmRcbiAgICogYGF1dG9PcGVuYCBpcyB0cnVlLCB0aGUgZHJhd2VyIHdpbGwgb3BlbiBldmVyeSB0aW1lIHRoZSBrZXkgY2hhbmdlcy5cbiAgICovXG4gIGF1dG9PcGVuID0gaW5wdXQoZmFsc2UsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pO1xuXG4gIC8qKlxuICAgKiBVc2VkIHRvIHRyYWNrIHRoZSBjdXJyZW50IGRyYXdlciB3aGVuIHJldXNpbmcgdGhlIHNhbWUgZHJhd2VyIGluc3RhbmNlIHRvXG4gICAqIHJlbmRlciBkaWZmZXJlbnQgY29udGVudC4gVGhpcyBpcyByZXF1aXJlZCB3aGVuIGludGVyYWN0aW9ucyBvdXRzaWRlIHRoZVxuICAgKiBkcmF3ZXIgc2hvdWxkIHJlc3VsdCBpbiB1cGRhdGluZyB0aGUgZHJhd2VyJ3MgY29udGVudCBpbnN0ZWFkIG9mIGNsb3NpbmcgaXQuXG4gICAqL1xuICBrZXkgPSBpbnB1dDx1bmtub3duPigpO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBkcmF3ZXIgc2hvdWxkIHNob3cgYSBsb2FkaW5nIHN0YXRlLiAqL1xuICBsb2FkaW5nID0gaW5wdXQoZmFsc2UpO1xuXG4gIC8qKiBBZGRzIGEgYnJpZWYgYW5pbWF0aW9uIHRvIGluZGljYXRlIHRoYXQgdGhlIGNvbnRlbnQgaGFzIGNoYW5nZWQuICovXG4gIGFuaW1hdGVPbktleUNoYW5nZSA9IGlucHV0KGZhbHNlKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGRyYXdlciBpcyBmdWxseSBjbG9zZWQuICovXG4gIGNsb3NlZCA9IG91dHB1dDx2b2lkPigpO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBkcmF3ZXIgaXMgb3Blbi4gICovXG4gIGlzT3BlbiA9IHRoaXMud3JpdGFibGVJc09wZW4uYXNSZWFkb25seSgpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGFmdGVyUmVuZGVyRWZmZWN0KHtcbiAgICAgIHJlYWQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5rZXkoKTtcbiAgICAgICAgaWYgKHRoaXMuYXV0b09wZW4oKSkgdGhpcy5vcGVuKCk7XG4gICAgICAgIGlmICghdGhpcy5hbmltYXRlT25LZXlDaGFuZ2UoKSkgcmV0dXJuO1xuICAgICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICAgIGlmICghdGhpcy5pc09wZW4oKSkgcmV0dXJuO1xuICAgICAgICAgIHRoaXMuY29udGVudCgpPy5uYXRpdmVFbGVtZW50LmFuaW1hdGUoQVBQRUFSX0FOSU1BVElPTl9GUkFNRVMsIEFQUEVBUl9BTklNQVRJT05fREVMQVkpO1xuICAgICAgICAgIHRoaXMuaGVhZGluZygpPy5uYXRpdmVFbGVtZW50LmFuaW1hdGUoQVBQRUFSX0FOSU1BVElPTl9GUkFNRVMsIEFQUEVBUl9BTklNQVRJT05fREVMQVkpO1xuICAgICAgICAgIHRoaXMudG9wQmFyKCk/Lm5hdGl2ZUVsZW1lbnQuYW5pbWF0ZShBUFBFQVJfQU5JTUFUSU9OX0ZSQU1FUywgQVBQRUFSX0FOSU1BVElPTl9ERUxBWSk7XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIFdobyBkb2Vzbid0IGxvdmUgYSBnb29kIHdvcmthcm91bmQsIHJpZ2h0P1xuICAgIC8vIExldCdzIG1ha2UgdGhlIGRyYXdlciByZXNpemUgaXRzZWxmIHdoZW5ldmVyIHRoZSBgc2l6ZWAgaW5wdXQgY2hhbmdlcy5cbiAgICAvL1xuICAgIC8vIFRoZSBgbWF0LWRyYXdlcmAgY29tcG9uZW50IG9mZmVycyB0aGUgYGF1dG9zaXplYCBpbnB1dCBmb3IgdGhpcy5cbiAgICAvLyBIb3dldmVyLCBpdCBpcyBzcGVjaWZpY2FsbHkgbWVudGlvbmVkIHRoYXQgdGhpcyBvcHRpb25zIHNob3VsZCBiZSB1c2VkIGF0IG93biByaXNrLFxuICAgIC8vIGFzIGl0IGNvdWxkIGNhdXNlIHBlcmZvcm1hbmNlIGlzc3Vlcy5cbiAgICAvLyBTZWU6IGh0dHBzOi8vbWF0ZXJpYWwuYW5ndWxhci5kZXYvY29tcG9uZW50cy9zaWRlbmF2L292ZXJ2aWV3I3Jlc2l6aW5nLWFuLW9wZW4tc2lkZW5hdlxuICAgIC8vXG4gICAgLy8gU28gdG8gd29yayBhcm91bmQgdGhpcywgYSBzaW1wbGUgYHJlc2l6ZWAgZXZlbnQgaXMgZGlzcGF0Y2hlZCB3aGVuZXZlciB0aGUgYHNpemVgIGlucHV0IGNoYW5nZXMuXG4gICAgLy8gVGhpcyB3b3JrcyBiZWNhdXNlIGBtYXQtZHJhd2VyYCB1c2VzIGBWaWV3cG9ydFJ1bGVyYCBmcm9tIGBAYW5ndWxhci9jZGsvc2Nyb2xsaW5nYFxuICAgIC8vIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9ibG9iLzE5LjIuMS9zcmMvbWF0ZXJpYWwvc2lkZW5hdi9kcmF3ZXIudHMjTDgxMS1MODE2KVxuICAgIC8vIHRvIGxpc3RlbiB0byBgcmVzaXplYCBldmVudHMgYW5kIHJlLWNhbGN1bGF0ZXMgbWFyZ2lucyBhcHBsaWVkIHRvIHRoZSBkcmF3ZXIgY29udGVudFxuICAgIC8vIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9ibG9iLzIwLjAuMC1yYy4yL3NyYy9jZGsvc2Nyb2xsaW5nL3ZpZXdwb3J0LXJ1bGVyLnRzI0w1MC1MNTMpLlxuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICB0aGlzLnNpemUoKTtcblxuICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ3Jlc2l6ZScsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBoYW5kbGVEb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgLy8gUHJldmVudCBjbG9zaW5nIHdoZW4gdGhlIGNsaWNrIHRyaWdnZXJlZCBhIGNhbGwgdG8gYG9wZW5gXG4gICAgaWYgKHRoaXMuYnlwYXNzQ2xpY2tDaGVjaykgcmV0dXJuO1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrIG9yaWdpbmF0ZWQgZnJvbSB3aXRoaW4gdGhlIGRyYXdlciBlbGVtZW50XG4gICAgY29uc3QgaXNDbGlja0luc2lkZSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCk7XG4gICAgaWYgKGlzQ2xpY2tJbnNpZGUpIHJldHVybjtcblxuICAgIC8vIENoZWNrIGlmIHRoZSBjbGljayBvcmlnaW5hdGVkIGZyb20gd2l0aGluIGFuIG92ZXJsYXkgKHN1Y2ggYXMgYSBtb2RhbClcbiAgICBjb25zdCBvdmVybGF5Q29udGFpbmVyRWwgPSB0aGlzLm92ZXJsYXlDb250YWluZXIuZ2V0Q29udGFpbmVyRWxlbWVudCgpO1xuICAgIGNvbnN0IGlzT3ZlcmxheUNsaWNrID0gb3ZlcmxheUNvbnRhaW5lckVsLmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKTtcbiAgICBpZiAoaXNPdmVybGF5Q2xpY2spIHJldHVybjtcblxuICAgIC8vIENsaWNrIGlzIGFsbG93ZWQgdG8gY2xvc2UgdGhlIGRyYXdlciBub3dcbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBoYW5kbGVFc2NLZXlQcmVzc2VkKCkge1xuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmIChXYXR0RHJhd2VyQ29tcG9uZW50LmN1cnJlbnREcmF3ZXIgPT09IHRoaXMpIHtcbiAgICAgIFdhdHREcmF3ZXJDb21wb25lbnQuY3VycmVudERyYXdlciA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAvKiogT3BlbnMgdGhlIGRyYXdlci4gU3Vic2VxdWVudCBjYWxscyBhcmUgaWdub3JlZCB3aGlsZSB0aGUgZHJhd2VyIGlzIG9wZW5lZC4gKi9cbiAgb3BlbigpIHtcbiAgICAvLyBUcmFwIGZvY3VzIHdoZW5ldmVyIG9wZW4gaXMgY2FsbGVkLiBUaGlzIGRvZXNuJ3Qgd29yayBvbiB0aGVcbiAgICAvLyBpbml0aWFsIGNhbGwgKHdoZW4gZmlyc3Qgb3BlbmluZyB0aGUgZHJhd2VyKSwgYnV0IHRoaXMgaXNcbiAgICAvLyBoYW5kbGVkIGJ5IHRoZSBhdXRvRm9jdXMgcHJvcGVydHkgb24gbWF0LWRyYXdlci5cbiAgICB0aGlzLmNka1RyYXBGb2N1cygpLmZvY3VzVHJhcC5mb2N1c0luaXRpYWxFbGVtZW50V2hlblJlYWR5KCk7XG5cbiAgICAvLyBEaXNhYmxlIGNsaWNrIG91dHNpZGUgY2hlY2sgdW50aWwgdGhlIGN1cnJlbnQgZXZlbnQgbG9vcCBpcyBmaW5pc2hlZC5cbiAgICAvLyBUaGlzIG1pZ2h0IHNlZW0gaGFja2lzaCwgYnV0IHRoZSBvcmRlciBvZiBleGVjdXRpb24gaXMgc3RhYmxlIGhlcmUuXG4gICAgLy8gQWxzbyBwcmV2ZW50cyBhbiBpc3N1ZSB3aGVuIHRoZSBkcmF3ZXIgaXMgZGVzdHJveWVkIGFuZCB0aGVuIHJlY3JlYXRlZCxcbiAgICAvLyBjYXVzaW5nIHRoZSBjbGljayBvdXRzaWRlIGNoZWNrIHRvIHRyaWdnZXIgaW1tZWRpYXRlbHkgaWYgdGhlIGRyYXdlclxuICAgIC8vIGlzIGNyZWF0ZWQgYW5kIG9wZW5lZCBpbiByZXNwb25zZSB0byBhIGNsaWNrIGV2ZW50LlxuICAgIHRoaXMuYnlwYXNzQ2xpY2tDaGVjayA9IHRydWU7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmJ5cGFzc0NsaWNrQ2hlY2sgPSBmYWxzZTtcbiAgICB9LCAwKTtcblxuICAgIC8vIFdpdGhvdXQgYHVudHJhY2tlZGAsIGlmIHRoaXMgaXMgY2FsbGVkIGluIGEgcmVhY3RpdmUgY29udGV4dCAoc3VjaCBhcyBhbiBgZWZmZWN0YCksXG4gICAgLy8gaXQgd2lsbCBiZSB0cmlnZ2VyZWQgdHdpY2UgZHVlIHRvIGBpc09wZW5gIGJlaW5nIHRyYWNrZWQgYW5kIGltbWVkaWF0ZWx5IHVwZGF0ZWQuXG4gICAgaWYgKHVudHJhY2tlZCh0aGlzLmlzT3BlbikpIHJldHVybjtcbiAgICBXYXR0RHJhd2VyQ29tcG9uZW50LmN1cnJlbnREcmF3ZXI/LmNsb3NlKCk7XG4gICAgV2F0dERyYXdlckNvbXBvbmVudC5jdXJyZW50RHJhd2VyID0gdGhpcztcbiAgICB0aGlzLndyaXRhYmxlSXNPcGVuLnNldCh0cnVlKTtcbiAgfVxuXG4gIC8qKiBDbG9zZXMgdGhlIGRyYXdlci4gKi9cbiAgY2xvc2UoKSB7XG4gICAgaWYgKCF1bnRyYWNrZWQodGhpcy5pc09wZW4pKSByZXR1cm47XG4gICAgV2F0dERyYXdlckNvbXBvbmVudC5jdXJyZW50RHJhd2VyID0gdW5kZWZpbmVkO1xuICAgIHRoaXMud3JpdGFibGVJc09wZW4uc2V0KGZhbHNlKTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgV0FUVF9EUkFXRVIgPSBbXG4gIFdhdHREcmF3ZXJDb21wb25lbnQsXG4gIFdhdHREcmF3ZXJUb3BiYXJDb21wb25lbnQsXG4gIFdhdHREcmF3ZXJBY3Rpb25zQ29tcG9uZW50LFxuICBXYXR0RHJhd2VyQ29udGVudENvbXBvbmVudCxcbiAgV2F0dERyYXdlckhlYWRpbmdDb21wb25lbnQsXG5dO1xuIiwiPCEtLVxuQGxpY2Vuc2VcbkNvcHlyaWdodCAyMDIwIEVuZXJnaW5ldCBEYXRhSHViIEEvU1xuXG5MaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlMlwiKTtcbnlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbllvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cblVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbmRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbldJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxubGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4tLT5cbjxtYXQtZHJhd2VyLWNvbnRhaW5lciBjbGFzcz1cIndhdHQtZHJhd2VyLWNvbnRhaW5lclwiIFtoYXNCYWNrZHJvcF09XCJmYWxzZVwiPlxuICA8bWF0LWRyYXdlclxuICAgIGNsYXNzPVwid2F0dC1kcmF3ZXIgd2F0dC1kcmF3ZXItLXt7IHNpemUoKSB9fVwiXG4gICAgbW9kZT1cInNpZGVcIlxuICAgIHBvc2l0aW9uPVwiZW5kXCJcbiAgICBbb3BlbmVkXT1cImlzT3BlbigpXCJcbiAgICAoY2xvc2VkKT1cImNsb3NlZC5lbWl0KClcIlxuICAgIFtkaXNhYmxlQ2xvc2VdPVwidHJ1ZVwiXG4gICAgW2F1dG9Gb2N1c109XCJ0cnVlXCJcbiAgICBbY2RrVHJhcEZvY3VzXT1cInRydWVcIlxuICA+XG4gICAgPGFydGljbGUgdmF0ZXItZmxleCBmaWxsPVwidmVydGljYWxcIj5cbiAgICAgIDxoZWFkZXIgdmF0ZXItc3RhY2sgYWxpZ249XCJzdHJldGNoXCIgb2Zmc2V0PVwibVwiIGdhcD1cInNcIj5cbiAgICAgICAgPHZhdGVyLXN0YWNrIGRpcmVjdGlvbj1cInJvd1wiIG9mZnNldD1cIm1sXCIgZ2FwPVwic1wiIGFsaWduPVwiY2VudGVyXCI+XG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwid2F0dC1kcmF3ZXItdG9wYmFyXCIgLz5cbiAgICAgICAgICA8dmF0ZXItc3BhY2VyIC8+XG4gICAgICAgICAgPHdhdHQtYnV0dG9uIHZhcmlhbnQ9XCJpY29uXCIgaWNvbj1cImNsb3NlXCIgKGNsaWNrKT1cImNsb3NlKClcIiAvPlxuICAgICAgICA8L3ZhdGVyLXN0YWNrPlxuICAgICAgICA8dmF0ZXItZmxleFxuICAgICAgICAgIGF1dG9TaXplXG4gICAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAgICBvZmZzZXQ9XCJtbFwiXG4gICAgICAgICAganVzdGlmeT1cInNwYWNlLWJldHdlZW5cIlxuICAgICAgICAgIGdhcD1cInNcIlxuICAgICAgICAgIGFsaWduPVwiY2VudGVyXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIndhdHQtZHJhd2VyLWhlYWRpbmdcIiAvPlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIndhdHQtZHJhd2VyLWFjdGlvbnNcIiAvPlxuICAgICAgICA8L3ZhdGVyLWZsZXg+XG4gICAgICA8L2hlYWRlcj5cbiAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ3YXR0LWRyYXdlci1jb250ZW50XCIgLz5cbiAgICA8L2FydGljbGU+XG5cbiAgICBAaWYgKGxvYWRpbmcoKSkge1xuICAgICAgPGRpdiBjbGFzcz1cIndhdHQtZHJhd2VyX19zcGlubmVyXCI+XG4gICAgICAgIDx3YXR0LXNwaW5uZXIgLz5cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgPC9tYXQtZHJhd2VyPlxuPC9tYXQtZHJhd2VyLWNvbnRhaW5lcj5cbiJdfQ==
|
|
189
|
+
//# sourceMappingURL=watt-drawer.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-drawer.component.js","sourceRoot":"","sources":["../../../../libs/watt/package/drawer/watt-drawer.component.ts","../../../../libs/watt/package/drawer/watt-drawer.component.html"],"names":[],"mappings":"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","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n inject,\n input,\n output,\n Component,\n OnDestroy,\n viewChild,\n ElementRef,\n ChangeDetectionStrategy,\n signal,\n untracked,\n booleanAttribute,\n contentChild,\n effect,\n afterRenderEffect,\n} from '@angular/core';\n\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { CdkTrapFocus, A11yModule } from '@angular/cdk/a11y';\nimport { MatSidenavModule } from '@angular/material/sidenav';\n\nimport {\n VaterFlexComponent,\n VaterSpacerComponent,\n VaterStackComponent,\n VaterUtilityDirective,\n} from '@energinet/watt/vater';\nimport { WattButtonComponent } from '@energinet/watt/button';\nimport { WattSpinnerComponent } from '@energinet/watt/spinner';\n\nimport { WattDrawerTopbarComponent } from './watt-drawer-topbar.component';\nimport { WattDrawerActionsComponent } from './watt-drawer-actions.component';\nimport { WattDrawerContentComponent } from './watt-drawer-content.component';\nimport { WattDrawerHeadingComponent } from './watt-drawer-heading.component';\n\nexport type WattDrawerSize = 'small' | 'normal' | 'large';\n\nconst APPEAR_ANIMATION_DELAY = 250;\nconst APPEAR_ANIMATION_FRAMES = {\n transform: ['translateX(30px)', 'translateX(0)'],\n opacity: ['0', '1'],\n};\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'watt-drawer',\n styleUrls: ['./watt-drawer.component.scss'],\n templateUrl: './watt-drawer.component.html',\n host: {\n '(document:click)': 'handleDocumentClick($event)',\n '(keydown.escape)': 'handleEscKeyPressed()',\n },\n imports: [\n A11yModule,\n MatSidenavModule,\n VaterFlexComponent,\n VaterStackComponent,\n VaterSpacerComponent,\n VaterUtilityDirective,\n WattButtonComponent,\n WattSpinnerComponent,\n ],\n})\nexport class WattDrawerComponent implements OnDestroy {\n private elementRef = inject(ElementRef);\n private overlayContainer = inject(OverlayContainer);\n private content = contentChild(WattDrawerContentComponent, { read: ElementRef });\n private heading = contentChild(WattDrawerHeadingComponent, { read: ElementRef });\n private topBar = contentChild(WattDrawerTopbarComponent, { read: ElementRef });\n private cdkTrapFocus = viewChild.required(CdkTrapFocus);\n private bypassClickCheck = false;\n private writableIsOpen = signal(false);\n\n // Multiple drawers open at the same time are not allowed. This keeps track of\n // the currently opened drawer and closes it when a new drawer is opened.\n private static currentDrawer?: WattDrawerComponent;\n\n /** Used to adjust drawer size to best fit the content. */\n size = input<WattDrawerSize>('normal');\n\n /**\n * Whether the drawer should open automatically. If `key` is provided and\n * `autoOpen` is true, the drawer will open every time the key changes.\n */\n autoOpen = input(false, { transform: booleanAttribute });\n\n /**\n * Used to track the current drawer when reusing the same drawer instance to\n * render different content. This is required when interactions outside the\n * drawer should result in updating the drawer's content instead of closing it.\n */\n key = input<unknown>();\n\n /** Whether the drawer should show a loading state. */\n loading = input(false);\n\n /** Adds a brief animation to indicate that the content has changed. */\n animateOnKeyChange = input(false);\n\n /** Emits whenever the drawer is fully closed. */\n closed = output<void>();\n\n /** Whether the drawer is open. */\n isOpen = this.writableIsOpen.asReadonly();\n\n constructor() {\n afterRenderEffect({\n read: () => {\n this.key();\n if (this.autoOpen()) this.open();\n if (!this.animateOnKeyChange()) return;\n untracked(() => {\n if (!this.isOpen()) return;\n this.content()?.nativeElement.animate(APPEAR_ANIMATION_FRAMES, APPEAR_ANIMATION_DELAY);\n this.heading()?.nativeElement.animate(APPEAR_ANIMATION_FRAMES, APPEAR_ANIMATION_DELAY);\n this.topBar()?.nativeElement.animate(APPEAR_ANIMATION_FRAMES, APPEAR_ANIMATION_DELAY);\n });\n },\n });\n\n // Who doesn't love a good workaround, right?\n // Let's make the drawer resize itself whenever the `size` input changes.\n //\n // The `mat-drawer` component offers the `autosize` input for this.\n // However, it is specifically mentioned that this options should be used at own risk,\n // as it could cause performance issues.\n // See: https://material.angular.dev/components/sidenav/overview#resizing-an-open-sidenav\n //\n // So to work around this, a simple `resize` event is dispatched whenever the `size` input changes.\n // This works because `mat-drawer` uses `ViewportRuler` from `@angular/cdk/scrolling`\n // (see https://github.com/angular/components/blob/19.2.1/src/material/sidenav/drawer.ts#L811-L816)\n // to listen to `resize` events and re-calculates margins applied to the drawer content\n // (see https://github.com/angular/components/blob/20.0.0-rc.2/src/cdk/scrolling/viewport-ruler.ts#L50-L53).\n effect(() => {\n this.size();\n\n document.dispatchEvent(new Event('resize', { bubbles: true }));\n });\n }\n\n /** @ignore */\n handleDocumentClick(event: MouseEvent) {\n // Prevent closing when the click triggered a call to `open`\n if (this.bypassClickCheck) return;\n\n // Check if the click originated from within the drawer element\n const isClickInside = this.elementRef.nativeElement.contains(event.target);\n if (isClickInside) return;\n\n // Check if the click originated from within an overlay (such as a modal)\n const overlayContainerEl = this.overlayContainer.getContainerElement();\n const isOverlayClick = overlayContainerEl.contains(event.target as Node);\n if (isOverlayClick) return;\n\n // Click is allowed to close the drawer now\n this.close();\n }\n\n /** @ignore */\n handleEscKeyPressed() {\n this.close();\n }\n\n /** @ignore */\n ngOnDestroy(): void {\n if (WattDrawerComponent.currentDrawer === this) {\n WattDrawerComponent.currentDrawer = undefined;\n }\n }\n\n /** Opens the drawer. Subsequent calls are ignored while the drawer is opened. */\n open() {\n // Trap focus whenever open is called. This doesn't work on the\n // initial call (when first opening the drawer), but this is\n // handled by the autoFocus property on mat-drawer.\n this.cdkTrapFocus().focusTrap.focusInitialElementWhenReady();\n\n // Disable click outside check until the current event loop is finished.\n // This might seem hackish, but the order of execution is stable here.\n // Also prevents an issue when the drawer is destroyed and then recreated,\n // causing the click outside check to trigger immediately if the drawer\n // is created and opened in response to a click event.\n this.bypassClickCheck = true;\n setTimeout(() => {\n this.bypassClickCheck = false;\n }, 0);\n\n // Without `untracked`, if this is called in a reactive context (such as an `effect`),\n // it will be triggered twice due to `isOpen` being tracked and immediately updated.\n if (untracked(this.isOpen)) return;\n WattDrawerComponent.currentDrawer?.close();\n WattDrawerComponent.currentDrawer = this;\n this.writableIsOpen.set(true);\n }\n\n /** Closes the drawer. */\n close() {\n if (!untracked(this.isOpen)) return;\n WattDrawerComponent.currentDrawer = undefined;\n this.writableIsOpen.set(false);\n }\n}\n\nexport const WATT_DRAWER = [\n WattDrawerComponent,\n WattDrawerTopbarComponent,\n WattDrawerActionsComponent,\n WattDrawerContentComponent,\n WattDrawerHeadingComponent,\n];\n","<!--\n@license\nCopyright 2020 Energinet DataHub A/S\n\nLicensed under the Apache License, Version 2.0 (the \"License2\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n-->\n<mat-drawer-container class=\"watt-drawer-container\" [hasBackdrop]=\"false\">\n <mat-drawer\n class=\"watt-drawer watt-drawer--{{ size() }}\"\n mode=\"side\"\n position=\"end\"\n [opened]=\"isOpen()\"\n (closed)=\"closed.emit()\"\n [disableClose]=\"true\"\n [autoFocus]=\"true\"\n [cdkTrapFocus]=\"true\"\n >\n <article vater-flex fill=\"vertical\">\n <header vater-stack align=\"stretch\" offset=\"m\" gap=\"s\">\n <vater-stack direction=\"row\" offset=\"ml\" gap=\"s\" align=\"center\">\n <ng-content select=\"watt-drawer-topbar\" />\n <vater-spacer />\n <watt-button variant=\"icon\" icon=\"close\" (click)=\"close()\" />\n </vater-stack>\n <vater-flex\n autoSize\n direction=\"row\"\n offset=\"ml\"\n justify=\"space-between\"\n gap=\"s\"\n align=\"center\"\n >\n <ng-content select=\"watt-drawer-heading\" />\n <ng-content select=\"watt-drawer-actions\" />\n </vater-flex>\n </header>\n <ng-content />\n <ng-content select=\"watt-drawer-content\" />\n </article>\n\n @if (loading()) {\n <div class=\"watt-drawer__spinner\">\n <watt-spinner />\n </div>\n }\n </mat-drawer>\n</mat-drawer-container>\n"]}
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
4
|
export * from './index';
|
|
5
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=energinet-watt-dropdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energinet-watt-dropdown.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropdown/energinet-watt-dropdown.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
|
|
@@ -17,4 +17,4 @@
|
|
|
17
17
|
*/
|
|
18
18
|
//#endregion
|
|
19
19
|
export { WattDropdownComponent } from './watt-dropdown.component';
|
|
20
|
-
//# sourceMappingURL=
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropdown/index.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport { WattDropdownComponent } from './watt-dropdown.component';\nexport {\n type WattDropdownOption,\n type WattDropdownOptions,\n type WattDropdownGroupedOptions,\n type WattDropdownOptionGroup,\n} from './watt-dropdown-option';\nexport { type WattDropdownValue } from './watt-dropdown-value';\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=
|
|
2
|
+
//# sourceMappingURL=watt-dropdown-option.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-dropdown-option.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropdown/watt-dropdown-option.ts"],"names":[],"mappings":"","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport interface WattDropdownOption {\n value: string;\n displayValue: string;\n disabled?: boolean;\n}\n\nexport interface WattDropdownOptionGroup {\n label: string;\n options: WattDropdownOption[];\n disabled?: boolean;\n}\n\nexport type WattDropdownOptions = WattDropdownOption[];\nexport type WattDropdownGroupedOptions = WattDropdownOptionGroup[];\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=
|
|
2
|
+
//# sourceMappingURL=watt-dropdown-value.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-dropdown-value.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropdown/watt-dropdown-value.ts"],"names":[],"mappings":"","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport type WattDropdownValue = string | string[] | null;\n"]}
|
|
@@ -343,4 +343,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
343
343
|
'[class.watt-chip-mode]': 'chipMode()',
|
|
344
344
|
}, template: "<!--\n@license\nCopyright 2020 Energinet DataHub A/S\n\nLicensed under the Apache License, Version 2.0 (the \"License2\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n-->\n<watt-field\n [control]=\"parentControl\"\n [chipMode]=\"chipMode()\"\n [label]=\"label()\"\n (click)=\"matSelect.open()\"\n>\n @if (chipMode()) {\n <watt-menu-chip\n [opened]=\"matSelect.panelOpen\"\n (toggleChange)=\"matSelect.open()\"\n [selected]=\"!!matSelect?.triggerValue && !disableSelectedMode()\"\n [disabled]=\"matSelectControl.disabled\"\n >\n {{ placeholder() }}\n @if (showTriggerValue) {\n <span>\n @if (placeholder()) {\n :\n }\n {{ getCustomTrigger()?.(matSelect.value) ?? matSelect?.triggerValue }}\n </span>\n }\n @if (showChipLabel) {\n <span class=\"watt-chip-label\">{{ matSelectControl.value?.length }}</span>\n }\n </watt-menu-chip>\n }\n\n <mat-select\n [attr.aria-label]=\"label()\"\n [formControl]=\"matSelectControl\"\n [placeholder]=\"placeholder()\"\n #matSelect\n [panelWidth]=\"panelWidth()\"\n [multiple]=\"multiple()\"\n [ngClass]=\"{ chip: chipMode(), 'mat-mdc-select-multiple': multiple() }\"\n [panelClass]=\"{\n 'watt-dropdown-panel': true,\n 'watt-dropdown-panel-chip-mode': chipMode(),\n 'mat-mdc-select-panel-multiple': multiple(),\n }\"\n >\n <!-- We use this instead of ngIf, since it will trigger a NG0100: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. -->\n <mat-option [style.display]=\"!hideSearch() ? 'block' : 'none'\">\n <ngx-mat-select-search\n [formControl]=\"filterControl\"\n [placeholderLabel]=\"placeholder()\"\n closeIcon=\"close\"\n [showToggleAllCheckbox]=\"multiple()\"\n (toggleAll)=\"onToggleAll($event)\"\n [toggleAllCheckboxChecked]=\"isToggleAllChecked\"\n [toggleAllCheckboxIndeterminate]=\"isToggleAllIndeterminate\"\n [noEntriesFoundLabel]=\"noOptionsFoundLabel()\"\n >\n <watt-icon ngxMatSelectSearchClear name=\"close\" size=\"s\" />\n </ngx-mat-select-search>\n </mat-option>\n\n @if (!multiple() && showResetOption()) {\n <mat-option>{{ emDash }}</mat-option>\n }\n\n @if (hasGroups()) {\n @for (item of filteredGroupedOptions$ | push; track item) {\n @if (\"options\" in item) {\n <mat-optgroup [label]=\"item.label\" [disabled]=\"item.disabled\">\n @for (option of item.options; track option) {\n <mat-option\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n [class.mat-mdc-option-multiple]=\"multiple()\"\n >\n {{ option.displayValue }}\n </mat-option>\n }\n </mat-optgroup>\n }\n }\n } @else {\n @for (option of filteredOptions$ | push; track option) {\n <mat-option\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n [class.mat-mdc-option-multiple]=\"multiple()\"\n >\n {{ option.displayValue }}\n </mat-option>\n }\n }\n </mat-select>\n <ng-content />\n <ng-content ngProjectAs=\"watt-field-hint\" select=\"watt-field-hint\" />\n <ng-content ngProjectAs=\"watt-field-error\" select=\"watt-field-error\" />\n</watt-field>\n", styles: ["watt-dropdown:not(.watt-chip-mode){width:100%}watt-dropdown{--watt-input-color: var(--watt-typography-text-color);--watt-input-placeholder-color: var(--watt-on-light-high-emphasis);display:block;width:auto}watt-dropdown watt-field label .watt-field-wrapper{padding:0;position:relative}watt-dropdown.watt-chip-mode.ng-dirty.ng-invalid .watt-field-wrapper watt-chip label{border:1px solid var(--watt-color-state-danger)}watt-dropdown.watt-chip-mode[disabled=true] watt-field label .watt-field-wrapper{background-color:transparent}watt-dropdown .mat-input-element{font-size:.875rem;line-height:1.25rem;font-weight:400;text-transform:none;letter-spacing:0;color:var(--watt-input-color);caret-color:var(--watt-color-neutral-grey-900)!important;padding:0 12px}watt-dropdown .mat-mdc-select-arrow{color:var(--watt-dropdown-arrow-color, rgba(0, 0, 0, .54));border:none;width:auto;height:auto}watt-dropdown .mat-mdc-select-arrow:before{width:.6em;height:.6em;bottom:.2em;position:relative;display:inline-block;border-style:solid;border-width:0 0 .15em .15em;transform:rotate(315deg);border-color:var(--watt-color-primary);content:\"\"}watt-dropdown .mat-mdc-select-arrow svg{display:none}watt-dropdown .mat-mdc-select-trigger{font-size:.875rem;line-height:1.25rem;font-weight:400;text-transform:none;letter-spacing:0;padding:0 var(--watt-space-m)}watt-dropdown .mat-mdc-select-value{color:var(--watt-color-neutral-black);padding-right:var(--watt-space-m)}watt-dropdown .mat-mdc-select.mat-mdc-select-invalid.ng-pristine .mat-mdc-select-arrow{color:currentColor}watt-dropdown .watt-chip-label{float:right;margin-left:var(--watt-space-s);background:var(--watt-color-neutral-white)}watt-dropdown .watt-field--chip .mat-mdc-select{visibility:hidden;position:absolute;width:100%}watt-dropdown .mat-mdc-select-placeholder{color:var(--watt-input-placeholder-color)}watt-dropdown watt-field label .watt-field-wrapper{background-color:transparent}.watt-dropdown-panel{--watt-input-color: var(--watt-typography-text-color);padding:0}.watt-dropdown-panel .mat-select-search-inner-row .mat-select-search-input,.watt-dropdown-panel mat-option.contains-mat-select-search{height:48px}.watt-dropdown-panel:not(.watt-dropdown-panel-chip-mode){min-width:calc(100% + 2px)!important;margin-top:-36px;margin-left:-1px;min-height:48px}.watt-dropdown-panel .mat-mdc-checkbox.mat-select-search-toggle-all-checkbox{padding:0;margin:0 var(--watt-space-m)}.watt-dropdown-panel .mat-datepicker-content .mat-mdc-icon-button{--mat-mdc-button-persistent-ripple-color: transparent;--mat-mdc-button-ripple-color: transparent}.watt-dropdown-panel.watt-dropdown-panel-chip-mode{margin-top:4px}.watt-dropdown-panel.mat-mdc-select-search-panel{transform:scaleY(1)!important}.watt-dropdown-panel .mat-mdc-option.mdc-list-item.contains-mat-select-search.mat-mdc-option-multiple{background-color:transparent}.watt-dropdown-panel ngx-mat-select-search .mat-select-search-inner-multiple .mat-select-search-inner-row{margin-left:5px}.watt-dropdown-panel ngx-mat-select-search .mat-mdc-checkbox.mat-select-search-toggle-all-checkbox{margin:0}.watt-dropdown-panel .mdc-list-item .mat-select-search-input,.watt-dropdown-panel .mat-mdc-option.mdc-list-item,.watt-dropdown-panel .mat-select-search-no-entries-found{font-size:.875rem;line-height:1.25rem;font-weight:400;text-transform:none;letter-spacing:0;color:var(--watt-input-color)}.watt-dropdown-panel .mat-mdc-optgroup-label{font-size:.875rem;line-height:1.25rem;font-weight:600;text-transform:none;letter-spacing:0;color:var(--watt-input-color)}.watt-dropdown-panel .mat-mdc-option.mdc-list-item .mat-select-search-no-entries-found{padding:var(--watt-space-s)}.watt-dropdown-panel .mat-checkbox-frame,.watt-dropdown-panel .mat-mdc-checkbox{border-color:var(--watt-color-primary)}.watt-dropdown-panel :not(.mat-mdc-option-multiple) .mat-pseudo-checkbox{display:none}.watt-dropdown-panel .mat-mdc-option-multiple .mat-pseudo-checkbox{display:inline-block}.watt-dropdown-panel .mat-pseudo-checkbox,.watt-dropdown-panel .mat-mdc-checkbox{color:var(--watt-color-primary)}.watt-dropdown-panel .mat-mdc-option{color:var(--watt-color-neutral-black);min-height:42px}.watt-dropdown-panel .mat-mdc-option[aria-disabled=true].contains-mat-select-search{margin-top:0;top:auto}.watt-dropdown-panel .mat-mdc-option.mdc-list-item.mat-mdc-option-active,.watt-dropdown-panel .mat-mdc-option.mdc-list-item.mdc-list-item--selected.mat-mdc-option-active:not(.mat-mdc-option-multiple),.watt-dropdown-panel .mat-mdc-option:hover:not(.mat-mdc-option-disabled,.contains-mat-select-search),.watt-dropdown-panel .mat-mdc-option:focus:not(.mat-mdc-option-disabled){background-color:var(--watt-color-primary-light)}.watt-dropdown-panel .mat-mdc-option .mat-mdc-select-search-no-entries-found{text-align:center;padding:0}.watt-dropdown-panel .mat-mdc-option.mat-mdc-option-disabled{color:var(--watt-color-neutral-grey-400);cursor:not-allowed}.watt-dropdown-panel .mat-mdc-select-search-input:not(.mat-mdc-select-search-hidden){color:var(--watt-color-neutral-black)}.watt-dropdown-panel .mat-mdc-select-search-clear{background-color:var(--watt-color-neutral-white);color:var(--watt-color-neutral-grey-400)}.watt-dropdown-panel .mat-mdc-select-search-clear mat-icon{line-height:20px!important}\n"] }]
|
|
345
345
|
}], ctorParameters: () => [], propDecorators: { matSelect: [{ type: i0.ViewChild, args: ['matSelect', { isSignal: true }] }], hideSearch: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideSearch", required: false }] }], panelWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "panelWidth", required: false }] }], getCustomTrigger: [{ type: i0.Input, args: [{ isSignal: true, alias: "getCustomTrigger", required: false }] }], chipMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "chipMode", required: false }] }], disableSelectedMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableSelectedMode", required: false }] }], sortDirection: [{ type: i0.Input, args: [{ isSignal: true, alias: "sortDirection", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }, { type: i0.Output, args: ["optionsChange"] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], showResetOption: [{ type: i0.Input, args: [{ isSignal: true, alias: "showResetOption", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], noOptionsFoundLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "noOptionsFoundLabel", required: false }] }] } });
|
|
346
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0dC1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3dhdHQvcGFja2FnZS9kcm9wZG93bi93YXR0LWRyb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xpYnMvd2F0dC9wYWNrYWdlL2Ryb3Bkb3duL3dhdHQtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILFlBQVk7QUFDWixPQUFPLEVBQ0wsS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUVOLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULFVBQVUsRUFDVixpQkFBaUIsRUFDakIsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxTQUFTLEVBRVQsV0FBVyxFQUdYLGtCQUFrQixFQUNsQixtQkFBbUIsR0FFcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxFQUFFLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQWEsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFF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aW9uIExpY2Vuc2Vcbi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIwIEVuZXJnaW5ldCBEYXRhSHViIEEvU1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2UyXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8vI2VuZHJlZ2lvblxuaW1wb3J0IHtcbiAgaW5wdXQsXG4gIG1vZGVsLFxuICBzaWduYWwsXG4gIGVmZmVjdCxcbiAgT25Jbml0LFxuICBpbmplY3QsXG4gIENvbXBvbmVudCxcbiAgdmlld0NoaWxkLFxuICBEZXN0cm95UmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgY29tcHV0ZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBOZ0NvbnRyb2wsXG4gIFZhbGlkYXRvckZuLFxuICBGb3JtQ29udHJvbCxcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgQXN5bmNWYWxpZGF0b3JGbixcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBDb250cm9sVmFsdWVBY2Nlc3Nvcixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgUnhQdXNoIH0gZnJvbSAnQHJ4LWFuZ3VsYXIvdGVtcGxhdGUvcHVzaCc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmltcG9ydCB7IG9mLCBSZXBsYXlTdWJqZWN0LCBtYXAsIHRha2UsIG1lcmdlV2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmd4TWF0U2VsZWN0U2VhcmNoTW9kdWxlIH0gZnJvbSAnbmd4LW1hdC1zZWxlY3Qtc2VhcmNoJztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSwgTWF0U2VsZWN0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IE1hdE9wdGlvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG5pbXBvcnQgeyBXYXR0SWNvbkNvbXBvbmVudCB9IGZyb20gJ0BlbmVyZ2luZXQvd2F0dC9pY29uJztcbmltcG9ydCB7IFdhdHRGaWVsZENvbXBvbmVudCB9IGZyb20gJ0BlbmVyZ2luZXQvd2F0dC9maWVsZCc7XG5pbXBvcnQgeyBXYXR0TWVudUNoaXBDb21wb25lbnQgfSBmcm9tICdAZW5lcmdpbmV0L3dhdHQvY2hpcCc7XG5cbmltcG9ydCB0eXBlIHsgV2F0dERyb3Bkb3duVmFsdWUgfSBmcm9tICcuL3dhdHQtZHJvcGRvd24tdmFsdWUnO1xuaW1wb3J0IHR5cGUge1xuICBXYXR0RHJvcGRvd25PcHRpb25zLFxuICBXYXR0RHJvcGRvd25PcHRpb25Hcm91cCxcbiAgV2F0dERyb3Bkb3duR3JvdXBlZE9wdGlvbnMsXG59IGZyb20gJy4vd2F0dC1kcm9wZG93bi1vcHRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3YXR0LWRyb3Bkb3duJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dhdHQtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi93YXR0LWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICBSeFB1c2gsXG4gICAgTmdDbGFzcyxcbiAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgTWF0T3B0aW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTmd4TWF0U2VsZWN0U2VhcmNoTW9kdWxlLFxuXG4gICAgV2F0dEljb25Db21wb25lbnQsXG4gICAgV2F0dEZpZWxkQ29tcG9uZW50LFxuICAgIFdhdHRNZW51Q2hpcENvbXBvbmVudCxcbiAgXSxcbiAgaG9zdDoge1xuICAgICdbYXR0ci53YXR0LWZpZWxkLWRpc2FibGVkXSc6ICdpc0Rpc2FibGVkKCknLFxuICAgICdbY2xhc3Mud2F0dC1jaGlwLW1vZGVdJzogJ2NoaXBNb2RlKCknLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBXYXR0RHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0IHtcbiAgcHJpdmF0ZSBwYXJlbnRDb250cm9sRGlyZWN0aXZlID0gaW5qZWN0KE5nQ29udHJvbCwgeyBob3N0OiB0cnVlIH0pO1xuICBwcml2YXRlIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIHByaXZhdGUgdmFsaWRhdGVQYXJlbnQ/OiBWYWxpZGF0b3JGbjtcbiAgcHJpdmF0ZSB2YWxpZGF0ZVBhcmVudEFzeW5jPzogQXN5bmNWYWxpZGF0b3JGbjtcbiAgcHJpdmF0ZSBfb3B0aW9uczogV2F0dERyb3Bkb3duT3B0aW9ucyA9IFtdO1xuICBwcml2YXRlIF9ncm91cGVkT3B0aW9uczogV2F0dERyb3Bkb3duR3JvdXBlZE9wdGlvbnMgPSBbXTtcbiAgcGFyZW50Q29udHJvbDogRm9ybUNvbnRyb2wgfCBudWxsID0gbnVsbDtcbiAgbWF0U2VsZWN0Q29udHJvbCA9IG5ldyBGb3JtQ29udHJvbDxzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCB8IG51bGw+KG51bGwpO1xuXG4gIC8qKlxuICAgKiBDb250cm9sIGZvciB0aGUgTWF0U2VsZWN0IGZpbHRlciBrZXl3b3JkXG4gICAqL1xuICBmaWx0ZXJDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgpO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG9wdGlvbnMgZmlsdGVyZWQgYnkgc2VhcmNoIGtleXdvcmRcbiAgICovXG4gIGZpbHRlcmVkT3B0aW9ucyQgPSBuZXcgUmVwbGF5U3ViamVjdDxXYXR0RHJvcGRvd25PcHRpb25zPigxKTtcblxuICAvKipcbiAgICogTGlzdCBvZiBncm91cGVkIG9wdGlvbnMgZmlsdGVyZWQgYnkgc2VhcmNoIGtleXdvcmRcbiAgICovXG4gIGZpbHRlcmVkR3JvdXBlZE9wdGlvbnMkID0gbmV3IFJlcGxheVN1YmplY3Q8V2F0dERyb3Bkb3duR3JvdXBlZE9wdGlvbnM+KDEpO1xuXG4gIG1lcmdlZEZpbHRlcmVkT3B0aW9ucyQgPSB0aGlzLmZpbHRlcmVkT3B0aW9ucyQucGlwZShcbiAgICBtZXJnZVdpdGgodGhpcy5maWx0ZXJlZEdyb3VwZWRPcHRpb25zJCksXG4gICAgdGFrZSgxKSxcbiAgICBtYXAoKG9wdGlvbnMpID0+IHtcbiAgICAgIGlmICh0aGlzLmhhc0dyb3VwcygpKSB7XG4gICAgICAgIHJldHVybiAob3B0aW9ucyBhcyBXYXR0RHJvcGRvd25Hcm91cGVkT3B0aW9ucylcbiAgICAgICAgICAuZmxhdE1hcCgoZ3JvdXApID0+ICgnb3B0aW9ucycgaW4gZ3JvdXAgPyBncm91cC5vcHRpb25zIDogW10pKVxuICAgICAgICAgIC5tYXAoKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIChvcHRpb25zIGFzIFdhdHREcm9wZG93bk9wdGlvbnMpLm1hcCgob3B0aW9uKSA9PiBvcHRpb24udmFsdWUpO1xuICAgIH0pXG4gICk7XG5cbiAgZW1EYXNoID0gJ+KAlCc7XG4gIGlzVG9nZ2xlQWxsQ2hlY2tlZCA9IGZhbHNlO1xuICBpc1RvZ2dsZUFsbEluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgaXNEaXNhYmxlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgZ2V0IHNob3dUcmlnZ2VyVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbXVsdGlwbGUgPSB0aGlzLm11bHRpcGxlKCk7XG4gICAgcmV0dXJuIChtdWx0aXBsZSAmJlxuICAgICAgdGhpcy5tYXRTZWxlY3RDb250cm9sLnZhbHVlPy5sZW5ndGggPT09IDEgJiZcbiAgICAgIHRoaXMubWF0U2VsZWN0Q29udHJvbC52YWx1ZVswXSAhPT0gJycpIHx8XG4gICAgICAoIW11bHRpcGxlICYmIHRoaXMubWF0U2VsZWN0KCk/LnRyaWdnZXJWYWx1ZSlcbiAgICAgID8gdHJ1ZVxuICAgICAgOiBmYWxzZTtcbiAgfVxuXG4gIGdldCBzaG93Q2hpcExhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLm11bHRpcGxlKCkgJiYgdGhpcy5tYXRTZWxlY3RDb250cm9sLnZhbHVlICYmIHRoaXMubWF0U2VsZWN0Q29udHJvbC52YWx1ZS5sZW5ndGggPiAxXG4gICAgICA/IHRydWVcbiAgICAgIDogZmFsc2U7XG4gIH1cblxuICBtYXRTZWxlY3QgPSB2aWV3Q2hpbGQ8TWF0U2VsZWN0PignbWF0U2VsZWN0Jyk7XG4gIGhpZGVTZWFyY2ggPSBpbnB1dChmYWxzZSk7XG4gIHBhbmVsV2lkdGggPSBpbnB1dDxudWxsIHwgJ2F1dG8nPihudWxsKTtcbiAgZ2V0Q3VzdG9tVHJpZ2dlciA9IGlucHV0PCh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pID0+IHN0cmluZz4oKTtcblxuICAvKipcbiAgICogU2V0IHRoZSBtb2RlIG9mIHRoZSBkcm9wZG93bi5cbiAgICovXG4gIGNoaXBNb2RlID0gaW5wdXQoZmFsc2UpO1xuICBkaXNhYmxlU2VsZWN0ZWRNb2RlID0gaW5wdXQoZmFsc2UpO1xuICBzb3J0RGlyZWN0aW9uID0gaW5wdXQ8J2FzYycgfCAnZGVzYyc+KCk7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG9wdGlvbnMgZm9yIHRoZSBkcm9wZG93bi5cbiAgICogQ2FuIGJlIGEgZmxhdCBhcnJheSBvZiBvcHRpb25zIG9yIGFuIGFycmF5IGNvbnRhaW5pbmcgYm90aCBvcHRpb25zIGFuZCBvcHRpb24gZ3JvdXBzLlxuICAgKi9cbiAgb3B0aW9ucyA9IG1vZGVsPFdhdHREcm9wZG93bk9wdGlvbnMgfCBXYXR0RHJvcGRvd25Hcm91cGVkT3B0aW9ucz4oW10pO1xuXG4gIC8qKlxuICAgKiBTZXRzIHN1cHBvcnQgZm9yIHNlbGVjdGluZyBtdWx0aXBsZSBkcm9wZG93biBvcHRpb25zLlxuICAgKi9cbiAgbXVsdGlwbGUgPSBpbnB1dChmYWxzZSk7XG5cbiAgLyoqXG4gICAqIFNldHMgc3VwcG9ydCBmb3IgaGlkaW5nIHRoZSByZXNldCBvcHRpb24gaW4gXCJzaW5nbGVcIiBzZWxlY3QgbW9kZS5cbiAgICovXG4gIHNob3dSZXNldE9wdGlvbiA9IGlucHV0KHRydWUpO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciBmb3IgdGhlIGRyb3Bkb3duLlxuICAgKi9cbiAgcGxhY2Vob2xkZXIgPSBpbnB1dCgnJyk7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGxhYmVsIGZvciB0aGUgZHJvcGRvd24uXG4gICAqL1xuICBsYWJlbCA9IGlucHV0KCcnKTtcblxuICAvKipcbiAgICogTGFiZWwgdG8gYmUgc2hvd24gd2hlbiBubyBvcHRpb25zIGFyZSBmb3VuZCBhZnRlciBmaWx0ZXJpbmcuXG4gICAqXG4gICAqIE5vdGU6IFRoZSBsYWJlbCBpcyB2aXNpYmxlIGluIFwibXVsdGlwbGVcIiBtb2RlIG9ubHkuXG4gICAqL1xuICBub09wdGlvbnNGb3VuZExhYmVsID0gaW5wdXQoJycpO1xuXG4gIGhhc0dyb3VwcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zKCkgPz8gW107XG4gICAgcmV0dXJuIG9wdGlvbnMuc29tZShcbiAgICAgIChvcHRpb24pID0+ICdvcHRpb25zJyBpbiBvcHRpb24gJiYgQXJyYXkuaXNBcnJheSgob3B0aW9uIGFzIFdhdHREcm9wZG93bk9wdGlvbkdyb3VwKS5vcHRpb25zKVxuICAgICk7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zKCk7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zKSkge1xuICAgICAgICBjb25zdCBvcHRpb25zQ29weSA9IFsuLi5vcHRpb25zXTtcblxuICAgICAgICBpZiAodGhpcy5oYXNHcm91cHMoKSkge1xuICAgICAgICAgIHRoaXMuaGFuZGxlR3JvdXAob3B0aW9uc0NvcHkgYXMgV2F0dERyb3Bkb3duR3JvdXBlZE9wdGlvbnMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuaGFuZGxlRmxhdChvcHRpb25zQ29weSBhcyBXYXR0RHJvcGRvd25PcHRpb25zKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMucGFyZW50Q29udHJvbERpcmVjdGl2ZS52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlRmxhdChvcHRpb25zQ29weTogV2F0dERyb3Bkb3duT3B0aW9ucykge1xuICAgIGlmICh0aGlzLnNvcnREaXJlY3Rpb24oKSkge1xuICAgICAgb3B0aW9uc0NvcHkgPSB0aGlzLnNvcnRPcHRpb25zKG9wdGlvbnNDb3B5KTtcbiAgICB9XG5cbiAgICB0aGlzLl9vcHRpb25zID0gb3B0aW9uc0NvcHk7XG4gICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMkLm5leHQodGhpcy5fb3B0aW9ucyk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUdyb3VwKG9wdGlvbnNDb3B5OiBXYXR0RHJvcGRvd25Hcm91cGVkT3B0aW9ucykge1xuICAgIHRoaXMuX2dyb3VwZWRPcHRpb25zID0gdGhpcy5wcm9jZXNzR3JvdXBlZE9wdGlvbnMob3B0aW9uc0NvcHkpO1xuICAgIHRoaXMuZmlsdGVyZWRHcm91cGVkT3B0aW9ucyQubmV4dCh0aGlzLl9ncm91cGVkT3B0aW9ucyk7XG4gIH1cblxuICBwcml2YXRlIHByb2Nlc3NHcm91cGVkT3B0aW9ucyhvcHRpb25zOiBXYXR0RHJvcGRvd25Hcm91cGVkT3B0aW9ucyk6IFdhdHREcm9wZG93bkdyb3VwZWRPcHRpb25zIHtcbiAgICByZXR1cm4gb3B0aW9ucy5tYXAoKGdyb3VwKSA9PiB7XG4gICAgICBpZiAodGhpcy5zb3J0RGlyZWN0aW9uKCkpIHtcbiAgICAgICAgZ3JvdXAub3B0aW9ucyA9IHRoaXMuc29ydE9wdGlvbnMoZ3JvdXAub3B0aW9ucyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZ3JvdXA7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxpc3RlbkZvckZpbHRlckZpZWxkVmFsdWVDaGFuZ2VzKCk7XG4gICAgdGhpcy5pbml0aWFsaXplUHJvcGVydGllc0Zyb21QYXJlbnQoKTtcbiAgICB0aGlzLmJpbmRQYXJlbnRWYWxpZGF0b3JzVG9Db250cm9sKCk7XG4gICAgdGhpcy5iaW5kQ29udHJvbFRvUGFyZW50KCk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBXYXR0RHJvcGRvd25WYWx1ZSkge1xuICAgIHRoaXMubWF0U2VsZWN0Q29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKG9uQ2hhbmdlRm46ICh2YWx1ZTogV2F0dERyb3Bkb3duVmFsdWUpID0+IHZvaWQpIHtcbiAgICB0aGlzLmNoYW5nZVBhcmVudFZhbHVlID0gb25DaGFuZ2VGbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hGbjogKCkgPT4gdm9pZCkge1xuICAgIHRoaXMubWFya1BhcmVudENvbnRyb2xBc1RvdWNoZWQgPSBvblRvdWNoRm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKHNob3VsZERpc2FibGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzRGlzYWJsZWQuc2V0KHNob3VsZERpc2FibGUpO1xuICAgIGlmIChzaG91bGREaXNhYmxlKSB7XG4gICAgICB0aGlzLm1hdFNlbGVjdENvbnRyb2wuZGlzYWJsZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1hdFNlbGVjdENvbnRyb2wuZW5hYmxlKCk7XG4gICAgfVxuICB9XG5cbiAgb25Ub2dnbGVBbGwodG9nZ2xlQWxsU3RhdGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLm1lcmdlZEZpbHRlcmVkT3B0aW9ucyQuc3Vic2NyaWJlKChmaWx0ZXJlZE9wdGlvbnM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICBjb25zdCBvcHRpb25zVG9TZWxlY3QgPSB0b2dnbGVBbGxTdGF0ZSA/IGZpbHRlcmVkT3B0aW9ucyA6IFtdO1xuICAgICAgdGhpcy5tYXRTZWxlY3RDb250cm9sLnBhdGNoVmFsdWUob3B0aW9uc1RvU2VsZWN0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzb3J0T3B0aW9ucyhvcHRpb25zOiBXYXR0RHJvcGRvd25PcHRpb25zKTogV2F0dERyb3Bkb3duT3B0aW9ucyB7XG4gICAgcmV0dXJuIFsuLi5vcHRpb25zXS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5zb3J0RGlyZWN0aW9uKCkgPT09ICdhc2MnXG4gICAgICAgID8gYS5kaXNwbGF5VmFsdWUubG9jYWxlQ29tcGFyZShiLmRpc3BsYXlWYWx1ZSlcbiAgICAgICAgOiBiLmRpc3BsYXlWYWx1ZS5sb2NhbGVDb21wYXJlKGEuZGlzcGxheVZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuRm9yRmlsdGVyRmllbGRWYWx1ZUNoYW5nZXMoKSB7XG4gICAgdGhpcy5maWx0ZXJDb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5maWx0ZXJPcHRpb25zKCk7XG5cbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKCkpIHtcbiAgICAgICAgdGhpcy5kZXRlcm1pbmVUb2dnbGVBbGxDaGVja2JveFN0YXRlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHByaXZhdGUgY2hhbmdlUGFyZW50VmFsdWUgPSAodmFsdWU6IFdhdHREcm9wZG93blZhbHVlKSA9PiB7XG4gICAgLy8gSW50ZW50aW9uYWxseSBsZWZ0IGVtcHR5XG4gIH07XG5cbiAgcHJpdmF0ZSBtYXJrUGFyZW50Q29udHJvbEFzVG91Y2hlZCA9ICgpID0+IHtcbiAgICAvLyBJbnRlbnRpb25hbGx5IGxlZnQgZW1wdHlcbiAgfTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKlxuICAgKiBTdG9yZSB0aGUgcGFyZW50IGNvbnRyb2wsIGl0cyB2YWxpZGF0b3JzIGFuZCBhc3luYyB2YWxpZGF0b3JzIGluIHByb3BlcnRpZXNcbiAgICogb2YgdGhpcyBjb21wb25lbnQuXG4gICAqL1xuICBwcml2YXRlIGluaXRpYWxpemVQcm9wZXJ0aWVzRnJvbVBhcmVudCgpIHtcbiAgICB0aGlzLnBhcmVudENvbnRyb2wgPSB0aGlzLnBhcmVudENvbnRyb2xEaXJlY3RpdmUuY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XG5cbiAgICB0aGlzLnZhbGlkYXRlUGFyZW50ID1cbiAgICAgICh0aGlzLnBhcmVudENvbnRyb2wudmFsaWRhdG9yICYmIHRoaXMucGFyZW50Q29udHJvbC52YWxpZGF0b3IuYmluZCh0aGlzLnBhcmVudENvbnRyb2wpKSB8fFxuICAgICAgKCgpID0+IG51bGwpO1xuXG4gICAgdGhpcy52YWxpZGF0ZVBhcmVudEFzeW5jID1cbiAgICAgICh0aGlzLnBhcmVudENvbnRyb2wuYXN5bmNWYWxpZGF0b3IgJiZcbiAgICAgICAgdGhpcy5wYXJlbnRDb250cm9sLmFzeW5jVmFsaWRhdG9yLmJpbmQodGhpcy5wYXJlbnRDb250cm9sKSkgfHxcbiAgICAgICgoKSA9PiBvZihudWxsKSk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKlxuICAgKiBJbmhlcml0IHZhbGlkYXRvcnMgZnJvbSBwYXJlbnQgZm9ybSBjb250cm9sLlxuICAgKi9cbiAgcHJpdmF0ZSBiaW5kUGFyZW50VmFsaWRhdG9yc1RvQ29udHJvbCgpIHtcbiAgICBjb25zdCB2YWxpZGF0b3JzID0gIXRoaXMubWF0U2VsZWN0Q29udHJvbC52YWxpZGF0b3JcbiAgICAgID8gW3RoaXMudmFsaWRhdGVQYXJlbnRdXG4gICAgICA6IEFycmF5LmlzQXJyYXkodGhpcy5tYXRTZWxlY3RDb250cm9sLnZhbGlkYXRvcilcbiAgICAgICAgPyBbLi4udGhpcy5tYXRTZWxlY3RDb250cm9sLnZhbGlkYXRvciwgdGhpcy52YWxpZGF0ZVBhcmVudF1cbiAgICAgICAgOiBbdGhpcy5tYXRTZWxlY3RDb250cm9sLnZhbGlkYXRvciwgdGhpcy52YWxpZGF0ZVBhcmVudF07XG4gICAgdGhpcy5tYXRTZWxlY3RDb250cm9sLnNldFZhbGlkYXRvcnModmFsaWRhdG9ycyk7XG5cbiAgICBjb25zdCBhc3luY1ZhbGlkYXRvcnMgPSAhdGhpcy5tYXRTZWxlY3RDb250cm9sLmFzeW5jVmFsaWRhdG9yXG4gICAgICA/IFt0aGlzLnZhbGlkYXRlUGFyZW50QXN5bmNdXG4gICAgICA6IEFycmF5LmlzQXJyYXkodGhpcy5tYXRTZWxlY3RDb250cm9sLmFzeW5jVmFsaWRhdG9yKVxuICAgICAgICA/IFsuLi50aGlzLm1hdFNlbGVjdENvbnRyb2wuYXN5bmNWYWxpZGF0b3IsIHRoaXMudmFsaWRhdGVQYXJlbnRBc3luY11cbiAgICAgICAgOiBbdGhpcy5tYXRTZWxlY3RDb250cm9sLmFzeW5jVmFsaWRhdG9yLCB0aGlzLnZhbGlkYXRlUGFyZW50QXN5bmNdO1xuICAgIHRoaXMubWF0U2VsZWN0Q29udHJvbC5zZXRBc3luY1ZhbGlkYXRvcnMoYXN5bmNWYWxpZGF0b3JzKTtcblxuICAgIHRoaXMubWF0U2VsZWN0Q29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKlxuICAgKiBFbWl0IHZhbHVlcyB0byB0aGUgcGFyZW50IGZvcm0gY29udHJvbCB3aGVuIG91ciBmb3JtIGNvbnRyb2wncyB2YWx1ZVxuICAgKiBjaGFuZ2VzLlxuICAgKlxuICAgKiBSZWZsZWN0IHBhcmVudCB2YWxpZGF0aW9uIGVycm9ycyBpbiBvdXIgZm9ybSBjb250cm9sLlxuICAgKi9cbiAgcHJpdmF0ZSBiaW5kQ29udHJvbFRvUGFyZW50KCkge1xuICAgIHRoaXMuaGFuZGxlVmFsdWVDaGFuZ2UoKTtcbiAgICB0aGlzLmhhbmRsZVN0YXR1c0NoYW5nZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTdGF0dXNDaGFuZ2UoKSB7XG4gICAgdGhpcy5wYXJlbnRDb250cm9sPy5zdGF0dXNDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKFxuICAgICAgICAgICgpID0+XG4gICAgICAgICAgICAoe1xuICAgICAgICAgICAgICAuLi50aGlzLnBhcmVudENvbnRyb2w/LmVycm9ycyxcbiAgICAgICAgICAgIH0pIGFzIFZhbGlkYXRpb25FcnJvcnNcbiAgICAgICAgKSxcbiAgICAgICAgbWFwKChlcnJvcnMpID0+IChPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA+IDAgPyBlcnJvcnMgOiBudWxsKSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChlcnJvcnMpID0+IHtcbiAgICAgICAgdGhpcy5tYXRTZWxlY3RDb250cm9sLnNldEVycm9ycyhlcnJvcnMpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVZhbHVlQ2hhbmdlKCkge1xuICAgIHRoaXMubWF0U2VsZWN0Q29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHZhbHVlKSA9PiAodmFsdWUgPT09IHVuZGVmaW5lZCA/IG51bGwgOiB2YWx1ZSkpLFxuICAgICAgICBtYXAoKHZhbHVlOiBXYXR0RHJvcGRvd25WYWx1ZSkgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogV2F0dERyb3Bkb3duVmFsdWUpID0+IHtcbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUoKSkge1xuICAgICAgICAgIHRoaXMuZGV0ZXJtaW5lVG9nZ2xlQWxsQ2hlY2tib3hTdGF0ZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5tYXJrUGFyZW50Q29udHJvbEFzVG91Y2hlZCgpO1xuICAgICAgICB0aGlzLmNoYW5nZVBhcmVudFZhbHVlKHZhbHVlKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJPcHRpb25zKCkge1xuICAgIGlmICghdGhpcy5fb3B0aW9ucykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHNlYXJjaCA9ICh0aGlzLmZpbHRlckNvbnRyb2wudmFsdWUgYXMgc3RyaW5nKS50cmltKCkudG9Mb3dlckNhc2UoKTtcblxuICAgIGlmICghc2VhcmNoKSB7XG4gICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyQubmV4dCh0aGlzLl9vcHRpb25zLnNsaWNlKCkpO1xuXG4gICAgICBpZiAodGhpcy5oYXNHcm91cHMoKSkge1xuICAgICAgICB0aGlzLmZpbHRlcmVkR3JvdXBlZE9wdGlvbnMkLm5leHQodGhpcy5fZ3JvdXBlZE9wdGlvbnMuc2xpY2UoKSk7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZmlsdGVyZWRGbGF0T3B0aW9ucyA9IHRoaXMuX29wdGlvbnMuZmlsdGVyKFxuICAgICAgKG9wdGlvbikgPT4gb3B0aW9uLmRpc3BsYXlWYWx1ZS50b0xvd2VyQ2FzZSgpLmluZGV4T2Yoc2VhcmNoKSA+IC0xXG4gICAgKTtcblxuICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zJC5uZXh0KGZpbHRlcmVkRmxhdE9wdGlvbnMpO1xuXG4gICAgaWYgKHRoaXMuaGFzR3JvdXBzKCkpIHtcbiAgICAgIHRoaXMuZmlsdGVyR3JvdXBzKHNlYXJjaCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJHcm91cHMoc2VhcmNoOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmaWx0ZXJlZEdyb3VwcyA9IHRoaXMuX2dyb3VwZWRPcHRpb25zXG4gICAgICAubWFwKChpdGVtKSA9PiB7XG4gICAgICAgIGlmICghKCdvcHRpb25zJyBpbiBpdGVtKSkge1xuICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkR3JvdXBPcHRpb25zID0gaXRlbS5vcHRpb25zLmZpbHRlcihcbiAgICAgICAgICAob3B0aW9uKSA9PiBvcHRpb24uZGlzcGxheVZhbHVlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihzZWFyY2gpID4gLTFcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gZmlsdGVyZWRHcm91cE9wdGlvbnMubGVuZ3RoID4gMCA/IHsgLi4uaXRlbSwgb3B0aW9uczogZmlsdGVyZWRHcm91cE9wdGlvbnMgfSA6IG51bGw7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihCb29sZWFuKSBhcyBXYXR0RHJvcGRvd25Hcm91cGVkT3B0aW9ucztcblxuICAgIHRoaXMuZmlsdGVyZWRHcm91cGVkT3B0aW9ucyQubmV4dChmaWx0ZXJlZEdyb3Vwcyk7XG4gIH1cblxuICBwcml2YXRlIGRldGVybWluZVRvZ2dsZUFsbENoZWNrYm94U3RhdGUoKSB7XG4gICAgdGhpcy5tZXJnZWRGaWx0ZXJlZE9wdGlvbnMkLnN1YnNjcmliZSgoZmlsdGVyZWRPcHRpb25zOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRPcHRpb25zID0gdGhpcy5tYXRTZWxlY3RDb250cm9sLnZhbHVlO1xuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShzZWxlY3RlZE9wdGlvbnMpKSB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRmlsdGVyZWRPcHRpb25zID0gZmlsdGVyZWRPcHRpb25zLmZpbHRlcigob3B0aW9uKSA9PlxuICAgICAgICAgIHNlbGVjdGVkT3B0aW9ucy5pbmNsdWRlcyhvcHRpb24pXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5pc1RvZ2dsZUFsbEluZGV0ZXJtaW5hdGUgPVxuICAgICAgICAgIHNlbGVjdGVkRmlsdGVyZWRPcHRpb25zLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICBzZWxlY3RlZEZpbHRlcmVkT3B0aW9ucy5sZW5ndGggPCBmaWx0ZXJlZE9wdGlvbnMubGVuZ3RoO1xuXG4gICAgICAgIHRoaXMuaXNUb2dnbGVBbGxDaGVja2VkID1cbiAgICAgICAgICBzZWxlY3RlZEZpbHRlcmVkT3B0aW9ucy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgc2VsZWN0ZWRGaWx0ZXJlZE9wdGlvbnMubGVuZ3RoID09PSBmaWx0ZXJlZE9wdGlvbnMubGVuZ3RoO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iLCI8IS0tXG5AbGljZW5zZVxuQ29weXJpZ2h0IDIwMjAgRW5lcmdpbmV0IERhdGFIdWIgQS9TXG5cbkxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2UyXCIpO1xueW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG5TZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG5saW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbi0tPlxuPHdhdHQtZmllbGRcbiAgW2NvbnRyb2xdPVwicGFyZW50Q29udHJvbFwiXG4gIFtjaGlwTW9kZV09XCJjaGlwTW9kZSgpXCJcbiAgW2xhYmVsXT1cImxhYmVsKClcIlxuICAoY2xpY2spPVwibWF0U2VsZWN0Lm9wZW4oKVwiXG4+XG4gIEBpZiAoY2hpcE1vZGUoKSkge1xuICAgIDx3YXR0LW1lbnUtY2hpcFxuICAgICAgW29wZW5lZF09XCJtYXRTZWxlY3QucGFuZWxPcGVuXCJcbiAgICAgICh0b2dnbGVDaGFuZ2UpPVwibWF0U2VsZWN0Lm9wZW4oKVwiXG4gICAgICBbc2VsZWN0ZWRdPVwiISFtYXRTZWxlY3Q/LnRyaWdnZXJWYWx1ZSAmJiAhZGlzYWJsZVNlbGVjdGVkTW9kZSgpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJtYXRTZWxlY3RDb250cm9sLmRpc2FibGVkXCJcbiAgICA+XG4gICAgICB7eyBwbGFjZWhvbGRlcigpIH19XG4gICAgICBAaWYgKHNob3dUcmlnZ2VyVmFsdWUpIHtcbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAgQGlmIChwbGFjZWhvbGRlcigpKSB7XG4gICAgICAgICAgICA6XG4gICAgICAgICAgfVxuICAgICAgICAgIHt7IGdldEN1c3RvbVRyaWdnZXIoKT8uKG1hdFNlbGVjdC52YWx1ZSkgPz8gbWF0U2VsZWN0Py50cmlnZ2VyVmFsdWUgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgfVxuICAgICAgQGlmIChzaG93Q2hpcExhYmVsKSB7XG4gICAgICAgIDxzcGFuIGNsYXNzPVwid2F0dC1jaGlwLWxhYmVsXCI+e3sgbWF0U2VsZWN0Q29udHJvbC52YWx1ZT8ubGVuZ3RoIH19PC9zcGFuPlxuICAgICAgfVxuICAgIDwvd2F0dC1tZW51LWNoaXA+XG4gIH1cblxuICA8bWF0LXNlbGVjdFxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGFiZWwoKVwiXG4gICAgW2Zvcm1Db250cm9sXT1cIm1hdFNlbGVjdENvbnRyb2xcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcbiAgICAjbWF0U2VsZWN0XG4gICAgW3BhbmVsV2lkdGhdPVwicGFuZWxXaWR0aCgpXCJcbiAgICBbbXVsdGlwbGVdPVwibXVsdGlwbGUoKVwiXG4gICAgW25nQ2xhc3NdPVwieyBjaGlwOiBjaGlwTW9kZSgpLCAnbWF0LW1kYy1zZWxlY3QtbXVsdGlwbGUnOiBtdWx0aXBsZSgpIH1cIlxuICAgIFtwYW5lbENsYXNzXT1cIntcbiAgICAgICd3YXR0LWRyb3Bkb3duLXBhbmVsJzogdHJ1ZSxcbiAgICAgICd3YXR0LWRyb3Bkb3duLXBhbmVsLWNoaXAtbW9kZSc6IGNoaXBNb2RlKCksXG4gICAgICAnbWF0LW1kYy1zZWxlY3QtcGFuZWwtbXVsdGlwbGUnOiBtdWx0aXBsZSgpLFxuICAgIH1cIlxuICA+XG4gICAgPCEtLSBXZSB1c2UgdGhpcyBpbnN0ZWFkIG9mIG5nSWYsIHNpbmNlIGl0IHdpbGwgdHJpZ2dlciBhIE5HMDEwMDogRXhwcmVzc2lvbkNoYW5nZWRBZnRlckl0SGFzQmVlbkNoZWNrZWRFcnJvcjogRXhwcmVzc2lvbiBoYXMgY2hhbmdlZCBhZnRlciBpdCB3YXMgY2hlY2tlZC4gLS0+XG4gICAgPG1hdC1vcHRpb24gW3N0eWxlLmRpc3BsYXldPVwiIWhpZGVTZWFyY2goKSA/ICdibG9jaycgOiAnbm9uZSdcIj5cbiAgICAgIDxuZ3gtbWF0LXNlbGVjdC1zZWFyY2hcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImZpbHRlckNvbnRyb2xcIlxuICAgICAgICBbcGxhY2Vob2xkZXJMYWJlbF09XCJwbGFjZWhvbGRlcigpXCJcbiAgICAgICAgY2xvc2VJY29uPVwiY2xvc2VcIlxuICAgICAgICBbc2hvd1RvZ2dsZUFsbENoZWNrYm94XT1cIm11bHRpcGxlKClcIlxuICAgICAgICAodG9nZ2xlQWxsKT1cIm9uVG9nZ2xlQWxsKCRldmVudClcIlxuICAgICAgICBbdG9nZ2xlQWxsQ2hlY2tib3hDaGVja2VkXT1cImlzVG9nZ2xlQWxsQ2hlY2tlZFwiXG4gICAgICAgIFt0b2dnbGVBbGxDaGVja2JveEluZGV0ZXJtaW5hdGVdPVwiaXNUb2dnbGVBbGxJbmRldGVybWluYXRlXCJcbiAgICAgICAgW25vRW50cmllc0ZvdW5kTGFiZWxdPVwibm9PcHRpb25zRm91bmRMYWJlbCgpXCJcbiAgICAgID5cbiAgICAgICAgPHdhdHQtaWNvbiBuZ3hNYXRTZWxlY3RTZWFyY2hDbGVhciBuYW1lPVwiY2xvc2VcIiBzaXplPVwic1wiIC8+XG4gICAgICA8L25neC1tYXQtc2VsZWN0LXNlYXJjaD5cbiAgICA8L21hdC1vcHRpb24+XG5cbiAgICBAaWYgKCFtdWx0aXBsZSgpICYmIHNob3dSZXNldE9wdGlvbigpKSB7XG4gICAgICA8bWF0LW9wdGlvbj57eyBlbURhc2ggfX08L21hdC1vcHRpb24+XG4gICAgfVxuXG4gICAgQGlmIChoYXNHcm91cHMoKSkge1xuICAgICAgQGZvciAoaXRlbSBvZiBmaWx0ZXJlZEdyb3VwZWRPcHRpb25zJCB8IHB1c2g7IHRyYWNrIGl0ZW0pIHtcbiAgICAgICAgQGlmIChcIm9wdGlvbnNcIiBpbiBpdGVtKSB7XG4gICAgICAgICAgPG1hdC1vcHRncm91cCBbbGFiZWxdPVwiaXRlbS5sYWJlbFwiIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCI+XG4gICAgICAgICAgICBAZm9yIChvcHRpb24gb2YgaXRlbS5vcHRpb25zOyB0cmFjayBvcHRpb24pIHtcbiAgICAgICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICAgICBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwib3B0aW9uLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MubWF0LW1kYy1vcHRpb24tbXVsdGlwbGVdPVwibXVsdGlwbGUoKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBvcHRpb24uZGlzcGxheVZhbHVlIH19XG4gICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L21hdC1vcHRncm91cD5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGZvciAob3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9ucyQgfCBwdXNoOyB0cmFjayBvcHRpb24pIHtcbiAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwib3B0aW9uLmRpc2FibGVkXCJcbiAgICAgICAgICBbY2xhc3MubWF0LW1kYy1vcHRpb24tbXVsdGlwbGVdPVwibXVsdGlwbGUoKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBvcHRpb24uZGlzcGxheVZhbHVlIH19XG4gICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgIH1cbiAgICB9XG4gIDwvbWF0LXNlbGVjdD5cbiAgPG5nLWNvbnRlbnQgLz5cbiAgPG5nLWNvbnRlbnQgbmdQcm9qZWN0QXM9XCJ3YXR0LWZpZWxkLWhpbnRcIiBzZWxlY3Q9XCJ3YXR0LWZpZWxkLWhpbnRcIiAvPlxuICA8bmctY29udGVudCBuZ1Byb2plY3RBcz1cIndhdHQtZmllbGQtZXJyb3JcIiBzZWxlY3Q9XCJ3YXR0LWZpZWxkLWVycm9yXCIgLz5cbjwvd2F0dC1maWVsZD5cbiJdfQ==
|
|
346
|
+
//# sourceMappingURL=watt-dropdown.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-dropdown.component.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropdown/watt-dropdown.component.ts","../../../../libs/watt/package/dropdown/watt-dropdown.component.html"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,EAEN,MAAM,EACN,SAAS,EACT,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,QAAQ,GACT,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,SAAS,EAET,WAAW,EAGX,kBAAkB,EAClB,mBAAmB,GAEpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAa,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;;;;;AA+B7D,MAAM,OAAO,qBAAqB;IACxB,sBAAsB,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAChC,cAAc,CAAe;IAC7B,mBAAmB,CAAoB;IACvC,QAAQ,GAAwB,EAAE,CAAC;IACnC,eAAe,GAA+B,EAAE,CAAC;IACzD,aAAa,GAAuB,IAAI,CAAC;IACzC,gBAAgB,GAAG,IAAI,WAAW,CAAuC,IAAI,CAAC,CAAC;IAE/E;;OAEG;IACH,aAAa,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAEzC;;OAEG;IACH,gBAAgB,GAAG,IAAI,aAAa,CAAsB,CAAC,CAAC,CAAC;IAE7D;;OAEG;IACH,uBAAuB,GAAG,IAAI,aAAa,CAA6B,CAAC,CAAC,CAAC;IAE3E,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACjD,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC,EACvC,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACd,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACrB,OAAQ,OAAsC;iBAC3C,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC7D,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;QAED,OAAQ,OAA+B,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,GAAG,GAAG,CAAC;IACb,kBAAkB,GAAG,KAAK,CAAC;IAC3B,wBAAwB,GAAG,KAAK,CAAC;IACjC,UAAU,GAAG,MAAM,CAAC,KAAK,sDAAC,CAAC;IAE3B,IAAI,gBAAgB;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,OAAO,CAAC,QAAQ;YACd,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC;YACzC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YACtC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,YAAY,CAAC;YAC7C,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,KAAK,CAAC;IACZ,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAC7F,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,KAAK,CAAC;IACZ,CAAC;IAED,SAAS,GAAG,SAAS,CAAY,WAAW,qDAAC,CAAC;IAC9C,UAAU,GAAG,KAAK,CAAC,KAAK,sDAAC,CAAC;IAC1B,UAAU,GAAG,KAAK,CAAgB,IAAI,sDAAC,CAAC;IACxC,gBAAgB,GAAG,KAAK,sEAAwC,CAAC;IAEjE;;OAEG;IACH,QAAQ,GAAG,KAAK,CAAC,KAAK,oDAAC,CAAC;IACxB,mBAAmB,GAAG,KAAK,CAAC,KAAK,+DAAC,CAAC;IACnC,aAAa,GAAG,KAAK,mEAAkB,CAAC;IAExC;;;OAGG;IACH,OAAO,GAAG,KAAK,CAAmD,EAAE,mDAAC,CAAC;IAEtE;;OAEG;IACH,QAAQ,GAAG,KAAK,CAAC,KAAK,oDAAC,CAAC;IAExB;;OAEG;IACH,eAAe,GAAG,KAAK,CAAC,IAAI,2DAAC,CAAC;IAE9B;;OAEG;IACH,WAAW,GAAG,KAAK,CAAC,EAAE,uDAAC,CAAC;IAExB;;OAEG;IACH,KAAK,GAAG,KAAK,CAAC,EAAE,iDAAC,CAAC;IAElB;;;;OAIG;IACH,mBAAmB,GAAG,KAAK,CAAC,EAAE,+DAAC,CAAC;IAEhC,SAAS,GAAG,QAAQ,CAAC,GAAG,EAAE;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAE,MAAkC,CAAC,OAAO,CAAC,CAC9F,CAAC;IACJ,CAAC,qDAAC,CAAC;IAEH;QACE,MAAM,CAAC,GAAG,EAAE;YACV,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;gBAEjC,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;oBACrB,IAAI,CAAC,WAAW,CAAC,WAAyC,CAAC,CAAC;gBAC9D,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,UAAU,CAAC,WAAkC,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,sBAAsB,CAAC,aAAa,GAAG,IAAI,CAAC;IACnD,CAAC;IAEO,UAAU,CAAC,WAAgC;QACjD,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACzB,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;QAC5B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAEO,WAAW,CAAC,WAAuC;QACzD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1D,CAAC;IAEO,qBAAqB,CAAC,OAAmC;QAC/D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC3B,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;gBACzB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACxC,IAAI,CAAC,8BAA8B,EAAE,CAAC;QACtC,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACrC,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED,UAAU,CAAC,KAAwB;QACjC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,gBAAgB,CAAC,UAA8C;QAC7D,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC;IACtC,CAAC;IAED,iBAAiB,CAAC,SAAqB;QACrC,IAAI,CAAC,0BAA0B,GAAG,SAAS,CAAC;IAC9C,CAAC;IAED,gBAAgB,CAAC,aAAsB;QACrC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACnC,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACjC,CAAC;IACH,CAAC;IAED,WAAW,CAAC,cAAuB;QACjC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,eAAyB,EAAE,EAAE;YAClE,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,WAAW,CAAC,OAA4B;QAC7C,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChC,OAAO,IAAI,CAAC,aAAa,EAAE,KAAK,KAAK;gBACnC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC;gBAC9C,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,gCAAgC;QACtC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YACvF,IAAI,CAAC,aAAa,EAAE,CAAC;YAErB,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACpB,IAAI,CAAC,+BAA+B,EAAE,CAAC;YACzC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6DAA6D;IACrD,iBAAiB,GAAG,CAAC,KAAwB,EAAE,EAAE;QACvD,2BAA2B;IAC7B,CAAC,CAAC;IAEM,0BAA0B,GAAG,GAAG,EAAE;QACxC,2BAA2B;IAC7B,CAAC,CAAC;IAEF;;;;;OAKG;IACK,8BAA8B;QACpC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAA6B,CAAC;QAE/E,IAAI,CAAC,cAAc;YACjB,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACvF,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC,mBAAmB;YACtB,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc;gBAChC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC7D,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACK,6BAA6B;QACnC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS;YACjD,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;YACvB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;gBAC9C,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC;gBAC3D,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC7D,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAEhD,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,cAAc;YAC3D,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAC5B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC;gBACnD,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,mBAAmB,CAAC;gBACrE,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACvE,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QAE1D,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,CAAC;IACjD,CAAC;IAED;;;;;;;OAOG;IACK,mBAAmB;QACzB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAEO,kBAAkB;QACxB,IAAI,CAAC,aAAa,EAAE,aAAa;aAC9B,IAAI,CACH,GAAG,CACD,GAAG,EAAE,CACH,CAAC;YACC,GAAG,IAAI,CAAC,aAAa,EAAE,MAAM;SAC9B,CAAqB,CACzB,EACD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EACjE,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CACpC;aACA,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YACpB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,gBAAgB,CAAC,YAAY;aAC/B,IAAI,CACH,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EACpD,GAAG,CAAC,CAAC,KAAwB,EAAE,EAAE;YAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/C,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EACF,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CACpC;aACA,SAAS,CAAC,CAAC,KAAwB,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACpB,IAAI,CAAC,+BAA+B,EAAE,CAAC;YACzC,CAAC;YAED,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAI,IAAI,CAAC,aAAa,CAAC,KAAgB,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAEzE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YAElD,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;gBACrB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAC9C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CACnE,CAAC;QAEF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEhD,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACrB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,MAAc;QACjC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe;aACxC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAC9C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CACnE,CAAC;YAEF,OAAO,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7F,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAA+B,CAAC;QAEjD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACpD,CAAC;IAEO,+BAA+B;QACrC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,eAAyB,EAAE,EAAE;YAClE,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YAEpD,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBACnC,MAAM,uBAAuB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAChE,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CACjC,CAAC;gBAEF,IAAI,CAAC,wBAAwB;oBAC3B,uBAAuB,CAAC,MAAM,GAAG,CAAC;wBAClC,uBAAuB,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;gBAE1D,IAAI,CAAC,kBAAkB;oBACrB,uBAAuB,CAAC,MAAM,GAAG,CAAC;wBAClC,uBAAuB,CAAC,MAAM,KAAK,eAAe,CAAC,MAAM,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;uGAlXU,qBAAqB;2FAArB,qBAAqB,m/DCtFlC,kyHA8GA,ysKDvCI,OAAO,mFACP,eAAe,g1BACf,eAAe,8BACf,mBAAmB,yTACnB,wBAAwB,mvBAExB,iBAAiB,kGACjB,kBAAkB,yLAClB,qBAAqB,0JATrB,MAAM;;2FAgBG,qBAAqB;kBAtBjC,SAAS;+BACE,eAAe,iBAGV,iBAAiB,CAAC,IAAI,WAC5B;wBACP,MAAM;wBACN,OAAO;wBACP,eAAe;wBACf,eAAe;wBACf,mBAAmB;wBACnB,wBAAwB;wBAExB,iBAAiB;wBACjB,kBAAkB;wBAClB,qBAAqB;qBACtB,QACK;wBACJ,4BAA4B,EAAE,cAAc;wBAC5C,wBAAwB,EAAE,YAAY;qBACvC;iGA8DgC,WAAW","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n input,\n model,\n signal,\n effect,\n OnInit,\n inject,\n Component,\n viewChild,\n DestroyRef,\n ViewEncapsulation,\n computed,\n} from '@angular/core';\n\nimport {\n NgControl,\n ValidatorFn,\n FormControl,\n ValidationErrors,\n AsyncValidatorFn,\n UntypedFormControl,\n ReactiveFormsModule,\n ControlValueAccessor,\n} from '@angular/forms';\n\nimport { NgClass } from '@angular/common';\n\nimport { RxPush } from '@rx-angular/template/push';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { of, ReplaySubject, map, take, mergeWith } from 'rxjs';\nimport { NgxMatSelectSearchModule } from 'ngx-mat-select-search';\nimport { MatSelectModule, MatSelect } from '@angular/material/select';\nimport { MatOptionModule } from '@angular/material/core';\n\nimport { WattIconComponent } from '@energinet/watt/icon';\nimport { WattFieldComponent } from '@energinet/watt/field';\nimport { WattMenuChipComponent } from '@energinet/watt/chip';\n\nimport type { WattDropdownValue } from './watt-dropdown-value';\nimport type {\n WattDropdownOptions,\n WattDropdownOptionGroup,\n WattDropdownGroupedOptions,\n} from './watt-dropdown-option';\n\n@Component({\n selector: 'watt-dropdown',\n templateUrl: './watt-dropdown.component.html',\n styleUrls: ['./watt-dropdown.component.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n RxPush,\n NgClass,\n MatSelectModule,\n MatOptionModule,\n ReactiveFormsModule,\n NgxMatSelectSearchModule,\n\n WattIconComponent,\n WattFieldComponent,\n WattMenuChipComponent,\n ],\n host: {\n '[attr.watt-field-disabled]': 'isDisabled()',\n '[class.watt-chip-mode]': 'chipMode()',\n },\n})\nexport class WattDropdownComponent implements ControlValueAccessor, OnInit {\n private parentControlDirective = inject(NgControl, { host: true });\n private destroyRef = inject(DestroyRef);\n private validateParent?: ValidatorFn;\n private validateParentAsync?: AsyncValidatorFn;\n private _options: WattDropdownOptions = [];\n private _groupedOptions: WattDropdownGroupedOptions = [];\n parentControl: FormControl | null = null;\n matSelectControl = new FormControl<string | string[] | undefined | null>(null);\n\n /**\n * Control for the MatSelect filter keyword\n */\n filterControl = new UntypedFormControl();\n\n /**\n * List of options filtered by search keyword\n */\n filteredOptions$ = new ReplaySubject<WattDropdownOptions>(1);\n\n /**\n * List of grouped options filtered by search keyword\n */\n filteredGroupedOptions$ = new ReplaySubject<WattDropdownGroupedOptions>(1);\n\n mergedFilteredOptions$ = this.filteredOptions$.pipe(\n mergeWith(this.filteredGroupedOptions$),\n take(1),\n map((options) => {\n if (this.hasGroups()) {\n return (options as WattDropdownGroupedOptions)\n .flatMap((group) => ('options' in group ? group.options : []))\n .map((option) => option.value);\n }\n\n return (options as WattDropdownOptions).map((option) => option.value);\n })\n );\n\n emDash = '—';\n isToggleAllChecked = false;\n isToggleAllIndeterminate = false;\n isDisabled = signal(false);\n\n get showTriggerValue(): boolean {\n const multiple = this.multiple();\n return (multiple &&\n this.matSelectControl.value?.length === 1 &&\n this.matSelectControl.value[0] !== '') ||\n (!multiple && this.matSelect()?.triggerValue)\n ? true\n : false;\n }\n\n get showChipLabel() {\n return this.multiple() && this.matSelectControl.value && this.matSelectControl.value.length > 1\n ? true\n : false;\n }\n\n matSelect = viewChild<MatSelect>('matSelect');\n hideSearch = input(false);\n panelWidth = input<null | 'auto'>(null);\n getCustomTrigger = input<(value: string | string[]) => string>();\n\n /**\n * Set the mode of the dropdown.\n */\n chipMode = input(false);\n disableSelectedMode = input(false);\n sortDirection = input<'asc' | 'desc'>();\n\n /**\n * Sets the options for the dropdown.\n * Can be a flat array of options or an array containing both options and option groups.\n */\n options = model<WattDropdownOptions | WattDropdownGroupedOptions>([]);\n\n /**\n * Sets support for selecting multiple dropdown options.\n */\n multiple = input(false);\n\n /**\n * Sets support for hiding the reset option in \"single\" select mode.\n */\n showResetOption = input(true);\n\n /**\n * Sets the placeholder for the dropdown.\n */\n placeholder = input('');\n\n /**\n * Sets the label for the dropdown.\n */\n label = input('');\n\n /**\n * Label to be shown when no options are found after filtering.\n *\n * Note: The label is visible in \"multiple\" mode only.\n */\n noOptionsFoundLabel = input('');\n\n hasGroups = computed(() => {\n const options = this.options() ?? [];\n return options.some(\n (option) => 'options' in option && Array.isArray((option as WattDropdownOptionGroup).options)\n );\n });\n\n constructor() {\n effect(() => {\n const options = this.options();\n if (Array.isArray(options)) {\n const optionsCopy = [...options];\n\n if (this.hasGroups()) {\n this.handleGroup(optionsCopy as WattDropdownGroupedOptions);\n } else {\n this.handleFlat(optionsCopy as WattDropdownOptions);\n }\n }\n });\n this.parentControlDirective.valueAccessor = this;\n }\n\n private handleFlat(optionsCopy: WattDropdownOptions) {\n if (this.sortDirection()) {\n optionsCopy = this.sortOptions(optionsCopy);\n }\n\n this._options = optionsCopy;\n this.filteredOptions$.next(this._options);\n }\n\n private handleGroup(optionsCopy: WattDropdownGroupedOptions) {\n this._groupedOptions = this.processGroupedOptions(optionsCopy);\n this.filteredGroupedOptions$.next(this._groupedOptions);\n }\n\n private processGroupedOptions(options: WattDropdownGroupedOptions): WattDropdownGroupedOptions {\n return options.map((group) => {\n if (this.sortDirection()) {\n group.options = this.sortOptions(group.options);\n }\n return group;\n });\n }\n\n ngOnInit() {\n this.listenForFilterFieldValueChanges();\n this.initializePropertiesFromParent();\n this.bindParentValidatorsToControl();\n this.bindControlToParent();\n }\n\n writeValue(value: WattDropdownValue) {\n this.matSelectControl.setValue(value);\n }\n\n registerOnChange(onChangeFn: (value: WattDropdownValue) => void) {\n this.changeParentValue = onChangeFn;\n }\n\n registerOnTouched(onTouchFn: () => void) {\n this.markParentControlAsTouched = onTouchFn;\n }\n\n setDisabledState(shouldDisable: boolean) {\n this.isDisabled.set(shouldDisable);\n if (shouldDisable) {\n this.matSelectControl.disable();\n } else {\n this.matSelectControl.enable();\n }\n }\n\n onToggleAll(toggleAllState: boolean) {\n this.mergedFilteredOptions$.subscribe((filteredOptions: string[]) => {\n const optionsToSelect = toggleAllState ? filteredOptions : [];\n this.matSelectControl.patchValue(optionsToSelect);\n });\n }\n\n public sortOptions(options: WattDropdownOptions): WattDropdownOptions {\n return [...options].sort((a, b) => {\n return this.sortDirection() === 'asc'\n ? a.displayValue.localeCompare(b.displayValue)\n : b.displayValue.localeCompare(a.displayValue);\n });\n }\n\n private listenForFilterFieldValueChanges() {\n this.filterControl.valueChanges.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.filterOptions();\n\n if (this.multiple()) {\n this.determineToggleAllCheckboxState();\n }\n });\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n private changeParentValue = (value: WattDropdownValue) => {\n // Intentionally left empty\n };\n\n private markParentControlAsTouched = () => {\n // Intentionally left empty\n };\n\n /**\n * @ignore\n *\n * Store the parent control, its validators and async validators in properties\n * of this component.\n */\n private initializePropertiesFromParent() {\n this.parentControl = this.parentControlDirective.control as UntypedFormControl;\n\n this.validateParent =\n (this.parentControl.validator && this.parentControl.validator.bind(this.parentControl)) ||\n (() => null);\n\n this.validateParentAsync =\n (this.parentControl.asyncValidator &&\n this.parentControl.asyncValidator.bind(this.parentControl)) ||\n (() => of(null));\n }\n\n /**\n * @ignore\n *\n * Inherit validators from parent form control.\n */\n private bindParentValidatorsToControl() {\n const validators = !this.matSelectControl.validator\n ? [this.validateParent]\n : Array.isArray(this.matSelectControl.validator)\n ? [...this.matSelectControl.validator, this.validateParent]\n : [this.matSelectControl.validator, this.validateParent];\n this.matSelectControl.setValidators(validators);\n\n const asyncValidators = !this.matSelectControl.asyncValidator\n ? [this.validateParentAsync]\n : Array.isArray(this.matSelectControl.asyncValidator)\n ? [...this.matSelectControl.asyncValidator, this.validateParentAsync]\n : [this.matSelectControl.asyncValidator, this.validateParentAsync];\n this.matSelectControl.setAsyncValidators(asyncValidators);\n\n this.matSelectControl.updateValueAndValidity();\n }\n\n /**\n * @ignore\n *\n * Emit values to the parent form control when our form control's value\n * changes.\n *\n * Reflect parent validation errors in our form control.\n */\n private bindControlToParent() {\n this.handleValueChange();\n this.handleStatusChange();\n }\n\n private handleStatusChange() {\n this.parentControl?.statusChanges\n .pipe(\n map(\n () =>\n ({\n ...this.parentControl?.errors,\n }) as ValidationErrors\n ),\n map((errors) => (Object.keys(errors).length > 0 ? errors : null)),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe((errors) => {\n this.matSelectControl.setErrors(errors);\n });\n }\n\n private handleValueChange() {\n this.matSelectControl.valueChanges\n .pipe(\n map((value) => (value === undefined ? null : value)),\n map((value: WattDropdownValue) => {\n if (Array.isArray(value) && value.length === 0) {\n return null;\n }\n\n return value;\n }),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe((value: WattDropdownValue) => {\n if (this.multiple()) {\n this.determineToggleAllCheckboxState();\n }\n\n this.markParentControlAsTouched();\n this.changeParentValue(value);\n });\n }\n\n private filterOptions() {\n if (!this._options) {\n return;\n }\n\n const search = (this.filterControl.value as string).trim().toLowerCase();\n\n if (!search) {\n this.filteredOptions$.next(this._options.slice());\n\n if (this.hasGroups()) {\n this.filteredGroupedOptions$.next(this._groupedOptions.slice());\n }\n return;\n }\n\n const filteredFlatOptions = this._options.filter(\n (option) => option.displayValue.toLowerCase().indexOf(search) > -1\n );\n\n this.filteredOptions$.next(filteredFlatOptions);\n\n if (this.hasGroups()) {\n this.filterGroups(search);\n }\n }\n\n private filterGroups(search: string) {\n const filteredGroups = this._groupedOptions\n .map((item) => {\n if (!('options' in item)) {\n return null;\n }\n const filteredGroupOptions = item.options.filter(\n (option) => option.displayValue.toLowerCase().indexOf(search) > -1\n );\n\n return filteredGroupOptions.length > 0 ? { ...item, options: filteredGroupOptions } : null;\n })\n .filter(Boolean) as WattDropdownGroupedOptions;\n\n this.filteredGroupedOptions$.next(filteredGroups);\n }\n\n private determineToggleAllCheckboxState() {\n this.mergedFilteredOptions$.subscribe((filteredOptions: string[]) => {\n const selectedOptions = this.matSelectControl.value;\n\n if (Array.isArray(selectedOptions)) {\n const selectedFilteredOptions = filteredOptions.filter((option) =>\n selectedOptions.includes(option)\n );\n\n this.isToggleAllIndeterminate =\n selectedFilteredOptions.length > 0 &&\n selectedFilteredOptions.length < filteredOptions.length;\n\n this.isToggleAllChecked =\n selectedFilteredOptions.length > 0 &&\n selectedFilteredOptions.length === filteredOptions.length;\n }\n });\n }\n}\n","<!--\n@license\nCopyright 2020 Energinet DataHub A/S\n\nLicensed under the Apache License, Version 2.0 (the \"License2\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n-->\n<watt-field\n [control]=\"parentControl\"\n [chipMode]=\"chipMode()\"\n [label]=\"label()\"\n (click)=\"matSelect.open()\"\n>\n @if (chipMode()) {\n <watt-menu-chip\n [opened]=\"matSelect.panelOpen\"\n (toggleChange)=\"matSelect.open()\"\n [selected]=\"!!matSelect?.triggerValue && !disableSelectedMode()\"\n [disabled]=\"matSelectControl.disabled\"\n >\n {{ placeholder() }}\n @if (showTriggerValue) {\n <span>\n @if (placeholder()) {\n :\n }\n {{ getCustomTrigger()?.(matSelect.value) ?? matSelect?.triggerValue }}\n </span>\n }\n @if (showChipLabel) {\n <span class=\"watt-chip-label\">{{ matSelectControl.value?.length }}</span>\n }\n </watt-menu-chip>\n }\n\n <mat-select\n [attr.aria-label]=\"label()\"\n [formControl]=\"matSelectControl\"\n [placeholder]=\"placeholder()\"\n #matSelect\n [panelWidth]=\"panelWidth()\"\n [multiple]=\"multiple()\"\n [ngClass]=\"{ chip: chipMode(), 'mat-mdc-select-multiple': multiple() }\"\n [panelClass]=\"{\n 'watt-dropdown-panel': true,\n 'watt-dropdown-panel-chip-mode': chipMode(),\n 'mat-mdc-select-panel-multiple': multiple(),\n }\"\n >\n <!-- We use this instead of ngIf, since it will trigger a NG0100: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. -->\n <mat-option [style.display]=\"!hideSearch() ? 'block' : 'none'\">\n <ngx-mat-select-search\n [formControl]=\"filterControl\"\n [placeholderLabel]=\"placeholder()\"\n closeIcon=\"close\"\n [showToggleAllCheckbox]=\"multiple()\"\n (toggleAll)=\"onToggleAll($event)\"\n [toggleAllCheckboxChecked]=\"isToggleAllChecked\"\n [toggleAllCheckboxIndeterminate]=\"isToggleAllIndeterminate\"\n [noEntriesFoundLabel]=\"noOptionsFoundLabel()\"\n >\n <watt-icon ngxMatSelectSearchClear name=\"close\" size=\"s\" />\n </ngx-mat-select-search>\n </mat-option>\n\n @if (!multiple() && showResetOption()) {\n <mat-option>{{ emDash }}</mat-option>\n }\n\n @if (hasGroups()) {\n @for (item of filteredGroupedOptions$ | push; track item) {\n @if (\"options\" in item) {\n <mat-optgroup [label]=\"item.label\" [disabled]=\"item.disabled\">\n @for (option of item.options; track option) {\n <mat-option\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n [class.mat-mdc-option-multiple]=\"multiple()\"\n >\n {{ option.displayValue }}\n </mat-option>\n }\n </mat-optgroup>\n }\n }\n } @else {\n @for (option of filteredOptions$ | push; track option) {\n <mat-option\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n [class.mat-mdc-option-multiple]=\"multiple()\"\n >\n {{ option.displayValue }}\n </mat-option>\n }\n }\n </mat-select>\n <ng-content />\n <ng-content ngProjectAs=\"watt-field-hint\" select=\"watt-field-hint\" />\n <ng-content ngProjectAs=\"watt-field-error\" select=\"watt-field-error\" />\n</watt-field>\n"]}
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
4
|
export * from './index';
|
|
5
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=energinet-watt-dropzone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energinet-watt-dropzone.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropzone/energinet-watt-dropzone.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
|
|
@@ -19,4 +19,4 @@
|
|
|
19
19
|
export { WattDropZone } from './watt-dropzone';
|
|
20
20
|
export { WattDropZoneIntlService } from './watt-dropzone-intl';
|
|
21
21
|
export { FileTypeValidator, MultipleFilesValidator, maxFileSize, limitFiles, } from './watt-dropzone-validators';
|
|
22
|
-
//# sourceMappingURL=
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropzone/index.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,WAAW,EACX,UAAU,GACX,MAAM,4BAA4B,CAAC","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nexport { WattDropZone } from './watt-dropzone';\nexport { WattDropZoneIntlService } from './watt-dropzone-intl';\nexport {\n FileTypeValidator,\n MultipleFilesValidator,\n maxFileSize,\n limitFiles,\n} from './watt-dropzone-validators';\n"]}
|
|
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
32
32
|
type: Injectable,
|
|
33
33
|
args: [{ providedIn: 'root' }]
|
|
34
34
|
}] });
|
|
35
|
-
//# sourceMappingURL=
|
|
35
|
+
//# sourceMappingURL=watt-dropzone-intl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-dropzone-intl.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropzone/watt-dropzone-intl.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;;AAG3C,MAAM,OAAO,uBAAuB;IAClC,MAAM,GAAG,gBAAgB,CAAC;IAC1B,cAAc,GAAG,iBAAiB,CAAC;IACnC,SAAS,GAAG,IAAI,CAAC;IACjB,MAAM,GAAG,aAAa,CAAC;IACvB,cAAc,GAAG,cAAc,CAAC;IAChC,cAAc,GAAG,SAAS,CAAC;uGANhB,uBAAuB;2GAAvB,uBAAuB,cADV,MAAM;;2FACnB,uBAAuB;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport { Injectable } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class WattDropZoneIntlService {\n prompt = 'Drop file here';\n promptMultiple = 'Drop files here';\n separator = 'or';\n button = 'Choose file';\n buttonMultiple = 'Choose files';\n loadingMessage = 'Loading';\n}\n"]}
|
|
@@ -64,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
64
64
|
export const limitFiles = (limit) => (control) => control.value?.length && control.value.length > limit ? { limit } : null;
|
|
65
65
|
/** Validates that the file size is less than or equal to the specified maximum size. */
|
|
66
66
|
export const maxFileSize = (size) => (control) => control.value?.some((file) => file.size > size) ? { size } : null;
|
|
67
|
-
//# sourceMappingURL=
|
|
67
|
+
//# sourceMappingURL=watt-dropzone-validators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-dropzone-validators.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropzone/watt-dropzone-validators.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAmB,aAAa,EAA+B,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAY,MAAM,iBAAiB,CAAC;;AAEzD;;;GAGG;AAIH,MAAM,OAAO,iBAAiB;IAC5B,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,QAAQ,CAAC,OAAuC;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAgB,CAAC,CAAC;YAC1F,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;YAChB,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;uGAPU,iBAAiB;2FAAjB,iBAAiB,iCAFjB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;2FAEzE,iBAAiB;kBAH7B,SAAS;mBAAC;oBACT,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;iBACrF;;AAWD;;;GAGG;AAIH,MAAM,OAAO,sBAAsB;IACjC,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,QAAQ,CAAC,OAAuC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC3C,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9E,CAAC;uGALU,sBAAsB;2FAAtB,sBAAsB,iCAFtB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,sBAAsB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;2FAE9E,sBAAsB;kBAHlC,SAAS;mBAAC;oBACT,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,wBAAwB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;iBAC1F;;AASD,wFAAwF;AACxF,MAAM,CAAC,MAAM,UAAU,GACrB,CAAC,KAAa,EAAE,EAAE,CAClB,CAAC,OAAuC,EAA2B,EAAE,CACnE,OAAO,CAAC,KAAK,EAAE,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAE7E,wFAAwF;AACxF,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,IAAY,EAAE,EAAE,CACjB,CAAC,OAAuC,EAA2B,EAAE,CACnE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport { Directive, inject } from '@angular/core';\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\nimport { WattDropZone, MimeType } from './watt-dropzone';\n\n/**\n * Directive that validates the file type of provided files. This is automatically\n * applied to the `WattDropZone` component via `hostDirectives`.\n */\n@Directive({\n providers: [{ provide: NG_VALIDATORS, useExisting: FileTypeValidator, multi: true }],\n})\nexport class FileTypeValidator implements Validator {\n component = inject(WattDropZone, { host: true, self: true });\n validate(control: AbstractControl<File[] | null>): ValidationErrors | null {\n const accept = this.component.accept();\n return accept.length > 0 && control.value?.some((i) => !accept.includes(i.type as MimeType))\n ? { type: true }\n : null;\n }\n}\n\n/**\n * Directive validating that a single file is selected when `multiple` is false.\n * This is automatically applied to the `WattDropZone` component via `hostDirectives`.\n */\n@Directive({\n providers: [{ provide: NG_VALIDATORS, useExisting: MultipleFilesValidator, multi: true }],\n})\nexport class MultipleFilesValidator implements Validator {\n component = inject(WattDropZone, { host: true, self: true });\n validate(control: AbstractControl<File[] | null>): ValidationErrors | null {\n const multiple = this.component.multiple();\n return !multiple && control.value?.length !== 1 ? { multiple: true } : null;\n }\n}\n\n/** Validates that the file size is less than or equal to the specified maximum size. */\nexport const limitFiles =\n (limit: number) =>\n (control: AbstractControl<File[] | null>): ValidationErrors | null =>\n control.value?.length && control.value.length > limit ? { limit } : null;\n\n/** Validates that the file size is less than or equal to the specified maximum size. */\nexport const maxFileSize =\n (size: number) =>\n (control: AbstractControl<File[] | null>): ValidationErrors | null =>\n control.value?.some((file) => file.size > size) ? { size } : null;\n"]}
|
|
@@ -191,4 +191,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
191
191
|
</watt-field>
|
|
192
192
|
`, styles: [".wrapper{display:block;min-height:184px}.dropzone{padding:var(--watt-space-l);background:var(--watt-color-neutral-grey-200)}.dragOver{background:var(--watt-color-state-info-light)}.mat-mdc-progress-bar{--mat-progress-bar-active-indicator-color: var(--watt-color-primary);--mat-progress-bar-track-color: var(--watt-color-primary-light)}\n"] }]
|
|
193
193
|
}], propDecorators: { multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], accept: [{ type: i0.Input, args: [{ isSignal: true, alias: "accept", required: false }] }], showProgressBar: [{ type: i0.Input, args: [{ isSignal: true, alias: "showProgressBar", required: false }] }], progress: [{ type: i0.Input, args: [{ isSignal: true, alias: "progress", required: false }] }], loadingMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingMessage", required: false }] }], selected: [{ type: i0.Output, args: ["selected"] }] } });
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0dC1kcm9wem9uZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvd2F0dC9wYWNrYWdlL2Ryb3B6b25lL3dhdHQtZHJvcHpvbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILFlBQVk7QUFDWixPQUFPLEVBQ0wsU0FBUyxFQUNULGdCQUFnQixFQUNoQixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQTBGdkYsa0VBQWtFO0FBQ2xFLE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLElBQUksR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUV2Qyx5REFBeUQ7SUFDekQsUUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFLLDRDQUFJLFNBQVMsRUFBRSxnQkFBZ0IsT0FBN0IsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsR0FBQyxDQUFDO0lBRXpELDhCQUE4QjtJQUM5QixLQUFLLEdBQUcsS0FBSywyREFBVSxDQUFDO0lBRXhCLG9FQUFvRTtJ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bUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBQ3JCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixvQkFBb0I7cUJBQ3JCLFlBQ1MsZUFBZSxrQkFDVCxDQUFDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLGFBQ2hEO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQzs0QkFDM0MsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsWUFxQlM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZDVCIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiBMaWNlbnNlXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMCBFbmVyZ2luZXQgRGF0YUh1YiBBL1NcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlMlwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vLyNlbmRyZWdpb25cbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgZm9yd2FyZFJlZixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXInO1xuXG5pbXBvcnQgeyBXYXR0QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGVuZXJnaW5ldC93YXR0L2J1dHRvbic7XG5pbXBvcnQgeyBXYXR0RmllbGRDb21wb25lbnQgfSBmcm9tICdAZW5lcmdpbmV0L3dhdHQvZmllbGQnO1xuaW1wb3J0IHsgVmF0ZXJTdGFja0NvbXBvbmVudCwgVmF0ZXJVdGlsaXR5RGlyZWN0aXZlIH0gZnJvbSAnQGVuZXJnaW5ldC93YXR0L3ZhdGVyJztcbmltcG9ydCB7IFdhdHREcm9wWm9uZUludGxTZXJ2aWNlIH0gZnJvbSAnLi93YXR0LWRyb3B6b25lLWludGwnO1xuaW1wb3J0IHsgRmlsZVR5cGVWYWxpZGF0b3IsIE11bHRpcGxlRmlsZXNWYWxpZGF0b3IgfSBmcm9tICcuL3dhdHQtZHJvcHpvbmUtdmFsaWRhdG9ycyc7XG5cbi8vIFNsaWdodGx5IGJldHRlciB0eXBpbmcgdGhhbiBqdXN0IHJhdyBzdHJpbmdcbmV4cG9ydCB0eXBlIE1pbWVUeXBlID0gYCR7c3RyaW5nfS8ke3N0cmluZ31gO1xuXG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW1xuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVmF0ZXJTdGFja0NvbXBvbmVudCxcbiAgICBWYXRlclV0aWxpdHlEaXJlY3RpdmUsXG4gICAgV2F0dEJ1dHRvbkNvbXBvbmVudCxcbiAgICBXYXR0RmllbGRDb21wb25lbnQsXG4gICAgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUsXG4gIF0sXG4gIHNlbGVjdG9yOiAnd2F0dC1kcm9wem9uZScsXG4gIGhvc3REaXJlY3RpdmVzOiBbRmlsZVR5cGVWYWxpZGF0b3IsIE11bHRpcGxlRmlsZXNWYWxpZGF0b3JdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFdhdHREcm9wWm9uZSksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzdHlsZXM6IGBcbiAgICAud3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1pbi1oZWlnaHQ6IDE4NHB4OyAvKiBNYWdpYyBVWCBudW1iZXIgKi9cbiAgICB9XG5cbiAgICAuZHJvcHpvbmUge1xuICAgICAgcGFkZGluZzogdmFyKC0td2F0dC1zcGFjZS1sKTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdhdHQtY29sb3ItbmV1dHJhbC1ncmV5LTIwMCk7XG4gICAgfVxuXG4gICAgLmRyYWdPdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdhdHQtY29sb3Itc3RhdGUtaW5mby1saWdodCk7XG4gICAgfVxuXG4gICAgLm1hdC1tZGMtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgIC0tbWF0LXByb2dyZXNzLWJhci1hY3RpdmUtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS13YXR0LWNvbG9yLXByaW1hcnkpO1xuICAgICAgLS1tYXQtcHJvZ3Jlc3MtYmFyLXRyYWNrLWNvbG9yOiB2YXIoLS13YXR0LWNvbG9yLXByaW1hcnktbGlnaHQpO1xuICAgIH1cbiAgYCxcbiAgdGVtcGxhdGU6IGBcbiAgICA8d2F0dC1maWVsZCBbbGFiZWxdPVwibGFiZWwoKVwiPlxuICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIndhdHQtZmllbGQtZXJyb3JcIiBuZ1Byb2plY3RBcz1cIndhdHQtZmllbGQtZXJyb3JcIiAvPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwid2F0dC1maWVsZC13YXJuaW5nXCIgbmdQcm9qZWN0QXM9XCJ3YXR0LWZpZWxkLXdhcm5pbmdcIiAvPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwid2F0dC1maWVsZC1oaW50XCIgbmdQcm9qZWN0QXM9XCJ3YXR0LWZpZWxkLWhpbnRcIiAvPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ3cmFwcGVyXCI+XG4gICAgICAgIDx2YXRlci1zdGFja1xuICAgICAgICAgIGluc2V0PVwiMFwiXG4gICAgICAgICAgY2xhc3M9XCJkcm9wem9uZVwiXG4gICAgICAgICAgW2NsYXNzLmRyYWdPdmVyXT1cImRyYWdPdmVyKClcIlxuICAgICAgICAgIChkcmFnb3Zlcik9XCJoYW5kbGVEcmFnT3ZlcigkZXZlbnQpXCJcbiAgICAgICAgICAoZHJvcCk9XCJoYW5kbGVEcm9wKCRldmVudClcIlxuICAgICAgICAgIChkcm9wKT1cImRyYWdPdmVyLnNldChmYWxzZSlcIlxuICAgICAgICAgIChkcmFnbGVhdmUpPVwiZHJhZ092ZXIuc2V0KGZhbHNlKVwiXG4gICAgICAgID5cbiAgICAgICAgICBAaWYgKHNob3dQcm9ncmVzc0JhcigpKSB7XG4gICAgICAgICAgICA8dmF0ZXItc3RhY2sgY2VudGVyIGdhcD1cInNcIiBmaWxsPVwiaG9yaXpvbnRhbFwiIGFsaWduPVwic3RhcnRcIj5cbiAgICAgICAgICAgICAgPHZhdGVyLXN0YWNrIGZpbGw9XCJob3Jpem9udGFsXCIgZGlyZWN0aW9uPVwicm93XCIganVzdGlmeT1cInNwYWNlLWJldHdlZW5cIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eyBsb2FkaW5nTWVzc2FnZSgpID8/IGludGwubG9hZGluZ01lc3NhZ2UgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3sgcHJvZ3Jlc3MoKSB9fSU8L3NwYW4+XG4gICAgICAgICAgICAgIDwvdmF0ZXItc3RhY2s+XG5cbiAgICAgICAgICAgICAgPG1hdC1wcm9ncmVzcy1iYXIgbW9kZT1cImRldGVybWluYXRlXCIgW3ZhbHVlXT1cInByb2dyZXNzKClcIiAvPlxuICAgICAgICAgICAgPC92YXRlci1zdGFjaz5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDx2YXRlci1zdGFjayBjZW50ZXIgZ2FwPVwieHNcIj5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgI2lucHV0XG4gICAgICAgICAgICAgICAgaGlkZGVuXG4gICAgICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZSgpXCJcbiAgICAgICAgICAgICAgICBbYWNjZXB0XT1cImFjY2VwdCgpLmpvaW4oJywnKVwiXG4gICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoaW5wdXQpXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgbXVsdGlwbGUoKSA/IGludGwucHJvbXB0TXVsdGlwbGUgOiBpbnRsLnByb21wdCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3YXR0LW9uLWxpZ2h0LS1tZWRpdW0tZW1waGFzaXNcIj57eyBpbnRsLnNlcGFyYXRvciB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHdhdHQtYnV0dG9uIHNpemU9XCJzbWFsbFwiIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiAoY2xpY2spPVwiaW5wdXQuY2xpY2soKVwiPlxuICAgICAgICAgICAgICAgIHt7IG11bHRpcGxlKCkgPyBpbnRsLmJ1dHRvbk11bHRpcGxlIDogaW50bC5idXR0b24gfX1cbiAgICAgICAgICAgICAgPC93YXR0LWJ1dHRvbj5cbiAgICAgICAgICAgIDwvdmF0ZXItc3RhY2s+XG4gICAgICAgICAgfVxuICAgICAgICA8L3ZhdGVyLXN0YWNrPlxuICAgICAgPC9zcGFuPlxuICAgIDwvd2F0dC1maWVsZD5cbiAgYCxcbn0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBXYXR0RHJvcFpvbmUgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIGludGwgPSBpbmplY3QoV2F0dERyb3Bab25lSW50bFNlcnZpY2UpO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBkcm9wem9uZSBzaG91bGQgYWNjZXB0IG11bHRpcGxlIGZpbGVzLiAqL1xuICBtdWx0aXBsZSA9IGlucHV0KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICAvKiogTGFiZWwgZm9yIHRoZSBkcm9wem9uZS4gKi9cbiAgbGFiZWwgPSBpbnB1dDxzdHJpbmc+KCk7XG5cbiAgLyoqIENvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIE1JTUUgdHlwZXMgdGhhdCB0aGUgZHJvcHpvbmUgYWNjZXB0cy4gKi9cbiAgYWNjZXB0ID0gaW5wdXQoW10sIHsgdHJhbnNmb3JtOiAodmFsdWU6IE1pbWVUeXBlKSA9PiB2YWx1ZS5zcGxpdCgnLCcpIGFzIE1pbWVUeXBlW10gfSk7XG5cbiAgLyoqIFdoZXRoZXIgdG8gc2hvdyB0aGUgcHJvZ3Jlc3MgYmFyLiBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCBgcHJvZ3Jlc3NgLiAqL1xuICBzaG93UHJvZ3Jlc3NCYXIgPSBpbnB1dChmYWxzZSk7XG5cbiAgLyoqIFZhbHVlIGZvciB0aGUgcHJvZ3Jlc3MgYmFyLiBPbmx5IHNob3duIHdoZW4gYHNob3dQcm9ncmVzc0JhcmAgaXMgdHJ1ZS4gKi9cbiAgcHJvZ3Jlc3MgPSBpbnB1dCgwKTtcblxuICAvKiogTWVzc2FnZSB0byBkaXNwbGF5IHdoZW4gYHNob3dQcm9ncmVzc0JhcmAgaXMgdHJ1ZS4gT3ZlcnJpZGVzIGRlZmF1bHQgaW1wbGVtZW50YXRpb24uICovXG4gIGxvYWRpbmdNZXNzYWdlID0gaW5wdXQ8c3RyaW5nPigpO1xuXG4gIC8qKiBFbWl0cyB3aGVuIG9uZSBvciBtb3JlIGZpbGVzIGFyZSBzZWxlY3RlZC4gKi9cbiAgc2VsZWN0ZWQgPSBvdXRwdXQ8RmlsZVtdPigpO1xuXG4gIC8vIFRyYWNrcyAodmFsaWQpIGRyYWcgb3ZlciBzdGF0ZVxuICBkcmFnT3ZlciA9IHNpZ25hbChmYWxzZSk7XG5cbiAgaGFuZGxlQ2hhbmdlKGlucHV0OiBIVE1MSW5wdXRFbGVtZW50KSB7XG4gICAgaWYgKCFpbnB1dC5maWxlcykgcmV0dXJuO1xuICAgIHRoaXMuc2VsZWN0ZWQuZW1pdChBcnJheS5mcm9tKGlucHV0LmZpbGVzKSk7XG4gICAgaW5wdXQudmFsdWUgPSAnJzsgLy8gZml4IGZvciBjaHJvbWUgbm90IGVtaXR0aW5nIGV2ZW50IHdoZW4gc2VsZWN0aW5nIHRoZSBzYW1lIGZpbGVcbiAgfVxuXG4gIGhhbmRsZURyb3AoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgIGlmICghZXZlbnQuZGF0YVRyYW5zZmVyKSByZXR1cm47XG4gICAgaWYgKCF0aGlzLmRyYWdPdmVyKCkpIHJldHVybjtcblxuICAgIC8vIFByZXZlbnQgb3BlbmluZyB0aGUgZmlsZSBpbiB0aGUgYnJvd3NlclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICB0aGlzLnNlbGVjdGVkLmVtaXQoQXJyYXkuZnJvbShldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpKTtcbiAgfVxuXG4gIGhhbmRsZURyYWdPdmVyKGV2ZW50OiBEcmFnRXZlbnQpIHtcbiAgICBpZiAoIWV2ZW50LmRhdGFUcmFuc2ZlcikgcmV0dXJuO1xuXG4gICAgLy8gSWdub3JlIG5vbi1maWxlIGl0ZW1zIHN1Y2ggYXMgc3RyaW5nc1xuICAgIGlmIChBcnJheS5mcm9tKGV2ZW50LmRhdGFUcmFuc2Zlci5pdGVtcykuc29tZSgoaSkgPT4gaS5raW5kICE9PSAnZmlsZScpKSByZXR1cm47XG5cbiAgICAvLyBQcmV2ZW50IG9wZW5pbmcgdGhlIGZpbGUgaW4gdGhlIGJyb3dzZXJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgdGhpcy5kcmFnT3Zlci5zZXQodHJ1ZSk7XG4gIH1cblxuICAvLyBJbXBsZW1lbnRhdGlvbiBmb3IgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgd3JpdGVWYWx1ZSA9ICgpID0+IHt9OyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICByZWdpc3Rlck9uVG91Y2hlZCA9IChmbjogKCkgPT4gdm9pZCkgPT4gdGhpcy5zZWxlY3RlZC5zdWJzY3JpYmUoZm4pO1xuICByZWdpc3Rlck9uQ2hhbmdlID0gKGZuOiAodmFsdWU6IEZpbGVbXSkgPT4gdm9pZCkgPT4gdGhpcy5zZWxlY3RlZC5zdWJzY3JpYmUoZm4pO1xufVxuIl19
|
|
194
|
+
//# sourceMappingURL=watt-dropzone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-dropzone.js","sourceRoot":"","sources":["../../../../libs/watt/package/dropzone/watt-dropzone.ts"],"names":[],"mappings":"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","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport {\n Component,\n booleanAttribute,\n forwardRef,\n inject,\n input,\n output,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\n\nimport { WattButtonComponent } from '@energinet/watt/button';\nimport { WattFieldComponent } from '@energinet/watt/field';\nimport { VaterStackComponent, VaterUtilityDirective } from '@energinet/watt/vater';\nimport { WattDropZoneIntlService } from './watt-dropzone-intl';\nimport { FileTypeValidator, MultipleFilesValidator } from './watt-dropzone-validators';\n\n// Slightly better typing than just raw string\nexport type MimeType = `${string}/${string}`;\n\n@Component({\n imports: [\n ReactiveFormsModule,\n VaterStackComponent,\n VaterUtilityDirective,\n WattButtonComponent,\n WattFieldComponent,\n MatProgressBarModule,\n ],\n selector: 'watt-dropzone',\n hostDirectives: [FileTypeValidator, MultipleFilesValidator],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => WattDropZone),\n multi: true,\n },\n ],\n styles: `\n .wrapper {\n display: block;\n min-height: 184px; /* Magic UX number */\n }\n\n .dropzone {\n padding: var(--watt-space-l);\n background: var(--watt-color-neutral-grey-200);\n }\n\n .dragOver {\n background: var(--watt-color-state-info-light);\n }\n\n .mat-mdc-progress-bar {\n --mat-progress-bar-active-indicator-color: var(--watt-color-primary);\n --mat-progress-bar-track-color: var(--watt-color-primary-light);\n }\n `,\n template: `\n <watt-field [label]=\"label()\">\n <ng-content />\n <ng-content select=\"watt-field-error\" ngProjectAs=\"watt-field-error\" />\n <ng-content select=\"watt-field-warning\" ngProjectAs=\"watt-field-warning\" />\n <ng-content select=\"watt-field-hint\" ngProjectAs=\"watt-field-hint\" />\n <span class=\"wrapper\">\n <vater-stack\n inset=\"0\"\n class=\"dropzone\"\n [class.dragOver]=\"dragOver()\"\n (dragover)=\"handleDragOver($event)\"\n (drop)=\"handleDrop($event)\"\n (drop)=\"dragOver.set(false)\"\n (dragleave)=\"dragOver.set(false)\"\n >\n @if (showProgressBar()) {\n <vater-stack center gap=\"s\" fill=\"horizontal\" align=\"start\">\n <vater-stack fill=\"horizontal\" direction=\"row\" justify=\"space-between\">\n <span>{{ loadingMessage() ?? intl.loadingMessage }}</span>\n <span>{{ progress() }}%</span>\n </vater-stack>\n\n <mat-progress-bar mode=\"determinate\" [value]=\"progress()\" />\n </vater-stack>\n } @else {\n <vater-stack center gap=\"xs\">\n <input\n #input\n hidden\n type=\"file\"\n [multiple]=\"multiple()\"\n [accept]=\"accept().join(',')\"\n (change)=\"handleChange(input)\"\n />\n <span>{{ multiple() ? intl.promptMultiple : intl.prompt }}</span>\n <span class=\"watt-on-light--medium-emphasis\">{{ intl.separator }}</span>\n <watt-button size=\"small\" variant=\"secondary\" (click)=\"input.click()\">\n {{ multiple() ? intl.buttonMultiple : intl.button }}\n </watt-button>\n </vater-stack>\n }\n </vater-stack>\n </span>\n </watt-field>\n `,\n})\n// eslint-disable-next-line @angular-eslint/component-class-suffix\nexport class WattDropZone implements ControlValueAccessor {\n intl = inject(WattDropZoneIntlService);\n\n /** Whether the dropzone should accept multiple files. */\n multiple = input(false, { transform: booleanAttribute });\n\n /** Label for the dropzone. */\n label = input<string>();\n\n /** Comma-separated list of MIME types that the dropzone accepts. */\n accept = input([], { transform: (value: MimeType) => value.split(',') as MimeType[] });\n\n /** Whether to show the progress bar. Use in conjunction with `progress`. */\n showProgressBar = input(false);\n\n /** Value for the progress bar. Only shown when `showProgressBar` is true. */\n progress = input(0);\n\n /** Message to display when `showProgressBar` is true. Overrides default implementation. */\n loadingMessage = input<string>();\n\n /** Emits when one or more files are selected. */\n selected = output<File[]>();\n\n // Tracks (valid) drag over state\n dragOver = signal(false);\n\n handleChange(input: HTMLInputElement) {\n if (!input.files) return;\n this.selected.emit(Array.from(input.files));\n input.value = ''; // fix for chrome not emitting event when selecting the same file\n }\n\n handleDrop(event: DragEvent) {\n if (!event.dataTransfer) return;\n if (!this.dragOver()) return;\n\n // Prevent opening the file in the browser\n event.preventDefault();\n\n this.selected.emit(Array.from(event.dataTransfer.files));\n }\n\n handleDragOver(event: DragEvent) {\n if (!event.dataTransfer) return;\n\n // Ignore non-file items such as strings\n if (Array.from(event.dataTransfer.items).some((i) => i.kind !== 'file')) return;\n\n // Prevent opening the file in the browser\n event.preventDefault();\n\n this.dragOver.set(true);\n }\n\n // Implementation for ControlValueAccessor\n writeValue = () => {}; // eslint-disable-line @typescript-eslint/no-empty-function\n registerOnTouched = (fn: () => void) => this.selected.subscribe(fn);\n registerOnChange = (fn: (value: File[]) => void) => this.selected.subscribe(fn);\n}\n"]}
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
4
|
export * from './index';
|
|
5
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=energinet-watt-empty-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energinet-watt-empty-state.js","sourceRoot":"","sources":["../../../../libs/watt/package/empty-state/energinet-watt-empty-state.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
|
|
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
51
51
|
`,
|
|
52
52
|
}]
|
|
53
53
|
}] });
|
|
54
|
-
//# sourceMappingURL=
|
|
54
|
+
//# sourceMappingURL=explore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explore.js","sourceRoot":"","sources":["../../../../../libs/watt/package/empty-state/icons/explore.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;;AAiB1C,MAAM,OAAO,8BAA8B;uGAA9B,8BAA8B;2FAA9B,8BAA8B,oFAb/B;;;;;;;;;;;GAWT;;2FAEU,8BAA8B;kBAf1C,SAAS;mBAAC;oBACT,QAAQ,EAAE,0BAA0B;oBACpC,QAAQ,EAAE;;;;;;;;;;;GAWT;iBACF","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'watt-empty-state-explore',\n template: `\n <svg viewBox=\"0 0 96 98\" fill=\"none\">\n <path\n fill=\"currentColor\"\n d=\"M59.4473 60.5798c-.2445.1864-.503.3517-.7317.5628a34.937 34.937 0 0 1-17.0602 8.5072 34.4744 34.4744 0 0 1-7.8055.591A35.139 35.139 0 0 1 1.4442 45.2255 33.1081 33.1081 0 0 1 .081 37.7788c-.663-10.7585 2.7613-20.015 10.3769-27.6464C15.4248 5.141 21.4574 2.0226 28.3747.656a33.4635 33.4635 0 0 1 7.6807-.6366c8.9962.3324 16.8105 3.5474 23.3356 9.7612 5.25 4.9932 8.5899 11.098 10.1007 18.1842a33.6296 33.6296 0 0 1 .6719 9.1457c-.5417 8.6262-3.7896 16.0818-9.7437 22.3665a6.0972 6.0972 0 0 0-.4045.5276l-.5681.5752Zm9.2494-25.4269c0-18.5657-15.0358-33.5928-33.5928-33.607C16.7263 1.5303 1.511 16.4255 1.511 35.1548c.0158 18.7803 15.2593 33.417 33.2921 33.57 18.3794.1583 33.8514-14.6806 33.8866-33.5718h.007Z\"\n />\n <path\n fill=\"currentColor\"\n d=\"m59.4473 60.5797.5751-.5751c.2515-.1882.2586-.1935.4714.0211.5822.5909 1.159 1.1871 1.7377 1.7816l15.7447 16.1809 16.4183 16.8703c.4414.4537.8794.9058 1.3243 1.3595.1073.1108.2094.2251.2885.3096l-1.043 1.1203-35.7861-36.7587.2691-.3095ZM60.4444 35.8792h-1.4897c-.1196-6.3316-2.3199-11.8331-6.8083-16.3286-4.4884-4.4954-9.9864-6.7045-16.3427-6.8364v-1.4475c12.563-.3887 24.755 10.4508 24.6407 24.6125Z\"\n />\n </svg>\n `,\n})\nexport class WattEmptyStateExploreComponent {}\n"]}
|
|
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
59
59
|
`,
|
|
60
60
|
}]
|
|
61
61
|
}] });
|
|
62
|
-
//# sourceMappingURL=
|
|
62
|
+
//# sourceMappingURL=no-results.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-results.js","sourceRoot":"","sources":["../../../../../libs/watt/package/empty-state/icons/no-results.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;;AAqB1C,MAAM,OAAO,gCAAgC;uGAAhC,gCAAgC;2FAAhC,gCAAgC,uFAjBjC;;;;;;;;;;;;;;;GAeT;;2FAEU,gCAAgC;kBAnB5C,SAAS;mBAAC;oBACT,QAAQ,EAAE,6BAA6B;oBACvC,QAAQ,EAAE;;;;;;;;;;;;;;;GAeT;iBACF","sourcesContent":["//#region License\n/**\n * @license\n * Copyright 2020 Energinet DataHub A/S\n *\n * Licensed under the Apache License, Version 2.0 (the \"License2\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n//#endregion\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'watt-empty-state-no-results',\n template: `\n <svg viewBox=\"0 0 128 128\" fill=\"none\">\n <path\n fill=\"currentColor\"\n fill-rule=\"evenodd\"\n d=\"M64 116c28.719 0 52-23.281 52-52S92.719 12 64 12 12 35.281 12 64s23.281 52 52 52Zm0 2c29.823 0 54-24.177 54-54S93.823 10 64 10 10 34.177 10 64s24.177 54 54 54Z\"\n clip-rule=\"evenodd\"\n />\n <path\n fill=\"currentColor\"\n fill-rule=\"evenodd\"\n d=\"M63.91 65.91 42 87.82l-1.414-1.414 21.91-21.91L40 42l1.414-1.414L63.91 63.082l22.496-22.497L87.82 42 65.325 64.496l21.91 21.91-1.413 1.414-21.91-21.91Z\"\n clip-rule=\"evenodd\"\n />\n </svg>\n `,\n})\nexport class WattEmptyStateNoResultsComponent {}\n"]}
|