@gv-tech/ui-web 2.22.2 → 2.23.1
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/dist/accordion-Dd8Hrexd.mjs +244 -0
- package/dist/accordion-DdSOiVyo.js +1 -0
- package/dist/accordion.cjs +1 -1
- package/dist/accordion.d.ts +5 -7
- package/dist/accordion.d.ts.map +1 -1
- package/dist/accordion.mjs +1 -2
- package/dist/alert-dialog-B7zX3gJX.js +7 -0
- package/dist/alert-dialog-BQoG5g_w.mjs +213 -0
- package/dist/alert-dialog.cjs +1 -1
- package/dist/alert-dialog.d.ts +17 -21
- package/dist/alert-dialog.d.ts.map +1 -1
- package/dist/alert-dialog.mjs +2 -4
- package/dist/alert.cjs +1 -1
- package/dist/alert.d.ts +8 -8
- package/dist/alert.d.ts.map +1 -1
- package/dist/alert.mjs +37 -29
- package/dist/{aspect-ratio-CFWobEnT.mjs → aspect-ratio-DnChDaBi.mjs} +10 -4
- package/dist/{aspect-ratio-D9dApiWv.js → aspect-ratio-QD1ZXP2B.js} +1 -1
- package/dist/aspect-ratio.cjs +1 -1
- package/dist/aspect-ratio.d.ts +2 -4
- package/dist/aspect-ratio.d.ts.map +1 -1
- package/dist/aspect-ratio.mjs +1 -1
- package/dist/avatar-C4onD8-4.mjs +127 -0
- package/dist/avatar-ki_M47qG.js +1 -0
- package/dist/avatar.cjs +1 -1
- package/dist/avatar.d.ts +10 -7
- package/dist/avatar.d.ts.map +1 -1
- package/dist/avatar.mjs +2 -3
- package/dist/badge.cjs +1 -1
- package/dist/badge.d.ts +4 -5
- package/dist/badge.d.ts.map +1 -1
- package/dist/badge.mjs +17 -13
- package/dist/breadcrumb.cjs +1 -1
- package/dist/breadcrumb.d.ts +9 -17
- package/dist/breadcrumb.d.ts.map +1 -1
- package/dist/breadcrumb.mjs +67 -58
- package/dist/button-group.cjs +1 -0
- package/dist/button-group.d.ts +11 -0
- package/dist/button-group.d.ts.map +1 -0
- package/dist/button-group.mjs +39 -0
- package/dist/button.cjs +1 -1
- package/dist/button.d.ts +3 -5
- package/dist/button.d.ts.map +1 -1
- package/dist/button.mjs +33 -26
- package/dist/calendar-D9sapvfY.js +1 -0
- package/dist/{calendar-DtFx4qdT.mjs → calendar-Dg6VGycy.mjs} +631 -625
- package/dist/calendar.cjs +1 -1
- package/dist/calendar.d.ts +5 -5
- package/dist/calendar.d.ts.map +1 -1
- package/dist/calendar.mjs +1 -2
- package/dist/card.cjs +1 -1
- package/dist/card.d.ts +10 -10
- package/dist/card.d.ts.map +1 -1
- package/dist/card.mjs +53 -40
- package/dist/carousel-6oFHLN7R.js +1 -0
- package/dist/{carousel-PQJ97GjQ.mjs → carousel-DbDoNdqJ.mjs} +54 -59
- package/dist/carousel.cjs +1 -1
- package/dist/carousel.d.ts +18 -13
- package/dist/carousel.d.ts.map +1 -1
- package/dist/carousel.mjs +2 -4
- package/dist/chart.cjs +3 -3
- package/dist/chart.d.ts +35 -7
- package/dist/chart.d.ts.map +1 -1
- package/dist/chart.mjs +64 -71
- package/dist/checkbox-BLgY82mB.js +1 -0
- package/dist/{checkbox-BOmSuATv.mjs → checkbox-Bts_zfqd.mjs} +32 -29
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.d.ts +2 -5
- package/dist/checkbox.d.ts.map +1 -1
- package/dist/checkbox.mjs +1 -2
- package/dist/collapsible.cjs +1 -1
- package/dist/collapsible.d.ts +4 -6
- package/dist/collapsible.d.ts.map +1 -1
- package/dist/collapsible.mjs +21 -3
- package/dist/combobox-6qNx9Wbb.js +4 -0
- package/dist/combobox-yDMqxM_J.mjs +5522 -0
- package/dist/combobox.cjs +1 -0
- package/dist/combobox.d.ts +21 -0
- package/dist/combobox.d.ts.map +1 -0
- package/dist/combobox.mjs +4 -0
- package/dist/command-C6wJ5giF.mjs +576 -0
- package/dist/command-DCrPL1iW.js +1 -0
- package/dist/command.cjs +1 -1
- package/dist/command.d.ts +16 -80
- package/dist/command.d.ts.map +1 -1
- package/dist/command.mjs +1 -2
- package/dist/context-menu-CydUpD4W.mjs +349 -0
- package/dist/context-menu-DQ7XuuG5.js +1 -0
- package/dist/context-menu.cjs +1 -1
- package/dist/context-menu.d.ts +29 -21
- package/dist/context-menu.d.ts.map +1 -1
- package/dist/context-menu.mjs +1 -2
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.d.ts +15 -17
- package/dist/dialog.d.ts.map +1 -1
- package/dist/dialog.mjs +89 -43
- package/dist/direction.cjs +1 -0
- package/dist/direction.d.ts +7 -0
- package/dist/direction.d.ts.map +1 -0
- package/dist/direction.mjs +15 -0
- package/dist/dist-1C8JOpVg.js +1 -0
- package/dist/{dist-CTaBktQl.mjs → dist-B1OcuinL.mjs} +93 -92
- package/dist/dist-BGZDG175.mjs +199 -0
- package/dist/dist-BPBwSSyk.mjs +8 -0
- package/dist/{dist-BTlmz3JV.js → dist-BPX1UGAz2.js} +1 -1
- package/dist/dist-BRsDdVlJ.js +1 -0
- package/dist/{dist-_LAgxsbh.mjs → dist-BWwCr-xN.mjs} +10 -9
- package/dist/dist-BYdcKuDi.mjs +16 -0
- package/dist/{dist-DCKyUINZ.mjs → dist-BlB11V_z.mjs} +1 -1
- package/dist/dist-CCXBcfM3.js +1 -0
- package/dist/{dist--EFQaGUD.mjs → dist-CDU9vno-.mjs} +4 -4
- package/dist/dist-CJolxugc.js +1 -0
- package/dist/dist-CQhWBhaI.mjs +91 -0
- package/dist/dist-CRLbUj9C.js +1 -0
- package/dist/dist-CWElW7UD.js +1 -0
- package/dist/{dist-NIAlh3KC.js → dist-CXbzwSnE.js} +1 -1
- package/dist/{dist-C5EZ0AD6.mjs → dist-CYj6O95k.mjs} +42 -41
- package/dist/{dist-Bjlzl0jN.mjs → dist-Cacc4QIh.mjs} +13 -10
- package/dist/dist-ChuP-5Gb.js +1 -0
- package/dist/dist-CiM892Rg.js +1 -0
- package/dist/{dist-Doq7FY_P.js → dist-CuMQq0hV.js} +1 -1
- package/dist/dist-DMnXk8Uo.js +1 -0
- package/dist/{dist-CRmJFaEL.mjs → dist-DPBTfUqI.mjs} +18 -17
- package/dist/dist-DR0lXVFG.js +1 -0
- package/dist/dist-Da7BU5sd.js +5 -0
- package/dist/{dist-D_tuvB-W.mjs → dist-Dz3LbuDd.mjs} +8 -9
- package/dist/{dist-9gQKRtL7.mjs → dist-GhACpuJb2.mjs} +1 -1
- package/dist/dist-o4zlRoDG.js +1 -0
- package/dist/{dist-DdVp13bp.mjs → dist-rGeQfsgN.mjs} +1 -1
- package/dist/{dist-BQOrag93.mjs → dist-tvb2Wafb.mjs} +22 -21
- package/dist/drawer.cjs +1 -1
- package/dist/drawer.d.ts +10 -21
- package/dist/drawer.d.ts.map +1 -1
- package/dist/drawer.mjs +74 -45
- package/dist/dropdown-menu-BoJvZ3Fj.js +1 -0
- package/dist/dropdown-menu-CriaO1_i.mjs +347 -0
- package/dist/dropdown-menu.cjs +1 -1
- package/dist/dropdown-menu.d.ts +27 -21
- package/dist/dropdown-menu.d.ts.map +1 -1
- package/dist/dropdown-menu.mjs +1 -1
- package/dist/empty.cjs +1 -0
- package/dist/empty.d.ts +13 -0
- package/dist/empty.d.ts.map +1 -0
- package/dist/empty.mjs +60 -0
- package/dist/{es2015-DkZq_IIO.mjs → es2015-BhmbVcui.mjs} +2 -2
- package/dist/{es2015-Ca60p53M.js → es2015-D22cM8Q_.js} +1 -1
- package/dist/field.cjs +1 -0
- package/dist/field.d.ts +18 -0
- package/dist/field.d.ts.map +1 -0
- package/dist/field.mjs +109 -0
- package/dist/floating-ui.react-dom-DgS_bqyY.mjs +1089 -0
- package/dist/floating-ui.react-dom-DpCJEf_x.js +1 -0
- package/dist/form.cjs +1 -1
- package/dist/form.mjs +8 -8
- package/dist/hooks/use-mobile.d.ts +2 -0
- package/dist/hooks/use-mobile.d.ts.map +1 -0
- package/dist/hooks/use-theme.d.ts +16 -0
- package/dist/hooks/use-theme.d.ts.map +1 -1
- package/dist/{hover-card-BOk3-K0k.mjs → hover-card-CJ-ibpbC.mjs} +53 -33
- package/dist/hover-card-CK5SjVLL.js +1 -0
- package/dist/hover-card.cjs +1 -1
- package/dist/hover-card.d.ts +4 -6
- package/dist/hover-card.d.ts.map +1 -1
- package/dist/hover-card.mjs +1 -2
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +14 -43
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +66 -54
- package/dist/input-group.cjs +1 -0
- package/dist/input-group.d.ts +18 -0
- package/dist/input-group.d.ts.map +1 -0
- package/dist/input-group.mjs +78 -0
- package/dist/input-otp-BH_9dVhh.mjs +391 -0
- package/dist/input-otp-BibboKMt.js +20 -0
- package/dist/input-otp.cjs +1 -0
- package/dist/input-otp.d.ts +9 -0
- package/dist/input-otp.d.ts.map +1 -0
- package/dist/input-otp.mjs +4 -0
- package/dist/input.cjs +1 -1
- package/dist/input.d.ts +1 -4
- package/dist/input.d.ts.map +1 -1
- package/dist/input.mjs +11 -11
- package/dist/item.cjs +1 -0
- package/dist/item.d.ts +25 -0
- package/dist/item.d.ts.map +1 -0
- package/dist/item.mjs +118 -0
- package/dist/kbd.cjs +1 -0
- package/dist/kbd.d.ts +5 -0
- package/dist/kbd.d.ts.map +1 -0
- package/dist/kbd.mjs +20 -0
- package/dist/label-BXMSoyyu.js +1 -0
- package/dist/label-C8GNfPU0.mjs +25 -0
- package/dist/label.cjs +1 -1
- package/dist/label.d.ts +2 -5
- package/dist/label.d.ts.map +1 -1
- package/dist/label.mjs +1 -2
- package/dist/menubar-BcyqIJgy.mjs +441 -0
- package/dist/menubar-DPxokWFI.js +1 -0
- package/dist/menubar.cjs +1 -1
- package/dist/menubar.d.ts +25 -19
- package/dist/menubar.d.ts.map +1 -1
- package/dist/menubar.mjs +1 -1
- package/dist/native-select.cjs +1 -0
- package/dist/native-select.d.ts +8 -0
- package/dist/native-select.d.ts.map +1 -0
- package/dist/native-select.mjs +39 -0
- package/dist/navigation-menu-2yE2MUu-.js +1 -0
- package/dist/navigation-menu-N8gkxEXE.mjs +628 -0
- package/dist/navigation-menu.cjs +1 -1
- package/dist/navigation-menu.d.ts +11 -11
- package/dist/navigation-menu.d.ts.map +1 -1
- package/dist/navigation-menu.mjs +1 -2
- package/dist/pagination.cjs +1 -1
- package/dist/pagination.d.ts +13 -26
- package/dist/pagination.d.ts.map +1 -1
- package/dist/pagination.mjs +76 -59
- package/dist/popover-D1AO-E8p.js +1 -0
- package/dist/popover-wQACF3ut.mjs +245 -0
- package/dist/popover.cjs +1 -1
- package/dist/popover.d.ts +9 -8
- package/dist/popover.d.ts.map +1 -1
- package/dist/popover.mjs +2 -3
- package/dist/{progress-30ehxjKg.mjs → progress-DPWSEWa5.mjs} +19 -14
- package/dist/{progress-BqWHea4f.js → progress-ShXZwOfj.js} +2 -2
- package/dist/progress.cjs +1 -1
- package/dist/progress.d.ts +2 -4
- package/dist/progress.d.ts.map +1 -1
- package/dist/progress.mjs +1 -1
- package/dist/radio-group-CQbZCQmj.mjs +199 -0
- package/dist/radio-group-DAEi5vW_.js +1 -0
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.d.ts +3 -8
- package/dist/radio-group.d.ts.map +1 -1
- package/dist/radio-group.mjs +1 -2
- package/dist/resizable-Cv-mKMKP.js +1 -0
- package/dist/{resizable-DhOcAmNX.mjs → resizable-DJSE3e5L.mjs} +310 -282
- package/dist/resizable.cjs +1 -1
- package/dist/resizable.d.ts +6 -7
- package/dist/resizable.d.ts.map +1 -1
- package/dist/resizable.mjs +1 -1
- package/dist/{scroll-area-DJcPs0_v.mjs → scroll-area-8QcqkHnC.mjs} +69 -58
- package/dist/scroll-area-Cqqinhxf.js +1 -0
- package/dist/scroll-area.cjs +1 -1
- package/dist/scroll-area.d.ts +3 -5
- package/dist/scroll-area.d.ts.map +1 -1
- package/dist/scroll-area.mjs +1 -2
- package/dist/search.cjs +1 -1
- package/dist/search.d.ts +1 -1
- package/dist/search.d.ts.map +1 -1
- package/dist/search.mjs +15 -14
- package/dist/select-DdUveoSA.js +1 -0
- package/dist/{select-D4bxRFq5.mjs → select-yoeH35x2.mjs} +279 -245
- package/dist/select.cjs +1 -1
- package/dist/select.d.ts +13 -13
- package/dist/select.d.ts.map +1 -1
- package/dist/select.mjs +1 -1
- package/dist/{separator-DZACUutC.mjs → separator-BU1ea5gl.mjs} +14 -10
- package/dist/separator-DBjErwHf.js +1 -0
- package/dist/separator.cjs +1 -1
- package/dist/separator.d.ts +2 -4
- package/dist/separator.d.ts.map +1 -1
- package/dist/separator.mjs +1 -2
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.d.ts +13 -26
- package/dist/sheet.d.ts.map +1 -1
- package/dist/sheet.mjs +84 -54
- package/dist/shim-B5sEfNEJ.js +1 -0
- package/dist/shim-DX33EwUw.mjs +91 -0
- package/dist/sidebar-B-sWccYh.mjs +355 -0
- package/dist/sidebar-DIW-1cin.js +1 -0
- package/dist/sidebar.cjs +1 -0
- package/dist/sidebar.d.ts +45 -0
- package/dist/sidebar.d.ts.map +1 -0
- package/dist/sidebar.mjs +5 -0
- package/dist/skeleton.cjs +1 -1
- package/dist/skeleton.d.ts +1 -4
- package/dist/skeleton.d.ts.map +1 -1
- package/dist/skeleton.mjs +2 -3
- package/dist/{slider-DTdrUy_s.mjs → slider-CCPXejUF.mjs} +81 -59
- package/dist/slider-w05gD_Ix.js +1 -0
- package/dist/slider.cjs +1 -1
- package/dist/slider.d.ts +2 -4
- package/dist/slider.d.ts.map +1 -1
- package/dist/slider.mjs +1 -1
- package/dist/sonner.cjs +1 -1
- package/dist/sonner.d.ts +1 -5
- package/dist/sonner.d.ts.map +1 -1
- package/dist/sonner.mjs +23 -16
- package/dist/spinner.cjs +1 -0
- package/dist/spinner.d.ts +4 -0
- package/dist/spinner.d.ts.map +1 -0
- package/dist/spinner.mjs +15 -0
- package/dist/support-fab.cjs +1 -1
- package/dist/support-fab.mjs +1 -1
- package/dist/switch-CDBqsWQa.mjs +112 -0
- package/dist/switch-X2WBJsUu.js +1 -0
- package/dist/switch.cjs +1 -1
- package/dist/switch.d.ts +4 -4
- package/dist/switch.d.ts.map +1 -1
- package/dist/switch.mjs +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.d.ts +8 -10
- package/dist/table.d.ts.map +1 -1
- package/dist/table.mjs +62 -54
- package/dist/tabs-DzvgrVzk.js +1 -0
- package/dist/tabs-KDeHjVQU.mjs +160 -0
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.d.ts +10 -8
- package/dist/tabs.d.ts.map +1 -1
- package/dist/tabs.mjs +2 -2
- package/dist/text.d.ts +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.d.ts +1 -4
- package/dist/textarea.d.ts.map +1 -1
- package/dist/textarea.mjs +10 -10
- package/dist/{theme-toggle-Dtze9fyN.js → theme-toggle-C2Y4bIM3.js} +1 -1
- package/dist/{theme-toggle-DAHBgdy0.mjs → theme-toggle-clE-HpSS.mjs} +9 -9
- package/dist/theme-toggle.cjs +1 -1
- package/dist/theme-toggle.mjs +1 -2
- package/dist/toast-1keyrzem.js +1 -0
- package/dist/{toast-G9LdgDDE.mjs → toast-DVI6jPq5.mjs} +102 -101
- package/dist/toast.cjs +1 -1
- package/dist/toast.d.ts.map +1 -1
- package/dist/toast.mjs +1 -1
- package/dist/{toaster-WQJjavlc.mjs → toaster-Czhz-ktg.mjs} +1 -1
- package/dist/{toaster-CKD4CKAZ.js → toaster-DfDb2-aI.js} +1 -1
- package/dist/toaster.cjs +1 -1
- package/dist/toaster.mjs +1 -1
- package/dist/toggle-BGkq5XDM.js +1 -0
- package/dist/toggle-BfIIdlA6.mjs +58 -0
- package/dist/toggle-group-CbqgoPFU.mjs +167 -0
- package/dist/toggle-group-D7hR4BT2.js +1 -0
- package/dist/toggle-group.cjs +1 -1
- package/dist/toggle-group.d.ts +7 -9
- package/dist/toggle-group.d.ts.map +1 -1
- package/dist/toggle-group.mjs +1 -1
- package/dist/toggle.cjs +1 -1
- package/dist/toggle.d.ts +6 -5
- package/dist/toggle.d.ts.map +1 -1
- package/dist/toggle.mjs +2 -19
- package/dist/tooltip-CAIbshMk.js +1 -0
- package/dist/{tooltip-BHEcM7lO.mjs → tooltip-D_o8Z-Ya.mjs} +106 -90
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.d.ts +5 -10
- package/dist/tooltip.d.ts.map +1 -1
- package/dist/tooltip.mjs +1 -1
- package/package.json +8 -6
- package/src/accordion.tsx +58 -51
- package/src/alert-dialog.tsx +140 -93
- package/src/alert.tsx +44 -33
- package/src/aspect-ratio.tsx +10 -4
- package/src/avatar.tsx +92 -37
- package/src/badge.tsx +24 -14
- package/src/breadcrumb.tsx +73 -85
- package/src/button-group.tsx +78 -0
- package/src/button.tsx +46 -24
- package/src/calendar.tsx +52 -40
- package/src/card.tsx +67 -42
- package/src/carousel.tsx +164 -174
- package/src/chart.tsx +206 -232
- package/src/checkbox.tsx +17 -17
- package/src/collapsible.tsx +16 -10
- package/src/combobox.tsx +282 -0
- package/src/command.tsx +123 -120
- package/src/context-menu.tsx +206 -179
- package/src/dialog.tsx +111 -65
- package/src/direction.tsx +18 -0
- package/src/drawer.tsx +75 -78
- package/src/dropdown-menu.tsx +211 -180
- package/src/empty.tsx +83 -0
- package/src/field.tsx +217 -0
- package/src/hooks/use-mobile.ts +19 -0
- package/src/hover-card.tsx +33 -27
- package/src/index.ts +108 -154
- package/src/input-group.tsx +143 -0
- package/src/input-otp.tsx +81 -0
- package/src/input.tsx +8 -8
- package/src/item.tsx +185 -0
- package/src/kbd.tsx +21 -0
- package/src/label.tsx +17 -14
- package/src/menubar.tsx +211 -199
- package/src/native-select.tsx +54 -0
- package/src/navigation-menu.tsx +115 -110
- package/src/pagination.tsx +65 -80
- package/src/popover.tsx +53 -41
- package/src/progress.tsx +22 -20
- package/src/radio-group.tsx +22 -34
- package/src/resizable.tsx +34 -49
- package/src/scroll-area.tsx +43 -35
- package/src/search.tsx +12 -9
- package/src/select.tsx +138 -133
- package/src/separator.tsx +25 -18
- package/src/sheet.tsx +97 -127
- package/src/sidebar.tsx +660 -0
- package/src/skeleton.tsx +7 -6
- package/src/slider.tsx +51 -19
- package/src/sonner.tsx +22 -12
- package/src/spinner.tsx +10 -0
- package/src/support-fab.tsx +1 -1
- package/src/switch.tsx +28 -21
- package/src/table.tsx +61 -87
- package/src/tabs.tsx +75 -56
- package/src/textarea.tsx +8 -10
- package/src/toast.tsx +5 -0
- package/src/toggle-group.tsx +76 -40
- package/src/toggle.tsx +35 -15
- package/src/tooltip.tsx +41 -43
- package/dist/accordion-BTF24dQU.js +0 -1
- package/dist/accordion-DHTV2Am8.mjs +0 -221
- package/dist/alert-dialog-Bwn2-Uyf.mjs +0 -164
- package/dist/alert-dialog-DBMX5E0-.js +0 -7
- package/dist/avatar-BI7s8omb.js +0 -1
- package/dist/avatar-hzlewncL.mjs +0 -185
- package/dist/calendar-ykdYhTj9.js +0 -1
- package/dist/carousel-DSmAn1nc.js +0 -1
- package/dist/checkbox-dK6DJKeV.js +0 -1
- package/dist/command-CDSbHz4C.js +0 -1
- package/dist/command-j0rZqZ7B.mjs +0 -531
- package/dist/context-menu-BWgLbKLP.js +0 -1
- package/dist/context-menu-CWSzssAO.mjs +0 -292
- package/dist/dist-B28N93_W.js +0 -1
- package/dist/dist-B43Kk7ii.js +0 -1
- package/dist/dist-BTPL2C0R.js +0 -1
- package/dist/dist-BjEG16aJ.mjs +0 -111
- package/dist/dist-BlKAvKHD.js +0 -1
- package/dist/dist-C3Z3atn0.mjs +0 -10
- package/dist/dist-C4q8IPk4.mjs +0 -28
- package/dist/dist-CPglx4om.js +0 -1
- package/dist/dist-CV2U2xFR.js +0 -1
- package/dist/dist-Cv9YaN1n.mjs +0 -61
- package/dist/dist-DAe-fOIM.mjs +0 -25
- package/dist/dist-DQAJMTj0.js +0 -1
- package/dist/dist-DaCPM8ia.js +0 -1
- package/dist/dist-DasmYflz.js +0 -1
- package/dist/dist-DneYUKe0.js +0 -1
- package/dist/dist-Du2jbEkG.mjs +0 -1282
- package/dist/dist-Dw6-GQAn.js +0 -1
- package/dist/dist-DwGlbIjj.js +0 -5
- package/dist/dist-Dzjlf9ug.js +0 -1
- package/dist/dist-GaBUW_Tu.js +0 -1
- package/dist/dropdown-menu-Bz5LlLjl.js +0 -1
- package/dist/dropdown-menu-Cp1qpOLk.mjs +0 -288
- package/dist/hover-card-CyKIuXGH.js +0 -1
- package/dist/label-DGuuPl_e.mjs +0 -22
- package/dist/label-gVkdll-j.js +0 -1
- package/dist/menubar-DNrIQhY5.mjs +0 -410
- package/dist/menubar-DkjAo6qJ.js +0 -1
- package/dist/navigation-menu-1cmCEi0j.mjs +0 -602
- package/dist/navigation-menu-qPt8hpr5.js +0 -1
- package/dist/popover-CbM1tqdC.mjs +0 -201
- package/dist/popover-DGTgqdKX.js +0 -1
- package/dist/radio-group-BGThTiQM.mjs +0 -193
- package/dist/radio-group-ClFpAswm.js +0 -1
- package/dist/resizable-D09wr7tV.js +0 -1
- package/dist/scroll-area-W_aOLOdE.js +0 -1
- package/dist/select-BQtkQBiD.js +0 -1
- package/dist/separator-BmkhoDge.js +0 -1
- package/dist/slider-Bkluwc3b.js +0 -1
- package/dist/switch-DENAxyga.js +0 -1
- package/dist/switch-DbsdyQVg.mjs +0 -103
- package/dist/tabs-C9sMowgZ.mjs +0 -136
- package/dist/tabs-DeK-zpy4.js +0 -1
- package/dist/toast-BtXY2QTe.js +0 -1
- package/dist/toggle-group-B0H9TwdD.mjs +0 -155
- package/dist/toggle-group-CAyztsIl.js +0 -1
- package/dist/tooltip-CKcMl7tK.js +0 -1
- /package/dist/{dist-C_45sBzc.js → dist-C_45sBzc2.js} +0 -0
- /package/dist/{dist-DGzGsPqo.mjs → dist-DGzGsPqo2.mjs} +0 -0
package/src/chart.tsx
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
'use client';
|
|
2
|
+
|
|
2
3
|
import * as React from 'react';
|
|
4
|
+
import type { TooltipValueType } from 'recharts';
|
|
3
5
|
import * as RechartsPrimitive from 'recharts';
|
|
4
6
|
|
|
5
|
-
import {
|
|
6
|
-
ChartConfig,
|
|
7
|
-
ChartContainerBaseProps,
|
|
8
|
-
ChartLegendContentBaseProps,
|
|
9
|
-
ChartTooltipContentBaseProps,
|
|
10
|
-
} from '@gv-tech/ui-core';
|
|
11
7
|
import { cn } from './lib/utils';
|
|
12
8
|
|
|
13
9
|
// Format: { THEME_NAME: CSS_SELECTOR }
|
|
14
10
|
const THEMES = { light: '', dark: '.dark' } as const;
|
|
15
11
|
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
const INITIAL_DIMENSION = { width: 320, height: 200 } as const;
|
|
13
|
+
type TooltipNameType = number | string;
|
|
14
|
+
|
|
15
|
+
export type ChartConfig = Record<
|
|
16
|
+
string,
|
|
17
|
+
{
|
|
18
|
+
label?: React.ReactNode;
|
|
19
|
+
icon?: React.ComponentType;
|
|
20
|
+
} & ({ color?: string; theme?: never } | { color?: never; theme: Record<keyof typeof THEMES, string> })
|
|
21
|
+
>;
|
|
18
22
|
|
|
19
23
|
type ChartContextProps = {
|
|
20
24
|
config: ChartConfig;
|
|
@@ -32,236 +36,212 @@ function useChart() {
|
|
|
32
36
|
return context;
|
|
33
37
|
}
|
|
34
38
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
className,
|
|
73
|
-
)}
|
|
74
|
-
style={style}
|
|
75
|
-
role={role}
|
|
76
|
-
tabIndex={tabIndex}
|
|
77
|
-
aria-label={ariaLabel}
|
|
78
|
-
aria-labelledby={ariaLabelledBy}
|
|
79
|
-
aria-describedby={ariaDescribedBy}
|
|
80
|
-
onClick={onClick}
|
|
81
|
-
onKeyDown={onKeyDown}
|
|
82
|
-
onKeyUp={onKeyUp}
|
|
83
|
-
onFocus={onFocus}
|
|
84
|
-
onBlur={onBlur}
|
|
85
|
-
>
|
|
86
|
-
<ChartStyle id={chartId} config={config} />
|
|
87
|
-
<RechartsPrimitive.ResponsiveContainer>{children}</RechartsPrimitive.ResponsiveContainer>
|
|
88
|
-
</div>
|
|
89
|
-
</ChartContext.Provider>
|
|
90
|
-
);
|
|
91
|
-
},
|
|
92
|
-
);
|
|
93
|
-
ChartContainer.displayName = 'Chart';
|
|
39
|
+
function ChartContainer({
|
|
40
|
+
id,
|
|
41
|
+
className,
|
|
42
|
+
children,
|
|
43
|
+
config,
|
|
44
|
+
initialDimension = INITIAL_DIMENSION,
|
|
45
|
+
...props
|
|
46
|
+
}: React.ComponentProps<'div'> & {
|
|
47
|
+
config: ChartConfig;
|
|
48
|
+
children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>['children'];
|
|
49
|
+
initialDimension?: {
|
|
50
|
+
width: number;
|
|
51
|
+
height: number;
|
|
52
|
+
};
|
|
53
|
+
}) {
|
|
54
|
+
const uniqueId = React.useId();
|
|
55
|
+
const chartId = `chart-${id ?? uniqueId.replace(/:/g, '')}`;
|
|
56
|
+
|
|
57
|
+
return (
|
|
58
|
+
<ChartContext.Provider value={{ config }}>
|
|
59
|
+
<div
|
|
60
|
+
data-slot="chart"
|
|
61
|
+
data-chart={chartId}
|
|
62
|
+
className={cn(
|
|
63
|
+
"[&_.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",
|
|
64
|
+
className,
|
|
65
|
+
)}
|
|
66
|
+
{...props}
|
|
67
|
+
>
|
|
68
|
+
<ChartStyle id={chartId} config={config} />
|
|
69
|
+
<RechartsPrimitive.ResponsiveContainer initialDimension={initialDimension}>
|
|
70
|
+
{children}
|
|
71
|
+
</RechartsPrimitive.ResponsiveContainer>
|
|
72
|
+
</div>
|
|
73
|
+
</ChartContext.Provider>
|
|
74
|
+
);
|
|
75
|
+
}
|
|
94
76
|
|
|
95
77
|
const ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {
|
|
96
|
-
const colorConfig = Object.entries(config).filter(([,
|
|
78
|
+
const colorConfig = Object.entries(config).filter(([, config]) => config.theme ?? config.color);
|
|
97
79
|
|
|
98
80
|
if (!colorConfig.length) {
|
|
99
81
|
return null;
|
|
100
82
|
}
|
|
101
83
|
|
|
102
84
|
return (
|
|
103
|
-
<style
|
|
104
|
-
{
|
|
105
|
-
.
|
|
106
|
-
(
|
|
85
|
+
<style
|
|
86
|
+
dangerouslySetInnerHTML={{
|
|
87
|
+
__html: Object.entries(THEMES)
|
|
88
|
+
.map(
|
|
89
|
+
([theme, prefix]) => `
|
|
107
90
|
${prefix} [data-chart=${id}] {
|
|
108
91
|
${colorConfig
|
|
109
92
|
.map(([key, itemConfig]) => {
|
|
110
|
-
const color =
|
|
111
|
-
(theme in THEMES && hasOwnProp(THEMES, theme) ? itemConfig.theme?.[theme as keyof typeof THEMES] : undefined) ||
|
|
112
|
-
itemConfig.color;
|
|
93
|
+
const color = itemConfig.theme?.[theme as keyof typeof itemConfig.theme] ?? itemConfig.color;
|
|
113
94
|
return color ? ` --color-${key}: ${color};` : null;
|
|
114
95
|
})
|
|
115
96
|
.join('\n')}
|
|
116
97
|
}
|
|
117
98
|
`,
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
99
|
+
)
|
|
100
|
+
.join('\n'),
|
|
101
|
+
}}
|
|
102
|
+
/>
|
|
121
103
|
);
|
|
122
104
|
};
|
|
123
105
|
|
|
124
106
|
const ChartTooltip = RechartsPrimitive.Tooltip;
|
|
125
107
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
)
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
return null;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
const [item] = payload;
|
|
156
|
-
const key = `${labelKey || item?.dataKey || item?.name || 'value'}`;
|
|
157
|
-
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
158
|
-
const value =
|
|
159
|
-
!labelKey && typeof label === 'string'
|
|
160
|
-
? ((hasOwnProp(config, label) ? config[label as keyof typeof config]?.label : undefined) ?? label)
|
|
161
|
-
: itemConfig?.label;
|
|
162
|
-
|
|
163
|
-
if (labelFormatter) {
|
|
164
|
-
return <div className={cn('font-medium', labelClassName)}>{labelFormatter(value, payload)}</div>;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
if (!value) {
|
|
168
|
-
return null;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
return <div className={cn('font-medium', labelClassName)}>{value}</div>;
|
|
172
|
-
}, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);
|
|
173
|
-
|
|
174
|
-
if (!active || !payload?.length) {
|
|
108
|
+
function ChartTooltipContent({
|
|
109
|
+
active,
|
|
110
|
+
payload,
|
|
111
|
+
className,
|
|
112
|
+
indicator = 'dot',
|
|
113
|
+
hideLabel = false,
|
|
114
|
+
hideIndicator = false,
|
|
115
|
+
label,
|
|
116
|
+
labelFormatter,
|
|
117
|
+
labelClassName,
|
|
118
|
+
formatter,
|
|
119
|
+
color,
|
|
120
|
+
nameKey,
|
|
121
|
+
labelKey,
|
|
122
|
+
}: React.ComponentProps<typeof RechartsPrimitive.Tooltip> &
|
|
123
|
+
React.ComponentProps<'div'> & {
|
|
124
|
+
hideLabel?: boolean;
|
|
125
|
+
hideIndicator?: boolean;
|
|
126
|
+
indicator?: 'line' | 'dot' | 'dashed';
|
|
127
|
+
nameKey?: string;
|
|
128
|
+
labelKey?: string;
|
|
129
|
+
} & Omit<RechartsPrimitive.DefaultTooltipContentProps<TooltipValueType, TooltipNameType>, 'accessibilityLayer'>) {
|
|
130
|
+
const { config } = useChart();
|
|
131
|
+
|
|
132
|
+
const tooltipLabel = React.useMemo(() => {
|
|
133
|
+
if (hideLabel || !payload?.length) {
|
|
175
134
|
return null;
|
|
176
135
|
}
|
|
177
136
|
|
|
178
|
-
const
|
|
137
|
+
const [item] = payload;
|
|
138
|
+
const key = `${labelKey ?? item?.dataKey ?? item?.name ?? 'value'}`;
|
|
139
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
140
|
+
const value = !labelKey && typeof label === 'string' ? (config[label]?.label ?? label) : itemConfig?.label;
|
|
179
141
|
|
|
180
|
-
|
|
181
|
-
<div
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
142
|
+
if (labelFormatter) {
|
|
143
|
+
return <div className={cn('font-medium', labelClassName)}>{labelFormatter(value, payload)}</div>;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
if (!value) {
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return <div className={cn('font-medium', labelClassName)}>{value}</div>;
|
|
151
|
+
}, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);
|
|
152
|
+
|
|
153
|
+
if (!active || !payload?.length) {
|
|
154
|
+
return null;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
const nestLabel = payload.length === 1 && indicator !== 'dot';
|
|
158
|
+
|
|
159
|
+
return (
|
|
160
|
+
<div
|
|
161
|
+
className={cn(
|
|
162
|
+
'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',
|
|
163
|
+
className,
|
|
164
|
+
)}
|
|
165
|
+
>
|
|
166
|
+
{!nestLabel ? tooltipLabel : null}
|
|
167
|
+
<div className="grid gap-1.5">
|
|
168
|
+
{payload
|
|
169
|
+
.filter((item) => item.type !== 'none')
|
|
170
|
+
.map((item, index) => {
|
|
171
|
+
const key = `${nameKey ?? item.name ?? item.dataKey ?? 'value'}`;
|
|
172
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
173
|
+
const indicatorColor = color ?? item.payload?.fill ?? item.color;
|
|
174
|
+
|
|
175
|
+
return (
|
|
176
|
+
<div
|
|
177
|
+
key={index}
|
|
178
|
+
className={cn(
|
|
179
|
+
'[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5',
|
|
180
|
+
indicator === 'dot' && 'items-center',
|
|
181
|
+
)}
|
|
182
|
+
>
|
|
183
|
+
{formatter && item?.value !== undefined && item.name ? (
|
|
184
|
+
formatter(item.value, item.name, item, index, item.payload)
|
|
185
|
+
) : (
|
|
186
|
+
<>
|
|
187
|
+
{itemConfig?.icon ? (
|
|
188
|
+
<itemConfig.icon />
|
|
189
|
+
) : (
|
|
190
|
+
!hideIndicator && (
|
|
191
|
+
<div
|
|
192
|
+
className={cn('shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)', {
|
|
193
|
+
'h-2.5 w-2.5': indicator === 'dot',
|
|
194
|
+
'w-1': indicator === 'line',
|
|
195
|
+
'w-0 border-[1.5px] border-dashed bg-transparent': indicator === 'dashed',
|
|
196
|
+
'my-0.5': nestLabel && indicator === 'dashed',
|
|
197
|
+
})}
|
|
198
|
+
style={
|
|
199
|
+
{
|
|
200
|
+
'--color-bg': indicatorColor,
|
|
201
|
+
'--color-border': indicatorColor,
|
|
202
|
+
} as React.CSSProperties
|
|
203
|
+
}
|
|
204
|
+
/>
|
|
205
|
+
)
|
|
206
|
+
)}
|
|
207
|
+
<div
|
|
208
|
+
className={cn(
|
|
209
|
+
'flex flex-1 justify-between leading-none',
|
|
210
|
+
nestLabel ? 'items-end' : 'items-center',
|
|
228
211
|
)}
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
)}
|
|
234
|
-
>
|
|
235
|
-
<div className="grid gap-1.5">
|
|
236
|
-
{nestLabel ? tooltipLabel : null}
|
|
237
|
-
<span className="text-muted-foreground">{itemConfig?.label || item.name}</span>
|
|
238
|
-
</div>
|
|
239
|
-
{item.value && (
|
|
240
|
-
<span className="text-foreground font-mono font-medium tabular-nums">
|
|
241
|
-
{item.value.toLocaleString()}
|
|
242
|
-
</span>
|
|
243
|
-
)}
|
|
212
|
+
>
|
|
213
|
+
<div className="grid gap-1.5">
|
|
214
|
+
{nestLabel ? tooltipLabel : null}
|
|
215
|
+
<span className="text-muted-foreground">{itemConfig?.label ?? item.name}</span>
|
|
244
216
|
</div>
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
217
|
+
{item.value != null && (
|
|
218
|
+
<span className="text-foreground font-mono font-medium tabular-nums">
|
|
219
|
+
{typeof item.value === 'number' ? item.value.toLocaleString() : String(item.value)}
|
|
220
|
+
</span>
|
|
221
|
+
)}
|
|
222
|
+
</div>
|
|
223
|
+
</>
|
|
224
|
+
)}
|
|
225
|
+
</div>
|
|
226
|
+
);
|
|
227
|
+
})}
|
|
251
228
|
</div>
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
ChartTooltipContent.displayName = 'ChartTooltip';
|
|
229
|
+
</div>
|
|
230
|
+
);
|
|
231
|
+
}
|
|
256
232
|
|
|
257
233
|
const ChartLegend = RechartsPrimitive.Legend;
|
|
258
234
|
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
235
|
+
function ChartLegendContent({
|
|
236
|
+
className,
|
|
237
|
+
hideIcon = false,
|
|
238
|
+
payload,
|
|
239
|
+
verticalAlign = 'bottom',
|
|
240
|
+
nameKey,
|
|
241
|
+
}: React.ComponentProps<'div'> & {
|
|
242
|
+
hideIcon?: boolean;
|
|
243
|
+
nameKey?: string;
|
|
244
|
+
} & RechartsPrimitive.DefaultLegendContentProps) {
|
|
265
245
|
const { config } = useChart();
|
|
266
246
|
|
|
267
247
|
if (!payload?.length) {
|
|
@@ -269,19 +249,16 @@ const ChartLegendContent = React.forwardRef<
|
|
|
269
249
|
}
|
|
270
250
|
|
|
271
251
|
return (
|
|
272
|
-
<div
|
|
273
|
-
ref={ref}
|
|
274
|
-
className={cn('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className)}
|
|
275
|
-
>
|
|
252
|
+
<div className={cn('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className)}>
|
|
276
253
|
{payload
|
|
277
|
-
.filter((item
|
|
278
|
-
.map((item
|
|
279
|
-
const key = `${nameKey
|
|
254
|
+
.filter((item) => item.type !== 'none')
|
|
255
|
+
.map((item, index) => {
|
|
256
|
+
const key = `${nameKey ?? item.dataKey ?? 'value'}`;
|
|
280
257
|
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
281
258
|
|
|
282
259
|
return (
|
|
283
260
|
<div
|
|
284
|
-
key={
|
|
261
|
+
key={index}
|
|
285
262
|
className={cn('[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3')}
|
|
286
263
|
>
|
|
287
264
|
{itemConfig?.icon && !hideIcon ? (
|
|
@@ -300,36 +277,33 @@ const ChartLegendContent = React.forwardRef<
|
|
|
300
277
|
})}
|
|
301
278
|
</div>
|
|
302
279
|
);
|
|
303
|
-
}
|
|
304
|
-
ChartLegendContent.displayName = 'ChartLegend';
|
|
280
|
+
}
|
|
305
281
|
|
|
306
|
-
// Helper to extract item config from a payload.
|
|
307
282
|
function getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {
|
|
308
283
|
if (typeof payload !== 'object' || payload === null) {
|
|
309
284
|
return undefined;
|
|
310
285
|
}
|
|
311
286
|
|
|
312
287
|
const payloadPayload =
|
|
313
|
-
'payload' in payload &&
|
|
314
|
-
|
|
315
|
-
(payload as { payload: unknown }).payload !== null
|
|
316
|
-
? ((payload as { payload: unknown }).payload as Record<string, unknown>)
|
|
288
|
+
'payload' in payload && typeof payload.payload === 'object' && payload.payload !== null
|
|
289
|
+
? payload.payload
|
|
317
290
|
: undefined;
|
|
318
291
|
|
|
319
292
|
let configLabelKey: string = key;
|
|
320
293
|
|
|
321
|
-
if (
|
|
322
|
-
configLabelKey =
|
|
323
|
-
} else if (
|
|
324
|
-
|
|
294
|
+
if (key in payload && typeof payload[key as keyof typeof payload] === 'string') {
|
|
295
|
+
configLabelKey = payload[key as keyof typeof payload] as string;
|
|
296
|
+
} else if (
|
|
297
|
+
payloadPayload &&
|
|
298
|
+
key in payloadPayload &&
|
|
299
|
+
typeof payloadPayload[key as keyof typeof payloadPayload] === 'string'
|
|
300
|
+
) {
|
|
301
|
+
configLabelKey = payloadPayload[key as keyof typeof payloadPayload] as string;
|
|
325
302
|
}
|
|
326
303
|
|
|
327
|
-
return
|
|
328
|
-
? config[configLabelKey as keyof typeof config]
|
|
329
|
-
: hasOwnProp(config, key)
|
|
330
|
-
? config[key as keyof typeof config]
|
|
331
|
-
: undefined;
|
|
304
|
+
return configLabelKey in config ? config[configLabelKey] : config[key];
|
|
332
305
|
}
|
|
333
306
|
|
|
334
307
|
export { ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent };
|
|
335
|
-
|
|
308
|
+
|
|
309
|
+
// The script was manually reverted here
|
package/src/checkbox.tsx
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
3
|
-
import { Check } from 'lucide-react';
|
|
1
|
+
import { Checkbox as CheckboxPrimitive } from 'radix-ui';
|
|
4
2
|
import * as React from 'react';
|
|
5
3
|
|
|
6
|
-
import
|
|
4
|
+
import { CheckIcon } from 'lucide-react';
|
|
7
5
|
import { cn } from './lib/utils';
|
|
8
6
|
|
|
9
|
-
|
|
10
|
-
extends
|
|
11
|
-
Omit<React.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>, keyof CheckboxBaseProps>,
|
|
12
|
-
CheckboxBaseProps {}
|
|
7
|
+
import type { CheckboxBaseProps } from '@gv-tech/ui-core';
|
|
13
8
|
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
function Checkbox({ className, ...props }: React.ComponentProps<typeof CheckboxPrimitive.Root>) {
|
|
10
|
+
return (
|
|
16
11
|
<CheckboxPrimitive.Root
|
|
17
|
-
|
|
12
|
+
data-slot="checkbox"
|
|
18
13
|
className={cn(
|
|
19
|
-
'peer border-
|
|
14
|
+
'peer border-input focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3',
|
|
20
15
|
className,
|
|
21
16
|
)}
|
|
22
17
|
{...props}
|
|
23
18
|
>
|
|
24
|
-
<CheckboxPrimitive.Indicator
|
|
25
|
-
|
|
19
|
+
<CheckboxPrimitive.Indicator
|
|
20
|
+
data-slot="checkbox-indicator"
|
|
21
|
+
className="grid place-content-center text-current transition-none [&>svg]:size-3.5"
|
|
22
|
+
>
|
|
23
|
+
<CheckIcon />
|
|
26
24
|
</CheckboxPrimitive.Indicator>
|
|
27
25
|
</CheckboxPrimitive.Root>
|
|
28
|
-
)
|
|
29
|
-
|
|
30
|
-
Checkbox.displayName = CheckboxPrimitive.Root?.displayName || 'Checkbox';
|
|
26
|
+
);
|
|
27
|
+
}
|
|
31
28
|
|
|
32
29
|
export { Checkbox };
|
|
30
|
+
|
|
31
|
+
// Verify that the component satisfies the ui-core contract
|
|
32
|
+
const _verifyCheckboxContract: CheckboxBaseProps = {} as unknown as React.ComponentProps<typeof Checkbox>;
|
package/src/collapsible.tsx
CHANGED
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { CollapsibleBaseProps, CollapsibleContentBaseProps, CollapsibleTriggerBaseProps } from '@gv-tech/ui-core';
|
|
3
|
-
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
4
2
|
|
|
5
|
-
|
|
3
|
+
import { Collapsible as CollapsiblePrimitive } from 'radix-ui';
|
|
6
4
|
|
|
7
|
-
|
|
5
|
+
import type { CollapsibleBaseProps } from '@gv-tech/ui-core';
|
|
8
6
|
|
|
9
|
-
|
|
7
|
+
function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>) {
|
|
8
|
+
return <CollapsiblePrimitive.Root data-slot="collapsible" {...props} />;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>) {
|
|
12
|
+
return <CollapsiblePrimitive.CollapsibleTrigger data-slot="collapsible-trigger" {...props} />;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>) {
|
|
16
|
+
return <CollapsiblePrimitive.CollapsibleContent data-slot="collapsible-content" {...props} />;
|
|
17
|
+
}
|
|
10
18
|
|
|
11
19
|
export { Collapsible, CollapsibleContent, CollapsibleTrigger };
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
CollapsibleTriggerBaseProps as CollapsibleTriggerProps,
|
|
16
|
-
};
|
|
20
|
+
|
|
21
|
+
// Verify that the component satisfies the ui-core contract
|
|
22
|
+
const _verifyCollapsibleContract: CollapsibleBaseProps = {} as unknown as React.ComponentProps<typeof Collapsible>;
|