Skip to main content

Overview

An editable is anything on a slide a person can edit. A field is an editable the build found and published, so that something outside the deck, such as the app or an AI assistant, can read and change it.

// On the slide "pricing". Disclaimer declares
// everyone: { key: "{targetKey}-{id}-{instance}" }.
<Disclaimer id="fees">Fees apply. See the PDS.</Disclaimer>
key         pricing-fees-{instance}
type text
channels everyone
operations pricing-fees-{instance}.get
pricing-fees-{instance}.set

What an editable is​

TermMeaning
EditableAnything on a slide a person can edit.
FieldAn editable the build found. It has a key, a type and operations.
KeyWhat the value is stored under. Changing a key abandons what is stored under the old one - see key.
ChannelWhose value it is: everyone or personal. See Channels.
QueryAn operation that reads a field.
MutationAn operation that changes a field.

What the build does with it​

The buildFrom
Finds each fieldMarkup attributes, and usages of anything declared with defineEditableSource()
Composes its keysThe declaration's key templates
Publishes its queries and mutationsdefineActions(), or a plain get and set where none are declared
WarnsAnything it recognises and cannot read. See Build warnings

The build reads source. It never runs it, so a value has to be written out for the build to see it. See What the build can read.