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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (450) 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 +1445 -1435
  7. package/bin/cli.js +466 -458
  8. package/docs/AutoPrefixer.md +27 -0
  9. package/docs/ComposeMinification.md +13 -13
  10. package/docs/CustomChunks.md +29 -29
  11. package/docs/DevServerPort.md +39 -39
  12. package/docs/DevStart.md +18 -18
  13. package/docs/HoverActive.md +12 -12
  14. package/docs/InstallNode.md +28 -28
  15. package/docs/MarkdownParser.md +17 -17
  16. package/docs/ReactLive.md +13 -13
  17. package/docs/SelectorWeight.md +8 -8
  18. package/docs/TODOS.md +10 -10
  19. package/docs/ValueReplacer.md +86 -86
  20. package/docs/VariableConversion.md +729 -729
  21. package/docs/patternFiltering.md +56 -56
  22. package/docs/warnings_while_install.txt +35 -35
  23. package/files/eslintrc.js +62 -62
  24. package/files/prettierrc.js +3 -3
  25. package/lib/configs/webpack.css.umd.config.js +4 -4
  26. package/lib/configs/webpack.dev.config.js +3 -4
  27. package/lib/configs/webpack.docs.config.js +2 -4
  28. package/lib/configs/webpack.impact.config.js +2 -0
  29. package/lib/configs/webpack.prod.config.js +4 -5
  30. package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
  31. package/lib/loaderUtils/getCSSLoaders.js +57 -53
  32. package/lib/loaders/workerLoader.js +9 -9
  33. package/lib/pluginUtils/getDevPlugins.js +5 -5
  34. package/lib/pluginUtils/getProdPlugins.js +5 -5
  35. package/lib/plugins/CustomAttributePlugin.md +35 -35
  36. package/lib/plugins/EFCPlugin.md +6 -6
  37. package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
  38. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +43 -72
  39. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
  40. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
  41. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
  42. package/lib/plugins/I18nSplitPlugin/README.md +25 -25
  43. package/lib/plugins/I18nSplitPlugin/index.js +57 -57
  44. package/lib/plugins/ResourceHintsPlugin.js +17 -17
  45. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
  46. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  47. package/lib/plugins/SelectorPlugin.js +29 -29
  48. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  49. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  50. package/lib/plugins/VariableConversionCollector.js +59 -59
  51. package/lib/plugins/utils/fileHandling.js +6 -5
  52. package/lib/plugins/variableConvertorUtils.js +9 -9
  53. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  54. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  55. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  56. package/lib/postcss-plugins/hoverActivePlugin.js +3 -3
  57. package/lib/schemas/index.js +35 -4
  58. package/lib/sh/pre-commit.sh +34 -34
  59. package/lib/sh/reportPublish.sh +45 -45
  60. package/lib/utils/autoprefixer.js +52 -0
  61. package/lib/utils/buildstats.html +148 -148
  62. package/lib/utils/cssClassNameGenerate.js +13 -13
  63. package/lib/utils/object-manipulation.js +5 -5
  64. package/lib/utils/resultSchema.json +73 -73
  65. package/npm-shrinkwrap.json +14483 -33485
  66. package/npm8.md +9 -9
  67. package/package.json +124 -126
  68. package/packages/client_build_tool/lib/allCommandsConfigs.js +25 -0
  69. package/packages/client_build_tool/lib/commands/build/commandExecutor.js +17 -0
  70. package/packages/client_build_tool/lib/commands/build/config.js +12 -0
  71. package/packages/client_build_tool/lib/commands/build/errorHander.js +10 -0
  72. package/packages/client_build_tool/lib/commands/build/optionsProcessor.js +45 -0
  73. package/packages/client_build_tool/lib/commands/buildEs/commandExecutor.js +33 -0
  74. package/packages/client_build_tool/lib/commands/buildEs/config.js +12 -0
  75. package/packages/client_build_tool/lib/commands/buildLib/commandExecutor.js +33 -0
  76. package/packages/client_build_tool/lib/commands/buildLib/config.js +12 -0
  77. package/packages/client_build_tool/lib/commands/mockserver/commandExecutor.js +43 -0
  78. package/packages/client_build_tool/lib/commands/mockserver/config.js +12 -0
  79. package/packages/client_build_tool/lib/commands/start/commandExecutor.js +12 -0
  80. package/packages/client_build_tool/lib/commands/start/config.js +12 -0
  81. package/packages/client_build_tool/lib/commands/start/deprecationHandler.js +10 -0
  82. package/packages/client_build_tool/lib/commands/start/errorHander.js +10 -0
  83. package/packages/client_build_tool/lib/commands/start/optionsProcessor.js +40 -0
  84. package/packages/client_build_tool/lib/commands/start/postProcessor.js +10 -0
  85. package/packages/client_build_tool/lib/commands/start/preProcessor.js +10 -0
  86. package/packages/client_build_tool/lib/commands/template/commandExecutor.js +32 -0
  87. package/packages/client_build_tool/lib/commands/template/config.js +12 -0
  88. package/packages/client_build_tool/lib/commands/version/commandExecutor.js +14 -0
  89. package/packages/client_build_tool/lib/commands/version/config.js +12 -0
  90. package/packages/client_build_tool/lib/commands/version/errorHander.js +10 -0
  91. package/packages/client_build_tool/lib/commandsRouter.js +76 -0
  92. package/packages/client_build_tool/lib/index.js +12 -0
  93. package/packages/client_build_tool/lib/logger.js +34 -0
  94. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/otherTestCases.test.js +234 -0
  95. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/passingDifferentDataTypesToSchema.test.js +103 -0
  96. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/passingEmptyObjects.test.js +41 -0
  97. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertArray.test.js +68 -0
  98. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertNumber.test.js +68 -0
  99. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertObject.test.js +141 -0
  100. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertString.test.js +68 -0
  101. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertUndefinedAndNull.test.js +132 -0
  102. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertArray.test.js +71 -0
  103. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertNumber.test.js +71 -0
  104. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertObject.test.js +73 -0
  105. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertString.test.js +71 -0
  106. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertUndefinedAndNull.test.js +138 -0
  107. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/index.js +34 -0
  108. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/isObject.js +10 -0
  109. package/packages/client_build_tool/lib/schemas/applyValuesToSchema/isValid.js +14 -0
  110. package/packages/client_build_tool/lib/schemas/cliArgsToObject.js +39 -0
  111. package/packages/client_build_tool/lib/schemas/defaultConfigValues.js +244 -0
  112. package/packages/client_build_tool/lib/schemas/defaultConfigValuesOnly.js +161 -0
  113. package/packages/client_build_tool/lib/schemas/deprecatedOptionsHandler.js +67 -0
  114. package/packages/client_build_tool/lib/schemas/getNpmVersion.js +22 -0
  115. package/packages/client_build_tool/lib/schemas/giveDefaultValue.js +18 -0
  116. package/packages/client_build_tool/lib/schemas/npmConfigToObject.js +35 -0
  117. package/packages/client_build_tool/lib/schemas/readOptions.js +54 -0
  118. package/packages/client_build_tool/lib/schemas/readOptionsForConfigFile.js +42 -0
  119. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Map.test.js +15 -0
  120. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/MathAndNumberMethod.test.js +30 -0
  121. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/ObjectAndModules.test.js +47 -0
  122. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Sets.test.js +18 -0
  123. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Symbol.test.js +25 -0
  124. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/arrowFunction.test.js +34 -0
  125. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/block-scoping.test.js +18 -0
  126. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/classes.test.js +55 -0
  127. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/defaultParameterValues.test.js +18 -0
  128. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/extraFeatures.test.js +82 -0
  129. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/forOf.test.js +20 -0
  130. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/promise.test.js +22 -0
  131. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/spreadOperator.test.js +20 -0
  132. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/spreadParams.test.js +24 -0
  133. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/stringAndArrayMethods.test.js +67 -0
  134. package/packages/client_build_tool/lib/shared/babel/__test__/es2015/variables.test.js +21 -0
  135. package/packages/client_build_tool/lib/shared/babel/__test__/es2016/array-includes.test.js +13 -0
  136. package/packages/client_build_tool/lib/shared/babel/__test__/es2016/exponentationOperator.test.js +20 -0
  137. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/asyncAndawait.test.js +23 -0
  138. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-entries.test.js +24 -0
  139. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-getOwnproperties.test.js +24 -0
  140. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-values.test.js +24 -0
  141. package/packages/client_build_tool/lib/shared/babel/__test__/es2017/stringMethods.test.js +20 -0
  142. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/asynchronous-iterator.test.js +19 -0
  143. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/object-rest-spread.test.js +24 -0
  144. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/promise-finally.test.js +26 -0
  145. package/packages/client_build_tool/lib/shared/babel/__test__/es2018/regularExpressions.test.js +35 -0
  146. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/Json.stringify.test.js +21 -0
  147. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/arrayMethods.test.js +31 -0
  148. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/object-fromEntriesMethod.test.js +13 -0
  149. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/optionalCatchBinding.test.js +23 -0
  150. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/revisedFunctionToString.test.js +17 -0
  151. package/packages/client_build_tool/lib/shared/babel/__test__/es2019/trim-startAndend-method.test.js +20 -0
  152. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/AssignmentOperator.test.js +27 -0
  153. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/Dynamic-Import.test.js +19 -0
  154. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/NullishOperator.test.js +15 -0
  155. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/bigInt.test.js +13 -0
  156. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/chainOperator.test.js +17 -0
  157. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/export-namespace-from.test.js +12 -0
  158. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/promiseAllSettledMathod.test.js +17 -0
  159. package/packages/client_build_tool/lib/shared/babel/__test__/es2020/stringMatchMethod.test.js +13 -0
  160. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/NumericSeparator.test.js +23 -0
  161. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/logicalOperatorAssignments.test.js +25 -0
  162. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/promiseAny.test.js +16 -0
  163. package/packages/client_build_tool/lib/shared/babel/__test__/es2021/stringReplaceMethod.test.js +16 -0
  164. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/Array-atMethod.test.js +13 -0
  165. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/ObjectKeyCheck.test.js +27 -0
  166. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/ObjecthasOwnMethod.test.js +19 -0
  167. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/RegexMatchIndices.test.js +20 -0
  168. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/String-atMethod.test.js +15 -0
  169. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/error.Cause.test.js +23 -0
  170. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/keysCheckinPrivateFields.test.js +27 -0
  171. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/privateMethodsAndFields.test.js +23 -0
  172. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/staticFieldsAndMethod.test.js +54 -0
  173. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/topLevelAwait.test.js +11 -0
  174. package/packages/client_build_tool/lib/shared/babel/__test__/es2022/weakRef.test.js +17 -0
  175. package/packages/client_build_tool/lib/shared/babel/__test__/utilities.js +28 -0
  176. package/packages/client_build_tool/lib/shared/babel/babelWebConfig.js +49 -0
  177. package/packages/client_build_tool/lib/shared/babel/runBabelForJSFile.js +24 -0
  178. package/packages/client_build_tool/lib/shared/bundler/webpack/common/decidePublicPath.js +42 -0
  179. package/packages/client_build_tool/lib/shared/bundler/webpack/common/libAlias.js +31 -0
  180. package/packages/client_build_tool/lib/shared/bundler/webpack/common/modeUtils.js +31 -0
  181. package/packages/client_build_tool/lib/shared/bundler/webpack/common/nameTemplates.js +70 -0
  182. package/packages/client_build_tool/lib/shared/bundler/webpack/common/resourceBasedPublicPath.js +21 -0
  183. package/packages/client_build_tool/lib/shared/bundler/webpack/cssLoaders.js +16 -0
  184. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/AddManifestJson/addFilesToManifestJson.js +19 -0
  185. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/AddManifestJson/utilities.js +18 -0
  186. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/CdnChangePlugin.js +102 -0
  187. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/EFCTemplatePlugin.js +112 -0
  188. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ContributionGuide.md +11 -0
  189. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nFilesEmitPlugin.js +172 -0
  190. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nKeysIdentifer.js +76 -0
  191. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nRuntimeDealerPlugin.js +203 -0
  192. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nSplit.md +95 -0
  193. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/LocaleChunkAssetsStore.js +73 -0
  194. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ModulesI18nKeysStore.js +88 -0
  195. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/README.md +25 -0
  196. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/constants.js +29 -0
  197. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/createHash.js +24 -0
  198. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/getI18nLoadingRuntimeModule.js +76 -0
  199. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/index.js +39 -0
  200. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/iterateModulesInChunk.js +50 -0
  201. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/optionsHandler.js +68 -0
  202. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/pathCreator.js +23 -0
  203. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/readI18nValues.js +29 -0
  204. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateFileName.js +43 -0
  205. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateHashHelpers.js +77 -0
  206. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/classesAndObject.test.js +56 -0
  207. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/conditionalOperation.test.js +154 -0
  208. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/function.test.js +89 -0
  209. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/function2.test.js +71 -0
  210. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/loop.test.js +112 -0
  211. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/minifyBooleanValues.test.js +43 -0
  212. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/minimizeVariableNames.test.js +45 -0
  213. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/promise.test.js +53 -0
  214. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/removeCommentsAndEmptySpace.test.js +13 -0
  215. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/removeUnusedStrings.test.js +14 -0
  216. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/variableDeclaration.test.js +30 -0
  217. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/collectI18nKeys.js +66 -0
  218. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/getChunkModules.js +13 -0
  219. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/hashUtils.js +19 -0
  220. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/index.js +31 -0
  221. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/propertiesUtils.js +129 -0
  222. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/InitialHtmlPlugin.js +54 -0
  223. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/addFilesNamesToManifestJson.test.js +51 -0
  224. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/createInitialEntries.test.js +95 -0
  225. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/removeHashFromFileName.test.js +91 -0
  226. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/addFilesNamesToManifestJson.js +24 -0
  227. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createInitialEntries.js +17 -0
  228. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createManifestJson.js +35 -0
  229. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/findInitialFileNames.js +18 -0
  230. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/index.js +44 -0
  231. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/removeHashFromFileName.js +18 -0
  232. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RTLSplitPlugin.js +1 -0
  233. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ResourceHintsPlugin.js +165 -0
  234. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/OverwriteCssPathForRTL.js +62 -0
  235. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtlCssPlugin.js +84 -0
  236. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtrSplit.md +34 -0
  237. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/replaceCssDirTemplate.js +27 -0
  238. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/classHandling.js +20 -0
  239. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/index.js +78 -0
  240. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/selectorWeightPrefixAdder.js +51 -0
  241. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/windowsModification.js +16 -0
  242. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ServiceWorkerPlugin.js +110 -0
  243. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SourceMapPlugin/index.js +38 -0
  244. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/uglifyCss1.test.js +74 -0
  245. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/uglifycss.test.js +64 -0
  246. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/utilities.js +28 -0
  247. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/index.js.js +49 -0
  248. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/ErrorHandler.js +62 -0
  249. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/index.js +361 -0
  250. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/emitAsset.js +14 -0
  251. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/getInitialAssetsFuncTemplate.js +57 -0
  252. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/getInitialI18nAssetsArrayStr.js +87 -0
  253. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/classesAndObject.test.js +56 -0
  254. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/conditionalOperation.test.js +154 -0
  255. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/function.test.js +89 -0
  256. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/function2.test.js +71 -0
  257. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/loop.test.js +112 -0
  258. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/minifyBooleanValues.test.js +43 -0
  259. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/minimizeVariableNames.test.js +45 -0
  260. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/promise.test.js +53 -0
  261. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/removeCommentsAndEmptySpace.test.js +13 -0
  262. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/removeUnusedStrings.test.js +14 -0
  263. package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/variableDeclaration.test.js +30 -0
  264. package/packages/client_build_tool/lib/shared/bundler/webpack/entryConfig.js +28 -0
  265. package/packages/client_build_tool/lib/shared/bundler/webpack/externals.js +13 -0
  266. package/packages/client_build_tool/lib/shared/bundler/webpack/getCSSLoaders.js +27 -0
  267. package/packages/client_build_tool/lib/shared/bundler/webpack/getSourceMapType.js +10 -0
  268. package/packages/client_build_tool/lib/shared/bundler/webpack/jsLoaders.js +17 -0
  269. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/assetLoaders.js +12 -0
  270. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/babelLoaderConfig.js +18 -0
  271. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/checkIsPatternsMatchFilename.js +52 -0
  272. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configHtmlTemplateLoader.js +18 -0
  273. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configPostCssLoader.js +37 -0
  274. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configWebWorkerLoader.js +21 -0
  275. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configsAssetsLoaders.js +138 -0
  276. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/cssClassNameGenerate.js +59 -0
  277. package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/getCssLoaderOptions.js +21 -0
  278. package/packages/client_build_tool/lib/shared/bundler/webpack/loaders/workerLoader.js +133 -0
  279. package/packages/client_build_tool/lib/shared/bundler/webpack/optimizationConfig.js +43 -0
  280. package/packages/client_build_tool/lib/shared/bundler/webpack/outputConfig.js +28 -0
  281. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configBundleAnalyzer.js +40 -0
  282. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCSSMinifierPlugin.js +24 -0
  283. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCdnChangePlugin.js +27 -0
  284. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCopyPublicFolders.js +80 -0
  285. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configEFCTemplatePlugin.js +46 -0
  286. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configEnvVariables.js +27 -0
  287. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configHtmlWebpackPlugin.js +56 -0
  288. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configI18nSplitPlugin.js +41 -0
  289. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configIgnorePlugin.js +16 -0
  290. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configManifestJsonPlugin.js +32 -0
  291. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configMiniCSSExtractPlugin.js +23 -0
  292. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configProgressPlugin.js +24 -0
  293. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configResourceHintsPlugin.js +19 -0
  294. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configRtlCssPlugin.js +27 -0
  295. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configSelectorWeightPlugin.js +28 -0
  296. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configServiceWorkerPlugin.js +40 -0
  297. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configSourceMapPlugin.js +20 -0
  298. package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configVariableConversionPlugin.js +25 -0
  299. package/packages/client_build_tool/lib/shared/bundler/webpack/plugins.js +48 -0
  300. package/packages/client_build_tool/lib/shared/bundler/webpack/resolvers.js +49 -0
  301. package/packages/client_build_tool/lib/shared/bundler/webpack/splitChunksConfig.js +128 -0
  302. package/packages/client_build_tool/lib/shared/bundler/webpack/statsConfig.js +21 -0
  303. package/packages/client_build_tool/lib/shared/bundler/webpack/utils/index.js +26 -0
  304. package/packages/client_build_tool/lib/shared/bundler/webpack/utils/updateArrayWithDefault.js +18 -0
  305. package/packages/client_build_tool/lib/shared/bundler/webpack/webpackBuild.js +27 -0
  306. package/packages/client_build_tool/lib/shared/bundler/webpack/webpackConfig.js +52 -0
  307. package/packages/client_build_tool/lib/shared/commands-utils/doBasicRequirementCheck.js +17 -0
  308. package/packages/client_build_tool/lib/shared/commands-utils/getCliPath.js +39 -0
  309. package/packages/client_build_tool/lib/shared/commands-utils/index.js +29 -0
  310. package/packages/client_build_tool/lib/shared/commands-utils/log.js +13 -0
  311. package/packages/client_build_tool/lib/shared/commands-utils/readArgsFormCommandLine.js +11 -0
  312. package/packages/client_build_tool/lib/shared/commands-utils/readOptionFormCommandLine.js +11 -0
  313. package/packages/client_build_tool/lib/shared/commands-utils/spawnSyncIO.js +38 -0
  314. package/packages/client_build_tool/lib/shared/constants.js +45 -0
  315. package/packages/client_build_tool/lib/shared/fileUtils/copyFile.js +38 -0
  316. package/packages/client_build_tool/lib/shared/fileUtils/directoryIterator.js +21 -0
  317. package/packages/client_build_tool/lib/shared/fileUtils/watchRun.js +100 -0
  318. package/packages/client_build_tool/lib/shared/postcss/__test__/ignoreTestCases.test.js +80 -0
  319. package/packages/client_build_tool/lib/shared/postcss/__test__/postcss-rtl-all-cases.test.js +119 -0
  320. package/packages/client_build_tool/lib/shared/postcss/__test__/postcssRtl.spec.js +34 -0
  321. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/EmptyPlugin.js +21 -0
  322. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/constants.js +10 -0
  323. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/handleIgnores.js +66 -0
  324. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/index.js +136 -0
  325. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/insertBefore.js +32 -0
  326. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/isPreviouslyProcessed.js +20 -0
  327. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/replaceUtils.js +20 -0
  328. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/separateHoveredSelectorAndNormalSelector.js +24 -0
  329. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/specialCases.js +43 -0
  330. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/typeCheckUtils.js +52 -0
  331. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/RTLSplitPlugin.js +139 -0
  332. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/SelectorReplace.js +90 -0
  333. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/ValueReplacer.js +57 -0
  334. package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/VariableModificationPlugin/index.js +343 -0
  335. package/packages/client_build_tool/lib/shared/postcss/filterPluginsAllowedForSpecficFile.js +55 -0
  336. package/packages/client_build_tool/lib/shared/postcss/getAllowedPostCssPlugins.js +30 -0
  337. package/packages/client_build_tool/lib/shared/postcss/getSpecificPostCssPlugin.js +58 -0
  338. package/packages/client_build_tool/lib/shared/postcss/runPostCssForCssFile.js +37 -0
  339. package/packages/client_build_tool/lib/shared/server/configWebpackDevMiddleware.js +41 -0
  340. package/packages/client_build_tool/lib/shared/server/corsHandling.js +21 -0
  341. package/packages/client_build_tool/lib/shared/server/getIp.js +30 -0
  342. package/packages/client_build_tool/lib/shared/server/getServerURL.js +29 -0
  343. package/packages/client_build_tool/lib/shared/server/httpsOptions.js +46 -0
  344. package/packages/client_build_tool/lib/shared/server/initExpressApp.js +19 -0
  345. package/packages/client_build_tool/lib/shared/server/initialHTMLHandling.js +99 -0
  346. package/packages/client_build_tool/lib/shared/server/mockApiHandler.js +60 -0
  347. package/packages/client_build_tool/lib/shared/server/mockServer.js +41 -0
  348. package/packages/client_build_tool/lib/shared/server/serveContextFiles.js +25 -0
  349. package/packages/client_build_tool/lib/shared/server/serverBywebpackDevMiddleware.js +36 -0
  350. package/packages/client_build_tool/lib/shared/server/startHttpServer.js +26 -0
  351. package/packages/client_build_tool/lib/shared/server/startHttpsServer.js +38 -0
  352. package/packages/client_build_tool/lib/shared/server/unwanted/addHttp2Server.js +41 -0
  353. package/packages/client_build_tool/lib/shared/server/unwanted/configWebpackDevMiddleware.js +44 -0
  354. package/packages/client_build_tool/lib/shared/server/unwanted/mockApiSupport.js +19 -0
  355. package/packages/client_build_tool/lib/shared/server/unwanted/websocketMockSetup.js +48 -0
  356. package/packages/client_build_tool/lib/shared/server/urlConcat.js +32 -0
  357. package/packages/client_build_tool/lib/shared/utils/requireLocalOrGlobal.js +81 -0
  358. package/packages/client_build_tool/lib/shared/utils/utils.js +1 -0
  359. package/packages/client_build_tool/lib/shared/utils/versionPrint.js +20 -0
  360. package/packages/client_build_tool/node_modules/history/CHANGES.md +395 -0
  361. package/packages/client_build_tool/node_modules/history/DOMUtils.js +3 -0
  362. package/packages/client_build_tool/node_modules/history/ExecutionEnvironment.js +3 -0
  363. package/packages/client_build_tool/node_modules/history/LICENSE +21 -0
  364. package/packages/client_build_tool/node_modules/history/LocationUtils.js +3 -0
  365. package/packages/client_build_tool/node_modules/history/PathUtils.js +3 -0
  366. package/packages/client_build_tool/node_modules/history/README.md +282 -0
  367. package/packages/client_build_tool/node_modules/history/cjs/history.js +933 -0
  368. package/packages/client_build_tool/node_modules/history/cjs/history.min.js +1 -0
  369. package/packages/client_build_tool/node_modules/history/createBrowserHistory.js +3 -0
  370. package/packages/client_build_tool/node_modules/history/createHashHistory.js +3 -0
  371. package/packages/client_build_tool/node_modules/history/createMemoryHistory.js +3 -0
  372. package/packages/client_build_tool/node_modules/history/createTransitionManager.js +3 -0
  373. package/packages/client_build_tool/node_modules/history/es/DOMUtils.js +7 -0
  374. package/packages/client_build_tool/node_modules/history/es/ExecutionEnvironment.js +7 -0
  375. package/packages/client_build_tool/node_modules/history/es/LocationUtils.js +7 -0
  376. package/packages/client_build_tool/node_modules/history/es/PathUtils.js +7 -0
  377. package/packages/client_build_tool/node_modules/history/es/createBrowserHistory.js +7 -0
  378. package/packages/client_build_tool/node_modules/history/es/createHashHistory.js +7 -0
  379. package/packages/client_build_tool/node_modules/history/es/createMemoryHistory.js +7 -0
  380. package/packages/client_build_tool/node_modules/history/es/createTransitionManager.js +7 -0
  381. package/packages/client_build_tool/node_modules/history/es/warnAboutDeprecatedESMImport.js +35 -0
  382. package/packages/client_build_tool/node_modules/history/esm/history.js +904 -0
  383. package/packages/client_build_tool/node_modules/history/index.js +7 -0
  384. package/packages/client_build_tool/node_modules/history/package.json +120 -0
  385. package/packages/client_build_tool/node_modules/history/umd/history.js +1059 -0
  386. package/packages/client_build_tool/node_modules/history/umd/history.min.js +1 -0
  387. package/packages/client_build_tool/node_modules/history/warnAboutDeprecatedCJSRequire.js +35 -0
  388. package/postpublish.js +8 -8
  389. package/result.json +1 -0
  390. package/templates/app/.eslintrc.js +140 -140
  391. package/templates/app/README.md +12 -12
  392. package/templates/app/app/index.html +24 -24
  393. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  394. package/templates/app/app/properties/i18nkeys.json +3 -3
  395. package/templates/app/docs/all.html +69 -69
  396. package/templates/app/mockapi/index.js +18 -18
  397. package/templates/app/package.json +37 -37
  398. package/templates/app/src/actions/SampleActions/index.js +37 -37
  399. package/templates/app/src/actions/index.js +65 -65
  400. package/templates/app/src/appUrls.js +19 -19
  401. package/templates/app/src/components/Alert/Alert.js +134 -134
  402. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  403. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  404. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  405. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  406. package/templates/app/src/components/Sample/SampleList.js +61 -61
  407. package/templates/app/src/components/Slider/Slider.css +41 -41
  408. package/templates/app/src/components/Slider/Slider.js +55 -55
  409. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  410. package/templates/app/src/containers/AppContainer/index.js +96 -96
  411. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  412. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  413. package/templates/app/src/containers/DevTools/index.js +10 -10
  414. package/templates/app/src/containers/Header/index.js +67 -67
  415. package/templates/app/src/containers/Header/index.module.css +43 -43
  416. package/templates/app/src/containers/Redirect/index.js +63 -63
  417. package/templates/app/src/containers/Redirector/index.js +47 -47
  418. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  419. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  420. package/templates/app/src/historyChange.js +5 -5
  421. package/templates/app/src/index.html +10 -10
  422. package/templates/app/src/index.js +24 -24
  423. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  424. package/templates/app/src/reducers/alertData.js +11 -11
  425. package/templates/app/src/reducers/index.js +6 -6
  426. package/templates/app/src/reducers/samples.js +19 -19
  427. package/templates/app/src/store/configureStore.dev.js +51 -51
  428. package/templates/app/src/store/configureStore.js +5 -5
  429. package/templates/app/src/store/configureStore.prod.js +26 -26
  430. package/templates/app/src/util/Common.js +5 -5
  431. package/templates/app/src/util/RequestAPI.js +132 -132
  432. package/templates/docs/all.html +250 -250
  433. package/templates/docs/component.html +179 -179
  434. package/templates/docs/components.html +222 -222
  435. package/templates/docs/css/b.min.css +6 -6
  436. package/templates/docs/css/component.css +42 -42
  437. package/templates/docs/css/componentTest.css +6 -6
  438. package/templates/docs/css/hopscotch.css +585 -585
  439. package/templates/docs/css/markdown.css +202 -202
  440. package/templates/docs/css/style.css +988 -988
  441. package/templates/docs/impactReportTemplate.html +154 -154
  442. package/templates/docs/index.html +1664 -1664
  443. package/templates/docs/js/active-line.js +72 -72
  444. package/templates/docs/js/b.min.js +7 -7
  445. package/templates/docs/js/codemirror.js +9680 -9680
  446. package/templates/docs/js/designTokens.js +334 -334
  447. package/templates/docs/js/j.min.js +4 -4
  448. package/templates/docs/js/javascript.js +874 -874
  449. package/templates/docs/js/matchbrackets.js +145 -145
  450. package/unittest/index.html +37 -0
@@ -1,95 +1,95 @@
1
- # I18n Split As Chunks Plugin
2
-
3
- generaly we have manage our all I18n keys and values as language specific i18n files and then we download all i18n in initial page load.
4
-
5
- ### what is the problem with this?.
6
-
7
- the problem is i18n file keep get's grown it will affect the the inital page load and critial rendering path.
8
- So, We have decide to create a plugin for split i18n per chunk's of js vise.
9
-
10
- ### what is i18n split?
11
-
12
- it is like code split for i18n.
13
- we will collect i18n from js chunk and we will create separate i18n chunk per js chunk,
14
- with this we already load Js chunks are on demand and now we also download i18n also ondemand with this the initial and forthere actions.
15
- when js download's we will download i18n with it.
16
-
17
- ### How to we going to i18n split?
18
-
19
- we will read the js chunk and collect I18n keys form it,
20
- then we will create i18n chunk files with these used keys.
21
-
22
- ### how do you collect i18n keys from js files?
23
-
24
- we will traverse the js file's AST (static analysis) and find i18 keys,
25
- we will concider all string which is in jsResource file as i18n keys.
26
- and you can tell dynamic i18n key by js comments,
27
- Like Below:-
28
-
29
- ```js
30
- fetch('tickets?view=view1').then(data => {
31
- // I18n support.ticketsEmpty
32
- // I18n support.viewNotFount
33
- // I18n support.permissionDenied
34
- let text = getI18nValue(data.i18nkey);
35
- });
36
- ```
37
-
38
- ### is there any posiblity for unwanted keys in some chunk?
39
-
40
- Yes, there is two posiblity
41
-
42
- 1. js comment , if you write js comment but it is not needed then it will be add into i18n chunk
43
- `To Resolve` we currently do not have perfect idea for this, But we can check this by chunk size limit.
44
- `idea's will be welcome`
45
- 2. like we said "we will concider all string which is in jsResource file as i18n keys",
46
- So if you use string not for i18n but it was in jsResource then it will be add into i18n chunk.
47
- `To Resolve` this problem we can use some kinda prefix or something.
48
-
49
- ### how do we downlowd and give to app?
50
-
51
- we have over write defualt webpack requireEnsure (every dynamic chunk requests are done by that function) function.
52
- and we parlarly dowload i18n files. and we ask jsonFunction, to our plugin.
53
- So we send i18nkeys , when it was download,
54
- you must store all i18n keys, we give asycrnsly by that function download in that patticular.
55
- so you must store and update (like append or assign) everytime that function call.
56
-
57
- ### how to use this feature?
58
-
59
- to use this feature use have give the below oprtions
60
- `package.json`
61
-
62
- ```json
63
- {
64
- /// ...some things
65
- "react-cli": {
66
- // ...some things
67
- "i18n": {
68
- "chunkSplitEnable": true,
69
- "jsResource": "./deskapp/properties/JSResources.properties",
70
- "localeVarName": "window.userInfo.langCode",
71
- "jsonpFunc": "window.loadI18nChunk",
72
- "templateLabel": "{{--user-locale}}", // this is for html template i18n file path locate template
73
- "propertiesFolder": "./deskapp/properties"
74
- }
75
- // ...some things
76
- }
77
- }
78
- ```
79
-
80
- <!-- not need below -->
81
- <!--we have added new feature for css to write logic to how hover related css work in hoverhover and a
82
-
83
- ### is there any problems with static analysis?
84
- Yes,
85
-
86
- ### how do we use dynamic i18n key?
87
-
88
- and we will download i18n file with
89
-
90
- and when js chunk download's then we will download i18n as need.
91
- we all know in our app we loading i18n as one single big file for each locale(language).
92
- we are going to split i18n as per js chunk, and when js chunk download's then we will download i18n as need.
93
-
94
-
95
- -->
1
+ # I18n Split As Chunks Plugin
2
+
3
+ generaly we have manage our all I18n keys and values as language specific i18n files and then we download all i18n in initial page load.
4
+
5
+ ### what is the problem with this?.
6
+
7
+ the problem is i18n file keep get's grown it will affect the the inital page load and critial rendering path.
8
+ So, We have decide to create a plugin for split i18n per chunk's of js vise.
9
+
10
+ ### what is i18n split?
11
+
12
+ it is like code split for i18n.
13
+ we will collect i18n from js chunk and we will create separate i18n chunk per js chunk,
14
+ with this we already load Js chunks are on demand and now we also download i18n also ondemand with this the initial and forthere actions.
15
+ when js download's we will download i18n with it.
16
+
17
+ ### How to we going to i18n split?
18
+
19
+ we will read the js chunk and collect I18n keys form it,
20
+ then we will create i18n chunk files with these used keys.
21
+
22
+ ### how do you collect i18n keys from js files?
23
+
24
+ we will traverse the js file's AST (static analysis) and find i18 keys,
25
+ we will concider all string which is in jsResource file as i18n keys.
26
+ and you can tell dynamic i18n key by js comments,
27
+ Like Below:-
28
+
29
+ ```js
30
+ fetch('tickets?view=view1').then(data => {
31
+ // I18n support.ticketsEmpty
32
+ // I18n support.viewNotFount
33
+ // I18n support.permissionDenied
34
+ let text = getI18nValue(data.i18nkey);
35
+ });
36
+ ```
37
+
38
+ ### is there any posiblity for unwanted keys in some chunk?
39
+
40
+ Yes, there is two posiblity
41
+
42
+ 1. js comment , if you write js comment but it is not needed then it will be add into i18n chunk
43
+ `To Resolve` we currently do not have perfect idea for this, But we can check this by chunk size limit.
44
+ `idea's will be welcome`
45
+ 2. like we said "we will concider all string which is in jsResource file as i18n keys",
46
+ So if you use string not for i18n but it was in jsResource then it will be add into i18n chunk.
47
+ `To Resolve` this problem we can use some kinda prefix or something.
48
+
49
+ ### how do we downlowd and give to app?
50
+
51
+ we have over write defualt webpack requireEnsure (every dynamic chunk requests are done by that function) function.
52
+ and we parlarly dowload i18n files. and we ask jsonFunction, to our plugin.
53
+ So we send i18nkeys , when it was download,
54
+ you must store all i18n keys, we give asycrnsly by that function download in that patticular.
55
+ so you must store and update (like append or assign) everytime that function call.
56
+
57
+ ### how to use this feature?
58
+
59
+ to use this feature use have give the below oprtions
60
+ `package.json`
61
+
62
+ ```json
63
+ {
64
+ /// ...some things
65
+ "react-cli": {
66
+ // ...some things
67
+ "i18n": {
68
+ "chunkSplitEnable": true,
69
+ "jsResource": "./deskapp/properties/JSResources.properties",
70
+ "localeVarName": "window.userInfo.langCode",
71
+ "jsonpFunc": "window.loadI18nChunk",
72
+ "templateLabel": "{{--user-locale}}", // this is for html template i18n file path locate template
73
+ "propertiesFolder": "./deskapp/properties"
74
+ }
75
+ // ...some things
76
+ }
77
+ }
78
+ ```
79
+
80
+ <!-- not need below -->
81
+ <!--we have added new feature for css to write logic to how hover related css work in hoverhover and a
82
+
83
+ ### is there any problems with static analysis?
84
+ Yes,
85
+
86
+ ### how do we use dynamic i18n key?
87
+
88
+ and we will download i18n file with
89
+
90
+ and when js chunk download's then we will download i18n as need.
91
+ we all know in our app we loading i18n as one single big file for each locale(language).
92
+ we are going to split i18n as per js chunk, and when js chunk download's then we will download i18n as need.
93
+
94
+
95
+ -->
@@ -1,25 +1,25 @@
1
- # I18n Split As Chunks Plugin
2
-
3
- generaly we have manage our all I18n keys and values as language specific i18n files and then we download all i18n in initial page load.
4
-
5
- Ok, what is the problem with this?.
6
- the problem is i18n file keep get's grown it will affect the the inital page load and critial rendering path.
7
- So, We have decide to create a plugin for split i18n per chunk's of js vise, Which mean we diside to create for each js chunk has its own i18n chunks, with this we already load Js chunks are on demand and now we also download i18n also ondemand with this the initial and forthere actions.
8
-
9
- Ok, How to you do this thing?
10
- we have read the js chunk and collect I18n keys what are used in that chunk and we will create i18n chunk files with only used key.
11
-
12
- Ok, How do you collect that keys?
13
- we now have two expremental statrge to collect I18n keys.
14
-
15
- 1. we read jsResource.properties (or all keys I18n file) then we walk this AST of js and we collect all string which is jsResource.properties.
16
- 2. for dynamic we discide to use comment some thing like
17
- `// I18n support.tickekt.email.notvalid`
18
-
19
- ok, how do you downlowd and give to app?
20
- we have over write defualt webpack require ensure function.
21
- So every dynamic chunk requset are done by that function.
22
- So we parlarly dowload i18n files. and we ask jsonFunction, to our plugin.
23
- So we send i18nkeys , when it was download,
24
- you must store all i18n keys, we give asycrnsly by that function download in that patticular.
25
- so you must store and update (like append or assign) everytime that function call.
1
+ # I18n Split As Chunks Plugin
2
+
3
+ generaly we have manage our all I18n keys and values as language specific i18n files and then we download all i18n in initial page load.
4
+
5
+ Ok, what is the problem with this?.
6
+ the problem is i18n file keep get's grown it will affect the the inital page load and critial rendering path.
7
+ So, We have decide to create a plugin for split i18n per chunk's of js vise, Which mean we diside to create for each js chunk has its own i18n chunks, with this we already load Js chunks are on demand and now we also download i18n also ondemand with this the initial and forthere actions.
8
+
9
+ Ok, How to you do this thing?
10
+ we have read the js chunk and collect I18n keys what are used in that chunk and we will create i18n chunk files with only used key.
11
+
12
+ Ok, How do you collect that keys?
13
+ we now have two expremental statrge to collect I18n keys.
14
+
15
+ 1. we read jsResource.properties (or all keys I18n file) then we walk this AST of js and we collect all string which is jsResource.properties.
16
+ 2. for dynamic we discide to use comment some thing like
17
+ `// I18n support.tickekt.email.notvalid`
18
+
19
+ ok, how do you downlowd and give to app?
20
+ we have over write defualt webpack require ensure function.
21
+ So every dynamic chunk requset are done by that function.
22
+ So we parlarly dowload i18n files. and we ask jsonFunction, to our plugin.
23
+ So we send i18nkeys , when it was download,
24
+ you must store all i18n keys, we give asycrnsly by that function download in that patticular.
25
+ so you must store and update (like append or assign) everytime that function call.
@@ -21,23 +21,23 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
21
21
 
22
22
  // #region initial
23
23
 
24
- /**
25
- * @TODO:
26
- * [?] add comment line options for properties file and get all keys form property file do right way to genarate them
27
- * [?] need to discuss with collectI18n Keys with js comment need to conform "what is the comment? "
24
+ /**
25
+ * @TODO:
26
+ * [?] add comment line options for properties file and get all keys form property file do right way to genarate them
27
+ * [?] need to discuss with collectI18n Keys with js comment need to conform "what is the comment? "
28
28
  */
29
29
 
30
- /**
31
- * Notes: this plugin has done below works
32
- * 1. collect I18n Keys from js files and make it as Depenencies
33
- * 2. we create file(asset) for chunk specific i18nChunk Files
34
- * 3. create hash for the specific i18nChunk Files
35
- * 4. write logic to requireEnsure method for dowlod I18n chunk download dynamicaly
36
- * 5. create manifest.json file which has the mapping of chunk-locales-i18nChunkFile
37
- * for the external referrece.
38
- * Hints :-
39
- * - file means your machine files
40
- * - asset means that also file but that will create by webpack after build
30
+ /**
31
+ * Notes: this plugin has done below works
32
+ * 1. collect I18n Keys from js files and make it as Depenencies
33
+ * 2. we create file(asset) for chunk specific i18nChunk Files
34
+ * 3. create hash for the specific i18nChunk Files
35
+ * 4. write logic to requireEnsure method for dowlod I18n chunk download dynamicaly
36
+ * 5. create manifest.json file which has the mapping of chunk-locales-i18nChunkFile
37
+ * for the external referrece.
38
+ * Hints :-
39
+ * - file means your machine files
40
+ * - asset means that also file but that will create by webpack after build
41
41
  */
42
42
  // const getI18nLocales = require('./utils/getI18nLocales');
43
43
  // const { ConcatSource, SourceMapSource, OriginalSource } = sources;
@@ -49,16 +49,16 @@ const MODULE_TYPE = 'json/i18n';
49
49
  const i18ntype = locale => `${MODULE_TYPE}/${locale}`;
50
50
 
51
51
  const pluginName = 'i18n-plugin';
52
- /**
53
- * @typedef I18nPluginOptions
54
- * @property {String} filenameTemplate this was template for i18n chunk
55
- * @property {String} jsResource this was path for jsResource i18n file
56
- * @property {String} propertiesFolder this was path for propertiesFolder i18n file
57
- * @property {Boolean} disableDefault this option for disable defulat value for i18n keys, means if the language file does not have some key we don't give jsResource value
58
- * @property {String} i18nManifestFileName this was ouput path for i18n manifest.
59
- * @property {String} jsonpFunc this was function name, we will call that function everytime i18n chunk download.
60
- * @property {String} localeVarName this was variable name, we will call that function everytime i18n chunk download.
61
- *
52
+ /**
53
+ * @typedef I18nPluginOptions
54
+ * @property {String} filenameTemplate this was template for i18n chunk
55
+ * @property {String} jsResource this was path for jsResource i18n file
56
+ * @property {String} propertiesFolder this was path for propertiesFolder i18n file
57
+ * @property {Boolean} disableDefault this option for disable defulat value for i18n keys, means if the language file does not have some key we don't give jsResource value
58
+ * @property {String} i18nManifestFileName this was ouput path for i18n manifest.
59
+ * @property {String} jsonpFunc this was function name, we will call that function everytime i18n chunk download.
60
+ * @property {String} localeVarName this was variable name, we will call that function everytime i18n chunk download.
61
+ *
62
62
  */
63
63
 
64
64
  class I18nPlugin {
@@ -104,13 +104,13 @@ class I18nPlugin {
104
104
  }
105
105
 
106
106
  maintainHashForAllI18nAssets(compilation) {
107
- /**
108
- * we write chunkHash logic inside of our plugin Because we only add Dependency not Module.
109
- * So we need to update chunkHash for our assets
110
- * and we not able tell with just Modules.
111
- * Because, if we add Module for the Depenentcy then that module must has some hash.
112
- * But our I18n Hash is no module specific it was chunk specific,
113
- * that's why we do the stuf in the chunkHash hook.
107
+ /**
108
+ * we write chunkHash logic inside of our plugin Because we only add Dependency not Module.
109
+ * So we need to update chunkHash for our assets
110
+ * and we not able tell with just Modules.
111
+ * Because, if we add Module for the Depenentcy then that module must has some hash.
112
+ * But our I18n Hash is no module specific it was chunk specific,
113
+ * that's why we do the stuf in the chunkHash hook.
114
114
  */
115
115
  compilation.hooks.chunkHash.tap(pluginName, (chunk, chunkHash) => {
116
116
  const {
@@ -154,31 +154,31 @@ class I18nPlugin {
154
154
  }
155
155
 
156
156
  }
157
- /*
158
- // TODO: need to reimplement this logic
159
- // NOTE: this logic for split all content hash per mani chunk
160
- // like add chunk content hash to main locale i18n file
161
-
162
- // let isEntry = chunk.name === this.options.mainChunkName;
163
- // if (chunk.name === 'main' && chunk.hasEntryModule()) {
164
- if (isEntry) {
165
- const hashSource = new ConcatSource();
166
- const dummyChunk = new chunk.constructor();
167
- hashSource.add('// it wil be I18N file hash');
168
- const templateHooks = compilation.chunkTemplate.hooks;
169
- let c = templateHooks.render.call(
170
- templateHooks.module.call(
171
- hashSource,
172
- dummyChunk,
173
- compilation.moduleTemplate.javascript,
174
- compilation.dependencyTemplates
175
- ),
176
- dummyChunk,
177
- compilation.moduleTemplate.javascript,
178
- compilation.dependencyTemplates
179
- );
180
-
181
- }
157
+ /*
158
+ // TODO: need to reimplement this logic
159
+ // NOTE: this logic for split all content hash per mani chunk
160
+ // like add chunk content hash to main locale i18n file
161
+
162
+ // let isEntry = chunk.name === this.options.mainChunkName;
163
+ // if (chunk.name === 'main' && chunk.hasEntryModule()) {
164
+ if (isEntry) {
165
+ const hashSource = new ConcatSource();
166
+ const dummyChunk = new chunk.constructor();
167
+ hashSource.add('// it wil be I18N file hash');
168
+ const templateHooks = compilation.chunkTemplate.hooks;
169
+ let c = templateHooks.render.call(
170
+ templateHooks.module.call(
171
+ hashSource,
172
+ dummyChunk,
173
+ compilation.moduleTemplate.javascript,
174
+ compilation.dependencyTemplates
175
+ ),
176
+ dummyChunk,
177
+ compilation.moduleTemplate.javascript,
178
+ compilation.dependencyTemplates
179
+ );
180
+
181
+ }
182
182
  */
183
183
 
184
184
 
@@ -43,25 +43,25 @@ class ResourceHintsPlugin {
43
43
  return isRegExAsChunkId ? chunkNames.filter(chunkName => chunkId.test(chunkName)).map(chunkName => nameToChunkIdMap[chunkName]) : [nameToChunkIdMap[chunkId] || chunkId];` : needsMap ? 'return [nameToChunkIdMap[chunkId] || chunkId];' : 'return [chunkId];']), '}', `// Prefetch a chunk (${pluginName})`, `${mainTemplate.requireFn}.pfc = function prefetchChunk(chunkId) {`, Template.indent([`let chunkIds = ${mainTemplate.requireFn}.getChunkIds(chunkId)`, `chunkIds.forEach(idOfAChunk => {
44
44
  ${mainTemplate.requireFn}.e(idOfAChunk);
45
45
  })`]), '};',
46
- /*
47
- (needsMap
48
- ? [`chunkId = ${JSON.stringify(nameIdMap)}[chunkId]||chunkId;`]
49
- : []
50
- ).concat([
51
- 'var promises = [];',
52
- 'if(installedChunks[chunkId] === undefined) {',
53
- Template.indent([
54
- 'installedChunks[chunkId] = null;',
55
- /* mainTemplate.hooks.linkPrefetch.call('', chunk, hash),
46
+ /*
47
+ (needsMap
48
+ ? [`chunkId = ${JSON.stringify(nameIdMap)}[chunkId]||chunkId;`]
49
+ : []
50
+ ).concat([
51
+ 'var promises = [];',
52
+ 'if(installedChunks[chunkId] === undefined) {',
53
+ Template.indent([
54
+ 'installedChunks[chunkId] = null;',
55
+ /* mainTemplate.hooks.linkPrefetch.call('', chunk, hash),
56
56
  'document.head.appendChild(link);', */
57
57
 
58
- /*
59
- mainTemplate.hooks.requireEnsure.call('', chunk, hash)
60
- ]),
61
- '}'
62
- ])
63
- ),
64
- '}',
58
+ /*
59
+ mainTemplate.hooks.requireEnsure.call('', chunk, hash)
60
+ ]),
61
+ '}'
62
+ ])
63
+ ),
64
+ '}',
65
65
  */
66
66
  `// Preload a chunk (${pluginName})`, `${mainTemplate.requireFn}.plc = function preloadChunk(chunkId) {`, Template.indent([`chunkId = ${mainTemplate.requireFn}.getChunkIds(chunkId)[0]`, 'if(installedChunks[chunkId] === undefined) {', Template.indent(['installedChunks[chunkId] = null;', mainTemplate.hooks.linkPreload.call('', chunk, hash), 'document.head.appendChild(link);', `${mainTemplate.requireFn}.e(chunkId);` // 'var head = document.getElementsByTagName(\'head\')[0];',
67
67
  // mainTemplate.hooks.jsonpScript.call('', chunk, hash),
@@ -24,12 +24,12 @@ const isCss = filename => _path.default.extname(filename) === '.css'; // this p
24
24
 
25
25
  class RtlCssPlugin {
26
26
  constructor(options = {}) {
27
- /**
28
- * @typedef {Object} Options
29
- * @property {String} filename [not used]
30
- * @property {String} dirVarName
31
- * @property {Boolean} sourcemap
32
- * @property {Object} config
27
+ /**
28
+ * @typedef {Object} Options
29
+ * @property {String} filename [not used]
30
+ * @property {String} dirVarName
31
+ * @property {Boolean} sourcemap
32
+ * @property {Object} config
33
33
  */
34
34
  this.options = {
35
35
  filename: options.filename || '[name].rtl.css',
@@ -1,30 +1,30 @@
1
- # RTL Split
2
-
3
- we are doing in build time generating rtl related css code by using @zohodesk/postcss-rt npm.
4
- It was automated, That postcss plugin create rtl reacted css and put them into same file, with css selector [dir=rtl] and ltr realted css with [dir=ltr].
5
- Here is problem mostly no one need rtl and ltr related css at the same time in browser,
6
- we are try to split them by [dir] and load which type of css is needed.
7
- For this purpose we created RTL Split Plugin
8
-
9
-
10
- # To Try it out rtl-ltr split
11
- ### how to use this feature?
12
-
13
- to use this feature use have give the below oprtions
14
- `package.json`
15
- ```json
16
- {
17
- /// ...some things
18
- "react-cli": {
19
- // ...some things
20
- "css": {
21
- "enableRTLSplit": true,
22
- "templateLabel": "{{--dir}}",// this is for html template css file path dir template
23
- "disableMiniFiySelector": false,
24
- "dirVarName": "document.dir" // this will be used for download css based on dir
25
- },
26
- // ...some things
27
- }
28
- }
29
- ```
30
-
1
+ # RTL Split
2
+
3
+ we are doing in build time generating rtl related css code by using @zohodesk/postcss-rt npm.
4
+ It was automated, That postcss plugin create rtl reacted css and put them into same file, with css selector [dir=rtl] and ltr realted css with [dir=ltr].
5
+ Here is problem mostly no one need rtl and ltr related css at the same time in browser,
6
+ we are try to split them by [dir] and load which type of css is needed.
7
+ For this purpose we created RTL Split Plugin
8
+
9
+
10
+ # To Try it out rtl-ltr split
11
+ ### how to use this feature?
12
+
13
+ to use this feature use have give the below oprtions
14
+ `package.json`
15
+ ```json
16
+ {
17
+ /// ...some things
18
+ "react-cli": {
19
+ // ...some things
20
+ "css": {
21
+ "enableRTLSplit": true,
22
+ "templateLabel": "{{--dir}}",// this is for html template css file path dir template
23
+ "disableMiniFiySelector": false,
24
+ "dirVarName": "document.dir" // this will be used for download css based on dir
25
+ },
26
+ // ...some things
27
+ }
28
+ }
29
+ ```
30
+
@@ -86,20 +86,20 @@ class SelectorPlugin {
86
86
  const rootOriginal = _postcss.default.parse(module.content);
87
87
 
88
88
  const filename = module.issuer.resource;
89
- /*
90
- input :
91
- filename : 'D:/MyWork/..../desk_client_app/supportapp/src/components/Avatar/Avatar.module.css,
92
-
93
- patterns.cssVariableReplacement:
94
- // include src folder, include deskapp folder, exclude node modules
95
- "selectorWeight": [
96
- "src",
97
- "deskapp",
98
- "!node_modules"
99
- ]
100
-
101
- output :
102
- true or false
89
+ /*
90
+ input :
91
+ filename : 'D:/MyWork/..../desk_client_app/supportapp/src/components/Avatar/Avatar.module.css,
92
+
93
+ patterns.cssVariableReplacement:
94
+ // include src folder, include deskapp folder, exclude node modules
95
+ "selectorWeight": [
96
+ "src",
97
+ "deskapp",
98
+ "!node_modules"
99
+ ]
100
+
101
+ output :
102
+ true or false
103
103
  */
104
104
 
105
105
  if (!(0, _fileHandling.isFileNameMatchingPluginPattern)({
@@ -108,21 +108,21 @@ class SelectorPlugin {
108
108
  })) {
109
109
  return;
110
110
  }
111
- /*
112
-
113
- filename : Deskapp.module.css ?
114
- data :
115
- {
116
- "DeskApp.module.css": {"defaultSelector" : ".desk_app_ui "}
117
- }
118
- selectorWeightConfig :
119
- defaultSelector : .zoho_desk_ui
120
-
121
- case filename = 'DeskApp.module.css' ?
122
- data[filename].defaultSelector = '.desk_app_ui'
123
- case filename is different ?
124
- defaultSelector = '.zoho_desk_ui'
125
- */
111
+ /*
112
+
113
+ filename : Deskapp.module.css ?
114
+ data :
115
+ {
116
+ "DeskApp.module.css": {"defaultSelector" : ".desk_app_ui "}
117
+ }
118
+ selectorWeightConfig :
119
+ defaultSelector : .zoho_desk_ui
120
+
121
+ case filename = 'DeskApp.module.css' ?
122
+ data[filename].defaultSelector = '.desk_app_ui'
123
+ case filename is different ?
124
+ defaultSelector = '.zoho_desk_ui'
125
+ */
126
126
 
127
127
 
128
128
  module.content = selectorWeightPrefixAdder(rootOriginal, data[filename] ? data[filename].defaultSelector : defaultSelector, excludeStrings).toString();
@@ -51,11 +51,11 @@ class ServiceWorkerPlugin {
51
51
  if (err) {
52
52
  throw new Error(err);
53
53
  } else {
54
- /* const extractedChunks = compilation.chunks.filter(chunk => {
55
- if ('canBeInitial' in chunk) {
56
- return chunk.canBeInitial();
57
- }
58
- return chunk.isInitial();
54
+ /* const extractedChunks = compilation.chunks.filter(chunk => {
55
+ if ('canBeInitial' in chunk) {
56
+ return chunk.canBeInitial();
57
+ }
58
+ return chunk.isInitial();
59
59
  }); */
60
60
  // let [js, css, , , i18nPublicPath] = this.publicPaths;
61
61
  // let initialChunkUrls = [];
@@ -64,10 +64,10 @@ class ServiceWorkerPlugin {
64
64
  let entrypoint = compilation.entrypoints.get('main');
65
65
  let initialChunkUrls = entrypoint.getFiles();
66
66
  const cssDirTemplate = '@dir@';
67
- /**
68
- * NOTE:
69
- * if chunkSplitEnable is false means,
70
- * serviceWorker will get i18n files path for html
67
+ /**
68
+ * NOTE:
69
+ * if chunkSplitEnable is false means,
70
+ * serviceWorker will get i18n files path for html
71
71
  */
72
72
 
73
73
  let initalI18nAssets = chunkSplitEnable ? entrypoint.chunks.filter(chunk => _I18nKeysIdentifer.default.isChunkHasI18n(chunk)).map(chunk => (0, _getI18nFileUrlPathTemplate.getI18nFileUrlPathTemplate)(compilation, chunk, this.i18nFileNameTemplate, '@locale@')) : [];
@@ -15,10 +15,10 @@ var _crypto = _interopRequireDefault(require("crypto"));
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
 
18
- /**
19
- * Plugin that generates hash for the provided list of third party files
20
- * Map the provided key with the file hash and add it to the list of exisiting global constants.
21
- * Plugin in turn uses the defineplugin to generate global constants.
18
+ /**
19
+ * Plugin that generates hash for the provided list of third party files
20
+ * Map the provided key with the file hash and add it to the list of exisiting global constants.
21
+ * Plugin in turn uses the defineplugin to generate global constants.
22
22
  */
23
23
  class TPHashMappingPlugin {
24
24
  constructor(options) {