Bundle
The Bundle resource uses esbuild to bundle JavaScript and TypeScript files into optimized output.
Minimal Example
Section titled “Minimal Example”Bundle a TypeScript file into ESM format:
import { Bundle } from "alchemy/esbuild";
const bundle = await Bundle("handler", {  entryPoint: "src/handler.ts",  format: "esm",});Bundle with Output Directory
Section titled “Bundle with Output Directory”Specify an output directory and additional build options:
const bundle = await Bundle("api", {  entryPoint: "src/api.ts",  outdir: ".build",  format: "esm",  platform: "node",  target: "node18",  minify: true,  sourcemap: true,});Bundle with External Dependencies
Section titled “Bundle with External Dependencies”Exclude packages from the bundle:
const bundle = await Bundle("app", {  entryPoint: "src/app.ts",  format: "esm",  external: ["aws-sdk", "lodash"],  platform: "node",});Bundle for Browser
Section titled “Bundle for Browser”Create a browser-compatible IIFE bundle:
const bundle = await Bundle("web", {  entryPoint: "src/main.ts",  outfile: "dist/bundle.js",  format: "iife",  platform: "browser",  minify: true,  sourcemap: "external",});