Interface

BaseValueField

@ng-forge/dynamic-forms

Signature

interface BaseValueField<
  TProps,
  TValue,
  TMeta extends FieldMeta = FieldMeta,
  TNullable extends boolean = false
>
  extends FieldDef<TProps, TMeta>, FieldWithValidation

Type Parameters

NameConstraintDefaultDescription
TProps---
TValue---
TMetaFieldMetaFieldMeta-
TNullablebooleanfalse-

Properties

NameTypeDescription
value ?TNullable extends true ? TValue : TValue-
placeholder ?DynamicText

Placeholder text displayed when the field is empty. Supports static strings, Observables, and Signals for dynamic content.

Note: placeholder lives at the field level, NOT inside props. The integration-layer props interfaces (InputProps, TextareaProps, SelectProps, DatepickerProps) intentionally omit placeholder — TypeScript's excess property check rejects props: { placeholder: ... } for any props literal typed against those interfaces.

required ?boolean-
nullable ?TNullable

Whether the field accepts null as a valid value.

When true, value may be null and an omitted value resolves to null (rather than the type-specific empty default). Orthogonal to required.

Read-side caveat: a user clearing a text input reads back as "", not null — this matches classic Reactive Forms and is enforced by the Web IDL contract. nullable is a contract for accepted values, not a guarantee of emitted ones.