Victor Berchet
d96ae123b2
Revert "feat(ivy): SVG now handled by ivy compiler ( #23899 )"
...
This reverts commit 1007d1ad271566a8beabb2fcf234be393b3ce313.
2018-06-06 13:38:10 -07:00
Victor Berchet
7e73287676
Revert "feat(ivy): added new namespace and element instructions to JIT environment ( #23899 )"
...
This reverts commit acf270d724ce0b229bc5410b3344b142efb61a1a.
2018-06-06 13:38:00 -07:00
Ben Lesh
acf270d724
feat(ivy): added new namespace and element instructions to JIT environment ( #23899 )
...
PR Close #23899
2018-06-06 10:22:28 -07:00
Ben Lesh
1007d1ad27
feat(ivy): SVG now handled by ivy compiler ( #23899 )
...
PR Close #23899
2018-06-06 10:22:28 -07:00
Ben Lesh
1915e47d11
docs(ivy): update SVG status ( #23899 )
...
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
0d06c866c6
refactor(ivy): rename setNS, setHtmlNS and friends to namespace, namespaceHTML, etc ( #23899 )
...
- Renames functions
- Adds documentation
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
1208a35373
refactor(ivy): Use AttributeMarker instead of NS ( #23899 )
...
- Removes NS enum
- Uses existing AttributeMarker
- Adds enum value NAMESPACE_URI
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
b415010222
feat(ivy): add element instruction ( #23899 )
...
Adds a simplified element instruction that can be used if an element
has no children.
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
d6989c80d3
feat(ivy): added namespaced attributes ( #23899 )
...
PR Close #23899
2018-06-06 10:22:27 -07:00
Ben Lesh
81e4b2a4bf
feat(ivy): add namespace instructions for SVG and others ( #23899 )
...
PR Close #23899
2018-06-06 10:22:27 -07:00
Victor Berchet
c494d3cf60
Revert "feat(ivy): add support of ApplicationRef.bootstrapModuleFactory ( #23811 )"
...
This reverts commit 22b58a717aad87092a7f7080805c10ef36960694.
This commit causes a breakage in g3.
2018-06-05 22:11:47 -07:00
Jason Aden
22b58a717a
feat(ivy): add support of ApplicationRef.bootstrapModuleFactory ( #23811 )
...
PR Close #23811
2018-06-05 20:10:25 -07:00
Kara Erickson
86b13ccf80
refactor(ivy): move static parts of LView.cleanup to TView ( #24301 )
...
PR Close #24301
2018-06-05 18:30:28 -07:00
Kara Erickson
57eacf4b5a
refactor(ivy): move LView.template and component templates to TView ( #24300 )
...
PR Close #24300
2018-06-05 15:13:36 -07:00
Marc Laval
b750919ce0
feat(ivy): implement ViewContainerRef.remove ( #24221 )
...
PR Close #24221
2018-06-05 13:33:40 -07:00
Victor Berchet
9c403753e2
refactor(ivy): misc minor fixes in the JIT compiler ( #24308 )
...
PR Close #24308
2018-06-05 11:33:54 -07:00
Kara Erickson
5794506c64
refactor(ivy): move id to TView ( #24264 )
...
PR Close #24264
2018-06-03 20:46:12 -07:00
Kara Erickson
cb65724761
refactor(ivy): combine lifecycleStage with LViewFlags ( #24263 )
...
PR Close #24263
2018-06-02 19:34:16 -07:00
Kara Erickson
44856bfc2f
refactor(ivy): move bindingStartIndex to TView ( #24262 )
...
PR Close #24262
2018-06-02 19:33:57 -07:00
Kara Erickson
5db4f1a5ba
refactor(ivy): convert TNode.index to number, general cleanup ( #24260 )
...
PR Close #24260
2018-06-02 19:33:27 -07:00
Pawel Kozlowski
0561b66a2b
fix(ivy): query nodes from different TemplateRefs inserted into one ViewContainerRef ( #24254 )
...
PR Close #24254
2018-06-02 10:34:52 -07:00
Victor Berchet
5f178f3a5a
fix(ivy): do not eagerly JIT compile modules ( #24234 )
...
PR Close #24234
2018-05-31 16:03:49 -07:00
Victor Berchet
81c13e2f86
refactor(ivy): remove references to Ivy ( #24234 )
...
PR Close #24234
2018-05-31 16:03:49 -07:00
JoostK
2d9111bfb6
fix(ivy): account for multiple changes between change detection runs ( #24152 )
...
PR Close #24152
2018-05-31 14:08:23 -07:00
JoostK
a5c47d0045
fix(ivy): determine value of SimpleChange.firstChange per property ( #24152 )
...
PR Close #24152
2018-05-31 14:08:23 -07:00
Kara Erickson
7e3f8f77a9
refactor(ivy): replace LView.child with TView.childIndex lookup ( #24211 )
...
PR Close #24211
2018-05-31 12:10:49 -07:00
Alec
e79b845a45
docs(ivy): fix typo in STATUS.md
2018-05-30 16:48:40 -07:00
JoostK
b99ef2b80a
refactor(ivy): simplify bind instruction to reuse bindingUpdated logic ( #23881 )
...
Added runtime and compiler testcases for interpolated bindings, which verify
that NO_CHANGE is properly handled in `bind`.
PR Close #23881
2018-05-30 16:38:46 -07:00
JoostK
95074ca303
fix(ivy): fix performance counter for textBinding instruction ( #23924 )
...
PR Close #23924
2018-05-30 11:44:22 -07:00
Pawel Kozlowski
1cd9e6c2eb
feat(ivy): support queries with views inserted through ViewContainerRef ( #24179 )
...
This PR tackles a simple case where ViewRef definition point (<ng-template>) is the
same as the insertion point (ViewContainerRef requested on the said <ng-template>).
For this particular case we can assume that we know a container into which a given
view will be inserted when a view is created. This is not true fall all the possible
cases so follow-up PR will be needed to extend this basic implementation.
PR Close #24179
2018-05-30 11:43:57 -07:00
Alex Rickabaugh
646b42a113
feat(ivy): JIT renders the TODO app ( #24138 )
...
This commit builds out enough of the JIT compiler to render
//packages/core/test/bundling/todo, and allows the tests to run in
JIT mode.
To play with the app, run:
bazel run --define=compile=jit //packages/core/test/bundling/todo:prodserver
PR Close #24138
2018-05-30 11:25:57 -07:00
Marc Laval
42a7295203
refactor(ivy): remove dynamicViewCount from LContainer ( #23963 )
...
PR Close #23963
2018-05-30 11:24:53 -07:00
Marc Laval
2e21690c66
feat(ivy): support renderer.destroy and renderer.destroyNode hooks ( #24049 )
...
PR Close #24049
2018-05-30 09:57:51 -07:00
Olivier Combe
f6f44edcc0
docs: update ivy perf notes ( #24035 )
...
PR Close #24035
2018-05-30 09:57:08 -07:00
Pawel Kozlowski
90bf5d8961
feat(ivy): separate attributes for directive matching purposes ( #23991 )
...
In ngIvy directives matching (determining which directives are active based
on a CSS seletor) happens at runtime. This means that runtime needs to have
enough context to match directives. This PR takes care of cases where a directive's
selector should match bindings (ex. [foo]="exp") and event handlers (ex. (out)="do()").
In the mentioned cases we need to have binding / output "attributes" for directive's
CSS selector matching purposes. At the same time those are not regular attributes and
as such should not be reflected in the DOM.
Closes #23706
PR Close #23991
2018-05-30 09:56:34 -07:00
JoostK
b87d650da2
refactor(ivy): rename PipeDef.n
to PipeDef.factory
( #23883 )
...
The original reason for this property to be short no longer holds true,
as pipes always need to be defined using `definePipe`.
PR Close #23883
2018-05-30 09:55:54 -07:00
Kara Erickson
e53179ef8c
refactor(ivy): move parent from LNode to TNode ( #24189 )
...
PR Close #24189
2018-05-30 01:42:20 -04:00
Victor Berchet
4f36340de7
feat(ivy): add support for short-circuiting ( #24039 )
...
Short-circuitable expressions (using ternary & binary operators) could not use
the regular binding mechanism as it relies on the bindings being checked every
single time - the index is incremented as part of checking the bindings.
Then for pure function kind of bindings we use a different mechanism with a
fixed index. As such short circuiting a binding check does not mess with the
expected binding index.
Note that all pure function bindings are handled the same wether or not they
actually are short-circuitable. This allows to keep the compiler and compiled
code simple - and there is no runtime perf cost anyway.
PR Close #24039
2018-05-25 13:46:50 -04:00
Kara Erickson
609e6b9787
refactor(ivy): move child from LNode to TNode ( #24113 )
...
PR Close #24113
2018-05-25 13:41:00 -04:00
Kara Erickson
68bf8c36c6
refactor(ivy): move type from LNode to TNode ( #24113 )
...
PR Close #24113
2018-05-25 13:40:59 -04:00
Kara Erickson
8216657681
refactor(ivy): add tNodes for view nodes and hosts ( #24113 )
...
PR Close #24113
2018-05-25 13:40:59 -04:00
Alex Rickabaugh
919f42fea1
feat(ivy): first steps towards JIT compilation ( #23833 )
...
This commit adds a mechanism by which the @angular/core annotations
for @Component, @Injectable, and @NgModule become decorators which,
when executed at runtime, trigger just-in-time compilation of their
associated types. The activation of these decorators is configured
by the ivy_switch mechanism, ensuring that the Ivy JIT engine does
not get included in Angular bundles unless specifically requested.
PR Close #23833
2018-05-21 19:13:50 -04:00
Kara Erickson
6e7d071c6b
fix(ivy): move next property to TNode ( #23869 )
...
PR Close #23869
2018-05-21 16:09:12 -04:00
JoostK
83631b28cb
perf(ivy): avoid creating bound function in pipeBind3 ( #23882 )
...
PR Close #23882
2018-05-15 11:40:33 -07:00
Matias Niemelä
816bc8af17
feat(ivy): support injectable sanitization service ( #23809 )
...
PR Close #23809
2018-05-11 16:43:43 -04:00
Kara Erickson
c5cfc3a1b6
fix(ivy): only generate TViews once per embedded template ( #23385 )
...
PR Close #23385
2018-05-01 10:27:40 -07:00
Misko Hevery
b76f5a6a7d
perf(ivy): add performance counters in ngDevMode ( #23385 )
...
PR Close #23385
2018-05-01 10:27:40 -07:00
Victor Berchet
7ef9d4a582
docs(ivy): upddate the status ( #23562 )
...
PR Close #23562
2018-04-27 07:21:16 -07:00
Marc Laval
1a44a0b4a8
feat(ivy): support lifecycle hooks of ViewContainerRef ( #23396 )
...
PR Close #23396
2018-04-25 19:02:00 -07:00
Kara Erickson
db77d8dc92
feat(ivy): support injection flags at runtime ( #23518 )
...
PR Close #23518
2018-04-25 13:26:58 -07:00