angular/packages/compiler-cli/test
leonsenft d596d8bd0a refactor(compiler): support matching and validating foreign components in templates (#68674)
We extract the identifier name from the `foreignImports` expression in
`ComponentDecoratorHandler` and use a `SelectorlessMatcher` to match element
tags against these names. If an element matches both a regular Angular
directive and a foreign component, a conflict error is thrown.

In addition, we implement strict template semantic validation for these matched
foreign components within `TemplateSemanticsChecker`. Elements matched as
foreign components only support static attributes and property bindings. Any
event bindings, template references, or non-property input bindings (e.g.
class, style, or attribute bindings) trigger a semantic error diagnostic.

Finally, we skip standard DOM schema checks for foreign components to prevent spurious
validation errors since foreign components are not defined in standard HTML schemas.

PR Close #68674
2026-05-19 13:42:10 -07:00
..
compliance test: add NgModule compliance test with 'bootstrap' & local compilation 2026-05-01 15:58:05 -07:00
ngtsc refactor(compiler): support matching and validating foreign components in templates (#68674) 2026-05-19 13:42:10 -07:00
BUILD.bazel test(compiler): remove zone-based testing utilities 2026-02-05 16:56:55 -08:00
extract_i18n_spec.ts feat(core): add support for TypeScript 6 2026-02-17 08:40:38 -08:00
mocks.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00
perform_compile_spec.ts feat(core): add support for TypeScript 6 2026-02-17 08:40:38 -08:00
perform_watch_spec.ts feat(core): add support for TypeScript 6 2026-02-17 08:40:38 -08:00
test_support.ts feat(core): add support for TypeScript 6 2026-02-17 08:40:38 -08:00
typescript_support_spec.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00
version_helpers_spec.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00