ChangeScreenStateEventSchema

@Serializable
@SerialName(value = "ChangeScreenState")
data class ChangeScreenStateEventSchema(val id: String, val trigger: EventTrigger, val events: SerializableImmutableList<EventSchema>?, val state: ChangeScreenStateEventSchema.State) : EventSchema

Moves the screen this event lives in to another State: Initial (its loading state), Failure (its failure state), or Success with the content to display.

For Success the content comes from State.Success.data when declared, otherwise from the event's incomingData, which must be a ScreenModel — typically the one produced by a preceding GetScreen.

incomingData consumed: used as the screen content when Success declares no data of its own.

Triggers fired:

  • OnSuccessEventTrigger — when the state was applied. No data is passed downstream.

  • OnFailureEventTrigger — when applying the state throws, including the case of Success without declared data and without a ScreenModel in incomingData; no data is passed downstream and the error is logged.

Constructors

Link copied to clipboard

Types

Link copied to clipboard
@Serializable
sealed interface State

Properties

Link copied to clipboard
@SerialName(value = "events")
open override val events: SerializableImmutableList<EventSchema>?

This event's own children — each declaring, via its own trigger, which of this event's outgoing triggers runs it. null when this event declares no children.

Link copied to clipboard
@SerialName(value = "id")
open override val id: String

Unique identifier — how TriggerEvent/UpdateEvents address this event by id. Defaults to a random id when omitted from the DSL.

Link copied to clipboard
@SerialName(value = "state")
val state: ChangeScreenStateEventSchema.State
Link copied to clipboard
@SerialName(value = "trigger")
open override val trigger: EventTrigger

The condition that must occur for this event to run — matched by structural equality (data class/data object equality) against whatever trigger value fired, never by any kind of subscription or listener registry.