@zohodesk/react-cli 1.0.0-exp.1 → 1.0.1-exp.1

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.
Files changed (126) hide show
  1. package/.eslintignore +7 -7
  2. package/.eslintrc.js +180 -180
  3. package/.prettierrc +6 -6
  4. package/Changelog.md +1019 -1019
  5. package/README.md +1152 -1161
  6. package/bin/cli.js +483 -483
  7. package/docs/CustomChunks.md +26 -26
  8. package/docs/DevServerPort.md +39 -39
  9. package/docs/DevStart.md +18 -18
  10. package/docs/HoverActive.md +12 -12
  11. package/docs/InstallNode.md +28 -28
  12. package/docs/SelectorWeight.md +6 -6
  13. package/docs/TODOS.md +10 -10
  14. package/docs/ValueReplacer.md +60 -60
  15. package/docs/VariableConversion.md +724 -724
  16. package/docs/warnings_while_install.txt +35 -35
  17. package/files/eslintrc.js +62 -62
  18. package/files/prettierrc.js +3 -3
  19. package/lib/common/getEntries.js +6 -9
  20. package/lib/configs/webpack.css.umd.config.js +4 -4
  21. package/lib/configs/webpack.docs.config.js +14 -26
  22. package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
  23. package/lib/loaders/workerLoader.js +9 -9
  24. package/lib/pluginUtils/configHtmlWebpackPlugins.js +1 -2
  25. package/lib/pluginUtils/getDevPlugins.js +8 -9
  26. package/lib/pluginUtils/getDocsPlugins.js +3 -16
  27. package/lib/pluginUtils/getProdPlugins.js +5 -7
  28. package/lib/plugins/EFCPlugin.md +6 -6
  29. package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
  30. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
  31. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
  32. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
  33. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
  34. package/lib/plugins/I18nSplitPlugin/README.md +25 -25
  35. package/lib/plugins/I18nSplitPlugin/index.js +57 -57
  36. package/lib/plugins/ResourceHintsPlugin.js +17 -17
  37. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
  38. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  39. package/lib/plugins/SelectorPlugin.js +71 -25
  40. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  41. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  42. package/lib/plugins/VariableConversionCollector.js +54 -54
  43. package/lib/plugins/cssoPlugin.js +37 -0
  44. package/lib/plugins/utils/checkPattern.js +57 -0
  45. package/lib/plugins/utils/classHandling.js +28 -0
  46. package/lib/plugins/utils/fileHandling.js +122 -0
  47. package/lib/postcss-plugins/IncludePlugin.js +24 -0
  48. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  49. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  50. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  51. package/lib/postcss-plugins/hoverActivePlugin.js +3 -3
  52. package/lib/postcss-plugins/variableModificationPlugin/index.js +23 -1
  53. package/lib/schemas/index.js +0 -8
  54. package/lib/sh/pre-commit.sh +34 -34
  55. package/lib/sh/reportPublish.sh +45 -45
  56. package/lib/utils/buildstats.html +148 -148
  57. package/lib/utils/resultSchema.json +73 -73
  58. package/npm8.md +9 -9
  59. package/package.json +121 -121
  60. package/postpublish.js +8 -8
  61. package/templates/app/.eslintrc.js +140 -140
  62. package/templates/app/README.md +12 -12
  63. package/templates/app/app/index.html +24 -24
  64. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  65. package/templates/app/app/properties/i18nkeys.json +3 -3
  66. package/templates/app/docs/all.html +69 -69
  67. package/templates/app/mockapi/index.js +18 -18
  68. package/templates/app/package.json +37 -37
  69. package/templates/app/src/actions/SampleActions/index.js +37 -37
  70. package/templates/app/src/actions/index.js +65 -65
  71. package/templates/app/src/appUrls.js +19 -19
  72. package/templates/app/src/components/Alert/Alert.js +134 -134
  73. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  74. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  75. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  76. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  77. package/templates/app/src/components/Sample/SampleList.js +61 -61
  78. package/templates/app/src/components/Slider/Slider.css +41 -41
  79. package/templates/app/src/components/Slider/Slider.js +55 -55
  80. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  81. package/templates/app/src/containers/AppContainer/index.js +96 -96
  82. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  83. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  84. package/templates/app/src/containers/DevTools/index.js +10 -10
  85. package/templates/app/src/containers/Header/index.js +67 -67
  86. package/templates/app/src/containers/Header/index.module.css +43 -43
  87. package/templates/app/src/containers/Redirect/index.js +63 -63
  88. package/templates/app/src/containers/Redirector/index.js +47 -47
  89. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  90. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  91. package/templates/app/src/historyChange.js +5 -5
  92. package/templates/app/src/index.html +10 -10
  93. package/templates/app/src/index.js +24 -24
  94. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  95. package/templates/app/src/reducers/alertData.js +11 -11
  96. package/templates/app/src/reducers/index.js +6 -6
  97. package/templates/app/src/reducers/samples.js +19 -19
  98. package/templates/app/src/store/configureStore.dev.js +51 -51
  99. package/templates/app/src/store/configureStore.js +5 -5
  100. package/templates/app/src/store/configureStore.prod.js +26 -26
  101. package/templates/app/src/util/Common.js +5 -5
  102. package/templates/app/src/util/RequestAPI.js +132 -132
  103. package/templates/docs/all.html +249 -249
  104. package/templates/docs/component.html +178 -178
  105. package/templates/docs/components.html +221 -221
  106. package/templates/docs/css/b.min.css +6 -6
  107. package/templates/docs/css/component.css +42 -42
  108. package/templates/docs/css/componentTest.css +6 -6
  109. package/templates/docs/css/hopscotch.css +585 -585
  110. package/templates/docs/css/style.css +1022 -1022
  111. package/templates/docs/impactReportTemplate.html +154 -154
  112. package/templates/docs/index.html +1501 -1501
  113. package/templates/docs/js/active-line.js +72 -72
  114. package/templates/docs/js/b.min.js +7 -7
  115. package/templates/docs/js/codemirror.js +9680 -9680
  116. package/templates/docs/js/designTokens.js +334 -334
  117. package/templates/docs/js/j.min.js +4 -4
  118. package/templates/docs/js/javascript.js +874 -874
  119. package/templates/docs/js/matchbrackets.js +145 -145
  120. package/lib/configs/webpack.docs1.config.js +0 -122
  121. package/lib/hooks/docsEntry.js +0 -18
  122. package/result.json +0 -1
  123. package/templates/docs/a.html +0 -13
  124. package/templates/docs/docsEntry.js +0 -14
  125. package/templates/docs/docsRoot.js +0 -3
  126. package/unittest/index.html +0 -37
@@ -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
+ };
@@ -1,3 +1,3 @@
1
- module.exports = {
2
- trailingComma: 'none',
3
- };
1
+ module.exports = {
2
+ trailingComma: 'none',
3
+ };
@@ -11,17 +11,14 @@ var _utils = require("../utils");
11
11
 
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13
 
14
- const getEntries = (appSchemas, mode) => {
15
- const appPath = process.cwd();
16
- const {
14
+ let getEntries = (appSchemas, mode) => {
15
+ let appPath = process.cwd();
16
+ let {
17
17
  isReactMig,
18
18
  hasWidget,
19
19
  server,
20
20
  folder
21
21
  } = appSchemas.app;
22
- const {
23
- mainEntryFile
24
- } = appSchemas.app;
25
22
  const {
26
23
  hasEFC: prevOptionForEnableEFC
27
24
  } = appSchemas.app;
@@ -29,8 +26,8 @@ const getEntries = (appSchemas, mode) => {
29
26
  hasEFC: newOptionForEnableEFC
30
27
  } = appSchemas.efc;
31
28
  const hasEFC = newOptionForEnableEFC || prevOptionForEnableEFC;
32
- const mainJs = [];
33
- const entry = {
29
+ let mainJs = [];
30
+ let entry = {
34
31
  main: mainJs
35
32
  };
36
33
 
@@ -38,7 +35,7 @@ const getEntries = (appSchemas, mode) => {
38
35
  mainJs.push(`${_path.default.join(__dirname, '..', 'templates', 'WMSTemplate')}?wmsPath=wss:${(0, _utils.getServerURL)(server)}`);
39
36
  }
40
37
 
41
- mainJs.push(_path.default.join(appPath, folder, isReactMig ? 'migration.js' : mainEntryFile));
38
+ mainJs.push(_path.default.join(appPath, folder, isReactMig ? 'migration.js' : 'index.js'));
42
39
 
43
40
  if (hasWidget) {
44
41
  entry.widget = [_path.default.join(appPath, folder, 'widget.js')];
@@ -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$/,
@@ -10,8 +10,6 @@ var _loaderUtils = require("../loaderUtils");
10
10
 
11
11
  var _configsAssetsLoaders = require("../loaderUtils/configsAssetsLoaders");
12
12
 
13
- var _fs = require("fs");
14
-
15
13
  var _resolvers = require("./resolvers");
16
14
 
17
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -37,18 +35,9 @@ const {
37
35
  const appPath = process.cwd();
38
36
  const nameTemplate = (0, _configsAssetsLoaders.createNameTemplate)(enableChunkHash);
39
37
 
40
- const docsAppEntry = _path.default.join(appPath, componentFolder, 'index.js');
41
-
42
- const docsEntry = _path.default.resolve(__dirname, '..', 'hooks', 'docsEntry.js');
43
-
44
- console.log("jijij", (0, _fs.readFileSync)(docsEntry).toString().replace('TOTAL_COMPONENTS_MAPPING', JSON.stringify(_path.default.relative(_path.default.dirname(docsEntry), docsAppEntry))));
45
- (0, _fs.writeFileSync)(docsEntry, (0, _fs.readFileSync)(docsEntry).toString().replace('TOTAL_COMPONENTS_MAPPING', JSON.stringify(_path.default.relative(_path.default.dirname(docsEntry), docsAppEntry))));
46
-
47
38
  module.exports = isSSTest => ({
48
39
  entry: {
49
- main: [docsEntry // path.resolve(__dirname, '..', 'hooks', 'docsProptypeHook.js'),
50
- // path.join(appPath, componentFolder, 'index.js')
51
- ],
40
+ main: [_path.default.resolve(__dirname, '..', 'hooks', 'docsProptypeHook.js'), _path.default.join(appPath, componentFolder, 'index.js')],
52
41
  vendor: ['react', 'react-dom', 'redux', 'react-redux']
53
42
  },
54
43
  devtool: 'none',
@@ -56,9 +45,9 @@ module.exports = isSSTest => ({
56
45
  output: {
57
46
  path: _path.default.join(appPath, 'build'),
58
47
  filename: 'js/[name].js',
59
- publicPath: '/docs/' // library: 'Component',
60
- // libraryTarget: 'umd'
61
-
48
+ publicPath: '/docs/',
49
+ library: 'Component',
50
+ libraryTarget: 'umd'
62
51
  },
63
52
  plugins: (0, _pluginUtils.getDocsPlugins)(isSSTest, options),
64
53
  module: {
@@ -97,17 +86,16 @@ module.exports = isSSTest => ({
97
86
  cssHashSelectors,
98
87
  classNamePrefix
99
88
  })
100
- }, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), // {
101
- // test: /\.html$/,
102
- // use: {
103
- // loader: 'html-loader',
104
- // options: {
105
- // attrs: [':data-src'],
106
- // interpolate: 'require'
107
- // }
108
- // }
109
- // },
110
- {
89
+ }, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), {
90
+ test: /\.html$/,
91
+ use: {
92
+ loader: 'html-loader',
93
+ options: {
94
+ attrs: [':data-src'],
95
+ interpolate: 'require'
96
+ }
97
+ }
98
+ }, {
111
99
  test: /\.tmpl$/,
112
100
  use: [{
113
101
  loader: 'html-loader',
@@ -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
  */
@@ -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);
@@ -29,7 +29,6 @@ const defaultHTMLMiniFyOption = {
29
29
 
30
30
  function configHtmlWebpackPlugins(plugins, {
31
31
  enableChunkHash = false,
32
- mainEntryHtmlFile,
33
32
  folder,
34
33
  inject,
35
34
  crossorigin,
@@ -39,7 +38,7 @@ function configHtmlWebpackPlugins(plugins, {
39
38
  const optionsHtmlWebpack = {
40
39
  chunksSortMode: 'none',
41
40
  filename: enableChunkHash ? 'index.[templatehash:20].html' : 'index.html',
42
- template: _path.default.join(process.cwd(), folder, mainEntryHtmlFile),
41
+ template: _path.default.join(process.cwd(), folder, 'index.html'),
43
42
  minify: minifyHtmlOptions === true ? defaultHTMLMiniFyOption : minifyHtmlOptions === null ? false : minifyHtmlOptions,
44
43
  // : typeof minifyHtmlOptions === 'object'
45
44
  // ? minifyHtmlOptions
@@ -41,7 +41,6 @@ const getDevPlugins = (options, publicPath) => {
41
41
  app: {
42
42
  tpFolder,
43
43
  folder,
44
- mainEntryHtmlFile,
45
44
  instrumentScript,
46
45
  devCssFileBountry,
47
46
  context,
@@ -49,7 +48,7 @@ const getDevPlugins = (options, publicPath) => {
49
48
  hasShadowDOM,
50
49
  cssVariableReplacementConfig,
51
50
  plugins: pluginObject,
52
- // exclude,
51
+ exclude,
53
52
  selectorWeightConfig,
54
53
  server: {
55
54
  mode
@@ -110,11 +109,11 @@ const getDevPlugins = (options, publicPath) => {
110
109
  }
111
110
 
112
111
  const i18nManifestFileName = 'i18n-manifest.json';
113
- /**
114
- * NOTE:
115
- * this file name ext .i18n.js added
116
- * Because, in service worker they maintain cache as file name based
117
- * So, to make differce we added .i18n.js ext.
112
+ /**
113
+ * NOTE:
114
+ * this file name ext .i18n.js added
115
+ * Because, in service worker they maintain cache as file name based
116
+ * So, to make differce we added .i18n.js ext.
118
117
  */
119
118
 
120
119
  const i18nFileNameTemplate = 'i18n-chunk/[locale]/[name].i18n.js';
@@ -155,7 +154,6 @@ const getDevPlugins = (options, publicPath) => {
155
154
  }));
156
155
  (0, _configHtmlWebpackPlugins.configHtmlWebpackPlugins)(pluginsArr, {
157
156
  enableChunkHash: false,
158
- mainEntryHtmlFile,
159
157
  folder,
160
158
  minify: false,
161
159
  inject,
@@ -202,7 +200,8 @@ const getDevPlugins = (options, publicPath) => {
202
200
 
203
201
  if (pluginObject.selectorWeight) {
204
202
  pluginsArr.push(new _SelectorPlugin.default({
205
- selectorWeightConfig
203
+ selectorWeightConfig,
204
+ exclude: exclude.selectorWeight
206
205
  }));
207
206
  }
208
207
 
@@ -9,28 +9,24 @@ var _caseSensitivePathsWebpackPlugin = _interopRequireDefault(require("case-sens
9
9
 
10
10
  var _miniCssExtractPlugin = _interopRequireDefault(require("mini-css-extract-plugin"));
11
11
 
12
- var _htmlWebpackPlugin = _interopRequireDefault(require("html-webpack-plugin"));
13
-
14
12
  var _webpack = _interopRequireDefault(require("webpack"));
15
13
 
16
14
  var _path = _interopRequireDefault(require("path"));
17
15
 
18
16
  var _plugins = require("../plugins");
19
17
 
20
- var _fs = require("fs");
21
-
22
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
19
 
24
20
  // isForLibraryImpact this variable for now only used in getLibraryImactPlugins.
25
21
  // So you gona use it please check with that function as well
26
- const getDocsPlugins = (isSSTest, options, isForLibraryImpact = false) => {
27
- const {
22
+ let getDocsPlugins = (isSSTest, options, isForLibraryImpact = false) => {
23
+ let {
28
24
  app: {
29
25
  folder
30
26
  },
31
27
  unusedFiles
32
28
  } = options;
33
- const plugins = [new _plugins.CleanUpStatsPlugin(), new _caseSensitivePathsWebpackPlugin.default(), new _webpack.default.ProvidePlugin({
29
+ let plugins = [new _plugins.CleanUpStatsPlugin(), new _caseSensitivePathsWebpackPlugin.default(), new _webpack.default.ProvidePlugin({
34
30
  React: 'react'
35
31
  }), new _webpack.default.DefinePlugin({
36
32
  __TEST__: false,
@@ -51,15 +47,6 @@ const getDocsPlugins = (isSSTest, options, isForLibraryImpact = false) => {
51
47
  })));
52
48
  }
53
49
 
54
- const tempHTML = _path.default.join(__dirname, '../../templates/docs/a.html');
55
-
56
- console.log('tempHTML', tempHTML, (0, _fs.existsSync)(tempHTML));
57
- plugins.push(new _htmlWebpackPlugin.default({
58
- filename: 'out.html',
59
- template: tempHTML // scriptLoading: 'defer',
60
- // inject: false
61
-
62
- }));
63
50
  return plugins;
64
51
  };
65
52
 
@@ -49,7 +49,6 @@ const getProdPlugins = (options, publicPath = '') => {
49
49
  enableSMapHook,
50
50
  tpFolder,
51
51
  folder,
52
- mainEntryHtmlFile,
53
52
  outputFolder,
54
53
  context,
55
54
  enableSMap,
@@ -117,11 +116,11 @@ const getProdPlugins = (options, publicPath = '') => {
117
116
  }
118
117
 
119
118
  const i18nManifestFileName = 'i18n-manifest.json';
120
- /**
121
- * NOTE:
122
- * this file name ext .i18n.js added
123
- * Because, in service worker they maintain cache as file name based
124
- * So, to make differce we added .i18n.js ext.
119
+ /**
120
+ * NOTE:
121
+ * this file name ext .i18n.js added
122
+ * Because, in service worker they maintain cache as file name based
123
+ * So, to make differce we added .i18n.js ext.
125
124
  */
126
125
 
127
126
  const i18nFileNameTemplate = 'i18n-chunk/[locale]/[name].[chunkhash].i18n.js';
@@ -160,7 +159,6 @@ const getProdPlugins = (options, publicPath = '') => {
160
159
  (0, _configHtmlWebpackPlugins.configHtmlWebpackPlugins)(pluginsArr, {
161
160
  enableChunkHash,
162
161
  folder,
163
- mainEntryHtmlFile,
164
162
  inject,
165
163
  minify: minifyHtmlOptions,
166
164
  crossorigin,
@@ -1,6 +1,6 @@
1
- # EFC Plugin
2
-
3
- In EFC plugin we are create sdk file for efc related purpose
4
-
5
-
6
- # document will be soon
1
+ # EFC Plugin
2
+
3
+ In EFC plugin we are create sdk file for efc related purpose
4
+
5
+
6
+ # document will be soon
@@ -116,10 +116,10 @@ class I18NInjectIntoIndexPlugin {
116
116
  i18nObj = i18nFiles.reduce((res, next) => {
117
117
  let fileName = next.replace(`i18n${_path.default.sep}`, '');
118
118
  let splittedFileName = fileName.split('.');
119
- /* if (this.isDevelopment) {
120
- res[splittedFileName[0]] = `${this.publicPath}/i18n/${fileName}`;
121
- } else {
122
- res[splittedFileName[0]] = fileName;
119
+ /* if (this.isDevelopment) {
120
+ res[splittedFileName[0]] = `${this.publicPath}/i18n/${fileName}`;
121
+ } else {
122
+ res[splittedFileName[0]] = fileName;
123
123
  } */
124
124
 
125
125
  res[splittedFileName[0]] = `${this.publicPath}/i18n/${fileName}`;