@coreui/vue-pro 5.12.0 → 5.14.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 (595) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/components/Types.d.ts +5 -0
  3. package/dist/cjs/components/accordion/CAccordion.js.map +1 -1
  4. package/dist/cjs/components/accordion/CAccordionBody.js.map +1 -1
  5. package/dist/cjs/components/accordion/CAccordionButton.js.map +1 -1
  6. package/dist/cjs/components/accordion/CAccordionHeader.js.map +1 -1
  7. package/dist/cjs/components/accordion/CAccordionItem.js.map +1 -1
  8. package/dist/cjs/components/accordion/index.js.map +1 -1
  9. package/dist/cjs/components/alert/CAlert.js.map +1 -1
  10. package/dist/cjs/components/alert/CAlertHeading.js.map +1 -1
  11. package/dist/cjs/components/alert/CAlertLink.js.map +1 -1
  12. package/dist/cjs/components/alert/index.js.map +1 -1
  13. package/dist/cjs/components/autocomplete/CAutocomplete.d.ts +594 -0
  14. package/dist/cjs/components/autocomplete/CAutocomplete.js +724 -0
  15. package/dist/cjs/components/autocomplete/CAutocomplete.js.map +1 -0
  16. package/dist/cjs/components/autocomplete/CAutocompleteOptions.d.ts +50 -0
  17. package/dist/cjs/components/autocomplete/CAutocompleteOptions.js +116 -0
  18. package/dist/cjs/components/autocomplete/CAutocompleteOptions.js.map +1 -0
  19. package/dist/cjs/components/autocomplete/index.d.ts +6 -0
  20. package/dist/cjs/components/autocomplete/index.js +13 -0
  21. package/dist/cjs/components/autocomplete/index.js.map +1 -0
  22. package/dist/cjs/components/autocomplete/types.d.ts +18 -0
  23. package/dist/cjs/components/autocomplete/utils.d.ts +11 -0
  24. package/dist/cjs/components/autocomplete/utils.js +98 -0
  25. package/dist/cjs/components/autocomplete/utils.js.map +1 -0
  26. package/dist/cjs/components/avatar/CAvatar.js.map +1 -1
  27. package/dist/cjs/components/avatar/index.js.map +1 -1
  28. package/dist/cjs/components/backdrop/CBackdrop.js.map +1 -1
  29. package/dist/cjs/components/backdrop/index.js.map +1 -1
  30. package/dist/cjs/components/badge/CBadge.js.map +1 -1
  31. package/dist/cjs/components/badge/index.js.map +1 -1
  32. package/dist/cjs/components/breadcrumb/CBreadcrumb.js.map +1 -1
  33. package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
  34. package/dist/cjs/components/breadcrumb/index.js.map +1 -1
  35. package/dist/cjs/components/button/CButton.js +2 -1
  36. package/dist/cjs/components/button/CButton.js.map +1 -1
  37. package/dist/cjs/components/button/index.js.map +1 -1
  38. package/dist/cjs/components/button-group/CButtonGroup.js.map +1 -1
  39. package/dist/cjs/components/button-group/CButtonToolbar.js.map +1 -1
  40. package/dist/cjs/components/button-group/index.js.map +1 -1
  41. package/dist/cjs/components/calendar/CCalendar.js +5 -7
  42. package/dist/cjs/components/calendar/CCalendar.js.map +1 -1
  43. package/dist/cjs/components/calendar/index.js.map +1 -1
  44. package/dist/cjs/components/calendar/utils.d.ts +19 -5
  45. package/dist/cjs/components/calendar/utils.js +20 -9
  46. package/dist/cjs/components/calendar/utils.js.map +1 -1
  47. package/dist/cjs/components/callout/CCallout.js.map +1 -1
  48. package/dist/cjs/components/callout/index.js.map +1 -1
  49. package/dist/cjs/components/card/CCard.js.map +1 -1
  50. package/dist/cjs/components/card/CCardBody.js.map +1 -1
  51. package/dist/cjs/components/card/CCardFooter.js.map +1 -1
  52. package/dist/cjs/components/card/CCardGroup.js.map +1 -1
  53. package/dist/cjs/components/card/CCardHeader.js.map +1 -1
  54. package/dist/cjs/components/card/CCardImage.js.map +1 -1
  55. package/dist/cjs/components/card/CCardImageOverlay.js.map +1 -1
  56. package/dist/cjs/components/card/CCardLink.js.map +1 -1
  57. package/dist/cjs/components/card/CCardSubtitle.js.map +1 -1
  58. package/dist/cjs/components/card/CCardText.js.map +1 -1
  59. package/dist/cjs/components/card/CCardTitle.js.map +1 -1
  60. package/dist/cjs/components/card/index.js.map +1 -1
  61. package/dist/cjs/components/carousel/CCarousel.js.map +1 -1
  62. package/dist/cjs/components/carousel/CCarouselCaption.js.map +1 -1
  63. package/dist/cjs/components/carousel/CCarouselItem.js.map +1 -1
  64. package/dist/cjs/components/carousel/index.js.map +1 -1
  65. package/dist/cjs/components/close-button/CCloseButton.js.map +1 -1
  66. package/dist/cjs/components/close-button/index.js.map +1 -1
  67. package/dist/cjs/components/collapse/CCollapse.js.map +1 -1
  68. package/dist/cjs/components/collapse/__test__/CCollapse.spec.d.ts +1 -0
  69. package/dist/cjs/components/collapse/index.js.map +1 -1
  70. package/dist/cjs/components/conditional-teleport/CConditionalTeleport.js.map +1 -1
  71. package/dist/cjs/components/conditional-teleport/index.js.map +1 -1
  72. package/dist/cjs/components/date-picker/CDatePicker.d.ts +23 -4
  73. package/dist/cjs/components/date-picker/CDatePicker.js +9 -0
  74. package/dist/cjs/components/date-picker/CDatePicker.js.map +1 -1
  75. package/dist/cjs/components/date-picker/index.js.map +1 -1
  76. package/dist/cjs/components/date-range-picker/CDateRangePicker.d.ts +26 -7
  77. package/dist/cjs/components/date-range-picker/CDateRangePicker.js +22 -6
  78. package/dist/cjs/components/date-range-picker/CDateRangePicker.js.map +1 -1
  79. package/dist/cjs/components/date-range-picker/index.js.map +1 -1
  80. package/dist/cjs/components/date-range-picker/utils.js.map +1 -1
  81. package/dist/cjs/components/dropdown/CDropdown.d.ts +1 -1
  82. package/dist/cjs/components/dropdown/CDropdown.js.map +1 -1
  83. package/dist/cjs/components/dropdown/CDropdownDivider.js.map +1 -1
  84. package/dist/cjs/components/dropdown/CDropdownHeader.js.map +1 -1
  85. package/dist/cjs/components/dropdown/CDropdownItem.js.map +1 -1
  86. package/dist/cjs/components/dropdown/CDropdownMenu.js.map +1 -1
  87. package/dist/cjs/components/dropdown/CDropdownToggle.d.ts +1 -1
  88. package/dist/cjs/components/dropdown/CDropdownToggle.js.map +1 -1
  89. package/dist/cjs/components/dropdown/index.js.map +1 -1
  90. package/dist/cjs/components/dropdown/utils.js.map +1 -1
  91. package/dist/cjs/components/element-cover/CElementCover.js.map +1 -1
  92. package/dist/cjs/components/element-cover/index.js.map +1 -1
  93. package/dist/cjs/components/footer/CFooter.js.map +1 -1
  94. package/dist/cjs/components/footer/index.js.map +1 -1
  95. package/dist/cjs/components/form/CForm.js.map +1 -1
  96. package/dist/cjs/components/form/CFormCheck.js.map +1 -1
  97. package/dist/cjs/components/form/CFormControlValidation.js.map +1 -1
  98. package/dist/cjs/components/form/CFormControlWrapper.js.map +1 -1
  99. package/dist/cjs/components/form/CFormFeedback.js.map +1 -1
  100. package/dist/cjs/components/form/CFormFloating.js.map +1 -1
  101. package/dist/cjs/components/form/CFormInput.js.map +1 -1
  102. package/dist/cjs/components/form/CFormLabel.js.map +1 -1
  103. package/dist/cjs/components/form/CFormRange.js.map +1 -1
  104. package/dist/cjs/components/form/CFormSelect.js.map +1 -1
  105. package/dist/cjs/components/form/CFormSwitch.js.map +1 -1
  106. package/dist/cjs/components/form/CFormText.js.map +1 -1
  107. package/dist/cjs/components/form/CFormTextarea.js.map +1 -1
  108. package/dist/cjs/components/form/CInputGroup.js.map +1 -1
  109. package/dist/cjs/components/form/CInputGroupText.js.map +1 -1
  110. package/dist/cjs/components/form/index.js.map +1 -1
  111. package/dist/cjs/components/grid/CCol.js.map +1 -1
  112. package/dist/cjs/components/grid/CContainer.d.ts +1 -1
  113. package/dist/cjs/components/grid/CContainer.js.map +1 -1
  114. package/dist/cjs/components/grid/CRow.js.map +1 -1
  115. package/dist/cjs/components/grid/index.js.map +1 -1
  116. package/dist/cjs/components/header/CHeader.js.map +1 -1
  117. package/dist/cjs/components/header/CHeaderBrand.js.map +1 -1
  118. package/dist/cjs/components/header/CHeaderDivider.js.map +1 -1
  119. package/dist/cjs/components/header/CHeaderNav.js.map +1 -1
  120. package/dist/cjs/components/header/CHeaderText.js.map +1 -1
  121. package/dist/cjs/components/header/CHeaderToggler.js.map +1 -1
  122. package/dist/cjs/components/header/index.js.map +1 -1
  123. package/dist/cjs/components/image/CImage.js.map +1 -1
  124. package/dist/cjs/components/image/index.js.map +1 -1
  125. package/dist/cjs/components/index.d.ts +1 -0
  126. package/dist/cjs/components/index.js +104 -100
  127. package/dist/cjs/components/index.js.map +1 -1
  128. package/dist/cjs/components/link/CLink.js.map +1 -1
  129. package/dist/cjs/components/link/index.js.map +1 -1
  130. package/dist/cjs/components/list-group/CListGroup.js.map +1 -1
  131. package/dist/cjs/components/list-group/CListGroupItem.js.map +1 -1
  132. package/dist/cjs/components/list-group/index.js.map +1 -1
  133. package/dist/cjs/components/loading-button/CLoadingButton.js.map +1 -1
  134. package/dist/cjs/components/loading-button/index.js.map +1 -1
  135. package/dist/cjs/components/modal/CModal.js.map +1 -1
  136. package/dist/cjs/components/modal/CModalBody.js.map +1 -1
  137. package/dist/cjs/components/modal/CModalFooter.js.map +1 -1
  138. package/dist/cjs/components/modal/CModalHeader.js.map +1 -1
  139. package/dist/cjs/components/modal/CModalTitle.js.map +1 -1
  140. package/dist/cjs/components/modal/index.js.map +1 -1
  141. package/dist/cjs/components/multi-select/CMultiSelect.d.ts +30 -11
  142. package/dist/cjs/components/multi-select/CMultiSelect.js +164 -143
  143. package/dist/cjs/components/multi-select/CMultiSelect.js.map +1 -1
  144. package/dist/cjs/components/multi-select/CMultiSelectNativeSelect.d.ts +1 -1
  145. package/dist/cjs/components/multi-select/CMultiSelectNativeSelect.js.map +1 -1
  146. package/dist/cjs/components/multi-select/CMultiSelectOptions.d.ts +2 -2
  147. package/dist/cjs/components/multi-select/CMultiSelectOptions.js +6 -3
  148. package/dist/cjs/components/multi-select/CMultiSelectOptions.js.map +1 -1
  149. package/dist/cjs/components/multi-select/CMultiSelectSelection.d.ts +1 -1
  150. package/dist/cjs/components/multi-select/CMultiSelectSelection.js.map +1 -1
  151. package/dist/cjs/components/multi-select/index.js.map +1 -1
  152. package/dist/cjs/components/multi-select/utils.d.ts +0 -2
  153. package/dist/cjs/components/multi-select/utils.js +0 -26
  154. package/dist/cjs/components/multi-select/utils.js.map +1 -1
  155. package/dist/cjs/components/nav/CNav.js.map +1 -1
  156. package/dist/cjs/components/nav/CNavGroup.js.map +1 -1
  157. package/dist/cjs/components/nav/CNavGroupItems.js.map +1 -1
  158. package/dist/cjs/components/nav/CNavItem.js.map +1 -1
  159. package/dist/cjs/components/nav/CNavLink.js.map +1 -1
  160. package/dist/cjs/components/nav/CNavTitle.js.map +1 -1
  161. package/dist/cjs/components/nav/index.js.map +1 -1
  162. package/dist/cjs/components/navbar/CNavbar.js.map +1 -1
  163. package/dist/cjs/components/navbar/CNavbarBrand.js.map +1 -1
  164. package/dist/cjs/components/navbar/CNavbarNav.js.map +1 -1
  165. package/dist/cjs/components/navbar/CNavbarText.js.map +1 -1
  166. package/dist/cjs/components/navbar/CNavbarToggler.js.map +1 -1
  167. package/dist/cjs/components/navbar/index.js.map +1 -1
  168. package/dist/cjs/components/offcanvas/COffcanvas.js.map +1 -1
  169. package/dist/cjs/components/offcanvas/COffcanvasBody.js.map +1 -1
  170. package/dist/cjs/components/offcanvas/COffcanvasHeader.js.map +1 -1
  171. package/dist/cjs/components/offcanvas/COffcanvasTitle.js.map +1 -1
  172. package/dist/cjs/components/offcanvas/index.js.map +1 -1
  173. package/dist/cjs/components/pagination/CPagination.js.map +1 -1
  174. package/dist/cjs/components/pagination/CPaginationItem.js.map +1 -1
  175. package/dist/cjs/components/pagination/index.js.map +1 -1
  176. package/dist/cjs/components/password-input/CPasswordInput.js.map +1 -1
  177. package/dist/cjs/components/password-input/index.js.map +1 -1
  178. package/dist/cjs/components/picker/CPicker.js.map +1 -1
  179. package/dist/cjs/components/picker/index.js.map +1 -1
  180. package/dist/cjs/components/placeholder/CPlaceholder.js.map +1 -1
  181. package/dist/cjs/components/placeholder/index.js.map +1 -1
  182. package/dist/cjs/components/popover/CPopover.d.ts +1 -1
  183. package/dist/cjs/components/popover/CPopover.js.map +1 -1
  184. package/dist/cjs/components/popover/index.js.map +1 -1
  185. package/dist/cjs/components/progress/CProgress.js.map +1 -1
  186. package/dist/cjs/components/progress/CProgressBar.js.map +1 -1
  187. package/dist/cjs/components/progress/CProgressStacked.js.map +1 -1
  188. package/dist/cjs/components/progress/index.js.map +1 -1
  189. package/dist/cjs/components/props.js.map +1 -1
  190. package/dist/cjs/components/range-slider/CRangeSlider.js.map +1 -1
  191. package/dist/cjs/components/range-slider/index.js.map +1 -1
  192. package/dist/cjs/components/range-slider/utils.js.map +1 -1
  193. package/dist/cjs/components/rating/CRating.d.ts +1 -1
  194. package/dist/cjs/components/rating/CRating.js.map +1 -1
  195. package/dist/cjs/components/rating/index.js.map +1 -1
  196. package/dist/cjs/components/sidebar/CSidebar.d.ts +1 -1
  197. package/dist/cjs/components/sidebar/CSidebar.js.map +1 -1
  198. package/dist/cjs/components/sidebar/CSidebarBrand.js.map +1 -1
  199. package/dist/cjs/components/sidebar/CSidebarFooter.js.map +1 -1
  200. package/dist/cjs/components/sidebar/CSidebarHeader.js.map +1 -1
  201. package/dist/cjs/components/sidebar/CSidebarNav.js.map +1 -1
  202. package/dist/cjs/components/sidebar/CSidebarToggler.js.map +1 -1
  203. package/dist/cjs/components/sidebar/index.js.map +1 -1
  204. package/dist/cjs/components/smart-pagination/CSmartPagination.js.map +1 -1
  205. package/dist/cjs/components/smart-pagination/index.js.map +1 -1
  206. package/dist/cjs/components/smart-table/CSmartTable.d.ts +1 -1
  207. package/dist/cjs/components/smart-table/CSmartTable.js.map +1 -1
  208. package/dist/cjs/components/smart-table/CSmartTableBody.js.map +1 -1
  209. package/dist/cjs/components/smart-table/CSmartTableCleaner.d.ts +20 -0
  210. package/dist/cjs/components/smart-table/CSmartTableHead.js.map +1 -1
  211. package/dist/cjs/components/smart-table/CSmartTableInterface.d.ts +58 -0
  212. package/dist/cjs/components/smart-table/index.js.map +1 -1
  213. package/dist/cjs/components/smart-table/utils.js.map +1 -1
  214. package/dist/cjs/components/spinner/CSpinner.js.map +1 -1
  215. package/dist/cjs/components/spinner/index.js.map +1 -1
  216. package/dist/cjs/components/stepper/CStepper.js.map +1 -1
  217. package/dist/cjs/components/stepper/index.js.map +1 -1
  218. package/dist/cjs/components/table/CTable.js.map +1 -1
  219. package/dist/cjs/components/table/CTableBody.js.map +1 -1
  220. package/dist/cjs/components/table/CTableCaption.js.map +1 -1
  221. package/dist/cjs/components/table/CTableDataCell.js.map +1 -1
  222. package/dist/cjs/components/table/CTableFoot.js.map +1 -1
  223. package/dist/cjs/components/table/CTableHead.js.map +1 -1
  224. package/dist/cjs/components/table/CTableHeaderCell.js.map +1 -1
  225. package/dist/cjs/components/table/CTableRow.js.map +1 -1
  226. package/dist/cjs/components/table/index.js.map +1 -1
  227. package/dist/cjs/components/table/utils.js.map +1 -1
  228. package/dist/cjs/components/tabs/CTab.js.map +1 -1
  229. package/dist/cjs/components/tabs/CTabContent.js.map +1 -1
  230. package/dist/cjs/components/tabs/CTabList.js.map +1 -1
  231. package/dist/cjs/components/tabs/CTabPane.js.map +1 -1
  232. package/dist/cjs/components/tabs/CTabPanel.js.map +1 -1
  233. package/dist/cjs/components/tabs/CTabs.js.map +1 -1
  234. package/dist/cjs/components/tabs/index.js.map +1 -1
  235. package/dist/cjs/components/time-picker/CTimePicker.d.ts +5 -5
  236. package/dist/cjs/components/time-picker/CTimePicker.js +14 -1
  237. package/dist/cjs/components/time-picker/CTimePicker.js.map +1 -1
  238. package/dist/cjs/components/time-picker/CTimePickerRollCol.js.map +1 -1
  239. package/dist/cjs/components/time-picker/index.js.map +1 -1
  240. package/dist/cjs/components/time-picker/utils.js.map +1 -1
  241. package/dist/cjs/components/toast/CToast.js.map +1 -1
  242. package/dist/cjs/components/toast/CToastBody.js.map +1 -1
  243. package/dist/cjs/components/toast/CToastClose.js.map +1 -1
  244. package/dist/cjs/components/toast/CToastHeader.js.map +1 -1
  245. package/dist/cjs/components/toast/CToaster.js.map +1 -1
  246. package/dist/cjs/components/toast/index.js.map +1 -1
  247. package/dist/cjs/components/tooltip/CTooltip.d.ts +1 -1
  248. package/dist/cjs/components/tooltip/CTooltip.js.map +1 -1
  249. package/dist/cjs/components/tooltip/index.js.map +1 -1
  250. package/dist/cjs/components/virtual-scroller/CVirtualScroller.js.map +1 -1
  251. package/dist/cjs/components/virtual-scroller/index.js.map +1 -1
  252. package/dist/cjs/components/widgets/CWidgetStatsA.js.map +1 -1
  253. package/dist/cjs/components/widgets/CWidgetStatsB.js.map +1 -1
  254. package/dist/cjs/components/widgets/CWidgetStatsC.js.map +1 -1
  255. package/dist/cjs/components/widgets/CWidgetStatsD.js.map +1 -1
  256. package/dist/cjs/components/widgets/CWidgetStatsE.js.map +1 -1
  257. package/dist/cjs/components/widgets/CWidgetStatsF.js.map +1 -1
  258. package/dist/cjs/components/widgets/index.js.map +1 -1
  259. package/dist/cjs/composables/useColorModes.js.map +1 -1
  260. package/dist/cjs/composables/useDebouncedCallback.js.map +1 -1
  261. package/dist/cjs/composables/useDropdownWithPopper.js.map +1 -1
  262. package/dist/cjs/composables/useIsVisible.js.map +1 -1
  263. package/dist/cjs/composables/usePopper.js.map +1 -1
  264. package/dist/cjs/composables/useUniqueId.js.map +1 -1
  265. package/dist/cjs/directives/v-c-placeholder.js.map +1 -1
  266. package/dist/cjs/directives/v-c-popover.js.map +1 -1
  267. package/dist/cjs/directives/v-c-tooltip.js.map +1 -1
  268. package/dist/cjs/directives/v-c-visible.js.map +1 -1
  269. package/dist/cjs/index.js +110 -106
  270. package/dist/cjs/index.js.map +1 -1
  271. package/dist/cjs/node_modules/@coreui/icons-vue/dist/index.es.js.map +1 -1
  272. package/dist/cjs/node_modules/vue-types/dist/index.js.map +1 -1
  273. package/dist/cjs/node_modules/vue-types/dist/shared/vue-types.8139b772.js.map +1 -1
  274. package/dist/cjs/props.js.map +1 -1
  275. package/dist/cjs/utils/getNextActiveElement.js.map +1 -1
  276. package/dist/cjs/utils/getNextSibling.d.ts +2 -0
  277. package/dist/cjs/utils/getNextSibling.js +23 -0
  278. package/dist/cjs/utils/getNextSibling.js.map +1 -0
  279. package/dist/cjs/utils/getPreviousSibling.d.ts +2 -0
  280. package/dist/cjs/utils/getPreviousSibling.js +22 -0
  281. package/dist/cjs/utils/getPreviousSibling.js.map +1 -0
  282. package/dist/cjs/utils/getRTLPlacement.js.map +1 -1
  283. package/dist/cjs/utils/index.d.ts +3 -1
  284. package/dist/cjs/utils/isEqual.js.map +1 -1
  285. package/dist/cjs/utils/isObjectInArray.js.map +1 -1
  286. package/dist/cjs/utils/isRTL.js.map +1 -1
  287. package/dist/cjs/utils/transition.js.map +1 -1
  288. package/dist/esm/components/Types.d.ts +5 -0
  289. package/dist/esm/components/accordion/CAccordion.js.map +1 -1
  290. package/dist/esm/components/accordion/CAccordionBody.js.map +1 -1
  291. package/dist/esm/components/accordion/CAccordionButton.js.map +1 -1
  292. package/dist/esm/components/accordion/CAccordionHeader.js.map +1 -1
  293. package/dist/esm/components/accordion/CAccordionItem.js.map +1 -1
  294. package/dist/esm/components/accordion/index.js.map +1 -1
  295. package/dist/esm/components/alert/CAlert.js.map +1 -1
  296. package/dist/esm/components/alert/CAlertHeading.js.map +1 -1
  297. package/dist/esm/components/alert/CAlertLink.js.map +1 -1
  298. package/dist/esm/components/alert/index.js.map +1 -1
  299. package/dist/esm/components/autocomplete/CAutocomplete.d.ts +594 -0
  300. package/dist/esm/components/autocomplete/CAutocomplete.js +722 -0
  301. package/dist/esm/components/autocomplete/CAutocomplete.js.map +1 -0
  302. package/dist/esm/components/autocomplete/CAutocompleteOptions.d.ts +50 -0
  303. package/dist/esm/components/autocomplete/CAutocompleteOptions.js +114 -0
  304. package/dist/esm/components/autocomplete/CAutocompleteOptions.js.map +1 -0
  305. package/dist/esm/components/autocomplete/index.d.ts +6 -0
  306. package/dist/esm/components/autocomplete/index.js +10 -0
  307. package/dist/esm/components/autocomplete/index.js.map +1 -0
  308. package/dist/esm/components/autocomplete/types.d.ts +18 -0
  309. package/dist/esm/components/autocomplete/utils.d.ts +11 -0
  310. package/dist/esm/components/autocomplete/utils.js +87 -0
  311. package/dist/esm/components/autocomplete/utils.js.map +1 -0
  312. package/dist/esm/components/avatar/CAvatar.js.map +1 -1
  313. package/dist/esm/components/avatar/index.js.map +1 -1
  314. package/dist/esm/components/backdrop/CBackdrop.js.map +1 -1
  315. package/dist/esm/components/backdrop/index.js.map +1 -1
  316. package/dist/esm/components/badge/CBadge.js.map +1 -1
  317. package/dist/esm/components/badge/index.js.map +1 -1
  318. package/dist/esm/components/breadcrumb/CBreadcrumb.js.map +1 -1
  319. package/dist/esm/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
  320. package/dist/esm/components/breadcrumb/index.js.map +1 -1
  321. package/dist/esm/components/button/CButton.js +2 -1
  322. package/dist/esm/components/button/CButton.js.map +1 -1
  323. package/dist/esm/components/button/index.js.map +1 -1
  324. package/dist/esm/components/button-group/CButtonGroup.js.map +1 -1
  325. package/dist/esm/components/button-group/CButtonToolbar.js.map +1 -1
  326. package/dist/esm/components/button-group/index.js.map +1 -1
  327. package/dist/esm/components/calendar/CCalendar.js +5 -7
  328. package/dist/esm/components/calendar/CCalendar.js.map +1 -1
  329. package/dist/esm/components/calendar/index.js.map +1 -1
  330. package/dist/esm/components/calendar/utils.d.ts +19 -5
  331. package/dist/esm/components/calendar/utils.js +20 -9
  332. package/dist/esm/components/calendar/utils.js.map +1 -1
  333. package/dist/esm/components/callout/CCallout.js.map +1 -1
  334. package/dist/esm/components/callout/index.js.map +1 -1
  335. package/dist/esm/components/card/CCard.js.map +1 -1
  336. package/dist/esm/components/card/CCardBody.js.map +1 -1
  337. package/dist/esm/components/card/CCardFooter.js.map +1 -1
  338. package/dist/esm/components/card/CCardGroup.js.map +1 -1
  339. package/dist/esm/components/card/CCardHeader.js.map +1 -1
  340. package/dist/esm/components/card/CCardImage.js.map +1 -1
  341. package/dist/esm/components/card/CCardImageOverlay.js.map +1 -1
  342. package/dist/esm/components/card/CCardLink.js.map +1 -1
  343. package/dist/esm/components/card/CCardSubtitle.js.map +1 -1
  344. package/dist/esm/components/card/CCardText.js.map +1 -1
  345. package/dist/esm/components/card/CCardTitle.js.map +1 -1
  346. package/dist/esm/components/card/index.js.map +1 -1
  347. package/dist/esm/components/carousel/CCarousel.js.map +1 -1
  348. package/dist/esm/components/carousel/CCarouselCaption.js.map +1 -1
  349. package/dist/esm/components/carousel/CCarouselItem.js.map +1 -1
  350. package/dist/esm/components/carousel/index.js.map +1 -1
  351. package/dist/esm/components/close-button/CCloseButton.js.map +1 -1
  352. package/dist/esm/components/close-button/index.js.map +1 -1
  353. package/dist/esm/components/collapse/CCollapse.js.map +1 -1
  354. package/dist/esm/components/collapse/__test__/CCollapse.spec.d.ts +1 -0
  355. package/dist/esm/components/collapse/index.js.map +1 -1
  356. package/dist/esm/components/conditional-teleport/CConditionalTeleport.js.map +1 -1
  357. package/dist/esm/components/conditional-teleport/index.js.map +1 -1
  358. package/dist/esm/components/date-picker/CDatePicker.d.ts +23 -4
  359. package/dist/esm/components/date-picker/CDatePicker.js +9 -0
  360. package/dist/esm/components/date-picker/CDatePicker.js.map +1 -1
  361. package/dist/esm/components/date-picker/index.js.map +1 -1
  362. package/dist/esm/components/date-range-picker/CDateRangePicker.d.ts +26 -7
  363. package/dist/esm/components/date-range-picker/CDateRangePicker.js +22 -6
  364. package/dist/esm/components/date-range-picker/CDateRangePicker.js.map +1 -1
  365. package/dist/esm/components/date-range-picker/index.js.map +1 -1
  366. package/dist/esm/components/date-range-picker/utils.js.map +1 -1
  367. package/dist/esm/components/dropdown/CDropdown.d.ts +1 -1
  368. package/dist/esm/components/dropdown/CDropdown.js.map +1 -1
  369. package/dist/esm/components/dropdown/CDropdownDivider.js.map +1 -1
  370. package/dist/esm/components/dropdown/CDropdownHeader.js.map +1 -1
  371. package/dist/esm/components/dropdown/CDropdownItem.js.map +1 -1
  372. package/dist/esm/components/dropdown/CDropdownMenu.js.map +1 -1
  373. package/dist/esm/components/dropdown/CDropdownToggle.d.ts +1 -1
  374. package/dist/esm/components/dropdown/CDropdownToggle.js.map +1 -1
  375. package/dist/esm/components/dropdown/index.js.map +1 -1
  376. package/dist/esm/components/dropdown/utils.js.map +1 -1
  377. package/dist/esm/components/element-cover/CElementCover.js.map +1 -1
  378. package/dist/esm/components/element-cover/index.js.map +1 -1
  379. package/dist/esm/components/footer/CFooter.js.map +1 -1
  380. package/dist/esm/components/footer/index.js.map +1 -1
  381. package/dist/esm/components/form/CForm.js.map +1 -1
  382. package/dist/esm/components/form/CFormCheck.js.map +1 -1
  383. package/dist/esm/components/form/CFormControlValidation.js.map +1 -1
  384. package/dist/esm/components/form/CFormControlWrapper.js.map +1 -1
  385. package/dist/esm/components/form/CFormFeedback.js.map +1 -1
  386. package/dist/esm/components/form/CFormFloating.js.map +1 -1
  387. package/dist/esm/components/form/CFormInput.js.map +1 -1
  388. package/dist/esm/components/form/CFormLabel.js.map +1 -1
  389. package/dist/esm/components/form/CFormRange.js.map +1 -1
  390. package/dist/esm/components/form/CFormSelect.js.map +1 -1
  391. package/dist/esm/components/form/CFormSwitch.js.map +1 -1
  392. package/dist/esm/components/form/CFormText.js.map +1 -1
  393. package/dist/esm/components/form/CFormTextarea.js.map +1 -1
  394. package/dist/esm/components/form/CInputGroup.js.map +1 -1
  395. package/dist/esm/components/form/CInputGroupText.js.map +1 -1
  396. package/dist/esm/components/form/index.js.map +1 -1
  397. package/dist/esm/components/grid/CCol.js.map +1 -1
  398. package/dist/esm/components/grid/CContainer.d.ts +1 -1
  399. package/dist/esm/components/grid/CContainer.js.map +1 -1
  400. package/dist/esm/components/grid/CRow.js.map +1 -1
  401. package/dist/esm/components/grid/index.js.map +1 -1
  402. package/dist/esm/components/header/CHeader.js.map +1 -1
  403. package/dist/esm/components/header/CHeaderBrand.js.map +1 -1
  404. package/dist/esm/components/header/CHeaderDivider.js.map +1 -1
  405. package/dist/esm/components/header/CHeaderNav.js.map +1 -1
  406. package/dist/esm/components/header/CHeaderText.js.map +1 -1
  407. package/dist/esm/components/header/CHeaderToggler.js.map +1 -1
  408. package/dist/esm/components/header/index.js.map +1 -1
  409. package/dist/esm/components/image/CImage.js.map +1 -1
  410. package/dist/esm/components/image/index.js.map +1 -1
  411. package/dist/esm/components/index.d.ts +1 -0
  412. package/dist/esm/components/index.js +2 -0
  413. package/dist/esm/components/index.js.map +1 -1
  414. package/dist/esm/components/link/CLink.js.map +1 -1
  415. package/dist/esm/components/link/index.js.map +1 -1
  416. package/dist/esm/components/list-group/CListGroup.js.map +1 -1
  417. package/dist/esm/components/list-group/CListGroupItem.js.map +1 -1
  418. package/dist/esm/components/list-group/index.js.map +1 -1
  419. package/dist/esm/components/loading-button/CLoadingButton.js.map +1 -1
  420. package/dist/esm/components/loading-button/index.js.map +1 -1
  421. package/dist/esm/components/modal/CModal.js.map +1 -1
  422. package/dist/esm/components/modal/CModalBody.js.map +1 -1
  423. package/dist/esm/components/modal/CModalFooter.js.map +1 -1
  424. package/dist/esm/components/modal/CModalHeader.js.map +1 -1
  425. package/dist/esm/components/modal/CModalTitle.js.map +1 -1
  426. package/dist/esm/components/modal/index.js.map +1 -1
  427. package/dist/esm/components/multi-select/CMultiSelect.d.ts +30 -11
  428. package/dist/esm/components/multi-select/CMultiSelect.js +165 -144
  429. package/dist/esm/components/multi-select/CMultiSelect.js.map +1 -1
  430. package/dist/esm/components/multi-select/CMultiSelectNativeSelect.d.ts +1 -1
  431. package/dist/esm/components/multi-select/CMultiSelectNativeSelect.js.map +1 -1
  432. package/dist/esm/components/multi-select/CMultiSelectOptions.d.ts +2 -2
  433. package/dist/esm/components/multi-select/CMultiSelectOptions.js +4 -1
  434. package/dist/esm/components/multi-select/CMultiSelectOptions.js.map +1 -1
  435. package/dist/esm/components/multi-select/CMultiSelectSelection.d.ts +1 -1
  436. package/dist/esm/components/multi-select/CMultiSelectSelection.js.map +1 -1
  437. package/dist/esm/components/multi-select/index.js.map +1 -1
  438. package/dist/esm/components/multi-select/utils.d.ts +0 -2
  439. package/dist/esm/components/multi-select/utils.js +1 -25
  440. package/dist/esm/components/multi-select/utils.js.map +1 -1
  441. package/dist/esm/components/nav/CNav.js.map +1 -1
  442. package/dist/esm/components/nav/CNavGroup.js.map +1 -1
  443. package/dist/esm/components/nav/CNavGroupItems.js.map +1 -1
  444. package/dist/esm/components/nav/CNavItem.js.map +1 -1
  445. package/dist/esm/components/nav/CNavLink.js.map +1 -1
  446. package/dist/esm/components/nav/CNavTitle.js.map +1 -1
  447. package/dist/esm/components/nav/index.js.map +1 -1
  448. package/dist/esm/components/navbar/CNavbar.js.map +1 -1
  449. package/dist/esm/components/navbar/CNavbarBrand.js.map +1 -1
  450. package/dist/esm/components/navbar/CNavbarNav.js.map +1 -1
  451. package/dist/esm/components/navbar/CNavbarText.js.map +1 -1
  452. package/dist/esm/components/navbar/CNavbarToggler.js.map +1 -1
  453. package/dist/esm/components/navbar/index.js.map +1 -1
  454. package/dist/esm/components/offcanvas/COffcanvas.js.map +1 -1
  455. package/dist/esm/components/offcanvas/COffcanvasBody.js.map +1 -1
  456. package/dist/esm/components/offcanvas/COffcanvasHeader.js.map +1 -1
  457. package/dist/esm/components/offcanvas/COffcanvasTitle.js.map +1 -1
  458. package/dist/esm/components/offcanvas/index.js.map +1 -1
  459. package/dist/esm/components/pagination/CPagination.js.map +1 -1
  460. package/dist/esm/components/pagination/CPaginationItem.js.map +1 -1
  461. package/dist/esm/components/pagination/index.js.map +1 -1
  462. package/dist/esm/components/password-input/CPasswordInput.js.map +1 -1
  463. package/dist/esm/components/password-input/index.js.map +1 -1
  464. package/dist/esm/components/picker/CPicker.js.map +1 -1
  465. package/dist/esm/components/picker/index.js.map +1 -1
  466. package/dist/esm/components/placeholder/CPlaceholder.js.map +1 -1
  467. package/dist/esm/components/placeholder/index.js.map +1 -1
  468. package/dist/esm/components/popover/CPopover.d.ts +1 -1
  469. package/dist/esm/components/popover/CPopover.js.map +1 -1
  470. package/dist/esm/components/popover/index.js.map +1 -1
  471. package/dist/esm/components/progress/CProgress.js.map +1 -1
  472. package/dist/esm/components/progress/CProgressBar.js.map +1 -1
  473. package/dist/esm/components/progress/CProgressStacked.js.map +1 -1
  474. package/dist/esm/components/progress/index.js.map +1 -1
  475. package/dist/esm/components/props.js.map +1 -1
  476. package/dist/esm/components/range-slider/CRangeSlider.js.map +1 -1
  477. package/dist/esm/components/range-slider/index.js.map +1 -1
  478. package/dist/esm/components/range-slider/utils.js.map +1 -1
  479. package/dist/esm/components/rating/CRating.d.ts +1 -1
  480. package/dist/esm/components/rating/CRating.js.map +1 -1
  481. package/dist/esm/components/rating/index.js.map +1 -1
  482. package/dist/esm/components/sidebar/CSidebar.d.ts +1 -1
  483. package/dist/esm/components/sidebar/CSidebar.js.map +1 -1
  484. package/dist/esm/components/sidebar/CSidebarBrand.js.map +1 -1
  485. package/dist/esm/components/sidebar/CSidebarFooter.js.map +1 -1
  486. package/dist/esm/components/sidebar/CSidebarHeader.js.map +1 -1
  487. package/dist/esm/components/sidebar/CSidebarNav.js.map +1 -1
  488. package/dist/esm/components/sidebar/CSidebarToggler.js.map +1 -1
  489. package/dist/esm/components/sidebar/index.js.map +1 -1
  490. package/dist/esm/components/smart-pagination/CSmartPagination.js.map +1 -1
  491. package/dist/esm/components/smart-pagination/index.js.map +1 -1
  492. package/dist/esm/components/smart-table/CSmartTable.d.ts +1 -1
  493. package/dist/esm/components/smart-table/CSmartTable.js.map +1 -1
  494. package/dist/esm/components/smart-table/CSmartTableBody.js.map +1 -1
  495. package/dist/esm/components/smart-table/CSmartTableCleaner.d.ts +20 -0
  496. package/dist/esm/components/smart-table/CSmartTableHead.js.map +1 -1
  497. package/dist/esm/components/smart-table/CSmartTableInterface.d.ts +58 -0
  498. package/dist/esm/components/smart-table/index.js.map +1 -1
  499. package/dist/esm/components/smart-table/utils.js.map +1 -1
  500. package/dist/esm/components/spinner/CSpinner.js.map +1 -1
  501. package/dist/esm/components/spinner/index.js.map +1 -1
  502. package/dist/esm/components/stepper/CStepper.js.map +1 -1
  503. package/dist/esm/components/stepper/index.js.map +1 -1
  504. package/dist/esm/components/table/CTable.js.map +1 -1
  505. package/dist/esm/components/table/CTableBody.js.map +1 -1
  506. package/dist/esm/components/table/CTableCaption.js.map +1 -1
  507. package/dist/esm/components/table/CTableDataCell.js.map +1 -1
  508. package/dist/esm/components/table/CTableFoot.js.map +1 -1
  509. package/dist/esm/components/table/CTableHead.js.map +1 -1
  510. package/dist/esm/components/table/CTableHeaderCell.js.map +1 -1
  511. package/dist/esm/components/table/CTableRow.js.map +1 -1
  512. package/dist/esm/components/table/index.js.map +1 -1
  513. package/dist/esm/components/table/utils.js.map +1 -1
  514. package/dist/esm/components/tabs/CTab.js.map +1 -1
  515. package/dist/esm/components/tabs/CTabContent.js.map +1 -1
  516. package/dist/esm/components/tabs/CTabList.js.map +1 -1
  517. package/dist/esm/components/tabs/CTabPane.js.map +1 -1
  518. package/dist/esm/components/tabs/CTabPanel.js.map +1 -1
  519. package/dist/esm/components/tabs/CTabs.js.map +1 -1
  520. package/dist/esm/components/tabs/index.js.map +1 -1
  521. package/dist/esm/components/time-picker/CTimePicker.d.ts +5 -5
  522. package/dist/esm/components/time-picker/CTimePicker.js +14 -1
  523. package/dist/esm/components/time-picker/CTimePicker.js.map +1 -1
  524. package/dist/esm/components/time-picker/CTimePickerRollCol.js.map +1 -1
  525. package/dist/esm/components/time-picker/index.js.map +1 -1
  526. package/dist/esm/components/time-picker/utils.js.map +1 -1
  527. package/dist/esm/components/toast/CToast.js.map +1 -1
  528. package/dist/esm/components/toast/CToastBody.js.map +1 -1
  529. package/dist/esm/components/toast/CToastClose.js.map +1 -1
  530. package/dist/esm/components/toast/CToastHeader.js.map +1 -1
  531. package/dist/esm/components/toast/CToaster.js.map +1 -1
  532. package/dist/esm/components/toast/index.js.map +1 -1
  533. package/dist/esm/components/tooltip/CTooltip.d.ts +1 -1
  534. package/dist/esm/components/tooltip/CTooltip.js.map +1 -1
  535. package/dist/esm/components/tooltip/index.js.map +1 -1
  536. package/dist/esm/components/virtual-scroller/CVirtualScroller.js.map +1 -1
  537. package/dist/esm/components/virtual-scroller/index.js.map +1 -1
  538. package/dist/esm/components/widgets/CWidgetStatsA.js.map +1 -1
  539. package/dist/esm/components/widgets/CWidgetStatsB.js.map +1 -1
  540. package/dist/esm/components/widgets/CWidgetStatsC.js.map +1 -1
  541. package/dist/esm/components/widgets/CWidgetStatsD.js.map +1 -1
  542. package/dist/esm/components/widgets/CWidgetStatsE.js.map +1 -1
  543. package/dist/esm/components/widgets/CWidgetStatsF.js.map +1 -1
  544. package/dist/esm/components/widgets/index.js.map +1 -1
  545. package/dist/esm/composables/useColorModes.js.map +1 -1
  546. package/dist/esm/composables/useDebouncedCallback.js.map +1 -1
  547. package/dist/esm/composables/useDropdownWithPopper.js.map +1 -1
  548. package/dist/esm/composables/useIsVisible.js.map +1 -1
  549. package/dist/esm/composables/usePopper.js.map +1 -1
  550. package/dist/esm/composables/useUniqueId.js.map +1 -1
  551. package/dist/esm/directives/v-c-placeholder.js.map +1 -1
  552. package/dist/esm/directives/v-c-popover.js.map +1 -1
  553. package/dist/esm/directives/v-c-tooltip.js.map +1 -1
  554. package/dist/esm/directives/v-c-visible.js.map +1 -1
  555. package/dist/esm/index.js +2 -0
  556. package/dist/esm/index.js.map +1 -1
  557. package/dist/esm/node_modules/@coreui/icons-vue/dist/index.es.js.map +1 -1
  558. package/dist/esm/node_modules/vue-types/dist/index.js.map +1 -1
  559. package/dist/esm/node_modules/vue-types/dist/shared/vue-types.8139b772.js.map +1 -1
  560. package/dist/esm/props.js.map +1 -1
  561. package/dist/esm/utils/getNextActiveElement.js.map +1 -1
  562. package/dist/esm/utils/getNextSibling.d.ts +2 -0
  563. package/dist/esm/utils/getNextSibling.js +18 -0
  564. package/dist/esm/utils/getNextSibling.js.map +1 -0
  565. package/dist/esm/utils/getPreviousSibling.d.ts +2 -0
  566. package/dist/esm/utils/getPreviousSibling.js +18 -0
  567. package/dist/esm/utils/getPreviousSibling.js.map +1 -0
  568. package/dist/esm/utils/getRTLPlacement.js.map +1 -1
  569. package/dist/esm/utils/index.d.ts +3 -1
  570. package/dist/esm/utils/isEqual.js.map +1 -1
  571. package/dist/esm/utils/isObjectInArray.js.map +1 -1
  572. package/dist/esm/utils/isRTL.js.map +1 -1
  573. package/dist/esm/utils/transition.js.map +1 -1
  574. package/package.json +8 -8
  575. package/src/components/autocomplete/CAutocomplete.ts +855 -0
  576. package/src/components/autocomplete/CAutocompleteOptions.ts +144 -0
  577. package/src/components/autocomplete/__tests__/CAutocomplete.spec.ts +429 -0
  578. package/src/components/autocomplete/__tests__/CAutocompleteOptions.spec.ts +368 -0
  579. package/src/components/autocomplete/__tests__/__snapshots__/CAutocomplete.spec.ts.snap +39 -0
  580. package/src/components/autocomplete/index.ts +10 -0
  581. package/src/components/autocomplete/types.ts +25 -0
  582. package/src/components/autocomplete/utils.ts +131 -0
  583. package/src/components/button/CButton.ts +2 -1
  584. package/src/components/calendar/CCalendar.ts +5 -10
  585. package/src/components/calendar/utils.ts +24 -10
  586. package/src/components/date-picker/CDatePicker.ts +9 -0
  587. package/src/components/date-range-picker/CDateRangePicker.ts +46 -28
  588. package/src/components/index.ts +1 -0
  589. package/src/components/multi-select/CMultiSelect.ts +36 -16
  590. package/src/components/multi-select/CMultiSelectOptions.ts +5 -1
  591. package/src/components/multi-select/utils.ts +0 -34
  592. package/src/components/time-picker/CTimePicker.ts +13 -1
  593. package/src/utils/getNextSibling.ts +18 -0
  594. package/src/utils/getPreviousSibling.ts +18 -0
  595. package/src/utils/index.ts +4 -0
@@ -281,6 +281,15 @@ const CDatePicker = defineComponent({
281
281
  type: String,
282
282
  default: 'Select date',
283
283
  },
284
+ /**
285
+ * Enable live preview of dates in input fields when hovering over calendar cells.
286
+ *
287
+ * @since 5.14.0
288
+ */
289
+ previewDateOnHover: {
290
+ type: Boolean,
291
+ default: true,
292
+ },
284
293
  /**
285
294
  * Set whether days in adjacent months shown before or after the current month are selectable. This only applies if the `showAdjacementDays` option is set to true.
286
295
  *
@@ -341,6 +341,15 @@ const CDateRangePicker = defineComponent({
341
341
  type: [String, Array] as PropType<string | [string, string]>,
342
342
  default: () => ['Start date', 'End date'],
343
343
  },
344
+ /**
345
+ * Enable live preview of dates in input fields when hovering over calendar cells.
346
+ *
347
+ * @since 5.14.0
348
+ */
349
+ previewDateOnHover: {
350
+ type: Boolean,
351
+ default: true,
352
+ },
344
353
  /**
345
354
  * @ignore
346
355
  */
@@ -576,7 +585,7 @@ const CDateRangePicker = defineComponent({
576
585
  const inputStartHoverValue = ref<Date | string | null>(null)
577
586
  const inputEndHoverValue = ref<Date | string | null>(null)
578
587
  const isValid = ref<boolean | undefined>(
579
- props.valid ?? (props.invalid === true ? false : undefined),
588
+ props.valid ?? (props.invalid === true ? false : undefined)
580
589
  )
581
590
  const isMobile = ref(false)
582
591
  const selectEndDate = ref(false)
@@ -589,7 +598,7 @@ const CDateRangePicker = defineComponent({
589
598
  () => [props.valid, props.invalid],
590
599
  () => {
591
600
  isValid.value = props.valid ?? (props.invalid === true ? false : undefined)
592
- },
601
+ }
593
602
  )
594
603
 
595
604
  watch(
@@ -597,7 +606,7 @@ const CDateRangePicker = defineComponent({
597
606
  () => {
598
607
  calendarDate.value = props.startDate ? props.startDate : null
599
608
  startDate.value = props.startDate ? props.startDate : null
600
- },
609
+ }
601
610
  )
602
611
 
603
612
  watch(
@@ -605,21 +614,21 @@ const CDateRangePicker = defineComponent({
605
614
  () => {
606
615
  calendarDate.value = props.endDate ? props.endDate : null
607
616
  endDate.value = props.endDate ? props.endDate : null
608
- },
617
+ }
609
618
  )
610
619
 
611
620
  watch(
612
621
  () => props.maxDate,
613
622
  () => {
614
623
  maxDate.value = props.maxDate ? props.maxDate : null
615
- },
624
+ }
616
625
  )
617
626
 
618
627
  watch(
619
628
  () => props.minDate,
620
629
  () => {
621
630
  minDate.value = props.minDate ? props.minDate : null
622
- },
631
+ }
623
632
  )
624
633
 
625
634
  watch(inputStartRef, () => {
@@ -641,7 +650,7 @@ const CDateRangePicker = defineComponent({
641
650
  const formatDate = (date: Date | string) => {
642
651
  if (props.inputDateFormat) {
643
652
  return props.inputDateFormat(
644
- date instanceof Date ? new Date(date) : convertToDateObject(date, props.selectionType),
653
+ date instanceof Date ? new Date(date) : convertToDateObject(date, props.selectionType)
645
654
  )
646
655
  }
647
656
 
@@ -665,6 +674,10 @@ const CDateRangePicker = defineComponent({
665
674
  }
666
675
 
667
676
  const handleDateHover = (date: Date | string | null) => {
677
+ if (!props.previewDateOnHover) {
678
+ return
679
+ }
680
+
668
681
  if (selectEndDate.value) {
669
682
  inputEndHoverValue.value = date
670
683
  return
@@ -742,11 +755,16 @@ const CDateRangePicker = defineComponent({
742
755
  : getLocalDateFromString(value, props.locale, props.timepicker)
743
756
  if (date instanceof Date && date.getTime()) {
744
757
  calendarDate.value = date
745
- if (input === 'start') {
746
- startDate.value = date
747
- } else {
748
- endDate.value = date
749
- }
758
+ }
759
+
760
+ if (input === 'start') {
761
+ startDate.value = date ?? null
762
+ emit('start-date-change', date ?? null)
763
+ emit('update:start-date', date ?? null)
764
+ } else {
765
+ endDate.value = date ?? null
766
+ emit('end-date-change', date ?? null)
767
+ emit('update:end-date', date ?? null)
750
768
  }
751
769
  }
752
770
 
@@ -779,7 +797,7 @@ const CDateRangePicker = defineComponent({
779
797
  onInput: (event: Event) =>
780
798
  useDebouncedCallback(
781
799
  () => handleOnChange((event.target as HTMLInputElement).value, 'start'),
782
- props.inputOnChangeDelay,
800
+ props.inputOnChangeDelay
783
801
  ),
784
802
  placeholder: Array.isArray(props.placeholder)
785
803
  ? props.placeholder[0]
@@ -815,7 +833,7 @@ const CDateRangePicker = defineComponent({
815
833
  onInput: (event: Event) =>
816
834
  useDebouncedCallback(
817
835
  () => handleOnChange((event.target as HTMLInputElement).value, 'end'),
818
- props.inputOnChangeDelay,
836
+ props.inputOnChangeDelay
819
837
  ),
820
838
  placeholder: props.placeholder[1],
821
839
  readonly: props.inputReadOnly || typeof props.format === 'string',
@@ -847,7 +865,7 @@ const CDateRangePicker = defineComponent({
847
865
  class: 'date-picker-cleaner',
848
866
  onClick: (event: Event) => handleClear(event),
849
867
  }),
850
- ],
868
+ ]
851
869
  )
852
870
 
853
871
  return () =>
@@ -925,7 +943,7 @@ const CDateRangePicker = defineComponent({
925
943
  calendarDate.value = date
926
944
  },
927
945
  },
928
- () => props.todayButton,
946
+ () => props.todayButton
929
947
  ),
930
948
  props.cancelButton &&
931
949
  h(
@@ -943,7 +961,7 @@ const CDateRangePicker = defineComponent({
943
961
  size: props.cancelButtonSize,
944
962
  variant: props.cancelButtonVariant,
945
963
  },
946
- () => props.cancelButton,
964
+ () => props.cancelButton
947
965
  ),
948
966
  props.confirmButton &&
949
967
  h(
@@ -956,7 +974,7 @@ const CDateRangePicker = defineComponent({
956
974
  size: props.confirmButtonSize,
957
975
  variant: props.confirmButtonVariant,
958
976
  },
959
- () => props.confirmButton,
977
+ () => props.confirmButton
960
978
  ),
961
979
  ]),
962
980
  default: () =>
@@ -983,9 +1001,9 @@ const CDateRangePicker = defineComponent({
983
1001
  },
984
1002
  variant: 'ghost',
985
1003
  },
986
- () => key,
987
- ),
988
- ),
1004
+ () => key
1005
+ )
1006
+ )
989
1007
  ),
990
1008
  h(
991
1009
  'div',
@@ -1055,8 +1073,8 @@ const CDateRangePicker = defineComponent({
1055
1073
  navPrevDoubleIcon: () =>
1056
1074
  slots.navPrevDoubleIcon && slots.navPrevDoubleIcon(),
1057
1075
  }),
1058
- },
1059
- ),
1076
+ }
1077
+ )
1060
1078
  ),
1061
1079
  props.timepicker &&
1062
1080
  h(
@@ -1105,14 +1123,14 @@ const CDateRangePicker = defineComponent({
1105
1123
  ? startDate.value && new Date(startDate.value)
1106
1124
  : endDate.value && new Date(endDate.value),
1107
1125
  variant: 'select',
1108
- }),
1109
- ),
1126
+ })
1127
+ )
1110
1128
  ),
1111
- ],
1129
+ ]
1112
1130
  ),
1113
- },
1131
+ }
1114
1132
  ),
1115
- },
1133
+ }
1116
1134
  )
1117
1135
  },
1118
1136
  })
@@ -1,5 +1,6 @@
1
1
  export * from './accordion'
2
2
  export * from './alert'
3
+ export * from './autocomplete'
3
4
  export * from './avatar'
4
5
  export * from './backdrop'
5
6
  export * from './badge'
@@ -1,4 +1,4 @@
1
- import { computed, defineComponent, h, PropType, provide, ref, watch } from 'vue'
1
+ import { computed, defineComponent, h, PropType, provide, ref, useId, watch } from 'vue'
2
2
 
3
3
  import { CFormControlWrapper } from './../form/CFormControlWrapper'
4
4
  import { CConditionalTeleport } from '../conditional-teleport'
@@ -33,12 +33,21 @@ const CMultiSelect = defineComponent({
33
33
  /**
34
34
  * A string that provides an accessible label for the cleaner button. This label is read by screen readers to describe the action associated with the button.
35
35
  *
36
- * @since 5.7.0
36
+ * @since 5.13.0
37
37
  */
38
38
  ariaCleanerLabel: {
39
39
  type: String,
40
40
  default: 'Clear all selections',
41
41
  },
42
+ /**
43
+ * A string that provides an accessible label for the indicator button. This label is read by screen readers to describe the action associated with the button.
44
+ *
45
+ * @since 5.7.0
46
+ */
47
+ ariaIndicatorLabel: {
48
+ type: String,
49
+ default: 'Toggle dropdown',
50
+ },
42
51
  /**
43
52
  * Enables selection cleaner element.
44
53
  *
@@ -353,6 +362,7 @@ const CMultiSelect = defineComponent({
353
362
  const searchValue = ref('')
354
363
  const selected = ref<SelectedOption[]>([])
355
364
  const userOptions = ref<Option[]>([])
365
+ const uniqueId = useId()
356
366
 
357
367
  const {
358
368
  dropdownMenuElement,
@@ -626,17 +636,6 @@ const CMultiSelect = defineComponent({
626
636
  }
627
637
 
628
638
  return () => [
629
- h(CMultiSelectNativeSelect, {
630
- id: props.id,
631
- multiple: props.multiple,
632
- name: props.name,
633
- options: selected.value,
634
- required: props.required,
635
- value: props.multiple
636
- ? selected.value.map((option: SelectedOption) => option.value.toString())
637
- : selected.value.map((option: SelectedOption) => option.value)[0],
638
- onChange: () => emit('change', selected.value),
639
- }),
640
639
  h(
641
640
  CFormControlWrapper,
642
641
  {
@@ -646,7 +645,7 @@ const CMultiSelect = defineComponent({
646
645
  feedback: props.feedback,
647
646
  feedbackInvalid: props.feedbackInvalid,
648
647
  feedbackValid: props.feedbackValid,
649
- id: props.id,
648
+ id: props.id ?? uniqueId,
650
649
  invalid: props.invalid,
651
650
  label: props.label,
652
651
  text: props.text,
@@ -654,7 +653,18 @@ const CMultiSelect = defineComponent({
654
653
  valid: props.valid,
655
654
  },
656
655
  {
657
- default: () =>
656
+ default: () => [
657
+ h(CMultiSelectNativeSelect, {
658
+ id: props.id ?? uniqueId,
659
+ multiple: props.multiple,
660
+ name: props.name ?? uniqueId,
661
+ options: selected.value,
662
+ required: props.required,
663
+ value: props.multiple
664
+ ? selected.value.map((option: SelectedOption) => option.value.toString())
665
+ : selected.value.map((option: SelectedOption) => option.value)[0],
666
+ onChange: () => emit('change', selected.value),
667
+ }),
658
668
  h(
659
669
  'div',
660
670
  {
@@ -669,7 +679,10 @@ const CMultiSelect = defineComponent({
669
679
  },
670
680
  ],
671
681
  onKeydown: handleGlobalSearch,
682
+ role: 'combobox',
683
+ 'aria-haspopup': 'listbox',
672
684
  'aria-expanded': isOpen.value,
685
+ ...(props.teleport && { 'aria-owns': `multi-select-listbox-${uniqueId}` }),
673
686
  ref: multiSelectRef,
674
687
  },
675
688
  {
@@ -709,6 +722,8 @@ const CMultiSelect = defineComponent({
709
722
  type: 'text',
710
723
  class: 'form-multi-select-search',
711
724
  disabled: props.disabled,
725
+ id: `search-${props.id ?? uniqueId}`,
726
+ name: `search-${props.name ?? uniqueId}`,
712
727
  autocomplete: 'off',
713
728
  onInput: (event: InputEvent) => handleSearchChange(event),
714
729
  onKeydown: (event: KeyboardEvent) => handleSearchKeyDown(event),
@@ -769,6 +784,7 @@ const CMultiSelect = defineComponent({
769
784
  }
770
785
  },
771
786
  type: 'button',
787
+ 'aria-label': props.ariaIndicatorLabel,
772
788
  ...(props.disabled && { tabIndex: -1 }),
773
789
  }),
774
790
  ],
@@ -794,8 +810,11 @@ const CMultiSelect = defineComponent({
794
810
  show: props.teleport && isOpen.value,
795
811
  },
796
812
  ],
813
+ id: `multi-select-listbox-${uniqueId}`,
797
814
  onKeydown: handleGlobalSearch,
798
- role: 'menu',
815
+ role: 'listbox',
816
+ 'aria-labelledby': props.id ?? uniqueId,
817
+ 'aria-multiselectable': props.multiple,
799
818
  ref: dropdownMenuElement,
800
819
  },
801
820
  {
@@ -834,6 +853,7 @@ const CMultiSelect = defineComponent({
834
853
  ],
835
854
  }
836
855
  ),
856
+ ],
837
857
  }
838
858
  ),
839
859
  ]
@@ -3,7 +3,7 @@ import { defineComponent, h, PropType, VNode } from 'vue'
3
3
  import { CElementCover } from '../element-cover'
4
4
  import { CVirtualScroller } from '../virtual-scroller'
5
5
 
6
- import { getNextSibling, getPreviousSibling } from './utils'
6
+ import { getNextSibling, getPreviousSibling } from '../../utils'
7
7
  import type { Option, OptionsGroup } from './types'
8
8
 
9
9
  const CMultiSelectOptions = defineComponent({
@@ -91,6 +91,10 @@ const CMultiSelectOptions = defineComponent({
91
91
  onClick: () => handleOptionClick(option as Option),
92
92
  onKeydown: (event: any) => handleKeyDown(event, option as Option),
93
93
  tabindex: 0,
94
+ role: 'option',
95
+ 'aria-selected': props.selected.some(
96
+ (_option) => _option.value === option.value,
97
+ ),
94
98
  },
95
99
  props.scopedSlots && props.scopedSlots['options']
96
100
  ? h(props.scopedSlots['options'], { option: option })
@@ -66,46 +66,12 @@ export const flattenOptionsArray = (
66
66
  return optionsList
67
67
  }
68
68
 
69
- export const getNextSibling = (elem: HTMLElement, selector?: string) => {
70
- // Get the next sibling element
71
- let sibling = elem.nextElementSibling
72
-
73
- // If there's no selector, return the first sibling
74
- if (!selector) return sibling
75
-
76
- // If the sibling matches our selector, use it
77
- // If not, jump to the next sibling and continue the loop
78
- while (sibling) {
79
- if (sibling.matches(selector)) return sibling
80
- sibling = sibling.nextElementSibling
81
- }
82
-
83
- return
84
- }
85
-
86
69
  export const getOptionsList = (container: HTMLElement): HTMLElement[] => {
87
70
  return Array.from(
88
71
  container.querySelectorAll('.form-multi-select-option:not(.disabled):not(:disabled)'),
89
72
  )
90
73
  }
91
74
 
92
- export const getPreviousSibling = (elem: HTMLElement, selector?: string) => {
93
- // Get the next sibling element
94
- let sibling = elem.previousElementSibling
95
-
96
- // If there's no selector, return the first sibling
97
- if (!selector) return sibling
98
-
99
- // If the sibling matches our selector, use it
100
- // If not, jump to the next sibling and continue the loop
101
- while (sibling) {
102
- if (sibling.matches(selector)) return sibling
103
- sibling = sibling.previousElementSibling
104
- }
105
-
106
- return
107
- }
108
-
109
75
  export const isExternalSearch = (search: Search): boolean => {
110
76
  return (
111
77
  (typeof search === 'string' && search === 'external') ||
@@ -466,7 +466,19 @@ const CTimePicker = defineComponent({
466
466
  onInput: (event: Event) =>
467
467
  useDebouncedCallback(() => {
468
468
  if (isValidTime((event.target as HTMLInputElement).value)) {
469
- date.value = convertTimeToDate((event.target as HTMLInputElement).value)
469
+ const _date = convertTimeToDate((event.target as HTMLInputElement).value)
470
+ date.value = _date
471
+
472
+ if (_date) {
473
+ emit('change', _date.toTimeString(), _date.toLocaleTimeString(props.locale), _date)
474
+ emit('update:time', _date.toLocaleTimeString(props.locale))
475
+ } else {
476
+ emit('change', null)
477
+ emit('update:time', null)
478
+ }
479
+ } else {
480
+ emit('change', null)
481
+ emit('update:time', null)
470
482
  }
471
483
  }, props.inputOnChangeDelay),
472
484
  placeholder: props.placeholder,
@@ -0,0 +1,18 @@
1
+ export const getNextSibling = (elem: HTMLElement, selector?: string) => {
2
+ // Get the next sibling element
3
+ let sibling = elem.nextElementSibling
4
+
5
+ // If there's no selector, return the first sibling
6
+ if (!selector) return sibling
7
+
8
+ // If the sibling matches our selector, use it
9
+ // If not, jump to the next sibling and continue the loop
10
+ while (sibling) {
11
+ if (sibling.matches(selector)) return sibling
12
+ sibling = sibling.nextElementSibling
13
+ }
14
+
15
+ return
16
+ }
17
+
18
+ export default getNextSibling
@@ -0,0 +1,18 @@
1
+ const getPreviousSibling = (elem: HTMLElement, selector?: string) => {
2
+ // Get the next sibling element
3
+ let sibling = elem.previousElementSibling
4
+
5
+ // If there's no selector, return the first sibling
6
+ if (!selector) return sibling
7
+
8
+ // If the sibling matches our selector, use it
9
+ // If not, jump to the next sibling and continue the loop
10
+ while (sibling) {
11
+ if (sibling.matches(selector)) return sibling
12
+ sibling = sibling.previousElementSibling
13
+ }
14
+
15
+ return
16
+ }
17
+
18
+ export default getPreviousSibling
@@ -1,4 +1,6 @@
1
1
  import getNextActiveElement from './getNextActiveElement'
2
+ import getNextSibling from './getNextSibling'
3
+ import getPreviousSibling from './getPreviousSibling'
2
4
  import getRTLPlacement from './getRTLPlacement'
3
5
  import getUID from './getUID'
4
6
  import isEqual from './isEqual'
@@ -8,6 +10,8 @@ import isRTL from './isRTL'
8
10
 
9
11
  export {
10
12
  getNextActiveElement,
13
+ getNextSibling,
14
+ getPreviousSibling,
11
15
  getRTLPlacement,
12
16
  getUID,
13
17
  isEqual,