update: rollup.config.js
This commit is contained in:
+1
-1
@@ -18,7 +18,7 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
"build": "vue-tsc --noEmit && vite build && yarn build:dist",
|
"build": "vue-tsc --noEmit && vite build && yarn build:dist",
|
||||||
"build:dist": "rollup -c --environment NODE_ENV:production && postcss src/*.css --dir dist",
|
"build:dist": "rollup -c --environment NODE_ENV:production",
|
||||||
"serve": "vite preview",
|
"serve": "vite preview",
|
||||||
"prepublishOnly": "yarn build",
|
"prepublishOnly": "yarn build",
|
||||||
"test": "exit 0;",
|
"test": "exit 0;",
|
||||||
|
|||||||
+7
-20
@@ -2,9 +2,7 @@ import resolve from '@rollup/plugin-node-resolve';
|
|||||||
import commonjs from '@rollup/plugin-commonjs';
|
import commonjs from '@rollup/plugin-commonjs';
|
||||||
import babel from '@rollup/plugin-babel';
|
import babel from '@rollup/plugin-babel';
|
||||||
import postcss from 'rollup-plugin-postcss';
|
import postcss from 'rollup-plugin-postcss';
|
||||||
import bundleSize from 'rollup-plugin-bundle-size';
|
|
||||||
import replace from '@rollup/plugin-replace';
|
import replace from '@rollup/plugin-replace';
|
||||||
import svgr from '@svgr/rollup';
|
|
||||||
import typescript from 'rollup-plugin-typescript2';
|
import typescript from 'rollup-plugin-typescript2';
|
||||||
import { DEFAULT_EXTENSIONS as DEFAULT_BABEL_EXTENSIONS } from '@babel/core';
|
import { DEFAULT_EXTENSIONS as DEFAULT_BABEL_EXTENSIONS } from '@babel/core';
|
||||||
|
|
||||||
@@ -14,40 +12,29 @@ const isProd = process.env.NODE_ENV === 'production';
|
|||||||
const isTesting = process.env.NODE_ENV === 'testing';
|
const isTesting = process.env.NODE_ENV === 'testing';
|
||||||
const processEnv = isProd || isTesting ? 'production' : 'development';
|
const processEnv = isProd || isTesting ? 'production' : 'development';
|
||||||
|
|
||||||
export const baseConfig = ({ mainFile = pkg.main, moduleFile = pkg.module, injectCSS = true } = {}) => ({
|
export const baseConfig = ({ injectCSS = true } = {}) => ({
|
||||||
input: 'src/index.ts',
|
input: 'src/index.ts',
|
||||||
external: ['react', 'react-dom', (id) => id.includes('@babel/runtime')],
|
external: ['vue', 'vue-demi', (id) => id.includes('@babel/runtime')],
|
||||||
onwarn(warning, rollupWarn) {
|
onwarn(warning, rollupWarn) {
|
||||||
if (warning.code !== 'CIRCULAR_DEPENDENCY') {
|
if (warning.code !== 'CIRCULAR_DEPENDENCY') {
|
||||||
rollupWarn(warning);
|
rollupWarn(warning);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
output: [
|
output: {
|
||||||
{
|
dir: 'dist',
|
||||||
file: mainFile,
|
sourcemap: true,
|
||||||
format: 'cjs',
|
exports: 'named'
|
||||||
sourcemap: true,
|
},
|
||||||
exports: 'named'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
file: moduleFile,
|
|
||||||
format: 'esm',
|
|
||||||
sourcemap: true,
|
|
||||||
exports: 'named'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
plugins: [
|
plugins: [
|
||||||
replace({
|
replace({
|
||||||
__ENV__: JSON.stringify(processEnv),
|
__ENV__: JSON.stringify(processEnv),
|
||||||
__REACT_FLOW_VERSION__: JSON.stringify(pkg.version),
|
__REACT_FLOW_VERSION__: JSON.stringify(pkg.version),
|
||||||
preventAssignment: true
|
preventAssignment: true
|
||||||
}),
|
}),
|
||||||
bundleSize(),
|
|
||||||
postcss({
|
postcss({
|
||||||
minimize: isProd,
|
minimize: isProd,
|
||||||
inject: injectCSS
|
inject: injectCSS
|
||||||
}),
|
}),
|
||||||
svgr(),
|
|
||||||
resolve(),
|
resolve(),
|
||||||
typescript({
|
typescript({
|
||||||
clean: true
|
clean: true
|
||||||
|
|||||||
Reference in New Issue
Block a user