@kuzenbo/core 0.0.4 → 0.0.6
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 +2 -0
- package/dist/action-icon-UjYZjXrB.d.ts +59 -0
- package/dist/action-icon-UjYZjXrB.d.ts.map +1 -0
- package/dist/{avatar-image-Ce26D2fb.d.ts → avatar-4S7I72CH.d.ts} +35 -2
- package/dist/avatar-4S7I72CH.d.ts.map +1 -0
- package/dist/avatar-C3vF6E7s.js +65 -0
- package/dist/avatar-C3vF6E7s.js.map +1 -0
- package/dist/badge-DB40swlt.js +58 -0
- package/dist/badge-DB40swlt.js.map +1 -0
- package/dist/button-CPPkhcmB.d.ts +59 -0
- package/dist/button-CPPkhcmB.d.ts.map +1 -0
- package/dist/button-shared-variants-J4RVI3K7.js +19 -0
- package/dist/button-shared-variants-J4RVI3K7.js.map +1 -0
- package/dist/{dialog-viewport-Ce1huyAI.d.ts → dialog-D3dAMsO_.d.ts} +64 -2
- package/dist/dialog-D3dAMsO_.d.ts.map +1 -0
- package/dist/{dialog-trigger-BUF3elAP.js → dialog-Dzvma_bu.js} +36 -12
- package/dist/dialog-Dzvma_bu.js.map +1 -0
- package/dist/{dropdown-menu-trigger-BpgtLUvf.d.ts → dropdown-menu-BG03sLbC.d.ts} +259 -123
- package/dist/dropdown-menu-BG03sLbC.d.ts.map +1 -0
- package/dist/{dropdown-menu-trigger-COnFGfDa.js → dropdown-menu-DOVY76ue.js} +137 -101
- package/dist/dropdown-menu-DOVY76ue.js.map +1 -0
- package/dist/input-BeE717GK.d.ts +46 -0
- package/dist/input-BeE717GK.d.ts.map +1 -0
- package/dist/input-cICL6sH_.js +38 -0
- package/dist/input-cICL6sH_.js.map +1 -0
- package/dist/{input-group-textarea-B-rP98r5.js → input-group-7kPror1q.js} +62 -33
- package/dist/input-group-7kPror1q.js.map +1 -0
- package/dist/provider.d.ts +3 -3
- package/dist/provider.js +2 -2
- package/dist/{scroll-bar-C4qEUKlT.js → scroll-bar-BKRy5Me9.js} +1 -1
- package/dist/{scroll-bar-C4qEUKlT.js.map → scroll-bar-BKRy5Me9.js.map} +1 -1
- package/dist/separator-CgOz2m5i.d.ts +13 -0
- package/dist/separator-CgOz2m5i.d.ts.map +1 -0
- package/dist/{sheet-trigger-D7neoTF5.js → sheet-FVsgl5Wk.js} +32 -13
- package/dist/sheet-FVsgl5Wk.js.map +1 -0
- package/dist/{size-context-BjRwqlSg.js → size-context-CvLl3pMC.js} +3 -3
- package/dist/size-context-CvLl3pMC.js.map +1 -0
- package/dist/{size-context-DXfCAlWF.d.ts → size-context-DWvVJytl.d.ts} +2 -2
- package/dist/size-context-DWvVJytl.d.ts.map +1 -0
- package/dist/size-provider-18EvJgDT.js.map +1 -1
- package/dist/{size-provider-Bd2C6gKd.d.ts → size-provider-PHAZhU6k.d.ts} +2 -2
- package/dist/{size-provider-Bd2C6gKd.d.ts.map → size-provider-PHAZhU6k.d.ts.map} +1 -1
- package/dist/{size-system-wzOLSuax.d.ts → size-system-BAI1CnwU.d.ts} +1 -1
- package/dist/size-system-BAI1CnwU.d.ts.map +1 -0
- package/dist/size-system-BTsMqZRQ.js +99 -0
- package/dist/size-system-BTsMqZRQ.js.map +1 -0
- package/dist/size.d.ts +3 -3
- package/dist/size.js +2 -2
- package/dist/{slider-root-presentation-ChJHPMIV.js → slider-root-presentation-G0ByTcvd.js} +19 -19
- package/dist/slider-root-presentation-G0ByTcvd.js.map +1 -0
- package/dist/{slider-value-Db8SCu0c.d.ts → slider-style-tokens-DNzHvGii.d.ts} +55 -55
- package/dist/slider-style-tokens-DNzHvGii.d.ts.map +1 -0
- package/dist/textarea-rmoEkvdu.d.ts +37 -0
- package/dist/textarea-rmoEkvdu.d.ts.map +1 -0
- package/dist/textarea-vNt8edEA.js +39 -0
- package/dist/textarea-vNt8edEA.js.map +1 -0
- package/dist/toggle-D8kPPZH9.d.ts +53 -0
- package/dist/toggle-D8kPPZH9.d.ts.map +1 -0
- package/dist/{tooltip-trigger-qXw-_nbh.js → tooltip-BUo_HPnp.js} +38 -13
- package/dist/tooltip-BUo_HPnp.js.map +1 -0
- package/dist/{tooltip-viewport-csA6luqI.d.ts → tooltip-DatN3AoZ.d.ts} +62 -14
- package/dist/tooltip-DatN3AoZ.d.ts.map +1 -0
- package/dist/ui/accordion.d.ts +5 -5
- package/dist/ui/accordion.d.ts.map +1 -1
- package/dist/ui/accordion.js +53 -52
- package/dist/ui/accordion.js.map +1 -1
- package/dist/ui/action-icon.d.ts +2 -0
- package/dist/ui/action-icon.js +74 -0
- package/dist/ui/action-icon.js.map +1 -0
- package/dist/ui/affix.d.ts +3 -2
- package/dist/ui/affix.d.ts.map +1 -1
- package/dist/ui/affix.js +8 -7
- package/dist/ui/affix.js.map +1 -1
- package/dist/ui/alert-dialog.d.ts +4 -2
- package/dist/ui/alert-dialog.d.ts.map +1 -1
- package/dist/ui/alert-dialog.js +10 -9
- package/dist/ui/alert-dialog.js.map +1 -1
- package/dist/ui/alert.d.ts +33 -33
- package/dist/ui/alert.d.ts.map +1 -1
- package/dist/ui/alert.js +86 -86
- package/dist/ui/alert.js.map +1 -1
- package/dist/ui/announcement.d.ts.map +1 -1
- package/dist/ui/announcement.js +5 -3
- package/dist/ui/announcement.js.map +1 -1
- package/dist/ui/aspect-ratio.d.ts.map +1 -1
- package/dist/ui/aspect-ratio.js.map +1 -1
- package/dist/ui/autocomplete.d.ts +74 -74
- package/dist/ui/autocomplete.d.ts.map +1 -1
- package/dist/ui/autocomplete.js +55 -53
- package/dist/ui/autocomplete.js.map +1 -1
- package/dist/ui/avatar.d.ts +2 -39
- package/dist/ui/avatar.js +2 -24
- package/dist/ui/badge.d.ts +28 -28
- package/dist/ui/badge.d.ts.map +1 -1
- package/dist/ui/badge.js +2 -54
- package/dist/ui/breadcrumb.d.ts +65 -65
- package/dist/ui/breadcrumb.d.ts.map +1 -1
- package/dist/ui/breadcrumb.js +47 -45
- package/dist/ui/breadcrumb.js.map +1 -1
- package/dist/ui/button-group.d.ts +35 -35
- package/dist/ui/button-group.d.ts.map +1 -1
- package/dist/ui/button-group.js +29 -28
- package/dist/ui/button-group.js.map +1 -1
- package/dist/ui/button.d.ts +2 -78
- package/dist/ui/button.js +33 -55
- package/dist/ui/button.js.map +1 -1
- package/dist/ui/card.d.ts +1 -1
- package/dist/ui/card.d.ts.map +1 -1
- package/dist/ui/card.js +6 -6
- package/dist/ui/card.js.map +1 -1
- package/dist/ui/carousel.d.ts +3 -3
- package/dist/ui/carousel.d.ts.map +1 -1
- package/dist/ui/carousel.js +41 -22
- package/dist/ui/carousel.js.map +1 -1
- package/dist/ui/checkbox-group.d.ts.map +1 -1
- package/dist/ui/checkbox-group.js.map +1 -1
- package/dist/ui/checkbox.d.ts +21 -21
- package/dist/ui/checkbox.js +13 -13
- package/dist/ui/checkbox.js.map +1 -1
- package/dist/ui/code.d.ts.map +1 -1
- package/dist/ui/code.js +5 -5
- package/dist/ui/code.js.map +1 -1
- package/dist/ui/collapsible.js +1 -1
- package/dist/ui/collapsible.js.map +1 -1
- package/dist/ui/combobox.d.ts +107 -107
- package/dist/ui/combobox.d.ts.map +1 -1
- package/dist/ui/combobox.js +94 -93
- package/dist/ui/combobox.js.map +1 -1
- package/dist/ui/command.d.ts +57 -58
- package/dist/ui/command.d.ts.map +1 -1
- package/dist/ui/command.js +54 -64
- package/dist/ui/command.js.map +1 -1
- package/dist/ui/container.d.ts.map +1 -1
- package/dist/ui/container.js.map +1 -1
- package/dist/ui/context-menu.d.ts +132 -132
- package/dist/ui/context-menu.d.ts.map +1 -1
- package/dist/ui/context-menu.js +100 -98
- package/dist/ui/context-menu.js.map +1 -1
- package/dist/ui/copy-button.d.ts +1 -3
- package/dist/ui/copy-button.d.ts.map +1 -1
- package/dist/ui/copy-button.js +40 -20
- package/dist/ui/copy-button.js.map +1 -1
- package/dist/ui/dialog.d.ts +2 -66
- package/dist/ui/dialog.js +2 -24
- package/dist/ui/drawer.d.ts +93 -93
- package/dist/ui/drawer.d.ts.map +1 -1
- package/dist/ui/drawer.js +68 -66
- package/dist/ui/drawer.js.map +1 -1
- package/dist/ui/dropdown-menu.d.ts +3 -144
- package/dist/ui/dropdown-menu.js +2 -39
- package/dist/ui/dropzone.d.ts +55 -55
- package/dist/ui/dropzone.d.ts.map +1 -1
- package/dist/ui/dropzone.js +77 -72
- package/dist/ui/dropzone.js.map +1 -1
- package/dist/ui/emoji-picker.d.ts +81 -81
- package/dist/ui/emoji-picker.d.ts.map +1 -1
- package/dist/ui/emoji-picker.js +92 -87
- package/dist/ui/emoji-picker.js.map +1 -1
- package/dist/ui/empty.d.ts +62 -60
- package/dist/ui/empty.d.ts.map +1 -1
- package/dist/ui/empty.js +47 -44
- package/dist/ui/empty.js.map +1 -1
- package/dist/ui/field.d.ts +12 -12
- package/dist/ui/field.d.ts.map +1 -1
- package/dist/ui/field.js +9 -7
- package/dist/ui/field.js.map +1 -1
- package/dist/ui/fieldset.d.ts.map +1 -1
- package/dist/ui/fieldset.js.map +1 -1
- package/dist/ui/form.d.ts +8 -8
- package/dist/ui/form.d.ts.map +1 -1
- package/dist/ui/form.js.map +1 -1
- package/dist/ui/input-group.d.ts +35 -35
- package/dist/ui/input-group.d.ts.map +1 -1
- package/dist/ui/input-group.js +2 -28
- package/dist/ui/input-otp.d.ts +36 -36
- package/dist/ui/input-otp.d.ts.map +1 -1
- package/dist/ui/input-otp.js +29 -28
- package/dist/ui/input-otp.js.map +1 -1
- package/dist/ui/input.d.ts +2 -46
- package/dist/ui/input.js +2 -34
- package/dist/ui/item.d.ts +20 -20
- package/dist/ui/item.d.ts.map +1 -1
- package/dist/ui/item.js +22 -22
- package/dist/ui/item.js.map +1 -1
- package/dist/ui/kbd.d.ts +1 -1
- package/dist/ui/kbd.d.ts.map +1 -1
- package/dist/ui/kbd.js +8 -8
- package/dist/ui/kbd.js.map +1 -1
- package/dist/ui/label.d.ts.map +1 -1
- package/dist/ui/label.js.map +1 -1
- package/dist/ui/marquee.d.ts.map +1 -1
- package/dist/ui/marquee.js +1 -1
- package/dist/ui/marquee.js.map +1 -1
- package/dist/ui/menubar.d.ts +133 -134
- package/dist/ui/menubar.d.ts.map +1 -1
- package/dist/ui/menubar.js +82 -81
- package/dist/ui/menubar.js.map +1 -1
- package/dist/ui/meter.d.ts.map +1 -1
- package/dist/ui/meter.js.map +1 -1
- package/dist/ui/navigation-list.d.ts +227 -227
- package/dist/ui/navigation-list.d.ts.map +1 -1
- package/dist/ui/navigation-list.js +240 -235
- package/dist/ui/navigation-list.js.map +1 -1
- package/dist/ui/navigation-menu.d.ts +82 -82
- package/dist/ui/navigation-menu.d.ts.map +1 -1
- package/dist/ui/navigation-menu.js +70 -67
- package/dist/ui/navigation-menu.js.map +1 -1
- package/dist/ui/number-field.d.ts +34 -34
- package/dist/ui/number-field.d.ts.map +1 -1
- package/dist/ui/number-field.js +24 -23
- package/dist/ui/number-field.js.map +1 -1
- package/dist/ui/pagination.d.ts +43 -43
- package/dist/ui/pagination.d.ts.map +1 -1
- package/dist/ui/pagination.js +57 -47
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pill.d.ts +3 -4
- package/dist/ui/pill.d.ts.map +1 -1
- package/dist/ui/pill.js +37 -26
- package/dist/ui/pill.js.map +1 -1
- package/dist/ui/popover.d.ts +15 -13
- package/dist/ui/popover.d.ts.map +1 -1
- package/dist/ui/popover.js +17 -14
- package/dist/ui/popover.js.map +1 -1
- package/dist/ui/portal.d.ts.map +1 -1
- package/dist/ui/portal.js +52 -11
- package/dist/ui/portal.js.map +1 -1
- package/dist/ui/preview-card.js +5 -5
- package/dist/ui/preview-card.js.map +1 -1
- package/dist/ui/progress.js.map +1 -1
- package/dist/ui/qr-code.d.ts.map +1 -1
- package/dist/ui/qr-code.js +7 -7
- package/dist/ui/qr-code.js.map +1 -1
- package/dist/ui/radio-group.d.ts +23 -23
- package/dist/ui/radio-group.js +15 -15
- package/dist/ui/radio-group.js.map +1 -1
- package/dist/ui/range-slider.d.ts +1 -1
- package/dist/ui/range-slider.d.ts.map +1 -1
- package/dist/ui/range-slider.js +4 -7
- package/dist/ui/range-slider.js.map +1 -1
- package/dist/ui/rating.d.ts +35 -35
- package/dist/ui/rating.d.ts.map +1 -1
- package/dist/ui/rating.js +55 -46
- package/dist/ui/rating.js.map +1 -1
- package/dist/ui/resizable.d.ts.map +1 -1
- package/dist/ui/resizable.js +2 -2
- package/dist/ui/resizable.js.map +1 -1
- package/dist/ui/scroll-area.js +1 -1
- package/dist/ui/scroll-area.js.map +1 -1
- package/dist/ui/select.d.ts +87 -87
- package/dist/ui/select.d.ts.map +1 -1
- package/dist/ui/select.js +85 -84
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/separator.d.ts +2 -13
- package/dist/ui/separator.js.map +1 -1
- package/dist/ui/sheet.d.ts.map +1 -1
- package/dist/ui/sheet.js +2 -24
- package/dist/ui/sidebar.d.ts +75 -76
- package/dist/ui/sidebar.d.ts.map +1 -1
- package/dist/ui/sidebar.js +88 -87
- package/dist/ui/sidebar.js.map +1 -1
- package/dist/ui/skeleton.d.ts.map +1 -1
- package/dist/ui/skeleton.js +1 -1
- package/dist/ui/skeleton.js.map +1 -1
- package/dist/ui/slider.d.ts +1 -1
- package/dist/ui/slider.d.ts.map +1 -1
- package/dist/ui/slider.js +3 -1
- package/dist/ui/slider.js.map +1 -1
- package/dist/ui/spacer.d.ts.map +1 -1
- package/dist/ui/spacer.js +2 -2
- package/dist/ui/spacer.js.map +1 -1
- package/dist/ui/spinner.d.ts +1 -1
- package/dist/ui/spinner.d.ts.map +1 -1
- package/dist/ui/spinner.js +2 -2
- package/dist/ui/spinner.js.map +1 -1
- package/dist/ui/switch.d.ts +12 -12
- package/dist/ui/switch.js +7 -7
- package/dist/ui/switch.js.map +1 -1
- package/dist/ui/table.d.ts +62 -62
- package/dist/ui/table.d.ts.map +1 -1
- package/dist/ui/table.js +53 -47
- package/dist/ui/table.js.map +1 -1
- package/dist/ui/tabs.d.ts +25 -25
- package/dist/ui/tabs.d.ts.map +1 -1
- package/dist/ui/tabs.js +75 -68
- package/dist/ui/tabs.js.map +1 -1
- package/dist/ui/textarea.d.ts +2 -37
- package/dist/ui/textarea.js +2 -35
- package/dist/ui/theme-icon.d.ts +30 -30
- package/dist/ui/theme-icon.d.ts.map +1 -1
- package/dist/ui/theme-icon.js +22 -22
- package/dist/ui/theme-icon.js.map +1 -1
- package/dist/ui/timeline.d.ts +6 -6
- package/dist/ui/timeline.d.ts.map +1 -1
- package/dist/ui/timeline.js +163 -163
- package/dist/ui/timeline.js.map +1 -1
- package/dist/ui/toggle-group.d.ts +33 -33
- package/dist/ui/toggle-group.d.ts.map +1 -1
- package/dist/ui/toggle-group.js +22 -16
- package/dist/ui/toggle-group.js.map +1 -1
- package/dist/ui/toggle.d.ts +2 -53
- package/dist/ui/toggle.js +15 -15
- package/dist/ui/toggle.js.map +1 -1
- package/dist/ui/toolbar.d.ts +56 -56
- package/dist/ui/toolbar.d.ts.map +1 -1
- package/dist/ui/toolbar.js +43 -40
- package/dist/ui/toolbar.js.map +1 -1
- package/dist/ui/tooltip.d.ts +3 -55
- package/dist/ui/tooltip.js +2 -28
- package/dist/ui/typography.d.ts +50 -36
- package/dist/ui/typography.d.ts.map +1 -1
- package/dist/ui/typography.js +28 -17
- package/dist/ui/typography.js.map +1 -1
- package/package.json +17 -15
- package/dist/avatar-image-BQ_NEKH4.js +0 -47
- package/dist/avatar-image-BQ_NEKH4.js.map +0 -1
- package/dist/avatar-image-Ce26D2fb.d.ts.map +0 -1
- package/dist/dialog-trigger-BUF3elAP.js.map +0 -1
- package/dist/dialog-viewport-Ce1huyAI.d.ts.map +0 -1
- package/dist/dropdown-menu-trigger-BpgtLUvf.d.ts.map +0 -1
- package/dist/dropdown-menu-trigger-COnFGfDa.js.map +0 -1
- package/dist/input-group-textarea-B-rP98r5.js.map +0 -1
- package/dist/sheet-trigger-D7neoTF5.js.map +0 -1
- package/dist/size-context-BjRwqlSg.js.map +0 -1
- package/dist/size-context-DXfCAlWF.d.ts.map +0 -1
- package/dist/size-system-DTXmtQXw.js +0 -47
- package/dist/size-system-DTXmtQXw.js.map +0 -1
- package/dist/size-system-wzOLSuax.d.ts.map +0 -1
- package/dist/slider-root-presentation-ChJHPMIV.js.map +0 -1
- package/dist/slider-value-Db8SCu0c.d.ts.map +0 -1
- package/dist/tooltip-trigger-qXw-_nbh.js.map +0 -1
- package/dist/tooltip-viewport-csA6luqI.d.ts.map +0 -1
- package/dist/ui/avatar.d.ts.map +0 -1
- package/dist/ui/avatar.js.map +0 -1
- package/dist/ui/badge.js.map +0 -1
- package/dist/ui/button.d.ts.map +0 -1
- package/dist/ui/dialog.d.ts.map +0 -1
- package/dist/ui/dialog.js.map +0 -1
- package/dist/ui/dropdown-menu.d.ts.map +0 -1
- package/dist/ui/dropdown-menu.js.map +0 -1
- package/dist/ui/input-group.js.map +0 -1
- package/dist/ui/input.d.ts.map +0 -1
- package/dist/ui/input.js.map +0 -1
- package/dist/ui/separator.d.ts.map +0 -1
- package/dist/ui/sheet.js.map +0 -1
- package/dist/ui/textarea.d.ts.map +0 -1
- package/dist/ui/textarea.js.map +0 -1
- package/dist/ui/toggle.d.ts.map +0 -1
- package/dist/ui/tooltip.d.ts.map +0 -1
- package/dist/ui/tooltip.js.map +0 -1
- package/dist/use-badge-default-props-8d9wPL0k.js +0 -8
- package/dist/use-badge-default-props-8d9wPL0k.js.map +0 -1
- package/dist/use-input-default-props-B6VgKXGM.js +0 -8
- package/dist/use-input-default-props-B6VgKXGM.js.map +0 -1
- package/dist/use-textarea-default-props-7MlOxkDO.js +0 -8
- package/dist/use-textarea-default-props-7MlOxkDO.js.map +0 -1
package/dist/ui/dropdown-menu.js
CHANGED
|
@@ -1,42 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { a as
|
|
4
|
-
import { S as DropdownMenuArrow, _ as DropdownMenuPortal, a as DropdownMenuShortcut, b as DropdownMenuContext, c as DropdownMenuRadioGroup, d as DropdownMenuLabel, f as DropdownMenuItem, g as DropdownMenuPositioner, h as DropdownMenuContent, i as DropdownMenuSub, l as DropdownMenuLinkItem, m as DropdownMenuGroup, n as DropdownMenuSubTrigger, o as DropdownMenuSeparator, r as DropdownMenuSubContent, s as DropdownMenuRadioItem, t as DropdownMenuTrigger, v as DropdownMenuPopup, x as DropdownMenuBackdrop, y as DropdownMenuCheckboxItem } from "../dropdown-menu-trigger-COnFGfDa.js";
|
|
5
|
-
import { jsx } from "react/jsx-runtime";
|
|
6
|
-
import { Menu } from "@base-ui/react/menu";
|
|
3
|
+
import { S as DropdownMenuArrow, _ as DropdownMenuPositioner, a as DropdownMenuSub, b as DropdownMenuCheckboxItem, c as DropdownMenuRadioItem, f as DropdownMenuLabel, g as DropdownMenuContent, h as DropdownMenuGroup, i as DropdownMenuSubContent, l as DropdownMenuRadioGroup, n as DropdownMenuTrigger, o as DropdownMenuShortcut, p as DropdownMenuItem, r as DropdownMenuSubTrigger, s as DropdownMenuSeparator, t as DropdownMenu, u as DropdownMenuLinkItem, v as DropdownMenuPortal, x as DropdownMenuBackdrop, y as DropdownMenuPopup } from "../dropdown-menu-DOVY76ue.js";
|
|
7
4
|
|
|
8
|
-
|
|
9
|
-
const DropdownMenu = ({ size: providedSize, ...props }) => {
|
|
10
|
-
const size = useComponentSize(providedSize);
|
|
11
|
-
return /* @__PURE__ */ jsx(DropdownMenuContext.Provider, {
|
|
12
|
-
value: { size },
|
|
13
|
-
children: /* @__PURE__ */ jsx(Menu.Root, {
|
|
14
|
-
"data-size": size,
|
|
15
|
-
"data-slot": "dropdown-menu",
|
|
16
|
-
...props
|
|
17
|
-
})
|
|
18
|
-
});
|
|
19
|
-
};
|
|
20
|
-
DropdownMenu.Arrow = DropdownMenuArrow;
|
|
21
|
-
DropdownMenu.Backdrop = DropdownMenuBackdrop;
|
|
22
|
-
DropdownMenu.CheckboxItem = DropdownMenuCheckboxItem;
|
|
23
|
-
DropdownMenu.Content = DropdownMenuContent;
|
|
24
|
-
DropdownMenu.Group = DropdownMenuGroup;
|
|
25
|
-
DropdownMenu.Item = DropdownMenuItem;
|
|
26
|
-
DropdownMenu.Label = DropdownMenuLabel;
|
|
27
|
-
DropdownMenu.LinkItem = DropdownMenuLinkItem;
|
|
28
|
-
DropdownMenu.Portal = DropdownMenuPortal;
|
|
29
|
-
DropdownMenu.Popup = DropdownMenuPopup;
|
|
30
|
-
DropdownMenu.Positioner = DropdownMenuPositioner;
|
|
31
|
-
DropdownMenu.RadioGroup = DropdownMenuRadioGroup;
|
|
32
|
-
DropdownMenu.RadioItem = DropdownMenuRadioItem;
|
|
33
|
-
DropdownMenu.Separator = DropdownMenuSeparator;
|
|
34
|
-
DropdownMenu.Shortcut = DropdownMenuShortcut;
|
|
35
|
-
DropdownMenu.Sub = DropdownMenuSub;
|
|
36
|
-
DropdownMenu.SubContent = DropdownMenuSubContent;
|
|
37
|
-
DropdownMenu.SubTrigger = DropdownMenuSubTrigger;
|
|
38
|
-
DropdownMenu.Trigger = DropdownMenuTrigger;
|
|
39
|
-
|
|
40
|
-
//#endregion
|
|
41
|
-
export { DropdownMenu, DropdownMenuArrow, DropdownMenuBackdrop, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuLinkItem, DropdownMenuPopup, DropdownMenuPortal, DropdownMenuPositioner, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger };
|
|
42
|
-
//# sourceMappingURL=dropdown-menu.js.map
|
|
5
|
+
export { DropdownMenu, DropdownMenuArrow, DropdownMenuBackdrop, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuLinkItem, DropdownMenuPopup, DropdownMenuPortal, DropdownMenuPositioner, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger };
|
package/dist/ui/dropzone.d.ts
CHANGED
|
@@ -48,27 +48,11 @@ declare const useDropzoneContext: () => DropzoneContextValue;
|
|
|
48
48
|
//#endregion
|
|
49
49
|
//#region src/ui/dropzone/dropzone.d.ts
|
|
50
50
|
declare const dropzoneVariants: tailwind_variants0.TVReturnType<{
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
root: never[];
|
|
54
|
-
};
|
|
55
|
-
filled: {
|
|
56
|
-
root: string[];
|
|
57
|
-
};
|
|
58
|
-
light: {
|
|
59
|
-
root: string[];
|
|
60
|
-
};
|
|
61
|
-
};
|
|
62
|
-
status: {
|
|
63
|
-
idle: {
|
|
64
|
-
root: never[];
|
|
65
|
-
};
|
|
66
|
-
accept: {
|
|
67
|
-
root: string[];
|
|
68
|
-
};
|
|
69
|
-
reject: {
|
|
51
|
+
activateOnClick: {
|
|
52
|
+
false: {
|
|
70
53
|
root: string[];
|
|
71
54
|
};
|
|
55
|
+
true: {};
|
|
72
56
|
};
|
|
73
57
|
disabled: {
|
|
74
58
|
true: {
|
|
@@ -80,17 +64,17 @@ declare const dropzoneVariants: tailwind_variants0.TVReturnType<{
|
|
|
80
64
|
root: string[];
|
|
81
65
|
};
|
|
82
66
|
};
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
67
|
+
status: {
|
|
68
|
+
accept: {
|
|
69
|
+
root: string[];
|
|
70
|
+
};
|
|
71
|
+
idle: {
|
|
72
|
+
root: never[];
|
|
73
|
+
};
|
|
74
|
+
reject: {
|
|
86
75
|
root: string[];
|
|
87
76
|
};
|
|
88
77
|
};
|
|
89
|
-
}, {
|
|
90
|
-
root: string[];
|
|
91
|
-
inner: string[];
|
|
92
|
-
overlay: string[];
|
|
93
|
-
}, undefined, {
|
|
94
78
|
variant: {
|
|
95
79
|
default: {
|
|
96
80
|
root: never[];
|
|
@@ -102,16 +86,16 @@ declare const dropzoneVariants: tailwind_variants0.TVReturnType<{
|
|
|
102
86
|
root: string[];
|
|
103
87
|
};
|
|
104
88
|
};
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
reject: {
|
|
89
|
+
}, {
|
|
90
|
+
inner: string[];
|
|
91
|
+
overlay: string[];
|
|
92
|
+
root: string[];
|
|
93
|
+
}, undefined, {
|
|
94
|
+
activateOnClick: {
|
|
95
|
+
false: {
|
|
113
96
|
root: string[];
|
|
114
97
|
};
|
|
98
|
+
true: {};
|
|
115
99
|
};
|
|
116
100
|
disabled: {
|
|
117
101
|
true: {
|
|
@@ -123,17 +107,17 @@ declare const dropzoneVariants: tailwind_variants0.TVReturnType<{
|
|
|
123
107
|
root: string[];
|
|
124
108
|
};
|
|
125
109
|
};
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
110
|
+
status: {
|
|
111
|
+
accept: {
|
|
112
|
+
root: string[];
|
|
113
|
+
};
|
|
114
|
+
idle: {
|
|
115
|
+
root: never[];
|
|
116
|
+
};
|
|
117
|
+
reject: {
|
|
129
118
|
root: string[];
|
|
130
119
|
};
|
|
131
120
|
};
|
|
132
|
-
}, {
|
|
133
|
-
root: string[];
|
|
134
|
-
inner: string[];
|
|
135
|
-
overlay: string[];
|
|
136
|
-
}, tailwind_variants0.TVReturnType<{
|
|
137
121
|
variant: {
|
|
138
122
|
default: {
|
|
139
123
|
root: never[];
|
|
@@ -145,16 +129,16 @@ declare const dropzoneVariants: tailwind_variants0.TVReturnType<{
|
|
|
145
129
|
root: string[];
|
|
146
130
|
};
|
|
147
131
|
};
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
reject: {
|
|
132
|
+
}, {
|
|
133
|
+
inner: string[];
|
|
134
|
+
overlay: string[];
|
|
135
|
+
root: string[];
|
|
136
|
+
}, tailwind_variants0.TVReturnType<{
|
|
137
|
+
activateOnClick: {
|
|
138
|
+
false: {
|
|
156
139
|
root: string[];
|
|
157
140
|
};
|
|
141
|
+
true: {};
|
|
158
142
|
};
|
|
159
143
|
disabled: {
|
|
160
144
|
true: {
|
|
@@ -166,16 +150,32 @@ declare const dropzoneVariants: tailwind_variants0.TVReturnType<{
|
|
|
166
150
|
root: string[];
|
|
167
151
|
};
|
|
168
152
|
};
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
153
|
+
status: {
|
|
154
|
+
accept: {
|
|
155
|
+
root: string[];
|
|
156
|
+
};
|
|
157
|
+
idle: {
|
|
158
|
+
root: never[];
|
|
159
|
+
};
|
|
160
|
+
reject: {
|
|
161
|
+
root: string[];
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
variant: {
|
|
165
|
+
default: {
|
|
166
|
+
root: never[];
|
|
167
|
+
};
|
|
168
|
+
filled: {
|
|
169
|
+
root: string[];
|
|
170
|
+
};
|
|
171
|
+
light: {
|
|
172
172
|
root: string[];
|
|
173
173
|
};
|
|
174
174
|
};
|
|
175
175
|
}, {
|
|
176
|
-
root: string[];
|
|
177
176
|
inner: string[];
|
|
178
177
|
overlay: string[];
|
|
178
|
+
root: string[];
|
|
179
179
|
}, undefined, unknown, unknown, undefined>>;
|
|
180
180
|
type DropzoneVariants = VariantProps<typeof dropzoneVariants>;
|
|
181
181
|
type DropzoneProps = Omit<ComponentProps<"div">, "onDrop" | "ref"> & DropzoneVariants & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropzone.d.ts","names":[],"sources":["../../src/ui/dropzone/dropzone-status.tsx","../../src/ui/dropzone/dropzone-context.tsx","../../src/ui/dropzone/dropzone.tsx"],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"dropzone.d.ts","names":[],"sources":["../../src/ui/dropzone/dropzone-status.tsx","../../src/ui/dropzone/dropzone-context.tsx","../../src/ui/dropzone/dropzone.tsx"],"mappings":";;;;;;;;KAQK,mBAAA,GAAsB,cAAA;EACzB,QAAA,EAAU,SAAA;AAAA;AAAA,cA+BC,cAAA;EAAA;;;;KAvBR,mBAAA,GAAmB,KAAA,CAAA,wBAAA;;;cAwBX,cAAA;EAAA;;;;KAxBR,mBAAA,GAAmB,KAAA,CAAA,wBAAA;;;cAyBX,YAAA;EAAA;;;;KAzBR,mBAAA,GAAmB,KAAA,CAAA,wBAAA;;;KA4BZ,mBAAA,GAAsB,mBAAA;AAAA,KACtB,mBAAA,GAAsB,mBAAA;AAAA,KACtB,iBAAA,GAAoB,mBAAA;;;UC3CtB,oBAAA;EACR,IAAA;EACA,MAAA;EACA,MAAA;AAAA;AAAA,cAGI,eAAA,EAAe,KAAA,CAAA,OAAA,CAAA,oBAAA;AAAA,cAER,kBAAA,QAAkB,oBAAA;;;cCgBzB,gBAAA,EAmJJ,kBAAA,CAnJoB,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmJpB,kBAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEG,gBAAA,GAAmB,YAAA,QAAoB,gBAAA;AAAA,KAEvC,aAAA,GAAgB,IAAA,CAAK,cAAA,6BACxB,gBAAA;EACE,GAAA,GAAM,GAAA,CAAI,cAAA;EAEV,SAAA,IACE,KAAA,EAAO,YAAA,IACP,cAAA,EAAgB,aAAA;EAIlB,MAAA,GAAS,KAAA,EAAO,YAAA;EAGhB,QAAA,IAAY,cAAA,EAAgB,aAAA;EAG5B,QAAA;EAGA,OAAA;EAGA,MAAA,GAAS,MAAA;EAGT,OAAA,GAAU,GAAA;EAGV,QAAA;EAGA,OAAA;EAGA,IAAA;EAGA,QAAA;EAGA,SAAA;EAGA,eAAA;EAGA,cAAA;EAGA,kBAAA;EAGA,kBAAA;EAGA,WAAA,IAAe,KAAA,EAAO,SAAA,CAAU,WAAA;EAGhC,WAAA,IAAe,KAAA,EAAO,SAAA,CAAU,WAAA;EAGhC,UAAA,IAAc,KAAA,EAAO,SAAA,CAAU,WAAA;EAG/B,kBAAA;EAGA,gBAAA;EAGA,qBAAA;EAGA,cAAA;EAGA,iBAAA,IACE,KAAA,EAAO,SAAA,KACJ,OAAA,EAAS,IAAA,GAAO,gBAAA;EAGrB,SAAA,cAAuB,IAAA,EAAM,IAAA,EAAM,CAAA,KAAM,SAAA,GAAY,SAAA;EAGrD,mBAAA;EAGA,UAAA,GAAa,mBAAA,CAAoB,gBAAA;AAAA;AAAA,cAG/B,QAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkCH,aAAA,GAAa,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
package/dist/ui/dropzone.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Spinner } from "./spinner.js";
|
|
4
|
-
import { cloneElement, createContext, isValidElement, useContext, useImperativeHandle } from "react";
|
|
4
|
+
import { cloneElement, createContext, isValidElement, useContext, useImperativeHandle, useMemo } from "react";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
6
|
import { cn, tv } from "tailwind-variants";
|
|
7
7
|
import { useDropzone } from "react-dropzone";
|
|
@@ -36,23 +36,36 @@ const DropzoneIdle = createDropzoneStatus("idle");
|
|
|
36
36
|
//#endregion
|
|
37
37
|
//#region src/ui/dropzone/dropzone.tsx
|
|
38
38
|
const dropzoneVariants = tv({
|
|
39
|
+
compoundVariants: [
|
|
40
|
+
{
|
|
41
|
+
class: { root: "border-primary bg-primary/20" },
|
|
42
|
+
status: "accept",
|
|
43
|
+
variant: "filled"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
class: { root: "border-primary bg-primary/10" },
|
|
47
|
+
status: "accept",
|
|
48
|
+
variant: "light"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
class: { root: "border-danger bg-danger/20" },
|
|
52
|
+
status: "reject",
|
|
53
|
+
variant: "filled"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
class: { root: "border-danger bg-danger" },
|
|
57
|
+
status: "reject",
|
|
58
|
+
variant: "light"
|
|
59
|
+
}
|
|
60
|
+
],
|
|
61
|
+
defaultVariants: {
|
|
62
|
+
activateOnClick: true,
|
|
63
|
+
disabled: false,
|
|
64
|
+
loading: false,
|
|
65
|
+
status: "idle",
|
|
66
|
+
variant: "light"
|
|
67
|
+
},
|
|
39
68
|
slots: {
|
|
40
|
-
root: [
|
|
41
|
-
"relative",
|
|
42
|
-
"cursor-pointer",
|
|
43
|
-
"select-none",
|
|
44
|
-
"rounded-lg",
|
|
45
|
-
"border",
|
|
46
|
-
"border-input",
|
|
47
|
-
"border-dashed",
|
|
48
|
-
"bg-background",
|
|
49
|
-
"p-4",
|
|
50
|
-
"outline-none",
|
|
51
|
-
"transition-colors",
|
|
52
|
-
"focus-visible:ring-2",
|
|
53
|
-
"focus-visible:ring-ring",
|
|
54
|
-
"focus-visible:ring-offset-2"
|
|
55
|
-
],
|
|
56
69
|
inner: [
|
|
57
70
|
"pointer-events-none",
|
|
58
71
|
"select-none",
|
|
@@ -61,82 +74,66 @@ const dropzoneVariants = tv({
|
|
|
61
74
|
overlay: [
|
|
62
75
|
"absolute",
|
|
63
76
|
"inset-0",
|
|
64
|
-
"z-
|
|
77
|
+
"z-raised",
|
|
65
78
|
"flex",
|
|
66
79
|
"items-center",
|
|
67
80
|
"justify-center",
|
|
68
81
|
"rounded-lg",
|
|
69
82
|
"bg-background/80",
|
|
70
83
|
"backdrop-blur-sm"
|
|
84
|
+
],
|
|
85
|
+
root: [
|
|
86
|
+
"relative",
|
|
87
|
+
"cursor-clickable",
|
|
88
|
+
"select-none",
|
|
89
|
+
"rounded-lg",
|
|
90
|
+
"border",
|
|
91
|
+
"border-input",
|
|
92
|
+
"border-dashed",
|
|
93
|
+
"bg-background",
|
|
94
|
+
"p-4",
|
|
95
|
+
"outline-none",
|
|
96
|
+
"transition-colors",
|
|
97
|
+
"focus-visible:ring-2",
|
|
98
|
+
"focus-visible:ring-ring",
|
|
99
|
+
"focus-visible:ring-offset-2"
|
|
71
100
|
]
|
|
72
101
|
},
|
|
73
102
|
variants: {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
light: { root: ["bg-muted/50"] }
|
|
103
|
+
activateOnClick: {
|
|
104
|
+
false: { root: ["cursor-default"] },
|
|
105
|
+
true: {}
|
|
78
106
|
},
|
|
107
|
+
disabled: { true: { root: ["cursor-default", "opacity-50"] } },
|
|
108
|
+
loading: { true: { root: ["cursor-default"] } },
|
|
79
109
|
status: {
|
|
80
|
-
idle: { root: [] },
|
|
81
110
|
accept: { root: [
|
|
82
111
|
"border-primary",
|
|
83
112
|
"bg-primary/10",
|
|
84
113
|
"text-primary-foreground"
|
|
85
114
|
] },
|
|
115
|
+
idle: { root: [] },
|
|
86
116
|
reject: { root: [
|
|
87
117
|
"border-danger",
|
|
88
118
|
"bg-danger",
|
|
89
119
|
"text-danger-foreground"
|
|
90
120
|
] }
|
|
91
121
|
},
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
false: { root: ["cursor-default"] }
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
compoundVariants: [
|
|
100
|
-
{
|
|
101
|
-
status: "accept",
|
|
102
|
-
variant: "filled",
|
|
103
|
-
class: { root: "border-primary bg-primary/20" }
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
status: "accept",
|
|
107
|
-
variant: "light",
|
|
108
|
-
class: { root: "border-primary bg-primary/10" }
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
status: "reject",
|
|
112
|
-
variant: "filled",
|
|
113
|
-
class: { root: "border-danger bg-danger/20" }
|
|
114
|
-
},
|
|
115
|
-
{
|
|
116
|
-
status: "reject",
|
|
117
|
-
variant: "light",
|
|
118
|
-
class: { root: "border-danger bg-danger" }
|
|
122
|
+
variant: {
|
|
123
|
+
default: { root: [] },
|
|
124
|
+
filled: { root: ["bg-muted"] },
|
|
125
|
+
light: { root: ["bg-muted/50"] }
|
|
119
126
|
}
|
|
120
|
-
],
|
|
121
|
-
defaultVariants: {
|
|
122
|
-
variant: "light",
|
|
123
|
-
status: "idle",
|
|
124
|
-
disabled: false,
|
|
125
|
-
loading: false,
|
|
126
|
-
activateOnClick: true
|
|
127
127
|
}
|
|
128
128
|
});
|
|
129
129
|
const Dropzone = ({ className, variant, status: statusProp, disabled: disabledProp, loading, multiple = true, maxSize = Number.POSITIVE_INFINITY, accept, children, onDropAny, onDrop, onReject, openRef, name, maxFiles, autoFocus, activateOnClick = true, activateOnDrag = true, dragEventsBubbling = true, activateOnKeyboard = true, onDragEnter, onDragLeave, onDragOver, onFileDialogCancel, onFileDialogOpen, preventDropOnDocument, useFsAccessApi = true, getFilesFromEvent, validator, enablePointerEvents, inputProps, ref, ...props }) => {
|
|
130
130
|
const { getRootProps, getInputProps, isDragAccept, isDragReject, isDragActive, open } = useDropzone({
|
|
131
|
-
onDrop: onDropAny,
|
|
132
|
-
onDropAccepted: onDrop,
|
|
133
|
-
onDropRejected: onReject,
|
|
134
|
-
disabled: disabledProp || loading,
|
|
135
131
|
accept: Array.isArray(accept) ? Object.fromEntries(accept.map((key) => [key, []])) : accept,
|
|
136
|
-
multiple,
|
|
137
|
-
maxSize,
|
|
138
|
-
maxFiles,
|
|
139
132
|
autoFocus,
|
|
133
|
+
disabled: disabledProp || loading,
|
|
134
|
+
maxFiles,
|
|
135
|
+
maxSize,
|
|
136
|
+
multiple,
|
|
140
137
|
noClick: !activateOnClick,
|
|
141
138
|
noDrag: !activateOnDrag,
|
|
142
139
|
noDragEventsBubbling: !dragEventsBubbling,
|
|
@@ -144,6 +141,9 @@ const Dropzone = ({ className, variant, status: statusProp, disabled: disabledPr
|
|
|
144
141
|
onDragEnter,
|
|
145
142
|
onDragLeave,
|
|
146
143
|
onDragOver,
|
|
144
|
+
onDrop: onDropAny,
|
|
145
|
+
onDropAccepted: onDrop,
|
|
146
|
+
onDropRejected: onReject,
|
|
147
147
|
onFileDialogCancel,
|
|
148
148
|
onFileDialogOpen,
|
|
149
149
|
preventDropOnDocument,
|
|
@@ -161,18 +161,23 @@ const Dropzone = ({ className, variant, status: statusProp, disabled: disabledPr
|
|
|
161
161
|
else if (isRejected) status = "reject";
|
|
162
162
|
const disabled = disabledProp || loading;
|
|
163
163
|
const { root, inner, overlay } = dropzoneVariants({
|
|
164
|
-
|
|
165
|
-
status,
|
|
164
|
+
activateOnClick,
|
|
166
165
|
disabled,
|
|
167
166
|
loading,
|
|
168
|
-
|
|
167
|
+
status,
|
|
168
|
+
variant
|
|
169
169
|
});
|
|
170
|
+
const contextValue = useMemo(() => ({
|
|
171
|
+
accept: isAccepted,
|
|
172
|
+
idle: isIdle,
|
|
173
|
+
reject: isRejected
|
|
174
|
+
}), [
|
|
175
|
+
isAccepted,
|
|
176
|
+
isRejected,
|
|
177
|
+
isIdle
|
|
178
|
+
]);
|
|
170
179
|
return /* @__PURE__ */ jsx(DropzoneContext.Provider, {
|
|
171
|
-
value:
|
|
172
|
-
accept: isAccepted,
|
|
173
|
-
reject: isRejected,
|
|
174
|
-
idle: isIdle
|
|
175
|
-
},
|
|
180
|
+
value: contextValue,
|
|
176
181
|
children: /* @__PURE__ */ jsxs("div", {
|
|
177
182
|
...getRootProps(),
|
|
178
183
|
className: cn(root(), className),
|
package/dist/ui/dropzone.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropzone.js","names":[],"sources":["../../src/ui/dropzone/dropzone-context.tsx","../../src/ui/dropzone/dropzone-status.tsx","../../src/ui/dropzone/dropzone.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext } from \"react\";\n\ninterface DropzoneContextValue {\n idle: boolean;\n accept: boolean;\n reject: boolean;\n}\n\nconst DropzoneContext = createContext<DropzoneContextValue | null>(null);\n\nexport const useDropzoneContext = () => {\n const context = useContext(DropzoneContext);\n if (!context) {\n throw new Error(\"Dropzone components must be used within Dropzone\");\n }\n return context;\n};\n\nexport { DropzoneContext };\n","\"use client\";\n\nimport type { ComponentProps, JSX, ReactNode } from \"react\";\n\nimport { cloneElement, isValidElement } from \"react\";\nimport { cn } from \"tailwind-variants\";\n\nimport { useDropzoneContext } from \"./dropzone-context\";\n\ntype DropzoneStatusProps = ComponentProps<\"div\"> & {\n children: ReactNode;\n};\n\nconst createDropzoneStatus = (status: \"accept\" | \"reject\" | \"idle\") => {\n const Component = ({\n children,\n className,\n ...props\n }: DropzoneStatusProps) => {\n const ctx = useDropzoneContext();\n const _children = isValidElement(children) ? (\n children\n ) : (\n <span>{children}</span>\n );\n\n if (!ctx[status]) {\n return null;\n }\n\n return cloneElement(_children as JSX.Element, {\n className: cn(className, (_children as JSX.Element).props.className),\n ...props,\n });\n };\n\n Component.displayName = `Dropzone${status.charAt(0).toUpperCase() + status.slice(1)}`;\n\n return Component;\n};\n\nexport const DropzoneAccept = createDropzoneStatus(\"accept\");\nexport const DropzoneReject = createDropzoneStatus(\"reject\");\nexport const DropzoneIdle = createDropzoneStatus(\"idle\");\n\nexport type { DropzoneStatusProps };\nexport type DropzoneAcceptProps = DropzoneStatusProps;\nexport type DropzoneRejectProps = DropzoneStatusProps;\nexport type DropzoneIdleProps = DropzoneStatusProps;\n","\"use client\";\n\nimport type {\n ComponentProps,\n DragEvent,\n InputHTMLAttributes,\n Ref,\n} from \"react\";\nimport type {\n Accept,\n DropEvent,\n FileError,\n FileRejection,\n FileWithPath,\n} from \"react-dropzone\";\n\nimport { useImperativeHandle } from \"react\";\nimport { useDropzone } from \"react-dropzone\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport { Spinner } from \"../spinner/spinner\";\nimport { DropzoneContext, useDropzoneContext } from \"./dropzone-context\";\nimport {\n DropzoneAccept,\n DropzoneIdle,\n DropzoneReject,\n} from \"./dropzone-status\";\n\nconst dropzoneVariants = tv({\n slots: {\n root: [\n \"relative\",\n \"cursor-pointer\",\n \"select-none\",\n \"rounded-lg\",\n \"border\",\n \"border-input\",\n \"border-dashed\",\n \"bg-background\",\n \"p-4\",\n \"outline-none\",\n \"transition-colors\",\n \"focus-visible:ring-2\",\n \"focus-visible:ring-ring\",\n \"focus-visible:ring-offset-2\",\n ],\n inner: [\n \"pointer-events-none\",\n \"select-none\",\n \"data-enable-pointer-events:pointer-events-auto\",\n ],\n overlay: [\n \"absolute\",\n \"inset-0\",\n \"z-10\",\n \"flex\",\n \"items-center\",\n \"justify-center\",\n \"rounded-lg\",\n \"bg-background/80\",\n \"backdrop-blur-sm\",\n ],\n },\n variants: {\n variant: {\n default: {\n root: [\n // No additional styles for default variant\n ],\n },\n filled: {\n root: [\n // Background: muted background\n \"bg-muted\",\n ],\n },\n light: {\n root: [\n // Background: muted background with opacity\n \"bg-muted/50\",\n ],\n },\n },\n status: {\n idle: {\n root: [\n // No additional styles for idle status\n ],\n },\n accept: {\n root: [\n // Border: primary border color\n \"border-primary\",\n // Background: primary background with opacity\n \"bg-primary/10\",\n // Text: primary text color\n \"text-primary-foreground\",\n ],\n },\n reject: {\n root: [\n // Border: danger border color\n \"border-danger\",\n // Background: danger background with opacity\n \"bg-danger\",\n // Text: danger text color\n \"text-danger-foreground\",\n ],\n },\n },\n disabled: {\n true: {\n root: [\n // Cursor: default cursor\n \"cursor-default\",\n // Opacity: reduced opacity\n \"opacity-50\",\n ],\n },\n },\n loading: {\n true: {\n root: [\n // Cursor: default cursor\n \"cursor-default\",\n ],\n },\n },\n activateOnClick: {\n true: {},\n false: {\n root: [\n // Cursor: default cursor when click is disabled\n \"cursor-default\",\n ],\n },\n },\n },\n compoundVariants: [\n {\n status: \"accept\",\n variant: \"filled\",\n class: {\n root: \"border-primary bg-primary/20\",\n },\n },\n {\n status: \"accept\",\n variant: \"light\",\n class: {\n root: \"border-primary bg-primary/10\",\n },\n },\n {\n status: \"reject\",\n variant: \"filled\",\n class: {\n root: \"border-danger bg-danger/20\",\n },\n },\n {\n status: \"reject\",\n variant: \"light\",\n class: {\n root: \"border-danger bg-danger\",\n },\n },\n ],\n defaultVariants: {\n variant: \"light\",\n status: \"idle\",\n disabled: false,\n loading: false,\n activateOnClick: true,\n },\n});\n\ntype DropzoneVariants = VariantProps<typeof dropzoneVariants>;\n\ntype DropzoneProps = Omit<ComponentProps<\"div\">, \"onDrop\" | \"ref\"> &\n DropzoneVariants & {\n ref?: Ref<HTMLDivElement>;\n /** Called when any files are dropped to the dropzone */\n onDropAny?: (\n files: FileWithPath[],\n fileRejections: FileRejection[]\n ) => void;\n\n /** Called when valid files are dropped to the dropzone */\n onDrop: (files: FileWithPath[]) => void;\n\n /** Called when dropped files do not meet file restrictions */\n onReject?: (fileRejections: FileRejection[]) => void;\n\n /** Determines whether files capturing should be disabled */\n disabled?: boolean;\n\n /** Determines whether a loading overlay should be displayed */\n loading?: boolean;\n\n /** Mime types of the files that dropzone can accept */\n accept?: Accept | string[];\n\n /** A ref function which when called opens the file system file picker */\n openRef?: Ref<() => void>;\n\n /** Determines whether multiple files can be dropped */\n multiple?: boolean;\n\n /** Maximum file size in bytes */\n maxSize?: number;\n\n /** Name of the form control */\n name?: string;\n\n /** Maximum number of files that can be picked at once */\n maxFiles?: number;\n\n /** Set to autofocus the root element */\n autoFocus?: boolean;\n\n /** If false, disables click to open the native file selection dialog */\n activateOnClick?: boolean;\n\n /** If false, disables drag 'n' drop */\n activateOnDrag?: boolean;\n\n /** If false, disables Space/Enter to open the native file selection dialog */\n activateOnKeyboard?: boolean;\n\n /** If false, stops drag event propagation to parents */\n dragEventsBubbling?: boolean;\n\n /** Called when the dragenter event occurs */\n onDragEnter?: (event: DragEvent<HTMLElement>) => void;\n\n /** Called when the dragleave event occurs */\n onDragLeave?: (event: DragEvent<HTMLElement>) => void;\n\n /** Called when the dragover event occurs */\n onDragOver?: (event: DragEvent<HTMLElement>) => void;\n\n /** Called when user closes the file selection dialog with no selection */\n onFileDialogCancel?: () => void;\n\n /** Called when user opens the file selection dialog */\n onFileDialogOpen?: () => void;\n\n /** If false, allow dropped items to take over the current browser window */\n preventDropOnDocument?: boolean;\n\n /** Set to true to use the File System Access API */\n useFsAccessApi?: boolean;\n\n /** Use this to provide a custom file aggregator */\n getFilesFromEvent?: (\n event: DropEvent\n ) => Promise<(File | DataTransferItem)[]>;\n\n /** Custom validation function */\n validator?: <T extends File>(file: T) => FileError | FileError[] | null;\n\n /** Determines whether pointer events should be enabled on the inner element */\n enablePointerEvents?: boolean;\n\n /** Props passed down to the internal Input component */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n };\n\nconst Dropzone = ({\n className,\n variant,\n status: statusProp,\n disabled: disabledProp,\n loading,\n multiple = true,\n maxSize = Number.POSITIVE_INFINITY,\n accept,\n children,\n onDropAny,\n onDrop,\n onReject,\n openRef,\n name,\n maxFiles,\n autoFocus,\n activateOnClick = true,\n activateOnDrag = true,\n dragEventsBubbling = true,\n activateOnKeyboard = true,\n onDragEnter,\n onDragLeave,\n onDragOver,\n onFileDialogCancel,\n onFileDialogOpen,\n preventDropOnDocument,\n useFsAccessApi = true,\n getFilesFromEvent,\n validator,\n enablePointerEvents,\n inputProps,\n ref,\n ...props\n}: DropzoneProps) => {\n const {\n getRootProps,\n getInputProps,\n isDragAccept,\n isDragReject,\n isDragActive,\n open,\n } = useDropzone({\n onDrop: onDropAny,\n onDropAccepted: onDrop,\n onDropRejected: onReject,\n disabled: disabledProp || loading,\n accept: Array.isArray(accept)\n ? Object.fromEntries(accept.map((key) => [key, []]))\n : accept,\n multiple,\n maxSize,\n maxFiles,\n autoFocus,\n noClick: !activateOnClick,\n noDrag: !activateOnDrag,\n noDragEventsBubbling: !dragEventsBubbling,\n noKeyboard: !activateOnKeyboard,\n onDragEnter,\n onDragLeave,\n onDragOver,\n onFileDialogCancel,\n onFileDialogOpen,\n preventDropOnDocument,\n useFsAccessApi,\n validator,\n ...(getFilesFromEvent ? { getFilesFromEvent } : null),\n });\n\n useImperativeHandle(openRef, () => open, [open]);\n\n const isAccepted = isDragActive && isDragAccept;\n const isRejected = isDragActive && isDragReject;\n const isIdle = isDragActive\n ? isAccepted === false && isRejected === false\n : true;\n\n let status: \"idle\" | \"accept\" | \"reject\" = \"idle\";\n if (statusProp) {\n status = statusProp;\n } else if (isAccepted) {\n status = \"accept\";\n } else if (isRejected) {\n status = \"reject\";\n }\n const disabled = disabledProp || loading;\n\n const { root, inner, overlay } = dropzoneVariants({\n variant,\n status,\n disabled,\n loading,\n activateOnClick,\n });\n\n return (\n <DropzoneContext.Provider\n value={{ accept: isAccepted, reject: isRejected, idle: isIdle }}\n >\n <div\n {...getRootProps()}\n className={cn(root(), className)}\n data-disabled={disabled || undefined}\n data-loading={loading || undefined}\n data-slot=\"dropzone\"\n ref={ref}\n {...props}\n >\n {loading && (\n <div className={overlay()}>\n <Spinner />\n </div>\n )}\n <input {...getInputProps(inputProps)} name={name} />\n <div\n className={inner()}\n data-enable-pointer-events={enablePointerEvents || undefined}\n >\n {children}\n </div>\n </div>\n </DropzoneContext.Provider>\n );\n};\n\nDropzone.Accept = DropzoneAccept;\nDropzone.Idle = DropzoneIdle;\nDropzone.Reject = DropzoneReject;\n\nexport type {\n DropzoneAcceptProps,\n DropzoneIdleProps,\n DropzoneRejectProps,\n} from \"./dropzone-status\";\nexport type { DropzoneProps, DropzoneVariants };\n\nexport {\n Dropzone,\n DropzoneAccept,\n DropzoneContext,\n DropzoneIdle,\n DropzoneReject,\n dropzoneVariants,\n useDropzoneContext,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dropzone.js","names":[],"sources":["../../src/ui/dropzone/dropzone-context.tsx","../../src/ui/dropzone/dropzone-status.tsx","../../src/ui/dropzone/dropzone.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext } from \"react\";\n\ninterface DropzoneContextValue {\n idle: boolean;\n accept: boolean;\n reject: boolean;\n}\n\nconst DropzoneContext = createContext<DropzoneContextValue | null>(null);\n\nexport const useDropzoneContext = () => {\n const context = useContext(DropzoneContext);\n if (!context) {\n throw new Error(\"Dropzone components must be used within Dropzone\");\n }\n return context;\n};\n\nexport { DropzoneContext };\n","\"use client\";\n\nimport type { ComponentProps, JSX, ReactNode } from \"react\";\nimport { cloneElement, isValidElement } from \"react\";\nimport { cn } from \"tailwind-variants\";\n\nimport { useDropzoneContext } from \"./dropzone-context\";\n\ntype DropzoneStatusProps = ComponentProps<\"div\"> & {\n children: ReactNode;\n};\n\nconst createDropzoneStatus = (status: \"accept\" | \"reject\" | \"idle\") => {\n const Component = ({\n children,\n className,\n ...props\n }: DropzoneStatusProps) => {\n const ctx = useDropzoneContext();\n const _children = isValidElement(children) ? (\n children\n ) : (\n <span>{children}</span>\n );\n\n if (!ctx[status]) {\n return null;\n }\n\n return cloneElement(_children as JSX.Element, {\n className: cn(className, (_children as JSX.Element).props.className),\n ...props,\n });\n };\n\n Component.displayName = `Dropzone${status.charAt(0).toUpperCase() + status.slice(1)}`;\n\n return Component;\n};\n\nexport const DropzoneAccept = createDropzoneStatus(\"accept\");\nexport const DropzoneReject = createDropzoneStatus(\"reject\");\nexport const DropzoneIdle = createDropzoneStatus(\"idle\");\n\nexport type { DropzoneStatusProps };\nexport type DropzoneAcceptProps = DropzoneStatusProps;\nexport type DropzoneRejectProps = DropzoneStatusProps;\nexport type DropzoneIdleProps = DropzoneStatusProps;\n","\"use client\";\n\nimport type {\n ComponentProps,\n DragEvent,\n InputHTMLAttributes,\n Ref,\n} from \"react\";\nimport { useImperativeHandle, useMemo } from \"react\";\nimport type {\n Accept,\n DropEvent,\n FileError,\n FileRejection,\n FileWithPath,\n} from \"react-dropzone\";\nimport { useDropzone } from \"react-dropzone\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport { Spinner } from \"../spinner/spinner\";\nimport { DropzoneContext, useDropzoneContext } from \"./dropzone-context\";\nimport {\n DropzoneAccept,\n DropzoneIdle,\n DropzoneReject,\n} from \"./dropzone-status\";\n\nconst dropzoneVariants = tv({\n compoundVariants: [\n {\n class: {\n root: \"border-primary bg-primary/20\",\n },\n status: \"accept\",\n variant: \"filled\",\n },\n {\n class: {\n root: \"border-primary bg-primary/10\",\n },\n status: \"accept\",\n variant: \"light\",\n },\n {\n class: {\n root: \"border-danger bg-danger/20\",\n },\n status: \"reject\",\n variant: \"filled\",\n },\n {\n class: {\n root: \"border-danger bg-danger\",\n },\n status: \"reject\",\n variant: \"light\",\n },\n ],\n defaultVariants: {\n activateOnClick: true,\n disabled: false,\n loading: false,\n status: \"idle\",\n variant: \"light\",\n },\n slots: {\n inner: [\n \"pointer-events-none\",\n \"select-none\",\n \"data-enable-pointer-events:pointer-events-auto\",\n ],\n overlay: [\n \"absolute\",\n \"inset-0\",\n \"z-raised\",\n \"flex\",\n \"items-center\",\n \"justify-center\",\n \"rounded-lg\",\n \"bg-background/80\",\n \"backdrop-blur-sm\",\n ],\n root: [\n \"relative\",\n \"cursor-clickable\",\n \"select-none\",\n \"rounded-lg\",\n \"border\",\n \"border-input\",\n \"border-dashed\",\n \"bg-background\",\n \"p-4\",\n \"outline-none\",\n \"transition-colors\",\n \"focus-visible:ring-2\",\n \"focus-visible:ring-ring\",\n \"focus-visible:ring-offset-2\",\n ],\n },\n variants: {\n activateOnClick: {\n false: {\n root: [\n // Cursor: default cursor when click is disabled\n \"cursor-default\",\n ],\n },\n true: {},\n },\n disabled: {\n true: {\n root: [\n // Cursor: default cursor\n \"cursor-default\",\n // Opacity: reduced opacity\n \"opacity-50\",\n ],\n },\n },\n loading: {\n true: {\n root: [\n // Cursor: default cursor\n \"cursor-default\",\n ],\n },\n },\n status: {\n accept: {\n root: [\n // Border: primary border color\n \"border-primary\",\n // Background: primary background with opacity\n \"bg-primary/10\",\n // Text: primary text color\n \"text-primary-foreground\",\n ],\n },\n idle: {\n root: [\n // No additional styles for idle status\n ],\n },\n reject: {\n root: [\n // Border: danger border color\n \"border-danger\",\n // Background: danger background with opacity\n \"bg-danger\",\n // Text: danger text color\n \"text-danger-foreground\",\n ],\n },\n },\n variant: {\n default: {\n root: [\n // No additional styles for default variant\n ],\n },\n filled: {\n root: [\n // Background: muted background\n \"bg-muted\",\n ],\n },\n light: {\n root: [\n // Background: muted background with opacity\n \"bg-muted/50\",\n ],\n },\n },\n },\n});\n\ntype DropzoneVariants = VariantProps<typeof dropzoneVariants>;\n\ntype DropzoneProps = Omit<ComponentProps<\"div\">, \"onDrop\" | \"ref\"> &\n DropzoneVariants & {\n ref?: Ref<HTMLDivElement>;\n /** Called when any files are dropped to the dropzone */\n onDropAny?: (\n files: FileWithPath[],\n fileRejections: FileRejection[]\n ) => void;\n\n /** Called when valid files are dropped to the dropzone */\n onDrop: (files: FileWithPath[]) => void;\n\n /** Called when dropped files do not meet file restrictions */\n onReject?: (fileRejections: FileRejection[]) => void;\n\n /** Determines whether files capturing should be disabled */\n disabled?: boolean;\n\n /** Determines whether a loading overlay should be displayed */\n loading?: boolean;\n\n /** Mime types of the files that dropzone can accept */\n accept?: Accept | string[];\n\n /** A ref function which when called opens the file system file picker */\n openRef?: Ref<() => void>;\n\n /** Determines whether multiple files can be dropped */\n multiple?: boolean;\n\n /** Maximum file size in bytes */\n maxSize?: number;\n\n /** Name of the form control */\n name?: string;\n\n /** Maximum number of files that can be picked at once */\n maxFiles?: number;\n\n /** Set to autofocus the root element */\n autoFocus?: boolean;\n\n /** If false, disables click to open the native file selection dialog */\n activateOnClick?: boolean;\n\n /** If false, disables drag 'n' drop */\n activateOnDrag?: boolean;\n\n /** If false, disables Space/Enter to open the native file selection dialog */\n activateOnKeyboard?: boolean;\n\n /** If false, stops drag event propagation to parents */\n dragEventsBubbling?: boolean;\n\n /** Called when the dragenter event occurs */\n onDragEnter?: (event: DragEvent<HTMLElement>) => void;\n\n /** Called when the dragleave event occurs */\n onDragLeave?: (event: DragEvent<HTMLElement>) => void;\n\n /** Called when the dragover event occurs */\n onDragOver?: (event: DragEvent<HTMLElement>) => void;\n\n /** Called when user closes the file selection dialog with no selection */\n onFileDialogCancel?: () => void;\n\n /** Called when user opens the file selection dialog */\n onFileDialogOpen?: () => void;\n\n /** If false, allow dropped items to take over the current browser window */\n preventDropOnDocument?: boolean;\n\n /** Set to true to use the File System Access API */\n useFsAccessApi?: boolean;\n\n /** Use this to provide a custom file aggregator */\n getFilesFromEvent?: (\n event: DropEvent\n ) => Promise<(File | DataTransferItem)[]>;\n\n /** Custom validation function */\n validator?: <T extends File>(file: T) => FileError | FileError[] | null;\n\n /** Determines whether pointer events should be enabled on the inner element */\n enablePointerEvents?: boolean;\n\n /** Props passed down to the internal Input component */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n };\n\nconst Dropzone = ({\n className,\n variant,\n status: statusProp,\n disabled: disabledProp,\n loading,\n multiple = true,\n maxSize = Number.POSITIVE_INFINITY,\n accept,\n children,\n onDropAny,\n onDrop,\n onReject,\n openRef,\n name,\n maxFiles,\n autoFocus,\n activateOnClick = true,\n activateOnDrag = true,\n dragEventsBubbling = true,\n activateOnKeyboard = true,\n onDragEnter,\n onDragLeave,\n onDragOver,\n onFileDialogCancel,\n onFileDialogOpen,\n preventDropOnDocument,\n useFsAccessApi = true,\n getFilesFromEvent,\n validator,\n enablePointerEvents,\n inputProps,\n ref,\n ...props\n}: DropzoneProps) => {\n const {\n getRootProps,\n getInputProps,\n isDragAccept,\n isDragReject,\n isDragActive,\n open,\n } = useDropzone({\n accept: Array.isArray(accept)\n ? Object.fromEntries(accept.map((key) => [key, []]))\n : accept,\n autoFocus,\n disabled: disabledProp || loading,\n maxFiles,\n maxSize,\n multiple,\n noClick: !activateOnClick,\n noDrag: !activateOnDrag,\n noDragEventsBubbling: !dragEventsBubbling,\n noKeyboard: !activateOnKeyboard,\n onDragEnter,\n onDragLeave,\n onDragOver,\n onDrop: onDropAny,\n onDropAccepted: onDrop,\n onDropRejected: onReject,\n onFileDialogCancel,\n onFileDialogOpen,\n preventDropOnDocument,\n useFsAccessApi,\n validator,\n ...(getFilesFromEvent ? { getFilesFromEvent } : null),\n });\n\n useImperativeHandle(openRef, () => open, [open]);\n\n const isAccepted = isDragActive && isDragAccept;\n const isRejected = isDragActive && isDragReject;\n const isIdle = isDragActive\n ? isAccepted === false && isRejected === false\n : true;\n\n let status: \"idle\" | \"accept\" | \"reject\" = \"idle\";\n if (statusProp) {\n status = statusProp;\n } else if (isAccepted) {\n status = \"accept\";\n } else if (isRejected) {\n status = \"reject\";\n }\n const disabled = disabledProp || loading;\n\n const { root, inner, overlay } = dropzoneVariants({\n activateOnClick,\n disabled,\n loading,\n status,\n variant,\n });\n const contextValue = useMemo(\n () => ({ accept: isAccepted, idle: isIdle, reject: isRejected }),\n [isAccepted, isRejected, isIdle]\n );\n\n return (\n <DropzoneContext.Provider value={contextValue}>\n <div\n {...getRootProps()}\n className={cn(root(), className)}\n data-disabled={disabled || undefined}\n data-loading={loading || undefined}\n data-slot=\"dropzone\"\n ref={ref}\n {...props}\n >\n {loading && (\n <div className={overlay()}>\n <Spinner />\n </div>\n )}\n <input {...getInputProps(inputProps)} name={name} />\n <div\n className={inner()}\n data-enable-pointer-events={enablePointerEvents || undefined}\n >\n {children}\n </div>\n </div>\n </DropzoneContext.Provider>\n );\n};\n\nDropzone.Accept = DropzoneAccept;\nDropzone.Idle = DropzoneIdle;\nDropzone.Reject = DropzoneReject;\n\nexport type {\n DropzoneAcceptProps,\n DropzoneIdleProps,\n DropzoneRejectProps,\n} from \"./dropzone-status\";\nexport type { DropzoneProps, DropzoneVariants };\n\nexport {\n Dropzone,\n DropzoneAccept,\n DropzoneContext,\n DropzoneIdle,\n DropzoneReject,\n dropzoneVariants,\n useDropzoneContext,\n};\n"],"mappings":";;;;;;;;;AAUA,MAAM,kBAAkB,cAA2C,KAAK;AAExE,MAAa,2BAA2B;CACtC,MAAM,UAAU,WAAW,gBAAgB;AAC3C,KAAI,CAAC,QACH,OAAM,IAAI,MAAM,mDAAmD;AAErE,QAAO;;;;;ACLT,MAAM,wBAAwB,WAAyC;CACrE,MAAM,aAAa,EACjB,UACA,WACA,GAAG,YACsB;EACzB,MAAM,MAAM,oBAAoB;EAChC,MAAM,YAAY,eAAe,SAAS,GACxC,WAEA,oBAAC,QAAD,EAAO,UAAgB;AAGzB,MAAI,CAAC,IAAI,QACP,QAAO;AAGT,SAAO,aAAa,WAA0B;GAC5C,WAAW,GAAG,WAAY,UAA0B,MAAM,UAAU;GACpE,GAAG;GACJ,CAAC;;AAGJ,WAAU,cAAc,WAAW,OAAO,OAAO,EAAE,CAAC,aAAa,GAAG,OAAO,MAAM,EAAE;AAEnF,QAAO;;AAGT,MAAa,iBAAiB,qBAAqB,SAAS;AAC5D,MAAa,iBAAiB,qBAAqB,SAAS;AAC5D,MAAa,eAAe,qBAAqB,OAAO;;;;ACdxD,MAAM,mBAAmB,GAAG;CAC1B,kBAAkB;EAChB;GACE,OAAO,EACL,MAAM,gCACP;GACD,QAAQ;GACR,SAAS;GACV;EACD;GACE,OAAO,EACL,MAAM,gCACP;GACD,QAAQ;GACR,SAAS;GACV;EACD;GACE,OAAO,EACL,MAAM,8BACP;GACD,QAAQ;GACR,SAAS;GACV;EACD;GACE,OAAO,EACL,MAAM,2BACP;GACD,QAAQ;GACR,SAAS;GACV;EACF;CACD,iBAAiB;EACf,iBAAiB;EACjB,UAAU;EACV,SAAS;EACT,QAAQ;EACR,SAAS;EACV;CACD,OAAO;EACL,OAAO;GACL;GACA;GACA;GACD;EACD,SAAS;GACP;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD;EACD,MAAM;GACJ;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD;EACF;CACD,UAAU;EACR,iBAAiB;GACf,OAAO,EACL,MAAM,CAEJ,iBACD,EACF;GACD,MAAM,EAAE;GACT;EACD,UAAU,EACR,MAAM,EACJ,MAAM,CAEJ,kBAEA,aACD,EACF,EACF;EACD,SAAS,EACP,MAAM,EACJ,MAAM,CAEJ,iBACD,EACF,EACF;EACD,QAAQ;GACN,QAAQ,EACN,MAAM;IAEJ;IAEA;IAEA;IACD,EACF;GACD,MAAM,EACJ,MAAM,EAEL,EACF;GACD,QAAQ,EACN,MAAM;IAEJ;IAEA;IAEA;IACD,EACF;GACF;EACD,SAAS;GACP,SAAS,EACP,MAAM,EAEL,EACF;GACD,QAAQ,EACN,MAAM,CAEJ,WACD,EACF;GACD,OAAO,EACL,MAAM,CAEJ,cACD,EACF;GACF;EACF;CACF,CAAC;AA8FF,MAAM,YAAY,EAChB,WACA,SACA,QAAQ,YACR,UAAU,cACV,SACA,WAAW,MACX,UAAU,OAAO,mBACjB,QACA,UACA,WACA,QACA,UACA,SACA,MACA,UACA,WACA,kBAAkB,MAClB,iBAAiB,MACjB,qBAAqB,MACrB,qBAAqB,MACrB,aACA,aACA,YACA,oBACA,kBACA,uBACA,iBAAiB,MACjB,mBACA,WACA,qBACA,YACA,KACA,GAAG,YACgB;CACnB,MAAM,EACJ,cACA,eACA,cACA,cACA,cACA,SACE,YAAY;EACd,QAAQ,MAAM,QAAQ,OAAO,GACzB,OAAO,YAAY,OAAO,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAClD;EACJ;EACA,UAAU,gBAAgB;EAC1B;EACA;EACA;EACA,SAAS,CAAC;EACV,QAAQ,CAAC;EACT,sBAAsB,CAAC;EACvB,YAAY,CAAC;EACb;EACA;EACA;EACA,QAAQ;EACR,gBAAgB;EAChB,gBAAgB;EAChB;EACA;EACA;EACA;EACA;EACA,GAAI,oBAAoB,EAAE,mBAAmB,GAAG;EACjD,CAAC;AAEF,qBAAoB,eAAe,MAAM,CAAC,KAAK,CAAC;CAEhD,MAAM,aAAa,gBAAgB;CACnC,MAAM,aAAa,gBAAgB;CACnC,MAAM,SAAS,eACX,eAAe,SAAS,eAAe,QACvC;CAEJ,IAAI,SAAuC;AAC3C,KAAI,WACF,UAAS;UACA,WACT,UAAS;UACA,WACT,UAAS;CAEX,MAAM,WAAW,gBAAgB;CAEjC,MAAM,EAAE,MAAM,OAAO,YAAY,iBAAiB;EAChD;EACA;EACA;EACA;EACA;EACD,CAAC;CACF,MAAM,eAAe,eACZ;EAAE,QAAQ;EAAY,MAAM;EAAQ,QAAQ;EAAY,GAC/D;EAAC;EAAY;EAAY;EAAO,CACjC;AAED,QACE,oBAAC,gBAAgB,UAAjB;EAA0B,OAAO;YAC/B,qBAAC,OAAD;GACE,GAAI,cAAc;GAClB,WAAW,GAAG,MAAM,EAAE,UAAU;GAChC,iBAAe,YAAY;GAC3B,gBAAc,WAAW;GACzB,aAAU;GACL;GACL,GAAI;aAPN;IASG,WACC,oBAAC,OAAD;KAAK,WAAW,SAAS;eACvB,oBAAC,SAAD,EAAW;KACP;IAER,oBAAC,SAAD;KAAO,GAAI,cAAc,WAAW;KAAQ;KAAQ;IACpD,oBAAC,OAAD;KACE,WAAW,OAAO;KAClB,8BAA4B,uBAAuB;KAElD;KACG;IACF;;EACmB;;AAI/B,SAAS,SAAS;AAClB,SAAS,OAAO;AAChB,SAAS,SAAS"}
|