{"version":3,"file":"vendor-reatom-BinSa9FP.js","sources":["../../node_modules/.pnpm/@reatom+core@3.9.1/node_modules/@reatom/core/build/index.mjs","../../node_modules/.pnpm/@reatom+core-v2@3.1.4_patch_hash=cvif2474bcnojmuyn3echjb57a/node_modules/@reatom/core-v2/build/index.es.js","../../node_modules/.pnpm/@reatom+react-v2@3.1.2_@reatom+core-v2@3.1.4_patch_hash=cvif2474bcnojmuyn3echjb57a__react@18.3.1/node_modules/@reatom/react-v2/build/index.es.js","../../node_modules/.pnpm/@reatom+utils@3.11.0/node_modules/@reatom/utils/build/index.mjs","../../node_modules/.pnpm/@reatom+effects@3.10.2/node_modules/@reatom/effects/build/index.mjs","../../node_modules/.pnpm/@reatom+hooks@3.6.0/node_modules/@reatom/hooks/build/index.mjs","../../node_modules/.pnpm/@reatom+primitives@3.7.3/node_modules/@reatom/primitives/build/index.mjs","../../node_modules/.pnpm/@reatom+async@3.16.4/node_modules/@reatom/async/build/index.mjs","../../node_modules/.pnpm/@reatom+logger@3.8.4/node_modules/@reatom/logger/build/index.mjs","../../node_modules/.pnpm/@reatom+npm-react@3.10.3_react@18.3.1/node_modules/@reatom/npm-react/build/index.mjs"],"sourcesContent":["const impossibleValue=Symbol(),callSafely=function(fn){try{return fn(...[].slice.call(arguments,1))}catch(err){return setTimeout(()=>{throw err}),err instanceof Error?err:err=new Error(err)}};function throwReatomError(condition,message){if(condition)throw new Error(`Reatom error: ${message}`)}const isAtom=thing=>void 0!==thing?.__reatom,isAction=thing=>!0===thing?.__reatom?.isAction,isConnected=cache=>cache.subs.size+cache.listeners.size>0;function assertFunction(thing){throwReatomError(\"function\"!=typeof thing,`invalid \"${typeof thing}\", function expected`)}const getRootCause=cause=>null===cause.cause?cause:getRootCause(cause.cause),isBrowser=()=>!!globalThis.navigator?.userAgent;let CTX,initiations=0;const createCtx=({callLateEffect:callLateEffect=callSafely,callNearEffect:callNearEffect=callSafely,restrictMultipleContexts:restrictMultipleContexts=isBrowser()}={})=>{restrictMultipleContexts&&1==initiations++&&console.warn(\"Reatom: multiple contexts detected, which is irrelevant in browser, you should use only one context\");let caches=new WeakMap,read=proto=>caches.get(proto),logsListeners=new Set,nearEffects=[],lateEffects=[],inTr=!1,trError=null,trUpdates=[],trRollbacks=[],trLogs=[],trNearEffectsStart=0,trLateEffectsStart=0,effectsProcessing=!1,walkNearEffects=()=>{for(let effect of nearEffects)callNearEffect(effect,ctx);nearEffects=[]},walkLateEffects=()=>{if(!effectsProcessing){effectsProcessing=!0,walkNearEffects();for(let effect of lateEffects)callLateEffect(effect,ctx),nearEffects.length>0&&walkNearEffects();lateEffects=[],effectsProcessing=!1}},addPatch=({state:state,proto:proto,pubs:pubs,subs:subs,listeners:listeners},cause)=>(proto.actual=!1,trLogs.push(proto.patch={state:state,proto:proto,cause:cause,pubs:pubs,subs:subs,listeners:listeners}),proto.patch),enqueueComputers=cache=>{for(let subProto of cache.subs){let subCache=subProto.patch??read(subProto);subProto.patch&&!subProto.actual||0===addPatch(subCache,cache).listeners.size&&enqueueComputers(subCache)}},disconnect=(proto,pubPatch)=>{if(pubPatch.subs.delete(proto)&&(trRollbacks.push(()=>pubPatch.subs.add(proto)),!isConnected(pubPatch))){null!==pubPatch.proto.disconnectHooks&&nearEffects.push(...pubPatch.proto.disconnectHooks);for(let parentParent of pubPatch.pubs)disconnect(pubPatch.proto,parentParent)}},connect=(proto,pubPatch)=>{if(!pubPatch.subs.has(proto)){let wasConnected=isConnected(pubPatch);if(pubPatch.subs.add(proto),trRollbacks.push(()=>pubPatch.subs.delete(proto)),!wasConnected){null!==pubPatch.proto.connectHooks&&nearEffects.push(...pubPatch.proto.connectHooks);for(let parentParentPatch of pubPatch.pubs)connect(pubPatch.proto,parentParentPatch)}}},actualize=(ctx,proto,updater)=>{let{patch:patch,actual:actual}=proto,updating=void 0!==updater;if(!updating&&actual&&(0===patch.pubs.length||isConnected(patch)))return patch;let cache=patch??read(proto),isInt=!cache,cause=updating?ctx.cause:read(__root);if(isInt)cache={state:proto.initState(ctx),proto:proto,cause:cause,pubs:[],subs:new Set,listeners:new Set};else if(null===proto.computer&&!updating)return cache;patch&&!actual||(patch=addPatch(cache,cause));let{state:state}=patch,patchCtx={get:ctx.get,spy:void 0,schedule:ctx.schedule,subscribe:ctx.subscribe,cause:patch};try{proto.computer&&((patchCtx,patch)=>{let{proto:proto,pubs:pubs}=patch,isDepsChanged=!1;if(0===pubs.length||pubs.some(({proto:proto,state:state})=>!Object.is(state,(patch.cause=actualize(patchCtx,proto)).state))){let newPubs=[];if(patchCtx.spy=({__reatom:depProto},cb)=>{let depPatch=actualize(patchCtx,depProto),prevDepPatch=newPubs.push(depPatch)<=pubs.length?pubs[newPubs.length-1]:void 0,isDepChanged=prevDepPatch?.proto!==depPatch.proto;isDepsChanged||=isDepChanged;let state=depProto.isAction&&!isDepChanged?depPatch.state.slice(prevDepPatch.state.length):depPatch.state;if(!cb||!isDepChanged&&Object.is(state,prevDepPatch.state))return state;if(depProto.isAction)for(const call of state)cb(call);else cb(state,isDepChanged?void 0:prevDepPatch?.state)},patch.state=patch.proto.computer(patchCtx,patch.state),patch.pubs=newPubs,(isDepsChanged||pubs.length>newPubs.length)&&isConnected(patch)){for(let{proto:depProto}of pubs)newPubs.every(dep=>dep.proto!==depProto)&&disconnect(proto,depProto.patch??read(depProto));for(let{proto:depProto}of newPubs)pubs.every(dep=>dep.proto!==depProto)&&connect(proto,depProto.patch??read(depProto))}patchCtx.spy=()=>throwReatomError(!0,\"async spy\"),patch=proto=pubs=newPubs=null}})(patchCtx,patch),updating&&(patch.cause=ctx.cause,updater(patchCtx,patch)),proto.actual=!0}catch(error){throw patch.error=error}if(!Object.is(state,patch.state)&&(patch.subs.size>0&&(updating||patch.listeners.size>0)&&enqueueComputers(patch),proto.updateHooks)){let ctx={get:patchCtx.get,spy:void 0,schedule:patchCtx.schedule,subscribe:patchCtx.subscribe,cause:patchCtx.cause};proto.updateHooks.forEach(hook=>trUpdates.push(()=>hook(ctx,patch)))}return patch},ctx={get(atomOrCb){if(throwReatomError(CTX&&getRootCause(CTX.cause)!==read(__root),\"cause collision\"),isAtom(atomOrCb)){let proto=atomOrCb.__reatom;if(inTr)return actualize(this,proto).state;let cache=read(proto);return void 0===cache||null!==proto.computer&&!isConnected(cache)?this.get(()=>actualize(this,proto).state):cache.state}if(throwReatomError(null!==trError,\"tr failed\"),inTr)return atomOrCb(read,actualize);inTr=!0,trNearEffectsStart=nearEffects.length,trLateEffectsStart=lateEffects.length;let start=void 0===CTX;start&&(CTX=this);try{var result=atomOrCb(read,actualize);for(let i=0;i0&&actualize(this,proto),trUpdates.length>0)for(let commit of trUpdates.splice(0))commit(this)}if(trLogs.length)for(let log of logsListeners)log(trLogs);for(let patch of trLogs){let{proto:proto,state:state}=patch;if(proto.isAction&&(patch.state=[]),patch===proto.patch)if(proto.patch=null,proto.actual=!1,caches.set(proto,patch),proto.isAction){if(0===state.length)continue;for(let cb of patch.listeners)nearEffects.push(()=>cb(state))}else for(let cb of patch.listeners)lateEffects.push(()=>cb(read(proto).state))}}catch(e){trError=e=e instanceof Error?e:new Error(String(e));for(let log of logsListeners)log(trLogs,e);for(let cb of trRollbacks)callSafely(cb,e);for(let{proto:proto}of trLogs)proto.patch=null,proto.actual=!1;throw nearEffects.length=trNearEffectsStart,lateEffects.length=trLateEffectsStart,e}finally{inTr=!1,trError=null,trUpdates=[],trRollbacks=[],trLogs=[],trNearEffectsStart=0,trLateEffectsStart=0,start&&(CTX=void 0)}return walkLateEffects(),result},spy:void 0,schedule(cb,step=1){return assertFunction(cb),throwReatomError(!this,\"missed context\"),new Promise((res,rej)=>{-1===step?inTr&&trRollbacks.push(cb):0===step?inTr&&trUpdates.push(()=>cb(this)):((1===step?nearEffects:lateEffects).push(()=>{try{let result=cb(this);return result instanceof Promise?result.then(res,rej):res(result),result}catch(error){throw rej(error),error}}),inTr||walkLateEffects())})},subscribe(atom,cb=atom){if(assertFunction(cb),atom===cb)return logsListeners.add(cb),()=>logsListeners.delete(cb);let{__reatom:proto}=atom,lastState=impossibleValue,listener=state=>Object.is(lastState,state)||cb(lastState=state),cache=read(proto);return void 0!==cache&&isConnected(cache)?cache.listeners.add(listener):this.get(()=>{cache=actualize(this,proto,(patchCtx,patch)=>{}),cache.listeners.add(listener),trRollbacks.push(()=>proto.patch.listeners.delete(listener)),null!==proto.connectHooks&&nearEffects.push(...proto.connectHooks);for(let pubPatch of cache.pubs)connect(proto,pubPatch)}),lastState===impossibleValue&&listener((proto.patch??read(proto)).state),()=>{if(cache.listeners.delete(listener)&&!isConnected(cache)){proto.disconnectHooks&&nearEffects.push(...proto.disconnectHooks);for(let pubCache of cache.pubs)disconnect(proto,pubCache);inTr||(trRollbacks.length=0,walkLateEffects())}}},cause:void 0};return(ctx.cause=ctx.get(()=>actualize(ctx,__root))).cause=null,ctx};let i=0,__count=name=>`${name}#${++i}`;function pipe(){return[].slice.call(arguments).reduce((acc,fn)=>fn(acc),this)}function onChange(cb){const hook=(ctx,patch)=>cb(ctx,patch.state);return(this.__reatom.updateHooks??=new Set).add(hook),()=>this.__reatom.updateHooks.delete(hook)}function onCall(cb){return this.onChange((ctx,state)=>{const{params:params,payload:payload}=state[state.length-1];cb(ctx,payload,params)})}function atom(initState,name=__count(\"_atom\")){let theAtom=(ctx,update)=>ctx.get((read,actualize)=>actualize(ctx,theAtom.__reatom,(patchCtx,patch)=>{patch.state=\"function\"==typeof update?update(patch.state,patchCtx):update}).state),computer=null;return\"function\"==typeof initState&&(theAtom={},computer=initState,initState=void 0),theAtom.__reatom={name:name,isAction:!1,patch:null,initState:()=>initState,computer:computer,connectHooks:null,disconnectHooks:null,updateHooks:null,actual:!1},theAtom.pipe=pipe,theAtom.onChange=onChange,0===experimental_PLUGINS.length?theAtom:theAtom.pipe(...experimental_PLUGINS)}const action=(fn,name)=>{void 0!==fn&&\"string\"!=typeof fn||(name=fn,fn=(ctx,v)=>v),assertFunction(fn);let actionAtom=atom([],name??__count(\"_action\"));return actionAtom.__reatom.isAction=!0,actionAtom.__reatom.unstable_fn=fn,Object.assign(function(){var params=[].slice.call(arguments);let state=actionAtom(params[0],(state,patchCtx)=>(params[0]=patchCtx,[...state,{params:params.slice(1),payload:patchCtx.cause.proto.unstable_fn(...params)}]));return state[state.length-1].payload},actionAtom,{onCall:onCall})},experimental_PLUGINS=[],__root=atom(void 0,\"root\").__reatom,batch=(ctx,cb)=>ctx.get(cb);export{__count,__root,action,atom,batch,callSafely,createCtx,experimental_PLUGINS,isAction,isAtom,throwReatomError};\n//# sourceMappingURL=index.mjs.map\n","import*as v3 from\"@reatom/core\";import{atom,throwReatomError}from\"@reatom/core\";const callSafety=v3.callSafely,noop=()=>{};function pushUnique(list,el){list.includes(el)||list.push(el)}function isString(thing){return\"string\"==typeof thing}function isObject(thing){return\"object\"==typeof thing&&null!==thing}function isFunction(thing){return\"function\"==typeof thing}function isAtom(thing){return isFunction(thing)&&\"types\"in thing}function isActionCreator(thing){return isFunction(thing)&&\"type\"in thing}function isAction(thing){return isObject(thing)&&isString(thing.type)&&\"payload\"in thing}function getState(atom,store=defaultStore){return store.getState(atom)}const getRootCause=cause=>null===cause.cause?cause:getRootCause(cause.cause),spyChange=(ctx,anAtom,handler)=>{let isChanged=!1;return ctx.spy(anAtom,(newState,prevState)=>{isChanged=!0,handler?.(newState,prevState)}),isChanged};atom(null,\"initializations\").__reatom.initState=()=>new WeakMap;let atomsCount=0;function createAtom(dependencies,reducer,options={}){let{v3atom:v3atom,id:id=v3atom?.__reatom.name??\"atom\"+ ++atomsCount,store:store=defaultStore}=isString(options)?{id:options}:options;const trackedTypes=[],types=[],actionCreators={},externalActions={};throwReatomError(!isFunction(reducer)||!isString(id),\"atom arguments\"),Object.entries(dependencies).forEach(([name,dep])=>{if(throwReatomError(!isFunction(dep),`Invalid atom dependencies (type ${typeof dep}) at ${name}`),isAtom(dep))dep.types.forEach(type=>pushUnique(types,type));else{let type;if(isActionCreator(dep))type=(externalActions[name]=dep).type;else{type=`${name}_${id}`;const actionCreator=function(){return{payload:dep(...[].slice.call(arguments)),type:type,targets:[atom],v3action:actionCreator.v3action}};actionCreator.type=type,actionCreator.dispatch=function(){return store.dispatch(actionCreator(...[].slice.call(arguments)))},actionCreator.v3action=v3.action(type),actionCreators[name]=actionCreator,\"_\"!=name[0]&&(atom[name]=actionCreator)}pushUnique(trackedTypes,type),pushUnique(types,type)}});const cacheReducer=function(reducer,dependencies,trackedTypes,actionCreators,externalActions){const create=function(name){return actionCreators[name](...[].slice.call(arguments,1))};return(v3ctx,state)=>{const rootCause=getRootCause(v3ctx.cause);ctxs.has(rootCause)||ctxs.set(rootCause,new WeakMap),ctxs.get(rootCause).has(reducer)||ctxs.get(rootCause).set(reducer,{});const ctx=ctxs.get(rootCause).get(reducer);return reducer({create:create,get:name=>v3ctx.spy(dependencies[name].v3atom),getUnlistedState:targetAtom=>v3ctx.get(targetAtom.v3atom),onAction:(name,reaction)=>{const ac=externalActions[name]??actionCreators[name];throwReatomError(void 0===ac,\"Unknown action\"),spyChange(v3ctx,ac.v3action,({payload:payload})=>{reaction(payload)})},onChange:(name,reaction)=>{spyChange(v3ctx,dependencies[name].v3atom,(prev,next)=>reaction(prev,next))},onInit:cb=>{v3ctx.get(read=>read(v3ctx.cause.proto))||cb()},schedule:effect=>v3ctx.schedule(()=>effect(getRootCause(v3ctx.cause).v2store.dispatch,ctx,[]),2),v3ctx:v3ctx},state)}}(reducer,dependencies,0,actionCreators,externalActions);function atom(transaction){return transaction.v3ctx.get(atom.v3atom)}return atom.id=id,atom.getState=()=>store.getState(atom),atom.subscribe=cb=>store.subscribe(atom,cb),atom.types=types,(atom.v3atom=v3atom??v3.atom(cacheReducer,id)).__reatom.v2atom=atom,atom}const ctxs=new WeakMap;function createStore({callSafety:callSafety=v3.callSafely,v3ctx:v3ctx=v3.createCtx({callNearEffect:callSafety,callLateEffect:callSafety})}={}){const store={dispatch:action=>{const actions=Array.isArray(action)?action:[action];throwReatomError(0==actions.length||!actions.every(isAction),\"dispatch arguments\"),v3ctx.get(()=>{actions.forEach(action=>action.v3action(v3ctx,action.payload)),actions.forEach(({targets:targets})=>targets?.forEach(target=>v3ctx.get(target.v3atom)))})},getCache:atom=>v3ctx.get(read=>read(atom.v3atom.__reatom)),getState:atom=>v3ctx.get(atom.v3atom),subscribe:(atom,cb)=>v3ctx.subscribe(atom.v3atom,state=>cb(state,[])),v3ctx:v3ctx};return getRootCause(v3ctx.cause).v2store=store,store}const defaultStore=createStore();export{callSafety,createAtom,createStore,defaultStore,getState,isAction,isActionCreator,isAtom,isFunction,isObject,isString,noop,pushUnique};\n//# sourceMappingURL=index.es.js.map\n","import{defaultStore as n,createAtom as t,getState as r,isActionCreator as e}from\"@reatom/core-v2/\";import u from\"react\";var c=u.createContext(n),o=function(n){return n()},i=function(n){o=n};function a(n,t){return function(){var r=t.apply(void 0,[].slice.call(arguments));r&&o(function(){n.dispatch(r)})}}function f(n,t){void 0===t&&(t=[]);var r=u.useContext(c);return u.useCallback(a(r,n),t.concat(r))}function s(n,o,i){var f=n;\"function\"==typeof o?(null!=i||(i=[]),n=u.useMemo(function(){return t({origin:f},function(n){return o((0,n.get)(\"origin\"))})},i.concat(f))):i=null!=o?o:[];var s=u.useContext(c);i=i.concat([n,s]);var l=u.useState(function(){return r(n,s)}),v=l[0],m=l[1],p=u.useRef(v);p.current=v=r(n,s);var b=u.useMemo(function(){return Object.entries(f).reduce(function(n,t){var r=t[0],u=t[1];return e(u)&&(n[r]=a(s,u)),n},{})},i);return u.useEffect(function(){return s.subscribe(n,function(n){return Object.is(n,p.current)||m(p.current=n)})},i),u.useDebugValue(v),[v,b]}export{c as reatomContext,i as setBatchedUpdates,f as useAction,s as useAtom};\n//# sourceMappingURL=index.es.js.map\n","const noop=()=>{},sleep=(ms=0)=>new Promise(r=>setTimeout(r,ms)),isObject=thing=>\"object\"==typeof thing&&null!==thing,isRec=thing=>{if(!isObject(thing))return!1;const proto=Reflect.getPrototypeOf(thing);return!proto||!Reflect.getPrototypeOf(proto)},isShallowEqual=(a,b,is=Object.is)=>{if(Object.is(a,b))return!0;if(!isObject(a)||!isObject(b)||a.__proto__!==b.__proto__||a instanceof Error)return!1;if(Symbol.iterator in a){let equal=a instanceof Map?(a,b)=>is(a[0],b[0])&&is(a[1],b[1]):is,aIter=a[Symbol.iterator](),bIter=b[Symbol.iterator]();for(;;){let aNext=aIter.next(),bNext=bIter.next();if(aNext.done||bNext.done||!equal(aNext.value,bNext.value))return aNext.done&&bNext.done}}if(a instanceof Date)return a.getTime()===b.getTime();if(a instanceof RegExp)return String(a)===String(b);for(let k in a)if(k in b==0||!is(a[k],b[k]))return!1;return Object.keys(a).length===Object.keys(b).length},isDeepEqual=(a,b)=>{const visited=new WeakMap,is=(a,b)=>{if(isObject(a)){if(visited.has(a))return visited.get(a)===b;visited.set(a,b)}return isShallowEqual(a,b,is)};return isShallowEqual(a,b,is)},assign=Object.assign,merge=function(){return Object.assign({},...[].slice.call(arguments))},keys=Object.keys,entries=Object.entries,pick=(target,keys)=>{const result={};for(const key of keys)result[key]=target[key];return result},omit=(target,keys)=>{const result={};for(const key in target)keys.includes(key)||(result[key]=target[key]);return result},jsonClone=value=>JSON.parse(JSON.stringify(value));let _random=(min=0,max=Number.MAX_SAFE_INTEGER-1)=>Math.floor(Math.random()*(max-min+1))+min;const random=(min,max)=>_random(min,max),mockRandom=fn=>{const origin=_random;return _random=fn,()=>{_random=origin}},nonNullable=(value,message)=>{if(null==value)throw new TypeError(message||\"Value is null or undefined\");return value},{toString:toString}=Object.prototype,{toString:toStringArray}=[],visited=new WeakMap,toStringKey=(thing,immutable=!0)=>{var tag=typeof thing;if(\"symbol\"===tag)return`[reatom Symbol]${thing.description||\"symbol\"}`;if(\"function\"!==tag&&(\"object\"!==tag||null===thing||thing instanceof Date||thing instanceof RegExp))return`[reatom ${tag}]`+thing;if(visited.has(thing))return visited.get(thing);var result=`[reatom ${Reflect.getPrototypeOf(thing)?.constructor.name||toString.call(thing).slice(8,-1)}#${random()}]`;if(\"function\"===tag)return visited.set(thing,result+=thing.name),result;visited.set(thing,result);var proto=Reflect.getPrototypeOf(thing);if(proto&&Reflect.getPrototypeOf(proto)&&thing.toString!==toStringArray&&Symbol.iterator in thing==0)return result;var iterator=Symbol.iterator in thing?thing:Object.entries(thing).sort(([a],[b])=>a.localeCompare(b));for(let item of iterator)result+=toStringKey(item,immutable);return immutable?visited.set(thing,result):visited.delete(thing),result},toAbortError=reason=>{if(reason instanceof Error==0||\"AbortError\"!==reason.name){if(reason instanceof Error){var options={cause:reason};reason=reason.message}else reason=isObject(reason)?toString.call(reason):String(reason);\"undefined\"==typeof DOMException?(reason=new Error(reason,options)).name=\"AbortError\":reason=assign(new DOMException(reason,\"AbortError\"),options)}return reason},throwIfAborted=controller=>{if(controller?.signal.aborted)throw toAbortError(controller.signal.reason)},isAbort=thing=>thing instanceof Error&&\"AbortError\"===thing.name,throwAbort=(message,controller)=>{const error=toAbortError(message);throw controller?.abort(error),error},setTimeout=Object.assign(function(){const intervalId=globalThis.setTimeout(...[].slice.call(arguments));return\"number\"==typeof intervalId?intervalId:Object.assign(intervalId,{toJSON:()=>-1})},globalThis.setTimeout),MAX_SAFE_TIMEOUT=2**31-1;export{MAX_SAFE_TIMEOUT,assign,entries,isAbort,isDeepEqual,isObject,isRec,isShallowEqual,jsonClone,keys,merge,mockRandom,nonNullable,noop,omit,pick,random,setTimeout,sleep,throwAbort,throwIfAborted,toAbortError,toStringKey};\n//# sourceMappingURL=index.mjs.map\n","import{action,throwReatomError,atom,__count,isAtom}from\"@reatom/core\";import{isAbort,noop,merge,throwIfAborted,toAbortError}from\"@reatom/utils\";function _catch(body,recover){try{var result=body()}catch(e){return recover(e)}return result&&result.then?result.then(void 0,recover):result}class CauseContext extends WeakMap{has(cause){return super.has(cause)||null!==cause.cause&&this.has(cause.cause)}get(cause){for(;!super.has(cause)&&cause.cause;)cause=cause.cause;return super.get(cause)}}const abortCauseContext=new CauseContext,getTopController=patch=>abortCauseContext.get(patch)??null,onCtxAbort=(ctx,cb)=>{const controller=getTopController(ctx.cause);if(controller){const handler=()=>cb(toAbortError(controller.signal.reason)),cleanup=()=>controller.signal.removeEventListener(\"abort\",handler);if(!controller.signal.aborted)return controller.signal.addEventListener(\"abort\",handler),cleanup;handler()}},CHAINS=new WeakMap,__thenReatomed=(ctx,origin,onFulfill,onReject)=>{let chain=CHAINS.get(origin);if(!chain){const promise=origin.then(value=>(ctx.get((read,actualize)=>chain.then.forEach(cb=>cb(value,read,actualize))),value),error=>{throw ctx.get((read,actualize)=>chain.catch.forEach(cb=>cb(error,read,actualize))),isAbort(error)&&promise.catch(noop),error});CHAINS.set(origin,chain={promise:promise,then:[],catch:[]}),CHAINS.set(promise,chain)}return onFulfill&&chain.then.push(onFulfill),onReject&&chain.catch.push(onReject),chain.promise},disposable=ctx=>{const _ctx=Object.assign({},ctx);let isDisposed=!1;for(const key in ctx){const value=ctx[key];\"function\"==typeof value&&Object.assign(_ctx,{[key](){var a=[].slice.call(arguments);if(throwReatomError(isDisposed,\"access to disposed context branch\"),\"schedule\"===key){const[effect]=a;a[0]=function(){try{var promise=Promise.resolve(effect(...[].slice.call(arguments)))}catch(error){promise=Promise.reject(error)}return promise.finally(()=>{if(isDisposed)return new Promise(()=>{})})}}return value.apply(this,a)}})}return Object.assign(_ctx,{dispose(){isDisposed=!0}})},skip=Symbol(),take=(ctx,anAtom,mapper=((ctx,v)=>v))=>{const cleanups=[];return new Promise((res,rej)=>{cleanups.push(onCtxAbort(ctx,rej)??noop,ctx.subscribe(anAtom,function(state){try{if(!cleanups.length)return Promise.resolve();const _temp=_catch(function(){return anAtom.__reatom.isAction&&(state=state[0].payload),Promise.resolve(state).then(function(value){const result=mapper(ctx,value,skip);result!==skip&&res(result)})},function(error){rej(error)});return Promise.resolve(_temp&&_temp.then?_temp.then(function(){}):void 0)}catch(e){return Promise.reject(e)}}))}).finally(()=>cleanups.forEach(cb=>cb()))},takeNested=function(ctx,cb){return new Promise((resolve,reject)=>{const unabort=onCtxAbort(ctx,reject);let i=1;const{schedule:schedule}=ctx,check=()=>{0===i&&(unabort?.(),resolve()),0==--i&&Promise.resolve().then(check)},result=cb(Object.assign({},ctx,{schedule(cb,step){return schedule.call(this,ctx=>{const result=cb(ctx);return result instanceof Promise&&(++i,result.finally(check).catch(noop)),result},step)}}),...[].slice.call(arguments,2));return check(),result})},isCausedBy=(caused,by)=>{return proto=\"__reatom\"in by?by.__reatom:by,null!==(cause=\"subscribe\"in caused?caused.cause:caused).cause&&(cause.cause.proto===proto||isCausedBy(cause.cause,proto));var cause,proto},withAbortableSchedule=ctx=>{const{schedule:schedule}=ctx;return merge(ctx,{schedule(cb,step=1){const _this=this;if(step<1)return schedule.call(this,cb,step);let resolve,reject;const promise=new Promise((res,rej)=>{resolve=res,reject=rej}),unabort=onCtxAbort(this,error=>{promise.catch(noop),reject(error)});return schedule.call(this,function(_ctx){try{function _temp3(){unabort?.()}const _temp2=_catch(function(){const controller=getTopController(_this.cause);return throwIfAborted(controller),Promise.resolve(cb(_ctx)).then(function(value){throwIfAborted(controller),resolve(value)})},function(error){reject(error)});return Promise.resolve(_temp2&&_temp2.then?_temp2.then(_temp3):_temp3())}catch(e){return Promise.reject(e)}},step).catch(error=>{reject(error),unabort?.()}),promise}})},concurrentControllers=new WeakMap,concurrent=(fn,strategy=\"last-in-win\")=>{const abortControllerAtom=atom(null,`${__count(\"_concurrent\")}.abortControllerAtom`),target=action(function(ctx,topCtx){const prevController=ctx.get(abortControllerAtom),controller=new AbortController,abort=toAbortError(\"concurrent\");if(\"first-in-win\"===strategy){if(prevController){const rej=Promise.reject(abort);return rej.catch(noop),rej}abortControllerAtom(ctx,controller)}\"last-in-win\"===strategy&&(abortControllerAtom(ctx,controller),prevController&&ctx.schedule(()=>prevController.abort(abort)));const unabort=onCtxAbort(topCtx,error=>{res instanceof Promise&&res.catch(noop),controller.abort(error)});abortCauseContext.set(ctx.cause,controller);var res=fn(withAbortableSchedule({...ctx,spy:topCtx.spy}),...[].slice.call(arguments,2));return res instanceof Promise?(res=res.finally(()=>{\"first-in-win\"===strategy&&abortControllerAtom(ctx,null),unabort?.(),controller.signal.aborted&&res.catch(noop),throwIfAborted(controller)}),controller.signal.addEventListener(\"abort\",()=>{res.catch(noop)})):throwReatomError(\"first-in-win\"===strategy,'can\\'t apply \"first-in-win\" strategy for non-async function'),res},isAtom(fn)?`${fn.__reatom.name}._concurrent`:\"_concurrent\"),result=Object.assign(function(ctx){return target(ctx,ctx,...[].slice.call(arguments,1))},target,fn);return concurrentControllers.set(result,abortControllerAtom),result},withConcurrency=strategy=>target=>concurrent(target,strategy),_spawn=action(function(ctx,fn,controller){return abortCauseContext.set(ctx.cause,controller),fn(ctx,...[].slice.call(arguments,3))},\"_spawn\"),spawn=(ctx,fn,args=[],controller=new AbortController)=>_spawn(ctx,fn,controller,...args),reaction=(cb,name=__count(\"reaction\"))=>action(function(ctx){const reducer=concurrent(ctx=>cb(ctx,...[].slice.call(arguments,1))),reactionAtom=atom(reducer,__count(name)),abort=reason=>{const controllerAtom=concurrentControllers.get(reducer);controllerAtom&&ctx.get(controllerAtom)?.abort(toAbortError(reason))},un=ctx.subscribe(reactionAtom,noop),unabort=onCtxAbort(ctx,error=>{un(),abort(error)});return{...reactionAtom,unsubscribe:()=>{un(),unabort?.(),abort(\"unsubscribe\")}}});export{CauseContext,__thenReatomed,_spawn,abortCauseContext,concurrent,concurrentControllers,disposable,getTopController,isCausedBy,onCtxAbort,reaction,spawn,take,takeNested,withAbortableSchedule,withConcurrency};\n//# sourceMappingURL=index.mjs.map\n","import{action,atom,throwReatomError}from\"@reatom/core\";import{noop,toAbortError}from\"@reatom/utils\";import{abortCauseContext,withAbortableSchedule}from\"@reatom/effects\";const getRootCause=cause=>null===cause.cause?cause:getRootCause(cause.cause),isSameCtx=(ctx1,ctx2)=>getRootCause(ctx1.cause)===getRootCause(ctx2.cause),addOnConnect=(anAtom,cb)=>(anAtom.__reatom.connectHooks??=new Set).add(cb),addOnDisconnect=(anAtom,cb)=>(anAtom.__reatom.disconnectHooks??=new Set).add(cb),addOnUpdate=(anAtom,cb)=>(anAtom.__reatom.updateHooks??=new Set).add(cb),withInit=createState=>anAtom=>{const{initState:initState,isAction:isAction}=anAtom.__reatom;return throwReatomError(isAction,\"action state is not manageable\"),anAtom.__reatom.initState=ctx=>createState(ctx,initState),anAtom},_onConnect=action((ctx,anAtom,fn,controller)=>{ctx.cause.cause=getRootCause(ctx.cause),abortCauseContext.set(ctx.cause,controller);const result=fn(withAbortableSchedule({...ctx,controller:controller,isConnected:()=>isConnected(ctx,anAtom)}));return result instanceof Promise&&controller.signal.addEventListener(\"abort\",()=>result.catch(noop)),result},\"_onConnect\"),onConnect=(anAtom,cb)=>{const connectHook=ctx=>{const controller=new AbortController,cleanup=_onConnect(ctx,anAtom,cb,controller);cleanup instanceof Promise&&cleanup.catch(noop);const cleanupHook=_ctx=>{isSameCtx(ctx,_ctx)&&disconnectHooks.delete(cleanupHook)&&connectHooks.has(connectHook)&&(controller.abort(toAbortError(`${anAtom.__reatom.name} disconnect`)),\"function\"==typeof cleanup&&cleanup())},disconnectHooks=addOnDisconnect(anAtom,cleanupHook)},connectHooks=addOnConnect(anAtom,connectHook);return()=>connectHooks.delete(connectHook)},onDisconnect=(anAtom,cb)=>onConnect(anAtom,ctx=>()=>cb(ctx)),onUpdate=(anAtom,cb=noop)=>(anAtom.deps??[]).reduce((acc,dep)=>{const un=onUpdate(dep,ctx=>ctx.get(anAtom));return()=>{un(),acc()}},((anAtom,cb=noop)=>{const hook=(ctx,patch)=>{let{state:state}=patch;if(anAtom.__reatom.isAction){if(0===patch.state.length)return;const call=state.at(-1);state=call.payload,patch.params=call.params}cb(ctx,state,patch)},hooks=addOnUpdate(anAtom,hook);return()=>hooks.delete(hook)})(anAtom,cb)),spyChange=(ctx,anAtom,handler)=>{let isChanged=!1;return ctx.spy(anAtom,(newState,prevState)=>{isChanged=!0,handler?.(newState,prevState)}),isChanged},controlConnection=(initState=!0,name)=>anAtom=>{name??=`${anAtom.__reatom.name}.controlConnection`;const isActiveAtom=atom(initState,`${name}._isActiveAtom`);return Object.assign({toggleConnection:action((ctx,value)=>isActiveAtom(ctx,state=>value??!state),`${name}.toggleConnection`)},atom((ctx,state)=>ctx.spy(isActiveAtom)?ctx.spy(anAtom):state,name))},isConnected=(ctx,{__reatom:proto})=>ctx.get(read=>{const cache=proto.patch??read(proto);return!!cache&&cache.subs.size+cache.listeners.size>0}),initializations=atom(null,\"initializations\");initializations.__reatom.initState=()=>new WeakMap;const isInit=ctx=>{const inits=ctx.get(initializations);return inits.has(ctx.cause.proto)?inits.get(ctx.cause.proto)===ctx.cause:(inits.set(ctx.cause.proto,ctx.cause),!0)};export{_onConnect,addOnConnect,addOnDisconnect,addOnUpdate,controlConnection,getRootCause,isConnected,isInit,isSameCtx,onConnect,onDisconnect,onUpdate,spyChange,withInit};\n//# sourceMappingURL=index.mjs.map\n","import{atom,action,throwReatomError,isAtom,__count}from\"@reatom/core\";import{assign,isObject,omit}from\"@reatom/utils\";const withAssign=getProps=>target=>assign(target,getProps(target,target.__reatom.name)),reatomArray=(initState=[],name)=>atom(initState,name).pipe(withAssign((target,name)=>({toReversed:action(ctx=>target(ctx,prev=>prev.slice().reverse()),`${name}.toReversed`),toSorted:action((ctx,compareFn)=>target(ctx,prev=>prev.slice().sort(compareFn)),`${name}.toSorted`),toSpliced:action(function(ctx,start,deleteCount){return target(ctx,state=>((state=state.slice()).splice(start,deleteCount,...[].slice.call(arguments,3)),state))},`${name}.toSpliced`),with:action((ctx,i,value)=>target(ctx,state=>(Object.is(state.at(i),value)||((state=state.slice())[i]=value),state)),`${name}.with`)}))),reatomBoolean=(init=!1,name)=>atom(init,name).pipe(withAssign((target,name)=>({toggle:action(ctx=>target(ctx,prev=>!prev),`${name}.toggle`),setTrue:action(ctx=>target(ctx,!0),`${name}.setTrue`),setFalse:action(ctx=>target(ctx,!1),`${name}.setFalse`),reset:action(ctx=>target(ctx,init),`${name}.reset`)}))),reatomEnum=(variants,options={})=>{const{name:name,format:format=\"camelCase\",initState:initState=variants[0]}=\"string\"==typeof options?{name:options}:options,stateAtom=atom(initState,name),enumAtom=Object.assign((ctx,update)=>{const state=stateAtom(ctx,update);return throwReatomError(!variants.includes(state),`invalid enum value \"${state}\" for \"${name}\" enum`),state},stateAtom),cases=enumAtom.enum={};enumAtom.reset=action(ctx=>enumAtom(ctx,initState),`${name}.reset`);for(const variant of variants){cases[variant]=variant;const setterName=variant.replace(/^./,firstLetter=>\"set\"+(\"camelCase\"===format?firstLetter.toUpperCase():`_${firstLetter}`));enumAtom[setterName]=action(ctx=>enumAtom(ctx,variant),`${name}.${setterName}`)}return enumAtom},reatomMap=(initState=new Map,name)=>atom(initState,name).pipe(withAssign((target,name)=>{const getOrCreate=action((ctx,key,value)=>(actions.set(ctx,key,value),value),`${name}.getOrCreate`),actions={get:(ctx,key)=>ctx.get(target).get(key),getOrCreate:(ctx,key,creator)=>actions.has(ctx,key)?actions.get(ctx,key):getOrCreate(ctx,key,creator()),has:(ctx,key)=>ctx.get(target).has(key),set:action((ctx,key,value)=>target(ctx,prev=>{const valuePrev=prev.get(key);return Object.is(valuePrev,value)&&(void 0!==value||prev.has(key))?prev:new Map(prev).set(key,value)}),`${name}.set`),delete:action((ctx,key)=>target(ctx,prev=>{if(!prev.has(key))return prev;const next=new Map(prev);return next.delete(key),next}),`${name}.delete`),clear:action(ctx=>target(ctx,new Map),`${name}.clear`),reset:action(ctx=>target(ctx,initState),`${name}.reset`)};return actions})),readonly=anAtom=>({...anAtom}),LL_PREV=Symbol(\"Reatom linked list prev\"),LL_NEXT=Symbol(\"Reatom linked list next\"),addLL=(state,node,after)=>{node!==after&&(after?(node[LL_PREV]=after,node[LL_NEXT]=after[LL_NEXT],after[LL_NEXT]=node,state.tail===after&&(state.tail=node)):(node[LL_PREV]=null,node[LL_NEXT]=state.head,state.head&&(state.head[LL_PREV]=node),state.tail||(state.tail=node),state.head=node),state.size++)},removeLL=(state,node)=>{state.head===node?state.head=node[LL_NEXT]:null!==node[LL_PREV]&&(node[LL_PREV][LL_NEXT]=node[LL_NEXT]),state.tail===node?state.tail=node[LL_PREV]:null!==node[LL_NEXT]&&(node[LL_NEXT][LL_PREV]=node[LL_PREV]),node[LL_PREV]=null,node[LL_NEXT]=null,state.size--},swapLL=(state,a,b)=>{if(a===b)return;if(state.head===b)return swapLL(state,b,a);const prevA=a[LL_PREV],nextA=a[LL_NEXT],prevB=b[LL_PREV],nextB=b[LL_NEXT];nextA===b?(a[LL_NEXT]=nextB,b[LL_PREV]=prevA,b[LL_NEXT]=a,a[LL_PREV]=b,nextB&&(nextB[LL_PREV]=a),prevA&&(prevA[LL_NEXT]=b)):nextB===a?(b[LL_NEXT]=nextA,a[LL_PREV]=prevB,a[LL_NEXT]=b,b[LL_PREV]=a,nextA&&(nextA[LL_PREV]=b),prevB&&(prevB[LL_NEXT]=a)):(prevA&&(prevA[LL_NEXT]=b),nextA&&(nextA[LL_PREV]=b),prevB&&(prevB[LL_NEXT]=a),nextB&&(nextB[LL_PREV]=a),a[LL_PREV]=prevB,a[LL_NEXT]=nextB,b[LL_PREV]=prevA,b[LL_NEXT]=nextA),state.head===a?state.head=b:state.head===b&&(state.head=a),state.tail===a?state.tail=b:state.tail===b&&(state.tail=a)},moveLL=(state,node,after)=>{removeLL(state,node),addLL(state,node,after)},clearLL=state=>{for(;state.tail;)removeLL(state,state.tail)},toArray=(head,prev)=>{let arr=[],i=0;for(;head;)void 0!==prev&&prev[i]!==head&&(prev=void 0),arr.push(head),head=head[LL_NEXT],i++;return arr.length===prev?.length?prev:arr},reatomLinkedList=(options,name=__count(\"reatomLinkedList\"))=>{const{create:userCreate,initState:initState=[],key:key}=\"function\"==typeof options?{create:options}:options,_name=name,isLL=node=>!!node&&LL_NEXT in node&&LL_PREV in node,throwModel=node=>throwReatomError(isLL(node),\"The data is already in a linked list.\"),throwNotModel=node=>throwReatomError(!isLL(node),\"The passed data is not a linked list node.\");let STATE=null;const linkedList=atom(STATE,name);linkedList.__reatom.initState=()=>{try{STATE={size:0,version:1,changes:[],head:null,tail:null};for(const node of initState)throwModel(node),addLL(STATE,node,STATE.tail);return STATE}finally{STATE=null}};const batchFn=(ctx,cb)=>{if(STATE)return cb(ctx);STATE=linkedList(ctx,({head:head,tail:tail,size:size,version:version})=>({size:size,version:version+1,changes:[],head:head,tail:tail}));try{return cb(ctx)}finally{STATE=null}},batch=action(batchFn,`${name}._batch`),create=action(function(ctx){return batchFn(ctx,()=>{const node=userCreate(ctx,...[].slice.call(arguments,1));return throwReatomError(!isObject(node)&&\"function\"!=typeof node,`reatomLinkedList can operate only with objects or functions, received \"${node}\".`),throwModel(node),addLL(STATE,node,STATE.tail),STATE.changes.push({kind:\"create\",node:node}),node})},`${name}.create`),remove=action((ctx,node)=>batchFn(ctx,()=>(throwNotModel(node),(null!==node[LL_PREV]||null!==node[LL_NEXT]||STATE.tail===node)&&(removeLL(STATE,node),STATE.changes.push({kind:\"remove\",node:node}),!0))),`${name}.remove`),swap=action((ctx,a,b)=>batchFn(ctx,()=>{throwNotModel(a),throwNotModel(b),a!==b&&(swapLL(STATE,a,b),STATE.changes.push({kind:\"swap\",a:a,b:b}))}),`${name}.swap`),move=action((ctx,node,after)=>batchFn(ctx,()=>{throwNotModel(node),moveLL(STATE,node,after),STATE.changes.push({kind:\"move\",node:node,after:after})}),`${name}.move`),clear=action(ctx=>batchFn(ctx,()=>{clearLL(STATE),STATE.changes.push({kind:\"clear\"})}),`${name}.clear`),array=atom((ctx,state=[])=>toArray(ctx.spy(linkedList).head,state),`${name}.array`),map=key?atom(ctx=>new Map(ctx.spy(array).map(node=>{const keyValue=node[key];return[isAtom(keyValue)?ctx.spy(keyValue):keyValue,node]}))):void 0;return Object.assign(linkedList,{batch:batch,create:create,remove:remove,swap:swap,move:move,clear:clear,find:(ctx,cb)=>{for(let{head:head}=ctx.get(linkedList);head;head=head[LL_NEXT])if(cb(head))return head;return null},array:array,map:map,reatomMap:(cb,options={})=>{const{name:name=__count(`${_name}.reatomMap`),...hooks}=\"string\"==typeof options?{name:options}:options,mapList=atom((ctx,mapList)=>{throwReatomError(STATE,\"Can't compute the map of the linked list inside the batching.\");const ll=ctx.spy(linkedList);if(!mapList||ll.version-1>mapList.version){mapList&&hooks.onClear?.(ctx,mapList),mapList={size:ll.size,version:ll.version,changes:[],head:null,tail:null,map:new WeakMap};for(let head=ll.head;head;head=head[LL_NEXT]){const node=cb(ctx,head);addLL(mapList,node,mapList.tail),mapList.map.set(head,node),hooks.onCreate?.(ctx,node)}mapList.size=ll.size}else{mapList={head:mapList.head,tail:mapList.tail,size:mapList.size,version:ll.version,changes:[],map:mapList.map};for(const change of ll.changes)switch(change.kind){case\"create\":{const node=cb(ctx,change.node);addLL(mapList,node,mapList.tail),mapList.map.set(change.node,node),mapList.changes.push({kind:\"create\",node:node}),hooks.onCreate?.(ctx,node);break}case\"remove\":{const node=mapList.map.get(change.node);removeLL(mapList,node),mapList.map.delete(change.node),mapList.changes.push({kind:\"remove\",node:node}),hooks.onRemove?.(ctx,node,change.node);break}case\"swap\":{const a=mapList.map.get(change.a),b=mapList.map.get(change.b);swapLL(mapList,a,b),mapList.changes.push({kind:\"swap\",a:a,b:b}),hooks.onSwap?.(ctx,{a:a,b:b});break}case\"move\":{const node=mapList.map.get(change.node),after=change.after?mapList.map.get(change.after):null;moveLL(mapList,node,after),mapList.changes.push({kind:\"move\",node:node,after:after}),hooks.onMove?.(ctx,node);break}case\"clear\":hooks.onClear?.(ctx,mapList),clearLL(mapList),mapList.changes.push({kind:\"clear\"});break;default:throw new Error(`Unhandled linked list change \"${change}\"`)}}return throwReatomError(mapList.size!==ll.size,\"Inconsistent linked list, is's a bug, please report an issue\"),mapList},name),array=atom((ctx,state=[])=>toArray(ctx.spy(mapList).head,state),`${name}.array`);return Object.assign(mapList,{array:array,__reatomLinkedList:!0})},__reatomLinkedList:!0}).pipe(readonly)},isLinkedListAtom=thing=>!0===thing?.__reatomLinkedList,reatomNumber=(initState=0,name)=>atom(initState,name).pipe(withAssign((target,name)=>({increment:action((ctx,by=1)=>target(ctx,prev=>prev+by),`${name}.increment`),decrement:action((ctx,by=1)=>target(ctx,prev=>prev-by),`${name}.decrement`),random:action(ctx=>target(ctx,Math.random()),`${name}.decrement`),reset:action(ctx=>target(ctx,initState),`${name}.reset`)}))),reatomRecord=(initState,name)=>atom(initState,name).pipe(withAssign(target=>({merge:action((ctx,slice)=>target(ctx,prev=>{for(const key in prev)if(!Object.is(prev[key],slice[key]))return{...prev,...slice};return prev}),`${name}.merge`),omit:action(function(ctx){var keys=[].slice.call(arguments,1);return target(ctx,prev=>keys.some(key=>key in prev)?omit(prev,keys):prev)},`${name}.omit`),reset:action(function(ctx){var keys=[].slice.call(arguments,1);return target(ctx,prev=>{if(0===keys.length)return initState;const next={};let changed=!1;for(const key in prev)keys.includes(key)?key in initState?(next[key]=initState[key],changed||=!Object.is(prev[key],initState[key])):changed||=key in prev:next[key]=prev[key];return changed?next:prev})},`${name}.reset`)}))),reatomSet=(initState=new Set,name)=>atom(initState,name).pipe(withAssign((target,name)=>({add:action((ctx,el)=>target(ctx,prev=>prev.has(el)?prev:new Set(prev).add(el)),`${name}.add`),set:action((ctx,el)=>target(ctx,prev=>prev.has(el)?prev:new Set(prev).add(el)),`${name}.set`),delete:action((ctx,el)=>target(ctx,prev=>{if(!prev.has(el))return prev;const next=new Set(prev);return next.delete(el),next}),`${name}.delete`),clear:action(ctx=>target(ctx,prev=>0===prev.size?prev:new Set),`${name}.clear`),reset:action(ctx=>target(ctx,initState),`${name}.reset`),intersection:action((ctx,set)=>target(ctx,prev=>prev.intersection(set)),`${name}.intersection`),union:action((ctx,set)=>target(ctx,prev=>prev.union(set)),`${name}.union`),difference:action((ctx,set)=>target(ctx,prev=>prev.difference(set)),`${name}.difference`),symmetricDifference:action((ctx,set)=>target(ctx,prev=>prev.symmetricDifference(set)),`${name}.symmetricDifference`),toggle:action((ctx,el)=>target(ctx,prev=>{if(!prev.has(el))return new Set(prev).add(el);const next=new Set(prev);return next.delete(el),next}),`${name}.toggle`),has:(ctx,el)=>ctx.get(target).has(el),isSubsetOf:(ctx,set)=>ctx.get(target).isSubsetOf(set),isSupersetOf:(ctx,set)=>ctx.get(target).isSupersetOf(set),isDisjointFrom:(ctx,set)=>ctx.get(target).isDisjointFrom(set),size:ctx=>ctx.get(target).size}))),reatomString=(init=\"\",name)=>atom(init,name).pipe(withAssign((target,name)=>({reset:action(ctx=>target(ctx,init),`${name}.reset`)}))),withComputed=computed=>anAtom=>{const prevComputed=anAtom.__reatom.computer;return anAtom.__reatom.computer=(ctx,state)=>(prevComputed&&(state=prevComputed(ctx,state)),computed(ctx,state)),anAtom},withReducers=reducers=>anAtom=>Object.keys(reducers).reduce((anAtom,k)=>(anAtom[k]=action(function(ctx){return anAtom(ctx,reducers[k](ctx.get(anAtom),...[].slice.call(arguments,1)))},`${anAtom.__reatom.name}._${k}`),anAtom),anAtom);export{LL_NEXT,LL_PREV,isLinkedListAtom,reatomArray,reatomBoolean,reatomEnum,reatomLinkedList,reatomMap,reatomNumber,reatomRecord,reatomSet,reatomString,withAssign,withComputed,withReducers};\n//# sourceMappingURL=index.mjs.map\n","import{action,atom,throwReatomError,__count}from\"@reatom/core\";import{__thenReatomed,getTopController,abortCauseContext,spawn,CauseContext,onCtxAbort,withAbortableSchedule}from\"@reatom/effects\";import{onConnect,isConnected}from\"@reatom/hooks\";import{throwIfAborted,toAbortError,assign,isAbort,isDeepEqual,MAX_SAFE_TIMEOUT,setTimeout,isShallowEqual,merge,noop,sleep}from\"@reatom/utils\";import{reatomMap,withAssign}from\"@reatom/primitives\";const handleEffect=(anAsync,params,{shouldPending:shouldPending=!0,shouldFulfill:shouldFulfill=!0,shouldReject:shouldReject=!0,effect:effect=anAsync.__reatom.unstable_fn}={})=>{const pendingAtom=anAsync.pendingAtom,[ctx]=params;shouldPending&&pendingAtom(ctx,s=>++s);const origin=ctx.schedule(()=>new Promise((res,rej)=>{throwIfAborted(ctx.controller),effect(...params).then(res,rej),ctx.controller.signal.addEventListener(\"abort\",()=>rej(toAbortError(ctx.controller.signal.reason)))}));return assign(__thenReatomed(ctx,origin,v=>{shouldFulfill&&anAsync.onFulfill(ctx,v),shouldPending&&pendingAtom(ctx,s=>--s)},e=>{shouldReject&&!isAbort(e)&&anAsync.onReject(ctx,e),shouldPending&&pendingAtom(ctx,s=>--s)}),{controller:ctx.controller})},NOOP_TIMEOUT_ID=-1,withCache=({ignoreAbort:ignoreAbort=!0,length:length=5,paramsLength:paramsLength,staleTime:staleTime=3e5,swr:swrOptions=!0,withPersist:withPersist,paramsToKey:paramsToKey,isEqual:isEqual=((ctx,a,b)=>isDeepEqual(a,b))}={})=>anAsync=>{if(!anAsync.cacheAtom){const swr=!!swrOptions,{shouldPending:shouldPending=!1,shouldFulfill:shouldFulfill=swr,shouldReject:shouldReject=!1}=swrOptions;Infinity!==staleTime&&(staleTime=Math.min(MAX_SAFE_TIMEOUT,staleTime));const find=paramsToKey?(ctx,params,state=ctx.get(cacheAtom))=>{const key=paramsToKey(ctx,params);return{cached:state.get(key),key:key}}:(ctx,params,state=ctx.get(cacheAtom))=>{for(const[key,cached]of state)if(isEqual(ctx,key,params))return{cached:cached,key:key};return{cached:void 0,key:params}},findLatestWithValue=(ctx,state=ctx.get(cacheAtom))=>{for(const cached of state.values())if(cached.version>0&&(!latestCached||cached.lastUpdate>latestCached.lastUpdate))var latestCached=cached;return latestCached},deleteOldest=cache=>{for(const[key,cached]of cache)if(!oldestCached||oldestCached.lastUpdate>cached.lastUpdate)var oldestKey=key,oldestCached=cached;oldestCached&&cache.delete(oldestKey)},planCleanup=(ctx,key,time=staleTime)=>{const clearTimeoutId=Infinity===staleTime?NOOP_TIMEOUT_ID:setTimeout(()=>{cacheAtom.get(ctx,key)?.clearTimeoutId===clearTimeoutId&&cacheAtom.delete(ctx,key)},time);return clearTimeoutId.unref?.(),ctx.schedule(()=>clearTimeout(clearTimeoutId),-1),clearTimeoutId},cacheAtom=anAsync.cacheAtom=reatomMap(new Map,`${anAsync.__reatom.name}._cacheAtom`).pipe(withAssign((target,name)=>({setWithParams:action((ctx,params,value)=>{const{cached:cached,key:key}=find(ctx,params);cacheAtom.set(ctx,key,{clearTimeoutId:planCleanup(ctx,key),promise:void 0,value:value,version:cached?cached.version+1:1,controller:new AbortController,lastUpdate:Date.now(),params:params})}),deleteWithParams:action((ctx,params)=>{const{cached:cached,key:key}=find(ctx,params);cached&&cacheAtom.delete(ctx,key)})})));cacheAtom.invalidate=action(ctx=>{const latest=findLatestWithValue(ctx);return cacheAtom.clear(ctx),\"promiseAtom\"in anAsync?anAsync(ctx):latest?anAsync(ctx,...latest.params):null},`${cacheAtom.__reatom.name}.invalidate`),cacheAtom.options={ignoreAbort:ignoreAbort,length:length,paramsLength:paramsLength,staleTime:staleTime,swr:swr,withPersist:withPersist},withPersist&&cacheAtom.pipe(withPersist({key:cacheAtom.__reatom.name,fromSnapshot:(ctx,snapshot,state=new Map)=>{if(snapshot.length<=state?.size&&snapshot.every(([,{params:params,value:value}])=>{const{cached:cached}=find(ctx,params,state);return!!cached&&isDeepEqual(cached.value,value)}))return state;const newState=new Map(snapshot);for(const[key,rec]of newState)staleTime-(Date.now()-rec.lastUpdate)<=0?newState.delete(key):rec.clearTimeoutId=planCleanup(ctx,key,staleTime-(Date.now()-rec.lastUpdate));for(const[key,rec]of state)if(rec.promise){const{cached:cached}=find(ctx,rec.params,newState);cached?cached.promise=rec.promise:newState.set(key,rec)}return newState},time:Math.min(staleTime,MAX_SAFE_TIMEOUT),toSnapshot:(ctx,cache)=>[...cache].filter(([,rec])=>!rec.promise)}));const swrPendingAtom=anAsync.swrPendingAtom=atom(0,`${anAsync.__reatom.name}.swrPendingAtom`),handlePromise=(ctx,key,cached,swr)=>{cached.clearTimeoutId=planCleanup(ctx,key);const isSame=()=>cacheAtom.get(ctx,key)?.clearTimeoutId===cached.clearTimeoutId,{unstable_fn:unstable_fn}=anAsync.__reatom;let res,rej;return cached.promise=new Promise(function(){return[res,rej]=[].slice.call(arguments)}),function(){try{var a;function _temp2(){return cached.promise}a=[].slice.call(arguments);const _temp=function(body,recover){try{var result=Promise.resolve(ignoreAbort?spawn(a[0],function(ctx){return unstable_fn({...ctx,controller:getTopController(ctx.cause)},...[].slice.call(arguments,1))},a.slice(1)):unstable_fn(...a)).then(function(value){res(value),ctx.get(()=>{isSame()&&cacheAtom.set(ctx,key,{...cached,promise:void 0,value:value,version:cached.version+1}),swr&&swrPendingAtom(ctx,s=>s-1)})})}catch(e){return recover(e)}return result&&result.then?result.then(void 0,recover):result}(0,function(error){rej(error),ctx.get(()=>{isSame()&&(cached.version>0?cacheAtom.set(ctx,key,{...cached,promise:void 0}):cacheAtom.delete(ctx,key)),swr&&swrPendingAtom(ctx,s=>s-1)})});return Promise.resolve(_temp&&_temp.then?_temp.then(_temp2):_temp2())}catch(e){return Promise.reject(e)}}};if(anAsync._handleCache=action(function(){var params=[].slice.call(arguments);const[ctx]=params,controller=getTopController(ctx.cause.cause);abortCauseContext.set(ctx.cause,ctx.controller=controller);const paramsKey=params.slice(1,1+(paramsLength??params.length));let{cached:cached={clearTimeoutId:NOOP_TIMEOUT_ID,promise:void 0,value:void 0,version:0,controller:controller,lastUpdate:-1,params:[]},key:key}=find(ctx,paramsKey);const prevController=cached.controller;cached={...cached,lastUpdate:Date.now(),params:paramsKey,controller:controller};const cache=cacheAtom.set(ctx,key,cached);return cache.size>length&&deleteOldest(cache),0===cached.version&&!cached.promise||cached.promise&&prevController.signal.aborted?handleEffect(anAsync,params,{effect:handlePromise(ctx,key,cached,!1)}):(cached.version>0&&anAsync.onFulfill(ctx,cached.value),cached.promise||!swr?handleEffect(anAsync,params,{effect:function(){try{return Promise.resolve(cached.promise??cached.value)}catch(e){return Promise.reject(e)}},shouldPending:!1,shouldFulfill:shouldFulfill,shouldReject:shouldReject}):(swr&&swrPendingAtom(ctx,s=>s+1),handleEffect(anAsync,params,{effect:handlePromise(ctx,key,cached,swr),shouldPending:shouldPending,shouldFulfill:shouldFulfill,shouldReject:shouldReject})))},`${anAsync.__reatom.name}._handleCache`),\"dataAtom\"in anAsync){const{initState:initState}=anAsync.dataAtom.__reatom;anAsync.dataAtom.__reatom.initState=ctx=>{const cached=findLatestWithValue(ctx),iniState=initState(ctx);return cached?anAsync.dataAtom.mapFulfill?anAsync.dataAtom.mapFulfill(ctx,cached.value,iniState):cached.value:iniState}}withPersist&&\"dataAtom\"in anAsync&&onConnect(anAsync.dataAtom,ctx=>ctx.subscribe(cacheAtom,()=>{}))}return anAsync},memo=reducer=>state=>{const newState=reducer(state);return isShallowEqual(state,newState)?state:newState},asyncStatusesInitState={isPending:!1,isFulfilled:!1,isRejected:!1,isSettled:!1,isFirstPending:!1,isEverPending:!1,isEverSettled:!1},withStatusesAtom=()=>anAsync=>{if(!anAsync.statusesAtom){const relatedPromisesAtom=atom(new WeakSet,`${anAsync.__reatom.name}.statusesAtom._relatedPromisesAtom`),lastSettledStatusAtom=atom(null,`${anAsync.__reatom.name}.statusesAtom._lastSettledStatusAtom`),statusesAtom=atom(asyncStatusesInitState,`${anAsync.__reatom.name}.statusesAtom`);statusesAtom.__reatom.computer=(ctx,state)=>(ctx.spy(anAsync,({payload:payload})=>{ctx.get(relatedPromisesAtom).add(payload);const pending=ctx.get(anAsync.pendingAtom);state=memo(statuses=>({isPending:pending>0,isFulfilled:!1,isRejected:!1,isSettled:!1,isFirstPending:!statuses.isEverPending,isEverPending:!0,isEverSettled:statuses.isEverSettled}))(state)}),state),anAsync.statusesAtom=Object.assign(statusesAtom,{reset:action(ctx=>(relatedPromisesAtom(ctx,new Set),statusesAtom(ctx,asyncStatusesInitState)))}),anAsync.onCall((ctx,payload)=>{ctx.get(statusesAtom),__thenReatomed(ctx,payload,()=>{ctx.get(relatedPromisesAtom).has(payload)&&(statusesAtom(ctx,memo(()=>{const isPending=ctx.get(anAsync.pendingAtom)>0;return{isPending:isPending,isFulfilled:!isPending,isRejected:!1,isSettled:!isPending,isFirstPending:!1,isEverPending:!0,isEverSettled:!0}})),lastSettledStatusAtom(ctx,\"fulfilled\"))},error=>{if(ctx.get(relatedPromisesAtom).has(payload)){const isPending=ctx.get(anAsync.pendingAtom)>0;statusesAtom(ctx,memo(state=>{if(isAbort(error)){const lastSettledStatus=ctx.get(lastSettledStatusAtom);return state.isEverSettled&&!isPending?{isPending:isPending,isFulfilled:\"fulfilled\"===lastSettledStatus,isRejected:\"rejected\"===lastSettledStatus,isSettled:!0,isFirstPending:!1,isEverPending:!0,isEverSettled:!0}:{isPending:isPending,isFulfilled:!1,isRejected:!1,isSettled:!1,isFirstPending:!1,isEverPending:!0,isEverSettled:state.isEverSettled}}return{isPending:isPending,isFulfilled:!1,isRejected:!isPending,isSettled:!isPending,isFirstPending:!1,isEverPending:!0,isEverSettled:!0}})),isAbort(error)||lastSettledStatusAtom(ctx,\"rejected\")}})})}return anAsync},resolved=new WeakSet,reatomResource=(asyncComputed,name=__count(\"asyncAtom\"))=>{const promises=new CauseContext,theAsync=reatomAsync(ctx=>{const promise=promises.get(ctx.cause);return throwReatomError(!promise,\"reaction manual call\"),promise},name),promiseAtom=atom((_ctx,state)=>{if(state&&!_ctx.cause.pubs.length)return state;const params=[],ctx=merge(_ctx,{spy(anAtom,cb){throwReatomError(cb,\"spy reactions are unsupported in ResourceAtom\");const value=_ctx.spy(anAtom);return params.push(value),value}}),controller=new AbortController,unabort=onCtxAbort(ctx,error=>{isConnected(ctx,theReaction)||controller.abort(error)});unabort&&controller.signal.addEventListener(\"abort\",unabort),abortCauseContext.set(ctx.cause,ctx.controller=controller);const computedPromise=asyncComputed(withAbortableSchedule(ctx));computedPromise.catch(noop),promises.set(ctx.cause,computedPromise);const pendingBefore=ctx.get(theAsync.pendingAtom),fulfillCallsBefore=ctx.get(theAsync.onFulfill);let promise=theAsync(ctx,...params);promise.controller.signal.addEventListener(\"abort\",()=>{theReaction.cacheAtom?.options.ignoreAbort||controller.abort(promise.controller.signal.reason)});const cached=pendingBefore===ctx.get(theAsync.pendingAtom),fulfillCalls=ctx.get(theAsync.onFulfill);return cached&&controller.abort(toAbortError(\"cached\")),cached&&fulfillCallsBefore!==fulfillCalls&&(promise=Object.assign(Promise.resolve(fulfillCalls[fulfillCalls.length-1].payload),{controller:controller})),__thenReatomed(ctx,promise,()=>resolved.add(promise),()=>resolved.add(promise)).catch(noop),state?.controller.abort(toAbortError(\"concurrent\")),promise},`${name}._promiseAtom`);onConnect(theAsync,ctx=>ctx.subscribe(promiseAtom,noop)),onConnect(promiseAtom,ctx=>()=>{ctx.get(read=>{const state=read(promiseAtom.__reatom)?.state;state?.controller.abort(ctx.controller.signal.reason),resolved.has(state)||reset(ctx,promiseAtom.__reatom,ctx.controller.signal.reason)})});const theReaction=Object.assign(ctx=>ctx.get((read,actualize)=>{reset(ctx,promiseAtom.__reatom,toAbortError(\"force\")),actualize(ctx,promiseAtom.__reatom,noop);const state=ctx.get(theAsync),payload=state[state.length-1]?.payload;return throwReatomError(!payload,\"unexpectedly failed invalidation. Please, report the issue\"),payload}),theAsync,{promiseAtom:promiseAtom,init:ctx=>ctx.subscribe(promiseAtom,noop),reset:action(ctx=>{reset(ctx,promiseAtom.__reatom,toAbortError(\"reset\"))},`${name}.reset`)});return Object.defineProperty(theAsync,\"_handleCache\",{get:()=>theReaction._handleCache}),theReaction},reset=(ctx,proto,reason)=>ctx.get((read,actualize)=>{if(read(proto)){const{computer:computer}=proto;proto.computer=null;try{actualize(ctx,proto,(patchCtx,patch)=>{patch.state?.controller.abort(reason),patch.pubs=[],patch.state=void 0})}finally{proto.computer=computer}}}),reatomAsyncReaction=reatomResource,isAbortError=isAbort,reatomAsync=(effect,options={})=>{const{name:name=__count(\"async\"),onEffect:onEffectHook,onFulfill:onFulfillHook,onReject:onRejectHook,onSettle:onSettleHook}=\"string\"==typeof options?{name:options}:options,pendingAtom=atom(0,`${name}.pendingAtom`),theAsync=Object.assign(function(){var params=[].slice.call(arguments);return params[0].get((read,actualize)=>{const{state:state}=actualize(params[0],theAsync.__reatom,(ctx,patch)=>{abortCauseContext.set(ctx.cause,ctx.controller=new AbortController);const unabort=onCtxAbort(params[0],error=>{payload?.catch(noop),ctx.controller.abort(error)});unabort&&ctx.controller.signal.addEventListener(\"abort\",unabort),params[0]=withAbortableSchedule(ctx);var payload=theAsync._handleCache?theAsync._handleCache(...params):handleEffect(theAsync,params);__thenReatomed(ctx,payload,void 0,()=>{onReject.__reatom.updateHooks.size>1&&payload.catch(noop)}),patch.state=[...patch.state,{params:params.slice(1),payload:payload}]});return state[state.length-1].payload})},action(effect,name)),onFulfill=action(`${name}.onFulfill`),onReject=action(`${name}.onReject`),onSettle=action(`${name}._onSettle`);return onFulfill.onCall(ctx=>onSettle(ctx)),onReject.onCall(ctx=>onSettle(ctx)),onEffectHook&&theAsync.onCall((ctx,promise,params)=>onEffectHook(ctx,params,promise)),onFulfillHook&&onFulfill.onCall(onFulfillHook),onRejectHook&&onReject.onCall(onRejectHook),onSettleHook&&onSettle.onCall(onSettleHook),onConnect(pendingAtom,ctx=>ctx.subscribe(theAsync,noop)),assign(theAsync,{onFulfill:onFulfill,onReject:onReject,onSettle:onSettle,pendingAtom:pendingAtom})};reatomAsync.from=(effect,options={})=>(effect.name.length>2&&(\"object\"==typeof options?options.name??=effect.name:options??=effect.name),reatomAsync(function(ctx){return effect(...[].slice.call(arguments,1))},options));const withDataAtom=(initState,mapFulfill)=>anAsync=>{if(!anAsync.dataAtom){const dataAtom=anAsync.dataAtom=Object.assign(atom(initState,`${anAsync.__reatom.name}.dataAtom`),{reset:action(ctx=>{dataAtom(ctx,initState)},`${anAsync.__reatom.name}.dataAtom.reset`),mapFulfill:mapFulfill});dataAtom.__reatom.computer=(ctx,state)=>(ctx.spy(anAsync.onFulfill,({payload:payload})=>{state=mapFulfill?mapFulfill(ctx,payload,state):payload}),state),anAsync.onFulfill.onCall(ctx=>{ctx.get(dataAtom)}),onConnect(dataAtom,ctx=>ctx.subscribe(anAsync,noop))}return anAsync},withErrorAtom=(parseError=((ctx,e)=>e instanceof Error?e:new Error(String(e))),{initState:initState,resetTrigger:resetTrigger=\"onEffect\"}={})=>anAsync=>{if(!anAsync.errorAtom){const errorAtomName=`${anAsync.__reatom.name}.errorAtom`,resetTriggerAtom=resetTrigger&&{...anAsync,onEffect:anAsync}[resetTrigger],errorAtom=anAsync.errorAtom=assign(atom(initState,errorAtomName),{reset:action(ctx=>{errorAtom(ctx,initState)},`${errorAtomName}.reset`)});errorAtom.__reatom.computer=(ctx,state)=>(resetTriggerAtom&&ctx.spy(resetTriggerAtom,ctx=>{state=initState}),ctx.spy(anAsync.onReject,({payload:payload})=>{state=parseError(ctx,payload)}),state);const triggers=[anAsync.onReject];resetTriggerAtom&&triggers.push(resetTriggerAtom),triggers.forEach(trigger=>trigger.onChange(ctx=>{ctx.get(errorAtom)}))}return anAsync},withAbort=({strategy:strategy=\"last-in-win\"}={})=>anAsync=>{if(throwReatomError(\"promiseAtom\"in anAsync,'Can\\'t apply \"withAbort\" to \"reatomResource\", it already has its own abort strategy'),!anAsync.abort){const abortControllerAtom=anAsync.abortControllerAtom=atom((ctx,state=new AbortController)=>(ctx.spy(anAsync,({payload:promise})=>{if(\"last-in-win\"===strategy){const controller=state;ctx.schedule(()=>{controller.abort(toAbortError(\"concurrent request (last-in-win)\"))})}if(\"first-in-win\"===strategy&&ctx.get(anAsync.pendingAtom)>1){const error=toAbortError(\"concurrent request (first-in-win)\");return promise.controller.abort(error),void anAsync.onAbort(ctx,error)}const handleAbort=()=>{anAsync.onAbort(ctx,toAbortError(state.signal.reason))};(state=promise.controller).signal.addEventListener(\"abort\",handleAbort);const removeAbortHandler=()=>state.signal.removeEventListener(\"abort\",handleAbort);__thenReatomed(ctx,promise,removeAbortHandler,removeAbortHandler)}),state),`${anAsync.__reatom.name}._abortControllerAtom`);anAsync.onCall(ctx=>{ctx.get(abortControllerAtom)}),anAsync.abort=action((ctx,reason)=>{const controller=ctx.get(abortControllerAtom);if(controller){const error=toAbortError(reason);ctx.schedule(()=>controller.abort(error))}},`${anAsync.__reatom.name}.abort`),anAsync.onAbort=action(`${anAsync.__reatom.name}.onAbort`)}return anAsync},withRetry=({fallbackParams:fallbackParams,onReject:onReject}={})=>anAsync=>{if(!anAsync.paramsAtom){const paramsAtom=anAsync.paramsAtom=atom(fallbackParams,`${anAsync.__reatom.name}._paramsAtom`);anAsync.onCall((ctx,payload,params)=>paramsAtom(ctx,params)),anAsync.retry=action(function(ctx,after=0){try{function _temp2(_result){const result=anAsync(ctx,...params);return topController?.signal.addEventListener(\"abort\",()=>{controller.abort(topController.signal.reason)}),result}throwReatomError(after<0,\"wrong timeout\");const topController=getTopController(ctx.cause),controller=new AbortController;abortCauseContext.set(ctx.cause,controller);let params=ctx.get(anAsync.paramsAtom);anAsync.promiseAtom&&(params??=[]),throwReatomError(!params,\"no cached params\"),retriesAtom(ctx,s=>s+1);const _temp=function(){if(after>0){const asyncStateInstance=ctx.get(anAsync);return Promise.resolve(sleep(after)).then(function(){const abortReason=topController?.signal.aborted&&topController.signal.reason||asyncStateInstance!==ctx.get(anAsync)&&\"outdated retry\";if(abortReason)throw retriesAtom(ctx,0),toAbortError(abortReason)})}}();return Promise.resolve(_temp&&_temp.then?_temp.then(_temp2):_temp2())}catch(e){return Promise.reject(e)}},`${anAsync.__reatom.name}.retry`);const retriesAtom=anAsync.retriesAtom=atom(0,`${anAsync.__reatom.name}.retriesAtom`);onReject&&anAsync.onCall((ctx,payload)=>{__thenReatomed(ctx,payload,()=>retriesAtom(ctx,0),error=>{const timeout=isAbort(error)?-1:onReject(ctx,error,ctx.get(retriesAtom))??-1;timeout<0?retriesAtom(ctx,0):anAsync.retry(ctx,timeout).catch(noop)})})}return anAsync},withRetryAction=withRetry;function mapToAsync(effect,options={}){return sourceAtom=>{const asyncAction=reatomAsync(effect,{...options,name:options.name??`${sourceAtom.__reatom.name}.mapToAsync`});return asyncAction.unstable_unhook=sourceAtom.onChange(asyncAction),asyncAction}}export{isAbortError,mapToAsync,reatomAsync,reatomAsyncReaction,reatomResource,withAbort,withCache,withDataAtom,withErrorAtom,withRetry,withRetryAction,withStatusesAtom};\n//# sourceMappingURL=index.mjs.map\n","import{__root}from\"@reatom/core\";import{isShallowEqual,noop}from\"@reatom/utils\";const getCause=(patch,log=\"\")=>log.length>1e4?`${log} ...`:null!==patch.cause&&patch.cause.proto!==__root?getCause(patch.cause,log+\" <-- \"+(patch.cause.proto.name??\"unnamed\")):log||\"root\",getTimeStampDefault=()=>{let ms=(new Date).getMilliseconds();return ms=ms.toString().padStart(3,\"0\"),`${(new Date).toLocaleTimeString()} ${ms}ms`};let timesPrecision=10**15;const createLogBatched=({debounce:debounce=500,getTimeStamp:getTimeStamp=getTimeStampDefault,limit:limit=5e3,log:log=console.log,domain:domain=\"\",shouldGroup:shouldGroup=!1,shouldLogGraph:shouldLogGraph=!1}={})=>{domain&&(domain=`(${domain}) `);let queue=[],isBatching=!1,batchingStart=Date.now();return msg=>{0!==Object.keys(msg.changes).length&&(isBatching||(isBatching=!0,batchingStart=Date.now()),setTimeout(length=>{if(isBatching=queue.length!==length&&Date.now()-batchingStart0;console.groupCollapsed(`Reatom ${domain}${length} transaction${length>1?\"s\":\"\"}`),shouldLogGraph&&(logsSet=>{const visited=new Set,checkCause=patch=>{!patch.cause||patch.cause.proto===__root||patch.cause.proto.name.startsWith(\"_\")&&patch.cause.proto.name.includes(\"._\")||logsSet.has(patch.cause)||visited.has(patch.cause)||(checkCause(patch.cause),visited.add(patch.cause))};for(const patch of logsSet)checkCause(patch);const logs=[...logsSet],maxDistance=logs.reduce((acc,patch,i)=>Math.max(acc,i-((patch.cause&&logs.indexOf(patch.cause))??i)),0),shiftRatio=20*maxDistance,x=Math.floor(maxDistance/logs.length*shiftRatio)+20;let y=30,body=\"\",width=x;for(const patch of logs){const{isAction:isAction,name:name}=patch.proto,color=isAction?name.endsWith(\".onFulfill\")?\"#E6DC73\":\"#ffff80\":\"#151134\";body+=``,body+=`${name}`,y+=30,width=Math.max(width,x+10*name.length)}logs.forEach(({cause:cause},idx)=>{if(!cause||cause.proto===__root||0===idx)return;const causeIdx=logs.indexOf(cause);if(causeIdx<0)return;const causeY=30*causeIdx+30,shiftX=Math.floor(x-(idx-causeIdx)/logs.length*shiftRatio-10),shiftY=Math.floor(30*(causeIdx+(idx-causeIdx)/2))+30,idxY=30*idx+30,lineX=Math.floor(x-10);body+=``});const dataUrl=`data:image/svg+xml,${encodeURIComponent(`${body}`)}`;console.log(\"%c \",`font-size:${y}px; background: url(${dataUrl}) no-repeat; font-family: monospace;`)})(new Set(queue.flatMap(({changes:changes})=>Object.values(changes)).sort((a,b)=>a.time-b.time).map(({patch:patch})=>patch)));for(const{changes:changes,time:time,error:error}of queue){console.log(`%c ${time}`,`padding-left: calc(50% - ${time.length/2}em); font-size: 0.7rem;`),error&&console.error(error);let inGroup=!1;Object.entries(changes).forEach(([k,change],i,arr)=>{const isAction=\"payload\"in change,style=(isAction?\"background: #ffff80; color: #151134;\":\"background: #151134; color: white;\")+\"font-weight: 400; padding: 0.15em; padding-right: 1ch;\",name=k.replace(/(\\d)*\\./,\"\"),head=name.replace(/\\..*/,\"\"),nextK=arr[i+1]?.[0],nextName=nextK?.replace(/(\\d)*\\./,\"\"),isGroup=nextName?.startsWith(head);shouldGroup&&!inGroup&&isGroup&&isFewTransactions&&(inGroup=!0,console.groupCollapsed(`%c ${head}`,style));const data=isAction?change.payload:change.newState;console.groupCollapsed(`%c ${name}`,style),console.log(change),console.groupEnd(),isAction&&!isShallowEqual(change.params,[data])&&log(...change.params),log(data),shouldGroup&&!isGroup&&inGroup&&(inGroup=!1,console.groupEnd())})}console.log(\"\\n\\n\",\"transactions:\",queue),console.groupEnd(),queue=[]},debounce,queue.push(Object.assign(msg,{time:getTimeStamp()}))))}},connectLogger=(ctx,{devtools:devtools=!1,historyLength:historyLength=10,domain:domain=\"\",log:log=createLogBatched({domain:domain}),showCause:showCause=!0,skip:skip=(()=>!1),skipUnnamed:skipUnnamed=!0}={})=>{const history=new WeakMap;let read;ctx.get(r=>read=r);const devtoolsDispose=noop,ctxUnsubscribe=ctx.subscribe((logs,error)=>{let i=-1;try{const states=new WeakMap,changes={};for(;++i{devtoolsDispose(),ctxUnsubscribe()}};export{connectLogger,createLogBatched,getCause};\n//# sourceMappingURL=index.mjs.map\n","import React from\"react\";import{throwReatomError,isAtom,atom,isAction,action,createCtx,__count}from\"@reatom/core\";import{bind}from\"@reatom/lens\";import{abortCauseContext,withAbortableSchedule}from\"@reatom/effects\";import{toAbortError}from\"@reatom/utils\";const useIsomorphicEffect=\"undefined\"!=typeof document?React.useLayoutEffect:React.useEffect,{__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED}=React,getComponentDebugName=type=>{let Component=__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED?.ReactCurrentOwner?.current?.type,name=Component?.displayName??Component?.name;return name?`Component.${name}.${type}`:`_${type}`};let batch=cb=>cb();const setupBatch=newBatch=>{batch=newBatch},withBatching=ctx=>{let queue=[];return{...ctx,subscribe:(anAtom,cb)=>ctx.subscribe(anAtom,cb&&(value=>Promise.resolve(queue.push(()=>cb(value))).then(length=>length===queue.length&&batch(()=>queue.splice(0).forEach(cb=>cb())))))}},anonFnName=(()=>{}).name,reatomContext=React.createContext(null),useCtx=()=>{let ctx=React.useContext(reatomContext);return throwReatomError(!ctx,\"ctx is not set, you probably forgot to specify the ctx provider\"),ctx};let bindBind=(ctx,fn)=>bind(ctx,fn);const useCtxBind=()=>bind(useCtx(),bindBind),useAtom=(anAtom,userDeps=[],options={})=>{let{name:name,subscribe:subscribe=!0}=\"boolean\"==typeof options?{subscribe:options}:options,ctx=useCtx(),deps=[ctx];isAtom(anAtom)&&deps.push(anAtom);let ref=React.useMemo(()=>{let atomName=getComponentDebugName(name??\"useAtom#\"+typeof anAtom),depsAtom=atom([],`${atomName}._depsAtom`),theAtom=anAtom;isAtom(theAtom)||(theAtom=atom(\"function\"==typeof anAtom?(ctx,state)=>(ctx.spy(depsAtom),ref.anAtom(ctx,state)):anAtom,atomName));let update=\"function\"==typeof theAtom?function(){return batch(()=>theAtom(ctx,...[].slice.call(arguments)))}:void 0;return{theAtom:theAtom,depsAtom:depsAtom,update:update,sub:cb=>ctx.subscribe(theAtom,cb),get:()=>ctx.get(theAtom),subscribe:subscribe,anAtom:anAtom}},deps);ref.anAtom=anAtom;let{theAtom:theAtom,depsAtom:depsAtom,update:update,sub:sub,get:get}=ref;return ctx.get(()=>{if(!isAtom(anAtom)){const prevDeps=ctx.get(depsAtom);(userDeps.length!==prevDeps.length||userDeps.some((dep,i)=>!Object.is(dep,prevDeps[i])))&&(\"function\"==typeof anAtom?depsAtom(ctx,userDeps):update(ctx,anAtom))}return[subscribe?React.useSyncExternalStore(sub,get,get):get(),update,theAtom,ctx]})},useAtomCreator=(creator,deps=[],options)=>useAtom(React.useMemo(creator,deps),[],options),useUpdate=(cb,deps)=>{const ctx=useCtx();return React.useEffect(()=>{const call=ctx=>{cb(ctx,...deps.map(thing=>isAtom(thing)?ctx.get(thing):thing))};return call(ctx),deps.forEach((thing,i)=>isAtom(thing)&&(thing.__reatom.updateHooks??=new Set).add(call)),()=>deps.forEach((thing,i)=>isAtom(thing)&&thing.__reatom.updateHooks.delete(call))},deps.concat(ctx)),null},useAction=(fn,deps=[],name)=>{throwReatomError(\"function\"!=typeof fn,'invalid \"fn\"'),deps??=[];let ctx=useCtx();deps.push(ctx),isAction(fn)&&deps.push(fn);let ref=React.useMemo(()=>{let theAction=isAction(fn)?fn:action(function(){return ref.fn(...[].slice.call(arguments))},name??getComponentDebugName(\"useAction\"));return{fn:fn,cb:function(){return batch(()=>theAction(ctx,...[].slice.call(arguments)))}}},deps);return useIsomorphicEffect(()=>{ref.fn=fn}),ref.cb},useCreateCtx=extension=>{const ctxRef=React.useRef(null);return ctxRef.current||(ctxRef.current=createCtx(),extension?.(ctxRef.current)),ctxRef.current},isSuspense=thing=>thing instanceof Promise||thing instanceof Error&&thing.message.startsWith(\"Suspense Exception\"),reatomComponent=(Component,name)=>{name=name?`Component.${name}`:Component.name!==anonFnName?Component.name:__count(\"Component\");let rendering=!1;return Object.defineProperty(props=>{const{controller:controller,propsAtom:propsAtom,renderAtom:renderAtom}=React.useMemo(()=>{const controller=new AbortController,propsAtom=atom({},`${name}._propsAtom`),renderAtom=atom((ctx,state)=>{const{pubs:pubs}=ctx.cause,props=ctx.spy(propsAtom);if(rendering){const initCtxRef=React.useRef();if(!initCtxRef.current){const initCtx=initCtxRef.current=withAbortableSchedule(ctx);abortCauseContext.set(initCtx.cause,controller)}const initCtx=initCtxRef.current;props.ctx={get:ctx.get,spy:ctx.spy,schedule:ctx.schedule,subscribe:ctx.subscribe,cause:initCtx.cause,bind:bind(initCtx,bindBind)};try{const result=Component(props);return\"object\"!=typeof result||null===result||Symbol.iterator in result?React.createElement(React.Fragment,null,result):result}catch(error){if(isSuspense(error))return error;throw error}}for(let i=1;i{const initCause=ctx.get(propsAtom).ctx.cause;let finalController=controller;finalController.signal.aborted&&(finalController=new AbortController),abortCauseContext.set(initCause,finalController);const unsubscribe=ctx.subscribe(renderAtom,element=>{element.REATOM_DEPS_CHANGE&&forceUpdate(element)});return()=>{unsubscribe(),finalController.abort(toAbortError(`${name} unmount`))}},[ctx,renderAtom]);const result=ctx.get(()=>{propsAtom(ctx,{...props});try{return rendering=!0,ctx.get(renderAtom)}finally{rendering=!1}});if(isSuspense(result))throw result;return result},\"name\",{value:name})},promisesValues=new WeakMap,useAtomPromise=theAtom=>{const forceUpdate=React.useReducer(s=>s+1,0)[1],promise=useAtom(theAtom)[0];promisesValues.has(promise)||promisesValues.set(promise,promise.then(v=>{promisesValues.set(promise,v),forceUpdate()}));const value=promisesValues.get(promise);if(value instanceof Promise)throw value;return value};export{getComponentDebugName,reatomComponent,reatomContext,setupBatch,useAction,useAtom,useAtomCreator,useAtomPromise,useCreateCtx,useCtx,useCtxBind,useIsomorphicEffect,useUpdate,withBatching};\n//# sourceMappingURL=index.mjs.map\n"],"names":["impossibleValue","callSafely","fn","err","throwReatomError","condition","message","isAtom","thing","isAction","isConnected","cache","assertFunction","getRootCause","cause","isBrowser","CTX","initiations","createCtx","callLateEffect","callNearEffect","restrictMultipleContexts","caches","read","proto","logsListeners","nearEffects","lateEffects","inTr","trError","trUpdates","trRollbacks","trLogs","trNearEffectsStart","trLateEffectsStart","effectsProcessing","walkNearEffects","effect","ctx","walkLateEffects","addPatch","state","pubs","subs","listeners","enqueueComputers","subProto","subCache","disconnect","pubPatch","parentParent","connect","wasConnected","parentParentPatch","actualize","updater","patch","actual","updating","isInt","__root","patchCtx","isDepsChanged","newPubs","depProto","cb","depPatch","prevDepPatch","isDepChanged","call","dep","error","hook","atomOrCb","start","result","i","commit","log","e","step","res","rej","atom","lastState","listener","pubCache","__count","name","pipe","acc","onChange","onCall","params","payload","initState","theAtom","update","computer","experimental_PLUGINS","action","v","actionAtom","pushUnique","list","el","isString","isObject","isFunction","isActionCreator","getState","store","defaultStore","spyChange","anAtom","handler","isChanged","newState","prevState","atomsCount","createAtom","dependencies","reducer","options","v3atom","id","trackedTypes","types","actionCreators","externalActions","type","actionCreator","v3.action","cacheReducer","create","v3ctx","rootCause","ctxs","targetAtom","reaction","ac","prev","next","transaction","v3.atom","createStore","callSafety","v3.callSafely","v3.createCtx","actions","targets","target","c","u","n","o","a","r","f","s","t","l","m","p","b","noop","isShallowEqual","is","equal","aIter","bIter","aNext","bNext","k","isDeepEqual","visited","assign","merge","toString","toAbortError","reason","throwIfAborted","controller","isAbort","setTimeout","intervalId","MAX_SAFE_TIMEOUT","_catch","body","recover","CauseContext","abortCauseContext","getTopController","onCtxAbort","cleanup","CHAINS","__thenReatomed","origin","onFulfill","onReject","chain","promise","value","withAbortableSchedule","schedule","_this","resolve","reject","unabort","_ctx","_temp3","_temp2","_spawn","spawn","args","isSameCtx","ctx1","ctx2","addOnConnect","addOnDisconnect","_onConnect","onConnect","connectHook","cleanupHook","disconnectHooks","connectHooks","initializations","withAssign","getProps","reatomMap","getOrCreate","key","creator","valuePrev","handleEffect","anAsync","shouldPending","shouldFulfill","shouldReject","pendingAtom","NOOP_TIMEOUT_ID","withCache","ignoreAbort","length","paramsLength","staleTime","swrOptions","withPersist","paramsToKey","isEqual","swr","find","cacheAtom","cached","findLatestWithValue","latestCached","deleteOldest","oldestCached","oldestKey","planCleanup","time","clearTimeoutId","latest","snapshot","rec","swrPendingAtom","handlePromise","isSame","unstable_fn","_temp","paramsKey","prevController","iniState","memo","asyncStatusesInitState","withStatusesAtom","relatedPromisesAtom","lastSettledStatusAtom","statusesAtom","pending","statuses","isPending","lastSettledStatus","resolved","reatomResource","asyncComputed","promises","theAsync","reatomAsync","promiseAtom","theReaction","computedPromise","pendingBefore","fulfillCallsBefore","fulfillCalls","reset","onEffectHook","onFulfillHook","onRejectHook","onSettleHook","onSettle","withDataAtom","mapFulfill","dataAtom","withErrorAtom","parseError","resetTrigger","errorAtomName","resetTriggerAtom","errorAtom","triggers","trigger","withAbort","strategy","abortControllerAtom","handleAbort","removeAbortHandler","getCause","getTimeStampDefault","ms","timesPrecision","createLogBatched","debounce","getTimeStamp","limit","domain","shouldGroup","shouldLogGraph","queue","isBatching","batchingStart","msg","isFewTransactions","logsSet","checkCause","logs","maxDistance","shiftRatio","x","y","width","color","idx","causeIdx","causeY","shiftX","shiftY","idxY","lineX","dataUrl","changes","inGroup","change","arr","style","head","nextK","nextName","isGroup","data","connectLogger","devtools","historyLength","showCause","skip","skipUnnamed","history","ctxUnsubscribe","states","oldCache","oldState","atomHistory","changeMsg","useIsomorphicEffect","React","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","getComponentDebugName","Component","batch","reatomContext","useCtx","useAtom","userDeps","subscribe","deps","ref","atomName","depsAtom","sub","get","prevDeps","useAction","theAction"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9]}