@seed-design/react 1.2.15 → 2.0.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/lib/components/Accordion/Accordion.cjs +42 -0
- package/lib/components/Accordion/Accordion.d.ts +35 -0
- package/lib/components/Accordion/Accordion.d.ts.map +1 -0
- package/lib/components/Accordion/Accordion.js +32 -0
- package/lib/components/Accordion/Accordion.namespace.cjs +22 -0
- package/lib/components/Accordion/Accordion.namespace.d.ts +2 -0
- package/lib/components/Accordion/Accordion.namespace.d.ts.map +1 -0
- package/lib/components/Accordion/Accordion.namespace.js +17 -0
- package/lib/components/Accordion/index.cjs +19 -0
- package/lib/components/Accordion/index.d.ts +3 -0
- package/lib/components/Accordion/index.d.ts.map +1 -0
- package/lib/components/Accordion/index.js +3 -0
- package/lib/components/ActionButton/ActionButton.cjs +1 -1
- package/lib/components/ActionButton/ActionButton.d.ts +1 -1
- package/lib/components/ActionButton/ActionButton.d.ts.map +1 -1
- package/lib/components/ActionButton/ActionButton.js +1 -1
- package/lib/components/ActionSheet/ActionSheet.cjs +12 -12
- package/lib/components/ActionSheet/ActionSheet.d.ts +22 -22
- package/lib/components/ActionSheet/ActionSheet.js +12 -12
- package/lib/components/Article/Article.d.ts +2 -3
- package/lib/components/Article/Article.d.ts.map +1 -1
- package/lib/components/AspectRatio/AspectRatio.d.ts +2 -2
- package/lib/components/AspectRatio/AspectRatio.d.ts.map +1 -1
- package/lib/components/AttachmentDisplay/AttachmentDisplay.cjs +63 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplay.d.ts +43 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplay.d.ts.map +1 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplay.js +49 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplay.namespace.cjs +37 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplay.namespace.d.ts +5 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplay.namespace.d.ts.map +1 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplay.namespace.js +32 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayItem.cjs +110 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayItem.d.ts +30 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayItem.d.ts.map +1 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayItem.js +100 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayTrigger.cjs +50 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayTrigger.d.ts +18 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayTrigger.d.ts.map +1 -0
- package/lib/components/AttachmentDisplay/AttachmentDisplayTrigger.js +45 -0
- package/lib/components/AttachmentDisplay/index.cjs +34 -0
- package/lib/components/AttachmentDisplay/index.d.ts +6 -0
- package/lib/components/AttachmentDisplay/index.d.ts.map +1 -0
- package/lib/components/AttachmentDisplay/index.js +5 -0
- package/lib/components/AttachmentInput/AttachmentInput.cjs +37 -0
- package/lib/components/AttachmentInput/AttachmentInput.d.ts +23 -0
- package/lib/components/AttachmentInput/AttachmentInput.d.ts.map +1 -0
- package/lib/components/AttachmentInput/AttachmentInput.js +30 -0
- package/lib/components/AttachmentInput/AttachmentInput.namespace.cjs +35 -0
- package/lib/components/AttachmentInput/AttachmentInput.namespace.d.ts +6 -0
- package/lib/components/AttachmentInput/AttachmentInput.namespace.d.ts.map +1 -0
- package/lib/components/AttachmentInput/AttachmentInput.namespace.js +30 -0
- package/lib/components/AttachmentInput/AttachmentInput.test.d.ts +2 -0
- package/lib/components/AttachmentInput/AttachmentInput.test.d.ts.map +1 -0
- package/lib/components/AttachmentInput/AttachmentInputDropzone.cjs +12 -0
- package/lib/components/AttachmentInput/AttachmentInputDropzone.d.ts +9 -0
- package/lib/components/AttachmentInput/AttachmentInputDropzone.d.ts.map +1 -0
- package/lib/components/AttachmentInput/AttachmentInputDropzone.js +10 -0
- package/lib/components/AttachmentInput/AttachmentInputItem.cjs +138 -0
- package/lib/components/AttachmentInput/AttachmentInputItem.d.ts +36 -0
- package/lib/components/AttachmentInput/AttachmentInputItem.d.ts.map +1 -0
- package/lib/components/AttachmentInput/AttachmentInputItem.js +126 -0
- package/lib/components/AttachmentInput/AttachmentInputTrigger.cjs +54 -0
- package/lib/components/AttachmentInput/AttachmentInputTrigger.d.ts +21 -0
- package/lib/components/AttachmentInput/AttachmentInputTrigger.d.ts.map +1 -0
- package/lib/components/AttachmentInput/AttachmentInputTrigger.js +49 -0
- package/lib/components/AttachmentInput/index.cjs +32 -0
- package/lib/components/AttachmentInput/index.d.ts +7 -0
- package/lib/components/AttachmentInput/index.d.ts.map +1 -0
- package/lib/components/AttachmentInput/index.js +6 -0
- package/lib/components/BottomSheet/BottomSheet.cjs +36 -9
- package/lib/components/BottomSheet/BottomSheet.d.ts +2 -7
- package/lib/components/BottomSheet/BottomSheet.d.ts.map +1 -1
- package/lib/components/BottomSheet/BottomSheet.js +35 -9
- package/lib/components/Box/Box.cjs +10 -3
- package/lib/components/Box/Box.d.ts +4 -2
- package/lib/components/Box/Box.d.ts.map +1 -1
- package/lib/components/Box/Box.js +10 -3
- package/lib/components/Checkbox/Checkbox.cjs +2 -6
- package/lib/components/Checkbox/Checkbox.d.ts +1 -7
- package/lib/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/lib/components/Checkbox/Checkbox.js +2 -6
- package/lib/components/Chip/Chip.cjs +1 -1
- package/lib/components/Chip/Chip.js +1 -1
- package/lib/components/ChipTabs/ChipTabs.cjs +0 -1
- package/lib/components/ChipTabs/ChipTabs.d.ts.map +1 -1
- package/lib/components/ChipTabs/ChipTabs.js +0 -1
- package/lib/components/Columns/Columns.d.ts +4 -4
- package/lib/components/Columns/Columns.d.ts.map +1 -1
- package/lib/components/ExtendedActionSheet/ExtendedActionSheet.cjs +13 -13
- package/lib/components/ExtendedActionSheet/ExtendedActionSheet.d.ts +24 -24
- package/lib/components/ExtendedActionSheet/ExtendedActionSheet.js +13 -13
- package/lib/components/FieldButton/FieldButton.cjs +22 -3
- package/lib/components/FieldButton/FieldButton.d.ts +3 -2
- package/lib/components/FieldButton/FieldButton.d.ts.map +1 -1
- package/lib/components/FieldButton/FieldButton.js +23 -3
- package/lib/components/Flex/Flex.d.ts +5 -3
- package/lib/components/Flex/Flex.d.ts.map +1 -1
- package/lib/components/Footer/Footer.namespace.cjs +11 -0
- package/lib/components/Footer/Footer.namespace.d.ts +2 -0
- package/lib/components/Footer/Footer.namespace.d.ts.map +1 -0
- package/lib/components/Footer/Footer.namespace.js +6 -0
- package/lib/components/Footer/FooterLinkText.cjs +23 -0
- package/lib/components/Footer/FooterLinkText.d.ts +7 -0
- package/lib/components/Footer/FooterLinkText.d.ts.map +1 -0
- package/lib/components/Footer/FooterLinkText.js +20 -0
- package/lib/components/Footer/index.cjs +10 -0
- package/lib/components/Footer/index.d.ts +3 -0
- package/lib/components/Footer/index.d.ts.map +1 -0
- package/lib/components/Footer/index.js +3 -0
- package/lib/components/Grid/Grid.cjs +7 -2
- package/lib/components/Grid/Grid.d.ts +7 -5
- package/lib/components/Grid/Grid.d.ts.map +1 -1
- package/lib/components/Grid/Grid.js +7 -2
- package/lib/components/GridItem/GridItem.d.ts +3 -2
- package/lib/components/GridItem/GridItem.d.ts.map +1 -1
- package/lib/components/HelpBubble/HelpBubble.cjs +4 -7
- package/lib/components/HelpBubble/HelpBubble.d.ts.map +1 -1
- package/lib/components/HelpBubble/HelpBubble.js +4 -7
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.cjs +64 -0
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.d.ts +60 -0
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.d.ts.map +1 -0
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.js +52 -0
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.namespace.cjs +23 -0
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.namespace.d.ts +2 -0
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.namespace.d.ts.map +1 -0
- package/lib/components/HelpBubbleTooltip/HelpBubbleTooltip.namespace.js +18 -0
- package/lib/components/HelpBubbleTooltip/index.cjs +20 -0
- package/lib/components/HelpBubbleTooltip/index.d.ts +3 -0
- package/lib/components/HelpBubbleTooltip/index.d.ts.map +1 -0
- package/lib/components/HelpBubbleTooltip/index.js +3 -0
- package/lib/components/Icon/Icon.d.ts +2 -1
- package/lib/components/Icon/Icon.d.ts.map +1 -1
- package/lib/components/ImageFrame/ImageFrame.cjs +3 -2
- package/lib/components/ImageFrame/ImageFrame.d.ts +3 -8
- package/lib/components/ImageFrame/ImageFrame.d.ts.map +1 -1
- package/lib/components/ImageFrame/ImageFrame.js +3 -2
- package/lib/components/Inline/Inline.d.ts +2 -2
- package/lib/components/Inline/Inline.d.ts.map +1 -1
- package/lib/components/Layout/Layout.cjs +12 -0
- package/lib/components/Layout/Layout.d.ts +10 -0
- package/lib/components/Layout/Layout.d.ts.map +1 -0
- package/lib/components/Layout/Layout.js +10 -0
- package/lib/components/Layout/Layout.namespace.cjs +14 -0
- package/lib/components/Layout/Layout.namespace.d.ts +2 -0
- package/lib/components/Layout/Layout.namespace.d.ts.map +1 -0
- package/lib/components/Layout/Layout.namespace.js +9 -0
- package/lib/components/Layout/index.cjs +11 -0
- package/lib/components/Layout/index.d.ts +3 -0
- package/lib/components/Layout/index.d.ts.map +1 -0
- package/lib/components/Layout/index.js +3 -0
- package/lib/components/List/List.cjs +1 -1
- package/lib/components/List/List.d.ts +1 -1
- package/lib/components/List/List.d.ts.map +1 -1
- package/lib/components/List/List.js +1 -1
- package/lib/components/Menu/Menu.cjs +76 -0
- package/lib/components/Menu/Menu.d.ts +42 -0
- package/lib/components/Menu/Menu.d.ts.map +1 -0
- package/lib/components/Menu/Menu.js +62 -0
- package/lib/components/Menu/Menu.namespace.cjs +24 -0
- package/lib/components/Menu/Menu.namespace.d.ts +2 -0
- package/lib/components/Menu/Menu.namespace.d.ts.map +1 -0
- package/lib/components/Menu/Menu.namespace.js +19 -0
- package/lib/components/Menu/index.cjs +21 -0
- package/lib/components/Menu/index.d.ts +3 -0
- package/lib/components/Menu/index.d.ts.map +1 -0
- package/lib/components/Menu/index.js +3 -0
- package/lib/components/MenuSheet/MenuSheet.cjs +48 -0
- package/lib/components/MenuSheet/MenuSheet.d.ts +96 -0
- package/lib/components/MenuSheet/MenuSheet.d.ts.map +1 -1
- package/lib/components/MenuSheet/MenuSheet.js +48 -0
- package/lib/components/NavigationMenu/NavigationMenu.cjs +76 -0
- package/lib/components/NavigationMenu/NavigationMenu.d.ts +42 -0
- package/lib/components/NavigationMenu/NavigationMenu.d.ts.map +1 -0
- package/lib/components/NavigationMenu/NavigationMenu.js +62 -0
- package/lib/components/NavigationMenu/NavigationMenu.namespace.cjs +24 -0
- package/lib/components/NavigationMenu/NavigationMenu.namespace.d.ts +2 -0
- package/lib/components/NavigationMenu/NavigationMenu.namespace.d.ts.map +1 -0
- package/lib/components/NavigationMenu/NavigationMenu.namespace.js +19 -0
- package/lib/components/NavigationMenu/index.cjs +21 -0
- package/lib/components/NavigationMenu/index.d.ts +3 -0
- package/lib/components/NavigationMenu/index.d.ts.map +1 -0
- package/lib/components/NavigationMenu/index.js +3 -0
- package/lib/components/RadioGroup/RadioGroup.cjs +1 -1
- package/lib/components/RadioGroup/RadioGroup.js +1 -1
- package/lib/components/ResponsivePair/ResponsivePair.cjs +8 -5
- package/lib/components/ResponsivePair/ResponsivePair.d.ts +3 -2
- package/lib/components/ResponsivePair/ResponsivePair.d.ts.map +1 -1
- package/lib/components/ResponsivePair/ResponsivePair.js +8 -5
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.cjs +184 -0
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.d.ts +65 -0
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.d.ts.map +1 -0
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.js +170 -0
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.namespace.cjs +24 -0
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.namespace.d.ts +2 -0
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.namespace.d.ts.map +1 -0
- package/lib/components/ResponsiveSidePanel/ResponsiveSidePanel.namespace.js +19 -0
- package/lib/components/ResponsiveSidePanel/index.cjs +22 -0
- package/lib/components/ResponsiveSidePanel/index.d.ts +3 -0
- package/lib/components/ResponsiveSidePanel/index.d.ts.map +1 -0
- package/lib/components/ResponsiveSidePanel/index.js +3 -0
- package/lib/components/SelectBox/CheckSelectBox.cjs +2 -2
- package/lib/components/SelectBox/CheckSelectBox.d.ts +1 -1
- package/lib/components/SelectBox/CheckSelectBox.d.ts.map +1 -1
- package/lib/components/SelectBox/CheckSelectBox.js +1 -1
- package/lib/components/SideNavigation/SideNavigation.cjs +175 -0
- package/lib/components/SideNavigation/SideNavigation.d.ts +59 -0
- package/lib/components/SideNavigation/SideNavigation.d.ts.map +1 -0
- package/lib/components/SideNavigation/SideNavigation.js +157 -0
- package/lib/components/SideNavigation/SideNavigation.namespace.cjs +28 -0
- package/lib/components/SideNavigation/SideNavigation.namespace.d.ts +3 -0
- package/lib/components/SideNavigation/SideNavigation.namespace.d.ts.map +1 -0
- package/lib/components/SideNavigation/SideNavigation.namespace.js +23 -0
- package/lib/components/SideNavigation/index.cjs +25 -0
- package/lib/components/SideNavigation/index.d.ts +4 -0
- package/lib/components/SideNavigation/index.d.ts.map +1 -0
- package/lib/components/SideNavigation/index.js +3 -0
- package/lib/components/SidePanel/SidePanel.cjs +100 -0
- package/lib/components/SidePanel/SidePanel.d.ts +41 -0
- package/lib/components/SidePanel/SidePanel.d.ts.map +1 -0
- package/lib/components/SidePanel/SidePanel.js +87 -0
- package/lib/components/SidePanel/SidePanel.namespace.cjs +23 -0
- package/lib/components/SidePanel/SidePanel.namespace.d.ts +2 -0
- package/lib/components/SidePanel/SidePanel.namespace.d.ts.map +1 -0
- package/lib/components/SidePanel/SidePanel.namespace.js +18 -0
- package/lib/components/SidePanel/index.cjs +20 -0
- package/lib/components/SidePanel/index.d.ts +3 -0
- package/lib/components/SidePanel/index.d.ts.map +1 -0
- package/lib/components/SidePanel/index.js +3 -0
- package/lib/components/Slider/Slider.cjs +2 -2
- package/lib/components/Slider/Slider.js +2 -2
- package/lib/components/Snackbar/Snackbar.cjs +2 -2
- package/lib/components/Snackbar/Snackbar.d.ts +1 -1
- package/lib/components/Snackbar/Snackbar.d.ts.map +1 -1
- package/lib/components/Snackbar/Snackbar.js +2 -2
- package/lib/components/Stack/Stack.d.ts +4 -6
- package/lib/components/Stack/Stack.d.ts.map +1 -1
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.cjs +123 -0
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.d.ts +60 -0
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.d.ts.map +1 -0
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.js +104 -0
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.namespace.cjs +29 -0
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.namespace.d.ts +2 -0
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.namespace.d.ts.map +1 -0
- package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.namespace.js +24 -0
- package/lib/components/SwipeableMenuSheet/index.cjs +26 -0
- package/lib/components/SwipeableMenuSheet/index.d.ts +3 -0
- package/lib/components/SwipeableMenuSheet/index.d.ts.map +1 -0
- package/lib/components/SwipeableMenuSheet/index.js +3 -0
- package/lib/components/Switch/Switch.cjs +1 -5
- package/lib/components/Switch/Switch.d.ts +1 -7
- package/lib/components/Switch/Switch.d.ts.map +1 -1
- package/lib/components/Switch/Switch.js +1 -5
- package/lib/components/TagGroup/TagGroup.cjs +1 -1
- package/lib/components/TagGroup/TagGroup.js +1 -1
- package/lib/components/TextField/TextField.cjs +1 -1
- package/lib/components/TextField/TextField.js +1 -1
- package/lib/components/index.cjs +249 -0
- package/lib/components/index.d.ts +12 -0
- package/lib/components/index.d.ts.map +1 -1
- package/lib/components/index.js +30 -1
- package/lib/components/private/useDismissible.d.ts +6 -6
- package/lib/hooks/useBreakpoint.cjs +15 -0
- package/lib/hooks/useBreakpoint.d.ts +12 -0
- package/lib/hooks/useBreakpoint.d.ts.map +1 -0
- package/lib/hooks/useBreakpoint.js +13 -0
- package/lib/hooks/useBreakpoint.test.d.ts +2 -0
- package/lib/hooks/useBreakpoint.test.d.ts.map +1 -0
- package/lib/hooks/useBreakpointValue.cjs +23 -0
- package/lib/hooks/useBreakpointValue.d.ts +8 -0
- package/lib/hooks/useBreakpointValue.d.ts.map +1 -0
- package/lib/hooks/useBreakpointValue.js +22 -0
- package/lib/hooks/useBreakpointValue.test.d.ts +2 -0
- package/lib/hooks/useBreakpointValue.test.d.ts.map +1 -0
- package/lib/index.cjs +255 -0
- package/lib/index.d.ts +6 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +33 -1
- package/lib/primitive.cjs +45 -0
- package/lib/primitive.d.ts +5 -0
- package/lib/primitive.d.ts.map +1 -1
- package/lib/primitive.js +5 -0
- package/lib/primitives/breakpoint-store.cjs +52 -0
- package/lib/primitives/breakpoint-store.d.ts +7 -0
- package/lib/primitives/breakpoint-store.d.ts.map +1 -0
- package/lib/primitives/breakpoint-store.js +50 -0
- package/lib/providers/BreakpointProvider.cjs +20 -0
- package/lib/providers/BreakpointProvider.d.ts +8 -0
- package/lib/providers/BreakpointProvider.d.ts.map +1 -0
- package/lib/providers/BreakpointProvider.js +19 -0
- package/lib/types/responsive.cjs +7 -0
- package/lib/types/responsive.d.ts +12 -0
- package/lib/types/responsive.d.ts.map +1 -0
- package/lib/types/responsive.js +7 -0
- package/lib/utils/createRenderTrackingContext.cjs +45 -0
- package/lib/utils/createRenderTrackingContext.d.ts +28 -0
- package/lib/utils/createRenderTrackingContext.d.ts.map +1 -0
- package/lib/utils/createRenderTrackingContext.js +44 -0
- package/lib/utils/getHelpBubbleArrowTipPath.cjs +14 -0
- package/lib/utils/getHelpBubbleArrowTipPath.d.ts +7 -0
- package/lib/utils/getHelpBubbleArrowTipPath.d.ts.map +1 -0
- package/lib/utils/getHelpBubbleArrowTipPath.js +14 -0
- package/lib/utils/styled.cjs +49 -75
- package/lib/utils/styled.d.ts +180 -62
- package/lib/utils/styled.d.ts.map +1 -1
- package/lib/utils/styled.js +49 -76
- package/package.json +33 -26
- package/src/components/Accordion/Accordion.namespace.ts +22 -0
- package/src/components/Accordion/Accordion.tsx +119 -0
- package/src/components/Accordion/index.ts +24 -0
- package/src/components/ActionButton/ActionButton.tsx +1 -1
- package/src/components/ActionSheet/ActionSheet.tsx +22 -22
- package/src/components/Article/Article.tsx +1 -1
- package/src/components/AspectRatio/AspectRatio.tsx +2 -2
- package/src/components/AttachmentDisplay/AttachmentDisplay.namespace.ts +57 -0
- package/src/components/AttachmentDisplay/AttachmentDisplay.tsx +165 -0
- package/src/components/AttachmentDisplay/AttachmentDisplayItem.tsx +204 -0
- package/src/components/AttachmentDisplay/AttachmentDisplayTrigger.tsx +82 -0
- package/src/components/AttachmentDisplay/index.ts +59 -0
- package/src/components/AttachmentInput/AttachmentInput.namespace.ts +54 -0
- package/src/components/AttachmentInput/AttachmentInput.test.tsx +161 -0
- package/src/components/AttachmentInput/AttachmentInput.tsx +77 -0
- package/src/components/AttachmentInput/AttachmentInputDropzone.tsx +25 -0
- package/src/components/AttachmentInput/AttachmentInputItem.tsx +246 -0
- package/src/components/AttachmentInput/AttachmentInputTrigger.tsx +85 -0
- package/src/components/AttachmentInput/index.ts +56 -0
- package/src/components/BottomSheet/BottomSheet.tsx +51 -22
- package/src/components/Box/Box.tsx +30 -7
- package/src/components/Checkbox/Checkbox.tsx +3 -31
- package/src/components/ChipTabs/ChipTabs.tsx +0 -6
- package/src/components/Columns/Columns.tsx +4 -3
- package/src/components/ExtendedActionSheet/ExtendedActionSheet.tsx +24 -24
- package/src/components/FieldButton/FieldButton.tsx +36 -8
- package/src/components/Flex/Flex.tsx +5 -3
- package/src/components/Footer/Footer.namespace.ts +4 -0
- package/src/components/Footer/FooterLinkText.tsx +23 -0
- package/src/components/Footer/index.ts +3 -0
- package/src/components/Grid/Grid.tsx +15 -8
- package/src/components/GridItem/GridItem.tsx +3 -2
- package/src/components/HelpBubble/HelpBubble.tsx +2 -5
- package/src/components/HelpBubbleTooltip/HelpBubbleTooltip.namespace.ts +24 -0
- package/src/components/HelpBubbleTooltip/HelpBubbleTooltip.tsx +169 -0
- package/src/components/HelpBubbleTooltip/index.ts +26 -0
- package/src/components/Icon/Icon.tsx +2 -1
- package/src/components/ImageFrame/ImageFrame.test.tsx +1 -3
- package/src/components/ImageFrame/ImageFrame.tsx +25 -23
- package/src/components/Inline/Inline.tsx +2 -1
- package/src/components/Layout/Layout.namespace.ts +6 -0
- package/src/components/Layout/Layout.tsx +21 -0
- package/src/components/Layout/index.ts +8 -0
- package/src/components/List/List.tsx +5 -1
- package/src/components/Menu/Menu.namespace.ts +26 -0
- package/src/components/Menu/Menu.tsx +157 -0
- package/src/components/Menu/index.ts +28 -0
- package/src/components/MenuSheet/MenuSheet.tsx +96 -0
- package/src/components/NavigationMenu/NavigationMenu.namespace.ts +26 -0
- package/src/components/NavigationMenu/NavigationMenu.tsx +172 -0
- package/src/components/NavigationMenu/index.ts +28 -0
- package/src/components/ResponsivePair/ResponsivePair.tsx +13 -7
- package/src/components/ResponsiveSidePanel/ResponsiveSidePanel.namespace.ts +26 -0
- package/src/components/ResponsiveSidePanel/ResponsiveSidePanel.tsx +316 -0
- package/src/components/ResponsiveSidePanel/index.ts +29 -0
- package/src/components/SelectBox/CheckSelectBox.tsx +1 -1
- package/src/components/SideNavigation/SideNavigation.namespace.ts +37 -0
- package/src/components/SideNavigation/SideNavigation.tsx +342 -0
- package/src/components/SideNavigation/index.ts +39 -0
- package/src/components/SidePanel/SidePanel.namespace.ts +24 -0
- package/src/components/SidePanel/SidePanel.tsx +216 -0
- package/src/components/SidePanel/index.ts +26 -0
- package/src/components/Snackbar/Snackbar.tsx +2 -4
- package/src/components/Stack/Stack.tsx +4 -3
- package/src/components/SwipeableMenuSheet/SwipeableMenuSheet.namespace.ts +36 -0
- package/src/components/SwipeableMenuSheet/SwipeableMenuSheet.tsx +269 -0
- package/src/components/SwipeableMenuSheet/index.ts +38 -0
- package/src/components/Switch/Switch.tsx +3 -26
- package/src/components/index.ts +12 -0
- package/src/hooks/useBreakpoint.test.tsx +94 -0
- package/src/hooks/useBreakpoint.ts +24 -0
- package/src/hooks/useBreakpointValue.test.tsx +102 -0
- package/src/hooks/useBreakpointValue.ts +33 -0
- package/src/index.ts +8 -0
- package/src/primitive.ts +5 -0
- package/src/primitives/breakpoint-store.ts +69 -0
- package/src/providers/BreakpointProvider.tsx +26 -0
- package/src/types/responsive.ts +19 -0
- package/src/utils/createRenderTrackingContext.tsx +50 -0
- package/src/utils/getHelpBubbleArrowTipPath.ts +11 -0
- package/src/utils/styled.tsx +387 -268
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
+
import type { DistributiveOmit } from "../../utils/styled";
|
|
2
3
|
import { Box, type BoxProps } from "../Box/Box";
|
|
3
4
|
|
|
4
|
-
export
|
|
5
|
+
export type GridItemProps = DistributiveOmit<BoxProps, "gridColumn" | "gridRow" | "gridArea"> & {
|
|
5
6
|
/**
|
|
6
7
|
* If true, the component will render its children directly without a wrapper element.
|
|
7
8
|
* @default false
|
|
@@ -39,7 +40,7 @@ export interface GridItemProps extends Omit<BoxProps, "gridColumn" | "gridRow" |
|
|
|
39
40
|
rowEnd?: number;
|
|
40
41
|
|
|
41
42
|
// NOTE: grid-area is not currently supported here: see Grid.tsx
|
|
42
|
-
}
|
|
43
|
+
};
|
|
43
44
|
|
|
44
45
|
export const GridItem = React.forwardRef<HTMLDivElement, GridItemProps>((props, ref) => {
|
|
45
46
|
const { asChild = false, colSpan, colStart, colEnd, rowSpan, rowStart, rowEnd, ...rest } = props;
|
|
@@ -5,6 +5,7 @@ import { forwardRef } from "react";
|
|
|
5
5
|
import { createSlotRecipeContext } from "../../utils/createSlotRecipeContext";
|
|
6
6
|
import { createWithStateProps } from "../../utils/createWithStateProps";
|
|
7
7
|
import { withStyleProps, type StyleProps } from "../../utils/styled";
|
|
8
|
+
import { getHelpBubbleArrowTipPath } from "../../utils/getHelpBubbleArrowTipPath";
|
|
8
9
|
import { composeRefs } from "@radix-ui/react-compose-refs";
|
|
9
10
|
import clsx from "clsx";
|
|
10
11
|
|
|
@@ -114,11 +115,7 @@ export const HelpBubbleArrowTip = forwardRef<SVGSVGElement, HelpBubbleArrowTipPr
|
|
|
114
115
|
const width = api.rects.arrowTip?.width || 0;
|
|
115
116
|
const height = api.rects.arrowTip?.height || 0;
|
|
116
117
|
|
|
117
|
-
const pathData =
|
|
118
|
-
H${width}
|
|
119
|
-
L${width / 2 + tipRadius},${height - tipRadius}
|
|
120
|
-
Q${width / 2},${height} ${width / 2 - tipRadius},${height - tipRadius}
|
|
121
|
-
Z`;
|
|
118
|
+
const pathData = getHelpBubbleArrowTipPath(width, height, tipRadius);
|
|
122
119
|
|
|
123
120
|
// TODO: mergeProps with api.stateProps
|
|
124
121
|
return (
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export {
|
|
2
|
+
HelpBubbleTooltipArrow as Arrow,
|
|
3
|
+
HelpBubbleTooltipArrowTip as ArrowTip,
|
|
4
|
+
HelpBubbleTooltipBody as Body,
|
|
5
|
+
HelpBubbleTooltipContent as Content,
|
|
6
|
+
HelpBubbleTooltipDelayGroup as DelayGroup,
|
|
7
|
+
HelpBubbleTooltipDescription as Description,
|
|
8
|
+
HelpBubbleTooltipPositioner as Positioner,
|
|
9
|
+
HelpBubbleTooltipPositionerPortal as PositionerPortal,
|
|
10
|
+
HelpBubbleTooltipRoot as Root,
|
|
11
|
+
HelpBubbleTooltipTitle as Title,
|
|
12
|
+
HelpBubbleTooltipTrigger as Trigger,
|
|
13
|
+
type HelpBubbleTooltipArrowProps as ArrowProps,
|
|
14
|
+
type HelpBubbleTooltipArrowTipProps as ArrowTipProps,
|
|
15
|
+
type HelpBubbleTooltipBodyProps as BodyProps,
|
|
16
|
+
type HelpBubbleTooltipContentProps as ContentProps,
|
|
17
|
+
type HelpBubbleTooltipDelayGroupProps as DelayGroupProps,
|
|
18
|
+
type HelpBubbleTooltipDescriptionProps as DescriptionProps,
|
|
19
|
+
type HelpBubbleTooltipPositionerProps as PositionerProps,
|
|
20
|
+
type HelpBubbleTooltipPositionerPortalProps as PositionerPortalProps,
|
|
21
|
+
type HelpBubbleTooltipRootProps as RootProps,
|
|
22
|
+
type HelpBubbleTooltipTitleProps as TitleProps,
|
|
23
|
+
type HelpBubbleTooltipTriggerProps as TriggerProps,
|
|
24
|
+
} from "./HelpBubbleTooltip";
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { Tooltip as TooltipPrimitive, useTooltipContext } from "@seed-design/react-tooltip";
|
|
2
|
+
import { Primitive, type PrimitiveProps } from "@seed-design/react-primitive";
|
|
3
|
+
import { helpBubble, type HelpBubbleVariantProps } from "@seed-design/css/recipes/help-bubble";
|
|
4
|
+
import { forwardRef } from "react";
|
|
5
|
+
import { createSlotRecipeContext } from "../../utils/createSlotRecipeContext";
|
|
6
|
+
import { createWithStateProps } from "../../utils/createWithStateProps";
|
|
7
|
+
import { withStyleProps, type StyleProps } from "../../utils/styled";
|
|
8
|
+
import { getHelpBubbleArrowTipPath } from "../../utils/getHelpBubbleArrowTipPath";
|
|
9
|
+
import { composeRefs } from "@radix-ui/react-compose-refs";
|
|
10
|
+
import clsx from "clsx";
|
|
11
|
+
|
|
12
|
+
const { withRootProvider, withContext, useClassNames } = createSlotRecipeContext(helpBubble);
|
|
13
|
+
const withStateProps = createWithStateProps([useTooltipContext]);
|
|
14
|
+
|
|
15
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
16
|
+
|
|
17
|
+
export interface HelpBubbleTooltipRootProps
|
|
18
|
+
extends HelpBubbleVariantProps,
|
|
19
|
+
TooltipPrimitive.RootProps {
|
|
20
|
+
/**
|
|
21
|
+
* @default "top"
|
|
22
|
+
*/
|
|
23
|
+
placement?: TooltipPrimitive.RootProps["placement"];
|
|
24
|
+
/**
|
|
25
|
+
* @default 4
|
|
26
|
+
*/
|
|
27
|
+
gutter?: TooltipPrimitive.RootProps["gutter"];
|
|
28
|
+
/**
|
|
29
|
+
* @default 16
|
|
30
|
+
*/
|
|
31
|
+
overflowPadding?: TooltipPrimitive.RootProps["overflowPadding"];
|
|
32
|
+
/**
|
|
33
|
+
* @default 14
|
|
34
|
+
*/
|
|
35
|
+
arrowPadding?: TooltipPrimitive.RootProps["arrowPadding"];
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export const HelpBubbleTooltipRoot = withRootProvider<HelpBubbleTooltipRootProps>(
|
|
39
|
+
TooltipPrimitive.Root,
|
|
40
|
+
{
|
|
41
|
+
defaultProps: {
|
|
42
|
+
placement: "top",
|
|
43
|
+
gutter: 4, // TODO: get value from rootage spec
|
|
44
|
+
overflowPadding: 16,
|
|
45
|
+
arrowPadding: 14,
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
51
|
+
|
|
52
|
+
export interface HelpBubbleTooltipTriggerProps extends TooltipPrimitive.TriggerProps {}
|
|
53
|
+
|
|
54
|
+
export const HelpBubbleTooltipTrigger = TooltipPrimitive.Trigger;
|
|
55
|
+
|
|
56
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
57
|
+
|
|
58
|
+
export interface HelpBubbleTooltipDelayGroupProps extends TooltipPrimitive.DelayGroupProps {}
|
|
59
|
+
|
|
60
|
+
export const HelpBubbleTooltipDelayGroup = TooltipPrimitive.DelayGroup;
|
|
61
|
+
|
|
62
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
63
|
+
|
|
64
|
+
export interface HelpBubbleTooltipPositionerProps extends TooltipPrimitive.PositionerProps {}
|
|
65
|
+
|
|
66
|
+
export const HelpBubbleTooltipPositioner = withContext<
|
|
67
|
+
HTMLDivElement,
|
|
68
|
+
HelpBubbleTooltipPositionerProps
|
|
69
|
+
>(TooltipPrimitive.Positioner, "positioner");
|
|
70
|
+
|
|
71
|
+
export interface HelpBubbleTooltipPositionerPortalProps
|
|
72
|
+
extends TooltipPrimitive.PositionerPortalProps {}
|
|
73
|
+
|
|
74
|
+
export const HelpBubbleTooltipPositionerPortal = withContext<
|
|
75
|
+
HTMLDivElement,
|
|
76
|
+
HelpBubbleTooltipPositionerPortalProps
|
|
77
|
+
>(TooltipPrimitive.PositionerPortal, "positioner");
|
|
78
|
+
|
|
79
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
80
|
+
|
|
81
|
+
export interface HelpBubbleTooltipContentProps
|
|
82
|
+
extends PrimitiveProps,
|
|
83
|
+
Pick<StyleProps, "maxWidth">,
|
|
84
|
+
React.HTMLAttributes<HTMLDivElement> {}
|
|
85
|
+
|
|
86
|
+
export const HelpBubbleTooltipContent = withContext<HTMLDivElement, HelpBubbleTooltipContentProps>(
|
|
87
|
+
withStyleProps(withStateProps(Primitive.div)),
|
|
88
|
+
"content",
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
92
|
+
|
|
93
|
+
export interface HelpBubbleTooltipArrowProps extends TooltipPrimitive.ArrowProps {}
|
|
94
|
+
|
|
95
|
+
export const HelpBubbleTooltipArrow = withContext<HTMLDivElement, HelpBubbleTooltipArrowProps>(
|
|
96
|
+
TooltipPrimitive.Arrow,
|
|
97
|
+
"arrow",
|
|
98
|
+
);
|
|
99
|
+
|
|
100
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
101
|
+
|
|
102
|
+
export interface HelpBubbleTooltipArrowTipProps extends React.SVGProps<SVGSVGElement> {
|
|
103
|
+
/**
|
|
104
|
+
* radius of the arrow tip
|
|
105
|
+
* @default 2
|
|
106
|
+
*/
|
|
107
|
+
tipRadius?: number;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export const HelpBubbleTooltipArrowTip = forwardRef<SVGSVGElement, HelpBubbleTooltipArrowTipProps>(
|
|
111
|
+
(props, ref) => {
|
|
112
|
+
const {
|
|
113
|
+
tipRadius = 2, // TODO: get value from rootage spec
|
|
114
|
+
className,
|
|
115
|
+
...otherProps
|
|
116
|
+
} = props;
|
|
117
|
+
const api = useTooltipContext();
|
|
118
|
+
|
|
119
|
+
const classNames = useClassNames();
|
|
120
|
+
|
|
121
|
+
const width = api.rects.arrowTip?.width || 0;
|
|
122
|
+
const height = api.rects.arrowTip?.height || 0;
|
|
123
|
+
|
|
124
|
+
const pathData = getHelpBubbleArrowTipPath(width, height, tipRadius);
|
|
125
|
+
|
|
126
|
+
// TODO: mergeProps with api.stateProps
|
|
127
|
+
return (
|
|
128
|
+
<svg
|
|
129
|
+
aria-hidden="true"
|
|
130
|
+
viewBox={`0 0 ${width} ${height}`}
|
|
131
|
+
ref={composeRefs(api.refs.arrowTip, ref)}
|
|
132
|
+
className={clsx(classNames.arrowTip, className)}
|
|
133
|
+
{...otherProps}
|
|
134
|
+
>
|
|
135
|
+
<path stroke="none" d={pathData} />
|
|
136
|
+
</svg>
|
|
137
|
+
);
|
|
138
|
+
},
|
|
139
|
+
);
|
|
140
|
+
HelpBubbleTooltipArrowTip.displayName = "HelpBubbleTooltipArrowTip";
|
|
141
|
+
|
|
142
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
143
|
+
|
|
144
|
+
export interface HelpBubbleTooltipBodyProps
|
|
145
|
+
extends PrimitiveProps,
|
|
146
|
+
React.HTMLAttributes<HTMLDivElement> {}
|
|
147
|
+
|
|
148
|
+
export const HelpBubbleTooltipBody = withContext<HTMLDivElement, HelpBubbleTooltipBodyProps>(
|
|
149
|
+
withStateProps(Primitive.div),
|
|
150
|
+
"body",
|
|
151
|
+
);
|
|
152
|
+
|
|
153
|
+
export interface HelpBubbleTooltipTitleProps
|
|
154
|
+
extends PrimitiveProps,
|
|
155
|
+
React.HTMLAttributes<HTMLSpanElement> {}
|
|
156
|
+
|
|
157
|
+
export const HelpBubbleTooltipTitle = withContext<HTMLSpanElement, HelpBubbleTooltipTitleProps>(
|
|
158
|
+
withStateProps(Primitive.span),
|
|
159
|
+
"title",
|
|
160
|
+
);
|
|
161
|
+
|
|
162
|
+
export interface HelpBubbleTooltipDescriptionProps
|
|
163
|
+
extends PrimitiveProps,
|
|
164
|
+
React.HTMLAttributes<HTMLDivElement> {}
|
|
165
|
+
|
|
166
|
+
export const HelpBubbleTooltipDescription = withContext<
|
|
167
|
+
HTMLDivElement,
|
|
168
|
+
HelpBubbleTooltipDescriptionProps
|
|
169
|
+
>(withStateProps(Primitive.div), "description");
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export {
|
|
2
|
+
HelpBubbleTooltipArrow,
|
|
3
|
+
HelpBubbleTooltipArrowTip,
|
|
4
|
+
HelpBubbleTooltipBody,
|
|
5
|
+
HelpBubbleTooltipContent,
|
|
6
|
+
HelpBubbleTooltipDelayGroup,
|
|
7
|
+
HelpBubbleTooltipDescription,
|
|
8
|
+
HelpBubbleTooltipPositioner,
|
|
9
|
+
HelpBubbleTooltipPositionerPortal,
|
|
10
|
+
HelpBubbleTooltipRoot,
|
|
11
|
+
HelpBubbleTooltipTitle,
|
|
12
|
+
HelpBubbleTooltipTrigger,
|
|
13
|
+
type HelpBubbleTooltipArrowProps,
|
|
14
|
+
type HelpBubbleTooltipArrowTipProps,
|
|
15
|
+
type HelpBubbleTooltipBodyProps,
|
|
16
|
+
type HelpBubbleTooltipContentProps,
|
|
17
|
+
type HelpBubbleTooltipDelayGroupProps,
|
|
18
|
+
type HelpBubbleTooltipDescriptionProps,
|
|
19
|
+
type HelpBubbleTooltipPositionerProps,
|
|
20
|
+
type HelpBubbleTooltipPositionerPortalProps,
|
|
21
|
+
type HelpBubbleTooltipRootProps,
|
|
22
|
+
type HelpBubbleTooltipTitleProps,
|
|
23
|
+
type HelpBubbleTooltipTriggerProps,
|
|
24
|
+
} from "./HelpBubbleTooltip";
|
|
25
|
+
|
|
26
|
+
export * as HelpBubbleTooltip from "./HelpBubbleTooltip.namespace";
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Slot } from "@radix-ui/react-slot";
|
|
2
2
|
import { useLayoutEffect } from "@radix-ui/react-use-layout-effect";
|
|
3
3
|
import { createContext, forwardRef, useCallback, useContext, useMemo, useRef } from "react";
|
|
4
|
+
import type { UnwrapResponsive } from "../../types/responsive";
|
|
4
5
|
import { handleColor, handleDimension, type StyleProps } from "../../utils/styled";
|
|
5
6
|
|
|
6
7
|
export interface PrefixIconProps {
|
|
@@ -108,7 +109,7 @@ export const IconRequired = ({
|
|
|
108
109
|
export interface IconProps {
|
|
109
110
|
svg: React.ReactNode;
|
|
110
111
|
|
|
111
|
-
size?: StyleProps["height"]
|
|
112
|
+
size?: UnwrapResponsive<StyleProps["height"]>;
|
|
112
113
|
|
|
113
114
|
color?: StyleProps["color"];
|
|
114
115
|
}
|
|
@@ -16,9 +16,7 @@ describe("ImageFrame", () => {
|
|
|
16
16
|
describe("ImageFrameReactionButton", () => {
|
|
17
17
|
it("renders the unselected icon by default", () => {
|
|
18
18
|
const classNames = imageFrameReactionButton();
|
|
19
|
-
const { getByRole, container } = setUp(
|
|
20
|
-
<ImageFrameReactionButton aria-label="Like image" />,
|
|
21
|
-
);
|
|
19
|
+
const { getByRole, container } = setUp(<ImageFrameReactionButton aria-label="Like image" />);
|
|
22
20
|
|
|
23
21
|
const button = getByRole("button", { name: "Like image" });
|
|
24
22
|
const lineIcon = container.querySelector(`.${classNames.lineIcon}`);
|
|
@@ -18,6 +18,7 @@ import { Toggle as TogglePrimitive, useToggleContext } from "@seed-design/react-
|
|
|
18
18
|
import clsx from "clsx";
|
|
19
19
|
import * as React from "react";
|
|
20
20
|
import { createSlotRecipeContext } from "../../utils/createSlotRecipeContext";
|
|
21
|
+
import type { DistributiveOmit } from "../../utils/styled";
|
|
21
22
|
import { AspectRatio, type AspectRatioProps } from "../AspectRatio/AspectRatio";
|
|
22
23
|
import { Badge, type BadgeProps } from "../Badge/Badge";
|
|
23
24
|
import { Float, type FloatProps } from "../Float/Float";
|
|
@@ -26,28 +27,21 @@ import { InternalIcon } from "../private/Icon";
|
|
|
26
27
|
|
|
27
28
|
////////////////////////////////////////////////////////////////////////////////////
|
|
28
29
|
|
|
29
|
-
export
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
referrerPolicy?: React.HTMLAttributeReferrerPolicy;
|
|
45
|
-
sizes?: string;
|
|
46
|
-
srcSet?: string;
|
|
47
|
-
onLoad?: React.ReactEventHandler<HTMLImageElement>;
|
|
48
|
-
onError?: React.ReactEventHandler<HTMLImageElement>;
|
|
49
|
-
children?: React.ReactNode;
|
|
50
|
-
}
|
|
30
|
+
export type ImageFrameProps = DistributiveOmit<AspectRatioProps, "children"> &
|
|
31
|
+
ImageFrameVariantProps & {
|
|
32
|
+
src: string;
|
|
33
|
+
alt: string;
|
|
34
|
+
fallback?: React.ReactNode;
|
|
35
|
+
loading?: "eager" | "lazy";
|
|
36
|
+
decoding?: "async" | "auto" | "sync";
|
|
37
|
+
crossOrigin?: "anonymous" | "use-credentials" | "";
|
|
38
|
+
referrerPolicy?: React.HTMLAttributeReferrerPolicy;
|
|
39
|
+
sizes?: string;
|
|
40
|
+
srcSet?: string;
|
|
41
|
+
onLoad?: React.ReactEventHandler<HTMLImageElement>;
|
|
42
|
+
onError?: React.ReactEventHandler<HTMLImageElement>;
|
|
43
|
+
children?: React.ReactNode;
|
|
44
|
+
};
|
|
51
45
|
|
|
52
46
|
export const ImageFrame = React.forwardRef<HTMLDivElement, ImageFrameProps>(
|
|
53
47
|
(
|
|
@@ -65,6 +59,7 @@ export const ImageFrame = React.forwardRef<HTMLDivElement, ImageFrameProps>(
|
|
|
65
59
|
srcSet,
|
|
66
60
|
onLoad,
|
|
67
61
|
onError,
|
|
62
|
+
borderRadius = "r2",
|
|
68
63
|
children,
|
|
69
64
|
...rest
|
|
70
65
|
},
|
|
@@ -74,7 +69,14 @@ export const ImageFrame = React.forwardRef<HTMLDivElement, ImageFrameProps>(
|
|
|
74
69
|
const classNames = imageFrameRecipe(variantProps);
|
|
75
70
|
|
|
76
71
|
return (
|
|
77
|
-
<AspectRatio
|
|
72
|
+
<AspectRatio
|
|
73
|
+
ref={ref}
|
|
74
|
+
ratio={ratio}
|
|
75
|
+
className={className}
|
|
76
|
+
borderRadius={borderRadius}
|
|
77
|
+
// splitVariantProps collapses the margin/bleed union; re-assert the shape.
|
|
78
|
+
{...(restProps as AspectRatioProps)}
|
|
79
|
+
>
|
|
78
80
|
<Image.Root className={classNames.root}>
|
|
79
81
|
<Image.Content
|
|
80
82
|
className={classNames.content}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
+
import type { DistributiveOmit } from "../../utils/styled";
|
|
2
3
|
import { Box, type BoxProps } from "../Box/Box";
|
|
3
4
|
|
|
4
5
|
/**
|
|
5
6
|
* @deprecated Use `HStack` instead.
|
|
6
7
|
*/
|
|
7
|
-
export
|
|
8
|
+
export type InlineProps = DistributiveOmit<BoxProps, "display" | "direction" | "flexWrap">;
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* @deprecated Use `HStack` instead.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type * as React from "react";
|
|
2
|
+
|
|
3
|
+
import { Primitive, type PrimitiveProps } from "@seed-design/react-primitive";
|
|
4
|
+
import { layout, type LayoutVariantProps } from "@seed-design/css/recipes/layout";
|
|
5
|
+
import { createSlotRecipeContext } from "../../utils/createSlotRecipeContext";
|
|
6
|
+
|
|
7
|
+
const { withProvider, withContext } = createSlotRecipeContext(layout);
|
|
8
|
+
|
|
9
|
+
export interface LayoutRootProps
|
|
10
|
+
extends LayoutVariantProps,
|
|
11
|
+
PrimitiveProps,
|
|
12
|
+
React.HTMLAttributes<HTMLDivElement> {}
|
|
13
|
+
|
|
14
|
+
export const LayoutRoot = withProvider<HTMLDivElement, LayoutRootProps>(Primitive.div, "root");
|
|
15
|
+
|
|
16
|
+
export interface LayoutContentProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {}
|
|
17
|
+
|
|
18
|
+
export const LayoutContent = withContext<HTMLDivElement, LayoutContentProps>(
|
|
19
|
+
Primitive.div,
|
|
20
|
+
"content",
|
|
21
|
+
);
|
|
@@ -18,7 +18,11 @@ const withStateProps = createWithStateProps([
|
|
|
18
18
|
{ useContext: useSwitchContext, strict: false },
|
|
19
19
|
]);
|
|
20
20
|
|
|
21
|
-
export interface ListRootProps
|
|
21
|
+
export interface ListRootProps
|
|
22
|
+
extends Omit<
|
|
23
|
+
VStackProps,
|
|
24
|
+
"bleed" | "bleedX" | "bleedY" | "bleedTop" | "bleedRight" | "bleedBottom" | "bleedLeft"
|
|
25
|
+
> {
|
|
22
26
|
itemBorderRadius?: StyleProps["borderRadius"];
|
|
23
27
|
}
|
|
24
28
|
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export {
|
|
2
|
+
MenuRoot as Root,
|
|
3
|
+
MenuAnchor as Anchor,
|
|
4
|
+
MenuTrigger as Trigger,
|
|
5
|
+
MenuPositioner as Positioner,
|
|
6
|
+
MenuContent as Content,
|
|
7
|
+
MenuScrollArea as ScrollArea,
|
|
8
|
+
MenuGroup as Group,
|
|
9
|
+
MenuGroupLabel as GroupLabel,
|
|
10
|
+
MenuItem as Item,
|
|
11
|
+
MenuItemBody as ItemBody,
|
|
12
|
+
MenuItemLabel as ItemLabel,
|
|
13
|
+
MenuItemDescription as ItemDescription,
|
|
14
|
+
type MenuRootProps as RootProps,
|
|
15
|
+
type MenuAnchorProps as AnchorProps,
|
|
16
|
+
type MenuTriggerProps as TriggerProps,
|
|
17
|
+
type MenuPositionerProps as PositionerProps,
|
|
18
|
+
type MenuContentProps as ContentProps,
|
|
19
|
+
type MenuScrollAreaProps as ScrollAreaProps,
|
|
20
|
+
type MenuGroupProps as GroupProps,
|
|
21
|
+
type MenuGroupLabelProps as GroupLabelProps,
|
|
22
|
+
type MenuItemProps as ItemProps,
|
|
23
|
+
type MenuItemBodyProps as ItemBodyProps,
|
|
24
|
+
type MenuItemLabelProps as ItemLabelProps,
|
|
25
|
+
type MenuItemDescriptionProps as ItemDescriptionProps,
|
|
26
|
+
} from "./Menu";
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { Menu as MenuPrimitive, useMenuContext, useMenuItemContext } from "@seed-design/react-menu";
|
|
4
|
+
import { menu, type MenuVariantProps } from "@seed-design/css/recipes/menu";
|
|
5
|
+
import { menuItem, type MenuItemVariantProps } from "@seed-design/css/recipes/menu-item";
|
|
6
|
+
import { Primitive, type PrimitiveProps } from "@seed-design/react-primitive";
|
|
7
|
+
import clsx from "clsx";
|
|
8
|
+
import * as React from "react";
|
|
9
|
+
import { createSlotRecipeContext } from "../../utils/createSlotRecipeContext";
|
|
10
|
+
import { createWithStateProps } from "../../utils/createWithStateProps";
|
|
11
|
+
|
|
12
|
+
const { ClassNamesProvider, withContext, useClassNames } = createSlotRecipeContext(menu);
|
|
13
|
+
const {
|
|
14
|
+
PropsProvider: ItemPropsProvider,
|
|
15
|
+
useProps: useItemProps,
|
|
16
|
+
withContext: withItemContext,
|
|
17
|
+
ClassNamesProvider: ItemClassNamesProvider,
|
|
18
|
+
} = createSlotRecipeContext(menuItem);
|
|
19
|
+
const withStateProps = createWithStateProps([useMenuContext]);
|
|
20
|
+
const withItemStateProps = createWithStateProps([useMenuItemContext]);
|
|
21
|
+
|
|
22
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
23
|
+
|
|
24
|
+
export interface MenuRootProps extends MenuVariantProps, MenuPrimitive.RootProps {}
|
|
25
|
+
|
|
26
|
+
export const MenuRoot = (props: MenuRootProps) => {
|
|
27
|
+
const [variantProps, otherProps] = menu.splitVariantProps(props);
|
|
28
|
+
const classNames = menu(variantProps);
|
|
29
|
+
|
|
30
|
+
return (
|
|
31
|
+
<ClassNamesProvider value={classNames}>
|
|
32
|
+
<ItemPropsProvider value={{ size: variantProps.size }}>
|
|
33
|
+
<MenuPrimitive.Root {...otherProps} />
|
|
34
|
+
</ItemPropsProvider>
|
|
35
|
+
</ClassNamesProvider>
|
|
36
|
+
);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
40
|
+
|
|
41
|
+
export interface MenuAnchorProps extends MenuPrimitive.AnchorProps {}
|
|
42
|
+
|
|
43
|
+
export const MenuAnchor = MenuPrimitive.Anchor;
|
|
44
|
+
|
|
45
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
46
|
+
|
|
47
|
+
export interface MenuTriggerProps extends MenuPrimitive.TriggerProps {}
|
|
48
|
+
|
|
49
|
+
export const MenuTrigger = MenuPrimitive.Trigger;
|
|
50
|
+
|
|
51
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
52
|
+
|
|
53
|
+
export interface MenuPositionerProps
|
|
54
|
+
extends MenuPrimitive.PositionerProps,
|
|
55
|
+
PrimitiveProps,
|
|
56
|
+
React.HTMLAttributes<HTMLDivElement> {}
|
|
57
|
+
|
|
58
|
+
export const MenuPositioner = React.forwardRef<HTMLDivElement, MenuPositionerProps>(
|
|
59
|
+
({ className, ...props }, ref) => {
|
|
60
|
+
const classNames = useClassNames();
|
|
61
|
+
|
|
62
|
+
return (
|
|
63
|
+
<MenuPrimitive.Positioner
|
|
64
|
+
ref={ref}
|
|
65
|
+
className={clsx(classNames.positioner, className)}
|
|
66
|
+
{...props}
|
|
67
|
+
/>
|
|
68
|
+
);
|
|
69
|
+
},
|
|
70
|
+
);
|
|
71
|
+
MenuPositioner.displayName = "MenuPositioner";
|
|
72
|
+
|
|
73
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
74
|
+
|
|
75
|
+
export interface MenuContentProps extends MenuPrimitive.ContentProps {}
|
|
76
|
+
|
|
77
|
+
export const MenuContent = withContext<HTMLDivElement, MenuContentProps>(
|
|
78
|
+
MenuPrimitive.Content,
|
|
79
|
+
"content",
|
|
80
|
+
);
|
|
81
|
+
|
|
82
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
83
|
+
|
|
84
|
+
export interface MenuScrollAreaProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {}
|
|
85
|
+
|
|
86
|
+
export const MenuScrollArea = withContext<HTMLDivElement, MenuScrollAreaProps>(
|
|
87
|
+
withStateProps(Primitive.div),
|
|
88
|
+
"scrollArea",
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
92
|
+
|
|
93
|
+
export interface MenuGroupProps extends MenuPrimitive.GroupProps {}
|
|
94
|
+
|
|
95
|
+
export const MenuGroup = withContext<HTMLDivElement, MenuGroupProps>(MenuPrimitive.Group, "group");
|
|
96
|
+
|
|
97
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
98
|
+
|
|
99
|
+
export interface MenuGroupLabelProps extends MenuPrimitive.GroupLabelProps {}
|
|
100
|
+
|
|
101
|
+
export const MenuGroupLabel = withContext<HTMLDivElement, MenuGroupLabelProps>(
|
|
102
|
+
MenuPrimitive.GroupLabel,
|
|
103
|
+
"groupLabel",
|
|
104
|
+
);
|
|
105
|
+
|
|
106
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
107
|
+
|
|
108
|
+
export interface MenuItemProps extends MenuItemVariantProps, MenuPrimitive.ItemProps {}
|
|
109
|
+
|
|
110
|
+
export const MenuItem = React.forwardRef<HTMLDivElement, MenuItemProps>(
|
|
111
|
+
({ className: propClassName, ...props }, ref) => {
|
|
112
|
+
const [variantProps, otherProps] = menuItem.splitVariantProps(props);
|
|
113
|
+
const parentProps = useItemProps();
|
|
114
|
+
|
|
115
|
+
const classNames = menuItem({ ...parentProps, ...variantProps });
|
|
116
|
+
|
|
117
|
+
return (
|
|
118
|
+
<ItemClassNamesProvider value={classNames}>
|
|
119
|
+
<MenuPrimitive.Item
|
|
120
|
+
ref={ref}
|
|
121
|
+
className={clsx(classNames.root, propClassName)}
|
|
122
|
+
{...otherProps}
|
|
123
|
+
/>
|
|
124
|
+
</ItemClassNamesProvider>
|
|
125
|
+
);
|
|
126
|
+
},
|
|
127
|
+
);
|
|
128
|
+
MenuItem.displayName = "MenuItem";
|
|
129
|
+
|
|
130
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
131
|
+
|
|
132
|
+
export interface MenuItemBodyProps extends PrimitiveProps, React.HTMLAttributes<HTMLDivElement> {}
|
|
133
|
+
|
|
134
|
+
export const MenuItemBody = withItemContext<HTMLDivElement, MenuItemBodyProps>(
|
|
135
|
+
withItemStateProps(Primitive.div),
|
|
136
|
+
"body",
|
|
137
|
+
);
|
|
138
|
+
|
|
139
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
140
|
+
|
|
141
|
+
export interface MenuItemLabelProps extends PrimitiveProps, React.HTMLAttributes<HTMLSpanElement> {}
|
|
142
|
+
|
|
143
|
+
export const MenuItemLabel = withItemContext<HTMLSpanElement, MenuItemLabelProps>(
|
|
144
|
+
withItemStateProps(Primitive.span),
|
|
145
|
+
"label",
|
|
146
|
+
);
|
|
147
|
+
|
|
148
|
+
////////////////////////////////////////////////////////////////////////////////////
|
|
149
|
+
|
|
150
|
+
export interface MenuItemDescriptionProps
|
|
151
|
+
extends PrimitiveProps,
|
|
152
|
+
React.HTMLAttributes<HTMLSpanElement> {}
|
|
153
|
+
|
|
154
|
+
export const MenuItemDescription = withItemContext<HTMLSpanElement, MenuItemDescriptionProps>(
|
|
155
|
+
withItemStateProps(Primitive.span),
|
|
156
|
+
"description",
|
|
157
|
+
);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export {
|
|
2
|
+
MenuRoot,
|
|
3
|
+
MenuAnchor,
|
|
4
|
+
MenuTrigger,
|
|
5
|
+
MenuPositioner,
|
|
6
|
+
MenuContent,
|
|
7
|
+
MenuScrollArea,
|
|
8
|
+
MenuGroup,
|
|
9
|
+
MenuGroupLabel,
|
|
10
|
+
MenuItem,
|
|
11
|
+
MenuItemBody,
|
|
12
|
+
MenuItemLabel,
|
|
13
|
+
MenuItemDescription,
|
|
14
|
+
type MenuRootProps,
|
|
15
|
+
type MenuAnchorProps,
|
|
16
|
+
type MenuTriggerProps,
|
|
17
|
+
type MenuPositionerProps,
|
|
18
|
+
type MenuContentProps,
|
|
19
|
+
type MenuScrollAreaProps,
|
|
20
|
+
type MenuGroupProps,
|
|
21
|
+
type MenuGroupLabelProps,
|
|
22
|
+
type MenuItemProps,
|
|
23
|
+
type MenuItemBodyProps,
|
|
24
|
+
type MenuItemLabelProps,
|
|
25
|
+
type MenuItemDescriptionProps,
|
|
26
|
+
} from "./Menu";
|
|
27
|
+
|
|
28
|
+
export * as Menu from "./Menu.namespace";
|