@zohodesk/react-cli 0.0.1-beta.174 → 0.0.1-beta.176
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/.eslintignore +7 -7
- package/.eslintrc.js +180 -180
- package/.prettierrc +6 -6
- package/README.md +1018 -1003
- package/bin/cli.js +482 -482
- package/cert/Tsicsezwild-22-23.crt +37 -37
- package/cert/Tsicsezwild-22-23.key +27 -27
- package/docs/CustomChunks.md +26 -26
- package/docs/DevStart.md +18 -18
- package/docs/HoverActive.md +12 -12
- package/docs/InstallNode.md +28 -28
- package/docs/SelectorWeight.md +6 -0
- package/docs/TODOS.md +10 -10
- package/docs/ValueReplacer.md +60 -60
- package/docs/VariableConversion.md +710 -678
- package/docs/warnings_while_install.txt +35 -35
- package/files/eslintrc.js +62 -62
- package/files/prettierrc.js +3 -3
- package/lib/configs/webpack.css.umd.config.js +4 -4
- package/lib/configs/webpack.dev.config.js +23 -2
- package/lib/configs/webpack.docs.config.js +13 -1
- package/lib/configs/webpack.impact.config.js +13 -1
- package/lib/configs/webpack.prod.config.js +23 -2
- package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
- package/lib/loaderUtils/getCSSLoaders.js +24 -21
- package/lib/loaderUtils/windowsModification.js +11 -0
- package/lib/loaders/workerLoader.js +9 -9
- package/lib/pluginUtils/configHtmlWebpackPlugins.js +59 -0
- package/lib/pluginUtils/getDevPlugins.js +54 -52
- package/lib/pluginUtils/getProdPlugins.js +66 -63
- package/lib/plugins/EFCPlugin.md +6 -6
- package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
- package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
- package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
- package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
- package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
- package/lib/plugins/I18nSplitPlugin/README.md +25 -25
- package/lib/plugins/I18nSplitPlugin/index.js +57 -57
- package/lib/plugins/ResourceHintsPlugin.js +17 -17
- package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
- package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
- package/lib/plugins/SelectorPlugin.js +97 -0
- package/lib/plugins/ServiceWorkerPlugin.js +9 -9
- package/lib/plugins/TPHashMappingPlugin.js +4 -4
- package/lib/plugins/VariableConversionCollector.js +252 -0
- package/lib/plugins/composeCommonPlugin.js +30 -0
- package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
- package/lib/postcss-plugins/__test__/test1Input.css +38 -38
- package/lib/postcss-plugins/__test__/test1Output.css +38 -38
- package/lib/postcss-plugins/hoverActivePlugin.js +13 -9
- package/lib/postcss-plugins/variableModificationPlugin/ErrorHandler.js +35 -14
- package/lib/postcss-plugins/variableModificationPlugin/index.js +202 -143
- package/lib/schemas/index.js +20 -8
- package/lib/sh/pre-commit.sh +34 -34
- package/lib/sh/reportPublish.sh +45 -45
- package/lib/utils/buildstats.html +148 -148
- package/lib/utils/resultSchema.json +73 -73
- package/npm8.md +9 -9
- package/package.json +146 -146
- package/postpublish.js +6 -6
- package/templates/app/.eslintrc.js +140 -140
- package/templates/app/README.md +12 -12
- package/templates/app/app/index.html +24 -24
- package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
- package/templates/app/app/properties/i18nkeys.json +3 -3
- package/templates/app/docs/all.html +69 -69
- package/templates/app/mockapi/index.js +18 -18
- package/templates/app/package.json +37 -37
- package/templates/app/src/actions/SampleActions/index.js +37 -37
- package/templates/app/src/actions/index.js +65 -65
- package/templates/app/src/appUrls.js +19 -19
- package/templates/app/src/components/Alert/Alert.js +134 -134
- package/templates/app/src/components/Alert/Alert.module.css +79 -79
- package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
- package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
- package/templates/app/src/components/Sample/Sample.module.css +11 -11
- package/templates/app/src/components/Sample/SampleList.js +61 -61
- package/templates/app/src/components/Slider/Slider.css +41 -41
- package/templates/app/src/components/Slider/Slider.js +55 -55
- package/templates/app/src/containers/AlertContainer/index.js +15 -15
- package/templates/app/src/containers/AppContainer/index.js +96 -96
- package/templates/app/src/containers/AppContainer/index.module.css +27 -27
- package/templates/app/src/containers/CustomMatch/index.js +65 -65
- package/templates/app/src/containers/DevTools/index.js +10 -10
- package/templates/app/src/containers/Header/index.js +67 -67
- package/templates/app/src/containers/Header/index.module.css +43 -43
- package/templates/app/src/containers/Redirect/index.js +63 -63
- package/templates/app/src/containers/Redirector/index.js +47 -47
- package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
- package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
- package/templates/app/src/historyChange.js +5 -5
- package/templates/app/src/index.html +10 -10
- package/templates/app/src/index.js +24 -24
- package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
- package/templates/app/src/reducers/alertData.js +11 -11
- package/templates/app/src/reducers/index.js +6 -6
- package/templates/app/src/reducers/samples.js +19 -19
- package/templates/app/src/store/configureStore.dev.js +51 -51
- package/templates/app/src/store/configureStore.js +5 -5
- package/templates/app/src/store/configureStore.prod.js +26 -26
- package/templates/app/src/util/Common.js +5 -5
- package/templates/app/src/util/RequestAPI.js +132 -132
- package/templates/docs/all.html +249 -249
- package/templates/docs/component.html +178 -178
- package/templates/docs/components.html +221 -221
- package/templates/docs/css/b.min.css +6 -6
- package/templates/docs/css/component.css +42 -42
- package/templates/docs/css/componentTest.css +6 -6
- package/templates/docs/css/hopscotch.css +585 -585
- package/templates/docs/css/style.css +1022 -1022
- package/templates/docs/impactReportTemplate.html +154 -154
- package/templates/docs/index.html +1501 -1501
- package/templates/docs/js/active-line.js +72 -72
- package/templates/docs/js/b.min.js +7 -7
- package/templates/docs/js/codemirror.js +9680 -9680
- package/templates/docs/js/designTokens.js +334 -334
- package/templates/docs/js/j.min.js +4 -4
- package/templates/docs/js/javascript.js +874 -874
- package/templates/docs/js/matchbrackets.js +145 -145
@@ -1,35 +1,35 @@
|
|
1
|
-
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
|
2
|
-
npm WARN deprecated eslint-loader@4.0.2: This loader has been deprecated. Please use eslint-webpack-plugin
|
3
|
-
npm WARN deprecated gitlab@14.2.2: The gitlab package has found a new home in the @gitbeaker organization. For the latest gitlab node library, check out @gitbeaker/node. A full list of the features can be found here: https://github.com/jdalrymple/gitbeaker#readme
|
4
|
-
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
|
5
|
-
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
|
6
|
-
npm WARN deprecated webdriverio@4.14.4: outdated version, please use @next
|
7
|
-
npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
|
8
|
-
npm WARN deprecated cross-spawn-async@1.0.1: cross-spawn no longer requires a build toolchain, use it instead
|
9
|
-
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
|
10
|
-
npm WARN deprecated core-js@2.6.12: core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.
|
11
|
-
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
|
12
|
-
npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
|
13
|
-
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
|
14
|
-
npm WARN deprecated sane@4.1.0: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added
|
15
|
-
npm WARN deprecated request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
|
16
|
-
npm WARN deprecated flatten@1.0.3: flatten is deprecated in favor of utility frameworks such as lodash.
|
17
|
-
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.2.7 (node_modules/chokidar/node_modules/fsevents):
|
18
|
-
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
19
|
-
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^2.1.2 (node_modules/jest-haste-map/node_modules/fsevents):
|
20
|
-
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
21
|
-
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.2 (node_modules/nodemon/node_modules/chokidar/node_modules/fsevents):
|
22
|
-
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
23
|
-
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.2 (node_modules/watchpack/node_modules/chokidar/node_modules/fsevents):
|
24
|
-
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
25
|
-
npm WARN check2@1.0.0 No description
|
26
|
-
npm WARN check2@1.0.0 No repository field.
|
27
|
-
|
28
|
-
+ @zohodesk/react-cli@0.0.1-beta.165
|
29
|
-
updated 1 package and audited 1899 packages in 51.509s
|
30
|
-
|
31
|
-
21 packages are looking for funding
|
32
|
-
run `npm fund` for details
|
33
|
-
|
34
|
-
found 42 vulnerabilities (2 low, 20 moderate, 8 high, 12 critical)
|
35
|
-
run `npm audit fix` to fix them, or `npm audit` for details
|
1
|
+
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
|
2
|
+
npm WARN deprecated eslint-loader@4.0.2: This loader has been deprecated. Please use eslint-webpack-plugin
|
3
|
+
npm WARN deprecated gitlab@14.2.2: The gitlab package has found a new home in the @gitbeaker organization. For the latest gitlab node library, check out @gitbeaker/node. A full list of the features can be found here: https://github.com/jdalrymple/gitbeaker#readme
|
4
|
+
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
|
5
|
+
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
|
6
|
+
npm WARN deprecated webdriverio@4.14.4: outdated version, please use @next
|
7
|
+
npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
|
8
|
+
npm WARN deprecated cross-spawn-async@1.0.1: cross-spawn no longer requires a build toolchain, use it instead
|
9
|
+
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
|
10
|
+
npm WARN deprecated core-js@2.6.12: core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.
|
11
|
+
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
|
12
|
+
npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
|
13
|
+
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
|
14
|
+
npm WARN deprecated sane@4.1.0: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added
|
15
|
+
npm WARN deprecated request-promise-native@1.0.9: request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
|
16
|
+
npm WARN deprecated flatten@1.0.3: flatten is deprecated in favor of utility frameworks such as lodash.
|
17
|
+
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.2.7 (node_modules/chokidar/node_modules/fsevents):
|
18
|
+
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
19
|
+
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^2.1.2 (node_modules/jest-haste-map/node_modules/fsevents):
|
20
|
+
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
21
|
+
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.2 (node_modules/nodemon/node_modules/chokidar/node_modules/fsevents):
|
22
|
+
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
23
|
+
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.2 (node_modules/watchpack/node_modules/chokidar/node_modules/fsevents):
|
24
|
+
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
|
25
|
+
npm WARN check2@1.0.0 No description
|
26
|
+
npm WARN check2@1.0.0 No repository field.
|
27
|
+
|
28
|
+
+ @zohodesk/react-cli@0.0.1-beta.165
|
29
|
+
updated 1 package and audited 1899 packages in 51.509s
|
30
|
+
|
31
|
+
21 packages are looking for funding
|
32
|
+
run `npm fund` for details
|
33
|
+
|
34
|
+
found 42 vulnerabilities (2 low, 20 moderate, 8 high, 12 critical)
|
35
|
+
run `npm audit fix` to fix them, or `npm audit` for details
|
package/files/eslintrc.js
CHANGED
@@ -1,62 +1,62 @@
|
|
1
|
-
const [off, , error] = ['off', 'warn', 'error'];
|
2
|
-
|
3
|
-
module.exports = {
|
4
|
-
env: {
|
5
|
-
browser: true,
|
6
|
-
es2021: true,
|
7
|
-
},
|
8
|
-
extends: [
|
9
|
-
'plugin:react/recommended',
|
10
|
-
'plugin:react-hooks/recommended',
|
11
|
-
'airbnb',
|
12
|
-
'prettier',
|
13
|
-
],
|
14
|
-
parserOptions: {
|
15
|
-
ecmaFeatures: {
|
16
|
-
jsx: true,
|
17
|
-
},
|
18
|
-
ecmaVersion: 12,
|
19
|
-
sourceType: 'module',
|
20
|
-
},
|
21
|
-
plugins: [
|
22
|
-
'react',
|
23
|
-
'css-modules',
|
24
|
-
'@zohodesk/zsecurity',
|
25
|
-
'@zohodesk/react-performance',
|
26
|
-
],
|
27
|
-
rules: {
|
28
|
-
// Internal Rules
|
29
|
-
'@zohodesk/react-performance/no-ref-mapstatetoprops': error,
|
30
|
-
'@zohodesk/zsecurity/no-unsecure-html': error,
|
31
|
-
'@zohodesk/zsecurity/no-protocol-check': error,
|
32
|
-
|
33
|
-
// CSS Module Rules
|
34
|
-
'css-modules/no-unused-class': [error, { camelCase: true }],
|
35
|
-
'css-modules/no-undef-class': [error, { camelCase: 'only' }],
|
36
|
-
|
37
|
-
'import/no-unresolved': off,
|
38
|
-
'import/no-extraneous-dependencies': off,
|
39
|
-
|
40
|
-
// As redux used
|
41
|
-
'no-shadow': off, // As we import the action files and use the same name in getting from props built from connect.
|
42
|
-
'react/jsx-filename-extension': off,
|
43
|
-
|
44
|
-
// As we don't follow
|
45
|
-
'react/require-default-props': off,
|
46
|
-
'react/jsx-props-no-spreading': off,
|
47
|
-
|
48
|
-
// As we didn't update
|
49
|
-
'react/jsx-fragments': off,
|
50
|
-
|
51
|
-
// Not needed
|
52
|
-
'no-plusplus': off,
|
53
|
-
'no-unused-expressions': [
|
54
|
-
error,
|
55
|
-
{
|
56
|
-
allowShortCircuit: true,
|
57
|
-
allowTernary: true,
|
58
|
-
},
|
59
|
-
],
|
60
|
-
'react/jsx-no-target-blank': error,
|
61
|
-
},
|
62
|
-
};
|
1
|
+
const [off, , error] = ['off', 'warn', 'error'];
|
2
|
+
|
3
|
+
module.exports = {
|
4
|
+
env: {
|
5
|
+
browser: true,
|
6
|
+
es2021: true,
|
7
|
+
},
|
8
|
+
extends: [
|
9
|
+
'plugin:react/recommended',
|
10
|
+
'plugin:react-hooks/recommended',
|
11
|
+
'airbnb',
|
12
|
+
'prettier',
|
13
|
+
],
|
14
|
+
parserOptions: {
|
15
|
+
ecmaFeatures: {
|
16
|
+
jsx: true,
|
17
|
+
},
|
18
|
+
ecmaVersion: 12,
|
19
|
+
sourceType: 'module',
|
20
|
+
},
|
21
|
+
plugins: [
|
22
|
+
'react',
|
23
|
+
'css-modules',
|
24
|
+
'@zohodesk/zsecurity',
|
25
|
+
'@zohodesk/react-performance',
|
26
|
+
],
|
27
|
+
rules: {
|
28
|
+
// Internal Rules
|
29
|
+
'@zohodesk/react-performance/no-ref-mapstatetoprops': error,
|
30
|
+
'@zohodesk/zsecurity/no-unsecure-html': error,
|
31
|
+
'@zohodesk/zsecurity/no-protocol-check': error,
|
32
|
+
|
33
|
+
// CSS Module Rules
|
34
|
+
'css-modules/no-unused-class': [error, { camelCase: true }],
|
35
|
+
'css-modules/no-undef-class': [error, { camelCase: 'only' }],
|
36
|
+
|
37
|
+
'import/no-unresolved': off,
|
38
|
+
'import/no-extraneous-dependencies': off,
|
39
|
+
|
40
|
+
// As redux used
|
41
|
+
'no-shadow': off, // As we import the action files and use the same name in getting from props built from connect.
|
42
|
+
'react/jsx-filename-extension': off,
|
43
|
+
|
44
|
+
// As we don't follow
|
45
|
+
'react/require-default-props': off,
|
46
|
+
'react/jsx-props-no-spreading': off,
|
47
|
+
|
48
|
+
// As we didn't update
|
49
|
+
'react/jsx-fragments': off,
|
50
|
+
|
51
|
+
// Not needed
|
52
|
+
'no-plusplus': off,
|
53
|
+
'no-unused-expressions': [
|
54
|
+
error,
|
55
|
+
{
|
56
|
+
allowShortCircuit: true,
|
57
|
+
allowTernary: true,
|
58
|
+
},
|
59
|
+
],
|
60
|
+
'react/jsx-no-target-blank': error,
|
61
|
+
},
|
62
|
+
};
|
package/files/prettierrc.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
module.exports = {
|
2
|
-
trailingComma: 'none',
|
3
|
-
};
|
1
|
+
module.exports = {
|
2
|
+
trailingComma: 'none',
|
3
|
+
};
|
@@ -67,10 +67,10 @@ module.exports = {
|
|
67
67
|
}],
|
68
68
|
include: _path.default.join(appPath, 'src')
|
69
69
|
}
|
70
|
-
/*,
|
71
|
-
{
|
72
|
-
test: /\.css$/,
|
73
|
-
use: [MiniCssExtractPlugin.loader, 'css-loader']
|
70
|
+
/*,
|
71
|
+
{
|
72
|
+
test: /\.css$/,
|
73
|
+
use: [MiniCssExtractPlugin.loader, 'css-loader']
|
74
74
|
}*/
|
75
75
|
, {
|
76
76
|
test: /(\.module)?\.css$/,
|
@@ -28,6 +28,7 @@ const {
|
|
28
28
|
exclude,
|
29
29
|
mediaQueryHoverActiveString,
|
30
30
|
cssVariableReplacementConfig,
|
31
|
+
selectorWeightConfig,
|
31
32
|
cssUniqueness,
|
32
33
|
seperateCssModules,
|
33
34
|
changeRuntimeChunkChar,
|
@@ -100,10 +101,30 @@ module.exports = {
|
|
100
101
|
}, seperateCssModules ? {
|
101
102
|
test: /\.css$/,
|
102
103
|
exclude: /\.module\.css$/,
|
103
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
104
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
105
|
+
plugins,
|
106
|
+
exclude,
|
107
|
+
mediaQueryHoverActiveString,
|
108
|
+
cssVariableReplacementConfig,
|
109
|
+
selectorWeightConfig,
|
110
|
+
classNameBlob: '[local]',
|
111
|
+
cssUniqueness: false,
|
112
|
+
selectorReplace: null
|
113
|
+
})
|
104
114
|
} : null, {
|
105
115
|
test: seperateCssModules ? /\.module\.css$/ : /(\.module)?\.css$/,
|
106
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
116
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
117
|
+
plugins,
|
118
|
+
exclude,
|
119
|
+
mediaQueryHoverActiveString,
|
120
|
+
cssVariableReplacementConfig,
|
121
|
+
selectorWeightConfig,
|
122
|
+
classNameBlob: null,
|
123
|
+
cssUniqueness,
|
124
|
+
selectorReplace,
|
125
|
+
cssHashSelectors,
|
126
|
+
classNamePrefix
|
127
|
+
})
|
107
128
|
}, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), {
|
108
129
|
test: /\.tmpl$/,
|
109
130
|
use: [{
|
@@ -26,6 +26,7 @@ const {
|
|
26
26
|
exclude,
|
27
27
|
mediaQueryHoverActiveString,
|
28
28
|
cssVariableReplacementConfig,
|
29
|
+
selectorWeightConfig,
|
29
30
|
cssHashSelectors,
|
30
31
|
classNamePrefix
|
31
32
|
},
|
@@ -75,7 +76,18 @@ module.exports = isSSTest => ({
|
|
75
76
|
exclude: /node_modules/
|
76
77
|
}, {
|
77
78
|
test: /(\.module)?\.css$/,
|
78
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
79
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
80
|
+
plugins,
|
81
|
+
exclude,
|
82
|
+
mediaQueryHoverActiveString,
|
83
|
+
cssVariableReplacementConfig,
|
84
|
+
selectorWeightConfig,
|
85
|
+
classNameBlob: false,
|
86
|
+
cssUniqueness,
|
87
|
+
selectorReplace: null,
|
88
|
+
cssHashSelectors,
|
89
|
+
classNamePrefix
|
90
|
+
})
|
79
91
|
}, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), {
|
80
92
|
test: /\.html$/,
|
81
93
|
use: {
|
@@ -21,6 +21,7 @@ const {
|
|
21
21
|
exclude,
|
22
22
|
mediaQueryHoverActiveString,
|
23
23
|
cssVariableReplacementConfig,
|
24
|
+
selectorWeightConfig,
|
24
25
|
cssHashSelectors,
|
25
26
|
enableChunkHash,
|
26
27
|
classNamePrefix
|
@@ -70,7 +71,18 @@ module.exports = {
|
|
70
71
|
exclude: /node_modules/
|
71
72
|
}, {
|
72
73
|
test: /(\.module)?\.css$/,
|
73
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
74
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
75
|
+
plugins,
|
76
|
+
exclude,
|
77
|
+
mediaQueryHoverActiveString,
|
78
|
+
cssVariableReplacementConfig,
|
79
|
+
selectorWeightConfig,
|
80
|
+
classNameBlob: false,
|
81
|
+
cssUniqueness,
|
82
|
+
selectorReplace: null,
|
83
|
+
cssHashSelectors,
|
84
|
+
classNamePrefix
|
85
|
+
})
|
74
86
|
}, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), {
|
75
87
|
test: /\.html$/,
|
76
88
|
use: {
|
@@ -33,6 +33,7 @@ let {
|
|
33
33
|
exclude,
|
34
34
|
mediaQueryHoverActiveString,
|
35
35
|
cssVariableReplacementConfig,
|
36
|
+
selectorWeightConfig,
|
36
37
|
cssUniqueness,
|
37
38
|
server: {
|
38
39
|
mode
|
@@ -148,10 +149,30 @@ module.exports = {
|
|
148
149
|
}, seperateCssModules ? {
|
149
150
|
test: /\.css$/,
|
150
151
|
exclude: /\.module\.css$/,
|
151
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
152
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
153
|
+
plugins,
|
154
|
+
exclude,
|
155
|
+
cssVariableReplacementConfig,
|
156
|
+
selectorWeightConfig,
|
157
|
+
mediaQueryHoverActiveString,
|
158
|
+
classNameBlob: '[local]',
|
159
|
+
cssUniqueness: false,
|
160
|
+
selectorReplace: null
|
161
|
+
})
|
152
162
|
} : null, {
|
153
163
|
test: seperateCssModules ? /\.module\.css$/ : /\.css$/,
|
154
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
164
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
165
|
+
plugins,
|
166
|
+
exclude,
|
167
|
+
mediaQueryHoverActiveString,
|
168
|
+
cssVariableReplacementConfig,
|
169
|
+
selectorWeightConfig,
|
170
|
+
classNameBlob: false,
|
171
|
+
cssUniqueness,
|
172
|
+
selectorReplace,
|
173
|
+
cssHashSelectors,
|
174
|
+
classNamePrefix
|
175
|
+
})
|
155
176
|
}, {
|
156
177
|
test: /\.jpe?g$|\.gif$|\.png$/,
|
157
178
|
use: [{
|
@@ -79,39 +79,39 @@ function createNameTemplate(enableChunkHash) {
|
|
79
79
|
const ext = `${enableChunkHash ? '.[hash:20]' : ''}.[ext]`;
|
80
80
|
return `[name]${ext}`;
|
81
81
|
}
|
82
|
-
/*
|
83
|
-
export function createImageAndFontsAndSVGLoaders(enableChunkHash) {
|
84
|
-
const nameTemplate = createNameTemplate(enableChunkHash);
|
85
|
-
return [
|
86
|
-
configImageLoader(nameTemplate),
|
87
|
-
configFontLoader(nameTemplate),
|
88
|
-
configSVGLoader(nameTemplate),
|
89
|
-
configAudioLoader(nameTemplate)
|
90
|
-
];
|
91
|
-
}
|
82
|
+
/*
|
83
|
+
export function createImageAndFontsAndSVGLoaders(enableChunkHash) {
|
84
|
+
const nameTemplate = createNameTemplate(enableChunkHash);
|
85
|
+
return [
|
86
|
+
configImageLoader(nameTemplate),
|
87
|
+
configFontLoader(nameTemplate),
|
88
|
+
configSVGLoader(nameTemplate),
|
89
|
+
configAudioLoader(nameTemplate)
|
90
|
+
];
|
91
|
+
}
|
92
92
|
*/
|
93
93
|
|
94
|
-
/*
|
95
|
-
export function createLoaderOptionObject(
|
96
|
-
loaderName,
|
97
|
-
nameTemplate,
|
98
|
-
fallback,
|
99
|
-
limit = 1000
|
100
|
-
) {
|
101
|
-
return {
|
102
|
-
loader: loaderName,
|
103
|
-
options: {
|
104
|
-
limit,
|
105
|
-
name: nameTemplate,
|
106
|
-
fallback
|
107
|
-
}
|
108
|
-
};
|
109
|
-
}
|
110
|
-
|
111
|
-
function configLoaderObject(filter, loaderAndOptions) {
|
112
|
-
return {
|
113
|
-
test: filter,
|
114
|
-
use: loaderAndOptions
|
115
|
-
};
|
116
|
-
}
|
94
|
+
/*
|
95
|
+
export function createLoaderOptionObject(
|
96
|
+
loaderName,
|
97
|
+
nameTemplate,
|
98
|
+
fallback,
|
99
|
+
limit = 1000
|
100
|
+
) {
|
101
|
+
return {
|
102
|
+
loader: loaderName,
|
103
|
+
options: {
|
104
|
+
limit,
|
105
|
+
name: nameTemplate,
|
106
|
+
fallback
|
107
|
+
}
|
108
|
+
};
|
109
|
+
}
|
110
|
+
|
111
|
+
function configLoaderObject(filter, loaderAndOptions) {
|
112
|
+
return {
|
113
|
+
test: filter,
|
114
|
+
use: loaderAndOptions
|
115
|
+
};
|
116
|
+
}
|
117
117
|
*/
|
@@ -11,16 +11,13 @@ var _cssClassNameGenerate = _interopRequireDefault(require("../utils/cssClassNam
|
|
11
11
|
|
12
12
|
var _utils = require("../utils");
|
13
13
|
|
14
|
+
var _windowsModification = require("./windowsModification");
|
15
|
+
|
14
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
17
|
|
16
18
|
const fs = require('fs');
|
17
19
|
|
18
20
|
const options = (0, _utils.getOptions)();
|
19
|
-
const isWin = process.platform === 'win32';
|
20
|
-
|
21
|
-
function windowsModification(array) {
|
22
|
-
return isWin ? array.map(r => r.replace(/\//g, '\\')) : array;
|
23
|
-
}
|
24
21
|
|
25
22
|
function excludeEmptyCheckPlugin({
|
26
23
|
enable,
|
@@ -33,11 +30,22 @@ function excludeEmptyCheckPlugin({
|
|
33
30
|
})] : [];
|
34
31
|
}
|
35
32
|
|
36
|
-
const getCSSLoaders =
|
37
|
-
|
33
|
+
const getCSSLoaders = optionsObj => {
|
34
|
+
const {
|
35
|
+
plugins,
|
36
|
+
exclude,
|
37
|
+
mediaQueryHoverActiveString,
|
38
|
+
cssVariableReplacementConfig,
|
39
|
+
classNameBlob,
|
40
|
+
cssUniqueness,
|
41
|
+
selectorReplace,
|
42
|
+
cssHashSelectors,
|
43
|
+
classNamePrefix
|
44
|
+
} = optionsObj; // console.log('plugins:')
|
38
45
|
// console.log(plugins)
|
39
46
|
// console.log('exclude:')
|
40
47
|
// console.log(exclude)
|
48
|
+
|
41
49
|
const {
|
42
50
|
devCssFileBountry
|
43
51
|
} = options.app;
|
@@ -47,11 +55,10 @@ const getCSSLoaders = (plugins, exclude, mediaQueryHoverActiveString, cssVariabl
|
|
47
55
|
const {
|
48
56
|
cssSelectorZipPath
|
49
57
|
} = options.impactService;
|
50
|
-
|
51
|
-
const
|
52
|
-
const
|
53
|
-
const
|
54
|
-
const cssVariableReplacementExcludeLocal = windowsModification(exclude.cssVariableReplacement);
|
58
|
+
const rtlExcludeLocal = (0, _windowsModification.windowsModification)(exclude.rtl);
|
59
|
+
const hoverActiveExcludeLocal = (0, _windowsModification.windowsModification)(exclude.hoverActive);
|
60
|
+
const combinerMediaQueryExcludeLocal = (0, _windowsModification.windowsModification)(exclude.combinerMediaQuery);
|
61
|
+
const cssVariableReplacementExcludeLocal = (0, _windowsModification.windowsModification)(exclude.cssVariableReplacement);
|
55
62
|
const cssLoaderOptions = {
|
56
63
|
// importLoaders: hasRTL||hoverActive ? 1 : 0,
|
57
64
|
importLoaders: 1,
|
@@ -63,14 +70,10 @@ const getCSSLoaders = (plugins, exclude, mediaQueryHoverActiveString, cssVariabl
|
|
63
70
|
cssLoaderOptions.modules.localIdentName = classNameBlob;
|
64
71
|
} else {
|
65
72
|
cssLoaderOptions.modules.getLocalIdent = (0, _cssClassNameGenerate.default)(cssUniqueness, cssHashSelectors, classNamePrefix);
|
66
|
-
}
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
// ignore: [],
|
71
|
-
// plugins: [require('../postcss-plugins/variablePropertiesCollector').default()]
|
72
|
-
// }),
|
73
|
-
...excludeEmptyCheckPlugin({
|
73
|
+
} // console.log('selector weight config : ', selectorWeightConfig);
|
74
|
+
|
75
|
+
|
76
|
+
const postcssPlugins = [valueReplacer && require('../postcss-plugins/ValueReplacer')(valueReplacer), selectorReplace && require('postcss-selector-replace')(selectorReplace), ...excludeEmptyCheckPlugin({
|
74
77
|
enable: plugins.hasRTL,
|
75
78
|
ignore: rtlExcludeLocal,
|
76
79
|
plugins: [require('@zohodesk/postcss-rtl')({
|
@@ -93,7 +96,7 @@ const getCSSLoaders = (plugins, exclude, mediaQueryHoverActiveString, cssVariabl
|
|
93
96
|
}), ...excludeEmptyCheckPlugin({
|
94
97
|
enable: plugins.cssVariableReplacement,
|
95
98
|
ignore: cssVariableReplacementExcludeLocal,
|
96
|
-
plugins: [fs.existsSync(cssVariableReplacementConfig) && require('../postcss-plugins/variableModificationPlugin/index')(cssVariableReplacementConfig)]
|
99
|
+
plugins: [fs.existsSync(cssVariableReplacementConfig) && require('../postcss-plugins/variableModificationPlugin/index').plugin(cssVariableReplacementConfig)]
|
97
100
|
})].filter(Boolean);
|
98
101
|
return [cssSelectorZipPath && {
|
99
102
|
loader: require.resolve('../loaders/selectorMappingLoader')
|
@@ -0,0 +1,11 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.windowsModification = windowsModification;
|
7
|
+
const isWin = process.platform === 'win32';
|
8
|
+
|
9
|
+
function windowsModification(array) {
|
10
|
+
return isWin ? array && Array.isArray(array) && array.map(r => r.replace(/\//g, '\\')) : array;
|
11
|
+
}
|
@@ -16,7 +16,7 @@ var _SingleEntryPlugin = _interopRequireDefault(require("webpack/lib/SingleEntry
|
|
16
16
|
|
17
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
18
18
|
|
19
|
-
/* import WebWorkerTemplatePlugin from 'webpack/lib/webworker/WebWorkerTemplatePlugin';
|
19
|
+
/* import WebWorkerTemplatePlugin from 'webpack/lib/webworker/WebWorkerTemplatePlugin';
|
20
20
|
import ExternalsPlugin from 'webpack/lib/ExternalsPlugin'; */
|
21
21
|
const schema = {
|
22
22
|
'type': 'object',
|
@@ -80,14 +80,14 @@ function pitch(request) {
|
|
80
80
|
globalObject: 'self'
|
81
81
|
};
|
82
82
|
workerContext.compiler = this._compilation.createChildCompiler(`worker-loader ${request}`, workerContext.options);
|
83
|
-
/*
|
84
|
-
new WebWorkerTemplatePlugin().apply(workerContext.compiler);
|
85
|
-
|
86
|
-
if (compilerOptions.externals) {
|
87
|
-
new ExternalsPlugin(
|
88
|
-
getExternalsType(compilerOptions),
|
89
|
-
compilerOptions.externals
|
90
|
-
).apply(workerContext.compiler);
|
83
|
+
/*
|
84
|
+
new WebWorkerTemplatePlugin().apply(workerContext.compiler);
|
85
|
+
|
86
|
+
if (compilerOptions.externals) {
|
87
|
+
new ExternalsPlugin(
|
88
|
+
getExternalsType(compilerOptions),
|
89
|
+
compilerOptions.externals
|
90
|
+
).apply(workerContext.compiler);
|
91
91
|
} */
|
92
92
|
|
93
93
|
new _SingleEntryPlugin.default(this.context, `!!${request}`, _path.default.parse(this.resourcePath).name).apply(workerContext.compiler);
|
@@ -0,0 +1,59 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.configHtmlWebpackPlugins = configHtmlWebpackPlugins;
|
7
|
+
|
8
|
+
var _path = _interopRequireDefault(require("path"));
|
9
|
+
|
10
|
+
var _htmlWebpackPlugin = _interopRequireDefault(require("html-webpack-plugin"));
|
11
|
+
|
12
|
+
var _htmlWebpackInjectAttributesPlugin = _interopRequireDefault(require("html-webpack-inject-attributes-plugin"));
|
13
|
+
|
14
|
+
var _common = require("../common");
|
15
|
+
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
17
|
+
|
18
|
+
const defaultHTMLMiniFyOption = {
|
19
|
+
collapseWhitespace: true,
|
20
|
+
minifyCSS: true,
|
21
|
+
minifyJS: true,
|
22
|
+
keepClosingSlash: true,
|
23
|
+
removeComments: false,
|
24
|
+
removeRedundantAttributes: true,
|
25
|
+
removeScriptTypeAttributes: true,
|
26
|
+
removeStyleLinkTypeAttributes: true,
|
27
|
+
useShortDoctype: true
|
28
|
+
};
|
29
|
+
|
30
|
+
function configHtmlWebpackPlugins(plugins, {
|
31
|
+
enableChunkHash = false,
|
32
|
+
folder,
|
33
|
+
inject,
|
34
|
+
crossorigin,
|
35
|
+
hasEFC,
|
36
|
+
minify: minifyHtmlOptions = false
|
37
|
+
}) {
|
38
|
+
const optionsHtmlWebpack = {
|
39
|
+
chunksSortMode: 'none',
|
40
|
+
filename: enableChunkHash ? 'index.[templatehash:20].html' : 'index.html',
|
41
|
+
template: _path.default.join(process.cwd(), folder, 'index.html'),
|
42
|
+
minify: minifyHtmlOptions === true ? defaultHTMLMiniFyOption : minifyHtmlOptions === null ? false : minifyHtmlOptions,
|
43
|
+
// : typeof minifyHtmlOptions === 'object'
|
44
|
+
// ? minifyHtmlOptions
|
45
|
+
// : minifyHtmlOptions,,
|
46
|
+
templateParameters: _common.templateParameters,
|
47
|
+
scriptLoading: 'defer',
|
48
|
+
inject: inject
|
49
|
+
};
|
50
|
+
|
51
|
+
if (hasEFC) {
|
52
|
+
optionsHtmlWebpack.excludeChunks = ['efc', 'widget'];
|
53
|
+
}
|
54
|
+
|
55
|
+
plugins.push(new _htmlWebpackPlugin.default(optionsHtmlWebpack));
|
56
|
+
crossorigin && plugins.push(new _htmlWebpackInjectAttributesPlugin.default({
|
57
|
+
crossorigin: 'anonymous'
|
58
|
+
}));
|
59
|
+
}
|