@vue/compat 3.4.0-beta.4 → 3.4.0-rc.1

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
@@ -6557,7 +6557,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6557
6557
  return vm;
6558
6558
  }
6559
6559
  }
6560
- Vue.version = `2.6.14-compat:${"3.4.0-beta.4"}`;
6560
+ Vue.version = `2.6.14-compat:${"3.4.0-rc.1"}`;
6561
6561
  Vue.config = singletonApp.config;
6562
6562
  Vue.use = (p, ...options) => {
6563
6563
  if (p && isFunction(p.install)) {
@@ -8285,9 +8285,9 @@ function propHasMismatch(el, key, clientValue) {
8285
8285
  let actual;
8286
8286
  let expected;
8287
8287
  if (key === "class") {
8288
- actual = el.getAttribute("class");
8289
- expected = normalizeClass(clientValue);
8290
- if (actual !== expected) {
8288
+ actual = toClassSet(el.getAttribute("class") || "");
8289
+ expected = toClassSet(normalizeClass(clientValue));
8290
+ if (!isSetEqual(actual, expected)) {
8291
8291
  mismatchType = mismatchKey = `class`;
8292
8292
  }
8293
8293
  } else if (key === "style") {
@@ -8319,6 +8319,20 @@ function propHasMismatch(el, key, clientValue) {
8319
8319
  }
8320
8320
  return false;
8321
8321
  }
8322
+ function toClassSet(str) {
8323
+ return new Set(str.trim().split(/\s+/));
8324
+ }
8325
+ function isSetEqual(a, b) {
8326
+ if (a.size !== b.size) {
8327
+ return false;
8328
+ }
8329
+ for (const s of a) {
8330
+ if (!b.has(s)) {
8331
+ return false;
8332
+ }
8333
+ }
8334
+ return true;
8335
+ }
8322
8336
 
8323
8337
  let supported;
8324
8338
  let perf;
@@ -11278,7 +11292,7 @@ function isMemoSame(cached, memo) {
11278
11292
  return true;
11279
11293
  }
11280
11294
 
11281
- const version = "3.4.0-beta.4";
11295
+ const version = "3.4.0-rc.1";
11282
11296
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
11283
11297
  const _ssrUtils = {
11284
11298
  createComponentInstance,
@@ -14948,12 +14962,6 @@ const tokenizer = new Tokenizer(stack, {
14948
14962
  loc: getLoc(start - 1, end),
14949
14963
  codegenNode: void 0
14950
14964
  };
14951
- if (tokenizer.inSFCRoot) {
14952
- currentOpenTag.innerLoc = getLoc(
14953
- end + fastForward(end) + 1,
14954
- end
14955
- );
14956
- }
14957
14965
  },
14958
14966
  onopentagend(end) {
14959
14967
  endOpenTag(end);
@@ -15281,6 +15289,9 @@ function getSlice(start, end) {
15281
15289
  return currentInput.slice(start, end);
15282
15290
  }
15283
15291
  function endOpenTag(end) {
15292
+ if (tokenizer.inSFCRoot) {
15293
+ currentOpenTag.innerLoc = getLoc(end + 1, end + 1);
15294
+ }
15284
15295
  addNode(currentOpenTag);
15285
15296
  const { tag, ns } = currentOpenTag;
15286
15297
  if (ns === 0 && currentOptions.isPreTag(tag)) {
@@ -15314,7 +15325,7 @@ function onCloseTag(el, end, isImplied = false) {
15314
15325
  if (isImplied) {
15315
15326
  setLocEnd(el.loc, backTrack(end, 60));
15316
15327
  } else {
15317
- setLocEnd(el.loc, end + fastForward(end) + 1);
15328
+ setLocEnd(el.loc, end + 1);
15318
15329
  }
15319
15330
  if (tokenizer.inSFCRoot) {
15320
15331
  if (el.children.length) {
@@ -15409,13 +15420,6 @@ function onCloseTag(el, end, isImplied = false) {
15409
15420
  }
15410
15421
  }
15411
15422
  }
15412
- function fastForward(start, c) {
15413
- let offset = 0;
15414
- while (currentInput.charCodeAt(start + offset) !== 62 && start + offset < currentInput.length) {
15415
- offset++;
15416
- }
15417
- return offset;
15418
- }
15419
15423
  function backTrack(index, c) {
15420
15424
  let i = index;
15421
15425
  while (currentInput.charCodeAt(i) !== c && i >= 0)
@@ -5254,7 +5254,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
5254
5254
  return vm;
5255
5255
  }
5256
5256
  }
5257
- Vue.version = `2.6.14-compat:${"3.4.0-beta.4"}`;
5257
+ Vue.version = `2.6.14-compat:${"3.4.0-rc.1"}`;
5258
5258
  Vue.config = singletonApp.config;
5259
5259
  Vue.use = (p, ...options) => {
5260
5260
  if (p && isFunction(p.install)) {
@@ -9063,7 +9063,7 @@ function isMemoSame(cached, memo) {
9063
9063
  return true;
9064
9064
  }
9065
9065
 
9066
- const version = "3.4.0-beta.4";
9066
+ const version = "3.4.0-rc.1";
9067
9067
  const ErrorTypeStrings = null;
9068
9068
  const _ssrUtils = {
9069
9069
  createComponentInstance,
@@ -12557,12 +12557,6 @@ const tokenizer = new Tokenizer(stack, {
12557
12557
  loc: getLoc(start - 1, end),
12558
12558
  codegenNode: void 0
12559
12559
  };
12560
- if (tokenizer.inSFCRoot) {
12561
- currentOpenTag.innerLoc = getLoc(
12562
- end + fastForward(end) + 1,
12563
- end
12564
- );
12565
- }
12566
12560
  },
12567
12561
  onopentagend(end) {
12568
12562
  endOpenTag(end);
@@ -12890,6 +12884,9 @@ function getSlice(start, end) {
12890
12884
  return currentInput.slice(start, end);
12891
12885
  }
12892
12886
  function endOpenTag(end) {
12887
+ if (tokenizer.inSFCRoot) {
12888
+ currentOpenTag.innerLoc = getLoc(end + 1, end + 1);
12889
+ }
12893
12890
  addNode(currentOpenTag);
12894
12891
  const { tag, ns } = currentOpenTag;
12895
12892
  if (ns === 0 && currentOptions.isPreTag(tag)) {
@@ -12923,7 +12920,7 @@ function onCloseTag(el, end, isImplied = false) {
12923
12920
  if (isImplied) {
12924
12921
  setLocEnd(el.loc, backTrack(end, 60));
12925
12922
  } else {
12926
- setLocEnd(el.loc, end + fastForward(end) + 1);
12923
+ setLocEnd(el.loc, end + 1);
12927
12924
  }
12928
12925
  if (tokenizer.inSFCRoot) {
12929
12926
  if (el.children.length) {
@@ -12988,13 +12985,6 @@ function onCloseTag(el, end, isImplied = false) {
12988
12985
  }
12989
12986
  }
12990
12987
  }
12991
- function fastForward(start, c) {
12992
- let offset = 0;
12993
- while (currentInput.charCodeAt(start + offset) !== 62 && start + offset < currentInput.length) {
12994
- offset++;
12995
- }
12996
- return offset;
12997
- }
12998
12988
  function backTrack(index, c) {
12999
12989
  let i = index;
13000
12990
  while (currentInput.charCodeAt(i) !== c && i >= 0)
@@ -6479,7 +6479,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6479
6479
  return vm;
6480
6480
  }
6481
6481
  }
6482
- Vue.version = `2.6.14-compat:${"3.4.0-beta.4"}`;
6482
+ Vue.version = `2.6.14-compat:${"3.4.0-rc.1"}`;
6483
6483
  Vue.config = singletonApp.config;
6484
6484
  Vue.use = (p, ...options) => {
6485
6485
  if (p && isFunction(p.install)) {
@@ -8207,9 +8207,9 @@ function propHasMismatch(el, key, clientValue) {
8207
8207
  let actual;
8208
8208
  let expected;
8209
8209
  if (key === "class") {
8210
- actual = el.getAttribute("class");
8211
- expected = normalizeClass(clientValue);
8212
- if (actual !== expected) {
8210
+ actual = toClassSet(el.getAttribute("class") || "");
8211
+ expected = toClassSet(normalizeClass(clientValue));
8212
+ if (!isSetEqual(actual, expected)) {
8213
8213
  mismatchType = mismatchKey = `class`;
8214
8214
  }
8215
8215
  } else if (key === "style") {
@@ -8241,6 +8241,20 @@ function propHasMismatch(el, key, clientValue) {
8241
8241
  }
8242
8242
  return false;
8243
8243
  }
8244
+ function toClassSet(str) {
8245
+ return new Set(str.trim().split(/\s+/));
8246
+ }
8247
+ function isSetEqual(a, b) {
8248
+ if (a.size !== b.size) {
8249
+ return false;
8250
+ }
8251
+ for (const s of a) {
8252
+ if (!b.has(s)) {
8253
+ return false;
8254
+ }
8255
+ }
8256
+ return true;
8257
+ }
8244
8258
 
8245
8259
  let supported;
8246
8260
  let perf;
@@ -11183,7 +11197,7 @@ function isMemoSame(cached, memo) {
11183
11197
  return true;
11184
11198
  }
11185
11199
 
11186
- const version = "3.4.0-beta.4";
11200
+ const version = "3.4.0-rc.1";
11187
11201
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
11188
11202
  const ssrUtils = null;
11189
11203
  const resolveFilter = resolveFilter$1 ;
@@ -14519,12 +14533,6 @@ const tokenizer = new Tokenizer(stack, {
14519
14533
  loc: getLoc(start - 1, end),
14520
14534
  codegenNode: void 0
14521
14535
  };
14522
- if (tokenizer.inSFCRoot) {
14523
- currentOpenTag.innerLoc = getLoc(
14524
- end + fastForward(end) + 1,
14525
- end
14526
- );
14527
- }
14528
14536
  },
14529
14537
  onopentagend(end) {
14530
14538
  endOpenTag(end);
@@ -14849,6 +14857,9 @@ function getSlice(start, end) {
14849
14857
  return currentInput.slice(start, end);
14850
14858
  }
14851
14859
  function endOpenTag(end) {
14860
+ if (tokenizer.inSFCRoot) {
14861
+ currentOpenTag.innerLoc = getLoc(end + 1, end + 1);
14862
+ }
14852
14863
  addNode(currentOpenTag);
14853
14864
  const { tag, ns } = currentOpenTag;
14854
14865
  if (ns === 0 && currentOptions.isPreTag(tag)) {
@@ -14889,7 +14900,7 @@ function onCloseTag(el, end, isImplied = false) {
14889
14900
  if (isImplied) {
14890
14901
  setLocEnd(el.loc, backTrack(end, 60));
14891
14902
  } else {
14892
- setLocEnd(el.loc, end + fastForward(end) + 1);
14903
+ setLocEnd(el.loc, end + 1);
14893
14904
  }
14894
14905
  if (tokenizer.inSFCRoot) {
14895
14906
  if (el.children.length) {
@@ -14984,13 +14995,6 @@ function onCloseTag(el, end, isImplied = false) {
14984
14995
  }
14985
14996
  }
14986
14997
  }
14987
- function fastForward(start, c) {
14988
- let offset = 0;
14989
- while (currentInput.charCodeAt(start + offset) !== 62 && start + offset < currentInput.length) {
14990
- offset++;
14991
- }
14992
- return offset;
14993
- }
14994
14998
  function backTrack(index, c) {
14995
14999
  let i = index;
14996
15000
  while (currentInput.charCodeAt(i) !== c && i >= 0)