Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var webpack = require('webpack');
- var webpackMerge = require('webpack-merge');
- var ExtractTextPlugin = require('extract-text-webpack-plugin');
- var DefinePlugin = require('webpack/lib/DefinePlugin');
- var HtmlWebpackPlugin = require('html-webpack-plugin');
- var CopyWebpackPlugin = require('copy-webpack-plugin');
- var path = require("path");
- var CommonsChunkPlugin = webpack.optimize.CommonsChunkPlugin;
- module.exports = [
- {
- context: __dirname + "",
- entry : {
- app : './app.ts'
- },
- output : {
- path: '../../../target/classes/static/',
- filename : './myapp.js',
- sourceMapFilename: '[file].map'
- },
- performance: {
- hints: false
- },
- watchOptions: {
- ignored: /node_modules/
- },
- devtool: '#cheap-module-source-map',
- resolve: {
- extensions: ['.ts', '.js', '.css', '.scss', '.html']
- },
- module : {
- loaders : [
- {
- test: /\.ts-loader$/,
- loader: 'ng-annotate-loader!ts-loader'
- },
- {
- test: /\.js$/,
- loader: 'ng-annotate-loader'
- },
- {
- test : /\.html$/,
- loader : 'raw-loader'
- },
- {
- test : /\.png$/,
- loader : 'url-loader?limit=16384&mimetype=image/png'
- },
- {
- test : /\.svg(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=image/svg+xml'
- },
- {
- test : /\.woff(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=application/font-woff'
- },
- {
- test : /\.woff2(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=application/font-woff'
- },
- {
- test : /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=application/octet-stream'
- },
- {
- test : /\.eot(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'file-loader'
- }
- ]
- },
- plugins : [
- new HtmlWebpackPlugin({
- template: 'index.html.ejs',
- inject: false,
- filename: 'index.html'
- })
- ]
- },
- {
- context: __dirname + "/app",
- entry : {
- vendor : './vendor.ts',
- myapp : './app.ts'
- },
- output : {
- path: '../../../target/classes/static/app/',
- filename : './[name].js',
- sourceMapFilename: '[file].map'
- },
- performance: {
- hints: false
- },
- watchOptions: {
- ignored: /node_modules/
- },
- devtool: '#cheap-module-source-map',
- resolve: {
- extensions: ['.ts', '.js', '.css', '.scss', '.html']
- },
- module : {
- loaders : [
- {
- test: /\.ts$/,
- loader: 'ng-annotate-loader!ts-loader'
- },
- {
- test: /\.js$/,
- loader: 'ng-annotate-loader'
- },
- {
- test : /\.html$/,
- loader : 'raw-loader'
- },
- {
- test : /\.scss$/,
- exclude: /node_modules/,
- loader: ExtractTextPlugin.extract({
- fallbackLoader: "style-loader",
- loader: "css-loader?-minimize&sourceMap!sass-loader?sourceMap"
- })
- },
- {
- test : /\.png$/,
- loader : 'url-loader?limit=16384&mimetype=image/png'
- },
- {
- test : /\.svg(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=image/svg+xml'
- },
- {
- test : /\.woff(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=application/font-woff'
- },
- {
- test : /\.woff2(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=application/font-woff'
- },
- {
- test : /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'url-loader?limit=16384&mimetype=application/octet-stream'
- },
- {
- test : /\.eot(\?v=\d+\.\d+\.\d+)?$/,
- loader : 'file-loader'
- }
- ]
- },
- plugins : [
- new webpack.ProvidePlugin({
- "$" : "jquery",
- "jQuery" : "jquery",
- "window.jQuery": "jquery",
- "window.CodeMirror": "codemirror"
- }),
- new CommonsChunkPlugin({
- name: ['vendor']
- }),
- new webpack.DefinePlugin({
- 'ENV': JSON.stringify('development')
- }),
- new ExtractTextPlugin('./myapp.css'),
- new HtmlWebpackPlugin({
- template: 'index.ftl.ejs',
- inject: false,
- filename: 'index.ftl'
- }),
- new CopyWebpackPlugin([
- { from: '../node_modules/ckeditor', to: '../ckeditor' },
- { from: '_img', to: '_img' },
- { from: '_i18n', to: '_i18n' }
- ])
- ]
- }
- ];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement