@foxford/ui 2.222.0-beta-e421dbf-20260416 → 2.299.0-beta-4d4a0ff-20260911
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/components/AccordionItem/AccordionItem.js +1 -1
- package/components/AccordionItem/AccordionItem.js.map +1 -1
- package/components/AccordionItem/AccordionItem.mjs +1 -1
- package/components/AccordionItem/AccordionItem.mjs.map +1 -1
- package/components/AccordionItem/style.js +1 -1
- package/components/AccordionItem/style.js.map +1 -1
- package/components/AccordionItem/style.mjs +1 -1
- package/components/AccordionItem/style.mjs.map +1 -1
- package/components/ActionBtn/ActionBtn.js +1 -1
- package/components/ActionBtn/ActionBtn.js.map +1 -1
- package/components/ActionBtn/ActionBtn.mjs +1 -1
- package/components/ActionBtn/ActionBtn.mjs.map +1 -1
- package/components/AddElement/style.js +1 -1
- package/components/AddElement/style.js.map +1 -1
- package/components/AddElement/style.mjs +1 -1
- package/components/AddElement/style.mjs.map +1 -1
- package/components/Alert/Alert.js +1 -1
- package/components/Alert/Alert.js.map +1 -1
- package/components/Alert/Alert.mjs +1 -1
- package/components/Alert/Alert.mjs.map +1 -1
- package/components/Alert/sizes.js +2 -0
- package/components/Alert/sizes.js.map +1 -0
- package/components/Alert/sizes.mjs +2 -0
- package/components/Alert/sizes.mjs.map +1 -0
- package/components/Alert/style.js +1 -1
- package/components/Alert/style.js.map +1 -1
- package/components/Alert/style.mjs +1 -1
- package/components/Alert/style.mjs.map +1 -1
- package/components/Alert/useAlertProps.js +2 -0
- package/components/Alert/useAlertProps.js.map +1 -0
- package/components/Alert/useAlertProps.mjs +2 -0
- package/components/Alert/useAlertProps.mjs.map +1 -0
- package/components/Anchor/Anchor.js +1 -1
- package/components/Anchor/Anchor.js.map +1 -1
- package/components/Anchor/Anchor.mjs +1 -1
- package/components/Anchor/Anchor.mjs.map +1 -1
- package/components/ArrowBadge/ArrowBadge.js +1 -1
- package/components/ArrowBadge/ArrowBadge.js.map +1 -1
- package/components/ArrowBadge/ArrowBadge.mjs +1 -1
- package/components/ArrowBadge/ArrowBadge.mjs.map +1 -1
- package/components/ArrowBadge/images/arrow.svg.js +1 -1
- package/components/ArrowBadge/images/arrow.svg.js.map +1 -1
- package/components/ArrowBadge/images/arrow.svg.mjs +1 -1
- package/components/ArrowBadge/images/arrow.svg.mjs.map +1 -1
- package/components/ArrowBadge/images/fancy.svg.js +1 -1
- package/components/ArrowBadge/images/fancy.svg.js.map +1 -1
- package/components/ArrowBadge/images/fancy.svg.mjs +1 -1
- package/components/ArrowBadge/images/fancy.svg.mjs.map +1 -1
- package/components/ArrowBadge/images/rectangle.svg.js +1 -1
- package/components/ArrowBadge/images/rectangle.svg.js.map +1 -1
- package/components/ArrowBadge/images/rectangle.svg.mjs +1 -1
- package/components/ArrowBadge/images/rectangle.svg.mjs.map +1 -1
- package/components/ArrowBadge/sizes.js +2 -0
- package/components/ArrowBadge/sizes.js.map +1 -0
- package/components/ArrowBadge/sizes.mjs +2 -0
- package/components/ArrowBadge/sizes.mjs.map +1 -0
- package/components/ArrowBadge/style.js +1 -1
- package/components/ArrowBadge/style.js.map +1 -1
- package/components/ArrowBadge/style.mjs +1 -1
- package/components/ArrowBadge/style.mjs.map +1 -1
- package/components/Avatar/Avatar.js +1 -1
- package/components/Avatar/Avatar.js.map +1 -1
- package/components/Avatar/Avatar.mjs +1 -1
- package/components/Avatar/Avatar.mjs.map +1 -1
- package/components/Avatar/sizes.js +1 -1
- package/components/Avatar/sizes.js.map +1 -1
- package/components/Avatar/sizes.mjs +1 -1
- package/components/Avatar/sizes.mjs.map +1 -1
- package/components/Badge/Badge.js +1 -1
- package/components/Badge/Badge.js.map +1 -1
- package/components/Badge/Badge.mjs +1 -1
- package/components/Badge/Badge.mjs.map +1 -1
- package/components/Badge/sizes.js +2 -0
- package/components/Badge/sizes.js.map +1 -0
- package/components/Badge/sizes.mjs +2 -0
- package/components/Badge/sizes.mjs.map +1 -0
- package/components/Badge/style.js +1 -1
- package/components/Badge/style.js.map +1 -1
- package/components/Badge/style.mjs +1 -1
- package/components/Badge/style.mjs.map +1 -1
- package/components/Button/Button.js +1 -1
- package/components/Button/Button.js.map +1 -1
- package/components/Button/Button.mjs +1 -1
- package/components/Button/Button.mjs.map +1 -1
- package/components/Chip/Chip.js +1 -1
- package/components/Chip/Chip.js.map +1 -1
- package/components/Chip/Chip.mjs +1 -1
- package/components/Chip/Chip.mjs.map +1 -1
- package/components/Chip/sizes.js +2 -0
- package/components/Chip/sizes.js.map +1 -0
- package/components/Chip/sizes.mjs +2 -0
- package/components/Chip/sizes.mjs.map +1 -0
- package/components/Chip/style.js +1 -1
- package/components/Chip/style.js.map +1 -1
- package/components/Chip/style.mjs +1 -1
- package/components/Chip/style.mjs.map +1 -1
- package/components/ContextMenu/Item.js +1 -1
- package/components/ContextMenu/Item.js.map +1 -1
- package/components/ContextMenu/Item.mjs +1 -1
- package/components/ContextMenu/Item.mjs.map +1 -1
- package/components/ContextMenu.Multilevel/ContextMenu.Multilevel.js +1 -1
- package/components/ContextMenu.Multilevel/ContextMenu.Multilevel.js.map +1 -1
- package/components/ContextMenu.Multilevel/ContextMenu.Multilevel.mjs +1 -1
- package/components/ContextMenu.Multilevel/ContextMenu.Multilevel.mjs.map +1 -1
- package/components/ContextMenu.Multilevel/Controls.js +1 -1
- package/components/ContextMenu.Multilevel/Controls.js.map +1 -1
- package/components/ContextMenu.Multilevel/Controls.mjs +1 -1
- package/components/ContextMenu.Multilevel/Controls.mjs.map +1 -1
- package/components/ContextMenu.Multilevel/Heading.js +1 -1
- package/components/ContextMenu.Multilevel/Heading.js.map +1 -1
- package/components/ContextMenu.Multilevel/Heading.mjs +1 -1
- package/components/ContextMenu.Multilevel/Heading.mjs.map +1 -1
- package/components/ContextMenu.Multilevel/SubHeading.js +1 -1
- package/components/ContextMenu.Multilevel/SubHeading.js.map +1 -1
- package/components/ContextMenu.Multilevel/SubHeading.mjs +1 -1
- package/components/ContextMenu.Multilevel/SubHeading.mjs.map +1 -1
- package/components/DialogComponent/DialogComponent.js +1 -1
- package/components/DialogComponent/DialogComponent.js.map +1 -1
- package/components/DialogComponent/DialogComponent.mjs +1 -1
- package/components/DialogComponent/DialogComponent.mjs.map +1 -1
- package/components/DialogComponent/style.js +1 -1
- package/components/DialogComponent/style.js.map +1 -1
- package/components/DialogComponent/style.mjs +1 -1
- package/components/DialogComponent/style.mjs.map +1 -1
- package/components/Dropdown/Dropdown.js +1 -1
- package/components/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.mjs +1 -1
- package/components/Dropdown/Dropdown.mjs.map +1 -1
- package/components/Dropdown/DropdownMenuNoOptions.js +1 -1
- package/components/Dropdown/DropdownMenuNoOptions.js.map +1 -1
- package/components/Dropdown/DropdownMenuNoOptions.mjs +1 -1
- package/components/Dropdown/DropdownMenuNoOptions.mjs.map +1 -1
- package/components/Dropdown/sizes.js +1 -1
- package/components/Dropdown/sizes.js.map +1 -1
- package/components/Dropdown/sizes.mjs +1 -1
- package/components/Dropdown/sizes.mjs.map +1 -1
- package/components/Dropdown/style.js +1 -1
- package/components/Dropdown/style.js.map +1 -1
- package/components/Dropdown/style.mjs +1 -1
- package/components/Dropdown/style.mjs.map +1 -1
- package/components/FileUploader/FileUploader.js +2 -0
- package/components/FileUploader/FileUploader.js.map +1 -0
- package/components/FileUploader/FileUploader.mjs +2 -0
- package/components/FileUploader/FileUploader.mjs.map +1 -0
- package/components/FileUploader/style.js +2 -0
- package/components/FileUploader/style.js.map +1 -0
- package/components/FileUploader/style.mjs +2 -0
- package/components/FileUploader/style.mjs.map +1 -0
- package/components/FileUploaderItem/FileUploaderItem.js +2 -0
- package/components/FileUploaderItem/FileUploaderItem.js.map +1 -0
- package/components/FileUploaderItem/FileUploaderItem.mjs +2 -0
- package/components/FileUploaderItem/FileUploaderItem.mjs.map +1 -0
- package/components/FileUploaderItem/formatFileSize.js +2 -0
- package/components/FileUploaderItem/formatFileSize.js.map +1 -0
- package/components/FileUploaderItem/formatFileSize.mjs +2 -0
- package/components/FileUploaderItem/formatFileSize.mjs.map +1 -0
- package/components/FileUploaderItem/getMimeTypeData.js +2 -0
- package/components/FileUploaderItem/getMimeTypeData.js.map +1 -0
- package/components/FileUploaderItem/getMimeTypeData.mjs +2 -0
- package/components/FileUploaderItem/getMimeTypeData.mjs.map +1 -0
- package/components/FileUploaderItem/sizes.js +2 -0
- package/components/FileUploaderItem/sizes.js.map +1 -0
- package/components/FileUploaderItem/sizes.mjs +2 -0
- package/components/FileUploaderItem/sizes.mjs.map +1 -0
- package/components/FileUploaderItem/style.js +2 -0
- package/components/FileUploaderItem/style.js.map +1 -0
- package/components/FileUploaderItem/style.mjs +2 -0
- package/components/FileUploaderItem/style.mjs.map +1 -0
- package/components/FileUploaderItem/truncateFileName.js +2 -0
- package/components/FileUploaderItem/truncateFileName.js.map +1 -0
- package/components/FileUploaderItem/truncateFileName.mjs +2 -0
- package/components/FileUploaderItem/truncateFileName.mjs.map +1 -0
- package/components/FileUploaderList/FileUploaderList.js +2 -0
- package/components/FileUploaderList/FileUploaderList.js.map +1 -0
- package/components/FileUploaderList/FileUploaderList.mjs +2 -0
- package/components/FileUploaderList/FileUploaderList.mjs.map +1 -0
- package/components/FileUploaderList/style.js +2 -0
- package/components/FileUploaderList/style.js.map +1 -0
- package/components/FileUploaderList/style.mjs +2 -0
- package/components/FileUploaderList/style.mjs.map +1 -0
- package/components/FormInputLabel/FormInputLabel.js +1 -1
- package/components/FormInputLabel/FormInputLabel.js.map +1 -1
- package/components/FormInputLabel/FormInputLabel.mjs +1 -1
- package/components/FormInputLabel/FormInputLabel.mjs.map +1 -1
- package/components/FormInputLabel/sizes.js +1 -1
- package/components/FormInputLabel/sizes.js.map +1 -1
- package/components/FormInputLabel/sizes.mjs +1 -1
- package/components/FormInputLabel/sizes.mjs.map +1 -1
- package/components/FormInputLabel/style.js +1 -1
- package/components/FormInputLabel/style.js.map +1 -1
- package/components/FormInputLabel/style.mjs +1 -1
- package/components/FormInputLabel/style.mjs.map +1 -1
- package/components/FormLabel/FormLabel.js +1 -1
- package/components/FormLabel/FormLabel.js.map +1 -1
- package/components/FormLabel/FormLabel.mjs +1 -1
- package/components/FormLabel/FormLabel.mjs.map +1 -1
- package/components/Gradient/Gradient.js +2 -0
- package/components/Gradient/Gradient.js.map +1 -0
- package/components/Gradient/Gradient.mjs +2 -0
- package/components/Gradient/Gradient.mjs.map +1 -0
- package/components/Gradient/style.js +2 -0
- package/components/Gradient/style.js.map +1 -0
- package/components/Gradient/style.mjs +2 -0
- package/components/Gradient/style.mjs.map +1 -0
- package/components/Gradient/templates.js +2 -0
- package/components/Gradient/templates.js.map +1 -0
- package/components/Gradient/templates.mjs +2 -0
- package/components/Gradient/templates.mjs.map +1 -0
- package/components/Icon/style.js +1 -1
- package/components/Icon/style.js.map +1 -1
- package/components/Icon/style.mjs +1 -1
- package/components/Icon/style.mjs.map +1 -1
- package/components/IconButton/IconButton.js +1 -1
- package/components/IconButton/IconButton.js.map +1 -1
- package/components/IconButton/IconButton.mjs +1 -1
- package/components/IconButton/IconButton.mjs.map +1 -1
- package/components/IconButton/style.js +1 -1
- package/components/IconButton/style.js.map +1 -1
- package/components/IconButton/style.mjs +1 -1
- package/components/IconButton/style.mjs.map +1 -1
- package/components/ImageUploader/ImageUploader.js +2 -0
- package/components/ImageUploader/ImageUploader.js.map +1 -0
- package/components/ImageUploader/ImageUploader.mjs +2 -0
- package/components/ImageUploader/ImageUploader.mjs.map +1 -0
- package/components/ImageUploader/constants.js +2 -0
- package/components/ImageUploader/constants.js.map +1 -0
- package/components/ImageUploader/constants.mjs +2 -0
- package/components/ImageUploader/constants.mjs.map +1 -0
- package/components/ImageUploader/style.js +2 -0
- package/components/ImageUploader/style.js.map +1 -0
- package/components/ImageUploader/style.mjs +2 -0
- package/components/ImageUploader/style.mjs.map +1 -0
- package/components/ImageUploaderGrid/ImageUploaderGrid.js +2 -0
- package/components/ImageUploaderGrid/ImageUploaderGrid.js.map +1 -0
- package/components/ImageUploaderGrid/ImageUploaderGrid.mjs +2 -0
- package/components/ImageUploaderGrid/ImageUploaderGrid.mjs.map +1 -0
- package/components/ImageUploaderGrid/style.js +2 -0
- package/components/ImageUploaderGrid/style.js.map +1 -0
- package/components/ImageUploaderGrid/style.mjs +2 -0
- package/components/ImageUploaderGrid/style.mjs.map +1 -0
- package/components/Indicator/Indicator.js +1 -1
- package/components/Indicator/Indicator.js.map +1 -1
- package/components/Indicator/Indicator.mjs +1 -1
- package/components/Indicator/Indicator.mjs.map +1 -1
- package/components/Indicator/sizes.js +2 -0
- package/components/Indicator/sizes.js.map +1 -0
- package/components/Indicator/sizes.mjs +2 -0
- package/components/Indicator/sizes.mjs.map +1 -0
- package/components/Indicator/style.js +1 -1
- package/components/Indicator/style.js.map +1 -1
- package/components/Indicator/style.mjs +1 -1
- package/components/Indicator/style.mjs.map +1 -1
- package/components/Input/Input.js +1 -1
- package/components/Input/Input.js.map +1 -1
- package/components/Input/Input.mjs +1 -1
- package/components/Input/Input.mjs.map +1 -1
- package/components/Input/sizes.js +1 -1
- package/components/Input/sizes.js.map +1 -1
- package/components/Input/sizes.mjs +1 -1
- package/components/Input/sizes.mjs.map +1 -1
- package/components/Input/style.js +1 -1
- package/components/Input/style.js.map +1 -1
- package/components/Input/style.mjs +1 -1
- package/components/Input/style.mjs.map +1 -1
- package/components/InputCheckbox/style.js +1 -1
- package/components/InputCheckbox/style.js.map +1 -1
- package/components/InputCheckbox/style.mjs +1 -1
- package/components/InputCheckbox/style.mjs.map +1 -1
- package/components/InputRadio/style.js +1 -1
- package/components/InputRadio/style.js.map +1 -1
- package/components/InputRadio/style.mjs +1 -1
- package/components/InputRadio/style.mjs.map +1 -1
- package/components/ListItem/ListItem.js +1 -1
- package/components/ListItem/ListItem.js.map +1 -1
- package/components/ListItem/ListItem.mjs +1 -1
- package/components/ListItem/ListItem.mjs.map +1 -1
- package/components/ListItem/style.js +1 -1
- package/components/ListItem/style.js.map +1 -1
- package/components/ListItem/style.mjs +1 -1
- package/components/ListItem/style.mjs.map +1 -1
- package/components/Media/Media.js +1 -1
- package/components/Media/Media.js.map +1 -1
- package/components/Media/Media.mjs +1 -1
- package/components/Media/Media.mjs.map +1 -1
- package/components/Media/MediaMatchers.js +1 -1
- package/components/Media/MediaMatchers.js.map +1 -1
- package/components/Media/MediaMatchers.mjs +1 -1
- package/components/Media/MediaMatchers.mjs.map +1 -1
- package/components/Media/useMediaPropsMatches.js.map +1 -1
- package/components/Media/useMediaPropsMatches.mjs.map +1 -1
- package/components/Menu/Menu.js +1 -1
- package/components/Menu/Menu.js.map +1 -1
- package/components/Menu/Menu.mjs +1 -1
- package/components/Menu/Menu.mjs.map +1 -1
- package/components/Popover/Popover.js +1 -1
- package/components/Popover/Popover.js.map +1 -1
- package/components/Popover/Popover.mjs +1 -1
- package/components/Popover/Popover.mjs.map +1 -1
- package/components/PopoverComponent/PopoverComponent.js +1 -1
- package/components/PopoverComponent/PopoverComponent.js.map +1 -1
- package/components/PopoverComponent/PopoverComponent.mjs +1 -1
- package/components/PopoverComponent/PopoverComponent.mjs.map +1 -1
- package/components/PopoverComponent/sizes.js +1 -1
- package/components/PopoverComponent/sizes.js.map +1 -1
- package/components/PopoverComponent/sizes.mjs +1 -1
- package/components/PopoverComponent/sizes.mjs.map +1 -1
- package/components/Progress.Segmented/style.js +1 -1
- package/components/Progress.Segmented/style.js.map +1 -1
- package/components/Progress.Segmented/style.mjs +1 -1
- package/components/Progress.Segmented/style.mjs.map +1 -1
- package/components/Switch/style.js +1 -1
- package/components/Switch/style.js.map +1 -1
- package/components/Switch/style.mjs +1 -1
- package/components/Switch/style.mjs.map +1 -1
- package/components/Switcher/style.js +1 -1
- package/components/Switcher/style.js.map +1 -1
- package/components/Switcher/style.mjs +1 -1
- package/components/Switcher/style.mjs.map +1 -1
- package/components/TabList/TabList.js +1 -1
- package/components/TabList/TabList.js.map +1 -1
- package/components/TabList/TabList.mjs +1 -1
- package/components/TabList/TabList.mjs.map +1 -1
- package/components/TabList/TabListMenuTab.js +1 -1
- package/components/TabList/TabListMenuTab.js.map +1 -1
- package/components/TabList/TabListMenuTab.mjs +1 -1
- package/components/TabList/TabListMenuTab.mjs.map +1 -1
- package/components/TabList/style.js +1 -1
- package/components/TabList/style.js.map +1 -1
- package/components/TabList/style.mjs +1 -1
- package/components/TabList/style.mjs.map +1 -1
- package/components/TabListTab/sizes.js +1 -1
- package/components/TabListTab/sizes.js.map +1 -1
- package/components/TabListTab/sizes.mjs +1 -1
- package/components/TabListTab/sizes.mjs.map +1 -1
- package/components/Tag/Tag.js +1 -1
- package/components/Tag/Tag.js.map +1 -1
- package/components/Tag/Tag.mjs +1 -1
- package/components/Tag/Tag.mjs.map +1 -1
- package/components/Textarea/Textarea.js +1 -1
- package/components/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.mjs +1 -1
- package/components/Textarea/Textarea.mjs.map +1 -1
- package/components/Textarea/sizes.js +1 -1
- package/components/Textarea/sizes.js.map +1 -1
- package/components/Textarea/sizes.mjs +1 -1
- package/components/Textarea/sizes.mjs.map +1 -1
- package/components/Textarea/style.js +1 -1
- package/components/Textarea/style.js.map +1 -1
- package/components/Textarea/style.mjs +1 -1
- package/components/Textarea/style.mjs.map +1 -1
- package/components/Timer/Timer.js +2 -0
- package/components/Timer/Timer.js.map +1 -0
- package/components/Timer/Timer.mjs +2 -0
- package/components/Timer/Timer.mjs.map +1 -0
- package/components/Timer/context.js +2 -0
- package/components/Timer/context.js.map +1 -0
- package/components/Timer/context.mjs +2 -0
- package/components/Timer/context.mjs.map +1 -0
- package/components/Timer/images/Circle.svg.js +2 -0
- package/components/Timer/images/Circle.svg.js.map +1 -0
- package/components/Timer/images/Circle.svg.mjs +2 -0
- package/components/Timer/images/Circle.svg.mjs.map +1 -0
- package/components/Timer/sizes.js +2 -0
- package/components/Timer/sizes.js.map +1 -0
- package/components/Timer/sizes.mjs +2 -0
- package/components/Timer/sizes.mjs.map +1 -0
- package/components/Timer/styled.js +2 -0
- package/components/Timer/styled.js.map +1 -0
- package/components/Timer/styled.mjs +2 -0
- package/components/Timer/styled.mjs.map +1 -0
- package/components/Timer/useTimer.js +2 -0
- package/components/Timer/useTimer.js.map +1 -0
- package/components/Timer/useTimer.mjs +2 -0
- package/components/Timer/useTimer.mjs.map +1 -0
- package/components/Timer/useTimerProps.js +2 -0
- package/components/Timer/useTimerProps.js.map +1 -0
- package/components/Timer/useTimerProps.mjs +2 -0
- package/components/Timer/useTimerProps.mjs.map +1 -0
- package/components/Tooltip/Tooltip.js +1 -1
- package/components/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.mjs +1 -1
- package/components/Tooltip/Tooltip.mjs.map +1 -1
- package/components/Tooltip/TooltipWrapper.js +1 -1
- package/components/Tooltip/TooltipWrapper.js.map +1 -1
- package/components/Tooltip/TooltipWrapper.mjs +1 -1
- package/components/Tooltip/TooltipWrapper.mjs.map +1 -1
- package/components/TooltipComponent/TooltipComponent.js +1 -1
- package/components/TooltipComponent/TooltipComponent.js.map +1 -1
- package/components/TooltipComponent/TooltipComponent.mjs +1 -1
- package/components/TooltipComponent/TooltipComponent.mjs.map +1 -1
- package/components/TooltipComponent/sizes.js +2 -0
- package/components/TooltipComponent/sizes.js.map +1 -0
- package/components/TooltipComponent/sizes.mjs +2 -0
- package/components/TooltipComponent/sizes.mjs.map +1 -0
- package/components/TooltipComponent/style.js +1 -1
- package/components/TooltipComponent/style.js.map +1 -1
- package/components/TooltipComponent/style.mjs +1 -1
- package/components/TooltipComponent/style.mjs.map +1 -1
- package/dts/index.d.ts +7178 -6900
- package/{components/Media → hooks}/useMediaConnector.js +1 -1
- package/hooks/useMediaConnector.js.map +1 -0
- package/hooks/useMediaConnector.mjs +2 -0
- package/hooks/useMediaConnector.mjs.map +1 -0
- package/hooks/useMediaMatchers.js.map +1 -0
- package/hooks/useMediaMatchers.mjs.map +1 -0
- package/hooks/useResponsiveLayoutProps.js +2 -0
- package/hooks/useResponsiveLayoutProps.js.map +1 -0
- package/hooks/useResponsiveLayoutProps.mjs +2 -0
- package/hooks/useResponsiveLayoutProps.mjs.map +1 -0
- package/hooks/useResponsiveMarginProps.js +2 -0
- package/hooks/useResponsiveMarginProps.js.map +1 -0
- package/hooks/useResponsiveMarginProps.mjs +2 -0
- package/hooks/useResponsiveMarginProps.mjs.map +1 -0
- package/hooks/useResponsiveProps.js +2 -0
- package/hooks/useResponsiveProps.js.map +1 -0
- package/hooks/useResponsiveProps.mjs +2 -0
- package/hooks/useResponsiveProps.mjs.map +1 -0
- package/hooks/useResponsiveSizeProps.js +2 -0
- package/hooks/useResponsiveSizeProps.js.map +1 -0
- package/hooks/useResponsiveSizeProps.mjs +2 -0
- package/hooks/useResponsiveSizeProps.mjs.map +1 -0
- package/hooks/useScrollLock.js +1 -1
- package/hooks/useScrollLock.js.map +1 -1
- package/hooks/useScrollLock.mjs +1 -1
- package/hooks/useScrollLock.mjs.map +1 -1
- package/icon-pack/src/collection.json.js +1 -1
- package/icon-pack/src/collection.json.mjs +1 -1
- package/icon-pack/src/icons/Camera/index.js +2 -0
- package/icon-pack/src/icons/Camera/index.js.map +1 -0
- package/icon-pack/src/icons/Camera/index.mjs +2 -0
- package/icon-pack/src/icons/Camera/index.mjs.map +1 -0
- package/icon-pack/src/icons/ChevronUp/index.js +2 -0
- package/icon-pack/src/icons/ChevronUp/index.js.map +1 -0
- package/icon-pack/src/icons/ChevronUp/index.mjs +2 -0
- package/icon-pack/src/icons/ChevronUp/index.mjs.map +1 -0
- package/icon-pack/src/icons/File/index.js +2 -0
- package/icon-pack/src/icons/File/index.js.map +1 -0
- package/icon-pack/src/icons/File/index.mjs +2 -0
- package/icon-pack/src/icons/File/index.mjs.map +1 -0
- package/icon-pack/src/icons/FilePdf/index.js +2 -0
- package/icon-pack/src/icons/FilePdf/index.js.map +1 -0
- package/icon-pack/src/icons/FilePdf/index.mjs +2 -0
- package/icon-pack/src/icons/FilePdf/index.mjs.map +1 -0
- package/icon-pack/src/icons/FileQuestion/index.js +2 -0
- package/icon-pack/src/icons/FileQuestion/index.js.map +1 -0
- package/icon-pack/src/icons/FileQuestion/index.mjs +2 -0
- package/icon-pack/src/icons/FileQuestion/index.mjs.map +1 -0
- package/icon-pack/src/icons/FileZipper/index.js +2 -0
- package/icon-pack/src/icons/FileZipper/index.js.map +1 -0
- package/icon-pack/src/icons/FileZipper/index.mjs +2 -0
- package/icon-pack/src/icons/FileZipper/index.mjs.map +1 -0
- package/icon-pack/src/icons/Image/index.js +2 -0
- package/icon-pack/src/icons/Image/index.js.map +1 -0
- package/icon-pack/src/icons/Image/index.mjs +2 -0
- package/icon-pack/src/icons/Image/index.mjs.map +1 -0
- package/icon-pack/src/icons/ImageAdd/index.js +2 -0
- package/icon-pack/src/icons/ImageAdd/index.js.map +1 -0
- package/icon-pack/src/icons/ImageAdd/index.mjs +2 -0
- package/icon-pack/src/icons/ImageAdd/index.mjs.map +1 -0
- package/icon-pack/src/icons/InfoCircleFill/index.js +2 -0
- package/icon-pack/src/icons/InfoCircleFill/index.js.map +1 -0
- package/icon-pack/src/icons/InfoCircleFill/index.mjs +2 -0
- package/icon-pack/src/icons/InfoCircleFill/index.mjs.map +1 -0
- package/icon-pack/src/icons/Music/index.js +2 -0
- package/icon-pack/src/icons/Music/index.js.map +1 -0
- package/icon-pack/src/icons/Music/index.mjs +2 -0
- package/icon-pack/src/icons/Music/index.mjs.map +1 -0
- package/icon-pack/src/icons/Trash/index.js +2 -0
- package/icon-pack/src/icons/Trash/index.js.map +1 -0
- package/icon-pack/src/icons/Trash/index.mjs +2 -0
- package/icon-pack/src/icons/Trash/index.mjs.map +1 -0
- package/icon-pack/src/icons/Undo/index.js +2 -0
- package/icon-pack/src/icons/Undo/index.js.map +1 -0
- package/icon-pack/src/icons/Undo/index.mjs +2 -0
- package/icon-pack/src/icons/Undo/index.mjs.map +1 -0
- package/icon-pack/src/icons/Upload/index.js +2 -0
- package/icon-pack/src/icons/Upload/index.js.map +1 -0
- package/icon-pack/src/icons/Upload/index.mjs +2 -0
- package/icon-pack/src/icons/Upload/index.mjs.map +1 -0
- package/icon-pack/src/icons/WarningCircleFill/index.js +2 -0
- package/icon-pack/src/icons/WarningCircleFill/index.js.map +1 -0
- package/icon-pack/src/icons/WarningCircleFill/index.mjs +2 -0
- package/icon-pack/src/icons/WarningCircleFill/index.mjs.map +1 -0
- package/index.js +1 -1
- package/index.mjs +1 -1
- package/mixins/cursor.js +2 -0
- package/mixins/cursor.js.map +1 -0
- package/mixins/cursor.mjs +2 -0
- package/mixins/cursor.mjs.map +1 -0
- package/mixins/focus.js +1 -1
- package/mixins/focus.js.map +1 -1
- package/mixins/focus.mjs +1 -1
- package/mixins/focus.mjs.map +1 -1
- package/mixins/responsive-margin.js.map +1 -1
- package/mixins/responsive-margin.mjs.map +1 -1
- package/package.json +4 -7
- package/{components/Media/context.js → shared/context/media.js} +1 -1
- package/shared/context/media.js.map +1 -0
- package/{components/Media/context.mjs → shared/context/media.mjs} +1 -1
- package/shared/context/media.mjs.map +1 -0
- package/shared/media/MediaMatcher.js +2 -0
- package/shared/media/MediaMatcher.js.map +1 -0
- package/shared/media/MediaMatcher.mjs +2 -0
- package/shared/media/MediaMatcher.mjs.map +1 -0
- package/shared/media/MediaMediator.js +2 -0
- package/shared/media/MediaMediator.js.map +1 -0
- package/shared/media/MediaMediator.mjs +2 -0
- package/shared/media/MediaMediator.mjs.map +1 -0
- package/shared/utils/colors.js +1 -1
- package/shared/utils/colors.js.map +1 -1
- package/shared/utils/colors.mjs +1 -1
- package/shared/utils/colors.mjs.map +1 -1
- package/shared/utils/hexToRgbA.js +2 -0
- package/shared/utils/hexToRgbA.js.map +1 -0
- package/shared/utils/hexToRgbA.mjs +2 -0
- package/shared/utils/hexToRgbA.mjs.map +1 -0
- package/shared/utils/isHex.js +2 -0
- package/shared/utils/isHex.js.map +1 -0
- package/shared/utils/isHex.mjs +2 -0
- package/shared/utils/isHex.mjs.map +1 -0
- package/shared/utils/isPointerSupported.js +2 -0
- package/shared/utils/isPointerSupported.js.map +1 -0
- package/shared/utils/isPointerSupported.mjs +2 -0
- package/shared/utils/isPointerSupported.mjs.map +1 -0
- package/shared/utils/parseNumberString.js +2 -0
- package/shared/utils/parseNumberString.js.map +1 -0
- package/shared/utils/parseNumberString.mjs +2 -0
- package/shared/utils/parseNumberString.mjs.map +1 -0
- package/theme/colors-dark.js +1 -1
- package/theme/colors-dark.js.map +1 -1
- package/theme/colors-dark.mjs +1 -1
- package/theme/colors-dark.mjs.map +1 -1
- package/theme/colors-light.js +1 -1
- package/theme/colors-light.js.map +1 -1
- package/theme/colors-light.mjs +1 -1
- package/theme/colors-light.mjs.map +1 -1
- package/theme/colors.js +1 -1
- package/theme/colors.js.map +1 -1
- package/theme/colors.mjs +1 -1
- package/theme/colors.mjs.map +1 -1
- package/theme/theme-colors.js +2 -0
- package/theme/theme-colors.js.map +1 -0
- package/theme/theme-colors.mjs +2 -0
- package/theme/theme-colors.mjs.map +1 -0
- package/theme/themes.js +1 -1
- package/theme/themes.js.map +1 -1
- package/theme/themes.mjs +1 -1
- package/theme/themes.mjs.map +1 -1
- package/components/Alert/CountdownCircle.js +0 -2
- package/components/Alert/CountdownCircle.js.map +0 -1
- package/components/Alert/CountdownCircle.mjs +0 -2
- package/components/Alert/CountdownCircle.mjs.map +0 -1
- package/components/Alert/utils.js +0 -2
- package/components/Alert/utils.js.map +0 -1
- package/components/Alert/utils.mjs +0 -2
- package/components/Alert/utils.mjs.map +0 -1
- package/components/ArrowBadge/constants.js +0 -2
- package/components/ArrowBadge/constants.js.map +0 -1
- package/components/ArrowBadge/constants.mjs +0 -2
- package/components/ArrowBadge/constants.mjs.map +0 -1
- package/components/Badge/constants.js +0 -2
- package/components/Badge/constants.js.map +0 -1
- package/components/Badge/constants.mjs +0 -2
- package/components/Badge/constants.mjs.map +0 -1
- package/components/Chip/constants.js +0 -2
- package/components/Chip/constants.js.map +0 -1
- package/components/Chip/constants.mjs +0 -2
- package/components/Chip/constants.mjs.map +0 -1
- package/components/Indicator/constants.js +0 -2
- package/components/Indicator/constants.js.map +0 -1
- package/components/Indicator/constants.mjs +0 -2
- package/components/Indicator/constants.mjs.map +0 -1
- package/components/Media/MediaMatcher.js +0 -2
- package/components/Media/MediaMatcher.js.map +0 -1
- package/components/Media/MediaMatcher.mjs +0 -2
- package/components/Media/MediaMatcher.mjs.map +0 -1
- package/components/Media/MediaMediator.js +0 -2
- package/components/Media/MediaMediator.js.map +0 -1
- package/components/Media/MediaMediator.mjs +0 -2
- package/components/Media/MediaMediator.mjs.map +0 -1
- package/components/Media/context.js.map +0 -1
- package/components/Media/context.mjs.map +0 -1
- package/components/Media/useMediaConnector.js.map +0 -1
- package/components/Media/useMediaConnector.mjs +0 -2
- package/components/Media/useMediaConnector.mjs.map +0 -1
- package/components/Media/useMediaMatchers.js.map +0 -1
- package/components/Media/useMediaMatchers.mjs.map +0 -1
- package/components/TooltipComponent/constants.js +0 -2
- package/components/TooltipComponent/constants.js.map +0 -1
- package/components/TooltipComponent/constants.mjs +0 -2
- package/components/TooltipComponent/constants.mjs.map +0 -1
- package/icon-pack/src/icons/ChevronDown/index.js +0 -2
- package/icon-pack/src/icons/ChevronDown/index.js.map +0 -1
- package/icon-pack/src/icons/ChevronDown/index.mjs +0 -2
- package/icon-pack/src/icons/ChevronDown/index.mjs.map +0 -1
- package/icon-pack/src/icons/ChevronLeft/index.js +0 -2
- package/icon-pack/src/icons/ChevronLeft/index.js.map +0 -1
- package/icon-pack/src/icons/ChevronLeft/index.mjs +0 -2
- package/icon-pack/src/icons/ChevronLeft/index.mjs.map +0 -1
- package/icon-pack/src/icons/ChevronRight/index.js +0 -2
- package/icon-pack/src/icons/ChevronRight/index.js.map +0 -1
- package/icon-pack/src/icons/ChevronRight/index.mjs +0 -2
- package/icon-pack/src/icons/ChevronRight/index.mjs.map +0 -1
- package/icon-pack/src/icons/Redo/index.js +0 -2
- package/icon-pack/src/icons/Redo/index.js.map +0 -1
- package/icon-pack/src/icons/Redo/index.mjs +0 -2
- package/icon-pack/src/icons/Redo/index.mjs.map +0 -1
- /package/{components/Media → hooks}/useMediaMatchers.js +0 -0
- /package/{components/Media → hooks}/useMediaMatchers.mjs +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var React=require('react');var nanoid=require('nanoid');var withMergedProps=require('../../hocs/withMergedProps.js');var useAccordionPanel=require('./useAccordionPanel.js');var useAccordionPanelProps=require('./useAccordionPanelProps.js');var sizes=require('./sizes.js');var style=require('./style.js');var jsxRuntime=require('react/jsx-runtime');var Skeleton=require('../Skeleton/Skeleton.js');var Text=require('../Text/Text.js');var Icon=require('../Icon/Icon.js');
|
|
1
|
+
'use strict';var React=require('react');var nanoid=require('nanoid');var withMergedProps=require('../../hocs/withMergedProps.js');var useAccordionPanel=require('./useAccordionPanel.js');var useAccordionPanelProps=require('./useAccordionPanelProps.js');var sizes=require('./sizes.js');var style=require('./style.js');var jsxRuntime=require('react/jsx-runtime');var Skeleton=require('../Skeleton/Skeleton.js');var Text=require('../Text/Text.js');var Icon=require('../Icon/Icon.js');const AccordionItem=withMergedProps.withMergedProps(React.forwardRef((e,s)=>{const{size:i="m",defaultExpanded:n=!1,headingAs:t="h3",borderRadius:o=0,sizeXXS:r,sizeXS:a,sizeS:d,sizeM:c,sizeL:l,sizeXL:u,id:x,header:j,addon:p,content:E,title:m,subtitle:R,icon:S,panel:h,children:z,loading:y,disabled:I,expanded:P,embedded:b,onExpandedChange:D,...A}=useAccordionPanelProps.useAccordionPanelProps(e);const T={size:i,sizeXXS:r,sizeXS:a,sizeS:d,sizeM:c,sizeL:l,sizeXL:u};const f={...T,preset:'brand',icon:jsxRuntime.jsx(style.ChevronDown,{}),sizes:sizes.SIZES_ICON};const g={...T,as:'span',appearance:'subheading-compact',wordBreak:'break-word',color:'inherit',sizes:sizes.SIZES_TITLE};const k={...T,as:'span',appearance:'body',wordBreak:'break-word',color:'inherit',sizes:sizes.SIZES_SUBTITLE};const{panelExpanded:_,setPanelExpanded:v}=useAccordionPanel.useAccordionPanel({id:x,expanded:P,defaultExpanded:n,onExpandedChange:D});const[w,M]=React.useState(_);const Z=React.useMemo(()=>nanoid.nanoid(),[]);const q=React.useMemo(()=>nanoid.nanoid(),[]);return React.useLayoutEffect(()=>{_&&M(!0)},[_]),jsxRuntime.jsxs(style.Root,{...A,...T,id:x,disabled:I,loading:y,expanded:_,borderRadius:o,"data-accordion-item":!0,ref:s,children:[jsxRuntime.jsx(style.Heading,{as:t,onClick:()=>{I||v(!_)},children:jsxRuntime.jsx(style.Button,{id:Z,type:"button","data-accordion-control":!0,"aria-controls":q,"aria-expanded":w,"aria-disabled":Boolean(w&&(I||P!==void 0&&!D)),disabled:I,onClick:e=>{e.stopPropagation(),v(!_)},children:y?jsxRuntime.jsx(style.Header,{...T,sizes:b?sizes.SIZES_HEADER_EMBEDDED:sizes.SIZES_HEADER,children:jsxRuntime.jsx(style.Content,{children:jsxRuntime.jsx(Skeleton.Skeleton,{as:"span",borderRadius:4,width:"90%","data-accordion-skeleton":!0,children:jsxRuntime.jsx(Text.Text,{...g})})})}):React.isValidElement(j)?j:typeof j=='function'?j({titleProps:g,subtitleProps:k,iconProps:f}):jsxRuntime.jsxs(style.Header,{...T,sizes:b?sizes.SIZES_HEADER_EMBEDDED:sizes.SIZES_HEADER,children:[p,jsxRuntime.jsx(style.Content,{children:React.isValidElement(E)?E:typeof E=='function'?E({titleProps:g,subtitleProps:k}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[React.isValidElement(m)?m:typeof m=='function'?m(g):typeof m=='string'||typeof m=='number'?jsxRuntime.jsx(Text.Text,{...g,children:m}):null,React.isValidElement(R)?R:typeof R=='function'?R(k):typeof R=='string'||typeof R=='number'?jsxRuntime.jsx(Text.Text,{...k,children:R}):null]})}),jsxRuntime.jsx(style.IconAnimation,{up:_,children:React.isValidElement(S)?S:typeof S=='function'?S(f):jsxRuntime.jsx(Icon.Icon,{...f})})]})})}),jsxRuntime.jsx(style.Panel,{id:q,role:"region","aria-labelledby":Z,hidden:!w,onTransitionEnd:e=>{e.propertyName!=='opacity'||_||M(!1)},children:y?jsxRuntime.jsxs(style.Details,{...T,sizes:b?sizes.SIZES_DETAILS_EMBEDDED:sizes.SIZES_DETAILS,children:[jsxRuntime.jsx(Skeleton.Skeleton,{as:"span",borderRadius:4,width:"100%",marginBottom:"0.4em",children:jsxRuntime.jsx(Text.Text,{...k})}),jsxRuntime.jsx(Skeleton.Skeleton,{as:"span",borderRadius:4,width:"70%",children:jsxRuntime.jsx(Text.Text,{...k})})]}):React.isValidElement(h)?h:jsxRuntime.jsx(style.Details,{...T,sizes:b?sizes.SIZES_DETAILS_EMBEDDED:sizes.SIZES_DETAILS,children:z})})]})}),{displayName:'AccordionItem',sizes:sizes.SIZES});exports.AccordionItem=AccordionItem;
|
|
2
2
|
//# sourceMappingURL=AccordionItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionItem.js","sources":["../../../../src/components/AccordionItem/AccordionItem.tsx"],"sourcesContent":["import { forwardRef, useState, isValidElement, useLayoutEffect, useMemo } from 'react'\nimport { ChevronDown } from '@foxford/icon-pack'\nimport { nanoid } from 'nanoid'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport { Text } from 'components/Text'\nimport { Icon } from 'components/Icon'\nimport { Skeleton } from 'components/Skeleton'\nimport type { IconProps } from 'components/Icon'\nimport type { TextProps } from 'components/Text'\nimport { useAccordionPanel } from './useAccordionPanel'\nimport { useAccordionPanelProps } from './useAccordionPanelProps'\nimport {\n SIZES,\n SIZES_HEADER,\n SIZES_HEADER_EMBEDDED,\n SIZES_DETAILS,\n SIZES_DETAILS_EMBEDDED,\n SIZES_TITLE,\n SIZES_SUBTITLE,\n SIZES_ICON,\n} from './sizes'\nimport type { AccordionItemProps } from './types'\nimport * as Styled from './style'\n\nconst COMPONENT_NAME = 'AccordionItem'\n\n/**\n *\n * Компонент для создания сворачиваемой секции контента.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<section\\> элемента.\n *\n * Дизайн соответствует [рекомендациям WAI-ARIA](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/).\n *\n * @visibleName Accordion.Item\n */\nconst AccordionItem: React.ForwardRefExoticComponent<AccordionItemProps> = withMergedProps<\n AccordionItemProps,\n HTMLElement\n>(\n forwardRef((props, ref) => {\n const {\n size = 'm',\n defaultExpanded = false,\n headingAs = 'h3',\n borderRadius = 0,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n id,\n header,\n addon,\n content,\n title,\n subtitle,\n icon,\n panel,\n children,\n loading,\n disabled,\n expanded,\n embedded,\n onExpandedChange,\n ...restProps\n } = useAccordionPanelProps(props)\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconProps: IconProps = {\n ...sizeProps,\n preset: 'brand',\n icon: <ChevronDown />,\n sizes: SIZES_ICON,\n }\n\n const titleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'subheading-compact',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_TITLE,\n }\n\n const subtitleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'body',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_SUBTITLE,\n }\n\n const { panelExpanded, setPanelExpanded } = useAccordionPanel({\n id,\n expanded,\n defaultExpanded,\n onExpandedChange,\n })\n\n const [panelVisible, setPanelVisible] = useState<boolean>(panelExpanded)\n\n const controlId = useMemo(() => nanoid(), [])\n const panelId = useMemo(() => nanoid(), [])\n\n useLayoutEffect(() => {\n if (panelExpanded) setPanelVisible(true)\n }, [panelExpanded])\n\n return (\n <Styled.Root\n {...restProps}\n {...sizeProps}\n id={id}\n disabled={disabled}\n loading={loading}\n expanded={panelExpanded}\n borderRadius={borderRadius}\n data-accordion-item\n ref={ref}\n >\n <Styled.Heading\n as={headingAs}\n onClick={() => {\n if (!disabled) {\n setPanelExpanded(!panelExpanded)\n }\n }}\n >\n <Styled.Button\n id={controlId}\n type='button'\n data-accordion-control\n aria-controls={panelId}\n aria-expanded={panelVisible}\n aria-disabled={Boolean(panelVisible && (disabled || (expanded !== undefined && !onExpandedChange)))}\n disabled={disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n setPanelExpanded(!panelExpanded)\n }}\n >\n {loading ? (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n <Styled.Content>\n <Skeleton as='span' borderRadius={4} width='90%' data-accordion-skeleton>\n <Text {...titleProps} />\n </Skeleton>\n </Styled.Content>\n </Styled.Header>\n ) : isValidElement(header) ? (\n header\n ) : typeof header === 'function' ? (\n header({\n titleProps,\n subtitleProps,\n iconProps,\n })\n ) : (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n {addon}\n <Styled.Content>\n {isValidElement(content) ? (\n content\n ) : typeof content === 'function' ? (\n content({\n titleProps,\n subtitleProps,\n })\n ) : (\n <>\n {isValidElement(title) ? (\n title\n ) : typeof title === 'function' ? (\n title(titleProps)\n ) : typeof title === 'string' || typeof title === 'number' ? (\n <Text {...titleProps}>{title}</Text>\n ) : null}\n {isValidElement(subtitle) ? (\n subtitle\n ) : typeof subtitle === 'function' ? (\n subtitle(subtitleProps)\n ) : typeof subtitle === 'string' || typeof subtitle === 'number' ? (\n <Text {...subtitleProps}>{subtitle}</Text>\n ) : null}\n </>\n )}\n </Styled.Content>\n <Styled.IconAnimation up={panelExpanded}>\n {isValidElement(icon) ? icon : typeof icon === 'function' ? icon(iconProps) : <Icon {...iconProps} />}\n </Styled.IconAnimation>\n </Styled.Header>\n )}\n </Styled.Button>\n </Styled.Heading>\n <Styled.Panel\n id={panelId}\n role='region'\n aria-labelledby={controlId}\n hidden={!panelVisible}\n onTransitionEnd={(evt) => {\n if (evt.propertyName === 'opacity' && !panelExpanded) {\n setPanelVisible(false)\n }\n }}\n >\n {loading ? (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n <Skeleton as='span' borderRadius={4} width='100%' marginBottom='0.4em'>\n <Text {...subtitleProps} />\n </Skeleton>\n <Skeleton as='span' borderRadius={4} width='70%'>\n <Text {...subtitleProps} />\n </Skeleton>\n </Styled.Details>\n ) : isValidElement(panel) ? (\n panel\n ) : (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n {children}\n </Styled.Details>\n )}\n </Styled.Panel>\n </Styled.Root>\n )\n }),\n {\n displayName: COMPONENT_NAME,\n sizes: SIZES,\n }\n)\n\nexport { AccordionItem }\n"],"names":["AccordionItem","withMergedProps","forwardRef","props","ref","size","defaultExpanded","headingAs","borderRadius","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","id","header","addon","content","title","subtitle","icon","panel","children","loading","disabled","expanded","embedded","onExpandedChange","restProps","useAccordionPanelProps","sizeProps","iconProps","preset","_jsx","ChevronDown","sizes","SIZES_ICON","titleProps","as","appearance","wordBreak","color","SIZES_TITLE","subtitleProps","SIZES_SUBTITLE","panelExpanded","setPanelExpanded","useAccordionPanel","panelVisible","setPanelVisible","useState","controlId","useMemo","nanoid","panelId","useLayoutEffect","_jsxs","Styled","onClick","type","Boolean","undefined","evt","stopPropagation","SIZES_HEADER_EMBEDDED","SIZES_HEADER","Skeleton","width","Text","isValidElement","_Fragment","up","Icon","role","hidden","onTransitionEnd","propertyName","SIZES_DETAILS_EMBEDDED","SIZES_DETAILS","marginBottom","displayName","SIZES"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AccordionItem.js","sources":["../../../../src/components/AccordionItem/AccordionItem.tsx"],"sourcesContent":["import { forwardRef, useState, isValidElement, useLayoutEffect, useMemo } from 'react'\nimport { nanoid } from 'nanoid'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport { Text } from 'components/Text'\nimport { Icon } from 'components/Icon'\nimport { Skeleton } from 'components/Skeleton'\nimport type { IconProps } from 'components/Icon'\nimport type { TextProps } from 'components/Text'\nimport { useAccordionPanel } from './useAccordionPanel'\nimport { useAccordionPanelProps } from './useAccordionPanelProps'\nimport {\n SIZES,\n SIZES_HEADER,\n SIZES_HEADER_EMBEDDED,\n SIZES_DETAILS,\n SIZES_DETAILS_EMBEDDED,\n SIZES_TITLE,\n SIZES_SUBTITLE,\n SIZES_ICON,\n} from './sizes'\nimport type { AccordionItemProps } from './types'\nimport * as Styled from './style'\n\nconst COMPONENT_NAME = 'AccordionItem'\n\n/**\n *\n * Компонент для создания сворачиваемой секции контента.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<section\\> элемента.\n *\n * Дизайн соответствует [рекомендациям WAI-ARIA](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/).\n *\n * @visibleName Accordion.Item\n */\nconst AccordionItem: React.ForwardRefExoticComponent<AccordionItemProps> = withMergedProps<\n AccordionItemProps,\n HTMLElement\n>(\n forwardRef((props, ref) => {\n const {\n size = 'm',\n defaultExpanded = false,\n headingAs = 'h3',\n borderRadius = 0,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n id,\n header,\n addon,\n content,\n title,\n subtitle,\n icon,\n panel,\n children,\n loading,\n disabled,\n expanded,\n embedded,\n onExpandedChange,\n ...restProps\n } = useAccordionPanelProps(props)\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconProps: IconProps = {\n ...sizeProps,\n preset: 'brand',\n icon: <Styled.ChevronDown />,\n sizes: SIZES_ICON,\n }\n\n const titleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'subheading-compact',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_TITLE,\n }\n\n const subtitleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'body',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_SUBTITLE,\n }\n\n const { panelExpanded, setPanelExpanded } = useAccordionPanel({\n id,\n expanded,\n defaultExpanded,\n onExpandedChange,\n })\n\n const [panelVisible, setPanelVisible] = useState<boolean>(panelExpanded)\n\n const controlId = useMemo(() => nanoid(), [])\n const panelId = useMemo(() => nanoid(), [])\n\n useLayoutEffect(() => {\n if (panelExpanded) setPanelVisible(true)\n }, [panelExpanded])\n\n return (\n <Styled.Root\n {...restProps}\n {...sizeProps}\n id={id}\n disabled={disabled}\n loading={loading}\n expanded={panelExpanded}\n borderRadius={borderRadius}\n data-accordion-item\n ref={ref}\n >\n <Styled.Heading\n as={headingAs}\n onClick={() => {\n if (!disabled) {\n setPanelExpanded(!panelExpanded)\n }\n }}\n >\n <Styled.Button\n id={controlId}\n type='button'\n data-accordion-control\n aria-controls={panelId}\n aria-expanded={panelVisible}\n aria-disabled={Boolean(panelVisible && (disabled || (expanded !== undefined && !onExpandedChange)))}\n disabled={disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n setPanelExpanded(!panelExpanded)\n }}\n >\n {loading ? (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n <Styled.Content>\n <Skeleton as='span' borderRadius={4} width='90%' data-accordion-skeleton>\n <Text {...titleProps} />\n </Skeleton>\n </Styled.Content>\n </Styled.Header>\n ) : isValidElement(header) ? (\n header\n ) : typeof header === 'function' ? (\n header({\n titleProps,\n subtitleProps,\n iconProps,\n })\n ) : (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n {addon}\n <Styled.Content>\n {isValidElement(content) ? (\n content\n ) : typeof content === 'function' ? (\n content({\n titleProps,\n subtitleProps,\n })\n ) : (\n <>\n {isValidElement(title) ? (\n title\n ) : typeof title === 'function' ? (\n title(titleProps)\n ) : typeof title === 'string' || typeof title === 'number' ? (\n <Text {...titleProps}>{title}</Text>\n ) : null}\n {isValidElement(subtitle) ? (\n subtitle\n ) : typeof subtitle === 'function' ? (\n subtitle(subtitleProps)\n ) : typeof subtitle === 'string' || typeof subtitle === 'number' ? (\n <Text {...subtitleProps}>{subtitle}</Text>\n ) : null}\n </>\n )}\n </Styled.Content>\n <Styled.IconAnimation up={panelExpanded}>\n {isValidElement(icon) ? icon : typeof icon === 'function' ? icon(iconProps) : <Icon {...iconProps} />}\n </Styled.IconAnimation>\n </Styled.Header>\n )}\n </Styled.Button>\n </Styled.Heading>\n <Styled.Panel\n id={panelId}\n role='region'\n aria-labelledby={controlId}\n hidden={!panelVisible}\n onTransitionEnd={(evt) => {\n if (evt.propertyName === 'opacity' && !panelExpanded) {\n setPanelVisible(false)\n }\n }}\n >\n {loading ? (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n <Skeleton as='span' borderRadius={4} width='100%' marginBottom='0.4em'>\n <Text {...subtitleProps} />\n </Skeleton>\n <Skeleton as='span' borderRadius={4} width='70%'>\n <Text {...subtitleProps} />\n </Skeleton>\n </Styled.Details>\n ) : isValidElement(panel) ? (\n panel\n ) : (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n {children}\n </Styled.Details>\n )}\n </Styled.Panel>\n </Styled.Root>\n )\n }),\n {\n displayName: COMPONENT_NAME,\n sizes: SIZES,\n }\n)\n\nexport { AccordionItem }\n"],"names":["AccordionItem","withMergedProps","forwardRef","props","ref","size","defaultExpanded","headingAs","borderRadius","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","id","header","addon","content","title","subtitle","icon","panel","children","loading","disabled","expanded","embedded","onExpandedChange","restProps","useAccordionPanelProps","sizeProps","iconProps","preset","_jsx","Styled","sizes","SIZES_ICON","titleProps","as","appearance","wordBreak","color","SIZES_TITLE","subtitleProps","SIZES_SUBTITLE","panelExpanded","setPanelExpanded","useAccordionPanel","panelVisible","setPanelVisible","useState","controlId","useMemo","nanoid","panelId","useLayoutEffect","_jsxs","onClick","type","Boolean","undefined","evt","stopPropagation","SIZES_HEADER_EMBEDDED","SIZES_HEADER","Skeleton","width","Text","isValidElement","_Fragment","up","Icon","role","hidden","onTransitionEnd","propertyName","SIZES_DETAILS_EMBEDDED","SIZES_DETAILS","marginBottom","displayName","SIZES"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{forwardRef,useState,useMemo,useLayoutEffect,isValidElement}from'react';import{nanoid}from'nanoid';import{withMergedProps}from'../../hocs/withMergedProps.mjs';import{useAccordionPanel}from'./useAccordionPanel.mjs';import{useAccordionPanelProps}from'./useAccordionPanelProps.mjs';import{SIZES_HEADER_EMBEDDED,SIZES_HEADER,SIZES_TITLE,SIZES_ICON,SIZES_SUBTITLE,SIZES_DETAILS_EMBEDDED,SIZES_DETAILS,SIZES}from'./sizes.mjs';import{Root,Heading,Button,Header,Content,IconAnimation,Panel,Details}from'./style.mjs';import{jsxs,jsx,Fragment}from'react/jsx-runtime';import{Skeleton}from'../Skeleton/Skeleton.mjs';import{Text}from'../Text/Text.mjs';import{Icon}from'../Icon/Icon.mjs';
|
|
1
|
+
import{forwardRef,useState,useMemo,useLayoutEffect,isValidElement}from'react';import{nanoid}from'nanoid';import{withMergedProps}from'../../hocs/withMergedProps.mjs';import{useAccordionPanel}from'./useAccordionPanel.mjs';import{useAccordionPanelProps}from'./useAccordionPanelProps.mjs';import{SIZES_HEADER_EMBEDDED,SIZES_HEADER,SIZES_TITLE,SIZES_ICON,SIZES_SUBTITLE,SIZES_DETAILS_EMBEDDED,SIZES_DETAILS,SIZES}from'./sizes.mjs';import{Root,Heading,Button,Header,Content,IconAnimation,Panel,Details,ChevronDown}from'./style.mjs';import{jsxs,jsx,Fragment}from'react/jsx-runtime';import{Skeleton}from'../Skeleton/Skeleton.mjs';import{Text}from'../Text/Text.mjs';import{Icon}from'../Icon/Icon.mjs';const AccordionItem=withMergedProps(forwardRef((e,o)=>{const{size:n="m",defaultExpanded:i=!1,headingAs:s="h3",borderRadius:t=0,sizeXXS:r,sizeXS:d,sizeS:a,sizeM:l,sizeL:c,sizeXL:E,id:p,header:S,addon:m,content:x,title:u,subtitle:I,icon:f,panel:h,children:D,loading:j,disabled:A,expanded:_,embedded:b,onExpandedChange:z,...T}=useAccordionPanelProps(e);const P={size:n,sizeXXS:r,sizeXS:d,sizeS:a,sizeM:l,sizeL:c,sizeXL:E};const Z={...P,preset:'brand',icon:jsx(ChevronDown,{}),sizes:SIZES_ICON};const g={...P,as:'span',appearance:'subheading-compact',wordBreak:'break-word',color:'inherit',sizes:SIZES_TITLE};const y={...P,as:'span',appearance:'body',wordBreak:'break-word',color:'inherit',sizes:SIZES_SUBTITLE};const{panelExpanded:L,setPanelExpanded:R}=useAccordionPanel({id:p,expanded:_,defaultExpanded:i,onExpandedChange:z});const[w,B]=useState(L);const M=useMemo(()=>nanoid(),[]);const k=useMemo(()=>nanoid(),[]);return useLayoutEffect(()=>{L&&B(!0)},[L]),jsxs(Root,{...T,...P,id:p,disabled:A,loading:j,expanded:L,borderRadius:t,"data-accordion-item":!0,ref:o,children:[jsx(Heading,{as:s,onClick:()=>{A||R(!L)},children:jsx(Button,{id:M,type:"button","data-accordion-control":!0,"aria-controls":k,"aria-expanded":w,"aria-disabled":Boolean(w&&(A||_!==void 0&&!z)),disabled:A,onClick:e=>{e.stopPropagation(),R(!L)},children:j?jsx(Header,{...P,sizes:b?SIZES_HEADER_EMBEDDED:SIZES_HEADER,children:jsx(Content,{children:jsx(Skeleton,{as:"span",borderRadius:4,width:"90%","data-accordion-skeleton":!0,children:jsx(Text,{...g})})})}):isValidElement(S)?S:typeof S=='function'?S({titleProps:g,subtitleProps:y,iconProps:Z}):jsxs(Header,{...P,sizes:b?SIZES_HEADER_EMBEDDED:SIZES_HEADER,children:[m,jsx(Content,{children:isValidElement(x)?x:typeof x=='function'?x({titleProps:g,subtitleProps:y}):jsxs(Fragment,{children:[isValidElement(u)?u:typeof u=='function'?u(g):typeof u=='string'||typeof u=='number'?jsx(Text,{...g,children:u}):null,isValidElement(I)?I:typeof I=='function'?I(y):typeof I=='string'||typeof I=='number'?jsx(Text,{...y,children:I}):null]})}),jsx(IconAnimation,{up:L,children:isValidElement(f)?f:typeof f=='function'?f(Z):jsx(Icon,{...Z})})]})})}),jsx(Panel,{id:k,role:"region","aria-labelledby":M,hidden:!w,onTransitionEnd:e=>{e.propertyName!=='opacity'||L||B(!1)},children:j?jsxs(Details,{...P,sizes:b?SIZES_DETAILS_EMBEDDED:SIZES_DETAILS,children:[jsx(Skeleton,{as:"span",borderRadius:4,width:"100%",marginBottom:"0.4em",children:jsx(Text,{...y})}),jsx(Skeleton,{as:"span",borderRadius:4,width:"70%",children:jsx(Text,{...y})})]}):isValidElement(h)?h:jsx(Details,{...P,sizes:b?SIZES_DETAILS_EMBEDDED:SIZES_DETAILS,children:D})})]})}),{displayName:'AccordionItem',sizes:SIZES});export{AccordionItem};
|
|
2
2
|
//# sourceMappingURL=AccordionItem.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionItem.mjs","sources":["../../../../src/components/AccordionItem/AccordionItem.tsx"],"sourcesContent":["import { forwardRef, useState, isValidElement, useLayoutEffect, useMemo } from 'react'\nimport { ChevronDown } from '@foxford/icon-pack'\nimport { nanoid } from 'nanoid'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport { Text } from 'components/Text'\nimport { Icon } from 'components/Icon'\nimport { Skeleton } from 'components/Skeleton'\nimport type { IconProps } from 'components/Icon'\nimport type { TextProps } from 'components/Text'\nimport { useAccordionPanel } from './useAccordionPanel'\nimport { useAccordionPanelProps } from './useAccordionPanelProps'\nimport {\n SIZES,\n SIZES_HEADER,\n SIZES_HEADER_EMBEDDED,\n SIZES_DETAILS,\n SIZES_DETAILS_EMBEDDED,\n SIZES_TITLE,\n SIZES_SUBTITLE,\n SIZES_ICON,\n} from './sizes'\nimport type { AccordionItemProps } from './types'\nimport * as Styled from './style'\n\nconst COMPONENT_NAME = 'AccordionItem'\n\n/**\n *\n * Компонент для создания сворачиваемой секции контента.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<section\\> элемента.\n *\n * Дизайн соответствует [рекомендациям WAI-ARIA](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/).\n *\n * @visibleName Accordion.Item\n */\nconst AccordionItem: React.ForwardRefExoticComponent<AccordionItemProps> = withMergedProps<\n AccordionItemProps,\n HTMLElement\n>(\n forwardRef((props, ref) => {\n const {\n size = 'm',\n defaultExpanded = false,\n headingAs = 'h3',\n borderRadius = 0,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n id,\n header,\n addon,\n content,\n title,\n subtitle,\n icon,\n panel,\n children,\n loading,\n disabled,\n expanded,\n embedded,\n onExpandedChange,\n ...restProps\n } = useAccordionPanelProps(props)\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconProps: IconProps = {\n ...sizeProps,\n preset: 'brand',\n icon: <ChevronDown />,\n sizes: SIZES_ICON,\n }\n\n const titleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'subheading-compact',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_TITLE,\n }\n\n const subtitleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'body',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_SUBTITLE,\n }\n\n const { panelExpanded, setPanelExpanded } = useAccordionPanel({\n id,\n expanded,\n defaultExpanded,\n onExpandedChange,\n })\n\n const [panelVisible, setPanelVisible] = useState<boolean>(panelExpanded)\n\n const controlId = useMemo(() => nanoid(), [])\n const panelId = useMemo(() => nanoid(), [])\n\n useLayoutEffect(() => {\n if (panelExpanded) setPanelVisible(true)\n }, [panelExpanded])\n\n return (\n <Styled.Root\n {...restProps}\n {...sizeProps}\n id={id}\n disabled={disabled}\n loading={loading}\n expanded={panelExpanded}\n borderRadius={borderRadius}\n data-accordion-item\n ref={ref}\n >\n <Styled.Heading\n as={headingAs}\n onClick={() => {\n if (!disabled) {\n setPanelExpanded(!panelExpanded)\n }\n }}\n >\n <Styled.Button\n id={controlId}\n type='button'\n data-accordion-control\n aria-controls={panelId}\n aria-expanded={panelVisible}\n aria-disabled={Boolean(panelVisible && (disabled || (expanded !== undefined && !onExpandedChange)))}\n disabled={disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n setPanelExpanded(!panelExpanded)\n }}\n >\n {loading ? (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n <Styled.Content>\n <Skeleton as='span' borderRadius={4} width='90%' data-accordion-skeleton>\n <Text {...titleProps} />\n </Skeleton>\n </Styled.Content>\n </Styled.Header>\n ) : isValidElement(header) ? (\n header\n ) : typeof header === 'function' ? (\n header({\n titleProps,\n subtitleProps,\n iconProps,\n })\n ) : (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n {addon}\n <Styled.Content>\n {isValidElement(content) ? (\n content\n ) : typeof content === 'function' ? (\n content({\n titleProps,\n subtitleProps,\n })\n ) : (\n <>\n {isValidElement(title) ? (\n title\n ) : typeof title === 'function' ? (\n title(titleProps)\n ) : typeof title === 'string' || typeof title === 'number' ? (\n <Text {...titleProps}>{title}</Text>\n ) : null}\n {isValidElement(subtitle) ? (\n subtitle\n ) : typeof subtitle === 'function' ? (\n subtitle(subtitleProps)\n ) : typeof subtitle === 'string' || typeof subtitle === 'number' ? (\n <Text {...subtitleProps}>{subtitle}</Text>\n ) : null}\n </>\n )}\n </Styled.Content>\n <Styled.IconAnimation up={panelExpanded}>\n {isValidElement(icon) ? icon : typeof icon === 'function' ? icon(iconProps) : <Icon {...iconProps} />}\n </Styled.IconAnimation>\n </Styled.Header>\n )}\n </Styled.Button>\n </Styled.Heading>\n <Styled.Panel\n id={panelId}\n role='region'\n aria-labelledby={controlId}\n hidden={!panelVisible}\n onTransitionEnd={(evt) => {\n if (evt.propertyName === 'opacity' && !panelExpanded) {\n setPanelVisible(false)\n }\n }}\n >\n {loading ? (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n <Skeleton as='span' borderRadius={4} width='100%' marginBottom='0.4em'>\n <Text {...subtitleProps} />\n </Skeleton>\n <Skeleton as='span' borderRadius={4} width='70%'>\n <Text {...subtitleProps} />\n </Skeleton>\n </Styled.Details>\n ) : isValidElement(panel) ? (\n panel\n ) : (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n {children}\n </Styled.Details>\n )}\n </Styled.Panel>\n </Styled.Root>\n )\n }),\n {\n displayName: COMPONENT_NAME,\n sizes: SIZES,\n }\n)\n\nexport { AccordionItem }\n"],"names":["AccordionItem","withMergedProps","forwardRef","props","ref","size","defaultExpanded","headingAs","borderRadius","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","id","header","addon","content","title","subtitle","icon","panel","children","loading","disabled","expanded","embedded","onExpandedChange","restProps","useAccordionPanelProps","sizeProps","iconProps","preset","_jsx","ChevronDown","sizes","SIZES_ICON","titleProps","as","appearance","wordBreak","color","SIZES_TITLE","subtitleProps","SIZES_SUBTITLE","panelExpanded","setPanelExpanded","useAccordionPanel","panelVisible","setPanelVisible","useState","controlId","useMemo","nanoid","panelId","useLayoutEffect","_jsxs","Styled","onClick","type","Boolean","undefined","evt","stopPropagation","SIZES_HEADER_EMBEDDED","SIZES_HEADER","Skeleton","width","Text","isValidElement","_Fragment","up","Icon","role","hidden","onTransitionEnd","propertyName","SIZES_DETAILS_EMBEDDED","SIZES_DETAILS","marginBottom","displayName","SIZES"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AccordionItem.mjs","sources":["../../../../src/components/AccordionItem/AccordionItem.tsx"],"sourcesContent":["import { forwardRef, useState, isValidElement, useLayoutEffect, useMemo } from 'react'\nimport { nanoid } from 'nanoid'\nimport { withMergedProps } from 'hocs/withMergedProps'\nimport { Text } from 'components/Text'\nimport { Icon } from 'components/Icon'\nimport { Skeleton } from 'components/Skeleton'\nimport type { IconProps } from 'components/Icon'\nimport type { TextProps } from 'components/Text'\nimport { useAccordionPanel } from './useAccordionPanel'\nimport { useAccordionPanelProps } from './useAccordionPanelProps'\nimport {\n SIZES,\n SIZES_HEADER,\n SIZES_HEADER_EMBEDDED,\n SIZES_DETAILS,\n SIZES_DETAILS_EMBEDDED,\n SIZES_TITLE,\n SIZES_SUBTITLE,\n SIZES_ICON,\n} from './sizes'\nimport type { AccordionItemProps } from './types'\nimport * as Styled from './style'\n\nconst COMPONENT_NAME = 'AccordionItem'\n\n/**\n *\n * Компонент для создания сворачиваемой секции контента.\n *\n * Поддерживается \"ref\" и все нативные атрибуты \\<section\\> элемента.\n *\n * Дизайн соответствует [рекомендациям WAI-ARIA](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/).\n *\n * @visibleName Accordion.Item\n */\nconst AccordionItem: React.ForwardRefExoticComponent<AccordionItemProps> = withMergedProps<\n AccordionItemProps,\n HTMLElement\n>(\n forwardRef((props, ref) => {\n const {\n size = 'm',\n defaultExpanded = false,\n headingAs = 'h3',\n borderRadius = 0,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n id,\n header,\n addon,\n content,\n title,\n subtitle,\n icon,\n panel,\n children,\n loading,\n disabled,\n expanded,\n embedded,\n onExpandedChange,\n ...restProps\n } = useAccordionPanelProps(props)\n\n const sizeProps = {\n size,\n sizeXXS,\n sizeXS,\n sizeS,\n sizeM,\n sizeL,\n sizeXL,\n }\n\n const iconProps: IconProps = {\n ...sizeProps,\n preset: 'brand',\n icon: <Styled.ChevronDown />,\n sizes: SIZES_ICON,\n }\n\n const titleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'subheading-compact',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_TITLE,\n }\n\n const subtitleProps: TextProps = {\n ...sizeProps,\n as: 'span',\n appearance: 'body',\n wordBreak: 'break-word',\n color: 'inherit',\n sizes: SIZES_SUBTITLE,\n }\n\n const { panelExpanded, setPanelExpanded } = useAccordionPanel({\n id,\n expanded,\n defaultExpanded,\n onExpandedChange,\n })\n\n const [panelVisible, setPanelVisible] = useState<boolean>(panelExpanded)\n\n const controlId = useMemo(() => nanoid(), [])\n const panelId = useMemo(() => nanoid(), [])\n\n useLayoutEffect(() => {\n if (panelExpanded) setPanelVisible(true)\n }, [panelExpanded])\n\n return (\n <Styled.Root\n {...restProps}\n {...sizeProps}\n id={id}\n disabled={disabled}\n loading={loading}\n expanded={panelExpanded}\n borderRadius={borderRadius}\n data-accordion-item\n ref={ref}\n >\n <Styled.Heading\n as={headingAs}\n onClick={() => {\n if (!disabled) {\n setPanelExpanded(!panelExpanded)\n }\n }}\n >\n <Styled.Button\n id={controlId}\n type='button'\n data-accordion-control\n aria-controls={panelId}\n aria-expanded={panelVisible}\n aria-disabled={Boolean(panelVisible && (disabled || (expanded !== undefined && !onExpandedChange)))}\n disabled={disabled}\n onClick={(evt) => {\n evt.stopPropagation()\n setPanelExpanded(!panelExpanded)\n }}\n >\n {loading ? (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n <Styled.Content>\n <Skeleton as='span' borderRadius={4} width='90%' data-accordion-skeleton>\n <Text {...titleProps} />\n </Skeleton>\n </Styled.Content>\n </Styled.Header>\n ) : isValidElement(header) ? (\n header\n ) : typeof header === 'function' ? (\n header({\n titleProps,\n subtitleProps,\n iconProps,\n })\n ) : (\n <Styled.Header {...sizeProps} sizes={embedded ? SIZES_HEADER_EMBEDDED : SIZES_HEADER}>\n {addon}\n <Styled.Content>\n {isValidElement(content) ? (\n content\n ) : typeof content === 'function' ? (\n content({\n titleProps,\n subtitleProps,\n })\n ) : (\n <>\n {isValidElement(title) ? (\n title\n ) : typeof title === 'function' ? (\n title(titleProps)\n ) : typeof title === 'string' || typeof title === 'number' ? (\n <Text {...titleProps}>{title}</Text>\n ) : null}\n {isValidElement(subtitle) ? (\n subtitle\n ) : typeof subtitle === 'function' ? (\n subtitle(subtitleProps)\n ) : typeof subtitle === 'string' || typeof subtitle === 'number' ? (\n <Text {...subtitleProps}>{subtitle}</Text>\n ) : null}\n </>\n )}\n </Styled.Content>\n <Styled.IconAnimation up={panelExpanded}>\n {isValidElement(icon) ? icon : typeof icon === 'function' ? icon(iconProps) : <Icon {...iconProps} />}\n </Styled.IconAnimation>\n </Styled.Header>\n )}\n </Styled.Button>\n </Styled.Heading>\n <Styled.Panel\n id={panelId}\n role='region'\n aria-labelledby={controlId}\n hidden={!panelVisible}\n onTransitionEnd={(evt) => {\n if (evt.propertyName === 'opacity' && !panelExpanded) {\n setPanelVisible(false)\n }\n }}\n >\n {loading ? (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n <Skeleton as='span' borderRadius={4} width='100%' marginBottom='0.4em'>\n <Text {...subtitleProps} />\n </Skeleton>\n <Skeleton as='span' borderRadius={4} width='70%'>\n <Text {...subtitleProps} />\n </Skeleton>\n </Styled.Details>\n ) : isValidElement(panel) ? (\n panel\n ) : (\n <Styled.Details {...sizeProps} sizes={embedded ? SIZES_DETAILS_EMBEDDED : SIZES_DETAILS}>\n {children}\n </Styled.Details>\n )}\n </Styled.Panel>\n </Styled.Root>\n )\n }),\n {\n displayName: COMPONENT_NAME,\n sizes: SIZES,\n }\n)\n\nexport { AccordionItem }\n"],"names":["AccordionItem","withMergedProps","forwardRef","props","ref","size","defaultExpanded","headingAs","borderRadius","sizeXXS","sizeXS","sizeS","sizeM","sizeL","sizeXL","id","header","addon","content","title","subtitle","icon","panel","children","loading","disabled","expanded","embedded","onExpandedChange","restProps","useAccordionPanelProps","sizeProps","iconProps","preset","_jsx","Styled","sizes","SIZES_ICON","titleProps","as","appearance","wordBreak","color","SIZES_TITLE","subtitleProps","SIZES_SUBTITLE","panelExpanded","setPanelExpanded","useAccordionPanel","panelVisible","setPanelVisible","useState","controlId","useMemo","nanoid","panelId","useLayoutEffect","_jsxs","onClick","type","Boolean","undefined","evt","stopPropagation","SIZES_HEADER_EMBEDDED","SIZES_HEADER","Skeleton","width","Text","isValidElement","_Fragment","up","Icon","role","hidden","onTransitionEnd","propertyName","SIZES_DETAILS_EMBEDDED","SIZES_DETAILS","marginBottom","displayName","SIZES"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var styled=require('styled-components');var style=require('../../shared/utils/style.js');var responsiveSize=require('../../mixins/responsive-size.js');var responsiveMargin=require('../../mixins/responsive-margin.js');var focus=require('../../mixins/focus.js');var hover=require('../../mixins/hover.js');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var styled__default=_interopDefault(styled);const shouldForwardAccordionItemProp=style.createShouldForwardProp(e=>!['expanded','disabled','loading','borderRadius'].includes(e));const shouldForwardAccordionItemCommonProp=style.createShouldForwardProp();const Heading=styled__default.default.h3.withConfig({displayName:"AccordionItem__Heading",componentId:"ui__sc-7h1z5c-0"})(["box-sizing:border-box;display:flex;margin:0;padding:","px;border-radius:inherit;font:inherit;transition-property:color;transition-duration:150ms;transition-timing-function:ease-in;"],focus.focus.padding);const template=e=>`\n background-color: ${e.backgroundColor};\n\n & ${Heading} {\n color: ${e.headerColor};\n background-color: ${e.headerBackgroundColor};\n }\n ${hover.hover(`color: ${e.headerColorHover};`,`& ${Heading}:hover`)}\n`;const COLOR_SCHEMA={primary:{default:styled.css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),expanded:styled.css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),disabled:styled.css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-primary']}))},secondary:{default:styled.css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),expanded:styled.css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),disabled:styled.css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-secondary']}))},transparent:{default:styled.css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors.transparent})),expanded:styled.css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors.transparent})),disabled:styled.css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors.transparent}))}};const Panel=styled__default.default.div.withConfig({displayName:"AccordionItem__Panel",componentId:"ui__sc-7h1z5c-1"})(["box-sizing:border-box;overflow:hidden;transition-property:opacity;"]);const Button=styled__default.default.button.withConfig({displayName:"AccordionItem__Button",componentId:"ui__sc-7h1z5c-2"})(["box-sizing:border-box;display:flex;flex-grow:1;appearance:none;border:none;margin:0;padding:0;color:inherit;background-color:transparent;font:inherit;cursor:inherit;text-align:left;",""],focus.focus);const Root=styled__default.default.section.withConfig({shouldForwardProp:shouldForwardAccordionItemProp}).withConfig({displayName:"AccordionItem__Root",componentId:"ui__sc-7h1z5c-3"})(["box-sizing:border-box;display:grid;transition-property:grid-template-rows;&,& > ","{transition-timing-function:cubic-bezier(0.42,0,0.75,1);transition-duration:250ms;}@media (prefers-reduced-motion:reduce){transition-duration:0ms;}"," "," "," "," ",""],Panel,e=>e.expanded?`\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `:`\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `,e=>`\n border-radius: ${e.borderRadius}px;\n \n & ${Button} {\n border-radius: ${e.borderRadius>focus.focus.padding?e.borderRadius-focus.focus.padding:0}px;\n }\n \n & ${Heading} {\n cursor: ${e.loading?'wait':e.disabled?'not-allowed':'pointer'};\n }\n `,e=>{let o=COLOR_SCHEMA.transparent;return e.primary&&(o=COLOR_SCHEMA.primary),e.secondary&&(o=COLOR_SCHEMA.secondary),e.disabled?o.disabled:e.expanded?o.expanded:o.default},responsiveSize.responsiveSize,responsiveMargin.responsiveMargin);const Header=styled__default.default.span.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Header",componentId:"ui__sc-7h1z5c-4"})(["box-sizing:border-box;display:flex;flex-grow:1;& > *:not(:last-child){margin-right:8px;}",""],responsiveSize.responsiveSize);const Content=styled__default.default.span.withConfig({displayName:"AccordionItem__Content",componentId:"ui__sc-7h1z5c-5"})(["box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;align-self:center;flex-grow:1;"]);const IconAnimation=styled__default.default.span.withConfig({shouldForwardProp:e=>e!=='up'}).withConfig({displayName:"AccordionItem__IconAnimation",componentId:"ui__sc-7h1z5c-6"})(["box-sizing:border-box;display:flex;align-self:flex-start;flex-shrink:0;transition-property:transform;transition-duration:250ms;transform-origin:center;@media (prefers-reduced-motion:reduce){transition-duration:0ms;}",""],e=>`\n transform: rotate(${e.up?180:0}deg);\n `);const Details=styled__default.default.div.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Details",componentId:"ui__sc-7h1z5c-
|
|
1
|
+
'use strict';var styled=require('styled-components');var style=require('../../shared/utils/style.js');var responsiveSize=require('../../mixins/responsive-size.js');var responsiveMargin=require('../../mixins/responsive-margin.js');var focus=require('../../mixins/focus.js');var hover=require('../../mixins/hover.js');var index=require('../../icon-pack/src/icons/ChevronUp/index.js');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var styled__default=_interopDefault(styled);const shouldForwardAccordionItemProp=style.createShouldForwardProp(e=>!['expanded','disabled','loading','borderRadius'].includes(e));const shouldForwardAccordionItemCommonProp=style.createShouldForwardProp();const Heading=styled__default.default.h3.withConfig({displayName:"AccordionItem__Heading",componentId:"ui__sc-7h1z5c-0"})(["box-sizing:border-box;display:flex;margin:0;padding:","px;border-radius:inherit;font:inherit;transition-property:color;transition-duration:150ms;transition-timing-function:ease-in;"],focus.focus.padding);const template=e=>`\n background-color: ${e.backgroundColor};\n\n & ${Heading} {\n color: ${e.headerColor};\n background-color: ${e.headerBackgroundColor};\n }\n ${hover.hover(`color: ${e.headerColorHover};`,`& ${Heading}:hover`)}\n`;const COLOR_SCHEMA={primary:{default:styled.css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),expanded:styled.css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),disabled:styled.css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-primary']}))},secondary:{default:styled.css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),expanded:styled.css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),disabled:styled.css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-secondary']}))},transparent:{default:styled.css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors.transparent})),expanded:styled.css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors.transparent})),disabled:styled.css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors.transparent}))}};const Panel=styled__default.default.div.withConfig({displayName:"AccordionItem__Panel",componentId:"ui__sc-7h1z5c-1"})(["box-sizing:border-box;overflow:hidden;transition-property:opacity;"]);const Button=styled__default.default.button.withConfig({displayName:"AccordionItem__Button",componentId:"ui__sc-7h1z5c-2"})(["box-sizing:border-box;display:flex;flex-grow:1;appearance:none;border:none;margin:0;padding:0;color:inherit;background-color:transparent;font:inherit;cursor:inherit;text-align:left;",""],focus.focus);const Root=styled__default.default.section.withConfig({shouldForwardProp:shouldForwardAccordionItemProp}).withConfig({displayName:"AccordionItem__Root",componentId:"ui__sc-7h1z5c-3"})(["box-sizing:border-box;display:grid;transition-property:grid-template-rows;&,& > ","{transition-timing-function:cubic-bezier(0.42,0,0.75,1);transition-duration:250ms;}@media (prefers-reduced-motion:reduce){transition-duration:0ms;}"," "," "," "," ",""],Panel,e=>e.expanded?`\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `:`\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `,e=>`\n border-radius: ${e.borderRadius}px;\n \n & ${Button} {\n border-radius: ${e.borderRadius>focus.focus.padding?e.borderRadius-focus.focus.padding:0}px;\n }\n \n & ${Heading} {\n cursor: ${e.loading?'wait':e.disabled?'not-allowed':'pointer'};\n }\n `,e=>{let o=COLOR_SCHEMA.transparent;return e.primary&&(o=COLOR_SCHEMA.primary),e.secondary&&(o=COLOR_SCHEMA.secondary),e.disabled?o.disabled:e.expanded?o.expanded:o.default},responsiveSize.responsiveSize,responsiveMargin.responsiveMargin);const Header=styled__default.default.span.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Header",componentId:"ui__sc-7h1z5c-4"})(["box-sizing:border-box;display:flex;flex-grow:1;& > *:not(:last-child){margin-right:8px;}",""],responsiveSize.responsiveSize);const Content=styled__default.default.span.withConfig({displayName:"AccordionItem__Content",componentId:"ui__sc-7h1z5c-5"})(["box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;align-self:center;flex-grow:1;"]);const IconAnimation=styled__default.default.span.withConfig({shouldForwardProp:e=>e!=='up'}).withConfig({displayName:"AccordionItem__IconAnimation",componentId:"ui__sc-7h1z5c-6"})(["box-sizing:border-box;display:flex;align-self:flex-start;flex-shrink:0;transition-property:transform;transition-duration:250ms;transform-origin:center;@media (prefers-reduced-motion:reduce){transition-duration:0ms;}",""],e=>`\n transform: rotate(${e.up?180:0}deg);\n `);const ChevronDown=styled__default.default(index.ChevronUp).withConfig({displayName:"AccordionItem__ChevronDown",componentId:"ui__sc-7h1z5c-7"})(["transform-origin:center;transform:scaleY(-1);"]);const Details=styled__default.default.div.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Details",componentId:"ui__sc-7h1z5c-8"})(["box-sizing:border-box;",""],responsiveSize.responsiveSize);exports.Button=Button,exports.ChevronDown=ChevronDown,exports.Content=Content,exports.Details=Details,exports.Header=Header,exports.Heading=Heading,exports.IconAnimation=IconAnimation,exports.Panel=Panel,exports.Root=Root;
|
|
2
2
|
//# sourceMappingURL=style.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.js","sources":["../../../../src/components/AccordionItem/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { createShouldForwardProp } from 'shared/utils/style'\nimport { responsiveSize } from 'mixins/responsive-size'\nimport { responsiveMargin } from 'mixins/responsive-margin'\nimport { focus } from 'mixins/focus'\nimport type { ResponsiveSizeProps, ResponsiveSizeInterpolationProps } from 'shared/interfaces'\nimport { hover } from 'mixins/hover'\nimport type { Size, AccordionItemPalette, StyledAccordionItemProps } from './types'\n\nconst shouldForwardAccordionItemProp = createShouldForwardProp(\n (propKey) => !['expanded', 'disabled', 'loading', 'borderRadius'].includes(propKey)\n)\n\nconst shouldForwardAccordionItemCommonProp = createShouldForwardProp()\n\nexport const Heading = styled.h3`\n box-sizing: border-box;\n display: flex;\n margin: 0;\n padding: ${focus.padding}px;\n border-radius: inherit;\n font: inherit;\n transition-property: color;\n transition-duration: 150ms;\n transition-timing-function: ease-in;\n`\n\nconst template = (palette: AccordionItemPalette) => `\n background-color: ${palette.backgroundColor};\n\n & ${Heading} {\n color: ${palette.headerColor};\n background-color: ${palette.headerBackgroundColor};\n }\n ${hover(`color: ${palette.headerColorHover};`, `& ${Heading}:hover`)}\n`\n\nconst COLOR_SCHEMA = {\n primary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-primary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n },\n secondary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n },\n transparent: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ?? props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors.transparent,\n })}\n `,\n },\n}\n\nexport const Panel = styled.div`\n box-sizing: border-box;\n overflow: hidden;\n transition-property: opacity;\n`\n\nexport const Button = styled.button`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n appearance: none;\n border: none;\n margin: 0;\n padding: 0;\n color: inherit;\n background-color: transparent;\n font: inherit;\n cursor: inherit;\n text-align: left;\n\n ${focus}\n`\n\nexport const Root = styled.section.withConfig<StyledAccordionItemProps>({\n shouldForwardProp: shouldForwardAccordionItemProp,\n})`\n box-sizing: border-box;\n display: grid;\n transition-property: grid-template-rows;\n\n &,\n & > ${Panel} {\n transition-timing-function: cubic-bezier(0.42, 0, 0.75, 1);\n transition-duration: 250ms;\n }\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n\n ${(props) =>\n props.expanded\n ? `\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `\n : `\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `}\n\n ${(props) => `\n border-radius: ${props.borderRadius}px;\n \n & ${Button} {\n border-radius: ${props.borderRadius > focus.padding ? props.borderRadius - focus.padding : 0}px;\n }\n \n & ${Heading} {\n cursor: ${props.loading ? 'wait' : props.disabled ? 'not-allowed' : 'pointer'};\n }\n `}\n\n ${(props) => {\n let schema = COLOR_SCHEMA.transparent\n\n if (props.primary) {\n schema = COLOR_SCHEMA.primary\n }\n if (props.secondary) {\n schema = COLOR_SCHEMA.secondary\n }\n\n if (props.disabled) return schema.disabled\n if (props.expanded) return schema.expanded\n\n return schema.default\n }}\n\n ${responsiveSize}\n ${responsiveMargin}\n`\n\nexport const Header = styled.span.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n\n & > *:not(:last-child) {\n margin-right: 8px;\n }\n\n ${responsiveSize}\n`\n\nexport const Content = styled.span`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n align-self: center;\n flex-grow: 1;\n`\n\nexport const IconAnimation = styled.span.withConfig<{ up: boolean }>({\n shouldForwardProp: (propKey) => propKey !== 'up',\n})`\n box-sizing: border-box;\n display: flex;\n align-self: flex-start;\n flex-shrink: 0;\n transition-property: transform;\n transition-duration: 250ms;\n transform-origin: center;\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n ${(props) => `\n transform: rotate(${props.up ? 180 : 0}deg);\n `}\n`\n\nexport const Details = styled.div.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n\n ${responsiveSize}\n`\n"],"names":["shouldForwardAccordionItemProp","createShouldForwardProp","propKey","includes","shouldForwardAccordionItemCommonProp","Heading","styled","h3","withConfig","displayName","componentId","focus","padding","template","palette","backgroundColor","headerColor","headerBackgroundColor","hover","headerColorHover","COLOR_SCHEMA","primary","default","css","props","theme","colors","headerColorExpanded","transparent","expanded","headerBackgroundColorExpanded","backgroundColorExpanded","disabled","headerColorDisabled","headerBackgroundColorDisabled","backgroundColorDisabled","secondary","Panel","div","Button","button","Root","section","shouldForwardProp","borderRadius","loading","schema","responsiveSize","responsiveMargin","Header","span","Content","IconAnimation","up","Details"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"style.js","sources":["../../../../src/components/AccordionItem/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { ChevronUp } from '@foxford/icon-pack'\nimport { createShouldForwardProp } from 'shared/utils/style'\nimport { responsiveSize } from 'mixins/responsive-size'\nimport { responsiveMargin } from 'mixins/responsive-margin'\nimport { focus } from 'mixins/focus'\nimport type { ResponsiveSizeProps, ResponsiveSizeInterpolationProps } from 'shared/interfaces'\nimport { hover } from 'mixins/hover'\nimport type { Size, AccordionItemPalette, StyledAccordionItemProps } from './types'\n\nconst shouldForwardAccordionItemProp = createShouldForwardProp(\n (propKey) => !['expanded', 'disabled', 'loading', 'borderRadius'].includes(propKey)\n)\n\nconst shouldForwardAccordionItemCommonProp = createShouldForwardProp()\n\nexport const Heading = styled.h3`\n box-sizing: border-box;\n display: flex;\n margin: 0;\n padding: ${focus.padding}px;\n border-radius: inherit;\n font: inherit;\n transition-property: color;\n transition-duration: 150ms;\n transition-timing-function: ease-in;\n`\n\nconst template = (palette: AccordionItemPalette) => `\n background-color: ${palette.backgroundColor};\n\n & ${Heading} {\n color: ${palette.headerColor};\n background-color: ${palette.headerBackgroundColor};\n }\n ${hover(`color: ${palette.headerColorHover};`, `& ${Heading}:hover`)}\n`\n\nconst COLOR_SCHEMA = {\n primary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-primary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n },\n secondary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n },\n transparent: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ?? props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors.transparent,\n })}\n `,\n },\n}\n\nexport const Panel = styled.div`\n box-sizing: border-box;\n overflow: hidden;\n transition-property: opacity;\n`\n\nexport const Button = styled.button`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n appearance: none;\n border: none;\n margin: 0;\n padding: 0;\n color: inherit;\n background-color: transparent;\n font: inherit;\n cursor: inherit;\n text-align: left;\n\n ${focus}\n`\n\nexport const Root = styled.section.withConfig<StyledAccordionItemProps>({\n shouldForwardProp: shouldForwardAccordionItemProp,\n})`\n box-sizing: border-box;\n display: grid;\n transition-property: grid-template-rows;\n\n &,\n & > ${Panel} {\n transition-timing-function: cubic-bezier(0.42, 0, 0.75, 1);\n transition-duration: 250ms;\n }\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n\n ${(props) =>\n props.expanded\n ? `\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `\n : `\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `}\n\n ${(props) => `\n border-radius: ${props.borderRadius}px;\n \n & ${Button} {\n border-radius: ${props.borderRadius > focus.padding ? props.borderRadius - focus.padding : 0}px;\n }\n \n & ${Heading} {\n cursor: ${props.loading ? 'wait' : props.disabled ? 'not-allowed' : 'pointer'};\n }\n `}\n\n ${(props) => {\n let schema = COLOR_SCHEMA.transparent\n\n if (props.primary) {\n schema = COLOR_SCHEMA.primary\n }\n if (props.secondary) {\n schema = COLOR_SCHEMA.secondary\n }\n\n if (props.disabled) return schema.disabled\n if (props.expanded) return schema.expanded\n\n return schema.default\n }}\n\n ${responsiveSize}\n ${responsiveMargin}\n`\n\nexport const Header = styled.span.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n\n & > *:not(:last-child) {\n margin-right: 8px;\n }\n\n ${responsiveSize}\n`\n\nexport const Content = styled.span`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n align-self: center;\n flex-grow: 1;\n`\n\nexport const IconAnimation = styled.span.withConfig<{ up: boolean }>({\n shouldForwardProp: (propKey) => propKey !== 'up',\n})`\n box-sizing: border-box;\n display: flex;\n align-self: flex-start;\n flex-shrink: 0;\n transition-property: transform;\n transition-duration: 250ms;\n transform-origin: center;\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n ${(props) => `\n transform: rotate(${props.up ? 180 : 0}deg);\n `}\n`\n\nexport const ChevronDown = styled(ChevronUp)`\n transform-origin: center;\n transform: scaleY(-1);\n`\n\nexport const Details = styled.div.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n\n ${responsiveSize}\n`\n"],"names":["shouldForwardAccordionItemProp","createShouldForwardProp","propKey","includes","shouldForwardAccordionItemCommonProp","Heading","styled","h3","withConfig","displayName","componentId","focus","padding","template","palette","backgroundColor","headerColor","headerBackgroundColor","hover","headerColorHover","COLOR_SCHEMA","primary","default","css","props","theme","colors","headerColorExpanded","transparent","expanded","headerBackgroundColorExpanded","backgroundColorExpanded","disabled","headerColorDisabled","headerBackgroundColorDisabled","backgroundColorDisabled","secondary","Panel","div","Button","button","Root","section","shouldForwardProp","borderRadius","loading","schema","responsiveSize","responsiveMargin","Header","span","Content","IconAnimation","up","ChevronDown","ChevronUp","Details"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import styled,{css}from'styled-components';import{createShouldForwardProp}from'../../shared/utils/style.mjs';import{responsiveSize}from'../../mixins/responsive-size.mjs';import{responsiveMargin}from'../../mixins/responsive-margin.mjs';import{focus}from'../../mixins/focus.mjs';import{hover}from'../../mixins/hover.mjs';const shouldForwardAccordionItemProp=createShouldForwardProp(e=>!['expanded','disabled','loading','borderRadius'].includes(e));const shouldForwardAccordionItemCommonProp=createShouldForwardProp();const Heading=styled.h3.withConfig({displayName:"AccordionItem__Heading",componentId:"ui__sc-7h1z5c-0"})(["box-sizing:border-box;display:flex;margin:0;padding:","px;border-radius:inherit;font:inherit;transition-property:color;transition-duration:150ms;transition-timing-function:ease-in;"],focus.padding);const template=e=>`\n background-color: ${e.backgroundColor};\n\n & ${Heading} {\n color: ${e.headerColor};\n background-color: ${e.headerBackgroundColor};\n }\n ${hover(`color: ${e.headerColorHover};`,`& ${Heading}:hover`)}\n`;const COLOR_SCHEMA={primary:{default:css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),expanded:css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),disabled:css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-primary']}))},secondary:{default:css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),expanded:css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),disabled:css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-secondary']}))},transparent:{default:css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors.transparent})),expanded:css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors.transparent})),disabled:css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors.transparent}))}};const Panel=styled.div.withConfig({displayName:"AccordionItem__Panel",componentId:"ui__sc-7h1z5c-1"})(["box-sizing:border-box;overflow:hidden;transition-property:opacity;"]);const Button=styled.button.withConfig({displayName:"AccordionItem__Button",componentId:"ui__sc-7h1z5c-2"})(["box-sizing:border-box;display:flex;flex-grow:1;appearance:none;border:none;margin:0;padding:0;color:inherit;background-color:transparent;font:inherit;cursor:inherit;text-align:left;",""],focus);const Root=styled.section.withConfig({shouldForwardProp:shouldForwardAccordionItemProp}).withConfig({displayName:"AccordionItem__Root",componentId:"ui__sc-7h1z5c-3"})(["box-sizing:border-box;display:grid;transition-property:grid-template-rows;&,& > ","{transition-timing-function:cubic-bezier(0.42,0,0.75,1);transition-duration:250ms;}@media (prefers-reduced-motion:reduce){transition-duration:0ms;}"," "," "," "," ",""],Panel,e=>e.expanded?`\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `:`\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `,e=>`\n border-radius: ${e.borderRadius}px;\n \n & ${Button} {\n border-radius: ${e.borderRadius>focus.padding?e.borderRadius-focus.padding:0}px;\n }\n \n & ${Heading} {\n cursor: ${e.loading?'wait':e.disabled?'not-allowed':'pointer'};\n }\n `,e=>{let o=COLOR_SCHEMA.transparent;return e.primary&&(o=COLOR_SCHEMA.primary),e.secondary&&(o=COLOR_SCHEMA.secondary),e.disabled?o.disabled:e.expanded?o.expanded:o.default},responsiveSize,responsiveMargin);const Header=styled.span.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Header",componentId:"ui__sc-7h1z5c-4"})(["box-sizing:border-box;display:flex;flex-grow:1;& > *:not(:last-child){margin-right:8px;}",""],responsiveSize);const Content=styled.span.withConfig({displayName:"AccordionItem__Content",componentId:"ui__sc-7h1z5c-5"})(["box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;align-self:center;flex-grow:1;"]);const IconAnimation=styled.span.withConfig({shouldForwardProp:e=>e!=='up'}).withConfig({displayName:"AccordionItem__IconAnimation",componentId:"ui__sc-7h1z5c-6"})(["box-sizing:border-box;display:flex;align-self:flex-start;flex-shrink:0;transition-property:transform;transition-duration:250ms;transform-origin:center;@media (prefers-reduced-motion:reduce){transition-duration:0ms;}",""],e=>`\n transform: rotate(${e.up?180:0}deg);\n `);const Details=styled.div.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Details",componentId:"ui__sc-7h1z5c-
|
|
1
|
+
import styled,{css}from'styled-components';import{createShouldForwardProp}from'../../shared/utils/style.mjs';import{responsiveSize}from'../../mixins/responsive-size.mjs';import{responsiveMargin}from'../../mixins/responsive-margin.mjs';import{focus}from'../../mixins/focus.mjs';import{hover}from'../../mixins/hover.mjs';import{ChevronUp}from'../../icon-pack/src/icons/ChevronUp/index.mjs';const shouldForwardAccordionItemProp=createShouldForwardProp(e=>!['expanded','disabled','loading','borderRadius'].includes(e));const shouldForwardAccordionItemCommonProp=createShouldForwardProp();const Heading=styled.h3.withConfig({displayName:"AccordionItem__Heading",componentId:"ui__sc-7h1z5c-0"})(["box-sizing:border-box;display:flex;margin:0;padding:","px;border-radius:inherit;font:inherit;transition-property:color;transition-duration:150ms;transition-timing-function:ease-in;"],focus.padding);const template=e=>`\n background-color: ${e.backgroundColor};\n\n & ${Heading} {\n color: ${e.headerColor};\n background-color: ${e.headerBackgroundColor};\n }\n ${hover(`color: ${e.headerColorHover};`,`& ${Heading}:hover`)}\n`;const COLOR_SCHEMA={primary:{default:css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),expanded:css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-primary']})),disabled:css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-primary']}))},secondary:{default:css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),expanded:css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors['bg-onmain-secondary']})),disabled:css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors['bg-onmain-secondary']}))},transparent:{default:css(["",""],e=>template({headerColor:e.palette.headerColor??e.theme.colors['content-onmain-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColor??e.theme.colors.transparent})),expanded:css(["",""],e=>template({headerColor:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerColorHover:e.palette.headerColorExpanded??e.palette.headerColor??e.theme.colors['content-brand-primary'],headerBackgroundColor:e.palette.headerBackgroundColorExpanded??e.palette.headerBackgroundColor??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorExpanded??e.palette.backgroundColor??e.theme.colors.transparent})),disabled:css(["",""],e=>template({headerColor:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerColorHover:e.palette.headerColorDisabled??e.theme.colors['content-disabled'],headerBackgroundColor:e.palette.headerBackgroundColorDisabled??e.theme.colors.transparent,backgroundColor:e.palette.backgroundColorDisabled??e.theme.colors.transparent}))}};const Panel=styled.div.withConfig({displayName:"AccordionItem__Panel",componentId:"ui__sc-7h1z5c-1"})(["box-sizing:border-box;overflow:hidden;transition-property:opacity;"]);const Button=styled.button.withConfig({displayName:"AccordionItem__Button",componentId:"ui__sc-7h1z5c-2"})(["box-sizing:border-box;display:flex;flex-grow:1;appearance:none;border:none;margin:0;padding:0;color:inherit;background-color:transparent;font:inherit;cursor:inherit;text-align:left;",""],focus);const Root=styled.section.withConfig({shouldForwardProp:shouldForwardAccordionItemProp}).withConfig({displayName:"AccordionItem__Root",componentId:"ui__sc-7h1z5c-3"})(["box-sizing:border-box;display:grid;transition-property:grid-template-rows;&,& > ","{transition-timing-function:cubic-bezier(0.42,0,0.75,1);transition-duration:250ms;}@media (prefers-reduced-motion:reduce){transition-duration:0ms;}"," "," "," "," ",""],Panel,e=>e.expanded?`\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `:`\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `,e=>`\n border-radius: ${e.borderRadius}px;\n \n & ${Button} {\n border-radius: ${e.borderRadius>focus.padding?e.borderRadius-focus.padding:0}px;\n }\n \n & ${Heading} {\n cursor: ${e.loading?'wait':e.disabled?'not-allowed':'pointer'};\n }\n `,e=>{let o=COLOR_SCHEMA.transparent;return e.primary&&(o=COLOR_SCHEMA.primary),e.secondary&&(o=COLOR_SCHEMA.secondary),e.disabled?o.disabled:e.expanded?o.expanded:o.default},responsiveSize,responsiveMargin);const Header=styled.span.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Header",componentId:"ui__sc-7h1z5c-4"})(["box-sizing:border-box;display:flex;flex-grow:1;& > *:not(:last-child){margin-right:8px;}",""],responsiveSize);const Content=styled.span.withConfig({displayName:"AccordionItem__Content",componentId:"ui__sc-7h1z5c-5"})(["box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;align-self:center;flex-grow:1;"]);const IconAnimation=styled.span.withConfig({shouldForwardProp:e=>e!=='up'}).withConfig({displayName:"AccordionItem__IconAnimation",componentId:"ui__sc-7h1z5c-6"})(["box-sizing:border-box;display:flex;align-self:flex-start;flex-shrink:0;transition-property:transform;transition-duration:250ms;transform-origin:center;@media (prefers-reduced-motion:reduce){transition-duration:0ms;}",""],e=>`\n transform: rotate(${e.up?180:0}deg);\n `);const ChevronDown=styled(ChevronUp).withConfig({displayName:"AccordionItem__ChevronDown",componentId:"ui__sc-7h1z5c-7"})(["transform-origin:center;transform:scaleY(-1);"]);const Details=styled.div.withConfig({shouldForwardProp:shouldForwardAccordionItemCommonProp}).withConfig({displayName:"AccordionItem__Details",componentId:"ui__sc-7h1z5c-8"})(["box-sizing:border-box;",""],responsiveSize);export{Button,ChevronDown,Content,Details,Header,Heading,IconAnimation,Panel,Root};
|
|
2
2
|
//# sourceMappingURL=style.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.mjs","sources":["../../../../src/components/AccordionItem/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { createShouldForwardProp } from 'shared/utils/style'\nimport { responsiveSize } from 'mixins/responsive-size'\nimport { responsiveMargin } from 'mixins/responsive-margin'\nimport { focus } from 'mixins/focus'\nimport type { ResponsiveSizeProps, ResponsiveSizeInterpolationProps } from 'shared/interfaces'\nimport { hover } from 'mixins/hover'\nimport type { Size, AccordionItemPalette, StyledAccordionItemProps } from './types'\n\nconst shouldForwardAccordionItemProp = createShouldForwardProp(\n (propKey) => !['expanded', 'disabled', 'loading', 'borderRadius'].includes(propKey)\n)\n\nconst shouldForwardAccordionItemCommonProp = createShouldForwardProp()\n\nexport const Heading = styled.h3`\n box-sizing: border-box;\n display: flex;\n margin: 0;\n padding: ${focus.padding}px;\n border-radius: inherit;\n font: inherit;\n transition-property: color;\n transition-duration: 150ms;\n transition-timing-function: ease-in;\n`\n\nconst template = (palette: AccordionItemPalette) => `\n background-color: ${palette.backgroundColor};\n\n & ${Heading} {\n color: ${palette.headerColor};\n background-color: ${palette.headerBackgroundColor};\n }\n ${hover(`color: ${palette.headerColorHover};`, `& ${Heading}:hover`)}\n`\n\nconst COLOR_SCHEMA = {\n primary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-primary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n },\n secondary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n },\n transparent: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ?? props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors.transparent,\n })}\n `,\n },\n}\n\nexport const Panel = styled.div`\n box-sizing: border-box;\n overflow: hidden;\n transition-property: opacity;\n`\n\nexport const Button = styled.button`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n appearance: none;\n border: none;\n margin: 0;\n padding: 0;\n color: inherit;\n background-color: transparent;\n font: inherit;\n cursor: inherit;\n text-align: left;\n\n ${focus}\n`\n\nexport const Root = styled.section.withConfig<StyledAccordionItemProps>({\n shouldForwardProp: shouldForwardAccordionItemProp,\n})`\n box-sizing: border-box;\n display: grid;\n transition-property: grid-template-rows;\n\n &,\n & > ${Panel} {\n transition-timing-function: cubic-bezier(0.42, 0, 0.75, 1);\n transition-duration: 250ms;\n }\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n\n ${(props) =>\n props.expanded\n ? `\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `\n : `\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `}\n\n ${(props) => `\n border-radius: ${props.borderRadius}px;\n \n & ${Button} {\n border-radius: ${props.borderRadius > focus.padding ? props.borderRadius - focus.padding : 0}px;\n }\n \n & ${Heading} {\n cursor: ${props.loading ? 'wait' : props.disabled ? 'not-allowed' : 'pointer'};\n }\n `}\n\n ${(props) => {\n let schema = COLOR_SCHEMA.transparent\n\n if (props.primary) {\n schema = COLOR_SCHEMA.primary\n }\n if (props.secondary) {\n schema = COLOR_SCHEMA.secondary\n }\n\n if (props.disabled) return schema.disabled\n if (props.expanded) return schema.expanded\n\n return schema.default\n }}\n\n ${responsiveSize}\n ${responsiveMargin}\n`\n\nexport const Header = styled.span.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n\n & > *:not(:last-child) {\n margin-right: 8px;\n }\n\n ${responsiveSize}\n`\n\nexport const Content = styled.span`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n align-self: center;\n flex-grow: 1;\n`\n\nexport const IconAnimation = styled.span.withConfig<{ up: boolean }>({\n shouldForwardProp: (propKey) => propKey !== 'up',\n})`\n box-sizing: border-box;\n display: flex;\n align-self: flex-start;\n flex-shrink: 0;\n transition-property: transform;\n transition-duration: 250ms;\n transform-origin: center;\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n ${(props) => `\n transform: rotate(${props.up ? 180 : 0}deg);\n `}\n`\n\nexport const Details = styled.div.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n\n ${responsiveSize}\n`\n"],"names":["shouldForwardAccordionItemProp","createShouldForwardProp","propKey","includes","shouldForwardAccordionItemCommonProp","Heading","styled","h3","withConfig","displayName","componentId","focus","padding","template","palette","backgroundColor","headerColor","headerBackgroundColor","hover","headerColorHover","COLOR_SCHEMA","primary","default","css","props","theme","colors","headerColorExpanded","transparent","expanded","headerBackgroundColorExpanded","backgroundColorExpanded","disabled","headerColorDisabled","headerBackgroundColorDisabled","backgroundColorDisabled","secondary","Panel","div","Button","button","Root","section","shouldForwardProp","borderRadius","loading","schema","responsiveSize","responsiveMargin","Header","span","Content","IconAnimation","up","Details"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"style.mjs","sources":["../../../../src/components/AccordionItem/style.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { ChevronUp } from '@foxford/icon-pack'\nimport { createShouldForwardProp } from 'shared/utils/style'\nimport { responsiveSize } from 'mixins/responsive-size'\nimport { responsiveMargin } from 'mixins/responsive-margin'\nimport { focus } from 'mixins/focus'\nimport type { ResponsiveSizeProps, ResponsiveSizeInterpolationProps } from 'shared/interfaces'\nimport { hover } from 'mixins/hover'\nimport type { Size, AccordionItemPalette, StyledAccordionItemProps } from './types'\n\nconst shouldForwardAccordionItemProp = createShouldForwardProp(\n (propKey) => !['expanded', 'disabled', 'loading', 'borderRadius'].includes(propKey)\n)\n\nconst shouldForwardAccordionItemCommonProp = createShouldForwardProp()\n\nexport const Heading = styled.h3`\n box-sizing: border-box;\n display: flex;\n margin: 0;\n padding: ${focus.padding}px;\n border-radius: inherit;\n font: inherit;\n transition-property: color;\n transition-duration: 150ms;\n transition-timing-function: ease-in;\n`\n\nconst template = (palette: AccordionItemPalette) => `\n background-color: ${palette.backgroundColor};\n\n & ${Heading} {\n color: ${palette.headerColor};\n background-color: ${palette.headerBackgroundColor};\n }\n ${hover(`color: ${palette.headerColorHover};`, `& ${Heading}:hover`)}\n`\n\nconst COLOR_SCHEMA = {\n primary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-primary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-primary'],\n })}\n `,\n },\n secondary: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ??\n props.palette.backgroundColor ??\n props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors['bg-onmain-secondary'],\n })}\n `,\n },\n transparent: {\n default: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColor ?? props.theme.colors['content-onmain-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor: props.palette.headerBackgroundColor ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n expanded: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerColorHover:\n props.palette.headerColorExpanded ??\n props.palette.headerColor ??\n props.theme.colors['content-brand-primary'],\n headerBackgroundColor:\n props.palette.headerBackgroundColorExpanded ??\n props.palette.headerBackgroundColor ??\n props.theme.colors.transparent,\n backgroundColor:\n props.palette.backgroundColorExpanded ?? props.palette.backgroundColor ?? props.theme.colors.transparent,\n })}\n `,\n disabled: css<StyledAccordionItemProps>`\n ${(props) =>\n template({\n headerColor: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerColorHover: props.palette.headerColorDisabled ?? props.theme.colors['content-disabled'],\n headerBackgroundColor: props.palette.headerBackgroundColorDisabled ?? props.theme.colors.transparent,\n backgroundColor: props.palette.backgroundColorDisabled ?? props.theme.colors.transparent,\n })}\n `,\n },\n}\n\nexport const Panel = styled.div`\n box-sizing: border-box;\n overflow: hidden;\n transition-property: opacity;\n`\n\nexport const Button = styled.button`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n appearance: none;\n border: none;\n margin: 0;\n padding: 0;\n color: inherit;\n background-color: transparent;\n font: inherit;\n cursor: inherit;\n text-align: left;\n\n ${focus}\n`\n\nexport const Root = styled.section.withConfig<StyledAccordionItemProps>({\n shouldForwardProp: shouldForwardAccordionItemProp,\n})`\n box-sizing: border-box;\n display: grid;\n transition-property: grid-template-rows;\n\n &,\n & > ${Panel} {\n transition-timing-function: cubic-bezier(0.42, 0, 0.75, 1);\n transition-duration: 250ms;\n }\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n\n ${(props) =>\n props.expanded\n ? `\n grid-template-rows: 0fr 1fr;\n & > ${Panel} {\n opacity: 1;\n }\n `\n : `\n grid-template-rows: 0fr 0fr;\n & > ${Panel} {\n opacity: 0;\n }\n `}\n\n ${(props) => `\n border-radius: ${props.borderRadius}px;\n \n & ${Button} {\n border-radius: ${props.borderRadius > focus.padding ? props.borderRadius - focus.padding : 0}px;\n }\n \n & ${Heading} {\n cursor: ${props.loading ? 'wait' : props.disabled ? 'not-allowed' : 'pointer'};\n }\n `}\n\n ${(props) => {\n let schema = COLOR_SCHEMA.transparent\n\n if (props.primary) {\n schema = COLOR_SCHEMA.primary\n }\n if (props.secondary) {\n schema = COLOR_SCHEMA.secondary\n }\n\n if (props.disabled) return schema.disabled\n if (props.expanded) return schema.expanded\n\n return schema.default\n }}\n\n ${responsiveSize}\n ${responsiveMargin}\n`\n\nexport const Header = styled.span.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n display: flex;\n flex-grow: 1;\n\n & > *:not(:last-child) {\n margin-right: 8px;\n }\n\n ${responsiveSize}\n`\n\nexport const Content = styled.span`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n align-self: center;\n flex-grow: 1;\n`\n\nexport const IconAnimation = styled.span.withConfig<{ up: boolean }>({\n shouldForwardProp: (propKey) => propKey !== 'up',\n})`\n box-sizing: border-box;\n display: flex;\n align-self: flex-start;\n flex-shrink: 0;\n transition-property: transform;\n transition-duration: 250ms;\n transform-origin: center;\n @media (prefers-reduced-motion: reduce) {\n transition-duration: 0ms;\n }\n ${(props) => `\n transform: rotate(${props.up ? 180 : 0}deg);\n `}\n`\n\nexport const ChevronDown = styled(ChevronUp)`\n transform-origin: center;\n transform: scaleY(-1);\n`\n\nexport const Details = styled.div.withConfig<ResponsiveSizeInterpolationProps<Size, Size, ResponsiveSizeProps<Size>>>({\n shouldForwardProp: shouldForwardAccordionItemCommonProp,\n})`\n box-sizing: border-box;\n\n ${responsiveSize}\n`\n"],"names":["shouldForwardAccordionItemProp","createShouldForwardProp","propKey","includes","shouldForwardAccordionItemCommonProp","Heading","styled","h3","withConfig","displayName","componentId","focus","padding","template","palette","backgroundColor","headerColor","headerBackgroundColor","hover","headerColorHover","COLOR_SCHEMA","primary","default","css","props","theme","colors","headerColorExpanded","transparent","expanded","headerBackgroundColorExpanded","backgroundColorExpanded","disabled","headerColorDisabled","headerBackgroundColorDisabled","backgroundColorDisabled","secondary","Panel","div","Button","button","Root","section","shouldForwardProp","borderRadius","loading","schema","responsiveSize","responsiveMargin","Header","span","Content","IconAnimation","up","ChevronDown","ChevronUp","Details"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var useClassname=require('../../hooks/useClassname.js');var style=require('./style.js');var jsxRuntime=require('react/jsx-runtime');var Icon=require('../Icon/Icon.js');function ActionBtn({icon:
|
|
1
|
+
'use strict';var useClassname=require('../../hooks/useClassname.js');var style=require('./style.js');var jsxRuntime=require('react/jsx-runtime');var Icon=require('../Icon/Icon.js');function ActionBtn({icon:s,disabled:e=!1,iconProps:n={},onClick:t,children:i,className:a,active:c,style:o}){const l=useClassname.useClassname(ActionBtn.displayName,a);return jsxRuntime.jsxs(style.Root,{className:l,style:o,disabled:e,active:c,onClick:t,children:[s?jsxRuntime.jsx(Icon.Icon,{size:16,name:s,...n}):null,i]})}ActionBtn.displayName='ActionBtn',exports.ActionBtn=ActionBtn;
|
|
2
2
|
//# sourceMappingURL=ActionBtn.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBtn.js","sources":["../../../../src/components/ActionBtn/ActionBtn.tsx"],"sourcesContent":["import type { DisplayProperty } from 'mixins/display'\nimport { useClassname } from 'hooks/useClassname'\nimport type { BaseProps } from 'shared/interfaces'\nimport { Icon } from 'components/Icon'\nimport type { IconName } from 'components/Icon'\nimport * as Styled from './style'\n\nexport interface ActionBtnProps extends BaseProps, DisplayProperty {\n /** Icon name (for inner Icon component) */\n icon?: IconName\n disabled?: boolean\n active?: boolean\n onClick?(): void\n /**\n * Children react node\n */\n children?: React.ReactNode\n}\n\nfunction ActionBtn({
|
|
1
|
+
{"version":3,"file":"ActionBtn.js","sources":["../../../../src/components/ActionBtn/ActionBtn.tsx"],"sourcesContent":["import type { DisplayProperty } from 'mixins/display'\nimport { useClassname } from 'hooks/useClassname'\nimport type { BaseProps } from 'shared/interfaces'\nimport { Icon } from 'components/Icon'\nimport type { IconName, IconProps } from 'components/Icon'\nimport * as Styled from './style'\n\nexport interface ActionBtnProps extends BaseProps, DisplayProperty {\n /** Icon name (for inner Icon component) */\n icon?: IconName\n disabled?: boolean\n active?: boolean\n onClick?(): void\n iconProps?: IconProps\n /**\n * Children react node\n */\n children?: React.ReactNode\n}\n\nfunction ActionBtn({\n icon,\n disabled = false,\n iconProps = {},\n onClick,\n children,\n className,\n active,\n style,\n}: ActionBtnProps) {\n const _className = useClassname(ActionBtn.displayName, className)\n\n return (\n <Styled.Root className={_className} style={style} disabled={disabled} active={active} onClick={onClick}>\n {icon ? <Icon size={16} name={icon} {...iconProps} /> : null}\n {children}\n </Styled.Root>\n )\n}\n\nActionBtn.displayName = 'ActionBtn'\n\nexport { ActionBtn }\n"],"names":["ActionBtn","icon","disabled","iconProps","onClick","children","className","active","style","_className","useClassname","displayName","_jsxs","Styled","_jsx","Icon","size","name"],"mappings":"qLAoBA,SAASA,WAAUC,KACjBA,EAAIC,SACJA,GAAW,EAAKC,UAChBA,EAAY,CAAA,EAAEC,QACdA,EAAOC,SACPA,EAAQC,UACRA,EAASC,OACTA,EACAC,MAAAA,IAEA,MAAMC,EAAaC,aAAAA,aAAaV,UAAUW,YAAaL,GAEvD,OACEM,WAAAA,KAACC,MAAAA,KAAW,CAACP,UAAWG,EAAYD,MAAOA,EAAON,SAAUA,EAAUK,OAAQA,EAAQH,QAASA,EAAQC,SAAA,CACpGJ,EAAOa,WAAAA,IAACC,UAAI,CAACC,KAAM,GAAIC,KAAMhB,KAAUE,IAAgB,KACvDE,IAGP,CAEAL,UAAUW,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{useClassname}from'../../hooks/useClassname.mjs';import{Root}from'./style.mjs';import{jsxs,jsx}from'react/jsx-runtime';import{Icon}from'../Icon/Icon.mjs';function ActionBtn({icon:s,disabled:
|
|
1
|
+
import{useClassname}from'../../hooks/useClassname.mjs';import{Root}from'./style.mjs';import{jsxs,jsx}from'react/jsx-runtime';import{Icon}from'../Icon/Icon.mjs';function ActionBtn({icon:s,disabled:o=!1,iconProps:n={},onClick:t,children:e,className:i,active:c,style:a}){const m=useClassname(ActionBtn.displayName,i);return jsxs(Root,{className:m,style:a,disabled:o,active:c,onClick:t,children:[s?jsx(Icon,{size:16,name:s,...n}):null,e]})}ActionBtn.displayName='ActionBtn';export{ActionBtn};
|
|
2
2
|
//# sourceMappingURL=ActionBtn.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBtn.mjs","sources":["../../../../src/components/ActionBtn/ActionBtn.tsx"],"sourcesContent":["import type { DisplayProperty } from 'mixins/display'\nimport { useClassname } from 'hooks/useClassname'\nimport type { BaseProps } from 'shared/interfaces'\nimport { Icon } from 'components/Icon'\nimport type { IconName } from 'components/Icon'\nimport * as Styled from './style'\n\nexport interface ActionBtnProps extends BaseProps, DisplayProperty {\n /** Icon name (for inner Icon component) */\n icon?: IconName\n disabled?: boolean\n active?: boolean\n onClick?(): void\n /**\n * Children react node\n */\n children?: React.ReactNode\n}\n\nfunction ActionBtn({
|
|
1
|
+
{"version":3,"file":"ActionBtn.mjs","sources":["../../../../src/components/ActionBtn/ActionBtn.tsx"],"sourcesContent":["import type { DisplayProperty } from 'mixins/display'\nimport { useClassname } from 'hooks/useClassname'\nimport type { BaseProps } from 'shared/interfaces'\nimport { Icon } from 'components/Icon'\nimport type { IconName, IconProps } from 'components/Icon'\nimport * as Styled from './style'\n\nexport interface ActionBtnProps extends BaseProps, DisplayProperty {\n /** Icon name (for inner Icon component) */\n icon?: IconName\n disabled?: boolean\n active?: boolean\n onClick?(): void\n iconProps?: IconProps\n /**\n * Children react node\n */\n children?: React.ReactNode\n}\n\nfunction ActionBtn({\n icon,\n disabled = false,\n iconProps = {},\n onClick,\n children,\n className,\n active,\n style,\n}: ActionBtnProps) {\n const _className = useClassname(ActionBtn.displayName, className)\n\n return (\n <Styled.Root className={_className} style={style} disabled={disabled} active={active} onClick={onClick}>\n {icon ? <Icon size={16} name={icon} {...iconProps} /> : null}\n {children}\n </Styled.Root>\n )\n}\n\nActionBtn.displayName = 'ActionBtn'\n\nexport { ActionBtn }\n"],"names":["ActionBtn","icon","disabled","iconProps","onClick","children","className","active","style","_className","useClassname","displayName","_jsxs","Styled","_jsx","Icon","size","name"],"mappings":"gKAoBA,SAASA,WAAUC,KACjBA,EAAIC,SACJA,GAAW,EAAKC,UAChBA,EAAY,CAAA,EAAEC,QACdA,EAAOC,SACPA,EAAQC,UACRA,EAASC,OACTA,EAAMC,MACNA,IAEA,MAAMC,EAAaC,aAAaV,UAAUW,YAAaL,GAEvD,OACEM,KAACC,KAAW,CAACP,UAAWG,EAAYD,MAAOA,EAAON,SAAUA,EAAUK,OAAQA,EAAQH,QAASA,EAAQC,SAAA,CACpGJ,EAAOa,IAACC,KAAI,CAACC,KAAM,GAAIC,KAAMhB,KAAUE,IAAgB,KACvDE,IAGP,CAEAL,UAAUW,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var styled=require('styled-components');var tinycolor=require('tinycolor2');var responsiveSize=require('../../mixins/responsive-size.js');var responsiveMargin=require('../../mixins/responsive-margin.js');var focus=require('../../mixins/focus.js');var style=require('../../shared/utils/style.js');var hover=require('../../mixins/hover.js');function _interopDefault(o){return o&&o.__esModule?o:{default:o}}var styled__default=_interopDefault(styled);var tinycolor__default=_interopDefault(tinycolor);const shouldForwardProp=style.createShouldForwardProp(o=>!['variant','square'].includes(o));const IconContainer=styled__default.default.span.withConfig({shouldForwardProp}).withConfig({displayName:"AddElement__IconContainer",componentId:"ui__sc-7123ed-0"})(["flex-shrink:0;display:flex;transition-property:color;transition-duration:250ms;"," ",""],o=>`\n order: ${o.square?'initial':'2'};\n `,responsiveSize.responsiveSize);const TextContainer=styled__default.default.span.withConfig({displayName:"AddElement__TextContainer",componentId:"ui__sc-7123ed-1"})(["transition-property:color;transition-duration:250ms;"]);const template=o=>`\n color: ${o.titleColor};\n background-color: ${o.backgroundColor};\n border-color: ${o.borderColor};\n\n &::before {\n box-shadow: inset 0px 4px 0px ${o.shadowColor};\n }\n\n & ${TextContainer} {\n color: ${o.textColor};\n }\n\n & ${IconContainer} {\n color: ${o.iconColor};\n }\n\n ${hover.hover(`\n color: ${o.titleColorHover};\n background-color: ${o.backgroundColorHover};\n border-color: ${o.borderColorHover};\n `)}\n ${hover.hover(`\n color: ${o.textColorHover};\n `,`&:hover ${TextContainer}`)}\n ${hover.hover(`\n color: ${o.iconColorHover};\n `,`&:hover ${IconContainer}`)}\n\n &:active {\n color: ${o.titleColorActive};\n background-color: ${o.backgroundColorActive};\n border-color: ${o.borderColorActive};\n }\n &:active ${TextContainer} {\n color: ${o.textColorActive};\n }\n &:active ${IconContainer} {\n color: ${o.iconColorActive};\n }\n\n &:disabled {\n color: ${o.titleColorDisabled};\n background-color: ${o.backgroundColorDisabled};\n border-color: ${o.borderColorDisabled};\n }\n &:disabled ${TextContainer} {\n color: ${o.textColorDisabled};\n }\n &:disabled ${IconContainer} {\n color: ${o.iconColorDisabled};\n }\n`;const COLOR_SCHEMA={default:styled.css(["",""],o=>template({iconColor:o.theme.colors['content-brand-primary'],titleColor:o.theme.colors['content-brand-primary'],textColor:o.theme.colors['content-onmain-tertiary'],backgroundColor:o.theme.colors.transparent,borderColor:o.theme.colors['border-brand-primary'],iconColorHover:o.theme.colors['content-oncolor-primary'],titleColorHover:o.theme.colors['content-oncolor-primary'],textColorHover:o.theme.colors['content-oncolor-tertiary'],backgroundColorHover:o.theme.colors['bg-brand-primary-basic'],borderColorHover:o.theme.colors.transparent,iconColorActive:o.theme.colors['content-oncolor-primary'],titleColorActive:o.theme.colors['content-oncolor-primary'],textColorActive:o.theme.colors['content-oncolor-tertiary'],backgroundColorActive:o.theme.colors['bg-brand-primary-basic'],borderColorActive:o.theme.colors.transparent,iconColorDisabled:o.theme.colors['content-disabled'],titleColorDisabled:o.theme.colors['content-disabled'],textColorDisabled:o.theme.colors['content-disabled'],backgroundColorDisabled:o.theme.colors.transparent,borderColorDisabled:o.theme.colors['border-disabled'],shadowColor:
|
|
1
|
+
'use strict';var styled=require('styled-components');var tinycolor=require('tinycolor2');var responsiveSize=require('../../mixins/responsive-size.js');var responsiveMargin=require('../../mixins/responsive-margin.js');var focus=require('../../mixins/focus.js');var style=require('../../shared/utils/style.js');var hover=require('../../mixins/hover.js');function _interopDefault(o){return o&&o.__esModule?o:{default:o}}var styled__default=_interopDefault(styled);var tinycolor__default=_interopDefault(tinycolor);const shouldForwardProp=style.createShouldForwardProp(o=>!['variant','square'].includes(o));const IconContainer=styled__default.default.span.withConfig({shouldForwardProp}).withConfig({displayName:"AddElement__IconContainer",componentId:"ui__sc-7123ed-0"})(["flex-shrink:0;display:flex;transition-property:color;transition-duration:250ms;"," ",""],o=>`\n order: ${o.square?'initial':'2'};\n `,responsiveSize.responsiveSize);const TextContainer=styled__default.default.span.withConfig({displayName:"AddElement__TextContainer",componentId:"ui__sc-7123ed-1"})(["transition-property:color;transition-duration:250ms;"]);const template=o=>`\n color: ${o.titleColor};\n background-color: ${o.backgroundColor};\n border-color: ${o.borderColor};\n\n &::before {\n box-shadow: inset 0px 4px 0px ${o.shadowColor};\n }\n\n & ${TextContainer} {\n color: ${o.textColor};\n }\n\n & ${IconContainer} {\n color: ${o.iconColor};\n }\n\n ${hover.hover(`\n color: ${o.titleColorHover};\n background-color: ${o.backgroundColorHover};\n border-color: ${o.borderColorHover};\n `)}\n ${hover.hover(`\n color: ${o.textColorHover};\n `,`&:hover ${TextContainer}`)}\n ${hover.hover(`\n color: ${o.iconColorHover};\n `,`&:hover ${IconContainer}`)}\n\n &:active {\n color: ${o.titleColorActive};\n background-color: ${o.backgroundColorActive};\n border-color: ${o.borderColorActive};\n }\n &:active ${TextContainer} {\n color: ${o.textColorActive};\n }\n &:active ${IconContainer} {\n color: ${o.iconColorActive};\n }\n\n &:disabled {\n color: ${o.titleColorDisabled};\n background-color: ${o.backgroundColorDisabled};\n border-color: ${o.borderColorDisabled};\n }\n &:disabled ${TextContainer} {\n color: ${o.textColorDisabled};\n }\n &:disabled ${IconContainer} {\n color: ${o.iconColorDisabled};\n }\n`;const COLOR_SCHEMA={default:styled.css(["",""],o=>template({iconColor:o.theme.colors['content-brand-primary'],titleColor:o.theme.colors['content-brand-primary'],textColor:o.theme.colors['content-onmain-tertiary'],backgroundColor:o.theme.colors.transparent,borderColor:o.theme.colors['border-brand-primary'],iconColorHover:o.theme.colors['content-oncolor-primary'],titleColorHover:o.theme.colors['content-oncolor-primary'],textColorHover:o.theme.colors['content-oncolor-tertiary'],backgroundColorHover:o.theme.colors['bg-brand-primary-basic'],borderColorHover:o.theme.colors.transparent,iconColorActive:o.theme.colors['content-oncolor-primary'],titleColorActive:o.theme.colors['content-oncolor-primary'],textColorActive:o.theme.colors['content-oncolor-tertiary'],backgroundColorActive:o.theme.colors['bg-brand-primary-basic'],borderColorActive:o.theme.colors.transparent,iconColorDisabled:o.theme.colors['content-disabled'],titleColorDisabled:o.theme.colors['content-disabled'],textColorDisabled:o.theme.colors['content-disabled'],backgroundColorDisabled:o.theme.colors.transparent,borderColorDisabled:o.theme.colors['border-disabled'],shadowColor:o.theme.colors['effect-shadow-press'],...o.palette})),neutral:styled.css(["",""],o=>template({iconColor:o.theme.colors['content-onmain-primary'],titleColor:o.theme.colors['content-onmain-primary'],textColor:o.theme.colors['content-onmain-tertiary'],backgroundColor:o.theme.colors.transparent,borderColor:o.theme.colors['border-onmain-default-small'],iconColorHover:o.theme.colors['content-oncolor-primary'],titleColorHover:o.theme.colors['content-oncolor-primary'],textColorHover:o.theme.colors['content-oncolor-tertiary'],backgroundColorHover:o.theme.colors['bg-onmain-contrast'],borderColorHover:o.theme.colors.transparent,iconColorActive:o.theme.colors['content-oncolor-primary'],titleColorActive:o.theme.colors['content-oncolor-primary'],textColorActive:o.theme.colors['content-oncolor-tertiary'],backgroundColorActive:o.theme.colors['bg-onmain-contrast'],borderColorActive:o.theme.colors.transparent,iconColorDisabled:o.theme.colors['content-disabled'],titleColorDisabled:o.theme.colors['content-disabled'],textColorDisabled:o.theme.colors['content-disabled'],backgroundColorDisabled:o.theme.colors.transparent,borderColorDisabled:o.theme.colors['border-disabled'],shadowColor:o.theme.colors['effect-shadow-press'],...o.palette})),contrast:styled.css(["",""],o=>template({iconColor:o.theme.colors['content-oncolor-primary'],titleColor:o.theme.colors['content-oncolor-primary'],textColor:o.theme.colors['content-oncolor-tertiary'],backgroundColor:o.theme.colors.transparent,borderColor:tinycolor__default.default(o.theme.colors['content-oncolor-primary']).darken(6).toString(),iconColorHover:o.theme.colors['content-onmain-primary'],titleColorHover:o.theme.colors['content-onmain-primary'],textColorHover:o.theme.colors['content-onmain-tertiary'],backgroundColorHover:o.theme.colors['content-oncolor-primary'],borderColorHover:o.theme.colors.transparent,iconColorActive:o.theme.colors['content-onmain-primary'],titleColorActive:o.theme.colors['content-onmain-primary'],textColorActive:o.theme.colors['content-onmain-tertiary'],backgroundColorActive:o.theme.colors['content-oncolor-primary'],borderColorActive:o.theme.colors.transparent,iconColorDisabled:o.theme.colors['content-oncolor-disabled'],titleColorDisabled:o.theme.colors['content-oncolor-disabled'],textColorDisabled:o.theme.colors['content-oncolor-disabled'],backgroundColorDisabled:o.theme.colors.transparent,borderColorDisabled:o.theme.colors['border-oncolor-disabled'],shadowColor:o.theme.colors['effect-shadow-press'],...o.palette}))};const Root=styled__default.default.button.withConfig({shouldForwardProp}).withConfig({displayName:"AddElement__Root",componentId:"ui__sc-7123ed-2"})(["box-sizing:border-box;position:relative;isolation:isolate;appearance:none;display:flex;align-items:center;border:1px dashed;transition-property:color,background-color;transition-duration:250ms;&::before{content:'';position:absolute;top:-1px;left:-1px;width:calc(100% + 2px);height:calc(100% + 2px);border-radius:inherit;opacity:0;transition-property:opacity;transition-duration:150ms;transition-timing-function:ease-in;}&:active:not(:disabled)::before{opacity:1;}"," "," "," "," ",""],o=>`\n cursor: ${o.disabled?'not-allowed':'pointer'};\n width: ${o.square?'initial':'100%'};\n flex-direction: ${o.square?'column':'row'};\n justify-content: ${o.square?'center':'space-between'};\n text-align: ${o.square?'center':'left'};\n `,o=>COLOR_SCHEMA[o.variant],focus.focus,responsiveSize.responsiveSize,responsiveMargin.responsiveMargin);const Content=styled__default.default.span.withConfig({shouldForwardProp}).withConfig({displayName:"AddElement__Content",componentId:"ui__sc-7123ed-3"})(["flex-direction:column;width:100%;"," ",""],o=>`\n order: ${o.square?'initial':'1'};\n align-items: ${o.square?'center':'flex-start'};\n `,responsiveSize.responsiveSize);exports.Content=Content,exports.IconContainer=IconContainer,exports.Root=Root,exports.TextContainer=TextContainer;
|
|
2
2
|
//# sourceMappingURL=style.js.map
|