ai/bun.config.mjs
2025-06-21 14:01:33 +08:00

46 lines
1.1 KiB
JavaScript

// @ts-check
// https://bun.sh/docs/bundler
// @ts-ignore
import { resolvePath } from '@kevisual/use-config/env';
import pkg from './package.json';
import { execSync } from 'node:child_process';
// bun run src/index.ts --
await Bun.build({
target: 'node',
format: 'esm',
entrypoints: [resolvePath('./src/provider/index.ts')],
outdir: resolvePath('./dist'),
naming: {
entry: 'ai-provider.js',
},
define: {
ENVISION_VERSION: JSON.stringify(pkg.version),
IS_BROWSER: JSON.stringify(false),
},
env: 'ENVISION_*',
});
const cmd = 'dts -i src/provider/index.ts -o ai-provider.d.ts';
execSync(cmd, { stdio: 'inherit' });
execSync('cp dist/ai-provider.d.ts dist/ai-provider-browser.d.ts', { stdio: 'inherit' });
// bun run src/index.ts --
await Bun.build({
target: 'browser',
format: 'esm',
entrypoints: [resolvePath('./src/provider/index.ts')],
outdir: resolvePath('./dist'),
naming: {
entry: 'ai-provider-browser.js',
},
define: {
ENVISION_VERSION: JSON.stringify(pkg.version),
IS_BROWSER: JSON.stringify(true),
},
env: 'ENVISION_*',
});