@coreui/react 5.7.1 → 5.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cjs/components/accordion/CAccordion.js +5 -5
- package/dist/cjs/components/accordion/CAccordion.js.map +1 -1
- package/dist/cjs/components/accordion/CAccordionBody.js +4 -4
- package/dist/cjs/components/accordion/CAccordionBody.js.map +1 -1
- package/dist/cjs/components/accordion/CAccordionButton.js +4 -4
- package/dist/cjs/components/accordion/CAccordionButton.js.map +1 -1
- package/dist/cjs/components/accordion/CAccordionContext.js +1 -1
- package/dist/cjs/components/accordion/CAccordionContext.js.map +1 -1
- package/dist/cjs/components/accordion/CAccordionHeader.js +3 -3
- package/dist/cjs/components/accordion/CAccordionHeader.js.map +1 -1
- package/dist/cjs/components/accordion/CAccordionItem.js +11 -11
- package/dist/cjs/components/accordion/CAccordionItem.js.map +1 -1
- package/dist/cjs/components/accordion/CAccordionItemContext.js +1 -1
- package/dist/cjs/components/accordion/CAccordionItemContext.js.map +1 -1
- package/dist/cjs/components/alert/CAlert.js +8 -8
- package/dist/cjs/components/alert/CAlert.js.map +1 -1
- package/dist/cjs/components/alert/CAlertHeading.js +3 -3
- package/dist/cjs/components/alert/CAlertHeading.js.map +1 -1
- package/dist/cjs/components/alert/CAlertLink.js +3 -3
- package/dist/cjs/components/alert/CAlertLink.js.map +1 -1
- package/dist/cjs/components/avatar/CAvatar.js +8 -9
- package/dist/cjs/components/avatar/CAvatar.js.map +1 -1
- package/dist/cjs/components/backdrop/CBackdrop.js +6 -6
- package/dist/cjs/components/backdrop/CBackdrop.js.map +1 -1
- package/dist/cjs/components/badge/CBadge.js +13 -14
- package/dist/cjs/components/badge/CBadge.js.map +1 -1
- package/dist/cjs/components/breadcrumb/CBreadcrumb.js +3 -3
- package/dist/cjs/components/breadcrumb/CBreadcrumb.js.map +1 -1
- package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js +3 -3
- package/dist/cjs/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
- package/dist/cjs/components/button/CButton.js +8 -9
- package/dist/cjs/components/button/CButton.js.map +1 -1
- package/dist/cjs/components/button-group/CButtonGroup.js +3 -4
- package/dist/cjs/components/button-group/CButtonGroup.js.map +1 -1
- package/dist/cjs/components/button-group/CButtonToolbar.js +3 -3
- package/dist/cjs/components/button-group/CButtonToolbar.js.map +1 -1
- package/dist/cjs/components/callout/CCallout.js +5 -6
- package/dist/cjs/components/callout/CCallout.js.map +1 -1
- package/dist/cjs/components/card/CCard.js +7 -8
- package/dist/cjs/components/card/CCard.js.map +1 -1
- package/dist/cjs/components/card/CCardBody.js +3 -3
- package/dist/cjs/components/card/CCardBody.js.map +1 -1
- package/dist/cjs/components/card/CCardFooter.js +3 -3
- package/dist/cjs/components/card/CCardFooter.js.map +1 -1
- package/dist/cjs/components/card/CCardGroup.js +3 -3
- package/dist/cjs/components/card/CCardGroup.js.map +1 -1
- package/dist/cjs/components/card/CCardHeader.js +3 -3
- package/dist/cjs/components/card/CCardHeader.js.map +1 -1
- package/dist/cjs/components/card/CCardImage.js +3 -3
- package/dist/cjs/components/card/CCardImage.js.map +1 -1
- package/dist/cjs/components/card/CCardImageOverlay.js +3 -3
- package/dist/cjs/components/card/CCardImageOverlay.js.map +1 -1
- package/dist/cjs/components/card/CCardLink.js +3 -3
- package/dist/cjs/components/card/CCardLink.js.map +1 -1
- package/dist/cjs/components/card/CCardSubtitle.js +3 -3
- package/dist/cjs/components/card/CCardSubtitle.js.map +1 -1
- package/dist/cjs/components/card/CCardText.js +3 -3
- package/dist/cjs/components/card/CCardText.js.map +1 -1
- package/dist/cjs/components/card/CCardTitle.js +3 -3
- package/dist/cjs/components/card/CCardTitle.js.map +1 -1
- package/dist/cjs/components/carousel/CCarousel.js +41 -41
- package/dist/cjs/components/carousel/CCarousel.js.map +1 -1
- package/dist/cjs/components/carousel/CCarouselCaption.js +3 -3
- package/dist/cjs/components/carousel/CCarouselCaption.js.map +1 -1
- package/dist/cjs/components/carousel/CCarouselContext.js +1 -1
- package/dist/cjs/components/carousel/CCarouselContext.js.map +1 -1
- package/dist/cjs/components/carousel/CCarouselItem.js +21 -21
- package/dist/cjs/components/carousel/CCarouselItem.js.map +1 -1
- package/dist/cjs/components/close-button/CCloseButton.js +3 -3
- package/dist/cjs/components/close-button/CCloseButton.js.map +1 -1
- package/dist/cjs/components/collapse/CCollapse.js +16 -16
- package/dist/cjs/components/collapse/CCollapse.js.map +1 -1
- package/dist/cjs/components/conditional-portal/CConditionalPortal.js +4 -5
- package/dist/cjs/components/conditional-portal/CConditionalPortal.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdown.d.ts +41 -10
- package/dist/cjs/components/dropdown/CDropdown.js +131 -77
- package/dist/cjs/components/dropdown/CDropdown.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdownContext.d.ts +1 -1
- package/dist/cjs/components/dropdown/CDropdownContext.js +1 -1
- package/dist/cjs/components/dropdown/CDropdownContext.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdownDivider.js +3 -3
- package/dist/cjs/components/dropdown/CDropdownDivider.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdownHeader.js +3 -3
- package/dist/cjs/components/dropdown/CDropdownHeader.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdownItem.js +3 -3
- package/dist/cjs/components/dropdown/CDropdownItem.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdownItemPlain.js +3 -3
- package/dist/cjs/components/dropdown/CDropdownItemPlain.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdownMenu.js +6 -6
- package/dist/cjs/components/dropdown/CDropdownMenu.js.map +1 -1
- package/dist/cjs/components/dropdown/CDropdownToggle.d.ts +14 -3
- package/dist/cjs/components/dropdown/CDropdownToggle.js +20 -14
- package/dist/cjs/components/dropdown/CDropdownToggle.js.map +1 -1
- package/dist/cjs/components/dropdown/utils.d.ts +2 -0
- package/dist/cjs/components/dropdown/utils.js +20 -7
- package/dist/cjs/components/dropdown/utils.js.map +1 -1
- package/dist/cjs/components/focus-trap/CFocusTrap.d.ts +59 -0
- package/dist/cjs/components/focus-trap/CFocusTrap.js +162 -0
- package/dist/cjs/components/focus-trap/CFocusTrap.js.map +1 -0
- package/dist/cjs/components/focus-trap/index.d.ts +2 -0
- package/dist/cjs/components/focus-trap/utils.d.ts +36 -0
- package/dist/cjs/components/focus-trap/utils.js +108 -0
- package/dist/cjs/components/focus-trap/utils.js.map +1 -0
- package/dist/cjs/components/footer/CFooter.js +3 -4
- package/dist/cjs/components/footer/CFooter.js.map +1 -1
- package/dist/cjs/components/form/CForm.js +3 -3
- package/dist/cjs/components/form/CForm.js.map +1 -1
- package/dist/cjs/components/form/CFormCheck.js +16 -19
- package/dist/cjs/components/form/CFormCheck.js.map +1 -1
- package/dist/cjs/components/form/CFormControlValidation.js +2 -4
- package/dist/cjs/components/form/CFormControlValidation.js.map +1 -1
- package/dist/cjs/components/form/CFormControlWrapper.js +3 -5
- package/dist/cjs/components/form/CFormControlWrapper.js.map +1 -1
- package/dist/cjs/components/form/CFormFeedback.js +6 -7
- package/dist/cjs/components/form/CFormFeedback.js.map +1 -1
- package/dist/cjs/components/form/CFormFloating.js +3 -3
- package/dist/cjs/components/form/CFormFloating.js.map +1 -1
- package/dist/cjs/components/form/CFormInput.js +13 -14
- package/dist/cjs/components/form/CFormInput.js.map +1 -1
- package/dist/cjs/components/form/CFormLabel.js +3 -3
- package/dist/cjs/components/form/CFormLabel.js.map +1 -1
- package/dist/cjs/components/form/CFormRange.js +3 -3
- package/dist/cjs/components/form/CFormRange.js.map +1 -1
- package/dist/cjs/components/form/CFormSelect.js +10 -11
- package/dist/cjs/components/form/CFormSelect.js.map +1 -1
- package/dist/cjs/components/form/CFormSwitch.js +10 -12
- package/dist/cjs/components/form/CFormSwitch.js.map +1 -1
- package/dist/cjs/components/form/CFormText.js +3 -3
- package/dist/cjs/components/form/CFormText.js.map +1 -1
- package/dist/cjs/components/form/CFormTextarea.js +4 -4
- package/dist/cjs/components/form/CFormTextarea.js.map +1 -1
- package/dist/cjs/components/form/CInputGroup.js +5 -6
- package/dist/cjs/components/form/CInputGroup.js.map +1 -1
- package/dist/cjs/components/form/CInputGroupText.js +3 -3
- package/dist/cjs/components/form/CInputGroupText.js.map +1 -1
- package/dist/cjs/components/grid/CCol.js +16 -16
- package/dist/cjs/components/grid/CCol.js.map +1 -1
- package/dist/cjs/components/grid/CContainer.js +8 -8
- package/dist/cjs/components/grid/CContainer.js.map +1 -1
- package/dist/cjs/components/grid/CRow.js +13 -13
- package/dist/cjs/components/grid/CRow.js.map +1 -1
- package/dist/cjs/components/header/CHeader.js +3 -4
- package/dist/cjs/components/header/CHeader.js.map +1 -1
- package/dist/cjs/components/header/CHeaderBrand.js +3 -3
- package/dist/cjs/components/header/CHeaderBrand.js.map +1 -1
- package/dist/cjs/components/header/CHeaderDivider.js +3 -3
- package/dist/cjs/components/header/CHeaderDivider.js.map +1 -1
- package/dist/cjs/components/header/CHeaderNav.js +3 -3
- package/dist/cjs/components/header/CHeaderNav.js.map +1 -1
- package/dist/cjs/components/header/CHeaderText.js +3 -3
- package/dist/cjs/components/header/CHeaderText.js.map +1 -1
- package/dist/cjs/components/header/CHeaderToggler.js +3 -3
- package/dist/cjs/components/header/CHeaderToggler.js.map +1 -1
- package/dist/cjs/components/image/CImage.js +9 -10
- package/dist/cjs/components/image/CImage.js.map +1 -1
- package/dist/cjs/components/index.d.ts +1 -0
- package/dist/cjs/components/link/CLink.js +5 -5
- package/dist/cjs/components/link/CLink.js.map +1 -1
- package/dist/cjs/components/list-group/CListGroup.js +6 -8
- package/dist/cjs/components/list-group/CListGroup.js.map +1 -1
- package/dist/cjs/components/list-group/CListGroupItem.js +13 -14
- package/dist/cjs/components/list-group/CListGroupItem.js.map +1 -1
- package/dist/cjs/components/modal/CModal.js +26 -34
- package/dist/cjs/components/modal/CModal.js.map +1 -1
- package/dist/cjs/components/modal/CModalBody.js +3 -3
- package/dist/cjs/components/modal/CModalBody.js.map +1 -1
- package/dist/cjs/components/modal/CModalContent.js +3 -3
- package/dist/cjs/components/modal/CModalContent.js.map +1 -1
- package/dist/cjs/components/modal/CModalContext.js +1 -1
- package/dist/cjs/components/modal/CModalContext.js.map +1 -1
- package/dist/cjs/components/modal/CModalDialog.js +9 -11
- package/dist/cjs/components/modal/CModalDialog.js.map +1 -1
- package/dist/cjs/components/modal/CModalFooter.js +3 -3
- package/dist/cjs/components/modal/CModalFooter.js.map +1 -1
- package/dist/cjs/components/modal/CModalHeader.js +5 -5
- package/dist/cjs/components/modal/CModalHeader.js.map +1 -1
- package/dist/cjs/components/modal/CModalTitle.js +3 -3
- package/dist/cjs/components/modal/CModalTitle.js.map +1 -1
- package/dist/cjs/components/nav/CNav.js +7 -7
- package/dist/cjs/components/nav/CNav.js.map +1 -1
- package/dist/cjs/components/nav/CNavGroup.js +24 -24
- package/dist/cjs/components/nav/CNavGroup.js.map +1 -1
- package/dist/cjs/components/nav/CNavGroupItems.js +3 -3
- package/dist/cjs/components/nav/CNavGroupItems.js.map +1 -1
- package/dist/cjs/components/nav/CNavItem.js +3 -3
- package/dist/cjs/components/nav/CNavItem.js.map +1 -1
- package/dist/cjs/components/nav/CNavLink.js +7 -7
- package/dist/cjs/components/nav/CNavLink.js.map +1 -1
- package/dist/cjs/components/nav/CNavTitle.js +3 -3
- package/dist/cjs/components/nav/CNavTitle.js.map +1 -1
- package/dist/cjs/components/navbar/CNavbar.js +6 -7
- package/dist/cjs/components/navbar/CNavbar.js.map +1 -1
- package/dist/cjs/components/navbar/CNavbarBrand.js +4 -4
- package/dist/cjs/components/navbar/CNavbarBrand.js.map +1 -1
- package/dist/cjs/components/navbar/CNavbarNav.js +3 -3
- package/dist/cjs/components/navbar/CNavbarNav.js.map +1 -1
- package/dist/cjs/components/navbar/CNavbarText.js +3 -3
- package/dist/cjs/components/navbar/CNavbarText.js.map +1 -1
- package/dist/cjs/components/navbar/CNavbarToggler.js +3 -3
- package/dist/cjs/components/navbar/CNavbarToggler.js.map +1 -1
- package/dist/cjs/components/offcanvas/COffcanvas.js +20 -21
- package/dist/cjs/components/offcanvas/COffcanvas.js.map +1 -1
- package/dist/cjs/components/offcanvas/COffcanvasBody.js +3 -3
- package/dist/cjs/components/offcanvas/COffcanvasBody.js.map +1 -1
- package/dist/cjs/components/offcanvas/COffcanvasHeader.js +3 -3
- package/dist/cjs/components/offcanvas/COffcanvasHeader.js.map +1 -1
- package/dist/cjs/components/offcanvas/COffcanvasTitle.js +3 -3
- package/dist/cjs/components/offcanvas/COffcanvasTitle.js.map +1 -1
- package/dist/cjs/components/pagination/CPagination.js +7 -8
- package/dist/cjs/components/pagination/CPagination.js.map +1 -1
- package/dist/cjs/components/pagination/CPaginationItem.js +5 -5
- package/dist/cjs/components/pagination/CPaginationItem.js.map +1 -1
- package/dist/cjs/components/placeholder/CPlaceholder.js +13 -14
- package/dist/cjs/components/placeholder/CPlaceholder.js.map +1 -1
- package/dist/cjs/components/popover/CPopover.js +29 -29
- package/dist/cjs/components/popover/CPopover.js.map +1 -1
- package/dist/cjs/components/progress/CProgress.js +8 -8
- package/dist/cjs/components/progress/CProgress.js.map +1 -1
- package/dist/cjs/components/progress/CProgressBar.js +8 -9
- package/dist/cjs/components/progress/CProgressBar.js.map +1 -1
- package/dist/cjs/components/progress/CProgressStacked.js +3 -3
- package/dist/cjs/components/progress/CProgressStacked.js.map +1 -1
- package/dist/cjs/components/progress/CProgressStackedContext.js +1 -1
- package/dist/cjs/components/progress/CProgressStackedContext.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebar.js +34 -37
- package/dist/cjs/components/sidebar/CSidebar.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebarBrand.js +3 -3
- package/dist/cjs/components/sidebar/CSidebarBrand.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebarFooter.js +3 -3
- package/dist/cjs/components/sidebar/CSidebarFooter.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebarHeader.js +3 -3
- package/dist/cjs/components/sidebar/CSidebarHeader.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebarNav.js +14 -14
- package/dist/cjs/components/sidebar/CSidebarNav.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebarNavContext.js +1 -1
- package/dist/cjs/components/sidebar/CSidebarNavContext.js.map +1 -1
- package/dist/cjs/components/sidebar/CSidebarToggler.js +3 -3
- package/dist/cjs/components/sidebar/CSidebarToggler.js.map +1 -1
- package/dist/cjs/components/spinner/CSpinner.js +6 -7
- package/dist/cjs/components/spinner/CSpinner.js.map +1 -1
- package/dist/cjs/components/table/CTable.js +25 -26
- package/dist/cjs/components/table/CTable.js.map +1 -1
- package/dist/cjs/components/table/CTableBody.js +5 -6
- package/dist/cjs/components/table/CTableBody.js.map +1 -1
- package/dist/cjs/components/table/CTableCaption.js +3 -3
- package/dist/cjs/components/table/CTableCaption.js.map +1 -1
- package/dist/cjs/components/table/CTableDataCell.js +8 -9
- package/dist/cjs/components/table/CTableDataCell.js.map +1 -1
- package/dist/cjs/components/table/CTableFoot.js +5 -6
- package/dist/cjs/components/table/CTableFoot.js.map +1 -1
- package/dist/cjs/components/table/CTableHead.js +5 -6
- package/dist/cjs/components/table/CTableHead.js.map +1 -1
- package/dist/cjs/components/table/CTableHeaderCell.js +5 -6
- package/dist/cjs/components/table/CTableHeaderCell.js.map +1 -1
- package/dist/cjs/components/table/CTableResponsiveWrapper.js +3 -3
- package/dist/cjs/components/table/CTableResponsiveWrapper.js.map +1 -1
- package/dist/cjs/components/table/CTableRow.js +7 -8
- package/dist/cjs/components/table/CTableRow.js.map +1 -1
- package/dist/cjs/components/table/utils.js +9 -13
- package/dist/cjs/components/table/utils.js.map +1 -1
- package/dist/cjs/components/tabs/CTab.js +6 -6
- package/dist/cjs/components/tabs/CTab.js.map +1 -1
- package/dist/cjs/components/tabs/CTabContent.js +3 -3
- package/dist/cjs/components/tabs/CTabContent.js.map +1 -1
- package/dist/cjs/components/tabs/CTabList.js +13 -13
- package/dist/cjs/components/tabs/CTabList.js.map +1 -1
- package/dist/cjs/components/tabs/CTabPane.js +6 -6
- package/dist/cjs/components/tabs/CTabPane.js.map +1 -1
- package/dist/cjs/components/tabs/CTabPanel.js +10 -10
- package/dist/cjs/components/tabs/CTabPanel.js.map +1 -1
- package/dist/cjs/components/tabs/CTabs.js +7 -8
- package/dist/cjs/components/tabs/CTabs.js.map +1 -1
- package/dist/cjs/components/tabs/CTabsContext.js +1 -1
- package/dist/cjs/components/tabs/CTabsContext.js.map +1 -1
- package/dist/cjs/components/toast/CToast.js +21 -25
- package/dist/cjs/components/toast/CToast.js.map +1 -1
- package/dist/cjs/components/toast/CToastBody.js +3 -3
- package/dist/cjs/components/toast/CToastBody.js.map +1 -1
- package/dist/cjs/components/toast/CToastClose.js +5 -5
- package/dist/cjs/components/toast/CToastClose.js.map +1 -1
- package/dist/cjs/components/toast/CToastContext.js +1 -1
- package/dist/cjs/components/toast/CToastContext.js.map +1 -1
- package/dist/cjs/components/toast/CToastHeader.js +3 -3
- package/dist/cjs/components/toast/CToastHeader.js.map +1 -1
- package/dist/cjs/components/toast/CToaster.js +12 -13
- package/dist/cjs/components/toast/CToaster.js.map +1 -1
- package/dist/cjs/components/tooltip/CTooltip.js +30 -30
- package/dist/cjs/components/tooltip/CTooltip.js.map +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsA.js +3 -4
- package/dist/cjs/components/widgets/CWidgetStatsA.js.map +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsB.js +4 -4
- package/dist/cjs/components/widgets/CWidgetStatsB.js.map +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsC.js +4 -4
- package/dist/cjs/components/widgets/CWidgetStatsC.js.map +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsD.js +7 -8
- package/dist/cjs/components/widgets/CWidgetStatsD.js.map +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsE.js +3 -3
- package/dist/cjs/components/widgets/CWidgetStatsE.js.map +1 -1
- package/dist/cjs/components/widgets/CWidgetStatsF.js +6 -6
- package/dist/cjs/components/widgets/CWidgetStatsF.js.map +1 -1
- package/dist/cjs/hooks/useClipboard.js +21 -33
- package/dist/cjs/hooks/useClipboard.js.map +1 -1
- package/dist/cjs/hooks/useColorModes.js +15 -20
- package/dist/cjs/hooks/useColorModes.js.map +1 -1
- package/dist/cjs/hooks/useForkedRef.js +6 -10
- package/dist/cjs/hooks/useForkedRef.js.map +1 -1
- package/dist/cjs/hooks/usePopper.js +11 -11
- package/dist/cjs/hooks/usePopper.js.map +1 -1
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/node_modules/tslib/tslib.es6.js +0 -51
- package/dist/cjs/node_modules/tslib/tslib.es6.js.map +1 -1
- package/dist/cjs/props.js +6 -6
- package/dist/cjs/props.js.map +1 -1
- package/dist/cjs/utils/executeAfterTransition.js +8 -10
- package/dist/cjs/utils/executeAfterTransition.js.map +1 -1
- package/dist/cjs/utils/getNextActiveElement.js +3 -3
- package/dist/cjs/utils/getNextActiveElement.js.map +1 -1
- package/dist/cjs/utils/getRTLPlacement.js +1 -1
- package/dist/cjs/utils/getRTLPlacement.js.map +1 -1
- package/dist/cjs/utils/getTransitionDurationFromElement.js +4 -4
- package/dist/cjs/utils/getTransitionDurationFromElement.js.map +1 -1
- package/dist/cjs/utils/isInViewport.js +2 -2
- package/dist/cjs/utils/isInViewport.js.map +1 -1
- package/dist/cjs/utils/isRTL.js +1 -1
- package/dist/cjs/utils/isRTL.js.map +1 -1
- package/dist/esm/components/accordion/CAccordion.js +6 -6
- package/dist/esm/components/accordion/CAccordion.js.map +1 -1
- package/dist/esm/components/accordion/CAccordionBody.js +5 -5
- package/dist/esm/components/accordion/CAccordionBody.js.map +1 -1
- package/dist/esm/components/accordion/CAccordionButton.js +5 -5
- package/dist/esm/components/accordion/CAccordionButton.js.map +1 -1
- package/dist/esm/components/accordion/CAccordionContext.js +1 -1
- package/dist/esm/components/accordion/CAccordionContext.js.map +1 -1
- package/dist/esm/components/accordion/CAccordionHeader.js +4 -4
- package/dist/esm/components/accordion/CAccordionHeader.js.map +1 -1
- package/dist/esm/components/accordion/CAccordionItem.js +12 -12
- package/dist/esm/components/accordion/CAccordionItem.js.map +1 -1
- package/dist/esm/components/accordion/CAccordionItemContext.js +1 -1
- package/dist/esm/components/accordion/CAccordionItemContext.js.map +1 -1
- package/dist/esm/components/alert/CAlert.js +9 -9
- package/dist/esm/components/alert/CAlert.js.map +1 -1
- package/dist/esm/components/alert/CAlertHeading.js +4 -4
- package/dist/esm/components/alert/CAlertHeading.js.map +1 -1
- package/dist/esm/components/alert/CAlertLink.js +4 -4
- package/dist/esm/components/alert/CAlertLink.js.map +1 -1
- package/dist/esm/components/avatar/CAvatar.js +9 -10
- package/dist/esm/components/avatar/CAvatar.js.map +1 -1
- package/dist/esm/components/backdrop/CBackdrop.js +7 -7
- package/dist/esm/components/backdrop/CBackdrop.js.map +1 -1
- package/dist/esm/components/badge/CBadge.js +14 -15
- package/dist/esm/components/badge/CBadge.js.map +1 -1
- package/dist/esm/components/breadcrumb/CBreadcrumb.js +4 -4
- package/dist/esm/components/breadcrumb/CBreadcrumb.js.map +1 -1
- package/dist/esm/components/breadcrumb/CBreadcrumbItem.js +4 -4
- package/dist/esm/components/breadcrumb/CBreadcrumbItem.js.map +1 -1
- package/dist/esm/components/button/CButton.js +9 -10
- package/dist/esm/components/button/CButton.js.map +1 -1
- package/dist/esm/components/button-group/CButtonGroup.js +4 -5
- package/dist/esm/components/button-group/CButtonGroup.js.map +1 -1
- package/dist/esm/components/button-group/CButtonToolbar.js +4 -4
- package/dist/esm/components/button-group/CButtonToolbar.js.map +1 -1
- package/dist/esm/components/callout/CCallout.js +6 -7
- package/dist/esm/components/callout/CCallout.js.map +1 -1
- package/dist/esm/components/card/CCard.js +8 -9
- package/dist/esm/components/card/CCard.js.map +1 -1
- package/dist/esm/components/card/CCardBody.js +4 -4
- package/dist/esm/components/card/CCardBody.js.map +1 -1
- package/dist/esm/components/card/CCardFooter.js +4 -4
- package/dist/esm/components/card/CCardFooter.js.map +1 -1
- package/dist/esm/components/card/CCardGroup.js +4 -4
- package/dist/esm/components/card/CCardGroup.js.map +1 -1
- package/dist/esm/components/card/CCardHeader.js +4 -4
- package/dist/esm/components/card/CCardHeader.js.map +1 -1
- package/dist/esm/components/card/CCardImage.js +4 -4
- package/dist/esm/components/card/CCardImage.js.map +1 -1
- package/dist/esm/components/card/CCardImageOverlay.js +4 -4
- package/dist/esm/components/card/CCardImageOverlay.js.map +1 -1
- package/dist/esm/components/card/CCardLink.js +4 -4
- package/dist/esm/components/card/CCardLink.js.map +1 -1
- package/dist/esm/components/card/CCardSubtitle.js +4 -4
- package/dist/esm/components/card/CCardSubtitle.js.map +1 -1
- package/dist/esm/components/card/CCardText.js +4 -4
- package/dist/esm/components/card/CCardText.js.map +1 -1
- package/dist/esm/components/card/CCardTitle.js +4 -4
- package/dist/esm/components/card/CCardTitle.js.map +1 -1
- package/dist/esm/components/carousel/CCarousel.js +42 -42
- package/dist/esm/components/carousel/CCarousel.js.map +1 -1
- package/dist/esm/components/carousel/CCarouselCaption.js +4 -4
- package/dist/esm/components/carousel/CCarouselCaption.js.map +1 -1
- package/dist/esm/components/carousel/CCarouselContext.js +1 -1
- package/dist/esm/components/carousel/CCarouselContext.js.map +1 -1
- package/dist/esm/components/carousel/CCarouselItem.js +22 -22
- package/dist/esm/components/carousel/CCarouselItem.js.map +1 -1
- package/dist/esm/components/close-button/CCloseButton.js +4 -4
- package/dist/esm/components/close-button/CCloseButton.js.map +1 -1
- package/dist/esm/components/collapse/CCollapse.js +17 -17
- package/dist/esm/components/collapse/CCollapse.js.map +1 -1
- package/dist/esm/components/conditional-portal/CConditionalPortal.js +4 -5
- package/dist/esm/components/conditional-portal/CConditionalPortal.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdown.d.ts +41 -10
- package/dist/esm/components/dropdown/CDropdown.js +133 -79
- package/dist/esm/components/dropdown/CDropdown.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdownContext.d.ts +1 -1
- package/dist/esm/components/dropdown/CDropdownContext.js +1 -1
- package/dist/esm/components/dropdown/CDropdownContext.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdownDivider.js +4 -4
- package/dist/esm/components/dropdown/CDropdownDivider.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdownHeader.js +4 -4
- package/dist/esm/components/dropdown/CDropdownHeader.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdownItem.js +4 -4
- package/dist/esm/components/dropdown/CDropdownItem.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdownItemPlain.js +4 -4
- package/dist/esm/components/dropdown/CDropdownItemPlain.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdownMenu.js +7 -7
- package/dist/esm/components/dropdown/CDropdownMenu.js.map +1 -1
- package/dist/esm/components/dropdown/CDropdownToggle.d.ts +14 -3
- package/dist/esm/components/dropdown/CDropdownToggle.js +21 -15
- package/dist/esm/components/dropdown/CDropdownToggle.js.map +1 -1
- package/dist/esm/components/dropdown/utils.d.ts +2 -0
- package/dist/esm/components/dropdown/utils.js +20 -8
- package/dist/esm/components/dropdown/utils.js.map +1 -1
- package/dist/esm/components/focus-trap/CFocusTrap.d.ts +59 -0
- package/dist/esm/components/focus-trap/CFocusTrap.js +160 -0
- package/dist/esm/components/focus-trap/CFocusTrap.js.map +1 -0
- package/dist/esm/components/focus-trap/index.d.ts +2 -0
- package/dist/esm/components/focus-trap/utils.d.ts +36 -0
- package/dist/esm/components/focus-trap/utils.js +102 -0
- package/dist/esm/components/focus-trap/utils.js.map +1 -0
- package/dist/esm/components/footer/CFooter.js +4 -5
- package/dist/esm/components/footer/CFooter.js.map +1 -1
- package/dist/esm/components/form/CForm.js +4 -4
- package/dist/esm/components/form/CForm.js.map +1 -1
- package/dist/esm/components/form/CFormCheck.js +17 -20
- package/dist/esm/components/form/CFormCheck.js.map +1 -1
- package/dist/esm/components/form/CFormControlValidation.js +2 -4
- package/dist/esm/components/form/CFormControlValidation.js.map +1 -1
- package/dist/esm/components/form/CFormControlWrapper.js +3 -5
- package/dist/esm/components/form/CFormControlWrapper.js.map +1 -1
- package/dist/esm/components/form/CFormFeedback.js +7 -8
- package/dist/esm/components/form/CFormFeedback.js.map +1 -1
- package/dist/esm/components/form/CFormFloating.js +4 -4
- package/dist/esm/components/form/CFormFloating.js.map +1 -1
- package/dist/esm/components/form/CFormInput.js +14 -15
- package/dist/esm/components/form/CFormInput.js.map +1 -1
- package/dist/esm/components/form/CFormLabel.js +4 -4
- package/dist/esm/components/form/CFormLabel.js.map +1 -1
- package/dist/esm/components/form/CFormRange.js +4 -4
- package/dist/esm/components/form/CFormRange.js.map +1 -1
- package/dist/esm/components/form/CFormSelect.js +11 -12
- package/dist/esm/components/form/CFormSelect.js.map +1 -1
- package/dist/esm/components/form/CFormSwitch.js +11 -13
- package/dist/esm/components/form/CFormSwitch.js.map +1 -1
- package/dist/esm/components/form/CFormText.js +4 -4
- package/dist/esm/components/form/CFormText.js.map +1 -1
- package/dist/esm/components/form/CFormTextarea.js +5 -5
- package/dist/esm/components/form/CFormTextarea.js.map +1 -1
- package/dist/esm/components/form/CInputGroup.js +6 -7
- package/dist/esm/components/form/CInputGroup.js.map +1 -1
- package/dist/esm/components/form/CInputGroupText.js +4 -4
- package/dist/esm/components/form/CInputGroupText.js.map +1 -1
- package/dist/esm/components/grid/CCol.js +17 -17
- package/dist/esm/components/grid/CCol.js.map +1 -1
- package/dist/esm/components/grid/CContainer.js +9 -9
- package/dist/esm/components/grid/CContainer.js.map +1 -1
- package/dist/esm/components/grid/CRow.js +14 -14
- package/dist/esm/components/grid/CRow.js.map +1 -1
- package/dist/esm/components/header/CHeader.js +4 -5
- package/dist/esm/components/header/CHeader.js.map +1 -1
- package/dist/esm/components/header/CHeaderBrand.js +4 -4
- package/dist/esm/components/header/CHeaderBrand.js.map +1 -1
- package/dist/esm/components/header/CHeaderDivider.js +4 -4
- package/dist/esm/components/header/CHeaderDivider.js.map +1 -1
- package/dist/esm/components/header/CHeaderNav.js +4 -4
- package/dist/esm/components/header/CHeaderNav.js.map +1 -1
- package/dist/esm/components/header/CHeaderText.js +4 -4
- package/dist/esm/components/header/CHeaderText.js.map +1 -1
- package/dist/esm/components/header/CHeaderToggler.js +4 -4
- package/dist/esm/components/header/CHeaderToggler.js.map +1 -1
- package/dist/esm/components/image/CImage.js +10 -11
- package/dist/esm/components/image/CImage.js.map +1 -1
- package/dist/esm/components/index.d.ts +1 -0
- package/dist/esm/components/link/CLink.js +6 -6
- package/dist/esm/components/link/CLink.js.map +1 -1
- package/dist/esm/components/list-group/CListGroup.js +7 -9
- package/dist/esm/components/list-group/CListGroup.js.map +1 -1
- package/dist/esm/components/list-group/CListGroupItem.js +14 -15
- package/dist/esm/components/list-group/CListGroupItem.js.map +1 -1
- package/dist/esm/components/modal/CModal.js +27 -35
- package/dist/esm/components/modal/CModal.js.map +1 -1
- package/dist/esm/components/modal/CModalBody.js +4 -4
- package/dist/esm/components/modal/CModalBody.js.map +1 -1
- package/dist/esm/components/modal/CModalContent.js +4 -4
- package/dist/esm/components/modal/CModalContent.js.map +1 -1
- package/dist/esm/components/modal/CModalContext.js +1 -1
- package/dist/esm/components/modal/CModalContext.js.map +1 -1
- package/dist/esm/components/modal/CModalDialog.js +10 -12
- package/dist/esm/components/modal/CModalDialog.js.map +1 -1
- package/dist/esm/components/modal/CModalFooter.js +4 -4
- package/dist/esm/components/modal/CModalFooter.js.map +1 -1
- package/dist/esm/components/modal/CModalHeader.js +6 -6
- package/dist/esm/components/modal/CModalHeader.js.map +1 -1
- package/dist/esm/components/modal/CModalTitle.js +4 -4
- package/dist/esm/components/modal/CModalTitle.js.map +1 -1
- package/dist/esm/components/nav/CNav.js +8 -8
- package/dist/esm/components/nav/CNav.js.map +1 -1
- package/dist/esm/components/nav/CNavGroup.js +25 -25
- package/dist/esm/components/nav/CNavGroup.js.map +1 -1
- package/dist/esm/components/nav/CNavGroupItems.js +4 -4
- package/dist/esm/components/nav/CNavGroupItems.js.map +1 -1
- package/dist/esm/components/nav/CNavItem.js +4 -4
- package/dist/esm/components/nav/CNavItem.js.map +1 -1
- package/dist/esm/components/nav/CNavLink.js +8 -8
- package/dist/esm/components/nav/CNavLink.js.map +1 -1
- package/dist/esm/components/nav/CNavTitle.js +4 -4
- package/dist/esm/components/nav/CNavTitle.js.map +1 -1
- package/dist/esm/components/navbar/CNavbar.js +7 -8
- package/dist/esm/components/navbar/CNavbar.js.map +1 -1
- package/dist/esm/components/navbar/CNavbarBrand.js +5 -5
- package/dist/esm/components/navbar/CNavbarBrand.js.map +1 -1
- package/dist/esm/components/navbar/CNavbarNav.js +4 -4
- package/dist/esm/components/navbar/CNavbarNav.js.map +1 -1
- package/dist/esm/components/navbar/CNavbarText.js +4 -4
- package/dist/esm/components/navbar/CNavbarText.js.map +1 -1
- package/dist/esm/components/navbar/CNavbarToggler.js +4 -4
- package/dist/esm/components/navbar/CNavbarToggler.js.map +1 -1
- package/dist/esm/components/offcanvas/COffcanvas.js +21 -22
- package/dist/esm/components/offcanvas/COffcanvas.js.map +1 -1
- package/dist/esm/components/offcanvas/COffcanvasBody.js +4 -4
- package/dist/esm/components/offcanvas/COffcanvasBody.js.map +1 -1
- package/dist/esm/components/offcanvas/COffcanvasHeader.js +4 -4
- package/dist/esm/components/offcanvas/COffcanvasHeader.js.map +1 -1
- package/dist/esm/components/offcanvas/COffcanvasTitle.js +4 -4
- package/dist/esm/components/offcanvas/COffcanvasTitle.js.map +1 -1
- package/dist/esm/components/pagination/CPagination.js +8 -9
- package/dist/esm/components/pagination/CPagination.js.map +1 -1
- package/dist/esm/components/pagination/CPaginationItem.js +6 -6
- package/dist/esm/components/pagination/CPaginationItem.js.map +1 -1
- package/dist/esm/components/placeholder/CPlaceholder.js +14 -15
- package/dist/esm/components/placeholder/CPlaceholder.js.map +1 -1
- package/dist/esm/components/popover/CPopover.js +30 -30
- package/dist/esm/components/popover/CPopover.js.map +1 -1
- package/dist/esm/components/progress/CProgress.js +9 -9
- package/dist/esm/components/progress/CProgress.js.map +1 -1
- package/dist/esm/components/progress/CProgressBar.js +9 -10
- package/dist/esm/components/progress/CProgressBar.js.map +1 -1
- package/dist/esm/components/progress/CProgressStacked.js +4 -4
- package/dist/esm/components/progress/CProgressStacked.js.map +1 -1
- package/dist/esm/components/progress/CProgressStackedContext.js +1 -1
- package/dist/esm/components/progress/CProgressStackedContext.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebar.js +35 -38
- package/dist/esm/components/sidebar/CSidebar.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebarBrand.js +4 -4
- package/dist/esm/components/sidebar/CSidebarBrand.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebarFooter.js +4 -4
- package/dist/esm/components/sidebar/CSidebarFooter.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebarHeader.js +4 -4
- package/dist/esm/components/sidebar/CSidebarHeader.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebarNav.js +15 -15
- package/dist/esm/components/sidebar/CSidebarNav.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebarNavContext.js +1 -1
- package/dist/esm/components/sidebar/CSidebarNavContext.js.map +1 -1
- package/dist/esm/components/sidebar/CSidebarToggler.js +4 -4
- package/dist/esm/components/sidebar/CSidebarToggler.js.map +1 -1
- package/dist/esm/components/spinner/CSpinner.js +7 -8
- package/dist/esm/components/spinner/CSpinner.js.map +1 -1
- package/dist/esm/components/table/CTable.js +26 -27
- package/dist/esm/components/table/CTable.js.map +1 -1
- package/dist/esm/components/table/CTableBody.js +6 -7
- package/dist/esm/components/table/CTableBody.js.map +1 -1
- package/dist/esm/components/table/CTableCaption.js +4 -4
- package/dist/esm/components/table/CTableCaption.js.map +1 -1
- package/dist/esm/components/table/CTableDataCell.js +9 -10
- package/dist/esm/components/table/CTableDataCell.js.map +1 -1
- package/dist/esm/components/table/CTableFoot.js +6 -7
- package/dist/esm/components/table/CTableFoot.js.map +1 -1
- package/dist/esm/components/table/CTableHead.js +6 -7
- package/dist/esm/components/table/CTableHead.js.map +1 -1
- package/dist/esm/components/table/CTableHeaderCell.js +6 -7
- package/dist/esm/components/table/CTableHeaderCell.js.map +1 -1
- package/dist/esm/components/table/CTableResponsiveWrapper.js +4 -4
- package/dist/esm/components/table/CTableResponsiveWrapper.js.map +1 -1
- package/dist/esm/components/table/CTableRow.js +8 -9
- package/dist/esm/components/table/CTableRow.js.map +1 -1
- package/dist/esm/components/table/utils.js +9 -13
- package/dist/esm/components/table/utils.js.map +1 -1
- package/dist/esm/components/tabs/CTab.js +7 -7
- package/dist/esm/components/tabs/CTab.js.map +1 -1
- package/dist/esm/components/tabs/CTabContent.js +4 -4
- package/dist/esm/components/tabs/CTabContent.js.map +1 -1
- package/dist/esm/components/tabs/CTabList.js +14 -14
- package/dist/esm/components/tabs/CTabList.js.map +1 -1
- package/dist/esm/components/tabs/CTabPane.js +7 -7
- package/dist/esm/components/tabs/CTabPane.js.map +1 -1
- package/dist/esm/components/tabs/CTabPanel.js +11 -11
- package/dist/esm/components/tabs/CTabPanel.js.map +1 -1
- package/dist/esm/components/tabs/CTabs.js +7 -8
- package/dist/esm/components/tabs/CTabs.js.map +1 -1
- package/dist/esm/components/tabs/CTabsContext.js +1 -1
- package/dist/esm/components/tabs/CTabsContext.js.map +1 -1
- package/dist/esm/components/toast/CToast.js +22 -26
- package/dist/esm/components/toast/CToast.js.map +1 -1
- package/dist/esm/components/toast/CToastBody.js +4 -4
- package/dist/esm/components/toast/CToastBody.js.map +1 -1
- package/dist/esm/components/toast/CToastClose.js +6 -6
- package/dist/esm/components/toast/CToastClose.js.map +1 -1
- package/dist/esm/components/toast/CToastContext.js +1 -1
- package/dist/esm/components/toast/CToastContext.js.map +1 -1
- package/dist/esm/components/toast/CToastHeader.js +4 -4
- package/dist/esm/components/toast/CToastHeader.js.map +1 -1
- package/dist/esm/components/toast/CToaster.js +13 -14
- package/dist/esm/components/toast/CToaster.js.map +1 -1
- package/dist/esm/components/tooltip/CTooltip.js +31 -31
- package/dist/esm/components/tooltip/CTooltip.js.map +1 -1
- package/dist/esm/components/widgets/CWidgetStatsA.js +4 -5
- package/dist/esm/components/widgets/CWidgetStatsA.js.map +1 -1
- package/dist/esm/components/widgets/CWidgetStatsB.js +5 -5
- package/dist/esm/components/widgets/CWidgetStatsB.js.map +1 -1
- package/dist/esm/components/widgets/CWidgetStatsC.js +5 -5
- package/dist/esm/components/widgets/CWidgetStatsC.js.map +1 -1
- package/dist/esm/components/widgets/CWidgetStatsD.js +8 -9
- package/dist/esm/components/widgets/CWidgetStatsD.js.map +1 -1
- package/dist/esm/components/widgets/CWidgetStatsE.js +4 -4
- package/dist/esm/components/widgets/CWidgetStatsE.js.map +1 -1
- package/dist/esm/components/widgets/CWidgetStatsF.js +7 -7
- package/dist/esm/components/widgets/CWidgetStatsF.js.map +1 -1
- package/dist/esm/hooks/useClipboard.js +22 -34
- package/dist/esm/hooks/useClipboard.js.map +1 -1
- package/dist/esm/hooks/useColorModes.js +15 -20
- package/dist/esm/hooks/useColorModes.js.map +1 -1
- package/dist/esm/hooks/useForkedRef.js +6 -10
- package/dist/esm/hooks/useForkedRef.js.map +1 -1
- package/dist/esm/hooks/usePopper.js +11 -11
- package/dist/esm/hooks/usePopper.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/node_modules/tslib/tslib.es6.js +1 -50
- package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -1
- package/dist/esm/props.js +6 -6
- package/dist/esm/props.js.map +1 -1
- package/dist/esm/utils/executeAfterTransition.js +8 -10
- package/dist/esm/utils/executeAfterTransition.js.map +1 -1
- package/dist/esm/utils/getNextActiveElement.js +3 -3
- package/dist/esm/utils/getNextActiveElement.js.map +1 -1
- package/dist/esm/utils/getRTLPlacement.js +1 -1
- package/dist/esm/utils/getRTLPlacement.js.map +1 -1
- package/dist/esm/utils/getTransitionDurationFromElement.js +4 -4
- package/dist/esm/utils/getTransitionDurationFromElement.js.map +1 -1
- package/dist/esm/utils/isInViewport.js +2 -2
- package/dist/esm/utils/isInViewport.js.map +1 -1
- package/dist/esm/utils/isRTL.js +1 -1
- package/dist/esm/utils/isRTL.js.map +1 -1
- package/package.json +10 -10
- package/src/components/accordion/CAccordion.tsx +1 -1
- package/src/components/accordion/CAccordionHeader.tsx +1 -1
- package/src/components/alert/CAlert.tsx +3 -3
- package/src/components/alert/CAlertHeading.tsx +1 -1
- package/src/components/alert/CAlertLink.tsx +1 -1
- package/src/components/alert/__tests__/CAlertHeading.spec.tsx +1 -1
- package/src/components/alert/__tests__/CAlertLink.spec.tsx +1 -1
- package/src/components/avatar/CAvatar.tsx +2 -2
- package/src/components/avatar/__tests__/CAvatar.spec.tsx +2 -2
- package/src/components/backdrop/CBackdrop.tsx +1 -1
- package/src/components/backdrop/__tests__/CBackdrop.spec.tsx +1 -1
- package/src/components/badge/CBadge.tsx +3 -3
- package/src/components/badge/__tests__/CBadge.spec.tsx +1 -1
- package/src/components/breadcrumb/CBreadcrumb.tsx +1 -1
- package/src/components/breadcrumb/CBreadcrumbItem.tsx +2 -2
- package/src/components/breadcrumb/__tests__/CBreadcrumb.spec.tsx +1 -1
- package/src/components/breadcrumb/__tests__/CBreadcrumbItem.spec.tsx +1 -1
- package/src/components/button/__tests__/CButton.spec.tsx +2 -2
- package/src/components/button-group/CButtonGroup.tsx +2 -2
- package/src/components/button-group/CButtonToolbar.tsx +1 -1
- package/src/components/button-group/__tests__/CButtonGroup.spec.tsx +2 -2
- package/src/components/button-group/__tests__/CButtonToolbar.spec.tsx +1 -1
- package/src/components/callout/CCallout.tsx +2 -2
- package/src/components/callout/__tests__/CCallout.spec.tsx +1 -1
- package/src/components/card/CCard.tsx +2 -2
- package/src/components/card/CCardBody.tsx +1 -1
- package/src/components/card/CCardFooter.tsx +1 -1
- package/src/components/card/CCardGroup.tsx +1 -1
- package/src/components/card/CCardImageOverlay.tsx +1 -1
- package/src/components/card/CCardLink.tsx +1 -1
- package/src/components/card/CCardSubtitle.tsx +1 -1
- package/src/components/card/__tests__/CCard.spec.tsx +1 -1
- package/src/components/card/__tests__/CCardGroup.spec.tsx +1 -1
- package/src/components/card/__tests__/CCardHeader.spec.tsx +1 -1
- package/src/components/card/__tests__/CCardLink.spec.tsx +1 -1
- package/src/components/card/__tests__/CCardSubtitle.spec.tsx +1 -1
- package/src/components/card/__tests__/CCardText.spec.tsx +1 -1
- package/src/components/card/__tests__/CCardTitle.spec.tsx +1 -1
- package/src/components/carousel/__tests__/CCarousel.spec.tsx +3 -3
- package/src/components/close-button/CCloseButton.tsx +2 -2
- package/src/components/collapse/CCollapse.tsx +1 -1
- package/src/components/dropdown/CDropdown.tsx +214 -106
- package/src/components/dropdown/CDropdownContext.ts +1 -1
- package/src/components/dropdown/CDropdownHeader.tsx +1 -0
- package/src/components/dropdown/CDropdownItemPlain.tsx +1 -0
- package/src/components/dropdown/CDropdownMenu.tsx +1 -0
- package/src/components/dropdown/CDropdownToggle.tsx +28 -4
- package/src/components/dropdown/__tests__/CDropdown.spec.tsx +3 -3
- package/src/components/dropdown/__tests__/CDropdownHeader.spec.tsx +1 -1
- package/src/components/dropdown/__tests__/CDropdownItem.spec.tsx +1 -1
- package/src/components/dropdown/__tests__/CDropdownItemPlain.spec.tsx +1 -1
- package/src/components/dropdown/__tests__/CDropdownMenu.spec.tsx +1 -1
- package/src/components/dropdown/__tests__/CDropdownToggle.spec.tsx +1 -1
- package/src/components/dropdown/utils.ts +23 -2
- package/src/components/focus-trap/CFocusTrap.tsx +254 -0
- package/src/components/focus-trap/__tests__/CFocusTrap.spec.tsx +232 -0
- package/src/components/focus-trap/__tests__/__snapshots__/CFocusTrap.spec.tsx.snap +21 -0
- package/src/components/focus-trap/index.ts +3 -0
- package/src/components/focus-trap/utils.ts +115 -0
- package/src/components/footer/CFooter.tsx +1 -1
- package/src/components/footer/__tests__/CFooter.spec.tsx +1 -1
- package/src/components/form/CForm.tsx +1 -1
- package/src/components/form/CFormCheck.tsx +5 -5
- package/src/components/form/CFormFeedback.tsx +2 -2
- package/src/components/form/CFormFloating.tsx +1 -1
- package/src/components/form/CFormInput.tsx +4 -4
- package/src/components/form/CFormLabel.tsx +1 -1
- package/src/components/form/CFormRange.tsx +1 -1
- package/src/components/form/CFormSelect.tsx +3 -3
- package/src/components/form/CFormSwitch.tsx +2 -2
- package/src/components/form/CFormTextarea.tsx +3 -3
- package/src/components/form/CInputGroup.tsx +2 -2
- package/src/components/form/CInputGroupText.tsx +1 -1
- package/src/components/form/__tests__/CForm.spec.tsx +2 -2
- package/src/components/form/__tests__/CFormCheck.spec.tsx +2 -2
- package/src/components/form/__tests__/CFormControl.spec.tsx +1 -1
- package/src/components/form/__tests__/CFormFeedback.spec.tsx +2 -2
- package/src/components/form/__tests__/CFormInput.spec.tsx +1 -1
- package/src/components/form/__tests__/CFormRange.spec.tsx +1 -1
- package/src/components/form/__tests__/CFormSelect.spec.tsx +1 -1
- package/src/components/form/__tests__/CFormSwitch.spec.tsx +1 -1
- package/src/components/form/__tests__/CFormText.spec.tsx +1 -1
- package/src/components/form/__tests__/CFormTextarea.spec.tsx +1 -1
- package/src/components/form/__tests__/CInputGroup.spec.tsx +1 -1
- package/src/components/form/__tests__/CInputGroupText.spec.tsx +1 -1
- package/src/components/grid/CCol.tsx +2 -2
- package/src/components/grid/CContainer.tsx +2 -2
- package/src/components/grid/CRow.tsx +1 -1
- package/src/components/grid/__tests__/CCol.spec.tsx +2 -2
- package/src/components/grid/__tests__/CContainer.spec.tsx +2 -2
- package/src/components/grid/__tests__/CRow.spec.tsx +5 -5
- package/src/components/header/CHeader.tsx +1 -1
- package/src/components/header/CHeaderDivider.tsx +1 -1
- package/src/components/header/CHeaderText.tsx +1 -1
- package/src/components/header/CHeaderToggler.tsx +1 -1
- package/src/components/header/__tests__/CHeader.spec.tsx +1 -1
- package/src/components/header/__tests__/CHeaderBrand.spec.tsx +1 -1
- package/src/components/header/__tests__/CHeaderNav.spec.tsx +1 -1
- package/src/components/image/CImage.tsx +2 -2
- package/src/components/image/__tests__/CImage.spec.tsx +1 -1
- package/src/components/index.ts +1 -0
- package/src/components/link/__tests__/CLink.spec.tsx +3 -3
- package/src/components/list-group/CListGroup.tsx +1 -1
- package/src/components/list-group/CListGroupItem.tsx +2 -2
- package/src/components/list-group/__tests__/CListGroup.spec.tsx +2 -2
- package/src/components/list-group/__tests__/CListGroupItem.spec.tsx +1 -1
- package/src/components/modal/CModal.tsx +5 -13
- package/src/components/modal/CModalBody.tsx +1 -1
- package/src/components/modal/CModalContent.tsx +1 -1
- package/src/components/modal/CModalDialog.tsx +2 -2
- package/src/components/modal/CModalFooter.tsx +1 -1
- package/src/components/modal/CModalHeader.tsx +1 -1
- package/src/components/modal/__tests__/CModal.spec.tsx +2 -2
- package/src/components/modal/__tests__/CModalDialog.spec.tsx +1 -1
- package/src/components/modal/__tests__/CModalTitle.spec.tsx +1 -1
- package/src/components/nav/CNavGroup.tsx +2 -2
- package/src/components/nav/CNavGroupItems.tsx +1 -1
- package/src/components/nav/__tests__/CNavGroup.spec.tsx +1 -1
- package/src/components/nav/__tests__/CNavItem.spec.tsx +1 -1
- package/src/components/nav/__tests__/CNavLink.spec.tsx +1 -1
- package/src/components/navbar/CNavbar.tsx +3 -3
- package/src/components/navbar/CNavbarText.tsx +1 -1
- package/src/components/navbar/CNavbarToggler.tsx +1 -1
- package/src/components/navbar/__tests__/CNavbar.spec.tsx +2 -2
- package/src/components/navbar/__tests__/CNavbarBrand.spec.tsx +1 -1
- package/src/components/navbar/__tests__/CNavbarNav.spec.tsx +1 -1
- package/src/components/offcanvas/COffcanvas.tsx +26 -24
- package/src/components/offcanvas/COffcanvasBody.tsx +1 -1
- package/src/components/offcanvas/COffcanvasHeader.tsx +1 -1
- package/src/components/offcanvas/COffcanvasTitle.tsx +1 -1
- package/src/components/offcanvas/__tests__/COffcanvasTitle.spec.tsx +1 -1
- package/src/components/pagination/CPagination.tsx +2 -2
- package/src/components/pagination/CPaginationItem.tsx +2 -2
- package/src/components/pagination/__tests__/CPagination.spec.tsx +2 -2
- package/src/components/pagination/__tests__/CPaginationItem.spec.tsx +1 -1
- package/src/components/placeholder/CPlaceholder.tsx +2 -2
- package/src/components/placeholder/__tests__/CPlaceholder.spec.tsx +1 -1
- package/src/components/progress/CProgress.tsx +3 -3
- package/src/components/progress/CProgressBar.tsx +2 -2
- package/src/components/progress/__tests__/CProgress.spec.tsx +1 -1
- package/src/components/progress/__tests__/CProgressBar.spec.tsx +1 -1
- package/src/components/sidebar/CSidebarFooter.tsx +1 -1
- package/src/components/sidebar/CSidebarHeader.tsx +1 -1
- package/src/components/sidebar/CSidebarToggler.tsx +1 -1
- package/src/components/sidebar/__tests__/CSidebar.spec.tsx +2 -2
- package/src/components/spinner/CSpinner.tsx +3 -3
- package/src/components/spinner/__tests__/CSpinner.spec.tsx +1 -1
- package/src/components/table/CTable.tsx +3 -3
- package/src/components/table/CTableBody.tsx +2 -2
- package/src/components/table/CTableDataCell.tsx +2 -2
- package/src/components/table/CTableFoot.tsx +2 -2
- package/src/components/table/CTableHead.tsx +2 -2
- package/src/components/table/CTableHeaderCell.tsx +2 -2
- package/src/components/table/CTableRow.tsx +2 -2
- package/src/components/table/__tests__/CTable.spec.tsx +2 -2
- package/src/components/table/__tests__/CTableBody.spec.tsx +1 -1
- package/src/components/table/__tests__/CTableDataCell.spec.tsx +2 -2
- package/src/components/table/__tests__/CTableFoot.spec.tsx +1 -1
- package/src/components/table/__tests__/CTableHead.spec.tsx +1 -1
- package/src/components/table/__tests__/CTableHeaderCell.spec.tsx +2 -2
- package/src/components/table/__tests__/CTableRow.spec.tsx +2 -2
- package/src/components/tabs/CTab.tsx +2 -2
- package/src/components/tabs/CTabContent.tsx +1 -1
- package/src/components/tabs/CTabPane.tsx +2 -2
- package/src/components/tabs/CTabPanel.tsx +2 -2
- package/src/components/toast/CToastBody.tsx +1 -1
- package/src/components/toast/CToastHeader.tsx +1 -1
- package/src/components/toast/__tests__/CToaster.spec.tsx +2 -2
- package/src/components/widgets/CWidgetStatsA.tsx +1 -1
- package/src/components/widgets/CWidgetStatsB.tsx +1 -1
- package/src/components/widgets/CWidgetStatsC.tsx +2 -2
- package/src/components/widgets/CWidgetStatsD.tsx +2 -2
- package/src/components/widgets/CWidgetStatsE.tsx +1 -1
- package/src/components/widgets/CWidgetStatsF.tsx +1 -1
- package/src/components/widgets/__tests__/CWidgetStatsA.spec.tsx +1 -1
- package/src/components/widgets/__tests__/CWidgetStatsB.spec.tsx +1 -1
- package/src/components/widgets/__tests__/CWidgetStatsC.spec.tsx +1 -1
- package/src/components/widgets/__tests__/CWidgetStatsD.spec.tsx +1 -1
- package/src/components/widgets/__tests__/CWidgetStatsE.spec.tsx +1 -1
- package/src/components/widgets/__tests__/CWidgetStatsF.spec.tsx +2 -2
- package/src/helpers/polymorphicComponent.ts +1 -1
- package/src/utils/executeAfterTransition.ts +1 -1
- package/src/utils/getNextActiveElement.ts +1 -1
- package/src/utils/mergeClassNames.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CDropdownToggle.js","sources":["../../../../src/components/dropdown/CDropdownToggle.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"CDropdownToggle.js","sources":["../../../../src/components/dropdown/CDropdownToggle.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import type { Placement } from '@popperjs/core';
|
|
2
3
|
import type { Placements } from '../../types';
|
|
3
4
|
import type { Alignments } from './types';
|
|
4
5
|
export declare const getAlignmentClassNames: (alignment: Alignments) => string[];
|
|
5
6
|
export declare const getPlacement: (placement: Placement, direction: string | undefined, alignment: Alignments | string | undefined, isRTL: boolean) => Placements;
|
|
7
|
+
export declare const getReferenceElement: (reference: "parent" | "toggle" | React.RefObject<HTMLElement | null> | HTMLElement, dropdownToggleElement: HTMLElement | null, dropdownRef: React.RefObject<HTMLElement | null>) => HTMLElement | null;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
const getAlignmentClassNames = (alignment) => {
|
|
2
|
+
const classNames = [];
|
|
3
3
|
if (typeof alignment === 'object') {
|
|
4
|
-
for (
|
|
5
|
-
classNames.push(
|
|
4
|
+
for (const key in alignment) {
|
|
5
|
+
classNames.push(`dropdown-menu${key === 'xs' ? '' : `-${key}`}-${alignment[key]}`);
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
if (typeof alignment === 'string') {
|
|
9
|
-
classNames.push(
|
|
9
|
+
classNames.push(`dropdown-menu-${alignment}`);
|
|
10
10
|
}
|
|
11
11
|
return classNames;
|
|
12
12
|
};
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
const getPlacement = (placement, direction, alignment, isRTL) => {
|
|
14
|
+
let _placement = placement;
|
|
15
15
|
if (direction === 'dropup') {
|
|
16
16
|
_placement = isRTL ? 'top-end' : 'top-start';
|
|
17
17
|
}
|
|
@@ -29,6 +29,18 @@ var getPlacement = function (placement, direction, alignment, isRTL) {
|
|
|
29
29
|
}
|
|
30
30
|
return _placement;
|
|
31
31
|
};
|
|
32
|
+
const getReferenceElement = (reference, dropdownToggleElement, dropdownRef) => {
|
|
33
|
+
if (reference === 'parent') {
|
|
34
|
+
return dropdownRef.current;
|
|
35
|
+
}
|
|
36
|
+
if (reference instanceof HTMLElement) {
|
|
37
|
+
return reference;
|
|
38
|
+
}
|
|
39
|
+
if (reference instanceof Object && 'current' in reference) {
|
|
40
|
+
return reference.current;
|
|
41
|
+
}
|
|
42
|
+
return dropdownToggleElement;
|
|
43
|
+
};
|
|
32
44
|
|
|
33
|
-
export { getAlignmentClassNames, getPlacement };
|
|
45
|
+
export { getAlignmentClassNames, getPlacement, getReferenceElement };
|
|
34
46
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../src/components/dropdown/utils.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/components/dropdown/utils.ts"],"sourcesContent":[null],"names":[],"mappings":"AAKO,MAAM,sBAAsB,GAAG,CAAC,SAAqB,KAAI;IAC9D,MAAM,UAAU,GAAa,EAAE;AAC/B,IAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AACjC,QAAA,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE;YAC3B,UAAU,CAAC,IAAI,CACb,CAAA,aAAA,EAAgB,GAAG,KAAK,IAAI,GAAG,EAAE,GAAG,CAAA,CAAA,EAAI,GAAG,CAAA,CAAE,CAAA,CAAA,EAAI,SAAS,CAAC,GAAwB,CAAC,CAAA,CAAE,CACvF;QACH;IACF;AAEA,IAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AACjC,QAAA,UAAU,CAAC,IAAI,CAAC,iBAAiB,SAAS,CAAA,CAAE,CAAC;IAC/C;AAEA,IAAA,OAAO,UAAU;AACnB;AAEO,MAAM,YAAY,GAAG,CAC1B,SAAoB,EACpB,SAA6B,EAC7B,SAA0C,EAC1C,KAAc,KACA;IACd,IAAI,UAAU,GAAG,SAAS;AAE1B,IAAA,IAAI,SAAS,KAAK,QAAQ,EAAE;QAC1B,UAAU,GAAG,KAAK,GAAG,SAAS,GAAG,WAAW;IAC9C;AAEA,IAAA,IAAI,SAAS,KAAK,eAAe,EAAE;QACjC,UAAU,GAAG,KAAK;IACpB;AAEA,IAAA,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,UAAU,GAAG,KAAK,GAAG,YAAY,GAAG,aAAa;IACnD;AAEA,IAAA,IAAI,SAAS,KAAK,WAAW,EAAE;QAC7B,UAAU,GAAG,KAAK,GAAG,aAAa,GAAG,YAAY;IACnD;AAEA,IAAA,IAAI,SAAS,KAAK,KAAK,EAAE;QACvB,UAAU,GAAG,KAAK,GAAG,cAAc,GAAG,YAAY;IACpD;AAEA,IAAA,OAAO,UAAU;AACnB;AAEO,MAAM,mBAAmB,GAAG,CACjC,SAAkF,EAClF,qBAAyC,EACzC,WAAgD,KAC1B;AACtB,IAAA,IAAI,SAAS,KAAK,QAAQ,EAAE;QAC1B,OAAO,WAAW,CAAC,OAAO;IAC5B;AAEA,IAAA,IAAI,SAAS,YAAY,WAAW,EAAE;AACpC,QAAA,OAAO,SAAS;IAClB;IAEA,IAAI,SAAS,YAAY,MAAM,IAAI,SAAS,IAAI,SAAS,EAAE;QACzD,OAAO,SAAS,CAAC,OAAO;IAC1B;AAEA,IAAA,OAAO,qBAAqB;AAC9B;;;;"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import React, { FC, ReactElement } from 'react';
|
|
2
|
+
export interface CFocusTrapProps {
|
|
3
|
+
/**
|
|
4
|
+
* Controls whether the focus trap is active or inactive.
|
|
5
|
+
* When `true`, focus will be trapped within the child element.
|
|
6
|
+
* When `false`, normal focus behavior is restored.
|
|
7
|
+
*
|
|
8
|
+
* @default true
|
|
9
|
+
*/
|
|
10
|
+
active?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Additional container elements to include in the focus trap.
|
|
13
|
+
* Useful for floating elements like tooltips or popovers that are
|
|
14
|
+
* rendered outside the main container but should be part of the trap.
|
|
15
|
+
*/
|
|
16
|
+
additionalContainer?: React.RefObject<HTMLElement | null>;
|
|
17
|
+
/**
|
|
18
|
+
* Single React element that renders a DOM node and forwards refs properly.
|
|
19
|
+
* The focus trap will be applied to this element and all its focusable descendants.
|
|
20
|
+
*
|
|
21
|
+
* Requirements:
|
|
22
|
+
* - Must be a single ReactElement (not an array or fragment)
|
|
23
|
+
* - Must forward the ref to a DOM element
|
|
24
|
+
* - Should contain focusable elements for proper trap behavior
|
|
25
|
+
*/
|
|
26
|
+
children: ReactElement;
|
|
27
|
+
/**
|
|
28
|
+
* Controls whether to focus the first selectable element or the container itself.
|
|
29
|
+
* When `true`, focuses the first tabbable element within the container.
|
|
30
|
+
* When `false`, focuses the container element directly.
|
|
31
|
+
*
|
|
32
|
+
* This is useful for containers that should receive focus themselves,
|
|
33
|
+
* such as scrollable regions or custom interactive components.
|
|
34
|
+
*
|
|
35
|
+
* @default false
|
|
36
|
+
*/
|
|
37
|
+
focusFirstElement?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Callback function invoked when the focus trap becomes active.
|
|
40
|
+
* Useful for triggering additional accessibility announcements or analytics.
|
|
41
|
+
*/
|
|
42
|
+
onActivate?: () => void;
|
|
43
|
+
/**
|
|
44
|
+
* Callback function invoked when the focus trap is deactivated.
|
|
45
|
+
* Can be used for cleanup, analytics, or triggering state changes.
|
|
46
|
+
*/
|
|
47
|
+
onDeactivate?: () => void;
|
|
48
|
+
/**
|
|
49
|
+
* Automatically restores focus to the previously focused element when the trap is deactivated.
|
|
50
|
+
* This is crucial for accessibility as it maintains the user's place in the document
|
|
51
|
+
* when returning from modal dialogs or overlay components.
|
|
52
|
+
*
|
|
53
|
+
* Recommended to be `true` for modal dialogs and popover components.
|
|
54
|
+
*
|
|
55
|
+
* @default true
|
|
56
|
+
*/
|
|
57
|
+
restoreFocus?: boolean;
|
|
58
|
+
}
|
|
59
|
+
export declare const CFocusTrap: FC<CFocusTrapProps>;
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import React, { useRef, useEffect, cloneElement } from 'react';
|
|
2
|
+
import { focusableChildren, mergeRefs } from './utils.js';
|
|
3
|
+
|
|
4
|
+
const CFocusTrap = ({ active = true, additionalContainer, children, focusFirstElement = false, onActivate, onDeactivate, restoreFocus = true, }) => {
|
|
5
|
+
const containerRef = useRef(null);
|
|
6
|
+
const prevFocusedRef = useRef(null);
|
|
7
|
+
const isActiveRef = useRef(false);
|
|
8
|
+
const lastTabNavDirectionRef = useRef('forward');
|
|
9
|
+
const tabEventSourceRef = useRef(null);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
var _a;
|
|
12
|
+
const container = containerRef.current;
|
|
13
|
+
const _additionalContainer = (additionalContainer === null || additionalContainer === void 0 ? void 0 : additionalContainer.current) || null;
|
|
14
|
+
if (!active || !container) {
|
|
15
|
+
if (isActiveRef.current) {
|
|
16
|
+
// Deactivate cleanup
|
|
17
|
+
if (restoreFocus && ((_a = prevFocusedRef.current) === null || _a === void 0 ? void 0 : _a.isConnected)) {
|
|
18
|
+
prevFocusedRef.current.focus({ preventScroll: true });
|
|
19
|
+
}
|
|
20
|
+
onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate();
|
|
21
|
+
isActiveRef.current = false;
|
|
22
|
+
prevFocusedRef.current = null;
|
|
23
|
+
}
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
// Remember focused element BEFORE we move focus into the trap
|
|
27
|
+
prevFocusedRef.current = document.activeElement;
|
|
28
|
+
// Activating…
|
|
29
|
+
isActiveRef.current = true;
|
|
30
|
+
// Set initial focus
|
|
31
|
+
if (focusFirstElement) {
|
|
32
|
+
const elements = focusableChildren(container);
|
|
33
|
+
if (elements.length > 0) {
|
|
34
|
+
elements[0].focus({ preventScroll: true });
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
// Fallback to container if no focusable elements
|
|
38
|
+
container.focus({ preventScroll: true });
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
container.focus({ preventScroll: true });
|
|
43
|
+
}
|
|
44
|
+
onActivate === null || onActivate === void 0 ? void 0 : onActivate();
|
|
45
|
+
const handleFocusIn = (event) => {
|
|
46
|
+
var _a;
|
|
47
|
+
// Only handle focus events from tab navigation
|
|
48
|
+
if (containerRef.current !== tabEventSourceRef.current) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const target = event.target;
|
|
52
|
+
// Allow focus within container
|
|
53
|
+
if (target === document || target === container || container.contains(target)) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
// Allow focus within additional elements
|
|
57
|
+
if (_additionalContainer &&
|
|
58
|
+
(target === _additionalContainer || _additionalContainer.contains(target))) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
// Focus escaped, bring it back
|
|
62
|
+
const elements = focusableChildren(container);
|
|
63
|
+
if (elements.length === 0) {
|
|
64
|
+
container.focus({ preventScroll: true });
|
|
65
|
+
}
|
|
66
|
+
else if (lastTabNavDirectionRef.current === 'backward') {
|
|
67
|
+
(_a = elements.at(-1)) === null || _a === void 0 ? void 0 : _a.focus({ preventScroll: true });
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
elements[0].focus({ preventScroll: true });
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
const handleKeyDown = (event) => {
|
|
74
|
+
var _a, _b;
|
|
75
|
+
if (event.key !== 'Tab') {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
tabEventSourceRef.current = container;
|
|
79
|
+
lastTabNavDirectionRef.current = event.shiftKey ? 'backward' : 'forward';
|
|
80
|
+
if (!_additionalContainer) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
const containerElements = focusableChildren(container);
|
|
84
|
+
const additionalElements = focusableChildren(_additionalContainer);
|
|
85
|
+
if (containerElements.length === 0 && additionalElements.length === 0) {
|
|
86
|
+
// No focusable elements, prevent tab
|
|
87
|
+
event.preventDefault();
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
const activeElement = document.activeElement;
|
|
91
|
+
const isInContainer = containerElements.includes(activeElement);
|
|
92
|
+
const isInAdditional = additionalElements.includes(activeElement);
|
|
93
|
+
// Handle tab navigation between container and additional elements
|
|
94
|
+
if (isInContainer) {
|
|
95
|
+
const index = containerElements.indexOf(activeElement);
|
|
96
|
+
if (!event.shiftKey &&
|
|
97
|
+
index === containerElements.length - 1 &&
|
|
98
|
+
additionalElements.length > 0) {
|
|
99
|
+
// Tab forward from last container element to first additional element
|
|
100
|
+
event.preventDefault();
|
|
101
|
+
additionalElements[0].focus({ preventScroll: true });
|
|
102
|
+
}
|
|
103
|
+
else if (event.shiftKey && index === 0 && additionalElements.length > 0) {
|
|
104
|
+
// Tab backward from first container element to last additional element
|
|
105
|
+
event.preventDefault();
|
|
106
|
+
(_a = additionalElements.at(-1)) === null || _a === void 0 ? void 0 : _a.focus({ preventScroll: true });
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
else if (isInAdditional) {
|
|
110
|
+
const index = additionalElements.indexOf(activeElement);
|
|
111
|
+
if (!event.shiftKey &&
|
|
112
|
+
index === additionalElements.length - 1 &&
|
|
113
|
+
containerElements.length > 0) {
|
|
114
|
+
// Tab forward from last additional element to first container element
|
|
115
|
+
event.preventDefault();
|
|
116
|
+
containerElements[0].focus({ preventScroll: true });
|
|
117
|
+
}
|
|
118
|
+
else if (event.shiftKey && index === 0 && containerElements.length > 0) {
|
|
119
|
+
// Tab backward from first additional element to last container element
|
|
120
|
+
event.preventDefault();
|
|
121
|
+
(_b = containerElements.at(-1)) === null || _b === void 0 ? void 0 : _b.focus({ preventScroll: true });
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
// Add event listeners
|
|
126
|
+
container.addEventListener('keydown', handleKeyDown, true);
|
|
127
|
+
if (_additionalContainer) {
|
|
128
|
+
_additionalContainer.addEventListener('keydown', handleKeyDown, true);
|
|
129
|
+
}
|
|
130
|
+
document.addEventListener('focusin', handleFocusIn, true);
|
|
131
|
+
// Cleanup function
|
|
132
|
+
return () => {
|
|
133
|
+
var _a;
|
|
134
|
+
container.removeEventListener('keydown', handleKeyDown, true);
|
|
135
|
+
if (_additionalContainer) {
|
|
136
|
+
_additionalContainer.removeEventListener('keydown', handleKeyDown, true);
|
|
137
|
+
}
|
|
138
|
+
document.removeEventListener('focusin', handleFocusIn, true);
|
|
139
|
+
// On unmount (also considered deactivation)
|
|
140
|
+
if (restoreFocus && ((_a = prevFocusedRef.current) === null || _a === void 0 ? void 0 : _a.isConnected)) {
|
|
141
|
+
prevFocusedRef.current.focus({ preventScroll: true });
|
|
142
|
+
}
|
|
143
|
+
if (isActiveRef.current) {
|
|
144
|
+
onDeactivate === null || onDeactivate === void 0 ? void 0 : onDeactivate();
|
|
145
|
+
isActiveRef.current = false;
|
|
146
|
+
}
|
|
147
|
+
prevFocusedRef.current = null;
|
|
148
|
+
};
|
|
149
|
+
}, [active, additionalContainer, focusFirstElement, onActivate, onDeactivate, restoreFocus]);
|
|
150
|
+
// Attach our ref to the ONLY child — no extra wrappers
|
|
151
|
+
const onlyChild = React.Children.only(children);
|
|
152
|
+
const childRef = onlyChild.ref;
|
|
153
|
+
const mergedRef = mergeRefs(childRef, (node) => {
|
|
154
|
+
containerRef.current = node;
|
|
155
|
+
});
|
|
156
|
+
return cloneElement(onlyChild, { ref: mergedRef });
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
export { CFocusTrap };
|
|
160
|
+
//# sourceMappingURL=CFocusTrap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CFocusTrap.js","sources":["../../../../src/components/focus-trap/CFocusTrap.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;AAmEO,MAAM,UAAU,GAAwB,CAAC,EAC9C,MAAM,GAAG,IAAI,EACb,mBAAmB,EACnB,QAAQ,EACR,iBAAiB,GAAG,KAAK,EACzB,UAAU,EACV,YAAY,EACZ,YAAY,GAAG,IAAI,GACpB,KAAI;AACH,IAAA,MAAM,YAAY,GAAG,MAAM,CAAqB,IAAI,CAAC;AACrD,IAAA,MAAM,cAAc,GAAG,MAAM,CAAqB,IAAI,CAAC;AACvD,IAAA,MAAM,WAAW,GAAG,MAAM,CAAU,KAAK,CAAC;AAC1C,IAAA,MAAM,sBAAsB,GAAG,MAAM,CAAyB,SAAS,CAAC;AACxE,IAAA,MAAM,iBAAiB,GAAG,MAAM,CAAqB,IAAI,CAAC;IAE1D,SAAS,CAAC,MAAK;;AACb,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO;AACtC,QAAA,MAAM,oBAAoB,GAAG,CAAA,mBAAmB,KAAA,IAAA,IAAnB,mBAAmB,KAAA,MAAA,GAAA,MAAA,GAAnB,mBAAmB,CAAE,OAAO,KAAI,IAAI;AAEjE,QAAA,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE;AACzB,YAAA,IAAI,WAAW,CAAC,OAAO,EAAE;;gBAEvB,IAAI,YAAY,KAAI,CAAA,EAAA,GAAA,cAAc,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,WAAW,CAAA,EAAE;oBACvD,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBACvD;AAEA,gBAAA,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZ,YAAY,EAAI;AAChB,gBAAA,WAAW,CAAC,OAAO,GAAG,KAAK;AAC3B,gBAAA,cAAc,CAAC,OAAO,GAAG,IAAI;YAC/B;YAEA;QACF;;AAGA,QAAA,cAAc,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAmC;;AAGrE,QAAA,WAAW,CAAC,OAAO,GAAG,IAAI;;QAG1B,IAAI,iBAAiB,EAAE;AACrB,YAAA,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC;AAC7C,YAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;AACvB,gBAAA,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAC5C;iBAAO;;gBAEL,SAAS,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAC1C;QACF;aAAO;YACL,SAAS,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QAC1C;AAEA,QAAA,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAA,MAAA,GAAV,UAAU,EAAI;AAEd,QAAA,MAAM,aAAa,GAAG,CAAC,KAAiB,KAAI;;;YAE1C,IAAI,YAAY,CAAC,OAAO,KAAK,iBAAiB,CAAC,OAAO,EAAE;gBACtD;YACF;AAEA,YAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAc;;AAGnC,YAAA,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAC7E;YACF;;AAGA,YAAA,IACE,oBAAoB;AACpB,iBAAC,MAAM,KAAK,oBAAoB,IAAI,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAC1E;gBACA;YACF;;AAGA,YAAA,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC;AAE7C,YAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,SAAS,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAC1C;AAAO,iBAAA,IAAI,sBAAsB,CAAC,OAAO,KAAK,UAAU,EAAE;AACxD,gBAAA,CAAA,EAAA,GAAA,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YACjD;iBAAO;AACL,gBAAA,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAC5C;AACF,QAAA,CAAC;AAED,QAAA,MAAM,aAAa,GAAG,CAAC,KAAoB,KAAI;;AAC7C,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE;gBACvB;YACF;AAEA,YAAA,iBAAiB,CAAC,OAAO,GAAG,SAAS;AACrC,YAAA,sBAAsB,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,GAAG,UAAU,GAAG,SAAS;YAExE,IAAI,CAAC,oBAAoB,EAAE;gBACzB;YACF;AAEA,YAAA,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,SAAS,CAAC;AACtD,YAAA,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,oBAAoB,CAAC;AAElE,YAAA,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;;gBAErE,KAAK,CAAC,cAAc,EAAE;gBACtB;YACF;AAEA,YAAA,MAAM,aAAa,GAAG,QAAQ,CAAC,aAA4B;YAC3D,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC/D,MAAM,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC;;YAGjE,IAAI,aAAa,EAAE;gBACjB,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC;gBAEtD,IACE,CAAC,KAAK,CAAC,QAAQ;AACf,oBAAA,KAAK,KAAK,iBAAiB,CAAC,MAAM,GAAG,CAAC;AACtC,oBAAA,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAC7B;;oBAEA,KAAK,CAAC,cAAc,EAAE;AACtB,oBAAA,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBACtD;AAAO,qBAAA,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,KAAK,CAAC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;;oBAEzE,KAAK,CAAC,cAAc,EAAE;AACtB,oBAAA,CAAA,EAAA,GAAA,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBAC3D;YACF;iBAAO,IAAI,cAAc,EAAE;gBACzB,MAAM,KAAK,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,CAAC;gBAEvD,IACE,CAAC,KAAK,CAAC,QAAQ;AACf,oBAAA,KAAK,KAAK,kBAAkB,CAAC,MAAM,GAAG,CAAC;AACvC,oBAAA,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAC5B;;oBAEA,KAAK,CAAC,cAAc,EAAE;AACtB,oBAAA,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBACrD;AAAO,qBAAA,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,KAAK,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;;oBAExE,KAAK,CAAC,cAAc,EAAE;AACtB,oBAAA,CAAA,EAAA,GAAA,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBAC1D;YACF;AACF,QAAA,CAAC;;QAGD,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC;QAC1D,IAAI,oBAAoB,EAAE;YACxB,oBAAoB,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC;QACvE;QACA,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC;;AAGzD,QAAA,OAAO,MAAK;;YACV,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC;YAC7D,IAAI,oBAAoB,EAAE;gBACxB,oBAAoB,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC;YAC1E;YACA,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC;;YAG5D,IAAI,YAAY,KAAI,CAAA,EAAA,GAAA,cAAc,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,WAAW,CAAA,EAAE;gBACvD,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YACvD;AAEA,YAAA,IAAI,WAAW,CAAC,OAAO,EAAE;AACvB,gBAAA,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZ,YAAY,EAAI;AAChB,gBAAA,WAAW,CAAC,OAAO,GAAG,KAAK;YAC7B;AAEA,YAAA,cAAc,CAAC,OAAO,GAAG,IAAI;AAC/B,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;;IAG5F,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC/C,IAAA,MAAM,QAAQ,GAAI,SAAmE,CAAC,GAAG;IACzF,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAwB,KAAI;AACjE,QAAA,YAAY,CAAC,OAAO,GAAG,IAAI;AAC7B,IAAA,CAAC,CAAC;IAEF,OAAO,YAAY,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,SAAS,EAAqC,CAAC;AACvF;;;;"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Gets all focusable child elements within a container.
|
|
4
|
+
* Uses a comprehensive selector to find elements that can receive focus.
|
|
5
|
+
* @param element - The container element to search within
|
|
6
|
+
* @returns Array of focusable HTML elements
|
|
7
|
+
*/
|
|
8
|
+
export declare const focusableChildren: (element: HTMLElement) => HTMLElement[];
|
|
9
|
+
/**
|
|
10
|
+
* Checks if an element is disabled.
|
|
11
|
+
* Considers various ways an element can be disabled including CSS classes and attributes.
|
|
12
|
+
* @param element - The HTML element to check
|
|
13
|
+
* @returns True if the element is disabled, false otherwise
|
|
14
|
+
*/
|
|
15
|
+
export declare const isDisabled: (element: HTMLElement) => boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Type guard to check if an object is an Element.
|
|
18
|
+
* Handles edge cases including jQuery objects.
|
|
19
|
+
* @param object - The object to check
|
|
20
|
+
* @returns True if the object is an Element, false otherwise
|
|
21
|
+
*/
|
|
22
|
+
export declare const isElement: (object: unknown) => object is Element;
|
|
23
|
+
/**
|
|
24
|
+
* Checks if an element is visible in the DOM.
|
|
25
|
+
* Considers client rects and computed visibility styles, handling edge cases like details elements.
|
|
26
|
+
* @param element - The HTML element to check for visibility
|
|
27
|
+
* @returns True if the element is visible, false otherwise
|
|
28
|
+
*/
|
|
29
|
+
export declare const isVisible: (element: HTMLElement) => boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Merges multiple React refs into a single ref callback.
|
|
32
|
+
* Handles both function refs and ref objects, gracefully ignoring failures.
|
|
33
|
+
* @param refs - Array of React refs to merge
|
|
34
|
+
* @returns A ref callback that applies to all provided refs
|
|
35
|
+
*/
|
|
36
|
+
export declare const mergeRefs: <T>(...refs: (React.Ref<T> | undefined)[]) => (node: T) => void;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gets all focusable child elements within a container.
|
|
3
|
+
* Uses a comprehensive selector to find elements that can receive focus.
|
|
4
|
+
* @param element - The container element to search within
|
|
5
|
+
* @returns Array of focusable HTML elements
|
|
6
|
+
*/
|
|
7
|
+
const focusableChildren = (element) => {
|
|
8
|
+
const focusableSelectors = [
|
|
9
|
+
'a[href]',
|
|
10
|
+
'button:not([disabled])',
|
|
11
|
+
'input:not([disabled])',
|
|
12
|
+
'textarea:not([disabled])',
|
|
13
|
+
'select:not([disabled])',
|
|
14
|
+
'details',
|
|
15
|
+
'[tabindex]:not([tabindex="-1"])',
|
|
16
|
+
'[contenteditable="true"]',
|
|
17
|
+
].join(',');
|
|
18
|
+
const elements = [...element.querySelectorAll(focusableSelectors)];
|
|
19
|
+
return elements.filter((el) => !isDisabled(el) && isVisible(el));
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Checks if an element is disabled.
|
|
23
|
+
* Considers various ways an element can be disabled including CSS classes and attributes.
|
|
24
|
+
* @param element - The HTML element to check
|
|
25
|
+
* @returns True if the element is disabled, false otherwise
|
|
26
|
+
*/
|
|
27
|
+
const isDisabled = (element) => {
|
|
28
|
+
if (!element || element.nodeType !== Node.ELEMENT_NODE) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
if (element.classList.contains('disabled')) {
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
if ('disabled' in element && typeof element.disabled === 'boolean') {
|
|
35
|
+
return element.disabled;
|
|
36
|
+
}
|
|
37
|
+
return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false';
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Type guard to check if an object is an Element.
|
|
41
|
+
* Handles edge cases including jQuery objects.
|
|
42
|
+
* @param object - The object to check
|
|
43
|
+
* @returns True if the object is an Element, false otherwise
|
|
44
|
+
*/
|
|
45
|
+
const isElement = (object) => {
|
|
46
|
+
if (!object || typeof object !== 'object') {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
return 'nodeType' in object && typeof object.nodeType === 'number';
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Checks if an element is visible in the DOM.
|
|
53
|
+
* Considers client rects and computed visibility styles, handling edge cases like details elements.
|
|
54
|
+
* @param element - The HTML element to check for visibility
|
|
55
|
+
* @returns True if the element is visible, false otherwise
|
|
56
|
+
*/
|
|
57
|
+
const isVisible = (element) => {
|
|
58
|
+
if (!isElement(element) || element.getClientRects().length === 0) {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible';
|
|
62
|
+
// Handle `details` element as its content may falsely appear visible when it is closed
|
|
63
|
+
const closedDetails = element.closest('details:not([open])');
|
|
64
|
+
if (!closedDetails) {
|
|
65
|
+
return elementIsVisible;
|
|
66
|
+
}
|
|
67
|
+
if (closedDetails !== element) {
|
|
68
|
+
const summary = element.closest('summary');
|
|
69
|
+
// Check if summary is a direct child of the closed details
|
|
70
|
+
if ((summary === null || summary === void 0 ? void 0 : summary.parentNode) !== closedDetails) {
|
|
71
|
+
return false;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return elementIsVisible;
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Merges multiple React refs into a single ref callback.
|
|
78
|
+
* Handles both function refs and ref objects, gracefully ignoring failures.
|
|
79
|
+
* @param refs - Array of React refs to merge
|
|
80
|
+
* @returns A ref callback that applies to all provided refs
|
|
81
|
+
*/
|
|
82
|
+
const mergeRefs = (...refs) => (node) => {
|
|
83
|
+
refs.forEach((ref) => {
|
|
84
|
+
if (!ref)
|
|
85
|
+
return;
|
|
86
|
+
if (typeof ref === 'function') {
|
|
87
|
+
ref(node);
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
try {
|
|
91
|
+
;
|
|
92
|
+
ref.current = node;
|
|
93
|
+
}
|
|
94
|
+
catch (_a) {
|
|
95
|
+
// Ignore assignment failures for read-only refs
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
export { focusableChildren, isDisabled, isElement, isVisible, mergeRefs };
|
|
102
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/components/focus-trap/utils.ts"],"sourcesContent":[null],"names":[],"mappings":"AAEA;;;;;AAKG;AACI,MAAM,iBAAiB,GAAG,CAAC,OAAoB,KAAmB;AACvE,IAAA,MAAM,kBAAkB,GAAG;QACzB,SAAS;QACT,wBAAwB;QACxB,uBAAuB;QACvB,0BAA0B;QAC1B,wBAAwB;QACxB,SAAS;QACT,iCAAiC;QACjC,0BAA0B;AAC3B,KAAA,CAAC,IAAI,CAAC,GAAG,CAAC;IAEX,MAAM,QAAQ,GAAG,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAc,kBAAkB,CAAC,CAAkB;IAEhG,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;AAClE;AAEA;;;;;AAKG;AACI,MAAM,UAAU,GAAG,CAAC,OAAoB,KAAa;IAC1D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;AACtD,QAAA,OAAO,IAAI;IACb;IAEA,IAAI,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;AAC1C,QAAA,OAAO,IAAI;IACb;IAEA,IAAI,UAAU,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;QAClE,OAAO,OAAO,CAAC,QAAQ;IACzB;AAEA,IAAA,OAAO,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,OAAO;AACzF;AAEA;;;;;AAKG;AACI,MAAM,SAAS,GAAG,CAAC,MAAe,KAAuB;IAC9D,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACzC,QAAA,OAAO,KAAK;IACd;IAEA,OAAO,UAAU,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;AACpE;AAEA;;;;;AAKG;AACI,MAAM,SAAS,GAAG,CAAC,OAAoB,KAAa;AACzD,IAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;AAChE,QAAA,OAAO,KAAK;IACd;AAEA,IAAA,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,KAAK,SAAS;;IAG/F,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC;IAE5D,IAAI,CAAC,aAAa,EAAE;AAClB,QAAA,OAAO,gBAAgB;IACzB;AAEA,IAAA,IAAI,aAAa,KAAK,OAAO,EAAE;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;;QAG1C,IAAI,CAAA,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,UAAU,MAAK,aAAa,EAAE;AACzC,YAAA,OAAO,KAAK;QACd;IACF;AAEA,IAAA,OAAO,gBAAgB;AACzB;AAEA;;;;;AAKG;AACI,MAAM,SAAS,GACpB,CAAI,GAAG,IAAkC,KACzC,CAAC,IAAO,KAAI;AACV,IAAA,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AACnB,QAAA,IAAI,CAAC,GAAG;YAAE;AACV,QAAA,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,GAAG,CAAC,IAAI,CAAC;QACX;aAAO;AACL,YAAA,IAAI;gBACF;AAAE,gBAAA,GAA0B,CAAC,OAAO,GAAG,IAAI;YAC7C;AAAE,YAAA,OAAA,EAAA,EAAM;;YAER;QACF;AACF,IAAA,CAAC,CAAC;AACJ;;;;"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { __rest
|
|
1
|
+
import { __rest } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import React, { forwardRef } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import classNames from '../../_virtual/index.js';
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
return (React.createElement("div", __assign({ className: classNames('footer', (_b = {}, _b["footer-".concat(position)] = position, _b), className) }, rest, { ref: ref }), children));
|
|
6
|
+
const CFooter = forwardRef((_a, ref) => {
|
|
7
|
+
var { children, className, position } = _a, rest = __rest(_a, ["children", "className", "position"]);
|
|
8
|
+
return (React.createElement("div", Object.assign({ className: classNames('footer', { [`footer-${position}`]: position }, className) }, rest, { ref: ref }), children));
|
|
10
9
|
});
|
|
11
10
|
CFooter.propTypes = {
|
|
12
11
|
children: PropTypes.node,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CFooter.js","sources":["../../../../src/components/footer/CFooter.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"CFooter.js","sources":["../../../../src/components/footer/CFooter.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAeO,MAAM,OAAO,GAAG,UAAU,CAC/B,CAAC,EAA0C,EAAE,GAAG,KAAI;QAAnD,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,OAAW,EAAN,IAAI,GAAA,MAAA,CAAA,EAAA,EAAxC,CAAA,UAAA,EAAA,WAAA,EAAA,UAAA,CAA0C,CAAF;AACvC,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,MAAA,CAAA,MAAA,CAAA,EACE,SAAS,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA,OAAA,EAAU,QAAQ,EAAE,GAAG,QAAQ,EAAE,EAAE,SAAS,CAAC,EAAA,EAC5E,IAAI,EAAA,EACR,GAAG,EAAE,GAAG,EAAA,CAAA,EAEP,QAAQ,CACL;AAEV,CAAC;AAGH,OAAO,CAAC,SAAS,GAAG;IAClB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;CAC/C;AAED,OAAO,CAAC,WAAW,GAAG,SAAS;;;;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { __rest
|
|
1
|
+
import { __rest } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import React, { forwardRef } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import classNames from '../../_virtual/index.js';
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
return (React.createElement("form",
|
|
6
|
+
const CForm = forwardRef((_a, ref) => {
|
|
7
|
+
var { children, className, validated } = _a, rest = __rest(_a, ["children", "className", "validated"]);
|
|
8
|
+
return (React.createElement("form", Object.assign({ className: classNames({ 'was-validated': validated }, className) || undefined }, rest, { ref: ref }), children));
|
|
9
9
|
});
|
|
10
10
|
CForm.propTypes = {
|
|
11
11
|
children: PropTypes.node,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CForm.js","sources":["../../../../src/components/form/CForm.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"CForm.js","sources":["../../../../src/components/form/CForm.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAeO,MAAM,KAAK,GAAG,UAAU,CAC7B,CAAC,EAA2C,EAAE,GAAG,KAAI;QAApD,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,OAAW,EAAN,IAAI,GAAA,MAAA,CAAA,EAAA,EAAzC,CAAA,UAAA,EAAA,WAAA,EAAA,WAAA,CAA2C,CAAF;IACxC,QACE,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,MAAA,CAAA,MAAA,CAAA,EACE,SAAS,EAAE,UAAU,CAAC,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC,IAAI,SAAS,EAAA,EACzE,IAAI,EAAA,EACR,GAAG,EAAE,GAAG,EAAA,CAAA,EAEP,QAAQ,CACJ;AAEX,CAAC;AAGH,KAAK,CAAC,SAAS,GAAG;IAChB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,SAAS,EAAE,SAAS,CAAC,IAAI;CAC1B;AAED,KAAK,CAAC,WAAW,GAAG,OAAO;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __rest
|
|
1
|
+
import { __rest } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
2
|
import React, { forwardRef, useRef, useEffect } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import classNames from '../../_virtual/index.js';
|
|
@@ -7,30 +7,27 @@ import { CFormLabel } from './CFormLabel.js';
|
|
|
7
7
|
import { useForkedRef } from '../../hooks/useForkedRef.js';
|
|
8
8
|
import '@popperjs/core';
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
var
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
useEffect(
|
|
10
|
+
const CFormCheck = forwardRef((_a, ref) => {
|
|
11
|
+
var { className, button, feedback, feedbackInvalid, feedbackValid, floatingLabel, tooltipFeedback, hitArea, id, indeterminate, inline, invalid, label, reverse, type = 'checkbox', valid } = _a, rest = __rest(_a, ["className", "button", "feedback", "feedbackInvalid", "feedbackValid", "floatingLabel", "tooltipFeedback", "hitArea", "id", "indeterminate", "inline", "invalid", "label", "reverse", "type", "valid"]);
|
|
12
|
+
const inputRef = useRef(null);
|
|
13
|
+
const forkedRef = useForkedRef(ref, inputRef);
|
|
14
|
+
useEffect(() => {
|
|
15
15
|
if (inputRef.current && indeterminate) {
|
|
16
16
|
inputRef.current.indeterminate = indeterminate;
|
|
17
17
|
}
|
|
18
18
|
}, [indeterminate, inputRef.current]);
|
|
19
|
-
|
|
19
|
+
const FormControl = () => (React.createElement("input", Object.assign({ type: type, className: classNames(button ? 'btn-check' : 'form-check-input', {
|
|
20
20
|
'is-invalid': invalid,
|
|
21
21
|
'is-valid': valid,
|
|
22
22
|
'me-2': hitArea,
|
|
23
|
-
}), id: id }, rest, { ref: forkedRef })));
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
: 'form-check-label') }, (id && { htmlFor: id })), label));
|
|
32
|
-
};
|
|
33
|
-
var FormCheck = function () {
|
|
23
|
+
}), id: id }, rest, { ref: forkedRef })));
|
|
24
|
+
const FormValidation = () => (React.createElement(CFormControlValidation, { describedby: rest['aria-describedby'], feedback: feedback, feedbackInvalid: feedbackInvalid, feedbackValid: feedbackValid, floatingLabel: floatingLabel, invalid: invalid, tooltipFeedback: tooltipFeedback, valid: valid }));
|
|
25
|
+
const FormLabel = () => (React.createElement(CFormLabel, Object.assign({ customClassName: classNames(button
|
|
26
|
+
? classNames('btn', button.variant ? `btn-${button.variant}-${button.color}` : `btn-${button.color}`, {
|
|
27
|
+
[`btn-${button.size}`]: button.size,
|
|
28
|
+
}, `${button.shape}`)
|
|
29
|
+
: 'form-check-label') }, (id && { htmlFor: id })), label));
|
|
30
|
+
const FormCheck = () => {
|
|
34
31
|
if (button) {
|
|
35
32
|
return (React.createElement(React.Fragment, null,
|
|
36
33
|
React.createElement(FormControl, null),
|
|
@@ -40,7 +37,7 @@ var CFormCheck = forwardRef(function (_a, ref) {
|
|
|
40
37
|
if (label) {
|
|
41
38
|
return hitArea ? (React.createElement(React.Fragment, null,
|
|
42
39
|
React.createElement(FormControl, null),
|
|
43
|
-
React.createElement(CFormLabel,
|
|
40
|
+
React.createElement(CFormLabel, Object.assign({ customClassName: classNames('form-check-label stretched-link', className) }, (id && { htmlFor: id })), label),
|
|
44
41
|
React.createElement(FormValidation, null))) : (React.createElement("div", { className: classNames('form-check', {
|
|
45
42
|
'form-check-inline': inline,
|
|
46
43
|
'form-check-reverse': reverse,
|
|
@@ -55,7 +52,7 @@ var CFormCheck = forwardRef(function (_a, ref) {
|
|
|
55
52
|
};
|
|
56
53
|
return React.createElement(FormCheck, null);
|
|
57
54
|
});
|
|
58
|
-
CFormCheck.propTypes =
|
|
55
|
+
CFormCheck.propTypes = Object.assign({ button: PropTypes.object, className: PropTypes.string, hitArea: PropTypes.oneOf(['full']), id: PropTypes.string, indeterminate: PropTypes.bool, inline: PropTypes.bool, label: PropTypes.oneOfType([PropTypes.string, PropTypes.node]), reverse: PropTypes.bool, type: PropTypes.oneOf(['checkbox', 'radio']) }, CFormControlValidation.propTypes);
|
|
59
56
|
CFormCheck.displayName = 'CFormCheck';
|
|
60
57
|
|
|
61
58
|
export { CFormCheck };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CFormCheck.js","sources":["../../../../src/components/form/CFormCheck.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;
|
|
1
|
+
{"version":3,"file":"CFormCheck.js","sources":["../../../../src/components/form/CFormCheck.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import { __assign } from '../../node_modules/tslib/tslib.es6.js';
|
|
2
1
|
import React from 'react';
|
|
3
2
|
import PropTypes from 'prop-types';
|
|
4
3
|
import { CFormFeedback } from './CFormFeedback.js';
|
|
5
4
|
|
|
6
|
-
|
|
7
|
-
var describedby = _a.describedby, feedback = _a.feedback, feedbackInvalid = _a.feedbackInvalid, feedbackValid = _a.feedbackValid, invalid = _a.invalid, tooltipFeedback = _a.tooltipFeedback, valid = _a.valid;
|
|
5
|
+
const CFormControlValidation = ({ describedby, feedback, feedbackInvalid, feedbackValid, invalid, tooltipFeedback, valid, }) => {
|
|
8
6
|
return (React.createElement(React.Fragment, null,
|
|
9
|
-
feedback && (valid || invalid) && (React.createElement(CFormFeedback,
|
|
7
|
+
feedback && (valid || invalid) && (React.createElement(CFormFeedback, Object.assign({}, (invalid && { id: describedby }), { invalid: invalid, tooltip: tooltipFeedback, valid: valid }), feedback)),
|
|
10
8
|
feedbackInvalid && (React.createElement(CFormFeedback, { id: describedby, invalid: true, tooltip: tooltipFeedback }, feedbackInvalid)),
|
|
11
9
|
feedbackValid && (React.createElement(CFormFeedback, { valid: true, tooltip: tooltipFeedback }, feedbackValid))));
|
|
12
10
|
};
|