import { globDirectory } from '../../utils/glob-directory'; import { output, scriptsDirectory } from '../../config'; import { build } from 'esbuild'; import { createScriptPath } from '../../utils/create-script-path'; export const buildScript = async (path: string) => build({ entryPoints: [path], jsx: 'transform', jsxFactory: 'jsx', minify: !path.includes('.user'), platform: 'browser', outfile: `${output}/${createScriptPath(path, scriptsDirectory)}`, bundle: true, sourcemap: 'linked', }); export const buildScripts = async () => { const paths = [ ...(await globDirectory('**/*.ts', scriptsDirectory)), ...(await globDirectory('**/*.tsx', scriptsDirectory)), ]; await Promise.all(paths.map(buildScript)); };