Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 4试验台编译组件_Angular_Webpack_Zonejs - Fatal编程技术网

Angular 4试验台编译组件

Angular 4试验台编译组件,angular,webpack,zonejs,Angular,Webpack,Zonejs,我有一个angular 4项目,它的灵感来自angular cli。在angular 4.1.x中,一切正常(运行、构建、单元测试、独立组件测试) 但是,当我转到安装了4.4.6的^4.2.0时,我遇到了下面描述的问题。这实际上是从版本4.2.2开始的 以最简单的情况为例- 部件代码是 import { Component } from '@angular/core'; @Component({ selector: 'gen-test', templateUrl: './gen-tes

我有一个angular 4项目,它的灵感来自angular cli。在angular 4.1.x中,一切正常(运行、构建、单元测试、独立组件测试)

但是,当我转到安装了4.4.6的^4.2.0时,我遇到了下面描述的问题。这实际上是从版本4.2.2开始的

以最简单的情况为例-

部件代码是

import { Component } from '@angular/core';

@Component({
  selector: 'gen-test',
  templateUrl: './gen-test.component.html',
  styleUrls: [ './gen-test.component.css' ],
})
export class GenTestComponent {

}
测试非常简单

import { TestBed, async } from '@angular/core/testing';

import { GenTestComponent } from '../gen-test.component';

fdescribe('GenTestComponent', () => {

    beforeEach(async(() => {
        TestBed.configureTestingModule({
            declarations: [ GenTestComponent ],
        })
        .compileComponents();
    }));

    it('should run', ()=> {
       // todo: write test
    });
});
即使对于这段代码,当运行
npm测试时
也会给出以下错误

Failed: fn$$1 is not a function
    TypeError: fn$$1 is not a function
        at flattenSummaries (webpack:///~/@angular/compiler/@angular/compiler.es5.js:27173:0 <- karma.entry.js:55624:5)
        at JitCompiler.loadAotSummaries (webpack:///~/@angular/compiler/@angular/compiler.es5.js:26774:0 <- karma.entry.js:55225:9)
        at TestingCompilerImpl.loadAotSummaries (webpack:///~/@angular/compiler/@angular/compiler/testing.es5.js:512:75 <- karma.entry.js:58481:92)
        at TestBed._createCompilerAndModule (webpack:///~/@angular/core/@angular/core/testing.es5.js:798:0 <- karma.entry.js:22468:24)
        at TestBed.compileComponents (webpack:///~/@angular/core/@angular/core/testing.es5.js:745:0 <- karma.entry.js:22415:31)
        at Function.TestBed.compileComponents (webpack:///~/@angular/core/@angular/core/testing.es5.js:625:45 <- karma.entry.js:22295:67)
        at Object.<anonymous> (webpack:///src/app/gen-test/tests/gen-test.component.int.spec.ts:11:9 <- karma.entry.js:67542:14)
        at ZoneDelegate.invoke (webpack:///~/zone.js/dist/zone.js:392:0 <- karma.entry.js:74968:26)
        at AsyncTestZoneSpec.onInvoke (webpack:///~/zone.js/dist/async-test.js:49:0 <- karma.entry.js:73655:39)
        at ProxyZoneSpec.onInvoke (webpack:///~/zone.js/dist/proxy.js:76:0 <- karma.entry.js:74469:39)
        at ZoneDelegate.invoke (webpack:///~/zone.js/dist/zone.js:391:0 <- karma.entry.js:74967:32)
        at Zone.runGuarded (webpack:///~/zone.js/dist/zone.js:155:0 <- karma.entry.js:74731:47)
        at runInTestZone (webpack:///~/@angular/core/@angular/core/testing.es5.js:106:0 <- karma.entry.js:21776:25)
        at Object.<anonymous> (webpack:///~/@angular/core/@angular/core/testing.es5.js:45:0 <- karma.entry.js:21715:13)
        at ZoneDelegate.invoke (webpack:///~/zone.js/dist/zone.js:392:0 <- karma.entry.js:74968:26)
        at ProxyZoneSpec.onInvoke (webpack:///~/zone.js/dist/proxy.js:79:0 <- karma.entry.js:74472:39)
        at ZoneDelegate.invoke (webpack:///~/zone.js/dist/zone.js:391:0 <- karma.entry.js:74967:32)
        at Zone.run (webpack:///~/zone.js/dist/zone.js:142:0 <- karma.entry.js:74718:43)
        at Object.<anonymous> (webpack:///~/zone.js/dist/jasmine-patch.js:102:0 <- karma.entry.js:74169:34)
        at ZoneQueueRunner.jasmine.QueueRunner.ZoneQueueRunner.execute (webpack:///~/zone.js/dist/jasmine-patch.js:132:0 <- karma.entry.js:74199:42)
        at ZoneQueueRunner.jasmine.QueueRunner.ZoneQueueRunner.execute (webpack:///~/zone.js/dist/jasmine-patch.js:132:0 <- karma.entry.js:74199:42)
        at webpack:///~/zone.js/dist/jasmine-patch.js:129:91 <- karma.entry.js:74196:130
        at ZoneDelegate.invokeTask (webpack:///~/zone.js/dist/zone.js:425:0 <- karma.entry.js:75001:31)
        at Zone.runTask (webpack:///~/zone.js/dist/zone.js:192:0 <- karma.entry.js:74768:47)
        at drainMicroTaskQueue (webpack:///~/zone.js/dist/zone.js:602:0 <- karma.entry.js:75178:35)
        at <anonymous>
传递时:传递代码的npm列表

$npm list --depth=1
gen-test@0.0.1 /Users/430014695/Projects/temp/gen-test
├── @angular/animations@4.1.2
├─┬ @angular/cli@1.0.2
│ ├── @ngtools/json-schema@1.0.9
│ ├── @ngtools/webpack@1.3.1
│ ├── autoprefixer@6.7.7
│ ├── common-tags@1.4.0
│ ├── cssnano@3.10.0
│ ├── debug@2.2.0
│ ├── denodeify@1.2.1
│ ├── diff@3.4.0
│ ├── ember-cli-normalize-entity-name@1.0.0
│ ├── ember-cli-string-utils@1.1.0
│ ├── fs-extra@2.1.2
│ ├── get-caller-file@1.0.2
│ ├── glob@7.1.2
│ ├── inflection@1.12.0
│ ├── inquirer@3.3.0
│ ├── isbinaryfile@3.0.2
│ ├── json-loader@0.5.7
│ ├── less@2.7.3
│ ├── less-loader@4.0.5
│ ├── minimatch@3.0.4
│ ├── node-modules-path@1.0.1
│ ├── nopt@4.0.1
│ ├── opn@4.0.2
│ ├── portfinder@1.0.13
│ ├── postcss-loader@1.3.3
│ ├── postcss-url@5.1.2
│ ├── resolve@1.5.0
│ ├── rsvp@3.6.2
│ ├── script-loader@0.7.2
│ ├── semver@5.4.1
│ ├── silent-error@1.1.0
│ ├── source-map-loader@0.1.6
│ ├── style-loader@0.13.2
│ ├── stylus@0.54.5
│ ├── stylus-loader@3.0.1
│ ├── temp@0.8.3
│ ├── walk-sync@0.3.2
│ ├── webpack@2.2.1
│ └── webpack-merge@2.6.1
├── @angular/common@4.1.2
├── @angular/compiler@4.1.2
├─┬ @angular/compiler-cli@4.1.2
│ ├── @angular/tsc-wrapped@4.1.2
│ ├── minimist@1.2.0
│ └── reflect-metadata@0.1.10
├── @angular/core@4.1.2
├── @angular/forms@4.1.2
├── @angular/http@4.1.2
├── @angular/platform-browser@4.1.2
├── @angular/platform-browser-dynamic@4.1.2
├── @angular/router@4.1.2
├─┬ @ngtools/webpack@1.3.0
│ ├── enhanced-resolve@3.4.1
│ ├── loader-utils@1.1.0
│ ├── magic-string@0.19.1
│ └── source-map@0.5.7
├── @types/bluebird@3.0.37
├── @types/body-parser@1.16.3
├── @types/chai@3.5.1
├── @types/chalk@0.4.31
├── @types/compression@0.0.33
├── @types/cookie-parser@1.3.30
├── @types/core-js@0.9.34
├─┬ @types/express@4.0.35
│ ├── @types/express-serve-static-core@4.0.56
│ └── @types/serve-static@1.13.0
├── @types/jasmine@2.5.36
├── @types/lodash@4.14.38
├── @types/node@6.0.46
├─┬ @types/request@0.0.42
│ └── @types/form-data@2.2.0
├── @types/request-promise@4.1.33
├── @types/serve-favicon@2.2.28
├── angular-mocks@1.6.2
├─┬ angular2-template-loader@0.6.2
│ └── loader-utils@0.2.17
├─┬ awesome-typescript-loader@3.1.3
│ ├── colors@1.1.2
│ ├── lodash@4.17.4
│ ├── mkdirp@0.5.1
│ ├── object-assign@4.1.1
│ └── source-map-support@0.4.18
├── bluebird@3.4.6
├─┬ body-parser@1.15.2
│ ├── bytes@2.4.0
│ ├── content-type@1.0.4
│ ├── depd@1.1.1
│ ├── http-errors@1.5.1
│ ├── iconv-lite@0.4.13
│ ├── on-finished@2.3.0
│ ├── qs@6.2.0
│ ├── raw-body@2.1.7
│ └── type-is@1.6.15
├── bootstrap@3.3.7
├─┬ bootstrap-loader@2.0.0
│ ├── escape-regexp@0.0.1
│ ├── js-yaml@3.7.0
│ └── strip-json-comments@2.0.1
├── bootstrap-sass@3.3.7
├─┬ chalk@1.1.3
│ ├── ansi-styles@2.2.1
│ ├── escape-string-regexp@1.0.5
│ ├── has-ansi@2.0.0
│ ├── strip-ansi@3.0.1
│ └── supports-color@2.0.0
├─┬ concurrently@3.1.0
│ ├── bluebird@2.9.6
│ ├── chalk@0.5.1
│ ├── commander@2.6.0
│ ├── moment@2.19.1
│ ├── rx@2.3.24
│ ├── spawn-default-shell@1.1.0
│ └── tree-kill@1.2.0
├─┬ copy-webpack-plugin@4.0.1
│ ├── bluebird@2.11.0
│ ├── fs-extra@0.26.7
│ ├── glob@6.0.4
│ ├── is-glob@3.1.0
│ ├── loader-utils@0.2.17
│ └── node-dir@0.1.17
├─┬ copyfiles@1.2.0
│ ├── ltcdr@2.2.1
│ ├── noms@0.0.0
│ └── through2@2.0.3
├── core-js@2.4.1
├─┬ css-loader@0.27.3
│ ├── babel-code-frame@6.26.0
│ ├── css-selector-tokenizer@0.7.0
│ ├── lodash.camelcase@4.3.0
│ ├── postcss@5.2.18
│ ├── postcss-modules-extract-imports@1.1.0
│ ├── postcss-modules-local-by-default@1.2.0
│ ├── postcss-modules-scope@1.1.0
│ ├── postcss-modules-values@1.3.0
│ └── source-list-map@0.1.8
├─┬ exports-loader@0.6.3
│ ├── loader-utils@0.2.17
│ └── source-map@0.1.43
├── expose-loader@0.7.1
├─┬ extract-text-webpack-plugin@2.1.0
│ ├── ajv@4.11.8
│ ├── async@2.5.0
│ └── webpack-sources@0.1.5
├── file-loader@0.10.1
├─┬ gnw-node-app-properties@1.0.0
│ └── convict@3.0.0
├─┬ gnw-node-logger@1.0.2
│ └── bunyan@1.8.12
├─┬ gnw-node-platform@1.1.7
│ ├── body-parser@1.18.2
│ ├── compression@1.7.1
│ ├── cookie-parser@1.4.3
│ ├── express@4.16.2
│ ├── request-debug@0.2.0
│ ├── request-promise@4.2.2
│ └── serve-favicon@2.4.5
├── gnw-npm-scripts@1.0.1
├── gnw-ui-platform@1.2.12
├─┬ html-loader@0.4.5
│ ├── es6-templates@0.2.3
│ ├── fastparse@1.1.1
│ └── html-minifier@3.5.6
├─┬ html-webpack-plugin@2.24.0
│ ├── loader-utils@0.2.17
│ ├── pretty-error@2.1.1
│ └── toposort@1.0.6
├── inversify@4.2.0
├─┬ istanbul-instrumenter-loader@2.0.0
│ ├── convert-source-map@1.5.0
│ ├── istanbul-lib-instrument@1.9.1
│ └── loader-utils@0.2.17
├── jasmine-core@2.5.2
├── jasmine-spec-reporter@4.0.0
├─┬ jasmine-ts@0.1.3
│ ├── jasmine@2.8.0
│ ├── ts-node@2.1.2
│ ├── typescript@2.6.1
│ └── yargs@8.0.2
├── jquery@3.1.1
├─┬ karma@1.4.1
│ ├── chokidar@1.7.0
│ ├── combine-lists@1.0.1
│ ├── connect@3.6.5
│ ├── di@0.0.1
│ ├── dom-serialize@2.2.1
│ ├── expand-braces@0.1.2
│ ├── graceful-fs@4.1.11
│ ├── http-proxy@1.16.2
│ ├── lodash@3.10.1
│ ├── log4js@0.6.38
│ ├── mime@1.4.1
│ ├── optimist@0.6.1
│ ├── qjobs@1.1.5
│ ├── range-parser@1.2.0
│ ├── safe-buffer@5.1.1
│ ├── socket.io@1.7.2
│ ├── tmp@0.0.28
│ └── useragent@2.2.1
├─┬ karma-chrome-launcher@2.0.0
│ ├── fs-access@1.0.1
│ └── which@1.3.0
├── karma-clear-screen-reporter@1.0.0
├─┬ karma-coverage@1.1.1
│ ├── dateformat@1.0.12
│ ├── istanbul@0.4.5
│ └── lodash@3.10.1
├─┬ karma-coverage-istanbul-reporter@1.3.0
│ └── istanbul-api@1.2.1
├── karma-jasmine@1.1.0
├── karma-jasmine-html-reporter@0.2.2
├─┬ karma-phantomjs-launcher@1.0.4
│ └── phantomjs-prebuilt@2.1.15
├─┬ karma-remap-coverage@0.1.4
│ └── remap-istanbul@0.8.4
├── karma-source-map-support@1.2.0
├── karma-sourcemap-loader@0.3.7
├── karma-spec-reporter@0.0.31
├─┬ karma-typescript@3.0.2
│ ├── acorn@4.0.13
│ ├── amdefine@1.0.0
│ ├── assert@1.3.0
│ ├── base64-js@1.2.1
│ ├── browser-resolve@1.11.2
│ ├── browserify-zlib@0.1.4
│ ├── buffer@4.9.1
│ ├── console-browserify@1.1.0
│ ├── constants-browserify@1.0.0
│ ├── crypto-browserify@3.11.1
│ ├── domain-browser@1.1.7
│ ├── es6-promise@4.0.5
│ ├── events@1.1.1
│ ├── gulp-util@3.0.7
│ ├── https-browserify@0.0.1
│ ├── ieee754@1.1.8
│ ├── isarray@1.0.0
│ ├── lodash@4.17.4
│ ├── log4js@1.1.1
│ ├── os-browserify@0.1.2
│ ├── pad@1.2.1
│ ├── path-browserify@0.0.0
│ ├── process@0.11.10
│ ├── punycode@1.4.1
│ ├── querystring-es3@0.2.1
│ ├── readable-stream@2.3.3
│ ├── remap-istanbul@0.8.4
│ ├── stream-browserify@2.0.1
│ ├── stream-http@2.7.2
│ ├── string_decoder@0.10.31
│ ├── through2@2.0.1
│ ├── timers-browserify@1.4.2
│ ├── tmp@0.0.29
│ ├── tty-browserify@0.0.0
│ ├── url@0.11.0
│ ├── util@0.10.3
│ └── vm-browserify@0.0.4
├─┬ karma-webpack@2.0.3
│ ├── async@0.9.2
│ ├── loader-utils@0.2.17
│ ├── lodash@3.10.1
│ ├── source-map@0.1.43
│ └── webpack-dev-middleware@1.12.0
├─┬ less@2.7.1
│ ├── errno@0.1.4
│ ├── image-size@0.5.5
│ └── promise@7.3.1
├─┬ less-loader@2.2.3
│ └── loader-utils@0.2.17
├── lodash@4.16.6
├─┬ ng-annotate-loader@0.2.0
│ ├── loader-utils@0.2.17
│ ├── ng-annotate@1.2.1
│ └── normalize-path@2.1.1
├─┬ ngx-bootstrap@1.6.2
│ └── moment@2.18.1
├── ngx-cookie@1.0.0
├─┬ node-sass@4.5.2
│ ├── async-foreach@0.1.3
│ ├── cross-spawn@3.0.1
│ ├── gaze@1.1.2
│ ├── get-stdin@4.0.1
│ ├── in-publish@2.0.0
│ ├── lodash.assign@4.2.0
│ ├── lodash.clonedeep@4.5.0
│ ├── lodash.mergewith@4.6.0
│ ├── meow@3.7.0
│ ├── nan@2.7.0
│ ├── node-gyp@3.6.2
│ ├── npmlog@4.1.2
│ ├── sass-graph@2.2.4
│ └── stdout-stream@1.4.0
├─┬ nodemon@1.11.0
│ ├── es6-promise@3.3.1
│ ├── ignore-by-default@1.0.1
│ ├── lodash.defaults@3.1.2
│ ├── ps-tree@1.1.0
│ ├── touch@1.0.0
│ ├── undefsafe@0.0.3
│ └── update-notifier@0.5.0
├── null-loader@0.1.1
├─┬ nyc@10.2.0
│ ├── archy@1.0.0
│ ├── arrify@1.0.1
│ ├── caching-transform@1.0.1
│ ├── convert-source-map@1.4.0
│ ├── debug-log@1.0.1
│ ├── default-require-extensions@1.0.0
│ ├── find-cache-dir@0.1.1
│ ├── find-up@1.1.2
│ ├── foreground-child@1.5.6
│ ├── glob@7.1.1
│ ├── istanbul-lib-coverage@1.0.2
│ ├── istanbul-lib-hook@1.0.5
│ ├── istanbul-lib-instrument@1.7.0
│ ├── istanbul-lib-report@1.0.0
│ ├── istanbul-lib-source-maps@1.1.1
│ ├── istanbul-reports@1.0.2
│ ├── md5-hex@1.3.0
│ ├── merge-source-map@1.0.3
│ ├── micromatch@2.3.11
│ ├── mkdirp@0.5.1
│ ├── resolve-from@2.0.0
│ ├── rimraf@2.6.1
│ ├── signal-exit@3.0.2
│ ├── spawn-wrap@1.2.4
│ ├── test-exclude@4.0.3
│ ├── yargs@7.0.2
│ └── yargs-parser@4.2.1
├── raw-loader@0.5.1
├─┬ remap-istanbul@0.7.0
│ ├── amdefine@1.0.0
│ └── through2@2.0.1
├─┬ request@2.81.0
│ ├── aws-sign2@0.6.0
│ ├── aws4@1.6.0
│ ├── caseless@0.12.0
│ ├── combined-stream@1.0.5
│ ├── extend@3.0.1
│ ├── forever-agent@0.6.1
│ ├── form-data@2.1.4
│ ├── har-validator@4.2.1
│ ├── hawk@3.1.3
│ ├── http-signature@1.1.1
│ ├── is-typedarray@1.0.0
│ ├── isstream@0.1.2
│ ├── json-stringify-safe@5.0.1
│ ├── mime-types@2.1.17
│ ├── oauth-sign@0.8.2
│ ├── performance-now@0.2.0
│ ├── qs@6.4.0
│ ├── stringstream@0.0.5
│ ├── tough-cookie@2.3.3
│ ├── tunnel-agent@0.6.0
│ └── uuid@3.1.0
├─┬ request-promise@4.2.0
│ ├── bluebird@3.5.1
│ ├── request-promise-core@1.1.1
│ └── stealthy-require@1.1.1
├─┬ resolve-url-loader@2.0.2
│ ├── adjust-sourcemap-loader@1.1.0
│ ├── camelcase@4.1.0
│ ├── lodash.defaults@4.2.0
│ ├── rework@1.0.1
│ ├── rework-visit@1.0.0
│ └── urix@0.1.0
├── rimraf@2.5.4
├─┬ rxjs@5.1.0
│ └── symbol-observable@1.0.4
├─┬ sass-loader@6.0.3
│ ├── clone-deep@0.2.4
│ ├── lodash.tail@4.1.1
│ └── pify@2.3.0
├─┬ serve-favicon@2.3.0
│ ├── etag@1.7.0
│ ├── fresh@0.3.0
│ ├── ms@0.7.1
│ └── parseurl@1.3.2
├── style-loader@0.14.0
├─┬ to-string-loader@1.1.5
│ └── loader-utils@0.2.17
├── ts-loader@2.1.0
├─┬ ts-node@3.0.4
│ ├── arrify@1.0.1
│ ├── make-error@1.3.0
│ ├── tsconfig@6.0.0
│ ├── v8flags@2.1.1
│ └── yn@1.3.0
├─┬ tslint@4.5.1
│ ├── findup-sync@0.3.0
│ ├── optimist@0.6.1
│ ├── tsutils@1.9.1
│ └── update-notifier@2.3.0
├── tslint-loader@3.4.3
├── typescript@2.2.1
├─┬ url-loader@0.5.8
│ └── mime@1.3.6
├── web-animations-js@2.2.2
├─┬ webpack@2.3.2
│ ├── acorn-dynamic-import@2.0.2
│ ├── ajv-keywords@1.5.1
│ ├── interpret@1.0.4
│ ├── loader-runner@2.3.0
│ ├── loader-utils@0.2.17
│ ├── memory-fs@0.4.1
│ ├── node-libs-browser@2.0.0
│ ├── supports-color@3.2.3
│ ├── tapable@0.2.8
│ ├── uglify-js@2.8.29
│ ├── watchpack@1.4.0
│ ├── webpack-sources@0.2.3
│ └── yargs@6.6.0
├─┬ webpack-dev-server@2.4.2
│ ├── ansi-html@0.0.7
│ ├── connect-history-api-fallback@1.4.0
│ ├── html-entities@1.2.1
│ ├── http-proxy-middleware@0.17.4
│ ├── serve-index@1.9.1
│ ├── sockjs@0.3.18
│ ├── sockjs-client@1.1.2
│ ├── spdy@3.4.7
│ ├── supports-color@3.2.3
│ └── yargs@6.6.0
├─┬ webpack-merge@4.0.0
│ └── lodash@4.17.4
└── zone.js@0.8.12

嗯,这只是为了防止其他人面临这个问题。问题发生的原因是,在karma.config中,我使用APP_BASE_REF作为configureTestingModule的一部分

$npm list --depth=1
gen-test@0.0.1 /Users/430014695/Projects/temp/gen-test
├── @angular/animations@4.1.2
├─┬ @angular/cli@1.0.2
│ ├── @ngtools/json-schema@1.0.9
│ ├── @ngtools/webpack@1.3.1
│ ├── autoprefixer@6.7.7
│ ├── common-tags@1.4.0
│ ├── cssnano@3.10.0
│ ├── debug@2.2.0
│ ├── denodeify@1.2.1
│ ├── diff@3.4.0
│ ├── ember-cli-normalize-entity-name@1.0.0
│ ├── ember-cli-string-utils@1.1.0
│ ├── fs-extra@2.1.2
│ ├── get-caller-file@1.0.2
│ ├── glob@7.1.2
│ ├── inflection@1.12.0
│ ├── inquirer@3.3.0
│ ├── isbinaryfile@3.0.2
│ ├── json-loader@0.5.7
│ ├── less@2.7.3
│ ├── less-loader@4.0.5
│ ├── minimatch@3.0.4
│ ├── node-modules-path@1.0.1
│ ├── nopt@4.0.1
│ ├── opn@4.0.2
│ ├── portfinder@1.0.13
│ ├── postcss-loader@1.3.3
│ ├── postcss-url@5.1.2
│ ├── resolve@1.5.0
│ ├── rsvp@3.6.2
│ ├── script-loader@0.7.2
│ ├── semver@5.4.1
│ ├── silent-error@1.1.0
│ ├── source-map-loader@0.1.6
│ ├── style-loader@0.13.2
│ ├── stylus@0.54.5
│ ├── stylus-loader@3.0.1
│ ├── temp@0.8.3
│ ├── walk-sync@0.3.2
│ ├── webpack@2.2.1
│ └── webpack-merge@2.6.1
├── @angular/common@4.1.2
├── @angular/compiler@4.1.2
├─┬ @angular/compiler-cli@4.1.2
│ ├── @angular/tsc-wrapped@4.1.2
│ ├── minimist@1.2.0
│ └── reflect-metadata@0.1.10
├── @angular/core@4.1.2
├── @angular/forms@4.1.2
├── @angular/http@4.1.2
├── @angular/platform-browser@4.1.2
├── @angular/platform-browser-dynamic@4.1.2
├── @angular/router@4.1.2
├─┬ @ngtools/webpack@1.3.0
│ ├── enhanced-resolve@3.4.1
│ ├── loader-utils@1.1.0
│ ├── magic-string@0.19.1
│ └── source-map@0.5.7
├── @types/bluebird@3.0.37
├── @types/body-parser@1.16.3
├── @types/chai@3.5.1
├── @types/chalk@0.4.31
├── @types/compression@0.0.33
├── @types/cookie-parser@1.3.30
├── @types/core-js@0.9.34
├─┬ @types/express@4.0.35
│ ├── @types/express-serve-static-core@4.0.56
│ └── @types/serve-static@1.13.0
├── @types/jasmine@2.5.36
├── @types/lodash@4.14.38
├── @types/node@6.0.46
├─┬ @types/request@0.0.42
│ └── @types/form-data@2.2.0
├── @types/request-promise@4.1.33
├── @types/serve-favicon@2.2.28
├── angular-mocks@1.6.2
├─┬ angular2-template-loader@0.6.2
│ └── loader-utils@0.2.17
├─┬ awesome-typescript-loader@3.1.3
│ ├── colors@1.1.2
│ ├── lodash@4.17.4
│ ├── mkdirp@0.5.1
│ ├── object-assign@4.1.1
│ └── source-map-support@0.4.18
├── bluebird@3.4.6
├─┬ body-parser@1.15.2
│ ├── bytes@2.4.0
│ ├── content-type@1.0.4
│ ├── depd@1.1.1
│ ├── http-errors@1.5.1
│ ├── iconv-lite@0.4.13
│ ├── on-finished@2.3.0
│ ├── qs@6.2.0
│ ├── raw-body@2.1.7
│ └── type-is@1.6.15
├── bootstrap@3.3.7
├─┬ bootstrap-loader@2.0.0
│ ├── escape-regexp@0.0.1
│ ├── js-yaml@3.7.0
│ └── strip-json-comments@2.0.1
├── bootstrap-sass@3.3.7
├─┬ chalk@1.1.3
│ ├── ansi-styles@2.2.1
│ ├── escape-string-regexp@1.0.5
│ ├── has-ansi@2.0.0
│ ├── strip-ansi@3.0.1
│ └── supports-color@2.0.0
├─┬ concurrently@3.1.0
│ ├── bluebird@2.9.6
│ ├── chalk@0.5.1
│ ├── commander@2.6.0
│ ├── moment@2.19.1
│ ├── rx@2.3.24
│ ├── spawn-default-shell@1.1.0
│ └── tree-kill@1.2.0
├─┬ copy-webpack-plugin@4.0.1
│ ├── bluebird@2.11.0
│ ├── fs-extra@0.26.7
│ ├── glob@6.0.4
│ ├── is-glob@3.1.0
│ ├── loader-utils@0.2.17
│ └── node-dir@0.1.17
├─┬ copyfiles@1.2.0
│ ├── ltcdr@2.2.1
│ ├── noms@0.0.0
│ └── through2@2.0.3
├── core-js@2.4.1
├─┬ css-loader@0.27.3
│ ├── babel-code-frame@6.26.0
│ ├── css-selector-tokenizer@0.7.0
│ ├── lodash.camelcase@4.3.0
│ ├── postcss@5.2.18
│ ├── postcss-modules-extract-imports@1.1.0
│ ├── postcss-modules-local-by-default@1.2.0
│ ├── postcss-modules-scope@1.1.0
│ ├── postcss-modules-values@1.3.0
│ └── source-list-map@0.1.8
├─┬ exports-loader@0.6.3
│ ├── loader-utils@0.2.17
│ └── source-map@0.1.43
├── expose-loader@0.7.1
├─┬ extract-text-webpack-plugin@2.1.0
│ ├── ajv@4.11.8
│ ├── async@2.5.0
│ └── webpack-sources@0.1.5
├── file-loader@0.10.1
├─┬ gnw-node-app-properties@1.0.0
│ └── convict@3.0.0
├─┬ gnw-node-logger@1.0.2
│ └── bunyan@1.8.12
├─┬ gnw-node-platform@1.1.7
│ ├── body-parser@1.18.2
│ ├── compression@1.7.1
│ ├── cookie-parser@1.4.3
│ ├── express@4.16.2
│ ├── request-debug@0.2.0
│ ├── request-promise@4.2.2
│ └── serve-favicon@2.4.5
├── gnw-npm-scripts@1.0.1
├── gnw-ui-platform@1.2.12
├─┬ html-loader@0.4.5
│ ├── es6-templates@0.2.3
│ ├── fastparse@1.1.1
│ └── html-minifier@3.5.6
├─┬ html-webpack-plugin@2.24.0
│ ├── loader-utils@0.2.17
│ ├── pretty-error@2.1.1
│ └── toposort@1.0.6
├── inversify@4.2.0
├─┬ istanbul-instrumenter-loader@2.0.0
│ ├── convert-source-map@1.5.0
│ ├── istanbul-lib-instrument@1.9.1
│ └── loader-utils@0.2.17
├── jasmine-core@2.5.2
├── jasmine-spec-reporter@4.0.0
├─┬ jasmine-ts@0.1.3
│ ├── jasmine@2.8.0
│ ├── ts-node@2.1.2
│ ├── typescript@2.6.1
│ └── yargs@8.0.2
├── jquery@3.1.1
├─┬ karma@1.4.1
│ ├── chokidar@1.7.0
│ ├── combine-lists@1.0.1
│ ├── connect@3.6.5
│ ├── di@0.0.1
│ ├── dom-serialize@2.2.1
│ ├── expand-braces@0.1.2
│ ├── graceful-fs@4.1.11
│ ├── http-proxy@1.16.2
│ ├── lodash@3.10.1
│ ├── log4js@0.6.38
│ ├── mime@1.4.1
│ ├── optimist@0.6.1
│ ├── qjobs@1.1.5
│ ├── range-parser@1.2.0
│ ├── safe-buffer@5.1.1
│ ├── socket.io@1.7.2
│ ├── tmp@0.0.28
│ └── useragent@2.2.1
├─┬ karma-chrome-launcher@2.0.0
│ ├── fs-access@1.0.1
│ └── which@1.3.0
├── karma-clear-screen-reporter@1.0.0
├─┬ karma-coverage@1.1.1
│ ├── dateformat@1.0.12
│ ├── istanbul@0.4.5
│ └── lodash@3.10.1
├─┬ karma-coverage-istanbul-reporter@1.3.0
│ └── istanbul-api@1.2.1
├── karma-jasmine@1.1.0
├── karma-jasmine-html-reporter@0.2.2
├─┬ karma-phantomjs-launcher@1.0.4
│ └── phantomjs-prebuilt@2.1.15
├─┬ karma-remap-coverage@0.1.4
│ └── remap-istanbul@0.8.4
├── karma-source-map-support@1.2.0
├── karma-sourcemap-loader@0.3.7
├── karma-spec-reporter@0.0.31
├─┬ karma-typescript@3.0.2
│ ├── acorn@4.0.13
│ ├── amdefine@1.0.0
│ ├── assert@1.3.0
│ ├── base64-js@1.2.1
│ ├── browser-resolve@1.11.2
│ ├── browserify-zlib@0.1.4
│ ├── buffer@4.9.1
│ ├── console-browserify@1.1.0
│ ├── constants-browserify@1.0.0
│ ├── crypto-browserify@3.11.1
│ ├── domain-browser@1.1.7
│ ├── es6-promise@4.0.5
│ ├── events@1.1.1
│ ├── gulp-util@3.0.7
│ ├── https-browserify@0.0.1
│ ├── ieee754@1.1.8
│ ├── isarray@1.0.0
│ ├── lodash@4.17.4
│ ├── log4js@1.1.1
│ ├── os-browserify@0.1.2
│ ├── pad@1.2.1
│ ├── path-browserify@0.0.0
│ ├── process@0.11.10
│ ├── punycode@1.4.1
│ ├── querystring-es3@0.2.1
│ ├── readable-stream@2.3.3
│ ├── remap-istanbul@0.8.4
│ ├── stream-browserify@2.0.1
│ ├── stream-http@2.7.2
│ ├── string_decoder@0.10.31
│ ├── through2@2.0.1
│ ├── timers-browserify@1.4.2
│ ├── tmp@0.0.29
│ ├── tty-browserify@0.0.0
│ ├── url@0.11.0
│ ├── util@0.10.3
│ └── vm-browserify@0.0.4
├─┬ karma-webpack@2.0.3
│ ├── async@0.9.2
│ ├── loader-utils@0.2.17
│ ├── lodash@3.10.1
│ ├── source-map@0.1.43
│ └── webpack-dev-middleware@1.12.0
├─┬ less@2.7.1
│ ├── errno@0.1.4
│ ├── image-size@0.5.5
│ └── promise@7.3.1
├─┬ less-loader@2.2.3
│ └── loader-utils@0.2.17
├── lodash@4.16.6
├─┬ ng-annotate-loader@0.2.0
│ ├── loader-utils@0.2.17
│ ├── ng-annotate@1.2.1
│ └── normalize-path@2.1.1
├─┬ ngx-bootstrap@1.6.2
│ └── moment@2.18.1
├── ngx-cookie@1.0.0
├─┬ node-sass@4.5.2
│ ├── async-foreach@0.1.3
│ ├── cross-spawn@3.0.1
│ ├── gaze@1.1.2
│ ├── get-stdin@4.0.1
│ ├── in-publish@2.0.0
│ ├── lodash.assign@4.2.0
│ ├── lodash.clonedeep@4.5.0
│ ├── lodash.mergewith@4.6.0
│ ├── meow@3.7.0
│ ├── nan@2.7.0
│ ├── node-gyp@3.6.2
│ ├── npmlog@4.1.2
│ ├── sass-graph@2.2.4
│ └── stdout-stream@1.4.0
├─┬ nodemon@1.11.0
│ ├── es6-promise@3.3.1
│ ├── ignore-by-default@1.0.1
│ ├── lodash.defaults@3.1.2
│ ├── ps-tree@1.1.0
│ ├── touch@1.0.0
│ ├── undefsafe@0.0.3
│ └── update-notifier@0.5.0
├── null-loader@0.1.1
├─┬ nyc@10.2.0
│ ├── archy@1.0.0
│ ├── arrify@1.0.1
│ ├── caching-transform@1.0.1
│ ├── convert-source-map@1.4.0
│ ├── debug-log@1.0.1
│ ├── default-require-extensions@1.0.0
│ ├── find-cache-dir@0.1.1
│ ├── find-up@1.1.2
│ ├── foreground-child@1.5.6
│ ├── glob@7.1.1
│ ├── istanbul-lib-coverage@1.0.2
│ ├── istanbul-lib-hook@1.0.5
│ ├── istanbul-lib-instrument@1.7.0
│ ├── istanbul-lib-report@1.0.0
│ ├── istanbul-lib-source-maps@1.1.1
│ ├── istanbul-reports@1.0.2
│ ├── md5-hex@1.3.0
│ ├── merge-source-map@1.0.3
│ ├── micromatch@2.3.11
│ ├── mkdirp@0.5.1
│ ├── resolve-from@2.0.0
│ ├── rimraf@2.6.1
│ ├── signal-exit@3.0.2
│ ├── spawn-wrap@1.2.4
│ ├── test-exclude@4.0.3
│ ├── yargs@7.0.2
│ └── yargs-parser@4.2.1
├── raw-loader@0.5.1
├─┬ remap-istanbul@0.7.0
│ ├── amdefine@1.0.0
│ └── through2@2.0.1
├─┬ request@2.81.0
│ ├── aws-sign2@0.6.0
│ ├── aws4@1.6.0
│ ├── caseless@0.12.0
│ ├── combined-stream@1.0.5
│ ├── extend@3.0.1
│ ├── forever-agent@0.6.1
│ ├── form-data@2.1.4
│ ├── har-validator@4.2.1
│ ├── hawk@3.1.3
│ ├── http-signature@1.1.1
│ ├── is-typedarray@1.0.0
│ ├── isstream@0.1.2
│ ├── json-stringify-safe@5.0.1
│ ├── mime-types@2.1.17
│ ├── oauth-sign@0.8.2
│ ├── performance-now@0.2.0
│ ├── qs@6.4.0
│ ├── stringstream@0.0.5
│ ├── tough-cookie@2.3.3
│ ├── tunnel-agent@0.6.0
│ └── uuid@3.1.0
├─┬ request-promise@4.2.0
│ ├── bluebird@3.5.1
│ ├── request-promise-core@1.1.1
│ └── stealthy-require@1.1.1
├─┬ resolve-url-loader@2.0.2
│ ├── adjust-sourcemap-loader@1.1.0
│ ├── camelcase@4.1.0
│ ├── lodash.defaults@4.2.0
│ ├── rework@1.0.1
│ ├── rework-visit@1.0.0
│ └── urix@0.1.0
├── rimraf@2.5.4
├─┬ rxjs@5.1.0
│ └── symbol-observable@1.0.4
├─┬ sass-loader@6.0.3
│ ├── clone-deep@0.2.4
│ ├── lodash.tail@4.1.1
│ └── pify@2.3.0
├─┬ serve-favicon@2.3.0
│ ├── etag@1.7.0
│ ├── fresh@0.3.0
│ ├── ms@0.7.1
│ └── parseurl@1.3.2
├── style-loader@0.14.0
├─┬ to-string-loader@1.1.5
│ └── loader-utils@0.2.17
├── ts-loader@2.1.0
├─┬ ts-node@3.0.4
│ ├── arrify@1.0.1
│ ├── make-error@1.3.0
│ ├── tsconfig@6.0.0
│ ├── v8flags@2.1.1
│ └── yn@1.3.0
├─┬ tslint@4.5.1
│ ├── findup-sync@0.3.0
│ ├── optimist@0.6.1
│ ├── tsutils@1.9.1
│ └── update-notifier@2.3.0
├── tslint-loader@3.4.3
├── typescript@2.2.1
├─┬ url-loader@0.5.8
│ └── mime@1.3.6
├── web-animations-js@2.2.2
├─┬ webpack@2.3.2
│ ├── acorn-dynamic-import@2.0.2
│ ├── ajv-keywords@1.5.1
│ ├── interpret@1.0.4
│ ├── loader-runner@2.3.0
│ ├── loader-utils@0.2.17
│ ├── memory-fs@0.4.1
│ ├── node-libs-browser@2.0.0
│ ├── supports-color@3.2.3
│ ├── tapable@0.2.8
│ ├── uglify-js@2.8.29
│ ├── watchpack@1.4.0
│ ├── webpack-sources@0.2.3
│ └── yargs@6.6.0
├─┬ webpack-dev-server@2.4.2
│ ├── ansi-html@0.0.7
│ ├── connect-history-api-fallback@1.4.0
│ ├── html-entities@1.2.1
│ ├── http-proxy-middleware@0.17.4
│ ├── serve-index@1.9.1
│ ├── sockjs@0.3.18
│ ├── sockjs-client@1.1.2
│ ├── spdy@3.4.7
│ ├── supports-color@3.2.3
│ └── yargs@6.6.0
├─┬ webpack-merge@4.0.0
│ └── lodash@4.17.4
└── zone.js@0.8.12