You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 lines
844 B
JavaScript

import nodeResolve from '@rollup/plugin-node-resolve';
import typescript from 'rollup-plugin-typescript2';
import { terser } from 'rollup-plugin-terser';
const extensions = ['.ts', '.js'];
export function generateBaseConfig(pkg) {
return {
input: 'src/index.ts',
output: [
{
file: pkg.main,
format: 'cjs',
sourcemap: true
},
{
file: pkg.module,
format: 'es',
sourcemap: true
}
],
external: [
...Object.keys(pkg.dependencies || {}),
...Object.keys(pkg.peerDependencies || {})
],
plugins: [
nodeResolve({
extensions
}),
typescript({
// eslint-disable-next-line global-require
typescript: require('typescript'),
objectHashIgnoreUnknownHack: false
}),
terser()
]
};
}