import path from 'path'; import nodeResolve from 'rollup-plugin-node-resolve'; import commonjs from 'rollup-plugin-commonjs'; import json from 'rollup-plugin-json'; import typescript from 'rollup-plugin-typescript'; const src = path.resolve('src'); export default { entry: 'src/index.ts', moduleName: 'svelte', targets: [{ dest: 'compiler/svelte.js', format: 'umd' }], plugins: [ { resolveId(importee, importer) { // bit of a hack — TypeScript only really works if it can resolve imports, // but they misguidedly chose to reject imports with file extensions. This // means we need to resolve them here if ( importer && importer.startsWith(src) && importee[0] === '.' && path.extname(importee) === '' ) { return path.resolve(path.dirname(importer), `${importee}.ts`); } } }, nodeResolve({ jsnext: true, module: true }), commonjs(), json(), typescript({ include: 'src/**', exclude: 'src/shared/**', typescript: require('typescript') }) ], sourceMap: true };