react-strawberry-toast 1.2.1 → 1.2.2

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.
@@ -16,8 +16,8 @@ interface ToastBaseState {
16
16
  updated: number | null;
17
17
  }
18
18
  interface Options extends BaseOptions {
19
- position?: Position;
20
- containerId?: string;
19
+ position?: Position | null;
20
+ containerId?: string | null;
21
21
  pauseOnHover?: boolean;
22
22
  toastType?: ToastType;
23
23
  }
@@ -16,8 +16,8 @@ interface ToastBaseState {
16
16
  updated: number | null;
17
17
  }
18
18
  interface Options extends BaseOptions {
19
- position?: Position;
20
- containerId?: string;
19
+ position?: Position | null;
20
+ containerId?: string | null;
21
21
  pauseOnHover?: boolean;
22
22
  toastType?: ToastType;
23
23
  }
package/dist/index.d.mts CHANGED
@@ -16,8 +16,8 @@ interface ToastBaseState {
16
16
  updated: number | null;
17
17
  }
18
18
  interface Options extends BaseOptions {
19
- position?: Position;
20
- containerId?: string;
19
+ position?: Position | null;
20
+ containerId?: string | null;
21
21
  pauseOnHover?: boolean;
22
22
  toastType?: ToastType;
23
23
  }
package/dist/index.d.ts CHANGED
@@ -16,8 +16,8 @@ interface ToastBaseState {
16
16
  updated: number | null;
17
17
  }
18
18
  interface Options extends BaseOptions {
19
- position?: Position;
20
- containerId?: string;
19
+ position?: Position | null;
20
+ containerId?: string | null;
21
21
  pauseOnHover?: boolean;
22
22
  toastType?: ToastType;
23
23
  }
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- "use strict";var G=Object.create;var P=Object.defineProperty;var q=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames;var K=Object.getPrototypeOf,Q=Object.prototype.hasOwnProperty;var Z=(t,e)=>{for(var r in e)P(t,r,{get:e[r],enumerable:!0})},V=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let p of J(e))!Q.call(t,p)&&p!==r&&P(t,p,{get:()=>e[p],enumerable:!(a=q(e,p))||a.enumerable});return t};var H=(t,e,r)=>(r=t!=null?G(K(t)):{},V(e||!t||!t.__esModule?P(r,"default",{value:t,enumerable:!0}):r,t)),R=t=>V(P({},"__esModule",{value:!0}),t);var nt={};Z(nt,{ToastContainer:()=>at,toast:()=>s,toastStore:()=>f,useToasts:()=>W});module.exports=R(nt);var Y=()=>{let t=0;return()=>String(t++)};var k=class{state=[];listeners=new Set;activatedToasts=new Set;toastTimers=new Map;constructor(){}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setState(e){this.state=typeof e=="function"?e(this.state):e,this.listeners.forEach(r=>r())}getSnapShot(){return this.state}};var x="react-strawberry-toast";var X=t=>{let e=o=>{let i=t.toastTimers.get(o);clearTimeout(i),t.toastTimers.delete(o)},r=o=>{t.activatedToasts.add(o)},a=o=>t.activatedToasts.has(o),p=(o,i=200)=>{a(o)&&(t.activatedToasts.delete(o),setTimeout(()=>{t.state=t.state.filter(u=>u.toastId!==o),t.setState([...t.state])},i),e(o))},l=()=>{t.setState([])},y=(o,i,u)=>{t.state=t.state.map(v=>v.toastId===o?{...v,...u,updated:new Date().getTime(),data:i}:v),t.setState([...t.state])},n=o=>{let i=new Date().getTime();t.state=t.state.map(u=>u.toastId===o?{...u,pausedAt:i}:u),e(o),t.setState([...t.state])},d=(o,i)=>{let u=setTimeout(()=>{var _;t.state=t.state.map(S=>S.toastId===o?{...S,isVisible:!1}:S),t.setState([...t.state]);let v=(_=t.state.find(S=>S.toastId===o))==null?void 0:_.removeTimeOut;p(o,v)},i>2147483647?2147483647:i);t.toastTimers.set(o,u)};return{setActive:r,isActive:a,disappear:d,resume:o=>{if(t.toastTimers.has(o))return;let i=t.state.find(v=>v.toastId===o);if(!i)return;let u=i.createdAt+(i.timeOut||3e3)-(i.pausedAt||0);d(o,u)},pause:n,replace:y,remove:p,allClear:l}};var f=new k,tt=Y(),I=(t="default")=>(e,r={})=>{let{timeOut:a=3e3,removeTimeOut:p=200,pauseOnHover:l=!0,toastId:y}=r,n=y||tt();if(s.isActive(n))throw new Error("A duplicate custom ID is not available.");let d=new Date().getTime(),T={updated:null,pausedAt:null,containerId:r.containerId||"",position:r.position||"top-center",timeOut:a>2147483647?2147483647:a,toastId:n,data:e,createdAt:d,toastType:t,pauseOnHover:l,removeTimeOut:p,isVisible:!0};return f.state.push(T),f.setState([...f.state]),n},s=(t,e={})=>I()(t,e),g=X(f);s.setActive=g.setActive;s.isActive=g.isActive;s.disappear=g.disappear;s.resume=g.resume;s.pause=g.pause;s.replace=g.replace;s.remove=g.remove;s.allClear=g.allClear;s.success=I("success");s.error=I("error");s.warn=I("warn");s.loading=I("loading");s.custom=I("custom");s.promise=(t,e,r={})=>{let{loading:a,success:p,error:l}=e,y=s.loading(a,{...r,timeOut:2147483647});t.then(n=>{s.replace(y,typeof p=="function"?p(n):p,{...r,timeOut:r.timeOut||3e3,toastType:"success"})}).catch(n=>{s.replace(y,typeof l=="function"?l(n):l,{...r,timeOut:r.timeOut||3e3,toastType:"error"})})};var h=H(require("react"));var c=H(require("react"));var $=require("react");function C({condition:t,children:e}){let r=$.Children.toArray(e);if(r.length>2)throw new Error("The number of children exceeds two.");return r.find(a=>t?a.key===".0":a.key===".1")}function M({children:t}){return t}function N({children:t}){return t}var B=({isVisible:t,position:e})=>t?/top/i.test(e)?`${x}__fade-in`:`${x}__fade-in-reverse`:/bottom/i.test(e)?`${x}__fade-out-reverse`:`${x}__fade-out`;var b=H(require("react"));function et(){return b.default.createElement("svg",{stroke:"none",fill:"none",strokeWidth:"2",viewBox:"0 0 24 24",strokeLinecap:"round",strokeLinejoin:"round",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},b.default.createElement("path",{stroke:"none",d:"M0 0h24v24H0z"}),b.default.createElement("path",{d:"M17 3.34a10 10 0 1 1 -14.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 14.995 -8.336zm-1.293 5.953a1 1 0 0 0 -1.32 -.083l-.094 .083l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.403 1.403l.083 .094l2 2l.094 .083a1 1 0 0 0 1.226 0l.094 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z",strokeWidth:"0",fill:"#1ab173"}))}function ot(){return b.default.createElement("svg",{stroke:"none",fill:"#eb2639",strokeWidth:"2",viewBox:"0 0 24 24",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},b.default.createElement("path",{d:"M11.953 2C6.465 2 2 6.486 2 12s4.486 10 10 10 10-4.486 10-10S17.493 2 11.953 2zM13 17h-2v-2h2v2zm0-4h-2V7h2v6z"}))}function st(){return b.default.createElement("svg",{stroke:"none",fill:"#fcba03",strokeWidth:"0",viewBox:"0 0 1024 1024",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},b.default.createElement("path",{d:"M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zM480 416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416zm32 352a48.01 48.01 0 0 1 0-96 48.01 48.01 0 0 1 0 96z"}))}var A={success:et,error:ot,loading:()=>b.default.createElement("div",{className:`${x}__loading`}),warn:st};function L({toastProps:t,pauseOnActivate:e,...r}){let{toastId:a,isVisible:p,timeOut:l,containerId:y,updated:n,toastType:d,position:T,data:o,pauseOnHover:i}=t,u=B({isVisible:p,position:T}),v=typeof o=="function"?o({toastId:a,close:()=>s.disappear(a,0),immediatelyClose:()=>{s.disappear(a,0),s.remove(a,0)},icons:{success:c.default.createElement(A.success,null),error:c.default.createElement(A.error,null),warn:c.default.createElement(A.warn,null),loading:c.default.createElement(A.loading,null)},isVisible:p}):o,_=()=>{i&&s.pause(a)},S=()=>{i&&s.resume(a)};(0,c.useEffect)(()=>{if(!e)return;let O=()=>{s.resume(a)},U=()=>{s.pause(a)};return window.addEventListener("focus",O),window.addEventListener("blur",U),()=>{window.removeEventListener("focus",O),window.removeEventListener("blur",U)}},[]),(0,c.useEffect)(()=>{s.isActive(a)||(s.setActive(a),s.disappear(a,l))},[a]),(0,c.useEffect)(()=>{if(n!==null){let O=l>=2147483647?3e3:l;s.disappear(a,O)}},[n]);let z=d==="custom"||d==="default"?null:A[d];return c.default.createElement("div",{...r},c.default.createElement(C,{condition:d!=="custom"},c.default.createElement(M,null,c.default.createElement("div",{role:"alert",className:d==="custom"?"":u,"data-testid":`container-${y}`,onMouseEnter:_,onMouseLeave:S,style:{boxSizing:"border-box",backgroundColor:"white",padding:"12px 14px 12px 12px",display:"flex",alignItems:"center",gap:5,borderRadius:8,boxShadow:"2px 4px 10px rgba(0, 0, 0, 0.1)"}},z&&c.default.createElement("span",{style:{minWidth:20,maxWidth:20}},c.default.createElement(z,null)),v)),c.default.createElement(N,null,v)))}var j=require("react");var W=()=>(0,j.useSyncExternalStore)(f.subscribe.bind(f),f.getSnapShot.bind(f),f.getSnapShot.bind(f));var F=({position:t,reverse:e=!1})=>/top/i.test(t)?e?"column-reverse":"column":/bottom/i.test(t)?e?"column":"column-reverse":"column";var m=16,rt={"top-left":{top:m,left:m},"top-center":{top:m,left:"50%",transform:"translateX(-50%)"},"top-right":{top:m,right:m},"bottom-left":{bottom:m,left:m},"bottom-center":{bottom:m,left:"50%",transform:"translateX(-50%)"},"bottom-right":{bottom:m,right:m}};function at({position:t="top-center",containerId:e="",gap:r=9,reverse:a=!1,pauseOnActivate:p=!0}){let l=W(),y=l.filter(n=>n.containerId==="").reduce((n,d)=>{let T=d.position||t;return d.position=T,n[T]=n[T]||[],n[T].push(d),n},{});return h.default.createElement(C,{condition:!!e},h.default.createElement(M,null,h.default.createElement("div",{style:{position:"absolute",zIndex:9999,pointerEvents:"none"}},h.default.createElement("div",{style:{pointerEvents:"auto",display:"flex",flexDirection:a?"column-reverse":"column",gap:r}},l.filter(n=>n.containerId===e).map(n=>h.default.createElement(L,{key:n.toastId,pauseOnActivate:p,toastProps:n,style:{display:"flex"}}))))),h.default.createElement(N,null,h.default.createElement("div",{style:{position:"fixed",zIndex:9999,top:m,left:m,right:m,bottom:m,pointerEvents:"none"}},Object.entries(y).map(([n,d])=>{let T=rt[n],o=F({position:n,reverse:a});return h.default.createElement("div",{key:n,"data-testid":n,style:{pointerEvents:"auto",position:"fixed",display:"flex",flexDirection:o,gap:r,...T}},d.map(i=>h.default.createElement(L,{key:i.toastId,toastProps:i,pauseOnActivate:p,style:{display:"flex",justifyContent:"center"}})))}))))}
2
+ "use strict";var G=Object.create;var P=Object.defineProperty;var q=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames;var K=Object.getPrototypeOf,Q=Object.prototype.hasOwnProperty;var Z=(t,e)=>{for(var r in e)P(t,r,{get:e[r],enumerable:!0})},V=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let d of J(e))!Q.call(t,d)&&d!==r&&P(t,d,{get:()=>e[d],enumerable:!(a=q(e,d))||a.enumerable});return t};var H=(t,e,r)=>(r=t!=null?G(K(t)):{},V(e||!t||!t.__esModule?P(r,"default",{value:t,enumerable:!0}):r,t)),R=t=>V(P({},"__esModule",{value:!0}),t);var nt={};Z(nt,{ToastContainer:()=>at,toast:()=>s,toastStore:()=>f,useToasts:()=>W});module.exports=R(nt);var Y=()=>{let t=0;return()=>String(t++)};var k=class{state=[];listeners=new Set;activatedToasts=new Set;toastTimers=new Map;constructor(){}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setState(e){this.state=typeof e=="function"?e(this.state):e,this.listeners.forEach(r=>r())}getSnapShot(){return this.state}};var x="react-strawberry-toast";var X=t=>{let e=o=>{let i=t.toastTimers.get(o);clearTimeout(i),t.toastTimers.delete(o)},r=o=>{t.activatedToasts.add(o)},a=o=>t.activatedToasts.has(o),d=(o,i=200)=>{a(o)&&(t.activatedToasts.delete(o),setTimeout(()=>{t.state=t.state.filter(u=>u.toastId!==o),t.setState([...t.state])},i),e(o))},c=()=>{t.setState([])},y=(o,i,u)=>{t.state=t.state.map(v=>v.toastId===o?{...v,...u,updated:new Date().getTime(),data:i}:v),t.setState([...t.state])},n=o=>{let i=new Date().getTime();t.state=t.state.map(u=>u.toastId===o?{...u,pausedAt:i}:u),e(o),t.setState([...t.state])},p=(o,i)=>{let u=setTimeout(()=>{var _;t.state=t.state.map(S=>S.toastId===o?{...S,isVisible:!1}:S),t.setState([...t.state]);let v=(_=t.state.find(S=>S.toastId===o))==null?void 0:_.removeTimeOut;d(o,v)},i>2147483647?2147483647:i);t.toastTimers.set(o,u)};return{setActive:r,isActive:a,disappear:p,resume:o=>{if(t.toastTimers.has(o))return;let i=t.state.find(v=>v.toastId===o);if(!i)return;let u=i.createdAt+(i.timeOut||3e3)-(i.pausedAt||0);p(o,u)},pause:n,replace:y,remove:d,allClear:c}};var f=new k,tt=Y(),I=(t="default")=>(e,r={})=>{let{timeOut:a=3e3,removeTimeOut:d=200,pauseOnHover:c=!0,toastId:y}=r,n=y||tt();if(s.isActive(n))throw new Error("A duplicate custom ID is not available.");let p=new Date().getTime(),T={updated:null,pausedAt:null,containerId:r.containerId||null,position:r.position||null,timeOut:a>2147483647?2147483647:a,toastId:n,data:e,createdAt:p,toastType:t,pauseOnHover:c,removeTimeOut:d,isVisible:!0};return f.state.push(T),f.setState([...f.state]),n},s=(t,e={})=>I()(t,e),g=X(f);s.setActive=g.setActive;s.isActive=g.isActive;s.disappear=g.disappear;s.resume=g.resume;s.pause=g.pause;s.replace=g.replace;s.remove=g.remove;s.allClear=g.allClear;s.success=I("success");s.error=I("error");s.warn=I("warn");s.loading=I("loading");s.custom=I("custom");s.promise=(t,e,r={})=>{let{loading:a,success:d,error:c}=e,y=s.loading(a,{...r,timeOut:2147483647});t.then(n=>{s.replace(y,typeof d=="function"?d(n):d,{...r,timeOut:r.timeOut||3e3,toastType:"success"})}).catch(n=>{s.replace(y,typeof c=="function"?c(n):c,{...r,timeOut:r.timeOut||3e3,toastType:"error"})})};var h=H(require("react"));var l=H(require("react"));var $=require("react");function C({condition:t,children:e}){let r=$.Children.toArray(e);if(r.length>2)throw new Error("The number of children exceeds two.");return r.find(a=>t?a.key===".0":a.key===".1")}function M({children:t}){return t}function N({children:t}){return t}var B=({isVisible:t,position:e})=>t?/top/i.test(e)?`${x}__fade-in`:`${x}__fade-in-reverse`:/bottom/i.test(e)?`${x}__fade-out-reverse`:`${x}__fade-out`;var b=H(require("react"));function et(){return b.default.createElement("svg",{stroke:"none",fill:"none",strokeWidth:"2",viewBox:"0 0 24 24",strokeLinecap:"round",strokeLinejoin:"round",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},b.default.createElement("path",{stroke:"none",d:"M0 0h24v24H0z"}),b.default.createElement("path",{d:"M17 3.34a10 10 0 1 1 -14.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 14.995 -8.336zm-1.293 5.953a1 1 0 0 0 -1.32 -.083l-.094 .083l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.403 1.403l.083 .094l2 2l.094 .083a1 1 0 0 0 1.226 0l.094 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z",strokeWidth:"0",fill:"#1ab173"}))}function ot(){return b.default.createElement("svg",{stroke:"none",fill:"#eb2639",strokeWidth:"2",viewBox:"0 0 24 24",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},b.default.createElement("path",{d:"M11.953 2C6.465 2 2 6.486 2 12s4.486 10 10 10 10-4.486 10-10S17.493 2 11.953 2zM13 17h-2v-2h2v2zm0-4h-2V7h2v6z"}))}function st(){return b.default.createElement("svg",{stroke:"none",fill:"#fcba03",strokeWidth:"0",viewBox:"0 0 1024 1024",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},b.default.createElement("path",{d:"M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zM480 416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416zm32 352a48.01 48.01 0 0 1 0-96 48.01 48.01 0 0 1 0 96z"}))}var A={success:et,error:ot,loading:()=>b.default.createElement("div",{className:`${x}__loading`}),warn:st};function L({toastProps:t,pauseOnActivate:e,...r}){let{toastId:a,isVisible:d,timeOut:c,containerId:y,updated:n,toastType:p,position:T,data:o,pauseOnHover:i}=t,u=B({isVisible:d,position:T}),v=typeof o=="function"?o({toastId:a,close:()=>s.disappear(a,0),immediatelyClose:()=>{s.disappear(a,0),s.remove(a,0)},icons:{success:l.default.createElement(A.success,null),error:l.default.createElement(A.error,null),warn:l.default.createElement(A.warn,null),loading:l.default.createElement(A.loading,null)},isVisible:d}):o,_=()=>{i&&s.pause(a)},S=()=>{i&&s.resume(a)};(0,l.useEffect)(()=>{if(!e)return;let O=()=>{s.resume(a)},U=()=>{s.pause(a)};return window.addEventListener("focus",O),window.addEventListener("blur",U),()=>{window.removeEventListener("focus",O),window.removeEventListener("blur",U)}},[]),(0,l.useEffect)(()=>{s.isActive(a)||(s.setActive(a),s.disappear(a,c))},[a]),(0,l.useEffect)(()=>{if(n!==null){let O=c>=2147483647?3e3:c;s.disappear(a,O)}},[n]);let z=p==="custom"||p==="default"?null:A[p];return l.default.createElement("div",{...r},l.default.createElement(C,{condition:p!=="custom"},l.default.createElement(M,null,l.default.createElement("div",{role:"alert",className:p==="custom"?"":u,"data-testid":`container-${y}`,onMouseEnter:_,onMouseLeave:S,style:{boxSizing:"border-box",backgroundColor:"white",padding:"12px 14px 12px 12px",display:"flex",alignItems:"center",gap:5,borderRadius:8,boxShadow:"2px 4px 10px rgba(0, 0, 0, 0.1)"}},z&&l.default.createElement("span",{style:{minWidth:20,maxWidth:20}},l.default.createElement(z,null)),v)),l.default.createElement(N,null,v)))}var j=require("react");var W=()=>(0,j.useSyncExternalStore)(f.subscribe.bind(f),f.getSnapShot.bind(f),f.getSnapShot.bind(f));var F=({position:t,reverse:e=!1})=>/top/i.test(t)?e?"column-reverse":"column":/bottom/i.test(t)?e?"column":"column-reverse":"column";var m=16,rt={"top-left":{top:m,left:m},"top-center":{top:m,left:"50%",transform:"translateX(-50%)"},"top-right":{top:m,right:m},"bottom-left":{bottom:m,left:m},"bottom-center":{bottom:m,left:"50%",transform:"translateX(-50%)"},"bottom-right":{bottom:m,right:m}};function at({position:t="top-center",containerId:e="",gap:r=9,reverse:a=!1,pauseOnActivate:d=!0}){let c=W(),y=c.filter(n=>n.containerId===null).reduce((n,p)=>{let T=p.position||t;return p.position=T,n[T]=n[T]||[],n[T].push(p),n},{});return h.default.createElement(C,{condition:!!e},h.default.createElement(M,null,h.default.createElement("div",{style:{position:"absolute",zIndex:9999,pointerEvents:"none"}},h.default.createElement("div",{style:{pointerEvents:"auto",display:"flex",flexDirection:a?"column-reverse":"column",gap:r}},c.filter(n=>n.containerId===e).map(n=>h.default.createElement(L,{key:n.toastId,pauseOnActivate:d,toastProps:n,style:{display:"flex"}}))))),h.default.createElement(N,null,h.default.createElement("div",{style:{position:"fixed",zIndex:9999,top:m,left:m,right:m,bottom:m,pointerEvents:"none"}},Object.entries(y).map(([n,p])=>{let T=rt[n],o=F({position:n,reverse:a});return h.default.createElement("div",{key:n,"data-testid":n,style:{pointerEvents:"auto",position:"fixed",display:"flex",flexDirection:o,gap:r,...T}},p.map(i=>h.default.createElement(L,{key:i.toastId,toastProps:i,pauseOnActivate:d,style:{display:"flex",justifyContent:"center"}})))}))))}
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- var z=()=>{let t=0;return()=>String(t++)};var P=class{state=[];listeners=new Set;activatedToasts=new Set;toastTimers=new Map;constructor(){}subscribe(r){return this.listeners.add(r),()=>{this.listeners.delete(r)}}setState(r){this.state=typeof r=="function"?r(this.state):r,this.listeners.forEach(n=>n())}getSnapShot(){return this.state}};var x="react-strawberry-toast";var U=t=>{let r=e=>{let i=t.toastTimers.get(e);clearTimeout(i),t.toastTimers.delete(e)},n=e=>{t.activatedToasts.add(e)},a=e=>t.activatedToasts.has(e),d=(e,i=200)=>{a(e)&&(t.activatedToasts.delete(e),setTimeout(()=>{t.state=t.state.filter(m=>m.toastId!==e),t.setState([...t.state])},i),r(e))},c=()=>{t.setState([])},y=(e,i,m)=>{t.state=t.state.map(v=>v.toastId===e?{...v,...m,updated:new Date().getTime(),data:i}:v),t.setState([...t.state])},s=e=>{let i=new Date().getTime();t.state=t.state.map(m=>m.toastId===e?{...m,pausedAt:i}:m),r(e),t.setState([...t.state])},p=(e,i)=>{let m=setTimeout(()=>{var _;t.state=t.state.map(S=>S.toastId===e?{...S,isVisible:!1}:S),t.setState([...t.state]);let v=(_=t.state.find(S=>S.toastId===e))==null?void 0:_.removeTimeOut;d(e,v)},i>2147483647?2147483647:i);t.toastTimers.set(e,m)};return{setActive:n,isActive:a,disappear:p,resume:e=>{if(t.toastTimers.has(e))return;let i=t.state.find(v=>v.toastId===e);if(!i)return;let m=i.createdAt+(i.timeOut||3e3)-(i.pausedAt||0);p(e,m)},pause:s,replace:y,remove:d,allClear:c}};var f=new P,$=z(),I=(t="default")=>(r,n={})=>{let{timeOut:a=3e3,removeTimeOut:d=200,pauseOnHover:c=!0,toastId:y}=n,s=y||$();if(o.isActive(s))throw new Error("A duplicate custom ID is not available.");let p=new Date().getTime(),u={updated:null,pausedAt:null,containerId:n.containerId||"",position:n.position||"top-center",timeOut:a>2147483647?2147483647:a,toastId:s,data:r,createdAt:p,toastType:t,pauseOnHover:c,removeTimeOut:d,isVisible:!0};return f.state.push(u),f.setState([...f.state]),s},o=(t,r={})=>I()(t,r),w=U(f);o.setActive=w.setActive;o.isActive=w.isActive;o.disappear=w.disappear;o.resume=w.resume;o.pause=w.pause;o.replace=w.replace;o.remove=w.remove;o.allClear=w.allClear;o.success=I("success");o.error=I("error");o.warn=I("warn");o.loading=I("loading");o.custom=I("custom");o.promise=(t,r,n={})=>{let{loading:a,success:d,error:c}=r,y=o.loading(a,{...n,timeOut:2147483647});t.then(s=>{o.replace(y,typeof d=="function"?d(s):d,{...n,timeOut:n.timeOut||3e3,toastType:"success"})}).catch(s=>{o.replace(y,typeof c=="function"?c(s):c,{...n,timeOut:n.timeOut||3e3,toastType:"error"})})};import h from"react";import T,{useEffect as H}from"react";import{Children as B}from"react";function k({condition:t,children:r}){let n=B.toArray(r);if(n.length>2)throw new Error("The number of children exceeds two.");return n.find(a=>t?a.key===".0":a.key===".1")}function C({children:t}){return t}function M({children:t}){return t}var V=({isVisible:t,position:r})=>t?/top/i.test(r)?`${x}__fade-in`:`${x}__fade-in-reverse`:/bottom/i.test(r)?`${x}__fade-out-reverse`:`${x}__fade-out`;import g from"react";function j(){return g.createElement("svg",{stroke:"none",fill:"none",strokeWidth:"2",viewBox:"0 0 24 24",strokeLinecap:"round",strokeLinejoin:"round",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},g.createElement("path",{stroke:"none",d:"M0 0h24v24H0z"}),g.createElement("path",{d:"M17 3.34a10 10 0 1 1 -14.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 14.995 -8.336zm-1.293 5.953a1 1 0 0 0 -1.32 -.083l-.094 .083l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.403 1.403l.083 .094l2 2l.094 .083a1 1 0 0 0 1.226 0l.094 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z",strokeWidth:"0",fill:"#1ab173"}))}function F(){return g.createElement("svg",{stroke:"none",fill:"#eb2639",strokeWidth:"2",viewBox:"0 0 24 24",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},g.createElement("path",{d:"M11.953 2C6.465 2 2 6.486 2 12s4.486 10 10 10 10-4.486 10-10S17.493 2 11.953 2zM13 17h-2v-2h2v2zm0-4h-2V7h2v6z"}))}function G(){return g.createElement("svg",{stroke:"none",fill:"#fcba03",strokeWidth:"0",viewBox:"0 0 1024 1024",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},g.createElement("path",{d:"M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zM480 416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416zm32 352a48.01 48.01 0 0 1 0-96 48.01 48.01 0 0 1 0 96z"}))}var A={success:j,error:F,loading:()=>g.createElement("div",{className:`${x}__loading`}),warn:G};function D({toastProps:t,pauseOnActivate:r,...n}){let{toastId:a,isVisible:d,timeOut:c,containerId:y,updated:s,toastType:p,position:u,data:e,pauseOnHover:i}=t,m=V({isVisible:d,position:u}),v=typeof e=="function"?e({toastId:a,close:()=>o.disappear(a,0),immediatelyClose:()=>{o.disappear(a,0),o.remove(a,0)},icons:{success:T.createElement(A.success,null),error:T.createElement(A.error,null),warn:T.createElement(A.warn,null),loading:T.createElement(A.loading,null)},isVisible:d}):e,_=()=>{i&&o.pause(a)},S=()=>{i&&o.resume(a)};H(()=>{if(!r)return;let O=()=>{o.resume(a)},W=()=>{o.pause(a)};return window.addEventListener("focus",O),window.addEventListener("blur",W),()=>{window.removeEventListener("focus",O),window.removeEventListener("blur",W)}},[]),H(()=>{o.isActive(a)||(o.setActive(a),o.disappear(a,c))},[a]),H(()=>{if(s!==null){let O=c>=2147483647?3e3:c;o.disappear(a,O)}},[s]);let L=p==="custom"||p==="default"?null:A[p];return T.createElement("div",{...n},T.createElement(k,{condition:p!=="custom"},T.createElement(C,null,T.createElement("div",{role:"alert",className:p==="custom"?"":m,"data-testid":`container-${y}`,onMouseEnter:_,onMouseLeave:S,style:{boxSizing:"border-box",backgroundColor:"white",padding:"12px 14px 12px 12px",display:"flex",alignItems:"center",gap:5,borderRadius:8,boxShadow:"2px 4px 10px rgba(0, 0, 0, 0.1)"}},L&&T.createElement("span",{style:{minWidth:20,maxWidth:20}},T.createElement(L,null)),v)),T.createElement(M,null,v)))}import{useSyncExternalStore as q}from"react";var Y=()=>q(f.subscribe.bind(f),f.getSnapShot.bind(f),f.getSnapShot.bind(f));var X=({position:t,reverse:r=!1})=>/top/i.test(t)?r?"column-reverse":"column":/bottom/i.test(t)?r?"column":"column-reverse":"column";var l=16,J={"top-left":{top:l,left:l},"top-center":{top:l,left:"50%",transform:"translateX(-50%)"},"top-right":{top:l,right:l},"bottom-left":{bottom:l,left:l},"bottom-center":{bottom:l,left:"50%",transform:"translateX(-50%)"},"bottom-right":{bottom:l,right:l}};function Mt({position:t="top-center",containerId:r="",gap:n=9,reverse:a=!1,pauseOnActivate:d=!0}){let c=Y(),y=c.filter(s=>s.containerId==="").reduce((s,p)=>{let u=p.position||t;return p.position=u,s[u]=s[u]||[],s[u].push(p),s},{});return h.createElement(k,{condition:!!r},h.createElement(C,null,h.createElement("div",{style:{position:"absolute",zIndex:9999,pointerEvents:"none"}},h.createElement("div",{style:{pointerEvents:"auto",display:"flex",flexDirection:a?"column-reverse":"column",gap:n}},c.filter(s=>s.containerId===r).map(s=>h.createElement(D,{key:s.toastId,pauseOnActivate:d,toastProps:s,style:{display:"flex"}}))))),h.createElement(M,null,h.createElement("div",{style:{position:"fixed",zIndex:9999,top:l,left:l,right:l,bottom:l,pointerEvents:"none"}},Object.entries(y).map(([s,p])=>{let u=J[s],e=X({position:s,reverse:a});return h.createElement("div",{key:s,"data-testid":s,style:{pointerEvents:"auto",position:"fixed",display:"flex",flexDirection:e,gap:n,...u}},p.map(i=>h.createElement(D,{key:i.toastId,toastProps:i,pauseOnActivate:d,style:{display:"flex",justifyContent:"center"}})))}))))}export{Mt as ToastContainer,o as toast,f as toastStore,Y as useToasts};
2
+ var z=()=>{let t=0;return()=>String(t++)};var P=class{state=[];listeners=new Set;activatedToasts=new Set;toastTimers=new Map;constructor(){}subscribe(r){return this.listeners.add(r),()=>{this.listeners.delete(r)}}setState(r){this.state=typeof r=="function"?r(this.state):r,this.listeners.forEach(n=>n())}getSnapShot(){return this.state}};var x="react-strawberry-toast";var U=t=>{let r=e=>{let i=t.toastTimers.get(e);clearTimeout(i),t.toastTimers.delete(e)},n=e=>{t.activatedToasts.add(e)},a=e=>t.activatedToasts.has(e),p=(e,i=200)=>{a(e)&&(t.activatedToasts.delete(e),setTimeout(()=>{t.state=t.state.filter(m=>m.toastId!==e),t.setState([...t.state])},i),r(e))},l=()=>{t.setState([])},y=(e,i,m)=>{t.state=t.state.map(v=>v.toastId===e?{...v,...m,updated:new Date().getTime(),data:i}:v),t.setState([...t.state])},s=e=>{let i=new Date().getTime();t.state=t.state.map(m=>m.toastId===e?{...m,pausedAt:i}:m),r(e),t.setState([...t.state])},d=(e,i)=>{let m=setTimeout(()=>{var _;t.state=t.state.map(S=>S.toastId===e?{...S,isVisible:!1}:S),t.setState([...t.state]);let v=(_=t.state.find(S=>S.toastId===e))==null?void 0:_.removeTimeOut;p(e,v)},i>2147483647?2147483647:i);t.toastTimers.set(e,m)};return{setActive:n,isActive:a,disappear:d,resume:e=>{if(t.toastTimers.has(e))return;let i=t.state.find(v=>v.toastId===e);if(!i)return;let m=i.createdAt+(i.timeOut||3e3)-(i.pausedAt||0);d(e,m)},pause:s,replace:y,remove:p,allClear:l}};var f=new P,$=z(),I=(t="default")=>(r,n={})=>{let{timeOut:a=3e3,removeTimeOut:p=200,pauseOnHover:l=!0,toastId:y}=n,s=y||$();if(o.isActive(s))throw new Error("A duplicate custom ID is not available.");let d=new Date().getTime(),u={updated:null,pausedAt:null,containerId:n.containerId||null,position:n.position||null,timeOut:a>2147483647?2147483647:a,toastId:s,data:r,createdAt:d,toastType:t,pauseOnHover:l,removeTimeOut:p,isVisible:!0};return f.state.push(u),f.setState([...f.state]),s},o=(t,r={})=>I()(t,r),w=U(f);o.setActive=w.setActive;o.isActive=w.isActive;o.disappear=w.disappear;o.resume=w.resume;o.pause=w.pause;o.replace=w.replace;o.remove=w.remove;o.allClear=w.allClear;o.success=I("success");o.error=I("error");o.warn=I("warn");o.loading=I("loading");o.custom=I("custom");o.promise=(t,r,n={})=>{let{loading:a,success:p,error:l}=r,y=o.loading(a,{...n,timeOut:2147483647});t.then(s=>{o.replace(y,typeof p=="function"?p(s):p,{...n,timeOut:n.timeOut||3e3,toastType:"success"})}).catch(s=>{o.replace(y,typeof l=="function"?l(s):l,{...n,timeOut:n.timeOut||3e3,toastType:"error"})})};import h from"react";import T,{useEffect as H}from"react";import{Children as B}from"react";function k({condition:t,children:r}){let n=B.toArray(r);if(n.length>2)throw new Error("The number of children exceeds two.");return n.find(a=>t?a.key===".0":a.key===".1")}function C({children:t}){return t}function M({children:t}){return t}var V=({isVisible:t,position:r})=>t?/top/i.test(r)?`${x}__fade-in`:`${x}__fade-in-reverse`:/bottom/i.test(r)?`${x}__fade-out-reverse`:`${x}__fade-out`;import g from"react";function j(){return g.createElement("svg",{stroke:"none",fill:"none",strokeWidth:"2",viewBox:"0 0 24 24",strokeLinecap:"round",strokeLinejoin:"round",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},g.createElement("path",{stroke:"none",d:"M0 0h24v24H0z"}),g.createElement("path",{d:"M17 3.34a10 10 0 1 1 -14.995 8.984l-.005 -.324l.005 -.324a10 10 0 0 1 14.995 -8.336zm-1.293 5.953a1 1 0 0 0 -1.32 -.083l-.094 .083l-3.293 3.292l-1.293 -1.292l-.094 -.083a1 1 0 0 0 -1.403 1.403l.083 .094l2 2l.094 .083a1 1 0 0 0 1.226 0l.094 -.083l4 -4l.083 -.094a1 1 0 0 0 -.083 -1.32z",strokeWidth:"0",fill:"#1ab173"}))}function F(){return g.createElement("svg",{stroke:"none",fill:"#eb2639",strokeWidth:"2",viewBox:"0 0 24 24",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},g.createElement("path",{d:"M11.953 2C6.465 2 2 6.486 2 12s4.486 10 10 10 10-4.486 10-10S17.493 2 11.953 2zM13 17h-2v-2h2v2zm0-4h-2V7h2v6z"}))}function G(){return g.createElement("svg",{stroke:"none",fill:"#fcba03",strokeWidth:"0",viewBox:"0 0 1024 1024",height:"22",width:"22",xmlns:"http://www.w3.org/2000/svg"},g.createElement("path",{d:"M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zM480 416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416zm32 352a48.01 48.01 0 0 1 0-96 48.01 48.01 0 0 1 0 96z"}))}var A={success:j,error:F,loading:()=>g.createElement("div",{className:`${x}__loading`}),warn:G};function D({toastProps:t,pauseOnActivate:r,...n}){let{toastId:a,isVisible:p,timeOut:l,containerId:y,updated:s,toastType:d,position:u,data:e,pauseOnHover:i}=t,m=V({isVisible:p,position:u}),v=typeof e=="function"?e({toastId:a,close:()=>o.disappear(a,0),immediatelyClose:()=>{o.disappear(a,0),o.remove(a,0)},icons:{success:T.createElement(A.success,null),error:T.createElement(A.error,null),warn:T.createElement(A.warn,null),loading:T.createElement(A.loading,null)},isVisible:p}):e,_=()=>{i&&o.pause(a)},S=()=>{i&&o.resume(a)};H(()=>{if(!r)return;let O=()=>{o.resume(a)},W=()=>{o.pause(a)};return window.addEventListener("focus",O),window.addEventListener("blur",W),()=>{window.removeEventListener("focus",O),window.removeEventListener("blur",W)}},[]),H(()=>{o.isActive(a)||(o.setActive(a),o.disappear(a,l))},[a]),H(()=>{if(s!==null){let O=l>=2147483647?3e3:l;o.disappear(a,O)}},[s]);let L=d==="custom"||d==="default"?null:A[d];return T.createElement("div",{...n},T.createElement(k,{condition:d!=="custom"},T.createElement(C,null,T.createElement("div",{role:"alert",className:d==="custom"?"":m,"data-testid":`container-${y}`,onMouseEnter:_,onMouseLeave:S,style:{boxSizing:"border-box",backgroundColor:"white",padding:"12px 14px 12px 12px",display:"flex",alignItems:"center",gap:5,borderRadius:8,boxShadow:"2px 4px 10px rgba(0, 0, 0, 0.1)"}},L&&T.createElement("span",{style:{minWidth:20,maxWidth:20}},T.createElement(L,null)),v)),T.createElement(M,null,v)))}import{useSyncExternalStore as q}from"react";var Y=()=>q(f.subscribe.bind(f),f.getSnapShot.bind(f),f.getSnapShot.bind(f));var X=({position:t,reverse:r=!1})=>/top/i.test(t)?r?"column-reverse":"column":/bottom/i.test(t)?r?"column":"column-reverse":"column";var c=16,J={"top-left":{top:c,left:c},"top-center":{top:c,left:"50%",transform:"translateX(-50%)"},"top-right":{top:c,right:c},"bottom-left":{bottom:c,left:c},"bottom-center":{bottom:c,left:"50%",transform:"translateX(-50%)"},"bottom-right":{bottom:c,right:c}};function Mt({position:t="top-center",containerId:r="",gap:n=9,reverse:a=!1,pauseOnActivate:p=!0}){let l=Y(),y=l.filter(s=>s.containerId===null).reduce((s,d)=>{let u=d.position||t;return d.position=u,s[u]=s[u]||[],s[u].push(d),s},{});return h.createElement(k,{condition:!!r},h.createElement(C,null,h.createElement("div",{style:{position:"absolute",zIndex:9999,pointerEvents:"none"}},h.createElement("div",{style:{pointerEvents:"auto",display:"flex",flexDirection:a?"column-reverse":"column",gap:n}},l.filter(s=>s.containerId===r).map(s=>h.createElement(D,{key:s.toastId,pauseOnActivate:p,toastProps:s,style:{display:"flex"}}))))),h.createElement(M,null,h.createElement("div",{style:{position:"fixed",zIndex:9999,top:c,left:c,right:c,bottom:c,pointerEvents:"none"}},Object.entries(y).map(([s,d])=>{let u=J[s],e=X({position:s,reverse:a});return h.createElement("div",{key:s,"data-testid":s,style:{pointerEvents:"auto",position:"fixed",display:"flex",flexDirection:e,gap:n,...u}},d.map(i=>h.createElement(D,{key:i.toastId,toastProps:i,pauseOnActivate:p,style:{display:"flex",justifyContent:"center"}})))}))))}export{Mt as ToastContainer,o as toast,f as toastStore,Y as useToasts};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-strawberry-toast",
3
3
  "description": "A simple and customizable React toast library",
4
- "version": "1.2.1",
4
+ "version": "1.2.2",
5
5
  "author": "dkpark10",
6
6
  "license": "MIT",
7
7
  "keywords": [
@@ -56,7 +56,8 @@
56
56
  "test:watch": "vitest --watch",
57
57
  "test:ui": "vitest --ui",
58
58
  "test:coverage": "vitest --coverage",
59
- "prepare": "husky install"
59
+ "prepare": "husky install",
60
+ "deploy": "pnpm run build && npm publish --access=public"
60
61
  },
61
62
  "devDependencies": {
62
63
  "@commitlint/cli": "^19.6.1",