@chassis-ui/react 0.1.3 → 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.d.ts +2 -0
- package/dist/accordion.js +1 -0
- package/dist/alert.d.ts +2 -0
- package/dist/alert.js +1 -0
- package/dist/autocomplete.d.ts +2 -0
- package/dist/autocomplete.js +1 -0
- package/dist/avatar.d.ts +2 -0
- package/dist/avatar.js +1 -0
- package/dist/badge.d.ts +2 -0
- package/dist/badge.js +1 -0
- package/dist/breadcrumb.d.ts +2 -0
- package/dist/breadcrumb.js +1 -0
- package/dist/button-group.d.ts +2 -0
- package/dist/button-group.js +1 -0
- package/dist/button.d.ts +3 -0
- package/dist/button.js +1 -0
- package/dist/calendar.d.ts +3 -0
- package/dist/calendar.js +1 -0
- package/dist/card.d.ts +2 -0
- package/dist/card.js +1 -0
- package/dist/carousel.d.ts +2 -0
- package/dist/carousel.js +1 -0
- package/dist/checkbox.d.ts +3 -0
- package/dist/checkbox.js +1 -0
- package/dist/chip-input.d.ts +2 -0
- package/dist/chip-input.js +1 -0
- package/dist/chip.d.ts +2 -0
- package/dist/chip.js +1 -0
- 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 +66 -0
- 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 +55 -0
- 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-AE6_iSLJ.js +2 -0
- package/dist/chunks/FormHelp-AE6_iSLJ.js.map +1 -0
- package/dist/chunks/FormLabel-CYcQiFUI.js +2 -0
- package/dist/chunks/FormLabel-CYcQiFUI.js.map +1 -0
- package/dist/chunks/Icon-CioraWLF.d.ts +37 -0
- 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-nrd0JWlO.d.ts +71 -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/{src/components/menu/MenuItemDef.ts → dist/chunks/MenuItemDef-D0VDtYIQ.d.ts} +25 -25
- 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-D2oztCvs.js +2 -0
- package/dist/chunks/badge-D2oztCvs.js.map +1 -0
- package/dist/chunks/breadcrumb-s6J9itez.js +2 -0
- 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 -0
- 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-YXn3bj_d.js +2 -0
- 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-Bwl5ef5B.js +2 -0
- 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 +42 -0
- 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 -0
- 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-CDM6qrmV.js +2 -0
- package/dist/chunks/file-input-CDM6qrmV.js.map +1 -0
- package/dist/chunks/flex-CmlJbKVj.js +2 -0
- 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 -0
- package/dist/chunks/focus-ring-SR_LwaN7.js.map +1 -0
- package/dist/chunks/focusRedirect-BrvK3U_o.js +2 -0
- package/dist/chunks/focusRedirect-BrvK3U_o.js.map +1 -0
- package/dist/chunks/form-GpdAyWWi.js +2 -0
- 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-BQsT6YtE.js +2 -0
- package/dist/chunks/icon-BQsT6YtE.js.map +1 -0
- package/dist/chunks/iconConfig-C6gbYhsD.d.ts +71 -0
- package/dist/chunks/iconSlot-BNu2MrFI.js +2 -0
- package/dist/chunks/iconSlot-BNu2MrFI.js.map +1 -0
- package/dist/chunks/index-4cKG9KWB.d.ts +85 -0
- package/dist/chunks/index-6uob77s9.d.ts +81 -0
- package/dist/chunks/index-91YA-jkp.d.ts +127 -0
- package/dist/chunks/index-9rQeMqVI.d.ts +42 -0
- package/dist/chunks/index-B0-8n-Gs.d.ts +106 -0
- package/dist/chunks/index-B2K-O9kl.d.ts +59 -0
- package/dist/chunks/index-B8uaSJA9.d.ts +96 -0
- package/dist/chunks/index-BA-raEMm.d.ts +29 -0
- package/dist/chunks/index-BAsbRx5n.d.ts +54 -0
- package/dist/chunks/index-BF3OWUVc.d.ts +66 -0
- package/dist/chunks/index-BNf0jIIL.d.ts +213 -0
- package/dist/chunks/index-BO9jLOIb.d.ts +59 -0
- package/dist/chunks/index-BTTeKpiE.d.ts +364 -0
- package/dist/chunks/index-BVGGIaPX.d.ts +111 -0
- package/dist/chunks/index-B_UzbGOa.d.ts +195 -0
- package/dist/chunks/index-Bi8FFadV.d.ts +99 -0
- package/dist/chunks/index-Bkj17NEQ.d.ts +51 -0
- package/dist/chunks/index-Bm2NpgND.d.ts +82 -0
- package/dist/chunks/index-BnR7wjax.d.ts +68 -0
- package/dist/chunks/index-BxROljJI.d.ts +18 -0
- package/dist/chunks/index-Bz8MDq0H.d.ts +85 -0
- package/dist/chunks/index-C4Dks__B.d.ts +139 -0
- package/dist/chunks/index-CCXJXToc.d.ts +53 -0
- package/dist/chunks/index-CFnQubsV.d.ts +123 -0
- package/dist/chunks/index-CJXKl97l.d.ts +120 -0
- package/dist/chunks/index-CJzKu7QI.d.ts +41 -0
- package/dist/chunks/index-CKx1KHED.d.ts +303 -0
- package/dist/chunks/index-COsIPd8L.d.ts +63 -0
- package/dist/chunks/index-CRfm7W6C.d.ts +231 -0
- package/dist/chunks/index-CTpwB1yR.d.ts +236 -0
- package/dist/chunks/index-CVUMS0x7.d.ts +74 -0
- package/dist/chunks/index-CYgBmZ8w.d.ts +271 -0
- package/dist/chunks/index-Cc4SSslb.d.ts +205 -0
- package/dist/chunks/index-CftERHnE.d.ts +25 -0
- package/dist/chunks/index-Ci7AEgEc.d.ts +47 -0
- package/dist/chunks/index-CqZ68Z8R.d.ts +415 -0
- package/dist/chunks/index-CsARGAzD.d.ts +50 -0
- package/dist/chunks/index-CsMIgBsd.d.ts +40 -0
- package/dist/chunks/index-D9PZHY_I.d.ts +136 -0
- package/dist/chunks/index-DAoPg59I.d.ts +81 -0
- package/dist/chunks/index-DHGgezXU.d.ts +59 -0
- package/dist/chunks/index-DHOG_rjE.d.ts +121 -0
- package/dist/chunks/index-DJfga0Ce.d.ts +57 -0
- package/dist/chunks/index-DJr_ZK4b.d.ts +110 -0
- package/dist/chunks/index-DMbdEm__.d.ts +119 -0
- package/dist/chunks/index-DXjbI7Yv.d.ts +133 -0
- package/dist/chunks/index-DaHQdNul.d.ts +182 -0
- package/dist/chunks/index-Dcc_W6Kv.d.ts +147 -0
- package/dist/chunks/index-DceCODH9.d.ts +138 -0
- package/dist/chunks/index-Ddd7iWfm.d.ts +32 -0
- package/dist/chunks/index-Dfg4Ftb8.d.ts +69 -0
- package/dist/chunks/index-Dfy1YW5j.d.ts +74 -0
- package/dist/chunks/index-DgHvXzVh.d.ts +208 -0
- package/dist/chunks/index-Dh5CaHTP.d.ts +45 -0
- package/dist/chunks/index-DjXRq-n3.d.ts +98 -0
- package/dist/chunks/index-DjrEvKd-.d.ts +193 -0
- package/dist/chunks/index-DtbUXxjz.d.ts +54 -0
- 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 +67 -0
- package/dist/chunks/index-I-H3VJ-L.d.ts +229 -0
- package/dist/chunks/index-RHJhkSY-.d.ts +273 -0
- package/dist/chunks/index-e7SJkI_m.d.ts +102 -0
- package/dist/chunks/index-g74gO0pc.d.ts +36 -0
- package/dist/chunks/index-qMq_-GY2.d.ts +105 -0
- package/dist/chunks/index-t_x6jj7l.d.ts +97 -0
- package/dist/chunks/input-adorn-DwdX-jxA.js +2 -0
- package/dist/chunks/input-adorn-DwdX-jxA.js.map +1 -0
- package/dist/chunks/input-group-Cuiuf4Dl.js +2 -0
- 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 -0
- package/dist/chunks/overlayPlacement-BtS90IVf.js.map +1 -0
- package/dist/chunks/overlayPlacement-CIsLpycT.d.ts +7 -0
- 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 +41 -0
- package/dist/chunks/popover-Bdg8D4sm.js +2 -0
- package/dist/chunks/popover-Bdg8D4sm.js.map +1 -0
- package/dist/chunks/progress-zWkTltor.js +2 -0
- 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-CT_8TKL7.js +2 -0
- 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-DZh_5Df8.d.ts +24 -0
- package/dist/chunks/renderFormField-Brkw1yA6.js +2 -0
- package/dist/chunks/renderFormField-Brkw1yA6.js.map +1 -0
- package/dist/chunks/renderFormField-ChNagAFN.d.ts +15 -0
- package/dist/chunks/renderMenuItemContent-DUezZrpj.js +2 -0
- 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 -0
- 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-CsMiQbpq.js +2 -0
- package/dist/chunks/stack-CsMiQbpq.js.map +1 -0
- package/dist/chunks/static-table-D0M4oc_t.js +2 -0
- 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 -0
- 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 +35 -0
- 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 -0
- 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 -0
- 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 -0
- package/dist/chunks/useForkedRef-DVEfT-KI.js.map +1 -0
- package/dist/chunks/useFormField-BOqmBTC4.js +2 -0
- package/dist/chunks/useFormField-BOqmBTC4.js.map +1 -0
- package/dist/chunks/useIsomorphicLayoutEffect-BbqRwuqn.js +2 -0
- 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 -0
- 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 +2 -0
- package/dist/close-button.js +1 -0
- package/dist/collapse.d.ts +2 -0
- package/dist/collapse.js +1 -0
- package/dist/color-input.d.ts +2 -0
- package/dist/color-input.js +1 -0
- package/dist/combobox.d.ts +3 -0
- package/dist/combobox.js +1 -0
- package/dist/context-menu.d.ts +2 -0
- package/dist/context-menu.js +1 -0
- package/dist/datagrid.d.ts +2 -0
- package/dist/datagrid.js +1 -0
- package/dist/datepicker.d.ts +2 -0
- package/dist/datepicker.js +1 -0
- package/dist/divider.d.ts +2 -0
- package/dist/divider.js +1 -0
- package/dist/drawer.d.ts +2 -0
- package/dist/drawer.js +1 -0
- package/dist/file-input.d.ts +2 -0
- package/dist/file-input.js +1 -0
- package/dist/flex.d.ts +2 -0
- package/dist/flex.js +1 -0
- package/dist/floating-input.d.ts +2 -0
- package/dist/floating-input.js +1 -0
- package/dist/form-field.d.ts +2 -0
- package/dist/form-field.js +1 -0
- package/dist/form.d.ts +2 -0
- package/dist/form.js +1 -0
- package/dist/grid.d.ts +2 -0
- package/dist/grid.js +1 -0
- package/dist/icon.d.ts +4 -0
- package/dist/icon.js +1 -0
- package/dist/index.d.ts +84 -6369
- package/dist/index.js +1 -2
- package/dist/input-adorn.d.ts +2 -0
- package/dist/input-adorn.js +1 -0
- package/dist/input-group.d.ts +2 -0
- package/dist/input-group.js +1 -0
- package/dist/link.d.ts +3 -0
- package/dist/link.js +1 -0
- package/dist/list.d.ts +2 -0
- package/dist/list.js +1 -0
- package/dist/menu.d.ts +4 -0
- package/dist/menu.js +1 -0
- package/dist/modal.d.ts +2 -0
- package/dist/modal.js +1 -0
- package/dist/nav-overflow.d.ts +2 -0
- package/dist/nav-overflow.js +1 -0
- package/dist/nav.d.ts +2 -0
- package/dist/nav.js +1 -0
- package/dist/navbar.d.ts +2 -0
- package/dist/navbar.js +1 -0
- package/dist/notification.d.ts +2 -0
- package/dist/notification.js +1 -0
- package/dist/number-field.d.ts +2 -0
- package/dist/number-field.js +1 -0
- package/dist/otp-input.d.ts +2 -0
- package/dist/otp-input.js +1 -0
- package/dist/pagination.d.ts +2 -0
- package/dist/pagination.js +1 -0
- package/dist/password-strength.d.ts +2 -0
- package/dist/password-strength.js +1 -0
- package/dist/placeholder.d.ts +2 -0
- package/dist/placeholder.js +1 -0
- package/dist/popover.d.ts +2 -0
- package/dist/popover.js +1 -0
- package/dist/portal.d.ts +2 -0
- package/dist/portal.js +1 -0
- package/dist/progress.d.ts +2 -0
- package/dist/progress.js +1 -0
- package/dist/radio.d.ts +2 -0
- package/dist/radio.js +1 -0
- package/dist/range-input.d.ts +2 -0
- package/dist/range-input.js +1 -0
- 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.d.ts +2 -0
- package/dist/select.js +1 -0
- package/dist/skeleton.d.ts +2 -0
- package/dist/skeleton.js +1 -0
- package/dist/spinner.d.ts +2 -0
- package/dist/spinner.js +1 -0
- package/dist/stack.d.ts +2 -0
- package/dist/stack.js +1 -0
- package/dist/static-table.d.ts +2 -0
- package/dist/static-table.js +1 -0
- package/dist/stepper.d.ts +2 -0
- package/dist/stepper.js +1 -0
- package/dist/style.css +1 -1
- package/dist/switch.d.ts +2 -0
- package/dist/switch.js +1 -0
- package/dist/table.d.ts +2 -0
- package/dist/table.js +1 -0
- package/dist/tabs.d.ts +2 -0
- package/dist/tabs.js +1 -0
- package/dist/text-input.d.ts +2 -0
- package/dist/text-input.js +1 -0
- package/dist/textarea.d.ts +2 -0
- package/dist/textarea.js +1 -0
- package/dist/time-field.d.ts +2 -0
- package/dist/time-field.js +1 -0
- package/dist/toast.d.ts +2 -0
- package/dist/toast.js +1 -0
- package/dist/tooltip.d.ts +2 -0
- package/dist/tooltip.js +1 -0
- 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 +120 -53
- 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 -8
- 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 -6
- 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 -6
- package/src/components/badge/Badge.tsx +0 -94
- package/src/components/badge/index.ts +0 -2
- package/src/components/breadcrumb/Breadcrumb.tsx +0 -68
- package/src/components/breadcrumb/BreadcrumbItem.tsx +0 -38
- package/src/components/breadcrumb/index.ts +0 -4
- package/src/components/button/Button.tsx +0 -232
- package/src/components/button/index.ts +0 -2
- 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 -4
- 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 -6
- 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 -22
- package/src/components/carousel/Carousel.tsx +0 -753
- package/src/components/carousel/CarouselControlButton.tsx +0 -74
- package/src/components/carousel/CarouselControlNext.tsx +0 -22
- package/src/components/carousel/CarouselControlPrev.tsx +0 -22
- 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 -61
- package/src/components/carousel/carouselEngine.ts +0 -170
- package/src/components/carousel/context.ts +0 -29
- package/src/components/carousel/index.ts +0 -21
- 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 -4
- package/src/components/chip/Chip.tsx +0 -184
- package/src/components/chip/index.ts +0 -2
- 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 -2
- package/src/components/close-button/CloseButton.tsx +0 -205
- package/src/components/close-button/index.ts +0 -2
- package/src/components/collapse/Collapse.tsx +0 -128
- package/src/components/collapse/index.ts +0 -2
- package/src/components/color-input/ColorInput.tsx +0 -106
- package/src/components/color-input/index.ts +0 -2
- 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 -6
- 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 -14
- 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 -4
- 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 -10
- package/src/components/file-input/FileInput.tsx +0 -100
- package/src/components/file-input/index.ts +0 -2
- package/src/components/flex/Flex.tsx +0 -134
- package/src/components/flex/index.ts +0 -2
- package/src/components/floating-input/FloatingInput.tsx +0 -94
- package/src/components/floating-input/index.ts +0 -2
- 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 -8
- 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 -2
- 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 -10
- package/src/components/icon/Icon.tsx +0 -74
- package/src/components/icon/index.ts +0 -2
- package/src/components/input-adorn/InputAdorn.tsx +0 -55
- package/src/components/input-adorn/index.ts +0 -2
- 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 -4
- package/src/components/link/Link.tsx +0 -148
- package/src/components/link/index.ts +0 -2
- package/src/components/list/List.tsx +0 -193
- package/src/components/list/ListItem.tsx +0 -91
- package/src/components/list/index.ts +0 -4
- 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/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 -19
- 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 -10
- 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 -7
- 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 -34
- package/src/components/navbar/index.ts +0 -10
- package/src/components/notification/Notification.scss +0 -15
- package/src/components/notification/Notification.tsx +0 -187
- 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 -17
- 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 -2
- package/src/components/pagination/Pagination.tsx +0 -199
- package/src/components/pagination/PaginationItem.tsx +0 -152
- package/src/components/pagination/index.ts +0 -4
- package/src/components/password-strength/PasswordStrength.tsx +0 -155
- package/src/components/password-strength/index.ts +0 -2
- package/src/components/password-strength/strengthScore.ts +0 -79
- package/src/components/placeholder/Placeholder.tsx +0 -178
- package/src/components/placeholder/index.ts +0 -2
- package/src/components/popover/Popover.tsx +0 -269
- package/src/components/popover/index.ts +0 -2
- package/src/components/progress/Progress.tsx +0 -154
- package/src/components/progress/ProgressBar.tsx +0 -88
- package/src/components/progress/index.ts +0 -4
- 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 -4
- package/src/components/range-input/RangeInput.tsx +0 -109
- package/src/components/range-input/index.ts +0 -2
- package/src/components/select/Select.tsx +0 -277
- package/src/components/select/index.ts +0 -2
- package/src/components/skeleton/Skeleton.tsx +0 -89
- package/src/components/skeleton/SkeletonLoader.tsx +0 -91
- package/src/components/skeleton/index.ts +0 -4
- package/src/components/spinner/Spinner.tsx +0 -77
- package/src/components/spinner/index.ts +0 -2
- package/src/components/stack/Stack.tsx +0 -81
- package/src/components/stack/index.ts +0 -2
- package/src/components/stepper/Stepper.tsx +0 -172
- package/src/components/stepper/StepperItem.tsx +0 -66
- package/src/components/stepper/index.ts +0 -4
- package/src/components/switch/Switch.tsx +0 -259
- package/src/components/switch/index.ts +0 -2
- package/src/components/table/Table.css +0 -39
- package/src/components/table/Table.tsx +0 -413
- 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 -12
- 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 -8
- package/src/components/text-input/TextInput.tsx +0 -188
- package/src/components/text-input/index.ts +0 -2
- package/src/components/textarea/Textarea.tsx +0 -145
- package/src/components/textarea/index.ts +0 -2
- package/src/components/toast/Toast.tsx +0 -219
- package/src/components/toast/ToastBody.tsx +0 -64
- package/src/components/toast/ToastFooter.tsx +0 -47
- package/src/components/toast/ToastHeader.tsx +0 -104
- 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 -18
- package/src/components/toast/toastQueue.ts +0 -56
- package/src/components/tooltip/Tooltip.tsx +0 -171
- package/src/components/tooltip/index.ts +0 -2
- 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/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 -502
- 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/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 -53
- package/src/utils/renderMenuItemContent.tsx +0 -62
- package/src/utils/setVisibleRangeStart.ts +0 -64
- package/src/utils/spacingClassName.ts +0 -14
- package/src/utils/suppressFocusRingGlobally.ts +0 -84
- package/src/utils/triggerElement.ts +0 -25
- package/src/utils/validationClassName.ts +0 -8
- package/src/utils/virtualFocusStyle.ts +0 -16
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
import React, { forwardRef, HTMLAttributes, ReactNode } from 'react'
|
|
2
|
-
import { mergeProps } from 'react-aria'
|
|
3
|
-
import { Transition } from 'react-transition-group'
|
|
4
|
-
import classNames from 'classnames'
|
|
5
|
-
|
|
6
|
-
import { ContextColor } from '../../types'
|
|
7
|
-
import { useAutoDismiss, useDismissibleTransition } from '../../hooks'
|
|
8
|
-
import { ToastContext } from './context'
|
|
9
|
-
import { ToastBody } from './ToastBody'
|
|
10
|
-
import { ToastFooter } from './ToastFooter'
|
|
11
|
-
import { ToastHeader } from './ToastHeader'
|
|
12
|
-
|
|
13
|
-
export interface ToastProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
|
|
14
|
-
/**
|
|
15
|
-
* Apply a CSS fade transition to the toast.
|
|
16
|
-
*/
|
|
17
|
-
animation?: boolean
|
|
18
|
-
/**
|
|
19
|
-
* Auto hide the toast. The timer starts once the show transition completes and pauses
|
|
20
|
-
* while the pointer is over the toast or focus is within it.
|
|
21
|
-
*/
|
|
22
|
-
autohide?: boolean
|
|
23
|
-
/**
|
|
24
|
-
* A string of all className you want applied to the base component.
|
|
25
|
-
*/
|
|
26
|
-
className?: string
|
|
27
|
-
/**
|
|
28
|
-
* Adds a close button — shorthand for `ToastHeader`'s/`ToastBody`'s `closeButton` prop.
|
|
29
|
-
* Placed in the header when `icon`/`title`/`time` is set; otherwise placed in the body
|
|
30
|
-
* alongside `message`, or in a header containing only the close button if `message` is
|
|
31
|
-
* also unset.
|
|
32
|
-
*/
|
|
33
|
-
closeButton?: boolean
|
|
34
|
-
/**
|
|
35
|
-
* Overrides the close button's accessible name (defaults to `'Close'`). Set this for
|
|
36
|
-
* non-English UIs. Shorthand for `ToastHeader`'s `closeLabel` prop.
|
|
37
|
-
*/
|
|
38
|
-
closeLabel?: string
|
|
39
|
-
/**
|
|
40
|
-
* Sets the color of the component to one of Chassis context colors.
|
|
41
|
-
*/
|
|
42
|
-
color?: ContextColor
|
|
43
|
-
/**
|
|
44
|
-
* Delay hiding the toast (ms).
|
|
45
|
-
*/
|
|
46
|
-
delay?: number
|
|
47
|
-
/**
|
|
48
|
-
* Trailing content — typically a row of `Button`s — rendered via a single `ToastFooter`,
|
|
49
|
-
* after `message`/`children`. Pass a function to receive `close` directly, instead of
|
|
50
|
-
* calling `useToast()` from a child component to wire up a "Close" action.
|
|
51
|
-
*/
|
|
52
|
-
footer?: ReactNode | ((close: () => void) => ReactNode)
|
|
53
|
-
/**
|
|
54
|
-
* Leading icon for the header. A string is rendered as `<ToastIcon name={icon} />`; pass
|
|
55
|
-
* any other node for a fully custom icon (typically a logo or avatar). Shorthand for
|
|
56
|
-
* `ToastHeader`'s `icon` prop; hidden from assistive technology by default, since it
|
|
57
|
-
* duplicates `title` visually.
|
|
58
|
-
*/
|
|
59
|
-
icon?: string | ReactNode
|
|
60
|
-
/**
|
|
61
|
-
* Message body, rendered via a single `ToastBody`. For multi-block content, compose
|
|
62
|
-
* `children` manually instead — `message` wraps everything in one element.
|
|
63
|
-
*/
|
|
64
|
-
message?: ReactNode
|
|
65
|
-
/**
|
|
66
|
-
* Header timestamp, rendered after `title`. Shorthand for `ToastHeader`'s `time` prop.
|
|
67
|
-
*/
|
|
68
|
-
time?: ReactNode
|
|
69
|
-
/**
|
|
70
|
-
* Header heading, rendered before `time`. Shorthand for `ToastHeader`'s children. When set
|
|
71
|
-
* alongside `message`, wires the toast's `aria-labelledby`/`aria-describedby` to them
|
|
72
|
-
* automatically.
|
|
73
|
-
*/
|
|
74
|
-
title?: ReactNode
|
|
75
|
-
/**
|
|
76
|
-
* Callback fired when the component requests to be closed.
|
|
77
|
-
*/
|
|
78
|
-
onClose?: () => void
|
|
79
|
-
/**
|
|
80
|
-
* Callback fired when the component requests to be shown.
|
|
81
|
-
*/
|
|
82
|
-
onShow?: () => void
|
|
83
|
-
/**
|
|
84
|
-
* ARIA live-region role. Use `status` (the default) for confirmation, progress, and
|
|
85
|
-
* informational messages, which announce politely. Use `alert` for messages that need
|
|
86
|
-
* immediate attention — validation errors, failed operations — which interrupt speech.
|
|
87
|
-
*/
|
|
88
|
-
role?: 'status' | 'alert'
|
|
89
|
-
/**
|
|
90
|
-
* Apply a full-color background with inverted text. Only meaningful alongside `color`.
|
|
91
|
-
*/
|
|
92
|
-
solid?: boolean
|
|
93
|
-
/**
|
|
94
|
-
* Apply a semi-transparent background.
|
|
95
|
-
*/
|
|
96
|
-
translucent?: boolean
|
|
97
|
-
/**
|
|
98
|
-
* Toggle the visibility of component.
|
|
99
|
-
*/
|
|
100
|
-
visible?: boolean
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
export const Toast = forwardRef<HTMLDivElement, ToastProps>(
|
|
104
|
-
(
|
|
105
|
-
{
|
|
106
|
-
children,
|
|
107
|
-
animation = true,
|
|
108
|
-
autohide = true,
|
|
109
|
-
className,
|
|
110
|
-
closeButton,
|
|
111
|
-
closeLabel,
|
|
112
|
-
color,
|
|
113
|
-
delay = 5000,
|
|
114
|
-
footer,
|
|
115
|
-
icon,
|
|
116
|
-
message,
|
|
117
|
-
role = 'status',
|
|
118
|
-
solid,
|
|
119
|
-
time,
|
|
120
|
-
title,
|
|
121
|
-
translucent,
|
|
122
|
-
visible = false,
|
|
123
|
-
onClose,
|
|
124
|
-
onShow,
|
|
125
|
-
...rest
|
|
126
|
-
},
|
|
127
|
-
ref
|
|
128
|
-
) => {
|
|
129
|
-
const {
|
|
130
|
-
close,
|
|
131
|
-
entered,
|
|
132
|
-
forkedRef,
|
|
133
|
-
getTransitionClass,
|
|
134
|
-
textId,
|
|
135
|
-
titleId,
|
|
136
|
-
transitionProps,
|
|
137
|
-
visible: _visible
|
|
138
|
-
} = useDismissibleTransition({ onClose, onShow, ref, visible })
|
|
139
|
-
|
|
140
|
-
// The autohide timer is only meaningful once the show transition has actually finished (see
|
|
141
|
-
// `autohide`'s JSDoc) — gating on `_visible` alone would start it the instant `visible` flips
|
|
142
|
-
// true, while the toast is still fading/sliding in.
|
|
143
|
-
const autoDismissProps = useAutoDismiss({
|
|
144
|
-
enabled: autohide,
|
|
145
|
-
delay,
|
|
146
|
-
visible: _visible && entered,
|
|
147
|
-
onHide: close
|
|
148
|
-
})
|
|
149
|
-
|
|
150
|
-
const contextValues = {
|
|
151
|
-
visible: _visible,
|
|
152
|
-
close
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
const _className = classNames(
|
|
156
|
-
'toast',
|
|
157
|
-
{
|
|
158
|
-
fade: animation,
|
|
159
|
-
context: !!color,
|
|
160
|
-
solid: Boolean(solid && color),
|
|
161
|
-
translucent
|
|
162
|
-
},
|
|
163
|
-
color,
|
|
164
|
-
className
|
|
165
|
-
)
|
|
166
|
-
|
|
167
|
-
const hasHeaderShorthand = icon != null || title != null || time != null
|
|
168
|
-
const headerGetsCloseButton = closeButton && (hasHeaderShorthand || message == null)
|
|
169
|
-
const bodyGetsCloseButton = closeButton && !hasHeaderShorthand && message != null
|
|
170
|
-
const hasHeaderContent = hasHeaderShorthand || headerGetsCloseButton
|
|
171
|
-
|
|
172
|
-
return (
|
|
173
|
-
<Transition {...transitionProps} timeout={250}>
|
|
174
|
-
{(state) => {
|
|
175
|
-
const transitionClass = getTransitionClass(state)
|
|
176
|
-
return (
|
|
177
|
-
<ToastContext.Provider value={contextValues}>
|
|
178
|
-
<div
|
|
179
|
-
className={classNames(_className, transitionClass)}
|
|
180
|
-
role={role}
|
|
181
|
-
aria-labelledby={title != null ? titleId : undefined}
|
|
182
|
-
aria-describedby={title != null && message != null ? textId : undefined}
|
|
183
|
-
{...mergeProps(rest, autoDismissProps)}
|
|
184
|
-
ref={forkedRef}
|
|
185
|
-
>
|
|
186
|
-
{hasHeaderContent && (
|
|
187
|
-
<ToastHeader
|
|
188
|
-
icon={icon}
|
|
189
|
-
time={time}
|
|
190
|
-
titleId={title != null ? titleId : undefined}
|
|
191
|
-
closeButton={headerGetsCloseButton}
|
|
192
|
-
closeLabel={closeLabel}
|
|
193
|
-
>
|
|
194
|
-
{title}
|
|
195
|
-
</ToastHeader>
|
|
196
|
-
)}
|
|
197
|
-
{message != null && (
|
|
198
|
-
<ToastBody
|
|
199
|
-
id={title != null && message != null ? textId : undefined}
|
|
200
|
-
closeButton={bodyGetsCloseButton}
|
|
201
|
-
closeLabel={closeLabel}
|
|
202
|
-
>
|
|
203
|
-
{message}
|
|
204
|
-
</ToastBody>
|
|
205
|
-
)}
|
|
206
|
-
{children}
|
|
207
|
-
{footer != null && (
|
|
208
|
-
<ToastFooter>{typeof footer === 'function' ? footer(close) : footer}</ToastFooter>
|
|
209
|
-
)}
|
|
210
|
-
</div>
|
|
211
|
-
</ToastContext.Provider>
|
|
212
|
-
)
|
|
213
|
-
}}
|
|
214
|
-
</Transition>
|
|
215
|
-
)
|
|
216
|
-
}
|
|
217
|
-
)
|
|
218
|
-
|
|
219
|
-
Toast.displayName = 'Toast'
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import React, { ElementType, ForwardRefRenderFunction, ReactElement } from 'react'
|
|
2
|
-
import classNames from 'classnames'
|
|
3
|
-
|
|
4
|
-
import { CloseButton } from '../close-button/CloseButton'
|
|
5
|
-
import { useToast } from '../../hooks'
|
|
6
|
-
import {
|
|
7
|
-
createPolymorphicComponent,
|
|
8
|
-
PolymorphicComponentProps,
|
|
9
|
-
PolymorphicRef
|
|
10
|
-
} from '../../utils/polymorphic'
|
|
11
|
-
|
|
12
|
-
type ToastBodyOwnProps<C extends ElementType> = {
|
|
13
|
-
/**
|
|
14
|
-
* A string of all className you want applied to the base component.
|
|
15
|
-
*/
|
|
16
|
-
className?: string
|
|
17
|
-
/**
|
|
18
|
-
* Adds a close button alongside the body content, so a toast composed without a
|
|
19
|
-
* `ToastHeader` still gets a dismiss control without any manual layout markup.
|
|
20
|
-
*/
|
|
21
|
-
closeButton?: boolean
|
|
22
|
-
/**
|
|
23
|
-
* Overrides the close button's accessible name (defaults to `'Close'`). Set this for
|
|
24
|
-
* non-English UIs.
|
|
25
|
-
*/
|
|
26
|
-
closeLabel?: string
|
|
27
|
-
/**
|
|
28
|
-
* Component used for the root node. Either a string to use a HTML element or a component.
|
|
29
|
-
*/
|
|
30
|
-
component?: C
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export type ToastBodyProps<C extends ElementType = 'div'> = PolymorphicComponentProps<
|
|
34
|
-
C,
|
|
35
|
-
ToastBodyOwnProps<C>
|
|
36
|
-
>
|
|
37
|
-
|
|
38
|
-
type ToastBodyComponent = (<C extends ElementType = 'div'>(
|
|
39
|
-
props: ToastBodyProps<C> & { ref?: PolymorphicRef<C> }
|
|
40
|
-
) => ReactElement | null) & { displayName?: string }
|
|
41
|
-
|
|
42
|
-
function ToastBodyRender<C extends ElementType = 'div'>(
|
|
43
|
-
{ children, className, closeButton, closeLabel, component, ...rest }: ToastBodyProps<C>,
|
|
44
|
-
ref: PolymorphicRef<C>
|
|
45
|
-
) {
|
|
46
|
-
const { close } = useToast()
|
|
47
|
-
const Component = component ?? 'div'
|
|
48
|
-
const _className = classNames(
|
|
49
|
-
'toast-body',
|
|
50
|
-
{ 'd-flex align-items-start justify-content-between gap-sm': closeButton },
|
|
51
|
-
className
|
|
52
|
-
)
|
|
53
|
-
return (
|
|
54
|
-
<Component className={_className} {...rest} ref={ref}>
|
|
55
|
-
{closeButton ? <div>{children}</div> : children}
|
|
56
|
-
{closeButton && <CloseButton label={closeLabel} onClick={close} />}
|
|
57
|
-
</Component>
|
|
58
|
-
)
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export const ToastBody = createPolymorphicComponent<ToastBodyComponent>(
|
|
62
|
-
ToastBodyRender as ForwardRefRenderFunction<Element, ToastBodyProps<ElementType>>,
|
|
63
|
-
'ToastBody'
|
|
64
|
-
)
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import React, { ElementType, ForwardRefRenderFunction, ReactElement } from 'react'
|
|
2
|
-
import classNames from 'classnames'
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
createPolymorphicComponent,
|
|
6
|
-
PolymorphicComponentProps,
|
|
7
|
-
PolymorphicRef
|
|
8
|
-
} from '../../utils/polymorphic'
|
|
9
|
-
|
|
10
|
-
type ToastFooterOwnProps<C extends ElementType> = {
|
|
11
|
-
/**
|
|
12
|
-
* A string of all className you want applied to the base component.
|
|
13
|
-
*/
|
|
14
|
-
className?: string
|
|
15
|
-
/**
|
|
16
|
-
* Component used for the root node. Either a string to use a HTML element or a component.
|
|
17
|
-
*/
|
|
18
|
-
component?: C
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export type ToastFooterProps<C extends ElementType = 'div'> = PolymorphicComponentProps<
|
|
22
|
-
C,
|
|
23
|
-
ToastFooterOwnProps<C>
|
|
24
|
-
>
|
|
25
|
-
|
|
26
|
-
type ToastFooterComponent = (<C extends ElementType = 'div'>(
|
|
27
|
-
props: ToastFooterProps<C> & { ref?: PolymorphicRef<C> }
|
|
28
|
-
) => ReactElement | null) & { displayName?: string }
|
|
29
|
-
|
|
30
|
-
function ToastFooterRender<C extends ElementType = 'div'>(
|
|
31
|
-
{ children, className, component, ...rest }: ToastFooterProps<C>,
|
|
32
|
-
ref: PolymorphicRef<C>
|
|
33
|
-
) {
|
|
34
|
-
const Component = component ?? 'div'
|
|
35
|
-
const _className = classNames('toast-footer', className)
|
|
36
|
-
|
|
37
|
-
return (
|
|
38
|
-
<Component className={_className} {...rest} ref={ref}>
|
|
39
|
-
{children}
|
|
40
|
-
</Component>
|
|
41
|
-
)
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export const ToastFooter = createPolymorphicComponent<ToastFooterComponent>(
|
|
45
|
-
ToastFooterRender as ForwardRefRenderFunction<Element, ToastFooterProps<ElementType>>,
|
|
46
|
-
'ToastFooter'
|
|
47
|
-
)
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import React, { ElementType, ForwardRefRenderFunction, ReactElement, ReactNode } from 'react'
|
|
2
|
-
import classNames from 'classnames'
|
|
3
|
-
|
|
4
|
-
import { CloseButton } from '../close-button/CloseButton'
|
|
5
|
-
import { useToast } from '../../hooks'
|
|
6
|
-
import {
|
|
7
|
-
createPolymorphicComponent,
|
|
8
|
-
PolymorphicComponentProps,
|
|
9
|
-
PolymorphicRef
|
|
10
|
-
} from '../../utils/polymorphic'
|
|
11
|
-
import { ToastIcon } from './ToastIcon'
|
|
12
|
-
|
|
13
|
-
type ToastHeaderOwnProps<C extends ElementType> = {
|
|
14
|
-
/**
|
|
15
|
-
* Heading, rendered before `time` as a `<strong>`.
|
|
16
|
-
*/
|
|
17
|
-
children?: ReactNode
|
|
18
|
-
/**
|
|
19
|
-
* A string of all className you want applied to the base component.
|
|
20
|
-
*/
|
|
21
|
-
className?: string
|
|
22
|
-
/**
|
|
23
|
-
* Automatically add a close button to the header.
|
|
24
|
-
*/
|
|
25
|
-
closeButton?: boolean
|
|
26
|
-
/**
|
|
27
|
-
* Overrides the close button's accessible name (defaults to `'Close'`). Set this for
|
|
28
|
-
* non-English UIs.
|
|
29
|
-
*/
|
|
30
|
-
closeLabel?: string
|
|
31
|
-
/**
|
|
32
|
-
* Component used for the root node. Either a string to use a HTML element or a component.
|
|
33
|
-
*/
|
|
34
|
-
component?: C
|
|
35
|
-
/**
|
|
36
|
-
* Leading icon. A string is rendered as `<ToastIcon name={icon} />` and hidden from
|
|
37
|
-
* assistive technology by default, since it duplicates the heading visually. Pass any other
|
|
38
|
-
* node for a fully custom icon (typically a logo or avatar) — a custom node is left as-is,
|
|
39
|
-
* since it may carry its own meaningful accessible name (e.g. an avatar's `alt` text).
|
|
40
|
-
*/
|
|
41
|
-
icon?: string | ReactNode
|
|
42
|
-
/**
|
|
43
|
-
* Trailing timestamp, rendered after the heading.
|
|
44
|
-
*/
|
|
45
|
-
time?: ReactNode
|
|
46
|
-
/**
|
|
47
|
-
* Sets the `id` on the rendered heading element, for `aria-labelledby` wiring. Set
|
|
48
|
-
* automatically by `Toast` when both `title` and `message` are used together; only needed
|
|
49
|
-
* here for manual wiring in a fully custom composition.
|
|
50
|
-
*/
|
|
51
|
-
titleId?: string
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export type ToastHeaderProps<C extends ElementType = 'div'> = PolymorphicComponentProps<
|
|
55
|
-
C,
|
|
56
|
-
ToastHeaderOwnProps<C>
|
|
57
|
-
>
|
|
58
|
-
|
|
59
|
-
type ToastHeaderComponent = (<C extends ElementType = 'div'>(
|
|
60
|
-
props: ToastHeaderProps<C> & { ref?: PolymorphicRef<C> }
|
|
61
|
-
) => ReactElement | null) & { displayName?: string }
|
|
62
|
-
|
|
63
|
-
function ToastHeaderRender<C extends ElementType = 'div'>(
|
|
64
|
-
{
|
|
65
|
-
children,
|
|
66
|
-
className,
|
|
67
|
-
closeButton,
|
|
68
|
-
closeLabel,
|
|
69
|
-
component,
|
|
70
|
-
icon,
|
|
71
|
-
time,
|
|
72
|
-
titleId,
|
|
73
|
-
...rest
|
|
74
|
-
}: ToastHeaderProps<C>,
|
|
75
|
-
ref: PolymorphicRef<C>
|
|
76
|
-
) {
|
|
77
|
-
const { close } = useToast()
|
|
78
|
-
const Component = component ?? 'div'
|
|
79
|
-
const _className = classNames('toast-header', className)
|
|
80
|
-
return (
|
|
81
|
-
<Component className={_className} {...rest} ref={ref}>
|
|
82
|
-
{icon != null &&
|
|
83
|
-
(typeof icon === 'string' ? (
|
|
84
|
-
<span aria-hidden="true" className="me-sm">
|
|
85
|
-
<ToastIcon name={icon} />
|
|
86
|
-
</span>
|
|
87
|
-
) : (
|
|
88
|
-
<span className="me-sm">{icon}</span>
|
|
89
|
-
))}
|
|
90
|
-
{children != null && (
|
|
91
|
-
<strong id={titleId} className="me-auto">
|
|
92
|
-
{children}
|
|
93
|
-
</strong>
|
|
94
|
-
)}
|
|
95
|
-
{time != null && <small>{time}</small>}
|
|
96
|
-
{closeButton && <CloseButton label={closeLabel} onClick={close} />}
|
|
97
|
-
</Component>
|
|
98
|
-
)
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
export const ToastHeader = createPolymorphicComponent<ToastHeaderComponent>(
|
|
102
|
-
ToastHeaderRender as ForwardRefRenderFunction<Element, ToastHeaderProps<ElementType>>,
|
|
103
|
-
'ToastHeader'
|
|
104
|
-
)
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import React, { forwardRef } from 'react'
|
|
2
|
-
import classNames from 'classnames'
|
|
3
|
-
|
|
4
|
-
import { Icon, IconProps } from '../icon/Icon'
|
|
5
|
-
|
|
6
|
-
export type ToastIconProps = IconProps & {
|
|
7
|
-
/**
|
|
8
|
-
* A string of all className you want applied to the base component.
|
|
9
|
-
*/
|
|
10
|
-
className?: string
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export const ToastIcon = forwardRef<HTMLSpanElement | SVGSVGElement, ToastIconProps>(
|
|
14
|
-
({ className, ...rest }, ref) => {
|
|
15
|
-
const _className = classNames('toast-icon', className)
|
|
16
|
-
|
|
17
|
-
return <Icon className={_className} {...rest} ref={ref} />
|
|
18
|
-
}
|
|
19
|
-
)
|
|
20
|
-
|
|
21
|
-
ToastIcon.displayName = 'ToastIcon'
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import React, { forwardRef, HTMLAttributes } from 'react'
|
|
2
|
-
import { createPortal } from 'react-dom'
|
|
3
|
-
import classNames from 'classnames'
|
|
4
|
-
|
|
5
|
-
import { useToastRegionQueue } from '../../hooks'
|
|
6
|
-
import { Toast } from './Toast'
|
|
7
|
-
import { toastQueue } from './toastQueue'
|
|
8
|
-
|
|
9
|
-
export interface ToasterProps extends HTMLAttributes<HTMLDivElement> {
|
|
10
|
-
/**
|
|
11
|
-
* Overrides the toast region's accessible name (defaults to `'Notifications'`, per
|
|
12
|
-
* react-aria). Set this for non-English UIs, or to distinguish multiple toasters on the
|
|
13
|
-
* same page.
|
|
14
|
-
*/
|
|
15
|
-
'aria-label'?: string
|
|
16
|
-
/**
|
|
17
|
-
* A string of all className you want applied to the base component.
|
|
18
|
-
*/
|
|
19
|
-
className?: string
|
|
20
|
-
/**
|
|
21
|
-
* Describes the placement of your component.
|
|
22
|
-
*
|
|
23
|
-
* @type 'top-start' | 'top-center' | 'top-end' | 'middle-start' | 'middle-center' | 'middle-end' | 'bottom-start' | 'bottom-center' | 'bottom-end' | string
|
|
24
|
-
*/
|
|
25
|
-
placement?:
|
|
26
|
-
| 'top-start'
|
|
27
|
-
| 'top-center'
|
|
28
|
-
| 'top-end'
|
|
29
|
-
| 'middle-start'
|
|
30
|
-
| 'middle-center'
|
|
31
|
-
| 'middle-end'
|
|
32
|
-
| 'bottom-start'
|
|
33
|
-
| 'bottom-center'
|
|
34
|
-
| 'bottom-end'
|
|
35
|
-
| string
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Renders the shared `toastQueue` (see `toastQueue.ts` — `addToast()` is how toasts get added
|
|
39
|
-
// to it from anywhere in the app) plus any statically-passed `children`, e.g. a permanently
|
|
40
|
-
// pinned toast alongside dynamic ones.
|
|
41
|
-
export const Toaster = forwardRef<HTMLDivElement, ToasterProps>(
|
|
42
|
-
({ children, className, placement, ...rest }, ref) => {
|
|
43
|
-
const { forkedRef, regionProps, state } = useToastRegionQueue(toastQueue, ref)
|
|
44
|
-
|
|
45
|
-
const _className = classNames(
|
|
46
|
-
'toaster toast-container p-md',
|
|
47
|
-
{
|
|
48
|
-
'position-fixed': placement,
|
|
49
|
-
'position-static': !placement,
|
|
50
|
-
'top-0': placement && placement.includes('top'),
|
|
51
|
-
'top-50 translate-middle-y': placement && placement.includes('middle'),
|
|
52
|
-
'bottom-0': placement && placement.includes('bottom'),
|
|
53
|
-
'start-0': placement && placement.includes('start'),
|
|
54
|
-
'start-50 translate-middle-x': placement && placement.includes('center'),
|
|
55
|
-
'end-0': placement && placement.includes('end')
|
|
56
|
-
},
|
|
57
|
-
className
|
|
58
|
-
)
|
|
59
|
-
|
|
60
|
-
const toaster = (toasterRef?: React.Ref<HTMLDivElement>) => {
|
|
61
|
-
return state.visibleToasts.length > 0 || children ? (
|
|
62
|
-
<div className={_className} {...regionProps} {...rest} ref={toasterRef}>
|
|
63
|
-
{children}
|
|
64
|
-
{state.visibleToasts.map((queued) => {
|
|
65
|
-
const { children: toastChildren, ...toastProps } = queued.content
|
|
66
|
-
return (
|
|
67
|
-
<Toast
|
|
68
|
-
key={queued.key}
|
|
69
|
-
visible
|
|
70
|
-
{...toastProps}
|
|
71
|
-
onClose={() => state.close(queued.key)}
|
|
72
|
-
>
|
|
73
|
-
{toastChildren}
|
|
74
|
-
</Toast>
|
|
75
|
-
)
|
|
76
|
-
})}
|
|
77
|
-
</div>
|
|
78
|
-
) : null
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
return typeof window !== 'undefined' && placement
|
|
82
|
-
? createPortal(toaster(forkedRef), document.body)
|
|
83
|
-
: toaster(forkedRef)
|
|
84
|
-
}
|
|
85
|
-
)
|
|
86
|
-
|
|
87
|
-
Toaster.displayName = 'Toaster'
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { createContext } from 'react'
|
|
2
|
-
|
|
3
|
-
export interface ToastContextProps {
|
|
4
|
-
/**
|
|
5
|
-
* Whether the toast is currently visible.
|
|
6
|
-
*/
|
|
7
|
-
visible?: boolean
|
|
8
|
-
/**
|
|
9
|
-
* Dismisses the toast. Wire this to any element's `onClick` — see `useToast`.
|
|
10
|
-
*/
|
|
11
|
-
close: () => void
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export const ToastContext = createContext<ToastContextProps>({ close: () => {} })
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export { Toast } from './Toast'
|
|
2
|
-
export type { ToastProps } from './Toast'
|
|
3
|
-
export { ToastBody } from './ToastBody'
|
|
4
|
-
export type { ToastBodyProps } from './ToastBody'
|
|
5
|
-
export { ToastFooter } from './ToastFooter'
|
|
6
|
-
export type { ToastFooterProps } from './ToastFooter'
|
|
7
|
-
export { ToastHeader } from './ToastHeader'
|
|
8
|
-
export type { ToastHeaderProps } from './ToastHeader'
|
|
9
|
-
export { ToastIcon } from './ToastIcon'
|
|
10
|
-
export type { ToastIconProps } from './ToastIcon'
|
|
11
|
-
|
|
12
|
-
// Toaster is an independent manager/container component (react-hot-toast-style), not a Toast
|
|
13
|
-
// sub-part — it subscribes to the shared toastQueue and renders Toast instances from it, rather
|
|
14
|
-
// than being composed as a child of Toast. Stays a separate top-level export.
|
|
15
|
-
export { Toaster } from './Toaster'
|
|
16
|
-
export type { ToasterProps } from './Toaster'
|
|
17
|
-
export { addToast, closeToast, toastQueue } from './toastQueue'
|
|
18
|
-
export type { ToastContent } from './toastQueue'
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { ReactNode } from 'react'
|
|
2
|
-
import { ToastQueue } from 'react-stately'
|
|
3
|
-
|
|
4
|
-
import { ContextColor } from '../../types'
|
|
5
|
-
|
|
6
|
-
export interface ToastContent {
|
|
7
|
-
/**
|
|
8
|
-
* Apply a CSS fade transition to the toast.
|
|
9
|
-
*/
|
|
10
|
-
animation?: boolean
|
|
11
|
-
/**
|
|
12
|
-
* Auto hide the toast. The timer starts once the show transition completes and pauses
|
|
13
|
-
* while the pointer is over the toast or focus is within it.
|
|
14
|
-
*/
|
|
15
|
-
autohide?: boolean
|
|
16
|
-
/**
|
|
17
|
-
* Content of the toast — typically a `Toast.Header`/`Toast.Body`/`Toast.Footer`.
|
|
18
|
-
*/
|
|
19
|
-
children: ReactNode
|
|
20
|
-
/**
|
|
21
|
-
* Sets the color of the component to one of Chassis context colors.
|
|
22
|
-
*/
|
|
23
|
-
color?: ContextColor
|
|
24
|
-
/**
|
|
25
|
-
* Delay hiding the toast (ms).
|
|
26
|
-
*/
|
|
27
|
-
delay?: number
|
|
28
|
-
/**
|
|
29
|
-
* Apply a full-color background with inverted text. Only meaningful alongside `color`.
|
|
30
|
-
*/
|
|
31
|
-
solid?: boolean
|
|
32
|
-
/**
|
|
33
|
-
* Apply a semi-transparent background.
|
|
34
|
-
*/
|
|
35
|
-
translucent?: boolean
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// The queue backing `Toaster` — a module-level singleton so `addToast()` is callable from
|
|
39
|
-
// anywhere (an event handler, an async callback) without threading a `push` prop through
|
|
40
|
-
// render. `Toaster` subscribes to it via `useToastQueue`; nothing renders until a
|
|
41
|
-
// `<Toaster />` is actually mounted somewhere to display the queue's contents.
|
|
42
|
-
export const toastQueue = new ToastQueue<ToastContent>()
|
|
43
|
-
|
|
44
|
-
// Adds a toast to the queue. Returns the toast's key, which can be passed to `closeToast` to
|
|
45
|
-
// dismiss it programmatically.
|
|
46
|
-
export function addToast(
|
|
47
|
-
children: ReactNode,
|
|
48
|
-
options: Omit<ToastContent, 'children'> = {}
|
|
49
|
-
): string {
|
|
50
|
-
return toastQueue.add({ children, ...options })
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
// Removes a queued toast immediately, bypassing its own exit animation.
|
|
54
|
-
export function closeToast(key: string): void {
|
|
55
|
-
toastQueue.close(key)
|
|
56
|
-
}
|