@energinet/watt 4.2.3 → 4.2.5
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/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 +4 -4
- 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 +7 -7
- 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 +4 -4
- 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 +4 -4
- package/esm2022/card/watt-card-title.component.js.map +1 -0
- package/esm2022/card/watt-card.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/chip/watt-action-chip.component.js.map +1 -0
- package/esm2022/chip/watt-chip.component.js +4 -4
- package/esm2022/chip/watt-chip.component.js.map +1 -0
- package/esm2022/chip/watt-chip.directive.js +4 -4
- package/esm2022/chip/watt-chip.directive.js.map +1 -0
- package/esm2022/chip/watt-date-chip.component.js +4 -4
- package/esm2022/chip/watt-date-chip.component.js.map +1 -0
- package/esm2022/chip/watt-date-range-chip.component.js +7 -7
- package/esm2022/chip/watt-date-range-chip.component.js.map +1 -0
- package/esm2022/chip/watt-filter-chip.component.js +4 -4
- package/esm2022/chip/watt-filter-chip.component.js.map +1 -0
- package/esm2022/chip/watt-menu-chip.component.js +4 -4
- 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 +4 -4
- package/esm2022/clipboard/watt-clipboard-intl.service.js.map +1 -0
- package/esm2022/clipboard/watt-copy-to-clipboard.directive.js +4 -4
- 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 +4 -4
- package/esm2022/code/watt-code-intl.service.js.map +1 -0
- package/esm2022/code/watt-code.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/data/watt-data-actions.component.js.map +1 -0
- package/esm2022/data/watt-data-filters.component.js +4 -4
- package/esm2022/data/watt-data-filters.component.js.map +1 -0
- package/esm2022/data/watt-data-intl.service.js +4 -4
- package/esm2022/data/watt-data-intl.service.js.map +1 -0
- package/esm2022/data/watt-data-table.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/description-list/watt-description-list-item.component.js.map +1 -0
- package/esm2022/description-list/watt-description-list.component.js +4 -4
- 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 +4 -4
- package/esm2022/drawer/watt-drawer-actions.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer-content.component.js +4 -4
- package/esm2022/drawer/watt-drawer-content.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer-heading.component.js +4 -4
- package/esm2022/drawer/watt-drawer-heading.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer-topbar.component.js +4 -4
- package/esm2022/drawer/watt-drawer-topbar.component.js.map +1 -0
- package/esm2022/drawer/watt-drawer.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/dropzone/watt-dropzone-intl.js.map +1 -0
- package/esm2022/dropzone/watt-dropzone-validators.js +7 -7
- package/esm2022/dropzone/watt-dropzone-validators.js.map +1 -0
- package/esm2022/dropzone/watt-dropzone.js +4 -4
- 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 +4 -4
- package/esm2022/empty-state/icons/explore.js.map +1 -0
- package/esm2022/empty-state/icons/no-results.js +4 -4
- package/esm2022/empty-state/icons/no-results.js.map +1 -0
- package/esm2022/empty-state/icons/not-found.js +4 -4
- package/esm2022/empty-state/icons/not-found.js.map +1 -0
- package/esm2022/empty-state/icons/power.js +4 -4
- 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 +4 -4
- 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 +10 -10
- 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 +4 -4
- package/esm2022/field/watt-field-error.component.js.map +1 -0
- package/esm2022/field/watt-field-hint.component.js +4 -4
- package/esm2022/field/watt-field-hint.component.js.map +1 -0
- package/esm2022/field/watt-field-intl.service.js +4 -4
- package/esm2022/field/watt-field-intl.service.js.map +1 -0
- package/esm2022/field/watt-field-warning.component.js +4 -4
- package/esm2022/field/watt-field-warning.component.js.map +1 -0
- package/esm2022/field/watt-field.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/icon/flags/watt-flag-ch.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-de.js +4 -4
- package/esm2022/icon/flags/watt-flag-de.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-dk.js +4 -4
- package/esm2022/icon/flags/watt-flag-dk.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-fi.js +4 -4
- package/esm2022/icon/flags/watt-flag-fi.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-gb.js +4 -4
- package/esm2022/icon/flags/watt-flag-gb.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-nl.js +4 -4
- package/esm2022/icon/flags/watt-flag-nl.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-no.js +4 -4
- package/esm2022/icon/flags/watt-flag-no.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-pl.js +4 -4
- package/esm2022/icon/flags/watt-flag-pl.js.map +1 -0
- package/esm2022/icon/flags/watt-flag-se.js +4 -4
- package/esm2022/icon/flags/watt-flag-se.js.map +1 -0
- package/esm2022/icon/flags/watt-flag.js +4 -4
- package/esm2022/icon/flags/watt-flag.js.map +1 -0
- package/esm2022/icon/icon.component.js +4 -4
- 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 +4 -4
- package/esm2022/menu/watt-menu-group.component.js.map +1 -0
- package/esm2022/menu/watt-menu-item.component.js +4 -4
- package/esm2022/menu/watt-menu-item.component.js.map +1 -0
- package/esm2022/menu/watt-menu-trigger.directive.js +4 -4
- package/esm2022/menu/watt-menu-trigger.directive.js.map +1 -0
- package/esm2022/menu/watt-menu.component.js +4 -4
- 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 +7 -7
- package/esm2022/modal/watt-modal.component.js.map +1 -0
- package/esm2022/modal/watt-modal.service.js +4 -4
- 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 +4 -4
- package/esm2022/paginator/watt-paginator-intl.service.js.map +1 -0
- package/esm2022/paginator/watt-paginator.component.js +4 -4
- 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 +4 -4
- package/esm2022/phone-field/watt-phone-field-intl.service.js.map +1 -0
- package/esm2022/phone-field/watt-phone-field.component.js +4 -4
- 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 +4 -4
- package/esm2022/picker/__shared/placeholder-mask/watt-placeholder-mask.component.js.map +1 -0
- package/esm2022/picker/__shared/watt-picker-base.js +4 -4
- 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 +4 -4
- package/esm2022/picker/datepicker/watt-datepicker-intl.service.js.map +1 -0
- package/esm2022/picker/datepicker/watt-datepicker.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/progress-tracker/watt-progress-tracker-step.component.js.map +1 -0
- package/esm2022/progress-tracker/watt-progress-tracker.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/radio/watt-radio-group.component.js.map +1 -0
- package/esm2022/radio/watt-radio.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/segmented-buttons/watt-segmented-button.component.js.map +1 -0
- package/esm2022/segmented-buttons/watt-segmented-buttons.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/shell/nav-list/watt-nav-list-item.component.js.map +1 -0
- package/esm2022/shell/nav-list/watt-nav-list.component.js +4 -4
- package/esm2022/shell/nav-list/watt-nav-list.component.js.map +1 -0
- package/esm2022/shell/shell.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/stepper/watt-stepper-step.component.js.map +1 -0
- package/esm2022/stepper/watt-stepper.component.js +4 -4
- 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 +10 -10
- 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 +4 -4
- package/esm2022/tabs/watt-link-tab.component.js.map +1 -0
- package/esm2022/tabs/watt-link-tabs.component.js +4 -4
- package/esm2022/tabs/watt-link-tabs.component.js.map +1 -0
- package/esm2022/tabs/watt-tab.component.js +4 -4
- package/esm2022/tabs/watt-tab.component.js.map +1 -0
- package/esm2022/tabs/watt-tabs-action.component.js +4 -4
- package/esm2022/tabs/watt-tabs-action.component.js.map +1 -0
- package/esm2022/tabs/watt-tabs.component.js +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/toast/watt-toast.component.js.map +1 -0
- package/esm2022/toast/watt-toast.service.js +4 -4
- 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 +4 -4
- package/esm2022/tooltip/watt-tooltip.component.js.map +1 -0
- package/esm2022/tooltip/watt-tooltip.directive.js +4 -4
- package/esm2022/tooltip/watt-tooltip.directive.js.map +1 -0
- package/esm2022/utils/css/css-custom-properties.service.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/utils/resize-observer/watt-resize-observer.directive.js.map +1 -0
- package/esm2022/utils/resize-observer/watt-resize-observer.service.js +4 -4
- 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 +4 -4
- 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 +4 -4
- package/esm2022/vater/vater-flex.component.js.map +1 -0
- package/esm2022/vater/vater-layout.directive.js +4 -4
- package/esm2022/vater/vater-layout.directive.js.map +1 -0
- package/esm2022/vater/vater-spacer.component.js +4 -4
- package/esm2022/vater/vater-spacer.component.js.map +1 -0
- package/esm2022/vater/vater-stack.component.js +4 -4
- package/esm2022/vater/vater-stack.component.js.map +1 -0
- package/esm2022/vater/vater-utility.directive.js +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +117 -117
|
@@ -195,10 +195,10 @@ export class WattTimepickerComponent extends WattPickerBase {
|
|
|
195
195
|
endInput.value = end;
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
199
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.
|
|
198
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattTimepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
199
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: WattTimepickerComponent, isStandalone: true, selector: "watt-timepicker", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, sliderLabel: { classPropertyName: "sliderLabel", publicName: "sliderLabel", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.aria-owns": "this.ariaOwns" } }, providers: [{ provide: MatFormFieldControl, useExisting: WattTimepickerComponent }], viewQueries: [{ propertyName: "input", first: true, predicate: ["timeInput"], descendants: true, isSignal: true }, { propertyName: "startInput", first: true, predicate: ["startTimeInput"], descendants: true, isSignal: true }, { propertyName: "endInput", first: true, predicate: ["endTimeInput"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, 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 [id]=\"id\" [control]=\"control\" [label]=\"label()\">\n @if (!range) {\n <input\n inert\n matInput\n aria-label=\"time-input\"\n autocomplete=\"off\"\n spellcheck=\"false\"\n [disabled]=\"disabled\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n />\n <input #timeInput class=\"mask-input\" [disabled]=\"disabled\" />\n <watt-placeholder-mask\n [primaryInputElement]=\"timeInput\"\n [mask]=\"inputMask\"\n [placeholder]=\"hoursMinutesPlaceholder\"\n (maskApplied)=\"inputChanged($event)\"\n />\n } @else {\n <mat-date-range-input\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [disabled]=\"disabled\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n >\n <input\n inert\n aria-label=\"start-time-input\"\n matStartDate\n #startTimeInput\n autocomplete=\"off\"\n spellcheck=\"false\"\n />\n <input\n inert\n aria-label=\"end-time-input\"\n matEndDate\n #endTimeInput\n autocomplete=\"off\"\n spellcheck=\"false\"\n />\n </mat-date-range-input>\n <input #timeInput class=\"mask-input\" [disabled]=\"disabled\" />\n <watt-placeholder-mask\n [primaryInputElement]=\"timeInput\"\n [mask]=\"rangeInputMask\"\n [placeholder]=\"rangePlaceholder\"\n (maskApplied)=\"rangeInputChanged($event)\"\n />\n\n <watt-button\n variant=\"icon\"\n icon=\"time\"\n [disabled]=\"disabled\"\n [attr.aria-pressed]=\"sliderOpen\"\n (click)=\"toggleSlider()\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n />\n\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"sliderOpen\"\n [cdkConnectedOverlayOffsetY]=\"12\"\n >\n <div\n [id]=\"sliderId\"\n role=\"dialog\"\n class=\"watt-timepicker-slider\"\n tabindex=\"-1\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n >\n <span class=\"watt-label\">{{ sliderLabel() }}</span>\n <watt-slider\n [min]=\"sliderSteps[0]\"\n [max]=\"sliderSteps[sliderSteps.length - 1]\"\n [step]=\"1\"\n [value]=\"sliderValue\"\n (valueChange)=\"sliderChange$.next($event)\"\n />\n </div>\n </ng-template>\n }\n\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-timepicker{display:flex;align-items:center;width:100%}watt-timepicker watt-button[variant=icon]{margin-left:auto}watt-timepicker watt-button[variant=icon] .watt-button--icon{height:42px}watt-timepicker mat-datepicker,watt-timepicker mat-date-range-picker{display:none}watt-timepicker input.mat-date-range-input-inner,watt-timepicker input.mat-mdc-input-element,watt-timepicker .mat-date-range-input-mirror,watt-timepicker input.mask-input{font-family:Droid Sans Mono,monospace}watt-timepicker input.mat-date-range-input-inner,watt-timepicker input.mat-mdc-input-element,watt-timepicker input.mask-input{border:none;caret-color:var(--watt-color-neutral-black);letter-spacing:-.03em;-webkit-background-clip:text;-moz-background-clip:text;background-clip:text;color:transparent}watt-timepicker input.mask-input{color:#000}watt-timepicker input.mask-input{position:absolute;min-width:100%;padding:2px 1px}watt-timepicker input.mask-input:focus-visible{outline:none}watt-timepicker .mat-date-range-input-container{align-items:initial}watt-timepicker .mat-date-range-input-start-wrapper,watt-timepicker .mat-date-range-input-end-wrapper{max-width:calc(50% - var(--watt-space-s));overflow:visible;position:relative}watt-timepicker .mat-date-range-input-separator{display:flex;align-items:center}watt-timepicker .mat-date-range-input-separator-hidden,watt-timepicker .mat-date-range-input-separator{opacity:0!important}watt-timepicker .mat-date-range-input-inner::-webkit-input-placeholder{color:var(--watt-color-neutral-grey-500)!important;-webkit-text-fill-color:var(--watt-color-neutral-grey-500)}.watt-timepicker-slider{width:340px;padding:var(--watt-space-s) 12px var(--watt-space-m);background:var(--watt-color-neutral-white);box-shadow:0 1px 6px #0b3c5d1f,0 4px 18px 3px #2e323414;border-radius:3px}\n"], dependencies: [{ kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i1.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i1.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i1.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i3.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i3.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: WattButtonComponent, selector: "watt-button", inputs: ["icon", "variant", "size", "type", "formId", "disabled", "loading"] }, { kind: "component", type: WattSliderComponent, selector: "watt-slider", inputs: ["min", "max", "step", "value"], outputs: ["valueChange"] }, { kind: "component", type: WattFieldComponent, selector: "watt-field", inputs: ["control", "label", "id", "chipMode", "tooltip", "placeholder", "anchorName", "displayMode", "autoFocus", "showErrors"] }, { kind: "component", type: WattPlaceholderMaskComponent, selector: "watt-placeholder-mask", inputs: ["primaryInputElement", "secondaryInputElement", "mask", "placeholder"], outputs: ["maskApplied"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
200
200
|
}
|
|
201
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
201
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattTimepickerComponent, decorators: [{
|
|
202
202
|
type: Component,
|
|
203
203
|
args: [{ selector: 'watt-timepicker', providers: [{ provide: MatFormFieldControl, useExisting: WattTimepickerComponent }], encapsulation: ViewEncapsulation.None, imports: [
|
|
204
204
|
MatDatepickerModule,
|
|
@@ -213,4 +213,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
213
213
|
type: HostBinding,
|
|
214
214
|
args: ['attr.aria-owns']
|
|
215
215
|
}] } });
|
|
216
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0dC10aW1lcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvd2F0dC9wYWNrYWdlL3BpY2tlci90aW1lcGlja2VyL3dhdHQtdGltZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL3dhdHQvcGFja2FnZS9waWNrZXIvdGltZXBpY2tlci93YXR0LXRpbWVwaWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILFlBQVk7QUFDWixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLE1BQU0sRUFDTixLQUFLLEVBQ0wsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFt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Qzt1R0FuS1UsdUJBQXVCOzJGQUF2Qix1QkFBdUIseVlBYnZCLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLHVCQUF1QixFQUFFLENBQUMsK1hDaEZyRiwwdEdBNEdBLHMwRER6QkksbUJBQW1CLHdmQUNuQixjQUFjLGlZQUNkLGFBQWEsMnJDQUViLG1CQUFtQixzSUFDbkIsbUJBQW1CLDJIQUNuQixrQkFBa0IseUxBQ2xCLDRCQUE0Qjs7MkZBR25CLHVCQUF1QjtrQkFqQm5DLFNBQVM7K0JBQ0UsaUJBQWlCLGFBR2hCLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyx5QkFBeUIsRUFBRSxDQUFDLGlCQUNwRSxpQkFBaUIsQ0FBQyxJQUFJLFdBQzVCO3dCQUNQLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxhQUFhO3dCQUViLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLDRCQUE0QjtxQkFDN0I7NlJBWXdELFdBQVcsb0VBQ04sZ0JBQWdCLGtFQUNsQixjQUFjO3NCQVN6RSxXQUFXO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiBMaWNlbnNlXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMCBFbmVyZ2luZXQgRGF0YUh1YiBBL1NcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlMlwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vLyNlbmRyZWdpb25cbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBEZXN0cm95UmVmLFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IG1hc2tpdG9UaW1lT3B0aW9uc0dlbmVyYXRvciB9IGZyb20gJ0BtYXNraXRvL2tpdCc7XG5cbmltcG9ydCB7IFdhdHRCdXR0b25Db21wb25lbnQgfSBmcm9tICdAZW5lcmdpbmV0L3dhdHQvYnV0dG9uJztcbmltcG9ydCB7IFdhdHREYXRlUmFuZ2UgfSBmcm9tICdAZW5lcmdpbmV0L3dhdHQvY29yZS9kYXRlJztcbmltcG9ydCB7IFdhdHRGaWVsZENvbXBvbmVudCB9IGZyb20gJ0BlbmVyZ2luZXQvd2F0dC9maWVsZCc7XG5pbXBvcnQgeyBXYXR0U2xpZGVyQ29tcG9uZW50LCBXYXR0U2xpZGVyVmFsdWUgfSBmcm9tICdAZW5lcmdpbmV0L3dhdHQvc2xpZGVyJztcblxuaW1wb3J0IHsgbWFza2l0b1RpbWVSYW5nZU9wdGlvbnNHZW5lcmF0b3IgfSBmcm9tICcuL21hc2tpdG8tdGltZS1yYW5nZS1tYXNrJztcbmltcG9ydCB7XG4gIFdhdHRQaWNrZXJCYXNlLFxuICBXYXR0UGlja2VyVmFsdWUsXG4gIFdhdHRQbGFjZWhvbGRlck1hc2tDb21wb25lbnQsXG59IGZyb20gJ0BlbmVyZ2luZXQvd2F0dC9waWNrZXIvX19zaGFyZWQnO1xuXG4vLyBDb25zdGFudHMgZm9yIHdvcmtpbmcgd2l0aCB0aW1lIGludGVydmFsc1xuY29uc3QgbWludXRlc0luQURheSA9IDI0ICogNjA7XG5jb25zdCBxdWFydGVyc0luQURheSA9IG1pbnV0ZXNJbkFEYXkgLyAxNTtcblxuLy8gU2hvdyBzbGlkZXIgaW5pdGlhbGx5IGFzIFwiMDA6MDAgLSAyMzo1OVwiXG5jb25zdCBpbml0aWFsU2xpZGVyVmFsdWU6IFdhdHRTbGlkZXJWYWx1ZSA9IHsgbWluOiAwLCBtYXg6IG1pbnV0ZXNJbkFEYXkgLSAxIH07XG5cbi8qKiBDb252ZXJ0cyBzdHJpbmcgdGltZSBmb3JtYXQgKEhIOk1NKSB0byBudW1iZXIgb2YgbWludXRlcy4gKi9cbmZ1bmN0aW9uIHRpbWVUb01pbnV0ZXModmFsdWU6IHN0cmluZyk6IG51bWJlciB7XG4gIGNvbnN0IFtob3VycywgbWludXRlc10gPSB2YWx1ZS5zcGxpdCgnOicpO1xuICByZXR1cm4gTnVtYmVyKGhvdXJzKSAqIDYwICsgTnVtYmVyKG1pbnV0ZXMpO1xufVxuXG4vKiogQ29udmVydHMgbnVtYmVyIG9mIG1pbnV0ZXMgdG8gc3RyaW5nIHRpbWUgZm9ybWF0IChISDpNTSkuICovXG5mdW5jdGlvbiBtaW51dGVzVG9UaW1lKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xuICBjb25zdCBob3VycyA9IGAke01hdGguZmxvb3IodmFsdWUgLyA2MCl9YDtcbiAgY29uc3QgbWludXRlcyA9IGAke3ZhbHVlICUgNjB9YDtcbiAgcmV0dXJuIGAke2hvdXJzLnBhZFN0YXJ0KDIsICcwJyl9OiR7bWludXRlcy5wYWRTdGFydCgyLCAnMCcpfWA7XG59XG4vKipcbiAqIFVzYWdlOlxuICogYGltcG9ydCB7IFdhdHRUaW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnQGVuZXJnaW5ldC93YXR0L3RpbWVwaWNrZXInO2BcbiAqXG4gKiBJTVBPUlRBTlQ6XG4gKiBUaGUgc3R5bGluZyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIG91ciBtb25vc3BhY2VkIGZvbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3dhdHQtdGltZXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi93YXR0LXRpbWVwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi93YXR0LXRpbWVwaWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBNYXRGb3JtRmllbGRDb250cm9sLCB1c2VFeGlzdGluZzogV2F0dFRpbWVwaWNrZXJDb21wb25lbnQgfV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE92ZXJsYXlNb2R1bGUsXG5cbiAgICBXYXR0QnV0dG9uQ29tcG9uZW50LFxuICAgIFdhdHRTbGlkZXJDb21wb25lbnQsXG4gICAgV2F0dEZpZWxkQ29tcG9uZW50LFxuICAgIFdhdHRQbGFjZWhvbGRlck1hc2tDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFdhdHRUaW1lcGlja2VyQ29tcG9uZW50IGV4dGVuZHMgV2F0dFBpY2tlckJhc2Uge1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHByb3RlY3RlZCBvdmVycmlkZSBjaGFuZ2VEZXRlY3Rpb25SZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgbmdDb250cm9sID0gaW5qZWN0KE5nQ29udHJvbCwgeyBvcHRpb25hbDogdHJ1ZSwgc2VsZjogdHJ1ZSB9KTtcbiAgbGFiZWwgPSBpbnB1dCgnJyk7XG4gIC8qKlxuICAgKiBUZXh0IHRvIGRpc3BsYXkgb24gbGFiZWwgZm9yIHRpbWUgcmFuZ2Ugc2xpZGVyLlxuICAgKi9cbiAgc2xpZGVyTGFiZWwgPSBpbnB1dCgnJyk7XG5cbiAgb3ZlcnJpZGUgaW5wdXQgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50Pj4oJ3RpbWVJbnB1dCcpO1xuICBvdmVycmlkZSBzdGFydElucHV0ID0gdmlld0NoaWxkPEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4+KCdzdGFydFRpbWVJbnB1dCcpO1xuICBvdmVycmlkZSBlbmRJbnB1dCA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+PignZW5kVGltZUlucHV0Jyk7XG5cbiAgc2xpZGVySWQgPSBgJHt0aGlzLmlkfS1zbGlkZXJgO1xuXG4gIC8qKlxuICAgKiBVc2VkIGZvciBkZWZpbmluZyBhIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHRoZSB0aW1lIHBpY2tlciBhbmRcbiAgICogdGhlIHNsaWRlciBvdmVybGF5IChzaW5jZSB0aGUgRE9NIGhpZXJhcmNoeSBjYW5ub3QgYmUgdXNlZCkuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLW93bnMnKVxuICBnZXQgYXJpYU93bnMoKSB7XG4gICAgLy8gT25seSByYW5nZSBpbnB1dCBoYXMgc2xpZGVyXG4gICAgcmV0dXJuIHRoaXMucmFuZ2UgJiYgdGhpcy5zbGlkZXJPcGVuID8gdGhpcy5zbGlkZXJJZCA6IHVuZGVmaW5lZDtcbiAgfVxuICBob3Vyc01pbnV0ZXNQbGFjZWhvbGRlciA9ICdISDpNTSc7XG4gIHJhbmdlU2VwYXJhdG9yID0gJyAtICc7XG4gIHJhbmdlUGxhY2Vob2xkZXIgPVxuICAgIHRoaXMuaG91cnNNaW51dGVzUGxhY2Vob2xkZXIgKyB0aGlzLnJhbmdlU2VwYXJhdG9yICsgdGhpcy5ob3Vyc01pbnV0ZXNQbGFjZWhvbGRlcjtcbiAgcHJvdGVjdGVkIF9wbGFjZWhvbGRlciA9IHRoaXMuaG91cnNNaW51dGVzUGxhY2Vob2xkZXI7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHNsaWRlciBpcyBvcGVuLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBzbGlkZXJPcGVuID0gZmFsc2U7XG5cbiAgc2xpZGVyU3RlcHMgPSBbLi4uQXJyYXkocXVhcnRlcnNJbkFEYXkpLmtleXMoKV0ubWFwKCh4KSA9PiB4ICogMTUpLmNvbmNhdChtaW51dGVzSW5BRGF5IC0gMSk7XG5cbiAgc2xpZGVyQ2hhbmdlJCA9IG5ldyBTdWJqZWN0PFdhdHRTbGlkZXJWYWx1ZT4oKTtcblxuICBnZXQgc2xpZGVyVmFsdWUoKTogV2F0dFNsaWRlclZhbHVlIHtcbiAgICBpZiAodGhpcy52YWx1ZT8uc3RhcnQgJiYgdGhpcy52YWx1ZT8uZW5kKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtaW46IHRpbWVUb01pbnV0ZXModGhpcy52YWx1ZS5zdGFydCksXG4gICAgICAgIG1heDogdGltZVRvTWludXRlcyh0aGlzLnZhbHVlLmVuZCksXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFJldGFpbiBsYXN0IHNsaWRlciB2YWx1ZSBpZiBpbnB1dCB2YWx1ZSBpcyBpbmNvbXBsZXRlXG4gICAgcmV0dXJuIGluaXRpYWxTbGlkZXJWYWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBzbGlkZXIgb3ZlcmxheS5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgdG9nZ2xlU2xpZGVyKCkge1xuICAgIHRoaXMuc2xpZGVyT3BlbiA9ICF0aGlzLnNsaWRlck9wZW47XG4gIH1cblxuICAvKipcbiAgICogT3ZlcnJpZGUgdG8gYXV0b21hdGljYWxseSBjbG9zZSB0aGUgc2xpZGVyIG92ZXJsYXkgb24gYmx1ci5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb3ZlcnJpZGUgb25Gb2N1c091dChldmVudDogRm9jdXNFdmVudCkge1xuICAgIHN1cGVyLm9uRm9jdXNPdXQoZXZlbnQpO1xuICAgIGlmICghdGhpcy5mb2N1c2VkKSB0aGlzLnNsaWRlck9wZW4gPSBmYWxzZTtcbiAgfVxuXG4gIGlucHV0TWFzayA9IG1hc2tpdG9UaW1lT3B0aW9uc0dlbmVyYXRvcih7IG1vZGU6ICdISDpNTScgfSk7XG4gIHJhbmdlSW5wdXRNYXNrID0gbWFza2l0b1RpbWVSYW5nZU9wdGlvbnNHZW5lcmF0b3IoKTtcbiAgb3ZlcnJpZGUgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihgd2F0dC10aW1lcGlja2VyLSR7V2F0dFRpbWVwaWNrZXJDb21wb25lbnQubmV4dElkKyt9YCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW5pdFNpbmdsZUlucHV0KCkge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dCgpO1xuICAgIGlmICh0aGlzLmluaXRpYWxWYWx1ZSAmJiBpbnB1dCkge1xuICAgICAgKGlucHV0Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUgPSB0aGlzLmluaXRpYWxWYWx1ZSBhcyBzdHJpbmc7XG4gICAgICBpbnB1dC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JykpO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0Q2hhbmdlZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgdGltZSA9IHZhbHVlLnNsaWNlKDAsIHRoaXMuaG91cnNNaW51dGVzUGxhY2Vob2xkZXIubGVuZ3RoKTtcbiAgICBpZiAodGltZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuY29udHJvbD8uc2V0VmFsdWUobnVsbCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0aW1lLmxlbmd0aCAhPT0gdGhpcy5ob3Vyc01pbnV0ZXNQbGFjZWhvbGRlci5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jb250cm9sPy5zZXRWYWx1ZSh0aW1lKTtcbiAgfVxuXG4gIHJhbmdlSW5wdXRDaGFuZ2VkKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBzdGFydCA9IHZhbHVlLnNsaWNlKDAsIHRoaXMuaG91cnNNaW51dGVzUGxhY2Vob2xkZXIubGVuZ3RoKTtcbiAgICBpZiAoc3RhcnQubGVuZ3RoICE9PSB0aGlzLmhvdXJzTWludXRlc1BsYWNlaG9sZGVyLmxlbmd0aCkge1xuICAgICAgdGhpcy5jb250cm9sPy5zZXRWYWx1ZSh7IHN0YXJ0OiAnJywgZW5kOiAnJyB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHZhbHVlLmxlbmd0aCA8IHRoaXMucmFuZ2VQbGFjZWhvbGRlci5sZW5ndGgpIHtcbiAgICAgIHRoaXMuY29udHJvbD8uc2V0VmFsdWUoeyBzdGFydCwgZW5kOiAnJyB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgbGV0IGVuZCA9IHZhbHVlLnNsaWNlKHRoaXMuaG91cnNNaW51dGVzUGxhY2Vob2xkZXIubGVuZ3RoICsgdGhpcy5yYW5nZVNlcGFyYXRvci5sZW5ndGgpO1xuICAgIGlmICh0aW1lVG9NaW51dGVzKGVuZCkgPiB0aW1lVG9NaW51dGVzKHN0YXJ0KSkge1xuICAgICAgdGhpcy5jb250cm9sPy5zZXRWYWx1ZSh7IHN0YXJ0LCBlbmQgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVuZCA9IG1pbnV0ZXNUb1RpbWUodGltZVRvTWludXRlcyhzdGFydCkgKyAxKTtcbiAgICAgIHRoaXMuc2V0UmFuZ2VWYWx1ZUFuZE5vdGlmeShzdGFydCwgZW5kKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaW5pdFJhbmdlSW5wdXQoKSB7XG4gICAgaWYgKHRoaXMuaW5pdGlhbFZhbHVlKSB7XG4gICAgICBjb25zdCB7IHN0YXJ0LCBlbmQgfSA9IHRoaXMuaW5pdGlhbFZhbHVlIGFzIFdhdHREYXRlUmFuZ2U7XG4gICAgICB0aGlzLnNldFJhbmdlVmFsdWVBbmROb3RpZnkoc3RhcnQsIGVuZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29udHJvbD8uc2V0VmFsdWUoeyBzdGFydDogJycsIGVuZDogJycgfSk7XG4gICAgfVxuICAgIHRoaXMuc2xpZGVyQ2hhbmdlJC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKHNsaWRlclZhbHVlKSA9PiB7XG4gICAgICBjb25zdCBzdGFydCA9IG1pbnV0ZXNUb1RpbWUoc2xpZGVyVmFsdWUubWluKTtcbiAgICAgIGNvbnN0IGVuZCA9IG1pbnV0ZXNUb1RpbWUoc2xpZGVyVmFsdWUubWF4KTtcbiAgICAgIGlmIChlbmQgPiBzdGFydCkge1xuICAgICAgICB0aGlzLnNldFJhbmdlVmFsdWVBbmROb3RpZnkoc3RhcnQsIGVuZCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzZXRSYW5nZVZhbHVlQW5kTm90aWZ5KHN0YXJ0OiBzdHJpbmcsIGVuZDogc3RyaW5nIHwgbnVsbCkge1xuICAgIHRoaXMuY29udHJvbD8uc2V0VmFsdWUoeyBzdGFydCwgZW5kIH0pO1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dCgpO1xuICAgIGlmICghaW5wdXQpIHJldHVybjtcbiAgICAoaW5wdXQubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSA9IHN0YXJ0ICsgdGhpcy5yYW5nZVNlcGFyYXRvciArIGVuZDtcbiAgICBpbnB1dC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JykpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldFNpbmdsZVZhbHVlKFxuICAgIHZhbHVlOiBFeGNsdWRlPFdhdHRQaWNrZXJWYWx1ZSwgV2F0dERhdGVSYW5nZT4sXG4gICAgaW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnRcbiAgKSB7XG4gICAgaW5wdXQudmFsdWUgPSB2YWx1ZSA/PyAnJztcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRSYW5nZVZhbHVlKFxuICAgIHZhbHVlOiBXYXR0RGF0ZVJhbmdlLFxuICAgIHN0YXJ0SW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQsXG4gICAgZW5kSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnRcbiAgKSB7XG4gICAgY29uc3QgeyBzdGFydCwgZW5kIH0gPSB2YWx1ZTtcblxuICAgIGlmIChzdGFydCkge1xuICAgICAgc3RhcnRJbnB1dC52YWx1ZSA9IHN0YXJ0O1xuICAgIH1cblxuICAgIGlmIChlbmQpIHtcbiAgICAgIGVuZElucHV0LnZhbHVlID0gZW5kO1xuICAgIH1cbiAgfVxufVxuIiwiPCEtLVxuQGxpY2Vuc2VcbkNvcHlyaWdodCAyMDIwIEVuZXJnaW5ldCBEYXRhSHViIEEvU1xuXG5MaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlMlwiKTtcbnlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbllvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cblVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbmRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbldJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxubGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4tLT5cbjx3YXR0LWZpZWxkIFtpZF09XCJpZFwiIFtjb250cm9sXT1cImNvbnRyb2xcIiBbbGFiZWxdPVwibGFiZWwoKVwiPlxuICBAaWYgKCFyYW5nZSkge1xuICAgIDxpbnB1dFxuICAgICAgaW5lcnRcbiAgICAgIG1hdElucHV0XG4gICAgICBhcmlhLWxhYmVsPVwidGltZS1pbnB1dFwiXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAoZm9jdXNpbik9XCJvbkZvY3VzSW4oKVwiXG4gICAgICAoZm9jdXNvdXQpPVwib25Gb2N1c091dCgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxpbnB1dCAjdGltZUlucHV0IGNsYXNzPVwibWFzay1pbnB1dFwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIC8+XG4gICAgPHdhdHQtcGxhY2Vob2xkZXItbWFza1xuICAgICAgW3ByaW1hcnlJbnB1dEVsZW1lbnRdPVwidGltZUlucHV0XCJcbiAgICAgIFttYXNrXT1cImlucHV0TWFza1wiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiaG91cnNNaW51dGVzUGxhY2Vob2xkZXJcIlxuICAgICAgKG1hc2tBcHBsaWVkKT1cImlucHV0Q2hhbmdlZCgkZXZlbnQpXCJcbiAgICAvPlxuICB9IEBlbHNlIHtcbiAgICA8bWF0LWRhdGUtcmFuZ2UtaW5wdXRcbiAgICAgIGNka092ZXJsYXlPcmlnaW5cbiAgICAgICN0cmlnZ2VyPVwiY2RrT3ZlcmxheU9yaWdpblwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgKGZvY3VzaW4pPVwib25Gb2N1c0luKClcIlxuICAgICAgKGZvY3Vzb3V0KT1cIm9uRm9jdXNPdXQoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgPGlucHV0XG4gICAgICAgIGluZXJ0XG4gICAgICAgIGFyaWEtbGFiZWw9XCJzdGFydC10aW1lLWlucHV0XCJcbiAgICAgICAgbWF0U3RhcnREYXRlXG4gICAgICAgICNzdGFydFRpbWVJbnB1dFxuICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICBzcGVsbGNoZWNrPVwiZmFsc2VcIlxuICAgICAgLz5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpbmVydFxuICAgICAgICBhcmlhLWxhYmVsPVwiZW5kLXRpbWUtaW5wdXRcIlxuICAgICAgICBtYXRFbmREYXRlXG4gICAgICAgICNlbmRUaW1lSW5wdXRcbiAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgIC8+XG4gICAgPC9tYXQtZGF0ZS1yYW5nZS1pbnB1dD5cbiAgICA8aW5wdXQgI3RpbWVJbnB1dCBjbGFzcz1cIm1hc2staW5wdXRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiAvPlxuICAgIDx3YXR0LXBsYWNlaG9sZGVyLW1hc2tcbiAgICAgIFtwcmltYXJ5SW5wdXRFbGVtZW50XT1cInRpbWVJbnB1dFwiXG4gICAgICBbbWFza109XCJyYW5nZUlucHV0TWFza1wiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicmFuZ2VQbGFjZWhvbGRlclwiXG4gICAgICAobWFza0FwcGxpZWQpPVwicmFuZ2VJbnB1dENoYW5nZWQoJGV2ZW50KVwiXG4gICAgLz5cblxuICAgIDx3YXR0LWJ1dHRvblxuICAgICAgdmFyaWFudD1cImljb25cIlxuICAgICAgaWNvbj1cInRpbWVcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFthdHRyLmFyaWEtcHJlc3NlZF09XCJzbGlkZXJPcGVuXCJcbiAgICAgIChjbGljayk9XCJ0b2dnbGVTbGlkZXIoKVwiXG4gICAgICAoZm9jdXNpbik9XCJvbkZvY3VzSW4oKVwiXG4gICAgICAoZm9jdXNvdXQpPVwib25Gb2N1c091dCgkZXZlbnQpXCJcbiAgICAvPlxuXG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICBjZGtDb25uZWN0ZWRPdmVybGF5XG4gICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9yaWdpbl09XCJ0cmlnZ2VyXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3Blbl09XCJzbGlkZXJPcGVuXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T2Zmc2V0WV09XCIxMlwiXG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICBbaWRdPVwic2xpZGVySWRcIlxuICAgICAgICByb2xlPVwiZGlhbG9nXCJcbiAgICAgICAgY2xhc3M9XCJ3YXR0LXRpbWVwaWNrZXItc2xpZGVyXCJcbiAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgIChmb2N1c2luKT1cIm9uRm9jdXNJbigpXCJcbiAgICAgICAgKGZvY3Vzb3V0KT1cIm9uRm9jdXNPdXQoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwid2F0dC1sYWJlbFwiPnt7IHNsaWRlckxhYmVsKCkgfX08L3NwYW4+XG4gICAgICAgIDx3YXR0LXNsaWRlclxuICAgICAgICAgIFttaW5dPVwic2xpZGVyU3RlcHNbMF1cIlxuICAgICAgICAgIFttYXhdPVwic2xpZGVyU3RlcHNbc2xpZGVyU3RlcHMubGVuZ3RoIC0gMV1cIlxuICAgICAgICAgIFtzdGVwXT1cIjFcIlxuICAgICAgICAgIFt2YWx1ZV09XCJzbGlkZXJWYWx1ZVwiXG4gICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cInNsaWRlckNoYW5nZSQubmV4dCgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIH1cblxuICA8bmctY29udGVudCAvPlxuICA8bmctY29udGVudCBuZ1Byb2plY3RBcz1cIndhdHQtZmllbGQtaGludFwiIHNlbGVjdD1cIndhdHQtZmllbGQtaGludFwiIC8+XG4gIDxuZy1jb250ZW50IG5nUHJvamVjdEFzPVwid2F0dC1maWVsZC1lcnJvclwiIHNlbGVjdD1cIndhdHQtZmllbGQtZXJyb3JcIiAvPlxuPC93YXR0LWZpZWxkPlxuIl19
|
|
216
|
+
//# sourceMappingURL=watt-timepicker.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-timepicker.component.js","sourceRoot":"","sources":["../../../../../libs/watt/package/picker/timepicker/watt-timepicker.component.ts","../../../../../libs/watt/package/picker/timepicker/watt-timepicker.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 { OverlayModule } from '@angular/cdk/overlay';\nimport {\n ChangeDetectorRef,\n Component,\n DestroyRef,\n ElementRef,\n HostBinding,\n ViewEncapsulation,\n inject,\n input,\n viewChild,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { Subject } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { maskitoTimeOptionsGenerator } from '@maskito/kit';\n\nimport { WattButtonComponent } from '@energinet/watt/button';\nimport { WattDateRange } from '@energinet/watt/core/date';\nimport { WattFieldComponent } from '@energinet/watt/field';\nimport { WattSliderComponent, WattSliderValue } from '@energinet/watt/slider';\n\nimport { maskitoTimeRangeOptionsGenerator } from './maskito-time-range-mask';\nimport {\n WattPickerBase,\n WattPickerValue,\n WattPlaceholderMaskComponent,\n} from '@energinet/watt/picker/__shared';\n\n// Constants for working with time intervals\nconst minutesInADay = 24 * 60;\nconst quartersInADay = minutesInADay / 15;\n\n// Show slider initially as \"00:00 - 23:59\"\nconst initialSliderValue: WattSliderValue = { min: 0, max: minutesInADay - 1 };\n\n/** Converts string time format (HH:MM) to number of minutes. */\nfunction timeToMinutes(value: string): number {\n const [hours, minutes] = value.split(':');\n return Number(hours) * 60 + Number(minutes);\n}\n\n/** Converts number of minutes to string time format (HH:MM). */\nfunction minutesToTime(value: number): string {\n const hours = `${Math.floor(value / 60)}`;\n const minutes = `${value % 60}`;\n return `${hours.padStart(2, '0')}:${minutes.padStart(2, '0')}`;\n}\n/**\n * Usage:\n * `import { WattTimepickerComponent } from '@energinet/watt/timepicker';`\n *\n * IMPORTANT:\n * The styling is calculated based on our monospaced font.\n */\n@Component({\n selector: 'watt-timepicker',\n templateUrl: './watt-timepicker.component.html',\n styleUrls: ['./watt-timepicker.component.scss'],\n providers: [{ provide: MatFormFieldControl, useExisting: WattTimepickerComponent }],\n encapsulation: ViewEncapsulation.None,\n imports: [\n MatDatepickerModule,\n MatInputModule,\n OverlayModule,\n\n WattButtonComponent,\n WattSliderComponent,\n WattFieldComponent,\n WattPlaceholderMaskComponent,\n ],\n})\nexport class WattTimepickerComponent extends WattPickerBase {\n protected override elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n protected override changeDetectionRef = inject(ChangeDetectorRef);\n protected override ngControl = inject(NgControl, { optional: true, self: true });\n label = input('');\n /**\n * Text to display on label for time range slider.\n */\n sliderLabel = input('');\n\n override input = viewChild<ElementRef<HTMLInputElement>>('timeInput');\n override startInput = viewChild<ElementRef<HTMLInputElement>>('startTimeInput');\n override endInput = viewChild<ElementRef<HTMLInputElement>>('endTimeInput');\n\n sliderId = `${this.id}-slider`;\n\n /**\n * Used for defining a relationship between the time picker and\n * the slider overlay (since the DOM hierarchy cannot be used).\n * @ignore\n */\n @HostBinding('attr.aria-owns')\n get ariaOwns() {\n // Only range input has slider\n return this.range && this.sliderOpen ? this.sliderId : undefined;\n }\n hoursMinutesPlaceholder = 'HH:MM';\n rangeSeparator = ' - ';\n rangePlaceholder =\n this.hoursMinutesPlaceholder + this.rangeSeparator + this.hoursMinutesPlaceholder;\n protected _placeholder = this.hoursMinutesPlaceholder;\n\n /**\n * Whether the slider is open.\n * @ignore\n */\n sliderOpen = false;\n\n sliderSteps = [...Array(quartersInADay).keys()].map((x) => x * 15).concat(minutesInADay - 1);\n\n sliderChange$ = new Subject<WattSliderValue>();\n\n get sliderValue(): WattSliderValue {\n if (this.value?.start && this.value?.end) {\n return {\n min: timeToMinutes(this.value.start),\n max: timeToMinutes(this.value.end),\n };\n }\n\n // Retain last slider value if input value is incomplete\n return initialSliderValue;\n }\n\n /**\n * Toggles the visibility of the slider overlay.\n * @ignore\n */\n toggleSlider() {\n this.sliderOpen = !this.sliderOpen;\n }\n\n /**\n * Override to automatically close the slider overlay on blur.\n * @ignore\n */\n override onFocusOut(event: FocusEvent) {\n super.onFocusOut(event);\n if (!this.focused) this.sliderOpen = false;\n }\n\n inputMask = maskitoTimeOptionsGenerator({ mode: 'HH:MM' });\n rangeInputMask = maskitoTimeRangeOptionsGenerator();\n override destroyRef = inject(DestroyRef);\n\n constructor() {\n super(`watt-timepicker-${WattTimepickerComponent.nextId++}`);\n }\n\n protected initSingleInput() {\n const input = this.input();\n if (this.initialValue && input) {\n (input.nativeElement as HTMLInputElement).value = this.initialValue as string;\n input.nativeElement.dispatchEvent(new InputEvent('input'));\n }\n }\n\n inputChanged(value: string) {\n const time = value.slice(0, this.hoursMinutesPlaceholder.length);\n if (time.length === 0) {\n this.control?.setValue(null);\n return;\n }\n if (time.length !== this.hoursMinutesPlaceholder.length) {\n return;\n }\n this.control?.setValue(time);\n }\n\n rangeInputChanged(value: string) {\n const start = value.slice(0, this.hoursMinutesPlaceholder.length);\n if (start.length !== this.hoursMinutesPlaceholder.length) {\n this.control?.setValue({ start: '', end: '' });\n return;\n }\n if (value.length < this.rangePlaceholder.length) {\n this.control?.setValue({ start, end: '' });\n return;\n }\n let end = value.slice(this.hoursMinutesPlaceholder.length + this.rangeSeparator.length);\n if (timeToMinutes(end) > timeToMinutes(start)) {\n this.control?.setValue({ start, end });\n } else {\n end = minutesToTime(timeToMinutes(start) + 1);\n this.setRangeValueAndNotify(start, end);\n }\n }\n\n protected initRangeInput() {\n if (this.initialValue) {\n const { start, end } = this.initialValue as WattDateRange;\n this.setRangeValueAndNotify(start, end);\n } else {\n this.control?.setValue({ start: '', end: '' });\n }\n this.sliderChange$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((sliderValue) => {\n const start = minutesToTime(sliderValue.min);\n const end = minutesToTime(sliderValue.max);\n if (end > start) {\n this.setRangeValueAndNotify(start, end);\n }\n });\n }\n\n setRangeValueAndNotify(start: string, end: string | null) {\n this.control?.setValue({ start, end });\n const input = this.input();\n if (!input) return;\n (input.nativeElement as HTMLInputElement).value = start + this.rangeSeparator + end;\n input.nativeElement.dispatchEvent(new InputEvent('input'));\n }\n\n protected setSingleValue(\n value: Exclude<WattPickerValue, WattDateRange>,\n input: HTMLInputElement\n ) {\n input.value = value ?? '';\n }\n\n protected setRangeValue(\n value: WattDateRange,\n startInput: HTMLInputElement,\n endInput: HTMLInputElement\n ) {\n const { start, end } = value;\n\n if (start) {\n startInput.value = start;\n }\n\n if (end) {\n endInput.value = end;\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 [id]=\"id\" [control]=\"control\" [label]=\"label()\">\n @if (!range) {\n <input\n inert\n matInput\n aria-label=\"time-input\"\n autocomplete=\"off\"\n spellcheck=\"false\"\n [disabled]=\"disabled\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n />\n <input #timeInput class=\"mask-input\" [disabled]=\"disabled\" />\n <watt-placeholder-mask\n [primaryInputElement]=\"timeInput\"\n [mask]=\"inputMask\"\n [placeholder]=\"hoursMinutesPlaceholder\"\n (maskApplied)=\"inputChanged($event)\"\n />\n } @else {\n <mat-date-range-input\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [disabled]=\"disabled\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n >\n <input\n inert\n aria-label=\"start-time-input\"\n matStartDate\n #startTimeInput\n autocomplete=\"off\"\n spellcheck=\"false\"\n />\n <input\n inert\n aria-label=\"end-time-input\"\n matEndDate\n #endTimeInput\n autocomplete=\"off\"\n spellcheck=\"false\"\n />\n </mat-date-range-input>\n <input #timeInput class=\"mask-input\" [disabled]=\"disabled\" />\n <watt-placeholder-mask\n [primaryInputElement]=\"timeInput\"\n [mask]=\"rangeInputMask\"\n [placeholder]=\"rangePlaceholder\"\n (maskApplied)=\"rangeInputChanged($event)\"\n />\n\n <watt-button\n variant=\"icon\"\n icon=\"time\"\n [disabled]=\"disabled\"\n [attr.aria-pressed]=\"sliderOpen\"\n (click)=\"toggleSlider()\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n />\n\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"sliderOpen\"\n [cdkConnectedOverlayOffsetY]=\"12\"\n >\n <div\n [id]=\"sliderId\"\n role=\"dialog\"\n class=\"watt-timepicker-slider\"\n tabindex=\"-1\"\n (focusin)=\"onFocusIn()\"\n (focusout)=\"onFocusOut($event)\"\n >\n <span class=\"watt-label\">{{ sliderLabel() }}</span>\n <watt-slider\n [min]=\"sliderSteps[0]\"\n [max]=\"sliderSteps[sliderSteps.length - 1]\"\n [step]=\"1\"\n [value]=\"sliderValue\"\n (valueChange)=\"sliderChange$.next($event)\"\n />\n </div>\n </ng-template>\n }\n\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-progress-tracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energinet-watt-progress-tracker.js","sourceRoot":"","sources":["../../../../libs/watt/package/progress-tracker/energinet-watt-progress-tracker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
|
|
@@ -24,4 +24,4 @@ export const WATT_PROGRESS_TRACKER = [
|
|
|
24
24
|
WattProgressTrackerComponent,
|
|
25
25
|
WattProgressTrackerStepComponent,
|
|
26
26
|
];
|
|
27
|
-
//# sourceMappingURL=
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/watt/package/progress-tracker/index.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAE1F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAE1F,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,4BAA4B;IAC5B,gCAAgC;CACjC,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 { WattProgressTrackerComponent } from './watt-progress-tracker.component';\nimport { WattProgressTrackerStepComponent } from './watt-progress-tracker-step.component';\n\nexport { WattProgressTrackerComponent } from './watt-progress-tracker.component';\nexport { WattProgressTrackerStepComponent } from './watt-progress-tracker-step.component';\n\nexport const WATT_PROGRESS_TRACKER = [\n WattProgressTrackerComponent,\n WattProgressTrackerStepComponent,\n];\n"]}
|
|
@@ -26,8 +26,8 @@ export class WattProgressTrackerStepComponent {
|
|
|
26
26
|
current = input(false, ...(ngDevMode ? [{ debugName: "current" }] : []));
|
|
27
27
|
ariaCurrent = computed(() => (this.current() ? 'step' : false), ...(ngDevMode ? [{ debugName: "ariaCurrent" }] : []));
|
|
28
28
|
class = computed(() => `watt-progress-tracker-step-${this.status()}`, ...(ngDevMode ? [{ debugName: "class" }] : []));
|
|
29
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
30
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.
|
|
29
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattProgressTrackerStepComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: WattProgressTrackerStepComponent, isStandalone: true, selector: "watt-progress-tracker-step", inputs: { status: { classPropertyName: "status", publicName: "status", isSignal: true, isRequired: true, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "current() ? \"status\" : \"presentation\"", "attr.class": "class()", "attr.aria-current": "ariaCurrent()", "attr.aria-label": "label()" } }, ngImport: i0, template: `
|
|
31
31
|
<div class="watt-progress-tracker-step-icon">
|
|
32
32
|
@switch (status()) {
|
|
33
33
|
@case ('running') {
|
|
@@ -50,7 +50,7 @@ export class WattProgressTrackerStepComponent {
|
|
|
50
50
|
<div class="watt-progress-tracker-step-text"><ng-content /></div>
|
|
51
51
|
`, isInline: true, styles: [".watt-progress-tracker-step-pending{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-bridge-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-fill-color: transparent}.watt-progress-tracker-step-running{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-900);--watt-progress-tracker-step-bridge-color: var(--watt-color-primary);--watt-progress-tracker-step-fill-color: transparent}.watt-progress-tracker-step-skipped{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-400);--watt-progress-tracker-step-bridge-color: var(--watt-color-neutral-grey-400);--watt-progress-tracker-step-fill-color: transparent}.watt-progress-tracker-step-canceled{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-icon-color: var(--watt-color-neutral-white);--watt-progress-tracker-step-bridge-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-fill-color: var(--watt-color-neutral-grey-600)}.watt-progress-tracker-step-failed{--watt-progress-tracker-step-text-color: var(--watt-color-state-danger);--watt-progress-tracker-step-icon-color: var(--watt-color-neutral-white);--watt-progress-tracker-step-bridge-color: var(--watt-color-state-danger);--watt-progress-tracker-step-fill-color: var(--watt-color-state-danger)}.watt-progress-tracker-step-succeeded{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-900);--watt-progress-tracker-step-icon-color: var(--watt-color-neutral-white);--watt-progress-tracker-step-bridge-color: var(--watt-color-primary);--watt-progress-tracker-step-fill-color: var(--watt-color-primary)}watt-progress-tracker-step{display:contents;--watt-progress-tracker-step-icon-color: var(--watt-progress-tracker-step-text-color)}watt-progress-tracker-step:not(:first-child):before{content:\"\";display:block;width:100%;min-width:var(--watt-space-m);height:1px;margin:0 var(--watt-space-s);background-color:var(--watt-progress-tracker-step-bridge-color)}.watt-progress-tracker-step-icon{display:flex;align-items:center;justify-content:center;width:var(--watt-space-ml);height:var(--watt-space-ml);min-width:var(--watt-space-ml);min-height:var(--watt-space-ml);border-radius:50%;border:1px solid var(--watt-progress-tracker-step-bridge-color);background-color:var(--watt-progress-tracker-step-fill-color)}.watt-progress-tracker-step-icon watt-icon{color:var(--watt-progress-tracker-step-icon-color)}.watt-progress-tracker-step-running .watt-progress-tracker-step-icon{border:none}.watt-progress-tracker-step-text{color:var(--watt-typography-headline-color);font-size:1rem;line-height:1.5rem;font-weight:600;text-transform:none;letter-spacing:0;margin-left:var(--watt-space-s);color:var(--watt-progress-tracker-step-text-color);white-space:nowrap}\n"], dependencies: [{ kind: "component", type: WattIconComponent, selector: "watt-icon", inputs: ["name", "label", "size", "state"] }, { kind: "component", type: WattSpinnerComponent, selector: "watt-spinner", inputs: ["diameter", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattProgressTrackerStepComponent, decorators: [{
|
|
54
54
|
type: Component,
|
|
55
55
|
args: [{ imports: [WattIconComponent, WattSpinnerComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, selector: 'watt-progress-tracker-step', host: {
|
|
56
56
|
'[attr.role]': 'current() ? "status" : "presentation"',
|
|
@@ -80,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
80
80
|
<div class="watt-progress-tracker-step-text"><ng-content /></div>
|
|
81
81
|
`, styles: [".watt-progress-tracker-step-pending{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-bridge-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-fill-color: transparent}.watt-progress-tracker-step-running{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-900);--watt-progress-tracker-step-bridge-color: var(--watt-color-primary);--watt-progress-tracker-step-fill-color: transparent}.watt-progress-tracker-step-skipped{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-400);--watt-progress-tracker-step-bridge-color: var(--watt-color-neutral-grey-400);--watt-progress-tracker-step-fill-color: transparent}.watt-progress-tracker-step-canceled{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-icon-color: var(--watt-color-neutral-white);--watt-progress-tracker-step-bridge-color: var(--watt-color-neutral-grey-600);--watt-progress-tracker-step-fill-color: var(--watt-color-neutral-grey-600)}.watt-progress-tracker-step-failed{--watt-progress-tracker-step-text-color: var(--watt-color-state-danger);--watt-progress-tracker-step-icon-color: var(--watt-color-neutral-white);--watt-progress-tracker-step-bridge-color: var(--watt-color-state-danger);--watt-progress-tracker-step-fill-color: var(--watt-color-state-danger)}.watt-progress-tracker-step-succeeded{--watt-progress-tracker-step-text-color: var(--watt-color-neutral-grey-900);--watt-progress-tracker-step-icon-color: var(--watt-color-neutral-white);--watt-progress-tracker-step-bridge-color: var(--watt-color-primary);--watt-progress-tracker-step-fill-color: var(--watt-color-primary)}watt-progress-tracker-step{display:contents;--watt-progress-tracker-step-icon-color: var(--watt-progress-tracker-step-text-color)}watt-progress-tracker-step:not(:first-child):before{content:\"\";display:block;width:100%;min-width:var(--watt-space-m);height:1px;margin:0 var(--watt-space-s);background-color:var(--watt-progress-tracker-step-bridge-color)}.watt-progress-tracker-step-icon{display:flex;align-items:center;justify-content:center;width:var(--watt-space-ml);height:var(--watt-space-ml);min-width:var(--watt-space-ml);min-height:var(--watt-space-ml);border-radius:50%;border:1px solid var(--watt-progress-tracker-step-bridge-color);background-color:var(--watt-progress-tracker-step-fill-color)}.watt-progress-tracker-step-icon watt-icon{color:var(--watt-progress-tracker-step-icon-color)}.watt-progress-tracker-step-running .watt-progress-tracker-step-icon{border:none}.watt-progress-tracker-step-text{color:var(--watt-typography-headline-color);font-size:1rem;line-height:1.5rem;font-weight:600;text-transform:none;letter-spacing:0;margin-left:var(--watt-space-s);color:var(--watt-progress-tracker-step-text-color);white-space:nowrap}\n"] }]
|
|
82
82
|
}], propDecorators: { status: [{ type: i0.Input, args: [{ isSignal: true, alias: "status", required: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], current: [{ type: i0.Input, args: [{ isSignal: true, alias: "current", required: false }] }] } });
|
|
83
|
-
//# sourceMappingURL=
|
|
83
|
+
//# sourceMappingURL=watt-progress-tracker-step.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-progress-tracker-step.component.js","sourceRoot":"","sources":["../../../../libs/watt/package/progress-tracker/watt-progress-tracker-step.component.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,iBAAiB,EACjB,QAAQ,EACR,KAAK,GACN,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;;AAqC/D,MAAM,OAAO,gCAAgC;IAC3C,MAAM,GAAG,KAAK,CAAC,QAAQ,iDAEpB,CAAC;IACJ,KAAK,GAAG,KAAK,2DAAU,CAAC;IACxB,OAAO,GAAG,KAAK,CAAC,KAAK,mDAAC,CAAC;IACvB,WAAW,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,uDAAC,CAAC;IAChE,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,8BAA8B,IAAI,CAAC,MAAM,EAAE,EAAE,iDAAC,CAAC;wGAP3D,gCAAgC;4FAAhC,gCAAgC,moBAvBjC;;;;;;;;;;;;;;;;;;;;;GAqBT,k3FAhCS,iBAAiB,kGAAE,oBAAoB;;4FAkCtC,gCAAgC;kBAnC5C,SAAS;8BACC,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,mBACjC,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI,YAC3B,4BAA4B,QAChC;wBACJ,aAAa,EAAE,uCAAuC;wBACtD,cAAc,EAAE,SAAS;wBACzB,qBAAqB,EAAE,eAAe;wBACtC,mBAAmB,EAAE,SAAS;qBAC/B,YAES;;;;;;;;;;;;;;;;;;;;;GAqBT","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 ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\nimport { WattIconComponent } from '@energinet/watt/icon';\nimport { WattSpinnerComponent } from '@energinet/watt/spinner';\n\n@Component({\n imports: [WattIconComponent, WattSpinnerComponent],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n selector: 'watt-progress-tracker-step',\n host: {\n '[attr.role]': 'current() ? \"status\" : \"presentation\"',\n '[attr.class]': 'class()',\n '[attr.aria-current]': 'ariaCurrent()',\n '[attr.aria-label]': 'label()',\n },\n styleUrl: './watt-progress-tracker-step.component.scss',\n template: `\n <div class=\"watt-progress-tracker-step-icon\">\n @switch (status()) {\n @case ('running') {\n <watt-spinner [diameter]=\"26\" [strokeWidth]=\"2\" />\n }\n @case ('skipped') {\n <watt-icon name=\"horizontalRule\" size=\"xs\" />\n }\n @case ('canceled') {\n <watt-icon name=\"close\" size=\"xs\" />\n }\n @case ('failed') {\n <watt-icon name=\"priorityHigh\" size=\"xs\" />\n }\n @case ('succeeded') {\n <watt-icon name=\"checkmark\" size=\"xs\" />\n }\n }\n </div>\n <div class=\"watt-progress-tracker-step-text\"><ng-content /></div>\n `,\n})\nexport class WattProgressTrackerStepComponent {\n status = input.required<\n 'pending' | 'running' | 'skipped' | 'canceled' | 'failed' | 'succeeded'\n >();\n label = input<string>();\n current = input(false);\n ariaCurrent = computed(() => (this.current() ? 'step' : false));\n class = computed(() => `watt-progress-tracker-step-${this.status()}`);\n}\n"]}
|
|
@@ -20,11 +20,11 @@ import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/
|
|
|
20
20
|
import { VaterStackComponent } from '@energinet/watt/vater';
|
|
21
21
|
import * as i0 from "@angular/core";
|
|
22
22
|
export class WattProgressTrackerComponent {
|
|
23
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
24
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattProgressTrackerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: WattProgressTrackerComponent, isStandalone: true, selector: "watt-progress-tracker", ngImport: i0, template: `<vater-stack direction="row"><ng-content /></vater-stack>`, isInline: true, styles: ["watt-progress-tracker{display:block}\n"], dependencies: [{ kind: "component", type: VaterStackComponent, selector: "vater-stack, [vater-stack]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
25
25
|
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattProgressTrackerComponent, decorators: [{
|
|
27
27
|
type: Component,
|
|
28
28
|
args: [{ imports: [VaterStackComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, selector: 'watt-progress-tracker', template: `<vater-stack direction="row"><ng-content /></vater-stack>`, styles: ["watt-progress-tracker{display:block}\n"] }]
|
|
29
29
|
}] });
|
|
30
|
-
//# sourceMappingURL=
|
|
30
|
+
//# sourceMappingURL=watt-progress-tracker.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-progress-tracker.component.js","sourceRoot":"","sources":["../../../../libs/watt/package/progress-tracker/watt-progress-tracker.component.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;;AAgB5D,MAAM,OAAO,4BAA4B;wGAA5B,4BAA4B;4FAA5B,4BAA4B,iFAF7B,2DAA2D,gHAX3D,mBAAmB;;4FAalB,4BAA4B;kBAdxC,SAAS;8BACC,CAAC,mBAAmB,CAAC,mBACb,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI,YAC3B,uBAAuB,YAQvB,2DAA2D","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 { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { VaterStackComponent } from '@energinet/watt/vater';\n\n@Component({\n imports: [VaterStackComponent],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n selector: 'watt-progress-tracker',\n styles: [\n `\n watt-progress-tracker {\n display: block;\n }\n `,\n ],\n template: `<vater-stack direction=\"row\"><ng-content /></vater-stack>`,\n})\nexport class WattProgressTrackerComponent {}\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-query-params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energinet-watt-query-params.js","sourceRoot":"","sources":["../../../../libs/watt/package/query-params/energinet-watt-query-params.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 { WattQueryParamsDirective } from './watt-query-params.directive';
|
|
20
|
-
//# sourceMappingURL=
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/watt/package/query-params/index.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,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 { WattQueryParamsDirective } from './watt-query-params.directive';\n"]}
|
|
@@ -79,13 +79,13 @@ export class WattQueryParamsDirective {
|
|
|
79
79
|
this.formGroup.control.patchValue(value);
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
83
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
82
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattQueryParamsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
83
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: WattQueryParamsDirective, isStandalone: true, selector: "[formGroup][wattQueryParams]", ngImport: i0 });
|
|
84
84
|
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattQueryParamsDirective, decorators: [{
|
|
86
86
|
type: Directive,
|
|
87
87
|
args: [{
|
|
88
88
|
selector: '[formGroup][wattQueryParams]',
|
|
89
89
|
}]
|
|
90
90
|
}] });
|
|
91
|
-
//# sourceMappingURL=
|
|
91
|
+
//# sourceMappingURL=watt-query-params.directive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-query-params.directive.js","sourceRoot":"","sources":["../../../../libs/watt/package/query-params/watt-query-params.directive.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 { DestroyRef, Directive, OnInit, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormGroupDirective } from '@angular/forms';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport qs from 'qs';\n\nconst filtersKey = 'filters';\n\n@Directive({\n selector: '[formGroup][wattQueryParams]',\n})\nexport class WattQueryParamsDirective implements OnInit {\n private formGroup = inject(FormGroupDirective);\n private destoryRef = inject(DestroyRef);\n private router = inject(Router);\n private route = inject(ActivatedRoute);\n\n // eslint-disable-next-line sonarjs/cognitive-complexity\n ngOnInit(): void {\n this.formGroup.valueChanges\n ?.pipe(takeUntilDestroyed(this.destoryRef))\n .subscribe((formValues) => {\n const formValuesClone = structuredClone(formValues);\n\n for (const key in formValuesClone) {\n if (formValuesClone[key] === null || formValuesClone[key] === undefined) {\n delete formValuesClone[key];\n }\n }\n\n const hasSetProperties = Object.keys(formValuesClone).length > 0;\n\n this.router.navigate([], {\n replaceUrl: true,\n relativeTo: this.route,\n queryParams: { [filtersKey]: hasSetProperties ? qs.stringify(formValuesClone) : null },\n queryParamsHandling: 'merge',\n });\n });\n\n if (Object.keys(this.route.snapshot.queryParams).length > 0) {\n const value = qs.parse(this.route.snapshot.queryParams[filtersKey] ?? '', {\n // Needed because `qs` library has a default value of 20 elements\n // after which arrays are parsed as objects\n // See https://github.com/ljharb/qs?tab=readme-ov-file#parsing-arrays\n arrayLimit: 200,\n // See https://github.com/ljharb/qs/issues/91#issuecomment-1833694874\n decoder(\n str: string,\n defaultDecoder: qs.defaultDecoder,\n charset: string,\n type: 'key' | 'value'\n ) {\n // Custom logic not part of the GitHub comment above\n // Handles \"YYYY-MM\" dates\n if (type === 'value' && /\\d{4}-\\d{2}$/.test(str)) {\n return defaultDecoder(str, defaultDecoder, charset);\n }\n\n if (\n type === 'value' &&\n /^(?:-(?:[1-9](?:\\d{0,2}(?:,\\d{3})+|\\d*))|(?:0|(?:[1-9](?:\\d{0,2}(?:,\\d{3})+|\\d*))))(?:.\\d+|)$/.test(\n str\n )\n ) {\n return parseFloat(str);\n }\n\n const keywords: Record<string, boolean | null | undefined> = {\n true: true,\n false: false,\n null: null,\n undefined: undefined,\n };\n if (type === 'value' && str in keywords) {\n return keywords[str];\n }\n\n return defaultDecoder(str, defaultDecoder, charset);\n },\n });\n\n this.formGroup.control.patchValue(value);\n }\n }\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-radio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energinet-watt-radio.js","sourceRoot":"","sources":["../../../../libs/watt/package/radio/energinet-watt-radio.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
|
package/esm2022/radio/index.js
CHANGED
|
@@ -18,4 +18,4 @@
|
|
|
18
18
|
//#endregion
|
|
19
19
|
export { WattRadioComponent } from './watt-radio.component';
|
|
20
20
|
export { WATT_RADIO, WattRadioGroupComponent } from './watt-radio-group.component';
|
|
21
|
-
//# sourceMappingURL=
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/watt/package/radio/index.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,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 { WattRadioComponent } from './watt-radio.component';\nexport { WATT_RADIO, WattRadioGroupComponent } from './watt-radio-group.component';\n"]}
|
|
@@ -85,8 +85,8 @@ export class WattRadioGroupComponent {
|
|
|
85
85
|
setDisabledState = (isDisabled) => this.disabled.set(isDisabled);
|
|
86
86
|
registerOnTouched = (fn) => this.touched.subscribe(fn);
|
|
87
87
|
registerOnChange = (fn) => this.value.subscribe(fn);
|
|
88
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
89
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.
|
|
88
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
89
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.15", type: WattRadioGroupComponent, isStandalone: true, selector: "watt-radio-group", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", disabled: "disabledChange", touched: "touched" }, host: { properties: { "class.disabled": "disabled()", "class.readonly": "readonly()" } }, providers: [
|
|
90
90
|
{
|
|
91
91
|
provide: NG_VALUE_ACCESSOR,
|
|
92
92
|
useExisting: forwardRef(() => WattRadioGroupComponent),
|
|
@@ -98,7 +98,7 @@ export class WattRadioGroupComponent {
|
|
|
98
98
|
</watt-field>
|
|
99
99
|
`, isInline: true, styles: ["watt-radio-group.readonly watt-radio{pointer-events:none}watt-radio-group.readonly watt-radio input,watt-radio-group.readonly watt-radio:has(input:not(:checked)){display:none}\n"], dependencies: [{ kind: "component", type: WattFieldComponent, selector: "watt-field", inputs: ["control", "label", "id", "chipMode", "tooltip", "placeholder", "anchorName", "displayMode", "autoFocus", "showErrors"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
100
100
|
}
|
|
101
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
101
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattRadioGroupComponent, decorators: [{
|
|
102
102
|
type: Component,
|
|
103
103
|
args: [{ imports: [WattFieldComponent], providers: [
|
|
104
104
|
{
|
|
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
116
116
|
}, styles: ["watt-radio-group.readonly watt-radio{pointer-events:none}watt-radio-group.readonly watt-radio input,watt-radio-group.readonly watt-radio:has(input:not(:checked)){display:none}\n"] }]
|
|
117
117
|
}], ctorParameters: () => [], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }, { type: i0.Output, args: ["disabledChange"] }], touched: [{ type: i0.Output, args: ["touched"] }], formControl: [{ type: i0.Input, args: [{ isSignal: true, alias: "formControl", required: false }] }], radios: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => WattRadioComponent), { ...{ descendants: true }, isSignal: true }] }] } });
|
|
118
118
|
export const WATT_RADIO = [WattRadioGroupComponent, WattRadioComponent];
|
|
119
|
-
//# sourceMappingURL=
|
|
119
|
+
//# sourceMappingURL=watt-radio-group.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-radio-group.component.js","sourceRoot":"","sources":["../../../../libs/watt/package/radio/watt-radio-group.component.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 forwardRef,\n ViewEncapsulation,\n input,\n model,\n output,\n computed,\n booleanAttribute,\n ChangeDetectionStrategy,\n contentChildren,\n effect,\n} from '@angular/core';\nimport { ControlValueAccessor, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { WattFieldComponent } from '@energinet/watt/field';\nimport { WattRadioComponent } from './watt-radio.component';\n\n@Component({\n imports: [WattFieldComponent],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => WattRadioGroupComponent),\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'watt-radio-group',\n styles: `\n watt-radio-group.readonly watt-radio {\n pointer-events: none;\n\n & input,\n &:has(input:not(:checked)) {\n display: none;\n }\n }\n `,\n template: `\n <watt-field [label]=\"label()\" [control]=\"formControl()\" displayMode=\"content\">\n <ng-content />\n </watt-field>\n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.disabled]': 'disabled()',\n '[class.readonly]': 'readonly()',\n },\n})\nexport class WattRadioGroupComponent<T> implements ControlValueAccessor {\n /**\n * The field label.\n */\n label = input<string>();\n\n /**\n * The value of the radio button group.\n */\n value = model<T | null>();\n\n /**\n * Optional input for setting the name of the radio buttons.\n * If no name is provided, the name will be auto-generated.\n */\n name = input<string>();\n\n /**\n * Whether the radio button group is readonly.\n */\n readonly = input(false, { transform: booleanAttribute });\n\n /**\n * Whether the radio button group is disabled.\n */\n disabled = model(false);\n\n /**\n * Emits when the radio button group is touched.\n */\n touched = output();\n\n /**\n * Tracks the FormControl instance bound to the directive.\n */\n formControl = input<FormControl | null>(null);\n\n // Used for generating unique radio button names\n private static instance = 1;\n private instance = WattRadioGroupComponent.instance++;\n private group = computed(() => this.name() ?? `watt-radio-group-${this.instance}`);\n\n private radios = contentChildren(WattRadioComponent<T>, { descendants: true });\n protected inheritPropertiesEffect = effect(() => {\n this.radios().forEach((r) => {\n r.disabled.set(this.disabled());\n r.name.set(this.group());\n });\n });\n\n // Two-way binding\n constructor() {\n effect(() => {\n // group -> buttons\n this.radios().forEach((r) => {\n r.checked.set(r.value() === this.value());\n });\n });\n\n // buttons -> group\n effect((onCleanup) => {\n if (this.readonly()) return;\n const subscriptions = this.radios().map((r) =>\n r.isChecked.subscribe(() => {\n this.value.set(r.value());\n })\n );\n\n onCleanup(() => subscriptions.forEach((s) => s.unsubscribe()));\n });\n }\n\n // Implementation for ControlValueAccessor\n writeValue = (value: T | null | undefined) => this.value.set(value);\n setDisabledState = (isDisabled: boolean) => this.disabled.set(isDisabled);\n registerOnTouched = (fn: () => void) => this.touched.subscribe(fn);\n registerOnChange = (fn: (value: T | null | undefined) => void) => this.value.subscribe(fn);\n}\n\nexport const WATT_RADIO = [WattRadioGroupComponent, WattRadioComponent] as const;\n"]}
|
|
@@ -38,8 +38,8 @@ export class WattRadioComponent {
|
|
|
38
38
|
setDisabledState = (isDisabled) => this.disabled.set(isDisabled);
|
|
39
39
|
registerOnTouched = (fn) => this.touched.subscribe(fn);
|
|
40
40
|
registerOnChange = (fn) => this.isChecked.subscribe(() => fn(this.value()));
|
|
41
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
42
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.
|
|
41
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattRadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
42
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: WattRadioComponent, isStandalone: true, selector: "watt-radio", inputs: { group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { disabled: "disabledChange", checked: "checkedChange", isChecked: "isChecked", touched: "touched" }, host: { properties: { "class.disabled": "disabled()" } }, providers: [
|
|
43
43
|
{
|
|
44
44
|
provide: NG_VALUE_ACCESSOR,
|
|
45
45
|
useExisting: forwardRef(() => WattRadioComponent),
|
|
@@ -60,7 +60,7 @@ export class WattRadioComponent {
|
|
|
60
60
|
</label>
|
|
61
61
|
`, isInline: true, styles: [":root{--watt-radio-color: var(--watt-on-light-low-emphasis);--watt-radio-color-hover: var(--watt-on-light-medium-emphasis);--watt-radio-color-focus: var(--watt-color-primary);--watt-radio-color-checked: var(--watt-color-primary);--watt-radio-color-checked-hover: var(--watt-color-primary-dark);--watt-radio-color-checked-focus: var(--watt-color-primary-dark);--watt-disabled-radio-color: var(--watt-color-neutral-grey-500);--watt-radio-label-color: var(--watt-on-light-high-emphasis);--watt-disabled-radio-label-color: var(--watt-on-light-low-emphasis)}watt-radio{padding:2px 0}watt-radio:not(:has(:disabled)) label,watt-radio:not(:has(:disabled)) input{cursor:pointer}watt-radio label{display:flex;align-items:center;color:var(--watt-radio-label-color)}watt-radio label.disabled{color:var(--watt-radio-disabled-label-color)}watt-radio input[type=radio]{width:16px;height:16px;min-width:16px;min-height:16px;appearance:none;margin:0 var(--watt-space-s) 0 0;background:var(--watt-radio-color);border-radius:50%;display:grid;place-content:center}watt-radio input[type=radio]:before{content:\"\";width:14px;height:14px;border-radius:50%;transform:scale(1);transition:var(--watt-time-extra-short) transform var(--watt-ease-linear);background:var(--watt-color-neutral-white)}watt-radio input[type=radio]:checked{background:var(--watt-radio-color-checked)}watt-radio input[type=radio]:checked:before{transform:scale(.33)}watt-radio input:focus{outline:none}watt-radio input:not(:disabled):hover{background:var(--watt-radio-color-hover)}watt-radio input:not(:disabled):hover:checked{background:var(--watt-radio-color-checked-hover)}watt-radio input:not(:disabled):focus-visible{background:var(--watt-radio-color-focus)}watt-radio input:not(:disabled):focus-visible:checked{background:var(--watt-radio-color-checked-focus)}watt-radio.disabled{--watt-radio-label-color: var(--watt-disabled-radio-label-color);--watt-radio-color: var(--watt-disabled-radio-color);--watt-radio-color-checked: var(--watt-disabled-radio-color)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
62
62
|
}
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: WattRadioComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
65
65
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
66
66
|
{
|
|
@@ -85,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
85
85
|
'[class.disabled]': 'disabled()',
|
|
86
86
|
}, styles: [":root{--watt-radio-color: var(--watt-on-light-low-emphasis);--watt-radio-color-hover: var(--watt-on-light-medium-emphasis);--watt-radio-color-focus: var(--watt-color-primary);--watt-radio-color-checked: var(--watt-color-primary);--watt-radio-color-checked-hover: var(--watt-color-primary-dark);--watt-radio-color-checked-focus: var(--watt-color-primary-dark);--watt-disabled-radio-color: var(--watt-color-neutral-grey-500);--watt-radio-label-color: var(--watt-on-light-high-emphasis);--watt-disabled-radio-label-color: var(--watt-on-light-low-emphasis)}watt-radio{padding:2px 0}watt-radio:not(:has(:disabled)) label,watt-radio:not(:has(:disabled)) input{cursor:pointer}watt-radio label{display:flex;align-items:center;color:var(--watt-radio-label-color)}watt-radio label.disabled{color:var(--watt-radio-disabled-label-color)}watt-radio input[type=radio]{width:16px;height:16px;min-width:16px;min-height:16px;appearance:none;margin:0 var(--watt-space-s) 0 0;background:var(--watt-radio-color);border-radius:50%;display:grid;place-content:center}watt-radio input[type=radio]:before{content:\"\";width:14px;height:14px;border-radius:50%;transform:scale(1);transition:var(--watt-time-extra-short) transform var(--watt-ease-linear);background:var(--watt-color-neutral-white)}watt-radio input[type=radio]:checked{background:var(--watt-radio-color-checked)}watt-radio input[type=radio]:checked:before{transform:scale(.33)}watt-radio input:focus{outline:none}watt-radio input:not(:disabled):hover{background:var(--watt-radio-color-hover)}watt-radio input:not(:disabled):hover:checked{background:var(--watt-radio-color-checked-hover)}watt-radio input:not(:disabled):focus-visible{background:var(--watt-radio-color-focus)}watt-radio input:not(:disabled):focus-visible:checked{background:var(--watt-radio-color-checked-focus)}watt-radio.disabled{--watt-radio-label-color: var(--watt-disabled-radio-label-color);--watt-radio-color: var(--watt-disabled-radio-color);--watt-radio-color-checked: var(--watt-disabled-radio-color)}\n"] }]
|
|
87
87
|
}], propDecorators: { group: [{ type: i0.Input, args: [{ isSignal: true, alias: "group", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }, { type: i0.Output, args: ["disabledChange"] }], checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }, { type: i0.Output, args: ["checkedChange"] }], isChecked: [{ type: i0.Output, args: ["isChecked"] }], touched: [{ type: i0.Output, args: ["touched"] }] } });
|
|
88
|
-
//# sourceMappingURL=
|
|
88
|
+
//# sourceMappingURL=watt-radio.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watt-radio.component.js","sourceRoot":"","sources":["../../../../libs/watt/package/radio/watt-radio.component.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;;;;;;;;;;;;;;;GAeG;AACH,YAAY;AACZ,OAAO,EACL,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,KAAK,EACL,YAAY,EACZ,KAAK,EACL,MAAM,EACN,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAwB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;;AAgCzE,MAAM,OAAO,kBAAkB;IAC7B,iFAAiF;IACjF,KAAK,GAAG,KAAK,2DAAU,CAAC;IACxB,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,gDAAC,CAAC,CAAC,4CAA4C;IAE7E,iCAAiC;IACjC,KAAK,GAAG,KAAK,CAAC,QAAQ,gDAAK,CAAC;IAE5B,qCAAqC;IACrC,QAAQ,GAAG,KAAK,CAAC,KAAK,oDAAC,CAAC;IAExB,oCAAoC;IACpC,OAAO,GAAG,KAAK,CAAC,KAAK,mDAAC,CAAC;IAEvB,wEAAwE;IACxE,SAAS,GAAG,MAAM,EAAE,CAAC;IAErB,uCAAuC;IACvC,OAAO,GAAG,MAAM,EAAE,CAAC;IAEnB,0CAA0C;IAC1C,UAAU,GAAG,CAAC,KAA2B,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACvF,gBAAgB,GAAG,CAAC,UAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1E,iBAAiB,GAAG,CAAC,EAAc,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACnE,gBAAgB,GAAG,CAAC,EAAyC,EAAE,EAAE,CAC/D,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;wGAzBxC,kBAAkB;4FAAlB,kBAAkB,4tBA5BlB;YACT;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC;gBACjD,KAAK,EAAE,IAAI;aACZ;SACF,0BAGS;;;;;;;;;;;;;GAaT;;4FAMU,kBAAkB;kBA9B9B,SAAS;sCACS,uBAAuB,CAAC,MAAM,aACpC;wBACT;4BACE,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,mBAAmB,CAAC;4BACjD,KAAK,EAAE,IAAI;yBACZ;qBACF,YACS,YAAY,YAEZ;;;;;;;;;;;;;GAaT,iBACc,iBAAiB,CAAC,IAAI,QAC/B;wBACJ,kBAAkB,EAAE,YAAY;qBACjC","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 forwardRef,\n ViewEncapsulation,\n input,\n linkedSignal,\n model,\n output,\n ChangeDetectionStrategy,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => WattRadioComponent),\n multi: true,\n },\n ],\n selector: 'watt-radio',\n styleUrls: ['./watt-radio.component.scss'],\n template: `\n <label class=\"watt-text-s\">\n <input\n type=\"radio\"\n [name]=\"name()\"\n [value]=\"value()\"\n [disabled]=\"disabled()\"\n [checked]=\"checked()\"\n (change)=\"isChecked.emit()\"\n (blur)=\"touched.emit()\"\n />\n <ng-content />\n </label>\n `,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.disabled]': 'disabled()',\n },\n})\nexport class WattRadioComponent<T> implements ControlValueAccessor {\n /** The name of the radio button. Prefer using `<watt-radio-group>` over this. */\n group = input<string>();\n name = linkedSignal(this.group); // allows inheriting from `watt-radio-group`\n\n /** Value of the radio button. */\n value = input.required<T>();\n\n /** Whether the radio is disabled. */\n disabled = model(false);\n\n /** Whether the radio is checked. */\n checked = model(false);\n\n /** Emits only when the radio is checked. Never emits when unchecked. */\n isChecked = output();\n\n /** Emits when the radio is touched. */\n touched = output();\n\n // Implementation for ControlValueAccessor\n writeValue = (value: T | null | undefined) => this.checked.set(value === this.value());\n setDisabledState = (isDisabled: boolean) => this.disabled.set(isDisabled);\n registerOnTouched = (fn: () => void) => this.touched.subscribe(fn);\n registerOnChange = (fn: (value: T | null | undefined) => void) =>\n this.isChecked.subscribe(() => fn(this.value()));\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-search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energinet-watt-search.js","sourceRoot":"","sources":["../../../../libs/watt/package/search/energinet-watt-search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
|