(onListen: boolean)
| 1046 | let initingServer: Promise<void> | undefined |
| 1047 | let serverInited = false |
| 1048 | const initServer = async (onListen: boolean) => { |
| 1049 | if (serverInited) return |
| 1050 | if (initingServer) return initingServer |
| 1051 | |
| 1052 | initingServer = (async function () { |
| 1053 | if (!config.experimental.bundledDev) { |
| 1054 | // For backward compatibility, we call buildStart for the client |
| 1055 | // environment when initing the server. For other environments |
| 1056 | // buildStart will be called when the first request is transformed |
| 1057 | await environments.client.pluginContainer.buildStart() |
| 1058 | } |
| 1059 | |
| 1060 | // ensure ws server started |
| 1061 | if (onListen || options.listen) { |
| 1062 | await Promise.all( |
| 1063 | Object.values(environments).map((e) => e.listen(server)), |
| 1064 | ) |
| 1065 | } |
| 1066 | |
| 1067 | initingServer = undefined |
| 1068 | serverInited = true |
| 1069 | })() |
| 1070 | return initingServer |
| 1071 | } |
| 1072 | |
| 1073 | if (!middlewareMode && httpServer) { |
| 1074 | // overwrite listen to init optimizer before server start |
no test coverage detected