"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5307],{95307:function(e,t,n){n.r(t),n.d(t,{Provider:function(){return i},useAtom:function(){return m},useAtomValue:function(){return h},useSetAtom:function(){return v},useStore:function(){return u}});var r=n(95028),l=n(37520);let o=(0,r.createContext)(void 0),u=e=>{let t=(0,r.useContext)(o);return(null==e?void 0:e.store)||t||(0,l.K7)()},i=e=>{let{children:t,store:n}=e,u=(0,r.useRef)();return n||u.current||(u.current=(0,l.MT)()),(0,r.createElement)(o.Provider,{value:n||u.current},t)},a=e=>"function"==typeof(null==e?void 0:e.then),s=e=>{e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t})},f=r.use||(e=>{if("pending"===e.status)throw e;if("fulfilled"===e.status)return e.value;if("rejected"===e.status)throw e.reason;throw s(e),e}),d=new WeakMap,c=e=>{let t=d.get(e);return t||(t=new Promise((n,r)=>{let l=e,o=e=>t=>{l===e&&n(t)},u=e=>t=>{l===e&&r(t)},i=e=>{"onCancel"in e&&"function"==typeof e.onCancel&&e.onCancel(r=>{if(r===e)throw Error("[Bug] p is not updated even after cancelation");a(r)?(d.set(r,t),l=r,r.then(o(r),u(r)),i(r)):n(r)})};e.then(o(e),u(e)),i(e)}),d.set(e,t)),t};function h(e,t){let n=u(t),[[l,o,i],d]=(0,r.useReducer)(t=>{let r=n.get(e);return Object.is(t[0],r)&&t[1]===n&&t[2]===e?t:[r,n,e]},void 0,()=>[n.get(e),n,e]),h=l;(o!==n||i!==e)&&(d(),h=n.get(e));let v=null==t?void 0:t.delay;return((0,r.useEffect)(()=>{let t=n.sub(e,()=>{if("number"==typeof v){let t=n.get(e);a(t)&&s(c(t)),setTimeout(d,v);return}d()});return d(),t},[n,e,v]),(0,r.useDebugValue)(h),a(h))?f(c(h)):h}function v(e,t){let n=u(t);return(0,r.useCallback)(function(){for(var t=arguments.length,r=Array(t),l=0;l<t;l++)r[l]=arguments[l];if(!("write"in e))throw Error("not writable atom");return n.set(e,...r)},[n,e])}function m(e,t){return[h(e,t),v(e,t)]}},37520:function(e,t,n){let r;n.d(t,{K7:function(){return O},MT:function(){return C},cn:function(){return o}});let l=0;function o(e,t){let n=`atom${++l}`,r={toString(){return this.debugLabel?n+":"+this.debugLabel:n}};return"function"==typeof e?r.read=e:(r.init=e,r.read=u,r.write=i),t&&(r.write=t),r}function u(e){return e(this)}function i(e,t,n){return t(this,"function"==typeof n?n(e(this)):n)}let a=(e,t)=>e.unstable_is?e.unstable_is(t):t===e,s=e=>"init"in e,f=e=>!!e.write,d=new WeakMap,c=e=>{var t;return m(e)&&!(null==(t=d.get(e))?void 0:t[1])},h=(e,t)=>{let n=d.get(e);if(n)n[1]=!0,n[0].forEach(e=>e(t));else throw Error("[Bug] cancelable promise not found")},v=e=>{if(d.has(e))return;let t=[new Set,!1];d.set(e,t);let n=()=>{t[1]=!0};e.then(n,n),e.onCancel=e=>{t[0].add(e)}},m=e=>"function"==typeof(null==e?void 0:e.then),w=e=>"v"in e||"e"in e,g=e=>{if("e"in e)throw e.e;if(!("v"in e))throw Error("[Bug] atom state is not initialized");return e.v},p=(e,t,n)=>{n.p.has(e)||(n.p.add(e),t.then(()=>{n.p.delete(e)},()=>{n.p.delete(e)}))},_=(e,t,n,r,l)=>{var o;if(r===t)throw Error("[Bug] atom cannot depend on itself");n.d.set(r,l.n),c(n.v)&&p(t,n.v,l),null==(o=l.m)||o.t.add(t),e&&E(e,r,t)},b=()=>[new Map,new Map,new Set],y=(e,t,n)=>{e[0].has(t)||e[0].set(t,new Set),e[1].set(t,n)},E=(e,t,n)=>{let r=e[0].get(t);r&&r.add(n)},S=(e,t)=>e[0].get(t),k=(e,t)=>{e[2].add(t)},T=e=>{for(;e[1].size||e[2].size;){e[0].clear();let t=new Set(e[1].values());e[1].clear();let n=new Set(e[2]);e[2].clear(),t.forEach(e=>{var t;return null==(t=e.m)?void 0:t.l.forEach(e=>e())}),n.forEach(e=>e())}},A=e=>{let t;t=new Set;let n=(t,n,r)=>{let l="v"in n,o=n.v,u=c(n.v)?n.v:null;if(m(r)){for(let l of(v(r),n.d.keys()))p(t,r,e(l,n));n.v=r,delete n.e}else n.v=r,delete n.e;l&&Object.is(o,n.v)||(++n.n,u&&h(u,r))},r=(t,l,o,u)=>{var c;let h,v;if(w(o)&&(o.m&&!(null==u?void 0:u.has(l))||Array.from(o.d).every(([n,l])=>r(t,n,e(n,o),u).n===l)))return o;o.d.clear();let p=!0;try{let y=l.read(i=>{if(a(l,i)){let t=e(i,o);if(!w(t)){if(s(i))n(i,t,i.init);else throw Error("no atom init")}return g(t)}let f=r(t,i,e(i,o),u);if(p)_(t,l,o,i,f);else{let e=b();_(e,l,o,i,f),d(e,l,o),T(e)}return g(f)},{get signal(){return h||(h=new AbortController),h.signal},get setSelf(){return f(l)||console.warn("setSelf function cannot be used with read-only atom"),!v&&f(l)&&(v=(...e)=>{if(p&&console.warn("setSelf function cannot be called in sync"),!p)return i(l,...e)}),v}});if(n(l,o,y),m(y)){null==(c=y.onCancel)||c.call(y,()=>null==h?void 0:h.abort());let e=()=>{if(o.m){let e=b();d(e,l,o),T(e)}};y.then(e,e)}return o}catch(e){return delete o.v,o.e=e,++o.n,o}finally{p=!1}},l=(t,n,r)=>{var l,o;let u=new Map;for(let t of(null==(l=r.m)?void 0:l.t)||[])u.set(t,e(t,r));for(let t of r.p)u.set(t,e(t,r));return null==(o=S(t,n))||o.forEach(t=>{u.set(t,e(t,r))}),u},o=(e,t,n)=>{let o=[],u=new Set,i=(t,n)=>{if(!u.has(t)){for(let[r,o]of(u.add(t),l(e,t,n)))t!==r&&i(r,o);o.push([t,n,n.n])}};i(t,n);let a=new Set([t]);for(let t=o.length-1;t>=0;--t){let[n,l,i]=o[t],s=!1;for(let e of l.d.keys())if(e!==n&&a.has(e)){s=!0;break}s&&(r(e,n,l,u),d(e,n,l),i!==l.n&&(y(e,n,l),a.add(n))),u.delete(n)}},u=(t,l,i,...f)=>l.write(n=>g(r(t,n,e(n,i))),(r,...f)=>{let c;let h=e(r,i);if(a(l,r)){if(!s(r))throw Error("atom not writable");let e="v"in h,l=h.v;n(r,h,f[0]),d(t,r,h),e&&Object.is(l,h.v)||(y(t,r,h),o(t,r,h))}else c=u(t,r,h,...f);return T(t),c},...f),i=(t,...n)=>{let r=b(),l=u(r,t,e(t),...n);return T(r),l},d=(t,n,r)=>{if(r.m&&!c(r.v)){for(let l of r.d.keys())r.m.d.has(l)||(E(t,l,e(l,r)).t.add(n),r.m.d.add(l));for(let l of r.m.d||[])if(!r.d.has(l)){r.m.d.delete(l);let o=C(t,l,e(l,r));null==o||o.t.delete(n)}}},E=(n,l,o)=>{if(!o.m){for(let t of(r(n,l,o),o.d.keys()))E(n,t,e(t,o)).t.add(l);if(o.m={l:new Set,d:new Set(o.d.keys()),t:new Set},t.add(l),f(l)&&l.onMount){let e=o.m,{onMount:t}=l;k(n,()=>{let r=t((...e)=>u(n,l,o,...e));r&&(e.u=r)})}}return o.m},C=(n,r,l)=>{if(l.m&&!l.m.l.size&&!Array.from(l.m.t).some(t=>{var n;return null==(n=e(t,l).m)?void 0:n.d.has(r)})){let o=l.m.u;for(let u of(o&&k(n,o),delete l.m,t.delete(r),l.d.keys())){let t=C(n,u,e(u,l));null==t||t.t.delete(r)}return}return l.m},O={get:t=>g(r(void 0,t,e(t))),set:i,sub:(t,n)=>{let r=b(),l=e(t),o=E(r,t,l);T(r);let u=o.l;return u.add(n),()=>{u.delete(n);let e=b();C(e,t,l),T(e)}},unstable_derive:t=>A(...t(e))};return Object.assign(O,{dev4_get_internal_weak_map:()=>({get:t=>{let n=e(t);if(0!==n.n)return n}}),dev4_get_mounted_atoms:()=>t,dev4_restore_atoms:t=>{let r=b();for(let[l,u]of t)if(s(l)){let t=e(l),i="v"in t,a=t.v;n(l,t,u),d(r,l,t),i&&Object.is(a,t.v)||(y(r,l,t),o(r,l,t))}T(r)}}),O},C=()=>{let e=new WeakMap;return A(t=>{let n=e.get(t);return n||(n={d:new Map,p:new Set,n:0},e.set(t,n)),n})},O=()=>(r||(r=C(),globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=r),globalThis.__JOTAI_DEFAULT_STORE__!==r&&console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044")),r)}}]);