vue-jsx-vapor
Version:
Convert Vue JSX to Vapor
25 lines (23 loc) • 640 B
JavaScript
import { transformSync } from "@babel/core";
import babelTypescript from "@babel/plugin-transform-typescript";
import jsx from "@vue-jsx-vapor/babel";
//#region src/core/index.ts
function transformVueJsxVapor(code, id, options, needSourceMap = false) {
return transformSync(code, {
plugins: [[jsx, {
compile: options?.compile,
interop: options?.interop
}], ...id.endsWith(".tsx") ? [[babelTypescript, {
isTSX: true,
allowExtensions: true
}]] : []],
filename: id,
sourceMaps: needSourceMap,
sourceFileName: id,
babelrc: false,
configFile: false,
ast: true
});
}
//#endregion
export { transformVueJsxVapor };