@seatlayer/core 0.30.0 → 0.31.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.
- package/dist/view3d/index.cjs +382 -119
- package/dist/view3d/index.cjs.map +1 -1
- package/dist/view3d/index.d.cts +29 -1
- package/dist/view3d/index.d.ts +29 -1
- package/dist/view3d/index.js +382 -119
- package/dist/view3d/index.js.map +1 -1
- package/package.json +1 -1
package/dist/view3d/index.d.cts
CHANGED
|
@@ -104,7 +104,7 @@ interface Theme3D {
|
|
|
104
104
|
* unreadable confetti.
|
|
105
105
|
*/
|
|
106
106
|
|
|
107
|
-
type LabelKind = 'zone' | 'section' | 'annotation' | 'booth';
|
|
107
|
+
type LabelKind = 'zone' | 'section' | 'ga' | 'annotation' | 'booth' | 'row' | 'seat';
|
|
108
108
|
interface SceneLabel {
|
|
109
109
|
id: string;
|
|
110
110
|
kind: LabelKind;
|
|
@@ -217,6 +217,23 @@ interface SceneZone {
|
|
|
217
217
|
/** What this zone faces — its authored focal, else the venue's. */
|
|
218
218
|
focalWorld: [number, number, number];
|
|
219
219
|
}
|
|
220
|
+
/**
|
|
221
|
+
* One seated section, resolved for navigation — the middle rung of the venue
|
|
222
|
+
* ladder, between a zone and a seat. A chart with no zones authored still has
|
|
223
|
+
* sections, so this is the level at which every venue can be navigated.
|
|
224
|
+
*/
|
|
225
|
+
interface SceneSection {
|
|
226
|
+
id: string;
|
|
227
|
+
/** Buyer-facing name, matching the section label. */
|
|
228
|
+
label: string;
|
|
229
|
+
seatCount: number;
|
|
230
|
+
/** World-metre centre of the section's seats (camera target). */
|
|
231
|
+
center: [number, number, number];
|
|
232
|
+
/** Half-diagonal of its seat footprint, world metres (camera fit). */
|
|
233
|
+
radius: number;
|
|
234
|
+
/** What this section faces — the camera approaches from this side. */
|
|
235
|
+
focalWorld: [number, number, number];
|
|
236
|
+
}
|
|
220
237
|
/** A navigable floor — a logical level of the venue. */
|
|
221
238
|
interface SceneFloor {
|
|
222
239
|
index: number;
|
|
@@ -246,6 +263,8 @@ interface SceneModel {
|
|
|
246
263
|
focalWorld: [number, number, number];
|
|
247
264
|
/** The venue's zones, in authored order. Empty when the chart has none. */
|
|
248
265
|
zones: SceneZone[];
|
|
266
|
+
/** Seated sections, in authored order — the navigable middle rung. */
|
|
267
|
+
sections: SceneSection[];
|
|
249
268
|
/**
|
|
250
269
|
* The venue's floors, in authored order. A single-floor chart reports one.
|
|
251
270
|
*
|
|
@@ -367,6 +386,15 @@ interface Venue3DHandle {
|
|
|
367
386
|
* means the seats face the camera rather than presenting their backs.
|
|
368
387
|
*/
|
|
369
388
|
focusZone(zoneId: string): boolean;
|
|
389
|
+
/** The venue's seated sections (id, name, seat count) in authored order. */
|
|
390
|
+
sections(): SceneSection[];
|
|
391
|
+
/**
|
|
392
|
+
* Frame a section — the middle rung of the venue ladder, and the one every
|
|
393
|
+
* chart has. Zones are optional and a chart may author none or one; sections
|
|
394
|
+
* are what a buyer picks between when "which part of the venue" has already
|
|
395
|
+
* been answered. Returns false for an unknown or empty section.
|
|
396
|
+
*/
|
|
397
|
+
focusSection(sectionId: string): boolean;
|
|
370
398
|
/** The venue's floors (id, name, seat count) in authored order. */
|
|
371
399
|
floors(): SceneFloor[];
|
|
372
400
|
/**
|
package/dist/view3d/index.d.ts
CHANGED
|
@@ -104,7 +104,7 @@ interface Theme3D {
|
|
|
104
104
|
* unreadable confetti.
|
|
105
105
|
*/
|
|
106
106
|
|
|
107
|
-
type LabelKind = 'zone' | 'section' | 'annotation' | 'booth';
|
|
107
|
+
type LabelKind = 'zone' | 'section' | 'ga' | 'annotation' | 'booth' | 'row' | 'seat';
|
|
108
108
|
interface SceneLabel {
|
|
109
109
|
id: string;
|
|
110
110
|
kind: LabelKind;
|
|
@@ -217,6 +217,23 @@ interface SceneZone {
|
|
|
217
217
|
/** What this zone faces — its authored focal, else the venue's. */
|
|
218
218
|
focalWorld: [number, number, number];
|
|
219
219
|
}
|
|
220
|
+
/**
|
|
221
|
+
* One seated section, resolved for navigation — the middle rung of the venue
|
|
222
|
+
* ladder, between a zone and a seat. A chart with no zones authored still has
|
|
223
|
+
* sections, so this is the level at which every venue can be navigated.
|
|
224
|
+
*/
|
|
225
|
+
interface SceneSection {
|
|
226
|
+
id: string;
|
|
227
|
+
/** Buyer-facing name, matching the section label. */
|
|
228
|
+
label: string;
|
|
229
|
+
seatCount: number;
|
|
230
|
+
/** World-metre centre of the section's seats (camera target). */
|
|
231
|
+
center: [number, number, number];
|
|
232
|
+
/** Half-diagonal of its seat footprint, world metres (camera fit). */
|
|
233
|
+
radius: number;
|
|
234
|
+
/** What this section faces — the camera approaches from this side. */
|
|
235
|
+
focalWorld: [number, number, number];
|
|
236
|
+
}
|
|
220
237
|
/** A navigable floor — a logical level of the venue. */
|
|
221
238
|
interface SceneFloor {
|
|
222
239
|
index: number;
|
|
@@ -246,6 +263,8 @@ interface SceneModel {
|
|
|
246
263
|
focalWorld: [number, number, number];
|
|
247
264
|
/** The venue's zones, in authored order. Empty when the chart has none. */
|
|
248
265
|
zones: SceneZone[];
|
|
266
|
+
/** Seated sections, in authored order — the navigable middle rung. */
|
|
267
|
+
sections: SceneSection[];
|
|
249
268
|
/**
|
|
250
269
|
* The venue's floors, in authored order. A single-floor chart reports one.
|
|
251
270
|
*
|
|
@@ -367,6 +386,15 @@ interface Venue3DHandle {
|
|
|
367
386
|
* means the seats face the camera rather than presenting their backs.
|
|
368
387
|
*/
|
|
369
388
|
focusZone(zoneId: string): boolean;
|
|
389
|
+
/** The venue's seated sections (id, name, seat count) in authored order. */
|
|
390
|
+
sections(): SceneSection[];
|
|
391
|
+
/**
|
|
392
|
+
* Frame a section — the middle rung of the venue ladder, and the one every
|
|
393
|
+
* chart has. Zones are optional and a chart may author none or one; sections
|
|
394
|
+
* are what a buyer picks between when "which part of the venue" has already
|
|
395
|
+
* been answered. Returns false for an unknown or empty section.
|
|
396
|
+
*/
|
|
397
|
+
focusSection(sectionId: string): boolean;
|
|
370
398
|
/** The venue's floors (id, name, seat count) in authored order. */
|
|
371
399
|
floors(): SceneFloor[];
|
|
372
400
|
/**
|