-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrollup.config.js
71 lines (68 loc) · 1.35 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import { nodeResolve } from "@rollup/plugin-node-resolve";
import commonjs from "@rollup/plugin-commonjs";
// import typescript from "@rollup/plugin-typescript";
import { babel } from "@rollup/plugin-babel";
import alias from "@rollup/plugin-alias";
const extensions = [".js", ".jsx", ".ts", ".tsx"];
const plugins = [
alias({
entries: [
{ find: "react", replacement: "preact/compat" },
{
find: "react-dom/test-utils",
replacement: "preact/test-utils",
},
{ find: "react-dom", replacement: "preact/compat" },
{
find: "react/jsx-runtime",
replacement: "preact/jsx-runtime",
},
],
}),
nodeResolve({ extensions }),
commonjs(),
babel({
babelHelpers: "bundled",
extensions,
include: ["src/**/*"],
plugins: [
[
"@babel/plugin-transform-react-jsx",
{
pragma: "h",
pragmaFrag: "Fragment",
},
],
],
}),
];
export default [
{
input: "src/index.chrome.js",
output: [
{
file: "dist/content.bundle.cjs.js",
format: "cjs",
sourcemap: false,
},
// {
// file: "dist/content.bundle.esm.js",
// format: "esm",
// sourcemap: true,
// },
],
plugins: plugins,
},
{
input: "src/pages/options/index.jsx",
output: [
{
file: "dist/options.bundle.cjs.js",
format: "cjs",
sourcemap: false,
},
],
preserveSymlinks: true,
plugins: [...plugins],
},
];