@wlcm/angular 17.4.0 → 17.5.2
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/core/esm2022/index.mjs +12 -0
- package/core/esm2022/lib/constants/_index.mjs +3 -0
- package/core/esm2022/lib/directives/_index.mjs +2 -0
- package/core/esm2022/lib/directives/icon.directive.mjs +49 -0
- package/core/esm2022/lib/models/_index.mjs +5 -0
- package/{dist/core → core}/fesm2022/wlcm-angular-core.mjs +42 -37
- package/core/fesm2022/wlcm-angular-core.mjs.map +1 -0
- package/core/index.d.ts +7 -0
- package/core/lib/constants/_index.d.ts +2 -0
- package/core/lib/directives/_index.d.ts +1 -0
- package/{dist/core → core}/lib/directives/icon.directive.d.ts +2 -1
- package/core/lib/models/_index.d.ts +4 -0
- package/datepicker/README.md +7 -0
- package/datepicker/esm2022/index.mjs +10 -0
- package/datepicker/esm2022/lib/components/range/date-range-calendar-header/date-range-calendar-header.component.mjs +54 -0
- package/datepicker/esm2022/lib/components/range/date-range-picker/date-range-picker.component.mjs +170 -0
- package/{dist/date-range-picker/esm2022/lib/components → datepicker/esm2022/lib/components/range}/date-range-picker-bottom-panel/date-range-picker-bottom-panel.component.mjs +1 -1
- package/datepicker/esm2022/lib/components/range/date-range-picker-input/date-range-picker-input.component.mjs +122 -0
- package/datepicker/esm2022/lib/components/single/datepicker-input-container/datepicker-input-container.component.mjs +88 -0
- package/datepicker/esm2022/lib/components/single/datepicker-panel/datepicker-panel.component.mjs +27 -0
- package/datepicker/esm2022/lib/constants/datepicker.constants.mjs +20 -0
- package/datepicker/esm2022/lib/constants/range/date-range-picker.constants.mjs +3 -0
- package/datepicker/esm2022/lib/constants/range/date-range-selection-model.constants.mjs +10 -0
- package/datepicker/esm2022/lib/constants/range/date-range-trigger-selection-model.constants.mjs +10 -0
- package/datepicker/esm2022/lib/datepicker.module.mjs +33 -0
- package/datepicker/esm2022/lib/directives/datepicker-input.base.mjs +80 -0
- package/datepicker/esm2022/lib/directives/datepicker-trigger.base.mjs +80 -0
- package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input-end.directive.mjs +77 -0
- package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input-start.directive.mjs +77 -0
- package/datepicker/esm2022/lib/directives/ragne/date-range-picker-input.base.mjs +49 -0
- package/datepicker/esm2022/lib/directives/ragne/left-calendar.directive.mjs +46 -0
- package/datepicker/esm2022/lib/directives/ragne/right-calendar.directive.mjs +59 -0
- package/datepicker/esm2022/lib/directives/single/datepicker-input.directive.mjs +67 -0
- package/datepicker/esm2022/lib/models/date-picker.models.mjs +27 -0
- package/datepicker/esm2022/lib/models/range/data-range-calendar.models.mjs +43 -0
- package/datepicker/esm2022/lib/models/range/date-range-picker.models.mjs +2 -0
- package/datepicker/esm2022/lib/models/range/date-range-validation.models.mjs +5 -0
- package/datepicker/esm2022/lib/utils/range/date-range-input.validators.mjs +16 -0
- package/datepicker/esm2022/lib/utils/range/date-range-picker-errors.mjs +9 -0
- package/datepicker/esm2022/wlcm-angular-datepicker.mjs +5 -0
- package/{dist/date-range-picker/fesm2022/wlcm-angular-date-range-picker.mjs → datepicker/fesm2022/wlcm-angular-datepicker.mjs} +761 -572
- package/datepicker/fesm2022/wlcm-angular-datepicker.mjs.map +1 -0
- package/datepicker/index.d.ts +9 -0
- package/datepicker/lib/components/range/date-range-calendar-header/date-range-calendar-header.component.d.ts +18 -0
- package/{dist/date-range-picker/lib/components → datepicker/lib/components/range}/date-range-picker/date-range-picker.component.d.ts +8 -7
- package/{dist/date-range-picker/lib/components → datepicker/lib/components/range}/date-range-picker-input/date-range-picker-input.component.d.ts +4 -3
- package/datepicker/lib/components/single/datepicker-input-container/datepicker-input-container.component.d.ts +30 -0
- package/datepicker/lib/components/single/datepicker-panel/datepicker-panel.component.d.ts +13 -0
- package/datepicker/lib/constants/datepicker.constants.d.ts +4 -0
- package/datepicker/lib/constants/range/date-range-picker.constants.d.ts +3 -0
- package/datepicker/lib/datepicker.module.d.ts +12 -0
- package/{dist/date-range-picker/lib/directives/date-range-picker-input-base.directive.d.ts → datepicker/lib/directives/datepicker-input.base.d.ts} +12 -15
- package/datepicker/lib/directives/datepicker-trigger.base.d.ts +26 -0
- package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/date-range-picker-input-end.directive.d.ts +5 -3
- package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/date-range-picker-input-start.directive.d.ts +5 -3
- package/datepicker/lib/directives/ragne/date-range-picker-input.base.d.ts +20 -0
- package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/left-calendar.directive.d.ts +1 -1
- package/{dist/date-range-picker/lib/directives → datepicker/lib/directives/ragne}/right-calendar.directive.d.ts +1 -1
- package/datepicker/lib/directives/single/datepicker-input.directive.d.ts +21 -0
- package/datepicker/lib/models/date-picker.models.d.ts +10 -0
- package/datepicker/lib/models/range/date-range-picker.models.d.ts +4 -0
- package/datepicker/lib/models/range/date-range-validation.models.d.ts +3 -0
- package/{dist/forms → forms}/esm2022/lib/forms/components/select/select.component.mjs +3 -3
- package/{dist/forms → forms}/fesm2022/wlcm-angular-forms.mjs +2 -2
- package/forms/fesm2022/wlcm-angular-forms.mjs.map +1 -0
- package/package.json +7 -60
- package/phone-input/esm2022/lib/directives/phone-input.directive.mjs +125 -0
- package/{dist/phone-input → phone-input}/fesm2022/wlcm-angular-phone-input.mjs +1 -0
- package/phone-input/fesm2022/wlcm-angular-phone-input.mjs.map +1 -0
- package/shared/calendar/esm2022/index.mjs +4 -0
- package/shared/calendar/esm2022/lib/calendar.module.mjs +21 -0
- package/shared/calendar/esm2022/lib/components/calendar-header/calendar-header.component.mjs +107 -0
- package/shared/calendar/esm2022/lib/directives/calendar.directive.mjs +15 -0
- package/shared/calendar/esm2022/wlcm-angular-calendar.mjs +5 -0
- package/shared/calendar/index.d.ts +3 -0
- package/shared/calendar/lib/calendar.module.d.ts +9 -0
- package/shared/calendar/lib/components/calendar-header/calendar-header.component.d.ts +22 -0
- package/shared/calendar/lib/directives/calendar.directive.d.ts +5 -0
- package/{dist/stepper → stepper}/esm2022/lib/components/step-header/step-header.component.mjs +3 -1
- package/{dist/stepper → stepper}/fesm2022/wlcm-angular-stepper.mjs +2 -0
- package/stepper/fesm2022/wlcm-angular-stepper.mjs.map +1 -0
- package/{dist/styles/components/date-range-picker/_date-range-picker-body.scss → styles/components/calendar/_calendar.scss} +2 -9
- package/styles/components/calendar/index.scss +7 -0
- package/styles/components/date-range-picker/_date-range-picker-body.scss +13 -0
- package/{dist/styles → styles}/components/date-range-picker/index.scss +0 -2
- package/styles/components/datepicker/_datepicker-input-container.scss +11 -0
- package/styles/components/datepicker/_datepicker-panel.scss +15 -0
- package/styles/components/datepicker/index.scss +7 -0
- package/{dist/styles → styles}/core/_all-theme.scss +7 -3
- package/dist/README.md +0 -62
- package/dist/button/.npmignore +0 -2
- package/dist/core/.npmignore +0 -2
- package/dist/core/esm2022/index.mjs +0 -13
- package/dist/core/esm2022/lib/directives/icon.directive.mjs +0 -44
- package/dist/core/fesm2022/wlcm-angular-core.mjs.map +0 -1
- package/dist/core/index.d.ts +0 -11
- package/dist/date-range-picker/.npmignore +0 -2
- package/dist/date-range-picker/README.md +0 -7
- package/dist/date-range-picker/esm2022/index.mjs +0 -7
- package/dist/date-range-picker/esm2022/lib/components/calendar-header/calendar-header.component.mjs +0 -62
- package/dist/date-range-picker/esm2022/lib/components/date-range-picker/date-range-picker.component.mjs +0 -157
- package/dist/date-range-picker/esm2022/lib/components/date-range-picker-input/date-range-picker-input.component.mjs +0 -122
- package/dist/date-range-picker/esm2022/lib/constants/date-range-selection-model.constants.mjs +0 -10
- package/dist/date-range-picker/esm2022/lib/constants/date-range-trigger-selection-model.constants.mjs +0 -10
- package/dist/date-range-picker/esm2022/lib/date-range-picker.module.mjs +0 -67
- package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-input-base.directive.mjs +0 -93
- package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-input-end.directive.mjs +0 -65
- package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-input-start.directive.mjs +0 -65
- package/dist/date-range-picker/esm2022/lib/directives/date-range-picker-trigger.directive.mjs +0 -80
- package/dist/date-range-picker/esm2022/lib/directives/left-calendar.directive.mjs +0 -46
- package/dist/date-range-picker/esm2022/lib/directives/right-calendar.directive.mjs +0 -59
- package/dist/date-range-picker/esm2022/lib/models/data-range-calendar.models.mjs +0 -43
- package/dist/date-range-picker/esm2022/lib/models/date-range-validation.models.mjs +0 -5
- package/dist/date-range-picker/esm2022/lib/services/date-adapter.service.mjs +0 -23
- package/dist/date-range-picker/esm2022/lib/utils/date-range-input.validators.mjs +0 -16
- package/dist/date-range-picker/esm2022/lib/utils/date-range-picker-errors.mjs +0 -9
- package/dist/date-range-picker/esm2022/wlcm-angular-date-range-picker.mjs +0 -5
- package/dist/date-range-picker/fesm2022/wlcm-angular-date-range-picker.mjs.map +0 -1
- package/dist/date-range-picker/index.d.ts +0 -6
- package/dist/date-range-picker/lib/components/calendar-header/calendar-header.component.d.ts +0 -19
- package/dist/date-range-picker/lib/date-range-picker.module.d.ts +0 -12
- package/dist/date-range-picker/lib/directives/date-range-picker-trigger.directive.d.ts +0 -26
- package/dist/date-range-picker/lib/models/date-range-validation.models.d.ts +0 -3
- package/dist/date-range-picker/lib/services/date-adapter.service.d.ts +0 -7
- package/dist/filters/.npmignore +0 -2
- package/dist/forms/.npmignore +0 -2
- package/dist/forms/fesm2022/wlcm-angular-forms.mjs.map +0 -1
- package/dist/package.json +0 -92
- package/dist/phone-input/.npmignore +0 -2
- package/dist/phone-input/esm2022/lib/directives/phone-input.directive.mjs +0 -124
- package/dist/phone-input/fesm2022/wlcm-angular-phone-input.mjs.map +0 -1
- package/dist/search-field/.npmignore +0 -2
- package/dist/stepper/.npmignore +0 -2
- package/dist/stepper/fesm2022/wlcm-angular-stepper.mjs.map +0 -1
- /package/{dist/button → button}/README.md +0 -0
- /package/{dist/button → button}/esm2022/index.mjs +0 -0
- /package/{dist/button → button}/esm2022/lib/button.module.mjs +0 -0
- /package/{dist/button → button}/esm2022/lib/components/button/button.component.mjs +0 -0
- /package/{dist/button → button}/esm2022/lib/models/button.models.mjs +0 -0
- /package/{dist/button → button}/esm2022/wlcm-angular-button.mjs +0 -0
- /package/{dist/button → button}/fesm2022/wlcm-angular-button.mjs +0 -0
- /package/{dist/button → button}/fesm2022/wlcm-angular-button.mjs.map +0 -0
- /package/{dist/button → button}/index.d.ts +0 -0
- /package/{dist/button → button}/lib/button.module.d.ts +0 -0
- /package/{dist/button → button}/lib/components/button/button.component.d.ts +0 -0
- /package/{dist/button → button}/lib/models/button.models.d.ts +0 -0
- /package/{dist/core → core}/README.md +0 -0
- /package/{dist/core → core}/esm2022/lib/components/calendar-icon/calendar-icon.component.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/components/chevron-down-icon/chevron-down-icon.component.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/components/close-icon/close-icon.component.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/components/search-icon/search-icon.component.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/constants/http.constants.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/constants/icon.contants.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/models/icon.models.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/models/option.models.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/models/paginated-data.models.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/models/query-params.models.mjs +0 -0
- /package/{dist/core → core}/esm2022/lib/utils/stream.utils.mjs +0 -0
- /package/{dist/core → core}/esm2022/wlcm-angular-core.mjs +0 -0
- /package/{dist/core → core}/lib/components/calendar-icon/calendar-icon.component.d.ts +0 -0
- /package/{dist/core → core}/lib/components/chevron-down-icon/chevron-down-icon.component.d.ts +0 -0
- /package/{dist/core → core}/lib/components/close-icon/close-icon.component.d.ts +0 -0
- /package/{dist/core → core}/lib/components/search-icon/search-icon.component.d.ts +0 -0
- /package/{dist/core → core}/lib/constants/http.constants.d.ts +0 -0
- /package/{dist/core → core}/lib/constants/icon.contants.d.ts +0 -0
- /package/{dist/core → core}/lib/models/icon.models.d.ts +0 -0
- /package/{dist/core → core}/lib/models/option.models.d.ts +0 -0
- /package/{dist/core → core}/lib/models/paginated-data.models.d.ts +0 -0
- /package/{dist/core → core}/lib/models/query-params.models.d.ts +0 -0
- /package/{dist/core → core}/lib/utils/stream.utils.d.ts +0 -0
- /package/{dist/date-range-picker/lib/components → datepicker/lib/components/range}/date-range-picker-bottom-panel/date-range-picker-bottom-panel.component.d.ts +0 -0
- /package/{dist/date-range-picker/lib/constants → datepicker/lib/constants/range}/date-range-selection-model.constants.d.ts +0 -0
- /package/{dist/date-range-picker/lib/constants → datepicker/lib/constants/range}/date-range-trigger-selection-model.constants.d.ts +0 -0
- /package/{dist/date-range-picker/lib/models → datepicker/lib/models/range}/data-range-calendar.models.d.ts +0 -0
- /package/{dist/date-range-picker/lib/utils → datepicker/lib/utils/range}/date-range-input.validators.d.ts +0 -0
- /package/{dist/date-range-picker/lib/utils → datepicker/lib/utils/range}/date-range-picker-errors.d.ts +0 -0
- /package/{dist/filters → filters}/README.md +0 -0
- /package/{dist/filters → filters}/esm2022/index.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/components/filters/filters.component.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/components/filters-button/filters-button.component.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/components/filters-panel/filters-panel.component.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/components/filters-unit/filters-unit.component.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/directives/filters-content.directive.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/directives/filters-trigger.directive.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/filters.module.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/models/filters-default-selection-model.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/models/filters-trigger.base.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/models/filters.models.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/pipes/is-filters-param-checked.pipe.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/pipes/total-filters-applied.pipe.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/lib/filters/utils/filters.utils.mjs +0 -0
- /package/{dist/filters → filters}/esm2022/wlcm-angular-filters.mjs +0 -0
- /package/{dist/filters → filters}/fesm2022/wlcm-angular-filters.mjs +0 -0
- /package/{dist/filters → filters}/fesm2022/wlcm-angular-filters.mjs.map +0 -0
- /package/{dist/filters → filters}/index.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/components/filters/filters.component.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/components/filters-button/filters-button.component.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/components/filters-panel/filters-panel.component.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/components/filters-unit/filters-unit.component.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/directives/filters-content.directive.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/directives/filters-trigger.directive.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/filters.module.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/models/filters-default-selection-model.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/models/filters-trigger.base.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/models/filters.models.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/pipes/is-filters-param-checked.pipe.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/pipes/total-filters-applied.pipe.d.ts +0 -0
- /package/{dist/filters → filters}/lib/filters/utils/filters.utils.d.ts +0 -0
- /package/{dist/forms → forms}/README.md +0 -0
- /package/{dist/forms → forms}/esm2022/index.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/components/autocomplete/autocomplete.component.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/components/checkbox/checkbox.component.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/components/error/error.component.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/components/form-field/form-field.component.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/components/index.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/components/label/label.component.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-elements.constants.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-errors.constants.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-field.constants.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/constants/form-state-handlers.constants.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/constants/index.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/ac-input-binder.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/autocomplete.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-custom-container.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-hint.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-prefix.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/form-field-suffix.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/input.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/directives/select-input-binder.directive.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/forms.module.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/models/_index.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/models/form-errors.models.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/models/form.models.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/models/input.models.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/pipes/errors-mapper.pipe.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/services/form-state-handler.service.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/lib/forms/services/index.mjs +0 -0
- /package/{dist/forms → forms}/esm2022/wlcm-angular-forms.mjs +0 -0
- /package/{dist/forms → forms}/index.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/components/autocomplete/autocomplete.component.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/components/checkbox/checkbox.component.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/components/error/error.component.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/components/form-field/form-field.component.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/components/index.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/components/label/label.component.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/components/select/select.component.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/constants/form-elements.constants.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/constants/form-errors.constants.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/constants/form-field.constants.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/constants/form-state-handlers.constants.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/constants/index.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/ac-input-binder.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/autocomplete.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/form-field-custom-container.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/form-field-hint.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/form-field-prefix.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/form-field-suffix.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/input.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/directives/select-input-binder.directive.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/forms.module.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/models/_index.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/models/form-errors.models.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/models/form.models.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/models/input.models.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/pipes/errors-mapper.pipe.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/services/form-state-handler.service.d.ts +0 -0
- /package/{dist/forms → forms}/lib/forms/services/index.d.ts +0 -0
- /package/{dist/index.d.ts → index.d.ts} +0 -0
- /package/{dist/index.mjs → index.mjs} +0 -0
- /package/{dist/phone-input → phone-input}/README.md +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/index.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/components/country-code-select/country-code-select.component.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/components/phone-input-container/phone-input-container.component.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/constants/country-code-options.constants.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/constants/phone-adapter.constants.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/models/country-code.models.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/models/phone-adapter.models.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/models/phone.models.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/phone-input.module.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/lib/pipes/phone-code.pipe.mjs +0 -0
- /package/{dist/phone-input → phone-input}/esm2022/wlcm-angular-phone-input.mjs +0 -0
- /package/{dist/phone-input → phone-input}/index.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/components/country-code-select/country-code-select.component.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/components/phone-input-container/phone-input-container.component.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/constants/country-code-options.constants.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/constants/phone-adapter.constants.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/directives/phone-input.directive.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/models/country-code.models.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/models/phone-adapter.models.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/models/phone.models.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/phone-input.module.d.ts +0 -0
- /package/{dist/phone-input → phone-input}/lib/pipes/phone-code.pipe.d.ts +0 -0
- /package/{dist/search-field → search-field}/README.md +0 -0
- /package/{dist/search-field → search-field}/esm2022/index.mjs +0 -0
- /package/{dist/search-field → search-field}/esm2022/lib/components/search-field/search-field.component.mjs +0 -0
- /package/{dist/search-field → search-field}/esm2022/lib/search-field.module.mjs +0 -0
- /package/{dist/search-field → search-field}/esm2022/wlcm-angular-search-field.mjs +0 -0
- /package/{dist/search-field → search-field}/fesm2022/wlcm-angular-search-field.mjs +0 -0
- /package/{dist/search-field → search-field}/fesm2022/wlcm-angular-search-field.mjs.map +0 -0
- /package/{dist/search-field → search-field}/index.d.ts +0 -0
- /package/{dist/search-field → search-field}/lib/components/search-field/search-field.component.d.ts +0 -0
- /package/{dist/search-field → search-field}/lib/search-field.module.d.ts +0 -0
- /package/{dist/stepper → stepper}/README.md +0 -0
- /package/{dist/stepper → stepper}/esm2022/index.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/components/step/step.component.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/components/stepper/stepper.component.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/components/stepper-header/stepper-header.component.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/constants/step.constants.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/constants/stepper.stepper.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/directives/load-on-active-step.directive.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/models/step.models.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/models/stepper.models.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/lib/stepper.module.mjs +0 -0
- /package/{dist/stepper → stepper}/esm2022/wlcm-angular-stepper.mjs +0 -0
- /package/{dist/stepper → stepper}/index.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/components/step/step.component.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/components/step-header/step-header.component.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/components/stepper/stepper.component.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/components/stepper-header/stepper-header.component.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/constants/step.constants.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/constants/stepper.stepper.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/directives/load-on-active-step.directive.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/models/step.models.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/models/stepper.models.d.ts +0 -0
- /package/{dist/stepper → stepper}/lib/stepper.module.d.ts +0 -0
- /package/{dist/styles → styles}/components/button/index.scss +0 -0
- /package/{dist/styles/components/date-range-picker/_date-range-picker-header.scss → styles/components/calendar/_calendar-header.scss} +0 -0
- /package/{dist/styles → styles}/components/common/index.scss +0 -0
- /package/{dist/styles → styles}/components/date-range-picker/_date-range-picker-input.scss +0 -0
- /package/{dist/styles → styles}/components/date-range-picker/_date-range-picker-panel.scss +0 -0
- /package/{dist/styles → styles}/components/filters/_filters-panel.scss +0 -0
- /package/{dist/styles → styles}/components/filters/_filters-unit.scss +0 -0
- /package/{dist/styles → styles}/components/filters/index.scss +0 -0
- /package/{dist/styles → styles}/components/forms/_autocomplete.scss +0 -0
- /package/{dist/styles → styles}/components/forms/_checkbox.scss +0 -0
- /package/{dist/styles → styles}/components/forms/_error.scss +0 -0
- /package/{dist/styles → styles}/components/forms/_form-field.scss +0 -0
- /package/{dist/styles → styles}/components/forms/_label.scss +0 -0
- /package/{dist/styles → styles}/components/forms/_radio.scss +0 -0
- /package/{dist/styles → styles}/components/forms/_select.scss +0 -0
- /package/{dist/styles → styles}/components/forms/index.scss +0 -0
- /package/{dist/styles → styles}/components/phone-input/_country-code-select.scss +0 -0
- /package/{dist/styles → styles}/components/phone-input/_phone-input-container.scss +0 -0
- /package/{dist/styles/components/phone-input/indes.scss → styles/components/phone-input/index.scss} +0 -0
- /package/{dist/styles → styles}/components/search-field/index.scss +0 -0
- /package/{dist/styles → styles}/components/stepper/_step-header.scss +0 -0
- /package/{dist/styles → styles}/components/stepper/_step.scss +0 -0
- /package/{dist/styles → styles}/components/stepper/_stepper-header.scss +0 -0
- /package/{dist/styles → styles}/components/stepper/_stepper.scss +0 -0
- /package/{dist/styles/components/stepper/indes.scss → styles/components/stepper/index.scss} +0 -0
- /package/{dist/styles → styles}/components/table/_table-head-data.scss +0 -0
- /package/{dist/styles → styles}/components/table/_table-head.scss +0 -0
- /package/{dist/styles → styles}/components/table/_table-row-data.scss +0 -0
- /package/{dist/styles → styles}/components/table/_table-row.scss +0 -0
- /package/{dist/styles → styles}/components/table/_table.scss +0 -0
- /package/{dist/styles → styles}/components/table/index.scss +0 -0
- /package/{dist/styles → styles}/core/_core.scss +0 -0
- /package/{dist/styles → styles}/core/_utils.scss +0 -0
- /package/{dist/styles → styles}/wlcm.scss +0 -0
@@ -0,0 +1,12 @@
|
|
1
|
+
export * from './lib/utils/stream.utils';
|
2
|
+
// Models
|
3
|
+
export * from './lib/models/_index';
|
4
|
+
// Constants
|
5
|
+
export * from './lib/constants/_index';
|
6
|
+
// Directives
|
7
|
+
export * from './lib/directives/_index';
|
8
|
+
// Components
|
9
|
+
export * from './lib/components/close-icon/close-icon.component';
|
10
|
+
export * from './lib/components/chevron-down-icon/chevron-down-icon.component';
|
11
|
+
export * from './lib/components/search-icon/search-icon.component';
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9jb3JlL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLFNBQVM7QUFDVCxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLFlBQVk7QUFDWixjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGFBQWE7QUFDYixjQUFjLHlCQUF5QixDQUFDO0FBRXhDLGFBQWE7QUFDYixjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxvREFBb0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzL3N0cmVhbS51dGlscyc7XG5cbi8vIE1vZGVsc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL19pbmRleCc7XG5cbi8vIENvbnN0YW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL19pbmRleCc7XG5cbi8vIERpcmVjdGl2ZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvX2luZGV4JztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jbG9zZS1pY29uL2Nsb3NlLWljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hldnJvbi1kb3duLWljb24vY2hldnJvbi1kb3duLWljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2VhcmNoLWljb24vc2VhcmNoLWljb24uY29tcG9uZW50JztcbiJdfQ==
|
@@ -0,0 +1,3 @@
|
|
1
|
+
export * from './http.constants';
|
2
|
+
export * from './icon.contants';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2luZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvbGliL2NvbnN0YW50cy9faW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9odHRwLmNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2ljb24uY29udGFudHMnO1xuIl19
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export * from './icon.directive';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2luZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvX2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ljb24uZGlyZWN0aXZlJztcbiJdfQ==
|
@@ -0,0 +1,49 @@
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
2
|
+
import { Directive, Inject, ViewContainerRef, input, output, } from '@angular/core';
|
3
|
+
import { WLCM_ICONS } from '../constants/icon.contants';
|
4
|
+
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
5
|
+
import { fromEvent } from 'rxjs';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
let WlcmIconDirective = class WlcmIconDirective {
|
8
|
+
constructor(icons, viewContainer) {
|
9
|
+
this.icons = icons;
|
10
|
+
this.viewContainer = viewContainer;
|
11
|
+
this.name = input.required({ alias: 'wlcmIcon' });
|
12
|
+
this.stopPropagation = input(true, { alias: 'wlcmIconStopPropagation' });
|
13
|
+
this.clicked = output({ alias: 'wlcmIconClicked' });
|
14
|
+
this.handleClick = (ref) => {
|
15
|
+
fromEvent(ref.location.nativeElement, 'click', (event) => event)
|
16
|
+
.pipe(untilDestroyed(this))
|
17
|
+
.subscribe((event) => {
|
18
|
+
if (this.stopPropagation())
|
19
|
+
event.stopPropagation();
|
20
|
+
this.clicked.emit(event);
|
21
|
+
});
|
22
|
+
};
|
23
|
+
}
|
24
|
+
ngOnInit() {
|
25
|
+
const component = this.icons[this.name()];
|
26
|
+
if (component) {
|
27
|
+
const ref = this.viewContainer.createComponent(component);
|
28
|
+
this.handleClick(ref);
|
29
|
+
}
|
30
|
+
}
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmIconDirective, deps: [{ token: WLCM_ICONS }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
32
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.3.5", type: WlcmIconDirective, isStandalone: true, selector: "[wlcmIcon]", inputs: { name: { classPropertyName: "name", publicName: "wlcmIcon", isSignal: true, isRequired: true, transformFunction: null }, stopPropagation: { classPropertyName: "stopPropagation", publicName: "wlcmIconStopPropagation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "wlcmIconClicked" }, ngImport: i0 }); }
|
33
|
+
};
|
34
|
+
WlcmIconDirective = __decorate([
|
35
|
+
UntilDestroy(),
|
36
|
+
__metadata("design:paramtypes", [Object, ViewContainerRef])
|
37
|
+
], WlcmIconDirective);
|
38
|
+
export { WlcmIconDirective };
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmIconDirective, decorators: [{
|
40
|
+
type: Directive,
|
41
|
+
args: [{
|
42
|
+
selector: '[wlcmIcon]',
|
43
|
+
standalone: true,
|
44
|
+
}]
|
45
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
46
|
+
type: Inject,
|
47
|
+
args: [WLCM_ICONS]
|
48
|
+
}] }, { type: i0.ViewContainerRef }] });
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9pY29uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxNQUFNLEVBSU4sZ0JBQWdCLEVBQ2hCLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXhELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFPMUIsSUFBTSxpQkFBaUIsR0FBdkIsTUFBTSxpQkFBaUI7SUFPNUIsWUFBd0MsS0FBZ0IsRUFBVSxhQUErQjtRQUF6RCxVQUFLLEdBQUwsS0FBSyxDQUFXO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBTmpHLFNBQUksR0FBOEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBRXhFLG9CQUFlLEdBQXlCLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO1FBRTFGLFlBQU8sR0FBaUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztRQWNyRSxnQkFBVyxHQUFHLENBQUMsR0FBMEIsRUFBRSxFQUFFO1lBQ25ELFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxLQUFpQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUM7aUJBQ3pFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzFCLFNBQVMsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtnQkFDL0IsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO29CQUFFLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztnQkFFcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUM7SUFwQmtHLENBQUM7SUFFckcsUUFBUTtRQUNOLE1BQU0sU0FBUyxHQUEyQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRWxFLElBQUksU0FBUyxFQUFFLENBQUM7WUFDZCxNQUFNLEdBQUcsR0FBMEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFakYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QixDQUFDO0lBQ0gsQ0FBQzs4R0FqQlUsaUJBQWlCLGtCQU9SLFVBQVU7a0dBUG5CLGlCQUFpQjs7QUFBakIsaUJBQWlCO0lBTDdCLFlBQVksRUFBRTs2Q0FZb0UsZ0JBQWdCO0dBUHRGLGlCQUFpQixDQTRCN0I7OzJGQTVCWSxpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBUWMsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLFxuICBEaXJlY3RpdmUsXG4gIEluamVjdCxcbiAgSW5wdXRTaWduYWwsXG4gIE9uSW5pdCxcbiAgT3V0cHV0RW1pdHRlclJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgaW5wdXQsXG4gIG91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXbGNtSWNvbk5hbWUsIFdsY21JY29ucyB9IGZyb20gJy4uL21vZGVscy9pY29uLm1vZGVscyc7XG5pbXBvcnQgeyBXTENNX0lDT05TIH0gZnJvbSAnLi4vY29uc3RhbnRzL2ljb24uY29udGFudHMnO1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVW50aWxEZXN0cm95LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcblxuQFVudGlsRGVzdHJveSgpXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbd2xjbUljb25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgV2xjbUljb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBuYW1lOiBJbnB1dFNpZ25hbDxXbGNtSWNvbk5hbWU+ID0gaW5wdXQucmVxdWlyZWQoeyBhbGlhczogJ3dsY21JY29uJyB9KTtcblxuICBzdG9wUHJvcGFnYXRpb246IElucHV0U2lnbmFsPGJvb2xlYW4+ID0gaW5wdXQodHJ1ZSwgeyBhbGlhczogJ3dsY21JY29uU3RvcFByb3BhZ2F0aW9uJyB9KTtcblxuICBjbGlja2VkOiBPdXRwdXRFbWl0dGVyUmVmPE1vdXNlRXZlbnQ+ID0gb3V0cHV0KHsgYWxpYXM6ICd3bGNtSWNvbkNsaWNrZWQnIH0pO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoV0xDTV9JQ09OUykgcHJpdmF0ZSBpY29uczogV2xjbUljb25zLCBwcml2YXRlIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPHVua25vd24+ID0gdGhpcy5pY29uc1t0aGlzLm5hbWUoKV07XG5cbiAgICBpZiAoY29tcG9uZW50KSB7XG4gICAgICBjb25zdCByZWY6IENvbXBvbmVudFJlZjx1bmtub3duPiA9IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50KTtcblxuICAgICAgdGhpcy5oYW5kbGVDbGljayhyZWYpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQ2xpY2sgPSAocmVmOiBDb21wb25lbnRSZWY8dW5rbm93bj4pID0+IHtcbiAgICBmcm9tRXZlbnQocmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQsICdjbGljaycsIChldmVudDogTW91c2VFdmVudCkgPT4gZXZlbnQpXG4gICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnN0b3BQcm9wYWdhdGlvbigpKSBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLmNsaWNrZWQuZW1pdChldmVudCk7XG4gICAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
|
@@ -0,0 +1,5 @@
|
|
1
|
+
export * from './icon.models';
|
2
|
+
export * from './paginated-data.models';
|
3
|
+
export * from './option.models';
|
4
|
+
export * from './query-params.models';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2luZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvbGliL21vZGVscy9faW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ljb24ubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGVkLWRhdGEubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vb3B0aW9uLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXJ5LXBhcmFtcy5tb2RlbHMnO1xuIl19
|
@@ -1,10 +1,42 @@
|
|
1
|
-
import {
|
1
|
+
import { finalize, tap, audit, of, interval, Observable, fromEvent } from 'rxjs';
|
2
|
+
import * as moment from 'moment';
|
2
3
|
import * as i0 from '@angular/core';
|
3
4
|
import { Component, InjectionToken, input, output, ViewContainerRef, Directive, Inject, ChangeDetectionStrategy } from '@angular/core';
|
4
5
|
import { CommonModule } from '@angular/common';
|
6
|
+
import { __decorate, __metadata } from 'tslib';
|
5
7
|
import { untilDestroyed, UntilDestroy } from '@ngneat/until-destroy';
|
6
|
-
|
7
|
-
|
8
|
+
|
9
|
+
class WlcmStreamUtils {
|
10
|
+
static loadingDetector(subject) {
|
11
|
+
subject.next(true);
|
12
|
+
return function (source) {
|
13
|
+
return source.pipe(finalize(() => subject.next(false)));
|
14
|
+
};
|
15
|
+
}
|
16
|
+
static loadingAudit(time = 800) {
|
17
|
+
let startAt;
|
18
|
+
return (source) => {
|
19
|
+
return source.pipe(tap((isLoading) => isLoading && (startAt = moment().valueOf()))).pipe(audit((isLoading) => {
|
20
|
+
if (isLoading)
|
21
|
+
return of(null);
|
22
|
+
const difference = time - (moment().valueOf() - startAt);
|
23
|
+
return interval(difference >= 0 ? difference : 0);
|
24
|
+
}));
|
25
|
+
};
|
26
|
+
}
|
27
|
+
static get emptySource() {
|
28
|
+
return new Observable((subscriber) => {
|
29
|
+
subscriber.next();
|
30
|
+
subscriber.complete();
|
31
|
+
});
|
32
|
+
}
|
33
|
+
}
|
34
|
+
|
35
|
+
var WlcmIconName;
|
36
|
+
(function (WlcmIconName) {
|
37
|
+
WlcmIconName["CALENDAR"] = "CALENDAR";
|
38
|
+
WlcmIconName["CHEVRON_DOWN"] = "CHEVRON_DOWN";
|
39
|
+
})(WlcmIconName || (WlcmIconName = {}));
|
8
40
|
|
9
41
|
class WlcmOption {
|
10
42
|
constructor(value, viewValue) {
|
@@ -33,12 +65,6 @@ const DEFAULT_QUERY_PARAMS = {
|
|
33
65
|
limit: 10,
|
34
66
|
};
|
35
67
|
|
36
|
-
var WlcmIconName;
|
37
|
-
(function (WlcmIconName) {
|
38
|
-
WlcmIconName["CALENDAR"] = "CALENDAR";
|
39
|
-
WlcmIconName["CHEVRON_DOWN"] = "CHEVRON_DOWN";
|
40
|
-
})(WlcmIconName || (WlcmIconName = {}));
|
41
|
-
|
42
68
|
class ChevronDownIconComponent {
|
43
69
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ChevronDownIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
44
70
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: ChevronDownIconComponent, isStandalone: true, selector: "wlcm-chevron-down-icon", ngImport: i0, template: "<svg\n width=\"12px\"\n height=\"7px\"\n viewBox=\"0 0 12 7\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"4-Media-Library\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"4.1.0-Filter-by-type\" transform=\"translate(-303.000000, -73.000000)\">\n <g id=\"Group-7\" transform=\"translate(45.000000, 64.000000)\">\n <g id=\"Group\" transform=\"translate(258.000000, 6.000000)\">\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"12\" height=\"12\"></rect>\n <polyline\n id=\"Path\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n points=\"1 4 6 9 11 4\"\n ></polyline>\n </g>\n </g>\n </g>\n </g>\n</svg>\n", styles: [":host{display:block}:host svg{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
@@ -71,11 +97,16 @@ let WlcmIconDirective = class WlcmIconDirective {
|
|
71
97
|
this.icons = icons;
|
72
98
|
this.viewContainer = viewContainer;
|
73
99
|
this.name = input.required({ alias: 'wlcmIcon' });
|
100
|
+
this.stopPropagation = input(true, { alias: 'wlcmIconStopPropagation' });
|
74
101
|
this.clicked = output({ alias: 'wlcmIconClicked' });
|
75
102
|
this.handleClick = (ref) => {
|
76
103
|
fromEvent(ref.location.nativeElement, 'click', (event) => event)
|
77
104
|
.pipe(untilDestroyed(this))
|
78
|
-
.subscribe((event) =>
|
105
|
+
.subscribe((event) => {
|
106
|
+
if (this.stopPropagation())
|
107
|
+
event.stopPropagation();
|
108
|
+
this.clicked.emit(event);
|
109
|
+
});
|
79
110
|
};
|
80
111
|
}
|
81
112
|
ngOnInit() {
|
@@ -86,7 +117,7 @@ let WlcmIconDirective = class WlcmIconDirective {
|
|
86
117
|
}
|
87
118
|
}
|
88
119
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmIconDirective, deps: [{ token: WLCM_ICONS }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
89
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.3.5", type: WlcmIconDirective, isStandalone: true, selector: "[wlcmIcon]", inputs: { name: { classPropertyName: "name", publicName: "wlcmIcon", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { clicked: "wlcmIconClicked" }, ngImport: i0 }); }
|
120
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.3.5", type: WlcmIconDirective, isStandalone: true, selector: "[wlcmIcon]", inputs: { name: { classPropertyName: "name", publicName: "wlcmIcon", isSignal: true, isRequired: true, transformFunction: null }, stopPropagation: { classPropertyName: "stopPropagation", publicName: "wlcmIconStopPropagation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clicked: "wlcmIconClicked" }, ngImport: i0 }); }
|
90
121
|
};
|
91
122
|
WlcmIconDirective = __decorate([
|
92
123
|
UntilDestroy(),
|
@@ -103,32 +134,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
103
134
|
args: [WLCM_ICONS]
|
104
135
|
}] }, { type: i0.ViewContainerRef }] });
|
105
136
|
|
106
|
-
class WlcmStreamUtils {
|
107
|
-
static loadingDetector(subject) {
|
108
|
-
subject.next(true);
|
109
|
-
return function (source) {
|
110
|
-
return source.pipe(finalize(() => subject.next(false)));
|
111
|
-
};
|
112
|
-
}
|
113
|
-
static loadingAudit(time = 800) {
|
114
|
-
let startAt;
|
115
|
-
return (source) => {
|
116
|
-
return source.pipe(tap((isLoading) => isLoading && (startAt = moment().valueOf()))).pipe(audit((isLoading) => {
|
117
|
-
if (isLoading)
|
118
|
-
return of(null);
|
119
|
-
const difference = time - (moment().valueOf() - startAt);
|
120
|
-
return interval(difference >= 0 ? difference : 0);
|
121
|
-
}));
|
122
|
-
};
|
123
|
-
}
|
124
|
-
static get emptySource() {
|
125
|
-
return new Observable((subscriber) => {
|
126
|
-
subscriber.next();
|
127
|
-
subscriber.complete();
|
128
|
-
});
|
129
|
-
}
|
130
|
-
}
|
131
|
-
|
132
137
|
class CloseIconComponent {
|
133
138
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: CloseIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
134
139
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: CloseIconComponent, isStandalone: true, selector: "wlcm-close-icon", ngImport: i0, template: "<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"2-User-Management\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n id=\"2.0.1-Export-users-two-filters\"\n transform=\"translate(-310.000000, -54.000000)\"\n >\n <g id=\"icons/close\" transform=\"translate(310.000000, 54.000000)\">\n <rect\n id=\"Rectangle\"\n fill=\"#EDF0F3\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n rx=\"4\"\n ></rect>\n <path\n d=\"M12,4 L4,12 M4,4 L12,12\"\n id=\"Combined-Shape\"\n stroke=\"#4A5056\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n ></path>\n </g>\n </g>\n </g>\n</svg>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"wlcm-angular-core.mjs","sources":["../../../core/src/lib/utils/stream.utils.ts","../../../core/src/lib/models/icon.models.ts","../../../core/src/lib/models/option.models.ts","../../../core/src/lib/models/query-params.models.ts","../../../core/src/lib/constants/http.constants.ts","../../../core/src/lib/components/chevron-down-icon/chevron-down-icon.component.ts","../../../core/src/lib/components/chevron-down-icon/chevron-down-icon.component.html","../../../core/src/lib/components/calendar-icon/calendar-icon.component.ts","../../../core/src/lib/components/calendar-icon/calendar-icon.component.html","../../../core/src/lib/constants/icon.contants.ts","../../../core/src/lib/directives/icon.directive.ts","../../../core/src/lib/components/close-icon/close-icon.component.ts","../../../core/src/lib/components/close-icon/close-icon.component.html","../../../core/src/lib/components/search-icon/search-icon.component.ts","../../../core/src/lib/components/search-icon/search-icon.component.html","../../../core/src/wlcm-angular-core.ts"],"sourcesContent":["import { EventEmitter } from '@angular/core';\nimport { Subject, BehaviorSubject, Observable, finalize, audit, interval, of, tap, Subscriber } from 'rxjs';\nimport * as moment from 'moment';\n\nexport class WlcmStreamUtils {\n static loadingDetector(\n subject: Subject<boolean> | BehaviorSubject<boolean> | EventEmitter<boolean>\n ): <T>(source: Observable<T>) => Observable<T> {\n subject.next(true);\n return function <T>(source: Observable<T>): Observable<T> {\n return source.pipe(finalize(() => subject.next(false)));\n };\n }\n\n static loadingAudit(time: number = 800): (source: Observable<boolean>) => Observable<boolean> {\n let startAt: number;\n\n return (source: Observable<boolean>): Observable<boolean> => {\n return source.pipe(tap((isLoading: boolean) => isLoading && (startAt = moment().valueOf()))).pipe(\n audit((isLoading: boolean) => {\n if (isLoading) return of(null);\n\n const difference: number = time - (moment().valueOf() - startAt);\n\n return interval(difference >= 0 ? difference : 0);\n })\n );\n };\n }\n\n static get emptySource(): Observable<void> {\n return new Observable((subscriber: Subscriber<void>) => {\n subscriber.next();\n subscriber.complete();\n });\n }\n}\n","import { ComponentType } from '@angular/cdk/portal';\n\nexport enum WlcmIconName {\n CALENDAR = 'CALENDAR',\n CHEVRON_DOWN = 'CHEVRON_DOWN',\n}\n\nexport type WlcmIcons = {\n [key in WlcmIconName]: ComponentType<unknown>;\n};\n","export class WlcmOption {\n constructor(public value: string | boolean, public viewValue: string) {}\n}\n\nexport class WlcmAutocompleteOption extends WlcmOption {\n constructor(public override value: string, public override viewValue: string, public searchValue: string) {\n super(value, viewValue);\n }\n}\n","export enum Order {\n ASC = 'asc',\n DESC = 'desc',\n}\n\nexport interface QueryFilter {\n equal?: string | boolean;\n\n not?: string | boolean;\n\n arrContains?: string[];\n\n oneOf?: string[];\n\n noneOf?: string[];\n\n from?: Date;\n\n to?: Date;\n\n exist?: boolean;\n}\n\nexport interface QueryFilters {\n [key: string]: QueryFilter;\n}\n\nexport interface QueryParams {\n query: string;\n\n page: number;\n\n limit: number;\n\n order?: Order;\n\n filters?: QueryFilters;\n\n sort?: string;\n\n searchKeys?: string[];\n}\n","import { QueryParams } from '../models/query-params.models';\n\nexport const DEFAULT_QUERY_PARAMS: QueryParams = {\n query: '',\n page: 1,\n limit: 10,\n};\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-chevron-down-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './chevron-down-icon.component.html',\n styleUrl: './chevron-down-icon.component.scss',\n})\nexport class ChevronDownIconComponent {}\n","<svg\n width=\"12px\"\n height=\"7px\"\n viewBox=\"0 0 12 7\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"4-Media-Library\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"4.1.0-Filter-by-type\" transform=\"translate(-303.000000, -73.000000)\">\n <g id=\"Group-7\" transform=\"translate(45.000000, 64.000000)\">\n <g id=\"Group\" transform=\"translate(258.000000, 6.000000)\">\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"12\" height=\"12\"></rect>\n <polyline\n id=\"Path\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n points=\"1 4 6 9 11 4\"\n ></polyline>\n </g>\n </g>\n </g>\n </g>\n</svg>\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-calendar-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './calendar-icon.component.html',\n styleUrl: './calendar-icon.component.scss',\n})\nexport class CalendarIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"icon/date-grey\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M11,0 C11.5522847,0 12,0.44771525 12,1 L14,1 C15.1045695,1 16,1.8954305 16,3 L16,14 C16,15.1045695 15.1045695,16 14,16 L2,16 C0.8954305,16 0,15.1045695 0,14 L0,3 C0,1.8954305 0.8954305,1 2,1 L4,1 C4,0.44771525 4.44771525,0 5,0 C5.55228475,0 6,0.44771525 6,1 L10,1 C10,0.44771525 10.4477153,0 11,0 Z M14,7 L2,7 L2,14 L14,14 L14,7 Z M4,3 L2,3 L2,5 L14,5 L14,3 L12,3 C12,3.55228475 11.5522847,4 11,4 C10.4477153,4 10,3.55228475 10,3 L6,3 C6,3.55228475 5.55228475,4 5,4 C4.44771525,4 4,3.55228475 4,3 Z\"\n id=\"Combined-Shape\"\n fill=\"#8E9498\"\n fill-rule=\"nonzero\"\n ></path>\n <rect\n id=\"Rectangle\"\n fill=\"#8E9498\"\n x=\"9\"\n y=\"9\"\n width=\"3\"\n height=\"3\"\n rx=\"1\"\n ></rect>\n </g>\n</svg>\n","import { InjectionToken } from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { ChevronDownIconComponent } from '../components/chevron-down-icon/chevron-down-icon.component';\nimport { CalendarIconComponent } from '../components/calendar-icon/calendar-icon.component';\n\nexport const DEFAULT_WLCM_ICONS: WlcmIcons = {\n [WlcmIconName.CALENDAR]: CalendarIconComponent,\n [WlcmIconName.CHEVRON_DOWN]: ChevronDownIconComponent,\n};\n\nexport const WLCM_ICONS: InjectionToken<WlcmIcons> = new InjectionToken('WLCM_ICONS', {\n providedIn: 'root',\n factory: () => DEFAULT_WLCM_ICONS,\n});\n","import {\n ComponentRef,\n Directive,\n Inject,\n InputSignal,\n OnInit,\n OutputEmitterRef,\n ViewContainerRef,\n input,\n output,\n} from '@angular/core';\nimport { WlcmIconName, WlcmIcons } from '../models/icon.models';\nimport { WLCM_ICONS } from '../constants/icon.contants';\nimport { ComponentType } from '@angular/cdk/portal';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { fromEvent } from 'rxjs';\n\n@UntilDestroy()\n@Directive({\n selector: '[wlcmIcon]',\n standalone: true,\n})\nexport class WlcmIconDirective implements OnInit {\n name: InputSignal<WlcmIconName> = input.required({ alias: 'wlcmIcon' });\n\n stopPropagation: InputSignal<boolean> = input(true, { alias: 'wlcmIconStopPropagation' });\n\n clicked: OutputEmitterRef<MouseEvent> = output({ alias: 'wlcmIconClicked' });\n\n constructor(@Inject(WLCM_ICONS) private icons: WlcmIcons, private viewContainer: ViewContainerRef) {}\n\n ngOnInit(): void {\n const component: ComponentType<unknown> = this.icons[this.name()];\n\n if (component) {\n const ref: ComponentRef<unknown> = this.viewContainer.createComponent(component);\n\n this.handleClick(ref);\n }\n }\n\n private handleClick = (ref: ComponentRef<unknown>) => {\n fromEvent(ref.location.nativeElement, 'click', (event: MouseEvent) => event)\n .pipe(untilDestroyed(this))\n .subscribe((event: MouseEvent) => {\n if (this.stopPropagation()) event.stopPropagation();\n\n this.clicked.emit(event);\n });\n };\n}\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-close-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './close-icon.component.html',\n styleUrl: './close-icon.component.scss',\n})\nexport class CloseIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n>\n <g\n id=\"2-User-Management\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n id=\"2.0.1-Export-users-two-filters\"\n transform=\"translate(-310.000000, -54.000000)\"\n >\n <g id=\"icons/close\" transform=\"translate(310.000000, 54.000000)\">\n <rect\n id=\"Rectangle\"\n fill=\"#EDF0F3\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n rx=\"4\"\n ></rect>\n <path\n d=\"M12,4 L4,12 M4,4 L12,12\"\n id=\"Combined-Shape\"\n stroke=\"#4A5056\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n ></path>\n </g>\n </g>\n </g>\n</svg>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'wlcm-search-icon',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './search-icon.component.html',\n styleUrls: ['./search-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SearchIconComponent {}\n","<svg\n width=\"16px\"\n height=\"16px\"\n viewBox=\"0 0 16 16\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n style=\"display: block\"\n>\n <g\n id=\"icons/search\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"16\" height=\"16\"></rect>\n <path\n d=\"M7,0 C10.8659932,0 14,3.13400675 14,7 C14,8.57234957 13.4815869,10.0236173 12.6063605,11.1922034 L15.1213203,13.7071068 C15.5118446,14.0976311 15.5118446,14.7307961 15.1213203,15.1213203 C14.7307961,15.5118446 14.0976311,15.5118446 13.7071068,15.1213203 L11.1922034,12.6063605 C10.0236173,13.4815869 8.57234957,14 7,14 C3.13400675,14 0,10.8659932 0,7 C0,3.13400675 3.13400675,0 7,0 Z M7,2 C4.23857625,2 2,4.23857625 2,7 C2,9.76142375 4.23857625,12 7,12 C9.76142375,12 12,9.76142375 12,7 C12,4.23857625 9.76142375,2 7,2 Z\"\n id=\"Combined-Shape\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n ></path>\n </g>\n</svg>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/core/index.d.ts
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
export * from './lib/utils/stream.utils';
|
2
|
+
export * from './lib/models/_index';
|
3
|
+
export * from './lib/constants/_index';
|
4
|
+
export * from './lib/directives/_index';
|
5
|
+
export * from './lib/components/close-icon/close-icon.component';
|
6
|
+
export * from './lib/components/chevron-down-icon/chevron-down-icon.component';
|
7
|
+
export * from './lib/components/search-icon/search-icon.component';
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './icon.directive';
|
@@ -5,10 +5,11 @@ export declare class WlcmIconDirective implements OnInit {
|
|
5
5
|
private icons;
|
6
6
|
private viewContainer;
|
7
7
|
name: InputSignal<WlcmIconName>;
|
8
|
+
stopPropagation: InputSignal<boolean>;
|
8
9
|
clicked: OutputEmitterRef<MouseEvent>;
|
9
10
|
constructor(icons: WlcmIcons, viewContainer: ViewContainerRef);
|
10
11
|
ngOnInit(): void;
|
11
12
|
private handleClick;
|
12
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<WlcmIconDirective, never>;
|
13
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<WlcmIconDirective, "[wlcmIcon]", never, { "name": { "alias": "wlcmIcon"; "required": true; "isSignal": true; }; }, { "clicked": "wlcmIconClicked"; }, never, never, true, never>;
|
14
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<WlcmIconDirective, "[wlcmIcon]", never, { "name": { "alias": "wlcmIcon"; "required": true; "isSignal": true; }; "stopPropagation": { "alias": "wlcmIconStopPropagation"; "required": false; "isSignal": true; }; }, { "clicked": "wlcmIconClicked"; }, never, never, true, never>;
|
14
15
|
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
export { WlcmDateRangePickerInputComponent } from './lib/components/range/date-range-picker-input/date-range-picker-input.component';
|
2
|
+
export { WlcmDatepickerInputContainerComponent } from './lib/components/single/datepicker-input-container/datepicker-input-container.component';
|
3
|
+
export { DateRangePickerInputEndDirective } from './lib/directives/ragne/date-range-picker-input-end.directive';
|
4
|
+
export { DateRangePickerInputStartDirective } from './lib/directives/ragne/date-range-picker-input-start.directive';
|
5
|
+
export { WlcmDatepickerInputDirective } from './lib/directives/single/datepicker-input.directive';
|
6
|
+
export { WlcmDateRangeValidation } from './lib/models/range/date-range-validation.models';
|
7
|
+
export { WlcmDateRangeInputValidator } from './lib/utils/range/date-range-input.validators';
|
8
|
+
export { WlcmDateValidation } from './lib/models/date-picker.models';
|
9
|
+
export { WlcmDatepickerModule } from './lib/datepicker.module';
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGtGQUFrRixDQUFDO0FBQ3JJLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHlGQUF5RixDQUFDO0FBQ2hKLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ2hILE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgV2xjbURhdGVSYW5nZVBpY2tlcklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0IHsgV2xjbURhdGVwaWNrZXJJbnB1dENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2luZ2xlL2RhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyL2RhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBEYXRlUmFuZ2VQaWNrZXJJbnB1dEVuZERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcmFnbmUvZGF0ZS1yYW5nZS1waWNrZXItaW5wdXQtZW5kLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBEYXRlUmFuZ2VQaWNrZXJJbnB1dFN0YXJ0RGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9yYWduZS9kYXRlLXJhbmdlLXBpY2tlci1pbnB1dC1zdGFydC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgV2xjbURhdGVwaWNrZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2luZ2xlL2RhdGVwaWNrZXItaW5wdXQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IFdsY21EYXRlUmFuZ2VWYWxpZGF0aW9uIH0gZnJvbSAnLi9saWIvbW9kZWxzL3JhbmdlL2RhdGUtcmFuZ2UtdmFsaWRhdGlvbi5tb2RlbHMnO1xuZXhwb3J0IHsgV2xjbURhdGVSYW5nZUlucHV0VmFsaWRhdG9yIH0gZnJvbSAnLi9saWIvdXRpbHMvcmFuZ2UvZGF0ZS1yYW5nZS1pbnB1dC52YWxpZGF0b3JzJztcbmV4cG9ydCB7IFdsY21EYXRlVmFsaWRhdGlvbiB9IGZyb20gJy4vbGliL21vZGVscy9kYXRlLXBpY2tlci5tb2RlbHMnO1xuXG5leHBvcnQgeyBXbGNtRGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJy4vbGliL2RhdGVwaWNrZXIubW9kdWxlJztcbiJdfQ==
|
@@ -0,0 +1,54 @@
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
2
|
+
import { Component, Inject, Optional, forwardRef } from '@angular/core';
|
3
|
+
import { MAT_DATE_FORMATS } from '@angular/material/core';
|
4
|
+
import { WlcmDataRangeCalendar } from '../../../models/range/data-range-calendar.models';
|
5
|
+
import { WlcmIconDirective, WlcmIconName } from '@wlcm/angular/core';
|
6
|
+
import { WlcmCalendarModule } from '@wlcm/angular/calendar';
|
7
|
+
import { MatCalendar } from '@angular/material/datepicker';
|
8
|
+
import * as i0 from "@angular/core";
|
9
|
+
import * as i1 from "../../../models/range/data-range-calendar.models";
|
10
|
+
import * as i2 from "@wlcm/angular/calendar";
|
11
|
+
import * as i3 from "@angular/material/datepicker";
|
12
|
+
export class WlcmDateRangeCalendarHeaderComponent {
|
13
|
+
constructor(rangeCalendar, dateFormats, calendar) {
|
14
|
+
this.rangeCalendar = rangeCalendar;
|
15
|
+
this.dateFormats = dateFormats;
|
16
|
+
this.calendar = calendar;
|
17
|
+
this.WlcmIconName = WlcmIconName;
|
18
|
+
this.previous = () => {
|
19
|
+
if (this.calendar.currentView !== 'month') {
|
20
|
+
return this.rangeCalendar.prevYear();
|
21
|
+
}
|
22
|
+
return this.rangeCalendar.prevMonth();
|
23
|
+
};
|
24
|
+
this.next = () => {
|
25
|
+
if (this.calendar.currentView !== 'month') {
|
26
|
+
return this.rangeCalendar.nextYear();
|
27
|
+
}
|
28
|
+
return this.rangeCalendar.nextMonth();
|
29
|
+
};
|
30
|
+
}
|
31
|
+
get canDisplayLeftArrow() {
|
32
|
+
return !this.rangeCalendar || this.rangeCalendar.location === 'left' || this.calendar.currentView !== 'month';
|
33
|
+
}
|
34
|
+
get canDisplayRightArrow() {
|
35
|
+
return !this.rangeCalendar || this.rangeCalendar.location === 'right' || this.calendar.currentView !== 'month';
|
36
|
+
}
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, deps: [{ token: i1.WlcmDataRangeCalendar, optional: true }, { token: MAT_DATE_FORMATS, optional: true }, { token: forwardRef(() => MatCalendar) }], target: i0.ɵɵFactoryTarget.Component }); }
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmDateRangeCalendarHeaderComponent, isStandalone: true, selector: "wlcm-date-range-calendar-header", ngImport: i0, template: "<wlcm-calendar-header\n [next]=\"next\"\n [previous]=\"previous\"\n [displayLeftArrow]=\"canDisplayLeftArrow && !rangeCalendar.disabled()\"\n [displayRightArrow]=\"canDisplayRightArrow && !rangeCalendar.disabled()\"\n></wlcm-calendar-header>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: WlcmCalendarModule }, { kind: "component", type: i2.WlcmCalendarHeaderComponent, selector: "wlcm-calendar-header", inputs: ["next", "previous", "displayLeftArrow", "displayRightArrow"] }] }); }
|
39
|
+
}
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangeCalendarHeaderComponent, decorators: [{
|
41
|
+
type: Component,
|
42
|
+
args: [{ selector: 'wlcm-date-range-calendar-header', standalone: true, imports: [CommonModule, WlcmCalendarModule, WlcmIconDirective], template: "<wlcm-calendar-header\n [next]=\"next\"\n [previous]=\"previous\"\n [displayLeftArrow]=\"canDisplayLeftArrow && !rangeCalendar.disabled()\"\n [displayRightArrow]=\"canDisplayRightArrow && !rangeCalendar.disabled()\"\n></wlcm-calendar-header>\n" }]
|
43
|
+
}], ctorParameters: () => [{ type: i1.WlcmDataRangeCalendar, decorators: [{
|
44
|
+
type: Optional
|
45
|
+
}] }, { type: undefined, decorators: [{
|
46
|
+
type: Optional
|
47
|
+
}, {
|
48
|
+
type: Inject,
|
49
|
+
args: [MAT_DATE_FORMATS]
|
50
|
+
}] }, { type: i3.MatCalendar, decorators: [{
|
51
|
+
type: Inject,
|
52
|
+
args: [forwardRef(() => MatCalendar)]
|
53
|
+
}] }] });
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRlcGlja2VyL3NyYy9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBa0IsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7OztBQVMzRCxNQUFNLE9BQU8sb0NBQW9DO0lBRy9DLFlBQ3dCLGFBQW9DLEVBQ1YsV0FBMkIsRUFDN0IsUUFBMkI7UUFGbkQsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBQ1YsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzdCLGFBQVEsR0FBUixRQUFRLENBQW1CO1FBTGxFLGlCQUFZLEdBQUcsWUFBWSxDQUFDO1FBUXJDLGFBQVEsR0FBRyxHQUFTLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDMUMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDeEMsQ0FBQyxDQUFDO1FBRUYsU0FBSSxHQUFHLEdBQVMsRUFBRTtZQUNoQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUMxQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsQ0FBQztZQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN4QyxDQUFDLENBQUM7SUFoQkMsQ0FBQztJQWtCSixJQUFJLG1CQUFtQjtRQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsS0FBSyxNQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEtBQUssT0FBTyxDQUFDO0lBQ2hILENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEtBQUssT0FBTyxDQUFDO0lBQ2pILENBQUM7OEdBL0JVLG9DQUFvQyx1RUFLekIsZ0JBQWdCLDZCQUM1QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDO2tHQU41QixvQ0FBb0MsMkZDZmpELHlQQU1BLHlEREtZLFlBQVksOEJBQUUsa0JBQWtCOzsyRkFJL0Isb0NBQW9DO2tCQVBoRCxTQUFTOytCQUNFLGlDQUFpQyxjQUMvQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7OzBCQVEzRCxRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLGdCQUFnQjs7MEJBQ25DLE1BQU07MkJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT3B0aW9uYWwsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BVF9EQVRFX0ZPUk1BVFMsIE1hdERhdGVGb3JtYXRzIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBXbGNtRGF0YVJhbmdlQ2FsZW5kYXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmFuZ2UvZGF0YS1yYW5nZS1jYWxlbmRhci5tb2RlbHMnO1xuaW1wb3J0IHsgV2xjbUljb25EaXJlY3RpdmUsIFdsY21JY29uTmFtZSB9IGZyb20gJ0B3bGNtL2FuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXbGNtQ2FsZW5kYXJNb2R1bGUgfSBmcm9tICdAd2xjbS9hbmd1bGFyL2NhbGVuZGFyJztcbmltcG9ydCB7IE1hdENhbGVuZGFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3dsY20tZGF0ZS1yYW5nZS1jYWxlbmRhci1oZWFkZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBXbGNtQ2FsZW5kYXJNb2R1bGUsIFdsY21JY29uRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGUtcmFuZ2UtY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgV2xjbURhdGVSYW5nZUNhbGVuZGFySGVhZGVyQ29tcG9uZW50IHtcbiAgcmVhZG9ubHkgV2xjbUljb25OYW1lID0gV2xjbUljb25OYW1lO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIHByb3RlY3RlZCByYW5nZUNhbGVuZGFyOiBXbGNtRGF0YVJhbmdlQ2FsZW5kYXIsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNQVRfREFURV9GT1JNQVRTKSBwcm90ZWN0ZWQgZGF0ZUZvcm1hdHM6IE1hdERhdGVGb3JtYXRzLFxuICAgIEBJbmplY3QoZm9yd2FyZFJlZigoKSA9PiBNYXRDYWxlbmRhcikpIHB1YmxpYyBjYWxlbmRhcjogTWF0Q2FsZW5kYXI8RGF0ZT5cbiAgKSB7fVxuXG4gIHByZXZpb3VzID0gKCk6IHZvaWQgPT4ge1xuICAgIGlmICh0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYW5nZUNhbGVuZGFyLnByZXZZZWFyKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmFuZ2VDYWxlbmRhci5wcmV2TW9udGgoKTtcbiAgfTtcblxuICBuZXh0ID0gKCk6IHZvaWQgPT4ge1xuICAgIGlmICh0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnKSB7XG4gICAgICByZXR1cm4gdGhpcy5yYW5nZUNhbGVuZGFyLm5leHRZZWFyKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmFuZ2VDYWxlbmRhci5uZXh0TW9udGgoKTtcbiAgfTtcblxuICBnZXQgY2FuRGlzcGxheUxlZnRBcnJvdygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMucmFuZ2VDYWxlbmRhciB8fCB0aGlzLnJhbmdlQ2FsZW5kYXIubG9jYXRpb24gPT09ICdsZWZ0JyB8fCB0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnO1xuICB9XG5cbiAgZ2V0IGNhbkRpc3BsYXlSaWdodEFycm93KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5yYW5nZUNhbGVuZGFyIHx8IHRoaXMucmFuZ2VDYWxlbmRhci5sb2NhdGlvbiA9PT0gJ3JpZ2h0JyB8fCB0aGlzLmNhbGVuZGFyLmN1cnJlbnRWaWV3ICE9PSAnbW9udGgnO1xuICB9XG59XG4iLCI8d2xjbS1jYWxlbmRhci1oZWFkZXJcbiAgW25leHRdPVwibmV4dFwiXG4gIFtwcmV2aW91c109XCJwcmV2aW91c1wiXG4gIFtkaXNwbGF5TGVmdEFycm93XT1cImNhbkRpc3BsYXlMZWZ0QXJyb3cgJiYgIXJhbmdlQ2FsZW5kYXIuZGlzYWJsZWQoKVwiXG4gIFtkaXNwbGF5UmlnaHRBcnJvd109XCJjYW5EaXNwbGF5UmlnaHRBcnJvdyAmJiAhcmFuZ2VDYWxlbmRhci5kaXNhYmxlZCgpXCJcbj48L3dsY20tY2FsZW5kYXItaGVhZGVyPlxuIl19
|
package/datepicker/esm2022/lib/components/range/date-range-picker/date-range-picker.component.mjs
ADDED
@@ -0,0 +1,170 @@
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
2
|
+
import { Component, ElementRef, Inject, Optional, ViewChild, computed, effect, signal, } from '@angular/core';
|
3
|
+
import { CommonModule } from '@angular/common';
|
4
|
+
import { DefaultMatCalendarRangeStrategy, MAT_DATE_RANGE_SELECTION_STRATEGY, MatCalendar, MatDateSelectionModel, MatDatepickerModule, MatMonthView, } from '@angular/material/datepicker';
|
5
|
+
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
|
6
|
+
import { WlcmDateRangePickerBottomPanelComponent } from '../date-range-picker-bottom-panel/date-range-picker-bottom-panel.component';
|
7
|
+
import { Subject, startWith, takeUntil, tap } from 'rxjs';
|
8
|
+
import { DateAdapter } from '@angular/material/core';
|
9
|
+
import { WlcmDateRangeCalendarHeaderComponent } from '../date-range-calendar-header/date-range-calendar-header.component';
|
10
|
+
import { WlcmCalendarModule } from '@wlcm/angular/calendar';
|
11
|
+
import { WLCM_DATE_RANGE_PICKER_CONFIG } from '../../../constants/range/date-range-picker.constants';
|
12
|
+
import { WLCM_DATE_RANGE_SELECTION_MODEL_PROVIDER, WLCM_DATE_RANGE_SELECTION_MODEL, } from '../../../constants/range/date-range-selection-model.constants';
|
13
|
+
import { WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL } from '../../../constants/range/date-range-trigger-selection-model.constants';
|
14
|
+
import { WlcmLeftCalendarDirective } from '../../../directives/ragne/left-calendar.directive';
|
15
|
+
import { WlcmRightCalendarDirective } from '../../../directives/ragne/right-calendar.directive';
|
16
|
+
import { WlcmDatepickerTrigger } from '../../../directives/datepicker-trigger.base';
|
17
|
+
import * as i0 from "@angular/core";
|
18
|
+
import * as i1 from "../../../directives/datepicker-trigger.base";
|
19
|
+
import * as i2 from "@angular/material/core";
|
20
|
+
import * as i3 from "@wlcm/angular/calendar";
|
21
|
+
import * as i4 from "@angular/material/datepicker";
|
22
|
+
let WlcmDateRangePickerComponent = class WlcmDateRangePickerComponent {
|
23
|
+
constructor(config, rangeSelectionStrategy, localSelectionModel, triggerSelectionModel, trigger, dateAdapter) {
|
24
|
+
this.config = config;
|
25
|
+
this.rangeSelectionStrategy = rangeSelectionStrategy;
|
26
|
+
this.localSelectionModel = localSelectionModel;
|
27
|
+
this.triggerSelectionModel = triggerSelectionModel;
|
28
|
+
this.trigger = trigger;
|
29
|
+
this.dateAdapter = dateAdapter;
|
30
|
+
this.headerComponent = WlcmDateRangeCalendarHeaderComponent;
|
31
|
+
this._isViewInitialized = false;
|
32
|
+
this._isComplete = signal(false);
|
33
|
+
this.isComplete = computed(() => this._isComplete());
|
34
|
+
this.startDate = signal(new Date());
|
35
|
+
this.leftCalendarYearViewActivated = signal(false);
|
36
|
+
this.rightCalendarYearViewActivated = signal(false);
|
37
|
+
this.handleSelectionChanged();
|
38
|
+
this.localSelectionModel.updateSelection(this.triggerSelectionModel.selection, this);
|
39
|
+
if (this.triggerSelectionModel.selection.start) {
|
40
|
+
this.startDate.set(this.triggerSelectionModel.selection.start);
|
41
|
+
}
|
42
|
+
if (this.config.headerComponent) {
|
43
|
+
this.headerComponent = this.config.headerComponent;
|
44
|
+
}
|
45
|
+
effect(() => {
|
46
|
+
if (!this._isViewInitialized)
|
47
|
+
return;
|
48
|
+
this.leftCalendar.activeDate = this.startDate();
|
49
|
+
this.rightCalendar.activeDate = this.dateAdapter.addCalendarMonths(this.startDate(), 1);
|
50
|
+
});
|
51
|
+
}
|
52
|
+
ngAfterViewInit() {
|
53
|
+
this._isViewInitialized = true;
|
54
|
+
this.leftCalendar.viewChanged.pipe(untilDestroyed(this)).subscribe((view) => {
|
55
|
+
this.leftCalendarYearViewActivated.set(view !== 'month');
|
56
|
+
});
|
57
|
+
this.rightCalendar.viewChanged.pipe(untilDestroyed(this)).subscribe((view) => {
|
58
|
+
this.rightCalendarYearViewActivated.set(view !== 'month');
|
59
|
+
});
|
60
|
+
this.handleRightCalendarPreviewChange();
|
61
|
+
}
|
62
|
+
calendarSelection(event) {
|
63
|
+
const newSelection = this.rangeSelectionStrategy.selectionFinished(event.value, this.localSelectionModel.selection, event.event);
|
64
|
+
this.localSelectionModel.updateSelection(newSelection, this);
|
65
|
+
}
|
66
|
+
calendarDragDrop(event) {
|
67
|
+
this.localSelectionModel.updateSelection(event.value, this);
|
68
|
+
}
|
69
|
+
apply() {
|
70
|
+
this.triggerSelectionModel.updateSelection(this.localSelectionModel.selection, this);
|
71
|
+
this.trigger.close();
|
72
|
+
}
|
73
|
+
reset() {
|
74
|
+
this.trigger.close();
|
75
|
+
}
|
76
|
+
get selected() {
|
77
|
+
return this.localSelectionModel.selection;
|
78
|
+
}
|
79
|
+
get leftCalendarActiveCell() {
|
80
|
+
return this.leftCalendarElement.nativeElement.querySelector('.mat-calendar-body-active');
|
81
|
+
}
|
82
|
+
handleSelectionChanged() {
|
83
|
+
this.localSelectionModel.selectionChanged
|
84
|
+
.pipe(untilDestroyed(this))
|
85
|
+
.subscribe(() => this._isComplete.set(this.localSelectionModel.isComplete()));
|
86
|
+
}
|
87
|
+
handleRightCalendarPreviewChange() {
|
88
|
+
const viewChanged = new Subject();
|
89
|
+
this.rightCalendar.viewChanged
|
90
|
+
.pipe(untilDestroyed(this))
|
91
|
+
.pipe(tap(() => viewChanged.next()))
|
92
|
+
.pipe(startWith(this.rightCalendar.currentView))
|
93
|
+
.subscribe((view) => {
|
94
|
+
if (view !== 'month')
|
95
|
+
return;
|
96
|
+
this.rightCalendar.monthView._matCalendarBody.previewChange
|
97
|
+
.pipe(takeUntil(viewChanged), untilDestroyed(this))
|
98
|
+
.subscribe(() => {
|
99
|
+
if (this.leftCalendar.currentView !== 'month' || !this.leftCalendar.monthView._rangeStart)
|
100
|
+
return;
|
101
|
+
this.leftCalendar.monthView._previewStart = this.rightCalendar.monthView._previewStart;
|
102
|
+
this.leftCalendar.monthView._previewEnd = this.rightCalendar.monthView._previewEnd;
|
103
|
+
const activeCell = this.leftCalendarActiveCell;
|
104
|
+
if (activeCell && activeCell === document.activeElement)
|
105
|
+
activeCell.blur();
|
106
|
+
this.leftCalendar.monthView._changeDetectorRef.markForCheck();
|
107
|
+
});
|
108
|
+
});
|
109
|
+
}
|
110
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerComponent, deps: [{ token: WLCM_DATE_RANGE_PICKER_CONFIG, optional: true }, { token: MAT_DATE_RANGE_SELECTION_STRATEGY }, { token: WLCM_DATE_RANGE_SELECTION_MODEL }, { token: WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL }, { token: i1.WlcmDatepickerTrigger }, { token: i2.DateAdapter }], target: i0.ɵɵFactoryTarget.Component }); }
|
111
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: WlcmDateRangePickerComponent, isStandalone: true, selector: "wlcm-date-range-picker", providers: [
|
112
|
+
{
|
113
|
+
provide: MAT_DATE_RANGE_SELECTION_STRATEGY,
|
114
|
+
useClass: DefaultMatCalendarRangeStrategy,
|
115
|
+
},
|
116
|
+
WLCM_DATE_RANGE_SELECTION_MODEL_PROVIDER,
|
117
|
+
], viewQueries: [{ propertyName: "leftCalendar", first: true, predicate: WlcmLeftCalendarDirective, descendants: true, read: MatCalendar }, { propertyName: "rightCalendar", first: true, predicate: WlcmRightCalendarDirective, descendants: true, read: MatCalendar }, { propertyName: "leftCalendarElement", first: true, predicate: WlcmLeftCalendarDirective, descendants: true, read: ElementRef }, { propertyName: "monthView", first: true, predicate: MatMonthView, descendants: true }], ngImport: i0, template: "<div class=\"wlcm-date-range-picker-panel\">\n <div class=\"wlcm-date-range-picker-body\">\n <mat-calendar\n wlcmCalendar\n wlcmLeftCalendar\n [selected]=\"selected\"\n [disabled]=\"rightCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n\n <mat-calendar\n wlcmCalendar\n wlcmRightCalendar\n [selected]=\"selected\"\n [disabled]=\"leftCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n </div>\n\n <wlcm-date-range-picker-bottom-panel></wlcm-date-range-picker-bottom-panel>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: WlcmCalendarModule }, { kind: "directive", type: i3.WlcmCalendarDirective, selector: "[wlcmCalendar]" }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i4.MatCalendar, selector: "mat-calendar", inputs: ["headerComponent", "startAt", "startView", "selected", "minDate", "maxDate", "dateFilter", "dateClass", "comparisonStart", "comparisonEnd", "startDateAccessibleName", "endDateAccessibleName"], outputs: ["selectedChange", "yearSelected", "monthSelected", "viewChanged", "_userSelection", "_userDragDrop"], exportAs: ["matCalendar"] }, { kind: "directive", type: WlcmLeftCalendarDirective, selector: "[wlcmLeftCalendar]" }, { kind: "directive", type: WlcmRightCalendarDirective, selector: "[wlcmRightCalendar]" }, { kind: "component", type: WlcmDateRangePickerBottomPanelComponent, selector: "wlcm-date-range-picker-bottom-panel" }] }); }
|
118
|
+
};
|
119
|
+
WlcmDateRangePickerComponent = __decorate([
|
120
|
+
UntilDestroy(),
|
121
|
+
__metadata("design:paramtypes", [Object, Object, MatDateSelectionModel,
|
122
|
+
MatDateSelectionModel,
|
123
|
+
WlcmDatepickerTrigger,
|
124
|
+
DateAdapter])
|
125
|
+
], WlcmDateRangePickerComponent);
|
126
|
+
export { WlcmDateRangePickerComponent };
|
127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: WlcmDateRangePickerComponent, decorators: [{
|
128
|
+
type: Component,
|
129
|
+
args: [{ selector: 'wlcm-date-range-picker', standalone: true, imports: [
|
130
|
+
CommonModule,
|
131
|
+
WlcmCalendarModule,
|
132
|
+
MatDatepickerModule,
|
133
|
+
WlcmLeftCalendarDirective,
|
134
|
+
WlcmRightCalendarDirective,
|
135
|
+
WlcmDateRangePickerBottomPanelComponent,
|
136
|
+
], providers: [
|
137
|
+
{
|
138
|
+
provide: MAT_DATE_RANGE_SELECTION_STRATEGY,
|
139
|
+
useClass: DefaultMatCalendarRangeStrategy,
|
140
|
+
},
|
141
|
+
WLCM_DATE_RANGE_SELECTION_MODEL_PROVIDER,
|
142
|
+
], template: "<div class=\"wlcm-date-range-picker-panel\">\n <div class=\"wlcm-date-range-picker-body\">\n <mat-calendar\n wlcmCalendar\n wlcmLeftCalendar\n [selected]=\"selected\"\n [disabled]=\"rightCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n\n <mat-calendar\n wlcmCalendar\n wlcmRightCalendar\n [selected]=\"selected\"\n [disabled]=\"leftCalendarYearViewActivated()\"\n [headerComponent]=\"headerComponent\"\n (_userSelection)=\"calendarSelection($event)\"\n (_userDragDrop)=\"calendarDragDrop($event)\"\n (dateChange)=\"startDate.set($event)\"\n ></mat-calendar>\n </div>\n\n <wlcm-date-range-picker-bottom-panel></wlcm-date-range-picker-bottom-panel>\n</div>\n" }]
|
143
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
144
|
+
type: Optional
|
145
|
+
}, {
|
146
|
+
type: Inject,
|
147
|
+
args: [WLCM_DATE_RANGE_PICKER_CONFIG]
|
148
|
+
}] }, { type: undefined, decorators: [{
|
149
|
+
type: Inject,
|
150
|
+
args: [MAT_DATE_RANGE_SELECTION_STRATEGY]
|
151
|
+
}] }, { type: i4.MatDateSelectionModel, decorators: [{
|
152
|
+
type: Inject,
|
153
|
+
args: [WLCM_DATE_RANGE_SELECTION_MODEL]
|
154
|
+
}] }, { type: i4.MatDateSelectionModel, decorators: [{
|
155
|
+
type: Inject,
|
156
|
+
args: [WLCM_DATE_RANGE_TRIGGER_SELECTION_MODEL]
|
157
|
+
}] }, { type: i1.WlcmDatepickerTrigger }, { type: i2.DateAdapter }], propDecorators: { leftCalendar: [{
|
158
|
+
type: ViewChild,
|
159
|
+
args: [WlcmLeftCalendarDirective, { read: MatCalendar }]
|
160
|
+
}], rightCalendar: [{
|
161
|
+
type: ViewChild,
|
162
|
+
args: [WlcmRightCalendarDirective, { read: MatCalendar }]
|
163
|
+
}], leftCalendarElement: [{
|
164
|
+
type: ViewChild,
|
165
|
+
args: [WlcmLeftCalendarDirective, { read: ElementRef }]
|
166
|
+
}], monthView: [{
|
167
|
+
type: ViewChild,
|
168
|
+
args: [MatMonthView]
|
169
|
+
}] } });
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9kYXRlcGlja2VyL3NyYy9saWIvY29tcG9uZW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2R1bGVzL2RhdGVwaWNrZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sUUFBUSxFQUdSLFNBQVMsRUFFVCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVMLCtCQUErQixFQUMvQixpQ0FBaUMsRUFDakMsV0FBVyxFQUlYLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsWUFBWSxHQUNiLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUNySSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUMxSCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0Is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d0JBQ3pCLDBCQUEwQjt3QkFDMUIsdUNBQXVDO3FCQUN4QyxhQUdVO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQ0FBaUM7NEJBQzFDLFFBQVEsRUFBRSwrQkFBK0I7eUJBQzFDO3dCQUNELHdDQUF3QztxQkFDekM7OzBCQVlFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsNkJBQTZCOzswQkFDaEQsTUFBTTsyQkFBQyxpQ0FBaUM7OzBCQUV4QyxNQUFNOzJCQUFDLCtCQUErQjs7MEJBRXRDLE1BQU07MkJBQUMsdUNBQXVDO3VHQTBCWSxZQUFZO3NCQUF4RSxTQUFTO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFFRyxhQUFhO3NCQUExRSxTQUFTO3VCQUFDLDBCQUEwQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFFQSxtQkFBbUI7c0JBQTlFLFNBQVM7dUJBQUMseUJBQXlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUVqQyxTQUFTO3NCQUFqQyxTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgT3B0aW9uYWwsXG4gIFNpZ25hbCxcbiAgVHlwZSxcbiAgVmlld0NoaWxkLFxuICBXcml0YWJsZVNpZ25hbCxcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBEYXRlUmFuZ2UsXG4gIERlZmF1bHRNYXRDYWxlbmRhclJhbmdlU3RyYXRlZ3ksXG4gIE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgTWF0Q2FsZW5kYXIsXG4gIE1hdENhbGVuZGFyVXNlckV2ZW50LFxuICBNYXRDYWxlbmRhclZpZXcsXG4gIE1hdERhdGVSYW5nZVNlbGVjdGlvblN0cmF0ZWd5LFxuICBNYXREYXRlU2VsZWN0aW9uTW9kZWwsXG4gIE1hdERhdGVwaWNrZXJNb2R1bGUsXG4gIE1hdE1vbnRoVmlldyxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcbmltcG9ydCB7IFdsY21EYXRlUmFuZ2VQaWNrZXJCb3R0b21QYW5lbENvbXBvbmVudCB9IGZyb20gJy4uL2RhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbC9kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YmplY3QsIHN0YXJ0V2l0aCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERhdGVBZGFwdGVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBXbGNtRGF0ZVJhbmdlQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci9kYXRlLXJhbmdlLWNhbGVuZGFyLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2xjbUNhbGVuZGFyTW9kdWxlIH0gZnJvbSAnQHdsY20vYW5ndWxhci9jYWxlbmRhcic7XG5pbXBvcnQgeyBXTENNX0RBVEVfUkFOR0VfUElDS0VSX0NPTkZJRyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9yYW5nZS9kYXRlLXJhbmdlLXBpY2tlci5jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgV0xDTV9EQVRFX1JBTkdFX1NFTEVDVElPTl9NT0RFTF9QUk9WSURFUixcbiAgV0xDTV9EQVRFX1JBTkdFX1NFTEVDVElPTl9NT0RFTCxcbn0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL3JhbmdlL2RhdGUtcmFuZ2Utc2VsZWN0aW9uLW1vZGVsLmNvbnN0YW50cyc7XG5pbXBvcnQgeyBXTENNX0RBVEVfUkFOR0VfVFJJR0dFUl9TRUxFQ1RJT05fTU9ERUwgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvcmFuZ2UvZGF0ZS1yYW5nZS10cmlnZ2VyLXNlbGVjdGlvbi1tb2RlbC5jb25zdGFudHMnO1xuaW1wb3J0IHsgV2xjbUxlZnRDYWxlbmRhckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvcmFnbmUvbGVmdC1jYWxlbmRhci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgV2xjbVJpZ2h0Q2FsZW5kYXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL3JhZ25lL3JpZ2h0LWNhbGVuZGFyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBXbGNtRGF0ZVJhbmdlUGlja2VyQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3JhbmdlL2RhdGUtcmFuZ2UtcGlja2VyLm1vZGVscyc7XG5pbXBvcnQgeyBXbGNtRGF0ZXBpY2tlclRyaWdnZXIgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2RhdGVwaWNrZXItdHJpZ2dlci5iYXNlJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3bGNtLWRhdGUtcmFuZ2UtcGlja2VyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBXbGNtQ2FsZW5kYXJNb2R1bGUsXG4gICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICBXbGNtTGVmdENhbGVuZGFyRGlyZWN0aXZlLFxuICAgIFdsY21SaWdodENhbGVuZGFyRGlyZWN0aXZlLFxuICAgIFdsY21EYXRlUmFuZ2VQaWNrZXJCb3R0b21QYW5lbENvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGUtcmFuZ2UtcGlja2VyLmNvbXBvbmVudC5zY3NzJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTUFUX0RBVEVfUkFOR0VfU0VMRUNUSU9OX1NUUkFURUdZLFxuICAgICAgdXNlQ2xhc3M6IERlZmF1bHRNYXRDYWxlbmRhclJhbmdlU3RyYXRlZ3ksXG4gICAgfSxcbiAgICBXTENNX0RBVEVfUkFOR0VfU0VMRUNUSU9OX01PREVMX1BST1ZJREVSLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBXbGNtRGF0ZVJhbmdlUGlja2VyQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIGhlYWRlckNvbXBvbmVudDogVHlwZTx1bmtub3duPiA9IFdsY21EYXRlUmFuZ2VDYWxlbmRhckhlYWRlckNvbXBvbmVudDtcblxuICBwcml2YXRlIF9pc1ZpZXdJbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2lzQ29tcGxldGU6IFdyaXRhYmxlU2lnbmFsPGJvb2xlYW4+ID0gc2lnbmFsKGZhbHNlKTtcblxuICByZWFkb25seSBpc0NvbXBsZXRlOiBTaWduYWw8Ym9vbGVhbj4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLl9pc0NvbXBsZXRlKCkpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoV0xDTV9EQVRFX1JBTkdFX1BJQ0tFUl9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBXbGNtRGF0ZVJhbmdlUGlja2VyQ29uZmlnLFxuICAgIEBJbmplY3QoTUFUX0RBVEVfUkFOR0VfU0VMRUNUSU9OX1NUUkFURUdZKVxuICAgIHByaXZhdGUgcmFuZ2VTZWxlY3Rpb25TdHJhdGVneTogTWF0RGF0ZVJhbmdlU2VsZWN0aW9uU3RyYXRlZ3k8RGF0ZT4sXG4gICAgQEluamVjdChXTENNX0RBVEVfUkFOR0VfU0VMRUNUSU9OX01PREVMKVxuICAgIHByb3RlY3RlZCBsb2NhbFNlbGVjdGlvbk1vZGVsOiBNYXREYXRlU2VsZWN0aW9uTW9kZWw8RGF0ZVJhbmdlPERhdGU+PixcbiAgICBASW5qZWN0KFdMQ01fREFURV9SQU5HRV9UUklHR0VSX1NFTEVDVElPTl9NT0RFTClcbiAgICBwcm90ZWN0ZWQgdHJpZ2dlclNlbGVjdGlvbk1vZGVsOiBNYXREYXRlU2VsZWN0aW9uTW9kZWw8RGF0ZVJhbmdlPERhdGU+PixcbiAgICBwcm90ZWN0ZWQgdHJpZ2dlcjogV2xjbURhdGVwaWNrZXJUcmlnZ2VyPFdsY21EYXRlUmFuZ2VQaWNrZXJDb21wb25lbnQ+LFxuICAgIHByb3RlY3RlZCBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8RGF0ZT5cbiAgKSB7XG4gICAgdGhpcy5oYW5kbGVTZWxlY3Rpb25DaGFuZ2VkKCk7XG5cbiAgICB0aGlzLmxvY2FsU2VsZWN0aW9uTW9kZWwudXBkYXRlU2VsZWN0aW9uKHRoaXMudHJpZ2dlclNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbiwgdGhpcyk7XG5cbiAgICBpZiAodGhpcy50cmlnZ2VyU2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLnN0YXJ0KSB7XG4gICAgICB0aGlzLnN0YXJ0RGF0ZS5zZXQodGhpcy50cmlnZ2VyU2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLnN0YXJ0KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb25maWcuaGVhZGVyQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmhlYWRlckNvbXBvbmVudCA9IHRoaXMuY29uZmlnLmhlYWRlckNvbXBvbmVudDtcbiAgICB9XG5cbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLl9pc1ZpZXdJbml0aWFsaXplZCkgcmV0dXJuO1xuXG4gICAgICB0aGlzLmxlZnRDYWxlbmRhci5hY3RpdmVEYXRlID0gdGhpcy5zdGFydERhdGUoKTtcblxuICAgICAgdGhpcy5yaWdodENhbGVuZGFyLmFjdGl2ZURhdGUgPSB0aGlzLmRhdGVBZGFwdGVyLmFkZENhbGVuZGFyTW9udGhzKHRoaXMuc3RhcnREYXRlKCksIDEpO1xuICAgIH0pO1xuICB9XG5cbiAgQFZpZXdDaGlsZChXbGNtTGVmdENhbGVuZGFyRGlyZWN0aXZlLCB7IHJlYWQ6IE1hdENhbGVuZGFyIH0pIGxlZnRDYWxlbmRhciE6IE1hdENhbGVuZGFyPERhdGU+O1xuXG4gIEBWaWV3Q2hpbGQoV2xjbVJpZ2h0Q2FsZW5kYXJEaXJlY3RpdmUsIHsgcmVhZDogTWF0Q2FsZW5kYXIgfSkgcmlnaHRDYWxlbmRhciE6IE1hdENhbGVuZGFyPERhdGU+O1xuXG4gIEBWaWV3Q2hpbGQoV2xjbUxlZnRDYWxlbmRhckRpcmVjdGl2ZSwgeyByZWFkOiBFbGVtZW50UmVmIH0pIGxlZnRDYWxlbmRhckVsZW1lbnQhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKE1hdE1vbnRoVmlldykgbW9udGhWaWV3ITogTWF0TW9udGhWaWV3PGFueT47XG5cbiAgc3RhcnREYXRlOiBXcml0YWJsZVNpZ25hbDxEYXRlPiA9IHNpZ25hbChuZXcgRGF0ZSgpKTtcblxuICBsZWZ0Q2FsZW5kYXJZZWFyVmlld0FjdGl2YXRlZDogV3JpdGFibGVTaWduYWw8Ym9vbGVhbj4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIHJpZ2h0Q2FsZW5kYXJZZWFyVmlld0FjdGl2YXRlZDogV3JpdGFibGVTaWduYWw8Ym9vbGVhbj4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLl9pc1ZpZXdJbml0aWFsaXplZCA9IHRydWU7XG5cbiAgICB0aGlzLmxlZnRDYWxlbmRhci52aWV3Q2hhbmdlZC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKHZpZXc6IE1hdENhbGVuZGFyVmlldykgPT4ge1xuICAgICAgdGhpcy5sZWZ0Q2FsZW5kYXJZZWFyVmlld0FjdGl2YXRlZC5zZXQodmlldyAhPT0gJ21vbnRoJyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnJpZ2h0Q2FsZW5kYXIudmlld0NoYW5nZWQucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKCh2aWV3OiBNYXRDYWxlbmRhclZpZXcpID0+IHtcbiAgICAgIHRoaXMucmlnaHRDYWxlbmRhclllYXJWaWV3QWN0aXZhdGVkLnNldCh2aWV3ICE9PSAnbW9udGgnKTtcbiAgICB9KTtcblxuICAgIHRoaXMuaGFuZGxlUmlnaHRDYWxlbmRhclByZXZpZXdDaGFuZ2UoKTtcbiAgfVxuXG4gIGNhbGVuZGFyU2VsZWN0aW9uKGV2ZW50OiBNYXRDYWxlbmRhclVzZXJFdmVudDxEYXRlIHwgbnVsbD4pOiB2b2lkIHtcbiAgICBjb25zdCBuZXdTZWxlY3Rpb246IERhdGVSYW5nZTxEYXRlPiA9IHRoaXMucmFuZ2VTZWxlY3Rpb25TdHJhdGVneS5zZWxlY3Rpb25GaW5pc2hlZChcbiAgICAgIGV2ZW50LnZhbHVlLFxuICAgICAgdGhpcy5sb2NhbFNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbixcbiAgICAgIGV2ZW50LmV2ZW50XG4gICAgKTtcblxuICAgIHRoaXMubG9jYWxTZWxlY3Rpb25Nb2RlbC51cGRhdGVTZWxlY3Rpb24obmV3U2VsZWN0aW9uLCB0aGlzKTtcbiAgfVxuXG4gIGNhbGVuZGFyRHJhZ0Ryb3AoZXZlbnQ6IE1hdENhbGVuZGFyVXNlckV2ZW50PERhdGVSYW5nZTxEYXRlPj4pOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU2VsZWN0aW9uTW9kZWwudXBkYXRlU2VsZWN0aW9uKGV2ZW50LnZhbHVlLCB0aGlzKTtcbiAgfVxuXG4gIGFwcGx5KCk6IHZvaWQge1xuICAgIHRoaXMudHJpZ2dlclNlbGVjdGlvbk1vZGVsLnVwZGF0ZVNlbGVjdGlvbih0aGlzLmxvY2FsU2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLCB0aGlzKTtcblxuICAgIHRoaXMudHJpZ2dlci5jbG9zZSgpO1xuICB9XG5cbiAgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy50cmlnZ2VyLmNsb3NlKCk7XG4gIH1cblxuICBnZXQgc2VsZWN0ZWQoKTogRGF0ZVJhbmdlPERhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbFNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGxlZnRDYWxlbmRhckFjdGl2ZUNlbGwoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5sZWZ0Q2FsZW5kYXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLm1hdC1jYWxlbmRhci1ib2R5LWFjdGl2ZScpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTZWxlY3Rpb25DaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMubG9jYWxTZWxlY3Rpb25Nb2RlbC5zZWxlY3Rpb25DaGFuZ2VkXG4gICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5faXNDb21wbGV0ZS5zZXQodGhpcy5sb2NhbFNlbGVjdGlvbk1vZGVsLmlzQ29tcGxldGUoKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVSaWdodENhbGVuZGFyUHJldmlld0NoYW5nZSgpOiB2b2lkIHtcbiAgICBjb25zdCB2aWV3Q2hhbmdlZDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICB0aGlzLnJpZ2h0Q2FsZW5kYXIudmlld0NoYW5nZWRcbiAgICAgIC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKVxuICAgICAgLnBpcGUodGFwKCgpID0+IHZpZXdDaGFuZ2VkLm5leHQoKSkpXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy5yaWdodENhbGVuZGFyLmN1cnJlbnRWaWV3KSlcbiAgICAgIC5zdWJzY3JpYmUoKHZpZXc6IE1hdENhbGVuZGFyVmlldykgPT4ge1xuICAgICAgICBpZiAodmlldyAhPT0gJ21vbnRoJykgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMucmlnaHRDYWxlbmRhci5tb250aFZpZXcuX21hdENhbGVuZGFyQm9keS5wcmV2aWV3Q2hhbmdlXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHZpZXdDaGFuZ2VkKSwgdW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5sZWZ0Q2FsZW5kYXIuY3VycmVudFZpZXcgIT09ICdtb250aCcgfHwgIXRoaXMubGVmdENhbGVuZGFyLm1vbnRoVmlldy5fcmFuZ2VTdGFydCkgcmV0dXJuO1xuXG4gICAgICAgICAgICB0aGlzLmxlZnRDYWxlbmRhci5tb250aFZpZXcuX3ByZXZpZXdTdGFydCA9IHRoaXMucmlnaHRDYWxlbmRhci5tb250aFZpZXcuX3ByZXZpZXdTdGFydDtcblxuICAgICAgICAgICAgdGhpcy5sZWZ0Q2FsZW5kYXIubW9udGhWaWV3Ll9wcmV2aWV3RW5kID0gdGhpcy5yaWdodENhbGVuZGFyLm1vbnRoVmlldy5fcHJldmlld0VuZDtcblxuICAgICAgICAgICAgY29uc3QgYWN0aXZlQ2VsbCA9IHRoaXMubGVmdENhbGVuZGFyQWN0aXZlQ2VsbDtcblxuICAgICAgICAgICAgaWYgKGFjdGl2ZUNlbGwgJiYgYWN0aXZlQ2VsbCA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkgYWN0aXZlQ2VsbC5ibHVyKCk7XG5cbiAgICAgICAgICAgIHRoaXMubGVmdENhbGVuZGFyLm1vbnRoVmlldy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIndsY20tZGF0ZS1yYW5nZS1waWNrZXItcGFuZWxcIj5cbiAgPGRpdiBjbGFzcz1cIndsY20tZGF0ZS1yYW5nZS1waWNrZXItYm9keVwiPlxuICAgIDxtYXQtY2FsZW5kYXJcbiAgICAgIHdsY21DYWxlbmRhclxuICAgICAgd2xjbUxlZnRDYWxlbmRhclxuICAgICAgW3NlbGVjdGVkXT1cInNlbGVjdGVkXCJcbiAgICAgIFtkaXNhYmxlZF09XCJyaWdodENhbGVuZGFyWWVhclZpZXdBY3RpdmF0ZWQoKVwiXG4gICAgICBbaGVhZGVyQ29tcG9uZW50XT1cImhlYWRlckNvbXBvbmVudFwiXG4gICAgICAoX3VzZXJTZWxlY3Rpb24pPVwiY2FsZW5kYXJTZWxlY3Rpb24oJGV2ZW50KVwiXG4gICAgICAoX3VzZXJEcmFnRHJvcCk9XCJjYWxlbmRhckRyYWdEcm9wKCRldmVudClcIlxuICAgICAgKGRhdGVDaGFuZ2UpPVwic3RhcnREYXRlLnNldCgkZXZlbnQpXCJcbiAgICA+PC9tYXQtY2FsZW5kYXI+XG5cbiAgICA8bWF0LWNhbGVuZGFyXG4gICAgICB3bGNtQ2FsZW5kYXJcbiAgICAgIHdsY21SaWdodENhbGVuZGFyXG4gICAgICBbc2VsZWN0ZWRdPVwic2VsZWN0ZWRcIlxuICAgICAgW2Rpc2FibGVkXT1cImxlZnRDYWxlbmRhclllYXJWaWV3QWN0aXZhdGVkKClcIlxuICAgICAgW2hlYWRlckNvbXBvbmVudF09XCJoZWFkZXJDb21wb25lbnRcIlxuICAgICAgKF91c2VyU2VsZWN0aW9uKT1cImNhbGVuZGFyU2VsZWN0aW9uKCRldmVudClcIlxuICAgICAgKF91c2VyRHJhZ0Ryb3ApPVwiY2FsZW5kYXJEcmFnRHJvcCgkZXZlbnQpXCJcbiAgICAgIChkYXRlQ2hhbmdlKT1cInN0YXJ0RGF0ZS5zZXQoJGV2ZW50KVwiXG4gICAgPjwvbWF0LWNhbGVuZGFyPlxuICA8L2Rpdj5cblxuICA8d2xjbS1kYXRlLXJhbmdlLXBpY2tlci1ib3R0b20tcGFuZWw+PC93bGNtLWRhdGUtcmFuZ2UtcGlja2VyLWJvdHRvbS1wYW5lbD5cbjwvZGl2PlxuIl19
|