Type

MatButtonField

@ng-forge/dynamic-forms-material

Signature

type MatButtonField<TEvent extends FormEvent> = ButtonField<MatButtonProps, TEvent>;

Type Parameters

NameConstraintDefaultDescription
TEventFormEvent--

Properties

NameTypeDescription
type "button"-
event FormEventConstructor<TEvent>-
eventArgs ?EventArgs

Optional arguments to pass to the event constructor. Can contain special tokens that will be resolved at runtime: - $key: The current field key - $index: The array index (if inside an array field) - $arrayKey: The parent array field key (if inside an array field) - $template: The template for array item creation (for array add buttons) - formValue: Access to the current form value for indexing

logic ?StateLogicConfig[]Logic rules for dynamic disabled state (overrides form-level defaults)
key string

Unique field identifier used for form binding and value tracking.

This key is used to associate the field with form values and must be unique within the form. It follows object property naming conventions.

label ?DynamicText

Human-readable field label displayed to users.

Provides accessible labeling for form fields and is typically displayed above or beside the field input. Supports static strings, translation keys, Observables, and Signals for dynamic content.

props ?MatButtonProps

Field-specific properties and configuration options.

Contains type-specific configuration that varies based on the field type. The shape is defined by the TProps generic parameter.

meta ?FieldMeta

Native HTML attributes to pass through to the underlying element.

Contains attributes that are applied directly to the native input/element. Useful for accessibility, autocomplete hints, and custom attributes. The shape is defined by the TMeta generic parameter, which extends FieldMeta.

className ?string

Additional CSS classes for custom styling.

Space-separated string of CSS class names that will be applied to the field container for custom styling.

disabled ?boolean

Whether the field is disabled and cannot be interacted with.

When true, the field is rendered in a disabled state and cannot receive user input. The value can still be modified programmatically.

@value false

readonly ?boolean

Whether the field is read-only.

When true, the field displays its value but cannot be modified by user interaction. Differs from disabled in styling and accessibility.

@value false

hidden ?boolean

Whether the field is hidden from view.

When true, the field is not rendered in the UI but still participates in form state and validation. Useful for conditional field display.

@value false

tabIndex ?number

Tab index for keyboard navigation.

Controls the order in which fields receive focus when navigating with the Tab key. Follows standard HTML tabindex behavior.

excludeValueIfHidden ?boolean

Whether to exclude this field's value from submission output when hidden.

Overrides both the global withValueExclusionDefaults() and form-level FormOptions settings.

excludeValueIfDisabled ?boolean

Whether to exclude this field's value from submission output when disabled.

Overrides both the global withValueExclusionDefaults() and form-level FormOptions settings.

excludeValueIfReadonly ?boolean

Whether to exclude this field's value from submission output when readonly.

Overrides both the global withValueExclusionDefaults() and form-level FormOptions settings.

col ?number

Column sizing configuration for responsive grid layout.

Specifies how many columns this field should span in a 12-column grid system. Supports responsive behavior and field arrangement.

wrappers ?readonly WrapperConfig[]

Wrapper components to chain around this field.

- undefined — inherit auto-associations + form defaults. - null — render bare (see skipAuto/skipDefaults for partial opt-out). - readonly WrapperConfig[] — merged innermost with auto + defaults. - [] is not an opt-out; inherits like undefined.

skipAutoWrappers ?boolean

Skip the auto-association layer (WrapperTypeDefinition.types) while keeping form-level defaults and any field-level wrappers. Use when a global wrapper auto-applies to this field type but isn't wanted here.

skipDefaultWrappers ?boolean

Skip the form-level defaultWrappers layer while keeping auto-associations and any field-level wrappers.