works.iterative.forms

Members list

Type members

Classlikes

case class Button(id: RelativePath, intent: ButtonIntent = ...) extends SectionSegment

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all

What pressing a button means: Submit sends the whole form, ServerAction posts so the server dispatches on the button name, ClientAction is handled by client-side code.

What pressing a button means: Submit sends the whole form, ServerAction posts so the server dispatches on the button name, ClientAction is handled by client-side code.

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
sealed trait Cardinality extends SectionSegment

Attributes

Supertypes
trait FormSegment
class Object
trait Matchable
class Any
Known subtypes
class Repeated
class ShowIf
sealed trait Condition

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AllOf
object Always
class AnyOf
class IsEqual
class IsValid
object Never
class NonEmpty
Show all
object Condition

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
Condition.type
case class Date(id: RelativePath, optional: Boolean = ...) extends SectionSegment

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
case class Display(id: RelativePath) extends SectionSegment

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all
trait DisplayResolver[State, Output]

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
case class Enum(id: RelativePath, values: List[String], default: Option[String], optional: Boolean = ...) extends SectionSegment

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all
object Enum

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Enum.type
case class Field(id: RelativePath, fieldType: FieldType = ..., default: Option[String] = ..., optional: Boolean = ..., validations: List[Validation] = ...) extends SectionSegment

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all
enum FieldKind

Attributes

Companion
object
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object FieldKind

Attributes

Companion
enum
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
FieldKind.type
final case class FieldType(id: String, context: Option[String] = ..., disabled: Boolean = ...)

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object FieldType

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
FieldType.type
enum FieldValue

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class File(id: RelativePath, multiple: Boolean = ..., optional: Boolean = ...) extends SectionSegment

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all
case class Flex(elems: List[SectionSegment]) extends Layout

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Layout
class Object
trait Matchable
class Any
Show all
case class Form(id: RelativePath, version: String, elems: List[SectionSegment]) extends FormSegment

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all
object Form

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Form.type
final case class FormCodec[A](decode: FormData => Validated[A], encode: A => FormData)

Typed capture of a form's data, bound to the form's root path: decode accumulates errors across fields, encode produces the FormData an interpreter renders from.

Typed capture of a form's data, bound to the form's root path: decode accumulates errors across fields, encode produces the FormData an interpreter renders from.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object FormContent

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
final case class FormData(data: Map[AbsolutePath, List[FieldValue]]) extends FormState

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait FormState
class Object
trait Matchable
class Any
Show all
object FormData

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
FormData.type
object FormIdent extends ValidatedStringFactory[FormIdent]

Attributes

Supertypes
trait ValidatedStringFactory[FormIdent]
class Object
trait Matchable
class Any
Self type
FormIdent.type
object FormKey extends ValidatedStringFactory[FormKey]

Attributes

Supertypes
trait ValidatedStringFactory[FormKey]
class Object
trait Matchable
class Any
Self type
FormKey.type

Attributes

Supertypes
class Object
trait Matchable
class Any
sealed trait FormSegment

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Form
class Button
trait Cardinality
class Repeated
class ShowIf
class Date
class Display
class Enum
class Field
class File
class Section
Show all

Supplies the form element's transport attributes. The renderer emits the plain POST contract (method, action, novalidate) itself; a transport adds the attributes that route change re-renders and submissions through its own machinery instead of native navigation.

Supplies the form element's transport attributes. The renderer emits the plain POST contract (method, action, novalidate) itself; a transport adds the attributes that route change re-renders and submissions through its own machinery instead of native navigation.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object FormTransport

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait FormValue

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class FileValue
class StringValue
object FormValue

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
FormValue.type
case class Grid(elems: List[List[SectionSegment]]) extends Layout

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Layout
class Object
trait Matchable
class Any
Show all
trait Interpreter[I, O]

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
sealed trait Layout

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Flex
class Grid

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
class MapFormValidationState(state: Map[AbsolutePath, List[UserMessage]]) extends FormValidationState

Attributes

Supertypes
class Object
trait Matchable
class Any
enum NumberKind

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class Repeated(id: RelativePath, default: Option[(String, String)], optional: Boolean, elems: List[SectionSegment]) extends Cardinality

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait Cardinality
trait FormSegment
class Object
trait Matchable
class Any
Show all
object Repeated

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Repeated.type
case class Section(id: RelativePath, elements: List[SectionSegment], sectionType: String) extends SectionSegment

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait FormSegment
class Object
trait Matchable
class Any
Show all
object Section

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Section.type
sealed trait SectionSegment extends FormSegment

Attributes

Supertypes
trait FormSegment
class Object
trait Matchable
class Any
Known subtypes
class Button
trait Cardinality
class Repeated
class ShowIf
class Date
class Display
class Enum
class Field
class File
class Section
Show all
case class ShowIf(condition: Condition, elem: SectionSegment) extends Cardinality

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Cardinality
trait FormSegment
class Object
trait Matchable
class Any
Show all
final case class TypedForm[A](elems: List[SectionSegment], decodeAt: (AbsolutePath, FormData) => Validated[A], encodeAt: (AbsolutePath, A) => FormData)

A form declaration paired with its typed codec. The declaration erases to plain segments, so interpreters never see the typed layer and it cannot fork the core.

A form declaration paired with its typed codec. The declaration erases to plain segments, so interpreters never see the typed layer and it cannot fork the core.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object TypedForm

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
TypedForm.type
final case class TypedItem(key: FormKey, id: String, tpe: String, content: FormContent)

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object TypedItem

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
TypedItem.type
class UIFormBuilder(layoutResolver: LayoutResolver, formHook: Option[UIForm => UIForm] = ...)

Attributes

Supertypes
class Object
trait Matchable
class Any
class UIFormHtmlRenderer(displayResolver: DisplayResolver[FormState, Frag], transport: FormTransport)

Attributes

Supertypes
class Object
trait Matchable
class Any
class UIFormXMLRenderer(autocompleteService: AutocompleteService, autocompleteResolver: AutocompleteResolver, displayResolver: DisplayResolver[FormState, UIO[NodeSeq]], data: FormState)

Attributes

Supertypes
class Object
trait Matchable
class Any
enum Validation

Attributes

Companion
object
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Validation

Attributes

Companion
enum
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
Validation.type
trait ValidationRule[F[_], -RawValue, +OutputValue] extends RawValue => F[ValidationState[OutputValue]]

Attributes

Companion
object
Supertypes
trait RawValue => F[ValidationState[OutputValue]]
class Object
trait Matchable
class Any
Known subtypes
class Contramapped[F, R, R1, O]
class FlatMapped[F, R, O, O1]
class Mapped[F, R, O, O1]
Self type
ValidationRule[F, RawValue, OutputValue]

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait ValidationState[+OutputValue]

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Invalid
class Unknown
class Valid[OutputValue]
Self type
ValidationState[OutputValue]

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type

Types

opaque type FormContent
opaque type FormIdent
opaque type FormKey
type SValidationRule[F[_], O] = ValidationRule[F, O, O]