@but212/atom-effect-jquery 0.15.0 → 0.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/atom-effect-jquery.min.js +1 -1
- package/dist/atom-effect-jquery.min.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.mjs +469 -436
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(p,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("jquery")):typeof define=="function"&&define.amd?define(["exports","jquery"],h):(p=typeof globalThis<"u"?globalThis:p||self,h(p.AtomEffectJQuery={},p.jQuery))})(this,(function(p,h){"use strict";const Qe={ONE_SECOND_MS:1e3},se={IDLE:"idle",PENDING:"pending",RESOLVED:"resolved",REJECTED:"rejected"},A={DISPOSED:1,HAS_FN_SUBS:2,HAS_OBJ_SUBS:4},x={...A,EXECUTING:8},l={...A,DIRTY:8,IDLE:16,PENDING:32,RESOLVED:64,REJECTED:128,RECOMPUTING:256,HAS_ERROR:512},U={...A,SYNC:8,NOTIFICATION_SCHEDULED:16},k={MAX_EXECUTIONS_PER_SECOND:1e3,MAX_EXECUTIONS_PER_EFFECT:100,MAX_EXECUTIONS_PER_FLUSH:1e4,MAX_FLUSH_ITERATIONS:1e3,MIN_FLUSH_ITERATIONS:10,BATCH_QUEUE_SHRINK_THRESHOLD:1e3},De={MAX_DEPENDENCIES:1e3,WARN_INFINITE_LOOP:!0},B=1073741823,D=typeof process<"u"&&process.env&&process.env.NODE_ENV!=="production",Ye=Object.freeze([]);class F 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 F{constructor(e,s=null){super(e,s,!0),this.name="ComputedError"}}class G extends F{constructor(e,s=null){super(e,s,!1),this.name="EffectError"}}class ne extends F{constructor(e,s=null){super(e,s,!1),this.name="SchedulerError"}}const E={COMPUTED_MUST_BE_FUNCTION:"Computed function must be a function",COMPUTED_SUBSCRIBER_MUST_BE_FUNCTION:"Subscriber listener must be a function or Subscriber object",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",COMPUTED_CIRCULAR_DEPENDENCY:"Circular dependency detected during computation",COMPUTED_DEPENDENCY_SUBSCRIPTION_FAILED:"Failed to subscribe to dependency",ATOM_SUBSCRIBER_MUST_BE_FUNCTION:"Subscription listener must be a function or Subscriber object",ATOM_SUBSCRIBER_EXECUTION_FAILED:"Error occurred while executing atom subscribers",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",EFFECT_DISPOSED:"Cannot run a disposed effect",LARGE_DEPENDENCY_GRAPH:t=>`Large dependency graph detected: ${t} dependencies`,UNSUBSCRIBE_NON_EXISTENT:"Attempted to unsubscribe a non-existent listener",CALLBACK_ERROR_IN_ERROR_HANDLER:"Error occurred during onError callback execution"},fe=Symbol("debugName"),Je=Symbol("id"),de=Symbol("type"),Ce=Symbol("noDefaultValue");function Ke(t){return"dependencies"in t&&Array.isArray(t.dependencies)}let Ne=0;function Te(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 o=n[i];o&&Te(o,e,s)}}}}const w={enabled:typeof process<"u"&&process.env?.NODE_ENV==="development",maxDependencies:De.MAX_DEPENDENCIES,warnInfiniteLoop:De.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&&(Ne++,Te(t,e,Ne))},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 Oe{constructor(){this.flags=0,this.version=0,this._lastSeenEpoch=-1,this._modifiedAtEpoch=-1,this._visitedEpoch=-1,this.id=Ze()&B,this._tempUnsub=void 0}getShift(e){return this.version-e&B}}class Re extends Oe{subscribe(e){if(typeof e=="function")return this._addSubscriber(this._fnSubs,e,A.HAS_FN_SUBS);if(e!==null&&typeof e=="object"&&"execute"in e)return this._addSubscriber(this._objSubs,e,A.HAS_OBJ_SUBS);throw new F(E.ATOM_SUBSCRIBER_MUST_BE_FUNCTION)}subscriberCount(){return this._fnSubs.length+this._objSubs.length}_addSubscriber(e,s,n){if(e.indexOf(s)!==-1)return D&&console.warn("Attempted to subscribe the same listener twice. Ignoring duplicate subscription."),()=>{};e.push(s),this.flags|=n;let i=!1;return()=>{if(i)return;i=!0;const o=e.indexOf(s);if(o!==-1){const r=e.pop();o<e.length&&(e[o]=r),this.flags&=~(e.length===0?n:0)}}}_notifySubscribers(e,s){const n=this.flags,i=A.HAS_FN_SUBS|A.HAS_OBJ_SUBS;if(n&i){if(n&A.HAS_FN_SUBS){const o=this._fnSubs;for(let r=0,c=o.length;r<c;r++){const u=o[r];if(u)try{u(e,s)}catch(a){console.error(new F(E.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,a))}}}if(n&A.HAS_OBJ_SUBS){const o=this._objSubs;for(let r=0,c=o.length;r<c;r++){const u=o[r];if(u)try{u.execute()}catch(a){console.error(new F(E.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,a))}}}}}}class $e{constructor(){this.acquired=0,this.released=0,this.rejected=new et}}class et{constructor(){this.frozen=0,this.tooLarge=0,this.poolFull=0}}class _e{constructor(){this.pool=[],this.maxPoolSize=50,this.maxReusableCapacity=256,this.stats=D?new $e:null}acquire(){const e=this.stats;return D&&e&&e.acquired++,this.pool.pop()??[]}release(e,s){if(s&&e===s||Object.isFrozen(e)){const c=this.stats;D&&c&&e!==s&&c.rejected.frozen++;return}const n=e.length,i=this.pool,o=i.length;if(n>this.maxReusableCapacity||o>=this.maxPoolSize){const c=this.stats;D&&c&&(n>this.maxReusableCapacity?c.rejected.tooLarge++:c.rejected.poolFull++);return}e.length=0,i.push(e);const r=this.stats;D&&r&&r.released++}getStats(){const e=this.stats;if(!D||!e)return null;const{acquired:s,released:n,rejected:i}=e,o=i.frozen+i.tooLarge+i.poolFull;return{acquired:s,released:n,rejected:{frozen:i.frozen,tooLarge:i.tooLarge,poolFull:i.poolFull},leaked:s-n-o,poolSize:this.pool.length}}reset(){this.pool.length=0;const e=this.stats;D&&e&&(e.acquired=0,e.released=0,e.rejected.frozen=0,e.rejected.tooLarge=0,e.rejected.poolFull=0)}}const C=Object.freeze([]),j=Object.freeze([]),T=Object.freeze([]),V=new _e,Q=new _e,L=new _e;function H(t,e,s,n){if(e!=null){if((typeof e=="object"||typeof e=="function")&&typeof e.addDependency=="function"){e.addDependency(t);return}if(typeof e=="function"){const i=e;s.indexOf(i)===-1&&(s.push(i),t.flags|=A.HAS_FN_SUBS);return}typeof e=="object"&&typeof e.execute=="function"&&n.indexOf(e)===-1&&(n.push(e),t.flags|=A.HAS_OBJ_SUBS)}}function Ae(t,e,s,n){const i=t.length,o=e.length,r=e!==C&&o>0;if(r)for(let u=0;u<o;u++){const a=e[u];a&&(a._tempUnsub=s[u])}const c=Q.acquire();c.length=i;for(let u=0;u<i;u++){const a=t[u];if(!a)continue;const d=a._tempUnsub;d?(c[u]=d,a._tempUnsub=void 0):(w.checkCircular(a,n),c[u]=a.subscribe(n))}if(r)for(let u=0;u<o;u++){const a=e[u];if(a){const d=a._tempUnsub;d&&(d(),a._tempUnsub=void 0)}}return s!==j&&Q.release(s),c}let ie=0;function xe(){return ie=ie+1&B||1,ie}function tt(){return ie}let pe=0,Ee=0,oe=!1;function ve(){return oe?(D&&console.warn("Warning: startFlush() called during flush - ignored to prevent infinite loop detection bypass"),!1):(oe=!0,pe=pe+1&B||1,Ee=0,!0)}function Ue(){oe=!1}function st(){return oe?++Ee:0}class nt{constructor(){this._queueBuffer=[[],[]],this._bufferIndex=0,this._size=0,this._epoch=0,this.isProcessing=!1,this.isBatching=!1,this.batchDepth=0,this.batchQueue=[],this.batchQueueSize=0,this.isFlushingSync=!1,this.maxFlushIterations=k.MAX_FLUSH_ITERATIONS}get phase(){return this.isProcessing||this.isFlushingSync?2:this.isBatching?1:0}get queueSize(){return this._size}schedule(e){if(D&&typeof e!="function")throw new ne("Scheduler callback must be a function");const s=this._epoch;if(e._nextEpoch!==s){if(e._nextEpoch=s,this.isBatching||this.isFlushingSync){this.batchQueue[this.batchQueueSize++]=e;return}this._queueBuffer[this._bufferIndex][this._size++]=e,this.isProcessing||this.flush()}}flush(){this.isProcessing||this._size===0||(this.isProcessing=!0,queueMicrotask(()=>{try{if(this._size===0)return;const e=ve();this._drainQueue(),e&&Ue()}finally{this.isProcessing=!1,this._size>0&&!this.isBatching&&this.flush()}}))}flushSync(){this.isFlushingSync=!0;const e=ve();try{this._mergeBatchQueue(),this._drainQueue()}finally{this.isFlushingSync=!1,e&&Ue()}}_mergeBatchQueue(){const e=this.batchQueueSize;if(e===0)return;const s=++this._epoch,n=this.batchQueue,i=this._queueBuffer[this._bufferIndex];let o=this._size;for(let r=0;r<e;r++){const c=n[r];c._nextEpoch!==s&&(c._nextEpoch=s,i[o++]=c)}this._size=o,this.batchQueueSize=0,n.length>k.BATCH_QUEUE_SHRINK_THRESHOLD&&(n.length=0)}_drainQueue(){let e=0;const s=this.maxFlushIterations;for(;this._size>0;){if(++e>s){this._handleFlushOverflow();return}this._processQueue(),this._mergeBatchQueue()}}_processQueue(){const e=this._bufferIndex,s=this._queueBuffer[e],n=this._size,i=e^1;this._bufferIndex=i,this._size=0,this._epoch++,this._processJobs(s,n)}_handleFlushOverflow(){console.error(new ne(`Maximum flush iterations (${this.maxFlushIterations}) exceeded. Possible infinite loop.`)),this._size=0,this._queueBuffer[this._bufferIndex].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(){if(this.batchDepth===0){D&&console.warn("endBatch() called without matching startBatch(). Ignoring.");return}this.batchDepth--,this.batchDepth===0&&(this.flushSync(),this.isBatching=!1)}setMaxFlushIterations(e){if(e<k.MIN_FLUSH_ITERATIONS)throw new ne(`Max flush iterations must be at least ${k.MIN_FLUSH_ITERATIONS}`);this.maxFlushIterations=e}}const Z=new nt;class it{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 N=new it;function ge(t){if(typeof t!="function")throw new F("Untracked callback must be a function");const e=N.current;N.current=null;try{return t()}finally{N.current=e}}class ot extends Re{constructor(e,s){super(),this._value=e,this._pendingOldValue=void 0,this._notifyTask=void 0,this._fnSubs=[],this._objSubs=[],s&&(this.flags|=U.SYNC),w.attachDebugInfo(this,"atom",this.id)}get value(){const e=N.current;return e&&H(this,e,this._fnSubs,this._objSubs),this._value}set value(e){const s=this._value;if(Object.is(s,e))return;this._value=e,this.version=this.version+1&B;const n=this.flags,i=U.HAS_FN_SUBS|U.HAS_OBJ_SUBS;n&i&&this._scheduleNotification(s)}_scheduleNotification(e){let s=this.flags;if(s&U.NOTIFICATION_SCHEDULED||(this._pendingOldValue=e,this.flags=s|=U.NOTIFICATION_SCHEDULED),s&U.SYNC&&!Z.isBatching){this._flushNotifications();return}let n=this._notifyTask;n||(n=this._notifyTask=()=>this._flushNotifications()),Z.schedule(n)}_flushNotifications(){const e=this.flags;if(!(e&U.NOTIFICATION_SCHEDULED)||e&U.DISPOSED)return;const s=this._pendingOldValue,n=this._value;this._pendingOldValue=void 0,this.flags&=-17,this._notifySubscribers(n,s)}peek(){return this._value}dispose(){this.flags&U.DISPOSED||(this._fnSubs=[],this._objSubs=[],this.flags|=U.DISPOSED,this._value=void 0,this._pendingOldValue=void 0,this._notifyTask=void 0)}}function we(t,e={}){return new ot(t,e.sync??!1)}function $(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 F)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)}function be(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t&&typeof t.subscribe=="function"}function Fe(t){if(w.enabled&&t!=null&&typeof t=="object"){const e=w.getDebugType(t);if(e)return e==="computed"}return be(t)&&"invalidate"in t&&typeof t.invalidate=="function"}function Le(t){return t!=null&&typeof t.then=="function"}const Pe=l.RESOLVED|l.PENDING|l.REJECTED,re=Array(Pe+1).fill(se.IDLE);re[l.RESOLVED]=se.RESOLVED,re[l.PENDING]=se.PENDING,re[l.REJECTED]=se.REJECTED;class rt{constructor(e){this._owner=e,this._epoch=-1,this._nextDeps=C,this._nextVersions=T,this._depCount=0}execute(){this._owner._markDirty()}addDependency(e){if(e._lastSeenEpoch===this._epoch)return;e._lastSeenEpoch=this._epoch;const s=this._depCount,n=this._nextDeps,i=this._nextVersions;s<n.length?(n[s]=e,i[s]=e.version):(n.push(e),i.push(e.version)),this._depCount=s+1}reset(){this._epoch=-1,this._nextDeps=C,this._nextVersions=T,this._depCount=0}}class ke extends Re{constructor(e,s={}){if(typeof e!="function")throw new M(E.COMPUTED_MUST_BE_FUNCTION);if(super(),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:Ce,this._hasDefaultValue=this._defaultValue!==Ce,this._onError=s.onError??null,this.MAX_PROMISE_ID=Number.MAX_SAFE_INTEGER-1,this._fnSubs=[],this._objSubs=[],this._dependencies=C,this._dependencyVersions=T,this._unsubscribes=j,this._cachedErrors=null,this._errorCacheEpoch=-1,this._asyncStartAggregateVersion=0,this._asyncRetryCount=0,this._trackable=new rt(this),w.attachDebugInfo(this,"computed",this.id),w.enabled){const n=this;n.subscriberCount=this.subscriberCount.bind(this),n.isDirty=()=>(this.flags&l.DIRTY)!==0,n.dependencies=this._dependencies,n.stateFlags=""}if(s.lazy===!1)try{this._recompute()}catch{}}get value(){const e=N.current;e&&H(this,e,this._fnSubs,this._objSubs);const s=this.flags;if(s&l.RECOMPUTING){if(this._hasDefaultValue)return this._defaultValue;throw new M(E.COMPUTED_CIRCULAR_DEPENDENCY)}s&(l.DIRTY|l.IDLE)&&this._recompute();const n=this.flags;return n&l.PENDING?this._handlePending():n&l.REJECTED?this._handleRejected():this._value}peek(){return this._value}get state(){const e=N.current;return e&&H(this,e,this._fnSubs,this._objSubs),re[this.flags&Pe]}get hasError(){const e=N.current;if(e&&H(this,e,this._fnSubs,this._objSubs),this.flags&(l.REJECTED|l.HAS_ERROR))return!0;const s=this._dependencies;for(let n=0,i=s.length;n<i;n++){const o=s[n];if(o&&o.flags&l.HAS_ERROR)return!0}return!1}get isValid(){return!this.hasError}get errors(){const e=N.current;if(e&&H(this,e,this._fnSubs,this._objSubs),!this.hasError)return Ye;const s=tt();if(this._errorCacheEpoch===s&&this._cachedErrors!==null)return this._cachedErrors;const n=new Set;this._error&&n.add(this._error);const i=this._dependencies;for(let r=0,c=i.length;r<c;r++){const u=i[r];if(u&&"errors"in u){const a=u.errors;for(let d=0,q=a.length;d<q;d++){const O=a[d];O&&n.add(O)}}}const o=Object.freeze([...n]);return this._cachedErrors=o,this._errorCacheEpoch=s,o}get lastError(){const e=N.current;return e&&H(this,e,this._fnSubs,this._objSubs),this._error}get isPending(){const e=N.current;return e&&H(this,e,this._fnSubs,this._objSubs),(this.flags&l.PENDING)!==0}get isResolved(){const e=N.current;return e&&H(this,e,this._fnSubs,this._objSubs),(this.flags&l.RESOLVED)!==0}invalidate(){this._markDirty();const e=this._dependencyVersions;e!==T&&(L.release(e),this._dependencyVersions=T),this._errorCacheEpoch=-1,this._cachedErrors=null}dispose(){const e=this._unsubscribes;if(e!==j){for(let i=0,o=e.length;i<o;i++){const r=e[i];r&&r()}Q.release(e),this._unsubscribes=j}const s=this._dependencies;s!==C&&(V.release(s),this._dependencies=C);const n=this._dependencyVersions;n!==T&&(L.release(n),this._dependencyVersions=T),this._fnSubs=[],this._objSubs=[],this.flags=l.DISPOSED|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}_clearDirty(){this.flags&=-9}_setPending(){this.flags=(this.flags|l.PENDING)&-209}_isResolved(){return(this.flags&l.RESOLVED)!==0}_setResolved(){this.flags=(this.flags|l.RESOLVED)&-689}_isRejected(){return(this.flags&l.REJECTED)!==0}_setRejected(){this.flags=this.flags&-113|(l.REJECTED|l.HAS_ERROR)}_setRecomputing(e){const s=l.RECOMPUTING;this.flags=this.flags&~s|(e?-1:0)&s}_recompute(){if(this.flags&l.RECOMPUTING)return;this._setRecomputing(!0);const e=this._trackable,s=this._dependencies,n=this._dependencyVersions;e._epoch=xe(),e._nextDeps=V.acquire(),e._nextVersions=L.acquire(),e._depCount=0;let i=!1;try{const o=N.run(e,this._fn),r=e._nextDeps,c=e._nextVersions,u=e._depCount;r.length=u,c.length=u,this._unsubscribes=Ae(r,s,this._unsubscribes,this),this._dependencies=r,this._dependencyVersions=c,i=!0,Le(o)?this._handleAsyncComputation(o):this._finalizeResolution(o)}catch(o){let r=o;if(!i)try{const c=e._nextDeps,u=e._nextVersions,a=e._depCount;c.length=a,u.length=a,this._unsubscribes=Ae(c,s,this._unsubscribes,this),this._dependencies=c,this._dependencyVersions=u,i=!0}catch(c){r=c}this._handleComputationError(r)}finally{i?(s!==C&&V.release(s),n!==T&&L.release(n)):(V.release(e._nextDeps),L.release(e._nextVersions)),e.reset(),this._setRecomputing(!1)}}_handleAsyncComputation(e){this._setPending(),this._clearDirty(),this._notifySubscribers(void 0,void 0),this._asyncStartAggregateVersion=this._captureVersionSnapshot(),this._asyncRetryCount=0,this._promiseId=(this._promiseId+1)%this.MAX_PROMISE_ID;const s=this._promiseId;e.then(n=>{if(s===this._promiseId){if(this._captureVersionSnapshot()!==this._asyncStartAggregateVersion){if(this._asyncRetryCount<this.MAX_ASYNC_RETRIES){this._asyncRetryCount++,this._markDirty();return}const i=new M(`Async drift exceeded threshold after ${this.MAX_ASYNC_RETRIES} retries.`);this._handleAsyncRejection(i);return}this._finalizeResolution(n),this._notifySubscribers(n,void 0)}}).catch(n=>{s===this._promiseId&&this._handleAsyncRejection(n)})}_captureVersionSnapshot(){let e=0;const s=this._dependencies;for(let n=0,i=s.length;n<i;n++){const o=s[n];if(o){const r=o.version;e=((e<<5)-e|0)+r&B}}return e}_handleAsyncRejection(e){const s=$(e,M,E.COMPUTED_ASYNC_COMPUTATION_FAILED);this.flags&l.REJECTED||(this.version=this.version+1&B),this._error=s,this._setRejected(),this._clearDirty();const n=this._onError;if(n)try{n(s)}catch(i){console.error(E.CALLBACK_ERROR_IN_ERROR_HANDLER,i)}this._notifySubscribers(void 0,void 0)}_finalizeResolution(e){(!(this.flags&l.RESOLVED)||!this._equal(this._value,e))&&(this.version=this.version+1&B),this._value=e,this._clearDirty(),this._setResolved(),this._error=null,this._setRecomputing(!1),this._cachedErrors=null,this._errorCacheEpoch=-1}_handleComputationError(e){const s=$(e,M,E.COMPUTED_COMPUTATION_FAILED);this._error=s,this._setRejected(),this._clearDirty(),this._setRecomputing(!1);const n=this._onError;if(n)try{n(s)}catch(i){console.error(E.CALLBACK_ERROR_IN_ERROR_HANDLER,i)}throw s}_handlePending(){if(this._hasDefaultValue)return this._defaultValue;throw new M(E.COMPUTED_ASYNC_PENDING_NO_DEFAULT)}_handleRejected(){const e=this._error;if(e?.recoverable&&this._hasDefaultValue)return this._defaultValue;throw e}execute(){this._markDirty()}_markDirty(){const e=this.flags;e&(l.RECOMPUTING|l.DIRTY)||(this.flags=e|l.DIRTY,this._notifySubscribers(void 0,void 0))}}Object.freeze(ke.prototype);function Be(t,e={}){return new ke(t,e)}class ct extends Oe{constructor(e,s={}){super(),this._cleanup=null,this._dependencies=C,this._dependencyVersions=T,this._unsubscribes=j,this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null,this._executeTask=void 0,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??k.MAX_EXECUTIONS_PER_SECOND,this._maxExecutionsPerFlush=s.maxExecutionsPerFlush??k.MAX_EXECUTIONS_PER_EFFECT,this._trackModifications=s.trackModifications??!1,this._executionCount=0,this._historyPtr=0;const n=Number.isFinite(this._maxExecutions),i=n?Math.min(this._maxExecutions+1,k.MAX_EXECUTIONS_PER_SECOND+1):0;this._historyCapacity=i,this._history=D&&n&&i>0?new Array(i).fill(0):null,this._execId=0,w.attachDebugInfo(this,"effect",this.id)}run(){if(this.flags&x.DISPOSED)throw new G(E.EFFECT_DISPOSED);this.execute(!0)}dispose(){const e=this.flags;if(e&x.DISPOSED)return;this.flags=e|x.DISPOSED,this._safeCleanup();const s=this._unsubscribes;if(s!==j){for(let o=0,r=s.length;o<r;o++){const c=s[o];c&&c()}Q.release(s),this._unsubscribes=j}const n=this._dependencies;n!==C&&(V.release(n),this._dependencies=C);const i=this._dependencyVersions;i!==T&&(L.release(i),this._dependencyVersions=T),this._executeTask=void 0}addDependency(e){if(!(this.flags&x.EXECUTING))return;const s=this._currentEpoch;if(e._lastSeenEpoch===s)return;e._lastSeenEpoch=s;const n=this._nextDeps,i=this._nextVersions,o=this._nextUnsubs;if(!n||!i||!o)return;n.push(e),i.push(e.version);const r=e._tempUnsub;r?(o.push(r),e._tempUnsub=void 0):this._subscribeTo(e)}execute(e=!1){if(this.flags&(x.DISPOSED|x.EXECUTING)||!e&&!this._shouldExecute())return;this._checkInfiniteLoop(),this._setExecuting(!0),this._safeCleanup();const s=this._prepareEffectExecutionContext();let n=!1;try{const i=N.run(this,this._fn),o=s.nextDeps.length;s.nextDeps.length=o,s.nextVersions.length=o,this._dependencies=s.nextDeps,this._dependencyVersions=s.nextVersions,this._unsubscribes=s.nextUnsubs,n=!0,this._checkLoopWarnings();const r=++this._execId;Le(i)?i.then(c=>{const u=r!==this._execId,a=this.flags&x.DISPOSED;if(u||a){if(typeof c=="function")try{c()}catch(d){this._handleExecutionError(d,E.EFFECT_CLEANUP_FAILED)}return}typeof c=="function"&&(this._cleanup=c)}).catch(c=>{r===this._execId&&this._handleExecutionError(c)}):this._cleanup=typeof i=="function"?i:null}catch(i){n=!0,this._handleExecutionError(i),this._cleanup=null}finally{this._cleanupEffect(s,n),this._setExecuting(!1)}}_prepareEffectExecutionContext(){const e=this._dependencies,s=this._dependencyVersions,n=this._unsubscribes,i=V.acquire(),o=L.acquire(),r=Q.acquire(),c=xe();if(e!==C)for(let u=0,a=e.length;u<a;u++){const d=e[u];d&&(d._tempUnsub=n[u])}return this._nextDeps=i,this._nextVersions=o,this._nextUnsubs=r,this._currentEpoch=c,{prevDeps:e,prevVersions:s,prevUnsubs:n,nextDeps:i,nextVersions:o,nextUnsubs:r}}_cleanupEffect(e,s){this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null;const n=e.prevDeps;if(s){if(n!==C){for(let i=0,o=n.length;i<o;i++){const r=n[i],c=r?r._tempUnsub:void 0;c&&(c(),r&&(r._tempUnsub=void 0))}V.release(n)}e.prevUnsubs!==j&&Q.release(e.prevUnsubs),e.prevVersions!==T&&L.release(e.prevVersions)}else{V.release(e.nextDeps),L.release(e.nextVersions);const i=e.nextUnsubs;for(let o=0,r=i.length;o<r;o++)i[o]?.();if(Q.release(i),n!==C)for(let o=0,r=n.length;o<r;o++){const c=n[o];c&&(c._tempUnsub=void 0)}}}_subscribeTo(e){try{const s=e.subscribe(()=>{if(this._trackModifications&&this.flags&x.EXECUTING&&(e._modifiedAtEpoch=this._currentEpoch),this._sync){this.execute();return}let i=this._executeTask;i||(i=this._executeTask=()=>this.execute()),Z.schedule(i)}),n=this._nextUnsubs;n&&n.push(s)}catch(s){console.error($(s,G,E.EFFECT_EXECUTION_FAILED));const n=this._nextUnsubs;n&&n.push(()=>{})}}get isDisposed(){return(this.flags&x.DISPOSED)!==0}get executionCount(){return this._executionCount}get isExecuting(){return(this.flags&x.EXECUTING)!==0}_setExecuting(e){const s=x.EXECUTING;this.flags=this.flags&~s|(e?-1:0)&s}_safeCleanup(){const e=this._cleanup;if(e){try{e()}catch(s){this._handleExecutionError(s,E.EFFECT_CLEANUP_FAILED)}this._cleanup=null}}_checkInfiniteLoop(){const e=pe;this._lastFlushEpoch!==e&&(this._lastFlushEpoch=e,this._executionsInEpoch=0),++this._executionsInEpoch>this._maxExecutionsPerFlush&&this._throwInfiniteLoopError("per-effect"),st()>k.MAX_EXECUTIONS_PER_FLUSH&&this._throwInfiniteLoopError("global"),this._executionCount++;const s=this._history;if(s){const n=Date.now(),i=this._historyPtr,o=this._historyCapacity;s[i]=n;const r=(i+1)%o;this._historyPtr=r;const c=s[r]??0;if(c>0&&n-c<Qe.ONE_SECOND_MS){const u=new G(`Effect executed ${o} times within 1 second. Infinite loop suspected`);if(this.dispose(),console.error(u),this._onError&&this._onError(u),D)throw u;return}}}_throwInfiniteLoopError(e){const s=new G(`Infinite loop detected (${e}): effect executed ${this._executionsInEpoch} times in current flush. Total executions in flush: ${Ee}`);throw this.dispose(),console.error(s),s}_shouldExecute(){const e=this._dependencies;if(e.length===0)return!0;const s=this._dependencyVersions;for(let n=0,i=e.length;n<i;n++){const o=e[n];if(o){if(o.version!==s[n])return!0;if("value"in o)try{ge(()=>o.value)}catch{return!0}}}return!1}_handleExecutionError(e,s=E.EFFECT_EXECUTION_FAILED){const n=$(e,G,s);console.error(n);const i=this._onError;if(i)try{i(n)}catch(o){console.error($(o,G,E.CALLBACK_ERROR_IN_ERROR_HANDLER))}}_checkLoopWarnings(){if(this._trackModifications&&w.enabled){const e=this._dependencies,s=this._currentEpoch;for(let n=0,i=e.length;n<i;n++){const o=e[n];o&&o._modifiedAtEpoch===s&&w.warn(!0,`Effect is reading a dependency (${w.getDebugName(o)||"unknown"}) that it just modified. Infinite loop may occur`)}}}}function z(t,e={}){if(typeof t!="function")throw new G(E.EFFECT_MUST_BE_FUNCTION);const s=new ct(t,e);return s.execute(),s}function ce(t){if(typeof t!="function")throw new F("Batch callback must be a function");Z.startBatch();try{return t()}finally{Z.endBatch()}}function ut(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t}function ue(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 ht(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 r=0;r<e;r++){const c=t[r];if(c===-1)continue;if(i===0||t[n[i-1]]<c){s[r]=i>0?n[i-1]:-1,n[i++]=r;continue}let u=0,a=i-1;for(;u<a;){const d=u+a>>>1;t[n[d]]<c?u=d+1:a=d}c<t[n[u]]&&(u>0&&(s[r]=n[u-1]),n[u]=r)}const o=new Int32Array(i);for(let r=i-1,c=n[i-1];r>=0;r--)o[r]=c,c=s[c];return o}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 Y=at();const g={get enabled(){return Y},set enabled(t){Y=t},log(t,...e){Y&&console.log(`[atom-effect-jquery] ${t}:`,...e)},atomChanged(t,e,s){Y&&console.log(`[atom-effect-jquery] Atom "${t||"anonymous"}" changed:`,e,"→",s)},domUpdated(t,e,s){if(!Y)return;const n=ue(t);console.log(`[atom-effect-jquery] DOM updated: ${n}.${e} =`,s),lt(t)},cleanup(t){Y&&console.log(`[atom-effect-jquery] Cleanup: ${t}`)},warn(...t){Y&&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 o=setTimeout(()=>{const r=t.data(i);t.css("transition","outline 0.5s ease-out"),requestAnimationFrame(()=>{t.css({outline:r?.outline||"","outline-offset":r?.outlineOffset||""});const c=setTimeout(()=>{t.css("transition",r?.transition||""),t.removeData(s),t.removeData(n),t.removeData(i)},500);t.data(n,c)})},100);t.data(s,o)}const ft=new WeakMap;function Me(t,e={}){const s=we(t,e);return e.name&&ft.set(s,{name:e.name}),s}Object.defineProperty(Me,"debug",{get(){return g.enabled},set(t){g.enabled=t}});function dt(){return new Promise(t=>setTimeout(t,0))}h.extend({atom:Me,computed:Be,effect:z,batch:ce,untracked:ge,isAtom:be,isComputed:Fe,isReactive:t=>be(t)||Fe(t),nextTick:dt});const he="_aes-bound";class _t{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(he))),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(he))),n.push(s)}hasBind(e){return this.boundElements.has(e)}cleanup(e){if(!this.boundElements.delete(e))return;this.preservedNodes.delete(e),this.ignoredNodes.delete(e),e.classList.remove(he),g.cleanup(ue(e));const s=this.effects.get(e);if(s){this.effects.delete(e);for(let i=0,o=s.length;i<o;i++){const r=s[i];if(r)try{r.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,o=n.length;i<o;i++){const r=n[i];if(r)try{r()}catch(c){g.warn("Cleanup error:",c)}}}}cleanupDescendants(e){const s=e.querySelectorAll(`.${he}`);for(let n=0,i=s.length;n<i;n++){const o=s[n];o&&this.boundElements.has(o)&&this.cleanup(o)}}cleanupTree(e){this.cleanupDescendants(e),this.cleanup(e)}}const _=new _t;let ee=null;function je(t=document.body){ee||(ee=new MutationObserver(e=>{for(let s=0,n=e.length;s<n;s++){const i=e[s];if(!i)continue;const o=i.removedNodes;for(let r=0,c=o.length;r<c;r++){const u=o[r];u&&(_.isKept(u)||_.isIgnored(u)||u.isConnected||u.nodeType===1&&_.cleanupTree(u))}}}),ee.observe(t,{childList:!0,subtree:!0}))}function pt(){ee?.disconnect(),ee=null}function b(t,e,s,n){const i=h(t);if(ut(e)){const o=z(()=>{const r=e.value;s(r),g.domUpdated(i,n,r)});_.trackEffect(t,o)}else s(e),g.domUpdated(i,n,e)}function me(){return{timeoutId:null,phase:"idle",hasFocus:!1}}function Ve(t,e,s={}){const{debounce:n,event:i="input",parse:o=S=>S,format:r=S=>String(S??""),equal:c=Object.is}=s,u=me(),a=()=>{u.phase="composing"},d=()=>{u.phase="idle",X()};t.on("compositionstart",a),t.on("compositionend",d);const q=()=>{u.hasFocus=!0},O=()=>{u.hasFocus=!1;const S=r(e.value);t.val()!==S&&t.val(S)};t.on("focus",q),t.on("blur",O);const X=()=>{u.phase==="idle"&&(u.phase="syncing-to-atom",e.value=o(t.val()),u.phase="idle")},v=()=>{u.phase==="idle"&&(n?(u.timeoutId&&clearTimeout(u.timeoutId),u.timeoutId=window.setTimeout(X,n)):X())};return t.on(i,v),t.on("change",v),{effect:()=>{const S=r(e.value),R=t.val();if(R!==S){if(u.hasFocus&&c(o(R),e.value))return;u.phase="syncing-to-dom",t.val(S),g.domUpdated(t,"val",S),u.phase="idle"}},cleanup:()=>{t.off(i,v),t.off("change",v),t.off("compositionstart",a),t.off("compositionend",d),t.off("focus",q),t.off("blur",O),u.timeoutId&&clearTimeout(u.timeoutId)}}}h.fn.atomText=function(t,e){return this.each(function(){b(this,t,s=>{const n=e?e(s):String(s??"");h(this).text(n)},"text")})},h.fn.atomHtml=function(t){return this.each(function(){b(this,t,e=>h(this).html(String(e??"")),"html")})},h.fn.atomClass=function(t,e){return this.each(function(){b(this,e,s=>h(this).toggleClass(t,!!s),`class.${t}`)})},h.fn.atomCss=function(t,e,s){return this.each(function(){b(this,e,n=>{const i=s?`${n}${s}`:n;h(this).css(t,i)},`css.${t}`)})},h.fn.atomAttr=function(t,e){return this.each(function(){b(this,e,s=>{const n=h(this);s==null||s===!1?n.removeAttr(t):s===!0?n.attr(t,t):n.attr(t,String(s))},`attr.${t}`)})},h.fn.atomProp=function(t,e){return this.each(function(){b(this,e,s=>h(this).prop(t,s),`prop.${t}`)})},h.fn.atomShow=function(t){return this.each(function(){b(this,t,e=>h(this).toggle(!!e),"show")})},h.fn.atomHide=function(t){return this.each(function(){b(this,t,e=>h(this).toggle(!e),"hide")})},h.fn.atomVal=function(t,e={}){return this.each(function(){const s=h(this),{effect:n,cleanup:i}=Ve(s,t,e),o=z(n);_.trackEffect(this,o),_.trackCleanup(this,i)})},h.fn.atomChecked=function(t){return this.each(function(){const e=h(this),s=me(),n=()=>{s.phase==="idle"&&(t.value=!!e.prop("checked"))};e.on("change",n),_.trackCleanup(this,()=>e.off("change",n));const i=z(()=>{s.phase="syncing-to-dom";const o=!!t.value;e.prop("checked",o),g.domUpdated(e,"checked",o),s.phase="idle"});_.trackEffect(this,i)})},h.fn.atomOn=function(t,e){return this.each(function(){const s=h(this);s.on(t,e),_.trackCleanup(this,()=>s.off(t,e))})},h.fn.atomUnbind=function(){return this.each(function(){_.cleanupTree(this)})};function Et(t,e){b(t.el,e,s=>{t.el.textContent=String(s??"")},"text")}function gt(t,e){b(t.el,e,s=>{t.el.innerHTML=String(s??"")},"html")}function bt(t,e){for(const s in e)b(t.el,e[s],n=>{t.el.classList.toggle(s,!!n)},`class.${s}`)}function mt(t,e){const s=t.el.style;for(const n in e){const i=e[n];if(i===void 0)continue;const o=n.includes("-")?n.replace(/-./g,r=>r.charAt(1).toUpperCase()):n;if(Array.isArray(i)){const[r,c]=i;b(t.el,r,u=>{s[o]=`${u}${c}`},`css.${n}`)}else b(t.el,i,r=>{s[o]=r},`css.${n}`)}}function St(t,e){const s=t.el;for(const n in e){const i=e[n];b(s,i,o=>{if(o==null||o===!1){s.removeAttribute(n);return}s.setAttribute(n,o===!0?n:String(o))},`attr.${n}`)}}function yt(t,e){const s=t.el;for(const n in e)b(s,e[n],i=>{s[n]=i},`prop.${n}`)}function It(t,e){b(t.el,e,s=>{t.$el.toggle(!!s)},"show")}function Dt(t,e){b(t.el,e,s=>{t.$el.toggle(!s)},"hide")}function Ct(t,e){const s=Array.isArray(e)?e[0]:e,n=Array.isArray(e)?e[1]:{},{effect:i,cleanup:o}=Ve(t.$el,s,n),r=z(i);_.trackEffect(t.el,r),t.trackCleanup(o)}function Nt(t,e){const s=me(),n=()=>{s.phase==="idle"&&(e.value=t.$el.prop("checked"))};t.$el.on("change",n),t.trackCleanup(()=>t.$el.off("change",n));const i=z(()=>{s.phase="syncing-to-dom";const o=!!e.value;t.$el.prop("checked",o),g.domUpdated(t.$el,"checked",o),s.phase="idle"});_.trackEffect(t.el,i)}function Tt(t,e){const s=t.el;for(const n in e){const i=e[n];if(typeof i!="function")continue;const o=i,r=c=>{const u=h.Event(c.type,{originalEvent:c});ce(()=>o.call(s,u))};s.addEventListener(n,r),t.trackCleanup(()=>s.removeEventListener(n,r))}}h.fn.atomBind=function(t){return this.each(function(){const s={$el:h(this),el:this,trackCleanup:n=>_.trackCleanup(this,n)};t.text!==void 0&&Et(s,t.text),t.html!==void 0&>(s,t.html),t.class&&bt(s,t.class),t.css&&mt(s,t.css),t.attr&&St(s,t.attr),t.prop&&yt(s,t.prop),t.show!==void 0&&It(s,t.show),t.hide!==void 0&&Dt(s,t.hide),t.val!==void 0&&Ct(s,t.val),t.checked!==void 0&&Nt(s,t.checked),t.on&&Tt(s,t.on)})},h.fn.atomList=function(t,e){const{key:s,render:n,bind:i,update:o,onAdd:r,onRemove:c,empty:u}=e,a=typeof s=="function"?s:d=>d[s];return this.each(function(){const d=h(this),q=ue(this),O=new Map,X=new Set;let v=[],J=null;const ze=z(()=>{const S=t.value,R=S.length;if(R===0?u&&!J&&(J=h(u).appendTo(d)):J&&(J.remove(),J=null),R===0&&O.size===0){v=[];return}g.log("list",`${q} updating with ${R} items`);const le=new Array(R),ye=new Set;for(let f=0;f<R;f++){const m=S[f],y=a(m,f);g.enabled&&ye.has(y)&&console.warn(`[atomList] Duplicate key "${y}" at index ${f}. Items with duplicate keys may cause unexpected behavior.`),le[f]=y,ye.add(y)}for(const[f,m]of O){if(ye.has(f)||X.has(f))continue;const y=()=>{m.$el.remove();const I=m.$el[0];I&&_.cleanup(I),X.delete(f),g.log("list",`${q} removed item:`,f)};if(O.delete(f),X.add(f),c){const I=c(m.$el);I instanceof Promise?I.then(y):y()}else y()}if(R===0){v=[];return}const qe=new Map;for(let f=0;f<v.length;f++){const m=v[f];m!==void 0&&qe.set(m,f)}const Xe=new Int32Array(R);for(let f=0;f<R;f++){const m=le[f];Xe[f]=m!==void 0?qe.get(m)??-1:-1}const Ge=ht(Xe);let Ie=Ge.length-1,P=null;for(let f=R-1;f>=0;f--){const m=le[f],y=S[f],I=O.get(m);if(I){I.item=y;const K=I.$el[0];if(!K)continue;o&&o(I.$el,y,f),Ie>=0&&Ge[Ie]===f?(Ie--,K.nextSibling!==P&&(P?I.$el.insertBefore(P):I.$el.appendTo(d))):P?I.$el.insertBefore(P):I.$el.appendTo(d),P=K}else{const K=n(y,f),W=(K instanceof Element,h(K));O.set(m,{$el:W,item:y}),P?W.insertBefore(P):W.appendTo(d),i&&i(W,y,f),r&&r(W),g.log("list",`${q} added item:`,m),P=W[0]||null}}v=le});_.trackEffect(this,ze),_.trackCleanup(this,()=>{O.clear(),X.clear(),v=[],J?.remove()})})};const ae=new WeakMap;h.fn.atomMount=function(t,e={}){return this.each(function(){const s=h(this),n=ue(this),i=ae.get(this);i&&(g.log("mount",`${n} unmounting existing component`),i()),g.log("mount",`${n} mounting component`);let o;try{o=t(s,e)}catch(u){console.error("[atom-effect-jquery] Mount error:",u);return}let r=!1;const c=()=>{if(!r){if(r=!0,g.log("mount",`${n} full cleanup`),typeof o=="function")try{o()}catch(u){console.error("[atom-effect-jquery] Cleanup error:",u)}_.cleanupTree(this),ae.delete(this)}};ae.set(this,c),_.trackCleanup(this,c)})},h.fn.atomUnmount=function(){return this.each(function(){ae.get(this)?.()})};const te=new WeakMap;let He=!1;function Se(){if(He)return;He=!0;const t=h.fn.on,e=h.fn.off,s=h.fn.remove,n=h.fn.empty,i=h.fn.detach;h.fn.remove=function(o){return(o?this.filter(o):this).each(function(){_.cleanupTree(this),_.markIgnored(this)}),s.call(this,o)},h.fn.empty=function(){return this.each(function(){_.cleanupDescendants(this)}),n.call(this)},h.fn.detach=function(o){return(o?this.filter(o):this).each(function(){_.keep(this)}),i.call(this,o)},h.fn.on=function(...o){let r=-1;for(let c=o.length-1;c>=0;c--)if(typeof o[c]=="function"){r=c;break}if(r!==-1){const c=o[r];let u;te.has(c)?u=te.get(c):(u=function(a,...d){return ce(()=>c.call(this,a,...d))},te.set(c,u)),o[r]=u}return t.apply(this,o)},h.fn.off=function(...o){let r=-1;for(let c=o.length-1;c>=0;c--)if(typeof o[c]=="function"){r=c;break}if(r!==-1){const c=o[r];te.has(c)&&(o[r]=te.get(c))}return e.apply(this,o)}}const Ot=Se;Se(),h(()=>{je(document.body)}),p.default=h,p.atom=we,p.batch=ce,p.computed=Be,p.disableAutoCleanup=pt,p.effect=z,p.enableAutoCleanup=je,p.enablejQueryBatching=Ot,p.enablejQueryOverrides=Se,p.registry=_,p.untracked=ge,Object.defineProperties(p,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
1
|
+
(function(E,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("jquery")):typeof define=="function"&&define.amd?define(["exports","jquery"],h):(E=typeof globalThis<"u"?globalThis:E||self,h(E.AtomEffectJQuery={},E.jQuery))})(this,(function(E,h){"use strict";const Ye={ONE_SECOND_MS:1e3},ce={IDLE:"idle",PENDING:"pending",RESOLVED:"resolved",REJECTED:"rejected"},x={DISPOSED:1,HAS_FN_SUBS:2,HAS_OBJ_SUBS:4},v={...x,EXECUTING:8},l={...x,DIRTY:8,IDLE:16,PENDING:32,RESOLVED:64,REJECTED:128,RECOMPUTING:256,HAS_ERROR:512},w={...x,SYNC:8,NOTIFICATION_SCHEDULED:16},M={MAX_EXECUTIONS_PER_SECOND:1e3,MAX_EXECUTIONS_PER_EFFECT:100,MAX_EXECUTIONS_PER_FLUSH:1e4,MAX_FLUSH_ITERATIONS:1e3,MIN_FLUSH_ITERATIONS:10,BATCH_QUEUE_SHRINK_THRESHOLD:1e3},Ne={MAX_DEPENDENCIES:1e3,WARN_INFINITE_LOOP:!0},B=1073741823,T=typeof process<"u"&&process.env&&process.env.NODE_ENV!=="production",Je=Object.freeze([]);class F extends Error{constructor(e,s=null,n=!0){super(e),this.name="AtomError",this.cause=s,this.recoverable=n,this.timestamp=new Date}}class V extends F{constructor(e,s=null){super(e,s,!0),this.name="ComputedError"}}class Q extends F{constructor(e,s=null){super(e,s,!1),this.name="EffectError"}}class ue extends F{constructor(e,s=null){super(e,s,!1),this.name="SchedulerError"}}const g={COMPUTED_MUST_BE_FUNCTION:"Computed function must be a function",COMPUTED_SUBSCRIBER_MUST_BE_FUNCTION:"Subscriber listener must be a function or Subscriber object",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",COMPUTED_CIRCULAR_DEPENDENCY:"Circular dependency detected during computation",COMPUTED_DEPENDENCY_SUBSCRIPTION_FAILED:"Failed to subscribe to dependency",ATOM_SUBSCRIBER_MUST_BE_FUNCTION:"Subscription listener must be a function or Subscriber object",ATOM_SUBSCRIBER_EXECUTION_FAILED:"Error occurred while executing atom subscribers",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",EFFECT_DISPOSED:"Cannot run a disposed effect",LARGE_DEPENDENCY_GRAPH:t=>`Large dependency graph detected: ${t} dependencies`,UNSUBSCRIBE_NON_EXISTENT:"Attempted to unsubscribe a non-existent listener",CALLBACK_ERROR_IN_ERROR_HANDLER:"Error occurred during onError callback execution"},Ee=Symbol("debugName"),Ke=Symbol("id"),ge=Symbol("type"),Ae=Symbol("noDefaultValue");function We(t){return"dependencies"in t&&Array.isArray(t.dependencies)}let Oe=0;function Re(t,e,s){if(t._visitedEpoch!==s){if(t._visitedEpoch=s,t===e)throw new V("Indirect circular dependency detected");if(We(t)){const n=t.dependencies;for(let i=0;i<n.length;i++){const o=n[i];o&&Re(o,e,s)}}}}const L={enabled:typeof process<"u"&&process.env?.NODE_ENV==="development",maxDependencies:Ne.MAX_DEPENDENCIES,warnInfiniteLoop:Ne.WARN_INFINITE_LOOP,warn(t,e){this.enabled&&t&&console.warn(`[Atom Effect] ${e}`)},checkCircular(t,e){if(t===e)throw new V("Direct circular dependency detected");this.enabled&&(Oe++,Re(t,e,Oe))},attachDebugInfo(t,e,s){if(!this.enabled)return;const n=t;n[Ee]=`${e}_${s}`,n[Ke]=s,n[ge]=e},getDebugName(t){if(t!=null&&Ee in t)return t[Ee]},getDebugType(t){if(t!=null&&ge in t)return t[ge]}};let Ze=1;const $e=()=>Ze++;class xe{constructor(){this.flags=0,this.version=0,this._lastSeenEpoch=-1,this._modifiedAtEpoch=-1,this._visitedEpoch=-1,this.id=$e()&B,this._tempUnsub=void 0}getShift(e){return this.version-e&B}}class ve extends xe{subscribe(e){if(typeof e=="function")return this._addSubscriber(this._fnSubs,e,x.HAS_FN_SUBS);if(e!==null&&typeof e=="object"&&"execute"in e)return this._addSubscriber(this._objSubs,e,x.HAS_OBJ_SUBS);throw new F(g.ATOM_SUBSCRIBER_MUST_BE_FUNCTION)}subscriberCount(){return this._fnSubs.length+this._objSubs.length}_addSubscriber(e,s,n){if(e.indexOf(s)!==-1)return T&&console.warn("Attempted to subscribe the same listener twice. Ignoring duplicate subscription."),()=>{};e.push(s),this.flags|=n;let i=!1;return()=>{if(i)return;i=!0;const o=e.indexOf(s);if(o!==-1){const r=e.pop();o<e.length&&(e[o]=r),this.flags&=~(e.length===0?n:0)}}}_notifySubscribers(e,s){const n=this.flags,i=x.HAS_FN_SUBS|x.HAS_OBJ_SUBS;if(n&i){if(n&x.HAS_FN_SUBS){const o=this._fnSubs;for(let r=0,c=o.length;r<c;r++){const u=o[r];if(u)try{u(e,s)}catch(a){console.error(new F(g.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,a))}}}if(n&x.HAS_OBJ_SUBS){const o=this._objSubs;for(let r=0,c=o.length;r<c;r++){const u=o[r];if(u)try{u.execute()}catch(a){console.error(new F(g.ATOM_INDIVIDUAL_SUBSCRIBER_FAILED,a))}}}}}}class et{constructor(){this.acquired=0,this.released=0,this.rejected=new tt}}class tt{constructor(){this.frozen=0,this.tooLarge=0,this.poolFull=0}}class be{constructor(){this.pool=[],this.maxPoolSize=50,this.maxReusableCapacity=256,this.stats=T?new et:null}acquire(){const e=this.stats;return T&&e&&e.acquired++,this.pool.pop()??[]}release(e,s){if(s&&e===s||Object.isFrozen(e)){const c=this.stats;T&&c&&e!==s&&c.rejected.frozen++;return}const n=e.length,i=this.pool,o=i.length;if(n>this.maxReusableCapacity||o>=this.maxPoolSize){const c=this.stats;T&&c&&(n>this.maxReusableCapacity?c.rejected.tooLarge++:c.rejected.poolFull++);return}e.length=0,i.push(e);const r=this.stats;T&&r&&r.released++}getStats(){const e=this.stats;if(!T||!e)return null;const{acquired:s,released:n,rejected:i}=e,o=i.frozen+i.tooLarge+i.poolFull;return{acquired:s,released:n,rejected:{frozen:i.frozen,tooLarge:i.tooLarge,poolFull:i.poolFull},leaked:s-n-o,poolSize:this.pool.length}}reset(){this.pool.length=0;const e=this.stats;T&&e&&(e.acquired=0,e.released=0,e.rejected.frozen=0,e.rejected.tooLarge=0,e.rejected.poolFull=0)}}const N=Object.freeze([]),j=Object.freeze([]),O=Object.freeze([]),H=new be,Y=new be,P=new be;function z(t,e,s,n){if(e!=null){if((typeof e=="object"||typeof e=="function")&&typeof e.addDependency=="function"){e.addDependency(t);return}if(typeof e=="function"){const i=e;s.indexOf(i)===-1&&(s.push(i),t.flags|=x.HAS_FN_SUBS);return}typeof e=="object"&&typeof e.execute=="function"&&n.indexOf(e)===-1&&(n.push(e),t.flags|=x.HAS_OBJ_SUBS)}}function Ue(t,e,s,n){const i=t.length,o=e.length,r=e!==N&&o>0;if(r)for(let u=0;u<o;u++){const a=e[u];a&&(a._tempUnsub=s[u])}const c=Y.acquire();c.length=i;for(let u=0;u<i;u++){const a=t[u];if(!a)continue;const _=a._tempUnsub;_?(c[u]=_,a._tempUnsub=void 0):(L.checkCircular(a,n),c[u]=a.subscribe(n))}if(r)for(let u=0;u<o;u++){const a=e[u];if(a){const _=a._tempUnsub;_&&(_(),a._tempUnsub=void 0)}}return s!==j&&Y.release(s),c}let he=0;function we(){return he=he+1&B||1,he}function st(){return he}let me=0,Se=0,ae=!1;function Le(){return ae?(T&&console.warn("Warning: startFlush() called during flush - ignored to prevent infinite loop detection bypass"),!1):(ae=!0,me=me+1&B||1,Se=0,!0)}function Fe(){ae=!1}function nt(){return ae?++Se:0}class it{constructor(){this._queueBuffer=[[],[]],this._bufferIndex=0,this._size=0,this._epoch=0,this.isProcessing=!1,this._isBatching=!1,this.batchDepth=0,this.batchQueue=[],this.batchQueueSize=0,this.isFlushingSync=!1,this.maxFlushIterations=M.MAX_FLUSH_ITERATIONS}get phase(){return this.isProcessing||this.isFlushingSync?2:this._isBatching?1:0}get queueSize(){return this._size}get isBatching(){return this._isBatching}schedule(e){if(T&&typeof e!="function")throw new ue("Scheduler callback must be a function");const s=this._epoch;if(e._nextEpoch!==s){if(e._nextEpoch=s,this._isBatching||this.isFlushingSync){this.batchQueue[this.batchQueueSize++]=e;return}this._queueBuffer[this._bufferIndex][this._size++]=e,this.isProcessing||this.flush()}}flush(){this.isProcessing||this._size===0||(this.isProcessing=!0,queueMicrotask(()=>{try{if(this._size===0)return;const e=Le();this._drainQueue(),e&&Fe()}finally{this.isProcessing=!1,this._size>0&&!this._isBatching&&this.flush()}}))}flushSync(){this.isFlushingSync=!0;const e=Le();try{this._mergeBatchQueue(),this._drainQueue()}finally{this.isFlushingSync=!1,e&&Fe()}}_mergeBatchQueue(){const e=this.batchQueueSize;if(e===0)return;const s=++this._epoch,n=this.batchQueue,i=this._queueBuffer[this._bufferIndex];let o=this._size;for(let r=0;r<e;r++){const c=n[r];c._nextEpoch!==s&&(c._nextEpoch=s,i[o++]=c)}this._size=o,this.batchQueueSize=0,n.length>M.BATCH_QUEUE_SHRINK_THRESHOLD&&(n.length=0)}_drainQueue(){let e=0;const s=this.maxFlushIterations;for(;this._size>0;){if(++e>s){this._handleFlushOverflow();return}this._processQueue(),this._mergeBatchQueue()}}_processQueue(){const e=this._bufferIndex,s=this._queueBuffer[e],n=this._size,i=e^1;this._bufferIndex=i,this._size=0,this._epoch++,this._processJobs(s,n)}_handleFlushOverflow(){console.error(new ue(`Maximum flush iterations (${this.maxFlushIterations}) exceeded. Possible infinite loop.`)),this._size=0,this._queueBuffer[this._bufferIndex].length=0,this.batchQueueSize=0}_processJobs(e,s){for(let n=0;n<s;n++)try{e[n]()}catch(i){console.error(new ue("Error occurred during scheduler execution",i))}e.length=0}startBatch(){this.batchDepth++,this._isBatching=!0}endBatch(){if(this.batchDepth===0){T&&console.warn("endBatch() called without matching startBatch(). Ignoring.");return}this.batchDepth--,this.batchDepth===0&&(this.flushSync(),this._isBatching=!1)}setMaxFlushIterations(e){if(e<M.MIN_FLUSH_ITERATIONS)throw new ue(`Max flush iterations must be at least ${M.MIN_FLUSH_ITERATIONS}`);this.maxFlushIterations=e}}const ee=new it;class ot{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 A=new ot;function ye(t){if(typeof t!="function")throw new F("Untracked callback must be a function");const e=A.current;A.current=null;try{return t()}finally{A.current=e}}class rt extends ve{constructor(e,s){super(),this._value=e,this._pendingOldValue=void 0,this._notifyTask=void 0,this._fnSubs=[],this._objSubs=[],s&&(this.flags|=w.SYNC),L.attachDebugInfo(this,"atom",this.id)}get value(){const e=A.current;return e&&z(this,e,this._fnSubs,this._objSubs),this._value}set value(e){const s=this._value;if(Object.is(s,e))return;this._value=e,this.version=this.version+1&B;const n=this.flags,i=w.HAS_FN_SUBS|w.HAS_OBJ_SUBS;n&i&&this._scheduleNotification(s)}_scheduleNotification(e){let s=this.flags;if(s&w.NOTIFICATION_SCHEDULED||(this._pendingOldValue=e,this.flags=s|=w.NOTIFICATION_SCHEDULED),s&w.SYNC&&!ee.isBatching){this._flushNotifications();return}let n=this._notifyTask;n||(n=this._notifyTask=()=>this._flushNotifications()),ee.schedule(n)}_flushNotifications(){const e=this.flags;if(!(e&w.NOTIFICATION_SCHEDULED)||e&w.DISPOSED)return;const s=this._pendingOldValue,n=this._value;this._pendingOldValue=void 0,this.flags&=-17,this._notifySubscribers(n,s)}peek(){return this._value}dispose(){this.flags&w.DISPOSED||(this._fnSubs=[],this._objSubs=[],this.flags|=w.DISPOSED,this._value=void 0,this._pendingOldValue=void 0,this._notifyTask=void 0)}}function Pe(t,e={}){return new rt(t,e.sync??!1)}function te(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 F)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)}function Ie(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t&&typeof t.subscribe=="function"}function ke(t){if(L.enabled&&t!=null&&typeof t=="object"){const e=L.getDebugType(t);if(e)return e==="computed"}return Ie(t)&&"invalidate"in t&&typeof t.invalidate=="function"}function Me(t){return t!=null&&typeof t.then=="function"}const Be=l.RESOLVED|l.PENDING|l.REJECTED,le=Array(Be+1).fill(ce.IDLE);le[l.RESOLVED]=ce.RESOLVED,le[l.PENDING]=ce.PENDING,le[l.REJECTED]=ce.REJECTED;class ct{constructor(e){this._owner=e,this._epoch=-1,this._nextDeps=N,this._nextVersions=O,this._depCount=0}execute(){this._owner._markDirty()}addDependency(e){if(e._lastSeenEpoch===this._epoch)return;e._lastSeenEpoch=this._epoch;const s=this._depCount,n=this._nextDeps,i=this._nextVersions;s<n.length?(n[s]=e,i[s]=e.version):(n.push(e),i.push(e.version)),this._depCount=s+1}reset(){this._epoch=-1,this._nextDeps=N,this._nextVersions=O,this._depCount=0}}class Ve extends ve{constructor(e,s={}){if(typeof e!="function")throw new V(g.COMPUTED_MUST_BE_FUNCTION);if(super(),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:Ae,this._hasDefaultValue=this._defaultValue!==Ae,this._onError=s.onError??null,this.MAX_PROMISE_ID=Number.MAX_SAFE_INTEGER-1,this._fnSubs=[],this._objSubs=[],this._dependencies=N,this._dependencyVersions=O,this._unsubscribes=j,this._cachedErrors=null,this._errorCacheEpoch=-1,this._asyncStartAggregateVersion=0,this._asyncRetryCount=0,this._trackable=new ct(this),L.attachDebugInfo(this,"computed",this.id),L.enabled){const n=this;n.subscriberCount=this.subscriberCount.bind(this),n.isDirty=()=>(this.flags&l.DIRTY)!==0,n.dependencies=this._dependencies,n.stateFlags=""}if(s.lazy===!1)try{this._recompute()}catch{}}get value(){const e=A.current;e&&z(this,e,this._fnSubs,this._objSubs);const s=this.flags;if(s&l.RECOMPUTING){if(this._hasDefaultValue)return this._defaultValue;throw new V(g.COMPUTED_CIRCULAR_DEPENDENCY)}s&(l.DIRTY|l.IDLE)&&this._recompute();const n=this.flags;return n&l.PENDING?this._handlePending():n&l.REJECTED?this._handleRejected():this._value}peek(){return this._value}get state(){const e=A.current;return e&&z(this,e,this._fnSubs,this._objSubs),le[this.flags&Be]}get hasError(){const e=A.current;if(e&&z(this,e,this._fnSubs,this._objSubs),this.flags&(l.REJECTED|l.HAS_ERROR))return!0;const s=this._dependencies;for(let n=0,i=s.length;n<i;n++){const o=s[n];if(o&&o.flags&l.HAS_ERROR)return!0}return!1}get isValid(){return!this.hasError}get errors(){const e=A.current;if(e&&z(this,e,this._fnSubs,this._objSubs),!this.hasError)return Je;const s=st();if(this._errorCacheEpoch===s&&this._cachedErrors!==null)return this._cachedErrors;const n=new Set;this._error&&n.add(this._error);const i=this._dependencies;for(let r=0,c=i.length;r<c;r++){const u=i[r];if(u&&"errors"in u){const a=u.errors;for(let _=0,X=a.length;_<X;_++){const I=a[_];I&&n.add(I)}}}const o=Object.freeze([...n]);return this._cachedErrors=o,this._errorCacheEpoch=s,o}get lastError(){const e=A.current;return e&&z(this,e,this._fnSubs,this._objSubs),this._error}get isPending(){const e=A.current;return e&&z(this,e,this._fnSubs,this._objSubs),(this.flags&l.PENDING)!==0}get isResolved(){const e=A.current;return e&&z(this,e,this._fnSubs,this._objSubs),(this.flags&l.RESOLVED)!==0}invalidate(){this._markDirty();const e=this._dependencyVersions;e!==O&&(P.release(e),this._dependencyVersions=O),this._errorCacheEpoch=-1,this._cachedErrors=null}dispose(){const e=this._unsubscribes;if(e!==j){for(let i=0,o=e.length;i<o;i++){const r=e[i];r&&r()}Y.release(e),this._unsubscribes=j}const s=this._dependencies;s!==N&&(H.release(s),this._dependencies=N);const n=this._dependencyVersions;n!==O&&(P.release(n),this._dependencyVersions=O),this._fnSubs=[],this._objSubs=[],this.flags=l.DISPOSED|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}_clearDirty(){this.flags&=-9}_setPending(){this.flags=(this.flags|l.PENDING)&-209}_isResolved(){return(this.flags&l.RESOLVED)!==0}_setResolved(){this.flags=(this.flags|l.RESOLVED)&-689}_isRejected(){return(this.flags&l.REJECTED)!==0}_setRejected(){this.flags=this.flags&-113|(l.REJECTED|l.HAS_ERROR)}_setRecomputing(e){const s=l.RECOMPUTING;this.flags=this.flags&~s|(e?-1:0)&s}_recompute(){if(this.flags&l.RECOMPUTING)return;this._setRecomputing(!0);const e=this._trackable,s=this._dependencies,n=this._dependencyVersions;e._epoch=we(),e._nextDeps=H.acquire(),e._nextVersions=P.acquire(),e._depCount=0;let i=!1;try{const o=A.run(e,this._fn),r=e._nextDeps,c=e._nextVersions,u=e._depCount;r.length=u,c.length=u,this._unsubscribes=Ue(r,s,this._unsubscribes,this),this._dependencies=r,this._dependencyVersions=c,i=!0,Me(o)?this._handleAsyncComputation(o):this._finalizeResolution(o)}catch(o){let r=o;if(!i)try{const c=e._nextDeps,u=e._nextVersions,a=e._depCount;c.length=a,u.length=a,this._unsubscribes=Ue(c,s,this._unsubscribes,this),this._dependencies=c,this._dependencyVersions=u,i=!0}catch(c){r=c}this._handleComputationError(r)}finally{i?(s!==N&&H.release(s),n!==O&&P.release(n)):(H.release(e._nextDeps),P.release(e._nextVersions)),e.reset(),this._setRecomputing(!1)}}_handleAsyncComputation(e){this._setPending(),this._clearDirty(),this._notifySubscribers(void 0,void 0),this._asyncStartAggregateVersion=this._captureVersionSnapshot(),this._asyncRetryCount=0,this._promiseId=(this._promiseId+1)%this.MAX_PROMISE_ID;const s=this._promiseId;e.then(n=>{if(s===this._promiseId){if(this._captureVersionSnapshot()!==this._asyncStartAggregateVersion){if(this._asyncRetryCount<this.MAX_ASYNC_RETRIES){this._asyncRetryCount++,this._markDirty();return}const i=new V(`Async drift exceeded threshold after ${this.MAX_ASYNC_RETRIES} retries.`);this._handleAsyncRejection(i);return}this._finalizeResolution(n),this._notifySubscribers(n,void 0)}}).catch(n=>{s===this._promiseId&&this._handleAsyncRejection(n)})}_captureVersionSnapshot(){let e=0;const s=this._dependencies;for(let n=0,i=s.length;n<i;n++){const o=s[n];if(o){const r=o.version;e=((e<<5)-e|0)+r&B}}return e}_handleAsyncRejection(e){const s=te(e,V,g.COMPUTED_ASYNC_COMPUTATION_FAILED);this.flags&l.REJECTED||(this.version=this.version+1&B),this._error=s,this._setRejected(),this._clearDirty();const n=this._onError;if(n)try{n(s)}catch(i){console.error(g.CALLBACK_ERROR_IN_ERROR_HANDLER,i)}this._notifySubscribers(void 0,void 0)}_finalizeResolution(e){(!(this.flags&l.RESOLVED)||!this._equal(this._value,e))&&(this.version=this.version+1&B),this._value=e,this._clearDirty(),this._setResolved(),this._error=null,this._setRecomputing(!1),this._cachedErrors=null,this._errorCacheEpoch=-1}_handleComputationError(e){const s=te(e,V,g.COMPUTED_COMPUTATION_FAILED);this._error=s,this._setRejected(),this._clearDirty(),this._setRecomputing(!1);const n=this._onError;if(n)try{n(s)}catch(i){console.error(g.CALLBACK_ERROR_IN_ERROR_HANDLER,i)}throw s}_handlePending(){if(this._hasDefaultValue)return this._defaultValue;throw new V(g.COMPUTED_ASYNC_PENDING_NO_DEFAULT)}_handleRejected(){const e=this._error;if(e?.recoverable&&this._hasDefaultValue)return this._defaultValue;throw e}execute(){this._markDirty()}_markDirty(){const e=this.flags;e&(l.RECOMPUTING|l.DIRTY)||(this.flags=e|l.DIRTY,this._notifySubscribers(void 0,void 0))}}Object.freeze(Ve.prototype);function je(t,e={}){return new Ve(t,e)}class ut extends xe{constructor(e,s={}){super(),this._cleanup=null,this._dependencies=N,this._dependencyVersions=O,this._unsubscribes=j,this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null,this._executeTask=void 0,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??M.MAX_EXECUTIONS_PER_SECOND,this._maxExecutionsPerFlush=s.maxExecutionsPerFlush??M.MAX_EXECUTIONS_PER_EFFECT,this._trackModifications=s.trackModifications??!1,this._executionCount=0,this._historyPtr=0;const n=Number.isFinite(this._maxExecutions),i=n?Math.min(this._maxExecutions+1,M.MAX_EXECUTIONS_PER_SECOND+1):0;this._historyCapacity=i,this._history=T&&n&&i>0?new Array(i).fill(0):null,this._execId=0,L.attachDebugInfo(this,"effect",this.id)}run(){if(this.flags&v.DISPOSED)throw new Q(g.EFFECT_DISPOSED);this.execute(!0)}dispose(){const e=this.flags;if(e&v.DISPOSED)return;this.flags=e|v.DISPOSED,this._safeCleanup();const s=this._unsubscribes;if(s!==j){for(let o=0,r=s.length;o<r;o++){const c=s[o];c&&c()}Y.release(s),this._unsubscribes=j}const n=this._dependencies;n!==N&&(H.release(n),this._dependencies=N);const i=this._dependencyVersions;i!==O&&(P.release(i),this._dependencyVersions=O),this._executeTask=void 0}addDependency(e){if(!(this.flags&v.EXECUTING))return;const s=this._currentEpoch;if(e._lastSeenEpoch===s)return;e._lastSeenEpoch=s;const n=this._nextDeps,i=this._nextVersions,o=this._nextUnsubs;if(!n||!i||!o)return;n.push(e),i.push(e.version);const r=e._tempUnsub;r?(o.push(r),e._tempUnsub=void 0):this._subscribeTo(e)}execute(e=!1){if(this.flags&(v.DISPOSED|v.EXECUTING)||!e&&!this._shouldExecute())return;this._checkInfiniteLoop(),this._setExecuting(!0),this._safeCleanup();const s=this._prepareEffectExecutionContext();let n=!1;try{const i=A.run(this,this._fn),o=s.nextDeps.length;s.nextDeps.length=o,s.nextVersions.length=o,this._dependencies=s.nextDeps,this._dependencyVersions=s.nextVersions,this._unsubscribes=s.nextUnsubs,n=!0,this._checkLoopWarnings();const r=++this._execId;Me(i)?i.then(c=>{const u=r!==this._execId,a=this.flags&v.DISPOSED;if(u||a){if(typeof c=="function")try{c()}catch(_){this._handleExecutionError(_,g.EFFECT_CLEANUP_FAILED)}return}typeof c=="function"&&(this._cleanup=c)}).catch(c=>{r===this._execId&&this._handleExecutionError(c)}):this._cleanup=typeof i=="function"?i:null}catch(i){n=!0,this._handleExecutionError(i),this._cleanup=null}finally{this._cleanupEffect(s,n),this._setExecuting(!1)}}_prepareEffectExecutionContext(){const e=this._dependencies,s=this._dependencyVersions,n=this._unsubscribes,i=H.acquire(),o=P.acquire(),r=Y.acquire(),c=we();if(e!==N)for(let u=0,a=e.length;u<a;u++){const _=e[u];_&&(_._tempUnsub=n[u])}return this._nextDeps=i,this._nextVersions=o,this._nextUnsubs=r,this._currentEpoch=c,{prevDeps:e,prevVersions:s,prevUnsubs:n,nextDeps:i,nextVersions:o,nextUnsubs:r}}_cleanupEffect(e,s){this._nextDeps=null,this._nextVersions=null,this._nextUnsubs=null;const n=e.prevDeps;if(s){if(n!==N){for(let i=0,o=n.length;i<o;i++){const r=n[i],c=r?r._tempUnsub:void 0;c&&(c(),r&&(r._tempUnsub=void 0))}H.release(n)}e.prevUnsubs!==j&&Y.release(e.prevUnsubs),e.prevVersions!==O&&P.release(e.prevVersions)}else{H.release(e.nextDeps),P.release(e.nextVersions);const i=e.nextUnsubs;for(let o=0,r=i.length;o<r;o++)i[o]?.();if(Y.release(i),n!==N)for(let o=0,r=n.length;o<r;o++){const c=n[o];c&&(c._tempUnsub=void 0)}}}_subscribeTo(e){try{const s=e.subscribe(()=>{if(this._trackModifications&&this.flags&v.EXECUTING&&(e._modifiedAtEpoch=this._currentEpoch),this._sync){this.execute();return}let i=this._executeTask;i||(i=this._executeTask=()=>this.execute()),ee.schedule(i)}),n=this._nextUnsubs;n&&n.push(s)}catch(s){console.error(te(s,Q,g.EFFECT_EXECUTION_FAILED));const n=this._nextUnsubs;n&&n.push(()=>{})}}get isDisposed(){return(this.flags&v.DISPOSED)!==0}get executionCount(){return this._executionCount}get isExecuting(){return(this.flags&v.EXECUTING)!==0}_setExecuting(e){const s=v.EXECUTING;this.flags=this.flags&~s|(e?-1:0)&s}_safeCleanup(){const e=this._cleanup;if(e){try{e()}catch(s){this._handleExecutionError(s,g.EFFECT_CLEANUP_FAILED)}this._cleanup=null}}_checkInfiniteLoop(){const e=me;this._lastFlushEpoch!==e&&(this._lastFlushEpoch=e,this._executionsInEpoch=0),++this._executionsInEpoch>this._maxExecutionsPerFlush&&this._throwInfiniteLoopError("per-effect"),nt()>M.MAX_EXECUTIONS_PER_FLUSH&&this._throwInfiniteLoopError("global"),this._executionCount++;const s=this._history;if(s){const n=Date.now(),i=this._historyPtr,o=this._historyCapacity;s[i]=n;const r=(i+1)%o;this._historyPtr=r;const c=s[r]??0;if(c>0&&n-c<Ye.ONE_SECOND_MS){const u=new Q(`Effect executed ${o} times within 1 second. Infinite loop suspected`);if(this.dispose(),console.error(u),this._onError&&this._onError(u),T)throw u;return}}}_throwInfiniteLoopError(e){const s=new Q(`Infinite loop detected (${e}): effect executed ${this._executionsInEpoch} times in current flush. Total executions in flush: ${Se}`);throw this.dispose(),console.error(s),s}_shouldExecute(){const e=this._dependencies;if(e.length===0)return!0;const s=this._dependencyVersions;for(let n=0,i=e.length;n<i;n++){const o=e[n];if(o){if(o.version!==s[n])return!0;if("value"in o)try{ye(()=>o.value)}catch{return!0}}}return!1}_handleExecutionError(e,s=g.EFFECT_EXECUTION_FAILED){const n=te(e,Q,s);console.error(n);const i=this._onError;if(i)try{i(n)}catch(o){console.error(te(o,Q,g.CALLBACK_ERROR_IN_ERROR_HANDLER))}}_checkLoopWarnings(){if(this._trackModifications&&L.enabled){const e=this._dependencies,s=this._currentEpoch;for(let n=0,i=e.length;n<i;n++){const o=e[n];o&&o._modifiedAtEpoch===s&&L.warn(!0,`Effect is reading a dependency (${L.getDebugName(o)||"unknown"}) that it just modified. Infinite loop may occur`)}}}}function q(t,e={}){if(typeof t!="function")throw new Q(g.EFFECT_MUST_BE_FUNCTION);const s=new ut(t,e);return s.execute(),s}function fe(t){if(typeof t!="function")throw new F("Batch callback must be a function");ee.startBatch();try{return t()}finally{ee.endBatch()}}function ht(t){return t!==null&&typeof t=="object"&&"value"in t&&"subscribe"in t}function _e(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(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 r=0;r<e;r++){const c=t[r];if(c===-1)continue;if(i===0||t[n[i-1]]<c){s[r]=i>0?n[i-1]:-1,n[i++]=r;continue}let u=0,a=i-1;for(;u<a;){const _=u+a>>>1;t[n[_]]<c?u=_+1:a=_}c<t[n[u]]&&(u>0&&(s[r]=n[u-1]),n[u]=r)}const o=new Int32Array(i);for(let r=i-1,c=n[i-1];r>=0;r--)o[r]=c,c=s[c];return o}function lt(){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 J=lt();const b={get enabled(){return J},set enabled(t){J=t},log(t,...e){J&&console.log(`[atom-effect-jquery] ${t}:`,...e)},atomChanged(t,e,s){J&&console.log(`[atom-effect-jquery] Atom "${t||"anonymous"}" changed:`,e,"→",s)},domUpdated(t,e,s){if(!J)return;const n=_e(t);console.log(`[atom-effect-jquery] DOM updated: ${n}.${e} =`,s),ft(t)},cleanup(t){J&&console.log(`[atom-effect-jquery] Cleanup: ${t}`)},warn(...t){J&&console.warn("[atom-effect-jquery]",...t)}};function ft(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 o=setTimeout(()=>{const r=t.data(i);t.css("transition","outline 0.5s ease-out"),requestAnimationFrame(()=>{t.css({outline:r?.outline||"","outline-offset":r?.outlineOffset||""});const c=setTimeout(()=>{t.css("transition",r?.transition||""),t.removeData(s),t.removeData(n),t.removeData(i)},500);t.data(n,c)})},100);t.data(s,o)}const _t=new WeakMap;function He(t,e={}){const s=Pe(t,e);return e.name&&_t.set(s,{name:e.name}),s}Object.defineProperty(He,"debug",{get(){return b.enabled},set(t){b.enabled=t}});function dt(){return new Promise(t=>setTimeout(t,0))}h.extend({atom:He,computed:je,effect:q,batch:fe,untracked:ye,isAtom:Ie,isComputed:ke,isReactive:t=>Ie(t)||ke(t),nextTick:dt});const se="_aes-bound";class pt{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(se))),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(se))),n.push(s)}hasBind(e){return this.boundElements.has(e)}cleanup(e){if(!this.boundElements.delete(e))return;this.preservedNodes.delete(e),this.ignoredNodes.delete(e),e.classList.remove(se),b.cleanup(_e(e));const s=this.effects.get(e);if(s){this.effects.delete(e);for(let i=0,o=s.length;i<o;i++){const r=s[i];if(r)try{r.dispose()}catch(c){b.warn("Effect dispose error:",c)}}}const n=this.cleanups.get(e);if(n){this.cleanups.delete(e);for(let i=0,o=n.length;i<o;i++){const r=n[i];if(r)try{r()}catch(c){b.warn("Cleanup error:",c)}}}}cleanupDescendants(e){const s=e.querySelectorAll(`.${se}`);for(let n=0,i=s.length;n<i;n++){const o=s[n];o&&(this.boundElements.has(o)?this.cleanup(o):o.classList.remove(se))}}cleanupTree(e){this.cleanupDescendants(e),this.cleanup(e)}}const d=new pt;let ne=null;function ze(t=document.body){ne||(ne=new MutationObserver(e=>{for(let s=0,n=e.length;s<n;s++){const i=e[s];if(!i)continue;const o=i.removedNodes;for(let r=0,c=o.length;r<c;r++){const u=o[r];u&&(d.isKept(u)||d.isIgnored(u)||u.isConnected||u.nodeType===1&&d.cleanupTree(u))}}}),ne.observe(t,{childList:!0,subtree:!0}))}function Et(){ne?.disconnect(),ne=null}function m(t,e,s,n){const i=h(t);if(ht(e)){const o=q(()=>{const r=e.value;s(r),b.domUpdated(i,n,r)});d.trackEffect(t,o)}else s(e),b.domUpdated(i,n,e)}var p=(t=>(t[t.None=0]="None",t[t.Focused=1]="Focused",t[t.Composing=2]="Composing",t[t.SyncingToAtom=4]="SyncingToAtom",t[t.SyncingToDom=8]="SyncingToDom",t[t.Busy=14]="Busy",t))(p||{});function De(){return{timeoutId:null,flags:0}}function qe(t,e,s={}){const{debounce:n,event:i="input",parse:o=S=>S,format:r=S=>String(S??""),equal:c=Object.is}=s,u=De(),a=()=>{u.flags|=p.Composing},_=()=>{u.flags&=~p.Composing,I()};t.on("compositionstart",a),t.on("compositionend",_);const X=()=>{u.flags|=p.Focused},I=()=>{if(!(u.flags&p.Busy)){u.flags|=p.SyncingToAtom;try{e.value=o(t.val())}finally{u.flags&=~p.SyncingToAtom}}},K=()=>{u.timeoutId&&(clearTimeout(u.timeoutId),u.timeoutId=null,I()),u.flags&=~p.Focused;const S=r(e.value);t.val()!==S&&t.val(S)};t.on("focus",X),t.on("blur",K);const U=()=>{u.flags&p.Busy||(n?(u.timeoutId&&clearTimeout(u.timeoutId),u.timeoutId=window.setTimeout(I,n)):I())};return t.on(i,U),t.on("change",U),{effect:()=>{const S=r(e.value),R=t.val();if(R!==S){if(u.flags&p.Focused&&c(o(R),e.value))return;u.flags|=p.SyncingToDom;try{if(u.flags&p.Focused){const G=t[0],oe=G.selectionStart,pe=G.selectionEnd;t.val(S);const Z=S.length;G.setSelectionRange(Math.min(oe??Z,Z),Math.min(pe??Z,Z))}else t.val(S);b.domUpdated(t,"val",S)}finally{u.flags&=~p.SyncingToDom}}},cleanup:()=>{t.off(i,U),t.off("change",U),t.off("compositionstart",a),t.off("compositionend",_),t.off("focus",X),t.off("blur",K),u.timeoutId&&clearTimeout(u.timeoutId)}}}h.fn.atomText=function(t,e){return this.each(function(){m(this,t,s=>{const n=e?e(s):String(s??"");h(this).text(n)},"text")})},h.fn.atomHtml=function(t){return this.each(function(){m(this,t,e=>h(this).html(String(e??"")),"html")})},h.fn.atomClass=function(t,e){return this.each(function(){m(this,e,s=>h(this).toggleClass(t,!!s),`class.${t}`)})},h.fn.atomCss=function(t,e,s){return this.each(function(){m(this,e,n=>{const i=s?`${n}${s}`:n;h(this).css(t,i)},`css.${t}`)})},h.fn.atomAttr=function(t,e){return this.each(function(){m(this,e,s=>{const n=h(this);s==null||s===!1?n.removeAttr(t):s===!0?n.attr(t,t):n.attr(t,String(s))},`attr.${t}`)})},h.fn.atomProp=function(t,e){return this.each(function(){m(this,e,s=>h(this).prop(t,s),`prop.${t}`)})},h.fn.atomShow=function(t){return this.each(function(){m(this,t,e=>h(this).toggle(!!e),"show")})},h.fn.atomHide=function(t){return this.each(function(){m(this,t,e=>h(this).toggle(!e),"hide")})},h.fn.atomVal=function(t,e={}){return this.each(function(){const s=h(this),{effect:n,cleanup:i}=qe(s,t,e),o=q(n);d.trackEffect(this,o),d.trackCleanup(this,i)})},h.fn.atomChecked=function(t){return this.each(function(){const e=h(this),s=De(),n=()=>{s.flags&p.Busy||(t.value=!!e.prop("checked"))};e.on("change",n),d.trackCleanup(this,()=>e.off("change",n));const i=q(()=>{s.flags|=p.SyncingToDom;const o=!!t.value;e.prop("checked",o),b.domUpdated(e,"checked",o),s.flags&=~p.SyncingToDom});d.trackEffect(this,i)})},h.fn.atomOn=function(t,e){return this.each(function(){const s=h(this);s.on(t,e),d.trackCleanup(this,()=>s.off(t,e))})},h.fn.atomUnbind=function(){return this.each(function(){d.cleanupTree(this)})};function gt(t,e){m(t.el,e,s=>{t.el.textContent=String(s??"")},"text")}function bt(t,e){m(t.el,e,s=>{t.el.innerHTML=String(s??"")},"html")}function mt(t,e){for(const s in e)m(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 o=n.includes("-")?n.replace(/-./g,r=>r.charAt(1).toUpperCase()):n;if(Array.isArray(i)){const[r,c]=i;m(t.el,r,u=>{s[o]=`${u}${c}`},`css.${n}`)}else m(t.el,i,r=>{s[o]=r},`css.${n}`)}}function yt(t,e){const s=t.el;for(const n in e){const i=e[n];m(s,i,o=>{if(o==null||o===!1){s.removeAttribute(n);return}s.setAttribute(n,o===!0?n:String(o))},`attr.${n}`)}}function It(t,e){const s=t.el;for(const n in e)m(s,e[n],i=>{s[n]=i},`prop.${n}`)}function Dt(t,e){m(t.el,e,s=>{t.$el.toggle(!!s)},"show")}function Ct(t,e){m(t.el,e,s=>{t.$el.toggle(!s)},"hide")}function Tt(t,e){const s=Array.isArray(e)?e[0]:e,n=Array.isArray(e)?e[1]:{},{effect:i,cleanup:o}=qe(t.$el,s,n),r=q(i);d.trackEffect(t.el,r),t.trackCleanup(o)}function Nt(t,e){const s=De(),n=()=>{s.flags&p.Busy||(e.value=t.$el.prop("checked"))};t.$el.on("change",n),t.trackCleanup(()=>t.$el.off("change",n));const i=q(()=>{s.flags|=p.SyncingToDom;const o=!!e.value;t.$el.prop("checked",o),b.domUpdated(t.$el,"checked",o),s.flags&=~p.SyncingToDom});d.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 o=i,r=c=>{const u=h.Event(c.type,{originalEvent:c});fe(()=>o.call(s,u))};s.addEventListener(n,r),t.trackCleanup(()=>s.removeEventListener(n,r))}}h.fn.atomBind=function(t){return this.each(function(){const s={$el:h(this),el:this,trackCleanup:n=>d.trackCleanup(this,n)};t.text!==void 0&>(s,t.text),t.html!==void 0&&bt(s,t.html),t.class&&mt(s,t.class),t.css&&St(s,t.css),t.attr&&yt(s,t.attr),t.prop&&It(s,t.prop),t.show!==void 0&&Dt(s,t.show),t.hide!==void 0&&Ct(s,t.hide),t.val!==void 0&&Tt(s,t.val),t.checked!==void 0&&Nt(s,t.checked),t.on&&At(s,t.on)})},h.fn.atomList=function(t,e){const{key:s,render:n,bind:i,update:o,onAdd:r,onRemove:c,empty:u}=e,a=typeof s=="function"?s:_=>_[s];return this.each(function(){const _=h(this),X=_e(this),I=new Map,K=new Set;let U=[],W=null;const Ge=q(()=>{const S=t.value,R=S.length;if(R===0?u&&!W&&(W=h(u).appendTo(_)):W&&(W.remove(),W=null),R===0&&I.size===0){U=[];return}b.log("list",`${X} updating with ${R} items`);const G=new Array(R),oe=new Set;for(let f=0;f<R;f++){const y=S[f],D=a(y,f);b.enabled&&oe.has(D)&&console.warn(`[atomList] Duplicate key "${D}" at index ${f}. Items with duplicate keys may cause unexpected behavior.`),G[f]=D,oe.add(D)}for(const[f,y]of I){if(oe.has(f)||K.has(f))continue;const D=()=>{y.$el.remove();const C=y.$el[0];C&&d.cleanup(C),K.delete(f),b.log("list",`${X} removed item:`,f)};if(I.delete(f),K.add(f),c){const C=c(y.$el);C instanceof Promise?C.then(D):D()}else D()}if(R===0){U=[];return}const pe=new Map;for(let f=0;f<U.length;f++){const y=U[f];y!==void 0&&pe.set(y,f)}const Z=new Int32Array(R);for(let f=0;f<R;f++){const y=G[f];Z[f]=y!==void 0?pe.get(y)??-1:-1}const Qe=at(Z);let Te=Qe.length-1,k=null;for(let f=R-1;f>=0;f--){const y=G[f],D=S[f],C=I.get(y);if(C){C.item=D;const re=C.$el[0];if(!re)continue;o&&o(C.$el,D,f),Te>=0&&Qe[Te]===f?(Te--,re.nextSibling!==k&&(k?C.$el.insertBefore(k):C.$el.appendTo(_))):k?C.$el.insertBefore(k):C.$el.appendTo(_),k=re}else{const re=n(D,f),$=h(re);I.set(y,{$el:$,item:D}),k?$.insertBefore(k):$.appendTo(_),i&&i($,D,f),r&&r($),b.log("list",`${X} added item:`,y),k=$[0]||null}}U=G});d.trackEffect(this,Ge),d.trackCleanup(this,()=>{I.clear(),K.clear(),U=[],W?.remove()})})};const de=new WeakMap;h.fn.atomMount=function(t,e={}){return this.each(function(){const s=h(this),n=_e(this),i=de.get(this);i&&(b.log("mount",`${n} unmounting existing component`),i()),b.log("mount",`${n} mounting component`);let o;try{o=t(s,e)}catch(u){console.error("[atom-effect-jquery] Mount error:",u);return}let r=!1;const c=()=>{if(!r){if(r=!0,b.log("mount",`${n} full cleanup`),typeof o=="function")try{o()}catch(u){console.error("[atom-effect-jquery] Cleanup error:",u)}d.cleanupTree(this),de.delete(this)}};de.set(this,c),d.trackCleanup(this,c)})},h.fn.atomUnmount=function(){return this.each(function(){de.get(this)?.()})};const ie=new WeakMap;let Xe=!1;function Ce(){if(Xe)return;Xe=!0;const t=h.fn.on,e=h.fn.off,s=h.fn.remove,n=h.fn.empty,i=h.fn.detach;h.fn.remove=function(o){return(o?this.filter(o):this).each(function(){d.cleanupTree(this),d.markIgnored(this)}),s.call(this,o)},h.fn.empty=function(){return this.each(function(){d.cleanupDescendants(this)}),n.call(this)},h.fn.detach=function(o){return(o?this.filter(o):this).each(function(){d.keep(this)}),i.call(this,o)},h.fn.on=function(...o){let r=-1;for(let c=o.length-1;c>=0;c--)if(typeof o[c]=="function"){r=c;break}if(r!==-1){const c=o[r];let u;ie.has(c)?u=ie.get(c):(u=function(a,..._){return fe(()=>c.call(this,a,..._))},ie.set(c,u)),o[r]=u}return t.apply(this,o)},h.fn.off=function(...o){let r=-1;for(let c=o.length-1;c>=0;c--)if(typeof o[c]=="function"){r=c;break}if(r!==-1){const c=o[r];ie.has(c)&&(o[r]=ie.get(c))}return e.apply(this,o)}}const Ot=Ce;Ce(),h(()=>{ze(document.body)}),E.default=h,E.atom=Pe,E.batch=fe,E.computed=je,E.disableAutoCleanup=Et,E.effect=q,E.enableAutoCleanup=ze,E.enablejQueryBatching=Ot,E.enablejQueryOverrides=Ce,E.registry=d,E.untracked=ye,Object.defineProperties(E,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
2
2
|
//# sourceMappingURL=atom-effect-jquery.min.js.map
|