@seatlayer/core 0.31.0 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { C as ChartDoc, E as ExpandedSeat } from '../types-CG2pEDoI.cjs';
1
+ import { C as ChartDoc, E as ExpandedSeat } from '../types-DO_J5DtX.cjs';
2
2
 
3
3
  /**
4
4
  * Dirty-flag render loop. A frame is drawn only while the camera is moving /
@@ -188,6 +188,29 @@ interface SeatInstanceData {
188
188
  iRing: Float32Array;
189
189
  /** float per instance: owning floor index, for per-floor isolation. */
190
190
  iFloor: Float32Array;
191
+ /**
192
+ * float per instance: facing yaw in radians, for the near-field chair mesh.
193
+ *
194
+ * A billboard dot has no front, so nothing here ever needed a direction. A
195
+ * chair does, and getting it wrong is worse than drawing nothing — a row of
196
+ * seats with their backs to the stage reads as a mistake immediately.
197
+ *
198
+ * Left at zero by this builder and filled by `sceneModel`, which is the layer
199
+ * that knows what each seat FACES (its floor's focal point). Direct callers
200
+ * and tests that build instances without a scene get zeros, which is a
201
+ * well-defined "facing +Z" rather than an undefined attribute.
202
+ */
203
+ iYaw: Float32Array;
204
+ /**
205
+ * float per instance: half-width of this seat's near-field CHAIR, world metres.
206
+ *
207
+ * Deliberately not `iMaxRadius`. That value is the dot's ceiling — conservative
208
+ * by design so round dots stay visually apart, and clamped to
209
+ * SEAT_DOT_RADIUS_M on top of that. Sizing a chair from it gave 0.34 m chairs
210
+ * under 0.95 m backs: an aspect ratio near 3:1, which reads as a headstone.
211
+ * Real seats very nearly touch. See `chairHalfWidth`.
212
+ */
213
+ iChairWidth: Float32Array;
191
214
  /** seatId → instance index (drives targeted availability updates). */
192
215
  idToIndex: Map<string, number>;
193
216
  }
@@ -1,4 +1,4 @@
1
- import { C as ChartDoc, E as ExpandedSeat } from '../types-CG2pEDoI.js';
1
+ import { C as ChartDoc, E as ExpandedSeat } from '../types-DO_J5DtX.js';
2
2
 
3
3
  /**
4
4
  * Dirty-flag render loop. A frame is drawn only while the camera is moving /
@@ -188,6 +188,29 @@ interface SeatInstanceData {
188
188
  iRing: Float32Array;
189
189
  /** float per instance: owning floor index, for per-floor isolation. */
190
190
  iFloor: Float32Array;
191
+ /**
192
+ * float per instance: facing yaw in radians, for the near-field chair mesh.
193
+ *
194
+ * A billboard dot has no front, so nothing here ever needed a direction. A
195
+ * chair does, and getting it wrong is worse than drawing nothing — a row of
196
+ * seats with their backs to the stage reads as a mistake immediately.
197
+ *
198
+ * Left at zero by this builder and filled by `sceneModel`, which is the layer
199
+ * that knows what each seat FACES (its floor's focal point). Direct callers
200
+ * and tests that build instances without a scene get zeros, which is a
201
+ * well-defined "facing +Z" rather than an undefined attribute.
202
+ */
203
+ iYaw: Float32Array;
204
+ /**
205
+ * float per instance: half-width of this seat's near-field CHAIR, world metres.
206
+ *
207
+ * Deliberately not `iMaxRadius`. That value is the dot's ceiling — conservative
208
+ * by design so round dots stay visually apart, and clamped to
209
+ * SEAT_DOT_RADIUS_M on top of that. Sizing a chair from it gave 0.34 m chairs
210
+ * under 0.95 m backs: an aspect ratio near 3:1, which reads as a headstone.
211
+ * Real seats very nearly touch. See `chairHalfWidth`.
212
+ */
213
+ iChairWidth: Float32Array;
191
214
  /** seatId → instance index (drives targeted availability updates). */
192
215
  idToIndex: Map<string, number>;
193
216
  }