46 lines
1.1 KiB
JavaScript
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_*',
|
|
});
|
|
|