ImageRef ​Contract 2.0.0 · package sha256
a857eca95b35921109faf997094bb4192f12527d9d0fcd4be7e97f06425bad6e· generated fromconfigurator-runtime.d.tsbyservices/onsite-scripter/scripts/build-contract-docs.mjs; edit the source, not this file.
Interface · import type { ImageRef } from '@holostep-configurators/runtime-client/contract'; · stable · since 2.0.0 · section 8. Materials and textures
How reads return a texture you wrote as an image: JSON, so state(), the feed, applyPatch
and sceneHash stay JSON. Writing it back reuses that upload while it is live in this session:
while committed or staged state, a pending write, a rule, a stage layer, or an undo or redo step
names it. The runtime keeps its CPU copy that long (the GPU texture may be freed and drawn again
from it) and drops it when the last of these lets go: a step trimmed, rebased or cleared from
history, its owner disposed, the session destroyed. A feed patch or a dry run's patch keeps
nothing live. A write naming a ref that is not live (another session's, or one dropped) rejects
HoloInputError 'unknown-id' at its path and applies nothing; write the canvas again.
| Member | Kind | Summary |
|---|---|---|
id |
property | The upload's id in this session. |
sha256 |
property | sha256 of the uploaded image; it enters sceneHash. |
export interface ImageRef {
readonly id: string;
readonly sha256: string;
}
| Rule | Result |
|---|---|
| 1. Neutral name | pass: ImageRef names no product |
| 2. A precedent | pass: createImageBitmap() (row G23); Babylon.js DynamicTexture (row G23) |
| 3. Two apps, or labs | one app recorded: app-bcb7ef21da (spec 3.1 rule 3 asks for two, or labs) |
| 4. The cheaper fix first | decided per need in Appendix B: rows G23 at tier stable (a member only where no rule, data, asset or app code serves the need) |