55 lines
1.2 KiB
TypeScript
55 lines
1.2 KiB
TypeScript
|
import nodeResolve from "@rollup/plugin-node-resolve";
|
||
|
import typescript from "@rollup/plugin-typescript";
|
||
|
import replace from "@rollup/plugin-replace";
|
||
|
import commonjs from "@rollup/plugin-commonjs";
|
||
|
import { terser } from "rollup-plugin-terser";
|
||
|
|
||
|
const env = process.env.NODE_ENV;
|
||
|
|
||
|
export default {
|
||
|
input: "src/index.ts",
|
||
|
plugins: [
|
||
|
commonjs(),
|
||
|
nodeResolve({
|
||
|
browser: true,
|
||
|
extensions: [".js", ".ts"],
|
||
|
dedupe: ["bn.js", "buffer"],
|
||
|
preferBuiltins: false,
|
||
|
}),
|
||
|
typescript({
|
||
|
tsconfig: "./tsconfig.base.json",
|
||
|
moduleResolution: "node",
|
||
|
outDir: "types",
|
||
|
target: "es2019",
|
||
|
outputToFilesystem: false,
|
||
|
}),
|
||
|
replace({
|
||
|
preventAssignment: true,
|
||
|
values: {
|
||
|
"process.env.NODE_ENV": JSON.stringify(env),
|
||
|
"process.env.BROWSER": JSON.stringify(true),
|
||
|
},
|
||
|
}),
|
||
|
terser(),
|
||
|
],
|
||
|
external: [
|
||
|
"@project-serum/borsh",
|
||
|
"@solana/web3.js",
|
||
|
"assert",
|
||
|
"base64-js",
|
||
|
"bn.js",
|
||
|
"bs58",
|
||
|
"buffer",
|
||
|
"camelcase",
|
||
|
"eventemitter3",
|
||
|
"js-sha256",
|
||
|
"pako",
|
||
|
"toml",
|
||
|
],
|
||
|
output: {
|
||
|
file: "dist/browser/index.js",
|
||
|
format: "es",
|
||
|
sourcemap: true,
|
||
|
},
|
||
|
};
|