@dcloudio/uni-cli-shared 3.0.0-5020320260806002 → 3.0.0-5020420260811002

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.
Files changed (46) hide show
  1. package/dist/resolve.d.ts +8 -0
  2. package/dist/resolve.js +78 -2
  3. package/lib/dom2/@intlify/core-base/LICENSE +20 -0
  4. package/lib/dom2/@intlify/core-base/dist/core-base.mjs +1903 -0
  5. package/lib/dom2/@intlify/core-base/package.json +11 -0
  6. package/lib/dom2/@intlify/message-compiler/LICENSE +20 -0
  7. package/lib/dom2/@intlify/message-compiler/dist/message-compiler.mjs +1550 -0
  8. package/lib/dom2/@intlify/message-compiler/package.json +11 -0
  9. package/lib/dom2/@intlify/shared/LICENSE +20 -0
  10. package/lib/dom2/@intlify/shared/dist/shared.mjs +333 -0
  11. package/lib/dom2/@intlify/shared/package.json +11 -0
  12. package/lib/dom2/@vue/devtools-api/LICENSE +21 -0
  13. package/lib/dom2/@vue/devtools-api/dist/index.js +26 -0
  14. package/lib/dom2/@vue/devtools-api/package.json +12 -0
  15. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.cjs.js +71 -68
  16. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.cjs.prod.js +71 -68
  17. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.d.ts +2 -20
  18. package/lib/dom2/app/@vue/compiler-core/dist/compiler-core.esm-bundler.js +53 -29
  19. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.cjs.js +23 -12
  20. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +22 -12
  21. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-browser.js +80 -30
  22. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-browser.prod.js +5 -5
  23. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.esm-bundler.js +20 -3
  24. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.global.js +369 -317
  25. package/lib/dom2/app/@vue/compiler-dom/dist/compiler-dom.global.prod.js +5 -5
  26. package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.cjs.js +2032 -5522
  27. package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.d.ts +11114 -33
  28. package/lib/dom2/app/@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js +2825 -4668
  29. package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.cjs.js +905 -2413
  30. package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.d.ts +378 -544
  31. package/lib/dom2/app/@vue/compiler-vapor/dist/compiler-vapor.esm-browser.js +998 -2549
  32. package/lib/dom2/app/@vue/compiler-vapor-dom2/dist/compiler-vapor-dom2.cjs.js +1 -1
  33. package/lib/dom2/app/@vue/shared/dist/shared.cjs.js +26 -92
  34. package/lib/dom2/app/@vue/shared/dist/shared.cjs.prod.js +26 -92
  35. package/lib/dom2/app/@vue/shared/dist/shared.d.ts +2 -94
  36. package/lib/dom2/app/@vue/shared/dist/shared.esm-bundler.js +24 -83
  37. package/lib/dom2/pinia/LICENSE +21 -0
  38. package/lib/dom2/pinia/dist/pinia.mjs +1941 -0
  39. package/lib/dom2/pinia/package.json +11 -0
  40. package/lib/dom2/vue-i18n/LICENSE +20 -0
  41. package/lib/dom2/vue-i18n/dist/vue-i18n.esm-bundler.js +1 -0
  42. package/lib/dom2/vue-i18n/dist/vue-i18n.mjs +2501 -0
  43. package/lib/dom2/vue-i18n/dist/vue-i18n.runtime.esm-bundler.js +1 -0
  44. package/lib/dom2/vue-i18n/dist/vue-i18n.runtime.mjs +2501 -0
  45. package/lib/dom2/vue-i18n/package.json +12 -0
  46. package/package.json +5 -5
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compiler-dom v3.6.0-beta.17
2
+ * @vue/compiler-dom v3.6.0-beta.5
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -17,10 +17,11 @@ function makeMap(str) {
17
17
  for (const key of str.split(",")) map[key] = 1;
18
18
  return (val) => val in map;
19
19
  }
20
+
20
21
  //#endregion
21
22
  //#region packages/shared/src/general.ts
22
23
  const EMPTY_OBJ = Object.freeze({});
23
- Object.freeze([]);
24
+ const EMPTY_ARR = Object.freeze([]);
24
25
  const NOOP = () => {};
25
26
  /**
26
27
  * Always return false.
@@ -46,6 +47,11 @@ const camelizeReplacer = (_, c) => c ? c.toUpperCase() : "";
46
47
  * @private
47
48
  */
48
49
  const camelize = cacheStringFunction((str) => str.replace(camelizeRE, camelizeReplacer));
50
+ const hyphenateRE = /\B([A-Z])/g;
51
+ /**
52
+ * @private
53
+ */
54
+ const hyphenate = cacheStringFunction((str) => str.replace(hyphenateRE, "-$1").toLowerCase());
49
55
  /**
50
56
  * @private
51
57
  */
@@ -67,6 +73,7 @@ const toHandlerKey = cacheStringFunction((str) => {
67
73
  const getModifierPropName = (name) => {
68
74
  return `${name === "modelValue" || name === "model-value" ? "model" : name}Modifiers${name === "model" ? "$" : ""}`;
69
75
  };
76
+
70
77
  //#endregion
71
78
  //#region packages/shared/src/patchFlags.ts
72
79
  /**
@@ -88,6 +95,7 @@ const PatchFlagNames = {
88
95
  [-1]: `CACHED`,
89
96
  [-2]: `BAIL`
90
97
  };
98
+
91
99
  //#endregion
92
100
  //#region packages/shared/src/slotFlags.ts
93
101
  /**
@@ -98,6 +106,7 @@ const slotFlagsText = {
98
106
  [2]: "DYNAMIC",
99
107
  [3]: "FORWARDED"
100
108
  };
109
+
101
110
  //#endregion
102
111
  //#region packages/shared/src/codeframe.ts
103
112
  const range = 2;
@@ -136,6 +145,7 @@ function generateCodeFrame(source, start = 0, end = source.length) {
136
145
  }
137
146
  return res.join("\n");
138
147
  }
148
+
139
149
  //#endregion
140
150
  //#region packages/shared/src/normalizeProp.ts
141
151
  const listDelimiterRE = /;(?![^(]*\))/g;
@@ -151,6 +161,7 @@ function parseStringStyle(cssText) {
151
161
  });
152
162
  return ret;
153
163
  }
164
+
154
165
  //#endregion
155
166
  //#region packages/shared/src/domTagConfig.ts
156
167
  const HTML_TAGS = "html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot";
@@ -177,6 +188,7 @@ const isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS);
177
188
  * Do NOT use in runtime code paths unless behind `__DEV__` flag.
178
189
  */
179
190
  const isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);
191
+
180
192
  //#endregion
181
193
  //#region packages/compiler-core/src/runtimeHelpers.ts
182
194
  const FRAGMENT = Symbol(`Fragment`);
@@ -271,6 +283,7 @@ function registerRuntimeHelpers(helpers) {
271
283
  helperNameMap[s] = helpers[s];
272
284
  });
273
285
  }
286
+
274
287
  //#endregion
275
288
  //#region packages/compiler-core/src/ast.ts
276
289
  const NodeTypes = {
@@ -548,6 +561,7 @@ function convertToBlock(node, { helper, removeHelper, inSSR }) {
548
561
  helper(getVNodeBlockHelper(inSSR, node.isComponent));
549
562
  }
550
563
  }
564
+
551
565
  //#endregion
552
566
  //#region packages/compiler-core/src/tokenizer.ts
553
567
  const defaultDelimitersOpen = new Uint8Array([123, 123]);
@@ -1256,6 +1270,7 @@ var Tokenizer = class {
1256
1270
  }
1257
1271
  emitCodePoint(cp, consumed) {}
1258
1272
  };
1273
+
1259
1274
  //#endregion
1260
1275
  //#region packages/compiler-core/src/compat/compatConfig.ts
1261
1276
  const CompilerDeprecationTypes = {
@@ -1323,6 +1338,7 @@ function warnDeprecation(key, context, loc, ...args) {
1323
1338
  if (loc) err.loc = loc;
1324
1339
  context.onWarn(err);
1325
1340
  }
1341
+
1326
1342
  //#endregion
1327
1343
  //#region packages/compiler-core/src/errors.ts
1328
1344
  function defaultOnError(error) {
@@ -1507,6 +1523,7 @@ const errorMessages = {
1507
1523
  [51]: `"scopeId" option is only supported in module mode.`,
1508
1524
  [54]: ``
1509
1525
  };
1526
+
1510
1527
  //#endregion
1511
1528
  //#region packages/compiler-core/src/babelUtils.ts
1512
1529
  /**
@@ -1644,6 +1661,7 @@ function isConstantNode(node, bindings) {
1644
1661
  }
1645
1662
  return false;
1646
1663
  }
1664
+
1647
1665
  //#endregion
1648
1666
  //#region packages/compiler-core/src/utils.ts
1649
1667
  const isStaticExp = (p) => p.type === 4 && p.isStatic;
@@ -1680,7 +1698,7 @@ const getExpSource = (exp) => exp.type === 4 ? exp.content : exp.loc.source;
1680
1698
  */
1681
1699
  const isMemberExpressionBrowser = (exp) => {
1682
1700
  const path = getExpSource(exp).trim().replace(whitespaceRE, (s) => s.trim());
1683
- let state = 0;
1701
+ let state = MemberExpLexState.inMemberExp;
1684
1702
  let stateStack = [];
1685
1703
  let currentOpenBracketCount = 0;
1686
1704
  let currentOpenParensCount = 0;
@@ -1688,31 +1706,31 @@ const isMemberExpressionBrowser = (exp) => {
1688
1706
  for (let i = 0; i < path.length; i++) {
1689
1707
  const char = path.charAt(i);
1690
1708
  switch (state) {
1691
- case 0:
1709
+ case MemberExpLexState.inMemberExp:
1692
1710
  if (char === "[") {
1693
1711
  stateStack.push(state);
1694
- state = 1;
1712
+ state = MemberExpLexState.inBrackets;
1695
1713
  currentOpenBracketCount++;
1696
1714
  } else if (char === "(") {
1697
1715
  stateStack.push(state);
1698
- state = 2;
1716
+ state = MemberExpLexState.inParens;
1699
1717
  currentOpenParensCount++;
1700
1718
  } else if (!(i === 0 ? validFirstIdentCharRE : validIdentCharRE).test(char)) return false;
1701
1719
  break;
1702
- case 1:
1720
+ case MemberExpLexState.inBrackets:
1703
1721
  if (char === `'` || char === `"` || char === "`") {
1704
1722
  stateStack.push(state);
1705
- state = 3;
1723
+ state = MemberExpLexState.inString;
1706
1724
  currentStringType = char;
1707
1725
  } else if (char === `[`) currentOpenBracketCount++;
1708
1726
  else if (char === `]`) {
1709
1727
  if (!--currentOpenBracketCount) state = stateStack.pop();
1710
1728
  }
1711
1729
  break;
1712
- case 2:
1730
+ case MemberExpLexState.inParens:
1713
1731
  if (char === `'` || char === `"` || char === "`") {
1714
1732
  stateStack.push(state);
1715
- state = 3;
1733
+ state = MemberExpLexState.inString;
1716
1734
  currentStringType = char;
1717
1735
  } else if (char === `(`) currentOpenParensCount++;
1718
1736
  else if (char === `)`) {
@@ -1720,7 +1738,7 @@ const isMemberExpressionBrowser = (exp) => {
1720
1738
  if (!--currentOpenParensCount) state = stateStack.pop();
1721
1739
  }
1722
1740
  break;
1723
- case 3:
1741
+ case MemberExpLexState.inString:
1724
1742
  if (char === currentStringType) {
1725
1743
  state = stateStack.pop();
1726
1744
  currentStringType = null;
@@ -1911,6 +1929,7 @@ function isWhitespaceText(node) {
1911
1929
  function isCommentOrWhitespace(node) {
1912
1930
  return node.type === 3 || isWhitespaceText(node);
1913
1931
  }
1932
+
1914
1933
  //#endregion
1915
1934
  //#region packages/compiler-core/src/parser.ts
1916
1935
  const defaultParserOptions = {
@@ -2092,7 +2111,8 @@ const tokenizer = new Tokenizer(stack, {
2092
2111
  };
2093
2112
  if (tokenizer.inSFCRoot && currentOpenTag.tag === "template" && currentProp.name === "lang" && currentAttrValue && currentAttrValue !== "html") tokenizer.enterRCDATA(toCharCodes(`</template`), 0);
2094
2113
  } else {
2095
- currentProp.exp = createExp(currentAttrValue, false, getLoc(currentAttrStartIndex, currentAttrEndIndex), 0, 0);
2114
+ let expParseMode = ExpParseMode.Normal;
2115
+ currentProp.exp = createExp(currentAttrValue, false, getLoc(currentAttrStartIndex, currentAttrEndIndex), 0, expParseMode);
2096
2116
  if (currentProp.name === "for") currentProp.forParseResult = parseForExpression(currentProp.exp);
2097
2117
  let syncIndex = -1;
2098
2118
  if (currentProp.name === "bind" && (syncIndex = currentProp.modifiers.findIndex((mod) => mod.content === "sync")) > -1 && checkCompatEnabled("COMPILER_V_BIND_SYNC", currentOptions, currentProp.loc, currentProp.arg.loc.source)) {
@@ -2152,7 +2172,7 @@ const tokenizer = new Tokenizer(stack, {
2152
2172
  }
2153
2173
  },
2154
2174
  oncdata(start, end) {
2155
- if ((stack[0] ? stack[0].ns : currentOptions.ns) !== 0) onText(getSlice(start, end), start, end);
2175
+ if (stack[0].ns !== 0) onText(getSlice(start, end), start, end);
2156
2176
  else emitError(1, start - 9);
2157
2177
  },
2158
2178
  onprocessinginstruction(start) {
@@ -2169,7 +2189,7 @@ function parseForExpression(input) {
2169
2189
  const [, LHS, RHS] = inMatch;
2170
2190
  const createAliasExpression = (content, offset, asParam = false) => {
2171
2191
  const start = loc.start.offset + offset;
2172
- return createExp(content, false, getLoc(start, start + content.length), 0, asParam ? 1 : 0);
2192
+ return createExp(content, false, getLoc(start, start + content.length), 0, asParam ? ExpParseMode.Params : ExpParseMode.Normal);
2173
2193
  };
2174
2194
  const result = {
2175
2195
  source: createAliasExpression(RHS.trim(), exp.indexOf(RHS, LHS.length)),
@@ -2412,7 +2432,7 @@ var ExpParseMode = /* @__PURE__ */ function(ExpParseMode) {
2412
2432
  ExpParseMode[ExpParseMode["Skip"] = 3] = "Skip";
2413
2433
  return ExpParseMode;
2414
2434
  }(ExpParseMode || {});
2415
- function createExp(content, isStatic = false, loc, constType = 0, parseMode = 0) {
2435
+ function createExp(content, isStatic = false, loc, constType = 0, parseMode = ExpParseMode.Normal) {
2416
2436
  return createSimpleExpression(content, isStatic, loc, constType);
2417
2437
  }
2418
2438
  function emitError(code, index, message) {
@@ -2450,6 +2470,7 @@ function baseParse(input, options) {
2450
2470
  currentRoot = null;
2451
2471
  return root;
2452
2472
  }
2473
+
2453
2474
  //#endregion
2454
2475
  //#region packages/compiler-core/src/transforms/cacheStatic.ts
2455
2476
  function cacheStatic(root, context) {
@@ -2645,6 +2666,7 @@ function getNodeProps(node) {
2645
2666
  const codegenNode = node.codegenNode;
2646
2667
  if (codegenNode.type === 13) return codegenNode.props;
2647
2668
  }
2669
+
2648
2670
  //#endregion
2649
2671
  //#region packages/compiler-core/src/transform.ts
2650
2672
  function getSelfName(filename) {
@@ -2653,7 +2675,7 @@ function getSelfName(filename) {
2653
2675
  }
2654
2676
  function createTransformContext(root, { filename = "", prefixIdentifiers = false, hoistStatic = false, hmr = false, cacheHandlers = false, nodeTransforms = [], directiveTransforms = {}, transformHoist = null, isBuiltInComponent = NOOP, isCustomElement = NOOP, isUserComponent = (element) => {
2655
2677
  return element.tagType === 1;
2656
- }, expressionPlugins = [], scopeId = null, slotted = true, ssr = false, inSSR = false, ssrCssVars = ``, bindingMetadata = EMPTY_OBJ, inline = false, isTS = false, eventDelegation = true, onError = defaultOnError, onWarn = defaultOnWarn, compatConfig }) {
2678
+ }, expressionPlugins = [], scopeId = null, slotted = true, ssr = false, inSSR = false, ssrCssVars = ``, bindingMetadata = EMPTY_OBJ, inline = false, isTS = false, onError = defaultOnError, onWarn = defaultOnWarn, compatConfig }) {
2657
2679
  const context = {
2658
2680
  filename,
2659
2681
  selfName: getSelfName(filename),
@@ -2676,7 +2698,6 @@ function createTransformContext(root, { filename = "", prefixIdentifiers = false
2676
2698
  bindingMetadata,
2677
2699
  inline,
2678
2700
  isTS,
2679
- eventDelegation,
2680
2701
  onError,
2681
2702
  onWarn,
2682
2703
  compatConfig,
@@ -2688,10 +2709,8 @@ function createTransformContext(root, { filename = "", prefixIdentifiers = false
2688
2709
  imports: [],
2689
2710
  cached: [],
2690
2711
  constantCache: /* @__PURE__ */ new WeakMap(),
2691
- vForMemoKeyedNodes: /* @__PURE__ */ new WeakSet(),
2692
2712
  temps: 0,
2693
2713
  identifiers: Object.create(null),
2694
- identifierScopes: Object.create(null),
2695
2714
  scopes: {
2696
2715
  vFor: 0,
2697
2716
  vSlot: 0,
@@ -2742,12 +2761,8 @@ function createTransformContext(root, { filename = "", prefixIdentifiers = false
2742
2761
  context.parent.children.splice(removalIndex, 1);
2743
2762
  },
2744
2763
  onNodeRemoved: NOOP,
2745
- addIdentifiers(exp, type = "local") {},
2764
+ addIdentifiers(exp) {},
2746
2765
  removeIdentifiers(exp) {},
2747
- isSlotScopeIdentifier(name) {
2748
- const scopes = context.identifierScopes[name];
2749
- return scopes ? scopes[scopes.length - 1] === "slot" : false;
2750
- },
2751
2766
  hoist(exp) {
2752
2767
  if (isString(exp)) exp = createSimpleExpression(exp);
2753
2768
  context.hoists.push(exp);
@@ -2862,6 +2877,7 @@ function createStructuralDirectiveTransform(name, fn) {
2862
2877
  }
2863
2878
  };
2864
2879
  }
2880
+
2865
2881
  //#endregion
2866
2882
  //#region packages/compiler-core/src/codegen.ts
2867
2883
  const PURE_ANNOTATION = `/*@__PURE__*/`;
@@ -3111,7 +3127,6 @@ function genNode(node, context) {
3111
3127
  case 24: break;
3112
3128
  case 25: break;
3113
3129
  case 26: break;
3114
- /* v8 ignore start */
3115
3130
  case 10: break;
3116
3131
  default:
3117
3132
  assert(false, `unhandled codegen node type: ${node.type}`);
@@ -3297,6 +3312,7 @@ function genCacheExpression(node, context) {
3297
3312
  push(`)`);
3298
3313
  if (needArraySpread) push(`)]`);
3299
3314
  }
3315
+
3300
3316
  //#endregion
3301
3317
  //#region packages/compiler-core/src/validateExpression.ts
3302
3318
  const prohibitedKeywordRE = new RegExp("\\b" + "arguments,await,break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,let,new,return,super,switch,throw,try,var,void,while,with,yield".split(",").join("\\b|\\b") + "\\b");
@@ -3318,6 +3334,7 @@ function validateBrowserExpression(node, context, asParams = false, asRawStateme
3318
3334
  context.onError(createCompilerError(46, node.loc, void 0, message));
3319
3335
  }
3320
3336
  }
3337
+
3321
3338
  //#endregion
3322
3339
  //#region packages/compiler-core/src/transforms/transformExpression.ts
3323
3340
  const isLiteralWhitelisted = /* @__PURE__ */ makeMap("true,false,null,this");
@@ -3330,7 +3347,7 @@ const transformExpression = (node, context) => {
3330
3347
  if (dir.type === 7 && dir.name !== "for") {
3331
3348
  const exp = dir.exp;
3332
3349
  const arg = dir.arg;
3333
- if (exp && exp.type === 4 && !(dir.name === "on" && arg) && !(memo && context.vForMemoKeyedNodes.has(node) && arg && arg.type === 4 && arg.content === "key")) dir.exp = processExpression(exp, context, dir.name === "slot");
3350
+ if (exp && exp.type === 4 && !(dir.name === "on" && arg) && !(memo && arg && arg.type === 4 && arg.content === "key")) dir.exp = processExpression(exp, context, dir.name === "slot");
3334
3351
  if (arg && arg.type === 4 && !arg.isStatic) dir.arg = processExpression(arg, context);
3335
3352
  }
3336
3353
  }
@@ -3345,6 +3362,7 @@ function stringifyExpression(exp) {
3345
3362
  else if (exp.type === 4) return exp.content;
3346
3363
  else return exp.children.map(stringifyExpression).join("");
3347
3364
  }
3365
+
3348
3366
  //#endregion
3349
3367
  //#region packages/compiler-core/src/transforms/vIf.ts
3350
3368
  const transformIf = createStructuralDirectiveTransform(/^(?:if|else|else-if)$/, (node, dir, context) => {
@@ -3467,6 +3485,7 @@ function getParentCondition(node) {
3467
3485
  else return node;
3468
3486
  else if (node.type === 20) node = node.value;
3469
3487
  }
3488
+
3470
3489
  //#endregion
3471
3490
  //#region packages/compiler-core/src/transforms/vFor.ts
3472
3491
  const transformFor = createStructuralDirectiveTransform("for", (node, dir, context) => {
@@ -3476,9 +3495,10 @@ const transformFor = createStructuralDirectiveTransform("for", (node, dir, conte
3476
3495
  const isTemplate = isTemplateNode(node);
3477
3496
  const memo = findDir(node, "memo");
3478
3497
  const keyProp = findProp(node, `key`, false, true);
3479
- keyProp && keyProp.type;
3498
+ const isDirKey = keyProp && keyProp.type === 7;
3480
3499
  let keyExp = keyProp && (keyProp.type === 6 ? keyProp.value ? createSimpleExpression(keyProp.value.content, true) : void 0 : keyProp.exp);
3481
- const keyProperty = keyExp ? createObjectProperty(`key`, keyExp) : null;
3500
+ if (memo && keyExp && isDirKey) {}
3501
+ const keyProperty = keyProp && keyExp ? createObjectProperty(`key`, keyExp) : null;
3482
3502
  const isStableFragment = forNode.source.type === 4 && forNode.source.constType > 0;
3483
3503
  const fragmentFlag = isStableFragment ? 64 : keyProp ? 128 : 256;
3484
3504
  forNode.codegenNode = createVNodeCall(context, helper(FRAGMENT), void 0, renderExp, fragmentFlag, void 0, void 0, true, !isStableFragment, false, node.loc);
@@ -3522,7 +3542,7 @@ const transformFor = createStructuralDirectiveTransform("for", (node, dir, conte
3522
3542
  `)`
3523
3543
  ]),
3524
3544
  createCompoundExpression([
3525
- `if (_cached && _cached.el`,
3545
+ `if (_cached`,
3526
3546
  ...keyExp ? [` && _cached.key === `, keyExp] : [],
3527
3547
  ` && ${context.helperString(IS_MEMO_SAME)}(_cached, _memo)) return _cached`
3528
3548
  ]),
@@ -3588,6 +3608,7 @@ function createParamsList(args) {
3588
3608
  while (i--) if (args[i]) break;
3589
3609
  return args.slice(0, i + 1).map((arg, i) => arg || createSimpleExpression(`_`.repeat(i + 1), false));
3590
3610
  }
3611
+
3591
3612
  //#endregion
3592
3613
  //#region packages/compiler-core/src/transforms/vSlot.ts
3593
3614
  const defaultFallback = createSimpleExpression(`undefined`, false);
@@ -3737,6 +3758,7 @@ function hasForwardedSlots(children) {
3737
3758
  }
3738
3759
  return false;
3739
3760
  }
3761
+
3740
3762
  //#endregion
3741
3763
  //#region packages/compiler-core/src/transforms/transformElement.ts
3742
3764
  const directiveImportMap = /* @__PURE__ */ new WeakMap();
@@ -4029,6 +4051,7 @@ function stringifyDynamicPropNames(props) {
4029
4051
  function isComponentTag(tag) {
4030
4052
  return tag === "component" || tag === "Component";
4031
4053
  }
4054
+
4032
4055
  //#endregion
4033
4056
  //#region packages/compiler-core/src/transforms/transformSlotOutlet.ts
4034
4057
  const transformSlotOutlet = (node, context) => {
@@ -4086,6 +4109,7 @@ function processSlotOutlet(node, context) {
4086
4109
  slotProps
4087
4110
  };
4088
4111
  }
4112
+
4089
4113
  //#endregion
4090
4114
  //#region packages/compiler-core/src/transforms/vOn.ts
4091
4115
  const transformOn = (dir, node, context, augmentor) => {
@@ -4127,6 +4151,7 @@ const transformOn = (dir, node, context, augmentor) => {
4127
4151
  ret.props.forEach((p) => p.key.isHandlerKey = true);
4128
4152
  return ret;
4129
4153
  };
4154
+
4130
4155
  //#endregion
4131
4156
  //#region packages/compiler-core/src/transforms/vBind.ts
4132
4157
  const transformBind = (dir, _node, context) => {
@@ -4158,6 +4183,7 @@ const injectPrefix = (arg, prefix) => {
4158
4183
  arg.children.push(`)`);
4159
4184
  }
4160
4185
  };
4186
+
4161
4187
  //#endregion
4162
4188
  //#region packages/compiler-core/src/transforms/transformText.ts
4163
4189
  const transformText = (node, context) => {
@@ -4200,6 +4226,7 @@ const transformText = (node, context) => {
4200
4226
  }
4201
4227
  };
4202
4228
  };
4229
+
4203
4230
  //#endregion
4204
4231
  //#region packages/compiler-core/src/transforms/vOnce.ts
4205
4232
  const seen$1 = /* @__PURE__ */ new WeakSet();
@@ -4216,6 +4243,7 @@ const transformOnce = (node, context) => {
4216
4243
  };
4217
4244
  }
4218
4245
  };
4246
+
4219
4247
  //#endregion
4220
4248
  //#region packages/compiler-core/src/transforms/vModel.ts
4221
4249
  const transformModel = (dir, node, context) => {
@@ -4258,6 +4286,7 @@ const transformModel = (dir, node, context) => {
4258
4286
  function createTransformProps(props = []) {
4259
4287
  return { props };
4260
4288
  }
4289
+
4261
4290
  //#endregion
4262
4291
  //#region packages/compiler-core/src/compat/transformFilter.ts
4263
4292
  const validDivisionCharRE = /[\w).+\-_$\]]/;
@@ -4371,6 +4400,7 @@ function wrapFilter(exp, filter, context) {
4371
4400
  return `${toValidAssetId(name, "filter")}(${exp}${args !== ")" ? "," + args : args}`;
4372
4401
  }
4373
4402
  }
4403
+
4374
4404
  //#endregion
4375
4405
  //#region packages/compiler-core/src/transforms/vMemo.ts
4376
4406
  const seen = /* @__PURE__ */ new WeakSet();
@@ -4394,6 +4424,7 @@ const transformMemo = (node, context) => {
4394
4424
  };
4395
4425
  }
4396
4426
  };
4427
+
4397
4428
  //#endregion
4398
4429
  //#region packages/compiler-core/src/transforms/transformVBindShorthand.ts
4399
4430
  const transformVBindShorthand = (node, context) => {
@@ -4410,6 +4441,7 @@ const transformVBindShorthand = (node, context) => {
4410
4441
  }
4411
4442
  }
4412
4443
  };
4444
+
4413
4445
  //#endregion
4414
4446
  //#region packages/compiler-core/src/compile.ts
4415
4447
  function getBaseTransformPreset(prefixIdentifiers) {
@@ -4449,6 +4481,7 @@ function baseCompile(source, options = {}) {
4449
4481
  }));
4450
4482
  return generate(ast, resolvedOptions);
4451
4483
  }
4484
+
4452
4485
  //#endregion
4453
4486
  //#region packages/compiler-core/src/options.ts
4454
4487
  const BindingTypes = {
@@ -4463,9 +4496,11 @@ const BindingTypes = {
4463
4496
  "OPTIONS": "options",
4464
4497
  "LITERAL_CONST": "literal-const"
4465
4498
  };
4499
+
4466
4500
  //#endregion
4467
4501
  //#region packages/compiler-core/src/transforms/noopDirectiveTransform.ts
4468
4502
  const noopDirectiveTransform = () => ({ props: [] });
4503
+
4469
4504
  //#endregion
4470
4505
  //#region packages/compiler-dom/src/runtimeHelpers.ts
4471
4506
  const V_MODEL_RADIO = Symbol(`vModelRadio`);
@@ -4490,6 +4525,7 @@ registerRuntimeHelpers({
4490
4525
  [TRANSITION]: `Transition`,
4491
4526
  [TRANSITION_GROUP]: `TransitionGroup`
4492
4527
  });
4528
+
4493
4529
  //#endregion
4494
4530
  //#region packages/compiler-dom/src/decodeHtmlBrowser.ts
4495
4531
  let decoder;
@@ -4503,6 +4539,7 @@ function decodeHtmlBrowser(raw, asAttr = false) {
4503
4539
  return decoder.textContent;
4504
4540
  }
4505
4541
  }
4542
+
4506
4543
  //#endregion
4507
4544
  //#region packages/compiler-dom/src/parserOptions.ts
4508
4545
  const parserOptions = {
@@ -4533,6 +4570,7 @@ const parserOptions = {
4533
4570
  return ns;
4534
4571
  }
4535
4572
  };
4573
+
4536
4574
  //#endregion
4537
4575
  //#region packages/compiler-dom/src/transforms/transformStyle.ts
4538
4576
  const transformStyle = (node) => {
@@ -4551,6 +4589,7 @@ const parseInlineCSS = (cssText, loc) => {
4551
4589
  const normalized = parseStringStyle(cssText);
4552
4590
  return createSimpleExpression(JSON.stringify(normalized), false, loc, 3);
4553
4591
  };
4592
+
4554
4593
  //#endregion
4555
4594
  //#region packages/compiler-dom/src/errors.ts
4556
4595
  function createDOMCompilerError(code, loc) {
@@ -4596,6 +4635,7 @@ const DOMErrorMessages = {
4596
4635
  [64]: `Tags with side effect (<script> and <style>) are ignored in client component templates.`,
4597
4636
  [65]: ``
4598
4637
  };
4638
+
4599
4639
  //#endregion
4600
4640
  //#region packages/compiler-dom/src/transforms/vHtml.ts
4601
4641
  const transformVHtml = (dir, node, context) => {
@@ -4607,6 +4647,7 @@ const transformVHtml = (dir, node, context) => {
4607
4647
  }
4608
4648
  return { props: [createObjectProperty(createSimpleExpression(`innerHTML`, true, loc), exp || createSimpleExpression("", true))] };
4609
4649
  };
4650
+
4610
4651
  //#endregion
4611
4652
  //#region packages/compiler-dom/src/transforms/vText.ts
4612
4653
  const transformVText = (dir, node, context) => {
@@ -4618,6 +4659,7 @@ const transformVText = (dir, node, context) => {
4618
4659
  }
4619
4660
  return { props: [createObjectProperty(createSimpleExpression(`textContent`, true), exp ? getConstantType(exp, context) > 0 ? exp : createCallExpression(context.helperString(TO_DISPLAY_STRING), [exp], loc) : createSimpleExpression("", true))] };
4620
4661
  };
4662
+
4621
4663
  //#endregion
4622
4664
  //#region packages/compiler-dom/src/transforms/vModel.ts
4623
4665
  const transformModel$1 = (dir, node, context) => {
@@ -4661,6 +4703,7 @@ const transformModel$1 = (dir, node, context) => {
4661
4703
  baseResult.props = baseResult.props.filter((p) => !(p.key.type === 4 && p.key.content === "modelValue"));
4662
4704
  return baseResult;
4663
4705
  };
4706
+
4664
4707
  //#endregion
4665
4708
  //#region packages/compiler-dom/src/transforms/vOn.ts
4666
4709
  const isEventOptionModifier = /* @__PURE__ */ makeMap(`passive,once,capture`);
@@ -4723,6 +4766,7 @@ const transformOn$1 = (dir, node, context) => {
4723
4766
  return { props: [createObjectProperty(key, handlerExp)] };
4724
4767
  });
4725
4768
  };
4769
+
4726
4770
  //#endregion
4727
4771
  //#region packages/compiler-dom/src/transforms/vShow.ts
4728
4772
  const transformShow = (dir, node, context) => {
@@ -4733,6 +4777,7 @@ const transformShow = (dir, node, context) => {
4733
4777
  needRuntime: context.helper(V_SHOW)
4734
4778
  };
4735
4779
  };
4780
+
4736
4781
  //#endregion
4737
4782
  //#region packages/compiler-dom/src/transforms/Transition.ts
4738
4783
  const transformTransition = (node, context) => {
@@ -4765,6 +4810,7 @@ function defaultHasMultipleChildren(node) {
4765
4810
  const child = children[0];
4766
4811
  return children.length !== 1 || child.type === 11 || child.type === 9 && child.branches.some(defaultHasMultipleChildren);
4767
4812
  }
4813
+
4768
4814
  //#endregion
4769
4815
  //#region packages/compiler-dom/src/transforms/ignoreSideEffectTags.ts
4770
4816
  const ignoreSideEffectTags = (node, context) => {
@@ -4773,6 +4819,7 @@ const ignoreSideEffectTags = (node, context) => {
4773
4819
  context.removeNode();
4774
4820
  }
4775
4821
  };
4822
+
4776
4823
  //#endregion
4777
4824
  //#region packages/compiler-dom/src/htmlNesting.ts
4778
4825
  /**
@@ -4963,6 +5010,7 @@ const knownInvalidParents = {
4963
5010
  h5: headings,
4964
5011
  h6: headings
4965
5012
  };
5013
+
4966
5014
  //#endregion
4967
5015
  //#region packages/compiler-dom/src/transforms/validateHtmlNesting.ts
4968
5016
  const validateHtmlNesting = (node, context) => {
@@ -4972,6 +5020,7 @@ const validateHtmlNesting = (node, context) => {
4972
5020
  context.onWarn(error);
4973
5021
  }
4974
5022
  };
5023
+
4975
5024
  //#endregion
4976
5025
  //#region packages/compiler-dom/src/index.ts
4977
5026
  const DOMNodeTransforms = [transformStyle, ...[transformTransition, validateHtmlNesting]];
@@ -4997,5 +5046,6 @@ function compile(src, options = {}) {
4997
5046
  function parse(template, options = {}) {
4998
5047
  return baseParse(template, extend({}, parserOptions, options));
4999
5048
  }
5049
+
5000
5050
  //#endregion
5001
- export { BASE_TRANSITION, BindingTypes, CAMELIZE, CAPITALIZE, CREATE_BLOCK, CREATE_COMMENT, CREATE_ELEMENT_BLOCK, CREATE_ELEMENT_VNODE, CREATE_SLOTS, CREATE_STATIC, CREATE_TEXT, CREATE_VNODE, CompilerDeprecationTypes, ConstantTypes, DOMDirectiveTransforms, DOMErrorCodes, DOMErrorMessages, DOMNodeTransforms, ElementTypes, ErrorCodes, FRAGMENT, GUARD_REACTIVE_PROPS, IS_MEMO_SAME, IS_REF, KEEP_ALIVE, MERGE_PROPS, NORMALIZE_CLASS, NORMALIZE_PROPS, NORMALIZE_STYLE, NewlineType, NodeTypes, OPEN_BLOCK, POP_SCOPE_ID, PUSH_SCOPE_ID, RENDER_LIST, RENDER_SLOT, RESOLVE_COMPONENT, RESOLVE_DIRECTIVE, RESOLVE_DYNAMIC_COMPONENT, RESOLVE_FILTER, SET_BLOCK_TRACKING, SUSPENSE, TELEPORT, TO_DISPLAY_STRING, TO_HANDLERS, TO_HANDLER_KEY, TRANSITION, TRANSITION_GROUP, TS_NODE_TYPES, UNREF, V_MODEL_CHECKBOX, V_MODEL_DYNAMIC, V_MODEL_RADIO, V_MODEL_SELECT, V_MODEL_TEXT, V_ON_WITH_KEYS, V_ON_WITH_MODIFIERS, V_SHOW, WITH_CTX, WITH_DIRECTIVES, WITH_MEMO, advancePositionWithClone, advancePositionWithMutation, assert, baseCompile, baseParse, buildDirectiveArgs, buildProps, buildSlots, checkCompatEnabled, compile, convertToBlock, createArrayExpression, createAssignmentExpression, createBlockStatement, createCacheExpression, createCallExpression, createCompilerError, createCompoundExpression, createConditionalExpression, createDOMCompilerError, createExp, createForLoopParams, createFunctionExpression, createIfStatement, createInterpolation, createObjectExpression, createObjectProperty, createReturnStatement, createRoot, createSequenceExpression, createSimpleExpression, createStructuralDirectiveTransform, createTemplateLiteral, createTransformContext, createVNodeCall, defaultOnError, defaultOnWarn, errorMessages, extractIdentifiers, filterNonCommentChildren, findDir, findProp, forAliasRE, generate, generateCodeFrame, getBaseTransformPreset, getConstantType, getMemoedVNodeCall, getSelfName, getVNodeBlockHelper, getVNodeHelper, hasDynamicKeyVBind, hasScopeRef, hasSingleChild, helperNameMap, injectProp, isAllWhitespace, isCommentOrWhitespace, isConstantNode, isCoreComponent, isFnExpression, isFnExpressionBrowser, isFnExpressionNode, isFunctionType, isInDestructureAssignment, isInNewExpression, isKeyboardEvent, isLiteralWhitelisted, isMemberExpression, isMemberExpressionBrowser, isMemberExpressionNode, isReferencedIdentifier, isSimpleIdentifier, isSingleIfBlock, isSlotOutlet, isStaticArgOf, isStaticExp, isStaticNode, isStaticProperty, isStaticPropertyKey, isTemplateNode, isText, isVPre, isVSlot, isValidHTMLNesting, isWhitespaceText, locStub, noopDirectiveTransform, parse, parserOptions, postTransformTransition, processExpression, processFor, processIf, processSlotOutlet, registerRuntimeHelpers, resolveComponentType, resolveModifiers, stringifyExpression, toValidAssetId, trackSlotScopes, trackVForSlotScopes, transform, transformBind, transformElement, transformExpression, transformModel, transformOn, transformStyle, transformVBindShorthand, traverseNode, unwrapTSNode, validFirstIdentCharRE, walkBlockDeclarations, walkFunctionParams, walkIdentifiers, warnDeprecation };
5051
+ export { BASE_TRANSITION, BindingTypes, CAMELIZE, CAPITALIZE, CREATE_BLOCK, CREATE_COMMENT, CREATE_ELEMENT_BLOCK, CREATE_ELEMENT_VNODE, CREATE_SLOTS, CREATE_STATIC, CREATE_TEXT, CREATE_VNODE, CompilerDeprecationTypes, ConstantTypes, DOMDirectiveTransforms, DOMErrorCodes, DOMErrorMessages, DOMNodeTransforms, ElementTypes, ErrorCodes, FRAGMENT, GUARD_REACTIVE_PROPS, IS_MEMO_SAME, IS_REF, KEEP_ALIVE, MERGE_PROPS, NORMALIZE_CLASS, NORMALIZE_PROPS, NORMALIZE_STYLE, NewlineType, NodeTypes, OPEN_BLOCK, POP_SCOPE_ID, PUSH_SCOPE_ID, RENDER_LIST, RENDER_SLOT, RESOLVE_COMPONENT, RESOLVE_DIRECTIVE, RESOLVE_DYNAMIC_COMPONENT, RESOLVE_FILTER, SET_BLOCK_TRACKING, SUSPENSE, TELEPORT, TO_DISPLAY_STRING, TO_HANDLERS, TO_HANDLER_KEY, TRANSITION, TRANSITION_GROUP, TS_NODE_TYPES, UNREF, V_MODEL_CHECKBOX, V_MODEL_DYNAMIC, V_MODEL_RADIO, V_MODEL_SELECT, V_MODEL_TEXT, V_ON_WITH_KEYS, V_ON_WITH_MODIFIERS, V_SHOW, WITH_CTX, WITH_DIRECTIVES, WITH_MEMO, advancePositionWithClone, advancePositionWithMutation, assert, baseCompile, baseParse, buildDirectiveArgs, buildProps, buildSlots, checkCompatEnabled, compile, convertToBlock, createArrayExpression, createAssignmentExpression, createBlockStatement, createCacheExpression, createCallExpression, createCompilerError, createCompoundExpression, createConditionalExpression, createDOMCompilerError, createExp, createForLoopParams, createFunctionExpression, createIfStatement, createInterpolation, createObjectExpression, createObjectProperty, createReturnStatement, createRoot, createSequenceExpression, createSimpleExpression, createStructuralDirectiveTransform, createTemplateLiteral, createTransformContext, createVNodeCall, defaultOnError, defaultOnWarn, errorMessages, extractIdentifiers, filterNonCommentChildren, findDir, findProp, forAliasRE, generate, generateCodeFrame, getBaseTransformPreset, getConstantType, getMemoedVNodeCall, getSelfName, getVNodeBlockHelper, getVNodeHelper, hasDynamicKeyVBind, hasScopeRef, hasSingleChild, helperNameMap, injectProp, isAllWhitespace, isCommentOrWhitespace, isConstantNode, isCoreComponent, isFnExpression, isFnExpressionBrowser, isFnExpressionNode, isFunctionType, isInDestructureAssignment, isInNewExpression, isKeyboardEvent, isLiteralWhitelisted, isMemberExpression, isMemberExpressionBrowser, isMemberExpressionNode, isReferencedIdentifier, isSimpleIdentifier, isSingleIfBlock, isSlotOutlet, isStaticArgOf, isStaticExp, isStaticNode, isStaticProperty, isStaticPropertyKey, isTemplateNode, isText, isVPre, isVSlot, isValidHTMLNesting, isWhitespaceText, locStub, noopDirectiveTransform, parse, parserOptions, postTransformTransition, processExpression, processFor, processIf, processSlotOutlet, registerRuntimeHelpers, resolveComponentType, resolveModifiers, stringifyExpression, toValidAssetId, trackSlotScopes, trackVForSlotScopes, transform, transformBind, transformElement, transformExpression, transformModel, transformOn, transformStyle, transformVBindShorthand, traverseNode, unwrapTSNode, validFirstIdentCharRE, walkBlockDeclarations, walkFunctionParams, walkIdentifiers, warnDeprecation };