angular/packages/core/test
Kristiyan Kostadinov 1a6ca68154 feat(compiler): add support for compile-time required inputs (#49304)
Adds support for marking a directive input as required. During template type checking, the compiler will verify that all required inputs have been specified and will raise a diagnostic if one or more are missing. Some specifics:
* Inputs are marked as required by passing an object literal with a `required: true` property to the `Input` decorator or into the `inputs` array.
* Required inputs imply that the directive can't work without them. This is why there's a new check that enforces that all required inputs of a host directive are exposed on the host.
* Required input diagnostics are reported through the `OutOfBandDiagnosticRecorder`, rather than generating a new structure in the TCB, because it allows us to provide a better error message.
* Currently required inputs are only supported during AOT compilation, because knowing which bindings are present during JIT can be tricky and may lead to increased bundle sizes.

Fixes #37706.

PR Close #49304
2023-03-15 16:59:24 -07:00
..
acceptance feat(compiler): add support for compile-time required inputs (#49304) 2023-03-15 16:59:24 -07:00
animation fix(animations): fix non-animatable warnings for easing (#48583) 2023-01-26 22:03:07 +00:00
bundling refactor(core): add hydration logic for view containers (#49382) 2023-03-14 14:22:09 -07:00
change_detection refactor(core): remove duplicated code in change_detection_util (#45599) 2022-04-12 22:26:09 +00:00
compiler build: ensure bootstrap transitive runfiles are made available (#48521) 2022-12-19 19:50:41 +00:00
debug feat(core): triggerEventHandler accept optional eventObj (#45279) 2022-03-09 13:51:54 -08:00
di refactor(core): cleanup type any (#48623) 2023-01-04 12:15:16 -08:00
dom refactor(core): cleanup type any (#48623) 2023-01-04 12:15:16 -08:00
i18n build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
linker refactor(core): cleanup type any (#48623) 2023-01-04 12:15:16 -08:00
metadata build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
reflection refactor(core): remove unused logic from reflection capabilities (#45335) 2022-03-24 11:02:39 -07:00
render3 refactor(core): serialize info about templates used to create embedded views (#49382) 2023-03-14 14:22:08 -07:00
sanitization docs: extract XSS security doc URL into a constant (#48082) 2022-11-17 13:21:16 -08:00
signals feat(core): add Angular Signals to the public API (#49150) 2023-02-22 11:27:21 -08:00
strict_types refactor(core): rename ...WithMeta types to ...Declaration and alias to unknown (#41119) 2021-03-22 08:57:18 -07:00
testability test(core): reset Testability getter after each test (#45947) 2022-05-10 16:02:53 -07:00
util refactor(core): Remove isObservable() in favor isSubscribable(). (#49295) 2023-03-08 17:58:19 +00:00
zone refactor: adjust packages/core/test to work with ESM (#48521) 2022-12-19 19:50:42 +00:00
application_config_spec.ts feat(core): add mergeApplicationConfig method (#49253) 2023-03-01 11:20:31 -08:00
application_init_spec.ts refactor(core): Application ref/init code cleaning (#49206) 2023-03-02 20:01:39 +00:00
application_module_spec.ts test(core): fix a crosstalk issue with locale ids (#45626) 2022-04-18 09:28:42 -07:00
application_ref_integration_spec.ts refactor: delete the View Engine runtime (#43884) 2021-11-23 21:10:06 +00:00
application_ref_spec.ts refactor(core): move Zone providers to a single provider function (#49373) 2023-03-14 09:20:53 -07:00
BUILD.bazel build: bundle tests for karma web test suites (#48521) 2022-12-19 19:50:42 +00:00
component_fixture_spec.ts feat(core): update reference and doc to change async to waitAsync. (#37583) 2020-08-03 12:54:13 -07:00
dev_mode_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
directive_lifecycle_integration_spec.ts refactor(core): cleanup type any (#48623) 2023-01-04 12:15:16 -08:00
error_handler_spec.ts refactor(core): remove unused error handler logic (#46216) 2022-06-02 13:40:16 -07:00
event_emitter_spec.ts refactor(core): cleanup type any (#48623) 2023-01-04 12:15:16 -08:00
fake_async_spec.ts refactor(core): cleanup type any (#48623) 2023-01-04 12:15:16 -08:00
forward_ref_integration_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
runtime_error_spec.ts refactor(core): split RuntimeError unit test up (#46239) 2022-06-06 10:12:06 -07:00
test_bed_spec.ts fix(common): Fix TestBed.overrideProvider type to include multi (#48424) 2022-12-12 09:40:22 -08:00
transfer_state_spec.ts refactor(core): move TransferState implementation to core (#49222) 2023-02-27 13:08:40 -08:00
util_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00