connectionsBasis ​

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.

Function · import { connectionsBasis } from '@holostep-configurators/runtime-client'; · stable · since 2.0.0 · section 22. Pure helpers (root of the package; run in Node and the fake)

The basis fingerprint to store beside connections, as IConfigurator.connectionsBasis: sha256 (hex) of the canonical JSON (RFC 8785) of nodeId, glbUrl (as written, before assetBaseUrl resolves it), position, rotation and scale (missing ones as identity) of every ModelNode the model places (spec section 6.9, ID10: enabled, and selected in every group above it), in depth-first document order, then connections as given. An added, removed, moved, reordered or swapped element changes it. A node with no or empty glbUrl is skipped (it places no asset); its children are not. Sync, pure. See IConfigurator.connectionsBasis for what a mismatch does, and getSceneModel for a save.

Declaration ​

ts
export declare function connectionsBasis(model: DeepReadonly<SceneModel>, connections: readonly Connection[]): string;

Generic-API test (spec 3.1) ​

Rule Result
1. Neutral name pass: connectionsBasis names no product
2. A precedent pass: a correctness rule (rows G16, G46, X5)
3. Two apps, or labs pass: 3 apps (ledger: app-04c2774145, app-4762caacdc, app-f9a32142f1)
4. The cheaper fix first decided per need in Appendix B: rows G16, G46, X5 at tier stable (a member only where no rule, data, asset or app code serves the need)