Add dynamic cdn webpack plugin for production

This commit is contained in:
Jan Tuomi
2018-06-21 10:40:14 +03:00
parent 4ba6908173
commit 3ed5face1a
3 changed files with 65 additions and 0 deletions
+2
View File
@@ -2,6 +2,7 @@
const merge = require('webpack-merge');
const path = require('path')
const resolve = path.resolve;
const DynamicCdnWebpackPlugin = require('dynamic-cdn-webpack-plugin');
const PrerenderSPAPlugin = require('prerender-spa-plugin');
/* NOTE: This is a list of all routes that are prerendered for production use.
@@ -21,6 +22,7 @@ module.exports = merge(commonConfig, {
},
devtool: 'source-map',
plugins: [
new DynamicCdnWebpackPlugin(),
new PrerenderSPAPlugin({
// Required - The path to the webpack-outputted app to prerender.
staticDir: resolve(__dirname, '../../dist'),
+61
View File
@@ -4211,6 +4211,30 @@
"stream-shift": "^1.0.0"
}
},
"dynamic-cdn-webpack-plugin": {
"version": "4.0.0-rc.1",
"resolved": "https://registry.npmjs.org/dynamic-cdn-webpack-plugin/-/dynamic-cdn-webpack-plugin-4.0.0-rc.1.tgz",
"integrity": "sha512-yKfyj9TAeAoir3H6tS5mKVPrja8CKYWKFQYBa2/TEmLZLoSoVVHKdvSN0TNMPC2L5g2e0RoyOTBfNroU64YgYA==",
"dev": true,
"requires": {
"babel-runtime": "^6.26.0",
"html-webpack-include-assets-plugin": "1.0.3",
"read-pkg-up": "^3.0.0",
"resolve-pkg": "^1.0.0"
},
"dependencies": {
"read-pkg-up": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
"integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=",
"dev": true,
"requires": {
"find-up": "^2.0.0",
"read-pkg": "^3.0.0"
}
}
}
},
"each-async": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz",
@@ -7104,6 +7128,17 @@
"integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=",
"dev": true
},
"html-webpack-include-assets-plugin": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/html-webpack-include-assets-plugin/-/html-webpack-include-assets-plugin-1.0.3.tgz",
"integrity": "sha512-P8qqFWyTSBHySuWBZINZw/Xqas7bB5d8BspeJN7GgB2/1CLV/xF3GX2dqy4qlKDySOgXPYBp5z64f8Xvr5prSg==",
"dev": true,
"requires": {
"glob": "^7.1.2",
"minimatch": "^3.0.4",
"slash": "^1.0.0"
}
},
"html-webpack-plugin": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz",
@@ -9523,6 +9558,15 @@
"react-lifecycles-compat": "^3.0.2"
}
},
"module-to-cdn": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/module-to-cdn/-/module-to-cdn-3.1.2.tgz",
"integrity": "sha512-KxQI3NcruZtwWZsgnJCKmqciotnKR3gNj6QJqCWo5eCyhLtBBi8Sw2pzDCsHEJndhzoDhdf9kWKobiBv7CwQMw==",
"dev": true,
"requires": {
"semver": "^5.3.0"
}
},
"moment": {
"version": "2.22.2",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz",
@@ -13251,6 +13295,23 @@
"resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz",
"integrity": "sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg=="
},
"resolve-pkg": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/resolve-pkg/-/resolve-pkg-1.0.0.tgz",
"integrity": "sha1-4ZoV54rKLhJEYdySsuOUPvk0lNk=",
"dev": true,
"requires": {
"resolve-from": "^2.0.0"
},
"dependencies": {
"resolve-from": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz",
"integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=",
"dev": true
}
}
},
"resolve-url": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
+2
View File
@@ -48,12 +48,14 @@
"babel-preset-react": "^6.24.1",
"css-loader": "^0.28.11",
"dotenv-webpack": "^1.5.7",
"dynamic-cdn-webpack-plugin": "^4.0.0-rc.1",
"file-loader": "^1.1.11",
"fs-extra": "^6.0.1",
"html-webpack-plugin": "^3.2.0",
"husky": "^1.0.0-rc.9",
"image-webpack-loader": "^4.3.0",
"json-server": "^0.14.0",
"module-to-cdn": "^3.1.2",
"node-sass": "^4.9.0",
"npm-run-all": "^4.1.3",
"plop": "^2.0.0",