CreativeState
Defined in: core/src/state.ts:108
Properties
Section titled “Properties”backgroundImage
Section titled “backgroundImage”backgroundImage:
string|null
Defined in: core/src/state.ts:114
contentSource
Section titled “contentSource”contentSource:
"generated"|"cached"|"static"
Defined in: core/src/state.ts:127
Provenance of the copy on the canvas, stream-wide: the strongest any
field declared while live, the server’s terminal word once settled, and
static whenever no adapted copy actually reached the canvas. Decide a
disclosure mark per field (field.source), not from this.
ctaAction
Section titled “ctaAction”ctaAction:
string|null
Defined in: core/src/state.ts:118
ctaStyle
Section titled “ctaStyle”ctaStyle:
unknown
Defined in: core/src/state.ts:117
degraded
Section titled “degraded”degraded:
string|null
Defined in: core/src/state.ts:129
Set when the server served a deterministic winner instead.
error:
string|null
Defined in: core/src/state.ts:133
Human-readable failure, if any. Never blanks painted copy.
experienceManifest
Section titled “experienceManifest”experienceManifest:
unknown
Defined in: core/src/state.ts:113
fields
Section titled “fields”fields:
Record<CopyField,FieldState>
Defined in: core/src/state.ts:110
optionalheld?:Partial<Record<CopyField,string>> |null
Defined in: core/src/state.ts:142
What the hold reserved, per field: the copy that will land if the hold runs out. A renderer draws it invisibly so a blank field keeps its exact geometry. Null when no hold armed in this view.
Optional so a hand-built CreativeState (a test mock, a story fixture)
still compiles: read it as state.held?..
layout
Section titled “layout”layout:
string|null
Defined in: core/src/state.ts:112
meta:
Record<string,unknown> |null
Defined in: core/src/state.ts:120
Terminal done.meta, verbatim.
phase:
Phase
Defined in: core/src/state.ts:109
rewrites
Section titled “rewrites”rewrites:
number
Defined in: core/src/state.ts:149
How many times text the visitor could see was replaced. Always 0 from
a single stream: the hold, the stream’s entrance and the fallback’s
landing all write into blank slots. useIsland adds one per cross-fade
after a campaign or context change, the only replacement there is.
sequence
Section titled “sequence”sequence: {
fps:number;frames:string[];heroIndex:number; } |null
Defined in: core/src/state.ts:115
theme: {
colors:Record<string,string>;sources:Record<string,string>; } |null
Defined in: core/src/state.ts:111
variantId
Section titled “variantId”variantId:
string|null
Defined in: core/src/state.ts:131
Resolved variant, for pinning subsequent calls in this page view.
videoUrl
Section titled “videoUrl”videoUrl:
string|null
Defined in: core/src/state.ts:116