@vue/runtime-dom 3.5.22 → 3.5.24
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/runtime-dom.cjs.js +48 -21
- package/dist/runtime-dom.cjs.prod.js +48 -21
- package/dist/runtime-dom.d.ts +4 -2
- package/dist/runtime-dom.esm-browser.js +86 -36
- package/dist/runtime-dom.esm-browser.prod.js +4 -3
- package/dist/runtime-dom.esm-bundler.js +48 -21
- package/dist/runtime-dom.global.js +86 -36
- package/dist/runtime-dom.global.prod.js +4 -3
- package/package.json +4 -4
package/dist/runtime-dom.cjs.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/runtime-dom v3.5.
|
|
2
|
+
* @vue/runtime-dom v3.5.24
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -742,6 +742,9 @@ function shouldSetAsProp(el, key, value, isSVG) {
|
|
|
742
742
|
if (key === "spellcheck" || key === "draggable" || key === "translate" || key === "autocorrect") {
|
|
743
743
|
return false;
|
|
744
744
|
}
|
|
745
|
+
if (key === "sandbox" && el.tagName === "IFRAME") {
|
|
746
|
+
return false;
|
|
747
|
+
}
|
|
745
748
|
if (key === "form") {
|
|
746
749
|
return false;
|
|
747
750
|
}
|
|
@@ -802,6 +805,8 @@ class VueElement extends BaseClass {
|
|
|
802
805
|
this._nonce = this._def.nonce;
|
|
803
806
|
this._connected = false;
|
|
804
807
|
this._resolved = false;
|
|
808
|
+
this._patching = false;
|
|
809
|
+
this._dirty = false;
|
|
805
810
|
this._numberProps = null;
|
|
806
811
|
this._styleChildren = /* @__PURE__ */ new WeakSet();
|
|
807
812
|
this._ob = null;
|
|
@@ -977,7 +982,7 @@ class VueElement extends BaseClass {
|
|
|
977
982
|
return this._getProp(key);
|
|
978
983
|
},
|
|
979
984
|
set(val) {
|
|
980
|
-
this._setProp(key, val, true,
|
|
985
|
+
this._setProp(key, val, true, !this._patching);
|
|
981
986
|
}
|
|
982
987
|
});
|
|
983
988
|
}
|
|
@@ -1003,6 +1008,7 @@ class VueElement extends BaseClass {
|
|
|
1003
1008
|
*/
|
|
1004
1009
|
_setProp(key, val, shouldReflect = true, shouldUpdate = false) {
|
|
1005
1010
|
if (val !== this._props[key]) {
|
|
1011
|
+
this._dirty = true;
|
|
1006
1012
|
if (val === REMOVAL) {
|
|
1007
1013
|
delete this._props[key];
|
|
1008
1014
|
} else {
|
|
@@ -1157,10 +1163,14 @@ class VueElement extends BaseClass {
|
|
|
1157
1163
|
if (this._teleportTargets) {
|
|
1158
1164
|
roots.push(...this._teleportTargets);
|
|
1159
1165
|
}
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1166
|
+
const slots = /* @__PURE__ */ new Set();
|
|
1167
|
+
for (const root of roots) {
|
|
1168
|
+
const found = root.querySelectorAll("slot");
|
|
1169
|
+
for (let i = 0; i < found.length; i++) {
|
|
1170
|
+
slots.add(found[i]);
|
|
1171
|
+
}
|
|
1172
|
+
}
|
|
1173
|
+
return Array.from(slots);
|
|
1164
1174
|
}
|
|
1165
1175
|
/**
|
|
1166
1176
|
* @internal
|
|
@@ -1168,6 +1178,22 @@ class VueElement extends BaseClass {
|
|
|
1168
1178
|
_injectChildStyle(comp) {
|
|
1169
1179
|
this._applyStyles(comp.styles, comp);
|
|
1170
1180
|
}
|
|
1181
|
+
/**
|
|
1182
|
+
* @internal
|
|
1183
|
+
*/
|
|
1184
|
+
_beginPatch() {
|
|
1185
|
+
this._patching = true;
|
|
1186
|
+
this._dirty = false;
|
|
1187
|
+
}
|
|
1188
|
+
/**
|
|
1189
|
+
* @internal
|
|
1190
|
+
*/
|
|
1191
|
+
_endPatch() {
|
|
1192
|
+
this._patching = false;
|
|
1193
|
+
if (this._dirty && this._instance) {
|
|
1194
|
+
this._update();
|
|
1195
|
+
}
|
|
1196
|
+
}
|
|
1171
1197
|
/**
|
|
1172
1198
|
* @internal
|
|
1173
1199
|
*/
|
|
@@ -1302,10 +1328,10 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
|
|
|
1302
1328
|
instance
|
|
1303
1329
|
)
|
|
1304
1330
|
);
|
|
1305
|
-
positionMap.set(
|
|
1306
|
-
child,
|
|
1307
|
-
child.el.
|
|
1308
|
-
);
|
|
1331
|
+
positionMap.set(child, {
|
|
1332
|
+
left: child.el.offsetLeft,
|
|
1333
|
+
top: child.el.offsetTop
|
|
1334
|
+
});
|
|
1309
1335
|
}
|
|
1310
1336
|
}
|
|
1311
1337
|
}
|
|
@@ -1336,7 +1362,10 @@ function callPendingCbs(c) {
|
|
|
1336
1362
|
}
|
|
1337
1363
|
}
|
|
1338
1364
|
function recordPosition(c) {
|
|
1339
|
-
newPositionMap.set(c,
|
|
1365
|
+
newPositionMap.set(c, {
|
|
1366
|
+
left: c.el.offsetLeft,
|
|
1367
|
+
top: c.el.offsetTop
|
|
1368
|
+
});
|
|
1340
1369
|
}
|
|
1341
1370
|
function applyTranslation(c) {
|
|
1342
1371
|
const oldPos = positionMap.get(c);
|
|
@@ -1382,24 +1411,22 @@ function onCompositionEnd(e) {
|
|
|
1382
1411
|
}
|
|
1383
1412
|
}
|
|
1384
1413
|
const assignKey = Symbol("_assign");
|
|
1414
|
+
function castValue(value, trim, number) {
|
|
1415
|
+
if (trim) value = value.trim();
|
|
1416
|
+
if (number) value = shared.looseToNumber(value);
|
|
1417
|
+
return value;
|
|
1418
|
+
}
|
|
1385
1419
|
const vModelText = {
|
|
1386
1420
|
created(el, { modifiers: { lazy, trim, number } }, vnode) {
|
|
1387
1421
|
el[assignKey] = getModelAssigner(vnode);
|
|
1388
1422
|
const castToNumber = number || vnode.props && vnode.props.type === "number";
|
|
1389
1423
|
addEventListener(el, lazy ? "change" : "input", (e) => {
|
|
1390
1424
|
if (e.target.composing) return;
|
|
1391
|
-
|
|
1392
|
-
if (trim) {
|
|
1393
|
-
domValue = domValue.trim();
|
|
1394
|
-
}
|
|
1395
|
-
if (castToNumber) {
|
|
1396
|
-
domValue = shared.looseToNumber(domValue);
|
|
1397
|
-
}
|
|
1398
|
-
el[assignKey](domValue);
|
|
1425
|
+
el[assignKey](castValue(el.value, trim, castToNumber));
|
|
1399
1426
|
});
|
|
1400
|
-
if (trim) {
|
|
1427
|
+
if (trim || castToNumber) {
|
|
1401
1428
|
addEventListener(el, "change", () => {
|
|
1402
|
-
el.value = el.value
|
|
1429
|
+
el.value = castValue(el.value, trim, castToNumber);
|
|
1403
1430
|
});
|
|
1404
1431
|
}
|
|
1405
1432
|
if (!lazy) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/runtime-dom v3.5.
|
|
2
|
+
* @vue/runtime-dom v3.5.24
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -714,6 +714,9 @@ function shouldSetAsProp(el, key, value, isSVG) {
|
|
|
714
714
|
if (key === "spellcheck" || key === "draggable" || key === "translate" || key === "autocorrect") {
|
|
715
715
|
return false;
|
|
716
716
|
}
|
|
717
|
+
if (key === "sandbox" && el.tagName === "IFRAME") {
|
|
718
|
+
return false;
|
|
719
|
+
}
|
|
717
720
|
if (key === "form") {
|
|
718
721
|
return false;
|
|
719
722
|
}
|
|
@@ -774,6 +777,8 @@ class VueElement extends BaseClass {
|
|
|
774
777
|
this._nonce = this._def.nonce;
|
|
775
778
|
this._connected = false;
|
|
776
779
|
this._resolved = false;
|
|
780
|
+
this._patching = false;
|
|
781
|
+
this._dirty = false;
|
|
777
782
|
this._numberProps = null;
|
|
778
783
|
this._styleChildren = /* @__PURE__ */ new WeakSet();
|
|
779
784
|
this._ob = null;
|
|
@@ -935,7 +940,7 @@ class VueElement extends BaseClass {
|
|
|
935
940
|
return this._getProp(key);
|
|
936
941
|
},
|
|
937
942
|
set(val) {
|
|
938
|
-
this._setProp(key, val, true,
|
|
943
|
+
this._setProp(key, val, true, !this._patching);
|
|
939
944
|
}
|
|
940
945
|
});
|
|
941
946
|
}
|
|
@@ -961,6 +966,7 @@ class VueElement extends BaseClass {
|
|
|
961
966
|
*/
|
|
962
967
|
_setProp(key, val, shouldReflect = true, shouldUpdate = false) {
|
|
963
968
|
if (val !== this._props[key]) {
|
|
969
|
+
this._dirty = true;
|
|
964
970
|
if (val === REMOVAL) {
|
|
965
971
|
delete this._props[key];
|
|
966
972
|
} else {
|
|
@@ -1090,10 +1096,14 @@ class VueElement extends BaseClass {
|
|
|
1090
1096
|
if (this._teleportTargets) {
|
|
1091
1097
|
roots.push(...this._teleportTargets);
|
|
1092
1098
|
}
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1099
|
+
const slots = /* @__PURE__ */ new Set();
|
|
1100
|
+
for (const root of roots) {
|
|
1101
|
+
const found = root.querySelectorAll("slot");
|
|
1102
|
+
for (let i = 0; i < found.length; i++) {
|
|
1103
|
+
slots.add(found[i]);
|
|
1104
|
+
}
|
|
1105
|
+
}
|
|
1106
|
+
return Array.from(slots);
|
|
1097
1107
|
}
|
|
1098
1108
|
/**
|
|
1099
1109
|
* @internal
|
|
@@ -1101,6 +1111,22 @@ class VueElement extends BaseClass {
|
|
|
1101
1111
|
_injectChildStyle(comp) {
|
|
1102
1112
|
this._applyStyles(comp.styles, comp);
|
|
1103
1113
|
}
|
|
1114
|
+
/**
|
|
1115
|
+
* @internal
|
|
1116
|
+
*/
|
|
1117
|
+
_beginPatch() {
|
|
1118
|
+
this._patching = true;
|
|
1119
|
+
this._dirty = false;
|
|
1120
|
+
}
|
|
1121
|
+
/**
|
|
1122
|
+
* @internal
|
|
1123
|
+
*/
|
|
1124
|
+
_endPatch() {
|
|
1125
|
+
this._patching = false;
|
|
1126
|
+
if (this._dirty && this._instance) {
|
|
1127
|
+
this._update();
|
|
1128
|
+
}
|
|
1129
|
+
}
|
|
1104
1130
|
/**
|
|
1105
1131
|
* @internal
|
|
1106
1132
|
*/
|
|
@@ -1212,10 +1238,10 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
|
|
|
1212
1238
|
instance
|
|
1213
1239
|
)
|
|
1214
1240
|
);
|
|
1215
|
-
positionMap.set(
|
|
1216
|
-
child,
|
|
1217
|
-
child.el.
|
|
1218
|
-
);
|
|
1241
|
+
positionMap.set(child, {
|
|
1242
|
+
left: child.el.offsetLeft,
|
|
1243
|
+
top: child.el.offsetTop
|
|
1244
|
+
});
|
|
1219
1245
|
}
|
|
1220
1246
|
}
|
|
1221
1247
|
}
|
|
@@ -1244,7 +1270,10 @@ function callPendingCbs(c) {
|
|
|
1244
1270
|
}
|
|
1245
1271
|
}
|
|
1246
1272
|
function recordPosition(c) {
|
|
1247
|
-
newPositionMap.set(c,
|
|
1273
|
+
newPositionMap.set(c, {
|
|
1274
|
+
left: c.el.offsetLeft,
|
|
1275
|
+
top: c.el.offsetTop
|
|
1276
|
+
});
|
|
1248
1277
|
}
|
|
1249
1278
|
function applyTranslation(c) {
|
|
1250
1279
|
const oldPos = positionMap.get(c);
|
|
@@ -1290,24 +1319,22 @@ function onCompositionEnd(e) {
|
|
|
1290
1319
|
}
|
|
1291
1320
|
}
|
|
1292
1321
|
const assignKey = Symbol("_assign");
|
|
1322
|
+
function castValue(value, trim, number) {
|
|
1323
|
+
if (trim) value = value.trim();
|
|
1324
|
+
if (number) value = shared.looseToNumber(value);
|
|
1325
|
+
return value;
|
|
1326
|
+
}
|
|
1293
1327
|
const vModelText = {
|
|
1294
1328
|
created(el, { modifiers: { lazy, trim, number } }, vnode) {
|
|
1295
1329
|
el[assignKey] = getModelAssigner(vnode);
|
|
1296
1330
|
const castToNumber = number || vnode.props && vnode.props.type === "number";
|
|
1297
1331
|
addEventListener(el, lazy ? "change" : "input", (e) => {
|
|
1298
1332
|
if (e.target.composing) return;
|
|
1299
|
-
|
|
1300
|
-
if (trim) {
|
|
1301
|
-
domValue = domValue.trim();
|
|
1302
|
-
}
|
|
1303
|
-
if (castToNumber) {
|
|
1304
|
-
domValue = shared.looseToNumber(domValue);
|
|
1305
|
-
}
|
|
1306
|
-
el[assignKey](domValue);
|
|
1333
|
+
el[assignKey](castValue(el.value, trim, castToNumber));
|
|
1307
1334
|
});
|
|
1308
|
-
if (trim) {
|
|
1335
|
+
if (trim || castToNumber) {
|
|
1309
1336
|
addEventListener(el, "change", () => {
|
|
1310
|
-
el.value = el.value
|
|
1337
|
+
el.value = castValue(el.value, trim, castToNumber);
|
|
1311
1338
|
});
|
|
1312
1339
|
}
|
|
1313
1340
|
if (!lazy) {
|
package/dist/runtime-dom.d.ts
CHANGED
|
@@ -125,6 +125,8 @@ export declare class VueElement extends BaseClass implements ComponentCustomElem
|
|
|
125
125
|
_isVueCE: boolean;
|
|
126
126
|
private _connected;
|
|
127
127
|
private _resolved;
|
|
128
|
+
private _patching;
|
|
129
|
+
private _dirty;
|
|
128
130
|
private _numberProps;
|
|
129
131
|
private _styleChildren;
|
|
130
132
|
private _pendingResolve;
|
|
@@ -1364,12 +1366,12 @@ type EventHandlers<E> = {
|
|
|
1364
1366
|
[K in keyof E]?: E[K] extends (...args: any) => any ? E[K] : (payload: E[K]) => void;
|
|
1365
1367
|
};
|
|
1366
1368
|
|
|
1367
|
-
export
|
|
1369
|
+
export interface ReservedProps {
|
|
1368
1370
|
key?: PropertyKey | undefined;
|
|
1369
1371
|
ref?: VNodeRef | undefined;
|
|
1370
1372
|
ref_for?: boolean | undefined;
|
|
1371
1373
|
ref_key?: string | undefined;
|
|
1372
|
-
}
|
|
1374
|
+
}
|
|
1373
1375
|
export type NativeElements = {
|
|
1374
1376
|
[K in keyof IntrinsicElementAttributes]: IntrinsicElementAttributes[K] & ReservedProps;
|
|
1375
1377
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/runtime-dom v3.5.
|
|
2
|
+
* @vue/runtime-dom v3.5.24
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -4121,14 +4121,16 @@ Server rendered element contains more child nodes than client vdom.`
|
|
|
4121
4121
|
if (clientText[0] === "\n" && (el.tagName === "PRE" || el.tagName === "TEXTAREA")) {
|
|
4122
4122
|
clientText = clientText.slice(1);
|
|
4123
4123
|
}
|
|
4124
|
-
|
|
4124
|
+
const { textContent } = el;
|
|
4125
|
+
if (textContent !== clientText && // innerHTML normalize \r\n or \r into a single \n in the DOM
|
|
4126
|
+
textContent !== clientText.replace(/\r\n|\r/g, "\n")) {
|
|
4125
4127
|
if (!isMismatchAllowed(el, 0 /* TEXT */)) {
|
|
4126
4128
|
warn$1(
|
|
4127
4129
|
`Hydration text content mismatch on`,
|
|
4128
4130
|
el,
|
|
4129
4131
|
`
|
|
4130
|
-
- rendered on server: ${
|
|
4131
|
-
- expected on client: ${
|
|
4132
|
+
- rendered on server: ${textContent}
|
|
4133
|
+
- expected on client: ${clientText}`
|
|
4132
4134
|
);
|
|
4133
4135
|
logMismatchError();
|
|
4134
4136
|
}
|
|
@@ -4723,7 +4725,10 @@ function defineAsyncComponent(source) {
|
|
|
4723
4725
|
error: error.value
|
|
4724
4726
|
});
|
|
4725
4727
|
} else if (loadingComponent && !delayed.value) {
|
|
4726
|
-
return
|
|
4728
|
+
return createInnerComp(
|
|
4729
|
+
loadingComponent,
|
|
4730
|
+
instance
|
|
4731
|
+
);
|
|
4727
4732
|
}
|
|
4728
4733
|
};
|
|
4729
4734
|
}
|
|
@@ -7024,15 +7029,25 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7024
7029
|
optimized
|
|
7025
7030
|
);
|
|
7026
7031
|
} else {
|
|
7027
|
-
|
|
7028
|
-
|
|
7029
|
-
|
|
7030
|
-
|
|
7031
|
-
|
|
7032
|
-
|
|
7033
|
-
|
|
7034
|
-
|
|
7035
|
-
|
|
7032
|
+
const customElement = !!(n1.el && n1.el._isVueCE) ? n1.el : null;
|
|
7033
|
+
try {
|
|
7034
|
+
if (customElement) {
|
|
7035
|
+
customElement._beginPatch();
|
|
7036
|
+
}
|
|
7037
|
+
patchElement(
|
|
7038
|
+
n1,
|
|
7039
|
+
n2,
|
|
7040
|
+
parentComponent,
|
|
7041
|
+
parentSuspense,
|
|
7042
|
+
namespace,
|
|
7043
|
+
slotScopeIds,
|
|
7044
|
+
optimized
|
|
7045
|
+
);
|
|
7046
|
+
} finally {
|
|
7047
|
+
if (customElement) {
|
|
7048
|
+
customElement._endPatch();
|
|
7049
|
+
}
|
|
7050
|
+
}
|
|
7036
7051
|
}
|
|
7037
7052
|
};
|
|
7038
7053
|
const mountElement = (vnode, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => {
|
|
@@ -9274,7 +9289,8 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
9274
9289
|
pendingId,
|
|
9275
9290
|
effects,
|
|
9276
9291
|
parentComponent: parentComponent2,
|
|
9277
|
-
container: container2
|
|
9292
|
+
container: container2,
|
|
9293
|
+
isInFallback
|
|
9278
9294
|
} = suspense;
|
|
9279
9295
|
let delayEnter = false;
|
|
9280
9296
|
if (suspense.isHydrating) {
|
|
@@ -9291,6 +9307,9 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
9291
9307
|
0
|
|
9292
9308
|
);
|
|
9293
9309
|
queuePostFlushCb(effects);
|
|
9310
|
+
if (isInFallback && vnode2.ssFallback) {
|
|
9311
|
+
vnode2.ssFallback.el = null;
|
|
9312
|
+
}
|
|
9294
9313
|
}
|
|
9295
9314
|
};
|
|
9296
9315
|
}
|
|
@@ -9299,6 +9318,9 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
9299
9318
|
anchor = next(activeBranch);
|
|
9300
9319
|
}
|
|
9301
9320
|
unmount(activeBranch, parentComponent2, suspense, true);
|
|
9321
|
+
if (!delayEnter && isInFallback && vnode2.ssFallback) {
|
|
9322
|
+
vnode2.ssFallback.el = null;
|
|
9323
|
+
}
|
|
9302
9324
|
}
|
|
9303
9325
|
if (!delayEnter) {
|
|
9304
9326
|
move(pendingBranch, container2, anchor, 0);
|
|
@@ -9417,6 +9439,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
9417
9439
|
optimized2
|
|
9418
9440
|
);
|
|
9419
9441
|
if (placeholder) {
|
|
9442
|
+
vnode2.placeholder = null;
|
|
9420
9443
|
remove(placeholder);
|
|
9421
9444
|
}
|
|
9422
9445
|
updateHOCHostEl(instance, vnode2.el);
|
|
@@ -10592,7 +10615,7 @@ function isMemoSame(cached, memo) {
|
|
|
10592
10615
|
return true;
|
|
10593
10616
|
}
|
|
10594
10617
|
|
|
10595
|
-
const version = "3.5.
|
|
10618
|
+
const version = "3.5.24";
|
|
10596
10619
|
const warn = warn$1 ;
|
|
10597
10620
|
const ErrorTypeStrings = ErrorTypeStrings$1 ;
|
|
10598
10621
|
const devtools = devtools$1 ;
|
|
@@ -11414,6 +11437,9 @@ function shouldSetAsProp(el, key, value, isSVG) {
|
|
|
11414
11437
|
if (key === "spellcheck" || key === "draggable" || key === "translate" || key === "autocorrect") {
|
|
11415
11438
|
return false;
|
|
11416
11439
|
}
|
|
11440
|
+
if (key === "sandbox" && el.tagName === "IFRAME") {
|
|
11441
|
+
return false;
|
|
11442
|
+
}
|
|
11417
11443
|
if (key === "form") {
|
|
11418
11444
|
return false;
|
|
11419
11445
|
}
|
|
@@ -11474,6 +11500,8 @@ class VueElement extends BaseClass {
|
|
|
11474
11500
|
this._nonce = this._def.nonce;
|
|
11475
11501
|
this._connected = false;
|
|
11476
11502
|
this._resolved = false;
|
|
11503
|
+
this._patching = false;
|
|
11504
|
+
this._dirty = false;
|
|
11477
11505
|
this._numberProps = null;
|
|
11478
11506
|
this._styleChildren = /* @__PURE__ */ new WeakSet();
|
|
11479
11507
|
this._ob = null;
|
|
@@ -11649,7 +11677,7 @@ class VueElement extends BaseClass {
|
|
|
11649
11677
|
return this._getProp(key);
|
|
11650
11678
|
},
|
|
11651
11679
|
set(val) {
|
|
11652
|
-
this._setProp(key, val, true,
|
|
11680
|
+
this._setProp(key, val, true, !this._patching);
|
|
11653
11681
|
}
|
|
11654
11682
|
});
|
|
11655
11683
|
}
|
|
@@ -11675,6 +11703,7 @@ class VueElement extends BaseClass {
|
|
|
11675
11703
|
*/
|
|
11676
11704
|
_setProp(key, val, shouldReflect = true, shouldUpdate = false) {
|
|
11677
11705
|
if (val !== this._props[key]) {
|
|
11706
|
+
this._dirty = true;
|
|
11678
11707
|
if (val === REMOVAL) {
|
|
11679
11708
|
delete this._props[key];
|
|
11680
11709
|
} else {
|
|
@@ -11829,10 +11858,14 @@ class VueElement extends BaseClass {
|
|
|
11829
11858
|
if (this._teleportTargets) {
|
|
11830
11859
|
roots.push(...this._teleportTargets);
|
|
11831
11860
|
}
|
|
11832
|
-
|
|
11833
|
-
|
|
11834
|
-
|
|
11835
|
-
|
|
11861
|
+
const slots = /* @__PURE__ */ new Set();
|
|
11862
|
+
for (const root of roots) {
|
|
11863
|
+
const found = root.querySelectorAll("slot");
|
|
11864
|
+
for (let i = 0; i < found.length; i++) {
|
|
11865
|
+
slots.add(found[i]);
|
|
11866
|
+
}
|
|
11867
|
+
}
|
|
11868
|
+
return Array.from(slots);
|
|
11836
11869
|
}
|
|
11837
11870
|
/**
|
|
11838
11871
|
* @internal
|
|
@@ -11840,6 +11873,22 @@ class VueElement extends BaseClass {
|
|
|
11840
11873
|
_injectChildStyle(comp) {
|
|
11841
11874
|
this._applyStyles(comp.styles, comp);
|
|
11842
11875
|
}
|
|
11876
|
+
/**
|
|
11877
|
+
* @internal
|
|
11878
|
+
*/
|
|
11879
|
+
_beginPatch() {
|
|
11880
|
+
this._patching = true;
|
|
11881
|
+
this._dirty = false;
|
|
11882
|
+
}
|
|
11883
|
+
/**
|
|
11884
|
+
* @internal
|
|
11885
|
+
*/
|
|
11886
|
+
_endPatch() {
|
|
11887
|
+
this._patching = false;
|
|
11888
|
+
if (this._dirty && this._instance) {
|
|
11889
|
+
this._update();
|
|
11890
|
+
}
|
|
11891
|
+
}
|
|
11843
11892
|
/**
|
|
11844
11893
|
* @internal
|
|
11845
11894
|
*/
|
|
@@ -11974,10 +12023,10 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
|
|
|
11974
12023
|
instance
|
|
11975
12024
|
)
|
|
11976
12025
|
);
|
|
11977
|
-
positionMap.set(
|
|
11978
|
-
child,
|
|
11979
|
-
child.el.
|
|
11980
|
-
);
|
|
12026
|
+
positionMap.set(child, {
|
|
12027
|
+
left: child.el.offsetLeft,
|
|
12028
|
+
top: child.el.offsetTop
|
|
12029
|
+
});
|
|
11981
12030
|
}
|
|
11982
12031
|
}
|
|
11983
12032
|
}
|
|
@@ -12008,7 +12057,10 @@ function callPendingCbs(c) {
|
|
|
12008
12057
|
}
|
|
12009
12058
|
}
|
|
12010
12059
|
function recordPosition(c) {
|
|
12011
|
-
newPositionMap.set(c,
|
|
12060
|
+
newPositionMap.set(c, {
|
|
12061
|
+
left: c.el.offsetLeft,
|
|
12062
|
+
top: c.el.offsetTop
|
|
12063
|
+
});
|
|
12012
12064
|
}
|
|
12013
12065
|
function applyTranslation(c) {
|
|
12014
12066
|
const oldPos = positionMap.get(c);
|
|
@@ -12054,24 +12106,22 @@ function onCompositionEnd(e) {
|
|
|
12054
12106
|
}
|
|
12055
12107
|
}
|
|
12056
12108
|
const assignKey = Symbol("_assign");
|
|
12109
|
+
function castValue(value, trim, number) {
|
|
12110
|
+
if (trim) value = value.trim();
|
|
12111
|
+
if (number) value = looseToNumber(value);
|
|
12112
|
+
return value;
|
|
12113
|
+
}
|
|
12057
12114
|
const vModelText = {
|
|
12058
12115
|
created(el, { modifiers: { lazy, trim, number } }, vnode) {
|
|
12059
12116
|
el[assignKey] = getModelAssigner(vnode);
|
|
12060
12117
|
const castToNumber = number || vnode.props && vnode.props.type === "number";
|
|
12061
12118
|
addEventListener(el, lazy ? "change" : "input", (e) => {
|
|
12062
12119
|
if (e.target.composing) return;
|
|
12063
|
-
|
|
12064
|
-
if (trim) {
|
|
12065
|
-
domValue = domValue.trim();
|
|
12066
|
-
}
|
|
12067
|
-
if (castToNumber) {
|
|
12068
|
-
domValue = looseToNumber(domValue);
|
|
12069
|
-
}
|
|
12070
|
-
el[assignKey](domValue);
|
|
12120
|
+
el[assignKey](castValue(el.value, trim, castToNumber));
|
|
12071
12121
|
});
|
|
12072
|
-
if (trim) {
|
|
12122
|
+
if (trim || castToNumber) {
|
|
12073
12123
|
addEventListener(el, "change", () => {
|
|
12074
|
-
el.value = el.value
|
|
12124
|
+
el.value = castValue(el.value, trim, castToNumber);
|
|
12075
12125
|
});
|
|
12076
12126
|
}
|
|
12077
12127
|
if (!lazy) {
|