@lifesg/react-design-system 4.0.0-alpha.3 → 4.0.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/accordion-item.styles.js +1 -1
- package/accordion/accordion-item.styles.js.map +1 -1
- package/accordion/{accordion-item.styles_kchcad.css → accordion-item.styles_1j4eb32.css} +4 -4
- package/accordion/accordion.d.ts +19 -0
- package/accordion/accordion.js.map +1 -1
- package/accordion/accordion.styles.js +1 -1
- package/{cjs/accordion/accordion.styles_ijglff.css → accordion/accordion.styles_bzrfrs.css} +3 -3
- package/accordion/types.d.ts +42 -2
- package/alert/alert.d.ts +8 -0
- package/alert/alert.js.map +1 -1
- package/alert/alert.styles.js +1 -1
- package/alert/alert.styles.js.map +1 -1
- package/{cjs/alert/alert.styles_1ygel36.css → alert/alert.styles_patwo2.css} +6 -6
- package/alert/types.d.ts +26 -2
- package/animations/loading-dots/loading-dots.styles_1rgrrmw.css +2 -2
- package/animations/loading-dots/lottie-animation.styles_1m15v69.css +1 -1
- package/animations/loading-dots-spinner/loading-dots-spinner.styles_1hcqkhs.css +2 -2
- package/animations/loading-dots-spinner/lottie-animation.styles_13d1unb.css +1 -1
- package/animations/loading-spinner/loading-spinner.styles_n6xoft.css +2 -2
- package/animations/loading-spinner/lottie-animation.styles_bnn4qt.css +1 -1
- package/avatar/avatar.d.ts +7 -0
- package/avatar/avatar.js.map +1 -1
- package/avatar/avatar.styles_16efw4.css +2 -2
- package/avatar/types.d.ts +11 -0
- package/badge/badge.d.ts +7 -0
- package/badge/badge.js +1 -1
- package/badge/badge.js.map +1 -1
- package/badge/badge.styles.js +1 -1
- package/badge/badge.styles_1c3c6wj.css +16 -0
- package/badge/types.d.ts +21 -1
- package/box-container/box-container.d.ts +8 -0
- package/box-container/box-container.js.map +1 -1
- package/box-container/box-container.styles.js +1 -1
- package/box-container/box-container.styles.js.map +1 -1
- package/box-container/{box-container.styles_5y84d5.css → box-container.styles_5t2j9k.css} +4 -4
- package/box-container/types.d.ts +24 -0
- package/breadcrumb/breadcrumb.js +1 -1
- package/breadcrumb/breadcrumb.js.map +1 -1
- package/breadcrumb/breadcrumb.styles_1nl4aua.css +2 -2
- package/button/button.styles.js +1 -1
- package/button/button.styles.js.map +1 -1
- package/button/{button.styles_bcpkzm.css → button.styles_1pxy0co.css} +5 -5
- package/calendar/calendar.js +1 -1
- package/calendar/calendar.js.map +1 -1
- package/calendar/calendar.styles_11ho5x8.css +2 -2
- package/card/card.styles_1gh9gs3.css +2 -2
- package/checkbox/checkbox.styles_gm5bu1.css +2 -2
- package/cjs/accordion/accordion-item.styles.js +1 -1
- package/cjs/accordion/accordion-item.styles.js.map +1 -1
- package/cjs/accordion/{accordion-item.styles_kchcad.css → accordion-item.styles_1j4eb32.css} +4 -4
- package/cjs/accordion/accordion.js.map +1 -1
- package/cjs/accordion/accordion.styles.js +1 -1
- package/{accordion/accordion.styles_ijglff.css → cjs/accordion/accordion.styles_bzrfrs.css} +3 -3
- package/cjs/alert/alert.js.map +1 -1
- package/cjs/alert/alert.styles.js +1 -1
- package/cjs/alert/alert.styles.js.map +1 -1
- package/{alert/alert.styles_1ygel36.css → cjs/alert/alert.styles_patwo2.css} +6 -6
- package/cjs/animations/loading-dots/loading-dots.styles_1rgrrmw.css +2 -2
- package/cjs/animations/loading-dots/lottie-animation.styles_1m15v69.css +1 -1
- package/cjs/animations/loading-dots-spinner/loading-dots-spinner.styles_1hcqkhs.css +2 -2
- package/cjs/animations/loading-dots-spinner/lottie-animation.styles_13d1unb.css +1 -1
- package/cjs/animations/loading-spinner/loading-spinner.styles_n6xoft.css +2 -2
- package/cjs/animations/loading-spinner/lottie-animation.styles_bnn4qt.css +1 -1
- package/cjs/avatar/avatar.js.map +1 -1
- package/cjs/avatar/avatar.styles_16efw4.css +2 -2
- package/cjs/badge/badge.js +1 -1
- package/cjs/badge/badge.js.map +1 -1
- package/cjs/badge/badge.styles.js +1 -1
- package/cjs/badge/badge.styles_1c3c6wj.css +16 -0
- package/cjs/box-container/box-container.js.map +1 -1
- package/cjs/box-container/box-container.styles.js +1 -1
- package/cjs/box-container/box-container.styles.js.map +1 -1
- package/cjs/box-container/{box-container.styles_5y84d5.css → box-container.styles_5t2j9k.css} +4 -4
- package/cjs/breadcrumb/breadcrumb.js +1 -1
- package/cjs/breadcrumb/breadcrumb.js.map +1 -1
- package/cjs/breadcrumb/breadcrumb.styles_1nl4aua.css +2 -2
- package/cjs/button/button.styles.js +1 -1
- package/cjs/button/button.styles.js.map +1 -1
- package/cjs/button/{button.styles_bcpkzm.css → button.styles_1pxy0co.css} +5 -5
- package/cjs/calendar/calendar.js +1 -1
- package/cjs/calendar/calendar.js.map +1 -1
- package/cjs/calendar/calendar.styles_11ho5x8.css +2 -2
- package/cjs/card/card.styles_1gh9gs3.css +2 -2
- package/cjs/checkbox/checkbox.styles_gm5bu1.css +2 -2
- package/cjs/countdown-timer/countdown-timer.js.map +1 -1
- package/cjs/countdown-timer/countdown-timer.styles.js +1 -1
- package/cjs/countdown-timer/{countdown-timer.styles_k50tkw.css → countdown-timer.styles_ipn1b0.css} +3 -3
- package/cjs/dashed-border/dashed-border.js +1 -1
- package/cjs/dashed-border/dashed-border.js.map +1 -1
- package/cjs/dashed-border/dashed-border.styles_zszoox.css +2 -2
- package/cjs/data-table/data-table.js +1 -1
- package/cjs/data-table/data-table.js.map +1 -1
- package/cjs/data-table/data-table.styles.js +1 -1
- package/cjs/data-table/{data-table.styles_1nj2uzq.css → data-table.styles_1iqq1g7.css} +3 -3
- package/cjs/date-input/date-input.js +1 -1
- package/cjs/date-input/date-input.js.map +1 -1
- package/cjs/date-input/date-input.styles_1r5kcc7.css +1 -1
- package/cjs/date-navigator/date-navigator.js.map +1 -1
- package/cjs/date-navigator/date-navigator.styles.js +1 -1
- package/cjs/date-navigator/date-navigator.styles.js.map +1 -1
- package/cjs/date-navigator/date-navigator.styles_wokh56.css +4 -0
- package/cjs/date-range-input/date-range-input.js.map +1 -1
- package/cjs/date-range-input/date-range-input.styles_1s7ojnj.css +2 -2
- package/cjs/divider/divider.js.map +1 -1
- package/cjs/divider/divider.styles_1xpzh8p.css +2 -2
- package/cjs/drawer/drawer.js.map +1 -1
- package/cjs/drawer/drawer.styles_94hx3y.css +2 -2
- package/cjs/e-signature/e-signature-canvas.js +1 -1
- package/cjs/e-signature/e-signature-canvas.js.map +1 -1
- package/cjs/e-signature/e-signature.js +1 -1
- package/cjs/e-signature/e-signature.js.map +1 -1
- package/cjs/e-signature/e-signature.styles.js +1 -168
- package/cjs/e-signature/e-signature.styles.js.map +1 -1
- package/cjs/e-signature/e-signature.styles_lukd9f.css +17 -0
- package/cjs/error-display/error-display-data.js +1 -1
- package/cjs/error-display/error-display-data.js.map +1 -1
- package/cjs/error-display/error-display.js.map +1 -1
- package/cjs/error-display/error-display.styles_d3tql1.css +2 -2
- package/cjs/external/dompurify/dist/purify.es.js +3 -3
- package/cjs/external/dompurify/dist/purify.es.js.map +1 -1
- package/cjs/external/lodash/get.js +1 -1
- package/cjs/external/lodash/get.js.map +1 -1
- package/cjs/feedback-rating/feedback-rating-stars-container.styles_dmi8z9.css +2 -2
- package/cjs/feedback-rating/feedback-rating.js.map +1 -1
- package/cjs/feedback-rating/feedback-rating.styles_1kdklb6.css +2 -2
- package/cjs/file-download/file-download.js +1 -1
- package/cjs/file-download/file-download.js.map +1 -1
- package/cjs/file-download/file-download.styles.js +1 -32
- package/cjs/file-download/file-download.styles.js.map +1 -1
- package/cjs/file-download/file-download.styles_iggk8q.css +8 -0
- package/cjs/file-download/file-list-card/file-list-card.js +1 -1
- package/cjs/file-download/file-list-card/file-list-card.js.map +1 -1
- package/cjs/file-download/file-list-card/file-list-card.styles.js +1 -177
- package/cjs/file-download/file-list-card/file-list-card.styles.js.map +1 -1
- package/cjs/file-download/file-list-card/file-list-card.styles_18j2gut.css +16 -0
- package/cjs/file-upload/dropzone.styles_1pllsau.css +2 -2
- package/cjs/file-upload/file-item-edit.js +1 -1
- package/cjs/file-upload/file-item-edit.js.map +1 -1
- package/cjs/file-upload/file-item-edit.styles.js +1 -1
- package/cjs/file-upload/file-item-edit.styles.js.map +1 -1
- package/{file-upload/file-item-edit.styles_1qbpbxj.css → cjs/file-upload/file-item-edit.styles_19bvztn.css} +6 -5
- package/cjs/file-upload/file-list/file-list.js +2 -0
- package/cjs/file-upload/file-list/file-list.js.map +1 -0
- package/cjs/file-upload/file-list/file-list.styles.js +2 -0
- package/cjs/file-upload/file-list/file-list.styles.js.map +1 -0
- package/cjs/file-upload/file-list/file-list.styles_1w7so98.css +3 -0
- package/cjs/file-upload/file-list-item/file-list-item-thumbnail.styles.js +1 -1
- package/cjs/file-upload/file-list-item/file-list-item-thumbnail.styles_1y4si19.css +4 -0
- package/cjs/file-upload/file-list-item/file-list-item.js +1 -1
- package/cjs/file-upload/file-list-item/file-list-item.js.map +1 -1
- package/cjs/file-upload/file-list-item/file-list-item.styles.js +1 -1
- package/cjs/file-upload/file-list-item/file-list-item.styles.js.map +1 -1
- package/cjs/file-upload/file-list-item/file-list-item.styles_o8000f.css +17 -0
- package/cjs/file-upload/file-upload.js +1 -1
- package/cjs/file-upload/file-upload.js.map +1 -1
- package/cjs/file-upload/file-upload.styles_9ffwcd.css +2 -2
- package/cjs/filter/addons/filter-item-checkbox.styles.js +1 -1
- package/cjs/filter/addons/filter-item-checkbox.styles.js.map +1 -1
- package/{filter/addons/filter-item-checkbox.styles_18l87i2.css → cjs/filter/addons/filter-item-checkbox.styles_7degw7.css} +3 -3
- package/cjs/filter/filter-badge.js +2 -0
- package/cjs/filter/filter-badge.js.map +1 -0
- package/cjs/filter/filter-item-page.js +1 -1
- package/cjs/filter/filter-item-page.js.map +1 -1
- package/cjs/filter/filter-item-page.styles_17ewfrz.css +1 -1
- package/cjs/filter/filter-item.js.map +1 -1
- package/cjs/filter/filter-item.styles.js +1 -1
- package/cjs/filter/filter-item.styles.js.map +1 -1
- package/{filter/filter-item.styles_1e3v6qq.css → cjs/filter/filter-item.styles_cphjnj.css} +4 -4
- package/cjs/filter/filter-modal.js +1 -1
- package/cjs/filter/filter-modal.js.map +1 -1
- package/cjs/filter/filter-modal.styles.js +1 -1
- package/cjs/filter/filter-modal.styles.js.map +1 -1
- package/cjs/filter/filter-modal.styles_qw3xlg.css +10 -0
- package/cjs/filter/filter-sidebar.js +1 -1
- package/cjs/filter/filter-sidebar.js.map +1 -1
- package/cjs/filter/filter-sidebar.styles.js +1 -1
- package/cjs/filter/filter-sidebar.styles.js.map +1 -1
- package/cjs/filter/filter-sidebar.styles_1otwpjl.css +5 -0
- package/cjs/filter/filter.js.map +1 -1
- package/cjs/filter/filter.styles.js +1 -1
- package/cjs/filter/filter.styles.js.map +1 -1
- package/cjs/filter/{filter.styles_2fmaok.css → filter.styles_1ykijwm.css} +2 -2
- package/cjs/footer/footer-download-app.styles_1v1j2us.css +2 -2
- package/cjs/footer/footer-resource-addon.styles_1jepb1d.css +2 -2
- package/cjs/footer/footer.js +1 -1
- package/cjs/footer/footer.js.map +1 -1
- package/cjs/footer/footer.styles_1msorhc.css +2 -2
- package/cjs/form/form-label-addon.styles_b00z8p.css +1 -1
- package/cjs/form/form-label.styles.js +1 -1
- package/cjs/form/form-label.styles.js.map +1 -1
- package/cjs/form/form-label.styles_1nbe0bm.css +6 -0
- package/cjs/form/form-textarea.styles_3p9qoy.css +2 -2
- package/cjs/form/form-wrapper.js +1 -1
- package/cjs/form/form-wrapper.js.map +1 -1
- package/cjs/form/form-wrapper.styles_199rslu.css +1 -1
- package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.js +1 -1
- package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
- package/cjs/fullscreen-image-carousel/fullscreen-image-carousel.styles_vc6y5c.css +2 -2
- package/cjs/fullscreen-image-carousel/stateful-image.styles_1xe8ypm.css +2 -2
- package/cjs/histogram-slider/histogram-slider.styles_wvd4w.css +2 -2
- package/cjs/image-button/image-button.styles.js +1 -1
- package/cjs/image-button/image-button.styles_6n1qsr.css +5 -0
- package/cjs/index.js +1 -1
- package/cjs/input/input.styles_1cblor0.css +2 -2
- package/cjs/input-group/input-group-list-addon.js +1 -1
- package/cjs/input-group/input-group-list-addon.js.map +1 -1
- package/cjs/input-group/input-group-list-addon.styles_17iuqtw.css +2 -2
- package/cjs/input-group/input-group.styles.js +1 -1
- package/cjs/input-group/input-group.styles_bqye6f.css +3 -0
- package/cjs/input-multi-select/input-multi-select.js +1 -1
- package/cjs/input-multi-select/input-multi-select.js.map +1 -1
- package/cjs/input-nested-multi-select/input-nested-multi-select.js +1 -1
- package/cjs/input-nested-multi-select/input-nested-multi-select.js.map +1 -1
- package/cjs/input-nested-select/input-nested-select.js +1 -1
- package/cjs/input-nested-select/input-nested-select.js.map +1 -1
- package/cjs/input-range-select/input-range-select.js +1 -1
- package/cjs/input-range-select/input-range-select.js.map +1 -1
- package/cjs/input-range-select/input-range-select.styles_adbrbm.css +2 -2
- package/cjs/input-range-slider/input-range-slider.styles_aljl2v.css +2 -2
- package/cjs/input-select/input-select.js +1 -1
- package/cjs/input-select/input-select.js.map +1 -1
- package/cjs/input-textarea/textarea-counter.styles.js +1 -1
- package/cjs/input-textarea/textarea-counter.styles.js.map +1 -1
- package/cjs/input-textarea/textarea-counter.styles_1n3wsnv.css +1 -0
- package/cjs/input-textarea/textarea.styles.js +1 -1
- package/cjs/input-textarea/textarea.styles_22z4n3.css +5 -0
- package/cjs/language-switcher/dropdown-panel.styles.js +1 -1
- package/cjs/language-switcher/dropdown-panel.styles.js.map +1 -1
- package/cjs/language-switcher/dropdown-panel.styles_1qsjf8d.css +4 -0
- package/cjs/language-switcher/dropdown-variant.js +1 -1
- package/cjs/language-switcher/dropdown-variant.js.map +1 -1
- package/cjs/language-switcher/dropdown-variant.styles.js +1 -1
- package/cjs/language-switcher/dropdown-variant.styles_1vrdfky.css +2 -0
- package/cjs/language-switcher/link-container-variant.styles.js +1 -1
- package/cjs/language-switcher/link-container-variant.styles_1iw6zux.css +5 -0
- package/cjs/layout/col-div.js +1 -1
- package/cjs/layout/col-div.js.map +1 -1
- package/cjs/layout/col-div.styles_16o6mwx.css +1 -1
- package/cjs/layout/container.styles_v70ec6.css +2 -2
- package/cjs/layout/section.styles_hstcaf.css +1 -1
- package/cjs/link-list/link-list.styles.js +1 -1
- package/cjs/link-list/link-list.styles.js.map +1 -1
- package/{link-list/link-list.styles_1g33nb4.css → cjs/link-list/link-list.styles_m57vks.css} +4 -4
- package/cjs/local-nav/local-nav-dropdown/local-nav-dropdown.styles.js +1 -1
- package/{local-nav/local-nav-dropdown/local-nav-dropdown.styles_ftv36t.css → cjs/local-nav/local-nav-dropdown/local-nav-dropdown.styles_uhd4xl.css} +3 -3
- package/cjs/local-nav/local-nav-menu/local-nav-menu.styles_pq19dh.css +2 -2
- package/cjs/markup/markup.js +1 -1
- package/cjs/markup/markup.js.map +1 -1
- package/cjs/markup/markup.style.js +1 -1
- package/cjs/markup/markup.style.js.map +1 -1
- package/cjs/markup/markup.style_1iu40x9.css +2 -2
- package/cjs/masked-input/masked-input.styles.js +1 -1
- package/cjs/masked-input/masked-input.styles.js.map +1 -1
- package/{masked-input/masked-input.styles_4i1qsy.css → cjs/masked-input/masked-input.styles_1cm388a.css} +4 -4
- package/cjs/masthead/masthead.js +1 -1
- package/cjs/masthead/masthead.js.map +1 -1
- package/cjs/masthead/masthead.styles_1huzon9.css +2 -2
- package/cjs/menu/menu-content.styles_p7ijll.css +2 -2
- package/cjs/menu/menu-item.styles_liyed8.css +2 -2
- package/cjs/menu/menu-link.styles_hfxoez.css +2 -2
- package/cjs/menu/menu-section.styles_g7my4d.css +2 -2
- package/cjs/modal/modal-box.styles.js +1 -1
- package/cjs/modal/modal-box.styles.js.map +1 -1
- package/cjs/modal/modal-box.styles_y52cts.css +11 -0
- package/cjs/modal/modal.js +1 -1
- package/cjs/modal/modal.js.map +1 -1
- package/cjs/modal/modal.styles.js +1 -1
- package/cjs/modal/modal.styles.js.map +1 -1
- package/cjs/modal/modal.styles_1lbblx6.css +11 -0
- package/cjs/modal-v2/modal-v2.js +1 -1
- package/cjs/modal-v2/modal-v2.js.map +1 -1
- package/cjs/modal-v2/modal-v2.styles.js +1 -1
- package/cjs/modal-v2/modal-v2.styles.js.map +1 -1
- package/cjs/modal-v2/modal-v2.styles_a8gv5i.css +3 -0
- package/cjs/modal-v2/slots/card.js +1 -1
- package/cjs/modal-v2/slots/card.js.map +1 -1
- package/cjs/modal-v2/slots/slot-styles_13sd376.css +2 -2
- package/cjs/navbar/brand.styles_zcgddp.css +1 -1
- package/cjs/navbar/drawer.js +1 -1
- package/cjs/navbar/drawer.js.map +1 -1
- package/cjs/navbar/drawer.styles_7hnxp5.css +2 -2
- package/cjs/navbar/menu.styles_gdpqc.css +2 -2
- package/cjs/navbar/navbar-action-buttons.styles_1vpm0nk.css +2 -2
- package/cjs/navbar/navbar-items.styles.js +1 -1
- package/cjs/navbar/navbar-items.styles.js.map +1 -1
- package/cjs/navbar/{navbar-items.styles_i9cunu.css → navbar-items.styles_1i3ltot.css} +8 -8
- package/cjs/navbar/navbar.js +1 -1
- package/cjs/navbar/navbar.js.map +1 -1
- package/cjs/navbar/navbar.styles_koy0c7.css +2 -2
- package/cjs/notification-banner/notification-banner.styles.js +1 -1
- package/cjs/notification-banner/notification-banner.styles.js.map +1 -1
- package/{notification-banner/notification-banner.styles_130loac.css → cjs/notification-banner/notification-banner.styles_uxlysy.css} +4 -4
- package/cjs/otp-input/otp-input.styles_5sbutl.css +2 -2
- package/cjs/otp-verification/contact-input-section.js +1 -1
- package/cjs/otp-verification/contact-input-section.js.map +1 -1
- package/cjs/otp-verification/contact-input-section.styles.js +2 -0
- package/cjs/otp-verification/contact-input-section.styles.js.map +1 -0
- package/cjs/otp-verification/contact-input-section.styles_odrjvt.css +14 -0
- package/cjs/otp-verification/otp-verification.js +1 -1
- package/cjs/otp-verification/otp-verification.js.map +1 -1
- package/cjs/otp-verification/otp-verification.styles.js +2 -0
- package/cjs/otp-verification/otp-verification.styles.js.map +1 -0
- package/cjs/otp-verification/otp-verification.styles_dg9bm8.css +1 -0
- package/cjs/otp-verification/thumbnail/email-thumbnail.js +1 -21
- package/cjs/otp-verification/thumbnail/email-thumbnail.js.map +1 -1
- package/cjs/otp-verification/thumbnail/phone-thumbnail.js +1 -17
- package/cjs/otp-verification/thumbnail/phone-thumbnail.js.map +1 -1
- package/cjs/otp-verification/thumbnail/thumbnail.styles.js +2 -0
- package/cjs/otp-verification/thumbnail/thumbnail.styles.js.map +1 -0
- package/cjs/otp-verification/thumbnail/thumbnail.styles_shqylh.css +3 -0
- package/cjs/otp-verification/verification-section.js +1 -1
- package/cjs/otp-verification/verification-section.js.map +1 -1
- package/cjs/otp-verification/verification-section.styles.js +2 -0
- package/cjs/otp-verification/verification-section.styles.js.map +1 -0
- package/cjs/otp-verification/verification-section.styles_x8jj.css +5 -0
- package/cjs/overlay/overlay.js +1 -1
- package/cjs/overlay/overlay.js.map +1 -1
- package/cjs/overlay/overlay.styles_12wym18.css +2 -2
- package/cjs/pagination/pagination.styles.js +1 -1
- package/cjs/pagination/pagination.styles.js.map +1 -1
- package/{pagination/pagination.styles_1u898rb.css → cjs/pagination/pagination.styles_6bcgva.css} +5 -5
- package/cjs/pill/pill.styles.js +1 -1
- package/{pill/pill.styles_1wiyl8.css → cjs/pill/pill.styles_xwrniu.css} +2 -2
- package/cjs/popover/popover-inline/popover-inline.styles_bkopnt.css +2 -2
- package/cjs/popover/popover-trigger.styles_8zokig.css +1 -1
- package/cjs/popover/popover.styles_ujnf0h.css +2 -2
- package/cjs/predictive-text-input/predictive-text-input.js +1 -1
- package/cjs/predictive-text-input/predictive-text-input.js.map +1 -1
- package/cjs/progress-indicator/progress-indicator.styles_1c038s4.css +2 -2
- package/cjs/radio-button/radio-button.styles_1c4v6v.css +2 -2
- package/cjs/schedule/const.js +1 -1
- package/cjs/schedule/const.js.map +1 -1
- package/cjs/schedule/schedule-day-view/schedule-day-view.js +1 -1
- package/cjs/schedule/schedule-day-view/schedule-day-view.js.map +1 -1
- package/cjs/schedule/schedule-day-view/schedule-day-view.styles.js +1 -152
- package/cjs/schedule/schedule-day-view/schedule-day-view.styles.js.map +1 -1
- package/cjs/schedule/schedule-day-view/schedule-day-view.styles_8ti149.css +30 -0
- package/cjs/schedule/schedule-header/schedule-header.js +1 -1
- package/cjs/schedule/schedule-header/schedule-header.js.map +1 -1
- package/cjs/schedule/schedule-header/schedule-header.styles.js +2 -0
- package/cjs/schedule/schedule-header/schedule-header.styles.js.map +1 -0
- package/cjs/schedule/schedule-header/schedule-header.styles_1n2u5vj.css +6 -0
- package/cjs/schedule/schedule-slot-content/schedule-slot-content.js +2 -0
- package/cjs/schedule/schedule-slot-content/schedule-slot-content.js.map +1 -0
- package/cjs/schedule/schedule-slot-content/style-helper.js +2 -0
- package/cjs/schedule/schedule-slot-content/style-helper.js.map +1 -0
- package/cjs/schedule/schedule-week-view/schedule-week-view.js +1 -1
- package/cjs/schedule/schedule-week-view/schedule-week-view.js.map +1 -1
- package/cjs/schedule/schedule-week-view/schedule-week-view.styles.js +1 -74
- package/cjs/schedule/schedule-week-view/schedule-week-view.styles.js.map +1 -1
- package/cjs/schedule/schedule-week-view/schedule-week-view.styles_x7x50m.css +10 -0
- package/cjs/schedule/schedule-week-view/time-cell.js +1 -1
- package/cjs/schedule/schedule-week-view/time-cell.js.map +1 -1
- package/cjs/schedule/schedule-week-view/time-cell.styles.js +1 -34
- package/cjs/schedule/schedule-week-view/time-cell.styles.js.map +1 -1
- package/cjs/schedule/schedule-week-view/time-cell.styles_1sorjz8.css +14 -0
- package/cjs/schedule/schedule-week-view/week-view-utils.js +1 -1
- package/cjs/schedule/schedule-week-view/week-view-utils.js.map +1 -1
- package/cjs/schedule/schedule.js +1 -1
- package/cjs/schedule/schedule.js.map +1 -1
- package/cjs/schedule/schedule.styles.js +1 -26
- package/cjs/schedule/schedule.styles.js.map +1 -1
- package/cjs/schedule/schedule.styles_fdy5a1.css +5 -0
- package/cjs/schedule/shared/with-optional-popover.js +1 -5
- package/cjs/schedule/shared/with-optional-popover.js.map +1 -1
- package/cjs/schedule/shared/with-optional-popover.styles.js +2 -0
- package/cjs/schedule/shared/with-optional-popover.styles.js.map +1 -0
- package/cjs/schedule/shared/with-optional-popover.styles_7mv3p2.css +1 -0
- package/cjs/schedule/time-indicator/time-indicator.js +1 -1
- package/cjs/schedule/time-indicator/time-indicator.js.map +1 -1
- package/cjs/schedule/time-indicator/time-indicator.styles.js +1 -33
- package/cjs/schedule/time-indicator/time-indicator.styles.js.map +1 -1
- package/cjs/schedule/time-indicator/time-indicator.styles_1eaxyes.css +6 -0
- package/cjs/select-histogram/select-histogram.js +1 -1
- package/cjs/select-histogram/select-histogram.js.map +1 -1
- package/cjs/select-histogram/select-histogram.styles.js +1 -1
- package/cjs/select-histogram/select-histogram.styles.js.map +1 -1
- package/cjs/select-histogram/select-histogram.styles_n260dy.css +5 -0
- package/cjs/shared/accessibility/index_13g9vp.css +1 -1
- package/cjs/shared/clickable-icon/clickable-icon.styles_1v2imml.css +2 -2
- package/cjs/shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css +2 -2
- package/cjs/shared/dropdown-list/dropdown-label.js +1 -1
- package/cjs/shared/dropdown-list/dropdown-label.js.map +1 -1
- package/cjs/shared/dropdown-list/dropdown-label.styles.js +1 -1
- package/cjs/shared/dropdown-list/dropdown-label.styles.js.map +1 -1
- package/{shared/dropdown-list/dropdown-label.styles_1dwmd8f.css → cjs/shared/dropdown-list/dropdown-label.styles_mloii0.css} +6 -6
- package/cjs/shared/dropdown-list/dropdown-list.styles.js +1 -1
- package/cjs/shared/dropdown-list/dropdown-list.styles.js.map +1 -1
- package/{shared/dropdown-list/dropdown-list.styles_1kt4zhf.css → cjs/shared/dropdown-list/dropdown-list.styles_konwm.css} +5 -5
- package/cjs/shared/dropdown-list/dropdown-search.styles.js +1 -1
- package/cjs/shared/dropdown-list/dropdown-search.styles.js.map +1 -1
- package/{shared/dropdown-list/dropdown-search.styles_4r9oma.css → cjs/shared/dropdown-list/dropdown-search.styles_1hc1gkh.css} +3 -3
- package/cjs/shared/dropdown-list/expandable-element.js +1 -1
- package/cjs/shared/dropdown-list/expandable-element.js.map +1 -1
- package/cjs/shared/dropdown-list/expandable-element.styles.js +1 -1
- package/cjs/shared/dropdown-list/expandable-element.styles.js.map +1 -1
- package/cjs/shared/dropdown-list/expandable-element.styles_rkkvqr.css +5 -0
- package/cjs/shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css +2 -2
- package/cjs/shared/dropdown-wrapper/dropdown-wrapper.styles.js +1 -1
- package/cjs/shared/dropdown-wrapper/dropdown-wrapper.styles.js.map +1 -1
- package/cjs/shared/dropdown-wrapper/dropdown-wrapper.styles_15hwwoj.css +3 -0
- package/cjs/shared/fade-wrapper/fade-wrapper.styles_16iug7l.css +2 -2
- package/cjs/shared/hooks/useViewport.js +1 -1
- package/cjs/shared/hooks/useViewport.js.map +1 -1
- package/cjs/shared/image-placeholder/image-placeholder.styles_44nwil.css +1 -1
- package/cjs/shared/input-wrapper/input-wrapper.styles.js +1 -1
- package/cjs/shared/input-wrapper/{input-wrapper.styles_19fpzb.css → input-wrapper.styles_je6maw.css} +4 -4
- package/cjs/shared/internal-calendar/calendar-dropdown.styles_wybjai.css +1 -1
- package/cjs/shared/internal-calendar/calendar-manager.js +1 -1
- package/cjs/shared/internal-calendar/calendar-manager.js.map +1 -1
- package/cjs/shared/internal-calendar/calendar-manager.styles.js +1 -1
- package/cjs/shared/internal-calendar/calendar-manager.styles.js.map +1 -1
- package/cjs/shared/internal-calendar/{calendar-manager.styles_1q13ylk.css → calendar-manager.styles_1njwkj2.css} +4 -4
- package/cjs/shared/internal-calendar/day-cell/day-cell.styles.js +1 -1
- package/cjs/shared/internal-calendar/day-cell/day-cell.styles.js.map +1 -1
- package/{shared/internal-calendar/day-cell/day-cell.styles_vazxvn.css → cjs/shared/internal-calendar/day-cell/day-cell.styles_1t5oqc1.css} +3 -3
- package/cjs/shared/internal-calendar/internal-calendar-month.styles.js +1 -1
- package/{shared/internal-calendar/internal-calendar-month.styles_1pk3ynj.css → cjs/shared/internal-calendar/internal-calendar-month.styles_14oh57f.css} +3 -3
- package/cjs/shared/internal-calendar/internal-calendar-year.styles.js +1 -1
- package/cjs/shared/internal-calendar/internal-calendar-year.styles.js.map +1 -1
- package/cjs/shared/internal-calendar/{internal-calendar-year.styles_1azy42u.css → internal-calendar-year.styles_therlc.css} +3 -3
- package/cjs/shared/internal-calendar/internal-calendar.styles_gnc3eq.css +1 -1
- package/cjs/shared/internal-calendar/single/single-cell.js +1 -1
- package/cjs/shared/internal-calendar/single/single-cell.js.map +1 -1
- package/cjs/shared/internal-calendar/standard/standard-calendar-day-view.styles.js +1 -1
- package/cjs/shared/internal-calendar/standard/standard-calendar-day-view.styles_1bw26au.css +3 -0
- package/cjs/shared/progress-bar/progress-bar.styles_125ri7a.css +1 -1
- package/cjs/shared/range-input-inner-container/range-input-inner-container.styles_1v61utg.css +2 -2
- package/cjs/shared/standalone-date-input/standalone-date-input.js +1 -1
- package/cjs/shared/standalone-date-input/standalone-date-input.js.map +1 -1
- package/cjs/shared/standalone-date-input/standalone-date-input.styles.js +1 -1
- package/cjs/shared/standalone-date-input/standalone-date-input.styles.js.map +1 -1
- package/cjs/shared/standalone-date-input/standalone-date-input.styles_157qo89.css +15 -0
- package/cjs/shared/time-slot/time-slot.js +1 -1
- package/cjs/shared/time-slot/time-slot.js.map +1 -1
- package/cjs/shared/time-slot/time-slot.styles.js +1 -1
- package/cjs/shared/time-slot/time-slot.styles.js.map +1 -1
- package/cjs/shared/time-slot/time-slot.styles_18s0to7.css +29 -0
- package/cjs/shared/timepicker-dropdown/timepicker-dropdown.styles_119l6k6.css +2 -2
- package/cjs/sidenav/sidenav-drawer-item.styles.js +1 -1
- package/cjs/sidenav/sidenav-drawer-item.styles.js.map +1 -1
- package/cjs/sidenav/sidenav-drawer-item.styles_1ljnyx2.css +6 -0
- package/cjs/sidenav/sidenav-drawer-subitem.styles.js +1 -1
- package/cjs/sidenav/sidenav-drawer-subitem.styles.js.map +1 -1
- package/cjs/sidenav/sidenav-drawer-subitem.styles_2y58kf.css +1 -0
- package/cjs/sidenav/sidenav-group.styles_1x604sw.css +2 -2
- package/cjs/sidenav/sidenav-item.styles.js +1 -1
- package/cjs/sidenav/sidenav-item.styles.js.map +1 -1
- package/cjs/sidenav/{sidenav-item.styles_1eew8px.css → sidenav-item.styles_lqw3kh.css} +4 -4
- package/cjs/sidenav/sidenav.styles_1vxezie.css +2 -2
- package/cjs/singpass-button/singpass-button.styles_1miyex3.css +2 -2
- package/cjs/smart-app-banner/smart-app-banner.styles.js +1 -1
- package/cjs/smart-app-banner/smart-app-banner.styles.js.map +1 -1
- package/cjs/smart-app-banner/{smart-app-banner.styles_m5dtgh.css → smart-app-banner.styles_15u6yv4.css} +4 -4
- package/cjs/tab/tab-link-chain.styles.js +1 -1
- package/cjs/tab/tab-link-chain.styles.js.map +1 -1
- package/cjs/tab/{tab-link-chain.styles_1nreqrp.css → tab-link-chain.styles_49got4.css} +4 -4
- package/cjs/tab/tab.styles_1najffw.css +1 -1
- package/cjs/table/table.styles_1af5ipv.css +2 -2
- package/cjs/tag/tag.style.js +1 -1
- package/cjs/tag/{tag.style_10tn8i.css → tag.style_d98c53.css} +3 -3
- package/cjs/text-list/text-list.styles.js +1 -1
- package/cjs/text-list/text-list.styles.js.map +1 -1
- package/cjs/text-list/text-list.styles_w3fvyt.css +16 -0
- package/cjs/theme/index.js +1 -1
- package/cjs/theme/theme-provider/hooks.js +1 -1
- package/cjs/theme/theme-provider/hooks.js.map +1 -1
- package/cjs/theme/tokens/colour.js +1 -1
- package/cjs/theme/tokens/colour.js.map +1 -1
- package/cjs/theme/tokens/font.js +1 -1
- package/cjs/theme/tokens/font.js.map +1 -1
- package/cjs/theme/types.js +1 -1
- package/cjs/theme/types.js.map +1 -1
- package/cjs/theme/utils/css-variable.js +1 -1
- package/cjs/theme/utils/css-variable.js.map +1 -1
- package/cjs/theme/utils/font.js +1 -1
- package/cjs/theme/utils/font.js.map +1 -1
- package/cjs/theme/utils/token-resolver.js +1 -1
- package/cjs/theme/utils/token-resolver.js.map +1 -1
- package/cjs/theme/utils/use-design-token-override.js +2 -0
- package/cjs/theme/utils/use-design-token-override.js.map +1 -0
- package/cjs/theme/utils/use-design-token.js +1 -1
- package/cjs/theme/utils/use-design-token.js.map +1 -1
- package/cjs/theme/utils/use-media-query.js +1 -1
- package/cjs/theme/utils/use-media-query.js.map +1 -1
- package/cjs/time-range-picker/combobox-picker/combobox-picker.js +1 -1
- package/cjs/time-range-picker/combobox-picker/combobox-picker.js.map +1 -1
- package/cjs/time-range-picker/combobox-picker/combobox-picker.styles_7i9vso.css +1 -1
- package/cjs/time-range-picker/common.styles_1qwp4xa.css +2 -2
- package/cjs/time-slot-bar/time-slot-bar.styles_wigbyd.css +2 -2
- package/cjs/time-slot-bar-week/consts.js +2 -0
- package/cjs/time-slot-bar-week/consts.js.map +1 -0
- package/cjs/time-slot-bar-week/time-slot-bar-week-days.js +1 -1
- package/cjs/time-slot-bar-week/time-slot-bar-week-days.js.map +1 -1
- package/cjs/time-slot-bar-week/time-slot-bar-week-days.styles.js +2 -0
- package/cjs/time-slot-bar-week/time-slot-bar-week-days.styles.js.map +1 -0
- package/cjs/time-slot-bar-week/time-slot-bar-week-days.styles_evdvs9.css +17 -0
- package/cjs/time-slot-bar-week/time-slot-bar-week.js +1 -1
- package/cjs/time-slot-bar-week/time-slot-bar-week.js.map +1 -1
- package/cjs/time-slot-bar-week/time-slot-bar-week.styles.js +2 -0
- package/cjs/time-slot-bar-week/time-slot-bar-week.styles.js.map +1 -0
- package/cjs/time-slot-bar-week/time-slot-bar-week.styles_11ybf42.css +1 -0
- package/cjs/time-slot-bar-week/time-slot-cell.js +2 -0
- package/cjs/time-slot-bar-week/time-slot-cell.js.map +1 -0
- package/cjs/time-slot-week-view/time-slot-week-days.js +1 -1
- package/cjs/time-slot-week-view/time-slot-week-days.js.map +1 -1
- package/cjs/time-slot-week-view/time-slot-week-days.styles.js +2 -0
- package/cjs/time-slot-week-view/time-slot-week-days.styles.js.map +1 -0
- package/cjs/time-slot-week-view/time-slot-week-days.styles_1h21vyw.css +9 -0
- package/cjs/time-slot-week-view/time-slot-week-view.js +1 -1
- package/cjs/time-slot-week-view/time-slot-week-view.js.map +1 -1
- package/cjs/time-slot-week-view/time-slot-week-view.styles.js +1 -9
- package/cjs/time-slot-week-view/time-slot-week-view.styles.js.map +1 -1
- package/cjs/time-slot-week-view/time-slot-week-view.styles_gqgsw2.css +1 -0
- package/cjs/timeline/timeline.styles.js +1 -1
- package/cjs/timeline/{timeline.styles_1wcnzot.css → timeline.styles_1jxzik4.css} +2 -2
- package/cjs/timepicker/timepicker.js +1 -1
- package/cjs/timepicker/timepicker.js.map +1 -1
- package/cjs/timepicker/timepicker.styles.js +1 -1
- package/cjs/timepicker/timepicker.styles.js.map +1 -1
- package/cjs/timepicker/timepicker.styles_1jm33yw.css +1 -0
- package/cjs/timetable/timetable-header/timetable-header.styles_11gl1h4.css +2 -2
- package/cjs/timetable/timetable-row/row-bar.styles_1x0vrsz.css +1 -1
- package/cjs/timetable/timetable-row/row-cell.styles_y1dl5j.css +2 -2
- package/cjs/timetable/timetable.styles_7rp8kz.css +2 -2
- package/cjs/toast/toast.styles.js +1 -1
- package/cjs/toast/toast.styles.js.map +1 -1
- package/cjs/toast/{toast.styles_ngrlup.css → toast.styles_1e0l60w.css} +3 -3
- package/cjs/toggle/toggle-icon.styles_ba71y.css +2 -2
- package/cjs/toggle/toggle.styles.js +1 -1
- package/cjs/toggle/toggle.styles.js.map +1 -1
- package/{toggle/toggle.styles_1yzqsu.css → cjs/toggle/toggle.styles_1t5qrye.css} +7 -7
- package/cjs/typography/typography-text.styles_1734x2k.css +2 -2
- package/cjs/typography/typography.js +1 -1
- package/cjs/typography/typography.js.map +1 -1
- package/cjs/typography/typography.styles.js +1 -1
- package/cjs/typography/typography.styles.js.map +1 -1
- package/cjs/typography/typography.styles_1wd82dn.css +11 -0
- package/cjs/uneditable-section/section-item.styles.js +1 -1
- package/cjs/uneditable-section/section-item.styles.js.map +1 -1
- package/cjs/uneditable-section/section-item.styles_mwx8ht.css +9 -0
- package/cjs/uneditable-section/uneditable-section.js +1 -1
- package/cjs/uneditable-section/uneditable-section.js.map +1 -1
- package/cjs/uneditable-section/uneditable-section.styles_aj9zun.css +2 -2
- package/cjs/unit-number/unit-number-input.styles_8yizj.css +2 -2
- package/cjs/util/is-styled-components.js +2 -0
- package/cjs/util/is-styled-components.js.map +1 -0
- package/cjs/util/styling-helper.js +1 -1
- package/cjs/util/styling-helper.js.map +1 -1
- package/codemod-utils.d.ts +1 -0
- package/codemods/codemod-utils.ts +17 -0
- package/codemods/index.ts +231 -75
- package/codemods/migrate-popover/index.ts +267 -0
- package/codemods/run-codemod.js +6 -53
- package/codemods/run-codemod.js.map +1 -1
- package/codemods/run-codemod.ts +7 -54
- package/countdown-timer/countdown-timer.d.ts +6 -0
- package/countdown-timer/countdown-timer.js.map +1 -1
- package/countdown-timer/countdown-timer.styles.js +1 -1
- package/countdown-timer/{countdown-timer.styles_k50tkw.css → countdown-timer.styles_ipn1b0.css} +3 -3
- package/countdown-timer/types.d.ts +55 -11
- package/dashed-border/dashed-border.d.ts +6 -0
- package/dashed-border/dashed-border.js +1 -1
- package/dashed-border/dashed-border.js.map +1 -1
- package/dashed-border/dashed-border.styles_zszoox.css +2 -2
- package/dashed-border/types.d.ts +27 -5
- package/data-table/data-table.d.ts +8 -0
- package/data-table/data-table.js +1 -1
- package/data-table/data-table.js.map +1 -1
- package/data-table/data-table.styles.js +1 -1
- package/data-table/{data-table.styles_1nj2uzq.css → data-table.styles_1iqq1g7.css} +3 -3
- package/data-table/types.d.ts +58 -12
- package/date-input/date-input.d.ts +5 -0
- package/date-input/date-input.js +1 -1
- package/date-input/date-input.js.map +1 -1
- package/date-input/date-input.styles_1r5kcc7.css +1 -1
- package/date-input/types.d.ts +32 -16
- package/date-navigator/date-navigator.d.ts +6 -0
- package/date-navigator/date-navigator.js.map +1 -1
- package/date-navigator/date-navigator.styles.js +1 -1
- package/date-navigator/date-navigator.styles.js.map +1 -1
- package/date-navigator/date-navigator.styles_wokh56.css +4 -0
- package/date-navigator/types.d.ts +44 -7
- package/date-range-input/date-range-input.d.ts +4 -0
- package/date-range-input/date-range-input.js.map +1 -1
- package/date-range-input/date-range-input.styles_1s7ojnj.css +2 -2
- package/date-range-input/types.d.ts +50 -14
- package/divider/divider.d.ts +6 -0
- package/divider/divider.js.map +1 -1
- package/divider/divider.styles_1xpzh8p.css +2 -2
- package/divider/types.d.ts +27 -4
- package/drawer/drawer.d.ts +7 -0
- package/drawer/drawer.js.map +1 -1
- package/drawer/drawer.styles_94hx3y.css +2 -2
- package/drawer/types.d.ts +16 -4
- package/e-signature/e-signature-canvas.js +1 -1
- package/e-signature/e-signature-canvas.js.map +1 -1
- package/e-signature/e-signature.d.ts +5 -0
- package/e-signature/e-signature.js +1 -1
- package/e-signature/e-signature.js.map +1 -1
- package/e-signature/e-signature.styles.d.ts +17 -45
- package/e-signature/e-signature.styles.js +1 -168
- package/e-signature/e-signature.styles.js.map +1 -1
- package/e-signature/e-signature.styles_lukd9f.css +17 -0
- package/e-signature/types.d.ts +23 -1
- package/error-display/error-display-data.js +1 -1
- package/error-display/error-display-data.js.map +1 -1
- package/error-display/error-display.d.ts +7 -0
- package/error-display/error-display.js.map +1 -1
- package/error-display/error-display.styles_d3tql1.css +2 -2
- package/error-display/types.d.ts +36 -6
- package/external/dompurify/dist/purify.es.js +2 -2
- package/external/dompurify/dist/purify.es.js.map +1 -1
- package/external/lodash/get.js +1 -1
- package/external/lodash/get.js.map +1 -1
- package/feedback-rating/feedback-rating-stars-container.styles_dmi8z9.css +2 -2
- package/feedback-rating/feedback-rating.d.ts +6 -0
- package/feedback-rating/feedback-rating.js.map +1 -1
- package/feedback-rating/feedback-rating.styles_1kdklb6.css +2 -2
- package/feedback-rating/types.d.ts +29 -0
- package/file-download/file-download.d.ts +6 -0
- package/file-download/file-download.js +1 -1
- package/file-download/file-download.js.map +1 -1
- package/file-download/file-download.styles.d.ts +8 -11
- package/file-download/file-download.styles.js +1 -32
- package/file-download/file-download.styles.js.map +1 -1
- package/file-download/file-download.styles_iggk8q.css +8 -0
- package/file-download/file-list-card/file-list-card.js +1 -1
- package/file-download/file-list-card/file-list-card.js.map +1 -1
- package/file-download/file-list-card/file-list-card.styles.d.ts +16 -64
- package/file-download/file-list-card/file-list-card.styles.js +1 -177
- package/file-download/file-list-card/file-list-card.styles.js.map +1 -1
- package/file-download/file-list-card/file-list-card.styles_18j2gut.css +16 -0
- package/file-download/types.d.ts +44 -11
- package/file-upload/dropzone.styles_1pllsau.css +2 -2
- package/file-upload/file-item-edit.d.ts +4 -1
- package/file-upload/file-item-edit.js +1 -1
- package/file-upload/file-item-edit.js.map +1 -1
- package/file-upload/file-item-edit.styles.d.ts +1 -0
- package/file-upload/file-item-edit.styles.js +1 -1
- package/file-upload/file-item-edit.styles.js.map +1 -1
- package/{cjs/file-upload/file-item-edit.styles_1qbpbxj.css → file-upload/file-item-edit.styles_19bvztn.css} +6 -5
- package/file-upload/{file-list.d.ts → file-list/file-list.d.ts} +4 -1
- package/file-upload/file-list/file-list.js +2 -0
- package/file-upload/file-list/file-list.js.map +1 -0
- package/file-upload/file-list/file-list.styles.js +2 -0
- package/file-upload/file-list/file-list.styles.js.map +1 -0
- package/file-upload/file-list/file-list.styles_1w7so98.css +3 -0
- package/file-upload/file-list/index.d.ts +1 -0
- package/file-upload/file-list-item/file-list-item-thumbnail.styles.js +1 -1
- package/file-upload/file-list-item/file-list-item-thumbnail.styles_1y4si19.css +4 -0
- package/file-upload/file-list-item/file-list-item.d.ts +3 -1
- package/file-upload/file-list-item/file-list-item.js +1 -1
- package/file-upload/file-list-item/file-list-item.js.map +1 -1
- package/file-upload/file-list-item/file-list-item.styles.d.ts +3 -0
- package/file-upload/file-list-item/file-list-item.styles.js +1 -1
- package/file-upload/file-list-item/file-list-item.styles.js.map +1 -1
- package/file-upload/file-list-item/file-list-item.styles_o8000f.css +17 -0
- package/file-upload/file-upload.d.ts +2 -1
- package/file-upload/file-upload.js +1 -1
- package/file-upload/file-upload.js.map +1 -1
- package/file-upload/file-upload.styles_9ffwcd.css +2 -2
- package/file-upload/types.d.ts +125 -20
- package/filter/addons/filter-item-checkbox.styles.js +1 -1
- package/filter/addons/filter-item-checkbox.styles.js.map +1 -1
- package/{cjs/filter/addons/filter-item-checkbox.styles_18l87i2.css → filter/addons/filter-item-checkbox.styles_7degw7.css} +3 -3
- package/filter/filter-badge.d.ts +5 -0
- package/filter/filter-badge.js +2 -0
- package/filter/filter-badge.js.map +1 -0
- package/filter/filter-item-page.d.ts +1 -1
- package/filter/filter-item-page.js +1 -1
- package/filter/filter-item-page.js.map +1 -1
- package/filter/filter-item-page.styles_17ewfrz.css +1 -1
- package/filter/filter-item.js.map +1 -1
- package/filter/filter-item.styles.js +1 -1
- package/filter/filter-item.styles.js.map +1 -1
- package/{cjs/filter/filter-item.styles_1e3v6qq.css → filter/filter-item.styles_cphjnj.css} +4 -4
- package/filter/filter-modal.d.ts +1 -1
- package/filter/filter-modal.js +1 -1
- package/filter/filter-modal.js.map +1 -1
- package/filter/filter-modal.styles.d.ts +2 -0
- package/filter/filter-modal.styles.js +1 -1
- package/filter/filter-modal.styles.js.map +1 -1
- package/filter/filter-modal.styles_qw3xlg.css +10 -0
- package/filter/filter-sidebar.d.ts +1 -1
- package/filter/filter-sidebar.js +1 -1
- package/filter/filter-sidebar.js.map +1 -1
- package/filter/filter-sidebar.styles.d.ts +1 -0
- package/filter/filter-sidebar.styles.js +1 -1
- package/filter/filter-sidebar.styles.js.map +1 -1
- package/filter/filter-sidebar.styles_1otwpjl.css +5 -0
- package/filter/filter.d.ts +24 -3
- package/filter/filter.js.map +1 -1
- package/filter/filter.styles.js +1 -1
- package/filter/filter.styles.js.map +1 -1
- package/filter/{filter.styles_2fmaok.css → filter.styles_1ykijwm.css} +2 -2
- package/filter/types.d.ts +163 -21
- package/footer/footer-download-app.styles_1v1j2us.css +2 -2
- package/footer/footer-resource-addon.styles_1jepb1d.css +2 -2
- package/footer/footer.d.ts +8 -1
- package/footer/footer.js +1 -1
- package/footer/footer.js.map +1 -1
- package/footer/footer.styles_1msorhc.css +2 -2
- package/footer/types.d.ts +55 -4
- package/form/form-label-addon.styles_b00z8p.css +1 -1
- package/form/form-label.styles.js +1 -1
- package/form/form-label.styles.js.map +1 -1
- package/form/form-label.styles_1nbe0bm.css +6 -0
- package/form/form-textarea.styles_3p9qoy.css +2 -2
- package/form/form-wrapper.js +1 -1
- package/form/form-wrapper.js.map +1 -1
- package/form/form-wrapper.styles_199rslu.css +1 -1
- package/fullscreen-image-carousel/fullscreen-image-carousel.js +1 -1
- package/fullscreen-image-carousel/fullscreen-image-carousel.js.map +1 -1
- package/fullscreen-image-carousel/fullscreen-image-carousel.styles_vc6y5c.css +2 -2
- package/fullscreen-image-carousel/stateful-image.styles_1xe8ypm.css +2 -2
- package/histogram-slider/histogram-slider.styles_wvd4w.css +2 -2
- package/image-button/image-button.styles.js +1 -1
- package/image-button/image-button.styles_6n1qsr.css +5 -0
- package/index.d.ts +0 -2
- package/index.js +1 -1
- package/input/input.styles_1cblor0.css +2 -2
- package/input-group/input-group-list-addon.js +1 -1
- package/input-group/input-group-list-addon.js.map +1 -1
- package/input-group/input-group-list-addon.styles_17iuqtw.css +2 -2
- package/input-group/input-group.styles.js +1 -1
- package/input-group/input-group.styles_bqye6f.css +3 -0
- package/input-multi-select/input-multi-select.js +1 -1
- package/input-multi-select/input-multi-select.js.map +1 -1
- package/input-nested-multi-select/input-nested-multi-select.js +1 -1
- package/input-nested-multi-select/input-nested-multi-select.js.map +1 -1
- package/input-nested-select/input-nested-select.js +1 -1
- package/input-nested-select/input-nested-select.js.map +1 -1
- package/input-range-select/input-range-select.js +1 -1
- package/input-range-select/input-range-select.js.map +1 -1
- package/input-range-select/input-range-select.styles_adbrbm.css +2 -2
- package/input-range-slider/input-range-slider.styles_aljl2v.css +2 -2
- package/input-select/input-select.js +1 -1
- package/input-select/input-select.js.map +1 -1
- package/input-textarea/textarea-counter.styles.js +1 -1
- package/input-textarea/textarea-counter.styles.js.map +1 -1
- package/input-textarea/textarea-counter.styles_1n3wsnv.css +1 -0
- package/input-textarea/textarea.styles.js +1 -1
- package/input-textarea/textarea.styles_22z4n3.css +5 -0
- package/language-switcher/dropdown-panel.styles.js +1 -1
- package/language-switcher/dropdown-panel.styles.js.map +1 -1
- package/language-switcher/dropdown-panel.styles_1qsjf8d.css +4 -0
- package/language-switcher/dropdown-variant.js +1 -1
- package/language-switcher/dropdown-variant.js.map +1 -1
- package/language-switcher/dropdown-variant.styles.js +1 -1
- package/language-switcher/dropdown-variant.styles_1vrdfky.css +2 -0
- package/language-switcher/link-container-variant.styles.js +1 -1
- package/language-switcher/link-container-variant.styles_1iw6zux.css +5 -0
- package/layout/col-div.js +1 -1
- package/layout/col-div.js.map +1 -1
- package/layout/col-div.styles_16o6mwx.css +1 -1
- package/layout/container.styles_v70ec6.css +2 -2
- package/layout/section.styles_hstcaf.css +1 -1
- package/layout/types.d.ts +8 -11
- package/link-list/link-list.styles.js +1 -1
- package/link-list/link-list.styles.js.map +1 -1
- package/{cjs/link-list/link-list.styles_1g33nb4.css → link-list/link-list.styles_m57vks.css} +4 -4
- package/local-nav/local-nav-dropdown/local-nav-dropdown.styles.js +1 -1
- package/{cjs/local-nav/local-nav-dropdown/local-nav-dropdown.styles_ftv36t.css → local-nav/local-nav-dropdown/local-nav-dropdown.styles_uhd4xl.css} +3 -3
- package/local-nav/local-nav-menu/local-nav-menu.styles_pq19dh.css +2 -2
- package/markup/markup.js +1 -1
- package/markup/markup.js.map +1 -1
- package/markup/markup.style.js +1 -1
- package/markup/markup.style.js.map +1 -1
- package/markup/markup.style_1iu40x9.css +2 -2
- package/markup/types.d.ts +2 -1
- package/masked-input/masked-input.styles.js +1 -1
- package/masked-input/masked-input.styles.js.map +1 -1
- package/{cjs/masked-input/masked-input.styles_4i1qsy.css → masked-input/masked-input.styles_1cm388a.css} +4 -4
- package/masthead/masthead.js +1 -1
- package/masthead/masthead.js.map +1 -1
- package/masthead/masthead.styles_1huzon9.css +2 -2
- package/menu/menu-content.styles_p7ijll.css +2 -2
- package/menu/menu-item.styles_liyed8.css +2 -2
- package/menu/menu-link.styles_hfxoez.css +2 -2
- package/menu/menu-section.styles_g7my4d.css +2 -2
- package/modal/modal-box.styles.js +1 -1
- package/modal/modal-box.styles.js.map +1 -1
- package/modal/modal-box.styles_y52cts.css +11 -0
- package/modal/modal.js +1 -1
- package/modal/modal.js.map +1 -1
- package/modal/modal.styles.d.ts +4 -1
- package/modal/modal.styles.js +1 -1
- package/modal/modal.styles.js.map +1 -1
- package/modal/modal.styles_1lbblx6.css +11 -0
- package/modal-v2/modal-v2.js +1 -1
- package/modal-v2/modal-v2.js.map +1 -1
- package/modal-v2/modal-v2.styles.d.ts +0 -1
- package/modal-v2/modal-v2.styles.js +1 -1
- package/modal-v2/modal-v2.styles.js.map +1 -1
- package/modal-v2/modal-v2.styles_a8gv5i.css +3 -0
- package/modal-v2/slots/card.js +1 -1
- package/modal-v2/slots/card.js.map +1 -1
- package/modal-v2/slots/slot-styles_13sd376.css +2 -2
- package/navbar/brand.styles_zcgddp.css +1 -1
- package/navbar/drawer.js +1 -1
- package/navbar/drawer.js.map +1 -1
- package/navbar/drawer.styles_7hnxp5.css +2 -2
- package/navbar/menu.styles_gdpqc.css +2 -2
- package/navbar/navbar-action-buttons.styles_1vpm0nk.css +2 -2
- package/navbar/navbar-items.styles.js +1 -1
- package/navbar/navbar-items.styles.js.map +1 -1
- package/navbar/{navbar-items.styles_i9cunu.css → navbar-items.styles_1i3ltot.css} +8 -8
- package/navbar/navbar.js +1 -1
- package/navbar/navbar.js.map +1 -1
- package/navbar/navbar.styles_koy0c7.css +2 -2
- package/notification-banner/notification-banner.styles.js +1 -1
- package/notification-banner/notification-banner.styles.js.map +1 -1
- package/{cjs/notification-banner/notification-banner.styles_130loac.css → notification-banner/notification-banner.styles_uxlysy.css} +4 -4
- package/otp-input/otp-input.styles_5sbutl.css +2 -2
- package/otp-verification/contact-input-section.js +1 -1
- package/otp-verification/contact-input-section.js.map +1 -1
- package/otp-verification/contact-input-section.styles.d.ts +14 -0
- package/otp-verification/contact-input-section.styles.js +2 -0
- package/otp-verification/contact-input-section.styles.js.map +1 -0
- package/otp-verification/contact-input-section.styles_odrjvt.css +14 -0
- package/otp-verification/otp-verification.js +1 -1
- package/otp-verification/otp-verification.js.map +1 -1
- package/otp-verification/otp-verification.styles.d.ts +1 -0
- package/otp-verification/otp-verification.styles.js +2 -0
- package/otp-verification/otp-verification.styles.js.map +1 -0
- package/otp-verification/otp-verification.styles_dg9bm8.css +1 -0
- package/otp-verification/thumbnail/email-thumbnail.d.ts +1 -3
- package/otp-verification/thumbnail/email-thumbnail.js +1 -21
- package/otp-verification/thumbnail/email-thumbnail.js.map +1 -1
- package/otp-verification/thumbnail/phone-thumbnail.d.ts +1 -3
- package/otp-verification/thumbnail/phone-thumbnail.js +1 -17
- package/otp-verification/thumbnail/phone-thumbnail.js.map +1 -1
- package/otp-verification/thumbnail/thumbnail.styles.d.ts +3 -0
- package/otp-verification/thumbnail/thumbnail.styles.js +2 -0
- package/otp-verification/thumbnail/thumbnail.styles.js.map +1 -0
- package/otp-verification/thumbnail/thumbnail.styles_shqylh.css +3 -0
- package/otp-verification/verification-section.js +1 -1
- package/otp-verification/verification-section.js.map +1 -1
- package/otp-verification/verification-section.styles.d.ts +5 -0
- package/otp-verification/verification-section.styles.js +2 -0
- package/otp-verification/verification-section.styles.js.map +1 -0
- package/otp-verification/verification-section.styles_x8jj.css +5 -0
- package/overlay/overlay.js +1 -1
- package/overlay/overlay.js.map +1 -1
- package/overlay/overlay.styles_12wym18.css +2 -2
- package/overlay/types.d.ts +0 -13
- package/package.json +14 -15
- package/pagination/pagination.styles.js +1 -1
- package/pagination/pagination.styles.js.map +1 -1
- package/{cjs/pagination/pagination.styles_1u898rb.css → pagination/pagination.styles_6bcgva.css} +5 -5
- package/pill/pill.styles.js +1 -1
- package/{cjs/pill/pill.styles_1wiyl8.css → pill/pill.styles_xwrniu.css} +2 -2
- package/popover/popover-inline/popover-inline.styles_bkopnt.css +2 -2
- package/popover/popover-trigger.styles_8zokig.css +1 -1
- package/popover/popover.styles_ujnf0h.css +2 -2
- package/predictive-text-input/predictive-text-input.js +1 -1
- package/predictive-text-input/predictive-text-input.js.map +1 -1
- package/progress-indicator/progress-indicator.styles_1c038s4.css +2 -2
- package/radio-button/radio-button.styles_1c4v6v.css +2 -2
- package/schedule/const.js +1 -1
- package/schedule/const.js.map +1 -1
- package/schedule/schedule-day-view/schedule-day-view.js +1 -1
- package/schedule/schedule-day-view/schedule-day-view.js.map +1 -1
- package/schedule/schedule-day-view/schedule-day-view.styles.d.ts +39 -99
- package/schedule/schedule-day-view/schedule-day-view.styles.js +1 -152
- package/schedule/schedule-day-view/schedule-day-view.styles.js.map +1 -1
- package/schedule/schedule-day-view/schedule-day-view.styles_8ti149.css +30 -0
- package/schedule/schedule-day-view/types.d.ts +2 -10
- package/schedule/schedule-header/schedule-header.js +1 -1
- package/schedule/schedule-header/schedule-header.js.map +1 -1
- package/schedule/schedule-header/schedule-header.styles.d.ts +7 -0
- package/schedule/schedule-header/schedule-header.styles.js +2 -0
- package/schedule/schedule-header/schedule-header.styles.js.map +1 -0
- package/schedule/schedule-header/schedule-header.styles_1n2u5vj.css +6 -0
- package/schedule/schedule-slot-content/index.d.ts +4 -0
- package/schedule/schedule-slot-content/schedule-slot-content.d.ts +21 -0
- package/schedule/schedule-slot-content/schedule-slot-content.js +2 -0
- package/schedule/schedule-slot-content/schedule-slot-content.js.map +1 -0
- package/schedule/schedule-slot-content/style-helper.d.ts +8 -0
- package/schedule/schedule-slot-content/style-helper.js +2 -0
- package/schedule/schedule-slot-content/style-helper.js.map +1 -0
- package/schedule/schedule-week-view/schedule-week-view.js +1 -1
- package/schedule/schedule-week-view/schedule-week-view.js.map +1 -1
- package/schedule/schedule-week-view/schedule-week-view.styles.d.ts +15 -32
- package/schedule/schedule-week-view/schedule-week-view.styles.js +1 -74
- package/schedule/schedule-week-view/schedule-week-view.styles.js.map +1 -1
- package/schedule/schedule-week-view/schedule-week-view.styles_x7x50m.css +10 -0
- package/schedule/schedule-week-view/time-cell.js +1 -1
- package/schedule/schedule-week-view/time-cell.js.map +1 -1
- package/schedule/schedule-week-view/time-cell.styles.d.ts +23 -14
- package/schedule/schedule-week-view/time-cell.styles.js +1 -34
- package/schedule/schedule-week-view/time-cell.styles.js.map +1 -1
- package/schedule/schedule-week-view/time-cell.styles_1sorjz8.css +14 -0
- package/schedule/schedule-week-view/types.d.ts +2 -15
- package/schedule/schedule-week-view/week-view-utils.js +1 -1
- package/schedule/schedule-week-view/week-view-utils.js.map +1 -1
- package/schedule/schedule.js +1 -1
- package/schedule/schedule.js.map +1 -1
- package/schedule/schedule.styles.d.ts +5 -8
- package/schedule/schedule.styles.js +1 -26
- package/schedule/schedule.styles.js.map +1 -1
- package/schedule/schedule.styles_fdy5a1.css +5 -0
- package/schedule/shared/with-optional-popover.d.ts +1 -1
- package/schedule/shared/with-optional-popover.js +1 -5
- package/schedule/shared/with-optional-popover.js.map +1 -1
- package/schedule/shared/with-optional-popover.styles.d.ts +1 -0
- package/schedule/shared/with-optional-popover.styles.js +2 -0
- package/schedule/shared/with-optional-popover.styles.js.map +1 -0
- package/schedule/shared/with-optional-popover.styles_7mv3p2.css +1 -0
- package/schedule/time-indicator/time-indicator.js +1 -1
- package/schedule/time-indicator/time-indicator.js.map +1 -1
- package/schedule/time-indicator/time-indicator.styles.d.ts +11 -28
- package/schedule/time-indicator/time-indicator.styles.js +1 -33
- package/schedule/time-indicator/time-indicator.styles.js.map +1 -1
- package/schedule/time-indicator/time-indicator.styles_1eaxyes.css +6 -0
- package/schedule/types.d.ts +10 -0
- package/select-histogram/select-histogram.js +1 -1
- package/select-histogram/select-histogram.js.map +1 -1
- package/select-histogram/select-histogram.styles.js +1 -1
- package/select-histogram/select-histogram.styles.js.map +1 -1
- package/select-histogram/select-histogram.styles_n260dy.css +5 -0
- package/shared/accessibility/index_13g9vp.css +1 -1
- package/shared/clickable-icon/clickable-icon.styles_1v2imml.css +2 -2
- package/shared/component-loading-spinner/component-loading-spinner.styles_15eq02i.css +2 -2
- package/shared/dropdown-list/dropdown-label.js +1 -1
- package/shared/dropdown-list/dropdown-label.js.map +1 -1
- package/shared/dropdown-list/dropdown-label.styles.js +1 -1
- package/shared/dropdown-list/dropdown-label.styles.js.map +1 -1
- package/{cjs/shared/dropdown-list/dropdown-label.styles_1dwmd8f.css → shared/dropdown-list/dropdown-label.styles_mloii0.css} +6 -6
- package/shared/dropdown-list/dropdown-list.styles.js +1 -1
- package/shared/dropdown-list/dropdown-list.styles.js.map +1 -1
- package/{cjs/shared/dropdown-list/dropdown-list.styles_1kt4zhf.css → shared/dropdown-list/dropdown-list.styles_konwm.css} +5 -5
- package/shared/dropdown-list/dropdown-search.styles.js +1 -1
- package/shared/dropdown-list/dropdown-search.styles.js.map +1 -1
- package/{cjs/shared/dropdown-list/dropdown-search.styles_4r9oma.css → shared/dropdown-list/dropdown-search.styles_1hc1gkh.css} +3 -3
- package/shared/dropdown-list/expandable-element.js +1 -1
- package/shared/dropdown-list/expandable-element.js.map +1 -1
- package/shared/dropdown-list/expandable-element.styles.d.ts +0 -1
- package/shared/dropdown-list/expandable-element.styles.js +1 -1
- package/shared/dropdown-list/expandable-element.styles.js.map +1 -1
- package/shared/dropdown-list/expandable-element.styles_rkkvqr.css +5 -0
- package/shared/dropdown-list/nested-dropdown-list.styles_wdhxoe.css +2 -2
- package/shared/dropdown-wrapper/dropdown-wrapper.styles.js +1 -1
- package/shared/dropdown-wrapper/dropdown-wrapper.styles.js.map +1 -1
- package/shared/dropdown-wrapper/dropdown-wrapper.styles_15hwwoj.css +3 -0
- package/shared/fade-wrapper/fade-wrapper.styles_16iug7l.css +2 -2
- package/shared/hooks/useViewport.d.ts +7 -2
- package/shared/hooks/useViewport.js +1 -1
- package/shared/hooks/useViewport.js.map +1 -1
- package/shared/image-placeholder/image-placeholder.styles_44nwil.css +1 -1
- package/shared/input-wrapper/input-wrapper.styles.js +1 -1
- package/shared/input-wrapper/{input-wrapper.styles_19fpzb.css → input-wrapper.styles_je6maw.css} +4 -4
- package/shared/internal-calendar/calendar-dropdown.styles_wybjai.css +1 -1
- package/shared/internal-calendar/calendar-manager.js +1 -1
- package/shared/internal-calendar/calendar-manager.js.map +1 -1
- package/shared/internal-calendar/calendar-manager.styles.js +1 -1
- package/shared/internal-calendar/calendar-manager.styles.js.map +1 -1
- package/shared/internal-calendar/{calendar-manager.styles_1q13ylk.css → calendar-manager.styles_1njwkj2.css} +4 -4
- package/shared/internal-calendar/day-cell/day-cell.styles.js +1 -1
- package/shared/internal-calendar/day-cell/day-cell.styles.js.map +1 -1
- package/{cjs/shared/internal-calendar/day-cell/day-cell.styles_vazxvn.css → shared/internal-calendar/day-cell/day-cell.styles_1t5oqc1.css} +3 -3
- package/shared/internal-calendar/internal-calendar-month.styles.js +1 -1
- package/{cjs/shared/internal-calendar/internal-calendar-month.styles_1pk3ynj.css → shared/internal-calendar/internal-calendar-month.styles_14oh57f.css} +3 -3
- package/shared/internal-calendar/internal-calendar-year.styles.js +1 -1
- package/shared/internal-calendar/internal-calendar-year.styles.js.map +1 -1
- package/shared/internal-calendar/{internal-calendar-year.styles_1azy42u.css → internal-calendar-year.styles_therlc.css} +3 -3
- package/shared/internal-calendar/internal-calendar.styles_gnc3eq.css +1 -1
- package/shared/internal-calendar/single/single-cell.js +1 -1
- package/shared/internal-calendar/single/single-cell.js.map +1 -1
- package/shared/internal-calendar/standard/standard-calendar-day-view.styles.js +1 -1
- package/shared/internal-calendar/standard/standard-calendar-day-view.styles_1bw26au.css +3 -0
- package/shared/progress-bar/progress-bar.styles_125ri7a.css +1 -1
- package/shared/range-input-inner-container/range-input-inner-container.styles_1v61utg.css +2 -2
- package/shared/standalone-date-input/standalone-date-input.js +1 -1
- package/shared/standalone-date-input/standalone-date-input.js.map +1 -1
- package/shared/standalone-date-input/standalone-date-input.styles.d.ts +2 -0
- package/shared/standalone-date-input/standalone-date-input.styles.js +1 -1
- package/shared/standalone-date-input/standalone-date-input.styles.js.map +1 -1
- package/shared/standalone-date-input/standalone-date-input.styles_157qo89.css +15 -0
- package/shared/time-slot/time-slot.d.ts +1 -0
- package/shared/time-slot/time-slot.js +1 -1
- package/shared/time-slot/time-slot.js.map +1 -1
- package/shared/time-slot/time-slot.styles.d.ts +2 -0
- package/shared/time-slot/time-slot.styles.js +1 -1
- package/shared/time-slot/time-slot.styles.js.map +1 -1
- package/shared/time-slot/time-slot.styles_18s0to7.css +29 -0
- package/shared/timepicker-dropdown/timepicker-dropdown.styles_119l6k6.css +2 -2
- package/sidenav/sidenav-drawer-item.styles.js +1 -1
- package/sidenav/sidenav-drawer-item.styles.js.map +1 -1
- package/sidenav/sidenav-drawer-item.styles_1ljnyx2.css +6 -0
- package/sidenav/sidenav-drawer-subitem.styles.js +1 -1
- package/sidenav/sidenav-drawer-subitem.styles.js.map +1 -1
- package/sidenav/sidenav-drawer-subitem.styles_2y58kf.css +1 -0
- package/sidenav/sidenav-group.styles_1x604sw.css +2 -2
- package/sidenav/sidenav-item.styles.js +1 -1
- package/sidenav/sidenav-item.styles.js.map +1 -1
- package/sidenav/{sidenav-item.styles_1eew8px.css → sidenav-item.styles_lqw3kh.css} +4 -4
- package/sidenav/sidenav.styles_1vxezie.css +2 -2
- package/singpass-button/singpass-button.styles_1miyex3.css +2 -2
- package/smart-app-banner/smart-app-banner.styles.js +1 -1
- package/smart-app-banner/smart-app-banner.styles.js.map +1 -1
- package/smart-app-banner/{smart-app-banner.styles_m5dtgh.css → smart-app-banner.styles_15u6yv4.css} +4 -4
- package/tab/tab-link-chain.styles.js +1 -1
- package/tab/tab-link-chain.styles.js.map +1 -1
- package/tab/{tab-link-chain.styles_1nreqrp.css → tab-link-chain.styles_49got4.css} +4 -4
- package/tab/tab.styles_1najffw.css +1 -1
- package/table/table.styles_1af5ipv.css +2 -2
- package/tag/tag.style.js +1 -1
- package/tag/{tag.style_10tn8i.css → tag.style_d98c53.css} +3 -3
- package/text-list/text-list.styles.js +1 -1
- package/text-list/text-list.styles.js.map +1 -1
- package/text-list/text-list.styles_w3fvyt.css +16 -0
- package/theme/index.d.ts +4 -1
- package/theme/index.js +1 -1
- package/theme/styles/a11y-playground.css +33 -1
- package/theme/styles/bookingsg.css +37 -5
- package/theme/styles/careercompass.css +519 -0
- package/theme/styles/ccube.css +31 -0
- package/theme/styles/default.css +11 -6
- package/theme/styles/imda.css +33 -1
- package/theme/styles/lifesg.css +31 -0
- package/theme/styles/mylegacy.css +37 -5
- package/theme/styles/oneservice.css +80 -0
- package/theme/styles/pa.css +33 -1
- package/theme/styles/rbs.css +31 -0
- package/theme/styles/sgw-digital-lobby.css +37 -5
- package/theme/styles/smgs.css +519 -0
- package/theme/styles/spf.css +146 -114
- package/theme/styles/supportgowhere.css +33 -1
- package/theme/theme-provider/hooks.d.ts +2 -1
- package/theme/theme-provider/hooks.js +1 -1
- package/theme/theme-provider/hooks.js.map +1 -1
- package/theme/tokens/colour.d.ts +28 -0
- package/theme/tokens/colour.js +1 -1
- package/theme/tokens/colour.js.map +1 -1
- package/theme/tokens/font.d.ts +4 -2
- package/theme/tokens/font.js +1 -1
- package/theme/tokens/font.js.map +1 -1
- package/theme/types.d.ts +1 -1
- package/theme/types.js +1 -1
- package/theme/types.js.map +1 -1
- package/theme/utils/css-variable.d.ts +0 -5
- package/theme/utils/css-variable.js +1 -1
- package/theme/utils/css-variable.js.map +1 -1
- package/theme/utils/font.d.ts +2 -2
- package/theme/utils/font.js +1 -1
- package/theme/utils/font.js.map +1 -1
- package/theme/utils/index.d.ts +1 -0
- package/theme/utils/token-resolver.js +1 -1
- package/theme/utils/token-resolver.js.map +1 -1
- package/theme/utils/use-design-token-override.d.ts +11 -0
- package/theme/utils/use-design-token-override.js +2 -0
- package/theme/utils/use-design-token-override.js.map +1 -0
- package/theme/utils/use-design-token.js +1 -1
- package/theme/utils/use-design-token.js.map +1 -1
- package/theme/utils/use-media-query.d.ts +1 -2
- package/theme/utils/use-media-query.js +1 -1
- package/theme/utils/use-media-query.js.map +1 -1
- package/time-range-picker/combobox-picker/combobox-picker.js +1 -1
- package/time-range-picker/combobox-picker/combobox-picker.js.map +1 -1
- package/time-range-picker/combobox-picker/combobox-picker.styles_7i9vso.css +1 -1
- package/time-range-picker/common.styles_1qwp4xa.css +2 -2
- package/time-slot-bar/time-slot-bar.styles_wigbyd.css +2 -2
- package/time-slot-bar-week/consts.d.ts +3 -0
- package/time-slot-bar-week/consts.js +2 -0
- package/time-slot-bar-week/consts.js.map +1 -0
- package/time-slot-bar-week/time-slot-bar-week-days.js +1 -1
- package/time-slot-bar-week/time-slot-bar-week-days.js.map +1 -1
- package/time-slot-bar-week/time-slot-bar-week-days.styles.d.ts +25 -0
- package/time-slot-bar-week/time-slot-bar-week-days.styles.js +2 -0
- package/time-slot-bar-week/time-slot-bar-week-days.styles.js.map +1 -0
- package/time-slot-bar-week/time-slot-bar-week-days.styles_evdvs9.css +17 -0
- package/time-slot-bar-week/time-slot-bar-week.js +1 -1
- package/time-slot-bar-week/time-slot-bar-week.js.map +1 -1
- package/time-slot-bar-week/time-slot-bar-week.styles.d.ts +1 -0
- package/time-slot-bar-week/time-slot-bar-week.styles.js +2 -0
- package/time-slot-bar-week/time-slot-bar-week.styles.js.map +1 -0
- package/time-slot-bar-week/time-slot-bar-week.styles_11ybf42.css +1 -0
- package/time-slot-bar-week/time-slot-cell.d.ts +28 -0
- package/time-slot-bar-week/time-slot-cell.js +2 -0
- package/time-slot-bar-week/time-slot-cell.js.map +1 -0
- package/time-slot-week-view/time-slot-week-days.js +1 -1
- package/time-slot-week-view/time-slot-week-days.js.map +1 -1
- package/time-slot-week-view/time-slot-week-days.styles.d.ts +14 -0
- package/time-slot-week-view/time-slot-week-days.styles.js +2 -0
- package/time-slot-week-view/time-slot-week-days.styles.js.map +1 -0
- package/time-slot-week-view/time-slot-week-days.styles_1h21vyw.css +9 -0
- package/time-slot-week-view/time-slot-week-view.js +1 -1
- package/time-slot-week-view/time-slot-week-view.js.map +1 -1
- package/time-slot-week-view/time-slot-week-view.styles.d.ts +1 -1
- package/time-slot-week-view/time-slot-week-view.styles.js +1 -9
- package/time-slot-week-view/time-slot-week-view.styles.js.map +1 -1
- package/time-slot-week-view/time-slot-week-view.styles_gqgsw2.css +1 -0
- package/timeline/timeline.styles.js +1 -1
- package/timeline/{timeline.styles_1wcnzot.css → timeline.styles_1jxzik4.css} +2 -2
- package/timepicker/timepicker.js +1 -1
- package/timepicker/timepicker.js.map +1 -1
- package/timepicker/timepicker.styles.js +1 -1
- package/timepicker/timepicker.styles.js.map +1 -1
- package/timepicker/timepicker.styles_1jm33yw.css +1 -0
- package/timetable/timetable-header/timetable-header.styles_11gl1h4.css +2 -2
- package/timetable/timetable-row/row-bar.styles_1x0vrsz.css +1 -1
- package/timetable/timetable-row/row-cell.styles_y1dl5j.css +2 -2
- package/timetable/timetable.styles_7rp8kz.css +2 -2
- package/toast/toast.styles.js +1 -1
- package/toast/toast.styles.js.map +1 -1
- package/toast/{toast.styles_ngrlup.css → toast.styles_1e0l60w.css} +3 -3
- package/toggle/toggle-icon.styles_ba71y.css +2 -2
- package/toggle/toggle.styles.js +1 -1
- package/toggle/toggle.styles.js.map +1 -1
- package/{cjs/toggle/toggle.styles_1yzqsu.css → toggle/toggle.styles_1t5qrye.css} +7 -7
- package/typography/index.js +1 -1
- package/typography/typography-text.styles_1734x2k.css +2 -2
- package/typography/typography.js +1 -1
- package/typography/typography.js.map +1 -1
- package/typography/typography.styles.d.ts +2 -0
- package/typography/typography.styles.js +1 -1
- package/typography/typography.styles.js.map +1 -1
- package/typography/typography.styles_1wd82dn.css +11 -0
- package/uneditable-section/index.d.ts +1 -1
- package/uneditable-section/section-item.styles.js +1 -1
- package/uneditable-section/section-item.styles.js.map +1 -1
- package/uneditable-section/section-item.styles_mwx8ht.css +9 -0
- package/uneditable-section/uneditable-section.d.ts +2 -1
- package/uneditable-section/uneditable-section.js +1 -1
- package/uneditable-section/uneditable-section.js.map +1 -1
- package/uneditable-section/uneditable-section.styles_aj9zun.css +2 -2
- package/unit-number/unit-number-input.styles_8yizj.css +2 -2
- package/util/is-styled-components.d.ts +5 -0
- package/util/is-styled-components.js +2 -0
- package/util/is-styled-components.js.map +1 -0
- package/util/styling-helper.js +1 -1
- package/util/styling-helper.js.map +1 -1
- package/badge/badge.styles_1yrxocm.css +0 -16
- package/cjs/badge/badge.styles_1yrxocm.css +0 -16
- package/cjs/date-navigator/date-navigator.styles_1cotsgz.css +0 -4
- package/cjs/example/example.js +0 -2
- package/cjs/example/example.js.map +0 -1
- package/cjs/example/example_r47nvz.css +0 -1
- package/cjs/example/index.js +0 -2
- package/cjs/example/index.js.map +0 -1
- package/cjs/file-upload/file-list-item/file-list-item-thumbnail.styles_1vrh1ve.css +0 -4
- package/cjs/file-upload/file-list-item/file-list-item.styles_y7my2m.css +0 -14
- package/cjs/file-upload/file-list.js +0 -2
- package/cjs/file-upload/file-list.js.map +0 -1
- package/cjs/file-upload/file-list.styles.js +0 -2
- package/cjs/file-upload/file-list.styles.js.map +0 -1
- package/cjs/file-upload/file-list.styles_16vplxk.css +0 -3
- package/cjs/filter/filter-modal.styles_e0ev97.css +0 -8
- package/cjs/filter/filter-sidebar.styles_cwvqql.css +0 -4
- package/cjs/form/form-label.styles_rk98yd.css +0 -6
- package/cjs/image-button/image-button.styles_qtt605.css +0 -5
- package/cjs/input-group/input-group.styles_fpy81r.css +0 -3
- package/cjs/input-textarea/textarea-counter.styles_adg5h1.css +0 -1
- package/cjs/input-textarea/textarea.styles_g0zgyq.css +0 -5
- package/cjs/language-switcher/dropdown-panel.styles_1z0n7qq.css +0 -4
- package/cjs/language-switcher/dropdown-variant.styles_16c4wc1.css +0 -2
- package/cjs/language-switcher/link-container-variant.styles_1blx9qm.css +0 -5
- package/cjs/markup/markup.utils.js +0 -2
- package/cjs/markup/markup.utils.js.map +0 -1
- package/cjs/modal/modal-box.styles_1xrlxhd.css +0 -2
- package/cjs/modal/modal.styles_1sav73f.css +0 -11
- package/cjs/modal-v2/modal-v2.styles_1irpyi6.css +0 -3
- package/cjs/otp-verification/contact-input-section-styles.js +0 -115
- package/cjs/otp-verification/contact-input-section-styles.js.map +0 -1
- package/cjs/otp-verification/otp-verification-styles.js +0 -6
- package/cjs/otp-verification/otp-verification-styles.js.map +0 -1
- package/cjs/otp-verification/verification-section-styles.js +0 -27
- package/cjs/otp-verification/verification-section-styles.js.map +0 -1
- package/cjs/schedule/schedule-header/schedule-header.style.js +0 -38
- package/cjs/schedule/schedule-header/schedule-header.style.js.map +0 -1
- package/cjs/schedule/schedule-week-view/slot-content.js +0 -2
- package/cjs/schedule/schedule-week-view/slot-content.js.map +0 -1
- package/cjs/schedule/schedule-week-view/slot-content.styles.js +0 -40
- package/cjs/schedule/schedule-week-view/slot-content.styles.js.map +0 -1
- package/cjs/select-histogram/select-histogram.styles_11916eo.css +0 -5
- package/cjs/shared/dropdown-list/expandable-element.styles_5o9f9w.css +0 -6
- package/cjs/shared/dropdown-wrapper/dropdown-wrapper.styles_v10jbi.css +0 -3
- package/cjs/shared/internal-calendar/standard/standard-calendar-day-view.styles_1dbvup3.css +0 -3
- package/cjs/shared/standalone-date-input/standalone-date-input.styles_1m0da43.css +0 -13
- package/cjs/shared/styles/index.js +0 -2
- package/cjs/shared/styles/index.js.map +0 -1
- package/cjs/shared/time-slot/time-slot.styles_1r9na3f.css +0 -17
- package/cjs/sidenav/sidenav-drawer-item.styles_yp8cga.css +0 -6
- package/cjs/sidenav/sidenav-drawer-subitem.styles_1ylzfn5.css +0 -1
- package/cjs/text-list/text-list.styles_1gohl3f.css +0 -16
- package/cjs/time-slot-bar-week/time-slot-bar-week-days.style.js +0 -104
- package/cjs/time-slot-bar-week/time-slot-bar-week-days.style.js.map +0 -1
- package/cjs/time-slot-bar-week/time-slot-bar-week.style.js +0 -10
- package/cjs/time-slot-bar-week/time-slot-bar-week.style.js.map +0 -1
- package/cjs/time-slot-week-view/time-slot-week-days.style.js +0 -59
- package/cjs/time-slot-week-view/time-slot-week-days.style.js.map +0 -1
- package/cjs/timepicker/timepicker.styles_zmkhl8.css +0 -1
- package/cjs/typography/typography.styles_1jqils.css +0 -9
- package/cjs/uneditable-section/section-item.styles_1dfjzc4.css +0 -9
- package/cjs/v3_theme/border/specs/default-border-set.js +0 -2
- package/cjs/v3_theme/border/specs/default-border-set.js.map +0 -1
- package/cjs/v3_theme/border/theme-helper.js +0 -2
- package/cjs/v3_theme/border/theme-helper.js.map +0 -1
- package/cjs/v3_theme/border-util/specs/default-border-util-set.js +0 -2
- package/cjs/v3_theme/border-util/specs/default-border-util-set.js.map +0 -1
- package/cjs/v3_theme/border-util/theme-helper.js +0 -2
- package/cjs/v3_theme/border-util/theme-helper.js.map +0 -1
- package/cjs/v3_theme/border-util/utils.js +0 -8
- package/cjs/v3_theme/border-util/utils.js.map +0 -1
- package/cjs/v3_theme/breakpoint/media-query-helper.js +0 -2
- package/cjs/v3_theme/breakpoint/media-query-helper.js.map +0 -1
- package/cjs/v3_theme/breakpoint/specs/default-breakpoint-set.js +0 -2
- package/cjs/v3_theme/breakpoint/specs/default-breakpoint-set.js.map +0 -1
- package/cjs/v3_theme/breakpoint/theme-helper.js +0 -2
- package/cjs/v3_theme/breakpoint/theme-helper.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/a11yplayground-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/a11yplayground-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/bookingsg-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/bookingsg-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/ccube-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/ccube-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/imda-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/imda-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/lifesg-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/lifesg-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/mylegacy-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/mylegacy-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/oneservice-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/oneservice-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/pa-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/pa-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/rbs-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/rbs-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/smgs-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/smgs-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/spf-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/spf-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/specs/supportgowhere-colour-set.js +0 -2
- package/cjs/v3_theme/colour-primitive/specs/supportgowhere-colour-set.js.map +0 -1
- package/cjs/v3_theme/colour-primitive/theme-helper.js +0 -2
- package/cjs/v3_theme/colour-primitive/theme-helper.js.map +0 -1
- package/cjs/v3_theme/colour-semantic/specs/a11yplayground-semantic-tokens.js +0 -2
- package/cjs/v3_theme/colour-semantic/specs/a11yplayground-semantic-tokens.js.map +0 -1
- package/cjs/v3_theme/colour-semantic/specs/lifesg-semantic-tokens.js +0 -2
- package/cjs/v3_theme/colour-semantic/specs/lifesg-semantic-tokens.js.map +0 -1
- package/cjs/v3_theme/colour-semantic/specs/pa-semantic-tokens.js +0 -2
- package/cjs/v3_theme/colour-semantic/specs/pa-semantic-tokens.js.map +0 -1
- package/cjs/v3_theme/colour-semantic/specs/sgwdigitallobby-tokens.js +0 -2
- package/cjs/v3_theme/colour-semantic/specs/sgwdigitallobby-tokens.js.map +0 -1
- package/cjs/v3_theme/colour-semantic/theme-helper.js +0 -2
- package/cjs/v3_theme/colour-semantic/theme-helper.js.map +0 -1
- package/cjs/v3_theme/ds-theme-provider.js +0 -2
- package/cjs/v3_theme/ds-theme-provider.js.map +0 -1
- package/cjs/v3_theme/font/specs/a11yplayground-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/a11yplayground-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/bookingsg-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/bookingsg-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/default-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/default-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/imda-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/imda-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/oneservice-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/oneservice-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/pa-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/pa-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/smgs-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/smgs-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/spf-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/spf-font-set.js.map +0 -1
- package/cjs/v3_theme/font/specs/supportgowhere-font-set.js +0 -2
- package/cjs/v3_theme/font/specs/supportgowhere-font-set.js.map +0 -1
- package/cjs/v3_theme/font/theme-helper.js +0 -2
- package/cjs/v3_theme/font/theme-helper.js.map +0 -1
- package/cjs/v3_theme/font/utils.js +0 -10
- package/cjs/v3_theme/font/utils.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/a11yplayground-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/a11yplayground-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/bookingsg-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/bookingsg-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/default-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/default-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/imda-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/imda-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/mylegacy-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/mylegacy-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/oneservice-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/oneservice-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/pa-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/pa-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/sgw-digital-lobby-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/sgw-digital-lobby-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/smgs-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/smgs-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/spf-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/spf-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/specs/supportgowhere-font-spec-set.js +0 -2
- package/cjs/v3_theme/font-spec/specs/supportgowhere-font-spec-set.js.map +0 -1
- package/cjs/v3_theme/font-spec/theme-helper.js +0 -2
- package/cjs/v3_theme/font-spec/theme-helper.js.map +0 -1
- package/cjs/v3_theme/helpers.js +0 -2
- package/cjs/v3_theme/helpers.js.map +0 -1
- package/cjs/v3_theme/index.js +0 -2
- package/cjs/v3_theme/index.js.map +0 -1
- package/cjs/v3_theme/motion/specs/default-motion-set.js +0 -2
- package/cjs/v3_theme/motion/specs/default-motion-set.js.map +0 -1
- package/cjs/v3_theme/motion/theme-helper.js +0 -2
- package/cjs/v3_theme/motion/theme-helper.js.map +0 -1
- package/cjs/v3_theme/radius/specs/default-radius-set.js +0 -2
- package/cjs/v3_theme/radius/specs/default-radius-set.js.map +0 -1
- package/cjs/v3_theme/radius/specs/spf-radius-set.js +0 -2
- package/cjs/v3_theme/radius/specs/spf-radius-set.js.map +0 -1
- package/cjs/v3_theme/radius/theme-helper.js +0 -2
- package/cjs/v3_theme/radius/theme-helper.js.map +0 -1
- package/cjs/v3_theme/shadow/specs/default-shadow-set.js +0 -2
- package/cjs/v3_theme/shadow/specs/default-shadow-set.js.map +0 -1
- package/cjs/v3_theme/shadow/theme-helper.js +0 -2
- package/cjs/v3_theme/shadow/theme-helper.js.map +0 -1
- package/cjs/v3_theme/spacing/specs/default-spacing-set.js +0 -2
- package/cjs/v3_theme/spacing/specs/default-spacing-set.js.map +0 -1
- package/cjs/v3_theme/spacing/theme-helper.js +0 -2
- package/cjs/v3_theme/spacing/theme-helper.js.map +0 -1
- package/cjs/v3_theme/use-theme-mode.js +0 -2
- package/cjs/v3_theme/use-theme-mode.js.map +0 -1
- package/codemods/common.ts +0 -8
- package/codemods/data.ts +0 -16
- package/codemods/deprecate-v2-tokens/data.ts +0 -283
- package/codemods/deprecate-v2-tokens/index.ts +0 -89
- package/codemods/migrate-colour/data.ts +0 -95
- package/codemods/migrate-colour/index.ts +0 -104
- package/codemods/migrate-layout/data.ts +0 -5
- package/codemods/migrate-layout/index.ts +0 -108
- package/codemods/migrate-media-query/data.ts +0 -20
- package/codemods/migrate-media-query/index.ts +0 -113
- package/codemods/migrate-text/data.ts +0 -48
- package/codemods/migrate-text/index.ts +0 -196
- package/codemods/migrate-text-list/data.ts +0 -16
- package/codemods/migrate-text-list/index.ts +0 -111
- package/common.d.ts +0 -8
- package/date-navigator/date-navigator.styles_1cotsgz.css +0 -4
- package/deprecate-v2-tokens/data.d.ts +0 -8
- package/example/example.d.ts +0 -2
- package/example/example.js +0 -2
- package/example/example.js.map +0 -1
- package/example/example_r47nvz.css +0 -1
- package/example/index.d.ts +0 -1
- package/example/index.js +0 -2
- package/example/index.js.map +0 -1
- package/example/types.d.ts +0 -3
- package/file-upload/file-list-item/file-list-item-thumbnail.styles_1vrh1ve.css +0 -4
- package/file-upload/file-list-item/file-list-item.styles_y7my2m.css +0 -14
- package/file-upload/file-list.js +0 -2
- package/file-upload/file-list.js.map +0 -1
- package/file-upload/file-list.styles.js +0 -2
- package/file-upload/file-list.styles.js.map +0 -1
- package/file-upload/file-list.styles_16vplxk.css +0 -3
- package/filter/filter-modal.styles_e0ev97.css +0 -8
- package/filter/filter-sidebar.styles_cwvqql.css +0 -4
- package/form/form-label.styles_rk98yd.css +0 -6
- package/image-button/image-button.styles_qtt605.css +0 -5
- package/input-group/input-group.styles_fpy81r.css +0 -3
- package/input-textarea/textarea-counter.styles_adg5h1.css +0 -1
- package/input-textarea/textarea.styles_g0zgyq.css +0 -5
- package/language-switcher/dropdown-panel.styles_1z0n7qq.css +0 -4
- package/language-switcher/dropdown-variant.styles_16c4wc1.css +0 -2
- package/language-switcher/link-container-variant.styles_1blx9qm.css +0 -5
- package/markup/markup.utils.d.ts +0 -2
- package/markup/markup.utils.js +0 -2
- package/markup/markup.utils.js.map +0 -1
- package/migrate-colour/data.d.ts +0 -270
- package/migrate-colour/index.d.ts +0 -7
- package/migrate-layout/data.d.ts +0 -5
- package/migrate-layout/index.d.ts +0 -2
- package/migrate-media-query/data.d.ts +0 -20
- package/migrate-media-query/index.d.ts +0 -2
- package/migrate-text/data.d.ts +0 -46
- package/migrate-text/index.d.ts +0 -2
- package/migrate-text-list/data.d.ts +0 -16
- package/migrate-text-list/index.d.ts +0 -2
- package/modal/modal-box.styles_1xrlxhd.css +0 -2
- package/modal/modal.styles_1sav73f.css +0 -11
- package/modal-v2/modal-v2.styles_1irpyi6.css +0 -3
- package/otp-verification/contact-input-section-styles.d.ts +0 -14
- package/otp-verification/contact-input-section-styles.js +0 -115
- package/otp-verification/contact-input-section-styles.js.map +0 -1
- package/otp-verification/otp-verification-styles.d.ts +0 -1
- package/otp-verification/otp-verification-styles.js +0 -6
- package/otp-verification/otp-verification-styles.js.map +0 -1
- package/otp-verification/verification-section-styles.d.ts +0 -23
- package/otp-verification/verification-section-styles.js +0 -27
- package/otp-verification/verification-section-styles.js.map +0 -1
- package/schedule/schedule-header/schedule-header.style.d.ts +0 -25
- package/schedule/schedule-header/schedule-header.style.js +0 -38
- package/schedule/schedule-header/schedule-header.style.js.map +0 -1
- package/schedule/schedule-week-view/slot-content.d.ts +0 -8
- package/schedule/schedule-week-view/slot-content.js +0 -2
- package/schedule/schedule-week-view/slot-content.js.map +0 -1
- package/schedule/schedule-week-view/slot-content.styles.d.ts +0 -27
- package/schedule/schedule-week-view/slot-content.styles.js +0 -40
- package/schedule/schedule-week-view/slot-content.styles.js.map +0 -1
- package/schedule/shared/index.d.ts +0 -2
- package/select-histogram/select-histogram.styles_11916eo.css +0 -5
- package/shared/dropdown-list/expandable-element.styles_5o9f9w.css +0 -6
- package/shared/dropdown-wrapper/dropdown-wrapper.styles_v10jbi.css +0 -3
- package/shared/internal-calendar/standard/standard-calendar-day-view.styles_1dbvup3.css +0 -3
- package/shared/standalone-date-input/standalone-date-input.styles_1m0da43.css +0 -13
- package/shared/styles/index.js +0 -2
- package/shared/styles/index.js.map +0 -1
- package/shared/time-slot/time-slot.styles_1r9na3f.css +0 -17
- package/sidenav/sidenav-drawer-item.styles_yp8cga.css +0 -6
- package/sidenav/sidenav-drawer-subitem.styles_1ylzfn5.css +0 -1
- package/text-list/text-list.styles_1gohl3f.css +0 -16
- package/time-slot-bar-week/time-slot-bar-week-days.style.d.ts +0 -54
- package/time-slot-bar-week/time-slot-bar-week-days.style.js +0 -104
- package/time-slot-bar-week/time-slot-bar-week-days.style.js.map +0 -1
- package/time-slot-bar-week/time-slot-bar-week.style.d.ts +0 -1
- package/time-slot-bar-week/time-slot-bar-week.style.js +0 -10
- package/time-slot-bar-week/time-slot-bar-week.style.js.map +0 -1
- package/time-slot-week-view/time-slot-week-days.style.d.ts +0 -12
- package/time-slot-week-view/time-slot-week-days.style.js +0 -59
- package/time-slot-week-view/time-slot-week-days.style.js.map +0 -1
- package/timepicker/timepicker.styles_zmkhl8.css +0 -1
- package/typography/typography.styles_1jqils.css +0 -9
- package/uneditable-section/section-item.styles_1dfjzc4.css +0 -9
- package/v3_theme/border/specs/default-border-set.d.ts +0 -2
- package/v3_theme/border/specs/default-border-set.js +0 -2
- package/v3_theme/border/specs/default-border-set.js.map +0 -1
- package/v3_theme/border/theme-helper.d.ts +0 -10
- package/v3_theme/border/theme-helper.js +0 -2
- package/v3_theme/border/theme-helper.js.map +0 -1
- package/v3_theme/border/types.d.ts +0 -12
- package/v3_theme/border-util/specs/default-border-util-set.d.ts +0 -2
- package/v3_theme/border-util/specs/default-border-util-set.js +0 -2
- package/v3_theme/border-util/specs/default-border-util-set.js.map +0 -1
- package/v3_theme/border-util/theme-helper.d.ts +0 -8
- package/v3_theme/border-util/theme-helper.js +0 -2
- package/v3_theme/border-util/theme-helper.js.map +0 -1
- package/v3_theme/border-util/types.d.ts +0 -19
- package/v3_theme/border-util/utils.d.ts +0 -11
- package/v3_theme/border-util/utils.js +0 -8
- package/v3_theme/border-util/utils.js.map +0 -1
- package/v3_theme/breakpoint/media-query-helper.d.ts +0 -9
- package/v3_theme/breakpoint/media-query-helper.js +0 -2
- package/v3_theme/breakpoint/media-query-helper.js.map +0 -1
- package/v3_theme/breakpoint/specs/default-breakpoint-set.d.ts +0 -2
- package/v3_theme/breakpoint/specs/default-breakpoint-set.js +0 -2
- package/v3_theme/breakpoint/specs/default-breakpoint-set.js.map +0 -1
- package/v3_theme/breakpoint/theme-helper.d.ts +0 -39
- package/v3_theme/breakpoint/theme-helper.js +0 -2
- package/v3_theme/breakpoint/theme-helper.js.map +0 -1
- package/v3_theme/breakpoint/types.d.ts +0 -41
- package/v3_theme/colour-primitive/specs/a11yplayground-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/a11yplayground-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/a11yplayground-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/bookingsg-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/bookingsg-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/bookingsg-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/ccube-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/ccube-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/ccube-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/imda-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/imda-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/imda-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/lifesg-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/lifesg-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/lifesg-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/mylegacy-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/mylegacy-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/mylegacy-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/oneservice-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/oneservice-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/oneservice-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/pa-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/pa-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/pa-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/rbs-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/rbs-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/rbs-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/smgs-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/smgs-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/smgs-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/spf-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/spf-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/spf-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/specs/supportgowhere-colour-set.d.ts +0 -2
- package/v3_theme/colour-primitive/specs/supportgowhere-colour-set.js +0 -2
- package/v3_theme/colour-primitive/specs/supportgowhere-colour-set.js.map +0 -1
- package/v3_theme/colour-primitive/theme-helper.d.ts +0 -10
- package/v3_theme/colour-primitive/theme-helper.js +0 -2
- package/v3_theme/colour-primitive/theme-helper.js.map +0 -1
- package/v3_theme/colour-primitive/types.d.ts +0 -98
- package/v3_theme/colour-semantic/specs/a11yplayground-semantic-tokens.d.ts +0 -3
- package/v3_theme/colour-semantic/specs/a11yplayground-semantic-tokens.js +0 -2
- package/v3_theme/colour-semantic/specs/a11yplayground-semantic-tokens.js.map +0 -1
- package/v3_theme/colour-semantic/specs/lifesg-semantic-tokens.d.ts +0 -3
- package/v3_theme/colour-semantic/specs/lifesg-semantic-tokens.js +0 -2
- package/v3_theme/colour-semantic/specs/lifesg-semantic-tokens.js.map +0 -1
- package/v3_theme/colour-semantic/specs/pa-semantic-tokens.d.ts +0 -2
- package/v3_theme/colour-semantic/specs/pa-semantic-tokens.js +0 -2
- package/v3_theme/colour-semantic/specs/pa-semantic-tokens.js.map +0 -1
- package/v3_theme/colour-semantic/specs/sgwdigitallobby-tokens.d.ts +0 -3
- package/v3_theme/colour-semantic/specs/sgwdigitallobby-tokens.js +0 -2
- package/v3_theme/colour-semantic/specs/sgwdigitallobby-tokens.js.map +0 -1
- package/v3_theme/colour-semantic/theme-helper.d.ts +0 -10
- package/v3_theme/colour-semantic/theme-helper.js +0 -2
- package/v3_theme/colour-semantic/theme-helper.js.map +0 -1
- package/v3_theme/colour-semantic/types.d.ts +0 -123
- package/v3_theme/components/specs/a11yplayground-component-token-set.d.ts +0 -2
- package/v3_theme/components/specs/default-component-token-set.d.ts +0 -2
- package/v3_theme/components/specs/lifesg-component-token-set.d.ts +0 -2
- package/v3_theme/components/specs/pa-component-token-set.d.ts +0 -2
- package/v3_theme/components/specs/smgs-component-token-set.d.ts +0 -2
- package/v3_theme/components/specs/spf-component-token-set.d.ts +0 -2
- package/v3_theme/components/theme-helper.d.ts +0 -17
- package/v3_theme/components/types.d.ts +0 -44
- package/v3_theme/ds-theme-provider.d.ts +0 -2
- package/v3_theme/ds-theme-provider.js +0 -2
- package/v3_theme/ds-theme-provider.js.map +0 -1
- package/v3_theme/font/specs/a11yplayground-font-set.d.ts +0 -2
- package/v3_theme/font/specs/a11yplayground-font-set.js +0 -2
- package/v3_theme/font/specs/a11yplayground-font-set.js.map +0 -1
- package/v3_theme/font/specs/bookingsg-font-set.d.ts +0 -2
- package/v3_theme/font/specs/bookingsg-font-set.js +0 -2
- package/v3_theme/font/specs/bookingsg-font-set.js.map +0 -1
- package/v3_theme/font/specs/default-font-set.d.ts +0 -2
- package/v3_theme/font/specs/default-font-set.js +0 -2
- package/v3_theme/font/specs/default-font-set.js.map +0 -1
- package/v3_theme/font/specs/imda-font-set.d.ts +0 -2
- package/v3_theme/font/specs/imda-font-set.js +0 -2
- package/v3_theme/font/specs/imda-font-set.js.map +0 -1
- package/v3_theme/font/specs/oneservice-font-set.d.ts +0 -2
- package/v3_theme/font/specs/oneservice-font-set.js +0 -2
- package/v3_theme/font/specs/oneservice-font-set.js.map +0 -1
- package/v3_theme/font/specs/pa-font-set.d.ts +0 -2
- package/v3_theme/font/specs/pa-font-set.js +0 -2
- package/v3_theme/font/specs/pa-font-set.js.map +0 -1
- package/v3_theme/font/specs/smgs-font-set.d.ts +0 -2
- package/v3_theme/font/specs/smgs-font-set.js +0 -2
- package/v3_theme/font/specs/smgs-font-set.js.map +0 -1
- package/v3_theme/font/specs/spf-font-set.d.ts +0 -2
- package/v3_theme/font/specs/spf-font-set.js +0 -2
- package/v3_theme/font/specs/spf-font-set.js.map +0 -1
- package/v3_theme/font/specs/supportgowhere-font-set.d.ts +0 -2
- package/v3_theme/font/specs/supportgowhere-font-set.js +0 -2
- package/v3_theme/font/specs/supportgowhere-font-set.js.map +0 -1
- package/v3_theme/font/theme-helper.d.ts +0 -7
- package/v3_theme/font/theme-helper.js +0 -2
- package/v3_theme/font/theme-helper.js.map +0 -1
- package/v3_theme/font/types.d.ts +0 -54
- package/v3_theme/font/utils.d.ts +0 -4
- package/v3_theme/font/utils.js +0 -10
- package/v3_theme/font/utils.js.map +0 -1
- package/v3_theme/font-spec/specs/a11yplayground-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/a11yplayground-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/a11yplayground-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/bookingsg-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/bookingsg-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/bookingsg-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/default-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/default-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/default-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/imda-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/imda-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/imda-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/mylegacy-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/mylegacy-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/mylegacy-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/oneservice-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/oneservice-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/oneservice-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/pa-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/pa-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/pa-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/sgw-digital-lobby-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/sgw-digital-lobby-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/sgw-digital-lobby-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/smgs-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/smgs-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/smgs-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/spf-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/spf-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/spf-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/specs/supportgowhere-font-spec-set.d.ts +0 -2
- package/v3_theme/font-spec/specs/supportgowhere-font-spec-set.js +0 -2
- package/v3_theme/font-spec/specs/supportgowhere-font-spec-set.js.map +0 -1
- package/v3_theme/font-spec/theme-helper.d.ts +0 -6
- package/v3_theme/font-spec/theme-helper.js +0 -2
- package/v3_theme/font-spec/theme-helper.js.map +0 -1
- package/v3_theme/font-spec/types.d.ts +0 -53
- package/v3_theme/helpers.d.ts +0 -7
- package/v3_theme/helpers.js +0 -2
- package/v3_theme/helpers.js.map +0 -1
- package/v3_theme/index.d.ts +0 -696
- package/v3_theme/index.js +0 -2
- package/v3_theme/index.js.map +0 -1
- package/v3_theme/internal-types.d.ts +0 -4
- package/v3_theme/motion/specs/default-motion-set.d.ts +0 -2
- package/v3_theme/motion/specs/default-motion-set.js +0 -2
- package/v3_theme/motion/specs/default-motion-set.js.map +0 -1
- package/v3_theme/motion/theme-helper.d.ts +0 -6
- package/v3_theme/motion/theme-helper.js +0 -2
- package/v3_theme/motion/theme-helper.js.map +0 -1
- package/v3_theme/motion/types.d.ts +0 -17
- package/v3_theme/radius/specs/default-radius-set.d.ts +0 -2
- package/v3_theme/radius/specs/default-radius-set.js +0 -2
- package/v3_theme/radius/specs/default-radius-set.js.map +0 -1
- package/v3_theme/radius/specs/spf-radius-set.d.ts +0 -2
- package/v3_theme/radius/specs/spf-radius-set.js +0 -2
- package/v3_theme/radius/specs/spf-radius-set.js.map +0 -1
- package/v3_theme/radius/theme-helper.d.ts +0 -6
- package/v3_theme/radius/theme-helper.js +0 -2
- package/v3_theme/radius/theme-helper.js.map +0 -1
- package/v3_theme/radius/types.d.ts +0 -13
- package/v3_theme/shadow/specs/default-shadow-set.d.ts +0 -2
- package/v3_theme/shadow/specs/default-shadow-set.js +0 -2
- package/v3_theme/shadow/specs/default-shadow-set.js.map +0 -1
- package/v3_theme/shadow/theme-helper.d.ts +0 -7
- package/v3_theme/shadow/theme-helper.js +0 -2
- package/v3_theme/shadow/theme-helper.js.map +0 -1
- package/v3_theme/shadow/types.d.ts +0 -21
- package/v3_theme/spacing/specs/default-spacing-set.d.ts +0 -2
- package/v3_theme/spacing/specs/default-spacing-set.js +0 -2
- package/v3_theme/spacing/specs/default-spacing-set.js.map +0 -1
- package/v3_theme/spacing/theme-helper.d.ts +0 -6
- package/v3_theme/spacing/theme-helper.js +0 -2
- package/v3_theme/spacing/theme-helper.js.map +0 -1
- package/v3_theme/spacing/types.d.ts +0 -26
- package/v3_theme/types.d.ts +0 -78
- package/v3_theme/use-theme-mode.d.ts +0 -4
- package/v3_theme/use-theme-mode.js +0 -2
- package/v3_theme/use-theme-mode.js.map +0 -1
- /package/file-upload/{file-list.styles.d.ts → file-list/file-list.styles.d.ts} +0 -0
- /package/{deprecate-v2-tokens → migrate-popover}/index.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-slot-bar-week-days.js","sources":["../../../src/time-slot-bar-week/time-slot-bar-week-days.tsx"],"sourcesContent":["import { useSpring } from \"@react-spring/web\";\nimport type { Dayjs } from \"dayjs\";\nimport dayjs from \"dayjs\";\nimport isEmpty from \"lodash/isEmpty\";\nimport maxBy from \"lodash/maxBy\";\nimport minBy from \"lodash/minBy\";\nimport type React from \"react\";\nimport { useMemo, useRef, useState } from \"react\";\nimport { useResizeDetector } from \"react-resize-detector\";\n\nimport { inertValue, VisuallyHidden } from \"../shared/accessibility\";\nimport type { InternalCalendarProps } from \"../shared/internal-calendar\";\nimport type { CellStyleProps } from \"../shared/internal-calendar/day-cell\";\nimport { DayCell } from \"../shared/internal-calendar/day-cell\";\nimport { Colour } from \"../theme\";\nimport type { TimeSlot } from \"../time-slot-bar/types\";\nimport { DateHelper } from \"../util\";\nimport { CalendarHelper } from \"../util/calendar-helper\";\nimport { StringHelper } from \"../util/string-helper\";\nimport { TimeHelper } from \"../util/time-helper\";\nimport {\n CellWeekText,\n ChevronIcon,\n CollapseExpandAllButton,\n CollapseExpandAllWrapper,\n ColumnWeekCell,\n Expandable,\n GridWrapper,\n HeaderCellWeek,\n HeaderCellWeekColumn,\n TimeColumn,\n TimeColumnText,\n TimeColumnWrapper,\n TimeSlotComponent,\n TimeSlotWrapper,\n Wrapper,\n} from \"./time-slot-bar-week-days.style\";\nimport type { TimeSlotCellsVariant } from \"./types\";\n\ninterface TimeSlotWeekDaysProps\n extends Pick<\n InternalCalendarProps,\n \"disabledDates\" | \"minDate\" | \"maxDate\"\n > {\n selectedDate: string | undefined;\n calendarDate: Dayjs;\n onSelect: (value: Dayjs) => void;\n slots: { [date: string]: TimeSlot[] };\n startTime?: string | undefined;\n endTime?: string | undefined;\n maxVisibleCellHeight?: number | undefined;\n interval?: number | undefined;\n variant?: TimeSlotCellsVariant | undefined;\n enableSelection?: boolean | undefined;\n onSlotClick?: ((date: string, timeSlot: TimeSlot) => void) | undefined;\n}\n\ninterface TimeSlotCell extends TimeSlot {\n cellLength: number;\n halfFill?: \"top\" | \"bottom\" | undefined;\n isActualSlot?: boolean | undefined;\n rowIndex?: number | undefined;\n}\n\ninterface FocusableSlotMeta {\n key: string;\n date: string;\n rowIndex: number;\n}\n\nconst SLOT_HEIGHT = 12; // px\nconst SLOT_GAP = 4; // px\nconst ROW_HEIGHT = SLOT_HEIGHT + SLOT_GAP;\n\nexport const TimeSlotBarWeekDays = ({\n calendarDate,\n disabledDates,\n selectedDate,\n onSelect,\n minDate,\n maxDate,\n startTime,\n endTime,\n maxVisibleCellHeight,\n slots: daySlots,\n interval = 30,\n variant = \"flexible\",\n enableSelection = true,\n onSlotClick,\n}: TimeSlotWeekDaysProps) => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const dateFormat = \"YYYY-MM-DD\";\n const [expandAll, setExpandAll] = useState<boolean>(false);\n const [hoverDay, setHoverDay] = useState<Dayjs>();\n const slotButtonRefs = useRef<Record<string, HTMLButtonElement | null>>({});\n const currentCalendarWeek = useMemo((): Dayjs[] => {\n return CalendarHelper.generateDaysForCurrentWeek(calendarDate);\n }, [calendarDate]);\n\n const flattenedSlots = Object.values(daySlots ?? {}).flat();\n const minStartTime =\n startTime ?? minBy(flattenedSlots, \"startTime\")?.startTime ?? \"00:00\";\n const maxEndTime =\n endTime ?? maxBy(flattenedSlots, \"endTime\")?.endTime ?? \"24:00\";\n const numberOfCells = Math.ceil(\n DateHelper.getTimeDiffInMinutes(minStartTime, maxEndTime) / interval\n );\n\n // React spring animation configuration\n const { height: actualHeight = 0, ref: cellsRef } = useResizeDetector();\n const hasCollapsedContent =\n !!maxVisibleCellHeight && actualHeight > maxVisibleCellHeight;\n const visibleRowCount =\n maxVisibleCellHeight !== undefined\n ? Math.max(\n 1,\n Math.floor((maxVisibleCellHeight + SLOT_GAP) / ROW_HEIGHT)\n )\n : 0;\n const collapsedHeight =\n visibleRowCount > 0\n ? visibleRowCount * ROW_HEIGHT - SLOT_GAP\n : maxVisibleCellHeight;\n const height = maxVisibleCellHeight\n ? !hasCollapsedContent || expandAll\n ? actualHeight\n : collapsedHeight\n : actualHeight;\n const expandableStyles = useSpring({ height });\n\n const generatedDaySlots = useMemo((): {\n [date: string]: TimeSlotCell[];\n } => {\n if (daySlots) {\n const transformedDaySlots: Record<string, TimeSlotCell[]> = {};\n Object.entries(daySlots).forEach(([key, slots]) => {\n const cellsArray = initializeAndFillSlots(slots);\n transformedDaySlots[key] = populateEmptyCells(cellsArray);\n });\n return transformedDaySlots;\n }\n return {};\n }, [daySlots]);\n\n const focusableSlotsByDate = useMemo(() => {\n return currentCalendarWeek.reduce<Record<string, FocusableSlotMeta[]>>(\n (result, day) => {\n const formattedDate = day.format(dateFormat);\n\n result[formattedDate] = getCellsForDate(formattedDate)\n .filter(\n (\n slot\n ): slot is TimeSlotCell & {\n isActualSlot: true;\n rowIndex: number;\n } => !!slot.isActualSlot && slot.rowIndex !== undefined\n )\n .map((slot) => ({\n key: `${formattedDate}-${slot.id}`,\n date: formattedDate,\n rowIndex: slot.rowIndex,\n }))\n .sort((a, b) => a.rowIndex - b.rowIndex);\n\n return result;\n },\n {}\n );\n }, [currentCalendarWeek, generatedDaySlots]);\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleDayClick = (value: Dayjs, isDisabled: boolean) => {\n if (isDisabled || !enableSelection) return;\n\n onSelect(value);\n };\n\n const handleDayHover = (value: Dayjs) => {\n setHoverDay(value);\n };\n\n const handleDayHoverClear = () => {\n setHoverDay(undefined);\n };\n\n const handleSlotClick = (date: string, slot: TimeSlot) => {\n onSlotClick?.(date, slot);\n };\n\n const handleSlotButtonClick =\n (date: string, slot: TimeSlot) =>\n (event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n\n handleSlotClick(date, slot);\n };\n\n const handleExpandCollapseClick = (event: React.MouseEvent) => {\n event.preventDefault();\n setExpandAll((prevExpandValue) => !prevExpandValue);\n };\n\n const handleSlotKeyDown = (\n event: React.KeyboardEvent<HTMLButtonElement>,\n currentSlot: FocusableSlotMeta\n ) => {\n const sameColumnSlots = focusableSlotsByDate[currentSlot.date] ?? [];\n\n const focusSlot = (slot?: FocusableSlotMeta) => {\n if (!slot) return;\n slotButtonRefs.current[slot.key]?.focus();\n };\n\n switch (event.key) {\n case \"ArrowRight\":\n case \"ArrowDown\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex + 1]);\n break;\n }\n case \"ArrowLeft\":\n case \"ArrowUp\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex - 1]);\n break;\n }\n case \"Home\":\n event.preventDefault();\n focusSlot(sameColumnSlots[0]);\n break;\n case \"End\":\n event.preventDefault();\n focusSlot(sameColumnSlots[sameColumnSlots.length - 1]);\n break;\n case \"PageUp\":\n event.preventDefault();\n focusSlot(sameColumnSlots[0]);\n break;\n case \"PageDown\": {\n event.preventDefault();\n if (hasCollapsedContent && !expandAll) {\n setExpandAll(true);\n const lastVisibleSlot = [...sameColumnSlots]\n .reverse()\n .find((slot) => slot.rowIndex < visibleRowCount);\n focusSlot(lastVisibleSlot ?? sameColumnSlots[0]);\n break;\n }\n\n focusSlot(sameColumnSlots[sameColumnSlots.length - 1]);\n break;\n }\n default:\n break;\n }\n };\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n const isDisabled = (day: Dayjs): boolean => {\n const isWithinRange = CalendarHelper.isWithinRange(\n day,\n minDate ? dayjs(minDate) : undefined,\n maxDate ? dayjs(maxDate) : undefined\n );\n\n const isDisabledDate =\n (disabledDates && disabledDates.includes(day.format(dateFormat))) ??\n false;\n\n return !isWithinRange || isDisabledDate;\n };\n\n const generateStyleProps = (day: Dayjs) => {\n const dateStartWithYear = day.format(dateFormat);\n const disabled = isDisabled(day);\n const dayCellStyleProps: CellStyleProps = {};\n const isHoverEnabled = enableSelection && !disabled;\n\n if (disabled) {\n dayCellStyleProps.disabled = true;\n }\n\n dayCellStyleProps.interactive = enableSelection\n ? isHoverEnabled\n : false;\n\n const isHover =\n isHoverEnabled && hoverDay && day.isSame(hoverDay, \"day\");\n const isSelected = [selectedDate].includes(dateStartWithYear);\n\n if (isSelected && isHover) {\n dayCellStyleProps.labelType = \"selected-hover\";\n dayCellStyleProps.circleLeft = \"selected-hover-outline\";\n dayCellStyleProps.circleRight = \"selected-hover-outline\";\n } else if (isSelected) {\n dayCellStyleProps.labelType = \"selected\";\n dayCellStyleProps.circleLeft = \"selected-outline\";\n dayCellStyleProps.circleRight = \"selected-outline\";\n } else if (isHover) {\n dayCellStyleProps.labelType = \"hover\";\n dayCellStyleProps.circleLeft = \"hover-subtle\";\n dayCellStyleProps.circleRight = \"hover-subtle\";\n }\n\n return dayCellStyleProps;\n };\n\n function generateFallbackCell(\n prefix: string | number,\n cellLength = 1\n ): TimeSlotCell {\n return {\n id: `${prefix.toString()}-${new Date().getTime()}`,\n startTime: \"\",\n endTime: \"\",\n clickable: false,\n isActualSlot: false,\n styleAttributes: {\n backgroundColor: Colour[\"bg-stronger\"],\n },\n cellLength,\n };\n }\n\n function getSlotAriaLabel(date: string, slot: TimeSlot) {\n const { startTime: slotStartTime, endTime: slotEndTime } = slot;\n\n return StringHelper.joinNonEmptyStrings([\n dayjs(date).format(\"D MMMM YYYY dddd\"),\n slotStartTime && slotEndTime\n ? TimeHelper.formatTimeRange(slotStartTime, slotEndTime)\n : undefined,\n slot.label,\n slot.clickable ?? true ? \"Available\" : \"Unavailable\",\n ]);\n }\n\n function initializeAndFillSlots(slots: TimeSlot[]): TimeSlotCell[] {\n const cellsArray = Array(numberOfCells).fill({});\n\n slots.forEach((slot) => {\n const startIndex = Math.max(\n 0,\n DateHelper.getTimeDiffInMinutes(minStartTime, slot.startTime) /\n interval\n );\n const endIndex = Math.min(\n numberOfCells,\n DateHelper.getTimeDiffInMinutes(minStartTime, slot.endTime) /\n interval\n );\n const cellLength = Math.ceil(endIndex) - Math.floor(startIndex);\n\n switch (variant) {\n case \"fixed\":\n // Keep fixed slots as 1 long cell\n cellsArray[Math.floor(startIndex)] = {\n ...slot,\n isActualSlot: true,\n rowIndex: Math.floor(startIndex),\n cellLength: endIndex - startIndex,\n };\n break;\n case \"flexible\":\n // Split long slot into multiple cells of length 1\n for (let i = 0; i < cellLength; i++) {\n const startTime = DateHelper.addMinutesToTime(\n minStartTime,\n Math.floor(startIndex + i) * interval\n );\n const endTime = DateHelper.addMinutesToTime(\n startTime,\n interval\n );\n\n let halfFill: string | undefined;\n\n if (!isEmpty(cellsArray[Math.floor(startIndex + i)])) {\n // Previous cell extends into current cell, fill entire cell\n halfFill = undefined;\n } else if (i === 0 && startIndex % 1 !== 0) {\n halfFill = \"top\";\n } else if (i === cellLength - 1 && endIndex % 1 !== 0) {\n halfFill = \"bottom\";\n }\n\n cellsArray[Math.floor(startIndex + i)] = {\n ...slot,\n id: `${slot.id}-${i}`,\n startTime,\n endTime,\n isActualSlot: true,\n rowIndex: Math.floor(startIndex + i),\n cellLength: 1,\n halfFill,\n };\n }\n break;\n }\n });\n return cellsArray;\n }\n\n function populateEmptyCells(cellsArray: any[]): TimeSlotCell[] {\n let i = 0;\n switch (variant) {\n case \"fixed\":\n // Truncate consecutive empty cells into 1 [{},{},{...},{},{}] -> [{},{...},{}]\n cellsArray = cellsArray.reduce(\n (result, obj) => {\n const lastObj =\n result.length > 0\n ? result[result.length - 1]\n : result[0];\n if (isEmpty(obj) && isEmpty(lastObj)) {\n return result;\n }\n return [...result, obj];\n },\n [{}]\n );\n\n // Fill in empty cells with timings & corresponding cell lengths\n while (i < cellsArray.length) {\n if (isEmpty(cellsArray[i])) {\n const startTime =\n cellsArray[i - 1]?.endTime ?? minStartTime;\n const endTime =\n cellsArray[i + 1]?.startTime ?? maxEndTime;\n if (startTime !== endTime) {\n const cellLength =\n DateHelper.getTimeDiffInMinutes(\n startTime,\n endTime\n ) / interval;\n cellsArray[i] = {\n ...generateFallbackCell(i),\n startTime,\n endTime,\n cellLength,\n };\n }\n }\n i++;\n }\n break;\n case \"flexible\":\n // Fill in individual empty cell with interval timings\n while (i < cellsArray.length) {\n if (isEmpty(cellsArray[i])) {\n cellsArray[i] = generateFallbackCell(i);\n i++;\n } else {\n i += cellsArray[i].cellLength;\n }\n }\n break;\n }\n return cellsArray.filter(\n (slot) => !isEmpty(slot) && slot.cellLength > 0\n );\n }\n\n function getCellsForDate(formattedDate: string) {\n return (\n generatedDaySlots[formattedDate] ??\n Array(variant === \"flexible\" ? numberOfCells : 1)\n .fill(undefined)\n .map((_, index) =>\n generateFallbackCell(\n index,\n variant === \"fixed\" ? numberOfCells : undefined\n )\n )\n );\n }\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderWeek = () => {\n return (\n <HeaderCellWeekColumn role=\"row\">\n {currentCalendarWeek.map((day, index) => (\n <HeaderCellWeek key={`week-day-${index}`} role=\"gridcell\">\n <CellWeekText\n weight={\"semibold\"}\n $disabled={isDisabled(day)}\n >\n {dayjs(day).format(\"ddd\")}\n </CellWeekText>\n </HeaderCellWeek>\n ))}\n </HeaderCellWeekColumn>\n );\n };\n\n const renderHeader = () => {\n return (\n <HeaderCellWeekColumn role=\"row\" onBlur={handleDayHoverClear}>\n {currentCalendarWeek.map((day, dayIndex) => {\n const dayCellStyleProps = generateStyleProps(day);\n\n return (\n <DayCell\n key={`day-${dayIndex}`}\n date={day}\n calendarDate={dayjs(selectedDate)}\n role=\"columnheader\"\n tabIndex={dayCellStyleProps.interactive ? 0 : -1}\n onSelect={() => {\n handleDayClick(\n day,\n !dayCellStyleProps.interactive\n );\n }}\n onHover={handleDayHover}\n onHoverEnd={handleDayHoverClear}\n onFocus={handleDayHover}\n {...dayCellStyleProps}\n ></DayCell>\n );\n })}\n </HeaderCellWeekColumn>\n );\n };\n\n const renderTimeColumn = () => {\n let hasSetFirstAfternoonHour = false;\n\n const formatTime = (index: number) => {\n const parsedTime = dayjs(minStartTime, \"HH:mm\").add(\n index * 4 * interval,\n \"minutes\"\n );\n const hour = parsedTime.format(\"h\");\n const minutes = parsedTime.format(\"mm\");\n const amPm = parsedTime.format(\"a\");\n\n let formattedTime = `${hour}${\n minutes !== \"00\" ? ` ${minutes}` : \"\"\n }`;\n\n if (\n !hasSetFirstAfternoonHour &&\n amPm === \"pm\" &&\n minutes === \"00\"\n ) {\n formattedTime += ` ${amPm}`;\n hasSetFirstAfternoonHour = true;\n }\n\n return formattedTime;\n };\n\n return (\n <TimeColumn $height={height} aria-hidden>\n {Array(Math.ceil(numberOfCells / 4))\n .fill(undefined)\n .map((_, index) => (\n <TimeColumnWrapper key={`time-${index}`}>\n <TimeColumnText>{formatTime(index)}</TimeColumnText>\n </TimeColumnWrapper>\n ))}\n </TimeColumn>\n );\n };\n const renderSlotCell = (formattedDate: string, slot: TimeSlotCell) => {\n const {\n id,\n clickable = true,\n isActualSlot,\n styleAttributes,\n cellLength,\n halfFill,\n } = slot;\n const {\n styleType = \"default\",\n backgroundColor,\n backgroundColor2,\n } = styleAttributes;\n const slotId = `${formattedDate}-${id}`;\n const isCollapsedSlot =\n hasCollapsedContent &&\n !expandAll &&\n (slot.rowIndex ?? 0) >= visibleRowCount;\n\n return (\n <TimeSlotComponent\n key={id}\n styleType={styleType}\n bgColor={backgroundColor}\n bgColor2={backgroundColor2}\n clickable={clickable}\n $halfFill={halfFill}\n $height={\n variant === \"fixed\"\n ? cellLength * SLOT_HEIGHT + (cellLength - 1) * SLOT_GAP\n : SLOT_HEIGHT\n }\n onClick={() =>\n clickable && handleSlotClick(formattedDate, slot)\n }\n >\n {isActualSlot && (\n <VisuallyHidden inert={inertValue(isCollapsedSlot)}>\n <button\n type=\"button\"\n ref={(element) => {\n slotButtonRefs.current[slotId] = element;\n }}\n aria-disabled={!clickable}\n aria-label={getSlotAriaLabel(formattedDate, slot)}\n onKeyDown={(event) =>\n handleSlotKeyDown(event, {\n key: slotId,\n date: formattedDate,\n rowIndex: slot.rowIndex ?? 0,\n })\n }\n onClick={\n clickable\n ? handleSlotButtonClick(formattedDate, slot)\n : undefined\n }\n />\n </VisuallyHidden>\n )}\n </TimeSlotComponent>\n );\n };\n\n const renderTimeSlotBarCells = () => {\n return (\n <Expandable style={expandableStyles} role=\"row\">\n <ColumnWeekCell\n ref={cellsRef}\n key={`week-cell-${calendarDate.format(dateFormat)}`}\n >\n {currentCalendarWeek.map((day, dayIndex) => {\n const formattedDate = day.format(dateFormat);\n const cellsArray = getCellsForDate(formattedDate);\n return (\n <TimeSlotWrapper\n key={`wrapper-${dayIndex}`}\n role=\"gridcell\"\n >\n {cellsArray.map((slot) =>\n renderSlotCell(formattedDate, slot)\n )}\n </TimeSlotWrapper>\n );\n })}\n </ColumnWeekCell>\n </Expandable>\n );\n };\n\n const renderCollapseExpandAll = () => {\n if (!maxVisibleCellHeight || !cellsRef.current) return;\n return (\n <CollapseExpandAllWrapper>\n <CollapseExpandAllButton\n data-testid=\"time-bar-expand-collapse-button\"\n styleType=\"light\"\n aria-expanded={expandAll}\n onClick={handleExpandCollapseClick}\n >\n <ChevronIcon $isExpanded={expandAll} />\n {`${expandAll ? \"Hide\" : \"Show\"} later times`}\n </CollapseExpandAllButton>\n </CollapseExpandAllWrapper>\n );\n };\n\n return (\n <Wrapper>\n <GridWrapper role=\"grid\">\n {renderHeader()}\n {renderWeek()}\n {renderTimeColumn()}\n {renderTimeSlotBarCells()}\n </GridWrapper>\n {renderCollapseExpandAll()}\n </Wrapper>\n );\n};\n"],"names":["calendarDate","disabledDates","selectedDate","onSelect","minDate","maxDate","startTime","endTime","maxVisibleCellHeight","slots","daySlots","interval","variant","enableSelection","onSlotClick","dateFormat","expandAll","setExpandAll","useState","hoverDay","setHoverDay","slotButtonRefs","useRef","currentCalendarWeek","useMemo","CalendarHelper","generateDaysForCurrentWeek","flattenedSlots","Object","values","flat","minStartTime","_b","_a","minBy","maxEndTime","_d","_c","maxBy","numberOfCells","Math","ceil","DateHelper","getTimeDiffInMinutes","height","actualHeight","ref","cellsRef","useResizeDetector","hasCollapsedContent","visibleRowCount","undefined","max","floor","SLOT_HEIGHT","expandableStyles","useSpring","generatedDaySlots","transformedDaySlots","entries","forEach","key","cellsArray","Array","fill","slot","startIndex","endIndex","min","cellLength","assign","isActualSlot","rowIndex","i","addMinutesToTime","halfFill","isEmpty","id","initializeAndFillSlots","reduce","result","obj","lastObj","length","generateFallbackCell","filter","populateEmptyCells","focusableSlotsByDate","day","formattedDate","format","getCellsForDate","map","date","sort","a","b","handleDayHover","value","handleDayHoverClear","handleSlotClick","handleSlotButtonClick","event","stopPropagation","handleExpandCollapseClick","preventDefault","prevExpandValue","isDisabled","isWithinRange","dayjs","isDisabledDate","includes","prefix","toString","Date","getTime","clickable","styleAttributes","backgroundColor","Colour","getSlotAriaLabel","slotStartTime","slotEndTime","StringHelper","joinNonEmptyStrings","TimeHelper","formatTimeRange","label","_","index","renderSlotCell","styleType","backgroundColor2","slotId","isCollapsedSlot","_jsx","TimeSlotComponent","bgColor","bgColor2","$height","onClick","children","VisuallyHidden","inert","inertValue","type","element","current","onKeyDown","currentSlot","sameColumnSlots","focusSlot","focus","currentIndex","findIndex","lastVisibleSlot","reverse","find","handleSlotKeyDown","_jsxs","Wrapper","GridWrapper","role","HeaderCellWeekColumn","onBlur","dayIndex","dayCellStyleProps","dateStartWithYear","disabled","isHoverEnabled","interactive","isHover","isSame","isSelected","labelType","circleLeft","circleRight","generateStyleProps","DayCell","tabIndex","handleDayClick","onHover","onHoverEnd","onFocus","HeaderCellWeek","CellWeekText","weight","$disabled","hasSetFirstAfternoonHour","formatTime","parsedTime","add","hour","minutes","amPm","formattedTime","TimeColumn","TimeColumnWrapper","TimeColumnText","renderTimeColumn","Expandable","style","ColumnWeekCell","TimeSlotWrapper","CollapseExpandAllWrapper","CollapseExpandAllButton","ChevronIcon","renderCollapseExpandAll"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"time-slot-bar-week-days.js","sources":["../../../src/time-slot-bar-week/time-slot-bar-week-days.tsx"],"sourcesContent":["import { ChevronUpIcon } from \"@lifesg/react-icons\";\nimport { animated, useSpring } from \"@react-spring/web\";\nimport clsx from \"clsx\";\nimport type { Dayjs } from \"dayjs\";\nimport dayjs from \"dayjs\";\nimport isEmpty from \"lodash/isEmpty\";\nimport maxBy from \"lodash/maxBy\";\nimport minBy from \"lodash/minBy\";\nimport { useMemo, useRef, useState } from \"react\";\nimport { useResizeDetector } from \"react-resize-detector\";\n\nimport { Button } from \"../button\";\nimport type { InternalCalendarProps } from \"../shared/internal-calendar\";\nimport type { CellStyleProps } from \"../shared/internal-calendar/day-cell\";\nimport { DayCell } from \"../shared/internal-calendar/day-cell\";\nimport { Colour, formatUnitValue, useApplyStyle } from \"../theme\";\nimport type { TimeSlot } from \"../time-slot-bar/types\";\nimport { Typography } from \"../typography\";\nimport { DateHelper, useIsMounted } from \"../util\";\nimport { CalendarHelper } from \"../util/calendar-helper\";\nimport { StringHelper } from \"../util/string-helper\";\nimport { TimeHelper } from \"../util/time-helper\";\nimport { ROW_HEIGHT, SLOT_GAP } from \"./consts\";\nimport * as styles from \"./time-slot-bar-week-days.styles\";\nimport type { FocusableSlotMeta, TimeSlotCell } from \"./time-slot-cell\";\nimport { WeekTimeSlotCell } from \"./time-slot-cell\";\nimport type { TimeSlotCellsVariant } from \"./types\";\n\ninterface TimeSlotWeekDaysProps\n extends Pick<\n InternalCalendarProps,\n \"disabledDates\" | \"minDate\" | \"maxDate\"\n > {\n selectedDate: string | undefined;\n calendarDate: Dayjs;\n onSelect: (value: Dayjs) => void;\n slots: { [date: string]: TimeSlot[] };\n startTime?: string | undefined;\n endTime?: string | undefined;\n maxVisibleCellHeight?: number | undefined;\n interval?: number | undefined;\n variant?: TimeSlotCellsVariant | undefined;\n enableSelection?: boolean | undefined;\n onSlotClick?: ((date: string, timeSlot: TimeSlot) => void) | undefined;\n}\n\nexport const TimeSlotBarWeekDays = ({\n calendarDate,\n disabledDates,\n selectedDate,\n onSelect,\n minDate,\n maxDate,\n startTime,\n endTime,\n maxVisibleCellHeight,\n slots: daySlots,\n interval = 30,\n variant = \"flexible\",\n enableSelection = true,\n onSlotClick,\n}: TimeSlotWeekDaysProps) => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const dateFormat = \"YYYY-MM-DD\";\n const [expandAll, setExpandAll] = useState<boolean>(false);\n const [hoverDay, setHoverDay] = useState<Dayjs>();\n const isMounted = useIsMounted();\n const slotButtonRefs = useRef<Record<string, HTMLButtonElement | null>>({});\n const timeColumnRef = useRef<HTMLDivElement>(null);\n const currentCalendarWeek = useMemo((): Dayjs[] => {\n return CalendarHelper.generateDaysForCurrentWeek(calendarDate);\n }, [calendarDate]);\n\n const flattenedSlots = Object.values(daySlots ?? {}).flat();\n const minStartTime =\n startTime ?? minBy(flattenedSlots, \"startTime\")?.startTime ?? \"00:00\";\n const maxEndTime =\n endTime ?? maxBy(flattenedSlots, \"endTime\")?.endTime ?? \"24:00\";\n const numberOfCells = Math.ceil(\n DateHelper.getTimeDiffInMinutes(minStartTime, maxEndTime) / interval\n );\n\n // React spring animation configuration\n const { height: actualHeight = 0, ref: cellsRef } = useResizeDetector();\n const hasCollapsedContent =\n !!maxVisibleCellHeight && actualHeight > maxVisibleCellHeight;\n const visibleRowCount =\n maxVisibleCellHeight !== undefined\n ? Math.max(\n 1,\n Math.floor((maxVisibleCellHeight + SLOT_GAP) / ROW_HEIGHT)\n )\n : 0;\n const collapsedHeight =\n visibleRowCount > 0\n ? visibleRowCount * ROW_HEIGHT - SLOT_GAP\n : maxVisibleCellHeight;\n const height = maxVisibleCellHeight\n ? !hasCollapsedContent || expandAll\n ? actualHeight\n : collapsedHeight\n : actualHeight;\n const expandableStyles = useSpring({ height });\n\n const generatedDaySlots = useMemo((): {\n [date: string]: TimeSlotCell[];\n } => {\n if (daySlots) {\n const transformedDaySlots: Record<string, TimeSlotCell[]> = {};\n Object.entries(daySlots).forEach(([key, slots]) => {\n const cellsArray = initializeAndFillSlots(slots);\n transformedDaySlots[key] = populateEmptyCells(cellsArray);\n });\n return transformedDaySlots;\n }\n return {};\n }, [daySlots]);\n\n const focusableSlotsByDate = useMemo(() => {\n return currentCalendarWeek.reduce<Record<string, FocusableSlotMeta[]>>(\n (result, day) => {\n const formattedDate = day.format(dateFormat);\n\n result[formattedDate] = getCellsForDate(formattedDate)\n .filter(\n (\n slot\n ): slot is TimeSlotCell & {\n isActualSlot: true;\n rowIndex: number;\n } => !!slot.isActualSlot && slot.rowIndex !== undefined\n )\n .map((slot) => ({\n key: `${formattedDate}-${slot.id}`,\n date: formattedDate,\n rowIndex: slot.rowIndex,\n }))\n .sort((a, b) => a.rowIndex - b.rowIndex);\n\n return result;\n },\n {}\n );\n }, [currentCalendarWeek, generatedDaySlots]);\n\n useApplyStyle(timeColumnRef, {\n [styles.tokens.timeColumn.height]: formatUnitValue(height, \"px\"),\n });\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleDayClick = (value: Dayjs, isDisabled: boolean) => {\n if (isDisabled || !enableSelection) return;\n\n onSelect(value);\n };\n\n const handleDayHover = (value: Dayjs) => {\n setHoverDay(value);\n };\n\n const handleDayHoverClear = () => {\n setHoverDay(undefined);\n };\n\n const handleSlotClick = (date: string, slot: TimeSlot) => {\n onSlotClick?.(date, slot);\n };\n\n const handleSlotButtonClick =\n (date: string, slot: TimeSlot) =>\n (event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n\n handleSlotClick(date, slot);\n };\n\n const handleExpandCollapseClick = (event: React.MouseEvent) => {\n event.preventDefault();\n setExpandAll((prevExpandValue) => !prevExpandValue);\n };\n\n const handleSlotKeyDown = (\n event: React.KeyboardEvent<HTMLButtonElement>,\n currentSlot: FocusableSlotMeta\n ) => {\n const sameColumnSlots = focusableSlotsByDate[currentSlot.date] ?? [];\n\n const focusSlot = (slot?: FocusableSlotMeta) => {\n if (!slot) return;\n slotButtonRefs.current[slot.key]?.focus();\n };\n\n switch (event.key) {\n case \"ArrowRight\":\n case \"ArrowDown\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex + 1]);\n break;\n }\n case \"ArrowLeft\":\n case \"ArrowUp\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex - 1]);\n break;\n }\n case \"Home\":\n event.preventDefault();\n focusSlot(sameColumnSlots[0]);\n break;\n case \"End\":\n event.preventDefault();\n focusSlot(sameColumnSlots[sameColumnSlots.length - 1]);\n break;\n case \"PageUp\":\n event.preventDefault();\n focusSlot(sameColumnSlots[0]);\n break;\n case \"PageDown\": {\n event.preventDefault();\n if (hasCollapsedContent && !expandAll) {\n setExpandAll(true);\n const lastVisibleSlot = [...sameColumnSlots]\n .reverse()\n .find((slot) => slot.rowIndex < visibleRowCount);\n focusSlot(lastVisibleSlot ?? sameColumnSlots[0]);\n break;\n }\n\n focusSlot(sameColumnSlots[sameColumnSlots.length - 1]);\n break;\n }\n default:\n break;\n }\n };\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n const isDisabled = (day: Dayjs): boolean => {\n const isWithinRange = CalendarHelper.isWithinRange(\n day,\n minDate ? dayjs(minDate) : undefined,\n maxDate ? dayjs(maxDate) : undefined\n );\n\n const isDisabledDate =\n (disabledDates && disabledDates.includes(day.format(dateFormat))) ??\n false;\n\n return !isWithinRange || isDisabledDate;\n };\n\n const generateStyleProps = (day: Dayjs) => {\n const dateStartWithYear = day.format(dateFormat);\n const disabled = isDisabled(day);\n const dayCellStyleProps: CellStyleProps = {};\n const isHoverEnabled = enableSelection && !disabled;\n\n if (disabled) {\n dayCellStyleProps.disabled = true;\n }\n\n dayCellStyleProps.interactive = enableSelection\n ? isHoverEnabled\n : false;\n\n const isHover =\n isHoverEnabled && hoverDay && day.isSame(hoverDay, \"day\");\n const isSelected = [selectedDate].includes(dateStartWithYear);\n\n if (isSelected && isHover) {\n dayCellStyleProps.labelType = \"selected-hover\";\n dayCellStyleProps.circleLeft = \"selected-hover-outline\";\n dayCellStyleProps.circleRight = \"selected-hover-outline\";\n } else if (isSelected) {\n dayCellStyleProps.labelType = \"selected\";\n dayCellStyleProps.circleLeft = \"selected-outline\";\n dayCellStyleProps.circleRight = \"selected-outline\";\n } else if (isHover) {\n dayCellStyleProps.labelType = \"hover\";\n dayCellStyleProps.circleLeft = \"hover-subtle\";\n dayCellStyleProps.circleRight = \"hover-subtle\";\n }\n\n return dayCellStyleProps;\n };\n\n function generateFallbackCell(\n prefix: string | number,\n cellLength = 1\n ): TimeSlotCell {\n return {\n id: `${prefix.toString()}-${new Date().getTime()}`,\n startTime: \"\",\n endTime: \"\",\n clickable: false,\n isActualSlot: false,\n styleAttributes: {\n backgroundColor: Colour[\"bg-stronger\"],\n },\n cellLength,\n };\n }\n\n function getSlotAriaLabel(date: string, slot: TimeSlot) {\n const { startTime: slotStartTime, endTime: slotEndTime } = slot;\n\n return StringHelper.joinNonEmptyStrings([\n dayjs(date).format(\"D MMMM YYYY dddd\"),\n slotStartTime && slotEndTime\n ? TimeHelper.formatTimeRange(slotStartTime, slotEndTime)\n : undefined,\n slot.label,\n slot.clickable ?? true ? \"Available\" : \"Unavailable\",\n ]);\n }\n\n function initializeAndFillSlots(slots: TimeSlot[]): TimeSlotCell[] {\n const cellsArray = Array(numberOfCells).fill({});\n\n slots.forEach((slot) => {\n const startIndex = Math.max(\n 0,\n DateHelper.getTimeDiffInMinutes(minStartTime, slot.startTime) /\n interval\n );\n const endIndex = Math.min(\n numberOfCells,\n DateHelper.getTimeDiffInMinutes(minStartTime, slot.endTime) /\n interval\n );\n const cellLength = Math.ceil(endIndex) - Math.floor(startIndex);\n\n switch (variant) {\n case \"fixed\":\n // Keep fixed slots as 1 long cell\n cellsArray[Math.floor(startIndex)] = {\n ...slot,\n isActualSlot: true,\n rowIndex: Math.floor(startIndex),\n cellLength: endIndex - startIndex,\n };\n break;\n case \"flexible\":\n // Split long slot into multiple cells of length 1\n for (let i = 0; i < cellLength; i++) {\n const startTime = DateHelper.addMinutesToTime(\n minStartTime,\n Math.floor(startIndex + i) * interval\n );\n const endTime = DateHelper.addMinutesToTime(\n startTime,\n interval\n );\n\n let halfFill: \"default\" | \"top\" | \"bottom\";\n\n if (!isEmpty(cellsArray[Math.floor(startIndex + i)])) {\n // Previous cell extends into current cell, fill entire cell\n halfFill = \"default\";\n } else if (i === 0 && startIndex % 1 !== 0) {\n halfFill = \"top\";\n } else if (i === cellLength - 1 && endIndex % 1 !== 0) {\n halfFill = \"bottom\";\n } else {\n halfFill = \"default\";\n }\n\n cellsArray[Math.floor(startIndex + i)] = {\n ...slot,\n id: `${slot.id}-${i}`,\n startTime,\n endTime,\n isActualSlot: true,\n rowIndex: Math.floor(startIndex + i),\n cellLength: 1,\n halfFill,\n };\n }\n break;\n }\n });\n return cellsArray;\n }\n\n function populateEmptyCells(cellsArray: any[]): TimeSlotCell[] {\n let i = 0;\n switch (variant) {\n case \"fixed\":\n // Truncate consecutive empty cells into 1 [{},{},{...},{},{}] -> [{},{...},{}]\n cellsArray = cellsArray.reduce(\n (result, obj) => {\n const lastObj =\n result.length > 0\n ? result[result.length - 1]\n : result[0];\n if (isEmpty(obj) && isEmpty(lastObj)) {\n return result;\n }\n return [...result, obj];\n },\n [{}]\n );\n\n // Fill in empty cells with timings & corresponding cell lengths\n while (i < cellsArray.length) {\n if (isEmpty(cellsArray[i])) {\n const startTime =\n cellsArray[i - 1]?.endTime ?? minStartTime;\n const endTime =\n cellsArray[i + 1]?.startTime ?? maxEndTime;\n if (startTime !== endTime) {\n const cellLength =\n DateHelper.getTimeDiffInMinutes(\n startTime,\n endTime\n ) / interval;\n cellsArray[i] = {\n ...generateFallbackCell(i),\n startTime,\n endTime,\n cellLength,\n };\n }\n }\n i++;\n }\n break;\n case \"flexible\":\n // Fill in individual empty cell with interval timings\n while (i < cellsArray.length) {\n if (isEmpty(cellsArray[i])) {\n cellsArray[i] = generateFallbackCell(i);\n i++;\n } else {\n i += cellsArray[i].cellLength;\n }\n }\n break;\n }\n return cellsArray.filter(\n (slot) => !isEmpty(slot) && slot.cellLength > 0\n );\n }\n\n function getCellsForDate(formattedDate: string) {\n return (\n generatedDaySlots[formattedDate] ??\n Array(variant === \"flexible\" ? numberOfCells : 1)\n .fill(undefined)\n .map((_, index) =>\n generateFallbackCell(\n index,\n variant === \"fixed\" ? numberOfCells : undefined\n )\n )\n );\n }\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderWeek = () => {\n return (\n <div className={styles.headerCellWeekColumn} role=\"row\">\n {currentCalendarWeek.map((day, index) => (\n <div\n key={`week-day-${index}`}\n className={styles.headerCellWeek}\n role=\"gridcell\"\n >\n <Typography.BodyXS\n weight={\"semibold\"}\n className={clsx(\n isDisabled(day) && styles.cellWeekTextDisabled\n )}\n >\n {dayjs(day).format(\"ddd\")}\n </Typography.BodyXS>\n </div>\n ))}\n </div>\n );\n };\n\n const renderHeader = () => {\n return (\n <div\n className={styles.headerCellWeekColumn}\n role=\"row\"\n onBlur={handleDayHoverClear}\n >\n {currentCalendarWeek.map((day, dayIndex) => {\n const dayCellStyleProps = generateStyleProps(day);\n\n return (\n <DayCell\n key={`day-${dayIndex}`}\n date={day}\n calendarDate={dayjs(selectedDate)}\n role=\"columnheader\"\n tabIndex={dayCellStyleProps.interactive ? 0 : -1}\n onSelect={() => {\n handleDayClick(\n day,\n !dayCellStyleProps.interactive\n );\n }}\n onHover={handleDayHover}\n onHoverEnd={handleDayHoverClear}\n onFocus={handleDayHover}\n {...dayCellStyleProps}\n ></DayCell>\n );\n })}\n </div>\n );\n };\n\n const renderTimeColumn = () => {\n let hasSetFirstAfternoonHour = false;\n\n const formatTime = (index: number) => {\n const parsedTime = dayjs(minStartTime, \"HH:mm\").add(\n index * 4 * interval,\n \"minutes\"\n );\n const hour = parsedTime.format(\"h\");\n const minutes = parsedTime.format(\"mm\");\n const amPm = parsedTime.format(\"a\");\n\n let formattedTime = `${hour}${\n minutes !== \"00\" ? ` ${minutes}` : \"\"\n }`;\n\n if (\n !hasSetFirstAfternoonHour &&\n amPm === \"pm\" &&\n minutes === \"00\"\n ) {\n formattedTime += ` ${amPm}`;\n hasSetFirstAfternoonHour = true;\n }\n\n return formattedTime;\n };\n\n return (\n <div className={styles.timeColumn} ref={timeColumnRef} aria-hidden>\n {Array(Math.ceil(numberOfCells / 4))\n .fill(undefined)\n .map((_, index) => (\n <div\n key={`time-${index}`}\n className={styles.timeColumnWrapper}\n >\n <div className={styles.timeColumnText}>\n {formatTime(index)}\n </div>\n </div>\n ))}\n </div>\n );\n };\n\n const renderSlotCell = (formattedDate: string, slot: TimeSlotCell) => {\n return (\n <WeekTimeSlotCell\n key={slot.id}\n formattedDate={formattedDate}\n slot={slot}\n variant={variant}\n hasCollapsedContent={hasCollapsedContent}\n expandAll={expandAll}\n visibleRowCount={visibleRowCount}\n onSlotClick={handleSlotClick}\n getSlotAriaLabel={getSlotAriaLabel}\n onSlotKeyDown={handleSlotKeyDown}\n onSlotButtonClick={handleSlotButtonClick}\n slotButtonRefs={slotButtonRefs}\n />\n );\n };\n\n const renderTimeSlotBarCells = () => {\n return (\n <animated.div\n className={styles.expandable}\n style={isMounted ? expandableStyles : undefined}\n role=\"row\"\n >\n <div\n className={styles.columnWeekCell}\n ref={cellsRef}\n key={`week-cell-${calendarDate.format(dateFormat)}`}\n >\n {currentCalendarWeek.map((day, dayIndex) => {\n const formattedDate = day.format(dateFormat);\n const cellsArray = getCellsForDate(formattedDate);\n return (\n <div\n key={`wrapper-${dayIndex}`}\n className={styles.timeSlotWrapper}\n role=\"gridcell\"\n >\n {cellsArray.map((slot) =>\n renderSlotCell(formattedDate, slot)\n )}\n </div>\n );\n })}\n </div>\n </animated.div>\n );\n };\n\n const renderCollapseExpandAll = () => {\n if (!maxVisibleCellHeight || !cellsRef.current) return;\n return (\n <div className={styles.collapseExpandAllWrapper}>\n <Button\n data-testid=\"time-bar-expand-collapse-button\"\n styleType=\"light\"\n sizeType=\"small\"\n aria-expanded={expandAll}\n onClick={handleExpandCollapseClick}\n className={styles.collapseExpandAllButton}\n >\n <span className={styles.collapseExpandAllButtonContent}>\n <ChevronUpIcon\n className={clsx(\n styles.chevronIcon,\n expandAll && styles.chevronIconExpanded\n )}\n />\n {`${expandAll ? \"Hide\" : \"Show\"} later times`}\n </span>\n </Button>\n </div>\n );\n };\n\n return (\n <div className={styles.wrapper}>\n <div className={styles.gridWrapper} role=\"grid\">\n {renderHeader()}\n {renderWeek()}\n {renderTimeColumn()}\n {renderTimeSlotBarCells()}\n </div>\n {renderCollapseExpandAll()}\n </div>\n );\n};\n"],"names":["calendarDate","disabledDates","selectedDate","onSelect","minDate","maxDate","startTime","endTime","maxVisibleCellHeight","slots","daySlots","interval","variant","enableSelection","onSlotClick","dateFormat","expandAll","setExpandAll","useState","hoverDay","setHoverDay","isMounted","useIsMounted","slotButtonRefs","useRef","timeColumnRef","currentCalendarWeek","useMemo","CalendarHelper","generateDaysForCurrentWeek","flattenedSlots","Object","values","flat","minStartTime","_b","_a","minBy","maxEndTime","_d","_c","maxBy","numberOfCells","Math","ceil","DateHelper","getTimeDiffInMinutes","height","actualHeight","ref","cellsRef","useResizeDetector","hasCollapsedContent","visibleRowCount","undefined","max","floor","SLOT_GAP","ROW_HEIGHT","collapsedHeight","expandableStyles","useSpring","generatedDaySlots","transformedDaySlots","entries","forEach","key","cellsArray","Array","fill","slot","startIndex","endIndex","min","cellLength","assign","isActualSlot","rowIndex","i","addMinutesToTime","halfFill","isEmpty","id","initializeAndFillSlots","reduce","result","obj","lastObj","length","generateFallbackCell","filter","populateEmptyCells","focusableSlotsByDate","day","formattedDate","format","getCellsForDate","map","date","sort","a","b","useApplyStyle","styles.tokens","timeColumn","formatUnitValue","handleDayHover","value","handleDayHoverClear","handleSlotClick","handleSlotButtonClick","event","stopPropagation","handleExpandCollapseClick","preventDefault","prevExpandValue","handleSlotKeyDown","currentSlot","sameColumnSlots","focusSlot","current","focus","currentIndex","findIndex","lastVisibleSlot","reverse","find","isDisabled","isWithinRange","dayjs","isDisabledDate","includes","prefix","toString","Date","getTime","clickable","styleAttributes","backgroundColor","Colour","getSlotAriaLabel","slotStartTime","slotEndTime","StringHelper","joinNonEmptyStrings","TimeHelper","formatTimeRange","label","_","index","_jsxs","className","styles.wrapper","children","styles.gridWrapper","role","_jsx","styles.headerCellWeekColumn","onBlur","dayIndex","dayCellStyleProps","dateStartWithYear","disabled","isHoverEnabled","interactive","isHover","isSame","isSelected","labelType","circleLeft","circleRight","generateStyleProps","DayCell","tabIndex","handleDayClick","onHover","onHoverEnd","onFocus","styles.headerCellWeek","Typography","BodyXS","weight","clsx","styles.cellWeekTextDisabled","hasSetFirstAfternoonHour","formatTime","parsedTime","add","hour","minutes","amPm","formattedTime","styles.timeColumn","styles.timeColumnWrapper","styles.timeColumnText","renderTimeColumn","animated","div","styles.expandable","style","styles.columnWeekCell","styles.timeSlotWrapper","WeekTimeSlotCell","onSlotKeyDown","onSlotButtonClick","renderSlotCell","styles.collapseExpandAllWrapper","Button","styleType","sizeType","onClick","styles.collapseExpandAllButton","styles.collapseExpandAllButtonContent","ChevronUpIcon","styles.chevronIcon","styles.chevronIconExpanded","renderCollapseExpandAll"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";require("./time-slot-bar-week-days.styles_evdvs9.css");exports.cellWeekTextDisabled="cm1jktd",exports.chevronIcon="cfi87m2",exports.chevronIconExpanded="ctpwme7",exports.collapseExpandAllButton="c5f9kvb",exports.collapseExpandAllButtonContent="c1hid59d",exports.collapseExpandAllWrapper="cyddonb",exports.columnWeekCell="crbcp6c",exports.expandable="eljtyj8",exports.gridWrapper="g1ijsvx5",exports.headerCellWeek="h1pfybo4",exports.headerCellWeekColumn="hfnrvvn",exports.timeColumn="t13lf4s5",exports.timeColumnText="t1v9il5y",exports.timeColumnWrapper="t4v35lv",exports.timeSlotComponent="t1wrn5bg",exports.timeSlotWrapper="t1xo1xfl",exports.tokens={timeColumn:{height:"--fds-internal-timeSlotBarWeek-timeColumn-height"},timeSlot:{height:"--fds-internal-timeSlotBarWeek-timeSlotComponent-height"}},exports.wrapper="w10itm92";
|
|
2
|
+
//# sourceMappingURL=time-slot-bar-week-days.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-slot-bar-week-days.styles.js","sources":["../../../src/time-slot-bar-week/time-slot-bar-week-days.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport { Colour, Font, Motion, Radius, Spacing } from \"../theme\";\n\nexport const tokens = {\n timeColumn: {\n height: \"--fds-internal-timeSlotBarWeek-timeColumn-height\",\n },\n timeSlot: {\n height: \"--fds-internal-timeSlotBarWeek-timeSlotComponent-height\",\n },\n};\n\nexport const headerCellWeek = css`\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n user-select: none;\n margin-bottom: ${Spacing[\"spacing-8\"]};\n flex: 1;\n`;\n\nexport const cellWeekTextDisabled = css`\n color: ${Colour[\"text-disabled-subtlest\"]};\n`;\n\nexport const headerCellWeekColumn = css`\n grid-column: 2 / -1;\n display: flex;\n`;\n\nexport const wrapper = css`\n width: 100%;\n`;\n\nexport const gridWrapper = css`\n width: 100%;\n display: grid;\n grid-template-columns: auto repeat(7, 1fr);\n column-gap: ${Spacing[\"spacing-4\"]};\n`;\n\nexport const expandable = css`\n grid-column: 2 / -1;\n overflow: hidden;\n`;\n\nexport const columnWeekCell = css`\n display: flex;\n gap: ${Spacing[\"spacing-4\"]};\n transition: all ${Motion[\"duration-250\"]} ${Motion[\"ease-default\"]};\n overflow: hidden;\n`;\n\nexport const timeColumn = css`\n ${tokens.timeColumn.height}: initial;\n display: flex;\n flex-direction: column;\n grid-row: 3 / auto;\n gap: ${Spacing[\"spacing-4\"]};\n width: 1.375rem;\n transition: all ${Motion[\"duration-250\"]} ${Motion[\"ease-default\"]};\n overflow: hidden;\n height: var(${tokens.timeColumn.height});\n`;\n\nexport const timeColumnWrapper = css`\n min-height: 60px;\n\n &:last-child {\n min-height: 0;\n }\n`;\n\nexport const timeColumnText = css`\n ${Font[\"body-xs-bold\"]}\n color: ${Colour[\"text-subtler\"]};\n text-align: center;\n line-height: 12px; // align with cell on the same row\n\n &:first-line {\n font-size: ${Font.Spec[\"body-size-sm\"]};\n }\n`;\n\nexport const timeSlotWrapper = css`\n display: flex;\n flex-direction: column;\n flex: 1;\n gap: ${Spacing[\"spacing-4\"]};\n`;\n\nexport const collapseExpandAllWrapper = css`\n display: flex;\n margin-top: ${Spacing[\"spacing-8\"]};\n`;\n\nexport const collapseExpandAllButton = css`\n width: 100%;\n height: 2.5rem;\n`;\n\nexport const collapseExpandAllButtonContent = css`\n display: flex;\n align-items: center;\n gap: ${Spacing[\"spacing-8\"]};\n`;\n\nexport const chevronIcon = css`\n transform: rotate(180deg);\n transition: transform ${Motion[\"duration-250\"]} ${Motion[\"ease-default\"]};\n`;\n\nexport const chevronIconExpanded = css`\n transform: rotate(0deg);\n`;\n\nexport const timeSlotComponent = css`\n ${tokens.timeSlot.height}: initial;\n flex-grow: 1;\n max-width: 200px;\n height: var(${tokens.timeSlot.height});\n min-height: var(${tokens.timeSlot.height});\n border-radius: ${Radius.xs};\n\n &:focus-within {\n outline: 2px solid ${Colour[\"focus-ring\"]};\n outline-offset: 1px;\n }\n`;\n"],"names":["timeColumn","height","timeSlot"],"mappings":"mIAuBiC,8BAsFT,sCAKQ,0CAhBI,iDAKO,4CAVN,iCA7CV,6BALJ,8BAPC,kCAvBG,wCAcM,6BA4BV,kCAoBI,qCARG,oCAmDA,mCAhCF,0BAlFN,CAClBA,WAAY,CACRC,OAAQ,oDAEZC,SAAU,CACND,OAAQ,4EAuBI"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
@layer fds{.h1pfybo4{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;margin-bottom:var(--fds-spacing-8);-webkit-flex:1;-ms-flex:1;flex:1;}
|
|
2
|
+
.cm1jktd{color:var(--fds-colour-text-disabled-subtlest);}
|
|
3
|
+
.hfnrvvn{-ms-grid-column:2/-1;grid-column:2/-1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}
|
|
4
|
+
.w10itm92{width:100%;}
|
|
5
|
+
.g1ijsvx5{width:100%;display:-ms-grid;display:grid;-ms-grid-columns:auto repeat(7, 1fr);grid-template-columns:auto repeat(7, 1fr);-webkit-column-gap:var(--fds-spacing-4);column-gap:var(--fds-spacing-4);}
|
|
6
|
+
.eljtyj8{-ms-grid-column:2/-1;grid-column:2/-1;overflow:hidden;}
|
|
7
|
+
.crbcp6c{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:var(--fds-spacing-4);-webkit-transition:all var(--fds-motion-duration-250) var(--fds-motion-timing-ease-default);transition:all var(--fds-motion-duration-250) var(--fds-motion-timing-ease-default);overflow:hidden;}
|
|
8
|
+
.t13lf4s5{--fds-internal-timeSlotBarWeek-timeColumn-height:initial;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-ms-grid-row:3/auto;grid-row:3/auto;gap:var(--fds-spacing-4);width:1.375rem;-webkit-transition:all var(--fds-motion-duration-250) var(--fds-motion-timing-ease-default);transition:all var(--fds-motion-duration-250) var(--fds-motion-timing-ease-default);overflow:hidden;height:var(--fds-internal-timeSlotBarWeek-timeColumn-height);}
|
|
9
|
+
.t4v35lv{min-height:60px;}.t4v35lv:last-child{min-height:0;}
|
|
10
|
+
.t1v9il5y{font-family:var(--fds-font-family-body);font-variant:var(--fds-font-variant);font-size:var(--fds-font-body-size-xs);font-weight:var(--fds-font-weight-bold);line-height:var(--fds-font-body-lh-xs);letter-spacing:var(--fds-font-body-ls-xs);color:var(--fds-colour-text-subtler);text-align:center;line-height:12px;}.t1v9il5y:first-line{font-size:var(--fds-font-body-size-sm);}
|
|
11
|
+
.t1xo1xfl{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex:1;-ms-flex:1;flex:1;gap:var(--fds-spacing-4);}
|
|
12
|
+
.cyddonb{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-top:var(--fds-spacing-8);}
|
|
13
|
+
.c5f9kvb{width:100%;height:2.5rem;}
|
|
14
|
+
.c1hid59d{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--fds-spacing-8);}
|
|
15
|
+
.cfi87m2{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg);-webkit-transition:-webkit-transform var(--fds-motion-duration-250) var(--fds-motion-timing-ease-default);transition:transform var(--fds-motion-duration-250) var(--fds-motion-timing-ease-default);}
|
|
16
|
+
.ctpwme7{-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}
|
|
17
|
+
.t1wrn5bg{--fds-internal-timeSlotBarWeek-timeSlotComponent-height:initial;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:200px;height:var(--fds-internal-timeSlotBarWeek-timeSlotComponent-height);min-height:var(--fds-internal-timeSlotBarWeek-timeSlotComponent-height);border-radius:var(--fds-radius-xs);}.t1wrn5bg:focus-within{outline:2px solid var(--fds-colour-focus-ring);outline-offset:1px;}}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("../_virtual/_tslib.js"),a=require("react/jsx-runtime"),t=require("../external/dayjs/dayjs.min.js"),r=require("react"),i=require("../shared/internal-calendar/calendar-manager.js");require("../util/calendar-helper.js");var l=require("../util/date-helper.js");require("../util/simple-id-generator.js"),require("../util/string-helper.js"),require("@react-aria/live-announcer");var n=require("./time-slot-bar-week.
|
|
1
|
+
"use strict";var e=require("../_virtual/_tslib.js"),a=require("react/jsx-runtime"),t=require("../external/dayjs/dayjs.min.js"),r=require("react"),i=require("../shared/internal-calendar/calendar-manager.js");require("../util/calendar-helper.js");var l=require("../util/date-helper.js");require("../util/simple-id-generator.js"),require("../util/string-helper.js"),require("@react-aria/live-announcer");var n=require("./time-slot-bar-week.styles.js"),s=require("./time-slot-bar-week-days.js");const o="YYYY-MM-DD";exports.TimeSlotBarWeek=d=>{var{disabledDates:u,onWeekDisplayChange:c,onChange:m,value:D,minDate:f,maxDate:k,startTime:g,endTime:h,slots:w,interval:b,variant:v,maxVisibleCellHeight:j,showNavigationHeader:C=!0,enableSelection:x,onSlotClick:y,currentCalendarDate:q}=d,S=e.__rest(d,["disabledDates","onWeekDisplayChange","onChange","value","minDate","maxDate","startTime","endTime","slots","interval","variant","maxVisibleCellHeight","showNavigationHeader","enableSelection","onSlotClick","currentCalendarDate"]);const[p,H]=r.useState(D),Y=r.useRef(null),O=r.useRef(void 0);r.useEffect((()=>{H(D)}),[D]);const T=e=>{const a=e.format(o);H(a),null==m||m(a)},M=(e,a)=>{y&&y(e,a)},W=e=>{if(c){const a={week:{firstDayOfWeek:e.startOf("week").format(o),lastDayOfWeek:e.endOf("week").format(o)},month:e.month()+1,year:e.year()};c(a)}};return a.jsx("div",Object.assign({className:n.wrapper},S,{children:a.jsx(i.CalendarManager,{ref:Y,dynamicHeight:!0,initialCalendarDate:l.DateHelper.toDayjs(p||q).endOf("week").format(o),selectedStartDate:p,getLeftArrowDate:e=>e.subtract(1,"week"),getRightArrowDate:e=>e.add(1,"week"),isLeftArrowDisabled:e=>!!f&&t.default(e).subtract(1,"week").isBefore(f,"week"),isRightArrowDisabled:e=>!!k&&t.default(e).add(1,"week").isAfter(k,"week"),onCalendarDateChange:e=>{O.current&&O.current.isSame(e,"week")||W(e),O.current=e},showNavigationHeader:C,minDate:f,maxDate:k,getMonthHeaderLabel:e=>t.default(e).endOf("week").format("MMM"),getYearHeaderLabel:e=>t.default(e).endOf("week").format("YYYY"),isFocusable:!0,children:({calendarDate:e})=>(e=>a.jsx(s.TimeSlotBarWeekDays,{calendarDate:e,disabledDates:u,selectedDate:p,minDate:f,maxDate:k,startTime:g,endTime:h,onSelect:T,slots:w,interval:b,variant:v,maxVisibleCellHeight:j,enableSelection:x,onSlotClick:M}))(e)})}))};
|
|
2
2
|
//# sourceMappingURL=time-slot-bar-week.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-slot-bar-week.js","sources":["../../../src/time-slot-bar-week/time-slot-bar-week.tsx"],"sourcesContent":["import type { Dayjs } from \"dayjs\";\nimport dayjs from \"dayjs\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type { CalendarManagerRef } from \"../shared/internal-calendar\";\nimport { CalendarManager } from \"../shared/internal-calendar/calendar-manager\";\nimport type { TimeSlot } from \"../time-slot-bar\";\nimport { DateHelper } from \"../util\";\nimport
|
|
1
|
+
{"version":3,"file":"time-slot-bar-week.js","sources":["../../../src/time-slot-bar-week/time-slot-bar-week.tsx"],"sourcesContent":["import type { Dayjs } from \"dayjs\";\nimport dayjs from \"dayjs\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type { CalendarManagerRef } from \"../shared/internal-calendar\";\nimport { CalendarManager } from \"../shared/internal-calendar/calendar-manager\";\nimport type { TimeSlot } from \"../time-slot-bar\";\nimport { DateHelper } from \"../util\";\nimport * as styles from \"./time-slot-bar-week.styles\";\nimport { TimeSlotBarWeekDays } from \"./time-slot-bar-week-days\";\nimport type { TimeSlotBarWeekProps } from \"./types\";\n\nconst DATE_FORMAT = \"YYYY-MM-DD\";\n\nexport const TimeSlotBarWeek = ({\n disabledDates,\n onWeekDisplayChange,\n onChange,\n value,\n minDate,\n maxDate,\n startTime,\n endTime,\n slots,\n interval,\n variant,\n maxVisibleCellHeight,\n showNavigationHeader = true,\n enableSelection,\n onSlotClick,\n currentCalendarDate,\n ...otherProps\n}: TimeSlotBarWeekProps) => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const [selectedDate, setSelectedDate] = useState<string | undefined>(value); // YYYY-MM-DD\n const calendarManagerRef = useRef<CalendarManagerRef>(null);\n const previousCalendarDate = useRef<Dayjs | undefined>(undefined);\n\n // =============================================================================\n // EFFECTS\n // =============================================================================\n useEffect(() => {\n setSelectedDate(value);\n }, [value]);\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n\n const handleDateSelect = (value: Dayjs) => {\n const stringValue = value.format(DATE_FORMAT);\n setSelectedDate(stringValue);\n onChange?.(stringValue);\n };\n\n const handleOnSlotClick = (date: string, slot: TimeSlot) => {\n if (onSlotClick) {\n onSlotClick(date, slot);\n }\n };\n\n const handleOnCalendarDateChange = (value: Dayjs) => {\n if (\n !previousCalendarDate.current ||\n !previousCalendarDate.current.isSame(value, \"week\")\n ) {\n performDisplayChangeHandler(value);\n }\n previousCalendarDate.current = value;\n };\n\n // =============================================================================\n // HELPERS\n // =============================================================================\n\n const performDisplayChangeHandler = (value: Dayjs) => {\n if (onWeekDisplayChange) {\n const returnValue = {\n week: {\n firstDayOfWeek: value.startOf(\"week\").format(DATE_FORMAT),\n lastDayOfWeek: value.endOf(\"week\").format(DATE_FORMAT),\n },\n month: value.month() + 1,\n year: value.year(),\n };\n\n onWeekDisplayChange(returnValue);\n }\n };\n\n const getInitialCalendarDate = () => {\n return DateHelper.toDayjs(selectedDate || currentCalendarDate)\n .endOf(\"week\")\n .format(DATE_FORMAT);\n };\n\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderTimeSlotWeekDays = (calendarDate: dayjs.Dayjs) => {\n return (\n <TimeSlotBarWeekDays\n calendarDate={calendarDate}\n disabledDates={disabledDates}\n selectedDate={selectedDate}\n minDate={minDate}\n maxDate={maxDate}\n startTime={startTime}\n endTime={endTime}\n onSelect={handleDateSelect}\n slots={slots}\n interval={interval}\n variant={variant}\n maxVisibleCellHeight={maxVisibleCellHeight}\n enableSelection={enableSelection}\n onSlotClick={handleOnSlotClick}\n />\n );\n };\n\n return (\n <div className={styles.wrapper} {...otherProps}>\n <CalendarManager\n ref={calendarManagerRef}\n dynamicHeight\n initialCalendarDate={getInitialCalendarDate()}\n selectedStartDate={selectedDate}\n getLeftArrowDate={(day) => day.subtract(1, \"week\")}\n getRightArrowDate={(day) => day.add(1, \"week\")}\n isLeftArrowDisabled={(calendarDate) =>\n !!minDate &&\n dayjs(calendarDate)\n .subtract(1, \"week\")\n .isBefore(minDate, \"week\")\n }\n isRightArrowDisabled={(calendarDate) =>\n !!maxDate &&\n dayjs(calendarDate).add(1, \"week\").isAfter(maxDate, \"week\")\n }\n onCalendarDateChange={handleOnCalendarDateChange}\n showNavigationHeader={showNavigationHeader}\n minDate={minDate}\n maxDate={maxDate}\n getMonthHeaderLabel={(calendarDate) =>\n dayjs(calendarDate).endOf(\"week\").format(\"MMM\")\n }\n getYearHeaderLabel={(calendarDate) =>\n dayjs(calendarDate).endOf(\"week\").format(\"YYYY\")\n }\n isFocusable={true}\n >\n {({ calendarDate }) => {\n return renderTimeSlotWeekDays(calendarDate);\n }}\n </CalendarManager>\n </div>\n );\n};\n"],"names":["DATE_FORMAT","_a","disabledDates","onWeekDisplayChange","onChange","value","minDate","maxDate","startTime","endTime","slots","interval","variant","maxVisibleCellHeight","showNavigationHeader","enableSelection","onSlotClick","currentCalendarDate","otherProps","__rest","selectedDate","setSelectedDate","useState","calendarManagerRef","useRef","previousCalendarDate","undefined","useEffect","handleDateSelect","stringValue","format","handleOnSlotClick","date","slot","performDisplayChangeHandler","returnValue","week","firstDayOfWeek","startOf","lastDayOfWeek","endOf","month","year","_jsx","Object","assign","className","styles.wrapper","children","CalendarManager","ref","dynamicHeight","initialCalendarDate","DateHelper","toDayjs","selectedStartDate","getLeftArrowDate","day","subtract","getRightArrowDate","add","isLeftArrowDisabled","calendarDate","dayjs","isBefore","isRightArrowDisabled","isAfter","onCalendarDateChange","current","isSame","getMonthHeaderLabel","getYearHeaderLabel","isFocusable","TimeSlotBarWeekDays","onSelect","renderTimeSlotWeekDays"],"mappings":"2eAYA,MAAMA,EAAc,qCAEYC,IAAA,IAAAC,cAC5BA,EAAaC,oBACbA,EAAmBC,SACnBA,EAAQC,MACRA,EAAKC,QACLA,EAAOC,QACPA,EAAOC,UACPA,EAASC,QACTA,EAAOC,MACPA,EAAKC,SACLA,EAAQC,QACRA,EAAOC,qBACPA,EAAoBC,qBACpBA,GAAuB,EAAIC,gBAC3BA,EAAeC,YACfA,EAAWC,oBACXA,GAAmBhB,EAChBiB,EAAUC,SAAAlB,EAjBe,uOAsB5B,MAAOmB,EAAcC,GAAmBC,EAAAA,SAA6BjB,GAC/DkB,EAAqBC,EAAAA,OAA2B,MAChDC,EAAuBD,EAAAA,YAA0BE,GAKvDC,EAAAA,WAAU,KACNN,EAAgBhB,EAAM,GACvB,CAACA,IAMJ,MAAMuB,EAAoBvB,IACtB,MAAMwB,EAAcxB,EAAMyB,OAAO9B,GACjCqB,EAAgBQ,GAChBzB,SAAAA,EAAWyB,EAAY,EAGrBE,EAAoB,CAACC,EAAcC,KACjCjB,GACAA,EAAYgB,EAAMC,EACtB,EAiBEC,EAA+B7B,IACjC,GAAIF,EAAqB,CACrB,MAAMgC,EAAc,CAChBC,KAAM,CACFC,eAAgBhC,EAAMiC,QAAQ,QAAQR,OAAO9B,GAC7CuC,cAAelC,EAAMmC,MAAM,QAAQV,OAAO9B,IAE9CyC,MAAOpC,EAAMoC,QAAU,EACvBC,KAAMrC,EAAMqC,QAGhBvC,EAAoBgC,EACxB,GAiCJ,OACIQ,EAAAA,IAAA,MAAAC,OAAAC,OAAA,CAAKC,UAAWC,EAAAA,SAAoB7B,EAAU,CAAA8B,SAC1CL,MAACM,EAAAA,gBAAe,CACZC,IAAK3B,EACL4B,eAAa,EACbC,oBAlCDC,EAAAA,WAAWC,QAAQlC,GAAgBH,GACrCuB,MAAM,QACNV,OAAO9B,GAiCJuD,kBAAmBnC,EACnBoC,iBAAmBC,GAAQA,EAAIC,SAAS,EAAG,QAC3CC,kBAAoBF,GAAQA,EAAIG,IAAI,EAAG,QACvCC,oBAAsBC,KAChBxD,GACFyD,EAAAA,QAAMD,GACDJ,SAAS,EAAG,QACZM,SAAS1D,EAAS,QAE3B2D,qBAAuBH,KACjBvD,GACFwD,UAAMD,GAAcF,IAAI,EAAG,QAAQM,QAAQ3D,EAAS,QAExD4D,qBA9EwB9D,IAE3BoB,EAAqB2C,SACrB3C,EAAqB2C,QAAQC,OAAOhE,EAAO,SAE5C6B,EAA4B7B,GAEhCoB,EAAqB2C,QAAU/D,CAAK,EAwE5BS,qBAAsBA,EACtBR,QAASA,EACTC,QAASA,EACT+D,oBAAsBR,GAClBC,EAAAA,QAAMD,GAActB,MAAM,QAAQV,OAAO,OAE7CyC,mBAAqBT,GACjBC,EAAAA,QAAMD,GAActB,MAAM,QAAQV,OAAO,QAE7C0C,aAAa,EAAIxB,SAEhB,EAAGc,kBApDe,CAACA,GAExBnB,EAAAA,IAAC8B,EAAAA,oBAAmB,CAChBX,aAAcA,EACd5D,cAAeA,EACfkB,aAAcA,EACdd,QAASA,EACTC,QAASA,EACTC,UAAWA,EACXC,QAASA,EACTiE,SAAU9C,EACVlB,MAAOA,EACPC,SAAUA,EACVC,QAASA,EACTC,qBAAsBA,EACtBE,gBAAiBA,EACjBC,YAAae,IAqCF4C,CAAuBb,OAGpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-slot-bar-week.styles.js","sources":["../../../src/time-slot-bar-week/time-slot-bar-week.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport * as calendarDropdownStyles from \"../shared/internal-calendar/calendar-dropdown.styles\";\nimport { MediaQuery, Spacing } from \"../theme\";\n\nexport const wrapper = css`\n ${calendarDropdownStyles.tokens.headerBottomSpacing}: ${Spacing[\n \"spacing-8\"\n ]};\n\n ${MediaQuery.MaxWidth.sm} {\n ${calendarDropdownStyles.tokens.horizontalInset}: ${Spacing[\n \"spacing-20\"\n ]};\n }\n\n min-width: 18.5rem;\n`;\n"],"names":[],"mappings":"kHAKoB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer fds{.w1qkct16{--fds-internal-calendarDropdown-headerBottomSpacing:var(--fds-spacing-8);min-width:18.5rem;}:where(body.fds-breakpoint-sm-max) .w1qkct16{--fds-internal-calendarDropdown-horizontalInset:var(--fds-spacing-20);}}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("../shared/accessibility/index.js"),l=require("../shared/time-slot/time-slot.js");require("../theme/theme-provider/index.js");var i=require("../theme/utils/css-variable.js");require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js"),require("../theme/tokens/colour.js"),require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js");var o=require("../theme/utils/use-apply-styles.js");require("../theme/utils/use-media-query.js");var s=require("./consts.js"),n=require("./time-slot-bar-week-days.styles.js");exports.WeekTimeSlotCell=({formattedDate:a,slot:u,variant:d,hasCollapsedContent:c,expandAll:m,visibleRowCount:h,onSlotClick:y,getSlotAriaLabel:b,onSlotKeyDown:j,onSlotButtonClick:q,slotButtonRefs:k})=>{var p;const{id:v,clickable:x=!0,isActualSlot:C,styleAttributes:S,cellLength:f,halfFill:T}=u,{styleType:g="default",backgroundColor:w,backgroundColor2:A}=S,H=`${a}-${v}`,I=c&&!m&&(null!==(p=u.rowIndex)&&void 0!==p?p:0)>=h,L="fixed"===d?f*s.SLOT_HEIGHT+(f-1)*s.SLOT_GAP:s.SLOT_HEIGHT,D=t.useRef(null);return o.useApplyStyle(D,{[n.tokens.timeSlot.height]:i.formatUnitValue(L,"px")}),e.jsx(l.TimeSlot,{ref:D,styleType:g,bgColor:w,bgColor2:A,clickable:x,fill:T,className:n.timeSlotComponent,onClick:()=>x&&y(a,u),children:C&&e.jsx(r.VisuallyHidden,{inert:r.inertValue(I),children:e.jsx("button",{type:"button",ref:e=>{k.current[H]=e},"aria-disabled":!x,"aria-label":b(a,u),onKeyDown:e=>{var t;return j(e,{key:H,date:a,rowIndex:null!==(t=u.rowIndex)&&void 0!==t?t:0})},onClick:x?q(a,u):void 0})})})};
|
|
2
|
+
//# sourceMappingURL=time-slot-cell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-slot-cell.js","sources":["../../../src/time-slot-bar-week/time-slot-cell.tsx"],"sourcesContent":["import type React from \"react\";\nimport { useRef } from \"react\";\n\nimport { inertValue, VisuallyHidden } from \"../shared/accessibility\";\nimport { TimeSlot as TimeSlotComponent } from \"../shared/time-slot\";\nimport { formatUnitValue, useApplyStyle } from \"../theme\";\nimport type { TimeSlot } from \"../time-slot-bar/types\";\nimport { SLOT_GAP, SLOT_HEIGHT } from \"./consts\";\nimport * as styles from \"./time-slot-bar-week-days.styles\";\nimport type { TimeSlotCellsVariant } from \"./types\";\n\nexport interface TimeSlotCell extends TimeSlot {\n cellLength: number;\n halfFill?: \"default\" | \"top\" | \"bottom\" | undefined;\n isActualSlot?: boolean | undefined;\n rowIndex?: number | undefined;\n}\n\nexport interface FocusableSlotMeta {\n key: string;\n date: string;\n rowIndex: number;\n}\n\nexport interface WeekTimeSlotCellProps {\n formattedDate: string;\n slot: TimeSlotCell;\n variant: TimeSlotCellsVariant;\n hasCollapsedContent: boolean;\n expandAll: boolean;\n visibleRowCount: number;\n onSlotClick: (date: string, slot: TimeSlot) => void;\n getSlotAriaLabel: (date: string, slot: TimeSlot) => string;\n onSlotKeyDown: (\n event: React.KeyboardEvent<HTMLButtonElement>,\n meta: FocusableSlotMeta\n ) => void;\n onSlotButtonClick: (\n date: string,\n slot: TimeSlot\n ) => (event: React.MouseEvent<HTMLButtonElement>) => void;\n slotButtonRefs: React.MutableRefObject<\n Record<string, HTMLButtonElement | null>\n >;\n}\n\nexport const WeekTimeSlotCell = ({\n formattedDate,\n slot,\n variant,\n hasCollapsedContent,\n expandAll,\n visibleRowCount,\n onSlotClick,\n getSlotAriaLabel,\n onSlotKeyDown,\n onSlotButtonClick,\n slotButtonRefs,\n}: WeekTimeSlotCellProps) => {\n const {\n id,\n clickable = true,\n isActualSlot,\n styleAttributes,\n cellLength,\n halfFill,\n } = slot;\n const {\n styleType = \"default\",\n backgroundColor,\n backgroundColor2,\n } = styleAttributes;\n const slotId = `${formattedDate}-${id}`;\n const isCollapsedSlot =\n hasCollapsedContent &&\n !expandAll &&\n (slot.rowIndex ?? 0) >= visibleRowCount;\n\n const slotHeight =\n variant === \"fixed\"\n ? cellLength * SLOT_HEIGHT + (cellLength - 1) * SLOT_GAP\n : SLOT_HEIGHT;\n\n const slotRef = useRef<HTMLDivElement>(null);\n useApplyStyle(slotRef, {\n [styles.tokens.timeSlot.height]: formatUnitValue(slotHeight, \"px\"),\n });\n\n return (\n <TimeSlotComponent\n ref={slotRef}\n styleType={styleType}\n bgColor={backgroundColor}\n bgColor2={backgroundColor2}\n clickable={clickable}\n fill={halfFill}\n className={styles.timeSlotComponent}\n onClick={() => clickable && onSlotClick(formattedDate, slot)}\n >\n {isActualSlot && (\n <VisuallyHidden inert={inertValue(isCollapsedSlot)}>\n <button\n type=\"button\"\n ref={(element) => {\n slotButtonRefs.current[slotId] = element;\n }}\n aria-disabled={!clickable}\n aria-label={getSlotAriaLabel(formattedDate, slot)}\n onKeyDown={(event) =>\n onSlotKeyDown(event, {\n key: slotId,\n date: formattedDate,\n rowIndex: slot.rowIndex ?? 0,\n })\n }\n onClick={\n clickable\n ? onSlotButtonClick(formattedDate, slot)\n : undefined\n }\n />\n </VisuallyHidden>\n )}\n </TimeSlotComponent>\n );\n};\n"],"names":["formattedDate","slot","variant","hasCollapsedContent","expandAll","visibleRowCount","onSlotClick","getSlotAriaLabel","onSlotKeyDown","onSlotButtonClick","slotButtonRefs","id","clickable","isActualSlot","styleAttributes","cellLength","halfFill","styleType","backgroundColor","backgroundColor2","slotId","isCollapsedSlot","_a","rowIndex","slotHeight","SLOT_HEIGHT","SLOT_GAP","slotRef","useRef","useApplyStyle","styles.tokens","timeSlot","height","formatUnitValue","_jsx","TimeSlotComponent","ref","bgColor","bgColor2","fill","className","styles.timeSlotComponent","onClick","children","VisuallyHidden","inert","inertValue","type","element","current","onKeyDown","event","key","date","undefined"],"mappings":"woBA8CgC,EAC5BA,gBACAC,OACAC,UACAC,sBACAC,YACAC,kBACAC,cACAC,mBACAC,gBACAC,oBACAC,2BAEA,MAAMC,GACFA,EAAEC,UACFA,GAAY,EAAIC,aAChBA,EAAYC,gBACZA,EAAeC,WACfA,EAAUC,SACVA,GACAf,GACEgB,UACFA,EAAY,UAASC,gBACrBA,EAAeC,iBACfA,GACAL,EACEM,EAAS,GAAGpB,KAAiBW,IAC7BU,EACFlB,IACCC,YACAkB,EAAArB,EAAKsB,wBAAY,IAAMlB,EAEtBmB,EACU,UAAZtB,EACMa,EAAaU,EAAAA,aAAeV,EAAa,GAAKW,EAAAA,SAC9CD,EAAAA,YAEJE,EAAUC,EAAAA,OAAuB,MAKvC,OAJAC,EAAAA,cAAcF,EAAS,CACnB,CAACG,EAAAA,OAAcC,SAASC,QAASC,EAAAA,gBAAgBT,EAAY,QAI7DU,EAAAA,IAACC,EAAAA,SAAiB,CACdC,IAAKT,EACLV,UAAWA,EACXoB,QAASnB,EACToB,SAAUnB,EACVP,UAAWA,EACX2B,KAAMvB,EACNwB,UAAWC,EAAAA,kBACXC,QAAS,IAAM9B,GAAaN,EAAYN,EAAeC,GAAK0C,SAE3D9B,GACGqB,MAACU,EAAAA,eAAc,CAACC,MAAOC,EAAAA,WAAWzB,YAC9Ba,EAAAA,IAAA,SAAA,CACIa,KAAK,SACLX,IAAMY,IACFtC,EAAeuC,QAAQ7B,GAAU4B,CAAO,mBAE5BpC,EAAS,aACbL,EAAiBP,EAAeC,GAC5CiD,UAAYC,UACR,OAAA3C,EAAc2C,EAAO,CACjBC,IAAKhC,EACLiC,KAAMrD,EACNuB,iBAAUD,EAAArB,EAAKsB,wBAAY,GAC7B,EAENmB,QACI9B,EACMH,EAAkBT,EAAeC,QACjCqD,OAKN"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),r=require("../external/dayjs/dayjs.min.js"),
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("clsx"),l=require("../external/dayjs/dayjs.min.js"),t=require("../external/dayjs/plugin/isBetween.js"),a=require("react"),s=require("../shared/accessibility/index.js"),i=require("../shared/internal-calendar/day-cell/day-cell.js"),o=require("../shared/time-slot/time-slot.js");require("../theme/theme-provider/index.js"),require("../theme/theme-provider/context.js"),require("../theme/tokens/border.js");var n=require("../theme/tokens/colour.js");require("../theme/tokens/font.js"),require("../theme/tokens/media-query.js");var d=require("../theme/utils/use-apply-styles.js");require("../theme/utils/use-media-query.js");var c=require("../util/calendar-helper.js"),u=require("../util/time-helper.js"),m=require("./time-slot-week-days.styles.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=v(r);l.default.extend(t.default);const y="YYYY-MM-DD",b={id:"1",startTime:"",endTime:"",clickable:!1,styleAttributes:{color:"",styleType:"stripes",backgroundColor:n.Colour["bg-stronger"],backgroundColor2:n.Colour["bg-strongest"]}},h=({color:r,children:l})=>{const t=a.useRef(null);return d.useApplyStyle(t,{[m.tokens.timeSlotText.color]:r}),e.jsx("div",{ref:t,className:m.timeSlotText,children:l})};exports.TimeSlotWeekDays=({calendarDate:r,disabledDates:t,selectedDate:n,onSelect:d,minDate:v,maxDate:j,slots:f,enableSelection:k=!0,onSlotClick:x})=>{const g=a.useMemo((()=>c.CalendarHelper.generateDaysForCurrentWeek(r)),[r]),[T,q]=a.useState(),C=a.useRef({}),D=(e,r)=>{null==x||x(e,r)},w=(e,r)=>l=>{var t;l.stopPropagation(),(null===(t=r.clickable)||void 0===t||t)&&D(e,r)},S=e=>{q(e)},H=()=>{q(void 0)},R=e=>{const r=e.format(y),a=(e=>{const r=c.CalendarHelper.isWithinRange(e,v?l.default(v):void 0,j?l.default(j):void 0),a=!!t&&t.includes(e.format(y));return!r||a})(e),s=k&&!a,i=s&&T&&e.isSame(T,"day"),o=[n].includes(r),d={labelType:"available",interactive:!!k&&s};return a&&(d.disabled=!0,d.labelType="unavailable"),o&&i?(d.labelType="selected-hover",d.circleLeft="selected-hover-outline",d.circleRight="selected-hover-outline"):o?(d.labelType="selected",d.circleLeft="selected-outline",d.circleRight="selected-outline"):i&&(d.labelType="hover",d.circleLeft="hover-subtle",d.circleRight="hover-subtle"),d},A=(e,r)=>{const l=(t=r.date,(null!==(a=null==f?void 0:f[t])&&void 0!==a?a:[]).map(((e,r)=>({key:`${t}-${e.id}`,date:t,rowIndex:r}))));var t,a;const s=e=>{var r;e&&(null===(r=C.current[e.key])||void 0===r||r.focus())};switch(e.key){case"ArrowRight":case"ArrowDown":{e.preventDefault();const t=l.findIndex((e=>e.key===r.key));s(l[t+1]);break}case"ArrowLeft":case"ArrowUp":{e.preventDefault();const t=l.findIndex((e=>e.key===r.key));s(l[t-1]);break}case"Home":case"PageUp":e.preventDefault(),s(l[0]);break;case"End":case"PageDown":e.preventDefault(),s(l[l.length-1])}},N=(e,r)=>{var t;const{startTime:a,endTime:i}=r;return s.concatIds(l.default(e).format("D MMMM YYYY dddd"),a&&i?u.TimeHelper.formatTimeRange(a,i):void 0,r.label,null===(t=r.clickable)||void 0===t||t?"Available":"Unavailable")};return e.jsxs("div",{className:m.wrapper,role:"grid",children:[e.jsx("div",{className:m.headerRow,role:"row",onBlur:H,children:g.map(((r,t)=>{const a=R(r);return e.jsxs("div",{className:m.headerCellWeek,role:"presentation",children:[e.jsx(i.DayCell,Object.assign({date:r,calendarDate:l.default(n),onSelect:()=>{((e,r)=>{!r&&k&&d(e)})(r,!a.interactive)},onHover:S,onHoverEnd:H,onFocus:S,role:"columnheader",tabIndex:a.interactive?0:-1},a),`day-${t}`),e.jsx("div",{"aria-hidden":!0,className:p.default(m.dayLabel,a.disabled&&m.dayLabelDisabled),children:l.default(r).format("ddd")})]},`week-day-${t}`)}))}),e.jsx("div",{className:m.columnWeekCell,role:"row",children:g.map(((r,l)=>{var t;const a=r.format(y),i=null!==(t=null==f?void 0:f[a])&&void 0!==t?t:[b];return e.jsx("div",{className:m.timeSlotWrapper,role:"gridcell",children:i&&i.map(((r,l)=>{const{id:t,startTime:i,endTime:n,clickable:d=!0,styleAttributes:u}=r,{color:v,styleType:p="default",backgroundColor:y,backgroundColor2:j}=u,f=`${a}-${t}`,k=r!==b;return e.jsxs(o.TimeSlot,{className:m.timeSlotComponent,styleType:p,bgColor:y,bgColor2:j,clickable:d,onClick:()=>d&&D(a,r),children:[e.jsxs(h,{color:v,children:[e.jsx("span",{children:c.CalendarHelper.convertTo12HourFormat(i)}),n&&i&&e.jsx("span",{children:"-"}),e.jsx("span",{children:c.CalendarHelper.convertTo12HourFormat(n)})]}),k&&e.jsx(s.VisuallyHidden,{children:e.jsx("button",{type:"button",ref:e=>{C.current[f]=e},"aria-disabled":!d,"aria-label":N(a,r),onKeyDown:e=>A(e,{key:f,date:a}),onClick:w(a,r)})})]},t)}))},`wrapper-${l}`)}))},`week-cell-${r.format(y)}`)]})};
|
|
2
2
|
//# sourceMappingURL=time-slot-week-days.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-slot-week-days.js","sources":["../../../src/time-slot-week-view/time-slot-week-days.tsx"],"sourcesContent":["import type { Dayjs } from \"dayjs\";\nimport dayjs from \"dayjs\";\nimport isBetween from \"dayjs/plugin/isBetween\";\nimport type React from \"react\";\nimport { useMemo, useRef, useState } from \"react\";\n\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport type { InternalCalendarProps } from \"../shared/internal-calendar\";\nimport type { CellStyleProps } from \"../shared/internal-calendar/day-cell\";\nimport { DayCell } from \"../shared/internal-calendar/day-cell\";\nimport { Colour } from \"../theme\";\nimport type { TimeSlot } from \"../time-slot-bar/types\";\nimport { CalendarHelper } from \"../util/calendar-helper\";\nimport { TimeHelper } from \"../util/time-helper\";\nimport {\n ColumnWeekCell,\n DayLabel,\n HeaderCellWeek,\n HeaderRow,\n TimeSlotComponent,\n TimeSlotText,\n TimeSlotWrapper,\n Wrapper,\n} from \"./time-slot-week-days.style\";\n\ndayjs.extend(isBetween);\n\ninterface FocusableSlotMeta {\n key: string;\n date: string;\n rowIndex: number;\n}\n\ninterface TimeSlotWeekDaysProps\n extends Pick<\n InternalCalendarProps,\n \"disabledDates\" | \"minDate\" | \"maxDate\"\n > {\n selectedDate: string | undefined;\n calendarDate: Dayjs;\n onSelect: (value: Dayjs) => void;\n slots?: { [date: string]: TimeSlot[] } | undefined;\n enableSelection?: boolean | undefined;\n onSlotClick?: ((date: string, timeSlot: TimeSlot) => void) | undefined;\n}\n\nconst dateFormat = \"YYYY-MM-DD\";\n\nconst fallbackSlot: TimeSlot = {\n id: \"1\",\n startTime: \"\",\n endTime: \"\",\n clickable: false,\n styleAttributes: {\n color: \"\",\n styleType: \"stripes\",\n backgroundColor: Colour[\"bg-stronger\"],\n backgroundColor2: Colour[\"bg-strongest\"],\n },\n};\n\nexport const TimeSlotWeekDays = ({\n calendarDate,\n disabledDates,\n selectedDate,\n onSelect,\n minDate,\n maxDate,\n slots: daySlots,\n enableSelection = true,\n onSlotClick,\n}: TimeSlotWeekDaysProps) => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const currentCalendarWeek = useMemo((): Dayjs[] => {\n return CalendarHelper.generateDaysForCurrentWeek(calendarDate);\n }, [calendarDate]);\n const [hoverDay, setHoverDay] = useState<Dayjs>();\n const slotButtonRefs = useRef<Record<string, HTMLButtonElement | null>>({});\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleDayClick = (value: Dayjs, isDisabled: boolean) => {\n if (isDisabled || !enableSelection) return;\n onSelect(value);\n };\n\n const handleSlotClick = (date: string, slot: TimeSlot) => {\n onSlotClick?.(date, slot);\n };\n\n const handleSlotButtonClick =\n (date: string, slot: TimeSlot) =>\n (event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n\n if (slot.clickable ?? true) {\n handleSlotClick(date, slot);\n }\n };\n\n const handleDayHover = (value: Dayjs) => {\n setHoverDay(value);\n };\n\n const handleDayHoverClear = () => {\n setHoverDay(undefined);\n };\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n const isDisabled = (day: Dayjs): boolean => {\n const isWithinRange = CalendarHelper.isWithinRange(\n day,\n minDate ? dayjs(minDate) : undefined,\n maxDate ? dayjs(maxDate) : undefined\n );\n\n const isDisabledDate =\n !!disabledDates && disabledDates.includes(day.format(dateFormat));\n\n return !isWithinRange || isDisabledDate;\n };\n\n const generateStyleProps = (day: Dayjs) => {\n const dateStartWithYear = day.format(dateFormat);\n const disabled = isDisabled(day);\n const isHoverEnabled = enableSelection && !disabled;\n const isHover =\n isHoverEnabled && hoverDay && day.isSame(hoverDay, \"day\");\n const isSelected = [selectedDate].includes(dateStartWithYear);\n\n const dayCellStyleProps: CellStyleProps = {\n labelType: \"available\",\n interactive: enableSelection ? isHoverEnabled : false,\n };\n\n if (disabled) {\n dayCellStyleProps.disabled = true;\n dayCellStyleProps.labelType = \"unavailable\";\n }\n\n if (isSelected && isHover) {\n dayCellStyleProps.labelType = \"selected-hover\";\n dayCellStyleProps.circleLeft = \"selected-hover-outline\";\n dayCellStyleProps.circleRight = \"selected-hover-outline\";\n } else if (isSelected) {\n dayCellStyleProps.labelType = \"selected\";\n dayCellStyleProps.circleLeft = \"selected-outline\";\n dayCellStyleProps.circleRight = \"selected-outline\";\n } else if (isHover) {\n dayCellStyleProps.labelType = \"hover\";\n dayCellStyleProps.circleLeft = \"hover-subtle\";\n dayCellStyleProps.circleRight = \"hover-subtle\";\n }\n\n return dayCellStyleProps;\n };\n\n const getFocusableSlotsForDate = (\n formattedDate: string\n ): FocusableSlotMeta[] => {\n return (daySlots?.[formattedDate] ?? []).map((slot, index) => ({\n key: `${formattedDate}-${slot.id}`,\n date: formattedDate,\n rowIndex: index,\n }));\n };\n\n const handleSlotKeyDown = (\n event: React.KeyboardEvent<HTMLButtonElement>,\n currentSlot: FocusableSlotMeta\n ) => {\n const sameColumnSlots = getFocusableSlotsForDate(currentSlot.date);\n\n const focusSlot = (slot?: FocusableSlotMeta) => {\n if (!slot) return;\n slotButtonRefs.current[slot.key]?.focus();\n };\n\n switch (event.key) {\n case \"ArrowRight\":\n case \"ArrowDown\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex + 1]);\n break;\n }\n case \"ArrowLeft\":\n case \"ArrowUp\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex - 1]);\n break;\n }\n case \"Home\":\n case \"PageUp\":\n event.preventDefault();\n focusSlot(sameColumnSlots[0]);\n break;\n case \"End\":\n case \"PageDown\":\n event.preventDefault();\n focusSlot(sameColumnSlots[sameColumnSlots.length - 1]);\n break;\n default:\n break;\n }\n };\n\n const getSlotAriaLabel = (date: string, slot: TimeSlot) => {\n const { startTime: slotStartTime, endTime: slotEndTime } = slot;\n\n return concatIds(\n dayjs(date).format(\"D MMMM YYYY dddd\"),\n slotStartTime && slotEndTime\n ? TimeHelper.formatTimeRange(slotStartTime, slotEndTime)\n : undefined,\n slot.label,\n slot.clickable ?? true ? \"Available\" : \"Unavailable\"\n );\n };\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderHeader = () => {\n return (\n <HeaderRow role=\"row\" onBlur={handleDayHoverClear}>\n {currentCalendarWeek.map((day, index) => {\n const dayCellStyleProps = generateStyleProps(day);\n\n return (\n <HeaderCellWeek\n key={`week-day-${index}`}\n role=\"presentation\"\n >\n <DayCell\n key={`day-${index}`}\n date={day}\n calendarDate={dayjs(selectedDate)}\n onSelect={() => {\n handleDayClick(\n day,\n !dayCellStyleProps.interactive\n );\n }}\n onHover={handleDayHover}\n onHoverEnd={handleDayHoverClear}\n onFocus={handleDayHover}\n role=\"columnheader\"\n tabIndex={\n dayCellStyleProps.interactive ? 0 : -1\n }\n {...dayCellStyleProps}\n />\n <DayLabel\n aria-hidden\n $disabled={dayCellStyleProps.disabled}\n >\n {dayjs(day).format(\"ddd\")}\n </DayLabel>\n </HeaderCellWeek>\n );\n })}\n </HeaderRow>\n );\n };\n\n const renderTimeSlotBarCells = () => {\n return (\n <ColumnWeekCell\n key={`week-cell-${calendarDate.format(dateFormat)}`}\n role=\"row\"\n >\n {currentCalendarWeek.map((day, dayIndex) => {\n const formattedDate = day.format(dateFormat);\n const slots = daySlots?.[formattedDate] ?? [fallbackSlot];\n\n return (\n <TimeSlotWrapper\n key={`wrapper-${dayIndex}`}\n role=\"gridcell\"\n >\n {slots &&\n slots.map((slot, rowIndex) => {\n const {\n id,\n startTime: slotStartTime,\n endTime: slotEndTime,\n clickable = true,\n styleAttributes,\n } = slot;\n const {\n color,\n styleType = \"default\",\n backgroundColor,\n backgroundColor2,\n } = styleAttributes;\n const slotKey = `${formattedDate}-${id}`;\n const isActualSlot = slot !== fallbackSlot;\n\n return (\n <TimeSlotComponent\n key={id}\n styleType={styleType}\n bgColor={backgroundColor}\n bgColor2={backgroundColor2}\n clickable={clickable}\n onClick={() =>\n clickable &&\n handleSlotClick(\n formattedDate,\n slot\n )\n }\n >\n <TimeSlotText\n style={{ color: color }}\n >\n <span>\n {CalendarHelper.convertTo12HourFormat(\n slotStartTime\n )}\n </span>\n {slotEndTime &&\n slotStartTime && (\n <span>-</span>\n )}\n <span>\n {CalendarHelper.convertTo12HourFormat(\n slotEndTime\n )}\n </span>\n </TimeSlotText>\n {isActualSlot && (\n <VisuallyHidden>\n <button\n type=\"button\"\n ref={(element) => {\n slotButtonRefs.current[\n slotKey\n ] = element;\n }}\n aria-disabled={\n !clickable\n }\n aria-label={getSlotAriaLabel(\n formattedDate,\n slot\n )}\n onKeyDown={(event) =>\n handleSlotKeyDown(\n event,\n {\n key: slotKey,\n date: formattedDate,\n rowIndex,\n }\n )\n }\n onClick={handleSlotButtonClick(\n formattedDate,\n slot\n )}\n />\n </VisuallyHidden>\n )}\n </TimeSlotComponent>\n );\n })}\n </TimeSlotWrapper>\n );\n })}\n </ColumnWeekCell>\n );\n };\n\n return (\n <Wrapper role=\"grid\">\n {renderHeader()}\n {renderTimeSlotBarCells()}\n </Wrapper>\n );\n};\n"],"names":["dayjs","extend","isBetween","dateFormat","fallbackSlot","id","startTime","endTime","clickable","styleAttributes","color","styleType","backgroundColor","Colour","backgroundColor2","calendarDate","disabledDates","selectedDate","onSelect","minDate","maxDate","slots","daySlots","enableSelection","onSlotClick","currentCalendarWeek","useMemo","CalendarHelper","generateDaysForCurrentWeek","hoverDay","setHoverDay","useState","slotButtonRefs","useRef","handleSlotClick","date","slot","handleSlotButtonClick","event","stopPropagation","_a","handleDayHover","value","handleDayHoverClear","undefined","generateStyleProps","day","dateStartWithYear","format","disabled","isWithinRange","isDisabledDate","includes","isDisabled","isHoverEnabled","isHover","isSame","isSelected","dayCellStyleProps","labelType","interactive","circleLeft","circleRight","handleSlotKeyDown","currentSlot","sameColumnSlots","formattedDate","map","index","key","rowIndex","focusSlot","current","focus","preventDefault","currentIndex","findIndex","length","getSlotAriaLabel","slotStartTime","slotEndTime","concatIds","TimeHelper","formatTimeRange","label","_jsxs","Wrapper","role","children","_jsx","HeaderRow","onBlur","HeaderCellWeek","DayCell","Object","assign","handleDayClick","onHover","onHoverEnd","onFocus","tabIndex","DayLabel","$disabled","ColumnWeekCell","dayIndex","TimeSlotWrapper","slotKey","isActualSlot","TimeSlotComponent","bgColor","bgColor2","onClick","TimeSlotText","style","convertTo12HourFormat","VisuallyHidden","type","ref","element","onKeyDown"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"time-slot-week-days.js","sources":["../../../src/time-slot-week-view/time-slot-week-days.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport type { Dayjs } from \"dayjs\";\nimport dayjs from \"dayjs\";\nimport isBetween from \"dayjs/plugin/isBetween\";\nimport type React from \"react\";\nimport { useMemo, useRef, useState } from \"react\";\n\nimport { concatIds, VisuallyHidden } from \"../shared/accessibility\";\nimport type { InternalCalendarProps } from \"../shared/internal-calendar\";\nimport type { CellStyleProps } from \"../shared/internal-calendar/day-cell\";\nimport { DayCell } from \"../shared/internal-calendar/day-cell\";\nimport { TimeSlot as TimeSlotComponent } from \"../shared/time-slot\";\nimport { Colour, useApplyStyle } from \"../theme\";\nimport type { TimeSlot } from \"../time-slot-bar/types\";\nimport { CalendarHelper } from \"../util/calendar-helper\";\nimport { TimeHelper } from \"../util/time-helper\";\nimport * as styles from \"./time-slot-week-days.styles\";\n\ndayjs.extend(isBetween);\n\ninterface FocusableSlotMeta {\n key: string;\n date: string;\n rowIndex: number;\n}\n\ninterface TimeSlotWeekDaysProps\n extends Pick<\n InternalCalendarProps,\n \"disabledDates\" | \"minDate\" | \"maxDate\"\n > {\n selectedDate: string | undefined;\n calendarDate: Dayjs;\n onSelect: (value: Dayjs) => void;\n slots?: { [date: string]: TimeSlot[] } | undefined;\n enableSelection?: boolean | undefined;\n onSlotClick?: ((date: string, timeSlot: TimeSlot) => void) | undefined;\n}\n\nconst dateFormat = \"YYYY-MM-DD\";\n\nconst fallbackSlot: TimeSlot = {\n id: \"1\",\n startTime: \"\",\n endTime: \"\",\n clickable: false,\n styleAttributes: {\n color: \"\",\n styleType: \"stripes\",\n backgroundColor: Colour[\"bg-stronger\"],\n backgroundColor2: Colour[\"bg-strongest\"],\n },\n};\n\nconst TimeSlotTextWithColor = ({\n color,\n children,\n}: {\n color: string | undefined;\n children: React.ReactNode;\n}) => {\n const ref = useRef<HTMLDivElement>(null);\n\n useApplyStyle(ref, {\n [styles.tokens.timeSlotText.color]: color,\n });\n\n return (\n <div ref={ref} className={styles.timeSlotText}>\n {children}\n </div>\n );\n};\n\nexport const TimeSlotWeekDays = ({\n calendarDate,\n disabledDates,\n selectedDate,\n onSelect,\n minDate,\n maxDate,\n slots: daySlots,\n enableSelection = true,\n onSlotClick,\n}: TimeSlotWeekDaysProps) => {\n // =============================================================================\n // CONST, STATE, REF\n // =============================================================================\n const currentCalendarWeek = useMemo((): Dayjs[] => {\n return CalendarHelper.generateDaysForCurrentWeek(calendarDate);\n }, [calendarDate]);\n const [hoverDay, setHoverDay] = useState<Dayjs>();\n const slotButtonRefs = useRef<Record<string, HTMLButtonElement | null>>({});\n\n // =============================================================================\n // EVENT HANDLERS\n // =============================================================================\n const handleDayClick = (value: Dayjs, isDisabled: boolean) => {\n if (isDisabled || !enableSelection) return;\n onSelect(value);\n };\n\n const handleSlotClick = (date: string, slot: TimeSlot) => {\n onSlotClick?.(date, slot);\n };\n\n const handleSlotButtonClick =\n (date: string, slot: TimeSlot) =>\n (event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n\n if (slot.clickable ?? true) {\n handleSlotClick(date, slot);\n }\n };\n\n const handleDayHover = (value: Dayjs) => {\n setHoverDay(value);\n };\n\n const handleDayHoverClear = () => {\n setHoverDay(undefined);\n };\n\n // =============================================================================\n // HELPER FUNCTIONS\n // =============================================================================\n const isDisabled = (day: Dayjs): boolean => {\n const isWithinRange = CalendarHelper.isWithinRange(\n day,\n minDate ? dayjs(minDate) : undefined,\n maxDate ? dayjs(maxDate) : undefined\n );\n\n const isDisabledDate =\n !!disabledDates && disabledDates.includes(day.format(dateFormat));\n\n return !isWithinRange || isDisabledDate;\n };\n\n const generateStyleProps = (day: Dayjs) => {\n const dateStartWithYear = day.format(dateFormat);\n const disabled = isDisabled(day);\n const isHoverEnabled = enableSelection && !disabled;\n const isHover =\n isHoverEnabled && hoverDay && day.isSame(hoverDay, \"day\");\n const isSelected = [selectedDate].includes(dateStartWithYear);\n\n const dayCellStyleProps: CellStyleProps = {\n labelType: \"available\",\n interactive: enableSelection ? isHoverEnabled : false,\n };\n\n if (disabled) {\n dayCellStyleProps.disabled = true;\n dayCellStyleProps.labelType = \"unavailable\";\n }\n\n if (isSelected && isHover) {\n dayCellStyleProps.labelType = \"selected-hover\";\n dayCellStyleProps.circleLeft = \"selected-hover-outline\";\n dayCellStyleProps.circleRight = \"selected-hover-outline\";\n } else if (isSelected) {\n dayCellStyleProps.labelType = \"selected\";\n dayCellStyleProps.circleLeft = \"selected-outline\";\n dayCellStyleProps.circleRight = \"selected-outline\";\n } else if (isHover) {\n dayCellStyleProps.labelType = \"hover\";\n dayCellStyleProps.circleLeft = \"hover-subtle\";\n dayCellStyleProps.circleRight = \"hover-subtle\";\n }\n\n return dayCellStyleProps;\n };\n\n const getFocusableSlotsForDate = (\n formattedDate: string\n ): FocusableSlotMeta[] => {\n return (daySlots?.[formattedDate] ?? []).map((slot, index) => ({\n key: `${formattedDate}-${slot.id}`,\n date: formattedDate,\n rowIndex: index,\n }));\n };\n\n const handleSlotKeyDown = (\n event: React.KeyboardEvent<HTMLButtonElement>,\n currentSlot: FocusableSlotMeta\n ) => {\n const sameColumnSlots = getFocusableSlotsForDate(currentSlot.date);\n\n const focusSlot = (slot?: FocusableSlotMeta) => {\n if (!slot) return;\n slotButtonRefs.current[slot.key]?.focus();\n };\n\n switch (event.key) {\n case \"ArrowRight\":\n case \"ArrowDown\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex + 1]);\n break;\n }\n case \"ArrowLeft\":\n case \"ArrowUp\": {\n event.preventDefault();\n const currentIndex = sameColumnSlots.findIndex(\n (slot) => slot.key === currentSlot.key\n );\n focusSlot(sameColumnSlots[currentIndex - 1]);\n break;\n }\n case \"Home\":\n case \"PageUp\":\n event.preventDefault();\n focusSlot(sameColumnSlots[0]);\n break;\n case \"End\":\n case \"PageDown\":\n event.preventDefault();\n focusSlot(sameColumnSlots[sameColumnSlots.length - 1]);\n break;\n default:\n break;\n }\n };\n\n const getSlotAriaLabel = (date: string, slot: TimeSlot) => {\n const { startTime: slotStartTime, endTime: slotEndTime } = slot;\n\n return concatIds(\n dayjs(date).format(\"D MMMM YYYY dddd\"),\n slotStartTime && slotEndTime\n ? TimeHelper.formatTimeRange(slotStartTime, slotEndTime)\n : undefined,\n slot.label,\n slot.clickable ?? true ? \"Available\" : \"Unavailable\"\n );\n };\n // =============================================================================\n // RENDER FUNCTIONS\n // =============================================================================\n const renderHeader = () => {\n return (\n <div\n className={styles.headerRow}\n role=\"row\"\n onBlur={handleDayHoverClear}\n >\n {currentCalendarWeek.map((day, index) => {\n const dayCellStyleProps = generateStyleProps(day);\n\n return (\n <div\n className={styles.headerCellWeek}\n key={`week-day-${index}`}\n role=\"presentation\"\n >\n <DayCell\n key={`day-${index}`}\n date={day}\n calendarDate={dayjs(selectedDate)}\n onSelect={() => {\n handleDayClick(\n day,\n !dayCellStyleProps.interactive\n );\n }}\n onHover={handleDayHover}\n onHoverEnd={handleDayHoverClear}\n onFocus={handleDayHover}\n role=\"columnheader\"\n tabIndex={\n dayCellStyleProps.interactive ? 0 : -1\n }\n {...dayCellStyleProps}\n />\n <div\n aria-hidden\n className={clsx(\n styles.dayLabel,\n dayCellStyleProps.disabled &&\n styles.dayLabelDisabled\n )}\n >\n {dayjs(day).format(\"ddd\")}\n </div>\n </div>\n );\n })}\n </div>\n );\n };\n\n const renderTimeSlotBarCells = () => {\n return (\n <div\n className={styles.columnWeekCell}\n key={`week-cell-${calendarDate.format(dateFormat)}`}\n role=\"row\"\n >\n {currentCalendarWeek.map((day, dayIndex) => {\n const formattedDate = day.format(dateFormat);\n const slots = daySlots?.[formattedDate] ?? [fallbackSlot];\n\n return (\n <div\n className={styles.timeSlotWrapper}\n key={`wrapper-${dayIndex}`}\n role=\"gridcell\"\n >\n {slots &&\n slots.map((slot, rowIndex) => {\n const {\n id,\n startTime: slotStartTime,\n endTime: slotEndTime,\n clickable = true,\n styleAttributes,\n } = slot;\n const {\n color,\n styleType = \"default\",\n backgroundColor,\n backgroundColor2,\n } = styleAttributes;\n const slotKey = `${formattedDate}-${id}`;\n const isActualSlot = slot !== fallbackSlot;\n\n return (\n <TimeSlotComponent\n key={id}\n className={styles.timeSlotComponent}\n styleType={styleType}\n bgColor={backgroundColor}\n bgColor2={backgroundColor2}\n clickable={clickable}\n onClick={() =>\n clickable &&\n handleSlotClick(\n formattedDate,\n slot\n )\n }\n >\n <TimeSlotTextWithColor\n color={color}\n >\n <span>\n {CalendarHelper.convertTo12HourFormat(\n slotStartTime\n )}\n </span>\n {slotEndTime &&\n slotStartTime && (\n <span>-</span>\n )}\n <span>\n {CalendarHelper.convertTo12HourFormat(\n slotEndTime\n )}\n </span>\n </TimeSlotTextWithColor>\n {isActualSlot && (\n <VisuallyHidden>\n <button\n type=\"button\"\n ref={(element) => {\n slotButtonRefs.current[\n slotKey\n ] = element;\n }}\n aria-disabled={\n !clickable\n }\n aria-label={getSlotAriaLabel(\n formattedDate,\n slot\n )}\n onKeyDown={(event) =>\n handleSlotKeyDown(\n event,\n {\n key: slotKey,\n date: formattedDate,\n rowIndex,\n }\n )\n }\n onClick={handleSlotButtonClick(\n formattedDate,\n slot\n )}\n />\n </VisuallyHidden>\n )}\n </TimeSlotComponent>\n );\n })}\n </div>\n );\n })}\n </div>\n );\n };\n\n return (\n <div className={styles.wrapper} role=\"grid\">\n {renderHeader()}\n {renderTimeSlotBarCells()}\n </div>\n );\n};\n"],"names":["dayjs","extend","isBetween","dateFormat","fallbackSlot","id","startTime","endTime","clickable","styleAttributes","color","styleType","backgroundColor","Colour","backgroundColor2","TimeSlotTextWithColor","children","ref","useRef","useApplyStyle","styles.tokens","timeSlotText","_jsx","className","styles.timeSlotText","calendarDate","disabledDates","selectedDate","onSelect","minDate","maxDate","slots","daySlots","enableSelection","onSlotClick","currentCalendarWeek","useMemo","CalendarHelper","generateDaysForCurrentWeek","hoverDay","setHoverDay","useState","slotButtonRefs","handleSlotClick","date","slot","handleSlotButtonClick","event","stopPropagation","_a","handleDayHover","value","handleDayHoverClear","undefined","generateStyleProps","day","dateStartWithYear","format","disabled","isWithinRange","isDisabledDate","includes","isDisabled","isHoverEnabled","isHover","isSame","isSelected","dayCellStyleProps","labelType","interactive","circleLeft","circleRight","handleSlotKeyDown","currentSlot","sameColumnSlots","formattedDate","map","index","key","rowIndex","focusSlot","current","focus","preventDefault","currentIndex","findIndex","length","getSlotAriaLabel","slotStartTime","slotEndTime","concatIds","TimeHelper","formatTimeRange","label","_jsxs","styles.wrapper","role","styles.headerRow","onBlur","styles.headerCellWeek","DayCell","Object","assign","handleDayClick","onHover","onHoverEnd","onFocus","tabIndex","clsx","styles.dayLabel","styles.dayLabelDisabled","styles.columnWeekCell","dayIndex","styles.timeSlotWrapper","slotKey","isActualSlot","TimeSlotComponent","styles.timeSlotComponent","bgColor","bgColor2","onClick","convertTo12HourFormat","VisuallyHidden","type","element","onKeyDown"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";require("./time-slot-week-days.styles_1h21vyw.css");exports.columnWeekCell="c1fvren",exports.dayLabel="d4p8eye",exports.dayLabelDisabled="dl9xaeu",exports.headerCellWeek="h1u5a4vg",exports.headerRow="hi684jn",exports.timeSlotComponent="t1nixg7y",exports.timeSlotText="tiecbfv",exports.timeSlotWrapper="t17yohj6",exports.tokens={timeSlotText:{color:"--fds-internal-timeSlotWeekDays-timeSlotText-color"}},exports.wrapper="w1jgoij2";
|
|
2
|
+
//# sourceMappingURL=time-slot-week-days.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-slot-week-days.styles.js","sources":["../../../src/time-slot-week-view/time-slot-week-days.styles.ts"],"sourcesContent":["import { css } from \"@linaria/core\";\n\nimport { Colour, Font } from \"../theme\";\n\n// =============================================================================\n// TOKENS\n// =============================================================================\nexport const tokens = {\n timeSlotText: {\n color: \"--fds-internal-timeSlotWeekDays-timeSlotText-color\",\n },\n};\n\n// =============================================================================\n// STYLING\n// =============================================================================\nexport const headerCellWeek = css`\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n user-select: none;\n margin-bottom: 0.188rem;\n`;\n\nexport const headerRow = css`\n grid-column: 1 / -1;\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n`;\n\nexport const dayLabel = css`\n ${Font[\"body-xs-semibold\"]}\n color: ${Colour[\"text\"]};\n`;\n\nexport const dayLabelDisabled = css`\n color: ${Colour[\"text-disabled-subtlest\"]};\n`;\n\nexport const wrapper = css`\n width: 100%;\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n`;\n\nexport const columnWeekCell = css`\n grid-column: 1 / -1;\n display: flex;\n min-height: 7.625rem;\n`;\n\nexport const timeSlotText = css`\n ${tokens.timeSlotText.color}: initial;\n\n ${Font[\"body-xs-semibold\"]}\n margin: 1rem 0rem;\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n max-width: 2.5rem;\n color: var(${tokens.timeSlotText.color}, ${Colour[\"text\"]});\n`;\n\nexport const timeSlotComponent = css`\n display: flex;\n flex-grow: 1;\n align-items: center;\n justify-content: center;\n margin: 1px 0px;\n position: relative;\n\n &:focus-within {\n outline: 2px solid ${Colour[\"focus-ring\"]};\n outline-offset: 2px;\n z-index: 1;\n }\n`;\n\nexport const timeSlotWrapper = css`\n display: flex;\n flex-direction: column;\n flex: 1;\n margin: 1px;\n`;\n"],"names":["timeSlotText","color"],"mappings":"2HA8C2B,2BAfN,mCAKQ,iCApBF,6BASL,oCAwCQ,gCAbL,kCA4BG,0BAzEN,CAClBA,aAAc,CACVC,MAAO,uEA+BK"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
@layer fds{.h1u5a4vg{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;margin-bottom:0.188rem;}
|
|
2
|
+
.hi684jn{-ms-grid-column:1/-1;grid-column:1/-1;display:-ms-grid;display:grid;-ms-grid-columns:repeat(7, 1fr);grid-template-columns:repeat(7, 1fr);}
|
|
3
|
+
.d4p8eye{font-family:var(--fds-font-family-body);font-variant:var(--fds-font-variant);font-size:var(--fds-font-body-size-xs);font-weight:var(--fds-font-weight-semibold);line-height:var(--fds-font-body-lh-xs);letter-spacing:var(--fds-font-body-ls-xs);color:var(--fds-colour-text);}
|
|
4
|
+
.dl9xaeu{color:var(--fds-colour-text-disabled-subtlest);}
|
|
5
|
+
.w1jgoij2{width:100%;display:-ms-grid;display:grid;-ms-grid-columns:repeat(7, 1fr);grid-template-columns:repeat(7, 1fr);}
|
|
6
|
+
.c1fvren{-ms-grid-column:1/-1;grid-column:1/-1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;min-height:7.625rem;}
|
|
7
|
+
.tiecbfv{--fds-internal-timeSlotWeekDays-timeSlotText-color:initial;font-family:var(--fds-font-family-body);font-variant:var(--fds-font-variant);font-size:var(--fds-font-body-size-xs);font-weight:var(--fds-font-weight-semibold);line-height:var(--fds-font-body-lh-xs);letter-spacing:var(--fds-font-body-ls-xs);margin:1rem 0rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;max-width:2.5rem;color:var(--fds-internal-timeSlotWeekDays-timeSlotText-color, var(--fds-colour-text));}
|
|
8
|
+
.t1nixg7y{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;margin:1px 0px;position:relative;}.t1nixg7y:focus-within{outline:2px solid var(--fds-colour-focus-ring);outline-offset:2px;z-index:1;}
|
|
9
|
+
.t17yohj6{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex:1;-ms-flex:1;flex:1;margin:1px;}}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("../_virtual/_tslib.js"),a=require("react/jsx-runtime"),t=require("../external/dayjs/dayjs.min.js"),r=require("react"),i=require("../shared/internal-calendar/calendar-manager.js");require("../util/calendar-helper.js");var
|
|
1
|
+
"use strict";var e=require("../_virtual/_tslib.js"),a=require("react/jsx-runtime"),t=require("../external/dayjs/dayjs.min.js"),r=require("react"),i=require("../shared/internal-calendar/calendar-manager.js");require("../util/calendar-helper.js");var s=require("../util/date-helper.js");require("../util/simple-id-generator.js"),require("../util/string-helper.js"),require("@react-aria/live-announcer");var n=require("./time-slot-week-days.js"),l=require("./time-slot-week-view.styles.js");const o="YYYY-MM-DD";exports.TimeSlotWeekView=d=>{var{disabledDates:u,onWeekDisplayChange:c,onChange:D,value:f,minDate:m,maxDate:w,slots:k,showNavigationHeader:g=!0,enableSelection:h,onSlotClick:j,currentCalendarDate:b}=d,v=e.__rest(d,["disabledDates","onWeekDisplayChange","onChange","value","minDate","maxDate","slots","showNavigationHeader","enableSelection","onSlotClick","currentCalendarDate"]);const[y,C]=r.useState(f),q=r.useRef(null),S=r.useRef(void 0);r.useEffect((()=>{C(f)}),[f]);const p=e=>{const a=e.format(o);C(a),null==D||D(a)},x=(e,a)=>{j&&j(e,a)},Y=e=>{if(c){const a={week:{firstDayOfWeek:e.startOf("week").format(o),lastDayOfWeek:e.endOf("week").format(o)},month:e.month()+1,year:e.year()};c(a)}};return a.jsx("div",Object.assign({className:l.wrapper},v,{children:a.jsx(i.CalendarManager,{ref:q,dynamicHeight:!0,initialCalendarDate:s.DateHelper.toDayjs(y||b).endOf("week").format(o),selectedStartDate:y,getLeftArrowDate:e=>e.subtract(1,"week"),getRightArrowDate:e=>e.add(1,"week"),isLeftArrowDisabled:e=>!!m&&t.default(e).subtract(1,"week").isBefore(m,"week"),isRightArrowDisabled:e=>!!w&&t.default(e).add(1,"week").isAfter(w,"week"),onCalendarDateChange:e=>{S.current&&S.current.isSame(e,"week")||Y(e),S.current=e},showNavigationHeader:g,minDate:m,maxDate:w,getMonthHeaderLabel:e=>t.default(e).endOf("week").format("MMM"),getYearHeaderLabel:e=>t.default(e).endOf("week").format("YYYY"),isFocusable:!0,children:({calendarDate:e})=>a.jsx(n.TimeSlotWeekDays,{calendarDate:e,disabledDates:u,selectedDate:y,minDate:m,maxDate:w,onSelect:p,slots:k,enableSelection:h,onSlotClick:x})})}))};
|
|
2
2
|
//# sourceMappingURL=time-slot-week-view.js.map
|