diff --git a/CHANGELOG.md b/CHANGELOG.md index dc4f49b..fc860e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## 3.2.24 +- Add `esuilbOptions` to the `esrun` function. + ## 3.2.23 - Strip shebangs diff --git a/source/runners/Runner.ts b/source/runners/Runner.ts index 2c587fe..9f0c43a 100644 --- a/source/runners/Runner.ts +++ b/source/runners/Runner.ts @@ -33,6 +33,7 @@ export default class Runner { public nodeOptions: Options["nodeOptions"] = {}; public sendCodeMode: SendCodeMode; public sudo: boolean; + public esbuildOptions: BuildOptions; protected watched: boolean | string[]; protected inspect: boolean; @@ -72,6 +73,8 @@ export default class Runner { this.beforeRun = options?.beforeRun; this.afterRun = options?.afterRun; this.nodeOptions = options?.nodeOptions ?? {}; + this.nodeOptions = options?.nodeOptions ?? {}; + this.esbuildOptions = options?.esbuildOptions ?? {}; this.sendCodeMode = options?.sendCodeMode ?? process.platform === "win32" ? "temporaryFile" @@ -91,7 +94,7 @@ export default class Runner { } } - async build(buildOptions?: BuildOptions) { + async build(buildOptions: BuildOptions = {}) { const plugins: Plugin[] = []; if (this.fileConstants) { @@ -122,7 +125,8 @@ export default class Runner { "../../../../../../../../../../node_modules/*", ] : [], - ...(buildOptions ?? {}), + ...this.esbuildOptions, + ...buildOptions, write: false, metafile: true, }); diff --git a/source/types/Options.ts b/source/types/Options.ts index 7162ece..99f6fdc 100644 --- a/source/types/Options.ts +++ b/source/types/Options.ts @@ -1,3 +1,4 @@ +import { BuildOptions } from "esbuild"; import { Parameter } from "./Parameter.js"; import { SendCodeMode } from "./SendCodeMode.js"; @@ -16,4 +17,5 @@ export type Options = { beforeRun?: () => unknown; afterRun?: () => unknown; nodeOptions?: Record; + esbuildOptions?: BuildOptions; };