@chassis-ui/react 0.2.0 → 0.4.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.d.ts +1 -1
- package/dist/avatar.js +1 -1
- package/dist/badge.d.ts +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.d.ts +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.d.ts +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 → Button-BuZ_GOHS.d.ts} +3 -2
- 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-B0Y1xgYi.d.ts → Link-CKymd2ru.d.ts} +8 -6
- package/dist/chunks/Link-CZsWCnQb.js +2 -0
- package/dist/chunks/Link-CZsWCnQb.js.map +1 -0
- 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-CGk8szzR.js +2 -0
- package/dist/chunks/breakpoints-CGk8szzR.js.map +1 -0
- package/dist/chunks/breakpoints-ECy4lKQT.d.ts +6 -0
- package/dist/chunks/button-group-BGppPrIv.js +2 -0
- package/dist/chunks/button-group-BGppPrIv.js.map +1 -0
- package/dist/chunks/card-CobeDpf1.js +2 -0
- package/dist/chunks/card-CobeDpf1.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-ZyQn5Ku5.js +2 -0
- package/dist/chunks/checkbox-ZyQn5Ku5.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-B52oLCCC.js +2 -0
- package/dist/chunks/flex-B52oLCCC.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-C7tO-ppc.js +2 -0
- package/dist/chunks/grid-C7tO-ppc.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-BKMW0rkw.d.ts → index-0jbACjYQ.d.ts} +5 -3
- 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-D9PZHY_I.d.ts → index-B19ZH3fm.d.ts} +3 -2
- package/dist/chunks/{index-COsIPd8L.d.ts → index-B1kw0jzM.d.ts} +3 -2
- package/dist/chunks/index-B2K-O9kl.d.ts +59 -0
- package/dist/chunks/{index-CJzKu7QI.d.ts → index-B5bF1JxF.d.ts} +3 -2
- 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-Ctuk1xBU.d.ts → index-BLS1jhSJ.d.ts} +10 -7
- package/dist/chunks/{index-JllMXhVx.d.ts → index-BMkbJVHg.d.ts} +22 -5
- package/dist/chunks/{index-DB_ToPdz.d.ts → index-BNf0jIIL.d.ts} +12 -1
- package/dist/chunks/{index-t_x6jj7l.d.ts → index-BOx8v-oT.d.ts} +3 -2
- package/dist/chunks/index-BSLneLYu.d.ts +79 -0
- 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-XjLvaH4G.d.ts → index-BfEJYF4c.d.ts} +7 -6
- package/dist/chunks/index-Bi8FFadV.d.ts +2 -1
- package/dist/chunks/index-Bkj17NEQ.d.ts +2 -1
- 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-CRfm7W6C.d.ts → index-C9gzVqwX.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-8PhBSbNQ.d.ts → index-CHQR8x8_.d.ts} +16 -17
- package/dist/chunks/{index-BTTeKpiE.d.ts → index-CIwzgZJi.d.ts} +3 -2
- package/dist/chunks/{index-dh3TKanY.d.ts → index-CTpwB1yR.d.ts} +3 -2
- package/dist/chunks/{index-DR8sYtvd.d.ts → index-CYvVmTPR.d.ts} +20 -87
- 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-DKma0jQw.d.ts → index-CjT_4IZx.d.ts} +4 -3
- 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-CxjNw4ss.d.ts +216 -0
- 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-DHcztR18.d.ts +208 -0
- package/dist/chunks/index-DJfga0Ce.d.ts +57 -0
- package/dist/chunks/{index-DJJocp_q.d.ts → index-DM01FX3a.d.ts} +4 -3
- package/dist/chunks/index-DMbdEm__.d.ts +119 -0
- package/dist/chunks/{index-BlgkO3dn.d.ts → index-DP5xugE-.d.ts} +25 -34
- package/dist/chunks/index-DPCwFiJL.d.ts +95 -0
- package/dist/chunks/{index-BTDgfLxK.d.ts → index-DQImhbhy.d.ts} +21 -5
- package/dist/chunks/index-DaHQdNul.d.ts +182 -0
- package/dist/chunks/index-Dcc_W6Kv.d.ts +2 -1
- package/dist/chunks/index-Ddd7iWfm.d.ts +32 -0
- package/dist/chunks/index-Dfg4Ftb8.d.ts +2 -1
- package/dist/chunks/index-DtbUXxjz.d.ts +2 -1
- package/dist/chunks/{index-DPV62IdF.d.ts → index-DtvHH_Mb.d.ts} +12 -10
- package/dist/chunks/index-Du9fBqkT.d.ts +56 -0
- package/dist/chunks/index-HrKN6s8z.d.ts +2 -1
- package/dist/chunks/{index-ClT3E_hv.d.ts → index-NGgDkhyn.d.ts} +19 -25
- package/dist/chunks/{index-Dfy1YW5j.d.ts → index-U27Ar174.d.ts} +3 -2
- package/dist/chunks/{index-CsMIgBsd.d.ts → index-YJ9QdBuq.d.ts} +10 -10
- package/dist/chunks/{index-Dh5CaHTP.d.ts → index-aRdgpeRb.d.ts} +3 -2
- package/dist/chunks/index-g74gO0pc.d.ts +36 -0
- package/dist/chunks/{index-BO9jLOIb.d.ts → index-lSPcxiii.d.ts} +3 -2
- package/dist/chunks/{index-nklPDKlC.d.ts → index-x0vZRyoU.d.ts} +4 -3
- 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-Dbci5Ka3.js +2 -0
- package/dist/chunks/notification-Dbci5Ka3.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-B6gJdtoN.js +2 -0
- package/dist/chunks/radio-B6gJdtoN.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-nKgpa_a3.d.ts} +4 -3
- 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-CmZBLJwp.js +2 -0
- package/dist/chunks/skeleton-CmZBLJwp.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-DK5F53VT.js +2 -0
- package/dist/chunks/stack-DK5F53VT.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 → types-D6FM7bYR.d.ts} +16 -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.d.ts +1 -1
- 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.d.ts +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 +61 -49
- 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.d.ts +1 -1
- 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.d.ts +1 -1
- package/dist/spinner.js +1 -1
- package/dist/stack.d.ts +1 -1
- package/dist/stack.js +1 -1
- package/dist/static-table.d.ts +1 -1
- package/dist/stepper.d.ts +1 -1
- package/dist/stepper.js +1 -1
- package/dist/style.css +1 -1
- package/dist/switch.d.ts +1 -1
- package/dist/switch.js +1 -1
- package/dist/table.d.ts +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/breakpoints-o_2Ev7ir.js +0 -1
- package/dist/chunks/button-group-CPZYA6aZ.js +0 -1
- package/dist/chunks/card-DfF2K_5p.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/flex-BTvpgaRv.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-CVUMS0x7.d.ts +0 -73
- package/dist/chunks/index-D949AidR.d.ts +0 -40
- package/dist/chunks/index-DEb9zXlC.d.ts +0 -210
- 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/stack-D3retZ-W.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,342 +0,0 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
ClipboardEvent,
|
|
3
|
-
forwardRef,
|
|
4
|
-
Fragment,
|
|
5
|
-
HTMLAttributes,
|
|
6
|
-
KeyboardEvent,
|
|
7
|
-
ReactNode,
|
|
8
|
-
useMemo,
|
|
9
|
-
useRef
|
|
10
|
-
} from 'react'
|
|
11
|
-
import classNames from 'classnames'
|
|
12
|
-
|
|
13
|
-
import { useControllableState, useForkedRef, useFormField } from '../../hooks'
|
|
14
|
-
import { validationClassName } from '../../utils/validationClassName'
|
|
15
|
-
import { renderFormField } from '../form-field/renderFormField'
|
|
16
|
-
import { OtpBox } from './OtpBox'
|
|
17
|
-
import { isRTL } from '../../utils/direction'
|
|
18
|
-
|
|
19
|
-
export interface OtpInputProps extends Omit<
|
|
20
|
-
HTMLAttributes<HTMLDivElement>,
|
|
21
|
-
'onChange' | 'defaultValue'
|
|
22
|
-
> {
|
|
23
|
-
/**
|
|
24
|
-
* Identifies the element that describes the group, e.g. a `FormHelp` help element.
|
|
25
|
-
*/
|
|
26
|
-
'aria-describedby'?: string
|
|
27
|
-
/**
|
|
28
|
-
* An accessible label for the group, used when there's no visible `<label>`.
|
|
29
|
-
*/
|
|
30
|
-
'aria-label'?: string
|
|
31
|
-
/**
|
|
32
|
-
* Identifies a visible `<label>` element for the group.
|
|
33
|
-
*/
|
|
34
|
-
'aria-labelledby'?: string
|
|
35
|
-
/**
|
|
36
|
-
* A string of all className you want applied to the base component.
|
|
37
|
-
*/
|
|
38
|
-
className?: string
|
|
39
|
-
/**
|
|
40
|
-
* The initial code (uncontrolled), e.g. `"123"` for a partially filled code.
|
|
41
|
-
*/
|
|
42
|
-
defaultValue?: string
|
|
43
|
-
/**
|
|
44
|
-
* Prevents input and makes every box non-interactive.
|
|
45
|
-
*/
|
|
46
|
-
disabled?: boolean
|
|
47
|
-
/**
|
|
48
|
-
* Splits the boxes into groups (e.g. `[3, 3]` for a "123-456" layout), rendering a
|
|
49
|
-
* `.form-otp-separator` between each group. The total number of boxes becomes the sum of
|
|
50
|
-
* `groupSizes`, overriding `length`.
|
|
51
|
-
*/
|
|
52
|
-
groupSizes?: number[]
|
|
53
|
-
/**
|
|
54
|
-
* A description for the field, rendered below the boxes.
|
|
55
|
-
*/
|
|
56
|
-
help?: ReactNode
|
|
57
|
-
/**
|
|
58
|
-
* `id` forwarded to the group container.
|
|
59
|
-
*/
|
|
60
|
-
id?: string
|
|
61
|
-
/**
|
|
62
|
-
* Visually connects the boxes into a single bordered control. When `groupSizes` is set, each
|
|
63
|
-
* group is connected separately.
|
|
64
|
-
*/
|
|
65
|
-
inputGroup?: boolean
|
|
66
|
-
/**
|
|
67
|
-
* Set component validation state to invalid.
|
|
68
|
-
*/
|
|
69
|
-
invalid?: boolean
|
|
70
|
-
/**
|
|
71
|
-
* An error message for the field, rendered below the boxes when `invalid` is set.
|
|
72
|
-
*/
|
|
73
|
-
invalidFeedback?: ReactNode
|
|
74
|
-
/**
|
|
75
|
-
* The field's caption, rendered as a `FormLabel` associated with the group via
|
|
76
|
-
* `aria-labelledby` (there's no single input to target with `htmlFor`).
|
|
77
|
-
*/
|
|
78
|
-
label?: ReactNode
|
|
79
|
-
/**
|
|
80
|
-
* Number of digit boxes. Ignored when `groupSizes` is set. Defaults to `6`.
|
|
81
|
-
*/
|
|
82
|
-
length?: number
|
|
83
|
-
/**
|
|
84
|
-
* Mask entered digits using `type="password"` boxes.
|
|
85
|
-
*/
|
|
86
|
-
mask?: boolean
|
|
87
|
-
/**
|
|
88
|
-
* `name` of an auto-created hidden input kept in sync with the code, for native form
|
|
89
|
-
* submission. Omit to skip creating it.
|
|
90
|
-
*/
|
|
91
|
-
name?: string
|
|
92
|
-
/**
|
|
93
|
-
* Callback fired whenever the code changes.
|
|
94
|
-
*/
|
|
95
|
-
onChange?: (value: string) => void
|
|
96
|
-
/**
|
|
97
|
-
* Callback fired once every box is filled.
|
|
98
|
-
*/
|
|
99
|
-
onComplete?: (value: string) => void
|
|
100
|
-
/**
|
|
101
|
-
* Content of the separator rendered between groups when `groupSizes` is set. Defaults to `–`.
|
|
102
|
-
*/
|
|
103
|
-
separator?: ReactNode
|
|
104
|
-
/**
|
|
105
|
-
* Size the boxes sm or lg.
|
|
106
|
-
*/
|
|
107
|
-
size?: 'sm' | 'lg'
|
|
108
|
-
/**
|
|
109
|
-
* Set component validation state to valid.
|
|
110
|
-
*/
|
|
111
|
-
valid?: boolean
|
|
112
|
-
/**
|
|
113
|
-
* A success message for the field, rendered below the boxes when `valid` is set.
|
|
114
|
-
*/
|
|
115
|
-
validFeedback?: ReactNode
|
|
116
|
-
/**
|
|
117
|
-
* The code (controlled), digits only, e.g. `"123456"`.
|
|
118
|
-
*/
|
|
119
|
-
value?: string
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
const onlyDigits = (raw: string) => raw.replace(/\D/g, '')
|
|
123
|
-
|
|
124
|
-
const toBoxes = (raw: string, total: number): string[] => {
|
|
125
|
-
const digits = [...onlyDigits(raw)].slice(0, total)
|
|
126
|
-
return Array.from({ length: total }, (_, i) => digits[i] ?? '')
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
export const OtpInput = forwardRef<HTMLDivElement, OtpInputProps>(
|
|
130
|
-
(
|
|
131
|
-
{
|
|
132
|
-
className,
|
|
133
|
-
defaultValue,
|
|
134
|
-
disabled,
|
|
135
|
-
groupSizes,
|
|
136
|
-
help,
|
|
137
|
-
id,
|
|
138
|
-
inputGroup,
|
|
139
|
-
invalid,
|
|
140
|
-
invalidFeedback,
|
|
141
|
-
label,
|
|
142
|
-
length = 6,
|
|
143
|
-
mask,
|
|
144
|
-
name,
|
|
145
|
-
onChange,
|
|
146
|
-
onComplete,
|
|
147
|
-
separator = '–',
|
|
148
|
-
size,
|
|
149
|
-
valid,
|
|
150
|
-
validFeedback,
|
|
151
|
-
value,
|
|
152
|
-
...rest
|
|
153
|
-
}: OtpInputProps,
|
|
154
|
-
ref
|
|
155
|
-
): ReactNode => {
|
|
156
|
-
const total =
|
|
157
|
-
groupSizes && groupSizes.length > 0 ? groupSizes.reduce((a, b) => a + b, 0) : length
|
|
158
|
-
|
|
159
|
-
const [rawValue, setRawValue] = useControllableState(value, defaultValue ?? '', onChange)
|
|
160
|
-
const boxes = useMemo(() => toBoxes(rawValue, total), [rawValue, total])
|
|
161
|
-
|
|
162
|
-
const boxRefs = useRef<Array<HTMLInputElement | null>>([])
|
|
163
|
-
const focusBox = (index: number) => boxRefs.current[index]?.focus()
|
|
164
|
-
const containerRef = useRef<HTMLDivElement>(null)
|
|
165
|
-
const forkedRef = useForkedRef(ref, containerRef)
|
|
166
|
-
|
|
167
|
-
const commit = (nextBoxes: string[]) => {
|
|
168
|
-
const next = nextBoxes.join('')
|
|
169
|
-
setRawValue(next)
|
|
170
|
-
if (nextBoxes.length === total && nextBoxes.every((box) => box !== '')) {
|
|
171
|
-
onComplete?.(next)
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
const handleChange = (index: number, raw: string) => {
|
|
176
|
-
const digits = onlyDigits(raw)
|
|
177
|
-
|
|
178
|
-
if (digits.length > 1) {
|
|
179
|
-
// Multi-character value landing in a single box (autofill, or a fast typist outrunning
|
|
180
|
-
// the auto-advance) — distribute across this and subsequent boxes, matching chassis-css's
|
|
181
|
-
// vanilla otp-input.js `_handleInput`.
|
|
182
|
-
const chars = [...digits]
|
|
183
|
-
const nextBoxes = [...boxes]
|
|
184
|
-
for (let i = 0; i < chars.length && index + i < total; i++) {
|
|
185
|
-
nextBoxes[index + i] = chars[i]!
|
|
186
|
-
}
|
|
187
|
-
commit(nextBoxes)
|
|
188
|
-
focusBox(Math.min(index + chars.length, total - 1))
|
|
189
|
-
return
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
const nextBoxes = [...boxes]
|
|
193
|
-
nextBoxes[index] = digits
|
|
194
|
-
commit(nextBoxes)
|
|
195
|
-
if (digits && index < total - 1) focusBox(index + 1)
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
const handleKeyDown = (index: number, event: KeyboardEvent<HTMLInputElement>) => {
|
|
199
|
-
if (disabled) return
|
|
200
|
-
|
|
201
|
-
switch (event.key) {
|
|
202
|
-
case 'Backspace': {
|
|
203
|
-
if (!boxes[index] && index > 0) {
|
|
204
|
-
event.preventDefault()
|
|
205
|
-
const nextBoxes = [...boxes]
|
|
206
|
-
nextBoxes[index - 1] = ''
|
|
207
|
-
commit(nextBoxes)
|
|
208
|
-
focusBox(index - 1)
|
|
209
|
-
}
|
|
210
|
-
break
|
|
211
|
-
}
|
|
212
|
-
case 'Delete': {
|
|
213
|
-
event.preventDefault()
|
|
214
|
-
// `boxes` (and every copy derived from it) is always exactly `total` entries long — see
|
|
215
|
-
// `toBoxes` — so `i + 1` (bounded by `i < total - 1`) never reads past the end.
|
|
216
|
-
const nextBoxes = [...boxes]
|
|
217
|
-
for (let i = index; i < total - 1; i++) nextBoxes[i] = nextBoxes[i + 1]!
|
|
218
|
-
nextBoxes[total - 1] = ''
|
|
219
|
-
commit(nextBoxes)
|
|
220
|
-
break
|
|
221
|
-
}
|
|
222
|
-
// Arrow keys move by *visual* direction, so they mirror under RTL: the box to the left of
|
|
223
|
-
// the focused one is the next box, not the previous. `Carousel` and `MenuSubmenu` already
|
|
224
|
-
// mirror their own arrow handling this way; this used to hardcode the LTR mapping and sent
|
|
225
|
-
// an RTL user backwards through the field.
|
|
226
|
-
case 'ArrowLeft':
|
|
227
|
-
case 'ArrowRight': {
|
|
228
|
-
const movesForward = (event.key === 'ArrowRight') !== isRTL(event.currentTarget)
|
|
229
|
-
const nextIndex = movesForward ? index + 1 : index - 1
|
|
230
|
-
if (nextIndex >= 0 && nextIndex < total) {
|
|
231
|
-
event.preventDefault()
|
|
232
|
-
focusBox(nextIndex)
|
|
233
|
-
}
|
|
234
|
-
break
|
|
235
|
-
}
|
|
236
|
-
default:
|
|
237
|
-
break
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
const handlePaste = (event: ClipboardEvent<HTMLInputElement>) => {
|
|
242
|
-
event.preventDefault()
|
|
243
|
-
if (disabled) return
|
|
244
|
-
const digits = onlyDigits(event.clipboardData.getData('text')).slice(0, total)
|
|
245
|
-
if (!digits) return
|
|
246
|
-
commit(toBoxes(digits, total))
|
|
247
|
-
focusBox(Math.min(digits.length, total) - 1)
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
const renderBoxes = (start: number, count: number) =>
|
|
251
|
-
Array.from({ length: count }, (_, i) => start + i).map((i) => (
|
|
252
|
-
<OtpBox
|
|
253
|
-
disabled={disabled}
|
|
254
|
-
index={i}
|
|
255
|
-
invalid={invalid}
|
|
256
|
-
key={i}
|
|
257
|
-
mask={mask}
|
|
258
|
-
onChangeValue={(next) => handleChange(i, next)}
|
|
259
|
-
onKeyDownBox={(event) => handleKeyDown(i, event)}
|
|
260
|
-
onPasteBox={handlePaste}
|
|
261
|
-
ref={(el) => {
|
|
262
|
-
boxRefs.current[i] = el
|
|
263
|
-
}}
|
|
264
|
-
size={size}
|
|
265
|
-
valid={valid}
|
|
266
|
-
value={boxes[i] ?? ''}
|
|
267
|
-
/>
|
|
268
|
-
))
|
|
269
|
-
|
|
270
|
-
let content: ReactNode
|
|
271
|
-
if (groupSizes && groupSizes.length > 0) {
|
|
272
|
-
let cursor = 0
|
|
273
|
-
content = groupSizes.map((groupSize, groupIndex) => {
|
|
274
|
-
const start = cursor
|
|
275
|
-
cursor += groupSize
|
|
276
|
-
return (
|
|
277
|
-
// eslint-disable-next-line react/no-array-index-key
|
|
278
|
-
<Fragment key={groupIndex}>
|
|
279
|
-
{groupIndex > 0 && <span className="form-otp-separator">{separator}</span>}
|
|
280
|
-
{inputGroup ? (
|
|
281
|
-
<div className="input-group">{renderBoxes(start, groupSize)}</div>
|
|
282
|
-
) : (
|
|
283
|
-
renderBoxes(start, groupSize)
|
|
284
|
-
)}
|
|
285
|
-
</Fragment>
|
|
286
|
-
)
|
|
287
|
-
})
|
|
288
|
-
} else {
|
|
289
|
-
content = renderBoxes(0, total)
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
const {
|
|
293
|
-
describedBy,
|
|
294
|
-
feedbackId,
|
|
295
|
-
helpId,
|
|
296
|
-
inputId: groupId,
|
|
297
|
-
labelId,
|
|
298
|
-
labelledBy
|
|
299
|
-
} = useFormField({
|
|
300
|
-
ariaDescribedBy: rest['aria-describedby'],
|
|
301
|
-
ariaLabelledBy: rest['aria-labelledby'],
|
|
302
|
-
help,
|
|
303
|
-
id,
|
|
304
|
-
invalid,
|
|
305
|
-
invalidFeedback,
|
|
306
|
-
label,
|
|
307
|
-
valid,
|
|
308
|
-
validFeedback
|
|
309
|
-
})
|
|
310
|
-
|
|
311
|
-
return renderFormField({
|
|
312
|
-
children: (
|
|
313
|
-
<div
|
|
314
|
-
{...rest}
|
|
315
|
-
aria-describedby={describedBy}
|
|
316
|
-
aria-labelledby={labelledBy}
|
|
317
|
-
className={classNames(
|
|
318
|
-
'form-otp',
|
|
319
|
-
{ 'input-group': inputGroup && !(groupSizes && groupSizes.length > 0) },
|
|
320
|
-
validationClassName(invalid, valid),
|
|
321
|
-
className
|
|
322
|
-
)}
|
|
323
|
-
id={groupId}
|
|
324
|
-
ref={forkedRef}
|
|
325
|
-
role="group"
|
|
326
|
-
>
|
|
327
|
-
{content}
|
|
328
|
-
{name && <input disabled={disabled} name={name} type="hidden" value={boxes.join('')} />}
|
|
329
|
-
</div>
|
|
330
|
-
),
|
|
331
|
-
help,
|
|
332
|
-
ids: { feedback: feedbackId, help: helpId, label: labelId },
|
|
333
|
-
invalid,
|
|
334
|
-
invalidFeedback,
|
|
335
|
-
label,
|
|
336
|
-
valid,
|
|
337
|
-
validFeedback
|
|
338
|
-
})
|
|
339
|
-
}
|
|
340
|
-
)
|
|
341
|
-
|
|
342
|
-
OtpInput.displayName = 'OtpInput'
|
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
import React, { forwardRef, HTMLAttributes } from 'react'
|
|
2
|
-
import { IconValue } from '../../utils/iconConfig'
|
|
3
|
-
import { IconSlot } from '../../utils/iconSlot'
|
|
4
|
-
import classNames from 'classnames'
|
|
5
|
-
|
|
6
|
-
import { PaginationItem } from './PaginationItem'
|
|
7
|
-
import { usePagination } from '../../hooks'
|
|
8
|
-
|
|
9
|
-
export interface PaginationProps extends HTMLAttributes<HTMLElement> {
|
|
10
|
-
/**
|
|
11
|
-
* Current active page (1-indexed). Used with `pages` for data-driven mode.
|
|
12
|
-
*/
|
|
13
|
-
activePage?: number
|
|
14
|
-
/**
|
|
15
|
-
* Set the alignment of pagination components.
|
|
16
|
-
*/
|
|
17
|
-
align?: 'start' | 'center' | 'end'
|
|
18
|
-
/**
|
|
19
|
-
* Accessible label for the pagination `<nav>` landmark. Override for non-English locales,
|
|
20
|
-
* or when multiple paginators appear on the same page.
|
|
21
|
-
*
|
|
22
|
-
* @default 'Pagination'
|
|
23
|
-
*/
|
|
24
|
-
'aria-label'?: string
|
|
25
|
-
/**
|
|
26
|
-
* A string of all className you want applied to the base component.
|
|
27
|
-
*/
|
|
28
|
-
className?: string
|
|
29
|
-
/**
|
|
30
|
-
* Maximum number of visible page buttons (default: 5). Flanking pages are collapsed to ellipsis.
|
|
31
|
-
*/
|
|
32
|
-
maxVisiblePages?: number
|
|
33
|
-
/**
|
|
34
|
-
* The "next page" control's icon in smart pagination mode: an icon name, or an element of your
|
|
35
|
-
* own icon set. Defaults to `IconProvider`'s `next` icon.
|
|
36
|
-
*/
|
|
37
|
-
nextIcon?: IconValue
|
|
38
|
-
/**
|
|
39
|
-
* Accessible label for the "next page" control, used in smart pagination mode. Override for
|
|
40
|
-
* non-English locales.
|
|
41
|
-
*
|
|
42
|
-
* @default 'Next'
|
|
43
|
-
*/
|
|
44
|
-
nextLabel?: string
|
|
45
|
-
/**
|
|
46
|
-
* Callback fired when the active page changes.
|
|
47
|
-
*/
|
|
48
|
-
onActivePageChange?: (page: number) => void
|
|
49
|
-
/**
|
|
50
|
-
* Total number of pages. When provided alongside `activePage` and `onActivePageChange`,
|
|
51
|
-
* the component renders a fully-controlled smart paginator with Prev/Next and ellipsis.
|
|
52
|
-
*/
|
|
53
|
-
pages?: number
|
|
54
|
-
/**
|
|
55
|
-
* The "previous page" control's icon in smart pagination mode: an icon name, or an element of
|
|
56
|
-
* your own icon set. Defaults to `IconProvider`'s `previous` icon.
|
|
57
|
-
*/
|
|
58
|
-
previousIcon?: IconValue
|
|
59
|
-
/**
|
|
60
|
-
* Accessible label for the "previous page" control, used in smart pagination mode. Override
|
|
61
|
-
* for non-English locales.
|
|
62
|
-
*
|
|
63
|
-
* @default 'Previous'
|
|
64
|
-
*/
|
|
65
|
-
previousLabel?: string
|
|
66
|
-
/**
|
|
67
|
-
* Show the numbered page buttons in smart pagination mode. Set `false` alongside
|
|
68
|
-
* `showPrevNext` to build a Prev/Next-only paginator.
|
|
69
|
-
*
|
|
70
|
-
* @default true
|
|
71
|
-
*/
|
|
72
|
-
showPageNumbers?: boolean
|
|
73
|
-
/**
|
|
74
|
-
* Show the Prev/Next controls in smart pagination mode. Set `false` alongside
|
|
75
|
-
* `showPageNumbers` to build a page-numbers-only paginator.
|
|
76
|
-
*
|
|
77
|
-
* @default true
|
|
78
|
-
*/
|
|
79
|
-
showPrevNext?: boolean
|
|
80
|
-
/**
|
|
81
|
-
* Size the component sm or lg.
|
|
82
|
-
*/
|
|
83
|
-
size?: 'sm' | 'lg'
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
function getPageRange(activePage: number, pages: number, maxVisible: number): (number | '...')[] {
|
|
87
|
-
const safeMaxVisible = Math.max(1, maxVisible)
|
|
88
|
-
|
|
89
|
-
if (pages <= safeMaxVisible) {
|
|
90
|
-
return Array.from({ length: pages }, (_, i) => i + 1)
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
const half = Math.floor(safeMaxVisible / 2)
|
|
94
|
-
let start = Math.max(1, activePage - half)
|
|
95
|
-
const end = Math.min(pages, start + safeMaxVisible - 1)
|
|
96
|
-
|
|
97
|
-
if (end - start < safeMaxVisible - 1) {
|
|
98
|
-
start = Math.max(1, end - safeMaxVisible + 1)
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
const result: (number | '...')[] = []
|
|
102
|
-
|
|
103
|
-
if (start > 1) {
|
|
104
|
-
result.push(1)
|
|
105
|
-
if (start > 2) result.push('...')
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
for (let i = start; i <= end; i++) {
|
|
109
|
-
result.push(i)
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
if (end < pages) {
|
|
113
|
-
if (end < pages - 1) result.push('...')
|
|
114
|
-
result.push(pages)
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
return result
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
export const Pagination = forwardRef<HTMLElement, PaginationProps>(
|
|
121
|
-
(
|
|
122
|
-
{
|
|
123
|
-
activePage = 1,
|
|
124
|
-
align,
|
|
125
|
-
'aria-label': ariaLabel = 'Pagination',
|
|
126
|
-
children,
|
|
127
|
-
className,
|
|
128
|
-
maxVisiblePages = 5,
|
|
129
|
-
nextIcon,
|
|
130
|
-
nextLabel = 'Next',
|
|
131
|
-
onActivePageChange,
|
|
132
|
-
pages,
|
|
133
|
-
previousIcon,
|
|
134
|
-
previousLabel = 'Previous',
|
|
135
|
-
showPageNumbers = true,
|
|
136
|
-
showPrevNext = true,
|
|
137
|
-
size,
|
|
138
|
-
...rest
|
|
139
|
-
},
|
|
140
|
-
ref
|
|
141
|
-
) => {
|
|
142
|
-
const _className = classNames(
|
|
143
|
-
'pagination',
|
|
144
|
-
size,
|
|
145
|
-
{
|
|
146
|
-
[`justify-content-${align}`]: align
|
|
147
|
-
},
|
|
148
|
-
className
|
|
149
|
-
)
|
|
150
|
-
|
|
151
|
-
const clampedActivePage = pages ? Math.min(Math.max(activePage, 1), pages) : activePage
|
|
152
|
-
const prevDisabled = pages ? clampedActivePage <= 1 : false
|
|
153
|
-
const nextDisabled = pages ? clampedActivePage >= pages : false
|
|
154
|
-
|
|
155
|
-
const { prevRef, nextRef, handlePrevClick, handleNextClick } = usePagination({
|
|
156
|
-
prevDisabled,
|
|
157
|
-
nextDisabled,
|
|
158
|
-
onPrev: () => onActivePageChange && onActivePageChange(clampedActivePage - 1),
|
|
159
|
-
onNext: () => onActivePageChange && onActivePageChange(clampedActivePage + 1)
|
|
160
|
-
})
|
|
161
|
-
|
|
162
|
-
const smartContent = pages ? (
|
|
163
|
-
<>
|
|
164
|
-
{showPrevNext && (
|
|
165
|
-
<PaginationItem
|
|
166
|
-
ref={prevRef}
|
|
167
|
-
disabled={prevDisabled}
|
|
168
|
-
onClick={handlePrevClick}
|
|
169
|
-
aria-label={previousLabel}
|
|
170
|
-
>
|
|
171
|
-
<IconSlot icon="previous" override={previousIcon} className="directional-icon" />
|
|
172
|
-
</PaginationItem>
|
|
173
|
-
)}
|
|
174
|
-
{showPageNumbers &&
|
|
175
|
-
getPageRange(clampedActivePage, pages, maxVisiblePages).map((page, idx) =>
|
|
176
|
-
page === '...' ? (
|
|
177
|
-
// eslint-disable-next-line react/no-array-index-key
|
|
178
|
-
<PaginationItem key={`ellipsis-${idx}`} disabled component="span" aria-hidden="true">
|
|
179
|
-
…
|
|
180
|
-
</PaginationItem>
|
|
181
|
-
) : (
|
|
182
|
-
<PaginationItem
|
|
183
|
-
key={page}
|
|
184
|
-
active={page === clampedActivePage}
|
|
185
|
-
onClick={() => onActivePageChange && onActivePageChange(page)}
|
|
186
|
-
>
|
|
187
|
-
{page}
|
|
188
|
-
</PaginationItem>
|
|
189
|
-
)
|
|
190
|
-
)}
|
|
191
|
-
{showPrevNext && (
|
|
192
|
-
<PaginationItem
|
|
193
|
-
ref={nextRef}
|
|
194
|
-
disabled={nextDisabled}
|
|
195
|
-
onClick={handleNextClick}
|
|
196
|
-
aria-label={nextLabel}
|
|
197
|
-
>
|
|
198
|
-
<IconSlot icon="next" override={nextIcon} className="directional-icon" />
|
|
199
|
-
</PaginationItem>
|
|
200
|
-
)}
|
|
201
|
-
</>
|
|
202
|
-
) : null
|
|
203
|
-
|
|
204
|
-
return (
|
|
205
|
-
<nav aria-label={ariaLabel} ref={ref} {...rest}>
|
|
206
|
-
<ul className={_className}>{smartContent ?? children}</ul>
|
|
207
|
-
</nav>
|
|
208
|
-
)
|
|
209
|
-
}
|
|
210
|
-
)
|
|
211
|
-
|
|
212
|
-
Pagination.displayName = 'Pagination'
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
ElementType,
|
|
3
|
-
ForwardRefRenderFunction,
|
|
4
|
-
MouseEvent,
|
|
5
|
-
MouseEventHandler,
|
|
6
|
-
ReactElement,
|
|
7
|
-
Ref
|
|
8
|
-
} from 'react'
|
|
9
|
-
import classNames from 'classnames'
|
|
10
|
-
import { mergeProps } from 'react-aria'
|
|
11
|
-
|
|
12
|
-
import { useButtonSemantics } from '../../hooks'
|
|
13
|
-
import {
|
|
14
|
-
createPolymorphicComponent,
|
|
15
|
-
PolymorphicComponentProps,
|
|
16
|
-
PolymorphicRef,
|
|
17
|
-
PolymorphicRefWithFallback
|
|
18
|
-
} from '../../utils/polymorphic'
|
|
19
|
-
|
|
20
|
-
type PaginationItemOwnProps<C extends ElementType> = {
|
|
21
|
-
/**
|
|
22
|
-
* Toggle the active state for the component.
|
|
23
|
-
*/
|
|
24
|
-
active?: boolean
|
|
25
|
-
/**
|
|
26
|
-
* Component used for the root node. Either a string to use a HTML element or a component.
|
|
27
|
-
*/
|
|
28
|
-
component?: C
|
|
29
|
-
/**
|
|
30
|
-
* Toggle the disabled state for the component.
|
|
31
|
-
*/
|
|
32
|
-
disabled?: boolean
|
|
33
|
-
/**
|
|
34
|
-
* The href attribute. When provided the item renders as an `<a>` tag; otherwise as a `<button>`.
|
|
35
|
-
*/
|
|
36
|
-
href?: string
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export type PaginationItemProps<C extends ElementType = 'button'> = PolymorphicComponentProps<
|
|
40
|
-
C,
|
|
41
|
-
PaginationItemOwnProps<C>
|
|
42
|
-
>
|
|
43
|
-
|
|
44
|
-
type PaginationItemComponent = (<C extends ElementType = 'button'>(
|
|
45
|
-
props: PaginationItemProps<C> & {
|
|
46
|
-
ref?: PolymorphicRefWithFallback<C, HTMLButtonElement | HTMLAnchorElement | HTMLSpanElement>
|
|
47
|
-
}
|
|
48
|
-
) => ReactElement | null) & { displayName?: string }
|
|
49
|
-
|
|
50
|
-
function PaginationItemRender<C extends ElementType = 'button'>(
|
|
51
|
-
{
|
|
52
|
-
active,
|
|
53
|
-
children,
|
|
54
|
-
className,
|
|
55
|
-
component,
|
|
56
|
-
disabled,
|
|
57
|
-
href,
|
|
58
|
-
onClick,
|
|
59
|
-
...rest
|
|
60
|
-
}: PaginationItemProps<C>,
|
|
61
|
-
ref: PolymorphicRef<C>
|
|
62
|
-
) {
|
|
63
|
-
const _className = classNames(
|
|
64
|
-
'pagination-item',
|
|
65
|
-
{
|
|
66
|
-
active,
|
|
67
|
-
disabled
|
|
68
|
-
},
|
|
69
|
-
className
|
|
70
|
-
)
|
|
71
|
-
|
|
72
|
-
// The active page keeps whatever element it would render anyway (`<button>`, or `<a>` when
|
|
73
|
-
// given `href`) rather than collapsing to a `<span>`. Swapping the tag on activation made React
|
|
74
|
-
// unmount the focused control and mount a different element in its place, so a keyboard user who
|
|
75
|
-
// activated a page was dropped to `<body>` and had to tab in from the top of the document again
|
|
76
|
-
// (WCAG 2.4.3). The `<span>` wasn't even inert: `Pagination`'s smart mode passes an `onClick`,
|
|
77
|
-
// so `useButtonSemantics` gave it `role="button"` and `tabIndex={0}` — a synthetic button,
|
|
78
|
-
// strictly worse than the real one it replaced. Styling is unaffected either way: chassis-css
|
|
79
|
-
// matches `.pagination-link { &.active, .active > & }`, and `active` still lands on the `<li>`.
|
|
80
|
-
const Component = (component ?? (href ? 'a' : 'button')) as ElementType
|
|
81
|
-
|
|
82
|
-
// `<a>` has no real `disabled` attribute, so a disabled anchor pagination item still fires
|
|
83
|
-
// click (and still navigates) unless it's blocked here, same guard `Button` applies.
|
|
84
|
-
const handleClick = (event: MouseEvent<HTMLAnchorElement | HTMLButtonElement>) => {
|
|
85
|
-
if (Component === 'a' && disabled) {
|
|
86
|
-
event.preventDefault()
|
|
87
|
-
return
|
|
88
|
-
}
|
|
89
|
-
onClick?.(event as never)
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
// A custom `component`/default (non-`button`/`a`) branch gets a raw `onClick` with no keyboard
|
|
93
|
-
// semantics otherwise — the same gap `Link` fills via `useButtonSemantics`.
|
|
94
|
-
const needsButtonSemantics = Component !== 'button' && Component !== 'a' && !!onClick
|
|
95
|
-
const { buttonProps, forkedRef } = useButtonSemantics<HTMLElement>(ref as Ref<HTMLElement>, {
|
|
96
|
-
disabled,
|
|
97
|
-
onClick: onClick as MouseEventHandler<HTMLElement> | undefined
|
|
98
|
-
})
|
|
99
|
-
|
|
100
|
-
// `aria-current="page"` goes on the control itself, not the wrapping `<li>` — that's where the
|
|
101
|
-
// WAI-ARIA pagination pattern puts it, and it's what a screen reader conveys when focus lands on
|
|
102
|
-
// the control. On the `<li>` it was attached to a presentational list item nothing focuses.
|
|
103
|
-
const currentProps = active ? { 'aria-current': 'page' as const } : {}
|
|
104
|
-
|
|
105
|
-
return (
|
|
106
|
-
<li className={_className}>
|
|
107
|
-
{Component === 'button' ? (
|
|
108
|
-
<button
|
|
109
|
-
{...(rest as Record<string, unknown>)}
|
|
110
|
-
className="pagination-link"
|
|
111
|
-
type="button"
|
|
112
|
-
disabled={disabled}
|
|
113
|
-
onClick={handleClick}
|
|
114
|
-
{...currentProps}
|
|
115
|
-
ref={ref as Ref<HTMLButtonElement>}
|
|
116
|
-
>
|
|
117
|
-
{children}
|
|
118
|
-
</button>
|
|
119
|
-
) : Component === 'a' ? (
|
|
120
|
-
<a
|
|
121
|
-
{...(rest as Record<string, unknown>)}
|
|
122
|
-
className="pagination-link"
|
|
123
|
-
href={href}
|
|
124
|
-
onClick={handleClick}
|
|
125
|
-
{...(disabled && { 'aria-disabled': true, tabIndex: -1 })}
|
|
126
|
-
{...currentProps}
|
|
127
|
-
ref={ref as Ref<HTMLAnchorElement>}
|
|
128
|
-
>
|
|
129
|
-
{children}
|
|
130
|
-
</a>
|
|
131
|
-
) : (
|
|
132
|
-
<Component
|
|
133
|
-
className="pagination-link"
|
|
134
|
-
{...(mergeProps(rest, needsButtonSemantics ? buttonProps : {}) as Record<
|
|
135
|
-
string,
|
|
136
|
-
unknown
|
|
137
|
-
>)}
|
|
138
|
-
{...(!needsButtonSemantics && { onClick: handleClick })}
|
|
139
|
-
{...currentProps}
|
|
140
|
-
ref={needsButtonSemantics ? forkedRef : ref}
|
|
141
|
-
>
|
|
142
|
-
{children}
|
|
143
|
-
</Component>
|
|
144
|
-
)}
|
|
145
|
-
</li>
|
|
146
|
-
)
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
export const PaginationItem = createPolymorphicComponent<PaginationItemComponent>(
|
|
150
|
-
PaginationItemRender as ForwardRefRenderFunction<Element, PaginationItemProps<ElementType>>,
|
|
151
|
-
'PaginationItem'
|
|
152
|
-
)
|