@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,35 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.npmConfigToObject = npmConfigToObject;
7
+
8
+ var _logger = require("../logger");
9
+
10
+ const NPM_CONFIG_PREFIX = 'npm_config_'; // TODO: we have to do option parse logic little better
11
+ // if user use react-cli strictly without using npm scripts options won't work,
12
+ // So we have to write our own option parse logic or some other library
13
+ // console.log('type', process.argv, process.env.npm_config_check, process.env.npm_config_clone_type, process.env.npm_config_clone_url);
14
+ // console.log('Object.keys(process.env).filter(s => s.startsWith(\'npm_config_\') && s.includes(\'clone\')', Object.keys(process.env).filter(s => s.startsWith('npm_config_') && s.includes('clone')));
15
+
16
+ function npmConfigToObject() {
17
+ // // clone:type
18
+ const processEnv = {};
19
+ const keysWithColon = [];
20
+ Object.keys(process.env).filter(key => key.startsWith(NPM_CONFIG_PREFIX)).forEach(key => {
21
+ const nKey = key.slice(NPM_CONFIG_PREFIX.length);
22
+ processEnv[nKey] = process.env[key];
23
+ nKey.includes(':') && keysWithColon.push(nKey);
24
+ });
25
+ keysWithColon.forEach(key => {
26
+ const nKey = key.replace(/:/g, '_');
27
+
28
+ if (processEnv[nKey]) {
29
+ (0, _logger.warnLogger)('there is some options conflict', key, nKey);
30
+ }
31
+
32
+ processEnv[nKey] = processEnv[key];
33
+ });
34
+ return processEnv;
35
+ }
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getOptions = exports.args = void 0;
7
+
8
+ var _applyValuesToSchema = require("./applyValuesToSchema");
9
+
10
+ var _cliArgsToObject = require("./cliArgsToObject");
11
+
12
+ var _defaultConfigValues = _interopRequireDefault(require("./defaultConfigValues"));
13
+
14
+ var _deprecatedOptionsHandler = require("./deprecatedOptionsHandler");
15
+
16
+ var _getNpmVersion = require("./getNpmVersion");
17
+
18
+ var _npmConfigToObject = require("./npmConfigToObject");
19
+
20
+ var _readOptionsForConfigFile = require("./readOptionsForConfigFile");
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+
24
+ const args = process.argv.slice(2);
25
+ exports.args = args;
26
+ const processEnv = (0, _npmConfigToObject.npmConfigToObject)();
27
+ const cliArgsObject = (0, _cliArgsToObject.cliArgsToObject)(args);
28
+
29
+ if (cliArgsObject.app_domain && cliArgsObject.app_domain == 'kubernetes') {
30
+ cliArgsObject.k8s = true;
31
+ }
32
+
33
+ if (cliArgsObject.app_domain) {
34
+ cliArgsObject.domain = cliArgsObject.app_domain;
35
+ }
36
+
37
+ if (cliArgsObject.app_port) {
38
+ cliArgsObject.port = cliArgsObject.app_port;
39
+ }
40
+
41
+ if (cliArgsObject.app_host) {
42
+ cliArgsObject.host = cliArgsObject.app_host;
43
+ }
44
+
45
+ if (processEnv.app_domain && processEnv.app_domain == 'kubernetes') {
46
+ cliArgsObject.k8s = true;
47
+ }
48
+
49
+ if (processEnv.app_domain) {
50
+ cliArgsObject.domain = processEnv.app_domain;
51
+ }
52
+
53
+ if (processEnv.app_port) {
54
+ cliArgsObject.port = processEnv.app_port;
55
+ }
56
+
57
+ if (processEnv.app_host) {
58
+ cliArgsObject.host = processEnv.app_host;
59
+ }
60
+
61
+ Object.assign(processEnv, cliArgsObject);
62
+ let reactCLIOptions = null;
63
+
64
+ const getOptions = () => {
65
+ if (reactCLIOptions) {
66
+ return reactCLIOptions;
67
+ }
68
+
69
+ const appPath = process.cwd();
70
+ const userSchemas = (0, _readOptionsForConfigFile.readOptionsForPackageJson)(appPath); // NOTE: Only config File option will with cli option config_file
71
+
72
+ const configFileSchemas = (0, _readOptionsForConfigFile.readOptionsForConfigFile)(appPath, cliArgsObject.config_file || 'cbt.config.js');
73
+ const options = (0, _applyValuesToSchema.applyValuesToSchema)(_defaultConfigValues.default, configFileSchemas || userSchemas || {}, processEnv);
74
+ (0, _deprecatedOptionsHandler.deprecatedOptionsHandler)(options); // for future may be for npm 8 edge cases
75
+
76
+ options.npmVersion = (0, _getNpmVersion.getNpmVersion)();
77
+ options.cwd = appPath;
78
+ options.packageVersion = process.env.npm_package_version;
79
+ options.extraArgs = process.argv.slice(3); // eslint-disable-next-line prefer-destructuring
80
+
81
+ options.commandOption = process.argv[2];
82
+ reactCLIOptions = options; // console.log({ options });
83
+
84
+ return options;
85
+ };
86
+
87
+ exports.getOptions = getOptions;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.readOptionsForConfigFile = readOptionsForConfigFile;
7
+ exports.readOptionsForPackageJson = readOptionsForPackageJson;
8
+
9
+ var _fs = require("fs");
10
+
11
+ var _path = _interopRequireDefault(require("path"));
12
+
13
+ var _constants = require("../shared/constants");
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
+
17
+ // import { CONFIG_ROOT } from "../constants";
18
+ function readOptionsForPackageJson(appPath) {
19
+ const packagePath = _path.default.join(appPath, 'package.json');
20
+
21
+ if ((0, _fs.existsSync)(packagePath)) {
22
+ // eslint-disable-next-line import/no-dynamic-require, global-require
23
+ return require(packagePath)[_constants.BASE_CONFIG_KEY] || {};
24
+ }
25
+
26
+ return {};
27
+ }
28
+
29
+ function readOptionsForConfigFile(appPath, configFile) {
30
+ if (!configFile) {
31
+ return null;
32
+ }
33
+
34
+ const packagePath = _path.default.join(appPath, configFile);
35
+
36
+ if ((0, _fs.existsSync)(packagePath)) {
37
+ // eslint-disable-next-line import/no-dynamic-require, global-require
38
+ return require(packagePath).config;
39
+ }
40
+
41
+ return null;
42
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.addDefaultPlugins = addDefaultPlugins;
7
+
8
+ function addDefaultPlugins(plugin, pluginName) {
9
+ if (plugin.enable) {
10
+ return [require.resolve(pluginName), plugin.options];
11
+ }
12
+
13
+ ;
14
+ return null;
15
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.babelWebConfig = babelWebConfig;
7
+
8
+ var _helperCompilationTargets = _interopRequireDefault(require("@babel/helper-compilation-targets"));
9
+
10
+ var _logger = require("../../logger");
11
+
12
+ var _getBabelPlugin = require("./getBabelPlugin");
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ /* eslint-disable no-use-before-define */
17
+ const supportedBrowserVersions = ['last 3 Chrome versions', 'last 3 Firefox versions', 'last 3 Edge versions', 'last 3 Safari versions'];
18
+
19
+ function customBabelPlugins(babelPlugins) {
20
+ return babelPlugins.map(p => p).filter(Boolean);
21
+ }
22
+
23
+ function babelWebConfig(options, mode) {
24
+ const {
25
+ plugins: babelPlugins,
26
+ browserList
27
+ } = options.babelCustomizations;
28
+ const {
29
+ enable: typeScriptEnable
30
+ } = options.typeScript;
31
+ return {
32
+ presets: typeScriptEnable ? [getBabelPresetEnvConfig(browserList, mode), require.resolve('@babel/preset-react'), require.resolve('@babel/preset-typescript')] : [getBabelPresetEnvConfig(browserList, mode), require.resolve('@babel/preset-react')],
33
+ plugins: customBabelPlugins(babelPlugins).concat((0, _getBabelPlugin.getBabelPlugin)(options)).filter(Boolean)
34
+ };
35
+ }
36
+
37
+ function getBabelPresetEnvConfig(browserList, mode) {
38
+ if (mode === 'lib') {
39
+ return require.resolve('@babel/preset-env');
40
+ }
41
+
42
+ const browsers = browserList || supportedBrowserVersions;
43
+ (0, _logger.verboseLogger)('getTargets', (0, _helperCompilationTargets.default)({
44
+ browsers
45
+ }));
46
+ return [require.resolve('@babel/preset-env'), {
47
+ modules: false,
48
+ useBuiltIns: 'usage',
49
+ corejs: 3,
50
+ targets: {
51
+ browsers
52
+ }
53
+ }];
54
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ module.exports = () => ({
4
+ visitor: {
5
+ Program(path, state) {
6
+ let properties = state.opts.properties || [];
7
+
8
+ if (properties.length === 0) {
9
+ properties = properties.concat(state.opts.attributeNames);
10
+ }
11
+
12
+ path.traverse({
13
+ JSXIdentifier(path2) {
14
+ if (properties.indexOf(path2.node.name.toLowerCase()) > -1) {
15
+ path2.parentPath.remove();
16
+ }
17
+ }
18
+
19
+ });
20
+ }
21
+
22
+ }
23
+ });
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getBabelPlugin = getBabelPlugin;
7
+
8
+ var _modeUtils = require("../bundler/webpack/common/modeUtils");
9
+
10
+ var _addDefaultPlugins = require("./addDefaultPlugins");
11
+
12
+ const babelPluginMapping = {
13
+ removeAttribute: './babel_plugins/removeAttributesPlugin',
14
+ removePropTypes: 'babel-plugin-transform-react-remove-prop-types',
15
+ devConsoleExclude: 'babel-plugin-transform-remove-console'
16
+ };
17
+ const babelPluginOrder = ['removeAttribute', 'removePropTypes', 'devConsoleExclude'];
18
+
19
+ function getBabelPlugin(options) {
20
+ const {
21
+ mode
22
+ } = options;
23
+ const {
24
+ alias
25
+ } = options.resolve; // let customPlugins = [];
26
+
27
+ let customPlugins = [[require.resolve('babel-plugin-module-resolver'), {
28
+ root: ['./'],
29
+ alias
30
+ }]];
31
+ const {
32
+ babelCustomizations
33
+ } = options;
34
+
35
+ if ((0, _modeUtils.isProductionMode)(mode)) {
36
+ const configCreator = _addDefaultPlugins.addDefaultPlugins;
37
+ const plugins = babelPluginOrder.map(p => configCreator(babelCustomizations[p], babelPluginMapping[p]));
38
+ customPlugins = plugins;
39
+ }
40
+
41
+ return customPlugins.filter(Boolean);
42
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.runBabelForJSFile = runBabelForJSFile;
7
+
8
+ var _core = require("@babel/core");
9
+
10
+ var _babelWebConfig = require("./babelWebConfig");
11
+
12
+ var _copyFile = require("../fileUtils/copyFile");
13
+
14
+ function runBabelForJSFile({
15
+ filename,
16
+ outputFile,
17
+ options,
18
+ mode = 'es'
19
+ }) {
20
+ // const jsSourceCode = readFileSync(filename).toString();
21
+ const babelConfig = (0, _babelWebConfig.babelWebConfig)(options, mode);
22
+ const result = (0, _core.transformFileSync)(filename, babelConfig);
23
+ (0, _copyFile.writeFile)(outputFile, result.code);
24
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.runBabelForTSFile = runBabelForTSFile;
7
+
8
+ var _core = require("@babel/core");
9
+
10
+ var _babelWebConfig = require("./babelWebConfig");
11
+
12
+ var _copyFile = require("../fileUtils/copyFile");
13
+
14
+ function runBabelForTSFile({
15
+ filename,
16
+ outputFile,
17
+ options,
18
+ mode = 'es'
19
+ }) {
20
+ const {
21
+ enable
22
+ } = options.typeScript;
23
+
24
+ if (enable) {
25
+ // const jsSourceCode = readFileSync(filename).toString();
26
+ const babelConfig = (0, _babelWebConfig.babelWebConfig)(options, mode);
27
+ const result = (0, _core.transformFileSync)(filename, babelConfig);
28
+ (0, _copyFile.writeFile)(outputFile.replace('.tsx', '.js').replace('.ts', '.js'), result.code);
29
+ }
30
+ }
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.decidePublicPath = decidePublicPath;
7
+ exports.modifiedServerOptions = modifiedServerOptions;
8
+
9
+ var _getServerURL = require("../../../server/getServerURL");
10
+
11
+ var _httpsOptions = require("../../../server/httpsOptions");
12
+
13
+ var _urlConcat = require("../../../server/urlConcat");
14
+
15
+ function decidePublicPath(serverExtras) {
16
+ return serverExtras.isHttps ? serverExtras.httpsUrl : serverExtras.httpUrl;
17
+ }
18
+
19
+ function modifiedServerOptions(options) {
20
+ const {
21
+ server,
22
+ context
23
+ } = options;
24
+ const {
25
+ disableContextURL
26
+ } = server;
27
+ const {
28
+ k8s
29
+ } = server;
30
+ const port = Number(server.port);
31
+ const httpsOptions = (0, _httpsOptions.httpsOptionsWithUserFriendlyError)(options);
32
+ const machineDomain = (0, _getServerURL.getServerDomain)(server);
33
+ const httpPort = port + 1;
34
+ const httpsUrl = (0, _getServerURL.getServerUrl)({
35
+ domain: machineDomain,
36
+ k8s,
37
+ port,
38
+ protocol: 'https'
39
+ });
40
+ const httpUrl = (0, _getServerURL.getServerUrl)({
41
+ domain: machineDomain,
42
+ k8s,
43
+ port: httpPort,
44
+ protocol: 'http'
45
+ });
46
+ const contextURL = disableContextURL ? '' : `/${context}`;
47
+ return {
48
+ httpsOptions,
49
+ machineDomain,
50
+ contextURL,
51
+ httpsPort: port,
52
+ httpPort,
53
+ httpsUrl: (0, _urlConcat.urlConcat)(httpsUrl, contextURL),
54
+ httpUrl: (0, _urlConcat.urlConcat)(httpUrl, contextURL),
55
+ isHttps: !!httpsOptions
56
+ };
57
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.generateShortHash = generateShortHash;
7
+
8
+ var _crypto = require("crypto");
9
+
10
+ function generateShortHash(str, length = 8) {
11
+ if (typeof str !== 'string' || str.length === 0) {
12
+ return '';
13
+ }
14
+
15
+ try {
16
+ return (0, _crypto.createHash)('md5').update(str).digest('hex').slice(0, length);
17
+ } catch (error) {
18
+ return '';
19
+ }
20
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.libAlias = void 0;
7
+ // the reason for alias at the time was code tree shaking
8
+ // tree shaking was most compactable with ES module system
9
+ // FIXME: But there is a posiblity when these package does not have lib,
10
+ // app will work because of alias, But may be jest won't work because of not alais
11
+ // So need to think about use alais in jest
12
+ const libAlias = {
13
+ '@zohodesk/components/lib': '@zohodesk/components/es',
14
+ // '@zohodesk/zc-custom/lib': '@zohodesk/zc-custom/es',
15
+ '@zohodesk/dot/lib': '@zohodesk/dot/es',
16
+ '@zohodesk/i18n/lib': '@zohodesk/i18n/es',
17
+ '@zohodesk/icons/lib': '@zohodesk/icons/es',
18
+ '@zohodesk/normalizer/lib': '@zohodesk/normalizer/es',
19
+ '@zohodesk/perf-components/lib': '@zohodesk/perf-components/es',
20
+ '@zohodesk/perf-middleware/lib': '@zohodesk/perf-middleware/es',
21
+ '@zohodesk/permissions/lib': '@zohodesk/permissions/es',
22
+ '@zohodesk/platform-middleware/lib': '@zohodesk/platform-middleware/es',
23
+ '@zohodesk/react-dnd/lib': '@zohodesk/react-dnd/es',
24
+ '@zohodesk/router-middleware/lib': '@zohodesk/router-middleware/es',
25
+ '@zohodesk/storage/lib': '@zohodesk/storage/es',
26
+ '@zohodesk/svg/lib': '@zohodesk/svg/es',
27
+ '@zohodesk/timetracker/lib': '@zohodesk/timetracker/es',
28
+ '@zohodesk/variables/lib': '@zohodesk/variables/es',
29
+ '@zohodesk/virtualizer/lib': '@zohodesk/virtualizer/es'
30
+ };
31
+ exports.libAlias = libAlias;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getGlobalCacheStorageName = getGlobalCacheStorageName;
7
+ exports.getWebpackMode = getWebpackMode;
8
+ exports.isDevelopmentMode = isDevelopmentMode;
9
+ exports.isNotProduction = isNotProduction;
10
+ exports.isProductionMode = isProductionMode;
11
+
12
+ function isProductionMode(mode) {
13
+ return mode === 'prod' || mode === 'production';
14
+ }
15
+
16
+ function isDevelopmentMode(mode) {
17
+ return mode === 'dev' || mode === 'development';
18
+ }
19
+
20
+ function getWebpackMode(options) {
21
+ const {
22
+ mode
23
+ } = options;
24
+ return isProductionMode(mode) ? 'production' : 'development';
25
+ }
26
+
27
+ function getGlobalCacheStorageName(options) {
28
+ const {
29
+ context
30
+ } = options;
31
+ return `${context}Jsonp`;
32
+ }
33
+
34
+ function isNotProduction(options) {
35
+ const {
36
+ mode
37
+ } = options;
38
+ return isProductionMode(mode) === false;
39
+ }
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isI18nFile = void 0;
7
+ exports.nameTemplates = nameTemplates;
8
+
9
+ var _modeUtils = require("./modeUtils");
10
+
11
+ // nameTemplate.js
12
+ // NOTE: these below code can be done in js,
13
+ // we did copy paste in order to avoid unnecessary confusion
14
+ // NOTE: array[0] is dev mode file templates and array[1] is prod mode file templates
15
+ const defaultTemplates = {
16
+ html: ['index.html', 'index.[contenthash].html'],
17
+ js: ['js/[name].js', 'js/[name].[contenthash]_.js'],
18
+ chunkjs: ['js-chunk/[name].js', 'js-chunks/[name].[contenthash]_.js'],
19
+ i18njs: ['i18n-chunk/[locale]/[name].i18n.js', 'i18n-chunk/[locale]/[name].[chunkhash:20]_.i18n.js'],
20
+ i18nchunkjs: ['i18n-chunk/[locale]/[name].i18n.js', // 'i18n-chunk/[locale]/[name].[chunkhash].i18n.js'
21
+ 'i18n-chunk/[locale]/[name].[contenthash]_.i18n.js'],
22
+ i18nmanifest: ['i18n-manifest.json', 'i18n-manifest.json'],
23
+ workerjs: ['js/[name].js', 'js/[name].[contenthash].js'],
24
+ css: ['css/[name].css', 'css/[name].[contenthash]_.css'],
25
+
26
+ /**
27
+ * NOTE: when you change (cssdir) this line it will have affect on Below files will be affected
28
+ * custom_plugins/RtlSplitPlugin/*
29
+ * pluginConfigs/configMiniCSSExtractPlugin.js
30
+ * pluginConfigs/configRtlCssPlugin.js
31
+ * */
32
+ cssdir: ['css/[name].[dir].css', 'css/[name].[contenthash]_.[dir].css'],
33
+ image: ['images/[name][ext]', 'images/[name].[contenthash][ext]'],
34
+ font: ['fonts/[name][ext]', 'fonts/[name].[contenthash][ext]'],
35
+ svg: ['fonts/[name][ext]', 'fonts/[name].[contenthash][ext]'],
36
+ audio: ['fonts/[name][ext]', 'fonts/[name].[contenthash][ext]'],
37
+ video: ['videos/[name][ext]', 'videos/[name].[contenthash][ext]']
38
+ };
39
+
40
+ function createNameTemplate(name, useHash) {
41
+ // const ext = `${useHash ? '.[hash:20]' : ''}[ext]`;
42
+ return useHash ? name[1] : name[0];
43
+ }
44
+
45
+ const defaultDevModeContentHashAllowedTypes = {
46
+ image: true,
47
+ font: true,
48
+ svg: true,
49
+ audio: true,
50
+ video: true
51
+ };
52
+
53
+ function nameTemplates(type, options) {
54
+ const {
55
+ enableFileNameHashing,
56
+ mode,
57
+ devLikeHash,
58
+ nameTemplateCustomization
59
+ } = options;
60
+ let {
61
+ devModeContentHashAllowedTypes
62
+ } = options;
63
+ devModeContentHashAllowedTypes = devModeContentHashAllowedTypes || defaultDevModeContentHashAllowedTypes;
64
+ const templates = { ...defaultTemplates,
65
+ ...nameTemplateCustomization
66
+ };
67
+ const templateName = templates[type];
68
+
69
+ if (!templateName) {
70
+ throw Error(`specified type not valid Type: ${type}`);
71
+ } // eslint-disable-next-line no-use-before-define
72
+
73
+
74
+ const useHash = checkCanWeAllowHash({
75
+ enableFileNameHashing,
76
+ devLikeHash: devLikeHash || (0, _modeUtils.isDevelopmentMode)(mode),
77
+ type,
78
+ devModeContentHashAllowedTypes
79
+ });
80
+ return createNameTemplate(templateName, useHash);
81
+ }
82
+
83
+ function checkCanWeAllowHash({
84
+ enableFileNameHashing,
85
+ devLikeHash,
86
+ type,
87
+ devModeContentHashAllowedTypes
88
+ }) {
89
+ if (!enableFileNameHashing) {
90
+ return false;
91
+ }
92
+
93
+ if (devLikeHash) {
94
+ return devModeContentHashAllowedTypes[type];
95
+ }
96
+
97
+ return true;
98
+ } // export function cssDirNameTemplate(dir, options) {
99
+ // return nameTemplates('cssdir', options).replace(/\[dir\]/g, dir);
100
+ // }
101
+
102
+
103
+ const isI18nFile = url => url.endsWith('.i18n.js');
104
+
105
+ exports.isI18nFile = isI18nFile;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.publicPathAsExpression = publicPathAsExpression;
7
+ exports.resourceBasedPublicPath = resourceBasedPublicPath;
8
+
9
+ // const publicPaths = {
10
+ // };
11
+ function resourceBasedPublicPath(resoruceType, options) {
12
+ return options.publicPath;
13
+ }
14
+
15
+ function publicPathAsExpression(resoruceType, options) {
16
+ if (resoruceType === 'i18n') {
17
+ return options.i18nChunkSplit.localeVarName;
18
+ }
19
+
20
+ return JSON.stringify(options.publicPath);
21
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.configCustomLoaders = configCustomLoaders;
7
+
8
+ function configCustomLoaders(options) {
9
+ return options.customLoaders || [];
10
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.cssLoaders = cssLoaders;
7
+
8
+ var _getCSSLoaders = require("./getCSSLoaders");
9
+
10
+ function cssLoaders(options) {
11
+ return [{
12
+ test: /\.css$/,
13
+ // exclude: /\.module\.css$/,
14
+ use: (0, _getCSSLoaders.getCSSLoaders)(options)
15
+ }];
16
+ }