frey-ui 1.0.11 → 1.0.13
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/README.md +35 -1
- package/dist/cjs/Accordion/accordion.css +80 -0
- package/dist/cjs/Accordion/accordion.module.css.cjs +2 -1
- package/dist/cjs/Accordion/index.cjs +3 -3
- package/dist/cjs/Alert/alert.css +63 -0
- package/dist/cjs/Alert/alert.module.css.cjs +2 -1
- package/dist/cjs/Alert/index.cjs +8 -5
- package/dist/cjs/Avatar/avatar.css +107 -0
- package/dist/cjs/Avatar/avatar.module.css.cjs +2 -1
- package/dist/cjs/Badge/badge.css +75 -0
- package/dist/cjs/Badge/badge.module.css.cjs +10 -0
- package/dist/cjs/Badge/index.cjs +37 -0
- package/dist/cjs/Box/box.css +3 -0
- package/dist/cjs/Box/box.module.css.cjs +10 -0
- package/dist/cjs/Box/index.cjs +136 -0
- package/dist/cjs/Breadcrumbs/breadcrumbs.css +34 -0
- package/dist/cjs/Breadcrumbs/breadcrumbs.module.css.cjs +10 -0
- package/dist/cjs/Breadcrumbs/index.cjs +46 -0
- package/dist/cjs/Button/button.css +112 -0
- package/dist/cjs/Button/button.module.css.cjs +2 -1
- package/dist/cjs/Button/index.cjs +29 -4
- package/dist/cjs/Card/card.css +37 -0
- package/dist/cjs/Card/card.module.css.cjs +2 -1
- package/dist/cjs/Checkbox/checkbox.css +135 -0
- package/dist/cjs/Checkbox/checkbox.module.css.cjs +2 -1
- package/dist/cjs/Checkbox/index.cjs +3 -2
- package/dist/cjs/Chip/chip.css +55 -0
- package/dist/cjs/Chip/chip.module.css.cjs +2 -1
- package/dist/cjs/Dialog/dialog.css +144 -0
- package/dist/cjs/Dialog/dialog.module.css.cjs +2 -1
- package/dist/cjs/Dialog/index.cjs +11 -11
- package/dist/cjs/DropdownMenu/dropdownmenu.css +61 -0
- package/dist/cjs/DropdownMenu/dropdownmenu.module.css.cjs +2 -1
- package/dist/cjs/DropdownMenu/index.cjs +112 -60
- package/dist/cjs/Field/field.css +51 -0
- package/dist/cjs/Field/field.module.css.cjs +2 -1
- package/dist/cjs/Flex/index.cjs +23 -0
- package/dist/cjs/Grid/index.cjs +33 -0
- package/dist/cjs/Icons/CheckIcon.cjs +12 -0
- package/dist/cjs/Icons/ChevronDownIcon.cjs +12 -0
- package/dist/cjs/Icons/CircleCheckIcon.cjs +12 -0
- package/dist/cjs/Icons/CircleInfoIcon.cjs +12 -0
- package/dist/cjs/Icons/CircleXIcon.cjs +12 -0
- package/dist/cjs/Icons/CloseIcon.cjs +12 -0
- package/dist/cjs/Icons/IconSvg.cjs +52 -0
- package/dist/cjs/Icons/MinusIcon.cjs +12 -0
- package/dist/cjs/Icons/TriangleAlertIcon.cjs +12 -0
- package/dist/cjs/Icons/icons.css +5 -0
- package/dist/cjs/Icons/icons.module.css.cjs +2 -1
- package/dist/cjs/Link/index.cjs +38 -0
- package/dist/cjs/Link/link.css +57 -0
- package/dist/cjs/Link/link.module.css.cjs +10 -0
- package/dist/cjs/Popover/index.cjs +71 -38
- package/dist/cjs/Popover/popover.css +25 -0
- package/dist/cjs/Popover/popover.module.css.cjs +2 -1
- package/dist/cjs/Progress/progress.css +86 -0
- package/dist/cjs/Progress/progress.module.css.cjs +2 -1
- package/dist/cjs/RadioGroup/radiogroup.css +59 -0
- package/dist/cjs/RadioGroup/radiogroup.module.css.cjs +2 -1
- package/dist/cjs/Select/index.cjs +3 -4
- package/dist/cjs/Select/select.css +77 -0
- package/dist/cjs/Select/select.module.css.cjs +2 -1
- package/dist/cjs/Skeleton/skeleton.css +29 -0
- package/dist/cjs/Skeleton/skeleton.module.css.cjs +2 -1
- package/dist/cjs/Spinner/spinner.css +35 -0
- package/dist/cjs/Spinner/spinner.module.css.cjs +2 -1
- package/dist/cjs/Stack/index.cjs +18 -0
- package/dist/cjs/Switch/switch.css +123 -0
- package/dist/cjs/Switch/switch.module.css.cjs +2 -1
- package/dist/cjs/Table/index.cjs +55 -0
- package/dist/cjs/Table/table.css +57 -0
- package/dist/cjs/Table/table.module.css.cjs +10 -0
- package/dist/cjs/Tabs/index.cjs +50 -21
- package/dist/cjs/Tabs/tabs.css +62 -0
- package/dist/cjs/Tabs/tabs.module.css.cjs +2 -1
- package/dist/cjs/TextInput/index.cjs +7 -15
- package/dist/cjs/TextInput/textinput.css +93 -0
- package/dist/cjs/TextInput/textinput.module.css.cjs +2 -1
- package/dist/cjs/Textarea/index.cjs +2 -3
- package/dist/cjs/Textarea/textarea.css +62 -0
- package/dist/cjs/Textarea/textarea.module.css.cjs +2 -1
- package/dist/cjs/ThemeProvider/index.cjs +4 -1
- package/dist/cjs/ThemeProvider/themeprovider.css +3 -0
- package/dist/cjs/ThemeProvider/themeprovider.module.css.cjs +2 -1
- package/dist/cjs/Toast/index.cjs +15 -11
- package/dist/cjs/Toast/toast.css +151 -0
- package/dist/cjs/Toast/toast.module.css.cjs +2 -1
- package/dist/cjs/Tooltip/index.cjs +38 -67
- package/dist/cjs/Tooltip/tooltip.css +26 -0
- package/dist/cjs/Tooltip/tooltip.module.css.cjs +2 -1
- package/dist/cjs/hooks/floatingConfig.cjs +24 -0
- package/dist/cjs/hooks/useRovingCollection.cjs +107 -0
- package/dist/cjs/index.cjs +75 -51
- package/dist/cjs/theme.css +243 -0
- package/dist/cjs/utils/Portal.cjs +49 -0
- package/dist/cjs/utils/aria.cjs +14 -0
- package/dist/esm/Accordion/accordion.css +80 -0
- package/dist/esm/Accordion/accordion.module.css.mjs +2 -1
- package/dist/esm/Accordion/index.mjs +2 -2
- package/dist/esm/Alert/alert.css +63 -0
- package/dist/esm/Alert/alert.module.css.mjs +2 -1
- package/dist/esm/Alert/index.mjs +4 -1
- package/dist/esm/Avatar/avatar.css +107 -0
- package/dist/esm/Avatar/avatar.module.css.mjs +2 -1
- package/dist/esm/Badge/badge.css +75 -0
- package/dist/esm/Badge/badge.module.css.mjs +6 -0
- package/dist/esm/Badge/index.mjs +33 -0
- package/dist/esm/Box/box.css +3 -0
- package/dist/esm/Box/box.module.css.mjs +6 -0
- package/dist/esm/Box/index.mjs +132 -0
- package/dist/esm/Breadcrumbs/breadcrumbs.css +34 -0
- package/dist/esm/Breadcrumbs/breadcrumbs.module.css.mjs +6 -0
- package/dist/esm/Breadcrumbs/index.mjs +41 -0
- package/dist/esm/Button/button.css +112 -0
- package/dist/esm/Button/button.module.css.mjs +2 -1
- package/dist/esm/Button/index.mjs +30 -5
- package/dist/esm/Card/card.css +37 -0
- package/dist/esm/Card/card.module.css.mjs +2 -1
- package/dist/esm/Checkbox/checkbox.css +135 -0
- package/dist/esm/Checkbox/checkbox.module.css.mjs +2 -1
- package/dist/esm/Checkbox/index.mjs +2 -1
- package/dist/esm/Chip/chip.css +55 -0
- package/dist/esm/Chip/chip.module.css.mjs +2 -1
- package/dist/esm/Dialog/dialog.css +144 -0
- package/dist/esm/Dialog/dialog.module.css.mjs +2 -1
- package/dist/esm/Dialog/index.mjs +11 -11
- package/dist/esm/DropdownMenu/dropdownmenu.css +61 -0
- package/dist/esm/DropdownMenu/dropdownmenu.module.css.mjs +2 -1
- package/dist/esm/DropdownMenu/index.mjs +113 -61
- package/dist/esm/Field/field.css +51 -0
- package/dist/esm/Field/field.module.css.mjs +2 -1
- package/dist/esm/Flex/index.mjs +19 -0
- package/dist/esm/Grid/index.mjs +29 -0
- package/dist/esm/Icons/CheckIcon.mjs +10 -0
- package/dist/esm/Icons/ChevronDownIcon.mjs +10 -0
- package/dist/esm/Icons/CircleCheckIcon.mjs +10 -0
- package/dist/esm/Icons/CircleInfoIcon.mjs +10 -0
- package/dist/esm/Icons/CircleXIcon.mjs +10 -0
- package/dist/esm/Icons/CloseIcon.mjs +10 -0
- package/dist/esm/Icons/IconSvg.mjs +50 -0
- package/dist/esm/Icons/MinusIcon.mjs +10 -0
- package/dist/esm/Icons/TriangleAlertIcon.mjs +10 -0
- package/dist/esm/Icons/icons.css +5 -0
- package/dist/esm/Icons/icons.module.css.mjs +2 -1
- package/dist/esm/Link/index.mjs +34 -0
- package/dist/esm/Link/link.css +57 -0
- package/dist/esm/Link/link.module.css.mjs +6 -0
- package/dist/esm/Popover/index.mjs +72 -39
- package/dist/esm/Popover/popover.css +25 -0
- package/dist/esm/Popover/popover.module.css.mjs +2 -1
- package/dist/esm/Progress/progress.css +86 -0
- package/dist/esm/Progress/progress.module.css.mjs +2 -1
- package/dist/esm/RadioGroup/radiogroup.css +59 -0
- package/dist/esm/RadioGroup/radiogroup.module.css.mjs +2 -1
- package/dist/esm/Select/index.mjs +3 -4
- package/dist/esm/Select/select.css +77 -0
- package/dist/esm/Select/select.module.css.mjs +2 -1
- package/dist/esm/Skeleton/skeleton.css +29 -0
- package/dist/esm/Skeleton/skeleton.module.css.mjs +2 -1
- package/dist/esm/Spinner/spinner.css +35 -0
- package/dist/esm/Spinner/spinner.module.css.mjs +2 -1
- package/dist/esm/Stack/index.mjs +14 -0
- package/dist/esm/Switch/switch.css +123 -0
- package/dist/esm/Switch/switch.module.css.mjs +2 -1
- package/dist/esm/Table/index.mjs +50 -0
- package/dist/esm/Table/table.css +57 -0
- package/dist/esm/Table/table.module.css.mjs +6 -0
- package/dist/esm/Tabs/index.mjs +50 -21
- package/dist/esm/Tabs/tabs.css +62 -0
- package/dist/esm/Tabs/tabs.module.css.mjs +2 -1
- package/dist/esm/TextInput/index.mjs +9 -17
- package/dist/esm/TextInput/textinput.css +93 -0
- package/dist/esm/TextInput/textinput.module.css.mjs +2 -1
- package/dist/esm/Textarea/index.mjs +2 -3
- package/dist/esm/Textarea/textarea.css +62 -0
- package/dist/esm/Textarea/textarea.module.css.mjs +2 -1
- package/dist/esm/ThemeProvider/index.mjs +5 -3
- package/dist/esm/ThemeProvider/themeprovider.css +3 -0
- package/dist/esm/ThemeProvider/themeprovider.module.css.mjs +2 -1
- package/dist/esm/Toast/index.mjs +10 -6
- package/dist/esm/Toast/toast.css +151 -0
- package/dist/esm/Toast/toast.module.css.mjs +2 -1
- package/dist/esm/Tooltip/index.mjs +38 -67
- package/dist/esm/Tooltip/tooltip.css +26 -0
- package/dist/esm/Tooltip/tooltip.module.css.mjs +2 -1
- package/dist/esm/hooks/floatingConfig.mjs +20 -0
- package/dist/esm/hooks/useRovingCollection.mjs +105 -0
- package/dist/esm/index.mjs +18 -1
- package/dist/esm/theme.css +243 -0
- package/dist/esm/utils/Portal.mjs +45 -0
- package/dist/esm/utils/aria.mjs +12 -0
- package/dist/index.d.ts +187 -26
- package/dist/types/src/Badge/index.d.ts +13 -0
- package/dist/types/src/Box/index.d.ts +47 -0
- package/dist/types/src/Breadcrumbs/index.d.ts +29 -0
- package/dist/types/src/Button/index.d.ts +4 -7
- package/dist/types/src/DropdownMenu/index.d.ts +2 -2
- package/dist/types/src/Flex/index.d.ts +18 -0
- package/dist/types/src/Grid/index.d.ts +18 -0
- package/dist/types/src/Icons/CheckIcon.d.ts +4 -0
- package/dist/types/src/Icons/ChevronDownIcon.d.ts +4 -0
- package/dist/types/src/Icons/CircleCheckIcon.d.ts +4 -0
- package/dist/types/src/Icons/CircleInfoIcon.d.ts +4 -0
- package/dist/types/src/Icons/CircleXIcon.d.ts +4 -0
- package/dist/types/src/Icons/CloseIcon.d.ts +4 -0
- package/dist/types/src/Icons/IconSvg.d.ts +14 -0
- package/dist/types/src/Icons/MinusIcon.d.ts +4 -0
- package/dist/types/src/Icons/TriangleAlertIcon.d.ts +4 -0
- package/dist/types/src/Icons/index.d.ts +9 -30
- package/dist/types/src/Link/index.d.ts +11 -0
- package/dist/types/src/Stack/index.d.ts +15 -0
- package/dist/types/src/Table/index.d.ts +40 -0
- package/dist/types/src/ThemeProvider/index.d.ts +5 -0
- package/dist/types/src/hooks/floatingConfig.d.ts +6 -0
- package/dist/types/src/hooks/useRovingCollection.d.ts +16 -0
- package/dist/types/src/index.d.ts +18 -2
- package/dist/types/src/utils/Portal.d.ts +8 -0
- package/dist/types/src/utils/aria.d.ts +3 -0
- package/dist/types/src/utils/testUtils.d.ts +7 -0
- package/package.json +49 -5
- package/dist/cjs/Accordion/accordion.module.css.cjs.map +0 -1
- package/dist/cjs/Accordion/index.cjs.map +0 -1
- package/dist/cjs/Alert/alert.module.css.cjs.map +0 -1
- package/dist/cjs/Alert/index.cjs.map +0 -1
- package/dist/cjs/Avatar/avatar.module.css.cjs.map +0 -1
- package/dist/cjs/Avatar/index.cjs.map +0 -1
- package/dist/cjs/Button/button.module.css.cjs.map +0 -1
- package/dist/cjs/Button/index.cjs.map +0 -1
- package/dist/cjs/Card/card.module.css.cjs.map +0 -1
- package/dist/cjs/Card/index.cjs.map +0 -1
- package/dist/cjs/Checkbox/checkbox.module.css.cjs.map +0 -1
- package/dist/cjs/Checkbox/index.cjs.map +0 -1
- package/dist/cjs/Chip/chip.module.css.cjs.map +0 -1
- package/dist/cjs/Chip/index.cjs.map +0 -1
- package/dist/cjs/Dialog/dialog.module.css.cjs.map +0 -1
- package/dist/cjs/Dialog/index.cjs.map +0 -1
- package/dist/cjs/DropdownMenu/dropdownmenu.module.css.cjs.map +0 -1
- package/dist/cjs/DropdownMenu/index.cjs.map +0 -1
- package/dist/cjs/Field/field.module.css.cjs.map +0 -1
- package/dist/cjs/Field/index.cjs.map +0 -1
- package/dist/cjs/Icons/icons.module.css.cjs.map +0 -1
- package/dist/cjs/Icons/index.cjs +0 -96
- package/dist/cjs/Icons/index.cjs.map +0 -1
- package/dist/cjs/Popover/index.cjs.map +0 -1
- package/dist/cjs/Popover/popover.module.css.cjs.map +0 -1
- package/dist/cjs/Progress/index.cjs.map +0 -1
- package/dist/cjs/Progress/progress.module.css.cjs.map +0 -1
- package/dist/cjs/RadioGroup/index.cjs.map +0 -1
- package/dist/cjs/RadioGroup/radiogroup.module.css.cjs.map +0 -1
- package/dist/cjs/Select/index.cjs.map +0 -1
- package/dist/cjs/Select/select.module.css.cjs.map +0 -1
- package/dist/cjs/Skeleton/index.cjs.map +0 -1
- package/dist/cjs/Skeleton/skeleton.module.css.cjs.map +0 -1
- package/dist/cjs/Spinner/index.cjs.map +0 -1
- package/dist/cjs/Spinner/spinner.module.css.cjs.map +0 -1
- package/dist/cjs/Switch/index.cjs.map +0 -1
- package/dist/cjs/Switch/switch.module.css.cjs.map +0 -1
- package/dist/cjs/Tabs/index.cjs.map +0 -1
- package/dist/cjs/Tabs/tabs.module.css.cjs.map +0 -1
- package/dist/cjs/TextInput/index.cjs.map +0 -1
- package/dist/cjs/TextInput/textinput.module.css.cjs.map +0 -1
- package/dist/cjs/Textarea/index.cjs.map +0 -1
- package/dist/cjs/Textarea/textarea.module.css.cjs.map +0 -1
- package/dist/cjs/ThemeProvider/index.cjs.map +0 -1
- package/dist/cjs/ThemeProvider/themeprovider.module.css.cjs.map +0 -1
- package/dist/cjs/Toast/index.cjs.map +0 -1
- package/dist/cjs/Toast/toast.module.css.cjs.map +0 -1
- package/dist/cjs/Tooltip/index.cjs.map +0 -1
- package/dist/cjs/Tooltip/tooltip.module.css.cjs.map +0 -1
- package/dist/cjs/hooks/useControllableState.cjs.map +0 -1
- package/dist/cjs/hooks/useDismiss.cjs +0 -44
- package/dist/cjs/hooks/useDismiss.cjs.map +0 -1
- package/dist/cjs/hooks/useFloatingPosition.cjs +0 -68
- package/dist/cjs/hooks/useFloatingPosition.cjs.map +0 -1
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/cjs/utils/clamp.cjs +0 -9
- package/dist/cjs/utils/clamp.cjs.map +0 -1
- package/dist/cjs/utils/mergeRefs.cjs.map +0 -1
- package/dist/cjs/utils/slot.cjs.map +0 -1
- package/dist/esm/Accordion/accordion.module.css.mjs.map +0 -1
- package/dist/esm/Accordion/index.mjs.map +0 -1
- package/dist/esm/Alert/alert.module.css.mjs.map +0 -1
- package/dist/esm/Alert/index.mjs.map +0 -1
- package/dist/esm/Avatar/avatar.module.css.mjs.map +0 -1
- package/dist/esm/Avatar/index.mjs.map +0 -1
- package/dist/esm/Button/button.module.css.mjs.map +0 -1
- package/dist/esm/Button/index.mjs.map +0 -1
- package/dist/esm/Card/card.module.css.mjs.map +0 -1
- package/dist/esm/Card/index.mjs.map +0 -1
- package/dist/esm/Checkbox/checkbox.module.css.mjs.map +0 -1
- package/dist/esm/Checkbox/index.mjs.map +0 -1
- package/dist/esm/Chip/chip.module.css.mjs.map +0 -1
- package/dist/esm/Chip/index.mjs.map +0 -1
- package/dist/esm/Dialog/dialog.module.css.mjs.map +0 -1
- package/dist/esm/Dialog/index.mjs.map +0 -1
- package/dist/esm/DropdownMenu/dropdownmenu.module.css.mjs.map +0 -1
- package/dist/esm/DropdownMenu/index.mjs.map +0 -1
- package/dist/esm/Field/field.module.css.mjs.map +0 -1
- package/dist/esm/Field/index.mjs.map +0 -1
- package/dist/esm/Icons/icons.module.css.mjs.map +0 -1
- package/dist/esm/Icons/index.mjs +0 -84
- package/dist/esm/Icons/index.mjs.map +0 -1
- package/dist/esm/Popover/index.mjs.map +0 -1
- package/dist/esm/Popover/popover.module.css.mjs.map +0 -1
- package/dist/esm/Progress/index.mjs.map +0 -1
- package/dist/esm/Progress/progress.module.css.mjs.map +0 -1
- package/dist/esm/RadioGroup/index.mjs.map +0 -1
- package/dist/esm/RadioGroup/radiogroup.module.css.mjs.map +0 -1
- package/dist/esm/Select/index.mjs.map +0 -1
- package/dist/esm/Select/select.module.css.mjs.map +0 -1
- package/dist/esm/Skeleton/index.mjs.map +0 -1
- package/dist/esm/Skeleton/skeleton.module.css.mjs.map +0 -1
- package/dist/esm/Spinner/index.mjs.map +0 -1
- package/dist/esm/Spinner/spinner.module.css.mjs.map +0 -1
- package/dist/esm/Switch/index.mjs.map +0 -1
- package/dist/esm/Switch/switch.module.css.mjs.map +0 -1
- package/dist/esm/Tabs/index.mjs.map +0 -1
- package/dist/esm/Tabs/tabs.module.css.mjs.map +0 -1
- package/dist/esm/TextInput/index.mjs.map +0 -1
- package/dist/esm/TextInput/textinput.module.css.mjs.map +0 -1
- package/dist/esm/Textarea/index.mjs.map +0 -1
- package/dist/esm/Textarea/textarea.module.css.mjs.map +0 -1
- package/dist/esm/ThemeProvider/index.mjs.map +0 -1
- package/dist/esm/ThemeProvider/themeprovider.module.css.mjs.map +0 -1
- package/dist/esm/Toast/index.mjs.map +0 -1
- package/dist/esm/Toast/toast.module.css.mjs.map +0 -1
- package/dist/esm/Tooltip/index.mjs.map +0 -1
- package/dist/esm/Tooltip/tooltip.module.css.mjs.map +0 -1
- package/dist/esm/hooks/useControllableState.mjs.map +0 -1
- package/dist/esm/hooks/useDismiss.mjs +0 -42
- package/dist/esm/hooks/useDismiss.mjs.map +0 -1
- package/dist/esm/hooks/useFloatingPosition.mjs +0 -66
- package/dist/esm/hooks/useFloatingPosition.mjs.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/utils/clamp.mjs +0 -7
- package/dist/esm/utils/clamp.mjs.map +0 -1
- package/dist/esm/utils/mergeRefs.mjs.map +0 -1
- package/dist/esm/utils/slot.mjs.map +0 -1
- package/dist/styles.css +0 -3
- package/dist/styles.css.map +0 -1
- package/dist/types/src/Accordion/index.d.ts.map +0 -1
- package/dist/types/src/Alert/index.d.ts.map +0 -1
- package/dist/types/src/Avatar/index.d.ts.map +0 -1
- package/dist/types/src/Button/index.d.ts.map +0 -1
- package/dist/types/src/Card/index.d.ts.map +0 -1
- package/dist/types/src/Checkbox/index.d.ts.map +0 -1
- package/dist/types/src/Chip/index.d.ts.map +0 -1
- package/dist/types/src/Dialog/index.d.ts.map +0 -1
- package/dist/types/src/DropdownMenu/index.d.ts.map +0 -1
- package/dist/types/src/Field/index.d.ts.map +0 -1
- package/dist/types/src/Icons/index.d.ts.map +0 -1
- package/dist/types/src/Popover/index.d.ts.map +0 -1
- package/dist/types/src/Progress/index.d.ts.map +0 -1
- package/dist/types/src/RadioGroup/index.d.ts.map +0 -1
- package/dist/types/src/Select/index.d.ts.map +0 -1
- package/dist/types/src/Skeleton/index.d.ts.map +0 -1
- package/dist/types/src/Spinner/index.d.ts.map +0 -1
- package/dist/types/src/Switch/index.d.ts.map +0 -1
- package/dist/types/src/Tabs/index.d.ts.map +0 -1
- package/dist/types/src/TextInput/index.d.ts.map +0 -1
- package/dist/types/src/Textarea/index.d.ts.map +0 -1
- package/dist/types/src/ThemeProvider/index.d.ts.map +0 -1
- package/dist/types/src/Toast/index.d.ts.map +0 -1
- package/dist/types/src/Tooltip/index.d.ts.map +0 -1
- package/dist/types/src/hooks/useControllableState.d.ts.map +0 -1
- package/dist/types/src/hooks/useDismiss.d.ts +0 -18
- package/dist/types/src/hooks/useDismiss.d.ts.map +0 -1
- package/dist/types/src/hooks/useFloatingPosition.d.ts +0 -26
- package/dist/types/src/hooks/useFloatingPosition.d.ts.map +0 -1
- package/dist/types/src/index.d.ts.map +0 -1
- package/dist/types/src/types/polymorphic.d.ts.map +0 -1
- package/dist/types/src/utils/clamp.d.ts +0 -2
- package/dist/types/src/utils/clamp.d.ts.map +0 -1
- package/dist/types/src/utils/mergeRefs.d.ts.map +0 -1
- package/dist/types/src/utils/slot.d.ts.map +0 -1
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
|
+
require('./chip.css');
|
|
3
4
|
|
|
4
5
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
6
|
|
|
6
|
-
var styles = {"chip-outlined":"chip-
|
|
7
|
+
var styles = {"chip-outlined":"chip-outlined_7f705c77","chip-default":"chip-default_641c6c1e","chip-default-clickable":"chip-default-clickable_79a6d4b4","chip-outlined-clickable":"chip-outlined-clickable_6fe04947","chip-text":"chip-text_569c3392"};
|
|
7
8
|
|
|
8
9
|
exports.default = styles;
|
|
9
10
|
//# sourceMappingURL=chip.module.css.cjs.map
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
.dialog_root_1c624aa8 {
|
|
2
|
+
margin: 0;
|
|
3
|
+
padding: 0;
|
|
4
|
+
border: 0;
|
|
5
|
+
width: 100vw;
|
|
6
|
+
max-width: none;
|
|
7
|
+
height: 100vh;
|
|
8
|
+
max-height: none;
|
|
9
|
+
position: fixed;
|
|
10
|
+
inset: 0;
|
|
11
|
+
background: transparent;
|
|
12
|
+
display: grid;
|
|
13
|
+
place-items: center;
|
|
14
|
+
opacity: 0;
|
|
15
|
+
transition:
|
|
16
|
+
opacity 0.22s ease,
|
|
17
|
+
overlay 0.22s ease allow-discrete,
|
|
18
|
+
display 0.22s ease allow-discrete;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.dialog_root_1c624aa8:focus {
|
|
22
|
+
outline: none;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.dialog_root_1c624aa8:open,
|
|
26
|
+
.dialog_root_1c624aa8[open] {
|
|
27
|
+
opacity: 1;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
@starting-style {
|
|
31
|
+
.dialog_root_1c624aa8:open,
|
|
32
|
+
.dialog_root_1c624aa8[open] {
|
|
33
|
+
opacity: 0;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.dialog_root_1c624aa8::backdrop {
|
|
38
|
+
background-color: transparent;
|
|
39
|
+
transition:
|
|
40
|
+
background-color 0.22s ease,
|
|
41
|
+
overlay 0.22s ease allow-discrete,
|
|
42
|
+
display 0.22s ease allow-discrete;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.dialog_root_1c624aa8:open::backdrop,
|
|
46
|
+
.dialog_root_1c624aa8[open]::backdrop {
|
|
47
|
+
background-color: rgb(15 23 42 / 48%);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@starting-style {
|
|
51
|
+
.dialog_root_1c624aa8:open::backdrop,
|
|
52
|
+
.dialog_root_1c624aa8[open]::backdrop {
|
|
53
|
+
background-color: transparent;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.dialog_content_ee12e897 {
|
|
58
|
+
position: relative;
|
|
59
|
+
width: min(32rem, calc(100vw - 2rem));
|
|
60
|
+
max-height: calc(100vh - 2rem);
|
|
61
|
+
overflow: auto;
|
|
62
|
+
border-radius: var(--frey-radius-lg);
|
|
63
|
+
border: 1px solid var(--frey-color-border-subtle);
|
|
64
|
+
background-color: var(--frey-color-surface);
|
|
65
|
+
color: var(--frey-color-text);
|
|
66
|
+
box-shadow: 0 20px 40px rgb(0 0 0 / 24%);
|
|
67
|
+
padding: 1.5rem; /* Increased padding */
|
|
68
|
+
opacity: 0;
|
|
69
|
+
transform: translateY(0.75rem) scale(0.98);
|
|
70
|
+
transition:
|
|
71
|
+
opacity 0.22s ease,
|
|
72
|
+
transform 0.22s ease;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.dialog_root_1c624aa8:open .dialog_content_ee12e897,
|
|
76
|
+
.dialog_root_1c624aa8[open] .dialog_content_ee12e897 {
|
|
77
|
+
opacity: 1;
|
|
78
|
+
transform: translateY(0) scale(1);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
@starting-style {
|
|
82
|
+
.dialog_root_1c624aa8:open .dialog_content_ee12e897,
|
|
83
|
+
.dialog_root_1c624aa8[open] .dialog_content_ee12e897 {
|
|
84
|
+
opacity: 0;
|
|
85
|
+
transform: translateY(0.75rem) scale(0.98);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.dialog_header_c2462f2b {
|
|
90
|
+
display: flex;
|
|
91
|
+
flex-direction: column;
|
|
92
|
+
gap: 0.25rem;
|
|
93
|
+
margin-bottom: 1rem;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.dialog_title_89da9452 {
|
|
97
|
+
margin: 0;
|
|
98
|
+
font-size: 1.125rem;
|
|
99
|
+
font-weight: 600;
|
|
100
|
+
line-height: 1.5;
|
|
101
|
+
color: var(--frey-color-text-title);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.dialog_close_e5b07e60 {
|
|
105
|
+
position: absolute;
|
|
106
|
+
top: 1rem;
|
|
107
|
+
right: 1rem;
|
|
108
|
+
border: none;
|
|
109
|
+
background: transparent;
|
|
110
|
+
color: var(--frey-color-text-muted);
|
|
111
|
+
border-radius: var(--frey-radius-sm);
|
|
112
|
+
width: 2.5rem;
|
|
113
|
+
height: 2.5rem;
|
|
114
|
+
display: inline-flex;
|
|
115
|
+
align-items: center;
|
|
116
|
+
justify-content: center;
|
|
117
|
+
cursor: pointer;
|
|
118
|
+
padding: 0;
|
|
119
|
+
transition: all 0.2s ease-in-out;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.dialog_close_e5b07e60:hover {
|
|
123
|
+
background: var(--frey-color-surface-hover);
|
|
124
|
+
color: var(--frey-color-text);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.dialog_close_e5b07e60:focus-visible {
|
|
128
|
+
outline: none;
|
|
129
|
+
box-shadow: 0 0 0 2px var(--frey-focus-ring);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.dialog_close_icon_93132c68 {
|
|
133
|
+
display: block;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.dialog_description_9f437d42 {
|
|
137
|
+
margin: 0.5rem 0 0;
|
|
138
|
+
color: var(--frey-color-text-secondary, #6b7280);
|
|
139
|
+
font-size: 0.875rem;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.dialog_body_39a5839d {
|
|
143
|
+
margin-top: 0.875rem;
|
|
144
|
+
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
|
+
require('./dialog.css');
|
|
3
4
|
|
|
4
5
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
6
|
|
|
6
|
-
var styles = {"dialog_root":"
|
|
7
|
+
var styles = {"dialog_root":"dialog_root_1c624aa8","dialog_content":"dialog_content_ee12e897","dialog_header":"dialog_header_c2462f2b","dialog_title":"dialog_title_89da9452","dialog_close":"dialog_close_e5b07e60","dialog_close_icon":"dialog_close_icon_93132c68","dialog_description":"dialog_description_9f437d42","dialog_body":"dialog_body_39a5839d"};
|
|
7
8
|
|
|
8
9
|
exports.default = styles;
|
|
9
10
|
//# sourceMappingURL=dialog.module.css.cjs.map
|
|
@@ -6,9 +6,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
6
6
|
var jsxRuntime = require('react/jsx-runtime');
|
|
7
7
|
var clsx = require('clsx');
|
|
8
8
|
var React = require('react');
|
|
9
|
-
var
|
|
10
|
-
var index = require('../Icons/index.cjs');
|
|
9
|
+
var CloseIcon = require('../Icons/CloseIcon.cjs');
|
|
11
10
|
var mergeRefs = require('../utils/mergeRefs.cjs');
|
|
11
|
+
var Portal = require('../utils/Portal.cjs');
|
|
12
12
|
var slot = require('../utils/slot.cjs');
|
|
13
13
|
var dialog_module = require('./dialog.module.css.cjs');
|
|
14
14
|
|
|
@@ -141,15 +141,15 @@ const DialogContent = React.forwardRef(function DialogContent({ closeLabel = 'Cl
|
|
|
141
141
|
}, [closeOnOverlayClick, onOpenChange]);
|
|
142
142
|
if (typeof document === 'undefined' || !mounted)
|
|
143
143
|
return null;
|
|
144
|
-
return
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
144
|
+
return (jsxRuntime.jsx(Portal.default, { children: jsxRuntime.jsx("dialog", { id: dialogId, ref: mergeRefs.mergeRefs(dialogRef, ref), "aria-labelledby": titleId, "aria-describedby": descriptionId, className: clsx(dialog_module.default.dialog_root, containerClassName), onCancel: (event) => {
|
|
145
|
+
if (!closeOnEscape) {
|
|
146
|
+
event.preventDefault();
|
|
147
|
+
}
|
|
148
|
+
}, onClose: () => {
|
|
149
|
+
if (open) {
|
|
150
|
+
onOpenChange(false);
|
|
151
|
+
}
|
|
152
|
+
}, children: jsxRuntime.jsxs("div", { className: clsx(dialog_module.default.dialog_content, className), ...props, children: [!hideCloseButton && (jsxRuntime.jsx("button", { type: 'button', className: dialog_module.default.dialog_close, onClick: () => onOpenChange(false), "aria-label": closeLabel, children: jsxRuntime.jsx(CloseIcon.CloseIcon, { size: 16, className: dialog_module.default.dialog_close_icon }) })), children] }) }) }));
|
|
153
153
|
});
|
|
154
154
|
DialogContent.displayName = 'Dialog.Content';
|
|
155
155
|
const DialogHeader = React.forwardRef(function DialogHeader({ className, ...props }, ref) {
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
.dropdown_menu_9ae4191b {
|
|
2
|
+
position: fixed;
|
|
3
|
+
z-index: 55;
|
|
4
|
+
min-width: 12rem;
|
|
5
|
+
margin: 0;
|
|
6
|
+
padding: 0.25rem;
|
|
7
|
+
border: 1px solid var(--frey-color-border, #d1d5db);
|
|
8
|
+
border-radius: 0.625rem;
|
|
9
|
+
background-color: var(--frey-color-surface, #fff);
|
|
10
|
+
box-shadow: 0 14px 28px rgb(17 24 39 / 18%);
|
|
11
|
+
list-style: none;
|
|
12
|
+
animation: dropdown_in_09bd5d55 0.16s ease;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.dropdown_menu_item_container_9fc6afbd {
|
|
16
|
+
list-style: none;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.dropdown_menu_item_fbfd11bb {
|
|
20
|
+
width: 100%;
|
|
21
|
+
border: 0;
|
|
22
|
+
background: transparent;
|
|
23
|
+
color: var(--frey-color-text-primary, #111827);
|
|
24
|
+
border-radius: 0.5rem;
|
|
25
|
+
text-align: left;
|
|
26
|
+
font-size: 0.875rem;
|
|
27
|
+
line-height: 1.25;
|
|
28
|
+
padding: 0.5rem 0.625rem;
|
|
29
|
+
cursor: pointer;
|
|
30
|
+
transition: background-color 0.16s ease;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.dropdown_menu_item_fbfd11bb:hover {
|
|
34
|
+
background: var(--frey-color-surface-subtle, #f3f4f6);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.dropdown_menu_item_fbfd11bb:focus-visible {
|
|
38
|
+
outline: 2px solid var(--frey-focus-ring, #3b82f6);
|
|
39
|
+
outline-offset: 1px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.dropdown_menu_item_fbfd11bb:disabled {
|
|
43
|
+
color: var(--frey-color-text-muted, #9ca3af);
|
|
44
|
+
cursor: not-allowed;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.dropdown_menu_item_destructive_453b7c60 {
|
|
48
|
+
color: var(--frey-color-error, #b91c1c);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@keyframes dropdown_in_09bd5d55 {
|
|
52
|
+
from {
|
|
53
|
+
opacity: 0;
|
|
54
|
+
transform: translateY(-4px) scale(0.98);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
to {
|
|
58
|
+
opacity: 1;
|
|
59
|
+
transform: translateY(0) scale(1);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
|
+
require('./dropdownmenu.css');
|
|
3
4
|
|
|
4
5
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
6
|
|
|
6
|
-
var styles = {"dropdown_menu":"
|
|
7
|
+
var styles = {"dropdown_menu":"dropdown_menu_9ae4191b","dropdown_menu_item_container":"dropdown_menu_item_container_9fc6afbd","dropdown_menu_item":"dropdown_menu_item_fbfd11bb","dropdown_menu_item_destructive":"dropdown_menu_item_destructive_453b7c60"};
|
|
7
8
|
|
|
8
9
|
exports.default = styles;
|
|
9
10
|
//# sourceMappingURL=dropdownmenu.module.css.cjs.map
|
|
@@ -4,13 +4,14 @@
|
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
5
|
|
|
6
6
|
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
+
var react = require('@floating-ui/react');
|
|
7
8
|
var clsx = require('clsx');
|
|
8
9
|
var React = require('react');
|
|
9
|
-
var
|
|
10
|
+
var floatingConfig = require('../hooks/floatingConfig.cjs');
|
|
10
11
|
var useControllableState = require('../hooks/useControllableState.cjs');
|
|
11
|
-
var
|
|
12
|
-
var useFloatingPosition = require('../hooks/useFloatingPosition.cjs');
|
|
12
|
+
var useRovingCollection = require('../hooks/useRovingCollection.cjs');
|
|
13
13
|
var mergeRefs = require('../utils/mergeRefs.cjs');
|
|
14
|
+
var Portal = require('../utils/Portal.cjs');
|
|
14
15
|
var slot = require('../utils/slot.cjs');
|
|
15
16
|
var dropdownmenu_module = require('./dropdownmenu.module.css.cjs');
|
|
16
17
|
|
|
@@ -24,120 +25,171 @@ function useDropdownMenuContext() {
|
|
|
24
25
|
}
|
|
25
26
|
const DropdownMenuRoot = function DropdownMenu({ open, defaultOpen = false, onOpenChange, placement = 'bottom', offset = 8, closeOnEscape = true, closeOnOutsideClick = true, children }) {
|
|
26
27
|
const idPrefix = React.useId();
|
|
28
|
+
const menuItems = useRovingCollection.useRovingCollection();
|
|
27
29
|
const triggerRef = React.useRef(null);
|
|
30
|
+
const [referenceElement, setReferenceElement] = React.useState(null);
|
|
31
|
+
const [floatingElement, setFloatingElement] = React.useState(null);
|
|
28
32
|
const [currentOpen, handleOpenChange] = useControllableState.useControllableState(open, defaultOpen, onOpenChange);
|
|
33
|
+
const handleFloatingOpenChange = React.useCallback((nextOpen, _event, reason) => {
|
|
34
|
+
handleOpenChange(nextOpen);
|
|
35
|
+
if (!nextOpen && reason === 'escape-key') {
|
|
36
|
+
triggerRef.current?.focus();
|
|
37
|
+
}
|
|
38
|
+
}, [handleOpenChange]);
|
|
39
|
+
const floatingRootContext = react.useFloatingRootContext({
|
|
40
|
+
open: currentOpen,
|
|
41
|
+
onOpenChange: handleFloatingOpenChange,
|
|
42
|
+
elements: {
|
|
43
|
+
reference: referenceElement,
|
|
44
|
+
floating: floatingElement
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
const { refs, floatingStyles, context: floatingContext } = react.useFloating({
|
|
48
|
+
rootContext: floatingRootContext,
|
|
49
|
+
placement: floatingConfig.toFloatingPlacement(placement, 'start'),
|
|
50
|
+
middleware: floatingConfig.createFloatingMiddleware(offset),
|
|
51
|
+
strategy: 'fixed',
|
|
52
|
+
transform: false,
|
|
53
|
+
whileElementsMounted: react.autoUpdate
|
|
54
|
+
});
|
|
55
|
+
const dismiss = react.useDismiss(floatingContext, {
|
|
56
|
+
enabled: currentOpen,
|
|
57
|
+
escapeKey: closeOnEscape,
|
|
58
|
+
outsidePress: closeOnOutsideClick
|
|
59
|
+
});
|
|
60
|
+
const { getReferenceProps, getFloatingProps } = react.useInteractions([dismiss]);
|
|
61
|
+
const setReference = React.useCallback((node) => {
|
|
62
|
+
refs.setReference(node);
|
|
63
|
+
setReferenceElement(node);
|
|
64
|
+
}, [refs]);
|
|
65
|
+
const setFloating = React.useCallback((node) => {
|
|
66
|
+
refs.setFloating(node);
|
|
67
|
+
setFloatingElement(node);
|
|
68
|
+
}, [refs]);
|
|
29
69
|
const contextValue = React.useMemo(() => ({
|
|
30
70
|
open: currentOpen,
|
|
31
71
|
onOpenChange: handleOpenChange,
|
|
32
|
-
placement,
|
|
33
|
-
offset,
|
|
34
72
|
idPrefix,
|
|
35
73
|
triggerRef,
|
|
36
|
-
|
|
37
|
-
|
|
74
|
+
setReference,
|
|
75
|
+
setFloating,
|
|
76
|
+
floatingStyles,
|
|
77
|
+
floatingContext,
|
|
78
|
+
getReferenceProps,
|
|
79
|
+
getFloatingProps,
|
|
80
|
+
menuItems
|
|
38
81
|
}), [
|
|
39
82
|
currentOpen,
|
|
40
83
|
handleOpenChange,
|
|
41
|
-
placement,
|
|
42
|
-
offset,
|
|
43
84
|
idPrefix,
|
|
44
|
-
|
|
45
|
-
|
|
85
|
+
setReference,
|
|
86
|
+
setFloating,
|
|
87
|
+
floatingStyles,
|
|
88
|
+
floatingContext,
|
|
89
|
+
getReferenceProps,
|
|
90
|
+
getFloatingProps,
|
|
91
|
+
menuItems
|
|
46
92
|
]);
|
|
47
93
|
return (jsxRuntime.jsx(DropdownMenuContext.Provider, { value: contextValue, children: children }));
|
|
48
94
|
};
|
|
49
95
|
DropdownMenuRoot.displayName = 'DropdownMenu';
|
|
50
96
|
const DropdownMenuTrigger = React.forwardRef(function DropdownMenuTrigger({ children, asChild = false, onClick, type, ...triggerProps }, ref) {
|
|
51
|
-
const { open, onOpenChange, idPrefix, triggerRef } = useDropdownMenuContext();
|
|
52
|
-
const mergedRef = mergeRefs.mergeRefs(ref, triggerRef);
|
|
97
|
+
const { open, onOpenChange, idPrefix, triggerRef, setReference, getReferenceProps } = useDropdownMenuContext();
|
|
98
|
+
const mergedRef = mergeRefs.mergeRefs(ref, triggerRef, setReference);
|
|
53
99
|
const handleClick = (event) => {
|
|
54
100
|
onClick?.(event);
|
|
55
101
|
if (!event.defaultPrevented) {
|
|
56
102
|
onOpenChange(!open);
|
|
57
103
|
}
|
|
58
104
|
};
|
|
105
|
+
const referenceProps = getReferenceProps({
|
|
106
|
+
...triggerProps,
|
|
107
|
+
onClick: handleClick,
|
|
108
|
+
'aria-haspopup': 'menu',
|
|
109
|
+
'aria-expanded': open,
|
|
110
|
+
'aria-controls': `${idPrefix}-menu`
|
|
111
|
+
});
|
|
59
112
|
if (asChild) {
|
|
60
113
|
if (!React.isValidElement(children)) {
|
|
61
114
|
throw new Error('DropdownMenu.Trigger with asChild expects a single valid React element child.');
|
|
62
115
|
}
|
|
63
|
-
return (jsxRuntime.jsx(slot.Slot, { ref: mergedRef, ...
|
|
116
|
+
return (jsxRuntime.jsx(slot.Slot, { ref: mergedRef, ...referenceProps, children: children }));
|
|
64
117
|
}
|
|
65
|
-
return (jsxRuntime.jsx("button", { ref: mergedRef,
|
|
118
|
+
return (jsxRuntime.jsx("button", { ref: mergedRef, type: type ?? 'button', ...referenceProps, children: children }));
|
|
66
119
|
});
|
|
67
120
|
DropdownMenuTrigger.displayName = 'DropdownMenu.Trigger';
|
|
68
121
|
const DropdownMenuContent = React.forwardRef(function DropdownMenuContent({ className, style, children, ...props }, ref) {
|
|
69
|
-
const { open,
|
|
122
|
+
const { open, idPrefix, setFloating, floatingStyles, floatingContext, getFloatingProps, menuItems } = useDropdownMenuContext();
|
|
70
123
|
const menuRef = React.useRef(null);
|
|
71
|
-
const position = useFloatingPosition.useFloatingPosition(triggerRef, menuRef, {
|
|
72
|
-
open,
|
|
73
|
-
placement,
|
|
74
|
-
offset,
|
|
75
|
-
align: 'start'
|
|
76
|
-
});
|
|
77
|
-
useDismiss.useDismiss({
|
|
78
|
-
open,
|
|
79
|
-
onClose: () => onOpenChange(false),
|
|
80
|
-
triggerRef,
|
|
81
|
-
contentRef: menuRef,
|
|
82
|
-
closeOnEscape,
|
|
83
|
-
closeOnOutsideClick,
|
|
84
|
-
returnFocusOnClose: true
|
|
85
|
-
});
|
|
86
124
|
React.useEffect(() => {
|
|
87
|
-
if (!open
|
|
125
|
+
if (!open)
|
|
88
126
|
return;
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
if (firstItem) {
|
|
92
|
-
firstItem.focus();
|
|
93
|
-
}
|
|
94
|
-
}, [open]);
|
|
127
|
+
menuItems.focusFirst();
|
|
128
|
+
}, [open, menuItems]);
|
|
95
129
|
const handleKeyDown = (event) => {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
const items = Array.from(menuRef.current.querySelectorAll('[role="menuitem"]:not([disabled])'));
|
|
99
|
-
if (items.length === 0)
|
|
100
|
-
return;
|
|
101
|
-
const currentIndex = items.indexOf(document.activeElement);
|
|
130
|
+
const targetElement = event.target instanceof HTMLElement ? event.target : null;
|
|
131
|
+
const currentItemId = menuItems.findItemIdByElement(targetElement);
|
|
102
132
|
if (event.key === 'ArrowDown') {
|
|
103
133
|
event.preventDefault();
|
|
104
|
-
|
|
105
|
-
|
|
134
|
+
if (currentItemId) {
|
|
135
|
+
menuItems.focusNext(currentItemId);
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
menuItems.focusFirst();
|
|
139
|
+
}
|
|
106
140
|
}
|
|
107
141
|
if (event.key === 'ArrowUp') {
|
|
108
142
|
event.preventDefault();
|
|
109
|
-
|
|
110
|
-
|
|
143
|
+
if (currentItemId) {
|
|
144
|
+
menuItems.focusPrevious(currentItemId);
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
menuItems.focusLast();
|
|
148
|
+
}
|
|
111
149
|
}
|
|
112
150
|
if (event.key === 'Home') {
|
|
113
151
|
event.preventDefault();
|
|
114
|
-
|
|
152
|
+
menuItems.focusFirst();
|
|
115
153
|
}
|
|
116
154
|
if (event.key === 'End') {
|
|
117
155
|
event.preventDefault();
|
|
118
|
-
|
|
156
|
+
menuItems.focusLast();
|
|
119
157
|
}
|
|
120
158
|
};
|
|
121
|
-
|
|
159
|
+
const floatingProps = getFloatingProps({
|
|
160
|
+
...props,
|
|
161
|
+
onKeyDown: handleKeyDown
|
|
162
|
+
});
|
|
163
|
+
if (!open)
|
|
122
164
|
return null;
|
|
123
|
-
return
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
}, ...props, children: children }), document.body);
|
|
165
|
+
return (jsxRuntime.jsx(Portal.default, { children: jsxRuntime.jsx(react.FloatingFocusManager, { context: floatingContext, modal: true, returnFocus: true, outsideElementsInert: false, initialFocus: 0, children: jsxRuntime.jsx("div", { id: `${idPrefix}-menu`, role: 'menu', "aria-orientation": 'vertical', ref: mergeRefs.mergeRefs(menuRef, ref, setFloating), className: clsx(dropdownmenu_module.default.dropdown_menu, className), style: {
|
|
166
|
+
...floatingStyles,
|
|
167
|
+
...style
|
|
168
|
+
}, ...floatingProps, children: children }) }) }));
|
|
128
169
|
});
|
|
129
170
|
DropdownMenuContent.displayName = 'DropdownMenu.Content';
|
|
130
171
|
const DropdownMenuItem = React.forwardRef(function DropdownMenuItem({ disabled, destructive, onSelect, className, children, ...props }, ref) {
|
|
131
|
-
const { onOpenChange, triggerRef } = useDropdownMenuContext();
|
|
132
|
-
const
|
|
172
|
+
const { onOpenChange, triggerRef, menuItems } = useDropdownMenuContext();
|
|
173
|
+
const itemRef = React.useRef(null);
|
|
174
|
+
const itemId = React.useId();
|
|
175
|
+
const mergedRef = mergeRefs.mergeRefs(ref, itemRef);
|
|
176
|
+
React.useEffect(() => {
|
|
177
|
+
menuItems.registerItem(itemId, itemRef.current, {
|
|
178
|
+
disabled: Boolean(disabled)
|
|
179
|
+
});
|
|
180
|
+
return () => {
|
|
181
|
+
menuItems.unregisterItem(itemId);
|
|
182
|
+
};
|
|
183
|
+
}, [menuItems, itemId, disabled]);
|
|
184
|
+
const handleClick = (event) => {
|
|
133
185
|
if (disabled)
|
|
134
186
|
return;
|
|
135
187
|
onSelect?.();
|
|
136
|
-
props.onClick?.(
|
|
188
|
+
props.onClick?.(event);
|
|
137
189
|
onOpenChange(false);
|
|
138
190
|
triggerRef.current?.focus();
|
|
139
191
|
};
|
|
140
|
-
return (jsxRuntime.jsx("
|
|
192
|
+
return (jsxRuntime.jsx("div", { className: dropdownmenu_module.default.dropdown_menu_item_container, children: jsxRuntime.jsx("button", { ref: mergedRef, type: 'button', role: 'menuitem', disabled: disabled, onClick: handleClick, className: clsx(dropdownmenu_module.default.dropdown_menu_item, className, {
|
|
141
193
|
[dropdownmenu_module.default.dropdown_menu_item_destructive]: destructive
|
|
142
194
|
}), ...props, children: children }) }));
|
|
143
195
|
});
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
.field_container_5a07ab58 {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
gap: 0.25rem;
|
|
5
|
+
width: 100%;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.field_label_23f6b992 {
|
|
9
|
+
font-size: 0.875rem;
|
|
10
|
+
font-weight: 500;
|
|
11
|
+
color: var(--frey-color-text-primary);
|
|
12
|
+
user-select: none;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
label.field_label_23f6b992 {
|
|
16
|
+
cursor: pointer;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.field_label_disabled_a828e119 {
|
|
20
|
+
opacity: 0.5;
|
|
21
|
+
cursor: not-allowed;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.required_indicator_b438591b {
|
|
25
|
+
color: var(--frey-color-error, #dc2626);
|
|
26
|
+
margin-left: 0.125rem;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.helper_text_c551e6bf {
|
|
30
|
+
font-size: 0.75rem;
|
|
31
|
+
color: var(--frey-color-text-secondary, #6b7280);
|
|
32
|
+
margin: 0;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.error_text_0c43fbd7 {
|
|
36
|
+
font-size: 0.75rem;
|
|
37
|
+
color: var(--frey-color-error, #dc2626);
|
|
38
|
+
margin: 0;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.visually_hidden_d33af3d7 {
|
|
42
|
+
position: absolute;
|
|
43
|
+
width: 1px;
|
|
44
|
+
height: 1px;
|
|
45
|
+
padding: 0;
|
|
46
|
+
margin: -1px;
|
|
47
|
+
overflow: hidden;
|
|
48
|
+
clip-path: inset(50%);
|
|
49
|
+
white-space: nowrap;
|
|
50
|
+
border: 0;
|
|
51
|
+
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
|
+
require('./field.css');
|
|
3
4
|
|
|
4
5
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
6
|
|
|
6
|
-
var styles = {"field_container":"
|
|
7
|
+
var styles = {"field_container":"field_container_5a07ab58","field_label":"field_label_23f6b992","field_label_disabled":"field_label_disabled_a828e119","required_indicator":"required_indicator_b438591b","helper_text":"helper_text_c551e6bf","error_text":"error_text_0c43fbd7","visually_hidden":"visually_hidden_d33af3d7"};
|
|
7
8
|
|
|
8
9
|
exports.default = styles;
|
|
9
10
|
//# sourceMappingURL=field.module.css.cjs.map
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
+
var React = require('react');
|
|
8
|
+
var index = require('../Box/index.cjs');
|
|
9
|
+
|
|
10
|
+
const Flex = React.forwardRef(function Flex({ as, inline = false, direction, align, justify, wrap, style, ...restProps }, ref) {
|
|
11
|
+
const resolvedStyle = {
|
|
12
|
+
flexDirection: direction,
|
|
13
|
+
alignItems: align,
|
|
14
|
+
justifyContent: justify,
|
|
15
|
+
flexWrap: wrap,
|
|
16
|
+
...style
|
|
17
|
+
};
|
|
18
|
+
return (jsxRuntime.jsx(index.default, { as: as, ref: ref, display: inline ? 'inline-flex' : 'flex', style: resolvedStyle, ...restProps }));
|
|
19
|
+
});
|
|
20
|
+
Flex.displayName = 'Flex';
|
|
21
|
+
|
|
22
|
+
exports.default = Flex;
|
|
23
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
+
var React = require('react');
|
|
8
|
+
var index = require('../Box/index.cjs');
|
|
9
|
+
|
|
10
|
+
function resolveTrackTemplate(value) {
|
|
11
|
+
if (value === undefined) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
if (typeof value === 'number') {
|
|
15
|
+
return `repeat(${value}, minmax(0, 1fr))`;
|
|
16
|
+
}
|
|
17
|
+
return value;
|
|
18
|
+
}
|
|
19
|
+
const Grid = React.forwardRef(function Grid({ as, columns, rows, autoFlow, alignItems, justifyItems, style, ...restProps }, ref) {
|
|
20
|
+
const resolvedStyle = {
|
|
21
|
+
gridTemplateColumns: resolveTrackTemplate(columns),
|
|
22
|
+
gridTemplateRows: resolveTrackTemplate(rows),
|
|
23
|
+
gridAutoFlow: autoFlow,
|
|
24
|
+
alignItems,
|
|
25
|
+
justifyItems,
|
|
26
|
+
...style
|
|
27
|
+
};
|
|
28
|
+
return (jsxRuntime.jsx(index.default, { as: as, ref: ref, display: 'grid', style: resolvedStyle, ...restProps }));
|
|
29
|
+
});
|
|
30
|
+
Grid.displayName = 'Grid';
|
|
31
|
+
|
|
32
|
+
exports.default = Grid;
|
|
33
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var IconSvg = require('./IconSvg.cjs');
|
|
6
|
+
|
|
7
|
+
function CheckIcon({ size = 'md', strokeWidth = 'regular', title, className, style }) {
|
|
8
|
+
return (jsxRuntime.jsx(IconSvg.IconSvg, { size: size, strokeWidth: strokeWidth, title: title, className: className, style: style, children: jsxRuntime.jsx("path", { d: 'M5 13L10 18L19 8' }) }));
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports.CheckIcon = CheckIcon;
|
|
12
|
+
//# sourceMappingURL=CheckIcon.cjs.map
|