22 Commits

Author SHA1 Message Date
Olivier Combe
91bffa9c53 fix(ivy): set encapsulation metadata ()
PR Close 
2018-11-16 12:22:11 -08:00
Matias Niemelä
95993e1dd5 fix(ivy): ensure pipes indices are referenced in styling bindings ()
PR Close 
2018-10-26 18:40:23 -04:00
Marc Laval
b0476f308b feat(ivy): support providers and viewProviders ()
PR Close 
2018-10-25 12:58:40 -04:00
Matias Niemelä
f6c2db818e fix(ivy): ensure styling pipes are allocated before used in bindings ()
PR Close 
2018-10-24 18:42:59 -04:00
Matias Niemelä
9e5d440a0b refactor(ivy): handle animation metadata normalization in the compiler ()
PR Close 
2018-10-16 20:31:04 -07:00
Pawel Kozlowski
4b494f23f5 fix(ivy): fix generated code for style bindings with units ()
PR Close 
2018-10-11 14:11:15 -07:00
Alex Rickabaugh
456f23f76a fix(ivy): reflect animations field directly into the output definition ()
The 'animations' field of @Component metadata should be copied directly
into the ngComponentDef for that component and should not pass through
static resolution.

Previously the animations array was statically resolved and then the
values were translated back when generating ngComponentDef.

PR Close 
2018-10-09 16:45:31 -07:00
Matias Niemelä
c51331689f refactor(ivy): rename stylingProp => styleProp ()
PR Close 
2018-10-01 09:35:22 -07:00
Matias Niemelä
7cf5807100 fix(ivy): ensure [style] and [class] bindings are placed in the same instruction ()
PR Close 
2018-09-27 15:32:40 -07:00
cexbrayat
21009b06a1 fix(ivy): use proper sanitizer names ()
Fixes 

PR Close 
2018-09-11 16:22:38 -07:00
Matias Niemelä
e3633888ed feat(ivy): support animation @triggers in templates ()
PR Close 
2018-09-10 13:59:27 -07:00
Matias Niemelä
d2dfd48be0 feat(ivy): patch animations into metadata ()
PR Close 
2018-09-07 13:46:06 -07:00
Pawel Kozlowski
6a0f78fabf fix(ivy): match directives on bindings and element outputs ()
Closes 

PR Close 
2018-08-27 18:17:25 -04:00
Matias Niemelä
a37bcc3bfe feat(ivy): bridge component styles into the component renderer ()
PR Close 
2018-08-23 16:51:15 -04:00
Kara Erickson
21a14407f6 refactor(ivy): generate vars in component defs ()
PR Close 
2018-08-20 11:08:10 -07:00
Kara Erickson
f2aa9c6a7f refactor(ivy): use generated consts value to set binding index ()
PR Close 
2018-08-17 14:32:55 -07:00
Miško Hevery
9ee6702fa9 refactor(ivy): remove short instruction names as they provide no value ()
PR Close 
2018-08-16 11:04:34 -07:00
Alex Rickabaugh
5be186035f feat(ivy): enable inheritance of factory functions in definitions ()
This commit creates an API for factory functions which allows them
to be inherited from one another. To do so, it differentiates between
the factory function as a wrapper for a constructor and the factory
function in ngInjectableDefs which is determined by a default
provider.

The new form is:

factory: (t?) => new (t || SomeType)(inject(Dep1), inject(Dep2))

The 't' parameter allows for constructor inheritance. A subclass with
no declared constructor inherits its constructor from the superclass.
With the 't' parameter, a subclass can call the superclass' factory
function and use it to create an instance of the subclass.

For @Injectables with configured providers, the factory function is
of the form:

factory: (t?) => t ? constructorInject(t) : provider();

where constructorInject(t) creates an instance of 't' using the
naturally declared constructor of the type, and where provider()
creates an instance of the base type using the special declared
provider on @Injectable.

PR Close 
2018-08-09 09:58:13 -07:00
Victor Berchet
1e7ca22078 refactor(ivy): make all directives public by default ()
To match the View Engine behavior.

We should make this configurable so that the node injector is tree shaken when
directives do not need to be published.

PR Close 
2018-08-05 15:31:19 -07:00
Alex Rickabaugh
eb999300d9 test(ivy): run compiler compliance tests without rebuilding core,common ()
Previously the compiler compliance tests ran and built test code with
real dependencies on @angular/core and @angular/common. This meant that
any changes to the compiler would result in long rebuild processes
for tests to rerun.

This change removes those dependencies and causes test code to be built
against the fake_core stub of @angular/core that the ngtsc tests use.
This change also removes the dependency on @angular/common entirely, as
locality means it's possible to reference *ngIf without needing to link
to an implementation.

PR Close 
2018-08-03 13:08:51 -07:00
Matias Niemelä
169e9dd2c8 feat(ivy): bridge compile instructions to include sanitization helpers ()
PR Close 
2018-07-23 08:49:52 -07:00
Alex Rickabaugh
9fd70c9715 refactor(ivy): run the compiler compliance tests against ngtsc ()
This commit moves the compiler compliance tests into compiler-cli,
and uses ngtsc to run them instead of the custom compilation
pipeline used before. Testing against ngtsc allows for validation
of the real compiler output.

This commit also fixes a few small issues that prevented the tests
from passing.

PR Close 
2018-07-20 11:48:36 -07:00