Placement ​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 { Placement } from '@holostep-configurators/runtime-client/contract'; · stable · since 2.0.0 · section 6. Queries, rules and parts
Where and how an imperatively created part sits. Fixed at creation.
| Member | Kind | Summary |
|---|---|---|
name? |
property | The part's name, matched by Query.name. |
at? |
property | Local to parent (by default the collection's root, whose pose then applies on top: turn content in one of them, not both). |
parent? |
property | The part it hangs under; at is then local to it. |
tags? |
property | Tags, matched by Query.tag. |
meta? |
property | Your labels, e.g. { segment: 3 }. |
export interface Placement {
name?: string;
at?: PoseInput;
parent?: Part;
tags?: readonly string[];
meta?: Readonly<Record<string, JsonPrimitive>>;
}
| Rule | Result |
|---|---|
| 1. Neutral name | pass: Placement 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) |