@gv-tech/design-system 2.22.2 → 2.23.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 +16 -0
- package/dist/accordion.cjs +1 -1
- package/dist/accordion.cjs.map +1 -1
- package/dist/accordion.mjs +50 -30
- package/dist/accordion.mjs.map +1 -1
- package/dist/alert-dialog.cjs +1 -1
- package/dist/alert-dialog.cjs.map +1 -1
- package/dist/alert-dialog.mjs +98 -52
- package/dist/alert-dialog.mjs.map +1 -1
- package/dist/alert.cjs +1 -1
- package/dist/alert.cjs.map +1 -1
- package/dist/alert.mjs +37 -29
- package/dist/alert.mjs.map +1 -1
- package/dist/aspect-ratio.cjs +1 -1
- package/dist/aspect-ratio.cjs.map +1 -1
- package/dist/aspect-ratio.mjs +9 -3
- package/dist/aspect-ratio.mjs.map +1 -1
- package/dist/avatar.cjs +1 -1
- package/dist/avatar.cjs.map +1 -1
- package/dist/avatar.mjs +48 -23
- package/dist/avatar.mjs.map +1 -1
- package/dist/badge.cjs +1 -1
- package/dist/badge.cjs.map +1 -1
- package/dist/badge.mjs +16 -13
- package/dist/badge.mjs.map +1 -1
- package/dist/breadcrumb.cjs +1 -1
- package/dist/breadcrumb.cjs.map +1 -1
- package/dist/breadcrumb.mjs +67 -57
- package/dist/breadcrumb.mjs.map +1 -1
- package/dist/button-group.cjs +2 -0
- package/dist/button-group.cjs.map +1 -0
- package/dist/button-group.d.ts +2 -0
- package/dist/button-group.mjs +39 -0
- package/dist/button-group.mjs.map +1 -0
- package/dist/button.cjs +1 -1
- package/dist/button.cjs.map +1 -1
- package/dist/button.mjs +32 -25
- package/dist/button.mjs.map +1 -1
- package/dist/calendar.cjs +1 -1
- package/dist/calendar.cjs.map +1 -1
- package/dist/calendar.mjs +54 -51
- package/dist/calendar.mjs.map +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.cjs.map +1 -1
- package/dist/card.mjs +55 -41
- package/dist/card.mjs.map +1 -1
- package/dist/carousel.cjs +1 -1
- package/dist/carousel.cjs.map +1 -1
- package/dist/carousel.mjs +58 -64
- package/dist/carousel.mjs.map +1 -1
- package/dist/chart.cjs +3 -3
- package/dist/chart.cjs.map +1 -1
- package/dist/chart.mjs +59 -66
- package/dist/chart.mjs.map +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.cjs.map +1 -1
- package/dist/checkbox.mjs +17 -15
- package/dist/checkbox.mjs.map +1 -1
- package/dist/collapsible.cjs +1 -1
- package/dist/collapsible.cjs.map +1 -1
- package/dist/collapsible.mjs +21 -3
- package/dist/collapsible.mjs.map +1 -1
- package/dist/combobox.cjs +2 -0
- package/dist/combobox.cjs.map +1 -0
- package/dist/combobox.d.ts +2 -0
- package/dist/combobox.mjs +164 -0
- package/dist/combobox.mjs.map +1 -0
- package/dist/command.cjs +1 -1
- package/dist/command.cjs.map +1 -1
- package/dist/command.mjs +86 -75
- package/dist/command.mjs.map +1 -1
- package/dist/context-menu.cjs +1 -1
- package/dist/context-menu.cjs.map +1 -1
- package/dist/context-menu.mjs +121 -68
- package/dist/context-menu.mjs.map +1 -1
- package/dist/design-system.css +1 -1
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.cjs.map +1 -1
- package/dist/dialog.mjs +90 -43
- package/dist/dialog.mjs.map +1 -1
- package/dist/direction.cjs +2 -0
- package/dist/direction.cjs.map +1 -0
- package/dist/direction.d.ts +2 -0
- package/dist/direction.mjs +17 -0
- package/dist/direction.mjs.map +1 -0
- package/dist/drawer.cjs +1 -1
- package/dist/drawer.cjs.map +1 -1
- package/dist/drawer.mjs +75 -45
- package/dist/drawer.mjs.map +1 -1
- package/dist/dropdown-menu.cjs +1 -1
- package/dist/dropdown-menu.cjs.map +1 -1
- package/dist/dropdown-menu.mjs +124 -68
- package/dist/dropdown-menu.mjs.map +1 -1
- package/dist/empty.cjs +2 -0
- package/dist/empty.cjs.map +1 -0
- package/dist/empty.d.ts +2 -0
- package/dist/empty.mjs +62 -0
- package/dist/empty.mjs.map +1 -0
- package/dist/field.cjs +2 -0
- package/dist/field.cjs.map +1 -0
- package/dist/field.d.ts +2 -0
- package/dist/field.mjs +111 -0
- package/dist/field.mjs.map +1 -0
- package/dist/form.cjs +1 -1
- package/dist/form.cjs.map +1 -1
- package/dist/form.mjs +14 -14
- package/dist/hover-card.cjs +1 -1
- package/dist/hover-card.cjs.map +1 -1
- package/dist/hover-card.mjs +28 -12
- package/dist/hover-card.mjs.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +52 -41
- package/dist/input-group.cjs +2 -0
- package/dist/input-group.cjs.map +1 -0
- package/dist/input-group.d.ts +2 -0
- package/dist/input-group.mjs +80 -0
- package/dist/input-group.mjs.map +1 -0
- package/dist/input-otp.cjs +2 -0
- package/dist/input-otp.cjs.map +1 -0
- package/dist/input-otp.d.ts +2 -0
- package/dist/input-otp.mjs +49 -0
- package/dist/input-otp.mjs.map +1 -0
- package/dist/input.cjs +1 -1
- package/dist/input.cjs.map +1 -1
- package/dist/input.mjs +13 -12
- package/dist/input.mjs.map +1 -1
- package/dist/item.cjs +2 -0
- package/dist/item.cjs.map +1 -0
- package/dist/item.d.ts +2 -0
- package/dist/item.mjs +119 -0
- package/dist/item.mjs.map +1 -0
- package/dist/kbd.cjs +2 -0
- package/dist/kbd.cjs.map +1 -0
- package/dist/kbd.d.ts +2 -0
- package/dist/kbd.mjs +23 -0
- package/dist/kbd.mjs.map +1 -0
- package/dist/label.cjs +1 -1
- package/dist/label.cjs.map +1 -1
- package/dist/label.mjs +12 -11
- package/dist/label.mjs.map +1 -1
- package/dist/menubar.cjs +1 -1
- package/dist/menubar.cjs.map +1 -1
- package/dist/menubar.mjs +120 -90
- package/dist/menubar.mjs.map +1 -1
- package/dist/native-select.cjs +2 -0
- package/dist/native-select.cjs.map +1 -0
- package/dist/native-select.d.ts +2 -0
- package/dist/native-select.mjs +41 -0
- package/dist/native-select.mjs.map +1 -0
- package/dist/navigation-menu.cjs +1 -1
- package/dist/navigation-menu.cjs.map +1 -1
- package/dist/navigation-menu.mjs +74 -52
- package/dist/navigation-menu.mjs.map +1 -1
- package/dist/packages/design-tokens/src/index.d.ts +16 -0
- package/dist/packages/design-tokens/src/theme.d.ts +16 -0
- package/dist/packages/ui-core/src/contracts/alert.d.ts +3 -1
- package/dist/packages/ui-core/src/contracts/badge.d.ts +3 -1
- package/dist/packages/ui-core/src/contracts/button-group.d.ts +17 -0
- package/dist/packages/ui-core/src/contracts/checkbox.d.ts +2 -2
- package/dist/packages/ui-core/src/contracts/combobox.d.ts +65 -0
- package/dist/packages/ui-core/src/contracts/direction.d.ts +7 -0
- package/dist/packages/ui-core/src/contracts/empty.d.ts +12 -0
- package/dist/packages/ui-core/src/contracts/field.d.ts +47 -0
- package/dist/packages/ui-core/src/contracts/input-group.d.ts +29 -0
- package/dist/packages/ui-core/src/contracts/input-otp.d.ts +16 -0
- package/dist/packages/ui-core/src/contracts/item.d.ts +47 -0
- package/dist/packages/ui-core/src/contracts/kbd.d.ts +9 -0
- package/dist/packages/ui-core/src/contracts/native-select.d.ts +15 -0
- package/dist/packages/ui-core/src/contracts/resizable.d.ts +1 -1
- package/dist/packages/ui-core/src/contracts/search.d.ts +1 -0
- package/dist/packages/ui-core/src/contracts/sidebar.d.ts +107 -0
- package/dist/packages/ui-core/src/contracts/sonner.d.ts +1 -9
- package/dist/packages/ui-core/src/contracts/spinner.d.ts +3 -0
- package/dist/packages/ui-core/src/contracts/switch.d.ts +1 -1
- package/dist/packages/ui-core/src/contracts/textarea.d.ts +2 -2
- package/dist/packages/ui-core/src/contracts/toast.d.ts +1 -1
- package/dist/packages/ui-core/src/contracts/toggle-group.d.ts +1 -1
- package/dist/packages/ui-core/src/contracts/toggle.d.ts +2 -2
- package/dist/packages/ui-core/src/index.d.ts +14 -0
- package/dist/packages/ui-web/src/accordion.d.ts +5 -7
- package/dist/packages/ui-web/src/alert-dialog.d.ts +17 -21
- package/dist/packages/ui-web/src/alert.d.ts +8 -8
- package/dist/packages/ui-web/src/aspect-ratio.d.ts +2 -5
- package/dist/packages/ui-web/src/avatar.d.ts +10 -7
- package/dist/packages/ui-web/src/badge.d.ts +4 -5
- package/dist/packages/ui-web/src/breadcrumb.d.ts +9 -17
- package/dist/packages/ui-web/src/button-group.d.ts +11 -0
- package/dist/packages/ui-web/src/button.d.ts +4 -6
- package/dist/packages/ui-web/src/calendar.d.ts +5 -5
- package/dist/packages/ui-web/src/card.d.ts +10 -10
- package/dist/packages/ui-web/src/carousel.d.ts +18 -14
- package/dist/packages/ui-web/src/chart.d.ts +35 -7
- package/dist/packages/ui-web/src/checkbox.d.ts +2 -5
- package/dist/packages/ui-web/src/collapsible.d.ts +4 -7
- package/dist/packages/ui-web/src/combobox.d.ts +20 -0
- package/dist/packages/ui-web/src/command.d.ts +16 -80
- package/dist/packages/ui-web/src/context-menu.d.ts +29 -21
- package/dist/packages/ui-web/src/dialog.d.ts +15 -17
- package/dist/packages/ui-web/src/direction.d.ts +6 -0
- package/dist/packages/ui-web/src/drawer.d.ts +11 -23
- package/dist/packages/ui-web/src/dropdown-menu.d.ts +27 -21
- package/dist/packages/ui-web/src/empty.d.ts +13 -0
- package/dist/packages/ui-web/src/field.d.ts +18 -0
- package/dist/packages/ui-web/src/hooks/use-mobile.d.ts +1 -0
- package/dist/packages/ui-web/src/hooks/use-theme.d.ts +16 -0
- package/dist/packages/ui-web/src/hover-card.d.ts +4 -6
- package/dist/packages/ui-web/src/index.d.ts +14 -43
- package/dist/packages/ui-web/src/input-group.d.ts +18 -0
- package/dist/packages/ui-web/src/input-otp.d.ts +8 -0
- package/dist/packages/ui-web/src/input.d.ts +1 -4
- package/dist/packages/ui-web/src/item.d.ts +25 -0
- package/dist/packages/ui-web/src/kbd.d.ts +4 -0
- package/dist/packages/ui-web/src/label.d.ts +2 -6
- package/dist/packages/ui-web/src/menubar.d.ts +25 -19
- package/dist/packages/ui-web/src/native-select.d.ts +7 -0
- package/dist/packages/ui-web/src/navigation-menu.d.ts +11 -11
- package/dist/packages/ui-web/src/pagination.d.ts +13 -26
- package/dist/packages/ui-web/src/popover.d.ts +9 -8
- package/dist/packages/ui-web/src/progress.d.ts +2 -4
- package/dist/packages/ui-web/src/radio-group.d.ts +3 -8
- package/dist/packages/ui-web/src/resizable.d.ts +6 -7
- package/dist/packages/ui-web/src/scroll-area.d.ts +3 -5
- package/dist/packages/ui-web/src/search.d.ts +1 -1
- package/dist/packages/ui-web/src/select.d.ts +13 -13
- package/dist/packages/ui-web/src/separator.d.ts +2 -4
- package/dist/packages/ui-web/src/sheet.d.ts +13 -27
- package/dist/packages/ui-web/src/sidebar.d.ts +45 -0
- package/dist/packages/ui-web/src/skeleton.d.ts +1 -4
- package/dist/packages/ui-web/src/slider.d.ts +2 -4
- package/dist/packages/ui-web/src/sonner.d.ts +1 -5
- package/dist/packages/ui-web/src/spinner.d.ts +3 -0
- package/dist/packages/ui-web/src/switch.d.ts +4 -4
- package/dist/packages/ui-web/src/table.d.ts +8 -10
- package/dist/packages/ui-web/src/tabs.d.ts +11 -8
- package/dist/packages/ui-web/src/textarea.d.ts +1 -4
- package/dist/packages/ui-web/src/toggle-group.d.ts +7 -10
- package/dist/packages/ui-web/src/toggle.d.ts +7 -5
- package/dist/packages/ui-web/src/tooltip.d.ts +5 -10
- package/dist/pagination.cjs +1 -1
- package/dist/pagination.cjs.map +1 -1
- package/dist/pagination.mjs +77 -59
- package/dist/pagination.mjs.map +1 -1
- package/dist/popover.cjs +1 -1
- package/dist/popover.cjs.map +1 -1
- package/dist/popover.mjs +53 -13
- package/dist/popover.mjs.map +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.cjs.map +1 -1
- package/dist/progress.mjs +18 -15
- package/dist/progress.mjs.map +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.cjs.map +1 -1
- package/dist/radio-group.mjs +24 -21
- package/dist/radio-group.mjs.map +1 -1
- package/dist/resizable.cjs +1 -1
- package/dist/resizable.cjs.map +1 -1
- package/dist/resizable.mjs +25 -16
- package/dist/resizable.mjs.map +1 -1
- package/dist/scroll-area.cjs +1 -1
- package/dist/scroll-area.cjs.map +1 -1
- package/dist/scroll-area.mjs +34 -27
- package/dist/scroll-area.mjs.map +1 -1
- package/dist/scroll-to-top.cjs +1 -1
- package/dist/scroll-to-top.mjs +17 -17
- package/dist/search.cjs +1 -1
- package/dist/search.cjs.map +1 -1
- package/dist/search.mjs +18 -17
- package/dist/search.mjs.map +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.cjs.map +1 -1
- package/dist/select.mjs +96 -65
- package/dist/select.mjs.map +1 -1
- package/dist/separator.cjs +1 -1
- package/dist/separator.cjs.map +1 -1
- package/dist/separator.mjs +14 -13
- package/dist/separator.mjs.map +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.cjs.map +1 -1
- package/dist/sheet.mjs +85 -53
- package/dist/sheet.mjs.map +1 -1
- package/dist/sidebar-BnEmNYS2.mjs +354 -0
- package/dist/sidebar-BnEmNYS2.mjs.map +1 -0
- package/dist/sidebar-BnuanaZN.js +2 -0
- package/dist/sidebar-BnuanaZN.js.map +1 -0
- package/dist/sidebar.cjs +1 -0
- package/dist/sidebar.d.ts +2 -0
- package/dist/sidebar.mjs +3 -0
- package/dist/skeleton.cjs +1 -1
- package/dist/skeleton.cjs.map +1 -1
- package/dist/skeleton.mjs +4 -5
- package/dist/skeleton.mjs.map +1 -1
- package/dist/slider.cjs +1 -1
- package/dist/slider.cjs.map +1 -1
- package/dist/slider.mjs +31 -12
- package/dist/slider.mjs.map +1 -1
- package/dist/sonner.cjs +1 -1
- package/dist/sonner.cjs.map +1 -1
- package/dist/sonner.mjs +22 -16
- package/dist/sonner.mjs.map +1 -1
- package/dist/spinner.cjs +2 -0
- package/dist/spinner.cjs.map +1 -0
- package/dist/spinner.d.ts +2 -0
- package/dist/spinner.mjs +17 -0
- package/dist/spinner.mjs.map +1 -0
- package/dist/support-fab.cjs +1 -1
- package/dist/support-fab.cjs.map +1 -1
- package/dist/support-fab.mjs +8 -8
- package/dist/support-fab.mjs.map +1 -1
- package/dist/switch.cjs +1 -1
- package/dist/switch.cjs.map +1 -1
- package/dist/switch.mjs +17 -11
- package/dist/switch.mjs.map +1 -1
- package/dist/table-of-contents.cjs +1 -1
- package/dist/table-of-contents.mjs +2 -2
- package/dist/table.cjs +1 -1
- package/dist/table.cjs.map +1 -1
- package/dist/table.mjs +65 -56
- package/dist/table.mjs.map +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.cjs.map +1 -1
- package/dist/tabs.mjs +42 -22
- package/dist/tabs.mjs.map +1 -1
- package/dist/text.cjs +1 -1
- package/dist/text.cjs.map +1 -1
- package/dist/text.mjs +3 -3
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.cjs.map +1 -1
- package/dist/textarea.mjs +12 -11
- package/dist/textarea.mjs.map +1 -1
- package/dist/theme-provider.cjs +1 -1
- package/dist/theme-provider.mjs +1 -1
- package/dist/theme-toggle-CNDBFa9t.js +2 -0
- package/dist/theme-toggle-CNDBFa9t.js.map +1 -0
- package/dist/{theme-toggle-B6QS2aTS.mjs → theme-toggle-CgEJLId-.mjs} +26 -10
- package/dist/theme-toggle-CgEJLId-.mjs.map +1 -0
- package/dist/theme-toggle.cjs +1 -1
- package/dist/theme-toggle.mjs +1 -1
- package/dist/toast.cjs +1 -1
- package/dist/toast.cjs.map +1 -1
- package/dist/toast.mjs +19 -19
- package/dist/toast.mjs.map +1 -1
- package/dist/{toaster-C-1djNvf.js → toaster-C3UZyPzU.js} +2 -2
- package/dist/{toaster-C-1djNvf.js.map → toaster-C3UZyPzU.js.map} +1 -1
- package/dist/{toaster-CEa33QUH.mjs → toaster-DH0UX0nD.mjs} +2 -2
- package/dist/{toaster-CEa33QUH.mjs.map → toaster-DH0UX0nD.mjs.map} +1 -1
- package/dist/toaster.cjs +1 -1
- package/dist/toaster.mjs +1 -1
- package/dist/toggle-group.cjs +1 -1
- package/dist/toggle-group.cjs.map +1 -1
- package/dist/toggle-group.mjs +41 -28
- package/dist/toggle-group.mjs.map +1 -1
- package/dist/toggle.cjs +1 -1
- package/dist/toggle.cjs.map +1 -1
- package/dist/toggle.mjs +32 -16
- package/dist/toggle.mjs.map +1 -1
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.cjs.map +1 -1
- package/dist/tooltip.mjs +33 -20
- package/dist/tooltip.mjs.map +1 -1
- package/dist/{utils-DU-Y_pvO.js → utils-D7tt_q-u.js} +2 -2
- package/dist/{utils-DU-Y_pvO.js.map → utils-D7tt_q-u.js.map} +1 -1
- package/dist/{utils-BsD1_fYL.mjs → utils-IYJAOUsw.mjs} +2 -2
- package/dist/{utils-BsD1_fYL.mjs.map → utils-IYJAOUsw.mjs.map} +1 -1
- package/dist/{vendor-ChPUVHXi.mjs → vendor-B6CFfDyk.mjs} +29707 -24351
- package/dist/vendor-B6CFfDyk.mjs.map +1 -0
- package/dist/vendor-UfQavLF9.js +111 -0
- package/dist/vendor-UfQavLF9.js.map +1 -0
- package/package.json +4 -3
- package/dist/src-D3IDWqE2.js +0 -2
- package/dist/src-D3IDWqE2.js.map +0 -1
- package/dist/src-N08I3kfW.mjs +0 -23
- package/dist/src-N08I3kfW.mjs.map +0 -1
- package/dist/theme-toggle-B6QS2aTS.mjs.map +0 -1
- package/dist/theme-toggle-CbtfA8aG.js +0 -2
- package/dist/theme-toggle-CbtfA8aG.js.map +0 -1
- package/dist/vendor-3cr8xz0x.js +0 -92
- package/dist/vendor-3cr8xz0x.js.map +0 -1
- package/dist/vendor-ChPUVHXi.mjs.map +0 -1
package/dist/card.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card.cjs","names":[],"sources":["../packages/ui-web/src/card.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"card.cjs","names":[],"sources":["../packages/ui-web/src/card.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { CardBaseProps } from '@gv-tech/ui-core';\nimport { cn } from './lib/utils';\n\nfunction Card({ className, size = 'default', ...props }: React.ComponentProps<'div'> & { size?: 'default' | 'sm' }) {\n return (\n <div\n data-slot=\"card\"\n data-size={size}\n className={cn(\n 'group/card bg-card text-card-foreground ring-foreground/10 flex flex-col gap-4 overflow-hidden rounded-xl py-4 text-sm ring-1 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n 'group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn('text-base leading-snug font-medium group-data-[size=sm]/card:text-sm', className)}\n {...props}\n />\n );\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-description\" className={cn('text-muted-foreground text-sm', className)} {...props} />;\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn('col-start-2 row-span-2 row-start-1 self-start justify-self-end', className)}\n {...props}\n />\n );\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-content\" className={cn('px-4 group-data-[size=sm]/card:px-3', className)} {...props} />;\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn('bg-muted/50 flex items-center rounded-b-xl border-t p-4 group-data-[size=sm]/card:p-3', className)}\n {...props}\n />\n );\n}\n\nexport { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };\nconst _verifyContract: CardBaseProps = {} as React.ComponentProps<typeof Card>;\n"],"mappings":"kPAKA,SAAS,EAAK,CAAE,YAAW,OAAO,UAAW,GAAG,GAAoE,CAClH,OACE,EAAA,EAAA,KAAC,MAAD,CACE,YAAU,OACV,YAAW,EACX,UAAW,EAAA,EACT,uVACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OACE,EAAA,EAAA,KAAC,MAAD,CACE,YAAU,cACV,UAAW,EAAA,EACT,qSACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAU,CAAE,YAAW,GAAG,GAAsC,CACvE,OACE,EAAA,EAAA,KAAC,MAAD,CACE,YAAU,aACV,UAAW,EAAA,EAAG,uEAAwE,CAAS,EAC/F,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAgB,CAAE,YAAW,GAAG,GAAsC,CAC7E,OAAO,EAAA,EAAA,KAAC,MAAD,CAAK,YAAU,mBAAmB,UAAW,EAAA,EAAG,gCAAiC,CAAS,EAAG,GAAI,CAAQ,CAAA,CAClH,CAEA,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OACE,EAAA,EAAA,KAAC,MAAD,CACE,YAAU,cACV,UAAW,EAAA,EAAG,iEAAkE,CAAS,EACzF,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,EAAY,CAAE,YAAW,GAAG,GAAsC,CACzE,OAAO,EAAA,EAAA,KAAC,MAAD,CAAK,YAAU,eAAe,UAAW,EAAA,EAAG,sCAAuC,CAAS,EAAG,GAAI,CAAQ,CAAA,CACpH,CAEA,SAAS,EAAW,CAAE,YAAW,GAAG,GAAsC,CACxE,OACE,EAAA,EAAA,KAAC,MAAD,CACE,YAAU,cACV,UAAW,EAAA,EAAG,wFAAyF,CAAS,EAChH,GAAI,CACL,CAAA,CAEL"}
|
package/dist/card.mjs
CHANGED
|
@@ -1,46 +1,60 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import * as n from "react";
|
|
2
|
+
import { Jr as e } from "./vendor-B6CFfDyk.mjs";
|
|
3
|
+
import { t } from "./utils-IYJAOUsw.mjs";
|
|
4
|
+
import "react";
|
|
6
5
|
//#region packages/ui-web/src/card.tsx
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
})
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
})
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
6
|
+
var n = e();
|
|
7
|
+
function r({ className: e, size: r = "default", ...i }) {
|
|
8
|
+
return /* @__PURE__ */ (0, n.jsx)("div", {
|
|
9
|
+
"data-slot": "card",
|
|
10
|
+
"data-size": r,
|
|
11
|
+
className: t("group/card bg-card text-card-foreground ring-foreground/10 flex flex-col gap-4 overflow-hidden rounded-xl py-4 text-sm ring-1 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl", e),
|
|
12
|
+
...i
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function i({ className: e, ...r }) {
|
|
16
|
+
return /* @__PURE__ */ (0, n.jsx)("div", {
|
|
17
|
+
"data-slot": "card-header",
|
|
18
|
+
className: t("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3", e),
|
|
19
|
+
...r
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
function a({ className: e, ...r }) {
|
|
23
|
+
return /* @__PURE__ */ (0, n.jsx)("div", {
|
|
24
|
+
"data-slot": "card-title",
|
|
25
|
+
className: t("text-base leading-snug font-medium group-data-[size=sm]/card:text-sm", e),
|
|
26
|
+
...r
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
function o({ className: e, ...r }) {
|
|
30
|
+
return /* @__PURE__ */ (0, n.jsx)("div", {
|
|
31
|
+
"data-slot": "card-description",
|
|
32
|
+
className: t("text-muted-foreground text-sm", e),
|
|
33
|
+
...r
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function s({ className: e, ...r }) {
|
|
37
|
+
return /* @__PURE__ */ (0, n.jsx)("div", {
|
|
38
|
+
"data-slot": "card-action",
|
|
39
|
+
className: t("col-start-2 row-span-2 row-start-1 self-start justify-self-end", e),
|
|
40
|
+
...r
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function c({ className: e, ...r }) {
|
|
44
|
+
return /* @__PURE__ */ (0, n.jsx)("div", {
|
|
45
|
+
"data-slot": "card-content",
|
|
46
|
+
className: t("px-4 group-data-[size=sm]/card:px-3", e),
|
|
47
|
+
...r
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
function l({ className: e, ...r }) {
|
|
51
|
+
return /* @__PURE__ */ (0, n.jsx)("div", {
|
|
52
|
+
"data-slot": "card-footer",
|
|
53
|
+
className: t("bg-muted/50 flex items-center rounded-b-xl border-t p-4 group-data-[size=sm]/card:p-3", e),
|
|
54
|
+
...r
|
|
55
|
+
});
|
|
56
|
+
}
|
|
43
57
|
//#endregion
|
|
44
|
-
export {
|
|
58
|
+
export { r as Card, s as CardAction, c as CardContent, o as CardDescription, l as CardFooter, i as CardHeader, a as CardTitle };
|
|
45
59
|
|
|
46
60
|
//# sourceMappingURL=card.mjs.map
|
package/dist/card.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card.mjs","names":[],"sources":["../packages/ui-web/src/card.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"card.mjs","names":[],"sources":["../packages/ui-web/src/card.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport type { CardBaseProps } from '@gv-tech/ui-core';\nimport { cn } from './lib/utils';\n\nfunction Card({ className, size = 'default', ...props }: React.ComponentProps<'div'> & { size?: 'default' | 'sm' }) {\n return (\n <div\n data-slot=\"card\"\n data-size={size}\n className={cn(\n 'group/card bg-card text-card-foreground ring-foreground/10 flex flex-col gap-4 overflow-hidden rounded-xl py-4 text-sm ring-1 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n 'group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn('text-base leading-snug font-medium group-data-[size=sm]/card:text-sm', className)}\n {...props}\n />\n );\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-description\" className={cn('text-muted-foreground text-sm', className)} {...props} />;\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn('col-start-2 row-span-2 row-start-1 self-start justify-self-end', className)}\n {...props}\n />\n );\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return <div data-slot=\"card-content\" className={cn('px-4 group-data-[size=sm]/card:px-3', className)} {...props} />;\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn('bg-muted/50 flex items-center rounded-b-xl border-t p-4 group-data-[size=sm]/card:p-3', className)}\n {...props}\n />\n );\n}\n\nexport { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };\nconst _verifyContract: CardBaseProps = {} as React.ComponentProps<typeof Card>;\n"],"mappings":";;;;;;AAKA,SAAS,EAAK,EAAE,cAAW,UAAO,WAAW,GAAG,KAAoE;CAClH,OACE,iBAAA,GAAA,EAAA,KAAC,OAAD;EACE,aAAU;EACV,aAAW;EACX,WAAW,EACT,wVACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;CACxE,OACE,iBAAA,GAAA,EAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,sSACA,CACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAU,EAAE,cAAW,GAAG,KAAsC;CACvE,OACE,iBAAA,GAAA,EAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,wEAAwE,CAAS;EAC/F,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAgB,EAAE,cAAW,GAAG,KAAsC;CAC7E,OAAO,iBAAA,GAAA,EAAA,KAAC,OAAD;EAAK,aAAU;EAAmB,WAAW,EAAG,iCAAiC,CAAS;EAAG,GAAI;CAAQ,CAAA;AAClH;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;CACxE,OACE,iBAAA,GAAA,EAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,kEAAkE,CAAS;EACzF,GAAI;CACL,CAAA;AAEL;AAEA,SAAS,EAAY,EAAE,cAAW,GAAG,KAAsC;CACzE,OAAO,iBAAA,GAAA,EAAA,KAAC,OAAD;EAAK,aAAU;EAAe,WAAW,EAAG,uCAAuC,CAAS;EAAG,GAAI;CAAQ,CAAA;AACpH;AAEA,SAAS,EAAW,EAAE,cAAW,GAAG,KAAsC;CACxE,OACE,iBAAA,GAAA,EAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAW,EAAG,yFAAyF,CAAS;EAChH,GAAI;CACL,CAAA;AAEL"}
|
package/dist/carousel.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";
|
|
1
|
+
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-mLOUI7ql.js"),t=require("./vendor-UfQavLF9.js"),n=require("./utils-D7tt_q-u.js"),r=require("./button.cjs");let i=require("react");i=e.r(i);var a=t.Jr(),o=i.createContext(null);function s(){let e=i.useContext(o);if(!e)throw Error(`useCarousel must be used within a <Carousel />`);return e}function c({orientation:e=`horizontal`,opts:r,setApi:s,plugins:c,className:l,children:u,...d}){let[f,p]=t.F({...r,axis:e===`horizontal`?`x`:`y`},c),[m,h]=i.useState(!1),[g,_]=i.useState(!1),v=i.useCallback(e=>{e&&(h(e.canScrollPrev()),_(e.canScrollNext()))},[]),y=i.useCallback(()=>{p?.scrollPrev()},[p]),b=i.useCallback(()=>{p?.scrollNext()},[p]),x=i.useCallback(e=>{e.key===`ArrowLeft`?(e.preventDefault(),y()):e.key===`ArrowRight`&&(e.preventDefault(),b())},[y,b]);return i.useEffect(()=>{!p||!s||s(p)},[p,s]),i.useEffect(()=>{if(p)return v(p),p.on(`reInit`,v),p.on(`select`,v),()=>{p?.off(`select`,v)}},[p,v]),(0,a.jsx)(o.Provider,{value:{carouselRef:f,api:p,opts:r,orientation:e||(r?.axis===`y`?`vertical`:`horizontal`),scrollPrev:y,scrollNext:b,canScrollPrev:m,canScrollNext:g},children:(0,a.jsx)(`div`,{onKeyDownCapture:x,className:n.t(`relative`,l),role:`region`,"aria-roledescription":`carousel`,"data-slot":`carousel`,...d,children:u})})}function l({className:e,...t}){let{carouselRef:r,orientation:i}=s();return(0,a.jsx)(`div`,{ref:r,className:`overflow-hidden`,"data-slot":`carousel-content`,children:(0,a.jsx)(`div`,{className:n.t(`flex`,i===`horizontal`?`-ms-4`:`-mt-4 flex-col`,e),...t})})}function u({className:e,...t}){let{orientation:r}=s();return(0,a.jsx)(`div`,{role:`group`,"aria-roledescription":`slide`,"data-slot":`carousel-item`,className:n.t(`min-w-0 shrink-0 grow-0 basis-full`,r===`horizontal`?`ps-4`:`pt-4`,e),...t})}function d({className:e,variant:i=`outline`,size:o=`icon-sm`,...c}){let{orientation:l,scrollPrev:u,canScrollPrev:d}=s();return(0,a.jsxs)(r.Button,{"data-slot":`carousel-previous`,variant:i,size:o,className:n.t(`absolute touch-manipulation rounded-full`,l===`horizontal`?`-start-12 top-1/2 -translate-y-1/2`:`start-1/2 -top-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2`,e),disabled:!d,onClick:u,...c,children:[(0,a.jsx)(t.nt,{}),(0,a.jsx)(`span`,{className:`sr-only`,children:`Previous slide`})]})}function f({className:e,variant:i=`outline`,size:o=`icon-sm`,...c}){let{orientation:l,scrollNext:u,canScrollNext:d}=s();return(0,a.jsxs)(r.Button,{"data-slot":`carousel-next`,variant:i,size:o,className:n.t(`absolute touch-manipulation rounded-full`,l===`horizontal`?`-end-12 top-1/2 -translate-y-1/2`:`start-1/2 -bottom-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2`,e),disabled:!d,onClick:u,...c,children:[(0,a.jsx)(t.tt,{}),(0,a.jsx)(`span`,{className:`sr-only`,children:`Next slide`})]})}exports.Carousel=c,exports.CarouselContent=l,exports.CarouselItem=u,exports.CarouselNext=f,exports.CarouselPrevious=d,exports.useCarousel=s;
|
|
2
2
|
//# sourceMappingURL=carousel.cjs.map
|
package/dist/carousel.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carousel.cjs","names":[],"sources":["../packages/ui-web/src/carousel.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"carousel.cjs","names":[],"sources":["../packages/ui-web/src/carousel.tsx"],"sourcesContent":["import useEmblaCarousel, { type UseEmblaCarouselType } from 'embla-carousel-react';\nimport * as React from 'react';\n\nimport { ChevronLeftIcon, ChevronRightIcon } from 'lucide-react';\nimport { Button } from './button';\nimport { cn } from './lib/utils';\n\nimport type { CarouselBaseProps } from '@gv-tech/ui-core';\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ntype CarouselProps = {\n opts?: CarouselOptions;\n plugins?: CarouselPlugin;\n orientation?: 'horizontal' | 'vertical';\n setApi?: (api: CarouselApi) => void;\n};\n\ntype CarouselContextProps = {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0];\n api: ReturnType<typeof useEmblaCarousel>[1];\n scrollPrev: () => void;\n scrollNext: () => void;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n} & CarouselProps;\n\nconst CarouselContext = React.createContext<CarouselContextProps | null>(null);\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext);\n\n if (!context) {\n throw new Error('useCarousel must be used within a <Carousel />');\n }\n\n return context;\n}\n\nfunction Carousel({\n orientation = 'horizontal',\n opts,\n setApi,\n plugins,\n className,\n children,\n ...props\n}: React.ComponentProps<'div'> & CarouselProps) {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n },\n plugins,\n );\n const [canScrollPrev, setCanScrollPrev] = React.useState(false);\n const [canScrollNext, setCanScrollNext] = React.useState(false);\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return;\n }\n setCanScrollPrev(api.canScrollPrev());\n setCanScrollNext(api.canScrollNext());\n }, []);\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev();\n }, [api]);\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext();\n }, [api]);\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n scrollPrev();\n } else if (event.key === 'ArrowRight') {\n event.preventDefault();\n scrollNext();\n }\n },\n [scrollPrev, scrollNext],\n );\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return;\n }\n setApi(api);\n }, [api, setApi]);\n\n React.useEffect(() => {\n if (!api) {\n return;\n }\n onSelect(api);\n api.on('reInit', onSelect);\n api.on('select', onSelect);\n\n return () => {\n api?.off('select', onSelect);\n };\n }, [api, onSelect]);\n\n return (\n <CarouselContext.Provider\n value={{\n carouselRef,\n api: api,\n opts,\n orientation: orientation || (opts?.axis === 'y' ? 'vertical' : 'horizontal'),\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n }}\n >\n <div\n onKeyDownCapture={handleKeyDown}\n className={cn('relative', className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n data-slot=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n}\n\nfunction CarouselContent({ className, ...props }: React.ComponentProps<'div'>) {\n const { carouselRef, orientation } = useCarousel();\n\n return (\n <div ref={carouselRef} className=\"overflow-hidden\" data-slot=\"carousel-content\">\n <div className={cn('flex', orientation === 'horizontal' ? '-ms-4' : '-mt-4 flex-col', className)} {...props} />\n </div>\n );\n}\n\nfunction CarouselItem({ className, ...props }: React.ComponentProps<'div'>) {\n const { orientation } = useCarousel();\n\n return (\n <div\n role=\"group\"\n aria-roledescription=\"slide\"\n data-slot=\"carousel-item\"\n className={cn('min-w-0 shrink-0 grow-0 basis-full', orientation === 'horizontal' ? 'ps-4' : 'pt-4', className)}\n {...props}\n />\n );\n}\n\nfunction CarouselPrevious({\n className,\n variant = 'outline',\n size = 'icon-sm',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-previous\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute touch-manipulation rounded-full',\n orientation === 'horizontal'\n ? '-start-12 top-1/2 -translate-y-1/2'\n : 'start-1/2 -top-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2',\n className,\n )}\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n {...props}\n >\n <ChevronLeftIcon />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n );\n}\n\nfunction CarouselNext({\n className,\n variant = 'outline',\n size = 'icon-sm',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollNext, canScrollNext } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-next\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute touch-manipulation rounded-full',\n orientation === 'horizontal'\n ? '-end-12 top-1/2 -translate-y-1/2'\n : 'start-1/2 -bottom-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2',\n className,\n )}\n disabled={!canScrollNext}\n onClick={scrollNext}\n {...props}\n >\n <ChevronRightIcon />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n );\n}\n\nexport { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, useCarousel, type CarouselApi };\n\n// Verify that the component satisfies the ui-core contract\nconst _verifyCarouselContract: CarouselBaseProps = {} as unknown as React.ComponentProps<typeof Carousel>;\n"],"mappings":"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"}
|
package/dist/carousel.mjs
CHANGED
|
@@ -1,117 +1,111 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import { t as i } from "./utils-BsD1_fYL.mjs";
|
|
2
|
+
import { F as e, Jr as t, nt as n, tt as r } from "./vendor-B6CFfDyk.mjs";
|
|
3
|
+
import { t as i } from "./utils-IYJAOUsw.mjs";
|
|
5
4
|
import { Button as a } from "./button.mjs";
|
|
6
5
|
import * as o from "react";
|
|
7
6
|
//#region packages/ui-web/src/carousel.tsx
|
|
8
|
-
var s =
|
|
7
|
+
var s = t(), c = o.createContext(null);
|
|
9
8
|
function l() {
|
|
10
9
|
let e = o.useContext(c);
|
|
11
10
|
if (!e) throw Error("useCarousel must be used within a <Carousel />");
|
|
12
11
|
return e;
|
|
13
12
|
}
|
|
14
|
-
|
|
15
|
-
let [
|
|
13
|
+
function u({ orientation: t = "horizontal", opts: n, setApi: r, plugins: a, className: l, children: u, ...d }) {
|
|
14
|
+
let [f, p] = e({
|
|
16
15
|
...n,
|
|
17
16
|
axis: t === "horizontal" ? "x" : "y"
|
|
18
|
-
}, a), [
|
|
19
|
-
e && (
|
|
20
|
-
}, []),
|
|
21
|
-
|
|
22
|
-
}, [
|
|
23
|
-
|
|
24
|
-
}, [
|
|
25
|
-
e.key === "ArrowLeft" ? (e.preventDefault(),
|
|
26
|
-
}, [
|
|
17
|
+
}, a), [m, h] = o.useState(!1), [g, _] = o.useState(!1), v = o.useCallback((e) => {
|
|
18
|
+
e && (h(e.canScrollPrev()), _(e.canScrollNext()));
|
|
19
|
+
}, []), y = o.useCallback(() => {
|
|
20
|
+
p?.scrollPrev();
|
|
21
|
+
}, [p]), b = o.useCallback(() => {
|
|
22
|
+
p?.scrollNext();
|
|
23
|
+
}, [p]), x = o.useCallback((e) => {
|
|
24
|
+
e.key === "ArrowLeft" ? (e.preventDefault(), y()) : e.key === "ArrowRight" && (e.preventDefault(), b());
|
|
25
|
+
}, [y, b]);
|
|
27
26
|
return o.useEffect(() => {
|
|
28
|
-
!
|
|
29
|
-
}, [
|
|
30
|
-
if (
|
|
31
|
-
|
|
27
|
+
!p || !r || r(p);
|
|
28
|
+
}, [p, r]), o.useEffect(() => {
|
|
29
|
+
if (p) return v(p), p.on("reInit", v), p.on("select", v), () => {
|
|
30
|
+
p?.off("select", v);
|
|
32
31
|
};
|
|
33
|
-
}, [
|
|
32
|
+
}, [p, v]), /* @__PURE__ */ (0, s.jsx)(c.Provider, {
|
|
34
33
|
value: {
|
|
35
|
-
carouselRef:
|
|
36
|
-
api:
|
|
34
|
+
carouselRef: f,
|
|
35
|
+
api: p,
|
|
37
36
|
opts: n,
|
|
38
37
|
orientation: t || (n?.axis === "y" ? "vertical" : "horizontal"),
|
|
39
|
-
scrollPrev:
|
|
40
|
-
scrollNext:
|
|
41
|
-
canScrollPrev:
|
|
42
|
-
canScrollNext:
|
|
38
|
+
scrollPrev: y,
|
|
39
|
+
scrollNext: b,
|
|
40
|
+
canScrollPrev: m,
|
|
41
|
+
canScrollNext: g
|
|
43
42
|
},
|
|
44
43
|
children: /* @__PURE__ */ (0, s.jsx)("div", {
|
|
45
|
-
|
|
46
|
-
onKeyDownCapture: S,
|
|
44
|
+
onKeyDownCapture: x,
|
|
47
45
|
className: i("relative", l),
|
|
48
46
|
role: "region",
|
|
49
47
|
"aria-roledescription": "carousel",
|
|
48
|
+
"data-slot": "carousel",
|
|
50
49
|
...d,
|
|
51
50
|
children: u
|
|
52
51
|
})
|
|
53
52
|
});
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
let { carouselRef: r, orientation: a } = l();
|
|
53
|
+
}
|
|
54
|
+
function d({ className: e, ...t }) {
|
|
55
|
+
let { carouselRef: n, orientation: r } = l();
|
|
58
56
|
return /* @__PURE__ */ (0, s.jsx)("div", {
|
|
59
|
-
ref:
|
|
57
|
+
ref: n,
|
|
60
58
|
className: "overflow-hidden",
|
|
59
|
+
"data-slot": "carousel-content",
|
|
61
60
|
children: /* @__PURE__ */ (0, s.jsx)("div", {
|
|
62
|
-
|
|
63
|
-
className: i("flex", a === "horizontal" ? "-ml-4" : "-mt-4 flex-col", e),
|
|
61
|
+
className: i("flex", r === "horizontal" ? "-ms-4" : "-mt-4 flex-col", e),
|
|
64
62
|
...t
|
|
65
63
|
})
|
|
66
64
|
});
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
let { orientation: r } = l();
|
|
65
|
+
}
|
|
66
|
+
function f({ className: e, ...t }) {
|
|
67
|
+
let { orientation: n } = l();
|
|
71
68
|
return /* @__PURE__ */ (0, s.jsx)("div", {
|
|
72
|
-
ref: n,
|
|
73
69
|
role: "group",
|
|
74
70
|
"aria-roledescription": "slide",
|
|
75
|
-
|
|
71
|
+
"data-slot": "carousel-item",
|
|
72
|
+
className: i("min-w-0 shrink-0 grow-0 basis-full", n === "horizontal" ? "ps-4" : "pt-4", e),
|
|
76
73
|
...t
|
|
77
74
|
});
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
let { orientation: u, scrollPrev: d, canScrollPrev: f } = l();
|
|
75
|
+
}
|
|
76
|
+
function p({ className: e, variant: t = "outline", size: r = "icon-sm", ...o }) {
|
|
77
|
+
let { orientation: c, scrollPrev: u, canScrollPrev: d } = l();
|
|
82
78
|
return /* @__PURE__ */ (0, s.jsxs)(a, {
|
|
83
|
-
|
|
79
|
+
"data-slot": "carousel-previous",
|
|
84
80
|
variant: t,
|
|
85
81
|
size: r,
|
|
86
|
-
className: i("absolute
|
|
87
|
-
disabled: !
|
|
88
|
-
onClick:
|
|
82
|
+
className: i("absolute touch-manipulation rounded-full", c === "horizontal" ? "-start-12 top-1/2 -translate-y-1/2" : "start-1/2 -top-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2", e),
|
|
83
|
+
disabled: !d,
|
|
84
|
+
onClick: u,
|
|
89
85
|
...o,
|
|
90
|
-
children: [/* @__PURE__ */ (0, s.jsx)(n, {
|
|
86
|
+
children: [/* @__PURE__ */ (0, s.jsx)(n, {}), /* @__PURE__ */ (0, s.jsx)("span", {
|
|
91
87
|
className: "sr-only",
|
|
92
88
|
children: "Previous slide"
|
|
93
89
|
})]
|
|
94
90
|
});
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
let { orientation: u, scrollNext: d, canScrollNext: f } = l();
|
|
91
|
+
}
|
|
92
|
+
function m({ className: e, variant: t = "outline", size: n = "icon-sm", ...o }) {
|
|
93
|
+
let { orientation: c, scrollNext: u, canScrollNext: d } = l();
|
|
99
94
|
return /* @__PURE__ */ (0, s.jsxs)(a, {
|
|
100
|
-
|
|
101
|
-
variant:
|
|
102
|
-
size:
|
|
103
|
-
className: i("absolute
|
|
104
|
-
disabled: !
|
|
105
|
-
onClick:
|
|
95
|
+
"data-slot": "carousel-next",
|
|
96
|
+
variant: t,
|
|
97
|
+
size: n,
|
|
98
|
+
className: i("absolute touch-manipulation rounded-full", c === "horizontal" ? "-end-12 top-1/2 -translate-y-1/2" : "start-1/2 -bottom-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2", e),
|
|
99
|
+
disabled: !d,
|
|
100
|
+
onClick: u,
|
|
106
101
|
...o,
|
|
107
|
-
children: [/* @__PURE__ */ (0, s.jsx)(
|
|
102
|
+
children: [/* @__PURE__ */ (0, s.jsx)(r, {}), /* @__PURE__ */ (0, s.jsx)("span", {
|
|
108
103
|
className: "sr-only",
|
|
109
104
|
children: "Next slide"
|
|
110
105
|
})]
|
|
111
106
|
});
|
|
112
|
-
}
|
|
113
|
-
m.displayName = "CarouselNext";
|
|
107
|
+
}
|
|
114
108
|
//#endregion
|
|
115
|
-
export { u as Carousel, d as CarouselContent, f as CarouselItem, m as CarouselNext, p as CarouselPrevious };
|
|
109
|
+
export { u as Carousel, d as CarouselContent, f as CarouselItem, m as CarouselNext, p as CarouselPrevious, l as useCarousel };
|
|
116
110
|
|
|
117
111
|
//# sourceMappingURL=carousel.mjs.map
|
package/dist/carousel.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carousel.mjs","names":[],"sources":["../packages/ui-web/src/carousel.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"carousel.mjs","names":[],"sources":["../packages/ui-web/src/carousel.tsx"],"sourcesContent":["import useEmblaCarousel, { type UseEmblaCarouselType } from 'embla-carousel-react';\nimport * as React from 'react';\n\nimport { ChevronLeftIcon, ChevronRightIcon } from 'lucide-react';\nimport { Button } from './button';\nimport { cn } from './lib/utils';\n\nimport type { CarouselBaseProps } from '@gv-tech/ui-core';\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ntype CarouselProps = {\n opts?: CarouselOptions;\n plugins?: CarouselPlugin;\n orientation?: 'horizontal' | 'vertical';\n setApi?: (api: CarouselApi) => void;\n};\n\ntype CarouselContextProps = {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0];\n api: ReturnType<typeof useEmblaCarousel>[1];\n scrollPrev: () => void;\n scrollNext: () => void;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n} & CarouselProps;\n\nconst CarouselContext = React.createContext<CarouselContextProps | null>(null);\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext);\n\n if (!context) {\n throw new Error('useCarousel must be used within a <Carousel />');\n }\n\n return context;\n}\n\nfunction Carousel({\n orientation = 'horizontal',\n opts,\n setApi,\n plugins,\n className,\n children,\n ...props\n}: React.ComponentProps<'div'> & CarouselProps) {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === 'horizontal' ? 'x' : 'y',\n },\n plugins,\n );\n const [canScrollPrev, setCanScrollPrev] = React.useState(false);\n const [canScrollNext, setCanScrollNext] = React.useState(false);\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return;\n }\n setCanScrollPrev(api.canScrollPrev());\n setCanScrollNext(api.canScrollNext());\n }, []);\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev();\n }, [api]);\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext();\n }, [api]);\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'ArrowLeft') {\n event.preventDefault();\n scrollPrev();\n } else if (event.key === 'ArrowRight') {\n event.preventDefault();\n scrollNext();\n }\n },\n [scrollPrev, scrollNext],\n );\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return;\n }\n setApi(api);\n }, [api, setApi]);\n\n React.useEffect(() => {\n if (!api) {\n return;\n }\n onSelect(api);\n api.on('reInit', onSelect);\n api.on('select', onSelect);\n\n return () => {\n api?.off('select', onSelect);\n };\n }, [api, onSelect]);\n\n return (\n <CarouselContext.Provider\n value={{\n carouselRef,\n api: api,\n opts,\n orientation: orientation || (opts?.axis === 'y' ? 'vertical' : 'horizontal'),\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n }}\n >\n <div\n onKeyDownCapture={handleKeyDown}\n className={cn('relative', className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n data-slot=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n}\n\nfunction CarouselContent({ className, ...props }: React.ComponentProps<'div'>) {\n const { carouselRef, orientation } = useCarousel();\n\n return (\n <div ref={carouselRef} className=\"overflow-hidden\" data-slot=\"carousel-content\">\n <div className={cn('flex', orientation === 'horizontal' ? '-ms-4' : '-mt-4 flex-col', className)} {...props} />\n </div>\n );\n}\n\nfunction CarouselItem({ className, ...props }: React.ComponentProps<'div'>) {\n const { orientation } = useCarousel();\n\n return (\n <div\n role=\"group\"\n aria-roledescription=\"slide\"\n data-slot=\"carousel-item\"\n className={cn('min-w-0 shrink-0 grow-0 basis-full', orientation === 'horizontal' ? 'ps-4' : 'pt-4', className)}\n {...props}\n />\n );\n}\n\nfunction CarouselPrevious({\n className,\n variant = 'outline',\n size = 'icon-sm',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-previous\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute touch-manipulation rounded-full',\n orientation === 'horizontal'\n ? '-start-12 top-1/2 -translate-y-1/2'\n : 'start-1/2 -top-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2',\n className,\n )}\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n {...props}\n >\n <ChevronLeftIcon />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n );\n}\n\nfunction CarouselNext({\n className,\n variant = 'outline',\n size = 'icon-sm',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollNext, canScrollNext } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-next\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute touch-manipulation rounded-full',\n orientation === 'horizontal'\n ? '-end-12 top-1/2 -translate-y-1/2'\n : 'start-1/2 -bottom-12 -translate-x-1/2 rotate-90 rtl:translate-x-1/2',\n className,\n )}\n disabled={!canScrollNext}\n onClick={scrollNext}\n {...props}\n >\n <ChevronRightIcon />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n );\n}\n\nexport { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, useCarousel, type CarouselApi };\n\n// Verify that the component satisfies the ui-core contract\nconst _verifyCarouselContract: CarouselBaseProps = {} as unknown as React.ComponentProps<typeof Carousel>;\n"],"mappings":"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"}
|
package/dist/chart.cjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
"use client";"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-mLOUI7ql.js"),t=require("./vendor-
|
|
1
|
+
"use client";"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-mLOUI7ql.js"),t=require("./vendor-UfQavLF9.js"),n=require("./utils-D7tt_q-u.js");let r=require("react");r=e.r(r);var i=t.Jr(),a={light:``,dark:`.dark`},o={width:320,height:200},s=r.createContext(null);function c(){let e=r.useContext(s);if(!e)throw Error(`useChart must be used within a <ChartContainer />`);return e}function l({id:e,className:a,children:c,config:l,initialDimension:d=o,...f}){let p=r.useId(),m=`chart-${e??p.replace(/:/g,``)}`;return(0,i.jsx)(s.Provider,{value:{config:l},children:(0,i.jsxs)(`div`,{"data-slot":`chart`,"data-chart":m,className:n.t(`[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke=#ccc]]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke=#ccc]]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke=#ccc]]:stroke-border flex aspect-video justify-center text-xs [&_.recharts-dot[stroke=#fff]]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke=#fff]]:stroke-transparent [&_.recharts-surface]:outline-hidden`,a),...f,children:[(0,i.jsx)(u,{id:m,config:l}),(0,i.jsx)(t.P,{initialDimension:d,children:c})]})})}var u=({id:e,config:t})=>{let n=Object.entries(t).filter(([,e])=>e.theme??e.color);return n.length?(0,i.jsx)(`style`,{dangerouslySetInnerHTML:{__html:Object.entries(a).map(([t,r])=>`
|
|
2
2
|
${r} [data-chart=${e}] {
|
|
3
|
-
${n.map(([e,n])=>{let r=
|
|
3
|
+
${n.map(([e,n])=>{let r=n.theme?.[t]??n.color;return r?` --color-${e}: ${r};`:null}).join(`
|
|
4
4
|
`)}
|
|
5
5
|
}
|
|
6
6
|
`).join(`
|
|
7
|
-
`)}):null},d=t.
|
|
7
|
+
`)}}):null},d=t.M;function f({active:e,payload:t,className:a,indicator:o=`dot`,hideLabel:s=!1,hideIndicator:l=!1,label:u,labelFormatter:d,labelClassName:f,formatter:p,color:m,nameKey:g,labelKey:_}){let{config:v}=c(),y=r.useMemo(()=>{if(s||!t?.length)return null;let[e]=t,r=h(v,e,`${_??e?.dataKey??e?.name??`value`}`),a=!_&&typeof u==`string`?v[u]?.label??u:r?.label;return d?(0,i.jsx)(`div`,{className:n.t(`font-medium`,f),children:d(a,t)}):a?(0,i.jsx)(`div`,{className:n.t(`font-medium`,f),children:a}):null},[u,d,t,s,f,v,_]);if(!e||!t?.length)return null;let b=t.length===1&&o!==`dot`;return(0,i.jsxs)(`div`,{className:n.t(`border-border/50 bg-background grid min-w-32 items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl`,a),children:[b?null:y,(0,i.jsx)(`div`,{className:`grid gap-1.5`,children:t.filter(e=>e.type!==`none`).map((e,t)=>{let r=h(v,e,`${g??e.name??e.dataKey??`value`}`),a=m??e.payload?.fill??e.color;return(0,i.jsx)(`div`,{className:n.t(`[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5`,o===`dot`&&`items-center`),children:p&&e?.value!==void 0&&e.name?p(e.value,e.name,e,t,e.payload):(0,i.jsxs)(i.Fragment,{children:[r?.icon?(0,i.jsx)(r.icon,{}):!l&&(0,i.jsx)(`div`,{className:n.t(`shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)`,{"h-2.5 w-2.5":o===`dot`,"w-1":o===`line`,"w-0 border-[1.5px] border-dashed bg-transparent":o===`dashed`,"my-0.5":b&&o===`dashed`}),style:{"--color-bg":a,"--color-border":a}}),(0,i.jsxs)(`div`,{className:n.t(`flex flex-1 justify-between leading-none`,b?`items-end`:`items-center`),children:[(0,i.jsxs)(`div`,{className:`grid gap-1.5`,children:[b?y:null,(0,i.jsx)(`span`,{className:`text-muted-foreground`,children:r?.label??e.name})]}),e.value!=null&&(0,i.jsx)(`span`,{className:`text-foreground font-mono font-medium tabular-nums`,children:typeof e.value==`number`?e.value.toLocaleString():String(e.value)})]})]})},t)})})]})}var p=t.N;function m({className:e,hideIcon:t=!1,payload:r,verticalAlign:a=`bottom`,nameKey:o}){let{config:s}=c();return r?.length?(0,i.jsx)(`div`,{className:n.t(`flex items-center justify-center gap-4`,a===`top`?`pb-3`:`pt-3`,e),children:r.filter(e=>e.type!==`none`).map((e,r)=>{let a=h(s,e,`${o??e.dataKey??`value`}`);return(0,i.jsxs)(`div`,{className:n.t(`[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3`),children:[a?.icon&&!t?(0,i.jsx)(a.icon,{}):(0,i.jsx)(`div`,{className:`h-2 w-2 shrink-0 rounded-[2px]`,style:{backgroundColor:e.color}}),a?.label]},r)})}):null}function h(e,t,n){if(typeof t!=`object`||!t)return;let r=`payload`in t&&typeof t.payload==`object`&&t.payload!==null?t.payload:void 0,i=n;return n in t&&typeof t[n]==`string`?i=t[n]:r&&n in r&&typeof r[n]==`string`&&(i=r[n]),i in e?e[i]:e[n]}exports.ChartContainer=l,exports.ChartLegend=p,exports.ChartLegendContent=m,exports.ChartStyle=u,exports.ChartTooltip=d,exports.ChartTooltipContent=f;
|
|
8
8
|
//# sourceMappingURL=chart.cjs.map
|