@coreui/react-pro 5.9.2 → 5.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cjs/components/accordion/CAccordion.js +1 -1
- package/dist/cjs/components/accordion/CAccordionBody.js +1 -1
- package/dist/cjs/components/accordion/CAccordionButton.js +3 -3
- package/dist/cjs/components/accordion/CAccordionButton.js.map +1 -1
- package/dist/cjs/components/accordion/CAccordionHeader.js +1 -1
- package/dist/cjs/components/accordion/CAccordionItem.d.ts +1 -0
- package/dist/cjs/components/accordion/CAccordionItem.js +7 -4
- package/dist/cjs/components/accordion/CAccordionItem.js.map +1 -1
- package/dist/cjs/components/alert/CAlert.js +1 -1
- package/dist/cjs/components/alert/CAlertHeading.js +1 -1
- package/dist/cjs/components/alert/CAlertLink.js +1 -1
- package/dist/cjs/components/avatar/CAvatar.js +1 -1
- package/dist/cjs/components/backdrop/CBackdrop.js +1 -1
- package/dist/cjs/components/badge/CBadge.js +2 -2
- package/dist/cjs/components/badge/CBadge.js.map +1 -1
- package/dist/cjs/components/breadcrumb/CBreadcrumb.js +1 -1
- package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js +1 -1
- package/dist/cjs/components/button/CButton.js +1 -1
- package/dist/cjs/components/button-group/CButtonGroup.js +1 -1
- package/dist/cjs/components/button-group/CButtonToolbar.js +1 -1
- package/dist/cjs/components/calendar/CCalendar.d.ts +58 -44
- package/dist/cjs/components/calendar/CCalendar.js +52 -188
- package/dist/cjs/components/calendar/CCalendar.js.map +1 -1
- package/dist/cjs/components/calendar/CCalendarNavigation.d.ts +21 -0
- package/dist/cjs/components/calendar/CCalendarNavigation.js +23 -0
- package/dist/cjs/components/calendar/CCalendarNavigation.js.map +1 -0
- package/dist/cjs/components/calendar/CCalendarPanel.d.ts +28 -0
- package/dist/cjs/components/calendar/CCalendarPanel.js +149 -0
- package/dist/cjs/components/calendar/CCalendarPanel.js.map +1 -0
- package/dist/cjs/components/calendar/types.d.ts +3 -0
- package/dist/cjs/components/calendar/utils.d.ts +176 -18
- package/dist/cjs/components/calendar/utils.js +330 -52
- package/dist/cjs/components/calendar/utils.js.map +1 -1
- package/dist/cjs/components/callout/CCallout.js +1 -1
- package/dist/cjs/components/card/CCard.js +1 -1
- package/dist/cjs/components/card/CCardBody.js +1 -1
- package/dist/cjs/components/card/CCardFooter.js +1 -1
- package/dist/cjs/components/card/CCardGroup.js +1 -1
- package/dist/cjs/components/card/CCardHeader.js +1 -1
- package/dist/cjs/components/card/CCardImage.js +1 -1
- package/dist/cjs/components/card/CCardImageOverlay.js +1 -1
- package/dist/cjs/components/card/CCardLink.js +1 -1
- package/dist/cjs/components/card/CCardSubtitle.js +1 -1
- package/dist/cjs/components/card/CCardText.js +1 -1
- package/dist/cjs/components/card/CCardTitle.js +1 -1
- package/dist/cjs/components/carousel/CCarousel.js +1 -1
- package/dist/cjs/components/carousel/CCarouselCaption.js +1 -1
- package/dist/cjs/components/carousel/CCarouselItem.js +1 -1
- package/dist/cjs/components/close-button/CCloseButton.js +1 -1
- package/dist/cjs/components/collapse/CCollapse.js +1 -1
- package/dist/cjs/components/date-picker/CDatePicker.d.ts +1 -1
- package/dist/cjs/components/date-picker/CDatePicker.js +1 -1
- package/dist/cjs/components/date-range-picker/CDateRangePicker.d.ts +2 -2
- package/dist/cjs/components/date-range-picker/CDateRangePicker.js +1 -3
- package/dist/cjs/components/date-range-picker/CDateRangePicker.js.map +1 -1
- package/dist/cjs/components/date-range-picker/utils.d.ts +16 -0
- package/dist/cjs/components/date-range-picker/utils.js +18 -2
- package/dist/cjs/components/date-range-picker/utils.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdown.js +1 -1
- package/dist/cjs/components/dropdown/CDropdownDivider.js +1 -1
- package/dist/cjs/components/dropdown/CDropdownHeader.js +1 -1
- package/dist/cjs/components/dropdown/CDropdownItem.js +1 -1
- package/dist/cjs/components/dropdown/CDropdownItemPlain.js +1 -1
- package/dist/cjs/components/dropdown/CDropdownMenu.js +1 -1
- package/dist/cjs/components/dropdown/CDropdownToggle.js +2 -2
- package/dist/cjs/components/dropdown/CDropdownToggle.js.map +1 -1
- package/dist/cjs/components/element-cover/CElementCover.js +1 -1
- package/dist/cjs/components/footer/CFooter.js +1 -1
- package/dist/cjs/components/form/CForm.js +1 -1
- package/dist/cjs/components/form/CFormCheck.js +1 -1
- package/dist/cjs/components/form/CFormControlValidation.js +1 -1
- package/dist/cjs/components/form/CFormControlWrapper.js +1 -1
- package/dist/cjs/components/form/CFormFeedback.js +1 -1
- package/dist/cjs/components/form/CFormFloating.js +1 -1
- package/dist/cjs/components/form/CFormInput.js +1 -1
- package/dist/cjs/components/form/CFormLabel.js +1 -1
- package/dist/cjs/components/form/CFormRange.js +1 -1
- package/dist/cjs/components/form/CFormSelect.js +1 -1
- package/dist/cjs/components/form/CFormSwitch.js +1 -1
- package/dist/cjs/components/form/CFormText.js +1 -1
- package/dist/cjs/components/form/CFormTextarea.js +1 -1
- package/dist/cjs/components/form/CInputGroup.js +1 -1
- package/dist/cjs/components/form/CInputGroupText.js +1 -1
- package/dist/cjs/components/grid/CCol.js +1 -1
- package/dist/cjs/components/grid/CContainer.js +1 -1
- package/dist/cjs/components/grid/CRow.js +1 -1
- package/dist/cjs/components/header/CHeader.js +1 -1
- package/dist/cjs/components/header/CHeaderBrand.js +1 -1
- package/dist/cjs/components/header/CHeaderDivider.js +1 -1
- package/dist/cjs/components/header/CHeaderNav.js +1 -1
- package/dist/cjs/components/header/CHeaderText.js +1 -1
- package/dist/cjs/components/header/CHeaderToggler.js +1 -1
- package/dist/cjs/components/image/CImage.js +1 -1
- package/dist/cjs/components/link/CLink.js +1 -1
- package/dist/cjs/components/list-group/CListGroup.js +1 -1
- package/dist/cjs/components/list-group/CListGroupItem.js +1 -1
- package/dist/cjs/components/loading-button/CLoadingButton.js +1 -1
- package/dist/cjs/components/modal/CModal.js +1 -2
- package/dist/cjs/components/modal/CModal.js.map +1 -1
- package/dist/cjs/components/modal/CModalBody.js +1 -1
- package/dist/cjs/components/modal/CModalContent.js +1 -1
- package/dist/cjs/components/modal/CModalDialog.js +1 -1
- package/dist/cjs/components/modal/CModalFooter.js +1 -1
- package/dist/cjs/components/modal/CModalHeader.js +1 -1
- package/dist/cjs/components/modal/CModalTitle.js +1 -1
- package/dist/cjs/components/multi-select/CMultiSelect.js +1 -1
- package/dist/cjs/components/multi-select/CMultiSelectNativeSelect.js +1 -1
- package/dist/cjs/components/multi-select/CMultiSelectOptions.js +1 -1
- package/dist/cjs/components/multi-select/utils.js +1 -1
- package/dist/cjs/components/nav/CNav.js +1 -1
- package/dist/cjs/components/nav/CNavGroup.js +2 -2
- package/dist/cjs/components/nav/CNavGroup.js.map +1 -1
- package/dist/cjs/components/nav/CNavGroupItems.js +1 -1
- package/dist/cjs/components/nav/CNavItem.js +1 -1
- package/dist/cjs/components/nav/CNavLink.js +1 -1
- package/dist/cjs/components/nav/CNavTitle.js +1 -1
- package/dist/cjs/components/navbar/CNavbar.js +1 -1
- package/dist/cjs/components/navbar/CNavbarBrand.js +1 -1
- package/dist/cjs/components/navbar/CNavbarNav.js +1 -1
- package/dist/cjs/components/navbar/CNavbarText.js +1 -1
- package/dist/cjs/components/navbar/CNavbarToggler.js +1 -1
- package/dist/cjs/components/offcanvas/COffcanvas.js +1 -1
- package/dist/cjs/components/offcanvas/COffcanvasBody.js +1 -1
- package/dist/cjs/components/offcanvas/COffcanvasHeader.js +1 -1
- package/dist/cjs/components/offcanvas/COffcanvasTitle.js +1 -1
- package/dist/cjs/components/pagination/CPagination.js +1 -1
- package/dist/cjs/components/pagination/CPaginationItem.js +1 -1
- package/dist/cjs/components/picker/CPicker.js +1 -1
- package/dist/cjs/components/placeholder/CPlaceholder.js +1 -1
- package/dist/cjs/components/popover/CPopover.js +1 -1
- package/dist/cjs/components/progress/CProgress.d.ts +1 -1
- package/dist/cjs/components/progress/CProgress.js +1 -1
- package/dist/cjs/components/progress/CProgressBar.js +1 -1
- package/dist/cjs/components/progress/CProgressStacked.js +1 -1
- package/dist/cjs/components/range-slider/CRangeSlider.js +7 -3
- package/dist/cjs/components/range-slider/CRangeSlider.js.map +1 -1
- package/dist/cjs/components/range-slider/utils.js +1 -1
- package/dist/cjs/components/rating/CRating.js +1 -1
- package/dist/cjs/components/sidebar/CSidebar.d.ts +7 -2
- package/dist/cjs/components/sidebar/CSidebar.js +8 -7
- package/dist/cjs/components/sidebar/CSidebar.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebarBrand.js +1 -1
- package/dist/cjs/components/sidebar/CSidebarFooter.js +1 -1
- package/dist/cjs/components/sidebar/CSidebarHeader.js +1 -1
- package/dist/cjs/components/sidebar/CSidebarNav.js +1 -1
- package/dist/cjs/components/sidebar/CSidebarToggler.js +1 -1
- package/dist/cjs/components/smart-pagination/CSmartPagination.d.ts +4 -12
- package/dist/cjs/components/smart-pagination/CSmartPagination.js +1 -1
- package/dist/cjs/components/smart-pagination/CSmartPagination.js.map +1 -1
- package/dist/cjs/components/smart-table/CSmartTable.js +1 -1
- package/dist/cjs/components/smart-table/CSmartTableBody.js +1 -1
- package/dist/cjs/components/smart-table/CSmartTableHead.js +11 -26
- package/dist/cjs/components/smart-table/CSmartTableHead.js.map +1 -1
- package/dist/cjs/components/smart-table/utils.js +1 -1
- package/dist/cjs/components/spinner/CSpinner.js +1 -1
- package/dist/cjs/components/table/CTable.js +1 -1
- package/dist/cjs/components/table/CTableBody.js +1 -1
- package/dist/cjs/components/table/CTableCaption.js +1 -1
- package/dist/cjs/components/table/CTableDataCell.js +1 -1
- package/dist/cjs/components/table/CTableFoot.js +1 -1
- package/dist/cjs/components/table/CTableHead.js +1 -1
- package/dist/cjs/components/table/CTableHeaderCell.js +1 -1
- package/dist/cjs/components/table/CTableResponsiveWrapper.js +1 -1
- package/dist/cjs/components/table/CTableRow.js +1 -1
- package/dist/cjs/components/tabs/CTab.js +1 -1
- package/dist/cjs/components/tabs/CTabContent.js +1 -1
- package/dist/cjs/components/tabs/CTabList.js +1 -1
- package/dist/cjs/components/tabs/CTabPane.js +1 -1
- package/dist/cjs/components/tabs/CTabPanel.js +1 -1
- package/dist/cjs/components/time-picker/CTimePicker.d.ts +1 -1
- package/dist/cjs/components/time-picker/CTimePicker.js +1 -1
- package/dist/cjs/components/time-picker/CTimePicker.js.map +1 -1
- package/dist/cjs/components/time-picker/CTimePickerRollCol.js +1 -1
- package/dist/cjs/components/time-picker/types.d.ts +5 -0
- package/dist/cjs/components/time-picker/utils.d.ts +8 -11
- package/dist/cjs/components/time-picker/utils.js +8 -4
- package/dist/cjs/components/time-picker/utils.js.map +1 -1
- package/dist/cjs/components/toast/CToast.js +1 -1
- package/dist/cjs/components/toast/CToastBody.js +1 -1
- package/dist/cjs/components/toast/CToastClose.js +1 -1
- package/dist/cjs/components/toast/CToastHeader.js +1 -1
- package/dist/cjs/components/toast/CToaster.js +1 -1
- package/dist/cjs/components/tooltip/CTooltip.js +1 -1
- package/dist/cjs/components/virtual-scroller/CVirtualScroller.js +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsA.js +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsB.js +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsC.js +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsD.js +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsE.js +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsF.js +1 -1
- package/dist/cjs/hooks/index.d.ts +2 -1
- package/dist/cjs/hooks/useClipboard.d.ts +12 -0
- package/dist/cjs/hooks/useClipboard.js +54 -0
- package/dist/cjs/hooks/useClipboard.js.map +1 -0
- package/dist/cjs/hooks/useColorModes.js +5 -5
- package/dist/cjs/hooks/useColorModes.js.map +1 -1
- package/dist/cjs/hooks/useDropdownWithPopper.js +1 -1
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/node_modules/classnames/index.js.map +1 -1
- package/dist/cjs/node_modules/react-device-detect/dist/lib.js +1 -1
- package/dist/cjs/node_modules/react-device-detect/dist/lib.js.map +1 -1
- package/dist/cjs/node_modules/tslib/tslib.es6.js +100 -0
- package/dist/cjs/{packages/coreui-react-pro/node_modules → node_modules}/tslib/tslib.es6.js.map +1 -1
- package/dist/cjs/node_modules/ua-parser-js/dist/ua-parser.min.js +2 -2
- package/dist/cjs/node_modules/ua-parser-js/dist/ua-parser.min.js.map +1 -1
- package/dist/cjs/utils/index.d.ts +2 -1
- package/dist/cjs/utils/mergeClassNames.d.ts +2 -0
- package/dist/esm/components/accordion/CAccordion.js +1 -1
- package/dist/esm/components/accordion/CAccordionBody.js +1 -1
- package/dist/esm/components/accordion/CAccordionButton.js +3 -3
- package/dist/esm/components/accordion/CAccordionButton.js.map +1 -1
- package/dist/esm/components/accordion/CAccordionHeader.js +1 -1
- package/dist/esm/components/accordion/CAccordionItem.d.ts +1 -0
- package/dist/esm/components/accordion/CAccordionItem.js +8 -5
- package/dist/esm/components/accordion/CAccordionItem.js.map +1 -1
- package/dist/esm/components/alert/CAlert.js +1 -1
- package/dist/esm/components/alert/CAlertHeading.js +1 -1
- package/dist/esm/components/alert/CAlertLink.js +1 -1
- package/dist/esm/components/avatar/CAvatar.js +1 -1
- package/dist/esm/components/backdrop/CBackdrop.js +1 -1
- package/dist/esm/components/badge/CBadge.js +2 -2
- package/dist/esm/components/badge/CBadge.js.map +1 -1
- package/dist/esm/components/breadcrumb/CBreadcrumb.js +1 -1
- package/dist/esm/components/breadcrumb/CBreadcrumbItem.js +1 -1
- package/dist/esm/components/button/CButton.js +1 -1
- package/dist/esm/components/button-group/CButtonGroup.js +1 -1
- package/dist/esm/components/button-group/CButtonToolbar.js +1 -1
- package/dist/esm/components/calendar/CCalendar.d.ts +58 -44
- package/dist/esm/components/calendar/CCalendar.js +53 -189
- package/dist/esm/components/calendar/CCalendar.js.map +1 -1
- package/dist/esm/components/calendar/CCalendarNavigation.d.ts +21 -0
- package/dist/esm/components/calendar/CCalendarNavigation.js +21 -0
- package/dist/esm/components/calendar/CCalendarNavigation.js.map +1 -0
- package/dist/esm/components/calendar/CCalendarPanel.d.ts +28 -0
- package/dist/esm/components/calendar/CCalendarPanel.js +147 -0
- package/dist/esm/components/calendar/CCalendarPanel.js.map +1 -0
- package/dist/esm/components/calendar/types.d.ts +3 -0
- package/dist/esm/components/calendar/utils.d.ts +176 -18
- package/dist/esm/components/calendar/utils.js +324 -53
- package/dist/esm/components/calendar/utils.js.map +1 -1
- package/dist/esm/components/callout/CCallout.js +1 -1
- package/dist/esm/components/card/CCard.js +1 -1
- package/dist/esm/components/card/CCardBody.js +1 -1
- package/dist/esm/components/card/CCardFooter.js +1 -1
- package/dist/esm/components/card/CCardGroup.js +1 -1
- package/dist/esm/components/card/CCardHeader.js +1 -1
- package/dist/esm/components/card/CCardImage.js +1 -1
- package/dist/esm/components/card/CCardImageOverlay.js +1 -1
- package/dist/esm/components/card/CCardLink.js +1 -1
- package/dist/esm/components/card/CCardSubtitle.js +1 -1
- package/dist/esm/components/card/CCardText.js +1 -1
- package/dist/esm/components/card/CCardTitle.js +1 -1
- package/dist/esm/components/carousel/CCarousel.js +1 -1
- package/dist/esm/components/carousel/CCarouselCaption.js +1 -1
- package/dist/esm/components/carousel/CCarouselItem.js +1 -1
- package/dist/esm/components/close-button/CCloseButton.js +1 -1
- package/dist/esm/components/collapse/CCollapse.js +1 -1
- package/dist/esm/components/date-picker/CDatePicker.d.ts +1 -1
- package/dist/esm/components/date-picker/CDatePicker.js +1 -1
- package/dist/esm/components/date-range-picker/CDateRangePicker.d.ts +2 -2
- package/dist/esm/components/date-range-picker/CDateRangePicker.js +1 -3
- package/dist/esm/components/date-range-picker/CDateRangePicker.js.map +1 -1
- package/dist/esm/components/date-range-picker/utils.d.ts +16 -0
- package/dist/esm/components/date-range-picker/utils.js +18 -2
- package/dist/esm/components/date-range-picker/utils.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdown.js +1 -1
- package/dist/esm/components/dropdown/CDropdownDivider.js +1 -1
- package/dist/esm/components/dropdown/CDropdownHeader.js +1 -1
- package/dist/esm/components/dropdown/CDropdownItem.js +1 -1
- package/dist/esm/components/dropdown/CDropdownItemPlain.js +1 -1
- package/dist/esm/components/dropdown/CDropdownMenu.js +1 -1
- package/dist/esm/components/dropdown/CDropdownToggle.js +2 -2
- package/dist/esm/components/dropdown/CDropdownToggle.js.map +1 -1
- package/dist/esm/components/element-cover/CElementCover.js +1 -1
- package/dist/esm/components/footer/CFooter.js +1 -1
- package/dist/esm/components/form/CForm.js +1 -1
- package/dist/esm/components/form/CFormCheck.js +1 -1
- package/dist/esm/components/form/CFormControlValidation.js +1 -1
- package/dist/esm/components/form/CFormControlWrapper.js +1 -1
- package/dist/esm/components/form/CFormFeedback.js +1 -1
- package/dist/esm/components/form/CFormFloating.js +1 -1
- package/dist/esm/components/form/CFormInput.js +1 -1
- package/dist/esm/components/form/CFormLabel.js +1 -1
- package/dist/esm/components/form/CFormRange.js +1 -1
- package/dist/esm/components/form/CFormSelect.js +1 -1
- package/dist/esm/components/form/CFormSwitch.js +1 -1
- package/dist/esm/components/form/CFormText.js +1 -1
- package/dist/esm/components/form/CFormTextarea.js +1 -1
- package/dist/esm/components/form/CInputGroup.js +1 -1
- package/dist/esm/components/form/CInputGroupText.js +1 -1
- package/dist/esm/components/grid/CCol.js +1 -1
- package/dist/esm/components/grid/CContainer.js +1 -1
- package/dist/esm/components/grid/CRow.js +1 -1
- package/dist/esm/components/header/CHeader.js +1 -1
- package/dist/esm/components/header/CHeaderBrand.js +1 -1
- package/dist/esm/components/header/CHeaderDivider.js +1 -1
- package/dist/esm/components/header/CHeaderNav.js +1 -1
- package/dist/esm/components/header/CHeaderText.js +1 -1
- package/dist/esm/components/header/CHeaderToggler.js +1 -1
- package/dist/esm/components/image/CImage.js +1 -1
- package/dist/esm/components/link/CLink.js +1 -1
- package/dist/esm/components/list-group/CListGroup.js +1 -1
- package/dist/esm/components/list-group/CListGroupItem.js +1 -1
- package/dist/esm/components/loading-button/CLoadingButton.js +1 -1
- package/dist/esm/components/modal/CModal.js +1 -2
- package/dist/esm/components/modal/CModal.js.map +1 -1
- package/dist/esm/components/modal/CModalBody.js +1 -1
- package/dist/esm/components/modal/CModalContent.js +1 -1
- package/dist/esm/components/modal/CModalDialog.js +1 -1
- package/dist/esm/components/modal/CModalFooter.js +1 -1
- package/dist/esm/components/modal/CModalHeader.js +1 -1
- package/dist/esm/components/modal/CModalTitle.js +1 -1
- package/dist/esm/components/multi-select/CMultiSelect.js +1 -1
- package/dist/esm/components/multi-select/CMultiSelectNativeSelect.js +1 -1
- package/dist/esm/components/multi-select/CMultiSelectOptions.js +1 -1
- package/dist/esm/components/multi-select/utils.js +1 -1
- package/dist/esm/components/nav/CNav.js +1 -1
- package/dist/esm/components/nav/CNavGroup.js +2 -2
- package/dist/esm/components/nav/CNavGroup.js.map +1 -1
- package/dist/esm/components/nav/CNavGroupItems.js +1 -1
- package/dist/esm/components/nav/CNavItem.js +1 -1
- package/dist/esm/components/nav/CNavLink.js +1 -1
- package/dist/esm/components/nav/CNavTitle.js +1 -1
- package/dist/esm/components/navbar/CNavbar.js +1 -1
- package/dist/esm/components/navbar/CNavbarBrand.js +1 -1
- package/dist/esm/components/navbar/CNavbarNav.js +1 -1
- package/dist/esm/components/navbar/CNavbarText.js +1 -1
- package/dist/esm/components/navbar/CNavbarToggler.js +1 -1
- package/dist/esm/components/offcanvas/COffcanvas.js +1 -1
- package/dist/esm/components/offcanvas/COffcanvasBody.js +1 -1
- package/dist/esm/components/offcanvas/COffcanvasHeader.js +1 -1
- package/dist/esm/components/offcanvas/COffcanvasTitle.js +1 -1
- package/dist/esm/components/pagination/CPagination.js +1 -1
- package/dist/esm/components/pagination/CPaginationItem.js +1 -1
- package/dist/esm/components/picker/CPicker.js +1 -1
- package/dist/esm/components/placeholder/CPlaceholder.js +1 -1
- package/dist/esm/components/popover/CPopover.js +1 -1
- package/dist/esm/components/progress/CProgress.d.ts +1 -1
- package/dist/esm/components/progress/CProgress.js +1 -1
- package/dist/esm/components/progress/CProgressBar.js +1 -1
- package/dist/esm/components/progress/CProgressStacked.js +1 -1
- package/dist/esm/components/range-slider/CRangeSlider.js +7 -3
- package/dist/esm/components/range-slider/CRangeSlider.js.map +1 -1
- package/dist/esm/components/range-slider/utils.js +1 -1
- package/dist/esm/components/rating/CRating.js +1 -1
- package/dist/esm/components/sidebar/CSidebar.d.ts +7 -2
- package/dist/esm/components/sidebar/CSidebar.js +8 -7
- package/dist/esm/components/sidebar/CSidebar.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebarBrand.js +1 -1
- package/dist/esm/components/sidebar/CSidebarFooter.js +1 -1
- package/dist/esm/components/sidebar/CSidebarHeader.js +1 -1
- package/dist/esm/components/sidebar/CSidebarNav.js +1 -1
- package/dist/esm/components/sidebar/CSidebarToggler.js +1 -1
- package/dist/esm/components/smart-pagination/CSmartPagination.d.ts +4 -12
- package/dist/esm/components/smart-pagination/CSmartPagination.js +1 -1
- package/dist/esm/components/smart-pagination/CSmartPagination.js.map +1 -1
- package/dist/esm/components/smart-table/CSmartTable.js +1 -1
- package/dist/esm/components/smart-table/CSmartTableBody.js +1 -1
- package/dist/esm/components/smart-table/CSmartTableHead.js +12 -27
- package/dist/esm/components/smart-table/CSmartTableHead.js.map +1 -1
- package/dist/esm/components/smart-table/utils.js +1 -1
- package/dist/esm/components/spinner/CSpinner.js +1 -1
- package/dist/esm/components/table/CTable.js +1 -1
- package/dist/esm/components/table/CTableBody.js +1 -1
- package/dist/esm/components/table/CTableCaption.js +1 -1
- package/dist/esm/components/table/CTableDataCell.js +1 -1
- package/dist/esm/components/table/CTableFoot.js +1 -1
- package/dist/esm/components/table/CTableHead.js +1 -1
- package/dist/esm/components/table/CTableHeaderCell.js +1 -1
- package/dist/esm/components/table/CTableResponsiveWrapper.js +1 -1
- package/dist/esm/components/table/CTableRow.js +1 -1
- package/dist/esm/components/tabs/CTab.js +1 -1
- package/dist/esm/components/tabs/CTabContent.js +1 -1
- package/dist/esm/components/tabs/CTabList.js +1 -1
- package/dist/esm/components/tabs/CTabPane.js +1 -1
- package/dist/esm/components/tabs/CTabPanel.js +1 -1
- package/dist/esm/components/time-picker/CTimePicker.d.ts +1 -1
- package/dist/esm/components/time-picker/CTimePicker.js +1 -1
- package/dist/esm/components/time-picker/CTimePicker.js.map +1 -1
- package/dist/esm/components/time-picker/CTimePickerRollCol.js +1 -1
- package/dist/esm/components/time-picker/types.d.ts +5 -0
- package/dist/esm/components/time-picker/utils.d.ts +8 -11
- package/dist/esm/components/time-picker/utils.js +8 -4
- package/dist/esm/components/time-picker/utils.js.map +1 -1
- package/dist/esm/components/toast/CToast.js +1 -1
- package/dist/esm/components/toast/CToastBody.js +1 -1
- package/dist/esm/components/toast/CToastClose.js +1 -1
- package/dist/esm/components/toast/CToastHeader.js +1 -1
- package/dist/esm/components/toast/CToaster.js +1 -1
- package/dist/esm/components/tooltip/CTooltip.js +1 -1
- package/dist/esm/components/virtual-scroller/CVirtualScroller.js +1 -1
- package/dist/esm/components/widgets/CWidgetStatsA.js +1 -1
- package/dist/esm/components/widgets/CWidgetStatsB.js +1 -1
- package/dist/esm/components/widgets/CWidgetStatsC.js +1 -1
- package/dist/esm/components/widgets/CWidgetStatsD.js +1 -1
- package/dist/esm/components/widgets/CWidgetStatsE.js +1 -1
- package/dist/esm/components/widgets/CWidgetStatsF.js +1 -1
- package/dist/esm/hooks/index.d.ts +2 -1
- package/dist/esm/hooks/useClipboard.d.ts +12 -0
- package/dist/esm/hooks/useClipboard.js +52 -0
- package/dist/esm/hooks/useClipboard.js.map +1 -0
- package/dist/esm/hooks/useColorModes.js +5 -5
- package/dist/esm/hooks/useColorModes.js.map +1 -1
- package/dist/esm/hooks/useDropdownWithPopper.js +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/node_modules/classnames/index.js.map +1 -1
- package/dist/esm/node_modules/react-device-detect/dist/lib.js +1 -1
- package/dist/esm/node_modules/react-device-detect/dist/lib.js.map +1 -1
- package/dist/esm/node_modules/tslib/tslib.es6.js +95 -0
- package/dist/esm/{packages/coreui-react-pro/node_modules → node_modules}/tslib/tslib.es6.js.map +1 -1
- package/dist/esm/node_modules/ua-parser-js/dist/ua-parser.min.js +2 -2
- package/dist/esm/node_modules/ua-parser-js/dist/ua-parser.min.js.map +1 -1
- package/dist/esm/utils/index.d.ts +2 -1
- package/dist/esm/utils/mergeClassNames.d.ts +2 -0
- package/package.json +13 -11
- package/src/components/accordion/CAccordionButton.tsx +3 -2
- package/src/components/accordion/CAccordionItem.tsx +8 -3
- package/src/components/accordion/__tests__/__snapshots__/CAccordionButton.spec.tsx.snap +0 -2
- package/src/components/accordion/__tests__/__snapshots__/CAccordionHeader.spec.tsx.snap +0 -2
- package/src/components/badge/CBadge.tsx +1 -1
- package/src/components/calendar/CCalendar.tsx +156 -489
- package/src/components/calendar/CCalendarNavigation.tsx +120 -0
- package/src/components/calendar/CCalendarPanel.tsx +306 -0
- package/src/components/calendar/types.ts +5 -0
- package/src/components/calendar/utils.ts +428 -110
- package/src/components/carousel/__tests__/CCarousel.spec.tsx +1 -2
- package/src/components/date-picker/CDatePicker.tsx +1 -1
- package/src/components/date-range-picker/CDateRangePicker.tsx +2 -4
- package/src/components/date-range-picker/utils.ts +23 -3
- package/src/components/dropdown/CDropdownToggle.tsx +1 -1
- package/src/components/dropdown/__tests__/CDropdown.spec.tsx +43 -19
- package/src/components/modal/CModal.tsx +0 -2
- package/src/components/modal/__tests__/CModal.spec.tsx +33 -25
- package/src/components/nav/CNavGroup.tsx +5 -1
- package/src/components/nav/__tests__/__snapshots__/CNavGroup.spec.tsx.snap +4 -1
- package/src/components/popover/__tests__/CPopover.spec.tsx +1 -1
- package/src/components/popover/__tests__/__snapshots__/CPopover.spec.tsx.snap +2 -3
- package/src/components/progress/CProgress.tsx +1 -1
- package/src/components/range-slider/CRangeSlider.tsx +7 -2
- package/src/components/sidebar/CSidebar.tsx +15 -5
- package/src/components/smart-pagination/CSmartPagination.tsx +4 -12
- package/src/components/smart-table/CSmartTableHead.tsx +7 -34
- package/src/components/time-picker/CTimePicker.tsx +3 -3
- package/src/components/time-picker/types.ts +7 -0
- package/src/components/time-picker/utils.ts +15 -13
- package/src/components/tooltip/__tests__/__snapshots__/CTooltip.spec.tsx.snap +0 -1
- package/src/hooks/index.ts +2 -0
- package/src/hooks/useClipboard.ts +38 -0
- package/src/hooks/useColorModes.ts +5 -5
- package/src/utils/index.ts +2 -0
- package/src/utils/mergeClassNames.ts +25 -0
- package/dist/cjs/packages/coreui-react-pro/node_modules/tslib/tslib.es6.js +0 -60
- package/dist/esm/packages/coreui-react-pro/node_modules/tslib/tslib.es6.js +0 -57
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __rest, __assign } from '../../
|
|
1
|
+
import { __rest, __assign } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import React, { forwardRef } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import classNames from '../../_virtual/index.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __rest, __assign } from '../../
|
|
1
|
+
import { __rest, __assign } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import React, { forwardRef } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import classNames from '../../_virtual/index.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __rest, __assign } from '../../
|
|
1
|
+
import { __rest, __assign } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import React, { forwardRef } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import classNames from '../../_virtual/index.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __rest, __assign } from '../../
|
|
1
|
+
import { __rest, __assign } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import React, { forwardRef } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import classNames from '../../_virtual/index.js';
|
|
@@ -1,179 +1,193 @@
|
|
|
1
1
|
import React, { ReactNode } from 'react';
|
|
2
|
+
import type { DisabledDate, SelectionTypes } from './types';
|
|
2
3
|
export interface CCalendarProps {
|
|
3
4
|
/**
|
|
4
|
-
* A string that provides an accessible label for the button that navigates to the next month in the
|
|
5
|
+
* A string that provides an accessible label for the button that navigates to the next month in the React Calendar component. This label is read by screen readers to describe the action associated with the button. Customize for a more accessible calendar experience.
|
|
5
6
|
*
|
|
7
|
+
* @default 'Next month'
|
|
6
8
|
* @since 5.5.0
|
|
7
9
|
*/
|
|
8
10
|
ariaNavNextMonthLabel?: string;
|
|
9
11
|
/**
|
|
10
|
-
* A string that provides an accessible label for the button that navigates to the next year in the
|
|
12
|
+
* A string that provides an accessible label for the button that navigates to the next year in the React Calendar component. Screen readers utilize this label to inform users of the button's functionality, aiding in a more inclusive application.
|
|
11
13
|
*
|
|
14
|
+
* @default 'Next year'
|
|
12
15
|
* @since 5.5.0
|
|
13
16
|
*/
|
|
14
17
|
ariaNavNextYearLabel?: string;
|
|
15
18
|
/**
|
|
16
|
-
* A string that provides an accessible label for the button that navigates to the previous month in the
|
|
19
|
+
* A string that provides an accessible label for the button that navigates to the previous month in the React Calendar component. This label is announced by screen readers, ensuring clarity around the button's purpose.
|
|
17
20
|
*
|
|
21
|
+
* @default 'Previous month'
|
|
18
22
|
* @since 5.5.0
|
|
19
23
|
*/
|
|
20
24
|
ariaNavPrevMonthLabel?: string;
|
|
21
25
|
/**
|
|
22
|
-
* A string that provides an accessible label for the button that navigates to the previous year in the
|
|
26
|
+
* A string that provides an accessible label for the button that navigates to the previous year in the React Calendar component. Use it to enhance the experience for screen readers and further accessibility.
|
|
23
27
|
*
|
|
28
|
+
* @default 'Previous year'
|
|
24
29
|
* @since 5.5.0
|
|
25
30
|
*/
|
|
26
31
|
ariaNavPrevYearLabel?: string;
|
|
27
32
|
/**
|
|
28
|
-
*
|
|
33
|
+
* Defines the initial date or reference date for the React Calendar component. This date can be either a Date object or a string that can be converted into a valid date.
|
|
29
34
|
*/
|
|
30
35
|
calendarDate?: Date | string | null;
|
|
31
36
|
/**
|
|
32
|
-
*
|
|
37
|
+
* Specifies how many individual calendars should be displayed side by side on desktop devices. Increasing this number allows your users to view multiple months (or years, etc.) simultaneously.
|
|
33
38
|
*/
|
|
34
39
|
calendars?: number;
|
|
35
40
|
/**
|
|
36
|
-
* A string of all
|
|
41
|
+
* A string of all classNames you want to apply to the outermost container of the React Calendar component. Use this to style or theme your calendar.
|
|
37
42
|
*/
|
|
38
43
|
className?: string;
|
|
39
44
|
/**
|
|
40
|
-
*
|
|
45
|
+
* Sets the format for day names. Accepts either a built-in format ('numeric' or '2-digit') or a custom function to return any desired string or number for the day.
|
|
41
46
|
*
|
|
42
47
|
* @default 'numeric'
|
|
43
48
|
* @since 4.3.0
|
|
44
49
|
*/
|
|
45
50
|
dayFormat?: 'numeric' | '2-digit' | ((date: Date) => string | number);
|
|
46
51
|
/**
|
|
47
|
-
*
|
|
52
|
+
* Specifies one or more dates that cannot be selected by the user. This is useful for disabling weekends, holidays, or any dates that you need to restrict within your React Calendar component.
|
|
48
53
|
*/
|
|
49
|
-
disabledDates?:
|
|
54
|
+
disabledDates?: DisabledDate | DisabledDate[];
|
|
50
55
|
/**
|
|
51
|
-
*
|
|
56
|
+
* Defines the initially selected ending date (applicable when using range selection). Accepts both Date objects and valid date strings.
|
|
52
57
|
*/
|
|
53
58
|
endDate?: Date | string | null;
|
|
54
59
|
/**
|
|
55
|
-
* Sets the day of
|
|
56
|
-
* - 0
|
|
57
|
-
* - 1
|
|
58
|
-
* - 2
|
|
59
|
-
* - 3
|
|
60
|
-
* - 4
|
|
61
|
-
* - 5
|
|
62
|
-
* - 6
|
|
60
|
+
* Sets the first day of the week. This can be adjusted for different locales or preferences:
|
|
61
|
+
* - `0` = Sunday
|
|
62
|
+
* - `1` = Monday
|
|
63
|
+
* - `2` = Tuesday
|
|
64
|
+
* - `3` = Wednesday
|
|
65
|
+
* - `4` = Thursday
|
|
66
|
+
* - `5` = Friday
|
|
67
|
+
* - `6` = Saturday
|
|
63
68
|
*
|
|
64
69
|
* @default 1
|
|
65
70
|
*/
|
|
66
71
|
firstDayOfWeek?: number;
|
|
67
72
|
/**
|
|
68
|
-
*
|
|
73
|
+
* Indicates the locale for the React Calendar component. If not explicitly provided, it inherits the locale settings from the browser.
|
|
69
74
|
*
|
|
70
75
|
* @default 'default'
|
|
71
76
|
*/
|
|
72
77
|
locale?: string;
|
|
73
78
|
/**
|
|
74
|
-
*
|
|
79
|
+
* The maximum date that can be selected. Any date beyond this value will be disabled within the calendar. This is often used to restrict future selections.
|
|
75
80
|
*/
|
|
76
81
|
maxDate?: Date | string | null;
|
|
77
82
|
/**
|
|
78
|
-
*
|
|
83
|
+
* The minimum date that can be selected. Any date before this value will be disabled in the calendar. Useful for preventing selection of past dates or creating limited booking windows.
|
|
79
84
|
*/
|
|
80
85
|
minDate?: Date | string | null;
|
|
81
86
|
/**
|
|
82
|
-
*
|
|
87
|
+
* Toggles display of arrow-based navigation (previous/next controls) in the React Calendar component. If set to `false`, you can build custom navigation or handle the navigation programmatically.
|
|
83
88
|
*/
|
|
84
89
|
navigation?: boolean;
|
|
85
90
|
/**
|
|
86
|
-
*
|
|
91
|
+
* Customizes the icon for navigating to the next view (month, year, etc.) depending on the current view. Accepts any valid `ReactNode`, enabling you to display text, images, or icons.
|
|
87
92
|
*/
|
|
88
93
|
navNextIcon?: ReactNode;
|
|
89
94
|
/**
|
|
90
|
-
*
|
|
95
|
+
* Customizes the icon for navigating multiple steps forward (double jump), e.g., skipping multiple months or years at once. Ideal for quick navigation through large date ranges.
|
|
91
96
|
*/
|
|
92
97
|
navNextDoubleIcon?: ReactNode;
|
|
93
98
|
/**
|
|
94
|
-
*
|
|
99
|
+
* Customizes the icon for navigating to the previous view in the calendar. Accepts any valid ReactNode to provide flexible styling or theming.
|
|
95
100
|
*/
|
|
96
101
|
navPrevIcon?: ReactNode;
|
|
97
102
|
/**
|
|
98
|
-
*
|
|
103
|
+
* Customizes the icon for a double jump backward (e.g., jumping multiple months or years at once). This feature simplifies larger date range navigation within your React Calendar component.
|
|
99
104
|
*/
|
|
100
105
|
navPrevDoubleIcon?: ReactNode;
|
|
101
106
|
/**
|
|
102
|
-
*
|
|
107
|
+
* Reorders the year and month navigation, rendering the year selector first. This offers a different layout for users, particularly useful if you want to prioritize quick year changes.
|
|
103
108
|
*
|
|
109
|
+
* @default false
|
|
104
110
|
* @since 4.3.0
|
|
105
111
|
*/
|
|
106
112
|
navYearFirst?: boolean;
|
|
107
113
|
/**
|
|
108
|
-
*
|
|
114
|
+
* Enables range selection mode in your React Calendar component, allowing users to select two dates for a range (start and end). Once enabled, the component will manage state for both dates.
|
|
109
115
|
*/
|
|
110
116
|
range?: boolean;
|
|
111
117
|
/**
|
|
112
|
-
*
|
|
118
|
+
* Sets whether days from adjacent months (shown at the start/end of the current view) are selectable. This only applies if `showAdjacementDays` is set to `true`.
|
|
113
119
|
*
|
|
120
|
+
* @default false
|
|
114
121
|
* @since 4.11.0
|
|
115
122
|
*/
|
|
116
123
|
selectAdjacementDays?: boolean;
|
|
117
124
|
/**
|
|
118
|
-
*
|
|
125
|
+
* Controls whether the calendar should display dates from previous or next months (non-selectable if `selectAdjacementDays` is `false`). This can make the calendar visually continuous.
|
|
119
126
|
*
|
|
127
|
+
* @default true
|
|
120
128
|
* @since 4.11.0
|
|
121
129
|
*/
|
|
122
130
|
showAdjacementDays?: boolean;
|
|
123
131
|
/**
|
|
124
|
-
*
|
|
132
|
+
* Toggles the display of week numbers (ISO 8601) in the calendar's left column. Particularly beneficial for applications where users need to see the week index for scheduling or reporting.
|
|
125
133
|
*
|
|
134
|
+
* @default false
|
|
126
135
|
* @since 5.0.0
|
|
127
136
|
*/
|
|
128
137
|
showWeekNumber?: boolean;
|
|
129
138
|
/**
|
|
130
|
-
*
|
|
139
|
+
* Indicates if the user's current selection is targeting the end date in range selection mode. Primarily used for controlled components where you need to manage which date (start or end) is currently active.
|
|
131
140
|
*/
|
|
132
141
|
selectEndDate?: boolean;
|
|
133
142
|
/**
|
|
134
|
-
*
|
|
143
|
+
* Specifies the selection type for the React Calendar component. Supports:
|
|
144
|
+
* - `day`: Regular day selection (default)
|
|
145
|
+
* - `week`: Select an entire week
|
|
146
|
+
* - `month`: Select an entire month
|
|
147
|
+
* - `year`: Select an entire year
|
|
135
148
|
*
|
|
149
|
+
* @default 'day'
|
|
136
150
|
* @since 5.0.0
|
|
137
151
|
*/
|
|
138
|
-
selectionType?:
|
|
152
|
+
selectionType?: SelectionTypes;
|
|
139
153
|
/**
|
|
140
|
-
*
|
|
154
|
+
* Defines the initially selected starting date. This date can be a Date object or a string convertible into a valid date. Useful when you want to show a pre-selected date.
|
|
141
155
|
*/
|
|
142
156
|
startDate?: Date | string | null;
|
|
143
157
|
/**
|
|
144
|
-
*
|
|
158
|
+
* Sets the format or length of the weekday names displayed in the calendar header. You can use numeric values like 2 (two-letter abbreviations) or built-in string formats like `'long'`, `'narrow'`, and `'short'`, or provide a custom function to fully control how weekdays are displayed.
|
|
145
159
|
*
|
|
146
160
|
* @default 2
|
|
147
161
|
*/
|
|
148
162
|
weekdayFormat?: number | 'long' | 'narrow' | 'short' | ((date: Date) => string | number);
|
|
149
163
|
/**
|
|
150
|
-
*
|
|
164
|
+
* Defines the label that appears above the week numbers column. For example, you might label it `'WK'` or `'Week #'`.
|
|
151
165
|
*
|
|
152
166
|
* @since 5.0.0
|
|
153
167
|
*/
|
|
154
168
|
weekNumbersLabel?: string;
|
|
155
169
|
/**
|
|
156
|
-
* Callback fired when the calendar date
|
|
170
|
+
* Callback fired when the calendar's reference date (i.e., the date indicating which month/year is currently displayed) changes. Receives the new `Date | string` as an argument for further handling.
|
|
157
171
|
*/
|
|
158
172
|
onCalendarDateChange?: (date: Date | string) => void;
|
|
159
173
|
/**
|
|
160
|
-
* Callback fired when the user hovers over
|
|
174
|
+
* Callback fired when the user hovers over a calendar cell. The argument is the date of the cell that the user is currently hovering.
|
|
161
175
|
*/
|
|
162
176
|
onDateHover?: (date: Date | string | null) => void;
|
|
163
177
|
/**
|
|
164
|
-
* Callback
|
|
178
|
+
* Callback triggered when the start date of the selection changes. Useful for updating other parts of your application or performing side effects based on the newly chosen start date.
|
|
165
179
|
*/
|
|
166
180
|
onStartDateChange?: (date: Date | string | null, formatedDate?: string | undefined) => void;
|
|
167
181
|
/**
|
|
168
|
-
* Callback
|
|
182
|
+
* Callback triggered when the end date of the selection changes. Handy for synchronizing the selected date range with external states or components.
|
|
169
183
|
*/
|
|
170
184
|
onEndDateChange?: (date: Date | string | null, formatedDate?: string | undefined) => void;
|
|
171
185
|
/**
|
|
172
|
-
* Callback fired when the selection
|
|
186
|
+
* Callback fired when toggling between selecting the start date and the end date in range selection mode. Receives a boolean indicating if the user is currently selecting the end date.
|
|
173
187
|
*/
|
|
174
188
|
onSelectEndChange?: (value: boolean) => void;
|
|
175
189
|
/**
|
|
176
|
-
* Callback fired when the view
|
|
190
|
+
* Callback fired when the calendar's view changes between days, months, or years. For instance, moving from day view to month view or from month view to year view.
|
|
177
191
|
*/
|
|
178
192
|
onViewChanged?: (view: string) => void;
|
|
179
193
|
}
|
|
@@ -1,164 +1,14 @@
|
|
|
1
|
-
import { __assign } from '../../packages/coreui-react-pro/node_modules/tslib/tslib.es6.js';
|
|
2
1
|
import React, { forwardRef, useRef, useState, useEffect } from 'react';
|
|
3
2
|
import PropTypes from 'prop-types';
|
|
4
3
|
import classNames from '../../_virtual/index.js';
|
|
5
|
-
import {
|
|
6
|
-
import { convertToDateObject, isSameDateAs, getDateBySelectionType,
|
|
4
|
+
import { CCalendarNavigation } from './CCalendarNavigation.js';
|
|
5
|
+
import { convertToDateObject, isSameDateAs, getDateBySelectionType, getSelectableDates, getCalendarDate, isDateDisabled, isDisableDateInRange } from './utils.js';
|
|
6
|
+
import '../../node_modules/tslib/tslib.es6.js';
|
|
7
7
|
import '@popperjs/core';
|
|
8
8
|
import { useForkedRef } from '../../hooks/useForkedRef.js';
|
|
9
9
|
import { useStateWithCallback } from '../../hooks/useStateWithCallback.js';
|
|
10
|
+
import { CCalendarPanel } from './CCalendarPanel.js';
|
|
10
11
|
|
|
11
|
-
var Calendar = function (props) {
|
|
12
|
-
var calendarDate = props.calendarDate, dayFormat = props.dayFormat, disabledDates = props.disabledDates, endDate = props.endDate, firstDayOfWeek = props.firstDayOfWeek, hoverDate = props.hoverDate, locale = props.locale, maxDate = props.maxDate, minDate = props.minDate, onCalendarClick = props.onCalendarClick, onCalendarKeyDown = props.onCalendarKeyDown, onCalendarMouseEnter = props.onCalendarMouseEnter, onCalendarMouseLeave = props.onCalendarMouseLeave, selectAdjacementDays = props.selectAdjacementDays, selectEndDate = props.selectEndDate, selectionType = props.selectionType, showWeekNumber = props.showWeekNumber, showAdjacementDays = props.showAdjacementDays, startDate = props.startDate, view = props.view, weekdayFormat = props.weekdayFormat, weekNumbersLabel = props.weekNumbersLabel;
|
|
13
|
-
var _a = useState([]), listOfMonths = _a[0], setListOfMonths = _a[1];
|
|
14
|
-
useEffect(function () {
|
|
15
|
-
setListOfMonths(createGroupsInArray(getMonthsNames(locale), 4));
|
|
16
|
-
}, []);
|
|
17
|
-
var monthDetails = getMonthDetails(calendarDate.getFullYear(), calendarDate.getMonth(), firstDayOfWeek);
|
|
18
|
-
var listOfYears = createGroupsInArray(getYears(calendarDate.getFullYear()), 4);
|
|
19
|
-
var weekDays = monthDetails[0].days;
|
|
20
|
-
return (React.createElement("table", null,
|
|
21
|
-
view === 'days' && (React.createElement("thead", null,
|
|
22
|
-
React.createElement("tr", null,
|
|
23
|
-
showWeekNumber && (React.createElement("th", { className: "calendar-cell" },
|
|
24
|
-
React.createElement("div", { className: "calendar-header-cell-inner" }, weekNumbersLabel))),
|
|
25
|
-
weekDays.map(function (_a, idx) {
|
|
26
|
-
var date = _a.date;
|
|
27
|
-
return (React.createElement("th", { className: "calendar-cell", abbr: date.toLocaleDateString(locale, { weekday: 'long' }), key: idx },
|
|
28
|
-
React.createElement("div", { className: "calendar-header-cell-inner" }, typeof weekdayFormat === 'function'
|
|
29
|
-
? weekdayFormat(date)
|
|
30
|
-
: typeof weekdayFormat === 'string'
|
|
31
|
-
? date.toLocaleDateString(locale, { weekday: weekdayFormat })
|
|
32
|
-
: date
|
|
33
|
-
.toLocaleDateString(locale, { weekday: 'long' })
|
|
34
|
-
.slice(0, weekdayFormat))));
|
|
35
|
-
})))),
|
|
36
|
-
React.createElement("tbody", null,
|
|
37
|
-
view === 'days' &&
|
|
38
|
-
monthDetails.map(function (week, index) {
|
|
39
|
-
var date = convertToDateObject(week.weekNumber === 0
|
|
40
|
-
? "".concat(calendarDate.getFullYear(), "W53")
|
|
41
|
-
: "".concat(calendarDate.getFullYear(), "W").concat(week.weekNumber), selectionType);
|
|
42
|
-
var isDisabled = isDateDisabled(date, minDate, maxDate, disabledDates);
|
|
43
|
-
var isSelected = isDateSelected(date, startDate, endDate);
|
|
44
|
-
var current = week.days.some(function (day) { return day.month === 'current'; });
|
|
45
|
-
return (React.createElement("tr", __assign({ className: classNames('calendar-row', {
|
|
46
|
-
disabled: isDisabled,
|
|
47
|
-
range: selectionType === 'week' && isDateInRange(date, startDate, endDate),
|
|
48
|
-
'range-hover': selectionType === 'week' && hoverDate && selectEndDate
|
|
49
|
-
? isDateInRange(date, startDate, hoverDate)
|
|
50
|
-
: isDateInRange(date, hoverDate, endDate),
|
|
51
|
-
selected: isSelected,
|
|
52
|
-
}), key: index, tabIndex: selectionType === 'week' && current && !isDisabled ? 0 : -1 }, (isSelected && { 'aria-selected': true }), (selectionType === 'week' &&
|
|
53
|
-
!isDisabled && {
|
|
54
|
-
onBlur: function () { return onCalendarMouseLeave(); },
|
|
55
|
-
onClick: function () { return onCalendarClick(date); },
|
|
56
|
-
onFocus: function () { return onCalendarMouseEnter(date); },
|
|
57
|
-
onKeyDown: function (event) { return onCalendarKeyDown(event, date); },
|
|
58
|
-
onMouseEnter: function () { return onCalendarMouseEnter(date); },
|
|
59
|
-
onMouseLeave: function () { return onCalendarMouseLeave(); },
|
|
60
|
-
})),
|
|
61
|
-
showWeekNumber && (React.createElement("th", { className: "calendar-cell-week-number" }, week.weekNumber === 0 ? 53 : week.weekNumber)),
|
|
62
|
-
week.days.map(function (_a, idx) {
|
|
63
|
-
var _b;
|
|
64
|
-
var date = _a.date, month = _a.month;
|
|
65
|
-
var isDisabled = isDateDisabled(date, minDate, maxDate, disabledDates);
|
|
66
|
-
var isSelected = isDateSelected(date, startDate, endDate);
|
|
67
|
-
return month === 'current' || showAdjacementDays ? (React.createElement("td", __assign({ className: classNames('calendar-cell', __assign(__assign({}, (selectionType === 'day' && {
|
|
68
|
-
clickable: month !== 'current' && selectAdjacementDays,
|
|
69
|
-
disabled: isDisabled,
|
|
70
|
-
'range-hover': month === 'current' &&
|
|
71
|
-
(hoverDate && selectEndDate
|
|
72
|
-
? isDateInRange(date, startDate, hoverDate)
|
|
73
|
-
: isDateInRange(date, hoverDate, endDate)),
|
|
74
|
-
range: month === 'current' && isDateInRange(date, startDate, endDate),
|
|
75
|
-
selected: isSelected,
|
|
76
|
-
})), (_b = {}, _b[month] = true, _b.today = month === 'current' && isToday(date), _b))), key: idx, tabIndex: selectionType === 'day' &&
|
|
77
|
-
(month === 'current' || selectAdjacementDays) &&
|
|
78
|
-
!isDisabled
|
|
79
|
-
? 0
|
|
80
|
-
: -1, title: date.toLocaleDateString(locale) }, (isSelected && { 'aria-selected': true }), (selectionType === 'day' &&
|
|
81
|
-
(month === 'current' || selectAdjacementDays) && {
|
|
82
|
-
onBlur: function () { return onCalendarMouseLeave(); },
|
|
83
|
-
onClick: function () { return onCalendarClick(date); },
|
|
84
|
-
onFocus: function () { return onCalendarMouseEnter(date); },
|
|
85
|
-
onKeyDown: function (event) { return onCalendarKeyDown(event, date); },
|
|
86
|
-
onMouseEnter: function () { return onCalendarMouseEnter(date); },
|
|
87
|
-
onMouseLeave: function () { return onCalendarMouseLeave(); },
|
|
88
|
-
}), (month !== 'current' &&
|
|
89
|
-
!selectAdjacementDays && {
|
|
90
|
-
onMouseEnter: function () { return onCalendarMouseLeave(); },
|
|
91
|
-
})),
|
|
92
|
-
React.createElement("div", { className: "calendar-cell-inner" }, typeof dayFormat === 'function'
|
|
93
|
-
? dayFormat(date)
|
|
94
|
-
: date.toLocaleDateString(locale, { day: dayFormat })))) : (React.createElement("td", { key: idx }));
|
|
95
|
-
})));
|
|
96
|
-
}),
|
|
97
|
-
view === 'months' &&
|
|
98
|
-
listOfMonths.map(function (row, index) {
|
|
99
|
-
return (React.createElement("tr", { key: index }, row.map(function (month, idx) {
|
|
100
|
-
var monthNumber = index * 3 + idx;
|
|
101
|
-
var date = new Date(calendarDate.getFullYear(), monthNumber, 1);
|
|
102
|
-
var isDisabled = isDateDisabled(date, minDate, maxDate, disabledDates);
|
|
103
|
-
var isSelected = isDateSelected(date, startDate, endDate);
|
|
104
|
-
return (React.createElement("td", __assign({ className: classNames('calendar-cell', {
|
|
105
|
-
disabled: isDisabled,
|
|
106
|
-
selected: isSelected,
|
|
107
|
-
'range-hover': selectionType === 'month' &&
|
|
108
|
-
(hoverDate && selectEndDate
|
|
109
|
-
? isDateInRange(date, startDate, hoverDate)
|
|
110
|
-
: isDateInRange(date, hoverDate, endDate)),
|
|
111
|
-
range: isDateInRange(date, startDate, endDate),
|
|
112
|
-
}), key: idx, tabIndex: isDisabled ? -1 : 0 }, (isSelected && { 'aria-selected': true }), (!isDisabled && {
|
|
113
|
-
onBlur: function () { return onCalendarMouseLeave(); },
|
|
114
|
-
onClick: function () { return onCalendarClick(date); },
|
|
115
|
-
onFocus: function () { return onCalendarMouseEnter(date); },
|
|
116
|
-
onKeyDown: function (event) { return onCalendarKeyDown(event, date); },
|
|
117
|
-
onMouseEnter: function () { return onCalendarMouseEnter(date); },
|
|
118
|
-
onMouseLeave: function () { return onCalendarMouseLeave(); },
|
|
119
|
-
})),
|
|
120
|
-
React.createElement("div", { className: "calendar-cell-inner" }, month)));
|
|
121
|
-
})));
|
|
122
|
-
}),
|
|
123
|
-
view === 'years' &&
|
|
124
|
-
listOfYears.map(function (row, index) {
|
|
125
|
-
return (React.createElement("tr", { key: index }, row.map(function (year, idx) {
|
|
126
|
-
var date = new Date(year, 0, 1);
|
|
127
|
-
var isDisabled = isDateDisabled(date, minDate, maxDate, disabledDates);
|
|
128
|
-
var isSelected = isDateSelected(date, startDate, endDate);
|
|
129
|
-
return (React.createElement("td", __assign({ className: classNames('calendar-cell year', {
|
|
130
|
-
disabled: isDisabled,
|
|
131
|
-
selected: isSelected,
|
|
132
|
-
'range-hover': selectionType === 'year' &&
|
|
133
|
-
(hoverDate && selectEndDate
|
|
134
|
-
? isDateInRange(date, startDate, hoverDate)
|
|
135
|
-
: isDateInRange(date, hoverDate, endDate)),
|
|
136
|
-
range: isDateInRange(date, startDate, endDate),
|
|
137
|
-
}), key: idx, tabIndex: isDisabled ? -1 : 0 }, (isSelected && { 'aria-selected': true }), (!isDisabled && {
|
|
138
|
-
onBlur: function () { return onCalendarMouseLeave(); },
|
|
139
|
-
onClick: function () { return onCalendarClick(date); },
|
|
140
|
-
onFocus: function () { return onCalendarMouseEnter(date); },
|
|
141
|
-
onKeyDown: function (event) { return onCalendarKeyDown(event, date); },
|
|
142
|
-
onMouseEnter: function () { return onCalendarMouseEnter(date); },
|
|
143
|
-
onMouseLeave: function () { return onCalendarMouseLeave(); },
|
|
144
|
-
})),
|
|
145
|
-
React.createElement("div", { className: "calendar-cell-inner" }, new Date(year, 0, 1).toLocaleDateString(locale, { year: 'numeric' }))));
|
|
146
|
-
})));
|
|
147
|
-
}))));
|
|
148
|
-
};
|
|
149
|
-
var Navigation = function (props) {
|
|
150
|
-
var ariaNavNextMonthLabel = props.ariaNavNextMonthLabel, ariaNavNextYearLabel = props.ariaNavNextYearLabel, ariaNavPrevMonthLabel = props.ariaNavPrevMonthLabel, ariaNavPrevYearLabel = props.ariaNavPrevYearLabel, calendarDate = props.calendarDate, locale = props.locale, navigation = props.navigation, navNextDoubleIcon = props.navNextDoubleIcon, navNextIcon = props.navNextIcon, navPrevDoubleIcon = props.navPrevDoubleIcon, navPrevIcon = props.navPrevIcon, navYearFirst = props.navYearFirst, onMonthClick = props.onMonthClick, onNavigationClick = props.onNavigationClick, onYearClick = props.onYearClick, view = props.view;
|
|
151
|
-
return (React.createElement("div", { className: "calendar-nav" },
|
|
152
|
-
navigation && (React.createElement("div", { className: "calendar-nav-prev" },
|
|
153
|
-
React.createElement(CButton, { color: "transparent", size: "sm", "aria-label": ariaNavPrevYearLabel, onClick: function () { return onNavigationClick('prev', true); } }, navPrevDoubleIcon !== null && navPrevDoubleIcon !== void 0 ? navPrevDoubleIcon : (React.createElement("span", { className: "calendar-nav-icon calendar-nav-icon-double-prev" }))),
|
|
154
|
-
view === 'days' && (React.createElement(CButton, { color: "transparent", size: "sm", "aria-label": ariaNavPrevMonthLabel, onClick: function () { return onNavigationClick('prev'); } }, navPrevIcon !== null && navPrevIcon !== void 0 ? navPrevIcon : React.createElement("span", { className: "calendar-nav-icon calendar-nav-icon-prev" }))))),
|
|
155
|
-
React.createElement("div", __assign({ className: "calendar-nav-date", "aria-live": "polite" }, (navYearFirst && { style: { display: 'flex', justifyContent: 'center' } })),
|
|
156
|
-
view === 'days' && (React.createElement(CButton, { color: "transparent", size: "sm", onClick: function () { return navigation && onMonthClick(); } }, calendarDate && calendarDate.toLocaleDateString(locale, { month: 'long' }))),
|
|
157
|
-
React.createElement(CButton, __assign({ color: "transparent", size: "sm", onClick: function () { return navigation && onYearClick(); } }, (navYearFirst && { style: { order: '-1' } })), calendarDate && calendarDate.toLocaleDateString(locale, { year: 'numeric' }))),
|
|
158
|
-
navigation && (React.createElement("div", { className: "calendar-nav-next" },
|
|
159
|
-
view === 'days' && (React.createElement(CButton, { color: "transparent", size: "sm", "aria-label": ariaNavNextMonthLabel, onClick: function () { return onNavigationClick('next'); } }, navNextIcon !== null && navNextIcon !== void 0 ? navNextIcon : React.createElement("span", { className: "calendar-nav-icon calendar-nav-icon-next" }))),
|
|
160
|
-
React.createElement(CButton, { color: "transparent", size: "sm", "aria-label": ariaNavNextYearLabel, onClick: function () { return onNavigationClick('next', true); } }, navNextDoubleIcon !== null && navNextDoubleIcon !== void 0 ? navNextDoubleIcon : (React.createElement("span", { className: "calendar-nav-icon calendar-nav-icon-double-next" })))))));
|
|
161
|
-
};
|
|
162
12
|
var CCalendar = forwardRef(function (_a, ref) {
|
|
163
13
|
var _b;
|
|
164
14
|
var _c = _a.ariaNavNextMonthLabel, ariaNavNextMonthLabel = _c === void 0 ? 'Next month' : _c, _d = _a.ariaNavNextYearLabel, ariaNavNextYearLabel = _d === void 0 ? 'Next year' : _d, _e = _a.ariaNavPrevMonthLabel, ariaNavPrevMonthLabel = _e === void 0 ? 'Previous month' : _e, _f = _a.ariaNavPrevYearLabel, ariaNavPrevYearLabel = _f === void 0 ? 'Previous year' : _f, startDate = _a.startDate, endDate = _a.endDate, _g = _a.calendarDate, calendarDate = _g === void 0 ? startDate || endDate || null : _g, _h = _a.calendars, calendars = _h === void 0 ? 1 : _h, className = _a.className, _j = _a.dayFormat, dayFormat = _j === void 0 ? 'numeric' : _j, disabledDates = _a.disabledDates, _k = _a.firstDayOfWeek, firstDayOfWeek = _k === void 0 ? 1 : _k, _l = _a.locale, locale = _l === void 0 ? 'default' : _l, maxDate = _a.maxDate, minDate = _a.minDate, _m = _a.navigation, navigation = _m === void 0 ? true : _m, navNextIcon = _a.navNextIcon, navNextDoubleIcon = _a.navNextDoubleIcon, navPrevIcon = _a.navPrevIcon, navPrevDoubleIcon = _a.navPrevDoubleIcon, navYearFirst = _a.navYearFirst, range = _a.range, _o = _a.selectAdjacementDays, selectAdjacementDays = _o === void 0 ? false : _o, selectEndDate = _a.selectEndDate, _p = _a.selectionType, selectionType = _p === void 0 ? 'day' : _p, _q = _a.showAdjacementDays, showAdjacementDays = _q === void 0 ? true : _q, _r = _a.showWeekNumber, showWeekNumber = _r === void 0 ? false : _r, _s = _a.weekdayFormat, weekdayFormat = _s === void 0 ? 2 : _s, weekNumbersLabel = _a.weekNumbersLabel, onCalendarDateChange = _a.onCalendarDateChange, onDateHover = _a.onDateHover, onEndDateChange = _a.onEndDateChange, onStartDateChange = _a.onStartDateChange, onSelectEndChange = _a.onSelectEndChange, onViewChanged = _a.onViewChanged;
|
|
@@ -167,18 +17,13 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
167
17
|
var isInitialMount = useRef(true);
|
|
168
18
|
var _t = useState(null), _calendarDate = _t[0], setCalendarDate = _t[1];
|
|
169
19
|
useEffect(function () {
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
}
|
|
178
|
-
if (selectionType === 'year') {
|
|
179
|
-
setView('years');
|
|
180
|
-
return;
|
|
181
|
-
}
|
|
20
|
+
var viewMap = {
|
|
21
|
+
day: 'days',
|
|
22
|
+
week: 'days',
|
|
23
|
+
month: 'months',
|
|
24
|
+
year: 'years',
|
|
25
|
+
};
|
|
26
|
+
setView(viewMap[selectionType] || 'days');
|
|
182
27
|
}, [selectionType]);
|
|
183
28
|
useEffect(function () {
|
|
184
29
|
if (calendarDate === null) {
|
|
@@ -220,12 +65,20 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
220
65
|
setSelectEndDate(selectEndDate);
|
|
221
66
|
}, [selectEndDate]);
|
|
222
67
|
useEffect(function () {
|
|
223
|
-
!isInitialMount.current &&
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
onSelectEndChange(_selectEndDate);
|
|
68
|
+
if (!isInitialMount.current && typeof _selectEndDate === 'boolean') {
|
|
69
|
+
onSelectEndChange === null || onSelectEndChange === void 0 ? void 0 : onSelectEndChange(_selectEndDate);
|
|
70
|
+
}
|
|
227
71
|
}, [_selectEndDate]);
|
|
228
72
|
var _0 = useStateWithCallback('days', onViewChanged), view = _0[0], setView = _0[1];
|
|
73
|
+
var _1 = useState(), focusOn = _1[0], setFocusOn = _1[1];
|
|
74
|
+
useEffect(function () {
|
|
75
|
+
var _a;
|
|
76
|
+
if (typeof focusOn === 'number') {
|
|
77
|
+
var list = getSelectableDates(calendarRef.current);
|
|
78
|
+
(_a = list[focusOn]) === null || _a === void 0 ? void 0 : _a.focus();
|
|
79
|
+
setFocusOn(undefined);
|
|
80
|
+
}
|
|
81
|
+
}, [view]);
|
|
229
82
|
useEffect(function () {
|
|
230
83
|
isInitialMount.current = false;
|
|
231
84
|
}, []);
|
|
@@ -237,15 +90,16 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
237
90
|
var year = _calendarDate.getFullYear();
|
|
238
91
|
var month = _calendarDate.getMonth();
|
|
239
92
|
var d = new Date(year, month, 1);
|
|
240
|
-
|
|
241
|
-
|
|
93
|
+
if (years) {
|
|
94
|
+
d.setFullYear(d.getFullYear() + years);
|
|
95
|
+
}
|
|
96
|
+
if (months) {
|
|
97
|
+
d.setMonth(d.getMonth() + months);
|
|
98
|
+
}
|
|
242
99
|
setCalendarDate(d);
|
|
243
|
-
onCalendarDateChange
|
|
100
|
+
onCalendarDateChange === null || onCalendarDateChange === void 0 ? void 0 : onCalendarDateChange(d);
|
|
244
101
|
};
|
|
245
102
|
var handleCalendarClick = function (date, index) {
|
|
246
|
-
if (isDateDisabled(date, _minDate, _maxDate, disabledDates)) {
|
|
247
|
-
return;
|
|
248
|
-
}
|
|
249
103
|
var _date = new Date(date);
|
|
250
104
|
if (view === 'days') {
|
|
251
105
|
setCalendarDate(index ? new Date(_date.setMonth(_date.getMonth() - index)) : _date);
|
|
@@ -260,6 +114,10 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
260
114
|
setView('months');
|
|
261
115
|
return;
|
|
262
116
|
}
|
|
117
|
+
// Allow to change the calendarDate but not startDate or endDate
|
|
118
|
+
if (isDateDisabled(date, _minDate, _maxDate, disabledDates)) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
263
121
|
if (range) {
|
|
264
122
|
if (_selectEndDate) {
|
|
265
123
|
setSelectEndDate(false);
|
|
@@ -295,6 +153,10 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
295
153
|
var handleCalendarKeyDown = function (event, date, index) {
|
|
296
154
|
if (event.code === 'Space' || event.key === 'Enter') {
|
|
297
155
|
event.preventDefault();
|
|
156
|
+
if ((view === 'months' && selectionType !== 'month') ||
|
|
157
|
+
(view === 'years' && selectionType !== 'year')) {
|
|
158
|
+
setFocusOn(0);
|
|
159
|
+
}
|
|
298
160
|
handleCalendarClick(date, index);
|
|
299
161
|
}
|
|
300
162
|
if (event.key === 'ArrowRight' ||
|
|
@@ -302,13 +164,13 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
302
164
|
event.key === 'ArrowUp' ||
|
|
303
165
|
event.key === 'ArrowDown') {
|
|
304
166
|
event.preventDefault();
|
|
305
|
-
if (
|
|
306
|
-
date >=
|
|
167
|
+
if (_maxDate &&
|
|
168
|
+
date >= _maxDate &&
|
|
307
169
|
(event.key === 'ArrowRight' || event.key === 'ArrowDown')) {
|
|
308
170
|
return;
|
|
309
171
|
}
|
|
310
|
-
if (
|
|
311
|
-
date <=
|
|
172
|
+
if (_minDate &&
|
|
173
|
+
date <= _minDate &&
|
|
312
174
|
(event.key === 'ArrowLeft' || event.key === 'ArrowUp')) {
|
|
313
175
|
return;
|
|
314
176
|
}
|
|
@@ -316,7 +178,7 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
316
178
|
if (selectionType === 'week' && element_1.tabIndex === -1) {
|
|
317
179
|
element_1 = element_1.closest('tr[tabindex="0"]');
|
|
318
180
|
}
|
|
319
|
-
var list_1 =
|
|
181
|
+
var list_1 = getSelectableDates(calendarRef.current);
|
|
320
182
|
var index_1 = list_1.indexOf(element_1);
|
|
321
183
|
var first = index_1 === 0;
|
|
322
184
|
var last = index_1 === list_1.length - 1;
|
|
@@ -344,13 +206,13 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
344
206
|
setCalendarPage(event.key === 'ArrowRight' || event.key === 'ArrowDown' ? 10 : -10);
|
|
345
207
|
}
|
|
346
208
|
setTimeout(function () {
|
|
347
|
-
var _a;
|
|
348
|
-
var _list =
|
|
209
|
+
var _a, _b;
|
|
210
|
+
var _list = getSelectableDates((_a = element_1.parentNode) === null || _a === void 0 ? void 0 : _a.parentNode);
|
|
349
211
|
if (_list.length > 0 && event.key === 'ArrowRight') {
|
|
350
212
|
_list[0].focus();
|
|
351
213
|
}
|
|
352
214
|
if (_list.length > 0 && event.key === 'ArrowLeft') {
|
|
353
|
-
_list
|
|
215
|
+
(_b = _list.at(-1)) === null || _b === void 0 ? void 0 : _b.focus();
|
|
354
216
|
}
|
|
355
217
|
if (_list.length > 0 && event.key === 'ArrowDown') {
|
|
356
218
|
_list[gap_1['ArrowDown'] - (list_1.length - index_1)].focus();
|
|
@@ -378,11 +240,13 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
378
240
|
return;
|
|
379
241
|
}
|
|
380
242
|
setHoverDate(date);
|
|
381
|
-
|
|
243
|
+
if (date) {
|
|
244
|
+
onDateHover === null || onDateHover === void 0 ? void 0 : onDateHover(getDateBySelectionType(date, selectionType));
|
|
245
|
+
}
|
|
382
246
|
};
|
|
383
247
|
var handleCalendarMouseLeave = function () {
|
|
384
248
|
setHoverDate(null);
|
|
385
|
-
onDateHover
|
|
249
|
+
onDateHover === null || onDateHover === void 0 ? void 0 : onDateHover(null);
|
|
386
250
|
};
|
|
387
251
|
var handleNavigationOnClick = function (direction, double) {
|
|
388
252
|
if (double === void 0) { double = false; }
|
|
@@ -418,8 +282,8 @@ var CCalendar = forwardRef(function (_a, ref) {
|
|
|
418
282
|
Array.from({ length: calendars }, function (_, index) {
|
|
419
283
|
var calendarDate = getCalendarDate(_calendarDate, index, view);
|
|
420
284
|
return (React.createElement("div", { className: classNames('calendar', view), key: index },
|
|
421
|
-
React.createElement(
|
|
422
|
-
React.createElement(
|
|
285
|
+
React.createElement(CCalendarNavigation, { ariaNavNextMonthLabel: ariaNavNextMonthLabel, ariaNavNextYearLabel: ariaNavNextYearLabel, ariaNavPrevMonthLabel: ariaNavPrevMonthLabel, ariaNavPrevYearLabel: ariaNavPrevYearLabel, calendarDate: calendarDate, locale: locale, navigation: navigation, navNextDoubleIcon: navNextDoubleIcon, navNextIcon: navNextIcon, navPrevDoubleIcon: navPrevDoubleIcon, navPrevIcon: navPrevIcon, navYearFirst: navYearFirst, onMonthClick: function () { return setView('months'); }, onNavigationClick: handleNavigationOnClick, onYearClick: function () { return setView('years'); }, view: view }),
|
|
286
|
+
React.createElement(CCalendarPanel, { calendarDate: calendarDate, dayFormat: dayFormat, disabledDates: disabledDates, endDate: _endDate, firstDayOfWeek: firstDayOfWeek, hoverDate: _hoverDate, locale: locale, maxDate: _maxDate, minDate: _minDate, onCalendarClick: function (date) { return handleCalendarClick(date, index); }, onCalendarKeyDown: function (event, date) { return handleCalendarKeyDown(event, date, index); }, onCalendarMouseEnter: handleCalendarMouseEnter, onCalendarMouseLeave: handleCalendarMouseLeave, order: index, selectAdjacementDays: selectAdjacementDays, selectEndDate: _selectEndDate, selectionType: selectionType, showAdjacementDays: showAdjacementDays, showWeekNumber: showWeekNumber, startDate: _startDate, view: view, weekdayFormat: weekdayFormat, weekNumbersLabel: weekNumbersLabel })));
|
|
423
287
|
})));
|
|
424
288
|
});
|
|
425
289
|
CCalendar.propTypes = {
|
|
@@ -434,7 +298,7 @@ CCalendar.propTypes = {
|
|
|
434
298
|
PropTypes.func,
|
|
435
299
|
PropTypes.oneOf(['2-digit', 'numeric']),
|
|
436
300
|
]),
|
|
437
|
-
disabledDates: PropTypes.array,
|
|
301
|
+
disabledDates: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.array, PropTypes.func]),
|
|
438
302
|
endDate: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.string]),
|
|
439
303
|
firstDayOfWeek: PropTypes.number,
|
|
440
304
|
locale: PropTypes.string,
|