ItemBase ​

Contract 2.0.0 · package sha256 a857eca95b35921109faf997094bb4192f12527d9d0fcd4be7e97f06425bad6e · generated from configurator-runtime.d.ts by services/onsite-scripter/scripts/build-contract-docs.mjs; edit the source, not this file.

Interface · import type { ItemBase } from '@holostep-configurators/runtime-client/contract'; · stable · since 2.0.0 · section 7. Collections and shapes

The fields every collection item has.

Members ​

Member Kind Summary
key property Unique in the collection; the reconcile key.
parent? property The key of another item in this collection.
name? property The part's name, matched by Query.name.
at? property Local to parent.
tags? property Tags, matched by Query.tag.
meta? property Your labels, matched by Query.meta; changed only by a later set().
visible? property Whether the item draws.
shadows? property Whether the item casts shadows on the others and the ground, and receives theirs.
pickable? property Whether a pick (input.pick, a tap or a drag) can hit the item.

Declaration ​

ts
export interface ItemBase {
  key: string;
  parent?: string;
  name?: string;
  at?: PoseInput;
  tags?: readonly string[];
  meta?: Readonly<Record<string, JsonPrimitive>>;
  visible?: boolean;
  shadows?: {
    cast?: boolean;
    receive?: boolean;
  };
  pickable?: boolean;
}

Generic-API test (spec 3.1) ​

Rule Result
1. Neutral name pass: ItemBase 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)