24 lines
716 B
TypeScript
24 lines
716 B
TypeScript
|
|
|
|
import { resolvePath } from '@kevisual/use-config';
|
|
import { execSync } from 'node:child_process';
|
|
|
|
const buildFn = async (opts: { entry?: string, naming?: string }) => {
|
|
const entry = opts.entry || 'agent/opencode.ts';
|
|
const naming = opts.naming || 'opencode';
|
|
const external: string[] = ["bun", "ws"];
|
|
await Bun.build({
|
|
target: 'node',
|
|
format: 'esm',
|
|
entrypoints: [resolvePath(entry, { meta: import.meta })],
|
|
outdir: resolvePath('./dist', { meta: import.meta }),
|
|
naming: {
|
|
entry: `${naming}.js`,
|
|
},
|
|
external,
|
|
});
|
|
const cmd = `dts -i ${entry} -o ${naming}.d.ts`;
|
|
execSync(cmd);
|
|
};
|
|
|
|
await buildFn({ naming: 'config-permission', entry: 'src/config-permission.ts' }); |