@zohodesk/client_build_tool 0.0.1-0.exp.0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/.babelrc +12 -0
  2. package/.lintstagedrc +3 -0
  3. package/.vscode/settings.json +5 -0
  4. package/CHANGELOG.md +84 -0
  5. package/ConfigurationDocumentation.md +567 -0
  6. package/ContributionGuide.md +2 -0
  7. package/NOTES-Dec12.md +12 -0
  8. package/README.md +184 -0
  9. package/README_backup.md +100 -0
  10. package/TODO.md +35 -0
  11. package/cli.js +31 -0
  12. package/docs/BabelCustomizations.md +55 -0
  13. package/docs/CSSCustomPluginsDocumentation.md +71 -0
  14. package/docs/CustomChunksConfiguration.md +0 -0
  15. package/docs/EFCFileTemplate.md +0 -0
  16. package/docs/MockApi.md +61 -0
  17. package/docs/NameTemplateUtility.md +93 -0
  18. package/docs/ServiseWorkerTemplate.md +0 -0
  19. package/docs/SupportedBrowserVersions.md +61 -0
  20. package/helpDocs/check.js +7 -0
  21. package/helpDocs/commmands/build.md +0 -0
  22. package/helpDocs/commmands/start.md +0 -0
  23. package/helpDocs/examples/buildWithContentHash.md +0 -0
  24. package/helpDocs/examples/startDevServer.md +0 -0
  25. package/helpDocs/examples/startWithMockAPI.md +0 -0
  26. package/helpDocs/node18-env.md +30 -0
  27. package/helpDocs/troubleshootings/NewMachineSetup.md +71 -0
  28. package/helpDocs/troubleshootings/README.md +9 -0
  29. package/helpDocs/troubleshootings/hg_install.sh +18 -0
  30. package/helpDocs/troubleshootings/newMachineMac.sh +86 -0
  31. package/helpDocs/troubleshootings/newMachineUbundu.bash +84 -0
  32. package/lib/allCommandsConfigs.js +25 -0
  33. package/lib/commands/build/commandExecutor.js +17 -0
  34. package/lib/commands/build/config.js +12 -0
  35. package/lib/commands/build/optionsProcessor.js +35 -0
  36. package/lib/commands/build/preProcessor.js +12 -0
  37. package/lib/commands/buildEs/commandExecutor.js +33 -0
  38. package/lib/commands/buildEs/config.js +12 -0
  39. package/lib/commands/buildEs/preProcessor.js +17 -0
  40. package/lib/commands/buildLib/commandExecutor.js +33 -0
  41. package/lib/commands/buildLib/config.js +12 -0
  42. package/lib/commands/buildLib/preProcessor.js +17 -0
  43. package/lib/commands/mockserver/commandExecutor.js +43 -0
  44. package/lib/commands/mockserver/config.js +12 -0
  45. package/lib/commands/pre_process/commandExecutor.js +18 -0
  46. package/lib/commands/pre_process/config.js +12 -0
  47. package/lib/commands/start/commandExecutor.js +12 -0
  48. package/lib/commands/start/config.js +12 -0
  49. package/lib/commands/start/optionsProcessor.js +30 -0
  50. package/lib/commands/start/preProcessor.js +12 -0
  51. package/lib/commands/template/commandExecutor.js +28 -0
  52. package/lib/commands/template/config.js +12 -0
  53. package/lib/commands/version/commandExecutor.js +14 -0
  54. package/lib/commands/version/config.js +12 -0
  55. package/lib/commandsRouter.js +74 -0
  56. package/lib/index.js +12 -0
  57. package/lib/logger.js +34 -0
  58. package/lib/schemas/applyValuesToSchema/index.js +34 -0
  59. package/lib/schemas/applyValuesToSchema/isObject.js +10 -0
  60. package/lib/schemas/applyValuesToSchema/isValid.js +14 -0
  61. package/lib/schemas/cliArgsToObject.js +39 -0
  62. package/lib/schemas/defaultConfigValues.js +393 -0
  63. package/lib/schemas/defaultConfigValuesOnly.js +200 -0
  64. package/lib/schemas/deprecatedOptionsHandler.js +67 -0
  65. package/lib/schemas/getNpmVersion.js +22 -0
  66. package/lib/schemas/giveDefaultValue.js +18 -0
  67. package/lib/schemas/npmConfigToObject.js +35 -0
  68. package/lib/schemas/readOptions.js +87 -0
  69. package/lib/schemas/readOptionsForConfigFile.js +42 -0
  70. package/lib/shared/babel/addDefaultPlugins.js +15 -0
  71. package/lib/shared/babel/babelWebConfig.js +54 -0
  72. package/lib/shared/babel/babel_plugins/removeAttributesPlugin.js +23 -0
  73. package/lib/shared/babel/getBabelPlugin.js +42 -0
  74. package/lib/shared/babel/runBabelForJSFile.js +24 -0
  75. package/lib/shared/babel/runBabelForTsFile.js +30 -0
  76. package/lib/shared/bundler/webpack/common/decidePublicPath.js +57 -0
  77. package/lib/shared/bundler/webpack/common/hashUtils.js +20 -0
  78. package/lib/shared/bundler/webpack/common/libAlias.js +31 -0
  79. package/lib/shared/bundler/webpack/common/modeUtils.js +39 -0
  80. package/lib/shared/bundler/webpack/common/nameTemplates.js +105 -0
  81. package/lib/shared/bundler/webpack/common/resourceBasedPublicPath.js +21 -0
  82. package/lib/shared/bundler/webpack/configCustomLoaders.js +10 -0
  83. package/lib/shared/bundler/webpack/cssLoaders.js +16 -0
  84. package/lib/shared/bundler/webpack/custom_plugins/BundleIntegrityReport/index.js +83 -0
  85. package/lib/shared/bundler/webpack/custom_plugins/CdnChangePlugin/index.js +119 -0
  86. package/lib/shared/bundler/webpack/custom_plugins/CdnChangePlugin/webpackCustomJsUrlLoader.js +46 -0
  87. package/lib/shared/bundler/webpack/custom_plugins/CustomScriptLoadingPlugin.js +109 -0
  88. package/lib/shared/bundler/webpack/custom_plugins/EFCTemplatePlugin.js +112 -0
  89. package/lib/shared/bundler/webpack/custom_plugins/I18nNumericIndexPlugin/I18nNumericIndexHtmlInjectorPlugin.js +47 -0
  90. package/lib/shared/bundler/webpack/custom_plugins/I18nNumericIndexPlugin/I18nNumericIndexPlugin.js +190 -0
  91. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ContributionGuide.md +11 -0
  92. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nFilesEmitPlugin.js +174 -0
  93. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nKeysIdentifer.js +76 -0
  94. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nRuntimeDealerPlugin.js +223 -0
  95. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nSplit.md +95 -0
  96. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/LocaleChunkAssetsStore.js +73 -0
  97. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ModulesI18nKeysStore.js +88 -0
  98. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/README.md +25 -0
  99. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/constants.js +29 -0
  100. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/createHash.js +24 -0
  101. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/getI18nLoadingRuntimeModule.js +76 -0
  102. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/index.js +39 -0
  103. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/iterateModulesInChunk.js +50 -0
  104. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/optionsHandler.js +68 -0
  105. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/pathCreator.js +23 -0
  106. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/readI18nValues.js +29 -0
  107. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateFileName.js +43 -0
  108. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateHashHelpers.js +77 -0
  109. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/collectAstKeys.js +98 -0
  110. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/collectI18nKeys.js +66 -0
  111. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/getChunkModules.js +13 -0
  112. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/hashUtils.js +19 -0
  113. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/index.js +31 -0
  114. package/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/propertiesUtils.js +129 -0
  115. package/lib/shared/bundler/webpack/custom_plugins/InitialHtmlPlugin.js +60 -0
  116. package/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/addFilesNamesToManifestJson.js +30 -0
  117. package/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createInitialEntries.js +23 -0
  118. package/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createManifestJson.js +35 -0
  119. package/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/findInitialFileNames.js +18 -0
  120. package/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/index.js +46 -0
  121. package/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/removeHashFromFileName.js +18 -0
  122. package/lib/shared/bundler/webpack/custom_plugins/RTLSplitPlugin.js +1 -0
  123. package/lib/shared/bundler/webpack/custom_plugins/ResourceHintsPlugin.js +193 -0
  124. package/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/OverwriteCssPathForRTL.js +62 -0
  125. package/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtlCssPlugin.js +84 -0
  126. package/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtrSplit.md +34 -0
  127. package/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/replaceCssDirTemplate.js +27 -0
  128. package/lib/shared/bundler/webpack/custom_plugins/RuntimeResourceCleanup/index.js +73 -0
  129. package/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/classHandling.js +20 -0
  130. package/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/index.js +78 -0
  131. package/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/selectorWeightPrefixAdder.js +51 -0
  132. package/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/windowsModification.js +16 -0
  133. package/lib/shared/bundler/webpack/custom_plugins/ServiceWorkerPlugin.js +120 -0
  134. package/lib/shared/bundler/webpack/custom_plugins/ServiceWorkerPluginUtils.js +13 -0
  135. package/lib/shared/bundler/webpack/custom_plugins/SourceMapPlugin/index.js +71 -0
  136. package/lib/shared/bundler/webpack/custom_plugins/TPHashMappingPlugin/addHashToFilePath.js +22 -0
  137. package/lib/shared/bundler/webpack/custom_plugins/TPHashMappingPlugin/index.js +55 -0
  138. package/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/index.js.js +49 -0
  139. package/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/ErrorHandler.js +62 -0
  140. package/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/index.js +362 -0
  141. package/lib/shared/bundler/webpack/custom_plugins/custom_attribute_plugin/index.js +80 -0
  142. package/lib/shared/bundler/webpack/custom_plugins/emitAsset.js +14 -0
  143. package/lib/shared/bundler/webpack/custom_plugins/getInitialAssetsFuncTemplate.js +57 -0
  144. package/lib/shared/bundler/webpack/custom_plugins/getInitialI18nAssetsArrayStr.js +87 -0
  145. package/lib/shared/bundler/webpack/defaultVendorPatternList.js +13 -0
  146. package/lib/shared/bundler/webpack/devtoolConfig.js +13 -0
  147. package/lib/shared/bundler/webpack/entryConfig.js +28 -0
  148. package/lib/shared/bundler/webpack/externals.js +17 -0
  149. package/lib/shared/bundler/webpack/getCSSLoaders.js +29 -0
  150. package/lib/shared/bundler/webpack/getFilenameFromModule.js +24 -0
  151. package/lib/shared/bundler/webpack/jsLoaders.js +30 -0
  152. package/lib/shared/bundler/webpack/loaderConfigs/assetLoaders.js +12 -0
  153. package/lib/shared/bundler/webpack/loaderConfigs/babelLoaderConfig.js +18 -0
  154. package/lib/shared/bundler/webpack/loaderConfigs/checkIsPatternsMatchFilename.js +56 -0
  155. package/lib/shared/bundler/webpack/loaderConfigs/configHtmlTemplateLoader.js +18 -0
  156. package/lib/shared/bundler/webpack/loaderConfigs/configPostCssLoader.js +37 -0
  157. package/lib/shared/bundler/webpack/loaderConfigs/configWebWorkerLoader.js +21 -0
  158. package/lib/shared/bundler/webpack/loaderConfigs/configsAssetsLoaders.js +86 -0
  159. package/lib/shared/bundler/webpack/loaderConfigs/cssClassNameGenerate.js +65 -0
  160. package/lib/shared/bundler/webpack/loaderConfigs/getCssLoaderOptions.js +21 -0
  161. package/lib/shared/bundler/webpack/loaderConfigs/i18nIdReplaceLoaderConfig.js +94 -0
  162. package/lib/shared/bundler/webpack/loaders/i18nIdReplaceLoader.js +201 -0
  163. package/lib/shared/bundler/webpack/loaders/miniCssFallBackLoader.js +7 -0
  164. package/lib/shared/bundler/webpack/loaders/workerLoader.js +133 -0
  165. package/lib/shared/bundler/webpack/optimizationConfig.js +56 -0
  166. package/lib/shared/bundler/webpack/outputConfig.js +38 -0
  167. package/lib/shared/bundler/webpack/pluginConfigs/configBundleAnalyzer.js +40 -0
  168. package/lib/shared/bundler/webpack/pluginConfigs/configBundleIntegrityReport.js +36 -0
  169. package/lib/shared/bundler/webpack/pluginConfigs/configCSSMinifierPlugin.js +28 -0
  170. package/lib/shared/bundler/webpack/pluginConfigs/configCdnChangePlugin.js +27 -0
  171. package/lib/shared/bundler/webpack/pluginConfigs/configCopyPublicFolders.js +63 -0
  172. package/lib/shared/bundler/webpack/pluginConfigs/configCustomAttributesPlugin.js +20 -0
  173. package/lib/shared/bundler/webpack/pluginConfigs/configCustomScriptLoadingStrategyPlugin.js +76 -0
  174. package/lib/shared/bundler/webpack/pluginConfigs/configEFCTemplatePlugin.js +46 -0
  175. package/lib/shared/bundler/webpack/pluginConfigs/configEnvVariables.js +51 -0
  176. package/lib/shared/bundler/webpack/pluginConfigs/configHtmlWebpackPlugin.js +56 -0
  177. package/lib/shared/bundler/webpack/pluginConfigs/configI18nNumericIndexPlugin.js +113 -0
  178. package/lib/shared/bundler/webpack/pluginConfigs/configI18nSplitPlugin.js +41 -0
  179. package/lib/shared/bundler/webpack/pluginConfigs/configIgnorePlugin.js +16 -0
  180. package/lib/shared/bundler/webpack/pluginConfigs/configManifestJsonPlugin.js +44 -0
  181. package/lib/shared/bundler/webpack/pluginConfigs/configMiniCSSExtractPlugin.js +24 -0
  182. package/lib/shared/bundler/webpack/pluginConfigs/configProgressPlugin.js +24 -0
  183. package/lib/shared/bundler/webpack/pluginConfigs/configResourceHintsPlugin.js +21 -0
  184. package/lib/shared/bundler/webpack/pluginConfigs/configRtlCssPlugin.js +27 -0
  185. package/lib/shared/bundler/webpack/pluginConfigs/configRuntimeResourceCleanup.js +31 -0
  186. package/lib/shared/bundler/webpack/pluginConfigs/configSelectorWeightPlugin.js +28 -0
  187. package/lib/shared/bundler/webpack/pluginConfigs/configServiceWorkerPlugin.js +40 -0
  188. package/lib/shared/bundler/webpack/pluginConfigs/configSourceMapPlugin.js +20 -0
  189. package/lib/shared/bundler/webpack/pluginConfigs/configTPHashMappingPlugin.js +32 -0
  190. package/lib/shared/bundler/webpack/pluginConfigs/configVariableConversionPlugin.js +25 -0
  191. package/lib/shared/bundler/webpack/plugins.js +77 -0
  192. package/lib/shared/bundler/webpack/resolvers.js +82 -0
  193. package/lib/shared/bundler/webpack/splitChunksConfig.js +116 -0
  194. package/lib/shared/bundler/webpack/statsConfig.js +30 -0
  195. package/lib/shared/bundler/webpack/tsLoaders.js +17 -0
  196. package/lib/shared/bundler/webpack/utils/index.js +31 -0
  197. package/lib/shared/bundler/webpack/utils/object-manipulation.js +87 -0
  198. package/lib/shared/bundler/webpack/utils/updateArrayWithDefault.js +34 -0
  199. package/lib/shared/bundler/webpack/webpackBuild.js +27 -0
  200. package/lib/shared/bundler/webpack/webpackConfig.js +58 -0
  201. package/lib/shared/commands-utils/doBasicRequirementCheck.js +17 -0
  202. package/lib/shared/commands-utils/getCliPath.js +39 -0
  203. package/lib/shared/commands-utils/index.js +29 -0
  204. package/lib/shared/commands-utils/log.js +13 -0
  205. package/lib/shared/commands-utils/readArgsFormCommandLine.js +11 -0
  206. package/lib/shared/commands-utils/readOptionFormCommandLine.js +11 -0
  207. package/lib/shared/commands-utils/spawnSyncIO.js +38 -0
  208. package/lib/shared/constants.js +48 -0
  209. package/lib/shared/fileUtils/copyFile.js +38 -0
  210. package/lib/shared/fileUtils/directoryIterator.js +21 -0
  211. package/lib/shared/fileUtils/watchRun.js +112 -0
  212. package/lib/shared/postcss/custom_postcss_plugins/EmptyPlugin.js +21 -0
  213. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/constants.js +10 -0
  214. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/handleIgnores.js +66 -0
  215. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/index.js +136 -0
  216. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/insertBefore.js +32 -0
  217. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/isPreviouslyProcessed.js +20 -0
  218. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/replaceUtils.js +20 -0
  219. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/separateHoveredSelectorAndNormalSelector.js +24 -0
  220. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/specialCases.js +43 -0
  221. package/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/typeCheckUtils.js +52 -0
  222. package/lib/shared/postcss/custom_postcss_plugins/RTLSplitPlugin.js +139 -0
  223. package/lib/shared/postcss/custom_postcss_plugins/SelectorReplace.js +90 -0
  224. package/lib/shared/postcss/custom_postcss_plugins/ValueReplacer.js +57 -0
  225. package/lib/shared/postcss/custom_postcss_plugins/VariableModificationPlugin/index.js +347 -0
  226. package/lib/shared/postcss/filterPluginsAllowedForSpecficFile.js +55 -0
  227. package/lib/shared/postcss/getAllowedPostCssPlugins.js +30 -0
  228. package/lib/shared/postcss/getSpecificPostCssPlugin.js +58 -0
  229. package/lib/shared/postcss/runPostCssForCssFile.js +37 -0
  230. package/lib/shared/pre_process/runPreProcess.js +58 -0
  231. package/lib/shared/server/configWebpackDevMiddleware.js +41 -0
  232. package/lib/shared/server/corsHandling.js +30 -0
  233. package/lib/shared/server/getIp.js +30 -0
  234. package/lib/shared/server/getServerURL.js +36 -0
  235. package/lib/shared/server/httpsOptions.js +46 -0
  236. package/lib/shared/server/initExpressApp.js +19 -0
  237. package/lib/shared/server/initialHTMLHandling.js +99 -0
  238. package/lib/shared/server/mockApiHandler.js +67 -0
  239. package/lib/shared/server/mockServer.js +41 -0
  240. package/lib/shared/server/serveContextFiles.js +27 -0
  241. package/lib/shared/server/serverBywebpackDevMiddleware.js +35 -0
  242. package/lib/shared/server/startHttpServer.js +26 -0
  243. package/lib/shared/server/startHttpsServer.js +38 -0
  244. package/lib/shared/server/unwanted/addHttp2Server.js +41 -0
  245. package/lib/shared/server/unwanted/configWebpackDevMiddleware.js +44 -0
  246. package/lib/shared/server/unwanted/mockApiSupport.js +19 -0
  247. package/lib/shared/server/unwanted/websocketMockSetup.js +48 -0
  248. package/lib/shared/server/urlConcat.js +32 -0
  249. package/lib/shared/utils/requireLocalOrGlobal.js +81 -0
  250. package/lib/shared/utils/utils.js +1 -0
  251. package/lib/shared/utils/versionPrint.js +20 -0
  252. package/npm-shrinkwrap.json +5657 -0
  253. package/package.json +64 -0
  254. package/polyfillForOldNodeVersion.js +10 -0
  255. package/templates/app/README.MD +30 -0
  256. package/templates/app/package.json +12 -0
  257. package/templates/library/README.MD +28 -0
  258. package/templates/library/package.json +11 -0
  259. package/templates/wms/index.html +43 -0
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.configTPHashMappingPlugin = configTPHashMappingPlugin;
7
+
8
+ var _path = _interopRequireDefault(require("path"));
9
+
10
+ var _TPHashMappingPlugin = require("../custom_plugins/TPHashMappingPlugin");
11
+
12
+ var _modeUtils = require("../common/modeUtils");
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ function configTPHashMappingPlugin(options) {
17
+ const {
18
+ fileHashMappingToVariable,
19
+ context,
20
+ mode
21
+ } = options;
22
+
23
+ if ((0, _modeUtils.isProductionMode)(mode) && fileHashMappingToVariable) {
24
+ return new _TPHashMappingPlugin.TPHashMappingPlugin({
25
+ fileMappings: fileHashMappingToVariable,
26
+ tpFolder: `${_path.default.join(process.cwd(), context)}`
27
+ });
28
+ }
29
+
30
+ ;
31
+ return null;
32
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.configVariableConversionPlugin = configVariableConversionPlugin;
7
+
8
+ var _VariableConversionCollector = _interopRequireDefault(require("../custom_plugins/VariableConversionCollector"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function configVariableConversionPlugin(options) {
13
+ const {
14
+ cssVariableReplacement
15
+ } = options.css.plugins;
16
+
17
+ if (cssVariableReplacement.enable === false) {
18
+ return false;
19
+ }
20
+
21
+ return new _VariableConversionCollector.default({
22
+ configFile: cssVariableReplacement.configFile,
23
+ patterns: cssVariableReplacement.patterns
24
+ });
25
+ }
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.plugins = plugins;
7
+
8
+ var _configHtmlWebpackPlugin = require("./pluginConfigs/configHtmlWebpackPlugin");
9
+
10
+ var _configEnvVariables = require("./pluginConfigs/configEnvVariables");
11
+
12
+ var _configI18nSplitPlugin = require("./pluginConfigs/configI18nSplitPlugin");
13
+
14
+ var _configMiniCSSExtractPlugin = require("./pluginConfigs/configMiniCSSExtractPlugin");
15
+
16
+ var _configRtlCssPlugin = require("./pluginConfigs/configRtlCssPlugin");
17
+
18
+ var _configIgnorePlugin = require("./pluginConfigs/configIgnorePlugin");
19
+
20
+ var _configCdnChangePlugin = require("./pluginConfigs/configCdnChangePlugin");
21
+
22
+ var _configServiceWorkerPlugin = require("./pluginConfigs/configServiceWorkerPlugin");
23
+
24
+ var _configProgressPlugin = require("./pluginConfigs/configProgressPlugin");
25
+
26
+ var _configBundleAnalyzer = require("./pluginConfigs/configBundleAnalyzer");
27
+
28
+ var _configSelectorWeightPlugin = require("./pluginConfigs/configSelectorWeightPlugin");
29
+
30
+ var _configVariableConversionPlugin = require("./pluginConfigs/configVariableConversionPlugin");
31
+
32
+ var _configEFCTemplatePlugin = require("./pluginConfigs/configEFCTemplatePlugin");
33
+
34
+ var _configResourceHintsPlugin = require("./pluginConfigs/configResourceHintsPlugin");
35
+
36
+ var _configManifestJsonPlugin = require("./pluginConfigs/configManifestJsonPlugin");
37
+
38
+ var _configCopyPublicFolders = require("./pluginConfigs/configCopyPublicFolders");
39
+
40
+ var _configSourceMapPlugin = require("./pluginConfigs/configSourceMapPlugin");
41
+
42
+ var _configTPHashMappingPlugin = require("./pluginConfigs/configTPHashMappingPlugin");
43
+
44
+ var _configCustomAttributesPlugin = require("./pluginConfigs/configCustomAttributesPlugin");
45
+
46
+ var _configBundleIntegrityReport = require("./pluginConfigs/configBundleIntegrityReport");
47
+
48
+ var _configRuntimeResourceCleanup = require("./pluginConfigs/configRuntimeResourceCleanup");
49
+
50
+ var _configCustomScriptLoadingStrategyPlugin = require("./pluginConfigs/configCustomScriptLoadingStrategyPlugin");
51
+
52
+ var {
53
+ configI18nNumericIndexPlugin
54
+ } = require("./pluginConfigs/configI18nNumericIndexPlugin");
55
+
56
+ function plugins(options) {
57
+ const {
58
+ webpackPlugins
59
+ } = options;
60
+ const pluginConfigurations = [(0, _configEnvVariables.configEnvVariables)(options), (0, _configCustomAttributesPlugin.configCustomAttributesPlugin)(options), (0, _configTPHashMappingPlugin.configTPHashMappingPlugin)(options), (0, _configCopyPublicFolders.configCopyPublicFolders)(options), (0, _configIgnorePlugin.configIgnorePlugin)(options), (0, _configMiniCSSExtractPlugin.configMiniCSSExtractPlugin)(options), (0, _configSelectorWeightPlugin.configSelectorWeightPlugin)(options), (0, _configVariableConversionPlugin.configVariableConversionPlugin)(options), (0, _configRtlCssPlugin.configRtlCssPlugin)(options), (0, _configHtmlWebpackPlugin.configHtmlWebpackPlugin)(options), (0, _configCustomScriptLoadingStrategyPlugin.configCustomScriptLoadingStrategyPlugin)(options), (0, _configCdnChangePlugin.configCdnChangePlugin)(options), (0, _configServiceWorkerPlugin.configServiceWorkerPlugin)(options), (0, _configEFCTemplatePlugin.configEFCTemplatePlugin)(options), (0, _configResourceHintsPlugin.configResourceHintsPlugin)(options), (0, _configBundleAnalyzer.configBundleAnalyzer)(options), (0, _configManifestJsonPlugin.configManifestJsonPlugin)(options), (0, _configSourceMapPlugin.configSourceMapPlugin)(options), (0, _configProgressPlugin.configProgressPlugin)(options), (0, _configBundleIntegrityReport.configBundleIntegrityReport)(options), (0, _configRuntimeResourceCleanup.configRuntimeResourceCleanup)(options)];
61
+
62
+ if (options.i18nIndexing && options.i18nIndexing.enable) {
63
+ const newI18nPlugins = configI18nNumericIndexPlugin(options);
64
+
65
+ if (newI18nPlugins) {
66
+ pluginConfigurations.push(...newI18nPlugins);
67
+ }
68
+ } else {
69
+ const configI18nSplitPlugin = (0, _configI18nSplitPlugin.configI18nSplitPlugin)(options);
70
+
71
+ if (configI18nSplitPlugin) {
72
+ pluginConfigurations.push(configI18nSplitPlugin);
73
+ }
74
+ }
75
+
76
+ return [...pluginConfigurations, ...webpackPlugins].filter(Boolean);
77
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.loaderResolver = loaderResolver;
7
+ exports.moduleResolver = moduleResolver;
8
+
9
+ var _client_packages_group = require("@zohodesk/client_packages_group");
10
+
11
+ var _constants = require("../../constants");
12
+
13
+ var _libAlias = require("./common/libAlias");
14
+
15
+ var _requireLocalOrGlobal = require("../../utils/requireLocalOrGlobal");
16
+
17
+ var _logger = require("../../../logger");
18
+
19
+ /* eslint-disable no-use-before-define */
20
+ const defaultPackageGroupNpm = '@zohodesk/client_packages_group';
21
+
22
+ function decideNodeModulesPath(moduleResolvePath) {
23
+ if (typeof moduleResolvePath === 'string' && moduleResolvePath) {
24
+ const resolverPkg = (0, _requireLocalOrGlobal.requireAllPossible)(moduleResolvePath);
25
+
26
+ if (resolverPkg.local) {
27
+ (0, _logger.verboseLogger)(`Local '${moduleResolvePath}' package taken as Module Resolver`);
28
+ return resolverPkg.local.nodeModulesPath;
29
+ }
30
+
31
+ if (resolverPkg.global) {
32
+ (0, _logger.messageLogger)(`Global '${moduleResolvePath}' package taken as Module Resolver`);
33
+ return resolverPkg.global.nodeModulesPath;
34
+ }
35
+
36
+ (0, _logger.errorLogger)(`
37
+ You have given 'resolve.moduleResolvePath' as "${moduleResolvePath}".
38
+ But it seems that file path have some problem;`);
39
+ process.exit(0);
40
+ }
41
+
42
+ const globalResolverPkg = (0, _requireLocalOrGlobal.requireGlobal)(defaultPackageGroupNpm);
43
+
44
+ if (globalResolverPkg) {
45
+ (0, _logger.messageLogger)(`Global '${defaultPackageGroupNpm}' package taken as Module Resolver`);
46
+ return globalResolverPkg.nodeModulesPath;
47
+ }
48
+
49
+ (0, _logger.verboseLogger)(`CBT default '${defaultPackageGroupNpm}' package taken as Module Resolver`);
50
+ return _client_packages_group.nodeModulesPath;
51
+ }
52
+
53
+ function moduleResolver(options) {
54
+ const {
55
+ preferLocalFirst,
56
+ alias,
57
+ defaultAlias,
58
+ moduleResolvePath
59
+ } = options.resolve;
60
+ const nodeModulesPath = decideNodeModulesPath(moduleResolvePath);
61
+ return {
62
+ modules: useAppNodeModulesAsPreferred(preferLocalFirst, [nodeModulesPath, _constants.cliNodeModulesPath].filter(Boolean)),
63
+ alias: { ...(defaultAlias ? _libAlias.libAlias : {}),
64
+ ...(alias || {})
65
+ },
66
+ extensions: ['.ts', '.js', '.json', '.tsx']
67
+ };
68
+ }
69
+
70
+ function loaderResolver(options) {
71
+ const {
72
+ preferLocalFirst
73
+ } = options.resolve;
74
+ return {
75
+ modules: useAppNodeModulesAsPreferred(preferLocalFirst, [_constants.cliNodeModulesPath])
76
+ };
77
+ }
78
+
79
+ function useAppNodeModulesAsPreferred(preferLocalFirst = false, paths = []) {
80
+ const filteredPaths = paths.filter(Boolean);
81
+ return preferLocalFirst ? ['node_modules', ...filteredPaths, _constants.appNodeModules] : [...filteredPaths, 'node_modules', _constants.appNodeModules];
82
+ }
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.splitChunksConfig = splitChunksConfig;
7
+
8
+ var _defaultVendorPatternList = require("./defaultVendorPatternList");
9
+
10
+ var _getFilenameFromModule = require("./getFilenameFromModule");
11
+
12
+ var _checkIsPatternsMatchFilename = require("./loaderConfigs/checkIsPatternsMatchFilename");
13
+
14
+ function splitChunksConfig(options) {
15
+ const {
16
+ vendorPatterns,
17
+ customChunks,
18
+ customChunksBaseConfig
19
+ } = options;
20
+
21
+ const isVendor = function isVendor(webpackModule) {
22
+ const userRequest = (0, _getFilenameFromModule.getFilenameFromModule)(webpackModule);
23
+ const patterns = [..._defaultVendorPatternList.defaultVendorPatternList, ...vendorPatterns];
24
+ return (0, _checkIsPatternsMatchFilename.checkIsPatternsMatchFilename)(patterns, userRequest);
25
+ };
26
+
27
+ const isReact = webpackModule => {
28
+ const userRequest = (0, _getFilenameFromModule.getFilenameFromModule)(webpackModule);
29
+ return (0, _checkIsPatternsMatchFilename.checkIsPatternsMatchFilename)(_defaultVendorPatternList.reactBundleIncludeList, userRequest);
30
+ };
31
+
32
+ const defaultChunks = {
33
+ 'react.vendor': {
34
+ name: 'react.vendor',
35
+ chunks: 'all',
36
+ minChunks: 1,
37
+ test: isReact,
38
+ enforce: true,
39
+ priority: 30
40
+ },
41
+ vendor: {
42
+ name: 'vendor',
43
+ chunks: 'all',
44
+ minChunks: 1,
45
+ test: isVendor,
46
+ priority: 20
47
+ }
48
+ };
49
+ const customChunksConfig = {};
50
+ customChunks.reverse().forEach((cacheGroupObj, index) => {
51
+ const cacheGroupName = cacheGroupObj.cacheGroupName || cacheGroupObj.name; // eslint-disable-next-line no-use-before-define
52
+
53
+ const obj = getCacheGroup(cacheGroupObj, index);
54
+ customChunksConfig[cacheGroupName] = obj;
55
+ });
56
+ const splitChunksConfig = {
57
+ minSize: 12000,
58
+ ...(customChunksBaseConfig || {}),
59
+ cacheGroups: {
60
+ default: false,
61
+ defaultVendors: false,
62
+ ...defaultChunks,
63
+ ...customChunksConfig
64
+ }
65
+ };
66
+ return splitChunksConfig;
67
+ }
68
+
69
+ function getCacheGroup(obj, index) {
70
+ let {
71
+ minChunks,
72
+ priority,
73
+ chunks = 'all'
74
+ } = obj;
75
+ const {
76
+ name,
77
+ patterns,
78
+ enforce,
79
+ minSize,
80
+ maxSize,
81
+ reuseExistingChunk,
82
+ automaticNameDelimiter
83
+ } = obj;
84
+ chunks = obj.chunks || 'all';
85
+ minChunks = obj.minChunks || 2;
86
+ priority = obj.priority || 10 * (index + 2);
87
+ const cacheGroup = {
88
+ name,
89
+ test: m => {
90
+ const userRequest = (0, _getFilenameFromModule.getFilenameFromModule)(m);
91
+ return userRequest && (0, _checkIsPatternsMatchFilename.checkIsPatternsMatchFilename)(patterns, userRequest);
92
+ },
93
+ chunks,
94
+ minChunks,
95
+ priority,
96
+ enforce
97
+ };
98
+
99
+ if (minSize !== undefined) {
100
+ cacheGroup.minSize = minSize;
101
+ }
102
+
103
+ if (maxSize !== undefined) {
104
+ cacheGroup.maxSize = maxSize;
105
+ }
106
+
107
+ if (reuseExistingChunk !== undefined) {
108
+ cacheGroup.reuseExistingChunk = reuseExistingChunk;
109
+ }
110
+
111
+ if (automaticNameDelimiter !== undefined) {
112
+ cacheGroup.automaticNameDelimiter = automaticNameDelimiter;
113
+ }
114
+
115
+ return cacheGroup;
116
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.statsConfig = statsConfig;
7
+
8
+ // eslint-disable-next-line no-unused-vars
9
+ function statsConfig(options) {
10
+ let {
11
+ statsLogConfig
12
+ } = options;
13
+ statsLogConfig = statsLogConfig || {};
14
+
15
+ if (typeof statsLogConfig === 'string') {
16
+ return statsLogConfig;
17
+ }
18
+
19
+ return {
20
+ preset: 'minimal',
21
+ warnings: false,
22
+ children: false,
23
+ colors: true,
24
+ errorDetails: true,
25
+ ...statsLogConfig // excludeAssets: /i18n/,
26
+ // excludeAssets: /./,
27
+ // warningsFilter: /\[mini-css-extract-plugin\]/
28
+
29
+ };
30
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.tsLoaders = tsLoaders;
7
+
8
+ var _babelLoaderConfig = require("./loaderConfigs/babelLoaderConfig");
9
+
10
+ function tsLoaders(options) {
11
+ return [{
12
+ test: /\.tsx$/,
13
+ exclude: /node_modules/,
14
+ use: [(0, _babelLoaderConfig.babelLoaderConfig)(options)] // include: path.join(appPath, folder)
15
+
16
+ }];
17
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getTypeOf = getTypeOf;
7
+ exports.isJsFile = exports.isDirRelatedCss = exports.isCssFile = exports.isCss = void 0;
8
+
9
+ var _path = _interopRequireDefault(require("path"));
10
+
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+
13
+ const isCss = filename => _path.default.extname(filename) === '.css';
14
+
15
+ exports.isCss = isCss;
16
+
17
+ const isDirRelatedCss = filename => filename.includes('[dir]');
18
+
19
+ exports.isDirRelatedCss = isDirRelatedCss;
20
+
21
+ const isJsFile = file => /\.js$/.test(file);
22
+
23
+ exports.isJsFile = isJsFile;
24
+
25
+ const isCssFile = file => /\.css$/.test(file);
26
+
27
+ exports.isCssFile = isCssFile;
28
+
29
+ function getTypeOf(value) {
30
+ return Object.prototype.toString.call(value).split(/\s/)[1].replace(/\]/, '').toLowerCase();
31
+ }
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.convertObjectToStringGen = convertObjectToStringGen;
7
+ exports.removeKeysFromObject = removeKeysFromObject;
8
+
9
+ /* eslint-disable no-restricted-syntax */
10
+ function objectPathMatcher(currentKey, objHierarchy = [], keysToBeRemoved = []) {
11
+ const objPathKey = objHierarchy.length > 0 ? `${objHierarchy.join('.')}.${currentKey}` : currentKey;
12
+ return keysToBeRemoved.some(key => {
13
+ const isWildPath = /^\*/.test(key);
14
+
15
+ if (isWildPath) {
16
+ const newKey = key.replace(/\*\.?/, '');
17
+ return objPathKey.includes(newKey);
18
+ }
19
+
20
+ return key === objPathKey;
21
+ });
22
+ }
23
+ /*
24
+ 1) *.keyTobeRemoved -> means match every object path, this key will be removed
25
+ 2) keyToBeremoved -> means root object key
26
+ 3) nestedPath.keyToBeRemoved -> means only that nested path key
27
+ 4) don't need to account for array iteration, just object key path is enough in the key to be removed.
28
+ */
29
+
30
+
31
+ function removeKeysFromObject(obj, keysToBeRemoved, prevKeys = []) {
32
+ if (Array.isArray(obj)) {
33
+ return obj.map(item => removeKeysFromObject(item, keysToBeRemoved, prevKeys));
34
+ }
35
+
36
+ if (obj && typeof obj === 'object') {
37
+ const filteredKeyObject = {};
38
+ const ObjectKeys = Object.keys(obj);
39
+
40
+ for (const objectKey of ObjectKeys) {
41
+ const isKeyToBeRemoved = objectPathMatcher(objectKey, prevKeys, keysToBeRemoved);
42
+
43
+ if (!isKeyToBeRemoved) {
44
+ filteredKeyObject[objectKey] = removeKeysFromObject(obj[objectKey], keysToBeRemoved, [...prevKeys, objectKey]);
45
+ }
46
+ }
47
+
48
+ return filteredKeyObject;
49
+ }
50
+
51
+ return obj;
52
+ }
53
+
54
+ function* convertObjectToStringGen(obj) {
55
+ if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || obj === null) {
56
+ yield JSON.stringify(obj);
57
+ } else if (Array.isArray(obj)) {
58
+ yield '[';
59
+ let isFirst = true;
60
+
61
+ for (let item of obj) {
62
+ if (item === undefined) {
63
+ item = null;
64
+ }
65
+
66
+ yield `${isFirst ? '' : ','}`;
67
+ yield* convertObjectToStringGen(item);
68
+ isFirst = false;
69
+ }
70
+
71
+ yield ']';
72
+ } else {
73
+ yield '{';
74
+ let isFirst = true;
75
+ const entries = Object.entries(obj);
76
+
77
+ for (const [itemKey, itemValue] of entries) {
78
+ if (itemValue !== undefined) {
79
+ yield `${isFirst ? '' : ','}${JSON.stringify(itemKey)}: `;
80
+ yield* convertObjectToStringGen(itemValue);
81
+ isFirst = false;
82
+ }
83
+ }
84
+
85
+ yield '}';
86
+ }
87
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getArrayWithDefault = getArrayWithDefault;
7
+ exports.updateArrayWithDefault = updateArrayWithDefault;
8
+
9
+ function updateArrayWithDefault(array, defaultoptions = []) {
10
+ const index = array.indexOf('...');
11
+
12
+ if (index === -1) {
13
+ return array;
14
+ }
15
+
16
+ const newArray = [...array];
17
+ newArray.splice(index, 1, ...defaultoptions);
18
+ return newArray;
19
+ }
20
+
21
+ const isEqualVal = (a, b) => a === b;
22
+
23
+ function getArrayWithDefault(array, defaultoptions = [], isEqual = isEqualVal) {
24
+ const index = array.indexOf('...');
25
+
26
+ if (index === -1) {
27
+ return array;
28
+ }
29
+
30
+ const filteredDefaultOptions = defaultoptions.filter(v => !array.some(v1 => isEqual(v, v1)));
31
+ const newArray = [...array];
32
+ newArray.splice(index, 1, ...filteredDefaultOptions);
33
+ return newArray;
34
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = webpackBuild;
7
+
8
+ var _webpack = require("webpack");
9
+
10
+ var _statsConfig = require("./statsConfig");
11
+
12
+ var _webpackConfig = _interopRequireDefault(require("./webpackConfig"));
13
+
14
+ var _logger = require("../../../logger");
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ function webpackBuild(options) {
19
+ const config = (0, _webpackConfig.default)(options);
20
+ (0, _webpack.webpack)(config, (err, stats) => {
21
+ if (err || stats.hasErrors()) {
22
+ (0, _logger.errorLogger)('err', err);
23
+ }
24
+
25
+ (0, _logger.messageLogger)(stats.toString((0, _statsConfig.statsConfig)(options)));
26
+ });
27
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = webpackConfigCreator;
7
+
8
+ var _entryConfig = require("./entryConfig");
9
+
10
+ var _outputConfig = require("./outputConfig");
11
+
12
+ var _jsLoaders = require("./jsLoaders");
13
+
14
+ var _tsLoaders = require("./tsLoaders");
15
+
16
+ var _cssLoaders = require("./cssLoaders");
17
+
18
+ var _assetLoaders = require("./loaderConfigs/assetLoaders");
19
+
20
+ var _plugins = require("./plugins");
21
+
22
+ var _resolvers = require("./resolvers");
23
+
24
+ var _optimizationConfig = require("./optimizationConfig");
25
+
26
+ var _configHtmlTemplateLoader = require("./loaderConfigs/configHtmlTemplateLoader");
27
+
28
+ var _configWebWorkerLoader = require("./loaderConfigs/configWebWorkerLoader");
29
+
30
+ var _statsConfig = require("./statsConfig");
31
+
32
+ var _devtoolConfig = require("./devtoolConfig");
33
+
34
+ var _modeUtils = require("./common/modeUtils");
35
+
36
+ var _externals = require("./externals");
37
+
38
+ var _configCustomLoaders = require("./configCustomLoaders");
39
+
40
+ function webpackConfigCreator(options) {
41
+ return {
42
+ entry: (0, _entryConfig.entryConfig)(options),
43
+ mode: (0, _modeUtils.getWebpackMode)(options),
44
+ output: (0, _outputConfig.outputConfig)(options),
45
+ devtool: (0, _devtoolConfig.devtoolConfig)(options),
46
+ stats: (0, _statsConfig.statsConfig)(options),
47
+ optimization: (0, _optimizationConfig.optimizationConfig)(options),
48
+ module: {
49
+ /* strictExportPresence for break the build when imported module not present in respective file */
50
+ // strictExportPresence: true,
51
+ rules: [...(0, _jsLoaders.jsLoaders)(options), ...(0, _tsLoaders.tsLoaders)(options), ...(0, _cssLoaders.cssLoaders)(options), (0, _configWebWorkerLoader.configWebWorkerLoader)(options), (0, _configHtmlTemplateLoader.configHtmlTemplateLoader)(options), ...(0, _assetLoaders.assetLoaders)(options), ...(0, _configCustomLoaders.configCustomLoaders)(options)]
52
+ },
53
+ plugins: (0, _plugins.plugins)(options),
54
+ externals: (0, _externals.externals)(options),
55
+ resolve: (0, _resolvers.moduleResolver)(options),
56
+ resolveLoader: (0, _resolvers.loaderResolver)(options)
57
+ };
58
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.doBasicRequirementCheck = doBasicRequirementCheck;
7
+
8
+ /* eslint-disable no-throw-literal */
9
+ function doBasicRequirementCheck() {
10
+ const majorV = Number(process.version.slice(1, 4));
11
+
12
+ if (majorV >= 14 && majorV <= 18) {
13
+ return true;
14
+ }
15
+
16
+ throw `your node version not compatible with this cli please update node version to 14 - 18, and your current version is ${process.version}`;
17
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getCliPath = getCliPath;
7
+
8
+ var _os = require("os");
9
+
10
+ var _fs = require("fs");
11
+
12
+ var _path = require("path");
13
+
14
+ var _constants = require("../constants");
15
+
16
+ const isWindows = (0, _os.platform)().toLowerCase() === 'win32';
17
+ const suffixExt = isWindows ? '.cmd' : ''; // function searchForCommandPath(commandName) {
18
+ // let pathFolders = __dirname.split(sep);
19
+ // let cliPath;
20
+ // while (pathFolders.pop()) {
21
+ // cliPath = join(pathFolders.join(sep), 'node_modules', '.bin', commandName);
22
+ // if (existsSync(cliPath)) {
23
+ // return cliPath;
24
+ // }
25
+ // }
26
+ // console.warn(`unable to find command "${commandName}"`);
27
+ // return join(__dirname, '..', 'node_modules', '.bin', commandName);
28
+ // }
29
+
30
+ function searchForCommandPath(libName) {
31
+ const commandPath = (0, _path.join)(_constants.cliNodeModulesPath, '.bin', libName); // TODO: need to check for windows machine reason command with ext added,
32
+ // when we use global react-cli package (executable) working or not
33
+
34
+ return (0, _fs.existsSync)(commandPath) ? commandPath : libName;
35
+ }
36
+
37
+ function getCliPath(commandName) {
38
+ return searchForCommandPath(commandName + suffixExt);
39
+ }