@vue/compat 3.4.26 → 3.4.27

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 CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.4.26
2
+ * @vue/compat v3.4.27
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -216,8 +216,8 @@ function stringifyStyle(styles) {
216
216
  }
217
217
  for (const key in styles) {
218
218
  const value = styles[key];
219
- const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);
220
219
  if (isString(value) || typeof value === "number") {
220
+ const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);
221
221
  ret += `${normalizedKey}:${value};`;
222
222
  }
223
223
  }
@@ -5645,14 +5645,7 @@ function installCompatInstanceProperties(map) {
5645
5645
  },
5646
5646
  $scopedSlots: (i) => {
5647
5647
  assertCompatEnabled("INSTANCE_SCOPED_SLOTS", i);
5648
- const res = {};
5649
- for (const key in i.slots) {
5650
- const fn = i.slots[key];
5651
- if (!fn._ns) {
5652
- res[key] = fn;
5653
- }
5654
- }
5655
- return res;
5648
+ return shallowReadonly(i.slots) ;
5656
5649
  },
5657
5650
  $on: (i) => on.bind(null, i),
5658
5651
  $once: (i) => once.bind(null, i),
@@ -6623,7 +6616,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6623
6616
  return vm;
6624
6617
  }
6625
6618
  }
6626
- Vue.version = `2.6.14-compat:${"3.4.26"}`;
6619
+ Vue.version = `2.6.14-compat:${"3.4.27"}`;
6627
6620
  Vue.config = singletonApp.config;
6628
6621
  Vue.use = (plugin, ...options) => {
6629
6622
  if (plugin && isFunction(plugin.install)) {
@@ -8361,7 +8354,7 @@ function propHasMismatch(el, key, clientValue, vnode, instance) {
8361
8354
  mismatchType = mismatchKey = `class`;
8362
8355
  }
8363
8356
  } else if (key === "style") {
8364
- actual = el.getAttribute("style");
8357
+ actual = el.getAttribute("style") || "";
8365
8358
  expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue));
8366
8359
  const actualMap = toStyleMap(actual);
8367
8360
  const expectedMap = toStyleMap(expected);
@@ -11473,7 +11466,7 @@ function isMemoSame(cached, memo) {
11473
11466
  return true;
11474
11467
  }
11475
11468
 
11476
- const version = "3.4.26";
11469
+ const version = "3.4.27";
11477
11470
  const warn = warn$1 ;
11478
11471
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
11479
11472
  const devtools = devtools$1 ;
@@ -18936,7 +18929,7 @@ function processSlotOutlet(node, context) {
18936
18929
  };
18937
18930
  }
18938
18931
 
18939
- const fnExpRE = /^\s*([\w$_]+|(async\s*)?\([^)]*?\))\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/;
18932
+ const fnExpRE = /^\s*(async\s*)?(\([^)]*?\)|[\w$_]+)\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/;
18940
18933
  const transformOn$1 = (dir, node, context, augmentor) => {
18941
18934
  const { loc, modifiers, arg } = dir;
18942
18935
  if (!dir.exp && !modifiers.length) {
@@ -20020,6 +20013,7 @@ function analyzeNode(node) {
20020
20013
  return false;
20021
20014
  };
20022
20015
  function walk(node2) {
20016
+ const isOptionTag = node2.tag === "option" && node2.ns === 0;
20023
20017
  for (let i = 0; i < node2.props.length; i++) {
20024
20018
  const p = node2.props[i];
20025
20019
  if (p.type === 6 && !isStringifiableAttr(p.name, node2.ns)) {
@@ -20032,6 +20026,9 @@ function analyzeNode(node) {
20032
20026
  if (p.exp && (p.exp.type === 8 || p.exp.constType < 3)) {
20033
20027
  return bail();
20034
20028
  }
20029
+ if (isOptionTag && isStaticArgOf(p.arg, "value") && p.exp && p.exp.ast && p.exp.ast.type !== "StringLiteral") {
20030
+ return bail();
20031
+ }
20035
20032
  }
20036
20033
  }
20037
20034
  for (let i = 0; i < node2.children.length; i++) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.4.26
2
+ * @vue/compat v3.4.27
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -153,8 +153,8 @@ function stringifyStyle(styles) {
153
153
  }
154
154
  for (const key in styles) {
155
155
  const value = styles[key];
156
- const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);
157
156
  if (isString(value) || typeof value === "number") {
157
+ const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);
158
158
  ret += `${normalizedKey}:${value};`;
159
159
  }
160
160
  }
@@ -4552,14 +4552,7 @@ function installCompatInstanceProperties(map) {
4552
4552
  },
4553
4553
  $scopedSlots: (i) => {
4554
4554
  assertCompatEnabled("INSTANCE_SCOPED_SLOTS", i);
4555
- const res = {};
4556
- for (const key in i.slots) {
4557
- const fn = i.slots[key];
4558
- if (!fn._ns) {
4559
- res[key] = fn;
4560
- }
4561
- }
4562
- return res;
4555
+ return i.slots;
4563
4556
  },
4564
4557
  $on: (i) => on.bind(null, i),
4565
4558
  $once: (i) => once.bind(null, i),
@@ -5281,7 +5274,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
5281
5274
  return vm;
5282
5275
  }
5283
5276
  }
5284
- Vue.version = `2.6.14-compat:${"3.4.26"}`;
5277
+ Vue.version = `2.6.14-compat:${"3.4.27"}`;
5285
5278
  Vue.config = singletonApp.config;
5286
5279
  Vue.use = (plugin, ...options) => {
5287
5280
  if (plugin && isFunction(plugin.install)) {
@@ -9143,7 +9136,7 @@ function isMemoSame(cached, memo) {
9143
9136
  return true;
9144
9137
  }
9145
9138
 
9146
- const version = "3.4.26";
9139
+ const version = "3.4.27";
9147
9140
  const warn$1 = NOOP;
9148
9141
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
9149
9142
  const devtools = void 0;
@@ -16303,7 +16296,7 @@ function processSlotOutlet(node, context) {
16303
16296
  };
16304
16297
  }
16305
16298
 
16306
- const fnExpRE = /^\s*([\w$_]+|(async\s*)?\([^)]*?\))\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/;
16299
+ const fnExpRE = /^\s*(async\s*)?(\([^)]*?\)|[\w$_]+)\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/;
16307
16300
  const transformOn$1 = (dir, node, context, augmentor) => {
16308
16301
  const { loc, modifiers, arg } = dir;
16309
16302
  if (!dir.exp && !modifiers.length) {
@@ -17313,6 +17306,7 @@ function analyzeNode(node) {
17313
17306
  return false;
17314
17307
  };
17315
17308
  function walk(node2) {
17309
+ const isOptionTag = node2.tag === "option" && node2.ns === 0;
17316
17310
  for (let i = 0; i < node2.props.length; i++) {
17317
17311
  const p = node2.props[i];
17318
17312
  if (p.type === 6 && !isStringifiableAttr(p.name, node2.ns)) {
@@ -17325,6 +17319,9 @@ function analyzeNode(node) {
17325
17319
  if (p.exp && (p.exp.type === 8 || p.exp.constType < 3)) {
17326
17320
  return bail();
17327
17321
  }
17322
+ if (isOptionTag && isStaticArgOf(p.arg, "value") && p.exp && p.exp.ast && p.exp.ast.type !== "StringLiteral") {
17323
+ return bail();
17324
+ }
17328
17325
  }
17329
17326
  }
17330
17327
  for (let i = 0; i < node2.children.length; i++) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.4.26
2
+ * @vue/compat v3.4.27
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -205,8 +205,8 @@ function stringifyStyle(styles) {
205
205
  }
206
206
  for (const key in styles) {
207
207
  const value = styles[key];
208
- const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);
209
208
  if (isString(value) || typeof value === "number") {
209
+ const normalizedKey = key.startsWith(`--`) ? key : hyphenate(key);
210
210
  ret += `${normalizedKey}:${value};`;
211
211
  }
212
212
  }
@@ -5567,14 +5567,7 @@ function installCompatInstanceProperties(map) {
5567
5567
  },
5568
5568
  $scopedSlots: (i) => {
5569
5569
  assertCompatEnabled("INSTANCE_SCOPED_SLOTS", i);
5570
- const res = {};
5571
- for (const key in i.slots) {
5572
- const fn = i.slots[key];
5573
- if (!fn._ns) {
5574
- res[key] = fn;
5575
- }
5576
- }
5577
- return res;
5570
+ return shallowReadonly(i.slots) ;
5578
5571
  },
5579
5572
  $on: (i) => on.bind(null, i),
5580
5573
  $once: (i) => once.bind(null, i),
@@ -6545,7 +6538,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6545
6538
  return vm;
6546
6539
  }
6547
6540
  }
6548
- Vue.version = `2.6.14-compat:${"3.4.26"}`;
6541
+ Vue.version = `2.6.14-compat:${"3.4.27"}`;
6549
6542
  Vue.config = singletonApp.config;
6550
6543
  Vue.use = (plugin, ...options) => {
6551
6544
  if (plugin && isFunction(plugin.install)) {
@@ -8283,7 +8276,7 @@ function propHasMismatch(el, key, clientValue, vnode, instance) {
8283
8276
  mismatchType = mismatchKey = `class`;
8284
8277
  }
8285
8278
  } else if (key === "style") {
8286
- actual = el.getAttribute("style");
8279
+ actual = el.getAttribute("style") || "";
8287
8280
  expected = isString(clientValue) ? clientValue : stringifyStyle(normalizeStyle(clientValue));
8288
8281
  const actualMap = toStyleMap(actual);
8289
8282
  const expectedMap = toStyleMap(expected);
@@ -11378,7 +11371,7 @@ function isMemoSame(cached, memo) {
11378
11371
  return true;
11379
11372
  }
11380
11373
 
11381
- const version = "3.4.26";
11374
+ const version = "3.4.27";
11382
11375
  const warn = warn$1 ;
11383
11376
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
11384
11377
  const devtools = devtools$1 ;
@@ -17949,7 +17942,7 @@ function processSlotOutlet(node, context) {
17949
17942
  };
17950
17943
  }
17951
17944
 
17952
- const fnExpRE = /^\s*([\w$_]+|(async\s*)?\([^)]*?\))\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/;
17945
+ const fnExpRE = /^\s*(async\s*)?(\([^)]*?\)|[\w$_]+)\s*(:[^=]+)?=>|^\s*(async\s+)?function(?:\s+[\w$]+)?\s*\(/;
17953
17946
  const transformOn$1 = (dir, node, context, augmentor) => {
17954
17947
  const { loc, modifiers, arg } = dir;
17955
17948
  if (!dir.exp && !modifiers.length) {