import typescript from '@rollup/plugin-typescript'; import terser from '@rollup/plugin-terser'; import { defineConfig } from 'rollup'; import fs from 'fs'; const version = process.env.SEMANTIC_RELEASE_NEXT_VERSION || JSON.parse(fs.readFileSync('./package.json')).version; console.log('building version:', version); const banner = `/** * marked v${version} - a markdown parser * Copyright (c) 2011-${new Date().getFullYear()}, Christopher Jeffrey. (MIT Licensed) * https://github.com/markedjs/marked */ /** * DO NOT EDIT THIS FILE * The code in this file is generated from files in ./src/ */ `; export default defineConfig([ { input: 'src/marked.ts', output: [{ file: 'lib/marked.esm.js', format: 'esm', sourcemap: true, banner, }, { file: 'lib/marked.umd.js', format: 'umd', name: 'marked', sourcemap: true, banner, }, { file: 'marked.min.js', format: 'umd', name: 'marked', sourcemap: false, banner, plugins: [terser({ format: { comments: (node, comment) => { if (comment.type === 'comment2') { return comment.value.includes('Copyright (c)'); } }, }, })], }, { file: 'lib/marked.cjs', format: 'cjs', name: 'marked', sourcemap: true, banner, }], plugins: [ typescript(), ], }, ]);