Matthieu Sieben 9cb81426dd
pre-compile handlebar templates at build time (#1833)
feat(pds): pre-compile handlebar templates at build time
2023-12-05 11:48:22 -05:00

28 lines
720 B
JavaScript

const { nodeExternalsPlugin } = require('esbuild-node-externals')
const hbsPlugin = require('esbuild-plugin-handlebars')
const buildShallow =
process.argv.includes('--shallow') || process.env.ATP_BUILD_SHALLOW === 'true'
require('esbuild').build({
logLevel: 'info',
entryPoints: ['src/index.ts', 'src/bin.ts'],
bundle: true,
sourcemap: true,
outdir: 'dist',
platform: 'node',
external: [
'better-sqlite3',
// Referenced in pg driver, but optional and we don't use it
'pg-native',
'sharp',
],
plugins: [].concat(buildShallow ? [nodeExternalsPlugin()] : []).concat([
hbsPlugin({
filter: /\.(hbs)$/,
additionalHelpers: {},
precompileOptions: {},
}),
]),
})