@geodaoyu/accessor
Version:
mini @arcgis/core/core/Accessor & @arcgis/core/core/reactiveUtils
2 lines (1 loc) • 16.9 kB
JavaScript
(function(x,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(x=typeof globalThis<"u"?globalThis:x||self,W(x.Accessor={}))})(this,(function(x){"use strict";function W(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const Be=process.env.NODE_ENV!=="production"?Object.freeze({}):{};process.env.NODE_ENV!=="production"&&Object.freeze([]);const ze=()=>{},re=Object.assign,Ye=Object.prototype.hasOwnProperty,ie=(e,t)=>Ye.call(e,t),m=Array.isArray,A=e=>J(e)==="[object Map]",Fe=e=>J(e)==="[object Set]",ye=e=>typeof e=="function",Ue=e=>typeof e=="string",H=e=>typeof e=="symbol",P=e=>e!==null&&typeof e=="object",Ge=Object.prototype.toString,J=e=>Ge.call(e),Oe=e=>J(e).slice(8,-1),Je=e=>J(e)==="[object Object]",oe=e=>Ue(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Qe=(e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))})(e=>e.charAt(0).toUpperCase()+e.slice(1)),T=(e,t)=>!Object.is(e,t);function E(e,...t){console.warn(`[Vue warn] ${e}`,...t)}let u;const ce=new WeakSet;class qe{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,ce.has(this)&&(ce.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||Xe(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,je(this),Ne(this);const t=u,n=g;u=this,g=!0;try{return this.fn()}finally{process.env.NODE_ENV!=="production"&&u!==this&&E("Active effect was not restored correctly - this is likely a Vue internal bug."),xe(this),u=t,g=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)ue(t);this.deps=this.depsTail=void 0,je(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?ce.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){le(this)&&this.run()}get dirty(){return le(this)}}let De=0,$,C;function Xe(e,t=!1){if(e.flags|=8,t){e.next=C,C=e;return}e.next=$,$=e}function ae(){De++}function fe(){if(--De>0)return;if(C){let t=C;for(C=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;$;){let t=$;for($=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(r){e||(e=r)}t=n}}if(e)throw e}function Ne(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function xe(e){let t,n=e.depsTail,r=n;for(;r;){const s=r.prevDep;r.version===-1?(r===n&&(n=s),ue(r),ke(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=s}e.deps=t,e.depsTail=n}function le(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ze(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ze(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Q)||(e.globalVersion=Q,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!le(e))))return;e.flags|=2;const t=e.dep,n=u,r=g;u=e,g=!0;try{Ne(e);const s=e.fn(e._value);(t.version===0||T(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{u=n,g=r,xe(e),e.flags&=-3}}function ue(e,t=!1){const{dep:n,prevSub:r,nextSub:s}=e;if(r&&(r.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=r,e.nextSub=void 0),process.env.NODE_ENV!=="production"&&n.subsHead===e&&(n.subsHead=s),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)ue(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function ke(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let g=!0;const me=[];function Te(){me.push(g),g=!1}function Re(){const e=me.pop();g=e===void 0?!0:e}function je(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=u;u=void 0;try{t()}finally{u=n}}}let Q=0;class et{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class tt{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0,process.env.NODE_ENV!=="production"&&(this.subsHead=void 0)}track(t){if(!u||!g||u===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==u)n=this.activeLink=new et(u,this),u.deps?(n.prevDep=u.depsTail,u.depsTail.nextDep=n,u.depsTail=n):u.deps=u.depsTail=n,Ve(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const r=n.nextDep;r.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=r),n.prevDep=u.depsTail,n.nextDep=void 0,u.depsTail.nextDep=n,u.depsTail=n,u.deps===n&&(u.deps=r)}return process.env.NODE_ENV!=="production"&&u.onTrack&&u.onTrack(re({effect:u},t)),n}trigger(t){this.version++,Q++,this.notify(t)}notify(t){ae();try{if(process.env.NODE_ENV!=="production")for(let n=this.subsHead;n;n=n.nextSub)n.sub.onTrigger&&!(n.sub.flags&8)&&n.sub.onTrigger(re({effect:n.sub},t));for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{fe()}}}function Ve(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let r=t.deps;r;r=r.nextDep)Ve(r)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),process.env.NODE_ENV!=="production"&&e.dep.subsHead===void 0&&(e.dep.subsHead=e),e.dep.subs=e}}const pe=new WeakMap,R=Symbol(process.env.NODE_ENV!=="production"?"Object iterate":""),de=Symbol(process.env.NODE_ENV!=="production"?"Map keys iterate":""),B=Symbol(process.env.NODE_ENV!=="production"?"Array iterate":"");function _(e,t,n){if(g&&u){let r=pe.get(e);r||pe.set(e,r=new Map);let s=r.get(n);s||(r.set(n,s=new tt),s.map=r,s.key=n),process.env.NODE_ENV!=="production"?s.track({target:e,type:t,key:n}):s.track()}}function y(e,t,n,r,s,i){const o=pe.get(e);if(!o){Q++;return}const c=a=>{a&&(process.env.NODE_ENV!=="production"?a.trigger({target:e,type:t,key:n,newValue:r,oldValue:s,oldTarget:i}):a.trigger())};if(ae(),t==="clear")o.forEach(c);else{const a=m(e),p=a&&oe(n);if(a&&n==="length"){const v=Number(r);o.forEach((f,h)=>{(h==="length"||h===B||!H(h)&&h>=v)&&c(f)})}else switch((n!==void 0||o.has(void 0))&&c(o.get(n)),p&&c(o.get(B)),t){case"add":a?p&&c(o.get("length")):(c(o.get(R)),A(e)&&c(o.get(de)));break;case"delete":a||(c(o.get(R)),A(e)&&c(o.get(de)));break;case"set":A(e)&&c(o.get(R));break}}fe()}function K(e){const t=d(e);return t===e?t:(_(t,"iterate",B),b(e)?t:t.map(V))}function he(e){return _(e=d(e),"iterate",B),e}function O(e,t){return j(e)?Y(e)?F(V(t)):F(t):V(t)}const nt={__proto__:null,[Symbol.iterator](){return ve(this,Symbol.iterator,e=>O(this,e))},concat(...e){return K(this).concat(...e.map(t=>m(t)?K(t):t))},entries(){return ve(this,"entries",e=>(e[1]=O(this,e[1]),e))},every(e,t){return S(this,"every",e,t,void 0,arguments)},filter(e,t){return S(this,"filter",e,t,n=>n.map(r=>O(this,r)),arguments)},find(e,t){return S(this,"find",e,t,n=>O(this,n),arguments)},findIndex(e,t){return S(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return S(this,"findLast",e,t,n=>O(this,n),arguments)},findLastIndex(e,t){return S(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return S(this,"forEach",e,t,void 0,arguments)},includes(...e){return _e(this,"includes",e)},indexOf(...e){return _e(this,"indexOf",e)},join(e){return K(this).join(e)},lastIndexOf(...e){return _e(this,"lastIndexOf",e)},map(e,t){return S(this,"map",e,t,void 0,arguments)},pop(){return z(this,"pop")},push(...e){return z(this,"push",e)},reduce(e,...t){return Ie(this,"reduce",e,t)},reduceRight(e,...t){return Ie(this,"reduceRight",e,t)},shift(){return z(this,"shift")},some(e,t){return S(this,"some",e,t,void 0,arguments)},splice(...e){return z(this,"splice",e)},toReversed(){return K(this).toReversed()},toSorted(e){return K(this).toSorted(e)},toSpliced(...e){return K(this).toSpliced(...e)},unshift(...e){return z(this,"unshift",e)},values(){return ve(this,"values",e=>O(this,e))}};function ve(e,t,n){const r=he(e),s=r[t]();return r!==e&&!b(e)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=n(i.value)),i}),s}const st=Array.prototype;function S(e,t,n,r,s,i){const o=he(e),c=o!==e&&!b(e),a=o[t];if(a!==st[t]){const f=a.apply(e,i);return c?V(f):f}let p=n;o!==e&&(c?p=function(f,h){return n.call(this,O(e,f),h,e)}:n.length>2&&(p=function(f,h){return n.call(this,f,h,e)}));const v=a.call(o,p,r);return c&&s?s(v):v}function Ie(e,t,n,r){const s=he(e);let i=n;return s!==e&&(b(e)?n.length>3&&(i=function(o,c,a){return n.call(this,o,c,a,e)}):i=function(o,c,a){return n.call(this,o,O(e,c),a,e)}),s[t](i,...r)}function _e(e,t,n){const r=d(e);_(r,"iterate",B);const s=r[t](...n);return(s===-1||s===!1)&&wt(n[0])?(n[0]=d(n[0]),r[t](...n)):s}function z(e,t,n=[]){Te(),ae();const r=d(e)[t].apply(e,n);return fe(),Re(),r}const rt=W("__proto__,__v_isRef,__isVue"),Me=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(H));function it(e){H(e)||(e=String(e));const t=d(this);return _(t,"has",e),t.hasOwnProperty(e)}class Ae{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return i;if(n==="__v_raw")return r===(s?i?vt:He:i?We:Le).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const o=m(t);if(!s){let a;if(o&&(a=nt[n]))return a;if(n==="hasOwnProperty")return it}const c=Reflect.get(t,n,D(t)?t:r);if((H(n)?Me.has(n):rt(n))||(s||_(t,"get",n),i))return c;if(D(c)){const a=o&&oe(n)?c:c.value;return s&&P(a)?we(a):a}return P(c)?s?we(c):$e(c):c}}class Pe extends Ae{constructor(t=!1){super(!1,t)}set(t,n,r,s){let i=t[n];const o=m(t)&&oe(n);if(!this._isShallow){const p=j(i);if(!b(r)&&!j(r)&&(i=d(i),r=d(r)),!o&&D(i)&&!D(r))return p?(process.env.NODE_ENV!=="production"&&E(`Set operation on key "${String(n)}" failed: target is readonly.`,t[n]),!0):(i.value=r,!0)}const c=o?Number(n)<t.length:ie(t,n),a=Reflect.set(t,n,r,D(t)?t:s);return t===d(s)&&(c?T(r,i)&&y(t,"set",n,r,i):y(t,"add",n,r)),a}deleteProperty(t,n){const r=ie(t,n),s=t[n],i=Reflect.deleteProperty(t,n);return i&&r&&y(t,"delete",n,void 0,s),i}has(t,n){const r=Reflect.has(t,n);return(!H(n)||!Me.has(n))&&_(t,"has",n),r}ownKeys(t){return _(t,"iterate",m(t)?"length":R),Reflect.ownKeys(t)}}class ot extends Ae{constructor(t=!1){super(!0,t)}set(t,n){return process.env.NODE_ENV!=="production"&&E(`Set operation on key "${String(n)}" failed: target is readonly.`,t),!0}deleteProperty(t,n){return process.env.NODE_ENV!=="production"&&E(`Delete operation on key "${String(n)}" failed: target is readonly.`,t),!0}}const ct=new Pe,at=new ot,ft=new Pe(!0),ge=e=>e,q=e=>Reflect.getPrototypeOf(e);function lt(e,t,n){return function(...r){const s=this.__v_raw,i=d(s),o=A(i),c=e==="entries"||e===Symbol.iterator&&o,a=e==="keys"&&o,p=s[e](...r),v=n?ge:t?F:V;return!t&&_(i,"iterate",a?de:R),{next(){const{value:f,done:h}=p.next();return h?{value:f,done:h}:{value:c?[v(f[0]),v(f[1])]:v(f),done:h}},[Symbol.iterator](){return this}}}}function X(e){return function(...t){if(process.env.NODE_ENV!=="production"){const n=t[0]?`on key "${t[0]}" `:"";E(`${Qe(e)} operation ${n}failed: target is readonly.`,d(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function ut(e,t){const n={get(s){const i=this.__v_raw,o=d(i),c=d(s);e||(T(s,c)&&_(o,"get",s),_(o,"get",c));const{has:a}=q(o),p=t?ge:e?F:V;if(a.call(o,s))return p(i.get(s));if(a.call(o,c))return p(i.get(c));i!==o&&i.get(s)},get size(){const s=this.__v_raw;return!e&&_(d(s),"iterate",R),s.size},has(s){const i=this.__v_raw,o=d(i),c=d(s);return e||(T(s,c)&&_(o,"has",s),_(o,"has",c)),s===c?i.has(s):i.has(s)||i.has(c)},forEach(s,i){const o=this,c=o.__v_raw,a=d(c),p=t?ge:e?F:V;return!e&&_(a,"iterate",R),c.forEach((v,f)=>s.call(i,p(v),p(f),o))}};return re(n,e?{add:X("add"),set:X("set"),delete:X("delete"),clear:X("clear")}:{add(s){!t&&!b(s)&&!j(s)&&(s=d(s));const i=d(this);return q(i).has.call(i,s)||(i.add(s),y(i,"add",s,s)),this},set(s,i){!t&&!b(i)&&!j(i)&&(i=d(i));const o=d(this),{has:c,get:a}=q(o);let p=c.call(o,s);p?process.env.NODE_ENV!=="production"&&Ke(o,c,s):(s=d(s),p=c.call(o,s));const v=a.call(o,s);return o.set(s,i),p?T(i,v)&&y(o,"set",s,i,v):y(o,"add",s,i),this},delete(s){const i=d(this),{has:o,get:c}=q(i);let a=o.call(i,s);a?process.env.NODE_ENV!=="production"&&Ke(i,o,s):(s=d(s),a=o.call(i,s));const p=c?c.call(i,s):void 0,v=i.delete(s);return a&&y(i,"delete",s,void 0,p),v},clear(){const s=d(this),i=s.size!==0,o=process.env.NODE_ENV!=="production"?A(s)?new Map(s):new Set(s):void 0,c=s.clear();return i&&y(s,"clear",void 0,void 0,o),c}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=lt(s,e,t)}),n}function be(e,t){const n=ut(e,t);return(r,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(ie(n,s)&&s in r?n:r,s,i)}const pt={get:be(!1,!1)},dt={get:be(!1,!0)},ht={get:be(!0,!1)};function Ke(e,t,n){const r=d(n);if(r!==n&&t.call(e,r)){const s=Oe(e);E(`Reactive ${s} contains both the raw and reactive versions of the same object${s==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const Le=new WeakMap,We=new WeakMap,He=new WeakMap,vt=new WeakMap;function _t(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function gt(e){return e.__v_skip||!Object.isExtensible(e)?0:_t(Oe(e))}function $e(e){return j(e)?e:Ee(e,!1,ct,pt,Le)}function bt(e){return Ee(e,!1,ft,dt,We)}function we(e){return Ee(e,!0,at,ht,He)}function Ee(e,t,n,r,s){if(!P(e))return process.env.NODE_ENV!=="production"&&E(`value cannot be made ${t?"readonly":"reactive"}: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=gt(e);if(i===0)return e;const o=s.get(e);if(o)return o;const c=new Proxy(e,i===2?r:n);return s.set(e,c),c}function Y(e){return j(e)?Y(e.__v_raw):!!(e&&e.__v_isReactive)}function j(e){return!!(e&&e.__v_isReadonly)}function b(e){return!!(e&&e.__v_isShallow)}function wt(e){return e?!!e.__v_raw:!1}function d(e){const t=e&&e.__v_raw;return t?d(t):e}const V=e=>P(e)?$e(e):e,F=e=>P(e)?we(e):e;function D(e){return e?e.__v_isRef===!0:!1}const Z={},k=new WeakMap;let I;function Et(e,t=!1,n=I){if(n){let r=k.get(n);r||k.set(n,r=[]),r.push(e)}else process.env.NODE_ENV!=="production"&&!t&&E("onWatcherCleanup() was called when there was no active watcher to associate with.")}function Ce(e,t,n=Be){const{immediate:r,deep:s,once:i,scheduler:o,augmentJob:c,call:a}=n,p=l=>{(n.onWarn||E)("Invalid watch source: ",l,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},v=l=>s?l:b(l)||s===!1||s===0?N(l,1):N(l);let f,h,U,ee,te=!1,ne=!1;if(D(e)?(h=()=>e.value,te=b(e)):Y(e)?(h=()=>v(e),te=!0):m(e)?(ne=!0,te=e.some(l=>Y(l)||b(l)),h=()=>e.map(l=>{if(D(l))return l.value;if(Y(l))return v(l);if(ye(l))return a?a(l,2):l();process.env.NODE_ENV!=="production"&&p(l)})):ye(e)?t?h=a?()=>a(e,2):e:h=()=>{if(U){Te();try{U()}finally{Re()}}const l=I;I=f;try{return a?a(e,3,[ee]):e(ee)}finally{I=l}}:(h=ze,process.env.NODE_ENV!=="production"&&p(e)),t&&s){const l=h,w=s===!0?1/0:s;h=()=>N(l(),w)}const L=()=>{f.stop()};if(i&&t){const l=t;t=(...w)=>{l(...w),L()}}let M=ne?new Array(e.length).fill(Z):Z;const G=l=>{if(!(!(f.flags&1)||!f.dirty&&!l))if(t){const w=f.run();if(s||te||(ne?w.some((Se,se)=>T(Se,M[se])):T(w,M))){U&&U();const Se=I;I=f;try{const se=[w,M===Z?void 0:ne&&M[0]===Z?[]:M,ee];M=w,a?a(t,3,se):t(...se)}finally{I=Se}}}else f.run()};return c&&c(G),f=new qe(h),f.scheduler=o?()=>o(G,!1):G,ee=l=>Et(l,!1,f),U=f.onStop=()=>{const l=k.get(f);if(l){if(a)a(l,4);else for(const w of l)w();k.delete(f)}},process.env.NODE_ENV!=="production"&&(f.onTrack=n.onTrack,f.onTrigger=n.onTrigger),t?r?G(!0):M=f.run():o?o(G.bind(null,!0),!0):f.run(),L.pause=f.pause.bind(f),L.resume=f.resume.bind(f),L.stop=L,L}function N(e,t=1/0,n){if(t<=0||!P(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,D(e))N(e.value,t,n);else if(m(e))for(let r=0;r<e.length;r++)N(e[r],t,n);else if(Fe(e)||A(e))e.forEach(r=>{N(r,t,n)});else if(Je(e)){for(const r in e)N(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&N(e[r],t,n)}return e}class St{constructor(t){return t&&Object.assign(this,t),bt(this)}set(t,n){const r=(o,c)=>{this[o]=c};return typeof t=="string"?((o,c)=>{const[a,...p]=o.split(".");p.length===0?r(a,c):this[a]?.set(p.join("."),c)})(t,n):typeof t=="object"&&(o=>{Object.entries(o).forEach(([c,a])=>r(c,a))})(t),this}}const yt={watch:(...e)=>{const t=Ce(...e);return{...t,remove:t.stop}},once:e=>new Promise(t=>{const n=Ce(e,r=>{r&&(t(r),n.stop())})})};x.Accessor=St,x.reactiveUtils=yt,Object.defineProperty(x,Symbol.toStringTag,{value:"Module"})}));