IModelNode ​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 { IModelNode } from '@holostep-configurators/runtime-client/contract'; · stable · since 2.0.0 · section 21. Stored data (vendored; replaces @holo/interfaces)
Stored GLB node. Fields not declared pass through, as on every node (IConfiguratorNode). dek, encryption and
keyRef never appear in any output; plainGlbUrl and plainOptGlbUrl are input-only.
| Member | Kind | Summary |
|---|---|---|
type |
property | Always 'ModelNode'. |
glbUrl |
property | The GLB (or .holo). |
optGlbUrl? |
property | The optimized twin the runtime prefers when present. |
plainGlbUrl? |
property | Input-only: the public twin the runtime draws when the .holo fails to fetch, decrypt or parse ('asset-degraded'). |
plainOptGlbUrl? |
property | Input-only: the twin of optGlbUrl, drawn and resolved as plainGlbUrl is. |
encrypted? |
property | True for an encrypted (.holo) asset. |
position |
property | Metres, in world space (or the parent model's, with space: 'parent'). |
rotation |
property | Euler XYZ, radians (stored format, unchanged). |
scale |
property | 1 on each axis is the authored size. |
defaultNodeId? |
property | The nodeId of its selected child; placed, and checked when applyPatch writes it, as IGroupNode.defaultNodeId (spec section 6.9, ID10). |
globalMaterialList? |
property | Which of its meshes global-material groups dress. |
magneticPlanes? |
property | Its connector-plane configs (spec section 6.12). |
space? |
property · labs | 'parent': position, rotation and scale are local to the nearest ModelNode ancestor, so the child moves, hides and disposes with it. |
tryOn? |
property · labs | The node's try-on rig record, which Holostep's rig pipeline writes and the runtime only reads: kind is the body part the rig fits, and approved is set once a rig passed review, with format, the rig file's format… |
tryOnUrl? |
property · labs | The approved rig's GLB (tryOn). |
tryOnCandidateUrl? |
property · labs | A candidate rig awaiting review. |
Inherited from IConfiguratorNode: _id, nodeId, label, order, enabled, expanded, createdAt, updatedAt, children, thumbnailUrl, attributes.
export interface IModelNode extends IConfiguratorNode {
type: 'ModelNode';
glbUrl: string;
optGlbUrl?: string;
plainGlbUrl?: string;
plainOptGlbUrl?: string;
encrypted?: boolean;
position: Point3;
rotation: Point3;
scale: Point3;
defaultNodeId?: string;
globalMaterialList?: IGlobalMaterialListEntry[];
magneticPlanes?: IMagneticPlaneConfig[];
space?: 'world' | 'parent';
tryOn?: {
kind: TryOnKind;
approved?: {
format: number;
};
};
tryOnUrl?: string;
tryOnCandidateUrl?: string;
}
| Rule | Result |
|---|---|
| 1. Neutral name | pass: IModelNode names no product |
| 2. A precedent | not recorded: no ledger row (coverage.json) names this member or its owner |
| 3. Two apps, or labs | not recorded: no ledger row names this member or its owner |
| 4. The cheaper fix first | not recorded per member (Appendix B decides it per need) |