@marigold/components 0.3.1 → 0.3.2
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 +6 -0
- package/dist/Divider/Divider.d.ts +2 -3
- package/dist/components.cjs.development.js +13 -4
- package/dist/components.cjs.development.js.map +1 -1
- package/dist/components.cjs.production.min.js +1 -1
- package/dist/components.cjs.production.min.js.map +1 -1
- package/dist/components.esm.js +13 -4
- package/dist/components.esm.js.map +1 -1
- package/package.json +2 -1
- package/src/Divider/Divider.stories.tsx +2 -2
- package/src/Divider/Divider.test.tsx +26 -25
- package/src/Divider/Divider.tsx +15 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.esm.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 { 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 className?: string;\n variant?: string;\n title?: string; // Should only be used for testing.\n};\n\n// Component\n// ---------------\nexport const Divider: React.FC<DividerProps> = ({\n variant = 'regular',\n ...props\n}) => <Box {...props} as=\"hr\" variant={`divider.${variant}`} />;\n","import React from 'react';\nimport { ComponentProps } from '@marigold/types';\nimport { Box } from '../Box';\n\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","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
|
+
{"version":3,"file":"components.esm.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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@marigold/components",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.2",
|
|
4
4
|
"description": "Components for the Marigold Design System",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/components.esm.js",
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
"@react-aria/listbox": "^3.3.1",
|
|
18
18
|
"@react-aria/overlays": "^3.7.2",
|
|
19
19
|
"@react-aria/select": "^3.4.1",
|
|
20
|
+
"@react-aria/separator": "^3.1.3",
|
|
20
21
|
"@react-aria/ssr": "^3.1.0",
|
|
21
22
|
"@react-aria/utils": "^3.8.2",
|
|
22
23
|
"@react-aria/visually-hidden": "^3.2.3",
|
|
@@ -10,11 +10,11 @@ export default {
|
|
|
10
10
|
control: {
|
|
11
11
|
type: 'select',
|
|
12
12
|
},
|
|
13
|
-
options: ['
|
|
13
|
+
options: ['__default', 'bold'],
|
|
14
14
|
description: 'Thick or thin line',
|
|
15
15
|
table: {
|
|
16
16
|
defaultValue: {
|
|
17
|
-
summary: '
|
|
17
|
+
summary: '__default',
|
|
18
18
|
},
|
|
19
19
|
},
|
|
20
20
|
},
|
|
@@ -7,65 +7,66 @@ const theme = {
|
|
|
7
7
|
space: {
|
|
8
8
|
none: 0,
|
|
9
9
|
small: 2,
|
|
10
|
+
medium: 4,
|
|
10
11
|
},
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
regular: '1px solid',
|
|
12
|
+
colors: {
|
|
13
|
+
text: 'hotpink',
|
|
14
14
|
},
|
|
15
15
|
divider: {
|
|
16
|
-
|
|
17
|
-
border: 'none',
|
|
18
|
-
borderBottom: 'regular',
|
|
16
|
+
__default: {
|
|
19
17
|
margin: 'small',
|
|
20
18
|
},
|
|
21
19
|
bold: {
|
|
22
|
-
|
|
23
|
-
borderBottom: '2px solid',
|
|
24
|
-
margin: 'small',
|
|
20
|
+
margin: 'medium',
|
|
25
21
|
},
|
|
26
22
|
},
|
|
27
23
|
};
|
|
28
24
|
|
|
29
|
-
test('
|
|
25
|
+
test('has base styles', () => {
|
|
30
26
|
render(
|
|
31
27
|
<ThemeProvider theme={theme}>
|
|
32
|
-
<Divider
|
|
28
|
+
<Divider data-testid="divider" />
|
|
33
29
|
</ThemeProvider>
|
|
34
30
|
);
|
|
35
|
-
const divider = screen.
|
|
31
|
+
const divider = screen.getByTestId(/divider/);
|
|
36
32
|
|
|
37
|
-
|
|
33
|
+
// __baseCSS
|
|
34
|
+
expect(divider).toHaveStyle(`background: hotpink`);
|
|
35
|
+
expect(divider).toHaveStyle(`width: 100%`);
|
|
36
|
+
expect(divider).toHaveStyle(`height: 1px`);
|
|
37
|
+
// margin from default variant
|
|
38
|
+
expect(divider).toHaveStyle(`margin: 2px`);
|
|
38
39
|
});
|
|
39
40
|
|
|
40
|
-
test('
|
|
41
|
+
test('supports default variant', () => {
|
|
41
42
|
render(
|
|
42
43
|
<ThemeProvider theme={theme}>
|
|
43
|
-
<Divider
|
|
44
|
+
<Divider data-testid="divider" />
|
|
44
45
|
</ThemeProvider>
|
|
45
46
|
);
|
|
46
|
-
const divider = screen.
|
|
47
|
+
const divider = screen.getByTestId(/divider/);
|
|
47
48
|
|
|
48
|
-
expect(divider).toHaveStyle(`
|
|
49
|
+
expect(divider).toHaveStyle(`margin: 2px`);
|
|
49
50
|
});
|
|
50
51
|
|
|
51
|
-
test('
|
|
52
|
+
test('accepts other variant than default', () => {
|
|
52
53
|
render(
|
|
53
54
|
<ThemeProvider theme={theme}>
|
|
54
|
-
<Divider
|
|
55
|
+
<Divider variant="bold" data-testid="divider" />
|
|
55
56
|
</ThemeProvider>
|
|
56
57
|
);
|
|
57
|
-
const divider = screen.
|
|
58
|
+
const divider = screen.getByTestId(/divider/);
|
|
58
59
|
|
|
59
|
-
expect(divider
|
|
60
|
+
expect(divider).toHaveStyle(`margin: 4px`);
|
|
60
61
|
});
|
|
61
62
|
|
|
62
|
-
test('
|
|
63
|
+
test('renders correct HTML element', () => {
|
|
63
64
|
render(
|
|
64
65
|
<ThemeProvider theme={theme}>
|
|
65
|
-
<Divider
|
|
66
|
+
<Divider data-testid="divider" />
|
|
66
67
|
</ThemeProvider>
|
|
67
68
|
);
|
|
68
|
-
const divider = screen.
|
|
69
|
+
const divider = screen.getByTestId(/divider/);
|
|
69
70
|
|
|
70
|
-
expect(divider
|
|
71
|
+
expect(divider instanceof HTMLDivElement).toBeTruthy();
|
|
71
72
|
});
|
package/src/Divider/Divider.tsx
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { SeparatorProps, useSeparator } from '@react-aria/separator';
|
|
3
|
+
|
|
2
4
|
import { Box } from '../Box';
|
|
3
5
|
|
|
4
6
|
// Theme Extension
|
|
@@ -12,14 +14,20 @@ export interface DividerThemeExtension<Value> {
|
|
|
12
14
|
// Props
|
|
13
15
|
// ---------------
|
|
14
16
|
export type DividerProps = {
|
|
15
|
-
className?: string;
|
|
16
17
|
variant?: string;
|
|
17
|
-
|
|
18
|
-
};
|
|
18
|
+
} & SeparatorProps;
|
|
19
19
|
|
|
20
20
|
// Component
|
|
21
21
|
// ---------------
|
|
22
|
-
export const Divider: React.FC<DividerProps> = ({
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
export const Divider: React.FC<DividerProps> = ({ variant = '', ...props }) => {
|
|
23
|
+
const { separatorProps } = useSeparator(props);
|
|
24
|
+
|
|
25
|
+
return (
|
|
26
|
+
<Box
|
|
27
|
+
__baseCSS={{ width: '100%', height: '1px', m: 'none', bg: 'text' }}
|
|
28
|
+
variant={`divider.${variant}`}
|
|
29
|
+
{...props}
|
|
30
|
+
{...separatorProps}
|
|
31
|
+
/>
|
|
32
|
+
);
|
|
33
|
+
};
|