PageField
@ng-forge/dynamic-forms
Page field interface for creating top-level page layouts This is a special field type that contains other field definitions The page itself doesn't have a value - it's a layout container like row Pages can only be used at the top level and cannot be nested This is a programmatic field type only - users cannot customize this field type
TypeScript cannot enforce field nesting rules due to circular dependency limitations. For documentation: Pages should contain rows, groups, and leaf fields, but NOT other pages. Runtime validation enforces these rules.
Note: Pages are container fields and do not support meta since they have no native form element.
Signature
interface PageField<
TFields extends readonly PageAllowedChildren[] = PageAllowedChildren[]
>
extends FieldDef<never>Type Parameters
| Name | Constraint | Default | Description |
|---|---|---|---|
TFields | readonly PageAllowedChildren[] | PageAllowedChildren[] | - |
Properties
| Name | Type | Description |
|---|---|---|
type | "page" | - |
fields | TFields | Child field definitions to render within this page |
label ? | never | Page fields do not have a label property * |
meta ? | never | Pages do not support meta - they have no native form element * |
logic ? | ContainerLogicConfig[] | Logic configurations for conditional page visibility. Only 'hidden' type logic is supported for pages. |
packages/dynamic-forms/src/lib/definitions/default/page-field.ts:21