@papillonbits/library 0.30.0 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@papillonbits/library",
3
- "version": "0.30.0",
3
+ "version": "0.32.0",
4
4
  "description": "Papillon Bits Library",
5
5
  "homepage": "https://github.com/papillonbits/papillonbits/tree/master/packages/library",
6
6
  "repository": {
@@ -25,6 +25,7 @@
25
25
  "sort/",
26
26
  "store/",
27
27
  "string/",
28
+ "webpack/",
28
29
  "README.md"
29
30
  ],
30
31
  "scripts": {
@@ -36,5 +37,5 @@
36
37
  "build-acceptance": "npm run build",
37
38
  "build-release": "npm run build"
38
39
  },
39
- "gitHead": "41fde59cebd2397b181d20dc53f379a367f22f4b"
40
+ "gitHead": "a3f7da0995192a4c9fbd3a4092dfbf416d783881"
40
41
  }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.targetBrowsers = exports.manifestFileName = exports.indexHTMLName = exports.extensions = exports.coreJSVersion = void 0;
7
+ var coreJSVersion = '3.25.3';
8
+ exports.coreJSVersion = coreJSVersion;
9
+ var targetBrowsers = {
10
+ production: ['> 1%', 'last 2 versions', 'Firefox ESR'],
11
+ legacyBrowsers: ['> 1%', 'last 2 versions', 'Firefox ESR'],
12
+ modernBrowsers: ['last 2 Chrome versions', 'not Chrome < 60', 'last 2 Safari versions', 'not Safari < 10.1', 'last 2 iOS versions', 'not iOS < 10.3', 'last 2 Firefox versions', 'not Firefox < 54', 'last 2 Edge versions', 'not Edge < 15']
13
+ };
14
+ exports.targetBrowsers = targetBrowsers;
15
+ var manifestFileName = 'manifest.json';
16
+ exports.manifestFileName = manifestFileName;
17
+ var indexHTMLName = 'index.html';
18
+ exports.indexHTMLName = indexHTMLName;
19
+ var extensions = ['.js', '.jsx', '.json', '.scss'];
20
+ exports.extensions = extensions;
@@ -0,0 +1,225 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "MiniCSSExtractPluginLoader", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _miniCSSExtractPlugin.MiniCSSExtractPluginLoader;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "getBabelLoaderAdvancedSetup", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _babelLoader.getBabelLoaderAdvancedSetup;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "getBannerPluginStandardSetup", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _bannerPlugin.getBannerPluginStandardSetup;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "getCSSLoaderStandardSetup", {
25
+ enumerable: true,
26
+ get: function get() {
27
+ return _cssLoader.getCSSLoaderStandardSetup;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "getCSSMinimizerWebpackPluginStandardSetup", {
31
+ enumerable: true,
32
+ get: function get() {
33
+ return _cssMinimizerWebpackPlugin.getCSSMinimizerWebpackPluginStandardSetup;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "getCleanWebpackPluginAdvancedSetup", {
37
+ enumerable: true,
38
+ get: function get() {
39
+ return _cleanWebpackPlugin.getCleanWebpackPluginAdvancedSetup;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "getCleanWebpackPluginStandardSetup", {
43
+ enumerable: true,
44
+ get: function get() {
45
+ return _cleanWebpackPlugin.getCleanWebpackPluginStandardSetup;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "getCopyWebpackPluginStandardSetup", {
49
+ enumerable: true,
50
+ get: function get() {
51
+ return _copyWebpackPlugin.getCopyWebpackPluginStandardSetup;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "getDevServerStandardSetup", {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _devServer.getDevServerStandardSetup;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "getDotenvWebpackAdvancedSetup", {
61
+ enumerable: true,
62
+ get: function get() {
63
+ return _dotenvWebpack.getDotenvWebpackAdvancedSetup;
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "getDotenvWebpackStandardSetup", {
67
+ enumerable: true,
68
+ get: function get() {
69
+ return _dotenvWebpack.getDotenvWebpackStandardSetup;
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "getFontLoaderStandardSetup", {
73
+ enumerable: true,
74
+ get: function get() {
75
+ return _fontLoader.getFontLoaderStandardSetup;
76
+ }
77
+ });
78
+ Object.defineProperty(exports, "getHotModuleReplacementPluginStandardSetup", {
79
+ enumerable: true,
80
+ get: function get() {
81
+ return _hotModuleReplacementPlugin.getHotModuleReplacementPluginStandardSetup;
82
+ }
83
+ });
84
+ Object.defineProperty(exports, "getHtmlWebpackPluginAdvancedSetup", {
85
+ enumerable: true,
86
+ get: function get() {
87
+ return _htmlWebpackPlugin.getHtmlWebpackPluginAdvancedSetup;
88
+ }
89
+ });
90
+ Object.defineProperty(exports, "getHtmlWebpackPluginStandardSetup", {
91
+ enumerable: true,
92
+ get: function get() {
93
+ return _htmlWebpackPlugin.getHtmlWebpackPluginStandardSetup;
94
+ }
95
+ });
96
+ Object.defineProperty(exports, "getImageLoaderStandardSetup", {
97
+ enumerable: true,
98
+ get: function get() {
99
+ return _imageLoader.getImageLoaderStandardSetup;
100
+ }
101
+ });
102
+ Object.defineProperty(exports, "getMarkdownLoaderStandardSetup", {
103
+ enumerable: true,
104
+ get: function get() {
105
+ return _markdownLoader.getMarkdownLoaderStandardSetup;
106
+ }
107
+ });
108
+ Object.defineProperty(exports, "getMiniCSSExtractPluginAdvancedSetup", {
109
+ enumerable: true,
110
+ get: function get() {
111
+ return _miniCSSExtractPlugin.getMiniCSSExtractPluginAdvancedSetup;
112
+ }
113
+ });
114
+ Object.defineProperty(exports, "getMiniCSSExtractPluginStandardSetup", {
115
+ enumerable: true,
116
+ get: function get() {
117
+ return _miniCSSExtractPlugin.getMiniCSSExtractPluginStandardSetup;
118
+ }
119
+ });
120
+ Object.defineProperty(exports, "getModuleConcatenationPluginStandardSetup", {
121
+ enumerable: true,
122
+ get: function get() {
123
+ return _moduleConcatenationPlugin.getModuleConcatenationPluginStandardSetup;
124
+ }
125
+ });
126
+ Object.defineProperty(exports, "getPostCSSLoaderStandardSetup", {
127
+ enumerable: true,
128
+ get: function get() {
129
+ return _postCSSLoader.getPostCSSLoaderStandardSetup;
130
+ }
131
+ });
132
+ Object.defineProperty(exports, "getSVGRLoaderAdvancedSetup", {
133
+ enumerable: true,
134
+ get: function get() {
135
+ return _svgrLoader.getSVGRLoaderAdvancedSetup;
136
+ }
137
+ });
138
+ Object.defineProperty(exports, "getSVGRLoaderStandardSetup", {
139
+ enumerable: true,
140
+ get: function get() {
141
+ return _svgrLoader.getSVGRLoaderStandardSetup;
142
+ }
143
+ });
144
+ Object.defineProperty(exports, "getSassLoaderStandardSetup", {
145
+ enumerable: true,
146
+ get: function get() {
147
+ return _sassLoader.getSassLoaderStandardSetup;
148
+ }
149
+ });
150
+ Object.defineProperty(exports, "getWebpackBundleAnalyzerStandardSetup", {
151
+ enumerable: true,
152
+ get: function get() {
153
+ return _webpackBundleAnalyzer.getWebpackBundleAnalyzerStandardSetup;
154
+ }
155
+ });
156
+ Object.defineProperty(exports, "getWebpackCommonSetup", {
157
+ enumerable: true,
158
+ get: function get() {
159
+ return _commonSetup.getWebpackCommonSetup;
160
+ }
161
+ });
162
+ Object.defineProperty(exports, "getWebpackDevelopmentSetup", {
163
+ enumerable: true,
164
+ get: function get() {
165
+ return _developmentSetup.getWebpackDevelopmentSetup;
166
+ }
167
+ });
168
+ Object.defineProperty(exports, "getWebpackManifestPluginStandardSetup", {
169
+ enumerable: true,
170
+ get: function get() {
171
+ return _webpackManifestPlugin.getWebpackManifestPluginStandardSetup;
172
+ }
173
+ });
174
+ Object.defineProperty(exports, "getWebpackProductionSetup", {
175
+ enumerable: true,
176
+ get: function get() {
177
+ return _productionSetup.getWebpackProductionSetup;
178
+ }
179
+ });
180
+
181
+ var _babelLoader = require("./loader/babelLoader");
182
+
183
+ var _cssLoader = require("./loader/cssLoader");
184
+
185
+ var _fontLoader = require("./loader/fontLoader");
186
+
187
+ var _imageLoader = require("./loader/imageLoader");
188
+
189
+ var _markdownLoader = require("./loader/markdownLoader");
190
+
191
+ var _postCSSLoader = require("./loader/postCSSLoader");
192
+
193
+ var _sassLoader = require("./loader/sassLoader");
194
+
195
+ var _svgrLoader = require("./loader/svgrLoader");
196
+
197
+ var _bannerPlugin = require("./plugin/bannerPlugin");
198
+
199
+ var _cleanWebpackPlugin = require("./plugin/cleanWebpackPlugin");
200
+
201
+ var _copyWebpackPlugin = require("./plugin/copyWebpackPlugin");
202
+
203
+ var _cssMinimizerWebpackPlugin = require("./plugin/cssMinimizerWebpackPlugin");
204
+
205
+ var _dotenvWebpack = require("./plugin/dotenvWebpack");
206
+
207
+ var _hotModuleReplacementPlugin = require("./plugin/hotModuleReplacementPlugin");
208
+
209
+ var _htmlWebpackPlugin = require("./plugin/htmlWebpackPlugin");
210
+
211
+ var _miniCSSExtractPlugin = require("./plugin/miniCSSExtractPlugin");
212
+
213
+ var _moduleConcatenationPlugin = require("./plugin/moduleConcatenationPlugin");
214
+
215
+ var _webpackBundleAnalyzer = require("./plugin/webpackBundleAnalyzer");
216
+
217
+ var _webpackManifestPlugin = require("./plugin/webpackManifestPlugin");
218
+
219
+ var _devServer = require("./server/devServer");
220
+
221
+ var _commonSetup = require("./setup/commonSetup");
222
+
223
+ var _developmentSetup = require("./setup/developmentSetup");
224
+
225
+ var _productionSetup = require("./setup/productionSetup");
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getBabelLoaderAdvancedSetup = getBabelLoaderAdvancedSetup;
7
+
8
+ var _constant = require("../constant");
9
+
10
+ // https://github.com/babel/babel-loader
11
+ function getBabelLoaderAdvancedSetup() {
12
+ return {
13
+ test: /\.(js|jsx)$/,
14
+ exclude: /node_modules/,
15
+ use: {
16
+ loader: 'babel-loader',
17
+ options: {
18
+ presets: [['@babel/preset-env', {
19
+ modules: false,
20
+ useBuiltIns: 'entry',
21
+ corejs: _constant.coreJSVersion,
22
+ targets: {
23
+ browsers: Object.values(_constant.targetBrowsers.modernBrowsers)
24
+ }
25
+ }], '@babel/preset-react'],
26
+ plugins: ['@babel/plugin-proposal-class-properties', '@babel/plugin-proposal-nullish-coalescing-operator', '@babel/plugin-proposal-object-rest-spread', '@babel/plugin-proposal-optional-catch-binding', '@babel/plugin-proposal-optional-chaining', '@babel/plugin-syntax-dynamic-import', '@babel/plugin-transform-classes', ['@babel/plugin-transform-react-jsx', {
27
+ runtime: 'automatic'
28
+ }], '@babel/plugin-transform-runtime', '@babel/plugin-transform-spread', 'syntax-async-functions']
29
+ }
30
+ }
31
+ };
32
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getCSSLoaderStandardSetup = getCSSLoaderStandardSetup;
7
+
8
+ // https://github.com/webpack-contrib/css-loader
9
+ function getCSSLoaderStandardSetup(_ref) {
10
+ var sourceMap = _ref.sourceMap,
11
+ modules = _ref.modules;
12
+ return {
13
+ loader: 'css-loader',
14
+ options: {
15
+ importLoaders: 2,
16
+ sourceMap: sourceMap,
17
+ modules: modules
18
+ }
19
+ };
20
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getFontLoaderStandardSetup = getFontLoaderStandardSetup;
7
+
8
+ // https://webpack.js.org/guides/asset-management/#loading-fonts
9
+ function getFontLoaderStandardSetup() {
10
+ return {
11
+ test: /\.(woff|woff2|eot|ttf|otf)$/i,
12
+ type: 'asset/resource'
13
+ };
14
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getImageLoaderStandardSetup = getImageLoaderStandardSetup;
7
+
8
+ // https://webpack.js.org/guides/asset-management/#loading-images
9
+ function getImageLoaderStandardSetup() {
10
+ return {
11
+ test: /\.(png|jpg|jpeg|gif)$/i,
12
+ type: 'asset/resource'
13
+ };
14
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getMarkdownLoaderStandardSetup = getMarkdownLoaderStandardSetup;
7
+
8
+ // https://github.com/peerigon/markdown-loader
9
+ function getMarkdownLoaderStandardSetup() {
10
+ return {
11
+ test: /\.md$/,
12
+ use: [{
13
+ loader: 'html-loader'
14
+ }, {
15
+ loader: 'markdown-loader',
16
+ options: {}
17
+ }]
18
+ };
19
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getPostCSSLoaderStandardSetup = getPostCSSLoaderStandardSetup;
7
+
8
+ // https://github.com/webpack-contrib/postcss-loader
9
+ function getPostCSSLoaderStandardSetup() {
10
+ return {
11
+ loader: 'postcss-loader',
12
+ options: {
13
+ postcssOptions: {
14
+ sourceMap: true,
15
+ plugins: function plugins() {
16
+ return ['postcss-preset-env'];
17
+ },
18
+ parser: 'postcss-scss'
19
+ }
20
+ }
21
+ };
22
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getSassLoaderStandardSetup = getSassLoaderStandardSetup;
7
+
8
+ // https://github.com/webpack-contrib/sass-loader
9
+ function getSassLoaderStandardSetup(_ref) {
10
+ var includePaths = _ref.includePaths;
11
+ return {
12
+ loader: 'sass-loader',
13
+ options: {
14
+ sassOptions: {
15
+ indentWidth: 4,
16
+ includePaths: includePaths
17
+ }
18
+ }
19
+ };
20
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getSVGRLoaderAdvancedSetup = getSVGRLoaderAdvancedSetup;
7
+ exports.getSVGRLoaderStandardSetup = getSVGRLoaderStandardSetup;
8
+
9
+ // https://github.com/gregberge/svgr/tree/main/packages/webpack
10
+ function getSVGRLoaderStandardSetup() {
11
+ return {
12
+ test: /\.svg$/,
13
+ use: ['@svgr/webpack']
14
+ };
15
+ }
16
+
17
+ function getSVGRLoaderAdvancedSetup() {
18
+ return {
19
+ test: /\.svg$/i,
20
+ issuer: /\.[jt]sx?$/,
21
+ resourceQuery: {
22
+ not: [/url/]
23
+ },
24
+ use: ['@svgr/webpack']
25
+ };
26
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getBannerPluginStandardSetup = getBannerPluginStandardSetup;
9
+
10
+ var _webpack = _interopRequireDefault(require("webpack"));
11
+
12
+ // https://webpack.js.org/plugins/banner-plugin/
13
+ function getBannerPluginStandardSetup(packageJSON) {
14
+ return new _webpack["default"].BannerPlugin({
15
+ banner: ['/*!', " * @project ".concat(packageJSON.name), ' * @name [filebase]', " * @author ".concat(packageJSON.author.name), " * @copyright Copyright (c) ".concat(new Date().getFullYear(), " ").concat(packageJSON.author.name), ' */', ''].join('\n'),
16
+ raw: true
17
+ });
18
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getCleanWebpackPluginAdvancedSetup = getCleanWebpackPluginAdvancedSetup;
7
+ exports.getCleanWebpackPluginStandardSetup = getCleanWebpackPluginStandardSetup;
8
+
9
+ var _cleanWebpackPlugin = require("clean-webpack-plugin");
10
+
11
+ // https://github.com/johnagan/clean-webpack-plugin
12
+ function getCleanWebpackPluginStandardSetup() {
13
+ return new _cleanWebpackPlugin.CleanWebpackPlugin();
14
+ }
15
+
16
+ function getCleanWebpackPluginAdvancedSetup(_ref) {
17
+ var dry = _ref.dry,
18
+ verbose = _ref.verbose,
19
+ cleanStaleWebpackAssets = _ref.cleanStaleWebpackAssets,
20
+ protectWebpackAssets = _ref.protectWebpackAssets,
21
+ cleanOnceBeforeBuildPatterns = _ref.cleanOnceBeforeBuildPatterns,
22
+ cleanAfterEveryBuildPatterns = _ref.cleanAfterEveryBuildPatterns,
23
+ dangerouslyAllowCleanPatternsOutsideProject = _ref.dangerouslyAllowCleanPatternsOutsideProject;
24
+ return new _cleanWebpackPlugin.CleanWebpackPlugin({
25
+ dry: dry,
26
+ verbose: verbose,
27
+ cleanStaleWebpackAssets: cleanStaleWebpackAssets,
28
+ protectWebpackAssets: protectWebpackAssets,
29
+ cleanOnceBeforeBuildPatterns: cleanOnceBeforeBuildPatterns,
30
+ cleanAfterEveryBuildPatterns: cleanAfterEveryBuildPatterns,
31
+ dangerouslyAllowCleanPatternsOutsideProject: dangerouslyAllowCleanPatternsOutsideProject
32
+ });
33
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getCopyWebpackPluginStandardSetup = getCopyWebpackPluginStandardSetup;
9
+
10
+ var _copyWebpackPlugin = _interopRequireDefault(require("copy-webpack-plugin"));
11
+
12
+ // https://github.com/webpack-contrib/copy-webpack-plugin
13
+ function getCopyWebpackPluginStandardSetup(_ref) {
14
+ var from = _ref.from,
15
+ to = _ref.to;
16
+ return new _copyWebpackPlugin["default"]({
17
+ patterns: [{
18
+ from: from,
19
+ to: to,
20
+ globOptions: {
21
+ ignore: ['*.DS_Store']
22
+ },
23
+ noErrorOnMissing: true
24
+ }]
25
+ });
26
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getCSSMinimizerWebpackPluginStandardSetup = getCSSMinimizerWebpackPluginStandardSetup;
9
+
10
+ var _cssMinimizerWebpackPlugin = _interopRequireDefault(require("css-minimizer-webpack-plugin"));
11
+
12
+ // https://github.com/webpack-contrib/css-minimizer-webpack-plugin
13
+ function getCSSMinimizerWebpackPluginStandardSetup() {
14
+ return new _cssMinimizerWebpackPlugin["default"]();
15
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getDotenvWebpackAdvancedSetup = getDotenvWebpackAdvancedSetup;
9
+ exports.getDotenvWebpackStandardSetup = getDotenvWebpackStandardSetup;
10
+
11
+ var _dotenvWebpack = _interopRequireDefault(require("dotenv-webpack"));
12
+
13
+ // https://github.com/mrsteele/dotenv-webpack
14
+ function getDotenvWebpackStandardSetup(_ref) {
15
+ var path = _ref.path;
16
+ return new _dotenvWebpack["default"]({
17
+ path: path
18
+ });
19
+ }
20
+
21
+ function getDotenvWebpackAdvancedSetup(_ref2) {
22
+ var path = _ref2.path,
23
+ safe = _ref2.safe,
24
+ allowEmptyValues = _ref2.allowEmptyValues,
25
+ systemvars = _ref2.systemvars,
26
+ silent = _ref2.silent,
27
+ defaults = _ref2.defaults,
28
+ prefix = _ref2.prefix;
29
+ return new _dotenvWebpack["default"]({
30
+ path: path,
31
+ safe: safe,
32
+ allowEmptyValues: allowEmptyValues,
33
+ systemvars: systemvars,
34
+ silent: silent,
35
+ defaults: defaults,
36
+ prefix: prefix
37
+ });
38
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getHotModuleReplacementPluginStandardSetup = getHotModuleReplacementPluginStandardSetup;
9
+
10
+ var _webpack = _interopRequireDefault(require("webpack"));
11
+
12
+ // https://webpack.js.org/plugins/hot-module-replacement-plugin/
13
+ function getHotModuleReplacementPluginStandardSetup() {
14
+ return new _webpack["default"].HotModuleReplacementPlugin();
15
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getHtmlWebpackPluginAdvancedSetup = getHtmlWebpackPluginAdvancedSetup;
9
+ exports.getHtmlWebpackPluginStandardSetup = getHtmlWebpackPluginStandardSetup;
10
+
11
+ var _htmlWebpackPlugin = _interopRequireDefault(require("html-webpack-plugin"));
12
+
13
+ var _constant = require("../constant");
14
+
15
+ // https://github.com/jantimon/html-webpack-plugin
16
+ function getHtmlWebpackPluginStandardSetup(_ref) {
17
+ var title = _ref.title,
18
+ micrositeWebpackFolderPath = _ref.micrositeWebpackFolderPath;
19
+ return new _htmlWebpackPlugin["default"]({
20
+ title: title,
21
+ meta: {
22
+ viewport: 'width=device-width, initial-scale=1, shrink-to-fit=no'
23
+ },
24
+ template: "".concat(micrositeWebpackFolderPath, "/").concat(_constant.indexHTMLName),
25
+ filename: _constant.indexHTMLName,
26
+ inject: 'body',
27
+ scriptLoading: 'defer'
28
+ });
29
+ }
30
+
31
+ function getHtmlWebpackPluginAdvancedSetup(_ref2) {
32
+ var title = _ref2.title,
33
+ meta = _ref2.meta,
34
+ template = _ref2.template,
35
+ filename = _ref2.filename,
36
+ inject = _ref2.inject,
37
+ scriptLoading = _ref2.scriptLoading;
38
+ return new _htmlWebpackPlugin["default"]({
39
+ title: title,
40
+ meta: meta,
41
+ template: template,
42
+ filename: filename,
43
+ inject: inject,
44
+ scriptLoading: scriptLoading
45
+ });
46
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.MiniCSSExtractPluginLoader = void 0;
9
+ exports.getMiniCSSExtractPluginAdvancedSetup = getMiniCSSExtractPluginAdvancedSetup;
10
+ exports.getMiniCSSExtractPluginStandardSetup = getMiniCSSExtractPluginStandardSetup;
11
+
12
+ var _miniCssExtractPlugin = _interopRequireDefault(require("mini-css-extract-plugin"));
13
+
14
+ // https://github.com/webpack-contrib/mini-css-extract-plugin
15
+ var MiniCSSExtractPluginLoader = _miniCssExtractPlugin["default"].loader;
16
+ exports.MiniCSSExtractPluginLoader = MiniCSSExtractPluginLoader;
17
+
18
+ function getMiniCSSExtractPluginStandardSetup() {
19
+ return new _miniCssExtractPlugin["default"]();
20
+ }
21
+
22
+ function getMiniCSSExtractPluginAdvancedSetup() {
23
+ return new _miniCssExtractPlugin["default"]({
24
+ filename: 'styles/[name].[contenthash].css',
25
+ chunkFilename: '[id].css'
26
+ });
27
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getModuleConcatenationPluginStandardSetup = getModuleConcatenationPluginStandardSetup;
9
+
10
+ var _webpack = _interopRequireDefault(require("webpack"));
11
+
12
+ // https://webpack.js.org/plugins/module-concatenation-plugin/
13
+ function getModuleConcatenationPluginStandardSetup() {
14
+ return new _webpack["default"].optimize.ModuleConcatenationPlugin();
15
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getWebpackBundleAnalyzerStandardSetup = getWebpackBundleAnalyzerStandardSetup;
7
+
8
+ var _webpackBundleAnalyzer = require("webpack-bundle-analyzer");
9
+
10
+ // https://github.com/webpack-contrib/webpack-bundle-analyzer
11
+ function getWebpackBundleAnalyzerStandardSetup() {
12
+ return new _webpackBundleAnalyzer.BundleAnalyzerPlugin({
13
+ analyzerMode: 'static',
14
+ openAnalyzer: false
15
+ });
16
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getWebpackManifestPluginStandardSetup = getWebpackManifestPluginStandardSetup;
7
+
8
+ var _webpackManifestPlugin = require("webpack-manifest-plugin");
9
+
10
+ var _constant = require("../constant");
11
+
12
+ // https://github.com/shellscape/webpack-manifest-plugin
13
+
14
+ /* eslint-disable no-param-reassign */
15
+ function getWebpackManifestPluginStandardSetup() {
16
+ return new _webpackManifestPlugin.WebpackManifestPlugin({
17
+ fileName: _constant.manifestFileName,
18
+ basePath: '',
19
+ map: function map(file) {
20
+ file.name = file.name.replace(/(\.[a-f0-9]{32})(\..*)$/, '$2');
21
+ return file;
22
+ }
23
+ });
24
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getDevServerStandardSetup = getDevServerStandardSetup;
7
+
8
+ // https://webpack.js.org/configuration/dev-server/
9
+ function getDevServerStandardSetup() {
10
+ return {
11
+ historyApiFallback: true,
12
+ open: true,
13
+ compress: true,
14
+ hot: true,
15
+ port: 8080,
16
+ host: 'localhost',
17
+ https: false,
18
+ headers: {
19
+ 'Access-Control-Allow-Origin': '*'
20
+ }
21
+ };
22
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getWebpackCommonSetup = getWebpackCommonSetup;
7
+
8
+ var _babelLoader = require("../loader/babelLoader");
9
+
10
+ var _fontLoader = require("../loader/fontLoader");
11
+
12
+ var _imageLoader = require("../loader/imageLoader");
13
+
14
+ var _svgrLoader = require("../loader/svgrLoader");
15
+
16
+ var _markdownLoader = require("../loader/markdownLoader");
17
+
18
+ var _cleanWebpackPlugin = require("../plugin/cleanWebpackPlugin");
19
+
20
+ var _copyWebpackPlugin = require("../plugin/copyWebpackPlugin");
21
+
22
+ var _htmlWebpackPlugin = require("../plugin/htmlWebpackPlugin");
23
+
24
+ var _webpackManifestPlugin = require("../plugin/webpackManifestPlugin");
25
+
26
+ var _constant = require("../constant");
27
+
28
+ function getWebpackCommonSetup(_ref) {
29
+ var micrositeFolderPaths = _ref.micrositeFolderPaths,
30
+ packageJSON = _ref.packageJSON;
31
+ return {
32
+ entry: ["".concat(micrositeFolderPaths.src, "/index.js")],
33
+ plugins: [(0, _cleanWebpackPlugin.getCleanWebpackPluginStandardSetup)(), (0, _copyWebpackPlugin.getCopyWebpackPluginStandardSetup)({
34
+ from: micrositeFolderPaths["public"],
35
+ to: 'assets'
36
+ }), (0, _htmlWebpackPlugin.getHtmlWebpackPluginStandardSetup)({
37
+ title: packageJSON.description,
38
+ micrositeWebpackFolderPath: micrositeFolderPaths.webpack
39
+ }), (0, _webpackManifestPlugin.getWebpackManifestPluginStandardSetup)()],
40
+ module: {
41
+ rules: [(0, _babelLoader.getBabelLoaderAdvancedSetup)(), (0, _fontLoader.getFontLoaderStandardSetup)(), (0, _imageLoader.getImageLoaderStandardSetup)(), (0, _markdownLoader.getMarkdownLoaderStandardSetup)(), (0, _svgrLoader.getSVGRLoaderAdvancedSetup)()]
42
+ },
43
+ resolve: {
44
+ modules: [micrositeFolderPaths.src, micrositeFolderPaths.nodeModules],
45
+ extensions: _constant.extensions
46
+ }
47
+ };
48
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getWebpackDevelopmentSetup = getWebpackDevelopmentSetup;
7
+
8
+ var _cssLoader = require("../loader/cssLoader");
9
+
10
+ var _postCSSLoader = require("../loader/postCSSLoader");
11
+
12
+ var _sassLoader = require("../loader/sassLoader");
13
+
14
+ var _dotenvWebpack = require("../plugin/dotenvWebpack");
15
+
16
+ var _hotModuleReplacementPlugin = require("../plugin/hotModuleReplacementPlugin");
17
+
18
+ var _devServer = require("../server/devServer");
19
+
20
+ function getWebpackDevelopmentSetup(_ref) {
21
+ var environmentVariablesFilePath = _ref.environmentVariablesFilePath,
22
+ micrositeUrlPath = _ref.micrositeUrlPath,
23
+ micrositeFolderPaths = _ref.micrositeFolderPaths,
24
+ includedSourceFilePaths = _ref.includedSourceFilePaths;
25
+ return {
26
+ mode: 'development',
27
+ devtool: 'inline-source-map',
28
+ devServer: (0, _devServer.getDevServerStandardSetup)(),
29
+ output: {
30
+ path: micrositeFolderPaths.build,
31
+ publicPath: micrositeUrlPath,
32
+ filename: '[name].bundle.js'
33
+ },
34
+ optimization: {
35
+ concatenateModules: true
36
+ },
37
+ plugins: [(0, _dotenvWebpack.getDotenvWebpackStandardSetup)({
38
+ path: environmentVariablesFilePath
39
+ }), (0, _hotModuleReplacementPlugin.getHotModuleReplacementPluginStandardSetup)()],
40
+ module: {
41
+ rules: [{
42
+ test: /\.s[ac]ss$/i,
43
+ include: includedSourceFilePaths,
44
+ use: ['style-loader', (0, _cssLoader.getCSSLoaderStandardSetup)({
45
+ sourceMap: false,
46
+ modules: {
47
+ localIdentName: '[name]_[local]_[hash:base64:5]'
48
+ }
49
+ }), (0, _postCSSLoader.getPostCSSLoaderStandardSetup)(), (0, _sassLoader.getSassLoaderStandardSetup)({
50
+ includedSourceFilePaths: includedSourceFilePaths
51
+ })]
52
+ }]
53
+ }
54
+ };
55
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getWebpackProductionSetup = getWebpackProductionSetup;
7
+
8
+ var _cssLoader = require("../loader/cssLoader");
9
+
10
+ var _bannerPlugin = require("../plugin/bannerPlugin");
11
+
12
+ var _cssMinimizerWebpackPlugin = require("../plugin/cssMinimizerWebpackPlugin");
13
+
14
+ var _dotenvWebpack = require("../plugin/dotenvWebpack");
15
+
16
+ var _miniCSSExtractPlugin = require("../plugin/miniCSSExtractPlugin");
17
+
18
+ var _webpackBundleAnalyzer = require("../plugin/webpackBundleAnalyzer");
19
+
20
+ function getWebpackProductionSetup(_ref) {
21
+ var environmentVariablesFilePath = _ref.environmentVariablesFilePath,
22
+ micrositeUrlPath = _ref.micrositeUrlPath,
23
+ micrositeFolderPaths = _ref.micrositeFolderPaths,
24
+ packageJSON = _ref.packageJSON;
25
+ return {
26
+ mode: 'production',
27
+ devtool: false,
28
+ output: {
29
+ path: micrositeFolderPaths.build,
30
+ publicPath: micrositeUrlPath,
31
+ filename: 'js/[name].[contenthash].bundle.js'
32
+ },
33
+ performance: {
34
+ hints: false,
35
+ maxEntrypointSize: 512000,
36
+ maxAssetSize: 512000
37
+ },
38
+ optimization: {
39
+ minimize: true,
40
+ minimizer: [(0, _cssMinimizerWebpackPlugin.getCSSMinimizerWebpackPluginStandardSetup)(), '...'],
41
+ runtimeChunk: {
42
+ name: 'runtime'
43
+ }
44
+ },
45
+ plugins: [(0, _bannerPlugin.getBannerPluginStandardSetup)(packageJSON), (0, _dotenvWebpack.getDotenvWebpackStandardSetup)({
46
+ path: environmentVariablesFilePath
47
+ }), (0, _miniCSSExtractPlugin.getMiniCSSExtractPluginAdvancedSetup)(), (0, _webpackBundleAnalyzer.getWebpackBundleAnalyzerStandardSetup)()],
48
+ module: {
49
+ rules: [{
50
+ test: /\.(sass|scss|css)$/,
51
+ use: [_miniCSSExtractPlugin.MiniCSSExtractPluginLoader, (0, _cssLoader.getCSSLoaderStandardSetup)({
52
+ sourceMap: false,
53
+ modules: {
54
+ localIdentName: '[name]_[local]_[hash:base64:5]'
55
+ }
56
+ }), 'postcss-loader', 'sass-loader']
57
+ }]
58
+ }
59
+ };
60
+ }