angular-cli/addon/ng2/models/webpack-build-mobile.ts
2016-08-19 20:39:09 +01:00

35 lines
1.2 KiB
TypeScript

import * as webpack from 'webpack';
import * as path from 'path';
import * as OfflinePlugin from 'offline-plugin';
import * as CopyWebpackPlugin from 'copy-webpack-plugin';
import { PrerenderWebpackPlugin } from '../utilities/prerender-webpack-plugin.ts';
export const getWebpackMobileConfigPartial = function (projectRoot: string, appConfig: any) {
// Hardcoded files and paths here should be part of appConfig when
// reworking the mobile app functionality
return {
plugins: [
new CopyWebpackPlugin([
{from: path.resolve(projectRoot, appConfig.root, 'icons'), to: path.resolve(projectRoot, appConfig.outDir, 'icons')},
{from: path.resolve(projectRoot, appConfig.root, 'manifest.webapp'), to: path.resolve(projectRoot, appConfig.outDir)}
]),
new PrerenderWebpackPlugin({
templatePath: 'index.html',
configPath: path.resolve(projectRoot, appConfig.root, 'main-app-shell.ts'),
appPath: path.resolve(projectRoot, appConfig.root)
})
]
}
};
export const getWebpackMobileProdConfigPartial = function (projectRoot: string, appConfig: any) {
return {
entry: {
'sw-install': path.resolve(__dirname, '../utilities/sw-install.js')
},
plugins: [
new OfflinePlugin()
]
}
};