FileField

Field for attaching or referencing files.

Pairs the generic Field contract with FileComponent to enable users to upload, attach, or link external documents (PDFs, spreadsheets, etc.). Implementations may support previews, size/type restrictions, and multiple storage backends. File upload is to be handled by the host application using onUpload callback in Form.

Properties

Link copied to clipboard
abstract val disabled: Boolean

Whether this field is non-interactive (read-only/disabled) for the end user.

Link copied to clipboard
abstract val file: String

Implementation-specific backing identifier or path for file storage.

Link copied to clipboard

Collection of formulas applied to this field. Order may determine execution precedence.

Link copied to clipboard
abstract var hidden: Boolean

Whether the element is hidden by default.

Link copied to clipboard
abstract var id: String

Stable identifier of this schema node.

Link copied to clipboard
abstract var identifier: String

Unique key that identifies this field within a document. Must be stable across updates.

Link copied to clipboard

Whether the field starts hidden before any logic evaluation occurs.

Link copied to clipboard
abstract val logic: FieldLogic?

Optional FieldLogic describing visibility logic for the field

Link copied to clipboard
abstract val metadata: JoyMap

Arbitrary key-value map for custom extensions or analytics. Persisted alongside the field.

Link copied to clipboard
abstract val multi: Boolean
Link copied to clipboard
abstract var required: Boolean

Whether a value is mandatory for this schema.

Link copied to clipboard
abstract val tip: ToolTip?

Optional ToolTip to assists users with context, instructions, or hints.

Link copied to clipboard
abstract var title: String

Human-readable label used in editors or viewers.

Link copied to clipboard
abstract var type: Type

Discriminant describing the concrete schema/component kind.

Link copied to clipboard
abstract val value: Any?

Runtime value payload; variance is specialized by sub-interfaces.

Functions

Link copied to clipboard
abstract fun toJsonObject(): JsonObject

Serializes this instance to a structured JsonObject.

Link copied to clipboard
abstract fun toJsonString(): String

Serializes this instance to a compact JSON string.

Link copied to clipboard
abstract fun toMap(): MutableMap<String, Any?>

Converts this instance into a mutable key-value map suitable for mutation and re-serialization.