import resolve from 'rollup-plugin-node-resolve'; import commonjs from 'rollup-plugin-commonjs'; import sourceMaps from 'rollup-plugin-sourcemaps'; import typescript from 'rollup-plugin-typescript2'; import json from 'rollup-plugin-json'; import babel from 'rollup-plugin-babel'; const pkg = require('./package.json'); export default { input: `ts_web/index.ts`, output: { name: 'tsbundle', // file: 'dist_web/bundle.js', file: 'dist_web/bundle.js', format: 'iife', sourcemap: true }, // Indicate here external modules you don't wanna include in your bundle (i.e.: 'lodash') external: [], watch: { include: 'src/**' }, plugins: [ // Allow json resolution json(), // Compile TypeScript files typescript({ useTsconfigDeclarationDir: true, tsconfigOverride: { compilerOptions: { declaration: true, emitDecoratorMetadata: true, experimentalDecorators: true, inlineSourceMap: true, noEmitOnError: true, lib: ['es2016', 'es2017', 'dom'], noImplicitAny: false } } }), // Allow node_modules resolution, so you can use 'external' to control // which external modules to include in the bundle // https://github.com/rollup/rollup-plugin-node-resolve#usage resolve(), commonjs({ namedExports: { 'node_modules/@pushrocks/smartstate/dist/index.js': ['Smartstate'] } }), // Resolve source maps to the original source sourceMaps(), babel({ extensions: ['.js', '.jsx', '.ts', '.tsx'], babelrc: false, presets: [["@babel/preset-env", { modules: false }]] }) ] };