Commit graph

36176 commits

Author SHA1 Message Date
Andrew Scott
ed78fa05c7 fix(core): Remove note to skip arrow functions in best practices
Arrow functions are now supported and this note is no longer needed
2026-01-20 10:42:42 -08:00
Matthieu Riegler
75c40e7ac7 ci: add template for vscode dedicated issues
We didn't have an entry since we migrated the vscode extension repo to the fw repo.
2026-01-20 10:23:57 -08:00
Kristiyan Kostadinov
ce80136e7b fix(compiler): optimize away unnecessary restore/reset view calls
When producing a listener, the template pipeline does the following in separate phases:
1. Generates all the variables available within its scope.
2. Adds `restoreView` and `resetView` calls if there are any referenced to local variables (e.g. `@let` or local refs).
3. Optimizes away the variables that aren't used.

This means that we can end up in a situation where the references to the variables in the scope no longer exist, but we still enter and leave the view as if they're there which is unnecessary.

These changes add a simple optimization pass that looks specifically for the pattern of a `restoreView` followed by a `return resetView(expr)`. Furthermore, by changing the order of some optimizations, we're able to drop the `getCurrentView` variable as well.

Fixes #66286.
2026-01-20 10:22:55 -08:00
Andrew Scott
1cf1370568 refactor(language-server): split session into separate handlers
Breaks up the large session.ts file into separate handlers and consolidates the code related to completions in the server into the handler file
2026-01-20 10:22:12 -08:00
Leon Senft
d0ba332292 refactor(forms): remove unused API
Remove `SubmittedStatus` which is no longer used.
2026-01-20 10:19:58 -08:00
hawkgs
adae4c7ab0 refactor(devtools): use object-tree-explorer in signal-value-tree
Employ the reusable `object-tree-explorer` in the `signal-value-tree` preview component.
2026-01-20 10:16:54 -08:00
hawkgs
2d4262cfbd fix(devtools): support for @defer-only blocks; defer declared blocks (#66546)
Add support for `@defer`-only blocks (previously, they weren't rendered in the component tree at all); Fix declared blocks section in the details

PR Close #66546
2026-01-20 18:16:32 +00:00
hawkgs
92d2498910 feat(core): add host node to DeferBlockData (#66546)
Add the host/container comment node to the `DeferBlockData`. This node can be used as a `@defer` block locator in the DOM tree in the absence of root nodes.

PR Close #66546
2026-01-20 18:16:32 +00:00
SkyZeroZx
5dd17d7b81 docs: Update ngComponentOutlet binding and hydration note 2026-01-20 10:14:31 -08:00
SkyZeroZx
00455105cf docs(docs-infra): : Exempts animation-related symbols from linking
Exempts 'group()', 'keyframes', and '@keyframes' symbols from automatic linking.
2026-01-20 10:13:51 -08:00
SkyZeroZx
6f48b4f5ed docs: remove suffix in elements , templates , components & signals 2026-01-20 10:13:24 -08:00
Shuaib Hasan Akib
4adbc4fa19 refactor(forms): update Reactive Forms guide URL
Updates the Reactive Forms documentation link to the new `guide/forms/reactive-forms` path after the recent docs restructure.
2026-01-20 10:11:48 -08:00
Angular Robot
fc73252287 docs: update cross-repo adev docs
Updated Angular adev cross repo docs files.
2026-01-20 10:02:53 -08:00
Joey Perrott
a88f353a45 fix(docs-infra): support providing links to multiple symbols within a single line of a code block
Previously our system only found the first matching symboling to link to within a code block on each line, now we set up a link for all of the discovered symbols on each line

Fixes #65403
2026-01-20 09:35:33 -08:00
omar-almasry11
30b78bdc71 fix(docs-infra): improve skip-to-main-content method to focus <main> element instead of h1
Update the skip-to-main-content behavior to focus the <main> element when present, with a fallback to the first heading for legacy layouts without a main landmark.
2026-01-20 09:34:57 -08:00
Damian Sire
6dff1cf85d docs: fix spelling errors in documentation
Fix 6 spelling errors across documentation files:
- components-scenarios.md: 'recieved' → 'received', 'stubbe' → 'stubbed', 'controle' → 'control'
- overview.md: 'dependant' → 'dependent'
- creating-libraries.md: 'to to' → 'to'
- enter-and-leave.md: 'a an' → 'an'
2026-01-20 09:32:28 -08:00
Matthieu Riegler
2080dd1fec docs: Add mention of "documentation"
This should help to bring adev at the top when searching for "angular documentation" or "angular docs"
2026-01-20 09:31:38 -08:00
Maciej Ślusarz
8b9bdd0a63 docs: Fix typo in image loader step of Optimizing Images chapter 2026-01-20 09:30:43 -08:00
Angular Robot
d50e971e98 build: lock file maintenance
See associated pull request for more information.
2026-01-20 09:28:18 -08:00
Jessica Janiuk
5d46554e3f docs: Add section on animate.leave for clarity
There has been a bunch of confusion as to how `animate.leave` works on child nodes when the non-animated parent is removed. This section addition should clarify that.
2026-01-16 13:26:45 -08:00
SkyZeroZx
95c386469c feat(forms): Add passing focus options to form field
Extends the `focus` method of form fields and custom controls to accept and propagate `FocusOptions`.

This enables developers to control focus behavior more precisely, for example, preventing scrolling when focusing an element.
2026-01-16 13:24:27 -08:00
Jessica Janiuk
e55260f693 build: update lock file
This updates the lock file. Surprise!
2026-01-16 11:07:02 -08:00
Angular Robot
9989c5fb78 build: update dependency @csstools/css-color-parser to v4
See associated pull request for more information.
2026-01-16 10:30:20 -08:00
Angular Robot
4bb5774f3b build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-16 10:25:04 -08:00
Kristiyan Kostadinov
52bc0208f9 build: move zone.js build off deprecated flag
The Zone.js build was depending on the `--outFile` flag from TypeScript which is deprecated. These changes switch to using `--outDir` and copying the files out of the directory instead.
2026-01-16 09:28:47 -08:00
Miles Malerba
e7b2dde6d1 fix(forms): fix control value syncing on touch
Previously we were unconditionally setting the control value back into
the value, regardless of if it had actually been changed. This PR
changes the logic to flush the pending sync on touch if there is one, or
just skip it if there isn't.
2026-01-16 09:25:27 -08:00
Angular Robot
54fc393d27 build: update dependency @csstools/css-calc to v3
See associated pull request for more information.
2026-01-16 09:20:05 -08:00
Kristiyan Kostadinov
d9c980a958 build: initial test of TypeScript 6
Resolves some initial test failures after updating to TypeScript 6.
2026-01-15 13:41:01 -08:00
Kristiyan Kostadinov
4831a9f676 fix(core): handle Set in class bindings
Currently migrating from `[ngClass]` to `[class]` isn't entirely supported, because `[ngClass]` supports `Set` values while `[class]` ignores them.

These changes add a bit of logic to bring them closer together and make the migration easier.
2026-01-15 13:39:59 -08:00
Jeevan Mahesha
417c385ddc docs: update directive name from [field] to [formField] in signal-forms documentation 2026-01-15 11:41:02 -08:00
hawkgs
87f4797321 refactor(devtools): drop dagre graph type
Drop Dagre graph type since v7.0.14 introduces better typing.
2026-01-15 11:11:03 -08:00
hawkgs
721094788a refactor(devtools): snap to root node on signal graph render
Drop the old `ResizeObserver` and resize logic in favor of a simpler "snap to root node" (template or first node) functionality.
2026-01-15 11:10:26 -08:00
Alan Agius
c7eee8300f docs: clarify that FESM can depend on shared chunks
Closes #66569
2026-01-15 11:05:41 -08:00
Miles Malerba
5974cd0afc
feat(forms): Ability to manually register a form field binding in signal forms
This PR adds the ability to manually register a binding with the
`FormField` directive. This is useful for a lower-level implementation
that takes the field tree as an `input()` rather than relying on the
automatic binding from `FormUiControl`.
2026-01-15 11:03:28 -08:00
Joey Perrott
f2cf96b519 fix(docs-infra): use public folder instead of assets folder for static files in adev tutorials
Use public folder rather than assets folder after the change in angular-cli's defaults for angular.json

Fixes #58981
2026-01-15 10:59:25 -08:00
Angular Robot
849b8401a0 build: update github/codeql-action action to v4.31.10
See associated pull request for more information.
2026-01-15 10:57:15 -08:00
Angular Robot
22fefe7880 build: update bazel dependencies
See associated pull request for more information.
2026-01-15 10:54:25 -08:00
Angular Robot
ebc52ff434 build: update all non-major dependencies
See associated pull request for more information.
2026-01-15 10:52:48 -08:00
Matthieu Riegler
a792315f09 docs(docs-infra): prevent heading from linking symbols 2026-01-15 08:59:14 -08:00
Doug Parker
61614f6caa release: bump Angular DevTools version to 1.8.0 2026-01-14 14:14:04 -08:00
Angular Robot
fa4bcf12cd build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-14 12:20:48 -08:00
Jessica Janiuk
0159268971 docs: release notes for the v21.1.0 release 2026-01-14 11:46:05 -08:00
Jessica Janiuk
d12e6f0986 docs: release notes for the v21.0.9 release 2026-01-14 11:31:53 -08:00
Joey Perrott
3f13db87e2 ci: update algolia synonym updater to use node directly rather than tsx
With new version of node we can import ts files directly in our scripts rather than using tsx
2026-01-14 09:26:40 -08:00
SkyZeroZx
724e917f7a docs(docs-infra): Exempts animation-related symbols from linking
Exempts 'animation', 'transition', and 'trigger' symbols from automatic linking.
2026-01-14 08:24:48 -08:00
Angular Robot
230e16d3a5 build: update cross-repo angular dependencies
See associated pull request for more information.
2026-01-14 08:23:05 -08:00
Shuaib Hasan Akib
c9f584b918 docs: add IMPORTANT prefix to pipe usage warning and
Adds an IMPORTANT label to emphasize the guidance about avoiding impure
pipes due to potential performance impact.
2026-01-14 08:10:59 -08:00
Younes Jaaidi
a904d9f77b fix(compiler-cli): support nested component declaration
```ts
@Component(...)
class Outer {
  constructor() {
    @Component(...)
    class Inner {}
  }
}
```

previous behavior was that IVy transformation was only applied to `Inner`, thus breaking `Outer` transformation.
2026-01-14 08:10:34 -08:00
Jessica Janiuk
e673eb6df2 Revert "refactor(core): remove ng when invoking enableProdMode"
This reverts commit cb5879f566.
2026-01-14 08:08:58 -08:00
SkyZeroZx
074666b2e8 docs(docs-infra): use Signals Forms focusBoundControl
Removes direct `ViewChild` access from `TextField` components and relies on
Signals Forms via the `focusBoundControl`  to manage focus.
2026-01-14 08:00:45 -08:00