@coreui/react 5.4.0 → 5.5.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 (657) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +2 -2
  3. package/dist/cjs/_virtual/index.js +8 -2
  4. package/dist/cjs/_virtual/index.js.map +1 -1
  5. package/dist/cjs/_virtual/index2.js +6 -0
  6. package/dist/cjs/_virtual/index2.js.map +1 -0
  7. package/dist/cjs/components/accordion/CAccordion.js +2 -2
  8. package/dist/cjs/components/accordion/CAccordion.js.map +1 -1
  9. package/dist/cjs/components/accordion/CAccordionBody.js +3 -3
  10. package/dist/cjs/components/accordion/CAccordionBody.js.map +1 -1
  11. package/dist/cjs/components/accordion/CAccordionButton.js +3 -3
  12. package/dist/cjs/components/accordion/CAccordionButton.js.map +1 -1
  13. package/dist/cjs/components/accordion/CAccordionHeader.js +1 -1
  14. package/dist/cjs/components/accordion/CAccordionHeader.js.map +1 -1
  15. package/dist/cjs/components/accordion/CAccordionItem.d.ts +5 -0
  16. package/dist/cjs/components/accordion/CAccordionItem.js +8 -5
  17. package/dist/cjs/components/accordion/CAccordionItem.js.map +1 -1
  18. package/dist/cjs/components/alert/CAlert.js +2 -2
  19. package/dist/cjs/components/alert/CAlert.js.map +1 -1
  20. package/dist/cjs/components/alert/CAlertHeading.js +2 -2
  21. package/dist/cjs/components/alert/CAlertHeading.js.map +1 -1
  22. package/dist/cjs/components/alert/CAlertLink.js +1 -1
  23. package/dist/cjs/components/alert/CAlertLink.js.map +1 -1
  24. package/dist/cjs/components/avatar/CAvatar.js +1 -1
  25. package/dist/cjs/components/avatar/CAvatar.js.map +1 -1
  26. package/dist/cjs/components/backdrop/CBackdrop.js +2 -2
  27. package/dist/cjs/components/backdrop/CBackdrop.js.map +1 -1
  28. package/dist/cjs/components/badge/CBadge.js +7 -7
  29. package/dist/cjs/components/badge/CBadge.js.map +1 -1
  30. package/dist/cjs/components/breadcrumb/CBreadcrumb.js +1 -1
  31. package/dist/cjs/components/breadcrumb/CBreadcrumb.js.map +1 -1
  32. package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js +1 -1
  33. package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
  34. package/dist/cjs/components/button/CButton.js +2 -2
  35. package/dist/cjs/components/button/CButton.js.map +1 -1
  36. package/dist/cjs/components/button-group/CButtonGroup.js +1 -1
  37. package/dist/cjs/components/button-group/CButtonGroup.js.map +1 -1
  38. package/dist/cjs/components/button-group/CButtonToolbar.js +1 -1
  39. package/dist/cjs/components/button-group/CButtonToolbar.js.map +1 -1
  40. package/dist/cjs/components/callout/CCallout.js +1 -1
  41. package/dist/cjs/components/callout/CCallout.js.map +1 -1
  42. package/dist/cjs/components/card/CCard.js +1 -1
  43. package/dist/cjs/components/card/CCard.js.map +1 -1
  44. package/dist/cjs/components/card/CCardBody.js +1 -1
  45. package/dist/cjs/components/card/CCardBody.js.map +1 -1
  46. package/dist/cjs/components/card/CCardFooter.js +1 -1
  47. package/dist/cjs/components/card/CCardFooter.js.map +1 -1
  48. package/dist/cjs/components/card/CCardGroup.js +1 -1
  49. package/dist/cjs/components/card/CCardGroup.js.map +1 -1
  50. package/dist/cjs/components/card/CCardHeader.js +2 -2
  51. package/dist/cjs/components/card/CCardHeader.js.map +1 -1
  52. package/dist/cjs/components/card/CCardImage.js +2 -2
  53. package/dist/cjs/components/card/CCardImage.js.map +1 -1
  54. package/dist/cjs/components/card/CCardImageOverlay.js +1 -1
  55. package/dist/cjs/components/card/CCardImageOverlay.js.map +1 -1
  56. package/dist/cjs/components/card/CCardLink.js +1 -1
  57. package/dist/cjs/components/card/CCardLink.js.map +1 -1
  58. package/dist/cjs/components/card/CCardSubtitle.js +2 -2
  59. package/dist/cjs/components/card/CCardSubtitle.js.map +1 -1
  60. package/dist/cjs/components/card/CCardText.js +2 -2
  61. package/dist/cjs/components/card/CCardText.js.map +1 -1
  62. package/dist/cjs/components/card/CCardTitle.js +2 -2
  63. package/dist/cjs/components/card/CCardTitle.js.map +1 -1
  64. package/dist/cjs/components/carousel/CCarousel.js +2 -2
  65. package/dist/cjs/components/carousel/CCarousel.js.map +1 -1
  66. package/dist/cjs/components/carousel/CCarouselCaption.js +1 -1
  67. package/dist/cjs/components/carousel/CCarouselCaption.js.map +1 -1
  68. package/dist/cjs/components/carousel/CCarouselItem.js +7 -7
  69. package/dist/cjs/components/carousel/CCarouselItem.js.map +1 -1
  70. package/dist/cjs/components/close-button/CCloseButton.js +1 -1
  71. package/dist/cjs/components/close-button/CCloseButton.js.map +1 -1
  72. package/dist/cjs/components/collapse/CCollapse.js +1 -1
  73. package/dist/cjs/components/collapse/CCollapse.js.map +1 -1
  74. package/dist/cjs/components/conditional-portal/CConditionalPortal.js.map +1 -1
  75. package/dist/cjs/components/dropdown/CDropdown.d.ts +77 -20
  76. package/dist/cjs/components/dropdown/CDropdown.js +7 -4
  77. package/dist/cjs/components/dropdown/CDropdown.js.map +1 -1
  78. package/dist/cjs/components/dropdown/CDropdownDivider.js +1 -1
  79. package/dist/cjs/components/dropdown/CDropdownDivider.js.map +1 -1
  80. package/dist/cjs/components/dropdown/CDropdownHeader.js +2 -2
  81. package/dist/cjs/components/dropdown/CDropdownHeader.js.map +1 -1
  82. package/dist/cjs/components/dropdown/CDropdownItem.js +2 -2
  83. package/dist/cjs/components/dropdown/CDropdownItem.js.map +1 -1
  84. package/dist/cjs/components/dropdown/CDropdownItemPlain.js +2 -2
  85. package/dist/cjs/components/dropdown/CDropdownItemPlain.js.map +1 -1
  86. package/dist/cjs/components/dropdown/CDropdownMenu.js +4 -4
  87. package/dist/cjs/components/dropdown/CDropdownMenu.js.map +1 -1
  88. package/dist/cjs/components/dropdown/CDropdownToggle.js +3 -3
  89. package/dist/cjs/components/dropdown/CDropdownToggle.js.map +1 -1
  90. package/dist/cjs/components/dropdown/utils.js.map +1 -1
  91. package/dist/cjs/components/footer/CFooter.js +1 -1
  92. package/dist/cjs/components/footer/CFooter.js.map +1 -1
  93. package/dist/cjs/components/form/CForm.js +1 -1
  94. package/dist/cjs/components/form/CForm.js.map +1 -1
  95. package/dist/cjs/components/form/CFormCheck.js +2 -2
  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 +2 -2
  100. package/dist/cjs/components/form/CFormFeedback.js.map +1 -1
  101. package/dist/cjs/components/form/CFormFloating.js +1 -1
  102. package/dist/cjs/components/form/CFormFloating.js.map +1 -1
  103. package/dist/cjs/components/form/CFormInput.js +2 -2
  104. package/dist/cjs/components/form/CFormInput.js.map +1 -1
  105. package/dist/cjs/components/form/CFormLabel.js +2 -2
  106. package/dist/cjs/components/form/CFormLabel.js.map +1 -1
  107. package/dist/cjs/components/form/CFormRange.js +1 -1
  108. package/dist/cjs/components/form/CFormRange.js.map +1 -1
  109. package/dist/cjs/components/form/CFormSelect.js +1 -1
  110. package/dist/cjs/components/form/CFormSelect.js.map +1 -1
  111. package/dist/cjs/components/form/CFormSwitch.js +2 -2
  112. package/dist/cjs/components/form/CFormSwitch.js.map +1 -1
  113. package/dist/cjs/components/form/CFormText.js +2 -2
  114. package/dist/cjs/components/form/CFormText.js.map +1 -1
  115. package/dist/cjs/components/form/CFormTextarea.js +1 -1
  116. package/dist/cjs/components/form/CFormTextarea.js.map +1 -1
  117. package/dist/cjs/components/form/CInputGroup.js +1 -1
  118. package/dist/cjs/components/form/CInputGroup.js.map +1 -1
  119. package/dist/cjs/components/form/CInputGroupText.js +2 -2
  120. package/dist/cjs/components/form/CInputGroupText.js.map +1 -1
  121. package/dist/cjs/components/grid/CCol.js +1 -1
  122. package/dist/cjs/components/grid/CCol.js.map +1 -1
  123. package/dist/cjs/components/grid/CContainer.js +1 -1
  124. package/dist/cjs/components/grid/CContainer.js.map +1 -1
  125. package/dist/cjs/components/grid/CRow.js +1 -1
  126. package/dist/cjs/components/grid/CRow.js.map +1 -1
  127. package/dist/cjs/components/header/CHeader.js +1 -1
  128. package/dist/cjs/components/header/CHeader.js.map +1 -1
  129. package/dist/cjs/components/header/CHeaderBrand.js +2 -2
  130. package/dist/cjs/components/header/CHeaderBrand.js.map +1 -1
  131. package/dist/cjs/components/header/CHeaderDivider.js +1 -1
  132. package/dist/cjs/components/header/CHeaderDivider.js.map +1 -1
  133. package/dist/cjs/components/header/CHeaderNav.js +2 -2
  134. package/dist/cjs/components/header/CHeaderNav.js.map +1 -1
  135. package/dist/cjs/components/header/CHeaderText.js +1 -1
  136. package/dist/cjs/components/header/CHeaderText.js.map +1 -1
  137. package/dist/cjs/components/header/CHeaderToggler.js +2 -2
  138. package/dist/cjs/components/header/CHeaderToggler.js.map +1 -1
  139. package/dist/cjs/components/image/CImage.js +1 -1
  140. package/dist/cjs/components/image/CImage.js.map +1 -1
  141. package/dist/cjs/components/link/CLink.js +2 -2
  142. package/dist/cjs/components/link/CLink.js.map +1 -1
  143. package/dist/cjs/components/list-group/CListGroup.js +5 -4
  144. package/dist/cjs/components/list-group/CListGroup.js.map +1 -1
  145. package/dist/cjs/components/list-group/CListGroupItem.js +2 -2
  146. package/dist/cjs/components/list-group/CListGroupItem.js.map +1 -1
  147. package/dist/cjs/components/modal/CModal.js +4 -5
  148. package/dist/cjs/components/modal/CModal.js.map +1 -1
  149. package/dist/cjs/components/modal/CModalBody.js +1 -1
  150. package/dist/cjs/components/modal/CModalBody.js.map +1 -1
  151. package/dist/cjs/components/modal/CModalContent.js +1 -1
  152. package/dist/cjs/components/modal/CModalContent.js.map +1 -1
  153. package/dist/cjs/components/modal/CModalDialog.js +1 -1
  154. package/dist/cjs/components/modal/CModalDialog.js.map +1 -1
  155. package/dist/cjs/components/modal/CModalFooter.js +1 -1
  156. package/dist/cjs/components/modal/CModalFooter.js.map +1 -1
  157. package/dist/cjs/components/modal/CModalHeader.js +2 -2
  158. package/dist/cjs/components/modal/CModalHeader.js.map +1 -1
  159. package/dist/cjs/components/modal/CModalTitle.js +2 -2
  160. package/dist/cjs/components/modal/CModalTitle.js.map +1 -1
  161. package/dist/cjs/components/nav/CNav.js +2 -2
  162. package/dist/cjs/components/nav/CNav.js.map +1 -1
  163. package/dist/cjs/components/nav/CNavGroup.js +6 -6
  164. package/dist/cjs/components/nav/CNavGroup.js.map +1 -1
  165. package/dist/cjs/components/nav/CNavGroupItems.js +2 -2
  166. package/dist/cjs/components/nav/CNavGroupItems.js.map +1 -1
  167. package/dist/cjs/components/nav/CNavItem.js +2 -2
  168. package/dist/cjs/components/nav/CNavItem.js.map +1 -1
  169. package/dist/cjs/components/nav/CNavLink.js +2 -2
  170. package/dist/cjs/components/nav/CNavLink.js.map +1 -1
  171. package/dist/cjs/components/nav/CNavTitle.js +2 -2
  172. package/dist/cjs/components/nav/CNavTitle.js.map +1 -1
  173. package/dist/cjs/components/navbar/CNavbar.js +2 -2
  174. package/dist/cjs/components/navbar/CNavbar.js.map +1 -1
  175. package/dist/cjs/components/navbar/CNavbarBrand.js +2 -2
  176. package/dist/cjs/components/navbar/CNavbarBrand.js.map +1 -1
  177. package/dist/cjs/components/navbar/CNavbarNav.js +2 -2
  178. package/dist/cjs/components/navbar/CNavbarNav.js.map +1 -1
  179. package/dist/cjs/components/navbar/CNavbarText.js +1 -1
  180. package/dist/cjs/components/navbar/CNavbarText.js.map +1 -1
  181. package/dist/cjs/components/navbar/CNavbarToggler.js +2 -2
  182. package/dist/cjs/components/navbar/CNavbarToggler.js.map +1 -1
  183. package/dist/cjs/components/offcanvas/COffcanvas.js +3 -3
  184. package/dist/cjs/components/offcanvas/COffcanvas.js.map +1 -1
  185. package/dist/cjs/components/offcanvas/COffcanvasBody.js +1 -1
  186. package/dist/cjs/components/offcanvas/COffcanvasBody.js.map +1 -1
  187. package/dist/cjs/components/offcanvas/COffcanvasHeader.js +1 -1
  188. package/dist/cjs/components/offcanvas/COffcanvasHeader.js.map +1 -1
  189. package/dist/cjs/components/offcanvas/COffcanvasTitle.js +2 -2
  190. package/dist/cjs/components/offcanvas/COffcanvasTitle.js.map +1 -1
  191. package/dist/cjs/components/pagination/CPagination.js +1 -1
  192. package/dist/cjs/components/pagination/CPagination.js.map +1 -1
  193. package/dist/cjs/components/pagination/CPaginationItem.js +2 -2
  194. package/dist/cjs/components/pagination/CPaginationItem.js.map +1 -1
  195. package/dist/cjs/components/placeholder/CPlaceholder.js +2 -2
  196. package/dist/cjs/components/placeholder/CPlaceholder.js.map +1 -1
  197. package/dist/cjs/components/popover/CPopover.d.ts +75 -20
  198. package/dist/cjs/components/popover/CPopover.js +55 -63
  199. package/dist/cjs/components/popover/CPopover.js.map +1 -1
  200. package/dist/cjs/components/progress/CProgress.d.ts +1 -1
  201. package/dist/cjs/components/progress/CProgress.js +1 -1
  202. package/dist/cjs/components/progress/CProgress.js.map +1 -1
  203. package/dist/cjs/components/progress/CProgressBar.js +2 -2
  204. package/dist/cjs/components/progress/CProgressBar.js.map +1 -1
  205. package/dist/cjs/components/progress/CProgressStacked.js +1 -1
  206. package/dist/cjs/components/progress/CProgressStacked.js.map +1 -1
  207. package/dist/cjs/components/sidebar/CSidebar.d.ts +7 -2
  208. package/dist/cjs/components/sidebar/CSidebar.js +12 -11
  209. package/dist/cjs/components/sidebar/CSidebar.js.map +1 -1
  210. package/dist/cjs/components/sidebar/CSidebarBrand.js +2 -2
  211. package/dist/cjs/components/sidebar/CSidebarBrand.js.map +1 -1
  212. package/dist/cjs/components/sidebar/CSidebarFooter.js +1 -1
  213. package/dist/cjs/components/sidebar/CSidebarFooter.js.map +1 -1
  214. package/dist/cjs/components/sidebar/CSidebarHeader.js +1 -1
  215. package/dist/cjs/components/sidebar/CSidebarHeader.js.map +1 -1
  216. package/dist/cjs/components/sidebar/CSidebarNav.js +2 -2
  217. package/dist/cjs/components/sidebar/CSidebarNav.js.map +1 -1
  218. package/dist/cjs/components/sidebar/CSidebarToggler.js +1 -1
  219. package/dist/cjs/components/sidebar/CSidebarToggler.js.map +1 -1
  220. package/dist/cjs/components/spinner/CSpinner.js +2 -2
  221. package/dist/cjs/components/spinner/CSpinner.js.map +1 -1
  222. package/dist/cjs/components/table/CTable.js +1 -1
  223. package/dist/cjs/components/table/CTable.js.map +1 -1
  224. package/dist/cjs/components/table/CTableBody.js +1 -1
  225. package/dist/cjs/components/table/CTableBody.js.map +1 -1
  226. package/dist/cjs/components/table/CTableCaption.js.map +1 -1
  227. package/dist/cjs/components/table/CTableDataCell.js +1 -1
  228. package/dist/cjs/components/table/CTableDataCell.js.map +1 -1
  229. package/dist/cjs/components/table/CTableFoot.js +1 -1
  230. package/dist/cjs/components/table/CTableFoot.js.map +1 -1
  231. package/dist/cjs/components/table/CTableHead.js +1 -1
  232. package/dist/cjs/components/table/CTableHead.js.map +1 -1
  233. package/dist/cjs/components/table/CTableHeaderCell.js +1 -1
  234. package/dist/cjs/components/table/CTableHeaderCell.js.map +1 -1
  235. package/dist/cjs/components/table/CTableResponsiveWrapper.js.map +1 -1
  236. package/dist/cjs/components/table/CTableRow.js +1 -1
  237. package/dist/cjs/components/table/CTableRow.js.map +1 -1
  238. package/dist/cjs/components/table/utils.js +1 -1
  239. package/dist/cjs/components/table/utils.js.map +1 -1
  240. package/dist/cjs/components/tabs/CTab.js +1 -1
  241. package/dist/cjs/components/tabs/CTab.js.map +1 -1
  242. package/dist/cjs/components/tabs/CTabContent.js +1 -1
  243. package/dist/cjs/components/tabs/CTabContent.js.map +1 -1
  244. package/dist/cjs/components/tabs/CTabList.js +2 -2
  245. package/dist/cjs/components/tabs/CTabList.js.map +1 -1
  246. package/dist/cjs/components/tabs/CTabPane.js +2 -2
  247. package/dist/cjs/components/tabs/CTabPane.js.map +1 -1
  248. package/dist/cjs/components/tabs/CTabPanel.js +2 -2
  249. package/dist/cjs/components/tabs/CTabPanel.js.map +1 -1
  250. package/dist/cjs/components/tabs/CTabs.js +1 -1
  251. package/dist/cjs/components/tabs/CTabs.js.map +1 -1
  252. package/dist/cjs/components/toast/CToast.js +3 -3
  253. package/dist/cjs/components/toast/CToast.js.map +1 -1
  254. package/dist/cjs/components/toast/CToastBody.js +1 -1
  255. package/dist/cjs/components/toast/CToastBody.js.map +1 -1
  256. package/dist/cjs/components/toast/CToastClose.js.map +1 -1
  257. package/dist/cjs/components/toast/CToastHeader.js +1 -1
  258. package/dist/cjs/components/toast/CToastHeader.js.map +1 -1
  259. package/dist/cjs/components/toast/CToaster.js +1 -1
  260. package/dist/cjs/components/toast/CToaster.js.map +1 -1
  261. package/dist/cjs/components/tooltip/CTooltip.d.ts +67 -15
  262. package/dist/cjs/components/tooltip/CTooltip.js +55 -63
  263. package/dist/cjs/components/tooltip/CTooltip.js.map +1 -1
  264. package/dist/cjs/components/widgets/CWidgetStatsA.js +1 -1
  265. package/dist/cjs/components/widgets/CWidgetStatsA.js.map +1 -1
  266. package/dist/cjs/components/widgets/CWidgetStatsB.js.map +1 -1
  267. package/dist/cjs/components/widgets/CWidgetStatsC.js +1 -1
  268. package/dist/cjs/components/widgets/CWidgetStatsC.js.map +1 -1
  269. package/dist/cjs/components/widgets/CWidgetStatsD.js +1 -1
  270. package/dist/cjs/components/widgets/CWidgetStatsD.js.map +1 -1
  271. package/dist/cjs/components/widgets/CWidgetStatsE.js +1 -1
  272. package/dist/cjs/components/widgets/CWidgetStatsE.js.map +1 -1
  273. package/dist/cjs/components/widgets/CWidgetStatsF.js +1 -1
  274. package/dist/cjs/components/widgets/CWidgetStatsF.js.map +1 -1
  275. package/dist/cjs/hooks/index.d.ts +2 -1
  276. package/dist/cjs/hooks/useClipboard.d.ts +12 -0
  277. package/dist/cjs/hooks/useClipboard.js +54 -0
  278. package/dist/cjs/hooks/useClipboard.js.map +1 -0
  279. package/dist/cjs/hooks/useColorModes.js +1 -1
  280. package/dist/cjs/hooks/useColorModes.js.map +1 -1
  281. package/dist/cjs/hooks/useForkedRef.js.map +1 -1
  282. package/dist/cjs/hooks/usePopper.js.map +1 -1
  283. package/dist/cjs/index.js +2 -0
  284. package/dist/cjs/index.js.map +1 -1
  285. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/extends.js +6 -11
  286. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -1
  287. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +2 -4
  288. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js.map +1 -1
  289. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +7 -10
  290. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -1
  291. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +4 -6
  292. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js.map +1 -1
  293. package/dist/cjs/node_modules/classnames/index.js +61 -60
  294. package/dist/cjs/node_modules/classnames/index.js.map +1 -1
  295. package/dist/cjs/node_modules/dom-helpers/esm/addClass.js.map +1 -1
  296. package/dist/cjs/node_modules/dom-helpers/esm/hasClass.js.map +1 -1
  297. package/dist/cjs/node_modules/dom-helpers/esm/removeClass.js.map +1 -1
  298. package/dist/cjs/node_modules/react-transition-group/esm/CSSTransition.js +9 -9
  299. package/dist/cjs/node_modules/react-transition-group/esm/CSSTransition.js.map +1 -1
  300. package/dist/cjs/node_modules/react-transition-group/esm/Transition.js +2 -2
  301. package/dist/cjs/node_modules/react-transition-group/esm/Transition.js.map +1 -1
  302. package/dist/cjs/node_modules/react-transition-group/esm/config.js.map +1 -1
  303. package/dist/cjs/node_modules/react-transition-group/esm/utils/PropTypes.js.map +1 -1
  304. package/dist/cjs/node_modules/react-transition-group/esm/utils/reflow.js.map +1 -1
  305. package/dist/cjs/node_modules/tslib/tslib.es6.js +41 -1
  306. package/dist/cjs/node_modules/tslib/tslib.es6.js.map +1 -1
  307. package/dist/cjs/props.js.map +1 -1
  308. package/dist/cjs/utils/executeAfterTransition.js +1 -1
  309. package/dist/cjs/utils/executeAfterTransition.js.map +1 -1
  310. package/dist/cjs/utils/getNextActiveElement.js.map +1 -1
  311. package/dist/cjs/utils/getRTLPlacement.js.map +1 -1
  312. package/dist/cjs/utils/getTransitionDurationFromElement.js.map +1 -1
  313. package/dist/cjs/utils/index.d.ts +2 -1
  314. package/dist/cjs/utils/isInViewport.js.map +1 -1
  315. package/dist/cjs/utils/isRTL.js.map +1 -1
  316. package/dist/cjs/utils/mergeClassNames.d.ts +2 -0
  317. package/dist/esm/_virtual/index.js +6 -2
  318. package/dist/esm/_virtual/index.js.map +1 -1
  319. package/dist/esm/_virtual/index2.js +4 -0
  320. package/dist/esm/_virtual/index2.js.map +1 -0
  321. package/dist/esm/components/accordion/CAccordion.js +2 -2
  322. package/dist/esm/components/accordion/CAccordion.js.map +1 -1
  323. package/dist/esm/components/accordion/CAccordionBody.js +3 -3
  324. package/dist/esm/components/accordion/CAccordionBody.js.map +1 -1
  325. package/dist/esm/components/accordion/CAccordionButton.js +3 -3
  326. package/dist/esm/components/accordion/CAccordionButton.js.map +1 -1
  327. package/dist/esm/components/accordion/CAccordionHeader.js +1 -1
  328. package/dist/esm/components/accordion/CAccordionHeader.js.map +1 -1
  329. package/dist/esm/components/accordion/CAccordionItem.d.ts +5 -0
  330. package/dist/esm/components/accordion/CAccordionItem.js +9 -6
  331. package/dist/esm/components/accordion/CAccordionItem.js.map +1 -1
  332. package/dist/esm/components/alert/CAlert.js +2 -2
  333. package/dist/esm/components/alert/CAlert.js.map +1 -1
  334. package/dist/esm/components/alert/CAlertHeading.js +2 -2
  335. package/dist/esm/components/alert/CAlertHeading.js.map +1 -1
  336. package/dist/esm/components/alert/CAlertLink.js +1 -1
  337. package/dist/esm/components/alert/CAlertLink.js.map +1 -1
  338. package/dist/esm/components/avatar/CAvatar.js +2 -2
  339. package/dist/esm/components/avatar/CAvatar.js.map +1 -1
  340. package/dist/esm/components/backdrop/CBackdrop.js +2 -2
  341. package/dist/esm/components/backdrop/CBackdrop.js.map +1 -1
  342. package/dist/esm/components/badge/CBadge.js +8 -8
  343. package/dist/esm/components/badge/CBadge.js.map +1 -1
  344. package/dist/esm/components/breadcrumb/CBreadcrumb.js +1 -1
  345. package/dist/esm/components/breadcrumb/CBreadcrumb.js.map +1 -1
  346. package/dist/esm/components/breadcrumb/CBreadcrumbItem.js +1 -1
  347. package/dist/esm/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
  348. package/dist/esm/components/button/CButton.js +2 -2
  349. package/dist/esm/components/button/CButton.js.map +1 -1
  350. package/dist/esm/components/button-group/CButtonGroup.js +1 -1
  351. package/dist/esm/components/button-group/CButtonGroup.js.map +1 -1
  352. package/dist/esm/components/button-group/CButtonToolbar.js +1 -1
  353. package/dist/esm/components/button-group/CButtonToolbar.js.map +1 -1
  354. package/dist/esm/components/callout/CCallout.js +1 -1
  355. package/dist/esm/components/callout/CCallout.js.map +1 -1
  356. package/dist/esm/components/card/CCard.js +1 -1
  357. package/dist/esm/components/card/CCard.js.map +1 -1
  358. package/dist/esm/components/card/CCardBody.js +1 -1
  359. package/dist/esm/components/card/CCardBody.js.map +1 -1
  360. package/dist/esm/components/card/CCardFooter.js +1 -1
  361. package/dist/esm/components/card/CCardFooter.js.map +1 -1
  362. package/dist/esm/components/card/CCardGroup.js +1 -1
  363. package/dist/esm/components/card/CCardGroup.js.map +1 -1
  364. package/dist/esm/components/card/CCardHeader.js +2 -2
  365. package/dist/esm/components/card/CCardHeader.js.map +1 -1
  366. package/dist/esm/components/card/CCardImage.js +2 -2
  367. package/dist/esm/components/card/CCardImage.js.map +1 -1
  368. package/dist/esm/components/card/CCardImageOverlay.js +1 -1
  369. package/dist/esm/components/card/CCardImageOverlay.js.map +1 -1
  370. package/dist/esm/components/card/CCardLink.js +1 -1
  371. package/dist/esm/components/card/CCardLink.js.map +1 -1
  372. package/dist/esm/components/card/CCardSubtitle.js +2 -2
  373. package/dist/esm/components/card/CCardSubtitle.js.map +1 -1
  374. package/dist/esm/components/card/CCardText.js +2 -2
  375. package/dist/esm/components/card/CCardText.js.map +1 -1
  376. package/dist/esm/components/card/CCardTitle.js +2 -2
  377. package/dist/esm/components/card/CCardTitle.js.map +1 -1
  378. package/dist/esm/components/carousel/CCarousel.js +2 -2
  379. package/dist/esm/components/carousel/CCarousel.js.map +1 -1
  380. package/dist/esm/components/carousel/CCarouselCaption.js +1 -1
  381. package/dist/esm/components/carousel/CCarouselCaption.js.map +1 -1
  382. package/dist/esm/components/carousel/CCarouselItem.js +7 -7
  383. package/dist/esm/components/carousel/CCarouselItem.js.map +1 -1
  384. package/dist/esm/components/close-button/CCloseButton.js +1 -1
  385. package/dist/esm/components/close-button/CCloseButton.js.map +1 -1
  386. package/dist/esm/components/collapse/CCollapse.js +1 -1
  387. package/dist/esm/components/collapse/CCollapse.js.map +1 -1
  388. package/dist/esm/components/conditional-portal/CConditionalPortal.js.map +1 -1
  389. package/dist/esm/components/dropdown/CDropdown.d.ts +77 -20
  390. package/dist/esm/components/dropdown/CDropdown.js +7 -4
  391. package/dist/esm/components/dropdown/CDropdown.js.map +1 -1
  392. package/dist/esm/components/dropdown/CDropdownDivider.js +1 -1
  393. package/dist/esm/components/dropdown/CDropdownDivider.js.map +1 -1
  394. package/dist/esm/components/dropdown/CDropdownHeader.js +2 -2
  395. package/dist/esm/components/dropdown/CDropdownHeader.js.map +1 -1
  396. package/dist/esm/components/dropdown/CDropdownItem.js +2 -2
  397. package/dist/esm/components/dropdown/CDropdownItem.js.map +1 -1
  398. package/dist/esm/components/dropdown/CDropdownItemPlain.js +2 -2
  399. package/dist/esm/components/dropdown/CDropdownItemPlain.js.map +1 -1
  400. package/dist/esm/components/dropdown/CDropdownMenu.js +4 -4
  401. package/dist/esm/components/dropdown/CDropdownMenu.js.map +1 -1
  402. package/dist/esm/components/dropdown/CDropdownToggle.js +3 -3
  403. package/dist/esm/components/dropdown/CDropdownToggle.js.map +1 -1
  404. package/dist/esm/components/dropdown/utils.js.map +1 -1
  405. package/dist/esm/components/footer/CFooter.js +1 -1
  406. package/dist/esm/components/footer/CFooter.js.map +1 -1
  407. package/dist/esm/components/form/CForm.js +1 -1
  408. package/dist/esm/components/form/CForm.js.map +1 -1
  409. package/dist/esm/components/form/CFormCheck.js +2 -2
  410. package/dist/esm/components/form/CFormCheck.js.map +1 -1
  411. package/dist/esm/components/form/CFormControlValidation.js.map +1 -1
  412. package/dist/esm/components/form/CFormControlWrapper.js.map +1 -1
  413. package/dist/esm/components/form/CFormFeedback.js +2 -2
  414. package/dist/esm/components/form/CFormFeedback.js.map +1 -1
  415. package/dist/esm/components/form/CFormFloating.js +1 -1
  416. package/dist/esm/components/form/CFormFloating.js.map +1 -1
  417. package/dist/esm/components/form/CFormInput.js +2 -2
  418. package/dist/esm/components/form/CFormInput.js.map +1 -1
  419. package/dist/esm/components/form/CFormLabel.js +2 -2
  420. package/dist/esm/components/form/CFormLabel.js.map +1 -1
  421. package/dist/esm/components/form/CFormRange.js +1 -1
  422. package/dist/esm/components/form/CFormRange.js.map +1 -1
  423. package/dist/esm/components/form/CFormSelect.js +1 -1
  424. package/dist/esm/components/form/CFormSelect.js.map +1 -1
  425. package/dist/esm/components/form/CFormSwitch.js +2 -2
  426. package/dist/esm/components/form/CFormSwitch.js.map +1 -1
  427. package/dist/esm/components/form/CFormText.js +2 -2
  428. package/dist/esm/components/form/CFormText.js.map +1 -1
  429. package/dist/esm/components/form/CFormTextarea.js +1 -1
  430. package/dist/esm/components/form/CFormTextarea.js.map +1 -1
  431. package/dist/esm/components/form/CInputGroup.js +1 -1
  432. package/dist/esm/components/form/CInputGroup.js.map +1 -1
  433. package/dist/esm/components/form/CInputGroupText.js +2 -2
  434. package/dist/esm/components/form/CInputGroupText.js.map +1 -1
  435. package/dist/esm/components/grid/CCol.js +1 -1
  436. package/dist/esm/components/grid/CCol.js.map +1 -1
  437. package/dist/esm/components/grid/CContainer.js +1 -1
  438. package/dist/esm/components/grid/CContainer.js.map +1 -1
  439. package/dist/esm/components/grid/CRow.js +1 -1
  440. package/dist/esm/components/grid/CRow.js.map +1 -1
  441. package/dist/esm/components/header/CHeader.js +1 -1
  442. package/dist/esm/components/header/CHeader.js.map +1 -1
  443. package/dist/esm/components/header/CHeaderBrand.js +2 -2
  444. package/dist/esm/components/header/CHeaderBrand.js.map +1 -1
  445. package/dist/esm/components/header/CHeaderDivider.js +1 -1
  446. package/dist/esm/components/header/CHeaderDivider.js.map +1 -1
  447. package/dist/esm/components/header/CHeaderNav.js +2 -2
  448. package/dist/esm/components/header/CHeaderNav.js.map +1 -1
  449. package/dist/esm/components/header/CHeaderText.js +1 -1
  450. package/dist/esm/components/header/CHeaderText.js.map +1 -1
  451. package/dist/esm/components/header/CHeaderToggler.js +2 -2
  452. package/dist/esm/components/header/CHeaderToggler.js.map +1 -1
  453. package/dist/esm/components/image/CImage.js +1 -1
  454. package/dist/esm/components/image/CImage.js.map +1 -1
  455. package/dist/esm/components/link/CLink.js +2 -2
  456. package/dist/esm/components/link/CLink.js.map +1 -1
  457. package/dist/esm/components/list-group/CListGroup.js +5 -4
  458. package/dist/esm/components/list-group/CListGroup.js.map +1 -1
  459. package/dist/esm/components/list-group/CListGroupItem.js +2 -2
  460. package/dist/esm/components/list-group/CListGroupItem.js.map +1 -1
  461. package/dist/esm/components/modal/CModal.js +4 -5
  462. package/dist/esm/components/modal/CModal.js.map +1 -1
  463. package/dist/esm/components/modal/CModalBody.js +1 -1
  464. package/dist/esm/components/modal/CModalBody.js.map +1 -1
  465. package/dist/esm/components/modal/CModalContent.js +1 -1
  466. package/dist/esm/components/modal/CModalContent.js.map +1 -1
  467. package/dist/esm/components/modal/CModalDialog.js +1 -1
  468. package/dist/esm/components/modal/CModalDialog.js.map +1 -1
  469. package/dist/esm/components/modal/CModalFooter.js +1 -1
  470. package/dist/esm/components/modal/CModalFooter.js.map +1 -1
  471. package/dist/esm/components/modal/CModalHeader.js +2 -2
  472. package/dist/esm/components/modal/CModalHeader.js.map +1 -1
  473. package/dist/esm/components/modal/CModalTitle.js +2 -2
  474. package/dist/esm/components/modal/CModalTitle.js.map +1 -1
  475. package/dist/esm/components/nav/CNav.js +2 -2
  476. package/dist/esm/components/nav/CNav.js.map +1 -1
  477. package/dist/esm/components/nav/CNavGroup.js +6 -6
  478. package/dist/esm/components/nav/CNavGroup.js.map +1 -1
  479. package/dist/esm/components/nav/CNavGroupItems.js +2 -2
  480. package/dist/esm/components/nav/CNavGroupItems.js.map +1 -1
  481. package/dist/esm/components/nav/CNavItem.js +2 -2
  482. package/dist/esm/components/nav/CNavItem.js.map +1 -1
  483. package/dist/esm/components/nav/CNavLink.js +2 -2
  484. package/dist/esm/components/nav/CNavLink.js.map +1 -1
  485. package/dist/esm/components/nav/CNavTitle.js +2 -2
  486. package/dist/esm/components/nav/CNavTitle.js.map +1 -1
  487. package/dist/esm/components/navbar/CNavbar.js +2 -2
  488. package/dist/esm/components/navbar/CNavbar.js.map +1 -1
  489. package/dist/esm/components/navbar/CNavbarBrand.js +2 -2
  490. package/dist/esm/components/navbar/CNavbarBrand.js.map +1 -1
  491. package/dist/esm/components/navbar/CNavbarNav.js +2 -2
  492. package/dist/esm/components/navbar/CNavbarNav.js.map +1 -1
  493. package/dist/esm/components/navbar/CNavbarText.js +1 -1
  494. package/dist/esm/components/navbar/CNavbarText.js.map +1 -1
  495. package/dist/esm/components/navbar/CNavbarToggler.js +2 -2
  496. package/dist/esm/components/navbar/CNavbarToggler.js.map +1 -1
  497. package/dist/esm/components/offcanvas/COffcanvas.js +3 -3
  498. package/dist/esm/components/offcanvas/COffcanvas.js.map +1 -1
  499. package/dist/esm/components/offcanvas/COffcanvasBody.js +1 -1
  500. package/dist/esm/components/offcanvas/COffcanvasBody.js.map +1 -1
  501. package/dist/esm/components/offcanvas/COffcanvasHeader.js +1 -1
  502. package/dist/esm/components/offcanvas/COffcanvasHeader.js.map +1 -1
  503. package/dist/esm/components/offcanvas/COffcanvasTitle.js +2 -2
  504. package/dist/esm/components/offcanvas/COffcanvasTitle.js.map +1 -1
  505. package/dist/esm/components/pagination/CPagination.js +1 -1
  506. package/dist/esm/components/pagination/CPagination.js.map +1 -1
  507. package/dist/esm/components/pagination/CPaginationItem.js +2 -2
  508. package/dist/esm/components/pagination/CPaginationItem.js.map +1 -1
  509. package/dist/esm/components/placeholder/CPlaceholder.js +2 -2
  510. package/dist/esm/components/placeholder/CPlaceholder.js.map +1 -1
  511. package/dist/esm/components/popover/CPopover.d.ts +75 -20
  512. package/dist/esm/components/popover/CPopover.js +57 -65
  513. package/dist/esm/components/popover/CPopover.js.map +1 -1
  514. package/dist/esm/components/progress/CProgress.d.ts +1 -1
  515. package/dist/esm/components/progress/CProgress.js +1 -1
  516. package/dist/esm/components/progress/CProgress.js.map +1 -1
  517. package/dist/esm/components/progress/CProgressBar.js +2 -2
  518. package/dist/esm/components/progress/CProgressBar.js.map +1 -1
  519. package/dist/esm/components/progress/CProgressStacked.js +1 -1
  520. package/dist/esm/components/progress/CProgressStacked.js.map +1 -1
  521. package/dist/esm/components/sidebar/CSidebar.d.ts +7 -2
  522. package/dist/esm/components/sidebar/CSidebar.js +12 -11
  523. package/dist/esm/components/sidebar/CSidebar.js.map +1 -1
  524. package/dist/esm/components/sidebar/CSidebarBrand.js +2 -2
  525. package/dist/esm/components/sidebar/CSidebarBrand.js.map +1 -1
  526. package/dist/esm/components/sidebar/CSidebarFooter.js +1 -1
  527. package/dist/esm/components/sidebar/CSidebarFooter.js.map +1 -1
  528. package/dist/esm/components/sidebar/CSidebarHeader.js +1 -1
  529. package/dist/esm/components/sidebar/CSidebarHeader.js.map +1 -1
  530. package/dist/esm/components/sidebar/CSidebarNav.js +2 -2
  531. package/dist/esm/components/sidebar/CSidebarNav.js.map +1 -1
  532. package/dist/esm/components/sidebar/CSidebarToggler.js +1 -1
  533. package/dist/esm/components/sidebar/CSidebarToggler.js.map +1 -1
  534. package/dist/esm/components/spinner/CSpinner.js +2 -2
  535. package/dist/esm/components/spinner/CSpinner.js.map +1 -1
  536. package/dist/esm/components/table/CTable.js +1 -1
  537. package/dist/esm/components/table/CTable.js.map +1 -1
  538. package/dist/esm/components/table/CTableBody.js +1 -1
  539. package/dist/esm/components/table/CTableBody.js.map +1 -1
  540. package/dist/esm/components/table/CTableCaption.js.map +1 -1
  541. package/dist/esm/components/table/CTableDataCell.js +1 -1
  542. package/dist/esm/components/table/CTableDataCell.js.map +1 -1
  543. package/dist/esm/components/table/CTableFoot.js +1 -1
  544. package/dist/esm/components/table/CTableFoot.js.map +1 -1
  545. package/dist/esm/components/table/CTableHead.js +1 -1
  546. package/dist/esm/components/table/CTableHead.js.map +1 -1
  547. package/dist/esm/components/table/CTableHeaderCell.js +1 -1
  548. package/dist/esm/components/table/CTableHeaderCell.js.map +1 -1
  549. package/dist/esm/components/table/CTableResponsiveWrapper.js.map +1 -1
  550. package/dist/esm/components/table/CTableRow.js +1 -1
  551. package/dist/esm/components/table/CTableRow.js.map +1 -1
  552. package/dist/esm/components/table/utils.js +1 -1
  553. package/dist/esm/components/table/utils.js.map +1 -1
  554. package/dist/esm/components/tabs/CTab.js +1 -1
  555. package/dist/esm/components/tabs/CTab.js.map +1 -1
  556. package/dist/esm/components/tabs/CTabContent.js +1 -1
  557. package/dist/esm/components/tabs/CTabContent.js.map +1 -1
  558. package/dist/esm/components/tabs/CTabList.js +2 -2
  559. package/dist/esm/components/tabs/CTabList.js.map +1 -1
  560. package/dist/esm/components/tabs/CTabPane.js +2 -2
  561. package/dist/esm/components/tabs/CTabPane.js.map +1 -1
  562. package/dist/esm/components/tabs/CTabPanel.js +2 -2
  563. package/dist/esm/components/tabs/CTabPanel.js.map +1 -1
  564. package/dist/esm/components/tabs/CTabs.js +1 -1
  565. package/dist/esm/components/tabs/CTabs.js.map +1 -1
  566. package/dist/esm/components/toast/CToast.js +3 -3
  567. package/dist/esm/components/toast/CToast.js.map +1 -1
  568. package/dist/esm/components/toast/CToastBody.js +1 -1
  569. package/dist/esm/components/toast/CToastBody.js.map +1 -1
  570. package/dist/esm/components/toast/CToastClose.js.map +1 -1
  571. package/dist/esm/components/toast/CToastHeader.js +1 -1
  572. package/dist/esm/components/toast/CToastHeader.js.map +1 -1
  573. package/dist/esm/components/toast/CToaster.js +1 -1
  574. package/dist/esm/components/toast/CToaster.js.map +1 -1
  575. package/dist/esm/components/tooltip/CTooltip.d.ts +67 -15
  576. package/dist/esm/components/tooltip/CTooltip.js +57 -65
  577. package/dist/esm/components/tooltip/CTooltip.js.map +1 -1
  578. package/dist/esm/components/widgets/CWidgetStatsA.js +1 -1
  579. package/dist/esm/components/widgets/CWidgetStatsA.js.map +1 -1
  580. package/dist/esm/components/widgets/CWidgetStatsB.js.map +1 -1
  581. package/dist/esm/components/widgets/CWidgetStatsC.js +1 -1
  582. package/dist/esm/components/widgets/CWidgetStatsC.js.map +1 -1
  583. package/dist/esm/components/widgets/CWidgetStatsD.js +1 -1
  584. package/dist/esm/components/widgets/CWidgetStatsD.js.map +1 -1
  585. package/dist/esm/components/widgets/CWidgetStatsE.js +1 -1
  586. package/dist/esm/components/widgets/CWidgetStatsE.js.map +1 -1
  587. package/dist/esm/components/widgets/CWidgetStatsF.js +1 -1
  588. package/dist/esm/components/widgets/CWidgetStatsF.js.map +1 -1
  589. package/dist/esm/hooks/index.d.ts +2 -1
  590. package/dist/esm/hooks/useClipboard.d.ts +12 -0
  591. package/dist/esm/hooks/useClipboard.js +52 -0
  592. package/dist/esm/hooks/useClipboard.js.map +1 -0
  593. package/dist/esm/hooks/useColorModes.js +1 -1
  594. package/dist/esm/hooks/useColorModes.js.map +1 -1
  595. package/dist/esm/hooks/useForkedRef.js.map +1 -1
  596. package/dist/esm/hooks/usePopper.js.map +1 -1
  597. package/dist/esm/index.js +1 -0
  598. package/dist/esm/index.js.map +1 -1
  599. package/dist/esm/node_modules/@babel/runtime/helpers/esm/extends.js +6 -11
  600. package/dist/esm/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -1
  601. package/dist/esm/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +2 -4
  602. package/dist/esm/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js.map +1 -1
  603. package/dist/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +7 -10
  604. package/dist/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -1
  605. package/dist/esm/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +4 -6
  606. package/dist/esm/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js.map +1 -1
  607. package/dist/esm/node_modules/classnames/index.js +61 -58
  608. package/dist/esm/node_modules/classnames/index.js.map +1 -1
  609. package/dist/esm/node_modules/dom-helpers/esm/addClass.js.map +1 -1
  610. package/dist/esm/node_modules/dom-helpers/esm/hasClass.js.map +1 -1
  611. package/dist/esm/node_modules/dom-helpers/esm/removeClass.js.map +1 -1
  612. package/dist/esm/node_modules/react-transition-group/esm/CSSTransition.js.map +1 -1
  613. package/dist/esm/node_modules/react-transition-group/esm/Transition.js +2 -2
  614. package/dist/esm/node_modules/react-transition-group/esm/Transition.js.map +1 -1
  615. package/dist/esm/node_modules/react-transition-group/esm/config.js.map +1 -1
  616. package/dist/esm/node_modules/react-transition-group/esm/utils/PropTypes.js.map +1 -1
  617. package/dist/esm/node_modules/react-transition-group/esm/utils/reflow.js.map +1 -1
  618. package/dist/esm/node_modules/tslib/tslib.es6.js +40 -2
  619. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -1
  620. package/dist/esm/props.js.map +1 -1
  621. package/dist/esm/utils/executeAfterTransition.js +1 -1
  622. package/dist/esm/utils/executeAfterTransition.js.map +1 -1
  623. package/dist/esm/utils/getNextActiveElement.js.map +1 -1
  624. package/dist/esm/utils/getRTLPlacement.js.map +1 -1
  625. package/dist/esm/utils/getTransitionDurationFromElement.js.map +1 -1
  626. package/dist/esm/utils/index.d.ts +2 -1
  627. package/dist/esm/utils/isInViewport.js.map +1 -1
  628. package/dist/esm/utils/isRTL.js.map +1 -1
  629. package/dist/esm/utils/mergeClassNames.d.ts +2 -0
  630. package/package.json +16 -14
  631. package/src/components/accordion/CAccordionBody.tsx +3 -3
  632. package/src/components/accordion/CAccordionButton.tsx +3 -2
  633. package/src/components/accordion/CAccordionItem.tsx +14 -5
  634. package/src/components/accordion/__tests__/__snapshots__/CAccordionButton.spec.tsx.snap +0 -2
  635. package/src/components/accordion/__tests__/__snapshots__/CAccordionHeader.spec.tsx.snap +0 -2
  636. package/src/components/badge/CBadge.tsx +1 -1
  637. package/src/components/carousel/__tests__/CCarousel.spec.tsx +1 -2
  638. package/src/components/dropdown/CDropdown.tsx +106 -26
  639. package/src/components/dropdown/CDropdownMenu.tsx +0 -1
  640. package/src/components/dropdown/CDropdownToggle.tsx +1 -1
  641. package/src/components/dropdown/__tests__/CDropdown.spec.tsx +43 -19
  642. package/src/components/list-group/CListGroup.tsx +2 -1
  643. package/src/components/modal/CModal.tsx +0 -2
  644. package/src/components/modal/__tests__/CModal.spec.tsx +33 -25
  645. package/src/components/nav/CNavGroup.tsx +6 -2
  646. package/src/components/nav/__tests__/__snapshots__/CNavGroup.spec.tsx.snap +4 -1
  647. package/src/components/popover/CPopover.tsx +166 -87
  648. package/src/components/popover/__tests__/CPopover.spec.tsx +1 -1
  649. package/src/components/popover/__tests__/__snapshots__/CPopover.spec.tsx.snap +2 -3
  650. package/src/components/progress/CProgress.tsx +1 -1
  651. package/src/components/sidebar/CSidebar.tsx +15 -5
  652. package/src/components/tooltip/CTooltip.tsx +157 -82
  653. package/src/components/tooltip/__tests__/__snapshots__/CTooltip.spec.tsx.snap +0 -1
  654. package/src/hooks/index.ts +2 -1
  655. package/src/hooks/useClipboard.ts +38 -0
  656. package/src/utils/index.ts +2 -0
  657. package/src/utils/mergeClassNames.ts +25 -0
@@ -1,6 +1,15 @@
1
- import React, { forwardRef, HTMLAttributes, ReactNode, useRef, useEffect, useState } from 'react'
1
+ import React, {
2
+ forwardRef,
3
+ HTMLAttributes,
4
+ ReactNode,
5
+ useEffect,
6
+ useId,
7
+ useRef,
8
+ useState,
9
+ } from 'react'
2
10
  import classNames from 'classnames'
3
11
  import PropTypes from 'prop-types'
12
+ import type { Options } from '@popperjs/core'
4
13
 
5
14
  import { CConditionalPortal } from '../conditional-portal'
6
15
  import { useForkedRef, usePopper } from '../../hooks'
@@ -10,65 +19,132 @@ import { executeAfterTransition, getRTLPlacement } from '../../utils'
10
19
 
11
20
  export interface CPopoverProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title' | 'content'> {
12
21
  /**
13
- * Apply a CSS fade transition to the popover.
22
+ * Adds a fade transition animation to the React Popover.
14
23
  *
15
24
  * @since 4.9.0
16
25
  */
17
26
  animation?: boolean
27
+
18
28
  /**
19
- * A string of all className you want applied to the component.
29
+ * Custom class name(s) for additional styling.
20
30
  */
21
31
  className?: string
32
+
22
33
  /**
23
- * Appends the react popover to a specific element. You can pass an HTML element or function that returns a single element. By default `document.body`.
34
+ * Defines the container element to which the React Popover is appended.
35
+ * Accepts:
36
+ * - A DOM element (`HTMLElement` or `DocumentFragment`)
37
+ * - A function that returns a single element
38
+ * - `null` (defaults to `document.body`)
24
39
  *
40
+ * @example
41
+ * <CPopover container={document.getElementById('my-container')}>...</CPopover>
42
+ *
43
+ * @default document.body
25
44
  * @since 4.11.0
26
45
  */
27
46
  container?: DocumentFragment | Element | (() => DocumentFragment | Element | null) | null
47
+
28
48
  /**
29
- * Content node for your component.
49
+ * Main content of the React Popover. It can be a string or any valid React node.
30
50
  */
31
51
  content: ReactNode | string
52
+
32
53
  /**
33
- * Offset of the popover relative to its target.
34
- */
35
- offset?: [number, number]
36
- /**
37
- * The delay for displaying and hiding the popover (in milliseconds). When a numerical value is provided, the delay applies to both the hide and show actions. The object structure for specifying the delay is as follows: delay: `{ 'show': 500, 'hide': 100 }`.
54
+ * Delay (in milliseconds) before showing or hiding the React Popover.
55
+ * - If a number is provided, that delay applies to both "show" and "hide".
56
+ * - If an object is provided, use separate values for "show" and "hide".
57
+ *
58
+ * @example
59
+ * // Delays 300ms on both show and hide
60
+ * <CPopover delay={300}>...</CPopover>
61
+ *
62
+ * // Delays 500ms on show and 100ms on hide
63
+ * <CPopover delay={{ show: 500, hide: 100 }}>...</CPopover>
38
64
  *
39
65
  * @since 4.9.0
40
66
  */
41
67
  delay?: number | { show: number; hide: number }
68
+
42
69
  /**
43
- * Specify the desired order of fallback placements by providing a list of placements as an array. The placements should be prioritized based on preference.
70
+ * Specifies the fallback placements when the preferred `placement` cannot be met.
44
71
  *
72
+ * @type 'top', 'right', 'bottom', 'left' | ('top', 'right', 'bottom', 'left')[]
45
73
  * @since 4.9.0
46
74
  */
47
75
  fallbackPlacements?: Placements | Placements[]
76
+
48
77
  /**
49
- * Callback fired when the component requests to be hidden.
78
+ * Offset of the React Popover relative to its toggle element, in the form `[x, y]`.
79
+ *
80
+ * @example
81
+ * // Offset the menu 0px in X and 10px in Y direction
82
+ * <CPopover offset={[0, 10]}>...</CPopover>
83
+ *
84
+ * // Offset the menu 5px in both X and Y direction
85
+ * <CPopover offset={[5, 5]}>...</CPopover>
86
+ */
87
+ offset?: [number, number]
88
+
89
+ /**
90
+ * Invoked when the React Popover is about to hide.
50
91
  */
51
92
  onHide?: () => void
93
+
52
94
  /**
53
- * Callback fired when the component requests to be shown.
95
+ * Invoked when the React Popover is about to show.
54
96
  */
55
97
  onShow?: () => void
98
+
56
99
  /**
57
- * Title node for your component.
100
+ * Placement of the React Popover. Popper.js may override this based on available space.
58
101
  */
59
- title?: ReactNode | string
102
+ placement?: 'auto' | 'top' | 'right' | 'bottom' | 'left'
103
+
60
104
  /**
61
- * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.
105
+ * Allows customization of the Popper.js configuration for the React Popover.
106
+ * Can be an object or a function returning a modified configuration.
107
+ * [Learn more](https://popper.js.org/docs/v2/constructors/#options)
108
+ *
109
+ * @example
110
+ * <CPopover
111
+ * popperConfig={(defaultConfig) => ({
112
+ * ...defaultConfig,
113
+ * strategy: 'fixed',
114
+ * modifiers: [
115
+ * ...defaultConfig.modifiers,
116
+ * { name: 'computeStyles', options: { adaptive: false } },
117
+ * ],
118
+ * })}
119
+ * >...</CPopover>
62
120
  *
63
- * @type 'hover' | 'focus' | 'click'
121
+ * @since 5.5.0
64
122
  */
65
- trigger?: Triggers | Triggers[]
123
+ popperConfig?: Partial<Options> | ((defaultPopperConfig: Partial<Options>) => Partial<Options>)
124
+
66
125
  /**
67
- * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.
126
+ * Title for the React Popover header. Can be a string or any valid React node.
68
127
  */
69
- placement?: 'auto' | 'top' | 'right' | 'bottom' | 'left'
128
+ title?: ReactNode | string
129
+
70
130
  /**
71
- * Toggle the visibility of popover component.
131
+ * Determines which events trigger the visibility of the React Popover. Can be a single trigger or an array of triggers.
132
+ *
133
+ * @example
134
+ * // Hover-only popover
135
+ * <CPopover trigger="hover">...</CPopover>
136
+ *
137
+ * // Hover + click combined
138
+ * <CPopover trigger={['hover', 'click']}>...</CPopover>
139
+ *
140
+ * @type 'hover' | 'focus' | 'click' | ('hover' | 'focus' | 'click')[]
141
+ */
142
+ trigger?: Triggers | Triggers[]
143
+
144
+ /**
145
+ * Controls the visibility of the React Popover.
146
+ * - `true` shows the popover.
147
+ * - `false` hides the popover.
72
148
  */
73
149
  visible?: boolean
74
150
  }
@@ -87,120 +163,122 @@ export const CPopover = forwardRef<HTMLDivElement, CPopoverProps>(
87
163
  onHide,
88
164
  onShow,
89
165
  placement = 'top',
166
+ popperConfig,
90
167
  title,
91
168
  trigger = 'click',
92
169
  visible,
93
170
  ...rest
94
171
  },
95
- ref,
172
+ ref
96
173
  ) => {
97
174
  const popoverRef = useRef<HTMLDivElement>(null)
98
175
  const togglerRef = useRef(null)
99
176
  const forkedRef = useForkedRef(ref, popoverRef)
100
- const uID = useRef(`popover${Math.floor(Math.random() * 1_000_000)}`)
101
177
 
102
- const { initPopper, destroyPopper } = usePopper()
178
+ const id = `popover${useId()}`
103
179
  const [mounted, setMounted] = useState(false)
104
180
  const [_visible, setVisible] = useState(visible)
105
181
 
182
+ const { initPopper, destroyPopper } = usePopper()
183
+
106
184
  const _delay = typeof delay === 'number' ? { show: delay, hide: delay } : delay
107
185
 
108
- const popperConfig = {
186
+ const defaultPopperConfig: Partial<Options> = {
109
187
  modifiers: [
110
- {
111
- name: 'arrow',
112
- options: {
113
- element: '.popover-arrow',
114
- },
115
- },
116
- {
117
- name: 'flip',
118
- options: {
119
- fallbackPlacements: fallbackPlacements,
120
- },
121
- },
122
- {
123
- name: 'offset',
124
- options: {
125
- offset: offset,
126
- },
127
- },
188
+ { name: 'arrow', options: { element: '.popover-arrow' } },
189
+ { name: 'flip', options: { fallbackPlacements } },
190
+ { name: 'offset', options: { offset } },
128
191
  ],
129
192
  placement: getRTLPlacement(placement, togglerRef.current),
130
193
  }
131
194
 
132
- useEffect(() => {
133
- setVisible(visible)
134
- }, [visible])
195
+ const computedPopperConfig: Partial<Options> = {
196
+ ...defaultPopperConfig,
197
+ ...(typeof popperConfig === 'function' ? popperConfig(defaultPopperConfig) : popperConfig),
198
+ }
135
199
 
136
200
  useEffect(() => {
137
- if (_visible) {
138
- setMounted(true)
201
+ if (visible) {
202
+ handleShow()
203
+ return
204
+ }
139
205
 
140
- if (popoverRef.current) {
141
- popoverRef.current.classList.remove('fade', 'show')
142
- destroyPopper()
143
- }
206
+ handleHide()
207
+ }, [visible])
144
208
 
209
+ useEffect(() => {
210
+ if (mounted && togglerRef.current && popoverRef.current) {
211
+ initPopper(togglerRef.current, popoverRef.current, computedPopperConfig)
145
212
  setTimeout(() => {
146
- if (togglerRef.current && popoverRef.current) {
147
- if (animation) {
148
- popoverRef.current.classList.add('fade')
149
- }
150
-
151
- initPopper(togglerRef.current, popoverRef.current, popperConfig)
152
- popoverRef.current.style.removeProperty('display')
153
- popoverRef.current.classList.add('show')
154
- onShow && onShow()
155
- }
213
+ setVisible(true)
156
214
  }, _delay.show)
215
+
216
+ return
157
217
  }
158
218
 
159
- return () => {
160
- if (popoverRef.current) {
161
- popoverRef.current.classList.remove('show')
162
- onHide && onHide()
163
- executeAfterTransition(() => {
164
- if (popoverRef.current) {
165
- popoverRef.current.style.display = 'none'
166
- }
167
-
168
- destroyPopper()
169
- setMounted(false)
170
- }, popoverRef.current)
171
- }
219
+ if (!mounted && togglerRef.current && popoverRef.current) {
220
+ destroyPopper()
221
+ }
222
+ }, [mounted])
223
+
224
+ useEffect(() => {
225
+ if (!_visible && togglerRef.current && popoverRef.current) {
226
+ executeAfterTransition(() => {
227
+ setMounted(false)
228
+ }, popoverRef.current)
172
229
  }
173
230
  }, [_visible])
174
231
 
232
+ const handleShow = () => {
233
+ setMounted(true)
234
+ if (onShow) {
235
+ onShow()
236
+ }
237
+ }
238
+
239
+ const handleHide = () => {
240
+ setTimeout(() => {
241
+ setVisible(false)
242
+ if (onHide) {
243
+ onHide()
244
+ }
245
+ }, _delay.hide)
246
+ }
247
+
175
248
  return (
176
249
  <>
177
250
  {React.cloneElement(children as React.ReactElement<any>, {
178
251
  ...(_visible && {
179
- 'aria-describedby': uID.current,
252
+ 'aria-describedby': id,
180
253
  }),
181
254
  ref: togglerRef,
182
255
  ...((trigger === 'click' || trigger.includes('click')) && {
183
- onClick: () => setVisible(!_visible),
256
+ onClick: () => (_visible ? handleHide() : handleShow()),
184
257
  }),
185
258
  ...((trigger === 'focus' || trigger.includes('focus')) && {
186
- onFocus: () => setVisible(true),
187
- onBlur: () => setVisible(false),
259
+ onFocus: () => handleShow(),
260
+ onBlur: () => handleHide(),
188
261
  }),
189
262
  ...((trigger === 'hover' || trigger.includes('hover')) && {
190
- onMouseEnter: () => setVisible(true),
191
- onMouseLeave: () => setVisible(false),
263
+ onMouseEnter: () => handleShow(),
264
+ onMouseLeave: () => handleHide(),
192
265
  }),
193
266
  })}
194
267
  <CConditionalPortal container={container} portal={true}>
195
268
  {mounted && (
196
269
  <div
197
- className={classNames('popover', 'bs-popover-auto', className)}
198
- id={uID.current}
270
+ className={classNames(
271
+ 'popover',
272
+ 'bs-popover-auto',
273
+ {
274
+ fade: animation,
275
+ show: _visible,
276
+ },
277
+ className
278
+ )}
279
+ id={id}
199
280
  ref={forkedRef}
200
281
  role="tooltip"
201
- style={{
202
- display: 'none',
203
- }}
204
282
  {...rest}
205
283
  >
206
284
  <div className="popover-arrow"></div>
@@ -211,7 +289,7 @@ export const CPopover = forwardRef<HTMLDivElement, CPopoverProps>(
211
289
  </CConditionalPortal>
212
290
  </>
213
291
  )
214
- },
292
+ }
215
293
  )
216
294
 
217
295
  CPopover.propTypes = {
@@ -232,6 +310,7 @@ CPopover.propTypes = {
232
310
  onHide: PropTypes.func,
233
311
  onShow: PropTypes.func,
234
312
  placement: PropTypes.oneOf(['auto', 'top', 'right', 'bottom', 'left']),
313
+ popperConfig: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
235
314
  title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
236
315
  trigger: triggerPropType,
237
316
  visible: PropTypes.bool,
@@ -31,7 +31,7 @@ test('CPopover customize', async () => {
31
31
  expect(container).toMatchSnapshot()
32
32
  let arrLength = container.getElementsByClassName('popover').length
33
33
  expect(arrLength).toBe(1)
34
- arrLength = container.getElementsByClassName('bs-popover-end').length
34
+ arrLength = container.getElementsByClassName('bs-popover-auto').length
35
35
  expect(arrLength).toBe(1)
36
36
  arrLength = container.getElementsByClassName('popover-arrow').length
37
37
  expect(arrLength).toBe(1)
@@ -3,15 +3,14 @@
3
3
  exports[`CPopover customize 1`] = `
4
4
  <body>
5
5
  <button
6
- aria-describedby="popover744956"
7
6
  class="btn btn-primary"
8
7
  type="button"
9
8
  >
10
9
  Test
11
10
  </button>
12
11
  <div
13
- class="popover bs-popover-auto fade show"
14
- id="popover744956"
12
+ class="popover bs-popover-auto fade"
13
+ id="popover:r1:"
15
14
  role="tooltip"
16
15
  style="position: absolute; left: 0px; top: 0px; margin: 0px;"
17
16
  >
@@ -17,7 +17,7 @@ export interface CProgressProps
17
17
  */
18
18
  height?: number
19
19
  /**
20
- * A string of all className you want applied to the <CProgressBar/> component.
20
+ * A string of all className you want applied to the `<CProgressBar/>` component.
21
21
  *
22
22
  * @since 4.9.0
23
23
  */
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, HTMLAttributes, useEffect, useRef, useState } from 'react'
1
+ import React, { ElementType, forwardRef, HTMLAttributes, useEffect, useRef, useState } from 'react'
2
2
  import { createPortal } from 'react-dom'
3
3
  import PropTypes from 'prop-types'
4
4
  import classNames from 'classnames'
@@ -7,8 +7,13 @@ import { CBackdrop } from '../backdrop'
7
7
 
8
8
  import { isInViewport } from '../../utils'
9
9
  import { useForkedRef } from '../../hooks'
10
+ import { PolymorphicRefForwardingComponent } from '../../helpers'
10
11
 
11
12
  export interface CSidebarProps extends HTMLAttributes<HTMLDivElement> {
13
+ /**
14
+ * Component used for the root node. Either a string to use a HTML element or a component.
15
+ */
16
+ as?: ElementType
12
17
  /**
13
18
  * A string of all className you want applied to the component.
14
19
  */
@@ -65,10 +70,14 @@ export interface CSidebarProps extends HTMLAttributes<HTMLDivElement> {
65
70
  const isOnMobile = (element: HTMLDivElement) =>
66
71
  Boolean(getComputedStyle(element).getPropertyValue('--cui-is-mobile'))
67
72
 
68
- export const CSidebar = forwardRef<HTMLDivElement, CSidebarProps>(
73
+ export const CSidebar: PolymorphicRefForwardingComponent<'div', CSidebarProps> = forwardRef<
74
+ HTMLDivElement,
75
+ CSidebarProps
76
+ >(
69
77
  (
70
78
  {
71
79
  children,
80
+ as: Component = 'div',
72
81
  className,
73
82
  colorScheme,
74
83
  narrow,
@@ -183,7 +192,7 @@ export const CSidebar = forwardRef<HTMLDivElement, CSidebarProps>(
183
192
 
184
193
  return (
185
194
  <>
186
- <div
195
+ <Component
187
196
  className={classNames(
188
197
  'sidebar',
189
198
  {
@@ -203,7 +212,7 @@ export const CSidebar = forwardRef<HTMLDivElement, CSidebarProps>(
203
212
  ref={forkedRef}
204
213
  >
205
214
  {children}
206
- </div>
215
+ </Component>
207
216
  {typeof window !== 'undefined' &&
208
217
  mobile &&
209
218
  createPortal(
@@ -216,6 +225,7 @@ export const CSidebar = forwardRef<HTMLDivElement, CSidebarProps>(
216
225
  )
217
226
 
218
227
  CSidebar.propTypes = {
228
+ as: PropTypes.elementType,
219
229
  children: PropTypes.node,
220
230
  className: PropTypes.string,
221
231
  colorScheme: PropTypes.oneOf(['dark', 'light']),
@@ -231,4 +241,4 @@ CSidebar.propTypes = {
231
241
  visible: PropTypes.bool,
232
242
  }
233
243
 
234
- CSidebar.displayName = 'CSidebar'
244
+ CSidebar.displayName = 'CSidebar'