theatre/packages/browser-bundles/devEnv/build.ts
Elliot bebf281517
Fix process.env.version in browser-bundles (#206)
* Fix `process.env.version` in browser-bundles

- also fix tsdoc warns in mjs files

Co-authored-by: Fülöp Kovács <kovacs.fulop@gmail.com>
Co-authored-by: Cole Lawrence <cole@colelawrence.com>

* Change to `process.env.THEATRE_VERSION`

Co-authored-by: Fülöp Kovács <kovacs.fulop@gmail.com>
Co-authored-by: Cole Lawrence <cole@colelawrence.com>
2022-06-09 19:05:25 +02:00

64 lines
1.6 KiB
TypeScript

import * as path from 'path'
import {build} from 'esbuild'
import type {Plugin} from 'esbuild'
const definedGlobals = {
global: 'window',
'process.env.THEATRE_VERSION': JSON.stringify(
require('../package.json').version,
),
}
function createBundles(watch: boolean) {
const pathToPackage = path.join(__dirname, '../')
const esbuildConfig: Parameters<typeof build>[0] = {
bundle: true,
sourcemap: true,
define: definedGlobals,
watch,
platform: 'browser',
loader: {
'.png': 'dataurl',
'.glb': 'dataurl',
'.gltf': 'dataurl',
'.svg': 'dataurl',
},
mainFields: ['browser', 'module', 'main'],
target: ['firefox57', 'chrome58'],
conditions: ['browser', 'node'],
}
// build({
// ...esbuildConfig,
// entryPoints: [path.join(pathToPackage, 'src/core-only.ts')],
// outfile: path.join(pathToPackage, 'dist/core-only.js'),
// format: 'iife',
// })
build({
...esbuildConfig,
entryPoints: [path.join(pathToPackage, 'src/core-and-studio.ts')],
outfile: path.join(pathToPackage, 'dist/core-and-studio.js'),
format: 'iife',
})
build({
...esbuildConfig,
entryPoints: [path.join(pathToPackage, 'src/core-only.ts')],
outfile: path.join(pathToPackage, 'dist/core-only.min.js'),
minify: true,
format: 'iife',
define: {
...definedGlobals,
'process.env.NODE_ENV': JSON.stringify('production'),
},
})
// build({
// ...esbuildConfig,
// outfile: path.join(pathToPackage, 'dist/index.mjs'),
// format: 'esm',
// })
}
createBundles(false)