1*cf78ab8cSAndroid Build Coastguard Worker// Import rollup plugins 2*cf78ab8cSAndroid Build Coastguard Workerimport { rollupPluginHTML as html } from '@web/rollup-plugin-html'; 3*cf78ab8cSAndroid Build Coastguard Workerimport { copy } from '@web/rollup-plugin-copy'; 4*cf78ab8cSAndroid Build Coastguard Workerimport resolve from '@rollup/plugin-node-resolve'; 5*cf78ab8cSAndroid Build Coastguard Workerimport { terser } from 'rollup-plugin-terser'; 6*cf78ab8cSAndroid Build Coastguard Workerimport summary from 'rollup-plugin-summary'; 7*cf78ab8cSAndroid Build Coastguard Workerimport { rollupImportMapPlugin } from "rollup-plugin-import-map"; 8*cf78ab8cSAndroid Build Coastguard Worker 9*cf78ab8cSAndroid Build Coastguard Workerexport default { 10*cf78ab8cSAndroid Build Coastguard Worker plugins: [ 11*cf78ab8cSAndroid Build Coastguard Worker // Entry point for application build; can specify a glob to build multiple 12*cf78ab8cSAndroid Build Coastguard Worker // HTML files for non-SPA app 13*cf78ab8cSAndroid Build Coastguard Worker html({ 14*cf78ab8cSAndroid Build Coastguard Worker input: ['./web/index.html', './web/dev.html'] 15*cf78ab8cSAndroid Build Coastguard Worker }), 16*cf78ab8cSAndroid Build Coastguard Worker // Add Import maps from libraries to CDN urls 17*cf78ab8cSAndroid Build Coastguard Worker rollupImportMapPlugin([ 18*cf78ab8cSAndroid Build Coastguard Worker { 19*cf78ab8cSAndroid Build Coastguard Worker "imports": { 20*cf78ab8cSAndroid Build Coastguard Worker 'lit': 'https://cdn.jsdelivr.net/gh/lit/dist@2/core/lit-core.min.js', 21*cf78ab8cSAndroid Build Coastguard Worker 'lit/decorators.js': 'https://cdn.skypack.dev/pin/[email protected]/mode=imports/optimized/lit/decorators.js', 22*cf78ab8cSAndroid Build Coastguard Worker 'lit/directives/live.js': 'https://cdn.jsdelivr.net/gh/lit/dist@2/all/lit-all.min.js', 23*cf78ab8cSAndroid Build Coastguard Worker 'lit/directives/style-map.js': 'https://cdn.jsdelivr.net/gh/lit/dist@2/all/lit-all.min.js', 24*cf78ab8cSAndroid Build Coastguard Worker } 25*cf78ab8cSAndroid Build Coastguard Worker } 26*cf78ab8cSAndroid Build Coastguard Worker ]), 27*cf78ab8cSAndroid Build Coastguard Worker // Resolve bare module specifiers to relative paths 28*cf78ab8cSAndroid Build Coastguard Worker resolve(), 29*cf78ab8cSAndroid Build Coastguard Worker // Minify JS 30*cf78ab8cSAndroid Build Coastguard Worker terser({ 31*cf78ab8cSAndroid Build Coastguard Worker ecma: 2020, 32*cf78ab8cSAndroid Build Coastguard Worker module: true, 33*cf78ab8cSAndroid Build Coastguard Worker warnings: true, 34*cf78ab8cSAndroid Build Coastguard Worker }), 35*cf78ab8cSAndroid Build Coastguard Worker // Print bundle summary 36*cf78ab8cSAndroid Build Coastguard Worker summary(), 37*cf78ab8cSAndroid Build Coastguard Worker // Copy any static assets to build directory 38*cf78ab8cSAndroid Build Coastguard Worker copy({ 39*cf78ab8cSAndroid Build Coastguard Worker patterns: ['./assets/*'], 40*cf78ab8cSAndroid Build Coastguard Worker }), 41*cf78ab8cSAndroid Build Coastguard Worker ], 42*cf78ab8cSAndroid Build Coastguard Worker output: { 43*cf78ab8cSAndroid Build Coastguard Worker dir: 'dist', 44*cf78ab8cSAndroid Build Coastguard Worker preserveModules: true, 45*cf78ab8cSAndroid Build Coastguard Worker preserveModulesRoot: 'web' 46*cf78ab8cSAndroid Build Coastguard Worker }, 47*cf78ab8cSAndroid Build Coastguard Worker preserveEntrySignatures: 'strict', 48*cf78ab8cSAndroid Build Coastguard Worker};