aboutsummaryrefslogtreecommitdiff
path: root/rollup.config.js
diff options
context:
space:
mode:
Diffstat (limited to 'rollup.config.js')
-rw-r--r--rollup.config.js47
1 files changed, 47 insertions, 0 deletions
diff --git a/rollup.config.js b/rollup.config.js
new file mode 100644
index 0000000..4f1ea65
--- /dev/null
+++ b/rollup.config.js
@@ -0,0 +1,47 @@
+import svelte from 'rollup-plugin-svelte';
+import resolve from 'rollup-plugin-node-resolve';
+import commonjs from 'rollup-plugin-commonjs';
+import buble from 'rollup-plugin-buble';
+import uglify from 'rollup-plugin-uglify';
+
+const production = !process.env.ROLLUP_WATCH;
+
+export default {
+ input: 'src/main.js',
+ output: {
+ sourcemap: true,
+ format: 'iife',
+ name: 'app',
+ file: 'public/bundle.js'
+ },
+ plugins: [
+ svelte({
+ // enable run-time checks when not in production
+ dev: !production,
+ // we'll extract any component CSS out into
+ // a separate file — better for performance
+ css: css => {
+ css.write('public/bundle.css');
+ },
+
+ // enable https://svelte.technology/guide#state-management
+ store: true,
+
+ // this results in smaller CSS files
+ cascade: false
+ }),
+
+ // If you have external dependencies installed from
+ // npm, you'll most likely need these plugins. In
+ // some cases you'll need additional configuration —
+ // consult the documentation for details:
+ // https://github.com/rollup/rollup-plugin-commonjs
+ resolve(),
+ commonjs(),
+
+ // If we're building for production (npm run build
+ // instead of npm run dev), transpile and minify
+ production && buble({ exclude: 'node_modules/**' }),
+ production && uglify()
+ ]
+};