diff options
author | 2022-01-21 05:09:58 -0800 | |
---|---|---|
committer | 2022-01-21 05:09:58 -0800 | |
commit | 8f7cf6bf476016280c453da53e45c040761be1d6 (patch) | |
tree | 4ea29a2d7919e37b3065e9feed3c263e24339566 /bench/snippets/transpiler.mjs | |
parent | 4a7b5892af2b16a9ddff960a30a0dbb43c331370 (diff) | |
download | bun-8f7cf6bf476016280c453da53e45c040761be1d6.tar.gz bun-8f7cf6bf476016280c453da53e45c040761be1d6.tar.zst bun-8f7cf6bf476016280c453da53e45c040761be1d6.zip |
little
Diffstat (limited to 'bench/snippets/transpiler.mjs')
-rw-r--r-- | bench/snippets/transpiler.mjs | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/bench/snippets/transpiler.mjs b/bench/snippets/transpiler.mjs index b4c1d390d..e3abf266c 100644 --- a/bench/snippets/transpiler.mjs +++ b/bench/snippets/transpiler.mjs @@ -1,23 +1,27 @@ import { readFileSync } from "fs"; var transformSync; +var transform; var opts; if (process.isBun) { const transpiler = new Bun.Transpiler({ loader: "jsx" }); transformSync = transpiler.transformSync.bind(transpiler); + transform = transpiler.transform.bind(transpiler); opts = "jsx"; -} else if (process.env["USE_ESBUILD"]) { +} else if (process.env["esbuild"]) { try { const esbuild = await import("esbuild"); transformSync = esbuild.transformSync; + transform = esbuild.transform; opts = { loader: "jsx" }; } catch (exception) { throw exception; } -} else if (process.env["USE_SWC"]) { +} else if (process.env["swc"]) { try { const swc = await import("@swc/core"); transformSync = swc.transformSync; + transform = swc.transform; opts = { sourceMaps: false, inlineSourcesContent: false, @@ -31,8 +35,24 @@ if (process.isBun) { } catch (exception) { throw exception; } +} else if (process.env["babel"]) { + try { + const swc = await import("@babel/core"); + transformSync = swc.transformSync; + transform = swc.transform; + opts = { + sourceMaps: false, + presets: [(await import("@babel/preset-react")).default], + }; + } catch (exception) { + throw exception; + } } const code = readFileSync("src/test/fixtures/simple.jsx", "utf8"); -transformSync(code, opts); +if (process.env.SYNC) { + console.log(transformSync(code, opts)); +} else { + console.log(await transform(code, opts)); +} |