// Usage: node build <[dev]/prod> import Path from 'path' import { copyFile } from 'fs/promises' let [ platform, environment = 'dev' ] = process.argv.slice(2) let projectRoot = Path.dirname(new URL(import.meta.url).pathname) const indexTemplate = scripts => `\ ${scripts.map(src => "").join('\n')} ` let out switch(environment) { case 'dev': out = indexTemplate([ Path.join('platforms', platform + '.js'), 'editor.js', 'build/libs.js' ]) break case 'prod': await copyFile( Path.join(projectRoot, 'platforms', platform + '.js'), Path.join(projectRoot, 'build', 'platform.js') ) out = indexTemplate([ 'platform.js', 'editor.js', 'libs.js' ]) break } process.stdout.write(out)