angular/packages
Leon Senft d337cfb68f feat(forms): add debounce() rule for signal forms
The `debounce()` rule allows developers to control when changes to a
form control are synchronized to the form model.

This feature necessitated some changes to `FieldState`:

  * `controlValue` is a new signal property that represents the current
    value of a form field as it appears in its corresponding control.

  * `value` conceptually remains unchanged; however, its value may lag
    behind that of `controlValue` if a `debounce()` rule is applied.

The `debounce()` rule essentially manages when changes to `controlValue` are
synchronized to `value`. The intent is that an expensive or slow
validation rule can react to the debounced `value`, rather than a more
frequently changing `controlValue`.

Directly updating `value` immediately updates `controlValue`, and cancels any
pending debounced updates.

When multiple `debounce()` rules are applied to the same field, the last
currently active rule is used to debounce an update. These rules are
applied to child fields as well, unless they override them with their
own rule.
2025-11-11 12:00:09 -08:00
..
animations build: format md files 2025-11-06 10:03:05 -08:00
benchpress build: format md files 2025-11-06 10:03:05 -08:00
common docs: add reference to Built-in Pipes in multiple pipe files 2025-11-11 08:47:07 -08:00
compiler refactor(compiler): remove unused code 2025-11-11 10:04:29 -08:00
compiler-cli refactor(compiler): remove unused code 2025-11-11 10:04:29 -08:00
core feat(forms): add debounce() rule for signal forms 2025-11-11 12:00:09 -08:00
docs/di build: format md files 2025-11-06 10:03:05 -08:00
elements refactor(core): mark VERSION as @__PURE__ for better tree-shaking 2025-11-10 12:04:04 -08:00
examples build: format md files 2025-11-06 10:03:05 -08:00
forms feat(forms): add debounce() rule for signal forms 2025-11-11 12:00:09 -08:00
language-service fix(language-service): address potential memory leak during project creation 2025-11-07 11:57:22 -08:00
localize Revert "refactor(compiler-cli): remove deep imports from compiler-cli (#64732)" 2025-11-06 13:09:01 -08:00
misc/angular-in-memory-web-api build: format md files 2025-11-06 10:03:05 -08:00
platform-browser refactor(core): rename ExperimentalIsolatedShadowDom to IsolatedShadowDom 2025-11-11 08:46:06 -08:00
platform-browser-dynamic refactor(core): mark VERSION as @__PURE__ for better tree-shaking 2025-11-10 12:04:04 -08:00
platform-server feat(platform-browser): add context to createApplication 2025-11-10 14:18:29 -08:00
private/testing build: rename defaults2.bzl to defaults.bzl (#63383) 2025-08-25 15:45:01 -07:00
router refactor(router): add ngDevMode guards to InjectionToken names and cleanup imports 2025-11-10 12:04:31 -08:00
service-worker docs: improve discoverability in service worker documentation 2025-11-11 08:32:14 -08:00
ssr/docs build: rename defaults2.bzl to defaults.bzl (#63383) 2025-08-25 15:45:01 -07:00
upgrade refactor(core): mark VERSION as @__PURE__ for better tree-shaking 2025-11-10 12:04:04 -08:00
zone.js build: update all non-major dependencies 2025-11-07 07:43:44 -08:00
BUILD.bazel build: configure signal forms for release (#63458) 2025-08-29 14:31:35 -07:00
circular-deps-test.conf.js docs(docs-infra): lift circular imports (#63186) 2025-08-19 07:58:45 +00:00
empty.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00
goog.d.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00
license-banner.txt docs: update website URL in license banners (#64183) 2025-10-02 07:56:58 -07:00
package.json build: prepare for compiler-cli to be using ts_project (#61181) 2025-05-09 15:59:46 +00:00
README.md build: format md files 2025-11-06 10:03:05 -08:00
system.d.ts refactor: update packages/core:{core,src} to ts_project (#61275) 2025-05-14 12:01:51 +00:00
tsconfig-build.json Revert "refactor(compiler-cli): remove deep imports from compiler-cli (#64732)" 2025-11-06 13:09:01 -08:00
tsconfig-legacy-saucelabs.json feat(core): support TypeScript 5.5 (#56096) 2024-05-29 15:33:33 +02:00
tsconfig-test.json
tsconfig.json feat(compiler-cli): enable type checking of host bindings by default (#63654) 2025-09-09 14:34:29 -07:00
tsec-exemption.json
types.d.ts build: move private testing helpers outside platform-browser/testing (#61472) 2025-05-20 10:00:43 +00:00

Angular

The sources for this package are in the main Angular repo. Please file issues and pull requests against that repo.

Usage information and reference details can be found in Angular documentation.

License: MIT