UNPKG

@undp/design-system-react

Version:

React based design system for UNDP

2 lines 1.4 kB
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-mLOUI7ql.cjs");let t=require("react");t=e.r(t,1);var n=1,r=1e6,i=0;function a(){return i=(i+1)%(2**53-1),i.toString()}var o=new Map,s=e=>{if(o.has(e))return;let t=setTimeout(()=>{o.delete(e),d({type:`REMOVE_TOAST`,toastId:e})},r);o.set(e,t)},c=(e,t)=>{switch(t.type){case`ADD_TOAST`:return{...e,toasts:[t.toast,...e.toasts].slice(0,n)};case`UPDATE_TOAST`:return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case`DISMISS_TOAST`:{let{toastId:n}=t;return n?s(n):e.toasts.forEach(e=>{s(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===n||n===void 0?{...e,open:!1}:e)}}case`REMOVE_TOAST`:return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)};default:return{...e}}},l=[],u={toasts:[]};function d(e){u=c(u,e),l.forEach(e=>{e(u)})}function f({...e}){let t=a(),n=e=>d({type:`UPDATE_TOAST`,toast:{...e,id:t}}),r=()=>d({type:`DISMISS_TOAST`,toastId:t});return d({type:`ADD_TOAST`,toast:{...e,id:t,open:!0,onOpenChange:e=>{e||r()}}}),{id:t,dismiss:r,update:n}}function p(){let[e,n]=t.default.useState(u);return(0,t.useEffect)(()=>(l.push(n),()=>{let e=l.indexOf(n);e>-1&&l.splice(e,1)}),[e]),{...e,toast:f,dismiss:e=>d({type:`DISMISS_TOAST`,toastId:e})}}exports.reducer=c,exports.toast=f,exports.useToast=p; //# sourceMappingURL=ToasterHooks.cjs.map