updated stuff
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
#!/usr/bin/env node
|
||||
// ── @originmain/live build script ────────────────────────────────────────────
|
||||
// Produces a single self-contained browser ESM bundle under dist/:
|
||||
//
|
||||
// dist/index.js — side-effect-only browser module, no external deps
|
||||
//
|
||||
// Run: node build.mjs (or via "pnpm build")
|
||||
//
|
||||
// Design notes:
|
||||
// • Platform 'browser' — esbuild replaces process.env.NODE_ENV and
|
||||
// avoids injecting Node built-in shims.
|
||||
// • format 'esm' — the published package is "type": "module"; webpack/
|
||||
// turbopack will tree-shake and include it in the user's bundle.
|
||||
// • bundle: true — @originmain/live has no runtime npm dependencies so
|
||||
// bundling produces one fully self-contained file with no require() calls.
|
||||
// • minify: true — the hook ships inside the user's production bundle;
|
||||
// every byte matters.
|
||||
// • No type declarations needed — the package is a side-effect-only import
|
||||
// (`import '@originmain/live'`) with no exported symbols.
|
||||
|
||||
import { build } from 'esbuild';
|
||||
|
||||
await build({
|
||||
entryPoints: ['src/index.ts'],
|
||||
bundle: true,
|
||||
platform: 'browser',
|
||||
format: 'esm',
|
||||
target: ['es2020', 'chrome88', 'firefox78', 'safari14'],
|
||||
minify: true,
|
||||
sourcemap: false, // keep bundle clean; source is MIT-licensed anyway
|
||||
outfile: 'dist/index.js',
|
||||
logLevel: 'info',
|
||||
});
|
||||
|
||||
console.log(' ✓ dist/index.js (browser ESM bundle)');
|
||||
Reference in New Issue
Block a user