mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bd58e129cf | |||
| e55bb7ba13 | |||
| ed73d4f3ac | |||
| 6ca46929fa | |||
| 185075d870 | |||
| 451257a2fd | |||
| 3d5f520ff0 | |||
| a1065bfaf0 | |||
| d6f345cc3c | |||
| d961911a98 | |||
| e543272eb3 | |||
| c8c0ceeee9 | |||
| afbc2b0082 | |||
| 69ec1e2e31 | |||
| ff15509bc7 | |||
| 7e22a2fc0b | |||
| 0a48c92d2c | |||
| 991ca92a9d | |||
| c550f885a4 | |||
| 851038c3a8 | |||
| df7774c018 |
@@ -10,7 +10,7 @@ filegroup(
|
||||
# Performance workaround: list individual files
|
||||
# This won't scale in the general case.
|
||||
# TODO(alexeagle): figure out what to do
|
||||
"node_modules/typescript/lib/**",
|
||||
"node_modules/typescript/**",
|
||||
"node_modules/zone.js/**/*.d.ts",
|
||||
"node_modules/rxjs/**/*.d.ts",
|
||||
"node_modules/@types/**/*.d.ts",
|
||||
|
||||
@@ -1,3 +1,16 @@
|
||||
<a name="4.2.2"></a>
|
||||
## [4.2.2](https://github.com/angular/angular/compare/4.2.1...4.2.2) (2017-06-12)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **animations:** compute removal node height correctly ([185075d](https://github.com/angular/angular/commit/185075d))
|
||||
* **animations:** do not treat a `0` animation state as `void` ([451257a](https://github.com/angular/angular/commit/451257a))
|
||||
* **animations:** properly collect :enter nodes in a partially updated collection ([6ca4692](https://github.com/angular/angular/commit/6ca4692)), closes [#17440](https://github.com/angular/angular/issues/17440)
|
||||
* **compiler:** don’t always compile `.ngfactory.ts` files by default ([ed73d4f](https://github.com/angular/angular/commit/ed73d4f3ac6b542bf5ea3eb73fbe91e2ceabcdb4))
|
||||
|
||||
|
||||
|
||||
<a name="4.2.1"></a>
|
||||
## [4.2.1](https://github.com/angular/angular/compare/4.2.0-rc.2...4.2.1) (2017-06-09)
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ import { Heroes } from './hero.service';
|
||||
animate('0.2s ease-in')
|
||||
]),
|
||||
transition('* => void', [
|
||||
animate('0.2s 10s ease-out', style({
|
||||
animate('0.2s 0.1s ease-out', style({
|
||||
opacity: 0,
|
||||
transform: 'translateX(100%)'
|
||||
}))
|
||||
|
||||
@@ -1,11 +1,6 @@
|
||||
// #docregion bootstrap
|
||||
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
|
||||
import { UpgradeModule } from '@angular/upgrade/static';
|
||||
|
||||
import { AppModule } from './app.module';
|
||||
|
||||
platformBrowserDynamic().bootstrapModule(AppModule).then(platformRef => {
|
||||
const upgrade = platformRef.injector.get(UpgradeModule) as UpgradeModule;
|
||||
upgrade.bootstrap(document.documentElement, ['phonecatApp']);
|
||||
});
|
||||
platformBrowserDynamic().bootstrapModule(AppModule);
|
||||
// #enddocregion bootstrap
|
||||
|
||||
@@ -7,12 +7,6 @@ import { browser, element, by } from 'protractor';
|
||||
|
||||
describe('PhoneCat Application', function() {
|
||||
|
||||
beforeAll(function () {
|
||||
// Set protractor to hybrid mode.
|
||||
browser.rootEl = 'body';
|
||||
browser.ng12Hybrid = true;
|
||||
});
|
||||
|
||||
it('should redirect `index.html` to `index.html#!/phones', function() {
|
||||
browser.get('index.html');
|
||||
expect(browser.getLocationAbsUrl()).toBe('/phones');
|
||||
@@ -70,7 +64,7 @@ describe('PhoneCat Application', function() {
|
||||
query.sendKeys('nexus');
|
||||
|
||||
element.all(by.css('.phones li a')).first().click();
|
||||
browser.sleep(200); // Not sure why this is needed but it is. The route change works fine.
|
||||
browser.sleep(1000); // Not sure why this is needed but it is. The route change works fine.
|
||||
expect(browser.getLocationAbsUrl()).toBe('/phones/nexus-s');
|
||||
});
|
||||
|
||||
|
||||
+22
-23
@@ -8,7 +8,7 @@
|
||||
"scripts": {
|
||||
"ng": "yarn check-env && ng",
|
||||
"start": "yarn check-env && ng serve",
|
||||
"build": "yarn check-env && yarn setup && ng build -prod -sm && yarn sw-manifest && yarn sw-copy",
|
||||
"build": "yarn check-env && yarn setup && ng build -prod -sm -vc=false && yarn sw-manifest && yarn sw-copy",
|
||||
"lint": "yarn check-env && yarn docs-lint && ng lint && yarn example-lint",
|
||||
"test": "yarn check-env && ng test",
|
||||
"pree2e": "yarn ~~update-webdriver",
|
||||
@@ -35,22 +35,22 @@
|
||||
"sw-manifest": "ngu-sw-manifest --dist dist --in ngsw-manifest.json --out dist/ngsw-manifest.json",
|
||||
"sw-copy": "cp node_modules/@angular/service-worker/bundles/worker-basic.min.js dist/",
|
||||
"postinstall": "node tools/cli-patches/patch.js",
|
||||
"build-ie-polyfills": "webpack -p src/ie-polyfills.js src/generated/ie-polyfills.min.js"
|
||||
"build-ie-polyfills": "node node_modules/webpack/bin/webpack.js -p src/ie-polyfills.js src/generated/ie-polyfills.min.js"
|
||||
},
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@angular/animations": "4.2.0",
|
||||
"@angular/common": "4.2.0",
|
||||
"@angular/compiler": "4.2.0",
|
||||
"@angular/core": "4.2.0",
|
||||
"@angular/forms": "4.2.0",
|
||||
"@angular/http": "4.2.0",
|
||||
"@angular/animations": "4.2.1",
|
||||
"@angular/common": "4.2.1",
|
||||
"@angular/compiler": "4.2.1",
|
||||
"@angular/core": "4.2.1",
|
||||
"@angular/forms": "4.2.1",
|
||||
"@angular/http": "4.2.1",
|
||||
"@angular/material": "^2.0.0-beta.3",
|
||||
"@angular/platform-browser": "4.2.0",
|
||||
"@angular/platform-browser-dynamic": "4.2.0",
|
||||
"@angular/platform-server": "4.2.0",
|
||||
"@angular/router": "4.2.0",
|
||||
"@angular/service-worker": "^1.0.0-beta.12",
|
||||
"@angular/platform-browser": "4.2.1",
|
||||
"@angular/platform-browser-dynamic": "4.2.1",
|
||||
"@angular/platform-server": "4.2.1",
|
||||
"@angular/router": "4.2.1",
|
||||
"@angular/service-worker": "^1.0.0-beta.15",
|
||||
"classlist.js": "^1.1.20150312",
|
||||
"core-js": "^2.4.1",
|
||||
"ng-pwa-tools": "^0.0.10",
|
||||
@@ -62,8 +62,8 @@
|
||||
"zone.js": "^0.8.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@angular/cli": "^1.1.0-rc.0",
|
||||
"@angular/compiler-cli": "4.2.0",
|
||||
"@angular/cli": "angular/cli-builds#webpack-next",
|
||||
"@angular/compiler-cli": "4.2.1",
|
||||
"@types/jasmine": "^2.5.47",
|
||||
"@types/node": "~6.0.60",
|
||||
"archiver": "^1.3.0",
|
||||
@@ -85,14 +85,14 @@
|
||||
"http-server": "^0.9.0",
|
||||
"ignore": "^3.3.3",
|
||||
"image-size": "^0.5.1",
|
||||
"jasmine-core": "~2.5.2",
|
||||
"jasmine-spec-reporter": "~3.2.0",
|
||||
"jasmine-core": "^2.6.3",
|
||||
"jasmine-spec-reporter": "^4.1.0",
|
||||
"jsdom": "^9.12.0",
|
||||
"karma": "~1.4.1",
|
||||
"karma-chrome-launcher": "~2.0.0",
|
||||
"karma-cli": "~1.0.1",
|
||||
"karma-coverage-istanbul-reporter": "^0.2.0",
|
||||
"karma-jasmine": "~1.1.0",
|
||||
"karma": "^1.7.0",
|
||||
"karma-chrome-launcher": "^2.1.1",
|
||||
"karma-cli": "^1.0.1",
|
||||
"karma-coverage-istanbul-reporter": "^1.3.0",
|
||||
"karma-jasmine": "^1.1.0",
|
||||
"karma-jasmine-html-reporter": "^0.2.2",
|
||||
"lighthouse": "^1.6.3",
|
||||
"lodash": "^4.17.4",
|
||||
@@ -113,7 +113,6 @@
|
||||
"unist-util-visit": "^1.1.1",
|
||||
"vrsource-tslint-rules": "^4.0.1",
|
||||
"watchr": "^3.0.1",
|
||||
"webpack": "^2.5.1",
|
||||
"yargs": "^7.0.2"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,9 +59,12 @@ describe('AppComponent', () => {
|
||||
|
||||
describe('with proper DocViewer', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
// For reasons unknown, not using `done` (even calling it synchronously),
|
||||
// causes Chrome (v58+) to often get disconnected (at least on Windows and Travis).
|
||||
beforeEach(done => {
|
||||
createTestingModule('a/b');
|
||||
initializeTest();
|
||||
done();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
aio-nav-menu {
|
||||
display: block;
|
||||
padding: 16px 0 0;
|
||||
margin: 0 auto;
|
||||
font-size: 13px;
|
||||
ul, a {
|
||||
@@ -18,6 +17,10 @@ aio-nav-menu {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
&:first-child {
|
||||
margin-top: 16px;
|
||||
}
|
||||
|
||||
aio-nav-item div a {
|
||||
padding-left: 16px;
|
||||
}
|
||||
|
||||
@@ -7,5 +7,6 @@ if (!fs.existsSync(PATCH_LOCK)) {
|
||||
sh.touch(PATCH_LOCK);
|
||||
sh.exec(`patch -p0 -i tools/cli-patches/ngo-loader.patch &&
|
||||
patch -p0 -i node_modules/purify/angular-cli.patch &&
|
||||
patch -p0 -i tools/cli-patches/scope-hoisting.patch &&
|
||||
patch -p0 -i tools/cli-patches/uglify-config.patch`);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
--- node_modules/@angular/cli/models/webpack-configs/production.js 2017-05-24 15:36:43.000000000 -0700
|
||||
+++ node_modules/@angular/cli/models/webpack-configs/production.js 2017-05-24 15:37:04.000000000 -0700
|
||||
@@ -85,6 +85,7 @@
|
||||
'NODE_ENV': 'production'
|
||||
}),
|
||||
new webpack.HashedModuleIdsPlugin(),
|
||||
+ new webpack.optimize.ModuleConcatenationPlugin(),
|
||||
new (require("purify/purify-webpack-plugin"))(),
|
||||
new webpack.optimize.UglifyJsPlugin({
|
||||
mangle: true,
|
||||
@@ -1,11 +1,11 @@
|
||||
--- node_modules/@angular/cli/models/webpack-configs/production.js 2017-05-24 15:36:43.000000000 -0700
|
||||
+++ node_modules/@angular/cli/models/webpack-configs/production.js 2017-05-24 15:37:04.000000000 -0700
|
||||
@@ -81,7 +81,7 @@
|
||||
@@ -82,7 +82,7 @@
|
||||
new (require("purify/purify-webpack-plugin"))(),
|
||||
new webpack.optimize.UglifyJsPlugin({
|
||||
mangle: { screw_ie8: true },
|
||||
- compress: { screw_ie8: true, warnings: buildOptions.verbose },
|
||||
+ compress: { screw_ie8: true, warnings: buildOptions.verbose, pure_getters: true },
|
||||
sourceMap: buildOptions.sourcemaps
|
||||
sourceMap: buildOptions.sourcemaps,
|
||||
comments: false
|
||||
})
|
||||
].concat(extraPlugins)
|
||||
|
||||
+207
-193
@@ -2,18 +2,18 @@
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@angular/animations@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-4.2.0.tgz#e964fc56c9621f28679f24d5e69026e2d1571425"
|
||||
"@angular/animations@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-4.2.1.tgz#4c8788192f14c74eb02a0fc8dc387177abb1ff24"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/cli@^1.1.0-rc.0":
|
||||
version "1.1.0-rc.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-1.1.0-rc.0.tgz#126232fc9f5b3e1b170c0c04e27d2171a0497853"
|
||||
"@angular/cli@angular/cli-builds#webpack-next":
|
||||
version "1.2.0-beta.0-7c33dd4"
|
||||
resolved "https://codeload.github.com/angular/cli-builds/tar.gz/b4bb5968c04c92fd816c434044e28bbfc60b296c"
|
||||
dependencies:
|
||||
"@ngtools/json-schema" "1.1.0-beta.0"
|
||||
"@ngtools/webpack" "1.3.1"
|
||||
"@ngtools/json-schema" "1.1.0"
|
||||
"@ngtools/webpack" "https://github.com/angular/ngtools-webpack-builds.git#7c33dd4"
|
||||
autoprefixer "^6.5.3"
|
||||
chalk "^1.1.3"
|
||||
common-tags "^1.3.1"
|
||||
@@ -38,7 +38,9 @@
|
||||
json-loader "^0.5.4"
|
||||
less "^2.7.2"
|
||||
less-loader "^4.0.2"
|
||||
license-webpack-plugin "^0.4.2"
|
||||
lodash "^4.11.1"
|
||||
memory-fs "^0.4.1"
|
||||
minimatch "^3.0.3"
|
||||
node-modules-path "^1.0.0"
|
||||
nopt "^4.0.1"
|
||||
@@ -63,7 +65,7 @@
|
||||
typescript ">=2.0.0 <2.4.0"
|
||||
url-loader "^0.5.7"
|
||||
walk-sync "^0.3.1"
|
||||
webpack "~2.4.0"
|
||||
webpack "3.0.0-rc.1"
|
||||
webpack-dev-middleware "^1.10.2"
|
||||
webpack-dev-server "~2.4.5"
|
||||
webpack-merge "^2.4.0"
|
||||
@@ -71,41 +73,41 @@
|
||||
optionalDependencies:
|
||||
node-sass "^4.3.0"
|
||||
|
||||
"@angular/common@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/common/-/common-4.2.0.tgz#5df34718bcefc49918bfcb2683f6c19720b66a61"
|
||||
"@angular/common@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/common/-/common-4.2.1.tgz#cb334e3b71f4d3e9f34b7ad942c548d3f936dfc8"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/compiler-cli@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-4.2.0.tgz#bd6f6b71f003df48a8f86184a8c16533afdf23ec"
|
||||
"@angular/compiler-cli@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-4.2.1.tgz#961d9a89ad3c9a8c42172a9c38114d34f90e507d"
|
||||
dependencies:
|
||||
"@angular/tsc-wrapped" "4.2.0"
|
||||
"@angular/tsc-wrapped" "4.2.1"
|
||||
minimist "^1.2.0"
|
||||
reflect-metadata "^0.1.2"
|
||||
|
||||
"@angular/compiler@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-4.2.0.tgz#a21df81995b210f822ffd70b57247d474876fbed"
|
||||
"@angular/compiler@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-4.2.1.tgz#8d77b458e04b887947d85adccd7546e4a987d4b0"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/core@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/core/-/core-4.2.0.tgz#8bf57d01379c2a9e29476ad569dec9e20d5b17dc"
|
||||
"@angular/core@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/core/-/core-4.2.1.tgz#0865304b3df43046919b646f02fdeda85a0c4685"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/forms@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-4.2.0.tgz#cb3ae69172e254452fa77578605ebc1bb72138c9"
|
||||
"@angular/forms@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-4.2.1.tgz#ad172cfd3070743b2a7a8161d2c75ac7f5b61f62"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/http@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/http/-/http-4.2.0.tgz#484af53639e04a68834c5167a1955d2d0cde8e1c"
|
||||
"@angular/http@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/http/-/http-4.2.1.tgz#d9e6e348c8753d318c761d7f4b4d9f05fec40ef9"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
@@ -113,52 +115,52 @@
|
||||
version "2.0.0-beta.4"
|
||||
resolved "https://registry.yarnpkg.com/@angular/material/-/material-2.0.0-beta.4.tgz#137ef759867213308613172c54dfe69061a10829"
|
||||
|
||||
"@angular/platform-browser-dynamic@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.2.0.tgz#b84c05616bd824e15b52b2b85c47b58b25d0158a"
|
||||
"@angular/platform-browser-dynamic@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.2.1.tgz#0832d21ba3481d91f4056c6a95429f9fcf76524c"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/platform-browser@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-4.2.0.tgz#dfd782e7ebacba1bbe2ae0556d5d7fb012f2a6cd"
|
||||
"@angular/platform-browser@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-4.2.1.tgz#1f01d4d31fa390211826266cf6e3a3f629860f1d"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/platform-server@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/platform-server/-/platform-server-4.2.0.tgz#90add7fcd9c4f568a31058c9d93a9aca09eb4c58"
|
||||
"@angular/platform-server@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/platform-server/-/platform-server-4.2.1.tgz#5452dc71b98ce8a63d85bb89b47b4dc65e173e84"
|
||||
dependencies:
|
||||
parse5 "^3.0.1"
|
||||
tslib "^1.7.1"
|
||||
xhr2 "^0.1.4"
|
||||
|
||||
"@angular/router@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/router/-/router-4.2.0.tgz#7cda9a23621ee41b466eced8bb4cbb62237ba6b9"
|
||||
"@angular/router@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/router/-/router-4.2.1.tgz#b64a0d87e5cd022f3d3c52ec8b7bab90b2e3f198"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
"@angular/service-worker@^1.0.0-beta.12":
|
||||
version "1.0.0-beta.13"
|
||||
resolved "https://registry.yarnpkg.com/@angular/service-worker/-/service-worker-1.0.0-beta.13.tgz#fa9383d3cc06d32eabd0fcd2c78a9ea1fe8824da"
|
||||
"@angular/service-worker@^1.0.0-beta.15":
|
||||
version "1.0.0-beta.15"
|
||||
resolved "https://registry.yarnpkg.com/@angular/service-worker/-/service-worker-1.0.0-beta.15.tgz#222fab4570ba1e77c56b54181aa55d26d4f60cc9"
|
||||
dependencies:
|
||||
base64-js "^1.1.2"
|
||||
jshashes "^1.0.5"
|
||||
|
||||
"@angular/tsc-wrapped@4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-4.2.0.tgz#e62ce9953c27ba96e4c6daf117f10e31169ccea2"
|
||||
"@angular/tsc-wrapped@4.2.1":
|
||||
version "4.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-4.2.1.tgz#a28a369b434c3819d55d1ca27d2353057a79c979"
|
||||
dependencies:
|
||||
tsickle "^0.21.0"
|
||||
|
||||
"@ngtools/json-schema@1.1.0-beta.0":
|
||||
version "1.1.0-beta.0"
|
||||
resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.1.0-beta.0.tgz#6e1e91f26fc46bd5afc8671501560c94e5fc7c4d"
|
||||
"@ngtools/json-schema@1.1.0":
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.1.0.tgz#c3a0c544d62392acc2813a42c8a0dc6f58f86922"
|
||||
|
||||
"@ngtools/webpack@1.3.1":
|
||||
version "1.3.1"
|
||||
resolved "https://registry.yarnpkg.com/@ngtools/webpack/-/webpack-1.3.1.tgz#12149b6b9cb3bf858f4b2ae9650456e17674d2eb"
|
||||
"@ngtools/webpack@https://github.com/angular/ngtools-webpack-builds.git#7c33dd4":
|
||||
version "1.4.0-7c33dd4"
|
||||
resolved "https://github.com/angular/ngtools-webpack-builds.git#7c33dd4"
|
||||
dependencies:
|
||||
enhanced-resolve "^3.1.0"
|
||||
loader-utils "^1.0.2"
|
||||
@@ -258,10 +260,14 @@ agent-base@2:
|
||||
extend "~3.0.0"
|
||||
semver "~5.0.1"
|
||||
|
||||
ajv-keywords@^1.0.0, ajv-keywords@^1.1.1:
|
||||
ajv-keywords@^1.0.0:
|
||||
version "1.5.1"
|
||||
resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c"
|
||||
|
||||
ajv-keywords@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.0.tgz#a296e17f7bfae7c1ce4f7e0de53d29cb32162df0"
|
||||
|
||||
ajv@^4.11.2, ajv@^4.7.0, ajv@^4.9.1:
|
||||
version "4.11.8"
|
||||
resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536"
|
||||
@@ -269,6 +275,13 @@ ajv@^4.11.2, ajv@^4.7.0, ajv@^4.9.1:
|
||||
co "^4.6.0"
|
||||
json-stable-stringify "^1.0.1"
|
||||
|
||||
ajv@^5.1.5:
|
||||
version "5.1.5"
|
||||
resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.1.5.tgz#8734931b601f00d4feef7c65738d77d1b65d1f68"
|
||||
dependencies:
|
||||
co "^4.6.0"
|
||||
json-stable-stringify "^1.0.1"
|
||||
|
||||
align-text@^0.1.1, align-text@^0.1.3:
|
||||
version "0.1.4"
|
||||
resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117"
|
||||
@@ -732,20 +745,20 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0:
|
||||
version "4.11.6"
|
||||
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215"
|
||||
|
||||
body-parser@^1.12.4:
|
||||
version "1.17.1"
|
||||
resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.17.1.tgz#75b3bc98ddd6e7e0d8ffe750dfaca5c66993fa47"
|
||||
body-parser@^1.16.1:
|
||||
version "1.17.2"
|
||||
resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.17.2.tgz#f8892abc8f9e627d42aedafbca66bf5ab99104ee"
|
||||
dependencies:
|
||||
bytes "2.4.0"
|
||||
content-type "~1.0.2"
|
||||
debug "2.6.1"
|
||||
debug "2.6.7"
|
||||
depd "~1.1.0"
|
||||
http-errors "~1.6.1"
|
||||
iconv-lite "0.4.15"
|
||||
on-finished "~2.3.0"
|
||||
qs "6.4.0"
|
||||
raw-body "~2.2.0"
|
||||
type-is "~1.6.14"
|
||||
type-is "~1.6.15"
|
||||
|
||||
boolbase@~1.0.0:
|
||||
version "1.0.0"
|
||||
@@ -1419,7 +1432,7 @@ connect-query@^0.2.0:
|
||||
dependencies:
|
||||
qs "~1.1.0"
|
||||
|
||||
connect@^3.3.3, connect@^3.3.5:
|
||||
connect@^3.3.3, connect@^3.6.0:
|
||||
version "3.6.1"
|
||||
resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.1.tgz#b7760693a74f0454face1d9378edb3f885b43227"
|
||||
dependencies:
|
||||
@@ -1771,12 +1784,18 @@ date-now@^0.1.4:
|
||||
version "0.1.4"
|
||||
resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
|
||||
|
||||
debug@*, debug@2, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.6.3:
|
||||
debug@*, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0:
|
||||
version "2.6.6"
|
||||
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.6.tgz#a9fa6fbe9ca43cf1e79f73b75c0189cbb7d6db5a"
|
||||
dependencies:
|
||||
ms "0.7.3"
|
||||
|
||||
debug@2, debug@2.6.7, debug@^2.6.3:
|
||||
version "2.6.7"
|
||||
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.7.tgz#92bad1f6d05bbb6bba22cca88bcd0ec894c2861e"
|
||||
dependencies:
|
||||
ms "2.0.0"
|
||||
|
||||
debug@2.2.0, debug@~2.2.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
|
||||
@@ -2142,9 +2161,9 @@ end-of-stream@^1.0.0:
|
||||
dependencies:
|
||||
once "^1.4.0"
|
||||
|
||||
engine.io-client@1.8.2:
|
||||
version "1.8.2"
|
||||
resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-1.8.2.tgz#c38767547f2a7d184f5752f6f0ad501006703766"
|
||||
engine.io-client@1.8.3:
|
||||
version "1.8.3"
|
||||
resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-1.8.3.tgz#1798ed93451246453d4c6f635d7a201fe940d5ab"
|
||||
dependencies:
|
||||
component-emitter "1.2.1"
|
||||
component-inherit "0.0.3"
|
||||
@@ -2155,7 +2174,7 @@ engine.io-client@1.8.2:
|
||||
parsejson "0.0.3"
|
||||
parseqs "0.0.5"
|
||||
parseuri "0.0.5"
|
||||
ws "1.1.1"
|
||||
ws "1.1.2"
|
||||
xmlhttprequest-ssl "1.5.3"
|
||||
yeast "0.1.2"
|
||||
|
||||
@@ -2170,16 +2189,16 @@ engine.io-parser@1.3.2:
|
||||
has-binary "0.1.7"
|
||||
wtf-8 "1.0.0"
|
||||
|
||||
engine.io@1.8.2:
|
||||
version "1.8.2"
|
||||
resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-1.8.2.tgz#6b59be730b348c0125b0a4589de1c355abcf7a7e"
|
||||
engine.io@1.8.3:
|
||||
version "1.8.3"
|
||||
resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-1.8.3.tgz#8de7f97895d20d39b85f88eeee777b2bd42b13d4"
|
||||
dependencies:
|
||||
accepts "1.3.3"
|
||||
base64id "1.0.0"
|
||||
cookie "0.3.1"
|
||||
debug "2.3.3"
|
||||
engine.io-parser "1.3.2"
|
||||
ws "1.1.1"
|
||||
ws "1.1.2"
|
||||
|
||||
enhanced-resolve@^3.0.0, enhanced-resolve@^3.1.0:
|
||||
version "3.1.0"
|
||||
@@ -3769,18 +3788,18 @@ isstream@0.1.x, isstream@~0.1.2:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
|
||||
|
||||
istanbul-api@^1.1.1:
|
||||
version "1.1.8"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.1.8.tgz#a844e55c6f9aeee292e7f42942196f60b23dc93e"
|
||||
istanbul-api@^1.1.8:
|
||||
version "1.1.9"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.1.9.tgz#2827920d380d4286d857d57a2968a841db8a7ec8"
|
||||
dependencies:
|
||||
async "^2.1.4"
|
||||
fileset "^2.0.2"
|
||||
istanbul-lib-coverage "^1.1.0"
|
||||
istanbul-lib-hook "^1.0.6"
|
||||
istanbul-lib-instrument "^1.7.1"
|
||||
istanbul-lib-report "^1.1.0"
|
||||
istanbul-lib-source-maps "^1.2.0"
|
||||
istanbul-reports "^1.1.0"
|
||||
istanbul-lib-coverage "^1.1.1"
|
||||
istanbul-lib-hook "^1.0.7"
|
||||
istanbul-lib-instrument "^1.7.2"
|
||||
istanbul-lib-report "^1.1.1"
|
||||
istanbul-lib-source-maps "^1.2.1"
|
||||
istanbul-reports "^1.1.1"
|
||||
js-yaml "^3.7.0"
|
||||
mkdirp "^0.5.1"
|
||||
once "^1.4.0"
|
||||
@@ -3794,17 +3813,17 @@ istanbul-instrumenter-loader@^2.0.0:
|
||||
loader-utils "^0.2.16"
|
||||
object-assign "^4.1.0"
|
||||
|
||||
istanbul-lib-coverage@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.0.tgz#caca19decaef3525b5d6331d701f3f3b7ad48528"
|
||||
istanbul-lib-coverage@^1.1.0, istanbul-lib-coverage@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da"
|
||||
|
||||
istanbul-lib-hook@^1.0.6:
|
||||
version "1.0.6"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.0.6.tgz#c0866d1e81cf2d5319249510131fc16dee49231f"
|
||||
istanbul-lib-hook@^1.0.7:
|
||||
version "1.0.7"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.0.7.tgz#dd6607f03076578fe7d6f2a630cf143b49bacddc"
|
||||
dependencies:
|
||||
append-transform "^0.4.0"
|
||||
|
||||
istanbul-lib-instrument@^1.1.3, istanbul-lib-instrument@^1.7.1:
|
||||
istanbul-lib-instrument@^1.1.3:
|
||||
version "1.7.1"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.1.tgz#169e31bc62c778851a99439dd99c3cc12184d360"
|
||||
dependencies:
|
||||
@@ -3816,42 +3835,54 @@ istanbul-lib-instrument@^1.1.3, istanbul-lib-instrument@^1.7.1:
|
||||
istanbul-lib-coverage "^1.1.0"
|
||||
semver "^5.3.0"
|
||||
|
||||
istanbul-lib-report@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.0.tgz#444c4ecca9afa93cf584f56b10f195bf768c0770"
|
||||
istanbul-lib-instrument@^1.7.2:
|
||||
version "1.7.2"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.7.2.tgz#6014b03d3470fb77638d5802508c255c06312e56"
|
||||
dependencies:
|
||||
istanbul-lib-coverage "^1.1.0"
|
||||
babel-generator "^6.18.0"
|
||||
babel-template "^6.16.0"
|
||||
babel-traverse "^6.18.0"
|
||||
babel-types "^6.18.0"
|
||||
babylon "^6.13.0"
|
||||
istanbul-lib-coverage "^1.1.1"
|
||||
semver "^5.3.0"
|
||||
|
||||
istanbul-lib-report@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz#f0e55f56655ffa34222080b7a0cd4760e1405fc9"
|
||||
dependencies:
|
||||
istanbul-lib-coverage "^1.1.1"
|
||||
mkdirp "^0.5.1"
|
||||
path-parse "^1.0.5"
|
||||
supports-color "^3.1.2"
|
||||
|
||||
istanbul-lib-source-maps@^1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.0.tgz#8c7706d497e26feeb6af3e0c28fd5b0669598d0e"
|
||||
istanbul-lib-source-maps@^1.2.1:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.1.tgz#a6fe1acba8ce08eebc638e572e294d267008aa0c"
|
||||
dependencies:
|
||||
debug "^2.6.3"
|
||||
istanbul-lib-coverage "^1.1.0"
|
||||
istanbul-lib-coverage "^1.1.1"
|
||||
mkdirp "^0.5.1"
|
||||
rimraf "^2.6.1"
|
||||
source-map "^0.5.3"
|
||||
|
||||
istanbul-reports@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.0.tgz#1ef3b795889219cfb5fad16365f6ce108d5f8c66"
|
||||
istanbul-reports@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.1.tgz#042be5c89e175bc3f86523caab29c014e77fee4e"
|
||||
dependencies:
|
||||
handlebars "^4.0.3"
|
||||
|
||||
jasmine-core@~2.5.2:
|
||||
version "2.5.2"
|
||||
resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.5.2.tgz#6f61bd79061e27f43e6f9355e44b3c6cab6ff297"
|
||||
jasmine-core@^2.6.3:
|
||||
version "2.6.3"
|
||||
resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.6.3.tgz#45072950e4a42b1e322fe55c001100a465d77815"
|
||||
|
||||
jasmine-core@~2.6.0:
|
||||
version "2.6.1"
|
||||
resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.6.1.tgz#66a61cddb699958e3613edef346c996f6311fc3b"
|
||||
|
||||
jasmine-spec-reporter@~3.2.0:
|
||||
version "3.2.0"
|
||||
resolved "https://registry.yarnpkg.com/jasmine-spec-reporter/-/jasmine-spec-reporter-3.2.0.tgz#fdbe85a80ccdd3b276746bc77fde83c1ce773eff"
|
||||
jasmine-spec-reporter@^4.1.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.yarnpkg.com/jasmine-spec-reporter/-/jasmine-spec-reporter-4.1.0.tgz#b8aa7584df58e4dab61acdbefb76d096aa38663f"
|
||||
dependencies:
|
||||
colors "1.1.2"
|
||||
|
||||
@@ -4039,24 +4070,25 @@ jws@^3.0.0:
|
||||
jwa "^1.1.4"
|
||||
safe-buffer "^5.0.1"
|
||||
|
||||
karma-chrome-launcher@~2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/karma-chrome-launcher/-/karma-chrome-launcher-2.0.0.tgz#c2790c5a32b15577d0fff5a4d5a2703b3b439c25"
|
||||
karma-chrome-launcher@^2.1.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/karma-chrome-launcher/-/karma-chrome-launcher-2.1.1.tgz#216879c68ac04d8d5140e99619ba04b59afd46cf"
|
||||
dependencies:
|
||||
fs-access "^1.0.0"
|
||||
which "^1.2.1"
|
||||
|
||||
karma-cli@~1.0.1:
|
||||
karma-cli@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/karma-cli/-/karma-cli-1.0.1.tgz#ae6c3c58a313a1d00b45164c455b9b86ce17f960"
|
||||
dependencies:
|
||||
resolve "^1.1.6"
|
||||
|
||||
karma-coverage-istanbul-reporter@^0.2.0:
|
||||
version "0.2.3"
|
||||
resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-0.2.3.tgz#11f1be9cfa93755a77bac39ab16e315a7100b5c5"
|
||||
karma-coverage-istanbul-reporter@^1.3.0:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-1.3.0.tgz#d142cd9c55731c9e363ef7374e8ef1a31bebfadb"
|
||||
dependencies:
|
||||
istanbul-api "^1.1.1"
|
||||
istanbul-api "^1.1.8"
|
||||
minimatch "^3.0.4"
|
||||
|
||||
karma-jasmine-html-reporter@^0.2.2:
|
||||
version "0.2.2"
|
||||
@@ -4064,20 +4096,20 @@ karma-jasmine-html-reporter@^0.2.2:
|
||||
dependencies:
|
||||
karma-jasmine "^1.0.2"
|
||||
|
||||
karma-jasmine@^1.0.2, karma-jasmine@~1.1.0:
|
||||
karma-jasmine@^1.0.2, karma-jasmine@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/karma-jasmine/-/karma-jasmine-1.1.0.tgz#22e4c06bf9a182e5294d1f705e3733811b810acf"
|
||||
|
||||
karma@~1.4.1:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.yarnpkg.com/karma/-/karma-1.4.1.tgz#41981a71d54237606b0a3ea8c58c90773f41650e"
|
||||
karma@^1.7.0:
|
||||
version "1.7.0"
|
||||
resolved "https://registry.yarnpkg.com/karma/-/karma-1.7.0.tgz#6f7a1a406446fa2e187ec95398698f4cee476269"
|
||||
dependencies:
|
||||
bluebird "^3.3.0"
|
||||
body-parser "^1.12.4"
|
||||
body-parser "^1.16.1"
|
||||
chokidar "^1.4.1"
|
||||
colors "^1.1.0"
|
||||
combine-lists "^1.0.0"
|
||||
connect "^3.3.5"
|
||||
connect "^3.6.0"
|
||||
core-js "^2.2.0"
|
||||
di "^0.0.1"
|
||||
dom-serialize "^2.2.0"
|
||||
@@ -4089,16 +4121,16 @@ karma@~1.4.1:
|
||||
lodash "^3.8.0"
|
||||
log4js "^0.6.31"
|
||||
mime "^1.3.4"
|
||||
minimatch "^3.0.0"
|
||||
minimatch "^3.0.2"
|
||||
optimist "^0.6.1"
|
||||
qjobs "^1.1.4"
|
||||
range-parser "^1.2.0"
|
||||
rimraf "^2.3.3"
|
||||
rimraf "^2.6.0"
|
||||
safe-buffer "^5.0.1"
|
||||
socket.io "1.7.2"
|
||||
socket.io "1.7.3"
|
||||
source-map "^0.5.3"
|
||||
tmp "0.0.28"
|
||||
useragent "^2.1.10"
|
||||
tmp "0.0.31"
|
||||
useragent "^2.1.12"
|
||||
|
||||
kebab-case@^1.0.0:
|
||||
version "1.0.0"
|
||||
@@ -4202,6 +4234,12 @@ levn@^0.3.0, levn@~0.3.0:
|
||||
prelude-ls "~1.1.2"
|
||||
type-check "~0.3.2"
|
||||
|
||||
license-webpack-plugin@^0.4.2:
|
||||
version "0.4.3"
|
||||
resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-0.4.3.tgz#f9d88d4ebc04407a0061e8ccac26571f88e51a16"
|
||||
dependencies:
|
||||
object-assign "^4.1.0"
|
||||
|
||||
lighthouse@^1.6.3:
|
||||
version "1.6.5"
|
||||
resolved "https://registry.yarnpkg.com/lighthouse/-/lighthouse-1.6.5.tgz#7e06a7025c8be298b6f912dbc2f15def1d4b6531"
|
||||
@@ -4480,7 +4518,7 @@ media-typer@0.3.0:
|
||||
version "0.3.0"
|
||||
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
|
||||
|
||||
memory-fs@^0.4.0, memory-fs@~0.4.1:
|
||||
memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1:
|
||||
version "0.4.1"
|
||||
resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
|
||||
dependencies:
|
||||
@@ -4569,7 +4607,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
|
||||
|
||||
"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@~3.0.2:
|
||||
"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2:
|
||||
version "3.0.4"
|
||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
|
||||
dependencies:
|
||||
@@ -4628,6 +4666,10 @@ ms@0.7.3, ms@^0.7.1:
|
||||
version "0.7.3"
|
||||
resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.3.tgz#708155a5e44e33f5fd0fc53e81d0d40a91be1fff"
|
||||
|
||||
ms@2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
|
||||
|
||||
mute-stream@0.0.5:
|
||||
version "0.0.5"
|
||||
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0"
|
||||
@@ -5626,8 +5668,8 @@ punycode@^1.2.4, punycode@^1.3.2, punycode@^1.4.1:
|
||||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
|
||||
|
||||
purify@igorminar/purify:
|
||||
version "0.0.23"
|
||||
resolved "https://codeload.github.com/igorminar/purify/tar.gz/98a5c8f39e3dc2954bf87062b5d91c5e4576a26e"
|
||||
version "0.0.25"
|
||||
resolved "https://codeload.github.com/igorminar/purify/tar.gz/1b4f00d9c29efad03acc10a69ce280bdf59fc9cb"
|
||||
dependencies:
|
||||
tslib "^1.7.1"
|
||||
|
||||
@@ -6087,7 +6129,7 @@ right-align@^0.1.1:
|
||||
dependencies:
|
||||
align-text "^0.1.1"
|
||||
|
||||
rimraf@2, rimraf@^2.2.8, rimraf@^2.3.3, rimraf@^2.5.1, rimraf@^2.5.2, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.1:
|
||||
rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.2, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.0, rimraf@^2.6.1:
|
||||
version "2.6.1"
|
||||
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d"
|
||||
dependencies:
|
||||
@@ -6415,15 +6457,15 @@ socket.io-adapter@0.5.0:
|
||||
debug "2.3.3"
|
||||
socket.io-parser "2.3.1"
|
||||
|
||||
socket.io-client@1.7.2:
|
||||
version "1.7.2"
|
||||
resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-1.7.2.tgz#39fdb0c3dd450e321b7e40cfd83612ec533dd644"
|
||||
socket.io-client@1.7.3:
|
||||
version "1.7.3"
|
||||
resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-1.7.3.tgz#b30e86aa10d5ef3546601c09cde4765e381da377"
|
||||
dependencies:
|
||||
backo2 "1.0.2"
|
||||
component-bind "1.0.0"
|
||||
component-emitter "1.2.1"
|
||||
debug "2.3.3"
|
||||
engine.io-client "1.8.2"
|
||||
engine.io-client "1.8.3"
|
||||
has-binary "0.1.7"
|
||||
indexof "0.0.1"
|
||||
object-component "0.0.3"
|
||||
@@ -6440,16 +6482,16 @@ socket.io-parser@2.3.1:
|
||||
isarray "0.0.1"
|
||||
json3 "3.3.2"
|
||||
|
||||
socket.io@1.7.2:
|
||||
version "1.7.2"
|
||||
resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-1.7.2.tgz#83bbbdf2e79263b378900da403e7843e05dc3b71"
|
||||
socket.io@1.7.3:
|
||||
version "1.7.3"
|
||||
resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-1.7.3.tgz#b8af9caba00949e568e369f1327ea9be9ea2461b"
|
||||
dependencies:
|
||||
debug "2.3.3"
|
||||
engine.io "1.8.2"
|
||||
engine.io "1.8.3"
|
||||
has-binary "0.1.7"
|
||||
object-assign "4.1.0"
|
||||
socket.io-adapter "0.5.0"
|
||||
socket.io-client "1.7.2"
|
||||
socket.io-client "1.7.3"
|
||||
socket.io-parser "2.3.1"
|
||||
|
||||
sockjs-client@1.1.2:
|
||||
@@ -6480,9 +6522,9 @@ source-list-map@^0.1.7, source-list-map@~0.1.7:
|
||||
version "0.1.8"
|
||||
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106"
|
||||
|
||||
source-list-map@^1.1.1:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-1.1.2.tgz#9889019d1024cce55cdc069498337ef6186a11a1"
|
||||
source-list-map@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085"
|
||||
|
||||
source-map-loader@^0.2.0:
|
||||
version "0.2.1"
|
||||
@@ -6963,19 +7005,13 @@ tmp@0.0.27:
|
||||
dependencies:
|
||||
os-tmpdir "~1.0.0"
|
||||
|
||||
tmp@0.0.28, tmp@0.0.x:
|
||||
version "0.0.28"
|
||||
resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.28.tgz#172735b7f614ea7af39664fa84cf0de4e515d120"
|
||||
dependencies:
|
||||
os-tmpdir "~1.0.1"
|
||||
|
||||
tmp@0.0.30:
|
||||
version "0.0.30"
|
||||
resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.30.tgz#72419d4a8be7d6ce75148fd8b324e593a711c2ed"
|
||||
dependencies:
|
||||
os-tmpdir "~1.0.1"
|
||||
|
||||
tmp@^0.0.31:
|
||||
tmp@0.0.31, tmp@0.0.x, tmp@^0.0.31:
|
||||
version "0.0.31"
|
||||
resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7"
|
||||
dependencies:
|
||||
@@ -7148,7 +7184,7 @@ type-check@~0.3.2:
|
||||
dependencies:
|
||||
prelude-ls "~1.1.2"
|
||||
|
||||
type-is@~1.6.14:
|
||||
type-is@~1.6.14, type-is@~1.6.15:
|
||||
version "1.6.15"
|
||||
resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410"
|
||||
dependencies:
|
||||
@@ -7169,17 +7205,13 @@ typescript@2.1:
|
||||
version "2.1.6"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.1.6.tgz#40c7e6e9e5da7961b7718b55505f9cac9487a607"
|
||||
|
||||
typescript@2.3.2, typescript@^2.2.1:
|
||||
typescript@2.3.2, "typescript@>=2.0.0 <2.4.0", typescript@^2.2.1:
|
||||
version "2.3.2"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.3.2.tgz#f0f045e196f69a72f06b25fd3bd39d01c3ce9984"
|
||||
|
||||
"typescript@>=2.0.0 <2.4.0":
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.2.0.tgz#626f2fc70087d2480f21ebb12c1888288c8614e3"
|
||||
|
||||
uglify-js@^2.6, uglify-js@^2.8.5, uglify-js@~2.8.22:
|
||||
version "2.8.23"
|
||||
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.23.tgz#8230dd9783371232d62a7821e2cf9a817270a8a0"
|
||||
uglify-js@^2.6, uglify-js@^2.8.27, uglify-js@~2.8.22:
|
||||
version "2.8.28"
|
||||
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.28.tgz#e335032df9bb20dcb918f164589d5af47f38834a"
|
||||
dependencies:
|
||||
source-map "~0.5.1"
|
||||
yargs "~3.10.0"
|
||||
@@ -7444,7 +7476,7 @@ user-home@^2.0.0:
|
||||
dependencies:
|
||||
os-homedir "^1.0.0"
|
||||
|
||||
useragent@^2.1.10:
|
||||
useragent@^2.1.12:
|
||||
version "2.1.13"
|
||||
resolved "https://registry.yarnpkg.com/useragent/-/useragent-2.1.13.tgz#bba43e8aa24d5ceb83c2937473e102e21df74c10"
|
||||
dependencies:
|
||||
@@ -7666,63 +7698,38 @@ webpack-sources@^0.1.0:
|
||||
source-list-map "~0.1.7"
|
||||
source-map "~0.5.3"
|
||||
|
||||
webpack-sources@^0.2.3:
|
||||
version "0.2.3"
|
||||
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.2.3.tgz#17c62bfaf13c707f9d02c479e0dcdde8380697fb"
|
||||
webpack-sources@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.0.1.tgz#c7356436a4d13123be2e2426a05d1dad9cbe65cf"
|
||||
dependencies:
|
||||
source-list-map "^1.1.1"
|
||||
source-list-map "^2.0.0"
|
||||
source-map "~0.5.3"
|
||||
|
||||
webpack@^2.5.1:
|
||||
version "2.5.1"
|
||||
resolved "https://registry.yarnpkg.com/webpack/-/webpack-2.5.1.tgz#61742f0cf8af555b87460a9cd8bba2f1e3ee2fce"
|
||||
webpack@3.0.0-rc.1:
|
||||
version "3.0.0-rc.1"
|
||||
resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.0.0-rc.1.tgz#41319cda8040f53177ce999a5d8a333e4f264d75"
|
||||
dependencies:
|
||||
acorn "^5.0.0"
|
||||
acorn-dynamic-import "^2.0.0"
|
||||
ajv "^4.7.0"
|
||||
ajv-keywords "^1.1.1"
|
||||
ajv "^5.1.5"
|
||||
ajv-keywords "^2.0.0"
|
||||
async "^2.1.2"
|
||||
enhanced-resolve "^3.0.0"
|
||||
escope "^3.6.0"
|
||||
interpret "^1.0.0"
|
||||
json-loader "^0.5.4"
|
||||
json5 "^0.5.1"
|
||||
loader-runner "^2.3.0"
|
||||
loader-utils "^0.2.16"
|
||||
loader-utils "^1.1.0"
|
||||
memory-fs "~0.4.1"
|
||||
mkdirp "~0.5.0"
|
||||
node-libs-browser "^2.0.0"
|
||||
source-map "^0.5.3"
|
||||
supports-color "^3.1.0"
|
||||
tapable "~0.2.5"
|
||||
uglify-js "^2.8.5"
|
||||
uglify-js "^2.8.27"
|
||||
watchpack "^1.3.1"
|
||||
webpack-sources "^0.2.3"
|
||||
yargs "^6.0.0"
|
||||
|
||||
webpack@~2.4.0:
|
||||
version "2.4.1"
|
||||
resolved "https://registry.yarnpkg.com/webpack/-/webpack-2.4.1.tgz#15a91dbe34966d8a4b99c7d656efd92a2e5a6f6a"
|
||||
dependencies:
|
||||
acorn "^5.0.0"
|
||||
acorn-dynamic-import "^2.0.0"
|
||||
ajv "^4.7.0"
|
||||
ajv-keywords "^1.1.1"
|
||||
async "^2.1.2"
|
||||
enhanced-resolve "^3.0.0"
|
||||
interpret "^1.0.0"
|
||||
json-loader "^0.5.4"
|
||||
json5 "^0.5.1"
|
||||
loader-runner "^2.3.0"
|
||||
loader-utils "^0.2.16"
|
||||
memory-fs "~0.4.1"
|
||||
mkdirp "~0.5.0"
|
||||
node-libs-browser "^2.0.0"
|
||||
source-map "^0.5.3"
|
||||
supports-color "^3.1.0"
|
||||
tapable "~0.2.5"
|
||||
uglify-js "^2.8.5"
|
||||
watchpack "^1.3.1"
|
||||
webpack-sources "^0.2.3"
|
||||
webpack-sources "^1.0.1"
|
||||
yargs "^6.0.0"
|
||||
|
||||
websocket-driver@>=0.5.1:
|
||||
@@ -7861,13 +7868,20 @@ write@^0.2.1:
|
||||
dependencies:
|
||||
mkdirp "^0.5.1"
|
||||
|
||||
ws@1.1.1, ws@^1.0.1:
|
||||
ws@1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.1.tgz#082ddb6c641e85d4bb451f03d52f06eabdb1f018"
|
||||
dependencies:
|
||||
options ">=0.0.5"
|
||||
ultron "1.0.x"
|
||||
|
||||
ws@1.1.2, ws@^1.0.1:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.2.tgz#8a244fa052401e08c9886cf44a85189e1fd4067f"
|
||||
dependencies:
|
||||
options ">=0.0.5"
|
||||
ultron "1.0.x"
|
||||
|
||||
wtf-8@1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/wtf-8/-/wtf-8-1.0.0.tgz#392d8ba2d0f1c34d1ee2d630f15d0efb68e1048a"
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
{
|
||||
"angularCompilerOptions": {
|
||||
"annotationsAs": "static fields",
|
||||
"annotateForClosureCompiler": true
|
||||
"annotateForClosureCompiler": true,
|
||||
"alwaysCompileGeneratedCode": true
|
||||
},
|
||||
|
||||
"compilerOptions": {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "angular-srcs",
|
||||
"version": "4.2.1",
|
||||
"version": "4.2.2",
|
||||
"private": true,
|
||||
"branchPattern": "2.0.*",
|
||||
"description": "Angular - a web framework for modern web apps",
|
||||
|
||||
@@ -740,18 +740,20 @@ export class TransitionAnimationEngine {
|
||||
// the :enter queries match the elements (since the timeline queries
|
||||
// are fired during instruction building).
|
||||
const bodyNode = getBodyNode();
|
||||
const allEnterNodes: any[] = this.collectedEnterElements;
|
||||
const enterNodes: any[] =
|
||||
allEnterNodes.length ? collectEnterElements(this.driver, allEnterNodes) : [];
|
||||
const allEnterNodes: any[] = this.collectedEnterElements.length ?
|
||||
collectEnterElements(this.driver, this.collectedEnterElements) :
|
||||
[];
|
||||
|
||||
const leaveNodes: any[] = [];
|
||||
const allLeaveNodes: any[] = [];
|
||||
const leaveNodesWithoutAnimations: any[] = [];
|
||||
for (let i = 0; i < this.collectedLeaveElements.length; i++) {
|
||||
const element = this.collectedLeaveElements[i];
|
||||
if (isElementNode(element)) {
|
||||
const details = element[REMOVAL_FLAG] as ElementAnimationState;
|
||||
if (details && details.setForRemoval) {
|
||||
addClass(element, LEAVE_CLASSNAME);
|
||||
leaveNodes.push(element);
|
||||
const details = element[REMOVAL_FLAG] as ElementAnimationState;
|
||||
if (details && details.setForRemoval) {
|
||||
addClass(element, LEAVE_CLASSNAME);
|
||||
allLeaveNodes.push(element);
|
||||
if (!details.hasAnimation) {
|
||||
leaveNodesWithoutAnimations.push(element);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -817,6 +819,16 @@ export class TransitionAnimationEngine {
|
||||
});
|
||||
}
|
||||
|
||||
// these can only be detected here since we have a map of all the elements
|
||||
// that have animations attached to them...
|
||||
const enterNodesWithoutAnimations: any[] = [];
|
||||
for (let i = 0; i < allEnterNodes.length; i++) {
|
||||
const element = allEnterNodes[i];
|
||||
if (!subTimelines.has(element)) {
|
||||
enterNodesWithoutAnimations.push(element);
|
||||
}
|
||||
}
|
||||
|
||||
const allPreviousPlayersMap = new Map<any, TransitionAnimationPlayer[]>();
|
||||
let sortedParentElements: any[] = [];
|
||||
queuedInstructions.forEach(entry => {
|
||||
@@ -840,12 +852,13 @@ export class TransitionAnimationEngine {
|
||||
|
||||
// PRE STAGE: fill the ! styles
|
||||
const preStylesMap = allPreStyleElements.size ?
|
||||
cloakAndComputeStyles(this.driver, enterNodes, allPreStyleElements, PRE_STYLE) :
|
||||
cloakAndComputeStyles(
|
||||
this.driver, enterNodesWithoutAnimations, allPreStyleElements, PRE_STYLE) :
|
||||
new Map<any, ɵStyleData>();
|
||||
|
||||
// POST STAGE: fill the * styles
|
||||
const postStylesMap =
|
||||
cloakAndComputeStyles(this.driver, leaveNodes, allPostStyleElements, AUTO_STYLE);
|
||||
const postStylesMap = cloakAndComputeStyles(
|
||||
this.driver, leaveNodesWithoutAnimations, allPostStyleElements, AUTO_STYLE);
|
||||
|
||||
const rootPlayers: TransitionAnimationPlayer[] = [];
|
||||
const subPlayers: TransitionAnimationPlayer[] = [];
|
||||
@@ -907,8 +920,8 @@ export class TransitionAnimationEngine {
|
||||
// run through all of the queued removals and see if they
|
||||
// were picked up by a query. If not then perform the removal
|
||||
// operation right away unless a parent animation is ongoing.
|
||||
for (let i = 0; i < leaveNodes.length; i++) {
|
||||
const element = leaveNodes[i];
|
||||
for (let i = 0; i < allLeaveNodes.length; i++) {
|
||||
const element = allLeaveNodes[i];
|
||||
const players = queriedElements.get(element);
|
||||
if (players) {
|
||||
removeNodesAfterAnimationDone(this, element, players);
|
||||
@@ -931,7 +944,7 @@ export class TransitionAnimationEngine {
|
||||
player.play();
|
||||
});
|
||||
|
||||
enterNodes.forEach(element => removeClass(element, ENTER_CLASSNAME));
|
||||
allEnterNodes.forEach(element => removeClass(element, ENTER_CLASSNAME));
|
||||
|
||||
return rootPlayers;
|
||||
}
|
||||
@@ -1218,7 +1231,7 @@ function normalizeTriggerValue(value: any): string {
|
||||
case 'boolean':
|
||||
return value ? '1' : '0';
|
||||
default:
|
||||
return value ? value.toString() : null;
|
||||
return value != null ? value.toString() : null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1236,6 +1249,17 @@ function cloakElement(element: any, value?: string) {
|
||||
return oldValue;
|
||||
}
|
||||
|
||||
/*
|
||||
1. start from the root, find the first matching child
|
||||
a) if not found then check to see if a previously stopped node was set in the stack
|
||||
-> if so then use that as the nextCursor
|
||||
b) if no queried item and no parent then stop completely
|
||||
c) if no queried item and yes parent then jump to the parent and restart loop
|
||||
2. visit the next node, check if matches
|
||||
a) if doesn't exist then set that as the cursor and repeat
|
||||
-> add to the previous cursor stack when the inner queries return nothing
|
||||
b) if matches then add it and continue
|
||||
*/
|
||||
function filterNodeClasses(
|
||||
driver: AnimationDriver, rootElement: any | null, selector: string): any[] {
|
||||
const rootElements: any[] = [];
|
||||
@@ -1243,23 +1267,53 @@ function filterNodeClasses(
|
||||
|
||||
let cursor: any = rootElement;
|
||||
let nextCursor: any = {};
|
||||
let potentialCursorStack: any[] = [];
|
||||
do {
|
||||
nextCursor = driver.query(cursor, selector, false)[0];
|
||||
// 1. query from root
|
||||
nextCursor = cursor ? driver.query(cursor, selector, false)[0] : null;
|
||||
|
||||
// this is used to avoid the extra matchesElement call when we
|
||||
// know that the element does match based it on being queried
|
||||
let justQueried = !!nextCursor;
|
||||
|
||||
if (!nextCursor) {
|
||||
cursor = cursor.parentElement;
|
||||
if (!cursor) break;
|
||||
nextCursor = cursor = cursor.nextElementSibling;
|
||||
} else {
|
||||
while (nextCursor && driver.matchesElement(nextCursor, selector)) {
|
||||
rootElements.push(nextCursor);
|
||||
nextCursor = nextCursor.nextElementSibling;
|
||||
if (nextCursor) {
|
||||
cursor = nextCursor;
|
||||
} else {
|
||||
cursor = cursor.parentElement;
|
||||
if (!cursor) break;
|
||||
nextCursor = cursor = cursor.nextElementSibling;
|
||||
}
|
||||
const nextPotentialCursor = potentialCursorStack.pop();
|
||||
if (nextPotentialCursor) {
|
||||
// 1a)
|
||||
nextCursor = nextPotentialCursor;
|
||||
} else {
|
||||
cursor = cursor.parentElement;
|
||||
// 1b)
|
||||
if (!cursor) break;
|
||||
// 1c)
|
||||
nextCursor = cursor = cursor.nextElementSibling;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
// 2. visit the next node
|
||||
while (nextCursor) {
|
||||
const matches = justQueried || driver.matchesElement(nextCursor, selector);
|
||||
justQueried = false;
|
||||
|
||||
const nextPotentialCursor = nextCursor.nextElementSibling;
|
||||
|
||||
// 2a)
|
||||
if (!matches) {
|
||||
potentialCursorStack.push(nextPotentialCursor);
|
||||
cursor = nextCursor;
|
||||
break;
|
||||
}
|
||||
|
||||
// 2b)
|
||||
rootElements.push(nextCursor);
|
||||
nextCursor = nextPotentialCursor;
|
||||
if (nextCursor) {
|
||||
cursor = nextCursor;
|
||||
} else {
|
||||
cursor = cursor.parentElement;
|
||||
if (!cursor) break;
|
||||
nextCursor = cursor = cursor.nextElementSibling;
|
||||
}
|
||||
}
|
||||
} while (nextCursor && nextCursor !== rootElement);
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
// in the same source directory with your code.
|
||||
"genDir": ".",
|
||||
"debug": true,
|
||||
"enableSummariesForJit": true
|
||||
"enableSummariesForJit": true,
|
||||
"alwaysCompileGeneratedCode": true
|
||||
},
|
||||
|
||||
"compilerOptions": {
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
"ng-xi18n": "./src/extract_i18n.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"@angular/tsc-wrapped": "4.2.1",
|
||||
"@angular/tsc-wrapped": "4.2.2",
|
||||
"reflect-metadata": "^0.1.2",
|
||||
"minimist": "^1.2.0"
|
||||
},
|
||||
|
||||
@@ -199,10 +199,40 @@ describe('compiler-cli', () => {
|
||||
});
|
||||
|
||||
describe('compile ngfactory files', () => {
|
||||
it('should only compile ngfactory files that are referenced by root files by default',
|
||||
(done) => {
|
||||
writeConfig(`{
|
||||
"extends": "./tsconfig-base.json",
|
||||
"files": ["mymodule.ts"]
|
||||
}`);
|
||||
write('mymodule.ts', `
|
||||
import {CommonModule} from '@angular/common';
|
||||
import {NgModule} from '@angular/core';
|
||||
|
||||
@NgModule({
|
||||
imports: [CommonModule]
|
||||
})
|
||||
export class MyModule {}
|
||||
`);
|
||||
|
||||
main({p: basePath})
|
||||
.then((exitCode) => {
|
||||
expect(exitCode).toEqual(0);
|
||||
|
||||
expect(fs.existsSync(path.resolve(outDir, 'mymodule.ngfactory.js'))).toBe(false);
|
||||
|
||||
done();
|
||||
})
|
||||
.catch(e => done.fail(e));
|
||||
});
|
||||
|
||||
it('should report errors for ngfactory files that are not referenced by root files', (done) => {
|
||||
writeConfig(`{
|
||||
"extends": "./tsconfig-base.json",
|
||||
"files": ["mymodule.ts"]
|
||||
"files": ["mymodule.ts"],
|
||||
"angularCompilerOptions": {
|
||||
"alwaysCompileGeneratedCode": true
|
||||
}
|
||||
}`);
|
||||
write('mymodule.ts', `
|
||||
import {NgModule, Component} from '@angular/core';
|
||||
@@ -235,7 +265,10 @@ describe('compiler-cli', () => {
|
||||
it('should compile ngfactory files that are not referenced by root files', (done) => {
|
||||
writeConfig(`{
|
||||
"extends": "./tsconfig-base.json",
|
||||
"files": ["mymodule.ts"]
|
||||
"files": ["mymodule.ts"],
|
||||
"angularCompilerOptions": {
|
||||
"alwaysCompileGeneratedCode": true
|
||||
}
|
||||
}`);
|
||||
write('mymodule.ts', `
|
||||
import {CommonModule} from '@angular/common';
|
||||
@@ -289,7 +322,8 @@ describe('compiler-cli', () => {
|
||||
"extends": "./tsconfig-base.json",
|
||||
"files": ["mymodule.ts"],
|
||||
"angularCompilerOptions": {
|
||||
"enableSummariesForJit": true
|
||||
"enableSummariesForJit": true,
|
||||
"alwaysCompileGeneratedCode": true
|
||||
}
|
||||
}`);
|
||||
write('mymodule.ts', `
|
||||
|
||||
@@ -223,6 +223,44 @@ export function main() {
|
||||
]);
|
||||
});
|
||||
|
||||
it('should allow a state value to be `0`', () => {
|
||||
@Component({
|
||||
selector: 'if-cmp',
|
||||
template: `
|
||||
<div [@myAnimation]="exp"></div>
|
||||
`,
|
||||
animations: [trigger(
|
||||
'myAnimation',
|
||||
[
|
||||
transition(
|
||||
'0 => 1', [style({height: '0px'}), animate(1234, style({height: '100px'}))]),
|
||||
transition(
|
||||
'* => 1', [style({width: '0px'}), animate(4567, style({width: '100px'}))])
|
||||
])]
|
||||
})
|
||||
class Cmp {
|
||||
exp: any = false;
|
||||
}
|
||||
|
||||
TestBed.configureTestingModule({declarations: [Cmp]});
|
||||
|
||||
const engine = TestBed.get(ɵAnimationEngine);
|
||||
const fixture = TestBed.createComponent(Cmp);
|
||||
const cmp = fixture.componentInstance;
|
||||
cmp.exp = 0;
|
||||
fixture.detectChanges();
|
||||
engine.flush();
|
||||
resetLog();
|
||||
|
||||
cmp.exp = 1;
|
||||
fixture.detectChanges();
|
||||
engine.flush();
|
||||
|
||||
expect(getLog().length).toEqual(1);
|
||||
const player = getLog().pop() !;
|
||||
expect(player.duration).toEqual(1234);
|
||||
});
|
||||
|
||||
it('should always cancel the previous transition if a follow-up transition is not matched',
|
||||
fakeAsync(() => {
|
||||
@Component({
|
||||
|
||||
@@ -735,6 +735,56 @@ export function main() {
|
||||
});
|
||||
});
|
||||
|
||||
it('should find :enter nodes that have been inserted around non enter nodes', () => {
|
||||
@Component({
|
||||
selector: 'ani-cmp',
|
||||
template: `
|
||||
<div [@myAnimation]="exp" class="parent">
|
||||
<div *ngFor="let item of items" class="child">
|
||||
{{ item }}
|
||||
</div>
|
||||
</div>
|
||||
`,
|
||||
animations: [trigger(
|
||||
'myAnimation',
|
||||
[
|
||||
transition(
|
||||
'* => go',
|
||||
[query(':enter', [style({opacity: 0}), animate(1000, style({opacity: 1}))])]),
|
||||
])]
|
||||
})
|
||||
class Cmp {
|
||||
public exp: any;
|
||||
public items: any[] = [];
|
||||
}
|
||||
|
||||
TestBed.configureTestingModule({declarations: [Cmp]});
|
||||
|
||||
const engine = TestBed.get(ɵAnimationEngine);
|
||||
const fixture = TestBed.createComponent(Cmp);
|
||||
const cmp = fixture.componentInstance;
|
||||
|
||||
cmp.exp = 'no';
|
||||
cmp.items = [2];
|
||||
fixture.detectChanges();
|
||||
engine.flush();
|
||||
resetLog();
|
||||
|
||||
cmp.exp = 'go';
|
||||
cmp.items = [0, 1, 2, 3, 4];
|
||||
fixture.detectChanges();
|
||||
engine.flush();
|
||||
|
||||
const players = getLog();
|
||||
expect(players.length).toEqual(4);
|
||||
|
||||
const [p1, p2, p3, p4] = players;
|
||||
expect(p1.element.innerText.trim()).toEqual('0');
|
||||
expect(p2.element.innerText.trim()).toEqual('1');
|
||||
expect(p3.element.innerText.trim()).toEqual('3');
|
||||
expect(p4.element.innerText.trim()).toEqual('4');
|
||||
});
|
||||
|
||||
it('should properly cancel items that were queried into a former animation', () => {
|
||||
@Component({
|
||||
selector: 'ani-cmp',
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
* Use of this source code is governed by an MIT-style license that can be
|
||||
* found in the LICENSE file at https://angular.io/license
|
||||
*/
|
||||
import {animate, style, transition, trigger} from '@angular/animations';
|
||||
import {animate, state, style, transition, trigger} from '@angular/animations';
|
||||
import {AnimationDriver, ɵAnimationEngine} from '@angular/animations/browser';
|
||||
import {ɵWebAnimationsDriver, ɵWebAnimationsPlayer, ɵsupportsWebAnimations} from '@angular/animations/browser'
|
||||
import {Component, ViewChild} from '@angular/core';
|
||||
@@ -26,6 +26,97 @@ export function main() {
|
||||
});
|
||||
});
|
||||
|
||||
it('should compute (*) animation styles for a container that is being removed', () => {
|
||||
@Component({
|
||||
selector: 'ani-cmp',
|
||||
template: `
|
||||
<div @auto *ngIf="exp">
|
||||
<div style="line-height:20px;">1</div>
|
||||
<div style="line-height:20px;">2</div>
|
||||
<div style="line-height:20px;">3</div>
|
||||
<div style="line-height:20px;">4</div>
|
||||
<div style="line-height:20px;">5</div>
|
||||
</div>
|
||||
`,
|
||||
animations: [trigger(
|
||||
'auto',
|
||||
[
|
||||
state('void', style({height: '0px'})), state('*', style({height: '*'})),
|
||||
transition('* => *', animate(1000))
|
||||
])]
|
||||
})
|
||||
class Cmp {
|
||||
public exp: boolean = false;
|
||||
}
|
||||
|
||||
TestBed.configureTestingModule({declarations: [Cmp]});
|
||||
|
||||
const engine = TestBed.get(ɵAnimationEngine);
|
||||
const fixture = TestBed.createComponent(Cmp);
|
||||
const cmp = fixture.componentInstance;
|
||||
|
||||
cmp.exp = true;
|
||||
fixture.detectChanges();
|
||||
engine.flush();
|
||||
|
||||
expect(engine.players.length).toEqual(1);
|
||||
let webPlayer = engine.players[0].getRealPlayer() as ɵWebAnimationsPlayer;
|
||||
|
||||
expect(webPlayer.keyframes).toEqual([
|
||||
{height: '0px', offset: 0}, {height: '100px', offset: 1}
|
||||
]);
|
||||
|
||||
cmp.exp = false;
|
||||
fixture.detectChanges();
|
||||
engine.flush();
|
||||
|
||||
expect(engine.players.length).toEqual(1);
|
||||
webPlayer = engine.players[0].getRealPlayer() as ɵWebAnimationsPlayer;
|
||||
|
||||
expect(webPlayer.keyframes).toEqual([
|
||||
{height: '100px', offset: 0}, {height: '0px', offset: 1}
|
||||
]);
|
||||
});
|
||||
|
||||
it('should compute (!) animation styles for a container that is being inserted', () => {
|
||||
@Component({
|
||||
selector: 'ani-cmp',
|
||||
template: `
|
||||
<div @auto *ngIf="exp">
|
||||
<div style="line-height:20px;">1</div>
|
||||
<div style="line-height:20px;">2</div>
|
||||
<div style="line-height:20px;">3</div>
|
||||
<div style="line-height:20px;">4</div>
|
||||
<div style="line-height:20px;">5</div>
|
||||
</div>
|
||||
`,
|
||||
animations: [trigger(
|
||||
'auto',
|
||||
[transition(
|
||||
':enter', [style({height: '!'}), animate(1000, style({height: '120px'}))])])]
|
||||
})
|
||||
class Cmp {
|
||||
public exp: boolean = false;
|
||||
}
|
||||
|
||||
TestBed.configureTestingModule({declarations: [Cmp]});
|
||||
|
||||
const engine = TestBed.get(ɵAnimationEngine);
|
||||
const fixture = TestBed.createComponent(Cmp);
|
||||
const cmp = fixture.componentInstance;
|
||||
|
||||
cmp.exp = true;
|
||||
fixture.detectChanges();
|
||||
engine.flush();
|
||||
|
||||
expect(engine.players.length).toEqual(1);
|
||||
let webPlayer = engine.players[0].getRealPlayer() as ɵWebAnimationsPlayer;
|
||||
|
||||
expect(webPlayer.keyframes).toEqual([
|
||||
{height: '100px', offset: 0}, {height: '120px', offset: 1}
|
||||
]);
|
||||
});
|
||||
|
||||
it('should compute pre (!) and post (*) animation styles with different dom states', () => {
|
||||
@Component({
|
||||
selector: 'ani-cmp',
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@angular/tsc-wrapped",
|
||||
"version": "4.2.1",
|
||||
"version": "4.2.2",
|
||||
"description": "Wraps the tsc CLI, allowing extensions.",
|
||||
"homepage": "https://github.com/angular/angular/blob/master/tools/@angular/tsc-wrapped",
|
||||
"bugs": "https://github.com/angular/angular/issues",
|
||||
|
||||
@@ -124,8 +124,11 @@ export function main(
|
||||
if (diagnostics) console.time('NG codegen');
|
||||
return codegen(ngOptions, cliOptions, program, host).then((genFiles) => {
|
||||
if (diagnostics) console.timeEnd('NG codegen');
|
||||
|
||||
// Add the generated files to the configuration so they will become part of the program.
|
||||
genFiles.forEach(genFileName => addGeneratedFileName(genFileName));
|
||||
if (ngOptions.alwaysCompileGeneratedCode) {
|
||||
genFiles.forEach(genFileName => addGeneratedFileName(genFileName));
|
||||
}
|
||||
let definitionsHost: ts.CompilerHost = tsickleCompilerHost;
|
||||
if (!ngOptions.skipMetadataEmit) {
|
||||
// if tsickle is not not used for emitting, but we do use the MetadataWriterHost,
|
||||
|
||||
@@ -83,8 +83,13 @@ interface Options extends ts.CompilerOptions {
|
||||
enableLegacyTemplate?: boolean;
|
||||
|
||||
// Whether to generate .ngsummary.ts files that allow to use AOTed artifacts
|
||||
// in JIT mode.
|
||||
// in JIT mode. This is off by default.
|
||||
enableSummariesForJit?: boolean;
|
||||
|
||||
// Whether to compile generated .ngfacgtory.ts files, even when they are no
|
||||
// matched by the `files` / `includes` in the `tsconfig.json`.
|
||||
// This is off by default.
|
||||
alwaysCompileGeneratedCode?: boolean;
|
||||
}
|
||||
|
||||
export default Options;
|
||||
|
||||
Reference in New Issue
Block a user