UNPKG

42.4 kBSource Map (JSON)View Raw
1{"version":3,"sources":["webpack:///webpack/bootstrap 4ccc53d267cf5f40d820","webpack:///external \"path\"","webpack:///external \"preconditions\"","webpack:///external \"webpack\"","webpack:///./setup/UniversalWebApplicationSetup.js","webpack:///./catela-module-setup.js","webpack:///./webpack/WebpackConfigurationFactory.js","webpack:///external \"assets-webpack-plugin\"","webpack:///external \"chalk\"","webpack:///external \"create-file-webpack\"","webpack:///external \"extract-text-webpack-plugin\"","webpack:///external \"fs\"","webpack:///external \"progress-bar-webpack-plugin\"","webpack:///external \"stats-webpack-plugin\"","webpack:///external \"url\"","webpack:///external \"webpack-dev-server\""],"names":["UniversalWebApplicationSetup","options","pc","preconditions","instance","shouldBeDefined","console","log","name","_options","modules","Array","warn","_applicationName","_applicationHost","host","rootProjectPath","rootApplicationPath","path","join","rootDeploymentPath","rootDeploymentApplicationPath","assetHost","assetPath","artifactPath","length","locales","loggerOptions","type","useBuildID","_rootProjectPath","_rootApplicationPath","_rootDeploymentPath","_rootDeploymentApplicationPath","projectConfigurationOptions","applicationName","applicationHost","applicationAssetHost","environment","port","pingPort","webpackConfigurationOptions","devPort","_webpackConfigurationFactory","WebpackConfigurationFactory","_webpackConfiguration","createWebpackConfiguration","_compiler","_createWebpackCompiler","serverConfiguration","serverCompiler","watch","aggregateTimeout","poll","err","stats","error","compilation","errors","toString","colors","warnings","clientConfiguration","clientCompiler","clientDevServer","WebpackDevServer","contentBase","hot","filename","proxy","watchOptions","color","publicPath","disableHostCheck","listen","stack","run","configuration","compiler","CatelaApplicationSetup","progressBarPlugin","ProgressBarPlugin","format","chalk","green","bold","clear","_environment","_applicationAssetHost","_applicationAssetPath","_applicationArtifactPath","_outputBuildPath","_buildID","JSON","stringify","Date","parse","_publicPath","_artifactPath","_assetPath","_serverOutputPath","_clientOutputPath","client","_createClientWebpackConfiguration","server","_createServerWebpackConfiguration","config","entry","_buildServerEntry","output","_buildServerOutput","plugins","_buildServerPlugins","common","_buildCommon","externalNodeModules","nodeModulePath","fs","readdirSync","filter","x","indexOf","forEach","mod","target","devtool","externals","_buildClientEntry","_buildClientOutput","_buildClientPlugins","loaders","_buildLoaders","applicationNamespace","modulesDirectories","m","moduleNamespace","push","resolve","extensions","module","clientEntry","libs","chunkFilename","sourceMapFilename","cssLoader","stylesheetLoaders","Object","keys","ext","stylesheetLoader","isArray","ExtractTextPlugin","extract","fallback","use","resultLoaders","concat","_loadersByExtension","StatsPlugin","chunkModules","webpack","DefinePlugin","AssetsPlugin","prettyPrint","update","WatchIgnorePlugin","project","PrefetchPlugin","HotModuleReplacementPlugin","optimize","CommonsChunkPlugin","minChunks","UglifyJsPlugin","compressor","ExtendedAPIPlugin","NoEmitOnErrorsPlugin","styleName","CreateFileWebpack","fileName","content","exts","RegExp","map","replace","obj","self","key","split","value","exclude","ignore","test","_extsToRegExp","loader","valueKey"],"mappings":"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","file":"catela.build.setup.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 4);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 4ccc53d267cf5f40d820","module.exports = require(\"path\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"path\"\n// module id = 0\n// module chunks = 0","module.exports = require(\"preconditions\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"preconditions\"\n// module id = 1\n// module chunks = 0","module.exports = require(\"webpack\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"webpack\"\n// module id = 2\n// module chunks = 0","import path from 'path'\nimport preconditions from 'preconditions'\nimport webpack from 'webpack'\nimport WebpackConfigurationFactory from 'webpack/WebpackConfigurationFactory'\nimport WebpackDevServer from 'webpack-dev-server'\nimport url from 'url'\n\nclass UniversalWebApplicationSetup {\n static create (options) {\n return new UniversalWebApplicationSetup(options)\n }\n\n constructor (options) {\n let pc = preconditions.instance(options)\n pc.shouldBeDefined('name', 'Please provide the name of the application.')\n pc.shouldBeDefined('host', 'Please provide the host of the application.')\n pc.shouldBeDefined('port', 'Please provide the port of the application.')\n pc.shouldBeDefined('pingPort', 'Please provide the ping port of the application.')\n pc.shouldBeDefined('rootProjectPath', 'Please provide the rootProjectPath.')\n pc.shouldBeDefined('rootDeploymentPath', 'Please provide the rootDeploymentPath.')\n pc.shouldBeDefined('environment', 'Please provide the environment.')\n\n console.log('Application is initializing - ', options.name)\n\n this._options = options\n\n if (this._options.modules == null || typeof this._options.modules === 'undefined') {\n this._options.modules = []\n } else {\n if (!(this._options.modules instanceof Array)) {\n this._options.modules = []\n console.warn('[COMPILER] Omitting modules entry. You should put the modules folder in an array.')\n }\n }\n\n this._applicationName = options.name\n this._applicationHost = options.host\n\n var rootProjectPath = options.rootProjectPath\n var rootApplicationPath = path.join(options.rootProjectPath, 'applications', options.name)\n\n var rootDeploymentPath = options.rootDeploymentPath\n var rootDeploymentApplicationPath = path.join(options.rootDeploymentPath, 'applications', options.name)\n let assetHost = options.assetHost !== null && typeof options.assetHost !== 'undefined' ? options.assetHost : options.host\n\n let assetPath = options.assetPath || options.artifactPath || '/assets'\n assetPath += assetPath[assetPath.length - 1] !== '/' ? '/' : ''\n\n let artifactPath = options.artifactPath || options.assetPath || '/assets'\n artifactPath += artifactPath[artifactPath.length - 1] !== '/' ? '/' : ''\n \n console.log('==> rootProjectPath: ', rootProjectPath)\n console.log('==> rootApplicationPath: ', rootApplicationPath)\n console.log('==> rootDeploymentPath: ', rootDeploymentPath)\n console.log('==> rootDeploymentApplicationPath: ', rootDeploymentApplicationPath)\n console.log('==> supportedLocales: ', options.locales)\n console.log('==> modules: ', options.modules)\n console.log('==> logger (default - winston): ', options.loggerOptions ? options.loggerOptions.type : 'default')\n\n console.log('==> assetHost: ', assetHost)\n console.log('==> assetPath (default: /assets): ', assetPath)\n console.log('==> artifactPath (default: /assets): ', artifactPath)\n console.log('==> useBuildID (default: false): ', !!options.useBuildID)\n \n this._rootProjectPath = rootProjectPath\n this._rootApplicationPath = rootApplicationPath\n this._rootDeploymentPath = rootDeploymentPath\n this._rootDeploymentApplicationPath = rootDeploymentApplicationPath\n \n let projectConfigurationOptions = {\n applicationName: options.name,\n applicationHost: options.host,\n // Assets Config\n applicationAssetHost: assetHost,\n useBuildID: !!options.useBuildID,\n assetPath: assetPath,\n artifactPath: artifactPath,\n\n rootProjectPath: rootProjectPath,\n rootApplicationPath: rootApplicationPath,\n rootDeploymentPath: rootDeploymentPath,\n rootDeploymentApplicationPath: rootDeploymentApplicationPath,\n environment: options.environment,\n locales: options.locales,\n port: options.port,\n pingPort: options.pingPort,\n modules: options.modules,\n loggerOptions: options.loggerOptions\n }\n\n let webpackConfigurationOptions = {\n devPort: options.devPort,\n ...projectConfigurationOptions\n }\n console.log('Building webpack configurations, we will put on some commonly used plugin & configuration.')\n this._webpackConfigurationFactory = new WebpackConfigurationFactory(webpackConfigurationOptions)\n this._webpackConfiguration = this._webpackConfigurationFactory.createWebpackConfiguration(webpackConfigurationOptions)\n this._compiler = this._createWebpackCompiler(this._webpackConfiguration)\n }\n\n run () {\n if (this._options.environment === 'development') {\n console.log('[COMPILER] Initiating server compilation')\n let serverConfiguration = this._webpackConfiguration[0]\n let serverCompiler = this._createWebpackCompiler(serverConfiguration)\n serverCompiler.watch({\n aggregateTimeout: 300,\n poll: true\n }, (err, stats) => {\n if (err) console.error(err)\n // console.log(stats.toString({ colors: true }))\n console.log(stats.compilation.errors.toString({ colors: true }))\n console.log(stats.compilation.warnings.toString({ colors: true }))\n console.log('[COMPILER] Server compilation finished. Watching for server file changes.')\n })\n\n console.log('[COMPILER] Initiating client compilation using webpack-dev-server')\n let clientConfiguration = this._webpackConfiguration[1]\n let clientCompiler = this._createWebpackCompiler(clientConfiguration)\n let clientDevServer = new WebpackDevServer(clientCompiler, {\n contentBase: path.join(this._rootApplicationPath, 'build'),\n hot: true,\n filename: 'main.js',\n proxy: {\n '**': 'http://localhost:' + this._options.port\n },\n watchOptions: {\n aggregateTimeout: 300,\n poll: 1000\n },\n stats: {\n color: true\n },\n publicPath: this._options.assetPath || '/assets',\n disableHostCheck: true\n })\n clientDevServer.listen(this._options.devPort, (err) => {\n if (err) {\n console.err('[ERROR]: ', err, err.stack)\n } else {\n console.log('\\n[COMPILER] webpack-dev-server is listening at port ' + this._options.devPort)\n console.log('[COMPILER] Client compilation finished. Watching for client file changes.')\n }\n })\n } else {\n console.log('[COMPILER] Initiating compilation.')\n this._compiler = this._createWebpackCompiler(this._webpackConfiguration)\n this._compiler.run((err, stats) => {\n if (err) console.error(err)\n console.log(stats.toString({ colors: true }))\n console.log('[COMPILER] Compilation finished.')\n })\n }\n }\n\n _createWebpackCompiler (configuration) {\n let compiler = webpack(configuration)\n return compiler\n }\n}\n\nexport default UniversalWebApplicationSetup\n\n\n\n// WEBPACK FOOTER //\n// ./setup/UniversalWebApplicationSetup.js","import UniversalWebApplicationSetup from 'setup/UniversalWebApplicationSetup'\n\nexport default {\n CatelaApplicationSetup: UniversalWebApplicationSetup\n}\n\n\n\n// WEBPACK FOOTER //\n// ./catela-module-setup.js","import AssetsPlugin from 'assets-webpack-plugin'\nimport chalk from 'chalk'\nimport ExtractTextPlugin from 'extract-text-webpack-plugin'\nimport fs from 'fs'\n// import NyanProgressPlugin from 'nyan-progress-webpack-plugin'\nimport path from 'path'\nimport preconditions from 'preconditions'\nimport ProgressBarPlugin from 'progress-bar-webpack-plugin'\nimport StatsPlugin from 'stats-webpack-plugin'\nimport webpack from 'webpack'\nimport CreateFileWebpack from 'create-file-webpack'\n\n// let nyanProgressPlugin = new NyanProgressPlugin()\nlet progressBarPlugin = new ProgressBarPlugin({\n format: ' build [:bar] ' + chalk.green.bold(':percent') + ' (:elapsed seconds)',\n clear: false\n})\n\nclass WebpackConfigurationFactory {\n constructor (options) {\n let pc = preconditions.instance(options)\n pc.shouldBeDefined('applicationName', 'applicationName is required.')\n pc.shouldBeDefined('applicationHost', 'applicationHost is required.')\n pc.shouldBeDefined('applicationAssetHost', 'applicationAssetHost is required.')\n pc.shouldBeDefined('rootProjectPath', 'rootProjectPath is required.')\n pc.shouldBeDefined('rootApplicationPath', 'rootApplicationPath is required.')\n pc.shouldBeDefined('rootDeploymentPath', 'rootDeploymentPath is required.')\n pc.shouldBeDefined('rootDeploymentApplicationPath', 'rootDeploymentApplicationPath is required.')\n pc.shouldBeDefined('environment', 'environment is required.')\n pc.shouldBeDefined('locales', 'locales is required.')\n pc.shouldBeDefined('modules', 'modules is required')\n\n this._options = options\n this._applicationHost = options.applicationHost\n this._applicationName = options.applicationName\n this._rootProjectPath = options.rootProjectPath\n this._rootApplicationPath = options.rootApplicationPath\n this._rootDeploymentPath = options.rootDeploymentPath\n this._rootDeploymentApplicationPath = options.rootDeploymentApplicationPath\n this._environment = options.environment\n \n // CDN supports\n this._applicationAssetHost = options.applicationAssetHost\n this._applicationAssetPath = options.assetPath\n this._applicationArtifactPath = options.artifactPath\n this._outputBuildPath = path.join(this._rootApplicationPath, 'build', this._environment)\n this._buildID = options.useBuildID ? JSON.stringify(Date.parse(new Date())) : ''\n this._publicPath = this._applicationAssetHost\n this._artifactPath = this._applicationAssetHost + this._applicationArtifactPath + this._buildID\n this._assetPath = this._applicationAssetHost + this._applicationAssetPath\n this._serverOutputPath = path.join(this._outputBuildPath, 'server')\n this._clientOutputPath = path.join(this._outputBuildPath, 'client')\n }\n\n createWebpackConfiguration () {\n let client = this._createClientWebpackConfiguration()\n let server = this._createServerWebpackConfiguration()\n let config = [server, client]\n return config\n }\n\n _createServerWebpackConfiguration () {\n let options = this._options\n let entry = this._buildServerEntry(options)\n let output = this._buildServerOutput(options)\n let plugins = this._buildServerPlugins(options)\n let common = this._buildCommon()\n\n let externalNodeModules = {}\n let nodeModulePath = path.join(this._rootProjectPath, 'node_modules')\n fs.readdirSync(nodeModulePath)\n .filter(function (x) {\n return ['.bin'].indexOf(x) === -1\n })\n .forEach(function (mod) {\n if (mod !== 'react-toolbox') {\n externalNodeModules[mod] = 'commonjs ' + mod\n }\n })\n\n return {\n name: 'server',\n ...common,\n entry: entry,\n output: output,\n plugins: plugins,\n target: 'node',\n devtool: 'sourcemap',\n externals: externalNodeModules\n }\n }\n\n _createClientWebpackConfiguration () {\n let options = this._options\n let entry = this._buildClientEntry(options)\n let output = this._buildClientOutput(options)\n let plugins = this._buildClientPlugins(options)\n let common = this._buildCommon()\n\n return {\n name: 'client',\n ...common,\n entry: entry,\n output: output,\n plugins: plugins,\n devtool: 'sourcemap'\n }\n }\n\n _buildCommon () {\n let options = this._options\n let loaders = this._buildLoaders(options)\n let applicationNamespace = path.join(this._rootProjectPath, 'applications', options.applicationName)\n let modulesDirectories = [\n 'node_modules',\n applicationNamespace\n ]\n this._options.modules.forEach((m) => {\n let moduleNamespace = path.join(this._rootProjectPath, m)\n modulesDirectories.push(moduleNamespace)\n })\n let config = {\n resolve: {\n modules: modulesDirectories,\n extensions: ['*', '.js', '.jsx', '.scss', '.css', '.ts', '.tsx']\n },\n module: {\n ...loaders\n }\n }\n return config\n }\n\n _buildServerEntry (options) {\n let entry = {\n server: path.join(this._rootApplicationPath, 'server.jsx')\n }\n return entry\n }\n\n _buildClientEntry (options) {\n let environment = this._options.environment\n let clientEntry = []\n if (environment === 'development') {\n clientEntry.push('react-hot-loader/patch')\n clientEntry.push('webpack-dev-server/client?http://localhost:' + this._options.devPort + '/')\n }\n clientEntry.push(path.join(this._rootApplicationPath, 'client.jsx'))\n let entry = {\n libs: [\n 'react',\n 'react-dom',\n 'react-router'\n ],\n client: clientEntry\n }\n return entry\n }\n\n _buildClientOutput (options) {\n /*\n * You can use [hash] like: path.join(this._rootApplicationPath, 'build', '[hash]')\n * For now we will not use hash first, later on we will bring this to use when all is figured out\n */\n\n let filename = 'main.js';\n if (this._buildID) filename = this._buildID + '/main.js'\n\n let output = {\n path: this._clientOutputPath,\n publicPath: this._publicPath,\n filename: filename,\n chunkFilename: '[id].[name].js',\n sourceMapFilename: '[file].map'\n }\n\n return output\n }\n\n _buildServerOutput (options) {\n /*\n * You can use [hash] like: path.join(this._rootApplicationPath, 'build', '[hash]')\n * For now we will not use hash first, later on we will bring this to use when all is figured out\n */\n\n\n let output = {\n path: this._serverOutputPath,\n publicPath: this._publicPath,\n filename: 'main.js',\n chunkFilename: '[id].[name].js',\n sourceMapFilename: '__dev/assets/server/debugging/[file].map'\n }\n\n return output\n }\n\n _buildLoaders (options) {\n var loaders = {\n 'jsx': this._environment === 'development' // Disable react-hot-loader for now (it is causing bug in webpack-dev-server)\n ? ['react-hot-loader/webpack', 'babel-loader?compact=false'] : ['babel-loader?compact=false'],\n 'js': 'babel-loader?compact=false',\n 'tsx': 'ts-loader',\n 'ts': 'ts-loader',\n 'json': 'json-loader',\n 'json5': 'json5-loader',\n 'txt': 'raw-loader',\n 'png|jpg|jpeg|gif|svg': 'url-loader?limit=10000,fallback=file-loader,name=[name].[ext],publicPath=' + this._assetPath,\n 'otf|woff|woff2': 'url-loader?limit=100000,publicPath=' + this._assetPath,\n 'ttf|eot': 'file-loader?publicPath=' + this._assetPath,\n 'wav|mp3': 'file-loader?publicPath=' + this._assetPath,\n 'html': 'html-loader',\n 'md|markdown': ['html-loader', 'markdown-loader']\n }\n\n var cssLoader = 'css-loader?module&localIdentName=[name]-[local]-[hash:base64:5]'\n\n var stylesheetLoaders = {\n 'css': cssLoader,\n 'less': [cssLoader, 'less-loader'],\n 'styl': [cssLoader, 'stylus-loader'],\n 'scss|sass': [cssLoader, 'sass-loader']\n }\n\n Object.keys(stylesheetLoaders).forEach(function (ext) {\n var stylesheetLoader = stylesheetLoaders[ext]\n if (Array.isArray(stylesheetLoader)) {\n stylesheetLoader = stylesheetLoader.join('!')\n }\n stylesheetLoaders[ext] = ExtractTextPlugin.extract({\n fallback: 'style-loader',\n use: stylesheetLoader\n })\n })\n\n let resultLoaders = []\n .concat(this._loadersByExtension(loaders))\n .concat(this._loadersByExtension(stylesheetLoaders))\n\n return {\n loaders: resultLoaders\n }\n }\n\n _buildServerPlugins (options) {\n let plugins = []\n // plugins.push(nyanProgressPlugin)\n\n plugins.push(progressBarPlugin)\n plugins.push(new StatsPlugin('stats.json', {\n chunkModules: true\n }))\n plugins.push(new webpack.DefinePlugin(\n {\n '__PROJECT__': JSON.stringify(this._options),\n '__SERVER__': true,\n '__CLIENT__': false,\n '__BUILD_ID__': JSON.stringify(this._buildID),\n '__ARTIFACT_PATH__': JSON.stringify(this._artifactPath)\n }\n ))\n plugins.push(new ExtractTextPlugin('styles.css'))\n plugins.push(new AssetsPlugin({\n prettyPrint: true,\n publicPath: this._publicPath,\n path: this._serverOutputPath,\n update: true\n }))\n plugins.push(new webpack.WatchIgnorePlugin([\n /\\.d\\.ts$/\n ]))\n return plugins\n }\n\n _buildClientPlugins (options) {\n let project = {\n applicationName: this._options.applicationName,\n applicationHost: this._options.applicationHost,\n environment: this._options.environment,\n locales: this._options.locales\n }\n let plugins = []\n // plugins.push(nyanProgressPlugin)\n plugins.push(progressBarPlugin)\n\n if (this._options.environment === 'development') {\n plugins.push(new webpack.PrefetchPlugin('react'))\n plugins.push(new webpack.PrefetchPlugin('react-router'))\n plugins.push(new webpack.PrefetchPlugin('react-dom/lib/ReactComponentBrowserEnvironment'))\n plugins.push(new webpack.HotModuleReplacementPlugin())\n }\n\n plugins.push(new StatsPlugin('stats.json', {\n chunkModules: true\n }))\n\n let filename = 'commons.js';\n if (this._buildID) filename = this._buildID + '/commons.js'\n\n plugins.push(new webpack.optimize.CommonsChunkPlugin({\n name: 'libs',\n filename: filename,\n minChunks: 0\n }))\n\n if (this._options.environment !== 'development') {\n plugins.push(new webpack.optimize.UglifyJsPlugin(\n { compressor: { warnings: false } }\n ))\n plugins.push(new webpack.ExtendedAPIPlugin())\n }\n\n plugins.push(new webpack.DefinePlugin(\n {\n 'process.env': {\n 'NODE_ENV': JSON.stringify(this._environment)\n },\n '__SERVER__': false,\n '__CLIENT__': true,\n '__PROJECT__': JSON.stringify(project),\n '__BUILD_ID__': JSON.stringify(this._buildID),\n '__ARTIFACT_PATH__': JSON.stringify(this._artifactPath)\n }))\n plugins.push(new webpack.NoEmitOnErrorsPlugin())\n\n let styleName = 'styles.css';\n if (this._buildID) styleName = this._buildID + '/styles.css'\n\n plugins.push(new ExtractTextPlugin(styleName))\n plugins.push(new AssetsPlugin({\n prettyPrint: true,\n publicPath: this._publicPath,\n path: this._clientOutputPath,\n update: true\n }))\n plugins.push(new webpack.WatchIgnorePlugin([\n /\\.d\\.ts$/\n ]))\n // Add build ID file if required\n if (this._buildID) {\n plugins.push(new CreateFileWebpack({\n path: this._outputBuildPath,\n fileName: 'BUILD_ID',\n content: this._buildID\n }))\n }\n return plugins\n }\n\n _extsToRegExp (exts) {\n return new RegExp('\\\\.(' + exts.map(function (ext) {\n return ext.replace(/\\./g, '\\\\.')\n }).join('|') + ')(\\\\?.*)?$')\n }\n\n _loadersByExtension (obj) {\n let self = this\n var loaders = []\n Object.keys(obj).forEach(function (key) {\n var exts = key.split('|')\n var value = obj[key]\n var entry\n if (exts.indexOf('js') >= 0) {\n entry = {\n exclude: [/node_modules/],\n options: {\n ignore: [/node_modules/]\n },\n test: self._extsToRegExp(exts)\n }\n } else {\n entry = {\n test: self._extsToRegExp(exts)\n }\n }\n\n if (Array.isArray(value)) {\n entry.loaders = value\n } else if (typeof value === 'string') {\n entry.loader = value\n } else {\n Object.keys(value).forEach(function (valueKey) {\n entry[valueKey] = value[valueKey]\n })\n }\n loaders.push(entry)\n })\n return loaders\n };\n}\n\nexport default WebpackConfigurationFactory\n\n\n\n// WEBPACK FOOTER //\n// ./webpack/WebpackConfigurationFactory.js","module.exports = require(\"assets-webpack-plugin\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"assets-webpack-plugin\"\n// module id = 6\n// module chunks = 0","module.exports = require(\"chalk\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"chalk\"\n// module id = 7\n// module chunks = 0","module.exports = require(\"create-file-webpack\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"create-file-webpack\"\n// module id = 8\n// module chunks = 0","module.exports = require(\"extract-text-webpack-plugin\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"extract-text-webpack-plugin\"\n// module id = 9\n// module chunks = 0","module.exports = require(\"fs\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"fs\"\n// module id = 10\n// module chunks = 0","module.exports = require(\"progress-bar-webpack-plugin\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"progress-bar-webpack-plugin\"\n// module id = 11\n// module chunks = 0","module.exports = require(\"stats-webpack-plugin\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"stats-webpack-plugin\"\n// module id = 12\n// module chunks = 0","module.exports = require(\"url\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"url\"\n// module id = 13\n// module chunks = 0","module.exports = require(\"webpack-dev-server\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"webpack-dev-server\"\n// module id = 14\n// module chunks = 0"],"sourceRoot":""}
\No newline at end of file