Commit graph

35836 commits

Author SHA1 Message Date
SkyZeroZx
d699eef2ca docs: add docs for transform property in built-in loaders
(cherry picked from commit 3dfdb71d65)
2026-01-07 09:18:03 -05:00
Paweł Kawula
0ff2d5af2d docs: fixed incorrect link in migrating-to-vitest.md
provided correct link to section about vitest fake timer

(cherry picked from commit f811c6c69d)
2026-01-07 09:10:33 -05:00
Andrew Scott
4161161320 Revert "fix(router): Ensure createUrlTree does not reuse segments of input"
This reverts commit 39efb62c0f.

(cherry picked from commit 174d2da29a)
2026-01-07 00:29:22 +00:00
Miles Malerba
e3fba182f9 feat(forms): add [formField] directive
This will replace the `[field]` directive, since `[field]` is a very
generic name for signal forms to commandeer

refactor(forms): hook up `formField` directive in compiler

Hooks up the `formField` direcive to get the same treatment as the
`field` directive in the compiler.

apply updated formatting

(cherry picked from commit 2d85ae5811)
2026-01-06 17:21:09 -05:00
Angular Robot
defc9246a5 build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-06 15:19:53 -05:00
Leon Senft
af1d4acb9d refactor(forms): bind native properties on interop controls
The framework will now bind all field state properties to their
corresponding native properties (if any) on interop form controls (those
using `ControlValueAccessor`), excluding those handled explicitly by
`ControlValueAccessor` such as `disabled`.

(cherry picked from commit 82a2de201f)
2026-01-06 13:12:21 -05:00
Leon Senft
0e8b9d8cde refactor(forms): bind field properties to all directives on interop controls
The framework will now bind the field state properties to all matching
directive inputs on form controls using Reactive Forms'
`ControlValueAccessor`.

(cherry picked from commit 15bddbdcda)
2026-01-06 13:12:21 -05:00
Leon Senft
ff37a13913 refactor(forms): bind field properties to all directives on custom controls
The framework will now bind the field state properties to all matching
directive inputs on custom form controls.

(cherry picked from commit 0c8f15d546)
2026-01-06 13:12:21 -05:00
Leon Senft
a4ba820d36 refactor(forms): bind field properties to all directives on native controls
Since the `Field` directive manages binding `FieldState` properties to
the underlying form control automatically, the type checker prohibits
explicit bindings to the same properties to avoid conflicts. This proved
problematic in cases where developers wanted to bind these properties to
the inputs of other directives on form controls. Now the framework will
bind the field state properties to all matching directive inputs on
native controls.

Fix #65617

(cherry picked from commit c149f47ef6)
2026-01-06 13:12:21 -05:00
Andrew Scott
92c162e1b9 fix(router): Ensure createUrlTree does not reuse segments of input
Mutating the `UrlTree` that is returned by `createUrlTree` can cause the
input, which might even be an active route, to be mutated. This ensures
the `UrlSegment`s are recreated and do not mutate the input.

fixes #54624

(cherry picked from commit 39efb62c0f)
2026-01-06 13:11:58 -05:00
Kristiyan Kostadinov
8e808740c9 fix(compiler): better types for a few expression AST nodes
We had `any` types for `LiteralArray.expressions`, `Chain.expressions`, `BindingPipe.args`, `LiteralPrimitive.value` and `LiteralMap.values`. These changes add proper types to them.

(cherry picked from commit 10da2f9029)
2026-01-06 12:16:32 -05:00
Alan Agius
f9c29572d2
fix(core): sanitize sensitive attributes on SVG script elements
This commit updates the DOM security schema and sanitization logic to properly recognize and sanitize `href` and `xlink:href` attributes on SVG `<script>` elements.
2026-01-06 12:16:03 -05:00
Shuaib Hasan Akib
45bfd824bf docs(forms): add documentation links to Signal Forms API
Add @see JSDoc tags to Signal Forms API functions and classes to link to the essentials guide and detailed documentation pages. This improves discoverability of Signal Forms documentation from the API reference.

(cherry picked from commit b93d5ec27a)
2026-01-06 10:34:49 -05:00
Angular Robot
9d33cf3793 build: lock file maintenance
See associated pull request for more information.
2026-01-06 10:20:35 -05:00
Angular Robot
4917befe59 build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-06 10:19:00 -05:00
Matthieu Riegler
a119427834 docs: rewrite testing docs
Those rewrites focus on using Vitest instead of jasmine, drop usages of `fakeAsync`, present modern testing strategy that rely on `whenStable` more than explicit calls to `detectChanges`.

fixes #42748, #48510, #64962, #65987, #66029,  #66150

(cherry picked from commit 71cde39ff0)
2026-01-05 19:38:27 -05:00
Angular Robot
b16c2f59ee build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-05 19:28:19 -05:00
Shuaib Hasan Akib
e21076d068 docs(forms): fix duplicate validator reference titles in AbstractControl
The removeValidators and hasValidator methods both had identical "Reference to a ValidatorFn" section titles, causing duplicate entries in the API documentation table of contents.

(cherry picked from commit 456ca35906)
2026-01-05 19:26:34 -05:00
SkyZeroZx
8f26a52aa8 refactor(core): introduce tree-shakeable runtime error codes for NgModule handling and ViewContainerRef errors
Adds new tree-shakeable runtime error codes to improve error reporting for
NgModule resolution issues (duplicate or missing IDs) and invalid ViewContainerRef
operations involving destroyed views.

(cherry picked from commit 1532be9d00)
2026-01-05 16:52:27 -05:00
Matthieu Riegler
1748c8984c docs(docs-infra): Add package filter to the API list
This commit also introduces the usage of signal forms on adev

(cherry picked from commit 15308149db)
2026-01-05 15:21:37 -05:00
Angular Robot
834bae1331 docs: update cross-repo adev docs
Updated Angular adev cross repo docs files.
2026-01-05 14:43:08 -05:00
Shuaib Hasan Akib
9494b56cc3 docs(docs-infra): sync heading colors between docs and API pages
Aligns documentation heading colors across docs and API pages to ensure
visual consistency and a cohesive reading experience.

(cherry picked from commit e6631f0007)
2026-01-05 12:37:02 -05:00
SkyZeroZx
cc067c2a0d feat(docs-infra): Extracts aliases from doc entries
Implements a mechanism to extract alias names from a directive's selector.

(cherry picked from commit ed7bfb3c88)
2026-01-05 12:33:19 -05:00
SkyZeroZx
6cfbc736b4 docs: update tsDoc code examples to use TypeScript syntax highlighting
(cherry picked from commit b735c45974)
2026-01-05 12:31:47 -05:00
Angular Robot
7e9dc56186 build: lock file maintenance
See associated pull request for more information.
2026-01-05 12:21:40 -05:00
SkyZeroZx
c1f22a3fa4 docs: Add form control state management and event options
(cherry picked from commit b1a0d1d8e2)
2026-01-05 12:16:14 -05:00
SkyZeroZx
e65c3cabe5 docs(docs-infra): add external link styles to API reference documentation
Adds the missing icon external link styling to the API reference documentation.

(cherry picked from commit c1d72af10d)
2026-01-05 12:14:34 -05:00
SkyZeroZx
06109f5ad3 docs: add @see links to API docs for better discoverability
(cherry picked from commit fa430bffb0)
2026-01-05 12:12:28 -05:00
SkyZeroZx
5e6a9ba2af refactor(router): Simplifies unsubscribe logic
Uses optional chaining to simplify unsubscribe handling.
Also improving tree-shaking by limiting injector names to route paths using `ngDevMode`

(cherry picked from commit 712d8f41e8)
2026-01-05 12:08:14 -05:00
Angular Robot
b2d6d36458 build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-05 12:07:00 -05:00
SkyZeroZx
73a3fd5bf7 docs: add section on converting writable signals to readonly
(cherry picked from commit a9283ca93a)
2026-01-05 12:03:15 -05:00
Shuaib Hasan Akib
4227a4915e docs: fix incorrect Input import in example
Update the documentation example to import input instead of Input,
ensuring the code reflects the signal-based API and current Angular
recommendations.

(cherry picked from commit bcaa001cac)
2026-01-05 12:02:20 -05:00
Shuaib Hasan Akib
aac05ff1d6 fix(docs-infra): stop auto-linking "state" and "group" to APIs
Prevents common words used in code examples from being incorrectly
linked to API references.

Fixes: #66292
(cherry picked from commit 8358e548ce)
2026-01-05 12:01:55 -05:00
SkyZeroZx
d75cd8ed25 docs: prevent mobile overflow in the route behavior customization example
(cherry picked from commit 5d3708e5ed)
2026-01-05 12:01:02 -05:00
Logan Mzz
6c911adf05 docs: fix reference to parent from children resolvers
(cherry picked from commit ef48826dc7)
2026-01-05 11:55:56 -05:00
Kirill Cherkashin
c98549d6de docs(forms): update migration guide (#66111)
PR Close #66111
2026-01-05 11:54:45 -05:00
kirjs
22399296f0 docs(forms): Address feedback (#66111)
Update `Automatic status class` section

PR Close #66111
2026-01-05 11:54:45 -05:00
kirjs
958d7f7909 docs(forms): Address feedback (#66111)
Update the Automatic status classes section to make NG_STATUS_CLASSES go first.

PR Close #66111
2026-01-05 11:54:45 -05:00
kirjs
6ee4834d35 docs(forms): Address feedback (#66111)
Change wording and formatting and clean up.

PR Close #66111
2026-01-05 11:54:45 -05:00
kirjs
cf57c01ca6 docs(forms): Add a section for automatic form binding (#66111)
To avoid manually adding classes like `.ng-valid`, `.ng-dirty` etc to every field, you can provide a global configuration using `provideSignalFormsConfig`.

PR Close #66111
2026-01-05 11:54:45 -05:00
kirjs
b0a4ecc50e docs(forms): add a Accessing values section (#66111)
This explains how to get the value of a compat form

PR Close #66111
2026-01-05 11:54:45 -05:00
kirjs
65a2a0da8f docs(forms): add migration guide for Signal Forms (#66111)
This commit introduces a new guide for migrating from legacy forms (Reactive and Template-driven) to the new Signal Forms.

PR Close #66111
2026-01-05 11:54:45 -05:00
SkyZeroZx
caeea1ced9 docs(docs-infra): Fixes the visibility of the copy link button in CLI headings
Fixes the visibility of the copy link button in CLI documentation headings.

(cherry picked from commit a5ebdd9cd1)
2026-01-05 11:52:27 -05:00
Matthieu Riegler
70a4739113 docs: fix typos in Effects doc in Signals guide
(cherry picked from commit c225b03c91)
2026-01-05 11:51:04 -05:00
Matthieu Riegler
d669763a31 docs(docs-infra): Modernize tests
Remove usages of `detectChanges` and rely on `whenStable`.
This commit also removed the usage of `provideZonelessChangeDetection` which is no longer necessary.

(cherry picked from commit 3a85031dc0)
2026-01-05 11:47:12 -05:00
Angular Robot
71a4373fbb build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-02 14:24:47 +01:00
Kristiyan Kostadinov
f8b6a3fed1 Revert "refactor(core): Add ngDevMode guards and new sanitization error codes"
This reverts commit 4e7e38c591.

(cherry picked from commit 1765ebe79b)
2026-01-02 11:37:26 +01:00
Angular Robot
d370c4ba44 build: update bazel dependencies
See associated pull request for more information.
2026-01-02 08:32:09 +01:00
Angular Robot
5725509e88 build: update pnpm to v10.27.0
See associated pull request for more information.
2026-01-02 08:30:14 +01:00
Kristiyan Kostadinov
b4fc0dace5 test(compiler): switch compliance tests to es2022
Sets up the compliance tests to target es2022 since that's the default in the CLI. Also updates all of the tests, primarily because the generated output for static properties has changed.

(cherry picked from commit 41eacff363)
2026-01-02 08:29:16 +01:00