@chassis-ui/react 0.2.0 → 0.3.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/LICENSE +1 -1
- package/README.md +56 -23
- package/dist/accordion.js +1 -1
- package/dist/alert.d.ts +2 -0
- package/dist/alert.js +1 -0
- package/dist/autocomplete.d.ts +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/avatar.js +1 -1
- package/dist/badge.js +1 -1
- package/dist/breadcrumb.js +1 -1
- package/dist/button-group.d.ts +1 -1
- package/dist/button-group.js +1 -1
- package/dist/button.js +1 -1
- package/dist/calendar.d.ts +1 -1
- package/dist/calendar.js +1 -1
- package/dist/card.d.ts +1 -1
- package/dist/card.js +1 -1
- package/dist/carousel.d.ts +1 -1
- package/dist/carousel.js +1 -1
- package/dist/checkbox.d.ts +2 -2
- package/dist/checkbox.js +1 -1
- package/dist/chip-input.js +1 -1
- package/dist/chip.js +1 -1
- package/dist/chunks/Button-BoymWE-L.js +2 -0
- package/dist/chunks/Button-BoymWE-L.js.map +1 -0
- package/dist/chunks/Button-Cptd4Yk7.d.ts +2 -1
- package/dist/chunks/Chip-DCaWaBqo.js +2 -0
- package/dist/chunks/Chip-DCaWaBqo.js.map +1 -0
- package/dist/chunks/CloseButton-DPgQztE0.js +2 -0
- package/dist/chunks/CloseButton-DPgQztE0.js.map +1 -0
- package/dist/chunks/ComboboxItem-C9TpoJOI.d.ts +2 -1
- package/dist/chunks/ComboboxListBox-Cm3L1ULl.js +2 -0
- package/dist/chunks/ComboboxListBox-Cm3L1ULl.js.map +1 -0
- package/dist/chunks/DateSegment-2agXAd0f.js +2 -0
- package/dist/chunks/DateSegment-2agXAd0f.js.map +1 -0
- package/dist/chunks/{FormHelp-Be2PQL0y.js → FormHelp-AE6_iSLJ.js} +2 -1
- package/dist/chunks/FormHelp-AE6_iSLJ.js.map +1 -0
- package/dist/chunks/FormLabel-CYcQiFUI.js +2 -1
- package/dist/chunks/FormLabel-CYcQiFUI.js.map +1 -0
- package/dist/chunks/Icon-CioraWLF.d.ts +2 -1
- package/dist/chunks/Icon-DLB1f88W.js +2 -0
- package/dist/chunks/Icon-DLB1f88W.js.map +1 -0
- package/dist/chunks/Link-CZsWCnQb.js +2 -0
- package/dist/chunks/Link-CZsWCnQb.js.map +1 -0
- package/dist/chunks/{Link-B0Y1xgYi.d.ts → Link-nrd0JWlO.d.ts} +7 -5
- package/dist/chunks/Menu-CSBg2Zmc.js +2 -0
- package/dist/chunks/Menu-CSBg2Zmc.js.map +1 -0
- package/dist/chunks/Menu-QeYOzrUL.d.ts +95 -0
- package/dist/chunks/MenuItemDef-D0VDtYIQ.d.ts +2 -1
- package/dist/chunks/MenuToggle-BdQtF7FV.js +2 -0
- package/dist/chunks/MenuToggle-BdQtF7FV.js.map +1 -0
- package/dist/chunks/Portal-CgeR1WXV.js +2 -0
- package/dist/chunks/Portal-CgeR1WXV.js.map +1 -0
- package/dist/chunks/RangeCalendar-BJl-j4W2.js +2 -0
- package/dist/chunks/RangeCalendar-BJl-j4W2.js.map +1 -0
- package/dist/chunks/VisuallyHidden-C2dM7HhC.js +2 -0
- package/dist/chunks/VisuallyHidden-C2dM7HhC.js.map +1 -0
- package/dist/chunks/accordion-B8UWyvQB.js +2 -0
- package/dist/chunks/accordion-B8UWyvQB.js.map +1 -0
- package/dist/chunks/alert-BXI-_qlt.js +2 -0
- package/dist/chunks/alert-BXI-_qlt.js.map +1 -0
- package/dist/chunks/autocomplete-Baf9VSHN.js +2 -0
- package/dist/chunks/autocomplete-Baf9VSHN.js.map +1 -0
- package/dist/chunks/avatar-S3dGy6Qc.js +2 -0
- package/dist/chunks/avatar-S3dGy6Qc.js.map +1 -0
- package/dist/chunks/{badge-Bj8mf8lu.js → badge-D2oztCvs.js} +2 -1
- package/dist/chunks/badge-D2oztCvs.js.map +1 -0
- package/dist/chunks/{breadcrumb-DDxnx_iS.js → breadcrumb-s6J9itez.js} +2 -1
- package/dist/chunks/breadcrumb-s6J9itez.js.map +1 -0
- package/dist/chunks/breakpoints-CJ-498B7.d.ts +7 -0
- package/dist/chunks/breakpoints-o_2Ev7ir.js +2 -1
- package/dist/chunks/breakpoints-o_2Ev7ir.js.map +1 -0
- package/dist/chunks/button-group-BGppPrIv.js +2 -0
- package/dist/chunks/button-group-BGppPrIv.js.map +1 -0
- package/dist/chunks/{card-DfF2K_5p.js → card-YXn3bj_d.js} +2 -1
- package/dist/chunks/card-YXn3bj_d.js.map +1 -0
- package/dist/chunks/carousel-fTVPqnSV.js +2 -0
- package/dist/chunks/carousel-fTVPqnSV.js.map +1 -0
- package/dist/chunks/checkbox-ChACalAw.js +2 -0
- package/dist/chunks/checkbox-ChACalAw.js.map +1 -0
- package/dist/chunks/chip-input-BpVDRERg.js +2 -0
- package/dist/chunks/chip-input-BpVDRERg.js.map +1 -0
- package/dist/chunks/collapse--Go2Y73B.js +2 -0
- package/dist/chunks/collapse--Go2Y73B.js.map +1 -0
- package/dist/chunks/{color-input-CyRaLR_G.js → color-input-Bwl5ef5B.js} +2 -1
- package/dist/chunks/color-input-Bwl5ef5B.js.map +1 -0
- package/dist/chunks/combobox-Bp1tIaiW.js +2 -0
- package/dist/chunks/combobox-Bp1tIaiW.js.map +1 -0
- package/dist/chunks/context-menu-B4a0tS-h.js +2 -0
- package/dist/chunks/context-menu-B4a0tS-h.js.map +1 -0
- package/dist/chunks/datagrid-CH3Cy-q7.js +3 -0
- package/dist/chunks/datagrid-CH3Cy-q7.js.map +1 -0
- package/dist/chunks/dateRangePresets-R1FtA1zp.d.ts +2 -1
- package/dist/chunks/datepicker-bOiM_zhJ.js +2 -0
- package/dist/chunks/datepicker-bOiM_zhJ.js.map +1 -0
- package/dist/chunks/dialogTransition-i9vw0i2Z.js +2 -1
- package/dist/chunks/dialogTransition-i9vw0i2Z.js.map +1 -0
- package/dist/chunks/direction-LN6uwsK5.js +2 -0
- package/dist/chunks/direction-LN6uwsK5.js.map +1 -0
- package/dist/chunks/divider-CjbF4OfA.js +2 -0
- package/dist/chunks/divider-CjbF4OfA.js.map +1 -0
- package/dist/chunks/drawer-C7Tz4XU_.js +2 -0
- package/dist/chunks/drawer-C7Tz4XU_.js.map +1 -0
- package/dist/chunks/{file-input-RRqZSzjH.js → file-input-CDM6qrmV.js} +2 -1
- package/dist/chunks/file-input-CDM6qrmV.js.map +1 -0
- package/dist/chunks/{flex-BTvpgaRv.js → flex-CmlJbKVj.js} +2 -1
- package/dist/chunks/flex-CmlJbKVj.js.map +1 -0
- package/dist/chunks/floating-input-DmSZZc27.js +2 -0
- package/dist/chunks/floating-input-DmSZZc27.js.map +1 -0
- package/dist/chunks/focus-ring-SR_LwaN7.js +2 -1
- package/dist/chunks/focus-ring-SR_LwaN7.js.map +1 -0
- package/dist/chunks/focusRedirect-BrvK3U_o.js +2 -1
- package/dist/chunks/focusRedirect-BrvK3U_o.js.map +1 -0
- package/dist/chunks/form-GpdAyWWi.js +2 -1
- package/dist/chunks/form-GpdAyWWi.js.map +1 -0
- package/dist/chunks/form-field-CNPGTMiW.js +2 -0
- package/dist/chunks/form-field-CNPGTMiW.js.map +1 -0
- package/dist/chunks/grid-DK_vxz-4.js +2 -0
- package/dist/chunks/grid-DK_vxz-4.js.map +1 -0
- package/dist/chunks/{icon-mxYpL5nL.js → icon-BQsT6YtE.js} +2 -1
- package/dist/chunks/icon-BQsT6YtE.js.map +1 -0
- package/dist/chunks/{iconConfig-Bu6Pt9o3.d.ts → iconConfig-C6gbYhsD.d.ts} +5 -3
- package/dist/chunks/iconSlot-BNu2MrFI.js +2 -0
- package/dist/chunks/iconSlot-BNu2MrFI.js.map +1 -0
- package/dist/chunks/{index-BO_1MN66.d.ts → index-4cKG9KWB.d.ts} +3 -5
- package/dist/chunks/index-6uob77s9.d.ts +2 -1
- package/dist/chunks/{index-tOodmT36.d.ts → index-91YA-jkp.d.ts} +4 -6
- package/dist/chunks/index-9rQeMqVI.d.ts +42 -0
- package/dist/chunks/index-B0-8n-Gs.d.ts +2 -1
- package/dist/chunks/index-B2K-O9kl.d.ts +59 -0
- package/dist/chunks/index-B8uaSJA9.d.ts +2 -1
- package/dist/chunks/index-BA-raEMm.d.ts +2 -1
- package/dist/chunks/{index-C61tPIJ-.d.ts → index-BAsbRx5n.d.ts} +6 -2
- package/dist/chunks/index-BF3OWUVc.d.ts +66 -0
- package/dist/chunks/{index-DB_ToPdz.d.ts → index-BNf0jIIL.d.ts} +12 -1
- package/dist/chunks/index-BO9jLOIb.d.ts +2 -1
- package/dist/chunks/index-BTTeKpiE.d.ts +2 -1
- package/dist/chunks/index-BVGGIaPX.d.ts +2 -1
- package/dist/chunks/{index-qgZ5VGmc.d.ts → index-B_UzbGOa.d.ts} +20 -2
- package/dist/chunks/index-Bi8FFadV.d.ts +2 -1
- package/dist/chunks/index-Bkj17NEQ.d.ts +2 -1
- package/dist/chunks/{index-BKMW0rkw.d.ts → index-Bm2NpgND.d.ts} +4 -2
- package/dist/chunks/{index-XjLvaH4G.d.ts → index-BnR7wjax.d.ts} +6 -5
- package/dist/chunks/{index--0_IpTDT.d.ts → index-BxROljJI.d.ts} +3 -2
- package/dist/chunks/index-Bz8MDq0H.d.ts +85 -0
- package/dist/chunks/{index-Cf2n0l0U.d.ts → index-C4Dks__B.d.ts} +3 -2
- package/dist/chunks/index-CCXJXToc.d.ts +2 -1
- package/dist/chunks/{index-COsYSDrz.d.ts → index-CFnQubsV.d.ts} +17 -3
- package/dist/chunks/{index-DPV62IdF.d.ts → index-CJXKl97l.d.ts} +11 -9
- package/dist/chunks/index-CJzKu7QI.d.ts +2 -1
- package/dist/chunks/{index-ClT3E_hv.d.ts → index-CKx1KHED.d.ts} +4 -3
- package/dist/chunks/index-COsIPd8L.d.ts +2 -1
- package/dist/chunks/index-CRfm7W6C.d.ts +2 -1
- package/dist/chunks/{index-dh3TKanY.d.ts → index-CTpwB1yR.d.ts} +3 -2
- package/dist/chunks/index-CVUMS0x7.d.ts +2 -1
- package/dist/chunks/{index-BlgkO3dn.d.ts → index-CYgBmZ8w.d.ts} +24 -33
- package/dist/chunks/{index-Dum6Y9XR.d.ts → index-Cc4SSslb.d.ts} +20 -2
- package/dist/chunks/index-CftERHnE.d.ts +2 -1
- package/dist/chunks/{index-CaQ1JY5D.d.ts → index-Ci7AEgEc.d.ts} +4 -6
- package/dist/chunks/{index-BxTlIaZu.d.ts → index-CqZ68Z8R.d.ts} +125 -11
- package/dist/chunks/{index-D2VVO8rx.d.ts → index-CsARGAzD.d.ts} +3 -2
- package/dist/chunks/index-CsMIgBsd.d.ts +2 -1
- package/dist/chunks/index-D9PZHY_I.d.ts +2 -1
- package/dist/chunks/index-DAoPg59I.d.ts +2 -1
- package/dist/chunks/index-DHGgezXU.d.ts +2 -1
- package/dist/chunks/index-DHOG_rjE.d.ts +121 -0
- package/dist/chunks/index-DJfga0Ce.d.ts +57 -0
- package/dist/chunks/{index-BTDgfLxK.d.ts → index-DJr_ZK4b.d.ts} +21 -5
- package/dist/chunks/index-DMbdEm__.d.ts +119 -0
- package/dist/chunks/{index-DJJocp_q.d.ts → index-DXjbI7Yv.d.ts} +3 -2
- package/dist/chunks/index-DaHQdNul.d.ts +182 -0
- package/dist/chunks/index-Dcc_W6Kv.d.ts +2 -1
- package/dist/chunks/{index-nklPDKlC.d.ts → index-DceCODH9.d.ts} +3 -2
- package/dist/chunks/index-Ddd7iWfm.d.ts +32 -0
- package/dist/chunks/index-Dfg4Ftb8.d.ts +2 -1
- package/dist/chunks/index-Dfy1YW5j.d.ts +2 -1
- package/dist/chunks/index-DgHvXzVh.d.ts +208 -0
- package/dist/chunks/index-Dh5CaHTP.d.ts +2 -1
- package/dist/chunks/{index-8PhBSbNQ.d.ts → index-DjXRq-n3.d.ts} +15 -10
- package/dist/chunks/{index-JllMXhVx.d.ts → index-DjrEvKd-.d.ts} +21 -4
- package/dist/chunks/index-DtbUXxjz.d.ts +2 -1
- package/dist/chunks/index-Du9fBqkT.d.ts +56 -0
- package/dist/chunks/index-FKh7iFQE.d.ts +95 -0
- package/dist/chunks/index-HrKN6s8z.d.ts +2 -1
- package/dist/chunks/{index-DR8sYtvd.d.ts → index-I-H3VJ-L.d.ts} +20 -87
- package/dist/chunks/{index-DEb9zXlC.d.ts → index-RHJhkSY-.d.ts} +79 -16
- package/dist/chunks/{index-Ctuk1xBU.d.ts → index-e7SJkI_m.d.ts} +9 -6
- package/dist/chunks/index-g74gO0pc.d.ts +36 -0
- package/dist/chunks/{index-DKma0jQw.d.ts → index-qMq_-GY2.d.ts} +3 -2
- package/dist/chunks/index-t_x6jj7l.d.ts +2 -1
- package/dist/chunks/{input-adorn-C_EHML68.js → input-adorn-DwdX-jxA.js} +2 -1
- package/dist/chunks/input-adorn-DwdX-jxA.js.map +1 -0
- package/dist/chunks/{input-group-iI7azfvE.js → input-group-Cuiuf4Dl.js} +2 -1
- package/dist/chunks/input-group-Cuiuf4Dl.js.map +1 -0
- package/dist/chunks/lazyElement-tfMG21pZ.js +2 -0
- package/dist/chunks/lazyElement-tfMG21pZ.js.map +1 -0
- package/dist/chunks/list-BQCkwWjF.js +2 -0
- package/dist/chunks/list-BQCkwWjF.js.map +1 -0
- package/dist/chunks/menu-98EAD9nj.js +2 -0
- package/dist/chunks/menu-98EAD9nj.js.map +1 -0
- package/dist/chunks/modal-bgDR29Jh.js +2 -0
- package/dist/chunks/modal-bgDR29Jh.js.map +1 -0
- package/dist/chunks/nav-TiZuTHC6.js +2 -0
- package/dist/chunks/nav-TiZuTHC6.js.map +1 -0
- package/dist/chunks/nav-overflow-Ay5mM5Gc.js +2 -0
- package/dist/chunks/nav-overflow-Ay5mM5Gc.js.map +1 -0
- package/dist/chunks/navOverflow-B5krZe6D.js +2 -0
- package/dist/chunks/navOverflow-B5krZe6D.js.map +1 -0
- package/dist/chunks/navVariant-CnD21GBS.d.ts +5 -0
- package/dist/chunks/navVariant-DeGTk9B7.js +2 -0
- package/dist/chunks/navVariant-DeGTk9B7.js.map +1 -0
- package/dist/chunks/navbar-DxIwt0sc.js +2 -0
- package/dist/chunks/navbar-DxIwt0sc.js.map +1 -0
- package/dist/chunks/notification-Ds24wnPq.js +2 -0
- package/dist/chunks/notification-Ds24wnPq.js.map +1 -0
- package/dist/chunks/number-field-IBIX2IWH.js +2 -0
- package/dist/chunks/number-field-IBIX2IWH.js.map +1 -0
- package/dist/chunks/otp-input-ws393uPB.js +2 -0
- package/dist/chunks/otp-input-ws393uPB.js.map +1 -0
- package/dist/chunks/overlayPlacement-BtS90IVf.js +2 -1
- package/dist/chunks/overlayPlacement-BtS90IVf.js.map +1 -0
- package/dist/chunks/{overlayPlacement-B7843a-Q.d.ts → overlayPlacement-CIsLpycT.d.ts} +3 -2
- package/dist/chunks/pagination-BkOquk-x.js +2 -0
- package/dist/chunks/pagination-BkOquk-x.js.map +1 -0
- package/dist/chunks/password-strength-DDK8pHRq.js +2 -0
- package/dist/chunks/password-strength-DDK8pHRq.js.map +1 -0
- package/dist/chunks/placeholder-BCr83sUn.js +2 -0
- package/dist/chunks/placeholder-BCr83sUn.js.map +1 -0
- package/dist/chunks/polymorphic-BhGNZQja.js +2 -0
- package/dist/chunks/polymorphic-BhGNZQja.js.map +1 -0
- package/dist/chunks/polymorphic-CVHbTHSN.d.ts +2 -1
- package/dist/chunks/popover-Bdg8D4sm.js +2 -0
- package/dist/chunks/popover-Bdg8D4sm.js.map +1 -0
- package/dist/chunks/{progress-DlrZ71aV.js → progress-zWkTltor.js} +2 -1
- package/dist/chunks/progress-zWkTltor.js.map +1 -0
- package/dist/chunks/radio-DOFYCfJi.js +2 -0
- package/dist/chunks/radio-DOFYCfJi.js.map +1 -0
- package/dist/chunks/{range-input-BN3430j-.js → range-input-CT_8TKL7.js} +2 -1
- package/dist/chunks/range-input-CT_8TKL7.js.map +1 -0
- package/dist/chunks/renderFormCheck-DN_-V62U.js +2 -0
- package/dist/chunks/renderFormCheck-DN_-V62U.js.map +1 -0
- package/dist/chunks/{renderFormCheck-CYWG-Rbt.d.ts → renderFormCheck-DZh_5Df8.d.ts} +3 -2
- package/dist/chunks/renderFormField-Brkw1yA6.js +2 -0
- package/dist/chunks/renderFormField-Brkw1yA6.js.map +1 -0
- package/dist/chunks/{renderFormField-fBEny6JV.d.ts → renderFormField-ChNagAFN.d.ts} +3 -2
- package/dist/chunks/{renderMenuItemContent-CmqT3YUQ.js → renderMenuItemContent-DUezZrpj.js} +2 -1
- package/dist/chunks/renderMenuItemContent-DUezZrpj.js.map +1 -0
- package/dist/chunks/scrollspy-C2HmrnZ4.js +2 -0
- package/dist/chunks/scrollspy-C2HmrnZ4.js.map +1 -0
- package/dist/chunks/scrollspy-D_lPjb92.js +2 -0
- package/dist/chunks/scrollspy-D_lPjb92.js.map +1 -0
- package/dist/chunks/search-field--nDoCI_E.js +2 -0
- package/dist/chunks/search-field--nDoCI_E.js.map +1 -0
- package/dist/chunks/select-BwJIfv9f.js +2 -0
- package/dist/chunks/select-BwJIfv9f.js.map +1 -0
- package/dist/chunks/skeleton-BrD2JwNx.js +2 -0
- package/dist/chunks/skeleton-BrD2JwNx.js.map +1 -0
- package/dist/chunks/slot-CNhFZdHF.js +2 -0
- package/dist/chunks/slot-CNhFZdHF.js.map +1 -0
- package/dist/chunks/spacingClassName-DVhk8m3P.js +2 -1
- package/dist/chunks/spacingClassName-DVhk8m3P.js.map +1 -0
- package/dist/chunks/spinner-DblhvrHL.js +2 -0
- package/dist/chunks/spinner-DblhvrHL.js.map +1 -0
- package/dist/chunks/{stack-D3retZ-W.js → stack-CsMiQbpq.js} +2 -1
- package/dist/chunks/stack-CsMiQbpq.js.map +1 -0
- package/dist/chunks/static-table-D0M4oc_t.js +2 -1
- package/dist/chunks/static-table-D0M4oc_t.js.map +1 -0
- package/dist/chunks/stepper-CVXMJ2yg.js +2 -0
- package/dist/chunks/stepper-CVXMJ2yg.js.map +1 -0
- package/dist/chunks/switch-C6s3LxEv.js +2 -0
- package/dist/chunks/switch-C6s3LxEv.js.map +1 -0
- package/dist/chunks/table-Cy6uEuEP.js +2 -0
- package/dist/chunks/table-Cy6uEuEP.js.map +1 -0
- package/dist/chunks/tableClassName-CZA2Bse8.js +2 -1
- package/dist/chunks/tableClassName-CZA2Bse8.js.map +1 -0
- package/dist/chunks/tabs-91T7-8qq.js +2 -0
- package/dist/chunks/tabs-91T7-8qq.js.map +1 -0
- package/dist/chunks/text-input-B4pTv6SU.js +2 -0
- package/dist/chunks/text-input-B4pTv6SU.js.map +1 -0
- package/dist/chunks/textarea-1A1nABQE.js +2 -0
- package/dist/chunks/textarea-1A1nABQE.js.map +1 -0
- package/dist/chunks/time-field-B3MA7ED_.js +2 -0
- package/dist/chunks/time-field-B3MA7ED_.js.map +1 -0
- package/dist/chunks/toast-CGHl3-oU.js +2 -0
- package/dist/chunks/toast-CGHl3-oU.js.map +1 -0
- package/dist/chunks/tooltip-Bc-u6nIW.js +2 -0
- package/dist/chunks/tooltip-Bc-u6nIW.js.map +1 -0
- package/dist/chunks/tree-Cql1veeZ.js +2 -0
- package/dist/chunks/tree-Cql1veeZ.js.map +1 -0
- package/dist/chunks/types-CS_40Txv.d.ts +2 -1
- package/dist/chunks/unhandledProps-9Kdj7WVf.js +2 -0
- package/dist/chunks/unhandledProps-9Kdj7WVf.js.map +1 -0
- package/dist/chunks/useButtonSemantics-CILM_lhi.js +2 -1
- package/dist/chunks/useButtonSemantics-CILM_lhi.js.map +1 -0
- package/dist/chunks/useControllableState-CPUJxfKW.js +2 -0
- package/dist/chunks/useControllableState-CPUJxfKW.js.map +1 -0
- package/dist/chunks/useDialogElement-CgOnJAzu.js +2 -0
- package/dist/chunks/useDialogElement-CgOnJAzu.js.map +1 -0
- package/dist/chunks/useDisabledAnchorGuard-Cz58UCXy.js +2 -1
- package/dist/chunks/useDisabledAnchorGuard-Cz58UCXy.js.map +1 -0
- package/dist/chunks/useFloatingOverlay-DLIvwx-8.js +2 -0
- package/dist/chunks/useFloatingOverlay-DLIvwx-8.js.map +1 -0
- package/dist/chunks/useForkedRef-DVEfT-KI.js +2 -1
- package/dist/chunks/useForkedRef-DVEfT-KI.js.map +1 -0
- package/dist/chunks/useFormField-BOqmBTC4.js +2 -1
- package/dist/chunks/useFormField-BOqmBTC4.js.map +1 -0
- package/dist/chunks/useIsomorphicLayoutEffect-BbqRwuqn.js +2 -1
- package/dist/chunks/useIsomorphicLayoutEffect-BbqRwuqn.js.map +1 -0
- package/dist/chunks/useOpenStateProps-DykUbnPJ.js +2 -0
- package/dist/chunks/useOpenStateProps-DykUbnPJ.js.map +1 -0
- package/dist/chunks/useToastRegionQueue-CIV5SdiE.js +2 -0
- package/dist/chunks/useToastRegionQueue-CIV5SdiE.js.map +1 -0
- package/dist/chunks/useTransitionState-e5ToY7eX.js +2 -0
- package/dist/chunks/useTransitionState-e5ToY7eX.js.map +1 -0
- package/dist/chunks/validationClassName-gRGs4KBm.js +2 -1
- package/dist/chunks/validationClassName-gRGs4KBm.js.map +1 -0
- package/dist/chunks/visibleState-B_i1zHu2.js +2 -0
- package/dist/chunks/visibleState-B_i1zHu2.js.map +1 -0
- package/dist/close-button.d.ts +1 -1
- package/dist/close-button.js +1 -1
- package/dist/collapse.js +1 -1
- package/dist/color-input.js +1 -1
- package/dist/combobox.js +1 -1
- package/dist/context-menu.d.ts +2 -0
- package/dist/context-menu.js +1 -0
- package/dist/datagrid.js +1 -1
- package/dist/datepicker.d.ts +1 -1
- package/dist/datepicker.js +1 -1
- package/dist/divider.d.ts +2 -0
- package/dist/divider.js +1 -0
- package/dist/drawer.d.ts +1 -1
- package/dist/drawer.js +1 -1
- package/dist/file-input.js +1 -1
- package/dist/flex.js +1 -1
- package/dist/floating-input.d.ts +1 -1
- package/dist/floating-input.js +1 -1
- package/dist/form-field.d.ts +1 -1
- package/dist/form-field.js +1 -1
- package/dist/form.js +1 -1
- package/dist/grid.d.ts +2 -2
- package/dist/grid.js +1 -1
- package/dist/icon.d.ts +2 -2
- package/dist/icon.js +1 -1
- package/dist/index.d.ts +50 -38
- package/dist/index.js +1 -1
- package/dist/input-adorn.js +1 -1
- package/dist/input-group.js +1 -1
- package/dist/link.d.ts +1 -1
- package/dist/link.js +1 -1
- package/dist/list.d.ts +1 -1
- package/dist/list.js +1 -1
- package/dist/menu.d.ts +2 -1
- package/dist/menu.js +1 -1
- package/dist/modal.d.ts +1 -1
- package/dist/modal.js +1 -1
- package/dist/nav-overflow.d.ts +2 -0
- package/dist/nav-overflow.js +1 -0
- package/dist/nav.d.ts +2 -2
- package/dist/nav.js +1 -1
- package/dist/navbar.d.ts +1 -1
- package/dist/navbar.js +1 -1
- package/dist/notification.d.ts +1 -1
- package/dist/notification.js +1 -1
- package/dist/number-field.d.ts +2 -0
- package/dist/number-field.js +1 -0
- package/dist/otp-input.js +1 -1
- package/dist/pagination.d.ts +1 -1
- package/dist/pagination.js +1 -1
- package/dist/password-strength.d.ts +1 -1
- package/dist/password-strength.js +1 -1
- package/dist/placeholder.d.ts +1 -1
- package/dist/placeholder.js +1 -1
- package/dist/popover.d.ts +1 -1
- package/dist/popover.js +1 -1
- package/dist/portal.d.ts +2 -0
- package/dist/portal.js +1 -0
- package/dist/progress.js +1 -1
- package/dist/radio.d.ts +1 -1
- package/dist/radio.js +1 -1
- package/dist/range-input.js +1 -1
- package/dist/scrollspy.d.ts +2 -0
- package/dist/scrollspy.js +1 -0
- package/dist/search-field.d.ts +2 -0
- package/dist/search-field.js +1 -0
- package/dist/select.js +1 -1
- package/dist/skeleton.d.ts +1 -1
- package/dist/skeleton.js +1 -1
- package/dist/spinner.js +1 -1
- package/dist/stack.js +1 -1
- package/dist/stepper.d.ts +1 -1
- package/dist/stepper.js +1 -1
- package/dist/style.css +1 -1
- package/dist/switch.js +1 -1
- package/dist/table.js +1 -1
- package/dist/tabs.d.ts +1 -1
- package/dist/tabs.js +1 -1
- package/dist/text-input.js +1 -1
- package/dist/textarea.js +1 -1
- package/dist/time-field.d.ts +2 -0
- package/dist/time-field.js +1 -0
- package/dist/toast.d.ts +1 -1
- package/dist/toast.js +1 -1
- package/dist/tooltip.d.ts +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/tree.d.ts +2 -0
- package/dist/tree.js +1 -0
- package/dist/visually-hidden.d.ts +2 -0
- package/dist/visually-hidden.js +1 -0
- package/package.json +61 -52
- package/dist/chunks/Button-I0aUy5h-.js +0 -1
- package/dist/chunks/Chip-D0Cw0mAr.js +0 -1
- package/dist/chunks/CloseButton-DJM7FRKh.js +0 -1
- package/dist/chunks/ComboboxListBox-BhO8uRNg.js +0 -1
- package/dist/chunks/Icon-BIwkD-kx.js +0 -1
- package/dist/chunks/Link-Cq7FNWpm.js +0 -1
- package/dist/chunks/RangeCalendar-COnSfurr.js +0 -1
- package/dist/chunks/accordion-okRicuG5.js +0 -1
- package/dist/chunks/autocomplete-B0xTc6kg.js +0 -1
- package/dist/chunks/avatar-Bjm0DlPO.js +0 -1
- package/dist/chunks/breakpoints-SLMTNHF9.d.ts +0 -5
- package/dist/chunks/button-group-CPZYA6aZ.js +0 -1
- package/dist/chunks/carousel-DEvwcA7H.js +0 -1
- package/dist/chunks/checkbox-BFPS0pD6.js +0 -1
- package/dist/chunks/chip-input-CB1lE6vP.js +0 -1
- package/dist/chunks/collapse-WifcChO8.js +0 -1
- package/dist/chunks/combobox-DWEj-Sv7.js +0 -1
- package/dist/chunks/datagrid-nbnNThsT.js +0 -2
- package/dist/chunks/datepicker-CslLKMm1.js +0 -1
- package/dist/chunks/direction-CPhdeL3A.js +0 -1
- package/dist/chunks/drawer-zReFjoJG.js +0 -1
- package/dist/chunks/floating-input-CIC9Lm2a.js +0 -1
- package/dist/chunks/form-field-BjQ9SIjx.js +0 -1
- package/dist/chunks/grid-CuFw89yV.js +0 -1
- package/dist/chunks/iconSlot-BmWxJh27.js +0 -1
- package/dist/chunks/index-BDfh8YBc.d.ts +0 -39
- package/dist/chunks/index-D949AidR.d.ts +0 -40
- package/dist/chunks/list-CMr-wB9d.js +0 -1
- package/dist/chunks/menu-CXUc-Gva.js +0 -1
- package/dist/chunks/modal-ByIj71Mq.js +0 -1
- package/dist/chunks/nav-BldxFo_B.js +0 -1
- package/dist/chunks/navbar-BwcsQuBk.js +0 -1
- package/dist/chunks/notification-DdqigVB1.js +0 -1
- package/dist/chunks/otp-input-CXe_wkII.js +0 -1
- package/dist/chunks/pagination-BOpEAYW2.js +0 -1
- package/dist/chunks/password-strength-BfLiYiGj.js +0 -1
- package/dist/chunks/placeholder-pg95KELl.js +0 -1
- package/dist/chunks/polymorphic-CACPOv1_.js +0 -1
- package/dist/chunks/popover-BpSfnZzk.js +0 -1
- package/dist/chunks/radio-BV7Sq6D1.js +0 -1
- package/dist/chunks/renderFormCheck-BXBs6_ov.js +0 -1
- package/dist/chunks/renderFormField-wiaxvvLG.js +0 -1
- package/dist/chunks/select-CclIIux8.js +0 -1
- package/dist/chunks/skeleton-CKq76sE_.js +0 -1
- package/dist/chunks/spinner-BEq4PAlu.js +0 -1
- package/dist/chunks/stepper-CTa6e8uv.js +0 -1
- package/dist/chunks/switch-BmHpq4tL.js +0 -1
- package/dist/chunks/table-Fme9GbAR.js +0 -1
- package/dist/chunks/tabs-BnbMJM_b.js +0 -1
- package/dist/chunks/text-input-DD3d08Yf.js +0 -1
- package/dist/chunks/textarea-C0qQdCcu.js +0 -1
- package/dist/chunks/toast-BQhZ2pv5.js +0 -1
- package/dist/chunks/tooltip-DHtVAYUo.js +0 -1
- package/dist/chunks/triggerElement-BIqA4KqZ.js +0 -1
- package/dist/chunks/useDialogElement-BRIU60cT.js +0 -1
- package/dist/chunks/useFloatingOverlay-CcmDZKMK.js +0 -1
- package/dist/chunks/useToastRegionQueue-BH6bWZ73.js +0 -1
- package/src/components/accordion/Accordion.tsx +0 -190
- package/src/components/accordion/AccordionBody.tsx +0 -46
- package/src/components/accordion/AccordionHeader.tsx +0 -21
- package/src/components/accordion/AccordionItem.tsx +0 -59
- package/src/components/accordion/context.ts +0 -8
- package/src/components/accordion/index.ts +0 -12
- package/src/components/autocomplete/Autocomplete.tsx +0 -464
- package/src/components/autocomplete/AutocompleteGroup.tsx +0 -20
- package/src/components/autocomplete/AutocompleteItem.tsx +0 -18
- package/src/components/autocomplete/index.ts +0 -10
- package/src/components/avatar/Avatar.tsx +0 -137
- package/src/components/avatar/AvatarImage.tsx +0 -19
- package/src/components/avatar/AvatarStack.tsx +0 -98
- package/src/components/avatar/index.ts +0 -10
- package/src/components/badge/Badge.tsx +0 -94
- package/src/components/badge/index.ts +0 -6
- package/src/components/breadcrumb/Breadcrumb.tsx +0 -68
- package/src/components/breadcrumb/BreadcrumbItem.tsx +0 -38
- package/src/components/breadcrumb/index.ts +0 -8
- package/src/components/button/Button.tsx +0 -232
- package/src/components/button/index.ts +0 -6
- package/src/components/button-group/ButtonGroup.tsx +0 -55
- package/src/components/button-group/ButtonToolbar.tsx +0 -47
- package/src/components/button-group/index.ts +0 -8
- package/src/components/calendar/Calendar.scss +0 -57
- package/src/components/calendar/Calendar.tsx +0 -338
- package/src/components/calendar/CalendarMonthBlock.tsx +0 -57
- package/src/components/calendar/CalendarMonthGrid.tsx +0 -94
- package/src/components/calendar/CalendarMonthYearPicker.tsx +0 -164
- package/src/components/calendar/CalendarNavButton.tsx +0 -24
- package/src/components/calendar/CalendarWeekGrid.tsx +0 -58
- package/src/components/calendar/CalendarYearGrid.tsx +0 -128
- package/src/components/calendar/RangeCalendar.scss +0 -95
- package/src/components/calendar/RangeCalendar.tsx +0 -373
- package/src/components/calendar/index.ts +0 -10
- package/src/components/calendar/labels.tsx +0 -71
- package/src/components/card/Card.tsx +0 -173
- package/src/components/card/CardBody.tsx +0 -75
- package/src/components/card/CardFooter.tsx +0 -47
- package/src/components/card/CardGroup.tsx +0 -51
- package/src/components/card/CardHeader.tsx +0 -47
- package/src/components/card/CardImage.tsx +0 -70
- package/src/components/card/CardImageOverlay.tsx +0 -47
- package/src/components/card/CardLink.tsx +0 -40
- package/src/components/card/CardSubtitle.tsx +0 -47
- package/src/components/card/CardText.tsx +0 -47
- package/src/components/card/CardTitle.tsx +0 -47
- package/src/components/card/index.ts +0 -26
- package/src/components/carousel/Carousel.tsx +0 -753
- package/src/components/carousel/CarouselControlButton.tsx +0 -81
- package/src/components/carousel/CarouselControlNext.tsx +0 -28
- package/src/components/carousel/CarouselControlPrev.tsx +0 -28
- package/src/components/carousel/CarouselIndicators.tsx +0 -44
- package/src/components/carousel/CarouselInner.tsx +0 -56
- package/src/components/carousel/CarouselItem.tsx +0 -51
- package/src/components/carousel/CarouselOverlay.tsx +0 -51
- package/src/components/carousel/CarouselPlayPause.tsx +0 -84
- package/src/components/carousel/carouselEngine.ts +0 -170
- package/src/components/carousel/context.ts +0 -29
- package/src/components/carousel/index.ts +0 -25
- package/src/components/checkbox/Checkbox.tsx +0 -252
- package/src/components/checkbox/CheckboxGroup.tsx +0 -145
- package/src/components/checkbox/context.ts +0 -14
- package/src/components/checkbox/index.ts +0 -8
- package/src/components/chip/Chip.tsx +0 -184
- package/src/components/chip/index.ts +0 -6
- package/src/components/chip-input/ChipInput.tsx +0 -371
- package/src/components/chip-input/ChipList.tsx +0 -95
- package/src/components/chip-input/index.ts +0 -6
- package/src/components/close-button/CloseButton.tsx +0 -205
- package/src/components/close-button/index.ts +0 -6
- package/src/components/collapse/Collapse.tsx +0 -128
- package/src/components/collapse/index.ts +0 -6
- package/src/components/color-input/ColorInput.tsx +0 -106
- package/src/components/color-input/index.ts +0 -6
- package/src/components/combobox/Combobox.tsx +0 -320
- package/src/components/combobox/ComboboxGroup.tsx +0 -27
- package/src/components/combobox/ComboboxItem.tsx +0 -44
- package/src/components/combobox/ComboboxListBox.tsx +0 -98
- package/src/components/combobox/index.ts +0 -10
- package/src/components/datagrid/DataGrid.scss +0 -203
- package/src/components/datagrid/DataGrid.tsx +0 -259
- package/src/components/datagrid/DataGridBody.tsx +0 -162
- package/src/components/datagrid/DataGridCell.tsx +0 -47
- package/src/components/datagrid/DataGridColumn.tsx +0 -109
- package/src/components/datagrid/DataGridHeader.tsx +0 -47
- package/src/components/datagrid/DataGridPinBehavior.tsx +0 -225
- package/src/components/datagrid/DataGridRow.tsx +0 -48
- package/src/components/datagrid/DataGridSelectionCell.tsx +0 -74
- package/src/components/datagrid/DataGridTableLayout.ts +0 -30
- package/src/components/datagrid/index.ts +0 -18
- package/src/components/datagrid/useColumnGeometry.ts +0 -161
- package/src/components/datepicker/CalendarToggleButton.tsx +0 -58
- package/src/components/datepicker/ClearButton.tsx +0 -38
- package/src/components/datepicker/DateField.tsx +0 -54
- package/src/components/datepicker/DatePicker.scss +0 -51
- package/src/components/datepicker/DatePicker.tsx +0 -606
- package/src/components/datepicker/DateRangePicker.scss +0 -11
- package/src/components/datepicker/DateRangePicker.tsx +0 -361
- package/src/components/datepicker/index.ts +0 -8
- package/src/components/datepicker/renderDatePickerShell.tsx +0 -104
- package/src/components/drawer/Drawer.tsx +0 -213
- package/src/components/drawer/DrawerBody.tsx +0 -47
- package/src/components/drawer/DrawerFooter.tsx +0 -51
- package/src/components/drawer/DrawerHeader.tsx +0 -60
- package/src/components/drawer/DrawerTitle.tsx +0 -49
- package/src/components/drawer/index.ts +0 -18
- package/src/components/file-input/FileInput.tsx +0 -100
- package/src/components/file-input/index.ts +0 -6
- package/src/components/flex/Flex.tsx +0 -134
- package/src/components/flex/index.ts +0 -6
- package/src/components/floating-input/FloatingInput.tsx +0 -94
- package/src/components/floating-input/index.ts +0 -6
- package/src/components/form/Form.tsx +0 -26
- package/src/components/form/FormFeedback.tsx +0 -64
- package/src/components/form/FormHelp.tsx +0 -46
- package/src/components/form/FormLabel.tsx +0 -26
- package/src/components/form/index.ts +0 -12
- package/src/components/form/renderFormCheck.tsx +0 -86
- package/src/components/form-field/FormField.tsx +0 -84
- package/src/components/form-field/index.ts +0 -6
- package/src/components/form-field/renderFormField.tsx +0 -85
- package/src/components/grid/Col.tsx +0 -69
- package/src/components/grid/Container.tsx +0 -59
- package/src/components/grid/Grid.tsx +0 -86
- package/src/components/grid/GridItem.tsx +0 -123
- package/src/components/grid/Row.tsx +0 -71
- package/src/components/grid/gap.ts +0 -8
- package/src/components/grid/index.ts +0 -14
- package/src/components/icon/Icon.tsx +0 -105
- package/src/components/icon/IconProvider.tsx +0 -40
- package/src/components/icon/index.ts +0 -9
- package/src/components/input-adorn/InputAdorn.tsx +0 -55
- package/src/components/input-adorn/index.ts +0 -6
- package/src/components/input-group/InputGroup.tsx +0 -50
- package/src/components/input-group/InputGroupAddon.tsx +0 -50
- package/src/components/input-group/index.ts +0 -8
- package/src/components/link/Link.tsx +0 -148
- package/src/components/link/index.ts +0 -6
- package/src/components/list/List.tsx +0 -193
- package/src/components/list/ListItem.tsx +0 -91
- package/src/components/list/index.ts +0 -8
- package/src/components/menu/Menu.tsx +0 -408
- package/src/components/menu/MenuDivider.tsx +0 -19
- package/src/components/menu/MenuHeader.tsx +0 -55
- package/src/components/menu/MenuItem.tsx +0 -85
- package/src/components/menu/MenuItemDef.ts +0 -83
- package/src/components/menu/MenuList.tsx +0 -142
- package/src/components/menu/MenuSubmenu.tsx +0 -284
- package/src/components/menu/MenuSubmenuBack.tsx +0 -39
- package/src/components/menu/MenuText.tsx +0 -47
- package/src/components/menu/MenuToggle.tsx +0 -148
- package/src/components/menu/index.ts +0 -23
- package/src/components/menu/menuNavigation.ts +0 -106
- package/src/components/menu/submenuGroup.ts +0 -43
- package/src/components/modal/Modal.tsx +0 -164
- package/src/components/modal/ModalBody.tsx +0 -47
- package/src/components/modal/ModalFooter.tsx +0 -51
- package/src/components/modal/ModalHeader.tsx +0 -60
- package/src/components/modal/ModalTitle.tsx +0 -49
- package/src/components/modal/index.ts +0 -18
- package/src/components/nav/Nav.tsx +0 -97
- package/src/components/nav/NavItem.tsx +0 -42
- package/src/components/nav/NavLink.tsx +0 -48
- package/src/components/nav/NavTitle.tsx +0 -22
- package/src/components/nav/index.ts +0 -11
- package/src/components/navbar/Navbar.tsx +0 -112
- package/src/components/navbar/NavbarBrand.tsx +0 -58
- package/src/components/navbar/NavbarNav.tsx +0 -47
- package/src/components/navbar/NavbarText.tsx +0 -47
- package/src/components/navbar/NavbarToggler.tsx +0 -40
- package/src/components/navbar/index.ts +0 -14
- package/src/components/notification/Notification.scss +0 -15
- package/src/components/notification/Notification.tsx +0 -188
- package/src/components/notification/NotificationIcon.tsx +0 -21
- package/src/components/notification/NotificationStack.tsx +0 -66
- package/src/components/notification/NotificationText.tsx +0 -47
- package/src/components/notification/NotificationTitle.tsx +0 -47
- package/src/components/notification/context.ts +0 -14
- package/src/components/notification/index.ts +0 -25
- package/src/components/notification/notificationQueue.ts +0 -48
- package/src/components/otp-input/OtpBox.tsx +0 -68
- package/src/components/otp-input/OtpInput.tsx +0 -342
- package/src/components/otp-input/index.ts +0 -6
- package/src/components/pagination/Pagination.tsx +0 -212
- package/src/components/pagination/PaginationItem.tsx +0 -152
- package/src/components/pagination/index.ts +0 -12
- package/src/components/password-strength/PasswordStrength.tsx +0 -155
- package/src/components/password-strength/index.ts +0 -6
- package/src/components/password-strength/strengthScore.ts +0 -79
- package/src/components/placeholder/Placeholder.tsx +0 -178
- package/src/components/placeholder/index.ts +0 -6
- package/src/components/popover/Popover.tsx +0 -269
- package/src/components/popover/index.ts +0 -6
- package/src/components/progress/Progress.tsx +0 -154
- package/src/components/progress/ProgressBar.tsx +0 -88
- package/src/components/progress/index.ts +0 -8
- package/src/components/radio/Radio.tsx +0 -98
- package/src/components/radio/RadioGroup.tsx +0 -142
- package/src/components/radio/context.ts +0 -14
- package/src/components/radio/index.ts +0 -8
- package/src/components/range-input/RangeInput.tsx +0 -109
- package/src/components/range-input/index.ts +0 -6
- package/src/components/select/Select.tsx +0 -277
- package/src/components/select/index.ts +0 -6
- package/src/components/skeleton/Skeleton.tsx +0 -89
- package/src/components/skeleton/SkeletonLoader.tsx +0 -98
- package/src/components/skeleton/index.ts +0 -8
- package/src/components/spinner/Spinner.tsx +0 -77
- package/src/components/spinner/index.ts +0 -6
- package/src/components/stack/Stack.tsx +0 -81
- package/src/components/stack/index.ts +0 -6
- package/src/components/static-table/StaticTable.tsx +0 -78
- package/src/components/static-table/index.ts +0 -8
- package/src/components/stepper/Stepper.tsx +0 -172
- package/src/components/stepper/StepperItem.tsx +0 -66
- package/src/components/stepper/index.ts +0 -8
- package/src/components/switch/Switch.tsx +0 -259
- package/src/components/switch/index.ts +0 -6
- package/src/components/table/Table.css +0 -39
- package/src/components/table/Table.tsx +0 -405
- package/src/components/table/TableBody.tsx +0 -25
- package/src/components/table/TableCell.tsx +0 -27
- package/src/components/table/TableColumn.tsx +0 -31
- package/src/components/table/TableHeader.tsx +0 -26
- package/src/components/table/TableRow.tsx +0 -24
- package/src/components/table/index.ts +0 -16
- package/src/components/tabs/Tab.tsx +0 -36
- package/src/components/tabs/TabList.tsx +0 -76
- package/src/components/tabs/TabPanel.tsx +0 -68
- package/src/components/tabs/Tabs.tsx +0 -136
- package/src/components/tabs/context.ts +0 -24
- package/src/components/tabs/index.ts +0 -12
- package/src/components/text-input/TextInput.tsx +0 -188
- package/src/components/text-input/index.ts +0 -6
- package/src/components/textarea/Textarea.tsx +0 -145
- package/src/components/textarea/index.ts +0 -6
- package/src/components/toast/Toast.tsx +0 -220
- package/src/components/toast/ToastBody.tsx +0 -64
- package/src/components/toast/ToastFooter.tsx +0 -47
- package/src/components/toast/ToastHeader.tsx +0 -105
- package/src/components/toast/ToastIcon.tsx +0 -21
- package/src/components/toast/Toaster.tsx +0 -87
- package/src/components/toast/context.ts +0 -14
- package/src/components/toast/index.ts +0 -26
- package/src/components/toast/toastQueue.ts +0 -56
- package/src/components/tooltip/Tooltip.tsx +0 -171
- package/src/components/tooltip/index.ts +0 -6
- package/src/global.d.ts +0 -2
- package/src/hooks/index.ts +0 -57
- package/src/hooks/useAutoDismiss.ts +0 -91
- package/src/hooks/useButtonSemantics.ts +0 -33
- package/src/hooks/useControllableState.ts +0 -24
- package/src/hooks/useDialogElement.ts +0 -226
- package/src/hooks/useDisabledAnchorGuard.ts +0 -22
- package/src/hooks/useDismissibleTransition.ts +0 -126
- package/src/hooks/useDrawer.ts +0 -9
- package/src/hooks/useFloatingOverlay.ts +0 -125
- package/src/hooks/useForkedRef.ts +0 -50
- package/src/hooks/useFormField.ts +0 -89
- package/src/hooks/useIconConfig.ts +0 -6
- package/src/hooks/useIsomorphicLayoutEffect.ts +0 -9
- package/src/hooks/useModal.ts +0 -9
- package/src/hooks/useNotification.ts +0 -10
- package/src/hooks/useOverlayPlacement.ts +0 -93
- package/src/hooks/usePagination.ts +0 -89
- package/src/hooks/useToast.ts +0 -9
- package/src/hooks/useToastRegionQueue.ts +0 -27
- package/src/index.ts +0 -522
- package/src/types.ts +0 -133
- package/src/utils/breakpoints.ts +0 -43
- package/src/utils/comboboxCollection.tsx +0 -152
- package/src/utils/dateRangePresets.ts +0 -6
- package/src/utils/devWarning.ts +0 -58
- package/src/utils/dialogTransition.ts +0 -39
- package/src/utils/direction.ts +0 -14
- package/src/utils/focusRedirect.ts +0 -23
- package/src/utils/iconConfig.ts +0 -88
- package/src/utils/iconSlot.tsx +0 -41
- package/src/utils/isWholeUnitDisabled.ts +0 -17
- package/src/utils/mergeIsDateUnavailable.ts +0 -15
- package/src/utils/overlayPlacement.ts +0 -93
- package/src/utils/pointerInteraction.ts +0 -21
- package/src/utils/polymorphic.ts +0 -100
- package/src/utils/renderMenuItemContent.tsx +0 -57
- package/src/utils/setVisibleRangeStart.ts +0 -64
- package/src/utils/slot.tsx +0 -78
- package/src/utils/spacingClassName.ts +0 -14
- package/src/utils/suppressFocusRingGlobally.ts +0 -84
- package/src/utils/tableClassName.ts +0 -93
- package/src/utils/triggerElement.ts +0 -25
- package/src/utils/validationClassName.ts +0 -8
- package/src/utils/virtualFocusStyle.ts +0 -16
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import React, { ComponentType, ReactElement, ReactNode } from 'react'
|
|
2
|
-
import { Item, Key, Section } from 'react-stately'
|
|
3
|
-
|
|
4
|
-
import { ComboboxGroupProps } from '../components/combobox/ComboboxGroup'
|
|
5
|
-
import { ComboboxItem, ComboboxItemProps } from '../components/combobox/ComboboxItem'
|
|
6
|
-
import { MenuItemsDef } from '../components/menu/MenuItemDef'
|
|
7
|
-
import { renderMenuItemContent } from './renderMenuItemContent'
|
|
8
|
-
|
|
9
|
-
// Shared between Combobox.tsx/ComboboxListBox.tsx (which build/render this collection) and
|
|
10
|
-
// Autocomplete.tsx (which reuses the same entry shape — see the comment on
|
|
11
|
-
// `buildEntriesFromChildren` below). Lives in `utils/` rather than `components/combobox/` because
|
|
12
|
-
// it crosses that folder boundary; kept in its own file to also avoid a circular import between
|
|
13
|
-
// Combobox.tsx and ComboboxListBox.tsx.
|
|
14
|
-
|
|
15
|
-
export type ComboboxItemElement = ReactElement<ComboboxItemProps>
|
|
16
|
-
|
|
17
|
-
export interface ComboboxGroupEntry {
|
|
18
|
-
entryType: 'group'
|
|
19
|
-
key: Key
|
|
20
|
-
label: ReactNode
|
|
21
|
-
items: ComboboxItemElement[]
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export type ComboboxEntry = ComboboxItemElement | ComboboxGroupEntry
|
|
25
|
-
|
|
26
|
-
// `useComboBoxState`/`useComboBox`'s own `SelectionMode` ('single' | 'multiple') isn't
|
|
27
|
-
// re-exported from react-stately's public entry point (only `ComboBoxState` etc. are) — this is
|
|
28
|
-
// a structurally-identical stand-in so `ComboboxListBox` can stay generic over it without a
|
|
29
|
-
// fragile deep import.
|
|
30
|
-
export type ComboboxSelectionMode = 'single' | 'multiple'
|
|
31
|
-
|
|
32
|
-
export const isComboboxGroupEntry = (entry: ComboboxEntry): entry is ComboboxGroupEntry =>
|
|
33
|
-
(entry as ComboboxGroupEntry).entryType === 'group'
|
|
34
|
-
|
|
35
|
-
// `Autocomplete`'s own `AutocompleteItem`/`AutocompleteGroup` are structurally identical to
|
|
36
|
-
// `ComboboxItem`/`ComboboxGroup` (see AutocompleteItem.tsx/AutocompleteGroup.tsx — kept as
|
|
37
|
-
// separate named types only so `Autocomplete`'s public API doesn't leak `Combobox`'s own prop
|
|
38
|
-
// type), but they're different *runtime* component identities, which is what
|
|
39
|
-
// `buildEntriesFromChildren` below needs to check consumer-authored `children` against. Passing
|
|
40
|
-
// the pair in lets one implementation serve both families instead of two near-duplicate copies.
|
|
41
|
-
export interface ComboboxCollectionComponents {
|
|
42
|
-
Group: ComponentType<ComboboxGroupProps>
|
|
43
|
-
Item: ComponentType<ComboboxItemProps>
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// Splits `children` into a flat, ordered list of entries — bare `Item` elements and
|
|
47
|
-
// `Group`-wrapped clusters of them — mirroring how `useComboBoxState`'s dynamic collection needs
|
|
48
|
-
// top-level nodes: some rendered as a plain `<Item>`, some as a `<Section>` wrapping several
|
|
49
|
-
// `<Item>`s (see `comboboxCollectionChildren` below).
|
|
50
|
-
export const buildEntriesFromChildren = (
|
|
51
|
-
children: ReactNode,
|
|
52
|
-
{ Group, Item: ItemComponent }: ComboboxCollectionComponents
|
|
53
|
-
): ComboboxEntry[] => {
|
|
54
|
-
const entries: ComboboxEntry[] = []
|
|
55
|
-
React.Children.forEach(children, (child, index) => {
|
|
56
|
-
if (!React.isValidElement(child)) return
|
|
57
|
-
if (child.type === Group) {
|
|
58
|
-
const groupProps = child.props as ComboboxGroupProps
|
|
59
|
-
const items: ComboboxItemElement[] = []
|
|
60
|
-
React.Children.forEach(groupProps.children, (groupChild) => {
|
|
61
|
-
if (React.isValidElement(groupChild) && groupChild.type === ItemComponent) {
|
|
62
|
-
items.push(groupChild as ComboboxItemElement)
|
|
63
|
-
}
|
|
64
|
-
})
|
|
65
|
-
entries.push({ entryType: 'group', key: `group-${index}`, label: groupProps.label, items })
|
|
66
|
-
return
|
|
67
|
-
}
|
|
68
|
-
if (child.type === ItemComponent) {
|
|
69
|
-
entries.push(child as ComboboxItemElement)
|
|
70
|
-
}
|
|
71
|
-
})
|
|
72
|
-
return entries
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
// Same shape as `buildEntriesFromChildren`, from a flat `MenuItemsDef` instead. A `'header'`
|
|
76
|
-
// entry opens a new group that all following items join until the next header (or the end of
|
|
77
|
-
// the array) — matching how chassis-css itself renders grouped items (flat siblings, no
|
|
78
|
-
// wrapping element per group). `'divider'` entries aren't meaningful for a listbox/option
|
|
79
|
-
// collection and are skipped.
|
|
80
|
-
//
|
|
81
|
-
// Always builds a bare `ComboboxItem` internally regardless of which family (`Combobox` or
|
|
82
|
-
// `Autocomplete`) called it: unlike `buildEntriesFromChildren`, nothing downstream re-checks
|
|
83
|
-
// these elements' runtime type (they're read only via `.props.*`, never matched against a
|
|
84
|
-
// component reference again), so there's no need to thread `ComboboxCollectionComponents`
|
|
85
|
-
// through here too. `def.href`/`def.onClick` are intentionally not read — see the doc comments on
|
|
86
|
-
// `MenuItemDef` itself for why: they're `Menu`-only fields on this shared type.
|
|
87
|
-
export const buildEntriesFromItemsDef = (defs: MenuItemsDef): ComboboxEntry[] => {
|
|
88
|
-
const entries: ComboboxEntry[] = []
|
|
89
|
-
let currentGroup: ComboboxGroupEntry | null = null
|
|
90
|
-
|
|
91
|
-
defs.forEach((def) => {
|
|
92
|
-
if (def.type === 'divider') return
|
|
93
|
-
if (def.type === 'header') {
|
|
94
|
-
currentGroup = { entryType: 'group', key: def.id, label: def.label, items: [] }
|
|
95
|
-
entries.push(currentGroup)
|
|
96
|
-
return
|
|
97
|
-
}
|
|
98
|
-
const item = (
|
|
99
|
-
<ComboboxItem
|
|
100
|
-
key={def.id}
|
|
101
|
-
id={def.id}
|
|
102
|
-
disabled={def.disabled}
|
|
103
|
-
icon={def.icon}
|
|
104
|
-
description={def.description}
|
|
105
|
-
textValue={def.textValue}
|
|
106
|
-
>
|
|
107
|
-
{def.label}
|
|
108
|
-
</ComboboxItem>
|
|
109
|
-
)
|
|
110
|
-
if (currentGroup) currentGroup.items.push(item)
|
|
111
|
-
else entries.push(item)
|
|
112
|
-
})
|
|
113
|
-
|
|
114
|
-
return entries
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
export const getDisabledKeys = (entries: ComboboxEntry[]): Key[] =>
|
|
118
|
-
entries.reduce<Key[]>((keys, entry) => {
|
|
119
|
-
const items = isComboboxGroupEntry(entry) ? entry.items : [entry]
|
|
120
|
-
return keys.concat(items.filter((item) => item.props.disabled).map((item) => item.props.id))
|
|
121
|
-
}, [])
|
|
122
|
-
|
|
123
|
-
// Builds the react-stately `Item` node `useComboBoxState`'s collection actually renders from one
|
|
124
|
-
// entry's props — identical for `Combobox` and `Autocomplete` regardless of which authoring
|
|
125
|
-
// component (`ComboboxItem`/`AutocompleteItem`) produced it, since both share the same prop shape.
|
|
126
|
-
export const renderComboboxCollectionItem = (item: ComboboxItemElement) => (
|
|
127
|
-
<Item
|
|
128
|
-
key={item.props.id}
|
|
129
|
-
textValue={
|
|
130
|
-
item.props.textValue ??
|
|
131
|
-
(typeof item.props.children === 'string' ? item.props.children : undefined)
|
|
132
|
-
}
|
|
133
|
-
>
|
|
134
|
-
{renderMenuItemContent({
|
|
135
|
-
icon: item.props.icon,
|
|
136
|
-
label: item.props.children,
|
|
137
|
-
description: item.props.description
|
|
138
|
-
})}
|
|
139
|
-
</Item>
|
|
140
|
-
)
|
|
141
|
-
|
|
142
|
-
// `useComboBoxState`'s own `children` render prop, given one `ComboboxEntry` — a plain `Item` for
|
|
143
|
-
// a bare entry, a `Section` wrapping its items for a group. Identical for `Combobox` and
|
|
144
|
-
// `Autocomplete`'s state setup.
|
|
145
|
-
export const comboboxCollectionChildren = (entry: ComboboxEntry) =>
|
|
146
|
-
isComboboxGroupEntry(entry) ? (
|
|
147
|
-
<Section key={entry.key} title={entry.label} items={entry.items}>
|
|
148
|
-
{renderComboboxCollectionItem}
|
|
149
|
-
</Section>
|
|
150
|
-
) : (
|
|
151
|
-
renderComboboxCollectionItem(entry)
|
|
152
|
-
)
|
package/src/utils/devWarning.ts
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
// Development-only misuse warnings, in one place so every component reports misuse the same way
|
|
2
|
-
// and none of it reaches a consumer's production bundle.
|
|
3
|
-
//
|
|
4
|
-
// Two problems this fixes over calling `console.warn` directly, which is what every call site used
|
|
5
|
-
// to do:
|
|
6
|
-
//
|
|
7
|
-
// 1. **They fired in production.** Nothing in this package guarded on `NODE_ENV`, so every
|
|
8
|
-
// `console.warn` ran for end users of a consuming app. `process.env.NODE_ENV` is the idiom
|
|
9
|
-
// bundlers (Vite, webpack, Turbopack, Rollup) replace with a literal, so in a production build
|
|
10
|
-
// `IS_DEV` folds to `false` and no warning is ever emitted. Relying on that substitution adds
|
|
11
|
-
// no new constraint: `react-dom` — a peer dependency, so always present — already requires
|
|
12
|
-
// exactly the same replacement.
|
|
13
|
-
// 2. **They repeated.** Most call sites warn during render, so a warning re-fired on every
|
|
14
|
-
// re-render, and twice per render under StrictMode's double-invoke. De-duplicating on the
|
|
15
|
-
// message means a misuse is reported once and stays readable in the console.
|
|
16
|
-
//
|
|
17
|
-
// What this does *not* do is strip the message strings from the bundle. Measured with esbuild
|
|
18
|
-
// against the built `dist/index.js`: a `NODE_ENV=production` consumer bundle still contains them.
|
|
19
|
-
// `tsdown` minifies this package's own output first (`minify: true`), collapsing each function to
|
|
20
|
-
// a `IS_DEV && cond && ...` expression, and a consumer's minifier won't then inline that call to
|
|
21
|
-
// discover its arguments are droppable. Building unminified would let them drop, at the cost of
|
|
22
|
-
// shipping pretty-printed dist — not worth it for a few hundred gzipped bytes. The behavior that
|
|
23
|
-
// mattered (nothing logged in production, nothing repeated in development) is the part that's
|
|
24
|
-
// fixed; treat the strings as part of the bundle's fixed cost.
|
|
25
|
-
const IS_DEV = process.env.NODE_ENV !== 'production'
|
|
26
|
-
|
|
27
|
-
const warned = new Set<string>()
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Resets the de-duplication set. Test-only — the suite asserts on these warnings, and without a
|
|
31
|
-
* reset between tests the *second* test in a file to trigger the same message would see nothing.
|
|
32
|
-
* Called from a global `beforeEach` in `test/setup.ts`.
|
|
33
|
-
*/
|
|
34
|
-
export function resetDevWarnings(): void {
|
|
35
|
-
warned.clear()
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Logs `message` once via `console.warn` when `condition` is true, in development builds only.
|
|
40
|
-
* Use for a recoverable misuse: the component still renders something sensible.
|
|
41
|
-
*/
|
|
42
|
-
export function devWarning(condition: boolean, message: string): void {
|
|
43
|
-
if (!IS_DEV) return
|
|
44
|
-
if (!condition || warned.has(message)) return
|
|
45
|
-
warned.add(message)
|
|
46
|
-
console.warn(message)
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Logs `message` once via `console.error` when `condition` is true, in development builds only.
|
|
51
|
-
* Use for a misuse that leaves the component genuinely broken (e.g. a required prop missing).
|
|
52
|
-
*/
|
|
53
|
-
export function devError(condition: boolean, message: string): void {
|
|
54
|
-
if (!IS_DEV) return
|
|
55
|
-
if (!condition || warned.has(message)) return
|
|
56
|
-
warned.add(message)
|
|
57
|
-
console.error(message)
|
|
58
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
// Shared transition timing for native <dialog>-based components (Modal, Drawer). Body-scroll
|
|
2
|
-
// locking is handled by react-aria's usePreventScroll directly in each component.
|
|
3
|
-
|
|
4
|
-
export const getTransitionDuration = (element: HTMLElement) => {
|
|
5
|
-
const { transitionDuration, transitionDelay } = window.getComputedStyle(element)
|
|
6
|
-
const duration = Number.parseFloat(transitionDuration) || 0
|
|
7
|
-
const delay = Number.parseFloat(transitionDelay) || 0
|
|
8
|
-
if (!duration && !delay) return 0
|
|
9
|
-
return (duration + delay) * 1000
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export const executeAfterTransition = (
|
|
13
|
-
element: HTMLElement,
|
|
14
|
-
callback: () => void,
|
|
15
|
-
animated: boolean
|
|
16
|
-
) => {
|
|
17
|
-
if (!animated) {
|
|
18
|
-
callback()
|
|
19
|
-
return () => undefined
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
let called = false
|
|
23
|
-
const done = () => {
|
|
24
|
-
if (called) return
|
|
25
|
-
called = true
|
|
26
|
-
element.removeEventListener('transitionend', handleEnd)
|
|
27
|
-
clearTimeout(timer)
|
|
28
|
-
callback()
|
|
29
|
-
}
|
|
30
|
-
const handleEnd = (event: Event) => {
|
|
31
|
-
if (event.target === element) done()
|
|
32
|
-
}
|
|
33
|
-
element.addEventListener('transitionend', handleEnd)
|
|
34
|
-
const timer = setTimeout(done, getTransitionDuration(element) + 50)
|
|
35
|
-
return () => {
|
|
36
|
-
element.removeEventListener('transitionend', handleEnd)
|
|
37
|
-
clearTimeout(timer)
|
|
38
|
-
}
|
|
39
|
-
}
|
package/src/utils/direction.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Whether `element` renders right-to-left.
|
|
3
|
-
*
|
|
4
|
-
* Reads the *computed* direction rather than react-aria's `useLocale()`. The two are deliberately
|
|
5
|
-
* separate signals in this library (see the Internationalization docs page): `useLocale()` follows
|
|
6
|
-
* `I18nProvider`, and drives locale-dependent behavior like which calendar system to use;
|
|
7
|
-
* everything about visual layout — including which physical arrow key moves "forward" through a
|
|
8
|
-
* horizontally-laid-out control — follows the `dir` attribute, which is what `getComputedStyle`
|
|
9
|
-
* resolves here. A page can set one without the other, and for arrow-key navigation it's the
|
|
10
|
-
* rendered order the user sees that has to match.
|
|
11
|
-
*/
|
|
12
|
-
export function isRTL(element: Element): boolean {
|
|
13
|
-
return getComputedStyle(element).direction === 'rtl'
|
|
14
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { suppressFocusRing } from './suppressFocusRingGlobally'
|
|
2
|
-
|
|
3
|
-
// Safari shows a `:focus-visible` ring on an element focused via script even when the
|
|
4
|
-
// interaction that triggered the script was a real pointer click — unlike Chromium/Firefox,
|
|
5
|
-
// which correctly suppress it in that case. Force the ring off for a pointer-triggered redirect,
|
|
6
|
-
// then let normal focus-visible behavior resume the next time this element is genuinely
|
|
7
|
-
// (re)focused, e.g. via Tab.
|
|
8
|
-
//
|
|
9
|
-
// The suppress/restore cycle itself is `suppressFocusRing`'s, not reimplemented here: it owns the
|
|
10
|
-
// re-entrancy guard that keeps a second call before the element blurs from capturing the
|
|
11
|
-
// already-suppressed value as the one to restore (which left the ring off for good — reachable by
|
|
12
|
-
// clicking twice at the same disabled end of a `ends="stop"` carousel). `boxShadow` is suppressed
|
|
13
|
-
// alongside `outline` here, but not on the global pointerdown path, because a redirect can land
|
|
14
|
-
// on an element whose ring is painted that way.
|
|
15
|
-
export function focusRedirect(
|
|
16
|
-
el: HTMLElement | null,
|
|
17
|
-
viaPointer: boolean,
|
|
18
|
-
focusOptions?: FocusOptions
|
|
19
|
-
): void {
|
|
20
|
-
if (!el) return
|
|
21
|
-
if (viaPointer) suppressFocusRing(el, ['outline', 'boxShadow'])
|
|
22
|
-
el.focus(focusOptions)
|
|
23
|
-
}
|
package/src/utils/iconConfig.ts
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { ComponentType, createContext, ReactElement } from 'react'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* The icons this library's own components draw, by purpose rather than by icon name — so a
|
|
5
|
-
* consumer can map each one onto any icon set (see `IconProvider`'s `icons`).
|
|
6
|
-
*/
|
|
7
|
-
export type IconKey = 'check' | 'previous' | 'next' | 'menu' | 'play' | 'pause'
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* An icon given to `IconProvider`'s `icons` or to a component's icon prop: a string is an icon
|
|
11
|
-
* name, rendered by `IconProvider`'s `component` (or the built-in `Icon`); an element is rendered
|
|
12
|
-
* as-is, with the component's own class names merged onto it.
|
|
13
|
-
*/
|
|
14
|
-
export type IconValue = string | ReactElement
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Props `IconProvider`'s `component` receives for every icon name it's asked to render.
|
|
18
|
-
*/
|
|
19
|
-
export interface IconComponentProps {
|
|
20
|
-
/**
|
|
21
|
-
* The icon name — an `IconValue` string, or `IconProvider`'s default for that icon.
|
|
22
|
-
*/
|
|
23
|
-
name: string
|
|
24
|
-
/**
|
|
25
|
-
* The class names the rendering component needs on the icon (e.g. `menu-item-check`,
|
|
26
|
-
* `directional-icon`) for chassis-css to position and flip it.
|
|
27
|
-
*/
|
|
28
|
-
className?: string
|
|
29
|
-
[prop: string]: unknown
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export interface IconConfig {
|
|
33
|
-
/**
|
|
34
|
-
* Class names added to every `Icon`, alongside its own `icon` class.
|
|
35
|
-
*/
|
|
36
|
-
className?: string
|
|
37
|
-
/**
|
|
38
|
-
* Replaces the built-in `Icon` for every icon this library's components render by name — the
|
|
39
|
-
* strings in `icons` and their defaults, and a string `icon` on `Toast`/`Notification`. A
|
|
40
|
-
* component reference can't be passed from a React Server Component, so set this in a
|
|
41
|
-
* `'use client'` module.
|
|
42
|
-
*/
|
|
43
|
-
component?: ComponentType<IconComponentProps>
|
|
44
|
-
/**
|
|
45
|
-
* Render `Icon` as an icon-font glyph instead of an SVG sprite reference, unless an `Icon` sets
|
|
46
|
-
* `font` itself. Needs the icon font's stylesheet loaded.
|
|
47
|
-
*/
|
|
48
|
-
font?: boolean
|
|
49
|
-
/**
|
|
50
|
-
* Class-name prefix of the icon font's glyphs: an icon named `check-solid` renders as
|
|
51
|
-
* `{fontPrefix}check-solid`.
|
|
52
|
-
*
|
|
53
|
-
* @default 'cx-'
|
|
54
|
-
*/
|
|
55
|
-
fontPrefix?: string
|
|
56
|
-
/**
|
|
57
|
-
* The icon to render for each of the library's own icons, by purpose. Unset ones keep their
|
|
58
|
-
* defaults (`check-solid`, `chevron-left-outline`, `chevron-right-outline`, `bars-outline`,
|
|
59
|
-
* `play-solid`, `pause-solid`).
|
|
60
|
-
*/
|
|
61
|
-
icons?: Partial<Record<IconKey, IconValue>>
|
|
62
|
-
/**
|
|
63
|
-
* URL of the SVG sprite `Icon` references, e.g. `/static/icons/chassis-icons.svg`. Leave empty
|
|
64
|
-
* (the default) when the sprite is embedded in the page, so icons render as `href="#name"`.
|
|
65
|
-
* Browsers don't load an external sprite from another origin.
|
|
66
|
-
*
|
|
67
|
-
* @default ''
|
|
68
|
-
*/
|
|
69
|
-
sprite?: string
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
// The chassis-icons names this library used before its icons became configurable. Both
|
|
73
|
-
// previous/next consumers (Pagination, Carousel) now share the outline chevrons — Pagination used
|
|
74
|
-
// the solid ones.
|
|
75
|
-
export const DEFAULT_ICONS: Record<IconKey, string> = {
|
|
76
|
-
check: 'check-solid',
|
|
77
|
-
previous: 'chevron-left-outline',
|
|
78
|
-
next: 'chevron-right-outline',
|
|
79
|
-
menu: 'bars-outline',
|
|
80
|
-
play: 'play-solid',
|
|
81
|
-
pause: 'pause-solid'
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export const DEFAULT_FONT_PREFIX = 'cx-'
|
|
85
|
-
|
|
86
|
-
// Lives in `utils/` rather than `components/icon/` because it's read outside that folder too —
|
|
87
|
-
// by `IconSlot` (`./iconSlot.tsx`), which every icon-drawing component renders through.
|
|
88
|
-
export const IconContext = createContext<IconConfig>({})
|
package/src/utils/iconSlot.tsx
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import React, { cloneElement, ReactElement } from 'react'
|
|
2
|
-
import { mergeProps } from 'react-aria'
|
|
3
|
-
|
|
4
|
-
import { Icon } from '../components/icon/Icon'
|
|
5
|
-
import { useIconConfig } from '../hooks/useIconConfig'
|
|
6
|
-
import { DEFAULT_ICONS, IconKey, IconValue } from './iconConfig'
|
|
7
|
-
|
|
8
|
-
// Every icon this library's own components draw goes through here, never through `<Icon>`
|
|
9
|
-
// directly, so a consumer can swap in their own icons (`IconProvider`'s `icons`/`component`, or a
|
|
10
|
-
// component's own icon prop). The rendering component passes the class names chassis-css hooks
|
|
11
|
-
// onto (`menu-item-check` positions the check, `navbar-toggler-icon` sizes and colors it,
|
|
12
|
-
// `carousel-icon-play`/`-pause` are toggled by state, `directional-icon` flips in RTL); those are
|
|
13
|
-
// merged onto whatever icon ends up rendered, so a custom icon lands in the same place a built-in
|
|
14
|
-
// one would. `aria-hidden` defaults on: each of these icons sits beside its own visible or
|
|
15
|
-
// visually-hidden label.
|
|
16
|
-
//
|
|
17
|
-
// A custom *element* deliberately doesn't get the `icon` class itself: chassis-css's `.icon` sets
|
|
18
|
-
// `fill`, which would paint over an outline icon set's `fill="none"` (Lucide, Heroicons outline,
|
|
19
|
-
// ...). It keeps its own size and color — `currentColor` icons still follow the control's text.
|
|
20
|
-
type IconRenderProps = { className?: string } & Record<string, unknown>
|
|
21
|
-
|
|
22
|
-
export function ResolvedIcon({ value, ...props }: IconRenderProps & { value: IconValue }) {
|
|
23
|
-
const { component: Component } = useIconConfig()
|
|
24
|
-
const iconProps = { 'aria-hidden': true, ...props }
|
|
25
|
-
|
|
26
|
-
if (typeof value !== 'string') {
|
|
27
|
-
const element = value as ReactElement<Record<string, unknown>>
|
|
28
|
-
return cloneElement(element, mergeProps(iconProps, element.props))
|
|
29
|
-
}
|
|
30
|
-
if (Component) return <Component name={value} {...iconProps} />
|
|
31
|
-
return <Icon name={value} {...iconProps} />
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export function IconSlot({
|
|
35
|
-
icon,
|
|
36
|
-
override,
|
|
37
|
-
...props
|
|
38
|
-
}: IconRenderProps & { icon: IconKey; override?: IconValue }) {
|
|
39
|
-
const { icons } = useIconConfig()
|
|
40
|
-
return <ResolvedIcon value={override ?? icons?.[icon] ?? DEFAULT_ICONS[icon]} {...props} />
|
|
41
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { CalendarState, RangeCalendarState } from 'react-stately'
|
|
2
|
-
import { CalendarDate, toCalendarDate } from '@internationalized/date'
|
|
3
|
-
|
|
4
|
-
// Shared by `CalendarMonthGrid` and `CalendarYearGrid` — a month/year button is disabled when
|
|
5
|
-
// every day it covers falls outside `minValue`/`maxValue`, not just when its first day does (e.g.
|
|
6
|
-
// a `maxValue` of March 15th still leaves March itself partly selectable, so March's button stays
|
|
7
|
-
// enabled; April's doesn't). `unitEnd` is the last day of the button's own month/year.
|
|
8
|
-
export const isWholeUnitDisabled = (
|
|
9
|
-
state: CalendarState<'single' | 'multiple'> | RangeCalendarState,
|
|
10
|
-
unitStart: CalendarDate,
|
|
11
|
-
unitEnd: CalendarDate
|
|
12
|
-
): boolean => {
|
|
13
|
-
if (state.isDisabled) return true
|
|
14
|
-
if (state.maxValue && unitStart.compare(toCalendarDate(state.maxValue)) > 0) return true
|
|
15
|
-
if (state.minValue && unitEnd.compare(toCalendarDate(state.minValue)) < 0) return true
|
|
16
|
-
return false
|
|
17
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { DateValue } from 'react-stately'
|
|
2
|
-
|
|
3
|
-
// `date.toString()` on a `CalendarDate` (the only `DateValue` variant `Calendar`/`DatePicker`
|
|
4
|
-
// ever produce — both are date-only, no time segments) yields the same ISO 8601 `YYYY-MM-DD`
|
|
5
|
-
// string already used elsewhere for form submission (see `DatePicker`'s hidden input), so
|
|
6
|
-
// `unavailableDates` entries are expected in that same format.
|
|
7
|
-
export const mergeIsDateUnavailable = (
|
|
8
|
-
unavailableDates: string[] | undefined,
|
|
9
|
-
isDateUnavailable: ((date: DateValue) => boolean) | undefined
|
|
10
|
-
): ((date: DateValue) => boolean) | undefined => {
|
|
11
|
-
if (!unavailableDates?.length && !isDateUnavailable) return undefined
|
|
12
|
-
|
|
13
|
-
const set = unavailableDates?.length ? new Set(unavailableDates) : null
|
|
14
|
-
return (date) => Boolean(set?.has(date.toString())) || Boolean(isDateUnavailable?.(date))
|
|
15
|
-
}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import type { CSSProperties } from 'react'
|
|
2
|
-
import type { Placement as AriaPlacement, PlacementAxis } from 'react-aria'
|
|
3
|
-
|
|
4
|
-
// Chassis CSS's floating components (`.menu`, `.tooltip`, `.popover`) read a `data-cx-placement`
|
|
5
|
-
// attribute in this hyphenated, compound form (`"bottom-end"`, `"top-start"`, ...) to pick the
|
|
6
|
-
// right transform-origin for the open/close animation. React Aria's `useOverlayPosition` speaks a
|
|
7
|
-
// different, space-separated placement vocabulary (`"bottom end"`) and only reports back the
|
|
8
|
-
// resolved main axis after flipping, not the full compound value — this module bridges the two.
|
|
9
|
-
export type Placement =
|
|
10
|
-
| 'top'
|
|
11
|
-
| 'top-start'
|
|
12
|
-
| 'top-end'
|
|
13
|
-
| 'bottom'
|
|
14
|
-
| 'bottom-start'
|
|
15
|
-
| 'bottom-end'
|
|
16
|
-
| 'left'
|
|
17
|
-
| 'left-start'
|
|
18
|
-
| 'left-end'
|
|
19
|
-
| 'right'
|
|
20
|
-
| 'right-start'
|
|
21
|
-
| 'right-end'
|
|
22
|
-
|
|
23
|
-
const ARIA_PLACEMENT: Record<Placement, AriaPlacement> = {
|
|
24
|
-
top: 'top',
|
|
25
|
-
'top-start': 'top start',
|
|
26
|
-
'top-end': 'top end',
|
|
27
|
-
bottom: 'bottom',
|
|
28
|
-
'bottom-start': 'bottom start',
|
|
29
|
-
'bottom-end': 'bottom end',
|
|
30
|
-
left: 'left',
|
|
31
|
-
'left-start': 'left top',
|
|
32
|
-
'left-end': 'left bottom',
|
|
33
|
-
right: 'right',
|
|
34
|
-
'right-start': 'right top',
|
|
35
|
-
'right-end': 'right bottom'
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Translates chassis-react's public `placement` prop values into the strings
|
|
39
|
-
// `useOverlayPosition` expects.
|
|
40
|
-
export const toAriaPlacement = (placement: Placement): AriaPlacement => ARIA_PLACEMENT[placement]
|
|
41
|
-
|
|
42
|
-
// `useOverlayPosition`'s own `shouldFlip` only ever swaps the main axis (top<->bottom or
|
|
43
|
-
// left<->right) — it never changes the requested cross-axis alignment — so the resolved compound
|
|
44
|
-
// value is always the requested cross-axis suffix reattached to the (possibly flipped) main axis
|
|
45
|
-
// `useOverlayPosition` reports back.
|
|
46
|
-
export const resolveDataPlacement = (
|
|
47
|
-
requested: Placement,
|
|
48
|
-
resolvedMain: PlacementAxis | null
|
|
49
|
-
): string => {
|
|
50
|
-
if (!resolvedMain || resolvedMain === 'center') return requested
|
|
51
|
-
const cross = requested.split('-')[1]
|
|
52
|
-
return cross ? `${resolvedMain}-${cross}` : resolvedMain
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
// Shared between `Menu`/`MenuSubmenu` and `Combobox`/`Autocomplete`, whose floating panels all
|
|
56
|
-
// position via `useOverlayPosition` the same way: only `position`/`top`/`left` are taken from the
|
|
57
|
-
// hook's computed style (`zIndex`/`maxHeight` stay owned by chassis-css's own `--zindex`/
|
|
58
|
-
// `--max-height` tokens, see `_menu.scss`), and `data-cx-placement` needs the resolved main axis
|
|
59
|
-
// reattached to the originally-requested cross-axis alignment. Lives here (rather than
|
|
60
|
-
// `components/menu/`) for the same reason `renderMenuItemContent` does — `Combobox.tsx`/
|
|
61
|
-
// `Autocomplete.tsx` need it too, and importing across that folder boundary from three call sites
|
|
62
|
-
// is worse than housing it where none of the four has to reach into a sibling's folder.
|
|
63
|
-
export interface MenuOverlayPositioning {
|
|
64
|
-
menuStyle: CSSProperties
|
|
65
|
-
placementAttr: string
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export const resolveMenuOverlayPositioning = (
|
|
69
|
-
overlayStyle: CSSProperties | undefined,
|
|
70
|
-
requestedPlacement: Placement,
|
|
71
|
-
resolvedPlacement: PlacementAxis | null
|
|
72
|
-
): MenuOverlayPositioning => ({
|
|
73
|
-
menuStyle: {
|
|
74
|
-
position: overlayStyle?.position,
|
|
75
|
-
top: overlayStyle?.top,
|
|
76
|
-
left: overlayStyle?.left
|
|
77
|
-
},
|
|
78
|
-
placementAttr: resolveDataPlacement(requestedPlacement, resolvedPlacement)
|
|
79
|
-
})
|
|
80
|
-
|
|
81
|
-
// chassis-css's `.combobox + .menu` sibling-selector rule (`_combobox.scss`) sets
|
|
82
|
-
// `--menu-max-height`/`--menu-overflow-y` from `$combobox-menu-max-height`/
|
|
83
|
-
// `$combobox-menu-overflow-y` (320px/auto by default) — but only while the panel is an adjacent
|
|
84
|
-
// DOM sibling of `.combobox`. `Autocomplete`/`Combobox` portal their panel to `document.body` (or
|
|
85
|
-
// an enclosing open `<dialog>`, via `useFloatingOverlay`), breaking that adjacency, so both inline
|
|
86
|
-
// this as a fallback matching the shipped Sass defaults instead of the generic, uncapped `.menu`
|
|
87
|
-
// fallback (`max-height: none`). A consumer who customized either Sass variable needs to
|
|
88
|
-
// re-override `--menu-max-height`/`--menu-overflow-y` on `.menu` directly, since the
|
|
89
|
-
// sibling-selector auto-application can no longer reach a portaled panel.
|
|
90
|
-
export const COMBOBOX_MENU_OVERLAY_STYLE: CSSProperties = {
|
|
91
|
-
'--menu-max-height': '320px',
|
|
92
|
-
'--menu-overflow-y': 'auto'
|
|
93
|
-
} as CSSProperties
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// Tracks, per-element, whether its most recent activation came from a real pointer click rather
|
|
2
|
-
// than a keyboard one (a `click` fired by pointer activation has `detail >= 1`; one fired by
|
|
3
|
-
// keyboard activation, e.g. Enter/Space on a focused button, has `detail === 0`) — for callers
|
|
4
|
-
// that need that information later, asynchronously, once React has committed the state update the
|
|
5
|
-
// click triggered (see `Carousel.tsx`'s disabled-end focus redirect, which needs it to decide
|
|
6
|
-
// whether `focusRedirect` should suppress Safari's script-focus-after-pointer-click ring). A
|
|
7
|
-
// `WeakSet` rather than a DOM attribute so it doesn't leak into markup/snapshots, and consuming it
|
|
8
|
-
// clears the entry so a later, unrelated keyboard activation on the same element isn't
|
|
9
|
-
// misattributed as pointer-triggered.
|
|
10
|
-
const pointerClicks = new WeakSet<HTMLElement>()
|
|
11
|
-
|
|
12
|
-
export function markPointerClick(el: HTMLElement): void {
|
|
13
|
-
pointerClicks.add(el)
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function consumePointerClick(el: HTMLElement | null): boolean {
|
|
17
|
-
if (!el) return false
|
|
18
|
-
const wasPointer = pointerClicks.has(el)
|
|
19
|
-
pointerClicks.delete(el)
|
|
20
|
-
return wasPointer
|
|
21
|
-
}
|