@vue/reactivity 3.1.4 → 3.1.5
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/reactivity.cjs.js +8 -9
- package/dist/reactivity.cjs.prod.js +8 -9
- package/dist/reactivity.d.ts +1 -1
- package/dist/reactivity.esm-browser.js +8 -9
- package/dist/reactivity.esm-browser.prod.js +1 -1
- package/dist/reactivity.esm-bundler.js +8 -9
- package/dist/reactivity.global.js +8 -9
- package/dist/reactivity.global.prod.js +1 -1
- package/package.json +2 -2
package/dist/reactivity.cjs.js
CHANGED
|
@@ -205,17 +205,16 @@ const arrayInstrumentations = /*#__PURE__*/ createArrayInstrumentations();
|
|
|
205
205
|
function createArrayInstrumentations() {
|
|
206
206
|
const instrumentations = {};
|
|
207
207
|
['includes', 'indexOf', 'lastIndexOf'].forEach(key => {
|
|
208
|
-
const method = Array.prototype[key];
|
|
209
208
|
instrumentations[key] = function (...args) {
|
|
210
209
|
const arr = toRaw(this);
|
|
211
210
|
for (let i = 0, l = this.length; i < l; i++) {
|
|
212
211
|
track(arr, "get" /* GET */, i + '');
|
|
213
212
|
}
|
|
214
213
|
// we run the method using the original args first (which may be reactive)
|
|
215
|
-
const res =
|
|
214
|
+
const res = arr[key](...args);
|
|
216
215
|
if (res === -1 || res === false) {
|
|
217
216
|
// if that didn't work, run it again using raw values.
|
|
218
|
-
return
|
|
217
|
+
return arr[key](...args.map(toRaw));
|
|
219
218
|
}
|
|
220
219
|
else {
|
|
221
220
|
return res;
|
|
@@ -223,10 +222,9 @@ function createArrayInstrumentations() {
|
|
|
223
222
|
};
|
|
224
223
|
});
|
|
225
224
|
['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => {
|
|
226
|
-
const method = Array.prototype[key];
|
|
227
225
|
instrumentations[key] = function (...args) {
|
|
228
226
|
pauseTracking();
|
|
229
|
-
const res =
|
|
227
|
+
const res = toRaw(this)[key].apply(this, args);
|
|
230
228
|
resetTracking();
|
|
231
229
|
return res;
|
|
232
230
|
};
|
|
@@ -763,18 +761,19 @@ function shallowRef(value) {
|
|
|
763
761
|
return createRef(value, true);
|
|
764
762
|
}
|
|
765
763
|
class RefImpl {
|
|
766
|
-
constructor(
|
|
767
|
-
this._rawValue = _rawValue;
|
|
764
|
+
constructor(value, _shallow = false) {
|
|
768
765
|
this._shallow = _shallow;
|
|
769
766
|
this.__v_isRef = true;
|
|
770
|
-
this.
|
|
767
|
+
this._rawValue = _shallow ? value : toRaw(value);
|
|
768
|
+
this._value = _shallow ? value : convert(value);
|
|
771
769
|
}
|
|
772
770
|
get value() {
|
|
773
771
|
track(toRaw(this), "get" /* GET */, 'value');
|
|
774
772
|
return this._value;
|
|
775
773
|
}
|
|
776
774
|
set value(newVal) {
|
|
777
|
-
|
|
775
|
+
newVal = this._shallow ? newVal : toRaw(newVal);
|
|
776
|
+
if (shared.hasChanged(newVal, this._rawValue)) {
|
|
778
777
|
this._rawValue = newVal;
|
|
779
778
|
this._value = this._shallow ? newVal : convert(newVal);
|
|
780
779
|
trigger(toRaw(this), "set" /* SET */, 'value', newVal);
|
|
@@ -186,17 +186,16 @@ const arrayInstrumentations = /*#__PURE__*/ createArrayInstrumentations();
|
|
|
186
186
|
function createArrayInstrumentations() {
|
|
187
187
|
const instrumentations = {};
|
|
188
188
|
['includes', 'indexOf', 'lastIndexOf'].forEach(key => {
|
|
189
|
-
const method = Array.prototype[key];
|
|
190
189
|
instrumentations[key] = function (...args) {
|
|
191
190
|
const arr = toRaw(this);
|
|
192
191
|
for (let i = 0, l = this.length; i < l; i++) {
|
|
193
192
|
track(arr, "get" /* GET */, i + '');
|
|
194
193
|
}
|
|
195
194
|
// we run the method using the original args first (which may be reactive)
|
|
196
|
-
const res =
|
|
195
|
+
const res = arr[key](...args);
|
|
197
196
|
if (res === -1 || res === false) {
|
|
198
197
|
// if that didn't work, run it again using raw values.
|
|
199
|
-
return
|
|
198
|
+
return arr[key](...args.map(toRaw));
|
|
200
199
|
}
|
|
201
200
|
else {
|
|
202
201
|
return res;
|
|
@@ -204,10 +203,9 @@ function createArrayInstrumentations() {
|
|
|
204
203
|
};
|
|
205
204
|
});
|
|
206
205
|
['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => {
|
|
207
|
-
const method = Array.prototype[key];
|
|
208
206
|
instrumentations[key] = function (...args) {
|
|
209
207
|
pauseTracking();
|
|
210
|
-
const res =
|
|
208
|
+
const res = toRaw(this)[key].apply(this, args);
|
|
211
209
|
resetTracking();
|
|
212
210
|
return res;
|
|
213
211
|
};
|
|
@@ -710,18 +708,19 @@ function shallowRef(value) {
|
|
|
710
708
|
return createRef(value, true);
|
|
711
709
|
}
|
|
712
710
|
class RefImpl {
|
|
713
|
-
constructor(
|
|
714
|
-
this._rawValue = _rawValue;
|
|
711
|
+
constructor(value, _shallow = false) {
|
|
715
712
|
this._shallow = _shallow;
|
|
716
713
|
this.__v_isRef = true;
|
|
717
|
-
this.
|
|
714
|
+
this._rawValue = _shallow ? value : toRaw(value);
|
|
715
|
+
this._value = _shallow ? value : convert(value);
|
|
718
716
|
}
|
|
719
717
|
get value() {
|
|
720
718
|
track(toRaw(this), "get" /* GET */, 'value');
|
|
721
719
|
return this._value;
|
|
722
720
|
}
|
|
723
721
|
set value(newVal) {
|
|
724
|
-
|
|
722
|
+
newVal = this._shallow ? newVal : toRaw(newVal);
|
|
723
|
+
if (shared.hasChanged(newVal, this._rawValue)) {
|
|
725
724
|
this._rawValue = newVal;
|
|
726
725
|
this._value = this._shallow ? newVal : convert(newVal);
|
|
727
726
|
trigger(toRaw(this), "set" /* SET */, 'value', newVal);
|
package/dist/reactivity.d.ts
CHANGED
|
@@ -204,7 +204,7 @@ export declare function shallowRef<T>(value: T): Ref<T>;
|
|
|
204
204
|
export declare function shallowRef<T = any>(): Ref<T | undefined>;
|
|
205
205
|
|
|
206
206
|
export declare type ShallowUnwrapRef<T> = {
|
|
207
|
-
[K in keyof T]: T[K] extends Ref<infer V> ? V : T[K];
|
|
207
|
+
[K in keyof T]: T[K] extends Ref<infer V> ? V : T[K] extends Ref<infer V> | undefined ? unknown extends V ? undefined : V | undefined : T[K];
|
|
208
208
|
};
|
|
209
209
|
|
|
210
210
|
declare function stop_2(effect: ReactiveEffect): void;
|
|
@@ -258,17 +258,16 @@ const arrayInstrumentations = /*#__PURE__*/ createArrayInstrumentations();
|
|
|
258
258
|
function createArrayInstrumentations() {
|
|
259
259
|
const instrumentations = {};
|
|
260
260
|
['includes', 'indexOf', 'lastIndexOf'].forEach(key => {
|
|
261
|
-
const method = Array.prototype[key];
|
|
262
261
|
instrumentations[key] = function (...args) {
|
|
263
262
|
const arr = toRaw(this);
|
|
264
263
|
for (let i = 0, l = this.length; i < l; i++) {
|
|
265
264
|
track(arr, "get" /* GET */, i + '');
|
|
266
265
|
}
|
|
267
266
|
// we run the method using the original args first (which may be reactive)
|
|
268
|
-
const res =
|
|
267
|
+
const res = arr[key](...args);
|
|
269
268
|
if (res === -1 || res === false) {
|
|
270
269
|
// if that didn't work, run it again using raw values.
|
|
271
|
-
return
|
|
270
|
+
return arr[key](...args.map(toRaw));
|
|
272
271
|
}
|
|
273
272
|
else {
|
|
274
273
|
return res;
|
|
@@ -276,10 +275,9 @@ function createArrayInstrumentations() {
|
|
|
276
275
|
};
|
|
277
276
|
});
|
|
278
277
|
['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => {
|
|
279
|
-
const method = Array.prototype[key];
|
|
280
278
|
instrumentations[key] = function (...args) {
|
|
281
279
|
pauseTracking();
|
|
282
|
-
const res =
|
|
280
|
+
const res = toRaw(this)[key].apply(this, args);
|
|
283
281
|
resetTracking();
|
|
284
282
|
return res;
|
|
285
283
|
};
|
|
@@ -816,18 +814,19 @@ function shallowRef(value) {
|
|
|
816
814
|
return createRef(value, true);
|
|
817
815
|
}
|
|
818
816
|
class RefImpl {
|
|
819
|
-
constructor(
|
|
820
|
-
this._rawValue = _rawValue;
|
|
817
|
+
constructor(value, _shallow = false) {
|
|
821
818
|
this._shallow = _shallow;
|
|
822
819
|
this.__v_isRef = true;
|
|
823
|
-
this.
|
|
820
|
+
this._rawValue = _shallow ? value : toRaw(value);
|
|
821
|
+
this._value = _shallow ? value : convert(value);
|
|
824
822
|
}
|
|
825
823
|
get value() {
|
|
826
824
|
track(toRaw(this), "get" /* GET */, 'value');
|
|
827
825
|
return this._value;
|
|
828
826
|
}
|
|
829
827
|
set value(newVal) {
|
|
830
|
-
|
|
828
|
+
newVal = this._shallow ? newVal : toRaw(newVal);
|
|
829
|
+
if (hasChanged(newVal, this._rawValue)) {
|
|
831
830
|
this._rawValue = newVal;
|
|
832
831
|
this._value = this._shallow ? newVal : convert(newVal);
|
|
833
832
|
trigger(toRaw(this), "set" /* SET */, 'value', newVal);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function t(t,e){const n=Object.create(null),r=t.split(",");for(let s=0;s<r.length;s++)n[r[s]]=!0;return e?t=>!!n[t.toLowerCase()]:t=>!!n[t]}const e={},n=()=>{},r=Object.assign,s=Object.prototype.hasOwnProperty,
|
|
1
|
+
function t(t,e){const n=Object.create(null),r=t.split(",");for(let s=0;s<r.length;s++)n[r[s]]=!0;return e?t=>!!n[t.toLowerCase()]:t=>!!n[t]}const e={},n=()=>{},r=Object.assign,s=Object.prototype.hasOwnProperty,i=(t,e)=>s.call(t,e),o=Array.isArray,c=t=>"[object Map]"===h(t),u=t=>"function"==typeof t,a=t=>"symbol"==typeof t,l=t=>null!==t&&"object"==typeof t,f=Object.prototype.toString,h=t=>f.call(t),_=t=>"string"==typeof t&&"NaN"!==t&&"-"!==t[0]&&""+parseInt(t,10)===t,d=(t,e)=>t!==e&&(t==t||e==e),v=new WeakMap,g=[];let p;const y=Symbol(""),w=Symbol("");function R(t,n=e){(function(t){return t&&!0===t._isEffect})(t)&&(t=t.raw);const r=function(t,e){const n=function(){if(!n.active)return t();if(!g.includes(n)){E(n);try{return O(),g.push(n),p=n,t()}finally{g.pop(),M(),p=g[g.length-1]}}};return n.id=k++,n.allowRecurse=!!e.allowRecurse,n._isEffect=!0,n.active=!0,n.raw=t,n.deps=[],n.options=e,n}(t,n);return n.lazy||r(),r}function b(t){t.active&&(E(t),t.options.onStop&&t.options.onStop(),t.active=!1)}let k=0;function E(t){const{deps:e}=t;if(e.length){for(let n=0;n<e.length;n++)e[n].delete(t);e.length=0}}let S=!0;const j=[];function m(){j.push(S),S=!1}function O(){j.push(S),S=!0}function M(){const t=j.pop();S=void 0===t||t}function P(t,e,n){if(!S||void 0===p)return;let r=v.get(t);r||v.set(t,r=new Map);let s=r.get(n);s||r.set(n,s=new Set),s.has(p)||(s.add(p),p.deps.push(s))}function x(t,e,n,r,s,i){const u=v.get(t);if(!u)return;const a=new Set,l=t=>{t&&t.forEach((t=>{(t!==p||t.allowRecurse)&&a.add(t)}))};if("clear"===e)u.forEach(l);else if("length"===n&&o(t))u.forEach(((t,e)=>{("length"===e||e>=r)&&l(t)}));else switch(void 0!==n&&l(u.get(n)),e){case"add":o(t)?_(n)&&l(u.get("length")):(l(u.get(y)),c(t)&&l(u.get(w)));break;case"delete":o(t)||(l(u.get(y)),c(t)&&l(u.get(w)));break;case"set":c(t)&&l(u.get(y))}a.forEach((t=>{t.options.scheduler?t.options.scheduler(t):t()}))}const z=t("__proto__,__v_isRef,__isVue"),W=new Set(Object.getOwnPropertyNames(Symbol).map((t=>Symbol[t])).filter(a)),A=C(),N=C(!1,!0),V=C(!0),I=C(!0,!0),K=B();function B(){const t={};return["includes","indexOf","lastIndexOf"].forEach((e=>{t[e]=function(...t){const n=Mt(this);for(let e=0,s=this.length;e<s;e++)P(n,0,e+"");const r=n[e](...t);return-1===r||!1===r?n[e](...t.map(Mt)):r}})),["push","pop","shift","unshift","splice"].forEach((e=>{t[e]=function(...t){m();const n=Mt(this)[e].apply(this,t);return M(),n}})),t}function C(t=!1,e=!1){return function(n,r,s){if("__v_isReactive"===r)return!t;if("__v_isReadonly"===r)return t;if("__v_raw"===r&&s===(t?e?yt:pt:e?gt:vt).get(n))return n;const c=o(n);if(!t&&c&&i(K,r))return Reflect.get(K,r,s);const u=Reflect.get(n,r,s);if(a(r)?W.has(r):z(r))return u;if(t||P(n,0,r),e)return u;if(zt(u)){return!c||!_(r)?u.value:u}return l(u)?t?kt(u):Rt(u):u}}function L(t=!1){return function(e,n,r,s){let c=e[n];if(!t&&(r=Mt(r),c=Mt(c),!o(e)&&zt(c)&&!zt(r)))return c.value=r,!0;const u=o(e)&&_(n)?Number(n)<e.length:i(e,n),a=Reflect.set(e,n,r,s);return e===Mt(s)&&(u?d(r,c)&&x(e,"set",n,r):x(e,"add",n,r)),a}}const q={get:A,set:L(),deleteProperty:function(t,e){const n=i(t,e),r=Reflect.deleteProperty(t,e);return r&&n&&x(t,"delete",e,void 0),r},has:function(t,e){const n=Reflect.has(t,e);return a(e)&&W.has(e)||P(t,0,e),n},ownKeys:function(t){return P(t,0,o(t)?"length":y),Reflect.ownKeys(t)}},D={get:V,set:(t,e)=>!0,deleteProperty:(t,e)=>!0},F=r({},q,{get:N,set:L(!0)}),G=r({},D,{get:I}),H=t=>l(t)?Rt(t):t,J=t=>l(t)?kt(t):t,Q=t=>t,T=t=>Reflect.getPrototypeOf(t);function U(t,e,n=!1,r=!1){const s=Mt(t=t.__v_raw),i=Mt(e);e!==i&&!n&&P(s,0,e),!n&&P(s,0,i);const{has:o}=T(s),c=r?Q:n?J:H;return o.call(s,e)?c(t.get(e)):o.call(s,i)?c(t.get(i)):void(t!==s&&t.get(e))}function X(t,e=!1){const n=this.__v_raw,r=Mt(n),s=Mt(t);return t!==s&&!e&&P(r,0,t),!e&&P(r,0,s),t===s?n.has(t):n.has(t)||n.has(s)}function Y(t,e=!1){return t=t.__v_raw,!e&&P(Mt(t),0,y),Reflect.get(t,"size",t)}function Z(t){t=Mt(t);const e=Mt(this);return T(e).has.call(e,t)||(e.add(t),x(e,"add",t,t)),this}function $(t,e){e=Mt(e);const n=Mt(this),{has:r,get:s}=T(n);let i=r.call(n,t);i||(t=Mt(t),i=r.call(n,t));const o=s.call(n,t);return n.set(t,e),i?d(e,o)&&x(n,"set",t,e):x(n,"add",t,e),this}function tt(t){const e=Mt(this),{has:n,get:r}=T(e);let s=n.call(e,t);s||(t=Mt(t),s=n.call(e,t)),r&&r.call(e,t);const i=e.delete(t);return s&&x(e,"delete",t,void 0),i}function et(){const t=Mt(this),e=0!==t.size,n=t.clear();return e&&x(t,"clear",void 0,void 0),n}function nt(t,e){return function(n,r){const s=this,i=s.__v_raw,o=Mt(i),c=e?Q:t?J:H;return!t&&P(o,0,y),i.forEach(((t,e)=>n.call(r,c(t),c(e),s)))}}function rt(t,e,n){return function(...r){const s=this.__v_raw,i=Mt(s),o=c(i),u="entries"===t||t===Symbol.iterator&&o,a="keys"===t&&o,l=s[t](...r),f=n?Q:e?J:H;return!e&&P(i,0,a?w:y),{next(){const{value:t,done:e}=l.next();return e?{value:t,done:e}:{value:u?[f(t[0]),f(t[1])]:f(t),done:e}},[Symbol.iterator](){return this}}}}function st(t){return function(...e){return"delete"!==t&&this}}function it(){const t={get(t){return U(this,t)},get size(){return Y(this)},has:X,add:Z,set:$,delete:tt,clear:et,forEach:nt(!1,!1)},e={get(t){return U(this,t,!1,!0)},get size(){return Y(this)},has:X,add:Z,set:$,delete:tt,clear:et,forEach:nt(!1,!0)},n={get(t){return U(this,t,!0)},get size(){return Y(this,!0)},has(t){return X.call(this,t,!0)},add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear"),forEach:nt(!0,!1)},r={get(t){return U(this,t,!0,!0)},get size(){return Y(this,!0)},has(t){return X.call(this,t,!0)},add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear"),forEach:nt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((s=>{t[s]=rt(s,!1,!1),n[s]=rt(s,!0,!1),e[s]=rt(s,!1,!0),r[s]=rt(s,!0,!0)})),[t,n,e,r]}const[ot,ct,ut,at]=it();function lt(t,e){const n=e?t?at:ut:t?ct:ot;return(e,r,s)=>"__v_isReactive"===r?!t:"__v_isReadonly"===r?t:"__v_raw"===r?e:Reflect.get(i(n,r)&&r in e?n:e,r,s)}const ft={get:lt(!1,!1)},ht={get:lt(!1,!0)},_t={get:lt(!0,!1)},dt={get:lt(!0,!0)},vt=new WeakMap,gt=new WeakMap,pt=new WeakMap,yt=new WeakMap;function wt(t){return t.__v_skip||!Object.isExtensible(t)?0:function(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((t=>h(t).slice(8,-1))(t))}function Rt(t){return t&&t.__v_isReadonly?t:St(t,!1,q,ft,vt)}function bt(t){return St(t,!1,F,ht,gt)}function kt(t){return St(t,!0,D,_t,pt)}function Et(t){return St(t,!0,G,dt,yt)}function St(t,e,n,r,s){if(!l(t))return t;if(t.__v_raw&&(!e||!t.__v_isReactive))return t;const i=s.get(t);if(i)return i;const o=wt(t);if(0===o)return t;const c=new Proxy(t,2===o?r:n);return s.set(t,c),c}function jt(t){return mt(t)?jt(t.__v_raw):!(!t||!t.__v_isReactive)}function mt(t){return!(!t||!t.__v_isReadonly)}function Ot(t){return jt(t)||mt(t)}function Mt(t){return t&&Mt(t.__v_raw)||t}function Pt(t){return((t,e,n)=>{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:n})})(t,"__v_skip",!0),t}const xt=t=>l(t)?Rt(t):t;function zt(t){return Boolean(t&&!0===t.__v_isRef)}function Wt(t){return Vt(t)}function At(t){return Vt(t,!0)}class Nt{constructor(t,e=!1){this._shallow=e,this.__v_isRef=!0,this._rawValue=e?t:Mt(t),this._value=e?t:xt(t)}get value(){return P(Mt(this),0,"value"),this._value}set value(t){t=this._shallow?t:Mt(t),d(t,this._rawValue)&&(this._rawValue=t,this._value=this._shallow?t:xt(t),x(Mt(this),"set","value",t))}}function Vt(t,e=!1){return zt(t)?t:new Nt(t,e)}function It(t){x(Mt(t),"set","value",void 0)}function Kt(t){return zt(t)?t.value:t}const Bt={get:(t,e,n)=>Kt(Reflect.get(t,e,n)),set:(t,e,n,r)=>{const s=t[e];return zt(s)&&!zt(n)?(s.value=n,!0):Reflect.set(t,e,n,r)}};function Ct(t){return jt(t)?t:new Proxy(t,Bt)}class Lt{constructor(t){this.__v_isRef=!0;const{get:e,set:n}=t((()=>P(this,0,"value")),(()=>x(this,"set","value")));this._get=e,this._set=n}get value(){return this._get()}set value(t){this._set(t)}}function qt(t){return new Lt(t)}function Dt(t){const e=o(t)?new Array(t.length):{};for(const n in t)e[n]=Gt(t,n);return e}class Ft{constructor(t,e){this._object=t,this._key=e,this.__v_isRef=!0}get value(){return this._object[this._key]}set value(t){this._object[this._key]=t}}function Gt(t,e){return zt(t[e])?t[e]:new Ft(t,e)}class Ht{constructor(t,e,n){this._setter=e,this._dirty=!0,this.__v_isRef=!0,this.effect=R(t,{lazy:!0,scheduler:()=>{this._dirty||(this._dirty=!0,x(Mt(this),"set","value"))}}),this.__v_isReadonly=n}get value(){const t=Mt(this);return t._dirty&&(t._value=this.effect(),t._dirty=!1),P(t,0,"value"),t._value}set value(t){this._setter(t)}}function Jt(t){let e,r;return u(t)?(e=t,r=n):(e=t.get,r=t.set),new Ht(e,r,u(t)||!t.set)}export{y as ITERATE_KEY,Jt as computed,qt as customRef,R as effect,O as enableTracking,Ot as isProxy,jt as isReactive,mt as isReadonly,zt as isRef,Pt as markRaw,m as pauseTracking,Ct as proxyRefs,Rt as reactive,kt as readonly,Wt as ref,M as resetTracking,bt as shallowReactive,Et as shallowReadonly,At as shallowRef,b as stop,Mt as toRaw,Gt as toRef,Dt as toRefs,P as track,x as trigger,It as triggerRef,Kt as unref};
|
|
@@ -201,17 +201,16 @@ const arrayInstrumentations = /*#__PURE__*/ createArrayInstrumentations();
|
|
|
201
201
|
function createArrayInstrumentations() {
|
|
202
202
|
const instrumentations = {};
|
|
203
203
|
['includes', 'indexOf', 'lastIndexOf'].forEach(key => {
|
|
204
|
-
const method = Array.prototype[key];
|
|
205
204
|
instrumentations[key] = function (...args) {
|
|
206
205
|
const arr = toRaw(this);
|
|
207
206
|
for (let i = 0, l = this.length; i < l; i++) {
|
|
208
207
|
track(arr, "get" /* GET */, i + '');
|
|
209
208
|
}
|
|
210
209
|
// we run the method using the original args first (which may be reactive)
|
|
211
|
-
const res =
|
|
210
|
+
const res = arr[key](...args);
|
|
212
211
|
if (res === -1 || res === false) {
|
|
213
212
|
// if that didn't work, run it again using raw values.
|
|
214
|
-
return
|
|
213
|
+
return arr[key](...args.map(toRaw));
|
|
215
214
|
}
|
|
216
215
|
else {
|
|
217
216
|
return res;
|
|
@@ -219,10 +218,9 @@ function createArrayInstrumentations() {
|
|
|
219
218
|
};
|
|
220
219
|
});
|
|
221
220
|
['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => {
|
|
222
|
-
const method = Array.prototype[key];
|
|
223
221
|
instrumentations[key] = function (...args) {
|
|
224
222
|
pauseTracking();
|
|
225
|
-
const res =
|
|
223
|
+
const res = toRaw(this)[key].apply(this, args);
|
|
226
224
|
resetTracking();
|
|
227
225
|
return res;
|
|
228
226
|
};
|
|
@@ -760,18 +758,19 @@ function shallowRef(value) {
|
|
|
760
758
|
return createRef(value, true);
|
|
761
759
|
}
|
|
762
760
|
class RefImpl {
|
|
763
|
-
constructor(
|
|
764
|
-
this._rawValue = _rawValue;
|
|
761
|
+
constructor(value, _shallow = false) {
|
|
765
762
|
this._shallow = _shallow;
|
|
766
763
|
this.__v_isRef = true;
|
|
767
|
-
this.
|
|
764
|
+
this._rawValue = _shallow ? value : toRaw(value);
|
|
765
|
+
this._value = _shallow ? value : convert(value);
|
|
768
766
|
}
|
|
769
767
|
get value() {
|
|
770
768
|
track(toRaw(this), "get" /* GET */, 'value');
|
|
771
769
|
return this._value;
|
|
772
770
|
}
|
|
773
771
|
set value(newVal) {
|
|
774
|
-
|
|
772
|
+
newVal = this._shallow ? newVal : toRaw(newVal);
|
|
773
|
+
if (hasChanged(newVal, this._rawValue)) {
|
|
775
774
|
this._rawValue = newVal;
|
|
776
775
|
this._value = this._shallow ? newVal : convert(newVal);
|
|
777
776
|
trigger(toRaw(this), "set" /* SET */, 'value', newVal);
|
|
@@ -261,17 +261,16 @@ var VueReactivity = (function (exports) {
|
|
|
261
261
|
function createArrayInstrumentations() {
|
|
262
262
|
const instrumentations = {};
|
|
263
263
|
['includes', 'indexOf', 'lastIndexOf'].forEach(key => {
|
|
264
|
-
const method = Array.prototype[key];
|
|
265
264
|
instrumentations[key] = function (...args) {
|
|
266
265
|
const arr = toRaw(this);
|
|
267
266
|
for (let i = 0, l = this.length; i < l; i++) {
|
|
268
267
|
track(arr, "get" /* GET */, i + '');
|
|
269
268
|
}
|
|
270
269
|
// we run the method using the original args first (which may be reactive)
|
|
271
|
-
const res =
|
|
270
|
+
const res = arr[key](...args);
|
|
272
271
|
if (res === -1 || res === false) {
|
|
273
272
|
// if that didn't work, run it again using raw values.
|
|
274
|
-
return
|
|
273
|
+
return arr[key](...args.map(toRaw));
|
|
275
274
|
}
|
|
276
275
|
else {
|
|
277
276
|
return res;
|
|
@@ -279,10 +278,9 @@ var VueReactivity = (function (exports) {
|
|
|
279
278
|
};
|
|
280
279
|
});
|
|
281
280
|
['push', 'pop', 'shift', 'unshift', 'splice'].forEach(key => {
|
|
282
|
-
const method = Array.prototype[key];
|
|
283
281
|
instrumentations[key] = function (...args) {
|
|
284
282
|
pauseTracking();
|
|
285
|
-
const res =
|
|
283
|
+
const res = toRaw(this)[key].apply(this, args);
|
|
286
284
|
resetTracking();
|
|
287
285
|
return res;
|
|
288
286
|
};
|
|
@@ -819,18 +817,19 @@ var VueReactivity = (function (exports) {
|
|
|
819
817
|
return createRef(value, true);
|
|
820
818
|
}
|
|
821
819
|
class RefImpl {
|
|
822
|
-
constructor(
|
|
823
|
-
this._rawValue = _rawValue;
|
|
820
|
+
constructor(value, _shallow = false) {
|
|
824
821
|
this._shallow = _shallow;
|
|
825
822
|
this.__v_isRef = true;
|
|
826
|
-
this.
|
|
823
|
+
this._rawValue = _shallow ? value : toRaw(value);
|
|
824
|
+
this._value = _shallow ? value : convert(value);
|
|
827
825
|
}
|
|
828
826
|
get value() {
|
|
829
827
|
track(toRaw(this), "get" /* GET */, 'value');
|
|
830
828
|
return this._value;
|
|
831
829
|
}
|
|
832
830
|
set value(newVal) {
|
|
833
|
-
|
|
831
|
+
newVal = this._shallow ? newVal : toRaw(newVal);
|
|
832
|
+
if (hasChanged(newVal, this._rawValue)) {
|
|
834
833
|
this._rawValue = newVal;
|
|
835
834
|
this._value = this._shallow ? newVal : convert(newVal);
|
|
836
835
|
trigger(toRaw(this), "set" /* SET */, 'value', newVal);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var VueReactivity=function(t){"use strict";function e(t,e){const n=Object.create(null),r=t.split(",");for(let s=0;s<r.length;s++)n[r[s]]=!0;return e?t=>!!n[t.toLowerCase()]:t=>!!n[t]}const n={},r=()=>{},s=Object.assign,i=Object.prototype.hasOwnProperty,o=(t,e)=>i.call(t,e),c=Array.isArray,u=t=>"[object Map]"===
|
|
1
|
+
var VueReactivity=function(t){"use strict";function e(t,e){const n=Object.create(null),r=t.split(",");for(let s=0;s<r.length;s++)n[r[s]]=!0;return e?t=>!!n[t.toLowerCase()]:t=>!!n[t]}const n={},r=()=>{},s=Object.assign,i=Object.prototype.hasOwnProperty,o=(t,e)=>i.call(t,e),c=Array.isArray,u=t=>"[object Map]"===_(t),a=t=>"function"==typeof t,l=t=>"symbol"==typeof t,f=t=>null!==t&&"object"==typeof t,h=Object.prototype.toString,_=t=>h.call(t),d=t=>"string"==typeof t&&"NaN"!==t&&"-"!==t[0]&&""+parseInt(t,10)===t,v=(t,e)=>t!==e&&(t==t||e==e),g=new WeakMap,p=[];let y;const w=Symbol(""),R=Symbol("");function b(t,e=n){(function(t){return t&&!0===t._isEffect})(t)&&(t=t.raw);const r=function(t,e){const n=function(){if(!n.active)return t();if(!p.includes(n)){E(n);try{return O(),p.push(n),y=n,t()}finally{p.pop(),P(),y=p[p.length-1]}}};return n.id=k++,n.allowRecurse=!!e.allowRecurse,n._isEffect=!0,n.active=!0,n.raw=t,n.deps=[],n.options=e,n}(t,e);return e.lazy||r(),r}let k=0;function E(t){const{deps:e}=t;if(e.length){for(let n=0;n<e.length;n++)e[n].delete(t);e.length=0}}let m=!0;const S=[];function j(){S.push(m),m=!1}function O(){S.push(m),m=!0}function P(){const t=S.pop();m=void 0===t||t}function M(t,e,n){if(!m||void 0===y)return;let r=g.get(t);r||g.set(t,r=new Map);let s=r.get(n);s||r.set(n,s=new Set),s.has(y)||(s.add(y),y.deps.push(s))}function x(t,e,n,r,s,i){const o=g.get(t);if(!o)return;const a=new Set,l=t=>{t&&t.forEach((t=>{(t!==y||t.allowRecurse)&&a.add(t)}))};if("clear"===e)o.forEach(l);else if("length"===n&&c(t))o.forEach(((t,e)=>{("length"===e||e>=r)&&l(t)}));else switch(void 0!==n&&l(o.get(n)),e){case"add":c(t)?d(n)&&l(o.get("length")):(l(o.get(w)),u(t)&&l(o.get(R)));break;case"delete":c(t)||(l(o.get(w)),u(t)&&l(o.get(R)));break;case"set":u(t)&&l(o.get(w))}a.forEach((t=>{t.options.scheduler?t.options.scheduler(t):t()}))}const z=e("__proto__,__v_isRef,__isVue"),W=new Set(Object.getOwnPropertyNames(Symbol).map((t=>Symbol[t])).filter(l)),A=B(),T=B(!1,!0),V=B(!0),N=B(!0,!0),I=K();function K(){const t={};return["includes","indexOf","lastIndexOf"].forEach((e=>{t[e]=function(...t){const n=St(this);for(let e=0,s=this.length;e<s;e++)M(n,0,e+"");const r=n[e](...t);return-1===r||!1===r?n[e](...t.map(St)):r}})),["push","pop","shift","unshift","splice"].forEach((e=>{t[e]=function(...t){j();const n=St(this)[e].apply(this,t);return P(),n}})),t}function B(t=!1,e=!1){return function(n,r,s){if("__v_isReactive"===r)return!t;if("__v_isReadonly"===r)return t;if("__v_raw"===r&&s===(t?e?yt:pt:e?gt:vt).get(n))return n;const i=c(n);if(!t&&i&&o(I,r))return Reflect.get(I,r,s);const u=Reflect.get(n,r,s);if(l(r)?W.has(r):z(r))return u;if(t||M(n,0,r),e)return u;if(Ot(u)){return!i||!d(r)?u.value:u}return f(u)?t?bt(u):Rt(u):u}}function C(t=!1){return function(e,n,r,s){let i=e[n];if(!t&&(r=St(r),i=St(i),!c(e)&&Ot(i)&&!Ot(r)))return i.value=r,!0;const u=c(e)&&d(n)?Number(n)<e.length:o(e,n),a=Reflect.set(e,n,r,s);return e===St(s)&&(u?v(r,i)&&x(e,"set",n,r):x(e,"add",n,r)),a}}const L={get:A,set:C(),deleteProperty:function(t,e){const n=o(t,e),r=Reflect.deleteProperty(t,e);return r&&n&&x(t,"delete",e,void 0),r},has:function(t,e){const n=Reflect.has(t,e);return l(e)&&W.has(e)||M(t,0,e),n},ownKeys:function(t){return M(t,0,c(t)?"length":w),Reflect.ownKeys(t)}},Y={get:V,set:(t,e)=>!0,deleteProperty:(t,e)=>!0},q=s({},L,{get:T,set:C(!0)}),D=s({},Y,{get:N}),F=t=>f(t)?Rt(t):t,G=t=>f(t)?bt(t):t,H=t=>t,J=t=>Reflect.getPrototypeOf(t);function Q(t,e,n=!1,r=!1){const s=St(t=t.__v_raw),i=St(e);e!==i&&!n&&M(s,0,e),!n&&M(s,0,i);const{has:o}=J(s),c=r?H:n?G:F;return o.call(s,e)?c(t.get(e)):o.call(s,i)?c(t.get(i)):void(t!==s&&t.get(e))}function U(t,e=!1){const n=this.__v_raw,r=St(n),s=St(t);return t!==s&&!e&&M(r,0,t),!e&&M(r,0,s),t===s?n.has(t):n.has(t)||n.has(s)}function X(t,e=!1){return t=t.__v_raw,!e&&M(St(t),0,w),Reflect.get(t,"size",t)}function Z(t){t=St(t);const e=St(this);return J(e).has.call(e,t)||(e.add(t),x(e,"add",t,t)),this}function $(t,e){e=St(e);const n=St(this),{has:r,get:s}=J(n);let i=r.call(n,t);i||(t=St(t),i=r.call(n,t));const o=s.call(n,t);return n.set(t,e),i?v(e,o)&&x(n,"set",t,e):x(n,"add",t,e),this}function tt(t){const e=St(this),{has:n,get:r}=J(e);let s=n.call(e,t);s||(t=St(t),s=n.call(e,t)),r&&r.call(e,t);const i=e.delete(t);return s&&x(e,"delete",t,void 0),i}function et(){const t=St(this),e=0!==t.size,n=t.clear();return e&&x(t,"clear",void 0,void 0),n}function nt(t,e){return function(n,r){const s=this,i=s.__v_raw,o=St(i),c=e?H:t?G:F;return!t&&M(o,0,w),i.forEach(((t,e)=>n.call(r,c(t),c(e),s)))}}function rt(t,e,n){return function(...r){const s=this.__v_raw,i=St(s),o=u(i),c="entries"===t||t===Symbol.iterator&&o,a="keys"===t&&o,l=s[t](...r),f=n?H:e?G:F;return!e&&M(i,0,a?R:w),{next(){const{value:t,done:e}=l.next();return e?{value:t,done:e}:{value:c?[f(t[0]),f(t[1])]:f(t),done:e}},[Symbol.iterator](){return this}}}}function st(t){return function(...e){return"delete"!==t&&this}}function it(){const t={get(t){return Q(this,t)},get size(){return X(this)},has:U,add:Z,set:$,delete:tt,clear:et,forEach:nt(!1,!1)},e={get(t){return Q(this,t,!1,!0)},get size(){return X(this)},has:U,add:Z,set:$,delete:tt,clear:et,forEach:nt(!1,!0)},n={get(t){return Q(this,t,!0)},get size(){return X(this,!0)},has(t){return U.call(this,t,!0)},add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear"),forEach:nt(!0,!1)},r={get(t){return Q(this,t,!0,!0)},get size(){return X(this,!0)},has(t){return U.call(this,t,!0)},add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear"),forEach:nt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((s=>{t[s]=rt(s,!1,!1),n[s]=rt(s,!0,!1),e[s]=rt(s,!1,!0),r[s]=rt(s,!0,!0)})),[t,n,e,r]}const[ot,ct,ut,at]=it();function lt(t,e){const n=e?t?at:ut:t?ct:ot;return(e,r,s)=>"__v_isReactive"===r?!t:"__v_isReadonly"===r?t:"__v_raw"===r?e:Reflect.get(o(n,r)&&r in e?n:e,r,s)}const ft={get:lt(!1,!1)},ht={get:lt(!1,!0)},_t={get:lt(!0,!1)},dt={get:lt(!0,!0)},vt=new WeakMap,gt=new WeakMap,pt=new WeakMap,yt=new WeakMap;function wt(t){return t.__v_skip||!Object.isExtensible(t)?0:function(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((t=>_(t).slice(8,-1))(t))}function Rt(t){return t&&t.__v_isReadonly?t:kt(t,!1,L,ft,vt)}function bt(t){return kt(t,!0,Y,_t,pt)}function kt(t,e,n,r,s){if(!f(t))return t;if(t.__v_raw&&(!e||!t.__v_isReactive))return t;const i=s.get(t);if(i)return i;const o=wt(t);if(0===o)return t;const c=new Proxy(t,2===o?r:n);return s.set(t,c),c}function Et(t){return mt(t)?Et(t.__v_raw):!(!t||!t.__v_isReactive)}function mt(t){return!(!t||!t.__v_isReadonly)}function St(t){return t&&St(t.__v_raw)||t}const jt=t=>f(t)?Rt(t):t;function Ot(t){return Boolean(t&&!0===t.__v_isRef)}class Pt{constructor(t,e=!1){this._shallow=e,this.__v_isRef=!0,this._rawValue=e?t:St(t),this._value=e?t:jt(t)}get value(){return M(St(this),0,"value"),this._value}set value(t){t=this._shallow?t:St(t),v(t,this._rawValue)&&(this._rawValue=t,this._value=this._shallow?t:jt(t),x(St(this),"set","value",t))}}function Mt(t,e=!1){return Ot(t)?t:new Pt(t,e)}function xt(t){return Ot(t)?t.value:t}const zt={get:(t,e,n)=>xt(Reflect.get(t,e,n)),set:(t,e,n,r)=>{const s=t[e];return Ot(s)&&!Ot(n)?(s.value=n,!0):Reflect.set(t,e,n,r)}};class Wt{constructor(t){this.__v_isRef=!0;const{get:e,set:n}=t((()=>M(this,0,"value")),(()=>x(this,"set","value")));this._get=e,this._set=n}get value(){return this._get()}set value(t){this._set(t)}}class At{constructor(t,e){this._object=t,this._key=e,this.__v_isRef=!0}get value(){return this._object[this._key]}set value(t){this._object[this._key]=t}}function Tt(t,e){return Ot(t[e])?t[e]:new At(t,e)}class Vt{constructor(t,e,n){this._setter=e,this._dirty=!0,this.__v_isRef=!0,this.effect=b(t,{lazy:!0,scheduler:()=>{this._dirty||(this._dirty=!0,x(St(this),"set","value"))}}),this.__v_isReadonly=n}get value(){const t=St(this);return t._dirty&&(t._value=this.effect(),t._dirty=!1),M(t,0,"value"),t._value}set value(t){this._setter(t)}}return t.ITERATE_KEY=w,t.computed=function(t){let e,n;return a(t)?(e=t,n=r):(e=t.get,n=t.set),new Vt(e,n,a(t)||!t.set)},t.customRef=function(t){return new Wt(t)},t.effect=b,t.enableTracking=O,t.isProxy=function(t){return Et(t)||mt(t)},t.isReactive=Et,t.isReadonly=mt,t.isRef=Ot,t.markRaw=function(t){return((t,e,n)=>{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:n})})(t,"__v_skip",!0),t},t.pauseTracking=j,t.proxyRefs=function(t){return Et(t)?t:new Proxy(t,zt)},t.reactive=Rt,t.readonly=bt,t.ref=function(t){return Mt(t)},t.resetTracking=P,t.shallowReactive=function(t){return kt(t,!1,q,ht,gt)},t.shallowReadonly=function(t){return kt(t,!0,D,dt,yt)},t.shallowRef=function(t){return Mt(t,!0)},t.stop=function(t){t.active&&(E(t),t.options.onStop&&t.options.onStop(),t.active=!1)},t.toRaw=St,t.toRef=Tt,t.toRefs=function(t){const e=c(t)?new Array(t.length):{};for(const n in t)e[n]=Tt(t,n);return e},t.track=M,t.trigger=x,t.triggerRef=function(t){x(St(t),"set","value",void 0)},t.unref=xt,Object.defineProperty(t,"__esModule",{value:!0}),t}({});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vue/reactivity",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.5",
|
|
4
4
|
"description": "@vue/reactivity",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "dist/reactivity.esm-bundler.js",
|
|
@@ -36,6 +36,6 @@
|
|
|
36
36
|
},
|
|
37
37
|
"homepage": "https://github.com/vuejs/vue-next/tree/master/packages/reactivity#readme",
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@vue/shared": "3.1.
|
|
39
|
+
"@vue/shared": "3.1.5"
|
|
40
40
|
}
|
|
41
41
|
}
|