UNPKG

@storm-stack/core

Version:

A build toolkit and runtime used by Storm Software in TypeScript applications

46 lines (43 loc) 1.22 kB
import { ModuleResolverPlugin } from './chunk-CJ4Q5F7D.js'; import { __name } from './chunk-IRPJW6HH.js'; import defu from 'defu'; function transpilerPlugin(context, options = {}) { const handleLoad = /* @__PURE__ */ __name(async (args) => { if (args.path) { const resolvedPath = context.vfs.resolvePath(args.path); if (resolvedPath) { const contents = await context.vfs.readFile(resolvedPath); if (!contents) { return; } const result = await context.compiler.transpile(context, resolvedPath, contents, defu(options, { skipTransformUnimport: true, babel: { plugins: [ ModuleResolverPlugin(context), ...context.options.babel.plugins ] } })); return { contents: result, pluginData: args.pluginData }; } } return; }, "handleLoad"); return { name: "storm-stack:transpiler", setup(build) { build.onLoad({ filter: /.*/ }, handleLoad); build.onLoad({ filter: /^storm:/ }, handleLoad); } }; } __name(transpilerPlugin, "transpilerPlugin"); export { transpilerPlugin };