@mks2508/mks-ui 0.1.3 → 0.2.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/README.md +123 -60
- package/dist/core/index.d.ts +7 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/types.d.ts +79 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/index.d.ts +19 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -56
- package/dist/react/components/MorphingPopover/MorphingPopover.types.d.ts +44 -0
- package/dist/react/components/MorphingPopover/MorphingPopover.types.d.ts.map +1 -0
- package/dist/react/components/MorphingPopover/index.d.ts +46 -0
- package/dist/react/components/MorphingPopover/index.d.ts.map +1 -0
- package/dist/{components/ui/morphing-popover/morphing-popover.js → react/components/MorphingPopover/index.js} +47 -7
- package/dist/react/components/MorphingPopover/morphing-popover.module.js +5 -0
- package/dist/react/components/index.d.ts +9 -0
- package/dist/react/components/index.d.ts.map +1 -0
- package/dist/react/components/index.js +1 -0
- package/dist/react/hooks/Animation/UseAutoHeight.d.ts +30 -0
- package/dist/react/hooks/Animation/UseAutoHeight.d.ts.map +1 -0
- package/dist/{hooks/use-auto-height.js → react/hooks/Animation/UseAutoHeight.js} +16 -2
- package/dist/react/hooks/DOM/UseIsInView.d.ts +32 -0
- package/dist/react/hooks/DOM/UseIsInView.d.ts.map +1 -0
- package/dist/react/hooks/DOM/UseIsInView.js +33 -0
- package/dist/react/hooks/State/UseControlledState.d.ts +31 -0
- package/dist/react/hooks/State/UseControlledState.d.ts.map +1 -0
- package/dist/react/hooks/State/UseControlledState.js +34 -0
- package/dist/react/hooks/State/UseDataState.d.ts +21 -0
- package/dist/react/hooks/State/UseDataState.d.ts.map +1 -0
- package/dist/react/hooks/State/UseDataState.js +63 -0
- package/dist/react/hooks/index.d.ts +14 -0
- package/dist/react/hooks/index.d.ts.map +1 -0
- package/dist/react/hooks/index.js +4 -0
- package/dist/react/icons/index.d.ts +8 -0
- package/dist/react/icons/index.d.ts.map +1 -0
- package/dist/react/icons/lucide-animated/activity.d.ts +11 -0
- package/dist/react/icons/lucide-animated/activity.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/activity.js +2 -2
- package/dist/{icons → react/icons}/lucide-animated/arrow-down-to-line.d.ts +1 -1
- package/dist/react/icons/lucide-animated/arrow-down-to-line.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/arrow-down-to-line.js +1 -1
- package/dist/{icons → react/icons}/lucide-animated/arrow-up.d.ts +1 -1
- package/dist/react/icons/lucide-animated/arrow-up.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/arrow-up.js +1 -1
- package/dist/react/icons/lucide-animated/bell-electric.d.ts +11 -0
- package/dist/react/icons/lucide-animated/bell-electric.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/bell-electric.js +2 -2
- package/dist/react/icons/lucide-animated/bell.d.ts +11 -0
- package/dist/react/icons/lucide-animated/bell.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/bell.js +2 -2
- package/dist/react/icons/lucide-animated/bot.d.ts +11 -0
- package/dist/react/icons/lucide-animated/bot.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/bot.js +2 -2
- package/dist/react/icons/lucide-animated/box.d.ts +11 -0
- package/dist/react/icons/lucide-animated/box.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/box.js +2 -2
- package/dist/react/icons/lucide-animated/check.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/check.js +1 -1
- package/dist/react/icons/lucide-animated/circle-check.d.ts +11 -0
- package/dist/react/icons/lucide-animated/circle-check.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/circle-check.js +2 -2
- package/dist/react/icons/lucide-animated/delete.d.ts +11 -0
- package/dist/react/icons/lucide-animated/delete.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/delete.js +2 -2
- package/dist/react/icons/lucide-animated/download.d.ts +11 -0
- package/dist/react/icons/lucide-animated/download.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/download.js +2 -2
- package/dist/react/icons/lucide-animated/edit-2.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/edit-2.js +1 -1
- package/dist/react/icons/lucide-animated/globe.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/globe.js +1 -1
- package/dist/react/icons/lucide-animated/home.d.ts +11 -0
- package/dist/react/icons/lucide-animated/home.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/home.js +2 -2
- package/dist/react/icons/lucide-animated/index.d.ts +38 -0
- package/dist/react/icons/lucide-animated/index.d.ts.map +1 -0
- package/dist/react/icons/lucide-animated/layers.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/layers.js +1 -1
- package/dist/react/icons/lucide-animated/layout-panel-top.d.ts +11 -0
- package/dist/react/icons/lucide-animated/layout-panel-top.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/layout-panel-top.js +2 -2
- package/dist/{icons → react/icons}/lucide-animated/list.d.ts +1 -1
- package/dist/react/icons/lucide-animated/list.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/list.js +1 -1
- package/dist/react/icons/lucide-animated/package.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/package.js +1 -1
- package/dist/react/icons/lucide-animated/palette.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/palette.js +1 -1
- package/dist/react/icons/lucide-animated/plus.d.ts +11 -0
- package/dist/react/icons/lucide-animated/plus.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/plus.js +2 -2
- package/dist/react/icons/lucide-animated/refresh-cw.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/refresh-cw.js +1 -1
- package/dist/react/icons/lucide-animated/rocket.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/rocket.js +1 -1
- package/dist/react/icons/lucide-animated/save.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/save.js +1 -1
- package/dist/react/icons/lucide-animated/search.d.ts +11 -0
- package/dist/react/icons/lucide-animated/search.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/search.js +2 -2
- package/dist/react/icons/lucide-animated/settings.d.ts +11 -0
- package/dist/react/icons/lucide-animated/settings.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/settings.js +2 -2
- package/dist/{icons → react/icons}/lucide-animated/terminal.d.ts +1 -1
- package/dist/react/icons/lucide-animated/terminal.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/terminal.js +1 -1
- package/dist/react/icons/lucide-animated/trash-2.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/trash-2.js +1 -1
- package/dist/react/icons/lucide-animated/trending-down.d.ts +11 -0
- package/dist/react/icons/lucide-animated/trending-down.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/trending-down.js +2 -2
- package/dist/react/icons/lucide-animated/trending-up.d.ts +11 -0
- package/dist/react/icons/lucide-animated/trending-up.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/trending-up.js +2 -2
- package/dist/react/icons/lucide-animated/type.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/type.js +1 -1
- package/dist/react/icons/lucide-animated/upload.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/upload.js +1 -1
- package/dist/react/icons/lucide-animated/x.d.ts +11 -0
- package/dist/react/icons/lucide-animated/x.d.ts.map +1 -0
- package/dist/{icons → react/icons}/lucide-animated/x.js +2 -2
- package/dist/react/index.d.ts +19 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/lib/get-strict-context.d.ts +30 -0
- package/dist/react/lib/get-strict-context.d.ts.map +1 -0
- package/dist/react/lib/get-strict-context.js +40 -0
- package/dist/react/lib/index.d.ts +8 -0
- package/dist/react/lib/index.d.ts.map +1 -0
- package/dist/react/lib/index.js +2 -0
- package/dist/{lib → react/lib}/utils.d.ts +2 -2
- package/dist/react/lib/utils.d.ts.map +1 -0
- package/dist/{lib → react/lib}/utils.js +3 -3
- package/dist/react/primitives/AutoHeight/index.d.ts +31 -0
- package/dist/react/primitives/AutoHeight/index.d.ts.map +1 -0
- package/dist/react/primitives/AutoHeight/index.js +52 -0
- package/dist/react/primitives/CountingNumber/index.d.ts +44 -0
- package/dist/react/primitives/CountingNumber/index.d.ts.map +1 -0
- package/dist/react/primitives/CountingNumber/index.js +97 -0
- package/dist/react/primitives/Highlight/Highlight.types.d.ts +113 -0
- package/dist/react/primitives/Highlight/Highlight.types.d.ts.map +1 -0
- package/dist/react/primitives/Highlight/index.d.ts +48 -0
- package/dist/react/primitives/Highlight/index.d.ts.map +1 -0
- package/dist/{components/animate-ui/primitives/effects/highlight.js → react/primitives/Highlight/index.js} +45 -5
- package/dist/react/primitives/Slot/index.d.ts +53 -0
- package/dist/react/primitives/Slot/index.d.ts.map +1 -0
- package/dist/{components/animate-ui/primitives/animate/slot.js → react/primitives/Slot/index.js} +27 -4
- package/dist/react/primitives/index.d.ts +12 -0
- package/dist/react/primitives/index.d.ts.map +1 -0
- package/dist/react/primitives/index.js +4 -0
- package/dist/react/ui/Accordion/Accordion.styles.d.ts +47 -0
- package/dist/react/ui/Accordion/Accordion.styles.d.ts.map +1 -0
- package/dist/react/ui/Accordion/Accordion.styles.js +54 -0
- package/dist/react/ui/Accordion/Accordion.types.d.ts +160 -0
- package/dist/react/ui/Accordion/Accordion.types.d.ts.map +1 -0
- package/dist/react/ui/Accordion/index.d.ts +105 -0
- package/dist/react/ui/Accordion/index.d.ts.map +1 -0
- package/dist/react/ui/Accordion/index.js +266 -0
- package/dist/react/ui/AlertDialog/AlertDialog.styles.d.ts +28 -0
- package/dist/react/ui/AlertDialog/AlertDialog.styles.d.ts.map +1 -0
- package/dist/react/ui/AlertDialog/AlertDialog.styles.js +29 -0
- package/dist/react/ui/AlertDialog/AlertDialog.types.d.ts +235 -0
- package/dist/react/ui/AlertDialog/AlertDialog.types.d.ts.map +1 -0
- package/dist/react/ui/AlertDialog/index.d.ts +194 -0
- package/dist/react/ui/AlertDialog/index.d.ts.map +1 -0
- package/dist/react/ui/AlertDialog/index.js +319 -0
- package/dist/react/ui/Badge/Badge.styles.d.ts +16 -0
- package/dist/react/ui/Badge/Badge.styles.d.ts.map +1 -0
- package/dist/{components/ui/badge/badge.styles.js → react/ui/Badge/Badge.styles.js} +2 -6
- package/dist/react/ui/Badge/Badge.types.d.ts +21 -0
- package/dist/react/ui/Badge/Badge.types.d.ts.map +1 -0
- package/dist/react/ui/Badge/index.d.ts +20 -0
- package/dist/react/ui/Badge/index.d.ts.map +1 -0
- package/dist/react/ui/Badge/index.js +34 -0
- package/dist/react/ui/Button/Button.styles.d.ts +21 -0
- package/dist/react/ui/Button/Button.styles.d.ts.map +1 -0
- package/dist/{components/ui/button/button.styles.js → react/ui/Button/Button.styles.js} +3 -9
- package/dist/react/ui/Button/Button.types.d.ts +45 -0
- package/dist/react/ui/Button/Button.types.d.ts.map +1 -0
- package/dist/react/ui/Button/index.d.ts +22 -0
- package/dist/react/ui/Button/index.d.ts.map +1 -0
- package/dist/react/ui/Button/index.js +103 -0
- package/dist/react/ui/Card/Card.styles.d.ts +11 -0
- package/dist/react/ui/Card/Card.styles.d.ts.map +1 -0
- package/dist/react/ui/Card/Card.styles.js +24 -0
- package/dist/react/ui/Card/Card.types.d.ts +22 -0
- package/dist/react/ui/Card/Card.types.d.ts.map +1 -0
- package/dist/react/ui/Card/index.d.ts +36 -0
- package/dist/react/ui/Card/index.d.ts.map +1 -0
- package/dist/react/ui/Card/index.js +82 -0
- package/dist/react/ui/Checkbox/Checkbox.styles.d.ts +25 -0
- package/dist/react/ui/Checkbox/Checkbox.styles.d.ts.map +1 -0
- package/dist/react/ui/Checkbox/Checkbox.styles.js +34 -0
- package/dist/react/ui/Checkbox/Checkbox.types.d.ts +88 -0
- package/dist/react/ui/Checkbox/Checkbox.types.d.ts.map +1 -0
- package/dist/react/ui/Checkbox/index.d.ts +59 -0
- package/dist/react/ui/Checkbox/index.d.ts.map +1 -0
- package/dist/react/ui/Checkbox/index.js +158 -0
- package/dist/react/ui/Combobox/Combobox.styles.d.ts +7 -0
- package/dist/react/ui/Combobox/Combobox.styles.d.ts.map +1 -0
- package/dist/react/ui/Combobox/Combobox.styles.js +17 -0
- package/dist/react/ui/Combobox/Combobox.types.d.ts +49 -0
- package/dist/react/ui/Combobox/Combobox.types.d.ts.map +1 -0
- package/dist/react/ui/Combobox/index.d.ts +60 -0
- package/dist/react/ui/Combobox/index.d.ts.map +1 -0
- package/dist/{components/ui/combobox.js → react/ui/Combobox/index.js} +54 -16
- package/dist/react/ui/CornerBracket/CornerBracket.styles.d.ts +18 -0
- package/dist/react/ui/CornerBracket/CornerBracket.styles.d.ts.map +1 -0
- package/dist/react/ui/CornerBracket/CornerBracket.styles.js +30 -0
- package/dist/react/ui/CornerBracket/CornerBracket.types.d.ts +12 -0
- package/dist/react/ui/CornerBracket/CornerBracket.types.d.ts.map +1 -0
- package/dist/react/ui/CornerBracket/index.d.ts +23 -0
- package/dist/react/ui/CornerBracket/index.d.ts.map +1 -0
- package/dist/react/ui/CornerBracket/index.js +42 -0
- package/dist/react/ui/Dialog/Dialog.styles.d.ts +24 -0
- package/dist/react/ui/Dialog/Dialog.styles.d.ts.map +1 -0
- package/dist/react/ui/Dialog/Dialog.styles.js +29 -0
- package/dist/react/ui/Dialog/Dialog.types.d.ts +221 -0
- package/dist/react/ui/Dialog/Dialog.types.d.ts.map +1 -0
- package/dist/react/ui/Dialog/index.d.ts +138 -0
- package/dist/react/ui/Dialog/index.d.ts.map +1 -0
- package/dist/react/ui/Dialog/index.js +265 -0
- package/dist/react/ui/DropdownMenu/DropdownMenu.styles.d.ts +7 -0
- package/dist/react/ui/DropdownMenu/DropdownMenu.styles.d.ts.map +1 -0
- package/dist/react/ui/DropdownMenu/DropdownMenu.styles.js +16 -0
- package/dist/react/ui/DropdownMenu/DropdownMenu.types.d.ts +50 -0
- package/dist/react/ui/DropdownMenu/DropdownMenu.types.d.ts.map +1 -0
- package/dist/react/ui/DropdownMenu/index.d.ts +50 -0
- package/dist/react/ui/DropdownMenu/index.d.ts.map +1 -0
- package/dist/{components/ui/dropdown-menu.js → react/ui/DropdownMenu/index.js} +44 -14
- package/dist/react/ui/Field/Field.styles.d.ts +11 -0
- package/dist/react/ui/Field/Field.styles.d.ts.map +1 -0
- package/dist/react/ui/Field/Field.styles.js +27 -0
- package/dist/react/ui/Field/Field.types.d.ts +39 -0
- package/dist/react/ui/Field/Field.types.d.ts.map +1 -0
- package/dist/react/ui/Field/index.d.ts +56 -0
- package/dist/react/ui/Field/index.d.ts.map +1 -0
- package/dist/{components/ui/field.js → react/ui/Field/index.js} +55 -23
- package/dist/react/ui/Input/Input.styles.d.ts +7 -0
- package/dist/react/ui/Input/Input.styles.d.ts.map +1 -0
- package/dist/react/ui/Input/Input.styles.js +5 -0
- package/dist/react/ui/Input/Input.types.d.ts +9 -0
- package/dist/react/ui/Input/Input.types.d.ts.map +1 -0
- package/dist/react/ui/Input/index.d.ts +17 -0
- package/dist/react/ui/Input/index.d.ts.map +1 -0
- package/dist/react/ui/Input/index.js +29 -0
- package/dist/react/ui/InputGroup/InputGroup.styles.d.ts +15 -0
- package/dist/react/ui/InputGroup/InputGroup.styles.d.ts.map +1 -0
- package/dist/react/ui/InputGroup/InputGroup.styles.js +34 -0
- package/dist/react/ui/InputGroup/InputGroup.types.d.ts +28 -0
- package/dist/react/ui/InputGroup/InputGroup.types.d.ts.map +1 -0
- package/dist/react/ui/InputGroup/index.d.ts +28 -0
- package/dist/react/ui/InputGroup/index.d.ts.map +1 -0
- package/dist/react/ui/InputGroup/index.js +81 -0
- package/dist/react/ui/Label/Label.styles.d.ts +6 -0
- package/dist/react/ui/Label/Label.styles.d.ts.map +1 -0
- package/dist/react/ui/Label/Label.styles.js +5 -0
- package/dist/react/ui/Label/Label.types.d.ts +8 -0
- package/dist/react/ui/Label/Label.types.d.ts.map +1 -0
- package/dist/react/ui/Label/index.d.ts +14 -0
- package/dist/react/ui/Label/index.d.ts.map +1 -0
- package/dist/react/ui/Label/index.js +24 -0
- package/dist/react/ui/Menu/Menu.styles.d.ts +42 -0
- package/dist/react/ui/Menu/Menu.styles.d.ts.map +1 -0
- package/dist/react/ui/Menu/Menu.styles.js +32 -0
- package/dist/react/ui/Menu/Menu.types.d.ts +328 -0
- package/dist/react/ui/Menu/Menu.types.d.ts.map +1 -0
- package/dist/react/ui/Menu/index.d.ts +354 -0
- package/dist/react/ui/Menu/index.d.ts.map +1 -0
- package/dist/react/ui/Menu/index.js +636 -0
- package/dist/react/ui/Popover/Popover.styles.d.ts +23 -0
- package/dist/react/ui/Popover/Popover.styles.d.ts.map +1 -0
- package/dist/react/ui/Popover/Popover.styles.js +26 -0
- package/dist/react/ui/Popover/Popover.types.d.ts +204 -0
- package/dist/react/ui/Popover/Popover.types.d.ts.map +1 -0
- package/dist/react/ui/Popover/index.d.ts +133 -0
- package/dist/react/ui/Popover/index.d.ts.map +1 -0
- package/dist/react/ui/Popover/index.js +237 -0
- package/dist/react/ui/Progress/Progress.styles.d.ts +28 -0
- package/dist/react/ui/Progress/Progress.styles.d.ts.map +1 -0
- package/dist/react/ui/Progress/Progress.styles.js +30 -0
- package/dist/react/ui/Progress/Progress.types.d.ts +148 -0
- package/dist/react/ui/Progress/Progress.types.d.ts.map +1 -0
- package/dist/react/ui/Progress/index.d.ts +111 -0
- package/dist/react/ui/Progress/index.d.ts.map +1 -0
- package/dist/react/ui/Progress/index.js +170 -0
- package/dist/react/ui/Select/Select.styles.d.ts +7 -0
- package/dist/react/ui/Select/Select.styles.d.ts.map +1 -0
- package/dist/react/ui/Select/Select.styles.js +15 -0
- package/dist/react/ui/Select/Select.types.d.ts +28 -0
- package/dist/react/ui/Select/Select.types.d.ts.map +1 -0
- package/dist/react/ui/Select/index.d.ts +38 -0
- package/dist/react/ui/Select/index.d.ts.map +1 -0
- package/dist/{components/ui/select.js → react/ui/Select/index.js} +35 -13
- package/dist/react/ui/Separator/Separator.styles.d.ts +6 -0
- package/dist/react/ui/Separator/Separator.styles.d.ts.map +1 -0
- package/dist/react/ui/Separator/Separator.styles.js +5 -0
- package/dist/react/ui/Separator/Separator.types.d.ts +9 -0
- package/dist/react/ui/Separator/Separator.types.d.ts.map +1 -0
- package/dist/react/ui/Separator/index.d.ts +16 -0
- package/dist/react/ui/Separator/index.d.ts.map +1 -0
- package/dist/react/ui/Separator/index.js +29 -0
- package/dist/react/ui/Switch/Switch.styles.d.ts +26 -0
- package/dist/react/ui/Switch/Switch.styles.d.ts.map +1 -0
- package/dist/react/ui/Switch/Switch.styles.js +41 -0
- package/dist/react/ui/Switch/Switch.types.d.ts +130 -0
- package/dist/react/ui/Switch/Switch.types.d.ts.map +1 -0
- package/dist/react/ui/Switch/index.d.ts +79 -0
- package/dist/react/ui/Switch/index.d.ts.map +1 -0
- package/dist/react/ui/Switch/index.js +199 -0
- package/dist/react/ui/Tabs/Tabs.styles.d.ts +43 -0
- package/dist/react/ui/Tabs/Tabs.styles.d.ts.map +1 -0
- package/dist/react/ui/Tabs/Tabs.styles.js +26 -0
- package/dist/react/ui/Tabs/Tabs.types.d.ts +201 -0
- package/dist/react/ui/Tabs/Tabs.types.d.ts.map +1 -0
- package/dist/react/ui/Tabs/index.d.ts +141 -0
- package/dist/react/ui/Tabs/index.d.ts.map +1 -0
- package/dist/react/ui/Tabs/index.js +308 -0
- package/dist/react/ui/Textarea/Textarea.styles.d.ts +6 -0
- package/dist/react/ui/Textarea/Textarea.styles.d.ts.map +1 -0
- package/dist/react/ui/Textarea/Textarea.styles.js +5 -0
- package/dist/react/ui/Textarea/Textarea.types.d.ts +8 -0
- package/dist/react/ui/Textarea/Textarea.types.d.ts.map +1 -0
- package/dist/react/ui/Textarea/index.d.ts +14 -0
- package/dist/react/ui/Textarea/index.d.ts.map +1 -0
- package/dist/react/ui/Textarea/index.js +24 -0
- package/dist/react/ui/Tooltip/Tooltip.styles.d.ts +23 -0
- package/dist/react/ui/Tooltip/Tooltip.styles.d.ts.map +1 -0
- package/dist/react/ui/Tooltip/Tooltip.styles.js +26 -0
- package/dist/react/ui/Tooltip/Tooltip.types.d.ts +203 -0
- package/dist/react/ui/Tooltip/Tooltip.types.d.ts.map +1 -0
- package/dist/react/ui/Tooltip/index.d.ts +110 -0
- package/dist/react/ui/Tooltip/index.d.ts.map +1 -0
- package/dist/react/ui/Tooltip/index.js +219 -0
- package/dist/react/ui/index.d.ts +31 -0
- package/dist/react/ui/index.d.ts.map +1 -0
- package/dist/react/ui/index.js +37 -0
- package/dist/react.js +88 -0
- package/package.json +12 -13
- package/src/core/index.ts +7 -0
- package/src/core/types.ts +82 -0
- package/src/index.ts +20 -11
- package/src/react/components/MorphingPopover/MorphingPopover.types.ts +49 -0
- package/src/react/components/MorphingPopover/index.tsx +186 -0
- package/src/react/components/index.ts +9 -0
- package/src/{hooks/use-auto-height.tsx → react/hooks/Animation/UseAutoHeight.tsx} +24 -3
- package/src/react/hooks/DOM/UseIsInView.tsx +44 -0
- package/src/{hooks/use-controlled-state.tsx → react/hooks/State/UseControlledState.tsx} +26 -2
- package/src/{hooks/use-data-state.tsx → react/hooks/State/UseDataState.tsx} +22 -0
- package/src/react/hooks/index.ts +17 -0
- package/src/react/icons/index.ts +12 -0
- package/src/{icons → react/icons}/lucide-animated/activity.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/bell-electric.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/bell.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/bot.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/box.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/circle-check.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/delete.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/download.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/home.tsx +1 -1
- package/src/react/icons/lucide-animated/index.ts +38 -0
- package/src/{icons → react/icons}/lucide-animated/layout-panel-top.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/plus.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/search.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/settings.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/trending-down.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/trending-up.tsx +1 -1
- package/src/{icons → react/icons}/lucide-animated/x.tsx +1 -1
- package/src/react/index.ts +30 -0
- package/src/{lib → react/lib}/get-strict-context.tsx +20 -0
- package/src/react/lib/index.ts +8 -0
- package/src/{lib → react/lib}/utils.ts +2 -2
- package/src/{components/animate-ui/primitives/effects/auto-height.tsx → react/primitives/AutoHeight/index.tsx} +24 -5
- package/src/{components/animate-ui/primitives/texts/counting-number.tsx → react/primitives/CountingNumber/index.tsx} +35 -7
- package/src/react/primitives/Highlight/Highlight.types.ts +136 -0
- package/src/{components/animate-ui/primitives/effects/highlight.tsx → react/primitives/Highlight/index.tsx} +60 -123
- package/src/{components/animate-ui/primitives/animate/slot.tsx → react/primitives/Slot/index.tsx} +43 -11
- package/src/react/primitives/index.ts +13 -0
- package/src/react/ui/Accordion/Accordion.styles.ts +72 -0
- package/src/react/ui/Accordion/Accordion.types.ts +199 -0
- package/src/react/ui/Accordion/index.tsx +362 -0
- package/src/react/ui/AlertDialog/AlertDialog.styles.ts +38 -0
- package/src/react/ui/AlertDialog/AlertDialog.types.ts +296 -0
- package/src/react/ui/AlertDialog/index.tsx +540 -0
- package/src/react/ui/Badge/Badge.styles.ts +43 -0
- package/src/react/ui/Badge/Badge.types.ts +26 -0
- package/src/react/ui/Badge/index.tsx +34 -0
- package/src/react/ui/Button/Button.styles.ts +57 -0
- package/src/react/ui/Button/Button.types.ts +63 -0
- package/src/react/ui/Button/index.tsx +155 -0
- package/src/react/ui/Card/Card.styles.ts +32 -0
- package/src/react/ui/Card/Card.types.ts +39 -0
- package/src/react/ui/Card/index.tsx +130 -0
- package/src/react/ui/Checkbox/Checkbox.styles.ts +40 -0
- package/src/react/ui/Checkbox/Checkbox.types.ts +98 -0
- package/src/react/ui/Checkbox/index.tsx +233 -0
- package/src/react/ui/Combobox/Combobox.styles.ts +34 -0
- package/src/react/ui/Combobox/Combobox.types.ts +89 -0
- package/src/react/ui/Combobox/index.tsx +331 -0
- package/src/react/ui/CornerBracket/CornerBracket.styles.ts +38 -0
- package/src/react/ui/CornerBracket/CornerBracket.types.ts +15 -0
- package/src/react/ui/CornerBracket/index.tsx +49 -0
- package/src/react/ui/Dialog/Dialog.styles.ts +59 -0
- package/src/react/ui/Dialog/Dialog.types.ts +284 -0
- package/src/react/ui/Dialog/index.tsx +452 -0
- package/src/react/ui/DropdownMenu/DropdownMenu.styles.ts +35 -0
- package/src/react/ui/DropdownMenu/DropdownMenu.types.ts +81 -0
- package/src/react/ui/DropdownMenu/index.tsx +300 -0
- package/src/react/ui/Field/Field.styles.ts +47 -0
- package/src/react/ui/Field/Field.types.ts +60 -0
- package/src/react/ui/Field/index.tsx +254 -0
- package/src/{components/ui/input.tsx → react/ui/Input/Input.styles.ts} +8 -17
- package/src/react/ui/Input/Input.types.ts +10 -0
- package/src/react/ui/Input/index.tsx +32 -0
- package/src/react/ui/InputGroup/InputGroup.styles.ts +53 -0
- package/src/react/ui/InputGroup/InputGroup.types.ts +44 -0
- package/src/react/ui/InputGroup/index.tsx +147 -0
- package/src/react/ui/Label/Label.styles.ts +10 -0
- package/src/react/ui/Label/Label.types.ts +9 -0
- package/src/react/ui/Label/index.tsx +27 -0
- package/src/react/ui/Menu/Menu.styles.ts +71 -0
- package/src/react/ui/Menu/Menu.types.ts +425 -0
- package/src/react/ui/Menu/index.tsx +900 -0
- package/src/react/ui/Popover/Popover.styles.ts +55 -0
- package/src/react/ui/Popover/Popover.types.ts +261 -0
- package/src/react/ui/Popover/index.tsx +422 -0
- package/src/react/ui/Progress/Progress.styles.ts +36 -0
- package/src/react/ui/Progress/Progress.types.ts +162 -0
- package/src/react/ui/Progress/index.tsx +254 -0
- package/src/react/ui/Select/Select.styles.ts +30 -0
- package/src/react/ui/Select/Select.types.ts +51 -0
- package/src/react/ui/Select/index.tsx +225 -0
- package/src/react/ui/Separator/Separator.styles.ts +10 -0
- package/src/react/ui/Separator/Separator.types.ts +10 -0
- package/src/react/ui/Separator/index.tsx +37 -0
- package/src/react/ui/Switch/Switch.styles.ts +50 -0
- package/src/react/ui/Switch/Switch.types.ts +155 -0
- package/src/react/ui/Switch/index.tsx +253 -0
- package/src/react/ui/Tabs/Tabs.styles.ts +60 -0
- package/src/react/ui/Tabs/Tabs.types.ts +250 -0
- package/src/react/ui/Tabs/index.tsx +421 -0
- package/src/{components/ui/textarea.tsx → react/ui/Textarea/Textarea.styles.ts} +7 -15
- package/src/react/ui/Textarea/Textarea.types.ts +9 -0
- package/src/react/ui/Textarea/index.tsx +27 -0
- package/src/react/ui/Tooltip/Tooltip.styles.ts +43 -0
- package/src/react/ui/Tooltip/Tooltip.types.ts +253 -0
- package/src/react/ui/Tooltip/index.tsx +394 -0
- package/src/react/ui/index.ts +34 -0
- package/dist/components/animate-ui/primitives/animate/slot.d.ts +0 -18
- package/dist/components/animate-ui/primitives/animate/slot.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/accordion.d.ts +0 -22
- package/dist/components/animate-ui/primitives/base/accordion.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/alert-dialog.d.ts +0 -33
- package/dist/components/animate-ui/primitives/base/alert-dialog.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/checkbox.d.ts +0 -15
- package/dist/components/animate-ui/primitives/base/checkbox.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/dialog.d.ts +0 -33
- package/dist/components/animate-ui/primitives/base/dialog.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/menu.d.ts +0 -60
- package/dist/components/animate-ui/primitives/base/menu.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/popover.d.ts +0 -30
- package/dist/components/animate-ui/primitives/base/popover.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/progress.d.ts +0 -297
- package/dist/components/animate-ui/primitives/base/progress.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/switch.d.ts +0 -23
- package/dist/components/animate-ui/primitives/base/switch.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/switch.js +0 -90
- package/dist/components/animate-ui/primitives/base/tabs.d.ts +0 -33
- package/dist/components/animate-ui/primitives/base/tabs.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/base/tabs.js +0 -132
- package/dist/components/animate-ui/primitives/base/tooltip.d.ts +0 -31
- package/dist/components/animate-ui/primitives/base/tooltip.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/effects/auto-height.d.ts +0 -12
- package/dist/components/animate-ui/primitives/effects/auto-height.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/effects/auto-height.js +0 -37
- package/dist/components/animate-ui/primitives/effects/highlight.d.ts +0 -92
- package/dist/components/animate-ui/primitives/effects/highlight.d.ts.map +0 -1
- package/dist/components/animate-ui/primitives/texts/counting-number.d.ts +0 -16
- package/dist/components/animate-ui/primitives/texts/counting-number.d.ts.map +0 -1
- package/dist/components/ui/alert-dialog.d.ts +0 -21
- package/dist/components/ui/alert-dialog.d.ts.map +0 -1
- package/dist/components/ui/alert-dialog.js +0 -99
- package/dist/components/ui/badge/badge.d.ts +0 -37
- package/dist/components/ui/badge/badge.d.ts.map +0 -1
- package/dist/components/ui/badge/badge.js +0 -52
- package/dist/components/ui/badge/badge.styles.d.ts +0 -23
- package/dist/components/ui/badge/badge.styles.d.ts.map +0 -1
- package/dist/components/ui/badge/badge.types.d.ts +0 -38
- package/dist/components/ui/badge/badge.types.d.ts.map +0 -1
- package/dist/components/ui/badge/index.d.ts +0 -8
- package/dist/components/ui/badge/index.d.ts.map +0 -1
- package/dist/components/ui/badge/index.js +0 -2
- package/dist/components/ui/button/button.d.ts +0 -79
- package/dist/components/ui/button/button.d.ts.map +0 -1
- package/dist/components/ui/button/button.js +0 -161
- package/dist/components/ui/button/button.styles.d.ts +0 -33
- package/dist/components/ui/button/button.styles.d.ts.map +0 -1
- package/dist/components/ui/button/button.types.d.ts +0 -103
- package/dist/components/ui/button/button.types.d.ts.map +0 -1
- package/dist/components/ui/button/index.d.ts +0 -7
- package/dist/components/ui/button/index.d.ts.map +0 -1
- package/dist/components/ui/button/index.js +0 -2
- package/dist/components/ui/card.d.ts +0 -14
- package/dist/components/ui/card.d.ts.map +0 -1
- package/dist/components/ui/card.js +0 -67
- package/dist/components/ui/combobox.d.ts +0 -25
- package/dist/components/ui/combobox.d.ts.map +0 -1
- package/dist/components/ui/devenv-bracket.d.ts +0 -30
- package/dist/components/ui/devenv-bracket.d.ts.map +0 -1
- package/dist/components/ui/devenv-bracket.js +0 -66
- package/dist/components/ui/dropdown-menu.d.ts +0 -30
- package/dist/components/ui/dropdown-menu.d.ts.map +0 -1
- package/dist/components/ui/field.d.ts +0 -25
- package/dist/components/ui/field.d.ts.map +0 -1
- package/dist/components/ui/index.d.ts +0 -25
- package/dist/components/ui/index.d.ts.map +0 -1
- package/dist/components/ui/index.js +0 -24
- package/dist/components/ui/input-group.d.ts +0 -19
- package/dist/components/ui/input-group.d.ts.map +0 -1
- package/dist/components/ui/input-group.js +0 -84
- package/dist/components/ui/input.d.ts +0 -4
- package/dist/components/ui/input.d.ts.map +0 -1
- package/dist/components/ui/input.js +0 -17
- package/dist/components/ui/label.d.ts +0 -4
- package/dist/components/ui/label.d.ts.map +0 -1
- package/dist/components/ui/label.js +0 -15
- package/dist/components/ui/morphing-popover/index.d.ts +0 -10
- package/dist/components/ui/morphing-popover/index.d.ts.map +0 -1
- package/dist/components/ui/morphing-popover/index.js +0 -1
- package/dist/components/ui/morphing-popover/morphing-popover.d.ts +0 -54
- package/dist/components/ui/morphing-popover/morphing-popover.d.ts.map +0 -1
- package/dist/components/ui/morphing-popover/morphing-popover.module.js +0 -5
- package/dist/components/ui/select.d.ts +0 -16
- package/dist/components/ui/select.d.ts.map +0 -1
- package/dist/components/ui/separator.d.ts +0 -4
- package/dist/components/ui/separator.d.ts.map +0 -1
- package/dist/components/ui/separator.js +0 -18
- package/dist/components/ui/switch.d.ts +0 -9
- package/dist/components/ui/switch.d.ts.map +0 -1
- package/dist/components/ui/switch.js +0 -1
- package/dist/components/ui/tabs.d.ts +0 -9
- package/dist/components/ui/tabs.d.ts.map +0 -1
- package/dist/components/ui/tabs.js +0 -1
- package/dist/components/ui/textarea.d.ts +0 -4
- package/dist/components/ui/textarea.d.ts.map +0 -1
- package/dist/components/ui/textarea.js +0 -15
- package/dist/hooks/use-auto-height.d.ts +0 -11
- package/dist/hooks/use-auto-height.d.ts.map +0 -1
- package/dist/hooks/use-controlled-state.d.ts +0 -9
- package/dist/hooks/use-controlled-state.d.ts.map +0 -1
- package/dist/hooks/use-controlled-state.js +0 -17
- package/dist/hooks/use-data-state.d.ts +0 -5
- package/dist/hooks/use-data-state.d.ts.map +0 -1
- package/dist/hooks/use-is-in-view.d.ts +0 -13
- package/dist/hooks/use-is-in-view.d.ts.map +0 -1
- package/dist/icons/index.d.ts +0 -8
- package/dist/icons/index.d.ts.map +0 -1
- package/dist/icons/lucide-animated/activity.d.ts +0 -11
- package/dist/icons/lucide-animated/activity.d.ts.map +0 -1
- package/dist/icons/lucide-animated/arrow-down-to-line.d.ts.map +0 -1
- package/dist/icons/lucide-animated/arrow-up.d.ts.map +0 -1
- package/dist/icons/lucide-animated/bell-electric.d.ts +0 -11
- package/dist/icons/lucide-animated/bell-electric.d.ts.map +0 -1
- package/dist/icons/lucide-animated/bell.d.ts +0 -11
- package/dist/icons/lucide-animated/bell.d.ts.map +0 -1
- package/dist/icons/lucide-animated/bot.d.ts +0 -11
- package/dist/icons/lucide-animated/bot.d.ts.map +0 -1
- package/dist/icons/lucide-animated/box.d.ts +0 -11
- package/dist/icons/lucide-animated/box.d.ts.map +0 -1
- package/dist/icons/lucide-animated/check.d.ts.map +0 -1
- package/dist/icons/lucide-animated/circle-check.d.ts +0 -11
- package/dist/icons/lucide-animated/circle-check.d.ts.map +0 -1
- package/dist/icons/lucide-animated/delete.d.ts +0 -11
- package/dist/icons/lucide-animated/delete.d.ts.map +0 -1
- package/dist/icons/lucide-animated/download.d.ts +0 -11
- package/dist/icons/lucide-animated/download.d.ts.map +0 -1
- package/dist/icons/lucide-animated/edit-2.d.ts.map +0 -1
- package/dist/icons/lucide-animated/globe.d.ts.map +0 -1
- package/dist/icons/lucide-animated/home.d.ts +0 -11
- package/dist/icons/lucide-animated/home.d.ts.map +0 -1
- package/dist/icons/lucide-animated/index.d.ts +0 -38
- package/dist/icons/lucide-animated/index.d.ts.map +0 -1
- package/dist/icons/lucide-animated/layers.d.ts.map +0 -1
- package/dist/icons/lucide-animated/layout-panel-top.d.ts +0 -11
- package/dist/icons/lucide-animated/layout-panel-top.d.ts.map +0 -1
- package/dist/icons/lucide-animated/list.d.ts.map +0 -1
- package/dist/icons/lucide-animated/package.d.ts.map +0 -1
- package/dist/icons/lucide-animated/palette.d.ts.map +0 -1
- package/dist/icons/lucide-animated/plus.d.ts +0 -11
- package/dist/icons/lucide-animated/plus.d.ts.map +0 -1
- package/dist/icons/lucide-animated/refresh-cw.d.ts.map +0 -1
- package/dist/icons/lucide-animated/rocket.d.ts.map +0 -1
- package/dist/icons/lucide-animated/save.d.ts.map +0 -1
- package/dist/icons/lucide-animated/search.d.ts +0 -11
- package/dist/icons/lucide-animated/search.d.ts.map +0 -1
- package/dist/icons/lucide-animated/settings.d.ts +0 -11
- package/dist/icons/lucide-animated/settings.d.ts.map +0 -1
- package/dist/icons/lucide-animated/terminal.d.ts.map +0 -1
- package/dist/icons/lucide-animated/trash-2.d.ts.map +0 -1
- package/dist/icons/lucide-animated/trending-down.d.ts +0 -11
- package/dist/icons/lucide-animated/trending-down.d.ts.map +0 -1
- package/dist/icons/lucide-animated/trending-up.d.ts +0 -11
- package/dist/icons/lucide-animated/trending-up.d.ts.map +0 -1
- package/dist/icons/lucide-animated/type.d.ts.map +0 -1
- package/dist/icons/lucide-animated/upload.d.ts.map +0 -1
- package/dist/icons/lucide-animated/x.d.ts +0 -11
- package/dist/icons/lucide-animated/x.d.ts.map +0 -1
- package/dist/lib/get-strict-context.d.ts +0 -10
- package/dist/lib/get-strict-context.d.ts.map +0 -1
- package/dist/lib/get-strict-context.js +0 -20
- package/dist/lib/utils.d.ts.map +0 -1
- package/src/components/animate-ui/primitives/base/accordion.tsx +0 -179
- package/src/components/animate-ui/primitives/base/alert-dialog.tsx +0 -218
- package/src/components/animate-ui/primitives/base/checkbox.tsx +0 -153
- package/src/components/animate-ui/primitives/base/dialog.tsx +0 -203
- package/src/components/animate-ui/primitives/base/menu.tsx +0 -463
- package/src/components/animate-ui/primitives/base/popover.tsx +0 -167
- package/src/components/animate-ui/primitives/base/progress.tsx +0 -103
- package/src/components/animate-ui/primitives/base/switch.tsx +0 -158
- package/src/components/animate-ui/primitives/base/tabs.tsx +0 -202
- package/src/components/animate-ui/primitives/base/tooltip.tsx +0 -209
- package/src/components/ui/alert-dialog.tsx +0 -177
- package/src/components/ui/badge/badge.styles.ts +0 -46
- package/src/components/ui/badge/badge.tsx +0 -52
- package/src/components/ui/badge/badge.types.ts +0 -41
- package/src/components/ui/badge/index.ts +0 -8
- package/src/components/ui/button/button.styles.ts +0 -66
- package/src/components/ui/button/button.tsx +0 -209
- package/src/components/ui/button/button.types.ts +0 -125
- package/src/components/ui/button/index.ts +0 -7
- package/src/components/ui/card.tsx +0 -108
- package/src/components/ui/combobox.tsx +0 -293
- package/src/components/ui/devenv-bracket.tsx +0 -81
- package/src/components/ui/dropdown-menu.tsx +0 -261
- package/src/components/ui/field.tsx +0 -227
- package/src/components/ui/index.ts +0 -28
- package/src/components/ui/input-group.tsx +0 -149
- package/src/components/ui/label.tsx +0 -18
- package/src/components/ui/morphing-popover/index.ts +0 -10
- package/src/components/ui/morphing-popover/morphing-popover.tsx +0 -183
- package/src/components/ui/select.tsx +0 -190
- package/src/components/ui/separator.tsx +0 -25
- package/src/components/ui/switch.tsx +0 -9
- package/src/components/ui/tabs.tsx +0 -9
- package/src/hooks/use-is-in-view.tsx +0 -25
- package/src/icons/index.ts +0 -12
- package/src/icons/lucide-animated/index.ts +0 -38
- /package/dist/{components/ui/morphing-popover/morphing-popover.module-yxDDcJHZ.css → react/components/MorphingPopover/morphing-popover.module-BkcZcmVy.css} +0 -0
- /package/dist/{icons → react/icons}/index.js +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/check.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/edit-2.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/globe.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/index.js +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/layers.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/package.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/palette.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/refresh-cw.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/rocket.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/save.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/trash-2.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/type.d.ts +0 -0
- /package/dist/{icons → react/icons}/lucide-animated/upload.d.ts +0 -0
- /package/src/{components/ui/morphing-popover → react/components/MorphingPopover}/morphing-popover.module.css +0 -0
- /package/src/{icons → react/icons}/lucide-animated/arrow-down-to-line.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/arrow-up.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/check.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/edit-2.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/globe.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/layers.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/list.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/package.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/palette.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/refresh-cw.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/rocket.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/save.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/terminal.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/trash-2.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/type.tsx +0 -0
- /package/src/{icons → react/icons}/lucide-animated/upload.tsx +0 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { Menu as MenuPrimitive } from '@base-ui/react/menu';
|
|
2
|
+
import type { SlotOverrides } from '../../../core/types';
|
|
3
|
+
import type { DropdownMenuSlot } from './DropdownMenu.styles';
|
|
4
|
+
/** Props for the DropdownMenu root. */
|
|
5
|
+
type IDropdownMenuProps = MenuPrimitive.Root.Props;
|
|
6
|
+
/** Props for DropdownMenuPortal. */
|
|
7
|
+
type IDropdownMenuPortalProps = MenuPrimitive.Portal.Props;
|
|
8
|
+
/** Props for DropdownMenuTrigger. */
|
|
9
|
+
type IDropdownMenuTriggerProps = MenuPrimitive.Trigger.Props;
|
|
10
|
+
/** Props for DropdownMenuContent. */
|
|
11
|
+
interface IDropdownMenuContentProps extends MenuPrimitive.Popup.Props, Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'> {
|
|
12
|
+
/** Override classes for dropdown menu visual regions. */
|
|
13
|
+
slots?: SlotOverrides<DropdownMenuSlot>;
|
|
14
|
+
}
|
|
15
|
+
/** Props for DropdownMenuGroup. */
|
|
16
|
+
type IDropdownMenuGroupProps = MenuPrimitive.Group.Props;
|
|
17
|
+
/** Props for DropdownMenuLabel. */
|
|
18
|
+
interface IDropdownMenuLabelProps extends MenuPrimitive.GroupLabel.Props {
|
|
19
|
+
/** Indent the label to align with items that have icons. */
|
|
20
|
+
inset?: boolean;
|
|
21
|
+
}
|
|
22
|
+
/** Props for DropdownMenuItem. */
|
|
23
|
+
interface IDropdownMenuItemProps extends MenuPrimitive.Item.Props {
|
|
24
|
+
/** Indent the item. */
|
|
25
|
+
inset?: boolean;
|
|
26
|
+
/** Visual style variant. */
|
|
27
|
+
variant?: 'default' | 'destructive';
|
|
28
|
+
}
|
|
29
|
+
/** Props for DropdownMenuSub. */
|
|
30
|
+
type IDropdownMenuSubProps = MenuPrimitive.SubmenuRoot.Props;
|
|
31
|
+
/** Props for DropdownMenuSubTrigger. */
|
|
32
|
+
interface IDropdownMenuSubTriggerProps extends MenuPrimitive.SubmenuTrigger.Props {
|
|
33
|
+
inset?: boolean;
|
|
34
|
+
}
|
|
35
|
+
/** Props for DropdownMenuCheckboxItem. */
|
|
36
|
+
interface IDropdownMenuCheckboxItemProps extends MenuPrimitive.CheckboxItem.Props {
|
|
37
|
+
inset?: boolean;
|
|
38
|
+
}
|
|
39
|
+
/** Props for DropdownMenuRadioGroup. */
|
|
40
|
+
type IDropdownMenuRadioGroupProps = MenuPrimitive.RadioGroup.Props;
|
|
41
|
+
/** Props for DropdownMenuRadioItem. */
|
|
42
|
+
interface IDropdownMenuRadioItemProps extends MenuPrimitive.RadioItem.Props {
|
|
43
|
+
inset?: boolean;
|
|
44
|
+
}
|
|
45
|
+
/** Props for DropdownMenuSeparator. */
|
|
46
|
+
type IDropdownMenuSeparatorProps = MenuPrimitive.Separator.Props;
|
|
47
|
+
/** Props for DropdownMenuShortcut. */
|
|
48
|
+
type IDropdownMenuShortcutProps = React.ComponentProps<'span'>;
|
|
49
|
+
export type { IDropdownMenuProps, IDropdownMenuPortalProps, IDropdownMenuTriggerProps, IDropdownMenuContentProps, IDropdownMenuGroupProps, IDropdownMenuLabelProps, IDropdownMenuItemProps, IDropdownMenuSubProps, IDropdownMenuSubTriggerProps, IDropdownMenuCheckboxItemProps, IDropdownMenuRadioGroupProps, IDropdownMenuRadioItemProps, IDropdownMenuSeparatorProps, IDropdownMenuShortcutProps, };
|
|
50
|
+
//# sourceMappingURL=DropdownMenu.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DropdownMenu.types.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/DropdownMenu/DropdownMenu.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,uCAAuC;AACvC,KAAK,kBAAkB,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;AAEnD,oCAAoC;AACpC,KAAK,wBAAwB,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAE3D,qCAAqC;AACrC,KAAK,yBAAyB,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;AAE7D,qCAAqC;AACrC,UAAU,yBACR,SAAQ,aAAa,CAAC,KAAK,CAAC,KAAK,EAC/B,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,GAAG,MAAM,GAAG,YAAY,CAAC;IACvF,yDAAyD;IACzD,KAAK,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;CACzC;AAED,mCAAmC;AACnC,KAAK,uBAAuB,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC;AAEzD,mCAAmC;AACnC,UAAU,uBAAwB,SAAQ,aAAa,CAAC,UAAU,CAAC,KAAK;IACtE,4DAA4D;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,kCAAkC;AAClC,UAAU,sBAAuB,SAAQ,aAAa,CAAC,IAAI,CAAC,KAAK;IAC/D,uBAAuB;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;CACrC;AAED,iCAAiC;AACjC,KAAK,qBAAqB,GAAG,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC;AAE7D,wCAAwC;AACxC,UAAU,4BAA6B,SAAQ,aAAa,CAAC,cAAc,CAAC,KAAK;IAC/E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,0CAA0C;AAC1C,UAAU,8BAA+B,SAAQ,aAAa,CAAC,YAAY,CAAC,KAAK;IAC/E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wCAAwC;AACxC,KAAK,4BAA4B,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC;AAEnE,uCAAuC;AACvC,UAAU,2BAA4B,SAAQ,aAAa,CAAC,SAAS,CAAC,KAAK;IACzE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,uCAAuC;AACvC,KAAK,2BAA2B,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC;AAEjE,sCAAsC;AACtC,KAAK,0BAA0B,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;AAE/D,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,8BAA8B,EAC9B,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,GAC3B,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as React from '../../../react';
|
|
2
|
+
import type { IDropdownMenuProps, IDropdownMenuPortalProps, IDropdownMenuTriggerProps, IDropdownMenuContentProps, IDropdownMenuGroupProps, IDropdownMenuLabelProps, IDropdownMenuItemProps, IDropdownMenuSubProps, IDropdownMenuSubTriggerProps, IDropdownMenuCheckboxItemProps, IDropdownMenuRadioGroupProps, IDropdownMenuRadioItemProps, IDropdownMenuSeparatorProps, IDropdownMenuShortcutProps } from './DropdownMenu.types';
|
|
3
|
+
/**
|
|
4
|
+
* DropdownMenu — context menu built on Base UI Menu primitive.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```tsx
|
|
8
|
+
* <DropdownMenu>
|
|
9
|
+
* <DropdownMenuTrigger>Open</DropdownMenuTrigger>
|
|
10
|
+
* <DropdownMenuContent>
|
|
11
|
+
* <DropdownMenuItem>Item 1</DropdownMenuItem>
|
|
12
|
+
* <DropdownMenuSeparator />
|
|
13
|
+
* <DropdownMenuItem variant="destructive">Delete</DropdownMenuItem>
|
|
14
|
+
* </DropdownMenuContent>
|
|
15
|
+
* </DropdownMenu>
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
declare function DropdownMenu({ ...props }: IDropdownMenuProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
/** DropdownMenuPortal — renders dropdown content in a portal. */
|
|
20
|
+
declare function DropdownMenuPortal({ ...props }: IDropdownMenuPortalProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
/** DropdownMenuTrigger — element that opens the dropdown. */
|
|
22
|
+
declare function DropdownMenuTrigger({ ...props }: IDropdownMenuTriggerProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
/** DropdownMenuContent — popup content area for the dropdown. */
|
|
24
|
+
declare function DropdownMenuContent({ align, alignOffset, side, sideOffset, className, slots, ...props }: IDropdownMenuContentProps): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
/** DropdownMenuGroup — groups related menu items. */
|
|
26
|
+
declare function DropdownMenuGroup({ ...props }: IDropdownMenuGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
27
|
+
/** DropdownMenuLabel — label for a group of menu items. */
|
|
28
|
+
declare function DropdownMenuLabel({ className, inset, ...props }: IDropdownMenuLabelProps): import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
/** DropdownMenuItem — a single selectable menu item. */
|
|
30
|
+
declare function DropdownMenuItem({ className, inset, variant, ...props }: IDropdownMenuItemProps): import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
/** DropdownMenuSub — submenu root. */
|
|
32
|
+
declare function DropdownMenuSub({ ...props }: IDropdownMenuSubProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
/** DropdownMenuSubTrigger — trigger for opening a submenu. */
|
|
34
|
+
declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: IDropdownMenuSubTriggerProps): import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
/** DropdownMenuSubContent — content area for a submenu. */
|
|
36
|
+
declare function DropdownMenuSubContent({ align, alignOffset, side, sideOffset, className, ...props }: React.ComponentProps<typeof DropdownMenuContent>): import("react/jsx-runtime").JSX.Element;
|
|
37
|
+
/** DropdownMenuCheckboxItem — menu item with checkbox behavior. */
|
|
38
|
+
declare function DropdownMenuCheckboxItem({ className, children, checked, inset, ...props }: IDropdownMenuCheckboxItemProps): import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
/** DropdownMenuRadioGroup — groups radio items. */
|
|
40
|
+
declare function DropdownMenuRadioGroup({ ...props }: IDropdownMenuRadioGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
/** DropdownMenuRadioItem — menu item with radio behavior. */
|
|
42
|
+
declare function DropdownMenuRadioItem({ className, children, inset, ...props }: IDropdownMenuRadioItemProps): import("react/jsx-runtime").JSX.Element;
|
|
43
|
+
/** DropdownMenuSeparator — visual divider between menu items. */
|
|
44
|
+
declare function DropdownMenuSeparator({ className, ...props }: IDropdownMenuSeparatorProps): import("react/jsx-runtime").JSX.Element;
|
|
45
|
+
/** DropdownMenuShortcut — keyboard shortcut hint text. */
|
|
46
|
+
declare function DropdownMenuShortcut({ className, ...props }: IDropdownMenuShortcutProps): import("react/jsx-runtime").JSX.Element;
|
|
47
|
+
export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
|
|
48
|
+
export type { IDropdownMenuProps, IDropdownMenuPortalProps, IDropdownMenuTriggerProps, IDropdownMenuContentProps, IDropdownMenuGroupProps, IDropdownMenuLabelProps, IDropdownMenuItemProps, IDropdownMenuSubProps, IDropdownMenuSubTriggerProps, IDropdownMenuCheckboxItemProps, IDropdownMenuRadioGroupProps, IDropdownMenuRadioItemProps, IDropdownMenuSeparatorProps, IDropdownMenuShortcutProps, } from './DropdownMenu.types';
|
|
49
|
+
export type { DropdownMenuSlot } from './DropdownMenu.styles';
|
|
50
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/DropdownMenu/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,8BAA8B,EAC9B,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;GAcG;AACH,iBAAS,YAAY,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,2CAErD;AAED,iEAAiE;AACjE,iBAAS,kBAAkB,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,wBAAwB,2CAEjE;AAED,6DAA6D;AAC7D,iBAAS,mBAAmB,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,yBAAyB,2CAEnE;AAED,iEAAiE;AACjE,iBAAS,mBAAmB,CAAC,EAC3B,KAAe,EACf,WAAe,EACf,IAAe,EACf,UAAc,EACd,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,yBAAyB,2CAkB3B;AAED,qDAAqD;AACrD,iBAAS,iBAAiB,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,uBAAuB,2CAE/D;AAED,2DAA2D;AAC3D,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,uBAAuB,2CASzB;AAED,wDAAwD;AACxD,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,KAAK,EACL,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,sBAAsB,2CAUxB;AAED,sCAAsC;AACtC,iBAAS,eAAe,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,qBAAqB,2CAE3D;AAED,8DAA8D;AAC9D,iBAAS,sBAAsB,CAAC,EAC9B,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,4BAA4B,2CAY9B;AAED,2DAA2D;AAC3D,iBAAS,sBAAsB,CAAC,EAC9B,KAAe,EACf,WAAgB,EAChB,IAAc,EACd,UAAc,EACd,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,2CAYlD;AAED,mEAAmE;AACnE,iBAAS,wBAAwB,CAAC,EAChC,SAAS,EACT,QAAQ,EACR,OAAO,EACP,KAAK,EACL,GAAG,KAAK,EACT,EAAE,8BAA8B,2CAoBhC;AAED,mDAAmD;AACnD,iBAAS,sBAAsB,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,4BAA4B,2CAOzE;AAED,6DAA6D;AAC7D,iBAAS,qBAAqB,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,KAAK,EACL,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAmB7B;AAED,iEAAiE;AACjE,iBAAS,qBAAqB,CAAC,EAC7B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAQ7B;AAED,0DAA0D;AAC1D,iBAAS,oBAAoB,CAAC,EAC5B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,0BAA0B,2CAQ5B;AAED,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,GACvB,CAAC;AAEF,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,8BAA8B,EAC9B,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1,32 +1,51 @@
|
|
|
1
|
-
|
|
1
|
+
'use client';
|
|
2
2
|
|
|
3
3
|
import { cn } from "../../lib/utils.js";
|
|
4
|
-
import "
|
|
4
|
+
import { dropdownMenuStyles } from "./DropdownMenu.styles.js";
|
|
5
|
+
import "../../../react";
|
|
5
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
import { Menu } from "@base-ui/react/menu";
|
|
6
8
|
import { HugeiconsIcon } from "@hugeicons/react";
|
|
7
9
|
import { ArrowRight01Icon, Tick02Icon } from "@hugeicons/core-free-icons";
|
|
8
|
-
import { Menu } from "@base-ui/react/menu";
|
|
9
10
|
|
|
10
|
-
//#region src/
|
|
11
|
+
//#region src/react/ui/DropdownMenu/index.tsx
|
|
12
|
+
/**
|
|
13
|
+
* DropdownMenu — context menu built on Base UI Menu primitive.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```tsx
|
|
17
|
+
* <DropdownMenu>
|
|
18
|
+
* <DropdownMenuTrigger>Open</DropdownMenuTrigger>
|
|
19
|
+
* <DropdownMenuContent>
|
|
20
|
+
* <DropdownMenuItem>Item 1</DropdownMenuItem>
|
|
21
|
+
* <DropdownMenuSeparator />
|
|
22
|
+
* <DropdownMenuItem variant="destructive">Delete</DropdownMenuItem>
|
|
23
|
+
* </DropdownMenuContent>
|
|
24
|
+
* </DropdownMenu>
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
11
27
|
function DropdownMenu({ ...props }) {
|
|
12
28
|
return /* @__PURE__ */ jsx(Menu.Root, {
|
|
13
29
|
"data-slot": "dropdown-menu",
|
|
14
30
|
...props
|
|
15
31
|
});
|
|
16
32
|
}
|
|
33
|
+
/** DropdownMenuPortal — renders dropdown content in a portal. */
|
|
17
34
|
function DropdownMenuPortal({ ...props }) {
|
|
18
35
|
return /* @__PURE__ */ jsx(Menu.Portal, {
|
|
19
36
|
"data-slot": "dropdown-menu-portal",
|
|
20
37
|
...props
|
|
21
38
|
});
|
|
22
39
|
}
|
|
40
|
+
/** DropdownMenuTrigger — element that opens the dropdown. */
|
|
23
41
|
function DropdownMenuTrigger({ ...props }) {
|
|
24
42
|
return /* @__PURE__ */ jsx(Menu.Trigger, {
|
|
25
43
|
"data-slot": "dropdown-menu-trigger",
|
|
26
44
|
...props
|
|
27
45
|
});
|
|
28
46
|
}
|
|
29
|
-
|
|
47
|
+
/** DropdownMenuContent — popup content area for the dropdown. */
|
|
48
|
+
function DropdownMenuContent({ align = "start", alignOffset = 0, side = "bottom", sideOffset = 4, className, slots, ...props }) {
|
|
30
49
|
return /* @__PURE__ */ jsx(Menu.Portal, { children: /* @__PURE__ */ jsx(Menu.Positioner, {
|
|
31
50
|
className: "isolate z-50 outline-none",
|
|
32
51
|
align,
|
|
@@ -35,45 +54,50 @@ function DropdownMenuContent({ align = "start", alignOffset = 0, side = "bottom"
|
|
|
35
54
|
sideOffset,
|
|
36
55
|
children: /* @__PURE__ */ jsx(Menu.Popup, {
|
|
37
56
|
"data-slot": "dropdown-menu-content",
|
|
38
|
-
className: cn(
|
|
57
|
+
className: cn(dropdownMenuStyles.content, slots?.content, className),
|
|
39
58
|
...props
|
|
40
59
|
})
|
|
41
60
|
}) });
|
|
42
61
|
}
|
|
62
|
+
/** DropdownMenuGroup — groups related menu items. */
|
|
43
63
|
function DropdownMenuGroup({ ...props }) {
|
|
44
64
|
return /* @__PURE__ */ jsx(Menu.Group, {
|
|
45
65
|
"data-slot": "dropdown-menu-group",
|
|
46
66
|
...props
|
|
47
67
|
});
|
|
48
68
|
}
|
|
69
|
+
/** DropdownMenuLabel — label for a group of menu items. */
|
|
49
70
|
function DropdownMenuLabel({ className, inset, ...props }) {
|
|
50
71
|
return /* @__PURE__ */ jsx(Menu.GroupLabel, {
|
|
51
72
|
"data-slot": "dropdown-menu-label",
|
|
52
73
|
"data-inset": inset,
|
|
53
|
-
className: cn(
|
|
74
|
+
className: cn(dropdownMenuStyles.label, className),
|
|
54
75
|
...props
|
|
55
76
|
});
|
|
56
77
|
}
|
|
78
|
+
/** DropdownMenuItem — a single selectable menu item. */
|
|
57
79
|
function DropdownMenuItem({ className, inset, variant = "default", ...props }) {
|
|
58
80
|
return /* @__PURE__ */ jsx(Menu.Item, {
|
|
59
81
|
"data-slot": "dropdown-menu-item",
|
|
60
82
|
"data-inset": inset,
|
|
61
83
|
"data-variant": variant,
|
|
62
|
-
className: cn(
|
|
84
|
+
className: cn(dropdownMenuStyles.item, className),
|
|
63
85
|
...props
|
|
64
86
|
});
|
|
65
87
|
}
|
|
88
|
+
/** DropdownMenuSub — submenu root. */
|
|
66
89
|
function DropdownMenuSub({ ...props }) {
|
|
67
90
|
return /* @__PURE__ */ jsx(Menu.SubmenuRoot, {
|
|
68
91
|
"data-slot": "dropdown-menu-sub",
|
|
69
92
|
...props
|
|
70
93
|
});
|
|
71
94
|
}
|
|
95
|
+
/** DropdownMenuSubTrigger — trigger for opening a submenu. */
|
|
72
96
|
function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
|
|
73
97
|
return /* @__PURE__ */ jsxs(Menu.SubmenuTrigger, {
|
|
74
98
|
"data-slot": "dropdown-menu-sub-trigger",
|
|
75
99
|
"data-inset": inset,
|
|
76
|
-
className: cn(
|
|
100
|
+
className: cn(dropdownMenuStyles.subTrigger, className),
|
|
77
101
|
...props,
|
|
78
102
|
children: [children, /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
79
103
|
icon: ArrowRight01Icon,
|
|
@@ -82,10 +106,11 @@ function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
|
|
|
82
106
|
})]
|
|
83
107
|
});
|
|
84
108
|
}
|
|
109
|
+
/** DropdownMenuSubContent — content area for a submenu. */
|
|
85
110
|
function DropdownMenuSubContent({ align = "start", alignOffset = -3, side = "right", sideOffset = 0, className, ...props }) {
|
|
86
111
|
return /* @__PURE__ */ jsx(DropdownMenuContent, {
|
|
87
112
|
"data-slot": "dropdown-menu-sub-content",
|
|
88
|
-
className: cn(
|
|
113
|
+
className: cn(dropdownMenuStyles.subContent, className),
|
|
89
114
|
align,
|
|
90
115
|
alignOffset,
|
|
91
116
|
side,
|
|
@@ -93,11 +118,12 @@ function DropdownMenuSubContent({ align = "start", alignOffset = -3, side = "rig
|
|
|
93
118
|
...props
|
|
94
119
|
});
|
|
95
120
|
}
|
|
121
|
+
/** DropdownMenuCheckboxItem — menu item with checkbox behavior. */
|
|
96
122
|
function DropdownMenuCheckboxItem({ className, children, checked, inset, ...props }) {
|
|
97
123
|
return /* @__PURE__ */ jsxs(Menu.CheckboxItem, {
|
|
98
124
|
"data-slot": "dropdown-menu-checkbox-item",
|
|
99
125
|
"data-inset": inset,
|
|
100
|
-
className: cn(
|
|
126
|
+
className: cn(dropdownMenuStyles.checkboxItem, className),
|
|
101
127
|
checked,
|
|
102
128
|
...props,
|
|
103
129
|
children: [/* @__PURE__ */ jsx("span", {
|
|
@@ -110,17 +136,19 @@ function DropdownMenuCheckboxItem({ className, children, checked, inset, ...prop
|
|
|
110
136
|
}), children]
|
|
111
137
|
});
|
|
112
138
|
}
|
|
139
|
+
/** DropdownMenuRadioGroup — groups radio items. */
|
|
113
140
|
function DropdownMenuRadioGroup({ ...props }) {
|
|
114
141
|
return /* @__PURE__ */ jsx(Menu.RadioGroup, {
|
|
115
142
|
"data-slot": "dropdown-menu-radio-group",
|
|
116
143
|
...props
|
|
117
144
|
});
|
|
118
145
|
}
|
|
146
|
+
/** DropdownMenuRadioItem — menu item with radio behavior. */
|
|
119
147
|
function DropdownMenuRadioItem({ className, children, inset, ...props }) {
|
|
120
148
|
return /* @__PURE__ */ jsxs(Menu.RadioItem, {
|
|
121
149
|
"data-slot": "dropdown-menu-radio-item",
|
|
122
150
|
"data-inset": inset,
|
|
123
|
-
className: cn(
|
|
151
|
+
className: cn(dropdownMenuStyles.radioItem, className),
|
|
124
152
|
...props,
|
|
125
153
|
children: [/* @__PURE__ */ jsx("span", {
|
|
126
154
|
className: "absolute right-2 flex items-center justify-center pointer-events-none",
|
|
@@ -132,17 +160,19 @@ function DropdownMenuRadioItem({ className, children, inset, ...props }) {
|
|
|
132
160
|
}), children]
|
|
133
161
|
});
|
|
134
162
|
}
|
|
163
|
+
/** DropdownMenuSeparator — visual divider between menu items. */
|
|
135
164
|
function DropdownMenuSeparator({ className, ...props }) {
|
|
136
165
|
return /* @__PURE__ */ jsx(Menu.Separator, {
|
|
137
166
|
"data-slot": "dropdown-menu-separator",
|
|
138
|
-
className: cn(
|
|
167
|
+
className: cn(dropdownMenuStyles.separator, className),
|
|
139
168
|
...props
|
|
140
169
|
});
|
|
141
170
|
}
|
|
171
|
+
/** DropdownMenuShortcut — keyboard shortcut hint text. */
|
|
142
172
|
function DropdownMenuShortcut({ className, ...props }) {
|
|
143
173
|
return /* @__PURE__ */ jsx("span", {
|
|
144
174
|
"data-slot": "dropdown-menu-shortcut",
|
|
145
|
-
className: cn(
|
|
175
|
+
className: cn(dropdownMenuStyles.shortcut, className),
|
|
146
176
|
...props
|
|
147
177
|
});
|
|
148
178
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { StyleSlots } from '../../../core/types';
|
|
2
|
+
/** Visual regions for the Field component family. */
|
|
3
|
+
type FieldSlot = 'root' | 'set' | 'legend' | 'group' | 'content' | 'label' | 'title' | 'description' | 'separator' | 'error';
|
|
4
|
+
declare const fieldStyles: StyleSlots<FieldSlot>;
|
|
5
|
+
/** CVA variants for the Field root orientation. */
|
|
6
|
+
declare const fieldVariants: (props?: ({
|
|
7
|
+
orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
|
|
8
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
9
|
+
export { fieldStyles, fieldVariants };
|
|
10
|
+
export type { FieldSlot };
|
|
11
|
+
//# sourceMappingURL=Field.styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Field.styles.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/Field/Field.styles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,qDAAqD;AACrD,KAAK,SAAS,GACV,MAAM,GACN,KAAK,GACL,QAAQ,GACR,OAAO,GACP,SAAS,GACT,OAAO,GACP,OAAO,GACP,aAAa,GACb,WAAW,GACX,OAAO,CAAC;AAEZ,QAAA,MAAM,WAAW,EAAE,UAAU,CAAC,SAAS,CAWtC,CAAC;AAEF,mDAAmD;AACnD,QAAA,MAAM,aAAa;;8EAajB,CAAC;AAEH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AACtC,YAAY,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { cva } from "class-variance-authority";
|
|
2
|
+
|
|
3
|
+
//#region src/react/ui/Field/Field.styles.ts
|
|
4
|
+
const fieldStyles = {
|
|
5
|
+
root: "data-[invalid=true]:text-destructive gap-2 group/field flex w-full",
|
|
6
|
+
set: "gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3 flex flex-col",
|
|
7
|
+
legend: "mb-1.5 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base",
|
|
8
|
+
group: "gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4 group/field-group @container/field-group flex w-full flex-col",
|
|
9
|
+
content: "gap-0.5 group/field-content flex flex-1 flex-col leading-snug",
|
|
10
|
+
label: "has-data-checked:bg-primary/5 has-data-checked:border-primary/30 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10 gap-2 group-data-[disabled=true]/field:opacity-50 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 group/field-label peer/field-label flex w-fit leading-snug has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col",
|
|
11
|
+
title: "gap-2 text-sm font-medium group-data-[disabled=true]/field:opacity-50 flex w-fit items-center leading-snug",
|
|
12
|
+
description: "text-muted-foreground text-left text-sm [[data-variant=legend]+&]:-mt-1.5 leading-normal font-normal group-has-data-horizontal/field:text-balance last:mt-0 nth-last-2:-mt-1 [&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",
|
|
13
|
+
separator: "-my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2 relative",
|
|
14
|
+
error: "text-destructive text-sm font-normal"
|
|
15
|
+
};
|
|
16
|
+
/** CVA variants for the Field root orientation. */
|
|
17
|
+
const fieldVariants = cva(fieldStyles.root, {
|
|
18
|
+
variants: { orientation: {
|
|
19
|
+
vertical: "flex-col *:w-full [&>.sr-only]:w-auto",
|
|
20
|
+
horizontal: "flex-row items-center *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:items-start has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
|
|
21
|
+
responsive: "flex-col *:w-full [&>.sr-only]:w-auto @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:*:data-[slot=field-label]:flex-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"
|
|
22
|
+
} },
|
|
23
|
+
defaultVariants: { orientation: "vertical" }
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
//#endregion
|
|
27
|
+
export { fieldStyles, fieldVariants };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import type { SlotOverrides } from '../../../core/types';
|
|
3
|
+
import type { fieldVariants, FieldSlot } from './Field.styles';
|
|
4
|
+
/** Props for the FieldSet component. */
|
|
5
|
+
interface IFieldSetProps extends React.ComponentProps<'fieldset'> {
|
|
6
|
+
slots?: SlotOverrides<FieldSlot>;
|
|
7
|
+
}
|
|
8
|
+
/** Props for the FieldLegend component. */
|
|
9
|
+
interface IFieldLegendProps extends React.ComponentProps<'legend'> {
|
|
10
|
+
/** Legend display variant. */
|
|
11
|
+
variant?: 'legend' | 'label';
|
|
12
|
+
}
|
|
13
|
+
/** Props for the FieldGroup component. */
|
|
14
|
+
type IFieldGroupProps = React.ComponentProps<'div'>;
|
|
15
|
+
/** Props for the Field component. */
|
|
16
|
+
interface IFieldProps extends React.ComponentProps<'div'>, VariantProps<typeof fieldVariants> {
|
|
17
|
+
slots?: SlotOverrides<FieldSlot>;
|
|
18
|
+
}
|
|
19
|
+
/** Props for the FieldContent component. */
|
|
20
|
+
type IFieldContentProps = React.ComponentProps<'div'>;
|
|
21
|
+
/** Props for the FieldLabel component. */
|
|
22
|
+
type IFieldLabelProps = React.ComponentProps<'label'>;
|
|
23
|
+
/** Props for the FieldTitle component. */
|
|
24
|
+
type IFieldTitleProps = React.ComponentProps<'div'>;
|
|
25
|
+
/** Props for the FieldDescription component. */
|
|
26
|
+
type IFieldDescriptionProps = React.ComponentProps<'p'>;
|
|
27
|
+
/** Props for the FieldSeparator component. */
|
|
28
|
+
interface IFieldSeparatorProps extends React.ComponentProps<'div'> {
|
|
29
|
+
children?: React.ReactNode;
|
|
30
|
+
}
|
|
31
|
+
/** Props for the FieldError component. */
|
|
32
|
+
interface IFieldErrorProps extends React.ComponentProps<'div'> {
|
|
33
|
+
/** Array of error objects to display. */
|
|
34
|
+
errors?: Array<{
|
|
35
|
+
message?: string;
|
|
36
|
+
} | undefined>;
|
|
37
|
+
}
|
|
38
|
+
export type { IFieldSetProps, IFieldLegendProps, IFieldGroupProps, IFieldProps, IFieldContentProps, IFieldLabelProps, IFieldTitleProps, IFieldDescriptionProps, IFieldSeparatorProps, IFieldErrorProps, };
|
|
39
|
+
//# sourceMappingURL=Field.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Field.types.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/Field/Field.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE/D,wCAAwC;AACxC,UAAU,cAAe,SAAQ,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC;IAC/D,KAAK,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,2CAA2C;AAC3C,UAAU,iBAAkB,SAAQ,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC;IAChE,8BAA8B;IAC9B,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC9B;AAED,0CAA0C;AAC1C,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEpD,qCAAqC;AACrC,UAAU,WACR,SAAQ,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EACjC,YAAY,CAAC,OAAO,aAAa,CAAC;IACpC,KAAK,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,4CAA4C;AAC5C,KAAK,kBAAkB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEtD,0CAA0C;AAC1C,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AAEtD,0CAA0C;AAC1C,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEpD,gDAAgD;AAChD,KAAK,sBAAsB,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAExD,8CAA8C;AAC9C,UAAU,oBAAqB,SAAQ,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,0CAA0C;AAC1C,UAAU,gBAAiB,SAAQ,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;IAC5D,yCAAyC;IACzC,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAAC;CAClD;AAED,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,GACjB,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { fieldVariants } from './Field.styles';
|
|
2
|
+
import type { IFieldSetProps, IFieldLegendProps, IFieldGroupProps, IFieldProps, IFieldContentProps, IFieldLabelProps, IFieldTitleProps, IFieldDescriptionProps, IFieldSeparatorProps, IFieldErrorProps } from './Field.types';
|
|
3
|
+
/**
|
|
4
|
+
* FieldSet — groups related form fields.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```tsx
|
|
8
|
+
* <FieldSet>
|
|
9
|
+
* <Field><FieldLabel>Name</FieldLabel></Field>
|
|
10
|
+
* </FieldSet>
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
declare function FieldSet({ className, ...props }: IFieldSetProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
/** FieldLegend — legend element for a FieldSet. */
|
|
15
|
+
declare function FieldLegend({ className, variant, ...props }: IFieldLegendProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
/** FieldGroup — vertical grouping container for fields. */
|
|
17
|
+
declare function FieldGroup({ className, ...props }: IFieldGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
/**
|
|
19
|
+
* Field — form field container with orientation variants.
|
|
20
|
+
*
|
|
21
|
+
* @param orientation - Layout direction: 'vertical', 'horizontal', 'responsive'
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```tsx
|
|
25
|
+
* <Field orientation="horizontal">
|
|
26
|
+
* <FieldLabel>Email</FieldLabel>
|
|
27
|
+
* <Input type="email" />
|
|
28
|
+
* </Field>
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
declare function Field({ className, orientation, ...props }: IFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
/** FieldContent — content wrapper inside a field. */
|
|
33
|
+
declare function FieldContent({ className, ...props }: IFieldContentProps): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
/** FieldLabel — styled label using the Label component. */
|
|
35
|
+
declare function FieldLabel({ className, ...props }: IFieldLabelProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
/** FieldTitle — alternative title display for a field. */
|
|
37
|
+
declare function FieldTitle({ className, ...props }: IFieldTitleProps): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
/** FieldDescription — helper text for a field. */
|
|
39
|
+
declare function FieldDescription({ className, ...props }: IFieldDescriptionProps): import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
/** FieldSeparator — divider between fields with optional text content. */
|
|
41
|
+
declare function FieldSeparator({ children, className, ...props }: IFieldSeparatorProps): import("react/jsx-runtime").JSX.Element;
|
|
42
|
+
/**
|
|
43
|
+
* FieldError — displays validation errors for a field.
|
|
44
|
+
*
|
|
45
|
+
* @param errors - Array of error objects with message property
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```tsx
|
|
49
|
+
* <FieldError errors={[{ message: 'Required field' }]} />
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
declare function FieldError({ className, children, errors, ...props }: IFieldErrorProps): import("react/jsx-runtime").JSX.Element | null;
|
|
53
|
+
export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup, FieldLegend, FieldSeparator, FieldSet, FieldContent, FieldTitle, fieldVariants, };
|
|
54
|
+
export type { IFieldSetProps, IFieldLegendProps, IFieldGroupProps, IFieldProps, IFieldContentProps, IFieldLabelProps, IFieldTitleProps, IFieldDescriptionProps, IFieldSeparatorProps, IFieldErrorProps, } from './Field.types';
|
|
55
|
+
export type { FieldSlot } from './Field.styles';
|
|
56
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/Field/index.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAe,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;GASG;AACH,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,2CAQxD;AAED,mDAAmD;AACnD,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAkB,EAClB,GAAG,KAAK,EACT,EAAE,iBAAiB,2CASnB;AAED,2DAA2D;AAC3D,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,2CAQ5D;AAED;;;;;;;;;;;;GAYG;AACH,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,WAAwB,EACxB,GAAG,KAAK,EACT,EAAE,WAAW,2CAUb;AAED,qDAAqD;AACrD,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,2CAQhE;AAED,2DAA2D;AAC3D,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,2CAQ5D;AAED,0DAA0D;AAC1D,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,2CAQ5D;AAED,kDAAkD;AAClD,iBAAS,gBAAgB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,sBAAsB,2CAQxE;AAED,0EAA0E;AAC1E,iBAAS,cAAc,CAAC,EACtB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAmBtB;AAED;;;;;;;;;GASG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACT,EAAE,gBAAgB,kDA0ClB;AAED,OAAO,EACL,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,aAAa,GACd,CAAC;AAEF,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -1,43 +1,60 @@
|
|
|
1
|
-
|
|
1
|
+
'use client';
|
|
2
2
|
|
|
3
3
|
import { cn } from "../../lib/utils.js";
|
|
4
|
-
import { Label } from "
|
|
5
|
-
import { Separator } from "
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
4
|
+
import { Label } from "../Label/index.js";
|
|
5
|
+
import { Separator } from "../Separator/index.js";
|
|
6
|
+
import { fieldStyles, fieldVariants } from "./Field.styles.js";
|
|
7
|
+
import { useMemo } from "../../../react";
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
|
|
10
|
-
//#region src/
|
|
10
|
+
//#region src/react/ui/Field/index.tsx
|
|
11
|
+
/**
|
|
12
|
+
* FieldSet — groups related form fields.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```tsx
|
|
16
|
+
* <FieldSet>
|
|
17
|
+
* <Field><FieldLabel>Name</FieldLabel></Field>
|
|
18
|
+
* </FieldSet>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
11
21
|
function FieldSet({ className, ...props }) {
|
|
12
22
|
return /* @__PURE__ */ jsx("fieldset", {
|
|
13
23
|
"data-slot": "field-set",
|
|
14
|
-
className: cn(
|
|
24
|
+
className: cn(fieldStyles.set, className),
|
|
15
25
|
...props
|
|
16
26
|
});
|
|
17
27
|
}
|
|
28
|
+
/** FieldLegend — legend element for a FieldSet. */
|
|
18
29
|
function FieldLegend({ className, variant = "legend", ...props }) {
|
|
19
30
|
return /* @__PURE__ */ jsx("legend", {
|
|
20
31
|
"data-slot": "field-legend",
|
|
21
32
|
"data-variant": variant,
|
|
22
|
-
className: cn(
|
|
33
|
+
className: cn(fieldStyles.legend, className),
|
|
23
34
|
...props
|
|
24
35
|
});
|
|
25
36
|
}
|
|
37
|
+
/** FieldGroup — vertical grouping container for fields. */
|
|
26
38
|
function FieldGroup({ className, ...props }) {
|
|
27
39
|
return /* @__PURE__ */ jsx("div", {
|
|
28
40
|
"data-slot": "field-group",
|
|
29
|
-
className: cn(
|
|
41
|
+
className: cn(fieldStyles.group, className),
|
|
30
42
|
...props
|
|
31
43
|
});
|
|
32
44
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
45
|
+
/**
|
|
46
|
+
* Field — form field container with orientation variants.
|
|
47
|
+
*
|
|
48
|
+
* @param orientation - Layout direction: 'vertical', 'horizontal', 'responsive'
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```tsx
|
|
52
|
+
* <Field orientation="horizontal">
|
|
53
|
+
* <FieldLabel>Email</FieldLabel>
|
|
54
|
+
* <Input type="email" />
|
|
55
|
+
* </Field>
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
41
58
|
function Field({ className, orientation = "vertical", ...props }) {
|
|
42
59
|
return /* @__PURE__ */ jsx("div", {
|
|
43
60
|
role: "group",
|
|
@@ -47,39 +64,44 @@ function Field({ className, orientation = "vertical", ...props }) {
|
|
|
47
64
|
...props
|
|
48
65
|
});
|
|
49
66
|
}
|
|
67
|
+
/** FieldContent — content wrapper inside a field. */
|
|
50
68
|
function FieldContent({ className, ...props }) {
|
|
51
69
|
return /* @__PURE__ */ jsx("div", {
|
|
52
70
|
"data-slot": "field-content",
|
|
53
|
-
className: cn(
|
|
71
|
+
className: cn(fieldStyles.content, className),
|
|
54
72
|
...props
|
|
55
73
|
});
|
|
56
74
|
}
|
|
75
|
+
/** FieldLabel — styled label using the Label component. */
|
|
57
76
|
function FieldLabel({ className, ...props }) {
|
|
58
77
|
return /* @__PURE__ */ jsx(Label, {
|
|
59
78
|
"data-slot": "field-label",
|
|
60
|
-
className: cn(
|
|
79
|
+
className: cn(fieldStyles.label, className),
|
|
61
80
|
...props
|
|
62
81
|
});
|
|
63
82
|
}
|
|
83
|
+
/** FieldTitle — alternative title display for a field. */
|
|
64
84
|
function FieldTitle({ className, ...props }) {
|
|
65
85
|
return /* @__PURE__ */ jsx("div", {
|
|
66
86
|
"data-slot": "field-label",
|
|
67
|
-
className: cn(
|
|
87
|
+
className: cn(fieldStyles.title, className),
|
|
68
88
|
...props
|
|
69
89
|
});
|
|
70
90
|
}
|
|
91
|
+
/** FieldDescription — helper text for a field. */
|
|
71
92
|
function FieldDescription({ className, ...props }) {
|
|
72
93
|
return /* @__PURE__ */ jsx("p", {
|
|
73
94
|
"data-slot": "field-description",
|
|
74
|
-
className: cn(
|
|
95
|
+
className: cn(fieldStyles.description, className),
|
|
75
96
|
...props
|
|
76
97
|
});
|
|
77
98
|
}
|
|
99
|
+
/** FieldSeparator — divider between fields with optional text content. */
|
|
78
100
|
function FieldSeparator({ children, className, ...props }) {
|
|
79
101
|
return /* @__PURE__ */ jsxs("div", {
|
|
80
102
|
"data-slot": "field-separator",
|
|
81
103
|
"data-content": !!children,
|
|
82
|
-
className: cn(
|
|
104
|
+
className: cn(fieldStyles.separator, className),
|
|
83
105
|
...props,
|
|
84
106
|
children: [/* @__PURE__ */ jsx(Separator, { className: "absolute inset-0 top-1/2" }), children && /* @__PURE__ */ jsx("span", {
|
|
85
107
|
className: "text-muted-foreground px-2 bg-background relative mx-auto block w-fit",
|
|
@@ -88,6 +110,16 @@ function FieldSeparator({ children, className, ...props }) {
|
|
|
88
110
|
})]
|
|
89
111
|
});
|
|
90
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* FieldError — displays validation errors for a field.
|
|
115
|
+
*
|
|
116
|
+
* @param errors - Array of error objects with message property
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```tsx
|
|
120
|
+
* <FieldError errors={[{ message: 'Required field' }]} />
|
|
121
|
+
* ```
|
|
122
|
+
*/
|
|
91
123
|
function FieldError({ className, children, errors, ...props }) {
|
|
92
124
|
const content = useMemo(() => {
|
|
93
125
|
if (children) return children;
|
|
@@ -103,7 +135,7 @@ function FieldError({ className, children, errors, ...props }) {
|
|
|
103
135
|
return /* @__PURE__ */ jsx("div", {
|
|
104
136
|
role: "alert",
|
|
105
137
|
"data-slot": "field-error",
|
|
106
|
-
className: cn(
|
|
138
|
+
className: cn(fieldStyles.error, className),
|
|
107
139
|
...props,
|
|
108
140
|
children: content
|
|
109
141
|
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { StyleSlots } from '../../../core/types';
|
|
2
|
+
/** Visual regions for the Input component. */
|
|
3
|
+
type InputSlot = 'root';
|
|
4
|
+
declare const inputStyles: StyleSlots<InputSlot>;
|
|
5
|
+
export { inputStyles };
|
|
6
|
+
export type { InputSlot };
|
|
7
|
+
//# sourceMappingURL=Input.styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.styles.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/Input/Input.styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,8CAA8C;AAC9C,KAAK,SAAS,GAAG,MAAM,CAAC;AAExB,QAAA,MAAM,WAAW,EAAE,UAAU,CAAC,SAAS,CAEtC,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
//#region src/react/ui/Input/Input.styles.ts
|
|
2
|
+
const inputStyles = { root: "dark:bg-input/30 border-input focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-input/50 dark:disabled:bg-input/80 h-8 rounded-lg border bg-transparent px-2.5 py-1 text-base transition-colors file:h-6 file:text-sm file:font-medium focus-visible:ring-3 aria-invalid:ring-3 md:text-sm file:text-foreground placeholder:text-muted-foreground w-full min-w-0 outline-none file:inline-flex file:border-0 file:bg-transparent disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50" };
|
|
3
|
+
|
|
4
|
+
//#endregion
|
|
5
|
+
export { inputStyles };
|