Skip to content

textarea

textarea<TCollectionSlug, TFieldKey, TFieldMeta>(options?): TextareaField<TCollectionSlug, TFieldMeta>

Defined in: packages/core/src/fields/textarea/config.ts:46

Creates a textarea field with all defaults applied.

Textarea fields store multi-line string values. Common uses: bios, descriptions, internal notes.

Accepts TextareaFieldInput (all optional) and returns TextareaField with all defaults applied.

Defaults applied:

  • label — "" (inferred from the field key by defineCollection)
  • required — false
  • rows — 4
  • admin.hidden — false
  • admin.readOnly — false
  • admin.position — "main"
  • admin.width — "100%"
  • admin.cellAlignment — "left"

TCollectionSlug extends string = string

TFieldKey extends string = never

TFieldMeta extends BaseFieldMeta = BaseFieldMeta

TextareaFieldInput<TCollectionSlug, TFieldKey, TFieldMeta>

Textarea field configuration. All properties are optional.

TextareaField<TCollectionSlug, TFieldMeta>

Resolved textarea field definition with all defaults applied.

import { textarea, defineCollection } from '@vexcms/core'
authors: defineCollection({
fields: {
// Minimal — label inferred from key ("Bio")
bio: textarea(),
// Required, length-limited, taller textarea
bio: textarea({ required: true, min: 10, max: 500, rows: 8 }),
}
})