valkyrie-api-types/scripts/versions.mjs

44 lines
1 KiB
JavaScript
Raw Normal View History

2024-09-11 23:16:05 -07:00
import { exec } from 'node:child_process';
import { dirname, join } from 'node:path';
import { fileURLToPath } from 'node:url';
import { promisify } from 'node:util';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
const rootDir = join(__dirname, '..');
const execAsync = promisify(exec);
/**
* @param {string} path
* @param {string} version
*/
const fileToESMWrapperCall = (path, version) =>
execAsync(`npx gen-esm-wrapper "${join(rootDir, path, `${version}.js`)}" "${join(rootDir, path, `${version}.mjs`)}"`);
await Promise.allSettled(
[
'v9',
// Voice
'v4',
]
.map((version) => [
fileToESMWrapperCall('gateway', version),
fileToESMWrapperCall(`payloads/${version}`, 'index'),
fileToESMWrapperCall(`rest/${version}`, 'index'),
// Voice
fileToESMWrapperCall('voice', version),
// RPC
fileToESMWrapperCall('rpc', version),
// Utils
fileToESMWrapperCall('utils', version),
// Shortcuts
fileToESMWrapperCall('', version),
])
.flat(),
2024-09-12 00:14:45 -07:00
);