-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrollup.config.js
51 lines (50 loc) · 1.36 KB
/
rollup.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import typescript from "rollup-plugin-typescript2";
import commonjs from "rollup-plugin-commonjs";
import external from "rollup-plugin-peer-deps-external";
import resolve from "rollup-plugin-node-resolve";
import json from "@rollup/plugin-json";
import pkg from "./package.json";
// TODO 타이머를 라이브러리에 포함시켜보자 ++인증모달
// [https://stackoverflow.com/questions/48836575/can-i-have-multiple-entry-points-using-rollup-with-gulp]
// 첫번째 답변을 참고하면
// 이것으로 여러개의 엔트리를 만들 수 있음을 알았다.
// 성능을 위해서 여러가지 엔트리를 가진 컴포넌트를 만들자.
export default {
input: "src/index.ts",
output: [
{
file: pkg.main,
format: "cjs",
exports: "named",
sourcemap: true
},
{
file: pkg.module,
format: "es",
exports: "named",
sourcemap: true
}
],
plugins: [
external(),
resolve(),
typescript({
rollupCommonJSResolveHack: true,
exclude: ["**/__tests__/**"],
clean: true
}),
json(),
commonjs({
include: ["node_modules/**"],
namedExports: {
"node_modules/react/react.js": [
"Children",
"Component",
"PropTypes",
"createElement"
],
"node_modules/react-dom/index.js": ["render"]
}
})
]
};