@sth87/shadcn-design-system 0.0.35 → 0.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/README.md +20 -2
- package/dist/AI_CONTEXT.md +212 -214
- package/dist/cjs/components/Accordion/Accordion.cjs +1 -1
- package/dist/cjs/components/Accordion/Accordion.cjs.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.cjs +1 -1
- package/dist/cjs/components/Avatar/Avatar.cjs.map +1 -1
- package/dist/cjs/components/Badge/Badge.cjs +1 -1
- package/dist/cjs/components/Badge/Badge.cjs.map +1 -1
- package/dist/cjs/components/Breadcrumb/Breadcrumb.cjs +1 -1
- package/dist/cjs/components/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/cjs/components/Button/Button.cjs +1 -1
- package/dist/cjs/components/Button/Button.cjs.map +1 -1
- package/dist/cjs/components/Calendar/Calendar.cjs +1 -1
- package/dist/cjs/components/Calendar/Calendar.cjs.map +1 -1
- package/dist/cjs/components/Carousel/Carousel.cjs +1 -1
- package/dist/cjs/components/Carousel/Carousel.cjs.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.cjs +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
- package/dist/cjs/components/Collapsible/Collapsible.cjs +1 -1
- package/dist/cjs/components/Collapsible/Collapsible.cjs.map +1 -1
- package/dist/cjs/components/Command/Command.cjs +1 -1
- package/dist/cjs/components/Command/Command.cjs.map +1 -1
- package/dist/cjs/components/ContextMenu/ContextMenu.cjs +1 -1
- package/dist/cjs/components/ContextMenu/ContextMenu.cjs.map +1 -1
- package/dist/cjs/components/Cropper/Cropper.cjs +1 -1
- package/dist/cjs/components/Cropper/Cropper.cjs.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.cjs +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
- package/dist/cjs/components/DatePicker/RangePicker.cjs +1 -1
- package/dist/cjs/components/DatePicker/RangePicker.cjs.map +1 -1
- package/dist/cjs/components/DatePicker/TimePicker.cjs +1 -1
- package/dist/cjs/components/DatePicker/TimePicker.cjs.map +1 -1
- package/dist/cjs/components/Dialog/Dialog.cjs +1 -1
- package/dist/cjs/components/Dialog/Dialog.cjs.map +1 -1
- package/dist/cjs/components/DropdownMenu/DropdownMenu.cjs +1 -1
- package/dist/cjs/components/DropdownMenu/DropdownMenu.cjs.map +1 -1
- package/dist/cjs/components/FloatLabel.cjs +1 -1
- package/dist/cjs/components/FloatLabel.cjs.map +1 -1
- package/dist/cjs/components/Glass/Glass.cjs +1 -1
- package/dist/cjs/components/Glass/Glass.cjs.map +1 -1
- package/dist/cjs/components/ImageViewer/ImageViewer.cjs +1 -1
- package/dist/cjs/components/ImageViewer/ImageViewer.cjs.map +1 -1
- package/dist/cjs/components/Input/Input.cjs +1 -1
- package/dist/cjs/components/Input/Input.cjs.map +1 -1
- package/dist/cjs/components/InputOTP/InputOTP.cjs +1 -1
- package/dist/cjs/components/InputOTP/InputOTP.cjs.map +1 -1
- package/dist/cjs/components/Interactive/CursorFollow.cjs +1 -1
- package/dist/cjs/components/Interactive/CursorFollow.cjs.map +1 -1
- package/dist/cjs/components/Marquee/Marquee.cjs +1 -1
- package/dist/cjs/components/Marquee/Marquee.cjs.map +1 -1
- package/dist/cjs/components/Pagination/Pagination.cjs +1 -1
- package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -1
- package/dist/cjs/components/QrCode/QrCode.cjs +1 -1
- package/dist/cjs/components/QrCode/QrCode.cjs.map +1 -1
- package/dist/cjs/components/Radio/Radio.cjs +1 -1
- package/dist/cjs/components/Radio/Radio.cjs.map +1 -1
- package/dist/cjs/components/Rate/Rate.cjs +1 -1
- package/dist/cjs/components/Rate/Rate.cjs.map +1 -1
- package/dist/cjs/components/Resizable/Resizable.cjs +1 -1
- package/dist/cjs/components/Resizable/Resizable.cjs.map +1 -1
- package/dist/cjs/components/ScrollArea/ScrollArea.cjs +1 -1
- package/dist/cjs/components/ScrollArea/ScrollArea.cjs.map +1 -1
- package/dist/cjs/components/Select/Select.cjs +1 -1
- package/dist/cjs/components/Select/Select.cjs.map +1 -1
- package/dist/cjs/components/Sheet/Sheet.cjs +2 -2
- package/dist/cjs/components/Sheet/Sheet.cjs.map +1 -1
- package/dist/cjs/components/Slider/Slider.cjs +1 -1
- package/dist/cjs/components/Slider/Slider.cjs.map +1 -1
- package/dist/cjs/components/Stepper/Stepper.cjs +1 -1
- package/dist/cjs/components/Stepper/Stepper.cjs.map +1 -1
- package/dist/cjs/components/Stepper/StepperWrapper.cjs +1 -1
- package/dist/cjs/components/Stepper/StepperWrapper.cjs.map +1 -1
- package/dist/cjs/components/Switch/Switch.cjs +1 -1
- package/dist/cjs/components/Switch/Switch.cjs.map +1 -1
- package/dist/cjs/components/Table/TableFilter/data-table-date-filter.cjs +1 -1
- package/dist/cjs/components/Table/TableFilter/data-table-date-filter.cjs.map +1 -1
- package/dist/cjs/components/Table/TableFilter/data-table-filter-popover.cjs +1 -1
- package/dist/cjs/components/Table/TableFilter/data-table-filter-popover.cjs.map +1 -1
- package/dist/cjs/components/Table/TableFilter/data-table-slider-filter.cjs +1 -1
- package/dist/cjs/components/Table/TableFilter/data-table-slider-filter.cjs.map +1 -1
- package/dist/cjs/components/Table/data-table-column-header.cjs +1 -1
- package/dist/cjs/components/Table/data-table-column-header.cjs.map +1 -1
- package/dist/cjs/components/Table/data-table-pagination.cjs +1 -1
- package/dist/cjs/components/Table/data-table-pagination.cjs.map +1 -1
- package/dist/cjs/components/Table/data-table.cjs +1 -1
- package/dist/cjs/components/Table/data-table.cjs.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.cjs +1 -1
- package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -1
- package/dist/cjs/components/Tabs/classes.cjs +1 -1
- package/dist/cjs/components/Tabs/classes.cjs.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.cjs +1 -1
- package/dist/cjs/components/Textarea/Textarea.cjs.map +1 -1
- package/dist/cjs/components/TimeGridView.cjs +1 -1
- package/dist/cjs/components/TimeGridView.cjs.map +1 -1
- package/dist/cjs/components/Toast/Toast.cjs +1 -1
- package/dist/cjs/components/Toast/Toast.cjs.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.cjs +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/cjs/components/Tour/Tour.cjs +1 -1
- package/dist/cjs/components/Tour/Tour.cjs.map +1 -1
- package/dist/cjs/components/Tour/TourWrapper.cjs +1 -1
- package/dist/cjs/components/Tour/TourWrapper.cjs.map +1 -1
- package/dist/cjs/components/Upload/Upload.cjs +3 -3
- package/dist/cjs/components/Upload/Upload.cjs.map +1 -1
- package/dist/cjs/components/WheelColumn.cjs +1 -1
- package/dist/cjs/components/WheelColumn.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/BlurText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/BlurText.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/CircularText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/CircularText.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/FlipWords.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/FlipWords.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/GradientText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/GradientText.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/RollingText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/RollingText.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/RotatingText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/RotatingText.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/ShimmeringText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/ShimmeringText.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/TextGenerateEffect.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/TextGenerateEffect.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/TextHoverEffect.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/TextHoverEffect.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/TextPressureEffect.cjs +2 -2
- package/dist/cjs/lib/TextAnimation/TextPressureEffect.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/TypingText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/TypingText.cjs.map +1 -1
- package/dist/cjs/lib/TextAnimation/WritingText.cjs +1 -1
- package/dist/cjs/lib/TextAnimation/WritingText.cjs.map +1 -1
- package/dist/cjs/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.cjs.map +1 -0
- package/dist/cjs/packages/ui/src/components/accordion.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/accordion.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/alert-dialog.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/alert-dialog.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/avatar.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/avatar.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/badge.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/badge.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/breadcrumb.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/breadcrumb.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/button-group.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/button-group.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/button.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/button.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/calendar.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/calendar.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/checkbox.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/checkbox.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/combobox.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/combobox.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/command.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/command.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/context-menu.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/context-menu.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/dialog.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/dialog.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/drawer.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/drawer.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/dropdown-menu.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/dropdown-menu.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/input-otp.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/input-otp.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/input.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/input.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/label.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/label.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/pagination.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/pagination.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/popover.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/popover.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/radio-group.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/radio-group.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/resizable.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/resizable.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/scroll-area.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/scroll-area.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/select.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/select.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/separator.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/separator.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/sheet.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/sheet.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/sidebar.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/sidebar.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/skeleton.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/skeleton.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/switch.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/switch.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/table.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/table.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/tabs.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/tabs.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/textarea.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/textarea.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/toggle.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/toggle.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/tooltip.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/tooltip.cjs.map +1 -1
- package/dist/cjs/packages/ui/src/components/tree-view.cjs +1 -1
- package/dist/cjs/packages/ui/src/components/tree-view.cjs.map +1 -1
- package/dist/cjs/styles/index.css +1 -1
- package/dist/cjs/utils/animations.cjs +1 -1
- package/dist/cjs/utils/animations.cjs.map +1 -1
- package/dist/cjs/utils/css.cjs +1 -1
- package/dist/cjs/utils/css.cjs.map +1 -1
- package/dist/cjs/utils/parsers.cjs +1 -1
- package/dist/cjs/utils/parsers.cjs.map +1 -1
- package/dist/esm/components/Accordion/Accordion.js +60 -60
- package/dist/esm/components/Accordion/Accordion.js.map +1 -1
- package/dist/esm/components/Avatar/Avatar.js +40 -40
- package/dist/esm/components/Avatar/Avatar.js.map +1 -1
- package/dist/esm/components/Badge/Badge.js +1 -1
- package/dist/esm/components/Badge/Badge.js.map +1 -1
- package/dist/esm/components/Breadcrumb/Breadcrumb.js +36 -36
- package/dist/esm/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/esm/components/Button/Button.js +9 -9
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Calendar/Calendar.js +4 -4
- package/dist/esm/components/Calendar/Calendar.js.map +1 -1
- package/dist/esm/components/Carousel/Carousel.js +165 -165
- package/dist/esm/components/Carousel/Carousel.js.map +1 -1
- package/dist/esm/components/Checkbox/Checkbox.js +26 -26
- package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/Collapsible/Collapsible.js +43 -43
- package/dist/esm/components/Collapsible/Collapsible.js.map +1 -1
- package/dist/esm/components/Command/Command.js +28 -28
- package/dist/esm/components/Command/Command.js.map +1 -1
- package/dist/esm/components/ContextMenu/ContextMenu.js +11 -11
- package/dist/esm/components/ContextMenu/ContextMenu.js.map +1 -1
- package/dist/esm/components/Cropper/Cropper.js +132 -132
- package/dist/esm/components/Cropper/Cropper.js.map +1 -1
- package/dist/esm/components/DatePicker/DatePicker.js +75 -75
- package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/esm/components/DatePicker/RangePicker.js +136 -136
- package/dist/esm/components/DatePicker/RangePicker.js.map +1 -1
- package/dist/esm/components/DatePicker/TimePicker.js +150 -150
- package/dist/esm/components/DatePicker/TimePicker.js.map +1 -1
- package/dist/esm/components/Dialog/Dialog.js +114 -114
- package/dist/esm/components/Dialog/Dialog.js.map +1 -1
- package/dist/esm/components/DropdownMenu/DropdownMenu.js +13 -13
- package/dist/esm/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/esm/components/FloatLabel.js +44 -44
- package/dist/esm/components/FloatLabel.js.map +1 -1
- package/dist/esm/components/Glass/Glass.js +15 -15
- package/dist/esm/components/Glass/Glass.js.map +1 -1
- package/dist/esm/components/ImageViewer/ImageViewer.js +53 -53
- package/dist/esm/components/ImageViewer/ImageViewer.js.map +1 -1
- package/dist/esm/components/Input/Input.js +104 -104
- package/dist/esm/components/Input/Input.js.map +1 -1
- package/dist/esm/components/InputOTP/InputOTP.js +16 -16
- package/dist/esm/components/InputOTP/InputOTP.js.map +1 -1
- package/dist/esm/components/Interactive/CursorFollow.js +49 -49
- package/dist/esm/components/Interactive/CursorFollow.js.map +1 -1
- package/dist/esm/components/Marquee/Marquee.js +130 -130
- package/dist/esm/components/Marquee/Marquee.js.map +1 -1
- package/dist/esm/components/Pagination/Pagination.js +68 -68
- package/dist/esm/components/Pagination/Pagination.js.map +1 -1
- package/dist/esm/components/QrCode/QrCode.js +37 -37
- package/dist/esm/components/QrCode/QrCode.js.map +1 -1
- package/dist/esm/components/Radio/Radio.js +16 -16
- package/dist/esm/components/Radio/Radio.js.map +1 -1
- package/dist/esm/components/Rate/Rate.js +62 -62
- package/dist/esm/components/Rate/Rate.js.map +1 -1
- package/dist/esm/components/Resizable/Resizable.js +6 -6
- package/dist/esm/components/Resizable/Resizable.js.map +1 -1
- package/dist/esm/components/ScrollArea/ScrollArea.js +10 -10
- package/dist/esm/components/ScrollArea/ScrollArea.js.map +1 -1
- package/dist/esm/components/Select/Select.js +64 -64
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/Sheet/Sheet.js +21 -21
- package/dist/esm/components/Sheet/Sheet.js.map +1 -1
- package/dist/esm/components/Slider/Slider.js +54 -54
- package/dist/esm/components/Slider/Slider.js.map +1 -1
- package/dist/esm/components/Stepper/Stepper.js +198 -198
- package/dist/esm/components/Stepper/Stepper.js.map +1 -1
- package/dist/esm/components/Stepper/StepperWrapper.js +15 -15
- package/dist/esm/components/Stepper/StepperWrapper.js.map +1 -1
- package/dist/esm/components/Switch/Switch.js +38 -38
- package/dist/esm/components/Switch/Switch.js.map +1 -1
- package/dist/esm/components/Table/TableFilter/data-table-date-filter.js +37 -37
- package/dist/esm/components/Table/TableFilter/data-table-date-filter.js.map +1 -1
- package/dist/esm/components/Table/TableFilter/data-table-filter-popover.js +25 -25
- package/dist/esm/components/Table/TableFilter/data-table-filter-popover.js.map +1 -1
- package/dist/esm/components/Table/TableFilter/data-table-slider-filter.js +64 -64
- package/dist/esm/components/Table/TableFilter/data-table-slider-filter.js.map +1 -1
- package/dist/esm/components/Table/data-table-column-header.js +18 -18
- package/dist/esm/components/Table/data-table-column-header.js.map +1 -1
- package/dist/esm/components/Table/data-table-pagination.js +21 -21
- package/dist/esm/components/Table/data-table-pagination.js.map +1 -1
- package/dist/esm/components/Table/data-table.js +18 -18
- package/dist/esm/components/Table/data-table.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js +242 -242
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/Tabs/classes.js +51 -51
- package/dist/esm/components/Tabs/classes.js.map +1 -1
- package/dist/esm/components/Textarea/Textarea.js +49 -49
- package/dist/esm/components/Textarea/Textarea.js.map +1 -1
- package/dist/esm/components/TimeGridView.js +12 -12
- package/dist/esm/components/TimeGridView.js.map +1 -1
- package/dist/esm/components/Toast/Toast.js +45 -45
- package/dist/esm/components/Toast/Toast.js.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.js +19 -19
- package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/esm/components/Tour/Tour.js +11 -11
- package/dist/esm/components/Tour/Tour.js.map +1 -1
- package/dist/esm/components/Tour/TourWrapper.js +15 -15
- package/dist/esm/components/Tour/TourWrapper.js.map +1 -1
- package/dist/esm/components/Upload/Upload.js +405 -405
- package/dist/esm/components/Upload/Upload.js.map +1 -1
- package/dist/esm/components/WheelColumn.js +47 -47
- package/dist/esm/components/WheelColumn.js.map +1 -1
- package/dist/esm/lib/TextAnimation/BlurText.js +18 -18
- package/dist/esm/lib/TextAnimation/BlurText.js.map +1 -1
- package/dist/esm/lib/TextAnimation/CircularText.js +7 -7
- package/dist/esm/lib/TextAnimation/CircularText.js.map +1 -1
- package/dist/esm/lib/TextAnimation/FlipWords.js +21 -21
- package/dist/esm/lib/TextAnimation/FlipWords.js.map +1 -1
- package/dist/esm/lib/TextAnimation/GradientText.js +4 -4
- package/dist/esm/lib/TextAnimation/GradientText.js.map +1 -1
- package/dist/esm/lib/TextAnimation/RollingText.js +24 -24
- package/dist/esm/lib/TextAnimation/RollingText.js.map +1 -1
- package/dist/esm/lib/TextAnimation/RotatingText.js +6 -6
- package/dist/esm/lib/TextAnimation/RotatingText.js.map +1 -1
- package/dist/esm/lib/TextAnimation/ShimmeringText.js +9 -9
- package/dist/esm/lib/TextAnimation/ShimmeringText.js.map +1 -1
- package/dist/esm/lib/TextAnimation/TextGenerateEffect.js +14 -14
- package/dist/esm/lib/TextAnimation/TextGenerateEffect.js.map +1 -1
- package/dist/esm/lib/TextAnimation/TextHoverEffect.js +9 -9
- package/dist/esm/lib/TextAnimation/TextHoverEffect.js.map +1 -1
- package/dist/esm/lib/TextAnimation/TextPressureEffect.js +3 -3
- package/dist/esm/lib/TextAnimation/TextPressureEffect.js.map +1 -1
- package/dist/esm/lib/TextAnimation/TypingText.js +17 -17
- package/dist/esm/lib/TextAnimation/TypingText.js.map +1 -1
- package/dist/esm/lib/TextAnimation/WritingText.js +10 -10
- package/dist/esm/lib/TextAnimation/WritingText.js.map +1 -1
- package/dist/esm/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.js.map +1 -0
- package/dist/esm/packages/ui/src/components/accordion.js +31 -31
- package/dist/esm/packages/ui/src/components/accordion.js.map +1 -1
- package/dist/esm/packages/ui/src/components/alert-dialog.js +33 -33
- package/dist/esm/packages/ui/src/components/alert-dialog.js.map +1 -1
- package/dist/esm/packages/ui/src/components/avatar.js +20 -20
- package/dist/esm/packages/ui/src/components/avatar.js.map +1 -1
- package/dist/esm/packages/ui/src/components/badge.js +53 -53
- package/dist/esm/packages/ui/src/components/badge.js.map +1 -1
- package/dist/esm/packages/ui/src/components/breadcrumb.js +20 -20
- package/dist/esm/packages/ui/src/components/breadcrumb.js.map +1 -1
- package/dist/esm/packages/ui/src/components/button-group.js +31 -31
- package/dist/esm/packages/ui/src/components/button-group.js.map +1 -1
- package/dist/esm/packages/ui/src/components/button.js +90 -90
- package/dist/esm/packages/ui/src/components/button.js.map +1 -1
- package/dist/esm/packages/ui/src/components/calendar.js +94 -94
- package/dist/esm/packages/ui/src/components/calendar.js.map +1 -1
- package/dist/esm/packages/ui/src/components/checkbox.js +47 -47
- package/dist/esm/packages/ui/src/components/checkbox.js.map +1 -1
- package/dist/esm/packages/ui/src/components/combobox.js +64 -64
- package/dist/esm/packages/ui/src/components/combobox.js.map +1 -1
- package/dist/esm/packages/ui/src/components/command.js +77 -77
- package/dist/esm/packages/ui/src/components/command.js.map +1 -1
- package/dist/esm/packages/ui/src/components/context-menu.js +76 -76
- package/dist/esm/packages/ui/src/components/context-menu.js.map +1 -1
- package/dist/esm/packages/ui/src/components/dialog.js +54 -54
- package/dist/esm/packages/ui/src/components/dialog.js.map +1 -1
- package/dist/esm/packages/ui/src/components/drawer.js +39 -39
- package/dist/esm/packages/ui/src/components/drawer.js.map +1 -1
- package/dist/esm/packages/ui/src/components/dropdown-menu.js +109 -109
- package/dist/esm/packages/ui/src/components/dropdown-menu.js.map +1 -1
- package/dist/esm/packages/ui/src/components/input-otp.js +30 -30
- package/dist/esm/packages/ui/src/components/input-otp.js.map +1 -1
- package/dist/esm/packages/ui/src/components/input.js +19 -19
- package/dist/esm/packages/ui/src/components/input.js.map +1 -1
- package/dist/esm/packages/ui/src/components/label.js +9 -9
- package/dist/esm/packages/ui/src/components/label.js.map +1 -1
- package/dist/esm/packages/ui/src/components/pagination.js +26 -26
- package/dist/esm/packages/ui/src/components/pagination.js.map +1 -1
- package/dist/esm/packages/ui/src/components/popover.js +13 -13
- package/dist/esm/packages/ui/src/components/popover.js.map +1 -1
- package/dist/esm/packages/ui/src/components/radio-group.js +45 -45
- package/dist/esm/packages/ui/src/components/radio-group.js.map +1 -1
- package/dist/esm/packages/ui/src/components/resizable.js +18 -18
- package/dist/esm/packages/ui/src/components/resizable.js.map +1 -1
- package/dist/esm/packages/ui/src/components/scroll-area.js +31 -31
- package/dist/esm/packages/ui/src/components/scroll-area.js.map +1 -1
- package/dist/esm/packages/ui/src/components/select.js +119 -119
- package/dist/esm/packages/ui/src/components/select.js.map +1 -1
- package/dist/esm/packages/ui/src/components/separator.js +86 -86
- package/dist/esm/packages/ui/src/components/separator.js.map +1 -1
- package/dist/esm/packages/ui/src/components/sheet.js +50 -50
- package/dist/esm/packages/ui/src/components/sheet.js.map +1 -1
- package/dist/esm/packages/ui/src/components/sidebar.js +198 -198
- package/dist/esm/packages/ui/src/components/sidebar.js.map +1 -1
- package/dist/esm/packages/ui/src/components/skeleton.js +3 -3
- package/dist/esm/packages/ui/src/components/skeleton.js.map +1 -1
- package/dist/esm/packages/ui/src/components/switch.js +57 -57
- package/dist/esm/packages/ui/src/components/switch.js.map +1 -1
- package/dist/esm/packages/ui/src/components/table.js +17 -17
- package/dist/esm/packages/ui/src/components/table.js.map +1 -1
- package/dist/esm/packages/ui/src/components/tabs.js +33 -33
- package/dist/esm/packages/ui/src/components/tabs.js.map +1 -1
- package/dist/esm/packages/ui/src/components/textarea.js +17 -17
- package/dist/esm/packages/ui/src/components/textarea.js.map +1 -1
- package/dist/esm/packages/ui/src/components/toggle.js +36 -36
- package/dist/esm/packages/ui/src/components/toggle.js.map +1 -1
- package/dist/esm/packages/ui/src/components/tooltip.js +20 -20
- package/dist/esm/packages/ui/src/components/tooltip.js.map +1 -1
- package/dist/esm/packages/ui/src/components/tree-view.js +218 -218
- package/dist/esm/packages/ui/src/components/tree-view.js.map +1 -1
- package/dist/esm/styles/index.css +1 -1
- package/dist/esm/utils/animations.js +55 -55
- package/dist/esm/utils/animations.js.map +1 -1
- package/dist/esm/utils/css.js +7 -7
- package/dist/esm/utils/css.js.map +1 -1
- package/dist/esm/utils/parsers.js +1 -1
- package/dist/types/components/DatePicker/RangePicker.d.ts.map +1 -1
- package/dist/types/lib/TextAnimation/TextPressureEffect.d.ts.map +1 -1
- package/dist/types/lib/TextAnimation/TypingText.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.cjs.map +0 -1
- package/dist/esm/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.js.map +0 -1
- /package/dist/cjs/node_modules/.pnpm/{nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1 → nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1}/node_modules/nuqs/dist/server.cjs +0 -0
- /package/dist/esm/node_modules/.pnpm/{nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1 → nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1}/node_modules/nuqs/dist/server.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidebar.cjs","sources":["../../../../../../../../packages/ui/src/components/sidebar.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { PanelLeftIcon } from \"lucide-react\";\n\nimport { useIsMobile } from \"@dsui/ui/hooks/use-mobile\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { Button } from \"@dsui/ui/components/button\";\nimport { Input } from \"@dsui/ui/components/input\";\nimport { Separator } from \"@dsui/ui/components/separator\";\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"@dsui/ui/components/sheet\";\nimport { Skeleton } from \"@dsui/ui/components/skeleton\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@dsui/ui/components/tooltip\";\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\";\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;\nconst SIDEBAR_WIDTH = \"16rem\";\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\";\nconst SIDEBAR_WIDTH_ICON = \"3rem\";\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\";\n\ntype SidebarContextProps = {\n state: \"expanded\" | \"collapsed\";\n open: boolean;\n setOpen: (open: boolean) => void;\n openMobile: boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: boolean;\n toggleSidebar: () => void;\n};\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null);\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext);\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\");\n }\n\n return context;\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n}) {\n const isMobile = useIsMobile();\n const [openMobile, setOpenMobile] = React.useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen);\n const open = openProp ?? _open;\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === \"function\" ? value(open) : value;\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n _setOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n },\n [setOpenProp, open]\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open);\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener(\"keydown\", handleKeyDown);\n return () => window.removeEventListener(\"keydown\", handleKeyDown);\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\";\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH,\n \"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n \"group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full\",\n \"has-data-[variant=tilt]:[perspective:1000px] has-data-[variant=tilt]:bg-black/20\",\n \"has-data-[variant=depth]:[perspective:1000px] has-data-[variant=depth]:bg-black/20\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n}\n\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n side?: \"left\" | \"right\";\n variant?: \"sidebar\" | \"floating\" | \"inset\" | \"tilt\" | \"depth\";\n collapsible?: \"offcanvas\" | \"icon\" | \"none\";\n}) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\n if (collapsible === \"none\") {\n return (\n <div\n data-slot=\"sidebar\"\n className={cn(\n \"bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <div\n className=\"group peer text-sidebar-foreground hidden md:block\"\n data-state={state}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n \"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\",\n \"group-data-[collapsible=offcanvas]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n \"group-data-[side=right]:hidden\",\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n className={cn(\n \"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\",\n side === \"left\"\n ? \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\"\n : \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className=\"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm\"\n >\n {children}\n </div>\n </div>\n </div>\n );\n}\n\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon\"\n className={cn(\"size-7\", className)}\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n );\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n \"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\",\n \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarInset({ className, ...props }: React.ComponentProps<\"main\">) {\n const { setOpen, state } = useSidebar();\n const mainRef = React.useRef<HTMLElement>(null);\n\n const handleClick = React.useCallback(() => {\n if (mainRef.current) {\n const sidebar = mainRef.current.parentElement?.querySelector(\n '[data-slot=\"sidebar\"]'\n );\n const variant = sidebar?.getAttribute(\"data-variant\");\n if ((variant === \"tilt\" || variant === \"depth\") && state === \"expanded\") {\n setOpen(false);\n }\n }\n }, [setOpen, state]);\n\n return (\n <main\n ref={mainRef}\n data-slot=\"sidebar-inset\"\n onClick={handleClick}\n className={cn(\n \"bg-background relative flex w-full flex-1 flex-col\",\n \"md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2\",\n \"md:peer-data-[variant=sidebar]:peer-data-[side=left]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:ml-(--sidebar-width-icon) md:peer-data-[variant=sidebar]:peer-data-[side=right]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:mr-(--sidebar-width-icon)\",\n \"md:peer-data-[variant=sidebar]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 md:peer-data-[variant=sidebar]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"md:peer-data-[variant=sidebar]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"md:peer-data-[variant=inset]:peer-data-[side=left]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:ml-(--sidebar-width-icon) md:peer-data-[variant=inset]:peer-data-[side=right]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:mr-(--sidebar-width-icon)\",\n \"md:peer-data-[variant=inset]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 md:peer-data-[variant=inset]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"md:peer-data-[variant=inset]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"md:peer-data-[variant=tilt]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 md:peer-data-[variant=tilt]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"md:peer-data-[variant=tilt]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"md:peer-data-[variant=tilt]:transition-transform md:peer-data-[variant=tilt]:duration-200 md:peer-data-[variant=tilt]:ease-linear\",\n \"md:peer-data-[variant=tilt]:peer-data-[side=left]:origin-right md:peer-data-[variant=tilt]:peer-data-[side=left]:peer-data-[state=expanded]:[transform:rotate3d(0,1,0,-25deg)]\",\n \"md:peer-data-[variant=tilt]:peer-data-[side=right]:origin-left md:peer-data-[variant=tilt]:peer-data-[side=right]:peer-data-[state=expanded]:[transform:rotate3d(0,1,0,25deg)]\",\n \"md:peer-data-[variant=tilt]:peer-data-[state=expanded]:blur-[2px]\",\n \"md:peer-data-[variant=depth]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 md:peer-data-[variant=depth]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"md:peer-data-[variant=depth]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"md:peer-data-[variant=depth]:transition-transform md:peer-data-[variant=depth]:duration-200 md:peer-data-[variant=depth]:ease-linear\",\n \"md:peer-data-[variant=depth]:peer-data-[state=expanded]:[transform:scale(0.95)_translateZ(-50px)]\",\n \"md:peer-data-[variant=depth]:peer-data-[state=expanded]:backdrop-blur-[1px]\",\n \"md:peer-data-[variant=depth]:peer-data-[state=expanded]:blur-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarInput({\n className,\n ...props\n}: React.ComponentProps<typeof Input>) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn(\"bg-background h-8 w-full shadow-none\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn(\"flex flex-col gap-2 p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn(\"bg-sidebar-border mx-2 w-auto\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n \"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn(\"relative flex w-full min-w-0 flex-col p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupLabel({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n \"text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupAction({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupContent({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn(\"w-full text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn(\"flex w-full min-w-0 flex-col gap-1\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn(\"group/menu-item relative\", className)}\n {...props}\n />\n );\n}\n\nconst sidebarMenuButtonVariants = cva(\n \"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n {\n variants: {\n variant: {\n default: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\",\n },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n);\n\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: string | React.ComponentProps<typeof TooltipContent>;\n} & VariantProps<typeof sidebarMenuButtonVariants>) {\n const Comp = asChild ? Slot : \"button\";\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Comp\n data-slot=\"sidebar-menu-button\"\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n };\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n {...tooltip}\n />\n </Tooltip>\n );\n}\n\nfunction SidebarMenuAction({\n className,\n asChild = false,\n showOnHover = false,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n showOnHover?: boolean;\n}) {\n const Comp = asChild ? Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n showOnHover &&\n \"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuBadge({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n \"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n showIcon?: boolean;\n}) {\n // Random width between 50 to 90%.\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn(\"flex h-8 items-center gap-2 rounded-md px-2\", className)}\n {...props}\n >\n {showIcon && (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n />\n </div>\n );\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n \"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn(\"group/menu-sub-item relative\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean;\n size?: \"sm\" | \"md\";\n isActive?: boolean;\n}) {\n const Comp = asChild ? Slot : \"a\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-sub-button\"\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\",\n size === \"sm\" && \"text-xs\",\n size === \"md\" && \"text-sm\",\n \"group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n};\n"],"names":["SIDEBAR_COOKIE_NAME","SIDEBAR_COOKIE_MAX_AGE","SIDEBAR_WIDTH","SIDEBAR_WIDTH_MOBILE","SIDEBAR_WIDTH_ICON","SIDEBAR_KEYBOARD_SHORTCUT","SidebarContext","React","useSidebar","context","SidebarProvider","defaultOpen","openProp","setOpenProp","className","style","children","props","isMobile","useIsMobile","openMobile","setOpenMobile","_open","_setOpen","open","setOpen","value","openState","toggleSidebar","handleKeyDown","event","state","contextValue","jsx","TooltipProvider","cn","Sidebar","side","variant","collapsible","Sheet","jsxs","SheetContent","SheetHeader","SheetTitle","SheetDescription","SidebarTrigger","onClick","Button","PanelLeftIcon","SidebarRail","SidebarInset","mainRef","handleClick","SidebarInput","Input","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","Comp","Slot","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","cva","SidebarMenuButton","isActive","size","tooltip","button","Tooltip","TooltipTrigger","TooltipContent","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","Skeleton","SidebarMenuSub","SidebarMenuSubItem","SidebarMenuSubButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sidebar.cjs","sources":["../../../../../../../../packages/ui/src/components/sidebar.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { PanelLeftIcon } from \"lucide-react\";\n\nimport { useIsMobile } from \"@dsui/ui/hooks/use-mobile\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { Button } from \"@dsui/ui/components/button\";\nimport { Input } from \"@dsui/ui/components/input\";\nimport { Separator } from \"@dsui/ui/components/separator\";\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"@dsui/ui/components/sheet\";\nimport { Skeleton } from \"@dsui/ui/components/skeleton\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@dsui/ui/components/tooltip\";\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\";\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;\nconst SIDEBAR_WIDTH = \"16rem\";\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\";\nconst SIDEBAR_WIDTH_ICON = \"3rem\";\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\";\n\ntype SidebarContextProps = {\n state: \"expanded\" | \"collapsed\";\n open: boolean;\n setOpen: (open: boolean) => void;\n openMobile: boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: boolean;\n toggleSidebar: () => void;\n};\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null);\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext);\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\");\n }\n\n return context;\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n}) {\n const isMobile = useIsMobile();\n const [openMobile, setOpenMobile] = React.useState(false);\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen);\n const open = openProp ?? _open;\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === \"function\" ? value(open) : value;\n if (setOpenProp) {\n setOpenProp(openState);\n } else {\n _setOpen(openState);\n }\n\n // This sets the cookie to keep the sidebar state.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;\n },\n [setOpenProp, open]\n );\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open);\n }, [isMobile, setOpen, setOpenMobile]);\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault();\n toggleSidebar();\n }\n };\n\n window.addEventListener(\"keydown\", handleKeyDown);\n return () => window.removeEventListener(\"keydown\", handleKeyDown);\n }, [toggleSidebar]);\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\";\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]\n );\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH,\n \"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n ...style,\n } as React.CSSProperties\n }\n className={cn(\n \"ds:group/sidebar-wrapper ds:has-data-[variant=inset]:bg-sidebar ds:flex ds:min-h-svh ds:w-full\",\n \"ds:has-data-[variant=tilt]:[perspective:1000px] ds:has-data-[variant=tilt]:bg-black/20\",\n \"ds:has-data-[variant=depth]:[perspective:1000px] ds:has-data-[variant=depth]:bg-black/20\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext.Provider>\n );\n}\n\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n side?: \"left\" | \"right\";\n variant?: \"sidebar\" | \"floating\" | \"inset\" | \"tilt\" | \"depth\";\n collapsible?: \"offcanvas\" | \"icon\" | \"none\";\n}) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar();\n\n if (collapsible === \"none\") {\n return (\n <div\n data-slot=\"sidebar\"\n className={cn(\n \"ds:bg-sidebar ds:text-sidebar-foreground ds:flex ds:h-full ds:w-(--sidebar-width) ds:flex-col\",\n className\n )}\n {...props}\n >\n {children}\n </div>\n );\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"ds:bg-sidebar ds:text-sidebar-foreground ds:w-(--sidebar-width) ds:p-0 ds:[&>button]:hidden\"\n style={\n {\n \"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"ds:sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"ds:flex ds:h-full ds:w-full ds:flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n );\n }\n\n return (\n <div\n className=\"ds:group ds:peer ds:text-sidebar-foreground ds:hidden ds:md:block\"\n data-state={state}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n \"ds:relative ds:w-(--sidebar-width) ds:bg-transparent ds:transition-[width] ds:duration-200 ds:ease-linear\",\n \"ds:group-data-[collapsible=offcanvas]:w-0\",\n \"ds:group-data-[side=right]:rotate-180\",\n \"ds:group-data-[side=right]:hidden\",\n variant === \"floating\" || variant === \"inset\"\n ? \"ds:group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"ds:group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n className={cn(\n \"ds:fixed ds:inset-y-0 ds:z-10 ds:hidden ds:h-svh ds:w-(--sidebar-width) ds:transition-[left,right,width] ds:duration-200 ds:ease-linear ds:md:flex\",\n side === \"left\"\n ? \"ds:left-0 ds:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\"\n : \"ds:right-0 ds:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"ds:p-2 ds:group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"ds:group-data-[collapsible=icon]:w-(--sidebar-width-icon) ds:group-data-[side=left]:border-r ds:group-data-[side=right]:border-l\",\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className=\"ds:bg-sidebar ds:group-data-[variant=floating]:border-sidebar-border ds:flex ds:h-full ds:w-full ds:flex-col ds:group-data-[variant=floating]:rounded-lg ds:group-data-[variant=floating]:border ds:group-data-[variant=floating]:shadow-sm\"\n >\n {children}\n </div>\n </div>\n </div>\n );\n}\n\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon\"\n className={cn(\"ds:size-7\", className)}\n onClick={(event) => {\n onClick?.(event);\n toggleSidebar();\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"ds:sr-only\">Toggle Sidebar</span>\n </Button>\n );\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n \"ds:hover:after:bg-sidebar-border ds:absolute ds:inset-y-0 ds:z-20 ds:hidden ds:w-4 ds:-translate-x-1/2 ds:transition-all ds:ease-linear ds:group-data-[side=left]:-right-4 ds:group-data-[side=right]:left-0 ds:after:absolute ds:after:inset-y-0 ds:after:left-1/2 ds:after:w-[2px] ds:sm:flex\",\n \"ds:in-data-[side=left]:cursor-w-resize ds:in-data-[side=right]:cursor-e-resize\",\n \"ds:[[data-side=left][data-state=collapsed]_&]:cursor-e-resize ds:[[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"ds:hover:group-data-[collapsible=offcanvas]:bg-sidebar ds:group-data-[collapsible=offcanvas]:translate-x-0 ds:group-data-[collapsible=offcanvas]:after:left-full\",\n \"ds:[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"ds:[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarInset({ className, ...props }: React.ComponentProps<\"main\">) {\n const { setOpen, state } = useSidebar();\n const mainRef = React.useRef<HTMLElement>(null);\n\n const handleClick = React.useCallback(() => {\n if (mainRef.current) {\n const sidebar = mainRef.current.parentElement?.querySelector(\n '[data-slot=\"sidebar\"]'\n );\n const variant = sidebar?.getAttribute(\"data-variant\");\n if ((variant === \"tilt\" || variant === \"depth\") && state === \"expanded\") {\n setOpen(false);\n }\n }\n }, [setOpen, state]);\n\n return (\n <main\n ref={mainRef}\n data-slot=\"sidebar-inset\"\n onClick={handleClick}\n className={cn(\n \"ds:bg-background ds:relative ds:flex ds:w-full ds:flex-1 ds:flex-col\",\n \"ds:md:peer-data-[variant=inset]:m-2 ds:md:peer-data-[variant=inset]:ml-0 ds:md:peer-data-[variant=inset]:rounded-xl ds:md:peer-data-[variant=inset]:shadow-sm ds:md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2\",\n \"ds:md:peer-data-[variant=sidebar]:peer-data-[side=left]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:ml-(--sidebar-width-icon) ds:md:peer-data-[variant=sidebar]:peer-data-[side=right]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:mr-(--sidebar-width-icon)\",\n \"ds:md:peer-data-[variant=sidebar]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 ds:md:peer-data-[variant=sidebar]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"ds:md:peer-data-[variant=sidebar]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"ds:md:peer-data-[variant=inset]:peer-data-[side=left]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:ml-(--sidebar-width-icon) ds:md:peer-data-[variant=inset]:peer-data-[side=right]:peer-data-[state=collapsed]:peer-data-[collapsible=icon]:mr-(--sidebar-width-icon)\",\n \"ds:md:peer-data-[variant=inset]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 ds:md:peer-data-[variant=inset]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"ds:md:peer-data-[variant=inset]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"ds:md:peer-data-[variant=tilt]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 ds:md:peer-data-[variant=tilt]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"ds:md:peer-data-[variant=tilt]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"ds:md:peer-data-[variant=tilt]:transition-transform ds:md:peer-data-[variant=tilt]:duration-200 ds:md:peer-data-[variant=tilt]:ease-linear\",\n \"ds:md:peer-data-[variant=tilt]:peer-data-[side=left]:origin-right ds:md:peer-data-[variant=tilt]:peer-data-[side=left]:peer-data-[state=expanded]:[transform:rotate3d(0,1,0,-25deg)]\",\n \"ds:md:peer-data-[variant=tilt]:peer-data-[side=right]:origin-left ds:md:peer-data-[variant=tilt]:peer-data-[side=right]:peer-data-[state=expanded]:[transform:rotate3d(0,1,0,25deg)]\",\n \"ds:md:peer-data-[variant=tilt]:peer-data-[state=expanded]:blur-[2px]\",\n \"ds:md:peer-data-[variant=depth]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:ml-0 ds:md:peer-data-[variant=depth]:peer-data-[state=collapsed]:peer-data-[collapsible=offcanvas]:mr-0\",\n \"ds:md:peer-data-[variant=depth]:peer-data-[side=right]:mr-(--sidebar-width)\",\n \"ds:md:peer-data-[variant=depth]:transition-transform ds:md:peer-data-[variant=depth]:duration-200 ds:md:peer-data-[variant=depth]:ease-linear\",\n \"ds:md:peer-data-[variant=depth]:peer-data-[state=expanded]:[transform:scale(0.95)_translateZ(-50px)]\",\n \"ds:md:peer-data-[variant=depth]:peer-data-[state=expanded]:backdrop-blur-[1px]\",\n \"ds:md:peer-data-[variant=depth]:peer-data-[state=expanded]:blur-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarInput({\n className,\n ...props\n}: React.ComponentProps<typeof Input>) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn(\"ds:bg-background ds:h-8 ds:w-full ds:shadow-none\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn(\"ds:flex ds:flex-col ds:gap-2 ds:p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn(\"ds:flex ds:flex-col ds:gap-2 ds:p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn(\"ds:bg-sidebar-border ds:mx-2 ds:w-auto\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n \"ds:flex ds:min-h-0 ds:flex-1 ds:flex-col ds:gap-2 ds:overflow-auto ds:group-data-[collapsible=icon]:overflow-hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn(\"ds:relative ds:flex ds:w-full ds:min-w-0 ds:flex-col ds:p-2\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupLabel({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n \"ds:text-sidebar-foreground/70 ds:ring-sidebar-ring ds:flex ds:h-8 ds:shrink-0 ds:items-center ds:rounded-md ds:px-2 ds:text-xs ds:font-medium ds:outline-hidden ds:transition-[margin,opacity] ds:duration-200 ds:ease-linear ds:focus-visible:ring-2 ds:[&>svg]:size-4 ds:[&>svg]:shrink-0\",\n \"ds:group-data-[collapsible=icon]:-mt-8 ds:group-data-[collapsible=icon]:opacity-0\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupAction({\n className,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n \"ds:text-sidebar-foreground ds:ring-sidebar-ring ds:hover:bg-sidebar-accent ds:hover:text-sidebar-accent-foreground ds:absolute ds:top-3.5 ds:right-3 ds:flex ds:aspect-square ds:w-5 ds:items-center ds:justify-center ds:rounded-md ds:p-0 ds:outline-hidden ds:transition-transform ds:focus-visible:ring-2 ds:[&>svg]:size-4 ds:[&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"ds:after:absolute ds:after:-inset-2 ds:md:after:hidden\",\n \"ds:group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarGroupContent({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn(\"ds:w-full ds:text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn(\"ds:flex ds:w-full ds:min-w-0 ds:flex-col ds:gap-1\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn(\"ds:group/menu-item ds:relative\", className)}\n {...props}\n />\n );\n}\n\nconst sidebarMenuButtonVariants = cva(\n \"ds:peer/menu-button ds:flex ds:w-full ds:items-center ds:gap-2 ds:overflow-hidden ds:rounded-md ds:p-2 ds:text-left ds:text-sm ds:outline-hidden ds:ring-sidebar-ring ds:transition-[width,height,padding] ds:hover:bg-sidebar-accent ds:hover:text-sidebar-accent-foreground ds:focus-visible:ring-2 ds:active:bg-sidebar-accent ds:active:text-sidebar-accent-foreground ds:disabled:pointer-events-none ds:disabled:opacity-50 ds:group-has-data-[sidebar=menu-action]/menu-item:pr-8 ds:aria-disabled:pointer-events-none ds:aria-disabled:opacity-50 ds:data-[active=true]:bg-sidebar-accent ds:data-[active=true]:font-medium ds:data-[active=true]:text-sidebar-accent-foreground ds:data-[state=open]:hover:bg-sidebar-accent ds:data-[state=open]:hover:text-sidebar-accent-foreground ds:group-data-[collapsible=icon]:size-8! ds:group-data-[collapsible=icon]:p-2! ds:[&>span:last-child]:truncate ds:[&>svg]:size-4 ds:[&>svg]:shrink-0\",\n {\n variants: {\n variant: {\n default: \"ds:hover:bg-sidebar-accent ds:hover:text-sidebar-accent-foreground\",\n outline:\n \"ds:bg-background ds:shadow-[0_0_0_1px_hsl(var(--sidebar-border))] ds:hover:bg-sidebar-accent ds:hover:text-sidebar-accent-foreground ds:hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\",\n },\n size: {\n default: \"ds:h-8 ds:text-sm\",\n sm: \"ds:h-7 ds:text-xs\",\n lg: \"ds:h-12 ds:text-sm ds:group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n);\n\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n isActive?: boolean;\n tooltip?: string | React.ComponentProps<typeof TooltipContent>;\n} & VariantProps<typeof sidebarMenuButtonVariants>) {\n const Comp = asChild ? Slot : \"button\";\n const { isMobile, state } = useSidebar();\n\n const button = (\n <Comp\n data-slot=\"sidebar-menu-button\"\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n );\n\n if (!tooltip) {\n return button;\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n };\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n side=\"right\"\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n {...tooltip}\n />\n </Tooltip>\n );\n}\n\nfunction SidebarMenuAction({\n className,\n asChild = false,\n showOnHover = false,\n ...props\n}: React.ComponentProps<\"button\"> & {\n asChild?: boolean;\n showOnHover?: boolean;\n}) {\n const Comp = asChild ? Slot : \"button\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n \"ds:text-sidebar-foreground ds:ring-sidebar-ring ds:hover:bg-sidebar-accent ds:hover:text-sidebar-accent-foreground ds:peer-hover/menu-button:text-sidebar-accent-foreground ds:absolute ds:top-1.5 ds:right-1 ds:flex ds:aspect-square ds:w-5 ds:items-center ds:justify-center ds:rounded-md ds:p-0 ds:outline-hidden ds:transition-transform ds:focus-visible:ring-2 ds:[&>svg]:size-4 ds:[&>svg]:shrink-0\",\n // Increases the hit area of the button on mobile.\n \"ds:after:absolute ds:after:-inset-2 ds:md:after:hidden\",\n \"ds:peer-data-[size=sm]/menu-button:top-1\",\n \"ds:peer-data-[size=default]/menu-button:top-1.5\",\n \"ds:peer-data-[size=lg]/menu-button:top-2.5\",\n \"ds:group-data-[collapsible=icon]:hidden\",\n showOnHover &&\n \"ds:peer-data-[active=true]/menu-button:text-sidebar-accent-foreground ds:group-focus-within/menu-item:opacity-100 ds:group-hover/menu-item:opacity-100 ds:data-[state=open]:opacity-100 ds:md:opacity-0\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuBadge({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n \"ds:text-sidebar-foreground ds:pointer-events-none ds:absolute ds:right-1 ds:flex ds:h-5 ds:min-w-5 ds:items-center ds:justify-center ds:rounded-md ds:px-1 ds:text-xs ds:font-medium ds:tabular-nums ds:select-none\",\n \"ds:peer-hover/menu-button:text-sidebar-accent-foreground ds:peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n \"ds:peer-data-[size=sm]/menu-button:top-1\",\n \"ds:peer-data-[size=default]/menu-button:top-1.5\",\n \"ds:peer-data-[size=lg]/menu-button:top-2.5\",\n \"ds:group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> & {\n showIcon?: boolean;\n}) {\n // Random width between 50 to 90%.\n const width = React.useMemo(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`;\n }, []);\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn(\"ds:flex ds:h-8 ds:items-center ds:gap-2 ds:rounded-md ds:px-2\", className)}\n {...props}\n >\n {showIcon && (\n <Skeleton\n className=\"ds:size-4 ds:rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <Skeleton\n className=\"ds:h-4 ds:max-w-(--skeleton-width) ds:flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n />\n </div>\n );\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n \"ds:border-sidebar-border ds:mx-3.5 ds:flex ds:min-w-0 ds:translate-x-px ds:flex-col ds:gap-1 ds:border-l ds:px-2.5 ds:py-0.5\",\n \"ds:group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: React.ComponentProps<\"li\">) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn(\"ds:group/menu-sub-item ds:relative\", className)}\n {...props}\n />\n );\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: React.ComponentProps<\"a\"> & {\n asChild?: boolean;\n size?: \"sm\" | \"md\";\n isActive?: boolean;\n}) {\n const Comp = asChild ? Slot : \"a\";\n\n return (\n <Comp\n data-slot=\"sidebar-menu-sub-button\"\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n \"ds:text-sidebar-foreground ds:ring-sidebar-ring ds:hover:bg-sidebar-accent ds:hover:text-sidebar-accent-foreground ds:active:bg-sidebar-accent ds:active:text-sidebar-accent-foreground ds:[&>svg]:text-sidebar-accent-foreground ds:flex ds:h-7 ds:min-w-0 ds:-translate-x-px ds:items-center ds:gap-2 ds:overflow-hidden ds:rounded-md ds:px-2 ds:outline-hidden ds:focus-visible:ring-2 ds:disabled:pointer-events-none ds:disabled:opacity-50 ds:aria-disabled:pointer-events-none ds:aria-disabled:opacity-50 ds:[&>span:last-child]:truncate ds:[&>svg]:size-4 ds:[&>svg]:shrink-0\",\n \"ds:data-[active=true]:bg-sidebar-accent ds:data-[active=true]:text-sidebar-accent-foreground\",\n size === \"sm\" && \"ds:text-xs\",\n size === \"md\" && \"ds:text-sm\",\n \"ds:group-data-[collapsible=icon]:hidden\",\n className\n )}\n {...props}\n />\n );\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar,\n};\n"],"names":["SIDEBAR_COOKIE_NAME","SIDEBAR_COOKIE_MAX_AGE","SIDEBAR_WIDTH","SIDEBAR_WIDTH_MOBILE","SIDEBAR_WIDTH_ICON","SIDEBAR_KEYBOARD_SHORTCUT","SidebarContext","React","useSidebar","context","SidebarProvider","defaultOpen","openProp","setOpenProp","className","style","children","props","isMobile","useIsMobile","openMobile","setOpenMobile","_open","_setOpen","open","setOpen","value","openState","toggleSidebar","handleKeyDown","event","state","contextValue","jsx","TooltipProvider","cn","Sidebar","side","variant","collapsible","Sheet","jsxs","SheetContent","SheetHeader","SheetTitle","SheetDescription","SidebarTrigger","onClick","Button","PanelLeftIcon","SidebarRail","SidebarInset","mainRef","handleClick","SidebarInput","Input","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","Comp","Slot","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","cva","SidebarMenuButton","isActive","size","tooltip","button","Tooltip","TooltipTrigger","TooltipContent","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","Skeleton","SidebarMenuSub","SidebarMenuSubItem","SidebarMenuSubButton"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),s=require("../lib/utils.cjs");function o({className:e,...t}){return n.jsx("div",{"data-slot":"skeleton",className:s.cn("ds:bg-accent ds:animate-pulse ds:rounded-md",e),...t})}exports.Skeleton=o;
|
|
2
2
|
//# sourceMappingURL=skeleton.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skeleton.cjs","sources":["../../../../../../../../packages/ui/src/components/skeleton.tsx"],"sourcesContent":["import { cn } from \"@dsui/ui/lib/utils\";\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"bg-accent animate-pulse rounded-md\", className)}\n {...props}\n />\n );\n}\n\nexport { Skeleton };\n"],"names":["Skeleton","className","props","jsx","cn"],"mappings":"mJAEA,SAASA,EAAS,CAAE,UAAAC,EAAW,GAAGC,GAAsC,CACtE,OACEC,EAAAA,IAAC,MAAA,CACC,YAAU,WACV,UAAWC,EAAAA,GAAG,
|
|
1
|
+
{"version":3,"file":"skeleton.cjs","sources":["../../../../../../../../packages/ui/src/components/skeleton.tsx"],"sourcesContent":["import { cn } from \"@dsui/ui/lib/utils\";\n\nfunction Skeleton({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"skeleton\"\n className={cn(\"ds:bg-accent ds:animate-pulse ds:rounded-md\", className)}\n {...props}\n />\n );\n}\n\nexport { Skeleton };\n"],"names":["Skeleton","className","props","jsx","cn"],"mappings":"mJAEA,SAASA,EAAS,CAAE,UAAAC,EAAW,GAAGC,GAAsC,CACtE,OACEC,EAAAA,IAAC,MAAA,CACC,YAAU,WACV,UAAWC,EAAAA,GAAG,8CAA+CH,CAAS,EACrE,GAAGC,CAAA,CAAA,CAGV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),k=require("@radix-ui/react-switch"),o=require("class-variance-authority"),n=require("../lib/utils.cjs");function l(e){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const d=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(s,a,d.get?d:{enumerable:!0,get:()=>e[a]})}}return s.default=e,Object.freeze(s)}const i=l(k),g={primary:{checked:"ds:data-[state=checked]:bg-primary",unchecked:"ds:data-[state=unchecked]:bg-input ds:dark:data-[state=unchecked]:bg-input/80"},secondary:{checked:"ds:data-[state=checked]:bg-secondary",unchecked:"ds:data-[state=unchecked]:bg-secondary/30 ds:dark:data-[state=unchecked]:bg-secondary/20"},accent:{checked:"ds:data-[state=checked]:bg-accent",unchecked:"ds:data-[state=unchecked]:bg-accent/30 ds:dark:data-[state=unchecked]:bg-accent/20"},destructive:{checked:"ds:data-[state=checked]:bg-destructive",unchecked:"ds:data-[state=unchecked]:bg-destructive/30 ds:dark:data-[state=unchecked]:bg-destructive/20"},muted:{checked:"ds:data-[state=checked]:bg-muted",unchecked:"ds:data-[state=unchecked]:bg-muted ds:dark:data-[state=unchecked]:bg-muted/80"},success:{checked:"ds:data-[state=checked]:bg-success",unchecked:"ds:data-[state=unchecked]:bg-success/30 ds:dark:data-[state=unchecked]:bg-success/20"},error:{checked:"ds:data-[state=checked]:bg-error",unchecked:"ds:data-[state=unchecked]:bg-error/30 ds:dark:data-[state=unchecked]:bg-error/20"},warning:{checked:"ds:data-[state=checked]:bg-warning",unchecked:"ds:data-[state=unchecked]:bg-warning/30 ds:dark:data-[state=unchecked]:bg-warning/20"}},u=o.cva("ds:peer ds:outline-none ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:inline-flex ds:shrink-0 ds:items-center ds:border-2 ds:border-transparent ds:shadow-xs ds:transition-all ds:focus-visible:ring-[3px] ds:disabled:cursor-not-allowed ds:disabled:opacity-50",{variants:{variant:{default:"ds:rounded-full",square1:"ds:rounded-sm",square2:"ds:rounded-none",mini:"ds:rounded-sm ds:[&_span]:border-input ds:!h-3 ds:!w-8 ds:border-none ds:[&_span]:size-4.5 ds:[&_span]:border"},size:{xs:"ds:h-4 ds:w-7",sm:"ds:h-5 ds:w-9",normal:"ds:h-6 ds:w-11",lg:"ds:h-7 ds:w-12",xl:"ds:h-8 ds:w-14"},color:{primary:"",secondary:"",accent:"",destructive:"",muted:"",success:"",error:"",warning:""}},compoundVariants:Object.entries(g).flatMap(([e,s])=>Object.entries(s).map(([,a])=>({color:e,className:a}))),defaultVariants:{variant:"default",size:"normal",color:"primary"}}),b=o.cva("ds:bg-background ds:dark:data-[state=unchecked]:bg-foreground ds:pointer-events-none ds:block ds:ring-0 ds:transition-transform ds:data-[state=unchecked]:translate-x-0",{variants:{variant:{default:"ds:rounded-full",square1:"ds:rounded-sm",square2:"ds:rounded-none",mini:"ds:rounded-full ds:data-[state=checked]:!translate-x-[calc(100%-2px)]"},size:{xs:"ds:size-3",sm:"ds:size-4",normal:"ds:size-5",lg:"ds:size-6",xl:"ds:size-7"},color:{primary:"ds:dark:data-[state=checked]:bg-primary-foreground",secondary:"ds:dark:data-[state=checked]:bg-secondary-foreground",accent:"ds:dark:data-[state=checked]:bg-accent-foreground",destructive:"ds:dark:data-[state=checked]:bg-destructive-foreground",muted:"ds:dark:data-[state=checked]:bg-muted-foreground",success:"ds:dark:data-[state=checked]:bg-success-foreground",error:"ds:dark:data-[state=checked]:bg-error-foreground",warning:"ds:dark:data-[state=checked]:bg-warning-foreground"}},compoundVariants:[{size:"xs",className:"ds:data-[state=checked]:translate-x-[0.75rem]"},{size:"sm",className:"ds:data-[state=checked]:translate-x-[1rem]"},{size:"normal",className:"ds:data-[state=checked]:translate-x-[1.25rem]"},{size:"lg",className:"ds:data-[state=checked]:translate-x-[1.25rem]"},{size:"xl",className:"ds:data-[state=checked]:translate-x-[1.45rem]"}],defaultVariants:{size:"normal",color:"primary"}});function m(e){const{className:s,thumbClassName:a,variant:d,size:t,color:c,...h}=e;return r.jsx(i.Root,{"data-slot":"switch",className:n.cn(u({variant:d,size:t,color:c,className:s})),...h,children:r.jsx(i.Thumb,{"data-slot":"switch-thumb",className:n.cn(a,b({variant:d,size:t,color:c}))})})}exports.Switch=m;exports.switchVariants=u;
|
|
2
2
|
//# sourceMappingURL=switch.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.cjs","sources":["../../../../../../../../packages/ui/src/components/switch.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nconst colorVariants = {\n primary: {\n checked: \"data-[state=checked]:bg-primary\",\n unchecked:\n \"data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80\",\n },\n secondary: {\n checked: \"data-[state=checked]:bg-secondary\",\n unchecked:\n \"data-[state=unchecked]:bg-secondary/30 dark:data-[state=unchecked]:bg-secondary/20\",\n },\n accent: {\n checked: \"data-[state=checked]:bg-accent\",\n unchecked:\n \"data-[state=unchecked]:bg-accent/30 dark:data-[state=unchecked]:bg-accent/20\",\n },\n destructive: {\n checked: \"data-[state=checked]:bg-destructive\",\n unchecked:\n \"data-[state=unchecked]:bg-destructive/30 dark:data-[state=unchecked]:bg-destructive/20\",\n },\n muted: {\n checked: \"data-[state=checked]:bg-muted\",\n unchecked:\n \"data-[state=unchecked]:bg-muted dark:data-[state=unchecked]:bg-muted/80\",\n },\n success: {\n checked: \"data-[state=checked]:bg-success\",\n unchecked:\n \"data-[state=unchecked]:bg-success/30 dark:data-[state=unchecked]:bg-success/20\",\n },\n error: {\n checked: \"data-[state=checked]:bg-error\",\n unchecked:\n \"data-[state=unchecked]:bg-error/30 dark:data-[state=unchecked]:bg-error/20\",\n },\n warning: {\n checked: \"data-[state=checked]:bg-warning\",\n unchecked:\n \"data-[state=unchecked]:bg-warning/30 dark:data-[state=unchecked]:bg-warning/20\",\n },\n};\n\nconst switchVariants = cva(\n \"peer outline-none focus-visible:border-ring focus-visible:ring-ring/50 inline-flex shrink-0 items-center border-2 border-transparent shadow-xs transition-all focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50\",\n {\n variants: {\n variant: {\n default: \"rounded-full\",\n square1: \"rounded-sm\",\n square2: \"rounded-none\",\n mini: \"rounded-sm [&_span]:border-input
|
|
1
|
+
{"version":3,"file":"switch.cjs","sources":["../../../../../../../../packages/ui/src/components/switch.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nconst colorVariants = {\n primary: {\n checked: \"ds:data-[state=checked]:bg-primary\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-input ds:dark:data-[state=unchecked]:bg-input/80\",\n },\n secondary: {\n checked: \"ds:data-[state=checked]:bg-secondary\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-secondary/30 ds:dark:data-[state=unchecked]:bg-secondary/20\",\n },\n accent: {\n checked: \"ds:data-[state=checked]:bg-accent\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-accent/30 ds:dark:data-[state=unchecked]:bg-accent/20\",\n },\n destructive: {\n checked: \"ds:data-[state=checked]:bg-destructive\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-destructive/30 ds:dark:data-[state=unchecked]:bg-destructive/20\",\n },\n muted: {\n checked: \"ds:data-[state=checked]:bg-muted\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-muted ds:dark:data-[state=unchecked]:bg-muted/80\",\n },\n success: {\n checked: \"ds:data-[state=checked]:bg-success\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-success/30 ds:dark:data-[state=unchecked]:bg-success/20\",\n },\n error: {\n checked: \"ds:data-[state=checked]:bg-error\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-error/30 ds:dark:data-[state=unchecked]:bg-error/20\",\n },\n warning: {\n checked: \"ds:data-[state=checked]:bg-warning\",\n unchecked:\n \"ds:data-[state=unchecked]:bg-warning/30 ds:dark:data-[state=unchecked]:bg-warning/20\",\n },\n};\n\nconst switchVariants = cva(\n \"ds:peer ds:outline-none ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:inline-flex ds:shrink-0 ds:items-center ds:border-2 ds:border-transparent ds:shadow-xs ds:transition-all ds:focus-visible:ring-[3px] ds:disabled:cursor-not-allowed ds:disabled:opacity-50\",\n {\n variants: {\n variant: {\n default: \"ds:rounded-full\",\n square1: \"ds:rounded-sm\",\n square2: \"ds:rounded-none\",\n mini: \"ds:rounded-sm ds:[&_span]:border-input ds:!h-3 ds:!w-8 ds:border-none ds:[&_span]:size-4.5 ds:[&_span]:border\",\n },\n size: {\n xs: \"ds:h-4 ds:w-7\",\n sm: \"ds:h-5 ds:w-9\",\n normal: \"ds:h-6 ds:w-11\",\n lg: \"ds:h-7 ds:w-12\",\n xl: \"ds:h-8 ds:w-14\",\n },\n color: {\n primary: \"\",\n secondary: \"\",\n accent: \"\",\n destructive: \"\",\n muted: \"\",\n success: \"\",\n error: \"\",\n warning: \"\",\n },\n },\n compoundVariants: Object.entries(colorVariants).flatMap(([color, styles]) =>\n Object.entries(styles).map(([, className]) => ({\n color: color as keyof typeof colorVariants,\n className: className,\n }))\n ),\n defaultVariants: {\n variant: \"default\",\n size: \"normal\",\n color: \"primary\",\n },\n }\n);\n\nconst thumbVariants = cva(\n \"ds:bg-background ds:dark:data-[state=unchecked]:bg-foreground ds:pointer-events-none ds:block ds:ring-0 ds:transition-transform ds:data-[state=unchecked]:translate-x-0\",\n {\n variants: {\n variant: {\n default: \"ds:rounded-full\",\n square1: \"ds:rounded-sm\",\n square2: \"ds:rounded-none\",\n mini: \"ds:rounded-full ds:data-[state=checked]:!translate-x-[calc(100%-2px)]\",\n },\n size: {\n xs: \"ds:size-3\",\n sm: \"ds:size-4\",\n normal: \"ds:size-5\",\n lg: \"ds:size-6\",\n xl: \"ds:size-7\",\n },\n color: {\n primary: \"ds:dark:data-[state=checked]:bg-primary-foreground\",\n secondary: \"ds:dark:data-[state=checked]:bg-secondary-foreground\",\n accent: \"ds:dark:data-[state=checked]:bg-accent-foreground\",\n destructive: \"ds:dark:data-[state=checked]:bg-destructive-foreground\",\n muted: \"ds:dark:data-[state=checked]:bg-muted-foreground\",\n success: \"ds:dark:data-[state=checked]:bg-success-foreground\",\n error: \"ds:dark:data-[state=checked]:bg-error-foreground\",\n warning: \"ds:dark:data-[state=checked]:bg-warning-foreground\",\n },\n },\n compoundVariants: [\n {\n size: \"xs\",\n className: \"ds:data-[state=checked]:translate-x-[0.75rem]\",\n },\n {\n size: \"sm\",\n className: \"ds:data-[state=checked]:translate-x-[1rem]\",\n },\n {\n size: \"normal\",\n className: \"ds:data-[state=checked]:translate-x-[1.25rem]\",\n },\n {\n size: \"lg\",\n className: \"ds:data-[state=checked]:translate-x-[1.25rem]\",\n },\n {\n size: \"xl\",\n className: \"ds:data-[state=checked]:translate-x-[1.45rem]\",\n },\n ],\n defaultVariants: {\n size: \"normal\",\n color: \"primary\",\n },\n }\n);\n\ntype SwitchVariant = VariantProps<typeof switchVariants>;\n\nfunction Switch(\n props: React.ComponentProps<typeof SwitchPrimitive.Root> &\n VariantProps<typeof switchVariants> & {\n thumbClassName?: string;\n }\n) {\n const { className, thumbClassName, variant, size, color, ...rest } = props;\n\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n className={cn(switchVariants({ variant, size, color, className }))}\n {...rest}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(thumbClassName, thumbVariants({ variant, size, color }))}\n />\n </SwitchPrimitive.Root>\n );\n}\n\nexport { Switch, switchVariants, type SwitchVariant };\n"],"names":["colorVariants","switchVariants","cva","color","styles","className","thumbVariants","Switch","props","thumbClassName","variant","size","rest","jsx","SwitchPrimitive","cn"],"mappings":"ufAQMA,EAAgB,CACpB,QAAS,CACP,QAAS,qCACT,UACE,+EAAA,EAEJ,UAAW,CACT,QAAS,uCACT,UACE,0FAAA,EAEJ,OAAQ,CACN,QAAS,oCACT,UACE,oFAAA,EAEJ,YAAa,CACX,QAAS,yCACT,UACE,8FAAA,EAEJ,MAAO,CACL,QAAS,mCACT,UACE,+EAAA,EAEJ,QAAS,CACP,QAAS,qCACT,UACE,sFAAA,EAEJ,MAAO,CACL,QAAS,mCACT,UACE,kFAAA,EAEJ,QAAS,CACP,QAAS,qCACT,UACE,sFAAA,CAEN,EAEMC,EAAiBC,EAAAA,IACrB,mRACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,kBACT,QAAS,gBACT,QAAS,kBACT,KAAM,+GAAA,EAER,KAAM,CACJ,GAAI,gBACJ,GAAI,gBACJ,OAAQ,iBACR,GAAI,iBACJ,GAAI,gBAAA,EAEN,MAAO,CACL,QAAS,GACT,UAAW,GACX,OAAQ,GACR,YAAa,GACb,MAAO,GACP,QAAS,GACT,MAAO,GACP,QAAS,EAAA,CACX,EAEF,iBAAkB,OAAO,QAAQF,CAAa,EAAE,QAAQ,CAAC,CAACG,EAAOC,CAAM,IACrE,OAAO,QAAQA,CAAM,EAAE,IAAI,CAAC,CAAA,CAAGC,CAAS,KAAO,CAC7C,MAAAF,EACA,UAAAE,CAAA,EACA,CAAA,EAEJ,gBAAiB,CACf,QAAS,UACT,KAAM,SACN,MAAO,SAAA,CACT,CAEJ,EAEMC,EAAgBJ,EAAAA,IACpB,0KACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,kBACT,QAAS,gBACT,QAAS,kBACT,KAAM,uEAAA,EAER,KAAM,CACJ,GAAI,YACJ,GAAI,YACJ,OAAQ,YACR,GAAI,YACJ,GAAI,WAAA,EAEN,MAAO,CACL,QAAS,qDACT,UAAW,uDACX,OAAQ,oDACR,YAAa,yDACb,MAAO,mDACP,QAAS,qDACT,MAAO,mDACP,QAAS,oDAAA,CACX,EAEF,iBAAkB,CAChB,CACE,KAAM,KACN,UAAW,+CAAA,EAEb,CACE,KAAM,KACN,UAAW,4CAAA,EAEb,CACE,KAAM,SACN,UAAW,+CAAA,EAEb,CACE,KAAM,KACN,UAAW,+CAAA,EAEb,CACE,KAAM,KACN,UAAW,+CAAA,CACb,EAEF,gBAAiB,CACf,KAAM,SACN,MAAO,SAAA,CACT,CAEJ,EAIA,SAASK,EACPC,EAIA,CACA,KAAM,CAAE,UAAAH,EAAW,eAAAI,EAAgB,QAAAC,EAAS,KAAAC,EAAM,MAAAR,EAAO,GAAGS,GAASJ,EAErE,OACEK,EAAAA,IAACC,EAAgB,KAAhB,CACC,YAAU,SACV,UAAWC,EAAAA,GAAGd,EAAe,CAAE,QAAAS,EAAS,KAAAC,EAAM,MAAAR,EAAO,UAAAE,CAAA,CAAW,CAAC,EAChE,GAAGO,EAEJ,SAAAC,EAAAA,IAACC,EAAgB,MAAhB,CACC,YAAU,eACV,UAAWC,EAAAA,GAAGN,EAAgBH,EAAc,CAAE,QAAAI,EAAS,KAAAC,EAAM,MAAAR,EAAO,CAAC,CAAA,CAAA,CACvE,CAAA,CAGN"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),s=require("../lib/utils.cjs");function l({className:e,...t}){return a.jsx("div",{"data-slot":"table-container",className:"ds:relative ds:w-full ds:overflow-x-auto",children:a.jsx("table",{"data-slot":"table",className:s.cn("ds:w-full ds:caption-bottom ds:text-sm",e),...t})})}function d({className:e,...t}){return a.jsx("thead",{"data-slot":"table-header",className:s.cn("ds:[&_tr]:border-b",e),...t})}function o({className:e,...t}){return a.jsx("tbody",{"data-slot":"table-body",className:s.cn("ds:[&_tr:last-child]:border-0",e),...t})}function r({className:e,...t}){return a.jsx("tr",{"data-slot":"table-row",className:s.cn("ds:hover:bg-muted/50 ds:data-[state=selected]:bg-muted ds:border-b ds:transition-colors",e),...t})}function n({className:e,...t}){return a.jsx("th",{"data-slot":"table-head",className:s.cn("ds:text-foreground ds:h-10 ds:px-2 ds:text-left ds:align-middle ds:font-medium ds:whitespace-nowrap ds:[&>[role=checkbox]]:translate-y-[2px]",e),...t})}function c({className:e,...t}){return a.jsx("td",{"data-slot":"table-cell",className:s.cn("ds:p-2 ds:align-middle ds:whitespace-nowrap ds:[&>[role=checkbox]]:translate-y-[2px]",e),...t})}exports.Table=l;exports.TableBody=o;exports.TableCell=c;exports.TableHead=n;exports.TableHeader=d;exports.TableRow=r;
|
|
2
2
|
//# sourceMappingURL=table.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.cjs","sources":["../../../../../../../../packages/ui/src/components/table.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nfunction Table({ className, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n data-slot=\"table-container\"\n className=\"relative w-full overflow-x-auto\"\n >\n <table\n data-slot=\"table\"\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n );\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b\", className)}\n {...props}\n />\n );\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n );\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n \"bg-muted/50 border-t font-medium [&>tr]:last:border-b-0\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 align-middle whitespace-nowrap [&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"text-muted-foreground mt-4 text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n"],"names":["Table","className","props","jsx","cn","TableHeader","TableBody","TableRow","TableHead","TableCell"],"mappings":"mJAMA,SAASA,EAAM,CAAE,UAAAC,EAAW,GAAGC,GAAwC,CACrE,OACEC,EAAAA,IAAC,MAAA,CACC,YAAU,kBACV,UAAU,
|
|
1
|
+
{"version":3,"file":"table.cjs","sources":["../../../../../../../../packages/ui/src/components/table.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nfunction Table({ className, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n data-slot=\"table-container\"\n className=\"ds:relative ds:w-full ds:overflow-x-auto\"\n >\n <table\n data-slot=\"table\"\n className={cn(\"ds:w-full ds:caption-bottom ds:text-sm\", className)}\n {...props}\n />\n </div>\n );\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"ds:[&_tr]:border-b\", className)}\n {...props}\n />\n );\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"ds:[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n );\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n \"ds:bg-muted/50 ds:border-t ds:font-medium ds:[&>tr]:last:border-b-0\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"ds:hover:bg-muted/50 ds:data-[state=selected]:bg-muted ds:border-b ds:transition-colors\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"ds:text-foreground ds:h-10 ds:px-2 ds:text-left ds:align-middle ds:font-medium ds:whitespace-nowrap ds:[&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"ds:p-2 ds:align-middle ds:whitespace-nowrap ds:[&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"ds:text-muted-foreground ds:mt-4 ds:text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n"],"names":["Table","className","props","jsx","cn","TableHeader","TableBody","TableRow","TableHead","TableCell"],"mappings":"mJAMA,SAASA,EAAM,CAAE,UAAAC,EAAW,GAAGC,GAAwC,CACrE,OACEC,EAAAA,IAAC,MAAA,CACC,YAAU,kBACV,UAAU,2CAEV,SAAAA,EAAAA,IAAC,QAAA,CACC,YAAU,QACV,UAAWC,EAAAA,GAAG,yCAA0CH,CAAS,EAChE,GAAGC,CAAA,CAAA,CACN,CAAA,CAGN,CAEA,SAASG,EAAY,CAAE,UAAAJ,EAAW,GAAGC,GAAwC,CAC3E,OACEC,EAAAA,IAAC,QAAA,CACC,YAAU,eACV,UAAWC,EAAAA,GAAG,qBAAsBH,CAAS,EAC5C,GAAGC,CAAA,CAAA,CAGV,CAEA,SAASI,EAAU,CAAE,UAAAL,EAAW,GAAGC,GAAwC,CACzE,OACEC,EAAAA,IAAC,QAAA,CACC,YAAU,aACV,UAAWC,EAAAA,GAAG,gCAAiCH,CAAS,EACvD,GAAGC,CAAA,CAAA,CAGV,CAeA,SAASK,EAAS,CAAE,UAAAN,EAAW,GAAGC,GAAqC,CACrE,OACEC,EAAAA,IAAC,KAAA,CACC,YAAU,YACV,UAAWC,EAAAA,GACT,0FACAH,CAAA,EAED,GAAGC,CAAA,CAAA,CAGV,CAEA,SAASM,EAAU,CAAE,UAAAP,EAAW,GAAGC,GAAqC,CACtE,OACEC,EAAAA,IAAC,KAAA,CACC,YAAU,aACV,UAAWC,EAAAA,GACT,+IACAH,CAAA,EAED,GAAGC,CAAA,CAAA,CAGV,CAEA,SAASO,EAAU,CAAE,UAAAR,EAAW,GAAGC,GAAqC,CACtE,OACEC,EAAAA,IAAC,KAAA,CACC,YAAU,aACV,UAAWC,EAAAA,GACT,uFACAH,CAAA,EAED,GAAGC,CAAA,CAAA,CAGV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),c=require("react"),u=require("@radix-ui/react-tabs"),n=require("../lib/utils.cjs");function i(e){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(s,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return s.default=e,Object.freeze(s)}const l=i(c),d=i(u);function b({className:e,...s}){return a.jsx(d.Root,{"data-slot":"tabs",className:n.cn("ds:flex ds:flex-col ds:gap-2",e),...s})}const o=l.forwardRef(({className:e,...s},t)=>a.jsx(d.List,{ref:t,"data-slot":"tabs-list",className:n.cn("ds:bg-muted ds:text-muted-foreground ds:inline-flex ds:h-9 ds:w-fit ds:items-center ds:justify-center ds:rounded-lg ds:p-[3px]",e),...s}));o.displayName=d.List.displayName;function f({className:e,...s}){return a.jsx(d.Trigger,{"data-slot":"tabs-trigger",className:n.cn("ds:data-[state=active]:bg-background ds:dark:data-[state=active]:text-foreground ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:focus-visible:outline-ring ds:dark:data-[state=active]:border-input ds:dark:data-[state=active]:bg-input/30 ds:text-foreground ds:dark:text-muted-foreground ds:inline-flex ds:h-[calc(100%-1px)] ds:flex-1 ds:items-center ds:justify-center ds:gap-1.5 ds:rounded-md ds:border ds:border-transparent ds:px-2 ds:py-1 ds:text-sm ds:font-medium ds:whitespace-nowrap ds:transition-[color,box-shadow] ds:focus-visible:ring-[3px] ds:focus-visible:outline-1 ds:disabled:pointer-events-none ds:disabled:opacity-50 ds:data-[state=active]:shadow-sm ds:[&_svg]:pointer-events-none ds:[&_svg]:shrink-0 ds:[&_svg:not([class*='size-'])]:size-4",e),...s})}function g({className:e,...s}){return a.jsx(d.Content,{"data-slot":"tabs-content",className:n.cn("ds:flex-1 ds:outline-none",e),...s})}exports.Tabs=b;exports.TabsContent=g;exports.TabsList=o;exports.TabsTrigger=f;
|
|
2
2
|
//# sourceMappingURL=tabs.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.cjs","sources":["../../../../../../../../packages/ui/src/components/tabs.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nfunction Tabs({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return (\n <TabsPrimitive.Root\n data-slot=\"tabs\"\n className={cn(\"flex flex-col gap-2\", className)}\n {...props}\n />\n );\n}\n\nconst TabsList = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => {\n return (\n <TabsPrimitive.List\n ref={ref}\n data-slot=\"tabs-list\"\n className={cn(\n \"bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]\",\n className\n )}\n {...props}\n />\n );\n});\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nfunction TabsTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot=\"tabs-trigger\"\n className={cn(\n \"data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TabsContent({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return (\n <TabsPrimitive.Content\n data-slot=\"tabs-content\"\n className={cn(\"flex-1 outline-none\", className)}\n {...props}\n />\n );\n}\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n"],"names":["Tabs","className","props","jsx","TabsPrimitive","cn","TabsList","React","ref","TabsTrigger","TabsContent"],"mappings":"yeAOA,SAASA,EAAK,CACZ,UAAAC,EACA,GAAGC,CACL,EAAoD,CAClD,OACEC,EAAAA,IAACC,EAAc,KAAd,CACC,YAAU,OACV,UAAWC,EAAAA,GAAG,
|
|
1
|
+
{"version":3,"file":"tabs.cjs","sources":["../../../../../../../../packages/ui/src/components/tabs.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nfunction Tabs({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Root>) {\n return (\n <TabsPrimitive.Root\n data-slot=\"tabs\"\n className={cn(\"ds:flex ds:flex-col ds:gap-2\", className)}\n {...props}\n />\n );\n}\n\nconst TabsList = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => {\n return (\n <TabsPrimitive.List\n ref={ref}\n data-slot=\"tabs-list\"\n className={cn(\n \"ds:bg-muted ds:text-muted-foreground ds:inline-flex ds:h-9 ds:w-fit ds:items-center ds:justify-center ds:rounded-lg ds:p-[3px]\",\n className\n )}\n {...props}\n />\n );\n});\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nfunction TabsTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Trigger>) {\n return (\n <TabsPrimitive.Trigger\n data-slot=\"tabs-trigger\"\n className={cn(\n \"ds:data-[state=active]:bg-background ds:dark:data-[state=active]:text-foreground ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:focus-visible:outline-ring ds:dark:data-[state=active]:border-input ds:dark:data-[state=active]:bg-input/30 ds:text-foreground ds:dark:text-muted-foreground ds:inline-flex ds:h-[calc(100%-1px)] ds:flex-1 ds:items-center ds:justify-center ds:gap-1.5 ds:rounded-md ds:border ds:border-transparent ds:px-2 ds:py-1 ds:text-sm ds:font-medium ds:whitespace-nowrap ds:transition-[color,box-shadow] ds:focus-visible:ring-[3px] ds:focus-visible:outline-1 ds:disabled:pointer-events-none ds:disabled:opacity-50 ds:data-[state=active]:shadow-sm ds:[&_svg]:pointer-events-none ds:[&_svg]:shrink-0 ds:[&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction TabsContent({\n className,\n ...props\n}: React.ComponentProps<typeof TabsPrimitive.Content>) {\n return (\n <TabsPrimitive.Content\n data-slot=\"tabs-content\"\n className={cn(\"ds:flex-1 ds:outline-none\", className)}\n {...props}\n />\n );\n}\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n"],"names":["Tabs","className","props","jsx","TabsPrimitive","cn","TabsList","React","ref","TabsTrigger","TabsContent"],"mappings":"yeAOA,SAASA,EAAK,CACZ,UAAAC,EACA,GAAGC,CACL,EAAoD,CAClD,OACEC,EAAAA,IAACC,EAAc,KAAd,CACC,YAAU,OACV,UAAWC,EAAAA,GAAG,+BAAgCJ,CAAS,EACtD,GAAGC,CAAA,CAAA,CAGV,CAEA,MAAMI,EAAWC,EAAM,WAGrB,CAAC,CAAE,UAAAN,EAAW,GAAGC,CAAA,EAASM,IAExBL,EAAAA,IAACC,EAAc,KAAd,CACC,IAAAI,EACA,YAAU,YACV,UAAWH,EAAAA,GACT,iIACAJ,CAAA,EAED,GAAGC,CAAA,CAAA,CAGT,EACDI,EAAS,YAAcF,EAAc,KAAK,YAE1C,SAASK,EAAY,CACnB,UAAAR,EACA,GAAGC,CACL,EAAuD,CACrD,OACEC,EAAAA,IAACC,EAAc,QAAd,CACC,YAAU,eACV,UAAWC,EAAAA,GACT,kwBACAJ,CAAA,EAED,GAAGC,CAAA,CAAA,CAGV,CAEA,SAASQ,EAAY,CACnB,UAAAT,EACA,GAAGC,CACL,EAAuD,CACrD,OACEC,EAAAA,IAACC,EAAc,QAAd,CACC,YAAU,eACV,UAAWC,EAAAA,GAAG,4BAA6BJ,CAAS,EACnD,GAAGC,CAAA,CAAA,CAGV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),t=require("../lib/utils.cjs"),n=require("class-variance-authority"),a=n.cva("ds:border-input ds:placeholder:text-muted-foreground ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:aria-invalid:ring-destructive/20 ds:dark:aria-invalid:ring-destructive/40 ds:aria-invalid:border-destructive ds:dark:background ds:flex ds:field-sizing-content ds:min-h-16 ds:w-full ds:rounded-md ds:border ds:bg-transparent ds:text-base ds:shadow-xs ds:transition-[color,box-shadow] ds:outline-none ds:focus-visible:ring-[3px] ds:disabled:cursor-not-allowed ds:disabled:opacity-50 ds:md:text-sm",{variants:{size:{xs:"ds:text-xs ds:min-h-32 ds:px-2 ds:py-0.5",sm:"ds:text-sm ds:min-h-32 ds:px-2.5 ds:py-1",normal:"ds:min-h-32 ds:px-3 ds:py-1",lg:"ds:min-h-32 ds:px-4 ds:py-2",xl:"ds:min-h-32 ds:px-5 ds:py-3"},state:{default:"",success:"ds:border-success ds:ring-success/30 ds:focus-visible:border-success ds:focus-visible:ring-success/50",error:"ds:border-destructive ds:ring-destructive/30 ds:focus-visible:border-destructive ds:focus-visible:ring-destructive/50",warning:"ds:border-warning ds:ring-warning/30 ds:focus-visible:border-warning ds:focus-visible:ring-warning/50"}},defaultVariants:{size:"normal",state:"default"}});function o({size:d,state:e,className:s,...r}){return i.jsx("textarea",{"data-slot":"textarea",className:t.cn(a({size:d,state:e,className:s}),s),...r})}exports.Textarea=o;
|
|
2
2
|
//# sourceMappingURL=textarea.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.cjs","sources":["../../../../../../../../packages/ui/src/components/textarea.tsx"],"sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nconst textareaVariants = cva(\n \"border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:background flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n {\n variants: {\n size: {\n xs: \"text-xs min-h-32 px-2 py-0.5\",\n sm: \"text-sm min-h-32 px-2.5 py-1\",\n normal: \"min-h-32 px-3 py-1\",\n lg: \"min-h-32 px-4 py-2\",\n xl: \"min-h-32 px-5 py-3\",\n },\n state: {\n default: \"\",\n success:\n \"border-success ring-success/30 focus-visible:border-success focus-visible:ring-success/50\",\n error:\n \"border-destructive ring-destructive/30 focus-visible:border-destructive focus-visible:ring-destructive/50\",\n warning:\n \"border-warning ring-warning/30 focus-visible:border-warning focus-visible:ring-warning/50\",\n },\n },\n defaultVariants: {\n size: \"normal\",\n state: \"default\",\n },\n }\n);\n\ntype TextareaProps = Omit<React.ComponentProps<\"textarea\">, \"size\"> & {\n size?: \"normal\" | \"sm\" | \"xs\" | \"lg\" | \"xl\";\n state?: \"default\" | \"success\" | \"error\" | \"warning\";\n} & VariantProps<typeof textareaVariants>;\n\nfunction Textarea({ size, state, className, ...props }: TextareaProps) {\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(textareaVariants({ size, state, className }), className)}\n {...props}\n />\n );\n}\n\nexport { Textarea, type TextareaProps };\n"],"names":["textareaVariants","cva","Textarea","size","state","className","props","jsx","cn"],"mappings":"yLAKMA,EAAmBC,EAAAA,IACvB,
|
|
1
|
+
{"version":3,"file":"textarea.cjs","sources":["../../../../../../../../packages/ui/src/components/textarea.tsx"],"sourcesContent":["import * as React from \"react\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nconst textareaVariants = cva(\n \"ds:border-input ds:placeholder:text-muted-foreground ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:aria-invalid:ring-destructive/20 ds:dark:aria-invalid:ring-destructive/40 ds:aria-invalid:border-destructive ds:dark:background ds:flex ds:field-sizing-content ds:min-h-16 ds:w-full ds:rounded-md ds:border ds:bg-transparent ds:text-base ds:shadow-xs ds:transition-[color,box-shadow] ds:outline-none ds:focus-visible:ring-[3px] ds:disabled:cursor-not-allowed ds:disabled:opacity-50 ds:md:text-sm\",\n {\n variants: {\n size: {\n xs: \"ds:text-xs ds:min-h-32 ds:px-2 ds:py-0.5\",\n sm: \"ds:text-sm ds:min-h-32 ds:px-2.5 ds:py-1\",\n normal: \"ds:min-h-32 ds:px-3 ds:py-1\",\n lg: \"ds:min-h-32 ds:px-4 ds:py-2\",\n xl: \"ds:min-h-32 ds:px-5 ds:py-3\",\n },\n state: {\n default: \"\",\n success:\n \"ds:border-success ds:ring-success/30 ds:focus-visible:border-success ds:focus-visible:ring-success/50\",\n error:\n \"ds:border-destructive ds:ring-destructive/30 ds:focus-visible:border-destructive ds:focus-visible:ring-destructive/50\",\n warning:\n \"ds:border-warning ds:ring-warning/30 ds:focus-visible:border-warning ds:focus-visible:ring-warning/50\",\n },\n },\n defaultVariants: {\n size: \"normal\",\n state: \"default\",\n },\n }\n);\n\ntype TextareaProps = Omit<React.ComponentProps<\"textarea\">, \"size\"> & {\n size?: \"normal\" | \"sm\" | \"xs\" | \"lg\" | \"xl\";\n state?: \"default\" | \"success\" | \"error\" | \"warning\";\n} & VariantProps<typeof textareaVariants>;\n\nfunction Textarea({ size, state, className, ...props }: TextareaProps) {\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(textareaVariants({ size, state, className }), className)}\n {...props}\n />\n );\n}\n\nexport { Textarea, type TextareaProps };\n"],"names":["textareaVariants","cva","Textarea","size","state","className","props","jsx","cn"],"mappings":"yLAKMA,EAAmBC,EAAAA,IACvB,ggBACA,CACE,SAAU,CACR,KAAM,CACJ,GAAI,2CACJ,GAAI,2CACJ,OAAQ,8BACR,GAAI,8BACJ,GAAI,6BAAA,EAEN,MAAO,CACL,QAAS,GACT,QACE,wGACF,MACE,wHACF,QACE,uGAAA,CACJ,EAEF,gBAAiB,CACf,KAAM,SACN,MAAO,SAAA,CACT,CAEJ,EAOA,SAASC,EAAS,CAAE,KAAAC,EAAM,MAAAC,EAAO,UAAAC,EAAW,GAAGC,GAAwB,CACrE,OACEC,EAAAA,IAAC,WAAA,CACC,YAAU,WACV,UAAWC,EAAAA,GAAGR,EAAiB,CAAE,KAAAG,EAAM,MAAAC,EAAO,UAAAC,CAAA,CAAW,EAAGA,CAAS,EACpE,GAAGC,CAAA,CAAA,CAGV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),i=require("@radix-ui/react-toggle"),u=require("class-variance-authority"),c=require("../lib/utils.cjs");function g(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const s in t)if(s!=="default"){const a=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(e,s,a.get?a:{enumerable:!0,get:()=>t[s]})}}return e.default=t,Object.freeze(e)}const l=g(i),d={primary:{default:"ds:data-[state=on]:bg-primary ds:data-[state=on]:text-primary-foreground",outline:"ds:data-[state=on]:bg-primary ds:data-[state=on]:text-primary-foreground"},secondary:{default:"ds:data-[state=on]:bg-secondary ds:data-[state=on]:text-secondary-foreground",outline:"ds:data-[state=on]:bg-secondary ds:data-[state=on]:text-secondary-foreground"},accent:{default:"ds:data-[state=on]:bg-accent ds:data-[state=on]:text-accent-foreground",outline:"ds:data-[state=on]:bg-accent ds:data-[state=on]:text-accent-foreground"},destructive:{default:"ds:data-[state=on]:bg-destructive ds:data-[state=on]:text-destructive-foreground",outline:"ds:data-[state=on]:bg-destructive ds:data-[state=on]:text-destructive-foreground"},muted:{default:"ds:data-[state=on]:bg-muted ds:data-[state=on]:text-muted-foreground",outline:"ds:data-[state=on]:bg-muted ds:data-[state=on]:text-muted-foreground"},success:{default:"ds:data-[state=on]:bg-success ds:data-[state=on]:text-success-foreground",outline:"ds:data-[state=on]:bg-success ds:data-[state=on]:text-success-foreground"},error:{default:"ds:data-[state=on]:bg-error ds:data-[state=on]:text-error-foreground",outline:"ds:data-[state=on]:bg-error ds:data-[state=on]:text-error-foreground"},warning:{default:"ds:data-[state=on]:bg-warning ds:data-[state=on]:text-warning-foreground",outline:"ds:data-[state=on]:bg-warning ds:data-[state=on]:text-warning-foreground"}},f=()=>{const t=[];return Object.keys(d).forEach(e=>{Object.keys(d[e]).forEach(s=>{t.push({variant:s,color:e,className:d[e][s]})})}),t},r=u.cva("ds:inline-flex ds:items-center ds:justify-center ds:gap-2 ds:rounded-md ds:text-sm ds:font-medium ds:hover:bg-muted ds:hover:text-muted-foreground ds:disabled:pointer-events-none ds:disabled:opacity-50 ds:[&_svg]:pointer-events-none ds:[&_svg:not([class*='size-'])]:size-4 ds:[&_svg]:shrink-0 ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:focus-visible:ring-[3px] ds:outline-none ds:transition-[color,box-shadow] ds:aria-invalid:ring-destructive/20 ds:dark:aria-invalid:ring-destructive/40 ds:aria-invalid:border-destructive ds:whitespace-nowrap",{variants:{variant:{default:"ds:bg-transparent",outline:"ds:border ds:border-input ds:bg-transparent ds:shadow-xs ds:hover:bg-accent ds:hover:text-accent-foreground"},size:{default:"ds:h-9 ds:px-2 ds:min-w-9",sm:"ds:h-8 ds:px-1.5 ds:min-w-8",lg:"ds:h-10 ds:px-2.5 ds:min-w-10"},color:{primary:"",secondary:"",accent:"",destructive:"",muted:"",success:"",error:"",warning:""}},compoundVariants:f(),defaultVariants:{variant:"default",size:"default",color:"muted"}});function b({className:t,variant:e,size:s,color:a,...n}){return o.jsx(l.Root,{"data-slot":"toggle",className:c.cn(r({variant:e,size:s,color:a,className:t})),...n})}exports.Toggle=b;exports.toggleVariants=r;
|
|
2
2
|
//# sourceMappingURL=toggle.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle.cjs","sources":["../../../../../../../../packages/ui/src/components/toggle.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as TogglePrimitive from \"@radix-ui/react-toggle\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nconst colorVariants = {\n primary: {\n default:\n \"data-[state=on]:bg-primary data-[state=on]:text-primary-foreground\",\n outline:\n \"data-[state=on]:bg-primary data-[state=on]:text-primary-foreground\",\n },\n secondary: {\n default:\n \"data-[state=on]:bg-secondary data-[state=on]:text-secondary-foreground\",\n outline:\n \"data-[state=on]:bg-secondary data-[state=on]:text-secondary-foreground\",\n },\n accent: {\n default: \"data-[state=on]:bg-accent data-[state=on]:text-accent-foreground\",\n outline: \"data-[state=on]:bg-accent data-[state=on]:text-accent-foreground\",\n },\n destructive: {\n default:\n \"data-[state=on]:bg-destructive data-[state=on]:text-destructive-foreground\",\n outline:\n \"data-[state=on]:bg-destructive data-[state=on]:text-destructive-foreground\",\n },\n muted: {\n default: \"data-[state=on]:bg-muted data-[state=on]:text-muted-foreground\",\n outline: \"data-[state=on]:bg-muted data-[state=on]:text-muted-foreground\",\n },\n success: {\n default:\n \"data-[state=on]:bg-success data-[state=on]:text-success-foreground\",\n outline:\n \"data-[state=on]:bg-success data-[state=on]:text-success-foreground\",\n },\n error: {\n default: \"data-[state=on]:bg-error data-[state=on]:text-error-foreground\",\n outline: \"data-[state=on]:bg-error data-[state=on]:text-error-foreground\",\n },\n warning: {\n default:\n \"data-[state=on]:bg-warning data-[state=on]:text-warning-foreground\",\n outline:\n \"data-[state=on]:bg-warning data-[state=on]:text-warning-foreground\",\n },\n};\n\nconst generateCompoundVariants = () => {\n const variants: Array<{\n variant: keyof typeof colorVariants.primary;\n color: keyof typeof colorVariants;\n className: string;\n }> = [];\n\n (Object.keys(colorVariants) as Array<keyof typeof colorVariants>).forEach(\n (color) => {\n (\n Object.keys(colorVariants[color]) as Array<\n keyof typeof colorVariants.primary\n >\n ).forEach((variant) => {\n variants.push({\n variant,\n color,\n className: colorVariants[color][variant],\n });\n });\n }\n );\n\n return variants;\n};\n\nconst toggleVariants = cva(\n \"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline:\n \"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground\",\n },\n size: {\n default: \"h-9 px-2 min-w-9\",\n sm: \"h-8 px-1.5 min-w-8\",\n lg: \"h-10 px-2.5 min-w-10\",\n },\n color: {\n primary: \"\",\n secondary: \"\",\n accent: \"\",\n destructive: \"\",\n muted: \"\",\n success: \"\",\n error: \"\",\n warning: \"\",\n },\n },\n compoundVariants: generateCompoundVariants(),\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n color: \"muted\",\n },\n }\n);\n\nfunction Toggle({\n className,\n variant,\n size,\n color,\n ...props\n}: React.ComponentProps<typeof TogglePrimitive.Root> &\n VariantProps<typeof toggleVariants>) {\n return (\n <TogglePrimitive.Root\n data-slot=\"toggle\"\n className={cn(toggleVariants({ variant, size, color, className }))}\n {...props}\n />\n );\n}\n\nexport { Toggle, toggleVariants };\n"],"names":["colorVariants","generateCompoundVariants","variants","color","variant","toggleVariants","cva","Toggle","className","size","props","jsx","TogglePrimitive","cn"],"mappings":"ufAQMA,EAAgB,CACpB,QAAS,CACP,QACE,
|
|
1
|
+
{"version":3,"file":"toggle.cjs","sources":["../../../../../../../../packages/ui/src/components/toggle.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as TogglePrimitive from \"@radix-ui/react-toggle\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\nconst colorVariants = {\n primary: {\n default:\n \"ds:data-[state=on]:bg-primary ds:data-[state=on]:text-primary-foreground\",\n outline:\n \"ds:data-[state=on]:bg-primary ds:data-[state=on]:text-primary-foreground\",\n },\n secondary: {\n default:\n \"ds:data-[state=on]:bg-secondary ds:data-[state=on]:text-secondary-foreground\",\n outline:\n \"ds:data-[state=on]:bg-secondary ds:data-[state=on]:text-secondary-foreground\",\n },\n accent: {\n default: \"ds:data-[state=on]:bg-accent ds:data-[state=on]:text-accent-foreground\",\n outline: \"ds:data-[state=on]:bg-accent ds:data-[state=on]:text-accent-foreground\",\n },\n destructive: {\n default:\n \"ds:data-[state=on]:bg-destructive ds:data-[state=on]:text-destructive-foreground\",\n outline:\n \"ds:data-[state=on]:bg-destructive ds:data-[state=on]:text-destructive-foreground\",\n },\n muted: {\n default: \"ds:data-[state=on]:bg-muted ds:data-[state=on]:text-muted-foreground\",\n outline: \"ds:data-[state=on]:bg-muted ds:data-[state=on]:text-muted-foreground\",\n },\n success: {\n default:\n \"ds:data-[state=on]:bg-success ds:data-[state=on]:text-success-foreground\",\n outline:\n \"ds:data-[state=on]:bg-success ds:data-[state=on]:text-success-foreground\",\n },\n error: {\n default: \"ds:data-[state=on]:bg-error ds:data-[state=on]:text-error-foreground\",\n outline: \"ds:data-[state=on]:bg-error ds:data-[state=on]:text-error-foreground\",\n },\n warning: {\n default:\n \"ds:data-[state=on]:bg-warning ds:data-[state=on]:text-warning-foreground\",\n outline:\n \"ds:data-[state=on]:bg-warning ds:data-[state=on]:text-warning-foreground\",\n },\n};\n\nconst generateCompoundVariants = () => {\n const variants: Array<{\n variant: keyof typeof colorVariants.primary;\n color: keyof typeof colorVariants;\n className: string;\n }> = [];\n\n (Object.keys(colorVariants) as Array<keyof typeof colorVariants>).forEach(\n (color) => {\n (\n Object.keys(colorVariants[color]) as Array<\n keyof typeof colorVariants.primary\n >\n ).forEach((variant) => {\n variants.push({\n variant,\n color,\n className: colorVariants[color][variant],\n });\n });\n }\n );\n\n return variants;\n};\n\nconst toggleVariants = cva(\n \"ds:inline-flex ds:items-center ds:justify-center ds:gap-2 ds:rounded-md ds:text-sm ds:font-medium ds:hover:bg-muted ds:hover:text-muted-foreground ds:disabled:pointer-events-none ds:disabled:opacity-50 ds:[&_svg]:pointer-events-none ds:[&_svg:not([class*='size-'])]:size-4 ds:[&_svg]:shrink-0 ds:focus-visible:border-ring ds:focus-visible:ring-ring/50 ds:focus-visible:ring-[3px] ds:outline-none ds:transition-[color,box-shadow] ds:aria-invalid:ring-destructive/20 ds:dark:aria-invalid:ring-destructive/40 ds:aria-invalid:border-destructive ds:whitespace-nowrap\",\n {\n variants: {\n variant: {\n default: \"ds:bg-transparent\",\n outline:\n \"ds:border ds:border-input ds:bg-transparent ds:shadow-xs ds:hover:bg-accent ds:hover:text-accent-foreground\",\n },\n size: {\n default: \"ds:h-9 ds:px-2 ds:min-w-9\",\n sm: \"ds:h-8 ds:px-1.5 ds:min-w-8\",\n lg: \"ds:h-10 ds:px-2.5 ds:min-w-10\",\n },\n color: {\n primary: \"\",\n secondary: \"\",\n accent: \"\",\n destructive: \"\",\n muted: \"\",\n success: \"\",\n error: \"\",\n warning: \"\",\n },\n },\n compoundVariants: generateCompoundVariants(),\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n color: \"muted\",\n },\n }\n);\n\nfunction Toggle({\n className,\n variant,\n size,\n color,\n ...props\n}: React.ComponentProps<typeof TogglePrimitive.Root> &\n VariantProps<typeof toggleVariants>) {\n return (\n <TogglePrimitive.Root\n data-slot=\"toggle\"\n className={cn(toggleVariants({ variant, size, color, className }))}\n {...props}\n />\n );\n}\n\nexport { Toggle, toggleVariants };\n"],"names":["colorVariants","generateCompoundVariants","variants","color","variant","toggleVariants","cva","Toggle","className","size","props","jsx","TogglePrimitive","cn"],"mappings":"ufAQMA,EAAgB,CACpB,QAAS,CACP,QACE,2EACF,QACE,0EAAA,EAEJ,UAAW,CACT,QACE,+EACF,QACE,8EAAA,EAEJ,OAAQ,CACN,QAAS,yEACT,QAAS,wEAAA,EAEX,YAAa,CACX,QACE,mFACF,QACE,kFAAA,EAEJ,MAAO,CACL,QAAS,uEACT,QAAS,sEAAA,EAEX,QAAS,CACP,QACE,2EACF,QACE,0EAAA,EAEJ,MAAO,CACL,QAAS,uEACT,QAAS,sEAAA,EAEX,QAAS,CACP,QACE,2EACF,QACE,0EAAA,CAEN,EAEMC,EAA2B,IAAM,CACrC,MAAMC,EAID,CAAA,EAEJ,cAAO,KAAKF,CAAa,EAAwC,QAC/DG,GAAU,CAEP,OAAO,KAAKH,EAAcG,CAAK,CAAC,EAGhC,QAASC,GAAY,CACrBF,EAAS,KAAK,CACZ,QAAAE,EACA,MAAAD,EACA,UAAWH,EAAcG,CAAK,EAAEC,CAAO,CAAA,CACxC,CACH,CAAC,CACH,CAAA,EAGKF,CACT,EAEMG,EAAiBC,EAAAA,IACrB,ojBACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,oBACT,QACE,6GAAA,EAEJ,KAAM,CACJ,QAAS,4BACT,GAAI,8BACJ,GAAI,+BAAA,EAEN,MAAO,CACL,QAAS,GACT,UAAW,GACX,OAAQ,GACR,YAAa,GACb,MAAO,GACP,QAAS,GACT,MAAO,GACP,QAAS,EAAA,CACX,EAEF,iBAAkBL,EAAA,EAClB,gBAAiB,CACf,QAAS,UACT,KAAM,UACN,MAAO,OAAA,CACT,CAEJ,EAEA,SAASM,EAAO,CACd,UAAAC,EACA,QAAAJ,EACA,KAAAK,EACA,MAAAN,EACA,GAAGO,CACL,EACuC,CACrC,OACEC,EAAAA,IAACC,EAAgB,KAAhB,CACC,YAAU,SACV,UAAWC,EAAAA,GAAGR,EAAe,CAAE,QAAAD,EAAS,KAAAK,EAAM,MAAAN,EAAO,UAAAK,CAAA,CAAW,CAAC,EAChE,GAAGE,CAAA,CAAA,CAGV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),a=require("@radix-ui/react-tooltip"),l=require("../lib/utils.cjs");function c(t){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const i in t)if(i!=="default"){const d=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(o,i,d.get?d:{enumerable:!0,get:()=>t[i]})}}return o.default=t,Object.freeze(o)}const r=c(a);function s({delayDuration:t=0,...o}){return e.jsx(r.Provider,{"data-slot":"tooltip-provider",delayDuration:t,...o})}function u({...t}){return e.jsx(s,{children:e.jsx(r.Root,{"data-slot":"tooltip",...t})})}function p({...t}){return e.jsx(r.Trigger,{"data-slot":"tooltip-trigger",...t})}function f({className:t,sideOffset:o=0,children:i,content:d,...n}){return e.jsx(r.Portal,{children:e.jsxs(r.Content,{"data-slot":"tooltip-content",sideOffset:o,className:l.cn("ds:bg-foreground ds:text-background ds:animate-in ds:fade-in-0 ds:zoom-in-95 ds:data-[state=closed]:animate-out ds:data-[state=closed]:fade-out-0 ds:data-[state=closed]:zoom-out-95 ds:data-[side=bottom]:slide-in-from-top-2 ds:data-[side=left]:slide-in-from-right-2 ds:data-[side=right]:slide-in-from-left-2 ds:data-[side=top]:slide-in-from-bottom-2 ds:z-50 ds:w-fit ds:origin-(--radix-tooltip-content-transform-origin) ds:rounded-md ds:px-3 ds:py-1.5 ds:text-xs ds:text-balance",t),...n,children:[d??i,e.jsx(r.Arrow,{className:"ds:bg-foreground ds:fill-foreground ds:z-50 ds:size-2.5 ds:translate-y-[calc(-50%_-_2px)] ds:rotate-45 ds:rounded-[2px]"})]})})}exports.Tooltip=u;exports.TooltipContent=f;exports.TooltipProvider=s;exports.TooltipTrigger=p;
|
|
2
2
|
//# sourceMappingURL=tooltip.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.cjs","sources":["../../../../../../../../packages/ui/src/components/tooltip.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\ntype TooltipProviderProps = React.ComponentProps<\n typeof TooltipPrimitive.Provider\n> & {\n delayDuration?: number;\n};\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: TooltipProviderProps) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n );\n}\n\ntype TooltipProps = React.ComponentProps<typeof TooltipPrimitive.Root>;\n\nfunction Tooltip({ ...props }: TooltipProps) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\ntype TooltipTriggerProps = React.ComponentProps<\n typeof TooltipPrimitive.Trigger\n>;\n\nfunction TooltipTrigger({ ...props }: TooltipTriggerProps) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\ntype TooltipContentProps = Omit<\n React.ComponentProps<typeof TooltipPrimitive.Content>,\n \"content\"\n> & {\n sideOffset?: number;\n content?: React.ReactNode;\n};\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n content,\n ...props\n}: TooltipContentProps) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance\",\n className\n )}\n {...props}\n >\n {content ?? children}\n <TooltipPrimitive.Arrow className=\"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\nexport type {\n TooltipProps,\n TooltipTriggerProps,\n TooltipContentProps,\n TooltipProviderProps,\n};\n"],"names":["TooltipProvider","delayDuration","props","jsx","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","className","sideOffset","children","content","jsxs","cn"],"mappings":"kdAaA,SAASA,EAAgB,CACvB,cAAAC,EAAgB,EAChB,GAAGC,CACL,EAAyB,CACvB,OACEC,EAAAA,IAACC,EAAiB,SAAjB,CACC,YAAU,mBACV,cAAAH,EACC,GAAGC,CAAA,CAAA,CAGV,CAIA,SAASG,EAAQ,CAAE,GAAGH,GAAuB,CAC3C,OACEC,EAAAA,IAACH,EAAA,CACC,SAAAG,EAAAA,IAACC,EAAiB,KAAjB,CAAsB,YAAU,UAAW,GAAGF,CAAA,CAAO,CAAA,CACxD,CAEJ,CAMA,SAASI,EAAe,CAAE,GAAGJ,GAA8B,CACzD,aAAQE,EAAiB,QAAjB,CAAyB,YAAU,kBAAmB,GAAGF,EAAO,CAC1E,CAUA,SAASK,EAAe,CACtB,UAAAC,EACA,WAAAC,EAAa,EACb,SAAAC,EACA,QAAAC,EACA,GAAGT,CACL,EAAwB,CACtB,OACEC,EAAAA,IAACC,EAAiB,OAAjB,CACC,SAAAQ,EAAAA,KAACR,EAAiB,QAAjB,CACC,YAAU,kBACV,WAAAK,EACA,UAAWI,EAAAA,GACT,
|
|
1
|
+
{"version":3,"file":"tooltip.cjs","sources":["../../../../../../../../packages/ui/src/components/tooltip.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\n\nimport { cn } from \"@dsui/ui/lib/utils\";\n\ntype TooltipProviderProps = React.ComponentProps<\n typeof TooltipPrimitive.Provider\n> & {\n delayDuration?: number;\n};\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: TooltipProviderProps) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n );\n}\n\ntype TooltipProps = React.ComponentProps<typeof TooltipPrimitive.Root>;\n\nfunction Tooltip({ ...props }: TooltipProps) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\ntype TooltipTriggerProps = React.ComponentProps<\n typeof TooltipPrimitive.Trigger\n>;\n\nfunction TooltipTrigger({ ...props }: TooltipTriggerProps) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\ntype TooltipContentProps = Omit<\n React.ComponentProps<typeof TooltipPrimitive.Content>,\n \"content\"\n> & {\n sideOffset?: number;\n content?: React.ReactNode;\n};\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n content,\n ...props\n}: TooltipContentProps) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"ds:bg-foreground ds:text-background ds:animate-in ds:fade-in-0 ds:zoom-in-95 ds:data-[state=closed]:animate-out ds:data-[state=closed]:fade-out-0 ds:data-[state=closed]:zoom-out-95 ds:data-[side=bottom]:slide-in-from-top-2 ds:data-[side=left]:slide-in-from-right-2 ds:data-[side=right]:slide-in-from-left-2 ds:data-[side=top]:slide-in-from-bottom-2 ds:z-50 ds:w-fit ds:origin-(--radix-tooltip-content-transform-origin) ds:rounded-md ds:px-3 ds:py-1.5 ds:text-xs ds:text-balance\",\n className\n )}\n {...props}\n >\n {content ?? children}\n <TooltipPrimitive.Arrow className=\"ds:bg-foreground ds:fill-foreground ds:z-50 ds:size-2.5 ds:translate-y-[calc(-50%_-_2px)] ds:rotate-45 ds:rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\nexport type {\n TooltipProps,\n TooltipTriggerProps,\n TooltipContentProps,\n TooltipProviderProps,\n};\n"],"names":["TooltipProvider","delayDuration","props","jsx","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","className","sideOffset","children","content","jsxs","cn"],"mappings":"kdAaA,SAASA,EAAgB,CACvB,cAAAC,EAAgB,EAChB,GAAGC,CACL,EAAyB,CACvB,OACEC,EAAAA,IAACC,EAAiB,SAAjB,CACC,YAAU,mBACV,cAAAH,EACC,GAAGC,CAAA,CAAA,CAGV,CAIA,SAASG,EAAQ,CAAE,GAAGH,GAAuB,CAC3C,OACEC,EAAAA,IAACH,EAAA,CACC,SAAAG,EAAAA,IAACC,EAAiB,KAAjB,CAAsB,YAAU,UAAW,GAAGF,CAAA,CAAO,CAAA,CACxD,CAEJ,CAMA,SAASI,EAAe,CAAE,GAAGJ,GAA8B,CACzD,aAAQE,EAAiB,QAAjB,CAAyB,YAAU,kBAAmB,GAAGF,EAAO,CAC1E,CAUA,SAASK,EAAe,CACtB,UAAAC,EACA,WAAAC,EAAa,EACb,SAAAC,EACA,QAAAC,EACA,GAAGT,CACL,EAAwB,CACtB,OACEC,EAAAA,IAACC,EAAiB,OAAjB,CACC,SAAAQ,EAAAA,KAACR,EAAiB,QAAjB,CACC,YAAU,kBACV,WAAAK,EACA,UAAWI,EAAAA,GACT,geACAL,CAAA,EAED,GAAGN,EAEH,SAAA,CAAAS,GAAWD,EACZP,EAAAA,IAACC,EAAiB,MAAjB,CAAuB,UAAU,yHAAA,CAA0H,CAAA,CAAA,CAAA,EAEhK,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),c=require("react"),Y=require("@radix-ui/react-accordion"),Z=require("@radix-ui/react-checkbox"),R=require("lucide-react"),G=require("class-variance-authority"),x=require("../lib/utils.cjs");function J(e){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(s,n,a.get?a:{enumerable:!0,get:()=>e[n]})}}return s.default=e,Object.freeze(s)}const P=J(Y),M=J(Z),z=G.cva("group hover:before:opacity-100 before:absolute before:rounded-lg before:left-0 pr-2 before:w-full before:opacity-0 before:bg-accent/70 before:h-[2rem] before:-z-10"),H=G.cva("before:opacity-100 before:bg-accent/70 text-accent-foreground"),$=[],K=c.forwardRef(({data:e,initialSelectedItemId:s,onSelectChange:n,expandAll:a,defaultLeafIcon:i,defaultNodeIcon:q,className:u,multiSelect:o=!1,selectedIds:f=$,onMultiSelectChange:l,showIcon:g=!0,showLeafIcon:d=!0,treeLine:b=!1,expandOnArrowClick:N=!1,indicatorVariant:v="arrow",customExpandIcon:w,customCollapseIcon:_,...k},D)=>{const[m,p]=c.useState(s),[h,t]=c.useState(f);c.useEffect(()=>{t(f)},[f]);const A=c.useCallback(T=>{p(T?.id),n&&n(T)},[n]),V=c.useCallback((T,E)=>{const j=y=>{const B=[y.id];return y.children&&y.children.forEach(X=>{B.push(...j(X))}),B},F=E?[...h,...j(T)]:h.filter(y=>!j(T).includes(y)),C=Array.from(new Set(F));t(C),l&&l(C)},[h,l]),S=c.useMemo(()=>{const T=[];if(a){const E=j=>{(Array.isArray(j)?j:[j]).forEach(C=>{C.children&&C.children.length>0&&(T.push(C.id),E(C.children))})};E(e)}else if(s){const E=(j,F)=>{const C=Array.isArray(j)?j:[j];for(const y of C){if(y.id===F)return!0;if(y.children&&E(y.children,F))return T.push(y.id),!0}return!1};E(e,s)}return T},[e,a,s]);return r.jsx("div",{className:x.cn("overflow-hidden relative p-2",u),children:r.jsx(U,{data:e,ref:D,selectedItemId:m,handleSelectChange:A,expandedItemIds:S,defaultLeafIcon:i,defaultNodeIcon:q,multiSelect:o,checkedIds:h,handleCheckChange:V,showIcon:g,showLeafIcon:d,treeLine:b,expandOnArrowClick:N,indicatorVariant:v,customExpandIcon:w,customCollapseIcon:_,isRoot:!0,...k})})});K.displayName="TreeView";const U=c.forwardRef(({className:e,data:s,selectedItemId:n,handleSelectChange:a,expandedItemIds:i,defaultNodeIcon:q,defaultLeafIcon:u,multiSelect:o,checkedIds:f,handleCheckChange:l,showIcon:g,showLeafIcon:d,treeLine:b,expandOnArrowClick:N,indicatorVariant:v,customExpandIcon:w,customCollapseIcon:_,isRoot:k,...D},m)=>(s instanceof Array||(s=[s]),r.jsx("div",{ref:m,role:"tree",className:e,...D,children:r.jsx("ul",{children:s.map((p,h)=>r.jsx("li",{className:"relative",children:p.children?r.jsx(I,{item:p,selectedItemId:n,expandedItemIds:i,handleSelectChange:a,defaultNodeIcon:q,defaultLeafIcon:u,multiSelect:o,checkedIds:f,handleCheckChange:l,showIcon:g,treeLine:b,expandOnArrowClick:N,indicatorVariant:v,customExpandIcon:w,customCollapseIcon:_,isLastChild:h===s.length-1,isRoot:k}):r.jsx(O,{item:p,selectedItemId:n,handleSelectChange:a,defaultLeafIcon:u,multiSelect:o,checkedIds:f,handleCheckChange:l,showLeafIcon:d,treeLine:b,isLastChild:h===s.length-1,isRoot:k})},p.id))})})));U.displayName="TreeItem";const I=({item:e,handleSelectChange:s,expandedItemIds:n,selectedItemId:a,defaultNodeIcon:i,defaultLeafIcon:q,multiSelect:u,checkedIds:o=[],handleCheckChange:f,showIcon:l=!0,treeLine:g=!1,expandOnArrowClick:d=!1,indicatorVariant:b="arrow",customExpandIcon:N,customCollapseIcon:v,isLastChild:w,isRoot:_})=>{const[k,D]=c.useState(n.includes(e.id)?[e.id]:[]);c.useEffect(()=>{n.includes(e.id)?D(t=>t.includes(e.id)?t:[...t,e.id]):D(t=>t.filter(A=>A!==e.id))},[n,e.id]);const m=c.useMemo(()=>{const t=A=>{const V=[];return A.children&&A.children.forEach(S=>{V.push(S.id),V.push(...t(S))}),V};return e.children?t(e):[]},[e.id]),p=c.useMemo(()=>o?o.includes(e.id)?!0:!e.children||e.children.length===0||m.length===0?!1:m.every(t=>o.includes(t)):!1,[o,e.id,m]),h=c.useMemo(()=>{if(!u||!e.children||!o||p)return!1;const t=m.filter(A=>o.includes(A));return t.length>0&&t.length<m.length},[u,o,p,m]);return r.jsx(P.Root,{type:"multiple",value:k,onValueChange:t=>D(t),children:r.jsxs(P.Item,{value:e.id,className:"relative",children:[g==="full"&&r.jsx("div",{className:x.cn("absolute left-[-1.05rem] w-px bg-border",w?"h-5":"h-full",_&&"hidden"),children:r.jsx("div",{className:"absolute left-0 top-5 w-4 h-px bg-border"})}),r.jsx("div",{className:x.cn("flex items-center relative",!d&&z(),!d&&a===e.id&&H()),children:r.jsxs(P.Header,{className:"flex items-center w-full",children:[r.jsx(P.Trigger,{asChild:!0,onClick:t=>{d&&t.stopPropagation()},children:r.jsxs("div",{className:x.cn("flex items-center p-2 transition-all gap-1",b==="arrow"&&!N&&!v&&"[&[data-state=open]>svg:first-of-type]:rotate-90",d?"hover:bg-accent/50 rounded-sm cursor-pointer":"flex-1 cursor-pointer"),children:[r.jsx(re,{variant:b,isOpen:k.includes(e.id),customExpand:N,customCollapse:v}),!d&&r.jsxs(r.Fragment,{children:[u&&r.jsx(M.Root,{checked:p?!0:h?"indeterminate":!1,onCheckedChange:t=>{f?.(e,t===!0)},onClick:t=>t.stopPropagation(),className:"mr-2 h-4 w-4 shrink-0 rounded-sm border border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground data-[state=indeterminate]:bg-primary data-[state=indeterminate]:text-primary-foreground",children:r.jsx(M.Indicator,{className:"flex items-center justify-center text-current",children:h?r.jsx(R.Minus,{className:"h-3 w-3"}):r.jsx(R.Check,{className:"h-3 w-3"})})}),l&&r.jsx(L,{item:e,isSelected:a===e.id,isOpen:k.includes(e.id),default:i}),r.jsx("span",{className:"text-sm truncate",children:e.name})]})]})}),d&&r.jsxs("div",{className:x.cn("flex items-center flex-1 py-2 cursor-pointer",z(),a===e.id&&H()),onClick:()=>{u||(s(e),e.onClick?.())},children:[u&&r.jsx(M.Root,{checked:p?!0:h?"indeterminate":!1,onCheckedChange:t=>{f?.(e,t===!0)},onClick:t=>t.stopPropagation(),className:"mr-2 h-4 w-4 shrink-0 rounded-sm border border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground data-[state=indeterminate]:bg-primary data-[state=indeterminate]:text-primary-foreground",children:r.jsx(M.Indicator,{className:"flex items-center justify-center text-current",children:h?r.jsx(R.Minus,{className:"h-3 w-3"}):r.jsx(R.Check,{className:"h-3 w-3"})})}),l&&r.jsx(L,{item:e,isSelected:a===e.id,isOpen:k.includes(e.id),default:i}),r.jsx("span",{className:"text-sm truncate",children:e.name})]}),r.jsx(W,{isSelected:a===e.id,className:x.cn(d&&"right-1"),children:e.actions})]})}),r.jsx(Q,{className:x.cn("ml-4 pl-1",g===!0&&"border-l",g==="full"&&"pl-2 border-l ml-4"),children:r.jsx(U,{data:e.children?e.children:e,selectedItemId:a,handleSelectChange:s,expandedItemIds:n,defaultLeafIcon:q,defaultNodeIcon:i,multiSelect:u,checkedIds:o,handleCheckChange:f,showIcon:l,showLeafIcon:l,treeLine:g,expandOnArrowClick:d,indicatorVariant:b,customExpandIcon:N,customCollapseIcon:v})})]})})},O=c.forwardRef(({className:e,item:s,selectedItemId:n,handleSelectChange:a,defaultLeafIcon:i,multiSelect:q,checkedIds:u,handleCheckChange:o,showLeafIcon:f=!0,treeLine:l=!1,isLastChild:g,isRoot:d,...b},N)=>{const v=u?.includes(s.id);return r.jsxs("div",{ref:N,className:x.cn("ml-5 flex text-left items-center py-2 cursor-pointer before:right-1",l==="full"&&"ml-[1.25rem]",z(),e,n===s.id&&H(),s.disabled&&"opacity-50 cursor-not-allowed pointer-events-none"),onClick:()=>{s.disabled||q||(a(s),s.onClick?.())},...b,children:[l==="full"&&r.jsx("div",{className:x.cn("absolute left-[-1.05rem] w-px bg-border",g?"h-1/2":"h-full",d&&"hidden"),children:r.jsx("div",{className:"absolute left-0 top-1/2 w-4 h-px bg-border"})}),q&&r.jsx(M.Root,{checked:v,onCheckedChange:w=>{o?.(s,w===!0)},disabled:s.disabled,onClick:w=>w.stopPropagation(),className:"mr-2 h-4 w-4 shrink-0 rounded-sm border border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",children:r.jsx(M.Indicator,{className:"flex items-center justify-center text-current",children:r.jsx(R.Check,{className:"h-3 w-3"})})}),f&&r.jsx(L,{item:s,isSelected:n===s.id,default:i}),r.jsx("span",{className:"grow text-sm truncate",children:s.name}),r.jsx(W,{isSelected:n===s.id&&!s.disabled,children:s.actions})]})});O.displayName="TreeLeaf";const ee=c.forwardRef(({className:e,children:s,...n},a)=>r.jsx(P.Header,{children:r.jsx(P.Trigger,{asChild:!0,...n,children:r.jsxs("div",{ref:a,className:x.cn("flex flex-1 w-full items-center py-2 transition-all first:[&[data-state=open]>svg]:first-of-type:rotate-90",e),children:[r.jsx(R.ChevronRight,{className:"h-4 w-4 shrink-0 transition-transform duration-200 text-accent-foreground/50"}),s]})})}));ee.displayName=P.Trigger.displayName;const Q=c.forwardRef(({className:e,children:s,...n},a)=>r.jsx(P.Content,{ref:a,className:x.cn("overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",e),...n,children:r.jsx("div",{className:"pb-1 pt-0",children:s})}));Q.displayName=P.Content.displayName;const L=({item:e,isOpen:s,isSelected:n,default:a})=>{let i=a;return n&&e.selectedIcon?i=e.selectedIcon:s&&e.openIcon?i=e.openIcon:e.icon&&(i=e.icon),i?r.jsx(i,{className:"h-4 w-4 shrink-0 mr-2"}):r.jsx(r.Fragment,{})},W=({children:e,isSelected:s,className:n})=>r.jsx("div",{className:x.cn(s?"block":"hidden","absolute right-3 group-hover:block",n),children:e}),re=({variant:e,isOpen:s,customExpand:n,customCollapse:a})=>n&&!s?r.jsx(n,{className:"h-4 w-4 shrink-0 transition-transform duration-200 text-accent-foreground/50"}):a&&s?r.jsx(a,{className:"h-4 w-4 shrink-0 transition-transform duration-200 text-accent-foreground/50"}):e==="plus-minus"?s?r.jsx(R.SquareMinus,{className:"h-4 w-4 shrink-0 transition-transform duration-200 text-accent-foreground/50"}):r.jsx(R.SquarePlus,{className:"h-4 w-4 shrink-0 transition-transform duration-200 text-accent-foreground/50"}):r.jsx(R.ChevronRight,{className:"h-4 w-4 shrink-0 transition-transform duration-200 text-accent-foreground/50"});exports.TreeView=K;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),a=require("react"),Y=require("@radix-ui/react-accordion"),Z=require("@radix-ui/react-checkbox"),R=require("lucide-react"),G=require("class-variance-authority"),x=require("../lib/utils.cjs");function J(s){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const d in s)if(d!=="default"){const t=Object.getOwnPropertyDescriptor(s,d);Object.defineProperty(r,d,t.get?t:{enumerable:!0,get:()=>s[d]})}}return r.default=s,Object.freeze(r)}const P=J(Y),M=J(Z),z=G.cva("ds:group ds:hover:before:opacity-100 ds:before:absolute ds:before:rounded-lg ds:before:left-0 ds:pr-2 ds:before:w-full ds:before:opacity-0 ds:before:bg-accent/70 ds:before:h-[2rem] ds:before:-z-10"),H=G.cva("ds:before:opacity-100 ds:before:bg-accent/70 ds:text-accent-foreground"),$=[],K=a.forwardRef(({data:s,initialSelectedItemId:r,onSelectChange:d,expandAll:t,defaultLeafIcon:c,defaultNodeIcon:q,className:u,multiSelect:i=!1,selectedIds:f=$,onMultiSelectChange:o,showIcon:g=!0,showLeafIcon:l=!0,treeLine:b=!1,expandOnArrowClick:N=!1,indicatorVariant:v="arrow",customExpandIcon:w,customCollapseIcon:_,...k},D)=>{const[m,p]=a.useState(r),[h,n]=a.useState(f);a.useEffect(()=>{n(f)},[f]);const A=a.useCallback(T=>{p(T?.id),d&&d(T)},[d]),V=a.useCallback((T,E)=>{const j=y=>{const B=[y.id];return y.children&&y.children.forEach(X=>{B.push(...j(X))}),B},F=E?[...h,...j(T)]:h.filter(y=>!j(T).includes(y)),C=Array.from(new Set(F));n(C),o&&o(C)},[h,o]),S=a.useMemo(()=>{const T=[];if(t){const E=j=>{(Array.isArray(j)?j:[j]).forEach(C=>{C.children&&C.children.length>0&&(T.push(C.id),E(C.children))})};E(s)}else if(r){const E=(j,F)=>{const C=Array.isArray(j)?j:[j];for(const y of C){if(y.id===F)return!0;if(y.children&&E(y.children,F))return T.push(y.id),!0}return!1};E(s,r)}return T},[s,t,r]);return e.jsx("div",{className:x.cn("ds:overflow-hidden ds:relative ds:p-2",u),children:e.jsx(U,{data:s,ref:D,selectedItemId:m,handleSelectChange:A,expandedItemIds:S,defaultLeafIcon:c,defaultNodeIcon:q,multiSelect:i,checkedIds:h,handleCheckChange:V,showIcon:g,showLeafIcon:l,treeLine:b,expandOnArrowClick:N,indicatorVariant:v,customExpandIcon:w,customCollapseIcon:_,isRoot:!0,...k})})});K.displayName="TreeView";const U=a.forwardRef(({className:s,data:r,selectedItemId:d,handleSelectChange:t,expandedItemIds:c,defaultNodeIcon:q,defaultLeafIcon:u,multiSelect:i,checkedIds:f,handleCheckChange:o,showIcon:g,showLeafIcon:l,treeLine:b,expandOnArrowClick:N,indicatorVariant:v,customExpandIcon:w,customCollapseIcon:_,isRoot:k,...D},m)=>(r instanceof Array||(r=[r]),e.jsx("div",{ref:m,role:"tree",className:s,...D,children:e.jsx("ul",{children:r.map((p,h)=>e.jsx("li",{className:"ds:relative",children:p.children?e.jsx(I,{item:p,selectedItemId:d,expandedItemIds:c,handleSelectChange:t,defaultNodeIcon:q,defaultLeafIcon:u,multiSelect:i,checkedIds:f,handleCheckChange:o,showIcon:g,treeLine:b,expandOnArrowClick:N,indicatorVariant:v,customExpandIcon:w,customCollapseIcon:_,isLastChild:h===r.length-1,isRoot:k}):e.jsx(O,{item:p,selectedItemId:d,handleSelectChange:t,defaultLeafIcon:u,multiSelect:i,checkedIds:f,handleCheckChange:o,showLeafIcon:l,treeLine:b,isLastChild:h===r.length-1,isRoot:k})},p.id))})})));U.displayName="TreeItem";const I=({item:s,handleSelectChange:r,expandedItemIds:d,selectedItemId:t,defaultNodeIcon:c,defaultLeafIcon:q,multiSelect:u,checkedIds:i=[],handleCheckChange:f,showIcon:o=!0,treeLine:g=!1,expandOnArrowClick:l=!1,indicatorVariant:b="arrow",customExpandIcon:N,customCollapseIcon:v,isLastChild:w,isRoot:_})=>{const[k,D]=a.useState(d.includes(s.id)?[s.id]:[]);a.useEffect(()=>{d.includes(s.id)?D(n=>n.includes(s.id)?n:[...n,s.id]):D(n=>n.filter(A=>A!==s.id))},[d,s.id]);const m=a.useMemo(()=>{const n=A=>{const V=[];return A.children&&A.children.forEach(S=>{V.push(S.id),V.push(...n(S))}),V};return s.children?n(s):[]},[s.id]),p=a.useMemo(()=>i?i.includes(s.id)?!0:!s.children||s.children.length===0||m.length===0?!1:m.every(n=>i.includes(n)):!1,[i,s.id,m]),h=a.useMemo(()=>{if(!u||!s.children||!i||p)return!1;const n=m.filter(A=>i.includes(A));return n.length>0&&n.length<m.length},[u,i,p,m]);return e.jsx(P.Root,{type:"multiple",value:k,onValueChange:n=>D(n),children:e.jsxs(P.Item,{value:s.id,className:"ds:relative",children:[g==="full"&&e.jsx("div",{className:x.cn("ds:absolute ds:left-[-1.05rem] ds:w-px ds:bg-border",w?"ds:h-5":"ds:h-full",_&&"ds:hidden"),children:e.jsx("div",{className:"ds:absolute ds:left-0 ds:top-5 ds:w-4 ds:h-px ds:bg-border"})}),e.jsx("div",{className:x.cn("ds:flex ds:items-center ds:relative",!l&&z(),!l&&t===s.id&&H()),children:e.jsxs(P.Header,{className:"ds:flex ds:items-center ds:w-full",children:[e.jsx(P.Trigger,{asChild:!0,onClick:n=>{l&&n.stopPropagation()},children:e.jsxs("div",{className:x.cn("ds:flex ds:items-center ds:p-2 ds:transition-all ds:gap-1",b==="arrow"&&!N&&!v&&"ds:[&[data-state=open]>svg:first-of-type]:rotate-90",l?"ds:hover:bg-accent/50 ds:rounded-sm ds:cursor-pointer":"ds:flex-1 ds:cursor-pointer"),children:[e.jsx(es,{variant:b,isOpen:k.includes(s.id),customExpand:N,customCollapse:v}),!l&&e.jsxs(e.Fragment,{children:[u&&e.jsx(M.Root,{checked:p?!0:h?"indeterminate":!1,onCheckedChange:n=>{f?.(s,n===!0)},onClick:n=>n.stopPropagation(),className:"ds:mr-2 ds:h-4 ds:w-4 ds:shrink-0 ds:rounded-sm ds:border ds:border-primary ds:data-[state=checked]:bg-primary ds:data-[state=checked]:text-primary-foreground ds:data-[state=indeterminate]:bg-primary ds:data-[state=indeterminate]:text-primary-foreground",children:e.jsx(M.Indicator,{className:"ds:flex ds:items-center ds:justify-center ds:text-current",children:h?e.jsx(R.Minus,{className:"ds:h-3 ds:w-3"}):e.jsx(R.Check,{className:"ds:h-3 ds:w-3"})})}),o&&e.jsx(L,{item:s,isSelected:t===s.id,isOpen:k.includes(s.id),default:c}),e.jsx("span",{className:"ds:text-sm ds:truncate",children:s.name})]})]})}),l&&e.jsxs("div",{className:x.cn("ds:flex ds:items-center ds:flex-1 ds:py-2 ds:cursor-pointer",z(),t===s.id&&H()),onClick:()=>{u||(r(s),s.onClick?.())},children:[u&&e.jsx(M.Root,{checked:p?!0:h?"indeterminate":!1,onCheckedChange:n=>{f?.(s,n===!0)},onClick:n=>n.stopPropagation(),className:"ds:mr-2 ds:h-4 ds:w-4 ds:shrink-0 ds:rounded-sm ds:border ds:border-primary ds:data-[state=checked]:bg-primary ds:data-[state=checked]:text-primary-foreground ds:data-[state=indeterminate]:bg-primary ds:data-[state=indeterminate]:text-primary-foreground",children:e.jsx(M.Indicator,{className:"ds:flex ds:items-center ds:justify-center ds:text-current",children:h?e.jsx(R.Minus,{className:"ds:h-3 ds:w-3"}):e.jsx(R.Check,{className:"ds:h-3 ds:w-3"})})}),o&&e.jsx(L,{item:s,isSelected:t===s.id,isOpen:k.includes(s.id),default:c}),e.jsx("span",{className:"ds:text-sm ds:truncate",children:s.name})]}),e.jsx(W,{isSelected:t===s.id,className:x.cn(l&&"ds:right-1"),children:s.actions})]})}),e.jsx(Q,{className:x.cn("ds:ml-4 ds:pl-1",g===!0&&"ds:border-l",g==="full"&&"ds:pl-2 ds:border-l ds:ml-4"),children:e.jsx(U,{data:s.children?s.children:s,selectedItemId:t,handleSelectChange:r,expandedItemIds:d,defaultLeafIcon:q,defaultNodeIcon:c,multiSelect:u,checkedIds:i,handleCheckChange:f,showIcon:o,showLeafIcon:o,treeLine:g,expandOnArrowClick:l,indicatorVariant:b,customExpandIcon:N,customCollapseIcon:v})})]})})},O=a.forwardRef(({className:s,item:r,selectedItemId:d,handleSelectChange:t,defaultLeafIcon:c,multiSelect:q,checkedIds:u,handleCheckChange:i,showLeafIcon:f=!0,treeLine:o=!1,isLastChild:g,isRoot:l,...b},N)=>{const v=u?.includes(r.id);return e.jsxs("div",{ref:N,className:x.cn("ds:ml-5 ds:flex ds:text-left ds:items-center ds:py-2 ds:cursor-pointer ds:before:right-1",o==="full"&&"ds:ml-[1.25rem]",z(),s,d===r.id&&H(),r.disabled&&"ds:opacity-50 ds:cursor-not-allowed ds:pointer-events-none"),onClick:()=>{r.disabled||q||(t(r),r.onClick?.())},...b,children:[o==="full"&&e.jsx("div",{className:x.cn("ds:absolute ds:left-[-1.05rem] ds:w-px ds:bg-border",g?"ds:h-1/2":"ds:h-full",l&&"ds:hidden"),children:e.jsx("div",{className:"ds:absolute ds:left-0 ds:top-1/2 ds:w-4 ds:h-px ds:bg-border"})}),q&&e.jsx(M.Root,{checked:v,onCheckedChange:w=>{i?.(r,w===!0)},disabled:r.disabled,onClick:w=>w.stopPropagation(),className:"ds:mr-2 ds:h-4 ds:w-4 ds:shrink-0 ds:rounded-sm ds:border ds:border-primary ds:data-[state=checked]:bg-primary ds:data-[state=checked]:text-primary-foreground",children:e.jsx(M.Indicator,{className:"ds:flex ds:items-center ds:justify-center ds:text-current",children:e.jsx(R.Check,{className:"ds:h-3 ds:w-3"})})}),f&&e.jsx(L,{item:r,isSelected:d===r.id,default:c}),e.jsx("span",{className:"ds:grow ds:text-sm ds:truncate",children:r.name}),e.jsx(W,{isSelected:d===r.id&&!r.disabled,children:r.actions})]})});O.displayName="TreeLeaf";const ss=a.forwardRef(({className:s,children:r,...d},t)=>e.jsx(P.Header,{children:e.jsx(P.Trigger,{asChild:!0,...d,children:e.jsxs("div",{ref:t,className:x.cn("ds:flex ds:flex-1 ds:w-full ds:items-center ds:py-2 ds:transition-all ds:first:[&[data-state=open]>svg]:first-of-type:rotate-90",s),children:[e.jsx(R.ChevronRight,{className:"ds:h-4 ds:w-4 ds:shrink-0 ds:transition-transform ds:duration-200 ds:text-accent-foreground/50"}),r]})})}));ss.displayName=P.Trigger.displayName;const Q=a.forwardRef(({className:s,children:r,...d},t)=>e.jsx(P.Content,{ref:t,className:x.cn("ds:overflow-hidden ds:text-sm ds:transition-all ds:data-[state=closed]:animate-accordion-up ds:data-[state=open]:animate-accordion-down",s),...d,children:e.jsx("div",{className:"ds:pb-1 ds:pt-0",children:r})}));Q.displayName=P.Content.displayName;const L=({item:s,isOpen:r,isSelected:d,default:t})=>{let c=t;return d&&s.selectedIcon?c=s.selectedIcon:r&&s.openIcon?c=s.openIcon:s.icon&&(c=s.icon),c?e.jsx(c,{className:"ds:h-4 ds:w-4 ds:shrink-0 ds:mr-2"}):e.jsx(e.Fragment,{})},W=({children:s,isSelected:r,className:d})=>e.jsx("div",{className:x.cn(r?"ds:block":"ds:hidden","ds:absolute ds:right-3 ds:group-hover:block",d),children:s}),es=({variant:s,isOpen:r,customExpand:d,customCollapse:t})=>d&&!r?e.jsx(d,{className:"ds:h-4 ds:w-4 ds:shrink-0 ds:transition-transform ds:duration-200 ds:text-accent-foreground/50"}):t&&r?e.jsx(t,{className:"ds:h-4 ds:w-4 ds:shrink-0 ds:transition-transform ds:duration-200 ds:text-accent-foreground/50"}):s==="plus-minus"?r?e.jsx(R.SquareMinus,{className:"ds:h-4 ds:w-4 ds:shrink-0 ds:transition-transform ds:duration-200 ds:text-accent-foreground/50"}):e.jsx(R.SquarePlus,{className:"ds:h-4 ds:w-4 ds:shrink-0 ds:transition-transform ds:duration-200 ds:text-accent-foreground/50"}):e.jsx(R.ChevronRight,{className:"ds:h-4 ds:w-4 ds:shrink-0 ds:transition-transform ds:duration-200 ds:text-accent-foreground/50"});exports.TreeView=K;
|
|
2
2
|
//# sourceMappingURL=tree-view.cjs.map
|