Skip to content

Commit 3d2bb82

Browse files
committed
rollup, browserList, babel config
1 parent e7d82a3 commit 3d2bb82

File tree

10 files changed

+4307
-20
lines changed

10 files changed

+4307
-20
lines changed

.babelrc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"presets": [
33
[
4-
"@babel/preset-env",
4+
"@babel/preset-env",
55
{
66
"targets": {
77
"node": "current"
@@ -10,4 +10,4 @@
1010
],
1111
"@babel/preset-typescript"
1212
]
13-
}
13+
}

.browserslistrc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
> 0.25%
2+
ie 11
3+
not op_mini all
4+
not dead

.eslintignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
coverage
2+
dist
3+
node_modules

.prettierignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
coverage
2+
dist
3+
node_modules

package.json

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@
22
"name": "@ts-collection/core",
33
"version": "0.0.1",
44
"description": "collection of algorithm and data structure for typescript",
5-
"main": "dist/index.js",
5+
"main": "dist/cjs/bundle.cjs.js",
6+
"module": "dist/esm/bundle.esm.js",
7+
"sideEffects": false,
68
"types": "dist",
79
"scripts": {
8-
"build": "tsc",
10+
"prebuild": "rimraf dist",
11+
"build": "rollup -c",
912
"dev": "nodemon src/index.ts",
1013
"test": "jest",
1114
"lint": "eslint src",
@@ -28,6 +31,9 @@
2831
"@babel/core": "^7.13.8",
2932
"@babel/preset-env": "^7.13.8",
3033
"@babel/preset-typescript": "^7.13.0",
34+
"@rollup/plugin-babel": "^5.3.0",
35+
"@rollup/plugin-commonjs": "^19.0.0",
36+
"@rollup/plugin-node-resolve": "^13.0.0",
3137
"@types/jest": "^26.0.20",
3238
"@types/node": "^14.6.4",
3339
"@typescript-eslint/eslint-plugin": "^4.27.0",
@@ -39,6 +45,11 @@
3945
"jest": "^26.6.3",
4046
"nodemon": "^2.0.4",
4147
"prettier": "^2.3.1",
48+
"rimraf": "^3.0.2",
49+
"rollup": "^2.52.1",
50+
"rollup-plugin-size": "^0.2.2",
51+
"rollup-plugin-terser": "^7.0.2",
52+
"rollup-plugin-visualizer": "^5.5.0",
4253
"ts-node": "^9.0.0",
4354
"typescript": "^4.0.2"
4455
}

rollup.config.js

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import { babel } from '@rollup/plugin-babel';
2+
import { nodeResolve } from '@rollup/plugin-node-resolve';
3+
import size from 'rollup-plugin-size';
4+
import { visualizer } from 'rollup-plugin-visualizer';
5+
import { terser } from 'rollup-plugin-terser';
6+
import commonJs from '@rollup/plugin-commonjs';
7+
8+
const extensions = ['.js', '.ts'];
9+
10+
/** @type {import('rollup').RollupOptions} */
11+
const options = {
12+
input: 'src/index',
13+
output: [
14+
{ file: 'dist/cjs/bundle.cjs.js', format: 'cjs' },
15+
{ file: 'dist/esm/bundle.esm.js', format: 'esm' },
16+
{ file: 'dist/umd/bundle.umd.js', format: 'umd', name: 'TSCollection' },
17+
],
18+
plugins: [
19+
nodeResolve({ extensions }),
20+
babel({ exclude: 'node_modules/**', extensions, babelHelpers: 'bundled' }),
21+
commonJs(),
22+
terser(),
23+
size(),
24+
visualizer({
25+
template: 'treemap',
26+
}),
27+
],
28+
};
29+
30+
export default options;

0 commit comments

Comments
 (0)