@angular/core 16.0.0-next.3 → 16.0.0-next.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (375) hide show
  1. package/{esm2020 → esm2022}/src/application_init.mjs +3 -3
  2. package/{esm2020 → esm2022}/src/application_module.mjs +4 -4
  3. package/esm2022/src/application_ref.mjs +908 -0
  4. package/esm2022/src/application_tokens.mjs +105 -0
  5. package/esm2022/src/change_detection/change_detector_ref.mjs +93 -0
  6. package/esm2022/src/change_detection/differs/iterable_differs.mjs +81 -0
  7. package/esm2022/src/change_detection/differs/keyvalue_differs.mjs +74 -0
  8. package/esm2022/src/compiler/compiler_facade_interface.mjs +29 -0
  9. package/{esm2020 → esm2022}/src/console.mjs +3 -3
  10. package/esm2022/src/core.mjs +56 -0
  11. package/esm2022/src/core_private_export.mjs +39 -0
  12. package/esm2022/src/core_reactivity_export_internal.mjs +12 -0
  13. package/esm2022/src/core_render3_private_export.mjs +37 -0
  14. package/esm2022/src/di/contextual.mjs +54 -0
  15. package/esm2022/src/di/index.mjs +29 -0
  16. package/esm2022/src/di/injector.mjs +62 -0
  17. package/esm2022/src/di/injector_compatibility.mjs +239 -0
  18. package/esm2022/src/di/provider_collection.mjs +279 -0
  19. package/esm2022/src/di/r3_injector.mjs +428 -0
  20. package/esm2022/src/di/reflective_injector.mjs +311 -0
  21. package/{esm2020 → esm2022}/src/errors.mjs +1 -1
  22. package/esm2022/src/hydration/annotate.mjs +426 -0
  23. package/esm2022/src/hydration/api.mjs +143 -0
  24. package/esm2022/src/hydration/cleanup.mjs +103 -0
  25. package/esm2022/src/hydration/compression.mjs +69 -0
  26. package/esm2022/src/hydration/error_handling.mjs +379 -0
  27. package/esm2022/src/hydration/interfaces.mjs +33 -0
  28. package/esm2022/src/hydration/node_lookup_utils.mjs +273 -0
  29. package/esm2022/src/hydration/utils.mjs +219 -0
  30. package/esm2022/src/hydration/views.mjs +84 -0
  31. package/esm2022/src/initial_render_pending_tasks.mjs +75 -0
  32. package/{esm2020 → esm2022}/src/linker/compiler.mjs +5 -5
  33. package/esm2022/src/linker/component_factory_resolver.mjs +42 -0
  34. package/esm2022/src/linker/destroy_ref.mjs +44 -0
  35. package/{esm2020 → esm2022}/src/linker/element_ref.mjs +6 -6
  36. package/esm2022/src/linker/query_list.mjs +169 -0
  37. package/{esm2020 → esm2022}/src/linker/template_ref.mjs +6 -6
  38. package/esm2022/src/linker/view_container_ref.mjs +395 -0
  39. package/esm2022/src/metadata/di.mjs +69 -0
  40. package/esm2022/src/metadata/directives.mjs +116 -0
  41. package/{esm2020 → esm2022}/src/metadata/do_boostrap.mjs +1 -1
  42. package/{esm2020 → esm2022}/src/metadata/ng_module.mjs +2 -2
  43. package/esm2022/src/metadata.mjs +18 -0
  44. package/{esm2020 → esm2022}/src/render/api.mjs +6 -6
  45. package/esm2022/src/render3/component_ref.mjs +386 -0
  46. package/{esm2020 → esm2022}/src/render3/context_discovery.mjs +1 -1
  47. package/esm2022/src/render3/features/standalone_feature.mjs +70 -0
  48. package/esm2022/src/render3/instructions/element.mjs +205 -0
  49. package/{esm2020 → esm2022}/src/render3/instructions/element_container.mjs +2 -5
  50. package/esm2022/src/render3/instructions/element_validation.mjs +271 -0
  51. package/esm2022/src/render3/instructions/listener.mjs +244 -0
  52. package/esm2022/src/render3/instructions/mark_view_dirty.mjs +35 -0
  53. package/esm2022/src/render3/instructions/projection.mjs +121 -0
  54. package/esm2022/src/render3/instructions/shared.mjs +1681 -0
  55. package/{esm2020 → esm2022}/src/render3/instructions/styling.mjs +5 -2
  56. package/esm2022/src/render3/instructions/template.mjs +117 -0
  57. package/esm2022/src/render3/instructions/text.mjs +67 -0
  58. package/esm2022/src/render3/interfaces/public_definitions.mjs +9 -0
  59. package/esm2022/src/render3/interfaces/type_checks.mjs +42 -0
  60. package/esm2022/src/render3/interfaces/view.mjs +49 -0
  61. package/esm2022/src/render3/jit/module.mjs +531 -0
  62. package/esm2022/src/render3/node_manipulation.mjs +960 -0
  63. package/esm2022/src/render3/node_selector_matcher.mjs +426 -0
  64. package/esm2022/src/render3/reactive_lview_consumer.mjs +80 -0
  65. package/esm2022/src/render3/reactivity/effect.mjs +67 -0
  66. package/{esm2020 → esm2022}/src/render3/util/change_detection_utils.mjs +2 -2
  67. package/{esm2020 → esm2022}/src/render3/util/view_utils.mjs +12 -1
  68. package/esm2022/src/render3/view_ref.mjs +307 -0
  69. package/{esm2020 → esm2022}/src/sanitization/sanitizer.mjs +7 -7
  70. package/esm2022/src/signals/index.mjs +15 -0
  71. package/esm2022/src/signals/src/api.mjs +47 -0
  72. package/esm2022/src/signals/src/computed.mjs +139 -0
  73. package/esm2022/src/signals/src/graph.mjs +165 -0
  74. package/esm2022/src/signals/src/signal.mjs +75 -0
  75. package/esm2022/src/signals/src/watch.mjs +62 -0
  76. package/esm2022/src/signals/src/weak_ref.mjs +35 -0
  77. package/{esm2020 → esm2022}/src/testability/testability.mjs +5 -5
  78. package/esm2022/src/transfer_state.mjs +153 -0
  79. package/esm2022/src/util/ng_dev_mode.mjs +79 -0
  80. package/{esm2020 → esm2022}/src/version.mjs +1 -1
  81. package/{esm2020 → esm2022}/testing/src/logger.mjs +4 -4
  82. package/{esm2020 → esm2022}/testing/src/ng_zone_mock.mjs +4 -4
  83. package/{esm2020 → esm2022}/testing/src/test_bed.mjs +2 -2
  84. package/esm2022/testing/src/test_bed_compiler.mjs +846 -0
  85. package/{fesm2020 → fesm2022}/core.mjs +1890 -779
  86. package/fesm2022/core.mjs.map +1 -0
  87. package/{fesm2020 → fesm2022}/testing.mjs +1203 -178
  88. package/fesm2022/testing.mjs.map +1 -0
  89. package/index.d.ts +453 -394
  90. package/package.json +8 -16
  91. package/schematics/migrations/guard-and-resolve-interfaces/bundle.js +694 -0
  92. package/schematics/migrations/guard-and-resolve-interfaces/bundle.js.map +7 -0
  93. package/schematics/migrations/{router-link-with-href → remove-module-id}/bundle.js +153 -155
  94. package/schematics/migrations/remove-module-id/bundle.js.map +7 -0
  95. package/schematics/migrations.json +8 -8
  96. package/schematics/ng-generate/standalone-migration/bundle.js +1082 -619
  97. package/schematics/ng-generate/standalone-migration/bundle.js.map +2 -2
  98. package/testing/index.d.ts +1 -1
  99. package/esm2020/src/application_ref.mjs +0 -907
  100. package/esm2020/src/application_tokens.mjs +0 -73
  101. package/esm2020/src/change_detection/change_detector_ref.mjs +0 -93
  102. package/esm2020/src/change_detection/differs/iterable_differs.mjs +0 -81
  103. package/esm2020/src/change_detection/differs/keyvalue_differs.mjs +0 -74
  104. package/esm2020/src/compiler/compiler_facade_interface.mjs +0 -29
  105. package/esm2020/src/core.mjs +0 -55
  106. package/esm2020/src/core_private_export.mjs +0 -37
  107. package/esm2020/src/core_reactivity_export_internal.mjs +0 -9
  108. package/esm2020/src/core_render3_private_export.mjs +0 -38
  109. package/esm2020/src/di/contextual.mjs +0 -37
  110. package/esm2020/src/di/index.mjs +0 -29
  111. package/esm2020/src/di/injector.mjs +0 -62
  112. package/esm2020/src/di/injector_compatibility.mjs +0 -236
  113. package/esm2020/src/di/provider_collection.mjs +0 -279
  114. package/esm2020/src/di/r3_injector.mjs +0 -421
  115. package/esm2020/src/di/reflective_injector.mjs +0 -311
  116. package/esm2020/src/hydration/annotate.mjs +0 -271
  117. package/esm2020/src/hydration/api.mjs +0 -128
  118. package/esm2020/src/hydration/cleanup.mjs +0 -50
  119. package/esm2020/src/hydration/error_handling.mjs +0 -37
  120. package/esm2020/src/hydration/interfaces.mjs +0 -17
  121. package/esm2020/src/hydration/node_lookup_utils.mjs +0 -83
  122. package/esm2020/src/hydration/utils.mjs +0 -206
  123. package/esm2020/src/hydration/views.mjs +0 -80
  124. package/esm2020/src/linker/component_factory_resolver.mjs +0 -42
  125. package/esm2020/src/linker/destroy_ref.mjs +0 -41
  126. package/esm2020/src/linker/query_list.mjs +0 -169
  127. package/esm2020/src/linker/view_container_ref.mjs +0 -394
  128. package/esm2020/src/metadata/di.mjs +0 -108
  129. package/esm2020/src/metadata/directives.mjs +0 -111
  130. package/esm2020/src/metadata.mjs +0 -18
  131. package/esm2020/src/render3/component_ref.mjs +0 -377
  132. package/esm2020/src/render3/features/standalone_feature.mjs +0 -70
  133. package/esm2020/src/render3/instructions/element.mjs +0 -198
  134. package/esm2020/src/render3/instructions/element_validation.mjs +0 -271
  135. package/esm2020/src/render3/instructions/listener.mjs +0 -243
  136. package/esm2020/src/render3/instructions/projection.mjs +0 -118
  137. package/esm2020/src/render3/instructions/shared.mjs +0 -1696
  138. package/esm2020/src/render3/instructions/template.mjs +0 -120
  139. package/esm2020/src/render3/instructions/text.mjs +0 -67
  140. package/esm2020/src/render3/interfaces/public_definitions.mjs +0 -9
  141. package/esm2020/src/render3/interfaces/type_checks.mjs +0 -39
  142. package/esm2020/src/render3/interfaces/view.mjs +0 -47
  143. package/esm2020/src/render3/jit/module.mjs +0 -544
  144. package/esm2020/src/render3/node_manipulation.mjs +0 -961
  145. package/esm2020/src/render3/node_selector_matcher.mjs +0 -414
  146. package/esm2020/src/render3/view_ref.mjs +0 -306
  147. package/esm2020/src/signals/index.mjs +0 -15
  148. package/esm2020/src/signals/src/api.mjs +0 -46
  149. package/esm2020/src/signals/src/computed.mjs +0 -142
  150. package/esm2020/src/signals/src/effect.mjs +0 -69
  151. package/esm2020/src/signals/src/graph.mjs +0 -114
  152. package/esm2020/src/signals/src/signal.mjs +0 -78
  153. package/esm2020/src/signals/src/watch.mjs +0 -54
  154. package/esm2020/src/signals/src/weak_ref.mjs +0 -11
  155. package/esm2020/src/transfer_state.mjs +0 -153
  156. package/esm2020/src/util/ng_dev_mode.mjs +0 -78
  157. package/esm2020/testing/src/test_bed_compiler.mjs +0 -841
  158. package/fesm2015/core.mjs +0 -29585
  159. package/fesm2015/core.mjs.map +0 -1
  160. package/fesm2015/testing.mjs +0 -25669
  161. package/fesm2015/testing.mjs.map +0 -1
  162. package/fesm2020/core.mjs.map +0 -1
  163. package/fesm2020/testing.mjs.map +0 -1
  164. package/schematics/migrations/relative-link-resolution/bundle.js +0 -283
  165. package/schematics/migrations/relative-link-resolution/bundle.js.map +0 -7
  166. package/schematics/migrations/router-link-with-href/bundle.js.map +0 -7
  167. /package/{esm2020 → esm2022}/core.mjs +0 -0
  168. /package/{esm2020 → esm2022}/index.mjs +0 -0
  169. /package/{esm2020 → esm2022}/public_api.mjs +0 -0
  170. /package/{esm2020 → esm2022}/src/application_config.mjs +0 -0
  171. /package/{esm2020 → esm2022}/src/change_detection/change_detection.mjs +0 -0
  172. /package/{esm2020 → esm2022}/src/change_detection/constants.mjs +0 -0
  173. /package/{esm2020 → esm2022}/src/change_detection/differs/default_iterable_differ.mjs +0 -0
  174. /package/{esm2020 → esm2022}/src/change_detection/differs/default_keyvalue_differ.mjs +0 -0
  175. /package/{esm2020 → esm2022}/src/change_detection/pipe_transform.mjs +0 -0
  176. /package/{esm2020 → esm2022}/src/change_detection.mjs +0 -0
  177. /package/{esm2020 → esm2022}/src/compiler/compiler_facade.mjs +0 -0
  178. /package/{esm2020 → esm2022}/src/core_reactivity_export.mjs +0 -0
  179. /package/{esm2020 → esm2022}/src/debug/debug_node.mjs +0 -0
  180. /package/{esm2020 → esm2022}/src/di/create_injector.mjs +0 -0
  181. /package/{esm2020 → esm2022}/src/di/forward_ref.mjs +0 -0
  182. /package/{esm2020 → esm2022}/src/di/initializer_token.mjs +0 -0
  183. /package/{esm2020 → esm2022}/src/di/inject_switch.mjs +0 -0
  184. /package/{esm2020 → esm2022}/src/di/injectable.mjs +0 -0
  185. /package/{esm2020 → esm2022}/src/di/injection_token.mjs +0 -0
  186. /package/{esm2020 → esm2022}/src/di/injector_marker.mjs +0 -0
  187. /package/{esm2020 → esm2022}/src/di/injector_token.mjs +0 -0
  188. /package/{esm2020 → esm2022}/src/di/interface/defs.mjs +0 -0
  189. /package/{esm2020 → esm2022}/src/di/interface/injector.mjs +0 -0
  190. /package/{esm2020 → esm2022}/src/di/interface/provider.mjs +0 -0
  191. /package/{esm2020 → esm2022}/src/di/internal_tokens.mjs +0 -0
  192. /package/{esm2020 → esm2022}/src/di/jit/environment.mjs +0 -0
  193. /package/{esm2020 → esm2022}/src/di/jit/injectable.mjs +0 -0
  194. /package/{esm2020 → esm2022}/src/di/jit/util.mjs +0 -0
  195. /package/{esm2020 → esm2022}/src/di/metadata.mjs +0 -0
  196. /package/{esm2020 → esm2022}/src/di/metadata_attr.mjs +0 -0
  197. /package/{esm2020 → esm2022}/src/di/null_injector.mjs +0 -0
  198. /package/{esm2020 → esm2022}/src/di/provider_token.mjs +0 -0
  199. /package/{esm2020 → esm2022}/src/di/reflective_errors.mjs +0 -0
  200. /package/{esm2020 → esm2022}/src/di/reflective_key.mjs +0 -0
  201. /package/{esm2020 → esm2022}/src/di/reflective_provider.mjs +0 -0
  202. /package/{esm2020 → esm2022}/src/di/scope.mjs +0 -0
  203. /package/{esm2020 → esm2022}/src/di.mjs +0 -0
  204. /package/{esm2020 → esm2022}/src/error_details_base_url.mjs +0 -0
  205. /package/{esm2020 → esm2022}/src/error_handler.mjs +0 -0
  206. /package/{esm2020 → esm2022}/src/event_emitter.mjs +0 -0
  207. /package/{esm2020 → esm2022}/src/hydration/skip_hydration.mjs +0 -0
  208. /package/{esm2020 → esm2022}/src/hydration/tokens.mjs +0 -0
  209. /package/{esm2020 → esm2022}/src/i18n/locale_data_api.mjs +0 -0
  210. /package/{esm2020 → esm2022}/src/i18n/locale_en.mjs +0 -0
  211. /package/{esm2020 → esm2022}/src/i18n/localization.mjs +0 -0
  212. /package/{esm2020 → esm2022}/src/i18n/tokens.mjs +0 -0
  213. /package/{esm2020 → esm2022}/src/interface/lifecycle_hooks.mjs +0 -0
  214. /package/{esm2020 → esm2022}/src/interface/simple_change.mjs +0 -0
  215. /package/{esm2020 → esm2022}/src/interface/type.mjs +0 -0
  216. /package/{esm2020 → esm2022}/src/linker/component_factory.mjs +0 -0
  217. /package/{esm2020 → esm2022}/src/linker/ng_module_factory.mjs +0 -0
  218. /package/{esm2020 → esm2022}/src/linker/ng_module_factory_loader.mjs +0 -0
  219. /package/{esm2020 → esm2022}/src/linker/ng_module_factory_loader_impl.mjs +0 -0
  220. /package/{esm2020 → esm2022}/src/linker/ng_module_registration.mjs +0 -0
  221. /package/{esm2020 → esm2022}/src/linker/view_ref.mjs +0 -0
  222. /package/{esm2020 → esm2022}/src/linker.mjs +0 -0
  223. /package/{esm2020 → esm2022}/src/metadata/ng_module_def.mjs +0 -0
  224. /package/{esm2020 → esm2022}/src/metadata/resource_loading.mjs +0 -0
  225. /package/{esm2020 → esm2022}/src/metadata/schema.mjs +0 -0
  226. /package/{esm2020 → esm2022}/src/metadata/view.mjs +0 -0
  227. /package/{esm2020 → esm2022}/src/platform_core_providers.mjs +0 -0
  228. /package/{esm2020 → esm2022}/src/r3_symbols.mjs +0 -0
  229. /package/{esm2020 → esm2022}/src/reflection/platform_reflection_capabilities.mjs +0 -0
  230. /package/{esm2020 → esm2022}/src/reflection/reflection_capabilities.mjs +0 -0
  231. /package/{esm2020 → esm2022}/src/render/api_flags.mjs +0 -0
  232. /package/{esm2020 → esm2022}/src/render.mjs +0 -0
  233. /package/{esm2020 → esm2022}/src/render3/assert.mjs +0 -0
  234. /package/{esm2020 → esm2022}/src/render3/bindings.mjs +0 -0
  235. /package/{esm2020 → esm2022}/src/render3/collect_native_nodes.mjs +0 -0
  236. /package/{esm2020 → esm2022}/src/render3/component.mjs +0 -0
  237. /package/{esm2020 → esm2022}/src/render3/definition.mjs +0 -0
  238. /package/{esm2020 → esm2022}/src/render3/definition_factory.mjs +0 -0
  239. /package/{esm2020 → esm2022}/src/render3/di.mjs +0 -0
  240. /package/{esm2020 → esm2022}/src/render3/di_setup.mjs +0 -0
  241. /package/{esm2020 → esm2022}/src/render3/errors.mjs +0 -0
  242. /package/{esm2020 → esm2022}/src/render3/errors_di.mjs +0 -0
  243. /package/{esm2020 → esm2022}/src/render3/features/copy_definition_feature.mjs +0 -0
  244. /package/{esm2020 → esm2022}/src/render3/features/host_directives_feature.mjs +0 -0
  245. /package/{esm2020 → esm2022}/src/render3/features/inherit_definition_feature.mjs +0 -0
  246. /package/{esm2020 → esm2022}/src/render3/features/ng_onchanges_feature.mjs +0 -0
  247. /package/{esm2020 → esm2022}/src/render3/features/providers_feature.mjs +0 -0
  248. /package/{esm2020 → esm2022}/src/render3/fields.mjs +0 -0
  249. /package/{esm2020 → esm2022}/src/render3/global_utils_api.mjs +0 -0
  250. /package/{esm2020 → esm2022}/src/render3/hooks.mjs +0 -0
  251. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_apply.mjs +0 -0
  252. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_debug.mjs +0 -0
  253. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_insert_before_index.mjs +0 -0
  254. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_locale_id.mjs +0 -0
  255. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_parse.mjs +0 -0
  256. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_postprocess.mjs +0 -0
  257. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_tree_shaking.mjs +0 -0
  258. /package/{esm2020 → esm2022}/src/render3/i18n/i18n_util.mjs +0 -0
  259. /package/{esm2020 → esm2022}/src/render3/index.mjs +0 -0
  260. /package/{esm2020 → esm2022}/src/render3/instructions/advance.mjs +0 -0
  261. /package/{esm2020 → esm2022}/src/render3/instructions/all.mjs +0 -0
  262. /package/{esm2020 → esm2022}/src/render3/instructions/attribute.mjs +0 -0
  263. /package/{esm2020 → esm2022}/src/render3/instructions/attribute_interpolation.mjs +0 -0
  264. /package/{esm2020 → esm2022}/src/render3/instructions/change_detection.mjs +0 -0
  265. /package/{esm2020 → esm2022}/src/render3/instructions/class_map_interpolation.mjs +0 -0
  266. /package/{esm2020 → esm2022}/src/render3/instructions/di.mjs +0 -0
  267. /package/{esm2020 → esm2022}/src/render3/instructions/di_attr.mjs +0 -0
  268. /package/{esm2020 → esm2022}/src/render3/instructions/get_current_view.mjs +0 -0
  269. /package/{esm2020 → esm2022}/src/render3/instructions/host_property.mjs +0 -0
  270. /package/{esm2020 → esm2022}/src/render3/instructions/i18n.mjs +0 -0
  271. /package/{esm2020 → esm2022}/src/render3/instructions/i18n_icu_container_visitor.mjs +0 -0
  272. /package/{esm2020 → esm2022}/src/render3/instructions/interpolation.mjs +0 -0
  273. /package/{esm2020 → esm2022}/src/render3/instructions/namespace.mjs +0 -0
  274. /package/{esm2020 → esm2022}/src/render3/instructions/next_context.mjs +0 -0
  275. /package/{esm2020 → esm2022}/src/render3/instructions/property.mjs +0 -0
  276. /package/{esm2020 → esm2022}/src/render3/instructions/property_interpolation.mjs +0 -0
  277. /package/{esm2020 → esm2022}/src/render3/instructions/storage.mjs +0 -0
  278. /package/{esm2020 → esm2022}/src/render3/instructions/style_map_interpolation.mjs +0 -0
  279. /package/{esm2020 → esm2022}/src/render3/instructions/style_prop_interpolation.mjs +0 -0
  280. /package/{esm2020 → esm2022}/src/render3/instructions/text_interpolation.mjs +0 -0
  281. /package/{esm2020 → esm2022}/src/render3/interfaces/container.mjs +0 -0
  282. /package/{esm2020 → esm2022}/src/render3/interfaces/context.mjs +0 -0
  283. /package/{esm2020 → esm2022}/src/render3/interfaces/definition.mjs +0 -0
  284. /package/{esm2020 → esm2022}/src/render3/interfaces/document.mjs +0 -0
  285. /package/{esm2020 → esm2022}/src/render3/interfaces/i18n.mjs +0 -0
  286. /package/{esm2020 → esm2022}/src/render3/interfaces/injector.mjs +0 -0
  287. /package/{esm2020 → esm2022}/src/render3/interfaces/lview_tracking.mjs +0 -0
  288. /package/{esm2020 → esm2022}/src/render3/interfaces/node.mjs +0 -0
  289. /package/{esm2020 → esm2022}/src/render3/interfaces/projection.mjs +0 -0
  290. /package/{esm2020 → esm2022}/src/render3/interfaces/query.mjs +0 -0
  291. /package/{esm2020 → esm2022}/src/render3/interfaces/renderer.mjs +0 -0
  292. /package/{esm2020 → esm2022}/src/render3/interfaces/renderer_dom.mjs +0 -0
  293. /package/{esm2020 → esm2022}/src/render3/interfaces/sanitization.mjs +0 -0
  294. /package/{esm2020 → esm2022}/src/render3/interfaces/styling.mjs +0 -0
  295. /package/{esm2020 → esm2022}/src/render3/jit/directive.mjs +0 -0
  296. /package/{esm2020 → esm2022}/src/render3/jit/environment.mjs +0 -0
  297. /package/{esm2020 → esm2022}/src/render3/jit/jit_options.mjs +0 -0
  298. /package/{esm2020 → esm2022}/src/render3/jit/module_patch.mjs +0 -0
  299. /package/{esm2020 → esm2022}/src/render3/jit/partial.mjs +0 -0
  300. /package/{esm2020 → esm2022}/src/render3/jit/pipe.mjs +0 -0
  301. /package/{esm2020 → esm2022}/src/render3/jit/util.mjs +0 -0
  302. /package/{esm2020 → esm2022}/src/render3/metadata.mjs +0 -0
  303. /package/{esm2020 → esm2022}/src/render3/namespaces.mjs +0 -0
  304. /package/{esm2020 → esm2022}/src/render3/ng_module_ref.mjs +0 -0
  305. /package/{esm2020 → esm2022}/src/render3/node_assert.mjs +0 -0
  306. /package/{esm2020 → esm2022}/src/render3/node_manipulation_i18n.mjs +0 -0
  307. /package/{esm2020 → esm2022}/src/render3/pipe.mjs +0 -0
  308. /package/{esm2020 → esm2022}/src/render3/profiler.mjs +0 -0
  309. /package/{esm2020 → esm2022}/src/render3/pure_function.mjs +0 -0
  310. /package/{esm2020 → esm2022}/src/render3/query.mjs +0 -0
  311. /package/{esm2020 → esm2022}/src/render3/state.mjs +0 -0
  312. /package/{esm2020 → esm2022}/src/render3/styling/class_differ.mjs +0 -0
  313. /package/{esm2020 → esm2022}/src/render3/styling/static_styling.mjs +0 -0
  314. /package/{esm2020 → esm2022}/src/render3/styling/style_binding_list.mjs +0 -0
  315. /package/{esm2020 → esm2022}/src/render3/styling/styling_parser.mjs +0 -0
  316. /package/{esm2020 → esm2022}/src/render3/tokens.mjs +0 -0
  317. /package/{esm2020 → esm2022}/src/render3/util/attrs_utils.mjs +0 -0
  318. /package/{esm2020 → esm2022}/src/render3/util/discovery_utils.mjs +0 -0
  319. /package/{esm2020 → esm2022}/src/render3/util/global_utils.mjs +0 -0
  320. /package/{esm2020 → esm2022}/src/render3/util/injector_utils.mjs +0 -0
  321. /package/{esm2020 → esm2022}/src/render3/util/misc_utils.mjs +0 -0
  322. /package/{esm2020 → esm2022}/src/render3/util/stringify_utils.mjs +0 -0
  323. /package/{esm2020 → esm2022}/src/render3/util/view_traversal_utils.mjs +0 -0
  324. /package/{esm2020 → esm2022}/src/render3/view_engine_compatibility_prebound.mjs +0 -0
  325. /package/{esm2020 → esm2022}/src/sanitization/bypass.mjs +0 -0
  326. /package/{esm2020 → esm2022}/src/sanitization/html_sanitizer.mjs +0 -0
  327. /package/{esm2020 → esm2022}/src/sanitization/iframe_attrs_validation.mjs +0 -0
  328. /package/{esm2020 → esm2022}/src/sanitization/inert_body.mjs +0 -0
  329. /package/{esm2020 → esm2022}/src/sanitization/sanitization.mjs +0 -0
  330. /package/{esm2020 → esm2022}/src/sanitization/security.mjs +0 -0
  331. /package/{esm2020 → esm2022}/src/sanitization/url_sanitizer.mjs +0 -0
  332. /package/{esm2020 → esm2022}/src/signals/src/untracked.mjs +0 -0
  333. /package/{esm2020 → esm2022}/src/util/array_utils.mjs +0 -0
  334. /package/{esm2020 → esm2022}/src/util/assert.mjs +0 -0
  335. /package/{esm2020 → esm2022}/src/util/char_code.mjs +0 -0
  336. /package/{esm2020 → esm2022}/src/util/closure.mjs +0 -0
  337. /package/{esm2020 → esm2022}/src/util/coercion.mjs +0 -0
  338. /package/{esm2020 → esm2022}/src/util/comparison.mjs +0 -0
  339. /package/{esm2020 → esm2022}/src/util/decorators.mjs +0 -0
  340. /package/{esm2020 → esm2022}/src/util/dom.mjs +0 -0
  341. /package/{esm2020 → esm2022}/src/util/empty.mjs +0 -0
  342. /package/{esm2020 → esm2022}/src/util/errors.mjs +0 -0
  343. /package/{esm2020 → esm2022}/src/util/global.mjs +0 -0
  344. /package/{esm2020 → esm2022}/src/util/is_dev_mode.mjs +0 -0
  345. /package/{esm2020 → esm2022}/src/util/iterable.mjs +0 -0
  346. /package/{esm2020 → esm2022}/src/util/lang.mjs +0 -0
  347. /package/{esm2020 → esm2022}/src/util/microtask.mjs +0 -0
  348. /package/{esm2020 → esm2022}/src/util/ng_i18n_closure_mode.mjs +0 -0
  349. /package/{esm2020 → esm2022}/src/util/ng_jit_mode.mjs +0 -0
  350. /package/{esm2020 → esm2022}/src/util/ng_reflect.mjs +0 -0
  351. /package/{esm2020 → esm2022}/src/util/noop.mjs +0 -0
  352. /package/{esm2020 → esm2022}/src/util/property.mjs +0 -0
  353. /package/{esm2020 → esm2022}/src/util/raf.mjs +0 -0
  354. /package/{esm2020 → esm2022}/src/util/security/trusted_type_defs.mjs +0 -0
  355. /package/{esm2020 → esm2022}/src/util/security/trusted_types.mjs +0 -0
  356. /package/{esm2020 → esm2022}/src/util/security/trusted_types_bypass.mjs +0 -0
  357. /package/{esm2020 → esm2022}/src/util/stringify.mjs +0 -0
  358. /package/{esm2020 → esm2022}/src/view/provider_flags.mjs +0 -0
  359. /package/{esm2020 → esm2022}/src/zone/async-stack-tagging.mjs +0 -0
  360. /package/{esm2020 → esm2022}/src/zone/ng_zone.mjs +0 -0
  361. /package/{esm2020 → esm2022}/src/zone.mjs +0 -0
  362. /package/{esm2020 → esm2022}/testing/index.mjs +0 -0
  363. /package/{esm2020 → esm2022}/testing/public_api.mjs +0 -0
  364. /package/{esm2020 → esm2022}/testing/src/async.mjs +0 -0
  365. /package/{esm2020 → esm2022}/testing/src/component_fixture.mjs +0 -0
  366. /package/{esm2020 → esm2022}/testing/src/fake_async.mjs +0 -0
  367. /package/{esm2020 → esm2022}/testing/src/metadata_override.mjs +0 -0
  368. /package/{esm2020 → esm2022}/testing/src/metadata_overrider.mjs +0 -0
  369. /package/{esm2020 → esm2022}/testing/src/resolvers.mjs +0 -0
  370. /package/{esm2020 → esm2022}/testing/src/styling.mjs +0 -0
  371. /package/{esm2020 → esm2022}/testing/src/test_bed_common.mjs +0 -0
  372. /package/{esm2020 → esm2022}/testing/src/test_hooks.mjs +0 -0
  373. /package/{esm2020 → esm2022}/testing/src/testing.mjs +0 -0
  374. /package/{esm2020 → esm2022}/testing/src/testing_internal.mjs +0 -0
  375. /package/{esm2020 → esm2022}/testing/testing.mjs +0 -0
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v16.0.0-next.3
2
+ * @license Angular v16.0.0-next.5
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -128,45 +128,6 @@ export declare interface AfterViewInit {
128
128
  ngAfterViewInit(): void;
129
129
  }
130
130
 
131
- /**
132
- * A DI token that you can use to create a virtual [provider](guide/glossary#provider)
133
- * that will populate the `entryComponents` field of components and NgModules
134
- * based on its `useValue` property value.
135
- * All components that are referenced in the `useValue` value (either directly
136
- * or in a nested array or map) are added to the `entryComponents` property.
137
- *
138
- * @usageNotes
139
- *
140
- * The following example shows how the router can populate the `entryComponents`
141
- * field of an NgModule based on a router configuration that refers
142
- * to components.
143
- *
144
- * ```typescript
145
- * // helper function inside the router
146
- * function provideRoutes(routes) {
147
- * return [
148
- * {provide: ROUTES, useValue: routes},
149
- * {provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: routes, multi: true}
150
- * ];
151
- * }
152
- *
153
- * // user code
154
- * let routes = [
155
- * {path: '/root', component: RootComp},
156
- * {path: '/teams', component: TeamsComp}
157
- * ];
158
- *
159
- * @NgModule({
160
- * providers: [provideRoutes(routes)]
161
- * })
162
- * class ModuleWithRoutes {}
163
- * ```
164
- *
165
- * @publicApi
166
- * @deprecated Since 9.0.0. With Ivy, this property is no longer necessary.
167
- */
168
- export declare const ANALYZE_FOR_ENTRY_COMPONENTS: InjectionToken<any>;
169
-
170
131
  /**
171
132
  * A [DI token](guide/glossary#di-token "DI token definition") that indicates which animations
172
133
  * module has been loaded.
@@ -572,6 +533,15 @@ export declare class ApplicationRef {
572
533
  */
573
534
  export declare function asNativeElements(debugEls: DebugElement[]): any;
574
535
 
536
+ /**
537
+ * Asserts that the current stack frame is within an injection context and has access to `inject`.
538
+ *
539
+ * @param debugFn a reference to the function making the assertion (used for the error message).
540
+ *
541
+ * @publicApi
542
+ */
543
+ export declare function assertInInjectionContext(debugFn: Function): void;
544
+
575
545
  /**
576
546
  * Checks that there is currently a platform that contains the given token as a provider.
577
547
  *
@@ -813,6 +783,9 @@ export declare abstract class ChangeDetectorRef {
813
783
  abstract reattach(): void;
814
784
  }
815
785
 
786
+ declare interface ChangeDetectorRefInterface extends ChangeDetectorRef {
787
+ }
788
+
816
789
  declare const CHILD_HEAD = 13;
817
790
 
818
791
  declare const CHILD_TAIL = 14;
@@ -882,8 +855,8 @@ declare const CLEANUP = 7;
882
855
  */
883
856
  export declare class Compiler {
884
857
  /**
885
- * Compiles the given NgModule and all of its components. All templates of the components listed
886
- * in `entryComponents` have to be inlined.
858
+ * Compiles the given NgModule and all of its components. All templates of the components
859
+ * have to be inlined.
887
860
  */
888
861
  compileModuleSync<T>(moduleType: Type<T>): NgModuleFactory<T>;
889
862
  /**
@@ -985,6 +958,7 @@ export declare interface Component extends Directive {
985
958
  * SystemJS exposes the `__moduleName` variable within each module.
986
959
  * In CommonJS, this can be set to `module.id`.
987
960
  *
961
+ * @deprecated This option does not have any effect. Will be removed in Angular v17.
988
962
  */
989
963
  moduleId?: string;
990
964
  /**
@@ -1036,14 +1010,6 @@ export declare interface Component extends Directive {
1036
1010
  * Overrides the default interpolation start and end delimiters (`{{` and `}}`).
1037
1011
  */
1038
1012
  interpolation?: [string, string];
1039
- /**
1040
- * A set of components that should be compiled along with
1041
- * this component. For each component listed here,
1042
- * Angular creates a {@link ComponentFactory} and stores it in the
1043
- * {@link ComponentFactoryResolver}.
1044
- * @deprecated Since 9.0.0. With Ivy, this property is no longer necessary.
1045
- */
1046
- entryComponents?: Array<Type<any> | any[]>;
1047
1013
  /**
1048
1014
  * True to preserve or false to remove potentially superfluous whitespace characters
1049
1015
  * from the compiled template. Whitespace characters are those matching the `\s`
@@ -1538,7 +1504,7 @@ declare type ComponentTemplate<T> = {
1538
1504
  *
1539
1505
  * @developerPreview
1540
1506
  */
1541
- export declare function computed<T>(computation: () => T, equal?: ValueEqualityFn<T>): Signal<T>;
1507
+ export declare function computed<T>(computation: () => T, options?: CreateComputedOptions<T>): Signal<T>;
1542
1508
 
1543
1509
  /**
1544
1510
  * Configures the `Injector` to return an instance of a token.
@@ -1588,78 +1554,6 @@ export declare interface ConstructorSansProvider {
1588
1554
  deps?: any[];
1589
1555
  }
1590
1556
 
1591
- /**
1592
- * Represents a reader that can depend on reactive values (`Producer`s) and receive
1593
- * notifications when those values change.
1594
- *
1595
- * `Consumer`s do not wrap the reads they consume themselves, but rather can be set
1596
- * as the active reader via `setActiveConsumer`.
1597
- *
1598
- * The set of dependencies of a `Consumer` is dynamic. Implementers expose a
1599
- * monotonically increasing `trackingVersion` counter, which increments whenever
1600
- * the `Consumer` is about to re-run any reactive reads it needs and establish a
1601
- * new set of dependencies as a result.
1602
- *
1603
- * `Producer`s store the last `trackingVersion` they've seen from `Consumer`s which
1604
- * have read them. This allows a `Producer` to identify whether its record of the
1605
- * dependency is current or stale, by comparing the `Consumer`'s `trackingVersion`
1606
- * to the version at which the dependency was established.
1607
- */
1608
- declare interface Consumer {
1609
- /**
1610
- * Numeric identifier of this `Producer`.
1611
- *
1612
- * May also be used to satisfy the interface for `Producer`.
1613
- */
1614
- readonly id: ConsumerId;
1615
- /**
1616
- * A `WeakRef` to this `Consumer` instance.
1617
- *
1618
- * An implementer provides this as a cached value to avoid the need to instantiate
1619
- * multiple `WeakRef` instances for the same `Consumer`.
1620
- *
1621
- * May also be used to satisfy the interface for `Producer`.
1622
- */
1623
- readonly ref: WeakRef<Consumer>;
1624
- /**
1625
- * A map of `Edge`s to `Producer` dependencies, keyed by the `ProducerId`.
1626
- *
1627
- * Used to poll `Producer`s to determine if the `Consumer` has really updated
1628
- * or not.
1629
- */
1630
- readonly producers: Map<ProducerId, Edge>;
1631
- /**
1632
- * Monotonically increasing counter representing a version of this `Consumer`'s
1633
- * dependencies.
1634
- */
1635
- readonly trackingVersion: number;
1636
- /**
1637
- * Called when a `Producer` dependency of this `Consumer` indicates it may
1638
- * have a new value.
1639
- *
1640
- * Notification alone does not mean the `Producer` has definitely produced a
1641
- * semantically different value, only that it _may_ have changed. Before a
1642
- * `Consumer` re-runs any computations or side effects, it should use the
1643
- * `consumerPollValueStatus` method to poll the `Producer`s on which it depends
1644
- * and determine if any of them have actually updated.
1645
- */
1646
- notify(): void;
1647
- }
1648
-
1649
- /**
1650
- * Identifier for a `Consumer`, which is a branded `number`.
1651
- *
1652
- * Note that `ProducerId` and `ConsumerId` are assigned from the same sequence, so the same `number`
1653
- * will never be used for both.
1654
- *
1655
- * Branding provides additional type safety by ensuring that `ProducerId` and `ConsumerId` are
1656
- * mutually unassignable without a cast. Since several `Map`s are keyed by these IDs, this prevents
1657
- * `ConsumerId`s from being inadvertently used to look up `Producer`s or vice versa.
1658
- */
1659
- declare type ConsumerId = number & {
1660
- __consumer: true;
1661
- };
1662
-
1663
1557
  declare const CONTAINERS = "c";
1664
1558
 
1665
1559
  /**
@@ -1918,6 +1812,39 @@ export declare function createComponent<C>(component: Type<C>, options: {
1918
1812
  projectableNodes?: Node[][];
1919
1813
  }): ComponentRef<C>;
1920
1814
 
1815
+ /**
1816
+ * Options passed to the `computed` creation function.
1817
+ *
1818
+ * @developerPreview
1819
+ */
1820
+ export declare interface CreateComputedOptions<T> {
1821
+ /**
1822
+ * A comparison function which defines equality for computed values.
1823
+ */
1824
+ equal?: ValueEqualityFn<T>;
1825
+ }
1826
+
1827
+ /**
1828
+ * Options passed to the `effect` function.
1829
+ *
1830
+ * @developerPreview
1831
+ */
1832
+ export declare interface CreateEffectOptions {
1833
+ /**
1834
+ * The `Injector` in which to create the effect.
1835
+ *
1836
+ * If this is not provided, the current injection context will be used instead (via `inject`).
1837
+ */
1838
+ injector?: Injector;
1839
+ /**
1840
+ * Whether the `effect` should require manual cleanup.
1841
+ *
1842
+ * If this is `false` (the default) the effect will automatically register itself to be cleaned up
1843
+ * with the current `DestroyRef`.
1844
+ */
1845
+ manualCleanup?: boolean;
1846
+ }
1847
+
1921
1848
  /**
1922
1849
  * Create a new environment injector.
1923
1850
  *
@@ -1974,6 +1901,27 @@ export declare function createPlatform(injector: Injector): PlatformRef;
1974
1901
  */
1975
1902
  export declare function createPlatformFactory(parentPlatformFactory: ((extraProviders?: StaticProvider[]) => PlatformRef) | null, name: string, providers?: StaticProvider[]): (extraProviders?: StaticProvider[]) => PlatformRef;
1976
1903
 
1904
+ /**
1905
+ * Options passed to the `signal` creation function.
1906
+ *
1907
+ * @developerPreview
1908
+ */
1909
+ export declare interface CreateSignalOptions<T> {
1910
+ /**
1911
+ * A comparison function which defines equality for signal values.
1912
+ */
1913
+ equal?: ValueEqualityFn<T>;
1914
+ }
1915
+
1916
+ /**
1917
+ * Token used to configure the [Content Security Policy](https://web.dev/strict-csp/) nonce that
1918
+ * Angular will apply when inserting inline styles. If not provided, Angular will look up its value
1919
+ * from the `ngCspNonce` attribute of the application root node.
1920
+ *
1921
+ * @publicApi
1922
+ */
1923
+ export declare const CSP_NONCE: InjectionToken<string | null>;
1924
+
1977
1925
 
1978
1926
  /**
1979
1927
  * Expresses a single CSS Selector.
@@ -2209,6 +2157,18 @@ declare const DECLARATION_LCONTAINER = 17;
2209
2157
 
2210
2158
  declare const DECLARATION_VIEW = 15;
2211
2159
 
2160
+ /**
2161
+ * Makes `T` read-only at the property level.
2162
+ *
2163
+ * Objects have their properties mapped to `DeepReadonly` types and arrays are converted to
2164
+ * `ReadonlyArray`s of `DeepReadonly` values.
2165
+ *
2166
+ * @developerPreview
2167
+ */
2168
+ export declare type DeepReadonly<T> = T extends (infer R)[] ? ReadonlyArray<DeepReadonly<R>> : (T extends Function ? T : (T extends object ? {
2169
+ readonly [P in keyof T]: DeepReadonly<T[P]>;
2170
+ } : T));
2171
+
2212
2172
  /**
2213
2173
  * Provide this token to set the default currency code your application uses for
2214
2174
  * CurrencyPipe when there is no currency code passed into it. This is only used by
@@ -2328,6 +2288,18 @@ declare interface DehydratedView {
2328
2288
  segmentHeads?: {
2329
2289
  [index: number]: RNode | null;
2330
2290
  };
2291
+ /**
2292
+ * An instance of a Set that represents nodes disconnected from
2293
+ * the DOM tree at the serialization time, but otherwise present
2294
+ * in the internal data structures.
2295
+ *
2296
+ * The Set is based on the `SerializedView[DISCONNECTED_NODES]` data
2297
+ * and is needed to have constant-time lookups.
2298
+ *
2299
+ * If the value is `null`, it means that there were no disconnected
2300
+ * nodes detected in this view at serialization time.
2301
+ */
2302
+ disconnectedNodes?: Set<number> | null;
2331
2303
  }
2332
2304
 
2333
2305
  declare type DependencyTypeList = (ɵDirectiveType<any> | ɵComponentType<any> | PipeType<any> | Type<any>)[];
@@ -2366,12 +2338,27 @@ export declare function destroyPlatform(): void;
2366
2338
  * The scope of this destruction depends on where `DestroyRef` is injected. If `DestroyRef`
2367
2339
  * is injected in a component or directive, the callbacks run when that component or
2368
2340
  * directive is destroyed. Otherwise the callbacks run when a corresponding injector is destroyed.
2341
+ *
2342
+ * @publicApi
2369
2343
  */
2370
2344
  export declare abstract class DestroyRef {
2371
2345
  /**
2372
- * Registers a destroy callback in a given lifecycle scope.
2346
+ * Registers a destroy callback in a given lifecycle scope. Returns a cleanup function that can
2347
+ * be invoked to unregister the callback.
2348
+ *
2349
+ * @usageNotes
2350
+ * ### Example
2351
+ * ```typescript
2352
+ * const destroyRef = inject(DestroyRef);
2353
+ *
2354
+ * // register a destroy callback
2355
+ * const unregisterFn = destroyRef.onDestroy(() => doSomethingOnDestroy());
2356
+ *
2357
+ * // stop the destroy callback from executing if needed
2358
+ * unregisterFn();
2359
+ * ```
2373
2360
  */
2374
- abstract onDestroy(callback: () => void): void;
2361
+ abstract onDestroy(callback: () => void): () => void;
2375
2362
  }
2376
2363
 
2377
2364
  /**
@@ -2413,13 +2400,19 @@ export declare interface Directive {
2413
2400
  * Enumerates the set of data-bound input properties for a directive
2414
2401
  *
2415
2402
  * Angular automatically updates input properties during change detection.
2416
- * The `inputs` property defines a set of `directiveProperty` to `bindingProperty`
2417
- * configuration:
2403
+ * The `inputs` property accepts either strings or object literals that configure the directive
2404
+ * properties that should be exposed as inputs.
2418
2405
  *
2419
- * - `directiveProperty` specifies the component property where the value is written.
2420
- * - `bindingProperty` specifies the DOM property where the value is read from.
2406
+ * When an object literal is passed in, the `name` property indicates which property on the
2407
+ * class the input should write to, while the `alias` determines the name under
2408
+ * which the input will be available in template bindings. The `required` property indicates that
2409
+ * the input is required which will trigger a compile-time error if it isn't passed in when the
2410
+ * directive is used.
2421
2411
  *
2422
- * When `bindingProperty` is not provided, it is assumed to be equal to `directiveProperty`.
2412
+ * When a string is passed into the `inputs` array, it can have a format of `'name'` or
2413
+ * `'name: alias'` where `name` is the property on the class that the directive should write
2414
+ * to, while the `alias` determines the name under which the input will be available in
2415
+ * template bindings. String-based input definitions are assumed to be optional.
2423
2416
  *
2424
2417
  * @usageNotes
2425
2418
  *
@@ -2428,7 +2421,7 @@ export declare interface Directive {
2428
2421
  * ```typescript
2429
2422
  * @Component({
2430
2423
  * selector: 'bank-account',
2431
- * inputs: ['bankName', 'id: account-id'],
2424
+ * inputs: ['bankName', {name: 'id', alias: 'account-id'}],
2432
2425
  * template: `
2433
2426
  * Bank Name: {{bankName}}
2434
2427
  * Account Id: {{id}}
@@ -2441,18 +2434,22 @@ export declare interface Directive {
2441
2434
  * ```
2442
2435
  *
2443
2436
  */
2444
- inputs?: string[];
2437
+ inputs?: ({
2438
+ name: string;
2439
+ alias?: string;
2440
+ required?: boolean;
2441
+ } | string)[];
2445
2442
  /**
2446
2443
  * Enumerates the set of event-bound output properties.
2447
2444
  *
2448
2445
  * When an output property emits an event, an event handler attached to that event
2449
2446
  * in the template is invoked.
2450
2447
  *
2451
- * The `outputs` property defines a set of `directiveProperty` to `bindingProperty`
2448
+ * The `outputs` property defines a set of `directiveProperty` to `alias`
2452
2449
  * configuration:
2453
2450
  *
2454
2451
  * - `directiveProperty` specifies the component property that emits events.
2455
- * - `bindingProperty` specifies the DOM property the event handler is attached to.
2452
+ * - `alias` specifies the DOM property the event handler is attached to.
2456
2453
  *
2457
2454
  * @usageNotes
2458
2455
  *
@@ -2862,6 +2859,8 @@ declare type DirectiveDefList = (ɵDirectiveDef<any> | ɵComponentDef<any>)[];
2862
2859
  */
2863
2860
  declare type DirectiveDefListOrFactory = (() => DirectiveDefList) | DirectiveDefList;
2864
2861
 
2862
+ declare const DISCONNECTED_NODES = "d";
2863
+
2865
2864
  /**
2866
2865
  * @description
2867
2866
  * Hook for manual bootstrapping of the application instead of using `bootstrap` array in @NgModule
@@ -2869,7 +2868,7 @@ declare type DirectiveDefListOrFactory = (() => DirectiveDefList) | DirectiveDef
2869
2868
  *
2870
2869
  * Reference to the current application is provided as a parameter.
2871
2870
  *
2872
- * See ["Bootstrapping"](guide/bootstrapping) and ["Entry components"](guide/entry-components).
2871
+ * See ["Bootstrapping"](guide/bootstrapping).
2873
2872
  *
2874
2873
  * @usageNotes
2875
2874
  * The example below uses `ApplicationRef.bootstrap()` to render the
@@ -2928,59 +2927,32 @@ export declare interface DoCheck {
2928
2927
  }
2929
2928
 
2930
2929
  /**
2931
- * A bidirectional edge in the producer-consumer dependency graph.
2930
+ * Create a global `Effect` for the given reactive function.
2931
+ *
2932
+ * @developerPreview
2932
2933
  */
2933
- declare interface Edge {
2934
- /**
2935
- * Weakly held reference to the `Consumer` side of this edge.
2936
- */
2937
- readonly consumerRef: WeakRef<Consumer>;
2938
- /**
2939
- * Weakly held reference to the `Producer` side of this edge.
2940
- */
2941
- readonly producerRef: WeakRef<Producer>;
2942
- /**
2943
- * `trackingVersion` of the `Consumer` at which this dependency edge was last observed.
2944
- *
2945
- * If this doesn't match the `Consumer`'s current `trackingVersion`, then this dependency record
2946
- * is stale, and needs to be cleaned up.
2947
- */
2948
- atTrackingVersion: number;
2949
- /**
2950
- * `valueVersion` of the `Producer` at the time this dependency was last accessed.
2951
- *
2952
- * This is used by `consumerPollValueStatus` to determine whether a `Consumer`'s dependencies have
2953
- * semantically changed.
2954
- */
2955
- seenValueVersion: number;
2956
- }
2934
+ export declare function effect(effectFn: () => EffectCleanupFn | void, options?: CreateEffectOptions): EffectRef;
2957
2935
 
2958
2936
  /**
2959
- * A global reactive effect, which can be manually scheduled or destroyed.
2937
+ * An effect can, optionally, return a cleanup function. If returned, the cleanup is executed before
2938
+ * the next effect run. The cleanup function makes it possible to "cancel" any work that the
2939
+ * previous effect run might have started.
2960
2940
  *
2961
2941
  * @developerPreview
2962
2942
  */
2963
- export declare interface Effect {
2964
- /**
2965
- * Schedule the effect for manual execution, if it's not already.
2966
- */
2967
- schedule(): void;
2968
- /**
2969
- * Shut down the effect, removing it from any upcoming scheduled executions.
2970
- */
2971
- destroy(): void;
2972
- /**
2973
- * Direct access to the effect's `Consumer` for advanced use cases.
2974
- */
2975
- readonly consumer: Consumer;
2976
- }
2943
+ export declare type EffectCleanupFn = () => void;
2977
2944
 
2978
2945
  /**
2979
- * Create a global `Effect` for the given reactive function.
2946
+ * A global reactive effect, which can be manually destroyed.
2980
2947
  *
2981
2948
  * @developerPreview
2982
2949
  */
2983
- export declare function effect(effectFn: () => void): Effect;
2950
+ export declare interface EffectRef {
2951
+ /**
2952
+ * Shut down the effect, removing it from any upcoming scheduled executions.
2953
+ */
2954
+ destroy(): void;
2955
+ }
2984
2956
 
2985
2957
  /**
2986
2958
  * Keys within serialized view data structure to represent various
@@ -4606,7 +4578,11 @@ export declare interface Input {
4606
4578
  /**
4607
4579
  * The name of the DOM property to which the input property is bound.
4608
4580
  */
4609
- bindingPropertyName?: string;
4581
+ alias?: string;
4582
+ /**
4583
+ * Whether the input is required for the directive to function.
4584
+ */
4585
+ required?: boolean;
4610
4586
  }
4611
4587
 
4612
4588
  /**
@@ -4664,8 +4640,8 @@ export declare interface InputDecorator {
4664
4640
  *
4665
4641
  * @see [Input and Output properties](guide/inputs-outputs)
4666
4642
  */
4667
- (bindingPropertyName?: string): any;
4668
- new (bindingPropertyName?: string): any;
4643
+ (arg?: string | Input): any;
4644
+ new (arg?: string | Input): any;
4669
4645
  }
4670
4646
 
4671
4647
  /**
@@ -5413,6 +5389,17 @@ declare interface LView<T = unknown> extends Array<any> {
5413
5389
  * entries.
5414
5390
  */
5415
5391
  [ON_DESTROY_HOOKS]: Array<() => void> | null;
5392
+ /**
5393
+ * The `Consumer` for this `LView`'s template so that signal reads can be tracked.
5394
+ *
5395
+ * This is initially `null` and gets assigned a consumer after template execution
5396
+ * if any signals were read.
5397
+ */
5398
+ [REACTIVE_TEMPLATE_CONSUMER]: ReactiveLViewConsumer | null;
5399
+ /**
5400
+ * Same as REACTIVE_TEMPLATE_CONSUMER, but for the host bindings of the LView.
5401
+ */
5402
+ [REACTIVE_HOST_BINDING_CONSUMER]: ReactiveLViewConsumer | null;
5416
5403
  }
5417
5404
 
5418
5405
  /** Flags associated with an LView (saved in LView[FLAGS]) */
@@ -5468,6 +5455,22 @@ declare const enum LViewFlags {
5468
5455
  */
5469
5456
  export declare function makeEnvironmentProviders(providers: (Provider | EnvironmentProviders)[]): EnvironmentProviders;
5470
5457
 
5458
+ /**
5459
+ * Create a `StateKey<T>` that can be used to store value of type T with `TransferState`.
5460
+ *
5461
+ * Example:
5462
+ *
5463
+ * ```
5464
+ * const COUNTER_KEY = makeStateKey<number>('counter');
5465
+ * let value = 10;
5466
+ *
5467
+ * transferState.set(COUNTER_KEY, value);
5468
+ * ```
5469
+ *
5470
+ * @publicApi
5471
+ */
5472
+ export declare function makeStateKey<T = void>(key: string): StateKey<T>;
5473
+
5471
5474
  /**
5472
5475
  * Merge multiple application configurations from left to right.
5473
5476
  *
@@ -5538,6 +5541,8 @@ export declare interface ModuleWithProviders<T> {
5538
5541
 
5539
5542
  declare const MOVED_VIEWS = 9;
5540
5543
 
5544
+ declare const MULTIPLIER = "x";
5545
+
5541
5546
  declare type Mutable<T extends {
5542
5547
  [x: string]: any;
5543
5548
  }, K extends string> = {
@@ -5696,28 +5701,7 @@ export declare interface NgModule {
5696
5701
  */
5697
5702
  exports?: Array<Type<any> | any[]>;
5698
5703
  /**
5699
- * The set of components to compile when this NgModule is defined,
5700
- * so that they can be dynamically loaded into the view.
5701
- *
5702
- * For each component listed here, Angular creates a `ComponentFactory`
5703
- * and stores it in the `ComponentFactoryResolver`.
5704
- *
5705
- * Angular automatically adds components in the module's bootstrap
5706
- * and route definitions into the `entryComponents` list. Use this
5707
- * option to add components that are bootstrapped
5708
- * using one of the imperative techniques, such as `ViewContainerRef.createComponent()`.
5709
- *
5710
- * @see [Entry Components](guide/entry-components)
5711
- * @deprecated
5712
- * Since 9.0.0. With Ivy, this property is no longer necessary.
5713
- * (You may need to keep these if building a library that will be consumed by a View Engine
5714
- * application.)
5715
- */
5716
- entryComponents?: Array<Type<any> | any[]>;
5717
- /**
5718
- * The set of components that are bootstrapped when
5719
- * this module is bootstrapped. The components listed here
5720
- * are automatically added to `entryComponents`.
5704
+ * The set of components that are bootstrapped when this module is bootstrapped.
5721
5705
  */
5722
5706
  bootstrap?: Array<Type<any> | any[]>;
5723
5707
  /**
@@ -5994,6 +5978,8 @@ export declare class NgZone {
5994
5978
  */
5995
5979
  export declare const NO_ERRORS_SCHEMA: SchemaMetadata;
5996
5980
 
5981
+ declare const NODES = "n";
5982
+
5997
5983
  declare const NUM_ROOT_NODES = "r";
5998
5984
 
5999
5985
  declare const ON_DESTROY_HOOKS = 22;
@@ -6134,7 +6120,7 @@ export declare interface Output {
6134
6120
  /**
6135
6121
  * The name of the DOM property to which the output property is bound.
6136
6122
  */
6137
- bindingPropertyName?: string;
6123
+ alias?: string;
6138
6124
  }
6139
6125
 
6140
6126
  /**
@@ -6165,8 +6151,8 @@ export declare interface OutputDecorator {
6165
6151
  * @see [Input and Output properties](guide/inputs-outputs)
6166
6152
  *
6167
6153
  */
6168
- (bindingPropertyName?: string): any;
6169
- new (bindingPropertyName?: string): any;
6154
+ (alias?: string): any;
6155
+ new (alias?: string): any;
6170
6156
  }
6171
6157
 
6172
6158
  /**
@@ -6428,74 +6414,6 @@ declare const enum PreOrderHookFlags {
6428
6414
  */
6429
6415
  declare type ProcessProvidersFunction = (providers: Provider[]) => Provider[];
6430
6416
 
6431
- /**
6432
- * Represents a value that can be read reactively, and can notify readers (`Consumer`s)
6433
- * when it changes.
6434
- *
6435
- * Producers maintain a weak reference to any `Consumer`s which may depend on the
6436
- * producer's value.
6437
- *
6438
- * Implementers of `Producer` expose a monotonic `valueVersion` counter, and are responsible
6439
- * for incrementing this version when their value semantically changes. Some Producers may
6440
- * produce this value lazily and thus at times need to be polled for potential updates to
6441
- * their value (and by extension their `valueVersion`). This is accomplished via the
6442
- * `checkForChangedValue` method for Producers, which should perform whatever calculations
6443
- * are necessary to ensure `valueVersion` is up to date.
6444
- *
6445
- * `Producer`s support two operations:
6446
- * * `producerNotifyConsumers`
6447
- * * `producerAccessed`
6448
- */
6449
- declare interface Producer {
6450
- /**
6451
- * Numeric identifier of this `Producer`.
6452
- *
6453
- * May also be used to satisfy the interface for `Consumer`.
6454
- */
6455
- readonly id: ProducerId;
6456
- /**
6457
- * A `WeakRef` to this `Producer` instance.
6458
- *
6459
- * An implementer provides this as a cached value to avoid the need to instantiate
6460
- * multiple `WeakRef` instances for the same `Producer`.
6461
- *
6462
- * May also be used to satisfy the interface for `Consumer`.
6463
- */
6464
- readonly ref: WeakRef<Producer>;
6465
- /**
6466
- * A map of dependency `Edge`s to `Consumer`s, keyed by the `ConsumerId`.
6467
- *
6468
- * Used when the produced value changes to notify interested `Consumer`s.
6469
- */
6470
- readonly consumers: Map<ConsumerId, Edge>;
6471
- /**
6472
- * Monotonically increasing counter which increases when the value of this `Producer`
6473
- * semantically changes.
6474
- */
6475
- readonly valueVersion: number;
6476
- /**
6477
- * Ensure that `valueVersion` is up to date for the `Producer`'s value.
6478
- *
6479
- * Some `Producer`s may produce values lazily, and thus require polling before their
6480
- * `valueVersion` can be compared with the version captured during a previous read.
6481
- */
6482
- checkForChangedValue(): void;
6483
- }
6484
-
6485
- /**
6486
- * Identifier for a `Producer`, which is a branded `number`.
6487
- *
6488
- * Note that `ProducerId` and `ConsumerId` are assigned from the same sequence, so the same `number`
6489
- * will never be used for both.
6490
- *
6491
- * Branding provides additional type safety by ensuring that `ProducerId` and `ConsumerId` are
6492
- * mutually unassignable without a cast. Since several `Map`s are keyed by these IDs, this prevents
6493
- * `ProducerId`s from being inadvertently used to look up `Consumer`s or vice versa.
6494
- */
6495
- declare type ProducerId = number & {
6496
- __producer: true;
6497
- };
6498
-
6499
6417
  /**
6500
6418
  * List of slots for a projection. A slot can be either based on a parsed CSS selector
6501
6419
  * which will be used to determine nodes which are projected into that slot.
@@ -6894,7 +6812,7 @@ declare class R3Injector extends EnvironmentInjector {
6894
6812
  * hook was found.
6895
6813
  */
6896
6814
  destroy(): void;
6897
- onDestroy(callback: () => void): void;
6815
+ onDestroy(callback: () => void): () => void;
6898
6816
  runInContext<ReturnT>(fn: () => ReturnT): ReturnT;
6899
6817
  get<T>(token: ProviderToken<T>, notFoundValue?: any, flags?: InjectFlags | InjectOptions): T;
6900
6818
  toString(): string;
@@ -6905,6 +6823,7 @@ declare class R3Injector extends EnvironmentInjector {
6905
6823
  private processProvider;
6906
6824
  private hydrate;
6907
6825
  private injectableDefInScope;
6826
+ private removeOnDestroy;
6908
6827
  }
6909
6828
 
6910
6829
  declare interface RComment extends RNode {
@@ -6921,6 +6840,112 @@ declare interface RDomTokenList {
6921
6840
  remove(token: string): void;
6922
6841
  }
6923
6842
 
6843
+ declare const REACTIVE_HOST_BINDING_CONSUMER = 25;
6844
+
6845
+ declare const REACTIVE_TEMPLATE_CONSUMER = 24;
6846
+
6847
+ declare class ReactiveLViewConsumer extends ReactiveNode {
6848
+ private _lView;
6849
+ set lView(lView: LView);
6850
+ protected onConsumerDependencyMayHaveChanged(): void;
6851
+ protected onProducerUpdateValueVersion(): void;
6852
+ get hasReadASignal(): boolean;
6853
+ runInContext(fn: HostBindingsFunction<unknown> | ComponentTemplate<unknown>, rf: ɵRenderFlags, ctx: unknown): void;
6854
+ destroy(): void;
6855
+ }
6856
+
6857
+ /**
6858
+ * A node in the reactive graph.
6859
+ *
6860
+ * Nodes can be producers of reactive values, consumers of other reactive values, or both.
6861
+ *
6862
+ * Producers are nodes that produce values, and can be depended upon by consumer nodes.
6863
+ *
6864
+ * Producers expose a monotonic `valueVersion` counter, and are responsible for incrementing this
6865
+ * version when their value semantically changes. Some producers may produce their values lazily and
6866
+ * thus at times need to be polled for potential updates to their value (and by extension their
6867
+ * `valueVersion`). This is accomplished via the `onProducerUpdateValueVersion` method for
6868
+ * implemented by producers, which should perform whatever calculations are necessary to ensure
6869
+ * `valueVersion` is up to date.
6870
+ *
6871
+ * Consumers are nodes that depend on the values of producers and are notified when those values
6872
+ * might have changed.
6873
+ *
6874
+ * Consumers do not wrap the reads they consume themselves, but rather can be set as the active
6875
+ * reader via `setActiveConsumer`. Reads of producers that happen while a consumer is active will
6876
+ * result in those producers being added as dependencies of that consumer node.
6877
+ *
6878
+ * The set of dependencies of a consumer is dynamic. Implementers expose a monotonically increasing
6879
+ * `trackingVersion` counter, which increments whenever the consumer is about to re-run any reactive
6880
+ * reads it needs and establish a new set of dependencies as a result.
6881
+ *
6882
+ * Producers store the last `trackingVersion` they've seen from `Consumer`s which have read them.
6883
+ * This allows a producer to identify whether its record of the dependency is current or stale, by
6884
+ * comparing the consumer's `trackingVersion` to the version at which the dependency was
6885
+ * last observed.
6886
+ */
6887
+ declare abstract class ReactiveNode {
6888
+ private readonly id;
6889
+ /**
6890
+ * A cached weak reference to this node, which will be used in `ReactiveEdge`s.
6891
+ */
6892
+ private readonly ref;
6893
+ /**
6894
+ * Edges to producers on which this node depends (in its consumer capacity).
6895
+ */
6896
+ private readonly producers;
6897
+ /**
6898
+ * Edges to consumers on which this node depends (in its producer capacity).
6899
+ */
6900
+ private readonly consumers;
6901
+ /**
6902
+ * Monotonically increasing counter representing a version of this `Consumer`'s
6903
+ * dependencies.
6904
+ */
6905
+ protected trackingVersion: number;
6906
+ /**
6907
+ * Monotonically increasing counter which increases when the value of this `Producer`
6908
+ * semantically changes.
6909
+ */
6910
+ protected valueVersion: number;
6911
+ /**
6912
+ * Called for consumers whenever one of their dependencies notifies that it might have a new
6913
+ * value.
6914
+ */
6915
+ protected abstract onConsumerDependencyMayHaveChanged(): void;
6916
+ /**
6917
+ * Called for producers when a dependent consumer is checking if the producer's value has actually
6918
+ * changed.
6919
+ */
6920
+ protected abstract onProducerUpdateValueVersion(): void;
6921
+ /**
6922
+ * Polls dependencies of a consumer to determine if they have actually changed.
6923
+ *
6924
+ * If this returns `false`, then even though the consumer may have previously been notified of a
6925
+ * change, the values of its dependencies have not actually changed and the consumer should not
6926
+ * rerun any reactions.
6927
+ */
6928
+ protected consumerPollProducersForChange(): boolean;
6929
+ /**
6930
+ * Notify all consumers of this producer that its value may have changed.
6931
+ */
6932
+ protected producerMayHaveChanged(): void;
6933
+ /**
6934
+ * Mark that this producer node has been accessed in the current reactive context.
6935
+ */
6936
+ protected producerAccessed(): void;
6937
+ /**
6938
+ * Whether this consumer currently has any producers registered.
6939
+ */
6940
+ protected get hasProducers(): boolean;
6941
+ /**
6942
+ * Checks if a `Producer` has a current value which is different than the value
6943
+ * last seen at a specific version by a `Consumer` which recorded a dependency on
6944
+ * this `Producer`.
6945
+ */
6946
+ private producerPollStatus;
6947
+ }
6948
+
6924
6949
  /**
6925
6950
  * Creates an object that allows to retrieve component metadata.
6926
6951
  *
@@ -7741,6 +7766,12 @@ declare const enum RuntimeErrorCode {
7741
7766
  ASYNC_INITIALIZERS_STILL_RUNNING = 405,
7742
7767
  APPLICATION_REF_ALREADY_DESTROYED = 406,
7743
7768
  RENDERER_NOT_FOUND = 407,
7769
+ HYDRATION_NODE_MISMATCH = 500,
7770
+ HYDRATION_MISSING_SIBLINGS = 501,
7771
+ HYDRATION_MISSING_NODE = 502,
7772
+ UNSUPPORTED_PROJECTION_DOM_NODES = 503,
7773
+ INVALID_SKIP_HYDRATION_HOST = 504,
7774
+ HYDRATION_I18N_NOT_YET_SUPPORTED = 518,
7744
7775
  INVALID_I18N_STRUCTURE = 700,
7745
7776
  MISSING_LOCALE_DATA = 701,
7746
7777
  IMPORT_PROVIDERS_FROM_STANDALONE = 800,
@@ -7886,6 +7917,12 @@ declare interface SerializedContainerView extends SerializedView {
7886
7917
  * and identify segments that belong to different views.
7887
7918
  */
7888
7919
  [NUM_ROOT_NODES]: number;
7920
+ /**
7921
+ * Number of times this view is repeated.
7922
+ * This is used to avoid serializing and sending the same hydration
7923
+ * information about similar views (for example, produced by *ngFor).
7924
+ */
7925
+ [MULTIPLIER]?: number;
7889
7926
  }
7890
7927
 
7891
7928
  /**
@@ -7923,28 +7960,22 @@ declare interface SerializedView {
7923
7960
  * of serialized information about views within this container.
7924
7961
  */
7925
7962
  [CONTAINERS]?: Record<number, SerializedContainerView[]>;
7926
- }
7927
-
7928
- /**
7929
- * A `Signal` with a value that can be mutated via a setter interface.
7930
- *
7931
- * @developerPreview
7932
- */
7933
- export declare interface SettableSignal<T> extends Signal<T> {
7934
7963
  /**
7935
- * Directly set the signal to a new value, and notify any dependents.
7936
- */
7937
- set(value: T): void;
7938
- /**
7939
- * Update the value of the signal based on its current value, and
7940
- * notify any dependents.
7964
+ * Serialized information about nodes in a template.
7965
+ * Key-value pairs where a key is an index of the corresponding
7966
+ * DOM node in an LView and the value is a path that describes
7967
+ * the location of this node (as a set of navigation instructions).
7941
7968
  */
7942
- update(updateFn: (value: T) => T): void;
7969
+ [NODES]?: Record<number, string>;
7943
7970
  /**
7944
- * Update the current value by mutating it in-place, and
7945
- * notify any dependents.
7971
+ * A list of ids which represents a set of nodes disconnected
7972
+ * from the DOM tree at the serialization time, but otherwise
7973
+ * present in the internal data structures.
7974
+ *
7975
+ * This information is used to avoid triggering the hydration
7976
+ * logic for such nodes and instead use a regular "creation mode".
7946
7977
  */
7947
- mutate(mutatorFn: (value: T) => void): void;
7978
+ [DISCONNECTED_NODES]?: number[];
7948
7979
  }
7949
7980
 
7950
7981
  /**
@@ -7970,8 +8001,8 @@ declare const SIGNAL: unique symbol;
7970
8001
  *
7971
8002
  * @developerPreview
7972
8003
  */
7973
- export declare type Signal<T> = (() => T) & {
7974
- [SIGNAL]: true;
8004
+ export declare type Signal<T> = (() => DeepReadonly<T>) & {
8005
+ [SIGNAL]: unknown;
7975
8006
  };
7976
8007
 
7977
8008
  /**
@@ -7979,7 +8010,7 @@ export declare type Signal<T> = (() => T) & {
7979
8010
  *
7980
8011
  * @developerPreview
7981
8012
  */
7982
- export declare function signal<T>(initialValue: T, equal?: ValueEqualityFn<T>): SettableSignal<T>;
8013
+ export declare function signal<T>(initialValue: T, options?: CreateSignalOptions<T>): WritableSignal<T>;
7983
8014
 
7984
8015
 
7985
8016
  /**
@@ -8060,6 +8091,25 @@ export declare interface SkipSelfDecorator {
8060
8091
  new (): SkipSelf;
8061
8092
  }
8062
8093
 
8094
+ /**
8095
+ * A type-safe key to use with `TransferState`.
8096
+ *
8097
+ * Example:
8098
+ *
8099
+ * ```
8100
+ * const COUNTER_KEY = makeStateKey<number>('counter');
8101
+ * let value = 10;
8102
+ *
8103
+ * transferState.set(COUNTER_KEY, value);
8104
+ * ```
8105
+ *
8106
+ * @publicApi
8107
+ */
8108
+ export declare type StateKey<T> = string & {
8109
+ __not_a_string: never;
8110
+ __value_type?: T;
8111
+ };
8112
+
8063
8113
  /**
8064
8114
  * Configures the `Injector` to return an instance of `useClass` for a token.
8065
8115
  * @see ["Dependency Injection Guide"](guide/dependency-injection).
@@ -9158,6 +9208,55 @@ export declare interface TrackByFunction<T> {
9158
9208
  <U extends T>(index: number, item: T & U): any;
9159
9209
  }
9160
9210
 
9211
+ /**
9212
+ * A key value store that is transferred from the application on the server side to the application
9213
+ * on the client side.
9214
+ *
9215
+ * The `TransferState` is available as an injectable token.
9216
+ * On the client, just inject this token using DI and use it, it will be lazily initialized.
9217
+ * On the server it's already included if `renderApplication` function is used. Otherwise, import
9218
+ * the `ServerTransferStateModule` module to make the `TransferState` available.
9219
+ *
9220
+ * The values in the store are serialized/deserialized using JSON.stringify/JSON.parse. So only
9221
+ * boolean, number, string, null and non-class objects will be serialized and deserialized in a
9222
+ * non-lossy manner.
9223
+ *
9224
+ * @publicApi
9225
+ */
9226
+ export declare class TransferState {
9227
+ /** @nocollapse */
9228
+ static ɵprov: unknown;
9229
+ private onSerializeCallbacks;
9230
+ /**
9231
+ * Get the value corresponding to a key. Return `defaultValue` if key is not found.
9232
+ */
9233
+ get<T>(key: StateKey<T>, defaultValue: T): T;
9234
+ /**
9235
+ * Set the value corresponding to a key.
9236
+ */
9237
+ set<T>(key: StateKey<T>, value: T): void;
9238
+ /**
9239
+ * Remove a key from the store.
9240
+ */
9241
+ remove<T>(key: StateKey<T>): void;
9242
+ /**
9243
+ * Test whether a key exists in the store.
9244
+ */
9245
+ hasKey<T>(key: StateKey<T>): boolean;
9246
+ /**
9247
+ * Indicates whether the state is empty.
9248
+ */
9249
+ get isEmpty(): boolean;
9250
+ /**
9251
+ * Register a callback to provide the value for a key when `toJson` is called.
9252
+ */
9253
+ onSerialize<T>(key: StateKey<T>, callback: () => T): void;
9254
+ /**
9255
+ * Serialize the current state of the store to JSON.
9256
+ */
9257
+ toJson(): string;
9258
+ }
9259
+
9161
9260
  /**
9162
9261
  * Use this token at bootstrap to provide the content of your translation file (`xtb`,
9163
9262
  * `xlf` or `xlf2`) when you want to translate your application in another language.
@@ -10141,9 +10240,6 @@ declare enum ViewEncapsulation_2 {
10141
10240
  ShadowDom = 3
10142
10241
  }
10143
10242
 
10144
- declare interface viewEngine_ChangeDetectorRef_interface extends ChangeDetectorRef {
10145
- }
10146
-
10147
10243
  /**
10148
10244
  * Definition of what a view queries function should look like.
10149
10245
  */
@@ -10190,12 +10286,32 @@ declare interface WeakRef<T extends object> {
10190
10286
  deref(): T | undefined;
10191
10287
  }
10192
10288
 
10193
- declare const WeakRef: WeakRefCtor;
10194
-
10195
10289
  declare interface WeakRefCtor {
10196
10290
  new <T extends object>(value: T): WeakRef<T>;
10197
10291
  }
10198
10292
 
10293
+ /**
10294
+ * A `Signal` with a value that can be mutated via a setter interface.
10295
+ *
10296
+ * @developerPreview
10297
+ */
10298
+ export declare interface WritableSignal<T> extends Signal<T> {
10299
+ /**
10300
+ * Directly set the signal to a new value, and notify any dependents.
10301
+ */
10302
+ set(value: T): void;
10303
+ /**
10304
+ * Update the value of the signal based on its current value, and
10305
+ * notify any dependents.
10306
+ */
10307
+ update(updateFn: (value: T) => T): void;
10308
+ /**
10309
+ * Update the current value by mutating it in-place, and
10310
+ * notify any dependents.
10311
+ */
10312
+ mutate(mutatorFn: (value: T) => void): void;
10313
+ }
10314
+
10199
10315
  /**
10200
10316
  * Sanitizes the given unsafe, untrusted HTML fragment, and returns HTML text that is safe to add to
10201
10317
  * the DOM in a browser environment.
@@ -10814,13 +10930,6 @@ export declare function ɵflushModuleScopingQueueAsMuchAsPossible(): void;
10814
10930
  */
10815
10931
  export declare function ɵformatRuntimeError<T extends number = RuntimeErrorCode>(code: T, message: null | false | string): string;
10816
10932
 
10817
- /**
10818
- * The following getter methods retrieve the definition from the type. Currently the retrieval
10819
- * honors inheritance, but in the future we may change the rule to require that definitions are
10820
- * explicit. This would require some sort of migration strategy.
10821
- */
10822
- export declare function ɵgetComponentDef<T>(type: any): ɵComponentDef<T> | null;
10823
-
10824
10933
  /**
10825
10934
  * Retrieves directive instances associated with a given DOM node. Does not include
10826
10935
  * component instances.
@@ -10927,6 +11036,31 @@ export declare function ɵgetUnknownPropertyStrictMode(): boolean;
10927
11036
 
10928
11037
  export declare const ɵglobal: any;
10929
11038
 
11039
+ /**
11040
+ * *Internal* service that keeps track of pending tasks happening in the system
11041
+ * during the initial rendering. No tasks are tracked after an initial
11042
+ * rendering.
11043
+ *
11044
+ * This information is needed to make sure that the serialization on the server
11045
+ * is delayed until all tasks in the queue (such as an initial navigation or a
11046
+ * pending HTTP request) are completed.
11047
+ */
11048
+ export declare class ɵInitialRenderPendingTasks implements OnDestroy {
11049
+ private taskId;
11050
+ private collection;
11051
+ private ngZone;
11052
+ private resolve;
11053
+ private promise;
11054
+ get whenAllTasksComplete(): Promise<void>;
11055
+ completed: boolean;
11056
+ constructor();
11057
+ add(): number;
11058
+ remove(taskId: number): void;
11059
+ ngOnDestroy(): void;
11060
+ static ɵfac: i0.ɵɵFactoryDeclaration<ɵInitialRenderPendingTasks, never>;
11061
+ static ɵprov: i0.ɵɵInjectableDeclaration<ɵInitialRenderPendingTasks>;
11062
+ }
11063
+
10930
11064
  /** Returns a ChangeDetectorRef (a.k.a. a ViewRef) */
10931
11065
  export declare function ɵinjectChangeDetectorRef(flags: InjectFlags): ChangeDetectorRef;
10932
11066
 
@@ -11096,22 +11230,6 @@ export declare function ɵmakeDecorator<T>(name: string, props?: (...args: any[]
11096
11230
  (...args: any[]): (cls: any) => any;
11097
11231
  };
11098
11232
 
11099
- /**
11100
- * Create a `StateKey<T>` that can be used to store value of type T with `TransferState`.
11101
- *
11102
- * Example:
11103
- *
11104
- * ```
11105
- * const COUNTER_KEY = makeStateKey<number>('counter');
11106
- * let value = 10;
11107
- *
11108
- * transferState.set(COUNTER_KEY, value);
11109
- * ```
11110
- *
11111
- * @publicApi
11112
- */
11113
- export declare function ɵmakeStateKey<T = void>(key: string): ɵStateKey<T>;
11114
-
11115
11233
 
11116
11234
  export declare const ɵNG_COMP_DEF: string;
11117
11235
 
@@ -11470,6 +11588,7 @@ export declare class ɵRender3ComponentRef<T> extends ComponentRef<T> {
11470
11588
  hostView: ɵViewRef<T>;
11471
11589
  changeDetectorRef: ChangeDetectorRef;
11472
11590
  componentType: Type<T>;
11591
+ private previousInputValues;
11473
11592
  constructor(componentType: Type<T>, instance: T, location: ElementRef, _rootLView: LView, _tNode: TElementNode | TContainerNode | TElementContainerNode);
11474
11593
  setInput(name: string, value: unknown): void;
11475
11594
  get injector(): Injector;
@@ -11620,6 +11739,8 @@ export declare interface ɵSafeValue {
11620
11739
  */
11621
11740
  export declare function ɵsetAllowDuplicateNgModuleIdsForTest(allowDuplicates: boolean): void;
11622
11741
 
11742
+ export declare function ɵsetAlternateWeakRefImpl(impl: WeakRefCtor): void;
11743
+
11623
11744
  /**
11624
11745
  * Adds decorator, constructor, and property metadata to a given type via static metadata fields
11625
11746
  * on the type.
@@ -11669,25 +11790,6 @@ export declare function ɵsetUnknownElementStrictMode(shouldThrow: boolean): voi
11669
11790
  */
11670
11791
  export declare function ɵsetUnknownPropertyStrictMode(shouldThrow: boolean): void;
11671
11792
 
11672
- /**
11673
- * A type-safe key to use with `TransferState`.
11674
- *
11675
- * Example:
11676
- *
11677
- * ```
11678
- * const COUNTER_KEY = makeStateKey<number>('counter');
11679
- * let value = 10;
11680
- *
11681
- * transferState.set(COUNTER_KEY, value);
11682
- * ```
11683
- *
11684
- * @publicApi
11685
- */
11686
- export declare type ɵStateKey<T> = string & {
11687
- __not_a_string: never;
11688
- __value_type?: T;
11689
- };
11690
-
11691
11793
  /** Store a value in the `data` at a given `index`. */
11692
11794
  export declare function ɵstore<T>(tView: TView, lView: LView, index: number, value: T): void;
11693
11795
 
@@ -11710,55 +11812,6 @@ export declare const ɵTESTABILITY: InjectionToken<Testability>;
11710
11812
  */
11711
11813
  export declare const ɵTESTABILITY_GETTER: InjectionToken<GetTestability>;
11712
11814
 
11713
- /**
11714
- * A key value store that is transferred from the application on the server side to the application
11715
- * on the client side.
11716
- *
11717
- * The `TransferState` is available as an injectable token.
11718
- * On the client, just inject this token using DI and use it, it will be lazily initialized.
11719
- * On the server it's already included if `renderApplication` function is used. Otherwise, import
11720
- * the `ServerTransferStateModule` module to make the `TransferState` available.
11721
- *
11722
- * The values in the store are serialized/deserialized using JSON.stringify/JSON.parse. So only
11723
- * boolean, number, string, null and non-class objects will be serialized and deserialized in a
11724
- * non-lossy manner.
11725
- *
11726
- * @publicApi
11727
- */
11728
- export declare class ɵTransferState {
11729
- /** @nocollapse */
11730
- static ɵprov: unknown;
11731
- private onSerializeCallbacks;
11732
- /**
11733
- * Get the value corresponding to a key. Return `defaultValue` if key is not found.
11734
- */
11735
- get<T>(key: ɵStateKey<T>, defaultValue: T): T;
11736
- /**
11737
- * Set the value corresponding to a key.
11738
- */
11739
- set<T>(key: ɵStateKey<T>, value: T): void;
11740
- /**
11741
- * Remove a key from the store.
11742
- */
11743
- remove<T>(key: ɵStateKey<T>): void;
11744
- /**
11745
- * Test whether a key exists in the store.
11746
- */
11747
- hasKey<T>(key: ɵStateKey<T>): boolean;
11748
- /**
11749
- * Indicates whether the state is empty.
11750
- */
11751
- get isEmpty(): boolean;
11752
- /**
11753
- * Register a callback to provide the value for a key when `toJson` is called.
11754
- */
11755
- onSerialize<T>(key: ɵStateKey<T>, callback: () => T): void;
11756
- /**
11757
- * Serialize the current state of the store to JSON.
11758
- */
11759
- toJson(): string;
11760
- }
11761
-
11762
11815
  /**
11763
11816
  * Compute the pair of transitive scopes (compilation scope and exported scope) for a given type
11764
11817
  * (either a NgModule or a standalone component / directive / pipe).
@@ -11776,7 +11829,7 @@ export declare function ɵunwrapSafeValue(value: ɵSafeValue): string;
11776
11829
 
11777
11830
  export declare function ɵunwrapSafeValue<T>(value: T): T;
11778
11831
 
11779
- export declare class ɵViewRef<T> implements EmbeddedViewRef<T>, InternalViewRef, viewEngine_ChangeDetectorRef_interface {
11832
+ export declare class ɵViewRef<T> implements EmbeddedViewRef<T>, InternalViewRef, ChangeDetectorRefInterface {
11780
11833
  /**
11781
11834
  * This represents the `LView` associated with the point where `ChangeDetectorRef` was
11782
11835
  * requested.
@@ -12647,7 +12700,10 @@ export declare function ɵɵclassProp(className: string, value: boolean | undefi
12647
12700
  * @publicApi
12648
12701
  */
12649
12702
  export declare type ɵɵComponentDeclaration<T, Selector extends String, ExportAs extends string[], InputMap extends {
12650
- [key: string]: string;
12703
+ [key: string]: string | {
12704
+ alias: string | null;
12705
+ required: boolean;
12706
+ };
12651
12707
  }, OutputMap extends {
12652
12708
  [key: string]: string;
12653
12709
  }, QueryFields extends string[], NgContentSelectors extends string[], IsStandalone extends boolean = false, HostDirectives = never> = unknown;
@@ -12822,7 +12878,10 @@ export declare function ɵɵdefinePipe<T>(pipeDef: {
12822
12878
  * @publicApi
12823
12879
  */
12824
12880
  export declare type ɵɵDirectiveDeclaration<T, Selector extends string, ExportAs extends string[], InputMap extends {
12825
- [key: string]: string;
12881
+ [key: string]: string | {
12882
+ alias: string | null;
12883
+ required: boolean;
12884
+ };
12826
12885
  }, OutputMap extends {
12827
12886
  [key: string]: string;
12828
12887
  }, QueryFields extends string[], NgContentSelectors extends never = never, IsStandalone extends boolean = false, HostDirectives = never> = unknown;