angular-cn/packages/core/test/render3
Matias Niemelä 693045165c refactor(ivy): remove def.attributes in favor of the `elementHostAttrs` instruction (#28089)
Up until this point, all static attribute values (things like `title` and `id`)
defined within the `host` are of a Component/Directive definition were
generated into a `def.attributes` array and then processed at runtime.
This design decision does not lend itself well to tree-shaking and is
inconsistent with other static values such as styles and classes.

This fix ensures that all static attribute values (attributes, classes,
and styles) that exist within a host definition for components and
directives are all assigned via the `elementHostAttrs` instruction.

```
// before
defineDirective({
  ...
  attributes: ['title', 'my title']
  ...
})

//now
defineDirective({
  ...
  hostBindings: function() {
    if (create) {
      elementHostAttrs(..., ['title', 'my-title']);
    }
    ...
  }
  ...
})
```

PR Close #28089
2019-01-15 09:45:41 -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 refactor(ivy): remove def.attributes in favor of the `elementHostAttrs` instruction (#28089) 2019-01-15 09:45:41 -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 refactor(ivy): remove def.attributes in favor of the `elementHostAttrs` instruction (#28089) 2019-01-15 09:45:41 -08:00
i18n_spec.ts fix(ivy): don't throw in `i18nAttributes` when a component is re-rendered (#27911) 2019-01-07 20:21:49 -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 refactor(ivy): remove def.attributes in favor of the `elementHostAttrs` instruction (#28089) 2019-01-15 09:45:41 -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): process creation mode deeply before running update mode (#27744) 2018-12-19 15:10:16 -05: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