ecabs-components 1.1.10 → 2.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/ecabs-components.mjs +6291 -6235
- package/fesm2022/ecabs-components.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/base/consts/buttons.consts.d.ts +1 -1
- package/lib/base/consts/date-mask.consts.d.ts +7 -7
- package/lib/base/consts/error-messages.consts.d.ts +2 -2
- package/lib/base/consts/images.consts.d.ts +2 -2
- package/lib/base/consts/translations.consts.d.ts +2 -2
- package/lib/base/directives/attach-embedded-view.directive.d.ts +10 -10
- package/lib/base/directives/attach-embedded-view.directive.module.d.ts +8 -8
- package/lib/base/directives/check-permissions.directive.d.ts +13 -13
- package/lib/base/directives/check-permissions.directive.module.d.ts +8 -8
- package/lib/base/directives/date-mask.directive.d.ts +19 -19
- package/lib/base/directives/date-mask.directive.module.d.ts +8 -8
- package/lib/base/directives/digits-only.directive.d.ts +26 -26
- package/lib/base/directives/digits-only.directive.module.d.ts +8 -8
- package/lib/base/directives/dom-observer.directive.d.ts +11 -11
- package/lib/base/directives/dom-observer.directive.module.d.ts +8 -8
- package/lib/base/directives/dynamic-bg-color.directive.d.ts +13 -13
- package/lib/base/directives/dynamic-bg-color.directive.module.d.ts +8 -8
- package/lib/base/directives/element-multiplier.directive.d.ts +10 -10
- package/lib/base/directives/element-multiplier.directive.module.d.ts +8 -8
- package/lib/base/directives/file-drop.directive.d.ts +11 -11
- package/lib/base/directives/file-drop.directive.module.d.ts +8 -8
- package/lib/base/directives/min-max.directive.d.ts +20 -20
- package/lib/base/directives/min-max.directive.module.d.ts +8 -8
- package/lib/base/directives/number-border.directive.d.ts +13 -13
- package/lib/base/directives/number-border.directive.module.d.ts +8 -8
- package/lib/base/directives/paginator.directive.d.ts +36 -36
- package/lib/base/directives/paginator.directive.module.d.ts +8 -8
- package/lib/base/directives/show-on-truncated.directive.d.ts +11 -11
- package/lib/base/directives/show-on-truncated.directive.module.d.ts +8 -8
- package/lib/base/directives/time-mask.directive.d.ts +15 -15
- package/lib/base/directives/time-mask.directive.module.d.ts +8 -8
- package/lib/base/directives/time-range.directive.d.ts +15 -15
- package/lib/base/directives/time-range.directive.module.d.ts +8 -8
- package/lib/base/directives/tooltip-if-truncated.directive.d.ts +12 -12
- package/lib/base/directives/tooltip-if-truncated.directive.module.d.ts +8 -8
- package/lib/base/directives/uppercase-mask.directive.d.ts +9 -9
- package/lib/base/directives/uppercase-mask.directive.module.d.ts +8 -8
- package/lib/base/element-base.d.ts +38 -38
- package/lib/base/element-wrapper/element-wrapper.component.d.ts +19 -19
- package/lib/base/element-wrapper/element-wrapper.module.d.ts +17 -17
- package/lib/base/models/bread-crumb.models.d.ts +5 -5
- package/lib/base/models/ecabs-date-picker-translations.models.d.ts +19 -19
- package/lib/base/models/element.models.d.ts +30 -30
- package/lib/base/models/header.models.d.ts +7 -7
- package/lib/base/models/select.models.d.ts +5 -5
- package/lib/base/models/sidebar.models.d.ts +17 -17
- package/lib/base/models/slider.models.d.ts +6 -6
- package/lib/base/models/timepicker.models.d.ts +6 -6
- package/lib/base/models/user-claim.models.d.ts +5 -5
- package/lib/base/models/validation.models.d.ts +7 -7
- package/lib/base/pipes/pipes.module.d.ts +8 -8
- package/lib/base/pipes/truncate.pipe.d.ts +7 -7
- package/lib/base/services/ecabs-components.service.d.ts +32 -32
- package/lib/base/services/ecabs-date-picker-translations.service.d.ts +12 -12
- package/lib/base/services/header.service.d.ts +11 -11
- package/lib/base/services/unsubscribe.service.d.ts +10 -10
- package/lib/base/utils/menu-utils.d.ts +2 -2
- package/lib/base/utils/object-utils.d.ts +9 -8
- package/lib/base/validation/validation.component.d.ts +26 -26
- package/lib/base/validation/validation.module.d.ts +10 -10
- package/lib/ecabs-active-status-filter/ecabs-active-status-filter.component.d.ts +14 -14
- package/lib/ecabs-active-status-filter/ecabs-active-status-filter.module.d.ts +10 -10
- package/lib/ecabs-breadcrumb/ecabs-breadcrumb.component.d.ts +7 -7
- package/lib/ecabs-breadcrumb/ecabs-breadcrumb.module.d.ts +10 -10
- package/lib/ecabs-buttons/ecabs-buttons.component.d.ts +19 -19
- package/lib/ecabs-buttons/ecabs-buttons.module.d.ts +11 -11
- package/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.component.d.ts +32 -32
- package/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.module.d.ts +12 -12
- package/lib/ecabs-date-picker/components/ecabs-date-picker-header/ecabs-date-picker-header.component.d.ts +9 -9
- package/lib/ecabs-date-picker/ecabs-date-picker.component.d.ts +41 -41
- package/lib/ecabs-date-picker/ecabs-date-picker.module.d.ts +17 -17
- package/lib/ecabs-date-picker-actions/ecabs-date-picker-actions.component.d.ts +9 -9
- package/lib/ecabs-date-picker-actions/ecabs-date-picker-actions.module.d.ts +10 -10
- package/lib/ecabs-date-range-picker/components/ecabs-date-range-picker-header/ecabs-date-range-picker-header.component.d.ts +9 -9
- package/lib/ecabs-date-range-picker/ecabs-date-range-picker.component.d.ts +53 -53
- package/lib/ecabs-date-range-picker/ecabs-date-range-picker.module.d.ts +32 -32
- package/lib/ecabs-date-time-picker/components/ecabs-date-time-picker-header/ecabs-date-time-picker-header.component.d.ts +9 -9
- package/lib/ecabs-date-time-picker/ecabs-date-time-picker.component.d.ts +62 -62
- package/lib/ecabs-date-time-picker/ecabs-date-time-picker.module.d.ts +20 -20
- package/lib/ecabs-date-time-range-picker/components/ecabs-date-time-range-picker-header/ecabs-date-time-range-picker-header.component.d.ts +9 -9
- package/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.component.d.ts +68 -68
- package/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.d.ts +21 -21
- package/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.component.d.ts +44 -44
- package/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.module.d.ts +11 -11
- package/lib/ecabs-dialog-message/ecabs-dialog-message.component.d.ts +29 -29
- package/lib/ecabs-dialog-message/ecabs-dialog-message.module.d.ts +11 -11
- package/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.component.d.ts +15 -15
- package/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.module.d.ts +9 -9
- package/lib/ecabs-expansion-panel/ecabs-expansion-panel.component.d.ts +29 -29
- package/lib/ecabs-expansion-panel/ecabs-expansion-panel.module.d.ts +14 -14
- package/lib/ecabs-header/ecabs-header.component.d.ts +25 -25
- package/lib/ecabs-header/ecabs-header.module.d.ts +11 -11
- package/lib/ecabs-hint/ecabs-hint.component.d.ts +8 -8
- package/lib/ecabs-hint/ecabs-hint.module.d.ts +8 -8
- package/lib/ecabs-increment/ecabs-increment.component.d.ts +26 -26
- package/lib/ecabs-increment/ecabs-increment.module.d.ts +13 -13
- package/lib/ecabs-input/ecabs-input.component.d.ts +30 -30
- package/lib/ecabs-input/ecabs-input.module.d.ts +13 -13
- package/lib/ecabs-language-selector/ecabs-language-selector.component.d.ts +19 -19
- package/lib/ecabs-language-selector/ecabs-language-selector.module.d.ts +11 -11
- package/lib/ecabs-loading/ecabs-loading.component.d.ts +8 -8
- package/lib/ecabs-loading/ecabs-loading.module.d.ts +9 -9
- package/lib/ecabs-loading/spinner/spinner.component.d.ts +6 -6
- package/lib/ecabs-logo/ecabs-logo.component.d.ts +9 -9
- package/lib/ecabs-logo/ecabs-logo.module.d.ts +8 -8
- package/lib/ecabs-menu-items/ecabs-menu-items.component.d.ts +28 -28
- package/lib/ecabs-menu-items/ecabs-menu-items.module.d.ts +11 -11
- package/lib/ecabs-multiple-dates-picker/ecabs-multiple-dates-picker.component.d.ts +49 -49
- package/lib/ecabs-multiple-dates-picker/ecabs-multiple-dates-picker.module.d.ts +17 -17
- package/lib/ecabs-note/ecabs-note.component.d.ts +7 -7
- package/lib/ecabs-note/ecabs-note.module.d.ts +9 -9
- package/lib/ecabs-phone/ecabs-phone.component.d.ts +43 -42
- package/lib/ecabs-phone/ecabs-phone.module.d.ts +11 -12
- package/lib/ecabs-picker-header/ecabs-picker-header.component.d.ts +25 -25
- package/lib/ecabs-picker-header/ecabs-picker-header.module.d.ts +12 -12
- package/lib/ecabs-place-autocomplete/ecabs-place-autocomplete.component.d.ts +40 -41
- package/lib/ecabs-place-autocomplete/ecabs-place-autocomplete.module.d.ts +11 -11
- package/lib/ecabs-profile/ecabs-profile.component.d.ts +13 -13
- package/lib/ecabs-profile/ecabs-profile.module.d.ts +9 -9
- package/lib/ecabs-radio-button-list/ecabs-radio-button-list.component.d.ts +23 -23
- package/lib/ecabs-radio-button-list/ecabs-radio-button-list.module.d.ts +11 -11
- package/lib/ecabs-select/ecabs-select.component.d.ts +71 -71
- package/lib/ecabs-select/ecabs-select.module.d.ts +16 -16
- package/lib/ecabs-select-v2/ecabs-select-v2.component.d.ts +58 -58
- package/lib/ecabs-select-v2/ecabs-select-v2.module.d.ts +15 -15
- package/lib/ecabs-sidebar/ecabs-sidebar.component.d.ts +17 -17
- package/lib/ecabs-sidebar/ecabs-sidebar.module.d.ts +14 -14
- package/lib/ecabs-slider/ecabs-slider.component.d.ts +32 -32
- package/lib/ecabs-slider/ecabs-slider.module.d.ts +11 -11
- package/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.component.d.ts +8 -8
- package/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.module.d.ts +9 -9
- package/lib/ecabs-table/ecabs-table.component.d.ts +18 -18
- package/lib/ecabs-table/ecabs-table.module.d.ts +12 -12
- package/lib/ecabs-textarea/ecabs-textarea.component.d.ts +20 -20
- package/lib/ecabs-textarea/ecabs-textarea.module.d.ts +10 -10
- package/lib/ecabs-timepicker/componets/ecabs-time-list-panel/ecabs-time-list-panel.component.d.ts +42 -42
- package/lib/ecabs-timepicker/config.model.d.ts +5 -5
- package/lib/ecabs-timepicker/ecabs-timepicker.component.d.ts +59 -59
- package/lib/ecabs-timepicker/ecabs-timepicker.module.d.ts +12 -12
- package/lib/ecabs-timepicker/ecabs-timepicker.service.d.ts +12 -12
- package/lib/ecabs-validation/ecabs-validation.component.d.ts +10 -10
- package/lib/ecabs-validation/ecabs-validation.module.d.ts +9 -9
- package/package.json +18 -19
- package/public-api.d.ts +125 -125
- package/src/assets/styles/material/_theme.scss +10 -11
- package/src/assets/styles/material/overrides/_phone.scss +11 -15
- package/src/assets/styles/scss/modules/_phone.scss +13 -10
- package/src/assets/styles/tailwind/index.scss +1 -1
- package/esm2022/ecabs-components.mjs +0 -5
- package/esm2022/lib/base/consts/buttons.consts.mjs +0 -2
- package/esm2022/lib/base/consts/date-mask.consts.mjs +0 -76
- package/esm2022/lib/base/consts/error-messages.consts.mjs +0 -95
- package/esm2022/lib/base/consts/images.consts.mjs +0 -3
- package/esm2022/lib/base/consts/translations.consts.mjs +0 -5
- package/esm2022/lib/base/directives/attach-embedded-view.directive.mjs +0 -23
- package/esm2022/lib/base/directives/attach-embedded-view.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/check-permissions.directive.mjs +0 -36
- package/esm2022/lib/base/directives/check-permissions.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/date-mask.directive.mjs +0 -105
- package/esm2022/lib/base/directives/date-mask.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/digits-only.directive.mjs +0 -142
- package/esm2022/lib/base/directives/digits-only.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/dom-observer.directive.mjs +0 -32
- package/esm2022/lib/base/directives/dom-observer.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/dynamic-bg-color.directive.mjs +0 -40
- package/esm2022/lib/base/directives/dynamic-bg-color.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/element-multiplier.directive.mjs +0 -26
- package/esm2022/lib/base/directives/element-multiplier.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/file-drop.directive.mjs +0 -42
- package/esm2022/lib/base/directives/file-drop.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/min-max.directive.mjs +0 -68
- package/esm2022/lib/base/directives/min-max.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/number-border.directive.mjs +0 -59
- package/esm2022/lib/base/directives/number-border.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/paginator.directive.mjs +0 -157
- package/esm2022/lib/base/directives/paginator.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/show-on-truncated.directive.mjs +0 -26
- package/esm2022/lib/base/directives/show-on-truncated.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/time-mask.directive.mjs +0 -61
- package/esm2022/lib/base/directives/time-mask.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/time-range.directive.mjs +0 -61
- package/esm2022/lib/base/directives/time-range.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/tooltip-if-truncated.directive.mjs +0 -32
- package/esm2022/lib/base/directives/tooltip-if-truncated.directive.module.mjs +0 -18
- package/esm2022/lib/base/directives/uppercase-mask.directive.mjs +0 -26
- package/esm2022/lib/base/directives/uppercase-mask.directive.module.mjs +0 -18
- package/esm2022/lib/base/element-base.mjs +0 -151
- package/esm2022/lib/base/element-wrapper/element-wrapper.component.mjs +0 -56
- package/esm2022/lib/base/element-wrapper/element-wrapper.module.mjs +0 -80
- package/esm2022/lib/base/models/bread-crumb.models.mjs +0 -2
- package/esm2022/lib/base/models/ecabs-date-picker-translations.models.mjs +0 -2
- package/esm2022/lib/base/models/element.models.mjs +0 -2
- package/esm2022/lib/base/models/header.models.mjs +0 -2
- package/esm2022/lib/base/models/select.models.mjs +0 -2
- package/esm2022/lib/base/models/sidebar.models.mjs +0 -2
- package/esm2022/lib/base/models/slider.models.mjs +0 -2
- package/esm2022/lib/base/models/timepicker.models.mjs +0 -2
- package/esm2022/lib/base/models/user-claim.models.mjs +0 -2
- package/esm2022/lib/base/models/validation.models.mjs +0 -2
- package/esm2022/lib/base/pipes/pipes.module.mjs +0 -18
- package/esm2022/lib/base/pipes/truncate.pipe.mjs +0 -19
- package/esm2022/lib/base/services/ecabs-components.service.mjs +0 -64
- package/esm2022/lib/base/services/ecabs-date-picker-translations.service.mjs +0 -40
- package/esm2022/lib/base/services/header.service.mjs +0 -23
- package/esm2022/lib/base/services/unsubscribe.service.mjs +0 -25
- package/esm2022/lib/base/utils/menu-utils.mjs +0 -18
- package/esm2022/lib/base/utils/object-utils.mjs +0 -59
- package/esm2022/lib/base/validation/validation.component.mjs +0 -87
- package/esm2022/lib/base/validation/validation.module.mjs +0 -20
- package/esm2022/lib/ecabs-active-status-filter/ecabs-active-status-filter.component.mjs +0 -29
- package/esm2022/lib/ecabs-active-status-filter/ecabs-active-status-filter.module.mjs +0 -20
- package/esm2022/lib/ecabs-breadcrumb/ecabs-breadcrumb.component.mjs +0 -17
- package/esm2022/lib/ecabs-breadcrumb/ecabs-breadcrumb.module.mjs +0 -20
- package/esm2022/lib/ecabs-buttons/ecabs-buttons.component.mjs +0 -62
- package/esm2022/lib/ecabs-buttons/ecabs-buttons.module.mjs +0 -21
- package/esm2022/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.component.mjs +0 -115
- package/esm2022/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.module.mjs +0 -36
- package/esm2022/lib/ecabs-date-picker/components/ecabs-date-picker-header/ecabs-date-picker-header.component.mjs +0 -21
- package/esm2022/lib/ecabs-date-picker/ecabs-date-picker.component.mjs +0 -146
- package/esm2022/lib/ecabs-date-picker/ecabs-date-picker.module.mjs +0 -56
- package/esm2022/lib/ecabs-date-picker-actions/ecabs-date-picker-actions.component.mjs +0 -22
- package/esm2022/lib/ecabs-date-picker-actions/ecabs-date-picker-actions.module.mjs +0 -20
- package/esm2022/lib/ecabs-date-range-picker/components/ecabs-date-range-picker-header/ecabs-date-range-picker-header.component.mjs +0 -21
- package/esm2022/lib/ecabs-date-range-picker/ecabs-date-range-picker.component.mjs +0 -143
- package/esm2022/lib/ecabs-date-range-picker/ecabs-date-range-picker.module.mjs +0 -87
- package/esm2022/lib/ecabs-date-time-picker/components/ecabs-date-time-picker-header/ecabs-date-time-picker-header.component.mjs +0 -21
- package/esm2022/lib/ecabs-date-time-picker/ecabs-date-time-picker.component.mjs +0 -231
- package/esm2022/lib/ecabs-date-time-picker/ecabs-date-time-picker.module.mjs +0 -72
- package/esm2022/lib/ecabs-date-time-range-picker/components/ecabs-date-time-range-picker-header/ecabs-date-time-range-picker-header.component.mjs +0 -21
- package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.component.mjs +0 -250
- package/esm2022/lib/ecabs-date-time-range-picker/ecabs-date-time-range-picker.module.mjs +0 -80
- package/esm2022/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.component.mjs +0 -77
- package/esm2022/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.module.mjs +0 -20
- package/esm2022/lib/ecabs-dialog-message/ecabs-dialog-message.component.mjs +0 -60
- package/esm2022/lib/ecabs-dialog-message/ecabs-dialog-message.module.mjs +0 -20
- package/esm2022/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.component.mjs +0 -30
- package/esm2022/lib/ecabs-empty-placeholder/ecabs-empty-placeholder.module.mjs +0 -19
- package/esm2022/lib/ecabs-expansion-panel/ecabs-expansion-panel.component.mjs +0 -90
- package/esm2022/lib/ecabs-expansion-panel/ecabs-expansion-panel.module.mjs +0 -44
- package/esm2022/lib/ecabs-header/ecabs-header.component.mjs +0 -59
- package/esm2022/lib/ecabs-header/ecabs-header.module.mjs +0 -32
- package/esm2022/lib/ecabs-hint/ecabs-hint.component.mjs +0 -21
- package/esm2022/lib/ecabs-hint/ecabs-hint.module.mjs +0 -18
- package/esm2022/lib/ecabs-increment/ecabs-increment.component.mjs +0 -83
- package/esm2022/lib/ecabs-increment/ecabs-increment.module.mjs +0 -40
- package/esm2022/lib/ecabs-input/ecabs-input.component.mjs +0 -106
- package/esm2022/lib/ecabs-input/ecabs-input.module.mjs +0 -40
- package/esm2022/lib/ecabs-language-selector/ecabs-language-selector.component.mjs +0 -64
- package/esm2022/lib/ecabs-language-selector/ecabs-language-selector.module.mjs +0 -35
- package/esm2022/lib/ecabs-loading/ecabs-loading.component.mjs +0 -22
- package/esm2022/lib/ecabs-loading/ecabs-loading.module.mjs +0 -19
- package/esm2022/lib/ecabs-loading/spinner/spinner.component.mjs +0 -14
- package/esm2022/lib/ecabs-logo/ecabs-logo.component.mjs +0 -24
- package/esm2022/lib/ecabs-logo/ecabs-logo.module.mjs +0 -18
- package/esm2022/lib/ecabs-menu-items/ecabs-menu-items.component.mjs +0 -134
- package/esm2022/lib/ecabs-menu-items/ecabs-menu-items.module.mjs +0 -33
- package/esm2022/lib/ecabs-multiple-dates-picker/ecabs-multiple-dates-picker.component.mjs +0 -180
- package/esm2022/lib/ecabs-multiple-dates-picker/ecabs-multiple-dates-picker.module.mjs +0 -59
- package/esm2022/lib/ecabs-note/ecabs-note.component.mjs +0 -28
- package/esm2022/lib/ecabs-note/ecabs-note.module.mjs +0 -19
- package/esm2022/lib/ecabs-phone/ecabs-phone.component.mjs +0 -149
- package/esm2022/lib/ecabs-phone/ecabs-phone.module.mjs +0 -39
- package/esm2022/lib/ecabs-picker-header/ecabs-picker-header.component.mjs +0 -73
- package/esm2022/lib/ecabs-picker-header/ecabs-picker-header.module.mjs +0 -36
- package/esm2022/lib/ecabs-place-autocomplete/ecabs-place-autocomplete.component.mjs +0 -133
- package/esm2022/lib/ecabs-place-autocomplete/ecabs-place-autocomplete.module.mjs +0 -21
- package/esm2022/lib/ecabs-profile/ecabs-profile.component.mjs +0 -39
- package/esm2022/lib/ecabs-profile/ecabs-profile.module.mjs +0 -19
- package/esm2022/lib/ecabs-radio-button-list/ecabs-radio-button-list.component.mjs +0 -71
- package/esm2022/lib/ecabs-radio-button-list/ecabs-radio-button-list.module.mjs +0 -21
- package/esm2022/lib/ecabs-select/ecabs-select.component.mjs +0 -355
- package/esm2022/lib/ecabs-select/ecabs-select.module.mjs +0 -64
- package/esm2022/lib/ecabs-select-v2/ecabs-select-v2.component.mjs +0 -216
- package/esm2022/lib/ecabs-select-v2/ecabs-select-v2.module.mjs +0 -51
- package/esm2022/lib/ecabs-sidebar/ecabs-sidebar.component.mjs +0 -43
- package/esm2022/lib/ecabs-sidebar/ecabs-sidebar.module.mjs +0 -43
- package/esm2022/lib/ecabs-slider/ecabs-slider.component.mjs +0 -117
- package/esm2022/lib/ecabs-slider/ecabs-slider.module.mjs +0 -35
- package/esm2022/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.component.mjs +0 -19
- package/esm2022/lib/ecabs-table/ecabs-table-filter-wrapper/ecabs-table-filter-wrapper.module.mjs +0 -19
- package/esm2022/lib/ecabs-table/ecabs-table.component.mjs +0 -48
- package/esm2022/lib/ecabs-table/ecabs-table.module.mjs +0 -33
- package/esm2022/lib/ecabs-textarea/ecabs-textarea.component.mjs +0 -65
- package/esm2022/lib/ecabs-textarea/ecabs-textarea.module.mjs +0 -20
- package/esm2022/lib/ecabs-timepicker/componets/ecabs-time-list-panel/ecabs-time-list-panel.component.mjs +0 -165
- package/esm2022/lib/ecabs-timepicker/config.model.mjs +0 -2
- package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.component.mjs +0 -299
- package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.module.mjs +0 -33
- package/esm2022/lib/ecabs-timepicker/ecabs-timepicker.service.mjs +0 -29
- package/esm2022/lib/ecabs-validation/ecabs-validation.component.mjs +0 -22
- package/esm2022/lib/ecabs-validation/ecabs-validation.module.mjs +0 -19
- package/esm2022/public-api.mjs +0 -126
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
|
-
import { matchMenuToUrl } from '../base/utils/menu-utils';
|
|
3
|
-
import { NavigationStart } from '@angular/router';
|
|
4
|
-
import { UnsubscribeService } from '../base/services/unsubscribe.service';
|
|
5
|
-
import { filter, first, takeUntil } from 'rxjs';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../base/services/unsubscribe.service";
|
|
8
|
-
import * as i2 from "@angular/material/icon";
|
|
9
|
-
import * as i3 from "@angular/platform-browser";
|
|
10
|
-
import * as i4 from "@angular/router";
|
|
11
|
-
import * as i5 from "@angular/common";
|
|
12
|
-
import * as i6 from "../base/pipes/truncate.pipe";
|
|
13
|
-
export class EcabsMenuItemsComponent {
|
|
14
|
-
unsubscribeService;
|
|
15
|
-
iconRegistry;
|
|
16
|
-
sanitizer;
|
|
17
|
-
router;
|
|
18
|
-
menuItems;
|
|
19
|
-
minimizeSidebar;
|
|
20
|
-
truncateTo = 20;
|
|
21
|
-
toggleSidebar = new EventEmitter();
|
|
22
|
-
constructor(unsubscribeService, iconRegistry, sanitizer, router) {
|
|
23
|
-
this.unsubscribeService = unsubscribeService;
|
|
24
|
-
this.iconRegistry = iconRegistry;
|
|
25
|
-
this.sanitizer = sanitizer;
|
|
26
|
-
this.router = router;
|
|
27
|
-
}
|
|
28
|
-
ngOnChanges(changes) {
|
|
29
|
-
const { menuItems } = changes;
|
|
30
|
-
if (menuItems?.currentValue?.length) {
|
|
31
|
-
const itemsWithResources = this.menuItems.filter((item) => !!item.iconResource);
|
|
32
|
-
itemsWithResources?.map(({ iconResource }) => {
|
|
33
|
-
const { name, path } = iconResource ?? {};
|
|
34
|
-
this.iconRegistry.addSvgIcon(name, this.sanitizer.bypassSecurityTrustResourceUrl(path));
|
|
35
|
-
});
|
|
36
|
-
this.matchMenuItemsOnLoad();
|
|
37
|
-
this.trackMenu();
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
ngOnDestroy() {
|
|
41
|
-
this.unsubscribeService.destroy();
|
|
42
|
-
}
|
|
43
|
-
matchMenuItemsOnLoad() {
|
|
44
|
-
this.router.events
|
|
45
|
-
.pipe(first(), takeUntil(this.unsubscribeService.subscription()), filter((event) => event instanceof NavigationStart))
|
|
46
|
-
.subscribe((event) => {
|
|
47
|
-
const matchedMenuItemFromRoute = matchMenuToUrl(event.url, this.menuItems);
|
|
48
|
-
if (matchedMenuItemFromRoute) {
|
|
49
|
-
if (matchedMenuItemFromRoute?.subItems?.length > 0) {
|
|
50
|
-
const matchedSubmenuItem = matchMenuToUrl(event.url, matchedMenuItemFromRoute.subItems);
|
|
51
|
-
if (matchedSubmenuItem) {
|
|
52
|
-
matchedSubmenuItem.expand = true;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
this.menuItems
|
|
56
|
-
.filter((item) => item.expand)
|
|
57
|
-
?.map((item) => this.closeMenuGroup(item));
|
|
58
|
-
const toExpand = this.menuItems.find((item) => JSON.stringify(item) ===
|
|
59
|
-
JSON.stringify(matchedMenuItemFromRoute) && !item.expand);
|
|
60
|
-
toExpand.expand = this.minimizeSidebar ? true : !toExpand.expand;
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
trackMenu() {
|
|
65
|
-
this.router.events
|
|
66
|
-
.pipe(takeUntil(this.unsubscribeService.subscription()), filter((event) => event instanceof NavigationStart))
|
|
67
|
-
.subscribe((event) => {
|
|
68
|
-
if (!matchMenuToUrl(event.url, this.menuItems)) {
|
|
69
|
-
this.menuItems
|
|
70
|
-
?.filter((item) => !!item.expand)
|
|
71
|
-
?.map((item) => {
|
|
72
|
-
this.closeMenuGroup(item);
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
this.matchActiveItem(event.url);
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
toggleItem(item, index) {
|
|
81
|
-
if (this.minimizeSidebar) {
|
|
82
|
-
this.toggleSidebar.emit();
|
|
83
|
-
setTimeout(() => {
|
|
84
|
-
const element = document.getElementById(`${index}`);
|
|
85
|
-
element.scrollIntoView({ behavior: 'smooth' });
|
|
86
|
-
}, 100);
|
|
87
|
-
}
|
|
88
|
-
this.menuItems
|
|
89
|
-
.filter((menuItem) => JSON.stringify(menuItem) !== JSON.stringify(item) &&
|
|
90
|
-
!!menuItem?.expand)
|
|
91
|
-
?.map((menu) => {
|
|
92
|
-
this.closeMenuGroup(menu);
|
|
93
|
-
});
|
|
94
|
-
item.expand = item.url !== this.router.url ? true : item.expand;
|
|
95
|
-
}
|
|
96
|
-
toggleSubItem(item, siblings) {
|
|
97
|
-
siblings
|
|
98
|
-
.filter(({ url }) => url !== item.url)
|
|
99
|
-
.map((filtered) => (filtered.expand = false));
|
|
100
|
-
if (item.url !== this.router.url) {
|
|
101
|
-
item.expand = !item.expand;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
closeMenuGroup(item) {
|
|
105
|
-
item.expand = false;
|
|
106
|
-
item.subItems?.map((subItem) => (subItem.expand = false));
|
|
107
|
-
}
|
|
108
|
-
matchActiveItem(url) {
|
|
109
|
-
const matchedMenuItemFromRoute = matchMenuToUrl(url, this.menuItems);
|
|
110
|
-
if (matchedMenuItemFromRoute?.subItems?.length > 0) {
|
|
111
|
-
const matchedSubmenuItem = matchMenuToUrl(url, matchedMenuItemFromRoute.subItems);
|
|
112
|
-
this.menuItems
|
|
113
|
-
?.find((item) => item.url === matchedMenuItemFromRoute.url)
|
|
114
|
-
?.subItems.map((subItem) => {
|
|
115
|
-
subItem.expand = subItem?.url === matchedSubmenuItem?.url;
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsComponent, deps: [{ token: i1.UnsubscribeService }, { token: i2.MatIconRegistry }, { token: i3.DomSanitizer }, { token: i4.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
120
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsMenuItemsComponent, selector: "ecabs-menu-items", inputs: { menuItems: "menuItems", minimizeSidebar: "minimizeSidebar", truncateTo: "truncateTo" }, outputs: { toggleSidebar: "toggleSidebar" }, providers: [UnsubscribeService], usesOnChanges: true, ngImport: i0, template: "<ul>\r\n <li\r\n *ngFor=\"let item of menuItems; let i = index\"\r\n class=\"mb-2 hover:text-brand-dark cursor-pointer\"\r\n [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <a (click)=\"toggleItem(item, i)\" [id]=\"i\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n class=\"p-4 flex items-center h-max\"\r\n [ngClass]=\"item.expand ? 'text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <mat-icon [svgIcon]=\"item.iconResource?.name || ''\"\r\n class=\"inline-block align-middle mr-4 text-inherit hover:text-inherit\">\r\n {{ item.icon }}\r\n </mat-icon>\r\n <span *ngIf=\"!minimizeSidebar\"\r\n class=\"inline-block align-middle\">\r\n {{ item.title }}\r\n </span>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"firstChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n</ul>\r\n\r\n<ng-template #firstChildren let-subItems=\"subItems\">\r\n <ng-container *ngIf=\"!minimizeSidebar\">\r\n <ul class=\"ml-12\">\r\n <li *ngFor=\"let item of subItems\" [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\">\r\n <a #rla=\"routerLinkActive\"\r\n (click)=\"toggleSubItem(item, subItems)\"\r\n class=\"text-sm font-light p-4 h-12 rounded-md hover:text-brand-dark flex items-center\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n >\r\n <span [title]=\"item.title\">\r\n {{ item.title | truncate: truncateTo }}\r\n </span>\r\n <div *ngIf=\"item.subItems?.length > 0\" class=\"flex-1 text-right\">\r\n <mat-icon class=\"align-middle hover:text-inherit\" [ngClass]=\"{ 'rotate-90': item.expand }\">\r\n keyboard_arrow_right\r\n </mat-icon>\r\n </div>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"secondChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #secondChildren let-subItems=\"subItems\">\r\n <ul class=\"ml-3\">\r\n <li *ngFor=\"let item of subItems\">\r\n <a #rla=\"routerLinkActive\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n class=\"text-xs font-light block p-4 h-12 rounded-md hover:text-brand-dark\">\r\n <span>{{ item.title }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n</ng-template>\r\n", styles: [":host::ng-deep li.text-brand-dark svg path{fill:currentColor}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i4.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i6.EcabsTruncatePipe, name: "truncate" }] });
|
|
121
|
-
}
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsComponent, decorators: [{
|
|
123
|
-
type: Component,
|
|
124
|
-
args: [{ selector: 'ecabs-menu-items', providers: [UnsubscribeService], template: "<ul>\r\n <li\r\n *ngFor=\"let item of menuItems; let i = index\"\r\n class=\"mb-2 hover:text-brand-dark cursor-pointer\"\r\n [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <a (click)=\"toggleItem(item, i)\" [id]=\"i\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n class=\"p-4 flex items-center h-max\"\r\n [ngClass]=\"item.expand ? 'text-brand-dark' : 'text-gray-500'\"\r\n >\r\n <mat-icon [svgIcon]=\"item.iconResource?.name || ''\"\r\n class=\"inline-block align-middle mr-4 text-inherit hover:text-inherit\">\r\n {{ item.icon }}\r\n </mat-icon>\r\n <span *ngIf=\"!minimizeSidebar\"\r\n class=\"inline-block align-middle\">\r\n {{ item.title }}\r\n </span>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"firstChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n</ul>\r\n\r\n<ng-template #firstChildren let-subItems=\"subItems\">\r\n <ng-container *ngIf=\"!minimizeSidebar\">\r\n <ul class=\"ml-12\">\r\n <li *ngFor=\"let item of subItems\" [ngClass]=\"item.expand ? 'font-bold text-brand-dark' : 'text-gray-500'\">\r\n <a #rla=\"routerLinkActive\"\r\n (click)=\"toggleSubItem(item, subItems)\"\r\n class=\"text-sm font-light p-4 h-12 rounded-md hover:text-brand-dark flex items-center\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n >\r\n <span [title]=\"item.title\">\r\n {{ item.title | truncate: truncateTo }}\r\n </span>\r\n <div *ngIf=\"item.subItems?.length > 0\" class=\"flex-1 text-right\">\r\n <mat-icon class=\"align-middle hover:text-inherit\" [ngClass]=\"{ 'rotate-90': item.expand }\">\r\n keyboard_arrow_right\r\n </mat-icon>\r\n </div>\r\n </a>\r\n <ng-container *ngIf=\"item.expand && item.subItems?.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"secondChildren; context: item\"></ng-container>\r\n </ng-container>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #secondChildren let-subItems=\"subItems\">\r\n <ul class=\"ml-3\">\r\n <li *ngFor=\"let item of subItems\">\r\n <a #rla=\"routerLinkActive\"\r\n [ngClass]=\"item.expand && rla.isActive ? 'text-brand-dark' : 'text-gray-500'\"\r\n [routerLink]=\"item.url ? [item.url] : []\"\r\n [routerLinkActive]=\" item.url ? 'bg-brand-300 text-brand-dark' : ''\"\r\n class=\"text-xs font-light block p-4 h-12 rounded-md hover:text-brand-dark\">\r\n <span>{{ item.title }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n</ng-template>\r\n", styles: [":host::ng-deep li.text-brand-dark svg path{fill:currentColor}\n"] }]
|
|
125
|
-
}], ctorParameters: function () { return [{ type: i1.UnsubscribeService }, { type: i2.MatIconRegistry }, { type: i3.DomSanitizer }, { type: i4.Router }]; }, propDecorators: { menuItems: [{
|
|
126
|
-
type: Input
|
|
127
|
-
}], minimizeSidebar: [{
|
|
128
|
-
type: Input
|
|
129
|
-
}], truncateTo: [{
|
|
130
|
-
type: Input
|
|
131
|
-
}], toggleSidebar: [{
|
|
132
|
-
type: Output
|
|
133
|
-
}] } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbWVudS1pdGVtcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lY2Ficy1jb21wb25lbnRzL3NyYy9saWIvZWNhYnMtbWVudS1pdGVtcy9lY2Ficy1tZW51LWl0ZW1zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1tZW51LWl0ZW1zL2VjYWJzLW1lbnUtaXRlbXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGVBQWUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBRTFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7QUFRaEQsTUFBTSxPQUFPLHVCQUF1QjtJQWNmO0lBQ0E7SUFDQTtJQUNBO0lBZm5CLFNBQVMsQ0FBb0I7SUFHN0IsZUFBZSxDQUFVO0lBR3pCLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFHaEIsYUFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFFNUMsWUFDbUIsa0JBQXNDLEVBQ3RDLFlBQTZCLEVBQzdCLFNBQXVCLEVBQ3ZCLE1BQWM7UUFIZCx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLGlCQUFZLEdBQVosWUFBWSxDQUFpQjtRQUM3QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ3ZCLFdBQU0sR0FBTixNQUFNLENBQVE7SUFDOUIsQ0FBQztJQUVKLFdBQVcsQ0FBQyxP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Q0FBQztZQUVGLElBQUksQ0FBQyxTQUFTO2dCQUNaLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLHdCQUF3QixDQUFDLEdBQUcsQ0FBQztnQkFDM0QsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ3pCLE9BQU8sQ0FBQyxNQUFNLEdBQUcsT0FBTyxFQUFFLEdBQUcsS0FBSyxrQkFBa0IsRUFBRSxHQUFHLENBQUM7WUFDNUQsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNILENBQUM7d0dBL0pVLHVCQUF1Qjs0RkFBdkIsdUJBQXVCLDBMQUZ2QixDQUFDLGtCQUFrQixDQUFDLCtDQ3JCakMsKzZGQW1FQTs7NEZENUNhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSxrQkFBa0IsYUFHakIsQ0FBQyxrQkFBa0IsQ0FBQzt1TEFJL0IsU0FBUztzQkFEUixLQUFLO2dCQUlOLGVBQWU7c0JBRGQsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpZGViYXJNZW51SXRlbSB9IGZyb20gJy4uL2Jhc2UvbW9kZWxzL3NpZGViYXIubW9kZWxzJztcclxuaW1wb3J0IHsgbWF0Y2hNZW51VG9VcmwgfSBmcm9tICcuLi9iYXNlL3V0aWxzL21lbnUtdXRpbHMnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBNYXRJY29uUmVnaXN0cnkgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgVW5zdWJzY3JpYmVTZXJ2aWNlIH0gZnJvbSAnLi4vYmFzZS9zZXJ2aWNlcy91bnN1YnNjcmliZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLW1lbnUtaXRlbXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9lY2Ficy1tZW51LWl0ZW1zLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lY2Ficy1tZW51LWl0ZW1zLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbVW5zdWJzY3JpYmVTZXJ2aWNlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzTWVudUl0ZW1zQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpXHJcbiAgbWVudUl0ZW1zOiBTaWRlYmFyTWVudUl0ZW1bXTtcclxuXHJcbiAgQElucHV0KClcclxuICBtaW5pbWl6ZVNpZGViYXI6IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdHJ1bmNhdGVUbyA9IDIwO1xyXG5cclxuICBAT3V0cHV0KClcclxuICB0b2dnbGVTaWRlYmFyID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzY3JpYmVTZXJ2aWNlOiBVbnN1YnNjcmliZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGljb25SZWdpc3RyeTogTWF0SWNvblJlZ2lzdHJ5LFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IG1lbnVJdGVtcyB9ID0gY2hhbmdlcztcclxuXHJcbiAgICBpZiAobWVudUl0ZW1zPy5jdXJyZW50VmFsdWU/Lmxlbmd0aCkge1xyXG4gICAgICBjb25zdCBpdGVtc1dpdGhSZXNvdXJjZXMgPSB0aGlzLm1lbnVJdGVtcy5maWx0ZXIoXHJcbiAgICAgICAgKGl0ZW0pID0+ICEhaXRlbS5pY29uUmVzb3VyY2UsXHJcbiAgICAgICk7XHJcblxyXG4gICAgICBpdGVtc1dpdGhSZXNvdXJjZXM/Lm1hcCgoeyBpY29uUmVzb3VyY2UgfSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHsgbmFtZSwgcGF0aCB9ID0gaWNvblJlc291cmNlID8/IHt9O1xyXG5cclxuICAgICAgICB0aGlzLmljb25SZWdpc3RyeS5hZGRTdmdJY29uKFxyXG4gICAgICAgICAgbmFtZSxcclxuICAgICAgICAgIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChwYXRoKSxcclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMubWF0Y2hNZW51SXRlbXNPbkxvYWQoKTtcclxuICAgICAgdGhpcy50cmFja01lbnUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy51bnN1YnNjcmliZVNlcnZpY2UuZGVzdHJveSgpO1xyXG4gIH1cclxuXHJcbiAgbWF0Y2hNZW51SXRlbXNPbkxvYWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJvdXRlci5ldmVudHNcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlyc3QoKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZVNlcnZpY2Uuc3Vic2NyaXB0aW9uKCkpLFxyXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogTmF2aWdhdGlvblN0YXJ0KSA9PiB7XHJcbiAgICAgICAgY29uc3QgbWF0Y2hlZE1lbnVJdGVtRnJvbVJvdXRlOiBTaWRlYmFyTWVudUl0ZW0gPSBtYXRjaE1lbnVUb1VybChcclxuICAgICAgICAgIGV2ZW50LnVybCxcclxuICAgICAgICAgIHRoaXMubWVudUl0ZW1zLFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGlmIChtYXRjaGVkTWVudUl0ZW1Gcm9tUm91dGUpIHtcclxuICAgICAgICAgIGlmIChtYXRjaGVkTWVudUl0ZW1Gcm9tUm91dGU/LnN1Ykl0ZW1zPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZWRTdWJtZW51SXRlbSA9IG1hdGNoTWVudVRvVXJsKFxyXG4gICAgICAgICAgICAgIGV2ZW50LnVybCxcclxuICAgICAgICAgICAgICBtYXRjaGVkTWVudUl0ZW1Gcm9tUm91dGUuc3ViSXRlbXMsXHJcbiAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICBpZiAobWF0Y2hlZFN1Ym1lbnVJdGVtKSB7XHJcbiAgICAgICAgICAgICAgbWF0Y2hlZFN1Ym1lbnVJdGVtLmV4cGFuZCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aGlzLm1lbnVJdGVtc1xyXG4gICAgICAgICAgICAuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmV4cGFuZClcclxuICAgICAgICAgICAgPy5tYXAoKGl0ZW0pID0+IHRoaXMuY2xvc2VNZW51R3JvdXAoaXRlbSkpO1xyXG4gICAgICAgICAgY29uc3QgdG9FeHBhbmQgPSB0aGlzLm1lbnVJdGVtcy5maW5kKFxyXG4gICAgICAgICAgICAoaXRlbSkgPT5cclxuICAgICAgICAgICAgICBKU09OLnN0cmluZ2lmeShpdGVtKSA9PT1cclxuICAgICAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KG1hdGNoZWRNZW51SXRlbUZyb21Sb3V0ZSkgJiYgIWl0ZW0uZXhwYW5kLFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIHRvRXhwYW5kLmV4cGFuZCA9IHRoaXMubWluaW1pemVTaWRlYmFyID8gdHJ1ZSA6ICF0b0V4cGFuZC5leHBhbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHRyYWNrTWVudSgpOiB2b2lkIHtcclxuICAgIHRoaXMucm91dGVyLmV2ZW50c1xyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZVNlcnZpY2Uuc3Vic2NyaXB0aW9uKCkpLFxyXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogTmF2aWdhdGlvblN0YXJ0KSA9PiB7XHJcbiAgICAgICAgaWYgKCFtYXRjaE1lbnVUb1VybChldmVudC51cmwsIHRoaXMubWVudUl0ZW1zKSkge1xyXG4gICAgICAgICAgdGhpcy5tZW51SXRlbXNcclxuICAgICAgICAgICAgPy5maWx0ZXIoKGl0ZW0pID0+ICEhaXRlbS5leHBhbmQpXHJcbiAgICAgICAgICAgID8ubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5jbG9zZU1lbnVHcm91cChpdGVtKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubWF0Y2hBY3RpdmVJdGVtKGV2ZW50LnVybCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHRvZ2dsZUl0ZW0oaXRlbTogU2lkZWJhck1lbnVJdGVtLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5taW5pbWl6ZVNpZGViYXIpIHtcclxuICAgICAgdGhpcy50b2dnbGVTaWRlYmFyLmVtaXQoKTtcclxuXHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHtpbmRleH1gKTtcclxuICAgICAgICBlbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xyXG4gICAgICB9LCAxMDApO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubWVudUl0ZW1zXHJcbiAgICAgIC5maWx0ZXIoXHJcbiAgICAgICAgKG1lbnVJdGVtKSA9PlxyXG4gICAgICAgICAgSlNPTi5zdHJpbmdpZnkobWVudUl0ZW0pICE9PSBKU09OLnN0cmluZ2lmeShpdGVtKSAmJlxyXG4gICAgICAgICAgISFtZW51SXRlbT8uZXhwYW5kLFxyXG4gICAgICApXHJcbiAgICAgID8ubWFwKChtZW51KSA9PiB7XHJcbiAgICAgICAgdGhpcy5jbG9zZU1lbnVHcm91cChtZW51KTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgaXRlbS5leHBhbmQgPSBpdGVtLnVybCAhPT0gdGhpcy5yb3V0ZXIudXJsID8gdHJ1ZSA6IGl0ZW0uZXhwYW5kO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlU3ViSXRlbShpdGVtOiBTaWRlYmFyTWVudUl0ZW0sIHNpYmxpbmdzOiBTaWRlYmFyTWVudUl0ZW1bXSk6IHZvaWQge1xyXG4gICAgc2libGluZ3NcclxuICAgICAgLmZpbHRlcigoeyB1cmwgfSkgPT4gdXJsICE9PSBpdGVtLnVybClcclxuICAgICAgLm1hcCgoZmlsdGVyZWQpID0+IChmaWx0ZXJlZC5leHBhbmQgPSBmYWxzZSkpO1xyXG5cclxuICAgIGlmIChpdGVtLnVybCAhPT0gdGhpcy5yb3V0ZXIudXJsKSB7XHJcbiAgICAgIGl0ZW0uZXhwYW5kID0gIWl0ZW0uZXhwYW5kO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2VNZW51R3JvdXAoaXRlbTogU2lkZWJhck1lbnVJdGVtKTogdm9pZCB7XHJcbiAgICBpdGVtLmV4cGFuZCA9IGZhbHNlO1xyXG4gICAgaXRlbS5zdWJJdGVtcz8ubWFwKChzdWJJdGVtKSA9PiAoc3ViSXRlbS5leHBhbmQgPSBmYWxzZSkpO1xyXG4gIH1cclxuXHJcbiAgbWF0Y2hBY3RpdmVJdGVtKHVybDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBtYXRjaGVkTWVudUl0ZW1Gcm9tUm91dGU6IFNpZGViYXJNZW51SXRlbSA9IG1hdGNoTWVudVRvVXJsKFxyXG4gICAgICB1cmwsXHJcbiAgICAgIHRoaXMubWVudUl0ZW1zLFxyXG4gICAgKTtcclxuXHJcbiAgICBpZiAobWF0Y2hlZE1lbnVJdGVtRnJvbVJvdXRlPy5zdWJJdGVtcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICBjb25zdCBtYXRjaGVkU3VibWVudUl0ZW06IFNpZGViYXJNZW51SXRlbSA9IG1hdGNoTWVudVRvVXJsKFxyXG4gICAgICAgIHVybCxcclxuICAgICAgICBtYXRjaGVkTWVudUl0ZW1Gcm9tUm91dGUuc3ViSXRlbXMsXHJcbiAgICAgICk7XHJcblxyXG4gICAgICB0aGlzLm1lbnVJdGVtc1xyXG4gICAgICAgID8uZmluZCgoaXRlbSkgPT4gaXRlbS51cmwgPT09IG1hdGNoZWRNZW51SXRlbUZyb21Sb3V0ZS51cmwpXHJcbiAgICAgICAgPy5zdWJJdGVtcy5tYXAoKHN1Ykl0ZW0pID0+IHtcclxuICAgICAgICAgIHN1Ykl0ZW0uZXhwYW5kID0gc3ViSXRlbT8udXJsID09PSBtYXRjaGVkU3VibWVudUl0ZW0/LnVybDtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPHVsPlxyXG4gIDxsaVxyXG4gICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbWVudUl0ZW1zOyBsZXQgaSA9IGluZGV4XCJcclxuICAgIGNsYXNzPVwibWItMiBob3Zlcjp0ZXh0LWJyYW5kLWRhcmsgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgW25nQ2xhc3NdPVwiaXRlbS5leHBhbmQgPyAnZm9udC1ib2xkIHRleHQtYnJhbmQtZGFyaycgOiAndGV4dC1ncmF5LTUwMCdcIlxyXG4gID5cclxuICAgIDxhIChjbGljayk9XCJ0b2dnbGVJdGVtKGl0ZW0sIGkpXCIgW2lkXT1cImlcIlxyXG4gICAgICBbcm91dGVyTGlua109XCJpdGVtLnVybCA/IFtpdGVtLnVybF0gOiBbXVwiXHJcbiAgICAgIGNsYXNzPVwicC00IGZsZXggaXRlbXMtY2VudGVyIGgtbWF4XCJcclxuICAgICAgW25nQ2xhc3NdPVwiaXRlbS5leHBhbmQgPyAndGV4dC1icmFuZC1kYXJrJyA6ICd0ZXh0LWdyYXktNTAwJ1wiXHJcbiAgICA+XHJcbiAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpdGVtLmljb25SZXNvdXJjZT8ubmFtZSB8fCAnJ1wiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImlubGluZS1ibG9jayBhbGlnbi1taWRkbGUgbXItNCB0ZXh0LWluaGVyaXQgaG92ZXI6dGV4dC1pbmhlcml0XCI+XHJcbiAgICAgICAge3sgaXRlbS5pY29uIH19XHJcbiAgICAgIDwvbWF0LWljb24+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwiIW1pbmltaXplU2lkZWJhclwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiaW5saW5lLWJsb2NrIGFsaWduLW1pZGRsZVwiPlxyXG4gICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9hPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uZXhwYW5kICYmIGl0ZW0uc3ViSXRlbXM/Lmxlbmd0aCA+IDBcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZpcnN0Q2hpbGRyZW47IGNvbnRleHQ6IGl0ZW1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvbGk+XHJcbjwvdWw+XHJcblxyXG48bmctdGVtcGxhdGUgI2ZpcnN0Q2hpbGRyZW4gbGV0LXN1Ykl0ZW1zPVwic3ViSXRlbXNcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW1pbmltaXplU2lkZWJhclwiPlxyXG4gICAgPHVsIGNsYXNzPVwibWwtMTJcIj5cclxuICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHN1Ykl0ZW1zXCIgW25nQ2xhc3NdPVwiaXRlbS5leHBhbmQgPyAnZm9udC1ib2xkIHRleHQtYnJhbmQtZGFyaycgOiAndGV4dC1ncmF5LTUwMCdcIj5cclxuICAgICAgICA8YSAjcmxhPVwicm91dGVyTGlua0FjdGl2ZVwiXHJcbiAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVN1Ykl0ZW0oaXRlbSwgc3ViSXRlbXMpXCJcclxuICAgICAgICAgICBjbGFzcz1cInRleHQtc20gZm9udC1saWdodCBwLTQgaC0xMiByb3VuZGVkLW1kIGhvdmVyOnRleHQtYnJhbmQtZGFyayBmbGV4IGl0ZW1zLWNlbnRlclwiXHJcbiAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5leHBhbmQgJiYgcmxhLmlzQWN0aXZlID8gJ3RleHQtYnJhbmQtZGFyaycgOiAndGV4dC1ncmF5LTUwMCdcIlxyXG4gICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIml0ZW0udXJsID8gW2l0ZW0udXJsXSA6IFtdXCJcclxuICAgICAgICAgICBbcm91dGVyTGlua0FjdGl2ZV09XCIgaXRlbS51cmwgPyAnYmctYnJhbmQtMzAwIHRleHQtYnJhbmQtZGFyaycgOiAnJ1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4gW3RpdGxlXT1cIml0ZW0udGl0bGVcIj5cclxuICAgICAgICAgICAge3sgaXRlbS50aXRsZSB8IHRydW5jYXRlOiB0cnVuY2F0ZVRvIH19XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5zdWJJdGVtcz8ubGVuZ3RoID4gMFwiIGNsYXNzPVwiZmxleC0xIHRleHQtcmlnaHRcIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiYWxpZ24tbWlkZGxlIGhvdmVyOnRleHQtaW5oZXJpdFwiIFtuZ0NsYXNzXT1cInsgJ3JvdGF0ZS05MCc6IGl0ZW0uZXhwYW5kIH1cIj5cclxuICAgICAgICAgICAgICBrZXlib2FyZF9hcnJvd19yaWdodFxyXG4gICAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9hPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLmV4cGFuZCAmJiBpdGVtLnN1Ykl0ZW1zPy5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2Vjb25kQ2hpbGRyZW47IGNvbnRleHQ6IGl0ZW1cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI3NlY29uZENoaWxkcmVuIGxldC1zdWJJdGVtcz1cInN1Ykl0ZW1zXCI+XHJcbiAgPHVsIGNsYXNzPVwibWwtM1wiPlxyXG4gICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHN1Ykl0ZW1zXCI+XHJcbiAgICAgIDxhICNybGE9XCJyb3V0ZXJMaW5rQWN0aXZlXCJcclxuICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5leHBhbmQgJiYgcmxhLmlzQWN0aXZlID8gJ3RleHQtYnJhbmQtZGFyaycgOiAndGV4dC1ncmF5LTUwMCdcIlxyXG4gICAgICAgICBbcm91dGVyTGlua109XCJpdGVtLnVybCA/IFtpdGVtLnVybF0gOiBbXVwiXHJcbiAgICAgICAgIFtyb3V0ZXJMaW5rQWN0aXZlXT1cIiBpdGVtLnVybCA/ICdiZy1icmFuZC0zMDAgdGV4dC1icmFuZC1kYXJrJyA6ICcnXCJcclxuICAgICAgICAgY2xhc3M9XCJ0ZXh0LXhzIGZvbnQtbGlnaHQgYmxvY2sgcC00IGgtMTIgcm91bmRlZC1tZCBob3Zlcjp0ZXh0LWJyYW5kLWRhcmtcIj5cclxuICAgICAgICA8c3Bhbj57eyBpdGVtLnRpdGxlIH19PC9zcGFuPlxyXG4gICAgICA8L2E+XHJcbiAgICA8L2xpPlxyXG4gIDwvdWw+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { EcabsMenuItemsComponent } from './ecabs-menu-items.component';
|
|
4
|
-
import { RouterLink, RouterLinkActive } from '@angular/router';
|
|
5
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
-
import { EcabsPipesModule } from '../base/pipes/pipes.module';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class EcabsMenuItemsModule {
|
|
9
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsModule, declarations: [EcabsMenuItemsComponent], imports: [CommonModule,
|
|
11
|
-
RouterLink,
|
|
12
|
-
RouterLinkActive,
|
|
13
|
-
MatIconModule,
|
|
14
|
-
EcabsPipesModule], exports: [EcabsMenuItemsComponent] });
|
|
15
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsModule, imports: [CommonModule,
|
|
16
|
-
MatIconModule,
|
|
17
|
-
EcabsPipesModule] });
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMenuItemsModule, decorators: [{
|
|
20
|
-
type: NgModule,
|
|
21
|
-
args: [{
|
|
22
|
-
declarations: [EcabsMenuItemsComponent],
|
|
23
|
-
imports: [
|
|
24
|
-
CommonModule,
|
|
25
|
-
RouterLink,
|
|
26
|
-
RouterLinkActive,
|
|
27
|
-
MatIconModule,
|
|
28
|
-
EcabsPipesModule,
|
|
29
|
-
],
|
|
30
|
-
exports: [EcabsMenuItemsComponent],
|
|
31
|
-
}]
|
|
32
|
-
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbWVudS1pdGVtcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lY2Ficy1jb21wb25lbnRzL3NyYy9saWIvZWNhYnMtbWVudS1pdGVtcy9lY2Ficy1tZW51LWl0ZW1zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQWE5RCxNQUFNLE9BQU8sb0JBQW9CO3dHQUFwQixvQkFBb0I7eUdBQXBCLG9CQUFvQixpQkFWaEIsdUJBQXVCLGFBRXBDLFlBQVk7WUFDWixVQUFVO1lBQ1YsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixnQkFBZ0IsYUFFUix1QkFBdUI7eUdBRXRCLG9CQUFvQixZQVI3QixZQUFZO1lBR1osYUFBYTtZQUNiLGdCQUFnQjs7NEZBSVAsb0JBQW9CO2tCQVhoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUN2QyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixVQUFVO3dCQUNWLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixnQkFBZ0I7cUJBQ2pCO29CQUNELE9BQU8sRUFBRSxDQUFDLHVCQUF1QixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEVjYWJzTWVudUl0ZW1zQ29tcG9uZW50IH0gZnJvbSAnLi9lY2Ficy1tZW51LWl0ZW1zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJvdXRlckxpbmssIFJvdXRlckxpbmtBY3RpdmUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IEVjYWJzUGlwZXNNb2R1bGUgfSBmcm9tICcuLi9iYXNlL3BpcGVzL3BpcGVzLm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0VjYWJzTWVudUl0ZW1zQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSb3V0ZXJMaW5rLFxyXG4gICAgUm91dGVyTGlua0FjdGl2ZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBFY2Fic1BpcGVzTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW0VjYWJzTWVudUl0ZW1zQ29tcG9uZW50XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzTWVudUl0ZW1zTW9kdWxlIHt9XHJcbiJdfQ==
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR, NgControl, } from '@angular/forms';
|
|
3
|
-
import { takeUntil } from 'rxjs';
|
|
4
|
-
import { format, isValid } from 'date-fns';
|
|
5
|
-
import Holidays from 'date-holidays';
|
|
6
|
-
import EcabsElementBaseComponent from '../base/element-base';
|
|
7
|
-
import { UnsubscribeService } from '../base/services/unsubscribe.service';
|
|
8
|
-
import { EcabsDatePickerHeaderComponent } from '../../public-api';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "../base/services/ecabs-date-picker-translations.service";
|
|
11
|
-
import * as i2 from "../base/services/unsubscribe.service";
|
|
12
|
-
import * as i3 from "@angular/common";
|
|
13
|
-
import * as i4 from "../base/element-wrapper/element-wrapper.component";
|
|
14
|
-
import * as i5 from "@angular/material/icon";
|
|
15
|
-
import * as i6 from "@angular/material/datepicker";
|
|
16
|
-
import * as i7 from "@angular/material/chips";
|
|
17
|
-
import * as i8 from "@angular/material/form-field";
|
|
18
|
-
import * as i9 from "@angular/forms";
|
|
19
|
-
import * as i10 from "../ecabs-date-picker-actions/ecabs-date-picker-actions.component";
|
|
20
|
-
export class EcabsMultipleDatesPickerComponent extends EcabsElementBaseComponent {
|
|
21
|
-
injector;
|
|
22
|
-
ecabsDatePickerHeaderService;
|
|
23
|
-
unsubscribeService;
|
|
24
|
-
_picker;
|
|
25
|
-
minDate;
|
|
26
|
-
maxDate;
|
|
27
|
-
touchUi = false;
|
|
28
|
-
cancelLabel;
|
|
29
|
-
applyLabel;
|
|
30
|
-
excludeHolidays;
|
|
31
|
-
excludeWeekends;
|
|
32
|
-
holidayOptions;
|
|
33
|
-
modelChange = new EventEmitter();
|
|
34
|
-
val;
|
|
35
|
-
header = EcabsDatePickerHeaderComponent;
|
|
36
|
-
translationConfig;
|
|
37
|
-
CLOSE_ON_SELECTED = false;
|
|
38
|
-
init = new Date();
|
|
39
|
-
resetModel = new Date();
|
|
40
|
-
model = [];
|
|
41
|
-
get value() {
|
|
42
|
-
return this.val;
|
|
43
|
-
}
|
|
44
|
-
set value(val) {
|
|
45
|
-
if (val && this.val !== val) {
|
|
46
|
-
this.val = val;
|
|
47
|
-
this.onChange(val);
|
|
48
|
-
this.onTouch(val);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
constructor(injector, ecabsDatePickerHeaderService, unsubscribeService) {
|
|
52
|
-
super();
|
|
53
|
-
this.injector = injector;
|
|
54
|
-
this.ecabsDatePickerHeaderService = ecabsDatePickerHeaderService;
|
|
55
|
-
this.unsubscribeService = unsubscribeService;
|
|
56
|
-
}
|
|
57
|
-
ngOnInit() {
|
|
58
|
-
this.ecabsDatePickerHeaderService
|
|
59
|
-
.getConfig()
|
|
60
|
-
.pipe(takeUntil(this.unsubscribeService.subscription()))
|
|
61
|
-
.subscribe((config) => (this.translationConfig = config));
|
|
62
|
-
}
|
|
63
|
-
ngAfterViewInit() {
|
|
64
|
-
const ngControl = this.injector.get(NgControl, null);
|
|
65
|
-
if (ngControl) {
|
|
66
|
-
this.control = ngControl.control;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
dateClass = (date) => {
|
|
70
|
-
if (this._findDate(date) !== -1) {
|
|
71
|
-
return ['selected'];
|
|
72
|
-
}
|
|
73
|
-
return [];
|
|
74
|
-
};
|
|
75
|
-
dateChanged(event) {
|
|
76
|
-
if (event.value) {
|
|
77
|
-
const date = event.value;
|
|
78
|
-
const index = this._findDate(date);
|
|
79
|
-
if (index === -1) {
|
|
80
|
-
this.model.push(date);
|
|
81
|
-
this.modelChange.emit(this.model);
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
this.model.splice(index, 1);
|
|
85
|
-
this.modelChange.emit(this.model);
|
|
86
|
-
}
|
|
87
|
-
this.resetModel = new Date();
|
|
88
|
-
if (!this.CLOSE_ON_SELECTED) {
|
|
89
|
-
const closeFn = this._picker.close;
|
|
90
|
-
this._picker.close = () => { };
|
|
91
|
-
this._picker['_popupComponentRef']?.instance._calendar.monthView._createWeekCells();
|
|
92
|
-
setTimeout(() => {
|
|
93
|
-
this._picker.close = closeFn;
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
remove(date) {
|
|
99
|
-
const index = this._findDate(date);
|
|
100
|
-
this.model.splice(index, 1);
|
|
101
|
-
this.modelChange.emit(this.model);
|
|
102
|
-
}
|
|
103
|
-
onChange = () => { };
|
|
104
|
-
onTouch = () => { };
|
|
105
|
-
writeValue(value) {
|
|
106
|
-
this.value = value;
|
|
107
|
-
}
|
|
108
|
-
registerOnChange(fn) {
|
|
109
|
-
this.onChange = fn;
|
|
110
|
-
}
|
|
111
|
-
registerOnTouched(fn) {
|
|
112
|
-
this.onTouch = fn;
|
|
113
|
-
}
|
|
114
|
-
isDateNotHoliday(date) {
|
|
115
|
-
const { countryCode, timeZoneOffset } = this.holidayOptions ?? {};
|
|
116
|
-
if (countryCode && timeZoneOffset) {
|
|
117
|
-
const holiday = new Holidays(countryCode.toUpperCase());
|
|
118
|
-
return !holiday.isHoliday(`${format(date, 'yyyy-MM-dd')}T00:00:00${timeZoneOffset}`);
|
|
119
|
-
}
|
|
120
|
-
return true;
|
|
121
|
-
}
|
|
122
|
-
filterDateRange = (date) => {
|
|
123
|
-
let result = true;
|
|
124
|
-
if (isValid(new Date(date))) {
|
|
125
|
-
const day = date?.getDay();
|
|
126
|
-
if (this.excludeWeekends) {
|
|
127
|
-
result = result && day !== 0 && day !== 6;
|
|
128
|
-
}
|
|
129
|
-
if (this.excludeHolidays) {
|
|
130
|
-
result = result && this.isDateNotHoliday(date);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
return result;
|
|
134
|
-
};
|
|
135
|
-
_findDate(date) {
|
|
136
|
-
return this.model.map((m) => +m).indexOf(+date);
|
|
137
|
-
}
|
|
138
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMultipleDatesPickerComponent, deps: [{ token: i0.Injector }, { token: i1.EcabsDatePickerHeaderService }, { token: i2.UnsubscribeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
139
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsMultipleDatesPickerComponent, selector: "ecabs-multiple-dates-picker", inputs: { minDate: "minDate", maxDate: "maxDate", touchUi: "touchUi", cancelLabel: "cancelLabel", applyLabel: "applyLabel", excludeHolidays: "excludeHolidays", excludeWeekends: "excludeWeekends", holidayOptions: "holidayOptions" }, outputs: { modelChange: "modelChange" }, providers: [
|
|
140
|
-
{
|
|
141
|
-
provide: NG_VALUE_ACCESSOR,
|
|
142
|
-
useExisting: EcabsMultipleDatesPickerComponent,
|
|
143
|
-
multi: true,
|
|
144
|
-
},
|
|
145
|
-
UnsubscribeService,
|
|
146
|
-
], viewQueries: [{ propertyName: "_picker", first: true, predicate: ["picker"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <mat-chip-grid\r\n #chipList aria-label=\"Choose a date\"\r\n (click)=\"picker.open()\"\r\n class=\"w-full\"\r\n >\r\n <mat-chip-option\r\n class=\"form-field__input\"\r\n *ngFor=\"let value of model\"\r\n [selectable]=\"false\" [removable]=\"true\"\r\n (removed)=\"remove(value)\"\r\n >\r\n {{ value | date: 'dd/MM/yyyy' }}\r\n <mat-icon matChipRemove *ngIf=\"true\">cancel</mat-icon>\r\n </mat-chip-option>\r\n <input\r\n class=\"form-field__input fake-input\"\r\n [value]=\"resetModel\"\r\n [(ngModel)]=\"value\"\r\n [matDatepicker]=\"picker\"\r\n placeholder=\"Select dates\"\r\n (dateChange)=\"dateChanged($event)\"\r\n [matChipInputFor]=\"chipList\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n [matDatepickerFilter]=\"filterDateRange\"\r\n />\r\n </mat-chip-grid>\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\">\r\n <mat-icon matDatepickerToggleIcon>calendar_today</mat-icon>\r\n </mat-datepicker-toggle>\r\n <mat-datepicker\r\n #picker\r\n [calendarHeaderComponent]=\"header\"\r\n [touchUi]=\"touchUi\"\r\n [dateClass]=\"dateClass\"\r\n >\r\n <mat-datepicker-actions>\r\n <ecabs-date-picker-actions\r\n [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n >\r\n </ecabs-date-picker-actions>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host ::ng-deep .mat-chip-list-wrapper{padding:5px}:host ::ng-deep .mat-chip-list-wrapper .mat-standard-chip{margin:0 5px 0 0}:host ::ng-deep .fake-input{visibility:hidden;width:0;padding:0;margin:0}:host ::ng-deep .form-field__input--wrapper{border:1px solid var(--color-gray-500);padding:5px;align-items:center;background:#fff;border-radius:.25rem}::ng-deep .mat-calendar-body-cell.selected>.mat-calendar-body-cell-content,::ng-deep .mat-calendar-body-cell.selected:hover>.mat-calendar-body-cell-content,::ng-deep .mat-calendar-body-cell.selected>.mat-calendar-body-cell-content:hover{background-color:#673ab7!important;color:#fff!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i6.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "component", type: i6.MatDatepickerActions, selector: "mat-datepicker-actions, mat-date-range-picker-actions" }, { kind: "component", type: i7.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i7.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "component", type: i7.MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["color", "disabled", "disableRipple", "tabIndex", "selectable", "selected"], outputs: ["selectionChange"] }, { kind: "directive", type: i7.MatChipRemove, selector: "[matChipRemove]" }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i10.EcabsDatePickerActionsComponent, selector: "ecabs-date-picker-actions", inputs: ["cancelLabel", "applyLabel"], outputs: ["apply"] }, { kind: "pipe", type: i3.DatePipe, name: "date" }] });
|
|
147
|
-
}
|
|
148
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMultipleDatesPickerComponent, decorators: [{
|
|
149
|
-
type: Component,
|
|
150
|
-
args: [{ selector: 'ecabs-multiple-dates-picker', providers: [
|
|
151
|
-
{
|
|
152
|
-
provide: NG_VALUE_ACCESSOR,
|
|
153
|
-
useExisting: EcabsMultipleDatesPickerComponent,
|
|
154
|
-
multi: true,
|
|
155
|
-
},
|
|
156
|
-
UnsubscribeService,
|
|
157
|
-
], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper w-full\">\r\n <mat-chip-grid\r\n #chipList aria-label=\"Choose a date\"\r\n (click)=\"picker.open()\"\r\n class=\"w-full\"\r\n >\r\n <mat-chip-option\r\n class=\"form-field__input\"\r\n *ngFor=\"let value of model\"\r\n [selectable]=\"false\" [removable]=\"true\"\r\n (removed)=\"remove(value)\"\r\n >\r\n {{ value | date: 'dd/MM/yyyy' }}\r\n <mat-icon matChipRemove *ngIf=\"true\">cancel</mat-icon>\r\n </mat-chip-option>\r\n <input\r\n class=\"form-field__input fake-input\"\r\n [value]=\"resetModel\"\r\n [(ngModel)]=\"value\"\r\n [matDatepicker]=\"picker\"\r\n placeholder=\"Select dates\"\r\n (dateChange)=\"dateChanged($event)\"\r\n [matChipInputFor]=\"chipList\"\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n [matDatepickerFilter]=\"filterDateRange\"\r\n />\r\n </mat-chip-grid>\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\">\r\n <mat-icon matDatepickerToggleIcon>calendar_today</mat-icon>\r\n </mat-datepicker-toggle>\r\n <mat-datepicker\r\n #picker\r\n [calendarHeaderComponent]=\"header\"\r\n [touchUi]=\"touchUi\"\r\n [dateClass]=\"dateClass\"\r\n >\r\n <mat-datepicker-actions>\r\n <ecabs-date-picker-actions\r\n [applyLabel]=\"applyLabel ?? translationConfig?.applyLabel\"\r\n [cancelLabel]=\"cancelLabel ?? translationConfig?.cancelLabel\"\r\n >\r\n </ecabs-date-picker-actions>\r\n </mat-datepicker-actions>\r\n </mat-datepicker>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host ::ng-deep .mat-chip-list-wrapper{padding:5px}:host ::ng-deep .mat-chip-list-wrapper .mat-standard-chip{margin:0 5px 0 0}:host ::ng-deep .fake-input{visibility:hidden;width:0;padding:0;margin:0}:host ::ng-deep .form-field__input--wrapper{border:1px solid var(--color-gray-500);padding:5px;align-items:center;background:#fff;border-radius:.25rem}::ng-deep .mat-calendar-body-cell.selected>.mat-calendar-body-cell-content,::ng-deep .mat-calendar-body-cell.selected:hover>.mat-calendar-body-cell-content,::ng-deep .mat-calendar-body-cell.selected>.mat-calendar-body-cell-content:hover{background-color:#673ab7!important;color:#fff!important}\n"] }]
|
|
158
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.EcabsDatePickerHeaderService }, { type: i2.UnsubscribeService }]; }, propDecorators: { _picker: [{
|
|
159
|
-
type: ViewChild,
|
|
160
|
-
args: ['picker', { static: true }]
|
|
161
|
-
}], minDate: [{
|
|
162
|
-
type: Input
|
|
163
|
-
}], maxDate: [{
|
|
164
|
-
type: Input
|
|
165
|
-
}], touchUi: [{
|
|
166
|
-
type: Input
|
|
167
|
-
}], cancelLabel: [{
|
|
168
|
-
type: Input
|
|
169
|
-
}], applyLabel: [{
|
|
170
|
-
type: Input
|
|
171
|
-
}], excludeHolidays: [{
|
|
172
|
-
type: Input
|
|
173
|
-
}], excludeWeekends: [{
|
|
174
|
-
type: Input
|
|
175
|
-
}], holidayOptions: [{
|
|
176
|
-
type: Input
|
|
177
|
-
}], modelChange: [{
|
|
178
|
-
type: Output
|
|
179
|
-
}] } });
|
|
180
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbXVsdGlwbGUtZGF0ZXMtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1tdWx0aXBsZS1kYXRlcy1waWNrZXIvZWNhYnMtbXVsdGlwbGUtZGF0ZXMtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1tdWx0aXBsZS1kYXRlcy1waWNrZXIvZWNhYnMtbXVsdGlwbGUtZGF0ZXMtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUVaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTCxpQkFBaUIsRUFDakIsU0FBUyxHQUVWLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMzQyxPQUFPLFFBQVEsTUFBTSxlQUFlLENBQUM7QUFPckMsT0FBTyx5QkFBeUIsTUFBTSxzQkFBc0IsQ0FBQztBQU83RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUxRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7Ozs7O0FBZWxFLE1BQU0sT0FBTyxpQ0FDWCxTQUFRLHlCQUF5QjtJQXNDZDtJQUNBO0lBQ0E7SUFyQ29CLE9BQU8sQ0FBc0I7SUFFM0QsT0FBTyxDQUFPO0lBQ2QsT0FBTyxDQUFPO0lBQ2QsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNoQixXQUFXLENBQVM7SUFDcEIsVUFB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QUNELGtCQUFrQjtTQUNuQixrS0NqREgsNHNEQWdEQTs7NEZER2EsaUNBQWlDO2tCQWI3QyxTQUFTOytCQUNFLDZCQUE2QixhQUc1Qjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLG1DQUFtQzs0QkFDOUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Qsa0JBQWtCO3FCQUNuQjsyS0FNc0MsT0FBTztzQkFBN0MsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUU1QixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxyXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gIE5nQ29udHJvbCxcclxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBmb3JtYXQsIGlzVmFsaWQgfSBmcm9tICdkYXRlLWZucyc7XHJcbmltcG9ydCBIb2xpZGF5cyBmcm9tICdkYXRlLWhvbGlkYXlzJztcclxuXHJcbmltcG9ydCB7XHJcbiAgTWF0RGF0ZXBpY2tlcixcclxuICBNYXREYXRlcGlja2VySW5wdXRFdmVudCxcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcclxuXHJcbmltcG9ydCBFY2Fic0VsZW1lbnRCYXNlQ29tcG9uZW50IGZyb20gJy4uL2Jhc2UvZWxlbWVudC1iYXNlJztcclxuaW1wb3J0IHtcclxuICBFY2Fic0RhdGVQaWNrZXJIb2xpZGF5T3B0aW9ucyxcclxuICBFY2Fic0RhdGVQaWNrZXJUcmFuc2xhdGlvbnMsXHJcbn0gZnJvbSAnLi4vYmFzZS9tb2RlbHMvZWNhYnMtZGF0ZS1waWNrZXItdHJhbnNsYXRpb25zLm1vZGVscyc7XHJcblxyXG5pbXBvcnQgeyBFY2Fic0RhdGVQaWNrZXJIZWFkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vYmFzZS9zZXJ2aWNlcy9lY2Ficy1kYXRlLXBpY2tlci10cmFuc2xhdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IFVuc3Vic2NyaWJlU2VydmljZSB9IGZyb20gJy4uL2Jhc2Uvc2VydmljZXMvdW5zdWJzY3JpYmUuc2VydmljZSc7XHJcblxyXG5pbXBvcnQgeyBFY2Fic0RhdGVQaWNrZXJIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9wdWJsaWMtYXBpJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWNhYnMtbXVsdGlwbGUtZGF0ZXMtcGlja2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtbXVsdGlwbGUtZGF0ZXMtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lY2Ficy1tdWx0aXBsZS1kYXRlcy1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBFY2Fic011bHRpcGxlRGF0ZXNQaWNrZXJDb21wb25lbnQsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICAgIFVuc3Vic2NyaWJlU2VydmljZSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNNdWx0aXBsZURhdGVzUGlja2VyQ29tcG9uZW50XHJcbiAgZXh0ZW5kcyBFY2Fic0VsZW1lbnRCYXNlQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0XHJcbntcclxuICBAVmlld0NoaWxkKCdwaWNrZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBfcGlja2VyOiBNYXREYXRlcGlja2VyPERhdGU+O1xyXG5cclxuICBASW5wdXQoKSBtaW5EYXRlOiBEYXRlO1xyXG4gIEBJbnB1dCgpIG1heERhdGU6IERhdGU7XHJcbiAgQElucHV0KCkgdG91Y2hVaSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGNhbmNlbExhYmVsOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgYXBwbHlMYWJlbDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGV4Y2x1ZGVIb2xpZGF5czogYm9vbGVhbjtcclxuICBASW5wdXQoKSBleGNsdWRlV2Vla2VuZHM6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaG9saWRheU9wdGlvbnM6IEVjYWJzRGF0ZVBpY2tlckhvbGlkYXlPcHRpb25zO1xyXG5cclxuICBAT3V0cHV0KCkgbW9kZWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPERhdGVbXT4oKTtcclxuXHJcbiAgdmFsOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgaGVhZGVyID0gRWNhYnNEYXRlUGlja2VySGVhZGVyQ29tcG9uZW50O1xyXG4gIHRyYW5zbGF0aW9uQ29uZmlnOiBFY2Fic0RhdGVQaWNrZXJUcmFuc2xhdGlvbnM7XHJcblxyXG4gIHB1YmxpYyBDTE9TRV9PTl9TRUxFQ1RFRCA9IGZhbHNlO1xyXG4gIHB1YmxpYyBpbml0ID0gbmV3IERhdGUoKTtcclxuICBwdWJsaWMgcmVzZXRNb2RlbCA9IG5ldyBEYXRlKCk7XHJcbiAgcHVibGljIG1vZGVsID0gW107XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsO1xyXG4gIH1cclxuXHJcbiAgc2V0IHZhbHVlKHZhbDogc3RyaW5nIHwgbnVtYmVyKSB7XHJcbiAgICBpZiAodmFsICYmIHRoaXMudmFsICE9PSB2YWwpIHtcclxuICAgICAgdGhpcy52YWwgPSB2YWw7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UodmFsKTtcclxuICAgICAgdGhpcy5vblRvdWNoKHZhbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBlY2Fic0RhdGVQaWNrZXJIZWFkZXJTZXJ2aWNlOiBFY2Fic0RhdGVQaWNrZXJIZWFkZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZVNlcnZpY2U6IFVuc3Vic2NyaWJlU2VydmljZSxcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZWNhYnNEYXRlUGlja2VySGVhZGVyU2VydmljZVxyXG4gICAgICAuZ2V0Q29uZmlnKClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmVTZXJ2aWNlLnN1YnNjcmlwdGlvbigpKSlcclxuICAgICAgLnN1YnNjcmliZSgoY29uZmlnKSA9PiAodGhpcy50cmFuc2xhdGlvbkNvbmZpZyA9IGNvbmZpZykpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgbmdDb250cm9sOiBOZ0NvbnRyb2wgPSB0aGlzLmluamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwpO1xyXG4gICAgaWYgKG5nQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2wgPSBuZ0NvbnRyb2wuY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGF0ZUNsYXNzID0gKGRhdGU6IERhdGUpOiBzdHJpbmdbXSA9PiB7XHJcbiAgICBpZiAodGhpcy5fZmluZERhdGUoZGF0ZSkgIT09IC0xKSB7XHJcbiAgICAgIHJldHVybiBbJ3NlbGVjdGVkJ107XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIFtdO1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBkYXRlQ2hhbmdlZChldmVudDogTWF0RGF0ZXBpY2tlcklucHV0RXZlbnQ8RGF0ZT4pOiB2b2lkIHtcclxuICAgIGlmIChldmVudC52YWx1ZSkge1xyXG4gICAgICBjb25zdCBkYXRlID0gZXZlbnQudmFsdWU7XHJcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmluZERhdGUoZGF0ZSk7XHJcbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcclxuICAgICAgICB0aGlzLm1vZGVsLnB1c2goZGF0ZSk7XHJcbiAgICAgICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHRoaXMubW9kZWwpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubW9kZWwuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5yZXNldE1vZGVsID0gbmV3IERhdGUoKTtcclxuICAgICAgaWYgKCF0aGlzLkNMT1NFX09OX1NFTEVDVEVEKSB7XHJcbiAgICAgICAgY29uc3QgY2xvc2VGbiA9IHRoaXMuX3BpY2tlci5jbG9zZTtcclxuICAgICAgICB0aGlzLl9waWNrZXIuY2xvc2UgPSAoKTogYW55ID0+IHt9O1xyXG4gICAgICAgIHRoaXMuX3BpY2tlcltcclxuICAgICAgICAgICdfcG9wdXBDb21wb25lbnRSZWYnXHJcbiAgICAgICAgXT8uaW5zdGFuY2UuX2NhbGVuZGFyLm1vbnRoVmlldy5fY3JlYXRlV2Vla0NlbGxzKCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9waWNrZXIuY2xvc2UgPSBjbG9zZUZuO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVtb3ZlKGRhdGU6IERhdGUpOiB2b2lkIHtcclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fZmluZERhdGUoZGF0ZSk7XHJcbiAgICB0aGlzLm1vZGVsLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbCk7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XHJcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcclxuICB9XHJcblxyXG4gIGlzRGF0ZU5vdEhvbGlkYXkoZGF0ZTogRGF0ZSk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgeyBjb3VudHJ5Q29kZSwgdGltZVpvbmVPZmZzZXQgfSA9IHRoaXMuaG9saWRheU9wdGlvbnMgPz8ge307XHJcblxyXG4gICAgaWYgKGNvdW50cnlDb2RlICYmIHRpbWVab25lT2Zmc2V0KSB7XHJcbiAgICAgIGNvbnN0IGhvbGlkYXkgPSBuZXcgSG9saWRheXMoY291bnRyeUNvZGUudG9VcHBlckNhc2UoKSk7XHJcblxyXG4gICAgICByZXR1cm4gIWhvbGlkYXkuaXNIb2xpZGF5KFxyXG4gICAgICAgIGAke2Zvcm1hdChkYXRlLCAneXl5eS1NTS1kZCcpfVQwMDowMDowMCR7dGltZVpvbmVPZmZzZXR9YCxcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGZpbHRlckRhdGVSYW5nZSA9IChkYXRlOiBEYXRlKTogYm9vbGVhbiA9PiB7XHJcbiAgICBsZXQgcmVzdWx0ID0gdHJ1ZTtcclxuXHJcbiAgICBpZiAoaXNWYWxpZChuZXcgRGF0ZShkYXRlKSkpIHtcclxuICAgICAgY29uc3QgZGF5ID0gZGF0ZT8uZ2V0RGF5KCk7XHJcblxyXG4gICAgICBpZiAodGhpcy5leGNsdWRlV2Vla2VuZHMpIHtcclxuICAgICAgICByZXN1bHQgPSByZXN1bHQgJiYgZGF5ICE9PSAwICYmIGRheSAhPT0gNjtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHRoaXMuZXhjbHVkZUhvbGlkYXlzKSB7XHJcbiAgICAgICAgcmVzdWx0ID0gcmVzdWx0ICYmIHRoaXMuaXNEYXRlTm90SG9saWRheShkYXRlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBfZmluZERhdGUoZGF0ZTogRGF0ZSk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5tb2RlbC5tYXAoKG0pID0+ICttKS5pbmRleE9mKCtkYXRlKTtcclxuICB9XHJcbn1cclxuIiwiPGVjYWJzLWVsZW1lbnQtd3JhcHBlciBbZGF0YV09XCJnZXREYXRhKClcIj5cclxuICA8ZGl2IGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXQtLXdyYXBwZXIgdy1mdWxsXCI+XHJcbiAgICA8bWF0LWNoaXAtZ3JpZFxyXG4gICAgICAjY2hpcExpc3QgYXJpYS1sYWJlbD1cIkNob29zZSBhIGRhdGVcIlxyXG4gICAgICAoY2xpY2spPVwicGlja2VyLm9wZW4oKVwiXHJcbiAgICAgIGNsYXNzPVwidy1mdWxsXCJcclxuICAgID5cclxuICAgICAgPG1hdC1jaGlwLW9wdGlvblxyXG4gICAgICAgIGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXRcIlxyXG4gICAgICAgICpuZ0Zvcj1cImxldCB2YWx1ZSBvZiBtb2RlbFwiXHJcbiAgICAgICAgW3NlbGVjdGFibGVdPVwiZmFsc2VcIiBbcmVtb3ZhYmxlXT1cInRydWVcIlxyXG4gICAgICAgIChyZW1vdmVkKT1cInJlbW92ZSh2YWx1ZSlcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgdmFsdWUgfCBkYXRlOiAnZGQvTU0veXl5eScgfX1cclxuICAgICAgICA8bWF0LWljb24gbWF0Q2hpcFJlbW92ZSAqbmdJZj1cInRydWVcIj5jYW5jZWw8L21hdC1pY29uPlxyXG4gICAgICA8L21hdC1jaGlwLW9wdGlvbj5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWZpZWxkX19pbnB1dCBmYWtlLWlucHV0XCJcclxuICAgICAgICBbdmFsdWVdPVwicmVzZXRNb2RlbFwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICAgICAgW21hdERhdGVwaWNrZXJdPVwicGlja2VyXCJcclxuICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBkYXRlc1wiXHJcbiAgICAgICAgKGRhdGVDaGFuZ2UpPVwiZGF0ZUNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgW21hdENoaXBJbnB1dEZvcl09XCJjaGlwTGlzdFwiXHJcbiAgICAgICAgW21pbl09XCJtaW5EYXRlXCJcclxuICAgICAgICBbbWF4XT1cIm1heERhdGVcIlxyXG4gICAgICAgIFttYXREYXRlcGlja2VyRmlsdGVyXT1cImZpbHRlckRhdGVSYW5nZVwiXHJcbiAgICAgIC8+XHJcbiAgICA8L21hdC1jaGlwLWdyaWQ+XHJcbiAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cInBpY2tlclwiPlxyXG4gICAgICA8bWF0LWljb24gbWF0RGF0ZXBpY2tlclRvZ2dsZUljb24+Y2FsZW5kYXJfdG9kYXk8L21hdC1pY29uPlxyXG4gICAgPC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XHJcbiAgICA8bWF0LWRhdGVwaWNrZXJcclxuICAgICAgI3BpY2tlclxyXG4gICAgICBbY2FsZW5kYXJIZWFkZXJDb21wb25lbnRdPVwiaGVhZGVyXCJcclxuICAgICAgW3RvdWNoVWldPVwidG91Y2hVaVwiXHJcbiAgICAgIFtkYXRlQ2xhc3NdPVwiZGF0ZUNsYXNzXCJcclxuICAgID5cclxuICAgICAgPG1hdC1kYXRlcGlja2VyLWFjdGlvbnM+XHJcbiAgICAgICAgPGVjYWJzLWRhdGUtcGlja2VyLWFjdGlvbnNcclxuICAgICAgICAgIFthcHBseUxhYmVsXT1cImFwcGx5TGFiZWwgPz8gdHJhbnNsYXRpb25Db25maWc/LmFwcGx5TGFiZWxcIlxyXG4gICAgICAgICAgW2NhbmNlbExhYmVsXT1cImNhbmNlbExhYmVsID8/IHRyYW5zbGF0aW9uQ29uZmlnPy5jYW5jZWxMYWJlbFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvZWNhYnMtZGF0ZS1waWNrZXItYWN0aW9ucz5cclxuICAgICAgPC9tYXQtZGF0ZXBpY2tlci1hY3Rpb25zPlxyXG4gICAgPC9tYXQtZGF0ZXBpY2tlcj5cclxuICA8L2Rpdj5cclxuPC9lY2Ficy1lbGVtZW50LXdyYXBwZXI+XHJcbiJdfQ==
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
5
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
-
import { MatChipsModule } from '@angular/material/chips';
|
|
7
|
-
import { ElementWrapperModule } from '../base/element-wrapper/element-wrapper.module';
|
|
8
|
-
import { EcabsPickerHeaderModule } from '../ecabs-picker-header/ecabs-picker-header.module';
|
|
9
|
-
import { EcabsDatePickerActionsModule } from '../ecabs-date-picker-actions/ecabs-date-picker-actions.module';
|
|
10
|
-
import { EcabsMultipleDatesPickerComponent } from './ecabs-multiple-dates-picker.component';
|
|
11
|
-
import { MatInputModule } from '@angular/material/input';
|
|
12
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
export class EcabsMultipleDatesPickerModule {
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMultipleDatesPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
16
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsMultipleDatesPickerModule, declarations: [EcabsMultipleDatesPickerComponent], imports: [CommonModule,
|
|
17
|
-
ElementWrapperModule,
|
|
18
|
-
MatIconModule,
|
|
19
|
-
MatDatepickerModule,
|
|
20
|
-
MatChipsModule,
|
|
21
|
-
MatButtonModule,
|
|
22
|
-
MatInputModule,
|
|
23
|
-
FormsModule,
|
|
24
|
-
ReactiveFormsModule,
|
|
25
|
-
EcabsPickerHeaderModule,
|
|
26
|
-
EcabsDatePickerActionsModule], exports: [EcabsMultipleDatesPickerComponent] });
|
|
27
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMultipleDatesPickerModule, imports: [CommonModule,
|
|
28
|
-
ElementWrapperModule,
|
|
29
|
-
MatIconModule,
|
|
30
|
-
MatDatepickerModule,
|
|
31
|
-
MatChipsModule,
|
|
32
|
-
MatButtonModule,
|
|
33
|
-
MatInputModule,
|
|
34
|
-
FormsModule,
|
|
35
|
-
ReactiveFormsModule,
|
|
36
|
-
EcabsPickerHeaderModule,
|
|
37
|
-
EcabsDatePickerActionsModule] });
|
|
38
|
-
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsMultipleDatesPickerModule, decorators: [{
|
|
40
|
-
type: NgModule,
|
|
41
|
-
args: [{
|
|
42
|
-
declarations: [EcabsMultipleDatesPickerComponent],
|
|
43
|
-
imports: [
|
|
44
|
-
CommonModule,
|
|
45
|
-
ElementWrapperModule,
|
|
46
|
-
MatIconModule,
|
|
47
|
-
MatDatepickerModule,
|
|
48
|
-
MatChipsModule,
|
|
49
|
-
MatButtonModule,
|
|
50
|
-
MatInputModule,
|
|
51
|
-
FormsModule,
|
|
52
|
-
ReactiveFormsModule,
|
|
53
|
-
EcabsPickerHeaderModule,
|
|
54
|
-
EcabsDatePickerActionsModule,
|
|
55
|
-
],
|
|
56
|
-
exports: [EcabsMultipleDatesPickerComponent],
|
|
57
|
-
}]
|
|
58
|
-
}] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbXVsdGlwbGUtZGF0ZXMtcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1tdWx0aXBsZS1kYXRlcy1waWNrZXIvZWNhYnMtbXVsdGlwbGUtZGF0ZXMtcGlja2VyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUU3RyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM1RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQW1CM0QsTUFBTSxPQUFPLDhCQUE4Qjt3R0FBOUIsOEJBQThCO3lHQUE5Qiw4QkFBOEIsaUJBaEIxQixpQ0FBaUMsYUFFOUMsWUFBWTtZQUNaLG9CQUFvQjtZQUNwQixhQUFhO1lBQ2IsbUJBQW1CO1lBQ25CLGNBQWM7WUFDZCxlQUFlO1lBQ2YsY0FBYztZQUNkLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLDRCQUE0QixhQUVwQixpQ0FBaUM7eUdBRWhDLDhCQUE4QixZQWR2QyxZQUFZO1lBQ1osb0JBQW9CO1lBQ3BCLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsY0FBYztZQUNkLGVBQWU7WUFDZixjQUFjO1lBQ2QsV0FBVztZQUNYLG1CQUFtQjtZQUNuQix1QkFBdUI7WUFDdkIsNEJBQTRCOzs0RkFJbkIsOEJBQThCO2tCQWpCMUMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztvQkFDakQsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsNEJBQTRCO3FCQUM3QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztpQkFDN0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdENoaXBzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xyXG5cclxuaW1wb3J0IHsgRWxlbWVudFdyYXBwZXJNb2R1bGUgfSBmcm9tICcuLi9iYXNlL2VsZW1lbnQtd3JhcHBlci9lbGVtZW50LXdyYXBwZXIubW9kdWxlJztcclxuaW1wb3J0IHsgRWNhYnNQaWNrZXJIZWFkZXJNb2R1bGUgfSBmcm9tICcuLi9lY2Ficy1waWNrZXItaGVhZGVyL2VjYWJzLXBpY2tlci1oZWFkZXIubW9kdWxlJztcclxuaW1wb3J0IHsgRWNhYnNEYXRlUGlja2VyQWN0aW9uc01vZHVsZSB9IGZyb20gJy4uL2VjYWJzLWRhdGUtcGlja2VyLWFjdGlvbnMvZWNhYnMtZGF0ZS1waWNrZXItYWN0aW9ucy5tb2R1bGUnO1xyXG5cclxuaW1wb3J0IHsgRWNhYnNNdWx0aXBsZURhdGVzUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9lY2Ficy1tdWx0aXBsZS1kYXRlcy1waWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0VjYWJzTXVsdGlwbGVEYXRlc1BpY2tlckNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRWxlbWVudFdyYXBwZXJNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcclxuICAgIE1hdENoaXBzTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBFY2Fic1BpY2tlckhlYWRlck1vZHVsZSxcclxuICAgIEVjYWJzRGF0ZVBpY2tlckFjdGlvbnNNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbRWNhYnNNdWx0aXBsZURhdGVzUGlja2VyQ29tcG9uZW50XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzTXVsdGlwbGVEYXRlc1BpY2tlck1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "@angular/material/icon";
|
|
5
|
-
export class EcabsNoteComponent {
|
|
6
|
-
type = 'default';
|
|
7
|
-
get classByType() {
|
|
8
|
-
switch (this.type) {
|
|
9
|
-
case 'warn':
|
|
10
|
-
return 'note--warn';
|
|
11
|
-
case 'danger':
|
|
12
|
-
return 'note--danger';
|
|
13
|
-
case 'success':
|
|
14
|
-
return 'note--success';
|
|
15
|
-
default:
|
|
16
|
-
return 'note--default';
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNoteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsNoteComponent, selector: "ecabs-note", inputs: { type: "type" }, ngImport: i0, template: "<ng-container>\r\n <div class=\"flex flex-row px-2 py-4 note items-center\" [ngClass]=\"classByType\">\r\n <div class=\"flex ml-2\">\r\n <mat-icon>info_outline</mat-icon>\r\n </div>\r\n <div class=\"ml-4 w-full\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}.note{border-radius:.25rem}.note .mat-icon{color:inherit}.note--danger{color:var(--color-error);background-color:var(--color-error-opacity)}.note--warn{background-color:var(--color-warning-opacity);color:var(--color-warn)}.note--success{background-color:rgba(var(--color-success-rgb),.06);color:var(--color-success)}.note--default{background-color:rgba(var(--color-info-rgb),.06);color:var(--color-info)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
21
|
-
}
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNoteComponent, decorators: [{
|
|
23
|
-
type: Component,
|
|
24
|
-
args: [{ selector: 'ecabs-note', template: "<ng-container>\r\n <div class=\"flex flex-row px-2 py-4 note items-center\" [ngClass]=\"classByType\">\r\n <div class=\"flex ml-2\">\r\n <mat-icon>info_outline</mat-icon>\r\n </div>\r\n <div class=\"ml-4 w-full\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}.note{border-radius:.25rem}.note .mat-icon{color:inherit}.note--danger{color:var(--color-error);background-color:var(--color-error-opacity)}.note--warn{background-color:var(--color-warning-opacity);color:var(--color-warn)}.note--success{background-color:rgba(var(--color-success-rgb),.06);color:var(--color-success)}.note--default{background-color:rgba(var(--color-info-rgb),.06);color:var(--color-info)}\n"] }]
|
|
25
|
-
}], propDecorators: { type: [{
|
|
26
|
-
type: Input
|
|
27
|
-
}] } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbm90ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lY2Ficy1jb21wb25lbnRzL3NyYy9saWIvZWNhYnMtbm90ZS9lY2Ficy1ub3RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1ub3RlL2VjYWJzLW5vdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFPakQsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixJQUFJLEdBQThDLFNBQVMsQ0FBQztJQUU1RCxJQUFJLFdBQVc7UUFDYixRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDakIsS0FBSyxNQUFNO2dCQUNULE9BQU8sWUFBWSxDQUFDO1lBRXRCLEtBQUssUUFBUTtnQkFDWCxPQUFPLGNBQWMsQ0FBQztZQUV4QixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxlQUFlLENBQUM7WUFFekI7Z0JBQ0UsT0FBTyxlQUFlLENBQUM7U0FDMUI7SUFDSCxDQUFDO3dHQWxCVSxrQkFBa0I7NEZBQWxCLGtCQUFrQiw0RUNQL0IsMFRBVUE7OzRGREhhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZOzhCQU10QixJQUFJO3NCQURILEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLW5vdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9lY2Ficy1ub3RlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lY2Ficy1ub3RlLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic05vdGVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpXHJcbiAgdHlwZTogJ2RlZmF1bHQnIHwgJ2RhbmdlcicgfCAnd2FybicgfCAnc3VjY2VzcycgPSAnZGVmYXVsdCc7XHJcblxyXG4gIGdldCBjbGFzc0J5VHlwZSgpOiBzdHJpbmcge1xyXG4gICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcclxuICAgICAgY2FzZSAnd2Fybic6XHJcbiAgICAgICAgcmV0dXJuICdub3RlLS13YXJuJztcclxuXHJcbiAgICAgIGNhc2UgJ2Rhbmdlcic6XHJcbiAgICAgICAgcmV0dXJuICdub3RlLS1kYW5nZXInO1xyXG5cclxuICAgICAgY2FzZSAnc3VjY2Vzcyc6XHJcbiAgICAgICAgcmV0dXJuICdub3RlLS1zdWNjZXNzJztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICdub3RlLS1kZWZhdWx0JztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lcj5cclxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBweC0yIHB5LTQgbm90ZSBpdGVtcy1jZW50ZXJcIiBbbmdDbGFzc109XCJjbGFzc0J5VHlwZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggbWwtMlwiPlxyXG4gICAgICA8bWF0LWljb24+aW5mb19vdXRsaW5lPC9tYXQtaWNvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1sLTQgdy1mdWxsXCI+XHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
4
|
-
import { EcabsNoteComponent } from './ecabs-note.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class EcabsNoteModule {
|
|
7
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: EcabsNoteModule, declarations: [EcabsNoteComponent], imports: [CommonModule, MatIconModule], exports: [EcabsNoteComponent] });
|
|
9
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNoteModule, imports: [CommonModule, MatIconModule] });
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsNoteModule, decorators: [{
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
declarations: [EcabsNoteComponent],
|
|
15
|
-
imports: [CommonModule, MatIconModule],
|
|
16
|
-
exports: [EcabsNoteComponent],
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbm90ZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lY2Ficy1jb21wb25lbnRzL3NyYy9saWIvZWNhYnMtbm90ZS9lY2Ficy1ub3RlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBTzVELE1BQU0sT0FBTyxlQUFlO3dHQUFmLGVBQWU7eUdBQWYsZUFBZSxpQkFKWCxrQkFBa0IsYUFDdkIsWUFBWSxFQUFFLGFBQWEsYUFDM0Isa0JBQWtCO3lHQUVqQixlQUFlLFlBSGhCLFlBQVksRUFBRSxhQUFhOzs0RkFHMUIsZUFBZTtrQkFMM0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDbEMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBFY2Fic05vdGVDb21wb25lbnQgfSBmcm9tICcuL2VjYWJzLW5vdGUuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRWNhYnNOb3RlQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRJY29uTW9kdWxlXSxcclxuICBleHBvcnRzOiBbRWNhYnNOb3RlQ29tcG9uZW50XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzTm90ZU1vZHVsZSB7fVxyXG4iXX0=
|