@marigold/components 0.3.2 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/dist/index.d.ts +362 -32
- package/dist/index.js +1407 -5
- package/dist/index.mjs +1355 -0
- package/package.json +30 -11
- package/dist/ActionGroup/ActionGroup.d.ts +0 -8
- package/dist/ActionGroup/ActionGroup.stories.d.ts +0 -5
- package/dist/ActionGroup/index.d.ts +0 -1
- package/dist/Alert/Alert.d.ts +0 -27
- package/dist/Alert/Alert.stories.d.ts +0 -5
- package/dist/Alert/index.d.ts +0 -1
- package/dist/Badge/Badge.d.ts +0 -13
- package/dist/Badge/Badge.stories.d.ts +0 -5
- package/dist/Badge/index.d.ts +0 -1
- package/dist/Box.d.ts +0 -2
- package/dist/Button/Button.d.ts +0 -9
- package/dist/Button/Button.stories.d.ts +0 -5
- package/dist/Button/index.d.ts +0 -1
- package/dist/Card/Card.d.ts +0 -14
- package/dist/Card/Card.stories.d.ts +0 -5
- package/dist/Card/index.d.ts +0 -1
- package/dist/Checkbox/Checkbox.d.ts +0 -20
- package/dist/Checkbox/Checkbox.stories.d.ts +0 -5
- package/dist/Checkbox/CheckboxIcons.d.ts +0 -9
- package/dist/Checkbox/index.d.ts +0 -1
- package/dist/Column/Column.d.ts +0 -8
- package/dist/Column/Column.stories.d.ts +0 -5
- package/dist/Column/index.d.ts +0 -1
- package/dist/Columns/Columns.d.ts +0 -10
- package/dist/Columns/Columns.stories.d.ts +0 -5
- package/dist/Columns/index.d.ts +0 -1
- package/dist/Container/Container.d.ts +0 -6
- package/dist/Container/Container.stories.d.ts +0 -5
- package/dist/Container/index.d.ts +0 -1
- package/dist/Dialog/Dialog.d.ts +0 -17
- package/dist/Dialog/Dialog.stories.d.ts +0 -5
- package/dist/Dialog/ModalDialog.d.ts +0 -8
- package/dist/Dialog/index.d.ts +0 -1
- package/dist/Divider/Divider.d.ts +0 -11
- package/dist/Divider/Divider.stories.d.ts +0 -5
- package/dist/Divider/index.d.ts +0 -1
- package/dist/Field/Field.d.ts +0 -13
- package/dist/Field/Field.stories.d.ts +0 -5
- package/dist/Field/index.d.ts +0 -1
- package/dist/Image/Image.d.ts +0 -12
- package/dist/Image/Image.stories.d.ts +0 -5
- package/dist/Image/index.d.ts +0 -1
- package/dist/Inline/Inline.d.ts +0 -7
- package/dist/Inline/Inline.stories.d.ts +0 -5
- package/dist/Inline/index.d.ts +0 -1
- package/dist/Input/Input.d.ts +0 -11
- package/dist/Input/Input.stories.d.ts +0 -5
- package/dist/Input/index.d.ts +0 -1
- package/dist/Label/Label.d.ts +0 -19
- package/dist/Label/Label.stories.d.ts +0 -5
- package/dist/Label/index.d.ts +0 -1
- package/dist/Link/Link.d.ts +0 -10
- package/dist/Link/Link.stories.d.ts +0 -5
- package/dist/Link/index.d.ts +0 -1
- package/dist/Menu/Menu.d.ts +0 -15
- package/dist/Menu/Menu.stories.d.ts +0 -5
- package/dist/Menu/index.d.ts +0 -1
- package/dist/MenuItem/MenuItem.d.ts +0 -12
- package/dist/MenuItem/MenuItem.stories.d.ts +0 -5
- package/dist/MenuItem/index.d.ts +0 -1
- package/dist/Message/Message.d.ts +0 -12
- package/dist/Message/Message.stories.d.ts +0 -5
- package/dist/Message/index.d.ts +0 -1
- package/dist/Provider/MarigoldProvider.d.ts +0 -11
- package/dist/Provider/index.d.ts +0 -3
- package/dist/Radio/Radio.d.ts +0 -19
- package/dist/Radio/Radio.stories.d.ts +0 -5
- package/dist/Radio/RadioIcon.d.ts +0 -9
- package/dist/Radio/index.d.ts +0 -1
- package/dist/Select/ListBox.d.ts +0 -9
- package/dist/Select/ListBoxSection.d.ts +0 -9
- package/dist/Select/Option.d.ts +0 -9
- package/dist/Select/Popover.d.ts +0 -9
- package/dist/Select/Select.d.ts +0 -27
- package/dist/Select/Select.stories.d.ts +0 -5
- package/dist/Select/index.d.ts +0 -1
- package/dist/Slider/Slider.d.ts +0 -11
- package/dist/Slider/Slider.stories.d.ts +0 -5
- package/dist/Slider/index.d.ts +0 -1
- package/dist/Stack/Stack.d.ts +0 -7
- package/dist/Stack/Stack.stories.d.ts +0 -5
- package/dist/Stack/index.d.ts +0 -1
- package/dist/Text/Text.d.ts +0 -17
- package/dist/Text/Text.stories.d.ts +0 -5
- package/dist/Text/index.d.ts +0 -1
- package/dist/Textarea/Textarea.d.ts +0 -16
- package/dist/Textarea/Textarea.stories.d.ts +0 -5
- package/dist/Textarea/index.d.ts +0 -1
- package/dist/ValidationMessage/ValidationMessage.d.ts +0 -11
- package/dist/ValidationMessage/ValidationMessage.stories.d.ts +0 -5
- package/dist/ValidationMessage/index.d.ts +0 -1
- package/dist/VisuallyHidden/VisuallyHidden.d.ts +0 -1
- package/dist/VisuallyHidden/VisuallyHidden.stories.d.ts +0 -5
- package/dist/VisuallyHidden/index.d.ts +0 -1
- package/dist/components.cjs.development.js +0 -1394
- package/dist/components.cjs.development.js.map +0 -1
- package/dist/components.cjs.production.min.js +0 -2
- package/dist/components.cjs.production.min.js.map +0 -1
- package/dist/components.esm.js +0 -1320
- package/dist/components.esm.js.map +0 -1
- package/dist/theme.d.ts +0 -23
- package/src/ActionGroup/ActionGroup.stories.tsx +0 -47
- package/src/ActionGroup/ActionGroup.test.tsx +0 -83
- package/src/ActionGroup/ActionGroup.tsx +0 -32
- package/src/ActionGroup/index.ts +0 -1
- package/src/Alert/Alert.stories.tsx +0 -32
- package/src/Alert/Alert.test.tsx +0 -82
- package/src/Alert/Alert.tsx +0 -52
- package/src/Alert/index.ts +0 -1
- package/src/Badge/Badge.stories.tsx +0 -38
- package/src/Badge/Badge.test.tsx +0 -65
- package/src/Badge/Badge.tsx +0 -37
- package/src/Badge/index.ts +0 -1
- package/src/Box.ts +0 -2
- package/src/Button/Button.stories.tsx +0 -57
- package/src/Button/Button.test.tsx +0 -149
- package/src/Button/Button.tsx +0 -64
- package/src/Button/index.ts +0 -1
- package/src/Card/Card.stories.tsx +0 -41
- package/src/Card/Card.test.tsx +0 -71
- package/src/Card/Card.tsx +0 -48
- package/src/Card/index.ts +0 -1
- package/src/Checkbox/Checkbox.stories.tsx +0 -78
- package/src/Checkbox/Checkbox.test.tsx +0 -166
- package/src/Checkbox/Checkbox.tsx +0 -101
- package/src/Checkbox/CheckboxIcons.tsx +0 -59
- package/src/Checkbox/index.ts +0 -1
- package/src/Column/Column.stories.tsx +0 -33
- package/src/Column/Column.test.tsx +0 -32
- package/src/Column/Column.tsx +0 -27
- package/src/Column/index.ts +0 -1
- package/src/Columns/Columns.stories.tsx +0 -75
- package/src/Columns/Columns.test.tsx +0 -113
- package/src/Columns/Columns.tsx +0 -69
- package/src/Columns/index.ts +0 -1
- package/src/Container/Container.stories.tsx +0 -14
- package/src/Container/Container.test.tsx +0 -26
- package/src/Container/Container.tsx +0 -13
- package/src/Container/index.ts +0 -1
- package/src/Dialog/Dialog.stories.tsx +0 -88
- package/src/Dialog/Dialog.test.tsx +0 -158
- package/src/Dialog/Dialog.tsx +0 -130
- package/src/Dialog/ModalDialog.tsx +0 -76
- package/src/Dialog/index.ts +0 -1
- package/src/Divider/Divider.stories.tsx +0 -30
- package/src/Divider/Divider.test.tsx +0 -72
- package/src/Divider/Divider.tsx +0 -33
- package/src/Divider/index.ts +0 -1
- package/src/Field/Field.stories.tsx +0 -110
- package/src/Field/Field.test.tsx +0 -130
- package/src/Field/Field.tsx +0 -56
- package/src/Field/index.ts +0 -1
- package/src/Image/Image.stories.tsx +0 -34
- package/src/Image/Image.test.tsx +0 -73
- package/src/Image/Image.tsx +0 -25
- package/src/Image/index.ts +0 -1
- package/src/Inline/Inline.stories.tsx +0 -39
- package/src/Inline/Inline.test.tsx +0 -99
- package/src/Inline/Inline.tsx +0 -38
- package/src/Inline/index.ts +0 -1
- package/src/Input/Input.stories.tsx +0 -54
- package/src/Input/Input.test.tsx +0 -74
- package/src/Input/Input.tsx +0 -25
- package/src/Input/index.ts +0 -1
- package/src/Label/Label.stories.tsx +0 -41
- package/src/Label/Label.test.tsx +0 -109
- package/src/Label/Label.tsx +0 -64
- package/src/Label/index.ts +0 -1
- package/src/Link/Link.stories.tsx +0 -35
- package/src/Link/Link.test.tsx +0 -97
- package/src/Link/Link.tsx +0 -43
- package/src/Link/index.ts +0 -1
- package/src/Menu/Menu.stories.tsx +0 -62
- package/src/Menu/Menu.test.tsx +0 -84
- package/src/Menu/Menu.tsx +0 -51
- package/src/Menu/index.ts +0 -1
- package/src/MenuItem/MenuItem.stories.tsx +0 -30
- package/src/MenuItem/MenuItem.test.tsx +0 -68
- package/src/MenuItem/MenuItem.tsx +0 -35
- package/src/MenuItem/index.ts +0 -1
- package/src/Message/Message.stories.tsx +0 -30
- package/src/Message/Message.test.tsx +0 -90
- package/src/Message/Message.tsx +0 -55
- package/src/Message/index.ts +0 -1
- package/src/Provider/MarigoldProvider.test.tsx +0 -136
- package/src/Provider/MarigoldProvider.tsx +0 -47
- package/src/Provider/index.ts +0 -4
- package/src/Radio/Radio.stories.tsx +0 -78
- package/src/Radio/Radio.test.tsx +0 -154
- package/src/Radio/Radio.tsx +0 -88
- package/src/Radio/RadioIcon.tsx +0 -49
- package/src/Radio/index.ts +0 -1
- package/src/Select/ListBox.tsx +0 -40
- package/src/Select/ListBoxSection.tsx +0 -40
- package/src/Select/Option.tsx +0 -48
- package/src/Select/Popover.tsx +0 -50
- package/src/Select/Select.stories.tsx +0 -81
- package/src/Select/Select.test.tsx +0 -349
- package/src/Select/Select.tsx +0 -174
- package/src/Select/index.ts +0 -1
- package/src/Slider/Slider.stories.tsx +0 -24
- package/src/Slider/Slider.test.tsx +0 -63
- package/src/Slider/Slider.tsx +0 -35
- package/src/Slider/index.ts +0 -1
- package/src/Stack/Stack.stories.tsx +0 -57
- package/src/Stack/Stack.test.tsx +0 -138
- package/src/Stack/Stack.tsx +0 -39
- package/src/Stack/index.ts +0 -1
- package/src/Text/Text.stories.tsx +0 -61
- package/src/Text/Text.test.tsx +0 -99
- package/src/Text/Text.tsx +0 -60
- package/src/Text/index.ts +0 -1
- package/src/Textarea/Textarea.stories.tsx +0 -64
- package/src/Textarea/Textarea.test.tsx +0 -95
- package/src/Textarea/Textarea.tsx +0 -62
- package/src/Textarea/index.ts +0 -1
- package/src/ValidationMessage/ValidationMessage.stories.tsx +0 -27
- package/src/ValidationMessage/ValidationMessage.test.tsx +0 -68
- package/src/ValidationMessage/ValidationMessage.tsx +0 -40
- package/src/ValidationMessage/index.ts +0 -1
- package/src/VisuallyHidden/VisuallyHidden.stories.tsx +0 -19
- package/src/VisuallyHidden/VisuallyHidden.test.tsx +0 -10
- package/src/VisuallyHidden/VisuallyHidden.tsx +0 -1
- package/src/VisuallyHidden/index.ts +0 -1
- package/src/index.ts +0 -34
- package/src/theme.ts +0 -50
- package/tsconfig.build.json +0 -3
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"components.cjs.development.js","sources":["../src/Inline/Inline.tsx","../src/Stack/Stack.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/Text/Text.tsx","../src/Dialog/ModalDialog.tsx","../src/Dialog/Dialog.tsx","../src/Divider/Divider.tsx","../src/Input/Input.tsx","../src/Field/Field.tsx","../src/Image/Image.tsx","../src/Link/Link.tsx","../src/Menu/Menu.tsx","../src/MenuItem/MenuItem.tsx","../src/Message/Message.tsx","../src/Provider/MarigoldProvider.tsx","../src/Radio/RadioIcon.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/Textarea/Textarea.tsx","../src/Container/Container.tsx"],"sourcesContent":["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 InlineProps = {\n space?: ResponsiveStyleValue<string>;\n align?: 'top' | 'center' | 'bottom';\n};\n\nconst ALIGNMENT = {\n top: 'flex-start',\n center: 'center',\n bottom: 'flex-end',\n};\n\nexport const Inline: React.FC<InlineProps> = ({\n space = 'none',\n align = 'center',\n children,\n ...props\n}) => (\n <Box\n display=\"inline-flex\"\n css={{ '> * + *': { pl: space } }}\n alignItems={ALIGNMENT[align]}\n {...props}\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, { 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';\n\nimport { ResponsiveStyleValue } from '@marigold/system';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Inline } from '../Inline';\nimport { Stack } from '../Stack';\n\n// Props\n// ---------------\nexport type ActionGroupProps = {\n space?: ResponsiveStyleValue<string>;\n verticalAlignment?: boolean;\n} & ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const ActionGroup: React.FC<ActionGroupProps> = ({\n space = 'none',\n verticalAlignment = false,\n children,\n ...props\n}) =>\n verticalAlignment ? (\n <Stack space={space} {...props}>\n {children}\n </Stack>\n ) : (\n <Inline space={space} {...props}>\n {children}\n </Inline>\n );\n","import React from 'react';\nimport { Exclamation, Check, Notification } from '@marigold/icons';\nimport { type ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\nconst ICON_MAP = {\n success: Check,\n warning: Notification,\n error: Exclamation,\n} as const;\n\nexport type AlertVariants = keyof typeof ICON_MAP;\n\n// Theme Extension\n// ---------------\nexport interface AlertThemeExtension<Value> {\n alert?: {\n [key in AlertVariants]?: Value;\n };\n}\n\n// Props\n// ---------------\nexport type AlertProps = {\n variant?: AlertVariants;\n} & ComponentProps<'div'>;\n\n// Component\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={`alert.${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\n// Theme Extension\n// ---------------\nexport interface BadgeThemeExtension<Value> {\n badge?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type BadgeProps = {\n variant?: string;\n bgColor?: string;\n borderColor?: string;\n} & ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const Badge: React.FC<BadgeProps> = ({\n variant = '',\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\n// Theme Extension\n// ---------------\nexport interface ButtonThemeExtension<Value> {\n button?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type ButtonProps = PolymorphicPropsWithRef<BoxOwnProps, 'button'>;\n\n// Component\n// ---------------\nexport const Button: PolymorphicComponentWithRef<BoxOwnProps, 'button'> =\n forwardRef(\n (\n {\n as = 'button',\n variant = 'primary',\n size = 'large',\n space = 'none',\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 display=\"inline-flex\"\n alignItems=\"center\"\n variant={[`button.${variant}`, `button.${size}`]}\n className={className}\n ref={ref}\n css={{ columnGap: space }}\n >\n {children}\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\n// Theme Extension\n// ---------------\nexport interface CardThemeExtension<Value> {\n card?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type CardProps = {\n title?: string;\n width?: ResponsiveStyleValue<string>;\n variant?: string;\n} & ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const Card: React.FC<CardProps> = ({\n variant = '',\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 { conditional, State, SVG } from '@marigold/system';\n\nimport { Box } from '../Box';\n\n// Checkbox Icon\n// ---------------\nexport type CheckboxIconProps = {\n variant?: string;\n checked?: boolean;\n disabled?: boolean;\n error?: boolean;\n children?: never;\n};\n\nexport const CheckboxIcon: React.FC<CheckboxIconProps> = ({\n variant = '',\n checked = false,\n disabled = false,\n error = false,\n}) => {\n const conditionalStates: State = disabled\n ? {\n disabled: disabled,\n }\n : {\n checked: checked,\n error: error,\n };\n\n return (\n <SVG\n width=\"16\"\n height=\"32\"\n viewBox=\"0 0 16 32\"\n fill=\"none\"\n aria-hidden=\"true\"\n >\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={conditional(`checkbox.${variant}`, conditionalStates)}\n />\n {checked && (\n <Box\n __baseCSS={{ fill: 'gray00' }}\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 />\n )}\n </SVG>\n );\n};\n","import React from 'react';\n\nimport { ComponentProps } from '@marigold/types';\nimport { Required } from '@marigold/icons';\nimport { ResponsiveStyleValue } from '@marigold/system';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface LabelThemeExtension<Value> {\n label?: {\n [key: string]: Value;\n };\n}\n\n// LabelBase\n// ---------------\nexport type LabelBaseProps = {\n htmlFor?: string;\n variant?: string;\n required?: boolean;\n color?: ResponsiveStyleValue<string>;\n} & ComponentProps<'label'>;\n\nexport const LabelBase: React.FC<LabelProps> = ({\n variant = 'above',\n required,\n color = 'text',\n children,\n ...props\n}) => {\n return (\n <Box\n {...props}\n as=\"label\"\n __baseCSS={{ color: color }}\n variant={`label.${variant}`}\n >\n {children}\n </Box>\n );\n};\n\n// Label\n// ---------------\nexport type LabelProps = {\n required?: boolean;\n} & LabelBaseProps;\n\nexport const Label: React.FC<LabelProps> = ({\n required,\n children,\n ...props\n}) => {\n return required ? (\n <Box as=\"span\" display=\"inline-flex\" alignItems=\"center\">\n <LabelBase {...props}>{children}</LabelBase>\n {required && <Box as={Required} size={16} css={{ color: 'error' }} />}\n </Box>\n ) : (\n <LabelBase {...props}>{children}</LabelBase>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface ValidationMessageThemeExtension<Value> {\n validation?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type ValidationMessageProps = {\n variant?: string;\n} & ComponentProps<'span'>;\n\n// Component\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 { useFocusRing } from '@react-aria/focus';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\nimport { useCheckbox } from '@react-aria/checkbox';\nimport { useToggleState } from '@react-stately/toggle';\nimport { ToggleProps } from '@react-types/checkbox';\n\nimport { ComponentProps } from '@marigold/types';\nimport { Exclamation } from '@marigold/icons';\n\nimport { CheckboxIcon, CheckboxIconProps } from './CheckboxIcons';\nimport { Box } from '../Box';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\n\n// Theme Extension\n// ---------------\nexport interface CheckboxThemeExtension<Value> {\n checkbox?: {\n [key: string]: Value;\n };\n}\n\n// Checkbox Input\n// ---------------\ntype CheckboxInputProps = CheckboxIconProps &\n ToggleProps &\n ComponentProps<'input'>;\n\nconst CheckboxInput: React.FC<CheckboxInputProps> = ({ error, ...props }) => {\n const state = useToggleState(props);\n const ref = React.useRef<HTMLInputElement>(null);\n const { inputProps } = useCheckbox(props, state, ref);\n const { focusProps } = useFocusRing();\n\n return (\n <Box pr=\"xsmall\">\n <VisuallyHidden>\n <Box\n as=\"input\"\n type=\"checkbox\"\n disabled={props.disabled}\n {...inputProps}\n {...focusProps}\n ref={ref}\n {...props}\n />\n </VisuallyHidden>\n <CheckboxIcon\n checked={props.checked}\n variant={props.variant}\n disabled={props.disabled}\n error={error}\n />\n </Box>\n );\n};\n\n// Checkbox\n// ---------------\nexport type CheckboxProps = {\n id: string;\n label: string;\n required?: boolean;\n labelVariant?: string;\n error?: boolean;\n errorMessage?: string;\n} & CheckboxInputProps;\n\nexport const Checkbox: React.FC<CheckboxProps> = ({\n label,\n required,\n labelVariant = 'inline',\n error,\n errorMessage,\n ...props\n}) => {\n return (\n <>\n <Box\n as={Label}\n __baseCSS={{\n ':hover': { cursor: props.disabled ? 'not-allowed' : 'pointer' },\n }}\n htmlFor={props.id}\n required={required}\n variant={`label.${labelVariant}`}\n color={props.disabled ? 'disabled' : 'text'}\n >\n <Box as={CheckboxInput} error={error} {...props} />\n {label}\n </Box>\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\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 { Box } from '../Box';\nimport flattenChildren from 'react-keyed-flatten-children';\nimport { ResponsiveStyleValue, useTheme } from '@marigold/system';\n\ntype ColumnsProps = {\n className?: string;\n space?: ResponsiveStyleValue<string>;\n horizontalAlign?: 'left' | 'right' | 'center';\n verticalAlign?: 'top' | 'bottom' | 'center';\n};\n\nconst useAlignment = (direction: string) => {\n switch (direction) {\n case 'right':\n return 'flex-end';\n case 'bottom':\n return 'flex-end';\n case 'center':\n return 'center';\n }\n return 'flex-start';\n};\n\nexport const Columns: React.FC<ColumnsProps> = ({\n space = 'none',\n horizontalAlign = 'left',\n verticalAlign = 'top',\n className,\n children,\n ...props\n}) => {\n const justifyContent = useAlignment(horizontalAlign);\n const alignItems = useAlignment(verticalAlign);\n\n /**\n * transform space string to space value from theme\n */\n const { css } = useTheme();\n const spaceObject = css({ space }) as Object;\n const spaceValue = Object.values(spaceObject)[0];\n\n return (\n <Box p={space} display=\"flex\" className={className}>\n <Box\n width={`calc(100% + ${spaceValue}px)`}\n m={`${-spaceValue / 2}px`}\n display=\"flex\"\n flexWrap=\"wrap\"\n alignItems={alignItems}\n justifyContent={justifyContent}\n {...props}\n >\n {Children.map(\n flattenChildren(children) as unknown as React.ReactElement,\n (child: React.ReactElement) => {\n return React.cloneElement(\n child,\n {},\n <Box css={{ p: `${spaceValue / 2}px` }}>\n {child.props.children}\n </Box>\n );\n }\n )}\n </Box>\n </Box>\n );\n};\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\n// Theme Extension\n// ---------------\nexport interface TextThemeExtension<Value> {\n text?: {\n [key: string]: Value;\n };\n}\n\n// Props\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\n// Component\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, { 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\n// Props\n// ---------------\nexport type ModalDialogProps = {\n variant?: string;\n backdropVariant?: string;\n} & OverlayProps &\n AriaDialogProps;\n\n// Component\n// ---------------\nexport const ModalDialog: React.FC<ModalDialogProps> = ({\n variant,\n backdropVariant = 'backdrop',\n children,\n ...props\n}) => {\n const { isDismissable, isOpen, onClose, ...restProps } = 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(\n { isDismissable, isOpen, onClose },\n ref\n );\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\n __baseCSS={{\n display: 'grid',\n placeItems: 'center',\n position: 'fixed',\n zIndex: 100,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n }}\n variant={`dialog.${backdropVariant}`}\n {...underlayProps}\n >\n <FocusScope contain restoreFocus autoFocus>\n <Box\n {...overlayProps}\n {...dialogProps}\n {...modalProps}\n ref={ref}\n variant={variant ? `dialog.${variant}` : `dialog`}\n {...restProps}\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 { Text } from '../Text';\n\nimport { ModalDialog, ModalDialogProps } from './ModalDialog';\n\n// Props\n// ---------------\nexport type DialogProps = {\n backdropVariant?: string;\n close: ComponentProps<typeof Button>['onClick'];\n isOpen: boolean;\n title?: string;\n variant?: string;\n} & ModalDialogProps &\n ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const Dialog: React.FC<DialogProps> = ({\n backdropVariant,\n children,\n className,\n close,\n isOpen,\n title,\n variant,\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\n variant={variant}\n backdropVariant={backdropVariant}\n isOpen={isOpen}\n onClose={close}\n isDismissable\n {...props}\n >\n <Box\n __baseCSS={{\n display: 'flex',\n justifyContent: 'space-between',\n borderRadius: 'small',\n pl: 'large',\n pb: 'large',\n }}\n className={className}\n >\n <Box pt=\"medium\">\n {title && (\n <Text as=\"h4\" variant=\"headline4\">\n {title}\n </Text>\n )}\n {children}\n </Box>\n <Box\n __baseCSS={{\n display: 'flex',\n justifyContent: 'flex-end',\n alignItems: 'start',\n paddingTop: 'xsmall',\n paddingX: 'xsmall',\n }}\n >\n <Box\n as={Button}\n __baseCSS={{\n color: 'text',\n bg: 'transparent',\n lineHeight: 'xsmall',\n px: 'xxsmall',\n ':hover': {\n color: 'text',\n bg: 'transparent',\n cursor: 'pointer',\n },\n ':focus': {\n outline: 0,\n },\n }}\n {...closeButtonProps}\n ref={closeButtonRef}\n >\n <Close size={16} />\n </Box>\n </Box>\n </Box>\n </ModalDialog>\n </OverlayContainer>\n );\n};\n\n// 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 { SeparatorProps, useSeparator } from '@react-aria/separator';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface DividerThemeExtension<Value> {\n divider?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type DividerProps = {\n variant?: string;\n} & SeparatorProps;\n\n// Component\n// ---------------\nexport const Divider: React.FC<DividerProps> = ({ variant = '', ...props }) => {\n const { separatorProps } = useSeparator(props);\n\n return (\n <Box\n __baseCSS={{ width: '100%', height: '1px', m: 'none', bg: 'text' }}\n variant={`divider.${variant}`}\n {...props}\n {...separatorProps}\n />\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface InputThemeExtension<Value> {\n input?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type InputProps = {\n variant?: string;\n} & ComponentProps<'input'>;\n\n// Component\n// ---------------\nexport const Input: React.FC<InputProps> = ({\n variant = '',\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\n// Props\n// ---------------\nexport type FieldProps = {\n variant?: string;\n labelVariant?: string;\n htmlFor: string;\n label: string;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n disabled?: boolean;\n} & ComponentProps<'input'>;\n\n// Component\n// ---------------\nexport const Field: React.FC<FieldProps> = ({\n type = 'text',\n variant = '',\n labelVariant = 'above',\n htmlFor,\n label,\n required,\n error,\n errorMessage,\n disabled,\n ...props\n}) => {\n return (\n <>\n <Label variant={labelVariant} htmlFor={htmlFor} required={required}>\n {label}\n </Label>\n <Input\n {...props}\n type={type}\n id={htmlFor}\n disabled={disabled}\n variant={variant}\n />\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface ImageThemeExtension<Value> {\n image?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type ImageProps = {\n variant?: string;\n children?: never;\n} & ComponentProps<'img'>;\n\n// Component\n// ---------------\nexport const Image: React.FC<ImageProps> = ({\n variant = 'fullWidth',\n ...props\n}) => <Box {...props} as=\"img\" variant={`image.${variant}`} />;\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\n// Theme Extension\n// ---------------\nexport interface LinkThemeExtension<Value> {\n link?: Value;\n}\n\n// Props\n// ---------------\nexport type LinkOwnProps = { disabled?: boolean } & TextOwnProps;\nexport type LinkProps = PolymorphicProps<LinkOwnProps, 'a'>;\n\n// Component\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 // We typecast here because the element could very well be a `span`\n ...(props as PolymorphicProps<LinkOwnProps, any>),\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\n// Theme Extension\n// ---------------\nexport interface MenuThemeExtension<Value> {\n menu?: Value;\n}\n\n// Props\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\n// Component\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\n// Theme Extension\n// ---------------\nexport interface MenuItemThemeExtension<Value> {\n menuItem?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type MenuItemProps = {\n variant?: string;\n} & ComponentProps<typeof Link>;\n\n// Component\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 { Text } from '../Text';\n\n// Theme Extension\n// ---------------\nexport interface MessageThemeExtension<Value> {\n message?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type MessageProps = {\n messageTitle: string;\n variant?: string;\n} & ComponentProps<'div'>;\n\n// Component\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={`message.${variant}`}\n className={className}\n {...props}\n >\n <Box display=\"flex\" alignItems=\"center\" variant=\"message.title\">\n {icon}\n <Text as=\"h4\" variant=\"headline4\">\n {messageTitle}\n </Text>\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 {\n Theme,\n Global,\n ThemeProvider,\n ThemeProviderProps,\n useTheme,\n __defaultTheme,\n} from '@marigold/system';\n\n// Theme Extension\n// ---------------\nexport interface RootThemeExtension<Value> {\n root?: {\n body?: Value;\n html?: Value;\n };\n}\n\n// Props\n// ---------------\nexport interface MarigoldProviderProps<T extends Theme>\n extends ThemeProviderProps<T> {}\n\n// Provider\n// ---------------\nexport function MarigoldProvider<T extends Theme>({\n theme,\n children,\n}: MarigoldProviderProps<T>) {\n const outer = useTheme();\n const isTopLevel = outer.theme === __defaultTheme;\n\n return (\n <ThemeProvider theme={theme}>\n {isTopLevel ? (\n <>\n <Global />\n <OverlayProvider>{children}</OverlayProvider>\n </>\n ) : (\n children\n )}\n </ThemeProvider>\n );\n}\n","import React from 'react';\nimport { conditional, State, SVG } from '@marigold/system';\n\nimport { Box } from '../Box';\n\n// Radio Icon\n// ---------------\nexport type RadioIconProps = {\n variant?: string;\n checked?: boolean;\n disabled?: boolean;\n error?: boolean;\n children?: never;\n};\n\nexport const RadioIcon: React.FC<RadioIconProps> = ({\n variant = '',\n checked = false,\n disabled = false,\n error = false,\n}) => {\n const conditionalStates: State = disabled\n ? {\n disabled: disabled,\n }\n : {\n checked: checked,\n error: error,\n };\n\n return (\n <SVG\n width=\"16\"\n height=\"32\"\n viewBox=\"0 0 16 32\"\n fill=\"none\"\n aria-hidden=\"true\"\n >\n <Box\n variant={conditional(`radio.${variant}`, conditionalStates)}\n as=\"circle\"\n cx=\"8\"\n cy=\"16\"\n r=\"7.5\"\n />\n {checked && <circle fill=\"white\" cx=\"8\" cy=\"16\" r=\"3\" />}\n </SVG>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Exclamation } from '@marigold/icons';\nimport { useFocusRing } from '@react-aria/focus';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\n\nimport { RadioIcon, RadioIconProps } from './RadioIcon';\nimport { Box } from '../Box';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\n\n// Theme Extension\n// ---------------\nexport interface RadioThemeExtension<Value> {\n radio?: {\n [key: string]: Value;\n };\n}\n\n// Radio Input\n// ---------------\ntype RadioInputProps = RadioIconProps & ComponentProps<'input'>;\n\nconst RadioInput: React.FC<RadioInputProps> = ({ error, ...props }) => {\n const { focusProps } = useFocusRing();\n\n return (\n <Box pr=\"xsmall\">\n <VisuallyHidden>\n <input\n type=\"radio\"\n disabled={props.disabled}\n {...focusProps}\n {...props}\n />\n </VisuallyHidden>\n <RadioIcon\n variant={props.variant}\n disabled={props.disabled}\n checked={props.checked}\n error={error}\n />\n </Box>\n );\n};\n\n// Radio\n// ---------------\nexport type RadioProps = {\n id: string;\n label: string;\n required?: boolean;\n labelVariant?: string;\n error?: boolean;\n errorMessage?: string;\n} & RadioInputProps;\n\nexport const Radio: React.FC<RadioProps> = ({\n label,\n required,\n labelVariant = 'inline',\n error,\n errorMessage,\n ...props\n}) => (\n <>\n <Box\n as={Label}\n htmlFor={props.id}\n required={required}\n variant={`label.${labelVariant}`}\n css={\n props.disabled\n ? { color: 'disabled', ':hover': { cursor: 'not-allowed' } }\n : { color: 'text', ':hover': { cursor: 'pointer' } }\n }\n >\n <Box as={RadioInput} error={error} {...props} />\n {label}\n </Box>\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </>\n);\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface SliderThemeExtension<Value> {\n slider?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type SliderProps = {\n variant?: string;\n} & ComponentProps<'input'>;\n\n// Component\n// ---------------\nexport const Slider: React.FC<SliderProps> = ({\n variant = '',\n className,\n ...props\n}) => (\n <Box\n as=\"input\"\n type=\"range\"\n css={{ verticalAlign: 'middle' }}\n variant={`slider.${variant}`}\n className={className}\n {...props}\n />\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 p=\"none\"\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\n// Theme Extension\n// ---------------\nexport interface SelectThemeExtension<Value> {\n select?: {\n __default: Value;\n disabled?: Value;\n listbox?: {\n __default: Value;\n error?: Value;\n };\n section?: Value;\n option?: Value;\n };\n}\n\n// Props\n// ---------------\nexport type SelectProps = {\n labelVariant?: string;\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\n// Component\n// ---------------\nexport const Select = ({\n labelVariant = 'above',\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 {...labelProps} htmlFor={labelProps.id} variant={labelVariant}>\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 as={ArrowUp} size={16} css={{ fill: 'text' }} />\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: 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 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\n// Theme Extension\n// ---------------\nexport interface TextareaThemeExtension<Value> {\n textarea?: {\n [key: string]: Value;\n };\n}\n\n// Props\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\n// Component\n// ---------------\nexport const Textarea: React.FC<TextareaProps> = ({\n variant = '',\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":["ALIGNMENT","top","center","bottom","Inline","space","align","children","props","React","Box","display","css","pl","alignItems","Children","map","flattenChildren","child","cloneElement","left","right","Stack","flexDirection","pt","ActionGroup","verticalAlignment","ICON_MAP","success","Check","warning","Notification","error","Exclamation","Alert","variant","Icon","width","height","bg","as","size","color","m","mx","Badge","bgColor","borderColor","Button","forwardRef","ref","disabled","className","useButton","elementType","isDisabled","buttonProps","columnGap","Card","title","maxWidth","pb","CheckboxIcon","checked","conditionalStates","SVG","viewBox","fill","x","y","rx","conditional","__baseCSS","fillRule","clipRule","d","LabelBase","required","Label","Required","ValidationMessage","CheckboxInput","state","useToggleState","useRef","useCheckbox","inputProps","useFocusRing","focusProps","pr","VisuallyHidden","type","Checkbox","label","labelVariant","errorMessage","cursor","htmlFor","id","transform","Array","isArray","v","Column","useAlignment","direction","Columns","horizontalAlign","verticalAlign","justifyContent","useTheme","spaceObject","spaceValue","Object","values","p","flexWrap","Text","outline","userSelect","textAlign","ModalDialog","backdropVariant","isDismissable","isOpen","onClose","restProps","useOverlay","overlayProps","underlayProps","usePreventScroll","useModal","modalProps","useDialog","dialogProps","placeItems","position","zIndex","FocusScope","contain","restoreFocus","autoFocus","Dialog","close","closeButtonRef","onPress","closeButtonProps","OverlayContainer","borderRadius","paddingTop","paddingX","lineHeight","px","Close","useDialogButtonProps","useOverlayTriggerState","openButtonRef","open","openButtonProps","Divider","useSeparator","separatorProps","Input","Field","Image","Link","useLink","linkProps","Menu","onClick","show","minWidth","MenuItem","Message","messageTitle","icon","Info","MarigoldProvider","theme","outer","isTopLevel","__defaultTheme","ThemeProvider","Global","OverlayProvider","RadioIcon","cx","cy","r","RadioInput","Radio","Slider","Option","item","useState","setDisabled","useOption","key","optionProps","isSelected","useEffect","disabledKeys","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","HiddenSelect","name","selectedItem","ArrowUp","ArrowDown","current","offsetWidth","Textarea","outlineColor","Container"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var r=require("react"),t=e(r),a=e(require("react-keyed-flatten-children")),n=require("@marigold/system"),i=require("@marigold/icons"),l=require("@react-aria/button"),s=require("@react-aria/focus"),o=require("@react-aria/visually-hidden"),c=require("@react-aria/checkbox"),d=require("@react-stately/toggle"),u=require("@react-stately/overlays"),m=require("@react-aria/overlays"),p=require("@react-aria/dialog"),v=require("@react-aria/separator"),b=require("@react-aria/link"),x=require("@react-aria/ssr"),f=require("@react-stately/select"),g=require("@react-aria/utils"),h=require("@react-aria/select"),E=require("@react-aria/listbox"),y=require("@react-stately/collections");function O(){return(O=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e}).apply(this,arguments)}function B(e,r){if(null==e)return{};var t,a,n={},i=Object.keys(e);for(a=0;a<i.length;a++)r.indexOf(t=i[a])>=0||(n[t]=e[t]);return n}function j(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t<r;t++)a[t]=e[t];return a}var S=["space","align","children"],P={top:"flex-start",center:"center",bottom:"flex-end"},k=function(e){var i=e.space,l=void 0===i?"none":i,s=e.align,o=void 0===s?"center":s,c=e.children,d=B(e,S);return t.createElement(n.Box,Object.assign({display:"inline-flex",css:{"> * + *":{pl:l}},alignItems:P[o]},d),r.Children.map(a(c),(function(e){return t.createElement(n.Box,null,t.cloneElement(e,{},e.props.children))})))},C=["space","align","children"],q={left:"flex-start",center:"center",right:"flex-end"},w=function(e){var i=e.space,l=void 0===i?"none":i,s=e.align,o=void 0===s?"left":s,c=e.children,d=B(e,C);return t.createElement(n.Box,Object.assign({},d,{display:"flex",flexDirection:"column",alignItems:q[o],css:{"> * + *":{pt:l}}}),r.Children.map(a(c),(function(e){return t.createElement(n.Box,null,t.cloneElement(e,{},e.props.children))})))},N=["space","verticalAlignment","children"],R=["variant","children"],I={success:i.Check,warning:i.Notification,error:i.Exclamation},F=["variant","bgColor","borderColor","children"],A=["as","variant","size","space","disabled","children","className"],M=r.forwardRef((function(e,r){var a=e.as,i=void 0===a?"button":a,s=e.variant,o=void 0===s?"primary":s,c=e.size,d=void 0===c?"large":c,u=e.space,m=void 0===u?"none":u,p=e.disabled,v=e.children,b=e.className,x=B(e,A),f=l.useButton(O({},x,{elementType:"string"==typeof i?i:"span",isDisabled:p}),r);return t.createElement(n.Box,Object.assign({},f.buttonProps,x,{as:i,display:"inline-flex",alignItems:"center",variant:["button."+o,"button."+d],className:b,ref:r,css:{columnGap:m}}),v)})),T=["variant","title","width","className","children"],V=function(e){var r=e.variant,a=e.checked,i=void 0!==a&&a,l=e.disabled,s=void 0!==l&&l,o=e.error;return t.createElement(n.SVG,{width:"16",height:"32",viewBox:"0 0 16 32",fill:"none","aria-hidden":"true"},t.createElement(n.Box,{as:"rect",x:"0.5",y:"8.5",width:"15px",height:"15px",rx:"1.5",variant:n.conditional("checkbox."+(void 0===r?"":r),s?{disabled:s}:{checked:i,error:void 0!==o&&o})}),i&&t.createElement(n.Box,{__baseCSS:{fill:"gray00"},as:"path",fillRule:"evenodd",clipRule:"evenodd",d:"M13.9571 12.8338L12.4085 11.2852L6.08699 17.6007L3.59887 15.1126L2.04163 16.6588L6.08682 20.704L13.9571 12.8338Z"}))},_=["variant","required","color","children"],z=["required","children"],D=function(e){var r=e.variant,a=void 0===r?"above":r,i=e.color,l=void 0===i?"text":i,s=e.children,o=B(e,_);return t.createElement(n.Box,Object.assign({},o,{as:"label",__baseCSS:{color:l},variant:"label."+a}),s)},L=function(e){var r=e.required,a=e.children,l=B(e,z);return r?t.createElement(n.Box,{as:"span",display:"inline-flex",alignItems:"center"},t.createElement(D,Object.assign({},l),a),r&&t.createElement(n.Box,{as:i.Required,size:16,css:{color:"error"}})):t.createElement(D,Object.assign({},l),a)},H=["variant","children","className"],G=function(e){var r=e.variant,a=void 0===r?"error":r,i=e.children,l=e.className,s=B(e,H);return t.createElement(n.Box,Object.assign({as:"span",display:"flex",alignItems:"center",variant:"validation."+a,className:l},s),i)},W=["error"],K=["label","required","labelVariant","error","errorMessage"],U=function(e){var r=e.error,a=B(e,W),i=d.useToggleState(a),l=t.useRef(null),u=c.useCheckbox(a,i,l).inputProps,m=s.useFocusRing();return t.createElement(n.Box,{pr:"xsmall"},t.createElement(o.VisuallyHidden,null,t.createElement(n.Box,Object.assign({as:"input",type:"checkbox",disabled:a.disabled},u,m.focusProps,{ref:l},a))),t.createElement(V,{checked:a.checked,variant:a.variant,disabled:a.disabled,error:r}))},X=["width","children"],Z=function(e){return Array.isArray(e)?e.map((function(e){return e/12*100+"%"})):e/12*100+"%"},$=["space","horizontalAlign","verticalAlign","className","children"],J=function(e){switch(e){case"right":case"bottom":return"flex-end";case"center":return"center"}return"flex-start"},Q=["as","variant","children","className","align","color","cursor","outline","userSelect"],Y=r.forwardRef((function(e,r){var a=e.as,i=void 0===a?"span":a,l=e.variant,s=void 0===l?"body":l,o=e.children,c=e.className,d=e.align,u=e.color,m=e.cursor,p=e.outline,v=e.userSelect,b=B(e,Q);return t.createElement(n.Box,Object.assign({},b,{as:i,variant:"text."+s,css:{textAlign:d,color:u,cursor:m,outline:p,userSelect:v},className:c,ref:r}),o)})),ee=["variant","backdropVariant","children"],re=["isDismissable","isOpen","onClose"],te=function(e){var r=e.variant,a=e.backdropVariant,i=void 0===a?"backdrop":a,l=e.children,o=B(e,ee),c=o.isDismissable,d=o.isOpen,u=o.onClose,v=B(o,re),b=t.useRef(),x=m.useOverlay({isDismissable:c,isOpen:d,onClose:u},b),f=x.overlayProps,g=x.underlayProps;m.usePreventScroll();var h=m.useModal().modalProps,E=p.useDialog(o,b).dialogProps;return t.createElement(n.Box,Object.assign({__baseCSS:{display:"grid",placeItems:"center",position:"fixed",zIndex:100,top:0,left:0,bottom:0,right:0},variant:"dialog."+i},g),t.createElement(s.FocusScope,{contain:!0,restoreFocus:!0,autoFocus:!0},t.createElement(n.Box,Object.assign({},f,E,h,{ref:b,variant:r?"dialog."+r:"dialog"},v),l)))},ae=["backdropVariant","children","className","close","isOpen","title","variant"],ne=["variant"],ie=["variant","type"],le=function(e){var r=e.variant,a=void 0===r?"":r,i=e.type,l=void 0===i?"text":i,s=B(e,ie);return t.createElement(n.Box,Object.assign({},s,{as:"input",type:l,variant:"input."+a}))},se=["type","variant","labelVariant","htmlFor","label","required","error","errorMessage","disabled"],oe=["variant"],ce=["as","variant","children","disabled"],de=function(e){var a=e.as,n=void 0===a?"a":a,i=e.variant,l=void 0===i?"link":i,s=e.children,o=e.disabled,c=B(e,ce),d=r.useRef(),u=b.useLink(O({},c,{elementType:"string"==typeof n?n:"span",isDisabled:o}),d);return t.createElement(Y,Object.assign({},c,u.linkProps,{as:n,variant:l,ref:d}),s)},ue=["variant","label","onClick","show","children"],me=["variant","className","children"],pe=["messageTitle","variant","className","children"],ve=function(e){var r=e.variant,a=e.checked,i=void 0!==a&&a,l=e.disabled,s=void 0!==l&&l,o=e.error;return t.createElement(n.SVG,{width:"16",height:"32",viewBox:"0 0 16 32",fill:"none","aria-hidden":"true"},t.createElement(n.Box,{variant:n.conditional("radio."+(void 0===r?"":r),s?{disabled:s}:{checked:i,error:void 0!==o&&o}),as:"circle",cx:"8",cy:"16",r:"7.5"}),i&&t.createElement("circle",{fill:"white",cx:"8",cy:"16",r:"3"}))},be=["error"],xe=["label","required","labelVariant","error","errorMessage"],fe=function(e){var r=e.error,a=B(e,be),i=s.useFocusRing();return t.createElement(n.Box,{pr:"xsmall"},t.createElement(o.VisuallyHidden,null,t.createElement("input",Object.assign({type:"radio",disabled:a.disabled},i.focusProps,a))),t.createElement(ve,{variant:a.variant,disabled:a.disabled,checked:a.checked,error:r}))},ge=["variant","className"],he=function(e){var a=e.item,i=e.state,l=r.useRef(null),s=r.useState(!1),o=s[0],c=s[1],d=E.useOption({key:a.key},i,l),u=d.optionProps,m=d.isSelected;return r.useEffect((function(){for(var e,r=function(e,r){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(t)return(t=t.call(e)).next.bind(t);if(Array.isArray(e)||(t=function(e,r){if(e){if("string"==typeof e)return j(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?j(e,void 0):void 0}}(e))){t&&(e=t);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(i.disabledKeys.values());!(e=r()).done;)e.value===a.key&&c(!0)}),[i.disabledKeys,a.key]),t.createElement(n.Box,Object.assign({as:"li"},u,{ref:l,variant:m?"select.option.selected":o?"select.option.disabled":"select.option"}),a.rendered)},Ee=function(e){var r=e.section,a=e.state,i=E.useListBoxSection({heading:r.rendered,"aria-label":r["aria-label"]}),l=i.headingProps,s=i.groupProps;return t.createElement(n.Box,Object.assign({as:"li"},i.itemProps,{css:{cursor:"not-allowed"}}),r.rendered&&t.createElement(n.Box,Object.assign({as:"span"},l,{variant:"select.section"}),r.rendered),t.createElement(n.Box,Object.assign({as:"ul"},s),[].concat(r.childNodes).map((function(e){return t.createElement(he,{key:e.key,item:e,state:a})}))))},ye=function(e){var a=r.useRef(null),i=e.state,l=e.error,s=E.useListBox(e,i,a);return t.createElement(n.Box,Object.assign({as:"ul",p:"none",css:{listStyle:"none"}},s.listBoxProps,{variant:l?"select.listbox.error":"select.listbox",ref:a}),[].concat(i.collection).map((function(e){return"section"===e.type?t.createElement(Ee,{key:e.key,section:e,state:i}):t.createElement(he,{key:e.key,item:e,state:i})})))},Oe=["children","className","isOpen","onClose"],Be=r.forwardRef((function(e,r){var a=e.children,i=e.className,l=e.isOpen,o=e.onClose,c=B(e,Oe),d=m.useOverlay({isOpen:l,onClose:o,shouldCloseOnBlur:!0,isDismissable:!0},r).overlayProps,u=m.useModal();return t.createElement(m.OverlayContainer,null,t.createElement(s.FocusScope,{restoreFocus:!0},t.createElement(n.Box,Object.assign({},g.mergeProps(d,c,u.modalProps),{className:i,ref:r}),a,t.createElement(m.DismissButton,{onDismiss:o}))))})),je=["labelVariant","placeholder","disabled","required","error","errorMessage","width","className"],Se=["variant","htmlFor","label","error","errorMessage","required","className","children"],Pe=["children"];Object.defineProperty(exports,"Box",{enumerable:!0,get:function(){return n.Box}}),Object.defineProperty(exports,"ThemeProvider",{enumerable:!0,get:function(){return n.ThemeProvider}}),Object.defineProperty(exports,"useTheme",{enumerable:!0,get:function(){return n.useTheme}}),Object.defineProperty(exports,"VisuallyHidden",{enumerable:!0,get:function(){return o.VisuallyHidden}}),Object.defineProperty(exports,"SSRProvider",{enumerable:!0,get:function(){return x.SSRProvider}}),Object.defineProperty(exports,"Item",{enumerable:!0,get:function(){return y.Item}}),Object.defineProperty(exports,"Section",{enumerable:!0,get:function(){return y.Section}}),exports.ActionGroup=function(e){var r=e.space,a=void 0===r?"none":r,n=e.verticalAlignment,i=void 0!==n&&n,l=e.children,s=B(e,N);return t.createElement(i?w:k,Object.assign({space:a},s),l)},exports.Alert=function(e){var r=e.variant,a=void 0===r?"success":r,i=e.children,l=B(e,R),s=I[a];return t.createElement(n.Box,Object.assign({},l,{display:"flex",variant:"alert."+a}),t.createElement(n.Box,{display:"inline-block",alignItems:"center",width:"32px",height:"32px",bg:a},t.createElement(n.Box,{as:s,size:12,color:"#fff",bg:a,m:10})),t.createElement(n.Box,{mx:"16px"},i))},exports.Badge=function(e){var r=e.variant,a=void 0===r?"":r,i=e.bgColor,l=void 0===i?"transparent":i,s=e.borderColor,o=void 0===s?"transparent":s,c=e.children,d=B(e,F);return t.createElement(n.Box,Object.assign({css:{bg:l,borderColor:o},variant:"badge."+a},d),c)},exports.Button=M,exports.Card=function(e){var r=e.variant,a=void 0===r?"":r,i=e.title,l=e.width,s=e.className,o=e.children,c=B(e,T);return t.createElement(n.Box,Object.assign({},c,{variant:"card."+a,maxWidth:l,className:s}),i&&t.createElement(n.Box,{as:"h2",variant:"text.h2",pb:"small"},i),o)},exports.Checkbox=function(e){var r=e.label,a=e.required,l=e.labelVariant,s=void 0===l?"inline":l,o=e.error,c=e.errorMessage,d=B(e,K);return t.createElement(t.Fragment,null,t.createElement(n.Box,{as:L,__baseCSS:{":hover":{cursor:d.disabled?"not-allowed":"pointer"}},htmlFor:d.id,required:a,variant:"label."+s,color:d.disabled?"disabled":"text"},t.createElement(n.Box,Object.assign({as:U,error:o},d)),r),o&&c&&t.createElement(G,null,t.createElement(i.Exclamation,{size:16}),c))},exports.Column=function(e){var r=e.width,a=void 0===r?12:r,i=e.children,l=B(e,X);return t.createElement(n.Box,Object.assign({},l,{width:Z(a)}),i)},exports.Columns=function(e){var i=e.space,l=void 0===i?"none":i,s=e.horizontalAlign,o=void 0===s?"left":s,c=e.verticalAlign,d=void 0===c?"top":c,u=e.className,m=e.children,p=B(e,$),v=J(o),b=J(d),x=(0,n.useTheme().css)({space:l}),f=Object.values(x)[0];return t.createElement(n.Box,{p:l,display:"flex",className:u},t.createElement(n.Box,Object.assign({width:"calc(100% + "+f+"px)",m:-f/2+"px",display:"flex",flexWrap:"wrap",alignItems:b,justifyContent:v},p),r.Children.map(a(m),(function(e){return t.cloneElement(e,{},t.createElement(n.Box,{css:{p:f/2+"px"}},e.props.children))}))))},exports.Container=function(e){var r=e.children,a=B(e,Pe);return t.createElement(n.Box,Object.assign({},a,{width:"100%"}),r)},exports.Dialog=function(e){var r=e.backdropVariant,a=e.children,s=e.className,o=e.close,c=e.isOpen,d=e.title,u=e.variant,p=B(e,ae),v=t.useRef(),b=l.useButton({onPress:function(){return o()}},v).buttonProps;return t.createElement(m.OverlayContainer,null,t.createElement(te,Object.assign({variant:u,backdropVariant:r,isOpen:c,onClose:o,isDismissable:!0},p),t.createElement(n.Box,{__baseCSS:{display:"flex",justifyContent:"space-between",borderRadius:"small",pl:"large",pb:"large"},className:s},t.createElement(n.Box,{pt:"medium"},d&&t.createElement(Y,{as:"h4",variant:"headline4"},d),a),t.createElement(n.Box,{__baseCSS:{display:"flex",justifyContent:"flex-end",alignItems:"start",paddingTop:"xsmall",paddingX:"xsmall"}},t.createElement(n.Box,Object.assign({as:M,__baseCSS:{color:"text",bg:"transparent",lineHeight:"xsmall",px:"xxsmall",":hover":{color:"text",bg:"transparent",cursor:"pointer"},":focus":{outline:0}}},b,{ref:v}),t.createElement(i.Close,{size:16}))))))},exports.Divider=function(e){var r=e.variant,a=void 0===r?"":r,i=B(e,ne),l=v.useSeparator(i);return t.createElement(n.Box,Object.assign({__baseCSS:{width:"100%",height:"1px",m:"none",bg:"text"},variant:"divider."+a},i,l.separatorProps))},exports.Field=function(e){var r=e.type,a=void 0===r?"text":r,n=e.variant,l=void 0===n?"":n,s=e.labelVariant,o=void 0===s?"above":s,c=e.htmlFor,d=e.label,u=e.required,m=e.error,p=e.errorMessage,v=e.disabled,b=B(e,se);return t.createElement(t.Fragment,null,t.createElement(L,{variant:o,htmlFor:c,required:u},d),t.createElement(le,Object.assign({},b,{type:a,id:c,disabled:v,variant:l})),m&&p&&t.createElement(G,null,t.createElement(i.Exclamation,{size:16}),p))},exports.Image=function(e){var r=e.variant,a=void 0===r?"fullWidth":r,i=B(e,oe);return t.createElement(n.Box,Object.assign({},i,{as:"img",variant:"image."+a}))},exports.Inline=k,exports.Input=le,exports.Label=L,exports.LabelBase=D,exports.Link=de,exports.MarigoldProvider=function(e){var r=e.theme,a=e.children,i=n.useTheme();return t.createElement(n.ThemeProvider,{theme:r},i.theme===n.__defaultTheme?t.createElement(t.Fragment,null,t.createElement(n.Global,null),t.createElement(m.OverlayProvider,null,a)):a)},exports.Menu=function(e){var r=e.variant,a=void 0===r?"default":r,i=e.label,l=void 0===i?"Menu":i,s=e.onClick,o=e.show,c=void 0!==o&&o,d=e.children,u=B(e,ue);return t.createElement(n.Box,Object.assign({variant:"menu."+a},u),t.createElement(M,{onClick:s,variant:"menu"},l),c?t.createElement(n.Box,{display:"block",position:"absolute",minWidth:"120px",borderRadius:"2px"},d):null)},exports.MenuItem=function(e){var r=e.variant,a=void 0===r?"default":r,i=e.className,l=e.children,s=B(e,me);return t.createElement(n.Box,{variant:"menuItem."+a,className:i},t.createElement(de,Object.assign({variant:"menuItemLink"},s),l))},exports.Message=function(e){var r=e.messageTitle,a=e.variant,l=void 0===a?"info":a,s=e.className,o=e.children,c=B(e,pe),d=t.createElement(i.Info,null);return"warning"===l&&(d=t.createElement(i.Notification,null)),"error"===l&&(d=t.createElement(i.Exclamation,null)),t.createElement(n.Box,Object.assign({display:"inline-block",variant:"message."+l,className:s},c),t.createElement(n.Box,{display:"flex",alignItems:"center",variant:"message.title"},d,t.createElement(Y,{as:"h4",variant:"headline4"},r)),t.createElement(n.Box,{css:{color:"black"}},o))},exports.Radio=function(e){var r=e.label,a=e.required,l=e.labelVariant,s=void 0===l?"inline":l,o=e.error,c=e.errorMessage,d=B(e,xe);return t.createElement(t.Fragment,null,t.createElement(n.Box,{as:L,htmlFor:d.id,required:a,variant:"label."+s,css:d.disabled?{color:"disabled",":hover":{cursor:"not-allowed"}}:{color:"text",":hover":{cursor:"pointer"}}},t.createElement(n.Box,Object.assign({as:fe,error:o},d)),r),o&&c&&t.createElement(G,null,t.createElement(i.Exclamation,{size:16}),c))},exports.Select=function(e){var a=e.labelVariant,o=void 0===a?"above":a,c=e.placeholder,d=void 0===c?"Select an option":c,p=e.disabled,v=e.required,b=e.error,x=e.errorMessage,E=e.width,y=e.className,O=B(e,je),j=f.useSelectState(O),S=u.useOverlayTriggerState({}),P=r.useRef(),k=r.useRef(),C=m.useOverlayTrigger({type:"listbox"},S,P).overlayProps,q=m.useOverlayPosition({targetRef:P,overlayRef:k,placement:"bottom",shouldFlip:!1,isOpen:j.isOpen,onClose:j.close}).overlayProps,w=h.useSelect(O,j,P),N=w.labelProps,R=w.valueProps,I=w.menuProps,F=l.useButton(w.triggerProps,P).buttonProps,A=s.useFocusRing().focusProps;return t.createElement(n.Box,{position:"relative",display:"inline-block",width:E&&E},O.label&&t.createElement(n.Box,null,t.createElement(L,Object.assign({},N,{htmlFor:N.id,variant:o}),v?t.createElement(n.Box,{as:"span",display:"inline-flex",alignItems:"center"},O.label,t.createElement(n.Box,{as:i.Required,size:16,css:{color:"error"}})):O.label)),t.createElement(h.HiddenSelect,{state:j,triggerRef:P,label:O.label,name:O.name,isDisabled:p}),t.createElement(n.Box,Object.assign({as:"button"},g.mergeProps(F,A),{ref:P,variant:b&&j.isOpen&&!p?"button.select.errorOpened":b?"button.select.error":j.isOpen&&!p?"button.select.open":"button.select",disabled:p,className:y}),t.createElement(n.Box,Object.assign({as:"span"},R,{variant:p?"select.disabled":"select"}),j.selectedItem?j.selectedItem.rendered:d),t.createElement(n.Box,j.isOpen&&!p?{as:i.ArrowUp,size:16,css:{fill:"text"}}:{as:i.ArrowDown,size:16,css:{fill:p?"disabled":"text"}})),j.isOpen&&!p&&t.createElement(n.Box,Object.assign({as:Be},C,q,{css:{width:P.current&&P.current.offsetWidth+"px"},ref:k,isOpen:j.isOpen,onClose:j.close}),t.createElement(ye,Object.assign({error:b},I,{state:j}))),b&&x&&t.createElement(n.Box,{as:"span",display:"inline-flex",alignItems:"center"},t.createElement(n.Box,{as:i.Exclamation,size:16,css:{color:"error"}}),t.createElement(G,null,x)))},exports.Slider=function(e){var r=e.variant,a=void 0===r?"":r,i=e.className,l=B(e,ge);return t.createElement(n.Box,Object.assign({as:"input",type:"range",css:{verticalAlign:"middle"},variant:"slider."+a,className:i},l))},exports.Stack=w,exports.Text=Y,exports.Textarea=function(e){var r=e.variant,a=void 0===r?"":r,l=e.htmlFor,s=void 0===l?"textarea":l,o=e.label,c=e.error,d=e.errorMessage,u=e.required,m=e.className,p=void 0===m?"":m,v=B(e,Se);return t.createElement(n.Box,null,o&&t.createElement(L,{htmlFor:s,required:u},o),t.createElement(n.Box,Object.assign({as:"textarea"},v,{display:"block",variant:"textarea."+a,css:{outlineColor:c&&"error"},className:p})),c&&d&&t.createElement(G,null,t.createElement(i.Exclamation,{size:16}),d))},exports.ValidationMessage=G,exports.useDialogButtonProps=function(){var e=u.useOverlayTriggerState({}),r=t.useRef(),a=l.useButton({onPress:function(){return e.open()}},r);return{state:e,openButtonProps:a.buttonProps,openButtonRef:r}};
|
|
2
|
-
//# sourceMappingURL=components.cjs.production.min.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"components.cjs.production.min.js","sources":["../src/Inline/Inline.tsx","../src/Stack/Stack.tsx","../src/Alert/Alert.tsx","../src/Button/Button.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/Text/Text.tsx","../src/Dialog/ModalDialog.tsx","../src/Input/Input.tsx","../src/Link/Link.tsx","../src/Radio/RadioIcon.tsx","../src/Radio/Radio.tsx","../src/Select/Option.tsx","../src/Select/ListBoxSection.tsx","../src/Select/ListBox.tsx","../src/Select/Popover.tsx","../src/ActionGroup/ActionGroup.tsx","../src/Badge/Badge.tsx","../src/Card/Card.tsx","../src/Container/Container.tsx","../src/Dialog/Dialog.tsx","../src/Divider/Divider.tsx","../src/Field/Field.tsx","../src/Image/Image.tsx","../src/Provider/MarigoldProvider.tsx","../src/Menu/Menu.tsx","../src/MenuItem/MenuItem.tsx","../src/Message/Message.tsx","../src/Select/Select.tsx","../src/Slider/Slider.tsx","../src/Textarea/Textarea.tsx"],"sourcesContent":["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 InlineProps = {\n space?: ResponsiveStyleValue<string>;\n align?: 'top' | 'center' | 'bottom';\n};\n\nconst ALIGNMENT = {\n top: 'flex-start',\n center: 'center',\n bottom: 'flex-end',\n};\n\nexport const Inline: React.FC<InlineProps> = ({\n space = 'none',\n align = 'center',\n children,\n ...props\n}) => (\n <Box\n display=\"inline-flex\"\n css={{ '> * + *': { pl: space } }}\n alignItems={ALIGNMENT[align]}\n {...props}\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, { 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, Check, Notification } from '@marigold/icons';\nimport { type ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\nconst ICON_MAP = {\n success: Check,\n warning: Notification,\n error: Exclamation,\n} as const;\n\nexport type AlertVariants = keyof typeof ICON_MAP;\n\n// Theme Extension\n// ---------------\nexport interface AlertThemeExtension<Value> {\n alert?: {\n [key in AlertVariants]?: Value;\n };\n}\n\n// Props\n// ---------------\nexport type AlertProps = {\n variant?: AlertVariants;\n} & ComponentProps<'div'>;\n\n// Component\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={`alert.${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, { 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\n// Theme Extension\n// ---------------\nexport interface ButtonThemeExtension<Value> {\n button?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type ButtonProps = PolymorphicPropsWithRef<BoxOwnProps, 'button'>;\n\n// Component\n// ---------------\nexport const Button: PolymorphicComponentWithRef<BoxOwnProps, 'button'> =\n forwardRef(\n (\n {\n as = 'button',\n variant = 'primary',\n size = 'large',\n space = 'none',\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 display=\"inline-flex\"\n alignItems=\"center\"\n variant={[`button.${variant}`, `button.${size}`]}\n className={className}\n ref={ref}\n css={{ columnGap: space }}\n >\n {children}\n </Box>\n );\n }\n );\n","import React from 'react';\nimport { conditional, State, SVG } from '@marigold/system';\n\nimport { Box } from '../Box';\n\n// Checkbox Icon\n// ---------------\nexport type CheckboxIconProps = {\n variant?: string;\n checked?: boolean;\n disabled?: boolean;\n error?: boolean;\n children?: never;\n};\n\nexport const CheckboxIcon: React.FC<CheckboxIconProps> = ({\n variant = '',\n checked = false,\n disabled = false,\n error = false,\n}) => {\n const conditionalStates: State = disabled\n ? {\n disabled: disabled,\n }\n : {\n checked: checked,\n error: error,\n };\n\n return (\n <SVG\n width=\"16\"\n height=\"32\"\n viewBox=\"0 0 16 32\"\n fill=\"none\"\n aria-hidden=\"true\"\n >\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={conditional(`checkbox.${variant}`, conditionalStates)}\n />\n {checked && (\n <Box\n __baseCSS={{ fill: 'gray00' }}\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 />\n )}\n </SVG>\n );\n};\n","import React from 'react';\n\nimport { ComponentProps } from '@marigold/types';\nimport { Required } from '@marigold/icons';\nimport { ResponsiveStyleValue } from '@marigold/system';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface LabelThemeExtension<Value> {\n label?: {\n [key: string]: Value;\n };\n}\n\n// LabelBase\n// ---------------\nexport type LabelBaseProps = {\n htmlFor?: string;\n variant?: string;\n required?: boolean;\n color?: ResponsiveStyleValue<string>;\n} & ComponentProps<'label'>;\n\nexport const LabelBase: React.FC<LabelProps> = ({\n variant = 'above',\n required,\n color = 'text',\n children,\n ...props\n}) => {\n return (\n <Box\n {...props}\n as=\"label\"\n __baseCSS={{ color: color }}\n variant={`label.${variant}`}\n >\n {children}\n </Box>\n );\n};\n\n// Label\n// ---------------\nexport type LabelProps = {\n required?: boolean;\n} & LabelBaseProps;\n\nexport const Label: React.FC<LabelProps> = ({\n required,\n children,\n ...props\n}) => {\n return required ? (\n <Box as=\"span\" display=\"inline-flex\" alignItems=\"center\">\n <LabelBase {...props}>{children}</LabelBase>\n {required && <Box as={Required} size={16} css={{ color: 'error' }} />}\n </Box>\n ) : (\n <LabelBase {...props}>{children}</LabelBase>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface ValidationMessageThemeExtension<Value> {\n validation?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type ValidationMessageProps = {\n variant?: string;\n} & ComponentProps<'span'>;\n\n// Component\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 { useFocusRing } from '@react-aria/focus';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\nimport { useCheckbox } from '@react-aria/checkbox';\nimport { useToggleState } from '@react-stately/toggle';\nimport { ToggleProps } from '@react-types/checkbox';\n\nimport { ComponentProps } from '@marigold/types';\nimport { Exclamation } from '@marigold/icons';\n\nimport { CheckboxIcon, CheckboxIconProps } from './CheckboxIcons';\nimport { Box } from '../Box';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\n\n// Theme Extension\n// ---------------\nexport interface CheckboxThemeExtension<Value> {\n checkbox?: {\n [key: string]: Value;\n };\n}\n\n// Checkbox Input\n// ---------------\ntype CheckboxInputProps = CheckboxIconProps &\n ToggleProps &\n ComponentProps<'input'>;\n\nconst CheckboxInput: React.FC<CheckboxInputProps> = ({ error, ...props }) => {\n const state = useToggleState(props);\n const ref = React.useRef<HTMLInputElement>(null);\n const { inputProps } = useCheckbox(props, state, ref);\n const { focusProps } = useFocusRing();\n\n return (\n <Box pr=\"xsmall\">\n <VisuallyHidden>\n <Box\n as=\"input\"\n type=\"checkbox\"\n disabled={props.disabled}\n {...inputProps}\n {...focusProps}\n ref={ref}\n {...props}\n />\n </VisuallyHidden>\n <CheckboxIcon\n checked={props.checked}\n variant={props.variant}\n disabled={props.disabled}\n error={error}\n />\n </Box>\n );\n};\n\n// Checkbox\n// ---------------\nexport type CheckboxProps = {\n id: string;\n label: string;\n required?: boolean;\n labelVariant?: string;\n error?: boolean;\n errorMessage?: string;\n} & CheckboxInputProps;\n\nexport const Checkbox: React.FC<CheckboxProps> = ({\n label,\n required,\n labelVariant = 'inline',\n error,\n errorMessage,\n ...props\n}) => {\n return (\n <>\n <Box\n as={Label}\n __baseCSS={{\n ':hover': { cursor: props.disabled ? 'not-allowed' : 'pointer' },\n }}\n htmlFor={props.id}\n required={required}\n variant={`label.${labelVariant}`}\n color={props.disabled ? 'disabled' : 'text'}\n >\n <Box as={CheckboxInput} error={error} {...props} />\n {label}\n </Box>\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\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 { Box } from '../Box';\nimport flattenChildren from 'react-keyed-flatten-children';\nimport { ResponsiveStyleValue, useTheme } from '@marigold/system';\n\ntype ColumnsProps = {\n className?: string;\n space?: ResponsiveStyleValue<string>;\n horizontalAlign?: 'left' | 'right' | 'center';\n verticalAlign?: 'top' | 'bottom' | 'center';\n};\n\nconst useAlignment = (direction: string) => {\n switch (direction) {\n case 'right':\n return 'flex-end';\n case 'bottom':\n return 'flex-end';\n case 'center':\n return 'center';\n }\n return 'flex-start';\n};\n\nexport const Columns: React.FC<ColumnsProps> = ({\n space = 'none',\n horizontalAlign = 'left',\n verticalAlign = 'top',\n className,\n children,\n ...props\n}) => {\n const justifyContent = useAlignment(horizontalAlign);\n const alignItems = useAlignment(verticalAlign);\n\n /**\n * transform space string to space value from theme\n */\n const { css } = useTheme();\n const spaceObject = css({ space }) as Object;\n const spaceValue = Object.values(spaceObject)[0];\n\n return (\n <Box p={space} display=\"flex\" className={className}>\n <Box\n width={`calc(100% + ${spaceValue}px)`}\n m={`${-spaceValue / 2}px`}\n display=\"flex\"\n flexWrap=\"wrap\"\n alignItems={alignItems}\n justifyContent={justifyContent}\n {...props}\n >\n {Children.map(\n flattenChildren(children) as unknown as React.ReactElement,\n (child: React.ReactElement) => {\n return React.cloneElement(\n child,\n {},\n <Box css={{ p: `${spaceValue / 2}px` }}>\n {child.props.children}\n </Box>\n );\n }\n )}\n </Box>\n </Box>\n );\n};\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\n// Theme Extension\n// ---------------\nexport interface TextThemeExtension<Value> {\n text?: {\n [key: string]: Value;\n };\n}\n\n// Props\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\n// Component\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, { 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\n// Props\n// ---------------\nexport type ModalDialogProps = {\n variant?: string;\n backdropVariant?: string;\n} & OverlayProps &\n AriaDialogProps;\n\n// Component\n// ---------------\nexport const ModalDialog: React.FC<ModalDialogProps> = ({\n variant,\n backdropVariant = 'backdrop',\n children,\n ...props\n}) => {\n const { isDismissable, isOpen, onClose, ...restProps } = 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(\n { isDismissable, isOpen, onClose },\n ref\n );\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\n __baseCSS={{\n display: 'grid',\n placeItems: 'center',\n position: 'fixed',\n zIndex: 100,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n }}\n variant={`dialog.${backdropVariant}`}\n {...underlayProps}\n >\n <FocusScope contain restoreFocus autoFocus>\n <Box\n {...overlayProps}\n {...dialogProps}\n {...modalProps}\n ref={ref}\n variant={variant ? `dialog.${variant}` : `dialog`}\n {...restProps}\n >\n {children}\n </Box>\n </FocusScope>\n </Box>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface InputThemeExtension<Value> {\n input?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type InputProps = {\n variant?: string;\n} & ComponentProps<'input'>;\n\n// Component\n// ---------------\nexport const Input: React.FC<InputProps> = ({\n variant = '',\n type = 'text',\n ...props\n}) => <Box {...props} as=\"input\" type={type} variant={`input.${variant}`} />;\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\n// Theme Extension\n// ---------------\nexport interface LinkThemeExtension<Value> {\n link?: Value;\n}\n\n// Props\n// ---------------\nexport type LinkOwnProps = { disabled?: boolean } & TextOwnProps;\nexport type LinkProps = PolymorphicProps<LinkOwnProps, 'a'>;\n\n// Component\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 // We typecast here because the element could very well be a `span`\n ...(props as PolymorphicProps<LinkOwnProps, any>),\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 { conditional, State, SVG } from '@marigold/system';\n\nimport { Box } from '../Box';\n\n// Radio Icon\n// ---------------\nexport type RadioIconProps = {\n variant?: string;\n checked?: boolean;\n disabled?: boolean;\n error?: boolean;\n children?: never;\n};\n\nexport const RadioIcon: React.FC<RadioIconProps> = ({\n variant = '',\n checked = false,\n disabled = false,\n error = false,\n}) => {\n const conditionalStates: State = disabled\n ? {\n disabled: disabled,\n }\n : {\n checked: checked,\n error: error,\n };\n\n return (\n <SVG\n width=\"16\"\n height=\"32\"\n viewBox=\"0 0 16 32\"\n fill=\"none\"\n aria-hidden=\"true\"\n >\n <Box\n variant={conditional(`radio.${variant}`, conditionalStates)}\n as=\"circle\"\n cx=\"8\"\n cy=\"16\"\n r=\"7.5\"\n />\n {checked && <circle fill=\"white\" cx=\"8\" cy=\"16\" r=\"3\" />}\n </SVG>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Exclamation } from '@marigold/icons';\nimport { useFocusRing } from '@react-aria/focus';\nimport { VisuallyHidden } from '@react-aria/visually-hidden';\n\nimport { RadioIcon, RadioIconProps } from './RadioIcon';\nimport { Box } from '../Box';\nimport { Label } from '../Label';\nimport { ValidationMessage } from '../ValidationMessage';\n\n// Theme Extension\n// ---------------\nexport interface RadioThemeExtension<Value> {\n radio?: {\n [key: string]: Value;\n };\n}\n\n// Radio Input\n// ---------------\ntype RadioInputProps = RadioIconProps & ComponentProps<'input'>;\n\nconst RadioInput: React.FC<RadioInputProps> = ({ error, ...props }) => {\n const { focusProps } = useFocusRing();\n\n return (\n <Box pr=\"xsmall\">\n <VisuallyHidden>\n <input\n type=\"radio\"\n disabled={props.disabled}\n {...focusProps}\n {...props}\n />\n </VisuallyHidden>\n <RadioIcon\n variant={props.variant}\n disabled={props.disabled}\n checked={props.checked}\n error={error}\n />\n </Box>\n );\n};\n\n// Radio\n// ---------------\nexport type RadioProps = {\n id: string;\n label: string;\n required?: boolean;\n labelVariant?: string;\n error?: boolean;\n errorMessage?: string;\n} & RadioInputProps;\n\nexport const Radio: React.FC<RadioProps> = ({\n label,\n required,\n labelVariant = 'inline',\n error,\n errorMessage,\n ...props\n}) => (\n <>\n <Box\n as={Label}\n htmlFor={props.id}\n required={required}\n variant={`label.${labelVariant}`}\n css={\n props.disabled\n ? { color: 'disabled', ':hover': { cursor: 'not-allowed' } }\n : { color: 'text', ':hover': { cursor: 'pointer' } }\n }\n >\n <Box as={RadioInput} error={error} {...props} />\n {label}\n </Box>\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </>\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 p=\"none\"\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 from 'react';\n\nimport { ResponsiveStyleValue } from '@marigold/system';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Inline } from '../Inline';\nimport { Stack } from '../Stack';\n\n// Props\n// ---------------\nexport type ActionGroupProps = {\n space?: ResponsiveStyleValue<string>;\n verticalAlignment?: boolean;\n} & ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const ActionGroup: React.FC<ActionGroupProps> = ({\n space = 'none',\n verticalAlignment = false,\n children,\n ...props\n}) =>\n verticalAlignment ? (\n <Stack space={space} {...props}>\n {children}\n </Stack>\n ) : (\n <Inline space={space} {...props}>\n {children}\n </Inline>\n );\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface BadgeThemeExtension<Value> {\n badge?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type BadgeProps = {\n variant?: string;\n bgColor?: string;\n borderColor?: string;\n} & ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const Badge: React.FC<BadgeProps> = ({\n variant = '',\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 from 'react';\nimport { ResponsiveStyleValue } from '@marigold/system';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface CardThemeExtension<Value> {\n card?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type CardProps = {\n title?: string;\n width?: ResponsiveStyleValue<string>;\n variant?: string;\n} & ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const Card: React.FC<CardProps> = ({\n variant = '',\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 { 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","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 { Text } from '../Text';\n\nimport { ModalDialog, ModalDialogProps } from './ModalDialog';\n\n// Props\n// ---------------\nexport type DialogProps = {\n backdropVariant?: string;\n close: ComponentProps<typeof Button>['onClick'];\n isOpen: boolean;\n title?: string;\n variant?: string;\n} & ModalDialogProps &\n ComponentProps<'div'>;\n\n// Component\n// ---------------\nexport const Dialog: React.FC<DialogProps> = ({\n backdropVariant,\n children,\n className,\n close,\n isOpen,\n title,\n variant,\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\n variant={variant}\n backdropVariant={backdropVariant}\n isOpen={isOpen}\n onClose={close}\n isDismissable\n {...props}\n >\n <Box\n __baseCSS={{\n display: 'flex',\n justifyContent: 'space-between',\n borderRadius: 'small',\n pl: 'large',\n pb: 'large',\n }}\n className={className}\n >\n <Box pt=\"medium\">\n {title && (\n <Text as=\"h4\" variant=\"headline4\">\n {title}\n </Text>\n )}\n {children}\n </Box>\n <Box\n __baseCSS={{\n display: 'flex',\n justifyContent: 'flex-end',\n alignItems: 'start',\n paddingTop: 'xsmall',\n paddingX: 'xsmall',\n }}\n >\n <Box\n as={Button}\n __baseCSS={{\n color: 'text',\n bg: 'transparent',\n lineHeight: 'xsmall',\n px: 'xxsmall',\n ':hover': {\n color: 'text',\n bg: 'transparent',\n cursor: 'pointer',\n },\n ':focus': {\n outline: 0,\n },\n }}\n {...closeButtonProps}\n ref={closeButtonRef}\n >\n <Close size={16} />\n </Box>\n </Box>\n </Box>\n </ModalDialog>\n </OverlayContainer>\n );\n};\n\n// 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 { SeparatorProps, useSeparator } from '@react-aria/separator';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface DividerThemeExtension<Value> {\n divider?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type DividerProps = {\n variant?: string;\n} & SeparatorProps;\n\n// Component\n// ---------------\nexport const Divider: React.FC<DividerProps> = ({ variant = '', ...props }) => {\n const { separatorProps } = useSeparator(props);\n\n return (\n <Box\n __baseCSS={{ width: '100%', height: '1px', m: 'none', bg: 'text' }}\n variant={`divider.${variant}`}\n {...props}\n {...separatorProps}\n />\n );\n};\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\n// Props\n// ---------------\nexport type FieldProps = {\n variant?: string;\n labelVariant?: string;\n htmlFor: string;\n label: string;\n required?: boolean;\n error?: boolean;\n errorMessage?: string;\n disabled?: boolean;\n} & ComponentProps<'input'>;\n\n// Component\n// ---------------\nexport const Field: React.FC<FieldProps> = ({\n type = 'text',\n variant = '',\n labelVariant = 'above',\n htmlFor,\n label,\n required,\n error,\n errorMessage,\n disabled,\n ...props\n}) => {\n return (\n <>\n <Label variant={labelVariant} htmlFor={htmlFor} required={required}>\n {label}\n </Label>\n <Input\n {...props}\n type={type}\n id={htmlFor}\n disabled={disabled}\n variant={variant}\n />\n {error && errorMessage && (\n <ValidationMessage>\n <Exclamation size={16} />\n {errorMessage}\n </ValidationMessage>\n )}\n </>\n );\n};\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface ImageThemeExtension<Value> {\n image?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type ImageProps = {\n variant?: string;\n children?: never;\n} & ComponentProps<'img'>;\n\n// Component\n// ---------------\nexport const Image: React.FC<ImageProps> = ({\n variant = 'fullWidth',\n ...props\n}) => <Box {...props} as=\"img\" variant={`image.${variant}`} />;\n","import React from 'react';\nimport { OverlayProvider } from '@react-aria/overlays';\nimport {\n Theme,\n Global,\n ThemeProvider,\n ThemeProviderProps,\n useTheme,\n __defaultTheme,\n} from '@marigold/system';\n\n// Theme Extension\n// ---------------\nexport interface RootThemeExtension<Value> {\n root?: {\n body?: Value;\n html?: Value;\n };\n}\n\n// Props\n// ---------------\nexport interface MarigoldProviderProps<T extends Theme>\n extends ThemeProviderProps<T> {}\n\n// Provider\n// ---------------\nexport function MarigoldProvider<T extends Theme>({\n theme,\n children,\n}: MarigoldProviderProps<T>) {\n const outer = useTheme();\n const isTopLevel = outer.theme === __defaultTheme;\n\n return (\n <ThemeProvider theme={theme}>\n {isTopLevel ? (\n <>\n <Global />\n <OverlayProvider>{children}</OverlayProvider>\n </>\n ) : (\n children\n )}\n </ThemeProvider>\n );\n}\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Button } from '../Button';\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface MenuThemeExtension<Value> {\n menu?: Value;\n}\n\n// Props\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\n// Component\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\n// Theme Extension\n// ---------------\nexport interface MenuItemThemeExtension<Value> {\n menuItem?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type MenuItemProps = {\n variant?: string;\n} & ComponentProps<typeof Link>;\n\n// Component\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 { Text } from '../Text';\n\n// Theme Extension\n// ---------------\nexport interface MessageThemeExtension<Value> {\n message?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type MessageProps = {\n messageTitle: string;\n variant?: string;\n} & ComponentProps<'div'>;\n\n// Component\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={`message.${variant}`}\n className={className}\n {...props}\n >\n <Box display=\"flex\" alignItems=\"center\" variant=\"message.title\">\n {icon}\n <Text as=\"h4\" variant=\"headline4\">\n {messageTitle}\n </Text>\n </Box>\n <Box css={{ color: 'black' }}>{children}</Box>\n </Box>\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\n// Theme Extension\n// ---------------\nexport interface SelectThemeExtension<Value> {\n select?: {\n __default: Value;\n disabled?: Value;\n listbox?: {\n __default: Value;\n error?: Value;\n };\n section?: Value;\n option?: Value;\n };\n}\n\n// Props\n// ---------------\nexport type SelectProps = {\n labelVariant?: string;\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\n// Component\n// ---------------\nexport const Select = ({\n labelVariant = 'above',\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 {...labelProps} htmlFor={labelProps.id} variant={labelVariant}>\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 as={ArrowUp} size={16} css={{ fill: 'text' }} />\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: 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 from 'react';\nimport { ComponentProps } from '@marigold/types';\n\nimport { Box } from '../Box';\n\n// Theme Extension\n// ---------------\nexport interface SliderThemeExtension<Value> {\n slider?: {\n [key: string]: Value;\n };\n}\n\n// Props\n// ---------------\nexport type SliderProps = {\n variant?: string;\n} & ComponentProps<'input'>;\n\n// Component\n// ---------------\nexport const Slider: React.FC<SliderProps> = ({\n variant = '',\n className,\n ...props\n}) => (\n <Box\n as=\"input\"\n type=\"range\"\n css={{ verticalAlign: 'middle' }}\n variant={`slider.${variant}`}\n className={className}\n {...props}\n />\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\n// Theme Extension\n// ---------------\nexport interface TextareaThemeExtension<Value> {\n textarea?: {\n [key: string]: Value;\n };\n}\n\n// Props\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\n// Component\n// ---------------\nexport const Textarea: React.FC<TextareaProps> = ({\n variant = '',\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"],"names":["ALIGNMENT","top","center","bottom","Inline","space","align","children","props","React","Box","display","css","pl","alignItems","Children","map","flattenChildren","child","cloneElement","left","right","Stack","flexDirection","pt","ICON_MAP","success","Check","warning","Notification","error","Exclamation","Button","forwardRef","ref","as","variant","size","disabled","className","useButton","elementType","isDisabled","buttonProps","columnGap","CheckboxIcon","checked","SVG","width","height","viewBox","fill","x","y","rx","conditional","__baseCSS","fillRule","clipRule","d","LabelBase","required","color","Label","Required","ValidationMessage","CheckboxInput","state","useToggleState","useRef","inputProps","useCheckbox","useFocusRing","pr","VisuallyHidden","type","focusProps","transform","Array","isArray","v","useAlignment","direction","Text","cursor","outline","userSelect","textAlign","ModalDialog","backdropVariant","isDismissable","isOpen","onClose","restProps","useOverlay","overlayProps","underlayProps","usePreventScroll","modalProps","useModal","dialogProps","useDialog","placeItems","position","zIndex","FocusScope","contain","restoreFocus","autoFocus","Input","Link","useLink","linkProps","RadioIcon","cx","cy","r","RadioInput","Option","item","useState","setDisabled","useOption","key","optionProps","isSelected","useEffect","disabledKeys","values","rendered","ListBoxSection","section","useListBoxSection","heading","headingProps","groupProps","itemProps","childNodes","node","ListBox","useListBox","p","listStyle","listBoxProps","collection","Popover","otherProps","shouldCloseOnBlur","OverlayContainer","mergeProps","DismissButton","onDismiss","verticalAlignment","Icon","bg","m","mx","bgColor","borderColor","title","maxWidth","pb","label","labelVariant","errorMessage","htmlFor","id","horizontalAlign","verticalAlign","justifyContent","spaceObject","useTheme","spaceValue","Object","flexWrap","close","closeButtonRef","closeButtonProps","onPress","borderRadius","paddingTop","paddingX","lineHeight","px","Close","useSeparator","separatorProps","theme","outer","ThemeProvider","__defaultTheme","Global","OverlayProvider","onClick","show","minWidth","messageTitle","icon","Info","placeholder","useSelectState","overlayTriggerState","useOverlayTriggerState","triggerRef","overlayRef","useOverlayTrigger","positionProps","useOverlayPosition","targetRef","placement","shouldFlip","useSelect","labelProps","valueProps","menuProps","triggerProps","HiddenSelect","name","selectedItem","ArrowUp","ArrowDown","current","offsetWidth","outlineColor","openButtonRef","open","openButtonProps"],"mappings":"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"}
|