@estjs/signals 0.0.15 → 0.0.16-beta.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/signals.cjs.js +3 -3
- package/dist/signals.cjs.js.map +1 -1
- package/dist/signals.d.cts +176 -190
- package/dist/signals.d.ts +176 -190
- package/dist/signals.dev.cjs.js +325 -190
- package/dist/signals.dev.esm.js +325 -190
- package/dist/signals.esm.js +3 -3
- package/dist/signals.esm.js.map +1 -1
- package/package.json +2 -2
package/dist/signals.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {isObject,isFunction,isPlainObject,hasChanged,isArray,isSet,isMap,isWeakMap,isWeakSet,hasOwn,isStringNumber}from'@estjs/shared';var Qe=Object.defineProperty,Xe=Object.defineProperties;var Ze=Object.getOwnPropertyDescriptors;var de=Object.getOwnPropertySymbols;var et=Object.prototype.hasOwnProperty,tt=Object.prototype.propertyIsEnumerable;var he=(e,t,n)=>t in e?Qe(e,t,{enumerable:true,configurable:true,writable:true,value:n}):e[t]=n,K=(e,t)=>{for(var n in t||(t={}))et.call(t,n)&&he(e,n,t[n]);if(de)for(var n of de(t))tt.call(t,n)&&he(e,n,t[n]);return e},Te=(e,t)=>Xe(e,Ze(t));var T={SET:"SET",ADD:"ADD",DELETE:"DELETE",CLEAR:"CLEAR"};var P=Symbol(""),g=Symbol(""),I=Symbol(""),Ee=Symbol("");var k=Symbol("");function ee(e){var t;(t=e==null?void 0:e.notify)==null||t.call(e);}function A(e){let t=e.nextSubLink,n;e:do{let r=e.subNode,i=r.flag&2,o=r.flag;if(o&60?o&12?o&4?!(o&48)&&Se(e,r)?(r.flag=o|40,i&&ee(r),o&=1):o=0:r.flag=o&-9|32:o=0:(r.flag=o|32,i&&ee(r)),o&1){let s=r.subLink;if(s!==void 0){let c=s.nextSubLink;c!==void 0&&(n={value:t,prev:n},t=c),e=s;continue}}if((e=t)!==void 0){t=e.nextSubLink;continue}for(;n!==void 0;)if(e=n.value,n=n.prev,e!==void 0){t=e.nextSubLink;continue e}break}while(true)}function ge(e){for(;e;){let t=e.subNode,n=t.flag;(n&48)===32&&(t.flag=n|16,(n&6)===2&&ee(t)),e=e.nextSubLink;}}var U=0,b,Y=false;function C(e,t){if(Y)return;let n=t.depLinkTail;if(n&&n.depNode===e)return n;let r=n?n.nextDepLink:t.depLink;if(r&&r.depNode===e)return r.version=U,t.depLinkTail=r,r;let i=e.subLinkTail;if(i&&i.version===U&&i.subNode===t)return t.depLinkTail=i,i;let o={version:U,depNode:e,subNode:t,prevSubLink:i,nextSubLink:void 0,prevDepLink:n,nextDepLink:r};return r&&(r.prevDepLink=o),n?n.nextDepLink=o:t.depLink=o,i?i.nextSubLink=o:e.subLink=o,e.subLinkTail=o,t.depLinkTail=o,o}function O(e,t=e.subNode){let n=e.depNode,r=e.prevSubLink,i=e.nextSubLink,o=e.prevDepLink,s=e.nextDepLink;if(s?s.prevDepLink=o:t.depLinkTail=o,o?o.nextDepLink=s:t.depLink=s,i?i.prevSubLink=r:n.subLinkTail=r,r)r.nextSubLink=i;else if(n.subLink=i,i===void 0){let c=n.depLink;for(;c;)c=O(c,n);n.depLinkTail=void 0,n.flag|=16;}return s}function W(e,t){let n,r=0,i=false;e:do{let o=false;if(t.flag&16)o=true;else {let s=e.depNode,c=s.flag;if((c&17)===17){let u=s.subLink;u&&u.nextSubLink&&ie(u),o=true;}else if((c&33)===33)if(s.depLink){n={link:e,prev:n},e=s.depLink,t=s,++r;continue e}else s.flag&=-33;else c&32&&(s.flag&=-33);}if(!o&&e.nextDepLink!==void 0){e=e.nextDepLink;continue e}for(i=o;r--;){e=n.link,n=n.prev,t=e.subNode;let s=e.depNode;if(i?s.flag=s.flag&-33|16:s.flag&=-33,s.flag&16&&(i=true),!i&&e.nextDepLink!==void 0){e=e.nextDepLink;continue e}}return i?t.flag=t.flag&-33|16:t.flag&=-33,i}while(true)}function ie(e){for(;e;){let t=e.subNode,n=t.flag;(n&48)===32&&(t.flag=n|16),e=e.nextSubLink;}}function ne(e){let t=b;return b=e,t}function F(e){return U++,e.depLinkTail=void 0,e.flag=e.flag&-57|4,ne(e)}function H(e,t){b=t;let n=e.depLinkTail,r=n?n.nextDepLink:e.depLink;for(;r;)r=O(r,e);e.flag&=-5;}function nt(e){let t=ne(void 0),n=Y;Y=true;try{return e()}finally{Y=n,ne(t);}}function Se(e,t){let n=t.depLinkTail;for(;n;){if(n===e)return true;n=n.prevDepLink;}return false}var re=new WeakMap,rt=0;function te(e,t,n){e&&e.forEach(r=>{if(r.flag&2&&!r._active){e.delete(r);return}r._triggerVersion!==n&&(r._triggerVersion=n,t.push(r));});}function l(e,t){if(!b||Y)return;let n=re.get(e);n||(n=new Map,re.set(e,n));let r=n.get(t);r||(r=new Set,n.set(t,r));r.add(b);}function E(e,t,n,r){var c;let i=re.get(e);if(!i)return;let o=[],s=++rt;if(n!==void 0)if(Array.isArray(n))for(let u of n)te(i.get(u),o,s);else te(i.get(n),o,s);if(t==="ADD"||t==="DELETE"||t==="CLEAR"){let u=Array.isArray(e)?k:Ee;te(i.get(u),o,s);}for(let u of o)u.flag&2?(c=u.notify)==null||c.call(u):u.flag&1&&(u.flag|=16,u.subLink&&A(u.subLink));}var me=new WeakMap;function a(e){if(!e||!isObject(e))return e;let t=e._RAW;return t?a(t):h(e)?a(e.peek()):e}var be=ut();function ut(){let e={};return ["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){let r=a(this);l(r,k);let i=r[t](...n);if((i===-1||i===false)&&n.length>0){let o=n.map(s=>a(s));i=r[t](...o);}return i};}),["find","findIndex","findLast","findLastIndex"].forEach(t=>{e[t]=function(...n){let r=a(this),i=y(this);l(r,k);let o=r[t](...n);return (t==="find"||t==="findLast")&&isObject(o)&&!i?d(o):o};}),["push","pop","shift","unshift","splice","sort","reverse","fill","copyWithin"].forEach(t=>{e[t]=function(...n){let r=a(this),i=Array.prototype[t].apply(r,n);return E(r,T.SET,[P,k]),i};}),["toReversed","toSorted","toSpliced"].forEach(t=>{e[t]=function(...n){let r=a(this),i=y(this);if(l(r,k),t==="toSpliced")for(let s=0,c=r.length;s<c;s++)l(r,`${s}`);let o=Array.prototype[t].apply(r,n);return Array.isArray(o)?o.map(s=>isObject(s)?d(s,i):s):o};}),["concat","slice","filter","map","flatMap","flat"].forEach(t=>{e[t]=function(...n){let r=a(this);return l(r,k),Array.prototype[t].apply(r,n)};}),["join","toString","toLocaleString"].forEach(t=>{e[t]=function(...n){let r=a(this);return l(r,k),Array.prototype[t].apply(r,n)};}),["values","keys","entries",Symbol.iterator].forEach(t=>{e[t]=function(){let n=a(this),r=y(this);l(n,P);let i=t===Symbol.iterator?n[Symbol.iterator]():n[t]();return {next(){let{value:o,done:s}=i.next();return s?{value:o,done:s}:Array.isArray(o)?{value:o.map(c=>isObject(c)?d(c,r):c),done:s}:{value:isObject(o)?d(o,r):o,done:s}},[Symbol.iterator](){return this}}};}),e}var ke=e=>({get:(t,n,r)=>{if(n==="_RAW")return t;if(n==="_IS_REACTIVE")return true;if(n==="_IS_SHALLOW")return e;if(hasOwn(be,n))return be[n];let i=Reflect.get(t,n,r);return isStringNumber(n)&&l(t,n),l(t,P),isObject(i)&&!e?d(i):i},set:(t,n,r,i)=>{let o=Reflect.get(t,n,i),s=Reflect.set(t,n,r,i);return hasChanged(r,o)&&(isStringNumber(n)?E(t,T.SET,[n,k,P]):E(t,T.SET,n)),s}}),ft=ke(true),lt=ke(false),pt={get(e,t){return t==="_IS_REACTIVE"?true:t==="_RAW"?e:Reflect.get(hasOwn(ve,t)?ve:e,t,e)}},dt={get(e,t){return t==="_IS_REACTIVE"?true:t==="_RAW"?e:Reflect.get(hasOwn(ye,t)&&t in e?ye:e,t,e)}},ve={get(e){let t=a(this);l(t,g);let n=t.get(e);return isObject(n)&&!y(this)?d(n):n},set(e,t){let n=a(this),r=n.has(e),i=n.get(e),o=a(t);return n.set(e,o),(!r||hasChanged(i,o))&&E(n,T.SET,g),this},add(e){let t=a(this),n=a(e),r=t.has(n);return t.add(n),r?E(t,T.SET,g):E(t,T.ADD,g),this},has(e){let t=a(this);l(t,g);let n=t.has(e);return !n&&isObject(e)?t.has(a(e)):n},delete(e){let t=a(this),n=t.has(e),r=t.delete(e);return !r&&isObject(e)&&(r=t.delete(a(e))),(n||r)&&E(t,T.DELETE,g),r},clear(){let e=a(this),t=e.size>0,n=e.clear();return t&&E(e,T.CLEAR,g),n},forEach(e,t){let n=a(this),r=y(this);l(n,g),n.forEach((i,o)=>{let s=r||!isObject(i)?i:d(i),c=r||!isObject(o)?o:d(o);e.call(t,s,c,this);});},[Symbol.iterator](){let e=a(this),t=y(this);l(e,g);let n=e[Symbol.iterator]();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:t?{value:r,done:i}:Array.isArray(r)?{value:r.map(o=>isObject(o)?d(o):o),done:i}:{value:isObject(r)?d(r):r,done:i}},[Symbol.iterator](){return this}}},get size(){let e=a(this);return l(e,g),e.size},keys(){let e=a(this),t=y(this);l(e,g);let n=e.keys();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:{value:t||!isObject(r)?r:d(r),done:i}},[Symbol.iterator](){return this}}},values(){let e=a(this),t=y(this);l(e,g);let n=e.values();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:{value:t||!isObject(r)?r:d(r),done:i}},[Symbol.iterator](){return this}}},entries(){let e=a(this),t=y(this);l(e,g);let n=e.entries();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:t?{value:r,done:i}:{value:r.map(o=>isObject(o)?d(o):o),done:i}},[Symbol.iterator](){return this}}}},ye={get(e){let t=a(this);l(t,I);let n=t.get(e);return n===void 0&&v(e)&&(n=t.get(a(e))),isObject(n)&&!y(this)?d(n):n},set(e,t){let n=a(this),r=a(e),i=n.has(r),o=n.get(r),s=a(t);return n.set(r,s),(!i||hasChanged(o,s))&&E(n,T.SET,I),this},add(e){let t=a(this),n=a(e),r=t.has(n);return t.add(n),r||E(t,T.ADD,I),this},has(e){let t=a(this);l(t,I);let n=t.has(e);return !n&&v(e)&&(n=t.has(a(e))),n},delete(e){let t=a(this),n=a(e),r=t.has(n),i=t.delete(n);return (r||i)&&E(t,T.DELETE,I),i}},we=e=>({get(t,n,r){if(n==="_RAW")return t;if(n==="_IS_REACTIVE")return true;if(n==="_IS_SHALLOW")return e;let i=Reflect.get(t,n,r),o=h(i)?i.value:i;return l(t,n),isObject(o)&&!e?d(o):o},set:(t,n,r,i)=>{let o=Reflect.get(t,n,i),s=Reflect.set(t,n,a(r),i);return hasChanged(r,o)&&E(t,T.SET,n),s},deleteProperty:(t,n)=>{let r=hasOwn(t,n),i=Reflect.deleteProperty(t,n);return r&&i&&E(t,T.DELETE,n),i}}),ht=we(true),Tt=we(false);function d(e,t=false){if(!isObject(e)||v(e))return e;let n=me.get(e);if(n)return n;let r;isArray(e)?r=t?ft:lt:isSet(e)||isMap(e)?r=pt:isWeakMap(e)||isWeakSet(e)?r=dt:r=t?ht:Tt;let i=new Proxy(e,r);return me.set(e,i),i}function v(e){return !!(e&&e._IS_REACTIVE)}function x(e){return v(e)||h(e)?e:d(e)}function $(e){return v(e)||h(e)?e:d(e,true)}function y(e){return !!(e&&e._IS_SHALLOW)}var Et=e=>isObject(e)?x(e):e;var xe;xe="_IS_SIGNAL";var N=class{constructor(t,n=false){this.flag=1;this[xe]=true;let r=a(t);this._rawValue=r,this._IS_SHALLOW=n,isObject(r)?v(t)?this._value=t:this._value=n?$(r):x(r):this._value=r;}get dep(){return this}get value(){let t=b;if(t&&C(this,t),this.flag&16&&this.shouldUpdate()){let r=this.subLink;r&&ie(r);}return this._value}set value(t){h(t)&&(t=t.peek());let n=t,r=a(t);if(!hasChanged(this._rawValue,r))return;if(this._oldValue=this._rawValue,this._rawValue=r,this.flag|=16,!isObject(r))this._value=r;else if(v(n))this._value=n;else {let o=this._IS_SHALLOW;this._value=o?$(r):x(r);}let i=this.subLink;i&&A(i);}shouldUpdate(){if(this.flag&=-17,!("_oldValue"in this))return true;let t=hasChanged(this._oldValue,this._rawValue);return this._oldValue=this._rawValue,t}peek(){return this._value}set(t){this.value=t;}update(t){let n=t(this.peek());h(n)?this.value=n.peek():this.value=n;}};function gt(e){return h(e)?e:new N(e)}function St(e){return h(e)&&(e=e.peek()),new N(e,true)}function h(e){return !!e&&!!e._IS_SIGNAL}var J=new Set,oe=new Set,De=Promise.resolve(),se=false;function Ie(e){return e?De.then(e):De}function D(e){J.add(e),Ae();}function Ae(){se||(se=true,Ie(ae));}function Ce(e){oe.add(e),Ae();}function ae(){for(se=false,_t();J.size>0;){for(let e of J)try{e();}catch(t){}J.clear();}}function _t(){let e=Array.from(oe);oe.clear();for(let t of e)try{t();}catch(n){}}function Ne(e,t){switch(t){case "sync":return ()=>e();case "pre":return ()=>Ce(e);case "post":return ()=>D(e);default:return ()=>D(e)}}var j=0;function z(e){Ve();try{return e()}finally{Ge();}}function Ve(){j++;}function Ge(){j--,j===0&&ae();}function ce(){return j>0}function mt(){return j}var Pe;Pe="_IS_EFFECT";var ue=class{constructor(t,n){this.flag=18;this[Pe]=true;this._active=true;var r;if(this.fn=t,n){let i=(r=n.scheduler)!=null?r:n.flush;i&&(this._flushScheduler=isFunction(i)?()=>i(this):Ne(()=>this.run(),i)),n.onStop&&(this.onStop=n.onStop);}}get active(){return this._active}get dirty(){let t=this.flag;if(t&16)return true;if(t&32){if(this.depLink&&W(this.depLink,this))return this.flag=t&-33|16,true;this.flag=t&-33;}return false}pause(){this.flag|=256;}resume(){let n=this.flag&-257;this.flag=n;let r=(n&16)!==0,i=(n&32)!==0;(r||i)&&this.notify();}run(){if(!this._active)return this.fn();let t=this.flag;this.flag=t&-49|512;let n=F(this);try{return this.fn()}catch(r){throw this.flag|=16,r}finally{this.flag&=-513,H(this,n);}}getJob(){return this._job||(this._job=()=>this.run()),this._job}notify(){var n;let t=this.flag;!this._active||t&784||(this.flag=t|16,this._flushScheduler?(n=this._flushScheduler)==null||n.call(this):ce()?D(this.getJob()):this.run());}stop(){if(!this._active)return;this._active=false;let t=this.depLink;for(;t;)t=O(t,this);let n=this.subLink;for(;n;)n=O(n);this._job=void 0,this._flushScheduler=void 0,this.depLinkTail=void 0,this.subLinkTail=void 0,this!=null&&this.onStop&&this.onStop();}};function Q(e,t){let n=new ue(e,t);try{n.run();}catch(i){throw n.stop(),i}let r=()=>n.run();return r.effect=n,r.stop=()=>n.stop(),r}function vt(e){e.effect.stop();}function yt(e){return !!(e&&e._IS_EFFECT)}function kt(e,t,n){let r=t;return Q(()=>{r=e(r);},n)}var V=Symbol("computed-no-value"),je;je="_IS_COMPUTED";var X=class{constructor(t,n,r,i){this.flag=17;this[je]=true;this._value=V;this.getter=t,this.setter=n,this.onTrack=r,this.onTrigger=i,this.flag|=16;}get value(){b&&C(this,b);let t=this.flag,n=this._value!==V;return n&&!(t&48)?this._value:!n||t&16?(this.recompute(),this._value):(t&32&&(this.depLink&&W(this.depLink,this)?this.recompute():this.flag=t&-33),this._value)}set value(t){this.setter&&this.setter(t);}peek(){return this._value===V&&this.recompute(),this._value}recompute(){let t=this._value,n=t!==V,r=F(this);try{let i=this.getter(),o=this.flag,s=this.subLink,c=-49;!n||hasChanged(t,i)?(this._value=i,this.flag=o&c,s&&ge(s)):this.flag=o&c;}catch(i){let o=-49;throw this.flag&=o,this._value=V,i}finally{H(this,r);}}shouldUpdate(){let t=this._value!==V,n=this._value;return this.recompute(),t?hasChanged(this._value,n):true}};function fe(e){if(M(e))return e;if(!e)throw new Error("[Computed] Invalid argument: computed() requires a getter function or options object.");if(isFunction(e))return new X(e);if(isPlainObject(e)){let{get:t,set:n,onTrack:r,onTrigger:i}=e;if(!t)throw new Error(`[Computed] Invalid options: getter function is required.
|
|
1
|
+
import {isObject,isFunction,isPlainObject,hasChanged,isArray,isSet,isMap,isWeakMap,isWeakSet,hasOwn,isStringNumber}from'@estjs/shared';var Je=Object.defineProperty;var de=Object.getOwnPropertySymbols;var ze=Object.prototype.hasOwnProperty,Qe=Object.prototype.propertyIsEnumerable;var he=(e,t,n)=>t in e?Je(e,t,{enumerable:true,configurable:true,writable:true,value:n}):e[t]=n,Te=(e,t)=>{for(var n in t||(t={}))ze.call(t,n)&&he(e,n,t[n]);if(de)for(var n of de(t))Qe.call(t,n)&&he(e,n,t[n]);return e};var T={SET:"SET",ADD:"ADD",DELETE:"DELETE",CLEAR:"CLEAR"};var P=Symbol(""),S=Symbol(""),A=Symbol(""),ge=Symbol("");var L=Symbol("");function Z(e){var t;(t=e==null?void 0:e.notify)==null||t.call(e);}function C(e){let t=e.nextSubLink,n;e:do{let r=e.subNode,i=r.flag&2,o=r.flag;if(o&60?o&12?o&4?!(o&48)&&Se(e,r)?(r.flag=o|40,i&&Z(r),o&=1):o=0:r.flag=o&-9|32:o=0:(r.flag=o|32,i&&Z(r)),o&1){let s=r.subLink;if(s!==void 0){let c=s.nextSubLink;c!==void 0&&(n={value:t,prev:n},t=c),e=s;continue}}if((e=t)!==void 0){t=e.nextSubLink;continue}for(;n!==void 0;)if(e=n.value,n=n.prev,e!==void 0){t=e.nextSubLink;continue e}break}while(true)}function Ee(e){for(;e;){let t=e.subNode,n=t.flag;(n&48)===32&&(t.flag=n|16,(n&6)===2&&Z(t)),e=e.nextSubLink;}}var M=0,_,G=false,te=class{constructor(t,n){this.map=t;this.key=n;this.isDep=true;this.flag=0;}get subLink(){return this._subLink}set subLink(t){this._subLink=t,t===void 0&&this.map.delete(this.key);}};function R(e,t){if(G)return;let n=t.depLinkTail;if(n&&n.depNode===e)return n;let r=n?n.nextDepLink:t.depLink;if(r&&r.depNode===e)return r.version=M,t.depLinkTail=r,r;let i=e.subLinkTail;if(i&&i.version===M&&i.subNode===t)return t.depLinkTail=i,i;let o={version:M,depNode:e,subNode:t,prevSubLink:i,nextSubLink:void 0,prevDepLink:n,nextDepLink:r};return r&&(r.prevDepLink=o),n?n.nextDepLink=o:t.depLink=o,i?i.nextSubLink=o:e.subLink=o,e.subLinkTail=o,t.depLinkTail=o,o}function O(e,t=e.subNode){let n=e.depNode,r=e.prevSubLink,i=e.nextSubLink,o=e.prevDepLink,s=e.nextDepLink;if(s?s.prevDepLink=o:t.depLinkTail=o,o?o.nextDepLink=s:t.depLink=s,i?i.prevSubLink=r:n.subLinkTail=r,r)r.nextSubLink=i;else if(n.subLink=i,i===void 0){let c=n.depLink;for(;c;)c=O(c,n);n.depLinkTail=void 0,n.isDep||(n.flag|=16);}return s}function K(e,t){let n,r=0,i=false;e:do{let o=false;if(t.flag&16)o=true;else {let s=e.depNode,c=s.flag;if((c&17)===17){let u=s.subLink;u&&u.nextSubLink&&ie(u),o=true;}else if((c&33)===33)if(s.depLink){n={link:e,prev:n},e=s.depLink,t=s,++r;continue e}else s.flag&=-33;else c&32&&(s.flag&=-33);}if(!o&&e.nextDepLink!==void 0){e=e.nextDepLink;continue e}for(i=o;r--;){e=n.link,n=n.prev,t=e.subNode;let s=e.depNode;if(i?s.flag=s.flag&-33|16:s.flag&=-33,s.flag&16&&(i=true),!i&&e.nextDepLink!==void 0){e=e.nextDepLink;continue e}}return i?t.flag=t.flag&-33|16:t.flag&=-33,i}while(true)}function ie(e){for(;e;){let t=e.subNode,n=t.flag;(n&48)===32&&(t.flag=n|16),e=e.nextSubLink;}}function ne(e){let t=_;return _=e,t}function U(e){return M++,e.depLinkTail=void 0,e.flag=e.flag&-57|4,ne(e)}function W(e,t){_=t;let n=e.depLinkTail,r=n?n.nextDepLink:e.depLink;for(;r;)r=O(r,e);e.flag&=-5;}function Ze(e){let t=ne(void 0),n=G;G=true;try{return e()}finally{G=n,ne(t);}}function Se(e,t){let n=t.depLinkTail;for(;n;){if(n===e)return true;n=n.prevDepLink;}return false}var re=new WeakMap,et=0;function ee(e,t,n){if(e)for(let r=e.subLink;r;r=r.nextSubLink){let i=r.subNode;i._triggerVersion!==n&&(i._triggerVersion=n,t.push(i));}}function l(e,t){if(!_||G)return;let n=re.get(e);n||(n=new Map,re.set(e,n));let r=n.get(t);r||(r=new te(n,t),n.set(t,r)),R(r,_);}function g(e,t,n,r){var c;let i=re.get(e);if(!i)return;let o=[],s=++et;if(n!==void 0)if(Array.isArray(n))for(let u of n)ee(i.get(u),o,s);else ee(i.get(n),o,s);if(t==="ADD"||t==="DELETE"||t==="CLEAR"){let u=Array.isArray(e)?L:ge;ee(i.get(u),o,s);}for(let u of o)u.flag&2?(c=u.notify)==null||c.call(u):u.flag&1&&(u.flag|=16,u.subLink&&C(u.subLink));}var me=new WeakMap;function a(e){if(!e||!isObject(e))return e;let t=e._RAW;return t?a(t):h(e)?a(e.peek()):e}var _e=st();function st(){let e={};return ["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){let r=a(this);l(r,L);let i=r[t](...n);if((i===-1||i===false)&&n.length>0){let o=n.map(s=>a(s));i=r[t](...o);}return i};}),["find","findIndex","findLast","findLastIndex"].forEach(t=>{e[t]=function(...n){let r=a(this),i=y(this);l(r,L);let o=r[t](...n);return (t==="find"||t==="findLast")&&isObject(o)&&!i?d(o):o};}),["push","pop","shift","unshift","splice","sort","reverse","fill","copyWithin"].forEach(t=>{e[t]=function(...n){let r=a(this),i=Array.prototype[t].apply(r,n);return g(r,T.SET,[P,L]),i};}),["toReversed","toSorted","toSpliced"].forEach(t=>{e[t]=function(...n){let r=a(this),i=y(this);if(l(r,L),t==="toSpliced")for(let s=0,c=r.length;s<c;s++)l(r,`${s}`);let o=Array.prototype[t].apply(r,n);return Array.isArray(o)?o.map(s=>isObject(s)?d(s,i):s):o};}),["concat","slice","filter","map","flatMap","flat"].forEach(t=>{e[t]=function(...n){let r=a(this);return l(r,L),Array.prototype[t].apply(this,n)};}),["join","toString","toLocaleString"].forEach(t=>{e[t]=function(...n){let r=a(this);return l(r,L),Array.prototype[t].apply(r,n)};}),["values","keys","entries",Symbol.iterator].forEach(t=>{e[t]=function(){let n=a(this),r=y(this);l(n,P);let i=t===Symbol.iterator?n[Symbol.iterator]():n[t]();return {next(){let{value:o,done:s}=i.next();return s?{value:o,done:s}:Array.isArray(o)?{value:o.map(c=>isObject(c)?d(c,r):c),done:s}:{value:isObject(o)?d(o,r):o,done:s}},[Symbol.iterator](){return this}}};}),e}var ve=e=>({get:(t,n,r)=>{if(n==="_RAW")return t;if(n==="_IS_REACTIVE")return true;if(n==="_IS_SHALLOW")return e;if(hasOwn(_e,n))return _e[n];let i=Reflect.get(t,n,r);return isStringNumber(n)&&l(t,n),l(t,P),isObject(i)&&!e?d(i):i},set:(t,n,r,i)=>{let o=Reflect.get(t,n,i),s=Reflect.set(t,n,r,i);return hasChanged(r,o)&&(isStringNumber(n)?g(t,T.SET,[n,L,P]):g(t,T.SET,n)),s}}),at=ve(true),ct=ve(false),ut={get(e,t){return t==="_IS_REACTIVE"?true:t==="_RAW"?e:Reflect.get(hasOwn(ke,t)?ke:e,t,e)}},ft={get(e,t){return t==="_IS_REACTIVE"?true:t==="_RAW"?e:Reflect.get(hasOwn(ye,t)&&t in e?ye:e,t,e)}},ke={get(e){let t=a(this);l(t,S);let n=t.get(e);return isObject(n)&&!y(this)?d(n):n},set(e,t){let n=a(this),r=n.has(e),i=n.get(e),o=a(t);return n.set(e,o),(!r||hasChanged(i,o))&&g(n,T.SET,S),this},add(e){let t=a(this),n=a(e),r=t.has(n);return t.add(n),r||g(t,T.ADD,S),this},has(e){let t=a(this);l(t,S);let n=t.has(e);return !n&&isObject(e)?t.has(a(e)):n},delete(e){let t=a(this),n=t.has(e),r=t.delete(e);return !r&&isObject(e)&&(r=t.delete(a(e))),(n||r)&&g(t,T.DELETE,S),r},clear(){let e=a(this),t=e.size>0,n=e.clear();return t&&g(e,T.CLEAR,S),n},forEach(e,t){let n=a(this),r=y(this);l(n,S),n.forEach((i,o)=>{let s=r||!isObject(i)?i:d(i),c=r||!isObject(o)?o:d(o);e.call(t,s,c,this);});},[Symbol.iterator](){let e=a(this),t=y(this);l(e,S);let n=e[Symbol.iterator]();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:t?{value:r,done:i}:Array.isArray(r)?{value:r.map(o=>isObject(o)?d(o):o),done:i}:{value:isObject(r)?d(r):r,done:i}},[Symbol.iterator](){return this}}},get size(){let e=a(this);return l(e,S),e.size},keys(){let e=a(this),t=y(this);l(e,S);let n=e.keys();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:{value:t||!isObject(r)?r:d(r),done:i}},[Symbol.iterator](){return this}}},values(){let e=a(this),t=y(this);l(e,S);let n=e.values();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:{value:t||!isObject(r)?r:d(r),done:i}},[Symbol.iterator](){return this}}},entries(){let e=a(this),t=y(this);l(e,S);let n=e.entries();return {next(){let{value:r,done:i}=n.next();return i?{value:r,done:i}:t?{value:r,done:i}:{value:r.map(o=>isObject(o)?d(o):o),done:i}},[Symbol.iterator](){return this}}}},ye={get(e){let t=a(this);l(t,A);let n=t.get(e);return n===void 0&&v(e)&&(n=t.get(a(e))),isObject(n)&&!y(this)?d(n):n},set(e,t){let n=a(this),r=a(e),i=n.has(r),o=n.get(r),s=a(t);return n.set(r,s),(!i||hasChanged(o,s))&&g(n,T.SET,A),this},add(e){let t=a(this),n=a(e),r=t.has(n);return t.add(n),r||g(t,T.ADD,A),this},has(e){let t=a(this);l(t,A);let n=t.has(e);return !n&&v(e)&&(n=t.has(a(e))),n},delete(e){let t=a(this),n=a(e),r=t.has(n),i=t.delete(n);return (r||i)&&g(t,T.DELETE,A),i}},Le=e=>({get(t,n,r){if(n==="_RAW")return t;if(n==="_IS_REACTIVE")return true;if(n==="_IS_SHALLOW")return e;let i=Reflect.get(t,n,r),o=h(i)?i.value:i;return l(t,n),isObject(o)&&!e?d(o):o},set:(t,n,r,i)=>{let o=Reflect.get(t,n,i),s=Reflect.set(t,n,a(r),i);return hasChanged(r,o)&&g(t,T.SET,n),s},deleteProperty:(t,n)=>{let r=hasOwn(t,n),i=Reflect.deleteProperty(t,n);return r&&i&&g(t,T.DELETE,n),i}}),lt=Le(true),pt=Le(false);function d(e,t=false){if(!isObject(e)||v(e))return e;let n=me.get(e);if(n)return n;let r;isArray(e)?r=t?at:ct:isSet(e)||isMap(e)?r=ut:isWeakMap(e)||isWeakSet(e)?r=ft:r=t?lt:pt;let i=new Proxy(e,r);return me.set(e,i),i}function v(e){return !!(e&&e._IS_REACTIVE)}function D(e){return v(e)||h(e)?e:d(e)}function q(e){return v(e)||h(e)?e:d(e,true)}function y(e){return !!(e&&e._IS_SHALLOW)}var dt=e=>isObject(e)?D(e):e;var De;De="_IS_SIGNAL";var N=class{constructor(t,n=false){this.flag=1;this[De]=true;let r=a(t);this._rawValue=r,this._IS_SHALLOW=n,Re(r)?v(t)?this._value=t:this._value=n?q(r):D(r):this._value=r;}get dep(){return this}get value(){let t=_;if(t&&R(this,t),this.flag&16&&this.shouldUpdate()){let r=this.subLink;r&&ie(r);}return this._value}set value(t){h(t)&&(t=t.peek());let n=t,r=a(t);if(!hasChanged(this._rawValue,r))return;if(this._oldValue=this._rawValue,this._rawValue=r,this.flag|=16,!Re(r))this._value=r;else if(v(n))this._value=n;else {let o=this._IS_SHALLOW;this._value=o?q(r):D(r);}let i=this.subLink;i&&C(i);}shouldUpdate(){if(this.flag&=-17,!("_oldValue"in this))return true;let t=hasChanged(this._oldValue,this._rawValue);return this._oldValue=this._rawValue,t}peek(){return this._value}set(t){this.value=t;}update(t){let n=t(this.peek());h(n)?this.value=n.peek():this.value=n;}};function Re(e){return isObject(e)?isArray(e)||isMap(e)||isSet(e)||isWeakMap(e)||isWeakSet(e)||isPlainObject(e):false}function _t(e){return h(e)?e:new N(e)}function kt(e){return h(e)&&(e=e.peek()),new N(e,true)}function h(e){return !!e&&!!e._IS_SIGNAL}var B=new Set,oe=new Set,xe=Promise.resolve(),se=false;function Ie(e){return e?xe.then(e):xe}function x(e){B.add(e),Ae();}function Ae(){se||(se=true,Ie(ae));}function Ce(e){oe.add(e),Ae();}function ae(){for(se=false,yt();B.size>0;){for(let e of B)try{e();}catch(t){}B.clear();}}function yt(){let e=Array.from(oe);oe.clear();for(let t of e)try{t();}catch(n){}}function Ne(e,t){switch(t){case "sync":return ()=>e();case "pre":return ()=>Ce(e);case "post":return ()=>x(e);default:return ()=>x(e)}}var Y=0;function $(e){Ve();try{return e()}finally{Pe();}}function Ve(){Y++;}function Pe(){Y--,Y===0&&ae();}function ce(){return Y>0}function vt(){return Y}var Oe;Oe="_IS_EFFECT";var ue=class{constructor(t,n){this.flag=18;this[Oe]=true;this._active=true;if(this.fn=t,n){this.options=n;let r=n.flush||n.scheduler;r&&!isFunction(r)&&(this._flushScheduler=Ne(()=>this.run(),r));}}get active(){return this._active}get dirty(){let t=this.flag;if(t&16)return true;if(t&32){if(this.depLink&&K(this.depLink,this))return this.flag=t&-33|16,true;this.flag=t&-33;}return false}pause(){this.flag|=256;}resume(){let n=this.flag&-257;this.flag=n;let r=(n&16)!==0,i=(n&32)!==0;(r||i)&&this.notify();}run(){if(!this._active)return this.fn();let t=this.flag;this.flag=t&-49|512;let n=U(this);try{return this.fn()}catch(r){throw this.flag|=16,r}finally{this.flag&=-513,W(this,n);}}getJob(){return this._job||(this._job=()=>this.run()),this._job}notify(){var i,o,s;let t=this.flag;if(!this._active||t&784)return;this.flag=t|16;let n=((i=this.options)==null?void 0:i.flush)||((o=this.options)==null?void 0:o.scheduler);n?isFunction(n)?n(this):(s=this._flushScheduler)==null||s.call(this):ce()?x(this.getJob()):this.run();}stop(){var r;if(!this._active)return;this._active=false;let t=this.depLink;for(;t;)t=O(t,this);let n=this.subLink;for(;n;)n=O(n);this._job=void 0,this._flushScheduler=void 0,this.depLinkTail=void 0,this.subLinkTail=void 0,(r=this.options)!=null&&r.onStop&&this.options.onStop();}};function J(e,t){let n=new ue(e,t);try{n.run();}catch(i){throw n.stop(),i}let r=()=>n.run();return r.effect=n,r.stop=()=>n.stop(),r}function Lt(e){e.effect.stop();}function wt(e){return !!(e&&e._IS_EFFECT)}function Rt(e,t,n){let r=t;return J(()=>{r=e(r);},n)}var V=Symbol("computed-no-value"),Me;Me="_IS_COMPUTED";var z=class{constructor(t,n,r,i){this.flag=17;this[Me]=true;this._value=V;this.getter=t,this.setter=n,this.onTrack=r,this.onTrigger=i,this.flag|=16;}get value(){_&&R(this,_);let t=this.flag,n=this._value!==V;return n&&!(t&48)?this._value:!n||t&16?(this.recompute(),this._value):(t&32&&(this.depLink&&K(this.depLink,this)?this.recompute():this.flag=t&-33),this._value)}set value(t){this.setter&&this.setter(t);}peek(){return this._value===V&&this.recompute(),this._value}recompute(){let t=this._value,n=t!==V,r=U(this);try{let i=this.getter(),o=this.flag,s=this.subLink,c=-49;!n||hasChanged(t,i)?(this._value=i,this.flag=o&c,s&&Ee(s)):this.flag=o&c;}catch(i){let o=-49;throw this.flag&=o,this._value=V,i}finally{W(this,r);}}shouldUpdate(){let t=this._value!==V,n=this._value;return this.recompute(),t?hasChanged(this._value,n):true}};function fe(e){if(j(e))return e;if(!e)throw new Error("[Computed] Invalid argument: computed() requires a getter function or options object.");if(isFunction(e))return new z(e);if(isPlainObject(e)){let{get:t,set:n,onTrack:r,onTrigger:i}=e;if(!t)throw new Error(`[Computed] Invalid options: getter function is required.
|
|
2
2
|
Usage: computed({ get: () => value, set: (v) => { ... } })`);if(!isFunction(t))throw new TypeError(`[Computed] Invalid options: getter must be a function.
|
|
3
|
-
Received: ${typeof t}`);return new
|
|
4
|
-
Received: ${typeof e}`)}function
|
|
3
|
+
Received: ${typeof t}`);return new z(t,n,r,i)}throw new Error(`[Computed] Invalid argument: expected a function or options object.
|
|
4
|
+
Received: ${typeof e}`)}function j(e){return !!e&&!!e._IS_COMPUTED}function xt(e){let{state:t,getters:n,actions:r}=e,i=Te({},t),o=D(t),s=new Set,c=new Set,u=f=>{s.forEach(k=>k(f)),c.forEach(k=>k(f));},w={patch$(f){$(()=>{Object.assign(o,f);}),u(o);},subscribe$(f){s.add(f);},unsubscribe$(f){s.delete(f);},onAction$(f){c.add(f);},offAction$(f){c.delete(f);},reset$(){$(()=>{Object.assign(o,i);}),u(o);}},E={};for(let f of Object.keys(i))Object.defineProperty(E,f,{get:()=>o[f],set:k=>{o[f]=k;},enumerable:true,configurable:true});if(Object.defineProperty(E,"state",{value:o,enumerable:true,configurable:true,writable:true}),Object.assign(E,w),n)for(let f in n){let k=n[f];if(!k)continue;let X=fe(()=>k.call(E,o));Object.defineProperty(E,f,{get:()=>X.value,enumerable:true,configurable:true});}if(r)for(let f in r){let k=r[f];k&&(E[f]=(...X)=>{let Be=k.apply(E,X);return c.forEach($e=>$e(o)),Be});}return E}function It(e){let t=new e,n=Object.create(null),r={},i={};return Object.getOwnPropertyNames(t).forEach(o=>{n[o]=t[o];}),Object.getOwnPropertyNames(e.prototype).forEach(o=>{let s=Object.getOwnPropertyDescriptor(e.prototype,o);s&&(isFunction(s.get)?r[o]=function(){return s.get.call(this)}:isFunction(s.value)&&o!=="constructor"&&(i[o]=function(...c){return s.value.apply(this,c)}));}),{state:n,getters:r,actions:i}}function At(e){return ()=>{let t;return isFunction(e)?t=It(e):t=e,xt(t)}}var Ke,Ue,Q=class extends(Ue=N,Ke="_IS_REF",Ue){constructor(n){super(n,true);this[Ke]=true;}get value(){let n=_;return n&&R(this,n),this._value}set value(n){h(n)&&(n=n.peek()),pe(n)&&(n=n.value),hasChanged(this._value,n)&&(this._rawValue=n,this._value=n,this.flag|=16,this.subLink&&C(this.subLink));}};function Nt(e=void 0){return pe(e)?e:h(e)?new Q(e.peek()):new Q(e)}function pe(e){return !!e&&!!e._IS_REF}var We={},Fe=new Set;function I(e,t){if(t||(Fe.clear(),t=Fe),!isObject(e)||t.has(e))return e;if(t.add(e),h(e)||j(e))return I(e.value,t);if(Array.isArray(e))for(let n of e)I(n,t);else isMap(e)?(e.forEach(n=>{I(n,t);}),e.keys(),e.values()):isSet(e)?(e.forEach(n=>{I(n,t);}),e.values()):Object.keys(e).forEach(n=>{I(e[n],t);});return e}function He(e){return isFunction(e)?e:h(e)||j(e)?()=>e.value:v(e)?()=>I(e):()=>e}function Yt(e){if(Array.isArray(e)){let t=e.map(n=>He(n));return ()=>t.map(n=>n())}return He(e)}function jt(e,t,n={}){let{immediate:r=false,deep:i=false}=n,o=We,s=Yt(e),c=()=>{let w=u.effect;if(!w.run)return;let E=w.run();(i||isObject(E)||hasChanged(E,o))&&(t(E,o===We?void 0:o),o=E);},u=J(()=>{let w=s();return i&&I(w),w},{scheduler:()=>x(c)});return r?c():o=u.effect.run(),()=>{u.stop();}}export{T as TriggerOpTypes,$ as batch,fe as computed,At as createStore,J as effect,Pe as endBatch,vt as getBatchDepth,ce as isBatching,j as isComputed,wt as isEffect,v as isReactive,pe as isRef,y as isShallow,h as isSignal,Rt as memoEffect,Ie as nextTick,x as queueJob,Ce as queuePreFlushCb,D as reactive,Nt as ref,q as shallowReactive,kt as shallowSignal,_t as signal,Ve as startBatch,Lt as stop,a as toRaw,dt as toReactive,g as trigger,Ze as untrack,jt as watch};//# sourceMappingURL=signals.esm.js.map
|
|
5
5
|
//# sourceMappingURL=signals.esm.js.map
|