@vue-jsx-vapor/macros 2.5.2 → 2.5.4-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/api.cjs CHANGED
@@ -1,4 +1,4 @@
1
- const require_core = require('./core-CJIyaYlk.cjs');
1
+ const require_core = require('./core-BnOBUOXo.cjs');
2
2
 
3
3
  exports.getMacroExpression = require_core.getMacroExpression;
4
4
  exports.isFunctionalNode = require_core.isFunctionalNode;
package/dist/api.js CHANGED
@@ -1,3 +1,3 @@
1
- import { getMacroExpression, isFunctionalNode, restructure, transformJsxMacros } from "./core-CtkYfL-E.js";
1
+ import { getMacroExpression, isFunctionalNode, restructure, transformJsxMacros } from "./core-CzkzlWGo.js";
2
2
 
3
3
  export { getMacroExpression, isFunctionalNode, restructure, transformJsxMacros };
package/dist/astro.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
- const require_src = require('./src-CnMPxcfy.cjs');
5
+ const require_src = require('./src-DJK4pxUR.cjs');
6
6
 
7
7
  //#region src/astro.ts
8
8
  var astro_default = (options) => ({
package/dist/astro.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import { src_default } from "./src-CYY_kpUg.js";
4
+ import { src_default } from "./src-BMmuQ4rG.js";
5
5
 
6
6
  //#region src/astro.ts
7
7
  var astro_default = (options) => ({
@@ -177,7 +177,7 @@ function transformDefineComponent(root, propsName, macros, s, autoReturnFunction
177
177
  if (root.params[0].type === "Identifier") {
178
178
  getWalkedIds(root, propsName).forEach((id) => props[id] = null);
179
179
  prependFunctionalNode(root, s, `const ${propsName} = ${(0, __vue_macros_common.importHelperFn)(s, 0, "useFullProps", void 0, "vue-jsx-vapor")}()`);
180
- s.overwrite(root.params[0].start, root.params[0].end, `${__vue_macros_common.HELPER_PREFIX}props`);
180
+ s.overwrite(root.params[0].start, root.params[0].end, root.params.length > 1 ? `${__vue_macros_common.HELPER_PREFIX}props` : "");
181
181
  } else if (root.params[0].type === "ObjectPattern") {
182
182
  const restructuredProps = root.params[0];
183
183
  for (const prop of restructuredProps.properties) {
@@ -412,7 +412,7 @@ function transformJsxMacros(code, id, importMap, options) {
412
412
  if (!macros.defineComponent && lastProp?.type === "RestElement" && lastProp.argument.type === "Identifier") propsName = lastProp.argument.name;
413
413
  else s.appendRight(root.params[0].extra?.trailingComma ? root.params[0].extra?.trailingComma + 1 : lastProp?.end || root.params[0].end - 1, `${!root.params[0].extra?.trailingComma && root.params[0].properties.length ? "," : ""} ...${__vue_macros_common.HELPER_PREFIX}props`);
414
414
  }
415
- } else s.appendRight(getParamsStart(root, s.original), propsName);
415
+ } else if (macros.defineModel?.length) s.appendRight(getParamsStart(root, s.original), propsName);
416
416
  if (macros.defineComponent) transformDefineComponent(root, propsName, macros, s, options.defineComponent?.autoReturnFunction);
417
417
  if (macros.defineModel?.length) macros.defineModel.forEach(({ expression }) => {
418
418
  transformDefineModel(expression, propsName, s);
@@ -176,7 +176,7 @@ function transformDefineComponent(root, propsName, macros, s, autoReturnFunction
176
176
  if (root.params[0].type === "Identifier") {
177
177
  getWalkedIds(root, propsName).forEach((id) => props[id] = null);
178
178
  prependFunctionalNode(root, s, `const ${propsName} = ${importHelperFn(s, 0, "useFullProps", void 0, "vue-jsx-vapor")}()`);
179
- s.overwrite(root.params[0].start, root.params[0].end, `${HELPER_PREFIX}props`);
179
+ s.overwrite(root.params[0].start, root.params[0].end, root.params.length > 1 ? `${HELPER_PREFIX}props` : "");
180
180
  } else if (root.params[0].type === "ObjectPattern") {
181
181
  const restructuredProps = root.params[0];
182
182
  for (const prop of restructuredProps.properties) {
@@ -411,7 +411,7 @@ function transformJsxMacros(code, id, importMap, options) {
411
411
  if (!macros.defineComponent && lastProp?.type === "RestElement" && lastProp.argument.type === "Identifier") propsName = lastProp.argument.name;
412
412
  else s.appendRight(root.params[0].extra?.trailingComma ? root.params[0].extra?.trailingComma + 1 : lastProp?.end || root.params[0].end - 1, `${!root.params[0].extra?.trailingComma && root.params[0].properties.length ? "," : ""} ...${HELPER_PREFIX}props`);
413
413
  }
414
- } else s.appendRight(getParamsStart(root, s.original), propsName);
414
+ } else if (macros.defineModel?.length) s.appendRight(getParamsStart(root, s.original), propsName);
415
415
  if (macros.defineComponent) transformDefineComponent(root, propsName, macros, s, options.defineComponent?.autoReturnFunction);
416
416
  if (macros.defineModel?.length) macros.defineModel.forEach(({ expression }) => {
417
417
  transformDefineModel(expression, propsName, s);
package/dist/esbuild.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
- const require_src = require('./src-CnMPxcfy.cjs');
5
+ const require_src = require('./src-DJK4pxUR.cjs');
6
6
 
7
7
  //#region src/esbuild.ts
8
8
  var esbuild_default = require_src.src_default.esbuild;
package/dist/esbuild.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import { src_default } from "./src-CYY_kpUg.js";
4
+ import { src_default } from "./src-BMmuQ4rG.js";
5
5
 
6
6
  //#region src/esbuild.ts
7
7
  var esbuild_default = src_default.esbuild;
package/dist/index.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  const require_options = require('./options-BejTnOdM.cjs');
5
- const require_src = require('./src-CnMPxcfy.cjs');
5
+ const require_src = require('./src-DJK4pxUR.cjs');
6
6
 
7
7
  exports.default = require_src.src_default;
8
8
  exports.resolveOptions = require_options.resolveOptions;
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import { resolveOptions } from "./options-BWRkHmm5.js";
4
- import { src_default } from "./src-CYY_kpUg.js";
4
+ import { src_default } from "./src-BMmuQ4rG.js";
5
5
 
6
6
  export { src_default as default, resolveOptions };
package/dist/nuxt.cjs CHANGED
@@ -1,11 +1,11 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
2
  const require_chunk = require('./chunk-CUT6urMc.cjs');
3
- require('./core-CJIyaYlk.cjs');
4
- require('./raw-fnyAVQJZ.cjs');
3
+ require('./core-BnOBUOXo.cjs');
4
+ require('./raw-DKCRm2ff.cjs');
5
5
  require('./options-BejTnOdM.cjs');
6
- require('./src-CnMPxcfy.cjs');
7
- const require_vite = require('./vite-55JkDcH_.cjs');
8
- const require_webpack = require('./webpack-CMEaEJ1m.cjs');
6
+ require('./src-DJK4pxUR.cjs');
7
+ const require_vite = require('./vite-DRkDbCPE.cjs');
8
+ const require_webpack = require('./webpack-CsAn2U-j.cjs');
9
9
  const __nuxt_kit = require_chunk.__toESM(require("@nuxt/kit"));
10
10
  require("@nuxt/schema");
11
11
 
package/dist/nuxt.d.cts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { Options } from "./options-Egmm6BVJ.cjs";
2
- import * as _nuxt_schema5 from "@nuxt/schema";
2
+ import * as _nuxt_schema2 from "@nuxt/schema";
3
3
 
4
4
  //#region src/nuxt.d.ts
5
5
  interface ModuleOptions extends Options {}
6
- declare const _default: _nuxt_schema5.NuxtModule<ModuleOptions, ModuleOptions, false>;
6
+ declare const _default: _nuxt_schema2.NuxtModule<ModuleOptions, ModuleOptions, false>;
7
7
  //#endregion
8
8
  export { ModuleOptions, _default as default };
package/dist/nuxt.js CHANGED
@@ -1,9 +1,9 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import "./src-CYY_kpUg.js";
5
- import { vite_default } from "./vite-UTnXGFnz.js";
6
- import { webpack_default } from "./webpack-vi_c875X.js";
4
+ import "./src-BMmuQ4rG.js";
5
+ import { vite_default } from "./vite-DbwHYLPn.js";
6
+ import { webpack_default } from "./webpack-WGax0jDH.js";
7
7
  import { addVitePlugin, addWebpackPlugin, defineNuxtModule } from "@nuxt/kit";
8
8
  import "@nuxt/schema";
9
9
 
@@ -1,4 +1,4 @@
1
- import { helperPrefix, transformJsxMacros, useModelHelperId, use_model_default, withDefaultsHelperId, with_defaults_default } from "./core-CtkYfL-E.js";
1
+ import { helperPrefix, transformJsxMacros, useModelHelperId, use_model_default, withDefaultsHelperId, with_defaults_default } from "./core-CzkzlWGo.js";
2
2
  import { resolveOptions } from "./options-BWRkHmm5.js";
3
3
  import { createFilter, normalizePath } from "@vue-macros/common";
4
4
  import { compileStyleAsync } from "@vue/compiler-sfc";
@@ -1,5 +1,5 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_core = require('./core-CJIyaYlk.cjs');
2
+ const require_core = require('./core-BnOBUOXo.cjs');
3
3
  const require_options = require('./options-BejTnOdM.cjs');
4
4
  const __vue_macros_common = require_chunk.__toESM(require("@vue-macros/common"));
5
5
  const __vue_compiler_sfc = require_chunk.__toESM(require("@vue/compiler-sfc"));
package/dist/raw.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- const require_raw = require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ const require_raw = require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
5
 
6
6
  exports.default = require_raw.raw_default;
package/dist/raw.js CHANGED
@@ -1,5 +1,5 @@
1
- import "./core-CtkYfL-E.js";
2
- import { raw_default } from "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import { raw_default } from "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
4
 
5
5
  export { raw_default as default };
package/dist/rolldown.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
- const require_src = require('./src-CnMPxcfy.cjs');
5
+ const require_src = require('./src-DJK4pxUR.cjs');
6
6
 
7
7
  //#region src/rolldown.ts
8
8
  var rolldown_default = require_src.src_default.rolldown;
@@ -1,7 +1,7 @@
1
1
  import { Options } from "./options-Egmm6BVJ.cjs";
2
- import * as unplugin8 from "unplugin";
2
+ import * as unplugin4 from "unplugin";
3
3
 
4
4
  //#region src/rolldown.d.ts
5
- declare const _default: (options?: Options | undefined) => unplugin8.RolldownPlugin<any> | unplugin8.RolldownPlugin<any>[];
5
+ declare const _default: (options?: Options | undefined) => unplugin4.RolldownPlugin<any> | unplugin4.RolldownPlugin<any>[];
6
6
  //#endregion
7
7
  export { _default as default };
package/dist/rolldown.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import { src_default } from "./src-CYY_kpUg.js";
4
+ import { src_default } from "./src-BMmuQ4rG.js";
5
5
 
6
6
  //#region src/rolldown.ts
7
7
  var rolldown_default = src_default.rolldown;
package/dist/rollup.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
- const require_src = require('./src-CnMPxcfy.cjs');
5
+ const require_src = require('./src-DJK4pxUR.cjs');
6
6
 
7
7
  //#region src/rollup.ts
8
8
  var rollup_default = require_src.src_default.rollup;
package/dist/rollup.d.cts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Options } from "./options-Egmm6BVJ.cjs";
2
- import * as rollup3 from "rollup";
2
+ import * as rollup7 from "rollup";
3
3
 
4
4
  //#region src/rollup.d.ts
5
- declare const _default: (options?: Options | undefined) => rollup3.Plugin<any> | rollup3.Plugin<any>[];
5
+ declare const _default: (options?: Options | undefined) => rollup7.Plugin<any> | rollup7.Plugin<any>[];
6
6
  //#endregion
7
7
  export { _default as default };
package/dist/rollup.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import { src_default } from "./src-CYY_kpUg.js";
4
+ import { src_default } from "./src-BMmuQ4rG.js";
5
5
 
6
6
  //#region src/rollup.ts
7
7
  var rollup_default = src_default.rollup;
package/dist/rspack.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
- const require_src = require('./src-CnMPxcfy.cjs');
5
+ const require_src = require('./src-DJK4pxUR.cjs');
6
6
 
7
7
  //#region src/rspack.ts
8
8
  var rspack_default = require_src.src_default.rspack;
package/dist/rspack.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import { src_default } from "./src-CYY_kpUg.js";
4
+ import { src_default } from "./src-BMmuQ4rG.js";
5
5
 
6
6
  //#region src/rspack.ts
7
7
  var rspack_default = src_default.rspack;
@@ -1,4 +1,4 @@
1
- import { raw_default } from "./raw-CdxUliM8.js";
1
+ import { raw_default } from "./raw-Cs8E-0N5.js";
2
2
  import { createUnplugin } from "unplugin";
3
3
 
4
4
  //#region src/index.ts
@@ -1,5 +1,5 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_raw = require('./raw-fnyAVQJZ.cjs');
2
+ const require_raw = require('./raw-DKCRm2ff.cjs');
3
3
  const unplugin = require_chunk.__toESM(require("unplugin"));
4
4
 
5
5
  //#region src/index.ts
@@ -1,4 +1,4 @@
1
- const require_src = require('./src-CnMPxcfy.cjs');
1
+ const require_src = require('./src-DJK4pxUR.cjs');
2
2
 
3
3
  //#region src/vite.ts
4
4
  var vite_default = require_src.src_default.vite;
@@ -1,4 +1,4 @@
1
- import { src_default } from "./src-CYY_kpUg.js";
1
+ import { src_default } from "./src-BMmuQ4rG.js";
2
2
 
3
3
  //#region src/vite.ts
4
4
  var vite_default = src_default.vite;
package/dist/vite.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
- require('./src-CnMPxcfy.cjs');
6
- const require_vite = require('./vite-55JkDcH_.cjs');
5
+ require('./src-DJK4pxUR.cjs');
6
+ const require_vite = require('./vite-DRkDbCPE.cjs');
7
7
 
8
8
  exports.default = require_vite.vite_default;
package/dist/vite.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import "./src-CYY_kpUg.js";
5
- import { vite_default } from "./vite-UTnXGFnz.js";
4
+ import "./src-BMmuQ4rG.js";
5
+ import { vite_default } from "./vite-DbwHYLPn.js";
6
6
 
7
7
  export { vite_default as default };
package/dist/volar.cjs CHANGED
@@ -14,7 +14,7 @@ function transformDefineComponent(node, parent, options) {
14
14
 
15
15
  //#endregion
16
16
  //#region src/volar/define-style.ts
17
- function transformDefineStyle({ expression, isCssModules }, index, options) {
17
+ function transformDefineStyle({ expression, isCssModules }, index, root, options) {
18
18
  const { ts, codes, ast } = options;
19
19
  if (isCssModules && expression?.arguments[0] && !expression.typeArguments && ts.isTemplateLiteral(expression.arguments[0])) codes.replaceRange(expression.arguments.pos - 1, expression.arguments.pos - 1, `<{`, ...parseCssClassNames(expression.arguments[0].getText(ast).slice(1, -1)).flatMap(({ text, offset }) => [
20
20
  `\n`,
@@ -26,6 +26,13 @@ function transformDefineStyle({ expression, isCssModules }, index, options) {
26
26
  ],
27
27
  `: string`
28
28
  ]), "\n}>");
29
+ else if (root?.body) {
30
+ const returnNode = root.body.forEachChild((node) => ts.isReturnStatement(node) ? node : void 0);
31
+ if (returnNode) {
32
+ codes.replaceRange(expression.getStart(ast), expression.getEnd());
33
+ codes.replaceRange(returnNode.pos, returnNode.pos, ";", [expression.getText(ast), expression.getStart(ast)]);
34
+ }
35
+ }
29
36
  addEmbeddedCode(expression, index, options);
30
37
  }
31
38
  const commentReg = /(?<=\/\*)[\s\S]*?(?=\*\/)|(?<=\/\/)[\s\S]*?(?=\n)/g;
@@ -73,8 +80,8 @@ function transformJsxMacros(rootMap, options) {
73
80
  const { ts, codes, ast } = options;
74
81
  let defineStyleIndex = 0;
75
82
  for (const [root, macros] of rootMap) {
76
- macros.defineStyle?.forEach((defaultStyle) => transformDefineStyle(defaultStyle, defineStyleIndex++, options));
77
- if (!root?.body) continue;
83
+ macros.defineStyle?.forEach((defaultStyle) => transformDefineStyle(defaultStyle, defineStyleIndex++, root, options));
84
+ if (!root?.body || Object.keys(macros).length === 1 && macros.defineStyle) continue;
78
85
  const asyncModifier = root.modifiers?.find((modifier) => modifier.kind === ts.SyntaxKind.AsyncKeyword);
79
86
  if (asyncModifier && macros.defineComponent) codes.replaceRange(asyncModifier.pos, asyncModifier.end);
80
87
  const result = `({}) as __VLS_PickNotAny<typeof ${__vue_macros_common.HELPER_PREFIX}ctx.render, {}> & { __ctx: typeof ${__vue_macros_common.HELPER_PREFIX}ctx }`;
@@ -111,18 +118,23 @@ return {
111
118
 
112
119
  //#endregion
113
120
  //#region src/volar/global-types.ts
114
- function getGlobalTypes(options) {
115
- const defineSlots = options.defineSlots.alias.flatMap((alias) => [`declare function ${alias}<T extends Record<string, any>>(): Partial<T>;`, `declare function ${alias}<T extends Record<string, any>>(slots: T): T;\n`]).join("");
116
- const defineExpose = options.defineExpose.alias.map((alias) => `declare function ${alias}<Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed): Exposed;`).join("");
117
- const defineStyle = options.defineStyle.alias.map((alias) => `declare const ${alias}: { <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs): T; scss: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; sass: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; stylus: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; less: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; postcss: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T };\n`).join("");
118
- const defineModel = options.defineModel.alias.map((alias) => alias === "defineModel" ? "defineModel" : `defineModel: ${alias}`).join(", ");
119
- const defineComponent = options.defineComponent.alias.map((alias) => ["defineComponent", "defineVaporComponent"].includes(alias) ? "" : `defineComponent: ${alias}`).filter(Boolean).join(", ");
121
+ function getGlobalTypes(rootMap, options) {
122
+ let defineStyle = "";
123
+ if (options.defineSlots.alias) {
124
+ defineStyle = options.defineStyle.alias.map((alias) => `declare const ${alias}: { <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs): T; scss: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; sass: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; stylus: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; less: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T; postcss: <T>(...args: ${__vue_macros_common.HELPER_PREFIX}StyleArgs)=> T };`).join("\n");
125
+ defineStyle += `\ntype ${__vue_macros_common.HELPER_PREFIX}StyleArgs = [style: string, options?: { scoped?: boolean }];`;
126
+ }
127
+ if (!rootMap.size) return `\n${defineStyle}`;
128
+ const defineSlots = options.defineSlots.alias.flatMap((alias) => [`declare function ${alias}<T extends Record<string, any>>(): Partial<T>;`, `declare function ${alias}<T extends Record<string, any>>(slots: T): T;`]).join("\n");
129
+ const defineExpose = options.defineExpose.alias.map((alias) => `declare function ${alias}<Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed): Exposed;`).join("\n");
130
+ const defineModel = options.defineModel.alias.map((alias) => alias === "defineModel" ? "defineModel" : `defineModel: ${alias}`);
131
+ const defineComponent = options.defineComponent.alias.map((alias) => ["defineComponent", "defineVaporComponent"].includes(alias) ? "" : `defineComponent: ${alias}`);
132
+ const VueMacros = [...defineModel, ...defineComponent].filter(Boolean).join(",");
120
133
  return `
121
- declare const { ${defineModel}, ${defineComponent} }: typeof import('vue')
134
+ ${VueMacros ? `declare const { ${VueMacros} }: typeof import('vue');` : ""}
122
135
  ${defineSlots}
123
136
  ${defineExpose}
124
137
  ${defineStyle}
125
- type ${__vue_macros_common.HELPER_PREFIX}StyleArgs = [style: string, options?: { scoped?: boolean }];
126
138
  // @ts-ignore
127
139
  type __VLS_IsAny<T> = 0 extends 1 & T ? true : false; type __VLS_PickNotAny<A, B> = __VLS_IsAny<A> extends true ? B : A;
128
140
  `;
@@ -249,10 +261,8 @@ const plugin = (0, ts_macro.createPlugin)(({ ts }, userOptions = {}) => {
249
261
  ...resolvedOptions
250
262
  };
251
263
  const rootMap = getRootMap(options);
252
- if (rootMap.size) {
253
- transformJsxMacros(rootMap, options);
254
- codes.push(getGlobalTypes(options));
255
- }
264
+ if (rootMap.size) transformJsxMacros(rootMap, options);
265
+ codes.push(getGlobalTypes(rootMap, options));
256
266
  }
257
267
  };
258
268
  });
package/dist/volar.js CHANGED
@@ -12,7 +12,7 @@ function transformDefineComponent(node, parent, options) {
12
12
 
13
13
  //#endregion
14
14
  //#region src/volar/define-style.ts
15
- function transformDefineStyle({ expression, isCssModules }, index, options) {
15
+ function transformDefineStyle({ expression, isCssModules }, index, root, options) {
16
16
  const { ts, codes, ast } = options;
17
17
  if (isCssModules && expression?.arguments[0] && !expression.typeArguments && ts.isTemplateLiteral(expression.arguments[0])) codes.replaceRange(expression.arguments.pos - 1, expression.arguments.pos - 1, `<{`, ...parseCssClassNames(expression.arguments[0].getText(ast).slice(1, -1)).flatMap(({ text, offset }) => [
18
18
  `\n`,
@@ -24,6 +24,13 @@ function transformDefineStyle({ expression, isCssModules }, index, options) {
24
24
  ],
25
25
  `: string`
26
26
  ]), "\n}>");
27
+ else if (root?.body) {
28
+ const returnNode = root.body.forEachChild((node) => ts.isReturnStatement(node) ? node : void 0);
29
+ if (returnNode) {
30
+ codes.replaceRange(expression.getStart(ast), expression.getEnd());
31
+ codes.replaceRange(returnNode.pos, returnNode.pos, ";", [expression.getText(ast), expression.getStart(ast)]);
32
+ }
33
+ }
27
34
  addEmbeddedCode(expression, index, options);
28
35
  }
29
36
  const commentReg = /(?<=\/\*)[\s\S]*?(?=\*\/)|(?<=\/\/)[\s\S]*?(?=\n)/g;
@@ -71,8 +78,8 @@ function transformJsxMacros(rootMap, options) {
71
78
  const { ts, codes, ast } = options;
72
79
  let defineStyleIndex = 0;
73
80
  for (const [root, macros] of rootMap) {
74
- macros.defineStyle?.forEach((defaultStyle) => transformDefineStyle(defaultStyle, defineStyleIndex++, options));
75
- if (!root?.body) continue;
81
+ macros.defineStyle?.forEach((defaultStyle) => transformDefineStyle(defaultStyle, defineStyleIndex++, root, options));
82
+ if (!root?.body || Object.keys(macros).length === 1 && macros.defineStyle) continue;
76
83
  const asyncModifier = root.modifiers?.find((modifier) => modifier.kind === ts.SyntaxKind.AsyncKeyword);
77
84
  if (asyncModifier && macros.defineComponent) codes.replaceRange(asyncModifier.pos, asyncModifier.end);
78
85
  const result = `({}) as __VLS_PickNotAny<typeof ${HELPER_PREFIX}ctx.render, {}> & { __ctx: typeof ${HELPER_PREFIX}ctx }`;
@@ -109,18 +116,23 @@ return {
109
116
 
110
117
  //#endregion
111
118
  //#region src/volar/global-types.ts
112
- function getGlobalTypes(options) {
113
- const defineSlots = options.defineSlots.alias.flatMap((alias) => [`declare function ${alias}<T extends Record<string, any>>(): Partial<T>;`, `declare function ${alias}<T extends Record<string, any>>(slots: T): T;\n`]).join("");
114
- const defineExpose = options.defineExpose.alias.map((alias) => `declare function ${alias}<Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed): Exposed;`).join("");
115
- const defineStyle = options.defineStyle.alias.map((alias) => `declare const ${alias}: { <T>(...args: ${HELPER_PREFIX}StyleArgs): T; scss: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; sass: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; stylus: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; less: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; postcss: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T };\n`).join("");
116
- const defineModel = options.defineModel.alias.map((alias) => alias === "defineModel" ? "defineModel" : `defineModel: ${alias}`).join(", ");
117
- const defineComponent = options.defineComponent.alias.map((alias) => ["defineComponent", "defineVaporComponent"].includes(alias) ? "" : `defineComponent: ${alias}`).filter(Boolean).join(", ");
119
+ function getGlobalTypes(rootMap, options) {
120
+ let defineStyle = "";
121
+ if (options.defineSlots.alias) {
122
+ defineStyle = options.defineStyle.alias.map((alias) => `declare const ${alias}: { <T>(...args: ${HELPER_PREFIX}StyleArgs): T; scss: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; sass: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; stylus: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; less: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T; postcss: <T>(...args: ${HELPER_PREFIX}StyleArgs)=> T };`).join("\n");
123
+ defineStyle += `\ntype ${HELPER_PREFIX}StyleArgs = [style: string, options?: { scoped?: boolean }];`;
124
+ }
125
+ if (!rootMap.size) return `\n${defineStyle}`;
126
+ const defineSlots = options.defineSlots.alias.flatMap((alias) => [`declare function ${alias}<T extends Record<string, any>>(): Partial<T>;`, `declare function ${alias}<T extends Record<string, any>>(slots: T): T;`]).join("\n");
127
+ const defineExpose = options.defineExpose.alias.map((alias) => `declare function ${alias}<Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed): Exposed;`).join("\n");
128
+ const defineModel = options.defineModel.alias.map((alias) => alias === "defineModel" ? "defineModel" : `defineModel: ${alias}`);
129
+ const defineComponent = options.defineComponent.alias.map((alias) => ["defineComponent", "defineVaporComponent"].includes(alias) ? "" : `defineComponent: ${alias}`);
130
+ const VueMacros = [...defineModel, ...defineComponent].filter(Boolean).join(",");
118
131
  return `
119
- declare const { ${defineModel}, ${defineComponent} }: typeof import('vue')
132
+ ${VueMacros ? `declare const { ${VueMacros} }: typeof import('vue');` : ""}
120
133
  ${defineSlots}
121
134
  ${defineExpose}
122
135
  ${defineStyle}
123
- type ${HELPER_PREFIX}StyleArgs = [style: string, options?: { scoped?: boolean }];
124
136
  // @ts-ignore
125
137
  type __VLS_IsAny<T> = 0 extends 1 & T ? true : false; type __VLS_PickNotAny<A, B> = __VLS_IsAny<A> extends true ? B : A;
126
138
  `;
@@ -247,10 +259,8 @@ const plugin = createPlugin(({ ts }, userOptions = {}) => {
247
259
  ...resolvedOptions
248
260
  };
249
261
  const rootMap = getRootMap(options);
250
- if (rootMap.size) {
251
- transformJsxMacros(rootMap, options);
252
- codes.push(getGlobalTypes(options));
253
- }
262
+ if (rootMap.size) transformJsxMacros(rootMap, options);
263
+ codes.push(getGlobalTypes(rootMap, options));
254
264
  }
255
265
  };
256
266
  });
@@ -1,4 +1,4 @@
1
- const require_src = require('./src-CnMPxcfy.cjs');
1
+ const require_src = require('./src-DJK4pxUR.cjs');
2
2
 
3
3
  //#region src/webpack.ts
4
4
  var webpack_default = require_src.src_default.webpack;
@@ -1,4 +1,4 @@
1
- import { src_default } from "./src-CYY_kpUg.js";
1
+ import { src_default } from "./src-BMmuQ4rG.js";
2
2
 
3
3
  //#region src/webpack.ts
4
4
  var webpack_default = src_default.webpack;
package/dist/webpack.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
- require('./core-CJIyaYlk.cjs');
3
- require('./raw-fnyAVQJZ.cjs');
2
+ require('./core-BnOBUOXo.cjs');
3
+ require('./raw-DKCRm2ff.cjs');
4
4
  require('./options-BejTnOdM.cjs');
5
- require('./src-CnMPxcfy.cjs');
6
- const require_webpack = require('./webpack-CMEaEJ1m.cjs');
5
+ require('./src-DJK4pxUR.cjs');
6
+ const require_webpack = require('./webpack-CsAn2U-j.cjs');
7
7
 
8
8
  exports.default = require_webpack.webpack_default;
package/dist/webpack.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./core-CtkYfL-E.js";
2
- import "./raw-CdxUliM8.js";
1
+ import "./core-CzkzlWGo.js";
2
+ import "./raw-Cs8E-0N5.js";
3
3
  import "./options-BWRkHmm5.js";
4
- import "./src-CYY_kpUg.js";
5
- import { webpack_default } from "./webpack-vi_c875X.js";
4
+ import "./src-BMmuQ4rG.js";
5
+ import { webpack_default } from "./webpack-WGax0jDH.js";
6
6
 
7
7
  export { webpack_default as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vue-jsx-vapor/macros",
3
- "version": "2.5.2",
3
+ "version": "2.5.4-beta.1",
4
4
  "description": "Macros for Vue JSX Vapor",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -132,7 +132,7 @@
132
132
  },
133
133
  "dependencies": {
134
134
  "@vue-macros/common": "^3.0.0-beta.17",
135
- "@vue/compiler-sfc": "https://pkg.pr.new/@vue/compiler-sfc@5771104",
135
+ "@vue/compiler-sfc": "3.6.0-alpha.2",
136
136
  "hash-sum": "^2.0.0",
137
137
  "ts-macro": "^0.2.7",
138
138
  "unplugin": "^2.3.5"
@@ -143,7 +143,7 @@
143
143
  "@nuxt/schema": "^3.17.6",
144
144
  "@types/hash-sum": "^1.0.2",
145
145
  "@vue-macros/test-utils": "^3.0.0-beta.17",
146
- "vue": "https://pkg.pr.new/vue@5771104"
146
+ "vue": "3.6.0-alpha.2"
147
147
  },
148
148
  "scripts": {
149
149
  "build": "tsdown",