@vue/compat 3.4.13 → 3.4.15
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.cjs.js +58 -26
- package/dist/vue.cjs.prod.js +47 -23
- package/dist/vue.esm-browser.js +58 -26
- package/dist/vue.esm-browser.prod.js +6 -6
- package/dist/vue.esm-bundler.js +60 -28
- package/dist/vue.global.js +58 -26
- package/dist/vue.global.prod.js +6 -6
- package/dist/vue.runtime.esm-browser.js +58 -26
- package/dist/vue.runtime.esm-browser.prod.js +6 -6
- package/dist/vue.runtime.esm-bundler.js +59 -27
- package/dist/vue.runtime.global.js +58 -26
- package/dist/vue.runtime.global.prod.js +6 -6
- package/package.json +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/compat v3.4.
|
|
2
|
+
* @vue/compat v3.4.15
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -200,6 +200,13 @@ const isKnownHtmlAttr = /* @__PURE__ */ makeMap(
|
|
|
200
200
|
const isKnownSvgAttr = /* @__PURE__ */ makeMap(
|
|
201
201
|
`xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`
|
|
202
202
|
);
|
|
203
|
+
function isRenderableAttrValue(value) {
|
|
204
|
+
if (value == null) {
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
const type = typeof value;
|
|
208
|
+
return type === "string" || type === "number" || type === "boolean";
|
|
209
|
+
}
|
|
203
210
|
|
|
204
211
|
function looseCompareArrays(a, b) {
|
|
205
212
|
if (a.length !== b.length)
|
|
@@ -562,10 +569,7 @@ function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
|
|
|
562
569
|
var _a;
|
|
563
570
|
pauseScheduling();
|
|
564
571
|
for (const effect2 of dep.keys()) {
|
|
565
|
-
if (dep.get(effect2)
|
|
566
|
-
continue;
|
|
567
|
-
}
|
|
568
|
-
if (effect2._dirtyLevel < dirtyLevel) {
|
|
572
|
+
if (effect2._dirtyLevel < dirtyLevel && dep.get(effect2) === effect2._trackId) {
|
|
569
573
|
const lastDirtyLevel = effect2._dirtyLevel;
|
|
570
574
|
effect2._dirtyLevel = dirtyLevel;
|
|
571
575
|
if (lastDirtyLevel === 0) {
|
|
@@ -576,12 +580,17 @@ function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
|
|
|
576
580
|
effect2.trigger();
|
|
577
581
|
}
|
|
578
582
|
}
|
|
579
|
-
|
|
583
|
+
}
|
|
584
|
+
scheduleEffects(dep);
|
|
585
|
+
resetScheduling();
|
|
586
|
+
}
|
|
587
|
+
function scheduleEffects(dep) {
|
|
588
|
+
for (const effect2 of dep.keys()) {
|
|
589
|
+
if (effect2.scheduler && effect2._shouldSchedule && (!effect2._runnings || effect2.allowRecurse) && dep.get(effect2) === effect2._trackId) {
|
|
580
590
|
effect2._shouldSchedule = false;
|
|
581
591
|
queueEffectSchedulers.push(effect2.scheduler);
|
|
582
592
|
}
|
|
583
593
|
}
|
|
584
|
-
resetScheduling();
|
|
585
594
|
}
|
|
586
595
|
|
|
587
596
|
const createDep = (cleanup, computed) => {
|
|
@@ -1264,7 +1273,8 @@ class ComputedRefImpl {
|
|
|
1264
1273
|
this["__v_isReadonly"] = false;
|
|
1265
1274
|
this.effect = new ReactiveEffect(
|
|
1266
1275
|
() => getter(this._value),
|
|
1267
|
-
() => triggerRefValue(this, 1)
|
|
1276
|
+
() => triggerRefValue(this, 1),
|
|
1277
|
+
() => this.dep && scheduleEffects(this.dep)
|
|
1268
1278
|
);
|
|
1269
1279
|
this.effect.computed = this;
|
|
1270
1280
|
this.effect.active = this._cacheable = !isSSR;
|
|
@@ -1278,6 +1288,9 @@ class ComputedRefImpl {
|
|
|
1278
1288
|
}
|
|
1279
1289
|
}
|
|
1280
1290
|
trackRefValue(self);
|
|
1291
|
+
if (self.effect._dirtyLevel >= 1) {
|
|
1292
|
+
triggerRefValue(self, 1);
|
|
1293
|
+
}
|
|
1281
1294
|
return self._value;
|
|
1282
1295
|
}
|
|
1283
1296
|
set value(newValue) {
|
|
@@ -1703,7 +1716,7 @@ function handleError(err, instance, type, throwInDev = true) {
|
|
|
1703
1716
|
if (instance) {
|
|
1704
1717
|
let cur = instance.parent;
|
|
1705
1718
|
const exposedInstance = instance.proxy;
|
|
1706
|
-
const errorInfo = !!(process.env.NODE_ENV !== "production") ? ErrorTypeStrings$1[type] : `https://vuejs.org/
|
|
1719
|
+
const errorInfo = !!(process.env.NODE_ENV !== "production") ? ErrorTypeStrings$1[type] : `https://vuejs.org/error-reference/#runtime-${type}`;
|
|
1707
1720
|
while (cur) {
|
|
1708
1721
|
const errorCapturedHooks = cur.ec;
|
|
1709
1722
|
if (errorCapturedHooks) {
|
|
@@ -6461,7 +6474,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
|
|
|
6461
6474
|
return vm;
|
|
6462
6475
|
}
|
|
6463
6476
|
}
|
|
6464
|
-
Vue.version = `2.6.14-compat:${"3.4.
|
|
6477
|
+
Vue.version = `2.6.14-compat:${"3.4.15"}`;
|
|
6465
6478
|
Vue.config = singletonApp.config;
|
|
6466
6479
|
Vue.use = (p, ...options) => {
|
|
6467
6480
|
if (p && isFunction(p.install)) {
|
|
@@ -7533,7 +7546,7 @@ const normalizeSlot = (key, rawSlot, ctx) => {
|
|
|
7533
7546
|
return rawSlot;
|
|
7534
7547
|
}
|
|
7535
7548
|
const normalized = withCtx((...args) => {
|
|
7536
|
-
if (!!(process.env.NODE_ENV !== "production") && currentInstance) {
|
|
7549
|
+
if (!!(process.env.NODE_ENV !== "production") && currentInstance && (!ctx || ctx.root === currentInstance.root)) {
|
|
7537
7550
|
warn$1(
|
|
7538
7551
|
`Slot "${key}" invoked outside of the render function: this will not track dependencies used in the slot. Invoke the slot function inside the render function instead.`
|
|
7539
7552
|
);
|
|
@@ -7671,9 +7684,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
7671
7684
|
} else {
|
|
7672
7685
|
const _isString = isString(ref);
|
|
7673
7686
|
const _isRef = isRef(ref);
|
|
7687
|
+
const isVFor = rawRef.f;
|
|
7674
7688
|
if (_isString || _isRef) {
|
|
7675
7689
|
const doSet = () => {
|
|
7676
|
-
if (
|
|
7690
|
+
if (isVFor) {
|
|
7677
7691
|
const existing = _isString ? hasOwn(setupState, ref) ? setupState[ref] : refs[ref] : ref.value;
|
|
7678
7692
|
if (isUnmount) {
|
|
7679
7693
|
isArray(existing) && remove(existing, refValue);
|
|
@@ -7706,11 +7720,11 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
7706
7720
|
warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
|
|
7707
7721
|
}
|
|
7708
7722
|
};
|
|
7709
|
-
if (
|
|
7723
|
+
if (isUnmount || isVFor) {
|
|
7724
|
+
doSet();
|
|
7725
|
+
} else {
|
|
7710
7726
|
doSet.id = -1;
|
|
7711
7727
|
queuePostRenderEffect(doSet, parentSuspense);
|
|
7712
|
-
} else {
|
|
7713
|
-
doSet();
|
|
7714
7728
|
}
|
|
7715
7729
|
} else if (!!(process.env.NODE_ENV !== "production")) {
|
|
7716
7730
|
warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
|
|
@@ -8230,11 +8244,12 @@ function propHasMismatch(el, key, clientValue, vnode) {
|
|
|
8230
8244
|
} else {
|
|
8231
8245
|
if (el.hasAttribute(key)) {
|
|
8232
8246
|
actual = el.getAttribute(key);
|
|
8247
|
+
} else if (key === "value" && el.tagName === "TEXTAREA") {
|
|
8248
|
+
actual = el.value;
|
|
8233
8249
|
} else {
|
|
8234
|
-
|
|
8235
|
-
actual = isObject(serverValue) || serverValue == null ? "" : String(serverValue);
|
|
8250
|
+
actual = false;
|
|
8236
8251
|
}
|
|
8237
|
-
expected =
|
|
8252
|
+
expected = isRenderableAttrValue(clientValue) ? String(clientValue) : false;
|
|
8238
8253
|
}
|
|
8239
8254
|
if (actual !== expected) {
|
|
8240
8255
|
mismatchType = `attribute`;
|
|
@@ -11360,7 +11375,7 @@ function isMemoSame(cached, memo) {
|
|
|
11360
11375
|
return true;
|
|
11361
11376
|
}
|
|
11362
11377
|
|
|
11363
|
-
const version = "3.4.
|
|
11378
|
+
const version = "3.4.15";
|
|
11364
11379
|
const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
|
|
11365
11380
|
const ErrorTypeStrings = ErrorTypeStrings$1 ;
|
|
11366
11381
|
const devtools = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
|
|
@@ -12734,35 +12749,52 @@ const vModelSelect = {
|
|
|
12734
12749
|
el[assignKey](
|
|
12735
12750
|
el.multiple ? isSetModel ? new Set(selectedVal) : selectedVal : selectedVal[0]
|
|
12736
12751
|
);
|
|
12752
|
+
el._assigning = true;
|
|
12753
|
+
nextTick(() => {
|
|
12754
|
+
el._assigning = false;
|
|
12755
|
+
});
|
|
12737
12756
|
});
|
|
12738
12757
|
el[assignKey] = getModelAssigner(vnode);
|
|
12739
12758
|
},
|
|
12740
12759
|
// set value in mounted & updated because <select> relies on its children
|
|
12741
12760
|
// <option>s.
|
|
12742
|
-
mounted(el, { value }) {
|
|
12743
|
-
setSelected(el, value);
|
|
12761
|
+
mounted(el, { value, oldValue, modifiers: { number } }) {
|
|
12762
|
+
setSelected(el, value, oldValue, number);
|
|
12744
12763
|
},
|
|
12745
12764
|
beforeUpdate(el, _binding, vnode) {
|
|
12746
12765
|
el[assignKey] = getModelAssigner(vnode);
|
|
12747
12766
|
},
|
|
12748
|
-
updated(el, { value }) {
|
|
12749
|
-
|
|
12767
|
+
updated(el, { value, oldValue, modifiers: { number } }) {
|
|
12768
|
+
if (!el._assigning) {
|
|
12769
|
+
setSelected(el, value, oldValue, number);
|
|
12770
|
+
}
|
|
12750
12771
|
}
|
|
12751
12772
|
};
|
|
12752
|
-
function setSelected(el, value) {
|
|
12773
|
+
function setSelected(el, value, oldValue, number) {
|
|
12753
12774
|
const isMultiple = el.multiple;
|
|
12754
|
-
|
|
12775
|
+
const isArrayValue = isArray(value);
|
|
12776
|
+
if (isMultiple && !isArrayValue && !isSet(value)) {
|
|
12755
12777
|
!!(process.env.NODE_ENV !== "production") && warn(
|
|
12756
12778
|
`<select multiple v-model> expects an Array or Set value for its binding, but got ${Object.prototype.toString.call(value).slice(8, -1)}.`
|
|
12757
12779
|
);
|
|
12758
12780
|
return;
|
|
12759
12781
|
}
|
|
12782
|
+
if (isArrayValue && looseEqual(value, oldValue)) {
|
|
12783
|
+
return;
|
|
12784
|
+
}
|
|
12760
12785
|
for (let i = 0, l = el.options.length; i < l; i++) {
|
|
12761
12786
|
const option = el.options[i];
|
|
12762
12787
|
const optionValue = getValue(option);
|
|
12763
12788
|
if (isMultiple) {
|
|
12764
|
-
if (
|
|
12765
|
-
|
|
12789
|
+
if (isArrayValue) {
|
|
12790
|
+
const optionType = typeof optionValue;
|
|
12791
|
+
if (optionType === "string" || optionType === "number") {
|
|
12792
|
+
option.selected = value.includes(
|
|
12793
|
+
number ? looseToNumber(optionValue) : optionValue
|
|
12794
|
+
);
|
|
12795
|
+
} else {
|
|
12796
|
+
option.selected = looseIndexOf(value, optionValue) > -1;
|
|
12797
|
+
}
|
|
12766
12798
|
} else {
|
|
12767
12799
|
option.selected = value.has(optionValue);
|
|
12768
12800
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/compat v3.4.
|
|
2
|
+
* @vue/compat v3.4.15
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -203,6 +203,13 @@ var Vue = (function () {
|
|
|
203
203
|
const isKnownSvgAttr = /* @__PURE__ */ makeMap(
|
|
204
204
|
`xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan`
|
|
205
205
|
);
|
|
206
|
+
function isRenderableAttrValue(value) {
|
|
207
|
+
if (value == null) {
|
|
208
|
+
return false;
|
|
209
|
+
}
|
|
210
|
+
const type = typeof value;
|
|
211
|
+
return type === "string" || type === "number" || type === "boolean";
|
|
212
|
+
}
|
|
206
213
|
|
|
207
214
|
function looseCompareArrays(a, b) {
|
|
208
215
|
if (a.length !== b.length)
|
|
@@ -565,10 +572,7 @@ var Vue = (function () {
|
|
|
565
572
|
var _a;
|
|
566
573
|
pauseScheduling();
|
|
567
574
|
for (const effect2 of dep.keys()) {
|
|
568
|
-
if (dep.get(effect2)
|
|
569
|
-
continue;
|
|
570
|
-
}
|
|
571
|
-
if (effect2._dirtyLevel < dirtyLevel) {
|
|
575
|
+
if (effect2._dirtyLevel < dirtyLevel && dep.get(effect2) === effect2._trackId) {
|
|
572
576
|
const lastDirtyLevel = effect2._dirtyLevel;
|
|
573
577
|
effect2._dirtyLevel = dirtyLevel;
|
|
574
578
|
if (lastDirtyLevel === 0) {
|
|
@@ -579,12 +583,17 @@ var Vue = (function () {
|
|
|
579
583
|
effect2.trigger();
|
|
580
584
|
}
|
|
581
585
|
}
|
|
582
|
-
|
|
586
|
+
}
|
|
587
|
+
scheduleEffects(dep);
|
|
588
|
+
resetScheduling();
|
|
589
|
+
}
|
|
590
|
+
function scheduleEffects(dep) {
|
|
591
|
+
for (const effect2 of dep.keys()) {
|
|
592
|
+
if (effect2.scheduler && effect2._shouldSchedule && (!effect2._runnings || effect2.allowRecurse) && dep.get(effect2) === effect2._trackId) {
|
|
583
593
|
effect2._shouldSchedule = false;
|
|
584
594
|
queueEffectSchedulers.push(effect2.scheduler);
|
|
585
595
|
}
|
|
586
596
|
}
|
|
587
|
-
resetScheduling();
|
|
588
597
|
}
|
|
589
598
|
|
|
590
599
|
const createDep = (cleanup, computed) => {
|
|
@@ -1267,7 +1276,8 @@ var Vue = (function () {
|
|
|
1267
1276
|
this["__v_isReadonly"] = false;
|
|
1268
1277
|
this.effect = new ReactiveEffect(
|
|
1269
1278
|
() => getter(this._value),
|
|
1270
|
-
() => triggerRefValue(this, 1)
|
|
1279
|
+
() => triggerRefValue(this, 1),
|
|
1280
|
+
() => this.dep && scheduleEffects(this.dep)
|
|
1271
1281
|
);
|
|
1272
1282
|
this.effect.computed = this;
|
|
1273
1283
|
this.effect.active = this._cacheable = !isSSR;
|
|
@@ -1281,6 +1291,9 @@ var Vue = (function () {
|
|
|
1281
1291
|
}
|
|
1282
1292
|
}
|
|
1283
1293
|
trackRefValue(self);
|
|
1294
|
+
if (self.effect._dirtyLevel >= 1) {
|
|
1295
|
+
triggerRefValue(self, 1);
|
|
1296
|
+
}
|
|
1284
1297
|
return self._value;
|
|
1285
1298
|
}
|
|
1286
1299
|
set value(newValue) {
|
|
@@ -6420,7 +6433,7 @@ If this is a native custom element, make sure to exclude it from component resol
|
|
|
6420
6433
|
return vm;
|
|
6421
6434
|
}
|
|
6422
6435
|
}
|
|
6423
|
-
Vue.version = `2.6.14-compat:${"3.4.
|
|
6436
|
+
Vue.version = `2.6.14-compat:${"3.4.15"}`;
|
|
6424
6437
|
Vue.config = singletonApp.config;
|
|
6425
6438
|
Vue.use = (p, ...options) => {
|
|
6426
6439
|
if (p && isFunction(p.install)) {
|
|
@@ -7489,7 +7502,7 @@ If you want to remount the same app, move your app creation logic into a factory
|
|
|
7489
7502
|
return rawSlot;
|
|
7490
7503
|
}
|
|
7491
7504
|
const normalized = withCtx((...args) => {
|
|
7492
|
-
if (currentInstance) {
|
|
7505
|
+
if (currentInstance && (!ctx || ctx.root === currentInstance.root)) {
|
|
7493
7506
|
warn$1(
|
|
7494
7507
|
`Slot "${key}" invoked outside of the render function: this will not track dependencies used in the slot. Invoke the slot function inside the render function instead.`
|
|
7495
7508
|
);
|
|
@@ -7627,9 +7640,10 @@ If you want to remount the same app, move your app creation logic into a factory
|
|
|
7627
7640
|
} else {
|
|
7628
7641
|
const _isString = isString(ref);
|
|
7629
7642
|
const _isRef = isRef(ref);
|
|
7643
|
+
const isVFor = rawRef.f;
|
|
7630
7644
|
if (_isString || _isRef) {
|
|
7631
7645
|
const doSet = () => {
|
|
7632
|
-
if (
|
|
7646
|
+
if (isVFor) {
|
|
7633
7647
|
const existing = _isString ? hasOwn(setupState, ref) ? setupState[ref] : refs[ref] : ref.value;
|
|
7634
7648
|
if (isUnmount) {
|
|
7635
7649
|
isArray(existing) && remove(existing, refValue);
|
|
@@ -7662,11 +7676,11 @@ If you want to remount the same app, move your app creation logic into a factory
|
|
|
7662
7676
|
warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
|
|
7663
7677
|
}
|
|
7664
7678
|
};
|
|
7665
|
-
if (
|
|
7679
|
+
if (isUnmount || isVFor) {
|
|
7680
|
+
doSet();
|
|
7681
|
+
} else {
|
|
7666
7682
|
doSet.id = -1;
|
|
7667
7683
|
queuePostRenderEffect(doSet, parentSuspense);
|
|
7668
|
-
} else {
|
|
7669
|
-
doSet();
|
|
7670
7684
|
}
|
|
7671
7685
|
} else {
|
|
7672
7686
|
warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
|
|
@@ -8176,11 +8190,12 @@ Server rendered element contains fewer child nodes than client vdom.`
|
|
|
8176
8190
|
} else {
|
|
8177
8191
|
if (el.hasAttribute(key)) {
|
|
8178
8192
|
actual = el.getAttribute(key);
|
|
8193
|
+
} else if (key === "value" && el.tagName === "TEXTAREA") {
|
|
8194
|
+
actual = el.value;
|
|
8179
8195
|
} else {
|
|
8180
|
-
|
|
8181
|
-
actual = isObject(serverValue) || serverValue == null ? "" : String(serverValue);
|
|
8196
|
+
actual = false;
|
|
8182
8197
|
}
|
|
8183
|
-
expected =
|
|
8198
|
+
expected = isRenderableAttrValue(clientValue) ? String(clientValue) : false;
|
|
8184
8199
|
}
|
|
8185
8200
|
if (actual !== expected) {
|
|
8186
8201
|
mismatchType = `attribute`;
|
|
@@ -11235,7 +11250,7 @@ Component that was made reactive: `,
|
|
|
11235
11250
|
return true;
|
|
11236
11251
|
}
|
|
11237
11252
|
|
|
11238
|
-
const version = "3.4.
|
|
11253
|
+
const version = "3.4.15";
|
|
11239
11254
|
const warn = warn$1 ;
|
|
11240
11255
|
const ErrorTypeStrings = ErrorTypeStrings$1 ;
|
|
11241
11256
|
const devtools = devtools$1 ;
|
|
@@ -12582,35 +12597,52 @@ Component that was made reactive: `,
|
|
|
12582
12597
|
el[assignKey](
|
|
12583
12598
|
el.multiple ? isSetModel ? new Set(selectedVal) : selectedVal : selectedVal[0]
|
|
12584
12599
|
);
|
|
12600
|
+
el._assigning = true;
|
|
12601
|
+
nextTick(() => {
|
|
12602
|
+
el._assigning = false;
|
|
12603
|
+
});
|
|
12585
12604
|
});
|
|
12586
12605
|
el[assignKey] = getModelAssigner(vnode);
|
|
12587
12606
|
},
|
|
12588
12607
|
// set value in mounted & updated because <select> relies on its children
|
|
12589
12608
|
// <option>s.
|
|
12590
|
-
mounted(el, { value }) {
|
|
12591
|
-
setSelected(el, value);
|
|
12609
|
+
mounted(el, { value, oldValue, modifiers: { number } }) {
|
|
12610
|
+
setSelected(el, value, oldValue, number);
|
|
12592
12611
|
},
|
|
12593
12612
|
beforeUpdate(el, _binding, vnode) {
|
|
12594
12613
|
el[assignKey] = getModelAssigner(vnode);
|
|
12595
12614
|
},
|
|
12596
|
-
updated(el, { value }) {
|
|
12597
|
-
|
|
12615
|
+
updated(el, { value, oldValue, modifiers: { number } }) {
|
|
12616
|
+
if (!el._assigning) {
|
|
12617
|
+
setSelected(el, value, oldValue, number);
|
|
12618
|
+
}
|
|
12598
12619
|
}
|
|
12599
12620
|
};
|
|
12600
|
-
function setSelected(el, value) {
|
|
12621
|
+
function setSelected(el, value, oldValue, number) {
|
|
12601
12622
|
const isMultiple = el.multiple;
|
|
12602
|
-
|
|
12623
|
+
const isArrayValue = isArray(value);
|
|
12624
|
+
if (isMultiple && !isArrayValue && !isSet(value)) {
|
|
12603
12625
|
warn(
|
|
12604
12626
|
`<select multiple v-model> expects an Array or Set value for its binding, but got ${Object.prototype.toString.call(value).slice(8, -1)}.`
|
|
12605
12627
|
);
|
|
12606
12628
|
return;
|
|
12607
12629
|
}
|
|
12630
|
+
if (isArrayValue && looseEqual(value, oldValue)) {
|
|
12631
|
+
return;
|
|
12632
|
+
}
|
|
12608
12633
|
for (let i = 0, l = el.options.length; i < l; i++) {
|
|
12609
12634
|
const option = el.options[i];
|
|
12610
12635
|
const optionValue = getValue(option);
|
|
12611
12636
|
if (isMultiple) {
|
|
12612
|
-
if (
|
|
12613
|
-
|
|
12637
|
+
if (isArrayValue) {
|
|
12638
|
+
const optionType = typeof optionValue;
|
|
12639
|
+
if (optionType === "string" || optionType === "number") {
|
|
12640
|
+
option.selected = value.includes(
|
|
12641
|
+
number ? looseToNumber(optionValue) : optionValue
|
|
12642
|
+
);
|
|
12643
|
+
} else {
|
|
12644
|
+
option.selected = looseIndexOf(value, optionValue) > -1;
|
|
12645
|
+
}
|
|
12614
12646
|
} else {
|
|
12615
12647
|
option.selected = value.has(optionValue);
|
|
12616
12648
|
}
|