V2.2: Customization
To customize your assets compilation, update config/assets.js
to match the following:
import * as assets from "hanami-assets";
await assets.run({
esbuildOptionsFn: (args, esbuildOptions) => {
// Add to esbuildOptions here. Use `args.watch` as a condition for different options for
// compile vs watch.
return esbuildOptions;
}
});
Inside esbuildOptionsFn
, update esbuildOptions
to set your own esbuild options for asset compilation. By the time this function runs, hanami-assets has set its own necessary options on esbuildOptions
.
If you want to apply different options when compiling assets (for production) versus watching assets (for development), use args.watch
as a conditional.
await assets.run({
esbuildOptionsFn: (args, esbuildOptions) => {
if (args.watch) {
// watch mode (development) options here
} else {
// compile mode (production) options here
}
return esbuildOptions;
}
});
Slice asset customization
You can customise asset compilation for an individual slice by creating a config/assets.js
within the slice directory. This will be used in preference to the config file at the top level.