You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
main
${ noResults }
28 lines
792 B
JavaScript
28 lines
792 B
JavaScript
import * as esbuild from 'esbuild'
|
|||
import { readFileSync } from 'fs'
|
|||
|
|||
const packageJSON = JSON.parse(readFileSync(new URL('../package.json', import.meta.url)))
|
|||
|
|||
export const esbuildOptions = {
|
|||
entryPoints: [ './src/peertube.ts' ],
|
|||
bundle: true,
|
|||
platform: 'node',
|
|||
format: 'esm',
|
|||
target: 'node16',
|
|||
external: [
|
|||
'./lib-cov/fluent-ffmpeg',
|
|||
'pg-hstore'
|
|||
],
|
|||
outfile: './dist/peertube.js',
|
|||
banner: {
|
|||
js: `const require = (await import("node:module")).createRequire(import.meta.url);` +
|
|||
`const __filename = (await import("node:url")).fileURLToPath(import.meta.url);` +
|
|||
`const __dirname = (await import("node:path")).dirname(__filename);`
|
|||
},
|
|||
define: {
|
|||
'process.env.PACKAGE_VERSION': `'${packageJSON.version}'`
|
|||
}
|
|||
}
|
|||
|
|||
await esbuild.build(esbuildOptions)
|