@spark-ui/components 14.0.0-beta.1 → 14.0.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/dist/Button-B6rA3-e5.js +2 -0
- package/dist/{Button-C3xHNaGl.js.map → Button-B6rA3-e5.js.map} +1 -1
- package/dist/{Button-D32Avk2j.mjs → Button-C3C0aixy.mjs} +4 -4
- package/dist/{Button-D32Avk2j.mjs.map → Button-C3C0aixy.mjs.map} +1 -1
- package/dist/DialogContent.styles-BSfXHt21.mjs +61 -0
- package/dist/DialogContent.styles-BSfXHt21.mjs.map +1 -0
- package/dist/DialogContent.styles-bBs6l8Cy.js +2 -0
- package/dist/DialogContent.styles-bBs6l8Cy.js.map +1 -0
- package/dist/Icon-CF0W0LKr.js +2 -0
- package/dist/{Icon-Bf0XrmiR.js.map → Icon-CF0W0LKr.js.map} +1 -1
- package/dist/{Icon-D1RueiPY.mjs → Icon-Ck-dhfLd.mjs} +6 -6
- package/dist/{Icon-D1RueiPY.mjs.map → Icon-Ck-dhfLd.mjs.map} +1 -1
- package/dist/{IconButton-BY3gYXtU.mjs → IconButton-C62-axzv.mjs} +6 -6
- package/dist/{IconButton-BY3gYXtU.mjs.map → IconButton-C62-axzv.mjs.map} +1 -1
- package/dist/IconButton-D3g86WpZ.js +2 -0
- package/dist/{IconButton-Bf-EDzpI.js.map → IconButton-D3g86WpZ.js.map} +1 -1
- package/dist/Slot-D2Bbf8Gw.mjs +14 -0
- package/dist/{Slot-C98rL4yy.mjs.map → Slot-D2Bbf8Gw.mjs.map} +1 -1
- package/dist/Slot-DQ8z2zsy.js +2 -0
- package/dist/{Slot-ghrohQLA.js.map → Slot-DQ8z2zsy.js.map} +1 -1
- package/dist/Spinner-_Kffli3B.js +2 -0
- package/dist/{Spinner-DK8VEsaR.js.map → Spinner-_Kffli3B.js.map} +1 -1
- package/dist/{Spinner-CYL5kyzM.mjs → Spinner-jF3-zoh_.mjs} +3 -3
- package/dist/{Spinner-CYL5kyzM.mjs.map → Spinner-jF3-zoh_.mjs.map} +1 -1
- package/dist/{TextLink-3MEVs3No.mjs → TextLink-BuzFRWO6.mjs} +3 -3
- package/dist/{TextLink-3MEVs3No.mjs.map → TextLink-BuzFRWO6.mjs.map} +1 -1
- package/dist/TextLink-C3xDLsbC.js +2 -0
- package/dist/{TextLink-DD0VO37q.js.map → TextLink-C3xDLsbC.js.map} +1 -1
- package/dist/{VisuallyHidden-AoRh4WRK.js → VisuallyHidden-CB6Nx76j.js} +2 -2
- package/dist/{VisuallyHidden-AoRh4WRK.js.map → VisuallyHidden-CB6Nx76j.js.map} +1 -1
- package/dist/{VisuallyHidden-ByNP7ZUI.mjs → VisuallyHidden-KH1biLx-.mjs} +2 -2
- package/dist/{VisuallyHidden-ByNP7ZUI.mjs.map → VisuallyHidden-KH1biLx-.mjs.map} +1 -1
- package/dist/accordion/index.d.mts +15 -0
- package/dist/accordion/index.js +1 -1
- package/dist/accordion/index.js.map +1 -1
- package/dist/accordion/index.mjs +90 -608
- package/dist/accordion/index.mjs.map +1 -1
- package/dist/alert-dialog/AlertDialogPortal.d.ts +1 -1
- package/dist/alert-dialog/index.d.mts +38 -0
- package/dist/alert-dialog/index.js +1 -34
- package/dist/alert-dialog/index.js.map +1 -1
- package/dist/alert-dialog/index.mjs +139 -2475
- package/dist/alert-dialog/index.mjs.map +1 -1
- package/dist/avatar/index.d.mts +15 -0
- package/dist/avatar/index.js +1 -1
- package/dist/avatar/index.js.map +1 -1
- package/dist/avatar/index.mjs +4 -4
- package/dist/badge/index.d.mts +1 -0
- package/dist/badge/index.js +1 -1
- package/dist/badge/index.js.map +1 -1
- package/dist/badge/index.mjs +6 -6
- package/dist/breadcrumb/index.d.mts +12 -0
- package/dist/breadcrumb/index.js +1 -1
- package/dist/breadcrumb/index.js.map +1 -1
- package/dist/breadcrumb/index.mjs +21 -21
- package/dist/button/Button.d.ts +1 -1
- package/dist/button/index.d.mts +1 -0
- package/dist/button/index.js +1 -1
- package/dist/button/index.mjs +1 -1
- package/dist/button/variants/index.d.mts +5 -0
- package/dist/card/index.d.mts +8 -0
- package/dist/card/index.js +1 -1
- package/dist/card/index.js.map +1 -1
- package/dist/card/index.mjs +2 -2
- package/dist/carousel/index.d.mts +19 -0
- package/dist/carousel/index.js +1 -1
- package/dist/carousel/index.js.map +1 -1
- package/dist/carousel/index.mjs +3 -3
- package/dist/checkbox/index.d.mts +2 -0
- package/dist/checkbox/index.js +1 -1
- package/dist/checkbox/index.js.map +1 -1
- package/dist/checkbox/index.mjs +128 -364
- package/dist/checkbox/index.mjs.map +1 -1
- package/dist/chip/index.d.mts +15 -0
- package/dist/chip/index.js +1 -1
- package/dist/chip/index.js.map +1 -1
- package/dist/chip/index.mjs +196 -370
- package/dist/chip/index.mjs.map +1 -1
- package/dist/chip/variants/index.d.mts +3 -0
- package/dist/collapsible/index.d.mts +7 -0
- package/dist/collapsible/index.js +1 -1
- package/dist/collapsible/index.js.map +1 -1
- package/dist/collapsible/index.mjs +38 -213
- package/dist/collapsible/index.mjs.map +1 -1
- package/dist/combobox/index.d.mts +35 -0
- package/dist/combobox/index.js +1 -1
- package/dist/combobox/index.js.map +1 -1
- package/dist/combobox/index.mjs +7 -7
- package/dist/combobox/utils/index.d.mts +14 -0
- package/dist/dialog/Dialog.d.ts +13 -13
- package/dist/dialog/DialogClose.d.ts +9 -8
- package/dist/dialog/DialogContent.d.ts +4 -4
- package/dist/dialog/DialogDescription.d.ts +3 -3
- package/dist/dialog/DialogOverlay.d.ts +5 -5
- package/dist/dialog/DialogPortal.d.ts +4 -4
- package/dist/dialog/DialogTitle.d.ts +3 -3
- package/dist/dialog/DialogTrigger.d.ts +5 -9
- package/dist/dialog/index.d.mts +37 -0
- package/dist/dialog/index.js +1 -1
- package/dist/dialog/index.js.map +1 -1
- package/dist/dialog/index.mjs +149 -159
- package/dist/dialog/index.mjs.map +1 -1
- package/dist/divider/index.d.mts +6 -0
- package/dist/divider/index.js +1 -1
- package/dist/divider/index.js.map +1 -1
- package/dist/divider/index.mjs +58 -76
- package/dist/divider/index.mjs.map +1 -1
- package/dist/drawer/Drawer.d.ts +12 -19
- package/dist/drawer/DrawerClose.d.ts +9 -5
- package/dist/drawer/DrawerContent.d.ts +5 -5
- package/dist/drawer/DrawerDescription.d.ts +4 -4
- package/dist/drawer/DrawerOverlay.d.ts +5 -5
- package/dist/drawer/DrawerPortal.d.ts +4 -4
- package/dist/drawer/DrawerTitle.d.ts +5 -5
- package/dist/drawer/DrawerTrigger.d.ts +5 -5
- package/dist/drawer/index.d.mts +37 -0
- package/dist/drawer/index.d.ts +2 -0
- package/dist/drawer/index.js +1 -1
- package/dist/drawer/index.js.map +1 -1
- package/dist/drawer/index.mjs +143 -114
- package/dist/drawer/index.mjs.map +1 -1
- package/dist/drawer/useRenderSlot.d.ts +3 -0
- package/dist/dropdown/index.d.mts +29 -0
- package/dist/dropdown/index.js +1 -1
- package/dist/dropdown/index.js.map +1 -1
- package/dist/dropdown/index.mjs +5 -5
- package/dist/file-upload/index.d.mts +22 -0
- package/dist/file-upload/index.js +1 -1
- package/dist/file-upload/index.js.map +1 -1
- package/dist/file-upload/index.mjs +6 -6
- package/dist/form-field/index.d.mts +31 -0
- package/dist/form-field/index.js +1 -1
- package/dist/form-field/index.js.map +1 -1
- package/dist/form-field/index.mjs +47 -47
- package/dist/icon/index.d.mts +1 -0
- package/dist/icon/index.js +1 -1
- package/dist/icon/index.mjs +1 -1
- package/dist/icon-button/index.d.mts +1 -0
- package/dist/icon-button/index.js +1 -1
- package/dist/icon-button/index.mjs +1 -1
- package/dist/input/index.d.mts +21 -0
- package/dist/input/index.js +1 -1
- package/dist/input/index.js.map +1 -1
- package/dist/input/index.mjs +4 -4
- package/dist/input-otp/index.d.mts +14 -0
- package/dist/input-otp/index.js +1 -1
- package/dist/input-otp/index.js.map +1 -1
- package/dist/input-otp/index.mjs +139 -137
- package/dist/input-otp/index.mjs.map +1 -1
- package/dist/kbd/index.d.mts +1 -0
- package/dist/label/index.d.mts +7 -0
- package/dist/label/index.js +1 -1
- package/dist/label/index.js.map +1 -1
- package/dist/label/index.mjs +37 -2
- package/dist/label/index.mjs.map +1 -1
- package/dist/link-box/index.d.mts +9 -0
- package/dist/link-box/index.js +1 -1
- package/dist/link-box/index.js.map +1 -1
- package/dist/link-box/index.mjs +7 -7
- package/dist/pagination/index.d.mts +18 -0
- package/dist/pagination/index.js +1 -1
- package/dist/pagination/index.js.map +1 -1
- package/dist/pagination/index.mjs +126 -844
- package/dist/pagination/index.mjs.map +1 -1
- package/dist/popover/index.d.mts +17 -0
- package/dist/popover/index.js +1 -1
- package/dist/popover/index.js.map +1 -1
- package/dist/popover/index.mjs +119 -1748
- package/dist/popover/index.mjs.map +1 -1
- package/dist/portal/index.d.mts +1 -0
- package/dist/portal/index.js +1 -1
- package/dist/portal/index.js.map +1 -1
- package/dist/portal/index.mjs +3 -3
- package/dist/portal/index.mjs.map +1 -1
- package/dist/progress/index.d.mts +13 -0
- package/dist/progress/index.js +1 -6
- package/dist/progress/index.js.map +1 -1
- package/dist/progress/index.mjs +87 -162
- package/dist/progress/index.mjs.map +1 -1
- package/dist/progress-tracker/index.d.mts +10 -0
- package/dist/progress-tracker/index.js +1 -1
- package/dist/progress-tracker/index.js.map +1 -1
- package/dist/progress-tracker/index.mjs +14 -14
- package/dist/radio-group/index.d.mts +7 -0
- package/dist/radio-group/index.js +1 -1
- package/dist/radio-group/index.js.map +1 -1
- package/dist/radio-group/index.mjs +85 -312
- package/dist/radio-group/index.mjs.map +1 -1
- package/dist/rating/index.d.mts +1 -0
- package/dist/rating/index.js +1 -1
- package/dist/rating/index.js.map +1 -1
- package/dist/rating/index.mjs +11 -11
- package/dist/scrolling-list/index.d.mts +15 -0
- package/dist/scrolling-list/index.js +1 -1
- package/dist/scrolling-list/index.js.map +1 -1
- package/dist/scrolling-list/index.mjs +168 -333
- package/dist/scrolling-list/index.mjs.map +1 -1
- package/dist/segmented-gauge/index.d.mts +13 -0
- package/dist/segmented-gauge/index.js +1 -1
- package/dist/segmented-gauge/index.js.map +1 -1
- package/dist/segmented-gauge/index.mjs +1 -1
- package/dist/select/index.d.mts +21 -0
- package/dist/select/index.js +1 -1
- package/dist/select/index.js.map +1 -1
- package/dist/select/index.mjs +21 -21
- package/dist/skeleton/index.d.mts +8 -0
- package/dist/skeleton/index.js +1 -1
- package/dist/skeleton/index.js.map +1 -1
- package/dist/skeleton/index.mjs +2 -2
- package/dist/slider/Slider.d.ts +6 -1
- package/dist/slider/SliderContext.d.ts +4 -1
- package/dist/slider/index.d.mts +8 -0
- package/dist/slider/index.js +1 -1
- package/dist/slider/index.js.map +1 -1
- package/dist/slider/index.mjs +96 -496
- package/dist/slider/index.mjs.map +1 -1
- package/dist/slot/index.d.mts +1 -0
- package/dist/slot/index.js +1 -1
- package/dist/slot/index.mjs +1 -1
- package/dist/snackbar/index.d.mts +13 -0
- package/dist/snackbar/index.js +1 -1
- package/dist/snackbar/index.js.map +1 -1
- package/dist/snackbar/index.mjs +189 -1105
- package/dist/snackbar/index.mjs.map +1 -1
- package/dist/spinner/index.d.mts +1 -0
- package/dist/spinner/index.js +1 -1
- package/dist/spinner/index.mjs +1 -1
- package/dist/stepper/index.d.mts +9 -0
- package/dist/stepper/index.js +1 -7
- package/dist/stepper/index.js.map +1 -1
- package/dist/stepper/index.mjs +137 -2317
- package/dist/stepper/index.mjs.map +1 -1
- package/dist/switch/index.d.mts +1 -0
- package/dist/switch/index.js +1 -1
- package/dist/switch/index.js.map +1 -1
- package/dist/switch/index.mjs +85 -208
- package/dist/switch/index.mjs.map +1 -1
- package/dist/tabs/index.d.mts +13 -0
- package/dist/tabs/index.js +1 -1
- package/dist/tabs/index.js.map +1 -1
- package/dist/tabs/index.mjs +179 -329
- package/dist/tabs/index.mjs.map +1 -1
- package/dist/tag/index.d.mts +1 -0
- package/dist/tag/index.js +1 -1
- package/dist/tag/index.js.map +1 -1
- package/dist/tag/index.mjs +2 -2
- package/dist/tag/variants/index.d.mts +3 -0
- package/dist/text-link/index.d.mts +1 -0
- package/dist/text-link/index.js +1 -1
- package/dist/text-link/index.mjs +1 -1
- package/dist/textarea/index.d.mts +14 -0
- package/dist/textarea/index.js +1 -1
- package/dist/textarea/index.js.map +1 -1
- package/dist/textarea/index.mjs +6 -6
- package/dist/toast/index.d.mts +20 -0
- package/dist/toast/index.js +1 -1
- package/dist/toast/index.js.map +1 -1
- package/dist/toast/index.mjs +146 -1008
- package/dist/toast/index.mjs.map +1 -1
- package/dist/useRenderSlot-DATwjgpo.js +2 -0
- package/dist/useRenderSlot-DATwjgpo.js.map +1 -0
- package/dist/useRenderSlot-LwWj8QbC.mjs +10 -0
- package/dist/useRenderSlot-LwWj8QbC.mjs.map +1 -0
- package/dist/visually-hidden/index.d.mts +1 -0
- package/dist/visually-hidden/index.js +1 -1
- package/dist/visually-hidden/index.mjs +1 -1
- package/package.json +7 -6
- package/dist/Button-C3xHNaGl.js +0 -2
- package/dist/DialogContent.styles-BrhKaHc_.js +0 -2
- package/dist/DialogContent.styles-BrhKaHc_.js.map +0 -1
- package/dist/DialogContent.styles-WGWJS9dj.mjs +0 -48
- package/dist/DialogContent.styles-WGWJS9dj.mjs.map +0 -1
- package/dist/Icon-Bf0XrmiR.js +0 -2
- package/dist/IconButton-Bf-EDzpI.js +0 -2
- package/dist/Slot-C98rL4yy.mjs +0 -14
- package/dist/Slot-ghrohQLA.js +0 -2
- package/dist/Spinner-DK8VEsaR.js +0 -2
- package/dist/TextLink-DD0VO37q.js +0 -2
- package/dist/composite-Br3kM5N9.mjs +0 -40
- package/dist/composite-Br3kM5N9.mjs.map +0 -1
- package/dist/composite-fJD9R7R0.js +0 -2
- package/dist/composite-fJD9R7R0.js.map +0 -1
- package/dist/detectBrowser-Bc7rk5fI.mjs +0 -44
- package/dist/detectBrowser-Bc7rk5fI.mjs.map +0 -1
- package/dist/detectBrowser-DTbs_30X.js +0 -2
- package/dist/detectBrowser-DTbs_30X.js.map +0 -1
- package/dist/downshift.esm-Ncwetv0s.mjs +0 -3038
- package/dist/downshift.esm-Ncwetv0s.mjs.map +0 -1
- package/dist/downshift.esm-PfCOUbxq.js +0 -37
- package/dist/downshift.esm-PfCOUbxq.js.map +0 -1
- package/dist/floating-ui.utils.dom-CCN4I08l.js +0 -2
- package/dist/floating-ui.utils.dom-CCN4I08l.js.map +0 -1
- package/dist/floating-ui.utils.dom-uiDUZc_y.mjs +0 -136
- package/dist/floating-ui.utils.dom-uiDUZc_y.mjs.map +0 -1
- package/dist/index-0KYGKeVg.js +0 -2
- package/dist/index-0KYGKeVg.js.map +0 -1
- package/dist/index-1WIgmEZh.js +0 -2
- package/dist/index-1WIgmEZh.js.map +0 -1
- package/dist/index-BRi38DTc.mjs +0 -21
- package/dist/index-BRi38DTc.mjs.map +0 -1
- package/dist/index-BZAtNKwE.mjs +0 -71
- package/dist/index-BZAtNKwE.mjs.map +0 -1
- package/dist/index-BZPx6jYI.mjs +0 -9
- package/dist/index-BZPx6jYI.mjs.map +0 -1
- package/dist/index-BlkdpEIe.mjs +0 -55
- package/dist/index-BlkdpEIe.mjs.map +0 -1
- package/dist/index-BmAFn37q.mjs +0 -49
- package/dist/index-BmAFn37q.mjs.map +0 -1
- package/dist/index-C-J_tHdS.js +0 -6
- package/dist/index-C-J_tHdS.js.map +0 -1
- package/dist/index-C1qb0595.mjs +0 -28
- package/dist/index-C1qb0595.mjs.map +0 -1
- package/dist/index-C34GgsKQ.mjs +0 -54
- package/dist/index-C34GgsKQ.mjs.map +0 -1
- package/dist/index-CCKe-Mpx.mjs +0 -7
- package/dist/index-CCKe-Mpx.mjs.map +0 -1
- package/dist/index-CDBBjNXc.js +0 -2
- package/dist/index-CDBBjNXc.js.map +0 -1
- package/dist/index-CYjGhVvU.mjs +0 -243
- package/dist/index-CYjGhVvU.mjs.map +0 -1
- package/dist/index-ChLwd62c.js +0 -2
- package/dist/index-ChLwd62c.js.map +0 -1
- package/dist/index-Cjj_rUPu.js +0 -2
- package/dist/index-Cjj_rUPu.js.map +0 -1
- package/dist/index-CyMbLkj0.js +0 -2
- package/dist/index-CyMbLkj0.js.map +0 -1
- package/dist/index-DFZozV_h.mjs +0 -69
- package/dist/index-DFZozV_h.mjs.map +0 -1
- package/dist/index-DKuHkHFX.js +0 -2
- package/dist/index-DKuHkHFX.js.map +0 -1
- package/dist/index-DLHLIYPI.mjs +0 -16
- package/dist/index-DLHLIYPI.mjs.map +0 -1
- package/dist/index-DO-atGp-.js +0 -2
- package/dist/index-DO-atGp-.js.map +0 -1
- package/dist/index-DWlg8lkk.mjs +0 -179
- package/dist/index-DWlg8lkk.mjs.map +0 -1
- package/dist/index-DYxWvftI.js +0 -2
- package/dist/index-DYxWvftI.js.map +0 -1
- package/dist/index-D_lWkK39.mjs +0 -803
- package/dist/index-D_lWkK39.mjs.map +0 -1
- package/dist/index-DdkVj7D0.js +0 -18
- package/dist/index-DdkVj7D0.js.map +0 -1
- package/dist/index-De-6atSi.js +0 -2
- package/dist/index-De-6atSi.js.map +0 -1
- package/dist/index-DhGWNzsz.mjs +0 -83
- package/dist/index-DhGWNzsz.mjs.map +0 -1
- package/dist/index-Dkj4QRX8.js +0 -2
- package/dist/index-Dkj4QRX8.js.map +0 -1
- package/dist/index-DlIFg0Eu.mjs +0 -60
- package/dist/index-DlIFg0Eu.mjs.map +0 -1
- package/dist/index-DnaHaH_0.js +0 -2
- package/dist/index-DnaHaH_0.js.map +0 -1
- package/dist/index-MHF2-CYX.js +0 -2
- package/dist/index-MHF2-CYX.js.map +0 -1
- package/dist/index-MQ0c3ZX_.js +0 -2
- package/dist/index-MQ0c3ZX_.js.map +0 -1
- package/dist/index-MSR-vgWR.mjs +0 -37
- package/dist/index-MSR-vgWR.mjs.map +0 -1
- package/dist/index-VL0YEmOW.mjs +0 -125
- package/dist/index-VL0YEmOW.mjs.map +0 -1
- package/dist/index-tXqxYME3.js +0 -42
- package/dist/index-tXqxYME3.js.map +0 -1
- package/dist/inertValue-Bif5Sqs6.mjs +0 -522
- package/dist/inertValue-Bif5Sqs6.mjs.map +0 -1
- package/dist/inertValue-ShwihJSN.js +0 -5
- package/dist/inertValue-ShwihJSN.js.map +0 -1
- package/dist/useCollapsiblePanel-D1dCo0lf.js +0 -4
- package/dist/useCollapsiblePanel-D1dCo0lf.js.map +0 -1
- package/dist/useCollapsiblePanel-kbMNl4Z4.mjs +0 -287
- package/dist/useCollapsiblePanel-kbMNl4Z4.mjs.map +0 -1
- package/dist/useFocusWithin-CFNEka2I.js +0 -2
- package/dist/useFocusWithin-CFNEka2I.js.map +0 -1
- package/dist/useFocusWithin-CoL4390f.mjs +0 -796
- package/dist/useFocusWithin-CoL4390f.mjs.map +0 -1
- package/dist/useOpenChangeComplete-Dk-u_f2y.js +0 -2
- package/dist/useOpenChangeComplete-Dk-u_f2y.js.map +0 -1
- package/dist/useOpenChangeComplete-RUbg6RBw.mjs +0 -582
- package/dist/useOpenChangeComplete-RUbg6RBw.mjs.map +0 -1
- package/dist/useTransitionStatus-CktVVKxz.mjs +0 -46
- package/dist/useTransitionStatus-CktVVKxz.mjs.map +0 -1
- package/dist/useTransitionStatus-CqbEyvIj.js +0 -2
- package/dist/useTransitionStatus-CqbEyvIj.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../node_modules/@radix-ui/react-checkbox/dist/index.mjs","../../src/checkbox/CheckboxGroupContext.tsx","../../src/checkbox/CheckboxIndicator.tsx","../../src/checkbox/CheckboxInput.styles.ts","../../src/checkbox/CheckboxInput.tsx","../../src/checkbox/CheckboxLabel.styles.ts","../../src/checkbox/CheckboxLabel.tsx","../../src/checkbox/Checkbox.tsx","../../src/checkbox/CheckboxGroup.styles.ts","../../src/checkbox/CheckboxGroup.tsx"],"sourcesContent":["\"use client\";\n\n// src/checkbox.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar CHECKBOX_NAME = \"Checkbox\";\nvar [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);\nvar [CheckboxProviderImpl, useCheckboxContext] = createCheckboxContext(CHECKBOX_NAME);\nfunction CheckboxProvider(props) {\n const {\n __scopeCheckbox,\n checked: checkedProp,\n children,\n defaultChecked,\n disabled,\n form,\n name,\n onCheckedChange,\n required,\n value = \"on\",\n // @ts-expect-error\n internal_do_not_use_render\n } = props;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: CHECKBOX_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = control ? !!form || !!control.closest(\"form\") : (\n // We set this to true by default so that events bubble to forms without JS (SSR)\n true\n );\n const context = {\n checked,\n disabled,\n setChecked,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n required,\n defaultChecked: isIndeterminate(defaultChecked) ? false : defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(\n CheckboxProviderImpl,\n {\n scope: __scopeCheckbox,\n ...context,\n children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children\n }\n );\n}\nvar TRIGGER_NAME = \"CheckboxTrigger\";\nvar CheckboxTrigger = React.forwardRef(\n ({ __scopeCheckbox, onKeyDown, onClick, ...checkboxProps }, forwardedRef) => {\n const {\n control,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n isFormControl,\n bubbleInput\n } = useCheckboxContext(TRIGGER_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const form = control?.form;\n if (form) {\n const reset = () => setChecked(initialCheckedStateRef.current);\n form.addEventListener(\"reset\", reset);\n return () => form.removeEventListener(\"reset\", reset);\n }\n }, [control, setChecked]);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"checkbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...checkboxProps,\n ref: composedRefs,\n onKeyDown: composeEventHandlers(onKeyDown, (event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onClick: composeEventHandlers(onClick, (event) => {\n setChecked((prevChecked) => isIndeterminate(prevChecked) ? true : !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }\n);\nCheckboxTrigger.displayName = TRIGGER_NAME;\nvar Checkbox = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCheckbox,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...checkboxProps\n } = props;\n return /* @__PURE__ */ jsx(\n CheckboxProvider,\n {\n __scopeCheckbox,\n checked,\n defaultChecked,\n disabled,\n required,\n onCheckedChange,\n name,\n form,\n value,\n internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n CheckboxTrigger,\n {\n ...checkboxProps,\n ref: forwardedRef,\n __scopeCheckbox\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n CheckboxBubbleInput,\n {\n __scopeCheckbox\n }\n )\n ] })\n }\n );\n }\n);\nCheckbox.displayName = CHECKBOX_NAME;\nvar INDICATOR_NAME = \"CheckboxIndicator\";\nvar CheckboxIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCheckbox, forceMount, ...indicatorProps } = props;\n const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(context.checked) || context.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef,\n style: { pointerEvents: \"none\", ...props.style }\n }\n )\n }\n );\n }\n);\nCheckboxIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"CheckboxBubbleInput\";\nvar CheckboxBubbleInput = React.forwardRef(\n ({ __scopeCheckbox, ...props }, forwardedRef) => {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useCheckboxContext(BUBBLE_INPUT_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = bubbleInput;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n const bubbles = !hasConsumerStoppedPropagationRef.current;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n input.indeterminate = isIndeterminate(checked);\n setChecked.call(input, isIndeterminate(checked) ? false : checked);\n input.dispatchEvent(event);\n }\n }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);\n const defaultCheckedRef = React.useRef(isIndeterminate(checked) ? false : checked);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: defaultChecked ?? defaultCheckedRef.current,\n required,\n disabled,\n name,\n value,\n form,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0,\n // We transform because the input is absolutely positioned but we have\n // rendered it **after** the button. This pulls it back to sit on top\n // of the button.\n transform: \"translateX(-100%)\"\n }\n }\n );\n }\n);\nCheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nexport {\n Checkbox,\n CheckboxIndicator,\n CheckboxIndicator as Indicator,\n Checkbox as Root,\n createCheckboxScope,\n CheckboxBubbleInput as unstable_BubbleInput,\n CheckboxBubbleInput as unstable_CheckboxBubbleInput,\n CheckboxProvider as unstable_CheckboxProvider,\n CheckboxTrigger as unstable_CheckboxTrigger,\n CheckboxProvider as unstable_Provider,\n CheckboxTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","import { createContext, useContext } from 'react'\n\nimport { CheckboxInputStylesProps } from './CheckboxInput.styles'\n\nexport interface CheckboxGroupContextState extends Pick<CheckboxInputStylesProps, 'intent'> {\n /**\n * The id of the checkbox group.\n */\n id: string\n /**\n * The name of the group. Submitted with its owning form as part of a name/value pair.\n */\n name?: string\n /**\n * The value of the checkbox group.\n */\n value?: string[]\n /**\n * A set of ids separated by a space used to describe the input component given by a set of messages.\n */\n description?: string\n /**\n * The validation state of the checkbox group.\n */\n state?: 'error' | 'success' | 'alert'\n /**\n * If true, the checkbox group will be invalid.\n */\n isInvalid?: boolean\n /**\n * If true, the checkbox group will be required.\n */\n isRequired?: boolean\n /**\n * Callback used to update or notify the value of the checkbox group.\n */\n onCheckedChange?: (checked: boolean, changed: string) => void\n /**\n * When true, the label will be placed on the left side of the Checkbox\n */\n reverse?: boolean\n}\n\nexport const CheckboxGroupContext = createContext<Partial<CheckboxGroupContextState>>({})\n\nexport const useCheckboxGroup = () => {\n const context = useContext(CheckboxGroupContext)\n\n return context\n}\n","import { Checkbox } from 'radix-ui'\nimport { Ref } from 'react'\n\nconst CheckboxIndicatorPrimitive = Checkbox.CheckboxIndicator\n\nexport type CheckboxIndicatorProps = Checkbox.CheckboxIndicatorProps & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const CheckboxIndicator = (props: CheckboxIndicatorProps) => (\n <CheckboxIndicatorPrimitive className=\"flex size-full items-center justify-center\" {...props} />\n)\n\nCheckboxIndicator.displayName = 'CheckboxIndicator'\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const checkboxInputStyles = cva(\n [\n 'size-sz-24 shrink-0 items-center justify-center rounded-sm border-md bg-transparent',\n 'disabled:cursor-not-allowed disabled:opacity-dim-3 disabled:hover:ring-0',\n 'focus-visible:u-outline',\n 'hover:ring-4 hover:cursor-pointer',\n 'u-shadow-border-transition',\n ],\n {\n variants: {\n /**\n * Color scheme of the checkbox.\n */\n intent: makeVariants<\n 'intent',\n ['main', 'support', 'accent', 'basic', 'success', 'alert', 'error', 'info', 'neutral']\n >({\n main: [\n 'text-on-main',\n 'hover:ring-main-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-main data-[state=indeterminate]:bg-main',\n 'data-[state=checked]:border-main data-[state=checked]:bg-main',\n ],\n support: [\n 'text-on-support',\n 'hover:ring-support-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-support data-[state=indeterminate]:bg-support',\n 'data-[state=checked]:border-support data-[state=checked]:bg-support',\n ],\n accent: [\n 'text-on-accent',\n 'hover:ring-accent-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-accent data-[state=indeterminate]:bg-accent',\n 'data-[state=checked]:border-accent data-[state=checked]:bg-accent',\n ],\n basic: [\n 'text-on-basic',\n 'hover:ring-basic-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-basic data-[state=indeterminate]:bg-basic',\n 'data-[state=checked]:border-basic data-[state=checked]:bg-basic',\n ],\n success: [\n 'text-on-success',\n 'hover:ring-success-container',\n 'data-[state=unchecked]:border-success',\n 'data-[state=indeterminate]:border-success data-[state=indeterminate]:bg-success',\n 'data-[state=checked]:border-success data-[state=checked]:bg-success',\n ],\n alert: [\n 'text-on-alert',\n 'hover:ring-alert-container',\n 'data-[state=unchecked]:border-alert',\n 'data-[state=indeterminate]:border-alert data-[state=indeterminate]:bg-alert',\n 'data-[state=checked]:border-alert data-[state=checked]:bg-alert',\n ],\n error: [\n 'text-on-error',\n 'hover:ring-error-container',\n 'data-[state=unchecked]:border-error',\n 'data-[state=indeterminate]:border-error data-[state=indeterminate]:bg-error',\n 'data-[state=checked]:border-error data-[state=checked]:bg-error',\n ],\n info: [\n 'text-on-info',\n 'hover:ring-info-container',\n 'data-[state=unchecked]:border-info',\n 'data-[state=indeterminate]:border-info data-[state=indeterminate]:bg-info',\n 'data-[state=checked]:border-info data-[state=checked]:bg-info',\n ],\n neutral: [\n 'text-on-neutral',\n 'hover:ring-neutral-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-neutral data-[state=indeterminate]:bg-neutral',\n 'data-[state=checked]:border-neutral data-[state=checked]:bg-neutral',\n ],\n }),\n },\n defaultVariants: {\n intent: 'basic',\n },\n }\n)\n\nexport type CheckboxInputStylesProps = VariantProps<typeof checkboxInputStyles>\n","import { Check } from '@spark-ui/icons/Check'\nimport { Minus } from '@spark-ui/icons/Minus'\nimport { Checkbox } from 'radix-ui'\nimport { ComponentPropsWithoutRef, ReactNode, Ref } from 'react'\n\nimport { Icon } from '../icon'\nimport { CheckboxIndicator } from './CheckboxIndicator'\nimport { checkboxInputStyles, type CheckboxInputStylesProps } from './CheckboxInput.styles'\n\ntype CheckedStatus = boolean | 'indeterminate'\n\nconst CheckboxPrimitive = Checkbox.Checkbox\n\nexport interface CheckboxInputProps\n extends CheckboxInputStylesProps,\n Omit<ComponentPropsWithoutRef<'button'>, 'onChange' | 'value' | 'checked' | 'defaultChecked'> {\n /**\n * The checked icon to use.\n */\n icon?: ReactNode\n /**\n * The indeterminate icon to use.\n */\n indeterminateIcon?: ReactNode\n /**\n * The checked state of the checkbox when it is initially rendered. Use when you do not need to control its checked state.\n */\n defaultChecked?: boolean\n /**\n * The controlled checked state of the checkbox. Must be used in conjunction with onCheckedChange.\n */\n checked?: CheckedStatus\n /**\n * When true, prevents the user from interacting with the checkbox.\n */\n disabled?: boolean\n /**\n * When true, indicates that the user must check the checkbox before the owning form can be submitted.\n */\n required?: boolean\n /**\n * The name of the checkbox. Submitted with its owning form as part of a name/value pair.\n */\n name?: string\n /**\n * The value given as data when submitted with a name.\n */\n value?: string\n /**\n * Event handler called when the checked state of the checkbox changes.\n */\n onCheckedChange?: (checked: boolean) => void\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const CheckboxInput = ({\n className,\n icon = <Check />,\n indeterminateIcon = <Minus />,\n intent,\n checked,\n ref,\n ...others\n}: CheckboxInputProps) => (\n <CheckboxPrimitive\n ref={ref}\n className={checkboxInputStyles({ intent, className })}\n checked={checked}\n {...others}\n >\n <CheckboxIndicator>\n <Icon size=\"sm\">{checked === 'indeterminate' ? indeterminateIcon : icon}</Icon>\n </CheckboxIndicator>\n </CheckboxPrimitive>\n)\n\nCheckboxInput.displayName = 'CheckboxInput'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const labelStyles = cva('grow', {\n variants: {\n disabled: {\n true: ['text-neutral/dim-2', 'cursor-not-allowed'],\n false: ['cursor-pointer'],\n },\n },\n defaultVariants: {\n disabled: false,\n },\n})\n\nexport type LabelStylesProps = VariantProps<typeof labelStyles>\n","import { Label, LabelProps } from '../label'\nimport { labelStyles, type LabelStylesProps } from './CheckboxLabel.styles'\n\nexport interface CheckboxLabelProps extends LabelProps, LabelStylesProps {\n /**\n * When true, prevents the user from interacting with the checkbox item.\n */\n disabled?: boolean\n}\n\nexport const CheckboxLabel = ({ disabled, ...others }: CheckboxLabelProps) => (\n <Label className={labelStyles({ disabled })} {...others} />\n)\n\nCheckboxLabel.displayName = 'CheckboxLabel'\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { useMergeRefs } from '@spark-ui/hooks/use-merge-refs'\nimport { cx } from 'class-variance-authority'\nimport { Ref, useId, useMemo, useRef } from 'react'\n\nimport { CheckboxGroupContextState, useCheckboxGroup } from './CheckboxGroupContext'\nimport { CheckboxInput, CheckboxInputProps } from './CheckboxInput'\nimport { CheckboxLabel } from './CheckboxLabel'\n\nexport type CheckboxProps = CheckboxInputProps &\n Pick<CheckboxGroupContextState, 'reverse'> & {\n ref?: Ref<HTMLButtonElement>\n }\n\nconst ID_PREFIX = ':checkbox'\n\nexport const Checkbox = ({\n id: idProp,\n className,\n intent: intentProp,\n checked: checkedProp,\n value,\n disabled,\n reverse = false,\n onCheckedChange,\n children,\n ref: forwardedRef,\n ...others\n}: CheckboxProps) => {\n const checkboxId = `${ID_PREFIX}-${useId()}`\n const innerId = idProp || checkboxId\n\n const innerLabelId = `${ID_PREFIX}-${useId()}`\n\n const field = useFormFieldControl()\n const group = useCheckboxGroup()\n\n const rootRef = useRef<HTMLButtonElement | undefined>(null)\n const ref = useMergeRefs(forwardedRef, rootRef)\n\n const getCheckboxAttributes = ({\n fieldState,\n groupState,\n checkboxIntent,\n }: {\n fieldState: ReturnType<typeof useFormFieldControl>\n groupState: ReturnType<typeof useCheckboxGroup>\n checkboxIntent: CheckboxInputProps['intent']\n }) => {\n const name = fieldState.name ?? groupState.name\n const isRequired = fieldState.isRequired ?? groupState.isRequired\n const state = fieldState.state ?? groupState.state\n const isInvalid = fieldState.isInvalid ?? groupState.isInvalid\n\n const isFieldEnclosed = fieldState.id !== groupState.id\n const id = isFieldEnclosed ? fieldState.id : undefined\n const description = isFieldEnclosed ? fieldState.description : undefined\n\n const intent = state ?? checkboxIntent ?? groupState.intent\n\n return { name, isRequired, isInvalid, id, description, intent }\n }\n\n const checked = value ? group.value?.includes(value) : checkedProp\n\n const handleCheckedChange = (isChecked: boolean) => {\n onCheckedChange?.(isChecked)\n\n const rootRefValue = rootRef.current?.value\n if (rootRefValue && group.onCheckedChange) {\n group.onCheckedChange(isChecked, rootRefValue)\n }\n }\n\n const {\n id,\n name,\n isInvalid,\n description,\n intent,\n isRequired: isRequiredAttr,\n } = getCheckboxAttributes({\n fieldState: field,\n groupState: group,\n checkboxIntent: intentProp,\n })\n\n const isRequired = useMemo(() => {\n if (!group) return isRequiredAttr\n\n return isRequiredAttr ? !group.value?.length : false\n }, [group, isRequiredAttr])\n\n const checkboxLabel = children && (\n <CheckboxLabel disabled={disabled} htmlFor={id || innerId} id={innerLabelId}>\n {children}\n </CheckboxLabel>\n )\n\n const checkboxInput = (\n <CheckboxInput\n ref={ref}\n id={id || innerId}\n name={name}\n value={value}\n intent={intent}\n checked={checked}\n disabled={disabled}\n required={isRequired}\n aria-describedby={description}\n aria-invalid={isInvalid}\n onCheckedChange={handleCheckedChange}\n aria-labelledby={children ? innerLabelId : field.labelId}\n {...others}\n />\n )\n\n const content =\n group.reverse || reverse ? (\n <>\n {checkboxLabel}\n {checkboxInput}\n </>\n ) : (\n <>\n {checkboxInput}\n {checkboxLabel}\n </>\n )\n\n return (\n <div\n data-spark-component=\"checkbox\"\n className={cx('gap-md text-body-1 relative flex items-start', className)}\n >\n {content}\n </div>\n )\n}\n\nCheckbox.displayName = 'Checkbox'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const checkboxGroupStyles = cva(['flex'], {\n variants: {\n /**\n * Prop to set the orientation of the checkbox group which could be `vertical` or `horizontal`.\n */\n orientation: {\n vertical: ['flex-col', 'gap-lg'],\n horizontal: ['gap-xl'],\n },\n },\n})\n\nexport type CheckboxGroupStylesProps = VariantProps<typeof checkboxGroupStyles>\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { useCombinedState } from '@spark-ui/hooks/use-combined-state'\nimport { ComponentPropsWithoutRef, Ref, useEffect, useMemo, useRef } from 'react'\n\nimport { checkboxGroupStyles, CheckboxGroupStylesProps } from './CheckboxGroup.styles'\nimport { CheckboxGroupContext, CheckboxGroupContextState } from './CheckboxGroupContext'\n\nexport interface CheckboxGroupProps\n extends Omit<ComponentPropsWithoutRef<'div'>, 'value' | 'defaultValue' | 'onChange'>,\n CheckboxGroupStylesProps,\n Pick<CheckboxGroupContextState, 'intent' | 'name' | 'value' | 'reverse'> {\n /**\n * The initial value of the checkbox group\n */\n defaultValue?: string[]\n /**\n * The callback fired when any children Checkbox is checked or unchecked\n */\n onCheckedChange?: (value: string[]) => void\n ref?: Ref<HTMLDivElement>\n}\n\nexport const CheckboxGroup = ({\n name: nameProp,\n value: valueProp,\n defaultValue,\n className,\n intent,\n orientation = 'vertical',\n onCheckedChange: onCheckedChangeProp,\n reverse = false,\n children,\n ref,\n ...others\n}: CheckboxGroupProps) => {\n const [value, setValue] = useCombinedState(valueProp, defaultValue)\n const field = useFormFieldControl()\n const onCheckedChangeRef = useRef(onCheckedChangeProp)\n\n const { id, labelId, description, state, isInvalid, isRequired } = field\n const name = nameProp ?? field.name\n\n const current = useMemo(() => {\n const handleCheckedChange = (checked: boolean, changed: string) => {\n const values = value || []\n const modified = checked ? [...values, changed] : values.filter(val => val !== changed)\n\n setValue(modified)\n\n if (onCheckedChangeRef.current) {\n onCheckedChangeRef.current(modified)\n }\n }\n\n return {\n id,\n name,\n value,\n intent,\n state,\n isInvalid,\n description,\n isRequired,\n reverse,\n onCheckedChange: handleCheckedChange,\n }\n }, [id, name, value, intent, state, isInvalid, description, isRequired, setValue, reverse])\n\n useEffect(() => {\n onCheckedChangeRef.current = onCheckedChangeProp\n }, [onCheckedChangeProp])\n\n return (\n <CheckboxGroupContext.Provider value={current}>\n <div\n ref={ref}\n className={checkboxGroupStyles({ className, orientation })}\n role=\"group\"\n aria-labelledby={labelId}\n aria-describedby={description}\n {...others}\n >\n {children}\n </div>\n </CheckboxGroupContext.Provider>\n )\n}\n\nCheckboxGroup.displayName = 'CheckboxGroup'\n"],"names":["CHECKBOX_NAME","createCheckboxContext","createContextScope","CheckboxProviderImpl","useCheckboxContext","CheckboxProvider","props","__scopeCheckbox","checkedProp","children","defaultChecked","disabled","form","name","onCheckedChange","required","value","internal_do_not_use_render","checked","setChecked","useControllableState","control","setControl","React","bubbleInput","setBubbleInput","hasConsumerStoppedPropagationRef","isFormControl","context","isIndeterminate","jsx","isFunction","TRIGGER_NAME","CheckboxTrigger","onKeyDown","onClick","checkboxProps","forwardedRef","composedRefs","useComposedRefs","initialCheckedStateRef","reset","Primitive","getState","composeEventHandlers","event","prevChecked","Checkbox","jsxs","Fragment","CheckboxBubbleInput","INDICATOR_NAME","CheckboxIndicator","forceMount","indicatorProps","Presence","BUBBLE_INPUT_NAME","usePrevious","controlSize","useSize","input","inputProto","bubbles","defaultCheckedRef","CheckboxGroupContext","createContext","useCheckboxGroup","useContext","CheckboxIndicatorPrimitive","Checkbox.CheckboxIndicator","checkboxInputStyles","cva","makeVariants","CheckboxPrimitive","Checkbox.Checkbox","CheckboxInput","className","icon","Check","indeterminateIcon","Minus","intent","ref","others","Icon","labelStyles","CheckboxLabel","Label","ID_PREFIX","idProp","intentProp","reverse","checkboxId","useId","innerId","innerLabelId","field","useFormFieldControl","group","rootRef","useRef","useMergeRefs","getCheckboxAttributes","fieldState","groupState","checkboxIntent","isRequired","state","isInvalid","isFieldEnclosed","id","description","handleCheckedChange","isChecked","rootRefValue","isRequiredAttr","useMemo","checkboxLabel","checkboxInput","content","cx","checkboxGroupStyles","CheckboxGroup","nameProp","valueProp","defaultValue","orientation","onCheckedChangeProp","setValue","useCombinedState","onCheckedChangeRef","labelId","current","changed","values","modified","val","useEffect"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/checkbox/CheckboxGroupContext.tsx","../../src/checkbox/CheckboxIndicator.tsx","../../src/checkbox/CheckboxInput.styles.ts","../../src/checkbox/CheckboxInput.tsx","../../src/checkbox/CheckboxLabel.styles.ts","../../src/checkbox/CheckboxLabel.tsx","../../src/checkbox/Checkbox.tsx","../../src/checkbox/CheckboxGroup.styles.ts","../../src/checkbox/CheckboxGroup.tsx"],"sourcesContent":["import { createContext, useContext } from 'react'\n\nimport { CheckboxInputStylesProps } from './CheckboxInput.styles'\n\nexport interface CheckboxGroupContextState extends Pick<CheckboxInputStylesProps, 'intent'> {\n /**\n * The id of the checkbox group.\n */\n id: string\n /**\n * The name of the group. Submitted with its owning form as part of a name/value pair.\n */\n name?: string\n /**\n * The value of the checkbox group.\n */\n value?: string[]\n /**\n * A set of ids separated by a space used to describe the input component given by a set of messages.\n */\n description?: string\n /**\n * The validation state of the checkbox group.\n */\n state?: 'error' | 'success' | 'alert'\n /**\n * If true, the checkbox group will be invalid.\n */\n isInvalid?: boolean\n /**\n * If true, the checkbox group will be required.\n */\n isRequired?: boolean\n /**\n * Callback used to update or notify the value of the checkbox group.\n */\n onCheckedChange?: (checked: boolean, changed: string) => void\n /**\n * When true, the label will be placed on the left side of the Checkbox\n */\n reverse?: boolean\n}\n\nexport const CheckboxGroupContext = createContext<Partial<CheckboxGroupContextState>>({})\n\nexport const useCheckboxGroup = () => {\n const context = useContext(CheckboxGroupContext)\n\n return context\n}\n","import { Checkbox } from 'radix-ui'\nimport { Ref } from 'react'\n\nconst CheckboxIndicatorPrimitive = Checkbox.CheckboxIndicator\n\nexport type CheckboxIndicatorProps = Checkbox.CheckboxIndicatorProps & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const CheckboxIndicator = (props: CheckboxIndicatorProps) => (\n <CheckboxIndicatorPrimitive className=\"flex size-full items-center justify-center\" {...props} />\n)\n\nCheckboxIndicator.displayName = 'CheckboxIndicator'\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const checkboxInputStyles = cva(\n [\n 'size-sz-24 shrink-0 items-center justify-center rounded-sm border-md bg-transparent',\n 'disabled:cursor-not-allowed disabled:opacity-dim-3 disabled:hover:ring-0',\n 'focus-visible:u-outline',\n 'hover:ring-4 hover:cursor-pointer',\n 'u-shadow-border-transition',\n ],\n {\n variants: {\n /**\n * Color scheme of the checkbox.\n */\n intent: makeVariants<\n 'intent',\n ['main', 'support', 'accent', 'basic', 'success', 'alert', 'error', 'info', 'neutral']\n >({\n main: [\n 'text-on-main',\n 'hover:ring-main-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-main data-[state=indeterminate]:bg-main',\n 'data-[state=checked]:border-main data-[state=checked]:bg-main',\n ],\n support: [\n 'text-on-support',\n 'hover:ring-support-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-support data-[state=indeterminate]:bg-support',\n 'data-[state=checked]:border-support data-[state=checked]:bg-support',\n ],\n accent: [\n 'text-on-accent',\n 'hover:ring-accent-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-accent data-[state=indeterminate]:bg-accent',\n 'data-[state=checked]:border-accent data-[state=checked]:bg-accent',\n ],\n basic: [\n 'text-on-basic',\n 'hover:ring-basic-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-basic data-[state=indeterminate]:bg-basic',\n 'data-[state=checked]:border-basic data-[state=checked]:bg-basic',\n ],\n success: [\n 'text-on-success',\n 'hover:ring-success-container',\n 'data-[state=unchecked]:border-success',\n 'data-[state=indeterminate]:border-success data-[state=indeterminate]:bg-success',\n 'data-[state=checked]:border-success data-[state=checked]:bg-success',\n ],\n alert: [\n 'text-on-alert',\n 'hover:ring-alert-container',\n 'data-[state=unchecked]:border-alert',\n 'data-[state=indeterminate]:border-alert data-[state=indeterminate]:bg-alert',\n 'data-[state=checked]:border-alert data-[state=checked]:bg-alert',\n ],\n error: [\n 'text-on-error',\n 'hover:ring-error-container',\n 'data-[state=unchecked]:border-error',\n 'data-[state=indeterminate]:border-error data-[state=indeterminate]:bg-error',\n 'data-[state=checked]:border-error data-[state=checked]:bg-error',\n ],\n info: [\n 'text-on-info',\n 'hover:ring-info-container',\n 'data-[state=unchecked]:border-info',\n 'data-[state=indeterminate]:border-info data-[state=indeterminate]:bg-info',\n 'data-[state=checked]:border-info data-[state=checked]:bg-info',\n ],\n neutral: [\n 'text-on-neutral',\n 'hover:ring-neutral-container',\n 'data-[state=unchecked]:border-outline',\n 'data-[state=indeterminate]:border-neutral data-[state=indeterminate]:bg-neutral',\n 'data-[state=checked]:border-neutral data-[state=checked]:bg-neutral',\n ],\n }),\n },\n defaultVariants: {\n intent: 'basic',\n },\n }\n)\n\nexport type CheckboxInputStylesProps = VariantProps<typeof checkboxInputStyles>\n","import { Check } from '@spark-ui/icons/Check'\nimport { Minus } from '@spark-ui/icons/Minus'\nimport { Checkbox } from 'radix-ui'\nimport { ComponentPropsWithoutRef, ReactNode, Ref } from 'react'\n\nimport { Icon } from '../icon'\nimport { CheckboxIndicator } from './CheckboxIndicator'\nimport { checkboxInputStyles, type CheckboxInputStylesProps } from './CheckboxInput.styles'\n\ntype CheckedStatus = boolean | 'indeterminate'\n\nconst CheckboxPrimitive = Checkbox.Checkbox\n\nexport interface CheckboxInputProps\n extends CheckboxInputStylesProps,\n Omit<ComponentPropsWithoutRef<'button'>, 'onChange' | 'value' | 'checked' | 'defaultChecked'> {\n /**\n * The checked icon to use.\n */\n icon?: ReactNode\n /**\n * The indeterminate icon to use.\n */\n indeterminateIcon?: ReactNode\n /**\n * The checked state of the checkbox when it is initially rendered. Use when you do not need to control its checked state.\n */\n defaultChecked?: boolean\n /**\n * The controlled checked state of the checkbox. Must be used in conjunction with onCheckedChange.\n */\n checked?: CheckedStatus\n /**\n * When true, prevents the user from interacting with the checkbox.\n */\n disabled?: boolean\n /**\n * When true, indicates that the user must check the checkbox before the owning form can be submitted.\n */\n required?: boolean\n /**\n * The name of the checkbox. Submitted with its owning form as part of a name/value pair.\n */\n name?: string\n /**\n * The value given as data when submitted with a name.\n */\n value?: string\n /**\n * Event handler called when the checked state of the checkbox changes.\n */\n onCheckedChange?: (checked: boolean) => void\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const CheckboxInput = ({\n className,\n icon = <Check />,\n indeterminateIcon = <Minus />,\n intent,\n checked,\n ref,\n ...others\n}: CheckboxInputProps) => (\n <CheckboxPrimitive\n ref={ref}\n className={checkboxInputStyles({ intent, className })}\n checked={checked}\n {...others}\n >\n <CheckboxIndicator>\n <Icon size=\"sm\">{checked === 'indeterminate' ? indeterminateIcon : icon}</Icon>\n </CheckboxIndicator>\n </CheckboxPrimitive>\n)\n\nCheckboxInput.displayName = 'CheckboxInput'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const labelStyles = cva('grow', {\n variants: {\n disabled: {\n true: ['text-neutral/dim-2', 'cursor-not-allowed'],\n false: ['cursor-pointer'],\n },\n },\n defaultVariants: {\n disabled: false,\n },\n})\n\nexport type LabelStylesProps = VariantProps<typeof labelStyles>\n","import { Label, LabelProps } from '../label'\nimport { labelStyles, type LabelStylesProps } from './CheckboxLabel.styles'\n\nexport interface CheckboxLabelProps extends LabelProps, LabelStylesProps {\n /**\n * When true, prevents the user from interacting with the checkbox item.\n */\n disabled?: boolean\n}\n\nexport const CheckboxLabel = ({ disabled, ...others }: CheckboxLabelProps) => (\n <Label className={labelStyles({ disabled })} {...others} />\n)\n\nCheckboxLabel.displayName = 'CheckboxLabel'\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { useMergeRefs } from '@spark-ui/hooks/use-merge-refs'\nimport { cx } from 'class-variance-authority'\nimport { Ref, useId, useMemo, useRef } from 'react'\n\nimport { CheckboxGroupContextState, useCheckboxGroup } from './CheckboxGroupContext'\nimport { CheckboxInput, CheckboxInputProps } from './CheckboxInput'\nimport { CheckboxLabel } from './CheckboxLabel'\n\nexport type CheckboxProps = CheckboxInputProps &\n Pick<CheckboxGroupContextState, 'reverse'> & {\n ref?: Ref<HTMLButtonElement>\n }\n\nconst ID_PREFIX = ':checkbox'\n\nexport const Checkbox = ({\n id: idProp,\n className,\n intent: intentProp,\n checked: checkedProp,\n value,\n disabled,\n reverse = false,\n onCheckedChange,\n children,\n ref: forwardedRef,\n ...others\n}: CheckboxProps) => {\n const checkboxId = `${ID_PREFIX}-${useId()}`\n const innerId = idProp || checkboxId\n\n const innerLabelId = `${ID_PREFIX}-${useId()}`\n\n const field = useFormFieldControl()\n const group = useCheckboxGroup()\n\n const rootRef = useRef<HTMLButtonElement | undefined>(null)\n const ref = useMergeRefs(forwardedRef, rootRef)\n\n const getCheckboxAttributes = ({\n fieldState,\n groupState,\n checkboxIntent,\n }: {\n fieldState: ReturnType<typeof useFormFieldControl>\n groupState: ReturnType<typeof useCheckboxGroup>\n checkboxIntent: CheckboxInputProps['intent']\n }) => {\n const name = fieldState.name ?? groupState.name\n const isRequired = fieldState.isRequired ?? groupState.isRequired\n const state = fieldState.state ?? groupState.state\n const isInvalid = fieldState.isInvalid ?? groupState.isInvalid\n\n const isFieldEnclosed = fieldState.id !== groupState.id\n const id = isFieldEnclosed ? fieldState.id : undefined\n const description = isFieldEnclosed ? fieldState.description : undefined\n\n const intent = state ?? checkboxIntent ?? groupState.intent\n\n return { name, isRequired, isInvalid, id, description, intent }\n }\n\n const checked = value ? group.value?.includes(value) : checkedProp\n\n const handleCheckedChange = (isChecked: boolean) => {\n onCheckedChange?.(isChecked)\n\n const rootRefValue = rootRef.current?.value\n if (rootRefValue && group.onCheckedChange) {\n group.onCheckedChange(isChecked, rootRefValue)\n }\n }\n\n const {\n id,\n name,\n isInvalid,\n description,\n intent,\n isRequired: isRequiredAttr,\n } = getCheckboxAttributes({\n fieldState: field,\n groupState: group,\n checkboxIntent: intentProp,\n })\n\n const isRequired = useMemo(() => {\n if (!group) return isRequiredAttr\n\n return isRequiredAttr ? !group.value?.length : false\n }, [group, isRequiredAttr])\n\n const checkboxLabel = children && (\n <CheckboxLabel disabled={disabled} htmlFor={id || innerId} id={innerLabelId}>\n {children}\n </CheckboxLabel>\n )\n\n const checkboxInput = (\n <CheckboxInput\n ref={ref}\n id={id || innerId}\n name={name}\n value={value}\n intent={intent}\n checked={checked}\n disabled={disabled}\n required={isRequired}\n aria-describedby={description}\n aria-invalid={isInvalid}\n onCheckedChange={handleCheckedChange}\n aria-labelledby={children ? innerLabelId : field.labelId}\n {...others}\n />\n )\n\n const content =\n group.reverse || reverse ? (\n <>\n {checkboxLabel}\n {checkboxInput}\n </>\n ) : (\n <>\n {checkboxInput}\n {checkboxLabel}\n </>\n )\n\n return (\n <div\n data-spark-component=\"checkbox\"\n className={cx('gap-md text-body-1 relative flex items-start', className)}\n >\n {content}\n </div>\n )\n}\n\nCheckbox.displayName = 'Checkbox'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const checkboxGroupStyles = cva(['flex'], {\n variants: {\n /**\n * Prop to set the orientation of the checkbox group which could be `vertical` or `horizontal`.\n */\n orientation: {\n vertical: ['flex-col', 'gap-lg'],\n horizontal: ['gap-xl'],\n },\n },\n})\n\nexport type CheckboxGroupStylesProps = VariantProps<typeof checkboxGroupStyles>\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { useCombinedState } from '@spark-ui/hooks/use-combined-state'\nimport { ComponentPropsWithoutRef, Ref, useEffect, useMemo, useRef } from 'react'\n\nimport { checkboxGroupStyles, CheckboxGroupStylesProps } from './CheckboxGroup.styles'\nimport { CheckboxGroupContext, CheckboxGroupContextState } from './CheckboxGroupContext'\n\nexport interface CheckboxGroupProps\n extends Omit<ComponentPropsWithoutRef<'div'>, 'value' | 'defaultValue' | 'onChange'>,\n CheckboxGroupStylesProps,\n Pick<CheckboxGroupContextState, 'intent' | 'name' | 'value' | 'reverse'> {\n /**\n * The initial value of the checkbox group\n */\n defaultValue?: string[]\n /**\n * The callback fired when any children Checkbox is checked or unchecked\n */\n onCheckedChange?: (value: string[]) => void\n ref?: Ref<HTMLDivElement>\n}\n\nexport const CheckboxGroup = ({\n name: nameProp,\n value: valueProp,\n defaultValue,\n className,\n intent,\n orientation = 'vertical',\n onCheckedChange: onCheckedChangeProp,\n reverse = false,\n children,\n ref,\n ...others\n}: CheckboxGroupProps) => {\n const [value, setValue] = useCombinedState(valueProp, defaultValue)\n const field = useFormFieldControl()\n const onCheckedChangeRef = useRef(onCheckedChangeProp)\n\n const { id, labelId, description, state, isInvalid, isRequired } = field\n const name = nameProp ?? field.name\n\n const current = useMemo(() => {\n const handleCheckedChange = (checked: boolean, changed: string) => {\n const values = value || []\n const modified = checked ? [...values, changed] : values.filter(val => val !== changed)\n\n setValue(modified)\n\n if (onCheckedChangeRef.current) {\n onCheckedChangeRef.current(modified)\n }\n }\n\n return {\n id,\n name,\n value,\n intent,\n state,\n isInvalid,\n description,\n isRequired,\n reverse,\n onCheckedChange: handleCheckedChange,\n }\n }, [id, name, value, intent, state, isInvalid, description, isRequired, setValue, reverse])\n\n useEffect(() => {\n onCheckedChangeRef.current = onCheckedChangeProp\n }, [onCheckedChangeProp])\n\n return (\n <CheckboxGroupContext.Provider value={current}>\n <div\n ref={ref}\n className={checkboxGroupStyles({ className, orientation })}\n role=\"group\"\n aria-labelledby={labelId}\n aria-describedby={description}\n {...others}\n >\n {children}\n </div>\n </CheckboxGroupContext.Provider>\n )\n}\n\nCheckboxGroup.displayName = 'CheckboxGroup'\n"],"names":["CheckboxGroupContext","createContext","useCheckboxGroup","useContext","CheckboxIndicatorPrimitive","Checkbox","CheckboxIndicator","props","jsx","checkboxInputStyles","cva","makeVariants","CheckboxPrimitive","CheckboxInput","className","icon","Check","indeterminateIcon","Minus","intent","checked","ref","others","Icon","labelStyles","CheckboxLabel","disabled","Label","ID_PREFIX","idProp","intentProp","checkedProp","value","reverse","onCheckedChange","children","forwardedRef","checkboxId","useId","innerId","innerLabelId","field","useFormFieldControl","group","rootRef","useRef","useMergeRefs","getCheckboxAttributes","fieldState","groupState","checkboxIntent","name","isRequired","state","isInvalid","isFieldEnclosed","id","description","handleCheckedChange","isChecked","rootRefValue","isRequiredAttr","useMemo","checkboxLabel","checkboxInput","content","jsxs","Fragment","cx","checkboxGroupStyles","CheckboxGroup","nameProp","valueProp","defaultValue","orientation","onCheckedChangeProp","setValue","useCombinedState","onCheckedChangeRef","labelId","current","changed","values","modified","val","useEffect"],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Chip as Root } from './Chip';
|
|
2
|
+
import { ChipClearButton } from './ChipClearButton';
|
|
3
|
+
import { ChipContent } from './ChipContent';
|
|
4
|
+
import { ChipLeadingIcon } from './ChipLeadingIcon';
|
|
5
|
+
import { ChipTrailingIcon } from './ChipTrailingIcon';
|
|
6
|
+
export declare const Chip: typeof Root & {
|
|
7
|
+
Content: typeof ChipContent;
|
|
8
|
+
LeadingIcon: typeof ChipLeadingIcon;
|
|
9
|
+
TrailingIcon: typeof ChipTrailingIcon;
|
|
10
|
+
ClearButton: typeof ChipClearButton;
|
|
11
|
+
};
|
|
12
|
+
export { type ChipClearButtonProps } from './ChipClearButton';
|
|
13
|
+
export { type ChipContentProps } from './ChipContent';
|
|
14
|
+
export { type ChipLeadingIconProps } from './ChipLeadingIcon';
|
|
15
|
+
export { type ChipTrailingIconProps } from './ChipTrailingIcon';
|
package/dist/chip/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react/jsx-runtime"),a=require("@spark-ui/internal-utils"),N=require("../index-DnaHaH_0.js"),T=require("react"),H=require("@spark-ui/hooks/use-combined-state"),O=require("../Slot-ghrohQLA.js"),M=require("@spark-ui/icons/Close"),_=require("../Icon-Bf0XrmiR.js"),W=[{design:"outlined",intent:"main",class:a.tw(["enabled:hover:bg-main/dim-5","enabled:active:bg-main/dim-5","focus-visible:bg-main/dim-5","aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1","text-main"])},{design:"outlined",intent:"support",class:a.tw(["enabled:hover:bg-support/dim-5","enabled:active:bg-support/dim-5","focus-visible:bg-support/dim-5","aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1","text-support"])},{design:"outlined",intent:"basic",class:a.tw(["enabled:hover:bg-basic/dim-5","enabled:active:bg-basic/dim-5","focus-visible:bg-basic/dim-5","aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1","text-basic"])},{intent:"accent",design:"outlined",class:a.tw(["enabled:hover:bg-accent/dim-5","enabled:active:bg-accent/dim-5","focus-visible:bg-accent/dim-5","aria-pressed:bg-accent-container","aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1","text-accent"])},{design:"outlined",intent:"success",class:a.tw(["enabled:hover:bg-success/dim-5","enabled:active:bg-success/dim-5","focus-visible:bg-success/dim-5","aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1","text-success"])},{intent:"alert",design:"outlined",class:a.tw(["enabled:hover:bg-alert/dim-5","enabled:active:bg-alert/dim-5","focus-visible:bg-alert/dim-5","aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1","text-alert"])},{design:"outlined",intent:"danger",class:a.tw(["enabled:hover:bg-error/dim-5","enabled:active:bg-error/dim-5","focus-visible:bg-error/dim-5","aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1","text-error"])},{design:"outlined",intent:"info",class:a.tw(["enabled:hover:bg-info/dim-5","enabled:active:bg-info/dim-5","focus-visible:bg-info/dim-5","aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1","text-info"])},{design:"outlined",intent:"neutral",class:a.tw(["enabled:hover:bg-neutral/dim-5","enabled:active:bg-neutral/dim-5","focus-visible:bg-neutral/dim-5","aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1","text-neutral"])},{design:"outlined",intent:"surface",class:a.tw(["enabled:hover:bg-surface/dim-5","enabled:active:bg-surface/dim-5","focus-visible:bg-surface/dim-5","aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered","text-surface"])},{design:"outlined",hasClearButton:!1,class:a.tw(["px-[calc(var(--spacing-md)-var(--border-width-sm))]"])},{design:"outlined",hasClearButton:!0,class:a.tw(["pl-[calc(var(--spacing-md)-var(--border-width-sm))]"])}],ee=[{intent:"main",design:"tinted",class:a.tw(["bg-main-container","enabled:hover:bg-main-container-hovered","enabled:active:bg-main-container-hovered","focus-visible:bg-main-container-hovered","aria-pressed:bg-main aria-pressed:text-on-main aria-pressed:enabled:hover:bg-main/dim-1","text-on-main-container"])},{intent:"support",design:"tinted",class:a.tw(["bg-support-container","enabled:hover:bg-support-container-hovered","enabled:active:bg-support-container-hovered","focus-visible:bg-support-container-hovered","aria-pressed:bg-support aria-pressed:text-on-support aria-pressed:enabled:hover:bg-support/dim-1","text-on-support-container"])},{intent:"basic",design:"tinted",class:a.tw(["bg-basic-container","enabled:hover:bg-basic-container-hovered","enabled:active:bg-basic-container-hovered","focus-visible:bg-basic-container-hovered","aria-pressed:bg-basic aria-pressed:text-on-basic aria-pressed:enabled:hover:bg-basic/dim-1","text-on-basic-container"])},{intent:"accent",design:"tinted",class:a.tw(["bg-accent-container","enabled:hover:bg-accent-container-hovered","enabled:active:bg-accent-container-hovered","focus-visible:bg-accent-container-hovered","aria-pressed:bg-accent aria-pressed:text-on-accent aria-pressed:enabled:hover:bg-accent/dim-1","text-on-accent-container"])},{intent:"success",design:"tinted",class:a.tw(["bg-success-container","enabled:hover:bg-success-container-hovered","enabled:active:bg-success-container-hovered","focus-visible:bg-success-container-hovered","aria-pressed:bg-success aria-pressed:text-on-success aria-pressed:enabled:hover:bg-success/dim-1","text-on-success-container"])},{intent:"alert",design:"tinted",class:a.tw(["bg-alert-container","enabled:hover:bg-alert-container-hovered","enabled:active:bg-alert-container-hovered","focus-visible:bg-alert-container-hovered","aria-pressed:bg-alert aria-pressed:text-on-alert aria-pressed:enabled:hover:bg-alert/dim-1","text-on-alert-container"])},{intent:"danger",design:"tinted",class:a.tw(["bg-error-container","enabled:hover:bg-error-container-hovered","enabled:active:bg-error-container-hovered","focus-visible:bg-error-container-hovered","aria-pressed:bg-error aria-pressed:text-on-error aria-pressed:enabled:hover:bg-error/dim-1","text-on-error-container"])},{intent:"info",design:"tinted",class:a.tw(["bg-info-container","enabled:hover:bg-info-container-hovered","enabled:active:bg-info-container-hovered","focus-visible:bg-info-container-hovered","aria-pressed:bg-info aria-pressed:text-on-info aria-pressed:enabled:hover:bg-info/dim-1","text-on-info-container"])},{intent:"neutral",design:"tinted",class:a.tw(["bg-neutral-container","enabled:hover:bg-neutral-container-hovered","enabled:active:bg-neutral-container-hovered","focus-visible:bg-neutral-container-hovered","aria-pressed:bg-neutral aria-pressed:text-on-neutral aria-pressed:enabled:hover:bg-neutral/dim-1","text-on-neutral-container"])},{intent:"surface",design:"tinted",class:a.tw(["bg-surface/dim-1","enabled:hover:bg-surface-hovered/dim-1","enabled:active:bg-surface-hovered/dim-1","focus-visible:bg-surface-hovered/dim-1","aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered","text-on-surface/dim-1"])},{design:"tinted",hasClearButton:!1,class:a.tw(["px-md"])},{design:"tinted",hasClearButton:!0,class:a.tw(["pl-md"])}],ne=[{intent:"main",design:"dashed",class:a.tw(["enabled:hover:bg-main/dim-5","enabled:active:bg-main/dim-5","focus-visible:bg-main/dim-5","aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1","text-main"])},{intent:"support",design:"dashed",class:a.tw(["enabled:hover:bg-support/dim-5","enabled:active:bg-support/dim-5","focus-visible:bg-support/dim-5","aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1","text-support"])},{intent:"basic",design:"dashed",class:a.tw(["enabled:hover:bg-basic/dim-5","enabled:active:bg-basic/dim-5","focus-visible:bg-basic/dim-5","aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1","text-basic"])},{intent:"accent",design:"dashed",class:a.tw(["enabled:hover:bg-accent/dim-5","enabled:active:bg-accent/dim-5","focus-visible:bg-accent/dim-5","aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1","text-accent"])},{intent:"success",design:"dashed",class:a.tw(["enabled:hover:bg-success/dim-5","enabled:active:bg-success/dim-5","focus-visible:bg-success/dim-5","aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1","text-success"])},{intent:"alert",design:"dashed",class:a.tw(["enabled:hover:bg-alert/dim-5","enabled:active:bg-alert/dim-5","focus-visible:bg-alert/dim-5","aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1","text-alert"])},{intent:"danger",design:"dashed",class:a.tw(["enabled:hover:bg-error/dim-5","enabled:active:bg-error/dim-5","focus-visible:bg-error/dim-5","aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1","text-error"])},{intent:"info",design:"dashed",class:a.tw(["enabled:hover:bg-info/dim-5","enabled:active:bg-info/dim-5","focus-visible:bg-info/dim-5","aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1","text-info"])},{intent:"neutral",design:"dashed",class:a.tw(["enabled:hover:bg-neutral/dim-5","enabled:active:bg-neutral/dim-5","focus-visible:bg-neutral/dim-5","aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1","text-neutral"])},{intent:"surface",design:"dashed",class:a.tw(["enabled:hover:bg-surface/dim-5","enabled:active:bg-surface/dim-5","focus-visible:bg-surface/dim-5","aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered","text-surface"])},{design:"dashed",hasClearButton:!1,class:a.tw(["px-[calc(var(--spacing-md)-var(--border-width-sm))]"])},{design:"dashed",hasClearButton:!0,class:a.tw(["pl-[calc(var(--spacing-md)-var(--border-width-sm))]"])}],ae=N.cva(["box-border inline-flex h-sz-32 flex-nowrap items-center justify-center rounded-md text-body-1 font-regular","focus-visible:u-outline","ease-out duration-150"],{variants:{design:a.makeVariants({outlined:["bg-transparent border-sm border-solid border-current"],tinted:[""],dashed:["bg-transparent border-sm border-dashed shadow-none focus-visible:border-outline-high"]}),intent:a.makeVariants({main:[],support:[],basic:[],accent:[],success:[],alert:[],danger:[],info:[],neutral:[],surface:[]}),disabled:{true:["cursor-not-allowed","opacity-dim-3"]},hasClearButton:{true:[],false:[]}},compoundVariants:[...W,...ee,...ne],defaultVariants:{design:"outlined",intent:"basic"}}),R=T.createContext({}),te=()=>T.useContext(R)||{};var P={},D;function re(){return D||(D=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0}),r.emulateTab=void 0;var i=new Array("offsetHeight","scrollHeight","clientHeight"),s=!0,f=/text|password|search|tel|url/;function c(){var e=m()||document.body,n=B(e);return p(e,n)}r.emulateTab=c,(function(e){e.from=u,e.to=function(n,t){return t===void 0&&(t=!1),u(m()).to(n,t)},e.backwards=function(){return e.to(l(m()),s)},e.forwards=function(){return e()},e.findSelectableElements=x})(c=r.emulateTab||(r.emulateTab={}));function u(e){return e===void 0&&(e=document.body),{toPreviousElement:function(){return p(e,l(),s)},toNextElement:function(){return p(e,B(e))},to:function(n,t){return t===void 0&&(t=!1),p(e,n,t)}}}function p(e,n,t){t===void 0&&(t=!1);var o=e.dispatchEvent(g("keydown",t));if(o){if(e.blur(),n.focus(),document.activeElement!==n)try{document.activeElement=n}catch{console.warn("could not switch active element")}n instanceof HTMLInputElement&&f.test(n.type)&&(n.selectionStart=0);var d=g("keyup",t);return n.dispatchEvent(d),!0}else return e.dispatchEvent(g("keypress",t)),e.dispatchEvent(g("keyup",t)),!1}function g(e,n){return n===void 0&&(n=!1),new KeyboardEvent(e,{code:"Tab",key:"Tab",cancelable:!0,bubbles:!0,shiftKey:n})}function m(){var e=document.activeElement;return e instanceof HTMLElement?e:void 0}function l(e){e===void 0&&(e=document.body);var n=x();if(n.length<1)throw new Error("no selectable elements found");var t=n.indexOf(e),o=(t>0?t:n.length)-1,d=n[o];return d}function B(e){e===void 0&&(e=document.body);var n=x();if(n.length<1)throw new Error("no selectable elements found");var t=n.indexOf(e),o=t+1<n.length?t+1:0,d=n[o];return d}function x(){var e=Array.from(document.querySelectorAll("*")).filter(C);y();var n=e.filter(V(A,v,w,Q,X)).reduce(function(o,d){var E=d.tabIndex,q=o[""+E]||{tabIndex:E,elements:[]};return q.elements.push(d),o[E]=q,o},{}),t=Object.values(n).sort(Z).reduce(function(o,d){return o.concat(d.elements)},new Array);return t}var C=function(e){return e instanceof HTMLElement},v,y=function(){var e=h();e?v=I(e):v=k,y=function(){}},I=function(e){return function(n){var t=n[e];return!!t&&typeof t=="number"&&t>0}};function h(e){e===void 0&&(e=document.body);var n=e,t=i.find(function(K){var L=n[K];return L&&typeof L=="number"&&L>0});if(t)return t;for(var o=e.children,d=0,E=Array.from(o);d<E.length;d++){var q=E[d],z=h(q);if(z)return z}}var k=function(e){if(!e.isConnected)return!1;if(e.tagName==="BODY")return!0;var n=getComputedStyle(e);if(n.display==="none"||n.visibility==="collapse")return!1;var t=e.parentElement;return t?k(t):!1};function V(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return function(t){return!e.some(function(o){return!o(t)})}}function A(e){return typeof e.tabIndex=="number"&&e.tabIndex>=0}var w=function(e){return!e.disabled};function Q(e){return!(e instanceof HTMLAnchorElement)||!!e.href||e.getAttribute("tabIndex")!==null}var X=function(e){return getComputedStyle(e).visibility!=="collapse"};function Z(e,n){if(e.tabIndex>0&&n.tabIndex>0)return e.tabIndex-n.tabIndex;if(e.tabIndex>0)return-e.tabIndex;if(n.tabIndex>0)return n.tabIndex;throw new Error("same tab index for two groups")}})(P)),P}var F=re();const ie=r=>r?r.type.displayName:"",se=r=>(...i)=>T.Children.toArray(r).filter(T.isValidElement).find(f=>{const c=ie(f);return i.includes(c||"")}),oe=({onClick:r,asChild:i,pressed:s,defaultPressed:f,disabled:c,value:u,defaultValue:p,children:g,onClear:m})=>{const[l,B]=H.useCombinedState(s,f),[x]=H.useCombinedState(u,p),C=se(g),v=C("Chip.LeadingIcon"),y=C("Chip.TrailingIcon"),I=C("Chip.Content"),h=C("Chip.ClearButton"),k=(r||l)!==void 0,V=[v,I,h].every(w=>w===void 0)?b.jsx("span",{className:"inline-block grow truncate",children:g}):b.jsxs(b.Fragment,{children:[v,I,v===void 0?y:null,h]}),A=w=>{h&&!c&&["Delete","Backspace"].includes(w.key)&&m&&(m(),w.key==="Delete"&&F.emulateTab(),w.key==="Backspace"&&F.emulateTab.backwards())};return k?{Element:i?O.Slot:"button",chipProps:{type:"button",...l!==void 0&&{"aria-pressed":l,"data-state":l?"on":"off"},onClick:w=>{l!==void 0&&B(!l),r&&r(w,{pressed:l,value:x})},onKeyDown:A,disabled:c,children:V},compoundElements:{leadingIcon:v,trailingIcon:y,content:I,clearButton:h}}:{Element:i?O.Slot:"div",chipProps:{"aria-disabled":c,children:V,onKeyDown:A},compoundElements:{leadingIcon:v,trailingIcon:y,content:I,clearButton:h}}},G=({design:r="outlined",disabled:i,children:s,intent:f="basic",defaultPressed:c,pressed:u,asChild:p,className:g,onClick:m,onClear:l,ref:B,...x})=>{const{Element:C,chipProps:{children:v,...y},compoundElements:I}=oe({asChild:p,pressed:u,defaultPressed:c,onClick:m,disabled:!!i,value:x.value,defaultValue:x.defaultValue,children:s,onClear:l}),{clearButton:h}=I;return b.jsx(R.Provider,{value:{disabled:i,design:r,intent:f,onClear:l},children:b.jsx(C,{ref:B,className:ae({className:g,design:r,disabled:i,intent:f,hasClearButton:!!h}),...y,...x,"data-spark-component":"chip",children:v})})};G.displayName="Chip";const de=N.cva(["ml-md flex h-full items-center justify-center focus-visible:outline-hidden"],{variants:{disabled:{false:["cursor-pointer"],true:["cursor-not-allowed"]},isBordered:{false:["pr-md"],true:["pr-[7px]"]},design:{outlined:[],tinted:[],dashed:[]}},compoundVariants:[{design:"outlined",disabled:!1,class:a.tw(["hover:opacity-dim-1"])},{design:"outlined",disabled:!0,class:a.tw(["opacity-dim-3"])},{design:"tinted",disabled:!1,class:a.tw(["hover:opacity-dim-1"])},{design:"tinted",disabled:!0,class:a.tw(["opacity-dim-3"])},{design:"dashed",disabled:!1,class:a.tw(["hover:opacity-dim-1"])},{design:"dashed",disabled:!0,class:a.tw(["opacity-dim-3"])}]}),ce=N.cva(["rounded-full p-sz-2 [font-size:var(--spacing-sz-8)] border-sm","focus-visible:u-outline"],{variants:{disabled:{true:["cursor-not-allowed"],false:["cursor-pointer"]}},defaultVariants:{disabled:!1}}),$=({children:r=b.jsx(_.Icon,{children:b.jsx(M.Close,{})}),tabIndex:i=0,label:s,ref:f})=>{const{design:c,disabled:u,onClear:p}=te(),g=T.useCallback(m=>{m.stopPropagation(),!u&&p&&p(m)},[u,p]);return b.jsx("span",{className:de({isBordered:["outline","dashed"].includes(`${c}`),disabled:!!u,design:c}),onClick:g,ref:f,children:b.jsx("button",{tabIndex:i,type:"button",disabled:!!u,className:ce({disabled:u}),"aria-label":s,children:r&&T.cloneElement(r,{ariaLabel:s})})})};$.displayName="Chip.ClearButton";const U=({children:r,className:i,ref:s})=>b.jsx("span",{className:N.cx("inline-block grow truncate",i),ref:s,children:r});U.displayName="Chip.Content";const S=({children:r,className:i,ref:s})=>b.jsx("span",{className:N.cx("flex h-full items-center justify-center",i),ref:s,children:r});S.displayName="Chip.Icon";const Y=({className:r,ref:i,...s})=>b.jsx(S,{className:N.cx("mr-sm",r),ref:i,...s});Y.displayName="Chip.LeadingIcon";const J=({className:r,ref:i,...s})=>b.jsx(S,{className:N.cx("ml-md",r),ref:i,...s});J.displayName="Chip.TrailingIcon";const j=Object.assign(G,{Content:U,LeadingIcon:Y,TrailingIcon:J,ClearButton:$});j.displayName="Chip";j.ClearButton.displayName="Chip.ClearButton";j.Content.displayName="Chip.Content";j.LeadingIcon.displayName="Chip.LeadingIcon";j.TrailingIcon.displayName="Chip.TrailingIcon";exports.Chip=j;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),e=require("@spark-ui/internal-utils"),g=require("class-variance-authority"),f=require("react"),j=require("@spark-ui/hooks/use-combined-state"),V=require("emulate-tab"),k=require("../Slot-DQ8z2zsy.js"),D=require("@spark-ui/icons/Close"),A=require("../Icon-CF0W0LKr.js"),O=[{design:"outlined",intent:"main",class:e.tw(["enabled:hover:bg-main/dim-5","enabled:active:bg-main/dim-5","focus-visible:bg-main/dim-5","aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1","text-main"])},{design:"outlined",intent:"support",class:e.tw(["enabled:hover:bg-support/dim-5","enabled:active:bg-support/dim-5","focus-visible:bg-support/dim-5","aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1","text-support"])},{design:"outlined",intent:"basic",class:e.tw(["enabled:hover:bg-basic/dim-5","enabled:active:bg-basic/dim-5","focus-visible:bg-basic/dim-5","aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1","text-basic"])},{intent:"accent",design:"outlined",class:e.tw(["enabled:hover:bg-accent/dim-5","enabled:active:bg-accent/dim-5","focus-visible:bg-accent/dim-5","aria-pressed:bg-accent-container","aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1","text-accent"])},{design:"outlined",intent:"success",class:e.tw(["enabled:hover:bg-success/dim-5","enabled:active:bg-success/dim-5","focus-visible:bg-success/dim-5","aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1","text-success"])},{intent:"alert",design:"outlined",class:e.tw(["enabled:hover:bg-alert/dim-5","enabled:active:bg-alert/dim-5","focus-visible:bg-alert/dim-5","aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1","text-alert"])},{design:"outlined",intent:"danger",class:e.tw(["enabled:hover:bg-error/dim-5","enabled:active:bg-error/dim-5","focus-visible:bg-error/dim-5","aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1","text-error"])},{design:"outlined",intent:"info",class:e.tw(["enabled:hover:bg-info/dim-5","enabled:active:bg-info/dim-5","focus-visible:bg-info/dim-5","aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1","text-info"])},{design:"outlined",intent:"neutral",class:e.tw(["enabled:hover:bg-neutral/dim-5","enabled:active:bg-neutral/dim-5","focus-visible:bg-neutral/dim-5","aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1","text-neutral"])},{design:"outlined",intent:"surface",class:e.tw(["enabled:hover:bg-surface/dim-5","enabled:active:bg-surface/dim-5","focus-visible:bg-surface/dim-5","aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered","text-surface"])},{design:"outlined",hasClearButton:!1,class:e.tw(["px-[calc(var(--spacing-md)-var(--border-width-sm))]"])},{design:"outlined",hasClearButton:!0,class:e.tw(["pl-[calc(var(--spacing-md)-var(--border-width-sm))]"])}],R=[{intent:"main",design:"tinted",class:e.tw(["bg-main-container","enabled:hover:bg-main-container-hovered","enabled:active:bg-main-container-hovered","focus-visible:bg-main-container-hovered","aria-pressed:bg-main aria-pressed:text-on-main aria-pressed:enabled:hover:bg-main/dim-1","text-on-main-container"])},{intent:"support",design:"tinted",class:e.tw(["bg-support-container","enabled:hover:bg-support-container-hovered","enabled:active:bg-support-container-hovered","focus-visible:bg-support-container-hovered","aria-pressed:bg-support aria-pressed:text-on-support aria-pressed:enabled:hover:bg-support/dim-1","text-on-support-container"])},{intent:"basic",design:"tinted",class:e.tw(["bg-basic-container","enabled:hover:bg-basic-container-hovered","enabled:active:bg-basic-container-hovered","focus-visible:bg-basic-container-hovered","aria-pressed:bg-basic aria-pressed:text-on-basic aria-pressed:enabled:hover:bg-basic/dim-1","text-on-basic-container"])},{intent:"accent",design:"tinted",class:e.tw(["bg-accent-container","enabled:hover:bg-accent-container-hovered","enabled:active:bg-accent-container-hovered","focus-visible:bg-accent-container-hovered","aria-pressed:bg-accent aria-pressed:text-on-accent aria-pressed:enabled:hover:bg-accent/dim-1","text-on-accent-container"])},{intent:"success",design:"tinted",class:e.tw(["bg-success-container","enabled:hover:bg-success-container-hovered","enabled:active:bg-success-container-hovered","focus-visible:bg-success-container-hovered","aria-pressed:bg-success aria-pressed:text-on-success aria-pressed:enabled:hover:bg-success/dim-1","text-on-success-container"])},{intent:"alert",design:"tinted",class:e.tw(["bg-alert-container","enabled:hover:bg-alert-container-hovered","enabled:active:bg-alert-container-hovered","focus-visible:bg-alert-container-hovered","aria-pressed:bg-alert aria-pressed:text-on-alert aria-pressed:enabled:hover:bg-alert/dim-1","text-on-alert-container"])},{intent:"danger",design:"tinted",class:e.tw(["bg-error-container","enabled:hover:bg-error-container-hovered","enabled:active:bg-error-container-hovered","focus-visible:bg-error-container-hovered","aria-pressed:bg-error aria-pressed:text-on-error aria-pressed:enabled:hover:bg-error/dim-1","text-on-error-container"])},{intent:"info",design:"tinted",class:e.tw(["bg-info-container","enabled:hover:bg-info-container-hovered","enabled:active:bg-info-container-hovered","focus-visible:bg-info-container-hovered","aria-pressed:bg-info aria-pressed:text-on-info aria-pressed:enabled:hover:bg-info/dim-1","text-on-info-container"])},{intent:"neutral",design:"tinted",class:e.tw(["bg-neutral-container","enabled:hover:bg-neutral-container-hovered","enabled:active:bg-neutral-container-hovered","focus-visible:bg-neutral-container-hovered","aria-pressed:bg-neutral aria-pressed:text-on-neutral aria-pressed:enabled:hover:bg-neutral/dim-1","text-on-neutral-container"])},{intent:"surface",design:"tinted",class:e.tw(["bg-surface/dim-1","enabled:hover:bg-surface-hovered/dim-1","enabled:active:bg-surface-hovered/dim-1","focus-visible:bg-surface-hovered/dim-1","aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered","text-on-surface/dim-1"])},{design:"tinted",hasClearButton:!1,class:e.tw(["px-md"])},{design:"tinted",hasClearButton:!0,class:e.tw(["pl-md"])}],$=[{intent:"main",design:"dashed",class:e.tw(["enabled:hover:bg-main/dim-5","enabled:active:bg-main/dim-5","focus-visible:bg-main/dim-5","aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1","text-main"])},{intent:"support",design:"dashed",class:e.tw(["enabled:hover:bg-support/dim-5","enabled:active:bg-support/dim-5","focus-visible:bg-support/dim-5","aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1","text-support"])},{intent:"basic",design:"dashed",class:e.tw(["enabled:hover:bg-basic/dim-5","enabled:active:bg-basic/dim-5","focus-visible:bg-basic/dim-5","aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1","text-basic"])},{intent:"accent",design:"dashed",class:e.tw(["enabled:hover:bg-accent/dim-5","enabled:active:bg-accent/dim-5","focus-visible:bg-accent/dim-5","aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1","text-accent"])},{intent:"success",design:"dashed",class:e.tw(["enabled:hover:bg-success/dim-5","enabled:active:bg-success/dim-5","focus-visible:bg-success/dim-5","aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1","text-success"])},{intent:"alert",design:"dashed",class:e.tw(["enabled:hover:bg-alert/dim-5","enabled:active:bg-alert/dim-5","focus-visible:bg-alert/dim-5","aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1","text-alert"])},{intent:"danger",design:"dashed",class:e.tw(["enabled:hover:bg-error/dim-5","enabled:active:bg-error/dim-5","focus-visible:bg-error/dim-5","aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1","text-error"])},{intent:"info",design:"dashed",class:e.tw(["enabled:hover:bg-info/dim-5","enabled:active:bg-info/dim-5","focus-visible:bg-info/dim-5","aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1","text-info"])},{intent:"neutral",design:"dashed",class:e.tw(["enabled:hover:bg-neutral/dim-5","enabled:active:bg-neutral/dim-5","focus-visible:bg-neutral/dim-5","aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1","text-neutral"])},{intent:"surface",design:"dashed",class:e.tw(["enabled:hover:bg-surface/dim-5","enabled:active:bg-surface/dim-5","focus-visible:bg-surface/dim-5","aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered","text-surface"])},{design:"dashed",hasClearButton:!1,class:e.tw(["px-[calc(var(--spacing-md)-var(--border-width-sm))]"])},{design:"dashed",hasClearButton:!0,class:e.tw(["pl-[calc(var(--spacing-md)-var(--border-width-sm))]"])}],F=g.cva(["box-border inline-flex h-sz-32 flex-nowrap items-center justify-center rounded-md text-body-1 font-regular","focus-visible:u-outline","ease-out duration-150"],{variants:{design:e.makeVariants({outlined:["bg-transparent border-sm border-solid border-current"],tinted:[""],dashed:["bg-transparent border-sm border-dashed shadow-none focus-visible:border-outline-high"]}),intent:e.makeVariants({main:[],support:[],basic:[],accent:[],success:[],alert:[],danger:[],info:[],neutral:[],surface:[]}),disabled:{true:["cursor-not-allowed","opacity-dim-3"]},hasClearButton:{true:[],false:[]}},compoundVariants:[...O,...R,...$],defaultVariants:{design:"outlined",intent:"basic"}}),E=f.createContext({}),H=()=>f.useContext(E)||{},K=a=>a?a.type.displayName:"",M=a=>(...n)=>f.Children.toArray(a).filter(f.isValidElement).find(o=>{const r=K(o);return n.includes(r||"")}),U=({onClick:a,asChild:n,pressed:i,defaultPressed:o,disabled:r,value:d,defaultValue:c,children:m,onClear:l})=>{const[t,y]=j.useCombinedState(i,o),[C]=j.useCombinedState(d,c),v=M(m),b=v("Chip.LeadingIcon"),w=v("Chip.TrailingIcon"),h=v("Chip.Content"),u=v("Chip.ClearButton"),z=(a||t)!==void 0,N=[b,h,u].every(p=>p===void 0)?s.jsx("span",{className:"inline-block grow truncate",children:m}):s.jsxs(s.Fragment,{children:[b,h,b===void 0?w:null,u]}),I=p=>{u&&!r&&["Delete","Backspace"].includes(p.key)&&l&&(l(),p.key==="Delete"&&V.emulateTab(),p.key==="Backspace"&&V.emulateTab.backwards())};return z?{Element:n?k.Slot:"button",chipProps:{type:"button",...t!==void 0&&{"aria-pressed":t,"data-state":t?"on":"off"},onClick:p=>{t!==void 0&&y(!t),a&&a(p,{pressed:t,value:C})},onKeyDown:I,disabled:r,children:N},compoundElements:{leadingIcon:b,trailingIcon:w,content:h,clearButton:u}}:{Element:n?k.Slot:"div",chipProps:{"aria-disabled":r,children:N,onKeyDown:I},compoundElements:{leadingIcon:b,trailingIcon:w,content:h,clearButton:u}}},S=({design:a="outlined",disabled:n,children:i,intent:o="basic",defaultPressed:r,pressed:d,asChild:c,className:m,onClick:l,onClear:t,ref:y,...C})=>{const{Element:v,chipProps:{children:b,...w},compoundElements:h}=U({asChild:c,pressed:d,defaultPressed:r,onClick:l,disabled:!!n,value:C.value,defaultValue:C.defaultValue,children:i,onClear:t}),{clearButton:u}=h;return s.jsx(E.Provider,{value:{disabled:n,design:a,intent:o,onClear:t},children:s.jsx(v,{ref:y,className:F({className:m,design:a,disabled:n,intent:o,hasClearButton:!!u}),...w,...C,"data-spark-component":"chip",children:b})})};S.displayName="Chip";const W=g.cva(["ml-md flex h-full items-center justify-center focus-visible:outline-hidden"],{variants:{disabled:{false:["cursor-pointer"],true:["cursor-not-allowed"]},isBordered:{false:["pr-md"],true:["pr-[7px]"]},design:{outlined:[],tinted:[],dashed:[]}},compoundVariants:[{design:"outlined",disabled:!1,class:e.tw(["hover:opacity-dim-1"])},{design:"outlined",disabled:!0,class:e.tw(["opacity-dim-3"])},{design:"tinted",disabled:!1,class:e.tw(["hover:opacity-dim-1"])},{design:"tinted",disabled:!0,class:e.tw(["opacity-dim-3"])},{design:"dashed",disabled:!1,class:e.tw(["hover:opacity-dim-1"])},{design:"dashed",disabled:!0,class:e.tw(["opacity-dim-3"])}]}),G=g.cva(["rounded-full p-sz-2 [font-size:var(--spacing-sz-8)] border-sm","focus-visible:u-outline"],{variants:{disabled:{true:["cursor-not-allowed"],false:["cursor-pointer"]}},defaultVariants:{disabled:!1}}),T=({children:a=s.jsx(A.Icon,{children:s.jsx(D.Close,{})}),tabIndex:n=0,label:i,ref:o})=>{const{design:r,disabled:d,onClear:c}=H(),m=f.useCallback(l=>{l.stopPropagation(),!d&&c&&c(l)},[d,c]);return s.jsx("span",{className:W({isBordered:["outline","dashed"].includes(`${r}`),disabled:!!d,design:r}),onClick:m,ref:o,children:s.jsx("button",{tabIndex:n,type:"button",disabled:!!d,className:G({disabled:d}),"aria-label":i,children:a&&f.cloneElement(a,{ariaLabel:i})})})};T.displayName="Chip.ClearButton";const q=({children:a,className:n,ref:i})=>s.jsx("span",{className:g.cx("inline-block grow truncate",n),ref:i,children:a});q.displayName="Chip.Content";const B=({children:a,className:n,ref:i})=>s.jsx("span",{className:g.cx("flex h-full items-center justify-center",n),ref:i,children:a});B.displayName="Chip.Icon";const L=({className:a,ref:n,...i})=>s.jsx(B,{className:g.cx("mr-sm",a),ref:n,...i});L.displayName="Chip.LeadingIcon";const P=({className:a,ref:n,...i})=>s.jsx(B,{className:g.cx("ml-md",a),ref:n,...i});P.displayName="Chip.TrailingIcon";const x=Object.assign(S,{Content:q,LeadingIcon:L,TrailingIcon:P,ClearButton:T});x.displayName="Chip";x.ClearButton.displayName="Chip.ClearButton";x.Content.displayName="Chip.Content";x.LeadingIcon.displayName="Chip.LeadingIcon";x.TrailingIcon.displayName="Chip.TrailingIcon";exports.Chip=x;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/chip/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/chip/variants/outlined.ts","../../src/chip/variants/tinted.ts","../../src/chip/variants/dashed.ts","../../src/chip/Chip.styles.tsx","../../src/chip/useChipContext.tsx","../../../../node_modules/emulate-tab/dist/emulate-tab.js","../../src/chip/useChipElement.tsx","../../src/chip/Chip.tsx","../../src/chip/ChipClearButton.styles.tsx","../../src/chip/ChipClearButton.tsx","../../src/chip/ChipContent.tsx","../../src/chip/ChipIcon.tsx","../../src/chip/ChipLeadingIcon.tsx","../../src/chip/ChipTrailingIcon.tsx","../../src/chip/index.ts"],"sourcesContent":["import { tw } from '@spark-ui/internal-utils'\n\nexport const outlinedVariants = [\n /** Intents **/\n {\n design: 'outlined',\n intent: 'main',\n class: tw([\n 'enabled:hover:bg-main/dim-5',\n 'enabled:active:bg-main/dim-5',\n 'focus-visible:bg-main/dim-5',\n 'aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1',\n 'text-main',\n ]),\n },\n {\n design: 'outlined',\n intent: 'support',\n class: tw([\n 'enabled:hover:bg-support/dim-5',\n 'enabled:active:bg-support/dim-5',\n 'focus-visible:bg-support/dim-5',\n 'aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1',\n 'text-support',\n ]),\n },\n {\n design: 'outlined',\n intent: 'basic',\n class: tw([\n 'enabled:hover:bg-basic/dim-5',\n 'enabled:active:bg-basic/dim-5',\n 'focus-visible:bg-basic/dim-5',\n 'aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1',\n 'text-basic',\n ]),\n },\n {\n intent: 'accent',\n design: 'outlined',\n class: tw([\n 'enabled:hover:bg-accent/dim-5',\n 'enabled:active:bg-accent/dim-5',\n 'focus-visible:bg-accent/dim-5',\n 'aria-pressed:bg-accent-container',\n 'aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1',\n 'text-accent',\n ]),\n },\n {\n design: 'outlined',\n intent: 'success',\n class: tw([\n 'enabled:hover:bg-success/dim-5',\n 'enabled:active:bg-success/dim-5',\n 'focus-visible:bg-success/dim-5',\n 'aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1',\n 'text-success',\n ]),\n },\n {\n intent: 'alert',\n design: 'outlined',\n class: tw([\n 'enabled:hover:bg-alert/dim-5',\n 'enabled:active:bg-alert/dim-5',\n 'focus-visible:bg-alert/dim-5',\n 'aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1',\n 'text-alert',\n ]),\n },\n {\n design: 'outlined',\n intent: 'danger',\n class: tw([\n 'enabled:hover:bg-error/dim-5',\n 'enabled:active:bg-error/dim-5',\n 'focus-visible:bg-error/dim-5',\n 'aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1',\n 'text-error',\n ]),\n },\n {\n design: 'outlined',\n intent: 'info',\n class: tw([\n 'enabled:hover:bg-info/dim-5',\n 'enabled:active:bg-info/dim-5',\n 'focus-visible:bg-info/dim-5',\n 'aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1',\n 'text-info',\n ]),\n },\n {\n design: 'outlined',\n intent: 'neutral',\n class: tw([\n 'enabled:hover:bg-neutral/dim-5',\n 'enabled:active:bg-neutral/dim-5',\n 'focus-visible:bg-neutral/dim-5',\n 'aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1',\n 'text-neutral',\n ]),\n },\n {\n design: 'outlined',\n intent: 'surface',\n class: tw([\n 'enabled:hover:bg-surface/dim-5',\n 'enabled:active:bg-surface/dim-5',\n 'focus-visible:bg-surface/dim-5',\n 'aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered',\n 'text-surface',\n ]),\n },\n /** Spacings **/\n {\n design: 'outlined',\n hasClearButton: false,\n class: tw(['px-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n {\n design: 'outlined',\n hasClearButton: true,\n class: tw(['pl-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n] as const\n","import { tw } from '@spark-ui/internal-utils'\n\nexport const tintedVariants = [\n /** Intents **/\n {\n intent: 'main',\n design: 'tinted',\n class: tw([\n 'bg-main-container',\n 'enabled:hover:bg-main-container-hovered',\n 'enabled:active:bg-main-container-hovered',\n 'focus-visible:bg-main-container-hovered',\n 'aria-pressed:bg-main aria-pressed:text-on-main aria-pressed:enabled:hover:bg-main/dim-1',\n 'text-on-main-container',\n ]),\n },\n {\n intent: 'support',\n design: 'tinted',\n class: tw([\n 'bg-support-container',\n 'enabled:hover:bg-support-container-hovered',\n 'enabled:active:bg-support-container-hovered',\n 'focus-visible:bg-support-container-hovered',\n 'aria-pressed:bg-support aria-pressed:text-on-support aria-pressed:enabled:hover:bg-support/dim-1',\n 'text-on-support-container',\n ]),\n },\n {\n intent: 'basic',\n design: 'tinted',\n class: tw([\n 'bg-basic-container',\n 'enabled:hover:bg-basic-container-hovered',\n 'enabled:active:bg-basic-container-hovered',\n 'focus-visible:bg-basic-container-hovered',\n 'aria-pressed:bg-basic aria-pressed:text-on-basic aria-pressed:enabled:hover:bg-basic/dim-1',\n 'text-on-basic-container',\n ]),\n },\n {\n intent: 'accent',\n design: 'tinted',\n class: tw([\n 'bg-accent-container',\n 'enabled:hover:bg-accent-container-hovered',\n 'enabled:active:bg-accent-container-hovered',\n 'focus-visible:bg-accent-container-hovered',\n 'aria-pressed:bg-accent aria-pressed:text-on-accent aria-pressed:enabled:hover:bg-accent/dim-1',\n 'text-on-accent-container',\n ]),\n },\n {\n intent: 'success',\n design: 'tinted',\n class: tw([\n 'bg-success-container',\n 'enabled:hover:bg-success-container-hovered',\n 'enabled:active:bg-success-container-hovered',\n 'focus-visible:bg-success-container-hovered',\n 'aria-pressed:bg-success aria-pressed:text-on-success aria-pressed:enabled:hover:bg-success/dim-1',\n 'text-on-success-container',\n ]),\n },\n {\n intent: 'alert',\n design: 'tinted',\n class: tw([\n 'bg-alert-container',\n 'enabled:hover:bg-alert-container-hovered',\n 'enabled:active:bg-alert-container-hovered',\n 'focus-visible:bg-alert-container-hovered',\n 'aria-pressed:bg-alert aria-pressed:text-on-alert aria-pressed:enabled:hover:bg-alert/dim-1',\n 'text-on-alert-container',\n ]),\n },\n {\n intent: 'danger',\n design: 'tinted',\n class: tw([\n 'bg-error-container',\n 'enabled:hover:bg-error-container-hovered',\n 'enabled:active:bg-error-container-hovered',\n 'focus-visible:bg-error-container-hovered',\n 'aria-pressed:bg-error aria-pressed:text-on-error aria-pressed:enabled:hover:bg-error/dim-1',\n 'text-on-error-container',\n ]),\n },\n {\n intent: 'info',\n design: 'tinted',\n class: tw([\n 'bg-info-container',\n 'enabled:hover:bg-info-container-hovered',\n 'enabled:active:bg-info-container-hovered',\n 'focus-visible:bg-info-container-hovered',\n 'aria-pressed:bg-info aria-pressed:text-on-info aria-pressed:enabled:hover:bg-info/dim-1',\n 'text-on-info-container',\n ]),\n },\n {\n intent: 'neutral',\n design: 'tinted',\n class: tw([\n 'bg-neutral-container',\n 'enabled:hover:bg-neutral-container-hovered',\n 'enabled:active:bg-neutral-container-hovered',\n 'focus-visible:bg-neutral-container-hovered',\n 'aria-pressed:bg-neutral aria-pressed:text-on-neutral aria-pressed:enabled:hover:bg-neutral/dim-1',\n 'text-on-neutral-container',\n ]),\n },\n {\n intent: 'surface',\n design: 'tinted',\n class: tw([\n 'bg-surface/dim-1',\n 'enabled:hover:bg-surface-hovered/dim-1',\n 'enabled:active:bg-surface-hovered/dim-1',\n 'focus-visible:bg-surface-hovered/dim-1',\n 'aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered',\n 'text-on-surface/dim-1',\n ]),\n },\n /** Spacings **/\n {\n design: 'tinted',\n hasClearButton: false,\n class: tw(['px-md']),\n },\n {\n design: 'tinted',\n hasClearButton: true,\n class: tw(['pl-md']),\n },\n] as const\n","import { tw } from '@spark-ui/internal-utils'\n\nexport const dashedVariants = [\n /** Intents **/\n {\n intent: 'main',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-main/dim-5',\n 'enabled:active:bg-main/dim-5',\n 'focus-visible:bg-main/dim-5',\n 'aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1',\n 'text-main',\n ]),\n },\n {\n intent: 'support',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-support/dim-5',\n 'enabled:active:bg-support/dim-5',\n 'focus-visible:bg-support/dim-5',\n 'aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1',\n 'text-support',\n ]),\n },\n {\n intent: 'basic',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-basic/dim-5',\n 'enabled:active:bg-basic/dim-5',\n 'focus-visible:bg-basic/dim-5',\n 'aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1',\n 'text-basic',\n ]),\n },\n {\n intent: 'accent',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-accent/dim-5',\n 'enabled:active:bg-accent/dim-5',\n 'focus-visible:bg-accent/dim-5',\n 'aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1',\n 'text-accent',\n ]),\n },\n {\n intent: 'success',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-success/dim-5',\n 'enabled:active:bg-success/dim-5',\n 'focus-visible:bg-success/dim-5',\n 'aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1',\n 'text-success',\n ]),\n },\n {\n intent: 'alert',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-alert/dim-5',\n 'enabled:active:bg-alert/dim-5',\n 'focus-visible:bg-alert/dim-5',\n 'aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1',\n 'text-alert',\n ]),\n },\n {\n intent: 'danger',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-error/dim-5',\n 'enabled:active:bg-error/dim-5',\n 'focus-visible:bg-error/dim-5',\n 'aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1',\n 'text-error',\n ]),\n },\n {\n intent: 'info',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-info/dim-5',\n 'enabled:active:bg-info/dim-5',\n 'focus-visible:bg-info/dim-5',\n 'aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1',\n 'text-info',\n ]),\n },\n {\n intent: 'neutral',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-neutral/dim-5',\n 'enabled:active:bg-neutral/dim-5',\n 'focus-visible:bg-neutral/dim-5',\n 'aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1',\n 'text-neutral',\n ]),\n },\n {\n intent: 'surface',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-surface/dim-5',\n 'enabled:active:bg-surface/dim-5',\n 'focus-visible:bg-surface/dim-5',\n 'aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered',\n 'text-surface',\n ]),\n },\n /** Spacings **/\n {\n design: 'dashed',\n hasClearButton: false,\n class: tw(['px-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n {\n design: 'dashed',\n hasClearButton: true,\n class: tw(['pl-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n] as const\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nimport { dashedVariants, outlinedVariants, tintedVariants } from './variants'\n\nexport const chipStyles = cva(\n [\n 'box-border inline-flex h-sz-32 flex-nowrap items-center justify-center rounded-md text-body-1 font-regular',\n 'focus-visible:u-outline',\n 'ease-out duration-150',\n ],\n {\n variants: {\n /**\n * Main style of the chip.\n *\n * - `filled`: Chip will be plain.\n *\n * - `outlined`: Chip will be transparent with an outline.\n *\n * - `tinted`: Chip will be filled but using a lighter color scheme.\n *\n * - `dashed`: Chip will be transparent with an outline dashed.\n */\n design: makeVariants<'design', ['outlined', 'tinted', 'dashed']>({\n outlined: ['bg-transparent border-sm border-solid border-current'],\n tinted: [''],\n dashed: [\n 'bg-transparent border-sm border-dashed shadow-none focus-visible:border-outline-high',\n ],\n }),\n /**\n * Color scheme of the chip.\n */\n intent: makeVariants<\n 'intent',\n [\n 'main',\n 'support',\n 'basic',\n 'accent',\n 'success',\n 'alert',\n 'danger',\n 'info',\n 'neutral',\n 'surface',\n ]\n >({\n main: [],\n support: [],\n basic: [],\n accent: [],\n success: [],\n alert: [],\n danger: [],\n info: [],\n neutral: [],\n surface: [],\n }),\n /**\n * Disable the chip, preventing user interaction and adding opacity.\n */\n disabled: {\n true: ['cursor-not-allowed', 'opacity-dim-3'],\n },\n hasClearButton: {\n true: [],\n false: [],\n },\n // 'pl-[calc(var(--spacing-md)-(var(--border-width-sm)))]'\n },\n compoundVariants: [...outlinedVariants, ...tintedVariants, ...dashedVariants],\n defaultVariants: {\n design: 'outlined',\n intent: 'basic',\n },\n }\n)\n\nexport type ChipStylesProps = VariantProps<typeof chipStyles>\n","import { createContext, useContext } from 'react'\n\nimport { type ChipProps } from './Chip'\n\nexport type ChipsContextType = Pick<ChipProps, 'disabled' | 'design' | 'intent' | 'onClear'>\n\nexport const ChipContext = createContext<ChipsContextType>({} as ChipsContextType)\nexport const useChipContext = () => useContext(ChipContext) || {}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.emulateTab = void 0;\nvar possibleSizeAttributeKeys = new Array('offsetHeight', 'scrollHeight', 'clientHeight');\nvar shiftModifier = true;\nvar selectableTypes = /text|password|search|tel|url/;\n/**\n * emulate tab keyboard events and default action (switch to next element)\n *\n * fist:\n * - dispatch tab keydown event at active element\n *\n * then emulate default action (if not prevented):\n * - blur on active element\n * - skip keypress action (it's between element switch so there is no target)\n * - find next element in selectable elemetns\n * - focus on next element\n * - tab keyup on next element\n *\n * or (if default action is prevented):\n * - tab keypress on active element\n * - tab keyup on active elment\n *\n * @returns true if switched elemenet and false if default action had been prevented\n */\nfunction emulateTab() {\n var source = activeElement() || document.body;\n var target = getNextElement(source);\n return emulateTabFromSourceToTarget(source, target);\n}\nexports.emulateTab = emulateTab;\n(function (emulateTab) {\n /**\n * emulate tab from a given element (default is active element)\n *\n * @returns methods to select tab target\n */\n emulateTab.from = emulateTabFrom;\n /**\n * emulate tab from active element to a given target\n *\n * @param target element to switch to\n * @param sendKeyEventsWithShiftModifier like shift tab would do\n * @returns true if switched elemenet and false if default action had been prevented\n */\n emulateTab.to = function (target, sendKeyEventsWithShiftModifier) {\n if (sendKeyEventsWithShiftModifier === void 0) { sendKeyEventsWithShiftModifier = false; }\n return emulateTabFrom(activeElement()).to(target, sendKeyEventsWithShiftModifier);\n };\n /**\n * emulate tab to previous element\n *\n * @returns true if switched elemenet and false if default action had been prevented\n */\n emulateTab.backwards = function () { return emulateTab.to(getPreviousElement(activeElement()), shiftModifier); };\n /**\n * alias for emulateTab() that is more precise about it's direction\n *\n * @returns true if switched elemenet and false if default action had been prevented\n */\n emulateTab.forwards = function () { return emulateTab(); };\n /**\n * find all elements that are selectable by tab\n */\n emulateTab.findSelectableElements = findAllElementsSelectableByTab;\n})(emulateTab = exports.emulateTab || (exports.emulateTab = {}));\nfunction emulateTabFrom(source) {\n if (source === void 0) { source = document.body; }\n return {\n /**\n * emulate tab to the element before the starting element (which is the active element by default)\n *\n * @returns true if switched elemenet and false if default action had been prevented\n */\n toPreviousElement: function () { return emulateTabFromSourceToTarget(source, getPreviousElement(), shiftModifier); },\n /**\n * emulate tab to the element after the starting element (which is the active element by default)\n *\n * @returns true if switched elemenet and false if default action had been prevented\n */\n toNextElement: function () { return emulateTabFromSourceToTarget(source, getNextElement(source)); },\n /**\n * emulate tab to a custom given element\n *\n * @param target element after tab\n * @param sendKeyEventsWithShiftModifier like shift tab would do\n * @returns true if switched elemenet and false if default action had been prevented\n */\n to: function (target, sendKeyEventsWithShiftModifier) {\n if (sendKeyEventsWithShiftModifier === void 0) { sendKeyEventsWithShiftModifier = false; }\n return emulateTabFromSourceToTarget(source, target, sendKeyEventsWithShiftModifier);\n },\n };\n}\nfunction emulateTabFromSourceToTarget(source, target, sendKeyEventsWithShiftModifier) {\n if (sendKeyEventsWithShiftModifier === void 0) { sendKeyEventsWithShiftModifier = false; }\n var executeDefaultAction = source.dispatchEvent(createTabEvent('keydown', sendKeyEventsWithShiftModifier));\n if (executeDefaultAction) {\n source.blur();\n target.focus();\n if (document.activeElement !== target) {\n try {\n document.activeElement = target;\n }\n catch (e) {\n console.warn('could not switch active element');\n }\n }\n if (target instanceof HTMLInputElement && selectableTypes.test(target.type)) {\n target.selectionStart = 0;\n }\n var tabKeyup = createTabEvent('keyup', sendKeyEventsWithShiftModifier);\n target.dispatchEvent(tabKeyup);\n return true;\n }\n else {\n source.dispatchEvent(createTabEvent('keypress', sendKeyEventsWithShiftModifier));\n source.dispatchEvent(createTabEvent('keyup', sendKeyEventsWithShiftModifier));\n return false;\n }\n}\nfunction createTabEvent(type, sendKeyEventsWithShiftModifier) {\n if (sendKeyEventsWithShiftModifier === void 0) { sendKeyEventsWithShiftModifier = false; }\n return new KeyboardEvent(type, {\n code: 'Tab',\n key: 'Tab',\n cancelable: true,\n bubbles: true,\n shiftKey: sendKeyEventsWithShiftModifier,\n });\n}\nfunction activeElement() {\n var element = document.activeElement;\n return element instanceof HTMLElement ? element : undefined;\n}\nfunction getPreviousElement(lastElement) {\n if (lastElement === void 0) { lastElement = document.body; }\n var selectableElements = findAllElementsSelectableByTab();\n if (selectableElements.length < 1) {\n throw new Error('no selectable elements found');\n }\n var currentIndex = selectableElements.indexOf(lastElement);\n var previousIndex = (currentIndex > 0 ? currentIndex : selectableElements.length) - 1;\n var previousElement = selectableElements[previousIndex];\n return previousElement;\n}\nfunction getNextElement(lastElement) {\n if (lastElement === void 0) { lastElement = document.body; }\n var selectableElements = findAllElementsSelectableByTab();\n if (selectableElements.length < 1) {\n throw new Error('no selectable elements found');\n }\n var currentIndex = selectableElements.indexOf(lastElement);\n var nextIndex = currentIndex + 1 < selectableElements.length ? currentIndex + 1 : 0;\n var nextElement = selectableElements[nextIndex];\n return nextElement;\n}\nfunction findAllElementsSelectableByTab() {\n var allElements = Array.from(document.querySelectorAll('*')).filter(isHtmlElement);\n initIsVisibleOnce();\n var tabGroups = allElements\n .filter(testAll(hasValidTabIndex, isVisible, isNotDisabledInput, isNotSkippableAnchor, isNotCollapsed))\n .reduce(function (grouped, element) {\n var tabIndex = element.tabIndex;\n var tabGroup = grouped['' + tabIndex] || { tabIndex: tabIndex, elements: [] };\n tabGroup.elements.push(element);\n grouped[tabIndex] = tabGroup;\n return grouped;\n }, {});\n var selectableElements = Object.values(tabGroups)\n .sort(byComparingTabIndex)\n .reduce(function (all, more) { return all.concat(more.elements); }, new Array());\n return selectableElements;\n}\nvar isHtmlElement = function (element) { return element instanceof HTMLElement; };\nvar isVisible;\nvar initIsVisibleOnce = function () {\n var sizeAttributeKey = findSizeAttributeKey();\n if (sizeAttributeKey) {\n // console.log('use isVisible by size attribute: ' + sizeAttributeKey);\n isVisible = isVisibleBySize(sizeAttributeKey);\n }\n else {\n // console.log('use isVisible by parents');\n isVisible = isVisibleByParents;\n }\n initIsVisibleOnce = function () { };\n};\nvar isVisibleBySize = function (sizeAttribute) { return function (element) {\n var size = element[sizeAttribute];\n return !!size && typeof size === 'number' && size > 0;\n}; };\nfunction findSizeAttributeKey(element) {\n if (element === void 0) { element = document.body; }\n var htmlElement = element;\n var sizeAttributeKey = possibleSizeAttributeKeys\n .find(function (key) {\n var value = htmlElement[key];\n return value && typeof value === 'number' && value > 0;\n });\n if (sizeAttributeKey) {\n return sizeAttributeKey;\n }\n var childNodes = element.children;\n for (var _i = 0, _a = Array.from(childNodes); _i < _a.length; _i++) {\n var childNode = _a[_i];\n var childAttribute = findSizeAttributeKey(childNode);\n if (childAttribute) {\n return childAttribute;\n }\n }\n return undefined;\n}\nvar isVisibleByParents = function (element) {\n if (!element.isConnected) {\n return false;\n }\n if (element.tagName === 'BODY') {\n return true;\n }\n var style = getComputedStyle(element);\n if (style.display === 'none') {\n return false;\n }\n if (style.visibility === 'collapse') {\n return false;\n }\n var parent = element.parentElement;\n if (!parent) {\n return false;\n }\n return isVisibleByParents(parent);\n};\nfunction testAll() {\n var elementFilter = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n elementFilter[_i] = arguments[_i];\n }\n return function (element) { return !elementFilter.some(function (f) { return !f(element); }); };\n}\nfunction hasValidTabIndex(element) {\n return typeof element.tabIndex === 'number' && element.tabIndex >= 0;\n}\nvar isNotDisabledInput = function (element) { return !element.disabled; };\nfunction isNotSkippableAnchor(element) {\n return !(element instanceof HTMLAnchorElement)\n || !!element.href\n || element.getAttribute('tabIndex') !== null;\n}\nvar isNotCollapsed = function (element) {\n return getComputedStyle(element).visibility !== 'collapse';\n};\nfunction byComparingTabIndex(a, b) {\n if (a.tabIndex > 0 && b.tabIndex > 0) {\n return a.tabIndex - b.tabIndex;\n }\n if (a.tabIndex > 0) {\n return -a.tabIndex;\n }\n if (b.tabIndex > 0) {\n return b.tabIndex;\n }\n throw new Error('same tab index for two groups');\n}\n","import { useCombinedState } from '@spark-ui/hooks/use-combined-state'\nimport { emulateTab } from 'emulate-tab'\nimport {\n Children,\n ElementType,\n FC,\n ForwardRefExoticComponent,\n HTMLAttributes,\n isValidElement,\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n ReactNode,\n RefAttributes,\n} from 'react'\n\nimport { Slot } from '../slot'\n\ninterface ReturnedValue {\n Element:\n | ForwardRefExoticComponent<\n HTMLAttributes<HTMLElement> & {\n children?: ReactNode\n } & RefAttributes<HTMLElement>\n >\n | ElementType\n chipProps:\n | {\n type: 'button'\n 'aria-pressed'?: boolean\n 'data-state'?: 'on' | 'off'\n onClick: (event: MouseEvent<HTMLButtonElement>) => void\n onKeyDown?: (event: KeyboardEvent<HTMLButtonElement>) => void\n disabled?: boolean\n children: ReactNode\n }\n | {\n 'aria-disabled'?: boolean\n children: ReactNode\n onKeyDown?: (event: KeyboardEvent<HTMLButtonElement>) => void\n }\n compoundElements: {\n leadingIcon: ReactNode\n trailingIcon: ReactNode\n content: ReactNode\n clearButton: ReactNode\n }\n}\n\nconst getDisplayName = (element?: ReactElement) => {\n return element ? (element.type as FC).displayName : ''\n}\n\nconst findElement =\n (children: ReactNode) =>\n (...values: string[]) => {\n const validChildren = Children.toArray(children).filter(isValidElement)\n\n return validChildren.find(child => {\n const displayName = getDisplayName(child)\n\n return values.includes(displayName || '')\n })\n }\n\nexport const useChipElement = ({\n onClick,\n asChild,\n pressed,\n defaultPressed,\n disabled,\n value,\n defaultValue,\n children,\n onClear,\n}: {\n onClick?: (\n event: MouseEvent<HTMLButtonElement>,\n args: { pressed: boolean; value?: string | number | readonly string[] }\n ) => void\n onKeyDown?: (event: KeyboardEvent<HTMLButtonElement>) => void\n asChild?: boolean\n pressed?: boolean\n defaultPressed?: boolean\n value?: string | number | readonly string[]\n defaultValue?: string | number | readonly string[]\n disabled?: boolean\n children?: ReactNode\n onClear?: (event?: MouseEvent<HTMLButtonElement>) => void\n}): ReturnedValue => {\n const [isPressed, setIsPressed] = useCombinedState<boolean | undefined>(pressed, defaultPressed)\n const [innerValue] = useCombinedState<string | number | readonly string[] | undefined>(\n value,\n defaultValue\n )\n\n const findChipElement = findElement(children)\n\n const leadingIcon = findChipElement('Chip.LeadingIcon')\n const trailingIcon = findChipElement('Chip.TrailingIcon')\n const content = findChipElement('Chip.Content')\n const clearButton = findChipElement('Chip.ClearButton')\n\n const isButton = (onClick || isPressed) !== undefined\n\n const formattedChildren = [leadingIcon, content, clearButton].every(\n element => element === undefined\n ) ? (\n <span className=\"inline-block grow truncate\">{children}</span>\n ) : (\n <>\n {leadingIcon}\n {content}\n {leadingIcon === undefined ? trailingIcon : null}\n {clearButton}\n </>\n )\n\n const onKeyDown = (event: KeyboardEvent<HTMLButtonElement>): void => {\n if (!!clearButton && !disabled && ['Delete', 'Backspace'].includes(event.key)) {\n if (onClear) {\n onClear()\n event.key === 'Delete' && emulateTab()\n event.key === 'Backspace' && emulateTab.backwards()\n }\n }\n }\n\n if (isButton) {\n return {\n Element: asChild ? Slot : 'button',\n chipProps: {\n type: 'button',\n ...(isPressed !== undefined && {\n 'aria-pressed': isPressed,\n 'data-state': isPressed ? 'on' : 'off',\n }),\n onClick: (event: MouseEvent<HTMLButtonElement>): void => {\n isPressed !== undefined && setIsPressed(!isPressed)\n onClick && onClick(event, { pressed: isPressed as boolean, value: innerValue })\n },\n onKeyDown,\n disabled,\n children: formattedChildren,\n },\n compoundElements: {\n leadingIcon,\n trailingIcon,\n content,\n clearButton,\n },\n }\n }\n\n return {\n Element: asChild ? Slot : 'div',\n chipProps: {\n 'aria-disabled': disabled,\n children: formattedChildren,\n onKeyDown,\n },\n compoundElements: {\n leadingIcon,\n trailingIcon,\n content,\n clearButton,\n },\n }\n}\n","import { ComponentPropsWithoutRef, MouseEvent, Ref } from 'react'\n\nimport { chipStyles, type ChipStylesProps } from './Chip.styles'\nimport { ChipContext } from './useChipContext'\nimport { useChipElement } from './useChipElement'\n\ntype ChipPrimitiveProps = Omit<ComponentPropsWithoutRef<'button'>, 'onClick' | 'disabled' | 'type'>\n\nexport interface ChipProps extends ChipPrimitiveProps, Omit<ChipStylesProps, 'hasClearButton'> {\n /**\n * Configures a toggleButton aria-pressed initial value\n */\n defaultPressed?: boolean\n /**\n * Configures a toggleButton aria-pressed value\n */\n pressed?: boolean\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * Event handler fired each clicking event\n */\n onClick?: (\n event: MouseEvent<HTMLButtonElement>,\n args: { pressed: boolean; value?: number | string | readonly string[] }\n ) => void\n /**\n * Clear chip handler\n */\n onClear?: (event?: MouseEvent<HTMLButtonElement>) => void\n ref?: Ref<HTMLButtonElement | HTMLDivElement>\n}\n\nexport const Chip = ({\n design = 'outlined',\n disabled,\n children,\n intent = 'basic',\n defaultPressed,\n pressed,\n asChild,\n className,\n onClick,\n onClear,\n ref: forwardedRef,\n ...otherProps\n}: ChipProps) => {\n const {\n Element: ChipElement,\n chipProps: { children: formattedChildren, ...chipProps },\n compoundElements,\n } = useChipElement({\n asChild,\n pressed,\n defaultPressed,\n onClick,\n disabled: !!disabled,\n value: otherProps.value,\n defaultValue: otherProps.defaultValue,\n children,\n onClear,\n })\n\n const { clearButton } = compoundElements\n\n return (\n <ChipContext.Provider value={{ disabled, design, intent, onClear }}>\n <ChipElement\n ref={forwardedRef}\n className={chipStyles({\n className,\n design,\n disabled,\n intent,\n hasClearButton: !!clearButton,\n })}\n {...{\n ...chipProps,\n ...otherProps,\n }}\n data-spark-component=\"chip\"\n >\n {formattedChildren}\n </ChipElement>\n </ChipContext.Provider>\n )\n}\n\nChip.displayName = 'Chip'\n","import { tw } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const chipClearButtonWrapperStyles = cva(\n ['ml-md flex h-full items-center justify-center focus-visible:outline-hidden'],\n {\n variants: {\n disabled: {\n false: ['cursor-pointer'],\n true: ['cursor-not-allowed'],\n },\n isBordered: {\n false: ['pr-md'],\n true: ['pr-[7px]'],\n },\n design: {\n outlined: [],\n tinted: [],\n dashed: [],\n },\n },\n compoundVariants: [\n {\n design: 'outlined',\n disabled: false,\n class: tw(['hover:opacity-dim-1']),\n },\n {\n design: 'outlined',\n disabled: true,\n class: tw(['opacity-dim-3']),\n },\n {\n design: 'tinted',\n disabled: false,\n class: tw(['hover:opacity-dim-1']),\n },\n {\n design: 'tinted',\n disabled: true,\n class: tw(['opacity-dim-3']),\n },\n {\n design: 'dashed',\n disabled: false,\n class: tw(['hover:opacity-dim-1']),\n },\n {\n design: 'dashed',\n disabled: true,\n class: tw(['opacity-dim-3']),\n },\n ],\n }\n)\n\nexport const chipClearButtonStyles = cva(\n ['rounded-full p-sz-2 [font-size:var(--spacing-sz-8)] border-sm', 'focus-visible:u-outline'],\n {\n variants: {\n disabled: {\n true: ['cursor-not-allowed'],\n false: ['cursor-pointer'],\n },\n },\n defaultVariants: {\n disabled: false,\n },\n }\n)\n\nexport type ChipClearButtonStylesProps = VariantProps<typeof chipClearButtonWrapperStyles>\n","import { Close } from '@spark-ui/icons/Close'\nimport {\n cloneElement,\n ComponentPropsWithoutRef,\n MouseEvent,\n ReactElement,\n Ref,\n useCallback,\n} from 'react'\n\nimport { Icon } from '../icon'\nimport {\n chipClearButtonStyles,\n type ChipClearButtonStylesProps,\n chipClearButtonWrapperStyles,\n} from './ChipClearButton.styles'\nimport { useChipContext } from './useChipContext'\n\nexport interface ChipClearButtonProps\n extends ComponentPropsWithoutRef<'span'>,\n ChipClearButtonStylesProps {\n label: string\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipClearButton = ({\n children = (\n <Icon>\n <Close />\n </Icon>\n ),\n tabIndex = 0,\n label,\n ref: forwardedRef,\n}: ChipClearButtonProps) => {\n const { design, disabled, onClear } = useChipContext()\n\n const onClearHandler = useCallback(\n (event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation()\n !disabled && onClear && onClear(event)\n },\n [disabled, onClear]\n )\n\n return (\n <span\n className={chipClearButtonWrapperStyles({\n isBordered: ['outline', 'dashed'].includes(`${design}`),\n disabled: !!disabled,\n design,\n })}\n onClick={onClearHandler}\n ref={forwardedRef}\n >\n <button\n tabIndex={tabIndex}\n type=\"button\"\n disabled={!!disabled}\n className={chipClearButtonStyles({ disabled })}\n aria-label={label}\n >\n {children && cloneElement(children as ReactElement<HTMLElement>, { ariaLabel: label })}\n </button>\n </span>\n )\n}\n\nChipClearButton.displayName = 'Chip.ClearButton'\n","import { cx } from 'class-variance-authority'\nimport { ComponentPropsWithoutRef, Ref } from 'react'\n\nexport type ChipContentProps = ComponentPropsWithoutRef<'span'> & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipContent = ({ children, className, ref: forwardedRef }: ChipContentProps) => {\n return (\n <span className={cx('inline-block grow truncate', className)} ref={forwardedRef}>\n {children}\n </span>\n )\n}\n\nChipContent.displayName = 'Chip.Content'\n","import { cx } from 'class-variance-authority'\nimport { ComponentPropsWithoutRef, Ref } from 'react'\n\nexport type ChipIconProps = ComponentPropsWithoutRef<'span'> & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipIcon = ({ children, className, ref: forwardedRef }: ChipIconProps) => {\n return (\n <span className={cx('flex h-full items-center justify-center', className)} ref={forwardedRef}>\n {children}\n </span>\n )\n}\n\nChipIcon.displayName = 'Chip.Icon'\n","import { cx } from 'class-variance-authority'\nimport { Ref } from 'react'\n\nimport { ChipIcon, type ChipIconProps } from './ChipIcon'\n\nexport type ChipLeadingIconProps = ChipIconProps & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipLeadingIcon = ({\n className,\n ref: forwardedRef,\n ...props\n}: ChipLeadingIconProps) => (\n <ChipIcon className={cx('mr-sm', className)} ref={forwardedRef} {...props} />\n)\n\nChipLeadingIcon.displayName = 'Chip.LeadingIcon'\n","import { cx } from 'class-variance-authority'\nimport { Ref } from 'react'\n\nimport { ChipIcon, type ChipIconProps } from './ChipIcon'\n\nexport type ChipTrailingIconProps = ChipIconProps & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipTrailingIcon = ({\n className,\n ref: forwardedRef,\n ...props\n}: ChipTrailingIconProps) => (\n <ChipIcon className={cx('ml-md', className)} ref={forwardedRef} {...props} />\n)\n\nChipTrailingIcon.displayName = 'Chip.TrailingIcon'\n","import { Chip as Root } from './Chip'\nimport { ChipClearButton } from './ChipClearButton'\nimport { ChipContent } from './ChipContent'\nimport { ChipLeadingIcon } from './ChipLeadingIcon'\nimport { ChipTrailingIcon } from './ChipTrailingIcon'\n\nexport const Chip: typeof Root & {\n Content: typeof ChipContent\n LeadingIcon: typeof ChipLeadingIcon\n TrailingIcon: typeof ChipTrailingIcon\n ClearButton: typeof ChipClearButton\n} = Object.assign(Root, {\n Content: ChipContent,\n LeadingIcon: ChipLeadingIcon,\n TrailingIcon: ChipTrailingIcon,\n ClearButton: ChipClearButton,\n})\n\nChip.displayName = 'Chip'\nChip.ClearButton.displayName = 'Chip.ClearButton'\nChip.Content.displayName = 'Chip.Content'\nChip.LeadingIcon.displayName = 'Chip.LeadingIcon'\nChip.TrailingIcon.displayName = 'Chip.TrailingIcon'\n\nexport { type ChipClearButtonProps } from './ChipClearButton'\nexport { type ChipContentProps } from './ChipContent'\nexport { type ChipLeadingIconProps } from './ChipLeadingIcon'\nexport { type ChipTrailingIconProps } from './ChipTrailingIcon'\n"],"names":["outlinedVariants","tw","tintedVariants","dashedVariants","chipStyles","cva","makeVariants","ChipContext","createContext","useChipContext","useContext","exports","possibleSizeAttributeKeys","shiftModifier","selectableTypes","emulateTab","source","activeElement","target","getNextElement","emulateTabFromSourceToTarget","emulateTabFrom","sendKeyEventsWithShiftModifier","getPreviousElement","findAllElementsSelectableByTab","executeDefaultAction","createTabEvent","tabKeyup","type","element","lastElement","selectableElements","currentIndex","previousIndex","previousElement","nextIndex","nextElement","allElements","isHtmlElement","initIsVisibleOnce","tabGroups","testAll","hasValidTabIndex","isVisible","isNotDisabledInput","isNotSkippableAnchor","isNotCollapsed","grouped","tabIndex","tabGroup","byComparingTabIndex","all","more","sizeAttributeKey","findSizeAttributeKey","isVisibleBySize","isVisibleByParents","sizeAttribute","size","htmlElement","key","value","childNodes","_i","_a","childNode","childAttribute","style","parent","elementFilter","f","a","b","getDisplayName","findElement","children","values","Children","isValidElement","child","displayName","useChipElement","onClick","asChild","pressed","defaultPressed","disabled","defaultValue","onClear","isPressed","setIsPressed","useCombinedState","innerValue","findChipElement","leadingIcon","trailingIcon","content","clearButton","isButton","formattedChildren","jsx","jsxs","Fragment","onKeyDown","event","Slot","Chip","design","intent","className","forwardedRef","otherProps","ChipElement","chipProps","compoundElements","chipClearButtonWrapperStyles","chipClearButtonStyles","ChipClearButton","Icon","Close","label","onClearHandler","useCallback","cloneElement","ChipContent","cx","ChipIcon","ChipLeadingIcon","props","ChipTrailingIcon","Root"],"mappings":"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","x_google_ignoreList":[5]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/chip/variants/outlined.ts","../../src/chip/variants/tinted.ts","../../src/chip/variants/dashed.ts","../../src/chip/Chip.styles.tsx","../../src/chip/useChipContext.tsx","../../src/chip/useChipElement.tsx","../../src/chip/Chip.tsx","../../src/chip/ChipClearButton.styles.tsx","../../src/chip/ChipClearButton.tsx","../../src/chip/ChipContent.tsx","../../src/chip/ChipIcon.tsx","../../src/chip/ChipLeadingIcon.tsx","../../src/chip/ChipTrailingIcon.tsx","../../src/chip/index.ts"],"sourcesContent":["import { tw } from '@spark-ui/internal-utils'\n\nexport const outlinedVariants = [\n /** Intents **/\n {\n design: 'outlined',\n intent: 'main',\n class: tw([\n 'enabled:hover:bg-main/dim-5',\n 'enabled:active:bg-main/dim-5',\n 'focus-visible:bg-main/dim-5',\n 'aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1',\n 'text-main',\n ]),\n },\n {\n design: 'outlined',\n intent: 'support',\n class: tw([\n 'enabled:hover:bg-support/dim-5',\n 'enabled:active:bg-support/dim-5',\n 'focus-visible:bg-support/dim-5',\n 'aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1',\n 'text-support',\n ]),\n },\n {\n design: 'outlined',\n intent: 'basic',\n class: tw([\n 'enabled:hover:bg-basic/dim-5',\n 'enabled:active:bg-basic/dim-5',\n 'focus-visible:bg-basic/dim-5',\n 'aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1',\n 'text-basic',\n ]),\n },\n {\n intent: 'accent',\n design: 'outlined',\n class: tw([\n 'enabled:hover:bg-accent/dim-5',\n 'enabled:active:bg-accent/dim-5',\n 'focus-visible:bg-accent/dim-5',\n 'aria-pressed:bg-accent-container',\n 'aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1',\n 'text-accent',\n ]),\n },\n {\n design: 'outlined',\n intent: 'success',\n class: tw([\n 'enabled:hover:bg-success/dim-5',\n 'enabled:active:bg-success/dim-5',\n 'focus-visible:bg-success/dim-5',\n 'aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1',\n 'text-success',\n ]),\n },\n {\n intent: 'alert',\n design: 'outlined',\n class: tw([\n 'enabled:hover:bg-alert/dim-5',\n 'enabled:active:bg-alert/dim-5',\n 'focus-visible:bg-alert/dim-5',\n 'aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1',\n 'text-alert',\n ]),\n },\n {\n design: 'outlined',\n intent: 'danger',\n class: tw([\n 'enabled:hover:bg-error/dim-5',\n 'enabled:active:bg-error/dim-5',\n 'focus-visible:bg-error/dim-5',\n 'aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1',\n 'text-error',\n ]),\n },\n {\n design: 'outlined',\n intent: 'info',\n class: tw([\n 'enabled:hover:bg-info/dim-5',\n 'enabled:active:bg-info/dim-5',\n 'focus-visible:bg-info/dim-5',\n 'aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1',\n 'text-info',\n ]),\n },\n {\n design: 'outlined',\n intent: 'neutral',\n class: tw([\n 'enabled:hover:bg-neutral/dim-5',\n 'enabled:active:bg-neutral/dim-5',\n 'focus-visible:bg-neutral/dim-5',\n 'aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1',\n 'text-neutral',\n ]),\n },\n {\n design: 'outlined',\n intent: 'surface',\n class: tw([\n 'enabled:hover:bg-surface/dim-5',\n 'enabled:active:bg-surface/dim-5',\n 'focus-visible:bg-surface/dim-5',\n 'aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered',\n 'text-surface',\n ]),\n },\n /** Spacings **/\n {\n design: 'outlined',\n hasClearButton: false,\n class: tw(['px-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n {\n design: 'outlined',\n hasClearButton: true,\n class: tw(['pl-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n] as const\n","import { tw } from '@spark-ui/internal-utils'\n\nexport const tintedVariants = [\n /** Intents **/\n {\n intent: 'main',\n design: 'tinted',\n class: tw([\n 'bg-main-container',\n 'enabled:hover:bg-main-container-hovered',\n 'enabled:active:bg-main-container-hovered',\n 'focus-visible:bg-main-container-hovered',\n 'aria-pressed:bg-main aria-pressed:text-on-main aria-pressed:enabled:hover:bg-main/dim-1',\n 'text-on-main-container',\n ]),\n },\n {\n intent: 'support',\n design: 'tinted',\n class: tw([\n 'bg-support-container',\n 'enabled:hover:bg-support-container-hovered',\n 'enabled:active:bg-support-container-hovered',\n 'focus-visible:bg-support-container-hovered',\n 'aria-pressed:bg-support aria-pressed:text-on-support aria-pressed:enabled:hover:bg-support/dim-1',\n 'text-on-support-container',\n ]),\n },\n {\n intent: 'basic',\n design: 'tinted',\n class: tw([\n 'bg-basic-container',\n 'enabled:hover:bg-basic-container-hovered',\n 'enabled:active:bg-basic-container-hovered',\n 'focus-visible:bg-basic-container-hovered',\n 'aria-pressed:bg-basic aria-pressed:text-on-basic aria-pressed:enabled:hover:bg-basic/dim-1',\n 'text-on-basic-container',\n ]),\n },\n {\n intent: 'accent',\n design: 'tinted',\n class: tw([\n 'bg-accent-container',\n 'enabled:hover:bg-accent-container-hovered',\n 'enabled:active:bg-accent-container-hovered',\n 'focus-visible:bg-accent-container-hovered',\n 'aria-pressed:bg-accent aria-pressed:text-on-accent aria-pressed:enabled:hover:bg-accent/dim-1',\n 'text-on-accent-container',\n ]),\n },\n {\n intent: 'success',\n design: 'tinted',\n class: tw([\n 'bg-success-container',\n 'enabled:hover:bg-success-container-hovered',\n 'enabled:active:bg-success-container-hovered',\n 'focus-visible:bg-success-container-hovered',\n 'aria-pressed:bg-success aria-pressed:text-on-success aria-pressed:enabled:hover:bg-success/dim-1',\n 'text-on-success-container',\n ]),\n },\n {\n intent: 'alert',\n design: 'tinted',\n class: tw([\n 'bg-alert-container',\n 'enabled:hover:bg-alert-container-hovered',\n 'enabled:active:bg-alert-container-hovered',\n 'focus-visible:bg-alert-container-hovered',\n 'aria-pressed:bg-alert aria-pressed:text-on-alert aria-pressed:enabled:hover:bg-alert/dim-1',\n 'text-on-alert-container',\n ]),\n },\n {\n intent: 'danger',\n design: 'tinted',\n class: tw([\n 'bg-error-container',\n 'enabled:hover:bg-error-container-hovered',\n 'enabled:active:bg-error-container-hovered',\n 'focus-visible:bg-error-container-hovered',\n 'aria-pressed:bg-error aria-pressed:text-on-error aria-pressed:enabled:hover:bg-error/dim-1',\n 'text-on-error-container',\n ]),\n },\n {\n intent: 'info',\n design: 'tinted',\n class: tw([\n 'bg-info-container',\n 'enabled:hover:bg-info-container-hovered',\n 'enabled:active:bg-info-container-hovered',\n 'focus-visible:bg-info-container-hovered',\n 'aria-pressed:bg-info aria-pressed:text-on-info aria-pressed:enabled:hover:bg-info/dim-1',\n 'text-on-info-container',\n ]),\n },\n {\n intent: 'neutral',\n design: 'tinted',\n class: tw([\n 'bg-neutral-container',\n 'enabled:hover:bg-neutral-container-hovered',\n 'enabled:active:bg-neutral-container-hovered',\n 'focus-visible:bg-neutral-container-hovered',\n 'aria-pressed:bg-neutral aria-pressed:text-on-neutral aria-pressed:enabled:hover:bg-neutral/dim-1',\n 'text-on-neutral-container',\n ]),\n },\n {\n intent: 'surface',\n design: 'tinted',\n class: tw([\n 'bg-surface/dim-1',\n 'enabled:hover:bg-surface-hovered/dim-1',\n 'enabled:active:bg-surface-hovered/dim-1',\n 'focus-visible:bg-surface-hovered/dim-1',\n 'aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered',\n 'text-on-surface/dim-1',\n ]),\n },\n /** Spacings **/\n {\n design: 'tinted',\n hasClearButton: false,\n class: tw(['px-md']),\n },\n {\n design: 'tinted',\n hasClearButton: true,\n class: tw(['pl-md']),\n },\n] as const\n","import { tw } from '@spark-ui/internal-utils'\n\nexport const dashedVariants = [\n /** Intents **/\n {\n intent: 'main',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-main/dim-5',\n 'enabled:active:bg-main/dim-5',\n 'focus-visible:bg-main/dim-5',\n 'aria-pressed:bg-main-container aria-pressed:text-on-main-container aria-pressed:enabled:hover:bg-main-container/dim-1',\n 'text-main',\n ]),\n },\n {\n intent: 'support',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-support/dim-5',\n 'enabled:active:bg-support/dim-5',\n 'focus-visible:bg-support/dim-5',\n 'aria-pressed:bg-support-container aria-pressed:text-on-support-container aria-pressed:enabled:hover:bg-support-container/dim-1',\n 'text-support',\n ]),\n },\n {\n intent: 'basic',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-basic/dim-5',\n 'enabled:active:bg-basic/dim-5',\n 'focus-visible:bg-basic/dim-5',\n 'aria-pressed:bg-basic-container aria-pressed:text-on-basic-container aria-pressed:enabled:hover:bg-basic-container/dim-1',\n 'text-basic',\n ]),\n },\n {\n intent: 'accent',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-accent/dim-5',\n 'enabled:active:bg-accent/dim-5',\n 'focus-visible:bg-accent/dim-5',\n 'aria-pressed:bg-accent-container aria-pressed:text-on-accent-container aria-pressed:enabled:hover:bg-accent-container/dim-1',\n 'text-accent',\n ]),\n },\n {\n intent: 'success',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-success/dim-5',\n 'enabled:active:bg-success/dim-5',\n 'focus-visible:bg-success/dim-5',\n 'aria-pressed:bg-success-container aria-pressed:text-on-success-container aria-pressed:enabled:hover:bg-success-container/dim-1',\n 'text-success',\n ]),\n },\n {\n intent: 'alert',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-alert/dim-5',\n 'enabled:active:bg-alert/dim-5',\n 'focus-visible:bg-alert/dim-5',\n 'aria-pressed:bg-alert-container aria-pressed:text-on-alert-container aria-pressed:enabled:hover:bg-alert-container/dim-1',\n 'text-alert',\n ]),\n },\n {\n intent: 'danger',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-error/dim-5',\n 'enabled:active:bg-error/dim-5',\n 'focus-visible:bg-error/dim-5',\n 'aria-pressed:bg-error-container aria-pressed:text-on-error-container aria-pressed:enabled:hover:bg-error-container/dim-1',\n 'text-error',\n ]),\n },\n {\n intent: 'info',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-info/dim-5',\n 'enabled:active:bg-info/dim-5',\n 'focus-visible:bg-info/dim-5',\n 'aria-pressed:bg-info-container aria-pressed:text-on-info-container aria-pressed:enabled:hover:bg-info-container/dim-1',\n 'text-info',\n ]),\n },\n {\n intent: 'neutral',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-neutral/dim-5',\n 'enabled:active:bg-neutral/dim-5',\n 'focus-visible:bg-neutral/dim-5',\n 'aria-pressed:bg-neutral-container aria-pressed:text-on-neutral-container aria-pressed:enabled:hover:bg-neutral-container/dim-1',\n 'text-neutral',\n ]),\n },\n {\n intent: 'surface',\n design: 'dashed',\n class: tw([\n 'enabled:hover:bg-surface/dim-5',\n 'enabled:active:bg-surface/dim-5',\n 'focus-visible:bg-surface/dim-5',\n 'aria-pressed:bg-surface aria-pressed:text-on-surface aria-pressed:enabled:hover:bg-surface-hovered',\n 'text-surface',\n ]),\n },\n /** Spacings **/\n {\n design: 'dashed',\n hasClearButton: false,\n class: tw(['px-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n {\n design: 'dashed',\n hasClearButton: true,\n class: tw(['pl-[calc(var(--spacing-md)-var(--border-width-sm))]']),\n },\n] as const\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nimport { dashedVariants, outlinedVariants, tintedVariants } from './variants'\n\nexport const chipStyles = cva(\n [\n 'box-border inline-flex h-sz-32 flex-nowrap items-center justify-center rounded-md text-body-1 font-regular',\n 'focus-visible:u-outline',\n 'ease-out duration-150',\n ],\n {\n variants: {\n /**\n * Main style of the chip.\n *\n * - `filled`: Chip will be plain.\n *\n * - `outlined`: Chip will be transparent with an outline.\n *\n * - `tinted`: Chip will be filled but using a lighter color scheme.\n *\n * - `dashed`: Chip will be transparent with an outline dashed.\n */\n design: makeVariants<'design', ['outlined', 'tinted', 'dashed']>({\n outlined: ['bg-transparent border-sm border-solid border-current'],\n tinted: [''],\n dashed: [\n 'bg-transparent border-sm border-dashed shadow-none focus-visible:border-outline-high',\n ],\n }),\n /**\n * Color scheme of the chip.\n */\n intent: makeVariants<\n 'intent',\n [\n 'main',\n 'support',\n 'basic',\n 'accent',\n 'success',\n 'alert',\n 'danger',\n 'info',\n 'neutral',\n 'surface',\n ]\n >({\n main: [],\n support: [],\n basic: [],\n accent: [],\n success: [],\n alert: [],\n danger: [],\n info: [],\n neutral: [],\n surface: [],\n }),\n /**\n * Disable the chip, preventing user interaction and adding opacity.\n */\n disabled: {\n true: ['cursor-not-allowed', 'opacity-dim-3'],\n },\n hasClearButton: {\n true: [],\n false: [],\n },\n // 'pl-[calc(var(--spacing-md)-(var(--border-width-sm)))]'\n },\n compoundVariants: [...outlinedVariants, ...tintedVariants, ...dashedVariants],\n defaultVariants: {\n design: 'outlined',\n intent: 'basic',\n },\n }\n)\n\nexport type ChipStylesProps = VariantProps<typeof chipStyles>\n","import { createContext, useContext } from 'react'\n\nimport { type ChipProps } from './Chip'\n\nexport type ChipsContextType = Pick<ChipProps, 'disabled' | 'design' | 'intent' | 'onClear'>\n\nexport const ChipContext = createContext<ChipsContextType>({} as ChipsContextType)\nexport const useChipContext = () => useContext(ChipContext) || {}\n","import { useCombinedState } from '@spark-ui/hooks/use-combined-state'\nimport { emulateTab } from 'emulate-tab'\nimport {\n Children,\n ElementType,\n FC,\n ForwardRefExoticComponent,\n HTMLAttributes,\n isValidElement,\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n ReactNode,\n RefAttributes,\n} from 'react'\n\nimport { Slot } from '../slot'\n\ninterface ReturnedValue {\n Element:\n | ForwardRefExoticComponent<\n HTMLAttributes<HTMLElement> & {\n children?: ReactNode\n } & RefAttributes<HTMLElement>\n >\n | ElementType\n chipProps:\n | {\n type: 'button'\n 'aria-pressed'?: boolean\n 'data-state'?: 'on' | 'off'\n onClick: (event: MouseEvent<HTMLButtonElement>) => void\n onKeyDown?: (event: KeyboardEvent<HTMLButtonElement>) => void\n disabled?: boolean\n children: ReactNode\n }\n | {\n 'aria-disabled'?: boolean\n children: ReactNode\n onKeyDown?: (event: KeyboardEvent<HTMLButtonElement>) => void\n }\n compoundElements: {\n leadingIcon: ReactNode\n trailingIcon: ReactNode\n content: ReactNode\n clearButton: ReactNode\n }\n}\n\nconst getDisplayName = (element?: ReactElement) => {\n return element ? (element.type as FC).displayName : ''\n}\n\nconst findElement =\n (children: ReactNode) =>\n (...values: string[]) => {\n const validChildren = Children.toArray(children).filter(isValidElement)\n\n return validChildren.find(child => {\n const displayName = getDisplayName(child)\n\n return values.includes(displayName || '')\n })\n }\n\nexport const useChipElement = ({\n onClick,\n asChild,\n pressed,\n defaultPressed,\n disabled,\n value,\n defaultValue,\n children,\n onClear,\n}: {\n onClick?: (\n event: MouseEvent<HTMLButtonElement>,\n args: { pressed: boolean; value?: string | number | readonly string[] }\n ) => void\n onKeyDown?: (event: KeyboardEvent<HTMLButtonElement>) => void\n asChild?: boolean\n pressed?: boolean\n defaultPressed?: boolean\n value?: string | number | readonly string[]\n defaultValue?: string | number | readonly string[]\n disabled?: boolean\n children?: ReactNode\n onClear?: (event?: MouseEvent<HTMLButtonElement>) => void\n}): ReturnedValue => {\n const [isPressed, setIsPressed] = useCombinedState<boolean | undefined>(pressed, defaultPressed)\n const [innerValue] = useCombinedState<string | number | readonly string[] | undefined>(\n value,\n defaultValue\n )\n\n const findChipElement = findElement(children)\n\n const leadingIcon = findChipElement('Chip.LeadingIcon')\n const trailingIcon = findChipElement('Chip.TrailingIcon')\n const content = findChipElement('Chip.Content')\n const clearButton = findChipElement('Chip.ClearButton')\n\n const isButton = (onClick || isPressed) !== undefined\n\n const formattedChildren = [leadingIcon, content, clearButton].every(\n element => element === undefined\n ) ? (\n <span className=\"inline-block grow truncate\">{children}</span>\n ) : (\n <>\n {leadingIcon}\n {content}\n {leadingIcon === undefined ? trailingIcon : null}\n {clearButton}\n </>\n )\n\n const onKeyDown = (event: KeyboardEvent<HTMLButtonElement>): void => {\n if (!!clearButton && !disabled && ['Delete', 'Backspace'].includes(event.key)) {\n if (onClear) {\n onClear()\n event.key === 'Delete' && emulateTab()\n event.key === 'Backspace' && emulateTab.backwards()\n }\n }\n }\n\n if (isButton) {\n return {\n Element: asChild ? Slot : 'button',\n chipProps: {\n type: 'button',\n ...(isPressed !== undefined && {\n 'aria-pressed': isPressed,\n 'data-state': isPressed ? 'on' : 'off',\n }),\n onClick: (event: MouseEvent<HTMLButtonElement>): void => {\n isPressed !== undefined && setIsPressed(!isPressed)\n onClick && onClick(event, { pressed: isPressed as boolean, value: innerValue })\n },\n onKeyDown,\n disabled,\n children: formattedChildren,\n },\n compoundElements: {\n leadingIcon,\n trailingIcon,\n content,\n clearButton,\n },\n }\n }\n\n return {\n Element: asChild ? Slot : 'div',\n chipProps: {\n 'aria-disabled': disabled,\n children: formattedChildren,\n onKeyDown,\n },\n compoundElements: {\n leadingIcon,\n trailingIcon,\n content,\n clearButton,\n },\n }\n}\n","import { ComponentPropsWithoutRef, MouseEvent, Ref } from 'react'\n\nimport { chipStyles, type ChipStylesProps } from './Chip.styles'\nimport { ChipContext } from './useChipContext'\nimport { useChipElement } from './useChipElement'\n\ntype ChipPrimitiveProps = Omit<ComponentPropsWithoutRef<'button'>, 'onClick' | 'disabled' | 'type'>\n\nexport interface ChipProps extends ChipPrimitiveProps, Omit<ChipStylesProps, 'hasClearButton'> {\n /**\n * Configures a toggleButton aria-pressed initial value\n */\n defaultPressed?: boolean\n /**\n * Configures a toggleButton aria-pressed value\n */\n pressed?: boolean\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * Event handler fired each clicking event\n */\n onClick?: (\n event: MouseEvent<HTMLButtonElement>,\n args: { pressed: boolean; value?: number | string | readonly string[] }\n ) => void\n /**\n * Clear chip handler\n */\n onClear?: (event?: MouseEvent<HTMLButtonElement>) => void\n ref?: Ref<HTMLButtonElement | HTMLDivElement>\n}\n\nexport const Chip = ({\n design = 'outlined',\n disabled,\n children,\n intent = 'basic',\n defaultPressed,\n pressed,\n asChild,\n className,\n onClick,\n onClear,\n ref: forwardedRef,\n ...otherProps\n}: ChipProps) => {\n const {\n Element: ChipElement,\n chipProps: { children: formattedChildren, ...chipProps },\n compoundElements,\n } = useChipElement({\n asChild,\n pressed,\n defaultPressed,\n onClick,\n disabled: !!disabled,\n value: otherProps.value,\n defaultValue: otherProps.defaultValue,\n children,\n onClear,\n })\n\n const { clearButton } = compoundElements\n\n return (\n <ChipContext.Provider value={{ disabled, design, intent, onClear }}>\n <ChipElement\n ref={forwardedRef}\n className={chipStyles({\n className,\n design,\n disabled,\n intent,\n hasClearButton: !!clearButton,\n })}\n {...{\n ...chipProps,\n ...otherProps,\n }}\n data-spark-component=\"chip\"\n >\n {formattedChildren}\n </ChipElement>\n </ChipContext.Provider>\n )\n}\n\nChip.displayName = 'Chip'\n","import { tw } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const chipClearButtonWrapperStyles = cva(\n ['ml-md flex h-full items-center justify-center focus-visible:outline-hidden'],\n {\n variants: {\n disabled: {\n false: ['cursor-pointer'],\n true: ['cursor-not-allowed'],\n },\n isBordered: {\n false: ['pr-md'],\n true: ['pr-[7px]'],\n },\n design: {\n outlined: [],\n tinted: [],\n dashed: [],\n },\n },\n compoundVariants: [\n {\n design: 'outlined',\n disabled: false,\n class: tw(['hover:opacity-dim-1']),\n },\n {\n design: 'outlined',\n disabled: true,\n class: tw(['opacity-dim-3']),\n },\n {\n design: 'tinted',\n disabled: false,\n class: tw(['hover:opacity-dim-1']),\n },\n {\n design: 'tinted',\n disabled: true,\n class: tw(['opacity-dim-3']),\n },\n {\n design: 'dashed',\n disabled: false,\n class: tw(['hover:opacity-dim-1']),\n },\n {\n design: 'dashed',\n disabled: true,\n class: tw(['opacity-dim-3']),\n },\n ],\n }\n)\n\nexport const chipClearButtonStyles = cva(\n ['rounded-full p-sz-2 [font-size:var(--spacing-sz-8)] border-sm', 'focus-visible:u-outline'],\n {\n variants: {\n disabled: {\n true: ['cursor-not-allowed'],\n false: ['cursor-pointer'],\n },\n },\n defaultVariants: {\n disabled: false,\n },\n }\n)\n\nexport type ChipClearButtonStylesProps = VariantProps<typeof chipClearButtonWrapperStyles>\n","import { Close } from '@spark-ui/icons/Close'\nimport {\n cloneElement,\n ComponentPropsWithoutRef,\n MouseEvent,\n ReactElement,\n Ref,\n useCallback,\n} from 'react'\n\nimport { Icon } from '../icon'\nimport {\n chipClearButtonStyles,\n type ChipClearButtonStylesProps,\n chipClearButtonWrapperStyles,\n} from './ChipClearButton.styles'\nimport { useChipContext } from './useChipContext'\n\nexport interface ChipClearButtonProps\n extends ComponentPropsWithoutRef<'span'>,\n ChipClearButtonStylesProps {\n label: string\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipClearButton = ({\n children = (\n <Icon>\n <Close />\n </Icon>\n ),\n tabIndex = 0,\n label,\n ref: forwardedRef,\n}: ChipClearButtonProps) => {\n const { design, disabled, onClear } = useChipContext()\n\n const onClearHandler = useCallback(\n (event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation()\n !disabled && onClear && onClear(event)\n },\n [disabled, onClear]\n )\n\n return (\n <span\n className={chipClearButtonWrapperStyles({\n isBordered: ['outline', 'dashed'].includes(`${design}`),\n disabled: !!disabled,\n design,\n })}\n onClick={onClearHandler}\n ref={forwardedRef}\n >\n <button\n tabIndex={tabIndex}\n type=\"button\"\n disabled={!!disabled}\n className={chipClearButtonStyles({ disabled })}\n aria-label={label}\n >\n {children && cloneElement(children as ReactElement<HTMLElement>, { ariaLabel: label })}\n </button>\n </span>\n )\n}\n\nChipClearButton.displayName = 'Chip.ClearButton'\n","import { cx } from 'class-variance-authority'\nimport { ComponentPropsWithoutRef, Ref } from 'react'\n\nexport type ChipContentProps = ComponentPropsWithoutRef<'span'> & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipContent = ({ children, className, ref: forwardedRef }: ChipContentProps) => {\n return (\n <span className={cx('inline-block grow truncate', className)} ref={forwardedRef}>\n {children}\n </span>\n )\n}\n\nChipContent.displayName = 'Chip.Content'\n","import { cx } from 'class-variance-authority'\nimport { ComponentPropsWithoutRef, Ref } from 'react'\n\nexport type ChipIconProps = ComponentPropsWithoutRef<'span'> & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipIcon = ({ children, className, ref: forwardedRef }: ChipIconProps) => {\n return (\n <span className={cx('flex h-full items-center justify-center', className)} ref={forwardedRef}>\n {children}\n </span>\n )\n}\n\nChipIcon.displayName = 'Chip.Icon'\n","import { cx } from 'class-variance-authority'\nimport { Ref } from 'react'\n\nimport { ChipIcon, type ChipIconProps } from './ChipIcon'\n\nexport type ChipLeadingIconProps = ChipIconProps & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipLeadingIcon = ({\n className,\n ref: forwardedRef,\n ...props\n}: ChipLeadingIconProps) => (\n <ChipIcon className={cx('mr-sm', className)} ref={forwardedRef} {...props} />\n)\n\nChipLeadingIcon.displayName = 'Chip.LeadingIcon'\n","import { cx } from 'class-variance-authority'\nimport { Ref } from 'react'\n\nimport { ChipIcon, type ChipIconProps } from './ChipIcon'\n\nexport type ChipTrailingIconProps = ChipIconProps & {\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const ChipTrailingIcon = ({\n className,\n ref: forwardedRef,\n ...props\n}: ChipTrailingIconProps) => (\n <ChipIcon className={cx('ml-md', className)} ref={forwardedRef} {...props} />\n)\n\nChipTrailingIcon.displayName = 'Chip.TrailingIcon'\n","import { Chip as Root } from './Chip'\nimport { ChipClearButton } from './ChipClearButton'\nimport { ChipContent } from './ChipContent'\nimport { ChipLeadingIcon } from './ChipLeadingIcon'\nimport { ChipTrailingIcon } from './ChipTrailingIcon'\n\nexport const Chip: typeof Root & {\n Content: typeof ChipContent\n LeadingIcon: typeof ChipLeadingIcon\n TrailingIcon: typeof ChipTrailingIcon\n ClearButton: typeof ChipClearButton\n} = Object.assign(Root, {\n Content: ChipContent,\n LeadingIcon: ChipLeadingIcon,\n TrailingIcon: ChipTrailingIcon,\n ClearButton: ChipClearButton,\n})\n\nChip.displayName = 'Chip'\nChip.ClearButton.displayName = 'Chip.ClearButton'\nChip.Content.displayName = 'Chip.Content'\nChip.LeadingIcon.displayName = 'Chip.LeadingIcon'\nChip.TrailingIcon.displayName = 'Chip.TrailingIcon'\n\nexport { type ChipClearButtonProps } from './ChipClearButton'\nexport { type ChipContentProps } from './ChipContent'\nexport { type ChipLeadingIconProps } from './ChipLeadingIcon'\nexport { type ChipTrailingIconProps } from './ChipTrailingIcon'\n"],"names":["outlinedVariants","tw","tintedVariants","dashedVariants","chipStyles","cva","makeVariants","ChipContext","createContext","useChipContext","useContext","getDisplayName","element","findElement","children","values","Children","isValidElement","child","displayName","useChipElement","onClick","asChild","pressed","defaultPressed","disabled","value","defaultValue","onClear","isPressed","setIsPressed","useCombinedState","innerValue","findChipElement","leadingIcon","trailingIcon","content","clearButton","isButton","formattedChildren","jsx","jsxs","Fragment","onKeyDown","event","emulateTab","Slot","Chip","design","intent","className","forwardedRef","otherProps","ChipElement","chipProps","compoundElements","chipClearButtonWrapperStyles","chipClearButtonStyles","ChipClearButton","Icon","Close","tabIndex","label","onClearHandler","useCallback","cloneElement","ChipContent","cx","ChipIcon","ChipLeadingIcon","props","ChipTrailingIcon","Root"],"mappings":"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"}
|