vue 2.7.0 → 2.7.3
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/vue.common.dev.js +88 -75
- package/dist/vue.common.prod.js +3 -3
- package/dist/vue.esm.browser.js +88 -76
- package/dist/vue.esm.browser.min.js +3 -3
- package/dist/vue.esm.js +89 -76
- package/dist/vue.js +89 -75
- package/dist/vue.min.js +3 -3
- package/dist/vue.runtime.common.dev.js +88 -75
- package/dist/vue.runtime.common.prod.js +3 -3
- package/dist/vue.runtime.esm.js +89 -76
- package/dist/vue.runtime.js +89 -75
- package/dist/vue.runtime.min.js +3 -3
- package/dist/vue.runtime.mjs +89 -76
- package/package.json +2 -2
- package/packages/compiler-sfc/dist/compiler-sfc.js +70 -67
- package/packages/compiler-sfc/package.json +1 -1
- package/packages/compiler-sfc/src/compileScript.ts +12 -15
- package/packages/compiler-sfc/src/parseComponent.ts +6 -1
- package/packages/compiler-sfc/src/templateCompilerModules/srcset.ts +1 -1
- package/packages/compiler-sfc/test/compileScript.spec.ts +12 -0
- package/src/core/observer/index.ts +55 -56
- package/src/core/util/next-tick.ts +2 -1
- package/src/core/vdom/modules/directives.ts +2 -2
- package/src/shared/constants.ts +3 -1
- package/src/shared/util.ts +1 -1
- package/src/v3/apiSetup.ts +4 -21
- package/src/v3/apiWatch.ts +2 -2
- package/src/v3/index.ts +1 -0
- package/src/v3/reactivity/reactive.ts +13 -2
- package/src/v3/reactivity/ref.ts +40 -2
- package/types/common.d.ts +6 -0
- package/types/index.d.ts +7 -4
- package/types/jsx.d.ts +16 -2
- package/types/options.d.ts +7 -1
- package/types/v3-component-options.d.ts +162 -33
- package/types/v3-component-props.d.ts +19 -20
- package/types/v3-component-public-instance.d.ts +230 -0
- package/types/v3-define-component.d.ts +70 -12
- package/types/v3-generated.d.ts +5 -1
- package/types/v3-setup-context.d.ts +0 -6
- package/types/vnode.d.ts +15 -0
- package/types/v3-component-proxy.d.ts +0 -189
package/dist/vue.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vue.js v2.7.
|
|
2
|
+
* Vue.js v2.7.3
|
|
3
3
|
* (c) 2014-2022 Evan You
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -316,7 +316,7 @@ function hasChanged(x, y) {
|
|
|
316
316
|
return x === 0 && 1 / x !== 1 / y;
|
|
317
317
|
}
|
|
318
318
|
else {
|
|
319
|
-
return x === x
|
|
319
|
+
return x === x || y === y;
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
322
|
|
|
@@ -334,7 +334,9 @@ var LIFECYCLE_HOOKS = [
|
|
|
334
334
|
'activated',
|
|
335
335
|
'deactivated',
|
|
336
336
|
'errorCaptured',
|
|
337
|
-
'serverPrefetch'
|
|
337
|
+
'serverPrefetch',
|
|
338
|
+
'renderTracked',
|
|
339
|
+
'renderTriggered'
|
|
338
340
|
];
|
|
339
341
|
|
|
340
342
|
var config = {
|
|
@@ -889,7 +891,7 @@ function makeReactive(target, shallow) {
|
|
|
889
891
|
warn$2("Target is already a ".concat(existingOb.shallow ? "" : "non-", "shallow reactive object, and cannot be converted to ").concat(shallow ? "" : "non-", "shallow."));
|
|
890
892
|
}
|
|
891
893
|
}
|
|
892
|
-
var ob = observe(target, shallow);
|
|
894
|
+
var ob = observe(target, shallow, isServerRendering() /* ssr mock reactivity */);
|
|
893
895
|
if (process.env.NODE_ENV !== 'production' && !ob) {
|
|
894
896
|
if (target == null || isPrimitive(target)) {
|
|
895
897
|
warn$2("value cannot be made reactive: ".concat(String(target)));
|
|
@@ -951,7 +953,7 @@ function createRef(rawValue, shallow) {
|
|
|
951
953
|
var ref = {};
|
|
952
954
|
def(ref, RefFlag, true);
|
|
953
955
|
def(ref, "__v_isShallow" /* ReactiveFlags.IS_SHALLOW */, true);
|
|
954
|
-
ref
|
|
956
|
+
def(ref, 'dep', defineReactive(ref, 'value', rawValue, null, shallow, isServerRendering()));
|
|
955
957
|
return ref;
|
|
956
958
|
}
|
|
957
959
|
function triggerRef(ref) {
|
|
@@ -973,6 +975,33 @@ function triggerRef(ref) {
|
|
|
973
975
|
function unref(ref) {
|
|
974
976
|
return isRef(ref) ? ref.value : ref;
|
|
975
977
|
}
|
|
978
|
+
function proxyRefs(objectWithRefs) {
|
|
979
|
+
if (isReactive(objectWithRefs)) {
|
|
980
|
+
return objectWithRefs;
|
|
981
|
+
}
|
|
982
|
+
var proxy = {};
|
|
983
|
+
var keys = Object.keys(objectWithRefs);
|
|
984
|
+
for (var i = 0; i < keys.length; i++) {
|
|
985
|
+
proxyWithRefUnwrap(proxy, objectWithRefs, keys[i]);
|
|
986
|
+
}
|
|
987
|
+
return proxy;
|
|
988
|
+
}
|
|
989
|
+
function proxyWithRefUnwrap(target, source, key) {
|
|
990
|
+
Object.defineProperty(target, key, {
|
|
991
|
+
enumerable: true,
|
|
992
|
+
configurable: true,
|
|
993
|
+
get: function () { return unref(source[key]); },
|
|
994
|
+
set: function (value) {
|
|
995
|
+
var oldValue = source[key];
|
|
996
|
+
if (isRef(oldValue) && !isRef(value)) {
|
|
997
|
+
oldValue.value = value;
|
|
998
|
+
}
|
|
999
|
+
else {
|
|
1000
|
+
source[key] = value;
|
|
1001
|
+
}
|
|
1002
|
+
}
|
|
1003
|
+
});
|
|
1004
|
+
}
|
|
976
1005
|
function customRef(factory) {
|
|
977
1006
|
var dep = new Dep();
|
|
978
1007
|
var _a = factory(function () {
|
|
@@ -1517,7 +1546,9 @@ function initSetup(vm) {
|
|
|
1517
1546
|
// exposed for compiled render fn
|
|
1518
1547
|
var proxy = (vm._setupProxy = {});
|
|
1519
1548
|
for (var key in setupResult) {
|
|
1520
|
-
|
|
1549
|
+
if (key !== '__sfc') {
|
|
1550
|
+
proxyWithRefUnwrap(proxy, setupResult, key);
|
|
1551
|
+
}
|
|
1521
1552
|
}
|
|
1522
1553
|
}
|
|
1523
1554
|
}
|
|
@@ -1526,20 +1557,6 @@ function initSetup(vm) {
|
|
|
1526
1557
|
}
|
|
1527
1558
|
}
|
|
1528
1559
|
}
|
|
1529
|
-
function proxyWithRefUnwrap(target, source, key) {
|
|
1530
|
-
Object.defineProperty(target, key, {
|
|
1531
|
-
enumerable: true,
|
|
1532
|
-
configurable: true,
|
|
1533
|
-
get: function () {
|
|
1534
|
-
var raw = source[key];
|
|
1535
|
-
return isRef(raw) ? raw.value : raw;
|
|
1536
|
-
},
|
|
1537
|
-
set: function (newVal) {
|
|
1538
|
-
var raw = source[key];
|
|
1539
|
-
isRef(raw) ? (raw.value = newVal) : (source[key] = newVal);
|
|
1540
|
-
}
|
|
1541
|
-
});
|
|
1542
|
-
}
|
|
1543
1560
|
function createSetupContext(vm) {
|
|
1544
1561
|
var exposeCalled = false;
|
|
1545
1562
|
return {
|
|
@@ -4697,7 +4714,7 @@ var onServerPrefetch = createLifeCycle('serverPrefetch');
|
|
|
4697
4714
|
var onRenderTracked = createLifeCycle('renderTracked');
|
|
4698
4715
|
var onRenderTriggered = createLifeCycle('renderTriggered');
|
|
4699
4716
|
|
|
4700
|
-
var version = '2.7.
|
|
4717
|
+
var version = '2.7.3';
|
|
4701
4718
|
/**
|
|
4702
4719
|
* @internal type is manually declared in <root>/types/v3-define-component.d.ts
|
|
4703
4720
|
*/
|
|
@@ -4715,6 +4732,13 @@ var shouldObserve = true;
|
|
|
4715
4732
|
function toggleObserving(value) {
|
|
4716
4733
|
shouldObserve = value;
|
|
4717
4734
|
}
|
|
4735
|
+
// ssr mock dep
|
|
4736
|
+
var mockDep = {
|
|
4737
|
+
notify: noop,
|
|
4738
|
+
depend: noop,
|
|
4739
|
+
addSub: noop,
|
|
4740
|
+
removeSub: noop
|
|
4741
|
+
};
|
|
4718
4742
|
/**
|
|
4719
4743
|
* Observer class that is attached to each observed
|
|
4720
4744
|
* object. Once attached, the observer converts the target
|
|
@@ -4722,78 +4746,63 @@ function toggleObserving(value) {
|
|
|
4722
4746
|
* collect dependencies and dispatch updates.
|
|
4723
4747
|
*/
|
|
4724
4748
|
var Observer = /** @class */ (function () {
|
|
4725
|
-
function Observer(value, shallow) {
|
|
4749
|
+
function Observer(value, shallow, mock) {
|
|
4726
4750
|
if (shallow === void 0) { shallow = false; }
|
|
4751
|
+
if (mock === void 0) { mock = false; }
|
|
4727
4752
|
this.value = value;
|
|
4728
4753
|
this.shallow = shallow;
|
|
4754
|
+
this.mock = mock;
|
|
4729
4755
|
// this.value = value
|
|
4730
|
-
this.dep = new Dep();
|
|
4756
|
+
this.dep = mock ? mockDep : new Dep();
|
|
4731
4757
|
this.vmCount = 0;
|
|
4732
4758
|
def(value, '__ob__', this);
|
|
4733
4759
|
if (isArray(value)) {
|
|
4734
|
-
if (
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4760
|
+
if (!mock) {
|
|
4761
|
+
if (hasProto) {
|
|
4762
|
+
value.__proto__ = arrayMethods;
|
|
4763
|
+
/* eslint-enable no-proto */
|
|
4764
|
+
}
|
|
4765
|
+
else {
|
|
4766
|
+
for (var i = 0, l = arrayKeys.length; i < l; i++) {
|
|
4767
|
+
var key = arrayKeys[i];
|
|
4768
|
+
def(value, key, arrayMethods[key]);
|
|
4769
|
+
}
|
|
4770
|
+
}
|
|
4739
4771
|
}
|
|
4740
4772
|
if (!shallow) {
|
|
4741
4773
|
this.observeArray(value);
|
|
4742
4774
|
}
|
|
4743
4775
|
}
|
|
4744
4776
|
else {
|
|
4745
|
-
|
|
4777
|
+
/**
|
|
4778
|
+
* Walk through all properties and convert them into
|
|
4779
|
+
* getter/setters. This method should only be called when
|
|
4780
|
+
* value type is Object.
|
|
4781
|
+
*/
|
|
4782
|
+
var keys = Object.keys(value);
|
|
4783
|
+
for (var i = 0; i < keys.length; i++) {
|
|
4784
|
+
var key = keys[i];
|
|
4785
|
+
defineReactive(value, key, NO_INIITIAL_VALUE, undefined, shallow, mock);
|
|
4786
|
+
}
|
|
4746
4787
|
}
|
|
4747
4788
|
}
|
|
4748
|
-
/**
|
|
4749
|
-
* Walk through all properties and convert them into
|
|
4750
|
-
* getter/setters. This method should only be called when
|
|
4751
|
-
* value type is Object.
|
|
4752
|
-
*/
|
|
4753
|
-
Observer.prototype.walk = function (obj, shallow) {
|
|
4754
|
-
var keys = Object.keys(obj);
|
|
4755
|
-
for (var i = 0; i < keys.length; i++) {
|
|
4756
|
-
var key = keys[i];
|
|
4757
|
-
defineReactive(obj, key, NO_INIITIAL_VALUE, undefined, shallow);
|
|
4758
|
-
}
|
|
4759
|
-
};
|
|
4760
4789
|
/**
|
|
4761
4790
|
* Observe a list of Array items.
|
|
4762
4791
|
*/
|
|
4763
|
-
Observer.prototype.observeArray = function (
|
|
4764
|
-
for (var i = 0, l =
|
|
4765
|
-
observe(
|
|
4792
|
+
Observer.prototype.observeArray = function (value) {
|
|
4793
|
+
for (var i = 0, l = value.length; i < l; i++) {
|
|
4794
|
+
observe(value[i], false, this.mock);
|
|
4766
4795
|
}
|
|
4767
4796
|
};
|
|
4768
4797
|
return Observer;
|
|
4769
4798
|
}());
|
|
4770
4799
|
// helpers
|
|
4771
|
-
/**
|
|
4772
|
-
* Augment a target Object or Array by intercepting
|
|
4773
|
-
* the prototype chain using __proto__
|
|
4774
|
-
*/
|
|
4775
|
-
function protoAugment(target, src) {
|
|
4776
|
-
/* eslint-disable no-proto */
|
|
4777
|
-
target.__proto__ = src;
|
|
4778
|
-
/* eslint-enable no-proto */
|
|
4779
|
-
}
|
|
4780
|
-
/**
|
|
4781
|
-
* Augment a target Object or Array by defining
|
|
4782
|
-
* hidden properties.
|
|
4783
|
-
*/
|
|
4784
|
-
/* istanbul ignore next */
|
|
4785
|
-
function copyAugment(target, src, keys) {
|
|
4786
|
-
for (var i = 0, l = keys.length; i < l; i++) {
|
|
4787
|
-
var key = keys[i];
|
|
4788
|
-
def(target, key, src[key]);
|
|
4789
|
-
}
|
|
4790
|
-
}
|
|
4791
4800
|
/**
|
|
4792
4801
|
* Attempt to create an observer instance for a value,
|
|
4793
4802
|
* returns the new observer if successfully observed,
|
|
4794
4803
|
* or the existing observer if the value already has one.
|
|
4795
4804
|
*/
|
|
4796
|
-
function observe(value, shallow) {
|
|
4805
|
+
function observe(value, shallow, ssrMockReactivity) {
|
|
4797
4806
|
if (!isObject(value) || isRef(value) || value instanceof VNode) {
|
|
4798
4807
|
return;
|
|
4799
4808
|
}
|
|
@@ -4802,18 +4811,18 @@ function observe(value, shallow) {
|
|
|
4802
4811
|
ob = value.__ob__;
|
|
4803
4812
|
}
|
|
4804
4813
|
else if (shouldObserve &&
|
|
4805
|
-
!isServerRendering() &&
|
|
4814
|
+
(ssrMockReactivity || !isServerRendering()) &&
|
|
4806
4815
|
(isArray(value) || isPlainObject(value)) &&
|
|
4807
4816
|
Object.isExtensible(value) &&
|
|
4808
|
-
!value.__v_skip) {
|
|
4809
|
-
ob = new Observer(value, shallow);
|
|
4817
|
+
!value.__v_skip /* ReactiveFlags.SKIP */) {
|
|
4818
|
+
ob = new Observer(value, shallow, ssrMockReactivity);
|
|
4810
4819
|
}
|
|
4811
4820
|
return ob;
|
|
4812
4821
|
}
|
|
4813
4822
|
/**
|
|
4814
4823
|
* Define a reactive property on an Object.
|
|
4815
4824
|
*/
|
|
4816
|
-
function defineReactive(obj, key, val, customSetter, shallow) {
|
|
4825
|
+
function defineReactive(obj, key, val, customSetter, shallow, mock) {
|
|
4817
4826
|
var dep = new Dep();
|
|
4818
4827
|
var property = Object.getOwnPropertyDescriptor(obj, key);
|
|
4819
4828
|
if (property && property.configurable === false) {
|
|
@@ -4826,7 +4835,7 @@ function defineReactive(obj, key, val, customSetter, shallow) {
|
|
|
4826
4835
|
(val === NO_INIITIAL_VALUE || arguments.length === 2)) {
|
|
4827
4836
|
val = obj[key];
|
|
4828
4837
|
}
|
|
4829
|
-
var childOb = !shallow && observe(val);
|
|
4838
|
+
var childOb = !shallow && observe(val, false, mock);
|
|
4830
4839
|
Object.defineProperty(obj, key, {
|
|
4831
4840
|
enumerable: true,
|
|
4832
4841
|
configurable: true,
|
|
@@ -4850,7 +4859,7 @@ function defineReactive(obj, key, val, customSetter, shallow) {
|
|
|
4850
4859
|
}
|
|
4851
4860
|
}
|
|
4852
4861
|
}
|
|
4853
|
-
return isRef(value) ? value.value : value;
|
|
4862
|
+
return isRef(value) && !shallow ? value.value : value;
|
|
4854
4863
|
},
|
|
4855
4864
|
set: function reactiveSetter(newVal) {
|
|
4856
4865
|
var value = getter ? getter.call(obj) : val;
|
|
@@ -4874,7 +4883,7 @@ function defineReactive(obj, key, val, customSetter, shallow) {
|
|
|
4874
4883
|
else {
|
|
4875
4884
|
val = newVal;
|
|
4876
4885
|
}
|
|
4877
|
-
childOb = !shallow && observe(newVal);
|
|
4886
|
+
childOb = !shallow && observe(newVal, false, mock);
|
|
4878
4887
|
if (process.env.NODE_ENV !== 'production') {
|
|
4879
4888
|
dep.notify({
|
|
4880
4889
|
type: "set" /* TriggerOpTypes.SET */,
|
|
@@ -4899,16 +4908,20 @@ function set(target, key, val) {
|
|
|
4899
4908
|
process.env.NODE_ENV !== 'production' && warn$2("Set operation on key \"".concat(key, "\" failed: target is readonly."));
|
|
4900
4909
|
return;
|
|
4901
4910
|
}
|
|
4911
|
+
var ob = target.__ob__;
|
|
4902
4912
|
if (isArray(target) && isValidArrayIndex(key)) {
|
|
4903
4913
|
target.length = Math.max(target.length, key);
|
|
4904
4914
|
target.splice(key, 1, val);
|
|
4915
|
+
// when mocking for SSR, array methods are not hijacked
|
|
4916
|
+
if (!ob.shallow && ob.mock) {
|
|
4917
|
+
observe(val, false, true);
|
|
4918
|
+
}
|
|
4905
4919
|
return val;
|
|
4906
4920
|
}
|
|
4907
4921
|
if (key in target && !(key in Object.prototype)) {
|
|
4908
4922
|
target[key] = val;
|
|
4909
4923
|
return val;
|
|
4910
4924
|
}
|
|
4911
|
-
var ob = target.__ob__;
|
|
4912
4925
|
if (target._isVue || (ob && ob.vmCount)) {
|
|
4913
4926
|
process.env.NODE_ENV !== 'production' &&
|
|
4914
4927
|
warn$2('Avoid adding reactive properties to a Vue instance or its root $data ' +
|
|
@@ -4919,7 +4932,7 @@ function set(target, key, val) {
|
|
|
4919
4932
|
target[key] = val;
|
|
4920
4933
|
return val;
|
|
4921
4934
|
}
|
|
4922
|
-
defineReactive(ob.value, key, val);
|
|
4935
|
+
defineReactive(ob.value, key, val, undefined, ob.shallow, ob.mock);
|
|
4923
4936
|
if (process.env.NODE_ENV !== 'production') {
|
|
4924
4937
|
ob.dep.notify({
|
|
4925
4938
|
type: "add" /* TriggerOpTypes.ADD */,
|
|
@@ -7053,7 +7066,7 @@ function normalizeDirectives(dirs, vm) {
|
|
|
7053
7066
|
}
|
|
7054
7067
|
res[getRawDirName(dir)] = dir;
|
|
7055
7068
|
if (vm._setupState && vm._setupState.__sfc) {
|
|
7056
|
-
dir.def = resolveAsset(vm, '_setupState', 'v-' + dir.name);
|
|
7069
|
+
dir.def = dir.def || resolveAsset(vm, '_setupState', 'v-' + dir.name);
|
|
7057
7070
|
}
|
|
7058
7071
|
dir.def = dir.def || resolveAsset(vm.$options, 'directives', dir.name, true);
|
|
7059
7072
|
}
|
|
@@ -11666,4 +11679,4 @@ function getOuterHTML(el) {
|
|
|
11666
11679
|
}
|
|
11667
11680
|
Vue.compile = compileToFunctions;
|
|
11668
11681
|
|
|
11669
|
-
export { EffectScope, computed, customRef, Vue as default, defineComponent, del, effectScope, getCurrentInstance, getCurrentScope, h, inject, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, mergeDefaults, nextTick, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onScopeDispose, onServerPrefetch, onUnmounted, onUpdated, provide, reactive, readonly, ref$1 as ref, set, shallowReactive, shallowReadonly, shallowRef, toRaw, toRef, toRefs, triggerRef, unref, useAttrs, useCssModule, useCssVars, useSlots, version, watch, watchEffect, watchPostEffect, watchSyncEffect };
|
|
11682
|
+
export { EffectScope, computed, customRef, Vue as default, defineComponent, del, effectScope, getCurrentInstance, getCurrentScope, h, inject, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, mergeDefaults, nextTick, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onScopeDispose, onServerPrefetch, onUnmounted, onUpdated, provide, proxyRefs, reactive, readonly, ref$1 as ref, set, shallowReactive, shallowReadonly, shallowRef, toRaw, toRef, toRefs, triggerRef, unref, useAttrs, useCssModule, useCssVars, useSlots, version, watch, watchEffect, watchPostEffect, watchSyncEffect };
|
package/dist/vue.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vue.js v2.7.
|
|
2
|
+
* Vue.js v2.7.3
|
|
3
3
|
* (c) 2014-2022 Evan You
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -322,7 +322,7 @@
|
|
|
322
322
|
return x === 0 && 1 / x !== 1 / y;
|
|
323
323
|
}
|
|
324
324
|
else {
|
|
325
|
-
return x === x
|
|
325
|
+
return x === x || y === y;
|
|
326
326
|
}
|
|
327
327
|
}
|
|
328
328
|
|
|
@@ -340,7 +340,9 @@
|
|
|
340
340
|
'activated',
|
|
341
341
|
'deactivated',
|
|
342
342
|
'errorCaptured',
|
|
343
|
-
'serverPrefetch'
|
|
343
|
+
'serverPrefetch',
|
|
344
|
+
'renderTracked',
|
|
345
|
+
'renderTriggered'
|
|
344
346
|
];
|
|
345
347
|
|
|
346
348
|
var config = {
|
|
@@ -892,7 +894,7 @@
|
|
|
892
894
|
warn$2("Target is already a ".concat(existingOb.shallow ? "" : "non-", "shallow reactive object, and cannot be converted to ").concat(shallow ? "" : "non-", "shallow."));
|
|
893
895
|
}
|
|
894
896
|
}
|
|
895
|
-
var ob = observe(target, shallow);
|
|
897
|
+
var ob = observe(target, shallow, isServerRendering() /* ssr mock reactivity */);
|
|
896
898
|
if (!ob) {
|
|
897
899
|
if (target == null || isPrimitive(target)) {
|
|
898
900
|
warn$2("value cannot be made reactive: ".concat(String(target)));
|
|
@@ -954,7 +956,7 @@
|
|
|
954
956
|
var ref = {};
|
|
955
957
|
def(ref, RefFlag, true);
|
|
956
958
|
def(ref, "__v_isShallow" /* ReactiveFlags.IS_SHALLOW */, true);
|
|
957
|
-
ref
|
|
959
|
+
def(ref, 'dep', defineReactive(ref, 'value', rawValue, null, shallow, isServerRendering()));
|
|
958
960
|
return ref;
|
|
959
961
|
}
|
|
960
962
|
function triggerRef(ref) {
|
|
@@ -973,6 +975,33 @@
|
|
|
973
975
|
function unref(ref) {
|
|
974
976
|
return isRef(ref) ? ref.value : ref;
|
|
975
977
|
}
|
|
978
|
+
function proxyRefs(objectWithRefs) {
|
|
979
|
+
if (isReactive(objectWithRefs)) {
|
|
980
|
+
return objectWithRefs;
|
|
981
|
+
}
|
|
982
|
+
var proxy = {};
|
|
983
|
+
var keys = Object.keys(objectWithRefs);
|
|
984
|
+
for (var i = 0; i < keys.length; i++) {
|
|
985
|
+
proxyWithRefUnwrap(proxy, objectWithRefs, keys[i]);
|
|
986
|
+
}
|
|
987
|
+
return proxy;
|
|
988
|
+
}
|
|
989
|
+
function proxyWithRefUnwrap(target, source, key) {
|
|
990
|
+
Object.defineProperty(target, key, {
|
|
991
|
+
enumerable: true,
|
|
992
|
+
configurable: true,
|
|
993
|
+
get: function () { return unref(source[key]); },
|
|
994
|
+
set: function (value) {
|
|
995
|
+
var oldValue = source[key];
|
|
996
|
+
if (isRef(oldValue) && !isRef(value)) {
|
|
997
|
+
oldValue.value = value;
|
|
998
|
+
}
|
|
999
|
+
else {
|
|
1000
|
+
source[key] = value;
|
|
1001
|
+
}
|
|
1002
|
+
}
|
|
1003
|
+
});
|
|
1004
|
+
}
|
|
976
1005
|
function customRef(factory) {
|
|
977
1006
|
var dep = new Dep();
|
|
978
1007
|
var _a = factory(function () {
|
|
@@ -1509,7 +1538,9 @@
|
|
|
1509
1538
|
// exposed for compiled render fn
|
|
1510
1539
|
var proxy = (vm._setupProxy = {});
|
|
1511
1540
|
for (var key in setupResult) {
|
|
1512
|
-
|
|
1541
|
+
if (key !== '__sfc') {
|
|
1542
|
+
proxyWithRefUnwrap(proxy, setupResult, key);
|
|
1543
|
+
}
|
|
1513
1544
|
}
|
|
1514
1545
|
}
|
|
1515
1546
|
}
|
|
@@ -1518,20 +1549,6 @@
|
|
|
1518
1549
|
}
|
|
1519
1550
|
}
|
|
1520
1551
|
}
|
|
1521
|
-
function proxyWithRefUnwrap(target, source, key) {
|
|
1522
|
-
Object.defineProperty(target, key, {
|
|
1523
|
-
enumerable: true,
|
|
1524
|
-
configurable: true,
|
|
1525
|
-
get: function () {
|
|
1526
|
-
var raw = source[key];
|
|
1527
|
-
return isRef(raw) ? raw.value : raw;
|
|
1528
|
-
},
|
|
1529
|
-
set: function (newVal) {
|
|
1530
|
-
var raw = source[key];
|
|
1531
|
-
isRef(raw) ? (raw.value = newVal) : (source[key] = newVal);
|
|
1532
|
-
}
|
|
1533
|
-
});
|
|
1534
|
-
}
|
|
1535
1552
|
function createSetupContext(vm) {
|
|
1536
1553
|
var exposeCalled = false;
|
|
1537
1554
|
return {
|
|
@@ -4655,7 +4672,7 @@
|
|
|
4655
4672
|
var onRenderTracked = createLifeCycle('renderTracked');
|
|
4656
4673
|
var onRenderTriggered = createLifeCycle('renderTriggered');
|
|
4657
4674
|
|
|
4658
|
-
var version = '2.7.
|
|
4675
|
+
var version = '2.7.3';
|
|
4659
4676
|
/**
|
|
4660
4677
|
* @internal type is manually declared in <root>/types/v3-define-component.d.ts
|
|
4661
4678
|
*/
|
|
@@ -4673,6 +4690,7 @@
|
|
|
4673
4690
|
toRef: toRef,
|
|
4674
4691
|
toRefs: toRefs,
|
|
4675
4692
|
unref: unref,
|
|
4693
|
+
proxyRefs: proxyRefs,
|
|
4676
4694
|
customRef: customRef,
|
|
4677
4695
|
triggerRef: triggerRef,
|
|
4678
4696
|
reactive: reactive,
|
|
@@ -4730,6 +4748,13 @@
|
|
|
4730
4748
|
function toggleObserving(value) {
|
|
4731
4749
|
shouldObserve = value;
|
|
4732
4750
|
}
|
|
4751
|
+
// ssr mock dep
|
|
4752
|
+
var mockDep = {
|
|
4753
|
+
notify: noop,
|
|
4754
|
+
depend: noop,
|
|
4755
|
+
addSub: noop,
|
|
4756
|
+
removeSub: noop
|
|
4757
|
+
};
|
|
4733
4758
|
/**
|
|
4734
4759
|
* Observer class that is attached to each observed
|
|
4735
4760
|
* object. Once attached, the observer converts the target
|
|
@@ -4737,78 +4762,63 @@
|
|
|
4737
4762
|
* collect dependencies and dispatch updates.
|
|
4738
4763
|
*/
|
|
4739
4764
|
var Observer = /** @class */ (function () {
|
|
4740
|
-
function Observer(value, shallow) {
|
|
4765
|
+
function Observer(value, shallow, mock) {
|
|
4741
4766
|
if (shallow === void 0) { shallow = false; }
|
|
4767
|
+
if (mock === void 0) { mock = false; }
|
|
4742
4768
|
this.value = value;
|
|
4743
4769
|
this.shallow = shallow;
|
|
4770
|
+
this.mock = mock;
|
|
4744
4771
|
// this.value = value
|
|
4745
|
-
this.dep = new Dep();
|
|
4772
|
+
this.dep = mock ? mockDep : new Dep();
|
|
4746
4773
|
this.vmCount = 0;
|
|
4747
4774
|
def(value, '__ob__', this);
|
|
4748
4775
|
if (isArray(value)) {
|
|
4749
|
-
if (
|
|
4750
|
-
|
|
4751
|
-
|
|
4752
|
-
|
|
4753
|
-
|
|
4776
|
+
if (!mock) {
|
|
4777
|
+
if (hasProto) {
|
|
4778
|
+
value.__proto__ = arrayMethods;
|
|
4779
|
+
/* eslint-enable no-proto */
|
|
4780
|
+
}
|
|
4781
|
+
else {
|
|
4782
|
+
for (var i = 0, l = arrayKeys.length; i < l; i++) {
|
|
4783
|
+
var key = arrayKeys[i];
|
|
4784
|
+
def(value, key, arrayMethods[key]);
|
|
4785
|
+
}
|
|
4786
|
+
}
|
|
4754
4787
|
}
|
|
4755
4788
|
if (!shallow) {
|
|
4756
4789
|
this.observeArray(value);
|
|
4757
4790
|
}
|
|
4758
4791
|
}
|
|
4759
4792
|
else {
|
|
4760
|
-
|
|
4793
|
+
/**
|
|
4794
|
+
* Walk through all properties and convert them into
|
|
4795
|
+
* getter/setters. This method should only be called when
|
|
4796
|
+
* value type is Object.
|
|
4797
|
+
*/
|
|
4798
|
+
var keys = Object.keys(value);
|
|
4799
|
+
for (var i = 0; i < keys.length; i++) {
|
|
4800
|
+
var key = keys[i];
|
|
4801
|
+
defineReactive(value, key, NO_INIITIAL_VALUE, undefined, shallow, mock);
|
|
4802
|
+
}
|
|
4761
4803
|
}
|
|
4762
4804
|
}
|
|
4763
|
-
/**
|
|
4764
|
-
* Walk through all properties and convert them into
|
|
4765
|
-
* getter/setters. This method should only be called when
|
|
4766
|
-
* value type is Object.
|
|
4767
|
-
*/
|
|
4768
|
-
Observer.prototype.walk = function (obj, shallow) {
|
|
4769
|
-
var keys = Object.keys(obj);
|
|
4770
|
-
for (var i = 0; i < keys.length; i++) {
|
|
4771
|
-
var key = keys[i];
|
|
4772
|
-
defineReactive(obj, key, NO_INIITIAL_VALUE, undefined, shallow);
|
|
4773
|
-
}
|
|
4774
|
-
};
|
|
4775
4805
|
/**
|
|
4776
4806
|
* Observe a list of Array items.
|
|
4777
4807
|
*/
|
|
4778
|
-
Observer.prototype.observeArray = function (
|
|
4779
|
-
for (var i = 0, l =
|
|
4780
|
-
observe(
|
|
4808
|
+
Observer.prototype.observeArray = function (value) {
|
|
4809
|
+
for (var i = 0, l = value.length; i < l; i++) {
|
|
4810
|
+
observe(value[i], false, this.mock);
|
|
4781
4811
|
}
|
|
4782
4812
|
};
|
|
4783
4813
|
return Observer;
|
|
4784
4814
|
}());
|
|
4785
4815
|
// helpers
|
|
4786
|
-
/**
|
|
4787
|
-
* Augment a target Object or Array by intercepting
|
|
4788
|
-
* the prototype chain using __proto__
|
|
4789
|
-
*/
|
|
4790
|
-
function protoAugment(target, src) {
|
|
4791
|
-
/* eslint-disable no-proto */
|
|
4792
|
-
target.__proto__ = src;
|
|
4793
|
-
/* eslint-enable no-proto */
|
|
4794
|
-
}
|
|
4795
|
-
/**
|
|
4796
|
-
* Augment a target Object or Array by defining
|
|
4797
|
-
* hidden properties.
|
|
4798
|
-
*/
|
|
4799
|
-
/* istanbul ignore next */
|
|
4800
|
-
function copyAugment(target, src, keys) {
|
|
4801
|
-
for (var i = 0, l = keys.length; i < l; i++) {
|
|
4802
|
-
var key = keys[i];
|
|
4803
|
-
def(target, key, src[key]);
|
|
4804
|
-
}
|
|
4805
|
-
}
|
|
4806
4816
|
/**
|
|
4807
4817
|
* Attempt to create an observer instance for a value,
|
|
4808
4818
|
* returns the new observer if successfully observed,
|
|
4809
4819
|
* or the existing observer if the value already has one.
|
|
4810
4820
|
*/
|
|
4811
|
-
function observe(value, shallow) {
|
|
4821
|
+
function observe(value, shallow, ssrMockReactivity) {
|
|
4812
4822
|
if (!isObject(value) || isRef(value) || value instanceof VNode) {
|
|
4813
4823
|
return;
|
|
4814
4824
|
}
|
|
@@ -4817,18 +4827,18 @@
|
|
|
4817
4827
|
ob = value.__ob__;
|
|
4818
4828
|
}
|
|
4819
4829
|
else if (shouldObserve &&
|
|
4820
|
-
!isServerRendering() &&
|
|
4830
|
+
(ssrMockReactivity || !isServerRendering()) &&
|
|
4821
4831
|
(isArray(value) || isPlainObject(value)) &&
|
|
4822
4832
|
Object.isExtensible(value) &&
|
|
4823
|
-
!value.__v_skip) {
|
|
4824
|
-
ob = new Observer(value, shallow);
|
|
4833
|
+
!value.__v_skip /* ReactiveFlags.SKIP */) {
|
|
4834
|
+
ob = new Observer(value, shallow, ssrMockReactivity);
|
|
4825
4835
|
}
|
|
4826
4836
|
return ob;
|
|
4827
4837
|
}
|
|
4828
4838
|
/**
|
|
4829
4839
|
* Define a reactive property on an Object.
|
|
4830
4840
|
*/
|
|
4831
|
-
function defineReactive(obj, key, val, customSetter, shallow) {
|
|
4841
|
+
function defineReactive(obj, key, val, customSetter, shallow, mock) {
|
|
4832
4842
|
var dep = new Dep();
|
|
4833
4843
|
var property = Object.getOwnPropertyDescriptor(obj, key);
|
|
4834
4844
|
if (property && property.configurable === false) {
|
|
@@ -4841,7 +4851,7 @@
|
|
|
4841
4851
|
(val === NO_INIITIAL_VALUE || arguments.length === 2)) {
|
|
4842
4852
|
val = obj[key];
|
|
4843
4853
|
}
|
|
4844
|
-
var childOb = !shallow && observe(val);
|
|
4854
|
+
var childOb = !shallow && observe(val, false, mock);
|
|
4845
4855
|
Object.defineProperty(obj, key, {
|
|
4846
4856
|
enumerable: true,
|
|
4847
4857
|
configurable: true,
|
|
@@ -4862,7 +4872,7 @@
|
|
|
4862
4872
|
}
|
|
4863
4873
|
}
|
|
4864
4874
|
}
|
|
4865
|
-
return isRef(value) ? value.value : value;
|
|
4875
|
+
return isRef(value) && !shallow ? value.value : value;
|
|
4866
4876
|
},
|
|
4867
4877
|
set: function reactiveSetter(newVal) {
|
|
4868
4878
|
var value = getter ? getter.call(obj) : val;
|
|
@@ -4886,7 +4896,7 @@
|
|
|
4886
4896
|
else {
|
|
4887
4897
|
val = newVal;
|
|
4888
4898
|
}
|
|
4889
|
-
childOb = !shallow && observe(newVal);
|
|
4899
|
+
childOb = !shallow && observe(newVal, false, mock);
|
|
4890
4900
|
{
|
|
4891
4901
|
dep.notify({
|
|
4892
4902
|
type: "set" /* TriggerOpTypes.SET */,
|
|
@@ -4908,16 +4918,20 @@
|
|
|
4908
4918
|
warn$2("Set operation on key \"".concat(key, "\" failed: target is readonly."));
|
|
4909
4919
|
return;
|
|
4910
4920
|
}
|
|
4921
|
+
var ob = target.__ob__;
|
|
4911
4922
|
if (isArray(target) && isValidArrayIndex(key)) {
|
|
4912
4923
|
target.length = Math.max(target.length, key);
|
|
4913
4924
|
target.splice(key, 1, val);
|
|
4925
|
+
// when mocking for SSR, array methods are not hijacked
|
|
4926
|
+
if (!ob.shallow && ob.mock) {
|
|
4927
|
+
observe(val, false, true);
|
|
4928
|
+
}
|
|
4914
4929
|
return val;
|
|
4915
4930
|
}
|
|
4916
4931
|
if (key in target && !(key in Object.prototype)) {
|
|
4917
4932
|
target[key] = val;
|
|
4918
4933
|
return val;
|
|
4919
4934
|
}
|
|
4920
|
-
var ob = target.__ob__;
|
|
4921
4935
|
if (target._isVue || (ob && ob.vmCount)) {
|
|
4922
4936
|
warn$2('Avoid adding reactive properties to a Vue instance or its root $data ' +
|
|
4923
4937
|
'at runtime - declare it upfront in the data option.');
|
|
@@ -4927,7 +4941,7 @@
|
|
|
4927
4941
|
target[key] = val;
|
|
4928
4942
|
return val;
|
|
4929
4943
|
}
|
|
4930
|
-
defineReactive(ob.value, key, val);
|
|
4944
|
+
defineReactive(ob.value, key, val, undefined, ob.shallow, ob.mock);
|
|
4931
4945
|
{
|
|
4932
4946
|
ob.dep.notify({
|
|
4933
4947
|
type: "add" /* TriggerOpTypes.ADD */,
|
|
@@ -7050,7 +7064,7 @@
|
|
|
7050
7064
|
}
|
|
7051
7065
|
res[getRawDirName(dir)] = dir;
|
|
7052
7066
|
if (vm._setupState && vm._setupState.__sfc) {
|
|
7053
|
-
dir.def = resolveAsset(vm, '_setupState', 'v-' + dir.name);
|
|
7067
|
+
dir.def = dir.def || resolveAsset(vm, '_setupState', 'v-' + dir.name);
|
|
7054
7068
|
}
|
|
7055
7069
|
dir.def = dir.def || resolveAsset(vm.$options, 'directives', dir.name, true);
|
|
7056
7070
|
}
|