780 Commits

Author SHA1 Message Date
Ben Lesh
8dd99ac550 refactor(ivy): add element instruction, reducing output size (#24379)
- Adds an element instruction
- Reduces size of compiled output slightly

PR Close #24379
2018-06-11 14:02:48 -04:00
Pawel Kozlowski
014949f74c fix(ivy): correctly handle queries with embedded views (#24418)
This PR takes care of all the remaining cases where embedded view definition
and insertion points are different.

PR Close #24418
2018-06-11 14:01:01 -04:00
Kara Erickson
29eb24b142 refactor(ivy): combine LView with data (#24382)
PR Close #24382
2018-06-08 21:41:01 -07:00
Matias Niemelä
1b253e14ff fix(ivy): special case [style] and [class] bindings for future use (#23232)
PR Close #23232
2018-06-08 15:27:58 -07:00
Ben Lesh
8c1ac28275 feat(ivy): now supports SVG and MathML elements (#24377)
- Adds support for ivy creating SVG and MathML elements properly using
createElementNS

PR Close #24377
2018-06-08 15:27:35 -07:00
Victor Berchet
5ef7a07c4b docs(ivy): add <ng-container> to the remaining work items (#24381)
PR Close #24381
2018-06-08 15:27:16 -07:00
Alex Rickabaugh
113556357a fix(ivy): compute transitive scopes from NgModuleDef only (#24334)
Previously, the transitive scopes of an NgModuleDef were computed
during execution of the @NgModule decorator. This meant that JIT-
compiled modules could only import other JIT-compiled modules, as
the import mechanism relied on the calculation of transitive scopes
to already have happened for the imported module.

This change moves computation of transitive scopes to a function
`transitiveScopesFor` (and makes it lazy). This opens the door for
AOT -> JIT or JIT -> AOT imports, as transitive scopes for AOT
modules can be calculated when needed by JIT, and AOT modules can
also write expressions that call `transitiveScopesFor` when
importing a JIT-compiled module.

PR Close #24334
2018-06-08 13:37:10 -07:00
Pawel Kozlowski
d4c66d5edb docs(ivy): update status of impl progress (#24323)
Updating runtime implementation progress after merge of #23991

PR Close #24323
2018-06-07 18:47:36 -04:00
Kara Erickson
f781f741ea refactor(ivy): remove need for LContainer.template (#24335)
PR Close #24335
2018-06-07 16:40:21 -04:00
Alex Rickabaugh
bd02b27ee1 feat(core): expose a Compiler API for accessing module ids from NgModule types (#24258)
This will allow RouterTestingModule to better support lazy loading of modules
when using summaries, since it can detect whether a module is already loaded
if it can access the id.

PR Close #24258
2018-06-07 16:19:08 -04:00
Jason Aden
e3759f7a73 feat(ivy): add support of ApplicationRef.bootstrapModuleFactory (#23811)
PR Close #23811
2018-06-07 16:15:26 -04:00
Victor Berchet
7de2ba0e22 Revert "feat(ivy): add namespace instructions for SVG and others (#23899)"
This reverts commit 81e4b2a4bf21d8b6ab7d33053f4e020c09021e1f.
2018-06-06 13:38:21 -07:00
Victor Berchet
07b4c8be42 Revert "feat(ivy): added namespaced attributes (#23899)"
This reverts commit d6989c80d3f23397790bded613c7922e9ef61865.
2018-06-06 13:38:20 -07:00
Victor Berchet
3128b26e5c Revert "feat(ivy): add element instruction (#23899)"
This reverts commit b415010222c4616a45cf06fb85221f2452aa05e4.
2018-06-06 13:38:19 -07:00
Victor Berchet
4f5b01a98a Revert "refactor(ivy): Use AttributeMarker instead of NS (#23899)"
This reverts commit 1208a35373f1ebf58f7512948c6f58d7d1a03570.
2018-06-06 13:38:18 -07:00
Victor Berchet
c151f9cdc8 Revert "refactor(ivy): rename setNS, setHtmlNS and friends to namespace, namespaceHTML, etc (#23899)"
This reverts commit 0d06c866c69bb9dec51c570afc2bd77977aacd23.
2018-06-06 13:38:17 -07:00
Victor Berchet
8ac74da016 Revert "docs(ivy): update SVG status (#23899)"
This reverts commit 1915e47d1138d53a5dfd98028501540aca3868af.
2018-06-06 13:38:12 -07:00
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
Martin Probst
2a78d5e6fe refactor(core): clean up dupe'd imports in reflector (#24203)
Closure Compiler in some configurations complains about duplicate
imports. This change replaces the export-with-import with an export of
the imported symbol.

closes #23993

PR Close #24203
2018-05-30 11:45:00 -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