From ef34e39b2a46d4e2fa4ed35301646e748708e29c Mon Sep 17 00:00:00 2001 From: Miles Malerba Date: Wed, 22 Oct 2025 15:16:01 -0700 Subject: [PATCH] refactor(forms): rename files related to metadata (#64603) Renames some files to reflect the property => metadata name change PR Close #64603 --- goldens/public-api/forms/signals/index.api.md | 60 +++++++++---------- packages/forms/signals/public_api.ts | 2 +- packages/forms/signals/src/api/logic.ts | 2 +- .../src/api/{property.ts => metadata.ts} | 0 packages/forms/signals/src/api/types.ts | 2 +- .../forms/signals/src/api/validators/max.ts | 2 +- .../signals/src/api/validators/max_length.ts | 2 +- .../forms/signals/src/api/validators/min.ts | 2 +- .../signals/src/api/validators/min_length.ts | 2 +- .../signals/src/api/validators/pattern.ts | 2 +- .../signals/src/api/validators/required.ts | 2 +- .../src/controls/interop_ng_control.ts | 2 +- .../src/field/{property.ts => metadata.ts} | 2 +- packages/forms/signals/src/field/node.ts | 4 +- packages/forms/signals/src/schema/logic.ts | 2 +- .../forms/signals/src/schema/logic_node.ts | 2 +- 16 files changed, 45 insertions(+), 45 deletions(-) rename packages/forms/signals/src/api/{property.ts => metadata.ts} (100%) rename packages/forms/signals/src/field/{property.ts => metadata.ts} (97%) diff --git a/goldens/public-api/forms/signals/index.api.md b/goldens/public-api/forms/signals/index.api.md index 397ee34111e..495563e3f1d 100644 --- a/goldens/public-api/forms/signals/index.api.md +++ b/goldens/public-api/forms/signals/index.api.md @@ -28,7 +28,10 @@ import { ɵControl } from '@angular/core'; import { ɵFieldState } from '@angular/core'; // @public -export class AggregateProperty { +export function aggregateMetadata(path: FieldPath, key: AggregateMetadataKey, logic: NoInfer>): void; + +// @public +export class AggregateMetadataKey { // (undocumented) readonly getInitial: () => TAcc; // (undocumented) @@ -36,10 +39,7 @@ export class AggregateProperty { } // @public -export function aggregateProperty(path: FieldPath, prop: AggregateProperty, logic: NoInfer>): void; - -// @public -export function andProperty(): AggregateProperty; +export function andMetadataKey(): AggregateMetadataKey; // @public export function apply(path: FieldPath, schema: NoInfer>): void; @@ -72,7 +72,7 @@ export interface ChildFieldContext extends RootFieldContext { } // @public -export function createProperty(): Property; +export function createMetadataKey(): MetadataKey; // @public export function customError>(obj: WithField): CustomValidationError; @@ -158,13 +158,13 @@ export interface FieldState; readonly errorSummary: Signal; readonly fieldBindings: Signal[]>; - hasProperty(key: Property | AggregateProperty): boolean; + hasMetadata(key: MetadataKey | AggregateMetadataKey): boolean; readonly hidden: Signal; readonly invalid: Signal; readonly keyInParent: Signal; + metadata(key: AggregateMetadataKey): Signal; + metadata(key: MetadataKey): M | undefined; readonly pending: Signal; - property(prop: AggregateProperty): Signal; - property(prop: Property): M | undefined; reset(): void; readonly submitting: Signal; readonly valid: Signal; @@ -249,7 +249,7 @@ export interface ItemFieldContext extends ChildFieldContext { } // @public -export function listProperty(): AggregateProperty; +export function listMetadataKey(): AggregateMetadataKey; // @public export type LogicFn = (ctx: FieldContext) => TReturn; @@ -258,13 +258,13 @@ export type LogicFn export type MapToErrorsFn = (result: TResult, ctx: FieldContext) => TreeValidationResult; // @public -export const MAX: AggregateProperty; +export const MAX: AggregateMetadataKey; // @public export function max(path: FieldPath, maxValue: number | LogicFn, config?: BaseValidatorConfig): void; // @public -export const MAX_LENGTH: AggregateProperty; +export const MAX_LENGTH: AggregateMetadataKey; // @public export function maxError(max: number, options: WithField): MaxValidationError; @@ -291,7 +291,7 @@ export class MaxLengthValidationError extends _NgValidationError { } // @public -export function maxProperty(): AggregateProperty; +export function maxMetadataKey(): AggregateMetadataKey; // @public export class MaxValidationError extends _NgValidationError { @@ -309,13 +309,23 @@ export type MaybeFieldPath = export type MaybeFieldTree = (TValue & undefined) | FieldTree, TKey>; // @public -export const MIN: AggregateProperty; +export function metadata(path: FieldPath, factory: (ctx: FieldContext) => TData): MetadataKey; + +// @public +export function metadata(path: FieldPath, key: MetadataKey, factory: (ctx: FieldContext) => TData): MetadataKey; + +// @public +export class MetadataKey { +} + +// @public +export const MIN: AggregateMetadataKey; // @public export function min(path: FieldPath, minValue: number | LogicFn, config?: BaseValidatorConfig): void; // @public -export const MIN_LENGTH: AggregateProperty; +export const MIN_LENGTH: AggregateMetadataKey; // @public export function minError(min: number, options: WithField): MinValidationError; @@ -342,7 +352,7 @@ export class MinLengthValidationError extends _NgValidationError { } // @public -export function minProperty(): AggregateProperty; +export function minMetadataKey(): AggregateMetadataKey; // @public export class MinValidationError extends _NgValidationError { @@ -363,7 +373,7 @@ export type NgValidationError = RequiredValidationError | MinValidationError | M export type OneOrMany = T | readonly T[]; // @public -export function orProperty(): AggregateProperty; +export function orMetadataKey(): AggregateMetadataKey; // @public export namespace PathKind { @@ -384,7 +394,7 @@ export namespace PathKind { export type PathKind = PathKind.Root | PathKind.Child | PathKind.Item; // @public -export const PATTERN: AggregateProperty; +export const PATTERN: AggregateMetadataKey; // @public export function pattern(path: FieldPath, pattern: RegExp | LogicFn, config?: BaseValidatorConfig): void; @@ -404,16 +414,6 @@ export class PatternValidationError extends _NgValidationError { readonly pattern: RegExp; } -// @public -export class Property { -} - -// @public -export function property(path: FieldPath, factory: (ctx: FieldContext) => TData): Property; - -// @public -export function property(path: FieldPath, prop: Property, factory: (ctx: FieldContext) => TData): Property; - // @public export function readonly(path: FieldPath, logic?: NoInfer>): void; @@ -421,13 +421,13 @@ export function readonly(pat export type ReadonlyArrayLike = Pick, number | 'length' | typeof Symbol.iterator>; // @public -export function reducedProperty(reduce: (acc: TAcc, item: TItem) => TAcc, getInitial: () => TAcc): AggregateProperty; +export function reducedMetadataKey(reduce: (acc: TAcc, item: TItem) => TAcc, getInitial: () => TAcc): AggregateMetadataKey; // @public export type RemoveStringIndexUnknownKey = string extends K ? unknown extends V ? never : K : K; // @public -export const REQUIRED: AggregateProperty; +export const REQUIRED: AggregateMetadataKey; // @public export function required(path: FieldPath, config?: BaseValidatorConfig & { diff --git a/packages/forms/signals/public_api.ts b/packages/forms/signals/public_api.ts index a9e0ced8fa1..ac3d6b52c22 100644 --- a/packages/forms/signals/public_api.ts +++ b/packages/forms/signals/public_api.ts @@ -15,7 +15,7 @@ export * from './src/api/async'; export * from './src/api/control'; export * from './src/api/field_directive'; export * from './src/api/logic'; -export * from './src/api/property'; +export * from './src/api/metadata'; export * from './src/api/structure'; export * from './src/api/types'; export * from './src/api/validation_errors'; diff --git a/packages/forms/signals/src/api/logic.ts b/packages/forms/signals/src/api/logic.ts index 5b3d51d2a16..f94405a16ae 100644 --- a/packages/forms/signals/src/api/logic.ts +++ b/packages/forms/signals/src/api/logic.ts @@ -9,7 +9,7 @@ import {addDefaultField} from '../field/validation'; import {FieldPathNode} from '../schema/path_node'; import {assertPathIsCurrent} from '../schema/schema'; -import {AggregateMetadataKey, createMetadataKey, MetadataKey} from './property'; +import {AggregateMetadataKey, createMetadataKey, MetadataKey} from './metadata'; import type { FieldContext, FieldPath, diff --git a/packages/forms/signals/src/api/property.ts b/packages/forms/signals/src/api/metadata.ts similarity index 100% rename from packages/forms/signals/src/api/property.ts rename to packages/forms/signals/src/api/metadata.ts diff --git a/packages/forms/signals/src/api/types.ts b/packages/forms/signals/src/api/types.ts index 6533a0d2808..503728d8ca9 100644 --- a/packages/forms/signals/src/api/types.ts +++ b/packages/forms/signals/src/api/types.ts @@ -8,7 +8,7 @@ import {Signal, ɵFieldState} from '@angular/core'; import type {Field} from './field_directive'; -import {AggregateMetadataKey, MetadataKey} from './property'; +import {AggregateMetadataKey, MetadataKey} from './metadata'; import type {ValidationError, WithOptionalField, WithoutField} from './validation_errors'; /** diff --git a/packages/forms/signals/src/api/validators/max.ts b/packages/forms/signals/src/api/validators/max.ts index 852eaaea7aa..55c48134d0e 100644 --- a/packages/forms/signals/src/api/validators/max.ts +++ b/packages/forms/signals/src/api/validators/max.ts @@ -8,7 +8,7 @@ import {computed} from '@angular/core'; import {aggregateMetadata, metadata, validate} from '../logic'; -import {MAX} from '../property'; +import {MAX} from '../metadata'; import {FieldPath, LogicFn, PathKind} from '../types'; import {maxError} from '../validation_errors'; import {BaseValidatorConfig, getOption, isEmpty} from './util'; diff --git a/packages/forms/signals/src/api/validators/max_length.ts b/packages/forms/signals/src/api/validators/max_length.ts index 290f4fafdc5..13b896ac6ba 100644 --- a/packages/forms/signals/src/api/validators/max_length.ts +++ b/packages/forms/signals/src/api/validators/max_length.ts @@ -8,7 +8,7 @@ import {computed} from '@angular/core'; import {aggregateMetadata, metadata, validate} from '../logic'; -import {MAX_LENGTH} from '../property'; +import {MAX_LENGTH} from '../metadata'; import {FieldPath, LogicFn, PathKind} from '../types'; import {maxLengthError} from '../validation_errors'; import { diff --git a/packages/forms/signals/src/api/validators/min.ts b/packages/forms/signals/src/api/validators/min.ts index a69124c35da..db7b008ba05 100644 --- a/packages/forms/signals/src/api/validators/min.ts +++ b/packages/forms/signals/src/api/validators/min.ts @@ -8,7 +8,7 @@ import {computed} from '@angular/core'; import {aggregateMetadata, metadata, validate} from '../logic'; -import {MIN} from '../property'; +import {MIN} from '../metadata'; import {FieldPath, LogicFn, PathKind} from '../types'; import {minError} from '../validation_errors'; import {BaseValidatorConfig, getOption, isEmpty} from './util'; diff --git a/packages/forms/signals/src/api/validators/min_length.ts b/packages/forms/signals/src/api/validators/min_length.ts index f98910fa84d..c56e5b1ec1e 100644 --- a/packages/forms/signals/src/api/validators/min_length.ts +++ b/packages/forms/signals/src/api/validators/min_length.ts @@ -8,7 +8,7 @@ import {computed} from '@angular/core'; import {aggregateMetadata, metadata, validate} from '../logic'; -import {MIN_LENGTH} from '../property'; +import {MIN_LENGTH} from '../metadata'; import {FieldPath, LogicFn, PathKind} from '../types'; import {minLengthError} from '../validation_errors'; import { diff --git a/packages/forms/signals/src/api/validators/pattern.ts b/packages/forms/signals/src/api/validators/pattern.ts index cab007dbd70..a74c5bb4bbe 100644 --- a/packages/forms/signals/src/api/validators/pattern.ts +++ b/packages/forms/signals/src/api/validators/pattern.ts @@ -8,7 +8,7 @@ import {computed} from '@angular/core'; import {aggregateMetadata, metadata, validate} from '../logic'; -import {PATTERN} from '../property'; +import {PATTERN} from '../metadata'; import {FieldPath, LogicFn, PathKind} from '../types'; import {patternError} from '../validation_errors'; import {BaseValidatorConfig, getOption, isEmpty} from './util'; diff --git a/packages/forms/signals/src/api/validators/required.ts b/packages/forms/signals/src/api/validators/required.ts index 907a0a16945..ae8cbe243c3 100644 --- a/packages/forms/signals/src/api/validators/required.ts +++ b/packages/forms/signals/src/api/validators/required.ts @@ -8,7 +8,7 @@ import {computed} from '@angular/core'; import {aggregateMetadata, metadata, validate} from '../logic'; -import {REQUIRED} from '../property'; +import {REQUIRED} from '../metadata'; import {FieldPath, LogicFn, PathKind} from '../types'; import {requiredError} from '../validation_errors'; import {BaseValidatorConfig, getOption, isEmpty} from './util'; diff --git a/packages/forms/signals/src/controls/interop_ng_control.ts b/packages/forms/signals/src/controls/interop_ng_control.ts index b390ceeb217..cecd13d5452 100644 --- a/packages/forms/signals/src/controls/interop_ng_control.ts +++ b/packages/forms/signals/src/controls/interop_ng_control.ts @@ -15,7 +15,7 @@ import { type ValidationErrors, type ValidatorFn, } from '@angular/forms'; -import {REQUIRED} from '../api/property'; +import {REQUIRED} from '../api/metadata'; import type {FieldState} from '../api/types'; // TODO: Also consider supporting (if possible): diff --git a/packages/forms/signals/src/field/property.ts b/packages/forms/signals/src/field/metadata.ts similarity index 97% rename from packages/forms/signals/src/field/property.ts rename to packages/forms/signals/src/field/metadata.ts index 34db0d5e2cd..e63f77d0a5c 100644 --- a/packages/forms/signals/src/field/property.ts +++ b/packages/forms/signals/src/field/metadata.ts @@ -7,7 +7,7 @@ */ import {computed, runInInjectionContext, Signal, untracked} from '@angular/core'; -import {AggregateMetadataKey, MetadataKey} from '../api/property'; +import {AggregateMetadataKey, MetadataKey} from '../api/metadata'; import type {FieldNode} from './node'; import {cast} from './util'; diff --git a/packages/forms/signals/src/field/node.ts b/packages/forms/signals/src/field/node.ts index 0c3faf63960..9a013592fd2 100644 --- a/packages/forms/signals/src/field/node.ts +++ b/packages/forms/signals/src/field/node.ts @@ -17,7 +17,7 @@ import { MIN_LENGTH, PATTERN, REQUIRED, -} from '../api/property'; +} from '../api/metadata'; import type {DisabledReason, FieldContext, FieldState, FieldTree} from '../api/types'; import type {ValidationError} from '../api/validation_errors'; import {LogicNode} from '../schema/logic_node'; @@ -25,7 +25,7 @@ import {FieldPathNode} from '../schema/path_node'; import {FieldNodeContext} from './context'; import type {FieldAdapter} from './field_adapter'; import type {FormFieldManager} from './manager'; -import {FieldMetadataState} from './property'; +import {FieldMetadataState} from './metadata'; import {FIELD_PROXY_HANDLER} from './proxy'; import {FieldNodeState} from './state'; import { diff --git a/packages/forms/signals/src/schema/logic.ts b/packages/forms/signals/src/schema/logic.ts index 671de1afa2b..975479d5521 100644 --- a/packages/forms/signals/src/schema/logic.ts +++ b/packages/forms/signals/src/schema/logic.ts @@ -7,7 +7,7 @@ */ import {untracked} from '@angular/core'; -import {AggregateMetadataKey, MetadataKey} from '../api/property'; +import {AggregateMetadataKey, MetadataKey} from '../api/metadata'; import {DisabledReason, type FieldContext, type FieldPath, type LogicFn} from '../api/types'; import type {ValidationError} from '../api/validation_errors'; import type {FieldNode} from '../field/node'; diff --git a/packages/forms/signals/src/schema/logic_node.ts b/packages/forms/signals/src/schema/logic_node.ts index f74fb4b0fdc..0158451bda6 100644 --- a/packages/forms/signals/src/schema/logic_node.ts +++ b/packages/forms/signals/src/schema/logic_node.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.dev/license */ -import {AggregateMetadataKey, MetadataKey} from '../api/property'; +import {AggregateMetadataKey, MetadataKey} from '../api/metadata'; import type { AsyncValidationResult, DisabledReason,