Dzmitry Shylovich
1a92e3d406
refactor(router): clean up RouterLinkActive ( #13273 )
...
PR Close #13273
2017-01-17 18:37:34 -06:00
Miško Hevery
d169c2434e
feat(core): Add type information to injector.get() ( #13785 )
...
- Introduce `InjectionToken<T>` which is a parameterized and type-safe
version of `OpaqueToken`.
DEPRECATION:
- `OpaqueToken` is now deprecated, use `InjectionToken<T>` instead.
- `Injector.get(token: any, notFoundValue?: any): any` is now deprecated
use the same method which is now overloaded as
`Injector.get<T>(token: Type<T>|InjectionToken<T>, notFoundValue?: T): T;`.
Migration
- Replace `OpaqueToken` with `InjectionToken<?>` and parameterize it.
- Migrate your code to only use `Type<?>` or `InjectionToken<?>` as
injection tokens. Using other tokens will not be supported in the
future.
BREAKING CHANGE:
- Because `injector.get()` is now parameterize it is possible that code
which used to work no longer type checks. Example would be if one
injects `Foo` but configures it as `{provide: Foo, useClass: MockFoo}`.
The injection instance will be that of `MockFoo` but the type will be
`Foo` instead of `any` as in the past. This means that it was possible
to call a method on `MockFoo` in the past which now will fail type
check. See this example:
```
class Foo {}
class MockFoo extends Foo {
setupMock();
}
var PROVIDERS = [
{provide: Foo, useClass: MockFoo}
];
...
function myTest(injector: Injector) {
var foo = injector.get(Foo);
// This line used to work since `foo` used to be `any` before this
// change, it will now be `Foo`, and `Foo` does not have `setUpMock()`.
// The fix is to downcast: `injector.get(Foo) as MockFoo`.
foo.setUpMock();
}
```
PR Close #13785
2017-01-17 15:34:54 -06:00
Miško Hevery
6d1f1a43bb
refactor(core): opaque_token.ts -> injection_token.ts (must include subsequent SHA) ( #13785 )
2017-01-17 15:34:53 -06:00
Martin Probst
e19bf70b47
feat(security): allow calc and gradient functions. ( #13943 )
...
PR Close #13943
Also includes support for # color notation in function arguments (common
in gradient functions).
2017-01-17 15:34:53 -06:00
Peter Bacon Darwin
d6382bfa0b
fix(upgrade): detect async downgrade component changes ( #13812 )
...
This commit effectively reverts 7e0f02f96e
as it was an invalid fix for #6385 , that created a more significant
bug, which was that changes were not always being detected.
Angular 1 digests should be run inside the ngZone to ensure
that async changes are detected.
We don't know how to fix #6385 without breaking change detection
at this stage. That issue is triggered by async operations, such as
`setTimeout`, being triggered inside scope watcher functions.
One could argue that watcher functions should be pure and not do
work such as triggering async operations. It is possible that the
original use case could be supported by moving the debounce
logic into the watch listener function, which is only called if the
watched value actually changes.
Closes #10660 , #12318 , #12034
PR Close #13812
2017-01-17 15:34:53 -06:00
Peter Bacon Darwin
4dea347101
test(upgrade): reorganise test layout ( #13812 )
2017-01-17 15:34:53 -06:00
Vikram Subramanian
5237b1c98c
chore(compiler-cli): Move calculateEmitPath into CompilerHost ( #13904 )
...
This is so that it can be overriden in an environment specific CompilerHost(like within Google) to customize the output paths.
PR Close #13904
2017-01-13 13:52:35 -06:00
Marc Laval
f364557629
fix(common): support numeric value as discrete cases for NgPlural ( #13876 )
...
PR Close #13876
2017-01-13 13:52:35 -06:00
Matias Niemelä
c2aa981dd6
fix(animations): fix internal jscompiler issue and AOT quoting ( #13798 )
...
CL #143630929
PR Close #13798
2017-01-13 13:52:00 -06:00
José Nicodemos Maia Neto
dc63cef10a
docs(http): Spelling Fix #13867
2017-01-12 09:55:49 -08:00
Meligy
aeed7373af
fix(compiler-cli): avoid handling functions in loadChildren as lazy load routes paths
...
The change avoids the compiler CLI internal API from mismatching the following case as lazy loading
```
import { NonLazyLoadedModule } from './non-lazy-loaded/non-lazy-loaded.module';
export function getNonLazyLoadedModule() { return NonLazyLoadedModule; }
export const routes = [
{ path: '/some-path', loadChildren: getNonLazyLoadedModule }
];
```
The output of the check is later passed to `RouteDef.fromString()`, so, it makes sense to be only a string.
Fixes angular/angular-cli#3204
2017-01-10 14:31:45 -05:00
Pawel Kozlowski
2e3ac70e0a
refactor(common): remove some facade usages
2017-01-10 14:31:30 -05:00
Victor Berchet
9aeb8c5357
refactor(test): `<template>`/`<ng-container>`/*-directives
...
- remove outer `<div>` in tests,
- use `<ng-container>` instead of `<template>` where possible,
- use *... instead of template (tag or attr) where possible.
Fixes #13816
2017-01-09 19:33:38 -05:00
Victor Berchet
424e6c4cb9
fix(i18n): translate attributes inside elements marked for translation
...
fixes #13796
fixes #13814
2017-01-09 19:33:03 -05:00
Victor Berchet
5cb2008e6c
docs(NgPlural): fix API docs
...
Fixes #13786
2017-01-09 19:32:42 -05:00
Victor Berchet
78f42c7aa1
refactor(Compiler): misc cleanup
2017-01-09 19:32:01 -05:00
Julien Elbaz
d4d3782d45
feat(Router): call resolver when upstream params change ( #12942 )
...
With this change the resolver is called when the parameter for the activated and any parent routes change.
ie, switching from `/teams/10/players/5` to `/teams/12/players/5` will now trigger any `PlayerResolver`.
2017-01-09 18:56:58 -05:00
Dzmitry Shylovich
46cb04d575
fix(router): throw an error when navigate to null/undefined path
...
Closes #10560
Fixes #13384
2017-01-09 18:56:47 -05:00
Joao Dias
8c7e93bebe
fix(core): Add type information to differs
...
CHANGES:
- Remove unused `onDestroy` method on the `KeyValueDiffer` and
`IterableDiffer`.
DEPRECATION:
- `CollectionChangeRecord` is renamed to `IterableChangeRecord`.
`CollectionChangeRecord` is aliased to `IterableChangeRecord` and is
marked as `@deprecated`. It will be removed in `v5.x.x`.
- Deprecate `DefaultIterableDiffer` as it is private class which
was erroneously exposed.
- Deprecate `KeyValueDiffers#factories` as it is private field which
was erroneously exposed.
- Deprecate `IterableDiffers#factories` as it is private field which
was erroneously exposed.
BREAKING CHANGE:
- `IterableChangeRecord` is now an interface and parameterized on `<V>`.
This should not be an issue unless your code does
`new IterableChangeRecord` which it should not have a reason to do.
- `KeyValueChangeRecord` is now an interface and parameterized on `<V>`.
This should not be an issue unless your code does
`new IterableChangeRecord` which it should not have a reason to do.
Original PR #12570
Fixes #13382
2017-01-09 18:56:34 -05:00
Meligy
5d9cbd7d6f
fix(compiler-cli): add support for more than 2 levels of nested lazy routes
...
This change adds Compiler CLI support for any level of nesting for lazy routes.
For example `{app-root}/lazy-loaded-module-1/lazy-loaded-module-2/lazy-loaded-module-3`
Where `lazy-loaded-module-3` is lazy loaded from `lazy-loaded-module-2`,
and `lazy-loaded-module-2` is lazy loaded from module `lazy-loaded-module-1`,
and `lazy-loaded-module-1` is lazy loaded from `AppModule`
Fixes angular/angular-cli#3663
2017-01-09 17:43:14 -05:00
Chuck Jazdzewski
d061adc02d
fix(compiler): avoid evaluating arguments to unknown decorators
...
Fixes #13605
2017-01-09 16:30:31 -05:00
Victor Berchet
6d29faefea
fix(Router): fix checking for object intersection
2017-01-09 16:30:14 -05:00
Ryan Cavanaugh
99aa49ab6c
feat(language-service): support TS2.2 plugin model
2017-01-09 15:00:40 -05:00
Victor Berchet
e5c6bb4286
fix(Compiler): fix template binding parsing (`*directive="-..."`)
...
fixes #13800
2017-01-09 15:00:40 -05:00
Dzmitry Shylovich
d9a22dae4f
fix(router): RouterLink mirrors input `target` as attribute
...
Closes #13837
2017-01-09 15:00:40 -05:00
Matias Niemelä
fb6c4582a1
chore(ngComponentOutlet): add missing semicolon
2017-01-09 11:54:25 -08:00
shlomiassaf
8578682dcf
feat(NgComponentOutlet): add NgComponentOutlet directive
...
Add NgComponentOutlet directive that can be used to dynamically create
host views from a supplied component.
Closes #11168
Takes over PR #11235
2017-01-06 19:30:38 -05:00
Misko Hevery
c0178de0e2
feat(NgTemplateOutlet): Make NgTemplateOutlet compatible with * syntax
...
BREAKING CHANGE:
- Deprecate `ngOutletContext`. Use `ngTemplateOutletContext` instead
2017-01-06 19:30:20 -05:00
Misko Hevery
31322e73b7
fix: correctly show error when karma fails to load
2017-01-06 19:30:09 -05:00
Matias Niemelä
9211a22039
feat(animations): support function types in transitions
...
Closes #13538
Closes #13537
2017-01-06 19:29:46 -05:00
Matias Niemelä
3f67ab074a
feat(animations): expose the `triggerName` within the transition event
...
Closes #13600
2017-01-06 19:29:45 -05:00
Matias Niemelä
4bae4b3bb5
feat(animations): expose the `element` value within transition events
2017-01-06 19:29:45 -05:00
Igor Minar
1c85e99588
chore(tsc-wrapped): bump version number to 4.0.0-beta.2
...
This was done in order for us to be able to publish tsc-wrapped as @next tag on npm.
The next step is to change the build scripts to version and release @angular/tsc-wrapped
together with all the other packages. I'll create an issue/PR for this.
2017-01-05 17:53:10 -08:00
Chuck Jazdzewski
8063b0d9a2
fix(language-service): support TypeScript 2.1 ( #13655 )
...
@angular/language-service now supports using TypeScript 2.1 as the
the TypeScript host. TypeScript 2.1 is now also partially supported
in `ngc` but is not recommended as Tsickle does not yet support 2.1.
2017-01-05 11:34:42 -08:00
Matias Niemelä
21030e9a1c
fix(core): animations no longer silently exits if the element is not apart of the DOM ( #13763 )
2017-01-05 11:33:40 -08:00
Matias Niemelä
889b48d85f
fix(core): animations should blend in all previously transitioned styles into next animation if interrupted ( #13148 )
2017-01-05 11:32:52 -08:00
Victor Berchet
1bd04e95de
refactor: remove unused imports
2017-01-05 11:18:34 -08:00
Victor Berchet
f88cd2f22e
fix(Common): allow null/undefined values for `NgForTrackBy`
...
Reverts a breaking change introduced in 2.4.1 by #13420
fixes #13641
2017-01-05 11:18:34 -08:00
Dzmitry Shylovich
f822f9599c
docs(common): add an example how to bind multiple classes based on a single parameter ( #13779 )
...
Closes #13778
2017-01-05 10:21:38 -08:00
Dzmitry Shylovich
9898d8f6d9
fix(forms): Validators.required properly validate arrays ( #13362 )
...
Closes #12274
2017-01-05 09:25:20 -08:00
Dzmitry Shylovich
2dd6280ab8
fix(common): do not override locale provided on bootstrap ( #13654 )
...
Closes #13607
2017-01-05 09:24:37 -08:00
Tobias Bosch
465516b905
refactor(core): remove backwards compatibility of `SimpleChange`
...
BREAKING CHANGE:
`SimnpleChange` now takes an additional argument that defines
whether this is the first change or not.
2017-01-03 13:05:05 -08:00
Tobias Bosch
db49d422f2
refactor(compiler): generate less code for bindings to DOM elements
...
Detailed changes:
- remove `UNINITIALIZED`, initialize change detection fields with `undefined`.
* we use `view.numberOfChecks === 0` now everywhere
as indicator whether we are in the first change detection cycle
(previously we used this only in a couple of places).
* we keep the initialization itself as change detection get slower without it.
- remove passing around `throwOnChange` in various generated calls,
and store it on the view as property instead.
- change generated code for bindings to DOM elements as follows:
Before:
```
var currVal_10 = self.context.bgColor;
if (jit_checkBinding15(self.throwOnChange,self._expr_10,currVal_10)) {
self.renderer.setElementStyle(self._el_0,'backgroundColor',((self.viewUtils.sanitizer.sanitize(jit_21,currVal_10) == null)? null: self.viewUtils.sanitizer.sanitize(jit_21,currVal_10).toString()));
self._expr_10 = currVal_10;
}
var currVal_11 = jit_inlineInterpolate16(1,' ',self.context.data.value,' ');
if (jit_checkBinding15(self.throwOnChange,self._expr_11,currVal_11)) {
self.renderer.setText(self._text_1,currVal_11);
self._expr_11 = currVal_11;
}
```,
After:
```
var currVal_10 = self.context.bgColor;
jit_checkRenderStyle14(self,self._el_0,'backgroundColor',null,self._expr_10,self._expr_10=currVal_10,false,jit_21);
var currVal_11 = jit_inlineInterpolate15(1,' ',self.context.data.value,' ');
jit_checkRenderText16(self,self._text_1,self._expr_11,self._expr_11=currVal_11,false);
```
Performance impact:
- None seen (checked against internal latency lab)
Part of #13651
2017-01-03 13:05:05 -08:00
Tobias Bosch
8ed92d75b0
refactor(benchmarks): make ftl benchmarks use their own version of `checkBinding`
2017-01-03 13:05:05 -08:00
Tobias Bosch
50e5cb15dd
feat(benchmarks): add `detectChanges` test for ng2 tree benchmark
2017-01-03 13:05:05 -08:00
William KOZA
c5c53f3666
fix(core): Remove reference to "Angular 2" in dev mode warning ( #13751 )
2017-01-03 10:03:58 -08:00
Jon Walsh
bb0d23f82b
Typo ( #13698 )
2016-12-29 09:41:21 -08:00
Emanuel Hein
1e6440e81b
docs(Http): fix and extend samples for testing/MockBackend ( #13689 )
...
Fix samples for MockBackend and MockBackend.connections that were outdated. Also extend central sample for MockBackend to ease getting started.
2016-12-29 09:39:00 -08:00
Dzmitry Shylovich
6b02b80a03
fix(compiler): improve error message for undefined providers ( #13546 )
...
Closes #10835
2016-12-27 17:05:14 -08:00
Dzmitry Shylovich
2c0c86e3ce
fix(compiler): improve the error when template is not a string
...
Closes #8708
Closes #13377
2016-12-27 17:04:16 -08:00
Dzmitry Shylovich
5b4bea24de
refactor(compiler): clean up directive normalizer
2016-12-27 17:03:58 -08:00
Tobias Bosch
7690d02133
fix(compiler): don’t throw when using `ANALYZE_FOR_ENTRY_COMPONENTS` with user classes ( #13679 )
...
Fixed #13565
2016-12-27 16:58:52 -08:00
Tsuyoshi Ito
b2ae7b607e
docs(Core): fix API docs for ContentChild and ViewChildren ( #13656 )
...
Move the documentations of the ContentChild and ViewChildren decorators
so that they appear correctly on angular.io.
Closes #13625
2016-12-27 16:58:33 -08:00
Tobias Bosch
7c210645a3
fix(compiler): query `<template>` elements before their children. ( #13677 )
...
Fixes #13118
Closes #13167
2016-12-27 16:28:54 -08:00
Dzmitry Shylovich
07e0fce8fc
fix(router): update route snapshot before emit new values ( #13558 )
...
Closes #12912
2016-12-27 15:57:22 -08:00
Victor Berchet
0ac8e102de
test(i18n): add extraction to integration specs
...
Closes #13648 .
2016-12-27 15:32:54 -08:00
Victor Berchet
e74d8aaf92
fix(i18n): parse ICU messages while normalizing templates
...
Fixes:
- Inject the i18n specific HtmlParser into the directive normalizer,
- Parse ICU messages while normalizing templates,
- Normalize (visit) the content of ICU messages.
🎄 🎁 🎅
2016-12-27 15:32:43 -08:00
Victor Berchet
881eb894bc
fix(Compiler): allow "." in attribute selectors ( #13653 )
...
fixes #13645
2016-12-27 15:23:49 -08:00
Dzmitry Shylovich
0eca960494
fix(router): fix lazy loaded module with wildcard route ( #13649 )
...
Closes #12955
2016-12-27 15:22:57 -08:00
Victor Berchet
eed83443b8
chore(tslint): update tslint to 4.x ( #13603 )
2016-12-27 14:55:58 -08:00
Georgios Kalpakas
e5c4e5801f
fix(upgrade): fix/improve support for lifecycle hooks ( #13020 )
...
With the exception of `$onChanges()`, all lifecycle hooks in ng1 are called on
the controller, regardless if it is the binding destination or not (i.e.
regardless of the value of `bindToController`).
This change makes `upgrade` mimic that behavior when calling lifecycle hooks.
Additionally, calling the `$onInit()` hook has been moved before calling the
linking functions, which also mimics the ng1 behavior.
2016-12-27 14:42:53 -08:00
Dzmitry Shylovich
69fa3bbc03
feat(router): add an extra argument to CanDeactivate interface ( #13560 )
...
Adds a `nextState` argument to access the future url from `CanDeactivate`.
BEFORE:
canDeactivate(component: T, route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean>|Promise<boolean>|boolean;
AFTER:
canDeactivate(component: T, currentRoute: ActivatedRouteSnapshot, currentState: RouterStateSnapshot, nextState?: RouterStateSnapshot): Observable<boolean>|Promise<boolean>|boolean;
Closes #9853
2016-12-27 14:08:06 -08:00
Dzmitry Shylovich
445ed43b9a
fix(compiler): throw an error for invalid provider ( #13544 )
...
Closes #8870
2016-12-27 14:02:28 -08:00
Dzmitry Shylovich
174334dec3
fix(router): routerLink support of null/undefined ( #13380 )
...
Closes #6971
2016-12-27 13:45:16 -08:00
Tobias Bosch
9c697030e6
feat(compiler): generate proper reexports in `.ngfactory.ts` files to not need transitive deps for compiling `.ngfactory.ts` files. ( #13524 )
...
Note: This checks the constructors of `@Injectable` classes more strictly.
E.g this will fail now as the constructor argument has no `@Inject` nor is
the type of the argument a DI token.
```
@Injectable()
class MyService {
constructor(dep: string) {}
}
```
Last part of #12787
Closes #12787
2016-12-27 09:36:47 -08:00
Dzmitry Shylovich
697690349f
fix(common): add link to trackBy docs ( #13634 )
2016-12-22 13:25:51 -08:00
Filipe Silva
0448e80704
docs(examples): fix example path ( #13635 )
2016-12-22 13:25:21 -08:00
Georgios Kalpakas
e85232afd2
docs(ngIf): fix typos ( #13630 )
2016-12-22 12:36:47 -08:00
Chase
e7ece6c8ce
fixed minor typo ( #13626 )
2016-12-22 12:36:24 -08:00
Dzmitry Shylovich
67380d4b28
fix(testing): improve misleading error message when don't call compileComponents ( #13543 )
...
Closes #11301
2016-12-22 12:35:57 -08:00
Matias Niemelä
842f52e841
fix(animations): always recover from a failed animation step ( #13604 )
2016-12-21 14:14:45 -08:00
Victor Savkin
eb2ceff4ba
fix(router): should reset location if a navigation by location is successful ( #13545 )
...
Closes #13491
2016-12-21 12:47:58 -08:00
Matias Niemelä
f49ab56160
fix(animations): always quote string map key values in AOT code ( #13602 )
2016-12-20 18:17:58 -08:00
Dzmitry Shylovich
c0f750af4e
fix(compiler): ignore @import in comments ( #13368 )
...
* refactor(compiler): clean up style url resolver
* fix(compiler): ignore @import in css comments
Closes #12196
2016-12-20 17:51:02 -08:00
Chuck Jazdzewski
e69c1fb36c
refactor(platform-browser): resolver merge conflict for tslint ( #13601 )
2016-12-20 17:49:25 -08:00
Georgios Kalpakas
9da4c259a5
feat(upgrade): support the `$doCheck()` lifecycle hook in `UpgradeComponent` ( #13015 )
2016-12-20 16:18:43 -08:00
Dzmitry Shylovich
fcd116fdc0
fix(common): throw an error if trackBy is not a function ( #13420 )
...
* fix(common): throw an error if trackBy is not a function
Closes #13388
* refactor(platform-browser): disable no-console rule in DomAdapter
2016-12-20 16:18:24 -08:00
Dzmitry Shylovich
383adc9ad9
fix(core): improve error message when component factory cannot be found ( #13541 )
...
Closes #12678
2016-12-20 16:17:22 -08:00
crisbeto
171a9bdc85
feat: update to rxjs@5.0.1 and unpin the rxjs peerDeps via ^5.0.1 ( #13572 )
...
Now that rxjs is stable and the rxjs team follows semver, we can update and unpin the dependency safely.
From now on the Angular application/library developers are in charge of controlling the rxjs version as long as it's newer than 5.0.1.
closes #13561
closes #13478
closes #13572
2016-12-19 16:24:53 -08:00
Chuck Jazdzewski
e49c7fae22
refactor(compiler-cli): support extracting the mesage bundle without writing a file ( #13580 )
2016-12-19 15:28:55 -08:00
Victor Berchet
6b65fc1286
feat(compiler-cli): private i18n API for the CLI ( #13536 )
...
Also change the Extractor API to align with the Codegen API (internal APIs)
2016-12-19 11:56:10 -08:00
Chuck Jazdzewski
0e3981afc1
fix(compiler-cli): produce metadata for .d.ts files without metadata ( #13526 )
...
Fixes #13307
Fixes #13473
Fixes #13521
2016-12-16 15:33:47 -08:00
Victor Berchet
e78508507d
fix(compiler): do not lex `}}` when interpolation is disabled ( #13531 )
...
* doc(compiler): fix the ICU expander API docs
* test(compiler): add lexer and parser specs
* fix(compiler): do not lex `}}` when interpolation is disabled
fix #13525
2016-12-16 15:33:16 -08:00
Brandon
a23fa94ca8
fix(common): capitalize first letter of all words in TitleCasePipe ( #13511 )
2016-12-16 15:24:26 -08:00
Dzmitry Shylovich
4568d5ddac
refactor(core): fix typo ( #13515 )
...
Closes #13512
2016-12-16 15:21:58 -08:00
Janne Vanhala
c6e893953f
fix(upgrade): fix `registerForNg1Tests` ( #13522 )
...
Fix an issue in `registerForNg1Tests`, where it passes a `null` as
`ng1Injector` to `_bootstrapDone`. This causes a "TypeError: Cannot
read property 'get' of null" to be thrown from `_bootstrapDone`.
2016-12-16 15:14:16 -08:00
Marc Laval
55dfa1b69d
test(forms): refactor integration tests to improve speed ( #13500 )
2016-12-15 17:07:26 -08:00
Victor Berchet
0fe3cd9a4c
fix(i18n): add a default example to xmb placeholders ( #13507 )
...
Otherwise the TC would not be able to load the message
2016-12-15 15:33:42 -08:00
Matias Niemelä
0c19898694
fix(animations): allow players to be destroyed before initialized ( #13346 )
...
Closes #13293
Closes #13346
2016-12-15 14:18:57 -08:00
Chuck Jazdzewski
5b6e8ea3ec
refactor(compiler): format update ( #13506 )
2016-12-15 13:54:38 -08:00
Trotyl Yu
732f446ad2
docs(common): fix ngIf example ( #13496 )
2016-12-15 13:07:36 -08:00
Bowen Ni
f0e092515c
refactor(compiler): don't print stack trace on template parse errors ( #13390 )
2016-12-15 13:07:12 -08:00
Tobias Bosch
33910ddfc9
refactor(compiler): store metadata of top level symbols also in summaries ( #13289 )
...
This allows a build using summaries to not need .metadata.json files at all
any more.
Part of #12787
2016-12-15 09:12:40 -08:00
Victor Berchet
6cefccb314
build: bump angular to 4.0.0-beta.0 & tsc-wrapped to 0.5.0
2016-12-14 16:42:44 -08:00
Victor Berchet
fa9e21e83c
fix(compiler): fix merge error in compiler_host
2016-12-14 15:36:49 -08:00
Chuck Jazdzewski
b6078f5887
fix(compiler): update to metadata version 3 ( #13464 )
...
This change retracts support for metadata version 2.
The collector used to produce version 2 metadata was incomplete
and can cause the AOT compiler to fail to resolve symbols or
produce other spurious errors.
All libraries compiled and published with 2.3.0 ngc will need
to be recompiled and updated with this change.
2016-12-14 15:28:51 -08:00
Victor Berchet
c65b4fa9dc
refactor: format & lint
2016-12-14 15:10:43 -08:00
Dzmitry Shylovich
169ed82900
feat(testing): add overrideTemplate method ( #13372 )
...
Closes #10685
2016-12-14 15:05:17 -08:00
Matias Niemelä
fd8e15b15d
chore(animations/aot): always export NoOpAnimationDriver ( #13480 )
2016-12-14 14:51:29 -08:00
Victor Berchet
aa40366a92
fix(compiler): fix simplify a reference without a name
...
closes #13470
2016-12-14 14:33:10 -08:00
Victor Berchet
40d8d9c3e3
fix(tsc-wrapped): generate metadata for exports without module specifier
...
fixes #13327
2016-12-14 14:33:04 -08:00
Victor Berchet
ee2ac025ef
fix(compiler): propagate exports when upgrading metadata to v2
2016-12-14 14:33:04 -08:00
Alex Rickabaugh
aa3769ba69
fix(compiler): resolver should merge host bindings and listeners ( #13474 )
...
fixes #13327
2016-12-14 14:31:57 -08:00
Victor Berchet
d4ddb6004e
refactor: format & lint
2016-12-14 13:05:04 -08:00
Peter Bacon Darwin
84400bcc86
docs(upgrade): fix UpgradeAdapter examples
...
closes #12675
2016-12-14 13:02:31 -08:00
Peter Bacon Darwin
42d9998cbb
docs(upgrade/upgrade_adapter): fix up references to AngularJS and Angular 2
2016-12-14 13:02:27 -08:00
Eudes Petonnet-Vincent
c18d2fe5e3
feat(upgrade): enable Angular 1 unit testing of upgrade module
...
- New method `UpgradeAdapter.registerForNg1Tests(modules)` declares the
Angular 1 upgrade module and provides it to the `angular.mock.module()`
helper.
This prevents the need to bootstrap the entire hybrid for every test.
Closes #5462 , #12675
2016-12-14 13:02:27 -08:00
Eudes Petonnet-Vincent
d91a86aac6
fix(upgrade): fix downgrade content projection and injector inheritance
...
- Full support for content projection in downgraded Angular 2
components. In particular, this enables multi-slot projection and
other features on <ng-content>.
- Correctly wire up hierarchical injectors for downgraded Angular 2
components: downgraded components inherit the injector of the first
other downgraded Angular 2 component they find up the DOM tree.
Closes #6629 , #7727 , #8729 , #9643 , #9649 , #12675
2016-12-14 13:02:27 -08:00
Peter Bacon Darwin
d6e5e9283c
refactor(upgrade/upgrade_adapter): use `Deferred` helper
...
Making Angular 1's `$compile` asynchronous by chaining injector promises
in linking functions can cause flickering views in applications.
2016-12-14 13:02:27 -08:00
Peter Bacon Darwin
eab7e490c9
refactor(upgrade/util): remove unused `stringify()` method
2016-12-14 13:02:27 -08:00
Peter Bacon Darwin
3e90605db9
refactor(compiler/template_parser): export `createElementCssSelector`
...
This is needed in `ngUpgrade`.
2016-12-14 13:02:27 -08:00
Peter Bacon Darwin
79671a6f12
refactor(upgrade): add missing Angular 1 type info
2016-12-14 13:02:27 -08:00
Miško Hevery
a659259962
fix(core): detectChanges() doesn't work on detached instance
...
Closes #13426
Closes #13472
2016-12-14 13:01:06 -08:00
Matias Niemelä
b56474d067
fix(animations): throw errors and normalize offset beyond the range of [0,1]
...
Closes #13348
Closes #13440
2016-12-14 12:59:47 -08:00
Matias Niemelä
8395f0e138
perf(animations): always run the animation queue outside of zones
...
Related #12732
Closes #13440
2016-12-14 12:59:36 -08:00
Chuck Jazdzewski
dd0519abad
fix(compiler): emit quoted object literal keys if the source is quoted
...
feat(tsc-wrapped): recored when to quote a object literal key
Collecting quoted literals is off by default as it introduces
a breaking change in the .metadata.json file. A follow-up commit
will address this.
Fixes #13249
Closes #13356
2016-12-14 12:58:41 -08:00
Victor Berchet
f238c8ac7a
Revert "fix(compiler): xmb `<ph>` tags should not self close ( #13413 )"
...
This reverts commit 4b3d135193
.
closes #13463
2016-12-14 12:54:58 -08:00
Victor Berchet
8c27c62fab
Revert "test(i18n): fix a typo in the reference xmb ( #13441 )"
...
This reverts commit a8d237581d
.
2016-12-14 12:54:50 -08:00
Bradford C. Smith
5031adc7a3
refactor(facade): don't expect super() to return a new Error object in BaseError ( #12600 )
...
Related to #12575
2016-12-14 11:54:57 -08:00
gary-b
821b8f09d6
fix(forms): ensure select[multiple] retains selections
...
If you bound an array to select[multiple] via ngModel and subsequently
changed the options to select from, the UI would drop any selections
made since by the user. This was due to
SelectMultipleControlValueAccessor not keeping a reference to the new
model arrays it generated when users interacted with the select control.
Update code to keep the reference.
Closes #12527
Closes #12654
2016-12-14 08:52:07 -08:00
Dzmitry Shylovich
2bf1bbc071
fix(forms): introduce checkbox required validator
...
Closes #11459
Closes #13364
2016-12-14 08:44:24 -08:00
gary-b
7b0a86718c
fix (forms): clear selected options when model is not an array ( #12519 )
...
When an invalid model value (eg empty string) was preset ngModel on
select[multiple] would throw an error, which is inconsistent with how it
works on other user input elements. Setting the model value to null or
undefined would also have no effect on what was already selected in the
UI. Fix this by clearing selected options when model set to null,
undefined or a type other than Array.
Closes #11926
2016-12-14 08:34:19 -08:00
Pawel Kozlowski
3edca4d37e
fix(core): properly destroy embedded Views attatched to ApplicationRef ( #13459 )
...
Fixes #13062
2016-12-14 08:33:29 -08:00
Victor Berchet
a0a05041ac
refactor: format & lint
2016-12-13 17:44:52 -08:00
Hans
7256d0ede5
chore(internal API): introduce an internal API for ngtools. ( #13415 )
2016-12-13 17:35:06 -08:00
Hans
d62d89319e
fix(compiler): generated CSS files suffixed with ngstyle. ( #13353 )
...
Mirrors factories which ends in `ngfactory`.
Closes #13141 .
2016-12-13 17:34:46 -08:00
Tobias Bosch
f5f1d5f65c
fix(compiler): make sure provider values with `name` property don’t break.
...
Fixes #13394
Closes #13445
2016-12-13 17:25:59 -08:00
Victor Berchet
a8d237581d
test(i18n): fix a typo in the reference xmb ( #13441 )
2016-12-13 12:35:09 -08:00
Pawel Kozlowski
d036165a19
refactor: remove intl from facades ( #13404 )
...
The existing intl.ts file is not a facade but
rather a set of utils used by i18n-related pipes only.
As such moving it back to common module so those utils
are not used accidently from other places.
2016-12-13 12:34:50 -08:00
Marc Laval
d17e690eb4
test(upgrade): fix failing test in browsers which do not support RAF
...
closes #13399
2016-12-13 12:28:44 -08:00
Chuck Jazdzewski
2b90cd532f
fix(compiler): narrow the span reported for invalid pipes
...
fixes #13326
closes #13411
2016-12-13 11:23:47 -08:00
Chuck Jazdzewski
3a64ad895a
fix(language-service): correctly type undefined
...
fixes #13412
closes #13414
2016-12-13 11:23:08 -08:00
Chuck Jazdzewski
9ec0a4e105
feat(language-service): warn when a method isn't called in an event ( #13437 )
...
Closes 13435
2016-12-13 11:20:45 -08:00
Victor Berchet
4b3d135193
fix(compiler): xmb `<ph>` tags should not self close ( #13413 )
2016-12-12 19:10:20 -08:00
Dzmitry Shylovich
1d0ed6f75f
docs(core): update OnDestroy description ( #13369 )
...
Closes #11228
2016-12-12 16:45:56 -08:00
Chuck Jazdzewski
6f330a5fc9
fix(language-service): treat string unions as strings ( #13406 )
...
Fixes #13403
2016-12-12 16:42:20 -08:00
Victor Berchet
7295a5e7f2
refactor: format and lint code
2016-12-12 11:30:25 -08:00
Misko Hevery
20bed46737
docs(Location): updating Location docs and adding example
...
closes #11500
2016-12-12 11:19:21 -08:00
Misko Hevery
2a5012d515
chore: Add @types/systemjs
2016-12-12 11:19:05 -08:00
Jesús Rodríguez
fb38fba8f9
chore: convert hash_location_strategy example to a tested spec
2016-12-12 11:19:05 -08:00
Dzmitry Shylovich
4c35be3e07
feat(forms): add novalidate by default ( #13092 )
2016-12-12 11:17:42 -08:00
Dzmitry Shylovich
e9f307f948
fix(forms): fix Validators.min/maxLength with FormArray ( #13095 )
...
Fixes #13089
2016-12-12 11:17:12 -08:00
Dzmitry Shylovich
2e500cc85b
fix(http): create a copy of headers when merge options ( #13365 )
...
Closes #11980
2016-12-12 11:16:34 -08:00
Dzmitry Shylovich
56dce0e26d
feat(common): export NgLocaleLocalization ( #13367 )
...
Closes #11921
2016-12-12 11:16:12 -08:00
Dzmitry Shylovich
8a8c53250e
fix(dom_adapter): remove logError from logGroup ( #12925 )
2016-12-09 15:40:26 -08:00
domusofsail
08ff2e5249
fix(http): check response body text against undefined ( #13017 )
2016-12-09 15:39:39 -08:00
Dzmitry Shylovich
a006c1418a
feat(router): routerLink add tabindex attribute ( #13094 )
...
Fixes #10895
2016-12-09 15:38:50 -08:00
Dzmitry Shylovich
90c223591f
feat(http): simplify URLSearchParams creation ( #13338 )
...
Closes #8858
2016-12-09 15:38:29 -08:00
Victor Berchet
aaf6e05f56
refactor(commonn): fix lint issues
...
closes #13352
2016-12-09 15:37:46 -08:00
Victor Berchet
3bee521aa4
fix(compiler): support dotted property binding
...
fixes angular/flex-layout#34
2016-12-09 15:37:41 -08:00
Victor Berchet
95f48292b1
test(Selector): add a test for dotted attribute names
2016-12-09 15:37:41 -08:00
Victor Berchet
04cfa1ebdf
refactor(Compiler): cleanup
2016-12-09 15:37:41 -08:00
Victor Berchet
4022173d1e
fix(compiler): fix PR 13322 ( #13331 )
2016-12-09 11:22:44 -08:00
Victor Berchet
c8baf51f4f
style: clang-format the code
2016-12-09 11:19:55 -08:00
Misko Hevery
b4db73d0bf
feat: ngIf now supports else; saves condition to local var
...
NgIf syntax has been extended to support else clause to display template
when the condition is false. In addition the condition value can now
be stored in local variable, for later reuse. This is especially useful
when used with the `async` pipe.
Example:
```
<div *ngIf="userObservable | async; else loading; let user">
Hello {{user.last}}, {{user.first}}!
</div>
<template #loading>Waiting...</template>
```
closes #13061
closes #13297
2016-12-09 11:19:08 -08:00
Misko Hevery
e15a3f273f
fix: Better instructions on running examples and their tests
2016-12-09 11:16:49 -08:00
Misko Hevery
213c713409
fix: Better error when directive not listed in NgModule.declarations
2016-12-09 11:16:28 -08:00
Dzmitry Shylovich
9a8423da36
fix(selector): SelectorMatcher match elements with :not selector ( #12977 )
2016-12-09 10:45:48 -08:00
Matias Niemelä
f0b0762f4a
fix(animations): always cleanup players after they have finished internally ( #13334 )
...
Closes #13333
Closes #13334
2016-12-09 10:45:10 -08:00
Victor Berchet
b5c4bf1c59
refactor(router): misc refactoring ( #13330 )
2016-12-09 10:44:46 -08:00
maxime-allex
56c361ff6a
test(compiler): test i18n explicit id
...
closes #13272
2016-12-09 10:43:57 -08:00
maxime-allex
562f7a2f8b
feat(compiler): digest methods return i18nMessage id if sets
2016-12-09 10:43:47 -08:00
maxime-allex
6dd5201765
feat(compiler): add id property to i18nMessage
2016-12-09 10:43:47 -08:00
Dzmitry Shylovich
72361fb68f
feat(platform browser): introduce Meta service ( #12322 )
2016-12-08 18:44:28 -08:00
Victor Berchet
5c6ec20c7e
refactor(router): simplify regexp
...
closes #11373
closes #13329
2016-12-08 18:43:17 -08:00
Andy Howell
440ef02f29
fix(router): add support for query params with mulitple values
...
closes #11373
2016-12-08 18:42:58 -08:00
Victor Berchet
4e3d58a792
Revert "fix(compiler): fix transpiled ES5 code ( #13322 )"
...
This reverts commit 4398056146
.
2016-12-08 17:53:58 -08:00
Victor Berchet
61d7c1e0b3
feat(common): add a `titlecase` pipe ( #13324 )
...
closes #11436
2016-12-08 16:33:24 -08:00
Victor Berchet
4398056146
fix(compiler): fix transpiled ES5 code ( #13322 )
...
fixes #13301
The inner class would transpile to a nested function declaration which is not
allowed in ES5.
See http://eslint.org/docs/rules/no-inner-declarations
2016-12-08 15:02:59 -08:00
Jónatan Núñez
9591a08dfb
fix(router): Use T type in Resolve interface ( #13242 )
2016-12-08 11:24:38 -08:00
Alex Rickabaugh
13b41bd631
chore(release): update version of tsc-wrapped to 0.4.2
2016-12-07 13:54:22 -08:00
Chuck Jazdzewski
4a09c81724
fix(language-service): do not throw for invalid metadata ( #13261 )
...
Fixes #13255
2016-12-06 17:11:09 -08:00
Miško Hevery
16efb13dd1
fix: display framework version on bootstrapped component ( #13252 )
2016-12-06 16:21:07 -08:00
Dzmitry Shylovich
986abbe0b2
fix(http): set the default Accept header ( #12989 )
...
Fixes #6354
2016-12-06 16:20:43 -08:00
Chuck Jazdzewski
25c2141991
fix(language-service): remove incompletely used parameter from `createLanguageServiceFromTypescript()` ( #13278 )
...
Fixes #13277
2016-12-06 16:19:39 -08:00
Dzmitry Shylovich
2893c2c0a2
fix(router): validate nested routes ( #13224 )
...
Fixes #12827
2016-12-06 10:41:01 -08:00
Victor Berchet
66b6fc010d
refactor(common): unify export structure
2016-12-06 10:40:38 -08:00
Chuck Jazdzewski
f31c9470fa
fix(compiler): short-circut expressions with an index ( #13263 )
...
Fixes #13254
2016-12-06 10:40:15 -08:00
Maxime Robert
4bd8f58552
FIX typo ( #13267 )
2016-12-06 10:40:01 -08:00
Chuck Jazdzewski
93556a5720
fix(language-service): avoid throwing for invalid class declarations ( #13257 )
...
Fixes #13253
2016-12-06 09:56:30 -08:00
Tobias Bosch
5614c4ff0f
fix(compiler): serialize any `StaticSymbol` correctly, not matter in which context.
2016-12-05 14:20:01 -08:00
Tobias Bosch
c3065aac7a
refactor(compiler): replace `isStaticSymbol` with `instanceof StaticSymbol`
2016-12-05 14:20:01 -08:00
vsavkin
c767df0e4e
fix(router): throw a better error message when angular 1 is not bootstraped
2016-12-05 10:57:24 -08:00
vsavkin
25e5b2fdf0
fix(router): make setUpLocationChangeListener idempotent
2016-12-05 10:57:24 -08:00
Victor Berchet
307c4693dc
refactor(router): code cleanup
2016-12-05 10:54:10 -08:00
Victor Berchet
349ad75de3
fix(router): fix replaceUrl on RouterLink directives
2016-12-05 10:54:10 -08:00
Victor Berchet
f562cbf86c
fix(router): fix skipLocationChanges on RouterLink directives
...
fixes #13156
2016-12-05 10:54:10 -08:00
Victor Berchet
804943c9b1
refactor(router): cleanup RouterLink
2016-12-05 10:54:10 -08:00
André Werlang
a1322873c8
fix(facade): cache original format string ( #12764 )
2016-12-05 10:26:59 -08:00
Sarun Rattanasiri
b8c839bd51
docs(cheatsheet): correct HostBinding decorator example ( #13206 )
2016-12-05 10:25:40 -08:00
Chuck Jazdzewski
6cf7a1bf84
refactor(build): fix build location of compiler-cli esm module ( #13212 )
2016-12-02 15:19:52 -08:00
Victor Savkin
d46b8deeea
fix(router): runs guards every time when unsuccessfully navigating to the same url over and over again ( #13209 )
2016-12-02 15:19:00 -08:00
Dzmitry Shylovich
bbb7a39414
fix(router): allow specifying a matcher wihtout specifying a path
...
fixes #12972
2016-12-02 15:03:59 -08:00
Victor Berchet
d7d8fab211
refactor(router): cleanup config
2016-12-02 15:03:59 -08:00
Sarun Rattanasiri
51b06924bd
docs(core): correct HostListener typo ( #13203 )
2016-12-02 14:45:47 -08:00
Chuck Jazdzewski
3ff6554cbc
fix(language-service): update to use `CompilerHost` from compiler-cli ( #13189 )
2016-12-02 14:34:16 -08:00
Bowen Ni
dfd8140084
Fix format
2016-12-02 14:31:55 -08:00
Bowen Ni
6ea3ab7e14
Fix exit code. Give a specific type. Add test cases.
2016-12-02 14:31:55 -08:00
Bowen Ni
9761db5ac2
refactor(compiler): change ngc error handling
...
Do not print stack trace for user errors
Print stack trace for compiler internal errors
2016-12-02 14:31:55 -08:00
Tobias Bosch
75d1617b63
fix(compiler): include the summaries of reexported modules / directives / pipes ( #13196 )
...
Only if these are not part of the sources.
2016-12-02 10:08:46 -08:00
Tobias Bosch
614a35d539
feat(compiler): read and write `.ngsummary.json` files
...
When compiling libraries, this feature extracts the minimal information
from the directives/pipes/modules of the library into `.ngsummary.json` files,
so that applications that use this library only need to be recompiled
if one of the summary files change, but not on every change
of the libraries (e.g. one of the templates).
Only works if individual codegen for libraries is enabled,
see the `generateCodeForLibraries: false` option.
Closes #12787
2016-12-01 14:49:52 -08:00
Tobias Bosch
9ab401f4d3
refactor(compiler): simplify `NgModuleSymmaryMetadata`
...
- merge `NgModuleInjectorSummary` and `NgModuleDirectiveSummary`
- remove `directiveLoaders` from the summary
2016-12-01 14:49:52 -08:00
Victor Berchet
82c81cd0d2
fix(common): make sure the plural category exists ( #13169 )
...
fixes #12379
2016-12-01 13:26:24 -08:00
liufc
12959f444c
refactor(router):remove unused parameter pathIndex ( #13180 )
2016-12-01 13:25:53 -08:00
Chuck Jazdzewski
25a6da244c
refactor(compiler-cli): refactor compiler host parameters ( #13147 )
2016-12-01 13:24:51 -08:00
Alex Rickabaugh
ae26504e84
fix(core): update peer dep on zone.js to ^0.7.2
2016-11-30 15:42:56 -08:00
Chuck Jazdzewski
2975d8933c
fix(language-service): harden against partial normalization of directives
2016-11-30 14:55:56 -08:00
Chuck Jazdzewski
43c0e9a6bb
fix(compiler): fix performance regression caused by 5b0f9e2
...
Fixes #13146
2016-11-30 14:55:56 -08:00
Alex Rickabaugh
f275f36081
fix(version): take all of version string after patch version
2016-11-30 14:25:11 -08:00
Victor Savkin
e628b66cca
feat(build): record angular version in the dom ( #13164 )
2016-11-30 13:52:08 -08:00
Tobias Bosch
3e73bea3e7
refactor(compiler): convert metadata classes used in summaries into interfaces ( #13123 )
...
Part of #12787
2016-11-30 10:52:51 -08:00
vsavkin
42cf06fa12
feat(router): add support for custom route reuse strategies
2016-11-29 23:21:41 -08:00
Misko Hevery
c4bbafc291
feat: upgrade zone.js to v0.7.1
2016-11-29 17:24:00 -08:00
Misko Hevery
2d6a003dba
feat: update RxJS peer dependency to 5.0.0-rc.4
...
Closes #13125
RxJS from beta-12 to rc.4, has removed the `cache`
operator. (See https://github.com/ReactiveX/rxjs/blob/master/CHANGELOG.md#breaking-changes-1 )
If your application relies on it, then we suggest
that you use the one from this gist:
https://gist.github.com/robwormald/19dea0c70a6e01aadced6731aed4f9f7
2016-11-29 16:27:33 -08:00
Tobias Bosch
627282d2c8
fix(compiler): correctly evaluate references to static functions ( #13133 )
2016-11-29 12:02:50 -08:00
Tobias Bosch
2f7492c986
refactor(compiler): remove unneeded fields from metadata
...
Removes `CompileIdentifierMetadata.name` / `.moduleUrl`,
as well as `CompileTypeMetadata.name / moduleUrl` and
`CompileFactoryMetadata.name / moduleUrl`.
2016-11-28 15:19:23 -08:00
Tobias Bosch
2452cd14e0
refactor(compiler): drop old codegen tests that run inside of `test.sh`
...
These tests were hard to maintain and only yielded little value,
now that we have the full integration with TypeScript.
2016-11-28 15:19:23 -08:00
Tobias Bosch
966bcbad5a
fix(compiler-cli): pin the version of `tsc-wrapped`
2016-11-28 15:18:56 -08:00
Flounn
94b8612e4e
Fix(http): invalidStateError response body
...
Check on null value failed with last version of mozilla.
Check on undefined type instead.
2016-11-28 14:36:32 -08:00
Brian Michalski
b2b72190f8
fix(common): update DatePipe to allow closure compilation
...
Quote the date formats to prevent closure renaming. These are specified as strings in templates using DatePipes and also need to be quoted here.
2016-11-28 14:36:12 -08:00
Tobias Bosch
f5c8e0989d
feat(core): properly support inheritance
...
## Inheritance Semantics:
Decorators:
1) list the decorators of the class and its parents in the ancestor first order
2) only use the last decorator of each kind (e.g. @Component / ...)
Constructor parameters:
If a class inherits from a parent class and does not declare
a constructor, it inherits the parent class constructor,
and with it the parameter metadata of that parent class.
Lifecycle hooks:
Follow the normal class inheritance model,
i.e. lifecycle hooks of parent classes will be called
even if the method is not overwritten in the child class.
## Example
E.g. the following is a valid use of inheritance and it will
also inherit all metadata:
```
@Directive({selector: 'someDir'})
class ParentDirective {
constructor(someDep: SomeDep) {}
ngOnInit() {}
}
class ChildDirective extends ParentDirective {}
```
Closes #11606
Closes #12892
2016-11-28 14:12:12 -08:00
Tim Blair
4a09251921
doc(common): fix a typo in async pipe
2016-11-28 14:11:45 -08:00
PatrickJS
36caaaa8e4
refactor(core): remove unused import
...
APP_ID was removed after 2.2.x
2016-11-28 14:11:25 -08:00
Pawel Kozlowski
808275a9d5
feat(core): expose destroy() method on ViewRef
2016-11-28 14:10:42 -08:00
Matias Niemelä
be3784c957
revert: fix(animations): blend in all previously transitioned styles into next animation if interrupted
...
This reverts commit ef96763fa4
.
2016-11-28 13:23:52 -08:00
vsavkin
7194fc2b9e
fix(language-service): make link check pass
2016-11-23 16:21:06 -08:00
Igor Minar
2a3ca7bfcf
fix(compiler-cli): fix paths in source maps to be relative
...
The change looks bigger than it really is because I reordered the properties to match other tsconfigs we have.
The only real change is removal of sourceRoot property.
Fixes #13040
2016-11-23 15:48:24 -08:00
Bowen Ni
4cbf8ccf05
Keep `console.log` that are not called during compilation.
2016-11-23 15:47:02 -08:00
Bowen Ni
a6c4490fce
Check if `console.error` is defined
2016-11-23 15:47:02 -08:00
Bowen Ni
2c02d34c05
refactor(lint): Don't allow console.log
...
Enable tslint check for `console.log` as a follow-up to
https://github.com/angular/angular/issues/13018
2016-11-23 15:47:01 -08:00
Tobias Bosch
6c2d931744
chore: make test.sh work again
...
Previously, `test.sh` relied on calling `build.sh` first
2016-11-23 14:23:05 -08:00
Chuck Jazdzewski
3e548de99d
Revert "fix(router): guards restor an incorrect url when used with skipLocationChange"
...
This reverts commit ad20d7d260
.
2016-11-22 13:31:33 -08:00
Pete Bacon Darwin
909268036b
test(upgrade): remove `setTimeout` from lifecycle hook tests ( #13027 )
...
* test(upgrade): remove unnecessary NO_ERRORS_SCHEMA
* test(upgrade): remove `setTimeout` from lifecycle hook tests
Closes #13019
2016-11-22 09:21:03 -08:00
Chuck Jazdzewski
519a324454
feat(language-service): add services to support editors ( #12987 )
2016-11-22 09:10:23 -08:00
Matias Niemelä
ef96763fa4
fix(animations): blend in all previously transitioned styles into next animation if interrupted ( #13014 )
...
Closes #13013
Closes #13014
2016-11-21 15:46:59 -08:00
Brian Michalski
7dcca307d9
fix(closure): quote date pattern aliases ( #13012 )
...
Quota the pattern aliases to prevent closure renaming. These are quoted in DatePipe and also need to be quoted here.
2016-11-21 11:45:48 -08:00
Chuck Jazdzewski
491d5a22a9
refactor(compiler): allow control of StaticSymbol lifetime ( #12986 )
2016-11-18 16:58:14 -08:00
Sammy Jelin
44572f114f
refactor(ngUpgrade): Small cleanup with Testability API and resumeBootstrap ( #12926 )
...
* With non-static ngUpgrade apps, callbacks to `whenStable` were being invoked with the wrong
context
* With non-static ngUpgrade apps, `resumeBootstrap` was being run outside the NgZone
* Remove redundent `whenStableContext` variable
Neither of the first two problems were actually causing bugs (as far as I know), but they *might*
have caused problems in the future.
Inspired by https://github.com/angular/angular/pull/12910 , but for non-static apps.
2016-11-18 14:30:47 -08:00
Brady Isom
1ef4696cb7
fix(upgrade): call ng1 lifecycle hooks ( #12875 )
2016-11-18 13:46:49 -08:00
Tobias Bosch
59d2b4c831
refactor(compiler): further minor fixes
2016-11-18 10:04:14 -08:00
Tobias Bosch
2a5bd2f345
refactor(compiler): Reintroduce `ReflectorHost` and move `Extractor` into `@angular/compiler`
2016-11-18 10:04:14 -08:00
Tobias Bosch
3c06a5dc25
refactor(comiler): various cleanups
2016-11-18 10:04:14 -08:00
Tobias Bosch
adeea5d86a
refactor(compiler): renames
...
- `NgHost` to `CompilerHost`
- `AotCompilerHost.resolveFileToImport` to `AotCompilerHost.fileNameToModuleName`
- `AotCompilerHoset.resolveImportToFile` to `AotCompilerHost.moduleNameToFileName`
2016-11-18 10:04:14 -08:00
Tobias Bosch
dddbb1c1cb
refactor(tsc-wrapped): collect all exported functions and classes and bump metadata version from 1 to 2
...
This is needed to resolve symbols without `.d.ts` files.
This bumps the version of the metadata from 1 to 2.
This adds logic into `ng_host.ts` to automatically upgrade
version 1 to version 2 metadata by adding the exported symbols
from the `.d.ts` file.
2016-11-18 10:04:14 -08:00
Tobias Bosch
bccf0e69dc
fix(compiler): fix versions of `@angular/tsc-wrapped`
2016-11-18 10:04:14 -08:00
Tobias Bosch
b15039d228
refactor(compiler): move symbol extraction to `AotCompiler`
2016-11-18 10:04:14 -08:00
Tobias Bosch
2235048432
refactor(compiler): add `createAotCompiler` factory
...
Also adds 2 more methods to the `AotCompilerHost`:
- `loadResource`
- `resolveFileToImport`
2016-11-18 10:04:14 -08:00
Tobias Bosch
484119e59f
refactor(compiler): remove `asset:` urls
...
These urls were just relicts from Dart.
2016-11-18 10:04:14 -08:00
Tobias Bosch
24099bdbd2
refactor(compiler): move `findDeclaration` into the `StaticReflector`
...
Previously, this was part of the `AotCompilerHost`.
The `AotCompilerHost` is now also greatly simplified.
2016-11-18 10:04:14 -08:00
Tobias Bosch
912ca44979
refactor(compiler): move `static_reflector` into `@angular/compiler` and rename files
...
- `src/runtime_compiler.ts` -> `src/jit/compiler.ts`
- `src/compiler.ts` -> `src/jit/compiler_factory.ts`
- `src/offline_compiler` -> `src/aot/compiler.ts`
Part of #12867
2016-11-18 10:04:14 -08:00
Alex Eagle
664a6273e1
feature(tsc-wrapped): add option for closure compiler JSDoc annotations
2016-11-18 09:37:40 -08:00
Tobias Bosch
fc5ac1ebc4
fix(benchmarks): use sanitized style values ( #12943 )
2016-11-17 15:18:10 -08:00
vsavkin
ad20d7d260
fix(router): guards restor an incorrect url when used with skipLocationChange
...
Closes #12825
2016-11-17 14:10:59 -08:00
vsavkin
602522beb2
fix(router): support redirects to named outlets
...
Closes #12740 , #9921
2016-11-17 14:10:59 -08:00
Chuck Jazdzewski
f340e1a414
fix(tools): fix error when running test.sh ( #12927 )
2016-11-16 13:35:31 -08:00
Chuck Jazdzewski
481c9b3258
refactor(compiler): allows synchronous retrieving of metadata ( #12908 )
...
Allows non-normalized metadata to be retrieved synchronously.
Related to #7482
2016-11-16 10:22:11 -08:00
Tobias Bosch
8b2dfb2eca
fix(core): support `ngTemplateOutlet` in production mode ( #12921 )
...
Fixes #12911
2016-11-16 10:00:18 -08:00
Peter Bacon Darwin
824ea8406c
docs(upgrade/static): improve API docs with examples
...
Closes #12717
2016-11-16 09:18:17 -08:00
Peter Bacon Darwin
1f96a93f59
chore(public_api): remove Angular 1 types from upgrade/static API
2016-11-16 09:18:10 -08:00
Peter Bacon Darwin
009d545787
chore(examples): add upgrade/static example
2016-11-16 09:18:10 -08:00
Peter Bacon Darwin
53c25210a6
chore(examples): support upgrade/static examples
2016-11-16 09:18:10 -08:00
Victor Savkin
927aa69726
fix(router): add a banner file for the router ( #12919 )
2016-11-16 09:17:19 -08:00
Dzmitry Shylovich
ce89039036
fix(platform_browser): fix disableDebugTools() ( #12918 )
2016-11-16 09:16:40 -08:00
Sammy Jelin
42198cd7d5
fix(ngUpgrade): make AoT ngUpgrade work with the testability API and resumeBootstrap() ( #12910 )
2016-11-16 01:04:56 -08:00
Victor Savkin
773b31de8f
fix(router): should not create a route state if navigation is canceled ( #12868 )
...
Closes #12776
2016-11-15 19:00:20 -08:00
Dzmitry Shylovich
f79b320fc4
refactor(forms): remove facade ( #12558 )
2016-11-15 18:48:34 -08:00
vsavkin
6a212fd561
fix(router): removes a peer dependency from router to upgrade
2016-11-15 18:37:08 -08:00
Matias Niemelä
be010a292a
fix(animations): only pass in same typed players as previous players into web-animations ( #12907 )
...
Closes #12907
2016-11-15 17:47:21 -08:00
Dzmitry Shylovich
7c36e7f956
chore(router): remove @angular/upgrade peer dep ( #12896 )
2016-11-15 14:00:11 -08:00
João Dias
13ba2f90b9
refactor(http): remove all facade methods from http module ( #12870 )
2016-11-15 09:19:14 -08:00
Alex Eagle
75277cd94b
fix(tsickle): support ctorParams in function closure ( #12876 )
...
See https://github.com/angular/tsickle/issues/261 for context.
2016-11-15 09:19:00 -08:00
Dzmitry Shylovich
46d150266b
feat(router_link): add skipLocationChange and replaceUrl inputs ( #12850 )
2016-11-14 18:30:13 -08:00
Tobias Bosch
1b5384ee54
feat(core): expose `ViewRef` as `ChangeDetectorRef`
...
closes #12722
This is helpful when manually dirty checking embedded views.
2016-11-14 17:01:41 -08:00
Tobias Bosch
9f7d32a326
feat(core): add `attachView` / `detachView` to ApplicationRef
...
This feature is useful to allow components / embedded views
to be dirty checked if they are not placed in any `ViewContainer`.
Closes #9293
2016-11-14 17:01:35 -08:00
Matias Niemelä
9de76ebfa5
fix(animations): retain styling when transition destinations are changed ( #12208 )
...
Closes #9661
Closes #12208
2016-11-14 16:59:06 -08:00
Dzmitry Shylovich
46023e4792
fix(select): allow for null values in HTML select options bound with ngValue
...
closes #12829
2016-11-14 16:47:14 -08:00
Craig Hutchison
b55aaf094f
fix: allow for null values in HTML select options bound with ngValue
...
This corrects the case of <option [ngValue]="null"> binding a string like "{0: null}" to the model instead of an actual null object.
Closes #10349
2016-11-14 16:47:09 -08:00
Craig Hutchison
d90b622fa4
fix: allow for null values in HTML select options bound with ngValue
...
This corrects the case of <option [ngValue]="null"> binding a string like "{0: null}" to the model instead of an actual null object.
Closes #10349
2016-11-14 16:47:09 -08:00
Victor Berchet
79e2bb9291
refactor(core): remove dead code ( #12871 )
2016-11-14 16:44:25 -08:00
Victor Berchet
efbbefd353
fix(platform-browser): enable AOT
...
closes #12783
2016-11-14 12:57:11 -08:00
vsavkin
c2fae72bc6
feat(router): register router with ngprobe
2016-11-14 12:57:05 -08:00
Victor Berchet
7908679c4b
fix(compiler): assert xliff messages have translations
...
fixes #12815
closes #12604
2016-11-14 12:55:56 -08:00
Victor Berchet
9ed9ff40b3
test(compiler): improve xliff tests
2016-11-14 12:55:48 -08:00
Victor Berchet
2f14415836
fix(compiler): updates hash algo for xmb/xtb files
2016-11-14 12:55:48 -08:00
Victor Berchet
76e4911e8b
fix(core): fix placeholders handling in i18n.
...
Prior to this commit, translations were built in the serializers. This
could not work as a single translation can be used for different source
messages having different placeholder content.
Serializers do not try to replace the placeholders any more.
Placeholders are replaced by the translation bundle and the source
message is given as parameter so that the content of the placeholders is
taken into account.
Also XMB ids are now independent of the expression which is replaced by
a placeholder in the extracted file.
fixes #12512
2016-11-14 12:55:48 -08:00
Victor Berchet
ed5e98d0df
fix(core): misc i18n fixes
2016-11-14 12:55:48 -08:00
Victor Berchet
146af1fed9
refactor(core): simplify i18n serializers code
2016-11-14 12:55:48 -08:00
Victor Berchet
c60ba7a72f
refactor(core): remove ListWrapper from i18n
2016-11-14 12:55:48 -08:00
Victor Berchet
05beffe0d0
test(core): fix a typo in the i18n integration spec
2016-11-14 12:55:48 -08:00
Victor Berchet
08c038ebd9
fix(core): xmb serializer uses decimal messaged IDs
...
fixes #12511
2016-11-14 12:55:48 -08:00
Victor Berchet
582550a90d
feat(core): implements a decimal fingerprint for i18n
2016-11-14 12:55:48 -08:00
Dzmitry Shylovich
1d53a870dd
fix(http): return request url if it cannot be retrieved from response
...
closes #12837
2016-11-14 12:54:43 -08:00
Dzmitry Shylovich
a0c58a6b5c
fix(http): correctly handle response body for 204 status code
...
closes #12830
fixes #12393
2016-11-14 12:36:22 -08:00
Dzmitry Shylovich
d3eff6c483
refactor(xhr_backend): remove facade
2016-11-14 12:36:16 -08:00
Joao Dias
77ee27c59e
refactor(): use const and let instead of var
2016-11-12 16:40:17 -08:00
Ferhat
73593d4bf3
perf(platform-browser): cache plugin resolution in the EventManager
...
closes #12824
2016-11-11 17:19:47 -08:00
Chuck Jazdzewski
a965d11cce
fix(compiler): generate safe access strictNullChecks compatible code ( #12800 )
...
fixes #12795
2016-11-11 17:12:17 -08:00
Victor Savkin
52be848f94
fix(router): incorrect injector is used when instantiating components loaded lazily ( #12817 )
2016-11-11 17:12:00 -08:00
Tobias Bosch
69dfcf7385
docs(forms): add inline docs why `ngModel` runs a 2nd change detection run ( #12821 )
...
Related to #11895
2016-11-11 15:24:11 -08:00
Dzmitry Shylovich
785b7b640e
fix(router): Route.isActive also compares query params ( #12321 )
2016-11-11 13:23:47 -08:00
vsavkin
e5a753e111
fix(router): router should not swallow "unhandled" errors
...
closes #12802
2016-11-11 13:22:19 -08:00
Dzmitry Shylovich
768cddbe62
fix(events): provide the ability to register global hammer.js events
...
closes #12797
2016-11-11 11:15:49 -08:00
Dzmitry Shylovich
92f244aa26
refactor(events): remove facade and clean up
2016-11-11 11:15:43 -08:00
Michael Seemann
2a4bf9a0df
fix(router): avoid router initialization for non root components
...
closes #12338
closes #12814
2016-11-11 11:15:17 -08:00
Victor Berchet
45ddd6ba78
cleanup(forms): remove facade ( #12804 )
2016-11-11 10:47:34 -08:00
Dzmitry Shylovich
7886561997
fix(router): check if windows.console exists before using it ( #12348 )
2016-11-11 10:46:53 -08:00
André Werlang
752edca81b
test(core): ngOnDestroy called before output events are detached ( #9946 )
...
closes #6984
closes #5436
2016-11-11 10:27:32 -08:00
Victor Berchet
1bd858fb43
build(examples): upgrade to protractor 4.0.9 ( #12803 )
...
closes #12798
2016-11-10 18:13:11 -08:00
Tobias Bosch
fcb4e66493
refactor(compiler): introduce summaries for metadata ( #12799 )
...
This does not yet introduce loading / serialization of summaries.
Part of #12787
2016-11-10 16:27:53 -08:00
Victor Berchet
ef881475e9
fix(forms): check if registerOnValidatorChange exists on validator before trying to invoke it ( #12801 )
...
closes #12593
2016-11-10 16:20:59 -08:00
Bruno da Silva joão
2aba8b0ff2
fix(common): no TZ Offset added by DatePipe for dates without time ( #12380 )
2016-11-10 14:57:04 -08:00
Dzmitry Shylovich
77dc1ab675
fix(router): throw an error when encounter undefined route ( #12389 )
2016-11-10 14:55:10 -08:00
Dzmitry Shylovich
3052fb234f
fix(router): ignore null or undefined query parameters ( #12333 )
2016-11-10 14:41:19 -08:00
Tobias Bosch
79383ce150
refactor(compiler): never create CompileDirectiveMetadata with not loaded resources ( #12788 )
...
Part of #12787
2016-11-10 14:07:30 -08:00
Chuck Jazdzewski
c3c0e2e2a2
refactor(compiler): add `span` to `TemplateBinding` ( #12792 )
...
fix(compiler): corrected error location for implicit templates expressions
2016-11-10 13:15:09 -08:00
Joao Dias
44a142fc02
chore(playground): use base64-js from npm
...
closes #12471
2016-11-10 12:08:04 -08:00
Joao Dias
3d9d839c6c
refactor(playground): make playground great again
2016-11-10 12:07:51 -08:00
Matias Niemelä
19e869e7c9
fix(animations): ensure animations work with web-workers ( #12656 )
2016-11-10 11:53:50 -08:00
Chuck Jazdzewski
7cab30f85d
refactor(compiler-cli): add position data to static reflector errors ( #12782 )
2016-11-09 16:29:22 -08:00
vsavkin
73407351e7
feat(router): add support for custom url matchers
...
Closes #12442
Closes #12772
2016-11-09 16:24:58 -08:00
vsavkin
2c110931f8
fix(router): do not require the creation of empty-path routes when no url left
...
Closes #12133
2016-11-09 16:24:49 -08:00
Victor Berchet
2ced2a8a5a
refactor(compiler): misc updates ( #12773 )
2016-11-09 16:23:41 -08:00
Pawel Kozlowski
634b3bb88b
feat(core): map 'for' attribute to 'htmlFor' property ( #10546 )
...
This improves ergonomics a bit by allowing people to write:
`<label [for]="ctxProp"></label>`.
This is similar to the existing class -> className mapping.
Closes #7516
2016-11-09 15:21:27 -08:00
Chuck Jazdzewski
4595a61aeb
refactor(compiler-cli): refactor imports in codegen to enable rollup ( #12781 )
2016-11-09 15:17:24 -08:00
Matias Niemelä
f80a157b65
fix(animations): ensure web-animations are caught within the Angular zone
...
Closes #11881
Closes #11712
Closes #12355
Closes #11881
Closes #12546
Closes #12707
Closes #12774
2016-11-09 15:16:34 -08:00
Victor Savkin
6e35d13fbc
feat(router): add a provider making angular1/angular2 integration easier ( #12769 )
2016-11-09 13:33:33 -08:00
Matias Niemelä
fe35bc34f6
fix(animations): allow animations to be destroyed manually ( #12719 )
...
Closes #12456
Closes #12719
2016-11-08 16:21:28 -08:00
Tobias Bosch
ad3bf6c54f
fix(core): apply host attributes to root elements ( #12761 )
...
Fixes #12744
2016-11-08 15:46:55 -08:00
Matias Niemelä
a0e9fde653
fix(animations): always normalize style properties and values during compilation ( #12755 )
...
Closes #11582
Closes #12481
Closes #12755
2016-11-08 15:45:30 -08:00
Dzmitry Shylovich
3dc61779f0
fix(DatePipe): handle empty string ( #12374 )
2016-11-08 15:45:12 -08:00
Dzmitry Shylovich
09092ac3c2
fix(forms): getRawValue returns any instead of Object ( #12599 )
2016-11-08 15:44:36 -08:00
Victor Berchet
778e6ad3b4
refactor: cleanup ICU message syntax
2016-11-08 15:44:18 -08:00
Victor Berchet
55dc0e4a5f
fix(compiler): use the other case by default in ICU messages
2016-11-08 15:44:18 -08:00
Victor Berchet
4708b248d5
fix(common): I18nSelectPipe selects other case on default
2016-11-08 15:44:18 -08:00
Victor Berchet
7694f974af
refactor: remove some facades ( #12731 )
2016-11-08 15:43:24 -08:00
Victor Berchet
acbf1d859c
fix(core): fix pseudo-selector shimming ( #12754 )
...
fixes #12730
fixes #12354
2016-11-07 13:56:04 -08:00
Pawel Kozlowski
f3793b5953
fix(NgClass): throw a descriptive error when CSS class is not a string ( #12662 )
...
Fixes #12586
2016-11-07 12:23:31 -08:00
Pawel Kozlowski
22c021c57f
fix(compiler): support more than 9 interpolations ( #12710 )
...
Fixes #10253
2016-11-07 12:23:03 -08:00
Tobias Bosch
d8f23f4b7f
fix(common): `NgSwitch` - don’t create the default case if another case matches ( #12726 )
...
This also simplifies the implementation of `NgSwitch`.
Closes #11297
Closes #9420
2016-11-07 12:22:36 -08:00
liufc
89fd54e8e3
docs(url_tree):fix typo(UrlSegment path property's comment part -> path) ( #12728 )
2016-11-07 10:27:47 -08:00
Alex Eagle
77cbf7f2bb
fix(closure): suppress two more closure compiler checks in codegen ( #12698 )
2016-11-04 15:18:05 -07:00
Matias Niemelä
383f23b578
fix(animations): always trigger animations after the change detection check ( #12713 )
...
This patch ensures that animations are run outside of change detection
thus allowing for start and done callbacks to modify application data
without causing a cycle loop.
Closes #12713
2016-11-04 15:15:27 -07:00
Victor Berchet
2a3f4d7b17
refactor: kill MapWrapper
2016-11-04 13:27:38 -07:00
Victor Berchet
ec92f4b198
refactor: remove `keys()` and `values()` from MapWrapper
2016-11-04 13:27:38 -07:00
Alex Rickabaugh
121e5080aa
fix(http): preserve header case when copying headers ( #12697 )
2016-11-04 13:26:38 -07:00
Georgios Kalpakas
fe1d0e29c5
feat(UpgradeComponent): add support for `require`
...
This commit also adds/improves/fixes some `UpgradeComponent` tests.
2016-11-04 11:16:28 -07:00
Georgios Kalpakas
469010ea8e
feat(UpgradeComponent): add/improve support for lifecycle hooks
...
Add support for the `$postDigest()` and `$onDestroy()` lifecycle hooks.
Better align the behavior of the `$onChanges()` and `$onInit()` lifecycle hooks
with Angular 1.x:
- Call `$onInit()` before pre-linking.
- Always instantiate the controller before calling `$onChanges()`.
2016-11-04 11:16:28 -07:00
Pawel Kozlowski
f0cdb428f5
fix(compiler): don't convert undefined to null literals ( #11503 )
...
Fixes #11493
2016-11-04 10:55:21 -07:00
Tobias Bosch
051d74802a
fix(core): ensure that component views that have no bindings recurse into nested components / view containers.
2016-11-04 10:50:27 -07:00
Tobias Bosch
f2bbef3e33
fix(core): allow to query content of templates that are stamped out at a different place
...
Previously, if a `TemplateRef` was created in a `ViewContainerRef`
at a different place, the content was not query able at all.
With this change, the content of the template can be queried
as if it was stamped out at the declaration place of the template.
E.g. in the following example, the `QueryList<ChildCmp>` will
be filled once the button is clicked.
```
@Component({
selector: ‘my-comp’,
template: ‘<button #vc (click)=“createView()”></button>’
})
class MyComp {
@ContentChildren(ChildCmp)
children: QueryList<ChildCmp>;
@ContentChildren(TemplateRef)
template: TemplateRef;
@ViewChild(‘vc’, {read: ViewContainerRef})
vc: ViewContainerRef;
createView() {
this.vc.createEmbeddedView(this.template);
}
}
@Component({
template: `
<my-comp>
<template><child-cmp></child-cmp></template>
</my-comp>
`
})
class App {}
```
Closes #12283
Closes #12094
2016-11-04 10:50:27 -07:00