34656 Commits

Author SHA1 Message Date
SkyZeroZx 1ca0d05af9 docs: Adds documentation for image decoding attribute (#64261)
Expands the image optimization guide to explain browser image decoding strategies

PR Close #64261
2025-10-10 06:41:32 -07:00
SkyZeroZx 302faa447f docs: Add programmatic component input/output/directive binding (#64240)
Expands the guide to explain how inputs, outputs, and directives can be provided when creating components programmatically

PR Close #64240
2025-10-10 06:39:57 -07:00
Kristiyan Kostadinov 8dec92ff9f fix(compiler-cli): capture metadata for undecorated fields (#63957) (#64317)
Currently if `TestBed.overrideComponent` is used on a class that uses initializer APIs (e.g. `input()`), the initializer metadata will be wiped out, because `overrideComponent` re-compiles the class with the information set by `setClassMetadata`. `setClassMetadata` only captures decorated members at the moment.

These changes introduce some logic to capture the new initializer-based APIs in `setClassMetadata` as well.

Fixes #57944.

PR Close #63957

PR Close #64317
2025-10-09 11:57:57 -07:00
Kristiyan Kostadinov 2342de8fac refactor(compiler): expose member decorator identifiers (#63957) (#64317)
Adds the member decorators to the map of exposed compiler symbols.

PR Close #63957

PR Close #64317
2025-10-09 11:57:57 -07:00
Kristiyan Kostadinov bb241ee28b refactor(compiler-cli): track member metadata using output AST (#63957) (#64317)
Reworks the logic that tracks the decorator metadata for members to do so using the output AST, rather than wrapping the TypeScript AST. This makes it easier to programmatically generate new members that weren't part of the TypeScript AST before.

PR Close #63957

PR Close #64317
2025-10-09 11:57:57 -07:00
Kristiyan Kostadinov 2c79ca0b57 fix(migrations): remove error for no matching files in control flow migration (#64253) (#64314)
Now that the control flow migration is running as a part of `ng update`, we need to be a bit forgiving about there not being any matching files since it can break the entire update process.

These changes switch the error to a warning and it counts the files for the entire workspace, not the individual projects.

PR Close #64253

PR Close #64314
2025-10-09 11:57:24 -07:00
Andrew Scott 6e4bcc7d22 fix(router): Scroll restoration should use instant scroll behavior for traversals (#64299)
When the scroll position is being restored, this change upates the
behavior to use 'instant' rather than the default 'auto', which will
be whatever the browser behavior is for 'window.scrollTo'. The 'smooth'
behavior does not match how browsers behavior when performing a
traversal navigation for MPAs, which is 'instant'.

related to #58258

PR Close #64299
2025-10-09 11:13:46 -07:00
Matthieu Riegler fa25dadae9 refactor(core): use the ValueEqualityFn from core (#64247)
Instead of the non-public primitive one.

PR Close #64247
2025-10-09 05:31:35 -07:00
Shuaib Hasan Akib 19cd52f421 docs(docs-infra): add rel="noopener" to external links with target="_blank" in ExternalLink directive (#64276)
PR Close #64276
2025-10-09 05:29:31 -07:00
Angular Robot 950a05c8e1 build: update cross-repo angular dependencies (#64308)
See associated pull request for more information.

PR Close #64308
2025-10-09 05:28:32 -07:00
Angular Robot 4ea008e683 build: update github/codeql-action action to v3.30.7 (#64286)
See associated pull request for more information.

PR Close #64286
2025-10-09 05:26:50 -07:00
SkyZeroZx e8de1b481c refactor(docs-infra): replace @Input with signal input for ignoredElementsIds in ClickOutside directive (#64302)
replace @Input with signal input for ignoredElementsIds in ClickOutside directive

PR Close #64302
2025-10-09 05:21:03 -07:00
SkyZeroZx 5baaf979db docs: Replace ngIf programmatic rendering to control flow (#64301)
PR Close #64301
2025-10-09 05:20:21 -07:00
Angular Robot fdb2a95929 build: update bazel dependencies (#64196)
See associated pull request for more information.

PR Close #64196
2025-10-09 05:18:36 -07:00
Matthieu Riegler 3658f211f8 docs: update banner with AI RFC (#64107)
PR Close #64107
2025-10-09 05:17:07 -07:00
Matthew Berry 79604819c3 test(compiler): fix a @keyframes style encapsulation test (#64036)
I've updated the test to assert what I believe it was trying to assert
before. Without this change, the CSS is invalid so it's unclear what
behavior we're demonstrating.

PR Close #64036
2025-10-09 05:16:19 -07:00
Miles Malerba 28b0d536e8 release: cut the v20.3.4 release 20.3.4 2025-10-08 10:49:59 -04:00
Angular Robot 11d83d1bb0 build: update cross-repo angular dependencies (#64272)
See associated pull request for more information.

PR Close #64272
2025-10-07 20:41:53 -04:00
Matthieu Riegler b568bc1ef8 docs: add providers caveat on the service (#64269)
fixes #60955

PR Close #64269
2025-10-07 20:40:20 -04:00
Matthieu Riegler 0f7b877412 docs: add mentions host style bindings (#64257)
Also adds a section about css custom properties

fixes #64256

PR Close #64257
2025-10-07 20:39:41 -04:00
utshow-rehman 67bffa264b docs(docs-infra): refactor navigation code based on angular style guide (#64177)
PR Close #64177
2025-10-07 20:29:55 -04:00
Alan Agius 89f5748f6e build: remove empty globs (#64270)
Remove globs that do not match any files.

PR Close #64270
2025-10-07 20:28:12 -04:00
Angular Robot 0d8fe3e4c2 build: update pnpm to v10.18.1 (#64266)
See associated pull request for more information.

PR Close #64266
2025-10-07 20:26:12 -04:00
Jessica Janiuk 3b959105be fix(core): prevent early exit from leave animations when multiple transitions are present (#64225)
Our code ensuring host binding composition for animations was causing the early exit and removal of
elements when multiple transitions were present on the same element. This commit fixes the issue by
ensuring that we properly keep track of all the promise resolvers on the LView and then only
call them once we've properly waited for the longest animation to finish.

fixes: #64209

PR Close #64225
2025-10-06 15:34:28 -04:00
Jessica Janiuk 24906249e6 refactor(core): allow animationend to process if we don't have a longest animation (#64225)
There may be cases where the longest animation info has been cleaned up before the end animation fires. We should still do the end processing in that case.

PR Close #64225
2025-10-06 15:34:28 -04:00
Jessica Janiuk 08b8b13185 refactor(core): fix animations host binding tests (#64225)
These tests were not properly validating against the host binding changes due to the fact that the styles were on the wrong components in some of the host binding cases.

PR Close #64225
2025-10-06 15:34:27 -04:00
Shuaib Hasan Akib 962bac2533 refactor(docs-infra): improve CustomErrorHandler for clarity and best practices (#64237)
Use `implements ErrorHandler` instead of extending the base class to follow Angular
conventions. Marked injected dependencies as `readonly`, made `openErrorSnackBar`
private, and improved overall code consistency.

PR Close #64237
2025-10-06 15:33:43 -04:00
Angular Robot 9be76ad0a4 build: update cross-repo angular dependencies (#64258)
See associated pull request for more information.

PR Close #64258
2025-10-06 15:25:00 -04:00
Jaime Burgos c63de7057b docs: add documentation for routerOutletData input and its usage (#64242)
PR Close #64242
2025-10-06 15:20:06 -04:00
SkyZeroZx 57e375b62b docs: Adds guide for customizing page titles with TitleStrategy (#64238)
Improves documentation by explaining how to implement and configure a custom title strategy for centralized control over page titles

PR Close #64238
2025-10-06 15:17:59 -04:00
Matthieu Riegler 8528bb5e75 docs(docs-infra): fix @example in class members (#64249)
eg: ApplicationRef

PR Close #64249
2025-10-06 15:11:32 -04:00
SkyZeroZx c1cfba0624 docs: add equal option to toSignal for custom value comparison (#64241)
PR Close #64241
2025-10-06 15:09:50 -04:00
Angular Robot 6e5be385b2 build: update pnpm to v10.18.0 (#64233)
See associated pull request for more information.

PR Close #64233
2025-10-06 14:57:56 -04:00
Jessica Janiuk 853ed169a8 fix(core): ensure missing leave animations don't queue leave animations (#64226)
There was a bug in the logic for checking if a leave animation exists for a node. This was affecting timing of nodes with enter animations.

PR Close #64226
2025-10-03 13:28:55 -07:00
Matthieu Riegler 28668a58ec docs: add info about disabling request caching (#64216)
fixes #64210

PR Close #64216
2025-10-03 17:19:00 +00:00
Angular Robot 3fe6416ae3 build: update cross-repo angular dependencies (#64213)
See associated pull request for more information.

PR Close #64213
2025-10-02 14:21:28 -07:00
SkyZeroZx 65884895ff fix(migrations): preserve component imports when pruning NgModules in standalone migration (#64186)
This fix preserves component imports by adding missing  statements and replacing module references with the correct component

PR Close #64186
2025-10-02 13:54:15 -07:00
Shuaib Hasan Akib e2820d1a2d docs(docs-infra): keep file name visible when code block is hidden (#64204)
Ensures that file names remain visible even if the associated code block
is collapsed or hidden, improving readability and context in the docs.

PR Close #64204
2025-10-02 17:30:46 +00:00
Jessica Janiuk 6fed986b7a fix(core): Fixes animations in conjunction with content projection (#63776)
Content Projected nodes are not destroyed and recreated, like every other
situation. Enter and Leave animations were ephemeral and are
expected to run once, and then be cleared. This means that for content projection
cases, the animations would only ever work the first time they were shown / hid.

In order to resolve this, we move to an animation queue that re-runs the animation
functions stored in the LView. In most cases, this animation will run once on creation.
For content projection, the enter and leave animations will fire more than once. Animations
are stored on the LView, but indexed and scheduled by whichever RNode needs to be animated.
So we only run animations for an affected RNode, rather than potentially all in the LView.

This also moves the queue to afterRender, which is safer than right after template
execution in refreshView.

fixes: #63418
fixes: #64065
fixes: #63901

PR Close #63776
2025-10-02 16:56:01 +00:00
Yasin Aslan 76fe5599fe fix(core): handle undefined CSS time values in parseCssTimeUnitsToMs function (#64181)
Improve error handling when `rawDelays` contains fewer items than `transitionedProperties`, preventing a toLowerCase of undefined error in `parseCssTimeUnitsToMs`.

PR Close #64181
2025-10-02 08:13:49 -07:00
Shuaib Hasan Akib 5e6d2860cd docs(docs-infra): update styles to align checkbox with label (#64202)
Removed extra spacing and removed center alignment so that checkboxes and
their labels are visually consistent.

PR Close #64202
2025-10-02 08:12:00 -07:00
Alan Agius b687d9c51a docs: update website URL in license banners (#64183)
Replace angular.io with angular.dev
PR Close #64183
2025-10-02 07:56:59 -07:00
kirjs c314ccba0c release: cut the v20.3.3 release 20.3.3 2025-10-02 08:05:44 -04:00
kirjs a453b1de08 Revert "fix(core): Fixes animations in conjunction with content projection (#63776)" (#64189)
This reverts commit 1cb16fddb5.

PR Close #64189
2025-10-01 22:42:41 +00:00
Angular Robot 952e3b1ead build: update cross-repo angular dependencies to v20.2.7 (#64182)
See associated pull request for more information.

PR Close #64182
2025-10-01 22:21:04 +00:00
Angular Robot 96b35727b0 build: update bazel dependencies (#64149)
See associated pull request for more information.

PR Close #64149
2025-10-01 13:40:04 -04:00
Shuaib Hasan Akib 94c9003093 refactor(common): update NgIf, ngComponentOutlet and ngTemplateOutlet examples and remove redundant standalone flag (#64155)
Removed `standalone: true` since it is now the default
and no longer necessary.

refactor(common): update ngComponentOutlet and ngTemplateOutlet examples and remove redundant standalone flag

Removed `standalone: true` since it is now the default
and no longer necessary.

PR Close #64155
2025-10-01 13:22:44 -04:00
Angular Robot cc8f5e1e00 build: update ossf/scorecard-action action to v2.4.3 (#64166)
See associated pull request for more information.

PR Close #64166
2025-10-01 10:42:04 -04:00
SkyZeroZx 1710cbd7d4 fix(migrations): handle shorthand property declarations in NgModule (#64160)
The migration now correctly detects shorthand declarations in NgModule metadata

PR Close #64160
2025-10-01 10:41:17 -04:00
Jessica Janiuk 0e928fbc4a fix(core): Fixes animations in conjunction with content projection (#63776)
Content Projected nodes are not destroyed and recreated, like every other
situation. Enter and Leave animations were ephemeral and are
expected to run once, and then be cleared. This means that for content projection
cases, the animations would only ever work the first time they were shown / hid.

In order to resolve this, we move to an animation queue that re-runs the animation
functions stored in the LView. In most cases, this animation will run once on creation.
For content projection, the enter and leave animations will fire more than once. Animations
are stored on the LView, but indexed and scheduled by whichever RNode needs to be animated.
So we only run animations for an affected RNode, rather than potentially all in the LView.

This also moves the queue to afterRender, which is safer than right after template
execution in refreshView.

fixes: #63418
fixes: #64065
fixes: #63901

PR Close #63776
2025-10-01 09:07:38 -04:00