mirror of
https://github.com/LukeHagar/vercel.git
synced 2025-12-08 21:07:46 +00:00
63 lines
1.4 KiB
JavaScript
63 lines
1.4 KiB
JavaScript
#!/usr/bin/env node
|
|
const fs = require('fs-extra');
|
|
const execa = require('execa');
|
|
const { join } = require('path');
|
|
|
|
async function main() {
|
|
// Build TypeScript files
|
|
await execa('tsc', [], {
|
|
stdio: 'inherit',
|
|
});
|
|
|
|
// Bundle `helpers.ts` with ncc
|
|
await fs.remove(join(__dirname, 'helpers.js'));
|
|
const helpersDir = join(__dirname, 'helpers');
|
|
await execa(
|
|
'ncc',
|
|
[
|
|
'build',
|
|
join(__dirname, 'helpers.ts'),
|
|
'-e',
|
|
'@vercel/node-bridge',
|
|
'-e',
|
|
'@vercel/build-utils',
|
|
'-e',
|
|
'typescript',
|
|
'-o',
|
|
helpersDir,
|
|
],
|
|
{ stdio: 'inherit' }
|
|
);
|
|
await fs.rename(join(helpersDir, 'index.js'), join(__dirname, 'helpers.js'));
|
|
await fs.remove(helpersDir);
|
|
|
|
// Bundle `source-map-support/register` with ncc for source maps
|
|
const sourceMapSupportDir = join(__dirname, 'source-map-support');
|
|
await execa(
|
|
'ncc',
|
|
[
|
|
'build',
|
|
join(__dirname, '../../node_modules/source-map-support/register'),
|
|
'-e',
|
|
'@vercel/node-bridge',
|
|
'-e',
|
|
'@vercel/build-utils',
|
|
'-e',
|
|
'typescript',
|
|
'-o',
|
|
sourceMapSupportDir,
|
|
],
|
|
{ stdio: 'inherit' }
|
|
);
|
|
await fs.rename(
|
|
join(sourceMapSupportDir, 'index.js'),
|
|
join(__dirname, 'source-map-support.js')
|
|
);
|
|
await fs.remove(sourceMapSupportDir);
|
|
}
|
|
|
|
main().catch(err => {
|
|
console.error(err);
|
|
process.exit(1);
|
|
});
|