Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import svelte from 'rollup-plugin-svelte';
- import resolve from '@rollup/plugin-node-resolve';
- import commonjs from '@rollup/plugin-commonjs';
- // import livereload from 'rollup-plugin-livereload';
- import { terser } from 'rollup-plugin-terser';
- import sveltePreprocess from 'svelte-preprocess';
- import typescript from '@rollup/plugin-typescript';
- import alias from "@rollup/plugin-alias";
- import path from "path";
- // import css from "rollup-plugin-css-only";
- const production = process.env.NODE_ENV === "production";
- const customResolver = resolve({
- extensions: [".ts", ".svelte"]
- });
- export default {
- input: path.resolve(__dirname, "src/main.ts"),
- output: {
- sourcemap: true,
- format: 'iife',
- name: 'app',
- file: path.resolve(__dirname, "public/build/bundle.js")
- },
- onwarn: (message, warn) => {
- if (message.code === "CIRCULAR_DEPENDENCY") {
- return;
- }
- warn(message);
- },
- plugins: [
- alias({
- entries: [
- { find: "@src", replacement: path.resolve(__dirname, "src") },
- ],
- customResolver
- }),
- 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
- preprocess: sveltePreprocess({
- aliases: ['ts', 'typescript']
- }),
- }),
- // css({ output: path.resolve(__dirname, "public/build/bundle.css") }),
- // 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/plugins/tree/master/packages/commonjs
- resolve({
- browser: true,
- dedupe: ['svelte']
- }),
- commonjs(),
- typescript({
- sourceMap: !production,
- tsconfig: path.resolve(__dirname, "tsconfig.json"),
- }),
- // In dev mode, call `npm run start` once
- // the bundle has been generated
- // !production && serve(),
- // Watch the `public` directory and refresh the
- // browser on changes when not in production
- // !production && livereload('public'),
- // If we're building for production (npm run build
- // instead of npm run dev), minify
- production && terser()
- ],
- watch: {
- clearScreen: false
- }
- };
- // function serve() {
- // let started = false;
- // return {
- // writeBundle() {
- // if (!started) {
- // started = true;
- // require('child_process').spawn('npm', ['run', 'dev'], {
- // stdio: ['ignore', 'inherit', 'inherit'],
- // shell: true
- // });
- // }
- // }
- // };
- // }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement