angular-cn/packages/core/test/render3
Pawel Kozlowski cf8770f3cc fix(ivy): don't create TNodes for native projectable nodes (#28275)
Before this commit we were creating a "fake" TNode for each and every
projectable node passed during dynamic component creation. This approach
had several problems:
- the existing TView structure had to be mutated to accomodate new TNodes and
it was very easy to "corrupt" TView / TNode data structures;
- TNodes are not really needed to fully support projectable nodes so we were
creating objects and updating existing data structures for nothing.

This commit changes the approach so we don't create "fake" TNodes for projectable
nodes but instead we process projectable nodes directly in the projection instruction.
As a result we've got less code, less object allocation and - as a bonus - we fix few
bugs where TView / TNode data structures were corrupted when using projectable nodes.

PR Close #28275
2019-01-23 10:56:09 -08:00
..
ivy build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
jit fix(core): Remove static dependency from @angular/core to @angular/compiler (#26734) 2018-10-31 14:15:06 -04:00
styling fix(ivy): not applying camelCased style properties (#28276) 2019-01-22 12:29:14 -08:00
BUILD.bazel build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
basic_perf.ts refactor(ivy): generate vars in component defs (#25562) 2018-08-20 11:08:10 -07:00
change_detection_spec.ts fix(ivy): markForCheck() should not schedule change detection (#28048) 2019-01-10 13:37:40 -08:00
common_integration_spec.ts fix(ivy): provide an ability to match <ng-template> tags (#27636) 2018-12-17 09:33:37 -08:00
common_with_def.ts fix(ivy): ngOnChanges only runs for binding updates (#27965) 2019-01-11 14:28:35 -08:00
component_ref_spec.ts fix(ivy): pass ngContentSelectors through to `defineComponent()` calls (#27867) 2019-01-10 13:36:37 -08:00
component_spec.ts fix(ivy): process creation mode deeply before running update mode (#27744) 2018-12-19 15:10:16 -05:00
content_spec.ts fix(ivy): ng-content tags in re-inserted templates should walk declaration tree (#27783) 2019-01-04 12:20:18 -08:00
control_flow_spec.ts fix(ivy): process creation mode deeply before running update mode (#27744) 2018-12-19 15:10:16 -05:00
di_spec.ts test(ivy): NodeInjector should know how to get itself (INJECTOR) (#28009) 2019-01-14 17:09:26 -08:00
directive_spec.ts fix(ivy): provide an ability to match <ng-template> tags (#27636) 2018-12-17 09:33:37 -08:00
discovery_utils_spec.ts fix(ivy): support multiple exportAs (#27996) 2019-01-10 16:53:26 -08:00
domino.d.ts feat(core): Moving Renderer3 into @angular/core (#20855) 2017-12-21 21:40:58 -08:00
exports_spec.ts fix(ivy): support multiple exportAs (#27996) 2019-01-10 16:53:26 -08:00
global_utils_spec.ts build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
host_binding_spec.ts fix(ivy): fix styling context resolution for host bindings on containers (#28221) 2019-01-22 09:45:16 -08:00
i18n_spec.ts fix(ivy): support for multiple ICU expressions in the same i18n block (#28083) 2019-01-16 09:49:54 -08:00
imported_renderer2.ts refactor(ivy): misc cleanup (#25369) 2018-08-14 11:58:47 -07:00
inherit_definition_feature_spec.ts fix(ivy): ngOnChanges only runs for binding updates (#27965) 2019-01-11 14:28:35 -08:00
instructions_spec.ts fix(ivy): merge static style rendering across elements, directives and components (#27661) 2018-12-21 18:14:44 -05:00
integration_spec.ts fix(ivy): ensure interpolated style/classes do not cause tracking issues for bindings (#28190) 2019-01-17 09:58:14 -08:00
jit_environment_spec.ts fix(ivy): remove metadata from *Def and introduce *DefWithMeta types (#26203) 2018-10-04 10:11:17 -07:00
lifecycle_spec.ts fix(ivy): ngOnChanges only runs for binding updates (#27965) 2019-01-11 14:28:35 -08:00
listeners_spec.ts fix(ivy): adding event listeners for global objects (window, document, body) (#27772) 2019-01-08 10:33:17 -08:00
load_domino.ts fix(core): Remove static dependency from @angular/core to @angular/compiler (#26734) 2018-10-31 14:15:06 -04:00
metadata_spec.ts build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
node_selector_matcher_spec.ts fix(ivy): ensure component/directive `class` selectors are properly understood (#27849) 2019-01-15 09:44:50 -08:00
outputs_spec.ts refactor(ivy): generate vars in component defs (#25562) 2018-08-20 11:08:10 -07:00
perfCounter_spec.ts build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
pipe_spec.ts fix(ivy): pipes should overwrite pipes with later entry in the pipes array (#27910) 2019-01-04 13:21:46 -08:00
properties_spec.ts fix(ivy): support multiple exportAs (#27996) 2019-01-10 16:53:26 -08:00
providers_spec.ts fix(ivy): ngOnDestroy hooks should be called on providers (#27955) 2019-01-07 14:43:33 -08:00
pure_function_spec.ts fix(ivy): provide an ability to match <ng-template> tags (#27636) 2018-12-17 09:33:37 -08:00
query_spec.ts fix(ivy): clone queries correctly for multiple component instances (#27892) 2019-01-14 17:08:26 -08:00
render_util.ts refactor(ivy): create Injector interface; remove dependency on Ivy (#28066) 2019-01-11 16:24:03 -08:00
renderer_factory_spec.ts fix(ivy): don't create TNodes for native projectable nodes (#28275) 2019-01-23 10:56:09 -08:00
template_ref_spec.ts fix(ivy): provide an ability to match <ng-template> tags (#27636) 2018-12-17 09:33:37 -08:00
testing_spec.ts refactor(core): remove withBody from public testing API (#25171) 2018-07-31 15:09:32 -07:00
util_spec.ts refactor(ivy): treate LView as the primary global state (#27282) 2018-11-29 21:26:15 -08:00
view_container_ref_spec.ts refactor(ivy): remove def.attributes in favor of the `elementHostAttrs` instruction (#28089) 2019-01-15 09:45:41 -08:00