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_*',
 | 
						|
});
 | 
						|
 |