about summary refs log tree commit diff stats
path: root/rollup.config.js
diff options
context:
space:
mode:
Diffstat (limited to 'rollup.config.js')
-rw-r--r--rollup.config.js48
1 files changed, 48 insertions, 0 deletions
diff --git a/rollup.config.js b/rollup.config.js
new file mode 100644
index 00000000..0bad0c97
--- /dev/null
+++ b/rollup.config.js
@@ -0,0 +1,48 @@
+import svelte from "rollup-plugin-svelte"
+import commonjs from "@rollup/plugin-commonjs"
+import terser from "@rollup/plugin-terser"
+import resolve from "@rollup/plugin-node-resolve"
+import css from "rollup-plugin-css-only"
+
+const production = !process.env.ROLLUP_WATCH
+let input
+let output
+if (process.argv.includes("--config-options")) {
+  input = "src/pages/options_src/main.js"
+  output = "src/pages/options/build/bundle.js"
+} else if (process.argv.includes("--config-popup")) {
+  input = "src/pages/popup_src/main.js"
+  output = "src/pages/popup/build/bundle.js"
+}
+else if (process.argv.includes("--config-messages")) {
+  input = "src/pages/messages_src/main.js"
+  output = "src/pages/messages/build/bundle.js"
+}
+
+export default {
+  input,
+  output: {
+    sourcemap: true,
+    format: "iife",
+    name: "app",
+    file: output,
+  },
+  plugins: [
+    svelte({
+      compilerOptions: {
+        dev: !production,
+      },
+    }),
+    css({ output: "bundle.css" }),
+    resolve({
+      browser: true,
+      dedupe: ["svelte"],
+      exportConditions: ["svelte"],
+    }),
+    commonjs(),
+    production && terser(),
+  ],
+  watch: {
+    clearScreen: false,
+  },
+}