@stokelp/ui 2.96.6 → 2.97.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_commonjsHelpers.cjs +2 -0
- package/dist/_virtual/_commonjsHelpers.cjs.map +1 -0
- package/dist/_virtual/_commonjsHelpers.js +10 -0
- package/dist/_virtual/_commonjsHelpers.js.map +1 -0
- package/dist/_virtual/cjs.cjs +2 -0
- package/dist/_virtual/cjs.cjs.map +1 -0
- package/dist/_virtual/cjs.js +9 -0
- package/dist/_virtual/cjs.js.map +1 -0
- package/dist/_virtual/lodash.cjs +2 -0
- package/dist/_virtual/lodash.cjs.map +1 -0
- package/dist/_virtual/lodash.js +7 -0
- package/dist/_virtual/lodash.js.map +1 -0
- package/dist/_virtual/lodash2.cjs +2 -0
- package/dist/_virtual/lodash2.cjs.map +1 -0
- package/dist/_virtual/lodash2.js +6 -0
- package/dist/_virtual/lodash2.js.map +1 -0
- package/dist/components/accordion/Accordion.cjs +2 -0
- package/dist/components/accordion/Accordion.cjs.map +1 -0
- package/dist/components/accordion/Accordion.js +29 -0
- package/dist/components/accordion/Accordion.js.map +1 -0
- package/dist/components/action-card/ActionCard.cjs +2 -0
- package/dist/components/action-card/ActionCard.cjs.map +1 -0
- package/dist/components/action-card/ActionCard.js +28 -0
- package/dist/components/action-card/ActionCard.js.map +1 -0
- package/dist/components/alert/Alert.cjs +2 -0
- package/dist/components/alert/Alert.cjs.map +1 -0
- package/dist/components/alert/Alert.js +85 -0
- package/dist/components/alert/Alert.js.map +1 -0
- package/dist/components/app/navigation/AppNavigation.cjs +2 -0
- package/dist/components/app/navigation/AppNavigation.cjs.map +1 -0
- package/dist/components/app/navigation/AppNavigation.js +48 -0
- package/dist/components/app/navigation/AppNavigation.js.map +1 -0
- package/dist/components/app/navigation/language-select/AppNavigationLanguageSelect.cjs +2 -0
- package/dist/components/app/navigation/language-select/AppNavigationLanguageSelect.cjs.map +1 -0
- package/dist/components/app/navigation/language-select/AppNavigationLanguageSelect.js +120 -0
- package/dist/components/app/navigation/language-select/AppNavigationLanguageSelect.js.map +1 -0
- package/dist/components/app/price-tag/PriceTag.cjs +2 -0
- package/dist/components/app/price-tag/PriceTag.cjs.map +1 -0
- package/dist/components/app/price-tag/PriceTag.js +21 -0
- package/dist/components/app/price-tag/PriceTag.js.map +1 -0
- package/dist/components/app/product-card-catalog/styled.cjs +2 -0
- package/dist/components/app/product-card-catalog/styled.cjs.map +1 -0
- package/dist/components/app/product-card-catalog/styled.js +22 -0
- package/dist/components/app/product-card-catalog/styled.js.map +1 -0
- package/dist/components/avatar/styled.cjs +2 -0
- package/dist/components/avatar/styled.cjs.map +1 -0
- package/dist/components/avatar/styled.js +28 -0
- package/dist/components/avatar/styled.js.map +1 -0
- package/dist/components/box/Box.cjs +2 -0
- package/dist/components/box/Box.cjs.map +1 -0
- package/dist/components/box/Box.js +12 -0
- package/dist/components/box/Box.js.map +1 -0
- package/dist/components/breadcrumb/Breadcrumb.cjs +2 -0
- package/dist/components/breadcrumb/Breadcrumb.cjs.map +1 -0
- package/dist/components/breadcrumb/Breadcrumb.js +36 -0
- package/dist/components/breadcrumb/Breadcrumb.js.map +1 -0
- package/dist/components/button/Button.cjs +2 -0
- package/dist/components/button/Button.cjs.map +1 -0
- package/dist/components/button/Button.js +9 -0
- package/dist/components/button/Button.js.map +1 -0
- package/dist/components/button-filter/ButtonFilter.cjs +2 -0
- package/dist/components/button-filter/ButtonFilter.cjs.map +1 -0
- package/dist/components/button-filter/ButtonFilter.js +9 -0
- package/dist/components/button-filter/ButtonFilter.js.map +1 -0
- package/dist/components/chat/Chat.cjs +2 -0
- package/dist/components/chat/Chat.cjs.map +1 -0
- package/dist/components/chat/Chat.js +27 -0
- package/dist/components/chat/Chat.js.map +1 -0
- package/dist/components/chat/ChatDocumentMessage.cjs +2 -0
- package/dist/components/chat/ChatDocumentMessage.cjs.map +1 -0
- package/dist/components/chat/ChatDocumentMessage.js +33 -0
- package/dist/components/chat/ChatDocumentMessage.js.map +1 -0
- package/dist/components/chat/ChatMessage.cjs +2 -0
- package/dist/components/chat/ChatMessage.cjs.map +1 -0
- package/dist/components/chat/ChatMessage.js +9 -0
- package/dist/components/chat/ChatMessage.js.map +1 -0
- package/dist/components/chat/ChatProfileAvatar.cjs +2 -0
- package/dist/components/chat/ChatProfileAvatar.cjs.map +1 -0
- package/dist/components/chat/ChatProfileAvatar.js +17 -0
- package/dist/components/chat/ChatProfileAvatar.js.map +1 -0
- package/dist/components/chat/ChatTextInput.cjs +2 -0
- package/dist/components/chat/ChatTextInput.cjs.map +1 -0
- package/dist/components/chat/ChatTextInput.js +54 -0
- package/dist/components/chat/ChatTextInput.js.map +1 -0
- package/dist/components/checkbox/Checkbox.cjs +2 -0
- package/dist/components/checkbox/Checkbox.cjs.map +1 -0
- package/dist/components/checkbox/Checkbox.js +35 -0
- package/dist/components/checkbox/Checkbox.js.map +1 -0
- package/dist/components/checkbox-card/CheckboxCard.cjs +2 -0
- package/dist/components/checkbox-card/CheckboxCard.cjs.map +1 -0
- package/dist/components/checkbox-card/CheckboxCard.js +40 -0
- package/dist/components/checkbox-card/CheckboxCard.js.map +1 -0
- package/dist/components/checkbox-card/namespace.cjs +2 -0
- package/dist/components/checkbox-card/namespace.cjs.map +1 -0
- package/dist/components/checkbox-card/namespace.js +10 -0
- package/dist/components/checkbox-card/namespace.js.map +1 -0
- package/dist/components/chip/Chip.cjs +2 -0
- package/dist/components/chip/Chip.cjs.map +1 -0
- package/dist/components/chip/Chip.js +25 -0
- package/dist/components/chip/Chip.js.map +1 -0
- package/dist/components/collapsible/styled.cjs +2 -0
- package/dist/components/collapsible/styled.cjs.map +1 -0
- package/dist/components/collapsible/styled.js +12 -0
- package/dist/components/collapsible/styled.js.map +1 -0
- package/dist/components/combobox/Combobox.cjs +2 -0
- package/dist/components/combobox/Combobox.cjs.map +1 -0
- package/dist/components/combobox/Combobox.js +176 -0
- package/dist/components/combobox/Combobox.js.map +1 -0
- package/dist/components/date-picker/DatePicker.cjs +2 -0
- package/dist/components/date-picker/DatePicker.cjs.map +1 -0
- package/dist/components/date-picker/DatePicker.js +129 -0
- package/dist/components/date-picker/DatePicker.js.map +1 -0
- package/dist/components/dialog/styled.cjs +2 -0
- package/dist/components/dialog/styled.cjs.map +1 -0
- package/dist/components/dialog/styled.js +67 -0
- package/dist/components/dialog/styled.js.map +1 -0
- package/dist/components/drawer/Drawer.cjs +2 -0
- package/dist/components/drawer/Drawer.cjs.map +1 -0
- package/dist/components/drawer/Drawer.js +64 -0
- package/dist/components/drawer/Drawer.js.map +1 -0
- package/dist/components/flag/styled.cjs +2 -0
- package/dist/components/flag/styled.cjs.map +1 -0
- package/dist/components/flag/styled.js +3753 -0
- package/dist/components/flag/styled.js.map +1 -0
- package/dist/components/form/FormControl.cjs +2 -0
- package/dist/components/form/FormControl.cjs.map +1 -0
- package/dist/components/form/FormControl.js +19 -0
- package/dist/components/form/FormControl.js.map +1 -0
- package/dist/components/form/FormHelperText.cjs +2 -0
- package/dist/components/form/FormHelperText.cjs.map +1 -0
- package/dist/components/form/FormHelperText.js +10 -0
- package/dist/components/form/FormHelperText.js.map +1 -0
- package/dist/components/form/FormLabel.cjs +2 -0
- package/dist/components/form/FormLabel.cjs.map +1 -0
- package/dist/components/form/FormLabel.js +35 -0
- package/dist/components/form/FormLabel.js.map +1 -0
- package/dist/components/heading/Heading.cjs +2 -0
- package/dist/components/heading/Heading.cjs.map +1 -0
- package/dist/components/heading/Heading.js +13 -0
- package/dist/components/heading/Heading.js.map +1 -0
- package/dist/components/icon/Icon.cjs +2 -0
- package/dist/components/icon/Icon.cjs.map +1 -0
- package/dist/components/icon/Icon.js +12 -0
- package/dist/components/icon/Icon.js.map +1 -0
- package/dist/components/icon-button/IconButton.cjs +2 -0
- package/dist/components/icon-button/IconButton.cjs.map +1 -0
- package/dist/components/icon-button/IconButton.js +8 -0
- package/dist/components/icon-button/IconButton.js.map +1 -0
- package/dist/components/illustration/Illustration.cjs +2 -0
- package/dist/components/illustration/Illustration.cjs.map +1 -0
- package/dist/components/illustration/Illustration.js +41 -0
- package/dist/components/illustration/Illustration.js.map +1 -0
- package/dist/components/illustration/patterns.cjs +2 -0
- package/dist/components/illustration/patterns.cjs.map +1 -0
- package/dist/{ui.js → components/illustration/patterns.js} +38 -15804
- package/dist/components/illustration/patterns.js.map +1 -0
- package/dist/components/input/HighlightedInput.cjs +2 -0
- package/dist/components/input/HighlightedInput.cjs.map +1 -0
- package/dist/components/input/HighlightedInput.js +60 -0
- package/dist/components/input/HighlightedInput.js.map +1 -0
- package/dist/components/input/Input.cjs +2 -0
- package/dist/components/input/Input.cjs.map +1 -0
- package/dist/components/input/Input.js +15 -0
- package/dist/components/input/Input.js.map +1 -0
- package/dist/components/input/InputAddon.cjs +2 -0
- package/dist/components/input/InputAddon.cjs.map +1 -0
- package/dist/components/input/InputAddon.js +11 -0
- package/dist/components/input/InputAddon.js.map +1 -0
- package/dist/components/input/InputGroup.cjs +2 -0
- package/dist/components/input/InputGroup.cjs.map +1 -0
- package/dist/components/input/InputGroup.js +10 -0
- package/dist/components/input/InputGroup.js.map +1 -0
- package/dist/components/input/PhoneNumberInput.cjs +2 -0
- package/dist/components/input/PhoneNumberInput.cjs.map +1 -0
- package/dist/components/input/PhoneNumberInput.js +26 -0
- package/dist/components/input/PhoneNumberInput.js.map +1 -0
- package/dist/components/menu/Menu.cjs +2 -0
- package/dist/components/menu/Menu.cjs.map +1 -0
- package/dist/components/menu/Menu.js +29 -0
- package/dist/components/menu/Menu.js.map +1 -0
- package/dist/components/pagination/Pagination.cjs +2 -0
- package/dist/components/pagination/Pagination.cjs.map +1 -0
- package/dist/components/pagination/Pagination.js +86 -0
- package/dist/components/pagination/Pagination.js.map +1 -0
- package/dist/components/pagination/use-pagination.cjs +2 -0
- package/dist/components/pagination/use-pagination.cjs.map +1 -0
- package/dist/components/pagination/use-pagination.js +57 -0
- package/dist/components/pagination/use-pagination.js.map +1 -0
- package/dist/components/popover/Popover.cjs +2 -0
- package/dist/components/popover/Popover.cjs.map +1 -0
- package/dist/components/popover/Popover.js +27 -0
- package/dist/components/popover/Popover.js.map +1 -0
- package/dist/components/radio-button-group/RadioButtonGroup.cjs +2 -0
- package/dist/components/radio-button-group/RadioButtonGroup.cjs.map +1 -0
- package/dist/components/radio-button-group/RadioButtonGroup.js +22 -0
- package/dist/components/radio-button-group/RadioButtonGroup.js.map +1 -0
- package/dist/components/radio-card-group/RadioCardGroup.cjs +2 -0
- package/dist/components/radio-card-group/RadioCardGroup.cjs.map +1 -0
- package/dist/components/radio-card-group/RadioCardGroup.js +23 -0
- package/dist/components/radio-card-group/RadioCardGroup.js.map +1 -0
- package/dist/components/radio-card-group/namespace.cjs +2 -0
- package/dist/components/radio-card-group/namespace.cjs.map +1 -0
- package/dist/components/radio-card-group/namespace.js +11 -0
- package/dist/components/radio-card-group/namespace.js.map +1 -0
- package/dist/components/radio-group/RadioGroup.cjs +2 -0
- package/dist/components/radio-group/RadioGroup.cjs.map +1 -0
- package/dist/components/radio-group/RadioGroup.js +22 -0
- package/dist/components/radio-group/RadioGroup.js.map +1 -0
- package/dist/components/select/Select.cjs +2 -0
- package/dist/components/select/Select.cjs.map +1 -0
- package/dist/components/select/Select.js +146 -0
- package/dist/components/select/Select.js.map +1 -0
- package/dist/components/select-language/SelectLanguage.cjs +2 -0
- package/dist/components/select-language/SelectLanguage.cjs.map +1 -0
- package/dist/components/select-language/SelectLanguage.js +89 -0
- package/dist/components/select-language/SelectLanguage.js.map +1 -0
- package/dist/components/status-tag-select/StatusTagSelect.cjs +2 -0
- package/dist/components/status-tag-select/StatusTagSelect.cjs.map +1 -0
- package/dist/components/status-tag-select/StatusTagSelect.js +117 -0
- package/dist/components/status-tag-select/StatusTagSelect.js.map +1 -0
- package/dist/components/switch/Switch.cjs +2 -0
- package/dist/components/switch/Switch.cjs.map +1 -0
- package/dist/components/switch/Switch.js +20 -0
- package/dist/components/switch/Switch.js.map +1 -0
- package/dist/components/switch-card/SwitchCard.cjs +2 -0
- package/dist/components/switch-card/SwitchCard.cjs.map +1 -0
- package/dist/components/switch-card/SwitchCard.js +27 -0
- package/dist/components/switch-card/SwitchCard.js.map +1 -0
- package/dist/components/switch-card/namespace.cjs +2 -0
- package/dist/components/switch-card/namespace.cjs.map +1 -0
- package/dist/components/switch-card/namespace.js +10 -0
- package/dist/components/switch-card/namespace.js.map +1 -0
- package/dist/components/table/Table.cjs +2 -0
- package/dist/components/table/Table.cjs.map +1 -0
- package/dist/components/table/Table.js +113 -0
- package/dist/components/table/Table.js.map +1 -0
- package/dist/components/table/TableProvider.cjs +2 -0
- package/dist/components/table/TableProvider.cjs.map +1 -0
- package/dist/components/table/TableProvider.js +41 -0
- package/dist/components/table/TableProvider.js.map +1 -0
- package/dist/components/tabs/Tabs.cjs +2 -0
- package/dist/components/tabs/Tabs.cjs.map +1 -0
- package/dist/components/tabs/Tabs.js +27 -0
- package/dist/components/tabs/Tabs.js.map +1 -0
- package/dist/components/tag/Tag.cjs +2 -0
- package/dist/components/tag/Tag.cjs.map +1 -0
- package/dist/components/tag/Tag.js +18 -0
- package/dist/components/tag/Tag.js.map +1 -0
- package/dist/components/text/Text.cjs +2 -0
- package/dist/components/text/Text.cjs.map +1 -0
- package/dist/components/text/Text.js +13 -0
- package/dist/components/text/Text.js.map +1 -0
- package/dist/components/textarea/Textarea.cjs +2 -0
- package/dist/components/textarea/Textarea.cjs.map +1 -0
- package/dist/components/textarea/Textarea.js +9 -0
- package/dist/components/textarea/Textarea.js.map +1 -0
- package/dist/components/tooltip/Tooltip.cjs +2 -0
- package/dist/components/tooltip/Tooltip.cjs.map +1 -0
- package/dist/components/tooltip/Tooltip.js +44 -0
- package/dist/components/tooltip/Tooltip.js.map +1 -0
- package/dist/{icons.cjs → icons/index.cjs} +1 -1
- package/dist/icons/index.cjs.map +1 -0
- package/dist/{icons.js → icons/index.js} +1 -1
- package/dist/icons/index.js.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +178 -0
- package/dist/index.js.map +1 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowDownTrayIcon.cjs +2 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowDownTrayIcon.cjs.map +1 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowDownTrayIcon.js +30 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowDownTrayIcon.js.map +1 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowLeftCircleIcon.cjs +2 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowLeftCircleIcon.cjs.map +1 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowLeftCircleIcon.js +30 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowLeftCircleIcon.js.map +1 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentTextIcon.cjs +2 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentTextIcon.cjs.map +1 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentTextIcon.js +30 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentTextIcon.js.map +1 -0
- package/dist/node_modules/@pandacss/shared/dist/index.cjs +2 -0
- package/dist/node_modules/@pandacss/shared/dist/index.cjs.map +1 -0
- package/dist/node_modules/@pandacss/shared/dist/index.js +469 -0
- package/dist/node_modules/@pandacss/shared/dist/index.js.map +1 -0
- package/dist/node_modules/@zag-js/utils/dist/index.cjs +2 -0
- package/dist/node_modules/@zag-js/utils/dist/index.cjs.map +1 -0
- package/dist/node_modules/@zag-js/utils/dist/index.js +8 -0
- package/dist/node_modules/@zag-js/utils/dist/index.js.map +1 -0
- package/dist/node_modules/deepmerge/dist/cjs.cjs +2 -0
- package/dist/node_modules/deepmerge/dist/cjs.cjs.map +1 -0
- package/dist/node_modules/deepmerge/dist/cjs.js +81 -0
- package/dist/node_modules/deepmerge/dist/cjs.js.map +1 -0
- package/dist/node_modules/lodash/lodash.cjs +28 -0
- package/dist/node_modules/lodash/lodash.cjs.map +1 -0
- package/dist/node_modules/lodash/lodash.js +3679 -0
- package/dist/node_modules/lodash/lodash.js.map +1 -0
- package/dist/preset.cjs +2 -0
- package/dist/preset.cjs.map +1 -0
- package/dist/preset.js +35 -0
- package/dist/preset.js.map +1 -0
- package/dist/shared/ConditionalWrapper.cjs +2 -0
- package/dist/shared/ConditionalWrapper.cjs.map +1 -0
- package/dist/shared/ConditionalWrapper.js +6 -0
- package/dist/shared/ConditionalWrapper.js.map +1 -0
- package/dist/shared/assets/icons.cjs +2 -0
- package/dist/shared/assets/icons.cjs.map +1 -0
- package/dist/shared/assets/icons.js +24 -0
- package/dist/shared/assets/icons.js.map +1 -0
- package/dist/shared/hooks/useUncontrolled.cjs +2 -0
- package/dist/shared/hooks/useUncontrolled.cjs.map +1 -0
- package/dist/shared/hooks/useUncontrolled.js +18 -0
- package/dist/shared/hooks/useUncontrolled.js.map +1 -0
- package/dist/shared/utils/events.cjs +2 -0
- package/dist/shared/utils/events.cjs.map +1 -0
- package/dist/shared/utils/events.js +8 -0
- package/dist/shared/utils/events.js.map +1 -0
- package/dist/theme/breakpoints.cjs +2 -0
- package/dist/theme/breakpoints.cjs.map +1 -0
- package/dist/theme/breakpoints.js +11 -0
- package/dist/theme/breakpoints.js.map +1 -0
- package/dist/theme/conditions.cjs +2 -0
- package/dist/theme/conditions.cjs.map +1 -0
- package/dist/theme/conditions.js +25 -0
- package/dist/theme/conditions.js.map +1 -0
- package/dist/theme/containers.cjs +2 -0
- package/dist/theme/containers.cjs.map +1 -0
- package/dist/theme/containers.js +19 -0
- package/dist/theme/containers.js.map +1 -0
- package/dist/theme/globalCss.cjs +4 -0
- package/dist/theme/globalCss.cjs.map +1 -0
- package/dist/theme/globalCss.js +101 -0
- package/dist/theme/globalCss.js.map +1 -0
- package/dist/theme/keyframes.cjs +2 -0
- package/dist/theme/keyframes.cjs.map +1 -0
- package/dist/theme/keyframes.js +173 -0
- package/dist/theme/keyframes.js.map +1 -0
- package/dist/theme/recipes/accordion.cjs +2 -0
- package/dist/theme/recipes/accordion.cjs.map +1 -0
- package/dist/theme/recipes/accordion.js +112 -0
- package/dist/theme/recipes/accordion.js.map +1 -0
- package/dist/theme/recipes/action-card.cjs +2 -0
- package/dist/theme/recipes/action-card.cjs.map +1 -0
- package/dist/theme/recipes/action-card.js +87 -0
- package/dist/theme/recipes/action-card.js.map +1 -0
- package/dist/theme/recipes/alert.cjs +2 -0
- package/dist/theme/recipes/alert.cjs.map +1 -0
- package/dist/theme/recipes/alert.js +68 -0
- package/dist/theme/recipes/alert.js.map +1 -0
- package/dist/theme/recipes/app/navigation-language-select.cjs +2 -0
- package/dist/theme/recipes/app/navigation-language-select.cjs.map +1 -0
- package/dist/theme/recipes/app/navigation-language-select.js +151 -0
- package/dist/theme/recipes/app/navigation-language-select.js.map +1 -0
- package/dist/theme/recipes/app/navigation.cjs +2 -0
- package/dist/theme/recipes/app/navigation.cjs.map +1 -0
- package/dist/theme/recipes/app/navigation.js +271 -0
- package/dist/theme/recipes/app/navigation.js.map +1 -0
- package/dist/theme/recipes/app/price-tag.cjs +2 -0
- package/dist/theme/recipes/app/price-tag.cjs.map +1 -0
- package/dist/theme/recipes/app/price-tag.js +73 -0
- package/dist/theme/recipes/app/price-tag.js.map +1 -0
- package/dist/theme/recipes/app/product-card-catalog.cjs +2 -0
- package/dist/theme/recipes/app/product-card-catalog.cjs.map +1 -0
- package/dist/theme/recipes/app/product-card-catalog.js +196 -0
- package/dist/theme/recipes/app/product-card-catalog.js.map +1 -0
- package/dist/theme/recipes/avatar-group.cjs +2 -0
- package/dist/theme/recipes/avatar-group.cjs.map +1 -0
- package/dist/theme/recipes/avatar-group.js +40 -0
- package/dist/theme/recipes/avatar-group.js.map +1 -0
- package/dist/theme/recipes/avatar.cjs +2 -0
- package/dist/theme/recipes/avatar.cjs.map +1 -0
- package/dist/theme/recipes/avatar.js +99 -0
- package/dist/theme/recipes/avatar.js.map +1 -0
- package/dist/theme/recipes/breadcrumb.cjs +2 -0
- package/dist/theme/recipes/breadcrumb.cjs.map +1 -0
- package/dist/theme/recipes/breadcrumb.js +34 -0
- package/dist/theme/recipes/breadcrumb.js.map +1 -0
- package/dist/theme/recipes/button-filter.cjs +2 -0
- package/dist/theme/recipes/button-filter.cjs.map +1 -0
- package/dist/theme/recipes/button-filter.js +63 -0
- package/dist/theme/recipes/button-filter.js.map +1 -0
- package/dist/theme/recipes/button.cjs +2 -0
- package/dist/theme/recipes/button.cjs.map +1 -0
- package/dist/theme/recipes/button.js +298 -0
- package/dist/theme/recipes/button.js.map +1 -0
- package/dist/theme/recipes/chat/chat-document-message.cjs +2 -0
- package/dist/theme/recipes/chat/chat-document-message.cjs.map +1 -0
- package/dist/theme/recipes/chat/chat-document-message.js +46 -0
- package/dist/theme/recipes/chat/chat-document-message.js.map +1 -0
- package/dist/theme/recipes/chat/chat-input-text.cjs +2 -0
- package/dist/theme/recipes/chat/chat-input-text.cjs.map +1 -0
- package/dist/theme/recipes/chat/chat-input-text.js +30 -0
- package/dist/theme/recipes/chat/chat-input-text.js.map +1 -0
- package/dist/theme/recipes/chat/chat-message.cjs +2 -0
- package/dist/theme/recipes/chat/chat-message.cjs.map +1 -0
- package/dist/theme/recipes/chat/chat-message.js +48 -0
- package/dist/theme/recipes/chat/chat-message.js.map +1 -0
- package/dist/theme/recipes/chat/chat-profile-avatar.cjs +2 -0
- package/dist/theme/recipes/chat/chat-profile-avatar.cjs.map +1 -0
- package/dist/theme/recipes/chat/chat-profile-avatar.js +28 -0
- package/dist/theme/recipes/chat/chat-profile-avatar.js.map +1 -0
- package/dist/theme/recipes/chat/chat.cjs +2 -0
- package/dist/theme/recipes/chat/chat.cjs.map +1 -0
- package/dist/theme/recipes/chat/chat.js +59 -0
- package/dist/theme/recipes/chat/chat.js.map +1 -0
- package/dist/theme/recipes/checkbox-card.cjs +2 -0
- package/dist/theme/recipes/checkbox-card.cjs.map +1 -0
- package/dist/theme/recipes/checkbox-card.js +42 -0
- package/dist/theme/recipes/checkbox-card.js.map +1 -0
- package/dist/theme/recipes/checkbox-group.cjs +2 -0
- package/dist/theme/recipes/checkbox-group.cjs.map +1 -0
- package/dist/theme/recipes/checkbox-group.js +15 -0
- package/dist/theme/recipes/checkbox-group.js.map +1 -0
- package/dist/theme/recipes/checkbox.cjs +2 -0
- package/dist/theme/recipes/checkbox.cjs.map +1 -0
- package/dist/theme/recipes/checkbox.js +131 -0
- package/dist/theme/recipes/checkbox.js.map +1 -0
- package/dist/theme/recipes/chip.cjs +2 -0
- package/dist/theme/recipes/chip.cjs.map +1 -0
- package/dist/theme/recipes/chip.js +184 -0
- package/dist/theme/recipes/chip.js.map +1 -0
- package/dist/theme/recipes/collapsible.cjs +2 -0
- package/dist/theme/recipes/collapsible.cjs.map +1 -0
- package/dist/theme/recipes/collapsible.js +30 -0
- package/dist/theme/recipes/collapsible.js.map +1 -0
- package/dist/theme/recipes/combobox.cjs +2 -0
- package/dist/theme/recipes/combobox.cjs.map +1 -0
- package/dist/theme/recipes/combobox.js +179 -0
- package/dist/theme/recipes/combobox.js.map +1 -0
- package/dist/theme/recipes/common/group-card.cjs +2 -0
- package/dist/theme/recipes/common/group-card.cjs.map +1 -0
- package/dist/theme/recipes/common/group-card.js +81 -0
- package/dist/theme/recipes/common/group-card.js.map +1 -0
- package/dist/theme/recipes/datepicker.cjs +2 -0
- package/dist/theme/recipes/datepicker.cjs.map +1 -0
- package/dist/theme/recipes/datepicker.js +178 -0
- package/dist/theme/recipes/datepicker.js.map +1 -0
- package/dist/theme/recipes/dialog.cjs +2 -0
- package/dist/theme/recipes/dialog.cjs.map +1 -0
- package/dist/theme/recipes/dialog.js +154 -0
- package/dist/theme/recipes/dialog.js.map +1 -0
- package/dist/theme/recipes/drawer.cjs +2 -0
- package/dist/theme/recipes/drawer.cjs.map +1 -0
- package/dist/theme/recipes/drawer.js +129 -0
- package/dist/theme/recipes/drawer.js.map +1 -0
- package/dist/theme/recipes/flag.cjs +2 -0
- package/dist/theme/recipes/flag.cjs.map +1 -0
- package/dist/theme/recipes/flag.js +33 -0
- package/dist/theme/recipes/flag.js.map +1 -0
- package/dist/theme/recipes/form/control.cjs +2 -0
- package/dist/theme/recipes/form/control.cjs.map +1 -0
- package/dist/theme/recipes/form/control.js +37 -0
- package/dist/theme/recipes/form/control.js.map +1 -0
- package/dist/theme/recipes/form/helper-text.cjs +2 -0
- package/dist/theme/recipes/form/helper-text.cjs.map +1 -0
- package/dist/theme/recipes/form/helper-text.js +16 -0
- package/dist/theme/recipes/form/helper-text.js.map +1 -0
- package/dist/theme/recipes/form/label.cjs +2 -0
- package/dist/theme/recipes/form/label.cjs.map +1 -0
- package/dist/theme/recipes/form/label.js +50 -0
- package/dist/theme/recipes/form/label.js.map +1 -0
- package/dist/theme/recipes/heading.cjs +2 -0
- package/dist/theme/recipes/heading.cjs.map +1 -0
- package/dist/theme/recipes/heading.js +37 -0
- package/dist/theme/recipes/heading.js.map +1 -0
- package/dist/theme/recipes/highlightedInput.cjs +2 -0
- package/dist/theme/recipes/highlightedInput.cjs.map +1 -0
- package/dist/theme/recipes/highlightedInput.js +48 -0
- package/dist/theme/recipes/highlightedInput.js.map +1 -0
- package/dist/theme/recipes/icon-button.cjs +2 -0
- package/dist/theme/recipes/icon-button.cjs.map +1 -0
- package/dist/theme/recipes/icon-button.js +91 -0
- package/dist/theme/recipes/icon-button.js.map +1 -0
- package/dist/theme/recipes/icon.cjs +2 -0
- package/dist/theme/recipes/icon.cjs.map +1 -0
- package/dist/theme/recipes/icon.js +44 -0
- package/dist/theme/recipes/icon.js.map +1 -0
- package/dist/theme/recipes/illustration.cjs +2 -0
- package/dist/theme/recipes/illustration.cjs.map +1 -0
- package/dist/theme/recipes/illustration.js +50 -0
- package/dist/theme/recipes/illustration.js.map +1 -0
- package/dist/theme/recipes/index.cjs +2 -0
- package/dist/theme/recipes/index.cjs.map +1 -0
- package/dist/theme/recipes/index.js +129 -0
- package/dist/theme/recipes/index.js.map +1 -0
- package/dist/theme/recipes/input-addon.cjs +2 -0
- package/dist/theme/recipes/input-addon.cjs.map +1 -0
- package/dist/theme/recipes/input-addon.js +27 -0
- package/dist/theme/recipes/input-addon.js.map +1 -0
- package/dist/theme/recipes/input-group.cjs +2 -0
- package/dist/theme/recipes/input-group.cjs.map +1 -0
- package/dist/theme/recipes/input-group.js +52 -0
- package/dist/theme/recipes/input-group.js.map +1 -0
- package/dist/theme/recipes/input.cjs +2 -0
- package/dist/theme/recipes/input.cjs.map +1 -0
- package/dist/theme/recipes/input.js +64 -0
- package/dist/theme/recipes/input.js.map +1 -0
- package/dist/theme/recipes/menu.cjs +2 -0
- package/dist/theme/recipes/menu.cjs.map +1 -0
- package/dist/theme/recipes/menu.js +102 -0
- package/dist/theme/recipes/menu.js.map +1 -0
- package/dist/theme/recipes/pagination.cjs +2 -0
- package/dist/theme/recipes/pagination.cjs.map +1 -0
- package/dist/theme/recipes/pagination.js +73 -0
- package/dist/theme/recipes/pagination.js.map +1 -0
- package/dist/theme/recipes/phone-number-input.cjs +2 -0
- package/dist/theme/recipes/phone-number-input.cjs.map +1 -0
- package/dist/theme/recipes/phone-number-input.js +68 -0
- package/dist/theme/recipes/phone-number-input.js.map +1 -0
- package/dist/theme/recipes/popover.cjs +2 -0
- package/dist/theme/recipes/popover.cjs.map +1 -0
- package/dist/theme/recipes/popover.js +30 -0
- package/dist/theme/recipes/popover.js.map +1 -0
- package/dist/theme/recipes/radio-button-group.cjs +2 -0
- package/dist/theme/recipes/radio-button-group.cjs.map +1 -0
- package/dist/theme/recipes/radio-button-group.js +97 -0
- package/dist/theme/recipes/radio-button-group.js.map +1 -0
- package/dist/theme/recipes/radio-card-group.cjs +2 -0
- package/dist/theme/recipes/radio-card-group.cjs.map +1 -0
- package/dist/theme/recipes/radio-card-group.js +70 -0
- package/dist/theme/recipes/radio-card-group.js.map +1 -0
- package/dist/theme/recipes/radio-group.cjs +2 -0
- package/dist/theme/recipes/radio-group.cjs.map +1 -0
- package/dist/theme/recipes/radio-group.js +121 -0
- package/dist/theme/recipes/radio-group.js.map +1 -0
- package/dist/theme/recipes/select-language.cjs +2 -0
- package/dist/theme/recipes/select-language.cjs.map +1 -0
- package/dist/theme/recipes/select-language.js +115 -0
- package/dist/theme/recipes/select-language.js.map +1 -0
- package/dist/theme/recipes/select.cjs +2 -0
- package/dist/theme/recipes/select.cjs.map +1 -0
- package/dist/theme/recipes/select.js +209 -0
- package/dist/theme/recipes/select.js.map +1 -0
- package/dist/theme/recipes/status-tag-select.cjs +2 -0
- package/dist/theme/recipes/status-tag-select.cjs.map +1 -0
- package/dist/theme/recipes/status-tag-select.js +177 -0
- package/dist/theme/recipes/status-tag-select.js.map +1 -0
- package/dist/theme/recipes/switch-card.cjs +2 -0
- package/dist/theme/recipes/switch-card.cjs.map +1 -0
- package/dist/theme/recipes/switch-card.js +44 -0
- package/dist/theme/recipes/switch-card.js.map +1 -0
- package/dist/theme/recipes/switch.cjs +2 -0
- package/dist/theme/recipes/switch.cjs.map +1 -0
- package/dist/theme/recipes/switch.js +90 -0
- package/dist/theme/recipes/switch.js.map +1 -0
- package/dist/theme/recipes/table-container.cjs +2 -0
- package/dist/theme/recipes/table-container.cjs.map +1 -0
- package/dist/theme/recipes/table-container.js +21 -0
- package/dist/theme/recipes/table-container.js.map +1 -0
- package/dist/theme/recipes/table-empty-row.cjs +2 -0
- package/dist/theme/recipes/table-empty-row.cjs.map +1 -0
- package/dist/theme/recipes/table-empty-row.js +19 -0
- package/dist/theme/recipes/table-empty-row.js.map +1 -0
- package/dist/theme/recipes/table-group-title.cjs +2 -0
- package/dist/theme/recipes/table-group-title.cjs.map +1 -0
- package/dist/theme/recipes/table-group-title.js +36 -0
- package/dist/theme/recipes/table-group-title.js.map +1 -0
- package/dist/theme/recipes/table.cjs +2 -0
- package/dist/theme/recipes/table.cjs.map +1 -0
- package/dist/theme/recipes/table.js +111 -0
- package/dist/theme/recipes/table.js.map +1 -0
- package/dist/theme/recipes/tabs-chip.cjs +2 -0
- package/dist/theme/recipes/tabs-chip.cjs.map +1 -0
- package/dist/theme/recipes/tabs-chip.js +49 -0
- package/dist/theme/recipes/tabs-chip.js.map +1 -0
- package/dist/theme/recipes/tabs.cjs +2 -0
- package/dist/theme/recipes/tabs.cjs.map +1 -0
- package/dist/theme/recipes/tabs.js +128 -0
- package/dist/theme/recipes/tabs.js.map +1 -0
- package/dist/theme/recipes/tag.cjs +2 -0
- package/dist/theme/recipes/tag.cjs.map +1 -0
- package/dist/theme/recipes/tag.js +124 -0
- package/dist/theme/recipes/tag.js.map +1 -0
- package/dist/theme/recipes/text.cjs +2 -0
- package/dist/theme/recipes/text.cjs.map +1 -0
- package/dist/theme/recipes/text.js +40 -0
- package/dist/theme/recipes/text.js.map +1 -0
- package/dist/theme/recipes/textarea.cjs +2 -0
- package/dist/theme/recipes/textarea.cjs.map +1 -0
- package/dist/theme/recipes/textarea.js +16 -0
- package/dist/theme/recipes/textarea.js.map +1 -0
- package/dist/theme/recipes/tooltip.cjs +2 -0
- package/dist/theme/recipes/tooltip.cjs.map +1 -0
- package/dist/theme/recipes/tooltip.js +64 -0
- package/dist/theme/recipes/tooltip.js.map +1 -0
- package/dist/theme/semantic-tokens/colors.cjs +2 -0
- package/dist/theme/semantic-tokens/colors.cjs.map +1 -0
- package/dist/theme/semantic-tokens/colors.js +143 -0
- package/dist/theme/semantic-tokens/colors.js.map +1 -0
- package/dist/theme/semantic-tokens/index.cjs +2 -0
- package/dist/theme/semantic-tokens/index.cjs.map +1 -0
- package/dist/theme/semantic-tokens/index.js +9 -0
- package/dist/theme/semantic-tokens/index.js.map +1 -0
- package/dist/theme/text-styles.cjs +2 -0
- package/dist/theme/text-styles.cjs.map +1 -0
- package/dist/theme/text-styles.js +90 -0
- package/dist/theme/text-styles.js.map +1 -0
- package/dist/theme/tokens/animations.cjs +2 -0
- package/dist/theme/tokens/animations.cjs.map +1 -0
- package/dist/theme/tokens/animations.js +48 -0
- package/dist/theme/tokens/animations.js.map +1 -0
- package/dist/theme/tokens/aspect-ratios.cjs +2 -0
- package/dist/theme/tokens/aspect-ratios.cjs.map +1 -0
- package/dist/theme/tokens/aspect-ratios.js +14 -0
- package/dist/theme/tokens/aspect-ratios.js.map +1 -0
- package/dist/theme/tokens/blurs.cjs +2 -0
- package/dist/theme/tokens/blurs.cjs.map +1 -0
- package/dist/theme/tokens/blurs.js +15 -0
- package/dist/theme/tokens/blurs.js.map +1 -0
- package/dist/theme/tokens/borders.cjs +2 -0
- package/dist/theme/tokens/borders.cjs.map +1 -0
- package/dist/theme/tokens/borders.js +11 -0
- package/dist/theme/tokens/borders.js.map +1 -0
- package/dist/theme/tokens/colors.cjs +2 -0
- package/dist/theme/tokens/colors.cjs.map +1 -0
- package/dist/theme/tokens/colors.js +80 -0
- package/dist/theme/tokens/colors.js.map +1 -0
- package/dist/theme/tokens/durations.cjs +2 -0
- package/dist/theme/tokens/durations.cjs.map +1 -0
- package/dist/theme/tokens/durations.js +15 -0
- package/dist/theme/tokens/durations.js.map +1 -0
- package/dist/theme/tokens/easings.cjs +51 -0
- package/dist/theme/tokens/easings.cjs.map +1 -0
- package/dist/theme/tokens/easings.js +95 -0
- package/dist/theme/tokens/easings.js.map +1 -0
- package/dist/theme/tokens/index.cjs +2 -0
- package/dist/theme/tokens/index.cjs.map +1 -0
- package/dist/theme/tokens/index.js +37 -0
- package/dist/theme/tokens/index.js.map +1 -0
- package/dist/theme/tokens/radii.cjs +2 -0
- package/dist/theme/tokens/radii.cjs.map +1 -0
- package/dist/theme/tokens/radii.js +29 -0
- package/dist/theme/tokens/radii.js.map +1 -0
- package/dist/theme/tokens/shadows.cjs +2 -0
- package/dist/theme/tokens/shadows.cjs.map +1 -0
- package/dist/theme/tokens/shadows.js +15 -0
- package/dist/theme/tokens/shadows.js.map +1 -0
- package/dist/theme/tokens/sizes.cjs +2 -0
- package/dist/theme/tokens/sizes.cjs.map +1 -0
- package/dist/theme/tokens/sizes.js +87 -0
- package/dist/theme/tokens/sizes.js.map +1 -0
- package/dist/theme/tokens/spacing.cjs +2 -0
- package/dist/theme/tokens/spacing.cjs.map +1 -0
- package/dist/theme/tokens/spacing.js +86 -0
- package/dist/theme/tokens/spacing.js.map +1 -0
- package/dist/theme/tokens/typography.cjs +2 -0
- package/dist/theme/tokens/typography.cjs.map +1 -0
- package/dist/theme/tokens/typography.js +87 -0
- package/dist/theme/tokens/typography.js.map +1 -0
- package/dist/theme/tokens/z-index.cjs +2 -0
- package/dist/theme/tokens/z-index.cjs.map +1 -0
- package/dist/theme/tokens/z-index.js +44 -0
- package/dist/theme/tokens/z-index.js.map +1 -0
- package/dist/theme/utilities.cjs +2 -0
- package/dist/theme/utilities.cjs.map +1 -0
- package/dist/theme/utilities.js +17 -0
- package/dist/theme/utilities.js.map +1 -0
- package/dist/utils/slots.cjs +2 -0
- package/dist/utils/slots.cjs.map +1 -0
- package/dist/utils/slots.js +42 -0
- package/dist/utils/slots.js.map +1 -0
- package/package.json +18 -7
- package/dist/icons.cjs.map +0 -1
- package/dist/icons.js.map +0 -1
- package/dist/ui.cjs +0 -79
- package/dist/ui.cjs.map +0 -1
- package/dist/ui.js.map +0 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as u, jsx as e } from "react/jsx-runtime";
|
|
3
|
+
import { RadioGroup as t } from "@ark-ui/react";
|
|
4
|
+
import { radioButtonGroup as a } from "@stokelp/styled-system/recipes";
|
|
5
|
+
import { createStyleContext as d } from "../../utils/slots.js";
|
|
6
|
+
import { forwardRef as l } from "react";
|
|
7
|
+
import { styled as o } from "@stokelp/styled-system/jsx";
|
|
8
|
+
const { withProvider: s, withContext: r } = d(a), c = r(o(t.ItemControl), "itemControl"), f = r(o(t.ItemText), "itemText"), I = l(({ children: i, value: n, ...m }, p) => /* @__PURE__ */ u(t.Item, { ref: p, ...m, value: n, children: [
|
|
9
|
+
/* @__PURE__ */ e(f, { children: i }),
|
|
10
|
+
/* @__PURE__ */ e(c, {}),
|
|
11
|
+
/* @__PURE__ */ e(t.ItemHiddenInput, {})
|
|
12
|
+
] })), b = s(o(t.Root), "root", {
|
|
13
|
+
defaultProps: {
|
|
14
|
+
orientation: "horizontal"
|
|
15
|
+
}
|
|
16
|
+
}), w = r(o(I), "item"), T = r(o(t.Label), "label");
|
|
17
|
+
export {
|
|
18
|
+
b as RadioButtonGroup,
|
|
19
|
+
w as RadioButtonGroupItem,
|
|
20
|
+
T as RadioButtonGroupLabel
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=RadioButtonGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioButtonGroup.js","sources":["../../../src/components/radio-button-group/RadioButtonGroup.tsx"],"sourcesContent":["import { RadioGroup as ArkRadioGroup } from '@ark-ui/react'\nimport { radioButtonGroup } from '@stokelp/styled-system/recipes'\n\nimport { createStyleContext } from '~/utils/slots'\nimport type { ComponentProps, ComponentPropsWithoutRef, ElementRef } from 'react'\nimport { forwardRef } from 'react'\nimport { styled } from '@stokelp/styled-system/jsx'\n\nconst { withProvider, withContext } = createStyleContext(radioButtonGroup)\n\nconst RadioButtonGroupItemControl = withContext(styled(ArkRadioGroup.ItemControl), 'itemControl')\nconst RadioButtonGroupItemText = withContext(styled(ArkRadioGroup.ItemText), 'itemText')\ntype ArkItemProps = ComponentPropsWithoutRef<typeof ArkRadioGroup.Item>\ntype ItemProps = Omit<ArkItemProps, 'value'> & { value: string | number | boolean }\nconst Item = forwardRef<ElementRef<typeof ArkRadioGroup.Item>, ItemProps>(({ children, value, ...props }, ref) => (\n <ArkRadioGroup.Item ref={ref} {...props} value={value as string}>\n <RadioButtonGroupItemText>{children}</RadioButtonGroupItemText>\n <RadioButtonGroupItemControl />\n <ArkRadioGroup.ItemHiddenInput />\n </ArkRadioGroup.Item>\n))\n\nexport const RadioButtonGroup = withProvider(styled(ArkRadioGroup.Root), 'root', {\n defaultProps: {\n orientation: 'horizontal',\n },\n})\nexport const RadioButtonGroupItem = withContext(styled(Item), 'item')\nexport const RadioButtonGroupLabel = withContext(styled(ArkRadioGroup.Label), 'label')\n\nexport interface RadioButtonGroupProps extends ComponentProps<typeof RadioButtonGroup> {}\nexport interface RadioButtonGroupItemProps extends ComponentProps<typeof RadioButtonGroupItem> {}\nexport interface RadioButtonGroupLabelProps extends ComponentProps<typeof RadioButtonGroupLabel> {}\n"],"names":["withProvider","withContext","createStyleContext","radioButtonGroup","RadioButtonGroupItemControl","styled","ArkRadioGroup","RadioButtonGroupItemText","Item","forwardRef","children","value","props","ref","jsx","RadioButtonGroup","RadioButtonGroupItem","RadioButtonGroupLabel"],"mappings":";;;;;;;AAQA,MAAM,EAAE,cAAAA,GAAc,aAAAC,MAAgBC,EAAmBC,CAAgB,GAEnEC,IAA8BH,EAAYI,EAAOC,EAAc,WAAW,GAAG,aAAa,GAC1FC,IAA2BN,EAAYI,EAAOC,EAAc,QAAQ,GAAG,UAAU,GAGjFE,IAAOC,EAA6D,CAAC,EAAE,UAAAC,GAAU,OAAAC,GAAO,GAAGC,KAASC,wBACvGP,EAAc,MAAd,EAAmB,KAAAO,GAAW,GAAGD,GAAO,OAAAD,GACvC,UAAA;AAAA,EAAA,gBAAAG,EAACP,KAA0B,UAAAG,GAAS;AAAA,oBACnCN,GAAA,EAA4B;AAAA,EAC7B,gBAAAU,EAACR,EAAc,iBAAd,CAAA,CAA8B;AAAA,EAAA,CACjC,CACD,GAEYS,IAAmBf,EAAaK,EAAOC,EAAc,IAAI,GAAG,QAAQ;AAAA,EAC/E,cAAc;AAAA,IACZ,aAAa;AAAA,EAAA;AAEjB,CAAC,GACYU,IAAuBf,EAAYI,EAAOG,CAAI,GAAG,MAAM,GACvDS,IAAwBhB,EAAYI,EAAOC,EAAc,KAAK,GAAG,OAAO;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),e=require("@ark-ui/react"),n=require("@stokelp/styled-system/recipes"),u=require("../../utils/slots.cjs"),m=require("react"),t=require("@stokelp/styled-system/jsx"),{withProvider:c,withContext:o}=u.createStyleContext(n.radioCardGroup,{dataAttr:!0}),p=o(t.styled(e.RadioGroup.ItemControl),"itemControl"),C=o(t.styled(e.RadioGroup.ItemText),"itemTitle"),R=o(t.styled("div"),"itemContent"),l=o(t.styled("p"),"itemDescription"),I=o(t.styled(e.ark.img),"itemImage"),G=m.forwardRef(({children:i,value:d,...a},s)=>r.jsxs(e.RadioGroup.Item,{ref:s,...a,value:d,children:[r.jsx(p,{}),i,r.jsx(e.RadioGroup.ItemHiddenInput,{})]})),y=c(t.styled(e.RadioGroup.Root),"root"),x=o(t.styled(G),"item");exports.RadioCardGroup=y;exports.RadioCardGroupItem=x;exports.RadioCardGroupItemContent=R;exports.RadioCardGroupItemDescription=l;exports.RadioCardGroupItemImage=I;exports.RadioCardGroupItemTitle=C;
|
|
2
|
+
//# sourceMappingURL=RadioCardGroup.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioCardGroup.cjs","sources":["../../../src/components/radio-card-group/RadioCardGroup.tsx"],"sourcesContent":["import { ark, RadioGroup as ArkRadioGroup } from '@ark-ui/react'\nimport { radioCardGroup } from '@stokelp/styled-system/recipes'\n\nimport { createStyleContext } from '~/utils/slots'\nimport type { ComponentProps, ComponentPropsWithoutRef, ElementRef } from 'react'\nimport { forwardRef } from 'react'\nimport { styled } from '@stokelp/styled-system/jsx'\n\nconst { withProvider, withContext } = createStyleContext(radioCardGroup, {\n dataAttr: true,\n})\n\nconst RadioCardGroupItemControl = withContext(styled(ArkRadioGroup.ItemControl), 'itemControl')\n\nexport const RadioCardGroupItemTitle = withContext(styled(ArkRadioGroup.ItemText), 'itemTitle')\nexport const RadioCardGroupItemContent = withContext(styled('div'), 'itemContent')\nexport const RadioCardGroupItemDescription = withContext(styled('p'), 'itemDescription')\nexport const RadioCardGroupItemImage = withContext(styled(ark.img), 'itemImage')\n\ntype ArkItemProps = ComponentPropsWithoutRef<typeof ArkRadioGroup.Item>\ntype ItemProps = Omit<ArkItemProps, 'value'> & { value: string | number | boolean }\nconst Item = forwardRef<ElementRef<typeof ArkRadioGroup.Item>, ItemProps>(({ children, value, ...props }, ref) => (\n <ArkRadioGroup.Item ref={ref} {...props} value={value as string}>\n <RadioCardGroupItemControl />\n {children}\n <ArkRadioGroup.ItemHiddenInput />\n </ArkRadioGroup.Item>\n))\n\nexport const RadioCardGroup = withProvider(styled(ArkRadioGroup.Root), 'root')\nexport const RadioCardGroupItem = withContext(styled(Item), 'item')\n\nexport interface RadioCardGroupProps extends ComponentProps<typeof RadioCardGroup> {}\nexport interface RadioCardGroupItemProps extends ComponentProps<typeof RadioCardGroupItem> {}\nexport interface RadioCardGroupItemTitleProps extends ComponentProps<typeof RadioCardGroupItemTitle> {}\nexport interface RadioCardGroupItemContentProps extends ComponentProps<typeof RadioCardGroupItemContent> {}\nexport interface RadioCardGroupItemDescriptionProps extends ComponentProps<typeof RadioCardGroupItemDescription> {}\nexport interface RadioCardGroupItemImageProps extends ComponentProps<typeof RadioCardGroupItemImage> {}\n"],"names":["withProvider","withContext","createStyleContext","radioCardGroup","RadioCardGroupItemControl","styled","ArkRadioGroup","RadioCardGroupItemTitle","RadioCardGroupItemContent","RadioCardGroupItemDescription","RadioCardGroupItemImage","ark","Item","forwardRef","children","value","props","ref","jsx","RadioCardGroup","RadioCardGroupItem"],"mappings":"uSAQM,CAAE,aAAAA,EAAc,YAAAC,GAAgBC,EAAAA,mBAAmBC,EAAAA,eAAgB,CACvE,SAAU,EACZ,CAAC,EAEKC,EAA4BH,EAAYI,EAAAA,OAAOC,EAAAA,WAAc,WAAW,EAAG,aAAa,EAEjFC,EAA0BN,EAAYI,EAAAA,OAAOC,EAAAA,WAAc,QAAQ,EAAG,WAAW,EACjFE,EAA4BP,EAAYI,SAAO,KAAK,EAAG,aAAa,EACpEI,EAAgCR,EAAYI,SAAO,GAAG,EAAG,iBAAiB,EAC1EK,EAA0BT,EAAYI,EAAAA,OAAOM,EAAAA,IAAI,GAAG,EAAG,WAAW,EAIzEC,EAAOC,EAAAA,WAA6D,CAAC,CAAE,SAAAC,EAAU,MAAAC,EAAO,GAAGC,GAASC,WACvGX,EAAAA,WAAc,KAAd,CAAmB,IAAAW,EAAW,GAAGD,EAAO,MAAAD,EACvC,SAAA,CAAAG,EAAAA,IAACd,EAAA,EAA0B,EAC1BU,EACDI,MAACZ,EAAAA,WAAc,gBAAd,CAAA,CAA8B,CAAA,CAAA,CACjC,CACD,EAEYa,EAAiBnB,EAAaK,EAAAA,OAAOC,EAAAA,WAAc,IAAI,EAAG,MAAM,EAChEc,EAAqBnB,EAAYI,SAAOO,CAAI,EAAG,MAAM"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as n, jsx as e } from "react/jsx-runtime";
|
|
3
|
+
import { RadioGroup as r, ark as p } from "@ark-ui/react";
|
|
4
|
+
import { radioCardGroup as s } from "@stokelp/styled-system/recipes";
|
|
5
|
+
import { createStyleContext as C } from "../../utils/slots.js";
|
|
6
|
+
import { forwardRef as c } from "react";
|
|
7
|
+
import { styled as t } from "@stokelp/styled-system/jsx";
|
|
8
|
+
const { withProvider: I, withContext: o } = C(s, {
|
|
9
|
+
dataAttr: !0
|
|
10
|
+
}), u = o(t(r.ItemControl), "itemControl"), w = o(t(r.ItemText), "itemTitle"), T = o(t("div"), "itemContent"), j = o(t("p"), "itemDescription"), v = o(t(p.img), "itemImage"), R = c(({ children: i, value: m, ...d }, a) => /* @__PURE__ */ n(r.Item, { ref: a, ...d, value: m, children: [
|
|
11
|
+
/* @__PURE__ */ e(u, {}),
|
|
12
|
+
i,
|
|
13
|
+
/* @__PURE__ */ e(r.ItemHiddenInput, {})
|
|
14
|
+
] })), y = I(t(r.Root), "root"), D = o(t(R), "item");
|
|
15
|
+
export {
|
|
16
|
+
y as RadioCardGroup,
|
|
17
|
+
D as RadioCardGroupItem,
|
|
18
|
+
T as RadioCardGroupItemContent,
|
|
19
|
+
j as RadioCardGroupItemDescription,
|
|
20
|
+
v as RadioCardGroupItemImage,
|
|
21
|
+
w as RadioCardGroupItemTitle
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=RadioCardGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioCardGroup.js","sources":["../../../src/components/radio-card-group/RadioCardGroup.tsx"],"sourcesContent":["import { ark, RadioGroup as ArkRadioGroup } from '@ark-ui/react'\nimport { radioCardGroup } from '@stokelp/styled-system/recipes'\n\nimport { createStyleContext } from '~/utils/slots'\nimport type { ComponentProps, ComponentPropsWithoutRef, ElementRef } from 'react'\nimport { forwardRef } from 'react'\nimport { styled } from '@stokelp/styled-system/jsx'\n\nconst { withProvider, withContext } = createStyleContext(radioCardGroup, {\n dataAttr: true,\n})\n\nconst RadioCardGroupItemControl = withContext(styled(ArkRadioGroup.ItemControl), 'itemControl')\n\nexport const RadioCardGroupItemTitle = withContext(styled(ArkRadioGroup.ItemText), 'itemTitle')\nexport const RadioCardGroupItemContent = withContext(styled('div'), 'itemContent')\nexport const RadioCardGroupItemDescription = withContext(styled('p'), 'itemDescription')\nexport const RadioCardGroupItemImage = withContext(styled(ark.img), 'itemImage')\n\ntype ArkItemProps = ComponentPropsWithoutRef<typeof ArkRadioGroup.Item>\ntype ItemProps = Omit<ArkItemProps, 'value'> & { value: string | number | boolean }\nconst Item = forwardRef<ElementRef<typeof ArkRadioGroup.Item>, ItemProps>(({ children, value, ...props }, ref) => (\n <ArkRadioGroup.Item ref={ref} {...props} value={value as string}>\n <RadioCardGroupItemControl />\n {children}\n <ArkRadioGroup.ItemHiddenInput />\n </ArkRadioGroup.Item>\n))\n\nexport const RadioCardGroup = withProvider(styled(ArkRadioGroup.Root), 'root')\nexport const RadioCardGroupItem = withContext(styled(Item), 'item')\n\nexport interface RadioCardGroupProps extends ComponentProps<typeof RadioCardGroup> {}\nexport interface RadioCardGroupItemProps extends ComponentProps<typeof RadioCardGroupItem> {}\nexport interface RadioCardGroupItemTitleProps extends ComponentProps<typeof RadioCardGroupItemTitle> {}\nexport interface RadioCardGroupItemContentProps extends ComponentProps<typeof RadioCardGroupItemContent> {}\nexport interface RadioCardGroupItemDescriptionProps extends ComponentProps<typeof RadioCardGroupItemDescription> {}\nexport interface RadioCardGroupItemImageProps extends ComponentProps<typeof RadioCardGroupItemImage> {}\n"],"names":["withProvider","withContext","createStyleContext","radioCardGroup","RadioCardGroupItemControl","styled","ArkRadioGroup","RadioCardGroupItemTitle","RadioCardGroupItemContent","RadioCardGroupItemDescription","RadioCardGroupItemImage","ark","Item","forwardRef","children","value","props","ref","jsx","RadioCardGroup","RadioCardGroupItem"],"mappings":";;;;;;;AAQA,MAAM,EAAE,cAAAA,GAAc,aAAAC,MAAgBC,EAAmBC,GAAgB;AAAA,EACvE,UAAU;AACZ,CAAC,GAEKC,IAA4BH,EAAYI,EAAOC,EAAc,WAAW,GAAG,aAAa,GAEjFC,IAA0BN,EAAYI,EAAOC,EAAc,QAAQ,GAAG,WAAW,GACjFE,IAA4BP,EAAYI,EAAO,KAAK,GAAG,aAAa,GACpEI,IAAgCR,EAAYI,EAAO,GAAG,GAAG,iBAAiB,GAC1EK,IAA0BT,EAAYI,EAAOM,EAAI,GAAG,GAAG,WAAW,GAIzEC,IAAOC,EAA6D,CAAC,EAAE,UAAAC,GAAU,OAAAC,GAAO,GAAGC,KAASC,wBACvGX,EAAc,MAAd,EAAmB,KAAAW,GAAW,GAAGD,GAAO,OAAAD,GACvC,UAAA;AAAA,EAAA,gBAAAG,EAACd,GAAA,EAA0B;AAAA,EAC1BU;AAAA,EACD,gBAAAI,EAACZ,EAAc,iBAAd,CAAA,CAA8B;AAAA,EAAA,CACjC,CACD,GAEYa,IAAiBnB,EAAaK,EAAOC,EAAc,IAAI,GAAG,MAAM,GAChEc,IAAqBnB,EAAYI,EAAOO,CAAI,GAAG,MAAM;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./RadioCardGroup.cjs");exports.Item=e.RadioCardGroupItem;exports.ItemContent=e.RadioCardGroupItemContent;exports.ItemDescription=e.RadioCardGroupItemDescription;exports.ItemImage=e.RadioCardGroupItemImage;exports.ItemTitle=e.RadioCardGroupItemTitle;exports.Root=e.RadioCardGroup;
|
|
2
|
+
//# sourceMappingURL=namespace.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { RadioCardGroupItem as a, RadioCardGroupItemContent as o, RadioCardGroupItemDescription as r, RadioCardGroupItemImage as i, RadioCardGroupItemTitle as m, RadioCardGroup as d } from "./RadioCardGroup.js";
|
|
3
|
+
export {
|
|
4
|
+
a as Item,
|
|
5
|
+
o as ItemContent,
|
|
6
|
+
r as ItemDescription,
|
|
7
|
+
i as ItemImage,
|
|
8
|
+
m as ItemTitle,
|
|
9
|
+
d as Root
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=namespace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),o=require("@ark-ui/react"),n=require("@stokelp/styled-system/recipes"),u=require("../../utils/slots.cjs"),l=require("react"),t=require("@stokelp/styled-system/jsx"),{withProvider:c,withContext:r}=u.createStyleContext(n.radioGroup),p=r(t.styled(o.RadioGroup.ItemControl),"itemControl"),R=r(t.styled(o.RadioGroup.ItemText),"itemText"),G=l.forwardRef(({children:i,value:s,...a},d)=>e.jsxs(o.RadioGroup.Item,{ref:d,...a,value:s,children:[e.jsx(p,{}),e.jsx(R,{children:i}),e.jsx(o.RadioGroup.ItemHiddenInput,{})]})),m=c(t.styled(o.RadioGroup.Root),"root",{defaultProps:{orientation:"horizontal"}}),x=r(t.styled(G),"item"),I=r(t.styled(o.RadioGroup.Label),"label");exports.RadioGroup=m;exports.RadioGroupItem=x;exports.RadioGroupLabel=I;
|
|
2
|
+
//# sourceMappingURL=RadioGroup.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioGroup.cjs","sources":["../../../src/components/radio-group/RadioGroup.tsx"],"sourcesContent":["import { RadioGroup as ArkRadioGroup } from '@ark-ui/react'\nimport { radioGroup } from '@stokelp/styled-system/recipes'\n\nimport { createStyleContext } from '~/utils/slots'\nimport type { ComponentProps, ComponentPropsWithoutRef, ElementRef } from 'react'\nimport { forwardRef } from 'react'\nimport { styled } from '@stokelp/styled-system/jsx'\n\nconst { withProvider, withContext } = createStyleContext(radioGroup)\n\nconst RadioGroupItemControl = withContext(styled(ArkRadioGroup.ItemControl), 'itemControl')\nconst RadioGroupItemText = withContext(styled(ArkRadioGroup.ItemText), 'itemText')\ntype ArkItemProps = ComponentPropsWithoutRef<typeof ArkRadioGroup.Item>\ntype ItemProps = Omit<ArkItemProps, 'value'> & { value: string | number | boolean }\nconst Item = forwardRef<ElementRef<typeof ArkRadioGroup.Item>, ItemProps>(({ children, value, ...props }, ref) => (\n <ArkRadioGroup.Item ref={ref} {...props} value={value as string}>\n <RadioGroupItemControl />\n <RadioGroupItemText>{children}</RadioGroupItemText>\n <ArkRadioGroup.ItemHiddenInput />\n </ArkRadioGroup.Item>\n))\n\nexport const RadioGroup = withProvider(styled(ArkRadioGroup.Root), 'root', {\n defaultProps: {\n orientation: 'horizontal',\n },\n})\nexport const RadioGroupItem = withContext(styled(Item), 'item')\nexport const RadioGroupLabel = withContext(styled(ArkRadioGroup.Label), 'label')\n\nexport interface RadioGroupProps extends ComponentProps<typeof RadioGroup> {}\nexport interface RadioGroupItemProps extends ComponentProps<typeof RadioGroupItem> {}\nexport interface RadioGroupLabelProps extends ComponentProps<typeof RadioGroupLabel> {}\n"],"names":["withProvider","withContext","createStyleContext","radioGroup","RadioGroupItemControl","styled","ArkRadioGroup","RadioGroupItemText","Item","forwardRef","children","value","props","ref","jsx","RadioGroup","RadioGroupItem","RadioGroupLabel"],"mappings":"uSAQM,CAAE,aAAAA,EAAc,YAAAC,GAAgBC,EAAAA,mBAAmBC,EAAAA,UAAU,EAE7DC,EAAwBH,EAAYI,EAAAA,OAAOC,EAAAA,WAAc,WAAW,EAAG,aAAa,EACpFC,EAAqBN,EAAYI,EAAAA,OAAOC,EAAAA,WAAc,QAAQ,EAAG,UAAU,EAG3EE,EAAOC,EAAAA,WAA6D,CAAC,CAAE,SAAAC,EAAU,MAAAC,EAAO,GAAGC,GAASC,WACvGP,EAAAA,WAAc,KAAd,CAAmB,IAAAO,EAAW,GAAGD,EAAO,MAAAD,EACvC,SAAA,CAAAG,EAAAA,IAACV,EAAA,EAAsB,EACvBU,MAACP,GAAoB,SAAAG,EAAS,EAC9BI,MAACR,EAAAA,WAAc,gBAAd,CAAA,CAA8B,CAAA,CAAA,CACjC,CACD,EAEYS,EAAaf,EAAaK,EAAAA,OAAOC,EAAAA,WAAc,IAAI,EAAG,OAAQ,CACzE,aAAc,CACZ,YAAa,YAAA,CAEjB,CAAC,EACYU,EAAiBf,EAAYI,SAAOG,CAAI,EAAG,MAAM,EACjDS,EAAkBhB,EAAYI,EAAAA,OAAOC,EAAAA,WAAc,KAAK,EAAG,OAAO"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as p, jsx as e } from "react/jsx-runtime";
|
|
3
|
+
import { RadioGroup as o } from "@ark-ui/react";
|
|
4
|
+
import { radioGroup as d } from "@stokelp/styled-system/recipes";
|
|
5
|
+
import { createStyleContext as s } from "../../utils/slots.js";
|
|
6
|
+
import { forwardRef as l } from "react";
|
|
7
|
+
import { styled as t } from "@stokelp/styled-system/jsx";
|
|
8
|
+
const { withProvider: u, withContext: r } = s(d), c = r(t(o.ItemControl), "itemControl"), f = r(t(o.ItemText), "itemText"), I = l(({ children: i, value: m, ...n }, a) => /* @__PURE__ */ p(o.Item, { ref: a, ...n, value: m, children: [
|
|
9
|
+
/* @__PURE__ */ e(c, {}),
|
|
10
|
+
/* @__PURE__ */ e(f, { children: i }),
|
|
11
|
+
/* @__PURE__ */ e(o.ItemHiddenInput, {})
|
|
12
|
+
] })), w = u(t(o.Root), "root", {
|
|
13
|
+
defaultProps: {
|
|
14
|
+
orientation: "horizontal"
|
|
15
|
+
}
|
|
16
|
+
}), T = r(t(I), "item"), j = r(t(o.Label), "label");
|
|
17
|
+
export {
|
|
18
|
+
w as RadioGroup,
|
|
19
|
+
T as RadioGroupItem,
|
|
20
|
+
j as RadioGroupLabel
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=RadioGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioGroup.js","sources":["../../../src/components/radio-group/RadioGroup.tsx"],"sourcesContent":["import { RadioGroup as ArkRadioGroup } from '@ark-ui/react'\nimport { radioGroup } from '@stokelp/styled-system/recipes'\n\nimport { createStyleContext } from '~/utils/slots'\nimport type { ComponentProps, ComponentPropsWithoutRef, ElementRef } from 'react'\nimport { forwardRef } from 'react'\nimport { styled } from '@stokelp/styled-system/jsx'\n\nconst { withProvider, withContext } = createStyleContext(radioGroup)\n\nconst RadioGroupItemControl = withContext(styled(ArkRadioGroup.ItemControl), 'itemControl')\nconst RadioGroupItemText = withContext(styled(ArkRadioGroup.ItemText), 'itemText')\ntype ArkItemProps = ComponentPropsWithoutRef<typeof ArkRadioGroup.Item>\ntype ItemProps = Omit<ArkItemProps, 'value'> & { value: string | number | boolean }\nconst Item = forwardRef<ElementRef<typeof ArkRadioGroup.Item>, ItemProps>(({ children, value, ...props }, ref) => (\n <ArkRadioGroup.Item ref={ref} {...props} value={value as string}>\n <RadioGroupItemControl />\n <RadioGroupItemText>{children}</RadioGroupItemText>\n <ArkRadioGroup.ItemHiddenInput />\n </ArkRadioGroup.Item>\n))\n\nexport const RadioGroup = withProvider(styled(ArkRadioGroup.Root), 'root', {\n defaultProps: {\n orientation: 'horizontal',\n },\n})\nexport const RadioGroupItem = withContext(styled(Item), 'item')\nexport const RadioGroupLabel = withContext(styled(ArkRadioGroup.Label), 'label')\n\nexport interface RadioGroupProps extends ComponentProps<typeof RadioGroup> {}\nexport interface RadioGroupItemProps extends ComponentProps<typeof RadioGroupItem> {}\nexport interface RadioGroupLabelProps extends ComponentProps<typeof RadioGroupLabel> {}\n"],"names":["withProvider","withContext","createStyleContext","radioGroup","RadioGroupItemControl","styled","ArkRadioGroup","RadioGroupItemText","Item","forwardRef","children","value","props","ref","jsx","RadioGroup","RadioGroupItem","RadioGroupLabel"],"mappings":";;;;;;;AAQA,MAAM,EAAE,cAAAA,GAAc,aAAAC,MAAgBC,EAAmBC,CAAU,GAE7DC,IAAwBH,EAAYI,EAAOC,EAAc,WAAW,GAAG,aAAa,GACpFC,IAAqBN,EAAYI,EAAOC,EAAc,QAAQ,GAAG,UAAU,GAG3EE,IAAOC,EAA6D,CAAC,EAAE,UAAAC,GAAU,OAAAC,GAAO,GAAGC,KAASC,wBACvGP,EAAc,MAAd,EAAmB,KAAAO,GAAW,GAAGD,GAAO,OAAAD,GACvC,UAAA;AAAA,EAAA,gBAAAG,EAACV,GAAA,EAAsB;AAAA,EACvB,gBAAAU,EAACP,KAAoB,UAAAG,GAAS;AAAA,EAC9B,gBAAAI,EAACR,EAAc,iBAAd,CAAA,CAA8B;AAAA,EAAA,CACjC,CACD,GAEYS,IAAaf,EAAaK,EAAOC,EAAc,IAAI,GAAG,QAAQ;AAAA,EACzE,cAAc;AAAA,IACZ,aAAa;AAAA,EAAA;AAEjB,CAAC,GACYU,IAAiBf,EAAYI,EAAOG,CAAI,GAAG,MAAM,GACjDS,IAAkBhB,EAAYI,EAAOC,EAAc,KAAK,GAAG,OAAO;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("@ark-ui/react"),T=require("react"),c=require("@stokelp/styled-system/jsx"),I=require("@stokelp/styled-system/recipes"),b=require("../../utils/slots.cjs"),C=require("../../shared/ConditionalWrapper.cjs"),M=require("../text/Text.cjs"),w=require("../tooltip/Tooltip.cjs"),q=require("react-window"),v=require("@stokelp/styled-system/css"),{withProvider:R,withContext:u}=b.createStyleContext(I.select),N=R(c.styled(n.Select.Root),"root",{defaultProps:{loopFocus:!0}}),P=u(c.styled(n.Select.ClearTrigger),"clearTrigger"),W=u(c.styled(n.Select.Content),"content"),Z=u(c.styled(n.Select.Control),"control"),B=u(c.styled(n.Select.Indicator),"indicator"),f=u(c.styled(n.Select.Item),"item"),F=u(c.styled(n.Select.ItemText),"itemText"),k=u(c.styled(n.Select.Positioner),"positioner"),z=u(c.styled(n.Select.Trigger),"trigger"),x=u(c.styled(n.Select.ValueText),"valueText"),O=()=>e.jsxs("svg",{width:"16",height:"17",viewBox:"0 0 16 17",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsx("rect",{x:"0.5",y:"1",width:"15",height:"15",rx:"3.5",fill:"white"}),e.jsx("rect",{x:"0.5",y:"1",width:"15",height:"15",rx:"3.5",className:v.css({stroke:"grey.100"})})]}),A=()=>e.jsxs("svg",{width:"16",height:"17",viewBox:"0 0 16 17",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsx("rect",{y:"0.5",width:"16",height:"16",rx:"4",className:v.css({fill:"primary.500"})}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.958 4.81298C12.1303 4.92787 12.1769 5.16069 12.062 5.33301L7.56202 12.083C7.4997 12.1765 7.39875 12.2371 7.28695 12.2482C7.17515 12.2592 7.06428 12.2196 6.98483 12.1402L3.98483 9.14017C3.83839 8.99372 3.83839 8.75628 3.98483 8.60984C4.13128 8.46339 4.36872 8.46339 4.51517 8.60984L7.19172 11.2864L11.438 4.91699C11.5529 4.74467 11.7857 4.6981 11.958 4.81298Z",fill:"white"})]});function V({placeholder:t,allSelectedLabel:i}){const r=n.useSelectContext(),s=r.collection.items,a=r.selectedItems;return r.multiple&&a.filter(d=>!d.disabled).length>=s.filter(d=>!d.disabled).length&&i?e.jsx(x,{className:"custom",truncate:!0,children:i}):e.jsx(x,{truncate:!0,placeholder:t})}function D({renderTrigger:t,placeholder:i,allSelectedLabel:r}){const s=n.useSelectContext(),a=s.value&&s.value.length>0?s.collection.findMany(s.value):[];if(a.length===0)return e.jsx(x,{className:"custom",truncate:!0,placeholder:i});const d=s.selectedItems;return s.multiple&&d.filter(o=>!o.disabled).length>=s.collection.items.filter(o=>!o.disabled).length&&r?e.jsx(x,{className:"custom",truncate:!0,children:r}):e.jsx(x,{className:"custom",placeholder:i,children:a.map(o=>e.jsx("span",{children:t(o)},o.value))})}function m({item:t,isMultiple:i,renderItem:r}){const s=n.useSelectItemContext();return e.jsxs(e.Fragment,{children:[i?s.selected?e.jsx(A,{}):e.jsx(O,{}):null,r?r(t):e.jsx(F,{truncate:!0,children:t.label})]})}function E({items:t,placeholder:i,emptyLabel:r,usePortal:s=!0,positioning:a,renderItem:d,renderTrigger:o,virtualized:S,rowHeight:j=34,...h}){const y=n.createListCollection({items:t}),p=T.useRef(null);return e.jsxs(N,{lazyMount:!0,unmountOnExit:!0,collection:y,positioning:{sameWidth:!0,gutter:0,...a},"data-recipe":"select",...h,ref:l=>{l&&(p.current=l.closest('[role="dialog"]'))},children:[e.jsxs(Z,{children:[e.jsxs(z,{children:[o?e.jsx(D,{renderTrigger:o,placeholder:i,allSelectedLabel:h.allSelectedLabel}):e.jsx(V,{placeholder:i,allSelectedLabel:h.allSelectedLabel}),e.jsx(B,{asChild:!0,children:e.jsx("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.5303 16.2803C12.2374 16.5732 11.7626 16.5732 11.4697 16.2803L3.96967 8.78033C3.67678 8.48744 3.67678 8.01256 3.96967 7.71967C4.26256 7.42678 4.73744 7.42678 5.03033 7.71967L12 14.6893L18.9697 7.71967C19.2626 7.42678 19.7374 7.42678 20.0303 7.71967C20.3232 8.01256 20.3232 8.48744 20.0303 8.78033L12.5303 16.2803Z",fill:"currentColor"})})})]}),e.jsx(P,{disabled:h.readOnly,asChild:!0,children:e.jsx("button",{children:e.jsx("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10 3.125C6.20304 3.125 3.125 6.20304 3.125 10C3.125 13.797 6.20304 16.875 10 16.875C13.797 16.875 16.875 13.797 16.875 10C16.875 6.20304 13.797 3.125 10 3.125ZM1.875 10C1.875 5.51269 5.51269 1.875 10 1.875C14.4873 1.875 18.125 5.51269 18.125 10C18.125 14.4873 14.4873 18.125 10 18.125C5.51269 18.125 1.875 14.4873 1.875 10ZM7.68306 7.68306C7.92714 7.43898 8.32286 7.43898 8.56694 7.68306L10 9.11612L11.4331 7.68306C11.6771 7.43898 12.0729 7.43898 12.3169 7.68306C12.561 7.92714 12.561 8.32286 12.3169 8.56694L10.8839 10L12.3169 11.4331C12.561 11.6771 12.561 12.0729 12.3169 12.3169C12.0729 12.561 11.6771 12.561 11.4331 12.3169L10 10.8839L8.56694 12.3169C8.32286 12.561 7.92714 12.561 7.68306 12.3169C7.43898 12.0729 7.43898 11.6771 7.68306 11.4331L9.11612 10L7.68306 8.56694C7.43898 8.32286 7.43898 7.92714 7.68306 7.68306Z",fill:"currentColor"})})})})]}),e.jsx(C.ConditionalWrapper,{when:s,wrapper:l=>e.jsx(n.Portal,{container:p,children:l}),children:e.jsx(k,{children:e.jsx(W,{children:t.length===0?e.jsx(M.Text,{px:"space-8",textAlign:"center",children:r??"Aucun résultat"}):S?e.jsx(e.Fragment,{children:e.jsx(q.FixedSizeList,{height:Math.min(j*t.length,180),itemCount:t.length,itemSize:j,width:"100%",children:({index:l,style:g})=>e.jsx(C.ConditionalWrapper,{when:!!t[l].tooltip,wrapper:L=>e.jsx(w.Tooltip,{label:t[l].tooltip,children:L}),children:e.jsx(f,{item:t[l],style:g,children:e.jsx(m,{renderItem:d,item:t[l]})},t[l].value)},t[l].value)})}):t.map(l=>e.jsx(C.ConditionalWrapper,{when:!!l.tooltip,wrapper:g=>e.jsx(w.Tooltip,{label:l.tooltip,children:g}),children:e.jsx(f,{item:l,children:e.jsx(m,{renderItem:d,item:l,isMultiple:h.multiple})},l.value)},l.value))})})}),e.jsx(n.Select.HiddenSelect,{})]})}exports.Select=E;
|
|
2
|
+
//# sourceMappingURL=Select.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.cjs","sources":["../../../src/components/select/Select.tsx"],"sourcesContent":["import {\n createListCollection,\n Portal,\n Select as ArkSelect,\n type SelectRootProps,\n useSelectItemContext,\n useSelectContext,\n} from '@ark-ui/react'\nimport { FC, ReactNode, useRef } from 'react'\nimport { styled } from '@stokelp/styled-system/jsx'\n\nimport { select } from '@stokelp/styled-system/recipes'\nimport { createStyleContext } from '~/utils/slots'\n\nimport { ConditionalWrapper } from '~/shared/ConditionalWrapper'\nimport { Text } from '~/components/text/Text'\nimport { Tooltip } from '~/components/tooltip/Tooltip'\nimport { HTMLStyledProps, RecipeVariantProps } from '@stokelp/styled-system/types'\nimport { FixedSizeList } from 'react-window'\nimport { css } from '@stokelp/styled-system/css'\n\nconst { withProvider, withContext } = createStyleContext(select)\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst Root = withProvider(styled(ArkSelect.Root<any>), 'root', {\n defaultProps: {\n loopFocus: true,\n },\n})\n\nconst ClearTrigger = withContext(styled(ArkSelect.ClearTrigger), 'clearTrigger')\nconst Content = withContext(styled(ArkSelect.Content), 'content')\nconst Control = withContext(styled(ArkSelect.Control), 'control')\nconst Indicator = withContext(styled(ArkSelect.Indicator), 'indicator')\nconst Item = withContext(styled(ArkSelect.Item), 'item')\nconst ItemText = withContext(styled(ArkSelect.ItemText), 'itemText')\nconst Positioner = withContext(styled(ArkSelect.Positioner), 'positioner')\nconst Trigger = withContext(styled(ArkSelect.Trigger), 'trigger')\nconst ValueText = withContext(styled(ArkSelect.ValueText), 'valueText')\n\nexport interface SelectItem {\n value: string | number\n label: string\n tooltip?: ReactNode\n disabled?: boolean\n}\n\nexport type SelectProps<Item extends SelectItem> = Omit<SelectRootProps<Item>, 'collection'> & {\n items: Item[] | readonly Item[]\n renderItem?: (item: Item) => ReactNode\n renderTrigger?: (item: Item) => ReactNode\n emptyLabel?: string\n placeholder?: string\n allSelectedLabel?: string\n usePortal?: boolean\n virtualized?: boolean\n rowHeight?: number\n} & HTMLStyledProps<'div'> &\n RecipeVariantProps<typeof select>\n\nconst MultipleUncheckedIndicator: FC = () => (\n <svg width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"0.5\" y=\"1\" width=\"15\" height=\"15\" rx=\"3.5\" fill=\"white\" />\n <rect x=\"0.5\" y=\"1\" width=\"15\" height=\"15\" rx=\"3.5\" className={css({ stroke: 'grey.100' })} />\n </svg>\n)\n\nconst MultipleCheckedIndicator: FC = () => (\n <svg width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect y=\"0.5\" width=\"16\" height=\"16\" rx=\"4\" className={css({ fill: 'primary.500' })} />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.958 4.81298C12.1303 4.92787 12.1769 5.16069 12.062 5.33301L7.56202 12.083C7.4997 12.1765 7.39875 12.2371 7.28695 12.2482C7.17515 12.2592 7.06428 12.2196 6.98483 12.1402L3.98483 9.14017C3.83839 8.99372 3.83839 8.75628 3.98483 8.60984C4.13128 8.46339 4.36872 8.46339 4.51517 8.60984L7.19172 11.2864L11.438 4.91699C11.5529 4.74467 11.7857 4.6981 11.958 4.81298Z\"\n fill=\"white\"\n />\n </svg>\n)\n\ninterface InnerItemProps<Item extends SelectItem> {\n item: Item\n isMultiple?: boolean\n renderItem?: (item: Item) => ReactNode\n}\n\ninterface InnerTriggerProps<Item extends SelectItem> {\n renderTrigger: (item: Item) => ReactNode\n placeholder?: string\n allSelectedLabel?: string\n}\n\ninterface DefaultInnerTriggerProps {\n placeholder?: string\n allSelectedLabel?: string\n}\n\nfunction DefaultInnerTrigger({ placeholder, allSelectedLabel }: DefaultInnerTriggerProps) {\n const context = useSelectContext()\n const items = context.collection.items\n const selectedItems = context.selectedItems\n\n if (\n context.multiple &&\n selectedItems.filter(item => !item.disabled).length >= items.filter(item => !item.disabled).length &&\n allSelectedLabel\n ) {\n return (\n <ValueText className=\"custom\" truncate>\n {allSelectedLabel}\n </ValueText>\n )\n }\n\n return <ValueText truncate placeholder={placeholder} />\n}\n\nfunction CustomInnerTrigger<Item extends SelectItem>({\n renderTrigger,\n placeholder,\n allSelectedLabel,\n}: InnerTriggerProps<Item>) {\n const context = useSelectContext()\n const items = context.value && context.value.length > 0 ? context.collection.findMany(context.value) : []\n\n if (items.length === 0) {\n return <ValueText className=\"custom\" truncate placeholder={placeholder} />\n }\n\n const selectedItems = context.selectedItems\n\n if (\n context.multiple &&\n selectedItems.filter(item => !item.disabled).length >=\n context.collection.items.filter(item => !item.disabled).length &&\n allSelectedLabel\n ) {\n return (\n <ValueText className=\"custom\" truncate>\n {allSelectedLabel}\n </ValueText>\n )\n }\n\n return (\n <ValueText className=\"custom\" placeholder={placeholder}>\n {items.map(item => (\n <span key={item.value}>{renderTrigger(item)}</span>\n ))}\n </ValueText>\n )\n}\n\nfunction CustomInnerItem<Item extends SelectItem>({ item, isMultiple, renderItem }: InnerItemProps<Item>) {\n const context = useSelectItemContext()\n\n return (\n <>\n {isMultiple ? context.selected ? <MultipleCheckedIndicator /> : <MultipleUncheckedIndicator /> : null}\n {renderItem ? renderItem(item) : <ItemText truncate>{item.label}</ItemText>}\n </>\n )\n}\n\nexport function Select<Item extends SelectItem>({\n items,\n placeholder,\n emptyLabel,\n usePortal = true,\n positioning,\n renderItem,\n renderTrigger,\n virtualized,\n rowHeight = 34,\n ...props\n}: SelectProps<Item>) {\n const collection = createListCollection({\n items,\n })\n const $dialogContent = useRef<HTMLDivElement | null>(null)\n\n return (\n <Root\n lazyMount\n unmountOnExit\n collection={collection}\n positioning={{ sameWidth: true, gutter: 0, ...positioning }}\n data-recipe=\"select\"\n {...props}\n ref={node => {\n if (node) {\n $dialogContent.current = node.closest('[role=\"dialog\"]') as HTMLDivElement | null\n }\n }}\n >\n <Control>\n <Trigger>\n {renderTrigger ? (\n <CustomInnerTrigger\n renderTrigger={renderTrigger}\n placeholder={placeholder}\n allSelectedLabel={props.allSelectedLabel}\n />\n ) : (\n <DefaultInnerTrigger placeholder={placeholder} allSelectedLabel={props.allSelectedLabel} />\n )}\n <Indicator asChild>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.5303 16.2803C12.2374 16.5732 11.7626 16.5732 11.4697 16.2803L3.96967 8.78033C3.67678 8.48744 3.67678 8.01256 3.96967 7.71967C4.26256 7.42678 4.73744 7.42678 5.03033 7.71967L12 14.6893L18.9697 7.71967C19.2626 7.42678 19.7374 7.42678 20.0303 7.71967C20.3232 8.01256 20.3232 8.48744 20.0303 8.78033L12.5303 16.2803Z\"\n fill=\"currentColor\"\n />\n </svg>\n </Indicator>\n </Trigger>\n <ClearTrigger disabled={props.readOnly} asChild>\n <button>\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M10 3.125C6.20304 3.125 3.125 6.20304 3.125 10C3.125 13.797 6.20304 16.875 10 16.875C13.797 16.875 16.875 13.797 16.875 10C16.875 6.20304 13.797 3.125 10 3.125ZM1.875 10C1.875 5.51269 5.51269 1.875 10 1.875C14.4873 1.875 18.125 5.51269 18.125 10C18.125 14.4873 14.4873 18.125 10 18.125C5.51269 18.125 1.875 14.4873 1.875 10ZM7.68306 7.68306C7.92714 7.43898 8.32286 7.43898 8.56694 7.68306L10 9.11612L11.4331 7.68306C11.6771 7.43898 12.0729 7.43898 12.3169 7.68306C12.561 7.92714 12.561 8.32286 12.3169 8.56694L10.8839 10L12.3169 11.4331C12.561 11.6771 12.561 12.0729 12.3169 12.3169C12.0729 12.561 11.6771 12.561 11.4331 12.3169L10 10.8839L8.56694 12.3169C8.32286 12.561 7.92714 12.561 7.68306 12.3169C7.43898 12.0729 7.43898 11.6771 7.68306 11.4331L9.11612 10L7.68306 8.56694C7.43898 8.32286 7.43898 7.92714 7.68306 7.68306Z\"\n fill=\"currentColor\"\n />\n </svg>\n </button>\n </ClearTrigger>\n </Control>\n <ConditionalWrapper when={usePortal} wrapper={children => <Portal container={$dialogContent}>{children}</Portal>}>\n <Positioner>\n <Content>\n {items.length === 0 ? (\n <Text px=\"space-8\" textAlign=\"center\">\n {emptyLabel ?? 'Aucun résultat'}\n </Text>\n ) : virtualized ? (\n <>\n <FixedSizeList\n height={Math.min(rowHeight * items.length, 180)}\n itemCount={items.length}\n itemSize={rowHeight}\n width=\"100%\"\n >\n {({ index, style }) => (\n <ConditionalWrapper\n key={items[index].value}\n when={!!items[index].tooltip}\n wrapper={children => <Tooltip label={items[index].tooltip}>{children}</Tooltip>}\n >\n <Item key={items[index].value} item={items[index]} style={style}>\n <CustomInnerItem renderItem={renderItem} item={items[index]} />\n </Item>\n </ConditionalWrapper>\n )}\n </FixedSizeList>\n </>\n ) : (\n items.map(item => (\n <ConditionalWrapper\n key={item.value}\n when={!!item.tooltip}\n wrapper={children => <Tooltip label={item.tooltip}>{children}</Tooltip>}\n >\n <Item key={item.value} item={item}>\n <CustomInnerItem renderItem={renderItem} item={item} isMultiple={props.multiple} />\n </Item>\n </ConditionalWrapper>\n ))\n )}\n </Content>\n </Positioner>\n </ConditionalWrapper>\n <ArkSelect.HiddenSelect />\n </Root>\n )\n}\n"],"names":["withProvider","withContext","createStyleContext","select","Root","styled","ArkSelect","ClearTrigger","Content","Control","Indicator","Item","ItemText","Positioner","Trigger","ValueText","MultipleUncheckedIndicator","jsxs","jsx","css","MultipleCheckedIndicator","DefaultInnerTrigger","placeholder","allSelectedLabel","context","useSelectContext","items","selectedItems","item","CustomInnerTrigger","renderTrigger","CustomInnerItem","isMultiple","renderItem","useSelectItemContext","Fragment","Select","emptyLabel","usePortal","positioning","virtualized","rowHeight","props","collection","createListCollection","$dialogContent","useRef","node","ConditionalWrapper","children","Portal","Text","FixedSizeList","index","style","Tooltip"],"mappings":"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"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as h, jsx as e, Fragment as I } from "react/jsx-runtime";
|
|
3
|
+
import { createListCollection as R, Portal as N, Select as o, useSelectContext as T, useSelectItemContext as P } from "@ark-ui/react";
|
|
4
|
+
import { useRef as Z } from "react";
|
|
5
|
+
import { styled as c } from "@stokelp/styled-system/jsx";
|
|
6
|
+
import { select as B } from "@stokelp/styled-system/recipes";
|
|
7
|
+
import { createStyleContext as k } from "../../utils/slots.js";
|
|
8
|
+
import { ConditionalWrapper as p } from "../../shared/ConditionalWrapper.js";
|
|
9
|
+
import { Text as z } from "../text/Text.js";
|
|
10
|
+
import { Tooltip as x } from "../tooltip/Tooltip.js";
|
|
11
|
+
import { FixedSizeList as F } from "react-window";
|
|
12
|
+
import { css as b } from "@stokelp/styled-system/css";
|
|
13
|
+
const { withProvider: j, withContext: a } = k(B), A = j(c(o.Root), "root", {
|
|
14
|
+
defaultProps: {
|
|
15
|
+
loopFocus: !0
|
|
16
|
+
}
|
|
17
|
+
}), O = a(c(o.ClearTrigger), "clearTrigger"), V = a(c(o.Content), "content"), W = a(c(o.Control), "control"), $ = a(c(o.Indicator), "indicator"), v = a(c(o.Item), "item"), D = a(c(o.ItemText), "itemText"), E = a(c(o.Positioner), "positioner"), U = a(c(o.Trigger), "trigger"), m = a(c(o.ValueText), "valueText"), q = () => /* @__PURE__ */ h("svg", { width: "16", height: "17", viewBox: "0 0 16 17", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
18
|
+
/* @__PURE__ */ e("rect", { x: "0.5", y: "1", width: "15", height: "15", rx: "3.5", fill: "white" }),
|
|
19
|
+
/* @__PURE__ */ e("rect", { x: "0.5", y: "1", width: "15", height: "15", rx: "3.5", className: b({ stroke: "grey.100" }) })
|
|
20
|
+
] }), G = () => /* @__PURE__ */ h("svg", { width: "16", height: "17", viewBox: "0 0 16 17", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
21
|
+
/* @__PURE__ */ e("rect", { y: "0.5", width: "16", height: "16", rx: "4", className: b({ fill: "primary.500" }) }),
|
|
22
|
+
/* @__PURE__ */ e(
|
|
23
|
+
"path",
|
|
24
|
+
{
|
|
25
|
+
fillRule: "evenodd",
|
|
26
|
+
clipRule: "evenodd",
|
|
27
|
+
d: "M11.958 4.81298C12.1303 4.92787 12.1769 5.16069 12.062 5.33301L7.56202 12.083C7.4997 12.1765 7.39875 12.2371 7.28695 12.2482C7.17515 12.2592 7.06428 12.2196 6.98483 12.1402L3.98483 9.14017C3.83839 8.99372 3.83839 8.75628 3.98483 8.60984C4.13128 8.46339 4.36872 8.46339 4.51517 8.60984L7.19172 11.2864L11.438 4.91699C11.5529 4.74467 11.7857 4.6981 11.958 4.81298Z",
|
|
28
|
+
fill: "white"
|
|
29
|
+
}
|
|
30
|
+
)
|
|
31
|
+
] });
|
|
32
|
+
function H({ placeholder: t, allSelectedLabel: i }) {
|
|
33
|
+
const r = T(), n = r.collection.items, d = r.selectedItems;
|
|
34
|
+
return r.multiple && d.filter((u) => !u.disabled).length >= n.filter((u) => !u.disabled).length && i ? /* @__PURE__ */ e(m, { className: "custom", truncate: !0, children: i }) : /* @__PURE__ */ e(m, { truncate: !0, placeholder: t });
|
|
35
|
+
}
|
|
36
|
+
function J({
|
|
37
|
+
renderTrigger: t,
|
|
38
|
+
placeholder: i,
|
|
39
|
+
allSelectedLabel: r
|
|
40
|
+
}) {
|
|
41
|
+
const n = T(), d = n.value && n.value.length > 0 ? n.collection.findMany(n.value) : [];
|
|
42
|
+
if (d.length === 0)
|
|
43
|
+
return /* @__PURE__ */ e(m, { className: "custom", truncate: !0, placeholder: i });
|
|
44
|
+
const u = n.selectedItems;
|
|
45
|
+
return n.multiple && u.filter((s) => !s.disabled).length >= n.collection.items.filter((s) => !s.disabled).length && r ? /* @__PURE__ */ e(m, { className: "custom", truncate: !0, children: r }) : /* @__PURE__ */ e(m, { className: "custom", placeholder: i, children: d.map((s) => /* @__PURE__ */ e("span", { children: t(s) }, s.value)) });
|
|
46
|
+
}
|
|
47
|
+
function L({ item: t, isMultiple: i, renderItem: r }) {
|
|
48
|
+
const n = P();
|
|
49
|
+
return /* @__PURE__ */ h(I, { children: [
|
|
50
|
+
i ? n.selected ? /* @__PURE__ */ e(G, {}) : /* @__PURE__ */ e(q, {}) : null,
|
|
51
|
+
r ? r(t) : /* @__PURE__ */ e(D, { truncate: !0, children: t.label })
|
|
52
|
+
] });
|
|
53
|
+
}
|
|
54
|
+
function ie({
|
|
55
|
+
items: t,
|
|
56
|
+
placeholder: i,
|
|
57
|
+
emptyLabel: r,
|
|
58
|
+
usePortal: n = !0,
|
|
59
|
+
positioning: d,
|
|
60
|
+
renderItem: u,
|
|
61
|
+
renderTrigger: s,
|
|
62
|
+
virtualized: M,
|
|
63
|
+
rowHeight: f = 34,
|
|
64
|
+
...g
|
|
65
|
+
}) {
|
|
66
|
+
const S = R({
|
|
67
|
+
items: t
|
|
68
|
+
}), w = Z(null);
|
|
69
|
+
return /* @__PURE__ */ h(
|
|
70
|
+
A,
|
|
71
|
+
{
|
|
72
|
+
lazyMount: !0,
|
|
73
|
+
unmountOnExit: !0,
|
|
74
|
+
collection: S,
|
|
75
|
+
positioning: { sameWidth: !0, gutter: 0, ...d },
|
|
76
|
+
"data-recipe": "select",
|
|
77
|
+
...g,
|
|
78
|
+
ref: (l) => {
|
|
79
|
+
l && (w.current = l.closest('[role="dialog"]'));
|
|
80
|
+
},
|
|
81
|
+
children: [
|
|
82
|
+
/* @__PURE__ */ h(W, { children: [
|
|
83
|
+
/* @__PURE__ */ h(U, { children: [
|
|
84
|
+
s ? /* @__PURE__ */ e(
|
|
85
|
+
J,
|
|
86
|
+
{
|
|
87
|
+
renderTrigger: s,
|
|
88
|
+
placeholder: i,
|
|
89
|
+
allSelectedLabel: g.allSelectedLabel
|
|
90
|
+
}
|
|
91
|
+
) : /* @__PURE__ */ e(H, { placeholder: i, allSelectedLabel: g.allSelectedLabel }),
|
|
92
|
+
/* @__PURE__ */ e($, { asChild: !0, children: /* @__PURE__ */ e("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ e(
|
|
93
|
+
"path",
|
|
94
|
+
{
|
|
95
|
+
fillRule: "evenodd",
|
|
96
|
+
clipRule: "evenodd",
|
|
97
|
+
d: "M12.5303 16.2803C12.2374 16.5732 11.7626 16.5732 11.4697 16.2803L3.96967 8.78033C3.67678 8.48744 3.67678 8.01256 3.96967 7.71967C4.26256 7.42678 4.73744 7.42678 5.03033 7.71967L12 14.6893L18.9697 7.71967C19.2626 7.42678 19.7374 7.42678 20.0303 7.71967C20.3232 8.01256 20.3232 8.48744 20.0303 8.78033L12.5303 16.2803Z",
|
|
98
|
+
fill: "currentColor"
|
|
99
|
+
}
|
|
100
|
+
) }) })
|
|
101
|
+
] }),
|
|
102
|
+
/* @__PURE__ */ e(O, { disabled: g.readOnly, asChild: !0, children: /* @__PURE__ */ e("button", { children: /* @__PURE__ */ e("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ e(
|
|
103
|
+
"path",
|
|
104
|
+
{
|
|
105
|
+
fillRule: "evenodd",
|
|
106
|
+
clipRule: "evenodd",
|
|
107
|
+
d: "M10 3.125C6.20304 3.125 3.125 6.20304 3.125 10C3.125 13.797 6.20304 16.875 10 16.875C13.797 16.875 16.875 13.797 16.875 10C16.875 6.20304 13.797 3.125 10 3.125ZM1.875 10C1.875 5.51269 5.51269 1.875 10 1.875C14.4873 1.875 18.125 5.51269 18.125 10C18.125 14.4873 14.4873 18.125 10 18.125C5.51269 18.125 1.875 14.4873 1.875 10ZM7.68306 7.68306C7.92714 7.43898 8.32286 7.43898 8.56694 7.68306L10 9.11612L11.4331 7.68306C11.6771 7.43898 12.0729 7.43898 12.3169 7.68306C12.561 7.92714 12.561 8.32286 12.3169 8.56694L10.8839 10L12.3169 11.4331C12.561 11.6771 12.561 12.0729 12.3169 12.3169C12.0729 12.561 11.6771 12.561 11.4331 12.3169L10 10.8839L8.56694 12.3169C8.32286 12.561 7.92714 12.561 7.68306 12.3169C7.43898 12.0729 7.43898 11.6771 7.68306 11.4331L9.11612 10L7.68306 8.56694C7.43898 8.32286 7.43898 7.92714 7.68306 7.68306Z",
|
|
108
|
+
fill: "currentColor"
|
|
109
|
+
}
|
|
110
|
+
) }) }) })
|
|
111
|
+
] }),
|
|
112
|
+
/* @__PURE__ */ e(p, { when: n, wrapper: (l) => /* @__PURE__ */ e(N, { container: w, children: l }), children: /* @__PURE__ */ e(E, { children: /* @__PURE__ */ e(V, { children: t.length === 0 ? /* @__PURE__ */ e(z, { px: "space-8", textAlign: "center", children: r ?? "Aucun résultat" }) : M ? /* @__PURE__ */ e(I, { children: /* @__PURE__ */ e(
|
|
113
|
+
F,
|
|
114
|
+
{
|
|
115
|
+
height: Math.min(f * t.length, 180),
|
|
116
|
+
itemCount: t.length,
|
|
117
|
+
itemSize: f,
|
|
118
|
+
width: "100%",
|
|
119
|
+
children: ({ index: l, style: C }) => /* @__PURE__ */ e(
|
|
120
|
+
p,
|
|
121
|
+
{
|
|
122
|
+
when: !!t[l].tooltip,
|
|
123
|
+
wrapper: (y) => /* @__PURE__ */ e(x, { label: t[l].tooltip, children: y }),
|
|
124
|
+
children: /* @__PURE__ */ e(v, { item: t[l], style: C, children: /* @__PURE__ */ e(L, { renderItem: u, item: t[l] }) }, t[l].value)
|
|
125
|
+
},
|
|
126
|
+
t[l].value
|
|
127
|
+
)
|
|
128
|
+
}
|
|
129
|
+
) }) : t.map((l) => /* @__PURE__ */ e(
|
|
130
|
+
p,
|
|
131
|
+
{
|
|
132
|
+
when: !!l.tooltip,
|
|
133
|
+
wrapper: (C) => /* @__PURE__ */ e(x, { label: l.tooltip, children: C }),
|
|
134
|
+
children: /* @__PURE__ */ e(v, { item: l, children: /* @__PURE__ */ e(L, { renderItem: u, item: l, isMultiple: g.multiple }) }, l.value)
|
|
135
|
+
},
|
|
136
|
+
l.value
|
|
137
|
+
)) }) }) }),
|
|
138
|
+
/* @__PURE__ */ e(o.HiddenSelect, {})
|
|
139
|
+
]
|
|
140
|
+
}
|
|
141
|
+
);
|
|
142
|
+
}
|
|
143
|
+
export {
|
|
144
|
+
ie as Select
|
|
145
|
+
};
|
|
146
|
+
//# sourceMappingURL=Select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.js","sources":["../../../src/components/select/Select.tsx"],"sourcesContent":["import {\n createListCollection,\n Portal,\n Select as ArkSelect,\n type SelectRootProps,\n useSelectItemContext,\n useSelectContext,\n} from '@ark-ui/react'\nimport { FC, ReactNode, useRef } from 'react'\nimport { styled } from '@stokelp/styled-system/jsx'\n\nimport { select } from '@stokelp/styled-system/recipes'\nimport { createStyleContext } from '~/utils/slots'\n\nimport { ConditionalWrapper } from '~/shared/ConditionalWrapper'\nimport { Text } from '~/components/text/Text'\nimport { Tooltip } from '~/components/tooltip/Tooltip'\nimport { HTMLStyledProps, RecipeVariantProps } from '@stokelp/styled-system/types'\nimport { FixedSizeList } from 'react-window'\nimport { css } from '@stokelp/styled-system/css'\n\nconst { withProvider, withContext } = createStyleContext(select)\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst Root = withProvider(styled(ArkSelect.Root<any>), 'root', {\n defaultProps: {\n loopFocus: true,\n },\n})\n\nconst ClearTrigger = withContext(styled(ArkSelect.ClearTrigger), 'clearTrigger')\nconst Content = withContext(styled(ArkSelect.Content), 'content')\nconst Control = withContext(styled(ArkSelect.Control), 'control')\nconst Indicator = withContext(styled(ArkSelect.Indicator), 'indicator')\nconst Item = withContext(styled(ArkSelect.Item), 'item')\nconst ItemText = withContext(styled(ArkSelect.ItemText), 'itemText')\nconst Positioner = withContext(styled(ArkSelect.Positioner), 'positioner')\nconst Trigger = withContext(styled(ArkSelect.Trigger), 'trigger')\nconst ValueText = withContext(styled(ArkSelect.ValueText), 'valueText')\n\nexport interface SelectItem {\n value: string | number\n label: string\n tooltip?: ReactNode\n disabled?: boolean\n}\n\nexport type SelectProps<Item extends SelectItem> = Omit<SelectRootProps<Item>, 'collection'> & {\n items: Item[] | readonly Item[]\n renderItem?: (item: Item) => ReactNode\n renderTrigger?: (item: Item) => ReactNode\n emptyLabel?: string\n placeholder?: string\n allSelectedLabel?: string\n usePortal?: boolean\n virtualized?: boolean\n rowHeight?: number\n} & HTMLStyledProps<'div'> &\n RecipeVariantProps<typeof select>\n\nconst MultipleUncheckedIndicator: FC = () => (\n <svg width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"0.5\" y=\"1\" width=\"15\" height=\"15\" rx=\"3.5\" fill=\"white\" />\n <rect x=\"0.5\" y=\"1\" width=\"15\" height=\"15\" rx=\"3.5\" className={css({ stroke: 'grey.100' })} />\n </svg>\n)\n\nconst MultipleCheckedIndicator: FC = () => (\n <svg width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect y=\"0.5\" width=\"16\" height=\"16\" rx=\"4\" className={css({ fill: 'primary.500' })} />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.958 4.81298C12.1303 4.92787 12.1769 5.16069 12.062 5.33301L7.56202 12.083C7.4997 12.1765 7.39875 12.2371 7.28695 12.2482C7.17515 12.2592 7.06428 12.2196 6.98483 12.1402L3.98483 9.14017C3.83839 8.99372 3.83839 8.75628 3.98483 8.60984C4.13128 8.46339 4.36872 8.46339 4.51517 8.60984L7.19172 11.2864L11.438 4.91699C11.5529 4.74467 11.7857 4.6981 11.958 4.81298Z\"\n fill=\"white\"\n />\n </svg>\n)\n\ninterface InnerItemProps<Item extends SelectItem> {\n item: Item\n isMultiple?: boolean\n renderItem?: (item: Item) => ReactNode\n}\n\ninterface InnerTriggerProps<Item extends SelectItem> {\n renderTrigger: (item: Item) => ReactNode\n placeholder?: string\n allSelectedLabel?: string\n}\n\ninterface DefaultInnerTriggerProps {\n placeholder?: string\n allSelectedLabel?: string\n}\n\nfunction DefaultInnerTrigger({ placeholder, allSelectedLabel }: DefaultInnerTriggerProps) {\n const context = useSelectContext()\n const items = context.collection.items\n const selectedItems = context.selectedItems\n\n if (\n context.multiple &&\n selectedItems.filter(item => !item.disabled).length >= items.filter(item => !item.disabled).length &&\n allSelectedLabel\n ) {\n return (\n <ValueText className=\"custom\" truncate>\n {allSelectedLabel}\n </ValueText>\n )\n }\n\n return <ValueText truncate placeholder={placeholder} />\n}\n\nfunction CustomInnerTrigger<Item extends SelectItem>({\n renderTrigger,\n placeholder,\n allSelectedLabel,\n}: InnerTriggerProps<Item>) {\n const context = useSelectContext()\n const items = context.value && context.value.length > 0 ? context.collection.findMany(context.value) : []\n\n if (items.length === 0) {\n return <ValueText className=\"custom\" truncate placeholder={placeholder} />\n }\n\n const selectedItems = context.selectedItems\n\n if (\n context.multiple &&\n selectedItems.filter(item => !item.disabled).length >=\n context.collection.items.filter(item => !item.disabled).length &&\n allSelectedLabel\n ) {\n return (\n <ValueText className=\"custom\" truncate>\n {allSelectedLabel}\n </ValueText>\n )\n }\n\n return (\n <ValueText className=\"custom\" placeholder={placeholder}>\n {items.map(item => (\n <span key={item.value}>{renderTrigger(item)}</span>\n ))}\n </ValueText>\n )\n}\n\nfunction CustomInnerItem<Item extends SelectItem>({ item, isMultiple, renderItem }: InnerItemProps<Item>) {\n const context = useSelectItemContext()\n\n return (\n <>\n {isMultiple ? context.selected ? <MultipleCheckedIndicator /> : <MultipleUncheckedIndicator /> : null}\n {renderItem ? renderItem(item) : <ItemText truncate>{item.label}</ItemText>}\n </>\n )\n}\n\nexport function Select<Item extends SelectItem>({\n items,\n placeholder,\n emptyLabel,\n usePortal = true,\n positioning,\n renderItem,\n renderTrigger,\n virtualized,\n rowHeight = 34,\n ...props\n}: SelectProps<Item>) {\n const collection = createListCollection({\n items,\n })\n const $dialogContent = useRef<HTMLDivElement | null>(null)\n\n return (\n <Root\n lazyMount\n unmountOnExit\n collection={collection}\n positioning={{ sameWidth: true, gutter: 0, ...positioning }}\n data-recipe=\"select\"\n {...props}\n ref={node => {\n if (node) {\n $dialogContent.current = node.closest('[role=\"dialog\"]') as HTMLDivElement | null\n }\n }}\n >\n <Control>\n <Trigger>\n {renderTrigger ? (\n <CustomInnerTrigger\n renderTrigger={renderTrigger}\n placeholder={placeholder}\n allSelectedLabel={props.allSelectedLabel}\n />\n ) : (\n <DefaultInnerTrigger placeholder={placeholder} allSelectedLabel={props.allSelectedLabel} />\n )}\n <Indicator asChild>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.5303 16.2803C12.2374 16.5732 11.7626 16.5732 11.4697 16.2803L3.96967 8.78033C3.67678 8.48744 3.67678 8.01256 3.96967 7.71967C4.26256 7.42678 4.73744 7.42678 5.03033 7.71967L12 14.6893L18.9697 7.71967C19.2626 7.42678 19.7374 7.42678 20.0303 7.71967C20.3232 8.01256 20.3232 8.48744 20.0303 8.78033L12.5303 16.2803Z\"\n fill=\"currentColor\"\n />\n </svg>\n </Indicator>\n </Trigger>\n <ClearTrigger disabled={props.readOnly} asChild>\n <button>\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M10 3.125C6.20304 3.125 3.125 6.20304 3.125 10C3.125 13.797 6.20304 16.875 10 16.875C13.797 16.875 16.875 13.797 16.875 10C16.875 6.20304 13.797 3.125 10 3.125ZM1.875 10C1.875 5.51269 5.51269 1.875 10 1.875C14.4873 1.875 18.125 5.51269 18.125 10C18.125 14.4873 14.4873 18.125 10 18.125C5.51269 18.125 1.875 14.4873 1.875 10ZM7.68306 7.68306C7.92714 7.43898 8.32286 7.43898 8.56694 7.68306L10 9.11612L11.4331 7.68306C11.6771 7.43898 12.0729 7.43898 12.3169 7.68306C12.561 7.92714 12.561 8.32286 12.3169 8.56694L10.8839 10L12.3169 11.4331C12.561 11.6771 12.561 12.0729 12.3169 12.3169C12.0729 12.561 11.6771 12.561 11.4331 12.3169L10 10.8839L8.56694 12.3169C8.32286 12.561 7.92714 12.561 7.68306 12.3169C7.43898 12.0729 7.43898 11.6771 7.68306 11.4331L9.11612 10L7.68306 8.56694C7.43898 8.32286 7.43898 7.92714 7.68306 7.68306Z\"\n fill=\"currentColor\"\n />\n </svg>\n </button>\n </ClearTrigger>\n </Control>\n <ConditionalWrapper when={usePortal} wrapper={children => <Portal container={$dialogContent}>{children}</Portal>}>\n <Positioner>\n <Content>\n {items.length === 0 ? (\n <Text px=\"space-8\" textAlign=\"center\">\n {emptyLabel ?? 'Aucun résultat'}\n </Text>\n ) : virtualized ? (\n <>\n <FixedSizeList\n height={Math.min(rowHeight * items.length, 180)}\n itemCount={items.length}\n itemSize={rowHeight}\n width=\"100%\"\n >\n {({ index, style }) => (\n <ConditionalWrapper\n key={items[index].value}\n when={!!items[index].tooltip}\n wrapper={children => <Tooltip label={items[index].tooltip}>{children}</Tooltip>}\n >\n <Item key={items[index].value} item={items[index]} style={style}>\n <CustomInnerItem renderItem={renderItem} item={items[index]} />\n </Item>\n </ConditionalWrapper>\n )}\n </FixedSizeList>\n </>\n ) : (\n items.map(item => (\n <ConditionalWrapper\n key={item.value}\n when={!!item.tooltip}\n wrapper={children => <Tooltip label={item.tooltip}>{children}</Tooltip>}\n >\n <Item key={item.value} item={item}>\n <CustomInnerItem renderItem={renderItem} item={item} isMultiple={props.multiple} />\n </Item>\n </ConditionalWrapper>\n ))\n )}\n </Content>\n </Positioner>\n </ConditionalWrapper>\n <ArkSelect.HiddenSelect />\n </Root>\n )\n}\n"],"names":["withProvider","withContext","createStyleContext","select","Root","styled","ArkSelect","ClearTrigger","Content","Control","Indicator","Item","ItemText","Positioner","Trigger","ValueText","MultipleUncheckedIndicator","jsxs","jsx","css","MultipleCheckedIndicator","DefaultInnerTrigger","placeholder","allSelectedLabel","context","useSelectContext","items","selectedItems","item","CustomInnerTrigger","renderTrigger","CustomInnerItem","isMultiple","renderItem","useSelectItemContext","Fragment","Select","emptyLabel","usePortal","positioning","virtualized","rowHeight","props","collection","createListCollection","$dialogContent","useRef","node","ConditionalWrapper","children","Portal","Text","FixedSizeList","index","style","Tooltip"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("@ark-ui/react"),l=require("@stokelp/styled-system/jsx"),u=require("@stokelp/styled-system/recipes"),x=require("../../utils/slots.cjs"),h=require("../../shared/ConditionalWrapper.cjs"),{withProvider:g,withContext:s}=x.createStyleContext(u.selectLanguage),p=g(l.styled(t.Select.Root),"root",{defaultProps:{loopFocus:!0}}),f=s(l.styled(t.Select.Content),"content"),v=s(l.styled(t.Select.Control),"control"),j=s(l.styled(t.Select.Item),"item"),w=s(l.styled(t.Select.ItemText),"itemText"),S=s(l.styled(t.Select.Positioner),"positioner"),m=s(l.styled(t.Select.Trigger),"trigger"),L=s(l.styled(t.Select.ValueText),"valueText"),i=[{value:"fr",label:"FRA",flag:e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",id:"flag-icons-fr",viewBox:"0 0 640 480",children:[e.jsx("path",{fill:"#fff",d:"M0 0h640v480H0z"}),e.jsx("path",{fill:"#000091",d:"M0 0h213.3v480H0z"}),e.jsx("path",{fill:"#e1000f",d:"M426.7 0H640v480H426.7z"})]})},{value:"en",label:"ENG",flag:e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",id:"flag-icons-gb",viewBox:"0 0 640 480",children:[e.jsx("path",{fill:"#012169",d:"M0 0h640v480H0z"}),e.jsx("path",{fill:"#FFF",d:"m75 0 244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0z"}),e.jsx("path",{fill:"#C8102E",d:"m424 281 216 159v40L369 281zm-184 20 6 35L54 480H0zM640 0v3L391 191l2-44L590 0zM0 0l239 176h-60L0 42z"}),e.jsx("path",{fill:"#FFF",d:"M241 0v480h160V0zM0 160v160h640V160z"}),e.jsx("path",{fill:"#C8102E",d:"M0 193v96h640v-96zM273 0v480h96V0z"})]})}],z=({variant:c})=>{const n=t.useSelectContext(),r=n.value&&n.value.length>0?n.collection.find(n.value[0]):null;return e.jsxs(l.HStack,{gap:"space-8",width:"full",css:{"& > svg":{width:"21px",height:"15px",borderRadius:"3px"}},children:[r?.flag,c==="default"&&e.jsx(L,{truncate:!0})]})},y=({usePortal:c=!0,positioning:n,variant:r="default",...a})=>{const d=t.createListCollection({items:i});return e.jsxs(p,{lazyMount:!0,unmountOnExit:!0,multiple:!1,collection:d,positioning:{sameWidth:!0,gutter:0,...n},"data-recipe":"select-language",defaultValue:["en"],...a,children:[e.jsx(v,{children:e.jsx(m,{children:e.jsx(z,{variant:r})})}),e.jsx(h.ConditionalWrapper,{when:c,wrapper:o=>e.jsx(t.Portal,{children:o}),children:e.jsx(S,{width:r==="compact"?"fit-content !important":"",children:e.jsx(f,{children:i.map(o=>e.jsxs(j,{item:o,gap:"space-8",width:"full",css:{"& > svg":{width:"21px",height:"15px",borderRadius:"3px"}},children:[o.flag,e.jsx(w,{truncate:!0,children:o.label})]},o.value))})})}),e.jsx(t.Select.HiddenSelect,{})]})};exports.SelectLanguage=y;
|
|
2
|
+
//# sourceMappingURL=SelectLanguage.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectLanguage.cjs","sources":["../../../src/components/select-language/SelectLanguage.tsx"],"sourcesContent":["import {\n createListCollection,\n Portal,\n Select as ArkSelect,\n type SelectRootProps,\n useSelectContext,\n} from '@ark-ui/react'\nimport type { FC, ReactNode } from 'react'\nimport { HStack, styled } from '@stokelp/styled-system/jsx'\n\nimport { selectLanguage } from '@stokelp/styled-system/recipes'\nimport { createStyleContext } from '~/utils/slots'\n\nimport { ConditionalWrapper } from '~/shared/ConditionalWrapper'\nimport { ConditionalValue, HTMLStyledProps, RecipeVariantProps } from '@stokelp/styled-system/types'\n\nconst { withProvider, withContext } = createStyleContext(selectLanguage)\n\nconst Root = withProvider(styled(ArkSelect.Root<SelectItem>), 'root', {\n defaultProps: {\n loopFocus: true,\n },\n})\n\nconst Content = withContext(styled(ArkSelect.Content), 'content')\nconst Control = withContext(styled(ArkSelect.Control), 'control')\nconst Item = withContext(styled(ArkSelect.Item), 'item')\nconst ItemText = withContext(styled(ArkSelect.ItemText), 'itemText')\nconst Positioner = withContext(styled(ArkSelect.Positioner), 'positioner')\nconst Trigger = withContext(styled(ArkSelect.Trigger), 'trigger')\nconst ValueText = withContext(styled(ArkSelect.ValueText), 'valueText')\n\ntype SelectItem = { value: string | number; label: string; disabled?: boolean; flag: ReactNode }\n\nexport type SelectLanguageProps = Omit<SelectRootProps<SelectItem>, 'collection' | 'multiple'> & {\n usePortal?: boolean\n} & HTMLStyledProps<'div'> &\n RecipeVariantProps<typeof selectLanguage>\n\nconst AVAILABLE_LANGUAGES = [\n {\n value: 'fr',\n label: 'FRA',\n flag: (\n <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"flag-icons-fr\" viewBox=\"0 0 640 480\">\n <path fill=\"#fff\" d=\"M0 0h640v480H0z\" />\n <path fill=\"#000091\" d=\"M0 0h213.3v480H0z\" />\n <path fill=\"#e1000f\" d=\"M426.7 0H640v480H426.7z\" />\n </svg>\n ),\n },\n {\n value: 'en',\n label: 'ENG',\n flag: (\n <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"flag-icons-gb\" viewBox=\"0 0 640 480\">\n <path fill=\"#012169\" d=\"M0 0h640v480H0z\" />\n <path fill=\"#FFF\" d=\"m75 0 244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0z\" />\n <path\n fill=\"#C8102E\"\n d=\"m424 281 216 159v40L369 281zm-184 20 6 35L54 480H0zM640 0v3L391 191l2-44L590 0zM0 0l239 176h-60L0 42z\"\n />\n <path fill=\"#FFF\" d=\"M241 0v480h160V0zM0 160v160h640V160z\" />\n <path fill=\"#C8102E\" d=\"M0 193v96h640v-96zM273 0v480h96V0z\" />\n </svg>\n ),\n },\n] satisfies SelectItem[]\n\nconst InnerTrigger: FC<{ variant: ConditionalValue<'default' | 'compact'> }> = ({ variant }) => {\n const context = useSelectContext()\n const selected = context.value && context.value.length > 0 ? context.collection.find(context.value[0]) : null\n\n return (\n <HStack gap=\"space-8\" width=\"full\" css={{ '& > svg': { width: '21px', height: '15px', borderRadius: '3px' } }}>\n {selected?.flag}\n {variant === 'default' && <ValueText truncate />}\n </HStack>\n )\n}\n\nexport const SelectLanguage: FC<SelectLanguageProps> = ({\n usePortal = true,\n positioning,\n variant = 'default',\n ...props\n}) => {\n const collection = createListCollection<SelectItem>({\n items: AVAILABLE_LANGUAGES,\n })\n\n return (\n <Root\n lazyMount\n unmountOnExit\n multiple={false}\n collection={collection}\n positioning={{ sameWidth: true, gutter: 0, ...positioning }}\n data-recipe=\"select-language\"\n defaultValue={['en']}\n {...props}\n >\n <Control>\n <Trigger>\n <InnerTrigger variant={variant} />\n </Trigger>\n </Control>\n <ConditionalWrapper when={usePortal} wrapper={children => <Portal>{children}</Portal>}>\n <Positioner width={variant === 'compact' ? 'fit-content !important' : ''}>\n <Content>\n {AVAILABLE_LANGUAGES.map(item => (\n <Item\n key={item.value}\n item={item}\n gap=\"space-8\"\n width=\"full\"\n css={{ '& > svg': { width: '21px', height: '15px', borderRadius: '3px' } }}\n >\n {item.flag}\n <ItemText truncate>{item.label}</ItemText>\n </Item>\n ))}\n </Content>\n </Positioner>\n </ConditionalWrapper>\n <ArkSelect.HiddenSelect />\n </Root>\n )\n}\n"],"names":["withProvider","withContext","createStyleContext","selectLanguage","Root","styled","ArkSelect","Content","Control","Item","ItemText","Positioner","Trigger","ValueText","AVAILABLE_LANGUAGES","jsx","InnerTrigger","variant","context","useSelectContext","selected","HStack","SelectLanguage","usePortal","positioning","props","collection","createListCollection","jsxs","ConditionalWrapper","children","Portal","item"],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as i, jsx as t } from "react/jsx-runtime";
|
|
3
|
+
import { createListCollection as u, Portal as p, Select as e, useSelectContext as g } from "@ark-ui/react";
|
|
4
|
+
import { styled as l, HStack as f } from "@stokelp/styled-system/jsx";
|
|
5
|
+
import { selectLanguage as v } from "@stokelp/styled-system/recipes";
|
|
6
|
+
import { createStyleContext as m } from "../../utils/slots.js";
|
|
7
|
+
import { ConditionalWrapper as x } from "../../shared/ConditionalWrapper.js";
|
|
8
|
+
const { withProvider: w, withContext: o } = m(v), L = w(l(e.Root), "root", {
|
|
9
|
+
defaultProps: {
|
|
10
|
+
loopFocus: !0
|
|
11
|
+
}
|
|
12
|
+
}), z = o(l(e.Content), "content"), C = o(l(e.Control), "control"), M = o(l(e.Item), "item"), H = o(l(e.ItemText), "itemText"), T = o(l(e.Positioner), "positioner"), F = o(l(e.Trigger), "trigger"), V = o(l(e.ValueText), "valueText"), s = [
|
|
13
|
+
{
|
|
14
|
+
value: "fr",
|
|
15
|
+
label: "FRA",
|
|
16
|
+
flag: /* @__PURE__ */ i("svg", { xmlns: "http://www.w3.org/2000/svg", id: "flag-icons-fr", viewBox: "0 0 640 480", children: [
|
|
17
|
+
/* @__PURE__ */ t("path", { fill: "#fff", d: "M0 0h640v480H0z" }),
|
|
18
|
+
/* @__PURE__ */ t("path", { fill: "#000091", d: "M0 0h213.3v480H0z" }),
|
|
19
|
+
/* @__PURE__ */ t("path", { fill: "#e1000f", d: "M426.7 0H640v480H426.7z" })
|
|
20
|
+
] })
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
value: "en",
|
|
24
|
+
label: "ENG",
|
|
25
|
+
flag: /* @__PURE__ */ i("svg", { xmlns: "http://www.w3.org/2000/svg", id: "flag-icons-gb", viewBox: "0 0 640 480", children: [
|
|
26
|
+
/* @__PURE__ */ t("path", { fill: "#012169", d: "M0 0h640v480H0z" }),
|
|
27
|
+
/* @__PURE__ */ t("path", { fill: "#FFF", d: "m75 0 244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0z" }),
|
|
28
|
+
/* @__PURE__ */ t(
|
|
29
|
+
"path",
|
|
30
|
+
{
|
|
31
|
+
fill: "#C8102E",
|
|
32
|
+
d: "m424 281 216 159v40L369 281zm-184 20 6 35L54 480H0zM640 0v3L391 191l2-44L590 0zM0 0l239 176h-60L0 42z"
|
|
33
|
+
}
|
|
34
|
+
),
|
|
35
|
+
/* @__PURE__ */ t("path", { fill: "#FFF", d: "M241 0v480h160V0zM0 160v160h640V160z" }),
|
|
36
|
+
/* @__PURE__ */ t("path", { fill: "#C8102E", d: "M0 193v96h640v-96zM273 0v480h96V0z" })
|
|
37
|
+
] })
|
|
38
|
+
}
|
|
39
|
+
], S = ({ variant: c }) => {
|
|
40
|
+
const n = g(), a = n.value && n.value.length > 0 ? n.collection.find(n.value[0]) : null;
|
|
41
|
+
return /* @__PURE__ */ i(f, { gap: "space-8", width: "full", css: { "& > svg": { width: "21px", height: "15px", borderRadius: "3px" } }, children: [
|
|
42
|
+
a?.flag,
|
|
43
|
+
c === "default" && /* @__PURE__ */ t(V, { truncate: !0 })
|
|
44
|
+
] });
|
|
45
|
+
}, y = ({
|
|
46
|
+
usePortal: c = !0,
|
|
47
|
+
positioning: n,
|
|
48
|
+
variant: a = "default",
|
|
49
|
+
...h
|
|
50
|
+
}) => {
|
|
51
|
+
const d = u({
|
|
52
|
+
items: s
|
|
53
|
+
});
|
|
54
|
+
return /* @__PURE__ */ i(
|
|
55
|
+
L,
|
|
56
|
+
{
|
|
57
|
+
lazyMount: !0,
|
|
58
|
+
unmountOnExit: !0,
|
|
59
|
+
multiple: !1,
|
|
60
|
+
collection: d,
|
|
61
|
+
positioning: { sameWidth: !0, gutter: 0, ...n },
|
|
62
|
+
"data-recipe": "select-language",
|
|
63
|
+
defaultValue: ["en"],
|
|
64
|
+
...h,
|
|
65
|
+
children: [
|
|
66
|
+
/* @__PURE__ */ t(C, { children: /* @__PURE__ */ t(F, { children: /* @__PURE__ */ t(S, { variant: a }) }) }),
|
|
67
|
+
/* @__PURE__ */ t(x, { when: c, wrapper: (r) => /* @__PURE__ */ t(p, { children: r }), children: /* @__PURE__ */ t(T, { width: a === "compact" ? "fit-content !important" : "", children: /* @__PURE__ */ t(z, { children: s.map((r) => /* @__PURE__ */ i(
|
|
68
|
+
M,
|
|
69
|
+
{
|
|
70
|
+
item: r,
|
|
71
|
+
gap: "space-8",
|
|
72
|
+
width: "full",
|
|
73
|
+
css: { "& > svg": { width: "21px", height: "15px", borderRadius: "3px" } },
|
|
74
|
+
children: [
|
|
75
|
+
r.flag,
|
|
76
|
+
/* @__PURE__ */ t(H, { truncate: !0, children: r.label })
|
|
77
|
+
]
|
|
78
|
+
},
|
|
79
|
+
r.value
|
|
80
|
+
)) }) }) }),
|
|
81
|
+
/* @__PURE__ */ t(e.HiddenSelect, {})
|
|
82
|
+
]
|
|
83
|
+
}
|
|
84
|
+
);
|
|
85
|
+
};
|
|
86
|
+
export {
|
|
87
|
+
y as SelectLanguage
|
|
88
|
+
};
|
|
89
|
+
//# sourceMappingURL=SelectLanguage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectLanguage.js","sources":["../../../src/components/select-language/SelectLanguage.tsx"],"sourcesContent":["import {\n createListCollection,\n Portal,\n Select as ArkSelect,\n type SelectRootProps,\n useSelectContext,\n} from '@ark-ui/react'\nimport type { FC, ReactNode } from 'react'\nimport { HStack, styled } from '@stokelp/styled-system/jsx'\n\nimport { selectLanguage } from '@stokelp/styled-system/recipes'\nimport { createStyleContext } from '~/utils/slots'\n\nimport { ConditionalWrapper } from '~/shared/ConditionalWrapper'\nimport { ConditionalValue, HTMLStyledProps, RecipeVariantProps } from '@stokelp/styled-system/types'\n\nconst { withProvider, withContext } = createStyleContext(selectLanguage)\n\nconst Root = withProvider(styled(ArkSelect.Root<SelectItem>), 'root', {\n defaultProps: {\n loopFocus: true,\n },\n})\n\nconst Content = withContext(styled(ArkSelect.Content), 'content')\nconst Control = withContext(styled(ArkSelect.Control), 'control')\nconst Item = withContext(styled(ArkSelect.Item), 'item')\nconst ItemText = withContext(styled(ArkSelect.ItemText), 'itemText')\nconst Positioner = withContext(styled(ArkSelect.Positioner), 'positioner')\nconst Trigger = withContext(styled(ArkSelect.Trigger), 'trigger')\nconst ValueText = withContext(styled(ArkSelect.ValueText), 'valueText')\n\ntype SelectItem = { value: string | number; label: string; disabled?: boolean; flag: ReactNode }\n\nexport type SelectLanguageProps = Omit<SelectRootProps<SelectItem>, 'collection' | 'multiple'> & {\n usePortal?: boolean\n} & HTMLStyledProps<'div'> &\n RecipeVariantProps<typeof selectLanguage>\n\nconst AVAILABLE_LANGUAGES = [\n {\n value: 'fr',\n label: 'FRA',\n flag: (\n <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"flag-icons-fr\" viewBox=\"0 0 640 480\">\n <path fill=\"#fff\" d=\"M0 0h640v480H0z\" />\n <path fill=\"#000091\" d=\"M0 0h213.3v480H0z\" />\n <path fill=\"#e1000f\" d=\"M426.7 0H640v480H426.7z\" />\n </svg>\n ),\n },\n {\n value: 'en',\n label: 'ENG',\n flag: (\n <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"flag-icons-gb\" viewBox=\"0 0 640 480\">\n <path fill=\"#012169\" d=\"M0 0h640v480H0z\" />\n <path fill=\"#FFF\" d=\"m75 0 244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0z\" />\n <path\n fill=\"#C8102E\"\n d=\"m424 281 216 159v40L369 281zm-184 20 6 35L54 480H0zM640 0v3L391 191l2-44L590 0zM0 0l239 176h-60L0 42z\"\n />\n <path fill=\"#FFF\" d=\"M241 0v480h160V0zM0 160v160h640V160z\" />\n <path fill=\"#C8102E\" d=\"M0 193v96h640v-96zM273 0v480h96V0z\" />\n </svg>\n ),\n },\n] satisfies SelectItem[]\n\nconst InnerTrigger: FC<{ variant: ConditionalValue<'default' | 'compact'> }> = ({ variant }) => {\n const context = useSelectContext()\n const selected = context.value && context.value.length > 0 ? context.collection.find(context.value[0]) : null\n\n return (\n <HStack gap=\"space-8\" width=\"full\" css={{ '& > svg': { width: '21px', height: '15px', borderRadius: '3px' } }}>\n {selected?.flag}\n {variant === 'default' && <ValueText truncate />}\n </HStack>\n )\n}\n\nexport const SelectLanguage: FC<SelectLanguageProps> = ({\n usePortal = true,\n positioning,\n variant = 'default',\n ...props\n}) => {\n const collection = createListCollection<SelectItem>({\n items: AVAILABLE_LANGUAGES,\n })\n\n return (\n <Root\n lazyMount\n unmountOnExit\n multiple={false}\n collection={collection}\n positioning={{ sameWidth: true, gutter: 0, ...positioning }}\n data-recipe=\"select-language\"\n defaultValue={['en']}\n {...props}\n >\n <Control>\n <Trigger>\n <InnerTrigger variant={variant} />\n </Trigger>\n </Control>\n <ConditionalWrapper when={usePortal} wrapper={children => <Portal>{children}</Portal>}>\n <Positioner width={variant === 'compact' ? 'fit-content !important' : ''}>\n <Content>\n {AVAILABLE_LANGUAGES.map(item => (\n <Item\n key={item.value}\n item={item}\n gap=\"space-8\"\n width=\"full\"\n css={{ '& > svg': { width: '21px', height: '15px', borderRadius: '3px' } }}\n >\n {item.flag}\n <ItemText truncate>{item.label}</ItemText>\n </Item>\n ))}\n </Content>\n </Positioner>\n </ConditionalWrapper>\n <ArkSelect.HiddenSelect />\n </Root>\n )\n}\n"],"names":["withProvider","withContext","createStyleContext","selectLanguage","Root","styled","ArkSelect","Content","Control","Item","ItemText","Positioner","Trigger","ValueText","AVAILABLE_LANGUAGES","jsx","InnerTrigger","variant","context","useSelectContext","selected","HStack","SelectLanguage","usePortal","positioning","props","collection","createListCollection","jsxs","ConditionalWrapper","children","Portal","item"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),o=require("@stokelp/styled-system/jsx"),K=require("@stokelp/styled-system/recipes"),N=require("react"),r=require("@ark-ui/react"),Q=require("../../shared/ConditionalWrapper.cjs"),X=require("../../utils/slots.cjs"),{withProvider:Y,withContext:l}=X.createStyleContext(K.statusTagSelect),_=Y(o.styled(r.Select.Root),"root",{defaultProps:{loopFocus:!0}}),$=l(o.styled(r.Select.Content),"content"),U=l(o.styled(r.Select.Indicator),"indicator"),ee=l(o.styled(r.Select.Item),"item"),te=l(o.styled(r.Select.ItemText),"itemText"),re=l(o.styled(r.Select.Positioner),"positioner"),ne=l(o.styled(r.Select.Trigger),"trigger"),oe=l(o.styled(r.Select.ValueText),"valueText"),le=({items:n,lazyMount:a=!0,usePortal:d=!0,unmountOnExit:h=!0,positioning:x,onValueChange:c,severity:g,size:v,closeOnSelect:y,composite:S,defaultOpen:j,defaultValue:u,disabled:p,form:C,highlightedValue:T,id:f,ids:w,immediate:q,invalid:I,loopFocus:P,name:R,onExitComplete:L,onFocusOutside:b,onHighlightChange:m,onInteractOutside:V,onOpenChange:W,onPointerDownOutside:H,open:M,present:B,readOnly:O,required:Z,scrollToIndexFn:k,value:z,...A})=>{const s=n.every(e=>"severity"in e&&!!e.severity),i=u||(n.length>0?[n[0].value.toString()]:void 0),[D,E]=N.useState(()=>{if(i){const e=n.find(J=>J.value.toString()===i[0]);return e&&s?e.severity:"neutral"}return n.length>0&&s?n[0].severity:"neutral"}),F=e=>{e.items.length>0&&typeof e.items[0]=="object"&&E(e.items[0].severity??"neutral"),c?.(e)},G=r.createListCollection({items:n});return t.jsxs(_,{closeOnSelect:y,composite:S,defaultOpen:j,lazyMount:a,unmountOnExit:h,collection:G,defaultValue:i,positioning:{sameWidth:!0,gutter:0,...x},onValueChange:s?F:c,severity:s?D:g,size:v,disabled:p,form:C,highlightedValue:T,id:f,ids:w,immediate:q,invalid:I,loopFocus:P,name:R,onExitComplete:L,onFocusOutside:b,onHighlightChange:m,onInteractOutside:V,onOpenChange:W,onPointerDownOutside:H,open:M,present:B,readOnly:O,required:Z,scrollToIndexFn:k,value:z,children:[t.jsxs(ne,{...A,children:[t.jsx(oe,{}),t.jsx(U,{asChild:!0,children:t.jsx("svg",{width:"23",height:"24",viewBox:"0 0 23 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.0082 16.2803C11.7275 16.5732 11.2725 16.5732 10.9918 16.2803L3.80427 8.78033C3.52358 8.48744 3.52358 8.01257 3.80427 7.71967C4.08496 7.42678 4.54004 7.42678 4.82073 7.71967L11.5 14.6893L18.1793 7.71967C18.46 7.42678 18.915 7.42678 19.1957 7.71967C19.4764 8.01256 19.4764 8.48744 19.1957 8.78033L12.0082 16.2803Z",fill:"currentColor"})})})]}),t.jsx(Q.ConditionalWrapper,{when:d,wrapper:e=>t.jsx(r.Portal,{children:e}),children:t.jsx(re,{children:t.jsx($,{children:n.map(e=>t.jsx(ee,{item:e,children:t.jsx(te,{truncate:!0,children:e.label})},e.value))})})}),t.jsx(r.Select.HiddenSelect,{})]})};exports.StatusTagSelect=le;
|
|
2
|
+
//# sourceMappingURL=StatusTagSelect.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusTagSelect.cjs","sources":["../../../src/components/status-tag-select/StatusTagSelect.tsx"],"sourcesContent":["import { styled } from '@stokelp/styled-system/jsx'\nimport { statusTagSelect, type StatusTagSelectVariantProps } from '@stokelp/styled-system/recipes'\nimport { HTMLStyledProps } from '@stokelp/styled-system/types'\nimport { type FC, useState } from 'react'\nimport { Portal, Select as ArkSelect, type SelectRootProps, createListCollection } from '@ark-ui/react'\nimport { ConditionalWrapper } from '~/shared/ConditionalWrapper.tsx'\nimport { createStyleContext } from '~/utils/slots.tsx'\n\nconst { withProvider, withContext } = createStyleContext(statusTagSelect)\n\nconst Root = withProvider(styled(ArkSelect.Root<StatusTagSelectItem>), 'root', {\n defaultProps: {\n loopFocus: true,\n },\n})\n\nconst Content = withContext(styled(ArkSelect.Content), 'content')\nconst Indicator = withContext(styled(ArkSelect.Indicator), 'indicator')\nconst Item = withContext(styled(ArkSelect.Item), 'item')\nconst ItemText = withContext(styled(ArkSelect.ItemText), 'itemText')\nconst Positioner = withContext(styled(ArkSelect.Positioner), 'positioner')\nconst Trigger = withContext(styled(ArkSelect.Trigger), 'trigger')\nconst ValueText = withContext(styled(ArkSelect.ValueText), 'valueText')\n\ntype Severity = StatusTagSelectVariantProps['severity']\n\nexport type StatusTagSelectItem = {\n value: string | number\n label: string\n disabled?: boolean\n severity?: Severity\n}\n\nexport type StatusTagSelectProps = Omit<SelectRootProps<StatusTagSelectItem>, 'collection' | 'multiple' | 'asChild'> & {\n items: StatusTagSelectItem[]\n usePortal?: boolean\n} & HTMLStyledProps<'button'> &\n StatusTagSelectVariantProps\n\nexport const StatusTagSelect: FC<StatusTagSelectProps> = ({\n items,\n lazyMount = true,\n usePortal = true,\n unmountOnExit = true,\n positioning,\n onValueChange,\n severity: severityFromUser,\n size,\n closeOnSelect,\n composite,\n defaultOpen,\n defaultValue: defaultValueFromUser,\n disabled,\n form,\n highlightedValue,\n id,\n ids,\n immediate,\n invalid,\n loopFocus,\n name,\n onExitComplete,\n onFocusOutside,\n onHighlightChange,\n onInteractOutside,\n onOpenChange,\n onPointerDownOutside,\n open,\n present,\n readOnly,\n required,\n scrollToIndexFn,\n value,\n ...props\n}) => {\n const shouldControlSeverity = items.every(item => 'severity' in item && !!item.severity)\n const defaultValue = defaultValueFromUser\n ? defaultValueFromUser\n : items.length > 0\n ? [items[0].value.toString()]\n : undefined\n\n const [severity, setSeverity] = useState<Severity>(() => {\n if (defaultValue) {\n const match = items.find(item => item.value.toString() === defaultValue[0])\n\n return match && shouldControlSeverity ? match.severity : 'neutral'\n }\n return items.length > 0 && shouldControlSeverity ? items[0].severity : 'neutral'\n })\n\n const onValueChangeHandler: StatusTagSelectProps['onValueChange'] = details => {\n if (details.items.length > 0 && typeof details.items[0] === 'object') {\n setSeverity(((details.items[0] as StatusTagSelectItem).severity ?? 'neutral') as Severity)\n }\n onValueChange?.(details)\n }\n const collection = createListCollection({\n items,\n })\n\n return (\n <Root\n closeOnSelect={closeOnSelect}\n composite={composite}\n defaultOpen={defaultOpen}\n lazyMount={lazyMount}\n unmountOnExit={unmountOnExit}\n collection={collection}\n defaultValue={defaultValue}\n positioning={{ sameWidth: true, gutter: 0, ...positioning }}\n onValueChange={shouldControlSeverity ? onValueChangeHandler : onValueChange}\n severity={shouldControlSeverity ? severity : severityFromUser}\n size={size}\n disabled={disabled}\n form={form}\n highlightedValue={highlightedValue}\n id={id}\n ids={ids}\n immediate={immediate}\n invalid={invalid}\n loopFocus={loopFocus}\n name={name}\n onExitComplete={onExitComplete}\n onFocusOutside={onFocusOutside}\n onHighlightChange={onHighlightChange}\n onInteractOutside={onInteractOutside}\n onOpenChange={onOpenChange}\n onPointerDownOutside={onPointerDownOutside}\n open={open}\n present={present}\n readOnly={readOnly}\n required={required}\n scrollToIndexFn={scrollToIndexFn}\n value={value}\n >\n <Trigger {...props}>\n <ValueText />\n <Indicator asChild>\n <svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M12.0082 16.2803C11.7275 16.5732 11.2725 16.5732 10.9918 16.2803L3.80427 8.78033C3.52358 8.48744 3.52358 8.01257 3.80427 7.71967C4.08496 7.42678 4.54004 7.42678 4.82073 7.71967L11.5 14.6893L18.1793 7.71967C18.46 7.42678 18.915 7.42678 19.1957 7.71967C19.4764 8.01256 19.4764 8.48744 19.1957 8.78033L12.0082 16.2803Z\"\n fill=\"currentColor\"\n />\n </svg>\n </Indicator>\n </Trigger>\n <ConditionalWrapper when={usePortal} wrapper={children => <Portal>{children}</Portal>}>\n <Positioner>\n <Content>\n {items.map(item => (\n <Item key={item.value} item={item}>\n <ItemText truncate>{item.label}</ItemText>\n </Item>\n ))}\n </Content>\n </Positioner>\n </ConditionalWrapper>\n <ArkSelect.HiddenSelect />\n </Root>\n )\n}\n"],"names":["withProvider","withContext","createStyleContext","statusTagSelect","Root","styled","ArkSelect","Content","Indicator","Item","ItemText","Positioner","Trigger","ValueText","StatusTagSelect","items","lazyMount","usePortal","unmountOnExit","positioning","onValueChange","severityFromUser","size","closeOnSelect","composite","defaultOpen","defaultValueFromUser","disabled","form","highlightedValue","id","ids","immediate","invalid","loopFocus","name","onExitComplete","onFocusOutside","onHighlightChange","onInteractOutside","onOpenChange","onPointerDownOutside","open","present","readOnly","required","scrollToIndexFn","value","props","shouldControlSeverity","item","defaultValue","severity","setSeverity","useState","match","onValueChangeHandler","details","collection","createListCollection","jsxs","jsx","ConditionalWrapper","children","Portal"],"mappings":"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"}
|