HeadlessScene

One scene of a mounted document: its step timeline, layout and environments.

@internote/canvas-sdk/hostInterface
On this page
import { HeadlessScene } from '@internote/canvas-sdk/host';

#Fields

authoringRequired
Whether the document is open in its author's editor (HeadlessHostOptions.authoring).
boolean
blankRuntimeRequired
Animation runtime over the blank-canvas content (everything in the detail outside the canvas nodes) — cue constructs in blank content are scoped to it exactly as an environment's are to the environment.
EnvironmentAnimationRuntime
blankTasksRequired
What the scene's blank-canvas content reports its task parts through.
TaskReporter
environmentsRequired
The mounted environments in primacy order; an unregistered type is skipped.
HeadlessEnvironment[]
footerRequired
The scene's footer: whether its panel is open, and the ability to ask for it. The same object every environment's context carries, and the scene's rather than any environment's — which is what lets a scene with no environments at all still have one.
FooterAccess
heldByReaderRequired
Whether the reader has taken hold of a control the scene drives — moved a cue.slider or cue.selector before its step's choreography played out. Play then hands it back and goes on from where they took hold (releaseReaderHold).
boolean
layoutRequired
The scene's canvas split into environments and blank-canvas content.
CanvasLayout
loopRequired
Whether a step's playback starts again when it finishes — the scene's loop. It goes round until the reader pauses it.
boolean
nodeRequired
The compiled scene node.
CompiledNode
parametersRequired
The scene's parameters: what its controls declare, where each stands, and how to move one. The same object every environment's context carries.
SceneParameterAccess
sceneIdRequired
The scene's instance id, or scene-<index> when it has none.
string
sessionRequired
The scene's own slot in the session store — its footer's open state and where the reader has put its parameters.
EnvironmentSessionState<SceneSessionState>

Exposed because a component drawing from it has to SUBSCRIBE: the footer's chevron and its control rows both write here, and neither would re-render on the other's write without it (useSceneSession).

stepAnimationMsRequired
How long each step's own choreography runs, in ms measured from that step's entry, indexed by step (0..stepCount). Steps partition a scene's animation, so this is what the playback control is scoped to: the reader replays the partition they are reading. Index 0 also carries the time-anchored span, which runs on the scene clock the scene starts.
number[]
stepControlRequired
Whether each step shows the playback control, indexed like stepAnimationMs — see earnsPlaybackControl. Index 0 includes the scene clock's animation.
boolean[]
stepCountRequired
How many === step markers the scene body holds.
number
stepsRequired
The scene's step controller, shared by its environments and blank content.
StepController
tasksRequired
The scene's task parts and where the reader stands on each; its status() is null when the scene is not a task scene.
SceneTasks
timeAnimationMsRequired
When the scene's time-anchored animation finishes, in scene-clock ms — 0 when everything is step-anchored.
number
timeControlRequired
The same for the scene clock alone — time anchors and types that move through time.
boolean

Declared in packages/canvas-sdk/src/host/headless.ts:139.

Last updated