paris 0.23.1 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/README.md +17 -17
- package/dist/helpers/OpenChangeEffect.d.ts +11 -0
- package/dist/helpers/OpenChangeEffect.js +16 -0
- package/dist/helpers/OpenChangeEffect.js.map +1 -0
- package/dist/helpers/renderEnhancer.d.ts +7 -0
- package/dist/helpers/renderEnhancer.js +20 -0
- package/dist/helpers/renderEnhancer.js.map +1 -0
- package/dist/helpers/useControllableState.d.ts +7 -0
- package/dist/helpers/useControllableState.js +49 -0
- package/dist/helpers/useControllableState.js.map +1 -0
- package/dist/helpers/useIsMounted.d.ts +1 -0
- package/dist/helpers/useResizeObserver.d.ts +12 -0
- package/dist/stories/accordion/Accordion.d.ts +47 -0
- package/dist/stories/accordion/Accordion.js +82 -0
- package/dist/stories/accordion/Accordion.js.map +1 -0
- package/dist/stories/accordion/Accordion.module.css +130 -0
- package/dist/stories/accordion/Accordion.module.scss.js +26 -0
- package/dist/stories/accordion/Accordion.module.scss.js.map +1 -0
- package/dist/stories/accordion/index.js +2 -0
- package/dist/stories/accordion/index.js.map +1 -0
- package/dist/stories/accordionselect/AccordionSelect.d.ts +102 -0
- package/dist/stories/accordionselect/AccordionSelect.js +137 -0
- package/dist/stories/accordionselect/AccordionSelect.js.map +1 -0
- package/dist/stories/accordionselect/AccordionSelect.module.css +106 -0
- package/dist/stories/accordionselect/AccordionSelect.module.scss.js +27 -0
- package/dist/stories/accordionselect/AccordionSelect.module.scss.js.map +1 -0
- package/dist/stories/accordionselect/index.js +2 -0
- package/dist/stories/accordionselect/index.js.map +1 -0
- package/dist/stories/avatar/Avatar.d.ts +22 -0
- package/dist/stories/avatar/Avatar.js +37 -0
- package/dist/stories/avatar/Avatar.js.map +1 -0
- package/dist/stories/avatar/Avatar.module.css +7 -0
- package/dist/stories/avatar/Avatar.module.scss.js +7 -0
- package/dist/stories/avatar/Avatar.module.scss.js.map +1 -0
- package/dist/stories/avatar/index.js +2 -0
- package/dist/stories/avatar/index.js.map +1 -0
- package/dist/stories/button/Button.d.ts +120 -0
- package/dist/stories/button/Button.js +123 -0
- package/dist/stories/button/Button.js.map +1 -0
- package/dist/stories/button/Button.module.css +137 -0
- package/dist/stories/button/Button.module.scss.js +35 -0
- package/dist/stories/button/Button.module.scss.js.map +1 -0
- package/dist/stories/button/index.js +2 -0
- package/dist/stories/button/index.js.map +1 -0
- package/dist/stories/callout/Callout.d.ts +22 -0
- package/dist/stories/callout/Callout.js +21 -0
- package/dist/stories/callout/Callout.js.map +1 -0
- package/dist/stories/callout/Callout.module.css +35 -0
- package/dist/stories/callout/Callout.module.scss.js +15 -0
- package/dist/stories/callout/Callout.module.scss.js.map +1 -0
- package/dist/stories/callout/index.js +2 -0
- package/dist/stories/callout/index.js.map +1 -0
- package/dist/stories/card/Card.d.ts +30 -0
- package/dist/stories/card/Card.js +22 -0
- package/dist/stories/card/Card.js.map +1 -0
- package/dist/stories/card/Card.module.css +39 -0
- package/dist/stories/card/Card.module.scss.js +17 -0
- package/dist/stories/card/Card.module.scss.js.map +1 -0
- package/dist/stories/card/index.js +2 -0
- package/dist/stories/card/index.js.map +1 -0
- package/dist/stories/cardbutton/CardButton.d.ts +50 -0
- package/dist/stories/cardbutton/CardButton.js +53 -0
- package/dist/stories/cardbutton/CardButton.js.map +1 -0
- package/dist/stories/cardbutton/CardButton.module.css +77 -0
- package/dist/stories/cardbutton/CardButton.module.scss.js +19 -0
- package/dist/stories/cardbutton/CardButton.module.scss.js.map +1 -0
- package/dist/stories/cardbutton/index.js +2 -0
- package/dist/stories/cardbutton/index.js.map +1 -0
- package/dist/stories/checkbox/Checkbox.d.ts +31 -0
- package/dist/stories/checkbox/Checkbox.js +99 -0
- package/dist/stories/checkbox/Checkbox.js.map +1 -0
- package/dist/stories/checkbox/Checkbox.module.css +155 -0
- package/dist/stories/checkbox/Checkbox.module.scss.js +32 -0
- package/dist/stories/checkbox/Checkbox.module.scss.js.map +1 -0
- package/dist/stories/checkbox/index.js +2 -0
- package/dist/stories/checkbox/index.js.map +1 -0
- package/dist/stories/codeinput/CodeInput.d.ts +47 -0
- package/dist/stories/codeinput/CodeInput.js +105 -0
- package/dist/stories/codeinput/CodeInput.js.map +1 -0
- package/dist/stories/codeinput/CodeInput.module.css +63 -0
- package/dist/stories/codeinput/CodeInput.module.scss.js +13 -0
- package/dist/stories/codeinput/CodeInput.module.scss.js.map +1 -0
- package/dist/stories/codeinput/index.js +2 -0
- package/dist/stories/codeinput/index.js.map +1 -0
- package/dist/stories/combobox/Combobox.d.ts +125 -0
- package/dist/stories/combobox/Combobox.js +257 -0
- package/dist/stories/combobox/Combobox.js.map +1 -0
- package/dist/stories/combobox/index.js +2 -0
- package/dist/stories/combobox/index.js.map +1 -0
- package/dist/stories/dialog/Dialog.d.ts +103 -0
- package/dist/stories/dialog/Dialog.js +187 -0
- package/dist/stories/dialog/Dialog.js.map +1 -0
- package/dist/stories/dialog/Dialog.module.css +185 -0
- package/dist/stories/dialog/Dialog.module.scss.js +48 -0
- package/dist/stories/dialog/Dialog.module.scss.js.map +1 -0
- package/dist/stories/dialog/index.js +2 -0
- package/dist/stories/dialog/index.js.map +1 -0
- package/dist/stories/drawer/Drawer.d.ts +143 -0
- package/dist/stories/drawer/Drawer.js +357 -0
- package/dist/stories/drawer/Drawer.js.map +1 -0
- package/dist/stories/drawer/Drawer.module.css +406 -0
- package/dist/stories/drawer/Drawer.module.scss.js +96 -0
- package/dist/stories/drawer/Drawer.module.scss.js.map +1 -0
- package/dist/stories/drawer/DrawerActions.d.ts +5 -0
- package/dist/stories/drawer/DrawerActions.js +23 -0
- package/dist/stories/drawer/DrawerActions.js.map +1 -0
- package/dist/stories/drawer/DrawerBottomPanel.d.ts +9 -0
- package/dist/stories/drawer/DrawerBottomPanel.js +48 -0
- package/dist/stories/drawer/DrawerBottomPanel.js.map +1 -0
- package/dist/stories/drawer/DrawerContext.d.ts +11 -0
- package/dist/stories/drawer/DrawerContext.js +23 -0
- package/dist/stories/drawer/DrawerContext.js.map +1 -0
- package/dist/stories/drawer/DrawerPage.d.ts +12 -0
- package/dist/stories/drawer/DrawerPage.js +22 -0
- package/dist/stories/drawer/DrawerPage.js.map +1 -0
- package/dist/stories/drawer/DrawerPageContext.d.ts +12 -0
- package/dist/stories/drawer/DrawerPageContext.js +23 -0
- package/dist/stories/drawer/DrawerPageContext.js.map +1 -0
- package/dist/stories/drawer/DrawerPaginationContext.d.ts +9 -0
- package/dist/stories/drawer/DrawerPaginationContext.js +17 -0
- package/dist/stories/drawer/DrawerPaginationContext.js.map +1 -0
- package/dist/stories/drawer/DrawerProgressBar.d.ts +15 -0
- package/dist/stories/drawer/DrawerProgressBar.js +60 -0
- package/dist/stories/drawer/DrawerProgressBar.js.map +1 -0
- package/dist/stories/drawer/DrawerSlotContext.d.ts +34 -0
- package/dist/stories/drawer/DrawerSlotContext.js +120 -0
- package/dist/stories/drawer/DrawerSlotContext.js.map +1 -0
- package/dist/stories/drawer/DrawerTitle.d.ts +5 -0
- package/dist/stories/drawer/DrawerTitle.js +29 -0
- package/dist/stories/drawer/DrawerTitle.js.map +1 -0
- package/dist/stories/drawer/index.js +10 -0
- package/dist/stories/drawer/index.js.map +1 -0
- package/dist/stories/field/Field.d.ts +54 -0
- package/dist/stories/field/Field.js +91 -0
- package/dist/stories/field/Field.js.map +1 -0
- package/dist/stories/field/index.js +2 -0
- package/dist/stories/field/index.js.map +1 -0
- package/dist/stories/icon/ArrowRight.d.ts +2 -0
- package/dist/stories/icon/ArrowRight.js +13 -0
- package/dist/stories/icon/ArrowRight.js.map +1 -0
- package/dist/stories/icon/Check.d.ts +2 -0
- package/dist/stories/icon/Check.js +13 -0
- package/dist/stories/icon/Check.js.map +1 -0
- package/dist/stories/icon/ChevronLeft.d.ts +2 -0
- package/dist/stories/icon/ChevronLeft.js +13 -0
- package/dist/stories/icon/ChevronLeft.js.map +1 -0
- package/dist/stories/icon/ChevronRight.d.ts +2 -0
- package/dist/stories/icon/ChevronRight.js +13 -0
- package/dist/stories/icon/ChevronRight.js.map +1 -0
- package/dist/stories/icon/Close.d.ts +2 -0
- package/dist/stories/icon/Close.js +13 -0
- package/dist/stories/icon/Close.js.map +1 -0
- package/dist/stories/icon/Ellipsis.d.ts +2 -0
- package/dist/stories/icon/Ellipsis.js +13 -0
- package/dist/stories/icon/Ellipsis.js.map +1 -0
- package/{src/stories/icon/Icon.tsx → dist/stories/icon/Icon.d.ts} +2 -8
- package/dist/stories/icon/Icon.js +8 -0
- package/dist/stories/icon/Icon.js.map +1 -0
- package/dist/stories/icon/Info.d.ts +2 -0
- package/dist/stories/icon/Info.js +13 -0
- package/dist/stories/icon/Info.js.map +1 -0
- package/dist/stories/icon/NotificationDot.d.ts +2 -0
- package/dist/stories/icon/NotificationDot.js +7 -0
- package/dist/stories/icon/NotificationDot.js.map +1 -0
- package/dist/stories/icon/Spinner.d.ts +2 -0
- package/dist/stories/icon/Spinner.js +24 -0
- package/dist/stories/icon/Spinner.js.map +1 -0
- package/dist/stories/icon/index.js +11 -0
- package/dist/stories/icon/index.js.map +1 -0
- package/dist/stories/informationaltooltip/InformationalTooltip.d.ts +68 -0
- package/dist/stories/informationaltooltip/InformationalTooltip.js +85 -0
- package/dist/stories/informationaltooltip/InformationalTooltip.js.map +1 -0
- package/dist/stories/informationaltooltip/InformationalTooltip.module.css +22 -0
- package/dist/stories/informationaltooltip/InformationalTooltip.module.scss.js +11 -0
- package/dist/stories/informationaltooltip/InformationalTooltip.module.scss.js.map +1 -0
- package/dist/stories/informationaltooltip/index.js +2 -0
- package/dist/stories/informationaltooltip/index.js.map +1 -0
- package/dist/stories/input/Input.d.ts +57 -0
- package/dist/stories/input/Input.js +108 -0
- package/dist/stories/input/Input.js.map +1 -0
- package/dist/stories/input/Input.module.css +165 -0
- package/dist/stories/input/Input.module.scss.js +23 -0
- package/dist/stories/input/Input.module.scss.js.map +1 -0
- package/dist/stories/input/index.js +2 -0
- package/dist/stories/input/index.js.map +1 -0
- package/dist/stories/markdown/Markdown.d.ts +36 -0
- package/dist/stories/markdown/Markdown.js +141 -0
- package/dist/stories/markdown/Markdown.js.map +1 -0
- package/dist/stories/markdown/Markdown.module.css +301 -0
- package/dist/stories/markdown/Markdown.module.scss.js +73 -0
- package/dist/stories/markdown/Markdown.module.scss.js.map +1 -0
- package/dist/stories/markdown/index.js +2 -0
- package/dist/stories/markdown/index.js.map +1 -0
- package/dist/stories/markdowneditor/FixedToolbar.d.ts +19 -0
- package/dist/stories/markdowneditor/FixedToolbar.js +212 -0
- package/dist/stories/markdowneditor/FixedToolbar.js.map +1 -0
- package/dist/stories/markdowneditor/FixedToolbar.module.css +24 -0
- package/dist/stories/markdowneditor/FixedToolbar.module.scss.js +11 -0
- package/dist/stories/markdowneditor/FixedToolbar.module.scss.js.map +1 -0
- package/dist/stories/markdowneditor/FloatingToolbar.d.ts +15 -0
- package/dist/stories/markdowneditor/FloatingToolbar.js +66 -0
- package/dist/stories/markdowneditor/FloatingToolbar.js.map +1 -0
- package/dist/stories/markdowneditor/FloatingToolbar.module.css +18 -0
- package/dist/stories/markdowneditor/FloatingToolbar.module.scss.js +9 -0
- package/dist/stories/markdowneditor/FloatingToolbar.module.scss.js.map +1 -0
- package/dist/stories/markdowneditor/LinkPopover.d.ts +11 -0
- package/dist/stories/markdowneditor/LinkPopover.js +106 -0
- package/dist/stories/markdowneditor/LinkPopover.js.map +1 -0
- package/dist/stories/markdowneditor/LinkPopover.module.css +113 -0
- package/dist/stories/markdowneditor/LinkPopover.module.scss.js +21 -0
- package/dist/stories/markdowneditor/LinkPopover.module.scss.js.map +1 -0
- package/{src/stories/markdowneditor/MarkdownEditor.tsx → dist/stories/markdowneditor/MarkdownEditor.d.ts} +5 -68
- package/dist/stories/markdowneditor/MarkdownEditor.js +62 -0
- package/dist/stories/markdowneditor/MarkdownEditor.js.map +1 -0
- package/dist/stories/markdowneditor/MarkdownEditor.module.css +325 -0
- package/dist/stories/markdowneditor/MarkdownEditor.module.scss.js +11 -0
- package/dist/stories/markdowneditor/MarkdownEditor.module.scss.js.map +1 -0
- package/dist/stories/markdowneditor/MarkdownEditorContext.d.ts +10 -0
- package/dist/stories/markdowneditor/MarkdownEditorContext.js +11 -0
- package/dist/stories/markdowneditor/MarkdownEditorContext.js.map +1 -0
- package/dist/stories/markdowneditor/ToolbarButton.d.ts +22 -0
- package/dist/stories/markdowneditor/ToolbarButton.js +33 -0
- package/dist/stories/markdowneditor/ToolbarButton.js.map +1 -0
- package/dist/stories/markdowneditor/ToolbarButton.module.css +30 -0
- package/dist/stories/markdowneditor/ToolbarButton.module.scss.js +7 -0
- package/dist/stories/markdowneditor/ToolbarButton.module.scss.js.map +1 -0
- package/dist/stories/markdowneditor/features.d.ts +10 -0
- package/dist/stories/markdowneditor/features.js +79 -0
- package/dist/stories/markdowneditor/features.js.map +1 -0
- package/dist/stories/markdowneditor/index.js +7 -0
- package/dist/stories/markdowneditor/index.js.map +1 -0
- package/dist/stories/markdowneditor/useMarkdownEditor.d.ts +19 -0
- package/dist/stories/markdowneditor/useMarkdownEditor.js +50 -0
- package/dist/stories/markdowneditor/useMarkdownEditor.js.map +1 -0
- package/dist/stories/menu/Menu.d.ts +48 -0
- package/dist/stories/menu/Menu.js +31 -0
- package/dist/stories/menu/Menu.js.map +1 -0
- package/dist/stories/menu/Menu.module.css +59 -0
- package/dist/stories/menu/Menu.module.scss.js +12 -0
- package/dist/stories/menu/Menu.module.scss.js.map +1 -0
- package/dist/stories/menu/index.js +2 -0
- package/dist/stories/menu/index.js.map +1 -0
- package/dist/stories/pagination/index.js +2 -0
- package/dist/stories/pagination/index.js.map +1 -0
- package/dist/stories/pagination/usePagination.d.ts +47 -0
- package/dist/stories/pagination/usePagination.js +52 -0
- package/dist/stories/pagination/usePagination.js.map +1 -0
- package/dist/stories/popover/Popover.d.ts +29 -0
- package/dist/stories/popover/Popover.js +56 -0
- package/dist/stories/popover/Popover.js.map +1 -0
- package/dist/stories/popover/Popover.module.css +20 -0
- package/dist/stories/popover/Popover.module.scss.js +8 -0
- package/dist/stories/popover/Popover.module.scss.js.map +1 -0
- package/dist/stories/popover/index.js +2 -0
- package/dist/stories/popover/index.js.map +1 -0
- package/dist/stories/select/Select.d.ts +112 -0
- package/dist/stories/select/Select.js +283 -0
- package/dist/stories/select/Select.js.map +1 -0
- package/dist/stories/select/Select.module.css +236 -0
- package/dist/stories/select/Select.module.scss.js +47 -0
- package/dist/stories/select/Select.module.scss.js.map +1 -0
- package/dist/stories/select/index.js +2 -0
- package/dist/stories/select/index.js.map +1 -0
- package/dist/stories/styledlink/StyledLink.d.ts +20 -0
- package/dist/stories/styledlink/StyledLink.js +15 -0
- package/dist/stories/styledlink/StyledLink.js.map +1 -0
- package/dist/stories/styledlink/StyledLink.module.css +10 -0
- package/dist/stories/styledlink/StyledLink.module.scss.js +7 -0
- package/dist/stories/styledlink/StyledLink.module.scss.js.map +1 -0
- package/dist/stories/styledlink/index.js +2 -0
- package/dist/stories/styledlink/index.js.map +1 -0
- package/dist/stories/table/Table.d.ts +76 -0
- package/dist/stories/table/Table.js +91 -0
- package/dist/stories/table/Table.js.map +1 -0
- package/dist/stories/table/Table.module.css +60 -0
- package/dist/stories/table/Table.module.scss.js +21 -0
- package/dist/stories/table/Table.module.scss.js.map +1 -0
- package/dist/stories/table/index.js +2 -0
- package/dist/stories/table/index.js.map +1 -0
- package/dist/stories/tabs/Tabs.d.ts +74 -0
- package/dist/stories/tabs/Tabs.js +128 -0
- package/dist/stories/tabs/Tabs.js.map +1 -0
- package/dist/stories/tabs/Tabs.module.css +144 -0
- package/dist/stories/tabs/Tabs.module.scss.js +37 -0
- package/dist/stories/tabs/Tabs.module.scss.js.map +1 -0
- package/dist/stories/tabs/index.js +2 -0
- package/dist/stories/tabs/index.js.map +1 -0
- package/dist/stories/tag/Tag.d.ts +36 -0
- package/dist/stories/tag/Tag.js +52 -0
- package/dist/stories/tag/Tag.js.map +1 -0
- package/dist/stories/tag/Tag.module.css +164 -0
- package/dist/stories/tag/Tag.module.scss.js +38 -0
- package/dist/stories/tag/Tag.module.scss.js.map +1 -0
- package/dist/stories/tag/index.js +2 -0
- package/dist/stories/tag/index.js.map +1 -0
- package/dist/stories/text/Text.d.ts +52 -0
- package/dist/stories/text/Text.js +37 -0
- package/dist/stories/text/Text.js.map +1 -0
- package/dist/stories/text/Text.module.css +54 -0
- package/dist/stories/text/Text.module.scss.js +19 -0
- package/dist/stories/text/Text.module.scss.js.map +1 -0
- package/{src → dist}/stories/text/Typography.module.css +20 -20
- package/dist/stories/text/Typography.module.css.js +45 -0
- package/dist/stories/text/Typography.module.css.js.map +1 -0
- package/dist/stories/text/index.js +2 -0
- package/dist/stories/text/index.js.map +1 -0
- package/dist/stories/textarea/TextArea.d.ts +28 -0
- package/dist/stories/textarea/TextArea.js +102 -0
- package/dist/stories/textarea/TextArea.js.map +1 -0
- package/dist/stories/textarea/index.js +2 -0
- package/dist/stories/textarea/index.js.map +1 -0
- package/{src/stories/theme/tw-preflight.css → dist/stories/theme/global.css} +86 -110
- package/dist/stories/theme/index.js +4 -0
- package/dist/stories/theme/index.js.map +1 -0
- package/dist/stories/theme/themes.d.ts +513 -0
- package/dist/stories/theme/themes.js +854 -0
- package/dist/stories/theme/themes.js.map +1 -0
- package/dist/stories/theme/tokens.d.ts +128 -0
- package/dist/stories/theme/tokens.js +130 -0
- package/dist/stories/theme/tokens.js.map +1 -0
- package/dist/stories/tilt/Tilt.d.ts +70 -0
- package/dist/stories/tilt/Tilt.js +256 -0
- package/dist/stories/tilt/Tilt.js.map +1 -0
- package/dist/stories/tilt/Tilt.module.css +22 -0
- package/dist/stories/tilt/Tilt.module.scss.js +11 -0
- package/dist/stories/tilt/Tilt.module.scss.js.map +1 -0
- package/dist/stories/tilt/index.js +2 -0
- package/dist/stories/tilt/index.js.map +1 -0
- package/{src/stories/toast/Toast.tsx → dist/stories/toast/Toast.d.ts} +3 -17
- package/dist/stories/toast/Toast.js +19 -0
- package/dist/stories/toast/Toast.js.map +1 -0
- package/dist/stories/toast/Toast.module.css +17 -0
- package/dist/stories/toast/Toast.module.scss.js +7 -0
- package/dist/stories/toast/Toast.module.scss.js.map +1 -0
- package/dist/stories/toast/index.js +3 -0
- package/dist/stories/toast/index.js.map +1 -0
- package/dist/stories/utility/EasingFunctions.d.ts +1 -0
- package/dist/stories/utility/EasingFunctions.js +6 -0
- package/dist/stories/utility/EasingFunctions.js.map +1 -0
- package/dist/stories/utility/RemoveFromDOM.d.ts +11 -0
- package/dist/stories/utility/RemoveFromDOM.js +7 -0
- package/dist/stories/utility/RemoveFromDOM.js.map +1 -0
- package/dist/stories/utility/TextWhenString.d.ts +6 -0
- package/dist/stories/utility/TextWhenString.js +13 -0
- package/dist/stories/utility/TextWhenString.js.map +1 -0
- package/dist/stories/utility/VisuallyHidden.d.ts +13 -0
- package/dist/stories/utility/VisuallyHidden.js +8 -0
- package/dist/stories/utility/VisuallyHidden.js.map +1 -0
- package/dist/stories/utility/index.js +5 -0
- package/dist/stories/utility/index.js.map +1 -0
- package/dist/styles.css +3307 -0
- package/dist/types/Enhancer.d.ts +4 -0
- package/package.json +148 -44
- package/src/helpers/OpenChangeEffect.tsx +0 -21
- package/src/helpers/renderEnhancer.tsx +0 -20
- package/src/helpers/useControllableState.test.ts +0 -88
- package/src/helpers/useControllableState.ts +0 -59
- package/src/helpers/useIsMounted.ts +0 -17
- package/src/helpers/useResizeObserver.ts +0 -94
- package/src/pages/_app.tsx +0 -6
- package/src/pages/_document.tsx +0 -13
- package/src/pages/index.tsx +0 -116
- package/src/stories/Pagination.mdx +0 -73
- package/src/stories/Tokens.mdx +0 -46
- package/src/stories/Welcome.mdx +0 -8
- package/src/stories/accordion/Accordion.module.scss +0 -163
- package/src/stories/accordion/Accordion.stories.ts +0 -48
- package/src/stories/accordion/Accordion.test.tsx +0 -142
- package/src/stories/accordion/Accordion.tsx +0 -148
- package/src/stories/accordionselect/AccordionSelect.module.scss +0 -119
- package/src/stories/accordionselect/AccordionSelect.stories.ts +0 -38
- package/src/stories/accordionselect/AccordionSelect.test.tsx +0 -327
- package/src/stories/accordionselect/AccordionSelect.tsx +0 -249
- package/src/stories/avatar/Avatar.module.scss +0 -7
- package/src/stories/avatar/Avatar.stories.ts +0 -22
- package/src/stories/avatar/Avatar.test.tsx +0 -77
- package/src/stories/avatar/Avatar.tsx +0 -55
- package/src/stories/button/Button.module.scss +0 -167
- package/src/stories/button/Button.stories.ts +0 -93
- package/src/stories/button/Button.test.tsx +0 -266
- package/src/stories/button/Button.tsx +0 -226
- package/src/stories/callout/Callout.module.scss +0 -43
- package/src/stories/callout/Callout.stories.ts +0 -52
- package/src/stories/callout/Callout.test.tsx +0 -79
- package/src/stories/callout/Callout.tsx +0 -43
- package/src/stories/card/Card.module.scss +0 -42
- package/src/stories/card/Card.stories.ts +0 -38
- package/src/stories/card/Card.test.tsx +0 -81
- package/src/stories/card/Card.tsx +0 -54
- package/src/stories/cardbutton/CardButton.module.scss +0 -88
- package/src/stories/cardbutton/CardButton.stories.tsx +0 -24
- package/src/stories/cardbutton/CardButton.test.tsx +0 -174
- package/src/stories/cardbutton/CardButton.tsx +0 -100
- package/src/stories/checkbox/Checkbox.module.scss +0 -198
- package/src/stories/checkbox/Checkbox.stories.ts +0 -87
- package/src/stories/checkbox/Checkbox.test.tsx +0 -584
- package/src/stories/checkbox/Checkbox.tsx +0 -123
- package/src/stories/codeinput/CodeInput.module.scss +0 -77
- package/src/stories/codeinput/CodeInput.stories.ts +0 -51
- package/src/stories/codeinput/CodeInput.test.tsx +0 -56
- package/src/stories/codeinput/CodeInput.tsx +0 -160
- package/src/stories/combobox/Combobox.module.scss +0 -5
- package/src/stories/combobox/Combobox.stories.ts +0 -270
- package/src/stories/combobox/Combobox.test.tsx +0 -275
- package/src/stories/combobox/Combobox.tsx +0 -396
- package/src/stories/dialog/Dialog.module.scss +0 -211
- package/src/stories/dialog/Dialog.stories.tsx +0 -93
- package/src/stories/dialog/Dialog.test.tsx +0 -244
- package/src/stories/dialog/Dialog.tsx +0 -283
- package/src/stories/drawer/Drawer.module.scss +0 -479
- package/src/stories/drawer/Drawer.stories.tsx +0 -494
- package/src/stories/drawer/Drawer.test.tsx +0 -734
- package/src/stories/drawer/Drawer.tsx +0 -548
- package/src/stories/drawer/DrawerActions.tsx +0 -28
- package/src/stories/drawer/DrawerBottomPanel.tsx +0 -55
- package/src/stories/drawer/DrawerContext.tsx +0 -31
- package/src/stories/drawer/DrawerPage.tsx +0 -37
- package/src/stories/drawer/DrawerPageContext.tsx +0 -35
- package/src/stories/drawer/DrawerPaginationContext.tsx +0 -22
- package/src/stories/drawer/DrawerProgressBar.tsx +0 -72
- package/src/stories/drawer/DrawerSlotContext.tsx +0 -172
- package/src/stories/drawer/DrawerTitle.tsx +0 -35
- package/src/stories/field/Field.stories.ts +0 -36
- package/src/stories/field/Field.test.tsx +0 -146
- package/src/stories/field/Field.tsx +0 -145
- package/src/stories/icon/ArrowRight.tsx +0 -11
- package/src/stories/icon/Check.tsx +0 -11
- package/src/stories/icon/ChevronLeft.tsx +0 -11
- package/src/stories/icon/ChevronRight.tsx +0 -11
- package/src/stories/icon/Close.tsx +0 -11
- package/src/stories/icon/Ellipsis.tsx +0 -11
- package/src/stories/icon/Icon.module.scss +0 -5
- package/src/stories/icon/Icon.stories.ts +0 -33
- package/src/stories/icon/Icon.test.tsx +0 -59
- package/src/stories/icon/Info.tsx +0 -11
- package/src/stories/icon/NotificationDot.tsx +0 -8
- package/src/stories/icon/Spinner.tsx +0 -17
- package/src/stories/informationaltooltip/InformationalTooltip.module.scss +0 -23
- package/src/stories/informationaltooltip/InformationalTooltip.stories.tsx +0 -61
- package/src/stories/informationaltooltip/InformationalTooltip.test.tsx +0 -178
- package/src/stories/informationaltooltip/InformationalTooltip.tsx +0 -170
- package/src/stories/input/Input.module.scss +0 -217
- package/src/stories/input/Input.stories.ts +0 -110
- package/src/stories/input/Input.test.tsx +0 -174
- package/src/stories/input/Input.tsx +0 -181
- package/src/stories/markdown/Markdown.module.scss +0 -384
- package/src/stories/markdown/Markdown.stories.ts +0 -203
- package/src/stories/markdown/Markdown.test.tsx +0 -228
- package/src/stories/markdown/Markdown.tsx +0 -293
- package/src/stories/markdowneditor/FixedToolbar.module.scss +0 -24
- package/src/stories/markdowneditor/FixedToolbar.tsx +0 -274
- package/src/stories/markdowneditor/FloatingToolbar.module.scss +0 -21
- package/src/stories/markdowneditor/FloatingToolbar.tsx +0 -94
- package/src/stories/markdowneditor/LinkPopover.module.scss +0 -124
- package/src/stories/markdowneditor/LinkPopover.tsx +0 -135
- package/src/stories/markdowneditor/MarkdownEditor.module.scss +0 -405
- package/src/stories/markdowneditor/MarkdownEditor.stories.tsx +0 -226
- package/src/stories/markdowneditor/MarkdownEditor.test.tsx +0 -115
- package/src/stories/markdowneditor/MarkdownEditorContext.tsx +0 -20
- package/src/stories/markdowneditor/ToolbarButton.module.scss +0 -35
- package/src/stories/markdowneditor/ToolbarButton.tsx +0 -52
- package/src/stories/markdowneditor/features.ts +0 -92
- package/src/stories/markdowneditor/useMarkdownEditor.ts +0 -75
- package/src/stories/menu/Menu.module.scss +0 -71
- package/src/stories/menu/Menu.stories.tsx +0 -37
- package/src/stories/menu/Menu.test.tsx +0 -254
- package/src/stories/menu/Menu.tsx +0 -95
- package/src/stories/pagination/usePagination.test.ts +0 -259
- package/src/stories/pagination/usePagination.ts +0 -117
- package/src/stories/popover/Popover.module.scss +0 -22
- package/src/stories/popover/Popover.stories.ts +0 -20
- package/src/stories/popover/Popover.test.tsx +0 -152
- package/src/stories/popover/Popover.tsx +0 -89
- package/src/stories/select/Select.module.scss +0 -311
- package/src/stories/select/Select.stories.ts +0 -153
- package/src/stories/select/Select.test.tsx +0 -341
- package/src/stories/select/Select.tsx +0 -398
- package/src/stories/styledlink/StyledLink.module.scss +0 -11
- package/src/stories/styledlink/StyledLink.stories.ts +0 -28
- package/src/stories/styledlink/StyledLink.test.tsx +0 -59
- package/src/stories/styledlink/StyledLink.tsx +0 -33
- package/src/stories/table/Table.module.scss +0 -74
- package/src/stories/table/Table.stories.ts +0 -62
- package/src/stories/table/Table.test.tsx +0 -156
- package/src/stories/table/Table.tsx +0 -182
- package/src/stories/tabs/Tabs.module.scss +0 -185
- package/src/stories/tabs/Tabs.stories.tsx +0 -209
- package/src/stories/tabs/Tabs.test.tsx +0 -167
- package/src/stories/tabs/Tabs.tsx +0 -191
- package/src/stories/tag/Tag.module.scss +0 -189
- package/src/stories/tag/Tag.stories.ts +0 -58
- package/src/stories/tag/Tag.test.tsx +0 -90
- package/src/stories/tag/Tag.tsx +0 -84
- package/src/stories/text/Text.module.scss +0 -39
- package/src/stories/text/Text.stories.ts +0 -195
- package/src/stories/text/Text.test.tsx +0 -81
- package/src/stories/text/Text.tsx +0 -108
- package/src/stories/textarea/TextArea.stories.ts +0 -39
- package/src/stories/textarea/TextArea.test.tsx +0 -147
- package/src/stories/textarea/TextArea.tsx +0 -112
- package/src/stories/theme/global.scss +0 -6
- package/src/stories/theme/themes.ts +0 -1509
- package/src/stories/theme/tokens.ts +0 -149
- package/src/stories/theme/util.scss +0 -8
- package/src/stories/tilt/Tilt.module.scss +0 -22
- package/src/stories/tilt/Tilt.stories.tsx +0 -42
- package/src/stories/tilt/Tilt.test.tsx +0 -203
- package/src/stories/tilt/Tilt.tsx +0 -375
- package/src/stories/toast/Toast.module.scss +0 -20
- package/src/stories/toast/Toast.stories.tsx +0 -31
- package/src/stories/toast/Toast.test.tsx +0 -86
- package/src/stories/utility/Dropdown.module.scss +0 -28
- package/src/stories/utility/EasingFunctions.ts +0 -3
- package/src/stories/utility/RemoveFromDOM.tsx +0 -15
- package/src/stories/utility/TextWhenString.tsx +0 -15
- package/src/stories/utility/Utility.test.tsx +0 -96
- package/src/stories/utility/VisuallyHidden.tsx +0 -18
- package/src/styles/Home.module.css +0 -268
- package/src/styles/globals.css +0 -3
- package/src/test/render.tsx +0 -20
- package/src/test/setup.ts +0 -32
- package/src/types/Enhancer.ts +0 -3
- /package/{src/stories/accordion/index.ts → dist/stories/accordion/index.d.ts} +0 -0
- /package/{src/stories/accordionselect/index.ts → dist/stories/accordionselect/index.d.ts} +0 -0
- /package/{src/stories/avatar/index.ts → dist/stories/avatar/index.d.ts} +0 -0
- /package/{src/stories/button/index.ts → dist/stories/button/index.d.ts} +0 -0
- /package/{src/stories/callout/index.ts → dist/stories/callout/index.d.ts} +0 -0
- /package/{src/stories/card/index.ts → dist/stories/card/index.d.ts} +0 -0
- /package/{src/stories/cardbutton/index.ts → dist/stories/cardbutton/index.d.ts} +0 -0
- /package/{src/stories/checkbox/index.ts → dist/stories/checkbox/index.d.ts} +0 -0
- /package/{src/stories/codeinput/index.ts → dist/stories/codeinput/index.d.ts} +0 -0
- /package/{src/stories/combobox/index.ts → dist/stories/combobox/index.d.ts} +0 -0
- /package/{src/stories/dialog/index.ts → dist/stories/dialog/index.d.ts} +0 -0
- /package/{src/stories/drawer/index.ts → dist/stories/drawer/index.d.ts} +0 -0
- /package/{src/stories/field/index.ts → dist/stories/field/index.d.ts} +0 -0
- /package/{src/stories/icon/index.ts → dist/stories/icon/index.d.ts} +0 -0
- /package/{src/stories/informationaltooltip/index.ts → dist/stories/informationaltooltip/index.d.ts} +0 -0
- /package/{src/stories/input/index.ts → dist/stories/input/index.d.ts} +0 -0
- /package/{src/stories/markdown/index.ts → dist/stories/markdown/index.d.ts} +0 -0
- /package/{src/stories/markdowneditor/index.ts → dist/stories/markdowneditor/index.d.ts} +0 -0
- /package/{src/stories/menu/index.ts → dist/stories/menu/index.d.ts} +0 -0
- /package/{src/stories/pagination/index.ts → dist/stories/pagination/index.d.ts} +0 -0
- /package/{src/stories/popover/index.ts → dist/stories/popover/index.d.ts} +0 -0
- /package/{src/stories/select/index.ts → dist/stories/select/index.d.ts} +0 -0
- /package/{src/stories/styledlink/index.ts → dist/stories/styledlink/index.d.ts} +0 -0
- /package/{src/stories/table/index.ts → dist/stories/table/index.d.ts} +0 -0
- /package/{src/stories/tabs/index.ts → dist/stories/tabs/index.d.ts} +0 -0
- /package/{src/stories/tag/index.ts → dist/stories/tag/index.d.ts} +0 -0
- /package/{src/stories/text/index.ts → dist/stories/text/index.d.ts} +0 -0
- /package/{src/stories/textarea/index.ts → dist/stories/textarea/index.d.ts} +0 -0
- /package/{src/stories/theme/index.ts → dist/stories/theme/index.d.ts} +0 -0
- /package/{src/stories/tilt/index.ts → dist/stories/tilt/index.d.ts} +0 -0
- /package/{src/stories/toast/index.ts → dist/stories/toast/index.d.ts} +0 -0
- /package/{src/stories/utility/index.ts → dist/stories/utility/index.d.ts} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# paris
|
|
2
2
|
|
|
3
|
+
## 0.24.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 4d0ca1c: Compile components to ESM instead of shipping unbundled `.tsx`
|
|
8
|
+
|
|
9
|
+
Paris now ships precompiled ESM in `dist/` (built with Vite) — each component's CSS is extracted and auto-imported on use, `'use client'` directives are preserved per file for React Server Components, and per-file `.d.ts` types are emitted. Verified against Next.js App Router (RSC) and Vite React.
|
|
10
|
+
|
|
11
|
+
**Breaking for consumers** (minor while pre-1.0):
|
|
12
|
+
|
|
13
|
+
- Remove `transpilePackages: ['paris']` from `next.config.js` — no longer needed.
|
|
14
|
+
- Remove the `sass` dependency — styles are precompiled, and `sass` is no longer a peer dependency.
|
|
15
|
+
- Change `import 'paris/theme/global.scss'` → `import 'paris/theme/global.css'`.
|
|
16
|
+
|
|
17
|
+
Component import paths (`paris/button`, `paris/text`, etc.) are unchanged.
|
|
18
|
+
|
|
3
19
|
## 0.23.1
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -2,12 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
Paris is Slingshot's React design system, meant to work universally across server and client components. It's a collection of reusable components, design tokens, and guidelines for building consistent, accessible, and performant user interfaces.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Paris ships as **precompiled ESM** with extracted CSS and TypeScript declarations. Each component is a separate entry point, so you import only what you need and tree-shaking keeps your bundle small. Because it's prebuilt, Paris works out of the box in any modern React setup — Next.js (including the App Router and Server Components) and Vite React — with no special bundler configuration and no Sass toolchain required.
|
|
6
6
|
|
|
7
7
|
Paris 1.x styling is heavily inspired by Uber's [Base Web](https://baseweb.design), which we previously used in our production apps. We built Paris to move away from Styletron and CSS-in-JS, since we're now largely working with React 19, RSC, and the Next.js `app` directory.
|
|
8
8
|
|
|
9
9
|
<br />
|
|
10
10
|
|
|
11
|
+
## Upgrading from a pre-0.24 version?
|
|
12
|
+
|
|
13
|
+
As of **v0.24**, Paris ships precompiled — so you can **remove** `transpilePackages: ['paris']` and the `sass` dependency, and switch your global-styles import to `paris/theme/global.css`. Component import paths are unchanged.
|
|
14
|
+
|
|
15
|
+
The easiest way to upgrade is to **hand it to your coding agent**. Copy the prompt below into Claude Code, Cursor, or any agent working in your repo:
|
|
16
|
+
|
|
17
|
+
> Upgrade this project's `paris` dependency to the latest v0.24+. Follow the official migration guide at https://paris.slingshot.fm/migrate-0.24.md carefully and step by step — fetch and read the whole guide first, make only the changes it describes, and run the project's build/typecheck at the end to confirm everything passes. Report exactly what you changed.
|
|
18
|
+
|
|
19
|
+
Prefer to do it by hand? The same guide is here: **[Migration guide → v0.24](https://paris.slingshot.fm/migrate-0.24.md)**.
|
|
20
|
+
|
|
21
|
+
<br />
|
|
22
|
+
|
|
11
23
|
## Getting started
|
|
12
24
|
|
|
13
25
|
First, install Paris in your project:
|
|
@@ -30,23 +42,11 @@ Make sure your `tsconfig` module resolution is set to `nodenext`, `node16`, or `
|
|
|
30
42
|
}
|
|
31
43
|
```
|
|
32
44
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
```js
|
|
36
|
-
// next.config.js
|
|
37
|
-
module.exports = {
|
|
38
|
-
// ...
|
|
39
|
-
transpilePackages: ['paris'],
|
|
40
|
-
};
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
For older versions of Next.js, you can use a plugin like [next-transpile-modules](https://www.npmjs.com/package/next-transpile-modules). Instructions for other bundlers are coming soon.
|
|
44
|
-
|
|
45
|
-
You'll need to configure your bundler to support Sass/SCSS and SCSS modules. In Next.js, support for SCSS modules is built-in and can be enabled by simply installing `sass` as a dependency.
|
|
45
|
+
That's all the bundler setup required. Because Paris is prebuilt, there's **no `transpilePackages` to add and no `sass` dependency to install** — the component CSS is already extracted and auto-imported alongside each component. (If you're upgrading from an older Paris that required these, you can now remove them.)
|
|
46
46
|
|
|
47
47
|
Paris uses `pte` (our theming engine) for powering theming and initial styles through CSS variables. You can use `generateCSS` or `generateThemeInjection` from `paris/theme` to generate the CSS variables and inject them into your app through either a `style` or `script` tag in your document head respectively. Either method supports SSR and server components, since the initial theme is static.
|
|
48
48
|
|
|
49
|
-
Additionally, you need to import the static global styles from `paris/theme/global.
|
|
49
|
+
Additionally, you need to import the precompiled static global styles from `paris/theme/global.css`.
|
|
50
50
|
|
|
51
51
|
Paris also relies on CSS Container Queries for responsive changes on certain elements, like the Tabs component when `kind = auto`. Adding the Google polyfill for Container Queries is recommended to ensure legacy browser support:
|
|
52
52
|
|
|
@@ -62,7 +62,7 @@ For example, with the Next.js 13 app directory, you can do all of this in your r
|
|
|
62
62
|
import { generateCSS, generateThemeInjection, theme } from 'paris/theme';
|
|
63
63
|
|
|
64
64
|
// Import Paris's static global styling
|
|
65
|
-
import 'paris/theme/global.
|
|
65
|
+
import 'paris/theme/global.css';
|
|
66
66
|
|
|
67
67
|
export default function RootLayout({
|
|
68
68
|
children,
|
|
@@ -107,4 +107,4 @@ const App = () => (
|
|
|
107
107
|
);
|
|
108
108
|
```
|
|
109
109
|
|
|
110
|
-
This
|
|
110
|
+
This works out of the box with Next.js (App Router and Server Components) and Vite React — components ship as compiled ESM with their styles already bundled, so no extra bundler or Sass configuration is needed.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A renderless component that fires a callback when an `open` boolean changes.
|
|
3
|
+
* Designed to sit inside a Headless UI render-prop child to bridge
|
|
4
|
+
* the library's internal open state to a consumer-facing `onOpenChange` callback.
|
|
5
|
+
*
|
|
6
|
+
* Does not fire on the initial mount — only on subsequent changes.
|
|
7
|
+
*/
|
|
8
|
+
export declare function OpenChangeEffect({ open, onOpenChange }: {
|
|
9
|
+
open: boolean;
|
|
10
|
+
onOpenChange?: (open: boolean) => void;
|
|
11
|
+
}): null;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useRef, useEffect } from 'react';
|
|
3
|
+
|
|
4
|
+
function OpenChangeEffect({ open, onOpenChange }) {
|
|
5
|
+
const previousOpen = useRef(open);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
if (previousOpen.current !== open) {
|
|
8
|
+
previousOpen.current = open;
|
|
9
|
+
onOpenChange?.(open);
|
|
10
|
+
}
|
|
11
|
+
}, [open, onOpenChange]);
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { OpenChangeEffect };
|
|
16
|
+
//# sourceMappingURL=OpenChangeEffect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenChangeEffect.js","sources":["../../src/helpers/OpenChangeEffect.tsx"],"sourcesContent":["'use client';\n\nimport { useEffect, useRef } from 'react';\n\n/**\n * A renderless component that fires a callback when an `open` boolean changes.\n * Designed to sit inside a Headless UI render-prop child to bridge\n * the library's internal open state to a consumer-facing `onOpenChange` callback.\n *\n * Does not fire on the initial mount — only on subsequent changes.\n */\nexport function OpenChangeEffect({ open, onOpenChange }: { open: boolean; onOpenChange?: (open: boolean) => void }) {\n const previousOpen = useRef(open);\n\n useEffect(() => {\n if (previousOpen.current !== open) {\n previousOpen.current = open;\n onOpenChange?.(open);\n }\n }, [open, onOpenChange]);\n\n return null;\n}\n"],"names":[],"mappings":";;;AAWO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,gBAAA,CAAiB,CAAA,CAAE,IAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAa,CAAA,CAA8D;AAChH,CAAA,CAAA,MAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,IAAI,CAAA;AAEhC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM;AACZ,CAAA,CAAA,CAAA,CAAA,IAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAY,IAAA,CAAA,CAAM;AAC/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA;AACvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAA,CAAA,CAAA,CAAI,CAAA;AAAA,CAAA,CAAA,CAAA,CACvB;AAAA,CAAA,CACJ,CAAA,CAAA,CAAG,CAAC,IAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAC,CAAA;AAEvB,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA;AACX;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { Enhancer } from '../types/Enhancer';
|
|
3
|
+
export declare const renderEnhancer: (enhancer: Enhancer, size: number) => ReactNode;
|
|
4
|
+
export declare const MemoizedEnhancer: import('react').NamedExoticComponent<{
|
|
5
|
+
enhancer: Enhancer;
|
|
6
|
+
size: number;
|
|
7
|
+
}>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
3
|
+
import { memo, isValidElement } from 'react';
|
|
4
|
+
|
|
5
|
+
const renderEnhancer = (enhancer, size) => {
|
|
6
|
+
if (isValidElement(enhancer)) {
|
|
7
|
+
return enhancer;
|
|
8
|
+
}
|
|
9
|
+
if (typeof enhancer === "function") {
|
|
10
|
+
return enhancer({ size });
|
|
11
|
+
}
|
|
12
|
+
return enhancer;
|
|
13
|
+
};
|
|
14
|
+
const MemoizedEnhancer = memo(
|
|
15
|
+
({ enhancer, size }) => /* @__PURE__ */ jsx(Fragment, { children: renderEnhancer(enhancer, size) }),
|
|
16
|
+
(prev, next) => prev.enhancer === next.enhancer && prev.size === next.size
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
export { MemoizedEnhancer, renderEnhancer };
|
|
20
|
+
//# sourceMappingURL=renderEnhancer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderEnhancer.js","sources":["../../src/helpers/renderEnhancer.tsx"],"sourcesContent":["'use client';\n\nimport type { ReactNode } from 'react';\nimport { isValidElement, memo } from 'react';\nimport type { Enhancer } from '../types/Enhancer';\n\nexport const renderEnhancer = (enhancer: Enhancer, size: number): ReactNode => {\n if (isValidElement(enhancer)) {\n return enhancer;\n }\n\n if (typeof enhancer === 'function') {\n return enhancer({ size });\n }\n\n return enhancer;\n};\n\nexport const MemoizedEnhancer = memo<{ enhancer: Enhancer; size: number }>(\n ({ enhancer, size }) => <>{renderEnhancer(enhancer, size)}</>,\n (prev, next) => prev.enhancer === next.enhancer && prev.size === next.size,\n);\n"],"names":[],"mappings":";;;;AAMO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,cAAA,CAAA,CAAA,CAAiB,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,IAAA,CAAA,CAAA,CAAA,CAAA,CAA4B;AAC3E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAG;AAC1B,CAAA,CAAA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CACX;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAa,UAAA,CAAA,CAAY;AAChC,CAAA,CAAA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,EAAM,CAAA;AAAA,CAAA,CAC5B;AAEA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACX,CAAA;AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAmB,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAC5B,CAAC,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,IAAA,CAAA,sBAAW,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,QAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAE,CAAA;AAAA,CAAA,CAC1D,CAAC,CAAA,CAAA,CAAA,GAAM,IAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAa,CAAA,CAAA,CAAA,CAAA,CAAK,QAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,IAAA,CAAK,CAAA,CAAA,CAAA;AAC1E,CAAA;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type UseControllableStateProps<T> = {
|
|
2
|
+
value?: T;
|
|
3
|
+
defaultValue?: T;
|
|
4
|
+
onChange?: (value: T) => void;
|
|
5
|
+
};
|
|
6
|
+
export declare function useControllableState<T>({ value: controlledValue, defaultValue, onChange, }: UseControllableStateProps<T>): [T, (next: T | ((prev: T) => T)) => void];
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useState, useRef, useCallback } from 'react';
|
|
3
|
+
|
|
4
|
+
function useControllableState({
|
|
5
|
+
value: controlledValue,
|
|
6
|
+
defaultValue,
|
|
7
|
+
onChange
|
|
8
|
+
}) {
|
|
9
|
+
const isControlled = controlledValue !== void 0;
|
|
10
|
+
const [internalValue, setInternalValue] = useState(defaultValue);
|
|
11
|
+
const hasWarned = useRef(false);
|
|
12
|
+
if (process.env.NODE_ENV !== "production" && !hasWarned.current) {
|
|
13
|
+
hasWarned.current = true;
|
|
14
|
+
if (controlledValue !== void 0 && defaultValue !== void 0) {
|
|
15
|
+
console.warn(
|
|
16
|
+
"[Paris] A component received both `value` and `defaultValue`. A component can be either controlled or uncontrolled, not both. Decide between using `value` (controlled) or `defaultValue` (uncontrolled) and remove the other. Defaulting to controlled mode."
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
const resolvedValue = isControlled ? controlledValue : internalValue;
|
|
21
|
+
const onChangeRef = useRef(onChange);
|
|
22
|
+
onChangeRef.current = onChange;
|
|
23
|
+
const setValue = useCallback(
|
|
24
|
+
(next) => {
|
|
25
|
+
if (typeof next === "function") {
|
|
26
|
+
const updater = next;
|
|
27
|
+
if (!isControlled) {
|
|
28
|
+
setInternalValue((prev) => {
|
|
29
|
+
const nextValue = updater(prev);
|
|
30
|
+
onChangeRef.current?.(nextValue);
|
|
31
|
+
return nextValue;
|
|
32
|
+
});
|
|
33
|
+
} else {
|
|
34
|
+
onChangeRef.current?.(updater(controlledValue));
|
|
35
|
+
}
|
|
36
|
+
} else {
|
|
37
|
+
if (!isControlled) {
|
|
38
|
+
setInternalValue(next);
|
|
39
|
+
}
|
|
40
|
+
onChangeRef.current?.(next);
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
[isControlled, controlledValue]
|
|
44
|
+
);
|
|
45
|
+
return [resolvedValue, setValue];
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export { useControllableState };
|
|
49
|
+
//# sourceMappingURL=useControllableState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useControllableState.js","sources":["../../src/helpers/useControllableState.ts"],"sourcesContent":["'use client';\n\nimport { useCallback, useRef, useState } from 'react';\n\ntype UseControllableStateProps<T> = {\n value?: T;\n defaultValue?: T;\n onChange?: (value: T) => void;\n};\n\nexport function useControllableState<T>({\n value: controlledValue,\n defaultValue,\n onChange,\n}: UseControllableStateProps<T>): [T, (next: T | ((prev: T) => T)) => void] {\n const isControlled = controlledValue !== undefined;\n const [internalValue, setInternalValue] = useState(defaultValue);\n\n const hasWarned = useRef(false);\n if (process.env.NODE_ENV !== 'production' && !hasWarned.current) {\n hasWarned.current = true;\n if (controlledValue !== undefined && defaultValue !== undefined) {\n console.warn(\n '[Paris] A component received both `value` and `defaultValue`. ' +\n 'A component can be either controlled or uncontrolled, not both. ' +\n 'Decide between using `value` (controlled) or `defaultValue` (uncontrolled) ' +\n 'and remove the other. Defaulting to controlled mode.',\n );\n }\n }\n\n const resolvedValue = isControlled ? controlledValue : internalValue;\n\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n const setValue = useCallback(\n (next: T | ((prev: T) => T)) => {\n if (typeof next === 'function') {\n const updater = next as (prev: T) => T;\n if (!isControlled) {\n setInternalValue((prev) => {\n const nextValue = updater(prev as T);\n onChangeRef.current?.(nextValue);\n return nextValue;\n });\n } else {\n onChangeRef.current?.(updater(controlledValue));\n }\n } else {\n if (!isControlled) {\n setInternalValue(next);\n }\n onChangeRef.current?.(next);\n }\n },\n [isControlled, controlledValue],\n );\n\n return [resolvedValue as T, setValue];\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useIsMounted(): () => boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
type Size = {
|
|
3
|
+
width: number | undefined;
|
|
4
|
+
height: number | undefined;
|
|
5
|
+
};
|
|
6
|
+
type UseResizeObserverOptions<T extends HTMLElement = HTMLElement> = {
|
|
7
|
+
ref: RefObject<T>;
|
|
8
|
+
onResize?: (size: Size) => void;
|
|
9
|
+
box?: 'border-box' | 'content-box' | 'device-pixel-content-box';
|
|
10
|
+
};
|
|
11
|
+
export declare function useResizeObserver<T extends HTMLElement = HTMLElement>(options: UseResizeObserverOptions<T>): Size;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef, FC, ReactNode } from 'react';
|
|
2
|
+
import { Enhancer } from '../../types/Enhancer';
|
|
3
|
+
export type AccordionProps = {
|
|
4
|
+
/** The title of the Accordion. */
|
|
5
|
+
title?: ReactNode;
|
|
6
|
+
/**
|
|
7
|
+
* The style of the Accordion.
|
|
8
|
+
* @default default
|
|
9
|
+
*/
|
|
10
|
+
kind?: 'default' | 'card';
|
|
11
|
+
/**
|
|
12
|
+
* The size of the Accordion. Only affects kind="card".
|
|
13
|
+
* @default small
|
|
14
|
+
*/
|
|
15
|
+
size?: 'small' | 'large';
|
|
16
|
+
/**
|
|
17
|
+
* Overrides the toggle icon. Accepts any icon (an `Icon` element or a render
|
|
18
|
+
* function `({ size }) => ReactNode`). When set, it replaces the default
|
|
19
|
+
* plus/chevron and rotates on open/close like the built-in chevron.
|
|
20
|
+
*/
|
|
21
|
+
icon?: Enhancer;
|
|
22
|
+
/** Whether the Accordion is open. If provided, the Accordion will be a controlled component. */
|
|
23
|
+
isOpen?: boolean;
|
|
24
|
+
/** A handler for when the Accordion state changes. */
|
|
25
|
+
onOpenChange?: (open: boolean) => void | Promise<void>;
|
|
26
|
+
/** The collapsible contents of the Accordion. */
|
|
27
|
+
children?: ReactNode;
|
|
28
|
+
overrides?: {
|
|
29
|
+
container?: ComponentPropsWithoutRef<'div'>;
|
|
30
|
+
titleContainer?: ComponentPropsWithoutRef<'div'>;
|
|
31
|
+
dropdownContainer?: ComponentPropsWithoutRef<'div'>;
|
|
32
|
+
dropdownContent?: ComponentPropsWithoutRef<'div'>;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* A Accordion component.
|
|
37
|
+
*
|
|
38
|
+
* <hr />
|
|
39
|
+
*
|
|
40
|
+
* To use this component, import it as follows:
|
|
41
|
+
*
|
|
42
|
+
* ```js
|
|
43
|
+
* import { Accordion } from 'paris/accordion';
|
|
44
|
+
* ```
|
|
45
|
+
* @constructor
|
|
46
|
+
*/
|
|
47
|
+
export declare const Accordion: FC<AccordionProps>;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { faPlus } from '@fortawesome/free-solid-svg-icons';
|
|
4
|
+
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
5
|
+
import { clsx } from 'clsx';
|
|
6
|
+
import { useState } from 'react';
|
|
7
|
+
import { renderEnhancer } from '../../helpers/renderEnhancer.js';
|
|
8
|
+
import { ChevronRight } from '../icon/ChevronRight.js';
|
|
9
|
+
import { Icon } from '../icon/Icon.js';
|
|
10
|
+
import { TextWhenString } from '../utility/TextWhenString.js';
|
|
11
|
+
import styles from './Accordion.module.scss.js';
|
|
12
|
+
|
|
13
|
+
const Accordion = ({
|
|
14
|
+
title,
|
|
15
|
+
kind = "default",
|
|
16
|
+
size = "small",
|
|
17
|
+
icon,
|
|
18
|
+
isOpen,
|
|
19
|
+
onOpenChange,
|
|
20
|
+
children,
|
|
21
|
+
overrides
|
|
22
|
+
}) => {
|
|
23
|
+
const [openState, setOpenState] = useState(isOpen ?? false);
|
|
24
|
+
const isControlled = isOpen !== void 0;
|
|
25
|
+
const open = isControlled ? isOpen : openState;
|
|
26
|
+
const handleToggle = () => {
|
|
27
|
+
const newOpen = !open;
|
|
28
|
+
if (!isControlled) {
|
|
29
|
+
setOpenState(newOpen);
|
|
30
|
+
}
|
|
31
|
+
onOpenChange?.(newOpen);
|
|
32
|
+
};
|
|
33
|
+
return /* @__PURE__ */ jsxs(
|
|
34
|
+
"div",
|
|
35
|
+
{
|
|
36
|
+
...overrides?.container,
|
|
37
|
+
className: clsx(styles[kind], open && styles.open, overrides?.container?.className),
|
|
38
|
+
children: [
|
|
39
|
+
/* @__PURE__ */ jsxs(
|
|
40
|
+
"div",
|
|
41
|
+
{
|
|
42
|
+
onClick: handleToggle,
|
|
43
|
+
onKeyDown: (e) => {
|
|
44
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
45
|
+
e.preventDefault();
|
|
46
|
+
handleToggle();
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
role: "button",
|
|
50
|
+
tabIndex: 0,
|
|
51
|
+
...overrides?.titleContainer,
|
|
52
|
+
"data-state": open ? "open" : "closed",
|
|
53
|
+
className: clsx(overrides?.titleContainer?.className, styles.title, styles[size], open && styles.open),
|
|
54
|
+
children: [
|
|
55
|
+
/* @__PURE__ */ jsx(TextWhenString, { kind: "paragraphSmall", weight: "medium", children: title }),
|
|
56
|
+
icon ? /* @__PURE__ */ jsx("span", { className: clsx(styles.toggleIcon, open && styles.open), children: renderEnhancer(icon, 16) }) : kind === "default" ? /* @__PURE__ */ jsx("div", { className: styles.plusIcon, children: /* @__PURE__ */ jsx(FontAwesomeIcon, { icon: faPlus, className: clsx(open && styles.open) }) }) : /* @__PURE__ */ jsx(Icon, { icon: ChevronRight, size: 16, className: clsx(styles.chevron, open && styles.open) })
|
|
57
|
+
]
|
|
58
|
+
}
|
|
59
|
+
),
|
|
60
|
+
/* @__PURE__ */ jsx(
|
|
61
|
+
"div",
|
|
62
|
+
{
|
|
63
|
+
"aria-hidden": !open,
|
|
64
|
+
...overrides?.dropdownContainer,
|
|
65
|
+
className: clsx(styles.dropdown, open && styles.open, overrides?.dropdownContainer?.className),
|
|
66
|
+
children: /* @__PURE__ */ jsx("div", { className: styles.dropdownClip, children: /* @__PURE__ */ jsx(
|
|
67
|
+
"div",
|
|
68
|
+
{
|
|
69
|
+
...overrides?.dropdownContent,
|
|
70
|
+
className: clsx(styles.dropdownContent, styles[size], overrides?.dropdownContent?.className),
|
|
71
|
+
children: /* @__PURE__ */ jsx(TextWhenString, { kind: "paragraphXSmall", children })
|
|
72
|
+
}
|
|
73
|
+
) })
|
|
74
|
+
}
|
|
75
|
+
)
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
);
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export { Accordion };
|
|
82
|
+
//# sourceMappingURL=Accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Accordion.js","sources":["../../../src/stories/accordion/Accordion.tsx"],"sourcesContent":["'use client';\n\nimport { faPlus } from '@fortawesome/free-solid-svg-icons';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { clsx } from 'clsx';\nimport type { ComponentPropsWithoutRef, FC, ReactNode } from 'react';\nimport { useState } from 'react';\nimport { renderEnhancer } from '../../helpers/renderEnhancer';\nimport type { Enhancer } from '../../types/Enhancer';\nimport { ChevronRight, Icon } from '../icon';\nimport { TextWhenString } from '../utility';\nimport styles from './Accordion.module.scss';\n\nexport type AccordionProps = {\n /** The title of the Accordion. */\n title?: ReactNode;\n /**\n * The style of the Accordion.\n * @default default\n */\n kind?: 'default' | 'card';\n /**\n * The size of the Accordion. Only affects kind=\"card\".\n * @default small\n */\n size?: 'small' | 'large';\n /**\n * Overrides the toggle icon. Accepts any icon (an `Icon` element or a render\n * function `({ size }) => ReactNode`). When set, it replaces the default\n * plus/chevron and rotates on open/close like the built-in chevron.\n */\n icon?: Enhancer;\n /** Whether the Accordion is open. If provided, the Accordion will be a controlled component. */\n isOpen?: boolean;\n /** A handler for when the Accordion state changes. */\n onOpenChange?: (open: boolean) => void | Promise<void>;\n /** The collapsible contents of the Accordion. */\n children?: ReactNode;\n overrides?: {\n container?: ComponentPropsWithoutRef<'div'>;\n titleContainer?: ComponentPropsWithoutRef<'div'>;\n dropdownContainer?: ComponentPropsWithoutRef<'div'>;\n dropdownContent?: ComponentPropsWithoutRef<'div'>;\n };\n};\n\n/**\n * A Accordion component.\n *\n * <hr />\n *\n * To use this component, import it as follows:\n *\n * ```js\n * import { Accordion } from 'paris/accordion';\n * ```\n * @constructor\n */\nexport const Accordion: FC<AccordionProps> = ({\n title,\n kind = 'default',\n size = 'small',\n icon,\n isOpen,\n onOpenChange,\n children,\n overrides,\n}) => {\n const [openState, setOpenState] = useState(isOpen ?? false);\n\n // Determine if component is controlled or uncontrolled\n const isControlled = isOpen !== undefined;\n const open = isControlled ? isOpen : openState;\n\n // Unified toggle handler that works for both controlled and uncontrolled modes\n const handleToggle = () => {\n const newOpen = !open;\n\n // Update internal state only if uncontrolled\n if (!isControlled) {\n setOpenState(newOpen);\n }\n\n // Always call the callback if provided\n onOpenChange?.(newOpen);\n };\n\n return (\n <div\n {...overrides?.container}\n className={clsx(styles[kind], open && styles.open, overrides?.container?.className)}\n >\n <div\n onClick={handleToggle}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n handleToggle();\n }\n }}\n role=\"button\"\n tabIndex={0}\n {...overrides?.titleContainer}\n data-state={open ? 'open' : 'closed'}\n className={clsx(overrides?.titleContainer?.className, styles.title, styles[size], open && styles.open)}\n >\n <TextWhenString kind=\"paragraphSmall\" weight=\"medium\">\n {title}\n </TextWhenString>\n {icon ? (\n <span className={clsx(styles.toggleIcon, open && styles.open)}>{renderEnhancer(icon, 16)}</span>\n ) : kind === 'default' ? (\n <div className={styles.plusIcon}>\n <FontAwesomeIcon icon={faPlus} className={clsx(open && styles.open)} />\n </div>\n ) : (\n <Icon icon={ChevronRight} size={16} className={clsx(styles.chevron, open && styles.open)} />\n )}\n </div>\n {/*\n * Collapse uses the CSS grid-rows trick (`1fr` → `0fr`) instead of\n * animating `height: auto` via JS. JS height-auto animations flash an\n * intermediate layout state on open/close that causes scrollable\n * ancestors to clamp `scrollTop` to 0 in the first paint frame — a\n * visible scroll-snap before the animation starts.\n */}\n <div\n aria-hidden={!open}\n {...overrides?.dropdownContainer}\n className={clsx(styles.dropdown, open && styles.open, overrides?.dropdownContainer?.className)}\n >\n {/*\n * dropdownClip is the grid item. It owns `min-height: 0` and\n * `overflow: hidden` so the parent's `grid-template-rows: 0fr`\n * can fully collapse to 0 height. Padding/background-color\n * stay on .dropdownContent (one level deeper) so they don't\n * extend the grid item's box when closed.\n */}\n <div className={styles.dropdownClip}>\n <div\n {...overrides?.dropdownContent}\n className={clsx(styles.dropdownContent, styles[size], overrides?.dropdownContent?.className)}\n >\n <TextWhenString kind=\"paragraphXSmall\">{children}</TextWhenString>\n </div>\n </div>\n </div>\n </div>\n );\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
.paris_toggleIcon_Aqg7R {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
padding: 2px;
|
|
5
|
+
transition: transform var(--pte-animations-duration-gradual) var(--pte-animations-timing-easeInOutExpo);
|
|
6
|
+
transform: rotate(0);
|
|
7
|
+
}
|
|
8
|
+
.paris_toggleIcon_Aqg7R.paris_open_Anlum {
|
|
9
|
+
transform: rotate(-180deg);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.paris_default_3a5AQ {
|
|
13
|
+
color: var(--pte-new-colors-contentPrimary);
|
|
14
|
+
border-bottom: 1px solid var(--pte-new-colors-borderMedium);
|
|
15
|
+
cursor: pointer;
|
|
16
|
+
transition: all var(--pte-animations-duration-relaxed) var(--pte-animations-timing-easeInOutExpo);
|
|
17
|
+
}
|
|
18
|
+
.paris_default_3a5AQ .paris_title_quAkj {
|
|
19
|
+
padding: 16px 0;
|
|
20
|
+
display: flex;
|
|
21
|
+
justify-content: space-between;
|
|
22
|
+
align-items: center;
|
|
23
|
+
font-size: 16px;
|
|
24
|
+
font-weight: var(--pte-typography-fontWeights-medium);
|
|
25
|
+
border-bottom: 1px solid transparent;
|
|
26
|
+
transition: border-bottom-color var(--pte-animations-duration-gradual) var(--pte-animations-timing-easeInOutExpo);
|
|
27
|
+
}
|
|
28
|
+
.paris_default_3a5AQ .paris_title_quAkj.paris_open_Anlum {
|
|
29
|
+
border-bottom-color: var(--pte-new-colors-borderMedium);
|
|
30
|
+
}
|
|
31
|
+
.paris_default_3a5AQ .paris_plusIcon_vUae0 {
|
|
32
|
+
margin-left: 4px;
|
|
33
|
+
}
|
|
34
|
+
.paris_default_3a5AQ .paris_plusIcon_vUae0 svg {
|
|
35
|
+
transition: transform var(--pte-animations-duration-gradual) var(--pte-animations-timing-easeInOutExpo);
|
|
36
|
+
transform: rotate(0);
|
|
37
|
+
width: 16px;
|
|
38
|
+
height: 16px;
|
|
39
|
+
}
|
|
40
|
+
.paris_default_3a5AQ .paris_plusIcon_vUae0 svg.paris_open_Anlum {
|
|
41
|
+
transform: rotate(135deg) !important;
|
|
42
|
+
}
|
|
43
|
+
.paris_default_3a5AQ .paris_dropdown_UIy8m {
|
|
44
|
+
display: grid;
|
|
45
|
+
grid-template-rows: 0fr;
|
|
46
|
+
opacity: 0;
|
|
47
|
+
cursor: auto;
|
|
48
|
+
transition: grid-template-rows 800ms cubic-bezier(0.87, 0, 0.13, 1), opacity 800ms cubic-bezier(0.87, 0, 0.13, 1);
|
|
49
|
+
}
|
|
50
|
+
.paris_default_3a5AQ .paris_dropdown_UIy8m.paris_open_Anlum {
|
|
51
|
+
grid-template-rows: 1fr;
|
|
52
|
+
opacity: 1;
|
|
53
|
+
}
|
|
54
|
+
.paris_default_3a5AQ .paris_dropdownClip_8uEEp {
|
|
55
|
+
min-height: 0;
|
|
56
|
+
overflow: hidden;
|
|
57
|
+
}
|
|
58
|
+
.paris_default_3a5AQ .paris_dropdownContent_DWSoM {
|
|
59
|
+
padding: 12px;
|
|
60
|
+
display: flex;
|
|
61
|
+
flex-direction: column;
|
|
62
|
+
gap: 12px;
|
|
63
|
+
background-color: var(--pte-new-colors-overlaySubtle);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.paris_card_hzays {
|
|
67
|
+
color: var(--pte-new-colors-contentPrimary);
|
|
68
|
+
border: 1px solid var(--pte-new-colors-borderStrong);
|
|
69
|
+
border-radius: var(--pte-new-borders-radius-roundedMedium);
|
|
70
|
+
background: var(--pte-new-colors-surfacePrimary);
|
|
71
|
+
cursor: pointer;
|
|
72
|
+
transition: var(--pte-animations-interaction);
|
|
73
|
+
}
|
|
74
|
+
.paris_card_hzays.paris_open_Anlum {
|
|
75
|
+
border-color: var(--pte-new-colors-borderUltrastrong);
|
|
76
|
+
}
|
|
77
|
+
.paris_card_hzays .paris_title_quAkj {
|
|
78
|
+
padding: 10px 12px;
|
|
79
|
+
display: flex;
|
|
80
|
+
justify-content: space-between;
|
|
81
|
+
align-items: center;
|
|
82
|
+
gap: 10px;
|
|
83
|
+
background-color: var(--pte-new-colors-overlayWhiteSubtle);
|
|
84
|
+
border-bottom: 1px solid transparent;
|
|
85
|
+
transition: var(--pte-animations-interaction);
|
|
86
|
+
}
|
|
87
|
+
.paris_card_hzays .paris_title_quAkj.paris_large_GVtpa {
|
|
88
|
+
padding: 14px 16px;
|
|
89
|
+
}
|
|
90
|
+
.paris_card_hzays .paris_title_quAkj.paris_open_Anlum {
|
|
91
|
+
background-color: var(--pte-new-colors-overlayMedium);
|
|
92
|
+
border-bottom-color: var(--pte-new-colors-borderStrong);
|
|
93
|
+
}
|
|
94
|
+
.paris_card_hzays .paris_title_quAkj:hover {
|
|
95
|
+
background-color: var(--pte-new-colors-overlayStrong);
|
|
96
|
+
}
|
|
97
|
+
.paris_card_hzays .paris_chevron_MRAbS {
|
|
98
|
+
padding: 2px;
|
|
99
|
+
transition: transform var(--pte-animations-duration-gradual) var(--pte-animations-timing-easeInOutExpo);
|
|
100
|
+
transform: rotate(90deg);
|
|
101
|
+
}
|
|
102
|
+
.paris_card_hzays .paris_chevron_MRAbS.paris_open_Anlum {
|
|
103
|
+
transform: rotate(-90deg);
|
|
104
|
+
}
|
|
105
|
+
.paris_card_hzays .paris_dropdown_UIy8m {
|
|
106
|
+
display: grid;
|
|
107
|
+
grid-template-rows: 0fr;
|
|
108
|
+
opacity: 0;
|
|
109
|
+
cursor: auto;
|
|
110
|
+
transition: grid-template-rows 800ms cubic-bezier(0.87, 0, 0.13, 1), opacity 800ms cubic-bezier(0.87, 0, 0.13, 1);
|
|
111
|
+
}
|
|
112
|
+
.paris_card_hzays .paris_dropdown_UIy8m.paris_open_Anlum {
|
|
113
|
+
grid-template-rows: 1fr;
|
|
114
|
+
opacity: 1;
|
|
115
|
+
}
|
|
116
|
+
.paris_card_hzays .paris_dropdownClip_8uEEp {
|
|
117
|
+
min-height: 0;
|
|
118
|
+
overflow: hidden;
|
|
119
|
+
}
|
|
120
|
+
.paris_card_hzays .paris_dropdownContent_DWSoM {
|
|
121
|
+
padding: 12px;
|
|
122
|
+
display: flex;
|
|
123
|
+
flex-direction: column;
|
|
124
|
+
gap: 12px;
|
|
125
|
+
background-color: var(--pte-new-colors-overlayWhiteSubtle);
|
|
126
|
+
}
|
|
127
|
+
.paris_card_hzays .paris_dropdownContent_DWSoM.paris_large_GVtpa {
|
|
128
|
+
padding: 16px;
|
|
129
|
+
gap: 16px;
|
|
130
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import './Accordion.module.css';const toggleIcon = "paris_toggleIcon_Aqg7R";
|
|
2
|
+
const open = "paris_open_Anlum";
|
|
3
|
+
const title = "paris_title_quAkj";
|
|
4
|
+
const plusIcon = "paris_plusIcon_vUae0";
|
|
5
|
+
const dropdown = "paris_dropdown_UIy8m";
|
|
6
|
+
const dropdownClip = "paris_dropdownClip_8uEEp";
|
|
7
|
+
const dropdownContent = "paris_dropdownContent_DWSoM";
|
|
8
|
+
const card = "paris_card_hzays";
|
|
9
|
+
const large = "paris_large_GVtpa";
|
|
10
|
+
const chevron = "paris_chevron_MRAbS";
|
|
11
|
+
const styles = {
|
|
12
|
+
toggleIcon: toggleIcon,
|
|
13
|
+
open: open,
|
|
14
|
+
"default": "paris_default_3a5AQ",
|
|
15
|
+
title: title,
|
|
16
|
+
plusIcon: plusIcon,
|
|
17
|
+
dropdown: dropdown,
|
|
18
|
+
dropdownClip: dropdownClip,
|
|
19
|
+
dropdownContent: dropdownContent,
|
|
20
|
+
card: card,
|
|
21
|
+
large: large,
|
|
22
|
+
chevron: chevron
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export { card, chevron, styles as default, dropdown, dropdownClip, dropdownContent, large, open, plusIcon, title, toggleIcon };
|
|
26
|
+
//# sourceMappingURL=Accordion.module.scss.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Accordion.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|