@marigold/components 0.0.1 → 0.2.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/dist/ActionGroup/ActionGroup.d.ts +9 -0
- package/dist/ActionGroup/index.d.ts +1 -0
- package/dist/Alert/Alert.d.ts +20 -2
- package/dist/Badge/Badge.d.ts +8 -0
- package/dist/Badge/index.d.ts +1 -0
- package/dist/Box/Box.d.ts +47 -0
- package/dist/Box/index.d.ts +1 -0
- package/dist/Button/Button.d.ts +4 -3
- package/dist/Card/Card.d.ts +9 -0
- package/dist/Card/index.d.ts +1 -0
- package/dist/Checkbox/Checkbox.d.ts +14 -2
- package/dist/Checkbox/CheckboxIcons.d.ts +9 -0
- package/dist/Column/Column.d.ts +8 -0
- package/dist/Column/index.d.ts +1 -0
- package/dist/Columns/Columns.d.ts +10 -0
- package/dist/Columns/index.d.ts +1 -0
- package/dist/Container/Container.d.ts +6 -0
- package/dist/Container/index.d.ts +1 -0
- package/dist/Dialog/Dialog.d.ts +14 -0
- package/dist/Dialog/ModalDialog.d.ts +5 -0
- package/dist/Dialog/index.d.ts +1 -0
- package/dist/Divider/Divider.d.ts +7 -0
- package/dist/Divider/index.d.ts +1 -0
- package/dist/Field/Field.d.ts +11 -0
- package/dist/Field/index.d.ts +1 -0
- package/dist/Heading/Heading.d.ts +7 -5
- package/dist/Hidden/Hidden.d.ts +5 -0
- package/dist/Hidden/index.d.ts +1 -0
- package/dist/Image/Image.d.ts +7 -0
- package/dist/Image/index.d.ts +1 -0
- package/dist/Input/Input.d.ts +6 -0
- package/dist/Input/index.d.ts +1 -0
- package/dist/Label/Label.d.ts +8 -5
- package/dist/Link/Link.d.ts +7 -3
- package/dist/Menu/Menu.d.ts +12 -0
- package/dist/Menu/index.d.ts +1 -0
- package/dist/MenuItem/MenuItem.d.ts +7 -0
- package/dist/MenuItem/index.d.ts +1 -0
- package/dist/Message/Message.d.ts +7 -0
- package/dist/Message/index.d.ts +1 -0
- package/dist/Provider/MarigoldProvider.d.ts +3 -0
- package/dist/Provider/index.d.ts +3 -0
- package/dist/Radio/Radio.d.ts +14 -2
- package/dist/Radio/RadioIcons.d.ts +9 -0
- package/dist/Select/ListBox.d.ts +8 -0
- package/dist/Select/ListBoxSection.d.ts +8 -0
- package/dist/Select/Option.d.ts +8 -0
- package/dist/Select/Popover.d.ts +9 -0
- package/dist/Select/Select.d.ts +13 -3
- package/dist/Slider/Slider.d.ts +6 -3
- package/dist/Stack/Stack.d.ts +7 -0
- package/dist/Stack/index.d.ts +1 -0
- package/dist/Text/Text.d.ts +12 -3
- package/dist/Textarea/Textarea.d.ts +11 -3
- package/dist/ValidationMessage/ValidationMessage.d.ts +6 -0
- package/dist/ValidationMessage/index.d.ts +1 -0
- package/dist/components.cjs.development.js +1308 -195
- package/dist/components.cjs.development.js.map +1 -1
- package/dist/components.cjs.production.min.js +1 -1
- package/dist/components.cjs.production.min.js.map +1 -1
- package/dist/components.esm.js +1267 -185
- package/dist/components.esm.js.map +1 -1
- package/dist/index.d.ts +21 -4
- package/dist/theme.d.ts +24 -4
- package/package.json +24 -4
- package/src/ActionGroup/ActionGroup.stories.mdx +62 -0
- package/src/ActionGroup/ActionGroup.test.tsx +83 -0
- package/src/ActionGroup/ActionGroup.tsx +43 -0
- package/src/ActionGroup/index.ts +1 -0
- package/src/Alert/Alert.stories.mdx +30 -42
- package/src/Alert/Alert.test.tsx +37 -22
- package/src/Alert/Alert.tsx +31 -21
- package/src/Badge/Badge.stories.mdx +57 -0
- package/src/Badge/Badge.test.tsx +61 -0
- package/src/Badge/Badge.tsx +25 -0
- package/src/Badge/index.ts +1 -0
- package/src/Box/Box.stories.mdx +334 -0
- package/src/Box/Box.test.tsx +133 -0
- package/src/Box/Box.tsx +165 -0
- package/src/Box/index.ts +1 -0
- package/src/Button/Button.stories.mdx +58 -134
- package/src/Button/Button.test.tsx +65 -23
- package/src/Button/Button.tsx +48 -14
- package/src/Card/Card.stories.mdx +49 -0
- package/src/Card/Card.test.tsx +66 -0
- package/src/Card/Card.tsx +36 -0
- package/src/Card/index.ts +1 -0
- package/src/Checkbox/Checkbox.stories.mdx +79 -101
- package/src/Checkbox/Checkbox.test.tsx +73 -32
- package/src/Checkbox/Checkbox.tsx +114 -35
- package/src/Checkbox/CheckboxIcons.tsx +49 -0
- package/src/Column/Column.stories.mdx +49 -0
- package/src/Column/Column.test.tsx +32 -0
- package/src/Column/Column.tsx +27 -0
- package/src/Column/index.ts +1 -0
- package/src/Columns/Columns.stories.mdx +65 -0
- package/src/Columns/Columns.test.tsx +102 -0
- package/src/Columns/Columns.tsx +69 -0
- package/src/Columns/index.ts +1 -0
- package/src/Container/Container.stories.mdx +19 -0
- package/src/Container/Container.test.tsx +26 -0
- package/src/Container/Container.tsx +13 -0
- package/src/Container/index.ts +1 -0
- package/src/Dialog/Dialog.stories.mdx +73 -0
- package/src/Dialog/Dialog.test.tsx +87 -0
- package/src/Dialog/Dialog.tsx +84 -0
- package/src/Dialog/ModalDialog.tsx +47 -0
- package/src/Dialog/index.ts +1 -0
- package/src/Divider/Divider.stories.mdx +37 -0
- package/src/Divider/Divider.test.tsx +63 -0
- package/src/Divider/Divider.tsx +13 -0
- package/src/Divider/index.ts +1 -0
- package/src/Field/Field.stories.mdx +97 -0
- package/src/Field/Field.test.tsx +80 -0
- package/src/Field/Field.tsx +54 -0
- package/src/Field/index.ts +1 -0
- package/src/Heading/Heading.stories.mdx +36 -76
- package/src/Heading/Heading.test.tsx +31 -17
- package/src/Heading/Heading.tsx +15 -12
- package/src/Hidden/Hidden.stories.mdx +39 -0
- package/src/Hidden/Hidden.test.tsx +24 -0
- package/src/Hidden/Hidden.tsx +16 -0
- package/src/Hidden/index.ts +1 -0
- package/src/Image/Image.stories.mdx +36 -0
- package/src/Image/Image.test.tsx +70 -0
- package/src/Image/Image.tsx +13 -0
- package/src/Image/index.ts +1 -0
- package/src/Input/Input.stories.mdx +61 -0
- package/src/Input/Input.test.tsx +70 -0
- package/src/Input/Input.tsx +13 -0
- package/src/Input/index.ts +1 -0
- package/src/Label/Label.stories.mdx +50 -34
- package/src/Label/Label.test.tsx +45 -16
- package/src/Label/Label.tsx +26 -17
- package/src/Link/Link.stories.mdx +40 -31
- package/src/Link/Link.test.tsx +53 -28
- package/src/Link/Link.tsx +32 -14
- package/src/Menu/Menu.stories.mdx +81 -0
- package/src/Menu/Menu.test.tsx +79 -0
- package/src/Menu/Menu.tsx +41 -0
- package/src/Menu/index.ts +1 -0
- package/src/MenuItem/MenuItem.stories.mdx +37 -0
- package/src/MenuItem/MenuItem.test.tsx +63 -0
- package/src/MenuItem/MenuItem.tsx +23 -0
- package/src/MenuItem/index.ts +1 -0
- package/src/Message/Message.stories.mdx +44 -0
- package/src/Message/Message.test.tsx +87 -0
- package/src/Message/Message.tsx +43 -0
- package/src/Message/index.ts +1 -0
- package/src/Provider/MarigoldProvider.test.tsx +126 -0
- package/src/Provider/MarigoldProvider.tsx +29 -0
- package/src/Provider/index.ts +3 -0
- package/src/Radio/Radio.stories.mdx +80 -83
- package/src/Radio/Radio.test.tsx +63 -22
- package/src/Radio/Radio.tsx +110 -35
- package/src/Radio/RadioIcons.tsx +39 -0
- package/src/Select/ListBox.tsx +39 -0
- package/src/Select/ListBoxSection.tsx +40 -0
- package/src/Select/Option.tsx +48 -0
- package/src/Select/Popover.tsx +50 -0
- package/src/Select/Select.stories.mdx +72 -37
- package/src/Select/Select.test.tsx +271 -28
- package/src/Select/Select.tsx +158 -23
- package/src/Slider/Slider.stories.mdx +26 -54
- package/src/Slider/Slider.test.tsx +13 -13
- package/src/Slider/Slider.tsx +20 -18
- package/src/Stack/Stack.stories.mdx +51 -0
- package/src/Stack/Stack.test.tsx +129 -0
- package/src/Stack/Stack.tsx +39 -0
- package/src/Stack/index.ts +1 -0
- package/src/Text/Text.stories.mdx +53 -47
- package/src/Text/Text.test.tsx +55 -15
- package/src/Text/Text.tsx +44 -10
- package/src/Textarea/Textarea.stories.mdx +68 -21
- package/src/Textarea/Textarea.test.tsx +47 -16
- package/src/Textarea/Textarea.tsx +46 -14
- package/src/ValidationMessage/ValidationMessage.stories.mdx +36 -0
- package/src/ValidationMessage/ValidationMessage.test.tsx +63 -0
- package/src/ValidationMessage/ValidationMessage.tsx +28 -0
- package/src/ValidationMessage/index.ts +1 -0
- package/src/index.ts +22 -4
- package/src/theme.ts +24 -4
- package/dist/Svg/Svg.d.ts +0 -5
- package/dist/Svg/index.d.ts +0 -1
- package/dist/TextInput/TextInput.d.ts +0 -3
- package/dist/TextInput/index.d.ts +0 -1
- package/src/Svg/Svg.stories.mdx +0 -47
- package/src/Svg/Svg.test.tsx +0 -58
- package/src/Svg/Svg.tsx +0 -25
- package/src/Svg/index.ts +0 -1
- package/src/TextInput/TextInput.stories.mdx +0 -37
- package/src/TextInput/TextInput.test.tsx +0 -71
- package/src/TextInput/TextInput.tsx +0 -21
- package/src/TextInput/index.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.esm.js","sources":["../src/Button/Button.tsx","../src/Checkbox/Checkbox.tsx","../src/Heading/Heading.tsx","../src/Label/Label.tsx","../src/Link/Link.tsx","../src/Radio/Radio.tsx","../src/Slider/Slider.tsx","../src/Select/Select.tsx","../src/Svg/Svg.tsx","../src/Text/Text.tsx","../src/Textarea/Textarea.tsx","../src/TextInput/TextInput.tsx","../src/Alert/Alert.tsx"],"sourcesContent":["import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype ButtonProps = {};\n\nexport const Button = system<ButtonProps, 'button'>(\n ({ variant = 'primary.large', children, ...props }) => {\n return (\n <Box as=\"button\" themeSection=\"button\" variant={variant} {...props}>\n <span style={{ display: 'inline-flex', alignItems: 'center' }}>\n {children}\n </span>\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\nimport { SquareUnchecked, SquareChecked } from '@marigold/icons';\n\ntype CheckboxProps = {};\n\nexport const Checkbox = system<CheckboxProps, 'input'>(\n ({ variant = 'checkbox', ...props }) => {\n return (\n <Box css={{ display: 'inline-block' }}>\n <Box\n as=\"input\"\n type=\"checkbox\"\n {...props}\n css={{\n position: 'absolute',\n opacity: 0,\n zIndex: -1,\n width: 1,\n height: 1,\n overflow: 'hidden',\n }}\n />\n <Box\n as={props.checked ? SquareChecked : SquareUnchecked}\n aria-hidden=\"true\"\n themeSection=\"form\"\n variant={variant}\n css={{\n mr: 2,\n verticalAlign: 'middle',\n ':hover': { cursor: 'pointer' },\n 'input:disabled ~ &': {\n color: 'muted',\n cursor: 'not-allowed',\n },\n }}\n />\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype HeadingProps = {\n headingStyle?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n};\n\nexport const Heading = system<HeadingProps, 'h2'>(\n ({ headingStyle = 'h2', children, ...props }) => {\n return (\n <Box as=\"h2\" themeSection=\"text\" variant={headingStyle} {...props}>\n {children}\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { system, Box } from '@marigold/system';\n\ntype LabelProps = {\n htmlFor: string;\n};\n\nexport const Label = system<LabelProps, 'label'>(\n ({ variant = 'label', htmlFor, children, ...props }) => {\n return (\n <Box\n as=\"label\"\n themeSection=\"form\"\n variant={variant}\n htmlFor={htmlFor}\n {...props}\n >\n {children}\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype LinkProps = {};\n\nexport const Link = system<LinkProps, 'a'>(\n ({ variant = 'link', children, ...props }) => {\n return (\n <Box as=\"a\" variant={variant} themeSection=\"link\" {...props}>\n {children}\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\nimport { CircleUnchecked, CircleChecked } from '@marigold/icons';\n\ntype RadioProps = {};\n\nexport const Radio = system<RadioProps, 'input'>(\n ({ variant = 'radio', ...props }) => {\n return (\n <Box css={{ display: 'inline-block' }}>\n <Box\n as=\"input\"\n type=\"radio\"\n {...props}\n css={{\n position: 'absolute',\n opacity: 0,\n zIndex: -1,\n width: 1,\n height: 1,\n overflow: 'hidden',\n }}\n />\n <Box\n as={props.checked ? CircleChecked : CircleUnchecked}\n aria-hidden=\"true\"\n themeSection=\"form\"\n variant={variant}\n css={{\n mr: 2,\n verticalAlign: 'middle',\n ':hover': { cursor: 'pointer' },\n 'input:disabled ~ &': {\n color: 'muted',\n cursor: 'not-allowed',\n },\n }}\n />\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype SliderProps = {};\n\nexport const Slider = system<SliderProps, 'input'>(\n ({ variant = 'slider', ...props }) => {\n return (\n <Box\n as=\"input\"\n type=\"range\"\n themeSection=\"form\"\n variant={variant}\n {...props}\n css={{\n verticalAlign: 'middle',\n }}\n />\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\nimport { ArrowDown } from '@marigold/icons';\n\ntype SelectProps = {};\n\nexport const Select = system<SelectProps, 'select'>(\n ({ variant = 'select', ref, ...props }) => {\n return (\n <Box css={{ display: 'flex' }}>\n <Box\n as=\"select\"\n ref={ref}\n themeSection=\"form\"\n variant={variant}\n {...props}\n />\n <ArrowDown\n ml={'-28px'}\n css={{\n alignSelf: 'center',\n pointerEvents: 'none',\n }}\n />\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype SvgProps = {\n size?: number;\n};\n\nexport const Svg = system<SvgProps, 'svg'>(\n ({ size = 24, fill = 'currentcolor', children, ...props }) => {\n return (\n <Box\n as=\"svg\"\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill={fill}\n themeSection=\"icon\"\n variant=\"icon\"\n {...props}\n >\n {children}\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype TextProps = {};\n\nexport const Text = system<TextProps, 'span'>(\n ({ as = 'span', variant = 'body', children, ...props }) => {\n return (\n <Box {...props} as={as} themeSection=\"text\" variant={variant}>\n {children}\n </Box>\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype TextareaProps = {};\n\nexport const Textarea = system<TextareaProps, 'textarea'>(\n ({ variant = 'textarea', ref, ...props }) => {\n return (\n <Box\n as=\"textarea\"\n themeSection=\"form\"\n variant={variant}\n ref={ref}\n {...props}\n />\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype TextInputProps = {};\n\nexport const TextInput = system<TextInputProps, 'input'>(\n ({ variant = 'input', type = 'text', children, ...props }) => {\n return (\n <Box\n as=\"input\"\n type={type}\n themeSection=\"form\"\n variant={variant}\n {...props}\n css={{\n border: 0,\n }}\n />\n );\n }\n);\n","import React from 'react';\nimport { Box, system } from '@marigold/system';\n\ntype AlertProps = {};\n\nexport const Alert = system<AlertProps, 'div'>(\n ({ variant = 'info', ref, children, ...props }) => {\n return (\n <Box\n as=\"div\"\n ref={ref}\n themeSection=\"alerts\"\n variant={variant}\n {...props}\n css={{\n display: 'flex',\n alignItems: 'center',\n px: 3,\n py: 2,\n borderRadius: 4,\n }}\n >\n {children}\n </Box>\n );\n }\n);\n"],"names":["Button","system","variant","children","props","React","Box","as","themeSection","style","display","alignItems","Checkbox","css","type","position","opacity","zIndex","width","height","overflow","checked","SquareChecked","SquareUnchecked","mr","verticalAlign","cursor","color","Heading","headingStyle","Label","htmlFor","Link","Radio","CircleChecked","CircleUnchecked","Slider","Select","ref","ArrowDown","ml","alignSelf","pointerEvents","Svg","size","fill","viewBox","Text","Textarea","TextInput","border","Alert","px","py","borderRadius"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components.esm.js","sources":["../src/Box/Box.tsx","../src/ActionGroup/ActionGroup.tsx","../src/Alert/Alert.tsx","../src/Badge/Badge.tsx","../src/Button/Button.tsx","../src/Card/Card.tsx","../src/Checkbox/CheckboxIcons.tsx","../src/Label/Label.tsx","../src/ValidationMessage/ValidationMessage.tsx","../src/Checkbox/Checkbox.tsx","../src/Column/Column.tsx","../src/Columns/Columns.tsx","../src/Heading/Heading.tsx","../src/Dialog/ModalDialog.tsx","../src/Dialog/Dialog.tsx","../src/Divider/Divider.tsx","../src/Input/Input.tsx","../src/Field/Field.tsx","../src/Hidden/Hidden.tsx","../src/Image/Image.tsx","../src/Text/Text.tsx","../src/Link/Link.tsx","../src/Menu/Menu.tsx","../src/MenuItem/MenuItem.tsx","../src/Message/Message.tsx","../src/Provider/MarigoldProvider.tsx","../src/Radio/RadioIcons.tsx","../src/Radio/Radio.tsx","../src/Slider/Slider.tsx","../src/Select/Option.tsx","../src/Select/ListBoxSection.tsx","../src/Select/ListBox.tsx","../src/Select/Popover.tsx","../src/Select/Select.tsx","../src/Stack/Stack.tsx","../src/Textarea/Textarea.tsx","../src/Container/Container.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { CSSObject, Element, ResponsiveStyleValue } from '@marigold/system';\nimport {\n PolymorphicPropsWithRef,\n PolymorphicComponentWithRef,\n} from '@marigold/types';\n\nexport type BoxOwnProps = {\n className?: string;\n variant?: string | string[];\n css?: CSSObject;\n\n display?: ResponsiveStyleValue<string>;\n\n height?: ResponsiveStyleValue<number | string>;\n width?: ResponsiveStyleValue<number | string>;\n minWidth?: ResponsiveStyleValue<number | string>;\n maxWidth?: ResponsiveStyleValue<number | string>;\n\n position?: ResponsiveStyleValue<string>;\n top?: ResponsiveStyleValue<number | string>;\n bottom?: ResponsiveStyleValue<number | string>;\n right?: ResponsiveStyleValue<number | string>;\n left?: ResponsiveStyleValue<number | string>;\n zIndex?: ResponsiveStyleValue<number | string>;\n\n p?: ResponsiveStyleValue<number | string>;\n px?: ResponsiveStyleValue<number | string>;\n py?: ResponsiveStyleValue<number | string>;\n pt?: ResponsiveStyleValue<number | string>;\n pb?: ResponsiveStyleValue<number | string>;\n pl?: ResponsiveStyleValue<number | string>;\n pr?: ResponsiveStyleValue<number | string>;\n\n m?: ResponsiveStyleValue<number | string>;\n mx?: ResponsiveStyleValue<number | string>;\n my?: ResponsiveStyleValue<number | string>;\n mt?: ResponsiveStyleValue<number | string>;\n mb?: ResponsiveStyleValue<number | string>;\n ml?: ResponsiveStyleValue<number | string>;\n mr?: ResponsiveStyleValue<number | string>;\n\n flexDirection?: ResponsiveStyleValue<string>;\n flexWrap?: ResponsiveStyleValue<string>;\n flexShrink?: ResponsiveStyleValue<number | string>;\n flexGrow?: ResponsiveStyleValue<number | string>;\n alignItems?: ResponsiveStyleValue<string>;\n justifyContent?: ResponsiveStyleValue<string>;\n\n bg?: ResponsiveStyleValue<number | string>;\n border?: ResponsiveStyleValue<number | string>;\n borderRadius?: ResponsiveStyleValue<number | string>;\n boxShadow?: ResponsiveStyleValue<number | string>;\n opacity?: ResponsiveStyleValue<number | string>;\n overflow?: ResponsiveStyleValue<string>;\n\n transition?: ResponsiveStyleValue<number | string>;\n};\n\nexport type BoxProps = PolymorphicPropsWithRef<BoxOwnProps, 'div'>;\n\nexport const Box: PolymorphicComponentWithRef<BoxOwnProps, 'div'> = forwardRef(\n (\n {\n variant,\n as = 'div',\n css,\n children,\n className,\n display,\n height,\n width,\n minWidth,\n maxWidth,\n position,\n top,\n bottom,\n right,\n left,\n zIndex,\n p,\n px,\n py,\n pt,\n pb,\n pl,\n pr,\n m,\n mx,\n my,\n mt,\n mb,\n ml,\n mr,\n flexDirection,\n flexWrap,\n flexShrink,\n flexGrow,\n alignItems,\n justifyContent,\n bg,\n border,\n borderRadius,\n boxShadow,\n opacity,\n overflow,\n transition,\n ...props\n },\n ref\n ) => (\n <Element\n as={as}\n ref={ref}\n variant={variant}\n css={{\n ...{\n display,\n height,\n width,\n minWidth,\n maxWidth,\n position,\n top,\n bottom,\n right,\n left,\n zIndex,\n p,\n px,\n py,\n pt,\n pb,\n pl,\n pr,\n m,\n mx,\n my,\n mt,\n mb,\n ml,\n mr,\n flexDirection,\n flexWrap,\n flexShrink,\n flexGrow,\n alignItems,\n justifyContent,\n bg,\n border,\n borderRadius,\n boxShadow,\n opacity,\n overflow,\n transition,\n },\n ...css,\n }}\n className={className}\n {...props}\n >\n {children}\n </Element>\n )\n);\n","import React, { Children } from 'react';\nimport flattenChildren from 'react-keyed-flatten-children';\n\nimport { ResponsiveStyleValue } from '@marigold/system';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\nexport type ActionGroupProps = {\n variant?: string;\n space?: ResponsiveStyleValue<number | string>;\n verticalAlignment?: boolean;\n} & ComponentProps<'div'>;\n\nexport const ActionGroup: React.FC<ActionGroupProps> = ({\n variant = 'default',\n space = 'none',\n verticalAlignment = false,\n children,\n className,\n ...props\n}) => {\n const childStyle = verticalAlignment\n ? { marginBottom: space }\n : { marginRight: space };\n return (\n <Box variant={`actionGroup.${variant}`} className={className} {...props}>\n {Children.map(\n flattenChildren(children),\n (child, i) =>\n child !== null &&\n child !== undefined && (\n <Box\n as={verticalAlignment ? 'div' : 'span'}\n css={i < Children.count(children) - 1 ? childStyle : undefined}\n >\n {child}\n </Box>\n )\n )}\n </Box>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Exclamation, Check, Notification } from '@marigold/icons';\nimport { Box } from '../Box';\n\nconst ICON_MAP = {\n success: Check,\n warning: Notification,\n error: Exclamation,\n} as const;\n\nexport type AlertProps = {\n variant?: keyof typeof ICON_MAP;\n} & ComponentProps<'div'>;\n\nexport const Alert: React.FC<AlertProps> = ({\n variant = 'success',\n children,\n ...props\n}) => {\n const Icon = ICON_MAP[variant];\n\n return (\n <Box {...props} display=\"flex\" variant={`alerts.${variant}`}>\n <Box\n display=\"inline-block\"\n alignItems=\"center\"\n width=\"32px\"\n height=\"32px\"\n bg={variant}\n >\n <Box as={Icon} size={12} color=\"#fff\" bg={variant} m={10} />\n </Box>\n <Box mx=\"16px\">{children}</Box>\n </Box>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\nexport type BadgeProps = {\n variant?: string;\n bgColor?: string;\n borderColor?: string;\n} & ComponentProps<'div'>;\n\nexport const Badge: React.FC<BadgeProps> = ({\n variant = 'default',\n bgColor = 'transparent',\n borderColor = 'transparent',\n children,\n ...props\n}) => (\n <Box\n css={{ bg: bgColor, borderColor: borderColor }}\n variant={`badge.${variant}`}\n {...props}\n >\n {children}\n </Box>\n);\n","import React, { forwardRef, RefObject } from 'react';\nimport { useButton } from '@react-aria/button';\nimport {\n PolymorphicComponentWithRef,\n PolymorphicPropsWithRef,\n} from '@marigold/types';\n\nimport { Box, BoxOwnProps } from '../Box';\n\nexport type ButtonProps = PolymorphicPropsWithRef<BoxOwnProps, 'button'>;\n\nexport const Button: PolymorphicComponentWithRef<BoxOwnProps, 'button'> =\n forwardRef(\n (\n {\n as = 'button',\n variant = 'primary',\n size = 'large',\n disabled,\n children,\n className,\n ...props\n },\n ref\n ) => {\n const { buttonProps } = useButton(\n {\n ...props,\n elementType: typeof as === 'string' ? as : 'span',\n isDisabled: disabled,\n },\n ref as RefObject<HTMLSpanElement>\n );\n\n return (\n <Box\n {...buttonProps}\n {...props}\n as={as}\n variant={[`button.${variant}`, `button.${size}`]}\n className={className}\n ref={ref}\n >\n <Box as=\"span\" display=\"inline-flex\" alignItems=\"center\">\n {children}\n </Box>\n </Box>\n );\n }\n );\n","import React from 'react';\nimport { ResponsiveStyleValue } from '@marigold/system';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\nexport type CardProps = {\n title?: string;\n width?: ResponsiveStyleValue<string>;\n variant?: string;\n} & ComponentProps<'div'>;\n\nexport const Card: React.FC<CardProps> = ({\n variant = 'default',\n title,\n width,\n className,\n children,\n ...props\n}) => {\n return (\n <Box\n {...props}\n variant={`card.${variant}`}\n maxWidth={width}\n className={className}\n >\n {title && (\n <Box as=\"h2\" variant=\"text.h2\" pb=\"small\">\n {title}\n </Box>\n )}\n {children}\n </Box>\n );\n};\n","import React from 'react';\nimport { SVG } from '@marigold/icons';\n\nimport { Box } from '../Box';\n\nexport const CheckboxChecked = ({ disabled = false, ...props }) => (\n <SVG width=\"16\" height=\"32\" viewBox=\"0 0 16 32\" fill=\"none\" {...props}>\n <Box\n as=\"rect\"\n x=\"0.5\"\n y=\"8.5\"\n width=\"15px\"\n height=\"15px\"\n rx=\"1.5\"\n variant={disabled ? 'checkbox.checked.disabled' : 'checkbox.checked'}\n />\n <Box\n as=\"path\"\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M13.9571 12.8338L12.4085 11.2852L6.08699 17.6007L3.59887 15.1126L2.04163 16.6588L6.08682 20.704L13.9571 12.8338Z\"\n variant=\"checkbox.checked.icon\"\n />\n </SVG>\n);\n\nexport const CheckboxUnchecked = ({\n disabled = false,\n error = false,\n ...props\n}) => (\n <SVG width=\"16\" height=\"32\" viewBox=\"0 0 16 32\" fill=\"none\" {...props}>\n <Box\n as=\"rect\"\n x=\"0.5\"\n y=\"8.5\"\n width=\"15px\"\n height=\"15px\"\n rx=\"1.5\"\n variant={\n disabled\n ? 'checkbox.unchecked.disabled'\n : error\n ? 'checkbox.unchecked.error'\n : 'checkbox.unchecked'\n }\n />\n </SVG>\n);\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Required } from '@marigold/icons';\n\nimport { Box } from '../Box';\n\nexport type LabelProps = {\n htmlFor?: string;\n variant?: string;\n required?: boolean;\n} & ComponentProps<'label'>;\n\nexport const Label: React.FC<LabelProps> = ({\n variant = 'above',\n required,\n children,\n ...props\n}) => {\n return required ? (\n <Box as=\"span\" display=\"inline-flex\" alignItems=\"center\">\n <Box {...props} as=\"label\" variant={`label.${variant}`}>\n {children}\n </Box>\n {required && <Box as={Required} size={16} css={{ color: 'red60' }} />}\n </Box>\n ) : (\n <Box {...props} as=\"label\" variant={`label.${variant}`}>\n {children}\n </Box>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\nexport type ValidationMessageProps = {\n variant?: string;\n} & ComponentProps<'span'>;\n\nexport const ValidationMessage: React.FC<ValidationMessageProps> = ({\n variant = 'error',\n children,\n className,\n ...props\n}) => {\n return (\n <Box\n as=\"span\"\n display=\"flex\"\n alignItems=\"center\"\n variant={`validation.${variant}`}\n className={className}\n {...props}\n >\n {children}\n </Box>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Exclamation } from '@marigold/icons';\n\nimport { CheckboxChecked, CheckboxUnchecked } from './CheckboxIcons';\n\nimport { Box } from '../Box';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\n\n// Checkbox Icon\n// ---------------\ntype CheckboxIconProps = {\n variant?: string;\n checked?: boolean;\n disabled?: boolean;\n children?: never;\n error?: boolean;\n};\n\nconst CheckboxIcon: React.FC<CheckboxIconProps> = ({\n variant,\n checked,\n disabled,\n error,\n}) => {\n if (checked) {\n return (\n <Box\n as={CheckboxChecked}\n variant={`checkbox.${variant}`}\n disabled={disabled}\n />\n );\n }\n return (\n <Box\n as={CheckboxUnchecked}\n variant={`checkbox.${variant}`}\n disabled={disabled}\n error={error}\n />\n );\n};\n\n// Checkbox Input\n// ---------------\ntype CheckboxInputProps = {\n variant?: string;\n error?: boolean;\n} & ComponentProps<'input'>;\n\nconst CheckboxInput: React.FC<CheckboxInputProps> = ({\n className,\n variant = 'default',\n error,\n ...props\n}) => (\n <Box display=\"inline-block\" className={className}>\n <Box\n as=\"input\"\n type=\"checkbox\"\n css={{\n position: 'absolute',\n opacity: 0,\n zIndex: -1,\n width: 1,\n height: 1,\n overflow: 'hidden',\n }}\n {...props}\n />\n <CheckboxIcon\n checked={props.checked}\n variant={variant}\n disabled={props.disabled}\n error={error}\n />\n </Box>\n);\n\n// Checkbox\n// ---------------\nexport type CheckboxProps = {\n id: string;\n label?: string;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n} & CheckboxInputProps;\n\nexport const Checkbox: React.FC<CheckboxProps> = ({\n label,\n required,\n error,\n errorMessage,\n ...props\n}) => {\n if (label) {\n return (\n <>\n <Label\n htmlFor={props.id}\n required={required}\n variant={props.disabled ? 'disabled' : 'inline'}\n >\n <Box as={CheckboxInput} pr=\"8px\" error={error} {...props} />\n {label}\n </Label>\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </>\n );\n }\n\n return <CheckboxInput {...props} />;\n};\n","import React from 'react';\nimport { Box } from '../Box';\n\ntype WidthValues = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;\n\nexport type ColumnProps = {\n className?: string;\n width?: WidthValues | WidthValues[];\n};\n\nconst transform = (width: WidthValues | WidthValues[]) => {\n if (Array.isArray(width)) {\n return width.map(v => `${(v / 12) * 100}%`);\n }\n\n return `${(width / 12) * 100}%`;\n};\n\nexport const Column: React.FC<ColumnProps> = ({\n width = 12,\n children,\n ...props\n}) => (\n <Box {...props} width={transform(width)}>\n {children}\n </Box>\n);\n","import React, { Children } from 'react';\nimport { useStyles } from '@marigold/system';\nimport { Box } from '../Box';\nimport flattenChildren from 'react-keyed-flatten-children';\n\ntype ColumnsProps = {\n className?: string;\n space?: number;\n horizontalAlign?: 'left' | 'right' | 'center';\n verticalAlign?: 'top' | 'bottom' | 'center';\n title?: string; // Should only be used for testing.\n};\n\nexport const Columns: React.FC<ColumnsProps> = ({\n space = 0,\n horizontalAlign = 'left',\n verticalAlign = 'top',\n className,\n children,\n ...props\n}) => {\n let columnItems = flattenChildren(children);\n let childClassNames = useStyles({ css: { p: `${space / 2}px` } });\n\n // horizontal Alignment\n let justify = 'flex-start';\n if (horizontalAlign === 'right') {\n justify = 'flex-end';\n } else if (horizontalAlign === 'center') {\n justify = 'center';\n }\n\n // vertical Alignment\n let alignItems = 'flex-start';\n if (verticalAlign === 'bottom') {\n alignItems = 'flex-end';\n } else if (verticalAlign === 'center') {\n alignItems = 'center';\n }\n\n return (\n <Box p={`${space}px`} display=\"flex\" className={className}>\n <Box\n width={`calc(100% + ${space}px)`}\n m={`${-space / 2}px`}\n display=\"flex\"\n flexWrap=\"wrap\"\n alignItems={alignItems}\n justifyContent={justify}\n {...props}\n >\n {Children.map(\n columnItems as unknown as React.ReactElement,\n (child: React.ReactElement) => {\n return React.cloneElement(\n child,\n {\n className: childClassNames,\n },\n <Box className={child && child.props.className}>\n {child.props.children}\n </Box>\n );\n }\n )}\n </Box>\n </Box>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\nexport type HeadingProps = {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n variant?: string;\n} & ComponentProps<'h1'>;\n\nexport const Heading: React.FC<HeadingProps> = ({\n as = 'h2',\n variant = 'h2',\n children,\n ...props\n}) => (\n <Box {...props} as={as} variant={`text.${variant}`}>\n {children}\n </Box>\n);\n","import React, { RefObject } from 'react';\nimport {\n useOverlay,\n usePreventScroll,\n useModal,\n OverlayProps,\n} from '@react-aria/overlays';\nimport { useDialog } from '@react-aria/dialog';\nimport { FocusScope } from '@react-aria/focus';\nimport { AriaDialogProps } from '@react-types/dialog';\n\nimport { Box } from '../Box';\n\nexport type ModalDialogProps = OverlayProps & AriaDialogProps;\n\nexport const ModalDialog: React.FC<ModalDialogProps> = ({\n children,\n ...props\n}) => {\n // Handle interacting outside the dialog and pressing\n // the Escape key to close the modal.\n const ref = React.useRef<HTMLElement>() as RefObject<HTMLElement>;\n const { overlayProps, underlayProps } = useOverlay(props, ref);\n\n // Prevent scrolling while the modal is open, and hide content\n // outside the modal from screen readers.\n usePreventScroll();\n\n const { modalProps } = useModal();\n const { dialogProps } = useDialog(props, ref);\n\n return (\n <Box variant=\"dialog.modalWrapper\" {...underlayProps}>\n <FocusScope contain restoreFocus autoFocus>\n <Box\n {...overlayProps}\n {...dialogProps}\n {...modalProps}\n ref={ref}\n variant=\"dialog.modalBody\"\n >\n {children}\n </Box>\n </FocusScope>\n </Box>\n );\n};\n","import React, { RefObject } from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { useOverlayTriggerState } from '@react-stately/overlays';\nimport { OverlayContainer } from '@react-aria/overlays';\nimport { useButton } from '@react-aria/button';\nimport { Close } from '@marigold/icons';\n\nimport { Box } from '../Box';\nimport { Button } from '../Button';\nimport { Heading } from '../Heading';\n\nimport { ModalDialog } from './ModalDialog';\n\nexport type DialogProps = {\n isOpen: boolean;\n close: ComponentProps<typeof Button>['onClick'];\n title?: string;\n} & ComponentProps<'div'>;\n\nexport const Dialog: React.FC<DialogProps> = ({\n children,\n title,\n className,\n isOpen,\n close,\n ...props\n}) => {\n const closeButtonRef = React.useRef<HTMLElement>() as RefObject<HTMLElement>;\n\n // useButton ensures that focus management is handled correctly,\n // across all browsers. Focus is restored to the button once the\n // dialog closes.\n const { buttonProps: closeButtonProps } = useButton(\n {\n onPress: () => close(),\n },\n closeButtonRef\n );\n\n return (\n <OverlayContainer>\n <ModalDialog isOpen={isOpen} onClose={close} isDismissable>\n <Box variant=\"dialog.wrapper\" className={className} {...props}>\n <Box variant=\"dialog.body\">\n {title && (\n <Heading as=\"h4\" variant=\"h4\">\n {title}\n </Heading>\n )}\n {children}\n </Box>\n <Box variant=\"dialog.onClose\">\n <Button\n variant=\"close\"\n size=\"xsmall\"\n {...closeButtonProps}\n ref={closeButtonRef}\n >\n <Close size={16} />\n </Button>\n </Box>\n </Box>\n </ModalDialog>\n </OverlayContainer>\n );\n};\n\n// use this hook to get the overlayTriggerState and openButton props for using the dialog component\nexport const useDialogButtonProps = () => {\n const state = useOverlayTriggerState({});\n const openButtonRef = React.useRef<HTMLElement>() as RefObject<HTMLElement>;\n const { buttonProps: openButtonProps } = useButton(\n {\n onPress: () => state.open(),\n },\n openButtonRef\n );\n\n return {\n state,\n openButtonProps,\n openButtonRef,\n };\n};\n","import React from 'react';\nimport { Box } from '../Box';\n\nexport type DividerProps = {\n className?: string;\n variant?: string;\n title?: string; // Should only be used for testing.\n};\n\nexport const Divider: React.FC<DividerProps> = ({\n variant = 'regular',\n ...props\n}) => <Box {...props} as=\"hr\" variant={`divider.${variant}`} />;\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\nexport type InputProps = {\n variant?: string;\n} & ComponentProps<'input'>;\n\nexport const Input: React.FC<InputProps> = ({\n variant = 'default',\n type = 'text',\n ...props\n}) => <Box {...props} as=\"input\" type={type} variant={`input.${variant}`} />;\n","import React from 'react';\nimport { Exclamation } from '@marigold/icons';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Input } from '../Input';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\n\nexport type FieldProps = {\n htmlFor: string;\n label: string;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n disabled?: boolean;\n} & ComponentProps<'input'>;\n\nexport const Field: React.FC<FieldProps> = ({\n type = 'text',\n className,\n htmlFor,\n label,\n required,\n error,\n errorMessage,\n disabled,\n ...props\n}) => {\n return (\n <>\n <Label\n variant={disabled ? 'disabled' : 'above'}\n htmlFor={htmlFor}\n required={required}\n >\n {label}\n </Label>\n <Input\n {...props}\n type={type}\n id={htmlFor}\n disabled={disabled}\n variant={error ? 'error' : 'default'}\n className={className}\n />\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </>\n );\n};\n","import React from 'react';\nimport { Box } from '../Box';\n\nexport type HiddenProps = {\n show?: boolean;\n};\n\nexport const Hidden: React.FC<HiddenProps> = ({\n show = false,\n children,\n ...props\n}) => (\n <Box {...props} as=\"span\" display={show ? 'display' : 'none'}>\n {children}\n </Box>\n);\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\nexport type ImageProps = {\n variant?: string;\n children?: never;\n} & ComponentProps<'img'>;\n\nexport const Image: React.FC<ImageProps> = ({\n variant = 'fullWidth',\n ...props\n}) => <Box {...props} as=\"img\" variant={`images.${variant}`} />;\n","import React, { forwardRef } from 'react';\nimport { ResponsiveStyleValue } from '@marigold/system';\nimport {\n PolymorphicComponentWithRef,\n PolymorphicPropsWithRef,\n} from '@marigold/types';\n\nimport { Box, BoxOwnProps } from '../Box';\n\nexport type TextOwnProps = {\n align?: ResponsiveStyleValue<string>;\n color?: ResponsiveStyleValue<string>;\n cursor?: ResponsiveStyleValue<string>;\n outline?: ResponsiveStyleValue<string>;\n userSelect?: ResponsiveStyleValue<string>;\n} & BoxOwnProps;\n\nexport type TextProps = PolymorphicPropsWithRef<TextOwnProps, 'span'>;\n\nexport const Text: PolymorphicComponentWithRef<TextOwnProps, 'span'> =\n forwardRef(\n (\n {\n as = 'span',\n variant = 'body',\n children,\n className,\n align,\n color,\n cursor,\n outline,\n userSelect,\n ...props\n },\n ref\n ) => (\n <Box\n {...props}\n as={as}\n variant={`text.${variant}`}\n css={{ textAlign: align, color, cursor, outline, userSelect }}\n className={className}\n ref={ref}\n >\n {children}\n </Box>\n )\n );\n","import React, { useRef } from 'react';\nimport { useLink } from '@react-aria/link';\nimport { PolymorphicComponent, PolymorphicProps } from '@marigold/types';\n\nimport { Text, TextOwnProps } from '../Text';\n\nexport type LinkOwnProps = { disabled?: boolean } & TextOwnProps;\nexport type LinkProps = PolymorphicProps<LinkOwnProps, 'a'>;\n\nexport const Link = (({\n as = 'a',\n variant = 'link',\n children,\n disabled,\n ...props\n}: LinkProps) => {\n const ref = useRef<any>();\n const { linkProps } = useLink(\n {\n ...props,\n elementType: typeof as === 'string' ? as : 'span',\n isDisabled: disabled,\n },\n ref\n );\n\n return (\n <Text {...props} {...linkProps} as={as} variant={variant} ref={ref}>\n {children}\n </Text>\n );\n}) as PolymorphicComponent<LinkOwnProps, 'a'>;\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Button } from '../Button';\nimport { Box } from '../Box';\n\nexport type MenuProps = {\n variant?: string;\n label?: string;\n onClick: ComponentProps<typeof Button>['onClick'];\n show?: boolean;\n className?: string;\n title?: string; // For testing\n};\n\nexport const Menu: React.FC<MenuProps> = ({\n variant = 'default',\n label = 'Menu',\n onClick,\n show = false,\n children,\n ...props\n}) => {\n return (\n <Box variant={`menu.${variant}`} {...props}>\n <Button onClick={onClick} variant=\"menu\">\n {label}\n </Button>\n {show ? (\n <Box\n display=\"block\"\n position=\"absolute\"\n minWidth=\"120px\"\n borderRadius=\"2px\"\n >\n {children}\n </Box>\n ) : null}\n </Box>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Link } from '../Link';\nimport { Box } from '../Box';\n\nexport type MenuItemProps = {\n variant?: string;\n} & ComponentProps<typeof Link>;\n\nexport const MenuItem: React.FC<MenuItemProps> = ({\n variant = 'default',\n className,\n children,\n ...props\n}) => {\n return (\n <Box variant={`menuItem.${variant}`} className={className}>\n <Link variant=\"menuItemLink\" {...props}>\n {children}\n </Link>\n </Box>\n );\n};\n","import React from 'react';\nimport { Exclamation, Info, Notification } from '@marigold/icons';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\nimport { Heading } from '../Heading';\n\nexport type MessageProps = {\n messageTitle: string;\n variant?: string;\n} & ComponentProps<'div'>;\n\nexport const Message: React.FC<MessageProps> = ({\n messageTitle,\n variant = 'info',\n className,\n children,\n ...props\n}) => {\n var icon = <Info />;\n if (variant === 'warning') {\n icon = <Notification />;\n }\n if (variant === 'error') {\n icon = <Exclamation />;\n }\n\n return (\n <Box\n display=\"inline-block\"\n variant={`messages.${variant}`}\n className={className}\n {...props}\n >\n <Box display=\"flex\" alignItems=\"center\" variant=\"messages.title\">\n {icon}\n <Heading as=\"h4\" variant=\"h4\">\n {messageTitle}\n </Heading>\n </Box>\n <Box css={{ color: 'black' }}>{children}</Box>\n </Box>\n );\n};\n","import React from 'react';\nimport { OverlayProvider } from '@react-aria/overlays';\nimport { ThemeProvider, ThemeProviderProps } from '@marigold/system';\n// import { Global } from '@emotion/react';\n// import { css } from '@theme-ui/css';\n\n// const GlobalStyles = () => {\n// const theme = useTheme();\n// const styles = css({\n// body: { variant: 'root.body' },\n// html: { variant: 'root.html' },\n// })(theme);\n\n// return <Global styles={styles} />;\n// };\n// a merge of the ThemeProvider and the react-aria OverlayProvider\nexport const MarigoldProvider: React.FC<ThemeProviderProps> = ({\n theme,\n children,\n}) => {\n return (\n <ThemeProvider theme={theme}>\n <OverlayProvider>\n {/* <GlobalStyles /> */}\n {children}\n </OverlayProvider>\n </ThemeProvider>\n );\n};\n","import React from 'react';\nimport { SVG } from '@marigold/icons';\n\nimport { Box } from '../Box';\n\nexport const RadioChecked = ({ disabled = false, ...props }) => (\n <SVG width=\"16\" height=\"32\" viewBox=\"0 0 16 32\" fill=\"none\" {...props}>\n <Box\n as=\"circle\"\n cx=\"8\"\n cy=\"16\"\n r=\"7.5\"\n variant={disabled ? 'radio.checked.disabled' : 'radio.checked'}\n />\n <Box as=\"circle\" cx=\"8\" cy=\"16\" r=\"3\" variant=\"radio.checked.circle\" />\n </SVG>\n);\n\nexport const RadioUnchecked = ({\n disabled = false,\n error = false,\n ...props\n}) => (\n <SVG width=\"16\" height=\"32\" viewBox=\"0 0 16 32\" fill=\"none\" {...props}>\n <Box\n as=\"circle\"\n cx=\"8\"\n cy=\"16\"\n r=\"7.5\"\n variant={\n disabled\n ? 'radio.unchecked.disabled'\n : error\n ? 'radio.unchecked.error'\n : 'radio.unchecked'\n }\n />\n </SVG>\n);\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Exclamation } from '@marigold/icons';\n\nimport { Box } from '../Box';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\n\nimport { RadioChecked, RadioUnchecked } from './RadioIcons';\n\n// Radio Icon\n// ---------------\ntype RadioIconProps = {\n variant?: string;\n checked?: boolean;\n disabled?: boolean;\n error?: boolean;\n children?: never;\n};\n\nconst RadioIcon: React.FC<RadioIconProps> = ({\n variant,\n checked,\n disabled,\n error,\n}) => {\n if (checked) {\n return (\n <Box as={RadioChecked} variant={`radio.${variant}`} disabled={disabled} />\n );\n }\n return (\n <Box\n as={RadioUnchecked}\n variant={`radio.${variant}`}\n disabled={disabled}\n error={error}\n />\n );\n};\n\n// Radio Input\n// ---------------\ntype RadioInputProps = {\n variant?: string;\n error?: boolean;\n} & ComponentProps<'input'>;\n\nconst RadioInput: React.FC<RadioInputProps> = ({\n className,\n variant = 'default',\n error,\n ...props\n}) => (\n <Box display=\"inline-block\" className={className}>\n <Box\n as=\"input\"\n type=\"radio\"\n css={{\n position: 'absolute',\n opacity: 0,\n zIndex: -1,\n width: 1,\n height: 1,\n overflow: 'hidden',\n }}\n {...props}\n />\n <RadioIcon\n checked={props.checked}\n variant={variant}\n disabled={props.disabled}\n error={error}\n />\n </Box>\n);\n\n// Radio\n// ---------------\nexport type RadioProps = {\n id: string;\n label?: string;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n} & RadioInputProps;\n\nexport const Radio: React.FC<RadioProps> = ({\n label,\n required,\n error,\n errorMessage,\n ...props\n}) => {\n if (label) {\n return (\n <>\n <Label\n htmlFor={props.id}\n required={required}\n variant={props.disabled ? 'disabled' : 'inline'}\n >\n <Box as={RadioInput} pr=\"8px\" error={error} {...props} />\n {label}\n </Label>\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </>\n );\n }\n\n return <RadioInput {...props} />;\n};\n","import React from 'react';\nimport { useStyles } from '@marigold/system';\nimport { ComponentProps } from '@marigold/types';\n\nexport type SliderProps = {\n variant?: string;\n} & ComponentProps<'input'>;\n\nexport const Slider: React.FC<SliderProps> = ({\n variant = 'slider',\n className,\n ...props\n}) => {\n const classNames = useStyles({\n variant: `form.${variant}`,\n css: {\n verticalAlign: 'middle',\n },\n className,\n });\n\n return <input type=\"range\" className={classNames} {...props} />;\n};\n","import React, { useEffect, useRef, useState } from 'react';\nimport type { ListState } from '@react-stately/list';\nimport type { Node } from '@react-types/shared';\nimport { useOption } from '@react-aria/listbox';\n\nimport { Box } from '../Box';\n\ninterface OptionProps {\n item: Node<unknown>;\n state: ListState<unknown>;\n}\n\nexport const Option = ({ item, state }: OptionProps) => {\n const ref = useRef<HTMLLIElement>(null);\n const [disabled, setDisabled] = useState(false);\n const { optionProps, isSelected } = useOption(\n {\n key: item.key,\n },\n state,\n ref\n );\n\n useEffect(() => {\n for (const key of state.disabledKeys.values()) {\n if (key === item.key) {\n setDisabled(true);\n }\n }\n }, [state.disabledKeys, item.key]);\n\n return (\n <Box\n as=\"li\"\n {...optionProps}\n ref={ref}\n variant={\n isSelected\n ? 'select.option.selected'\n : disabled\n ? 'select.option.disabled'\n : 'select.option'\n }\n >\n {item.rendered}\n </Box>\n );\n};\n","import React from 'react';\nimport { useListBoxSection } from '@react-aria/listbox';\nimport type { ListState } from '@react-stately/list';\nimport type { Node } from '@react-types/shared';\n\nimport { Box } from '../Box';\nimport { Option } from './Option';\n\ninterface SectionProps {\n section: Node<unknown>;\n state: ListState<unknown>;\n}\n\nexport const ListBoxSection = ({ section, state }: SectionProps) => {\n const { itemProps, headingProps, groupProps } = useListBoxSection({\n heading: section.rendered,\n 'aria-label': section['aria-label'],\n });\n\n return (\n <Box\n as=\"li\"\n {...itemProps}\n css={{\n cursor: 'not-allowed',\n }}\n >\n {section.rendered && (\n <Box as=\"span\" {...headingProps} variant={'select.section'}>\n {section.rendered}\n </Box>\n )}\n <Box as=\"ul\" {...groupProps}>\n {[...section.childNodes].map(node => (\n <Option key={node.key} item={node} state={state} />\n ))}\n </Box>\n </Box>\n );\n};\n","import React, { useRef } from 'react';\nimport { useListBox } from '@react-aria/listbox';\nimport type { AriaListBoxOptions } from '@react-aria/listbox';\nimport type { ListState } from '@react-stately/list';\n\nimport { Box } from '../Box';\nimport { Option } from './Option';\nimport { ListBoxSection } from './ListBoxSection';\n\ninterface ListBoxProps extends AriaListBoxOptions<unknown> {\n state: ListState<unknown>;\n error?: boolean;\n}\n\nexport const ListBox = (props: ListBoxProps) => {\n const ref = useRef<HTMLUListElement>(null);\n const { state, error } = props;\n const { listBoxProps } = useListBox(props, state, ref);\n\n return (\n <Box\n as=\"ul\"\n css={{\n listStyle: 'none',\n }}\n {...listBoxProps}\n variant={error ? 'select.listbox.error' : 'select.listbox'}\n ref={ref}\n >\n {[...state.collection].map(item =>\n item.type === 'section' ? (\n <ListBoxSection key={item.key} section={item} state={state} />\n ) : (\n <Option key={item.key} item={item} state={state} />\n )\n )}\n </Box>\n );\n};\n","import React, { forwardRef, RefObject } from 'react';\nimport { FocusScope } from '@react-aria/focus';\nimport {\n DismissButton,\n OverlayContainer,\n useModal,\n useOverlay,\n} from '@react-aria/overlays';\nimport { mergeProps } from '@react-aria/utils';\n\nimport { Box } from '../Box';\n\ninterface PopoverProps {\n isOpen?: boolean;\n onClose?: () => void;\n ref?: React.Ref<HTMLDivElement>;\n className?: string;\n}\n\nexport const Popover: React.FC<PopoverProps> = forwardRef(\n ({ children, className, isOpen, onClose, ...otherProps }, ref) => {\n // Handle events that should cause the popup to close,\n const { overlayProps } = useOverlay(\n {\n isOpen,\n onClose,\n shouldCloseOnBlur: true,\n isDismissable: true,\n },\n ref as RefObject<HTMLElement>\n );\n // Hide content outside the modal from screen readers.\n const { modalProps } = useModal();\n\n return (\n <OverlayContainer>\n <FocusScope restoreFocus>\n <Box\n {...mergeProps(overlayProps, otherProps, modalProps)}\n className={className}\n ref={ref}\n >\n {children}\n <DismissButton onDismiss={onClose} />\n </Box>\n </FocusScope>\n </OverlayContainer>\n );\n }\n);\n","import React, { Ref, RefObject, useRef } from 'react';\nimport { useSelectState } from '@react-stately/select';\nimport { useButton } from '@react-aria/button';\nimport { mergeProps } from '@react-aria/utils';\nimport { useFocusRing } from '@react-aria/focus';\nimport { HiddenSelect, useSelect } from '@react-aria/select';\nimport type { AriaSelectProps } from '@react-types/select';\nimport { useOverlayTriggerState } from '@react-stately/overlays';\nimport { useOverlayTrigger, useOverlayPosition } from '@react-aria/overlays';\nimport { SingleSelection } from '@react-types/shared';\n\nimport { ComponentProps } from '@marigold/types';\nimport { ArrowDown, ArrowUp, Exclamation, Required } from '@marigold/icons';\nimport { ResponsiveStyleValue } from '@marigold/system';\n\nimport { Box } from '../Box';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\nimport { ListBox } from './ListBox';\nimport { Popover } from './Popover';\n\nexport type SelectProps = {\n placeholder?: string;\n disabled?: boolean;\n required?: boolean;\n width?: ResponsiveStyleValue<number | string>;\n error?: boolean;\n errorMessage?: string;\n} & ComponentProps<'select'> &\n AriaSelectProps<object> &\n SingleSelection;\n\nexport const Select = ({\n placeholder = 'Select an option',\n disabled,\n required,\n error,\n errorMessage,\n width,\n className,\n ...props\n}: SelectProps) => {\n const state = useSelectState(props);\n const overlayTriggerState = useOverlayTriggerState({});\n const triggerRef = useRef<HTMLElement>() as RefObject<HTMLElement>;\n const overlayRef = useRef<HTMLDivElement>();\n\n // Get props for the overlay\n const { overlayProps } = useOverlayTrigger(\n { type: 'listbox' },\n overlayTriggerState,\n triggerRef\n );\n // Get popover positioning props relative to the trigger\n const { overlayProps: positionProps } = useOverlayPosition({\n targetRef: triggerRef,\n overlayRef: overlayRef as RefObject<HTMLElement>,\n placement: 'bottom',\n shouldFlip: false,\n isOpen: state.isOpen,\n onClose: state.close,\n });\n // Get props for child elements from useSelect\n const { labelProps, triggerProps, valueProps, menuProps } = useSelect(\n props,\n state,\n triggerRef\n );\n // Get props for the button based on the trigger props from useSelect\n const { buttonProps } = useButton(triggerProps, triggerRef);\n\n const { focusProps } = useFocusRing();\n\n return (\n <Box position=\"relative\" display=\"inline-block\" width={width && width}>\n {props.label && (\n <Box>\n <Label\n {...labelProps}\n htmlFor={labelProps.id}\n variant={disabled ? 'disabled' : 'above'}\n >\n {required ? (\n <Box as=\"span\" display=\"inline-flex\" alignItems=\"center\">\n {props.label}\n <Box as={Required} size={16} css={{ color: 'error' }} />\n </Box>\n ) : (\n props.label\n )}\n </Label>\n </Box>\n )}\n <HiddenSelect\n state={state}\n triggerRef={triggerRef}\n label={props.label}\n name={props.name}\n isDisabled={disabled}\n />\n <Box\n as=\"button\"\n {...mergeProps(buttonProps, focusProps)}\n ref={triggerRef as RefObject<HTMLButtonElement>}\n variant={\n error && state.isOpen && !disabled\n ? 'button.select.errorOpened'\n : error\n ? 'button.select.error'\n : state.isOpen && !disabled\n ? 'button.select.open'\n : 'button.select'\n }\n disabled={disabled}\n className={className}\n >\n <Box\n as=\"span\"\n {...valueProps}\n variant={disabled ? 'select.disabled' : 'select'}\n >\n {state.selectedItem ? state.selectedItem.rendered : placeholder}\n </Box>\n {state.isOpen && !disabled ? (\n <Box\n as={ArrowUp}\n size={16}\n css={{ fill: disabled ? 'disabled' : 'text' }}\n />\n ) : (\n <Box\n as={ArrowDown}\n size={16}\n css={{ fill: disabled ? 'disabled' : 'text' }}\n />\n )}\n </Box>\n {state.isOpen && !disabled && (\n <Box\n as={Popover}\n {...overlayProps}\n {...positionProps}\n css={{\n width: width\n ? width\n : triggerRef.current && triggerRef.current.offsetWidth + 'px',\n }}\n ref={overlayRef as Ref<HTMLDivElement>}\n isOpen={state.isOpen}\n onClose={state.close}\n >\n <ListBox error={error} {...menuProps} state={state} />\n </Box>\n )}\n {error && errorMessage && (\n <Box as=\"span\" display=\"inline-flex\" alignItems=\"center\">\n <Box as={Exclamation} size={16} css={{ color: 'error' }} />\n <ValidationMessage>{errorMessage}</ValidationMessage>\n </Box>\n )}\n </Box>\n );\n};\n","import React, { Children } from 'react';\nimport flattenChildren from 'react-keyed-flatten-children';\n\nimport { ResponsiveStyleValue } from '@marigold/system';\n\nimport { Box } from '../Box';\n\nexport type StackProps = {\n space?: ResponsiveStyleValue<string>;\n align?: 'left' | 'right' | 'center';\n};\n\nconst ALIGNMENT = {\n left: 'flex-start',\n center: 'center',\n right: 'flex-end',\n};\n\nexport const Stack: React.FC<StackProps> = ({\n space = 'none',\n align = 'left',\n children,\n ...props\n}) => (\n <Box\n {...props}\n display=\"flex\"\n flexDirection=\"column\"\n alignItems={ALIGNMENT[align]}\n css={{ '> * + *': { pt: space } }}\n >\n {Children.map(\n flattenChildren(children) as unknown as React.ReactElement,\n (child: React.ReactElement) => (\n <Box>{React.cloneElement(child, {}, child.props.children)}</Box>\n )\n )}\n </Box>\n);\n","import React from 'react';\nimport { Exclamation } from '@marigold/icons';\nimport { ComponentProps } from '@marigold/types';\n\nimport { ValidationMessage } from '../ValidationMessage';\nimport { Label } from '../Label';\nimport { Box } from '../Box';\n\nexport type TextareaProps = {\n variant?: string;\n label?: string;\n htmlFor?: string;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n} & ComponentProps<'textarea'>;\n\nexport const Textarea: React.FC<TextareaProps> = ({\n variant = 'default',\n htmlFor = 'textarea',\n label,\n error,\n errorMessage,\n required,\n className = '',\n children,\n ...props\n}) => (\n <Box>\n {label && (\n <Label htmlFor={htmlFor} required={required}>\n {label}\n </Label>\n )}\n <Box\n as=\"textarea\"\n {...props}\n display=\"block\"\n variant={`textarea.${variant}`}\n css={{ outlineColor: error && 'error' }}\n className={className}\n />\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </Box>\n);\n","import React from 'react';\nimport { Box } from '../Box';\n\nexport type ContainerProps = {\n className?: string;\n title?: string; // Used for testing.\n};\n\nexport const Container: React.FC<ContainerProps> = ({ children, ...props }) => (\n <Box {...props} width=\"100%\">\n {children}\n </Box>\n);\n"],"names":["Box","forwardRef","ref","variant","as","css","children","className","display","height","width","minWidth","maxWidth","position","top","bottom","right","left","zIndex","p","px","py","pt","pb","pl","pr","m","mx","my","mt","mb","ml","mr","flexDirection","flexWrap","flexShrink","flexGrow","alignItems","justifyContent","bg","border","borderRadius","boxShadow","opacity","overflow","transition","props","React","Element","ActionGroup","space","verticalAlignment","childStyle","marginBottom","marginRight","Children","map","flattenChildren","child","i","undefined","count","ICON_MAP","success","Check","warning","Notification","error","Exclamation","Alert","Icon","size","color","Badge","bgColor","borderColor","Button","disabled","useButton","elementType","isDisabled","buttonProps","Card","title","CheckboxChecked","SVG","viewBox","fill","x","y","rx","fillRule","clipRule","d","CheckboxUnchecked","Label","required","Required","ValidationMessage","CheckboxIcon","checked","CheckboxInput","type","Checkbox","label","errorMessage","htmlFor","id","transform","Array","isArray","v","Column","Columns","horizontalAlign","verticalAlign","columnItems","childClassNames","useStyles","justify","cloneElement","Heading","ModalDialog","useRef","useOverlay","overlayProps","underlayProps","usePreventScroll","useModal","modalProps","useDialog","dialogProps","FocusScope","contain","restoreFocus","autoFocus","Dialog","isOpen","close","closeButtonRef","onPress","closeButtonProps","OverlayContainer","onClose","isDismissable","Close","useDialogButtonProps","state","useOverlayTriggerState","openButtonRef","open","openButtonProps","Divider","Input","Field","Hidden","show","Image","Text","align","cursor","outline","userSelect","textAlign","Link","useLink","linkProps","Menu","onClick","MenuItem","Message","messageTitle","icon","Info","MarigoldProvider","theme","ThemeProvider","OverlayProvider","RadioChecked","cx","cy","r","RadioUnchecked","RadioIcon","RadioInput","Radio","Slider","classNames","Option","item","useState","setDisabled","useOption","key","optionProps","isSelected","useEffect","disabledKeys","values","rendered","ListBoxSection","section","useListBoxSection","heading","itemProps","headingProps","groupProps","childNodes","node","ListBox","useListBox","listBoxProps","listStyle","collection","Popover","otherProps","shouldCloseOnBlur","mergeProps","DismissButton","onDismiss","Select","placeholder","useSelectState","overlayTriggerState","triggerRef","overlayRef","useOverlayTrigger","useOverlayPosition","targetRef","placement","shouldFlip","positionProps","useSelect","labelProps","triggerProps","valueProps","menuProps","useFocusRing","focusProps","HiddenSelect","name","selectedItem","ArrowUp","ArrowDown","current","offsetWidth","ALIGNMENT","center","Stack","Textarea","outlineColor","Container"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,32 @@
|
|
|
1
|
-
export { Box, BoxProps, MarigoldProvider } from '@marigold/system';
|
|
2
1
|
export * from './theme';
|
|
2
|
+
export * from './ActionGroup';
|
|
3
|
+
export * from './Alert';
|
|
4
|
+
export * from './Badge';
|
|
5
|
+
export * from './Box';
|
|
3
6
|
export * from './Button';
|
|
7
|
+
export * from './Card';
|
|
4
8
|
export * from './Checkbox';
|
|
9
|
+
export * from './Column';
|
|
10
|
+
export * from './Columns';
|
|
11
|
+
export * from './Dialog';
|
|
12
|
+
export * from './Divider';
|
|
13
|
+
export * from './Field';
|
|
5
14
|
export * from './Heading';
|
|
15
|
+
export * from './Hidden';
|
|
16
|
+
export * from './Image';
|
|
6
17
|
export * from './Label';
|
|
7
18
|
export * from './Link';
|
|
19
|
+
export * from './Menu';
|
|
20
|
+
export * from './MenuItem';
|
|
21
|
+
export * from './Message';
|
|
22
|
+
export * from './Provider';
|
|
8
23
|
export * from './Radio';
|
|
9
24
|
export * from './Slider';
|
|
10
25
|
export * from './Select';
|
|
11
|
-
export * from './
|
|
26
|
+
export * from './Stack';
|
|
12
27
|
export * from './Text';
|
|
13
28
|
export * from './Textarea';
|
|
14
|
-
export * from './
|
|
15
|
-
export * from './
|
|
29
|
+
export * from './Input';
|
|
30
|
+
export * from './Container';
|
|
31
|
+
export * from './ValidationMessage';
|
|
32
|
+
export { Item, Section } from '@react-stately/collections';
|
package/dist/theme.d.ts
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
export declare type CSSObject = object;
|
|
2
2
|
export declare type BaseTheme = {
|
|
3
|
-
breakpoints:
|
|
4
|
-
space:
|
|
3
|
+
breakpoints: string[];
|
|
4
|
+
space: {
|
|
5
|
+
none: number;
|
|
6
|
+
xxsmall: number;
|
|
7
|
+
xsmall: number;
|
|
8
|
+
small: number;
|
|
9
|
+
medium: number;
|
|
10
|
+
large: number;
|
|
11
|
+
xlarge: number;
|
|
12
|
+
xxlarge: number;
|
|
13
|
+
};
|
|
5
14
|
fonts: {
|
|
6
15
|
body: string;
|
|
7
16
|
heading: string;
|
|
8
17
|
};
|
|
9
|
-
fontSizes:
|
|
18
|
+
fontSizes: {
|
|
19
|
+
xxsmall: string;
|
|
20
|
+
xsmall: string;
|
|
21
|
+
small: string;
|
|
22
|
+
medium: string;
|
|
23
|
+
large: string;
|
|
24
|
+
xlarge: string;
|
|
25
|
+
};
|
|
10
26
|
fontWeights: {
|
|
11
27
|
body: number;
|
|
12
28
|
heading: number;
|
|
@@ -21,7 +37,11 @@ export declare type BaseTheme = {
|
|
|
21
37
|
background: string;
|
|
22
38
|
primary: string;
|
|
23
39
|
secondary: string;
|
|
24
|
-
|
|
40
|
+
disabled: string;
|
|
41
|
+
error: string;
|
|
42
|
+
warning: string;
|
|
43
|
+
info: string;
|
|
44
|
+
success: string;
|
|
25
45
|
[key: string]: string;
|
|
26
46
|
};
|
|
27
47
|
[key: string]: CSSObject;
|
package/package.json
CHANGED
|
@@ -1,17 +1,37 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@marigold/components",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Components for the Marigold Design System",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/components.esm.js",
|
|
7
7
|
"typings": "dist/index.d.ts",
|
|
8
8
|
"license": "MIT",
|
|
9
|
+
"dependencies": {
|
|
10
|
+
"@marigold/system": "workspace:*",
|
|
11
|
+
"@react-aria/button": "^3.3.3",
|
|
12
|
+
"@react-aria/dialog": "^3.1.4",
|
|
13
|
+
"@react-aria/focus": "^3.4.1",
|
|
14
|
+
"@react-aria/link": "^3.1.4",
|
|
15
|
+
"@react-aria/listbox": "^3.3.1",
|
|
16
|
+
"@react-aria/overlays": "^3.7.2",
|
|
17
|
+
"@react-aria/select": "^3.4.1",
|
|
18
|
+
"@react-aria/ssr": "^3.1.0",
|
|
19
|
+
"@react-aria/utils": "^3.8.2",
|
|
20
|
+
"@react-stately/collections": "^3.3.3",
|
|
21
|
+
"@react-stately/list": "^3.3.0",
|
|
22
|
+
"@react-stately/overlays": "^3.1.3",
|
|
23
|
+
"@react-stately/select": "^3.1.3",
|
|
24
|
+
"@react-types/dialog": "^3.3.1",
|
|
25
|
+
"@react-types/shared": "^3.8.0",
|
|
26
|
+
"react-keyed-flatten-children": "1.3.0"
|
|
27
|
+
},
|
|
9
28
|
"peerDependencies": {
|
|
10
|
-
"react": "^16.x",
|
|
11
|
-
"react-dom": "^16.x"
|
|
29
|
+
"react": "^16.x || ^17.0.0",
|
|
30
|
+
"react-dom": "^16.x || ^17.0.0"
|
|
12
31
|
},
|
|
13
32
|
"devDependencies": {
|
|
14
|
-
"@marigold/
|
|
33
|
+
"@marigold/types": "workspace:*",
|
|
34
|
+
"@testing-library/user-event": "13.5.0"
|
|
15
35
|
},
|
|
16
36
|
"scripts": {
|
|
17
37
|
"build": "tsdx build --tsconfig tsconfig.build.json --transpileOnly",
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { ArgsTable, Canvas, Meta, Story } from '@storybook/addon-docs';
|
|
2
|
+
import { ActionGroup } from './ActionGroup';
|
|
3
|
+
import { Button } from '../Button';
|
|
4
|
+
|
|
5
|
+
<Meta
|
|
6
|
+
title="Components/ActionGroup"
|
|
7
|
+
argTypes={{
|
|
8
|
+
variant: {
|
|
9
|
+
control: {
|
|
10
|
+
type: 'select',
|
|
11
|
+
},
|
|
12
|
+
options: ['default'],
|
|
13
|
+
description: 'ActionGroup style',
|
|
14
|
+
table: {
|
|
15
|
+
defaultValue: {
|
|
16
|
+
summary: 'default',
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
space: {
|
|
21
|
+
control: {
|
|
22
|
+
type: 'text',
|
|
23
|
+
},
|
|
24
|
+
description: 'space between the children',
|
|
25
|
+
table: {
|
|
26
|
+
defaultValue: {
|
|
27
|
+
summary: 'none',
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
verticalAlignment: {
|
|
32
|
+
control: {
|
|
33
|
+
type: 'boolean',
|
|
34
|
+
},
|
|
35
|
+
description: 'alignment vertical',
|
|
36
|
+
table: {
|
|
37
|
+
defaultValue: {
|
|
38
|
+
summary: false,
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
}}
|
|
43
|
+
/>
|
|
44
|
+
|
|
45
|
+
# ActionGroup
|
|
46
|
+
|
|
47
|
+
export const Template = args => (
|
|
48
|
+
<ActionGroup {...args}>
|
|
49
|
+
<Button variant="text" size="small">
|
|
50
|
+
Cancel
|
|
51
|
+
</Button>
|
|
52
|
+
<Button variant="primary" size="small">
|
|
53
|
+
Confirm
|
|
54
|
+
</Button>
|
|
55
|
+
</ActionGroup>
|
|
56
|
+
);
|
|
57
|
+
|
|
58
|
+
<Canvas>
|
|
59
|
+
<Story name="Default">{Template.bind({})}</Story>
|
|
60
|
+
</Canvas>
|
|
61
|
+
|
|
62
|
+
<ArgsTable story="Default" />
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { render, screen } from '@testing-library/react';
|
|
3
|
+
import { ThemeProvider } from '@marigold/system';
|
|
4
|
+
import { ActionGroup } from './ActionGroup';
|
|
5
|
+
import { Button } from '../Button';
|
|
6
|
+
|
|
7
|
+
const theme = {
|
|
8
|
+
actionGroup: {
|
|
9
|
+
default: {
|
|
10
|
+
p: '8px',
|
|
11
|
+
},
|
|
12
|
+
custom: {
|
|
13
|
+
p: '12px',
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
test('supports default variant and themeSection', () => {
|
|
19
|
+
render(
|
|
20
|
+
<ThemeProvider theme={theme}>
|
|
21
|
+
<ActionGroup title="actionGroup" />
|
|
22
|
+
</ThemeProvider>
|
|
23
|
+
);
|
|
24
|
+
const actionGroup = screen.getByTitle(/actionGroup/);
|
|
25
|
+
|
|
26
|
+
expect(actionGroup).toHaveStyle(`padding: 8px;`);
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
test('supports other variant than default', () => {
|
|
30
|
+
render(
|
|
31
|
+
<ThemeProvider theme={theme}>
|
|
32
|
+
<ActionGroup variant="custom" title="actionGroup" />
|
|
33
|
+
</ThemeProvider>
|
|
34
|
+
);
|
|
35
|
+
const actionGroup = screen.getByTitle(/actionGroup/);
|
|
36
|
+
|
|
37
|
+
expect(actionGroup).toHaveStyle(`padding: 12px;`);
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
test('supports space prop', () => {
|
|
41
|
+
render(
|
|
42
|
+
<ThemeProvider theme={theme}>
|
|
43
|
+
<ActionGroup title="actionGroup" space="8px">
|
|
44
|
+
<Button title="Button1">Button1</Button>
|
|
45
|
+
<Button title="Button2">Button2</Button>
|
|
46
|
+
</ActionGroup>
|
|
47
|
+
</ThemeProvider>
|
|
48
|
+
);
|
|
49
|
+
const button1 = screen.getByTitle(/Button1/);
|
|
50
|
+
const button2 = screen.getByTitle(/Button2/);
|
|
51
|
+
|
|
52
|
+
expect(button1.parentElement instanceof HTMLSpanElement).toBeTruthy();
|
|
53
|
+
expect(button1.parentElement).toHaveStyle(`margin-right: 8px;`);
|
|
54
|
+
expect(button2.parentElement).not.toHaveStyle(`margin-right: 8px;`);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
test('supports verticalAlignment prop', () => {
|
|
58
|
+
render(
|
|
59
|
+
<ThemeProvider theme={theme}>
|
|
60
|
+
<ActionGroup title="actionGroup" space="8px" verticalAlignment>
|
|
61
|
+
<Button title="Button1">Button1</Button>
|
|
62
|
+
<Button title="Button2">Button2</Button>
|
|
63
|
+
</ActionGroup>
|
|
64
|
+
</ThemeProvider>
|
|
65
|
+
);
|
|
66
|
+
const button1 = screen.getByTitle(/Button1/);
|
|
67
|
+
const button2 = screen.getByTitle(/Button2/);
|
|
68
|
+
|
|
69
|
+
expect(button1.parentElement instanceof HTMLDivElement).toBeTruthy();
|
|
70
|
+
expect(button1.parentElement).toHaveStyle(`margin-bottom: 8px;`);
|
|
71
|
+
expect(button2.parentElement).not.toHaveStyle(`margin-bottom: 8px;`);
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
test('renders correct HTML element', () => {
|
|
75
|
+
render(
|
|
76
|
+
<ThemeProvider theme={theme}>
|
|
77
|
+
<ActionGroup title="actionGroup" />
|
|
78
|
+
</ThemeProvider>
|
|
79
|
+
);
|
|
80
|
+
const actionGroup = screen.getByTitle(/actionGroup/);
|
|
81
|
+
|
|
82
|
+
expect(actionGroup instanceof HTMLDivElement).toBeTruthy();
|
|
83
|
+
});
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React, { Children } from 'react';
|
|
2
|
+
import flattenChildren from 'react-keyed-flatten-children';
|
|
3
|
+
|
|
4
|
+
import { ResponsiveStyleValue } from '@marigold/system';
|
|
5
|
+
import { ComponentProps } from '@marigold/types';
|
|
6
|
+
|
|
7
|
+
import { Box } from '../Box';
|
|
8
|
+
|
|
9
|
+
export type ActionGroupProps = {
|
|
10
|
+
variant?: string;
|
|
11
|
+
space?: ResponsiveStyleValue<number | string>;
|
|
12
|
+
verticalAlignment?: boolean;
|
|
13
|
+
} & ComponentProps<'div'>;
|
|
14
|
+
|
|
15
|
+
export const ActionGroup: React.FC<ActionGroupProps> = ({
|
|
16
|
+
variant = 'default',
|
|
17
|
+
space = 'none',
|
|
18
|
+
verticalAlignment = false,
|
|
19
|
+
children,
|
|
20
|
+
className,
|
|
21
|
+
...props
|
|
22
|
+
}) => {
|
|
23
|
+
const childStyle = verticalAlignment
|
|
24
|
+
? { marginBottom: space }
|
|
25
|
+
: { marginRight: space };
|
|
26
|
+
return (
|
|
27
|
+
<Box variant={`actionGroup.${variant}`} className={className} {...props}>
|
|
28
|
+
{Children.map(
|
|
29
|
+
flattenChildren(children),
|
|
30
|
+
(child, i) =>
|
|
31
|
+
child !== null &&
|
|
32
|
+
child !== undefined && (
|
|
33
|
+
<Box
|
|
34
|
+
as={verticalAlignment ? 'div' : 'span'}
|
|
35
|
+
css={i < Children.count(children) - 1 ? childStyle : undefined}
|
|
36
|
+
>
|
|
37
|
+
{child}
|
|
38
|
+
</Box>
|
|
39
|
+
)
|
|
40
|
+
)}
|
|
41
|
+
</Box>
|
|
42
|
+
);
|
|
43
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './ActionGroup';
|
|
@@ -1,47 +1,35 @@
|
|
|
1
|
-
import { Meta, Story
|
|
2
|
-
import { Alert
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { ArgsTable, Canvas, Meta, Story } from '@storybook/addon-docs';
|
|
2
|
+
import { Alert } from './Alert';
|
|
3
|
+
import { Text } from '../Text';
|
|
4
|
+
|
|
5
|
+
<Meta
|
|
6
|
+
title="Components/Alert"
|
|
7
|
+
argTypes={{
|
|
8
|
+
variant: {
|
|
9
|
+
control: {
|
|
10
|
+
type: 'select',
|
|
11
|
+
},
|
|
12
|
+
options: ['success', 'warning', 'error'],
|
|
13
|
+
description: 'Alerting in different colors and icons',
|
|
14
|
+
table: {
|
|
15
|
+
defaultValue: {
|
|
16
|
+
summary: 'success',
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
}}
|
|
21
|
+
/>
|
|
5
22
|
|
|
6
23
|
# Alert
|
|
7
24
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
| Property | Type | Default |
|
|
15
|
-
| :-------- | :------------------------------------- | :------ |
|
|
16
|
-
| `variant` | `info`, `danger`, `warning`, `success` | `info` |
|
|
17
|
-
|
|
18
|
-
## Import
|
|
19
|
-
|
|
20
|
-
```tsx
|
|
21
|
-
import { Alert } from '@marigold/components';
|
|
22
|
-
```
|
|
25
|
+
export const Template = args => (
|
|
26
|
+
<Alert {...args}>
|
|
27
|
+
<Text>Alert</Text>
|
|
28
|
+
</Alert>
|
|
29
|
+
);
|
|
23
30
|
|
|
24
|
-
|
|
31
|
+
<Canvas>
|
|
32
|
+
<Story name="Default">{Template.bind({})}</Story>
|
|
33
|
+
</Canvas>
|
|
25
34
|
|
|
26
|
-
<
|
|
27
|
-
<Story name="Info">
|
|
28
|
-
<Alert>
|
|
29
|
-
<Text css={{ color: '#fff' }}>hey, info!</Text>
|
|
30
|
-
</Alert>
|
|
31
|
-
</Story>
|
|
32
|
-
<Story name="Success">
|
|
33
|
-
<Alert variant="success">
|
|
34
|
-
<Text>hey, success!</Text>
|
|
35
|
-
</Alert>
|
|
36
|
-
</Story>
|
|
37
|
-
<Story name="Danger">
|
|
38
|
-
<Alert variant="danger">
|
|
39
|
-
<Text css={{ color: '#fff' }}>hey, danger!</Text>
|
|
40
|
-
</Alert>
|
|
41
|
-
</Story>
|
|
42
|
-
<Story name="Warning">
|
|
43
|
-
<Alert variant="warning">
|
|
44
|
-
<Text css={{ color: '#fff' }}>hey, warning!</Text>
|
|
45
|
-
</Alert>
|
|
46
|
-
</Story>
|
|
47
|
-
</Preview>
|
|
35
|
+
<ArgsTable story="Default" />
|