Packages

A platform agnostic Elm-like framework (soft-fork of Lustre)

Current section

Files

Jump to
agnostic include agnostic@runtime@headless_State.hrl
Raw

include/agnostic@runtime@headless_State.hrl

-record(state, {
self :: gleam@erlang@process:subject(agnostic@runtime@headless:message(any())),
selector :: gleam@erlang@process:selector(agnostic@runtime@headless:message(any())),
base_selector :: gleam@erlang@process:selector(agnostic@runtime@headless:message(any())),
model :: any(),
update :: fun((any(), any()) -> {any(), agnostic@effect:effect(any())}),
view :: fun((any()) -> agnostic@vdom@vnode:element(any())),
config :: agnostic@runtime@headless:config(any()),
vdom :: agnostic@vdom@vnode:element(any()),
cache :: agnostic@vdom@cache:cache(any()),
providers :: gleam@dict:dict(binary(), gleam@json:json()),
subscribers :: gleam@dict:dict(gleam@erlang@process:subject(agnostic@runtime@transport:client_message(any())), gleam@erlang@process:monitor()),
callbacks :: gleam@set:set(fun((agnostic@runtime@transport:client_message(any())) -> nil))
}).