@vue/compiler-sfc 3.6.0-rc.11 → 3.6.0-rc.12

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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compiler-sfc v3.6.0-rc.11
2
+ * @vue/compiler-sfc v3.6.0-rc.12
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -9141,7 +9141,7 @@ const processors = {
9141
9141
  stylus: styl
9142
9142
  };
9143
9143
  //#endregion
9144
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/fs.js
9144
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/fs.js
9145
9145
  var require_fs = /* @__PURE__ */ __commonJSMin(((exports) => {
9146
9146
  Object.defineProperty(exports, "__esModule", { value: true });
9147
9147
  exports.getFileSystem = getFileSystem;
@@ -9163,7 +9163,7 @@ var require_fs = /* @__PURE__ */ __commonJSMin(((exports) => {
9163
9163
  }
9164
9164
  }));
9165
9165
  //#endregion
9166
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/unquote.js
9166
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/unquote.js
9167
9167
  var require_unquote = /* @__PURE__ */ __commonJSMin(((exports) => {
9168
9168
  Object.defineProperty(exports, "__esModule", { value: true });
9169
9169
  exports.default = unquote;
@@ -9176,7 +9176,7 @@ var require_unquote = /* @__PURE__ */ __commonJSMin(((exports) => {
9176
9176
  }
9177
9177
  }));
9178
9178
  //#endregion
9179
- //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.28/node_modules/icss-utils/src/replaceValueSymbols.js
9179
+ //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.29/node_modules/icss-utils/src/replaceValueSymbols.js
9180
9180
  var require_replaceValueSymbols = /* @__PURE__ */ __commonJSMin(((exports, module) => {
9181
9181
  const matchValueName = /[$]?[\w-]+/g;
9182
9182
  const replaceValueSymbols = (value, replacements) => {
@@ -9193,7 +9193,7 @@ var require_replaceValueSymbols = /* @__PURE__ */ __commonJSMin(((exports, modul
9193
9193
  module.exports = replaceValueSymbols;
9194
9194
  }));
9195
9195
  //#endregion
9196
- //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.28/node_modules/icss-utils/src/replaceSymbols.js
9196
+ //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.29/node_modules/icss-utils/src/replaceSymbols.js
9197
9197
  var require_replaceSymbols = /* @__PURE__ */ __commonJSMin(((exports, module) => {
9198
9198
  const replaceValueSymbols = require_replaceValueSymbols();
9199
9199
  const replaceSymbols = (css, replacements) => {
@@ -9206,7 +9206,7 @@ var require_replaceSymbols = /* @__PURE__ */ __commonJSMin(((exports, module) =>
9206
9206
  module.exports = replaceSymbols;
9207
9207
  }));
9208
9208
  //#endregion
9209
- //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.28/node_modules/icss-utils/src/extractICSS.js
9209
+ //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.29/node_modules/icss-utils/src/extractICSS.js
9210
9210
  var require_extractICSS = /* @__PURE__ */ __commonJSMin(((exports, module) => {
9211
9211
  const importPattern = /^:import\(("[^"]*"|'[^']*'|[^"']+)\)$/;
9212
9212
  const balancedQuotes = /^("[^"]*"|'[^']*'|[^"']+)$/;
@@ -9260,7 +9260,7 @@ var require_extractICSS = /* @__PURE__ */ __commonJSMin(((exports, module) => {
9260
9260
  module.exports = extractICSS;
9261
9261
  }));
9262
9262
  //#endregion
9263
- //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.28/node_modules/icss-utils/src/createICSSRules.js
9263
+ //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.29/node_modules/icss-utils/src/createICSSRules.js
9264
9264
  var require_createICSSRules = /* @__PURE__ */ __commonJSMin(((exports, module) => {
9265
9265
  const createImports = (imports, postcss, mode = "rule") => {
9266
9266
  return Object.keys(imports).map((path) => {
@@ -9304,7 +9304,7 @@ var require_createICSSRules = /* @__PURE__ */ __commonJSMin(((exports, module) =
9304
9304
  module.exports = createICSSRules;
9305
9305
  }));
9306
9306
  //#endregion
9307
- //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.28/node_modules/icss-utils/src/index.js
9307
+ //#region node_modules/.pnpm/icss-utils@5.1.0_postcss@8.5.29/node_modules/icss-utils/src/index.js
9308
9308
  var require_src$4 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
9309
9309
  module.exports = {
9310
9310
  replaceValueSymbols: require_replaceValueSymbols(),
@@ -9314,7 +9314,7 @@ var require_src$4 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
9314
9314
  };
9315
9315
  }));
9316
9316
  //#endregion
9317
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/Parser.js
9317
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/Parser.js
9318
9318
  var require_Parser = /* @__PURE__ */ __commonJSMin(((exports) => {
9319
9319
  Object.defineProperty(exports, "__esModule", { value: true });
9320
9320
  exports.default = void 0;
@@ -9382,7 +9382,7 @@ var require_Parser = /* @__PURE__ */ __commonJSMin(((exports) => {
9382
9382
  exports.default = Parser;
9383
9383
  }));
9384
9384
  //#endregion
9385
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/saveJSON.js
9385
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/saveJSON.js
9386
9386
  var require_saveJSON = /* @__PURE__ */ __commonJSMin(((exports) => {
9387
9387
  Object.defineProperty(exports, "__esModule", { value: true });
9388
9388
  exports.default = saveJSON;
@@ -10063,7 +10063,7 @@ var require_lodash_camelcase = /* @__PURE__ */ __commonJSMin(((exports, module)
10063
10063
  module.exports = camelCase;
10064
10064
  }));
10065
10065
  //#endregion
10066
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/localsConvention.js
10066
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/localsConvention.js
10067
10067
  var require_localsConvention = /* @__PURE__ */ __commonJSMin(((exports) => {
10068
10068
  Object.defineProperty(exports, "__esModule", { value: true });
10069
10069
  exports.makeLocalsConventionReducer = makeLocalsConventionReducer;
@@ -10101,7 +10101,7 @@ var require_localsConvention = /* @__PURE__ */ __commonJSMin(((exports) => {
10101
10101
  }
10102
10102
  }));
10103
10103
  //#endregion
10104
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/FileSystemLoader.js
10104
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/FileSystemLoader.js
10105
10105
  var require_FileSystemLoader = /* @__PURE__ */ __commonJSMin(((exports) => {
10106
10106
  Object.defineProperty(exports, "__esModule", { value: true });
10107
10107
  exports.default = void 0;
@@ -10186,7 +10186,7 @@ var require_FileSystemLoader = /* @__PURE__ */ __commonJSMin(((exports) => {
10186
10186
  exports.default = FileSystemLoader;
10187
10187
  }));
10188
10188
  //#endregion
10189
- //#region node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.28/node_modules/postcss-modules-extract-imports/src/topologicalSort.js
10189
+ //#region node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.29/node_modules/postcss-modules-extract-imports/src/topologicalSort.js
10190
10190
  var require_topologicalSort = /* @__PURE__ */ __commonJSMin(((exports, module) => {
10191
10191
  const PERMANENT_MARKER = 2;
10192
10192
  const TEMPORARY_MARKER = 1;
@@ -10225,7 +10225,7 @@ var require_topologicalSort = /* @__PURE__ */ __commonJSMin(((exports, module) =
10225
10225
  module.exports = topologicalSort;
10226
10226
  }));
10227
10227
  //#endregion
10228
- //#region node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.28/node_modules/postcss-modules-extract-imports/src/index.js
10228
+ //#region node_modules/.pnpm/postcss-modules-extract-imports@3.1.0_postcss@8.5.29/node_modules/postcss-modules-extract-imports/src/index.js
10229
10229
  var require_src$3 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
10230
10230
  const topologicalSort = require_topologicalSort();
10231
10231
  const matchImports = /^(.+?)\s+from\s+(?:"([^"]+)"|'([^']+)'|(global))$/;
@@ -11148,7 +11148,7 @@ var require_lib = /* @__PURE__ */ __commonJSMin(((exports, module) => {
11148
11148
  module.exports = ValueParser;
11149
11149
  }));
11150
11150
  //#endregion
11151
- //#region node_modules/.pnpm/postcss-modules-local-by-default@4.2.0_postcss@8.5.28/node_modules/postcss-modules-local-by-default/src/index.js
11151
+ //#region node_modules/.pnpm/postcss-modules-local-by-default@4.2.0_postcss@8.5.29/node_modules/postcss-modules-local-by-default/src/index.js
11152
11152
  var require_src$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
11153
11153
  const selectorParser = require_dist();
11154
11154
  const valueParser = require_lib();
@@ -11545,7 +11545,7 @@ var require_src$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
11545
11545
  module.exports.postcss = true;
11546
11546
  }));
11547
11547
  //#endregion
11548
- //#region node_modules/.pnpm/postcss-modules-scope@3.2.1_postcss@8.5.28/node_modules/postcss-modules-scope/src/index.js
11548
+ //#region node_modules/.pnpm/postcss-modules-scope@3.2.1_postcss@8.5.29/node_modules/postcss-modules-scope/src/index.js
11549
11549
  var require_src$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
11550
11550
  const selectorParser = require_dist();
11551
11551
  const hasOwnProperty = Object.prototype.hasOwnProperty;
@@ -11723,7 +11723,7 @@ var require_string_hash = /* @__PURE__ */ __commonJSMin(((exports, module) => {
11723
11723
  module.exports = hash;
11724
11724
  }));
11725
11725
  //#endregion
11726
- //#region node_modules/.pnpm/postcss-modules-values@4.0.0_postcss@8.5.28/node_modules/postcss-modules-values/src/index.js
11726
+ //#region node_modules/.pnpm/postcss-modules-values@4.0.0_postcss@8.5.29/node_modules/postcss-modules-values/src/index.js
11727
11727
  var require_src = /* @__PURE__ */ __commonJSMin(((exports, module) => {
11728
11728
  const ICSSUtils = require_src$4();
11729
11729
  const matchImports = /^(.+?|\([\s\S]+?\))\s+from\s+("[^"]*"|'[^']*'|[\w-]+)$/;
@@ -11810,7 +11810,7 @@ var require_src = /* @__PURE__ */ __commonJSMin(((exports, module) => {
11810
11810
  module.exports.postcss = true;
11811
11811
  }));
11812
11812
  //#endregion
11813
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/scoping.js
11813
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/scoping.js
11814
11814
  var require_scoping = /* @__PURE__ */ __commonJSMin(((exports) => {
11815
11815
  Object.defineProperty(exports, "__esModule", { value: true });
11816
11816
  exports.behaviours = void 0;
@@ -11872,7 +11872,7 @@ var require_scoping = /* @__PURE__ */ __commonJSMin(((exports) => {
11872
11872
  }
11873
11873
  }));
11874
11874
  //#endregion
11875
- //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.28/node_modules/postcss-modules/build/pluginFactory.js
11875
+ //#region node_modules/.pnpm/postcss-modules@6.0.1_postcss@8.5.29/node_modules/postcss-modules/build/pluginFactory.js
11876
11876
  var require_pluginFactory = /* @__PURE__ */ __commonJSMin(((exports) => {
11877
11877
  Object.defineProperty(exports, "__esModule", { value: true });
11878
11878
  exports.makePlugin = makePlugin;
@@ -15171,11 +15171,14 @@ function transformDestructuredProps(ctx, vueImportAliases) {
15171
15171
  const excludedIds = /* @__PURE__ */ new WeakSet();
15172
15172
  const parentStack = [];
15173
15173
  const propsLocalToPublicMap = Object.create(null);
15174
+ const modelOptionNodes = /* @__PURE__ */ new Set();
15175
+ let currentModelOption = null;
15174
15176
  for (const key in ctx.propsDestructuredBindings) {
15175
15177
  const { local } = ctx.propsDestructuredBindings[key];
15176
15178
  rootScope[local] = true;
15177
15179
  propsLocalToPublicMap[local] = key;
15178
15180
  }
15181
+ for (const { runtimeOptionNodes } of Object.values(ctx.modelDecls)) for (const node of runtimeOptionNodes) modelOptionNodes.add(node);
15179
15182
  function pushScope(isFunctionScope = false) {
15180
15183
  const scope = currentScope = Object.create(currentScope);
15181
15184
  scopeStack.push(scope);
@@ -15216,6 +15219,10 @@ function transformDestructuredProps(ctx, vueImportAliases) {
15216
15219
  } });
15217
15220
  }
15218
15221
  function rewriteId(id, parent, parentStack) {
15222
+ if (currentModelOption) {
15223
+ const isDefault = (currentModelOption.type === "ObjectProperty" || currentModelOption.type === "ObjectMethod") && resolveObjectKey(currentModelOption.key, currentModelOption.computed) === "default";
15224
+ ctx.error(`\`${DEFINE_MODEL}()\` prop options cannot reference destructured props because they are hoisted outside of the setup() function.` + (isDefault ? ` Use the props argument of the default factory instead, e.g. default: props => props${(0, _vue_shared.genPropsAccessExp)(propsLocalToPublicMap[id.name]).slice(`__props`.length)}` : ``), id);
15225
+ }
15219
15226
  if (parent.type === "AssignmentExpression" && id === parent.left || parent.type === "UpdateExpression") ctx.error(`Cannot assign to destructured props as they are readonly.`, id);
15220
15227
  if ((0, _vue_compiler_dom.isStaticProperty)(parent) && parent.shorthand) {
15221
15228
  if (!parent.inPattern || (0, _vue_compiler_dom.isInDestructureAssignment)(parent, parentStack)) ctx.s.appendLeft(id.end + ctx.startOffset, `: ${(0, _vue_shared.genPropsAccessExp)(propsLocalToPublicMap[id.name])}`);
@@ -15234,6 +15241,7 @@ function transformDestructuredProps(ctx, vueImportAliases) {
15234
15241
  enter(node, parent) {
15235
15242
  parent && parentStack.push(parent);
15236
15243
  if (parent && parent.type.startsWith("TS") && !_vue_compiler_dom.TS_NODE_TYPES.includes(parent.type)) return this.skip();
15244
+ if (modelOptionNodes.has(node)) currentModelOption = node;
15237
15245
  checkUsage(node, "watch", vueImportAliases.watch);
15238
15246
  checkUsage(node, "toRef", vueImportAliases.toRef);
15239
15247
  if ((0, _vue_compiler_dom.isFunctionType)(node)) {
@@ -15271,6 +15279,7 @@ function transformDestructuredProps(ctx, vueImportAliases) {
15271
15279
  },
15272
15280
  leave(node, parent) {
15273
15281
  parent && parentStack.pop();
15282
+ if (node === currentModelOption) currentModelOption = null;
15274
15283
  if ((0, _vue_compiler_dom.isFunctionType)(node)) popScope(true);
15275
15284
  else if (node.type === "BlockStatement" && !(0, _vue_compiler_dom.isFunctionType)(parent)) popScope();
15276
15285
  else if (node.type === "CatchClause" || node.type === "ForOfStatement" || node.type === "ForInStatement" || node.type === "ForStatement") popScope();
@@ -15818,7 +15827,7 @@ function compileScript(sfc, options) {
15818
15827
  if (cssModuleBindings.length) returned = `{\n${cssModuleBindings.join("\n")}\n${returned}\n}`;
15819
15828
  } else returned = `() => {}`;
15820
15829
  if (!inlineMode && true) ctx.s.appendRight(endOffset, `\nconst __returned__ = ${returned}\nObject.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true })\nreturn __returned__\n}\n\n`);
15821
- else ctx.s.appendRight(endOffset, `\n${vapor && !ssr && inlineMode ? `` : `return `}${returned}\n}\n\n`);
15830
+ else ctx.s.appendRight(endOffset, `\n${vapor && !ssr && inlineMode && !(!sfc.template && ctx.hasDefaultExportRender) ? `` : `return `}${returned}\n}\n\n`);
15822
15831
  const genDefaultAs = options.genDefaultAs ? `const ${options.genDefaultAs} =` : `export default`;
15823
15832
  let runtimeOptions = ``;
15824
15833
  if (!ctx.hasDefaultExportName && filename && filename !== "anonymous.vue") {
@@ -15991,7 +16000,7 @@ function mergeSourceMaps(scriptMap, templateMap, templateLineOffset) {
15991
16000
  }
15992
16001
  //#endregion
15993
16002
  //#region packages/compiler-sfc/src/index.ts
15994
- const version = "3.6.0-rc.11";
16003
+ const version = "3.6.0-rc.12";
15995
16004
  const parseCache = parseCache$1;
15996
16005
  const errorMessages = {
15997
16006
  ..._vue_compiler_dom.errorMessages,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compiler-sfc v3.6.0-rc.11
2
+ * @vue/compiler-sfc v3.6.0-rc.12
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -405,9 +405,10 @@ const isBlockTag = /*@__PURE__*/ makeMap(BLOCK_TAGS);
405
405
  * - ismap -> isMap
406
406
  * - nomodule -> noModule
407
407
  * - novalidate -> noValidate
408
+ * - playsinline -> playsInline
408
409
  * - readonly -> readOnly
409
410
  */
410
- const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;
411
+ const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,playsinline,readonly`;
411
412
  const isSpecialBooleanAttr = /*@__PURE__*/ makeMap(specialBooleanAttrs);
412
413
  /**
413
414
  * The full list is needed during SSR to produce the correct initial markup.
@@ -3626,7 +3627,7 @@ const errorMessages$1 = {
3626
3627
  [41]: `v-model is missing expression.`,
3627
3628
  [42]: `v-model value must be a valid JavaScript member expression.`,
3628
3629
  [43]: `v-model cannot be used on v-for or v-slot scope variables because they are not writable.`,
3629
- [44]: `v-model cannot be used on a prop, because local prop bindings are not writable.\nUse a v-bind binding combined with a v-on listener that emits update:x event instead.`,
3630
+ [44]: `v-model cannot be used on a prop, because local prop bindings are not writable.\nUse a v-bind binding combined with a v-on listener that emits update:x event instead.\nFor props declared with defineModel(), assign the returned ref to a variable and use v-model on that variable.`,
3630
3631
  [45]: `v-model cannot be used on a const binding because it is not writable.`,
3631
3632
  [46]: `Error parsing JavaScript expression: `,
3632
3633
  [47]: `<KeepAlive> expects exactly one child component.`,
@@ -3638,7 +3639,7 @@ const errorMessages$1 = {
3638
3639
  [54]: ``
3639
3640
  };
3640
3641
  //#endregion
3641
- //#region node_modules/.pnpm/@babel+parser@7.29.8/node_modules/@babel/parser/lib/index.js
3642
+ //#region node_modules/.pnpm/@babel+parser@7.29.9/node_modules/@babel/parser/lib/index.js
3642
3643
  var require_lib$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
3643
3644
  Object.defineProperty(exports, "__esModule", { value: true });
3644
3645
  function _objectWithoutPropertiesLoose(r, e) {
@@ -7072,10 +7073,10 @@ var require_lib$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
7072
7073
  const arrows = [];
7073
7074
  while (stack.length !== 0) {
7074
7075
  const node = stack.pop();
7075
- if (node.type === "ArrowFunctionExpression" && node.body.type !== "BlockStatement") {
7076
+ if (node.type === "ArrowFunctionExpression") {
7076
7077
  if (node.typeParameters || !node.returnType) this.finishArrowValidation(node);
7077
7078
  else arrows.push(node);
7078
- stack.push(node.body);
7079
+ if (node.body.type !== "BlockStatement") stack.push(node.body);
7079
7080
  } else if (node.type === "ConditionalExpression") {
7080
7081
  stack.push(node.consequent);
7081
7082
  stack.push(node.alternate);
@@ -12865,6 +12866,9 @@ var require_lib$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
12865
12866
  }
12866
12867
  fillOptionalPropertiesForTSESLint(node) {
12867
12868
  switch (node.type) {
12869
+ case "ImportDeclaration":
12870
+ node.phase != null || (node.phase = null);
12871
+ return;
12868
12872
  case "ExpressionStatement":
12869
12873
  node.directive != null || (node.directive = void 0);
12870
12874
  return;
@@ -17936,7 +17940,7 @@ function createStructuralDirectiveTransform$1(name, fn) {
17936
17940
  };
17937
17941
  }
17938
17942
  //#endregion
17939
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/base64.js
17943
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/base64.js
17940
17944
  var require_base64$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
17941
17945
  var intToCharMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");
17942
17946
  /**
@@ -17970,7 +17974,7 @@ var require_base64$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
17970
17974
  };
17971
17975
  }));
17972
17976
  //#endregion
17973
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/base64-vlq.js
17977
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/base64-vlq.js
17974
17978
  var require_base64_vlq$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
17975
17979
  var base64 = require_base64$1();
17976
17980
  var VLQ_BASE_SHIFT = 5;
@@ -18035,7 +18039,7 @@ var require_base64_vlq$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18035
18039
  };
18036
18040
  }));
18037
18041
  //#endregion
18038
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/util.js
18042
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/util.js
18039
18043
  var require_util$2 = /* @__PURE__ */ __commonJSMin(((exports) => {
18040
18044
  /**
18041
18045
  * This is a helper function for getting values from parameter/options
@@ -18382,7 +18386,7 @@ var require_util$2 = /* @__PURE__ */ __commonJSMin(((exports) => {
18382
18386
  exports.computeSourceURL = computeSourceURL;
18383
18387
  }));
18384
18388
  //#endregion
18385
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/array-set.js
18389
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/array-set.js
18386
18390
  var require_array_set$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18387
18391
  var util = require_util$2();
18388
18392
  var has = Object.prototype.hasOwnProperty;
@@ -18476,7 +18480,7 @@ var require_array_set$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18476
18480
  exports.ArraySet = ArraySet;
18477
18481
  }));
18478
18482
  //#endregion
18479
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/mapping-list.js
18483
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/mapping-list.js
18480
18484
  var require_mapping_list$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18481
18485
  var util = require_util$2();
18482
18486
  /**
@@ -18545,7 +18549,7 @@ var require_mapping_list$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18545
18549
  exports.MappingList = MappingList;
18546
18550
  }));
18547
18551
  //#endregion
18548
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/source-map-generator.js
18552
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/source-map-generator.js
18549
18553
  var require_source_map_generator$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18550
18554
  var base64VLQ = require_base64_vlq$1();
18551
18555
  var util = require_util$2();
@@ -18769,10 +18773,9 @@ var require_source_map_generator$1 = /* @__PURE__ */ __commonJSMin(((exports) =>
18769
18773
  next = "";
18770
18774
  if (mapping.generatedLine !== previousGeneratedLine) {
18771
18775
  previousGeneratedColumn = 0;
18772
- while (mapping.generatedLine !== previousGeneratedLine) {
18773
- next += ";";
18774
- previousGeneratedLine++;
18775
- }
18776
+ var lineDelta = mapping.generatedLine - previousGeneratedLine;
18777
+ next += lineDelta === 1 ? ";" : ";".repeat(lineDelta);
18778
+ previousGeneratedLine = mapping.generatedLine;
18776
18779
  } else if (i > 0) {
18777
18780
  if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) continue;
18778
18781
  next += ",";
@@ -18829,7 +18832,7 @@ var require_source_map_generator$1 = /* @__PURE__ */ __commonJSMin(((exports) =>
18829
18832
  exports.SourceMapGenerator = SourceMapGenerator;
18830
18833
  }));
18831
18834
  //#endregion
18832
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/binary-search.js
18835
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/binary-search.js
18833
18836
  var require_binary_search$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18834
18837
  exports.GREATEST_LOWER_BOUND = 1;
18835
18838
  exports.LEAST_UPPER_BOUND = 2;
@@ -18890,7 +18893,7 @@ var require_binary_search$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18890
18893
  };
18891
18894
  }));
18892
18895
  //#endregion
18893
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/quick-sort.js
18896
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/quick-sort.js
18894
18897
  var require_quick_sort$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18895
18898
  function SortTemplate(comparator) {
18896
18899
  /**
@@ -18953,6 +18956,14 @@ var require_quick_sort$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18953
18956
  let template = SortTemplate.toString();
18954
18957
  return new Function(`return ${template}`)()(comparator);
18955
18958
  }
18959
+ let isEvalAllowed = (function() {
18960
+ try {
18961
+ new Function("return 0")();
18962
+ return true;
18963
+ } catch (_unused) {
18964
+ return false;
18965
+ }
18966
+ })();
18956
18967
  /**
18957
18968
  * Sort the given array in-place with the given comparator function.
18958
18969
  *
@@ -18963,7 +18974,7 @@ var require_quick_sort$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18963
18974
  */
18964
18975
  let sortCache = /* @__PURE__ */ new WeakMap();
18965
18976
  exports.quickSort = function(ary, comparator, start = 0) {
18966
- let doQuickSort = sortCache.get(comparator);
18977
+ let doQuickSort = isEvalAllowed ? sortCache.get(comparator) : SortTemplate(comparator);
18967
18978
  if (doQuickSort === void 0) {
18968
18979
  doQuickSort = cloneSort(comparator);
18969
18980
  sortCache.set(comparator, doQuickSort);
@@ -18972,13 +18983,14 @@ var require_quick_sort$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18972
18983
  };
18973
18984
  }));
18974
18985
  //#endregion
18975
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/source-map-consumer.js
18986
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/source-map-consumer.js
18976
18987
  var require_source_map_consumer$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
18977
18988
  var util = require_util$2();
18978
18989
  var binarySearch = require_binary_search$1();
18979
18990
  var ArraySet = require_array_set$1().ArraySet;
18980
18991
  var base64VLQ = require_base64_vlq$1();
18981
18992
  var quickSort = require_quick_sort$1().quickSort;
18993
+ var MAX_SECTION_OFFSET_LINE = 1e7;
18982
18994
  function SourceMapConsumer(aSourceMap, aSourceMapURL) {
18983
18995
  var sourceMap = aSourceMap;
18984
18996
  if (typeof aSourceMap === "string") sourceMap = util.parseSourceMapInput(aSourceMap);
@@ -19580,21 +19592,37 @@ var require_source_map_consumer$1 = /* @__PURE__ */ __commonJSMin(((exports) =>
19580
19592
  line: -1,
19581
19593
  column: 0
19582
19594
  };
19595
+ var maxOffsetLine = 0;
19583
19596
  this._sections = sections.map(function(s) {
19584
19597
  if (s.url) throw new Error("Support for url field in sections not implemented.");
19585
19598
  var offset = util.getArg(s, "offset");
19586
19599
  var offsetLine = util.getArg(offset, "line");
19587
19600
  var offsetColumn = util.getArg(offset, "column");
19601
+ if (!isValidOffset(offsetLine) || !isValidOffset(offsetColumn)) throw new Error("Section offset line and column must be non-negative integers.");
19602
+ if (offsetLine > MAX_SECTION_OFFSET_LINE) throw new Error("Section offset line must not exceed " + MAX_SECTION_OFFSET_LINE + ".");
19588
19603
  if (offsetLine < lastOffset.line || offsetLine === lastOffset.line && offsetColumn < lastOffset.column) throw new Error("Section offsets must be ordered and non-overlapping.");
19589
19604
  lastOffset = offset;
19605
+ var consumer = new SourceMapConsumer(util.getArg(s, "map"), aSourceMapURL);
19606
+ var totalOffsetLine = offsetLine + (consumer._maxOffsetLine || 0);
19607
+ if (totalOffsetLine > MAX_SECTION_OFFSET_LINE) throw new Error("Section offset line must not exceed " + MAX_SECTION_OFFSET_LINE + ", including offsets of nested sections.");
19608
+ if (totalOffsetLine > maxOffsetLine) maxOffsetLine = totalOffsetLine;
19590
19609
  return {
19591
19610
  generatedOffset: {
19592
19611
  generatedLine: offsetLine + 1,
19593
19612
  generatedColumn: offsetColumn + 1
19594
19613
  },
19595
- consumer: new SourceMapConsumer(util.getArg(s, "map"), aSourceMapURL)
19614
+ consumer
19596
19615
  };
19597
19616
  });
19617
+ this._maxOffsetLine = maxOffsetLine;
19618
+ }
19619
+ /**
19620
+ * Section offsets come from untrusted input and are used as line/column
19621
+ * numbers, so only accept non-negative safe integers (rejects NaN, Infinity,
19622
+ * strings, fractions, etc).
19623
+ */
19624
+ function isValidOffset(aValue) {
19625
+ return typeof aValue === "number" && aValue >= 0 && aValue <= 9007199254740991 && Math.floor(aValue) === aValue;
19598
19626
  }
19599
19627
  IndexedSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype);
19600
19628
  IndexedSourceMapConsumer.prototype.constructor = SourceMapConsumer;
@@ -19607,7 +19635,10 @@ var require_source_map_consumer$1 = /* @__PURE__ */ __commonJSMin(((exports) =>
19607
19635
  */
19608
19636
  Object.defineProperty(IndexedSourceMapConsumer.prototype, "sources", { get: function() {
19609
19637
  var sources = [];
19610
- for (var i = 0; i < this._sections.length; i++) for (var j = 0; j < this._sections[i].consumer.sources.length; j++) sources.push(this._sections[i].consumer.sources[j]);
19638
+ for (var i = 0; i < this._sections.length; i++) {
19639
+ var sectionSources = this._sections[i].consumer.sources;
19640
+ for (var j = 0; j < sectionSources.length; j++) sources.push(sectionSources[j]);
19641
+ }
19611
19642
  return sources;
19612
19643
  } });
19613
19644
  /**
@@ -19748,7 +19779,7 @@ var require_source_map_consumer$1 = /* @__PURE__ */ __commonJSMin(((exports) =>
19748
19779
  exports.IndexedSourceMapConsumer = IndexedSourceMapConsumer;
19749
19780
  }));
19750
19781
  //#endregion
19751
- //#region node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/lib/source-node.js
19782
+ //#region node_modules/.pnpm/source-map-js@1.2.2/node_modules/source-map-js/lib/source-node.js
19752
19783
  var require_source_node$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
19753
19784
  var SourceMapGenerator = require_source_map_generator$1().SourceMapGenerator;
19754
19785
  var util = require_util$2();
@@ -19814,6 +19845,10 @@ var require_source_node$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
19814
19845
  }
19815
19846
  }
19816
19847
  while (lastGeneratedLine < mapping.generatedLine) {
19848
+ if (remainingLinesIndex >= remainingLines.length) {
19849
+ lastGeneratedLine = mapping.generatedLine;
19850
+ break;
19851
+ }
19817
19852
  node.add(shiftNextLine());
19818
19853
  lastGeneratedLine++;
19819
19854
  }
@@ -20945,7 +20980,11 @@ const transformFor = createStructuralDirectiveTransform$1("for", (node, dir, con
20945
20980
  ]),
20946
20981
  createCompoundExpression([
20947
20982
  `if (_cached && _cached.el`,
20948
- ...keyExp ? [` && _cached.key === `, keyExp] : [],
20983
+ ...keyExp ? [
20984
+ ` && _cached.key === (`,
20985
+ keyExp,
20986
+ `)`
20987
+ ] : [],
20949
20988
  ` && ${context.helperString(IS_MEMO_SAME)}(_cached, _memo)) return _cached`
20950
20989
  ]),
20951
20990
  createCompoundExpression([`const _item = `, childBlock]),
@@ -22343,7 +22382,7 @@ function stringifyNode(node, context) {
22343
22382
  }
22344
22383
  function stringifyElement(node, context) {
22345
22384
  let res = `<${node.tag}`;
22346
- let innerHTML = "";
22385
+ let innerHTML = void 0;
22347
22386
  for (let i = 0; i < node.props.length; i++) {
22348
22387
  const p = node.props[i];
22349
22388
  if (p.type === 6) {
@@ -22365,13 +22404,15 @@ function stringifyElement(node, context) {
22365
22404
  else if (arg === "style") evaluated = stringifyStyle(normalizeStyle(evaluated));
22366
22405
  res += ` ${p.arg.content}="${escapeHtml(evaluated)}"`;
22367
22406
  }
22368
- } else if (p.name === "html") innerHTML = evaluateConstant(p.exp);
22369
- else if (p.name === "text") innerHTML = escapeHtml(toDisplayString(evaluateConstant(p.exp)));
22407
+ } else if (p.name === "html") {
22408
+ var _evaluateConstant;
22409
+ innerHTML = (_evaluateConstant = evaluateConstant(p.exp)) !== null && _evaluateConstant !== void 0 ? _evaluateConstant : "";
22410
+ } else if (p.name === "text") innerHTML = escapeHtml(toDisplayString(evaluateConstant(p.exp)));
22370
22411
  }
22371
22412
  }
22372
22413
  if (context.scopeId) res += ` ${context.scopeId}`;
22373
22414
  res += `>`;
22374
- if (innerHTML) res += innerHTML;
22415
+ if (innerHTML !== void 0) res += innerHTML;
22375
22416
  else for (let i = 0; i < node.children.length; i++) res += stringifyNode(node.children[i], context);
22376
22417
  if (!isVoidTag(node.tag)) res += `</${node.tag}>`;
22377
22418
  return res;
@@ -22778,7 +22819,11 @@ var src_exports$2 = /* @__PURE__ */ __exportAll({
22778
22819
  walkIdentifiers: () => walkIdentifiers,
22779
22820
  warnDeprecation: () => warnDeprecation
22780
22821
  });
22781
- const DOMNodeTransforms = [transformStyle, ...[transformTransition$1, validateHtmlNesting]];
22822
+ const DOMNodeTransforms = [
22823
+ transformStyle,
22824
+ transformTransition$1,
22825
+ ...[validateHtmlNesting]
22826
+ ];
22782
22827
  const DOMDirectiveTransforms = {
22783
22828
  cloak: noopDirectiveTransform,
22784
22829
  html: transformVHtml$1,
@@ -26570,44 +26615,46 @@ function parseValueDestructure(value, context) {
26570
26615
  walkFunctionParams(value.ast, (id) => bindings.add(id));
26571
26616
  walkIdentifiers(value.ast, (id, _, parentStack) => {
26572
26617
  if (bindings.has(id)) {
26573
- let path = "";
26618
+ const steps = [];
26574
26619
  let isDynamic = false;
26575
- let helper;
26576
- let helperArgs;
26577
26620
  for (let i = 0; i < parentStack.length; i++) {
26578
26621
  const parent = parentStack[i];
26579
26622
  const child = parentStack[i + 1] || id;
26580
26623
  if (parent.type === "ObjectProperty" && parent.value === child) {
26581
- if (parent.key.type === "StringLiteral") path += `[${JSON.stringify(parent.key.value)}]`;
26624
+ if (parent.key.type === "StringLiteral") steps.push(`[${JSON.stringify(parent.key.value)}]`);
26582
26625
  else if (parent.computed) {
26583
26626
  isDynamic = true;
26584
- path += `[${rawValue.slice(parent.key.start - 1, parent.key.end - 1)}]`;
26585
- } else path += `.${parent.key.name}`;
26627
+ steps.push(`[${rawValue.slice(parent.key.start - 1, parent.key.end - 1)}]`);
26628
+ } else steps.push(`.${parent.key.name}`);
26586
26629
  } else if (parent.type === "ArrayPattern") {
26587
26630
  const index = parent.elements.indexOf(child);
26588
- if (child.type === "RestElement") path += `.slice(${index})`;
26589
- else path += `[${index}]`;
26631
+ if (child.type === "RestElement") steps.push(`.slice(${index})`);
26632
+ else steps.push(`[${index}]`);
26590
26633
  } else if (parent.type === "ObjectPattern" && child.type === "RestElement") {
26591
- helper = context.helper("getRestElement");
26592
- helperArgs = "[" + parent.properties.filter((p) => p.type === "ObjectProperty").map((p) => {
26634
+ const helper = context.helper("getRestElement");
26635
+ const args = "[" + parent.properties.filter((p) => p.type === "ObjectProperty").map((p) => {
26593
26636
  if (p.key.type === "StringLiteral") return JSON.stringify(p.key.value);
26594
26637
  else if (p.computed) {
26595
26638
  isDynamic = true;
26596
26639
  return rawValue.slice(p.key.start - 1, p.key.end - 1);
26597
26640
  } else return JSON.stringify(p.key.name);
26598
26641
  }).join(", ") + "]";
26642
+ steps.push({
26643
+ helper,
26644
+ args
26645
+ });
26599
26646
  }
26600
- if (child.type === "AssignmentPattern" && (parent.type === "ObjectProperty" || parent.type === "ArrayPattern" || parent.type === "ArrowFunctionExpression" && child.left === id)) {
26647
+ if (child.type === "AssignmentPattern" && (parent.type === "ObjectProperty" || parent.type === "ArrayPattern" || parent.type === "ArrowFunctionExpression")) {
26601
26648
  isDynamic = true;
26602
- helper = context.helper("getDefaultValue");
26603
- helperArgs = `() => (${rawValue.slice(child.right.start - 1, child.right.end - 1)})`;
26649
+ steps.push({
26650
+ helper: context.helper("getDefaultValue"),
26651
+ args: `() => (${rawValue.slice(child.right.start - 1, child.right.end - 1)})`
26652
+ });
26604
26653
  }
26605
26654
  }
26606
26655
  map.set(id.name, {
26607
- path,
26608
- dynamic: isDynamic,
26609
- helper,
26610
- helperArgs
26656
+ steps,
26657
+ dynamic: isDynamic
26611
26658
  });
26612
26659
  }
26613
26660
  }, true);
@@ -26620,10 +26667,10 @@ function buildDestructureIdMap(idToPathMap, baseAccessor, plugins) {
26620
26667
  idToPathMap.forEach((pathInfo, id) => {
26621
26668
  let path = baseAccessor;
26622
26669
  if (pathInfo) {
26623
- path = `${baseAccessor}${pathInfo.path}`;
26624
- if (pathInfo.helper) {
26625
- idMap[pathInfo.helper] = null;
26626
- path = pathInfo.helperArgs ? `${pathInfo.helper}(${path}, ${pathInfo.helperArgs})` : `${pathInfo.helper}(${path})`;
26670
+ for (const step of pathInfo.steps) if (typeof step === "string") path += step;
26671
+ else {
26672
+ idMap[step.helper] = null;
26673
+ path = `${step.helper}(${path}, ${step.args})`;
26627
26674
  }
26628
26675
  if (pathInfo.dynamic) {
26629
26676
  const node = idMap[id] = createSimpleExpression(path);
@@ -27643,7 +27690,6 @@ function genSlotFlags(flags) {
27643
27690
  if (flags & 1) names.push("NO_SLOTTED");
27644
27691
  if (flags & 2) names.push("ONCE");
27645
27692
  if (flags & 4) names.push("FORWARDED");
27646
- if (flags & 8) names.push("SHARED_FALLBACK");
27647
27693
  return genFlags(flags, names);
27648
27694
  }
27649
27695
  //#endregion
@@ -28091,44 +28137,32 @@ function isVModelOperation(oper) {
28091
28137
  function isVModelListener(oper, modelElements) {
28092
28138
  return (oper.type === 7 || oper.type === 8 || oper.type === 4 && oper.listeners || oper.type === 3 && !oper.prop.modifier && isOn(oper.prop.key.content)) && modelElements.has(oper.element);
28093
28139
  }
28094
- function markSlotRootOperations(block, context, sharedFallback = false) {
28140
+ function markSlotRootOperations(block, context) {
28095
28141
  if (hasStableSlotRoot(block, context)) return;
28096
- sharedFallback = sharedFallback || hasMultipleDynamicSlotRoots(block);
28097
28142
  for (let i = 0; i < block.returns.length; i++) {
28098
28143
  const child = findReturnedDynamic$1(block, block.returns[i]);
28099
28144
  const operation = child && child.operation;
28100
28145
  if (!operation) continue;
28101
- if (operation.type === 15) markSlotRootIf(operation, context, sharedFallback);
28146
+ if (operation.type === 15) markSlotRootIf(operation, context);
28102
28147
  else if (operation.type === 16) markSlotRootFor(operation, context);
28103
28148
  else if (operation.type === 17) {
28104
28149
  operation.slotRoot = true;
28105
- markSlotRootOperations(operation.block, context, sharedFallback);
28150
+ markSlotRootOperations(operation.block, context);
28106
28151
  } else if (operation.type === 12) markSlotRootComponent(operation);
28107
- else if (operation.type === 13) {
28108
- operation.flags |= 4;
28109
- if (sharedFallback) operation.flags |= 8;
28110
- }
28152
+ else if (operation.type === 13) operation.flags |= 4;
28111
28153
  }
28112
28154
  }
28113
- function markSlotRootIf(operation, context, sharedFallback) {
28155
+ function markSlotRootIf(operation, context) {
28114
28156
  if (!operation.once) operation.slotRoot = true;
28115
- markSlotRootOperations(operation.positive, context, sharedFallback);
28157
+ markSlotRootOperations(operation.positive, context);
28116
28158
  const negative = operation.negative;
28117
28159
  if (!negative) return;
28118
- if (negative.type === 15) markSlotRootIf(negative, context, sharedFallback);
28119
- else markSlotRootOperations(negative, context, sharedFallback);
28160
+ if (negative.type === 15) markSlotRootIf(negative, context);
28161
+ else markSlotRootOperations(negative, context);
28120
28162
  }
28121
28163
  function markSlotRootFor(operation, context) {
28122
28164
  if (!operation.once) operation.slotRoot = true;
28123
- markSlotRootOperations(operation.render, context, true);
28124
- }
28125
- function hasMultipleDynamicSlotRoots(block) {
28126
- let count = 0;
28127
- for (let i = 0; i < block.returns.length; i++) {
28128
- const child = findReturnedDynamic$1(block, block.returns[i]);
28129
- if (child && child.operation && ++count > 1) return true;
28130
- }
28131
- return false;
28165
+ markSlotRootOperations(operation.render, context);
28132
28166
  }
28133
28167
  function markSlotRootComponent(operation) {
28134
28168
  if (!operation.once && operation.dynamic && !operation.dynamic.isStatic) operation.slotRoot = true;
@@ -30477,6 +30511,7 @@ var src_exports$1 = /* @__PURE__ */ __exportAll({
30477
30511
  //#region packages/compiler-ssr/src/runtimeHelpers.ts
30478
30512
  const SSR_INTERPOLATE = Symbol(`ssrInterpolate`);
30479
30513
  const SSR_RENDER_VNODE = Symbol(`ssrRenderVNode`);
30514
+ const SSR_RENDER_DYNAMIC_COMPONENT = Symbol(`ssrRenderDynamicComponent`);
30480
30515
  const SSR_RENDER_COMPONENT = Symbol(`ssrRenderComponent`);
30481
30516
  const SSR_RENDER_SLOT = Symbol(`ssrRenderSlot`);
30482
30517
  const SSR_RENDER_SLOT_INNER = Symbol(`ssrRenderSlotInner`);
@@ -30497,6 +30532,7 @@ const SSR_GET_DIRECTIVE_PROPS = Symbol(`ssrGetDirectiveProps`);
30497
30532
  const ssrHelpers = {
30498
30533
  [SSR_INTERPOLATE]: `ssrInterpolate`,
30499
30534
  [SSR_RENDER_VNODE]: `ssrRenderVNode`,
30535
+ [SSR_RENDER_DYNAMIC_COMPONENT]: `ssrRenderDynamicComponent`,
30500
30536
  [SSR_RENDER_COMPONENT]: `ssrRenderComponent`,
30501
30537
  [SSR_RENDER_SLOT]: `ssrRenderSlot`,
30502
30538
  [SSR_RENDER_SLOT_INNER]: `ssrRenderSlotInner`,
@@ -30893,7 +30929,14 @@ const ssrTransformComponent = (node, context) => {
30893
30929
  return fn;
30894
30930
  };
30895
30931
  const slots = node.children.length ? buildSlots(node, context, buildSSRSlotFn).slots : `null`;
30896
- if (typeof component !== "string") node.ssrCodegenNode = createCallExpression(context.helper(SSR_RENDER_VNODE), [
30932
+ if (typeof component !== "string" && rawOptionsMap.get(context.root).vapor) node.ssrCodegenNode = createCallExpression(context.helper(SSR_RENDER_DYNAMIC_COMPONENT), [
30933
+ `_push`,
30934
+ component,
30935
+ propsExp,
30936
+ slots,
30937
+ `_parent`
30938
+ ]);
30939
+ else if (typeof component !== "string") node.ssrCodegenNode = createCallExpression(context.helper(SSR_RENDER_VNODE), [
30897
30940
  `_push`,
30898
30941
  createCallExpression(context.helper(CREATE_VNODE), [
30899
30942
  component,
@@ -31545,10 +31588,10 @@ var require_picocolors_browser = /* @__PURE__ */ __commonJSMin(((exports, module
31545
31588
  module.exports.createColors = create;
31546
31589
  }));
31547
31590
  //#endregion
31548
- //#region (ignored) node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/terminal-highlight
31591
+ //#region (ignored) node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/terminal-highlight
31549
31592
  var require_terminal_highlight = /* @__PURE__ */ __commonJSMin((() => {}));
31550
31593
  //#endregion
31551
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/css-syntax-error.js
31594
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/css-syntax-error.js
31552
31595
  var require_css_syntax_error = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31553
31596
  let pico = require_picocolors_browser();
31554
31597
  let terminalHighlight = require_terminal_highlight();
@@ -31625,16 +31668,9 @@ var require_css_syntax_error = /* @__PURE__ */ __commonJSMin(((exports, module)
31625
31668
  CssSyntaxError.default = CssSyntaxError;
31626
31669
  }));
31627
31670
  //#endregion
31628
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/stringifier.js
31671
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/stringifier.js
31629
31672
  var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31630
- const STYLE_TAG = /(<)(\/?style\b)/gi;
31631
- const COMMENT_OPEN = /(<)(!--)/g;
31632
31673
  const AT_NAME_END = /[\t\n\f\r "#'()/;[\\\]{}]/;
31633
- function escapeHTMLInCSS(str) {
31634
- if (typeof str !== "string") return str;
31635
- if (!str.includes("<")) return str;
31636
- return str.replace(STYLE_TAG, "\\3c $2").replace(COMMENT_OPEN, "\\3c $2");
31637
- }
31638
31674
  const DEFAULT_RAW = {
31639
31675
  after: "\n",
31640
31676
  beforeClose: "\n",
@@ -31663,7 +31699,7 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31663
31699
  function isCustomProperty(node) {
31664
31700
  if (!node.prop.startsWith("--")) return false;
31665
31701
  let before = node.raws.before;
31666
- return typeof before === "undefined" || !/\S$/.test(before);
31702
+ return typeof before === "undefined" || !/[^\s;]$/.test(before);
31667
31703
  }
31668
31704
  function pushBody(str, stack, node) {
31669
31705
  let nodes = node.nodes;
@@ -31687,13 +31723,13 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31687
31723
  }
31688
31724
  function pushBlock(str, stack, node, start) {
31689
31725
  let between = str.raw(node, "between", "beforeOpen");
31690
- str.builder(escapeHTMLInCSS(start + between) + "{", node, "start");
31726
+ str.builder(start + between + "{", node, "start");
31691
31727
  let hasNodes = node.nodes && node.nodes.length;
31692
31728
  let close = () => {
31693
31729
  let after = hasNodes ? str.raw(node, "after") : str.raw(node, "after", "emptyBody");
31694
- if (after) str.builder(escapeHTMLInCSS(after));
31730
+ if (after) str.builder(after);
31695
31731
  str.builder("}", node, "end");
31696
- if (node.type === "rule" && node.raws.ownSemicolon) str.builder(escapeHTMLInCSS(node.raws.ownSemicolon), node, "end");
31732
+ if (node.type === "rule" && node.raws.ownSemicolon) str.builder(node.raws.ownSemicolon, node, "end");
31697
31733
  };
31698
31734
  if (hasNodes) {
31699
31735
  stack.push(close);
@@ -31709,7 +31745,7 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31709
31745
  if (node.nodes) this.block(node, start);
31710
31746
  else {
31711
31747
  let end = (node.raws.between || "") + (semicolon ? ";" : "");
31712
- this.builder(escapeHTMLInCSS(start + end), node);
31748
+ this.builder(start + end, node);
31713
31749
  }
31714
31750
  }
31715
31751
  beforeAfter(node, detect) {
@@ -31732,13 +31768,13 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31732
31768
  }
31733
31769
  block(node, start) {
31734
31770
  let between = this.raw(node, "between", "beforeOpen");
31735
- this.builder(escapeHTMLInCSS(start + between) + "{", node, "start");
31771
+ this.builder(start + between + "{", node, "start");
31736
31772
  let after;
31737
31773
  if (node.nodes && node.nodes.length) {
31738
31774
  this.body(node);
31739
31775
  after = this.raw(node, "after");
31740
31776
  } else after = this.raw(node, "after", "emptyBody");
31741
- if (after) this.builder(escapeHTMLInCSS(after));
31777
+ if (after) this.builder(after);
31742
31778
  this.builder("}", node, "end");
31743
31779
  }
31744
31780
  body(node) {
@@ -31760,7 +31796,7 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31760
31796
  }
31761
31797
  let child = entry.node;
31762
31798
  let before = this.raw(child, "before");
31763
- if (before) this.builder(entry.document ? before : escapeHTMLInCSS(before));
31799
+ if (before) this.builder(before);
31764
31800
  if (expandable && child.type === "rule") pushBlock(this, stack, child, this.rawValue(child, "selector"));
31765
31801
  else if (expandable && child.type === "atrule" && child.nodes) pushBlock(this, stack, child, atruleStart(this, child));
31766
31802
  else this.stringify(child, entry.semicolon);
@@ -31769,7 +31805,7 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31769
31805
  comment(node) {
31770
31806
  let left = this.raw(node, "left", "commentLeft");
31771
31807
  let right = this.raw(node, "right", "commentRight");
31772
- this.builder(escapeHTMLInCSS("/*" + left + node.text + right + "*/"), node);
31808
+ this.builder("/*" + left + node.text + right + "*/", node);
31773
31809
  }
31774
31810
  decl(node, semicolon) {
31775
31811
  let raws = node.raws;
@@ -31777,7 +31813,7 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31777
31813
  let string = node.prop + between + this.rawValue(node, "value");
31778
31814
  if (node.important) string += raws.important || " !important";
31779
31815
  if (semicolon) string += ";";
31780
- this.builder(escapeHTMLInCSS(string), node);
31816
+ this.builder(string, node);
31781
31817
  }
31782
31818
  document(node) {
31783
31819
  this.body(node);
@@ -31928,17 +31964,13 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31928
31964
  return value;
31929
31965
  }
31930
31966
  root(node) {
31931
- if (node.source && node.source.input.hasBOM) this.builder("", node, "start");
31967
+ if (!(node.parent && node.parent.type === "document") && node.source && node.source.input.hasBOM) this.builder("", node, "start");
31932
31968
  this.body(node);
31933
- if (node.raws.after) {
31934
- let after = node.raws.after;
31935
- let isDocument = node.parent && node.parent.type === "document";
31936
- this.builder(isDocument ? after : escapeHTMLInCSS(after));
31937
- }
31969
+ if (node.raws.after) this.builder(node.raws.after);
31938
31970
  }
31939
31971
  rule(node) {
31940
31972
  this.block(node, this.rawValue(node, "selector"));
31941
- if (node.raws.ownSemicolon) this.builder(escapeHTMLInCSS(node.raws.ownSemicolon), node, "end");
31973
+ if (node.raws.ownSemicolon) this.builder(node.raws.ownSemicolon, node, "end");
31942
31974
  }
31943
31975
  stringify(node, semicolon) {
31944
31976
  /* c8 ignore start */
@@ -31951,23 +31983,62 @@ var require_stringifier = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31951
31983
  Stringifier.default = Stringifier;
31952
31984
  }));
31953
31985
  //#endregion
31954
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/stringify.js
31986
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/stringify.js
31955
31987
  var require_stringify = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31956
31988
  let Stringifier = require_stringifier();
31989
+ const STYLE_TAG = /(<)(\/?style\b)/gi;
31990
+ const COMMENT_OPEN = /(<)(!--)/g;
31991
+ function escapeHTMLInCSS(str) {
31992
+ if (!str.includes("<")) return str;
31993
+ return str.replace(STYLE_TAG, "\\3c $2").replace(COMMENT_OPEN, "\\3c $2");
31994
+ }
31995
+ var SafeStringifier = class extends Stringifier {
31996
+ escapeHTML(node, print) {
31997
+ let builder = this.builder;
31998
+ let chunks, css;
31999
+ this.builder = (str, child, type) => {
32000
+ if (chunks) {
32001
+ css += str;
32002
+ chunks.push(str, child, type);
32003
+ } else if (str.includes("<")) {
32004
+ css = str;
32005
+ chunks = [
32006
+ str,
32007
+ child,
32008
+ type
32009
+ ];
32010
+ } else builder(str, child, type);
32011
+ };
32012
+ print();
32013
+ this.builder = builder;
32014
+ if (!chunks) return;
32015
+ let escaped = escapeHTMLInCSS(css);
32016
+ if (escaped === css) for (let i = 0; i < chunks.length; i += 3) builder(chunks[i], chunks[i + 1], chunks[i + 2]);
32017
+ else builder(escaped, node);
32018
+ }
32019
+ root(node) {
32020
+ if (node.parent && node.parent.type === "document") {
32021
+ this.escapeHTML(node, () => this.body(node));
32022
+ if (node.raws.after) this.builder(node.raws.after);
32023
+ } else this.escapeHTML(node, () => super.root(node));
32024
+ }
32025
+ };
31957
32026
  function stringify(node, builder) {
31958
- new Stringifier(builder).stringify(node);
32027
+ let str = new SafeStringifier(builder);
32028
+ if (node.type === "root" || node.type === "document") str.stringify(node);
32029
+ else str.escapeHTML(node, () => str.stringify(node));
31959
32030
  }
31960
32031
  module.exports = stringify;
31961
32032
  stringify.default = stringify;
31962
32033
  }));
31963
32034
  //#endregion
31964
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/symbols.js
32035
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/symbols.js
31965
32036
  var require_symbols = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31966
32037
  module.exports.isClean = Symbol("isClean");
31967
32038
  module.exports.my = Symbol("my");
31968
32039
  }));
31969
32040
  //#endregion
31970
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/node.js
32041
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/node.js
31971
32042
  var require_node$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
31972
32043
  let CssSyntaxError = require_css_syntax_error();
31973
32044
  let Stringifier = require_stringifier();
@@ -32329,7 +32400,7 @@ var require_node$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32329
32400
  Node.default = Node;
32330
32401
  }));
32331
32402
  //#endregion
32332
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/comment.js
32403
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/comment.js
32333
32404
  var require_comment$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32334
32405
  let Node = require_node$1();
32335
32406
  var Comment = class extends Node {
@@ -32342,7 +32413,7 @@ var require_comment$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32342
32413
  Comment.default = Comment;
32343
32414
  }));
32344
32415
  //#endregion
32345
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/declaration.js
32416
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/declaration.js
32346
32417
  var require_declaration = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32347
32418
  init_objectSpread2();
32348
32419
  let Node = require_node$1();
@@ -32360,7 +32431,7 @@ var require_declaration = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32360
32431
  Declaration.default = Declaration;
32361
32432
  }));
32362
32433
  //#endregion
32363
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/container.js
32434
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/container.js
32364
32435
  var require_container$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32365
32436
  let Comment = require_comment$1();
32366
32437
  let Declaration = require_declaration();
@@ -32696,7 +32767,7 @@ var require_container$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32696
32767
  }));
32697
32768
  /* c8 ignore stop */
32698
32769
  //#endregion
32699
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/at-rule.js
32770
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/at-rule.js
32700
32771
  var require_at_rule = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32701
32772
  let Container = require_container$1();
32702
32773
  var AtRule = class extends Container {
@@ -32718,7 +32789,7 @@ var require_at_rule = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32718
32789
  Container.registerAtRule(AtRule);
32719
32790
  }));
32720
32791
  //#endregion
32721
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/document.js
32792
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/document.js
32722
32793
  var require_document = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32723
32794
  init_objectSpread2();
32724
32795
  let Container = require_container$1();
@@ -32792,10 +32863,10 @@ var require_non_secure = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32792
32863
  };
32793
32864
  }));
32794
32865
  //#endregion
32795
- //#region (ignored) node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib
32866
+ //#region (ignored) node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib
32796
32867
  var require_lib = /* @__PURE__ */ __commonJSMin((() => {}));
32797
32868
  //#endregion
32798
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/previous-map.js
32869
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/previous-map.js
32799
32870
  var require_previous_map = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32800
32871
  init__polyfill_node_buffer();
32801
32872
  let { existsSync, readFileSync, realpathSync } = (init__polyfill_node_fs(), __toCommonJS(_polyfill_node_fs_exports));
@@ -32909,7 +32980,7 @@ var require_previous_map = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32909
32980
  PreviousMap.default = PreviousMap;
32910
32981
  }));
32911
32982
  //#endregion
32912
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/input.js
32983
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/input.js
32913
32984
  var require_input = /* @__PURE__ */ __commonJSMin(((exports, module) => {
32914
32985
  init_objectSpread2();
32915
32986
  let { nanoid } = require_non_secure();
@@ -33109,7 +33180,7 @@ var require_input = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33109
33180
  if (terminalHighlight && terminalHighlight.registerInput) terminalHighlight.registerInput(Input);
33110
33181
  }));
33111
33182
  //#endregion
33112
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/root.js
33183
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/root.js
33113
33184
  var require_root$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33114
33185
  let Container = require_container$1();
33115
33186
  let LazyResult;
@@ -33154,7 +33225,7 @@ var require_root$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33154
33225
  Container.registerRoot(Root);
33155
33226
  }));
33156
33227
  //#endregion
33157
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/list.js
33228
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/list.js
33158
33229
  var require_list = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33159
33230
  let list = {
33160
33231
  comma(string) {
@@ -33176,7 +33247,18 @@ var require_list = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33176
33247
  let inQuote = false;
33177
33248
  let prevQuote = "";
33178
33249
  let escape = false;
33179
- for (let letter of string) {
33250
+ let inComment = false;
33251
+ for (let i = 0; i < string.length; i++) {
33252
+ let letter = string[i];
33253
+ if (inComment) {
33254
+ current += letter;
33255
+ if (letter === "*" && string[i + 1] === "/") {
33256
+ current += "/";
33257
+ i += 1;
33258
+ inComment = false;
33259
+ }
33260
+ continue;
33261
+ }
33180
33262
  if (escape) escape = false;
33181
33263
  else if (letter === "\\") escape = true;
33182
33264
  else if (inQuote) {
@@ -33184,6 +33266,11 @@ var require_list = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33184
33266
  } else if (letter === "\"" || letter === "'") {
33185
33267
  inQuote = true;
33186
33268
  prevQuote = letter;
33269
+ } else if (letter === "/" && string[i + 1] === "*") {
33270
+ current += "/*";
33271
+ i += 1;
33272
+ inComment = true;
33273
+ continue;
33187
33274
  } else if (letter === "(") func += 1;
33188
33275
  else if (letter === ")") {
33189
33276
  if (func > 0) func -= 1;
@@ -33206,7 +33293,7 @@ var require_list = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33206
33293
  list.default = list;
33207
33294
  }));
33208
33295
  //#endregion
33209
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/rule.js
33296
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/rule.js
33210
33297
  var require_rule = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33211
33298
  let Container = require_container$1();
33212
33299
  let list = require_list();
@@ -33230,7 +33317,7 @@ var require_rule = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33230
33317
  Container.registerRule(Rule);
33231
33318
  }));
33232
33319
  //#endregion
33233
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/fromJSON.js
33320
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/fromJSON.js
33234
33321
  var require_fromJSON = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33235
33322
  init_objectSpread2();
33236
33323
  init_objectWithoutProperties();
@@ -33306,7 +33393,7 @@ var require_fromJSON = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33306
33393
  fromJSON.default = fromJSON;
33307
33394
  }));
33308
33395
  //#endregion
33309
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/map-generator.js
33396
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/map-generator.js
33310
33397
  var require_map_generator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33311
33398
  init__polyfill_node_buffer();
33312
33399
  let { dirname, relative, resolve, sep } = (init__polyfill_node_path(), __toCommonJS(_polyfill_node_path_exports));
@@ -33361,13 +33448,17 @@ var require_map_generator = /* @__PURE__ */ __commonJSMin(((exports, module) =>
33361
33448
  }
33362
33449
  } else if (this.css) {
33363
33450
  let annotation = "/*# sourceMappingURL=";
33451
+ let css = "";
33452
+ let cursor = 0;
33364
33453
  let startIndex;
33365
- while ((startIndex = this.css.lastIndexOf(annotation)) !== -1) {
33454
+ while ((startIndex = this.css.indexOf(annotation, cursor)) !== -1) {
33366
33455
  let endIndex = this.css.indexOf("*/", startIndex + 21);
33367
33456
  if (endIndex === -1) break;
33368
- while (startIndex > 0 && this.css[startIndex - 1] === "\n") startIndex--;
33369
- this.css = this.css.slice(0, startIndex) + this.css.slice(endIndex + 2);
33457
+ while (startIndex > cursor && this.css[startIndex - 1] === "\n") startIndex--;
33458
+ css += this.css.slice(cursor, startIndex);
33459
+ cursor = endIndex + 2;
33370
33460
  }
33461
+ if (cursor > 0) this.css = css + this.css.slice(cursor);
33371
33462
  }
33372
33463
  }
33373
33464
  generate() {
@@ -33578,7 +33669,7 @@ var require_map_generator = /* @__PURE__ */ __commonJSMin(((exports, module) =>
33578
33669
  module.exports = MapGenerator;
33579
33670
  }));
33580
33671
  //#endregion
33581
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/tokenize.js
33672
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/tokenize.js
33582
33673
  var require_tokenize$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33583
33674
  const SINGLE_QUOTE = "'".charCodeAt(0);
33584
33675
  const DOUBLE_QUOTE = "\"".charCodeAt(0);
@@ -33815,7 +33906,7 @@ var require_tokenize$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33815
33906
  };
33816
33907
  }));
33817
33908
  //#endregion
33818
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/parser.js
33909
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/parser.js
33819
33910
  var require_parser$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
33820
33911
  let AtRule = require_at_rule();
33821
33912
  let Comment = require_comment$1();
@@ -34189,6 +34280,7 @@ var require_parser$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34189
34280
  let token, type;
34190
34281
  let length = tokens.length;
34191
34282
  let value = "";
34283
+ let last = "";
34192
34284
  let clean = true;
34193
34285
  let next, prev;
34194
34286
  for (let i = 0; i < length; i += 1) {
@@ -34199,10 +34291,16 @@ var require_parser$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34199
34291
  prev = tokens[i - 1] ? tokens[i - 1][0] : "empty";
34200
34292
  next = tokens[i + 1] ? tokens[i + 1][0] : "empty";
34201
34293
  if (!SAFE_COMMENT_NEIGHBOR[prev] && !SAFE_COMMENT_NEIGHBOR[next]) {
34202
- if (value.slice(-1) === ",") clean = false;
34203
- else value += token[1];
34294
+ if (last === ",") clean = false;
34295
+ else {
34296
+ value += token[1];
34297
+ last = token[1].slice(-1);
34298
+ }
34204
34299
  } else clean = false;
34205
- } else value += token[1];
34300
+ } else {
34301
+ value += token[1];
34302
+ last = token[1].slice(-1);
34303
+ }
34206
34304
  }
34207
34305
  if (!clean) {
34208
34306
  let raw = tokens.reduce((all, i) => all + i[1], "");
@@ -34277,7 +34375,7 @@ var require_parser$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34277
34375
  module.exports = Parser;
34278
34376
  }));
34279
34377
  //#endregion
34280
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/parse.js
34378
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/parse.js
34281
34379
  var require_parse = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34282
34380
  let Container = require_container$1();
34283
34381
  let Input = require_input();
@@ -34302,7 +34400,7 @@ var require_parse = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34302
34400
  Container.registerParse(parse);
34303
34401
  }));
34304
34402
  //#endregion
34305
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/warning.js
34403
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/warning.js
34306
34404
  var require_warning = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34307
34405
  let Container = require_container$1();
34308
34406
  let { my } = require_symbols();
@@ -34334,7 +34432,7 @@ var require_warning = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34334
34432
  Warning.default = Warning;
34335
34433
  }));
34336
34434
  //#endregion
34337
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/result.js
34435
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/result.js
34338
34436
  var require_result = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34339
34437
  let Warning = require_warning();
34340
34438
  var Result = class {
@@ -34368,7 +34466,7 @@ var require_result = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34368
34466
  Result.default = Result;
34369
34467
  }));
34370
34468
  //#endregion
34371
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/warn-once.js
34469
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/warn-once.js
34372
34470
  var require_warn_once = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34373
34471
  let printed = {};
34374
34472
  module.exports = function warnOnce(message) {
@@ -34378,7 +34476,7 @@ var require_warn_once = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34378
34476
  };
34379
34477
  }));
34380
34478
  //#endregion
34381
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/lazy-result.js
34479
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/lazy-result.js
34382
34480
  var require_lazy_result = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34383
34481
  init_objectSpread2();
34384
34482
  init_asyncToGenerator();
@@ -34846,7 +34944,7 @@ var require_lazy_result = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34846
34944
  Document.registerLazyResult(LazyResult);
34847
34945
  }));
34848
34946
  //#endregion
34849
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/no-work-result.js
34947
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/no-work-result.js
34850
34948
  var require_no_work_result = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34851
34949
  let MapGenerator = require_map_generator();
34852
34950
  let parse = require_parse();
@@ -34943,7 +35041,7 @@ var require_no_work_result = /* @__PURE__ */ __commonJSMin(((exports, module) =>
34943
35041
  NoWorkResult.default = NoWorkResult;
34944
35042
  }));
34945
35043
  //#endregion
34946
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/processor.js
35044
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/processor.js
34947
35045
  var require_processor$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34948
35046
  let Document = require_document();
34949
35047
  let LazyResult = require_lazy_result();
@@ -34951,7 +35049,7 @@ var require_processor$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34951
35049
  let Root = require_root$1();
34952
35050
  var Processor = class {
34953
35051
  constructor(plugins = []) {
34954
- this.version = "8.5.28";
35052
+ this.version = "8.5.29";
34955
35053
  this.plugins = this.normalize(plugins);
34956
35054
  }
34957
35055
  normalize(plugins) {
@@ -34982,7 +35080,7 @@ var require_processor$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
34982
35080
  Document.registerProcessor(Processor);
34983
35081
  }));
34984
35082
  //#endregion
34985
- //#region node_modules/.pnpm/postcss@8.5.28/node_modules/postcss/lib/postcss.mjs
35083
+ //#region node_modules/.pnpm/postcss@8.5.29/node_modules/postcss/lib/postcss.mjs
34986
35084
  var import_postcss = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
34987
35085
  init__polyfill_node_process();
34988
35086
  let AtRule = require_at_rule();
@@ -43414,11 +43512,14 @@ function transformDestructuredProps(ctx, vueImportAliases) {
43414
43512
  const excludedIds = /* @__PURE__ */ new WeakSet();
43415
43513
  const parentStack = [];
43416
43514
  const propsLocalToPublicMap = Object.create(null);
43515
+ const modelOptionNodes = /* @__PURE__ */ new Set();
43516
+ let currentModelOption = null;
43417
43517
  for (const key in ctx.propsDestructuredBindings) {
43418
43518
  const { local } = ctx.propsDestructuredBindings[key];
43419
43519
  rootScope[local] = true;
43420
43520
  propsLocalToPublicMap[local] = key;
43421
43521
  }
43522
+ for (const { runtimeOptionNodes } of Object.values(ctx.modelDecls)) for (const node of runtimeOptionNodes) modelOptionNodes.add(node);
43422
43523
  function pushScope(isFunctionScope = false) {
43423
43524
  const scope = currentScope = Object.create(currentScope);
43424
43525
  scopeStack.push(scope);
@@ -43459,6 +43560,10 @@ function transformDestructuredProps(ctx, vueImportAliases) {
43459
43560
  } });
43460
43561
  }
43461
43562
  function rewriteId(id, parent, parentStack) {
43563
+ if (currentModelOption) {
43564
+ const isDefault = (currentModelOption.type === "ObjectProperty" || currentModelOption.type === "ObjectMethod") && resolveObjectKey(currentModelOption.key, currentModelOption.computed) === "default";
43565
+ ctx.error(`\`${DEFINE_MODEL}()\` prop options cannot reference destructured props because they are hoisted outside of the setup() function.` + (isDefault ? ` Use the props argument of the default factory instead, e.g. default: props => props${genPropsAccessExp(propsLocalToPublicMap[id.name]).slice(`__props`.length)}` : ``), id);
43566
+ }
43462
43567
  if (parent.type === "AssignmentExpression" && id === parent.left || parent.type === "UpdateExpression") ctx.error(`Cannot assign to destructured props as they are readonly.`, id);
43463
43568
  if (isStaticProperty(parent) && parent.shorthand) {
43464
43569
  if (!parent.inPattern || isInDestructureAssignment(parent, parentStack)) ctx.s.appendLeft(id.end + ctx.startOffset, `: ${genPropsAccessExp(propsLocalToPublicMap[id.name])}`);
@@ -43477,6 +43582,7 @@ function transformDestructuredProps(ctx, vueImportAliases) {
43477
43582
  enter(node, parent) {
43478
43583
  parent && parentStack.push(parent);
43479
43584
  if (parent && parent.type.startsWith("TS") && !TS_NODE_TYPES.includes(parent.type)) return this.skip();
43585
+ if (modelOptionNodes.has(node)) currentModelOption = node;
43480
43586
  checkUsage(node, "watch", vueImportAliases.watch);
43481
43587
  checkUsage(node, "toRef", vueImportAliases.toRef);
43482
43588
  if (isFunctionType(node)) {
@@ -43514,6 +43620,7 @@ function transformDestructuredProps(ctx, vueImportAliases) {
43514
43620
  },
43515
43621
  leave(node, parent) {
43516
43622
  parent && parentStack.pop();
43623
+ if (node === currentModelOption) currentModelOption = null;
43517
43624
  if (isFunctionType(node)) popScope(true);
43518
43625
  else if (node.type === "BlockStatement" && !isFunctionType(parent)) popScope();
43519
43626
  else if (node.type === "CatchClause" || node.type === "ForOfStatement" || node.type === "ForInStatement" || node.type === "ForStatement") popScope();
@@ -44060,7 +44167,7 @@ function compileScript(sfc, options) {
44060
44167
  if (cssModuleBindings.length) returned = `{\n${cssModuleBindings.join("\n")}\n${returned}\n}`;
44061
44168
  } else returned = `() => {}`;
44062
44169
  if (!inlineMode && true) ctx.s.appendRight(endOffset, `\nconst __returned__ = ${returned}\nObject.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true })\nreturn __returned__\n}\n\n`);
44063
- else ctx.s.appendRight(endOffset, `\n${vapor && !ssr && inlineMode ? `` : `return `}${returned}\n}\n\n`);
44170
+ else ctx.s.appendRight(endOffset, `\n${vapor && !ssr && inlineMode && !(!sfc.template && ctx.hasDefaultExportRender) ? `` : `return `}${returned}\n}\n\n`);
44064
44171
  const genDefaultAs = options.genDefaultAs ? `const ${options.genDefaultAs} =` : `export default`;
44065
44172
  let runtimeOptions = ``;
44066
44173
  if (!ctx.hasDefaultExportName && filename && filename !== "anonymous.vue") {
@@ -44235,7 +44342,7 @@ function mergeSourceMaps(scriptMap, templateMap, templateLineOffset) {
44235
44342
  //#endregion
44236
44343
  //#region packages/compiler-sfc/src/index.ts
44237
44344
  init_objectSpread2();
44238
- const version = "3.6.0-rc.11";
44345
+ const version = "3.6.0-rc.12";
44239
44346
  const parseCache = parseCache$1;
44240
44347
  const errorMessages = _objectSpread2(_objectSpread2({}, errorMessages$1), DOMErrorMessages);
44241
44348
  const walk = walk$2;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vue/compiler-sfc",
3
- "version": "3.6.0-rc.11",
3
+ "version": "3.6.0-rc.12",
4
4
  "description": "@vue/compiler-sfc",
5
5
  "main": "dist/compiler-sfc.cjs.js",
6
6
  "module": "dist/compiler-sfc.esm-browser.js",
@@ -42,16 +42,16 @@
42
42
  },
43
43
  "homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-sfc#readme",
44
44
  "dependencies": {
45
- "@babel/parser": "^7.29.8",
46
- "@vue/compiler-core": "3.6.0-rc.11",
47
- "@vue/compiler-dom": "3.6.0-rc.11",
48
- "@vue/compiler-ssr": "3.6.0-rc.11",
49
- "@vue/compiler-vapor": "3.6.0-rc.11",
50
- "@vue/shared": "3.6.0-rc.11",
45
+ "@babel/parser": "^7.29.9",
46
+ "@vue/compiler-core": "3.6.0-rc.12",
47
+ "@vue/compiler-dom": "3.6.0-rc.12",
48
+ "@vue/compiler-ssr": "3.6.0-rc.12",
49
+ "@vue/compiler-vapor": "3.6.0-rc.12",
50
+ "@vue/shared": "3.6.0-rc.12",
51
51
  "estree-walker": "^2.0.2",
52
52
  "magic-string": "^0.30.21",
53
- "postcss": "^8.5.28",
54
- "source-map-js": "^1.2.1"
53
+ "postcss": "^8.5.29",
54
+ "source-map-js": "^1.2.2"
55
55
  },
56
56
  "devDependencies": {
57
57
  "@babel/types": "^7.29.8",
@@ -63,6 +63,6 @@
63
63
  "postcss-modules": "^6.0.1",
64
64
  "postcss-selector-parser": "^7.1.6",
65
65
  "pug": "^3.0.4",
66
- "sass": "^1.104.1"
66
+ "sass": "^1.105.1"
67
67
  }
68
68
  }