@coreui/react-pro 5.19.0 → 5.21.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.
Files changed (1018) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/components/accordion/CAccordion.js +5 -5
  3. package/dist/cjs/components/accordion/CAccordion.js.map +1 -1
  4. package/dist/cjs/components/accordion/CAccordionBody.js +4 -4
  5. package/dist/cjs/components/accordion/CAccordionBody.js.map +1 -1
  6. package/dist/cjs/components/accordion/CAccordionButton.js +4 -4
  7. package/dist/cjs/components/accordion/CAccordionButton.js.map +1 -1
  8. package/dist/cjs/components/accordion/CAccordionContext.js +1 -1
  9. package/dist/cjs/components/accordion/CAccordionContext.js.map +1 -1
  10. package/dist/cjs/components/accordion/CAccordionHeader.js +3 -3
  11. package/dist/cjs/components/accordion/CAccordionHeader.js.map +1 -1
  12. package/dist/cjs/components/accordion/CAccordionItem.js +11 -11
  13. package/dist/cjs/components/accordion/CAccordionItem.js.map +1 -1
  14. package/dist/cjs/components/accordion/CAccordionItemContext.js +1 -1
  15. package/dist/cjs/components/accordion/CAccordionItemContext.js.map +1 -1
  16. package/dist/cjs/components/alert/CAlert.js +8 -8
  17. package/dist/cjs/components/alert/CAlert.js.map +1 -1
  18. package/dist/cjs/components/alert/CAlertHeading.js +3 -3
  19. package/dist/cjs/components/alert/CAlertHeading.js.map +1 -1
  20. package/dist/cjs/components/alert/CAlertLink.js +3 -3
  21. package/dist/cjs/components/alert/CAlertLink.js.map +1 -1
  22. package/dist/cjs/components/autocomplete/CAutocomplete.js +61 -66
  23. package/dist/cjs/components/autocomplete/CAutocomplete.js.map +1 -1
  24. package/dist/cjs/components/autocomplete/CAutocompleteOptions.js +15 -21
  25. package/dist/cjs/components/autocomplete/CAutocompleteOptions.js.map +1 -1
  26. package/dist/cjs/components/autocomplete/utils.js +23 -32
  27. package/dist/cjs/components/autocomplete/utils.js.map +1 -1
  28. package/dist/cjs/components/avatar/CAvatar.js +8 -9
  29. package/dist/cjs/components/avatar/CAvatar.js.map +1 -1
  30. package/dist/cjs/components/backdrop/CBackdrop.js +6 -6
  31. package/dist/cjs/components/backdrop/CBackdrop.js.map +1 -1
  32. package/dist/cjs/components/badge/CBadge.js +13 -14
  33. package/dist/cjs/components/badge/CBadge.js.map +1 -1
  34. package/dist/cjs/components/breadcrumb/CBreadcrumb.js +3 -3
  35. package/dist/cjs/components/breadcrumb/CBreadcrumb.js.map +1 -1
  36. package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js +3 -3
  37. package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
  38. package/dist/cjs/components/button/CButton.js +8 -9
  39. package/dist/cjs/components/button/CButton.js.map +1 -1
  40. package/dist/cjs/components/button-group/CButtonGroup.js +3 -4
  41. package/dist/cjs/components/button-group/CButtonGroup.js.map +1 -1
  42. package/dist/cjs/components/button-group/CButtonToolbar.js +3 -3
  43. package/dist/cjs/components/button-group/CButtonToolbar.js.map +1 -1
  44. package/dist/cjs/components/calendar/CCalendar.js +69 -73
  45. package/dist/cjs/components/calendar/CCalendar.js.map +1 -1
  46. package/dist/cjs/components/calendar/CCalendarNavigation.js +8 -11
  47. package/dist/cjs/components/calendar/CCalendarNavigation.js.map +1 -1
  48. package/dist/cjs/components/calendar/CCalendarPanel.js +63 -72
  49. package/dist/cjs/components/calendar/CCalendarPanel.js.map +1 -1
  50. package/dist/cjs/components/calendar/utils.d.ts +53 -2
  51. package/dist/cjs/components/calendar/utils.js +544 -127
  52. package/dist/cjs/components/calendar/utils.js.map +1 -1
  53. package/dist/cjs/components/callout/CCallout.js +5 -6
  54. package/dist/cjs/components/callout/CCallout.js.map +1 -1
  55. package/dist/cjs/components/card/CCard.js +7 -8
  56. package/dist/cjs/components/card/CCard.js.map +1 -1
  57. package/dist/cjs/components/card/CCardBody.js +3 -3
  58. package/dist/cjs/components/card/CCardBody.js.map +1 -1
  59. package/dist/cjs/components/card/CCardFooter.js +3 -3
  60. package/dist/cjs/components/card/CCardFooter.js.map +1 -1
  61. package/dist/cjs/components/card/CCardGroup.js +3 -3
  62. package/dist/cjs/components/card/CCardGroup.js.map +1 -1
  63. package/dist/cjs/components/card/CCardHeader.js +3 -3
  64. package/dist/cjs/components/card/CCardHeader.js.map +1 -1
  65. package/dist/cjs/components/card/CCardImage.js +3 -3
  66. package/dist/cjs/components/card/CCardImage.js.map +1 -1
  67. package/dist/cjs/components/card/CCardImageOverlay.js +3 -3
  68. package/dist/cjs/components/card/CCardImageOverlay.js.map +1 -1
  69. package/dist/cjs/components/card/CCardLink.js +3 -3
  70. package/dist/cjs/components/card/CCardLink.js.map +1 -1
  71. package/dist/cjs/components/card/CCardSubtitle.js +3 -3
  72. package/dist/cjs/components/card/CCardSubtitle.js.map +1 -1
  73. package/dist/cjs/components/card/CCardText.js +3 -3
  74. package/dist/cjs/components/card/CCardText.js.map +1 -1
  75. package/dist/cjs/components/card/CCardTitle.js +3 -3
  76. package/dist/cjs/components/card/CCardTitle.js.map +1 -1
  77. package/dist/cjs/components/carousel/CCarousel.js +41 -41
  78. package/dist/cjs/components/carousel/CCarousel.js.map +1 -1
  79. package/dist/cjs/components/carousel/CCarouselCaption.js +3 -3
  80. package/dist/cjs/components/carousel/CCarouselCaption.js.map +1 -1
  81. package/dist/cjs/components/carousel/CCarouselContext.js +1 -1
  82. package/dist/cjs/components/carousel/CCarouselContext.js.map +1 -1
  83. package/dist/cjs/components/carousel/CCarouselItem.js +21 -21
  84. package/dist/cjs/components/carousel/CCarouselItem.js.map +1 -1
  85. package/dist/cjs/components/close-button/CCloseButton.js +3 -3
  86. package/dist/cjs/components/close-button/CCloseButton.js.map +1 -1
  87. package/dist/cjs/components/collapse/CCollapse.js +16 -16
  88. package/dist/cjs/components/collapse/CCollapse.js.map +1 -1
  89. package/dist/cjs/components/conditional-portal/CConditionalPortal.js +4 -5
  90. package/dist/cjs/components/conditional-portal/CConditionalPortal.js.map +1 -1
  91. package/dist/cjs/components/date-picker/CDatePicker.js +4 -4
  92. package/dist/cjs/components/date-picker/CDatePicker.js.map +1 -1
  93. package/dist/cjs/components/date-range-picker/CDateRangePicker.d.ts +6 -0
  94. package/dist/cjs/components/date-range-picker/CDateRangePicker.js +139 -107
  95. package/dist/cjs/components/date-range-picker/CDateRangePicker.js.map +1 -1
  96. package/dist/cjs/components/date-range-picker/utils.d.ts +0 -9
  97. package/dist/cjs/components/date-range-picker/utils.js +2 -40
  98. package/dist/cjs/components/date-range-picker/utils.js.map +1 -1
  99. package/dist/cjs/components/dropdown/CDropdown.d.ts +20 -9
  100. package/dist/cjs/components/dropdown/CDropdown.js +90 -70
  101. package/dist/cjs/components/dropdown/CDropdown.js.map +1 -1
  102. package/dist/cjs/components/dropdown/CDropdownContext.d.ts +1 -1
  103. package/dist/cjs/components/dropdown/CDropdownContext.js +1 -1
  104. package/dist/cjs/components/dropdown/CDropdownContext.js.map +1 -1
  105. package/dist/cjs/components/dropdown/CDropdownDivider.js +3 -3
  106. package/dist/cjs/components/dropdown/CDropdownDivider.js.map +1 -1
  107. package/dist/cjs/components/dropdown/CDropdownHeader.js +3 -3
  108. package/dist/cjs/components/dropdown/CDropdownHeader.js.map +1 -1
  109. package/dist/cjs/components/dropdown/CDropdownItem.js +3 -3
  110. package/dist/cjs/components/dropdown/CDropdownItem.js.map +1 -1
  111. package/dist/cjs/components/dropdown/CDropdownItemPlain.js +3 -3
  112. package/dist/cjs/components/dropdown/CDropdownItemPlain.js.map +1 -1
  113. package/dist/cjs/components/dropdown/CDropdownMenu.js +6 -6
  114. package/dist/cjs/components/dropdown/CDropdownMenu.js.map +1 -1
  115. package/dist/cjs/components/dropdown/CDropdownToggle.d.ts +7 -3
  116. package/dist/cjs/components/dropdown/CDropdownToggle.js +18 -13
  117. package/dist/cjs/components/dropdown/CDropdownToggle.js.map +1 -1
  118. package/dist/cjs/components/dropdown/utils.js +7 -7
  119. package/dist/cjs/components/dropdown/utils.js.map +1 -1
  120. package/dist/cjs/components/element-cover/CElementCover.js +20 -21
  121. package/dist/cjs/components/element-cover/CElementCover.js.map +1 -1
  122. package/dist/cjs/components/focus-trap/CFocusTrap.d.ts +59 -0
  123. package/dist/cjs/components/focus-trap/CFocusTrap.js +162 -0
  124. package/dist/cjs/components/focus-trap/CFocusTrap.js.map +1 -0
  125. package/dist/cjs/components/focus-trap/index.d.ts +2 -0
  126. package/dist/cjs/components/focus-trap/utils.d.ts +36 -0
  127. package/dist/cjs/components/focus-trap/utils.js +113 -0
  128. package/dist/cjs/components/focus-trap/utils.js.map +1 -0
  129. package/dist/cjs/components/footer/CFooter.js +3 -4
  130. package/dist/cjs/components/footer/CFooter.js.map +1 -1
  131. package/dist/cjs/components/form/CForm.js +3 -3
  132. package/dist/cjs/components/form/CForm.js.map +1 -1
  133. package/dist/cjs/components/form/CFormCheck.js +16 -19
  134. package/dist/cjs/components/form/CFormCheck.js.map +1 -1
  135. package/dist/cjs/components/form/CFormControlValidation.js +2 -4
  136. package/dist/cjs/components/form/CFormControlValidation.js.map +1 -1
  137. package/dist/cjs/components/form/CFormControlWrapper.js +3 -5
  138. package/dist/cjs/components/form/CFormControlWrapper.js.map +1 -1
  139. package/dist/cjs/components/form/CFormFeedback.js +6 -7
  140. package/dist/cjs/components/form/CFormFeedback.js.map +1 -1
  141. package/dist/cjs/components/form/CFormFloating.js +3 -3
  142. package/dist/cjs/components/form/CFormFloating.js.map +1 -1
  143. package/dist/cjs/components/form/CFormInput.js +13 -14
  144. package/dist/cjs/components/form/CFormInput.js.map +1 -1
  145. package/dist/cjs/components/form/CFormLabel.js +3 -3
  146. package/dist/cjs/components/form/CFormLabel.js.map +1 -1
  147. package/dist/cjs/components/form/CFormRange.js +3 -3
  148. package/dist/cjs/components/form/CFormRange.js.map +1 -1
  149. package/dist/cjs/components/form/CFormSelect.js +10 -11
  150. package/dist/cjs/components/form/CFormSelect.js.map +1 -1
  151. package/dist/cjs/components/form/CFormSwitch.js +10 -12
  152. package/dist/cjs/components/form/CFormSwitch.js.map +1 -1
  153. package/dist/cjs/components/form/CFormText.js +3 -3
  154. package/dist/cjs/components/form/CFormText.js.map +1 -1
  155. package/dist/cjs/components/form/CFormTextarea.js +4 -4
  156. package/dist/cjs/components/form/CFormTextarea.js.map +1 -1
  157. package/dist/cjs/components/form/CInputGroup.js +5 -6
  158. package/dist/cjs/components/form/CInputGroup.js.map +1 -1
  159. package/dist/cjs/components/form/CInputGroupText.js +3 -3
  160. package/dist/cjs/components/form/CInputGroupText.js.map +1 -1
  161. package/dist/cjs/components/grid/CCol.js +16 -16
  162. package/dist/cjs/components/grid/CCol.js.map +1 -1
  163. package/dist/cjs/components/grid/CContainer.js +8 -8
  164. package/dist/cjs/components/grid/CContainer.js.map +1 -1
  165. package/dist/cjs/components/grid/CRow.js +13 -13
  166. package/dist/cjs/components/grid/CRow.js.map +1 -1
  167. package/dist/cjs/components/header/CHeader.js +3 -4
  168. package/dist/cjs/components/header/CHeader.js.map +1 -1
  169. package/dist/cjs/components/header/CHeaderBrand.js +3 -3
  170. package/dist/cjs/components/header/CHeaderBrand.js.map +1 -1
  171. package/dist/cjs/components/header/CHeaderDivider.js +3 -3
  172. package/dist/cjs/components/header/CHeaderDivider.js.map +1 -1
  173. package/dist/cjs/components/header/CHeaderNav.js +3 -3
  174. package/dist/cjs/components/header/CHeaderNav.js.map +1 -1
  175. package/dist/cjs/components/header/CHeaderText.js +3 -3
  176. package/dist/cjs/components/header/CHeaderText.js.map +1 -1
  177. package/dist/cjs/components/header/CHeaderToggler.js +3 -3
  178. package/dist/cjs/components/header/CHeaderToggler.js.map +1 -1
  179. package/dist/cjs/components/image/CImage.js +9 -10
  180. package/dist/cjs/components/image/CImage.js.map +1 -1
  181. package/dist/cjs/components/index.d.ts +1 -0
  182. package/dist/cjs/components/link/CLink.js +5 -5
  183. package/dist/cjs/components/link/CLink.js.map +1 -1
  184. package/dist/cjs/components/list-group/CListGroup.js +6 -8
  185. package/dist/cjs/components/list-group/CListGroup.js.map +1 -1
  186. package/dist/cjs/components/list-group/CListGroupItem.js +13 -14
  187. package/dist/cjs/components/list-group/CListGroupItem.js.map +1 -1
  188. package/dist/cjs/components/loading-button/CLoadingButton.js +7 -7
  189. package/dist/cjs/components/loading-button/CLoadingButton.js.map +1 -1
  190. package/dist/cjs/components/modal/CModal.js +26 -34
  191. package/dist/cjs/components/modal/CModal.js.map +1 -1
  192. package/dist/cjs/components/modal/CModalBody.js +3 -3
  193. package/dist/cjs/components/modal/CModalBody.js.map +1 -1
  194. package/dist/cjs/components/modal/CModalContent.js +3 -3
  195. package/dist/cjs/components/modal/CModalContent.js.map +1 -1
  196. package/dist/cjs/components/modal/CModalContext.js +1 -1
  197. package/dist/cjs/components/modal/CModalContext.js.map +1 -1
  198. package/dist/cjs/components/modal/CModalDialog.js +9 -11
  199. package/dist/cjs/components/modal/CModalDialog.js.map +1 -1
  200. package/dist/cjs/components/modal/CModalFooter.js +3 -3
  201. package/dist/cjs/components/modal/CModalFooter.js.map +1 -1
  202. package/dist/cjs/components/modal/CModalHeader.js +5 -5
  203. package/dist/cjs/components/modal/CModalHeader.js.map +1 -1
  204. package/dist/cjs/components/modal/CModalTitle.js +3 -3
  205. package/dist/cjs/components/modal/CModalTitle.js.map +1 -1
  206. package/dist/cjs/components/multi-select/CMultiSelect.js +81 -84
  207. package/dist/cjs/components/multi-select/CMultiSelect.js.map +1 -1
  208. package/dist/cjs/components/multi-select/CMultiSelectNativeSelect.js +5 -9
  209. package/dist/cjs/components/multi-select/CMultiSelectNativeSelect.js.map +1 -1
  210. package/dist/cjs/components/multi-select/CMultiSelectOptions.js +12 -18
  211. package/dist/cjs/components/multi-select/CMultiSelectOptions.js.map +1 -1
  212. package/dist/cjs/components/multi-select/CMultiSelectSelection.js +7 -8
  213. package/dist/cjs/components/multi-select/CMultiSelectSelection.js.map +1 -1
  214. package/dist/cjs/components/multi-select/utils.js +27 -37
  215. package/dist/cjs/components/multi-select/utils.js.map +1 -1
  216. package/dist/cjs/components/nav/CNav.js +7 -7
  217. package/dist/cjs/components/nav/CNav.js.map +1 -1
  218. package/dist/cjs/components/nav/CNavGroup.js +24 -24
  219. package/dist/cjs/components/nav/CNavGroup.js.map +1 -1
  220. package/dist/cjs/components/nav/CNavGroupItems.js +3 -3
  221. package/dist/cjs/components/nav/CNavGroupItems.js.map +1 -1
  222. package/dist/cjs/components/nav/CNavItem.js +3 -3
  223. package/dist/cjs/components/nav/CNavItem.js.map +1 -1
  224. package/dist/cjs/components/nav/CNavLink.js +7 -7
  225. package/dist/cjs/components/nav/CNavLink.js.map +1 -1
  226. package/dist/cjs/components/nav/CNavTitle.js +3 -3
  227. package/dist/cjs/components/nav/CNavTitle.js.map +1 -1
  228. package/dist/cjs/components/navbar/CNavbar.js +6 -7
  229. package/dist/cjs/components/navbar/CNavbar.js.map +1 -1
  230. package/dist/cjs/components/navbar/CNavbarBrand.js +4 -4
  231. package/dist/cjs/components/navbar/CNavbarBrand.js.map +1 -1
  232. package/dist/cjs/components/navbar/CNavbarNav.js +3 -3
  233. package/dist/cjs/components/navbar/CNavbarNav.js.map +1 -1
  234. package/dist/cjs/components/navbar/CNavbarText.js +3 -3
  235. package/dist/cjs/components/navbar/CNavbarText.js.map +1 -1
  236. package/dist/cjs/components/navbar/CNavbarToggler.js +3 -3
  237. package/dist/cjs/components/navbar/CNavbarToggler.js.map +1 -1
  238. package/dist/cjs/components/offcanvas/COffcanvas.js +20 -21
  239. package/dist/cjs/components/offcanvas/COffcanvas.js.map +1 -1
  240. package/dist/cjs/components/offcanvas/COffcanvasBody.js +3 -3
  241. package/dist/cjs/components/offcanvas/COffcanvasBody.js.map +1 -1
  242. package/dist/cjs/components/offcanvas/COffcanvasHeader.js +3 -3
  243. package/dist/cjs/components/offcanvas/COffcanvasHeader.js.map +1 -1
  244. package/dist/cjs/components/offcanvas/COffcanvasTitle.js +3 -3
  245. package/dist/cjs/components/offcanvas/COffcanvasTitle.js.map +1 -1
  246. package/dist/cjs/components/pagination/CPagination.js +7 -8
  247. package/dist/cjs/components/pagination/CPagination.js.map +1 -1
  248. package/dist/cjs/components/pagination/CPaginationItem.js +5 -5
  249. package/dist/cjs/components/pagination/CPaginationItem.js.map +1 -1
  250. package/dist/cjs/components/password-input/CPasswordInput.js +17 -20
  251. package/dist/cjs/components/password-input/CPasswordInput.js.map +1 -1
  252. package/dist/cjs/components/picker/CPicker.js +33 -32
  253. package/dist/cjs/components/picker/CPicker.js.map +1 -1
  254. package/dist/cjs/components/placeholder/CPlaceholder.js +13 -14
  255. package/dist/cjs/components/placeholder/CPlaceholder.js.map +1 -1
  256. package/dist/cjs/components/popover/CPopover.js +29 -29
  257. package/dist/cjs/components/popover/CPopover.js.map +1 -1
  258. package/dist/cjs/components/progress/CProgress.js +8 -8
  259. package/dist/cjs/components/progress/CProgress.js.map +1 -1
  260. package/dist/cjs/components/progress/CProgressBar.js +8 -9
  261. package/dist/cjs/components/progress/CProgressBar.js.map +1 -1
  262. package/dist/cjs/components/progress/CProgressStacked.js +3 -3
  263. package/dist/cjs/components/progress/CProgressStacked.js.map +1 -1
  264. package/dist/cjs/components/progress/CProgressStackedContext.js +1 -1
  265. package/dist/cjs/components/progress/CProgressStackedContext.js.map +1 -1
  266. package/dist/cjs/components/range-slider/CRangeSlider.js +49 -49
  267. package/dist/cjs/components/range-slider/CRangeSlider.js.map +1 -1
  268. package/dist/cjs/components/range-slider/utils.js +67 -57
  269. package/dist/cjs/components/range-slider/utils.js.map +1 -1
  270. package/dist/cjs/components/rating/CRating.js +30 -32
  271. package/dist/cjs/components/rating/CRating.js.map +1 -1
  272. package/dist/cjs/components/sidebar/CSidebar.js +34 -37
  273. package/dist/cjs/components/sidebar/CSidebar.js.map +1 -1
  274. package/dist/cjs/components/sidebar/CSidebarBrand.js +3 -3
  275. package/dist/cjs/components/sidebar/CSidebarBrand.js.map +1 -1
  276. package/dist/cjs/components/sidebar/CSidebarFooter.js +3 -3
  277. package/dist/cjs/components/sidebar/CSidebarFooter.js.map +1 -1
  278. package/dist/cjs/components/sidebar/CSidebarHeader.js +3 -3
  279. package/dist/cjs/components/sidebar/CSidebarHeader.js.map +1 -1
  280. package/dist/cjs/components/sidebar/CSidebarNav.js +14 -14
  281. package/dist/cjs/components/sidebar/CSidebarNav.js.map +1 -1
  282. package/dist/cjs/components/sidebar/CSidebarNavContext.js +1 -1
  283. package/dist/cjs/components/sidebar/CSidebarNavContext.js.map +1 -1
  284. package/dist/cjs/components/sidebar/CSidebarToggler.js +3 -3
  285. package/dist/cjs/components/sidebar/CSidebarToggler.js.map +1 -1
  286. package/dist/cjs/components/smart-pagination/CSmartPagination.js +22 -22
  287. package/dist/cjs/components/smart-pagination/CSmartPagination.js.map +1 -1
  288. package/dist/cjs/components/smart-table/CSmartTable.js +85 -96
  289. package/dist/cjs/components/smart-table/CSmartTable.js.map +1 -1
  290. package/dist/cjs/components/smart-table/CSmartTableBody.js +15 -18
  291. package/dist/cjs/components/smart-table/CSmartTableBody.js.map +1 -1
  292. package/dist/cjs/components/smart-table/CSmartTableHead.js +23 -29
  293. package/dist/cjs/components/smart-table/CSmartTableHead.js.map +1 -1
  294. package/dist/cjs/components/smart-table/consts.js +1 -1
  295. package/dist/cjs/components/smart-table/consts.js.map +1 -1
  296. package/dist/cjs/components/smart-table/utils.js +81 -106
  297. package/dist/cjs/components/smart-table/utils.js.map +1 -1
  298. package/dist/cjs/components/spinner/CSpinner.js +6 -7
  299. package/dist/cjs/components/spinner/CSpinner.js.map +1 -1
  300. package/dist/cjs/components/stepper/CStepper.js +58 -57
  301. package/dist/cjs/components/stepper/CStepper.js.map +1 -1
  302. package/dist/cjs/components/table/CTable.js +25 -26
  303. package/dist/cjs/components/table/CTable.js.map +1 -1
  304. package/dist/cjs/components/table/CTableBody.js +5 -6
  305. package/dist/cjs/components/table/CTableBody.js.map +1 -1
  306. package/dist/cjs/components/table/CTableCaption.js +3 -3
  307. package/dist/cjs/components/table/CTableCaption.js.map +1 -1
  308. package/dist/cjs/components/table/CTableDataCell.js +8 -9
  309. package/dist/cjs/components/table/CTableDataCell.js.map +1 -1
  310. package/dist/cjs/components/table/CTableFoot.js +5 -6
  311. package/dist/cjs/components/table/CTableFoot.js.map +1 -1
  312. package/dist/cjs/components/table/CTableHead.js +5 -6
  313. package/dist/cjs/components/table/CTableHead.js.map +1 -1
  314. package/dist/cjs/components/table/CTableHeaderCell.js +5 -6
  315. package/dist/cjs/components/table/CTableHeaderCell.js.map +1 -1
  316. package/dist/cjs/components/table/CTableResponsiveWrapper.js +3 -3
  317. package/dist/cjs/components/table/CTableResponsiveWrapper.js.map +1 -1
  318. package/dist/cjs/components/table/CTableRow.js +7 -8
  319. package/dist/cjs/components/table/CTableRow.js.map +1 -1
  320. package/dist/cjs/components/table/utils.js +9 -13
  321. package/dist/cjs/components/table/utils.js.map +1 -1
  322. package/dist/cjs/components/tabs/CTab.js +6 -6
  323. package/dist/cjs/components/tabs/CTab.js.map +1 -1
  324. package/dist/cjs/components/tabs/CTabContent.js +3 -3
  325. package/dist/cjs/components/tabs/CTabContent.js.map +1 -1
  326. package/dist/cjs/components/tabs/CTabList.js +13 -13
  327. package/dist/cjs/components/tabs/CTabList.js.map +1 -1
  328. package/dist/cjs/components/tabs/CTabPane.js +6 -6
  329. package/dist/cjs/components/tabs/CTabPane.js.map +1 -1
  330. package/dist/cjs/components/tabs/CTabPanel.js +10 -10
  331. package/dist/cjs/components/tabs/CTabPanel.js.map +1 -1
  332. package/dist/cjs/components/tabs/CTabs.js +7 -8
  333. package/dist/cjs/components/tabs/CTabs.js.map +1 -1
  334. package/dist/cjs/components/tabs/CTabsContext.js +1 -1
  335. package/dist/cjs/components/tabs/CTabsContext.js.map +1 -1
  336. package/dist/cjs/components/time-picker/CTimePicker.js +62 -71
  337. package/dist/cjs/components/time-picker/CTimePicker.js.map +1 -1
  338. package/dist/cjs/components/time-picker/CTimePickerRollCol.js +10 -11
  339. package/dist/cjs/components/time-picker/CTimePickerRollCol.js.map +1 -1
  340. package/dist/cjs/components/time-picker/utils.js +36 -53
  341. package/dist/cjs/components/time-picker/utils.js.map +1 -1
  342. package/dist/cjs/components/toast/CToast.js +21 -25
  343. package/dist/cjs/components/toast/CToast.js.map +1 -1
  344. package/dist/cjs/components/toast/CToastBody.js +3 -3
  345. package/dist/cjs/components/toast/CToastBody.js.map +1 -1
  346. package/dist/cjs/components/toast/CToastClose.js +5 -5
  347. package/dist/cjs/components/toast/CToastClose.js.map +1 -1
  348. package/dist/cjs/components/toast/CToastContext.js +1 -1
  349. package/dist/cjs/components/toast/CToastContext.js.map +1 -1
  350. package/dist/cjs/components/toast/CToastHeader.js +3 -3
  351. package/dist/cjs/components/toast/CToastHeader.js.map +1 -1
  352. package/dist/cjs/components/toast/CToaster.js +12 -13
  353. package/dist/cjs/components/toast/CToaster.js.map +1 -1
  354. package/dist/cjs/components/tooltip/CTooltip.js +30 -30
  355. package/dist/cjs/components/tooltip/CTooltip.js.map +1 -1
  356. package/dist/cjs/components/virtual-scroller/CVirtualScroller.js +28 -32
  357. package/dist/cjs/components/virtual-scroller/CVirtualScroller.js.map +1 -1
  358. package/dist/cjs/components/widgets/CWidgetStatsA.js +3 -4
  359. package/dist/cjs/components/widgets/CWidgetStatsA.js.map +1 -1
  360. package/dist/cjs/components/widgets/CWidgetStatsB.js +4 -4
  361. package/dist/cjs/components/widgets/CWidgetStatsB.js.map +1 -1
  362. package/dist/cjs/components/widgets/CWidgetStatsC.js +4 -4
  363. package/dist/cjs/components/widgets/CWidgetStatsC.js.map +1 -1
  364. package/dist/cjs/components/widgets/CWidgetStatsD.js +7 -8
  365. package/dist/cjs/components/widgets/CWidgetStatsD.js.map +1 -1
  366. package/dist/cjs/components/widgets/CWidgetStatsE.js +3 -3
  367. package/dist/cjs/components/widgets/CWidgetStatsE.js.map +1 -1
  368. package/dist/cjs/components/widgets/CWidgetStatsF.js +6 -6
  369. package/dist/cjs/components/widgets/CWidgetStatsF.js.map +1 -1
  370. package/dist/cjs/hooks/useClipboard.js +21 -33
  371. package/dist/cjs/hooks/useClipboard.js.map +1 -1
  372. package/dist/cjs/hooks/useColorModes.js +15 -20
  373. package/dist/cjs/hooks/useColorModes.js.map +1 -1
  374. package/dist/cjs/hooks/useDebounce.js +5 -5
  375. package/dist/cjs/hooks/useDebounce.js.map +1 -1
  376. package/dist/cjs/hooks/useDebouncedCallback.js +5 -9
  377. package/dist/cjs/hooks/useDebouncedCallback.js.map +1 -1
  378. package/dist/cjs/hooks/useDropdownWithPopper.js +22 -23
  379. package/dist/cjs/hooks/useDropdownWithPopper.js.map +1 -1
  380. package/dist/cjs/hooks/useForkedRef.js +6 -10
  381. package/dist/cjs/hooks/useForkedRef.js.map +1 -1
  382. package/dist/cjs/hooks/useIsVisible.js +5 -8
  383. package/dist/cjs/hooks/useIsVisible.js.map +1 -1
  384. package/dist/cjs/hooks/usePopper.js +11 -11
  385. package/dist/cjs/hooks/usePopper.js.map +1 -1
  386. package/dist/cjs/hooks/useStateWithCallback.js +3 -3
  387. package/dist/cjs/hooks/useStateWithCallback.js.map +1 -1
  388. package/dist/cjs/index.js +2 -0
  389. package/dist/cjs/index.js.map +1 -1
  390. package/dist/cjs/node_modules/tslib/tslib.es6.js +0 -51
  391. package/dist/cjs/node_modules/tslib/tslib.es6.js.map +1 -1
  392. package/dist/cjs/props.js +7 -7
  393. package/dist/cjs/props.js.map +1 -1
  394. package/dist/cjs/utils/executeAfterTransition.js +8 -10
  395. package/dist/cjs/utils/executeAfterTransition.js.map +1 -1
  396. package/dist/cjs/utils/getNextActiveElement.js +3 -3
  397. package/dist/cjs/utils/getNextActiveElement.js.map +1 -1
  398. package/dist/cjs/utils/getNextSibling.js +2 -2
  399. package/dist/cjs/utils/getNextSibling.js.map +1 -1
  400. package/dist/cjs/utils/getPreviousSibling.js +2 -2
  401. package/dist/cjs/utils/getPreviousSibling.js.map +1 -1
  402. package/dist/cjs/utils/getRTLPlacement.js +1 -1
  403. package/dist/cjs/utils/getRTLPlacement.js.map +1 -1
  404. package/dist/cjs/utils/getTransitionDurationFromElement.js +4 -4
  405. package/dist/cjs/utils/getTransitionDurationFromElement.js.map +1 -1
  406. package/dist/cjs/utils/isInViewport.js +2 -2
  407. package/dist/cjs/utils/isInViewport.js.map +1 -1
  408. package/dist/cjs/utils/isObjectInArray.js +9 -12
  409. package/dist/cjs/utils/isObjectInArray.js.map +1 -1
  410. package/dist/cjs/utils/isRTL.js +1 -1
  411. package/dist/cjs/utils/isRTL.js.map +1 -1
  412. package/dist/esm/components/accordion/CAccordion.js +6 -6
  413. package/dist/esm/components/accordion/CAccordion.js.map +1 -1
  414. package/dist/esm/components/accordion/CAccordionBody.js +5 -5
  415. package/dist/esm/components/accordion/CAccordionBody.js.map +1 -1
  416. package/dist/esm/components/accordion/CAccordionButton.js +5 -5
  417. package/dist/esm/components/accordion/CAccordionButton.js.map +1 -1
  418. package/dist/esm/components/accordion/CAccordionContext.js +1 -1
  419. package/dist/esm/components/accordion/CAccordionContext.js.map +1 -1
  420. package/dist/esm/components/accordion/CAccordionHeader.js +4 -4
  421. package/dist/esm/components/accordion/CAccordionHeader.js.map +1 -1
  422. package/dist/esm/components/accordion/CAccordionItem.js +12 -12
  423. package/dist/esm/components/accordion/CAccordionItem.js.map +1 -1
  424. package/dist/esm/components/accordion/CAccordionItemContext.js +1 -1
  425. package/dist/esm/components/accordion/CAccordionItemContext.js.map +1 -1
  426. package/dist/esm/components/alert/CAlert.js +9 -9
  427. package/dist/esm/components/alert/CAlert.js.map +1 -1
  428. package/dist/esm/components/alert/CAlertHeading.js +4 -4
  429. package/dist/esm/components/alert/CAlertHeading.js.map +1 -1
  430. package/dist/esm/components/alert/CAlertLink.js +4 -4
  431. package/dist/esm/components/alert/CAlertLink.js.map +1 -1
  432. package/dist/esm/components/autocomplete/CAutocomplete.js +62 -67
  433. package/dist/esm/components/autocomplete/CAutocomplete.js.map +1 -1
  434. package/dist/esm/components/autocomplete/CAutocompleteOptions.js +15 -21
  435. package/dist/esm/components/autocomplete/CAutocompleteOptions.js.map +1 -1
  436. package/dist/esm/components/autocomplete/utils.js +23 -32
  437. package/dist/esm/components/autocomplete/utils.js.map +1 -1
  438. package/dist/esm/components/avatar/CAvatar.js +9 -10
  439. package/dist/esm/components/avatar/CAvatar.js.map +1 -1
  440. package/dist/esm/components/backdrop/CBackdrop.js +7 -7
  441. package/dist/esm/components/backdrop/CBackdrop.js.map +1 -1
  442. package/dist/esm/components/badge/CBadge.js +14 -15
  443. package/dist/esm/components/badge/CBadge.js.map +1 -1
  444. package/dist/esm/components/breadcrumb/CBreadcrumb.js +4 -4
  445. package/dist/esm/components/breadcrumb/CBreadcrumb.js.map +1 -1
  446. package/dist/esm/components/breadcrumb/CBreadcrumbItem.js +4 -4
  447. package/dist/esm/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
  448. package/dist/esm/components/button/CButton.js +9 -10
  449. package/dist/esm/components/button/CButton.js.map +1 -1
  450. package/dist/esm/components/button-group/CButtonGroup.js +4 -5
  451. package/dist/esm/components/button-group/CButtonGroup.js.map +1 -1
  452. package/dist/esm/components/button-group/CButtonToolbar.js +4 -4
  453. package/dist/esm/components/button-group/CButtonToolbar.js.map +1 -1
  454. package/dist/esm/components/calendar/CCalendar.js +69 -73
  455. package/dist/esm/components/calendar/CCalendar.js.map +1 -1
  456. package/dist/esm/components/calendar/CCalendarNavigation.js +8 -11
  457. package/dist/esm/components/calendar/CCalendarNavigation.js.map +1 -1
  458. package/dist/esm/components/calendar/CCalendarPanel.js +63 -72
  459. package/dist/esm/components/calendar/CCalendarPanel.js.map +1 -1
  460. package/dist/esm/components/calendar/utils.d.ts +53 -2
  461. package/dist/esm/components/calendar/utils.js +542 -128
  462. package/dist/esm/components/calendar/utils.js.map +1 -1
  463. package/dist/esm/components/callout/CCallout.js +6 -7
  464. package/dist/esm/components/callout/CCallout.js.map +1 -1
  465. package/dist/esm/components/card/CCard.js +8 -9
  466. package/dist/esm/components/card/CCard.js.map +1 -1
  467. package/dist/esm/components/card/CCardBody.js +4 -4
  468. package/dist/esm/components/card/CCardBody.js.map +1 -1
  469. package/dist/esm/components/card/CCardFooter.js +4 -4
  470. package/dist/esm/components/card/CCardFooter.js.map +1 -1
  471. package/dist/esm/components/card/CCardGroup.js +4 -4
  472. package/dist/esm/components/card/CCardGroup.js.map +1 -1
  473. package/dist/esm/components/card/CCardHeader.js +4 -4
  474. package/dist/esm/components/card/CCardHeader.js.map +1 -1
  475. package/dist/esm/components/card/CCardImage.js +4 -4
  476. package/dist/esm/components/card/CCardImage.js.map +1 -1
  477. package/dist/esm/components/card/CCardImageOverlay.js +4 -4
  478. package/dist/esm/components/card/CCardImageOverlay.js.map +1 -1
  479. package/dist/esm/components/card/CCardLink.js +4 -4
  480. package/dist/esm/components/card/CCardLink.js.map +1 -1
  481. package/dist/esm/components/card/CCardSubtitle.js +4 -4
  482. package/dist/esm/components/card/CCardSubtitle.js.map +1 -1
  483. package/dist/esm/components/card/CCardText.js +4 -4
  484. package/dist/esm/components/card/CCardText.js.map +1 -1
  485. package/dist/esm/components/card/CCardTitle.js +4 -4
  486. package/dist/esm/components/card/CCardTitle.js.map +1 -1
  487. package/dist/esm/components/carousel/CCarousel.js +42 -42
  488. package/dist/esm/components/carousel/CCarousel.js.map +1 -1
  489. package/dist/esm/components/carousel/CCarouselCaption.js +4 -4
  490. package/dist/esm/components/carousel/CCarouselCaption.js.map +1 -1
  491. package/dist/esm/components/carousel/CCarouselContext.js +1 -1
  492. package/dist/esm/components/carousel/CCarouselContext.js.map +1 -1
  493. package/dist/esm/components/carousel/CCarouselItem.js +22 -22
  494. package/dist/esm/components/carousel/CCarouselItem.js.map +1 -1
  495. package/dist/esm/components/close-button/CCloseButton.js +4 -4
  496. package/dist/esm/components/close-button/CCloseButton.js.map +1 -1
  497. package/dist/esm/components/collapse/CCollapse.js +17 -17
  498. package/dist/esm/components/collapse/CCollapse.js.map +1 -1
  499. package/dist/esm/components/conditional-portal/CConditionalPortal.js +4 -5
  500. package/dist/esm/components/conditional-portal/CConditionalPortal.js.map +1 -1
  501. package/dist/esm/components/date-picker/CDatePicker.js +5 -5
  502. package/dist/esm/components/date-picker/CDatePicker.js.map +1 -1
  503. package/dist/esm/components/date-range-picker/CDateRangePicker.d.ts +6 -0
  504. package/dist/esm/components/date-range-picker/CDateRangePicker.js +140 -108
  505. package/dist/esm/components/date-range-picker/CDateRangePicker.js.map +1 -1
  506. package/dist/esm/components/date-range-picker/utils.d.ts +0 -9
  507. package/dist/esm/components/date-range-picker/utils.js +3 -40
  508. package/dist/esm/components/date-range-picker/utils.js.map +1 -1
  509. package/dist/esm/components/dropdown/CDropdown.d.ts +20 -9
  510. package/dist/esm/components/dropdown/CDropdown.js +91 -71
  511. package/dist/esm/components/dropdown/CDropdown.js.map +1 -1
  512. package/dist/esm/components/dropdown/CDropdownContext.d.ts +1 -1
  513. package/dist/esm/components/dropdown/CDropdownContext.js +1 -1
  514. package/dist/esm/components/dropdown/CDropdownContext.js.map +1 -1
  515. package/dist/esm/components/dropdown/CDropdownDivider.js +4 -4
  516. package/dist/esm/components/dropdown/CDropdownDivider.js.map +1 -1
  517. package/dist/esm/components/dropdown/CDropdownHeader.js +4 -4
  518. package/dist/esm/components/dropdown/CDropdownHeader.js.map +1 -1
  519. package/dist/esm/components/dropdown/CDropdownItem.js +4 -4
  520. package/dist/esm/components/dropdown/CDropdownItem.js.map +1 -1
  521. package/dist/esm/components/dropdown/CDropdownItemPlain.js +4 -4
  522. package/dist/esm/components/dropdown/CDropdownItemPlain.js.map +1 -1
  523. package/dist/esm/components/dropdown/CDropdownMenu.js +7 -7
  524. package/dist/esm/components/dropdown/CDropdownMenu.js.map +1 -1
  525. package/dist/esm/components/dropdown/CDropdownToggle.d.ts +7 -3
  526. package/dist/esm/components/dropdown/CDropdownToggle.js +19 -14
  527. package/dist/esm/components/dropdown/CDropdownToggle.js.map +1 -1
  528. package/dist/esm/components/dropdown/utils.js +7 -7
  529. package/dist/esm/components/dropdown/utils.js.map +1 -1
  530. package/dist/esm/components/element-cover/CElementCover.js +21 -22
  531. package/dist/esm/components/element-cover/CElementCover.js.map +1 -1
  532. package/dist/esm/components/focus-trap/CFocusTrap.d.ts +59 -0
  533. package/dist/esm/components/focus-trap/CFocusTrap.js +160 -0
  534. package/dist/esm/components/focus-trap/CFocusTrap.js.map +1 -0
  535. package/dist/esm/components/focus-trap/index.d.ts +2 -0
  536. package/dist/esm/components/focus-trap/utils.d.ts +36 -0
  537. package/dist/esm/components/focus-trap/utils.js +107 -0
  538. package/dist/esm/components/focus-trap/utils.js.map +1 -0
  539. package/dist/esm/components/footer/CFooter.js +4 -5
  540. package/dist/esm/components/footer/CFooter.js.map +1 -1
  541. package/dist/esm/components/form/CForm.js +4 -4
  542. package/dist/esm/components/form/CForm.js.map +1 -1
  543. package/dist/esm/components/form/CFormCheck.js +17 -20
  544. package/dist/esm/components/form/CFormCheck.js.map +1 -1
  545. package/dist/esm/components/form/CFormControlValidation.js +2 -4
  546. package/dist/esm/components/form/CFormControlValidation.js.map +1 -1
  547. package/dist/esm/components/form/CFormControlWrapper.js +3 -5
  548. package/dist/esm/components/form/CFormControlWrapper.js.map +1 -1
  549. package/dist/esm/components/form/CFormFeedback.js +7 -8
  550. package/dist/esm/components/form/CFormFeedback.js.map +1 -1
  551. package/dist/esm/components/form/CFormFloating.js +4 -4
  552. package/dist/esm/components/form/CFormFloating.js.map +1 -1
  553. package/dist/esm/components/form/CFormInput.js +14 -15
  554. package/dist/esm/components/form/CFormInput.js.map +1 -1
  555. package/dist/esm/components/form/CFormLabel.js +4 -4
  556. package/dist/esm/components/form/CFormLabel.js.map +1 -1
  557. package/dist/esm/components/form/CFormRange.js +4 -4
  558. package/dist/esm/components/form/CFormRange.js.map +1 -1
  559. package/dist/esm/components/form/CFormSelect.js +11 -12
  560. package/dist/esm/components/form/CFormSelect.js.map +1 -1
  561. package/dist/esm/components/form/CFormSwitch.js +11 -13
  562. package/dist/esm/components/form/CFormSwitch.js.map +1 -1
  563. package/dist/esm/components/form/CFormText.js +4 -4
  564. package/dist/esm/components/form/CFormText.js.map +1 -1
  565. package/dist/esm/components/form/CFormTextarea.js +5 -5
  566. package/dist/esm/components/form/CFormTextarea.js.map +1 -1
  567. package/dist/esm/components/form/CInputGroup.js +6 -7
  568. package/dist/esm/components/form/CInputGroup.js.map +1 -1
  569. package/dist/esm/components/form/CInputGroupText.js +4 -4
  570. package/dist/esm/components/form/CInputGroupText.js.map +1 -1
  571. package/dist/esm/components/grid/CCol.js +17 -17
  572. package/dist/esm/components/grid/CCol.js.map +1 -1
  573. package/dist/esm/components/grid/CContainer.js +9 -9
  574. package/dist/esm/components/grid/CContainer.js.map +1 -1
  575. package/dist/esm/components/grid/CRow.js +14 -14
  576. package/dist/esm/components/grid/CRow.js.map +1 -1
  577. package/dist/esm/components/header/CHeader.js +4 -5
  578. package/dist/esm/components/header/CHeader.js.map +1 -1
  579. package/dist/esm/components/header/CHeaderBrand.js +4 -4
  580. package/dist/esm/components/header/CHeaderBrand.js.map +1 -1
  581. package/dist/esm/components/header/CHeaderDivider.js +4 -4
  582. package/dist/esm/components/header/CHeaderDivider.js.map +1 -1
  583. package/dist/esm/components/header/CHeaderNav.js +4 -4
  584. package/dist/esm/components/header/CHeaderNav.js.map +1 -1
  585. package/dist/esm/components/header/CHeaderText.js +4 -4
  586. package/dist/esm/components/header/CHeaderText.js.map +1 -1
  587. package/dist/esm/components/header/CHeaderToggler.js +4 -4
  588. package/dist/esm/components/header/CHeaderToggler.js.map +1 -1
  589. package/dist/esm/components/image/CImage.js +10 -11
  590. package/dist/esm/components/image/CImage.js.map +1 -1
  591. package/dist/esm/components/index.d.ts +1 -0
  592. package/dist/esm/components/link/CLink.js +6 -6
  593. package/dist/esm/components/link/CLink.js.map +1 -1
  594. package/dist/esm/components/list-group/CListGroup.js +7 -9
  595. package/dist/esm/components/list-group/CListGroup.js.map +1 -1
  596. package/dist/esm/components/list-group/CListGroupItem.js +14 -15
  597. package/dist/esm/components/list-group/CListGroupItem.js.map +1 -1
  598. package/dist/esm/components/loading-button/CLoadingButton.js +8 -8
  599. package/dist/esm/components/loading-button/CLoadingButton.js.map +1 -1
  600. package/dist/esm/components/modal/CModal.js +27 -35
  601. package/dist/esm/components/modal/CModal.js.map +1 -1
  602. package/dist/esm/components/modal/CModalBody.js +4 -4
  603. package/dist/esm/components/modal/CModalBody.js.map +1 -1
  604. package/dist/esm/components/modal/CModalContent.js +4 -4
  605. package/dist/esm/components/modal/CModalContent.js.map +1 -1
  606. package/dist/esm/components/modal/CModalContext.js +1 -1
  607. package/dist/esm/components/modal/CModalContext.js.map +1 -1
  608. package/dist/esm/components/modal/CModalDialog.js +10 -12
  609. package/dist/esm/components/modal/CModalDialog.js.map +1 -1
  610. package/dist/esm/components/modal/CModalFooter.js +4 -4
  611. package/dist/esm/components/modal/CModalFooter.js.map +1 -1
  612. package/dist/esm/components/modal/CModalHeader.js +6 -6
  613. package/dist/esm/components/modal/CModalHeader.js.map +1 -1
  614. package/dist/esm/components/modal/CModalTitle.js +4 -4
  615. package/dist/esm/components/modal/CModalTitle.js.map +1 -1
  616. package/dist/esm/components/multi-select/CMultiSelect.js +82 -85
  617. package/dist/esm/components/multi-select/CMultiSelect.js.map +1 -1
  618. package/dist/esm/components/multi-select/CMultiSelectNativeSelect.js +6 -10
  619. package/dist/esm/components/multi-select/CMultiSelectNativeSelect.js.map +1 -1
  620. package/dist/esm/components/multi-select/CMultiSelectOptions.js +12 -18
  621. package/dist/esm/components/multi-select/CMultiSelectOptions.js.map +1 -1
  622. package/dist/esm/components/multi-select/CMultiSelectSelection.js +7 -8
  623. package/dist/esm/components/multi-select/CMultiSelectSelection.js.map +1 -1
  624. package/dist/esm/components/multi-select/utils.js +28 -38
  625. package/dist/esm/components/multi-select/utils.js.map +1 -1
  626. package/dist/esm/components/nav/CNav.js +8 -8
  627. package/dist/esm/components/nav/CNav.js.map +1 -1
  628. package/dist/esm/components/nav/CNavGroup.js +25 -25
  629. package/dist/esm/components/nav/CNavGroup.js.map +1 -1
  630. package/dist/esm/components/nav/CNavGroupItems.js +4 -4
  631. package/dist/esm/components/nav/CNavGroupItems.js.map +1 -1
  632. package/dist/esm/components/nav/CNavItem.js +4 -4
  633. package/dist/esm/components/nav/CNavItem.js.map +1 -1
  634. package/dist/esm/components/nav/CNavLink.js +8 -8
  635. package/dist/esm/components/nav/CNavLink.js.map +1 -1
  636. package/dist/esm/components/nav/CNavTitle.js +4 -4
  637. package/dist/esm/components/nav/CNavTitle.js.map +1 -1
  638. package/dist/esm/components/navbar/CNavbar.js +7 -8
  639. package/dist/esm/components/navbar/CNavbar.js.map +1 -1
  640. package/dist/esm/components/navbar/CNavbarBrand.js +5 -5
  641. package/dist/esm/components/navbar/CNavbarBrand.js.map +1 -1
  642. package/dist/esm/components/navbar/CNavbarNav.js +4 -4
  643. package/dist/esm/components/navbar/CNavbarNav.js.map +1 -1
  644. package/dist/esm/components/navbar/CNavbarText.js +4 -4
  645. package/dist/esm/components/navbar/CNavbarText.js.map +1 -1
  646. package/dist/esm/components/navbar/CNavbarToggler.js +4 -4
  647. package/dist/esm/components/navbar/CNavbarToggler.js.map +1 -1
  648. package/dist/esm/components/offcanvas/COffcanvas.js +21 -22
  649. package/dist/esm/components/offcanvas/COffcanvas.js.map +1 -1
  650. package/dist/esm/components/offcanvas/COffcanvasBody.js +4 -4
  651. package/dist/esm/components/offcanvas/COffcanvasBody.js.map +1 -1
  652. package/dist/esm/components/offcanvas/COffcanvasHeader.js +4 -4
  653. package/dist/esm/components/offcanvas/COffcanvasHeader.js.map +1 -1
  654. package/dist/esm/components/offcanvas/COffcanvasTitle.js +4 -4
  655. package/dist/esm/components/offcanvas/COffcanvasTitle.js.map +1 -1
  656. package/dist/esm/components/pagination/CPagination.js +8 -9
  657. package/dist/esm/components/pagination/CPagination.js.map +1 -1
  658. package/dist/esm/components/pagination/CPaginationItem.js +6 -6
  659. package/dist/esm/components/pagination/CPaginationItem.js.map +1 -1
  660. package/dist/esm/components/password-input/CPasswordInput.js +18 -21
  661. package/dist/esm/components/password-input/CPasswordInput.js.map +1 -1
  662. package/dist/esm/components/picker/CPicker.js +33 -32
  663. package/dist/esm/components/picker/CPicker.js.map +1 -1
  664. package/dist/esm/components/placeholder/CPlaceholder.js +14 -15
  665. package/dist/esm/components/placeholder/CPlaceholder.js.map +1 -1
  666. package/dist/esm/components/popover/CPopover.js +30 -30
  667. package/dist/esm/components/popover/CPopover.js.map +1 -1
  668. package/dist/esm/components/progress/CProgress.js +9 -9
  669. package/dist/esm/components/progress/CProgress.js.map +1 -1
  670. package/dist/esm/components/progress/CProgressBar.js +9 -10
  671. package/dist/esm/components/progress/CProgressBar.js.map +1 -1
  672. package/dist/esm/components/progress/CProgressStacked.js +4 -4
  673. package/dist/esm/components/progress/CProgressStacked.js.map +1 -1
  674. package/dist/esm/components/progress/CProgressStackedContext.js +1 -1
  675. package/dist/esm/components/progress/CProgressStackedContext.js.map +1 -1
  676. package/dist/esm/components/range-slider/CRangeSlider.js +50 -50
  677. package/dist/esm/components/range-slider/CRangeSlider.js.map +1 -1
  678. package/dist/esm/components/range-slider/utils.js +67 -57
  679. package/dist/esm/components/range-slider/utils.js.map +1 -1
  680. package/dist/esm/components/rating/CRating.js +31 -33
  681. package/dist/esm/components/rating/CRating.js.map +1 -1
  682. package/dist/esm/components/sidebar/CSidebar.js +35 -38
  683. package/dist/esm/components/sidebar/CSidebar.js.map +1 -1
  684. package/dist/esm/components/sidebar/CSidebarBrand.js +4 -4
  685. package/dist/esm/components/sidebar/CSidebarBrand.js.map +1 -1
  686. package/dist/esm/components/sidebar/CSidebarFooter.js +4 -4
  687. package/dist/esm/components/sidebar/CSidebarFooter.js.map +1 -1
  688. package/dist/esm/components/sidebar/CSidebarHeader.js +4 -4
  689. package/dist/esm/components/sidebar/CSidebarHeader.js.map +1 -1
  690. package/dist/esm/components/sidebar/CSidebarNav.js +15 -15
  691. package/dist/esm/components/sidebar/CSidebarNav.js.map +1 -1
  692. package/dist/esm/components/sidebar/CSidebarNavContext.js +1 -1
  693. package/dist/esm/components/sidebar/CSidebarNavContext.js.map +1 -1
  694. package/dist/esm/components/sidebar/CSidebarToggler.js +4 -4
  695. package/dist/esm/components/sidebar/CSidebarToggler.js.map +1 -1
  696. package/dist/esm/components/smart-pagination/CSmartPagination.js +23 -23
  697. package/dist/esm/components/smart-pagination/CSmartPagination.js.map +1 -1
  698. package/dist/esm/components/smart-table/CSmartTable.js +86 -97
  699. package/dist/esm/components/smart-table/CSmartTable.js.map +1 -1
  700. package/dist/esm/components/smart-table/CSmartTableBody.js +16 -19
  701. package/dist/esm/components/smart-table/CSmartTableBody.js.map +1 -1
  702. package/dist/esm/components/smart-table/CSmartTableHead.js +24 -30
  703. package/dist/esm/components/smart-table/CSmartTableHead.js.map +1 -1
  704. package/dist/esm/components/smart-table/consts.js +1 -1
  705. package/dist/esm/components/smart-table/consts.js.map +1 -1
  706. package/dist/esm/components/smart-table/utils.js +82 -107
  707. package/dist/esm/components/smart-table/utils.js.map +1 -1
  708. package/dist/esm/components/spinner/CSpinner.js +7 -8
  709. package/dist/esm/components/spinner/CSpinner.js.map +1 -1
  710. package/dist/esm/components/stepper/CStepper.js +59 -58
  711. package/dist/esm/components/stepper/CStepper.js.map +1 -1
  712. package/dist/esm/components/table/CTable.js +26 -27
  713. package/dist/esm/components/table/CTable.js.map +1 -1
  714. package/dist/esm/components/table/CTableBody.js +6 -7
  715. package/dist/esm/components/table/CTableBody.js.map +1 -1
  716. package/dist/esm/components/table/CTableCaption.js +4 -4
  717. package/dist/esm/components/table/CTableCaption.js.map +1 -1
  718. package/dist/esm/components/table/CTableDataCell.js +9 -10
  719. package/dist/esm/components/table/CTableDataCell.js.map +1 -1
  720. package/dist/esm/components/table/CTableFoot.js +6 -7
  721. package/dist/esm/components/table/CTableFoot.js.map +1 -1
  722. package/dist/esm/components/table/CTableHead.js +6 -7
  723. package/dist/esm/components/table/CTableHead.js.map +1 -1
  724. package/dist/esm/components/table/CTableHeaderCell.js +6 -7
  725. package/dist/esm/components/table/CTableHeaderCell.js.map +1 -1
  726. package/dist/esm/components/table/CTableResponsiveWrapper.js +4 -4
  727. package/dist/esm/components/table/CTableResponsiveWrapper.js.map +1 -1
  728. package/dist/esm/components/table/CTableRow.js +8 -9
  729. package/dist/esm/components/table/CTableRow.js.map +1 -1
  730. package/dist/esm/components/table/utils.js +9 -13
  731. package/dist/esm/components/table/utils.js.map +1 -1
  732. package/dist/esm/components/tabs/CTab.js +7 -7
  733. package/dist/esm/components/tabs/CTab.js.map +1 -1
  734. package/dist/esm/components/tabs/CTabContent.js +4 -4
  735. package/dist/esm/components/tabs/CTabContent.js.map +1 -1
  736. package/dist/esm/components/tabs/CTabList.js +14 -14
  737. package/dist/esm/components/tabs/CTabList.js.map +1 -1
  738. package/dist/esm/components/tabs/CTabPane.js +7 -7
  739. package/dist/esm/components/tabs/CTabPane.js.map +1 -1
  740. package/dist/esm/components/tabs/CTabPanel.js +11 -11
  741. package/dist/esm/components/tabs/CTabPanel.js.map +1 -1
  742. package/dist/esm/components/tabs/CTabs.js +7 -8
  743. package/dist/esm/components/tabs/CTabs.js.map +1 -1
  744. package/dist/esm/components/tabs/CTabsContext.js +1 -1
  745. package/dist/esm/components/tabs/CTabsContext.js.map +1 -1
  746. package/dist/esm/components/time-picker/CTimePicker.js +63 -72
  747. package/dist/esm/components/time-picker/CTimePicker.js.map +1 -1
  748. package/dist/esm/components/time-picker/CTimePickerRollCol.js +10 -11
  749. package/dist/esm/components/time-picker/CTimePickerRollCol.js.map +1 -1
  750. package/dist/esm/components/time-picker/utils.js +36 -53
  751. package/dist/esm/components/time-picker/utils.js.map +1 -1
  752. package/dist/esm/components/toast/CToast.js +22 -26
  753. package/dist/esm/components/toast/CToast.js.map +1 -1
  754. package/dist/esm/components/toast/CToastBody.js +4 -4
  755. package/dist/esm/components/toast/CToastBody.js.map +1 -1
  756. package/dist/esm/components/toast/CToastClose.js +6 -6
  757. package/dist/esm/components/toast/CToastClose.js.map +1 -1
  758. package/dist/esm/components/toast/CToastContext.js +1 -1
  759. package/dist/esm/components/toast/CToastContext.js.map +1 -1
  760. package/dist/esm/components/toast/CToastHeader.js +4 -4
  761. package/dist/esm/components/toast/CToastHeader.js.map +1 -1
  762. package/dist/esm/components/toast/CToaster.js +13 -14
  763. package/dist/esm/components/toast/CToaster.js.map +1 -1
  764. package/dist/esm/components/tooltip/CTooltip.js +31 -31
  765. package/dist/esm/components/tooltip/CTooltip.js.map +1 -1
  766. package/dist/esm/components/virtual-scroller/CVirtualScroller.js +29 -33
  767. package/dist/esm/components/virtual-scroller/CVirtualScroller.js.map +1 -1
  768. package/dist/esm/components/widgets/CWidgetStatsA.js +4 -5
  769. package/dist/esm/components/widgets/CWidgetStatsA.js.map +1 -1
  770. package/dist/esm/components/widgets/CWidgetStatsB.js +5 -5
  771. package/dist/esm/components/widgets/CWidgetStatsB.js.map +1 -1
  772. package/dist/esm/components/widgets/CWidgetStatsC.js +5 -5
  773. package/dist/esm/components/widgets/CWidgetStatsC.js.map +1 -1
  774. package/dist/esm/components/widgets/CWidgetStatsD.js +8 -9
  775. package/dist/esm/components/widgets/CWidgetStatsD.js.map +1 -1
  776. package/dist/esm/components/widgets/CWidgetStatsE.js +4 -4
  777. package/dist/esm/components/widgets/CWidgetStatsE.js.map +1 -1
  778. package/dist/esm/components/widgets/CWidgetStatsF.js +7 -7
  779. package/dist/esm/components/widgets/CWidgetStatsF.js.map +1 -1
  780. package/dist/esm/hooks/useClipboard.js +22 -34
  781. package/dist/esm/hooks/useClipboard.js.map +1 -1
  782. package/dist/esm/hooks/useColorModes.js +15 -20
  783. package/dist/esm/hooks/useColorModes.js.map +1 -1
  784. package/dist/esm/hooks/useDebounce.js +5 -5
  785. package/dist/esm/hooks/useDebounce.js.map +1 -1
  786. package/dist/esm/hooks/useDebouncedCallback.js +5 -9
  787. package/dist/esm/hooks/useDebouncedCallback.js.map +1 -1
  788. package/dist/esm/hooks/useDropdownWithPopper.js +22 -23
  789. package/dist/esm/hooks/useDropdownWithPopper.js.map +1 -1
  790. package/dist/esm/hooks/useForkedRef.js +6 -10
  791. package/dist/esm/hooks/useForkedRef.js.map +1 -1
  792. package/dist/esm/hooks/useIsVisible.js +5 -8
  793. package/dist/esm/hooks/useIsVisible.js.map +1 -1
  794. package/dist/esm/hooks/usePopper.js +11 -11
  795. package/dist/esm/hooks/usePopper.js.map +1 -1
  796. package/dist/esm/hooks/useStateWithCallback.js +3 -3
  797. package/dist/esm/hooks/useStateWithCallback.js.map +1 -1
  798. package/dist/esm/index.js +1 -0
  799. package/dist/esm/index.js.map +1 -1
  800. package/dist/esm/node_modules/tslib/tslib.es6.js +1 -50
  801. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -1
  802. package/dist/esm/props.js +7 -7
  803. package/dist/esm/props.js.map +1 -1
  804. package/dist/esm/utils/executeAfterTransition.js +8 -10
  805. package/dist/esm/utils/executeAfterTransition.js.map +1 -1
  806. package/dist/esm/utils/getNextActiveElement.js +3 -3
  807. package/dist/esm/utils/getNextActiveElement.js.map +1 -1
  808. package/dist/esm/utils/getNextSibling.js +2 -2
  809. package/dist/esm/utils/getNextSibling.js.map +1 -1
  810. package/dist/esm/utils/getPreviousSibling.js +2 -2
  811. package/dist/esm/utils/getPreviousSibling.js.map +1 -1
  812. package/dist/esm/utils/getRTLPlacement.js +1 -1
  813. package/dist/esm/utils/getRTLPlacement.js.map +1 -1
  814. package/dist/esm/utils/getTransitionDurationFromElement.js +4 -4
  815. package/dist/esm/utils/getTransitionDurationFromElement.js.map +1 -1
  816. package/dist/esm/utils/isInViewport.js +2 -2
  817. package/dist/esm/utils/isInViewport.js.map +1 -1
  818. package/dist/esm/utils/isObjectInArray.js +9 -12
  819. package/dist/esm/utils/isObjectInArray.js.map +1 -1
  820. package/dist/esm/utils/isRTL.js +1 -1
  821. package/dist/esm/utils/isRTL.js.map +1 -1
  822. package/package.json +7 -7
  823. package/src/components/accordion/CAccordion.tsx +1 -1
  824. package/src/components/accordion/CAccordionHeader.tsx +1 -1
  825. package/src/components/alert/CAlert.tsx +3 -3
  826. package/src/components/alert/CAlertHeading.tsx +1 -1
  827. package/src/components/alert/CAlertLink.tsx +1 -1
  828. package/src/components/alert/__tests__/CAlertHeading.spec.tsx +1 -1
  829. package/src/components/alert/__tests__/CAlertLink.spec.tsx +1 -1
  830. package/src/components/avatar/CAvatar.tsx +2 -2
  831. package/src/components/avatar/__tests__/CAvatar.spec.tsx +2 -2
  832. package/src/components/backdrop/CBackdrop.tsx +1 -1
  833. package/src/components/backdrop/__tests__/CBackdrop.spec.tsx +1 -1
  834. package/src/components/badge/CBadge.tsx +3 -3
  835. package/src/components/badge/__tests__/CBadge.spec.tsx +1 -1
  836. package/src/components/breadcrumb/CBreadcrumb.tsx +1 -1
  837. package/src/components/breadcrumb/CBreadcrumbItem.tsx +2 -2
  838. package/src/components/breadcrumb/__tests__/CBreadcrumb.spec.tsx +1 -1
  839. package/src/components/breadcrumb/__tests__/CBreadcrumbItem.spec.tsx +1 -1
  840. package/src/components/button/__tests__/CButton.spec.tsx +2 -2
  841. package/src/components/button-group/CButtonGroup.tsx +2 -2
  842. package/src/components/button-group/CButtonToolbar.tsx +1 -1
  843. package/src/components/button-group/__tests__/CButtonGroup.spec.tsx +2 -2
  844. package/src/components/button-group/__tests__/CButtonToolbar.spec.tsx +1 -1
  845. package/src/components/calendar/CCalendarNavigation.tsx +17 -23
  846. package/src/components/calendar/CCalendarPanel.tsx +14 -12
  847. package/src/components/calendar/__tests__/CCalendar.accessibility.spec.tsx +595 -0
  848. package/src/components/calendar/__tests__/CCalendar.comprehensive.spec.tsx +402 -0
  849. package/src/components/calendar/__tests__/CCalendar.edge-cases.spec.tsx +416 -0
  850. package/src/components/calendar/__tests__/CCalendar.interactions.spec.tsx +593 -0
  851. package/src/components/calendar/__tests__/CCalendar.simple.spec.tsx +81 -0
  852. package/src/components/calendar/__tests__/CCalendar.spec.tsx +123 -5
  853. package/src/components/calendar/__tests__/README.md +149 -0
  854. package/src/components/calendar/__tests__/test-setup.ts +19 -0
  855. package/src/components/calendar/__tests__/timezone-verification.spec.tsx +62 -0
  856. package/src/components/calendar/__tests__/utils.simple.spec.tsx +80 -0
  857. package/src/components/calendar/__tests__/utils.spec.tsx +402 -0
  858. package/src/components/calendar/utils.ts +595 -47
  859. package/src/components/callout/CCallout.tsx +2 -2
  860. package/src/components/callout/__tests__/CCallout.spec.tsx +1 -1
  861. package/src/components/card/CCard.tsx +2 -2
  862. package/src/components/card/CCardBody.tsx +1 -1
  863. package/src/components/card/CCardFooter.tsx +1 -1
  864. package/src/components/card/CCardGroup.tsx +1 -1
  865. package/src/components/card/CCardImageOverlay.tsx +1 -1
  866. package/src/components/card/CCardLink.tsx +1 -1
  867. package/src/components/card/CCardSubtitle.tsx +1 -1
  868. package/src/components/card/__tests__/CCard.spec.tsx +1 -1
  869. package/src/components/card/__tests__/CCardGroup.spec.tsx +1 -1
  870. package/src/components/card/__tests__/CCardHeader.spec.tsx +1 -1
  871. package/src/components/card/__tests__/CCardLink.spec.tsx +1 -1
  872. package/src/components/card/__tests__/CCardSubtitle.spec.tsx +1 -1
  873. package/src/components/card/__tests__/CCardText.spec.tsx +1 -1
  874. package/src/components/card/__tests__/CCardTitle.spec.tsx +1 -1
  875. package/src/components/carousel/__tests__/CCarousel.spec.tsx +3 -3
  876. package/src/components/close-button/CCloseButton.tsx +2 -2
  877. package/src/components/collapse/CCollapse.tsx +1 -1
  878. package/src/components/date-range-picker/CDateRangePicker.tsx +121 -63
  879. package/src/components/date-range-picker/utils.ts +0 -58
  880. package/src/components/dropdown/CDropdown.tsx +107 -65
  881. package/src/components/dropdown/CDropdownContext.ts +1 -1
  882. package/src/components/dropdown/CDropdownToggle.tsx +13 -3
  883. package/src/components/dropdown/__tests__/CDropdown.spec.tsx +3 -3
  884. package/src/components/dropdown/__tests__/CDropdownHeader.spec.tsx +1 -1
  885. package/src/components/dropdown/__tests__/CDropdownItem.spec.tsx +1 -1
  886. package/src/components/dropdown/__tests__/CDropdownItemPlain.spec.tsx +1 -1
  887. package/src/components/dropdown/__tests__/CDropdownMenu.spec.tsx +1 -1
  888. package/src/components/dropdown/__tests__/CDropdownToggle.spec.tsx +1 -1
  889. package/src/components/dropdown/utils.ts +2 -2
  890. package/src/components/focus-trap/CFocusTrap.tsx +254 -0
  891. package/src/components/focus-trap/__tests__/CFocusTrap.spec.tsx +232 -0
  892. package/src/components/focus-trap/__tests__/__snapshots__/CFocusTrap.spec.tsx.snap +21 -0
  893. package/src/components/focus-trap/index.ts +3 -0
  894. package/src/components/focus-trap/utils.ts +121 -0
  895. package/src/components/footer/CFooter.tsx +1 -1
  896. package/src/components/footer/__tests__/CFooter.spec.tsx +1 -1
  897. package/src/components/form/CForm.tsx +1 -1
  898. package/src/components/form/CFormCheck.tsx +5 -5
  899. package/src/components/form/CFormFeedback.tsx +2 -2
  900. package/src/components/form/CFormFloating.tsx +1 -1
  901. package/src/components/form/CFormInput.tsx +4 -4
  902. package/src/components/form/CFormLabel.tsx +1 -1
  903. package/src/components/form/CFormRange.tsx +1 -1
  904. package/src/components/form/CFormSelect.tsx +3 -3
  905. package/src/components/form/CFormSwitch.tsx +2 -2
  906. package/src/components/form/CFormTextarea.tsx +3 -3
  907. package/src/components/form/CInputGroup.tsx +2 -2
  908. package/src/components/form/CInputGroupText.tsx +1 -1
  909. package/src/components/form/__tests__/CForm.spec.tsx +2 -2
  910. package/src/components/form/__tests__/CFormCheck.spec.tsx +2 -2
  911. package/src/components/form/__tests__/CFormControl.spec.tsx +1 -1
  912. package/src/components/form/__tests__/CFormFeedback.spec.tsx +2 -2
  913. package/src/components/form/__tests__/CFormInput.spec.tsx +3 -2
  914. package/src/components/form/__tests__/CFormRange.spec.tsx +1 -1
  915. package/src/components/form/__tests__/CFormSelect.spec.tsx +1 -1
  916. package/src/components/form/__tests__/CFormSwitch.spec.tsx +1 -1
  917. package/src/components/form/__tests__/CFormText.spec.tsx +1 -1
  918. package/src/components/form/__tests__/CFormTextarea.spec.tsx +1 -1
  919. package/src/components/form/__tests__/CInputGroup.spec.tsx +1 -1
  920. package/src/components/form/__tests__/CInputGroupText.spec.tsx +1 -1
  921. package/src/components/grid/CCol.tsx +2 -2
  922. package/src/components/grid/CContainer.tsx +2 -2
  923. package/src/components/grid/CRow.tsx +1 -1
  924. package/src/components/grid/__tests__/CCol.spec.tsx +2 -2
  925. package/src/components/grid/__tests__/CContainer.spec.tsx +2 -2
  926. package/src/components/grid/__tests__/CRow.spec.tsx +5 -5
  927. package/src/components/header/CHeader.tsx +1 -1
  928. package/src/components/header/CHeaderDivider.tsx +1 -1
  929. package/src/components/header/CHeaderText.tsx +1 -1
  930. package/src/components/header/CHeaderToggler.tsx +1 -1
  931. package/src/components/header/__tests__/CHeader.spec.tsx +1 -1
  932. package/src/components/header/__tests__/CHeaderBrand.spec.tsx +1 -1
  933. package/src/components/header/__tests__/CHeaderNav.spec.tsx +1 -1
  934. package/src/components/image/CImage.tsx +2 -2
  935. package/src/components/image/__tests__/CImage.spec.tsx +1 -1
  936. package/src/components/index.ts +1 -0
  937. package/src/components/link/__tests__/CLink.spec.tsx +3 -3
  938. package/src/components/list-group/CListGroup.tsx +1 -1
  939. package/src/components/list-group/CListGroupItem.tsx +2 -2
  940. package/src/components/list-group/__tests__/CListGroup.spec.tsx +2 -2
  941. package/src/components/list-group/__tests__/CListGroupItem.spec.tsx +1 -1
  942. package/src/components/modal/CModal.tsx +5 -13
  943. package/src/components/modal/CModalBody.tsx +1 -1
  944. package/src/components/modal/CModalContent.tsx +1 -1
  945. package/src/components/modal/CModalDialog.tsx +2 -2
  946. package/src/components/modal/CModalFooter.tsx +1 -1
  947. package/src/components/modal/CModalHeader.tsx +1 -1
  948. package/src/components/modal/__tests__/CModal.spec.tsx +2 -2
  949. package/src/components/modal/__tests__/CModalDialog.spec.tsx +1 -1
  950. package/src/components/modal/__tests__/CModalTitle.spec.tsx +1 -1
  951. package/src/components/nav/CNavGroup.tsx +2 -2
  952. package/src/components/nav/CNavGroupItems.tsx +1 -1
  953. package/src/components/nav/__tests__/CNavGroup.spec.tsx +1 -1
  954. package/src/components/nav/__tests__/CNavItem.spec.tsx +1 -1
  955. package/src/components/nav/__tests__/CNavLink.spec.tsx +1 -1
  956. package/src/components/navbar/CNavbar.tsx +3 -3
  957. package/src/components/navbar/CNavbarText.tsx +1 -1
  958. package/src/components/navbar/CNavbarToggler.tsx +1 -1
  959. package/src/components/navbar/__tests__/CNavbar.spec.tsx +2 -2
  960. package/src/components/navbar/__tests__/CNavbarBrand.spec.tsx +1 -1
  961. package/src/components/navbar/__tests__/CNavbarNav.spec.tsx +1 -1
  962. package/src/components/offcanvas/COffcanvas.tsx +26 -24
  963. package/src/components/offcanvas/COffcanvasBody.tsx +1 -1
  964. package/src/components/offcanvas/COffcanvasHeader.tsx +1 -1
  965. package/src/components/offcanvas/COffcanvasTitle.tsx +1 -1
  966. package/src/components/offcanvas/__tests__/COffcanvasTitle.spec.tsx +1 -1
  967. package/src/components/pagination/CPagination.tsx +2 -2
  968. package/src/components/pagination/CPaginationItem.tsx +2 -2
  969. package/src/components/pagination/__tests__/CPagination.spec.tsx +2 -2
  970. package/src/components/pagination/__tests__/CPaginationItem.spec.tsx +1 -1
  971. package/src/components/picker/CPicker.tsx +32 -29
  972. package/src/components/placeholder/CPlaceholder.tsx +2 -2
  973. package/src/components/placeholder/__tests__/CPlaceholder.spec.tsx +1 -1
  974. package/src/components/progress/__tests__/CProgress.spec.tsx +1 -1
  975. package/src/components/progress/__tests__/CProgressBar.spec.tsx +1 -1
  976. package/src/components/sidebar/CSidebarFooter.tsx +1 -1
  977. package/src/components/sidebar/CSidebarHeader.tsx +1 -1
  978. package/src/components/sidebar/CSidebarToggler.tsx +1 -1
  979. package/src/components/sidebar/__tests__/CSidebar.spec.tsx +2 -2
  980. package/src/components/spinner/CSpinner.tsx +3 -3
  981. package/src/components/spinner/__tests__/CSpinner.spec.tsx +1 -1
  982. package/src/components/table/CTable.tsx +3 -3
  983. package/src/components/table/CTableBody.tsx +2 -2
  984. package/src/components/table/CTableDataCell.tsx +2 -2
  985. package/src/components/table/CTableFoot.tsx +2 -2
  986. package/src/components/table/CTableHead.tsx +2 -2
  987. package/src/components/table/CTableHeaderCell.tsx +2 -2
  988. package/src/components/table/CTableRow.tsx +2 -2
  989. package/src/components/table/__tests__/CTable.spec.tsx +2 -2
  990. package/src/components/table/__tests__/CTableBody.spec.tsx +1 -1
  991. package/src/components/table/__tests__/CTableDataCell.spec.tsx +2 -2
  992. package/src/components/table/__tests__/CTableFoot.spec.tsx +1 -1
  993. package/src/components/table/__tests__/CTableHead.spec.tsx +1 -1
  994. package/src/components/table/__tests__/CTableHeaderCell.spec.tsx +2 -2
  995. package/src/components/table/__tests__/CTableRow.spec.tsx +2 -2
  996. package/src/components/tabs/CTab.tsx +2 -2
  997. package/src/components/tabs/CTabContent.tsx +1 -1
  998. package/src/components/tabs/CTabPane.tsx +2 -2
  999. package/src/components/tabs/CTabPanel.tsx +2 -2
  1000. package/src/components/toast/CToastBody.tsx +1 -1
  1001. package/src/components/toast/CToastHeader.tsx +1 -1
  1002. package/src/components/toast/__tests__/CToaster.spec.tsx +2 -2
  1003. package/src/components/widgets/CWidgetStatsA.tsx +1 -1
  1004. package/src/components/widgets/CWidgetStatsB.tsx +1 -1
  1005. package/src/components/widgets/CWidgetStatsC.tsx +2 -2
  1006. package/src/components/widgets/CWidgetStatsD.tsx +2 -2
  1007. package/src/components/widgets/CWidgetStatsE.tsx +1 -1
  1008. package/src/components/widgets/CWidgetStatsF.tsx +1 -1
  1009. package/src/components/widgets/__tests__/CWidgetStatsA.spec.tsx +1 -1
  1010. package/src/components/widgets/__tests__/CWidgetStatsB.spec.tsx +1 -1
  1011. package/src/components/widgets/__tests__/CWidgetStatsC.spec.tsx +1 -1
  1012. package/src/components/widgets/__tests__/CWidgetStatsD.spec.tsx +1 -1
  1013. package/src/components/widgets/__tests__/CWidgetStatsE.spec.tsx +1 -1
  1014. package/src/components/widgets/__tests__/CWidgetStatsF.spec.tsx +2 -2
  1015. package/src/helpers/polymorphicComponent.ts +1 -1
  1016. package/src/utils/executeAfterTransition.ts +1 -1
  1017. package/src/utils/getNextActiveElement.ts +1 -1
  1018. package/src/utils/mergeClassNames.ts +1 -1
@@ -1,37 +1,425 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../../node_modules/tslib/tslib.es6.js');
4
-
5
3
  /**
6
4
  * Converts an ISO week string to a Date object representing the Monday of that week.
7
5
  * @param isoWeek - The ISO week string (e.g., "2023W05" or "2023w05").
8
6
  * @returns The Date object for the Monday of the specified week, or null if invalid.
9
7
  */
10
- var convertIsoWeekToDate = function (isoWeek) {
11
- var _a = isoWeek.split(/[Ww]/), year = _a[0], week = _a[1];
12
- var date = new Date(Number(year), 0, 4); // 4th Jan is always in week 1
13
- date.setDate(date.getDate() - (date.getDay() || 7) + 1 + (Number(week) - 1) * 7);
14
- return date;
8
+ /**
9
+ * Helper function to calculate Monday of ISO week 1 for a given year.
10
+ * @param year - The year to calculate for.
11
+ * @returns The Monday of ISO week 1.
12
+ */
13
+ const getMondayOfISOWeek1 = (year) => {
14
+ const jan4 = new Date(year, 0, 4);
15
+ const jan4DayOfWeek = jan4.getDay();
16
+ const daysFromMonday = jan4DayOfWeek === 0 ? 6 : jan4DayOfWeek - 1; // Sunday = 6 days from Monday
17
+ const mondayOfWeek1 = new Date(jan4);
18
+ mondayOfWeek1.setDate(jan4.getDate() - daysFromMonday);
19
+ return mondayOfWeek1;
20
+ };
21
+ /**
22
+ * Helper function to calculate Monday of a specific ISO week.
23
+ * @param year - The year.
24
+ * @param week - The ISO week number.
25
+ * @returns The Monday of the specified ISO week.
26
+ */
27
+ const getMondayOfISOWeek = (year, week) => {
28
+ const mondayOfWeek1 = getMondayOfISOWeek1(year);
29
+ const weekStart = new Date(mondayOfWeek1);
30
+ // prettier-ignore
31
+ weekStart.setDate(mondayOfWeek1.getDate() + ((week - 1) * 7));
32
+ return weekStart;
33
+ };
34
+ /**
35
+ * Helper function to convert a date to a month number for comparison.
36
+ * @param date - The date to convert.
37
+ * @returns A number representing year*12 + month for easy comparison.
38
+ */
39
+ const dateToMonthNumber = (date) => {
40
+ // prettier-ignore
41
+ return (date.getFullYear() * 12) + date.getMonth();
42
+ };
43
+ /**
44
+ * Helper function to check if a value is within min/max range.
45
+ * @param value - The value to check.
46
+ * @param min - Minimum allowed value (null means no minimum).
47
+ * @param max - Maximum allowed value (null means no maximum).
48
+ * @returns True if the value is outside the range, false if within range.
49
+ */
50
+ const isOutsideRange = (value, min, max) => {
51
+ if (min !== null && value < min) {
52
+ return true;
53
+ }
54
+ if (max !== null && value > max) {
55
+ return true;
56
+ }
57
+ return false;
58
+ };
59
+ /**
60
+ * Converts an ISO week string to a Date object representing the Monday of that week.
61
+ * @param isoWeek - The ISO week string (e.g., "2023W05" or "2023w05").
62
+ * @returns The Date object for the Monday of the specified week.
63
+ */
64
+ const convertIsoWeekToDate = (isoWeek) => {
65
+ const [year, week] = isoWeek.split(/[Ww]/);
66
+ const parsedYear = parseYearSmart(year);
67
+ const parsedWeek = Number.parseInt(week, 10);
68
+ // Create date from ISO week using helper function
69
+ return getMondayOfISOWeek(parsedYear, parsedWeek);
70
+ };
71
+ /**
72
+ * Parses a week string and returns a Date object for the Monday of that week.
73
+ * @param dateString - The week string to parse.
74
+ * @returns The Date object for the Monday of the week, or null if invalid.
75
+ */
76
+ const parseWeekString = (dateString) => {
77
+ const weekPatterns = [
78
+ /^(\d{4})-W(\d{1,2})$/, // 2023-W05, 2023-W5
79
+ /^(\d{4})W(\d{1,2})$/, // 2023W05, 2023W5
80
+ /^(\d{4})\s+W(\d{1,2})$/, // 2023 W05, 2023 W5
81
+ ];
82
+ for (const pattern of weekPatterns) {
83
+ const match = dateString.trim().match(pattern);
84
+ if (match) {
85
+ const parsedYear = parseYearSmart(match[1]);
86
+ const parsedWeek = Number.parseInt(match[2], 10);
87
+ // Create date from ISO week using helper function
88
+ return getMondayOfISOWeek(parsedYear, parsedWeek);
89
+ }
90
+ }
91
+ // Fallback to existing ISO week parsing
92
+ return convertIsoWeekToDate(dateString);
93
+ };
94
+ /**
95
+ * Parses a month string and returns a Date object for the first day of that month.
96
+ * @param dateString - The month string to parse.
97
+ * @returns The Date object for the first day of the month, or null if invalid.
98
+ */
99
+ const parseMonthString = (dateString) => {
100
+ const monthPatterns = [
101
+ /^(\d{2,4})[-/.\s](\d{1,2})$/, // 2023-12, 23-12, 2023/12, 23/12, 2023 12, etc.
102
+ /^(\d{1,2})[-/.\s](\d{2,4})$/, // 12-2023, 12-23, 12/2023, 12/23, 12 2023, etc.
103
+ ];
104
+ for (const pattern of monthPatterns) {
105
+ const match = dateString.trim().match(pattern);
106
+ if (match) {
107
+ const firstGroup = match[1];
108
+ const secondGroup = match[2];
109
+ // Determine which group is year and which is month
110
+ const parsedFirst = Number.parseInt(firstGroup, 10);
111
+ const parsedSecond = Number.parseInt(secondGroup, 10);
112
+ let parsedYear;
113
+ let parsedMonth;
114
+ // Determine which group is year and which is month based on several heuristics
115
+ if (firstGroup.length >= 3 || parsedFirst >= 100) {
116
+ // First group is clearly a year (3+ digits or >= 100)
117
+ parsedYear = parseYearSmart(firstGroup);
118
+ parsedMonth = parsedSecond - 1;
119
+ }
120
+ else if (secondGroup.length >= 3 || parsedSecond >= 100) {
121
+ // Second group is clearly a year (3+ digits or >= 100)
122
+ parsedYear = parseYearSmart(secondGroup);
123
+ parsedMonth = parsedFirst - 1;
124
+ }
125
+ else {
126
+ // Both groups are 1-2 digits, use context clues
127
+ // If second group is a valid month (1-12), treat first as year
128
+ if (parsedSecond >= 1 && parsedSecond <= 12 && (parsedFirst > 12 || parsedFirst < 1)) {
129
+ parsedYear = parseYearSmart(firstGroup);
130
+ parsedMonth = parsedSecond - 1;
131
+ }
132
+ else {
133
+ // Default: treat second group as year
134
+ parsedYear = parseYearSmart(secondGroup);
135
+ parsedMonth = parsedFirst - 1;
136
+ }
137
+ }
138
+ if (parsedMonth >= 0 && parsedMonth <= 11) {
139
+ return new Date(parsedYear, parsedMonth, 1);
140
+ }
141
+ }
142
+ }
143
+ // For month selection, don't use fallback parsing - return null if no pattern matches
144
+ return null;
145
+ };
146
+ /**
147
+ * Parses a year string or number and returns a Date object for January 1st of that year.
148
+ * @param dateString - The year string or number to parse.
149
+ * @returns The Date object for January 1st of the year, or null if invalid.
150
+ */
151
+ const parseYearString = (dateString) => {
152
+ const yearString = String(dateString);
153
+ const yearPattern = /^(\d{2,4})$/;
154
+ const match = yearString.trim().match(yearPattern);
155
+ if (match) {
156
+ const groups = { year: match[1] };
157
+ return createDateFromYear(groups);
158
+ }
159
+ return parseLocalDateString(yearString);
160
+ };
161
+ /**
162
+ * Helper function to generate multiple date format patterns based on locale.
163
+ * @param locale - The locale to use for date format patterns.
164
+ * @param includeTime - Whether to include time in the patterns.
165
+ * @returns Array of date format patterns.
166
+ */
167
+ const generateDatePatterns = (locale, includeTime) => {
168
+ const referenceDate = new Date(2013, 11, 31, 17, 19, 22);
169
+ const patterns = [];
170
+ try {
171
+ // Get the standard locale format
172
+ const standardFormat = includeTime
173
+ ? referenceDate.toLocaleString(locale)
174
+ : referenceDate.toLocaleDateString(locale);
175
+ patterns.push(standardFormat);
176
+ }
177
+ catch (_a) {
178
+ // Fallback to default locale if invalid locale provided
179
+ const standardFormat = includeTime
180
+ ? referenceDate.toLocaleString('en-US')
181
+ : referenceDate.toLocaleDateString('en-US');
182
+ patterns.push(standardFormat);
183
+ }
184
+ // Generate common alternative formats by replacing separators
185
+ const separators = ['/', '-', '.', ' '];
186
+ const standardFormat = patterns[0];
187
+ // Detect the original separator
188
+ let originalSeparator = '/'; // default
189
+ if (standardFormat.includes('/')) {
190
+ originalSeparator = '/';
191
+ }
192
+ else if (standardFormat.includes('-')) {
193
+ originalSeparator = '-';
194
+ }
195
+ else if (standardFormat.includes('.')) {
196
+ originalSeparator = '.';
197
+ }
198
+ for (const sep of separators) {
199
+ if (sep !== originalSeparator) {
200
+ // Escape the original separator for regex if it's a special character
201
+ const escapedSeparator = originalSeparator.replaceAll(/[.*+?^${}()|[\]\\]/g, String.raw `\$&`);
202
+ const altFormat = standardFormat.replaceAll(new RegExp(escapedSeparator, 'g'), sep);
203
+ patterns.push(altFormat);
204
+ }
205
+ }
206
+ return patterns;
207
+ };
208
+ /**
209
+ * Helper function to build regex pattern for date parsing.
210
+ * @param formatString - The date format string.
211
+ * @param includeTime - Whether to include time patterns.
212
+ * @returns The regex pattern string.
213
+ */
214
+ const buildDateRegexPattern = (formatString, includeTime) => {
215
+ // First escape special regex characters
216
+ // eslint-disable-next-line unicorn/prefer-string-raw
217
+ let regexPattern = formatString.replaceAll(/[.*+?^${}()|[\\]\\]/g, '\\$&');
218
+ // Then replace the date/time components with regex groups
219
+ regexPattern = regexPattern
220
+ .replace('2013', String.raw `(?<year>\d{2,4})`)
221
+ .replace('12', String.raw `(?<month>\d{1,2})`)
222
+ .replace('31', String.raw `(?<day>\d{1,2})`);
223
+ if (includeTime) {
224
+ regexPattern = regexPattern
225
+ .replaceAll(/17|5/g, String.raw `(?<hour>\d{1,2})`)
226
+ .replace('19', String.raw `(?<minute>\d{1,2})`)
227
+ .replace('22', String.raw `(?<second>\d{1,2})`)
228
+ .replaceAll(/AM|PM/gi, '(?<ampm>[APap][Mm])');
229
+ }
230
+ return regexPattern;
231
+ };
232
+ /**
233
+ * Helper function to try parsing with multiple patterns.
234
+ * @param dateString - The date string to parse.
235
+ * @param patterns - Array of format patterns to try.
236
+ * @param includeTime - Whether time parsing is included.
237
+ * @returns Parsed groups or null if no match.
238
+ */
239
+ const tryParseWithPatterns = (dateString, patterns, includeTime) => {
240
+ for (const pattern of patterns) {
241
+ const regexPattern = buildDateRegexPattern(pattern, includeTime);
242
+ const regex = new RegExp(`^${regexPattern}$`);
243
+ const match = dateString.trim().match(regex);
244
+ if (match === null || match === void 0 ? void 0 : match.groups) {
245
+ return match.groups;
246
+ }
247
+ }
248
+ return null;
249
+ };
250
+ /**
251
+ * Helper function to convert 12-hour to 24-hour format.
252
+ * @param hour - Hour string.
253
+ * @param ampm - AM/PM indicator.
254
+ * @returns Hour in 24-hour format.
255
+ */
256
+ const convertTo24Hour = (hour, ampm) => {
257
+ const parsedHour = Number.parseInt(hour, 10);
258
+ if (!ampm) {
259
+ return parsedHour;
260
+ }
261
+ const isPM = ampm.toLowerCase() === 'pm';
262
+ if (isPM && parsedHour !== 12) {
263
+ return parsedHour + 12;
264
+ }
265
+ if (!isPM && parsedHour === 12) {
266
+ return 0;
267
+ }
268
+ return parsedHour;
269
+ };
270
+ /**
271
+ * Helper function to validate time components.
272
+ * @param hour - Hour value.
273
+ * @param minute - Minute value.
274
+ * @param second - Second value.
275
+ * @returns True if time components are valid.
276
+ */
277
+ const validateTimeComponents = (hour, minute, second) => {
278
+ return hour >= 0 && hour <= 23 && minute >= 0 && minute <= 59 && second >= 0 && second <= 59;
279
+ };
280
+ /**
281
+ * Helper function to validate date components.
282
+ * @param month - Month string.
283
+ * @param day - Day string.
284
+ * @returns True if date components are valid.
285
+ */
286
+ const validateDateComponents = (month, day) => {
287
+ const parsedMonth = Number.parseInt(month, 10) - 1;
288
+ const parsedDay = Number.parseInt(day, 10);
289
+ return parsedMonth >= 0 && parsedMonth <= 11 && parsedDay >= 1 && parsedDay <= 31;
290
+ };
291
+ /**
292
+ * Helper function to create date with time.
293
+ * @param groups - Parsed date and time groups.
294
+ * @returns Date object or null if invalid.
295
+ */
296
+ const createDateWithTime = (groups) => {
297
+ const { year, month, day, hour, minute, second, ampm } = groups;
298
+ const parsedYear = parseYearSmart(year);
299
+ const parsedMonth = Number.parseInt(month, 10) - 1;
300
+ const parsedDay = Number.parseInt(day, 10);
301
+ const parsedHour = convertTo24Hour(hour, ampm);
302
+ const parsedMinute = Number.parseInt(minute !== null && minute !== void 0 ? minute : '0', 10) || 0;
303
+ const parsedSecond = Number.parseInt(second !== null && second !== void 0 ? second : '0', 10) || 0;
304
+ if (!validateTimeComponents(parsedHour, parsedMinute, parsedSecond)) {
305
+ return null;
306
+ }
307
+ return new Date(parsedYear, parsedMonth, parsedDay, parsedHour, parsedMinute, parsedSecond);
308
+ };
309
+ /**
310
+ * Helper function to create date without time.
311
+ * @param groups - Parsed date groups.
312
+ * @returns Date object or null if invalid.
313
+ */
314
+ const createDateOnly = (groups) => {
315
+ const { year, month, day } = groups;
316
+ if (!validateDateComponents(month, day)) {
317
+ return null;
318
+ }
319
+ const parsedYear = parseYearSmart(year);
320
+ const parsedMonth = Number.parseInt(month, 10) - 1;
321
+ const parsedDay = Number.parseInt(day, 10);
322
+ return new Date(parsedYear, parsedMonth, parsedDay);
323
+ };
324
+ /**
325
+ * Enhanced day parsing with locale-aware patterns.
326
+ * @param dateString - The day string to parse.
327
+ * @param locale - The locale to use for parsing.
328
+ * @param includeTime - Whether to include time parsing.
329
+ * @returns Date object or null if invalid.
330
+ */
331
+ const parseDayString = (dateString, locale, includeTime) => {
332
+ const patterns = generateDatePatterns(locale, includeTime);
333
+ const groups = tryParseWithPatterns(dateString, patterns, includeTime);
334
+ if (!groups) {
335
+ // Check if input looks like a complete date (has separators and multiple parts)
336
+ // If so, use fallback parsing for formats like "2022/08/17", "2022-08-17"
337
+ // If not (like "1", "12"), return null
338
+ const trimmed = dateString.trim();
339
+ const hasDateSeparators = /[-/.:]/.test(trimmed);
340
+ const parts = trimmed.split(/[-/.\s:]+/).filter((part) => part.length > 0);
341
+ const hasMultipleParts = parts.length >= 2;
342
+ if (hasDateSeparators && hasMultipleParts) {
343
+ // Use fallback for complete date strings that don't match locale patterns
344
+ return parseLocalDateString(dateString);
345
+ }
346
+ // For incomplete input like "1" or "12", return null
347
+ return null;
348
+ }
349
+ // For day selection, require at least month and day to be present
350
+ if ('month' in groups && 'day' in groups) {
351
+ const { month, day } = groups;
352
+ if (!validateDateComponents(month, day)) {
353
+ return null;
354
+ }
355
+ }
356
+ else {
357
+ // If incomplete date information, return null instead of guessing
358
+ return null;
359
+ }
360
+ // Create and return appropriate date object
361
+ return includeTime
362
+ ? createDateWithTime(groups)
363
+ : createDateOnly(groups);
364
+ };
365
+ /**
366
+ * Parses a date string into a local Date object.
367
+ * @param dateString - The date string to parse.
368
+ * @returns The Date object in local timezone, or null if invalid.
369
+ */
370
+ const parseLocalDateString = (dateString) => {
371
+ const _date = new Date(Date.parse(dateString));
372
+ if (!Number.isNaN(_date.getTime())) {
373
+ return _date;
374
+ }
375
+ return null;
15
376
  };
16
377
  /**
17
378
  * Converts a date string or Date object to a Date object based on selection type.
18
379
  * @param date - The date to convert.
19
380
  * @param selectionType - The type of selection ('day', 'week', 'month', 'year').
381
+ * @param locale - The locale to use for date parsing (for day parsing).
382
+ * @param includeTime - Whether to include time parsing (for day parsing).
20
383
  * @returns The corresponding Date object or null if invalid.
21
384
  */
22
- var convertToDateObject = function (date, selectionType) {
385
+ const convertToDateObject = (date, selectionType, locale = 'en-US', includeTime = false) => {
386
+ if (date === null) {
387
+ return null;
388
+ }
23
389
  if (date instanceof Date) {
24
- return date;
390
+ return Number.isNaN(date.getTime()) ? null : date;
25
391
  }
26
- if (selectionType === 'week') {
27
- return convertIsoWeekToDate(date);
392
+ const dateString = date;
393
+ switch (selectionType) {
394
+ case 'week': {
395
+ return parseWeekString(dateString);
396
+ }
397
+ case 'month': {
398
+ return parseMonthString(dateString);
399
+ }
400
+ case 'year': {
401
+ return parseYearString(dateString);
402
+ }
403
+ default: {
404
+ // Enhanced day parsing with locale support
405
+ return parseDayString(dateString, locale, includeTime);
406
+ }
28
407
  }
29
- if (selectionType === 'month' || selectionType === 'year') {
30
- var _date = new Date(Date.parse(date));
31
- var userTimezoneOffset = _date.getTimezoneOffset() * 60000;
32
- return new Date(_date.getTime() + userTimezoneOffset);
408
+ };
409
+ /**
410
+ * Enhanced locale-aware date parsing function (replaces getLocalDateFromString).
411
+ * @param dateString - The date string to parse.
412
+ * @param locale - The locale to use for date format patterns.
413
+ * @param includeTime - Whether to include time parsing.
414
+ * @param selectionType - The selection type ('day', 'week', 'month', 'year').
415
+ * @returns A Date object if parsing succeeds, null if parsing fails.
416
+ */
417
+ const getLocalDateFromString = (dateString, locale = 'en-US', includeTime = false, selectionType = 'day') => {
418
+ // Input validation
419
+ if (!dateString || typeof dateString !== 'string') {
420
+ return null;
33
421
  }
34
- return new Date(Date.parse(date));
422
+ return convertToDateObject(dateString, selectionType, locale, includeTime);
35
423
  };
36
424
  /**
37
425
  * Creates groups from an array.
@@ -39,11 +427,11 @@ var convertToDateObject = function (date, selectionType) {
39
427
  * @param numberOfGroups - Number of groups to create.
40
428
  * @returns An array of grouped arrays.
41
429
  */
42
- var createGroupsInArray = function (arr, numberOfGroups) {
43
- var perGroup = Math.ceil(arr.length / numberOfGroups);
430
+ const createGroupsInArray = (arr, numberOfGroups) => {
431
+ const perGroup = Math.ceil(arr.length / numberOfGroups);
44
432
  return Array.from({ length: numberOfGroups })
45
433
  .fill('')
46
- .map(function (_, i) { return arr.slice(i * perGroup, (i + 1) * perGroup); });
434
+ .map((_, i) => arr.slice(i * perGroup, (i + 1) * perGroup));
47
435
  };
48
436
  /**
49
437
  * Adjusts the calendar date based on order and view type.
@@ -52,7 +440,7 @@ var createGroupsInArray = function (arr, numberOfGroups) {
52
440
  * @param view - The current view type.
53
441
  * @returns The adjusted Date object.
54
442
  */
55
- var getCalendarDate = function (calendarDate, order, view) {
443
+ const getCalendarDate = (calendarDate, order, view) => {
56
444
  if (order !== 0 && view === 'days') {
57
445
  return new Date(calendarDate.getFullYear(), calendarDate.getMonth() + order, 1);
58
446
  }
@@ -60,7 +448,8 @@ var getCalendarDate = function (calendarDate, order, view) {
60
448
  return new Date(calendarDate.getFullYear() + order, calendarDate.getMonth(), 1);
61
449
  }
62
450
  if (order !== 0 && view === 'years') {
63
- return new Date(calendarDate.getFullYear() + 12 * order, calendarDate.getMonth(), 1);
451
+ // prettier-ignore
452
+ return new Date(calendarDate.getFullYear() + (12 * order), calendarDate.getMonth(), 1);
64
453
  }
65
454
  return calendarDate;
66
455
  };
@@ -70,20 +459,20 @@ var getCalendarDate = function (calendarDate, order, view) {
70
459
  * @param selectionType - The type of selection ('day', 'week', 'month', 'year').
71
460
  * @returns A formatted date string or the original Date object.
72
461
  */
73
- var getDateBySelectionType = function (date, selectionType) {
462
+ const getDateBySelectionType = (date, selectionType) => {
74
463
  if (date === null) {
75
464
  return null;
76
465
  }
77
466
  if (selectionType === 'week') {
78
- var _a = getISOWeekNumberAndYear(date), year = _a.year, weekNumber = _a.weekNumber;
79
- return "".concat(year, "W").concat(weekNumber.toString().padStart(2, '0'));
467
+ const { year, weekNumber } = getISOWeekNumberAndYear(date);
468
+ return `${year}W${weekNumber.toString().padStart(2, '0')}`;
80
469
  }
81
470
  if (selectionType === 'month') {
82
- var monthNumber = "0".concat(date.getMonth() + 1).slice(-2);
83
- return "".concat(date.getFullYear(), "-").concat(monthNumber);
471
+ const monthNumber = `0${date.getMonth() + 1}`.slice(-2);
472
+ return `${date.getFullYear()}-${monthNumber}`;
84
473
  }
85
474
  if (selectionType === 'year') {
86
- return "".concat(date.getFullYear());
475
+ return `${date.getFullYear()}`;
87
476
  }
88
477
  return date;
89
478
  };
@@ -93,9 +482,8 @@ var getDateBySelectionType = function (date, selectionType) {
93
482
  * @param format - The format of the month names ('short' or 'long').
94
483
  * @returns An array of month names.
95
484
  */
96
- var getMonthsNames = function (locale, format) {
97
- if (format === void 0) { format = 'short'; }
98
- return Array.from({ length: 12 }, function (_, i) {
485
+ const getMonthsNames = (locale, format = 'short') => {
486
+ return Array.from({ length: 12 }, (_, i) => {
99
487
  return new Date(2000, i, 1).toLocaleString(locale, { month: format });
100
488
  });
101
489
  };
@@ -105,9 +493,8 @@ var getMonthsNames = function (locale, format) {
105
493
  * @param selector - The CSS selector used to identify selectable dates. Defaults to 'tr[tabindex="0"], td[tabindex="0"]'.
106
494
  * @returns An array of HTMLElements representing the selectable dates.
107
495
  */
108
- var getSelectableDates = function (element, selector) {
109
- if (selector === void 0) { selector = 'tr[tabindex="0"], td[tabindex="0"]'; }
110
- return tslib_es6.__spreadArray([], Element.prototype.querySelectorAll.call(element, selector), true);
496
+ const getSelectableDates = (element, selector = 'tr[tabindex="0"], td[tabindex="0"]') => {
497
+ return [...Element.prototype.querySelectorAll.call(element, selector)];
111
498
  };
112
499
  /**
113
500
  * Generates an array of years centered around a given year.
@@ -115,9 +502,8 @@ var getSelectableDates = function (element, selector) {
115
502
  * @param range - The number of years before and after the central year.
116
503
  * @returns An array of years.
117
504
  */
118
- var getYears = function (year, range) {
119
- if (range === void 0) { range = 6; }
120
- return Array.from({ length: range * 2 }, function (_, i) { return year - range + i; });
505
+ const getYears = (year, range = 6) => {
506
+ return Array.from({ length: range * 2 }, (_, i) => year - range + i);
121
507
  };
122
508
  /**
123
509
  * Retrieves leading days (from the previous month) for a calendar view.
@@ -126,19 +512,19 @@ var getYears = function (year, range) {
126
512
  * @param firstDayOfWeek - The first day of the week (0-6, where 0 is Sunday).
127
513
  * @returns An array of leading day objects.
128
514
  */
129
- var getLeadingDays = function (year, month, firstDayOfWeek) {
515
+ const getLeadingDays = (year, month, firstDayOfWeek) => {
130
516
  // 0: sunday
131
517
  // 1: monday
132
- var dates = [];
133
- var d = new Date(year, month);
134
- var y = d.getFullYear();
135
- var m = d.getMonth();
136
- var firstWeekday = new Date(y, m, 1).getDay();
137
- var leadingDays = 6 - (6 - firstWeekday) - firstDayOfWeek;
518
+ const dates = [];
519
+ const d = new Date(year, month);
520
+ const y = d.getFullYear();
521
+ const m = d.getMonth();
522
+ const firstWeekday = new Date(y, m, 1).getDay();
523
+ let leadingDays = 6 - (6 - firstWeekday) - firstDayOfWeek;
138
524
  if (firstDayOfWeek) {
139
525
  leadingDays = leadingDays < 0 ? 7 + leadingDays : leadingDays;
140
526
  }
141
- for (var i = leadingDays * -1; i < 0; i++) {
527
+ for (let i = leadingDays * -1; i < 0; i++) {
142
528
  dates.push({
143
529
  date: new Date(y, m, i + 1),
144
530
  month: 'previous',
@@ -152,10 +538,10 @@ var getLeadingDays = function (year, month, firstDayOfWeek) {
152
538
  * @param month - The month (0-11).
153
539
  * @returns An array of day objects.
154
540
  */
155
- var getMonthDays = function (year, month) {
156
- var dates = [];
157
- var lastDay = new Date(year, month + 1, 0).getDate();
158
- for (var i = 1; i <= lastDay; i++) {
541
+ const getMonthDays = (year, month) => {
542
+ const dates = [];
543
+ const lastDay = new Date(year, month + 1, 0).getDate();
544
+ for (let i = 1; i <= lastDay; i++) {
159
545
  dates.push({
160
546
  date: new Date(year, month, i),
161
547
  month: 'current',
@@ -171,10 +557,10 @@ var getMonthDays = function (year, month) {
171
557
  * @param monthDays - Array of current month day objects.
172
558
  * @returns An array of trailing day objects.
173
559
  */
174
- var getTrailingDays = function (year, month, leadingDays, monthDays) {
175
- var dates = [];
176
- var days = 42 - (leadingDays.length + monthDays.length);
177
- for (var i = 1; i <= days; i++) {
560
+ const getTrailingDays = (year, month, leadingDays, monthDays) => {
561
+ const dates = [];
562
+ const days = 42 - (leadingDays.length + monthDays.length);
563
+ for (let i = 1; i <= days; i++) {
178
564
  dates.push({
179
565
  date: new Date(year, month + 1, i),
180
566
  month: 'next',
@@ -195,15 +581,15 @@ var getTrailingDays = function (year, month, leadingDays, monthDays) {
195
581
  * - `weekNumber`: the ISO week number (1–53),
196
582
  * - `year`: the ISO year (may differ from the calendar year of the date).
197
583
  */
198
- var getISOWeekNumberAndYear = function (date) {
199
- var tempDate = new Date(date);
584
+ const getISOWeekNumberAndYear = (date) => {
585
+ const tempDate = new Date(date);
200
586
  tempDate.setHours(0, 0, 0, 0);
201
587
  // Thursday in current week decides the year
202
588
  tempDate.setDate(tempDate.getDate() + 3 - ((tempDate.getDay() + 6) % 7));
203
- var week1 = new Date(tempDate.getFullYear(), 0, 4);
589
+ const week1 = new Date(tempDate.getFullYear(), 0, 4);
204
590
  // Calculate full weeks to the date
205
- var weekNumber = 1 + Math.round((tempDate.getTime() - week1.getTime()) / 86400000 / 7);
206
- return { weekNumber: weekNumber, year: tempDate.getFullYear() };
591
+ const weekNumber = 1 + Math.round((tempDate.getTime() - week1.getTime()) / (86400000 * 7));
592
+ return { weekNumber, year: tempDate.getFullYear() };
207
593
  };
208
594
  /**
209
595
  * Retrieves detailed information about each week in a month for calendar rendering.
@@ -212,13 +598,13 @@ var getISOWeekNumberAndYear = function (date) {
212
598
  * @param firstDayOfWeek - The first day of the week (0-6, where 0 is Sunday).
213
599
  * @returns An array of week objects containing week numbers and day details.
214
600
  */
215
- var getMonthDetails = function (year, month, firstDayOfWeek) {
216
- var daysPrevMonth = getLeadingDays(year, month, firstDayOfWeek);
217
- var daysThisMonth = getMonthDays(year, month);
218
- var daysNextMonth = getTrailingDays(year, month, daysPrevMonth, daysThisMonth);
219
- var days = tslib_es6.__spreadArray(tslib_es6.__spreadArray(tslib_es6.__spreadArray([], daysPrevMonth, true), daysThisMonth, true), daysNextMonth, true);
220
- var weeks = [];
221
- days.forEach(function (day, index) {
601
+ const getMonthDetails = (year, month, firstDayOfWeek) => {
602
+ const daysPrevMonth = getLeadingDays(year, month, firstDayOfWeek);
603
+ const daysThisMonth = getMonthDays(year, month);
604
+ const daysNextMonth = getTrailingDays(year, month, daysPrevMonth, daysThisMonth);
605
+ const days = [...daysPrevMonth, ...daysThisMonth, ...daysNextMonth];
606
+ const weeks = [];
607
+ days.forEach((day, index) => {
222
608
  if (index % 7 === 0 || weeks.length === 0) {
223
609
  weeks.push({
224
610
  week: { number: 0, year: 0 },
@@ -226,10 +612,16 @@ var getMonthDetails = function (year, month, firstDayOfWeek) {
226
612
  });
227
613
  }
228
614
  if ((index + 1) % 7 === 0) {
229
- var _a = getISOWeekNumberAndYear(day.date), weekNumber = _a.weekNumber, year_1 = _a.year;
230
- weeks[weeks.length - 1].week = { number: weekNumber, year: year_1 };
615
+ const { weekNumber, year } = getISOWeekNumberAndYear(day.date);
616
+ const lastWeek = weeks.at(-1);
617
+ if (lastWeek) {
618
+ lastWeek.week = { number: weekNumber, year };
619
+ }
620
+ }
621
+ const lastWeek = weeks.at(-1);
622
+ if (lastWeek) {
623
+ lastWeek.days.push(day);
231
624
  }
232
- weeks[weeks.length - 1].days.push(day);
233
625
  });
234
626
  return weeks;
235
627
  };
@@ -241,7 +633,7 @@ var getMonthDetails = function (year, month, firstDayOfWeek) {
241
633
  * @param disabledDates - Criteria for disabled dates.
242
634
  * @returns True if the date is disabled, false otherwise.
243
635
  */
244
- var isDateDisabled = function (date, min, max, disabledDates) {
636
+ const isDateDisabled = (date, min, max, disabledDates) => {
245
637
  if (min && date < min) {
246
638
  return true;
247
639
  }
@@ -258,8 +650,7 @@ var isDateDisabled = function (date, min, max, disabledDates) {
258
650
  return true;
259
651
  }
260
652
  if (Array.isArray(disabledDates) && disabledDates) {
261
- for (var _i = 0, disabledDates_1 = disabledDates; _i < disabledDates_1.length; _i++) {
262
- var _date = disabledDates_1[_i];
653
+ for (const _date of disabledDates) {
263
654
  if (typeof _date === 'function' && _date(date)) {
264
655
  return true;
265
656
  }
@@ -280,11 +671,11 @@ var isDateDisabled = function (date, min, max, disabledDates) {
280
671
  * @param end - End date of the range.
281
672
  * @returns True if the date is within the range, false otherwise.
282
673
  */
283
- var isDateInRange = function (date, start, end) {
284
- var _date = removeTimeFromDate(date);
285
- var _start = start ? removeTimeFromDate(start) : null;
286
- var _end = end ? removeTimeFromDate(end) : null;
287
- return !!(_start && _end && _start <= _date && _date <= _end);
674
+ const isDateInRange = (date, start, end) => {
675
+ const _date = removeTimeFromDate(date);
676
+ const _start = start ? removeTimeFromDate(start) : null;
677
+ const _end = end ? removeTimeFromDate(end) : null;
678
+ return Boolean(_start && _end && _start <= _date && _date <= _end);
288
679
  };
289
680
  /**
290
681
  * Checks if a date is selected based on start and end dates.
@@ -293,7 +684,7 @@ var isDateInRange = function (date, start, end) {
293
684
  * @param end - End date.
294
685
  * @returns True if the date is selected, false otherwise.
295
686
  */
296
- var isDateSelected = function (date, start, end) {
687
+ const isDateSelected = (date, start, end) => {
297
688
  if (start !== null && isSameDateAs(start, date)) {
298
689
  return true;
299
690
  }
@@ -309,10 +700,10 @@ var isDateSelected = function (date, start, end) {
309
700
  * @param disabledDates - Criteria for disabled dates.
310
701
  * @returns True if any date in the range is disabled, false otherwise.
311
702
  */
312
- var isDisableDateInRange = function (startDate, endDate, disabledDates) {
703
+ const isDisableDateInRange = (startDate, endDate, disabledDates) => {
313
704
  if (startDate && endDate) {
314
- var date = new Date(startDate);
315
- var disabled = false;
705
+ const date = new Date(startDate);
706
+ let disabled = false;
316
707
  while (date < endDate) {
317
708
  date.setDate(date.getDate() + 1);
318
709
  if (isDateDisabled(date, null, null, disabledDates)) {
@@ -332,24 +723,21 @@ var isDisableDateInRange = function (startDate, endDate, disabledDates) {
332
723
  * @param disabledDates - Criteria for disabled dates.
333
724
  * @returns True if the month is disabled, false otherwise.
334
725
  */
335
- var isMonthDisabled = function (date, min, max, disabledDates) {
336
- var current = date.getFullYear() * 12 + date.getMonth();
337
- var _min = min ? min.getFullYear() * 12 + min.getMonth() : null;
338
- var _max = max ? max.getFullYear() * 12 + max.getMonth() : null;
339
- if (_min && current < _min) {
340
- return true;
341
- }
342
- if (_max && current > _max) {
726
+ const isMonthDisabled = (date, min, max, disabledDates) => {
727
+ const current = dateToMonthNumber(date);
728
+ const _min = min ? dateToMonthNumber(min) : null;
729
+ const _max = max ? dateToMonthNumber(max) : null;
730
+ if (isOutsideRange(current, _min, _max)) {
343
731
  return true;
344
732
  }
345
733
  if (disabledDates === undefined) {
346
734
  return false;
347
735
  }
348
- var start = min ? Math.max(date.getTime(), min.getTime()) : date;
349
- var end = max
736
+ const startTime = min ? Math.max(date.getTime(), min.getTime()) : date.getTime();
737
+ const endTime = max
350
738
  ? Math.min(date.getTime(), max.getTime())
351
- : new Date(new Date().getFullYear(), 11, 31);
352
- for (var currentDate = new Date(start); currentDate <= end; currentDate.setDate(currentDate.getDate() + 1)) {
739
+ : new Date(new Date().getFullYear(), 11, 31).getTime();
740
+ for (const currentDate = new Date(startTime); currentDate.getTime() <= endTime; currentDate.setDate(currentDate.getDate() + 1)) {
353
741
  if (!isDateDisabled(currentDate, min, max, disabledDates)) {
354
742
  return false;
355
743
  }
@@ -363,9 +751,9 @@ var isMonthDisabled = function (date, min, max, disabledDates) {
363
751
  * @param end - End date.
364
752
  * @returns True if the month is selected, false otherwise.
365
753
  */
366
- var isMonthSelected = function (date, start, end) {
367
- var year = date.getFullYear();
368
- var month = date.getMonth();
754
+ const isMonthSelected = (date, start, end) => {
755
+ const year = date.getFullYear();
756
+ const month = date.getMonth();
369
757
  if (start !== null && year === start.getFullYear() && month === start.getMonth()) {
370
758
  return true;
371
759
  }
@@ -381,13 +769,11 @@ var isMonthSelected = function (date, start, end) {
381
769
  * @param end - End date.
382
770
  * @returns True if the month is within the range, false otherwise.
383
771
  */
384
- var isMonthInRange = function (date, start, end) {
385
- var year = date.getFullYear();
386
- var month = date.getMonth();
387
- var _start = start ? start.getFullYear() * 12 + start.getMonth() : null;
388
- var _end = end ? end.getFullYear() * 12 + end.getMonth() : null;
389
- var _date = year * 12 + month;
390
- return !!(_start && _end && _start <= _date && _date <= _end);
772
+ const isMonthInRange = (date, start, end) => {
773
+ const _start = start ? dateToMonthNumber(start) : null;
774
+ const _end = end ? dateToMonthNumber(end) : null;
775
+ const _date = dateToMonthNumber(date);
776
+ return Boolean(_start && _end && _start <= _date && _date <= _end);
391
777
  };
392
778
  /**
393
779
  * Checks if two dates are the same calendar date.
@@ -395,7 +781,7 @@ var isMonthInRange = function (date, start, end) {
395
781
  * @param date2 - Second date.
396
782
  * @returns True if both dates are the same, false otherwise.
397
783
  */
398
- var isSameDateAs = function (date, date2) {
784
+ const isSameDateAs = (date, date2) => {
399
785
  if (date instanceof Date && date2 instanceof Date) {
400
786
  return (date.getDate() === date2.getDate() &&
401
787
  date.getMonth() === date2.getMonth() &&
@@ -411,8 +797,8 @@ var isSameDateAs = function (date, date2) {
411
797
  * @param date - The date to check.
412
798
  * @returns True if the date is today, false otherwise.
413
799
  */
414
- var isToday = function (date) {
415
- var today = new Date();
800
+ const isToday = (date) => {
801
+ const today = new Date();
416
802
  return isSameDateAs(date, today);
417
803
  };
418
804
  /**
@@ -423,24 +809,21 @@ var isToday = function (date) {
423
809
  * @param disabledDates - Criteria for disabled dates.
424
810
  * @returns True if the year is disabled, false otherwise.
425
811
  */
426
- var isYearDisabled = function (date, min, max, disabledDates) {
427
- var year = date.getFullYear();
428
- var minYear = min ? min.getFullYear() : null;
429
- var maxYear = max ? max.getFullYear() : null;
430
- if (minYear && year < minYear) {
431
- return true;
432
- }
433
- if (maxYear && year > maxYear) {
812
+ const isYearDisabled = (date, min, max, disabledDates) => {
813
+ const year = date.getFullYear();
814
+ const minYear = min ? min.getFullYear() : null;
815
+ const maxYear = max ? max.getFullYear() : null;
816
+ if (isOutsideRange(year, minYear, maxYear)) {
434
817
  return true;
435
818
  }
436
819
  if (disabledDates === undefined) {
437
820
  return false;
438
821
  }
439
- var start = min ? Math.max(date.getTime(), min.getTime()) : date;
440
- var end = max
822
+ const startTime = min ? Math.max(date.getTime(), min.getTime()) : date.getTime();
823
+ const endTime = max
441
824
  ? Math.min(date.getTime(), max.getTime())
442
- : new Date(new Date().getFullYear(), 11, 31);
443
- for (var currentDate = new Date(start); currentDate <= end; currentDate.setDate(currentDate.getDate() + 1)) {
825
+ : new Date(new Date().getFullYear(), 11, 31).getTime();
826
+ for (const currentDate = new Date(startTime); currentDate.getTime() <= endTime; currentDate.setDate(currentDate.getDate() + 1)) {
444
827
  if (!isDateDisabled(currentDate, min, max, disabledDates)) {
445
828
  return false;
446
829
  }
@@ -454,8 +837,8 @@ var isYearDisabled = function (date, min, max, disabledDates) {
454
837
  * @param end - End date.
455
838
  * @returns True if the year matches the start's or end's year, false otherwise.
456
839
  */
457
- var isYearSelected = function (date, start, end) {
458
- var year = date.getFullYear();
840
+ const isYearSelected = (date, start, end) => {
841
+ const year = date.getFullYear();
459
842
  if (start !== null && year === start.getFullYear()) {
460
843
  return true;
461
844
  }
@@ -471,19 +854,19 @@ var isYearSelected = function (date, start, end) {
471
854
  * @param end - End date.
472
855
  * @returns True if the year's value lies between start's year and end's year, false otherwise.
473
856
  */
474
- var isYearInRange = function (date, start, end) {
475
- var year = date.getFullYear();
476
- var _start = start ? start.getFullYear() : null;
477
- var _end = end ? end.getFullYear() : null;
478
- return !!(_start && _end && _start <= year && year <= _end);
857
+ const isYearInRange = (date, start, end) => {
858
+ const year = date.getFullYear();
859
+ const _start = start ? start.getFullYear() : null;
860
+ const _end = end ? end.getFullYear() : null;
861
+ return Boolean(_start && _end && _start <= year && year <= _end);
479
862
  };
480
863
  /**
481
864
  * Removes the time component from a Date object.
482
865
  * @param date - The original date.
483
866
  * @returns A new Date object with the time set to 00:00:00.
484
867
  */
485
- var removeTimeFromDate = function (date) {
486
- var clearedDate = new Date(date);
868
+ const removeTimeFromDate = (date) => {
869
+ const clearedDate = new Date(date);
487
870
  clearedDate.setHours(0, 0, 0, 0);
488
871
  return clearedDate;
489
872
  };
@@ -494,24 +877,57 @@ var removeTimeFromDate = function (date) {
494
877
  * @param {Date | null} source - The date to copy the time from.
495
878
  * @returns {Date} A new Date instance with the date from `target` and time from `source`.
496
879
  */
497
- var setTimeFromDate = function (target, source) {
880
+ const setTimeFromDate = (target, source) => {
498
881
  if (target === null) {
499
882
  return null;
500
883
  }
501
884
  if (!(source instanceof Date)) {
502
885
  return target;
503
886
  }
504
- var result = new Date(target); // create a copy to avoid mutation
887
+ const result = new Date(target); // create a copy to avoid mutation
505
888
  result.setHours(source.getHours(), source.getMinutes(), source.getSeconds(), source.getMilliseconds());
506
889
  return result;
507
890
  };
891
+ /**
892
+ * Parses a year string with smart 2-digit handling.
893
+ * @param yearString - The year string to parse.
894
+ * @returns The parsed year as a number with intelligent century assignment.
895
+ */
896
+ const parseYearSmart = (yearString) => {
897
+ let parsedYear = Number.parseInt(yearString, 10);
898
+ // Handle 2-digit years with intelligent century assignment
899
+ if (parsedYear < 100) {
900
+ const currentYear = new Date().getFullYear();
901
+ const currentCentury = Math.floor(currentYear / 100) * 100;
902
+ parsedYear = currentCentury + parsedYear;
903
+ // If the result is more than 50 years in the future, use previous century
904
+ // This creates a sliding window: for current year 2025, years 76-99 become 1976-1999
905
+ // and years 00-75 become 2000-2075
906
+ if (parsedYear > currentYear + 50) {
907
+ parsedYear -= 100;
908
+ }
909
+ }
910
+ return parsedYear;
911
+ };
912
+ /**
913
+ * Creates a date from year groups.
914
+ * @param groups - The year groups containing year string.
915
+ * @returns A Date object for January 1st of the year.
916
+ */
917
+ const createDateFromYear = (groups) => {
918
+ const { year } = groups;
919
+ const parsedYear = parseYearSmart(year);
920
+ return new Date(parsedYear, 0, 1);
921
+ };
508
922
 
509
923
  exports.convertIsoWeekToDate = convertIsoWeekToDate;
510
924
  exports.convertToDateObject = convertToDateObject;
925
+ exports.createDateFromYear = createDateFromYear;
511
926
  exports.createGroupsInArray = createGroupsInArray;
512
927
  exports.getCalendarDate = getCalendarDate;
513
928
  exports.getDateBySelectionType = getDateBySelectionType;
514
929
  exports.getISOWeekNumberAndYear = getISOWeekNumberAndYear;
930
+ exports.getLocalDateFromString = getLocalDateFromString;
515
931
  exports.getMonthDetails = getMonthDetails;
516
932
  exports.getMonthsNames = getMonthsNames;
517
933
  exports.getSelectableDates = getSelectableDates;
@@ -528,6 +944,7 @@ exports.isToday = isToday;
528
944
  exports.isYearDisabled = isYearDisabled;
529
945
  exports.isYearInRange = isYearInRange;
530
946
  exports.isYearSelected = isYearSelected;
947
+ exports.parseYearSmart = parseYearSmart;
531
948
  exports.removeTimeFromDate = removeTimeFromDate;
532
949
  exports.setTimeFromDate = setTimeFromDate;
533
950
  //# sourceMappingURL=utils.js.map