mis-crystal-design-system 18.0.5 → 18.0.6
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/action-list/action-list.component.d.ts +1 -1
- package/analytics/analytics.service.d.ts +1 -1
- package/async-search-dropdown/async-dropdown.component.d.ts +3 -2
- package/button/button.component.d.ts +1 -1
- package/button/button.directive.d.ts +1 -1
- package/checkbox/checkbox.component.d.ts +1 -1
- package/chip/chip.component.d.ts +1 -1
- package/datepicker_v2/models/dp-config.model.d.ts +1 -1
- package/datepicker_v2/tz-datepicker.directive.d.ts +1 -1
- package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +1 -1
- package/daterangepicker_v2/models/drp-config.model.d.ts +1 -1
- package/daterangepicker_v2/tz-daterangepicker.directive.d.ts +1 -1
- package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +1 -1
- package/drawer/drawer-body/drawer-body.component.d.ts +1 -1
- package/dropdown/calculate-container-height.directive.d.ts +1 -1
- package/dropdown/dropdown.component.d.ts +1 -1
- package/dynamic-form/dynamic-form.component.d.ts +1 -1
- package/esm2022/action-list/action-list.component.mjs +363 -0
- package/{esm2020 → esm2022}/action-list/action-list.module.mjs +5 -5
- package/{esm2020 → esm2022}/analytics/analytics.module.mjs +5 -5
- package/esm2022/analytics/analytics.service.mjs +64 -0
- package/esm2022/async-search-dropdown/async-dropdown.component.mjs +536 -0
- package/{esm2020 → esm2022}/async-search-dropdown/async-dropdown.module.mjs +5 -5
- package/esm2022/button/button.component.mjs +88 -0
- package/esm2022/button/button.directive.mjs +61 -0
- package/{esm2020 → esm2022}/button/button.module.mjs +5 -5
- package/esm2022/checkbox/checkbox.component.mjs +124 -0
- package/{esm2020 → esm2022}/checkbox/checkbox.module.mjs +5 -5
- package/esm2022/chip/chip.component.mjs +82 -0
- package/{esm2020 → esm2022}/chip/chip.module.mjs +5 -5
- package/{esm2020 → esm2022}/datepicker_v2/datepicker.module.mjs +5 -5
- package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +183 -0
- package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +442 -0
- package/{esm2020/daterangepicker_v2 → esm2022/datepicker_v2}/utils/index.mjs +1 -1
- package/{esm2020 → esm2022}/daterangepicker_v2/daterangepicker.module.mjs +5 -5
- package/esm2022/daterangepicker_v2/tz-daterangepicker.directive.mjs +165 -0
- package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +503 -0
- package/esm2022/daterangepicker_v2/utils/index.mjs +45 -0
- package/esm2022/drawer/drawer-body/drawer-body.component.mjs +59 -0
- package/{esm2020 → esm2022}/drawer/drawer-ref.mjs +4 -4
- package/{esm2020 → esm2022}/drawer/drawer.module.mjs +5 -5
- package/{esm2020 → esm2022}/drawer/drawer.service.mjs +5 -5
- package/esm2022/dropdown/calculate-container-height.directive.mjs +41 -0
- package/esm2022/dropdown/dropdown.component.mjs +464 -0
- package/{esm2020 → esm2022}/dropdown/dropdown.module.mjs +5 -5
- package/esm2022/dynamic-form/dynamic-form.component.mjs +1093 -0
- package/{esm2020 → esm2022}/dynamic-form/dynamic-form.module.mjs +13 -13
- package/esm2022/fab/fab.component.mjs +145 -0
- package/{esm2020 → esm2022}/fab/fab.module.mjs +5 -5
- package/esm2022/filter/filter-panel/filter-panel.component.mjs +396 -0
- package/{esm2020 → esm2022}/filter/filters.module.mjs +17 -17
- package/esm2022/filter/has-value.pipe.mjs +31 -0
- package/{esm2020 → esm2022}/input/directives/input/input.directive.mjs +6 -6
- package/{fesm2020/mis-crystal-design-system-input.mjs → esm2022/input/mis-input.component.mjs} +49 -109
- package/{esm2020 → esm2022}/input/mis-input.module.mjs +5 -5
- package/esm2022/input-stepper/input-stepper/input-stepper.component.mjs +89 -0
- package/{esm2020 → esm2022}/input-stepper/input-stepper.module.mjs +5 -5
- package/esm2022/loader/loader.component.mjs +25 -0
- package/{esm2020 → esm2022}/loader/loader.module.mjs +5 -5
- package/esm2022/menu/menu-close.directive.mjs +25 -0
- package/{esm2020 → esm2022}/menu/menu.directive.mjs +7 -7
- package/{esm2020 → esm2022}/menu/menu.module.mjs +5 -5
- package/esm2022/mobile-filter/mobile-filter.component.mjs +180 -0
- package/{esm2020 → esm2022}/mobile-filter/mobile-filter.module.mjs +5 -5
- package/{esm2020 → esm2022}/modal/modal.module.mjs +5 -5
- package/esm2022/modal/modal.service.mjs +70 -0
- package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +56 -0
- package/esm2022/multi-select-dropdown/multi-select-dropdown.component.mjs +489 -0
- package/{esm2020 → esm2022}/multi-select-dropdown/multi-select-dropdown.module.mjs +5 -5
- package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +516 -0
- package/{esm2020 → esm2022}/nested-multi-select-dropdown/nested-multi-select-dropdown.module.mjs +5 -5
- package/esm2022/phone-input/phone-input.component.mjs +72 -0
- package/{esm2020 → esm2022}/phone-input/phone-input.module.mjs +5 -5
- package/esm2022/radio-button/radio-button.component.mjs +57 -0
- package/{esm2020 → esm2022}/radio-button/radio-button.module.mjs +5 -5
- package/esm2022/ske-loader/ske-loader.component.mjs +54 -0
- package/{esm2020 → esm2022}/ske-loader/ske-loader.module.mjs +5 -5
- package/esm2022/slider/slider.component.mjs +46 -0
- package/{esm2020 → esm2022}/slider/slider.module.mjs +7 -7
- package/esm2022/snackbar/snackbar/snackbar.component.mjs +72 -0
- package/{esm2020 → esm2022}/snackbar/snackbar.module.mjs +5 -5
- package/esm2022/snackbar/snackbar.service.mjs +47 -0
- package/{esm2020 → esm2022}/specificdatepicker/specificdatepicker.module.mjs +5 -5
- package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +646 -0
- package/esm2022/specificdatepicker/tz-specificdatepicker.directive.mjs +196 -0
- package/esm2022/specificdatepicker/utils/index.mjs +45 -0
- package/esm2022/star-rating/star-rating.component.mjs +113 -0
- package/{esm2020 → esm2022}/star-rating/star-rating.module.mjs +5 -5
- package/esm2022/switch/switch.component.mjs +56 -0
- package/{esm2020 → esm2022}/switch/switch.module.mjs +5 -5
- package/esm2022/table/custom-table-cell.directive.mjs +42 -0
- package/esm2022/table/filter/filter.component.mjs +177 -0
- package/esm2022/table/sub-table/sub-table.component.mjs +192 -0
- package/esm2022/table/table.component.mjs +485 -0
- package/{esm2020 → esm2022}/table/table.module.mjs +5 -5
- package/esm2022/timepicker/timepicker.component.mjs +374 -0
- package/esm2022/timepicker/timepicker.directive.mjs +69 -0
- package/{esm2020 → esm2022}/timepicker/timepicker.module.mjs +5 -5
- package/esm2022/timerangepicker/timerangepicker.component.mjs +237 -0
- package/{esm2020 → esm2022}/timerangepicker/timerangepicker.module.mjs +5 -5
- package/esm2022/toast/toast.component.mjs +51 -0
- package/{esm2020 → esm2022}/toast/toast.data.service.mjs +8 -8
- package/{esm2020 → esm2022}/toast/toast.module.mjs +5 -5
- package/esm2022/toast/toast.service.mjs +91 -0
- package/esm2022/tooltip/tooltip-container/tooltip.component.mjs +79 -0
- package/esm2022/tooltip/tooltip.directive.mjs +143 -0
- package/{esm2020 → esm2022}/tooltip/tooltip.module.mjs +5 -5
- package/esm2022/virtual-scroll/virtual-scroll.component.mjs +188 -0
- package/{esm2020 → esm2022}/virtual-scroll/virtual-scroll.module.mjs +7 -7
- package/esm2022/widgets/classes/async-widget.mjs +23 -0
- package/{esm2020 → esm2022}/widgets/classes/base-widget.mjs +1 -1
- package/esm2022/widgets/classes/sync-widget.mjs +20 -0
- package/{esm2020 → esm2022}/widgets/services/widget.service.mjs +5 -5
- package/{esm2020 → esm2022}/widgets/widgets.module.mjs +5 -5
- package/fab/fab.component.d.ts +4 -4
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-action-list.mjs +106 -113
- package/fesm2022/mis-crystal-design-system-action-list.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-analytics.mjs +9 -9
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-analytics.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs +561 -0
- package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -0
- package/fesm2022/mis-crystal-design-system-button.mjs +173 -0
- package/fesm2022/mis-crystal-design-system-button.mjs.map +1 -0
- package/fesm2022/mis-crystal-design-system-checkbox.mjs +150 -0
- package/fesm2022/mis-crystal-design-system-checkbox.mjs.map +1 -0
- package/fesm2022/mis-crystal-design-system-chip.mjs +108 -0
- package/fesm2022/mis-crystal-design-system-chip.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-datepicker_v2.mjs +133 -140
- package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -0
- package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +737 -0
- package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-drawer.mjs +34 -33
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-drawer.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-dropdown.mjs +176 -184
- package/fesm2022/mis-crystal-design-system-dropdown.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-dynamic-form.mjs +441 -456
- package/fesm2022/mis-crystal-design-system-dynamic-form.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-fab.mjs +48 -47
- package/fesm2022/mis-crystal-design-system-fab.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-filter.mjs +113 -120
- package/fesm2022/mis-crystal-design-system-filter.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-input-stepper.mjs +35 -34
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-input-stepper.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-input.mjs +146 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-input.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-loader.mjs +51 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-loader.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-menu.mjs +16 -16
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-menu.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-mobile-filter.mjs +205 -0
- package/fesm2022/mis-crystal-design-system-mobile-filter.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-modal.mjs +34 -33
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-modal.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-multi-select-dropdown.mjs +107 -109
- package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-nested-multi-select-dropdown.mjs +128 -129
- package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-phone-input.mjs +22 -21
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-phone-input.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-radio-button.mjs +83 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-radio-button.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-ske-loader.mjs +77 -0
- package/fesm2022/mis-crystal-design-system-ske-loader.mjs.map +1 -0
- package/fesm2022/mis-crystal-design-system-slider.mjs +80 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-slider.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-snackbar.mjs +32 -32
- package/fesm2022/mis-crystal-design-system-snackbar.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-specificdatepicker.mjs +204 -204
- package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-star-rating.mjs +29 -28
- package/fesm2022/mis-crystal-design-system-star-rating.mjs.map +1 -0
- package/fesm2022/mis-crystal-design-system-switch.mjs +82 -0
- package/fesm2022/mis-crystal-design-system-switch.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-table.mjs +314 -321
- package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-timepicker.mjs +78 -74
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-timepicker.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-timerangepicker.mjs +26 -25
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-timerangepicker.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-toast.mjs +35 -34
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-toast.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-tooltip.mjs +47 -47
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-tooltip.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-virtual-scroll.mjs +50 -52
- package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-widgets.mjs +4 -4
- package/{fesm2020 → fesm2022}/mis-crystal-design-system-widgets.mjs.map +1 -1
- package/filter/filter-panel/filter-panel.component.d.ts +1 -1
- package/input/directives/input/input.directive.d.ts +1 -1
- package/input/mis-input.component.d.ts +1 -1
- package/input-stepper/input-stepper/input-stepper.component.d.ts +1 -1
- package/loader/loader.component.d.ts +1 -1
- package/menu/menu-close.directive.d.ts +1 -1
- package/menu/menu.directive.d.ts +1 -1
- package/mobile-filter/mobile-filter.component.d.ts +1 -1
- package/modal/module-wrapper/module-wrapper.component.d.ts +1 -1
- package/multi-select-dropdown/multi-select-dropdown.component.d.ts +1 -1
- package/nested-multi-select-dropdown/nested-multi-select-dropdown.component.d.ts +1 -1
- package/package.json +125 -207
- package/phone-input/phone-input.component.d.ts +1 -1
- package/radio-button/radio-button.component.d.ts +1 -1
- package/ske-loader/ske-loader.component.d.ts +1 -1
- package/slider/slider.component.d.ts +1 -1
- package/snackbar/snackbar/snackbar.component.d.ts +1 -1
- package/specificdatepicker/models/sdp-config.model.d.ts +1 -1
- package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +1 -1
- package/specificdatepicker/tz-specificdatepicker.directive.d.ts +1 -1
- package/star-rating/star-rating.component.d.ts +1 -1
- package/switch/switch.component.d.ts +1 -1
- package/table/custom-table-cell.directive.d.ts +1 -1
- package/table/filter/filter.component.d.ts +1 -1
- package/table/sub-table/sub-table.component.d.ts +1 -1
- package/table/table.component.d.ts +1 -1
- package/timepicker/timepicker.component.d.ts +1 -1
- package/timepicker/timepicker.directive.d.ts +1 -1
- package/timerangepicker/timerange.namespace.d.ts +1 -1
- package/timerangepicker/timerangepicker.component.d.ts +1 -1
- package/toast/toast.component.d.ts +1 -1
- package/toast/toast.service.d.ts +1 -1
- package/tooltip/models/tooltip.model.d.ts +1 -1
- package/tooltip/tooltip-container/tooltip.component.d.ts +1 -1
- package/tooltip/tooltip.directive.d.ts +1 -1
- package/virtual-scroll/virtual-scroll.component.d.ts +1 -1
- package/widgets/interfaces/widgets.model.d.ts +1 -1
- package/esm2020/action-list/action-list.component.mjs +0 -370
- package/esm2020/analytics/analytics.service.mjs +0 -64
- package/esm2020/async-search-dropdown/async-dropdown.component.mjs +0 -525
- package/esm2020/button/button.component.mjs +0 -87
- package/esm2020/button/button.directive.mjs +0 -61
- package/esm2020/checkbox/checkbox.component.mjs +0 -124
- package/esm2020/chip/chip.component.mjs +0 -82
- package/esm2020/datepicker_v2/tz-datepicker.directive.mjs +0 -183
- package/esm2020/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +0 -449
- package/esm2020/datepicker_v2/utils/index.mjs +0 -45
- package/esm2020/daterangepicker_v2/tz-daterangepicker.directive.mjs +0 -165
- package/esm2020/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +0 -502
- package/esm2020/drawer/drawer-body/drawer-body.component.mjs +0 -58
- package/esm2020/dropdown/calculate-container-height.directive.mjs +0 -41
- package/esm2020/dropdown/dropdown.component.mjs +0 -472
- package/esm2020/dynamic-form/dynamic-form.component.mjs +0 -1108
- package/esm2020/fab/fab.component.mjs +0 -144
- package/esm2020/filter/filter-panel/filter-panel.component.mjs +0 -403
- package/esm2020/filter/has-value.pipe.mjs +0 -31
- package/esm2020/input/mis-input.component.mjs +0 -84
- package/esm2020/input-stepper/input-stepper/input-stepper.component.mjs +0 -88
- package/esm2020/loader/loader.component.mjs +0 -24
- package/esm2020/menu/menu-close.directive.mjs +0 -25
- package/esm2020/mobile-filter/mobile-filter.component.mjs +0 -181
- package/esm2020/modal/modal.service.mjs +0 -70
- package/esm2020/modal/module-wrapper/module-wrapper.component.mjs +0 -55
- package/esm2020/multi-select-dropdown/multi-select-dropdown.component.mjs +0 -491
- package/esm2020/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +0 -517
- package/esm2020/phone-input/phone-input.component.mjs +0 -71
- package/esm2020/radio-button/radio-button.component.mjs +0 -56
- package/esm2020/ske-loader/ske-loader.component.mjs +0 -53
- package/esm2020/slider/slider.component.mjs +0 -45
- package/esm2020/snackbar/snackbar/snackbar.component.mjs +0 -72
- package/esm2020/snackbar/snackbar.service.mjs +0 -47
- package/esm2020/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +0 -646
- package/esm2020/specificdatepicker/tz-specificdatepicker.directive.mjs +0 -196
- package/esm2020/specificdatepicker/utils/index.mjs +0 -45
- package/esm2020/star-rating/star-rating.component.mjs +0 -112
- package/esm2020/switch/switch.component.mjs +0 -55
- package/esm2020/table/custom-table-cell.directive.mjs +0 -42
- package/esm2020/table/filter/filter.component.mjs +0 -176
- package/esm2020/table/sub-table/sub-table.component.mjs +0 -193
- package/esm2020/table/table.component.mjs +0 -492
- package/esm2020/timepicker/timepicker.component.mjs +0 -370
- package/esm2020/timepicker/timepicker.directive.mjs +0 -69
- package/esm2020/timerangepicker/timerangepicker.component.mjs +0 -236
- package/esm2020/toast/toast.component.mjs +0 -50
- package/esm2020/toast/toast.service.mjs +0 -91
- package/esm2020/tooltip/tooltip-container/tooltip.component.mjs +0 -79
- package/esm2020/tooltip/tooltip.directive.mjs +0 -143
- package/esm2020/virtual-scroll/virtual-scroll.component.mjs +0 -190
- package/esm2020/widgets/classes/async-widget.mjs +0 -23
- package/esm2020/widgets/classes/sync-widget.mjs +0 -20
- package/fesm2015/mis-crystal-design-system-action-list.mjs +0 -446
- package/fesm2015/mis-crystal-design-system-action-list.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-analytics.mjs +0 -87
- package/fesm2015/mis-crystal-design-system-analytics.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs +0 -618
- package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-button.mjs +0 -189
- package/fesm2015/mis-crystal-design-system-button.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-checkbox.mjs +0 -166
- package/fesm2015/mis-crystal-design-system-checkbox.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-chip.mjs +0 -123
- package/fesm2015/mis-crystal-design-system-chip.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs +0 -751
- package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs +0 -769
- package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-drawer.mjs +0 -185
- package/fesm2015/mis-crystal-design-system-drawer.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-dropdown.mjs +0 -616
- package/fesm2015/mis-crystal-design-system-dropdown.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-dynamic-form.mjs +0 -1337
- package/fesm2015/mis-crystal-design-system-dynamic-form.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-fab.mjs +0 -186
- package/fesm2015/mis-crystal-design-system-fab.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-filter.mjs +0 -559
- package/fesm2015/mis-crystal-design-system-filter.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-input-stepper.mjs +0 -124
- package/fesm2015/mis-crystal-design-system-input-stepper.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-input.mjs +0 -165
- package/fesm2015/mis-crystal-design-system-input.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-loader.mjs +0 -57
- package/fesm2015/mis-crystal-design-system-loader.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-menu.mjs +0 -135
- package/fesm2015/mis-crystal-design-system-menu.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-mobile-filter.mjs +0 -227
- package/fesm2015/mis-crystal-design-system-mobile-filter.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-modal.mjs +0 -184
- package/fesm2015/mis-crystal-design-system-modal.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-multi-select-dropdown.mjs +0 -550
- package/fesm2015/mis-crystal-design-system-multi-select-dropdown.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.mjs +0 -559
- package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-phone-input.mjs +0 -107
- package/fesm2015/mis-crystal-design-system-phone-input.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-radio-button.mjs +0 -89
- package/fesm2015/mis-crystal-design-system-radio-button.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-ske-loader.mjs +0 -86
- package/fesm2015/mis-crystal-design-system-ske-loader.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-slider.mjs +0 -88
- package/fesm2015/mis-crystal-design-system-slider.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-snackbar.mjs +0 -175
- package/fesm2015/mis-crystal-design-system-snackbar.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs +0 -970
- package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-star-rating.mjs +0 -145
- package/fesm2015/mis-crystal-design-system-star-rating.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-switch.mjs +0 -88
- package/fesm2015/mis-crystal-design-system-switch.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-table.mjs +0 -1045
- package/fesm2015/mis-crystal-design-system-table.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-timepicker.mjs +0 -484
- package/fesm2015/mis-crystal-design-system-timepicker.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-timerangepicker.mjs +0 -273
- package/fesm2015/mis-crystal-design-system-timerangepicker.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-toast.mjs +0 -214
- package/fesm2015/mis-crystal-design-system-toast.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-tooltip.mjs +0 -272
- package/fesm2015/mis-crystal-design-system-tooltip.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-virtual-scroll.mjs +0 -259
- package/fesm2015/mis-crystal-design-system-virtual-scroll.mjs.map +0 -1
- package/fesm2015/mis-crystal-design-system-widgets.mjs +0 -131
- package/fesm2015/mis-crystal-design-system-widgets.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-action-list.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs +0 -550
- package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-button.mjs +0 -172
- package/fesm2020/mis-crystal-design-system-button.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-checkbox.mjs +0 -150
- package/fesm2020/mis-crystal-design-system-checkbox.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-chip.mjs +0 -108
- package/fesm2020/mis-crystal-design-system-chip.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-datepicker_v2.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs +0 -736
- package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-dropdown.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-dynamic-form.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-fab.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-filter.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-loader.mjs +0 -50
- package/fesm2020/mis-crystal-design-system-mobile-filter.mjs +0 -206
- package/fesm2020/mis-crystal-design-system-mobile-filter.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-multi-select-dropdown.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-radio-button.mjs +0 -82
- package/fesm2020/mis-crystal-design-system-ske-loader.mjs +0 -76
- package/fesm2020/mis-crystal-design-system-ske-loader.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-slider.mjs +0 -79
- package/fesm2020/mis-crystal-design-system-snackbar.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-specificdatepicker.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-star-rating.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-styles.mjs +0 -4
- package/fesm2020/mis-crystal-design-system-styles.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-switch.mjs +0 -81
- package/fesm2020/mis-crystal-design-system-switch.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-table.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-utils.mjs +0 -24
- package/fesm2020/mis-crystal-design-system-utils.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system-virtual-scroll.mjs.map +0 -1
- package/fesm2020/mis-crystal-design-system.mjs +0 -24
- package/fesm2020/mis-crystal-design-system.mjs.map +0 -1
- /package/{esm2020 → esm2022}/action-list/index.mjs +0 -0
- /package/{esm2020 → esm2022}/action-list/mis-crystal-design-system-action-list.mjs +0 -0
- /package/{esm2020 → esm2022}/action-list/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/analytics/index.mjs +0 -0
- /package/{esm2020 → esm2022}/analytics/mis-crystal-design-system-analytics.mjs +0 -0
- /package/{esm2020 → esm2022}/analytics/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/async-search-dropdown/index.mjs +0 -0
- /package/{esm2020 → esm2022}/async-search-dropdown/mis-crystal-design-system-async-search-dropdown.mjs +0 -0
- /package/{esm2020 → esm2022}/async-search-dropdown/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/button/index.mjs +0 -0
- /package/{esm2020 → esm2022}/button/mis-crystal-design-system-button.mjs +0 -0
- /package/{esm2020 → esm2022}/button/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/checkbox/index.mjs +0 -0
- /package/{esm2020 → esm2022}/checkbox/mis-crystal-design-system-checkbox.mjs +0 -0
- /package/{esm2020 → esm2022}/checkbox/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/chip/index.mjs +0 -0
- /package/{esm2020 → esm2022}/chip/mis-crystal-design-system-chip.mjs +0 -0
- /package/{esm2020 → esm2022}/chip/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/datepicker_v2/datepicker-constants.mjs +0 -0
- /package/{esm2020 → esm2022}/datepicker_v2/index.mjs +0 -0
- /package/{esm2020 → esm2022}/datepicker_v2/mis-crystal-design-system-datepicker_v2.mjs +0 -0
- /package/{esm2020 → esm2022}/datepicker_v2/models/dp-config.model.mjs +0 -0
- /package/{esm2020 → esm2022}/datepicker_v2/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/daterangepicker_v2/daterangepicker-constants.mjs +0 -0
- /package/{esm2020 → esm2022}/daterangepicker_v2/index.mjs +0 -0
- /package/{esm2020 → esm2022}/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.mjs +0 -0
- /package/{esm2020 → esm2022}/daterangepicker_v2/models/drp-config.model.mjs +0 -0
- /package/{esm2020 → esm2022}/daterangepicker_v2/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/drawer/drawer-constants.mjs +0 -0
- /package/{esm2020 → esm2022}/drawer/index.mjs +0 -0
- /package/{esm2020 → esm2022}/drawer/mis-crystal-design-system-drawer.mjs +0 -0
- /package/{esm2020 → esm2022}/drawer/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/dropdown/index.mjs +0 -0
- /package/{esm2020 → esm2022}/dropdown/mis-crystal-design-system-dropdown.mjs +0 -0
- /package/{esm2020 → esm2022}/dropdown/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/dynamic-form/dynamic-form.namespace.mjs +0 -0
- /package/{esm2020 → esm2022}/dynamic-form/index.mjs +0 -0
- /package/{esm2020 → esm2022}/dynamic-form/mis-crystal-design-system-dynamic-form.mjs +0 -0
- /package/{esm2020 → esm2022}/dynamic-form/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/fab/index.mjs +0 -0
- /package/{esm2020 → esm2022}/fab/mis-crystal-design-system-fab.mjs +0 -0
- /package/{esm2020 → esm2022}/fab/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/filter/animations/slideFromRight.mjs +0 -0
- /package/{esm2020 → esm2022}/filter/index.mjs +0 -0
- /package/{esm2020 → esm2022}/filter/mis-crystal-design-system-filter.mjs +0 -0
- /package/{esm2020 → esm2022}/filter/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/input/index.mjs +0 -0
- /package/{esm2020 → esm2022}/input/mis-crystal-design-system-input.mjs +0 -0
- /package/{esm2020 → esm2022}/input/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/input-stepper/index.mjs +0 -0
- /package/{esm2020 → esm2022}/input-stepper/mis-crystal-design-system-input-stepper.mjs +0 -0
- /package/{esm2020 → esm2022}/input-stepper/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/loader/index.mjs +0 -0
- /package/{esm2020 → esm2022}/loader/mis-crystal-design-system-loader.mjs +0 -0
- /package/{esm2020 → esm2022}/loader/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/menu/index.mjs +0 -0
- /package/{esm2020 → esm2022}/menu/mis-crystal-design-system-menu.mjs +0 -0
- /package/{esm2020 → esm2022}/menu/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/mis-crystal-design-system.mjs +0 -0
- /package/{esm2020 → esm2022}/mobile-filter/index.mjs +0 -0
- /package/{esm2020 → esm2022}/mobile-filter/mis-crystal-design-system-mobile-filter.mjs +0 -0
- /package/{esm2020 → esm2022}/mobile-filter/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/modal/index.mjs +0 -0
- /package/{esm2020 → esm2022}/modal/mis-crystal-design-system-modal.mjs +0 -0
- /package/{esm2020 → esm2022}/modal/modal-constants.mjs +0 -0
- /package/{esm2020 → esm2022}/modal/modal-ref.mjs +0 -0
- /package/{esm2020 → esm2022}/modal/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/multi-select-dropdown/index.mjs +0 -0
- /package/{esm2020 → esm2022}/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.mjs +0 -0
- /package/{esm2020 → esm2022}/multi-select-dropdown/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/nested-multi-select-dropdown/index.mjs +0 -0
- /package/{esm2020 → esm2022}/nested-multi-select-dropdown/mis-crystal-design-system-nested-multi-select-dropdown.mjs +0 -0
- /package/{esm2020 → esm2022}/nested-multi-select-dropdown/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/phone-input/index.mjs +0 -0
- /package/{esm2020 → esm2022}/phone-input/mis-crystal-design-system-phone-input.mjs +0 -0
- /package/{esm2020 → esm2022}/phone-input/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/radio-button/index.mjs +0 -0
- /package/{esm2020 → esm2022}/radio-button/mis-crystal-design-system-radio-button.mjs +0 -0
- /package/{esm2020 → esm2022}/radio-button/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/ske-loader/index.mjs +0 -0
- /package/{esm2020 → esm2022}/ske-loader/mis-crystal-design-system-ske-loader.mjs +0 -0
- /package/{esm2020 → esm2022}/ske-loader/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/slider/index.mjs +0 -0
- /package/{esm2020 → esm2022}/slider/mis-crystal-design-system-slider.mjs +0 -0
- /package/{esm2020 → esm2022}/slider/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/snackbar/index.mjs +0 -0
- /package/{esm2020 → esm2022}/snackbar/mis-crystal-design-system-snackbar.mjs +0 -0
- /package/{esm2020 → esm2022}/snackbar/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/specificdatepicker/daterangepicker-constants.mjs +0 -0
- /package/{esm2020 → esm2022}/specificdatepicker/index.mjs +0 -0
- /package/{esm2020 → esm2022}/specificdatepicker/mis-crystal-design-system-specificdatepicker.mjs +0 -0
- /package/{esm2020 → esm2022}/specificdatepicker/models/sdp-config.model.mjs +0 -0
- /package/{esm2020 → esm2022}/specificdatepicker/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/star-rating/index.mjs +0 -0
- /package/{esm2020 → esm2022}/star-rating/mis-crystal-design-system-star-rating.mjs +0 -0
- /package/{esm2020 → esm2022}/star-rating/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/styles/index.mjs +0 -0
- /package/{esm2020 → esm2022}/styles/mis-crystal-design-system-styles.mjs +0 -0
- /package/{esm2020 → esm2022}/styles/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/switch/index.mjs +0 -0
- /package/{esm2020 → esm2022}/switch/mis-crystal-design-system-switch.mjs +0 -0
- /package/{esm2020 → esm2022}/switch/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/table/index.mjs +0 -0
- /package/{esm2020 → esm2022}/table/mis-crystal-design-system-table.mjs +0 -0
- /package/{esm2020 → esm2022}/table/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/timepicker/index.mjs +0 -0
- /package/{esm2020 → esm2022}/timepicker/mis-crystal-design-system-timepicker.mjs +0 -0
- /package/{esm2020 → esm2022}/timepicker/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/timepicker/time.namespace.mjs +0 -0
- /package/{esm2020 → esm2022}/timerangepicker/index.mjs +0 -0
- /package/{esm2020 → esm2022}/timerangepicker/mis-crystal-design-system-timerangepicker.mjs +0 -0
- /package/{esm2020 → esm2022}/timerangepicker/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/timerangepicker/timerange.namespace.mjs +0 -0
- /package/{esm2020 → esm2022}/toast/index.mjs +0 -0
- /package/{esm2020 → esm2022}/toast/mis-crystal-design-system-toast.mjs +0 -0
- /package/{esm2020 → esm2022}/toast/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/tooltip/index.mjs +0 -0
- /package/{esm2020 → esm2022}/tooltip/mis-crystal-design-system-tooltip.mjs +0 -0
- /package/{esm2020 → esm2022}/tooltip/models/tooltip.model.mjs +0 -0
- /package/{esm2020 → esm2022}/tooltip/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/mis-crystal-design-system-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/virtual-scroll/index.mjs +0 -0
- /package/{esm2020 → esm2022}/virtual-scroll/mis-crystal-design-system-virtual-scroll.mjs +0 -0
- /package/{esm2020 → esm2022}/virtual-scroll/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/virtual-scroll/virtual-scroll.constants.mjs +0 -0
- /package/{esm2020 → esm2022}/widgets/classes/widget-group.mjs +0 -0
- /package/{esm2020 → esm2022}/widgets/index.mjs +0 -0
- /package/{esm2020 → esm2022}/widgets/interfaces/widgets.model.mjs +0 -0
- /package/{esm2020 → esm2022}/widgets/mis-crystal-design-system-widgets.mjs +0 -0
- /package/{esm2020 → esm2022}/widgets/public_api.mjs +0 -0
- /package/{fesm2015 → fesm2022}/mis-crystal-design-system-styles.mjs +0 -0
- /package/{fesm2015 → fesm2022}/mis-crystal-design-system-styles.mjs.map +0 -0
- /package/{fesm2015 → fesm2022}/mis-crystal-design-system-utils.mjs +0 -0
- /package/{fesm2015 → fesm2022}/mis-crystal-design-system-utils.mjs.map +0 -0
- /package/{fesm2015 → fesm2022}/mis-crystal-design-system.mjs +0 -0
- /package/{fesm2015 → fesm2022}/mis-crystal-design-system.mjs.map +0 -0
|
@@ -1,484 +0,0 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Directive, Input, Output, Component, ViewChild, ViewChildren, NgModule } from '@angular/core';
|
|
3
|
-
import * as i1 from '@angular/cdk/overlay';
|
|
4
|
-
import { ConnectionPositionPair, OverlayConfig, OverlayModule } from '@angular/cdk/overlay';
|
|
5
|
-
import { TemplatePortal } from '@angular/cdk/portal';
|
|
6
|
-
import * as i3 from 'mis-crystal-design-system/tooltip';
|
|
7
|
-
import { ToolTipDirective, ToolTipModule } from 'mis-crystal-design-system/tooltip';
|
|
8
|
-
import dayjs from 'dayjs';
|
|
9
|
-
import timezone from 'dayjs/plugin/timezone';
|
|
10
|
-
import utc from 'dayjs/plugin/utc';
|
|
11
|
-
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
12
|
-
import * as i1$1 from '@angular/common';
|
|
13
|
-
import { CommonModule } from '@angular/common';
|
|
14
|
-
import * as i2 from '@angular/forms';
|
|
15
|
-
import { FormsModule } from '@angular/forms';
|
|
16
|
-
|
|
17
|
-
class TimepickerDirective {
|
|
18
|
-
constructor(templateRef, overlay, viewContainerRef) {
|
|
19
|
-
this.templateRef = templateRef;
|
|
20
|
-
this.overlay = overlay;
|
|
21
|
-
this.viewContainerRef = viewContainerRef;
|
|
22
|
-
this.openStatus = false;
|
|
23
|
-
this.statusEmitter = new EventEmitter();
|
|
24
|
-
}
|
|
25
|
-
set createOverlayOnInput(openStatus) {
|
|
26
|
-
this.openStatus = openStatus;
|
|
27
|
-
if (this.originEl && this.openStatus)
|
|
28
|
-
this.createOverlay(this.originEl);
|
|
29
|
-
}
|
|
30
|
-
;
|
|
31
|
-
createOverlay(origin) {
|
|
32
|
-
const positions = [
|
|
33
|
-
new ConnectionPositionPair({ originX: "start", originY: "bottom" }, { overlayX: "start", overlayY: "top" }, 0, 4),
|
|
34
|
-
new ConnectionPositionPair({ originX: "end", originY: "bottom" }, { overlayX: "end", overlayY: "top" }, 0, 4)
|
|
35
|
-
];
|
|
36
|
-
const overlayConfig = new OverlayConfig({
|
|
37
|
-
hasBackdrop: true,
|
|
38
|
-
backdropClass: "cdk-overlay-transparent-backdrop",
|
|
39
|
-
positionStrategy: this.overlay
|
|
40
|
-
.position()
|
|
41
|
-
//connecting the dropdown overlay to the input element
|
|
42
|
-
.flexibleConnectedTo(origin)
|
|
43
|
-
.withPositions([...positions])
|
|
44
|
-
.withPush(true)
|
|
45
|
-
});
|
|
46
|
-
this.overlayRef = this.overlay.create(overlayConfig);
|
|
47
|
-
const dropdownPortal = new TemplatePortal(this.templateRef, this.viewContainerRef);
|
|
48
|
-
this.overlayRef.attach(dropdownPortal);
|
|
49
|
-
this.overlayRef.backdropClick().subscribe(resp => {
|
|
50
|
-
this.openStatus = false;
|
|
51
|
-
this.statusEmitter.emit(false);
|
|
52
|
-
if (this.overlay) {
|
|
53
|
-
this.overlayRef.detach();
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
destroyOverlay() {
|
|
58
|
-
if (this.overlay) {
|
|
59
|
-
this.overlayRef.detach();
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
TimepickerDirective.ɵfac = function TimepickerDirective_Factory(t) { return new (t || TimepickerDirective)(i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); };
|
|
64
|
-
TimepickerDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: TimepickerDirective, selectors: [["", "libTimepicker", ""]], inputs: { originEl: "originEl", createOverlayOnInput: ["openStatus", "createOverlayOnInput"] }, outputs: { statusEmitter: "statusEmitter" } });
|
|
65
|
-
(function () {
|
|
66
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimepickerDirective, [{
|
|
67
|
-
type: Directive,
|
|
68
|
-
args: [{
|
|
69
|
-
selector: '[libTimepicker]'
|
|
70
|
-
}]
|
|
71
|
-
}], function () { return [{ type: i0.TemplateRef }, { type: i1.Overlay }, { type: i0.ViewContainerRef }]; }, { originEl: [{
|
|
72
|
-
type: Input,
|
|
73
|
-
args: ['originEl']
|
|
74
|
-
}], statusEmitter: [{
|
|
75
|
-
type: Output
|
|
76
|
-
}], createOverlayOnInput: [{
|
|
77
|
-
type: Input,
|
|
78
|
-
args: ['openStatus']
|
|
79
|
-
}] });
|
|
80
|
-
})();
|
|
81
|
-
|
|
82
|
-
const _c0 = ["input"];
|
|
83
|
-
const _c1 = ["timeInterval"];
|
|
84
|
-
function TimePickerComponent_ng_template_3_div_0_li_3_div_3_Template(rf, ctx) {
|
|
85
|
-
if (rf & 1) {
|
|
86
|
-
i0.ɵɵelement(0, "div", 12);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
const _c2 = function (a0) { return { highlight: a0 }; };
|
|
90
|
-
function TimePickerComponent_ng_template_3_div_0_li_3_Template(rf, ctx) {
|
|
91
|
-
if (rf & 1) {
|
|
92
|
-
const _r11 = i0.ɵɵgetCurrentView();
|
|
93
|
-
i0.ɵɵelementStart(0, "li", 9, 10);
|
|
94
|
-
i0.ɵɵlistener("click", function TimePickerComponent_ng_template_3_div_0_li_3_Template_li_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r11); const interval_r6 = restoredCtx.$implicit; const ctx_r10 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r10.onTimeSelect(interval_r6)); });
|
|
95
|
-
i0.ɵɵtext(2);
|
|
96
|
-
i0.ɵɵtemplate(3, TimePickerComponent_ng_template_3_div_0_li_3_div_3_Template, 1, 0, "div", 11);
|
|
97
|
-
i0.ɵɵelementEnd();
|
|
98
|
-
}
|
|
99
|
-
if (rf & 2) {
|
|
100
|
-
const interval_r6 = ctx.$implicit;
|
|
101
|
-
const i_r7 = ctx.index;
|
|
102
|
-
const ctx_r5 = i0.ɵɵnextContext(3);
|
|
103
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c2, i_r7 === ctx_r5.isHighlighted));
|
|
104
|
-
i0.ɵɵadvance(2);
|
|
105
|
-
i0.ɵɵtextInterpolate1(" ", interval_r6, " ");
|
|
106
|
-
i0.ɵɵadvance(1);
|
|
107
|
-
i0.ɵɵproperty("ngIf", interval_r6 === ctx_r5.chosenTime);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
const _c3 = function (a0) { return { width: a0 }; };
|
|
111
|
-
function TimePickerComponent_ng_template_3_div_0_Template(rf, ctx) {
|
|
112
|
-
if (rf & 1) {
|
|
113
|
-
i0.ɵɵelementStart(0, "div", 6)(1, "ul", null, 7);
|
|
114
|
-
i0.ɵɵtemplate(3, TimePickerComponent_ng_template_3_div_0_li_3_Template, 4, 5, "li", 8);
|
|
115
|
-
i0.ɵɵelementEnd()();
|
|
116
|
-
}
|
|
117
|
-
if (rf & 2) {
|
|
118
|
-
const ctx_r3 = i0.ɵɵnextContext(2);
|
|
119
|
-
i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(2, _c3, ctx_r3.dropdownWidth || ctx_r3.inputWidth));
|
|
120
|
-
i0.ɵɵadvance(3);
|
|
121
|
-
i0.ɵɵproperty("ngForOf", ctx_r3.timeIntervals);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
function TimePickerComponent_ng_template_3_Template(rf, ctx) {
|
|
125
|
-
if (rf & 1) {
|
|
126
|
-
i0.ɵɵtemplate(0, TimePickerComponent_ng_template_3_div_0_Template, 4, 4, "div", 5);
|
|
127
|
-
}
|
|
128
|
-
if (rf & 2) {
|
|
129
|
-
const ctx_r2 = i0.ɵɵnextContext();
|
|
130
|
-
i0.ɵɵproperty("ngIf", ctx_r2.openStatus);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
const _c4 = function (a0) { return { height: a0 }; };
|
|
134
|
-
const _c5 = function (a0) { return { "disable": a0 }; };
|
|
135
|
-
const _c6 = function (a0) { return { invalid: a0 }; };
|
|
136
|
-
dayjs.extend(utc);
|
|
137
|
-
dayjs.extend(timezone);
|
|
138
|
-
dayjs.extend(customParseFormat);
|
|
139
|
-
class TimePickerComponent {
|
|
140
|
-
constructor() {
|
|
141
|
-
this.openStatus = false;
|
|
142
|
-
this.isHighlighted = 0;
|
|
143
|
-
this.isInvalid = false;
|
|
144
|
-
this.timeIntervals = [];
|
|
145
|
-
this.shouldScroll = false;
|
|
146
|
-
this.userInputFlag = false;
|
|
147
|
-
this.givenTimeFlag = true;
|
|
148
|
-
this.clockFormat = 12;
|
|
149
|
-
this.timezone = "Asia/Kolkata";
|
|
150
|
-
this.height = "max-content";
|
|
151
|
-
this.inputWidth = "100px";
|
|
152
|
-
this.interval = 15;
|
|
153
|
-
this.dateAsEpoch = dayjs.tz(dayjs(), this.timezone).valueOf();
|
|
154
|
-
this.rangeValidity = true;
|
|
155
|
-
this.showTooltip = true;
|
|
156
|
-
this.dispayToolTip = this.showTooltip;
|
|
157
|
-
this.triggerChange = true;
|
|
158
|
-
this.disable = false;
|
|
159
|
-
this.timeEmitter = new EventEmitter();
|
|
160
|
-
}
|
|
161
|
-
// gets all the li elements from the dropdown and scrolls to the highlighted element
|
|
162
|
-
set timeIntervalRefs(intervals) {
|
|
163
|
-
intervals.forEach(interval => {
|
|
164
|
-
if (interval.nativeElement.classList[0] === "highlight") {
|
|
165
|
-
const highlighted = interval.nativeElement;
|
|
166
|
-
setTimeout(() => highlighted.scrollIntoView({ block: "center" }));
|
|
167
|
-
}
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
ngOnInit() {
|
|
171
|
-
if (!this.givenTime && !this.minTime) {
|
|
172
|
-
this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);
|
|
173
|
-
let chosenTimedayjs = this.getdayjs(this.chosenTime);
|
|
174
|
-
this.emitTime({
|
|
175
|
-
valid: !this.isInvalid,
|
|
176
|
-
time: this.chosenTime,
|
|
177
|
-
epoch: chosenTimedayjs.valueOf()
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
ngOnChanges() {
|
|
182
|
-
this.timeFormat = this.clockFormat === 12 ? "hh:mm a" : "HH:mm";
|
|
183
|
-
if (this.timeFormat) {
|
|
184
|
-
let chosenTimedayjs = this.getdayjs(this.chosenTime);
|
|
185
|
-
// if the first interval is >= the chosen time
|
|
186
|
-
// then only update the value of chosen time
|
|
187
|
-
// else it remains the same
|
|
188
|
-
if (this.firstInterval >= chosenTimedayjs.valueOf() && this.rangeValidity && !this.userInputFlag) {
|
|
189
|
-
this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);
|
|
190
|
-
chosenTimedayjs = this.getdayjs(this.chosenTime);
|
|
191
|
-
}
|
|
192
|
-
if ((this.givenTimeFlag && this.givenTime) || this.minTime) {
|
|
193
|
-
this.chosenTime = dayjs.tz(this.minTime || this.givenTime, this.timezone).format(this.timeFormat);
|
|
194
|
-
}
|
|
195
|
-
chosenTimedayjs = this.getdayjs(this.chosenTime);
|
|
196
|
-
if (!this.userInputFlag)
|
|
197
|
-
this.populateDropdown();
|
|
198
|
-
this.userInputFlag = false;
|
|
199
|
-
if (this.chosenTime) {
|
|
200
|
-
this.isInvalid = !this.checkTimeValidity(this.chosenTime.trim());
|
|
201
|
-
this.emitTime({
|
|
202
|
-
valid: !this.isInvalid,
|
|
203
|
-
time: this.chosenTime,
|
|
204
|
-
epoch: chosenTimedayjs.valueOf()
|
|
205
|
-
});
|
|
206
|
-
this.calculateClosestInterval(this.chosenTime);
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
emitTime(data) {
|
|
211
|
-
this.timeEmitter.emit(data);
|
|
212
|
-
}
|
|
213
|
-
// function to get dayjs object when time is given in string
|
|
214
|
-
getdayjs(time = '00:00') {
|
|
215
|
-
var _a, _b, _c, _d;
|
|
216
|
-
;
|
|
217
|
-
if (!time || typeof time !== 'string') {
|
|
218
|
-
throw new Error('Time must be a string');
|
|
219
|
-
}
|
|
220
|
-
let hours;
|
|
221
|
-
let minutes;
|
|
222
|
-
if (this.clockFormat === 24) {
|
|
223
|
-
hours = parseInt(time.split(':')[0]);
|
|
224
|
-
minutes = parseInt(time.split(':')[1]);
|
|
225
|
-
}
|
|
226
|
-
else {
|
|
227
|
-
const timeParts = time.split(' ');
|
|
228
|
-
const AM_PM = timeParts === null || timeParts === void 0 ? void 0 : timeParts[1];
|
|
229
|
-
hours = parseInt((_b = (_a = timeParts === null || timeParts === void 0 ? void 0 : timeParts[0]) === null || _a === void 0 ? void 0 : _a.split(':')) === null || _b === void 0 ? void 0 : _b[0]);
|
|
230
|
-
minutes = parseInt((_d = (_c = timeParts === null || timeParts === void 0 ? void 0 : timeParts[0]) === null || _c === void 0 ? void 0 : _c.split(':')) === null || _d === void 0 ? void 0 : _d[1]);
|
|
231
|
-
if ((AM_PM === null || AM_PM === void 0 ? void 0 : AM_PM.toUpperCase()) === 'PM' && hours !== 12) {
|
|
232
|
-
hours += 12;
|
|
233
|
-
}
|
|
234
|
-
else if ((AM_PM === null || AM_PM === void 0 ? void 0 : AM_PM.toUpperCase()) === 'AM' && hours === 12) {
|
|
235
|
-
hours = 0;
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
return dayjs.tz(this.dateAsEpoch, this.timezone).add(hours, 'h').add(minutes, 'm');
|
|
239
|
-
}
|
|
240
|
-
closeDropdown() {
|
|
241
|
-
this.dispayToolTip = false;
|
|
242
|
-
this.userInputFlag = false;
|
|
243
|
-
this.openStatus = false;
|
|
244
|
-
if (this.timepickerDirective)
|
|
245
|
-
this.timepickerDirective.destroyOverlay();
|
|
246
|
-
}
|
|
247
|
-
// toggle timepicker dropdown
|
|
248
|
-
openDropdown() {
|
|
249
|
-
this.dispayToolTip = true;
|
|
250
|
-
this.openStatus = true;
|
|
251
|
-
}
|
|
252
|
-
checkTimeValidity(time) {
|
|
253
|
-
const RE12 = /^(([0][1-9]|1[0-2]):([0-5][0-9])( )?(am|pm|AM|PM))$/i;
|
|
254
|
-
const RE24 = /^([01][0-9]|2[0-3]):[0-5][0-9]$/;
|
|
255
|
-
const RE = this.clockFormat === 12 ? RE12 : RE24;
|
|
256
|
-
const timedayjs = this.getdayjs(time);
|
|
257
|
-
let flag = false;
|
|
258
|
-
// if the first interval is set to the start of the day
|
|
259
|
-
// or a time is already provided to the component to show
|
|
260
|
-
// then we don't check its validity against the current time
|
|
261
|
-
if (this.minTime ||
|
|
262
|
-
this.givenTime ||
|
|
263
|
-
(this.firstInterval &&
|
|
264
|
-
dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat).valueOf() === dayjs.tz(dayjs(), this.timezone).startOf("day").format(this.timeFormat).valueOf())) {
|
|
265
|
-
flag = time.match(RE) ? true : false;
|
|
266
|
-
}
|
|
267
|
-
else {
|
|
268
|
-
flag = time.match(RE) && timedayjs.diff(dayjs.tz(dayjs(), this.timezone), "m") >= 0 ? true : false;
|
|
269
|
-
}
|
|
270
|
-
return flag;
|
|
271
|
-
}
|
|
272
|
-
// update chosen time as soon as the user clicks on an interval
|
|
273
|
-
onTimeSelect(time) {
|
|
274
|
-
this.isInvalid = !this.checkTimeValidity(time.trim());
|
|
275
|
-
if (!this.isInvalid) {
|
|
276
|
-
this.chosenTime = time;
|
|
277
|
-
this.calculateClosestInterval(this.chosenTime);
|
|
278
|
-
}
|
|
279
|
-
const timedayjs = this.getdayjs(time);
|
|
280
|
-
this.emitTime({
|
|
281
|
-
valid: !this.isInvalid,
|
|
282
|
-
time: time,
|
|
283
|
-
epoch: timedayjs.valueOf()
|
|
284
|
-
});
|
|
285
|
-
this.openStatus = false;
|
|
286
|
-
if (this.timepickerDirective)
|
|
287
|
-
this.timepickerDirective.destroyOverlay();
|
|
288
|
-
}
|
|
289
|
-
// checks validity of time on input change and calculates the closest interval
|
|
290
|
-
onTimeChange(time) {
|
|
291
|
-
this.isInvalid = !this.checkTimeValidity(time.trim());
|
|
292
|
-
if (!this.isInvalid) {
|
|
293
|
-
this.userInputFlag = true;
|
|
294
|
-
this.openStatus = false;
|
|
295
|
-
if (this.timepickerDirective)
|
|
296
|
-
this.timepickerDirective.destroyOverlay();
|
|
297
|
-
this.calculateClosestInterval(time);
|
|
298
|
-
}
|
|
299
|
-
const timedayjs = this.getdayjs(time);
|
|
300
|
-
this.emitTime({
|
|
301
|
-
valid: !this.isInvalid,
|
|
302
|
-
time: time,
|
|
303
|
-
epoch: timedayjs.valueOf()
|
|
304
|
-
});
|
|
305
|
-
}
|
|
306
|
-
calculateClosestInterval(time) {
|
|
307
|
-
let roundedEpoch;
|
|
308
|
-
// Converting time and date to a dayjs object
|
|
309
|
-
const chosenDate = dayjs.tz(this.dateAsEpoch, this.timezone).format("DD-MM-YYYY"); // 05-01-2024
|
|
310
|
-
const parsedTimeWithDate = dayjs.tz(`${chosenDate} ${time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);
|
|
311
|
-
// Converting dayjs object to epoch
|
|
312
|
-
const chosenTimeEpoch = parsedTimeWithDate.valueOf();
|
|
313
|
-
const offset = this.interval - (dayjs.tz(chosenTimeEpoch, this.timezone).minute() % this.interval);
|
|
314
|
-
if (this.minTime && !this.givenTime) {
|
|
315
|
-
this.isHighlighted = 0;
|
|
316
|
-
return;
|
|
317
|
-
}
|
|
318
|
-
roundedEpoch = offset >= this.interval / 2 ? (dayjs.tz(chosenTimeEpoch, this.timezone).subtract(this.interval - offset, "m")).valueOf() : (dayjs.tz(chosenTimeEpoch, this.timezone).add(offset, "m")).valueOf();
|
|
319
|
-
// finding the index of element that needs to be highlighted
|
|
320
|
-
if (chosenTimeEpoch > dayjs.tz(this.dateAsEpoch, this.timezone).endOf("day").subtract(this.interval, "m").valueOf()) {
|
|
321
|
-
this.isHighlighted = this.timeIntervals.length - 1;
|
|
322
|
-
}
|
|
323
|
-
else {
|
|
324
|
-
const roundedEpochdayjs = dayjs.tz(roundedEpoch, this.timezone);
|
|
325
|
-
this.isHighlighted = this.timeIntervals.findIndex(interval => {
|
|
326
|
-
const intervalObj = dayjs.tz(`${chosenDate} ${interval}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);
|
|
327
|
-
return intervalObj.isSame(roundedEpochdayjs);
|
|
328
|
-
});
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
// populates the dropdown according to the first interval received
|
|
332
|
-
populateDropdown() {
|
|
333
|
-
this.timeIntervals = [];
|
|
334
|
-
// if picker is used as an individual component
|
|
335
|
-
if (!this.firstInterval) {
|
|
336
|
-
// firstInterval is initialised according to the current time
|
|
337
|
-
// if the date is same as the current date
|
|
338
|
-
if (dayjs.tz(this.dateAsEpoch, this.timezone).format("DD-MM-YYYY") === dayjs.tz(dayjs(), this.timezone).format("DD-MM-YYYY") && !this.minTime) {
|
|
339
|
-
const offset = this.interval - (dayjs.tz(dayjs(), this.timezone).minute() % this.interval);
|
|
340
|
-
this.firstInterval = dayjs.tz(dayjs(), this.timezone).add(offset, "m").valueOf();
|
|
341
|
-
}
|
|
342
|
-
// if minimum time to show is provided
|
|
343
|
-
else if (this.minTime) {
|
|
344
|
-
const offset = this.interval - (dayjs.tz(this.minTime, this.timezone).minute() % this.interval);
|
|
345
|
-
this.firstInterval = dayjs.tz(this.minTime, this.timezone).add(offset, "m").valueOf();
|
|
346
|
-
}
|
|
347
|
-
// else the firstInterval is initialised as start of day
|
|
348
|
-
else {
|
|
349
|
-
this.firstInterval = dayjs.tz(dayjs(), this.timezone).startOf("day").valueOf();
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
if (this.givenTime && this.givenTimeFlag) {
|
|
353
|
-
this.firstInterval = dayjs.tz(this.givenTime, this.timezone).startOf('d').valueOf();
|
|
354
|
-
this.givenTimeFlag = false;
|
|
355
|
-
}
|
|
356
|
-
const dateAsString = dayjs.tz(this.dateAsEpoch, this.timezone).format('DD-MM-YYYY');
|
|
357
|
-
const intervalAsString = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);
|
|
358
|
-
let start = dayjs.tz(`${dateAsString} ${intervalAsString}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);
|
|
359
|
-
const end = dayjs.tz(this.dateAsEpoch, this.timezone).endOf('d');
|
|
360
|
-
while (start.valueOf() < end.valueOf()) {
|
|
361
|
-
this.timeIntervals.push(start.format(this.timeFormat));
|
|
362
|
-
start = start.add(this.interval, "m");
|
|
363
|
-
}
|
|
364
|
-
// if the start time is equal to the interval just before midnight
|
|
365
|
-
// and the start date = end date
|
|
366
|
-
// push 11:59pm only
|
|
367
|
-
if (this.timeIntervals.length === 0) {
|
|
368
|
-
this.chosenTime = dayjs.tz(dayjs(), this.timezone).endOf("d").format(this.timeFormat);
|
|
369
|
-
this.timeIntervals.push(dayjs.tz(dayjs(), this.timezone).endOf("d").format(this.timeFormat));
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
ngOnDestroy() {
|
|
373
|
-
if (this.tooltipDirective)
|
|
374
|
-
this.tooltipDirective.hideToolTip();
|
|
375
|
-
}
|
|
376
|
-
}
|
|
377
|
-
TimePickerComponent.ɵfac = function TimePickerComponent_Factory(t) { return new (t || TimePickerComponent)(); };
|
|
378
|
-
TimePickerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TimePickerComponent, selectors: [["mis-timepicker"]], viewQuery: function TimePickerComponent_Query(rf, ctx) {
|
|
379
|
-
if (rf & 1) {
|
|
380
|
-
i0.ɵɵviewQuery(_c0, 7);
|
|
381
|
-
i0.ɵɵviewQuery(TimepickerDirective, 5);
|
|
382
|
-
i0.ɵɵviewQuery(ToolTipDirective, 5);
|
|
383
|
-
i0.ɵɵviewQuery(_c1, 5);
|
|
384
|
-
}
|
|
385
|
-
if (rf & 2) {
|
|
386
|
-
let _t;
|
|
387
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.input = _t.first);
|
|
388
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.timepickerDirective = _t.first);
|
|
389
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tooltipDirective = _t.first);
|
|
390
|
-
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.timeIntervalRefs = _t);
|
|
391
|
-
}
|
|
392
|
-
}, inputs: { clockFormat: "clockFormat", timezone: "timezone", height: "height", inputWidth: "inputWidth", dropdownWidth: "dropdownWidth", interval: "interval", dateAsEpoch: "dateAsEpoch", firstInterval: "firstInterval", rangeValidity: "rangeValidity", showTooltip: "showTooltip", givenTime: "givenTime", minTime: "minTime", triggerChange: "triggerChange", disable: "disable" }, outputs: { timeEmitter: "timeEmitter" }, features: [i0.ɵɵNgOnChangesFeature], decls: 5, vars: 19, consts: [[1, "timepicker-container", 3, "ngStyle", "ngClass"], ["type", "text", "misToolTip", "", "cdkOverlayOrigin", "", 1, "h7", 3, "ngModel", "ngClass", "ngStyle", "showToolTip", "text", "position", "showOnHover", "ngModelChange", "click"], ["input", ""], ["libDropdownScroll", "", "libTimepicker", "", 3, "originEl", "openStatus", "statusEmitter"], ["dropdownContainer", ""], ["class", "timepicker-dropdown", 3, "ngStyle", 4, "ngIf"], [1, "timepicker-dropdown", 3, "ngStyle"], ["dropdown", ""], [3, "ngClass", "click", 4, "ngFor", "ngForOf"], [3, "ngClass", "click"], ["timeInterval", ""], ["class", "ic-ui-check-24 selected-icon", 4, "ngIf"], [1, "ic-ui-check-24", "selected-icon"]], template: function TimePickerComponent_Template(rf, ctx) {
|
|
393
|
-
if (rf & 1) {
|
|
394
|
-
i0.ɵɵelementStart(0, "div", 0)(1, "input", 1, 2);
|
|
395
|
-
i0.ɵɵlistener("ngModelChange", function TimePickerComponent_Template_input_ngModelChange_1_listener($event) { return ctx.chosenTime = $event; })("ngModelChange", function TimePickerComponent_Template_input_ngModelChange_1_listener() { return ctx.onTimeChange(ctx.chosenTime); })("click", function TimePickerComponent_Template_input_click_1_listener() { return ctx.openDropdown(); });
|
|
396
|
-
i0.ɵɵelementEnd();
|
|
397
|
-
i0.ɵɵtemplate(3, TimePickerComponent_ng_template_3_Template, 1, 1, "ng-template", 3, 4, i0.ɵɵtemplateRefExtractor);
|
|
398
|
-
i0.ɵɵlistener("statusEmitter", function TimePickerComponent_Template_ng_template_statusEmitter_3_listener() { return ctx.closeDropdown(); });
|
|
399
|
-
i0.ɵɵelementEnd();
|
|
400
|
-
}
|
|
401
|
-
if (rf & 2) {
|
|
402
|
-
const _r0 = i0.ɵɵreference(2);
|
|
403
|
-
i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(11, _c4, ctx.height))("ngClass", i0.ɵɵpureFunction1(13, _c5, ctx.disable));
|
|
404
|
-
i0.ɵɵadvance(1);
|
|
405
|
-
i0.ɵɵproperty("ngModel", ctx.chosenTime)("ngClass", i0.ɵɵpureFunction1(15, _c6, ctx.isInvalid || !ctx.rangeValidity))("ngStyle", i0.ɵɵpureFunction1(17, _c3, ctx.inputWidth))("showToolTip", ctx.showTooltip && (ctx.isInvalid || !ctx.rangeValidity) && ctx.dispayToolTip)("text", "Invalid Time")("position", "top")("showOnHover", false);
|
|
406
|
-
i0.ɵɵadvance(2);
|
|
407
|
-
i0.ɵɵproperty("originEl", _r0)("openStatus", ctx.openStatus);
|
|
408
|
-
}
|
|
409
|
-
}, dependencies: [i1$1.NgClass, i1$1.NgForOf, i1$1.NgIf, i1$1.NgStyle, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgModel, i3.ToolTipDirective, i1.CdkOverlayOrigin, TimepickerDirective], styles: [".h1[_ngcontent-%COMP%]{font-size:40px;font-weight:400;letter-spacing:0px;line-height:48px}.h2[_ngcontent-%COMP%]{font-size:32px;font-weight:400;letter-spacing:0px;line-height:40px}.h3[_ngcontent-%COMP%]{font-size:28px;font-weight:400;letter-spacing:0px;line-height:36px}.h4[_ngcontent-%COMP%]{font-size:24px;font-weight:400;letter-spacing:0px;line-height:32px}.h5-b[_ngcontent-%COMP%]{font-size:20px;font-weight:700;letter-spacing:.25px;line-height:28px}.h5[_ngcontent-%COMP%]{font-size:20px;font-weight:400;letter-spacing:.15px;line-height:28px}.h6-b[_ngcontent-%COMP%]{font-size:16px;font-weight:700;letter-spacing:0px;line-height:24px}.h6[_ngcontent-%COMP%]{font-size:16px;font-weight:400;letter-spacing:0px;line-height:24px}.p[_ngcontent-%COMP%]{font-size:16px;font-weight:400;letter-spacing:0px;line-height:180%}.h7-b[_ngcontent-%COMP%]{font-size:14px;font-weight:700;letter-spacing:.25px;line-height:20px}.h7[_ngcontent-%COMP%]{font-size:14px;font-weight:400;letter-spacing:.2px;line-height:20px}.h8-b[_ngcontent-%COMP%]{font-size:12px;font-weight:700;letter-spacing:.25px;line-height:18px}.h8[_ngcontent-%COMP%]{font-size:12px;font-weight:400;letter-spacing:.2px;line-height:18px}.h9[_ngcontent-%COMP%]{font-size:10px;font-weight:400;letter-spacing:0px;line-height:15px}.btn-lg-b[_ngcontent-%COMP%]{font-size:16px;font-weight:700;letter-spacing:.5px;line-height:24px}.btn-lg[_ngcontent-%COMP%]{font-size:16px;font-weight:400;letter-spacing:.2px;line-height:24px}.btn-sm[_ngcontent-%COMP%]{font-size:14px;font-weight:400;letter-spacing:.25px;line-height:20px}.btn-link[_ngcontent-%COMP%]{font-size:16px;font-weight:400;letter-spacing:0px;line-height:24px}.display-1[_ngcontent-%COMP%]{font-size:48px;font-weight:400;letter-spacing:0px;line-height:56px}.display-2[_ngcontent-%COMP%]{font-size:14px;font-weight:400;letter-spacing:.5px;line-height:20px}*[_ngcontent-%COMP%]{box-sizing:border-box;font-family:Lato}.timepicker-container[_ngcontent-%COMP%]{display:inline-block;position:relative}input[_ngcontent-%COMP%]{text-align:center;border:none;border-bottom:1px solid #e0e0e0;outline:none;height:100%;width:100px;padding:4px 16px}input[_ngcontent-%COMP%]:hover{background:#f5f7fc}input[_ngcontent-%COMP%]:focus, input[_ngcontent-%COMP%]:active{background:#e6ebf7;border-bottom:1px solid #0937b2}.timepicker-dropdown[_ngcontent-%COMP%]{position:absolute;top:calc(100% + 4px);left:0;max-height:200px;overflow-y:auto;border:1px solid #e0e0e0;box-shadow:0 12px 24px #0000001f,0 4px 8px #0000001f;border-radius:4px;padding:8px;background:#FFFFFF}.timepicker-dropdown[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.timepicker-dropdown[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{margin:0;padding:0}.timepicker-dropdown[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{text-align:start;list-style:none;padding:6px 12px;cursor:pointer;font-size:14px;color:#181f33;display:flex;justify-content:space-between;align-items:center}.timepicker-dropdown[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:hover{background:#f5f7fc;border-radius:6px}.timepicker-dropdown[_ngcontent-%COMP%] li[_ngcontent-%COMP%] .selected-icon[_ngcontent-%COMP%]{font-weight:900}.highlight[_ngcontent-%COMP%]{background-color:#f5f7fc;border-radius:6px}.invalid[_ngcontent-%COMP%]{background:#fae1ea!important;border-bottom:1px solid #b00020!important}.disable[_ngcontent-%COMP%]{pointer-events:none!important;opacity:.5!important}"] });
|
|
410
|
-
(function () {
|
|
411
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimePickerComponent, [{
|
|
412
|
-
type: Component,
|
|
413
|
-
args: [{ selector: "mis-timepicker", template: "<div class=\"timepicker-container\" [ngStyle]=\"{ height: height }\" [ngClass]=\"{'disable': disable}\">\n <input\n type=\"text\"\n [(ngModel)]=\"chosenTime\"\n (ngModelChange)=\"onTimeChange(chosenTime)\"\n [ngClass]=\"{ invalid: isInvalid || !rangeValidity }\"\n [ngStyle]=\"{ width: inputWidth }\"\n (click)=\"openDropdown()\"\n misToolTip\n [showToolTip]=\"showTooltip && (isInvalid || !rangeValidity) && dispayToolTip\"\n [text]=\"'Invalid Time'\"\n [position]=\"'top'\"\n [showOnHover]=\"false\"\n #input\n cdkOverlayOrigin\n class=\"h7\"\n />\n\n <ng-template #dropdownContainer libDropdownScroll libTimepicker [originEl]=\"input\" [openStatus]=\"openStatus\" (statusEmitter)=\"closeDropdown()\">\n <div *ngIf=\"openStatus\" class=\"timepicker-dropdown\" [ngStyle]=\"{ width: dropdownWidth || inputWidth }\">\n <ul #dropdown>\n <li #timeInterval (click)=\"onTimeSelect(interval)\" *ngFor=\"let interval of timeIntervals; index as i\" [ngClass]=\"{ highlight: i === isHighlighted }\">\n {{ interval }}\n <div class=\"ic-ui-check-24 selected-icon\" *ngIf=\"interval === chosenTime\"></div>\n </li>\n </ul>\n </div>\n </ng-template>\n</div>\n", styles: [".h1{font-size:40px;font-weight:400;letter-spacing:0px;line-height:48px}.h2{font-size:32px;font-weight:400;letter-spacing:0px;line-height:40px}.h3{font-size:28px;font-weight:400;letter-spacing:0px;line-height:36px}.h4{font-size:24px;font-weight:400;letter-spacing:0px;line-height:32px}.h5-b{font-size:20px;font-weight:700;letter-spacing:.25px;line-height:28px}.h5{font-size:20px;font-weight:400;letter-spacing:.15px;line-height:28px}.h6-b{font-size:16px;font-weight:700;letter-spacing:0px;line-height:24px}.h6{font-size:16px;font-weight:400;letter-spacing:0px;line-height:24px}.p{font-size:16px;font-weight:400;letter-spacing:0px;line-height:180%}.h7-b{font-size:14px;font-weight:700;letter-spacing:.25px;line-height:20px}.h7{font-size:14px;font-weight:400;letter-spacing:.2px;line-height:20px}.h8-b{font-size:12px;font-weight:700;letter-spacing:.25px;line-height:18px}.h8{font-size:12px;font-weight:400;letter-spacing:.2px;line-height:18px}.h9{font-size:10px;font-weight:400;letter-spacing:0px;line-height:15px}.btn-lg-b{font-size:16px;font-weight:700;letter-spacing:.5px;line-height:24px}.btn-lg{font-size:16px;font-weight:400;letter-spacing:.2px;line-height:24px}.btn-sm{font-size:14px;font-weight:400;letter-spacing:.25px;line-height:20px}.btn-link{font-size:16px;font-weight:400;letter-spacing:0px;line-height:24px}.display-1{font-size:48px;font-weight:400;letter-spacing:0px;line-height:56px}.display-2{font-size:14px;font-weight:400;letter-spacing:.5px;line-height:20px}*{box-sizing:border-box;font-family:Lato}.timepicker-container{display:inline-block;position:relative}input{text-align:center;border:none;border-bottom:1px solid #e0e0e0;outline:none;height:100%;width:100px;padding:4px 16px}input:hover{background:#f5f7fc}input:focus,input:active{background:#e6ebf7;border-bottom:1px solid #0937b2}.timepicker-dropdown{position:absolute;top:calc(100% + 4px);left:0;max-height:200px;overflow-y:auto;border:1px solid #e0e0e0;box-shadow:0 12px 24px #0000001f,0 4px 8px #0000001f;border-radius:4px;padding:8px;background:#FFFFFF}.timepicker-dropdown::-webkit-scrollbar{display:none}.timepicker-dropdown ul{margin:0;padding:0}.timepicker-dropdown li{text-align:start;list-style:none;padding:6px 12px;cursor:pointer;font-size:14px;color:#181f33;display:flex;justify-content:space-between;align-items:center}.timepicker-dropdown li:hover{background:#f5f7fc;border-radius:6px}.timepicker-dropdown li .selected-icon{font-weight:900}.highlight{background-color:#f5f7fc;border-radius:6px}.invalid{background:#fae1ea!important;border-bottom:1px solid #b00020!important}.disable{pointer-events:none!important;opacity:.5!important}\n"] }]
|
|
414
|
-
}], function () { return []; }, { clockFormat: [{
|
|
415
|
-
type: Input
|
|
416
|
-
}], timezone: [{
|
|
417
|
-
type: Input
|
|
418
|
-
}], height: [{
|
|
419
|
-
type: Input
|
|
420
|
-
}], inputWidth: [{
|
|
421
|
-
type: Input
|
|
422
|
-
}], dropdownWidth: [{
|
|
423
|
-
type: Input
|
|
424
|
-
}], interval: [{
|
|
425
|
-
type: Input
|
|
426
|
-
}], dateAsEpoch: [{
|
|
427
|
-
type: Input
|
|
428
|
-
}], firstInterval: [{
|
|
429
|
-
type: Input
|
|
430
|
-
}], rangeValidity: [{
|
|
431
|
-
type: Input
|
|
432
|
-
}], showTooltip: [{
|
|
433
|
-
type: Input
|
|
434
|
-
}], givenTime: [{
|
|
435
|
-
type: Input
|
|
436
|
-
}], minTime: [{
|
|
437
|
-
type: Input
|
|
438
|
-
}], triggerChange: [{
|
|
439
|
-
type: Input
|
|
440
|
-
}], disable: [{
|
|
441
|
-
type: Input
|
|
442
|
-
}], timeEmitter: [{
|
|
443
|
-
type: Output
|
|
444
|
-
}], input: [{
|
|
445
|
-
type: ViewChild,
|
|
446
|
-
args: ["input", { static: true }]
|
|
447
|
-
}], timepickerDirective: [{
|
|
448
|
-
type: ViewChild,
|
|
449
|
-
args: [TimepickerDirective]
|
|
450
|
-
}], tooltipDirective: [{
|
|
451
|
-
type: ViewChild,
|
|
452
|
-
args: [ToolTipDirective]
|
|
453
|
-
}], timeIntervalRefs: [{
|
|
454
|
-
type: ViewChildren,
|
|
455
|
-
args: ["timeInterval"]
|
|
456
|
-
}] });
|
|
457
|
-
})();
|
|
458
|
-
|
|
459
|
-
class TimePickerModule {
|
|
460
|
-
static forRoot() {
|
|
461
|
-
return { ngModule: TimePickerModule, providers: [] };
|
|
462
|
-
}
|
|
463
|
-
}
|
|
464
|
-
TimePickerModule.ɵfac = function TimePickerModule_Factory(t) { return new (t || TimePickerModule)(); };
|
|
465
|
-
TimePickerModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: TimePickerModule });
|
|
466
|
-
TimePickerModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, FormsModule, ToolTipModule, OverlayModule] });
|
|
467
|
-
(function () {
|
|
468
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimePickerModule, [{
|
|
469
|
-
type: NgModule,
|
|
470
|
-
args: [{
|
|
471
|
-
declarations: [TimePickerComponent, TimepickerDirective],
|
|
472
|
-
imports: [CommonModule, FormsModule, ToolTipModule, OverlayModule],
|
|
473
|
-
exports: [TimePickerComponent]
|
|
474
|
-
}]
|
|
475
|
-
}], null, null);
|
|
476
|
-
})();
|
|
477
|
-
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(TimePickerModule, { declarations: [TimePickerComponent, TimepickerDirective], imports: [CommonModule, FormsModule, ToolTipModule, OverlayModule], exports: [TimePickerComponent] }); })();
|
|
478
|
-
|
|
479
|
-
/**
|
|
480
|
-
* Generated bundle index. Do not edit.
|
|
481
|
-
*/
|
|
482
|
-
|
|
483
|
-
export { TimePickerComponent, TimePickerModule };
|
|
484
|
-
//# sourceMappingURL=mis-crystal-design-system-timepicker.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mis-crystal-design-system-timepicker.mjs","sources":["../../../projects/mis-components/timepicker/timepicker.directive.ts","../../../projects/mis-components/timepicker/timepicker.component.html","../../../projects/mis-components/timepicker/timepicker.component.ts","../../../projects/mis-components/timepicker/timepicker.module.ts","../../../projects/mis-components/timepicker/mis-crystal-design-system-timepicker.ts"],"sourcesContent":["import { Directive, Output, TemplateRef } from '@angular/core';\nimport { EventEmitter, Input, ViewContainerRef } from \"@angular/core\";\nimport { ConnectionPositionPair, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { TemplatePortal } from \"@angular/cdk/portal\";\n\n@Directive({\n selector: '[libTimepicker]'\n})\nexport class TimepickerDirective {\n private openStatus: boolean = false;\n @Input('originEl') originEl : any;\n @Output() statusEmitter = new EventEmitter<boolean>(); \n\n @Input('openStatus') set createOverlayOnInput(openStatus){\n this.openStatus = openStatus;\n if(this.originEl && this.openStatus) this.createOverlay(this.originEl);\n }; \n private overlayRef!: OverlayRef;\n constructor(private templateRef: TemplateRef<Element>, private overlay: Overlay, private viewContainerRef: ViewContainerRef) {}\n\n createOverlay(origin: any): void {\n const positions = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"bottom\" }, { overlayX: \"start\", overlayY: \"top\" }, 0, 4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"bottom\" }, { overlayX: \"end\", overlayY: \"top\" }, 0, 4)\n ];\n\n const overlayConfig = new OverlayConfig({\n hasBackdrop: true,\n backdropClass: \"cdk-overlay-transparent-backdrop\",\n positionStrategy: this.overlay\n .position()\n //connecting the dropdown overlay to the input element\n .flexibleConnectedTo(origin)\n .withPositions([...positions])\n .withPush(true)\n });\n\n this.overlayRef = this.overlay.create(overlayConfig);\n const dropdownPortal = new TemplatePortal(this.templateRef, this.viewContainerRef);\n this.overlayRef.attach(dropdownPortal);\n this.overlayRef.backdropClick().subscribe(resp => {\n this.openStatus = false;\n this.statusEmitter.emit(false);\n if(this.overlay){\n this.overlayRef.detach();\n }\n });\n }\n\n destroyOverlay(){\n if(this.overlay){\n this.overlayRef.detach();\n }\n }\n \n}\n","<div class=\"timepicker-container\" [ngStyle]=\"{ height: height }\" [ngClass]=\"{'disable': disable}\">\n <input\n type=\"text\"\n [(ngModel)]=\"chosenTime\"\n (ngModelChange)=\"onTimeChange(chosenTime)\"\n [ngClass]=\"{ invalid: isInvalid || !rangeValidity }\"\n [ngStyle]=\"{ width: inputWidth }\"\n (click)=\"openDropdown()\"\n misToolTip\n [showToolTip]=\"showTooltip && (isInvalid || !rangeValidity) && dispayToolTip\"\n [text]=\"'Invalid Time'\"\n [position]=\"'top'\"\n [showOnHover]=\"false\"\n #input\n cdkOverlayOrigin\n class=\"h7\"\n />\n\n <ng-template #dropdownContainer libDropdownScroll libTimepicker [originEl]=\"input\" [openStatus]=\"openStatus\" (statusEmitter)=\"closeDropdown()\">\n <div *ngIf=\"openStatus\" class=\"timepicker-dropdown\" [ngStyle]=\"{ width: dropdownWidth || inputWidth }\">\n <ul #dropdown>\n <li #timeInterval (click)=\"onTimeSelect(interval)\" *ngFor=\"let interval of timeIntervals; index as i\" [ngClass]=\"{ highlight: i === isHighlighted }\">\n {{ interval }}\n <div class=\"ic-ui-check-24 selected-icon\" *ngIf=\"interval === chosenTime\"></div>\n </li>\n </ul>\n </div>\n </ng-template>\n</div>\n","import { Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, ViewChild, ViewChildren } from \"@angular/core\";\nimport { ITime } from \"./time.namespace\";\nimport { TimepickerDirective } from \"./timepicker.directive\";\nimport { ToolTipDirective } from \"mis-crystal-design-system/tooltip\";\n\nimport dayjs from 'dayjs';\nimport timezone from 'dayjs/plugin/timezone';\nimport utc from 'dayjs/plugin/utc';\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(customParseFormat);\n\n\n@Component({\n selector: \"mis-timepicker\",\n templateUrl: \"./timepicker.component.html\",\n styleUrls: [\"./timepicker.component.scss\"]\n})\nexport class TimePickerComponent implements OnInit, OnChanges, OnDestroy {\n currTime!: string;\n chosenTime: string;\n openStatus: boolean = false;\n isHighlighted: number = 0;\n isInvalid: boolean = false;\n timeIntervals: string[] = [];\n shouldScroll: boolean = false;\n userInputFlag: boolean = false;\n givenTimeFlag: boolean = true;\n @Input() clockFormat: number = 12;\n timeFormat!: string;\n \n @Input() timezone: string = \"Asia/Kolkata\";\n @Input() height: string = \"max-content\";\n @Input() inputWidth: string = \"100px\";\n @Input() dropdownWidth?: string;\n @Input() interval: number = 15;\n @Input() dateAsEpoch: number = dayjs.tz(dayjs(), this.timezone).valueOf();\n @Input() firstInterval!: number;\n @Input() rangeValidity: boolean = true;\n @Input() showTooltip: boolean = true;\n dispayToolTip: boolean = this.showTooltip;\n @Input() givenTime: number;\n @Input() minTime?: number;\n @Input() triggerChange: boolean = true;\n @Input() disable: boolean = false;\n @Output() timeEmitter = new EventEmitter<ITime>();\n @ViewChild(\"input\", { static: true }) input: ElementRef;\n @ViewChild(TimepickerDirective) timepickerDirective: TimepickerDirective;\n @ViewChild(ToolTipDirective) tooltipDirective: ToolTipDirective;\n\n // gets all the li elements from the dropdown and scrolls to the highlighted element\n @ViewChildren(\"timeInterval\") set timeIntervalRefs(intervals) {\n intervals.forEach(interval => {\n if (interval.nativeElement.classList[0] === \"highlight\") {\n const highlighted = interval.nativeElement;\n setTimeout(() => highlighted.scrollIntoView({ block: \"center\" }));\n }\n });\n }\n\n constructor(){}\n ngOnInit(): void {\n if(!this.givenTime && !this.minTime) {\n this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n let chosenTimedayjs = this.getdayjs(this.chosenTime);\n this.emitTime({\n valid: !this.isInvalid,\n time: this.chosenTime,\n epoch: chosenTimedayjs.valueOf()\n });\n }\n }\n\n ngOnChanges(): void {\n this.timeFormat = this.clockFormat === 12 ? \"hh:mm a\" : \"HH:mm\";\n\n if (this.timeFormat) {\n let chosenTimedayjs = this.getdayjs(this.chosenTime);\n \n // if the first interval is >= the chosen time\n // then only update the value of chosen time\n // else it remains the same\n if (this.firstInterval >= chosenTimedayjs.valueOf() && this.rangeValidity && !this.userInputFlag) {\n this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n chosenTimedayjs = this.getdayjs(this.chosenTime)\n }\n\n if((this.givenTimeFlag && this.givenTime) || this.minTime ) {\n this.chosenTime = dayjs.tz(this.minTime || this.givenTime, this.timezone).format(this.timeFormat);\n }\n chosenTimedayjs = this.getdayjs(this.chosenTime)\n\n if (!this.userInputFlag) this.populateDropdown();\n this.userInputFlag = false;\n \n if(this.chosenTime) {\n this.isInvalid = !this.checkTimeValidity(this.chosenTime.trim());\n this.emitTime({\n valid: !this.isInvalid,\n time: this.chosenTime,\n epoch: chosenTimedayjs.valueOf()\n });\n this.calculateClosestInterval(this.chosenTime);\n }\n }\n }\n\n emitTime(data: ITime): void {\n this.timeEmitter.emit(data);\n }\n\n // function to get dayjs object when time is given in string\n getdayjs(time: string = '00:00'){;\n if(!time || typeof time !== 'string') {\n throw new Error('Time must be a string');\n }\n\n let hours: number;\n let minutes: number;\n\n if(this.clockFormat === 24) {\n hours = parseInt(time.split(':')[0]);\n minutes = parseInt(time.split(':')[1]);\n } else {\n const timeParts = time.split(' ');\n const AM_PM = timeParts?.[1];\n hours = parseInt(timeParts?.[0]?.split(':')?.[0]);\n minutes = parseInt(timeParts?.[0]?.split(':')?.[1]);\n\n if(AM_PM?.toUpperCase() === 'PM' && hours !== 12) {\n hours += 12;\n } else if(AM_PM?.toUpperCase() === 'AM' && hours === 12) {\n hours = 0;\n }\n }\n\n return dayjs.tz(this.dateAsEpoch, this.timezone).add(hours, 'h').add(minutes, 'm');\n }\n\n closeDropdown() {\n this.dispayToolTip = false;\n this.userInputFlag = false;\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n }\n\n // toggle timepicker dropdown\n openDropdown(): void {\n this.dispayToolTip = true;\n this.openStatus = true;\n }\n\n checkTimeValidity(time: string): boolean {\n const RE12 = /^(([0][1-9]|1[0-2]):([0-5][0-9])( )?(am|pm|AM|PM))$/i;\n const RE24 = /^([01][0-9]|2[0-3]):[0-5][0-9]$/;\n const RE = this.clockFormat === 12 ? RE12 : RE24;\n\n const timedayjs = this.getdayjs(time);\n let flag: boolean = false;\n\n // if the first interval is set to the start of the day\n // or a time is already provided to the component to show\n // then we don't check its validity against the current time\n if (\n this.minTime || \n this.givenTime ||\n (this.firstInterval &&\n dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat).valueOf() === dayjs.tz(dayjs(), this.timezone).startOf(\"day\").format(this.timeFormat).valueOf())\n ) {\n flag = time.match(RE) ? true : false;\n } else {\n flag = time.match(RE) && timedayjs.diff(dayjs.tz(dayjs(), this.timezone), \"m\") >= 0 ? true: false;\n }\n\n return flag;\n }\n\n // update chosen time as soon as the user clicks on an interval\n onTimeSelect(time: string): void {\n this.isInvalid = !this.checkTimeValidity(time.trim());\n if (!this.isInvalid) {\n this.chosenTime = time;\n this.calculateClosestInterval(this.chosenTime);\n }\n\n const timedayjs = this.getdayjs(time);\n this.emitTime({\n valid: !this.isInvalid,\n time: time,\n epoch: timedayjs.valueOf() \n });\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n }\n\n // checks validity of time on input change and calculates the closest interval\n onTimeChange(time: string): void {\n this.isInvalid = !this.checkTimeValidity(time.trim());\n\n if (!this.isInvalid) {\n this.userInputFlag = true;\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n this.calculateClosestInterval(time);\n }\n const timedayjs = this.getdayjs(time);\n this.emitTime({\n valid: !this.isInvalid,\n time: time,\n epoch: timedayjs.valueOf() \n });\n }\n\n calculateClosestInterval(time: string): void {\n let roundedEpoch: number;\n // Converting time and date to a dayjs object \n const chosenDate = dayjs.tz(this.dateAsEpoch, this.timezone).format(\"DD-MM-YYYY\"); // 05-01-2024\n const parsedTimeWithDate = dayjs.tz(`${chosenDate} ${time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n // Converting dayjs object to epoch\n const chosenTimeEpoch = parsedTimeWithDate.valueOf();\n const offset = this.interval - (dayjs.tz(chosenTimeEpoch, this.timezone).minute() % this.interval);\n\n if (this.minTime && !this.givenTime) {\n this.isHighlighted = 0;\n return;\n }\n roundedEpoch = offset >= this.interval / 2 ? (dayjs.tz(chosenTimeEpoch, this.timezone).subtract(this.interval - offset, \"m\")).valueOf() : (dayjs.tz(chosenTimeEpoch, this.timezone).add( offset, \"m\")).valueOf();\n\n // finding the index of element that needs to be highlighted\n if ( chosenTimeEpoch > dayjs.tz(this.dateAsEpoch, this.timezone).endOf(\"day\").subtract(this.interval, \"m\").valueOf()) {\n this.isHighlighted = this.timeIntervals.length - 1;\n } else {\n const roundedEpochdayjs = dayjs.tz(roundedEpoch, this.timezone);\n this.isHighlighted = this.timeIntervals.findIndex(interval => {\n const intervalObj = dayjs.tz(`${chosenDate} ${interval}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n return intervalObj.isSame(roundedEpochdayjs);\n });\n }\n }\n\n\n // populates the dropdown according to the first interval received\n populateDropdown(): void {\n this.timeIntervals = [];\n\n // if picker is used as an individual component\n if (!this.firstInterval) {\n // firstInterval is initialised according to the current time\n // if the date is same as the current date\n if (dayjs.tz(this.dateAsEpoch, this.timezone).format(\"DD-MM-YYYY\") === dayjs.tz(dayjs(), this.timezone).format(\"DD-MM-YYYY\") && !this.minTime) {\n const offset = this.interval - (dayjs.tz(dayjs(), this.timezone).minute() % this.interval);\n this.firstInterval = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").valueOf();\n }\n // if minimum time to show is provided\n else if(this.minTime){\n const offset = this.interval - (dayjs.tz(this.minTime, this.timezone).minute() % this.interval);\n this.firstInterval = dayjs.tz(this.minTime, this.timezone).add(offset, \"m\").valueOf();\n }\n // else the firstInterval is initialised as start of day\n else {\n this.firstInterval = dayjs.tz(dayjs(), this.timezone).startOf(\"day\").valueOf();\n }\n }\n\n if(this.givenTime && this.givenTimeFlag){\n this.firstInterval = dayjs.tz(this.givenTime, this.timezone).startOf('d').valueOf();\n this.givenTimeFlag = false;\n }\n\n const dateAsString = dayjs.tz(this.dateAsEpoch, this.timezone).format('DD-MM-YYYY');\n const intervalAsString = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n let start = dayjs.tz(`${dateAsString} ${intervalAsString}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n const end = dayjs.tz(this.dateAsEpoch, this.timezone).endOf('d');\n while (start.valueOf() < end.valueOf()) {\n this.timeIntervals.push(start.format(this.timeFormat));\n start = start.add(this.interval, \"m\");\n }\n\n // if the start time is equal to the interval just before midnight\n // and the start date = end date\n // push 11:59pm only\n if (this.timeIntervals.length === 0) {\n this.chosenTime = dayjs.tz(dayjs(), this.timezone).endOf(\"d\").format(this.timeFormat);\n this.timeIntervals.push(dayjs.tz(dayjs(), this.timezone).endOf(\"d\").format(this.timeFormat));\n }\n }\n\n ngOnDestroy() {\n if (this.tooltipDirective) this.tooltipDirective.hideToolTip();\n }\n}\n\n","import { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { TimePickerComponent } from \"./timepicker.component\";\nimport { ToolTipModule } from \"mis-crystal-design-system/tooltip\";\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { TimepickerDirective } from './timepicker.directive';\n\n@NgModule({\n declarations: [TimePickerComponent, TimepickerDirective],\n imports: [CommonModule, FormsModule, ToolTipModule, OverlayModule],\n exports: [TimePickerComponent]\n})\nexport class TimePickerModule {\n static forRoot(): ModuleWithProviders<TimePickerModule> {\n return { ngModule: TimePickerModule, providers: [] };\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|