import HtmlWebpackPlugin = require('html-webpack-plugin'); import * as template from 'html-webpack-template'; const optionsArray: template.Options[] = [ { /** Required */ inject: false, template, // template: 'node_modules/html-webpack-template/index.ejs', /** Optional */ appMountId: 'app', appMountIds: [ 'root0', 'root1', ], baseHref: 'http://example.com/awesome', devServer: 'http://localhost:3001', googleAnalytics: { trackingId: 'UA-XXXX-XX', pageViewOnLoad: true, }, links: [ 'https://fonts.googleapis.com/css?family=Roboto', { href: '/apple-touch-icon.png', rel: 'apple-touch-icon', sizes: '180x180', }, { href: '/favicon-32x32.png', rel: 'icon', sizes: '32x32', type: 'image/png', }, ], meta: [ { description: 'A better default template for html-webpack-plugin.', }, ], mobile: true, inlineManifestWebpackName: 'webpackManifest', scripts: [ 'http://example.com/somescript.js', { src: '/myModule.js', type: 'module', }, ], window: { env: { apiHost: 'http://myapi.com/api/v1', }, }, /** * And any other config options from html-webpack-plugin: * https://github.com/ampedandwired/html-webpack-plugin#configuration */ title: 'My App', }, ]; const plugins: HtmlWebpackPlugin[] = optionsArray.map(options => new HtmlWebpackPlugin(options));