@zohodesk/react-cli 1.1.11-exp.3 → 1.1.11-exp.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (420) hide show
  1. package/.eslintignore +7 -7
  2. package/.eslintrc.js +180 -180
  3. package/.prettierrc +6 -6
  4. package/.vscode/settings.json +24 -24
  5. package/Changelog.md +1019 -1019
  6. package/README.md +1371 -1394
  7. package/bin/cli.js +458 -458
  8. package/docs/ComposeMinification.md +13 -13
  9. package/docs/CustomChunks.md +29 -29
  10. package/docs/DevServerPort.md +39 -39
  11. package/docs/DevStart.md +18 -18
  12. package/docs/HoverActive.md +12 -12
  13. package/docs/InstallNode.md +28 -28
  14. package/docs/MarkdownParser.md +17 -17
  15. package/docs/ReactLive.md +13 -13
  16. package/docs/SelectorWeight.md +8 -8
  17. package/docs/TODOS.md +10 -10
  18. package/docs/ValueReplacer.md +60 -60
  19. package/docs/VariableConversion.md +729 -729
  20. package/docs/patternFiltering.md +56 -56
  21. package/docs/warnings_while_install.txt +35 -35
  22. package/files/eslintrc.js +62 -62
  23. package/files/prettierrc.js +3 -3
  24. package/lib/configs/webpack.css.umd.config.js +4 -4
  25. package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
  26. package/lib/loaderUtils/getCSSLoaders.js +50 -50
  27. package/lib/loaders/workerLoader.js +9 -9
  28. package/lib/pluginUtils/getDevPlugins.js +5 -5
  29. package/lib/pluginUtils/getProdPlugins.js +7 -20
  30. package/lib/plugins/CustomAttributePlugin.md +35 -35
  31. package/lib/plugins/EFCPlugin.md +6 -6
  32. package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
  33. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
  34. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
  35. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
  36. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
  37. package/lib/plugins/I18nSplitPlugin/README.md +25 -25
  38. package/lib/plugins/I18nSplitPlugin/index.js +57 -57
  39. package/lib/plugins/ResourceHintsPlugin.js +17 -17
  40. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
  41. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  42. package/lib/plugins/SelectorPlugin.js +29 -29
  43. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  44. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  45. package/lib/plugins/VariableConversionCollector.js +59 -59
  46. package/lib/plugins/utils/fileHandling.js +4 -4
  47. package/lib/plugins/variableConvertorUtils.js +13 -11
  48. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  49. package/lib/postcss-plugins/ValueReplacer.js +7 -0
  50. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  51. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  52. package/lib/postcss-plugins/hoverActivePlugin.js +3 -3
  53. package/lib/postcss-plugins/variableModificationPlugin/index.js +65 -17
  54. package/lib/schemas/index.js +0 -9
  55. package/lib/sh/pre-commit.sh +34 -34
  56. package/lib/sh/reportPublish.sh +45 -45
  57. package/lib/utils/buildstats.html +148 -148
  58. package/lib/utils/cssClassNameGenerate.js +13 -13
  59. package/lib/utils/getOptions.js +1 -2
  60. package/lib/utils/resultSchema.json +73 -73
  61. package/npm-shrinkwrap.json +33485 -33485
  62. package/npm8.md +9 -9
  63. package/package.json +123 -123
  64. package/packages/client_build_tool/lib/allCommandsConfigs.js +3 -1
  65. package/packages/client_build_tool/lib/commands/build/commandExecutor.js +3 -7
  66. package/packages/client_build_tool/lib/commands/build/config.js +2 -2
  67. package/packages/client_build_tool/lib/commands/build/optionsProcessor.js +45 -0
  68. package/packages/client_build_tool/lib/commands/buildEs/commandExecutor.js +20 -4
  69. package/packages/client_build_tool/lib/commands/buildEs/config.js +2 -2
  70. package/packages/client_build_tool/lib/commands/buildLib/commandExecutor.js +20 -4
  71. package/packages/client_build_tool/lib/commands/buildLib/config.js +2 -2
  72. package/packages/client_build_tool/lib/commands/mockserver/commandExecutor.js +43 -0
  73. package/packages/client_build_tool/lib/commands/mockserver/config.js +12 -0
  74. package/packages/client_build_tool/lib/commands/start/commandExecutor.js +0 -1
  75. package/packages/client_build_tool/lib/commands/start/config.js +2 -2
  76. package/packages/client_build_tool/lib/commands/start/{optionsProcesser.js → optionsProcessor.js} +14 -10
  77. package/packages/client_build_tool/lib/commands/start/postProcessor.js +10 -0
  78. package/packages/client_build_tool/lib/commands/start/preProcessor.js +10 -0
  79. package/packages/client_build_tool/lib/commands/template/commandExecutor.js +32 -0
  80. package/packages/client_build_tool/lib/commands/template/config.js +12 -0
  81. package/packages/client_build_tool/lib/commands/version/commandExecutor.js +14 -0
  82. package/packages/client_build_tool/lib/commands/version/config.js +12 -0
  83. package/packages/client_build_tool/lib/commands/version/errorHander.js +10 -0
  84. package/packages/client_build_tool/lib/commandsRouter.js +21 -16
  85. package/packages/client_build_tool/lib/index.js +12 -0
  86. package/packages/client_build_tool/lib/{buildToolLoggers.js → logger.js} +7 -5
  87. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/otherTestCases.test.js +234 -0
  88. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/passingDifferentDataTypesToSchema.test.js +103 -0
  89. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/passingEmptyObjects.test.js +41 -0
  90. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertArray.test.js +68 -0
  91. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertNumber.test.js +68 -0
  92. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertObject.test.js +141 -0
  93. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertString.test.js +68 -0
  94. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertUndefinedAndNull.test.js +132 -0
  95. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertArray.test.js +71 -0
  96. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertNumber.test.js +71 -0
  97. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertObject.test.js +73 -0
  98. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertString.test.js +71 -0
  99. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertUndefinedAndNull.test.js +138 -0
  100. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/index.js +34 -0
  101. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/isObject.js +10 -0
  102. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/isValid.js +14 -0
  103. package/packages/client_build_tool/lib/{shared/schemas → schemas}/cliArgsToObject.js +12 -10
  104. package/packages/client_build_tool/lib/schemas/defaultConfigValues.js +244 -0
  105. package/packages/client_build_tool/lib/schemas/defaultConfigValuesOnly.js +161 -0
  106. package/packages/client_build_tool/lib/schemas/deprecatedOptionsHandler.js +67 -0
  107. package/packages/client_build_tool/lib/{shared/schemas → schemas}/getNpmVersion.js +3 -2
  108. package/packages/client_build_tool/lib/schemas/giveDefaultValue.js +18 -0
  109. package/packages/client_build_tool/lib/{shared/schemas → schemas}/npmConfigToObject.js +12 -9
  110. package/packages/client_build_tool/lib/{shared/schemas → schemas}/readOptions.js +11 -12
  111. package/packages/client_build_tool/lib/{shared/schemas/readOptionsForPackageJson.js → schemas/readOptionsForConfigFile.js} +18 -2
  112. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Map.test.js +15 -0
  113. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/MathAndNumberMethod.test.js +30 -0
  114. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/ObjectAndModules.test.js +47 -0
  115. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Sets.test.js +18 -0
  116. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Symbol.test.js +25 -0
  117. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/arrowFunction.test.js +34 -0
  118. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/block-scoping.test.js +18 -0
  119. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/classes.test.js +55 -0
  120. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/defaultParameterValues.test.js +18 -0
  121. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/extraFeatures.test.js +82 -0
  122. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/forOf.test.js +20 -0
  123. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/promise.test.js +22 -0
  124. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/spreadOperator.test.js +20 -0
  125. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/spreadParams.test.js +24 -0
  126. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/stringAndArrayMethods.test.js +67 -0
  127. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/variables.test.js +21 -0
  128. package/packages/client_build_tool/lib/shared/babel/__test__/es2016/array-includes.test.js +13 -0
  129. package/packages/client_build_tool/lib/shared/babel/__test__/es2016/exponentationOperator.test.js +20 -0
  130. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/asyncAndawait.test.js +23 -0
  131. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-entries.test.js +24 -0
  132. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-getOwnproperties.test.js +24 -0
  133. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-values.test.js +24 -0
  134. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/stringMethods.test.js +20 -0
  135. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/asynchronous-iterator.test.js +19 -0
  136. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/object-rest-spread.test.js +24 -0
  137. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/promise-finally.test.js +26 -0
  138. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/regularExpressions.test.js +35 -0
  139. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/Json.stringify.test.js +21 -0
  140. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/arrayMethods.test.js +31 -0
  141. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/object-fromEntriesMethod.test.js +13 -0
  142. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/optionalCatchBinding.test.js +23 -0
  143. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/revisedFunctionToString.test.js +17 -0
  144. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/trim-startAndend-method.test.js +20 -0
  145. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/AssignmentOperator.test.js +27 -0
  146. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/Dynamic-Import.test.js +19 -0
  147. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/NullishOperator.test.js +15 -0
  148. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/bigInt.test.js +13 -0
  149. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/chainOperator.test.js +17 -0
  150. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/export-namespace-from.test.js +12 -0
  151. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/promiseAllSettledMathod.test.js +17 -0
  152. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/stringMatchMethod.test.js +13 -0
  153. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/NumericSeparator.test.js +23 -0
  154. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/logicalOperatorAssignments.test.js +25 -0
  155. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/promiseAny.test.js +16 -0
  156. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/stringReplaceMethod.test.js +16 -0
  157. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/Array-atMethod.test.js +13 -0
  158. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/ObjectKeyCheck.test.js +27 -0
  159. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/ObjecthasOwnMethod.test.js +19 -0
  160. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/RegexMatchIndices.test.js +20 -0
  161. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/String-atMethod.test.js +15 -0
  162. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/error.Cause.test.js +23 -0
  163. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/keysCheckinPrivateFields.test.js +27 -0
  164. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/privateMethodsAndFields.test.js +23 -0
  165. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/staticFieldsAndMethod.test.js +54 -0
  166. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/topLevelAwait.test.js +11 -0
  167. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/weakRef.test.js +17 -0
  168. package/packages/client_build_tool/lib/shared/babel/__test__/utilities.js +28 -0
  169. package/packages/client_build_tool/lib/shared/babel/babelWebConfig.js +49 -0
  170. package/packages/client_build_tool/lib/shared/babel/runBabelForJSFile.js +24 -0
  171. package/packages/client_build_tool/lib/shared/bundler/webpack/common/decidePublicPath.js +1 -3
  172. package/packages/client_build_tool/lib/shared/bundler/webpack/common/modeUtils.js +31 -0
  173. package/packages/client_build_tool/lib/shared/bundler/webpack/common/nameTemplates.js +32 -13
  174. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/AddManifestJson/addFilesToManifestJson.js +19 -0
  175. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/AddManifestJson/utilities.js +18 -0
  176. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/CdnChangePlugin.js +15 -24
  177. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/EFCTemplatePlugin.js +112 -0
  178. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ContributionGuide.md +10 -10
  179. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nFilesEmitPlugin.js +172 -0
  180. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nKeysIdentifer.js +20 -80
  181. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nRuntimeDealerPlugin.js +203 -0
  182. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nSplit.md +95 -95
  183. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/LocaleChunkAssetsStore.js +73 -0
  184. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ModulesI18nKeysStore.js +88 -0
  185. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/README.md +25 -25
  186. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/createHash.js +5 -5
  187. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/getI18nLoadingRuntimeModule.js +9 -14
  188. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/index.js +12 -374
  189. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/iterateModulesInChunk.js +50 -0
  190. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/optionsHandler.js +1 -0
  191. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateFileName.js +6 -12
  192. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateHashHelpers.js +23 -23
  193. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/classesAndObject.test.js +56 -0
  194. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/conditionalOperation.test.js +154 -0
  195. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/function.test.js +89 -0
  196. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/function2.test.js +71 -0
  197. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/loop.test.js +112 -0
  198. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/minifyBooleanValues.test.js +43 -0
  199. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/minimizeVariableNames.test.js +45 -0
  200. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/promise.test.js +53 -0
  201. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/removeCommentsAndEmptySpace.test.js +13 -0
  202. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/removeUnusedStrings.test.js +14 -0
  203. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/variableDeclaration.test.js +30 -0
  204. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/collectI18nKeys.js +11 -8
  205. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/getChunkModules.js +13 -0
  206. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/propertiesUtils.js +14 -12
  207. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/InitialHtmlPlugin.js +54 -0
  208. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/addFilesNamesToManifestJson.test.js +51 -0
  209. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/createInitialEntries.test.js +95 -0
  210. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/removeHashFromFileName.test.js +91 -0
  211. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/addFilesNamesToManifestJson.js +24 -0
  212. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createInitialEntries.js +17 -0
  213. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createManifestJson.js +35 -0
  214. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/findInitialFileNames.js +18 -0
  215. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/index.js +44 -0
  216. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/removeHashFromFileName.js +18 -0
  217. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ResourceHintsPlugin.js +165 -0
  218. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/OverwriteCssPathForRTL.js +4 -5
  219. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtlCssPlugin.js +12 -17
  220. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtrSplit.md +34 -34
  221. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/replaceCssDirTemplate.js +13 -1
  222. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/classHandling.js +20 -0
  223. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/index.js +78 -0
  224. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/selectorWeightPrefixAdder.js +51 -0
  225. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/windowsModification.js +16 -0
  226. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ServiceWorkerPlugin.js +79 -124
  227. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SourceMapPlugin/index.js +38 -0
  228. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/uglifyCss1.test.js +74 -0
  229. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/uglifycss.test.js +64 -0
  230. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/utilities.js +28 -0
  231. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/{UglifyCSSPlugin.js → UglifyCSSPlugin/index.js.js} +2 -2
  232. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/ErrorHandler.js +62 -0
  233. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/index.js +361 -0
  234. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/emitAsset.js +14 -0
  235. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/getInitialAssetsFuncTemplate.js +57 -0
  236. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/getInitialI18nAssetsArrayStr.js +87 -0
  237. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/classesAndObject.test.js +56 -0
  238. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/conditionalOperation.test.js +154 -0
  239. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/function.test.js +89 -0
  240. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/function2.test.js +71 -0
  241. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/loop.test.js +112 -0
  242. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/minifyBooleanValues.test.js +43 -0
  243. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/minimizeVariableNames.test.js +45 -0
  244. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/promise.test.js +53 -0
  245. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/removeCommentsAndEmptySpace.test.js +13 -0
  246. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/removeUnusedStrings.test.js +14 -0
  247. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/variableDeclaration.test.js +30 -0
  248. package/packages/client_build_tool/lib/shared/bundler/webpack/entryConfig.js +28 -0
  249. package/packages/client_build_tool/lib/shared/bundler/webpack/externals.js +13 -0
  250. package/packages/client_build_tool/lib/shared/bundler/webpack/getCSSLoaders.js +9 -12
  251. package/packages/client_build_tool/lib/shared/bundler/webpack/getSourceMapType.js +10 -0
  252. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/assetLoaders.js +0 -2
  253. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/babelLoaderConfig.js +4 -10
  254. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/checkIsPatternsMatchFilename.js +52 -0
  255. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configPostCssLoader.js +37 -0
  256. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configsAssetsLoaders.js +44 -44
  257. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/cssClassNameGenerate.js +19 -43
  258. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/getCssLoaderOptions.js +0 -2
  259. package/packages/client_build_tool/lib/shared/bundler/webpack/loaders/workerLoader.js +8 -8
  260. package/packages/client_build_tool/lib/shared/bundler/webpack/optimizationConfig.js +9 -5
  261. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configBundleAnalyzer.js +40 -0
  262. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCSSMinifierPlugin.js +24 -0
  263. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCdnChangePlugin.js +13 -4
  264. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCopyPublicFolders.js +80 -0
  265. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configEFCTemplatePlugin.js +46 -0
  266. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configEnvVariables.js +5 -2
  267. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configHtmlWebpackPlugin.js +38 -10
  268. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configI18nSplitPlugin.js +6 -0
  269. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configManifestJsonPlugin.js +32 -0
  270. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configProgressPlugin.js +7 -2
  271. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configResourceHintsPlugin.js +19 -0
  272. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configSelectorWeightPlugin.js +28 -0
  273. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configServiceWorkerPlugin.js +25 -3
  274. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configSourceMapPlugin.js +20 -0
  275. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configVariableConversionPlugin.js +25 -0
  276. package/packages/client_build_tool/lib/shared/bundler/webpack/plugins.js +18 -9
  277. package/packages/client_build_tool/lib/shared/bundler/webpack/resolvers.js +19 -12
  278. package/packages/client_build_tool/lib/shared/bundler/webpack/splitChunksConfig.js +117 -1
  279. package/packages/client_build_tool/lib/shared/bundler/webpack/statsConfig.js +21 -0
  280. package/packages/client_build_tool/lib/shared/bundler/webpack/utils/index.js +26 -0
  281. package/packages/client_build_tool/lib/shared/bundler/webpack/utils/updateArrayWithDefault.js +18 -0
  282. package/packages/client_build_tool/lib/shared/bundler/webpack/webpackBuild.js +7 -4
  283. package/packages/client_build_tool/lib/shared/bundler/webpack/webpackConfig.js +15 -13
  284. package/packages/client_build_tool/lib/shared/commands-utils/doBasicRequirementCheck.js +17 -0
  285. package/packages/client_build_tool/lib/shared/{commands-utlis → commands-utils}/getCliPath.js +8 -7
  286. package/packages/client_build_tool/lib/shared/{commands-utlis → commands-utils}/index.js +3 -3
  287. package/packages/client_build_tool/lib/shared/commands-utils/spawnSyncIO.js +38 -0
  288. package/packages/client_build_tool/lib/shared/constants.js +17 -5
  289. package/packages/client_build_tool/lib/shared/fileUtils/copyFile.js +38 -0
  290. package/packages/client_build_tool/lib/shared/fileUtils/directoryIterator.js +21 -0
  291. package/packages/client_build_tool/lib/shared/fileUtils/watchRun.js +100 -0
  292. package/packages/client_build_tool/lib/shared/postcss/__test__/ignoreTestCases.test.js +80 -0
  293. package/packages/client_build_tool/lib/shared/postcss/__test__/postcss-rtl-all-cases.test.js +119 -0
  294. package/packages/client_build_tool/lib/shared/postcss/__test__/postcssRtl.spec.js +34 -0
  295. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/EmptyPlugin.js +21 -0
  296. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/constants.js +10 -0
  297. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/handleIgnores.js +66 -0
  298. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/index.js +136 -0
  299. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/insertBefore.js +32 -0
  300. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/isPreviouslyProcessed.js +20 -0
  301. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/replaceUtils.js +20 -0
  302. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/separateHoveredSelectorAndNormalSelector.js +24 -0
  303. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/specialCases.js +43 -0
  304. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/typeCheckUtils.js +52 -0
  305. package/packages/client_build_tool/lib/shared/{bundler/webpack/custom_postcss_loaders → postcss/custom_postcss_plugins}/RTLSplitPlugin.js +10 -10
  306. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/SelectorReplace.js +90 -0
  307. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/ValueReplacer.js +57 -0
  308. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/VariableModificationPlugin/index.js +343 -0
  309. package/packages/client_build_tool/lib/shared/postcss/filterPluginsAllowedForSpecficFile.js +55 -0
  310. package/packages/client_build_tool/lib/shared/postcss/getAllowedPostCssPlugins.js +30 -0
  311. package/packages/client_build_tool/lib/shared/postcss/getSpecificPostCssPlugin.js +58 -0
  312. package/packages/client_build_tool/lib/shared/postcss/runPostCssForCssFile.js +37 -0
  313. package/packages/client_build_tool/lib/shared/server/configWebpackDevMiddleware.js +4 -3
  314. package/packages/client_build_tool/lib/shared/server/{corsHandleing.js → corsHandling.js} +5 -12
  315. package/packages/client_build_tool/lib/shared/server/getIp.js +3 -3
  316. package/packages/client_build_tool/lib/shared/server/httpsOptions.js +25 -32
  317. package/packages/client_build_tool/lib/shared/server/initialHTMLHandling.js +54 -21
  318. package/packages/client_build_tool/lib/shared/server/mockApiHandler.js +60 -0
  319. package/packages/client_build_tool/lib/shared/server/mockServer.js +41 -0
  320. package/packages/client_build_tool/lib/shared/server/serveContextFiles.js +1 -0
  321. package/packages/client_build_tool/lib/shared/server/serverBywebpackDevMiddleware.js +6 -10
  322. package/packages/client_build_tool/lib/shared/server/startHttpServer.js +2 -2
  323. package/packages/client_build_tool/lib/shared/server/startHttpsServer.js +6 -2
  324. package/packages/client_build_tool/lib/shared/server/unwanted/websocketMockSetup.js +7 -7
  325. package/packages/client_build_tool/lib/shared/server/urlConcat.js +17 -10
  326. package/packages/client_build_tool/lib/shared/utils/requireLocalOrGlobal.js +81 -0
  327. package/packages/client_build_tool/lib/shared/utils/versionPrint.js +20 -0
  328. package/packages/client_build_tool/node_modules/history/package.json +11 -8
  329. package/postpublish.js +8 -8
  330. package/result.json +1 -0
  331. package/templates/app/.eslintrc.js +140 -140
  332. package/templates/app/README.md +12 -12
  333. package/templates/app/app/index.html +24 -24
  334. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  335. package/templates/app/app/properties/i18nkeys.json +3 -3
  336. package/templates/app/docs/all.html +69 -69
  337. package/templates/app/mockapi/index.js +18 -18
  338. package/templates/app/package.json +37 -37
  339. package/templates/app/src/actions/SampleActions/index.js +37 -37
  340. package/templates/app/src/actions/index.js +65 -65
  341. package/templates/app/src/appUrls.js +19 -19
  342. package/templates/app/src/components/Alert/Alert.js +134 -134
  343. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  344. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  345. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  346. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  347. package/templates/app/src/components/Sample/SampleList.js +61 -61
  348. package/templates/app/src/components/Slider/Slider.css +41 -41
  349. package/templates/app/src/components/Slider/Slider.js +55 -55
  350. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  351. package/templates/app/src/containers/AppContainer/index.js +96 -96
  352. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  353. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  354. package/templates/app/src/containers/DevTools/index.js +10 -10
  355. package/templates/app/src/containers/Header/index.js +67 -67
  356. package/templates/app/src/containers/Header/index.module.css +43 -43
  357. package/templates/app/src/containers/Redirect/index.js +63 -63
  358. package/templates/app/src/containers/Redirector/index.js +47 -47
  359. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  360. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  361. package/templates/app/src/historyChange.js +5 -5
  362. package/templates/app/src/index.html +10 -10
  363. package/templates/app/src/index.js +24 -24
  364. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  365. package/templates/app/src/reducers/alertData.js +11 -11
  366. package/templates/app/src/reducers/index.js +6 -6
  367. package/templates/app/src/reducers/samples.js +19 -19
  368. package/templates/app/src/store/configureStore.dev.js +51 -51
  369. package/templates/app/src/store/configureStore.js +5 -5
  370. package/templates/app/src/store/configureStore.prod.js +26 -26
  371. package/templates/app/src/util/Common.js +5 -5
  372. package/templates/app/src/util/RequestAPI.js +132 -132
  373. package/templates/docs/all.html +250 -250
  374. package/templates/docs/component.html +179 -179
  375. package/templates/docs/components.html +222 -222
  376. package/templates/docs/css/b.min.css +6 -6
  377. package/templates/docs/css/component.css +42 -42
  378. package/templates/docs/css/componentTest.css +6 -6
  379. package/templates/docs/css/hopscotch.css +585 -585
  380. package/templates/docs/css/markdown.css +202 -202
  381. package/templates/docs/css/style.css +988 -988
  382. package/templates/docs/impactReportTemplate.html +154 -154
  383. package/templates/docs/index.html +1664 -1664
  384. package/templates/docs/js/active-line.js +72 -72
  385. package/templates/docs/js/b.min.js +7 -7
  386. package/templates/docs/js/codemirror.js +9680 -9680
  387. package/templates/docs/js/designTokens.js +334 -334
  388. package/templates/docs/js/j.min.js +4 -4
  389. package/templates/docs/js/javascript.js +874 -874
  390. package/templates/docs/js/matchbrackets.js +145 -145
  391. package/unittest/index.html +37 -0
  392. package/lib/plugins/StatsPlugin.js +0 -114
  393. package/packages/client_build_tool/lib/commands/build/index.js +0 -35
  394. package/packages/client_build_tool/lib/commands/build/optionsProcesser.js +0 -40
  395. package/packages/client_build_tool/lib/commands/start/postProcesser.js +0 -10
  396. package/packages/client_build_tool/lib/commands/start/preProcesser.js +0 -10
  397. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/EFCPlugin.js +0 -1
  398. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/getI18nDependency.js +0 -99
  399. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/getI18nModule.js +0 -201
  400. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_postcss_loaders/ExcludePlugin.js +0 -58
  401. package/packages/client_build_tool/lib/shared/bundler/webpack/devServerConfig.js +0 -34
  402. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCopyThirdpartyFile.js +0 -38
  403. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configUglifyCSSPlugin.js +0 -15
  404. package/packages/client_build_tool/lib/shared/bundler/webpack/postcssPlugins.js +0 -36
  405. package/packages/client_build_tool/lib/shared/bundler/webpack/webpack.dev.config.js +0 -17
  406. package/packages/client_build_tool/lib/shared/commands-utlis/doBasicRequiermentCheck.js +0 -16
  407. package/packages/client_build_tool/lib/shared/commands-utlis/spanSync.js +0 -35
  408. package/packages/client_build_tool/lib/shared/schemas/applyValuesToShema.js +0 -37
  409. package/packages/client_build_tool/lib/shared/schemas/defaultConfigValues.js +0 -119
  410. package/packages/client_build_tool/lib/shared/schemas/deprecatedOptionsHandler.js +0 -65
  411. package/packages/client_build_tool/lib/shared/schemas/getCWD.js +0 -23
  412. package/packages/client_build_tool/lib/shared/schemas/oldDefaultConfigValues.js +0 -480
  413. package/packages/client_build_tool/lib/shared/schemas/readOptionsOld.js +0 -152
  414. package/packages/client_build_tool/lib/shared/server/cert/Tsicsezwild-22-23.crt +0 -37
  415. package/packages/client_build_tool/lib/shared/server/cert/Tsicsezwild-22-23.key +0 -27
  416. package/packages/client_build_tool/lib/shared/server/unwanted/devServerUtlis.js +0 -1
  417. package/packages/client_build_tool/lib/shared/server/unwanted/webpackConfig.js +0 -32
  418. /package/packages/client_build_tool/lib/shared/{commands-utlis → commands-utils}/log.js +0 -0
  419. /package/packages/client_build_tool/lib/shared/{commands-utlis → commands-utils}/readArgsFormCommandLine.js +0 -0
  420. /package/packages/client_build_tool/lib/shared/{commands-utlis → commands-utils}/readOptionFormCommandLine.js +0 -0
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ const terser = require('terser');
4
+
5
+ test('remove dead codes and minimize the parameter names', () => {
6
+ const code = `
7
+ const promise = new Promise((resolve, reject) => {
8
+ const res = true;
9
+ if (res) {
10
+ resolve('Resolved!');
11
+ }
12
+ else {
13
+ reject(Error('Error'));
14
+ }
15
+ });
16
+ promise.then((res) => console.log(res), (err) => console.error(err));
17
+ `;
18
+ return terser.minify(code).then(minify => {
19
+ expect(minify.code).toBe('const promise=new Promise(((o,e)=>{o("Resolved!")}));promise.then((o=>console.log(o)),(o=>console.error(o)));');
20
+ });
21
+ });
22
+ test('remove dead codes and minimize the variables', () => {
23
+ const code = `
24
+
25
+ const msg = async function () {
26
+ const msg = await helloWorld();
27
+ console.log('message',msg);
28
+ }
29
+ const msg1 = async () => {
30
+ const msg = await helloWorld();
31
+ console.log('message',msg);
32
+ }
33
+ msg();
34
+ msg1();
35
+ `;
36
+ return terser.minify(code).then(minify => {
37
+ expect(minify.code).toBe('const msg=async function(){const s=await helloWorld();console.log("message",s)},msg1=async()=>{const s=await helloWorld();console.log("message",s)};msg(),msg1();');
38
+ });
39
+ });
40
+ test('minimize the set timeout timer', () => {
41
+ const code = `
42
+ function helloWorld() {
43
+ return new Promise(resolve => {
44
+ setTimeout(() => {
45
+ resolve('Hello World!');
46
+ }, 2000);
47
+ });
48
+ }
49
+ `;
50
+ return terser.minify(code).then(minify => {
51
+ expect(minify.code).toBe('function helloWorld(){return new Promise((e=>{setTimeout((()=>{e("Hello World!")}),2e3)}))}');
52
+ });
53
+ });
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ const terser = require('terser');
4
+
5
+ test('removeComments', () => {
6
+ const code = `
7
+ function add(a, b) {
8
+ return a + b;
9
+ }`;
10
+ return terser.minify(code).then(minify => {
11
+ expect(minify.code).toBe('function add(n,d){return n+d}');
12
+ });
13
+ });
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ const terser = require('terser');
4
+
5
+ test('removeUnusedStrings', () => {
6
+ const code = `
7
+ let age = 7;
8
+
9
+ 'Tommy is ' + age + ' years old.';;
10
+ `;
11
+ return terser.minify(code).then(minify => {
12
+ expect(minify.code).toBe('let age=7;');
13
+ });
14
+ });
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ const terser = require('terser');
4
+
5
+ describe('variable declaration', () => {
6
+ it('check let statement', () => {
7
+ const code = `
8
+ let juiceCount = 5;
9
+ let juiceName = 'apple'`;
10
+ return terser.minify(code).then(minify => {
11
+ expect(minify.code).toBe('let juiceCount=5,juiceName="apple";');
12
+ });
13
+ });
14
+ it('check var statement', () => {
15
+ const code = `
16
+ var juiceCount = 5;
17
+ var juiceName = 'apple'`;
18
+ return terser.minify(code).then(minify => {
19
+ expect(minify.code).toBe('var juiceCount=5,juiceName="apple";');
20
+ });
21
+ });
22
+ it('check const statement', () => {
23
+ const code = `
24
+ const juiceCount = 5;
25
+ const juiceName = 'apple'`;
26
+ return terser.minify(code).then(minify => {
27
+ expect(minify.code).toBe('const juiceCount=5,juiceName="apple";');
28
+ });
29
+ });
30
+ });
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.entryConfig = entryConfig;
7
+
8
+ var _constants = require("../../constants");
9
+
10
+ function entryConfig(options) {
11
+ const {
12
+ hasEFC,
13
+ entryFile,
14
+ entryPointName
15
+ } = options.efc;
16
+ const {
17
+ entryFile: mainEntry
18
+ } = options.app;
19
+ const entry = {
20
+ main: (0, _constants.joinWithAppPath)(mainEntry)
21
+ };
22
+
23
+ if (hasEFC && entryFile) {
24
+ entry[entryPointName] = (0, _constants.joinWithAppPath)(entryFile);
25
+ }
26
+
27
+ return entry;
28
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.externals = externals;
7
+
8
+ // eslint-disable-next-line no-unused-vars
9
+ function externals(options) {
10
+ return {
11
+ ZC: '$ZC'
12
+ };
13
+ }
@@ -7,24 +7,21 @@ exports.getCSSLoaders = getCSSLoaders;
7
7
 
8
8
  var _miniCssExtractPlugin = _interopRequireDefault(require("mini-css-extract-plugin"));
9
9
 
10
- var _getCssLoaderOptions = require("./loaderConfigs/getCssLoaderOptions");
10
+ var _configPostCssLoader = require("./loaderConfigs/configPostCssLoader");
11
11
 
12
- var _postcssPlugins = require("./postcssPlugins");
12
+ var _getCssLoaderOptions = require("./loaderConfigs/getCssLoaderOptions");
13
13
 
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
16
16
  function getCSSLoaders(options) {
17
- const neededPostCssPlugins = (0, _postcssPlugins.postcssPlugins)(options);
18
17
  const cssLoaderOptions = (0, _getCssLoaderOptions.getCssLoaderOptions)(options);
19
- return [_miniCssExtractPlugin.default.loader, {
20
- loader: 'css-loader',
21
- options: cssLoaderOptions
22
- }, neededPostCssPlugins.length && {
23
- loader: 'postcss-loader',
18
+ return [{
19
+ loader: _miniCssExtractPlugin.default.loader,
24
20
  options: {
25
- postcssOptions: {
26
- plugins: neededPostCssPlugins
27
- }
21
+ publicPath: '../'
28
22
  }
29
- }].filter(Boolean);
23
+ }, {
24
+ loader: 'css-loader',
25
+ options: cssLoaderOptions
26
+ }, (0, _configPostCssLoader.configPostCssLoader)(options)].filter(Boolean);
30
27
  }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.devtoolConfig = devtoolConfig;
7
+
8
+ function devtoolConfig(options) {
9
+ return options.devtool;
10
+ }
@@ -8,7 +8,5 @@ exports.assetLoaders = assetLoaders;
8
8
  var _configsAssetsLoaders = require("./configsAssetsLoaders");
9
9
 
10
10
  function assetLoaders(options) {
11
- // const { enableChunkHash } = options;
12
- // const nameTemplate = createNameTemplate(enableChunkHash);
13
11
  return [(0, _configsAssetsLoaders.configImageLoader)(options), (0, _configsAssetsLoaders.configFontLoader)(options), (0, _configsAssetsLoaders.configSVGLoader)(options), (0, _configsAssetsLoaders.configAudioLoader)(options), (0, _configsAssetsLoaders.configVideoLoader)(options)];
14
12
  }
@@ -4,20 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.babelLoaderConfig = babelLoaderConfig;
7
- const supportedBrowserVersions = ['last 3 Chrome versions', 'last 3 Firefox versions', 'last 3 Edge versions', 'last 3 Safari versions'];
7
+
8
+ var _babelWebConfig = require("../../../babel/babelWebConfig");
8
9
 
9
10
  function babelLoaderConfig(options) {
11
+ const babelConfig = (0, _babelWebConfig.babelWebConfig)(options);
10
12
  return {
11
13
  loader: 'babel-loader',
12
- options: {
13
- presets: [[require.resolve('@babel/preset-env'), {
14
- modules: false,
15
- useBuiltIns: 'usage',
16
- corejs: 3,
17
- targets: {
18
- browsers: supportedBrowserVersions
19
- }
20
- }], require.resolve('@babel/preset-react')],
14
+ options: { ...babelConfig,
21
15
  cacheDirectory: true
22
16
  }
23
17
  };
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.checkIsPatternsMatchFilename = checkIsPatternsMatchFilename;
7
+ exports.modifyAsExclude = modifyAsExclude;
8
+
9
+ var _ignore = _interopRequireDefault(require("ignore"));
10
+
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+
13
+ /**
14
+ @param {Array<String>} patterns:
15
+ // include src folder, include deskapp folder, exclude node modules
16
+ [
17
+ "src",
18
+ "deskapp",
19
+ "!node_modules"
20
+ ]
21
+ @param {String} filename :
22
+ filename : 'D:/MyWork/..../desk_client_app/supportapp/src/components/Avatar/Avatar.module.css,
23
+
24
+ @return {Boolean} : true or false
25
+ */
26
+ function checkIsPatternsMatchFilename(patterns, filename) {
27
+ if (typeof patterns === 'undefined') {
28
+ return true;
29
+ }
30
+
31
+ if (typeof patterns === 'function') {
32
+ return patterns(filename);
33
+ }
34
+
35
+ if (typeof patterns === 'string') {
36
+ // eslint-disable-next-line no-param-reassign
37
+ patterns = [patterns];
38
+ }
39
+
40
+ if (Array.isArray(patterns)) {
41
+ return patterns.length ? (0, _ignore.default)({
42
+ allowRelativePaths: true
43
+ }).add(patterns).ignores(filename) : true;
44
+ } // eslint-disable-next-line no-throw-literal
45
+
46
+
47
+ throw `UnKnown pattern Error ${JSON.stringify(patterns)}`;
48
+ }
49
+
50
+ function modifyAsExclude(patterns) {
51
+ return patterns.map(pattern => pattern[0] === '!' ? pattern.slice(1) : `!${pattern}`);
52
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.configPostCssLoader = configPostCssLoader;
7
+
8
+ var _path = _interopRequireDefault(require("path"));
9
+
10
+ var _filterPluginsAllowedForSpecficFile = require("../../../postcss/filterPluginsAllowedForSpecficFile");
11
+
12
+ var _getAllowedPostCssPlugins = require("../../../postcss/getAllowedPostCssPlugins");
13
+
14
+ var _constants = require("../../../constants");
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ // import EmptyPlugin from '../custom_postcss_plugins/EmptyPlugin';
19
+ function configPostCssLoader(options) {
20
+ const pluginsOptions = options.css.plugins;
21
+ const enabledPlugins = (0, _filterPluginsAllowedForSpecficFile.getEnabledPlugins)(pluginsOptions);
22
+ const getAllowedPostCssPlugins = (0, _getAllowedPostCssPlugins.postcssPluginGetter)(options);
23
+
24
+ function configPostCssPlugins(params) {
25
+ const filename = _path.default.relative(_constants.appPath, params.resourcePath);
26
+
27
+ const allowedPostCssPlugins = getAllowedPostCssPlugins(filename);
28
+ return allowedPostCssPlugins;
29
+ }
30
+
31
+ return enabledPlugins.length && {
32
+ loader: 'postcss-loader',
33
+ options: {
34
+ postcssOptions: configPostCssPlugins
35
+ }
36
+ };
37
+ }
@@ -47,14 +47,14 @@ function createAssetLoader({
47
47
 
48
48
  return conf;
49
49
  }
50
- /**
51
- * @typedef {Object} LoaderConfig
52
- * @property {Number} enableChunkHash
50
+ /**
51
+ * @typedef {Object} LoaderConfig
52
+ * @property {Number} enableChunkHash
53
53
  */
54
54
 
55
- /**
56
- * @param {LoaderConfig} options
57
- * @returns
55
+ /**
56
+ * @param {LoaderConfig} options
57
+ * @returns
58
58
  */
59
59
 
60
60
 
@@ -95,44 +95,44 @@ function configVideoLoader(options) {
95
95
  nameTemplate: (0, _nameTemplates.nameTemplates)('video', options)
96
96
  });
97
97
  }
98
- /*
99
- export function createNameTemplate(enableChunkHash) {
100
- const ext = `${enableChunkHash ? ".[hash:20]" : ""}.[ext]`;
101
- return `[name]${ext}`;
102
- }
103
-
104
- export function createImageAndFontsAndSVGLoaders(enableChunkHash) {
105
- const nameTemplate = createNameTemplate(enableChunkHash);
106
- return [
107
- configImageLoader(nameTemplate),
108
- configFontLoader(nameTemplate),
109
- configSVGLoader(nameTemplate),
110
- configAudioLoader(nameTemplate)
111
- ];
112
- }
98
+ /*
99
+ export function createNameTemplate(enableChunkHash) {
100
+ const ext = `${enableChunkHash ? ".[hash:20]" : ""}.[ext]`;
101
+ return `[name]${ext}`;
102
+ }
103
+
104
+ export function createImageAndFontsAndSVGLoaders(enableChunkHash) {
105
+ const nameTemplate = createNameTemplate(enableChunkHash);
106
+ return [
107
+ configImageLoader(nameTemplate),
108
+ configFontLoader(nameTemplate),
109
+ configSVGLoader(nameTemplate),
110
+ configAudioLoader(nameTemplate)
111
+ ];
112
+ }
113
113
  */
114
114
 
115
- /*
116
- export function createLoaderOptionObject(
117
- loaderName,
118
- nameTemplate,
119
- fallback,
120
- limit = 1000
121
- ) {
122
- return {
123
- loader: loaderName,
124
- options: {
125
- limit,
126
- name: nameTemplate,
127
- fallback
128
- }
129
- };
130
- }
131
-
132
- function configLoaderObject(filter, loaderAndOptions) {
133
- return {
134
- test: filter,
135
- use: loaderAndOptions
136
- };
137
- }
115
+ /*
116
+ export function createLoaderOptionObject(
117
+ loaderName,
118
+ nameTemplate,
119
+ fallback,
120
+ limit = 1000
121
+ ) {
122
+ return {
123
+ loader: loaderName,
124
+ options: {
125
+ limit,
126
+ name: nameTemplate,
127
+ fallback
128
+ }
129
+ };
130
+ }
131
+
132
+ function configLoaderObject(filter, loaderAndOptions) {
133
+ return {
134
+ test: filter,
135
+ use: loaderAndOptions
136
+ };
137
+ }
138
138
  */
@@ -7,52 +7,38 @@ exports.default = void 0;
7
7
 
8
8
  var _crypto = require("crypto");
9
9
 
10
- var _os = _interopRequireDefault(require("os"));
11
-
12
10
  var _path = _interopRequireDefault(require("path"));
13
11
 
12
+ var _checkIsPatternsMatchFilename = require("./checkIsPatternsMatchFilename");
13
+
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
16
- function getHash(str) {
17
- return (0, _crypto.createHash)('md5').update(str).digest();
16
+ function getHash(str, length) {
17
+ return (0, _crypto.createHash)('md5').update(str).digest('hex').slice(0, length);
18
18
  }
19
19
 
20
- const isWindows = _os.default.platform().toLowerCase() === 'win32';
21
-
22
- const isFileEligibleToHashClass = (resourcePath, machineBasedPatterns) => {
23
- if (!resourcePath.includes('node_modules')) {
24
- return false;
25
- }
20
+ const defaultSelectorBlob = '[prefix]-[filename]-[local]';
26
21
 
27
- return machineBasedPatterns.some(p => resourcePath.includes(p));
28
- };
22
+ function getSuitableBlob(customizations = [], filename) {
23
+ const custom = customizations.find(({
24
+ enable,
25
+ patterns
26
+ }) => enable && (0, _checkIsPatternsMatchFilename.checkIsPatternsMatchFilename)(patterns, filename));
27
+ return custom && custom.blob || defaultSelectorBlob;
28
+ }
29
29
 
30
30
  var _default = options => {
31
31
  const {
32
32
  classNameOptions
33
33
  } = options.css;
34
34
  const {
35
- cssHashSelectors,
36
- classNamePrefix
35
+ classNamePrefix,
36
+ customizations
37
37
  } = classNameOptions;
38
- let canApplyHashClassName = null;
39
-
40
- if (cssHashSelectors) {
41
- const {
42
- filenames,
43
- packages
44
- } = cssHashSelectors;
45
- const machineBasedPatterns = isWindows ? packages.map(e => e.replace(/\//g, '\\')) : packages;
46
-
47
- canApplyHashClassName = function canApplyHashClassName(resourcePath, cleanFileName) {
48
- return isFileEligibleToHashClass(resourcePath, machineBasedPatterns) || filenames.indexOf(cleanFileName);
49
- };
50
- }
51
-
52
38
  return (context, localIdentName, localName) => {
53
- // NOTE: in build macine we use date as folder path.
39
+ // NOTE: in build machine we use date as folder path.
54
40
  // So every time we create new build there is path will alway different
55
- // in order to minmaze that problem we try in relative path;
41
+ // So, in order to minimize that problem we try in relative path;
56
42
  // console.log('context.resourcePath', context.resourcePath, context);
57
43
  // let contextResourcePath = context.resourcePath;
58
44
  const {
@@ -62,21 +48,11 @@ var _default = options => {
62
48
 
63
49
  const relativePath = _path.default.relative(rootContext, resourcePath);
64
50
 
65
- if (resourcePath.endsWith('.plain.css')) {
66
- return localName;
67
- }
68
-
69
51
  const fileNameWithoutExt = _path.default.parse(relativePath).name;
70
52
 
71
- const cleanFileName = fileNameWithoutExt.replace(/-/g, '_').toLowerCase(); // css file has casesensitive selector issue so can't toLowerCase
72
- // let local = localName.toLowerCase()
73
-
74
- if (canApplyHashClassName && canApplyHashClassName(resourcePath, cleanFileName)) {
75
- const h = getHash(`${relativePath}-${localName}`, 10);
76
- return `${classNamePrefix}${h}`;
77
- }
78
-
79
- return `${classNamePrefix}-${cleanFileName}-${localName}`;
53
+ const cleanFileName = fileNameWithoutExt.replace(/-/g, '_').toLowerCase();
54
+ const suitableBlob = getSuitableBlob(customizations, resourcePath);
55
+ return suitableBlob.replaceAll('[local]', localName).replaceAll('[prefix]', classNamePrefix).replaceAll('[filename]', cleanFileName).replaceAll('[hash]', getHash(`${relativePath}-${localName}`, 10));
80
56
  };
81
57
  };
82
58
 
@@ -10,11 +10,9 @@ var _cssClassNameGenerate = _interopRequireDefault(require("./cssClassNameGenera
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
 
12
12
  function getCssLoaderOptions(options) {
13
- // const { classNameOptions } = options.css;
14
13
  const cssLoaderOptions = {
15
14
  importLoaders: 1,
16
15
  modules: {
17
- // localIdentName: classNameOptions.classNameBlob,
18
16
  getLocalIdent: (0, _cssClassNameGenerate.default)(options)
19
17
  },
20
18
  sourceMap: true
@@ -77,14 +77,14 @@ function pitch(request) {
77
77
  globalObject: 'self'
78
78
  };
79
79
  workerContext.compiler = this._compilation.createChildCompiler(`worker-loader ${request}`, workerContext.options);
80
- /*
81
- new WebWorkerTemplatePlugin().apply(workerContext.compiler);
82
-
83
- if (compilerOptions.externals) {
84
- new ExternalsPlugin(
85
- getExternalsType(compilerOptions),
86
- compilerOptions.externals
87
- ).apply(workerContext.compiler);
80
+ /*
81
+ new WebWorkerTemplatePlugin().apply(workerContext.compiler);
82
+
83
+ if (compilerOptions.externals) {
84
+ new ExternalsPlugin(
85
+ getExternalsType(compilerOptions),
86
+ compilerOptions.externals
87
+ ).apply(workerContext.compiler);
88
88
  } */
89
89
 
90
90
  new _SingleEntryPlugin.default(this.context, `!!${request}`, _path.default.parse(this.resourcePath).name).apply(workerContext.compiler);
@@ -9,6 +9,8 @@ var _nameTemplates = require("./common/nameTemplates");
9
9
 
10
10
  var _hashUtils = require("./custom_plugins/I18nSplitPlugin/utils/hashUtils");
11
11
 
12
+ var _configCSSMinifierPlugin = require("./pluginConfigs/configCSSMinifierPlugin");
13
+
12
14
  var _splitChunksConfig = require("./splitChunksConfig");
13
15
 
14
16
  function optimizationConfig(options) {
@@ -20,17 +22,19 @@ function optimizationConfig(options) {
20
22
  } = options.i18nChunkSplit;
21
23
  const i18nChunkFilename = (0, _nameTemplates.nameTemplates)('i18nchunkjs', options);
22
24
  const chunkFilenameHasContentHash = (0, _hashUtils.hasContentHash)(i18nChunkFilename);
23
- /**
24
- * NOTE: we only need multiple runtime files when we use contentHash
25
- * other wise we don't need multiple runtime files based locale
26
- * that's why we added chunkSplitEnable && chunkFilenameHasContentHash logic
25
+ /**
26
+ * NOTE: we only need multiple runtime files when we use contentHash
27
+ * other wise we don't need multiple runtime files based locale
28
+ * that's why we added chunkSplitEnable && chunkFilenameHasContentHash logic
27
29
  */
28
30
 
29
31
  const suffix = // chunkSplitEnable ? '_[locale]' : '';
30
32
  chunkSplitEnable && chunkFilenameHasContentHash ? '_[locale]' : '';
31
- const char = changeRuntimeChunkChar ? '-' : '~';
33
+ const char = changeRuntimeChunkChar;
32
34
  return {
33
35
  splitChunks: (0, _splitChunksConfig.splitChunksConfig)(options),
36
+ minimizer: [// For webpack@5 you can use the `...` syntax to extend existing minimizers (i.e. `terser-webpack-plugin`), uncomment the next line
37
+ '...', (0, _configCSSMinifierPlugin.configCSSMinifierPlugin)(options)].filter(Boolean),
34
38
  moduleIds: 'named',
35
39
  runtimeChunk: {
36
40
  name: entrypoint => `runtime${char}${entrypoint.name}${suffix}`
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.configBundleAnalyzer = configBundleAnalyzer;
7
+
8
+ var _webpackBundleAnalyzer = require("webpack-bundle-analyzer");
9
+
10
+ var _modeUtils = require("../common/modeUtils");
11
+
12
+ /* eslint-disable no-use-before-define */
13
+ function configBundleAnalyzer(options) {
14
+ const mode = (0, _modeUtils.getWebpackMode)(options);
15
+
16
+ if ((0, _modeUtils.isProductionMode)(mode) && options.bundleAnalyze) {
17
+ const bundleAnalyzerOptions = getBundleAnalyzerOptions(options);
18
+ return new _webpackBundleAnalyzer.BundleAnalyzerPlugin(bundleAnalyzerOptions);
19
+ }
20
+
21
+ return null;
22
+ } // eslint-disable-next-line no-unused-vars
23
+
24
+
25
+ function getBundleAnalyzerOptions(options) {
26
+ return {
27
+ analyzerMode: 'static',
28
+ generateStatsFile: true,
29
+ openAnalyzer: false,
30
+ statsOptions: {
31
+ source: false,
32
+ normal: true,
33
+ chunks: false,
34
+ chunkGroups: false,
35
+ module: false,
36
+ assets: true,
37
+ assetsSort: 'name'
38
+ }
39
+ };
40
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.configCSSMinifierPlugin = configCSSMinifierPlugin;
7
+
8
+ var _cssMinimizerWebpackPlugin = _interopRequireDefault(require("css-minimizer-webpack-plugin"));
9
+
10
+ var _modeUtils = require("../common/modeUtils");
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ // import UglifyCSSPlugin from '../custom_plugins/UglifyCSSPlugin';
15
+ // eslint-disable-next-line no-unused-vars
16
+ function configCSSMinifierPlugin(options) {
17
+ if ((0, _modeUtils.isNotProduction)(options)) {
18
+ return null;
19
+ } // return null;
20
+ // return new UglifyCSSPlugin();
21
+
22
+
23
+ return new _cssMinimizerWebpackPlugin.default();
24
+ }