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
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
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
Matias Niemelä
842f52e841
fix(animations): always recover from a failed animation step ( #13604 )
2016-12-21 14:14:45 -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
Matias Niemelä
fd8e15b15d
chore(animations/aot): always export NoOpAnimationDriver ( #13480 )
2016-12-14 14:51:29 -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ä
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
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
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
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
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
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
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
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
Matias Niemelä
fe35bc34f6
fix(animations): allow animations to be destroyed manually ( #12719 )
...
Closes #12456
Closes #12719
2016-11-08 16:21:28 -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
Tobias Bosch
e3687706c7
refactor(compiler): minor cleanup
2016-11-03 16:29:51 -07:00
Tobias Bosch
648ce5981b
perf(core): don’t use `DomAdapter` nor zone for regular events
2016-11-03 16:29:51 -07:00
Tobias Bosch
9c23884da4
perf(compiler): introduce direct rendering
...
This allows to attach / detach embedded views and projected nodes
in a faster way.
2016-11-03 16:29:51 -07:00
Tobias Bosch
d708a8859c
perf(platform-browser): don’t use `DomAdapter` any more
...
But use the DOM apis directly.
This also creates a separate `ServerRenderer` implementation
for `platform-server` as it previously reused the `BrowserRenderer`.
2016-11-03 16:29:51 -07:00
Tobias Bosch
7c5cc9bc41
refactor(compiler): initialize `RenderComponentType` eagerly
...
This moves the usage of `APP_ID` into the `DomRenderer`.
2016-11-02 20:58:48 -07:00
Joao Dias
579deeb9c5
style(platform-browser): clean up hammer gestures
2016-10-31 14:43:05 -07:00
Victor Berchet
57051f01ce
refactor: remove most facades ( #12399 )
2016-10-21 15:14:44 -07:00
Victor Berchet
76dd026447
refactor: remove some facades ( #12335 )
2016-10-19 13:42:39 -07:00
Alex Eagle
8c975ed156
refactor(facade): inline StringWrapper ( #12051 )
2016-10-06 15:10:27 -07:00
Victor Berchet
50c37d45dc
refactor: simplify arrow functions ( #12057 )
2016-10-04 15:57:37 -07:00
Alex Eagle
b64b5ece65
refactor(facade): Remove most of StringMapWrapper facade. ( #12022 )
...
This change mostly automated by
12012b07a2
with some manual fixes.
2016-10-03 16:46:05 -07:00
Victor Berchet
ca3f9926f9
refactor(BrowserAdapter): cleanup
2016-09-30 11:18:17 -07:00
Alex Eagle
0286956107
refactor(facade): Inline isBlank called with object-type argument ( #11992 )
2016-09-30 09:26:53 -07:00
Alex Eagle
41c8c30973
chore(lint): remove unused imports ( #11923 )
...
This was done automatically by tslint, which can now fix issues it finds.
The fixer is still pending in PR https://github.com/palantir/tslint/pull/1568
Also I have a local bugfix for https://github.com/palantir/tslint/issues/1569
which causes too many imports to be deleted.
2016-09-27 17:12:25 -07:00
Victor Berchet
58605cf350
refactor(facade): remove useless facades
2016-09-27 16:13:09 -07:00
Victor Berchet
671f73448c
refactor: misc cleanup ( #11654 )
2016-09-19 17:15:57 -07:00
PatrickJS
7192fec841
refactor(EventManager): remove ListWrapper ( #11363 )
2016-09-06 11:23:00 -07:00
PatrickJS
70b0ab457b
style(dom_renderer): use const ( #11229 )
2016-09-06 10:25:16 -07:00
Marc Laval
6e40ef0f6d
refactor: remove requestAnimationFrame from polyfills and platforms ( #10528 )
2016-08-30 19:58:22 -07:00
Miško Hevery
979657989b
fix(packages): use ES modules for primary build ( #11120 )
2016-08-30 18:07:40 -07:00
Misko Hevery
7c07bfff97
fix(errors): [2/2] Rename Exception to Error; remove from public API
...
BREAKING CHANGE:
Exceptions are no longer part of the public API. We don't expect that anyone should be referring to the Exception types.
ExceptionHandler.call(exception: any, stackTrace?: any, reason?: string): void;
change to:
ErrorHandler.handleError(error: any): void;
2016-08-26 10:37:17 -07:00
Igor Minar
ea2e5521e8
refactor: replace any[] with Provider[] where possible
2016-08-25 13:29:03 -07:00
Matias Niemelä
3c561475c8
refactor(animations): add an onStart handler for AnimationPlayer ( #10360 )
2016-08-22 16:39:52 -07:00
Julie Ralph
beb79e75bf
refactor(various): remove a few lingering but unused deprecated apis ( #10896 )
...
Removes deprecated APPLICATION_COMMON_PROVIDERS, as well as some
internal apis that were deprecated.
2016-08-17 16:36:10 -07:00
Martin Probst
3009be8d6e
docs(security): mark the various DomAdapters as unsafe. ( #10868 )
...
Part of #8511 .
2016-08-17 13:42:18 -07:00
Hans
40e160c22c
fix(platform-browser-dynamic): Rename CACHED_TEMPLATE_PROVIDER to RESOURCE_CACHE_PROVIDER ( #10866 )
...
* fix(platform-browser-dynamic): Rename CACHED_TEMPLATE_PROVIDER to RESOURCE_CACHE_PROVIDER
Closes #9741
BREAKING CHANGE:
`CACHED_TEMPLATE_PROVIDER` is now renamed to `RESOURCE_CACHE_PROVIDER`
Before:
```js
import {CACHED_TEMPLATE_PROVIDER} from '@angular/platform-browser-dynamic';
```
After:
```js
import {RESOURCE_CACHE_PROVIDER} from '@angular/platform-browser-dynamic';
```
* Rename XHR -> ResourceLoader
2016-08-17 09:24:44 -07:00
PatrickJS
00e5b7d30a
refactor(SharedStylesHost): remove SetWrapper facade ( #10598 )
2016-08-11 23:26:57 -07:00
vsavkin
f48142e679
feat(core): make ngprobe tokens pluggable
2016-08-11 22:56:10 -07:00
Miško Hevery
b96869afd2
refactor(Type): merge Type and ConcreType<?> into Type<?> ( #10616 )
...
Closes #9729
BREAKING CHANGE:
`Type` is now `Type<T>` which means that in most cases you have to
use `Type<any>` in place of `Type`.
We don't expect that any user applications use the `Type` type.
2016-08-10 18:21:28 -07:00