@umijs/bundler-webpack 3.5.20 → 4.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/README.md +2 -0
  2. package/bin/bundler-webpack.js +1 -2
  3. package/client/client/client.js +202 -0
  4. package/client/constants.js +12 -0
  5. package/client/utils/formatWebpackMessages.js +92 -0
  6. package/compiled/@svgr/webpack/.svgo.yml +75 -0
  7. package/compiled/@svgr/webpack/LICENSE +7 -0
  8. package/compiled/@svgr/webpack/index.js +343 -0
  9. package/compiled/@svgr/webpack/package.json +1 -0
  10. package/compiled/autoprefixer/LICENSE +20 -0
  11. package/compiled/autoprefixer/browserslist/index.d.ts +172 -0
  12. package/compiled/autoprefixer/index.js +9 -0
  13. package/compiled/autoprefixer/lib/autoprefixer.d.ts +95 -0
  14. package/compiled/autoprefixer/package.json +1 -0
  15. package/compiled/autoprefixer/postcss/lib/at-rule.d.ts +106 -0
  16. package/compiled/autoprefixer/postcss/lib/comment.d.ts +56 -0
  17. package/compiled/autoprefixer/postcss/lib/container.d.ts +442 -0
  18. package/compiled/autoprefixer/postcss/lib/css-syntax-error.d.ts +192 -0
  19. package/compiled/autoprefixer/postcss/lib/declaration.d.ts +124 -0
  20. package/compiled/autoprefixer/postcss/lib/document.d.ts +57 -0
  21. package/compiled/autoprefixer/postcss/lib/input.d.ts +130 -0
  22. package/compiled/autoprefixer/postcss/lib/lazy-result.d.ts +175 -0
  23. package/compiled/autoprefixer/postcss/lib/list.d.ts +51 -0
  24. package/compiled/autoprefixer/postcss/lib/node.d.ts +444 -0
  25. package/compiled/autoprefixer/postcss/lib/postcss.d.ts +472 -0
  26. package/compiled/autoprefixer/postcss/lib/previous-map.d.ts +72 -0
  27. package/compiled/autoprefixer/postcss/lib/processor.d.ts +101 -0
  28. package/compiled/autoprefixer/postcss/lib/result.d.ts +195 -0
  29. package/compiled/autoprefixer/postcss/lib/root.d.ts +73 -0
  30. package/compiled/autoprefixer/postcss/lib/rule.d.ts +104 -0
  31. package/compiled/autoprefixer/postcss/lib/warning.d.ts +104 -0
  32. package/compiled/autoprefixer/source-map-js/source-map.d.ts +98 -0
  33. package/compiled/babel-loader/LICENSE +22 -0
  34. package/compiled/babel-loader/index.js +3 -0
  35. package/compiled/babel-loader/package.json +1 -0
  36. package/compiled/compression/LICENSE +23 -0
  37. package/compiled/compression/index.js +57 -0
  38. package/compiled/compression/package.json +1 -0
  39. package/compiled/connect-history-api-fallback/LICENSE +21 -0
  40. package/compiled/connect-history-api-fallback/index.js +1 -0
  41. package/compiled/connect-history-api-fallback/package.json +1 -0
  42. package/{lib/webpack/plugins/mini-css-extract-plugin → compiled/copy-webpack-plugin}/LICENSE +0 -0
  43. package/compiled/copy-webpack-plugin/index.js +46 -0
  44. package/compiled/copy-webpack-plugin/package.json +1 -0
  45. package/{lib/webpack/plugins/terser-webpack-plugin → compiled/css-loader}/LICENSE +0 -0
  46. package/compiled/css-loader/api.js +102 -0
  47. package/compiled/css-loader/getUrl.js +29 -0
  48. package/compiled/css-loader/index.js +2 -0
  49. package/compiled/css-loader/noSourceMaps.js +5 -0
  50. package/compiled/css-loader/package.json +1 -0
  51. package/compiled/css-loader/sourceMaps.js +22 -0
  52. package/compiled/css-minimizer-webpack-plugin/LICENSE +20 -0
  53. package/compiled/css-minimizer-webpack-plugin/index.js +3 -0
  54. package/compiled/css-minimizer-webpack-plugin/minify.js +72 -0
  55. package/compiled/css-minimizer-webpack-plugin/package.json +1 -0
  56. package/compiled/css-minimizer-webpack-plugin/utils.js +166 -0
  57. package/compiled/cssnano/index.js +192 -0
  58. package/compiled/cssnano/package.json +1 -0
  59. package/compiled/express/LICENSE +24 -0
  60. package/compiled/express/body-parser/index.d.ts +104 -0
  61. package/compiled/express/connect/index.d.ts +93 -0
  62. package/compiled/express/express-serve-static-core/index.d.ts +1252 -0
  63. package/compiled/express/index.d.ts +133 -0
  64. package/compiled/express/index.js +338 -0
  65. package/compiled/express/mime/index.d.ts +35 -0
  66. package/compiled/express/package.json +1 -0
  67. package/compiled/express/qs/index.d.ts +62 -0
  68. package/compiled/express/range-parser/index.d.ts +35 -0
  69. package/compiled/express/serve-static/index.d.ts +108 -0
  70. package/compiled/http-proxy-middleware/LICENSE +22 -0
  71. package/compiled/http-proxy-middleware/dist/index.d.ts +4 -0
  72. package/compiled/http-proxy-middleware/dist/types.d.ts +54 -0
  73. package/compiled/http-proxy-middleware/http-proxy/index.d.ts +226 -0
  74. package/compiled/http-proxy-middleware/index.js +66 -0
  75. package/compiled/http-proxy-middleware/package.json +1 -0
  76. package/compiled/less/index.js +31 -0
  77. package/compiled/less/package.json +1 -0
  78. package/compiled/less-loader/LICENSE +20 -0
  79. package/compiled/less-loader/index.js +1 -0
  80. package/compiled/less-loader/package.json +1 -0
  81. package/compiled/mini-css-extract-plugin/LICENSE +20 -0
  82. package/{lib/webpack/plugins/mini-css-extract-plugin/src → compiled/mini-css-extract-plugin}/hmr/hotModuleReplacement.js +50 -52
  83. package/compiled/mini-css-extract-plugin/hmr/normalize-url.js +35 -0
  84. package/compiled/mini-css-extract-plugin/index.js +11606 -0
  85. package/compiled/mini-css-extract-plugin/loader-options.json +32 -0
  86. package/compiled/mini-css-extract-plugin/loader.js +315 -0
  87. package/compiled/mini-css-extract-plugin/package.json +1 -0
  88. package/compiled/mini-css-extract-plugin/utils.js +154 -0
  89. package/compiled/postcss-flexbugs-fixes/LICENSE +20 -0
  90. package/compiled/postcss-flexbugs-fixes/index.js +1 -0
  91. package/compiled/postcss-flexbugs-fixes/package.json +1 -0
  92. package/compiled/postcss-loader/LICENSE +20 -0
  93. package/compiled/postcss-loader/index.js +1 -0
  94. package/compiled/postcss-loader/package.json +1 -0
  95. package/compiled/purgecss-webpack-plugin/LICENSE +21 -0
  96. package/compiled/purgecss-webpack-plugin/index.js +7781 -0
  97. package/compiled/purgecss-webpack-plugin/package.json +1 -0
  98. package/compiled/react-refresh/index.js +19 -0
  99. package/compiled/sass-loader/LICENSE +20 -0
  100. package/compiled/sass-loader/index.js +1 -0
  101. package/compiled/sass-loader/package.json +1 -0
  102. package/compiled/schema-utils/LICENSE +20 -0
  103. package/compiled/schema-utils/ajv/lib/ajv.d.ts +397 -0
  104. package/compiled/schema-utils/declarations/ValidationError.d.ts +74 -0
  105. package/compiled/schema-utils/declarations/index.d.ts +3 -0
  106. package/compiled/schema-utils/declarations/validate.d.ts +37 -0
  107. package/compiled/schema-utils/index.js +3 -0
  108. package/compiled/schema-utils/json-schema/index.d.ts +751 -0
  109. package/compiled/schema-utils/package.json +1 -0
  110. package/compiled/speed-measure-webpack-plugin/LICENSE +21 -0
  111. package/compiled/speed-measure-webpack-plugin/index.js +1 -0
  112. package/compiled/speed-measure-webpack-plugin/package.json +1 -0
  113. package/compiled/style-loader/LICENSE +20 -0
  114. package/compiled/style-loader/index.js +1 -0
  115. package/compiled/style-loader/package.json +1 -0
  116. package/compiled/style-loader/runtime/injectStylesIntoLinkTag.js +29 -0
  117. package/compiled/style-loader/runtime/injectStylesIntoStyleTag.js +104 -0
  118. package/compiled/style-loader/runtime/insertBySelector.js +39 -0
  119. package/compiled/style-loader/runtime/insertStyleElement.js +11 -0
  120. package/compiled/style-loader/runtime/isEqualLocals.js +35 -0
  121. package/compiled/style-loader/runtime/isOldIE.js +19 -0
  122. package/compiled/style-loader/runtime/setAttributesWithAttributes.js +16 -0
  123. package/compiled/style-loader/runtime/setAttributesWithAttributesAndNonce.js +10 -0
  124. package/compiled/style-loader/runtime/setAttributesWithoutAttributes.js +12 -0
  125. package/compiled/style-loader/runtime/singletonStyleDomAPI.js +93 -0
  126. package/compiled/style-loader/runtime/styleDomAPI.js +70 -0
  127. package/compiled/style-loader/runtime/styleTagTransform.js +16 -0
  128. package/compiled/svgo-loader/LICENSE +22 -0
  129. package/compiled/svgo-loader/index.js +4 -0
  130. package/compiled/svgo-loader/package.json +1 -0
  131. package/compiled/swc-loader/LICENSE +25 -0
  132. package/compiled/swc-loader/index.js +1 -0
  133. package/compiled/swc-loader/package.json +1 -0
  134. package/compiled/tapable/LICENSE +21 -0
  135. package/compiled/tapable/index.js +1 -0
  136. package/compiled/tapable/package.json +1 -0
  137. package/compiled/tapable/tapable.d.ts +116 -0
  138. package/compiled/terser/LICENSE +29 -0
  139. package/compiled/terser/index.js +1 -0
  140. package/compiled/terser/mappings.wasm +0 -0
  141. package/compiled/terser/package.json +1 -0
  142. package/compiled/terser/source-map/source-map.d.ts +369 -0
  143. package/compiled/terser/tools/terser.d.ts +207 -0
  144. package/compiled/terser-webpack-plugin/LICENSE +20 -0
  145. package/compiled/terser-webpack-plugin/ajv/lib/ajv.d.ts +397 -0
  146. package/compiled/terser-webpack-plugin/index.js +15142 -0
  147. package/compiled/terser-webpack-plugin/jest-worker/build/index.d.ts +49 -0
  148. package/compiled/terser-webpack-plugin/jest-worker/build/types.d.ts +142 -0
  149. package/compiled/terser-webpack-plugin/json-schema/index.d.ts +751 -0
  150. package/compiled/terser-webpack-plugin/minify.js +43 -0
  151. package/compiled/terser-webpack-plugin/package.json +1 -0
  152. package/compiled/terser-webpack-plugin/schema-utils/declarations/ValidationError.d.ts +74 -0
  153. package/compiled/terser-webpack-plugin/schema-utils/declarations/index.d.ts +3 -0
  154. package/compiled/terser-webpack-plugin/schema-utils/declarations/validate.d.ts +37 -0
  155. package/compiled/terser-webpack-plugin/source-map/source-map.d.ts +98 -0
  156. package/compiled/terser-webpack-plugin/types/cjs.d.ts +3 -0
  157. package/compiled/terser-webpack-plugin/types/index.d.ts +295 -0
  158. package/compiled/terser-webpack-plugin/types/utils.d.ts +105 -0
  159. package/compiled/terser-webpack-plugin/utils.js +594 -0
  160. package/compiled/url-loader/LICENSE +20 -0
  161. package/compiled/url-loader/index.js +15 -0
  162. package/compiled/url-loader/package.json +1 -0
  163. package/compiled/webpack/Chunk.js +1 -0
  164. package/compiled/webpack/Compilation.js +1 -0
  165. package/compiled/webpack/HotModuleReplacement.runtime.js +394 -0
  166. package/compiled/webpack/JavascriptHotModuleReplacement.runtime.js +462 -0
  167. package/compiled/webpack/LICENSE +20 -0
  168. package/compiled/webpack/LibraryTemplatePlugin.js +1 -0
  169. package/compiled/webpack/LoaderTargetPlugin.js +1 -0
  170. package/compiled/webpack/ModuleFilenameHelpers.js +1 -0
  171. package/compiled/webpack/NormalModule.js +1 -0
  172. package/compiled/webpack/RuntimeGlobals.js +1 -0
  173. package/compiled/webpack/RuntimeModule.js +1 -0
  174. package/compiled/webpack/SingleEntryPlugin.js +1 -0
  175. package/compiled/webpack/Template.js +1 -0
  176. package/compiled/webpack/ajv/lib/ajv.d.ts +397 -0
  177. package/compiled/webpack/deepImports.json +12 -0
  178. package/compiled/webpack/index.js +162727 -0
  179. package/compiled/webpack/json-schema/index.d.ts +751 -0
  180. package/compiled/webpack/lazy-compilation-node.js +38 -0
  181. package/compiled/webpack/lazy-compilation-web.js +74 -0
  182. package/compiled/webpack/package.json +1 -0
  183. package/compiled/webpack/schema-utils/declarations/ValidationError.d.ts +74 -0
  184. package/compiled/webpack/schema-utils/declarations/index.d.ts +3 -0
  185. package/compiled/webpack/schema-utils/declarations/validate.d.ts +37 -0
  186. package/compiled/webpack/types.d.ts +12633 -0
  187. package/compiled/webpack-5-chain/LICENSE +373 -0
  188. package/compiled/webpack-5-chain/index.js +1 -0
  189. package/compiled/webpack-5-chain/package.json +1 -0
  190. package/compiled/webpack-5-chain/types/index.d.ts +543 -0
  191. package/compiled/webpack-bundle-analyzer/LICENSE +20 -0
  192. package/compiled/webpack-bundle-analyzer/index.js +30 -0
  193. package/compiled/webpack-bundle-analyzer/package.json +1 -0
  194. package/compiled/webpack-bundle-analyzer/public/viewer.js +16 -0
  195. package/compiled/webpack-bundle-analyzer/public/viewer.js.LICENSE.txt +10 -0
  196. package/compiled/webpack-bundle-analyzer/public/viewer.js.map +1 -0
  197. package/compiled/webpack-dev-middleware/LICENSE +20 -0
  198. package/compiled/webpack-dev-middleware/index.js +21 -0
  199. package/compiled/webpack-dev-middleware/package.json +1 -0
  200. package/compiled/webpack-sources/LICENSE +21 -0
  201. package/compiled/webpack-sources/index.d.ts +20 -0
  202. package/compiled/webpack-sources/index.js +1 -0
  203. package/compiled/webpack-sources/lib/CachedSource.d.ts +18 -0
  204. package/compiled/webpack-sources/lib/CompatSource.d.ts +9 -0
  205. package/compiled/webpack-sources/lib/ConcatSource.d.ts +22 -0
  206. package/compiled/webpack-sources/lib/OriginalSource.d.ts +18 -0
  207. package/compiled/webpack-sources/lib/PrefixSource.d.ts +12 -0
  208. package/compiled/webpack-sources/lib/RawSource.d.ts +13 -0
  209. package/compiled/webpack-sources/lib/ReplaceSource.d.ts +35 -0
  210. package/compiled/webpack-sources/lib/SizeOnlySource.d.ts +7 -0
  211. package/compiled/webpack-sources/lib/Source.d.ts +45 -0
  212. package/compiled/webpack-sources/lib/SourceMapSource.d.ts +22 -0
  213. package/compiled/webpack-sources/lib/index.d.ts +60 -0
  214. package/compiled/webpack-sources/package.json +1 -0
  215. package/compiled/webpack-sources/source-list-map/index.d.ts +91 -0
  216. package/compiled/webpack-sources/source-map/source-map.d.ts +369 -0
  217. package/compiled/ws/LICENSE +19 -0
  218. package/compiled/ws/index.d.ts +359 -0
  219. package/compiled/ws/index.js +1 -0
  220. package/compiled/ws/package.json +1 -0
  221. package/dist/build.d.ts +10 -0
  222. package/dist/build.js +61 -0
  223. package/{lib → dist}/cli.d.ts +0 -0
  224. package/dist/cli.js +113 -0
  225. package/{lib/webpackHotDevClient/webpackHotDevClient.d.ts → dist/client/client.d.ts} +0 -0
  226. package/dist/client/client.js +239 -0
  227. package/dist/config/_sampleFeature.d.ts +10 -0
  228. package/dist/config/_sampleFeature.js +22 -0
  229. package/dist/config/assetRules.d.ts +11 -0
  230. package/dist/config/assetRules.js +56 -0
  231. package/dist/config/bundleAnalyzerPlugin.d.ts +10 -0
  232. package/dist/config/bundleAnalyzerPlugin.js +30 -0
  233. package/dist/config/compressPlugin.d.ts +10 -0
  234. package/dist/config/compressPlugin.js +77 -0
  235. package/dist/config/config.d.ts +16 -0
  236. package/dist/config/config.js +163 -0
  237. package/dist/config/copyPlugin.d.ts +10 -0
  238. package/dist/config/copyPlugin.js +49 -0
  239. package/dist/config/cssRules.d.ts +11 -0
  240. package/dist/config/cssRules.js +98 -0
  241. package/dist/config/definePlugin.d.ts +15 -0
  242. package/dist/config/definePlugin.js +45 -0
  243. package/dist/config/fastRefreshPlugin.d.ts +12 -0
  244. package/dist/config/fastRefreshPlugin.js +34 -0
  245. package/dist/config/ignorePlugin.d.ts +10 -0
  246. package/dist/config/ignorePlugin.js +27 -0
  247. package/dist/config/javaScriptRules.d.ts +12 -0
  248. package/dist/config/javaScriptRules.js +150 -0
  249. package/dist/config/miniCSSExtractPlugin.d.ts +10 -0
  250. package/dist/config/miniCSSExtractPlugin.js +34 -0
  251. package/dist/config/nodePolyfill.d.ts +10 -0
  252. package/dist/config/nodePolyfill.js +34 -0
  253. package/dist/config/progressPlugin.d.ts +11 -0
  254. package/dist/config/progressPlugin.js +27 -0
  255. package/dist/config/purgecssWebpackPlugin.d.ts +10 -0
  256. package/dist/config/purgecssWebpackPlugin.js +32 -0
  257. package/dist/config/speedMeasureWebpackPlugin.d.ts +6 -0
  258. package/dist/config/speedMeasureWebpackPlugin.js +34 -0
  259. package/dist/config/svgRules.d.ts +11 -0
  260. package/dist/config/svgRules.js +56 -0
  261. package/dist/constants.d.ts +11 -0
  262. package/dist/constants.js +15 -0
  263. package/dist/dev.d.ts +13 -0
  264. package/dist/dev.js +71 -0
  265. package/dist/index.d.ts +5 -0
  266. package/dist/index.js +16 -0
  267. package/dist/plugins/ESBuildCSSMinifyPlugin.d.ts +11 -0
  268. package/dist/plugins/ESBuildCSSMinifyPlugin.js +65 -0
  269. package/dist/plugins/ProgressPlugin.d.ts +15 -0
  270. package/dist/plugins/ProgressPlugin.js +44 -0
  271. package/dist/plugins/_SamplePlugin.d.ts +9 -0
  272. package/dist/plugins/_SamplePlugin.js +14 -0
  273. package/dist/requireHook.d.ts +1 -0
  274. package/dist/requireHook.js +31 -0
  275. package/dist/schema.d.ts +3 -0
  276. package/dist/schema.js +68 -0
  277. package/dist/server/server.d.ts +16 -0
  278. package/dist/server/server.js +157 -0
  279. package/dist/server/ws.d.ts +8 -0
  280. package/dist/server/ws.js +42 -0
  281. package/dist/types.d.ts +97 -0
  282. package/dist/types.js +29 -0
  283. package/dist/utils/browsersList.d.ts +5 -0
  284. package/dist/utils/browsersList.js +10 -0
  285. package/dist/utils/depMatch.d.ts +6 -0
  286. package/dist/utils/depMatch.js +46 -0
  287. package/dist/utils/formatWebpackMessages.d.ts +12 -0
  288. package/dist/utils/formatWebpackMessages.js +100 -0
  289. package/package.json +163 -35
  290. package/bundled/css/hotModuleReplacement.js +0 -1203
  291. package/bundled/js/webpackHotDevClient.js +0 -13386
  292. package/lib/DevCompileDonePlugin.d.ts +0 -10
  293. package/lib/DevCompileDonePlugin.js +0 -53
  294. package/lib/cli.js +0 -184
  295. package/lib/getConfig/css.d.ts +0 -22
  296. package/lib/getConfig/css.js +0 -186
  297. package/lib/getConfig/getConfig.d.ts +0 -26
  298. package/lib/getConfig/getConfig.js +0 -578
  299. package/lib/getConfig/nodeModulesTransform.d.ts +0 -13
  300. package/lib/getConfig/nodeModulesTransform.js +0 -141
  301. package/lib/getConfig/pkgMatch.d.ts +0 -2
  302. package/lib/getConfig/pkgMatch.js +0 -58
  303. package/lib/getConfig/resolveDefine.d.ts +0 -5
  304. package/lib/getConfig/resolveDefine.js +0 -53
  305. package/lib/getConfig/runtimePublicPathEntry.d.ts +0 -1
  306. package/lib/getConfig/runtimePublicPathEntry.js +0 -3
  307. package/lib/getConfig/terserOptions.d.ts +0 -41
  308. package/lib/getConfig/terserOptions.js +0 -64
  309. package/lib/index.d.ts +0 -34
  310. package/lib/index.js +0 -314
  311. package/lib/requireHook.d.ts +0 -3
  312. package/lib/requireHook.js +0 -51
  313. package/lib/webpack/plugins/mini-css-extract-plugin/src/CssDependency.js +0 -94
  314. package/lib/webpack/plugins/mini-css-extract-plugin/src/CssDependencyTemplate.js +0 -26
  315. package/lib/webpack/plugins/mini-css-extract-plugin/src/CssLoadingRuntimeModule.js +0 -93
  316. package/lib/webpack/plugins/mini-css-extract-plugin/src/CssModule.js +0 -164
  317. package/lib/webpack/plugins/mini-css-extract-plugin/src/CssModuleFactory.js +0 -32
  318. package/lib/webpack/plugins/mini-css-extract-plugin/src/cjs.js +0 -15
  319. package/lib/webpack/plugins/mini-css-extract-plugin/src/index.js +0 -542
  320. package/lib/webpack/plugins/mini-css-extract-plugin/src/loader.js +0 -319
  321. package/lib/webpack/plugins/mini-css-extract-plugin/src/utils.js +0 -97
  322. package/lib/webpack/plugins/mini-css-extract-plugin.d.ts +0 -1
  323. package/lib/webpack/plugins/mini-css-extract-plugin.js +0 -15
  324. package/lib/webpack/plugins/terser-webpack-plugin/package.json +0 -3
  325. package/lib/webpack/plugins/terser-webpack-plugin/src/Webpack4Cache.js +0 -187
  326. package/lib/webpack/plugins/terser-webpack-plugin/src/Webpack5Cache.js +0 -61
  327. package/lib/webpack/plugins/terser-webpack-plugin/src/index.js +0 -683
  328. package/lib/webpack/plugins/terser-webpack-plugin/src/minify.js +0 -197
  329. package/lib/webpack/plugins/terser-webpack-plugin.d.ts +0 -1
  330. package/lib/webpack/plugins/terser-webpack-plugin.js +0 -15
  331. package/lib/webpackHotDevClient/formatWebpackMessages.d.ts +0 -11
  332. package/lib/webpackHotDevClient/formatWebpackMessages.js +0 -127
  333. package/lib/webpackHotDevClient/webpackHotDevClient.js +0 -311
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.createServer = void 0;
16
+ const express_1 = __importDefault(require("@umijs/bundler-webpack/compiled/express"));
17
+ const http_proxy_middleware_1 = require("@umijs/bundler-webpack/compiled/http-proxy-middleware");
18
+ const webpack_1 = __importDefault(require("@umijs/bundler-webpack/compiled/webpack"));
19
+ const utils_1 = require("@umijs/utils");
20
+ const fs_1 = require("fs");
21
+ const http_1 = __importDefault(require("http"));
22
+ const path_1 = require("path");
23
+ const constants_1 = require("../constants");
24
+ const ws_1 = require("./ws");
25
+ function createServer(opts) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ const { webpackConfig, userConfig } = opts;
28
+ const { proxy } = userConfig;
29
+ const app = (0, express_1.default)();
30
+ // compression
31
+ app.use(require('@umijs/bundler-webpack/compiled/compression')());
32
+ // TODO: headers
33
+ // before middlewares
34
+ (opts.beforeMiddlewares || []).forEach((m) => app.use(m));
35
+ // webpack dev middleware
36
+ const compiler = (0, webpack_1.default)(Array.isArray(webpackConfig) ? webpackConfig : [webpackConfig]);
37
+ const webpackDevMiddleware = require('@umijs/bundler-webpack/compiled/webpack-dev-middleware');
38
+ const compilerMiddleware = webpackDevMiddleware(compiler, {
39
+ publicPath: '/',
40
+ writeToDisk: userConfig.writeToDisk,
41
+ stats: 'none',
42
+ // watchOptions: { ignored }
43
+ });
44
+ app.use(compilerMiddleware);
45
+ // hmr hooks
46
+ let stats;
47
+ let isFirstCompile = true;
48
+ compiler.compilers.forEach(addHooks);
49
+ function addHooks(compiler) {
50
+ compiler.hooks.invalid.tap('server', () => {
51
+ sendMessage(constants_1.MESSAGE_TYPE.invalid);
52
+ });
53
+ compiler.hooks.done.tap('server', (_stats) => {
54
+ var _a;
55
+ stats = _stats;
56
+ sendStats(getStats(stats));
57
+ (_a = opts.onDevCompileDone) === null || _a === void 0 ? void 0 : _a.call(opts, {
58
+ stats,
59
+ isFirstCompile,
60
+ time: stats.endTime - stats.startTime,
61
+ });
62
+ isFirstCompile = false;
63
+ });
64
+ }
65
+ function sendStats(stats, force, sender) {
66
+ const shouldEmit = !force &&
67
+ stats &&
68
+ (!stats.errors || stats.errors.length === 0) &&
69
+ (!stats.warnings || stats.warnings.length === 0) &&
70
+ stats.assets &&
71
+ stats.assets.every((asset) => !asset.emitted);
72
+ if (shouldEmit) {
73
+ sendMessage(constants_1.MESSAGE_TYPE.stillOk, null, sender);
74
+ return;
75
+ }
76
+ sendMessage(constants_1.MESSAGE_TYPE.hash, stats.hash, sender);
77
+ if ((stats.errors && stats.errors.length > 0) ||
78
+ (stats.warnings && stats.warnings.length > 0)) {
79
+ if (stats.warnings && stats.warnings.length > 0) {
80
+ sendMessage(constants_1.MESSAGE_TYPE.warnings, stats.warnings, sender);
81
+ }
82
+ if (stats.errors && stats.errors.length > 0) {
83
+ sendMessage(constants_1.MESSAGE_TYPE.errors, stats.errors, sender);
84
+ }
85
+ }
86
+ else {
87
+ sendMessage(constants_1.MESSAGE_TYPE.ok, null, sender);
88
+ }
89
+ }
90
+ function getStats(stats) {
91
+ return stats.toJson({
92
+ all: false,
93
+ hash: true,
94
+ assets: true,
95
+ warnings: true,
96
+ errors: true,
97
+ errorDetails: false,
98
+ });
99
+ }
100
+ function sendMessage(type, data, sender) {
101
+ (sender || ws).send(JSON.stringify({ type, data }));
102
+ }
103
+ // mock
104
+ // proxy
105
+ if (proxy) {
106
+ Object.keys(proxy).forEach((key) => {
107
+ app.use(key, (0, http_proxy_middleware_1.createProxyMiddleware)(proxy[key]));
108
+ });
109
+ }
110
+ // after middlewares
111
+ (opts.afterMiddlewares || []).forEach((m) => app.use(m));
112
+ // history fallback
113
+ app.use(require('@umijs/bundler-webpack/compiled/connect-history-api-fallback')({
114
+ index: '/',
115
+ }));
116
+ // hmr reconnect ping
117
+ app.use('/__umi_ping', (_, res) => {
118
+ res.end('pong');
119
+ });
120
+ // TODO: remove me
121
+ app.use((req, res, next) => {
122
+ if (req.path === '/umi.js' && (0, fs_1.existsSync)((0, path_1.join)(opts.cwd, 'umi.js'))) {
123
+ res.send((0, fs_1.readFileSync)((0, path_1.join)(opts.cwd, 'umi.js'), 'utf-8'));
124
+ }
125
+ else {
126
+ next();
127
+ }
128
+ });
129
+ // index.html
130
+ // TODO: remove me
131
+ app.get('/', (_req, res, next) => {
132
+ res.set('Content-Type', 'text/html');
133
+ const htmlPath = (0, path_1.join)(opts.cwd, 'index.html');
134
+ if ((0, fs_1.existsSync)(htmlPath)) {
135
+ const html = (0, fs_1.readFileSync)(htmlPath, 'utf-8');
136
+ res.send(html);
137
+ }
138
+ else {
139
+ next();
140
+ }
141
+ });
142
+ const server = http_1.default.createServer(app);
143
+ const ws = (0, ws_1.createWebSocketServer)(server);
144
+ ws.wss.on('connection', (socket) => {
145
+ if (stats) {
146
+ sendStats(getStats(stats), false, socket);
147
+ }
148
+ });
149
+ const port = opts.port || 8000;
150
+ server.listen(port, () => {
151
+ const host = opts.host && opts.host !== '0.0.0.0' ? opts.host : '127.0.0.1';
152
+ utils_1.logger.ready(`App listening at http://${host}:${port}`);
153
+ });
154
+ return server;
155
+ });
156
+ }
157
+ exports.createServer = createServer;
@@ -0,0 +1,8 @@
1
+ /// <reference types="node" />
2
+ import { Server } from 'http';
3
+ import WebSocket from 'ws';
4
+ export declare function createWebSocketServer(server: Server): {
5
+ send(message: string): void;
6
+ wss: WebSocket.Server;
7
+ close(): void;
8
+ };
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createWebSocketServer = void 0;
7
+ const utils_1 = require("@umijs/utils");
8
+ const ws_1 = __importDefault(require("ws"));
9
+ function createWebSocketServer(server) {
10
+ const wss = new ws_1.default.Server({
11
+ noServer: true,
12
+ });
13
+ server.on('upgrade', (req, socket, head) => {
14
+ if (req.headers['sec-websocket-protocol'] === 'webpack-hmr') {
15
+ wss.handleUpgrade(req, socket, head, (ws) => {
16
+ wss.emit('connection', ws, req);
17
+ });
18
+ }
19
+ });
20
+ wss.on('connection', (socket) => {
21
+ socket.send(JSON.stringify({ type: 'connected' }));
22
+ });
23
+ wss.on('error', (e) => {
24
+ if (e.code !== 'EADDRINUSE') {
25
+ console.error(utils_1.chalk.red(`WebSocket server error:\n${e.stack || e.message}`));
26
+ }
27
+ });
28
+ return {
29
+ send(message) {
30
+ wss.clients.forEach((client) => {
31
+ if (client.readyState === ws_1.default.OPEN) {
32
+ client.send(message);
33
+ }
34
+ });
35
+ },
36
+ wss,
37
+ close() {
38
+ wss.close();
39
+ },
40
+ };
41
+ }
42
+ exports.createWebSocketServer = createWebSocketServer;
@@ -0,0 +1,97 @@
1
+ import type { Options as ProxyOptions } from '../compiled/http-proxy-middleware';
2
+ import { Configuration } from '../compiled/webpack';
3
+ import Config from '../compiled/webpack-5-chain';
4
+ export declare enum Env {
5
+ development = "development",
6
+ production = "production"
7
+ }
8
+ export declare enum Transpiler {
9
+ babel = "babel",
10
+ swc = "swc",
11
+ esbuild = "esbuild",
12
+ none = "none"
13
+ }
14
+ export declare enum JSMinifier {
15
+ terser = "terser",
16
+ swc = "swc",
17
+ esbuild = "esbuild",
18
+ uglifyJs = "uglifyJs",
19
+ none = "none"
20
+ }
21
+ export declare enum CSSMinifier {
22
+ esbuild = "esbuild",
23
+ cssnano = "cssnano",
24
+ none = "none"
25
+ }
26
+ export interface ICopy {
27
+ from: string;
28
+ to: string;
29
+ }
30
+ declare type WebpackConfig = Required<Configuration>;
31
+ declare type IBabelPlugin = Function | string | [string, {
32
+ [key: string]: any;
33
+ }];
34
+ export interface IConfig {
35
+ alias?: Record<string, string>;
36
+ autoCSSModules?: boolean;
37
+ chainWebpack?: Function;
38
+ copy?: ICopy[] | string[];
39
+ cssLoader?: {
40
+ [key: string]: any;
41
+ };
42
+ cssLoaderModules?: {
43
+ [key: string]: any;
44
+ };
45
+ cssMinifier?: CSSMinifier;
46
+ cssMinifierOptions?: {
47
+ [key: string]: any;
48
+ };
49
+ define?: {
50
+ [key: string]: any;
51
+ };
52
+ depTranspiler?: Transpiler;
53
+ devtool?: Config.DevTool;
54
+ externals?: WebpackConfig['externals'];
55
+ extraBabelPlugins?: IBabelPlugin[];
56
+ extraBabelPresets?: IBabelPlugin[];
57
+ extraPostCSSPlugins?: any[];
58
+ hash?: boolean;
59
+ ignoreMomentLocale?: boolean;
60
+ jsMinifier?: JSMinifier;
61
+ jsMinifierOptions?: {
62
+ [key: string]: any;
63
+ };
64
+ lessLoader?: {
65
+ [key: string]: any;
66
+ };
67
+ outputPath?: string;
68
+ postcssLoader?: {
69
+ [key: string]: any;
70
+ };
71
+ proxy?: {
72
+ [key: string]: ProxyOptions;
73
+ };
74
+ publicPath?: string;
75
+ purgeCSS?: {
76
+ [key: string]: any;
77
+ };
78
+ sassLoader?: {
79
+ [key: string]: any;
80
+ };
81
+ srcTranspiler?: Transpiler;
82
+ styleLoader?: {
83
+ [key: string]: any;
84
+ };
85
+ svgr?: {
86
+ [key: string]: any;
87
+ };
88
+ svgo?: {
89
+ [key: string]: any;
90
+ } | false;
91
+ targets?: {
92
+ [key: string]: any;
93
+ };
94
+ writeToDisk?: boolean;
95
+ [key: string]: any;
96
+ }
97
+ export {};
package/dist/types.js ADDED
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CSSMinifier = exports.JSMinifier = exports.Transpiler = exports.Env = void 0;
4
+ var Env;
5
+ (function (Env) {
6
+ Env["development"] = "development";
7
+ Env["production"] = "production";
8
+ })(Env = exports.Env || (exports.Env = {}));
9
+ var Transpiler;
10
+ (function (Transpiler) {
11
+ Transpiler["babel"] = "babel";
12
+ Transpiler["swc"] = "swc";
13
+ Transpiler["esbuild"] = "esbuild";
14
+ Transpiler["none"] = "none";
15
+ })(Transpiler = exports.Transpiler || (exports.Transpiler = {}));
16
+ var JSMinifier;
17
+ (function (JSMinifier) {
18
+ JSMinifier["terser"] = "terser";
19
+ JSMinifier["swc"] = "swc";
20
+ JSMinifier["esbuild"] = "esbuild";
21
+ JSMinifier["uglifyJs"] = "uglifyJs";
22
+ JSMinifier["none"] = "none";
23
+ })(JSMinifier = exports.JSMinifier || (exports.JSMinifier = {}));
24
+ var CSSMinifier;
25
+ (function (CSSMinifier) {
26
+ CSSMinifier["esbuild"] = "esbuild";
27
+ CSSMinifier["cssnano"] = "cssnano";
28
+ CSSMinifier["none"] = "none";
29
+ })(CSSMinifier = exports.CSSMinifier || (exports.CSSMinifier = {}));
@@ -0,0 +1,5 @@
1
+ interface IOpts {
2
+ targets: Record<string, any>;
3
+ }
4
+ export declare function getBrowsersList({ targets }: IOpts): any;
5
+ export {};
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBrowsersList = void 0;
4
+ function getBrowsersList({ targets }) {
5
+ return (targets.browsers ||
6
+ Object.keys(targets).map((key) => {
7
+ return `${key} >= ${targets[key] === true ? '0' : targets[key]}`;
8
+ }));
9
+ }
10
+ exports.getBrowsersList = getBrowsersList;
@@ -0,0 +1,6 @@
1
+ export declare function cleanCache(): void;
2
+ export declare function isMatch(opts: {
3
+ path: string;
4
+ pkgs: Record</*name*/ string, /*version*/ string[]>;
5
+ }): boolean;
6
+ export declare function es5ImcompatibleVersionsToPkg(): Record<string, string[]>;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.es5ImcompatibleVersionsToPkg = exports.isMatch = exports.cleanCache = void 0;
4
+ const utils_1 = require("@umijs/utils");
5
+ const path_1 = require("path");
6
+ const cache = new Map();
7
+ function cleanCache() {
8
+ cache.clear();
9
+ }
10
+ exports.cleanCache = cleanCache;
11
+ function isMatch(opts) {
12
+ // cache by dir, 命中率会更高
13
+ const dir = (0, utils_1.winPath)((0, path_1.dirname)(opts.path));
14
+ if (cache.has(dir)) {
15
+ return !!cache.get(dir);
16
+ }
17
+ else {
18
+ const pkgPath = utils_1.pkgUp.sync({ cwd: opts.path });
19
+ let ret;
20
+ if (!pkgPath) {
21
+ ret = false;
22
+ }
23
+ else {
24
+ const { name, version } = require(pkgPath);
25
+ if (opts.pkgs[name]) {
26
+ ret = opts.pkgs[name].some((v) => {
27
+ return utils_1.semver.satisfies(version, v);
28
+ });
29
+ }
30
+ else {
31
+ ret = false;
32
+ }
33
+ }
34
+ cache.set(dir, ret);
35
+ return ret;
36
+ }
37
+ }
38
+ exports.isMatch = isMatch;
39
+ function es5ImcompatibleVersionsToPkg() {
40
+ const { config: { 'es5-imcompatible-versions': config }, } = require('es5-imcompatible-versions/package.json');
41
+ return Object.keys(config).reduce((memo, key) => {
42
+ memo[key] = /* versions */ Object.keys(config[key]);
43
+ return memo;
44
+ }, {});
45
+ }
46
+ exports.es5ImcompatibleVersionsToPkg = es5ImcompatibleVersionsToPkg;
@@ -0,0 +1,12 @@
1
+ export declare function formatMessage(message: string | {
2
+ message: string;
3
+ } | {
4
+ message: string;
5
+ }[]): string;
6
+ export declare function formatWebpackMessages(json: {
7
+ errors: string[];
8
+ warnings: string[];
9
+ }): {
10
+ errors: string[];
11
+ warnings: string[];
12
+ };
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.formatWebpackMessages = exports.formatMessage = void 0;
7
+ const strip_ansi_1 = __importDefault(require("@umijs/utils/compiled/strip-ansi"));
8
+ const friendlySyntaxErrorLabel = 'Syntax error:';
9
+ function isLikelyASyntaxError(message) {
10
+ return (0, strip_ansi_1.default)(message).indexOf(friendlySyntaxErrorLabel) !== -1;
11
+ }
12
+ function formatMessage(message) {
13
+ let lines = [];
14
+ if (typeof message === 'string') {
15
+ lines = message.split('\n');
16
+ }
17
+ else if ('message' in message) {
18
+ lines = message['message'].split('\n');
19
+ }
20
+ else if (Array.isArray(message)) {
21
+ message.forEach((message) => {
22
+ if ('message' in message) {
23
+ lines = message['message'].split('\n');
24
+ }
25
+ });
26
+ }
27
+ // Strip webpack-added headers off errors/warnings
28
+ // https://github.com/webpack/webpack/blob/master/lib/ModuleError.js
29
+ lines = lines.filter((line) => !/Module [A-z ]+\(from/.test(line));
30
+ // Transform parsing error into syntax error
31
+ // TODO: move this to our ESLint formatter?
32
+ lines = lines.map((line) => {
33
+ const parsingError = /Line (\d+):(?:(\d+):)?\s*Parsing error: (.+)$/.exec(line);
34
+ if (!parsingError) {
35
+ return line;
36
+ }
37
+ const [, errorLine, errorColumn, errorMessage] = parsingError;
38
+ return `${friendlySyntaxErrorLabel} ${errorMessage} (${errorLine}:${errorColumn})`;
39
+ });
40
+ message = lines.join('\n');
41
+ // Smoosh syntax errors (commonly found in CSS)
42
+ message = message.replace(/SyntaxError\s+\((\d+):(\d+)\)\s*(.+?)\n/g, `${friendlySyntaxErrorLabel} $3 ($1:$2)\n`);
43
+ // Clean up export errors
44
+ message = message.replace(/^.*export '(.+?)' was not found in '(.+?)'.*$/gm, `Attempted import error: '$1' is not exported from '$2'.`);
45
+ message = message.replace(/^.*export 'default' \(imported as '(.+?)'\) was not found in '(.+?)'.*$/gm, `Attempted import error: '$2' does not contain a default export (imported as '$1').`);
46
+ message = message.replace(/^.*export '(.+?)' \(imported as '(.+?)'\) was not found in '(.+?)'.*$/gm, `Attempted import error: '$1' is not exported from '$3' (imported as '$2').`);
47
+ lines = message.split('\n');
48
+ // Remove leading newline
49
+ if (lines.length > 2 && lines[1].trim() === '') {
50
+ lines.splice(1, 1);
51
+ }
52
+ // Clean up file name
53
+ lines[0] = lines[0].replace(/^(.*) \d+:\d+-\d+$/, '$1');
54
+ // Cleans up verbose "module not found" messages for files and packages.
55
+ if (lines[1] && lines[1].indexOf('Module not found: ') === 0) {
56
+ lines = [
57
+ lines[0],
58
+ lines[1]
59
+ .replace('Error: ', '')
60
+ .replace('Module not found: Cannot find file:', 'Cannot find file:'),
61
+ ];
62
+ }
63
+ // Add helpful message for users trying to use Sass for the first time
64
+ if (lines[1] && lines[1].match(/Cannot find module.+sass/)) {
65
+ lines[1] = 'To import Sass files, you first need to install sass.\n';
66
+ lines[1] +=
67
+ 'Run `npm install sass` or `yarn add sass` inside your workspace.';
68
+ }
69
+ message = lines.join('\n');
70
+ // Internal stacks are generally useless so we strip them... with the
71
+ // exception of stacks containing `webpack:` because they're normally
72
+ // from user code generated by webpack. For more information see
73
+ // https://github.com/facebook/create-react-app/pull/1050
74
+ message = message.replace(/^\s*at\s((?!webpack:).)*:\d+:\d+[\s)]*(\n|$)/gm, ''); // at ... ...:x:y
75
+ message = message.replace(/^\s*at\s<anonymous>(\n|$)/gm, ''); // at <anonymous>
76
+ lines = message.split('\n');
77
+ // Remove duplicated newlines
78
+ lines = lines.filter((line, index, arr) => index === 0 ||
79
+ line.trim() !== '' ||
80
+ line.trim() !== arr[index - 1].trim());
81
+ // Reassemble the message
82
+ message = lines.join('\n');
83
+ return message.trim();
84
+ }
85
+ exports.formatMessage = formatMessage;
86
+ function formatWebpackMessages(json) {
87
+ const formattedErrors = json.errors.map(function (message) {
88
+ return formatMessage(message);
89
+ });
90
+ const formattedWarnings = json.warnings.map(function (message) {
91
+ return formatMessage(message);
92
+ });
93
+ const result = { errors: formattedErrors, warnings: formattedWarnings };
94
+ if (result.errors.some(isLikelyASyntaxError)) {
95
+ // If there are any syntax errors, show just them.
96
+ result.errors = result.errors.filter(isLikelyASyntaxError);
97
+ }
98
+ return result;
99
+ }
100
+ exports.formatWebpackMessages = formatWebpackMessages;