@@ -2,7 +2,6 @@ import { EventEmitter } from 'events'
22import { Span } from 'opentracing'
33import * as path from 'path'
44import { Observable , Subscription } from 'rxjs'
5- import { SelectorMethodSignature } from 'rxjs/observable/FromEventObservable'
65import * as url from 'url'
76import { Disposable } from './disposable'
87import { FileSystemUpdater } from './fs'
@@ -99,38 +98,38 @@ export class PackageManager extends EventEmitter implements Disposable {
9998 let rootPackageJsonLevel = Infinity
10099 // Find locations of package.jsons _not_ inside node_modules
101100 this . subscriptions . add (
102- Observable . fromEvent ( this . inMemoryFileSystem , 'add' , Array . of as SelectorMethodSignature <
103- [ string , string ]
104- > ) . subscribe ( ( [ uri , content ] ) => {
105- const parts = url . parse ( uri )
106- if (
107- ! parts . pathname ||
108- ! parts . pathname . endsWith ( '/package.json' ) ||
109- parts . pathname . includes ( '/node_modules/' )
110- ) {
111- return
112- }
113- let parsed : PackageJson | undefined
114- if ( content ) {
115- try {
116- parsed = JSON . parse ( content )
117- } catch ( err ) {
118- logger . error ( `Error parsing package.json:` , err )
101+ Observable . fromEvent < [ string , string ] > ( this . inMemoryFileSystem , 'add' , ( k , v ) => [ k , v ] ) . subscribe (
102+ ( [ uri , content ] ) => {
103+ const parts = url . parse ( uri )
104+ if (
105+ ! parts . pathname ||
106+ ! parts . pathname . endsWith ( '/package.json' ) ||
107+ parts . pathname . includes ( '/node_modules/' )
108+ ) {
109+ return
110+ }
111+ let parsed : PackageJson | undefined
112+ if ( content ) {
113+ try {
114+ parsed = JSON . parse ( content )
115+ } catch ( err ) {
116+ logger . error ( `Error parsing package.json:` , err )
117+ }
118+ }
119+ // Don't override existing content with undefined
120+ if ( parsed || ! this . packages . get ( uri ) ) {
121+ this . packages . set ( uri , parsed )
122+ this . logger . log ( `Found package ${ uri } ` )
123+ this . emit ( 'parsed' , uri , parsed )
124+ }
125+ // If the current root package.json is further nested than this one, replace it
126+ const level = parts . pathname . split ( '/' ) . length
127+ if ( level < rootPackageJsonLevel ) {
128+ this . rootPackageJsonUri = uri
129+ rootPackageJsonLevel = level
119130 }
120131 }
121- // Don't override existing content with undefined
122- if ( parsed || ! this . packages . get ( uri ) ) {
123- this . packages . set ( uri , parsed )
124- this . logger . log ( `Found package ${ uri } ` )
125- this . emit ( 'parsed' , uri , parsed )
126- }
127- // If the current root package.json is further nested than this one, replace it
128- const level = parts . pathname . split ( '/' ) . length
129- if ( level < rootPackageJsonLevel ) {
130- this . rootPackageJsonUri = uri
131- rootPackageJsonLevel = level
132- }
133- } )
132+ )
134133 )
135134 }
136135
0 commit comments