@tramvai/cli 5.9.2 → 5.14.9

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 (315) hide show
  1. package/lib/api/analyze/index.js +4 -5
  2. package/lib/api/analyze/index.js.map +1 -1
  3. package/lib/api/analyze/providers/shared.js +5 -1
  4. package/lib/api/analyze/providers/shared.js.map +1 -1
  5. package/lib/api/benchmark/build.js +8 -9
  6. package/lib/api/benchmark/build.js.map +1 -1
  7. package/lib/api/benchmark/start.js +16 -17
  8. package/lib/api/benchmark/start.js.map +1 -1
  9. package/lib/api/benchmark/utils/clearCache.js +3 -4
  10. package/lib/api/benchmark/utils/clearCache.js.map +1 -1
  11. package/lib/api/build/application.js +8 -6
  12. package/lib/api/build/application.js.map +1 -1
  13. package/lib/api/build/child-app.js +8 -6
  14. package/lib/api/build/child-app.js.map +1 -1
  15. package/lib/api/build/module.js +8 -6
  16. package/lib/api/build/module.js.map +1 -1
  17. package/lib/api/build/package.js +3 -4
  18. package/lib/api/build/package.js.map +1 -1
  19. package/lib/api/build/providers/shared.js +6 -1
  20. package/lib/api/build/providers/shared.js.map +1 -1
  21. package/lib/api/index.js +2 -4
  22. package/lib/api/index.js.map +1 -1
  23. package/lib/api/shared/providers/selfSignedCertificateProvider.js +2 -2
  24. package/lib/api/shared/providers/selfSignedCertificateProvider.js.map +1 -1
  25. package/lib/api/start/application.js +15 -12
  26. package/lib/api/start/application.js.map +1 -1
  27. package/lib/api/start/child-app.js +15 -12
  28. package/lib/api/start/child-app.js.map +1 -1
  29. package/lib/api/start/index.js +3 -4
  30. package/lib/api/start/index.js.map +1 -1
  31. package/lib/api/start/module.js +15 -12
  32. package/lib/api/start/module.js.map +1 -1
  33. package/lib/api/start/providers/application/server.js +5 -8
  34. package/lib/api/start/providers/application/server.js.map +1 -1
  35. package/lib/api/start/providers/application/shared.js +13 -10
  36. package/lib/api/start/providers/application/shared.js.map +1 -1
  37. package/lib/api/start/providers/child-app/shared.js +13 -10
  38. package/lib/api/start/providers/child-app/shared.js.map +1 -1
  39. package/lib/api/start/providers/module/shared.js +13 -10
  40. package/lib/api/start/providers/module/shared.js.map +1 -1
  41. package/lib/api/start/providers/shared.js +1 -2
  42. package/lib/api/start/providers/shared.js.map +1 -1
  43. package/lib/api/start/utils/createServer.js +1 -1
  44. package/lib/api/start/utils/createServer.js.map +1 -1
  45. package/lib/api/start/utils/listenServer.js +2 -3
  46. package/lib/api/start/utils/listenServer.js.map +1 -1
  47. package/lib/api/start/utils/stopServer.js +2 -3
  48. package/lib/api/start/utils/stopServer.js.map +1 -1
  49. package/lib/api/start/utils/tips/index.js +5 -2
  50. package/lib/api/start/utils/tips/index.js.map +1 -1
  51. package/lib/api/start/utils/tips/tips.js +1 -2
  52. package/lib/api/start/utils/tips/tips.js.map +1 -1
  53. package/lib/api/start-prod/application.js +17 -14
  54. package/lib/api/start-prod/application.js.map +1 -1
  55. package/lib/api/start-prod/child-app.js +13 -10
  56. package/lib/api/start-prod/child-app.js.map +1 -1
  57. package/lib/api/start-prod/index.js +3 -4
  58. package/lib/api/start-prod/index.js.map +1 -1
  59. package/lib/api/start-prod/providers/application.js +24 -5
  60. package/lib/api/start-prod/providers/application.js.map +1 -1
  61. package/lib/api/start-prod/providers/child-app.js +8 -1
  62. package/lib/api/start-prod/providers/child-app.js.map +1 -1
  63. package/lib/api/start-prod/providers/shared.js +14 -16
  64. package/lib/api/start-prod/providers/shared.js.map +1 -1
  65. package/lib/builder/webpack/devServer/pool/base/worker.js +7 -3
  66. package/lib/builder/webpack/devServer/pool/base/worker.js.map +1 -1
  67. package/lib/builder/webpack/devServer/pool/pool.js +6 -7
  68. package/lib/builder/webpack/devServer/pool/pool.js.map +1 -1
  69. package/lib/builder/webpack/devServer/pool/process/pool.js +37 -39
  70. package/lib/builder/webpack/devServer/pool/process/pool.js.map +1 -1
  71. package/lib/builder/webpack/devServer/pool/thread/pool.js +39 -39
  72. package/lib/builder/webpack/devServer/pool/thread/pool.js.map +1 -1
  73. package/lib/builder/webpack/devServer/server.js +191 -193
  74. package/lib/builder/webpack/devServer/server.js.map +1 -1
  75. package/lib/builder/webpack/devServer/setup.js +25 -27
  76. package/lib/builder/webpack/devServer/setup.js.map +1 -1
  77. package/lib/builder/webpack/index.js +51 -58
  78. package/lib/builder/webpack/index.js.map +1 -1
  79. package/lib/builder/webpack/providers/analyze/shared.js +12 -15
  80. package/lib/builder/webpack/providers/analyze/shared.js.map +1 -1
  81. package/lib/builder/webpack/providers/build/application/server.js +2 -5
  82. package/lib/builder/webpack/providers/build/application/server.js.map +1 -1
  83. package/lib/builder/webpack/providers/build/clientShared.js +9 -12
  84. package/lib/builder/webpack/providers/build/clientShared.js.map +1 -1
  85. package/lib/builder/webpack/providers/shared.js +10 -11
  86. package/lib/builder/webpack/providers/shared.js.map +1 -1
  87. package/lib/builder/webpack/utils/copyStatsJsonFile.js +4 -4
  88. package/lib/builder/webpack/utils/copyStatsJsonFile.js.map +1 -1
  89. package/lib/builder/webpack/utils/runWebpack.js +9 -3
  90. package/lib/builder/webpack/utils/runWebpack.js.map +1 -1
  91. package/lib/cli/CLI.js +2 -5
  92. package/lib/cli/CLI.js.map +1 -1
  93. package/lib/cli/index.js +57 -63
  94. package/lib/cli/index.js.map +1 -1
  95. package/lib/commands/add/add.js +7 -8
  96. package/lib/commands/add/add.js.map +1 -1
  97. package/lib/commands/add/checkPackageValidator.js +3 -3
  98. package/lib/commands/add/checkPackageValidator.js.map +1 -1
  99. package/lib/commands/add/command.js +3 -6
  100. package/lib/commands/add/command.js.map +1 -1
  101. package/lib/commands/analyze/analyze.js +3 -4
  102. package/lib/commands/analyze/analyze.js.map +1 -1
  103. package/lib/commands/benchmark/benchmark.js +4 -4
  104. package/lib/commands/benchmark/benchmark.js.map +1 -1
  105. package/lib/commands/build/build.js +3 -4
  106. package/lib/commands/build/build.js.map +1 -1
  107. package/lib/commands/createCommand.js +1 -2
  108. package/lib/commands/createCommand.js.map +1 -1
  109. package/lib/commands/generate/generate.js +8 -11
  110. package/lib/commands/generate/generate.js.map +1 -1
  111. package/lib/commands/generate/utils/askConfigEntry.js +20 -24
  112. package/lib/commands/generate/utils/askConfigEntry.js.map +1 -1
  113. package/lib/commands/generate/utils/askGenerator.js +14 -18
  114. package/lib/commands/generate/utils/askGenerator.js.map +1 -1
  115. package/lib/commands/new/new.js +47 -49
  116. package/lib/commands/new/new.js.map +1 -1
  117. package/lib/commands/new/steps/initializationGit.js +3 -5
  118. package/lib/commands/new/steps/initializationGit.js.map +1 -1
  119. package/lib/commands/new/steps/installDependencies.js +17 -19
  120. package/lib/commands/new/steps/installDependencies.js.map +1 -1
  121. package/lib/commands/new/steps/renderTemplate.js +3 -5
  122. package/lib/commands/new/steps/renderTemplate.js.map +1 -1
  123. package/lib/commands/start/start.js +7 -6
  124. package/lib/commands/start/start.js.map +1 -1
  125. package/lib/commands/start-prod/startProd.js +4 -5
  126. package/lib/commands/start-prod/startProd.js.map +1 -1
  127. package/lib/commands/static/application.js +38 -18
  128. package/lib/commands/static/application.js.map +1 -1
  129. package/lib/commands/static/generate.js +6 -6
  130. package/lib/commands/static/generate.js.map +1 -1
  131. package/lib/commands/static/static.js +3 -4
  132. package/lib/commands/static/static.js.map +1 -1
  133. package/lib/commands/update/checkVersionValidator.js +3 -4
  134. package/lib/commands/update/checkVersionValidator.js.map +1 -1
  135. package/lib/commands/update/command.js +3 -6
  136. package/lib/commands/update/command.js.map +1 -1
  137. package/lib/commands/update/dependantLibs.js +3 -3
  138. package/lib/commands/update/dependantLibs.js.map +1 -1
  139. package/lib/commands/update/update.js +8 -9
  140. package/lib/commands/update/update.js.map +1 -1
  141. package/lib/commands/update/updatePackageJson.js +10 -11
  142. package/lib/commands/update/updatePackageJson.js.map +1 -1
  143. package/lib/config/configManager.js +57 -21
  144. package/lib/config/configManager.js.map +1 -1
  145. package/lib/di/child.js +1 -1
  146. package/lib/di/child.js.map +1 -1
  147. package/lib/di/providers/builder.js +37 -17
  148. package/lib/di/providers/builder.js.map +1 -1
  149. package/lib/di/providers/commands.js +22 -25
  150. package/lib/di/providers/commands.js.map +1 -1
  151. package/lib/di/providers/config.js +1 -2
  152. package/lib/di/providers/config.js.map +1 -1
  153. package/lib/di/providers/std.js +2 -4
  154. package/lib/di/providers/std.js.map +1 -1
  155. package/lib/library/babel/index.d.ts.map +1 -1
  156. package/lib/library/babel/index.js +12 -3
  157. package/lib/library/babel/index.js.map +1 -1
  158. package/lib/library/babel/plugins/create-token-pure.js +3 -3
  159. package/lib/library/babel/plugins/create-token-pure.js.map +1 -1
  160. package/lib/library/babel/plugins/fill-declare-action-name.js +3 -4
  161. package/lib/library/babel/plugins/fill-declare-action-name.js.map +1 -1
  162. package/lib/library/babel/plugins/lazy-component/properties/chunkName.js +1 -1
  163. package/lib/library/babel/plugins/lazy-component/properties/chunkName.js.map +1 -1
  164. package/lib/library/babel/plugins/lazy-component/properties/resolve.js +1 -2
  165. package/lib/library/babel/plugins/lazy-component/properties/resolve.js.map +1 -1
  166. package/lib/library/babel/plugins/provider-stack.js +1 -2
  167. package/lib/library/babel/plugins/provider-stack.js.map +1 -1
  168. package/lib/library/swc/index.js +1 -2
  169. package/lib/library/swc/index.js.map +1 -1
  170. package/lib/library/webpack/application/client/common.js +10 -3
  171. package/lib/library/webpack/application/client/common.js.map +1 -1
  172. package/lib/library/webpack/application/client/dev.js +24 -10
  173. package/lib/library/webpack/application/client/dev.js.map +1 -1
  174. package/lib/library/webpack/application/client/prod/optimization/splitChunks.js +1 -1
  175. package/lib/library/webpack/application/client/prod/optimization/splitChunks.js.map +1 -1
  176. package/lib/library/webpack/application/client/prod.js +9 -2
  177. package/lib/library/webpack/application/client/prod.js.map +1 -1
  178. package/lib/library/webpack/application/server/common.js +7 -1
  179. package/lib/library/webpack/application/server/common.js.map +1 -1
  180. package/lib/library/webpack/application/server/dev.js +8 -4
  181. package/lib/library/webpack/application/server/dev.js.map +1 -1
  182. package/lib/library/webpack/application/server/prod.js +8 -1
  183. package/lib/library/webpack/application/server/prod.js.map +1 -1
  184. package/lib/library/webpack/blocks/browserslistConfig.js +1 -2
  185. package/lib/library/webpack/blocks/browserslistConfig.js.map +1 -1
  186. package/lib/library/webpack/blocks/configToEnv.js +10 -1
  187. package/lib/library/webpack/blocks/configToEnv.js.map +1 -1
  188. package/lib/library/webpack/blocks/css.js +9 -8
  189. package/lib/library/webpack/blocks/css.js.map +1 -1
  190. package/lib/library/webpack/blocks/dedupe.js +6 -2
  191. package/lib/library/webpack/blocks/dedupe.js.map +1 -1
  192. package/lib/library/webpack/blocks/extractCssPlugin.js +1 -2
  193. package/lib/library/webpack/blocks/extractCssPlugin.js.map +1 -1
  194. package/lib/library/webpack/blocks/filesClient.js +2 -3
  195. package/lib/library/webpack/blocks/filesClient.js.map +1 -1
  196. package/lib/library/webpack/blocks/filesServer.js +2 -3
  197. package/lib/library/webpack/blocks/filesServer.js.map +1 -1
  198. package/lib/library/webpack/blocks/nodeClient.js +4 -1
  199. package/lib/library/webpack/blocks/nodeClient.js.map +1 -1
  200. package/lib/library/webpack/blocks/optimize.js +25 -6
  201. package/lib/library/webpack/blocks/optimize.js.map +1 -1
  202. package/lib/library/webpack/blocks/postcssAssets.js +1 -2
  203. package/lib/library/webpack/blocks/postcssAssets.js.map +1 -1
  204. package/lib/library/webpack/blocks/pwa/client.js +21 -13
  205. package/lib/library/webpack/blocks/pwa/client.js.map +1 -1
  206. package/lib/library/webpack/blocks/pwa/shared.js +15 -10
  207. package/lib/library/webpack/blocks/pwa/shared.js.map +1 -1
  208. package/lib/library/webpack/child-app/client/dev.js +12 -5
  209. package/lib/library/webpack/child-app/client/dev.js.map +1 -1
  210. package/lib/library/webpack/child-app/moduleFederationShared.js +32 -28
  211. package/lib/library/webpack/child-app/moduleFederationShared.js.map +1 -1
  212. package/lib/library/webpack/child-app/server/dev.js +4 -1
  213. package/lib/library/webpack/child-app/server/dev.js.map +1 -1
  214. package/lib/library/webpack/common/client/prod.js +4 -1
  215. package/lib/library/webpack/common/client/prod.js.map +1 -1
  216. package/lib/library/webpack/common/dev.js +12 -5
  217. package/lib/library/webpack/common/dev.js.map +1 -1
  218. package/lib/library/webpack/common/main.js +10 -4
  219. package/lib/library/webpack/common/main.js.map +1 -1
  220. package/lib/library/webpack/common/server/prod.js +4 -1
  221. package/lib/library/webpack/common/server/prod.js.map +1 -1
  222. package/lib/library/webpack/constants/stats.js +4 -1
  223. package/lib/library/webpack/constants/stats.js.map +1 -1
  224. package/lib/library/webpack/loaders/image-loader/getImageMiniatureURL.js +3 -4
  225. package/lib/library/webpack/loaders/image-loader/getImageMiniatureURL.js.map +1 -1
  226. package/lib/library/webpack/loaders/image-loader/index.js +7 -9
  227. package/lib/library/webpack/loaders/image-loader/index.js.map +1 -1
  228. package/lib/library/webpack/loaders/pagesResolve.js +72 -74
  229. package/lib/library/webpack/loaders/pagesResolve.js.map +1 -1
  230. package/lib/library/webpack/module/client/common.js +5 -1
  231. package/lib/library/webpack/module/client/common.js.map +1 -1
  232. package/lib/library/webpack/module/client/dev.js +4 -1
  233. package/lib/library/webpack/module/client/dev.js.map +1 -1
  234. package/lib/library/webpack/module/common.js +4 -1
  235. package/lib/library/webpack/module/common.js.map +1 -1
  236. package/lib/library/webpack/module/server/common.js +6 -1
  237. package/lib/library/webpack/module/server/common.js.map +1 -1
  238. package/lib/library/webpack/module/server/dev.js +4 -1
  239. package/lib/library/webpack/module/server/dev.js.map +1 -1
  240. package/lib/library/webpack/plugins/ModuleFederationFixRange.js +7 -9
  241. package/lib/library/webpack/plugins/ModuleFederationFixRange.js.map +1 -1
  242. package/lib/library/webpack/plugins/PwaIconsPlugin.js +4 -5
  243. package/lib/library/webpack/plugins/PwaIconsPlugin.js.map +1 -1
  244. package/lib/library/webpack/plugins/RuntimePathPlugin.js +1 -2
  245. package/lib/library/webpack/plugins/RuntimePathPlugin.js.map +1 -1
  246. package/lib/library/webpack/plugins/WebManifestPlugin.js +2 -3
  247. package/lib/library/webpack/plugins/WebManifestPlugin.js.map +1 -1
  248. package/lib/library/webpack/plugins/WebpackBar/reporters/fancy.js +1 -1
  249. package/lib/library/webpack/plugins/WebpackBar/reporters/fancy.js.map +1 -1
  250. package/lib/library/webpack/utils/extendEntry.js +9 -2
  251. package/lib/library/webpack/utils/extendEntry.js.map +1 -1
  252. package/lib/library/webpack/utils/files.js +5 -3
  253. package/lib/library/webpack/utils/files.js.map +1 -1
  254. package/lib/library/webpack/utils/threadLoader.js +7 -4
  255. package/lib/library/webpack/utils/threadLoader.js.map +1 -1
  256. package/lib/library/webpack/utils/toWebpackConfig.js +5 -2
  257. package/lib/library/webpack/utils/toWebpackConfig.js.map +1 -1
  258. package/lib/library/webpack/utils/transpiler.js +17 -3
  259. package/lib/library/webpack/utils/transpiler.js.map +1 -1
  260. package/lib/models/analytics.js +5 -5
  261. package/lib/models/analytics.js.map +1 -1
  262. package/lib/models/command.js +28 -33
  263. package/lib/models/command.js.map +1 -1
  264. package/lib/models/logger.js +4 -5
  265. package/lib/models/logger.js.map +1 -1
  266. package/lib/models/port-manager.js +120 -148
  267. package/lib/models/port-manager.js.map +1 -1
  268. package/lib/models/task.js +26 -28
  269. package/lib/models/task.js.map +1 -1
  270. package/lib/schema/autogeneratedSchema.json +15 -15
  271. package/lib/ui/commander.js +1 -1
  272. package/lib/ui/commander.js.map +1 -1
  273. package/lib/utils/close.js +2 -3
  274. package/lib/utils/close.js.map +1 -1
  275. package/lib/utils/commands/dependencies/checkVersions.js +3 -4
  276. package/lib/utils/commands/dependencies/checkVersions.js.map +1 -1
  277. package/lib/utils/commands/dependencies/findTramvaiVersion.js +3 -4
  278. package/lib/utils/commands/dependencies/findTramvaiVersion.js.map +1 -1
  279. package/lib/utils/commands/dependencies/getLatestPackageVersion.js +3 -3
  280. package/lib/utils/commands/dependencies/getLatestPackageVersion.js.map +1 -1
  281. package/lib/utils/commands/dependencies/migrate.js +3 -4
  282. package/lib/utils/commands/dependencies/migrate.js.map +1 -1
  283. package/lib/utils/commands/dependencies/packageHasVersion.js +3 -3
  284. package/lib/utils/commands/dependencies/packageHasVersion.js.map +1 -1
  285. package/lib/utils/dev-app/request.js +4 -4
  286. package/lib/utils/dev-app/request.js.map +1 -1
  287. package/lib/utils/formatting.js +7 -1
  288. package/lib/utils/formatting.js.map +1 -1
  289. package/lib/utils/getTramvaiConfig.js +4 -1
  290. package/lib/utils/getTramvaiConfig.js.map +1 -1
  291. package/lib/utils/lockfileHash.js +1 -2
  292. package/lib/utils/lockfileHash.js.map +1 -1
  293. package/lib/utils/npmRequire.js +61 -65
  294. package/lib/utils/npmRequire.js.map +1 -1
  295. package/lib/utils/packageVersion.js +5 -6
  296. package/lib/utils/packageVersion.js.map +1 -1
  297. package/lib/utils/runHandlers.js +2 -3
  298. package/lib/utils/runHandlers.js.map +1 -1
  299. package/lib/utils/sentry.js +5 -5
  300. package/lib/utils/sentry.js.map +1 -1
  301. package/lib/utils/shouldUseReactRoot.js +1 -2
  302. package/lib/utils/shouldUseReactRoot.js.map +1 -1
  303. package/lib/validators/commands/checkDependencies.js +2 -2
  304. package/lib/validators/commands/checkDependencies.js.map +1 -1
  305. package/lib/validators/commands/checkPwaDependencies.js +4 -6
  306. package/lib/validators/commands/checkPwaDependencies.js.map +1 -1
  307. package/lib/validators/commands/checkSwcDependencies.js +5 -8
  308. package/lib/validators/commands/checkSwcDependencies.js.map +1 -1
  309. package/lib/validators/commands/runMigrationsAndCheckVersions.js +4 -5
  310. package/lib/validators/commands/runMigrationsAndCheckVersions.js.map +1 -1
  311. package/package.json +7 -7
  312. package/schema.json +15 -15
  313. package/src/api/start/__integration__/start.test.ts +1 -1
  314. package/src/library/babel/index.ts +7 -0
  315. package/src/schema/autogeneratedSchema.json +15 -15
@@ -31,217 +31,215 @@ const serverRunner = ({ di, config, compiler, configManager, server, }) => {
31
31
  return noop_1.default;
32
32
  }
33
33
  // eslint-disable-next-line max-statements
34
- return function runDevServer() {
35
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
36
- const file = `${Object.keys(config.entryPoints.entries())[0]}.js`;
37
- const filename = path_1.default.resolve(config.output.get('path'), file);
38
- // настоящая ссылка на файл используется для отладки в debug режиме
39
- const realFilename = `${(0, getApplicationUrl_1.getApplicationUrl)({
40
- host: configManager.staticHost,
41
- port: configManager.staticPort,
42
- protocol: configManager.httpProtocol,
43
- })}/${configManager.output.server}/${file}`;
44
- const serverCompiler = compiler.compilers.find((comp) => comp.name === 'server');
45
- if (!serverCompiler) {
46
- throw new Error('Server compiler has not found');
34
+ return async function runDevServer() {
35
+ const file = `${Object.keys(config.entryPoints.entries())[0]}.js`;
36
+ const filename = path_1.default.resolve(config.output.get('path'), file);
37
+ // настоящая ссылка на файл используется для отладки в debug режиме
38
+ const realFilename = `${(0, getApplicationUrl_1.getApplicationUrl)({
39
+ host: configManager.staticHost,
40
+ port: configManager.staticPort,
41
+ protocol: configManager.httpProtocol,
42
+ })}/${configManager.output.server}/${file}`;
43
+ const serverCompiler = compiler.compilers.find((comp) => comp.name === 'server');
44
+ if (!serverCompiler) {
45
+ throw new Error('Server compiler has not found');
46
+ }
47
+ const fs = serverCompiler.outputFileSystem;
48
+ // ThreadWorkerPool is experimental
49
+ // it doesn't work well when running integration tests in tramvai repo
50
+ // mostly because of the some problems with `babel-plugin-lodash`
51
+ // but thread workers are more lightweight and performant
52
+ //
53
+ // also currently they do not support nodejs debugging - [issue](https://github.com/nodejs/node/issues/26609)
54
+ // in case of debugging fallback to the child processes
55
+ const { pool, send } = await (0, pool_3.createWorkerPool)(di, configManager.experiments.serverRunner === 'thread' && !configManager.debug
56
+ ? pool_2.ThreadWorkerBridge
57
+ : pool_1.ProcessWorkerBridge);
58
+ let worker;
59
+ let serverInvalidated = true;
60
+ let workerPort;
61
+ let resolveWorkerPort;
62
+ let workerPortPromise;
63
+ let hasExitedUnexpectedly = false;
64
+ let proxyErrorCount = 0;
65
+ const proxy = (0, http_proxy_1.createProxyServer)({
66
+ // указываем, что сами обработаем ответ
67
+ selfHandleResponse: true,
68
+ });
69
+ const deathUnsubscribe = (0, death_1.default)({ exit: true, uncaughtException: true })(async (signal, err) => {
70
+ await pool.close(true);
71
+ if (err instanceof Error) {
72
+ console.error(err);
47
73
  }
48
- const fs = serverCompiler.outputFileSystem;
49
- // ThreadWorkerPool is experimental
50
- // it doesn't work well when running integration tests in tramvai repo
51
- // mostly because of the some problems with `babel-plugin-lodash`
52
- // but thread workers are more lightweight and performant
53
- //
54
- // also currently they do not support nodejs debugging - [issue](https://github.com/nodejs/node/issues/26609)
55
- // in case of debugging fallback to the child processes
56
- const { pool, send } = yield (0, pool_3.createWorkerPool)(di, configManager.experiments.serverRunner === 'thread' && !configManager.debug
57
- ? pool_2.ThreadWorkerBridge
58
- : pool_1.ProcessWorkerBridge);
59
- let worker;
60
- let serverInvalidated = true;
61
- let workerPort;
62
- let resolveWorkerPort;
63
- let workerPortPromise;
64
- let hasExitedUnexpectedly = false;
65
- let proxyErrorCount = 0;
66
- const proxy = (0, http_proxy_1.createProxyServer)({
67
- // указываем, что сами обработаем ответ
68
- selfHandleResponse: true,
69
- });
70
- const deathUnsubscribe = (0, death_1.default)({ exit: true, uncaughtException: true })((signal, err) => tslib_1.__awaiter(this, void 0, void 0, function* () {
71
- yield pool.close(true);
72
- if (err instanceof Error) {
73
- console.error(err);
74
- }
75
- process.exit(1);
76
- }));
77
- di.register({
78
- provide: tokens_1.CLOSE_HANDLER_TOKEN,
79
- multi: true,
80
- useValue: deathUnsubscribe,
74
+ process.exit(1);
75
+ });
76
+ di.register({
77
+ provide: tokens_1.CLOSE_HANDLER_TOKEN,
78
+ multi: true,
79
+ useValue: deathUnsubscribe,
80
+ });
81
+ // отключаем инвалидацию и перезапуск сервера если выставлен флаг noServerRebuild
82
+ if (!configManager.noServerRebuild) {
83
+ serverCompiler.hooks.invalid.tap(HOOK_NAME, () => {
84
+ serverInvalidated = true;
85
+ hasExitedUnexpectedly = false;
81
86
  });
82
- // отключаем инвалидацию и перезапуск сервера если выставлен флаг noServerRebuild
83
- if (!configManager.noServerRebuild) {
84
- serverCompiler.hooks.invalid.tap(HOOK_NAME, () => {
85
- serverInvalidated = true;
86
- hasExitedUnexpectedly = false;
87
- });
87
+ }
88
+ const waitWorkerPort = async () => {
89
+ if (workerPort) {
90
+ return workerPort;
88
91
  }
89
- const waitWorkerPort = () => tslib_1.__awaiter(this, void 0, void 0, function* () {
90
- if (workerPort) {
91
- return workerPort;
92
- }
93
- if (workerPortPromise) {
94
- return workerPortPromise;
95
- }
96
- workerPortPromise = new Promise((resolve) => {
97
- resolveWorkerPort = resolve;
98
- });
92
+ if (workerPortPromise) {
99
93
  return workerPortPromise;
94
+ }
95
+ workerPortPromise = new Promise((resolve) => {
96
+ resolveWorkerPort = resolve;
100
97
  });
101
- // http-proxy всегда склеивает слеши в урле, что немного неожиданно при работе с сервером напрямую
102
- // https://github.com/http-party/node-http-proxy/issues/775
103
- // поэтому пытаемся вернуть все слеши на место
104
- proxy.on('proxyReq', (proxyReq, req, res) => {
105
- // Early Hints support
106
- proxyReq.socket.on('data', (data) => {
107
- try {
108
- const chunk = data.toString();
109
- if (chunk.startsWith('HTTP/1.1 103 Early Hints')) {
110
- res.socket.write(data);
111
- }
98
+ return workerPortPromise;
99
+ };
100
+ // http-proxy всегда склеивает слеши в урле, что немного неожиданно при работе с сервером напрямую
101
+ // https://github.com/http-party/node-http-proxy/issues/775
102
+ // поэтому пытаемся вернуть все слеши на место
103
+ proxy.on('proxyReq', (proxyReq, req, res) => {
104
+ // Early Hints support
105
+ proxyReq.socket.on('data', (data) => {
106
+ try {
107
+ const chunk = data.toString();
108
+ if (chunk.startsWith('HTTP/1.1 103 Early Hints')) {
109
+ res.socket.write(data);
112
110
  }
113
- catch (e) {
114
- // do nothing
115
- }
116
- });
117
- // https://github.com/http-party/node-http-proxy/issues/1022#issuecomment-439245479
118
- // eslint-disable-next-line no-param-reassign
119
- proxyReq.path = req.url;
111
+ }
112
+ catch (e) {
113
+ // do nothing
114
+ }
120
115
  });
121
- // делаем запросы к дочернему процессу и пытаемся полностью получить его ответ
122
- // если всё ок, то просто отправляем полученные данные клиенту
123
- proxy.on('proxyRes', (proxyRes, req, res) => {
124
- proxyErrorCount--;
125
- if (!res.headersSent) {
126
- // дублируем всю логику прокси и отправляем ответ
127
- // немного костыль по мотивам https://github.com/http-party/node-http-proxy/issues/1263#issuecomment-394758768
128
- (0, each_1.default)((handler) => {
129
- handler(req, res, proxyRes, {});
130
- }, web_outgoing_1.default);
116
+ // https://github.com/http-party/node-http-proxy/issues/1022#issuecomment-439245479
117
+ // eslint-disable-next-line no-param-reassign
118
+ proxyReq.path = req.url;
119
+ });
120
+ // делаем запросы к дочернему процессу и пытаемся полностью получить его ответ
121
+ // если всё ок, то просто отправляем полученные данные клиенту
122
+ proxy.on('proxyRes', (proxyRes, req, res) => {
123
+ proxyErrorCount--;
124
+ if (!res.headersSent) {
125
+ // дублируем всю логику прокси и отправляем ответ
126
+ // немного костыль по мотивам https://github.com/http-party/node-http-proxy/issues/1263#issuecomment-394758768
127
+ (0, each_1.default)((handler) => {
128
+ handler(req, res, proxyRes, {});
129
+ }, web_outgoing_1.default);
130
+ }
131
+ //
132
+ // Обработка события aborted нужна только для кейса, когда запросы на localhost:4000
133
+ // проксируются через tramvai сервер, который каждый ребилд переоткрывается на другом порту
134
+ //
135
+ // Кейс нужен для __webpack_hmr, который отдает данные в стриме через server-sent events,
136
+ // и нам нужно всегда держать постоянное соединение к __webpack_hmr,
137
+ // а повторное открытие tramvai сервера на другом порту сбрасывает это соединение
138
+ //
139
+ // В proxy.on('error') уже содержится логика по повторному запросу на другой порт,
140
+ // поэтому нам просто нужно обработать обрыв соединения как ошибку
141
+ //
142
+ proxyRes.on('aborted', () => {
143
+ const contentType = res.getHeader('content-type');
144
+ if (typeof contentType === 'string' && contentType.includes('text/event-stream')) {
145
+ proxy.emit('error', Error('aborted'), req, res);
131
146
  }
132
- //
133
- // Обработка события aborted нужна только для кейса, когда запросы на localhost:4000
134
- // проксируются через tramvai сервер, который каждый ребилд переоткрывается на другом порту
135
- //
136
- // Кейс нужен для __webpack_hmr, который отдает данные в стриме через server-sent events,
137
- // и нам нужно всегда держать постоянное соединение к __webpack_hmr,
138
- // а повторное открытие tramvai сервера на другом порту сбрасывает это соединение
139
- //
140
- // В proxy.on('error') уже содержится логика по повторному запросу на другой порт,
141
- // поэтому нам просто нужно обработать обрыв соединения как ошибку
142
- //
143
- proxyRes.on('aborted', () => {
144
- const contentType = res.getHeader('content-type');
145
- if (typeof contentType === 'string' && contentType.includes('text/event-stream')) {
146
- proxy.emit('error', Error('aborted'), req, res);
147
- }
148
- });
149
- proxyRes.pipe(res);
150
147
  });
151
- // в случае ошибки ждём пока получим новый порт и делаем повторный запрос
152
- // рекурсивные ошибки будут опять попадать сюда и это будет продолжаться до тех пор пока не получим ответ
153
- proxy.on('error', (err, req, res) => tslib_1.__awaiter(this, void 0, void 0, function* () {
154
- if (hasExitedUnexpectedly) {
155
- // @ts-ignore
156
- res.statusCode = 500;
157
- res.end(EXITED_UNEXPECTEDLY);
158
- return;
148
+ proxyRes.pipe(res);
149
+ });
150
+ // в случае ошибки ждём пока получим новый порт и делаем повторный запрос
151
+ // рекурсивные ошибки будут опять попадать сюда и это будет продолжаться до тех пор пока не получим ответ
152
+ proxy.on('error', async (err, req, res) => {
153
+ if (hasExitedUnexpectedly) {
154
+ // @ts-ignore
155
+ res.statusCode = 500;
156
+ res.end(EXITED_UNEXPECTEDLY);
157
+ return;
158
+ }
159
+ if (proxyErrorCount > 10) {
160
+ console.error('[dev-server-error] looping of request proxying to worker', err);
161
+ // @ts-ignore
162
+ res.statusCode = 500;
163
+ res.end(EXITED_UNEXPECTEDLY);
164
+ return;
165
+ }
166
+ if (pool.state !== lightning_pool_1.PoolState.CLOSED) {
167
+ proxyErrorCount++;
168
+ await waitWorkerPort();
169
+ proxy.web(req, res, { target: `http://localhost:${workerPort}` });
170
+ }
171
+ });
172
+ // задаём свой http-сервер который будет проксировать запросы к дочернему процессу
173
+ server.on('request', async (req, res) => {
174
+ if (hasExitedUnexpectedly) {
175
+ res.statusCode = 500;
176
+ res.end(EXITED_UNEXPECTEDLY);
177
+ return;
178
+ }
179
+ await waitWorkerPort();
180
+ proxy.web(req, res, { target: `http://localhost:${workerPort}` });
181
+ });
182
+ // Проксируем также и веб-сокеты
183
+ server.on('upgrade', (req, socket, head) => {
184
+ proxy.ws(req, socket, { target: `http://localhost:${workerPort}` });
185
+ });
186
+ di.register({
187
+ provide: tokens_1.CLOSE_HANDLER_TOKEN,
188
+ multi: true,
189
+ useValue: async () => {
190
+ proxy.close();
191
+ if (worker) {
192
+ // если сервер закрывается, мы должны завершить все дочерние воркеры
193
+ await pool.release(worker);
194
+ await pool.close(true);
159
195
  }
160
- if (proxyErrorCount > 10) {
161
- console.error('[dev-server-error] looping of request proxying to worker', err);
162
- // @ts-ignore
163
- res.statusCode = 500;
164
- res.end(EXITED_UNEXPECTEDLY);
196
+ },
197
+ });
198
+ serverCompiler.hooks.beforeCompile.tapPromise(HOOK_NAME, async () => {
199
+ if (pool.state === lightning_pool_1.PoolState.IDLE) {
200
+ await pool.start();
201
+ }
202
+ });
203
+ compiler.hooks.done.tap(HOOK_NAME, async (stats) => {
204
+ if (serverInvalidated) {
205
+ workerPort = null;
206
+ workerPortPromise = null;
207
+ serverInvalidated = false;
208
+ if (stats.hasErrors()) {
209
+ // всплыли ошибки при сборке - просто игнорим калбек чтобы не падать ниже и дать возможность выполнить пересборку
165
210
  return;
166
211
  }
167
- if (pool.state !== lightning_pool_1.PoolState.CLOSED) {
168
- proxyErrorCount++;
169
- yield waitWorkerPort();
170
- proxy.web(req, res, { target: `http://localhost:${workerPort}` });
171
- }
172
- }));
173
- // задаём свой http-сервер который будет проксировать запросы к дочернему процессу
174
- server.on('request', (req, res) => tslib_1.__awaiter(this, void 0, void 0, function* () {
175
- if (hasExitedUnexpectedly) {
176
- res.statusCode = 500;
177
- res.end(EXITED_UNEXPECTEDLY);
178
- return;
212
+ if (worker) {
213
+ await pool.release(worker);
179
214
  }
180
- yield waitWorkerPort();
181
- proxy.web(req, res, { target: `http://localhost:${workerPort}` });
182
- }));
183
- // Проксируем также и веб-сокеты
184
- server.on('upgrade', (req, socket, head) => {
185
- proxy.ws(req, socket, { target: `http://localhost:${workerPort}` });
186
- });
187
- di.register({
188
- provide: tokens_1.CLOSE_HANDLER_TOKEN,
189
- multi: true,
190
- useValue: () => tslib_1.__awaiter(this, void 0, void 0, function* () {
191
- proxy.close();
192
- if (worker) {
193
- // если сервер закрывается, мы должны завершить все дочерние воркеры
194
- yield pool.release(worker);
195
- yield pool.close(true);
215
+ worker = await pool.acquire();
216
+ worker.on('error', (error) => {
217
+ if (pool.state !== lightning_pool_1.PoolState.CLOSED) {
218
+ console.error('[worker] error:', error);
219
+ hasExitedUnexpectedly = true;
196
220
  }
197
- }),
198
- });
199
- serverCompiler.hooks.beforeCompile.tapPromise(HOOK_NAME, () => tslib_1.__awaiter(this, void 0, void 0, function* () {
200
- if (pool.state === lightning_pool_1.PoolState.IDLE) {
201
- yield pool.start();
202
- }
203
- }));
204
- compiler.hooks.done.tap(HOOK_NAME, (stats) => tslib_1.__awaiter(this, void 0, void 0, function* () {
205
- if (serverInvalidated) {
221
+ });
222
+ worker.on('exit', async () => {
223
+ hasExitedUnexpectedly = true;
206
224
  workerPort = null;
207
225
  workerPortPromise = null;
208
- serverInvalidated = false;
209
- if (stats.hasErrors()) {
210
- // всплыли ошибки при сборке - просто игнорим калбек чтобы не падать ниже и дать возможность выполнить пересборку
211
- return;
212
- }
213
226
  if (worker) {
214
- yield pool.release(worker);
227
+ pool.release(worker);
215
228
  }
216
- worker = yield pool.acquire();
217
- worker.on('error', (error) => {
218
- if (pool.state !== lightning_pool_1.PoolState.CLOSED) {
219
- console.error('[worker] error:', error);
220
- hasExitedUnexpectedly = true;
221
- }
222
- });
223
- worker.on('exit', () => tslib_1.__awaiter(this, void 0, void 0, function* () {
224
- hasExitedUnexpectedly = true;
225
- workerPort = null;
226
- workerPortPromise = null;
227
- if (worker) {
228
- pool.release(worker);
229
- }
230
- worker = null;
231
- if (pool.state !== lightning_pool_1.PoolState.CLOSED) {
232
- console.error(EXITED_UNEXPECTEDLY);
233
- }
234
- }));
235
- worker.once('message', ({ cmd, port }) => {
236
- if (cmd === 'listen') {
237
- workerPort = port;
238
- resolveWorkerPort === null || resolveWorkerPort === void 0 ? void 0 : resolveWorkerPort();
239
- }
240
- });
241
- const script = fs.readFileSync(filename);
242
- yield send(worker, 'script', { filename: realFilename, script });
243
- }
244
- }));
229
+ worker = null;
230
+ if (pool.state !== lightning_pool_1.PoolState.CLOSED) {
231
+ console.error(EXITED_UNEXPECTEDLY);
232
+ }
233
+ });
234
+ worker.once('message', ({ cmd, port }) => {
235
+ if (cmd === 'listen') {
236
+ workerPort = port;
237
+ resolveWorkerPort?.();
238
+ }
239
+ });
240
+ const script = fs.readFileSync(filename);
241
+ await send(worker, 'script', { filename: realFilename, script });
242
+ }
245
243
  });
246
244
  };
247
245
  };
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/builder/webpack/devServer/server.ts"],"names":[],"mappings":";;;;AAAA,gFAAgD;AAChD,8EAAiD;AACjD,wDAAwB;AAGxB,0DAA0B;AAC1B,2CAA+C;AAC/C,iDAAiD;AACjD,yGAAwE;AACxE,mDAA2C;AAK3C,8CAA0D;AAC1D,6CAAwD;AACxD,sCAA+C;AAE/C,sCAAgD;AAChD,wEAAqE;AAErE,MAAM,mBAAmB,GAAG;;;;;;;;;CAS3B,CAAC;AASF,MAAM,SAAS,GAAG,WAAW,CAAC;AAEvB,MAAM,YAAY,GAAG,CAAC,EAC3B,EAAE,EACF,MAAM,EACN,QAAQ,EACR,aAAa,EACb,MAAM,GAOP,EAAE,EAAE;IACH,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,cAAI,CAAC;KACb;IACD,0CAA0C;IAC1C,OAAO,SAAe,YAAY;;YAChC,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAClE,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;YAC/D,mEAAmE;YACnE,MAAM,YAAY,GAAG,GAAG,IAAA,qCAAiB,EAAC;gBACxC,IAAI,EAAE,aAAa,CAAC,UAAU;gBAC9B,IAAI,EAAE,aAAa,CAAC,UAAU;gBAC9B,QAAQ,EAAE,aAAa,CAAC,YAAY;aACrC,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YAC5C,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YAEjF,IAAI,CAAC,cAAc,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;aAClD;YAED,MAAM,EAAE,GAAG,cAAc,CAAC,gBAAuB,CAAC;YAClD,mCAAmC;YACnC,sEAAsE;YACtE,iEAAiE;YACjE,yDAAyD;YACzD,EAAE;YACF,6GAA6G;YAC7G,uDAAuD;YACvD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,IAAA,uBAAgB,EAC3C,EAAE,EACF,aAAa,CAAC,WAAW,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK;gBACzE,CAAC,CAAC,yBAAkB;gBACpB,CAAC,CAAC,0BAAmB,CACxB,CAAC;YACF,IAAI,MAAqB,CAAC;YAC1B,IAAI,iBAAiB,GAAG,IAAI,CAAC;YAC7B,IAAI,UAAyB,CAAC;YAC9B,IAAI,iBAAoC,CAAC;YACzC,IAAI,iBAAuC,CAAC;YAC5C,IAAI,qBAAqB,GAAG,KAAK,CAAC;YAClC,IAAI,eAAe,GAAG,CAAC,CAAC;YAExB,MAAM,KAAK,GAAG,IAAA,8BAAiB,EAAC;gBAC9B,uCAAuC;gBACvC,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAC;YAEH,MAAM,gBAAgB,GAAG,IAAA,eAAK,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAO,MAAM,EAAE,GAAG,EAAE,EAAE;gBAC5F,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEvB,IAAI,GAAG,YAAY,KAAK,EAAE;oBACxB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACpB;gBAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAA,CAAC,CAAC;YAEH,EAAE,CAAC,QAAQ,CAAC;gBACV,OAAO,EAAE,4BAAmB;gBAC5B,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,gBAAgB;aAC3B,CAAC,CAAC;YAEH,iFAAiF;YACjF,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE;gBAClC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,EAAE;oBAC/C,iBAAiB,GAAG,IAAI,CAAC;oBACzB,qBAAqB,GAAG,KAAK,CAAC;gBAChC,CAAC,CAAC,CAAC;aACJ;YAED,MAAM,cAAc,GAAG,GAAS,EAAE;gBAChC,IAAI,UAAU,EAAE;oBACd,OAAO,UAAU,CAAC;iBACnB;gBAED,IAAI,iBAAiB,EAAE;oBACrB,OAAO,iBAAiB,CAAC;iBAC1B;gBAED,iBAAiB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;oBAChD,iBAAiB,GAAG,OAAO,CAAC;gBAC9B,CAAC,CAAC,CAAC;gBAEH,OAAO,iBAAiB,CAAC;YAC3B,CAAC,CAAA,CAAC;YAEF,kGAAkG;YAClG,2DAA2D;YAC3D,8CAA8C;YAC9C,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1C,sBAAsB;gBACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBAClC,IAAI;wBACF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAE9B,IAAI,KAAK,CAAC,UAAU,CAAC,0BAA0B,CAAC,EAAE;4BAChD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;yBACxB;qBACF;oBAAC,OAAO,CAAC,EAAE;wBACV,aAAa;qBACd;gBACH,CAAC,CAAC,CAAC;gBAEH,mFAAmF;gBACnF,6CAA6C;gBAC5C,QAAgB,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC;YACnC,CAAC,CAAC,CAAC;YAEH,8EAA8E;YAC9E,8DAA8D;YAC9D,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1C,eAAe,EAAE,CAAC;gBAElB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;oBACpB,iDAAiD;oBACjD,8GAA8G;oBAC9G,IAAA,cAAO,EAAC,CAAC,OAAO,EAAE,EAAE;wBAClB,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;oBAClC,CAAC,EAAE,sBAAW,CAAC,CAAC;iBACjB;gBAED,EAAE;gBACF,oFAAoF;gBACpF,2FAA2F;gBAC3F,EAAE;gBACF,yFAAyF;gBACzF,oEAAoE;gBACpE,iFAAiF;gBACjF,EAAE;gBACF,kFAAkF;gBAClF,kEAAkE;gBAClE,EAAE;gBACF,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;oBAC1B,MAAM,WAAW,GAAG,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;oBAElD,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;wBAChF,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;qBACjD;gBACH,CAAC,CAAC,CAAC;gBAEH,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,yEAAyE;YACzE,yGAAyG;YACzG,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAO,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBACxC,IAAI,qBAAqB,EAAE;oBACzB,aAAa;oBACb,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;oBACrB,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;oBAC7B,OAAO;iBACR;gBAED,IAAI,eAAe,GAAG,EAAE,EAAE;oBACxB,OAAO,CAAC,KAAK,CAAC,0DAA0D,EAAE,GAAG,CAAC,CAAC;oBAC/E,aAAa;oBACb,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;oBACrB,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;oBAC7B,OAAO;iBACR;gBAED,IAAI,IAAI,CAAC,KAAK,KAAK,0BAAS,CAAC,MAAM,EAAE;oBACnC,eAAe,EAAE,CAAC;oBAElB,MAAM,cAAc,EAAE,CAAC;oBAEvB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAU,EAAE,EAAE,MAAM,EAAE,oBAAoB,UAAU,EAAE,EAAE,CAAC,CAAC;iBAC1E;YACH,CAAC,CAAA,CAAC,CAAC;YAEH,kFAAkF;YAClF,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;gBACtC,IAAI,qBAAqB,EAAE;oBACzB,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;oBACrB,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;oBAC7B,OAAO;iBACR;gBAED,MAAM,cAAc,EAAE,CAAC;gBAEvB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,oBAAoB,UAAU,EAAE,EAAE,CAAC,CAAC;YACpE,CAAC,CAAA,CAAC,CAAC;YAEH,gCAAgC;YAChC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBACzC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,oBAAoB,UAAU,EAAE,EAAE,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,QAAQ,CAAC;gBACV,OAAO,EAAE,4BAAmB;gBAC5B,KAAK,EAAE,IAAI;gBACX,QAAQ,EAAE,GAAS,EAAE;oBACnB,KAAK,CAAC,KAAK,EAAE,CAAC;oBAEd,IAAI,MAAM,EAAE;wBACV,oEAAoE;wBACpE,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;wBAC3B,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;qBACxB;gBACH,CAAC,CAAA;aACF,CAAC,CAAC;YAEH,cAAc,CAAC,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,GAAS,EAAE;gBAClE,IAAI,IAAI,CAAC,KAAK,KAAK,0BAAS,CAAC,IAAI,EAAE;oBACjC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;iBACpB;YACH,CAAC,CAAA,CAAC,CAAC;YAEH,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAO,KAAK,EAAE,EAAE;gBACjD,IAAI,iBAAiB,EAAE;oBACrB,UAAU,GAAG,IAAI,CAAC;oBAClB,iBAAiB,GAAG,IAAI,CAAC;oBAEzB,iBAAiB,GAAG,KAAK,CAAC;oBAE1B,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;wBACrB,iHAAiH;wBACjH,OAAO;qBACR;oBAED,IAAI,MAAM,EAAE;wBACV,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;qBAC5B;oBAED,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBAE9B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wBAC3B,IAAI,IAAI,CAAC,KAAK,KAAK,0BAAS,CAAC,MAAM,EAAE;4BACnC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;4BACxC,qBAAqB,GAAG,IAAI,CAAC;yBAC9B;oBACH,CAAC,CAAC,CAAC;oBAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAS,EAAE;wBAC3B,qBAAqB,GAAG,IAAI,CAAC;wBAC7B,UAAU,GAAG,IAAI,CAAC;wBAClB,iBAAiB,GAAG,IAAI,CAAC;wBAEzB,IAAI,MAAM,EAAE;4BACV,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;yBACtB;wBAED,MAAM,GAAG,IAAI,CAAC;wBAEd,IAAI,IAAI,CAAC,KAAK,KAAK,0BAAS,CAAC,MAAM,EAAE;4BACnC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;yBACpC;oBACH,CAAC,CAAA,CAAC,CAAC;oBAEH,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;wBACvC,IAAI,GAAG,KAAK,QAAQ,EAAE;4BACpB,UAAU,GAAG,IAAI,CAAC;4BAElB,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,EAAI,CAAC;yBACvB;oBACH,CAAC,CAAC,CAAC;oBAEH,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAEzC,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;iBAClE;YACH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA,CAAC;AACJ,CAAC,CAAC;AApRW,QAAA,YAAY,gBAoRvB"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/builder/webpack/devServer/server.ts"],"names":[],"mappings":"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"}
@@ -34,34 +34,32 @@ const getHotModulePrefix = (configManager) => {
34
34
  throw new Error(`${configManager.type} is not supported`);
35
35
  };
36
36
  const createDevServer = ({ di, compiler, configManager, staticServer, }) => {
37
- return function devServer() {
38
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
39
- const app = (0, express_1.default)();
40
- app.use((req, res, next) => {
41
- res.header('Access-Control-Allow-Origin', '*');
42
- res.header('Timing-Allow-Origin', '*');
43
- next();
44
- });
45
- const devMiddleware = (0, webpack_dev_middleware_1.default)(compiler);
46
- app.use(getPrefix(configManager), devMiddleware);
47
- di.register({
48
- provide: tokens_2.WEBPACK_WATCHING_TOKEN,
49
- useValue: devMiddleware.context.watching,
50
- });
51
- di.register({
52
- provide: tokens_2.CLOSE_HANDLER_TOKEN,
53
- multi: true,
54
- useValue: () => {
55
- return (0, close_1.close)(compiler);
56
- },
57
- });
58
- if (configManager.hotRefresh.enabled) {
59
- app.use(getHotModulePrefix(configManager), (0, webpack_hot_middleware_1.default)(compiler, { log: false, statsOptions: { cached: false } }));
60
- }
61
- const rootDir = di.get(tokens_1.CONFIG_ROOT_DIR_TOKEN);
62
- app.use(express_1.default.static(rootDir));
63
- staticServer.on('request', app);
37
+ return async function devServer() {
38
+ const app = (0, express_1.default)();
39
+ app.use((req, res, next) => {
40
+ res.header('Access-Control-Allow-Origin', '*');
41
+ res.header('Timing-Allow-Origin', '*');
42
+ next();
64
43
  });
44
+ const devMiddleware = (0, webpack_dev_middleware_1.default)(compiler);
45
+ app.use(getPrefix(configManager), devMiddleware);
46
+ di.register({
47
+ provide: tokens_2.WEBPACK_WATCHING_TOKEN,
48
+ useValue: devMiddleware.context.watching,
49
+ });
50
+ di.register({
51
+ provide: tokens_2.CLOSE_HANDLER_TOKEN,
52
+ multi: true,
53
+ useValue: () => {
54
+ return (0, close_1.close)(compiler);
55
+ },
56
+ });
57
+ if (configManager.hotRefresh.enabled) {
58
+ app.use(getHotModulePrefix(configManager), (0, webpack_hot_middleware_1.default)(compiler, { log: false, statsOptions: { cached: false } }));
59
+ }
60
+ const rootDir = di.get(tokens_1.CONFIG_ROOT_DIR_TOKEN);
61
+ app.use(express_1.default.static(rootDir));
62
+ staticServer.on('request', app);
65
63
  };
66
64
  };
67
65
  exports.createDevServer = createDevServer;
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../../src/builder/webpack/devServer/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../../src/builder/webpack/devServer/setup.ts"],"names":[],"mappings":"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"}