From f040c22e5b1b597f8b44f00ac17afecf59993777 Mon Sep 17 00:00:00 2001 From: kyletsang <6854874+kyletsang@users.noreply.github.com> Date: Tue, 24 Jun 2025 22:23:18 -0700 Subject: [PATCH] feat: add better ESM support --- .babelrc.js | 2 +- package.json | 7 +- src/AbstractModalHeader.tsx | 4 +- src/Accordion.tsx | 14 +- src/AccordionBody.tsx | 8 +- src/AccordionButton.tsx | 10 +- src/AccordionCollapse.tsx | 8 +- src/AccordionHeader.tsx | 4 +- src/AccordionItem.tsx | 4 +- src/Alert.tsx | 14 +- src/AlertHeading.tsx | 4 +- src/AlertLink.tsx | 2 +- src/Badge.tsx | 4 +- src/Breadcrumb.tsx | 4 +- src/BreadcrumbItem.tsx | 2 +- src/Button.tsx | 4 +- src/ButtonGroup.tsx | 2 +- src/ButtonToolbar.tsx | 2 +- src/Card.tsx | 22 +- src/CardBody.tsx | 2 +- src/CardFooter.tsx | 2 +- src/CardGroup.tsx | 2 +- src/CardHeader.tsx | 4 +- src/CardImg.tsx | 2 +- src/CardImgOverlay.tsx | 2 +- src/CardLink.tsx | 2 +- src/CardSubtitle.tsx | 4 +- src/CardText.tsx | 2 +- src/CardTitle.tsx | 4 +- src/Carousel.tsx | 16 +- src/CarouselCaption.tsx | 2 +- src/CarouselItem.tsx | 2 +- src/Col.tsx | 2 +- src/Collapse.tsx | 26 +- src/Container.tsx | 2 +- src/Dropdown.tsx | 20 +- src/DropdownButton.tsx | 8 +- src/DropdownContext.ts | 2 +- src/DropdownDivider.tsx | 2 +- src/DropdownHeader.tsx | 2 +- src/DropdownItem.tsx | 2 +- src/DropdownItemText.tsx | 2 +- src/DropdownMenu.tsx | 12 +- src/DropdownToggle.tsx | 6 +- src/Fade.tsx | 18 +- src/Figure.tsx | 6 +- src/FigureCaption.tsx | 2 +- src/FigureImage.tsx | 2 +- src/FloatingLabel.tsx | 4 +- src/Form.tsx | 20 +- src/FormCheck.tsx | 12 +- src/FormCheckInput.tsx | 4 +- src/FormCheckLabel.tsx | 4 +- src/FormControl.tsx | 6 +- src/FormFloating.tsx | 2 +- src/FormGroup.tsx | 2 +- src/FormLabel.tsx | 6 +- src/FormRange.tsx | 4 +- src/FormSelect.tsx | 4 +- src/FormText.tsx | 2 +- src/Image.tsx | 2 +- src/InputGroup.tsx | 8 +- src/InputGroupText.tsx | 2 +- src/ListGroup.tsx | 6 +- src/ListGroupItem.tsx | 4 +- src/Modal.tsx | 20 +- src/ModalBody.tsx | 2 +- src/ModalDialog.tsx | 2 +- src/ModalFooter.tsx | 2 +- src/ModalHeader.tsx | 4 +- src/ModalTitle.tsx | 4 +- src/Nav.tsx | 12 +- src/NavDropdown.tsx | 10 +- src/NavItem.tsx | 2 +- src/NavLink.tsx | 4 +- src/Navbar.tsx | 14 +- src/NavbarBrand.tsx | 2 +- src/NavbarCollapse.tsx | 6 +- src/NavbarOffcanvas.tsx | 4 +- src/NavbarText.tsx | 2 +- src/NavbarToggle.tsx | 4 +- src/Offcanvas.tsx | 18 +- src/OffcanvasBody.tsx | 2 +- src/OffcanvasHeader.tsx | 4 +- src/OffcanvasTitle.tsx | 4 +- src/OffcanvasToggling.tsx | 21 +- src/Overlay.tsx | 8 +- src/OverlayTrigger.tsx | 4 +- src/Pagination.tsx | 4 +- src/Placeholder.tsx | 4 +- src/PlaceholderButton.tsx | 6 +- src/Popover.tsx | 12 +- src/PopoverBody.tsx | 2 +- src/PopoverHeader.tsx | 2 +- src/ProgressBar.tsx | 4 +- src/Ratio.tsx | 2 +- src/Row.tsx | 2 +- src/Spinner.tsx | 4 +- src/SplitButton.tsx | 10 +- src/Stack.tsx | 6 +- src/Switch.tsx | 2 +- src/Tab.tsx | 6 +- src/TabContainer.tsx | 4 +- src/TabContent.tsx | 2 +- src/TabPane.tsx | 10 +- src/Table.tsx | 2 +- src/Tabs.tsx | 16 +- src/Toast.tsx | 12 +- src/ToastBody.tsx | 2 +- src/ToastContainer.tsx | 2 +- src/ToastFade.tsx | 11 +- src/ToastHeader.tsx | 6 +- src/ToggleButton.tsx | 4 +- src/ToggleButtonGroup.tsx | 8 +- src/Tooltip.tsx | 8 +- src/TransitionWrapper.tsx | 7 +- src/createUtilityClasses.ts | 5 +- src/createWithBsPrefix.tsx | 2 +- src/getTabTransitionComponent.ts | 4 +- src/index.tsx | 434 +++++++++++++++---------------- src/types.tsx | 2 +- src/useAccordionButton.ts | 4 +- src/useCol.ts | 4 +- src/useOverlayOffset.tsx | 6 +- src/usePlaceholder.ts | 8 +- test/tsconfig.json | 2 + tsconfig.json | 4 +- www/plugins/webpack-plugin.ts | 3 + yarn.lock | 27 +- 129 files changed, 600 insertions(+), 593 deletions(-) diff --git a/.babelrc.js b/.babelrc.js index 406425876a..d1326d1df9 100644 --- a/.babelrc.js +++ b/.babelrc.js @@ -1,4 +1,4 @@ -module.exports = (api) => { +export default (api) => { const env = api.env(); let dev = false; diff --git a/package.json b/package.json index b9b5c49a56..3ff0685cec 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "lib", "cjs" ], + "type": "module", "main": "cjs/index.js", "module": "lib/index.js", "types": "lib/index.d.ts", @@ -58,7 +59,7 @@ "scripts": { "bootstrap": "yarn --network-timeout 100000 && yarn --cwd www --network-timeout 100000", "build": "rimraf lib && yarn build:esm && yarn build:esm:types && yarn build:cjs && yarn build:cjs:types", - "build:esm": "babel src --out-dir lib --delete-dir-on-start --env-name esm --extensions .ts,.tsx --ignore '**/*.d.ts' && echo '{\"type\": \"module\"}' > lib/package.json", + "build:esm": "babel src --out-dir lib --delete-dir-on-start --env-name esm --extensions .ts,.tsx --ignore '**/*.d.ts'", "build:cjs": "babel src --out-dir cjs --env-name cjs --delete-dir-on-start --extensions .ts,.tsx --ignore '**/*.d.ts' && echo '{\"type\": \"commonjs\"}' > cjs/package.json", "build:esm:types": "tsc --emitDeclarationOnly", "build:cjs:types": "tsc --emitDeclarationOnly --outDir cjs", @@ -83,10 +84,10 @@ "dependencies": { "@babel/runtime": "^7.27.0", "@restart/hooks": "^0.6.2", - "@restart/ui": "^2.0.0-beta.3", + "@restart/ui": "^2.0.0-beta.5", "@types/react-transition-group": "^4.4.12", "clsx": "^2.1.1", - "dom-helpers": "^5.2.1", + "dom-helpers": "^6.0.1", "invariant": "^2.2.4", "react-transition-group": "^4.4.5", "uncontrollable": "^9.0.0", diff --git a/src/AbstractModalHeader.tsx b/src/AbstractModalHeader.tsx index 11a10c9350..c6c3191ebc 100644 --- a/src/AbstractModalHeader.tsx +++ b/src/AbstractModalHeader.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import { useContext } from 'react'; import useEventCallback from '@restart/hooks/useEventCallback'; -import CloseButton, { type CloseButtonVariant } from './CloseButton'; -import ModalContext from './ModalContext'; +import CloseButton, { type CloseButtonVariant } from './CloseButton.js'; +import ModalContext from './ModalContext.js'; export interface AbstractModalHeaderProps extends React.HTMLAttributes { diff --git a/src/Accordion.tsx b/src/Accordion.tsx index 655d341721..eb90640afb 100644 --- a/src/Accordion.tsx +++ b/src/Accordion.tsx @@ -3,16 +3,16 @@ import * as React from 'react'; import { useMemo } from 'react'; import { useUncontrolled } from 'uncontrollable'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import AccordionBody from './AccordionBody'; -import AccordionButton from './AccordionButton'; -import AccordionCollapse from './AccordionCollapse'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import AccordionBody from './AccordionBody.js'; +import AccordionButton from './AccordionButton.js'; +import AccordionCollapse from './AccordionCollapse.js'; import AccordionContext, { type AccordionSelectCallback, type AccordionEventKey, -} from './AccordionContext'; -import AccordionHeader from './AccordionHeader'; -import AccordionItem from './AccordionItem'; +} from './AccordionContext.js'; +import AccordionHeader from './AccordionHeader.js'; +import AccordionItem from './AccordionItem.js'; export interface AccordionProps extends Omit, 'onSelect'> { diff --git a/src/AccordionBody.tsx b/src/AccordionBody.tsx index 1c539c976d..b8c2098e9c 100644 --- a/src/AccordionBody.tsx +++ b/src/AccordionBody.tsx @@ -2,10 +2,10 @@ import clsx from 'clsx'; import * as React from 'react'; import { useContext } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import AccordionCollapse from './AccordionCollapse'; -import AccordionItemContext from './AccordionItemContext'; -import type { TransitionCallbacks } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import AccordionCollapse from './AccordionCollapse.js'; +import AccordionItemContext from './AccordionItemContext.js'; +import type { TransitionCallbacks } from './types.js'; export interface AccordionBodyProps extends TransitionCallbacks, diff --git a/src/AccordionButton.tsx b/src/AccordionButton.tsx index b25a1a793b..522f9a7290 100644 --- a/src/AccordionButton.tsx +++ b/src/AccordionButton.tsx @@ -2,10 +2,12 @@ import * as React from 'react'; import { useContext } from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import AccordionContext, { isAccordionItemSelected } from './AccordionContext'; -import AccordionItemContext from './AccordionItemContext'; -import { useBootstrapPrefix } from './ThemeProvider'; -import useAccordionButton from './useAccordionButton'; +import AccordionContext, { + isAccordionItemSelected, +} from './AccordionContext.js'; +import AccordionItemContext from './AccordionItemContext.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import useAccordionButton from './useAccordionButton.js'; export interface AccordionButtonProps extends React.ButtonHTMLAttributes { diff --git a/src/AccordionCollapse.tsx b/src/AccordionCollapse.tsx index 5aa7a800df..3b1f99512c 100644 --- a/src/AccordionCollapse.tsx +++ b/src/AccordionCollapse.tsx @@ -3,9 +3,11 @@ import * as React from 'react'; import { useContext } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; import { Transition } from 'react-transition-group'; -import { useBootstrapPrefix } from './ThemeProvider'; -import Collapse, { type CollapseProps } from './Collapse'; -import AccordionContext, { isAccordionItemSelected } from './AccordionContext'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import Collapse, { type CollapseProps } from './Collapse.js'; +import AccordionContext, { + isAccordionItemSelected, +} from './AccordionContext.js'; export interface AccordionCollapseProps extends CollapseProps { /** diff --git a/src/AccordionHeader.tsx b/src/AccordionHeader.tsx index 9e1fa6ec66..49ae47b55f 100644 --- a/src/AccordionHeader.tsx +++ b/src/AccordionHeader.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import AccordionButton from './AccordionButton'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import AccordionButton from './AccordionButton.js'; export interface AccordionHeaderProps extends React.HTMLAttributes { diff --git a/src/AccordionItem.tsx b/src/AccordionItem.tsx index 495ef613d7..4cdf7af8bf 100644 --- a/src/AccordionItem.tsx +++ b/src/AccordionItem.tsx @@ -2,10 +2,10 @@ import clsx from 'clsx'; import * as React from 'react'; import { useMemo } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; import AccordionItemContext, { type AccordionItemContextValue, -} from './AccordionItemContext'; +} from './AccordionItemContext.js'; export interface AccordionItemProps extends React.HTMLAttributes { /** diff --git a/src/Alert.tsx b/src/Alert.tsx index 63b781f6c2..b967ccd69b 100644 --- a/src/Alert.tsx +++ b/src/Alert.tsx @@ -2,13 +2,13 @@ import clsx from 'clsx'; import * as React from 'react'; import { useUncontrolled } from 'uncontrollable'; import useEventCallback from '@restart/hooks/useEventCallback'; -import { useBootstrapPrefix } from './ThemeProvider'; -import AlertHeading from './AlertHeading'; -import AlertLink from './AlertLink'; -import Fade from './Fade'; -import CloseButton, { type CloseButtonVariant } from './CloseButton'; -import type { Variant } from './types'; -import type { TransitionType } from './helpers'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import AlertHeading from './AlertHeading.js'; +import AlertLink from './AlertLink.js'; +import Fade from './Fade.js'; +import CloseButton, { type CloseButtonVariant } from './CloseButton.js'; +import type { Variant } from './types.js'; +import type { TransitionType } from './helpers.js'; export interface AlertProps extends React.HTMLAttributes { /** diff --git a/src/AlertHeading.tsx b/src/AlertHeading.tsx index a4be48844c..4f81a68791 100644 --- a/src/AlertHeading.tsx +++ b/src/AlertHeading.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import divWithClassName from './divWithClassName'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import divWithClassName from './divWithClassName.js'; const DivStyledAsH4 = divWithClassName('h4'); DivStyledAsH4.displayName = 'DivStyledAsH4'; diff --git a/src/AlertLink.tsx b/src/AlertLink.tsx index 0db14e4715..481a64affa 100644 --- a/src/AlertLink.tsx +++ b/src/AlertLink.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import clsx from 'clsx'; import Anchor from '@restart/ui/Anchor'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface AlertLinkProps extends React.AnchorHTMLAttributes { diff --git a/src/Badge.tsx b/src/Badge.tsx index 09a24ca043..a03b0b344f 100644 --- a/src/Badge.tsx +++ b/src/Badge.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import type { Color, Variant } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import type { Color, Variant } from './types.js'; export interface BadgeProps extends React.HTMLAttributes { /** diff --git a/src/Breadcrumb.tsx b/src/Breadcrumb.tsx index f6579548e6..10aa509693 100644 --- a/src/Breadcrumb.tsx +++ b/src/Breadcrumb.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import BreadcrumbItem from './BreadcrumbItem'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import BreadcrumbItem from './BreadcrumbItem.js'; export interface BreadcrumbProps extends React.HTMLAttributes { /** diff --git a/src/BreadcrumbItem.tsx b/src/BreadcrumbItem.tsx index 36c6f73a5c..57840eb18f 100644 --- a/src/BreadcrumbItem.tsx +++ b/src/BreadcrumbItem.tsx @@ -2,7 +2,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; import Anchor from '@restart/ui/Anchor'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface BreadcrumbItemProps extends Omit, 'title'> { diff --git a/src/Button.tsx b/src/Button.tsx index a30ab7564e..3f3e55e595 100644 --- a/src/Button.tsx +++ b/src/Button.tsx @@ -5,8 +5,8 @@ import { type ButtonProps as BaseButtonProps, } from '@restart/ui/Button'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import type { ButtonVariant } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import type { ButtonVariant } from './types.js'; export interface ButtonProps extends BaseButtonProps { /** diff --git a/src/ButtonGroup.tsx b/src/ButtonGroup.tsx index 54a15528d1..b2af72184a 100644 --- a/src/ButtonGroup.tsx +++ b/src/ButtonGroup.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ButtonGroupProps extends React.HTMLAttributes { /** diff --git a/src/ButtonToolbar.tsx b/src/ButtonToolbar.tsx index f4ab6cc8ac..2b5a0892e4 100644 --- a/src/ButtonToolbar.tsx +++ b/src/ButtonToolbar.tsx @@ -1,6 +1,6 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ButtonToolbarProps extends React.HTMLAttributes { /** diff --git a/src/Card.tsx b/src/Card.tsx index cb71811325..f90a1ca2a4 100644 --- a/src/Card.tsx +++ b/src/Card.tsx @@ -1,17 +1,17 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import CardBody from './CardBody'; -import CardFooter from './CardFooter'; -import CardHeader from './CardHeader'; -import CardImg from './CardImg'; -import CardImgOverlay from './CardImgOverlay'; -import CardLink from './CardLink'; -import CardSubtitle from './CardSubtitle'; -import CardText from './CardText'; -import CardTitle from './CardTitle'; -import type { Color, Variant } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import CardBody from './CardBody.js'; +import CardFooter from './CardFooter.js'; +import CardHeader from './CardHeader.js'; +import CardImg from './CardImg.js'; +import CardImgOverlay from './CardImgOverlay.js'; +import CardLink from './CardLink.js'; +import CardSubtitle from './CardSubtitle.js'; +import CardText from './CardText.js'; +import CardTitle from './CardTitle.js'; +import type { Color, Variant } from './types.js'; export interface CardProps extends React.HTMLAttributes { /** diff --git a/src/CardBody.tsx b/src/CardBody.tsx index 15927d270d..013e45245e 100644 --- a/src/CardBody.tsx +++ b/src/CardBody.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CardBodyProps extends React.HTMLAttributes { /** diff --git a/src/CardFooter.tsx b/src/CardFooter.tsx index d7a03365f4..6c015ccae8 100644 --- a/src/CardFooter.tsx +++ b/src/CardFooter.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CardFooterProps extends React.HTMLAttributes { /** diff --git a/src/CardGroup.tsx b/src/CardGroup.tsx index ca2b5f4ef5..b4cd8a7f49 100644 --- a/src/CardGroup.tsx +++ b/src/CardGroup.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CardGroupProps extends React.HTMLAttributes { /** diff --git a/src/CardHeader.tsx b/src/CardHeader.tsx index ddcac8bc95..5c488014d4 100644 --- a/src/CardHeader.tsx +++ b/src/CardHeader.tsx @@ -2,8 +2,8 @@ import clsx from 'clsx'; import * as React from 'react'; import { useMemo } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import CardHeaderContext from './CardHeaderContext'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import CardHeaderContext from './CardHeaderContext.js'; export interface CardHeaderProps extends React.HTMLAttributes { /** diff --git a/src/CardImg.tsx b/src/CardImg.tsx index 9faad4bb04..c784e6e006 100644 --- a/src/CardImg.tsx +++ b/src/CardImg.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CardImgProps extends React.ImgHTMLAttributes { diff --git a/src/CardImgOverlay.tsx b/src/CardImgOverlay.tsx index dc1ebdf6da..3d2557d9f0 100644 --- a/src/CardImgOverlay.tsx +++ b/src/CardImgOverlay.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CardImgOverlayProps extends React.HTMLAttributes { /** diff --git a/src/CardLink.tsx b/src/CardLink.tsx index e311f1ab90..4370d591ec 100644 --- a/src/CardLink.tsx +++ b/src/CardLink.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CardLinkProps extends React.AnchorHTMLAttributes { /** diff --git a/src/CardSubtitle.tsx b/src/CardSubtitle.tsx index 94391b3989..a84ca4065f 100644 --- a/src/CardSubtitle.tsx +++ b/src/CardSubtitle.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import divWithClassName from './divWithClassName'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import divWithClassName from './divWithClassName.js'; const DivStyledAsH6 = divWithClassName('h6'); diff --git a/src/CardText.tsx b/src/CardText.tsx index 8368df8084..ac3fa82dc5 100644 --- a/src/CardText.tsx +++ b/src/CardText.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CardTextProps extends React.HTMLAttributes { /** diff --git a/src/CardTitle.tsx b/src/CardTitle.tsx index df8e2fcb4f..2fb60ea184 100644 --- a/src/CardTitle.tsx +++ b/src/CardTitle.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import clsx from 'clsx'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import divWithClassName from './divWithClassName'; +import divWithClassName from './divWithClassName.js'; const DivStyledAsH5 = divWithClassName('h5'); diff --git a/src/Carousel.tsx b/src/Carousel.tsx index ee7c4479d5..330323de86 100644 --- a/src/Carousel.tsx +++ b/src/Carousel.tsx @@ -5,7 +5,7 @@ import useTimeout from '@restart/hooks/useTimeout'; import Anchor from '@restart/ui/Anchor'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; import clsx from 'clsx'; -import type { TransitionStatus } from 'react-transition-group/Transition'; +import type { TransitionStatus } from 'react-transition-group'; import * as React from 'react'; import { useCallback, @@ -16,13 +16,13 @@ import { useState, } from 'react'; import { useUncontrolled } from 'uncontrollable'; -import CarouselCaption from './CarouselCaption'; -import CarouselItem from './CarouselItem'; -import { map, forEach } from './ElementChildren'; -import { useBootstrapPrefix, useIsRTL } from './ThemeProvider'; -import transitionEndListener from './transitionEndListener'; -import triggerBrowserReflow from './triggerBrowserReflow'; -import TransitionWrapper from './TransitionWrapper'; +import CarouselCaption from './CarouselCaption.js'; +import CarouselItem from './CarouselItem.js'; +import { map, forEach } from './ElementChildren.js'; +import { useBootstrapPrefix, useIsRTL } from './ThemeProvider.js'; +import transitionEndListener from './transitionEndListener.js'; +import triggerBrowserReflow from './triggerBrowserReflow.js'; +import TransitionWrapper from './TransitionWrapper.js'; export type CarouselVariant = 'dark' | string; diff --git a/src/CarouselCaption.tsx b/src/CarouselCaption.tsx index cb86e44468..8e8218c4f2 100644 --- a/src/CarouselCaption.tsx +++ b/src/CarouselCaption.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CarouselCaptionProps extends React.HTMLAttributes { diff --git a/src/CarouselItem.tsx b/src/CarouselItem.tsx index 53239c85ba..99926696cd 100644 --- a/src/CarouselItem.tsx +++ b/src/CarouselItem.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface CarouselItemProps extends React.HTMLAttributes { /** diff --git a/src/Col.tsx b/src/Col.tsx index bc2ed7a4d0..081123900f 100644 --- a/src/Col.tsx +++ b/src/Col.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import useCol from './useCol'; +import useCol from './useCol.js'; export type NumberAttr = | number diff --git a/src/Collapse.tsx b/src/Collapse.tsx index 06d1b95eee..778c379498 100644 --- a/src/Collapse.tsx +++ b/src/Collapse.tsx @@ -1,19 +1,13 @@ import clsx from 'clsx'; import css from 'dom-helpers/css'; import React, { useMemo } from 'react'; -import Transition, { - type TransitionStatus, - ENTERED, - ENTERING, - EXITED, - EXITING, -} from 'react-transition-group/Transition'; +import { Transition, type TransitionStatus } from 'react-transition-group'; import { getChildRef } from '@restart/ui/utils'; -import transitionEndListener from './transitionEndListener'; -import createChainedFunction from './createChainedFunction'; -import triggerBrowserReflow from './triggerBrowserReflow'; -import TransitionWrapper from './TransitionWrapper'; -import type { TransitionCallbacks } from './types'; +import transitionEndListener from './transitionEndListener.js'; +import createChainedFunction from './createChainedFunction.js'; +import triggerBrowserReflow from './triggerBrowserReflow.js'; +import TransitionWrapper from './TransitionWrapper.js'; +import type { TransitionCallbacks } from './types.js'; type Dimension = 'height' | 'width'; @@ -98,10 +92,10 @@ function getDefaultDimensionValue( } const collapseStyles = { - [EXITED]: 'collapse', - [EXITING]: 'collapsing', - [ENTERING]: 'collapsing', - [ENTERED]: 'collapse show', + exited: 'collapse', + exiting: 'collapsing', + entering: 'collapsing', + entered: 'collapse show', }; const Collapse = React.forwardRef, CollapseProps>( diff --git a/src/Container.tsx b/src/Container.tsx index f8578508d6..cf02eff9ed 100644 --- a/src/Container.tsx +++ b/src/Container.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ContainerProps extends React.HTMLAttributes { /** diff --git a/src/Dropdown.tsx b/src/Dropdown.tsx index 3e4c21b7d4..de3ca94e51 100644 --- a/src/Dropdown.tsx +++ b/src/Dropdown.tsx @@ -5,16 +5,16 @@ import BaseDropdown, { ToggleMetadata } from '@restart/ui/Dropdown'; import { useUncontrolled } from 'uncontrollable'; import useEventCallback from '@restart/hooks/useEventCallback'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import DropdownContext from './DropdownContext'; -import DropdownDivider from './DropdownDivider'; -import DropdownHeader from './DropdownHeader'; -import DropdownItem from './DropdownItem'; -import DropdownItemText from './DropdownItemText'; -import DropdownMenu, { getDropdownMenuPlacement } from './DropdownMenu'; -import DropdownToggle from './DropdownToggle'; -import InputGroupContext from './InputGroupContext'; -import { useBootstrapPrefix, useIsRTL } from './ThemeProvider'; -import type { BsDropdownProps } from './types'; +import DropdownContext from './DropdownContext.js'; +import DropdownDivider from './DropdownDivider.js'; +import DropdownHeader from './DropdownHeader.js'; +import DropdownItem from './DropdownItem.js'; +import DropdownItemText from './DropdownItemText.js'; +import DropdownMenu, { getDropdownMenuPlacement } from './DropdownMenu.js'; +import DropdownToggle from './DropdownToggle.js'; +import InputGroupContext from './InputGroupContext.js'; +import { useBootstrapPrefix, useIsRTL } from './ThemeProvider.js'; +import type { BsDropdownProps } from './types.js'; export interface DropdownProps extends BsDropdownProps, diff --git a/src/DropdownButton.tsx b/src/DropdownButton.tsx index f7d3c9b07e..723164de73 100644 --- a/src/DropdownButton.tsx +++ b/src/DropdownButton.tsx @@ -1,9 +1,9 @@ import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import Dropdown from './Dropdown'; -import DropdownToggle, { type PropsFromToggle } from './DropdownToggle'; -import DropdownMenu, { type DropdownMenuVariant } from './DropdownMenu'; -import type { BsDropdownProps } from './types'; +import Dropdown from './Dropdown.js'; +import DropdownToggle, { type PropsFromToggle } from './DropdownToggle.js'; +import DropdownMenu, { type DropdownMenuVariant } from './DropdownMenu.js'; +import type { BsDropdownProps } from './types.js'; export interface DropdownButtonProps extends BsDropdownProps, diff --git a/src/DropdownContext.ts b/src/DropdownContext.ts index 7906bb035c..830142ce06 100644 --- a/src/DropdownContext.ts +++ b/src/DropdownContext.ts @@ -1,5 +1,5 @@ import * as React from 'react'; -import type { AlignType } from './types'; +import type { AlignType } from './types.js'; export type DropDirection = | 'up' diff --git a/src/DropdownDivider.tsx b/src/DropdownDivider.tsx index 46afd03349..243f1cd869 100644 --- a/src/DropdownDivider.tsx +++ b/src/DropdownDivider.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface DropdownDividerProps extends React.HTMLAttributes { diff --git a/src/DropdownHeader.tsx b/src/DropdownHeader.tsx index 72f186183b..b0ed394315 100644 --- a/src/DropdownHeader.tsx +++ b/src/DropdownHeader.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface DropdownHeaderProps extends React.HTMLAttributes { /** diff --git a/src/DropdownItem.tsx b/src/DropdownItem.tsx index bc1ac1eeaa..15b1962bd7 100644 --- a/src/DropdownItem.tsx +++ b/src/DropdownItem.tsx @@ -6,7 +6,7 @@ import type { DynamicRefForwardingComponent, EventKey, } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface DropdownItemProps extends React.HTMLAttributes { /** diff --git a/src/DropdownItemText.tsx b/src/DropdownItemText.tsx index 889305a0e7..d4300b8c0e 100644 --- a/src/DropdownItemText.tsx +++ b/src/DropdownItemText.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface DropdownItemTextProps extends React.HTMLAttributes { diff --git a/src/DropdownMenu.tsx b/src/DropdownMenu.tsx index 1807084901..afd9f3bf2d 100644 --- a/src/DropdownMenu.tsx +++ b/src/DropdownMenu.tsx @@ -9,12 +9,12 @@ import type { DynamicRefForwardingComponent } from '@restart/ui/types'; import useIsomorphicEffect from '@restart/hooks/useIsomorphicEffect'; import useMergedRefs from '@restart/hooks/useMergedRefs'; import warning from 'warning'; -import DropdownContext, { type DropDirection } from './DropdownContext'; -import InputGroupContext from './InputGroupContext'; -import NavbarContext from './NavbarContext'; -import { useBootstrapPrefix } from './ThemeProvider'; -import useWrappedRefWithWarning from './useWrappedRefWithWarning'; -import type { AlignType, AlignDirection, Placement } from './types'; +import DropdownContext, { type DropDirection } from './DropdownContext.js'; +import InputGroupContext from './InputGroupContext.js'; +import NavbarContext from './NavbarContext.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import useWrappedRefWithWarning from './useWrappedRefWithWarning.js'; +import type { AlignType, AlignDirection, Placement } from './types.js'; export type DropdownMenuVariant = 'dark' | string; diff --git a/src/DropdownToggle.tsx b/src/DropdownToggle.tsx index f9e95ab797..5501dd01ff 100644 --- a/src/DropdownToggle.tsx +++ b/src/DropdownToggle.tsx @@ -5,9 +5,9 @@ import type { DynamicRefForwardingComponent } from '@restart/ui/types'; import clsx from 'clsx'; import * as React from 'react'; import { useContext } from 'react'; -import Button, { type ButtonProps, type CommonButtonProps } from './Button'; -import { useBootstrapPrefix } from './ThemeProvider'; -import useWrappedRefWithWarning from './useWrappedRefWithWarning'; +import Button, { type ButtonProps, type CommonButtonProps } from './Button.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import useWrappedRefWithWarning from './useWrappedRefWithWarning.js'; export interface DropdownToggleProps extends Omit { /** diff --git a/src/Fade.tsx b/src/Fade.tsx index 37da3dfec6..580f570235 100644 --- a/src/Fade.tsx +++ b/src/Fade.tsx @@ -1,16 +1,12 @@ import clsx from 'clsx'; import * as React from 'react'; import { useCallback } from 'react'; -import Transition, { - TransitionStatus, - ENTERED, - ENTERING, -} from 'react-transition-group/Transition'; +import { Transition, type TransitionStatus } from 'react-transition-group'; import { getChildRef } from '@restart/ui/utils'; -import transitionEndListener from './transitionEndListener'; -import triggerBrowserReflow from './triggerBrowserReflow'; -import TransitionWrapper from './TransitionWrapper'; -import type { TransitionCallbacks } from './types'; +import transitionEndListener from './transitionEndListener.js'; +import triggerBrowserReflow from './triggerBrowserReflow.js'; +import TransitionWrapper from './TransitionWrapper.js'; +import type { TransitionCallbacks } from './types.js'; export interface FadeProps extends TransitionCallbacks { className?: string; @@ -55,8 +51,8 @@ export interface FadeProps extends TransitionCallbacks { } const fadeStyles = { - [ENTERING]: 'show', - [ENTERED]: 'show', + entering: 'show', + entered: 'show', }; const Fade = React.forwardRef, FadeProps>( diff --git a/src/Figure.tsx b/src/Figure.tsx index 9b94136de1..11bab0de55 100644 --- a/src/Figure.tsx +++ b/src/Figure.tsx @@ -1,9 +1,9 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import FigureImage from './FigureImage'; -import FigureCaption from './FigureCaption'; -import { useBootstrapPrefix } from './ThemeProvider'; +import FigureImage from './FigureImage.js'; +import FigureCaption from './FigureCaption.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface FigureProps extends React.AnchorHTMLAttributes { /** diff --git a/src/FigureCaption.tsx b/src/FigureCaption.tsx index 9eeee955e6..e285876943 100644 --- a/src/FigureCaption.tsx +++ b/src/FigureCaption.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface FigureCaptionProps extends React.HTMLAttributes { /** diff --git a/src/FigureImage.tsx b/src/FigureImage.tsx index 2626abf54c..b4859bf3be 100644 --- a/src/FigureImage.tsx +++ b/src/FigureImage.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; -import Image, { type ImageProps } from './Image'; +import Image, { type ImageProps } from './Image.js'; const FigureImage = React.forwardRef( ({ className, fluid = true, ...props }, ref) => ( diff --git a/src/FloatingLabel.tsx b/src/FloatingLabel.tsx index a20676fc96..5961062e3e 100644 --- a/src/FloatingLabel.tsx +++ b/src/FloatingLabel.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import FormGroup, { type FormGroupProps } from './FormGroup'; -import { useBootstrapPrefix } from './ThemeProvider'; +import FormGroup, { type FormGroupProps } from './FormGroup.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface FloatingLabelProps extends FormGroupProps { /** diff --git a/src/Form.tsx b/src/Form.tsx index 0d058409c2..740cc6933d 100644 --- a/src/Form.tsx +++ b/src/Form.tsx @@ -1,16 +1,16 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import FormCheck from './FormCheck'; -import FormControl from './FormControl'; -import FormFloating from './FormFloating'; -import FormGroup from './FormGroup'; -import FormLabel from './FormLabel'; -import FormRange from './FormRange'; -import FormSelect from './FormSelect'; -import FormText from './FormText'; -import Switch from './Switch'; -import FloatingLabel from './FloatingLabel'; +import FormCheck from './FormCheck.js'; +import FormControl from './FormControl.js'; +import FormFloating from './FormFloating.js'; +import FormGroup from './FormGroup.js'; +import FormLabel from './FormLabel.js'; +import FormRange from './FormRange.js'; +import FormSelect from './FormSelect.js'; +import FormText from './FormText.js'; +import Switch from './Switch.js'; +import FloatingLabel from './FloatingLabel.js'; export interface FormProps extends React.FormHTMLAttributes { /** diff --git a/src/FormCheck.tsx b/src/FormCheck.tsx index 865ee4a1c2..8d14f13b67 100644 --- a/src/FormCheck.tsx +++ b/src/FormCheck.tsx @@ -2,12 +2,12 @@ import clsx from 'clsx'; import * as React from 'react'; import { useContext, useMemo } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import Feedback, { type FeedbackType } from './Feedback'; -import FormCheckInput from './FormCheckInput'; -import FormCheckLabel from './FormCheckLabel'; -import FormContext from './FormContext'; -import { useBootstrapPrefix } from './ThemeProvider'; -import { hasChildOfType } from './ElementChildren'; +import Feedback, { type FeedbackType } from './Feedback.js'; +import FormCheckInput from './FormCheckInput.js'; +import FormCheckLabel from './FormCheckLabel.js'; +import FormContext from './FormContext.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import { hasChildOfType } from './ElementChildren.js'; export type FormCheckType = 'checkbox' | 'radio' | 'switch'; diff --git a/src/FormCheckInput.tsx b/src/FormCheckInput.tsx index 97f446975d..62774ffcb5 100644 --- a/src/FormCheckInput.tsx +++ b/src/FormCheckInput.tsx @@ -2,8 +2,8 @@ import clsx from 'clsx'; import * as React from 'react'; import { useContext } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import FormContext from './FormContext'; -import { useBootstrapPrefix } from './ThemeProvider'; +import FormContext from './FormContext.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; type FormCheckInputType = 'checkbox' | 'radio'; diff --git a/src/FormCheckLabel.tsx b/src/FormCheckLabel.tsx index 1532bb3627..9de5101586 100644 --- a/src/FormCheckLabel.tsx +++ b/src/FormCheckLabel.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import { useContext } from 'react'; -import FormContext from './FormContext'; -import { useBootstrapPrefix } from './ThemeProvider'; +import FormContext from './FormContext.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface FormCheckLabelProps extends React.LabelHTMLAttributes { diff --git a/src/FormControl.tsx b/src/FormControl.tsx index 8e4aae64e9..08e14b08fc 100644 --- a/src/FormControl.tsx +++ b/src/FormControl.tsx @@ -3,9 +3,9 @@ import * as React from 'react'; import { useContext } from 'react'; import warning from 'warning'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import Feedback from './Feedback'; -import FormContext from './FormContext'; -import { useBootstrapPrefix } from './ThemeProvider'; +import Feedback from './Feedback.js'; +import FormContext from './FormContext.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; type FormControlElement = HTMLInputElement | HTMLTextAreaElement; diff --git a/src/FormFloating.tsx b/src/FormFloating.tsx index 60297c6e7f..d9eadd70b8 100644 --- a/src/FormFloating.tsx +++ b/src/FormFloating.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface FormFloatingProps extends React.HTMLAttributes { /** diff --git a/src/FormGroup.tsx b/src/FormGroup.tsx index 4bd1276388..23db5ee83d 100644 --- a/src/FormGroup.tsx +++ b/src/FormGroup.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { useMemo } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import FormContext from './FormContext'; +import FormContext from './FormContext.js'; export interface FormGroupProps extends React.HTMLAttributes { /** diff --git a/src/FormLabel.tsx b/src/FormLabel.tsx index fc6e120b32..3676c1cbe2 100644 --- a/src/FormLabel.tsx +++ b/src/FormLabel.tsx @@ -3,9 +3,9 @@ import * as React from 'react'; import { useContext } from 'react'; import warning from 'warning'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import Col, { type ColProps } from './Col'; -import FormContext from './FormContext'; -import { useBootstrapPrefix } from './ThemeProvider'; +import Col, { type ColProps } from './Col.js'; +import FormContext from './FormContext.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; interface FormLabelBaseProps extends React.HTMLAttributes { /** diff --git a/src/FormRange.tsx b/src/FormRange.tsx index 193b291b04..23d75bfc44 100644 --- a/src/FormRange.tsx +++ b/src/FormRange.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import { useContext } from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; -import FormContext from './FormContext'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import FormContext from './FormContext.js'; export interface FormRangeProps extends Omit, 'type'> { diff --git a/src/FormSelect.tsx b/src/FormSelect.tsx index b97a9c08af..b004e3720e 100644 --- a/src/FormSelect.tsx +++ b/src/FormSelect.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import { useContext } from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; -import FormContext from './FormContext'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import FormContext from './FormContext.js'; export interface FormSelectProps extends Omit, 'size'> { diff --git a/src/FormText.tsx b/src/FormText.tsx index 55885dc733..98f9a542a1 100644 --- a/src/FormText.tsx +++ b/src/FormText.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface FormTextProps extends React.HTMLAttributes { /** diff --git a/src/Image.tsx b/src/Image.tsx index a0cbaaf9c1..a019e91b31 100644 --- a/src/Image.tsx +++ b/src/Image.tsx @@ -1,6 +1,6 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ImageProps extends React.ImgHTMLAttributes { /** diff --git a/src/InputGroup.tsx b/src/InputGroup.tsx index 4a56f98c0b..96eb2b61c2 100644 --- a/src/InputGroup.tsx +++ b/src/InputGroup.tsx @@ -2,10 +2,10 @@ import clsx from 'clsx'; import * as React from 'react'; import { useMemo } from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import FormCheckInput, { type FormCheckInputProps } from './FormCheckInput'; -import InputGroupContext from './InputGroupContext'; -import InputGroupText from './InputGroupText'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import FormCheckInput, { type FormCheckInputProps } from './FormCheckInput.js'; +import InputGroupContext from './InputGroupContext.js'; +import InputGroupText from './InputGroupText.js'; const InputGroupCheckbox = (props: FormCheckInputProps) => ( diff --git a/src/InputGroupText.tsx b/src/InputGroupText.tsx index 2ca1a650a5..2903ba98c4 100644 --- a/src/InputGroupText.tsx +++ b/src/InputGroupText.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface InputGroupTextProps extends React.HTMLAttributes { /** diff --git a/src/ListGroup.tsx b/src/ListGroup.tsx index fbc20ca99d..a5ba4227d3 100644 --- a/src/ListGroup.tsx +++ b/src/ListGroup.tsx @@ -7,9 +7,9 @@ import type { DynamicRefForwardingComponent, EventKey, } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import ListGroupItem from './ListGroupItem'; -import type { BaseNavProps } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import ListGroupItem from './ListGroupItem.js'; +import type { BaseNavProps } from './types.js'; export interface ListGroupProps extends BaseNavProps { /** diff --git a/src/ListGroupItem.tsx b/src/ListGroupItem.tsx index 529d184de1..4c25e0205d 100644 --- a/src/ListGroupItem.tsx +++ b/src/ListGroupItem.tsx @@ -5,8 +5,8 @@ import useEventCallback from '@restart/hooks/useEventCallback'; import { useNavItem } from '@restart/ui/NavItem'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; import { makeEventKey } from '@restart/ui/SelectableContext'; -import { useBootstrapPrefix } from './ThemeProvider'; -import type { BaseNavItemProps, Variant } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import type { BaseNavItemProps, Variant } from './types.js'; export interface ListGroupItemProps extends BaseNavItemProps { /** diff --git a/src/Modal.tsx b/src/Modal.tsx index b41259d727..4a9a9d653f 100644 --- a/src/Modal.tsx +++ b/src/Modal.tsx @@ -10,16 +10,16 @@ import transitionEnd from 'dom-helpers/transitionEnd'; import * as React from 'react'; import { useCallback, useMemo, useRef, useState } from 'react'; import BaseModal, { type ModalHandle } from '@restart/ui/Modal'; -import { getSharedManager } from './BootstrapModalManager'; -import Fade from './Fade'; -import ModalBody from './ModalBody'; -import ModalContext from './ModalContext'; -import ModalDialog from './ModalDialog'; -import ModalFooter from './ModalFooter'; -import ModalHeader from './ModalHeader'; -import ModalTitle from './ModalTitle'; -import { useBootstrapPrefix, useIsRTL } from './ThemeProvider'; -import type { BaseModalProps } from './types'; +import { getSharedManager } from './BootstrapModalManager.js'; +import Fade from './Fade.js'; +import ModalBody from './ModalBody.js'; +import ModalContext from './ModalContext.js'; +import ModalDialog from './ModalDialog.js'; +import ModalFooter from './ModalFooter.js'; +import ModalHeader from './ModalHeader.js'; +import ModalTitle from './ModalTitle.js'; +import { useBootstrapPrefix, useIsRTL } from './ThemeProvider.js'; +import type { BaseModalProps } from './types.js'; export interface ModalProps extends BaseModalProps { /** diff --git a/src/ModalBody.tsx b/src/ModalBody.tsx index 9c2ce5b818..299e17b4b4 100644 --- a/src/ModalBody.tsx +++ b/src/ModalBody.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ModalBodyProps extends React.HTMLAttributes { /** diff --git a/src/ModalDialog.tsx b/src/ModalDialog.tsx index 3421c43688..3ec69ab56e 100644 --- a/src/ModalDialog.tsx +++ b/src/ModalDialog.tsx @@ -1,6 +1,6 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ModalDialogProps extends React.HTMLAttributes { /** diff --git a/src/ModalFooter.tsx b/src/ModalFooter.tsx index ce055dc598..04b2073de1 100644 --- a/src/ModalFooter.tsx +++ b/src/ModalFooter.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ModalFooterProps extends React.HTMLAttributes { /** diff --git a/src/ModalHeader.tsx b/src/ModalHeader.tsx index 168c51cc8f..aa6d27590f 100644 --- a/src/ModalHeader.tsx +++ b/src/ModalHeader.tsx @@ -1,9 +1,9 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; import AbstractModalHeader, { type AbstractModalHeaderProps, -} from './AbstractModalHeader'; +} from './AbstractModalHeader.js'; export interface ModalHeaderProps extends AbstractModalHeaderProps { /** diff --git a/src/ModalTitle.tsx b/src/ModalTitle.tsx index c469f90ee7..cfe04ecf6c 100644 --- a/src/ModalTitle.tsx +++ b/src/ModalTitle.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import divWithClassName from './divWithClassName'; -import { useBootstrapPrefix } from './ThemeProvider'; +import divWithClassName from './divWithClassName.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; const DivStyledAsH4 = divWithClassName('h4'); diff --git a/src/Nav.tsx b/src/Nav.tsx index 2f166e60a9..5a2f29c569 100644 --- a/src/Nav.tsx +++ b/src/Nav.tsx @@ -4,12 +4,12 @@ import { useContext } from 'react'; import { useUncontrolled } from 'uncontrollable'; import BaseNav from '@restart/ui/Nav'; import { DynamicRefForwardingComponent, EventKey } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import NavbarContext from './NavbarContext'; -import CardHeaderContext from './CardHeaderContext'; -import NavItem from './NavItem'; -import NavLink from './NavLink'; -import type { BaseNavProps } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import NavbarContext from './NavbarContext.js'; +import CardHeaderContext from './CardHeaderContext.js'; +import NavItem from './NavItem.js'; +import NavLink from './NavLink.js'; +import type { BaseNavProps } from './types.js'; export interface NavProps extends BaseNavProps { /** diff --git a/src/NavDropdown.tsx b/src/NavDropdown.tsx index ea3d4ecc09..1c5a05c5df 100644 --- a/src/NavDropdown.tsx +++ b/src/NavDropdown.tsx @@ -1,11 +1,11 @@ import clsx from 'clsx'; import * as React from 'react'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import Dropdown from './Dropdown'; -import type { DropdownMenuVariant } from './DropdownMenu'; -import NavLink from './NavLink'; -import type { BsDropdownProps } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import Dropdown from './Dropdown.js'; +import type { DropdownMenuVariant } from './DropdownMenu.js'; +import NavLink from './NavLink.js'; +import type { BsDropdownProps } from './types.js'; export interface NavDropdownProps extends BsDropdownProps, diff --git a/src/NavItem.tsx b/src/NavItem.tsx index ca8ae573c0..406f7979a9 100644 --- a/src/NavItem.tsx +++ b/src/NavItem.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface NavItemProps extends React.HTMLAttributes { /** diff --git a/src/NavLink.tsx b/src/NavLink.tsx index 3c53baa3f2..2955f4b1a6 100644 --- a/src/NavLink.tsx +++ b/src/NavLink.tsx @@ -4,8 +4,8 @@ import Anchor from '@restart/ui/Anchor'; import { useNavItem } from '@restart/ui/NavItem'; import { makeEventKey } from '@restart/ui/SelectableContext'; import { DynamicRefForwardingComponent, EventKey } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import type { BaseNavItemProps } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import type { BaseNavItemProps } from './types.js'; export interface NavLinkProps extends BaseNavItemProps { /** diff --git a/src/Navbar.tsx b/src/Navbar.tsx index ca17fe6861..2d26c54482 100644 --- a/src/Navbar.tsx +++ b/src/Navbar.tsx @@ -7,13 +7,13 @@ import { SelectCallback, } from '@restart/ui/types'; import { useUncontrolled } from 'uncontrollable'; -import NavbarBrand from './NavbarBrand'; -import NavbarCollapse from './NavbarCollapse'; -import NavbarToggle from './NavbarToggle'; -import NavbarOffcanvas from './NavbarOffcanvas'; -import { useBootstrapPrefix } from './ThemeProvider'; -import NavbarContext, { type NavbarContextType } from './NavbarContext'; -import NavbarText from './NavbarText'; +import NavbarBrand from './NavbarBrand.js'; +import NavbarCollapse from './NavbarCollapse.js'; +import NavbarToggle from './NavbarToggle.js'; +import NavbarOffcanvas from './NavbarOffcanvas.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import NavbarContext, { type NavbarContextType } from './NavbarContext.js'; +import NavbarText from './NavbarText.js'; export interface NavbarProps extends Omit, 'onSelect' | 'onToggle'> { diff --git a/src/NavbarBrand.tsx b/src/NavbarBrand.tsx index f9f516430c..d16f7ed2c8 100644 --- a/src/NavbarBrand.tsx +++ b/src/NavbarBrand.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface NavbarBrandProps extends React.HTMLAttributes { /** diff --git a/src/NavbarCollapse.tsx b/src/NavbarCollapse.tsx index abfa1c7aef..78a42d8d94 100644 --- a/src/NavbarCollapse.tsx +++ b/src/NavbarCollapse.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import { useContext } from 'react'; -import Collapse, { type CollapseProps } from './Collapse'; -import { useBootstrapPrefix } from './ThemeProvider'; -import NavbarContext from './NavbarContext'; +import Collapse, { type CollapseProps } from './Collapse.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import NavbarContext from './NavbarContext.js'; export interface NavbarCollapseProps extends Omit, diff --git a/src/NavbarOffcanvas.tsx b/src/NavbarOffcanvas.tsx index e379d38a4b..3c25d3abe4 100644 --- a/src/NavbarOffcanvas.tsx +++ b/src/NavbarOffcanvas.tsx @@ -2,8 +2,8 @@ import * as React from 'react'; import { useContext } from 'react'; import useEventCallback from '@restart/hooks/useEventCallback'; import type { ModalHandle } from '@restart/ui/Modal'; -import Offcanvas, { type OffcanvasProps } from './Offcanvas'; -import NavbarContext from './NavbarContext'; +import Offcanvas, { type OffcanvasProps } from './Offcanvas.js'; +import NavbarContext from './NavbarContext.js'; export type NavbarOffcanvasProps = Omit; diff --git a/src/NavbarText.tsx b/src/NavbarText.tsx index e141a6a4c8..ac614b9fe7 100644 --- a/src/NavbarText.tsx +++ b/src/NavbarText.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface NavbarTextProps extends React.HTMLAttributes { /** diff --git a/src/NavbarToggle.tsx b/src/NavbarToggle.tsx index 22781e6850..2b2fa27b10 100644 --- a/src/NavbarToggle.tsx +++ b/src/NavbarToggle.tsx @@ -3,8 +3,8 @@ import * as React from 'react'; import { useContext } from 'react'; import useEventCallback from '@restart/hooks/useEventCallback'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import NavbarContext from './NavbarContext'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import NavbarContext from './NavbarContext.js'; export interface NavbarToggleProps extends React.HTMLAttributes { /** diff --git a/src/Offcanvas.tsx b/src/Offcanvas.tsx index 46ea2006b4..63e44c5500 100644 --- a/src/Offcanvas.tsx +++ b/src/Offcanvas.tsx @@ -5,17 +5,17 @@ import useEventListener from '@restart/hooks/useEventListener'; import * as React from 'react'; import { useCallback, useMemo, useRef } from 'react'; import BaseModal, { type ModalHandle } from '@restart/ui/Modal'; -import Fade from './Fade'; -import OffcanvasBody from './OffcanvasBody'; -import OffcanvasToggling from './OffcanvasToggling'; -import ModalContext from './ModalContext'; -import OffcanvasHeader from './OffcanvasHeader'; -import OffcanvasTitle from './OffcanvasTitle'; -import { useBootstrapPrefix } from './ThemeProvider'; +import Fade from './Fade.js'; +import OffcanvasBody from './OffcanvasBody.js'; +import OffcanvasToggling from './OffcanvasToggling.js'; +import ModalContext from './ModalContext.js'; +import OffcanvasHeader from './OffcanvasHeader.js'; +import OffcanvasTitle from './OffcanvasTitle.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; import BootstrapModalManager, { getSharedManager, -} from './BootstrapModalManager'; -import type { BaseModalProps } from './types'; +} from './BootstrapModalManager.js'; +import type { BaseModalProps } from './types.js'; export type OffcanvasPlacement = 'start' | 'end' | 'top' | 'bottom'; diff --git a/src/OffcanvasBody.tsx b/src/OffcanvasBody.tsx index 2ccb0df35e..adb8d6d2b5 100644 --- a/src/OffcanvasBody.tsx +++ b/src/OffcanvasBody.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface OffcanvasBodyProps extends React.HTMLAttributes { /** diff --git a/src/OffcanvasHeader.tsx b/src/OffcanvasHeader.tsx index 2edcfd92e4..62a4fc0419 100644 --- a/src/OffcanvasHeader.tsx +++ b/src/OffcanvasHeader.tsx @@ -1,9 +1,9 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; import AbstractModalHeader, { type AbstractModalHeaderProps, -} from './AbstractModalHeader'; +} from './AbstractModalHeader.js'; export interface OffcanvasHeaderProps extends AbstractModalHeaderProps { /** diff --git a/src/OffcanvasTitle.tsx b/src/OffcanvasTitle.tsx index c586b48aad..fb31d20a8a 100644 --- a/src/OffcanvasTitle.tsx +++ b/src/OffcanvasTitle.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import clsx from 'clsx'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import divWithClassName from './divWithClassName'; -import { useBootstrapPrefix } from './ThemeProvider'; +import divWithClassName from './divWithClassName.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; const DivStyledAsH5 = divWithClassName('h5'); diff --git a/src/OffcanvasToggling.tsx b/src/OffcanvasToggling.tsx index d9576622ee..26d37876e4 100644 --- a/src/OffcanvasToggling.tsx +++ b/src/OffcanvasToggling.tsx @@ -1,16 +1,11 @@ import clsx from 'clsx'; import * as React from 'react'; -import Transition, { - type TransitionStatus, - ENTERED, - ENTERING, - EXITING, -} from 'react-transition-group/Transition'; +import { Transition, type TransitionStatus } from 'react-transition-group'; import { getChildRef } from '@restart/ui/utils'; -import transitionEndListener from './transitionEndListener'; -import TransitionWrapper from './TransitionWrapper'; -import { useBootstrapPrefix } from './ThemeProvider'; -import type { TransitionCallbacks } from './types'; +import transitionEndListener from './transitionEndListener.js'; +import TransitionWrapper from './TransitionWrapper.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import type { TransitionCallbacks } from './types.js'; export interface OffcanvasTogglingProps extends TransitionCallbacks { /** @@ -55,8 +50,8 @@ export interface OffcanvasTogglingProps extends TransitionCallbacks { } const transitionStyles = { - [ENTERING]: 'show', - [ENTERED]: 'show', + entering: 'show', + entered: 'show', }; const OffcanvasToggling = React.forwardRef< @@ -95,7 +90,7 @@ const OffcanvasToggling = React.forwardRef< className: clsx( className, (children.props as any).className, - (status === ENTERING || status === EXITING) && + (status === 'entering' || status === 'exiting') && `${bsPrefix}-toggling`, transitionStyles[status], ), diff --git a/src/Overlay.tsx b/src/Overlay.tsx index 9205150738..079dad65bd 100644 --- a/src/Overlay.tsx +++ b/src/Overlay.tsx @@ -6,15 +6,15 @@ import { State } from '@restart/ui/usePopper'; import useEventCallback from '@restart/hooks/useEventCallback'; import useIsomorphicEffect from '@restart/hooks/useIsomorphicEffect'; import useMergedRefs from '@restart/hooks/useMergedRefs'; -import useOverlayOffset from './useOverlayOffset'; -import Fade from './Fade'; -import type { TransitionType } from './helpers'; +import useOverlayOffset from './useOverlayOffset.js'; +import Fade from './Fade.js'; +import type { TransitionType } from './helpers.js'; import type { BaseOverlayProps, Placement, PopperRef, RootCloseEvent, -} from './types'; +} from './types.js'; export interface OverlayInjectedProps { ref: React.RefCallback; diff --git a/src/OverlayTrigger.tsx b/src/OverlayTrigger.tsx index 9fcfc2d40e..74729a249b 100644 --- a/src/OverlayTrigger.tsx +++ b/src/OverlayTrigger.tsx @@ -5,8 +5,8 @@ import warning from 'warning'; import { useUncontrolledProp } from 'uncontrollable'; import useMergedRefs from '@restart/hooks/useMergedRefs'; import { getChildRef } from '@restart/ui/utils'; -import Overlay, { type OverlayChildren, type OverlayProps } from './Overlay'; -import type { Placement } from './types'; +import Overlay, { type OverlayChildren, type OverlayProps } from './Overlay.js'; +import type { Placement } from './types.js'; export type OverlayTriggerType = 'hover' | 'click' | 'focus'; diff --git a/src/Pagination.tsx b/src/Pagination.tsx index 65633784c0..8aff5fd05b 100644 --- a/src/Pagination.tsx +++ b/src/Pagination.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; -import PageItem, { Ellipsis, First, Last, Next, Prev } from './PageItem'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import PageItem, { Ellipsis, First, Last, Next, Prev } from './PageItem.js'; export interface PaginationProps extends React.HTMLAttributes { diff --git a/src/Placeholder.tsx b/src/Placeholder.tsx index e96a001ebc..439f292856 100644 --- a/src/Placeholder.tsx +++ b/src/Placeholder.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import usePlaceholder, { type UsePlaceholderProps } from './usePlaceholder'; -import PlaceholderButton from './PlaceholderButton'; +import usePlaceholder, { type UsePlaceholderProps } from './usePlaceholder.js'; +import PlaceholderButton from './PlaceholderButton.js'; export interface PlaceholderProps extends UsePlaceholderProps { /** diff --git a/src/PlaceholderButton.tsx b/src/PlaceholderButton.tsx index b368d1d4c9..06bf3e71a9 100644 --- a/src/PlaceholderButton.tsx +++ b/src/PlaceholderButton.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import Button from './Button'; -import usePlaceholder, { type UsePlaceholderProps } from './usePlaceholder'; -import type { ButtonVariant } from './types'; +import Button from './Button.js'; +import usePlaceholder, { type UsePlaceholderProps } from './usePlaceholder.js'; +import type { ButtonVariant } from './types.js'; export interface PlaceholderButtonProps extends UsePlaceholderProps { /** diff --git a/src/Popover.tsx b/src/Popover.tsx index 8aa43f46aa..8c3d738b6f 100644 --- a/src/Popover.tsx +++ b/src/Popover.tsx @@ -1,12 +1,12 @@ import clsx from 'clsx'; import * as React from 'react'; import { OverlayArrowProps } from '@restart/ui/Overlay'; -import { useBootstrapPrefix, useIsRTL } from './ThemeProvider'; -import PopoverHeader from './PopoverHeader'; -import PopoverBody from './PopoverBody'; -import type { Placement, PopperRef } from './types'; -import { getOverlayDirection } from './helpers'; -import getInitialPopperStyles from './getInitialPopperStyles'; +import { useBootstrapPrefix, useIsRTL } from './ThemeProvider.js'; +import PopoverHeader from './PopoverHeader.js'; +import PopoverBody from './PopoverBody.js'; +import type { Placement, PopperRef } from './types.js'; +import { getOverlayDirection } from './helpers.js'; +import getInitialPopperStyles from './getInitialPopperStyles.js'; export interface PopoverProps extends React.HTMLAttributes { /** diff --git a/src/PopoverBody.tsx b/src/PopoverBody.tsx index 9818250b81..44825a406c 100644 --- a/src/PopoverBody.tsx +++ b/src/PopoverBody.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface PopoverBodyProps extends React.HTMLAttributes { /** diff --git a/src/PopoverHeader.tsx b/src/PopoverHeader.tsx index 830825d322..f03e47173a 100644 --- a/src/PopoverHeader.tsx +++ b/src/PopoverHeader.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface PopoverHeaderProps extends React.HTMLAttributes { /** diff --git a/src/ProgressBar.tsx b/src/ProgressBar.tsx index dccdd8322e..d215c124c5 100644 --- a/src/ProgressBar.tsx +++ b/src/ProgressBar.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import { cloneElement } from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; -import { map } from './ElementChildren'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import { map } from './ElementChildren.js'; export interface ProgressBarProps extends React.HTMLAttributes { /** diff --git a/src/Ratio.tsx b/src/Ratio.tsx index aea4cf291e..c70f70e5db 100644 --- a/src/Ratio.tsx +++ b/src/Ratio.tsx @@ -1,6 +1,6 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export type AspectRatio = '1x1' | '4x3' | '16x9' | '21x9' | string; diff --git a/src/Row.tsx b/src/Row.tsx index edd034b8d5..67a965cc9a 100644 --- a/src/Row.tsx +++ b/src/Row.tsx @@ -5,7 +5,7 @@ import { useBootstrapPrefix, useBootstrapBreakpoints, useBootstrapMinBreakpoint, -} from './ThemeProvider'; +} from './ThemeProvider.js'; type RowColWidth = | number diff --git a/src/Spinner.tsx b/src/Spinner.tsx index 204fc70948..c00b52cee9 100644 --- a/src/Spinner.tsx +++ b/src/Spinner.tsx @@ -1,8 +1,8 @@ import clsx from 'clsx'; import * as React from 'react'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import type { Variant } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import type { Variant } from './types.js'; export interface SpinnerProps extends React.HTMLAttributes { /** diff --git a/src/SplitButton.tsx b/src/SplitButton.tsx index 36e78cc57c..6eb70b440f 100644 --- a/src/SplitButton.tsx +++ b/src/SplitButton.tsx @@ -1,9 +1,9 @@ import * as React from 'react'; -import Button from './Button'; -import ButtonGroup from './ButtonGroup'; -import Dropdown from './Dropdown'; -import type { PropsFromToggle } from './DropdownToggle'; -import { BsDropdownProps } from './types'; +import Button from './Button.js'; +import ButtonGroup from './ButtonGroup.js'; +import Dropdown from './Dropdown.js'; +import type { PropsFromToggle } from './DropdownToggle.js'; +import { BsDropdownProps } from './types.js'; export interface SplitButtonProps extends BsDropdownProps, diff --git a/src/Stack.tsx b/src/Stack.tsx index e403da2cc9..020ea41565 100644 --- a/src/Stack.tsx +++ b/src/Stack.tsx @@ -5,11 +5,11 @@ import { useBootstrapPrefix, useBootstrapBreakpoints, useBootstrapMinBreakpoint, -} from './ThemeProvider'; -import type { GapValue } from './types'; +} from './ThemeProvider.js'; +import type { GapValue } from './types.js'; import createUtilityClassName, { type ResponsiveUtilityValue, -} from './createUtilityClasses'; +} from './createUtilityClasses.js'; export type StackDirection = 'horizontal' | 'vertical'; diff --git a/src/Switch.tsx b/src/Switch.tsx index 16d554fb46..72f71fbcf5 100644 --- a/src/Switch.tsx +++ b/src/Switch.tsx @@ -1,6 +1,6 @@ import * as React from 'react'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import FormCheck, { FormCheckProps } from './FormCheck'; +import FormCheck, { FormCheckProps } from './FormCheck.js'; type SwitchProps = Omit; diff --git a/src/Tab.tsx b/src/Tab.tsx index 53a7e20db9..efef56b779 100644 --- a/src/Tab.tsx +++ b/src/Tab.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; -import TabContainer from './TabContainer'; -import TabContent from './TabContent'; -import TabPane, { type TabPaneProps } from './TabPane'; +import TabContainer from './TabContainer.js'; +import TabContent from './TabContent.js'; +import TabPane, { type TabPaneProps } from './TabPane.js'; export interface TabProps extends Omit { /** diff --git a/src/TabContainer.tsx b/src/TabContainer.tsx index 067985e96f..076192c31e 100644 --- a/src/TabContainer.tsx +++ b/src/TabContainer.tsx @@ -1,7 +1,7 @@ import Tabs from '@restart/ui/Tabs'; import type { EventKey, SelectCallback } from '@restart/ui/types'; -import getTabTransitionComponent from './getTabTransitionComponent'; -import type { TransitionType } from './helpers'; +import getTabTransitionComponent from './getTabTransitionComponent.js'; +import type { TransitionType } from './helpers.js'; export interface TabContainerProps { /** diff --git a/src/TabContent.tsx b/src/TabContent.tsx index a869c83929..7efa1483e4 100644 --- a/src/TabContent.tsx +++ b/src/TabContent.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface TabContentProps extends React.HTMLAttributes { /** diff --git a/src/TabPane.tsx b/src/TabPane.tsx index 431efb5d66..29cf86858f 100644 --- a/src/TabPane.tsx +++ b/src/TabPane.tsx @@ -7,11 +7,11 @@ import type { DynamicRefForwardingComponent, EventKey, } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; -import Fade from './Fade'; -import getTabTransitionComponent from './getTabTransitionComponent'; -import type { TransitionType } from './helpers'; -import type { TransitionCallbacks } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import Fade from './Fade.js'; +import getTabTransitionComponent from './getTabTransitionComponent.js'; +import type { TransitionType } from './helpers.js'; +import type { TransitionCallbacks } from './types.js'; export interface TabPaneProps extends TransitionCallbacks, diff --git a/src/Table.tsx b/src/Table.tsx index 830487cb52..607cbaa43b 100644 --- a/src/Table.tsx +++ b/src/Table.tsx @@ -1,6 +1,6 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface TableProps extends React.TableHTMLAttributes { diff --git a/src/Tabs.tsx b/src/Tabs.tsx index 9bfb4f0580..7bd9a177ae 100644 --- a/src/Tabs.tsx +++ b/src/Tabs.tsx @@ -1,14 +1,14 @@ import * as React from 'react'; import { useUncontrolled } from 'uncontrollable'; import BaseTabs, { TabsProps as BaseTabsProps } from '@restart/ui/Tabs'; -import Nav, { type NavProps } from './Nav'; -import NavLink from './NavLink'; -import NavItem from './NavItem'; -import TabContent from './TabContent'; -import TabPane from './TabPane'; -import { forEach, map } from './ElementChildren'; -import getTabTransitionComponent from './getTabTransitionComponent'; -import type { TransitionType } from './helpers'; +import Nav, { type NavProps } from './Nav.js'; +import NavLink from './NavLink.js'; +import NavItem from './NavItem.js'; +import TabContent from './TabContent.js'; +import TabPane from './TabPane.js'; +import { forEach, map } from './ElementChildren.js'; +import getTabTransitionComponent from './getTabTransitionComponent.js'; +import type { TransitionType } from './helpers.js'; export interface TabsProps extends Omit, diff --git a/src/Toast.tsx b/src/Toast.tsx index 182c7fd60f..998cdb4bd9 100644 --- a/src/Toast.tsx +++ b/src/Toast.tsx @@ -6,12 +6,12 @@ import type { DynamicRefForwardingComponent, TransitionComponent, } from '@restart/ui/types'; -import ToastFade from './ToastFade'; -import ToastHeader from './ToastHeader'; -import ToastBody from './ToastBody'; -import { useBootstrapPrefix } from './ThemeProvider'; -import ToastContext from './ToastContext'; -import type { TransitionCallbacks, Variant } from './types'; +import ToastFade from './ToastFade.js'; +import ToastHeader from './ToastHeader.js'; +import ToastBody from './ToastBody.js'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import ToastContext from './ToastContext.js'; +import type { TransitionCallbacks, Variant } from './types.js'; export interface ToastProps extends TransitionCallbacks, diff --git a/src/ToastBody.tsx b/src/ToastBody.tsx index 71e9b51e3a..da0829437a 100644 --- a/src/ToastBody.tsx +++ b/src/ToastBody.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import clsx from 'clsx'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export interface ToastBodyProps extends React.HTMLAttributes { /** diff --git a/src/ToastContainer.tsx b/src/ToastContainer.tsx index 8403545bcd..17ec42a174 100644 --- a/src/ToastContainer.tsx +++ b/src/ToastContainer.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; export type ToastPosition = | 'top-start' diff --git a/src/ToastFade.tsx b/src/ToastFade.tsx index 2a366e8b5e..ef26aedff4 100644 --- a/src/ToastFade.tsx +++ b/src/ToastFade.tsx @@ -1,13 +1,10 @@ import * as React from 'react'; -import Transition, { - ENTERING, - EXITING, -} from 'react-transition-group/Transition'; -import Fade, { type FadeProps } from './Fade'; +import { Transition } from 'react-transition-group'; +import Fade, { type FadeProps } from './Fade.js'; const fadeStyles = { - [ENTERING]: 'showing', - [EXITING]: 'showing show', + entering: 'showing', + exiting: 'showing show', }; const ToastFade = React.forwardRef, FadeProps>((props, ref) => ( diff --git a/src/ToastHeader.tsx b/src/ToastHeader.tsx index b074a83cd8..253409f518 100644 --- a/src/ToastHeader.tsx +++ b/src/ToastHeader.tsx @@ -2,9 +2,9 @@ import clsx from 'clsx'; import * as React from 'react'; import { useContext } from 'react'; import useEventCallback from '@restart/hooks/useEventCallback'; -import { useBootstrapPrefix } from './ThemeProvider'; -import CloseButton, { type CloseButtonVariant } from './CloseButton'; -import ToastContext from './ToastContext'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import CloseButton, { type CloseButtonVariant } from './CloseButton.js'; +import ToastContext from './ToastContext.js'; export interface ToastHeaderProps extends React.HTMLAttributes { /** diff --git a/src/ToggleButton.tsx b/src/ToggleButton.tsx index ec61a70381..d9c76110ae 100644 --- a/src/ToggleButton.tsx +++ b/src/ToggleButton.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import * as React from 'react'; -import { useBootstrapPrefix } from './ThemeProvider'; -import Button, { type ButtonProps } from './Button'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import Button, { type ButtonProps } from './Button.js'; export type ToggleButtonType = 'checkbox' | 'radio'; diff --git a/src/ToggleButtonGroup.tsx b/src/ToggleButtonGroup.tsx index 182acbb3e0..329010183f 100644 --- a/src/ToggleButtonGroup.tsx +++ b/src/ToggleButtonGroup.tsx @@ -2,10 +2,10 @@ import * as React from 'react'; import invariant from 'invariant'; import { useUncontrolled } from 'uncontrollable'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import chainFunction from './createChainedFunction'; -import { map } from './ElementChildren'; -import ButtonGroup, { type ButtonGroupProps } from './ButtonGroup'; -import ToggleButton from './ToggleButton'; +import chainFunction from './createChainedFunction.js'; +import { map } from './ElementChildren.js'; +import ButtonGroup, { type ButtonGroupProps } from './ButtonGroup.js'; +import ToggleButton from './ToggleButton.js'; type BaseToggleButtonProps = Omit< ButtonGroupProps, diff --git a/src/Tooltip.tsx b/src/Tooltip.tsx index 1418cc3fe4..207fda7dcd 100644 --- a/src/Tooltip.tsx +++ b/src/Tooltip.tsx @@ -1,10 +1,10 @@ import clsx from 'clsx'; import * as React from 'react'; import { OverlayArrowProps } from '@restart/ui/Overlay'; -import { useBootstrapPrefix, useIsRTL } from './ThemeProvider'; -import type { Placement, PopperRef } from './types'; -import { getOverlayDirection } from './helpers'; -import getInitialPopperStyles from './getInitialPopperStyles'; +import { useBootstrapPrefix, useIsRTL } from './ThemeProvider.js'; +import type { Placement, PopperRef } from './types.js'; +import { getOverlayDirection } from './helpers.js'; +import getInitialPopperStyles from './getInitialPopperStyles.js'; export interface TooltipProps extends React.HTMLAttributes { /** diff --git a/src/TransitionWrapper.tsx b/src/TransitionWrapper.tsx index 67815e3770..9137af563d 100644 --- a/src/TransitionWrapper.tsx +++ b/src/TransitionWrapper.tsx @@ -1,11 +1,8 @@ import React, { useCallback, useRef } from 'react'; -import Transition, { - type TransitionProps, - type TransitionStatus, -} from 'react-transition-group/Transition'; +import { Transition, type TransitionStatus } from 'react-transition-group'; import useMergedRefs from '@restart/hooks/useMergedRefs'; -export type TransitionWrapperProps = TransitionProps & { +export type TransitionWrapperProps = React.ComponentProps & { childRef?: React.Ref; children: | React.ReactElement diff --git a/src/createUtilityClasses.ts b/src/createUtilityClasses.ts index 2af73578cd..675ac45a98 100644 --- a/src/createUtilityClasses.ts +++ b/src/createUtilityClasses.ts @@ -1,4 +1,7 @@ -import { DEFAULT_BREAKPOINTS, DEFAULT_MIN_BREAKPOINT } from './ThemeProvider'; +import { + DEFAULT_BREAKPOINTS, + DEFAULT_MIN_BREAKPOINT, +} from './ThemeProvider.js'; export type ResponsiveUtilityValue = | T diff --git a/src/createWithBsPrefix.tsx b/src/createWithBsPrefix.tsx index 1e65bdd36e..92d1acdd27 100644 --- a/src/createWithBsPrefix.tsx +++ b/src/createWithBsPrefix.tsx @@ -2,7 +2,7 @@ import clsx from 'clsx'; import camelize from 'dom-helpers/camelize'; import * as React from 'react'; import type { DynamicRefForwardingComponent } from '@restart/ui/types'; -import { useBootstrapPrefix } from './ThemeProvider'; +import { useBootstrapPrefix } from './ThemeProvider.js'; const pascalCase = (str) => str[0].toUpperCase() + camelize(str).slice(1); diff --git a/src/getTabTransitionComponent.ts b/src/getTabTransitionComponent.ts index 1b53e75e25..a0ce0e98ff 100644 --- a/src/getTabTransitionComponent.ts +++ b/src/getTabTransitionComponent.ts @@ -1,7 +1,7 @@ import { TransitionComponent } from '@restart/ui/types'; import NoopTransition from '@restart/ui/NoopTransition'; -import Fade from './Fade'; -import type { TransitionType } from './helpers'; +import Fade from './Fade.js'; +import type { TransitionType } from './helpers.js'; export default function getTabTransitionComponent( transition?: TransitionType, diff --git a/src/index.tsx b/src/index.tsx index d7767627fe..7f45e0763a 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -1,330 +1,330 @@ -export { default as Accordion } from './Accordion'; -export type { AccordionProps } from './Accordion'; +export { default as Accordion } from './Accordion.js'; +export type { AccordionProps } from './Accordion.js'; -export { default as AccordionContext } from './AccordionContext'; -export { default as AccordionCollapse } from './AccordionCollapse'; -export type { AccordionCollapseProps } from './AccordionCollapse'; +export { default as AccordionContext } from './AccordionContext.js'; +export { default as AccordionCollapse } from './AccordionCollapse.js'; +export type { AccordionCollapseProps } from './AccordionCollapse.js'; -export { default as AccordionButton } from './AccordionButton'; -export type { AccordionButtonProps } from './AccordionButton'; +export { default as AccordionButton } from './AccordionButton.js'; +export type { AccordionButtonProps } from './AccordionButton.js'; -export { default as AccordionBody } from './AccordionBody'; -export type { AccordionBodyProps } from './AccordionBody'; +export { default as AccordionBody } from './AccordionBody.js'; +export type { AccordionBodyProps } from './AccordionBody.js'; -export { default as AccordionHeader } from './AccordionHeader'; -export type { AccordionHeaderProps } from './AccordionHeader'; +export { default as AccordionHeader } from './AccordionHeader.js'; +export type { AccordionHeaderProps } from './AccordionHeader.js'; -export { default as AccordionItem } from './AccordionItem'; -export type { AccordionItemProps } from './AccordionItem'; +export { default as AccordionItem } from './AccordionItem.js'; +export type { AccordionItemProps } from './AccordionItem.js'; -export { default as Alert } from './Alert'; -export type { AlertProps } from './Alert'; +export { default as Alert } from './Alert.js'; +export type { AlertProps } from './Alert.js'; -export { default as AlertHeading } from './AlertHeading'; -export type { AlertHeadingProps } from './AlertHeading'; +export { default as AlertHeading } from './AlertHeading.js'; +export type { AlertHeadingProps } from './AlertHeading.js'; -export { default as AlertLink } from './AlertLink'; -export type { AlertLinkProps } from './AlertLink'; +export { default as AlertLink } from './AlertLink.js'; +export type { AlertLinkProps } from './AlertLink.js'; -export { default as Anchor } from './Anchor'; -export type { AnchorProps } from './Anchor'; +export { default as Anchor } from './Anchor.js'; +export type { AnchorProps } from './Anchor.js'; -export { default as Badge } from './Badge'; -export type { BadgeProps } from './Badge'; +export { default as Badge } from './Badge.js'; +export type { BadgeProps } from './Badge.js'; -export { default as Breadcrumb } from './Breadcrumb'; -export type { BreadcrumbProps } from './Breadcrumb'; +export { default as Breadcrumb } from './Breadcrumb.js'; +export type { BreadcrumbProps } from './Breadcrumb.js'; -export { default as BreadcrumbItem } from './BreadcrumbItem'; -export type { BreadcrumbItemProps } from './BreadcrumbItem'; +export { default as BreadcrumbItem } from './BreadcrumbItem.js'; +export type { BreadcrumbItemProps } from './BreadcrumbItem.js'; -export { default as Button } from './Button'; -export type { ButtonProps } from './Button'; +export { default as Button } from './Button.js'; +export type { ButtonProps } from './Button.js'; -export { default as ButtonGroup } from './ButtonGroup'; -export type { ButtonGroupProps } from './ButtonGroup'; +export { default as ButtonGroup } from './ButtonGroup.js'; +export type { ButtonGroupProps } from './ButtonGroup.js'; -export { default as ButtonToolbar } from './ButtonToolbar'; -export type { ButtonToolbarProps } from './ButtonToolbar'; +export { default as ButtonToolbar } from './ButtonToolbar.js'; +export type { ButtonToolbarProps } from './ButtonToolbar.js'; -export { default as Card } from './Card'; -export type { CardProps } from './Card'; +export { default as Card } from './Card.js'; +export type { CardProps } from './Card.js'; -export { default as CardBody } from './CardBody'; -export type { CardBodyProps } from './CardBody'; +export { default as CardBody } from './CardBody.js'; +export type { CardBodyProps } from './CardBody.js'; -export { default as CardFooter } from './CardFooter'; -export type { CardFooterProps } from './CardFooter'; +export { default as CardFooter } from './CardFooter.js'; +export type { CardFooterProps } from './CardFooter.js'; -export { default as CardGroup } from './CardGroup'; -export type { CardGroupProps } from './CardGroup'; +export { default as CardGroup } from './CardGroup.js'; +export type { CardGroupProps } from './CardGroup.js'; -export { default as CardHeader } from './CardHeader'; -export type { CardHeaderProps } from './CardHeader'; +export { default as CardHeader } from './CardHeader.js'; +export type { CardHeaderProps } from './CardHeader.js'; -export { default as CardImg } from './CardImg'; -export type { CardImgProps } from './CardImg'; +export { default as CardImg } from './CardImg.js'; +export type { CardImgProps } from './CardImg.js'; -export { default as CardImgOverlay } from './CardImgOverlay'; -export type { CardImgOverlayProps } from './CardImgOverlay'; +export { default as CardImgOverlay } from './CardImgOverlay.js'; +export type { CardImgOverlayProps } from './CardImgOverlay.js'; -export { default as CardLink } from './CardLink'; -export type { CardLinkProps } from './CardLink'; +export { default as CardLink } from './CardLink.js'; +export type { CardLinkProps } from './CardLink.js'; -export { default as CardSubtitle } from './CardSubtitle'; -export type { CardSubtitleProps } from './CardSubtitle'; +export { default as CardSubtitle } from './CardSubtitle.js'; +export type { CardSubtitleProps } from './CardSubtitle.js'; -export { default as CardText } from './CardText'; -export type { CardTextProps } from './CardText'; +export { default as CardText } from './CardText.js'; +export type { CardTextProps } from './CardText.js'; -export { default as CardTitle } from './CardTitle'; -export type { CardTitleProps } from './CardTitle'; +export { default as CardTitle } from './CardTitle.js'; +export type { CardTitleProps } from './CardTitle.js'; -export { default as Carousel } from './Carousel'; -export type { CarouselProps } from './Carousel'; +export { default as Carousel } from './Carousel.js'; +export type { CarouselProps } from './Carousel.js'; -export { default as CarouselCaption } from './CarouselCaption'; -export type { CarouselCaptionProps } from './CarouselCaption'; +export { default as CarouselCaption } from './CarouselCaption.js'; +export type { CarouselCaptionProps } from './CarouselCaption.js'; -export { default as CarouselItem } from './CarouselItem'; -export type { CarouselItemProps } from './CarouselItem'; +export { default as CarouselItem } from './CarouselItem.js'; +export type { CarouselItemProps } from './CarouselItem.js'; -export { default as CloseButton } from './CloseButton'; -export type { CloseButtonProps } from './CloseButton'; +export { default as CloseButton } from './CloseButton.js'; +export type { CloseButtonProps } from './CloseButton.js'; -export { default as Col } from './Col'; -export type { ColProps } from './Col'; +export { default as Col } from './Col.js'; +export type { ColProps } from './Col.js'; -export { default as Collapse } from './Collapse'; -export type { CollapseProps } from './Collapse'; +export { default as Collapse } from './Collapse.js'; +export type { CollapseProps } from './Collapse.js'; -export { default as Container } from './Container'; -export type { ContainerProps } from './Container'; +export { default as Container } from './Container.js'; +export type { ContainerProps } from './Container.js'; -export { default as Dropdown } from './Dropdown'; -export type { DropdownProps } from './Dropdown'; +export { default as Dropdown } from './Dropdown.js'; +export type { DropdownProps } from './Dropdown.js'; -export { default as DropdownButton } from './DropdownButton'; -export type { DropdownButtonProps } from './DropdownButton'; +export { default as DropdownButton } from './DropdownButton.js'; +export type { DropdownButtonProps } from './DropdownButton.js'; -export { default as DropdownDivider } from './DropdownDivider'; -export type { DropdownDividerProps } from './DropdownDivider'; +export { default as DropdownDivider } from './DropdownDivider.js'; +export type { DropdownDividerProps } from './DropdownDivider.js'; -export { default as DropdownHeader } from './DropdownHeader'; -export type { DropdownHeaderProps } from './DropdownHeader'; +export { default as DropdownHeader } from './DropdownHeader.js'; +export type { DropdownHeaderProps } from './DropdownHeader.js'; -export { default as DropdownItem } from './DropdownItem'; -export type { DropdownItemProps } from './DropdownItem'; +export { default as DropdownItem } from './DropdownItem.js'; +export type { DropdownItemProps } from './DropdownItem.js'; -export { default as DropdownItemText } from './DropdownItemText'; -export type { DropdownItemTextProps } from './DropdownItemText'; +export { default as DropdownItemText } from './DropdownItemText.js'; +export type { DropdownItemTextProps } from './DropdownItemText.js'; -export { default as DropdownMenu } from './DropdownMenu'; -export type { DropdownMenuProps } from './DropdownMenu'; +export { default as DropdownMenu } from './DropdownMenu.js'; +export type { DropdownMenuProps } from './DropdownMenu.js'; -export { default as DropdownToggle } from './DropdownToggle'; -export type { DropdownToggleProps } from './DropdownToggle'; +export { default as DropdownToggle } from './DropdownToggle.js'; +export type { DropdownToggleProps } from './DropdownToggle.js'; -export { default as Fade } from './Fade'; -export type { FadeProps } from './Fade'; +export { default as Fade } from './Fade.js'; +export type { FadeProps } from './Fade.js'; -export { default as Figure } from './Figure'; -export type { FigureProps } from './Figure'; +export { default as Figure } from './Figure.js'; +export type { FigureProps } from './Figure.js'; -export { default as FigureCaption } from './FigureCaption'; -export type { FigureCaptionProps } from './FigureCaption'; +export { default as FigureCaption } from './FigureCaption.js'; +export type { FigureCaptionProps } from './FigureCaption.js'; -export { default as FigureImage } from './FigureImage'; +export { default as FigureImage } from './FigureImage.js'; -export { default as Form } from './Form'; -export type { FormProps } from './Form'; +export { default as Form } from './Form.js'; +export type { FormProps } from './Form.js'; -export { default as FormControl } from './FormControl'; -export type { FormControlProps } from './FormControl'; +export { default as FormControl } from './FormControl.js'; +export type { FormControlProps } from './FormControl.js'; -export { default as FormCheck } from './FormCheck'; -export type { FormCheckProps } from './FormCheck'; +export { default as FormCheck } from './FormCheck.js'; +export type { FormCheckProps } from './FormCheck.js'; -export { default as FormFloating } from './FormFloating'; +export { default as FormFloating } from './FormFloating.js'; -export { default as FloatingLabel } from './FloatingLabel'; -export type { FloatingLabelProps } from './FloatingLabel'; +export { default as FloatingLabel } from './FloatingLabel.js'; +export type { FloatingLabelProps } from './FloatingLabel.js'; -export { default as FormGroup } from './FormGroup'; -export type { FormGroupProps } from './FormGroup'; +export { default as FormGroup } from './FormGroup.js'; +export type { FormGroupProps } from './FormGroup.js'; -export { default as FormLabel } from './FormLabel'; -export type { FormLabelProps } from './FormLabel'; +export { default as FormLabel } from './FormLabel.js'; +export type { FormLabelProps } from './FormLabel.js'; -export { default as FormText } from './FormText'; -export type { FormTextProps } from './FormText'; +export { default as FormText } from './FormText.js'; +export type { FormTextProps } from './FormText.js'; -export { default as FormSelect } from './FormSelect'; -export type { FormSelectProps } from './FormSelect'; +export { default as FormSelect } from './FormSelect.js'; +export type { FormSelectProps } from './FormSelect.js'; -export { default as Image } from './Image'; -export type { ImageProps } from './Image'; +export { default as Image } from './Image.js'; +export type { ImageProps } from './Image.js'; -export { default as InputGroup } from './InputGroup'; -export type { InputGroupProps } from './InputGroup'; +export { default as InputGroup } from './InputGroup.js'; +export type { InputGroupProps } from './InputGroup.js'; -export { default as ListGroup } from './ListGroup'; -export type { ListGroupProps } from './ListGroup'; +export { default as ListGroup } from './ListGroup.js'; +export type { ListGroupProps } from './ListGroup.js'; -export { default as ListGroupItem } from './ListGroupItem'; -export type { ListGroupItemProps } from './ListGroupItem'; +export { default as ListGroupItem } from './ListGroupItem.js'; +export type { ListGroupItemProps } from './ListGroupItem.js'; -export { default as Modal } from './Modal'; -export type { ModalProps } from './Modal'; +export { default as Modal } from './Modal.js'; +export type { ModalProps } from './Modal.js'; -export { default as ModalBody } from './ModalBody'; +export { default as ModalBody } from './ModalBody.js'; -export { default as ModalDialog } from './ModalDialog'; -export type { ModalDialogProps } from './ModalDialog'; +export { default as ModalDialog } from './ModalDialog.js'; +export type { ModalDialogProps } from './ModalDialog.js'; -export { default as ModalFooter } from './ModalFooter'; -export type { ModalFooterProps } from './ModalFooter'; +export { default as ModalFooter } from './ModalFooter.js'; +export type { ModalFooterProps } from './ModalFooter.js'; -export { default as ModalHeader } from './ModalHeader'; -export type { ModalHeaderProps } from './ModalHeader'; +export { default as ModalHeader } from './ModalHeader.js'; +export type { ModalHeaderProps } from './ModalHeader.js'; -export { default as ModalTitle } from './ModalTitle'; -export type { ModalTitleProps } from './ModalTitle'; +export { default as ModalTitle } from './ModalTitle.js'; +export type { ModalTitleProps } from './ModalTitle.js'; -export { default as Nav } from './Nav'; -export type { NavProps } from './Nav'; +export { default as Nav } from './Nav.js'; +export type { NavProps } from './Nav.js'; -export { default as Navbar } from './Navbar'; -export type { NavbarProps } from './Navbar'; +export { default as Navbar } from './Navbar.js'; +export type { NavbarProps } from './Navbar.js'; -export { default as NavbarBrand } from './NavbarBrand'; -export type { NavbarBrandProps } from './NavbarBrand'; +export { default as NavbarBrand } from './NavbarBrand.js'; +export type { NavbarBrandProps } from './NavbarBrand.js'; -export { default as NavbarCollapse } from './NavbarCollapse'; -export type { NavbarCollapseProps } from './NavbarCollapse'; +export { default as NavbarCollapse } from './NavbarCollapse.js'; +export type { NavbarCollapseProps } from './NavbarCollapse.js'; -export { default as NavbarOffcanvas } from './NavbarOffcanvas'; -export type { NavbarOffcanvasProps } from './NavbarOffcanvas'; +export { default as NavbarOffcanvas } from './NavbarOffcanvas.js'; +export type { NavbarOffcanvasProps } from './NavbarOffcanvas.js'; -export { default as NavbarText } from './NavbarText'; -export type { NavbarTextProps } from './NavbarText'; +export { default as NavbarText } from './NavbarText.js'; +export type { NavbarTextProps } from './NavbarText.js'; -export { default as NavbarToggle } from './NavbarToggle'; -export type { NavbarToggleProps } from './NavbarToggle'; +export { default as NavbarToggle } from './NavbarToggle.js'; +export type { NavbarToggleProps } from './NavbarToggle.js'; -export { default as NavDropdown } from './NavDropdown'; -export type { NavDropdownProps } from './NavDropdown'; +export { default as NavDropdown } from './NavDropdown.js'; +export type { NavDropdownProps } from './NavDropdown.js'; -export { default as NavItem } from './NavItem'; -export type { NavItemProps } from './NavItem'; +export { default as NavItem } from './NavItem.js'; +export type { NavItemProps } from './NavItem.js'; -export { default as NavLink } from './NavLink'; -export type { NavLinkProps } from './NavLink'; +export { default as NavLink } from './NavLink.js'; +export type { NavLinkProps } from './NavLink.js'; -export { default as Offcanvas } from './Offcanvas'; -export type { OffcanvasProps } from './Offcanvas'; +export { default as Offcanvas } from './Offcanvas.js'; +export type { OffcanvasProps } from './Offcanvas.js'; -export { default as OffcanvasBody } from './OffcanvasBody'; -export type { OffcanvasBodyProps } from './OffcanvasBody'; +export { default as OffcanvasBody } from './OffcanvasBody.js'; +export type { OffcanvasBodyProps } from './OffcanvasBody.js'; -export { default as OffcanvasHeader } from './OffcanvasHeader'; -export type { OffcanvasHeaderProps } from './OffcanvasHeader'; +export { default as OffcanvasHeader } from './OffcanvasHeader.js'; +export type { OffcanvasHeaderProps } from './OffcanvasHeader.js'; -export { default as OffcanvasTitle } from './OffcanvasTitle'; -export type { OffcanvasTitleProps } from './OffcanvasTitle'; +export { default as OffcanvasTitle } from './OffcanvasTitle.js'; +export type { OffcanvasTitleProps } from './OffcanvasTitle.js'; -export { default as OffcanvasToggling } from './OffcanvasToggling'; -export type { OffcanvasTogglingProps } from './OffcanvasToggling'; +export { default as OffcanvasToggling } from './OffcanvasToggling.js'; +export type { OffcanvasTogglingProps } from './OffcanvasToggling.js'; -export { default as Overlay } from './Overlay'; -export type { OverlayProps } from './Overlay'; +export { default as Overlay } from './Overlay.js'; +export type { OverlayProps } from './Overlay.js'; -export { default as OverlayTrigger } from './OverlayTrigger'; -export type { OverlayTriggerProps } from './OverlayTrigger'; +export { default as OverlayTrigger } from './OverlayTrigger.js'; +export type { OverlayTriggerProps } from './OverlayTrigger.js'; -export { default as PageItem } from './PageItem'; -export type { PageItemProps } from './PageItem'; +export { default as PageItem } from './PageItem.js'; +export type { PageItemProps } from './PageItem.js'; -export { default as Pagination } from './Pagination'; -export type { PaginationProps } from './Pagination'; +export { default as Pagination } from './Pagination.js'; +export type { PaginationProps } from './Pagination.js'; -export { default as Placeholder } from './Placeholder'; -export type { PlaceholderProps } from './Placeholder'; +export { default as Placeholder } from './Placeholder.js'; +export type { PlaceholderProps } from './Placeholder.js'; -export { default as PlaceholderButton } from './PlaceholderButton'; -export type { PlaceholderButtonProps } from './PlaceholderButton'; +export { default as PlaceholderButton } from './PlaceholderButton.js'; +export type { PlaceholderButtonProps } from './PlaceholderButton.js'; -export { default as Popover } from './Popover'; -export type { PopoverProps } from './Popover'; +export { default as Popover } from './Popover.js'; +export type { PopoverProps } from './Popover.js'; -export { default as PopoverBody } from './PopoverBody'; -export type { PopoverBodyProps } from './PopoverBody'; +export { default as PopoverBody } from './PopoverBody.js'; +export type { PopoverBodyProps } from './PopoverBody.js'; -export { default as PopoverHeader } from './PopoverHeader'; -export type { PopoverHeaderProps } from './PopoverHeader'; +export { default as PopoverHeader } from './PopoverHeader.js'; +export type { PopoverHeaderProps } from './PopoverHeader.js'; -export { default as ProgressBar } from './ProgressBar'; -export type { ProgressBarProps } from './ProgressBar'; +export { default as ProgressBar } from './ProgressBar.js'; +export type { ProgressBarProps } from './ProgressBar.js'; -export { default as Ratio } from './Ratio'; -export type { RatioProps } from './Ratio'; +export { default as Ratio } from './Ratio.js'; +export type { RatioProps } from './Ratio.js'; -export { default as Row } from './Row'; -export type { RowProps } from './Row'; +export { default as Row } from './Row.js'; +export type { RowProps } from './Row.js'; -export { default as Spinner } from './Spinner'; -export type { SpinnerProps } from './Spinner'; +export { default as Spinner } from './Spinner.js'; +export type { SpinnerProps } from './Spinner.js'; -export { default as SplitButton } from './SplitButton'; -export type { SplitButtonProps } from './SplitButton'; +export { default as SplitButton } from './SplitButton.js'; +export type { SplitButtonProps } from './SplitButton.js'; -export { default as Stack } from './Stack'; -export type { StackProps } from './Stack'; +export { default as Stack } from './Stack.js'; +export type { StackProps } from './Stack.js'; -export { default as Tab } from './Tab'; -export type { TabProps } from './Tab'; +export { default as Tab } from './Tab.js'; +export type { TabProps } from './Tab.js'; -export { default as TabContainer } from './TabContainer'; -export type { TabContainerProps } from './TabContainer'; +export { default as TabContainer } from './TabContainer.js'; +export type { TabContainerProps } from './TabContainer.js'; -export { default as TabContent } from './TabContent'; -export type { TabContentProps } from './TabContent'; +export { default as TabContent } from './TabContent.js'; +export type { TabContentProps } from './TabContent.js'; -export { default as Table } from './Table'; -export type { TableProps } from './Table'; +export { default as Table } from './Table.js'; +export type { TableProps } from './Table.js'; -export { default as TabPane } from './TabPane'; -export type { TabPaneProps } from './TabPane'; +export { default as TabPane } from './TabPane.js'; +export type { TabPaneProps } from './TabPane.js'; -export { default as Tabs } from './Tabs'; -export type { TabsProps } from './Tabs'; +export { default as Tabs } from './Tabs.js'; +export type { TabsProps } from './Tabs.js'; -export { default as ThemeProvider } from './ThemeProvider'; -export type { ThemeProviderProps } from './ThemeProvider'; +export { default as ThemeProvider } from './ThemeProvider.js'; +export type { ThemeProviderProps } from './ThemeProvider.js'; -export { default as Toast } from './Toast'; -export type { ToastProps } from './Toast'; +export { default as Toast } from './Toast.js'; +export type { ToastProps } from './Toast.js'; -export { default as ToastBody } from './ToastBody'; -export type { ToastBodyProps } from './ToastBody'; +export { default as ToastBody } from './ToastBody.js'; +export type { ToastBodyProps } from './ToastBody.js'; -export { default as ToastContainer } from './ToastContainer'; -export type { ToastContainerProps } from './ToastContainer'; +export { default as ToastContainer } from './ToastContainer.js'; +export type { ToastContainerProps } from './ToastContainer.js'; -export { default as ToastHeader } from './ToastHeader'; -export type { ToastHeaderProps } from './ToastHeader'; +export { default as ToastHeader } from './ToastHeader.js'; +export type { ToastHeaderProps } from './ToastHeader.js'; -export { default as ToggleButton } from './ToggleButton'; -export type { ToggleButtonProps } from './ToggleButton'; +export { default as ToggleButton } from './ToggleButton.js'; +export type { ToggleButtonProps } from './ToggleButton.js'; -export { default as ToggleButtonGroup } from './ToggleButtonGroup'; +export { default as ToggleButtonGroup } from './ToggleButtonGroup.js'; export type { ToggleButtonCheckboxProps, ToggleButtonGroupProps, ToggleButtonRadioProps, -} from './ToggleButtonGroup'; +} from './ToggleButtonGroup.js'; -export { default as Tooltip } from './Tooltip'; -export type { TooltipProps } from './Tooltip'; +export { default as Tooltip } from './Tooltip.js'; +export type { TooltipProps } from './Tooltip.js'; -export { default as useAccordionButton } from './useAccordionButton'; +export { default as useAccordionButton } from './useAccordionButton.js'; diff --git a/src/types.tsx b/src/types.tsx index ae6274af48..780652f2ef 100644 --- a/src/types.tsx +++ b/src/types.tsx @@ -8,7 +8,7 @@ import type { import type { ToggleMetadata } from '@restart/ui/Dropdown'; import type ModalManager from '@restart/ui/ModalManager'; import type { EventKey, SelectCallback } from '@restart/ui/types'; -import type { DropDirection } from './DropdownContext'; +import type { DropDirection } from './DropdownContext.js'; export type DOMContainer = diff --git a/src/useAccordionButton.ts b/src/useAccordionButton.ts index 8e63ee7a7c..a050893a85 100644 --- a/src/useAccordionButton.ts +++ b/src/useAccordionButton.ts @@ -1,6 +1,8 @@ import * as React from 'react'; import { useContext } from 'react'; -import AccordionContext, { type AccordionEventKey } from './AccordionContext'; +import AccordionContext, { + type AccordionEventKey, +} from './AccordionContext.js'; type EventHandler = React.EventHandler; diff --git a/src/useCol.ts b/src/useCol.ts index 3892e9d85a..bdd628f7a8 100644 --- a/src/useCol.ts +++ b/src/useCol.ts @@ -3,8 +3,8 @@ import { useBootstrapPrefix, useBootstrapBreakpoints, useBootstrapMinBreakpoint, -} from './ThemeProvider'; -import type { ColProps, ColOrder, ColSize, NumberAttr } from './Col'; +} from './ThemeProvider.js'; +import type { ColProps, ColOrder, ColSize, NumberAttr } from './Col.js'; export interface UseColMetadata { as?: React.ElementType; diff --git a/src/useOverlayOffset.tsx b/src/useOverlayOffset.tsx index 931d6fad13..1e54ad6dbc 100644 --- a/src/useOverlayOffset.tsx +++ b/src/useOverlayOffset.tsx @@ -1,8 +1,8 @@ import { useMemo, useRef } from 'react'; import { Offset, Options } from '@restart/ui/usePopper'; -import { useBootstrapPrefix } from './ThemeProvider'; -import Popover from './Popover'; -import Tooltip from './Tooltip'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import Popover from './Popover.js'; +import Tooltip from './Tooltip.js'; // This is meant for internal use. // This applies a custom offset to the overlay if it's a popover or tooltip. diff --git a/src/usePlaceholder.ts b/src/usePlaceholder.ts index 36231c62a4..12d2c9e08c 100644 --- a/src/usePlaceholder.ts +++ b/src/usePlaceholder.ts @@ -1,8 +1,8 @@ import clsx from 'clsx'; -import { useBootstrapPrefix } from './ThemeProvider'; -import type { ColProps } from './Col'; -import useCol from './useCol'; -import type { Variant } from './types'; +import { useBootstrapPrefix } from './ThemeProvider.js'; +import type { ColProps } from './Col.js'; +import useCol from './useCol.js'; +import type { Variant } from './types.js'; export type PlaceholderAnimation = 'glow' | 'wave'; export type PlaceholderSize = 'xs' | 'sm' | 'lg'; diff --git a/test/tsconfig.json b/test/tsconfig.json index 8a30a39fc7..7a32696a01 100644 --- a/test/tsconfig.json +++ b/test/tsconfig.json @@ -3,6 +3,8 @@ "compilerOptions": { "jsx": "react-jsx", "lib": ["DOM", "ESNext"], + "moduleResolution": "bundler", + "module": "esnext", "rootDir": ".." }, "include": ["../src", ".", "../tests"] diff --git a/tsconfig.json b/tsconfig.json index bee48173a1..62e60afa2b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,8 +5,8 @@ "declaration": true, "lib": ["esnext", "dom"], "target": "esnext", - "module": "esnext", - "moduleResolution": "bundler", + "module": "NodeNext", + "moduleResolution": "NodeNext", "allowSyntheticDefaultImports": true, "esModuleInterop": true, "forceConsistentCasingInFileNames": true, diff --git a/www/plugins/webpack-plugin.ts b/www/plugins/webpack-plugin.ts index b89e9e8270..2608d40fe7 100644 --- a/www/plugins/webpack-plugin.ts +++ b/www/plugins/webpack-plugin.ts @@ -27,6 +27,9 @@ export default () => alias: { 'react-bootstrap': path.resolve(__dirname, '../../src'), }, + extensionAlias: { + '.js': ['.ts', '.tsx', '.js'], + }, }, plugins: [ new currentBundler.instance.DefinePlugin({ diff --git a/yarn.lock b/yarn.lock index 2fe2165ece..e6a937f05b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -959,6 +959,11 @@ dependencies: regenerator-runtime "^0.14.0" +"@babel/runtime@^7.27.1": + version "7.27.6" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.27.6.tgz#ec4070a04d76bae8ddbb10770ba55714a417b7c6" + integrity sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q== + "@babel/template@^7.25.9", "@babel/template@^7.26.9", "@babel/template@^7.27.0": version "7.27.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.27.0.tgz#b253e5406cc1df1c57dcd18f11760c2dbf40c0b4" @@ -1346,17 +1351,17 @@ dependencies: dequal "^2.0.3" -"@restart/ui@^2.0.0-beta.3": - version "2.0.0-beta.3" - resolved "https://registry.yarnpkg.com/@restart/ui/-/ui-2.0.0-beta.3.tgz#8bbd4de1cc8b9deb6bd9d0f64da49fb2f8c42ff5" - integrity sha512-wY3TBYjxmuwMgYwjfl5up3Iu0AGgiDKB6uLSXUpecjgDXEc6Ebjl5Sv2apsJiJGRC3NHfX82REJ/Mn3Qh8nZDA== +"@restart/ui@^2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@restart/ui/-/ui-2.0.0-beta.5.tgz#8119502c08f498bd27f6500bf9877b3ee164a2cd" + integrity sha512-AdOcsU8JaIz+EKvJSEfc4zRabJcmpjCjV9WZKKM3OuwopzcV/vUS3aqZX8vr+IbdKxtszUEhqzeqDE3JomNQ0Q== dependencies: "@babel/runtime" "^7.26.7" "@popperjs/core" "^2.11.8" "@restart/hooks" "^0.6.2" "@types/warning" "^3.0.3" dequal "^2.0.3" - dom-helpers "^5.2.0" + dom-helpers "^6.0.1" uncontrollable "^9.0.0" warning "^4.0.3" @@ -2815,7 +2820,7 @@ cross-spawn@^7.0.3, cross-spawn@^7.0.6: shebang-command "^2.0.0" which "^2.0.1" -csstype@^3.0.2: +csstype@^3.0.2, csstype@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== @@ -2982,7 +2987,7 @@ dom-accessibility-api@^0.5.9: resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz#5a7429e6066eb3664d911e33fb0e45de8eb08453" integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg== -dom-helpers@^5.0.1, dom-helpers@^5.2.0, dom-helpers@^5.2.1: +dom-helpers@^5.0.1: version "5.2.1" resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== @@ -2990,6 +2995,14 @@ dom-helpers@^5.0.1, dom-helpers@^5.2.0, dom-helpers@^5.2.1: "@babel/runtime" "^7.8.7" csstype "^3.0.2" +dom-helpers@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-6.0.1.tgz#f56400eb45770e3dd4fa014513739e6b670e6362" + integrity sha512-IKySryuFwseGkrCA/pIqlwUPOD50w1Lj/B2Yief3vBOP18k5y4t+hTqKh55gULDVeJMRitcozve+g/wVFf4sFQ== + dependencies: + "@babel/runtime" "^7.27.1" + csstype "^3.1.3" + dot-prop@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88"