Kara Erickson
4708cb91ef
refactor(ivy): remove reserveSlots instruction ( #25533 )
...
PR Close #25533
2018-08-17 14:32:55 -07:00
Pawel Kozlowski
31f0f5b3c3
feat(ivy): add support for local refs on ng-template ( #25482 )
...
PR Close #25482
2018-08-17 09:58:07 -07:00
Kara Erickson
6482f6f0fe
refactor(ivy): separate container into 2 instructions ( #25509 )
...
PR Close #25509
2018-08-16 13:47:14 -07:00
Miško Hevery
9ee6702fa9
refactor(ivy): remove short instruction names as they provide no value ( #25493 )
...
PR Close #25493
2018-08-16 11:04:34 -07:00
Ben Lesh
a0a29fdd27
feat(ivy): Add AOT handling for bare classes with Input and Output decorators ( #25367 )
...
PR Close #25367
2018-08-14 16:36:18 -07:00
Pawel Kozlowski
9117fa199c
test(ivy): activate local references canonical spec ( #25462 )
...
PR Close #25462
2018-08-14 12:01:55 -07:00
Pawel Kozlowski
0c4209f4b9
refactor(ivy): harmonize container and element / elementContainer signatures ( #25458 )
...
PR Close #25458
2018-08-14 12:01:23 -07:00
Victor Berchet
85106375ac
refactor(ivy): misc cleanup ( #25369 )
...
PR Close #25369
2018-08-14 11:58:47 -07:00
Miško Hevery
2016afdbff
fix(ivy): remove ivy dependency on ViewEngine's resolveRendererType2 ( #25396 )
...
PR Close #25396
2018-08-10 13:32:04 -07:00
Kara Erickson
409860a4da
fix(ivy): queries should be restored when view changes ( #25415 )
...
PR Close #25415
2018-08-10 09:13:16 -07:00
Kara Erickson
2b128a47b9
refactor(ivy): queries should not rely on LNode ( #25415 )
...
PR Close #25415
2018-08-10 09:13:16 -07:00
Alex Rickabaugh
5be186035f
feat(ivy): enable inheritance of factory functions in definitions ( #25392 )
...
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 #25392
2018-08-09 09:58:13 -07:00
Pawel Kozlowski
9c92a6fc7a
test(ivy): add test for <ng-container> and shallow queries ( #25379 )
...
PR Close #25379
2018-08-09 07:35:01 -07:00
Pawel Kozlowski
af9ced9026
fix(ivy): project ng-container nodes ( #25354 )
...
PR Close #25354
2018-08-07 12:02:48 -07:00
Pawel Kozlowski
dbdbbdbe86
fix(ivy): support ng-container inside another ng-container ( #25346 )
...
PR Close #25346
2018-08-07 11:48:42 -07:00
Pawel Kozlowski
3355502f2f
fix(ivy): support ng-container at the root of a view with delayed insertion ( #25329 )
...
PR Close #25329
2018-08-06 13:47:44 -07:00
Victor Berchet
afa6b9e794
fix(ivy): execute the optional begin and end methods of the rendererFactory ( #25273 )
...
This is required to i.e. flush animations when using a Renderer2.
`rf.begin()` and `rf.end()` around the change detection.
PR Close #25273
2018-08-03 10:17:13 -07:00
Victor Berchet
b38931b484
fix(ivy): use devModeEqual in no change mode ( #25252 )
...
To avoid the unfamous error `Expression has changed after it was checked.`
PR Close #25252
2018-08-02 22:57:28 -07:00
Kara Erickson
1fb7111da1
fix(ivy): content query results should be available in content hooks ( #25271 )
...
PR Close #25271
2018-08-02 19:32:09 -07:00
Pawel Kozlowski
c2c12e52fe
feat(ivy): support ng-container as a child of an already inserted view ( #25227 )
...
PR Close #25227
2018-08-02 18:50:03 -07:00
Pawel Kozlowski
28c7a4efbc
feat(ivy): add basic support for ng-container ( #25227 )
...
This commit adds basic support for <ng-container> - most of the
functionality should work as long as <ng-container> is a child of
a regular element.
PR Close #25227
2018-08-02 18:50:03 -07:00
Kara Erickson
c8a4fb1faf
fix(ivy): walk declaration views in listener ( #25228 )
...
PR Close #25228
2018-07-31 16:35:20 -07:00
Ben Lesh
64516da6b0
feat(ivy): support inheriting input/output from bare base class ( #25094 )
...
PR Close #25094
2018-07-31 16:25:11 -07:00
Miško Hevery
6e2a1877ab
refactor(core): remove withBody from public testing API ( #25171 )
...
PR Close #25171
2018-07-31 15:09:32 -07:00
Victor Berchet
36648293a8
refactor(ivy): misc ( #25174 )
...
PR Close #25174
2018-07-30 16:59:48 -07:00
Marc Laval
cd89eb8404
feat(ivy): implement the getters of ViewContainerRef ( #25174 )
...
BREAKING CHANGE: ViewContainerRef.parentInjector is deprecated without replacement
PR Close #25174
2018-07-30 16:59:48 -07:00
Kara Erickson
2ef777b0b2
fix(ivy): convert context code into a tree-shakable instruction ( #24943 )
...
PR Close #24943
2018-07-30 15:54:11 -07:00
Kara Erickson
fe14f180a6
fix(compiler): update compiler to flatten nested template fns ( #24943 )
...
PR Close #24943
2018-07-30 15:54:11 -07:00
Kara Erickson
87419097da
fix(ivy): flatten template fns for nested views ( #24943 )
...
PR Close #24943
2018-07-30 15:54:11 -07:00
Victor Berchet
6a797d5401
refactor(ivy): `element` and `ElementStart` retuns `void` ( #25173 )
...
use `loadElement` to load an element when needed in specs
PR Close #25173
2018-07-27 17:22:18 -07:00
Victor Berchet
89e8b6fc0e
refactor(ivy): update specs to make use of the `element()` instruction ( #25173 )
...
PR Close #25173
2018-07-27 17:22:18 -07:00
Victor Berchet
7f59170f77
refactor(ivy): use `element()` where applicable in di_spec ( #25166 )
...
For future ref
Search `elementStart\(([^)]+)\);\s*\n\s*elementEnd\(\);`
Replace `element($1)`
PR Close #25166
2018-07-27 18:47:13 -04:00
Victor Berchet
15df853622
fix(ivy): walk the node injector tree and then the module injector tree ( #25166 )
...
- `directiveInjector()` is used to inject anything in the directive / component
/ pipe factories so adding `InjectionToken<T>` as a supported token type.
- `getOrCreateInjectable()` should search first in the node injector tree and
then in the module injector tree (was either or before the PR).
PR Close #25166
2018-07-27 18:47:13 -04:00
Olivier Combe
1ceddb6290
fix(ivy): support re-order embedded templates ( #24805 )
...
PR Close #24805
2018-07-24 16:41:05 -07:00
Olivier Combe
22731a7588
refactor(ivy): split i18nInterpolation into 8 functions ( #24805 )
...
PR Close #24805
2018-07-24 16:41:05 -07:00
Olivier Combe
72dd10f78f
refactor(ivy): cleanup runtime i18n code ( #24805 )
...
Fixes #24785
PR Close #24805
2018-07-24 16:41:05 -07:00
Marc Laval
445b9a5627
feat(ivy): support ViewContainerRef.createComponent() ( #24997 )
...
PR Close #24997
2018-07-24 08:23:23 -07:00
Matias Niemelä
169e9dd2c8
feat(ivy): bridge compile instructions to include sanitization helpers ( #24938 )
...
PR Close #24938
2018-07-23 08:49:52 -07:00
Pawel Kozlowski
56b3f1703e
fix(ivy): invoke lifecycle hooks of directives placed on ng-template ( #24899 )
...
PR Close #24899
2018-07-20 10:45:51 -07:00
Matias Niemelä
ba3eb8b654
feat(ivy): properly apply class="", [class], [class.foo] and [attr.class] bindings ( #24822 )
...
PR Close #24822
2018-07-17 16:33:25 -04:00
Alex Rickabaugh
cde0b4b361
fix(ivy): *Def types are private (ɵ) symbols ( #24738 )
...
On accident a few of the definition types were emitted as public API
symbols. Much of the Ivy API surface is still prefixed with ɵ,
indicating it's a private API. The definition types should be private
for now.
PR Close #24738
2018-07-12 16:36:35 -04:00
Pawel Kozlowski
0399c6972a
refactor(ivy): remove content query creation from directive factories ( #24811 )
...
PR Close #24811
2018-07-12 16:32:33 -04:00
Kara Erickson
3a19f70d1c
refactor(ivy): replace pNextOrParent with TNode props ( #24752 )
...
PR Close #24752
2018-07-10 11:12:27 -07:00
Kara Erickson
dc1f1295ee
fix(ivy): support projecting into dynamic views ( #24752 )
...
PR Close #24752
2018-07-10 11:12:27 -07:00
Matias Niemelä
3980640d53
feat(ivy): properly apply style="", [style], [style.foo] and [attr.style] bindings ( #24602 )
...
PR Close #24602
2018-07-06 13:51:00 -07:00
George Kalpakas
00c110b055
build: upgrade jasmine (and related typings) to latest version ( #19904 )
...
With these changes, the types are a little stricter now and also not
compatible with Protractor's jasmine-like syntax. So, we have to also
use `@types/jasminewd2` for e2e tests (but not for non-e2e tests).
I also had to "augment" `@types/jasminewd2`, because the latest
typings from [DefinitelyTyped][1] do not reflect the fact that the
`jasminewd2` version (v2.1.0) currently used by Protractor supports
passing a `done` callback to a spec.
[1]: 566e039485/types/jasminewd2/index.d.ts (L9-L15)
Fixes #23952
Closes #24733
PR Close #19904
2018-07-06 13:48:02 -07:00
Alex Rickabaugh
3d52174bf1
feat(ivy): JIT support for compilation of @Pipes ( #24703 )
...
Adds support for compiling @Pipe in JIT mode, along with tests
to verify that certain aspects of compilation are correct.
PR Close #24703
2018-07-03 18:36:02 -04:00
Alex Rickabaugh
dbdcfed2bd
feat(ivy): support pipe compilation from local metadata ( #24703 )
...
This updates the r3_pipe_compiler to not depend on global analysis,
and to produce ngPipeDef instructions in the same way that the other
compilers do. It's a precursor to JIT and AOT implementations of
@Pipe compilation.
PR Close #24703
2018-07-03 18:36:02 -04:00
Kara Erickson
a294e0dd79
fix(ivy): correct position for re-projected containers ( #24721 )
...
PR Close #24721
2018-07-02 14:38:12 -07:00
Kara Erickson
d243baf48a
refactor(ivy): remove pChild from LNode ( #24705 )
...
PR Close #24705
2018-06-29 06:44:08 -07:00