@moduix/react 1.1.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/LICENSE.md +21 -0
- package/README.md +252 -0
- package/dist/components/accordion/Accordion.css +190 -0
- package/dist/components/accordion/Accordion.d.ts +13 -0
- package/dist/components/accordion/Accordion.js +67 -0
- package/dist/components/accordion/Accordion.module.js +15 -0
- package/dist/components/accordion/index.d.ts +2 -0
- package/dist/components/alert/Alert.css +108 -0
- package/dist/components/alert/Alert.d.ts +14 -0
- package/dist/components/alert/Alert.js +69 -0
- package/dist/components/alert/Alert.module.js +11 -0
- package/dist/components/angle-slider/AngleSlider.css +192 -0
- package/dist/components/angle-slider/AngleSlider.d.ts +16 -0
- package/dist/components/angle-slider/AngleSlider.js +92 -0
- package/dist/components/angle-slider/AngleSlider.module.js +13 -0
- package/dist/components/angle-slider/index.d.ts +2 -0
- package/dist/components/aspect-ratio/AspectRatio.css +14 -0
- package/dist/components/aspect-ratio/AspectRatio.d.ts +10 -0
- package/dist/components/aspect-ratio/AspectRatio.js +24 -0
- package/dist/components/aspect-ratio/AspectRatio.module.js +5 -0
- package/dist/components/avatar/Avatar.css +75 -0
- package/dist/components/avatar/Avatar.d.ts +19 -0
- package/dist/components/avatar/Avatar.js +49 -0
- package/dist/components/avatar/Avatar.module.js +9 -0
- package/dist/components/avatar/index.d.ts +2 -0
- package/dist/components/badge/Badge.css +66 -0
- package/dist/components/badge/Badge.d.ts +11 -0
- package/dist/components/badge/Badge.js +35 -0
- package/dist/components/badge/Badge.module.js +8 -0
- package/dist/components/bleed/Bleed.css +51 -0
- package/dist/components/bleed/Bleed.d.ts +12 -0
- package/dist/components/bleed/Bleed.js +22 -0
- package/dist/components/bleed/Bleed.module.js +5 -0
- package/dist/components/breadcrumbs/Breadcrumbs.css +90 -0
- package/dist/components/breadcrumbs/Breadcrumbs.d.ts +12 -0
- package/dist/components/breadcrumbs/Breadcrumbs.js +95 -0
- package/dist/components/breadcrumbs/Breadcrumbs.module.js +13 -0
- package/dist/components/button/Button.css +193 -0
- package/dist/components/button/Button.d.ts +14 -0
- package/dist/components/button/Button.js +28 -0
- package/dist/components/button/Button.module.js +5 -0
- package/dist/components/card/Card.css +148 -0
- package/dist/components/card/Card.d.ts +19 -0
- package/dist/components/card/Card.js +101 -0
- package/dist/components/card/Card.module.js +14 -0
- package/dist/components/carousel/Carousel.css +198 -0
- package/dist/components/carousel/Carousel.d.ts +19 -0
- package/dist/components/carousel/Carousel.js +128 -0
- package/dist/components/carousel/Carousel.module.js +18 -0
- package/dist/components/carousel/index.d.ts +2 -0
- package/dist/components/checkbox/Checkbox.css +135 -0
- package/dist/components/checkbox/Checkbox.d.ts +22 -0
- package/dist/components/checkbox/Checkbox.js +84 -0
- package/dist/components/checkbox/Checkbox.module.js +12 -0
- package/dist/components/checkbox/index.d.ts +2 -0
- package/dist/components/clipboard/Clipboard.css +145 -0
- package/dist/components/clipboard/Clipboard.d.ts +15 -0
- package/dist/components/clipboard/Clipboard.js +96 -0
- package/dist/components/clipboard/Clipboard.module.js +14 -0
- package/dist/components/clipboard/index.d.ts +2 -0
- package/dist/components/close-button/CloseButton.css +49 -0
- package/dist/components/close-button/CloseButton.d.ts +6 -0
- package/dist/components/close-button/CloseButton.js +39 -0
- package/dist/components/close-button/CloseButton.module.js +5 -0
- package/dist/components/collapsible/Collapsible.css +138 -0
- package/dist/components/collapsible/Collapsible.d.ts +12 -0
- package/dist/components/collapsible/Collapsible.js +59 -0
- package/dist/components/collapsible/Collapsible.module.js +12 -0
- package/dist/components/collapsible/index.d.ts +2 -0
- package/dist/components/color-picker/ColorPicker.css +433 -0
- package/dist/components/color-picker/ColorPicker.d.ts +39 -0
- package/dist/components/color-picker/ColorPicker.js +275 -0
- package/dist/components/color-picker/ColorPicker.module.js +33 -0
- package/dist/components/color-picker/index.d.ts +2 -0
- package/dist/components/combobox/Combobox.css +315 -0
- package/dist/components/combobox/Combobox.d.ts +24 -0
- package/dist/components/combobox/Combobox.js +169 -0
- package/dist/components/combobox/Combobox.module.js +23 -0
- package/dist/components/combobox/index.d.ts +2 -0
- package/dist/components/command-palette/CommandPalette.css +492 -0
- package/dist/components/command-palette/CommandPalette.d.ts +71 -0
- package/dist/components/command-palette/CommandPalette.js +383 -0
- package/dist/components/command-palette/CommandPalette.module.js +43 -0
- package/dist/components/command-palette/index.d.ts +2 -0
- package/dist/components/container/Container.css +45 -0
- package/dist/components/container/Container.d.ts +14 -0
- package/dist/components/container/Container.js +22 -0
- package/dist/components/container/Container.module.js +5 -0
- package/dist/components/date-input/DateInput.css +104 -0
- package/dist/components/date-input/DateInput.d.ts +22 -0
- package/dist/components/date-input/DateInput.js +83 -0
- package/dist/components/date-input/DateInput.module.js +12 -0
- package/dist/components/date-input/index.d.ts +2 -0
- package/dist/components/date-picker/DatePicker.css +420 -0
- package/dist/components/date-picker/DatePicker.d.ts +39 -0
- package/dist/components/date-picker/DatePicker.js +284 -0
- package/dist/components/date-picker/DatePicker.module.js +29 -0
- package/dist/components/date-picker/index.d.ts +2 -0
- package/dist/components/dialog/Dialog.css +221 -0
- package/dist/components/dialog/Dialog.d.ts +46 -0
- package/dist/components/dialog/Dialog.js +133 -0
- package/dist/components/dialog/Dialog.module.js +21 -0
- package/dist/components/dialog/index.d.ts +2 -0
- package/dist/components/drawer/Drawer.css +482 -0
- package/dist/components/drawer/Drawer.d.ts +56 -0
- package/dist/components/drawer/Drawer.js +188 -0
- package/dist/components/drawer/Drawer.module.js +32 -0
- package/dist/components/drawer/index.d.ts +2 -0
- package/dist/components/editable/Editable.css +171 -0
- package/dist/components/editable/Editable.d.ts +17 -0
- package/dist/components/editable/Editable.js +106 -0
- package/dist/components/editable/Editable.module.js +13 -0
- package/dist/components/editable/index.d.ts +2 -0
- package/dist/components/empty/Empty.css +78 -0
- package/dist/components/empty/Empty.d.ts +11 -0
- package/dist/components/empty/Empty.js +77 -0
- package/dist/components/empty/Empty.module.js +12 -0
- package/dist/components/field/Field.css +113 -0
- package/dist/components/field/Field.d.ts +25 -0
- package/dist/components/field/Field.js +104 -0
- package/dist/components/field/Field.module.js +15 -0
- package/dist/components/field/index.d.ts +2 -0
- package/dist/components/fieldset/Fieldset.css +52 -0
- package/dist/components/fieldset/Fieldset.d.ts +12 -0
- package/dist/components/fieldset/Fieldset.js +56 -0
- package/dist/components/fieldset/Fieldset.module.js +10 -0
- package/dist/components/fieldset/index.d.ts +2 -0
- package/dist/components/file-upload/FileUpload.css +290 -0
- package/dist/components/file-upload/FileUpload.d.ts +28 -0
- package/dist/components/file-upload/FileUpload.js +149 -0
- package/dist/components/file-upload/FileUpload.module.js +19 -0
- package/dist/components/file-upload/index.d.ts +2 -0
- package/dist/components/floating-panel/FloatingPanel.css +319 -0
- package/dist/components/floating-panel/FloatingPanel.d.ts +45 -0
- package/dist/components/floating-panel/FloatingPanel.js +194 -0
- package/dist/components/floating-panel/FloatingPanel.module.js +20 -0
- package/dist/components/floating-panel/index.d.ts +2 -0
- package/dist/components/heading/Heading.css +58 -0
- package/dist/components/heading/Heading.d.ts +17 -0
- package/dist/components/heading/Heading.js +32 -0
- package/dist/components/heading/Heading.module.js +5 -0
- package/dist/components/highlight/Highlight.css +15 -0
- package/dist/components/highlight/Highlight.d.ts +13 -0
- package/dist/components/highlight/Highlight.js +18 -0
- package/dist/components/highlight/Highlight.module.js +5 -0
- package/dist/components/highlight/index.d.ts +2 -0
- package/dist/components/hover-card/HoverCard.css +107 -0
- package/dist/components/hover-card/HoverCard.d.ts +28 -0
- package/dist/components/hover-card/HoverCard.js +81 -0
- package/dist/components/hover-card/HoverCard.module.js +13 -0
- package/dist/components/hover-card/index.d.ts +2 -0
- package/dist/components/image-cropper/ImageCropper.css +147 -0
- package/dist/components/image-cropper/ImageCropper.d.ts +15 -0
- package/dist/components/image-cropper/ImageCropper.js +75 -0
- package/dist/components/image-cropper/ImageCropper.module.js +12 -0
- package/dist/components/image-cropper/index.d.ts +2 -0
- package/dist/components/input/Input.css +83 -0
- package/dist/components/input/Input.d.ts +15 -0
- package/dist/components/input/Input.js +22 -0
- package/dist/components/input/Input.module.js +5 -0
- package/dist/components/input/index.d.ts +2 -0
- package/dist/components/input-group/InputGroup.css +158 -0
- package/dist/components/input-group/InputGroup.d.ts +25 -0
- package/dist/components/input-group/InputGroup.js +76 -0
- package/dist/components/input-group/InputGroup.module.js +11 -0
- package/dist/components/input-group/index.d.ts +2 -0
- package/dist/components/kbd/Kbd.css +45 -0
- package/dist/components/kbd/Kbd.d.ts +7 -0
- package/dist/components/kbd/Kbd.js +33 -0
- package/dist/components/kbd/Kbd.module.js +8 -0
- package/dist/components/lightbox/Lightbox.css +242 -0
- package/dist/components/lightbox/Lightbox.d.ts +71 -0
- package/dist/components/lightbox/Lightbox.js +219 -0
- package/dist/components/lightbox/Lightbox.module.js +22 -0
- package/dist/components/lightbox/index.d.ts +2 -0
- package/dist/components/list/List.css +118 -0
- package/dist/components/list/List.d.ts +24 -0
- package/dist/components/list/List.js +48 -0
- package/dist/components/list/List.module.js +5 -0
- package/dist/components/list/index.d.ts +2 -0
- package/dist/components/listbox/Listbox.css +255 -0
- package/dist/components/listbox/Listbox.d.ts +35 -0
- package/dist/components/listbox/Listbox.js +145 -0
- package/dist/components/listbox/Listbox.module.js +20 -0
- package/dist/components/listbox/index.d.ts +2 -0
- package/dist/components/marquee/Marquee.css +114 -0
- package/dist/components/marquee/Marquee.d.ts +13 -0
- package/dist/components/marquee/Marquee.js +65 -0
- package/dist/components/marquee/Marquee.module.js +13 -0
- package/dist/components/marquee/index.d.ts +2 -0
- package/dist/components/menu/Menu.css +371 -0
- package/dist/components/menu/Menu.d.ts +83 -0
- package/dist/components/menu/Menu.js +240 -0
- package/dist/components/menu/Menu.module.js +33 -0
- package/dist/components/menu/index.d.ts +2 -0
- package/dist/components/native-select/NativeSelect.css +104 -0
- package/dist/components/native-select/NativeSelect.d.ts +8 -0
- package/dist/components/native-select/NativeSelect.js +32 -0
- package/dist/components/native-select/NativeSelect.module.js +9 -0
- package/dist/components/native-select/index.d.ts +2 -0
- package/dist/components/number-input/NumberInput.css +162 -0
- package/dist/components/number-input/NumberInput.d.ts +16 -0
- package/dist/components/number-input/NumberInput.js +95 -0
- package/dist/components/number-input/NumberInput.module.js +14 -0
- package/dist/components/number-input/index.d.ts +2 -0
- package/dist/components/pagination/Pagination.css +99 -0
- package/dist/components/pagination/Pagination.d.ts +16 -0
- package/dist/components/pagination/Pagination.js +101 -0
- package/dist/components/pagination/Pagination.module.js +12 -0
- package/dist/components/pagination/index.d.ts +2 -0
- package/dist/components/password-input/PasswordInput.css +155 -0
- package/dist/components/password-input/PasswordInput.d.ts +14 -0
- package/dist/components/password-input/PasswordInput.js +77 -0
- package/dist/components/password-input/PasswordInput.module.js +12 -0
- package/dist/components/password-input/index.d.ts +2 -0
- package/dist/components/pin-input/PinInput.css +96 -0
- package/dist/components/pin-input/PinInput.d.ts +23 -0
- package/dist/components/pin-input/PinInput.js +85 -0
- package/dist/components/pin-input/PinInput.module.js +11 -0
- package/dist/components/pin-input/index.d.ts +2 -0
- package/dist/components/popover/Popover.css +162 -0
- package/dist/components/popover/Popover.d.ts +50 -0
- package/dist/components/popover/Popover.js +167 -0
- package/dist/components/popover/Popover.module.js +20 -0
- package/dist/components/popover/index.d.ts +2 -0
- package/dist/components/progress-circular/ProgressCircular.css +68 -0
- package/dist/components/progress-circular/ProgressCircular.d.ts +15 -0
- package/dist/components/progress-circular/ProgressCircular.js +83 -0
- package/dist/components/progress-circular/ProgressCircular.module.js +14 -0
- package/dist/components/progress-circular/index.d.ts +2 -0
- package/dist/components/progress-linear/ProgressLinear.css +106 -0
- package/dist/components/progress-linear/ProgressLinear.d.ts +14 -0
- package/dist/components/progress-linear/ProgressLinear.js +74 -0
- package/dist/components/progress-linear/ProgressLinear.module.js +14 -0
- package/dist/components/progress-linear/index.d.ts +2 -0
- package/dist/components/qr-code/QrCode.css +100 -0
- package/dist/components/qr-code/QrCode.d.ts +13 -0
- package/dist/components/qr-code/QrCode.js +65 -0
- package/dist/components/qr-code/QrCode.module.js +11 -0
- package/dist/components/qr-code/index.d.ts +2 -0
- package/dist/components/radio-group/RadioGroup.css +147 -0
- package/dist/components/radio-group/RadioGroup.d.ts +20 -0
- package/dist/components/radio-group/RadioGroup.js +83 -0
- package/dist/components/radio-group/RadioGroup.module.js +12 -0
- package/dist/components/radio-group/index.d.ts +2 -0
- package/dist/components/rating-group/RatingGroup.css +133 -0
- package/dist/components/rating-group/RatingGroup.d.ts +23 -0
- package/dist/components/rating-group/RatingGroup.js +86 -0
- package/dist/components/rating-group/RatingGroup.module.js +13 -0
- package/dist/components/rating-group/index.d.ts +2 -0
- package/dist/components/scroll-area/ScrollArea.css +162 -0
- package/dist/components/scroll-area/ScrollArea.d.ts +21 -0
- package/dist/components/scroll-area/ScrollArea.js +76 -0
- package/dist/components/scroll-area/ScrollArea.module.js +12 -0
- package/dist/components/scroll-area/index.d.ts +2 -0
- package/dist/components/segment-group/SegmentGroup.css +120 -0
- package/dist/components/segment-group/SegmentGroup.d.ts +15 -0
- package/dist/components/segment-group/SegmentGroup.js +83 -0
- package/dist/components/segment-group/SegmentGroup.module.js +12 -0
- package/dist/components/segment-group/index.d.ts +2 -0
- package/dist/components/select/Select.css +351 -0
- package/dist/components/select/Select.d.ts +48 -0
- package/dist/components/select/Select.js +210 -0
- package/dist/components/select/Select.module.js +27 -0
- package/dist/components/select/index.d.ts +2 -0
- package/dist/components/separator/Separator.css +45 -0
- package/dist/components/separator/Separator.d.ts +14 -0
- package/dist/components/separator/Separator.js +27 -0
- package/dist/components/separator/Separator.module.js +5 -0
- package/dist/components/sidebar/Sidebar.css +341 -0
- package/dist/components/sidebar/Sidebar.d.ts +48 -0
- package/dist/components/sidebar/Sidebar.js +279 -0
- package/dist/components/sidebar/Sidebar.module.js +23 -0
- package/dist/components/sidebar/index.d.ts +2 -0
- package/dist/components/signature-pad/SignaturePad.css +123 -0
- package/dist/components/signature-pad/SignaturePad.d.ts +15 -0
- package/dist/components/signature-pad/SignaturePad.js +82 -0
- package/dist/components/signature-pad/SignaturePad.module.js +12 -0
- package/dist/components/signature-pad/index.d.ts +2 -0
- package/dist/components/simple-grid/SimpleGrid.d.ts +18 -0
- package/dist/components/simple-grid/SimpleGrid.js +32 -0
- package/dist/components/skeleton/Skeleton.css +29 -0
- package/dist/components/skeleton/Skeleton.d.ts +20 -0
- package/dist/components/skeleton/Skeleton.js +32 -0
- package/dist/components/skeleton/Skeleton.module.js +5 -0
- package/dist/components/slider/Slider.css +167 -0
- package/dist/components/slider/Slider.d.ts +19 -0
- package/dist/components/slider/Slider.js +119 -0
- package/dist/components/slider/Slider.module.js +16 -0
- package/dist/components/slider/index.d.ts +2 -0
- package/dist/components/spinner/Spinner.css +60 -0
- package/dist/components/spinner/Spinner.d.ts +12 -0
- package/dist/components/spinner/Spinner.js +40 -0
- package/dist/components/spinner/Spinner.module.js +9 -0
- package/dist/components/split-button/SplitButton.css +51 -0
- package/dist/components/split-button/SplitButton.d.ts +36 -0
- package/dist/components/split-button/SplitButton.js +93 -0
- package/dist/components/split-button/SplitButton.module.js +9 -0
- package/dist/components/split-button/index.d.ts +2 -0
- package/dist/components/splitter/Splitter.css +170 -0
- package/dist/components/splitter/Splitter.d.ts +12 -0
- package/dist/components/splitter/Splitter.js +68 -0
- package/dist/components/splitter/Splitter.module.js +10 -0
- package/dist/components/splitter/index.d.ts +2 -0
- package/dist/components/stack/Stack.css +13 -0
- package/dist/components/stack/Stack.d.ts +31 -0
- package/dist/components/stack/Stack.js +36 -0
- package/dist/components/stack/Stack.module.js +5 -0
- package/dist/components/stack/index.d.ts +2 -0
- package/dist/components/steps/Steps.css +283 -0
- package/dist/components/steps/Steps.d.ts +19 -0
- package/dist/components/steps/Steps.js +122 -0
- package/dist/components/steps/Steps.module.js +17 -0
- package/dist/components/steps/index.d.ts +2 -0
- package/dist/components/switch/Switch.css +130 -0
- package/dist/components/switch/Switch.d.ts +21 -0
- package/dist/components/switch/Switch.js +67 -0
- package/dist/components/switch/Switch.module.js +10 -0
- package/dist/components/switch/index.d.ts +2 -0
- package/dist/components/table/Table.css +162 -0
- package/dist/components/table/Table.d.ts +41 -0
- package/dist/components/table/Table.js +173 -0
- package/dist/components/table/Table.module.js +18 -0
- package/dist/components/tabs/Tabs.css +186 -0
- package/dist/components/tabs/Tabs.d.ts +20 -0
- package/dist/components/tabs/Tabs.js +67 -0
- package/dist/components/tabs/Tabs.module.js +11 -0
- package/dist/components/tabs/index.d.ts +2 -0
- package/dist/components/tag/Tag.css +128 -0
- package/dist/components/tag/Tag.d.ts +18 -0
- package/dist/components/tag/Tag.js +87 -0
- package/dist/components/tag/Tag.module.js +11 -0
- package/dist/components/tags-input/TagsInput.css +248 -0
- package/dist/components/tags-input/TagsInput.d.ts +20 -0
- package/dist/components/tags-input/TagsInput.js +139 -0
- package/dist/components/tags-input/TagsInput.module.js +16 -0
- package/dist/components/tags-input/index.d.ts +2 -0
- package/dist/components/text/Text.css +87 -0
- package/dist/components/text/Text.d.ts +27 -0
- package/dist/components/text/Text.js +43 -0
- package/dist/components/text/Text.module.js +5 -0
- package/dist/components/textarea/Textarea.css +55 -0
- package/dist/components/textarea/Textarea.d.ts +6 -0
- package/dist/components/textarea/Textarea.js +21 -0
- package/dist/components/textarea/Textarea.module.js +5 -0
- package/dist/components/textarea/index.d.ts +2 -0
- package/dist/components/timer/Timer.css +95 -0
- package/dist/components/timer/Timer.d.ts +14 -0
- package/dist/components/timer/Timer.js +74 -0
- package/dist/components/timer/Timer.module.js +12 -0
- package/dist/components/timer/index.d.ts +2 -0
- package/dist/components/toast/Toast.css +154 -0
- package/dist/components/toast/Toast.d.ts +17 -0
- package/dist/components/toast/Toast.js +92 -0
- package/dist/components/toast/Toast.module.js +12 -0
- package/dist/components/toast/index.d.ts +2 -0
- package/dist/components/toggle/Toggle.css +167 -0
- package/dist/components/toggle/Toggle.d.ts +16 -0
- package/dist/components/toggle/Toggle.js +31 -0
- package/dist/components/toggle/Toggle.module.js +8 -0
- package/dist/components/toggle/index.d.ts +2 -0
- package/dist/components/toggle-group/ToggleGroup.css +42 -0
- package/dist/components/toggle-group/ToggleGroup.d.ts +25 -0
- package/dist/components/toggle-group/ToggleGroup.js +62 -0
- package/dist/components/toggle-group/ToggleGroup.module.js +8 -0
- package/dist/components/toggle-group/index.d.ts +2 -0
- package/dist/components/tooltip/Tooltip.css +125 -0
- package/dist/components/tooltip/Tooltip.d.ts +28 -0
- package/dist/components/tooltip/Tooltip.js +75 -0
- package/dist/components/tooltip/Tooltip.module.js +13 -0
- package/dist/components/tooltip/index.d.ts +2 -0
- package/dist/components/tour/Tour.css +286 -0
- package/dist/components/tour/Tour.d.ts +30 -0
- package/dist/components/tour/Tour.js +149 -0
- package/dist/components/tour/Tour.module.js +23 -0
- package/dist/components/tour/index.d.ts +2 -0
- package/dist/components/tree-view/TreeView.css +261 -0
- package/dist/components/tree-view/TreeView.d.ts +32 -0
- package/dist/components/tree-view/TreeView.js +171 -0
- package/dist/components/tree-view/TreeView.module.js +26 -0
- package/dist/components/tree-view/index.d.ts +2 -0
- package/dist/index.d.ts +83 -0
- package/dist/index.js +83 -0
- package/dist/lib/moduix/icons/ui/Icons.d.ts +51 -0
- package/dist/lib/moduix/icons/ui/Icons.js +759 -0
- package/dist/lib/moduix/icons/ui/index.d.ts +2 -0
- package/dist/lib/moduix/normalizeClassName.js +4 -0
- package/dist/lib/moduix/overlayPortal.d.ts +9 -0
- package/dist/lib/moduix/overlayPortal.js +21 -0
- package/dist/lib/moduix/styles/reset.css +175 -0
- package/dist/lib/moduix/styles/style.css +288 -0
- package/dist/reset.d.ts +1 -0
- package/dist/reset.js +1 -0
- package/dist/style.d.ts +1 -0
- package/dist/style.js +1 -0
- package/package.json +76 -0
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
|
|
2
|
+
import { CloseButton } from "../close-button/CloseButton.js";
|
|
3
|
+
import { OverlayPortal, OverlayPortalProvider } from "../../lib/moduix/overlayPortal.js";
|
|
4
|
+
import Dialog_module_default from "./Dialog.module.js";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
import { clsx } from "clsx";
|
|
7
|
+
import { forwardRef } from "react";
|
|
8
|
+
import { Dialog } from "@ark-ui/react/dialog";
|
|
9
|
+
//#region src/components/dialog/Dialog.tsx
|
|
10
|
+
const DEFAULT_CLOSE_BUTTON_LABEL = "Close dialog";
|
|
11
|
+
function DialogRoot({ portalled, portalRef, ...props }) {
|
|
12
|
+
return /* @__PURE__ */ jsx(OverlayPortalProvider, {
|
|
13
|
+
portalled,
|
|
14
|
+
portalRef,
|
|
15
|
+
children: /* @__PURE__ */ jsx(Dialog.Root, { ...props })
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function DialogRootProvider({ portalled, portalRef, ...props }) {
|
|
19
|
+
return /* @__PURE__ */ jsx(OverlayPortalProvider, {
|
|
20
|
+
portalled,
|
|
21
|
+
portalRef,
|
|
22
|
+
children: /* @__PURE__ */ jsx(Dialog.RootProvider, { ...props })
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
const DialogTrigger = forwardRef(function DialogTrigger({ asChild, className, ...props }, ref) {
|
|
26
|
+
return /* @__PURE__ */ jsx(Dialog.Trigger, {
|
|
27
|
+
ref,
|
|
28
|
+
asChild,
|
|
29
|
+
"data-slot": "dialog-trigger",
|
|
30
|
+
className: clsx(!asChild && Dialog_module_default.trigger, normalizeClassName(className)),
|
|
31
|
+
...props
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
const DialogBackdrop = forwardRef(function DialogBackdrop({ className, ...props }, ref) {
|
|
35
|
+
return /* @__PURE__ */ jsx(OverlayPortal, { children: /* @__PURE__ */ jsx(Dialog.Backdrop, {
|
|
36
|
+
ref,
|
|
37
|
+
"data-slot": "dialog-backdrop",
|
|
38
|
+
className: clsx(Dialog_module_default.backdrop, normalizeClassName(className)),
|
|
39
|
+
...props
|
|
40
|
+
}) });
|
|
41
|
+
});
|
|
42
|
+
const DialogPositioner = forwardRef(function DialogPositioner({ className, ...props }, ref) {
|
|
43
|
+
return /* @__PURE__ */ jsx(OverlayPortal, { children: /* @__PURE__ */ jsx(Dialog.Positioner, {
|
|
44
|
+
ref,
|
|
45
|
+
"data-slot": "dialog-positioner",
|
|
46
|
+
className: clsx(Dialog_module_default.positioner, normalizeClassName(className)),
|
|
47
|
+
...props
|
|
48
|
+
}) });
|
|
49
|
+
});
|
|
50
|
+
const DialogContent = forwardRef(function DialogContent({ className, ...props }, ref) {
|
|
51
|
+
return /* @__PURE__ */ jsx(Dialog.Content, {
|
|
52
|
+
ref,
|
|
53
|
+
"data-slot": "dialog-content",
|
|
54
|
+
className: clsx(Dialog_module_default.content, normalizeClassName(className)),
|
|
55
|
+
...props
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
const DialogTitle = forwardRef(function DialogTitle({ className, ...props }, ref) {
|
|
59
|
+
return /* @__PURE__ */ jsx(Dialog.Title, {
|
|
60
|
+
ref,
|
|
61
|
+
"data-slot": "dialog-title",
|
|
62
|
+
className: clsx(Dialog_module_default.title, normalizeClassName(className)),
|
|
63
|
+
...props
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
const DialogDescription = forwardRef(function DialogDescription({ className, ...props }, ref) {
|
|
67
|
+
return /* @__PURE__ */ jsx(Dialog.Description, {
|
|
68
|
+
ref,
|
|
69
|
+
"data-slot": "dialog-description",
|
|
70
|
+
className: clsx(Dialog_module_default.description, normalizeClassName(className)),
|
|
71
|
+
...props
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
const DialogCloseTrigger = forwardRef(function DialogCloseTrigger({ asChild, className, ...props }, ref) {
|
|
75
|
+
return /* @__PURE__ */ jsx(Dialog.CloseTrigger, {
|
|
76
|
+
ref,
|
|
77
|
+
asChild,
|
|
78
|
+
"data-slot": "dialog-close-trigger",
|
|
79
|
+
className: clsx(!asChild && Dialog_module_default.closeTrigger, normalizeClassName(className)),
|
|
80
|
+
...props
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
const DialogCloseIcon = forwardRef(function DialogCloseIcon({ className, children, "aria-label": ariaLabel = DEFAULT_CLOSE_BUTTON_LABEL, ...props }, ref) {
|
|
84
|
+
return /* @__PURE__ */ jsx(Dialog.CloseTrigger, {
|
|
85
|
+
asChild: true,
|
|
86
|
+
...props,
|
|
87
|
+
children: /* @__PURE__ */ jsx(CloseButton.Root, {
|
|
88
|
+
ref,
|
|
89
|
+
"data-slot": "dialog-close-icon",
|
|
90
|
+
"aria-label": ariaLabel,
|
|
91
|
+
className: clsx(Dialog_module_default.closeIcon, normalizeClassName(className)),
|
|
92
|
+
children
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
function DialogHeader({ className, ...props }) {
|
|
97
|
+
return /* @__PURE__ */ jsx("div", {
|
|
98
|
+
"data-slot": "dialog-header",
|
|
99
|
+
className: clsx(Dialog_module_default.header, className),
|
|
100
|
+
...props
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
function DialogBody({ className, ...props }) {
|
|
104
|
+
return /* @__PURE__ */ jsx("div", {
|
|
105
|
+
"data-slot": "dialog-body",
|
|
106
|
+
className: clsx(Dialog_module_default.body, className),
|
|
107
|
+
...props
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
function DialogFooter({ className, ...props }) {
|
|
111
|
+
return /* @__PURE__ */ jsx("div", {
|
|
112
|
+
"data-slot": "dialog-footer",
|
|
113
|
+
className: clsx(Dialog_module_default.footer, className),
|
|
114
|
+
...props
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
const Dialog$1 = Object.assign(DialogRoot, {
|
|
118
|
+
Root: DialogRoot,
|
|
119
|
+
RootProvider: DialogRootProvider,
|
|
120
|
+
Trigger: DialogTrigger,
|
|
121
|
+
Backdrop: DialogBackdrop,
|
|
122
|
+
Positioner: DialogPositioner,
|
|
123
|
+
Content: DialogContent,
|
|
124
|
+
Title: DialogTitle,
|
|
125
|
+
Description: DialogDescription,
|
|
126
|
+
CloseTrigger: DialogCloseTrigger,
|
|
127
|
+
CloseIcon: DialogCloseIcon,
|
|
128
|
+
Header: DialogHeader,
|
|
129
|
+
Body: DialogBody,
|
|
130
|
+
Footer: DialogFooter
|
|
131
|
+
});
|
|
132
|
+
//#endregion
|
|
133
|
+
export { Dialog$1 as Dialog };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import './Dialog.css';
|
|
2
|
+
//#region src/components/dialog/Dialog.module.css
|
|
3
|
+
var Dialog_module_default = {
|
|
4
|
+
"backdrop": "gV-U6q_backdrop",
|
|
5
|
+
"body": "gV-U6q_body",
|
|
6
|
+
"closeIcon": "gV-U6q_closeIcon",
|
|
7
|
+
"closeTrigger": "gV-U6q_closeTrigger",
|
|
8
|
+
"content": "gV-U6q_content",
|
|
9
|
+
"description": "gV-U6q_description",
|
|
10
|
+
"dialog-backdrop-in": "gV-U6q_dialog-backdrop-in",
|
|
11
|
+
"dialog-backdrop-out": "gV-U6q_dialog-backdrop-out",
|
|
12
|
+
"dialog-content-in": "gV-U6q_dialog-content-in",
|
|
13
|
+
"dialog-content-out": "gV-U6q_dialog-content-out",
|
|
14
|
+
"footer": "gV-U6q_footer",
|
|
15
|
+
"header": "gV-U6q_header",
|
|
16
|
+
"positioner": "gV-U6q_positioner",
|
|
17
|
+
"title": "gV-U6q_title",
|
|
18
|
+
"trigger": "gV-U6q_trigger"
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { Dialog_module_default as default };
|
|
@@ -0,0 +1,482 @@
|
|
|
1
|
+
@layer ui.components {
|
|
2
|
+
.OP_kSq_trigger, .OP_kSq_closeTrigger {
|
|
3
|
+
box-sizing: border-box;
|
|
4
|
+
min-height: var(--drawer-control-height, var(--size-lg));
|
|
5
|
+
padding: var(--drawer-control-padding-y, .5rem) var(--drawer-control-padding-x, .875rem);
|
|
6
|
+
border: var(--drawer-control-border-width, var(--border-width-sm)) solid
|
|
7
|
+
var(--drawer-control-border-color, var(--color-border));
|
|
8
|
+
border-radius: var(--drawer-control-radius, var(--radius-md));
|
|
9
|
+
background-color: var(--drawer-control-bg, var(--color-background));
|
|
10
|
+
color: var(--drawer-control-color, var(--color-foreground));
|
|
11
|
+
font: inherit;
|
|
12
|
+
font-size: var(--drawer-control-font-size, var(--text-md));
|
|
13
|
+
line-height: var(--drawer-control-line-height, var(--line-height-text-md));
|
|
14
|
+
cursor: pointer;
|
|
15
|
+
user-select: none;
|
|
16
|
+
transition: background-color var(--transition-default),
|
|
17
|
+
border-color var(--transition-default),
|
|
18
|
+
color var(--transition-default);
|
|
19
|
+
justify-content: center;
|
|
20
|
+
align-items: center;
|
|
21
|
+
margin: 0;
|
|
22
|
+
display: inline-flex;
|
|
23
|
+
|
|
24
|
+
@media (hover: hover) {
|
|
25
|
+
&:hover {
|
|
26
|
+
background-color: var(--drawer-control-bg-hover, var(--color-accent));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&:focus-visible {
|
|
31
|
+
outline: var(--drawer-focus-ring-width, var(--drawer-control-border-width, var(--border-width-sm)))
|
|
32
|
+
solid var(--drawer-focus-ring-color, var(--color-ring));
|
|
33
|
+
outline-offset: calc(var(--drawer-focus-ring-width, var(--drawer-control-border-width, var(--border-width-sm))) *
|
|
34
|
+
-1);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
&[data-disabled], &[disabled] {
|
|
38
|
+
pointer-events: none;
|
|
39
|
+
opacity: var(--opacity-disabled);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.OP_kSq_backdrop {
|
|
44
|
+
z-index: calc(var(--z-backdrop) + var(--layer-index, 0));
|
|
45
|
+
background-color: var(--drawer-backdrop-bg, var(--backdrop-bg, var(--color-overlay)));
|
|
46
|
+
min-height: 100dvh;
|
|
47
|
+
backdrop-filter: var(--backdrop-filter, blur(var(--drawer-backdrop-blur, 4px)));
|
|
48
|
+
opacity: calc(1 - var(--drawer-swipe-progress, 0));
|
|
49
|
+
transition: opacity calc(var(--drawer-swipe-strength, 1) * var(--duration-slower)) var(--ease-out),
|
|
50
|
+
backdrop-filter calc(var(--drawer-swipe-strength, 1) * var(--duration-slower)) var(--ease-out);
|
|
51
|
+
position: fixed;
|
|
52
|
+
inset: 0;
|
|
53
|
+
|
|
54
|
+
&[data-state="open"] {
|
|
55
|
+
animation: OP_kSq_drawer-backdrop-in var(--drawer-backdrop-transition, var(--transition-spring));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
&[data-state="closed"] {
|
|
59
|
+
animation: OP_kSq_drawer-backdrop-out var(--drawer-backdrop-transition, var(--transition-spring));
|
|
60
|
+
animation-fill-mode: forwards;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
&[data-state="open"][data-swiping] {
|
|
64
|
+
transition-duration: 0s;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
&[hidden]:has( ~ .OP_kSq_positioner:not([hidden])) {
|
|
68
|
+
display: block;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.OP_kSq_positioner {
|
|
73
|
+
box-sizing: border-box;
|
|
74
|
+
z-index: calc(var(--z-modal) + var(--layer-index, 0));
|
|
75
|
+
overscroll-behavior: contain;
|
|
76
|
+
padding: var(--drawer-positioner-padding, 0);
|
|
77
|
+
justify-content: center;
|
|
78
|
+
align-items: flex-end;
|
|
79
|
+
display: flex;
|
|
80
|
+
position: fixed;
|
|
81
|
+
inset: 0;
|
|
82
|
+
overflow: hidden;
|
|
83
|
+
|
|
84
|
+
&[data-swipe-direction="up"] {
|
|
85
|
+
align-items: flex-start;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
&[data-swipe-direction="left"] {
|
|
89
|
+
justify-content: flex-start;
|
|
90
|
+
align-items: stretch;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
&[data-swipe-direction="right"] {
|
|
94
|
+
justify-content: flex-end;
|
|
95
|
+
align-items: stretch;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
&:not([hidden]) {
|
|
99
|
+
& .OP_kSq_content[hidden] {
|
|
100
|
+
display: flex;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.OP_kSq_content {
|
|
106
|
+
--drawer-bleed: var(--drawer-bleed-size, 3rem);
|
|
107
|
+
box-sizing: border-box;
|
|
108
|
+
width: min(var(--drawer-width, 100%), 100vw);
|
|
109
|
+
height: var(--drawer-size, 100%);
|
|
110
|
+
max-height: var(--drawer-max-height, 80dvh);
|
|
111
|
+
padding: var(--drawer-padding-y, var(--spacing-2)) var(--drawer-padding-x, var(--spacing-6))
|
|
112
|
+
calc(var(--drawer-padding-y, var(--spacing-4)) + env(safe-area-inset-bottom, 0px));
|
|
113
|
+
border: var(--drawer-border-width, var(--border-width-sm)) solid
|
|
114
|
+
var(--drawer-border-color, var(--color-border));
|
|
115
|
+
border-radius: var(--drawer-radius, var(--radius-xl)) var(--drawer-radius, var(--radius-xl)) 0 0;
|
|
116
|
+
background-color: var(--drawer-bg, var(--color-popover));
|
|
117
|
+
color: var(--drawer-color, var(--color-popover-foreground));
|
|
118
|
+
box-shadow: var(--drawer-shadow, var(--shadow-lg));
|
|
119
|
+
overscroll-behavior: contain;
|
|
120
|
+
transform-origin: bottom;
|
|
121
|
+
transition: transform calc(var(--drawer-swipe-strength, 1) * var(--duration-slower)) var(--ease-out),
|
|
122
|
+
height calc(var(--drawer-swipe-strength, 1) * var(--duration-slower)) var(--ease-out),
|
|
123
|
+
scale var(--drawer-nested-transition, var(--drawer-transition, var(--transition-spring))),
|
|
124
|
+
translate var(--drawer-nested-transition, var(--drawer-transition, var(--transition-spring)));
|
|
125
|
+
outline: 0;
|
|
126
|
+
flex-direction: column;
|
|
127
|
+
display: flex;
|
|
128
|
+
position: relative;
|
|
129
|
+
translate: 0;
|
|
130
|
+
scale: 1;
|
|
131
|
+
|
|
132
|
+
&:after {
|
|
133
|
+
inset-inline: 0;
|
|
134
|
+
height: var(--drawer-bleed);
|
|
135
|
+
background-color: inherit;
|
|
136
|
+
content: "";
|
|
137
|
+
pointer-events: none;
|
|
138
|
+
position: absolute;
|
|
139
|
+
top: 100%;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
&[data-state="open"] {
|
|
143
|
+
animation: OP_kSq_drawer-content-in-down var(--drawer-transition, var(--transition-spring));
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
&[data-state="closed"] {
|
|
147
|
+
animation: OP_kSq_drawer-content-out-down var(--drawer-transition, var(--transition-spring));
|
|
148
|
+
animation-fill-mode: forwards;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
&[data-state="open"][data-swiping], &[data-nested-drawer-swiping] {
|
|
152
|
+
transition-duration: 0s;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
&[data-dragging] {
|
|
156
|
+
user-select: none;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
&[data-swipe-direction="up"] {
|
|
160
|
+
transform-origin: top;
|
|
161
|
+
padding-top: calc(var(--drawer-padding-y, var(--spacing-4)) + env(safe-area-inset-top, 0px));
|
|
162
|
+
padding-bottom: var(--drawer-padding-y, var(--spacing-4));
|
|
163
|
+
border-radius: 0 0 var(--drawer-radius, var(--radius-xl))
|
|
164
|
+
var(--drawer-radius, var(--radius-xl));
|
|
165
|
+
|
|
166
|
+
&:after {
|
|
167
|
+
top: auto;
|
|
168
|
+
bottom: 100%;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
&[data-state="open"] {
|
|
172
|
+
animation-name: OP_kSq_drawer-content-in-up;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
&[data-state="closed"] {
|
|
176
|
+
animation-name: OP_kSq_drawer-content-out-up;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
&[data-swipe-direction="left"], &[data-swipe-direction="right"] {
|
|
181
|
+
width: min(var(--drawer-side-width, 22rem), calc(100vw - var(--spacing-8)));
|
|
182
|
+
height: var(--drawer-side-height, 100%);
|
|
183
|
+
max-height: none;
|
|
184
|
+
padding: var(--drawer-padding-y, var(--spacing-6)) var(--drawer-padding-x, var(--spacing-6));
|
|
185
|
+
|
|
186
|
+
&:after {
|
|
187
|
+
inset-block: 0;
|
|
188
|
+
inset-inline: auto;
|
|
189
|
+
width: var(--drawer-bleed);
|
|
190
|
+
height: auto;
|
|
191
|
+
top: 0;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
&[data-swipe-direction="left"] {
|
|
196
|
+
transform-origin: 0;
|
|
197
|
+
border-radius: 0 var(--drawer-radius, var(--radius-xl)) var(--drawer-radius, var(--radius-xl))
|
|
198
|
+
0;
|
|
199
|
+
|
|
200
|
+
&:after {
|
|
201
|
+
right: 100%;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
&[data-state="open"] {
|
|
205
|
+
animation-name: OP_kSq_drawer-content-in-left;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
&[data-state="closed"] {
|
|
209
|
+
animation-name: OP_kSq_drawer-content-out-left;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
&[data-swipe-direction="right"] {
|
|
214
|
+
transform-origin: 100%;
|
|
215
|
+
border-radius: var(--drawer-radius, var(--radius-xl)) 0 0
|
|
216
|
+
var(--drawer-radius, var(--radius-xl));
|
|
217
|
+
|
|
218
|
+
&:after {
|
|
219
|
+
left: 100%;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
&[data-state="open"] {
|
|
223
|
+
animation-name: OP_kSq_drawer-content-in-right;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
&[data-state="closed"] {
|
|
227
|
+
animation-name: OP_kSq_drawer-content-out-right;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
&[data-nested-drawer-open] {
|
|
232
|
+
scale: calc(1 - var(--drawer-nested-scale-step, .05) * var(--nested-drawers, 0));
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
&[data-swipe-direction="down"][data-nested-drawer-open] {
|
|
236
|
+
translate: 0
|
|
237
|
+
calc(-1 * var(--drawer-nested-translate-step, var(--spacing-10)) * var(--nested-drawers, 0));
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
&[data-swipe-direction="up"][data-nested-drawer-open] {
|
|
241
|
+
translate: 0
|
|
242
|
+
calc(var(--drawer-nested-translate-step, var(--spacing-10)) * var(--nested-drawers, 0));
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
&[data-swipe-direction="left"][data-nested-drawer-open] {
|
|
246
|
+
translate: calc(var(--drawer-nested-translate-step, var(--spacing-10)) * var(--nested-drawers, 0))
|
|
247
|
+
0;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
&[data-swipe-direction="right"][data-nested-drawer-open] {
|
|
251
|
+
translate: calc(-1 * var(--drawer-nested-translate-step, var(--spacing-10)) * var(--nested-drawers, 0))
|
|
252
|
+
0;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
.OP_kSq_grabber {
|
|
257
|
+
width: 100%;
|
|
258
|
+
padding: var(--drawer-grabber-padding, var(--spacing-3)) 0;
|
|
259
|
+
cursor: grab;
|
|
260
|
+
user-select: none;
|
|
261
|
+
flex-shrink: 0;
|
|
262
|
+
justify-content: center;
|
|
263
|
+
align-items: center;
|
|
264
|
+
display: flex;
|
|
265
|
+
|
|
266
|
+
&:active {
|
|
267
|
+
cursor: grabbing;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
:where(.OP_kSq_content[data-swipe-direction="left"], .OP_kSq_content[data-swipe-direction="right"]) & {
|
|
271
|
+
display: none;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
.OP_kSq_grabberIndicator {
|
|
276
|
+
width: var(--drawer-grabber-indicator-width, 3rem);
|
|
277
|
+
height: var(--drawer-grabber-indicator-height, .25rem);
|
|
278
|
+
border-radius: var(--drawer-grabber-indicator-radius, var(--radius-full));
|
|
279
|
+
background-color: var(--drawer-grabber-indicator-bg, var(--color-muted-foreground));
|
|
280
|
+
opacity: var(--drawer-grabber-indicator-opacity, .45);
|
|
281
|
+
transition: background-color var(--transition-default),
|
|
282
|
+
opacity var(--transition-default);
|
|
283
|
+
|
|
284
|
+
@media (hover: hover) {
|
|
285
|
+
.OP_kSq_grabber:hover & {
|
|
286
|
+
opacity: var(--drawer-grabber-indicator-opacity-hover, .7);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
.OP_kSq_header {
|
|
292
|
+
align-items: start;
|
|
293
|
+
gap: var(--drawer-header-gap, var(--spacing-1));
|
|
294
|
+
grid-template-columns: minmax(0, 1fr) auto;
|
|
295
|
+
display: grid;
|
|
296
|
+
|
|
297
|
+
& > [data-slot="drawer-title"] {
|
|
298
|
+
grid-column: 1;
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
& > [data-slot="drawer-close-trigger"], & > [data-slot="drawer-close-icon"] {
|
|
302
|
+
grid-column: 2;
|
|
303
|
+
justify-self: end;
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
& > [data-slot="drawer-description"] {
|
|
307
|
+
grid-column: 1 / -1;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
.OP_kSq_title {
|
|
312
|
+
color: var(--drawer-title-color, var(--drawer-color, var(--color-popover-foreground)));
|
|
313
|
+
font-size: var(--drawer-title-font-size, var(--text-lg));
|
|
314
|
+
font-weight: var(--drawer-title-font-weight, var(--weight-semibold));
|
|
315
|
+
line-height: var(--drawer-title-line-height, var(--line-height-text-lg));
|
|
316
|
+
margin: 0;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
.OP_kSq_description, .OP_kSq_body {
|
|
320
|
+
color: var(--drawer-description-color, var(--color-muted-foreground));
|
|
321
|
+
font-size: var(--drawer-description-font-size, var(--text-md));
|
|
322
|
+
line-height: var(--drawer-description-line-height, var(--line-height-text-md));
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
.OP_kSq_description {
|
|
326
|
+
margin: 0;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
.OP_kSq_body {
|
|
330
|
+
min-height: 0;
|
|
331
|
+
margin-top: var(--drawer-body-margin-top, var(--spacing-4));
|
|
332
|
+
overflow-y: auto;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.OP_kSq_footer {
|
|
336
|
+
justify-content: flex-end;
|
|
337
|
+
gap: var(--drawer-footer-gap, var(--spacing-2));
|
|
338
|
+
margin-top: var(--drawer-footer-margin-top, var(--spacing-6));
|
|
339
|
+
display: flex;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
.OP_kSq_closeIcon {
|
|
343
|
+
--close-button-size: var(--drawer-close-icon-size, 1.75rem);
|
|
344
|
+
--close-button-radius: var(--drawer-close-icon-radius, var(--radius-md));
|
|
345
|
+
--close-button-color: var(--drawer-close-icon-color, var(--drawer-description-color, var(--color-muted-foreground)));
|
|
346
|
+
--close-button-color-hover: var(--drawer-close-icon-color-hover, var(--drawer-color, var(--color-popover-foreground)));
|
|
347
|
+
--close-button-bg: var(--drawer-close-icon-bg, transparent);
|
|
348
|
+
--close-button-bg-hover: var(--drawer-close-icon-bg-hover, var(--color-accent));
|
|
349
|
+
--close-button-focus-ring-color: var(--drawer-close-icon-focus-ring-color, var(--drawer-focus-ring-color, var(--color-ring)));
|
|
350
|
+
--close-button-icon-size: var(--drawer-close-icon-glyph-size, .75rem);
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
.OP_kSq_swipeArea {
|
|
354
|
+
z-index: var(--z-modal);
|
|
355
|
+
touch-action: none;
|
|
356
|
+
position: fixed;
|
|
357
|
+
|
|
358
|
+
&[data-swipe-direction="up"] {
|
|
359
|
+
height: var(--drawer-swipe-area-size, var(--spacing-10));
|
|
360
|
+
bottom: 0;
|
|
361
|
+
left: 0;
|
|
362
|
+
right: 0;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
&[data-swipe-direction="down"] {
|
|
366
|
+
height: var(--drawer-swipe-area-size, var(--spacing-10));
|
|
367
|
+
top: 0;
|
|
368
|
+
left: 0;
|
|
369
|
+
right: 0;
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
&[data-swipe-direction="left"] {
|
|
373
|
+
width: var(--drawer-swipe-area-size, var(--spacing-10));
|
|
374
|
+
top: 0;
|
|
375
|
+
bottom: 0;
|
|
376
|
+
right: 0;
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
&[data-swipe-direction="right"] {
|
|
380
|
+
width: var(--drawer-swipe-area-size, var(--spacing-10));
|
|
381
|
+
top: 0;
|
|
382
|
+
bottom: 0;
|
|
383
|
+
left: 0;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
&[data-disabled] {
|
|
387
|
+
pointer-events: none;
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
.OP_kSq_indentBackground {
|
|
392
|
+
background: var(--drawer-indent-background-bg, var(--color-foreground));
|
|
393
|
+
opacity: var(--drawer-indent-background-opacity, 0);
|
|
394
|
+
pointer-events: none;
|
|
395
|
+
transition: opacity var(--drawer-indent-transition, var(--transition-spring));
|
|
396
|
+
position: absolute;
|
|
397
|
+
inset: 0;
|
|
398
|
+
|
|
399
|
+
&[data-active] {
|
|
400
|
+
opacity: calc(var(--drawer-indent-background-opacity-active, 1) * (1 - var(--drawer-swipe-progress, 0)));
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
.OP_kSq_indent {
|
|
405
|
+
transform-origin: top;
|
|
406
|
+
transition: transform var(--drawer-indent-transition, var(--transition-spring)),
|
|
407
|
+
border-radius var(--drawer-indent-transition, var(--transition-spring));
|
|
408
|
+
position: relative;
|
|
409
|
+
transform: translateY(0) scale(1);
|
|
410
|
+
|
|
411
|
+
&[data-active] {
|
|
412
|
+
border-radius: var(--drawer-indent-radius-active, var(--radius-lg))
|
|
413
|
+
var(--drawer-indent-radius-active, var(--radius-lg)) 0 0;
|
|
414
|
+
transform: translateY(calc(var(--drawer-indent-translate-y-active, var(--spacing-2)) *
|
|
415
|
+
(1 - var(--drawer-swipe-progress, 0))))
|
|
416
|
+
scale(calc(var(--drawer-indent-scale-active, .97) +
|
|
417
|
+
(1 - var(--drawer-indent-scale-active, .97)) * var(--drawer-swipe-progress, 0)));
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
@keyframes OP_kSq_drawer-backdrop-in {
|
|
422
|
+
from {
|
|
423
|
+
opacity: 0;
|
|
424
|
+
backdrop-filter: none;
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
@keyframes OP_kSq_drawer-backdrop-out {
|
|
429
|
+
to {
|
|
430
|
+
opacity: 0;
|
|
431
|
+
backdrop-filter: none;
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
@keyframes OP_kSq_drawer-content-in-down {
|
|
436
|
+
from {
|
|
437
|
+
transform: translate3d(0, 100%, 0);
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
@keyframes OP_kSq_drawer-content-out-down {
|
|
442
|
+
to {
|
|
443
|
+
transform: translate3d(0, 100%, 0);
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
@keyframes OP_kSq_drawer-content-in-up {
|
|
448
|
+
from {
|
|
449
|
+
transform: translate3d(0, -100%, 0);
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
@keyframes OP_kSq_drawer-content-out-up {
|
|
454
|
+
to {
|
|
455
|
+
transform: translate3d(0, -100%, 0);
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
@keyframes OP_kSq_drawer-content-in-left {
|
|
460
|
+
from {
|
|
461
|
+
transform: translate3d(-100%, 0, 0);
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
@keyframes OP_kSq_drawer-content-out-left {
|
|
466
|
+
to {
|
|
467
|
+
transform: translate3d(-100%, 0, 0);
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
@keyframes OP_kSq_drawer-content-in-right {
|
|
472
|
+
from {
|
|
473
|
+
transform: translate3d(100%, 0, 0);
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
@keyframes OP_kSq_drawer-content-out-right {
|
|
478
|
+
to {
|
|
479
|
+
transform: translate3d(100%, 0, 0);
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { OverlayPortalProps } from "../../lib/moduix/overlayPortal.js";
|
|
2
|
+
import { ComponentProps } from "react";
|
|
3
|
+
import { Drawer } from "@ark-ui/react/drawer";
|
|
4
|
+
|
|
5
|
+
//#region src/components/drawer/Drawer.d.ts
|
|
6
|
+
type DrawerRootProps = ComponentProps<typeof Drawer.Root> & OverlayPortalProps;
|
|
7
|
+
type DrawerRootProviderProps = ComponentProps<typeof Drawer.RootProvider> & OverlayPortalProps;
|
|
8
|
+
declare function DrawerRoot({
|
|
9
|
+
lazyMount,
|
|
10
|
+
portalled,
|
|
11
|
+
portalRef,
|
|
12
|
+
unmountOnExit,
|
|
13
|
+
...props
|
|
14
|
+
}: DrawerRootProps): import("react").JSX.Element;
|
|
15
|
+
declare function DrawerRootProvider({
|
|
16
|
+
lazyMount,
|
|
17
|
+
portalled,
|
|
18
|
+
portalRef,
|
|
19
|
+
unmountOnExit,
|
|
20
|
+
...props
|
|
21
|
+
}: DrawerRootProviderProps): import("react").JSX.Element;
|
|
22
|
+
declare function DrawerHeader({
|
|
23
|
+
className,
|
|
24
|
+
...props
|
|
25
|
+
}: ComponentProps<'div'>): import("react").JSX.Element;
|
|
26
|
+
declare function DrawerBody({
|
|
27
|
+
className,
|
|
28
|
+
...props
|
|
29
|
+
}: ComponentProps<'div'>): import("react").JSX.Element;
|
|
30
|
+
declare function DrawerFooter({
|
|
31
|
+
className,
|
|
32
|
+
...props
|
|
33
|
+
}: ComponentProps<'div'>): import("react").JSX.Element;
|
|
34
|
+
declare const Drawer$1: typeof DrawerRoot & {
|
|
35
|
+
Root: typeof DrawerRoot;
|
|
36
|
+
RootProvider: typeof DrawerRootProvider;
|
|
37
|
+
Stack: (props: Drawer.StackProps) => import("react").JSX.Element;
|
|
38
|
+
Trigger: import("react").ForwardRefExoticComponent<Omit<Drawer.TriggerProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
39
|
+
Backdrop: import("react").ForwardRefExoticComponent<Omit<Drawer.BackdropProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
40
|
+
Positioner: import("react").ForwardRefExoticComponent<Omit<Drawer.PositionerProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
41
|
+
Content: import("react").ForwardRefExoticComponent<Omit<Drawer.ContentProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
42
|
+
Grabber: import("react").ForwardRefExoticComponent<Omit<Drawer.GrabberProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
43
|
+
GrabberIndicator: import("react").ForwardRefExoticComponent<Omit<Drawer.GrabberIndicatorProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
44
|
+
Title: import("react").ForwardRefExoticComponent<Omit<Drawer.TitleProps & import("react").RefAttributes<HTMLHeadingElement>, "ref"> & import("react").RefAttributes<HTMLHeadingElement>>;
|
|
45
|
+
Description: import("react").ForwardRefExoticComponent<Omit<Drawer.DescriptionProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
46
|
+
CloseTrigger: import("react").ForwardRefExoticComponent<Omit<Drawer.CloseTriggerProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
47
|
+
CloseIcon: import("react").ForwardRefExoticComponent<Omit<Omit<Drawer.CloseTriggerProps & import("react").RefAttributes<HTMLButtonElement>, "asChild">, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
48
|
+
SwipeArea: import("react").ForwardRefExoticComponent<Omit<Drawer.SwipeAreaProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
49
|
+
Indent: import("react").ForwardRefExoticComponent<Omit<Drawer.IndentProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
50
|
+
IndentBackground: import("react").ForwardRefExoticComponent<Omit<Drawer.IndentBackgroundProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
51
|
+
Header: typeof DrawerHeader;
|
|
52
|
+
Body: typeof DrawerBody;
|
|
53
|
+
Footer: typeof DrawerFooter;
|
|
54
|
+
};
|
|
55
|
+
//#endregion
|
|
56
|
+
export { Drawer$1 as Drawer };
|