@@ -81,7 +81,6 @@ export function serveWebpackBrowser(
81
81
const browserTarget = targetFromTargetString ( options . browserTarget ) ;
82
82
const root = context . workspaceRoot ;
83
83
let first = true ;
84
- let openAddress : string ;
85
84
const host = new NodeJsSyncHost ( ) ;
86
85
87
86
const loggingFn = transforms . logging
@@ -152,15 +151,6 @@ export function serveWebpackBrowser(
152
151
options . publicHost = clientAddress . host ;
153
152
}
154
153
155
- // Resolve serve address.
156
- const serverAddress = url . format ( {
157
- protocol : options . ssl ? 'https' : 'http' ,
158
- hostname : options . host === '0.0.0.0' ? 'localhost' : options . host ,
159
- // Port cannot be undefined here since we have a step that sets it back in options above.
160
- // tslint:disable-next-line:no-non-null-assertion
161
- port : options . port ! . toString ( ) ,
162
- } ) ;
163
-
164
154
// Add live reload config.
165
155
if ( options . liveReload ) {
166
156
_addLiveReload ( options , browserOptions , webpackConfig , clientAddress , context . logger ) ;
@@ -193,24 +183,34 @@ export function serveWebpackBrowser(
193
183
` ) ;
194
184
}
195
185
196
- context . logger . info ( tags . oneLine `
197
- **
198
- Angular Live Development Server is listening on ${ options . host } :${ options . port } ,
199
- open your browser on ${ serverAddress } ${ webpackDevServerConfig . publicPath }
200
- **
201
- ` ) ;
202
-
203
- openAddress = serverAddress + webpackDevServerConfig . publicPath ;
204
-
205
- return runWebpackDevServer ( webpackConfig , context , { logging : loggingFn } ) ;
206
- } ) ,
207
- map ( buildEvent => {
208
- if ( first && options . open ) {
209
- first = false ;
210
- open ( openAddress ) ;
211
- }
212
-
213
- return { ...buildEvent , baseUrl : openAddress } as DevServerBuilderOutput ;
186
+ return runWebpackDevServer ( webpackConfig , context , { logging : loggingFn } ) . pipe (
187
+ map ( buildEvent => {
188
+ // Resolve serve address.
189
+ const serverAddress = url . format ( {
190
+ protocol : options . ssl ? 'https' : 'http' ,
191
+ hostname : options . host === '0.0.0.0' ? 'localhost' : options . host ,
192
+ pathname : webpackDevServerConfig . publicPath ,
193
+ port : buildEvent . port ,
194
+ } ) ;
195
+
196
+ if ( first ) {
197
+ first = false ;
198
+
199
+ context . logger . info ( tags . oneLine `
200
+ **
201
+ Angular Live Development Server is listening on ${ options . host } :${ options . port } ,
202
+ open your browser on ${ serverAddress }
203
+ **
204
+ ` ) ;
205
+
206
+ if ( options . open ) {
207
+ open ( serverAddress ) ;
208
+ }
209
+ }
210
+
211
+ return { ...buildEvent , baseUrl : serverAddress } as DevServerBuilderOutput ;
212
+ } ) ,
213
+ ) ;
214
214
} ) ,
215
215
) ;
216
216
}
0 commit comments