@but212/atom-effect-jquery 0.11.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- (function(b,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("jquery")):typeof define=="function"&&define.amd?define(["exports","jquery"],u):(b=typeof globalThis<"u"?globalThis:b||self,u(b.AtomEffectJQuery={},b.jQuery))})(this,(function(b,u){"use strict";const He={ONE_SECOND_MS:1e3},te={IDLE:"idle",PENDING:"pending",RESOLVED:"resolved",REJECTED:"rejected"},se={DISPOSED:1,EXECUTING:2},d={DIRTY:1,IDLE:2,PENDING:4,RESOLVED:8,REJECTED:16,RECOMPUTING:32,HAS_ERROR:64},K={SYNC:1,NOTIFICATION_SCHEDULED:2},V={MAX_EXECUTIONS_PER_SECOND:1e3,MAX_EXECUTIONS_PER_EFFECT:100,MAX_EXECUTIONS_PER_FLUSH:1e4,MAX_FLUSH_ITERATIONS:1e3,MIN_FLUSH_ITERATIONS:10},ye={MAX_DEPENDENCIES:1e3,WARN_INFINITE_LOOP:!0},M=1073741823,fe=1<<19,T=typeof process<"u"&&process.env&&process.env.NODE_ENV!=="production",Ye=Object.freeze([]);class O extends Error{constructor(e,s=null,n=!0){super(e),this.name="AtomError",this.cause=s,this.recoverable=n,this.timestamp=new Date}}class P extends O{constructor(e,s=null){super(e,s,!0),this.name="ComputedError"}}class L extends O{constructor(e,s=null){super(e,s,!1),this.name="EffectError"}}class ne extends O{constructor(e,s=null){super(e,s,!1),this.name="SchedulerError"}}const E={COMPUTED_MUST_BE_FUNCTION:"Computed function must be a function",COMPUTED_ASYNC_PENDING_NO_DEFAULT:"Async computation is pending. No default value provided",COMPUTED_COMPUTATION_FAILED:"Computed computation failed",COMPUTED_ASYNC_COMPUTATION_FAILED:"Async computed computation failed",ATOM_SUBSCRIBER_MUST_BE_FUNCTION:"Subscription listener must be a function or Subscriber object",ATOM_INDIVIDUAL_SUBSCRIBER_FAILED:"Error during individual atom subscriber execution",EFFECT_MUST_BE_FUNCTION:"Effect function must be a function",EFFECT_EXECUTION_FAILED:"Effect execution failed",EFFECT_CLEANUP_FAILED:"Effect cleanup function execution failed",CALLBACK_ERROR_IN_ERROR_HANDLER:"Error occurred during onError callback execution"},de=Symbol("debugName"),Je=Symbol("id"),_e=Symbol("type"),De=Symbol("noDefaultValue");function Ke(t){return"dependencies"in t&&Array.isArray(t.dependencies)}let Ie=0;function Ce(t,e,s){if(t._visitedEpoch!==s){if(t._visitedEpoch=s,t===e)throw new P("Indirect circular dependency detected");if(Ke(t)){const n=t.dependencies;for(let i=0;i<n.length;i++){const r=n[i];r&&Ce(r,e,s)}}}}const A={enabled:typeof process<"u"&&process.env?.NODE_ENV==="development",maxDependencies:ye.MAX_DEPENDENCIES,warnInfiniteLoop:ye.WARN_INFINITE_LOOP,warn(t,e){this.enabled&&t&&console.warn(`[Atom Effect] ${e}`)},checkCircular(t,e){if(t===e)throw new P("Direct circular dependency detected");this.enabled&&(Ie++,Ce(t,e,Ie))},attachDebugInfo(t,e,s){if(!this.enabled)return;const n=t;n[de]=`${e}_${s}`,n[Je]=s,n[_e]=e},getDebugName(t){if(t!=null&&de in t)return t[de]},getDebugType(t){if(t!=null&&_e in t)return t[_e]}};let We=1;const Ze=()=>We++;class ve{constructor(){this.id=Ze()&M,this.flags=0,this.version=0}rotatePhase(){return this.version=this.version+1&M,this.version}getShift(e){return this.version-e&M}}class Te extends ve{constructor(){super(),this._lastSeenEpoch=-1}subscribe(e){if(typeof e=="object"&&e!==null&&"execute"in e)return this._objectSubscribers.add(e);if(typeof e!="function")throw new O(E.ATOM_SUBSCRIBER_MUST_BE_FUNCTION);return this._functionSubscribers.add(e)}subscriberCount(){return this._functionSubscribers.size+this._objectSubscribers.size}_notifySubscribers(e,s){this._functionSubscribers.forEachSafe(n=>n(e,s),n=>console.error(new O(E.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,n))),this._objectSubscribers.forEachSafe(n=>n.execute(),n=>console.error(new O(E.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,n)))}}let ie=0;function Ae(){return ie=ie+1&M||1,ie}function $e(){return ie}let re=0,pe=0,oe=!1;function Ne(){return oe?(T&&console.warn("Warning: startFlush() called during flush - ignored to prevent infinite loop detection bypass"),!1):(oe=!0,re=re+1&M,pe=0,!0)}function Re(){oe=!1}function et(){return oe?++pe:0}class tt{constructor(){this.queueA=[],this.queueB=[],this.queue=this.queueA,this.queueSize=0,this.urgentQueueA=[],this.urgentQueueB=[],this.urgentQueue=this.urgentQueueA,this.urgentQueueSize=0,this._epoch=0,this.isProcessing=!1,this.isBatching=!1,this.batchDepth=0,this.batchQueue=[],this.batchQueueSize=0,this.isFlushingSync=!1,this.maxFlushIterations=V.MAX_FLUSH_ITERATIONS}get phase(){return this.isProcessing||this.isFlushingSync?2:this.isBatching?1:0}schedule(e,s){if(typeof e!="function")throw new ne("Scheduler callback must be a function");if(e._nextEpoch!==this._epoch)if(e._nextEpoch=this._epoch,this.isBatching||this.isFlushingSync)this.batchQueue[this.batchQueueSize++]=e;else{const n=this._calculateUrgency(e,s);this.urgentQueue[this.urgentQueueSize]=e,this.queue[this.queueSize]=e,this.urgentQueueSize+=n,this.queueSize+=n^1,this.isProcessing||this.flush()}}_calculateUrgency(e,s){if(!s||e._cachedVersion===void 0)return 0;const n=s.getShift(e._cachedVersion);return fe-1-n>>>31&1}flush(){this.isProcessing||this.queueSize===0&&this.urgentQueueSize===0||(this.isProcessing=!0,queueMicrotask(()=>{try{if(this.queueSize===0&&this.urgentQueueSize===0)return;const e=Ne();this._drainQueue(),e&&Re()}finally{this.isProcessing=!1,(this.queueSize>0||this.urgentQueueSize>0)&&!this.isBatching&&this.flush()}}))}flushSync(){this.isFlushingSync=!0;const e=Ne();try{this._mergeBatchQueue(),this._drainQueue()}finally{this.isFlushingSync=!1,e&&Re()}}_mergeBatchQueue(){if(this._epoch++,this.batchQueueSize>0){for(let e=0;e<this.batchQueueSize;e++){const s=this.batchQueue[e];s&&s._nextEpoch!==this._epoch&&(s._nextEpoch=this._epoch,this.queue[this.queueSize++]=s)}this.batchQueueSize=0}}_drainQueue(){let e=0;for(;this.urgentQueueSize>0||this.queueSize>0;){if(++e>this.maxFlushIterations){this._handleFlushOverflow();break}this.urgentQueueSize>0&&this._processUrgentQueue(),this.queueSize>0&&this._processCurrentQueue(),this._mergeBatchQueue()}}_processUrgentQueue(){const e=this.urgentQueue,s=this.urgentQueueSize;this.urgentQueue=this.urgentQueue===this.urgentQueueA?this.urgentQueueB:this.urgentQueueA,this.urgentQueueSize=0,this._epoch++,this._processJobs(e,s)}_processCurrentQueue(){const e=this.queue,s=this.queueSize;this.queue=this.queue===this.queueA?this.queueB:this.queueA,this.queueSize=0,this._epoch++,this._processJobs(e,s)}_handleFlushOverflow(){console.error(new ne(`Maximum flush iterations (${this.maxFlushIterations}) exceeded. Possible infinite loop.`)),this.queueSize=0,this.queue.length=0,this.urgentQueueSize=0,this.urgentQueue.length=0,this.batchQueueSize=0}_processJobs(e,s){for(let n=0;n<s;n++)try{e[n]?.()}catch(i){console.error(new ne("Error occurred during scheduler execution",i))}e.length=0}startBatch(){this.batchDepth++,this.isBatching=!0}endBatch(){this.batchDepth=Math.max(0,this.batchDepth-1),this.batchDepth===0&&(this.flushSync(),this.isBatching=!1)}setMaxFlushIterations(e){if(e<V.MIN_FLUSH_ITERATIONS)throw new ne(`Max flush iterations must be at least ${V.MIN_FLUSH_ITERATIONS}`);this.maxFlushIterations=e}}const W=new tt;function Ue(t){if(typeof t!="function")throw new O("Batch callback must be a function");W.startBatch();try{return t()}finally{W.endBatch()}}class st{constructor(){this.current=null}run(e,s){const n=this.current;this.current=e;try{return s()}finally{this.current=n}}getCurrent(){return this.current}}const B=new st;function be(t){if(typeof t!="function")throw new O("Untracked callback must be a function");const e=B.current;B.current=null;try{return t()}finally{B.current=e}}class ce{constructor(){this.subscribers=null}add(e){if(this.subscribers||(this.subscribers=[]),this.subscribers.indexOf(e)!==-1)return()=>{};this.subscribers.push(e);let s=!1;return()=>{s||(s=!0,this.remove(e))}}remove(e){if(!this.subscribers)return!1;const s=this.subscribers.indexOf(e);if(s===-1)return!1;const n=this.subscribers.length-1;return s!==n&&(this.subscribers[s]=this.subscribers[n]),this.subscribers.pop(),!0}has(e){return this.subscribers?this.subscribers.indexOf(e)!==-1:!1}forEach(e){if(this.subscribers)for(let s=0;s<this.subscribers.length;s++)e(this.subscribers[s],s)}forEachSafe(e,s){if(this.subscribers)for(let n=0;n<this.subscribers.length;n++)try{e(this.subscribers[n],n)}catch(i){s?s(i):console.error("[SubscriberManager] Error in subscriber callback:",i)}}get size(){return this.subscribers?.length??0}get hasSubscribers(){return this.subscribers!==null&&this.subscribers.length>0}clear(){this.subscribers=null}toArray(){return this.subscribers?[...this.subscribers]:[]}}class ge{constructor(){this.pool=[],this.maxPoolSize=50,this.maxReusableCapacity=256,this.stats=T?{acquired:0,released:0,rejected:{frozen:0,tooLarge:0,poolFull:0}}:null}acquire(){return T&&this.stats&&this.stats.acquired++,this.pool.pop()??[]}release(e,s){if(!(s&&e===s)){if(Object.isFrozen(e)){T&&this.stats&&this.stats.rejected.frozen++;return}if(e.length>this.maxReusableCapacity){T&&this.stats&&this.stats.rejected.tooLarge++;return}if(this.pool.length>=this.maxPoolSize){T&&this.stats&&this.stats.rejected.poolFull++;return}e.length=0,this.pool.push(e),T&&this.stats&&this.stats.released++}}getStats(){if(!T||!this.stats)return null;const{acquired:e,released:s,rejected:n}=this.stats,i=n.frozen+n.tooLarge+n.poolFull;return{acquired:e,released:s,rejected:n,leaked:e-s-i,poolSize:this.pool.length}}reset(){this.pool.length=0,T&&this.stats&&(this.stats.acquired=0,this.stats.released=0,this.stats.rejected={frozen:0,tooLarge:0,poolFull:0})}}const y=Object.freeze([]),N=Object.freeze([]),D=Object.freeze([]),j=new ge,q=new ge,R=new ge;function Ee(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t&&typeof t.subscribe=="function"}function Oe(t){if(A.enabled&&(t==null||typeof t=="object")){const e=A.getDebugType(t);if(e)return e==="computed"}return Ee(t)&&"invalidate"in t&&typeof t.invalidate=="function"}function xe(t){return t!=null&&typeof t.then=="function"}function nt(t){return typeof t=="object"&&t!==null}function it(t){return(typeof t=="object"||typeof t=="function")&&t!==null&&typeof t.addDependency=="function"}function rt(t){return typeof t=="function"&&typeof t.addDependency!="function"}function ot(t){return nt(t)&&typeof t.execute=="function"}function we(t,e,s,n){if(e){if(it(e)){e.addDependency(t);return}if(rt(e)){s.add(e);return}ot(e)&&n.add(e)}}function ct(t,e,s,n){if(e!==y&&s!==N)for(let r=0;r<e.length;r++){const o=e[r];o&&(o._tempUnsub=s[r])}const i=q.acquire();i.length=t.length;for(let r=0;r<t.length;r++){const o=t[r];o&&(o._tempUnsub?(i[r]=o._tempUnsub,o._tempUnsub=void 0):(A.checkCircular(o,n),i[r]=o.subscribe(n)))}if(e!==y)for(let r=0;r<e.length;r++){const o=e[r];o?._tempUnsub&&(o._tempUnsub(),o._tempUnsub=void 0)}return s!==N&&q.release(s),i}class ut extends Te{constructor(e,s){super(),this._functionSubscribersStore=null,this._objectSubscribersStore=null,this._value=e,s&&(this.flags|=K.SYNC),A.attachDebugInfo(this,"atom",this.id)}get _functionSubscribers(){return this._functionSubscribersStore||(this._functionSubscribersStore=new ce),this._functionSubscribersStore}get _objectSubscribers(){return this._objectSubscribersStore||(this._objectSubscribersStore=new ce),this._objectSubscribersStore}get value(){const e=B.current;return e&&we(this,e,this._functionSubscribers,this._objectSubscribers),this._value}set value(e){if(Object.is(this._value,e))return;const s=this._value;this._value=e,this.rotatePhase();const n=this._functionSubscribersStore?.hasSubscribers,i=this._objectSubscribersStore?.hasSubscribers;(n||i)&&this._scheduleNotification(s)}_scheduleNotification(e){if(this.flags&K.NOTIFICATION_SCHEDULED||(this._pendingOldValue=e,this.flags|=K.NOTIFICATION_SCHEDULED),this.flags&K.SYNC&&!W.isBatching){this._flushNotifications();return}this._notifyTask||(this._notifyTask=()=>this._flushNotifications()),W.schedule(this._notifyTask)}_flushNotifications(){if(!(this.flags&K.NOTIFICATION_SCHEDULED))return;const e=this._pendingOldValue,s=this._value;this._pendingOldValue=void 0,this.flags&=-3,this._notifySubscribers(s,e)}_notifySubscribers(e,s){this._functionSubscribersStore&&this._functionSubscribersStore.forEachSafe(n=>n(e,s)),this._objectSubscribersStore&&this._objectSubscribersStore.forEachSafe(n=>n.execute())}peek(){return this._value}dispose(){this._functionSubscribersStore?.clear(),this._objectSubscribersStore?.clear(),this._value=void 0,this._notifyTask=void 0}}function ke(t,e={}){return new ut(t,e.sync??!1)}function Z(t,e,s){if(t instanceof TypeError)return new e(`Type error (${s}): ${t.message}`,t);if(t instanceof ReferenceError)return new e(`Reference error (${s}): ${t.message}`,t);if(t instanceof O)return t;const n=t instanceof Error?t.message:String(t),i=t instanceof Error?t:null;return new e(`Unexpected error (${s}): ${n}`,i)}const Fe=d.RESOLVED|d.PENDING|d.REJECTED,ue=Array(Fe+1).fill(te.IDLE);ue[d.RESOLVED]=te.RESOLVED,ue[d.PENDING]=te.PENDING,ue[d.REJECTED]=te.REJECTED;class Me extends Te{constructor(e,s={}){if(typeof e!="function")throw new P(E.COMPUTED_MUST_BE_FUNCTION);if(super(),this._cachedErrors=null,this._errorCacheEpoch=-1,this._asyncStartAggregateVersion=0,this._asyncRetryCount=0,this.MAX_ASYNC_RETRIES=3,this._value=void 0,this.flags=d.DIRTY|d.IDLE,this._error=null,this._promiseId=0,this._equal=s.equal??Object.is,this._fn=e,this._defaultValue="defaultValue"in s?s.defaultValue:De,this._hasDefaultValue=this._defaultValue!==De,this._onError=s.onError??null,this.MAX_PROMISE_ID=Number.MAX_SAFE_INTEGER-1,this._functionSubscribersStore=new ce,this._objectSubscribersStore=new ce,this._dependencies=y,this._dependencyVersions=D,this._unsubscribes=N,this._notifyJob=()=>{this._functionSubscribersStore.forEachSafe(n=>n(),n=>console.error(n)),this._objectSubscribersStore.forEachSafe(n=>n.execute(),n=>console.error(n))},this._trackable=Object.assign(()=>this._markDirty(),{addDependency:n=>{}}),A.attachDebugInfo(this,"computed",this.id),A.enabled){const n=this;n.subscriberCount=()=>this._functionSubscribersStore.size+this._objectSubscribersStore.size,n.isDirty=()=>this._isDirty(),n.dependencies=this._dependencies,n.stateFlags=this._getFlagsAsString()}if(s.lazy===!1)try{this._recompute()}catch{}}get _functionSubscribers(){return this._functionSubscribersStore}get _objectSubscribers(){return this._objectSubscribersStore}get value(){return this._registerTracking(),this._computeValue()}peek(){return this._value}get state(){return this._registerTracking(),this._getAsyncState()}get hasError(){if(this._registerTracking(),this._isRejected())return!0;for(let e=0;e<this._dependencies.length;e++){const s=this._dependencies[e];if(s&&"hasError"in s&&s.hasError)return!0}return!1}get isValid(){return!this.hasError}get errors(){if(this._registerTracking(),!this.hasError)return Ye;const e=$e();if(this._errorCacheEpoch===e&&this._cachedErrors!==null)return this._cachedErrors;const s=new Set;this._error&&s.add(this._error);for(let n=0;n<this._dependencies.length;n++){const i=this._dependencies[n];if(i&&"errors"in i){const r=i.errors;for(let o=0;o<r.length;o++){const c=r[o];c&&s.add(c)}}}return this._cachedErrors=Object.freeze([...s]),this._errorCacheEpoch=e,this._cachedErrors}get lastError(){return this._registerTracking(),this._error}get isPending(){return this._registerTracking(),this._isPending()}get isResolved(){return this._registerTracking(),this._isResolved()}invalidate(){this._markDirty(),this._dependencyVersions!==D&&(R.release(this._dependencyVersions),this._dependencyVersions=D),this._errorCacheEpoch=-1,this._cachedErrors=null}dispose(){if(this._unsubscribes!==N){for(let e=0;e<this._unsubscribes.length;e++){const s=this._unsubscribes[e];s&&s()}q.release(this._unsubscribes),this._unsubscribes=N}this._dependencies!==y&&(j.release(this._dependencies),this._dependencies=y),this._dependencyVersions!==D&&(R.release(this._dependencyVersions),this._dependencyVersions=D),this._functionSubscribersStore.clear(),this._objectSubscribersStore.clear(),this.flags=d.DIRTY|d.IDLE,this._error=null,this._value=void 0,this._promiseId=(this._promiseId+1)%this.MAX_PROMISE_ID,this._cachedErrors=null,this._errorCacheEpoch=-1}_isDirty(){return(this.flags&d.DIRTY)!==0}_setDirty(){this.flags|=d.DIRTY}_clearDirty(){this.flags&=-2}_isIdle(){return(this.flags&d.IDLE)!==0}_setIdle(){this.flags|=d.IDLE,this.flags&=-29}_isPending(){return(this.flags&d.PENDING)!==0}_setPending(){this.flags|=d.PENDING,this.flags&=-27}_isResolved(){return(this.flags&d.RESOLVED)!==0}_setResolved(){this.flags|=d.RESOLVED,this.flags&=-87}_isRejected(){return(this.flags&d.REJECTED)!==0}_setRejected(){this.flags|=d.REJECTED|d.HAS_ERROR,this.flags&=-15}_isRecomputing(){return(this.flags&d.RECOMPUTING)!==0}_setRecomputing(e){const s=d.RECOMPUTING;this.flags=this.flags&~s|-Number(e)&s}_getAsyncState(){return ue[this.flags&Fe]}_getFlagsAsString(){const e=[];return this._isDirty()&&e.push("DIRTY"),this._isIdle()&&e.push("IDLE"),this._isPending()&&e.push("PENDING"),this._isResolved()&&e.push("RESOLVED"),this._isRejected()&&e.push("REJECTED"),this._isRecomputing()&&e.push("RECOMPUTING"),e.join(" | ")}_computeValue(){return this._isRecomputing()?this._value:((this._isDirty()||this._isIdle())&&this._recompute(),this._isPending()?this._handlePending():this._isRejected()?this._handleRejected():this._value)}_recompute(){if(this._isRecomputing())return;this._setRecomputing(!0);const e=this._prepareComputationContext();let s=!1;try{const n=B.run(this._trackable,this._fn);this._commitDependencies(e),s=!0,xe(n)?this._handleAsyncComputation(n):this._handleSyncResult(n)}catch(n){if(!s)try{this._commitDependencies(e),s=!0}catch(i){this._handleComputationError(i)}this._handleComputationError(n)}finally{this._cleanupContext(e,s),this._setRecomputing(!1)}}_prepareComputationContext(){const e=this._dependencies,s=this._dependencyVersions,n=j.acquire(),i=R.acquire(),r=Ae(),o={depCount:0},c=_=>{_._lastSeenEpoch!==r&&(_._lastSeenEpoch=r,o.depCount<n.length?(n[o.depCount]=_,i[o.depCount]=_.version):(n.push(_),i.push(_.version)),o.depCount++)},h=this._trackable.addDependency;return this._trackable.addDependency=c,{prevDeps:e,prevVersions:s,nextDeps:n,nextVersions:i,originalAdd:h,state:o}}_commitDependencies(e){const{nextDeps:s,nextVersions:n,state:i,prevDeps:r}=e;s.length=i.depCount,n.length=i.depCount,this._unsubscribes=ct(s,r,this._unsubscribes,this),this._dependencies=s,this._dependencyVersions=n}_cleanupContext(e,s){this._trackable.addDependency=e.originalAdd,s?(e.prevDeps!==y&&j.release(e.prevDeps),e.prevVersions!==D&&R.release(e.prevVersions)):(j.release(e.nextDeps),R.release(e.nextVersions))}_getAggregateShift(){let e=0;const s=this._dependencies,n=this._dependencyVersions;for(let i=0;i<s.length;i++){const r=s[i],o=n[i];r&&o!==void 0&&(e=e+r.getShift(o)&M)}return e}isUrgent(){return this._getAggregateShift()>=fe}_handleSyncResult(e){(!this._isResolved()||!this._equal(this._value,e))&&this.rotatePhase(),this._value=e,this._clearDirty(),this._setResolved(),this._error=null,this._setRecomputing(!1),this._cachedErrors=null,this._errorCacheEpoch=-1}_handleAsyncComputation(e){this._setPending(),this._clearDirty(),this._notifyJob(),this._asyncStartAggregateVersion=this._captureVersionSnapshot(),this._asyncRetryCount=0,this._promiseId=this._promiseId>=this.MAX_PROMISE_ID?1:this._promiseId+1;const s=this._promiseId;e.then(n=>{if(s!==this._promiseId)return;const i=this._captureVersionSnapshot()-this._asyncStartAggregateVersion&M;if(fe-1-i>>>31&1){if(this._asyncRetryCount<this.MAX_ASYNC_RETRIES){this._asyncRetryCount++,this._markDirty();return}const r=new P(`Async drift exceeded threshold after ${this.MAX_ASYNC_RETRIES} retries. Dependencies changed too rapidly for stable computation.`);this._handleAsyncRejection(r);return}this._handleAsyncResolution(n)}).catch(n=>{s===this._promiseId&&this._handleAsyncRejection(n)})}_captureVersionSnapshot(){let e=0;const s=this._dependencies;for(let n=0;n<s.length;n++){const i=s[n];i&&(e=e+i.version&M)}return e}_handleAsyncResolution(e){(!this._isResolved()||!this._equal(this._value,e))&&this.rotatePhase(),this._value=e,this._clearDirty(),this._setResolved(),this._error=null,this._setRecomputing(!1),this._cachedErrors=null,this._errorCacheEpoch=-1,this._notifyJob()}_handleAsyncRejection(e){const s=Z(e,P,E.COMPUTED_ASYNC_COMPUTATION_FAILED);if(!this._isRejected()&&this.rotatePhase(),this._error=s,this._setRejected(),this._clearDirty(),this._setRecomputing(!1),this._onError)try{this._onError(s)}catch(n){console.error(E.CALLBACK_ERROR_IN_ERROR_HANDLER,n)}this._notifyJob()}_handleComputationError(e){const s=Z(e,P,E.COMPUTED_COMPUTATION_FAILED);if(this._error=s,this._setRejected(),this._clearDirty(),this._setRecomputing(!1),this._onError)try{this._onError(s)}catch(n){console.error(E.CALLBACK_ERROR_IN_ERROR_HANDLER,n)}throw s}_handlePending(){if(this._hasDefaultValue)return this._defaultValue;throw new P(E.COMPUTED_ASYNC_PENDING_NO_DEFAULT)}_handleRejected(){if(this._error?.recoverable&&this._hasDefaultValue)return this._defaultValue;throw this._error}execute(){this._markDirty()}_markDirty(){this._isRecomputing()||this._isDirty()||(this._setDirty(),this._notifyJob())}_registerTracking(){we(this,B.getCurrent(),this._functionSubscribersStore,this._objectSubscribersStore)}}Object.freeze(Me.prototype);function je(t,e={}){return new Me(t,e)}class ht extends ve{constructor(e,s={}){super(),this.run=()=>{if(this.isDisposed)throw new L(E.EFFECT_MUST_BE_FUNCTION);this._dependencyVersions!==D&&(R.release(this._dependencyVersions),this._dependencyVersions=D),this.execute()},this.dispose=()=>{if(!this.isDisposed){if(this._setDisposed(),this._safeCleanup(),this._unsubscribes!==N){for(let i=0;i<this._unsubscribes.length;i++){const r=this._unsubscribes[i];r&&r()}q.release(this._unsubscribes),this._unsubscribes=N}this._dependencies!==y&&(j.release(this._dependencies),this._dependencies=y),this._dependencyVersions!==D&&(R.release(this._dependencyVersions),this._dependencyVersions=D)}},this.addDependency=i=>{if(this.isExecuting&&this._nextDeps&&this._nextUnsubs&&this._nextVersions){const r=this._currentEpoch;if(i._lastSeenEpoch===r)return;i._lastSeenEpoch=r,this._nextDeps.push(i),this._nextVersions.push(i.version),i._tempUnsub?(this._nextUnsubs.push(i._tempUnsub),i._tempUnsub=void 0):this._subscribeTo(i)}},this.execute=()=>{if(this.isDisposed||this.isExecuting||!this._shouldExecute())return;this._checkInfiniteLoop(),this._setExecuting(!0),this._safeCleanup();const i=this._prepareEffectContext();let r=!1;try{const o=B.run(this,this._fn);this._commitEffect(i),r=!0,this._checkLoopWarnings(),xe(o)?o.then(c=>{!this.isDisposed&&typeof c=="function"&&(this._cleanup=c)}).catch(c=>{this._handleExecutionError(c)}):this._cleanup=typeof o=="function"?o:null}catch(o){r=!0,this._handleExecutionError(o),this._cleanup=null}finally{this._cleanupEffect(i,r),this._setExecuting(!1)}},this._currentEpoch=-1,this._lastFlushEpoch=-1,this._executionsInEpoch=0,this._fn=e,this._sync=s.sync??!1,this._maxExecutions=s.maxExecutionsPerSecond??V.MAX_EXECUTIONS_PER_SECOND,this._maxExecutionsPerFlush=s.maxExecutionsPerFlush??V.MAX_EXECUTIONS_PER_EFFECT,this._trackModifications=s.trackModifications??!1,this._cleanup=null,this._dependencies=y,this._dependencyVersions=D,this._unsubscribes=N,this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null,this._onError=s.onError??null,this._historyPtr=0;const n=Number.isFinite(this._maxExecutions);this._historyCapacity=n?Math.min(this._maxExecutions+1,V.MAX_EXECUTIONS_PER_SECOND+1):0,this._history=T&&n&&this._historyCapacity>0?new Array(this._historyCapacity).fill(0):null,this._executionCount=0,A.attachDebugInfo(this,"effect",this.id)}_prepareEffectContext(){const e=this._dependencies,s=this._dependencyVersions,n=this._unsubscribes,i=j.acquire(),r=R.acquire(),o=q.acquire(),c=Ae();if(e!==y&&n!==N)for(let h=0;h<e.length;h++){const _=e[h];_&&(_._tempUnsub=n[h])}return this._nextDeps=i,this._nextVersions=r,this._nextUnsubs=o,this._currentEpoch=c,{prevDeps:e,prevVersions:s,prevUnsubs:n,nextDeps:i,nextVersions:r,nextUnsubs:o}}_commitEffect(e){const s=e.nextDeps.length;e.nextDeps.length=s,e.nextVersions.length=s,this._dependencies=e.nextDeps,this._dependencyVersions=e.nextVersions,this._unsubscribes=e.nextUnsubs}_cleanupEffect(e,s){if(this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null,s){if(e.prevDeps!==y){for(let n=0;n<e.prevDeps.length;n++){const i=e.prevDeps[n];i?._tempUnsub&&(i._tempUnsub(),i._tempUnsub=void 0)}j.release(e.prevDeps)}e.prevUnsubs!==N&&q.release(e.prevUnsubs),e.prevVersions!==D&&R.release(e.prevVersions)}else{j.release(e.nextDeps),R.release(e.nextVersions);for(let n=0;n<e.nextUnsubs.length;n++)e.nextUnsubs[n]?.();if(q.release(e.nextUnsubs),e.prevDeps!==y)for(let n=0;n<e.prevDeps.length;n++){const i=e.prevDeps[n];i&&(i._tempUnsub=void 0)}}}_subscribeTo(e){try{const s=e.subscribe(()=>{this._trackModifications&&this.isExecuting&&(e._modifiedAtEpoch=this._currentEpoch),this._sync?this.execute():W.schedule(this.execute)});this._nextUnsubs&&this._nextUnsubs.push(s)}catch(s){console.error(Z(s,L,E.EFFECT_EXECUTION_FAILED)),this._nextUnsubs&&this._nextUnsubs.push(()=>{})}}get isDisposed(){return(this.flags&se.DISPOSED)!==0}get executionCount(){return this._executionCount}get isExecuting(){return(this.flags&se.EXECUTING)!==0}_setDisposed(){this.flags|=se.DISPOSED}_setExecuting(e){const s=se.EXECUTING;this.flags=this.flags&~s|-Number(e)&s}_safeCleanup(){if(this._cleanup){try{this._cleanup()}catch(e){console.error(Z(e,L,E.EFFECT_CLEANUP_FAILED))}this._cleanup=null}}_checkInfiniteLoop(){if(this._lastFlushEpoch!==re&&(this._lastFlushEpoch=re,this._executionsInEpoch=0),this._executionsInEpoch++,this._executionsInEpoch>this._maxExecutionsPerFlush&&this._throwInfiniteLoopError("per-effect"),et()>V.MAX_EXECUTIONS_PER_FLUSH&&this._throwInfiniteLoopError("global"),this._executionCount++,this._history&&this._maxExecutions>0){const e=Date.now(),s=this._historyPtr,n=this._historyCapacity;this._history[s]=e;const i=(s+1)%n,r=this._history[i]??0;if(this._historyPtr=i,r>0&&e-r<He.ONE_SECOND_MS){const o=new L(`Effect executed ${n} times within 1 second. Infinite loop suspected`);if(this.dispose(),console.error(o),this._onError&&this._onError(o),T)throw o}}}_throwInfiniteLoopError(e){const s=new L(`Infinite loop detected (${e}): effect executed ${this._executionsInEpoch} times in current flush. Total executions in flush: ${pe}`);throw this.dispose(),console.error(s),s}_shouldExecute(){if(this._dependencies===y||this._dependencyVersions===D)return!0;for(let e=0;e<this._dependencies.length;e++){const s=this._dependencies[e];if(s){if("value"in s)try{be(()=>s.value)}catch{return!0}if(s.version!==this._dependencyVersions[e])return!0}}return!1}_handleExecutionError(e){const s=Z(e,L,E.EFFECT_EXECUTION_FAILED);console.error(s),this._onError&&this._onError(s)}_checkLoopWarnings(){if(this._trackModifications&&A.enabled){const e=this._dependencies;for(let s=0;s<e.length;s++){const n=e[s];n&&n._modifiedAtEpoch===this._currentEpoch&&A.warn(!0,`Effect is reading a dependency (${A.getDebugName(n)||"unknown"}) that it just modified. Infinite loop may occur`)}}}}function m(t,e={}){if(typeof t!="function")throw new L(E.EFFECT_MUST_BE_FUNCTION);const s=new ht(t,e);return s.execute(),s}function p(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t}function x(t){return p(t)?t.value:t}function he(t){if(!t)return"unknown";const e="jquery"in t?t[0]:t;if(!e)return"unknown";if(e.id)return`#${e.id}`;if(e.className){const s=String(e.className).split(/\s+/).filter(Boolean).join(".");return s?`${e.tagName.toLowerCase()}.${s}`:e.tagName.toLowerCase()}return e.tagName.toLowerCase()}function at(){if(typeof window<"u"){const t=window.__ATOM_DEBUG__;if(typeof t=="boolean")return t}try{if(typeof process<"u"&&process.env&&process.env.NODE_ENV==="development")return!0}catch{}return!1}let z=at();const a={get enabled(){return z},set enabled(t){z=t},log(t,...e){z&&console.log(`[atom-effect-jquery] ${t}:`,...e)},atomChanged(t,e,s){z&&console.log(`[atom-effect-jquery] Atom "${t||"anonymous"}" changed:`,e,"→",s)},domUpdated(t,e,s){if(!z)return;const n=he(t);console.log(`[atom-effect-jquery] DOM updated: ${n}.${e} =`,s),lt(t)},cleanup(t){z&&console.log(`[atom-effect-jquery] Cleanup: ${t}`)},warn(...t){z&&console.warn("[atom-effect-jquery]",...t)}};function lt(t){const e=t[0];if(!e||!document.contains(e))return;const s="atom_debug_timer",n="atom_debug_cleanup_timer",i="atom_debug_org_style";clearTimeout(t.data(s)),clearTimeout(t.data(n)),t.data(i)||t.data(i,{outline:t.css("outline"),outlineOffset:t.css("outline-offset"),transition:t.css("transition")}),t.css({outline:"2px solid rgba(255, 68, 68, 0.8)","outline-offset":"1px",transition:"none"});const r=setTimeout(()=>{const o=t.data(i);t.css("transition","outline 0.5s ease-out"),requestAnimationFrame(()=>{t.css({outline:o?.outline||"","outline-offset":o?.outlineOffset||""});const c=setTimeout(()=>{t.css("transition",o?.transition||""),t.removeData(s),t.removeData(n),t.removeData(i)},500);t.data(n,c)})},100);t.data(s,r)}const ft=new WeakMap;function Ve(t,e={}){const s=ke(t,e);return e.name&&ft.set(s,{name:e.name}),s}Object.defineProperty(Ve,"debug",{get(){return a.enabled},set(t){a.enabled=t}});function dt(){return new Promise(t=>setTimeout(t,0))}u.extend({atom:Ve,computed:je,effect:m,batch:Ue,untracked:be,isAtom:Ee,isComputed:Oe,isReactive:t=>Ee(t)||Oe(t),nextTick:dt});function Pe(){return{timeoutId:null,phase:"idle",hasFocus:!1}}function Le(t,e,s={}){const{debounce:n,event:i="input",parse:r=C=>C,format:o=C=>String(C??"")}=s,c=Pe(),h=()=>{c.phase="composing"},_=()=>{c.phase="idle",U()};t.on("compositionstart",h),t.on("compositionend",_);const I=()=>{c.hasFocus=!0},Y=()=>{c.hasFocus=!1;const C=o(e.value);t.val()!==C&&t.val(C)};t.on("focus",I),t.on("blur",Y);const U=()=>{c.phase==="idle"&&(c.phase="syncing-to-atom",e.value=r(t.val()),c.phase="idle")},w=()=>{c.phase==="idle"&&(n?(c.timeoutId&&clearTimeout(c.timeoutId),c.timeoutId=window.setTimeout(U,n)):U())};return t.on(i,w),t.on("change",w),{effect:()=>{const C=o(e.value),J=t.val();if(J!==C){if(c.hasFocus&&r(J)===e.value)return;c.phase="syncing-to-dom",t.val(C),a.domUpdated(t,"val",C),c.phase="idle"}},cleanup:()=>{t.off(i,w),t.off("change",w),t.off("compositionstart",h),t.off("compositionend",_),t.off("focus",I),t.off("blur",Y),c.timeoutId&&clearTimeout(c.timeoutId)}}}class _t{effects=new WeakMap;cleanups=new WeakMap;boundElements=new WeakSet;preservedNodes=new WeakSet;keep(e){this.preservedNodes.add(e)}isKept(e){return this.preservedNodes.has(e)}trackEffect(e,s){let n=this.effects.get(e);n||(n=[],this.effects.set(e,n),this.boundElements.add(e)),n.push(s)}trackCleanup(e,s){let n=this.cleanups.get(e);n||(n=[],this.cleanups.set(e,n),this.boundElements.add(e)),n.push(s)}hasBind(e){return this.boundElements.has(e)}cleanup(e){if(!this.boundElements.delete(e))return;a.cleanup(he(e));const s=this.effects.get(e);if(s){this.effects.delete(e);for(let i=0,r=s.length;i<r;i++){const o=s[i];if(o)try{o.dispose()}catch(c){a.warn("Effect dispose error:",c)}}}const n=this.cleanups.get(e);if(n){this.cleanups.delete(e);for(let i=0,r=n.length;i<r;i++){const o=n[i];if(o)try{o()}catch(c){a.warn("Cleanup error:",c)}}}}cleanupTree(e){const s=e.querySelectorAll("*");for(let n=0,i=s.length;n<i;n++){const r=s[n];r&&this.boundElements.has(r)&&this.cleanup(r)}this.cleanup(e)}}const f=new _t;let $=null;function Be(t=document.body){$||($=new MutationObserver(e=>{for(let s=0,n=e.length;s<n;s++){const i=e[s];if(!i)continue;const r=i.removedNodes;for(let o=0,c=r.length;o<c;o++){const h=r[o];h&&(f.isKept(h)||h.isConnected||h.nodeType===1&&f.cleanupTree(h))}}}),$.observe(t,{childList:!0,subtree:!0}))}function pt(){$?.disconnect(),$=null}u.fn.atomText=function(t,e){if(p(t))return this.each(function(){const n=u(this),i=m(()=>{const r=t.value,o=e?e(r):String(r??"");n.text(o),a.domUpdated(n,"text",o)});f.trackEffect(this,i)});const s=e?e(t):String(t??"");return this.text(s)},u.fn.atomHtml=function(t){return p(t)?this.each(function(){const e=u(this),s=m(()=>{const n=String(t.value??"");e.html(n),a.domUpdated(e,"html",n)});f.trackEffect(this,s)}):this.html(String(t??""))},u.fn.atomClass=function(t,e){return p(e)?this.each(function(){const s=u(this),n=m(()=>{const i=!!e.value;s.toggleClass(t,i),a.domUpdated(s,`class.${t}`,i)});f.trackEffect(this,n)}):this.toggleClass(t,!!e)},u.fn.atomCss=function(t,e,s){if(p(e))return this.each(function(){const i=u(this),r=m(()=>{const o=e.value,c=s?`${o}${s}`:o;i.css(t,c),a.domUpdated(i,`css.${t}`,c)});f.trackEffect(this,r)});const n=s?`${e}${s}`:e;return this.css(t,n)},u.fn.atomAttr=function(t,e){return p(e)?this.each(function(){const s=u(this),n=m(()=>{const i=e.value;i==null||i===!1?s.removeAttr(t):i===!0?s.attr(t,t):s.attr(t,String(i)),a.domUpdated(s,`attr.${t}`,i)});f.trackEffect(this,n)}):e==null||e===!1?this.removeAttr(t):e===!0?this.attr(t,t):this.attr(t,String(e))},u.fn.atomProp=function(t,e){return p(e)?this.each(function(){const s=u(this),n=m(()=>{const i=e.value;s.prop(t,i),a.domUpdated(s,`prop.${t}`,i)});f.trackEffect(this,n)}):this.prop(t,e)},u.fn.atomShow=function(t){return p(t)?this.each(function(){const e=u(this),s=m(()=>{const n=!!t.value;e.toggle(n),a.domUpdated(e,"show",n)});f.trackEffect(this,s)}):this.toggle(!!t)},u.fn.atomHide=function(t){return p(t)?this.each(function(){const e=u(this),s=m(()=>{const n=!t.value;e.toggle(n),a.domUpdated(e,"hide",!n)});f.trackEffect(this,s)}):this.toggle(!t)},u.fn.atomVal=function(t,e={}){return this.each(function(){const s=u(this),{effect:n,cleanup:i}=Le(s,t,e),r=m(n);f.trackEffect(this,r),f.trackCleanup(this,i)})},u.fn.atomChecked=function(t){return this.each(function(){const e=u(this);let s=!1;const n=()=>{s||(t.value=!!e.prop("checked"))};e.on("change",n),f.trackCleanup(this,()=>e.off("change",n));const i=m(()=>{s=!0;const r=!!t.value;e.prop("checked",r),a.domUpdated(e,"checked",r),s=!1});f.trackEffect(this,i)})},u.fn.atomOn=function(t,e){return this.each(function(){const s=u(this);s.on(t,e),f.trackCleanup(this,()=>s.off(t,e))})},u.fn.atomUnbind=function(){return this.each(function(){f.cleanupTree(this)})};function bt(t,e){p(e)?t.effects.push(()=>{const s=String(x(e)??"");t.$el.text(s),a.domUpdated(t.$el,"text",s)}):t.$el.text(String(e??""))}function gt(t,e){p(e)?t.effects.push(()=>{const s=String(x(e)??"");t.$el.html(s),a.domUpdated(t.$el,"html",s)}):t.$el.html(String(e??""))}function Et(t,e){for(const[s,n]of Object.entries(e))p(n)?t.effects.push(()=>{const i=!!x(n);t.$el.toggleClass(s,i),a.domUpdated(t.$el,`class.${s}`,i)}):t.$el.toggleClass(s,!!n)}function mt(t,e){for(const[s,n]of Object.entries(e))if(Array.isArray(n)){const[i,r]=n;p(i)?t.effects.push(()=>{const o=`${x(i)}${r}`;t.$el.css(s,o),a.domUpdated(t.$el,`css.${s}`,o)}):t.$el.css(s,`${i}${r}`)}else p(n)?t.effects.push(()=>{const i=x(n);t.$el.css(s,i),a.domUpdated(t.$el,`css.${s}`,i)}):t.$el.css(s,n)}function St(t,e){for(const[s,n]of Object.entries(e)){const i=r=>{r==null||r===!1?t.$el.removeAttr(s):r===!0?t.$el.attr(s,s):t.$el.attr(s,String(r)),a.domUpdated(t.$el,`attr.${s}`,r)};p(n)?t.effects.push(()=>i(x(n))):i(n)}}function yt(t,e){for(const[s,n]of Object.entries(e))p(n)?t.effects.push(()=>{const i=x(n);t.$el.prop(s,i),a.domUpdated(t.$el,`prop.${s}`,i)}):t.$el.prop(s,n)}function Dt(t,e){p(e)?t.effects.push(()=>{const s=!!x(e);t.$el.toggle(s),a.domUpdated(t.$el,"show",s)}):t.$el.toggle(!!e)}function It(t,e){p(e)?t.effects.push(()=>{const s=!x(e);t.$el.toggle(s),a.domUpdated(t.$el,"hide",!s)}):t.$el.toggle(!e)}function Ct(t,e){const s=Array.isArray(e)?e[0]:e,n=Array.isArray(e)?e[1]:{},{effect:i,cleanup:r}=Le(t.$el,s,n);t.effects.push(i),t.trackCleanup(r)}function vt(t,e){const s=Pe(),n=()=>{s.phase==="idle"&&(e.value=t.$el.prop("checked"))};t.$el.on("change",n),t.trackCleanup(()=>t.$el.off("change",n)),t.effects.push(()=>{s.phase="syncing-to-dom",t.$el.prop("checked",e.value),a.domUpdated(t.$el,"checked",e.value),s.phase="idle"})}function Tt(t,e){for(const[s,n]of Object.entries(e)){const i=function(r){n.call(this,r)};t.$el.on(s,i),t.trackCleanup(()=>t.$el.off(s,i))}}u.fn.atomBind=function(t){return this.each(function(){const e=u(this),s=[],n={$el:e,el:this,effects:s,trackCleanup:i=>f.trackCleanup(this,i)};t.text!==void 0&&bt(n,t.text),t.html!==void 0&&gt(n,t.html),t.class&&Et(n,t.class),t.css&&mt(n,t.css),t.attr&&St(n,t.attr),t.prop&&yt(n,t.prop),t.show!==void 0&&Dt(n,t.show),t.hide!==void 0&&It(n,t.hide),t.val!==void 0&&Ct(n,t.val),t.checked!==void 0&&vt(n,t.checked),t.on&&Tt(n,t.on),s.forEach(i=>{const r=m(i);f.trackEffect(this,r)})})};function At(t){const e=t.length;if(e===0)return new Int32Array(0);const s=new Int32Array(e),n=new Int32Array(e);let i=0;for(let o=0;o<e;o++){const c=t[o];if(c===-1)continue;if(i===0||t[n[i-1]]<c){s[o]=i>0?n[i-1]:-1,n[i++]=o;continue}let h=0,_=i-1;for(;h<_;){const I=h+_>>>1;t[n[I]]<c?h=I+1:_=I}c<t[n[h]]&&(h>0&&(s[o]=n[h-1]),n[h]=o)}const r=new Int32Array(i);for(let o=i-1,c=n[i-1];o>=0;o--)r[o]=c,c=s[c];return r}u.fn.atomList=function(t,e){const{key:s,render:n,bind:i,update:r,onAdd:o,onRemove:c,empty:h}=e,_=typeof s=="function"?s:I=>I[s];return this.each(function(){const I=u(this),Y=he(this),U=new Map,w=new Set;let Q=[],X=null;const C=m(()=>{const J=t.value,k=J.length;if(k===0?h&&!X&&(X=u(h).appendTo(I)):X&&(X.remove(),X=null),k===0&&U.size===0){Q=[];return}a.log("list",`${Y} updating with ${k} items`);const le=new Array(k),ze=new Set;for(let l=0;l<k;l++){const g=J[l],v=_(g,l);le[l]=v,ze.add(v)}for(const[l,g]of U){if(ze.has(l)||w.has(l))continue;const v=()=>{g.$el.remove();const S=g.$el[0];S&&f.cleanup(S),w.delete(l),a.log("list",`${Y} removed item:`,l)};if(U.delete(l),w.add(l),c){const S=c(g.$el);S instanceof Promise?S.then(v):v()}else v()}if(k===0){Q=[];return}const Qe=new Map;for(let l=0;l<Q.length;l++){const g=Q[l];g!==void 0&&Qe.set(g,l)}const Xe=new Int32Array(k);for(let l=0;l<k;l++){const g=le[l];Xe[l]=g!==void 0?Qe.get(g)??-1:-1}const Ge=At(Xe);let Se=Ge.length-1,F=null;for(let l=k-1;l>=0;l--){const g=le[l],v=J[l],S=U.get(g);if(S){S.item=v;const G=S.$el[0];if(!G)continue;r&&r(S.$el,v,l),Se>=0&&Ge[Se]===l?(Se--,G.nextSibling!==F&&(F?S.$el.insertBefore(F):S.$el.appendTo(I))):F?S.$el.insertBefore(F):S.$el.appendTo(I),F=G}else{const G=n(v,l),H=(G instanceof Element,u(G));U.set(g,{$el:H,item:v}),F?H.insertBefore(F):H.appendTo(I),i&&i(H,v,l),o&&o(H),a.log("list",`${Y} added item:`,g),F=H[0]||null}}Q=le});f.trackEffect(this,C),f.trackCleanup(this,()=>{U.clear(),w.clear(),Q=[],X?.remove()})})};const ae=new WeakMap;u.fn.atomMount=function(t,e={}){return this.each(function(){const s=u(this),n=he(this),i=ae.get(this);i&&(a.log("mount",`${n} unmounting existing component`),i()),a.log("mount",`${n} mounting component`);let r;try{r=t(s,e)}catch(h){console.error("[atom-effect-jquery] Mount error:",h);return}let o=!1;const c=()=>{if(!o){if(o=!0,a.log("mount",`${n} full cleanup`),typeof r=="function")try{r()}catch{}f.cleanupTree(this),ae.delete(this)}};ae.set(this,c),f.trackCleanup(this,c)})},u.fn.atomUnmount=function(){return this.each(function(){ae.get(this)?.()})};const ee=new WeakMap;let qe=!1;function me(){if(qe)return;qe=!0;const t=u.fn.on,e=u.fn.off,s=u.fn.remove,n=u.fn.empty,i=u.fn.detach;u.fn.remove=function(r){return(r?this.filter(r):this).each(function(){f.cleanupTree(this)}),s.call(this,r)},u.fn.empty=function(){return this.each(function(){this.querySelectorAll("*").forEach(o=>f.cleanup(o))}),n.call(this)},u.fn.detach=function(r){return(r?this.filter(r):this).each(function(){f.keep(this)}),i.call(this,r)},u.fn.on=function(...r){let o=-1;for(let c=r.length-1;c>=0;c--)if(typeof r[c]=="function"){o=c;break}if(o!==-1){const c=r[o];let h;ee.has(c)?h=ee.get(c):(h=function(..._){return c.apply(this,_)},ee.set(c,h)),r[o]=h}return t.apply(this,r)},u.fn.off=function(...r){let o=-1;for(let c=r.length-1;c>=0;c--)if(typeof r[c]=="function"){o=c;break}if(o!==-1){const c=r[o];ee.has(c)&&(r[o]=ee.get(c))}return e.apply(this,r)}}const Nt=me;me(),u(()=>{Be(document.body)}),b.default=u,b.atom=ke,b.batch=Ue,b.computed=je,b.disableAutoCleanup=pt,b.effect=m,b.enableAutoCleanup=Be,b.enablejQueryBatching=Nt,b.enablejQueryOverrides=me,b.registry=f,b.untracked=be,Object.defineProperties(b,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(_,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("jquery")):typeof define=="function"&&define.amd?define(["exports","jquery"],u):(_=typeof globalThis<"u"?globalThis:_||self,u(_.AtomEffectJQuery={},_.jQuery))})(this,(function(_,u){"use strict";const He={ONE_SECOND_MS:1e3},ee={IDLE:"idle",PENDING:"pending",RESOLVED:"resolved",REJECTED:"rejected"},te={DISPOSED:1,EXECUTING:2},l={DIRTY:1,IDLE:2,PENDING:4,RESOLVED:8,REJECTED:16,RECOMPUTING:32,HAS_ERROR:64},J={SYNC:1,NOTIFICATION_SCHEDULED:2},P={MAX_EXECUTIONS_PER_SECOND:1e3,MAX_EXECUTIONS_PER_EFFECT:100,MAX_EXECUTIONS_PER_FLUSH:1e4,MAX_FLUSH_ITERATIONS:1e3,MIN_FLUSH_ITERATIONS:10},ye={MAX_DEPENDENCIES:1e3,WARN_INFINITE_LOOP:!0},F=1073741823,Ge=20,le=1<<Ge-1,T=typeof process<"u"&&process.env&&process.env.NODE_ENV!=="production",Ye=Object.freeze([]);class x extends Error{constructor(e,s=null,n=!0){super(e),this.name="AtomError",this.cause=s,this.recoverable=n,this.timestamp=new Date}}class M extends x{constructor(e,s=null){super(e,s,!0),this.name="ComputedError"}}class V extends x{constructor(e,s=null){super(e,s,!1),this.name="EffectError"}}class se extends x{constructor(e,s=null){super(e,s,!1),this.name="SchedulerError"}}const b={COMPUTED_MUST_BE_FUNCTION:"Computed function must be a function",COMPUTED_ASYNC_PENDING_NO_DEFAULT:"Async computation is pending. No default value provided",COMPUTED_COMPUTATION_FAILED:"Computed computation failed",COMPUTED_ASYNC_COMPUTATION_FAILED:"Async computed computation failed",ATOM_SUBSCRIBER_MUST_BE_FUNCTION:"Subscription listener must be a function or Subscriber object",ATOM_INDIVIDUAL_SUBSCRIBER_FAILED:"Error during individual atom subscriber execution",EFFECT_MUST_BE_FUNCTION:"Effect function must be a function",EFFECT_EXECUTION_FAILED:"Effect execution failed",EFFECT_CLEANUP_FAILED:"Effect cleanup function execution failed",CALLBACK_ERROR_IN_ERROR_HANDLER:"Error occurred during onError callback execution"},fe=Symbol("debugName"),Je=Symbol("id"),de=Symbol("type"),Se=Symbol("noDefaultValue");function Ke(t){return"dependencies"in t&&Array.isArray(t.dependencies)}let De=0;function Ie(t,e,s){if(t._visitedEpoch!==s){if(t._visitedEpoch=s,t===e)throw new M("Indirect circular dependency detected");if(Ke(t)){const n=t.dependencies;for(let i=0;i<n.length;i++){const r=n[i];r&&Ie(r,e,s)}}}}const v={enabled:typeof process<"u"&&process.env?.NODE_ENV==="development",maxDependencies:ye.MAX_DEPENDENCIES,warnInfiniteLoop:ye.WARN_INFINITE_LOOP,warn(t,e){this.enabled&&t&&console.warn(`[Atom Effect] ${e}`)},checkCircular(t,e){if(t===e)throw new M("Direct circular dependency detected");this.enabled&&(De++,Ie(t,e,De))},attachDebugInfo(t,e,s){if(!this.enabled)return;const n=t;n[fe]=`${e}_${s}`,n[Je]=s,n[de]=e},getDebugName(t){if(t!=null&&fe in t)return t[fe]},getDebugType(t){if(t!=null&&de in t)return t[de]}};let We=1;const Ze=()=>We++;class Ce{constructor(){this.flags=0,this.version=0,this._lastSeenEpoch=-1,this.id=Ze()&F}rotatePhase(){return this.version=this.version+1&F,this.version}getShift(e){return this.version-e&F}}class Te extends Ce{subscribe(e){if(typeof e=="object"&&e!==null&&"execute"in e)return this._addSubscriber(this._getObjSubs(),e);if(typeof e!="function")throw new x(b.ATOM_SUBSCRIBER_MUST_BE_FUNCTION);return this._addSubscriber(this._getFnSubs(),e)}subscriberCount(){return(this._fnSubs?.length??0)+(this._objSubs?.length??0)}_addSubscriber(e,s){if(e.indexOf(s)!==-1)return()=>{};e.push(s);let n=!1;return()=>{if(n)return;n=!0;const i=e.indexOf(s);if(i!==-1){const r=e.length-1;i!==r&&(e[i]=e[r]),e.pop()}}}_notifySubscribers(e,s){const n=this._fnSubs;if(n)for(let r=n.length-1;r>=0;r--)try{const o=n[r];o&&o(e,s)}catch(o){console.error(new x(b.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,o))}const i=this._objSubs;if(i)for(let r=i.length-1;r>=0;r--)try{const o=i[r];o&&o.execute()}catch(o){console.error(new x(b.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,o))}}}class _e{constructor(){this.pool=[],this.maxPoolSize=50,this.maxReusableCapacity=256,this.stats=T?{acquired:0,released:0,rejected:{frozen:0,tooLarge:0,poolFull:0}}:null}acquire(){return T&&this.stats&&this.stats.acquired++,this.pool.pop()??[]}release(e,s){if(!(s&&e===s)){if(Object.isFrozen(e)){T&&this.stats&&this.stats.rejected.frozen++;return}if(e.length>this.maxReusableCapacity){T&&this.stats&&this.stats.rejected.tooLarge++;return}if(this.pool.length>=this.maxPoolSize){T&&this.stats&&this.stats.rejected.poolFull++;return}e.length=0,this.pool.push(e),T&&this.stats&&this.stats.released++}}getStats(){if(!T||!this.stats)return null;const{acquired:e,released:s,rejected:n}=this.stats,i=n.frozen+n.tooLarge+n.poolFull;return{acquired:e,released:s,rejected:n,leaked:e-s-i,poolSize:this.pool.length}}reset(){this.pool.length=0,T&&this.stats&&(this.stats.acquired=0,this.stats.released=0,this.stats.rejected={frozen:0,tooLarge:0,poolFull:0})}}const y=Object.freeze([]),N=Object.freeze([]),S=Object.freeze([]),k=new _e,j=new _e,A=new _e;function pe(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t&&typeof t.subscribe=="function"}function ve(t){if(v.enabled&&(t==null||typeof t=="object")){const e=v.getDebugType(t);if(e)return e==="computed"}return pe(t)&&"invalidate"in t&&typeof t.invalidate=="function"}function Ne(t){return t!=null&&typeof t.then=="function"}function $e(t){return typeof t=="object"&&t!==null}function et(t){return(typeof t=="object"||typeof t=="function")&&t!==null&&typeof t.addDependency=="function"}function tt(t){return typeof t=="function"&&typeof t.addDependency!="function"}function st(t){return $e(t)&&typeof t.execute=="function"}function Ae(t,e,s,n){if(e){if(et(e)){e.addDependency(t);return}if(tt(e)){const i=e;s.indexOf(i)===-1&&s.push(i);return}st(e)&&n.indexOf(e)===-1&&n.push(e)}}function nt(t,e,s,n){if(e!==y&&s!==N)for(let r=0;r<e.length;r++){const o=e[r];o&&(o._tempUnsub=s[r])}const i=j.acquire();i.length=t.length;for(let r=0;r<t.length;r++){const o=t[r];o&&(o._tempUnsub?(i[r]=o._tempUnsub,o._tempUnsub=void 0):(v.checkCircular(o,n),i[r]=o.subscribe(n)))}if(e!==y)for(let r=0;r<e.length;r++){const o=e[r];o?._tempUnsub&&(o._tempUnsub(),o._tempUnsub=void 0)}return s!==N&&j.release(s),i}let ne=0;function Re(){return ne=ne+1&F||1,ne}function it(){return ne}let ie=0,ge=0,re=!1;function xe(){return re?(T&&console.warn("Warning: startFlush() called during flush - ignored to prevent infinite loop detection bypass"),!1):(re=!0,ie=ie+1&F,ge=0,!0)}function Oe(){re=!1}function rt(){return re?++ge:0}class ot{constructor(){this.queueA=[],this.queueB=[],this.queue=this.queueA,this.queueSize=0,this.urgentQueueA=[],this.urgentQueueB=[],this.urgentQueue=this.urgentQueueA,this.urgentQueueSize=0,this._epoch=0,this.isProcessing=!1,this.isBatching=!1,this.batchDepth=0,this.batchQueue=[],this.batchQueueSize=0,this.isFlushingSync=!1,this.maxFlushIterations=P.MAX_FLUSH_ITERATIONS}get phase(){return this.isProcessing||this.isFlushingSync?2:this.isBatching?1:0}schedule(e,s){if(typeof e!="function")throw new se("Scheduler callback must be a function");if(e._nextEpoch!==this._epoch)if(e._nextEpoch=this._epoch,this.isBatching||this.isFlushingSync)this.batchQueue[this.batchQueueSize++]=e;else{const n=this._calculateUrgency(e,s);this.urgentQueue[this.urgentQueueSize]=e,this.queue[this.queueSize]=e,this.urgentQueueSize+=n,this.queueSize+=n^1,this.isProcessing||this.flush()}}_calculateUrgency(e,s){if(!s||e._cachedVersion===void 0)return 0;const n=s.getShift(e._cachedVersion);return le-1-n>>>31&1}flush(){this.isProcessing||this.queueSize===0&&this.urgentQueueSize===0||(this.isProcessing=!0,queueMicrotask(()=>{try{if(this.queueSize===0&&this.urgentQueueSize===0)return;const e=xe();this._drainQueue(),e&&Oe()}finally{this.isProcessing=!1,(this.queueSize>0||this.urgentQueueSize>0)&&!this.isBatching&&this.flush()}}))}flushSync(){this.isFlushingSync=!0;const e=xe();try{this._mergeBatchQueue(),this._drainQueue()}finally{this.isFlushingSync=!1,e&&Oe()}}_mergeBatchQueue(){if(this._epoch++,this.batchQueueSize>0){for(let e=0;e<this.batchQueueSize;e++){const s=this.batchQueue[e];s&&s._nextEpoch!==this._epoch&&(s._nextEpoch=this._epoch,this.queue[this.queueSize++]=s)}this.batchQueueSize=0}}_drainQueue(){let e=0;for(;this.urgentQueueSize>0||this.queueSize>0;){if(++e>this.maxFlushIterations){this._handleFlushOverflow();return}this.urgentQueueSize>0&&this._processUrgentQueue(),this.queueSize>0&&this._processCurrentQueue(),this._mergeBatchQueue()}}_processUrgentQueue(){const e=this.urgentQueue,s=this.urgentQueueSize;this.urgentQueue=this.urgentQueue===this.urgentQueueA?this.urgentQueueB:this.urgentQueueA,this.urgentQueueSize=0,this._epoch++,this._processJobs(e,s)}_processCurrentQueue(){const e=this.queue,s=this.queueSize;this.queue=this.queue===this.queueA?this.queueB:this.queueA,this.queueSize=0,this._epoch++,this._processJobs(e,s)}_handleFlushOverflow(){console.error(new se(`Maximum flush iterations (${this.maxFlushIterations}) exceeded. Possible infinite loop.`)),this.queueSize=0,this.queue.length=0,this.urgentQueueSize=0,this.urgentQueue.length=0,this.batchQueueSize=0}_processJobs(e,s){for(let n=0;n<s;n++){const i=e[n];if(i)try{i()}catch(r){console.error(new se("Error occurred during scheduler execution",r))}}e.length=0}startBatch(){this.batchDepth++,this.isBatching=!0}endBatch(){this.batchDepth=Math.max(0,this.batchDepth-1),this.batchDepth===0&&(this.flushSync(),this.isBatching=!1)}setMaxFlushIterations(e){if(e<P.MIN_FLUSH_ITERATIONS)throw new se(`Max flush iterations must be at least ${P.MIN_FLUSH_ITERATIONS}`);this.maxFlushIterations=e}}const K=new ot;class ct{constructor(){this.current=null}run(e,s){const n=this.current;this.current=e;try{return s()}finally{this.current=n}}getCurrent(){return this.current}}const B=new ct;function Ee(t){if(typeof t!="function")throw new x("Untracked callback must be a function");const e=B.current;B.current=null;try{return t()}finally{B.current=e}}class ut extends Te{constructor(e,s){super(),this._fnSubs=null,this._objSubs=null,this._value=e,s&&(this.flags|=J.SYNC),v.attachDebugInfo(this,"atom",this.id)}_getFnSubs(){return this._fnSubs??=[],this._fnSubs}_getObjSubs(){return this._objSubs??=[],this._objSubs}get value(){const e=B.current;return e&&Ae(this,e,this._getFnSubs(),this._getObjSubs()),this._value}set value(e){if(Object.is(this._value,e))return;const s=this._value;this._value=e,this.rotatePhase(),((this._fnSubs?.length??0)>0||(this._objSubs?.length??0)>0)&&this._scheduleNotification(s)}_scheduleNotification(e){if(this.flags&J.NOTIFICATION_SCHEDULED||(this._pendingOldValue=e,this.flags|=J.NOTIFICATION_SCHEDULED),this.flags&J.SYNC&&!K.isBatching){this._flushNotifications();return}this._notifyTask||(this._notifyTask=()=>this._flushNotifications()),K.schedule(this._notifyTask)}_flushNotifications(){if(!(this.flags&J.NOTIFICATION_SCHEDULED))return;const e=this._pendingOldValue,s=this._value;this._pendingOldValue=void 0,this.flags&=-3,this._notifySubscribers(s,e)}peek(){return this._value}dispose(){this._fnSubs=null,this._objSubs=null,this._value=void 0,this._notifyTask=void 0}}function Ue(t,e={}){return new ut(t,e.sync??!1)}function W(t,e,s){if(t instanceof TypeError)return new e(`Type error (${s}): ${t.message}`,t);if(t instanceof ReferenceError)return new e(`Reference error (${s}): ${t.message}`,t);if(t instanceof x)return t;const n=t instanceof Error?t.message:String(t),i=t instanceof Error?t:null;return new e(`Unexpected error (${s}): ${n}`,i)}const we=l.RESOLVED|l.PENDING|l.REJECTED,oe=Array(we+1).fill(ee.IDLE);oe[l.RESOLVED]=ee.RESOLVED,oe[l.PENDING]=ee.PENDING,oe[l.REJECTED]=ee.REJECTED;class Fe extends Te{constructor(e,s={}){if(typeof e!="function")throw new M(b.COMPUTED_MUST_BE_FUNCTION);if(super(),this._fnSubs=null,this._objSubs=null,this._cachedErrors=null,this._errorCacheEpoch=-1,this._asyncStartAggregateVersion=0,this._asyncRetryCount=0,this.MAX_ASYNC_RETRIES=3,this._value=void 0,this.flags=l.DIRTY|l.IDLE,this._error=null,this._promiseId=0,this._equal=s.equal??Object.is,this._fn=e,this._defaultValue="defaultValue"in s?s.defaultValue:Se,this._hasDefaultValue=this._defaultValue!==Se,this._onError=s.onError??null,this.MAX_PROMISE_ID=Number.MAX_SAFE_INTEGER-1,this._dependencies=y,this._dependencyVersions=S,this._unsubscribes=N,this._notifyJob=()=>{const n=this._fnSubs;if(n)for(let r=n.length-1;r>=0;r--)try{const o=n[r];o&&o(void 0,void 0)}catch(o){console.error(o)}const i=this._objSubs;if(i)for(let r=i.length-1;r>=0;r--)try{const o=i[r];o&&o.execute()}catch(o){console.error(o)}},this._trackable=Object.assign(()=>this._markDirty(),{addDependency:n=>{}}),v.attachDebugInfo(this,"computed",this.id),v.enabled){const n=this;n.subscriberCount=this.subscriberCount.bind(this),n.isDirty=()=>this._isDirty(),n.dependencies=this._dependencies,n.stateFlags=this._getFlagsAsString()}if(s.lazy===!1)try{this._recompute()}catch{}}_getFnSubs(){return this._fnSubs??=[],this._fnSubs}_getObjSubs(){return this._objSubs??=[],this._objSubs}get value(){return this._registerTracking(),this._computeValue()}peek(){return this._value}get state(){return this._registerTracking(),this._getAsyncState()}get hasError(){if(this._registerTracking(),this._isRejected())return!0;for(let e=0;e<this._dependencies.length;e++){const s=this._dependencies[e];if(s&&"hasError"in s&&s.hasError)return!0}return!1}get isValid(){return!this.hasError}get errors(){if(this._registerTracking(),!this.hasError)return Ye;const e=it();if(this._errorCacheEpoch===e&&this._cachedErrors!==null)return this._cachedErrors;const s=new Set;this._error&&s.add(this._error);for(let n=0;n<this._dependencies.length;n++){const i=this._dependencies[n];if(i&&"errors"in i){const r=i.errors;for(let o=0;o<r.length;o++){const c=r[o];c&&s.add(c)}}}return this._cachedErrors=Object.freeze([...s]),this._errorCacheEpoch=e,this._cachedErrors}get lastError(){return this._registerTracking(),this._error}get isPending(){return this._registerTracking(),this._isPending()}get isResolved(){return this._registerTracking(),this._isResolved()}invalidate(){this._markDirty(),this._dependencyVersions!==S&&(A.release(this._dependencyVersions),this._dependencyVersions=S),this._errorCacheEpoch=-1,this._cachedErrors=null}dispose(){if(this._unsubscribes!==N){for(let e=0;e<this._unsubscribes.length;e++){const s=this._unsubscribes[e];s&&s()}j.release(this._unsubscribes),this._unsubscribes=N}this._dependencies!==y&&(k.release(this._dependencies),this._dependencies=y),this._dependencyVersions!==S&&(A.release(this._dependencyVersions),this._dependencyVersions=S),this._fnSubs=null,this._objSubs=null,this.flags=l.DIRTY|l.IDLE,this._error=null,this._value=void 0,this._promiseId=(this._promiseId+1)%this.MAX_PROMISE_ID,this._cachedErrors=null,this._errorCacheEpoch=-1}_isDirty(){return(this.flags&l.DIRTY)!==0}_setDirty(){this.flags|=l.DIRTY}_clearDirty(){this.flags&=-2}_isIdle(){return(this.flags&l.IDLE)!==0}_setIdle(){this.flags|=l.IDLE,this.flags&=-29}_isPending(){return(this.flags&l.PENDING)!==0}_setPending(){this.flags|=l.PENDING,this.flags&=-27}_isResolved(){return(this.flags&l.RESOLVED)!==0}_setResolved(){this.flags|=l.RESOLVED,this.flags&=-87}_isRejected(){return(this.flags&l.REJECTED)!==0}_setRejected(){this.flags|=l.REJECTED|l.HAS_ERROR,this.flags&=-15}_isRecomputing(){return(this.flags&l.RECOMPUTING)!==0}_setRecomputing(e){const s=l.RECOMPUTING;this.flags=this.flags&~s|-Number(e)&s}_getAsyncState(){return oe[this.flags&we]}_getFlagsAsString(){const e=[];return this._isDirty()&&e.push("DIRTY"),this._isIdle()&&e.push("IDLE"),this._isPending()&&e.push("PENDING"),this._isResolved()&&e.push("RESOLVED"),this._isRejected()&&e.push("REJECTED"),this._isRecomputing()&&e.push("RECOMPUTING"),e.join(" | ")}_computeValue(){return this._isRecomputing()?this._value:((this._isDirty()||this._isIdle())&&this._recompute(),this._isPending()?this._handlePending():this._isRejected()?this._handleRejected():this._value)}_recompute(){if(this._isRecomputing())return;this._setRecomputing(!0);const e=this._prepareComputationContext();let s=!1;try{const n=B.run(this._trackable,this._fn);this._commitDependencies(e),s=!0,Ne(n)?this._handleAsyncComputation(n):this._handleSyncResult(n)}catch(n){if(!s)try{this._commitDependencies(e),s=!0}catch(i){this._handleComputationError(i)}this._handleComputationError(n)}finally{this._cleanupContext(e,s),this._setRecomputing(!1)}}_prepareComputationContext(){const e=this._dependencies,s=this._dependencyVersions,n=k.acquire(),i=A.acquire(),r=Re(),o={depCount:0},c=d=>{d._lastSeenEpoch!==r&&(d._lastSeenEpoch=r,o.depCount<n.length?(n[o.depCount]=d,i[o.depCount]=d.version):(n.push(d),i.push(d.version)),o.depCount++)},h=this._trackable.addDependency;return this._trackable.addDependency=c,{prevDeps:e,prevVersions:s,nextDeps:n,nextVersions:i,originalAdd:h,state:o}}_commitDependencies(e){const{nextDeps:s,nextVersions:n,state:i,prevDeps:r}=e;s.length=i.depCount,n.length=i.depCount,this._unsubscribes=nt(s,r,this._unsubscribes,this),this._dependencies=s,this._dependencyVersions=n}_cleanupContext(e,s){this._trackable.addDependency=e.originalAdd,s?(e.prevDeps!==y&&k.release(e.prevDeps),e.prevVersions!==S&&A.release(e.prevVersions)):(k.release(e.nextDeps),A.release(e.nextVersions))}_getAggregateShift(){let e=0;const s=this._dependencies,n=this._dependencyVersions;for(let i=0;i<s.length;i++){const r=s[i],o=n[i];r&&o!==void 0&&(e=e+r.getShift(o)&F)}return e}isUrgent(){return this._getAggregateShift()>=le}_handleSyncResult(e){this._finalizeResolution(e)}_handleAsyncComputation(e){this._setPending(),this._clearDirty(),this._notifyJob(),this._asyncStartAggregateVersion=this._captureVersionSnapshot(),this._asyncRetryCount=0,this._promiseId=this._promiseId>=this.MAX_PROMISE_ID?1:this._promiseId+1;const s=this._promiseId;e.then(n=>{if(s!==this._promiseId)return;const i=this._captureVersionSnapshot()-this._asyncStartAggregateVersion&F;if(le-1-i>>>31&1){if(this._asyncRetryCount<this.MAX_ASYNC_RETRIES){this._asyncRetryCount++,this._markDirty();return}const r=new M(`Async drift exceeded threshold after ${this.MAX_ASYNC_RETRIES} retries. Dependencies changed too rapidly for stable computation.`);this._handleAsyncRejection(r);return}this._handleAsyncResolution(n)}).catch(n=>{s===this._promiseId&&this._handleAsyncRejection(n)})}_captureVersionSnapshot(){let e=0;const s=this._dependencies;for(let n=0;n<s.length;n++){const i=s[n];i&&(e=e+i.version&F)}return e}_handleAsyncResolution(e){this._finalizeResolution(e),this._notifyJob()}_finalizeResolution(e){(!this._isResolved()||!this._equal(this._value,e))&&this.rotatePhase(),this._value=e,this._clearDirty(),this._setResolved(),this._error=null,this._setRecomputing(!1),this._cachedErrors=null,this._errorCacheEpoch=-1}_handleAsyncRejection(e){const s=W(e,M,b.COMPUTED_ASYNC_COMPUTATION_FAILED);if(!this._isRejected()&&this.rotatePhase(),this._error=s,this._setRejected(),this._clearDirty(),this._setRecomputing(!1),this._onError)try{this._onError(s)}catch(n){console.error(b.CALLBACK_ERROR_IN_ERROR_HANDLER,n)}this._notifyJob()}_handleComputationError(e){const s=W(e,M,b.COMPUTED_COMPUTATION_FAILED);if(this._error=s,this._setRejected(),this._clearDirty(),this._setRecomputing(!1),this._onError)try{this._onError(s)}catch(n){console.error(b.CALLBACK_ERROR_IN_ERROR_HANDLER,n)}throw s}_handlePending(){if(this._hasDefaultValue)return this._defaultValue;throw new M(b.COMPUTED_ASYNC_PENDING_NO_DEFAULT)}_handleRejected(){if(this._error?.recoverable&&this._hasDefaultValue)return this._defaultValue;throw this._error}execute(){this._markDirty()}_markDirty(){this._isRecomputing()||this._isDirty()||(this._setDirty(),this._notifyJob())}_registerTracking(){Ae(this,B.getCurrent(),this._getFnSubs(),this._getObjSubs())}}Object.freeze(Fe.prototype);function ke(t,e={}){return new Fe(t,e)}class ht extends Ce{constructor(e,s={}){super(),this.run=()=>{if(this.isDisposed)throw new V(b.EFFECT_MUST_BE_FUNCTION);this._dependencyVersions!==S&&(A.release(this._dependencyVersions),this._dependencyVersions=S),this.execute()},this.dispose=()=>{if(!this.isDisposed){if(this._setDisposed(),this._safeCleanup(),this._unsubscribes!==N){for(let i=0;i<this._unsubscribes.length;i++){const r=this._unsubscribes[i];r&&r()}j.release(this._unsubscribes),this._unsubscribes=N}this._dependencies!==y&&(k.release(this._dependencies),this._dependencies=y),this._dependencyVersions!==S&&(A.release(this._dependencyVersions),this._dependencyVersions=S)}},this.addDependency=i=>{if(this.isExecuting&&this._nextDeps&&this._nextUnsubs&&this._nextVersions){const r=this._currentEpoch;if(i._lastSeenEpoch===r)return;i._lastSeenEpoch=r,this._nextDeps.push(i),this._nextVersions.push(i.version),i._tempUnsub?(this._nextUnsubs.push(i._tempUnsub),i._tempUnsub=void 0):this._subscribeTo(i)}},this.execute=()=>{if(this.isDisposed||this.isExecuting||!this._shouldExecute())return;this._checkInfiniteLoop(),this._setExecuting(!0),this._safeCleanup();const i=this._prepareEffectExecutionContext();let r=!1;try{const o=B.run(this,this._fn);this._commitEffect(i),r=!0,this._checkLoopWarnings(),Ne(o)?o.then(c=>{!this.isDisposed&&typeof c=="function"&&(this._cleanup=c)}).catch(c=>{this._handleExecutionError(c)}):this._cleanup=typeof o=="function"?o:null}catch(o){r=!0,this._handleExecutionError(o),this._cleanup=null}finally{this._cleanupEffect(i,r),this._setExecuting(!1)}},this._cleanup=null,this._dependencies=y,this._dependencyVersions=S,this._unsubscribes=N,this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null,this._onError=s.onError??null,this._currentEpoch=-1,this._lastFlushEpoch=-1,this._executionsInEpoch=0,this._fn=e,this._sync=s.sync??!1,this._maxExecutions=s.maxExecutionsPerSecond??P.MAX_EXECUTIONS_PER_SECOND,this._maxExecutionsPerFlush=s.maxExecutionsPerFlush??P.MAX_EXECUTIONS_PER_EFFECT,this._trackModifications=s.trackModifications??!1,this._historyPtr=0;const n=Number.isFinite(this._maxExecutions);this._historyCapacity=n?Math.min(this._maxExecutions+1,P.MAX_EXECUTIONS_PER_SECOND+1):0,this._history=T&&n&&this._historyCapacity>0?new Array(this._historyCapacity).fill(0):null,this._executionCount=0,v.attachDebugInfo(this,"effect",this.id)}_prepareEffectExecutionContext(){const e=this._dependencies,s=this._dependencyVersions,n=this._unsubscribes,i=k.acquire(),r=A.acquire(),o=j.acquire(),c=Re();if(e!==y&&n!==N)for(let h=0;h<e.length;h++){const d=e[h];d&&(d._tempUnsub=n[h])}return this._nextDeps=i,this._nextVersions=r,this._nextUnsubs=o,this._currentEpoch=c,{prevDeps:e,prevVersions:s,prevUnsubs:n,nextDeps:i,nextVersions:r,nextUnsubs:o}}_commitEffect(e){const s=e.nextDeps.length;e.nextDeps.length=s,e.nextVersions.length=s,this._dependencies=e.nextDeps,this._dependencyVersions=e.nextVersions,this._unsubscribes=e.nextUnsubs}_cleanupEffect(e,s){if(this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null,s){if(e.prevDeps!==y){for(let n=0;n<e.prevDeps.length;n++){const i=e.prevDeps[n];i?._tempUnsub&&(i._tempUnsub(),i._tempUnsub=void 0)}k.release(e.prevDeps)}e.prevUnsubs!==N&&j.release(e.prevUnsubs),e.prevVersions!==S&&A.release(e.prevVersions)}else{k.release(e.nextDeps),A.release(e.nextVersions);for(let n=0;n<e.nextUnsubs.length;n++)e.nextUnsubs[n]?.();if(j.release(e.nextUnsubs),e.prevDeps!==y)for(let n=0;n<e.prevDeps.length;n++){const i=e.prevDeps[n];i&&(i._tempUnsub=void 0)}}}_subscribeTo(e){try{const s=e.subscribe(()=>{this._trackModifications&&this.isExecuting&&(e._modifiedAtEpoch=this._currentEpoch),this._sync?this.execute():K.schedule(this.execute)});this._nextUnsubs&&this._nextUnsubs.push(s)}catch(s){console.error(W(s,V,b.EFFECT_EXECUTION_FAILED)),this._nextUnsubs&&this._nextUnsubs.push(()=>{})}}get isDisposed(){return(this.flags&te.DISPOSED)!==0}get executionCount(){return this._executionCount}get isExecuting(){return(this.flags&te.EXECUTING)!==0}_setDisposed(){this.flags|=te.DISPOSED}_setExecuting(e){const s=te.EXECUTING;this.flags=this.flags&~s|-Number(e)&s}_safeCleanup(){if(this._cleanup){try{this._cleanup()}catch(e){console.error(W(e,V,b.EFFECT_CLEANUP_FAILED))}this._cleanup=null}}_checkInfiniteLoop(){if(this._lastFlushEpoch!==ie&&(this._lastFlushEpoch=ie,this._executionsInEpoch=0),this._executionsInEpoch++,this._executionsInEpoch>this._maxExecutionsPerFlush&&this._throwInfiniteLoopError("per-effect"),rt()>P.MAX_EXECUTIONS_PER_FLUSH&&this._throwInfiniteLoopError("global"),this._executionCount++,this._history&&this._maxExecutions>0){const e=Date.now(),s=this._historyPtr,n=this._historyCapacity;this._history[s]=e;const i=(s+1)%n,r=this._history[i]??0;if(this._historyPtr=i,r>0&&e-r<He.ONE_SECOND_MS){const o=new V(`Effect executed ${n} times within 1 second. Infinite loop suspected`);if(this.dispose(),console.error(o),this._onError&&this._onError(o),T)throw o}}}_throwInfiniteLoopError(e){const s=new V(`Infinite loop detected (${e}): effect executed ${this._executionsInEpoch} times in current flush. Total executions in flush: ${ge}`);throw this.dispose(),console.error(s),s}_shouldExecute(){if(this._dependencies===y||this._dependencyVersions===S)return!0;for(let e=0;e<this._dependencies.length;e++){const s=this._dependencies[e];if(s){if("value"in s)try{Ee(()=>s.value)}catch{return!0}if(s.version!==this._dependencyVersions[e])return!0}}return!1}_handleExecutionError(e){const s=W(e,V,b.EFFECT_EXECUTION_FAILED);console.error(s),this._onError&&this._onError(s)}_checkLoopWarnings(){if(this._trackModifications&&v.enabled){const e=this._dependencies;for(let s=0;s<e.length;s++){const n=e[s];n&&n._modifiedAtEpoch===this._currentEpoch&&v.warn(!0,`Effect is reading a dependency (${v.getDebugName(n)||"unknown"}) that it just modified. Infinite loop may occur`)}}}}function L(t,e={}){if(typeof t!="function")throw new V(b.EFFECT_MUST_BE_FUNCTION);const s=new ht(t,e);return s.execute(),s}function Le(t){if(typeof t!="function")throw new x("Batch callback must be a function");K.startBatch();try{return t()}finally{K.endBatch()}}function at(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t}function ce(t){if(!t)return"unknown";const e="jquery"in t?t[0]:t;if(!e)return"unknown";if(e.id)return`#${e.id}`;if(e.className){const s=String(e.className).split(/\s+/).filter(Boolean).join(".");return s?`${e.tagName.toLowerCase()}.${s}`:e.tagName.toLowerCase()}return e.tagName.toLowerCase()}function lt(t){const e=t.length;if(e===0)return new Int32Array(0);const s=new Int32Array(e),n=new Int32Array(e);let i=0;for(let o=0;o<e;o++){const c=t[o];if(c===-1)continue;if(i===0||t[n[i-1]]<c){s[o]=i>0?n[i-1]:-1,n[i++]=o;continue}let h=0,d=i-1;for(;h<d;){const D=h+d>>>1;t[n[D]]<c?h=D+1:d=D}c<t[n[h]]&&(h>0&&(s[o]=n[h-1]),n[h]=o)}const r=new Int32Array(i);for(let o=i-1,c=n[i-1];o>=0;o--)r[o]=c,c=s[c];return r}function ft(){if(typeof window<"u"){const t=window.__ATOM_DEBUG__;if(typeof t=="boolean")return t}try{if(typeof process<"u"&&process.env&&process.env.NODE_ENV==="development")return!0}catch{}return!1}let q=ft();const g={get enabled(){return q},set enabled(t){q=t},log(t,...e){q&&console.log(`[atom-effect-jquery] ${t}:`,...e)},atomChanged(t,e,s){q&&console.log(`[atom-effect-jquery] Atom "${t||"anonymous"}" changed:`,e,"→",s)},domUpdated(t,e,s){if(!q)return;const n=ce(t);console.log(`[atom-effect-jquery] DOM updated: ${n}.${e} =`,s),dt(t)},cleanup(t){q&&console.log(`[atom-effect-jquery] Cleanup: ${t}`)},warn(...t){q&&console.warn("[atom-effect-jquery]",...t)}};function dt(t){const e=t[0];if(!e||!document.contains(e))return;const s="atom_debug_timer",n="atom_debug_cleanup_timer",i="atom_debug_org_style";clearTimeout(t.data(s)),clearTimeout(t.data(n)),t.data(i)||t.data(i,{outline:t.css("outline"),outlineOffset:t.css("outline-offset"),transition:t.css("transition")}),t.css({outline:"2px solid rgba(255, 68, 68, 0.8)","outline-offset":"1px",transition:"none"});const r=setTimeout(()=>{const o=t.data(i);t.css("transition","outline 0.5s ease-out"),requestAnimationFrame(()=>{t.css({outline:o?.outline||"","outline-offset":o?.outlineOffset||""});const c=setTimeout(()=>{t.css("transition",o?.transition||""),t.removeData(s),t.removeData(n),t.removeData(i)},500);t.data(n,c)})},100);t.data(s,r)}const _t=new WeakMap;function Pe(t,e={}){const s=Ue(t,e);return e.name&&_t.set(s,{name:e.name}),s}Object.defineProperty(Pe,"debug",{get(){return g.enabled},set(t){g.enabled=t}});function pt(){return new Promise(t=>setTimeout(t,0))}u.extend({atom:Pe,computed:ke,effect:L,batch:Le,untracked:Ee,isAtom:pe,isComputed:ve,isReactive:t=>pe(t)||ve(t),nextTick:pt});const ue="aes-bound";class gt{effects=new WeakMap;cleanups=new WeakMap;boundElements=new WeakSet;preservedNodes=new WeakSet;ignoredNodes=new WeakSet;keep(e){this.preservedNodes.add(e)}isKept(e){return this.preservedNodes.has(e)}markIgnored(e){this.ignoredNodes.add(e)}isIgnored(e){return this.ignoredNodes.has(e)}trackEffect(e,s){let n=this.effects.get(e);n||(n=[],this.effects.set(e,n),this.boundElements.has(e)||(this.boundElements.add(e),e.classList.add(ue))),n.push(s)}trackCleanup(e,s){let n=this.cleanups.get(e);n||(n=[],this.cleanups.set(e,n),this.boundElements.has(e)||(this.boundElements.add(e),e.classList.add(ue))),n.push(s)}hasBind(e){return this.boundElements.has(e)}cleanup(e){if(!this.boundElements.delete(e))return;e.classList.remove(ue),g.cleanup(ce(e));const s=this.effects.get(e);if(s){this.effects.delete(e);for(let i=0,r=s.length;i<r;i++){const o=s[i];if(o)try{o.dispose()}catch(c){g.warn("Effect dispose error:",c)}}}const n=this.cleanups.get(e);if(n){this.cleanups.delete(e);for(let i=0,r=n.length;i<r;i++){const o=n[i];if(o)try{o()}catch(c){g.warn("Cleanup error:",c)}}}}cleanupDescendants(e){const s=e.querySelectorAll(`.${ue}`);for(let n=0,i=s.length;n<i;n++){const r=s[n];r&&this.boundElements.has(r)&&this.cleanup(r)}}cleanupTree(e){this.cleanupDescendants(e),this.cleanup(e)}}const f=new gt;let Z=null;function Me(t=document.body){Z||(Z=new MutationObserver(e=>{for(let s=0,n=e.length;s<n;s++){const i=e[s];if(!i)continue;const r=i.removedNodes;for(let o=0,c=r.length;o<c;o++){const h=r[o];h&&(f.isKept(h)||f.isIgnored(h)||h.isConnected||h.nodeType===1&&f.cleanupTree(h))}}}),Z.observe(t,{childList:!0,subtree:!0}))}function Et(){Z?.disconnect(),Z=null}function p(t,e,s,n){const i=u(t),r=t;if(at(e)){const o=L(()=>{const c=e.value;s(c),g.domUpdated(i,n,c)});f.trackEffect(r,o)}else s(e)}function Ve(){return{timeoutId:null,phase:"idle",hasFocus:!1}}function je(t,e,s={}){const{debounce:n,event:i="input",parse:r=I=>I,format:o=I=>String(I??"")}=s,c=Ve(),h=()=>{c.phase="composing"},d=()=>{c.phase="idle",R()};t.on("compositionstart",h),t.on("compositionend",d);const D=()=>{c.hasFocus=!0},G=()=>{c.hasFocus=!1;const I=o(e.value);t.val()!==I&&t.val(I)};t.on("focus",D),t.on("blur",G);const R=()=>{c.phase==="idle"&&(c.phase="syncing-to-atom",e.value=r(t.val()),c.phase="idle")},O=()=>{c.phase==="idle"&&(n?(c.timeoutId&&clearTimeout(c.timeoutId),c.timeoutId=window.setTimeout(R,n)):R())};return t.on(i,O),t.on("change",O),{effect:()=>{const I=o(e.value),Y=t.val();if(Y!==I){if(c.hasFocus&&r(Y)===e.value)return;c.phase="syncing-to-dom",t.val(I),g.domUpdated(t,"val",I),c.phase="idle"}},cleanup:()=>{t.off(i,O),t.off("change",O),t.off("compositionstart",h),t.off("compositionend",d),t.off("focus",D),t.off("blur",G),c.timeoutId&&clearTimeout(c.timeoutId)}}}u.fn.atomText=function(t,e){return this.each(function(){p(this,t,s=>{const n=e?e(s):String(s??"");u(this).text(n)},"text")})},u.fn.atomHtml=function(t){return this.each(function(){p(this,t,e=>u(this).html(String(e??"")),"html")})},u.fn.atomClass=function(t,e){return this.each(function(){p(this,e,s=>u(this).toggleClass(t,!!s),`class.${t}`)})},u.fn.atomCss=function(t,e,s){return this.each(function(){p(this,e,n=>{const i=s?`${n}${s}`:n;u(this).css(t,i)},`css.${t}`)})},u.fn.atomAttr=function(t,e){return this.each(function(){p(this,e,s=>{const n=u(this);s==null||s===!1?n.removeAttr(t):s===!0?n.attr(t,t):n.attr(t,String(s))},`attr.${t}`)})},u.fn.atomProp=function(t,e){return this.each(function(){p(this,e,s=>u(this).prop(t,s),`prop.${t}`)})},u.fn.atomShow=function(t){return this.each(function(){p(this,t,e=>u(this).toggle(!!e),"show")})},u.fn.atomHide=function(t){return this.each(function(){p(this,t,e=>u(this).toggle(!e),"hide")})},u.fn.atomVal=function(t,e={}){return this.each(function(){const s=u(this),{effect:n,cleanup:i}=je(s,t,e),r=L(n);f.trackEffect(this,r),f.trackCleanup(this,i)})},u.fn.atomChecked=function(t){return this.each(function(){const e=u(this);let s=!1;const n=()=>{s||(t.value=!!e.prop("checked"))};e.on("change",n),f.trackCleanup(this,()=>e.off("change",n));const i=L(()=>{s=!0;const r=!!t.value;e.prop("checked",r),g.domUpdated(e,"checked",r),s=!1});f.trackEffect(this,i)})},u.fn.atomOn=function(t,e){return this.each(function(){const s=u(this);s.on(t,e),f.trackCleanup(this,()=>s.off(t,e))})},u.fn.atomUnbind=function(){return this.each(function(){f.cleanupTree(this)})};function bt(t,e){p(t.el,e,s=>{t.el.textContent=String(s??"")},"text")}function mt(t,e){p(t.el,e,s=>{t.el.innerHTML=String(s??"")},"html")}function yt(t,e){for(const s in e)p(t.el,e[s],n=>{t.el.classList.toggle(s,!!n)},`class.${s}`)}function St(t,e){const s=t.el.style;for(const n in e){const i=e[n];if(i===void 0)continue;const r=n.includes("-")?n.replace(/-./g,o=>o.charAt(1).toUpperCase()):n;if(Array.isArray(i)){const[o,c]=i;p(t.el,o,h=>{s[r]=`${h}${c}`},`css.${n}`)}else p(t.el,i,o=>{s[r]=o},`css.${n}`)}}function Dt(t,e){const s=t.el;for(const n in e){const i=e[n];p(s,i,r=>{if(r==null||r===!1){s.removeAttribute(n);return}s.setAttribute(n,r===!0?n:String(r))},`attr.${n}`)}}function It(t,e){const s=t.el;for(const n in e)p(s,e[n],i=>{s[n]=i},`prop.${n}`)}function Ct(t,e){p(t.el,e,s=>{t.$el.toggle(!!s)},"show")}function Tt(t,e){p(t.el,e,s=>{t.$el.toggle(!s)},"hide")}function vt(t,e){const s=Array.isArray(e)?e[0]:e,n=Array.isArray(e)?e[1]:{},{effect:i,cleanup:r}=je(t.$el,s,n),o=L(i);f.trackEffect(t.el,o),t.trackCleanup(r)}function Nt(t,e){const s=Ve(),n=()=>{s.phase==="idle"&&(e.value=t.$el.prop("checked"))};t.$el.on("change",n),t.trackCleanup(()=>t.$el.off("change",n));const i=L(()=>{s.phase="syncing-to-dom";const r=!!e.value;t.$el.prop("checked",r),g.domUpdated(t.$el,"checked",r),s.phase="idle"});f.trackEffect(t.el,i)}function At(t,e){const s=t.el;for(const n in e){const i=e[n];if(typeof i!="function")continue;const r=o=>i.call(s,u.Event(o));s.addEventListener(n,r),t.trackCleanup(()=>s.removeEventListener(n,r))}}u.fn.atomBind=function(t){return this.each(function(){const s={$el:u(this),el:this,effects:[],trackCleanup:n=>f.trackCleanup(this,n)};t.text!==void 0&&bt(s,t.text),t.html!==void 0&&mt(s,t.html),t.class&&yt(s,t.class),t.css&&St(s,t.css),t.attr&&Dt(s,t.attr),t.prop&&It(s,t.prop),t.show!==void 0&&Ct(s,t.show),t.hide!==void 0&&Tt(s,t.hide),t.val!==void 0&&vt(s,t.val),t.checked!==void 0&&Nt(s,t.checked),t.on&&At(s,t.on)})},u.fn.atomList=function(t,e){const{key:s,render:n,bind:i,update:r,onAdd:o,onRemove:c,empty:h}=e,d=typeof s=="function"?s:D=>D[s];return this.each(function(){const D=u(this),G=ce(this),R=new Map,O=new Set;let Q=[],z=null;const I=L(()=>{const Y=t.value,U=Y.length;if(U===0?h&&!z&&(z=u(h).appendTo(D)):z&&(z.remove(),z=null),U===0&&R.size===0){Q=[];return}g.log("list",`${G} updating with ${U} items`);const ae=new Array(U),qe=new Set;for(let a=0;a<U;a++){const E=Y[a],C=d(E,a);ae[a]=C,qe.add(C)}for(const[a,E]of R){if(qe.has(a)||O.has(a))continue;const C=()=>{E.$el.remove();const m=E.$el[0];m&&f.cleanup(m),O.delete(a),g.log("list",`${G} removed item:`,a)};if(R.delete(a),O.add(a),c){const m=c(E.$el);m instanceof Promise?m.then(C):C()}else C()}if(U===0){Q=[];return}const Qe=new Map;for(let a=0;a<Q.length;a++){const E=Q[a];E!==void 0&&Qe.set(E,a)}const ze=new Int32Array(U);for(let a=0;a<U;a++){const E=ae[a];ze[a]=E!==void 0?Qe.get(E)??-1:-1}const Xe=lt(ze);let me=Xe.length-1,w=null;for(let a=U-1;a>=0;a--){const E=ae[a],C=Y[a],m=R.get(E);if(m){m.item=C;const X=m.$el[0];if(!X)continue;r&&r(m.$el,C,a),me>=0&&Xe[me]===a?(me--,X.nextSibling!==w&&(w?m.$el.insertBefore(w):m.$el.appendTo(D))):w?m.$el.insertBefore(w):m.$el.appendTo(D),w=X}else{const X=n(C,a),H=(X instanceof Element,u(X));R.set(E,{$el:H,item:C}),w?H.insertBefore(w):H.appendTo(D),i&&i(H,C,a),o&&o(H),g.log("list",`${G} added item:`,E),w=H[0]||null}}Q=ae});f.trackEffect(this,I),f.trackCleanup(this,()=>{R.clear(),O.clear(),Q=[],z?.remove()})})};const he=new WeakMap;u.fn.atomMount=function(t,e={}){return this.each(function(){const s=u(this),n=ce(this),i=he.get(this);i&&(g.log("mount",`${n} unmounting existing component`),i()),g.log("mount",`${n} mounting component`);let r;try{r=t(s,e)}catch(h){console.error("[atom-effect-jquery] Mount error:",h);return}let o=!1;const c=()=>{if(!o){if(o=!0,g.log("mount",`${n} full cleanup`),typeof r=="function")try{r()}catch{}f.cleanupTree(this),he.delete(this)}};he.set(this,c),f.trackCleanup(this,c)})},u.fn.atomUnmount=function(){return this.each(function(){he.get(this)?.()})};const $=new WeakMap;let Be=!1;function be(){if(Be)return;Be=!0;const t=u.fn.on,e=u.fn.off,s=u.fn.remove,n=u.fn.empty,i=u.fn.detach;u.fn.remove=function(r){return(r?this.filter(r):this).each(function(){f.cleanupTree(this),f.markIgnored(this)}),s.call(this,r)},u.fn.empty=function(){return this.each(function(){f.cleanupDescendants(this)}),n.call(this)},u.fn.detach=function(r){return(r?this.filter(r):this).each(function(){f.keep(this)}),i.call(this,r)},u.fn.on=function(...r){let o=-1;for(let c=r.length-1;c>=0;c--)if(typeof r[c]=="function"){o=c;break}if(o!==-1){const c=r[o];let h;$.has(c)?h=$.get(c):(h=function(...d){return c.apply(this,d)},$.set(c,h)),r[o]=h}return t.apply(this,r)},u.fn.off=function(...r){let o=-1;for(let c=r.length-1;c>=0;c--)if(typeof r[c]=="function"){o=c;break}if(o!==-1){const c=r[o];$.has(c)&&(r[o]=$.get(c))}return e.apply(this,r)}}const Rt=be;be(),u(()=>{Me(document.body)}),_.default=u,_.atom=Ue,_.batch=Le,_.computed=ke,_.disableAutoCleanup=Et,_.effect=L,_.enableAutoCleanup=Me,_.enablejQueryBatching=Rt,_.enablejQueryOverrides=be,_.registry=f,_.untracked=Ee,Object.defineProperties(_,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
2
2
  //# sourceMappingURL=atom-effect-jquery.min.js.map