@seatlayer/core 0.46.0 → 0.47.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/chunk-AZODENEL.js +97 -0
- package/dist/chunk-AZODENEL.js.map +1 -0
- package/dist/chunk-FVCOOLJO.js +335 -0
- package/dist/chunk-FVCOOLJO.js.map +1 -0
- package/dist/{chunk-5MRJCIZP.js → chunk-TCTAS4Z2.js} +88 -14
- package/dist/chunk-TCTAS4Z2.js.map +1 -0
- package/dist/{de-UHAOVDS3.js → de-ST4H423D.js} +6 -3
- package/dist/{de-UHAOVDS3.js.map → de-ST4H423D.js.map} +1 -1
- package/dist/{es-6TJS2L7S.js → es-WEC5NHRT.js} +6 -3
- package/dist/{es-6TJS2L7S.js.map → es-WEC5NHRT.js.map} +1 -1
- package/dist/{fr-MMSY7FPE.js → fr-SGBFNAQV.js} +6 -3
- package/dist/{fr-MMSY7FPE.js.map → fr-SGBFNAQV.js.map} +1 -1
- package/dist/index.cjs +251 -39
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +119 -4
- package/dist/index.d.ts +119 -4
- package/dist/index.js +152 -24
- package/dist/index.js.map +1 -1
- package/dist/{types-DBnRO2hX.d.cts → types-CE63BK0j.d.cts} +88 -10
- package/dist/{types-DBnRO2hX.d.ts → types-CE63BK0j.d.ts} +88 -10
- package/dist/view/panoramaDelivery.cjs +126 -0
- package/dist/view/panoramaDelivery.cjs.map +1 -0
- package/dist/view/panoramaDelivery.d.cts +34 -0
- package/dist/view/panoramaDelivery.d.ts +34 -0
- package/dist/view/panoramaDelivery.js +17 -0
- package/dist/view/panoramaDelivery.js.map +1 -0
- package/dist/view3d/crossfade/panorama.cjs +453 -0
- package/dist/view3d/crossfade/panorama.cjs.map +1 -0
- package/dist/view3d/crossfade/panorama.d.cts +110 -0
- package/dist/view3d/crossfade/panorama.d.ts +110 -0
- package/dist/view3d/crossfade/panorama.js +30 -0
- package/dist/view3d/crossfade/panorama.js.map +1 -0
- package/dist/view3d/index.cjs +1161 -128
- package/dist/view3d/index.cjs.map +1 -1
- package/dist/view3d/index.d.cts +60 -35
- package/dist/view3d/index.d.ts +60 -35
- package/dist/view3d/index.js +945 -300
- package/dist/view3d/index.js.map +1 -1
- package/package.json +28 -1
- package/dist/chunk-5MRJCIZP.js.map +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { R as RowObject, A as AccessibilityType, S as SeatOverride, L as LabelStyle,
|
|
2
|
-
export {
|
|
1
|
+
import { R as RowObject, A as AccessibilityType, S as SeatOverride, a as SeatViewMetadata, L as LabelStyle, b as RectTableSide, C as ChartDoc, c as ChartObject, B as BoothObject, E as ExpandedSeat, T as TableObject, F as Floor, P as Point, d as SectionObject, e as RectTableSeatCounts, G as GAAreaObject, f as GAInventorySegment, g as RendererQualityEvidence, h as RenderedFreeTextEvidence, I as ISeatmapRenderer, i as RendererOptions, j as SeatStatus, k as RendererViewMode, l as LodRung, m as CategoryTier, n as SeatCommercialAttributes, o as RendererCallbacks } from './types-CE63BK0j.cjs';
|
|
2
|
+
export { p as ACCESSIBILITY_RING_COLOR, q as ACCESSIBILITY_TYPES, r as AccessibilityMeta, s as AuthoringObjectState, t as CHART_STORAGE_KEY, u as Category, v as ChartReferenceImage, w as ChartTheme, x as CubicPath, D as DecorImageObject, y as LABEL_STYLE_MAX_SIZE, z as LABEL_STYLE_MIN_SIZE, H as LabelPresentation, O as ObjectEditorState, J as ReferenceAccessibilitySource, K as ReferenceCalibration, M as ReferenceCategorySource, N as ReferenceDerivedScale, Q as ReferenceInventoryExclusionSource, U as ReferenceInventorySource, V as ReferenceScanProposal, W as ReferenceScanRowProposal, X as ReferenceScanSectionProposal, Y as ReferenceSeatSeed, Z as ReferenceSectionTraceBatchInput, _ as ReferenceSectionTraceBatchProposal, $ as ReferenceSectionTraceInput, a0 as ReferenceSectionTraceProposal, a1 as RenderedBookableLabelEvidence, a2 as RenderedGAAreaEvidence, a3 as RenderedHierarchyLabelEvidence, a4 as RenderedLabelHiddenReason, a5 as SEAT_COMMERCIAL_MARKS, a6 as SURROUNDINGS_SHAPE_ROLES, a7 as SeatCommercialMark, a8 as SeatCommercialMeta, a9 as SeatViewCoverage, aa as SectionOutlinePath, ab as SectionPathSegment, ac as SelectionLayer, ad as ShapeLineCap, ae as ShapeLineEnding, af as ShapeLineJoin, ag as ShapeObject, ah as TextAlignment, ai as TextBackground, aj as TextObject, ak as ZoneDef, al as accessibilityMeta, am as accessibilityRingColor, an as layerOf, ao as seatCommercialMeta } from './types-CE63BK0j.cjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* The segmented-row model — one logical row made of several physical rows.
|
|
@@ -34,6 +34,7 @@ interface SegmentedRowPlacement {
|
|
|
34
34
|
totalSeats: number;
|
|
35
35
|
canonical: RowObject;
|
|
36
36
|
viewFromSeatUrl?: string;
|
|
37
|
+
viewFromSeatMeta?: RowObject['viewFromSeatMeta'];
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
/**
|
|
@@ -80,6 +81,7 @@ interface RowSeatSlot {
|
|
|
80
81
|
wheelchairSpaceType?: SeatOverride['wheelchairSpaceType'];
|
|
81
82
|
commercial?: RowObject['commercial'];
|
|
82
83
|
viewUrl?: string;
|
|
84
|
+
viewMeta?: SeatViewMetadata;
|
|
83
85
|
labelStyle?: LabelStyle;
|
|
84
86
|
}
|
|
85
87
|
/** Every authored table-chair slot, including skipped inventory. This mirrors
|
|
@@ -173,6 +175,9 @@ interface ExpandChartOptions {
|
|
|
173
175
|
/** Physical height for a single-floor projection extracted from a multi-floor
|
|
174
176
|
* document. Full multi-floor documents resolve each floor directly. */
|
|
175
177
|
floorBaseHeightM?: number;
|
|
178
|
+
/** Resolve per-seat 3D eye heights (default true). Two-dimensional consumers
|
|
179
|
+
* such as thumbnails can disable this expensive stand-structure pass. */
|
|
180
|
+
resolveEyeHeights?: boolean;
|
|
176
181
|
}
|
|
177
182
|
/** Expand every seat-bearing object across all floors (rows, tables, booths).
|
|
178
183
|
* Multi-floor ownership is resolved one floor at a time: local coordinates may
|
|
@@ -1392,6 +1397,21 @@ interface PickerStatusChange {
|
|
|
1392
1397
|
interface PickerRealtimeSink {
|
|
1393
1398
|
/** Apply a batch of label→status changes as ONE paint pass, not one per label. */
|
|
1394
1399
|
applyStatuses(changes: PickerStatusChange[]): void;
|
|
1400
|
+
/**
|
|
1401
|
+
* Paint a COMPLETE projection: the default every unnamed unit takes, plus the
|
|
1402
|
+
* units that differ from it.
|
|
1403
|
+
*
|
|
1404
|
+
* Optional so a host implementing an older sink keeps working — a client that
|
|
1405
|
+
* finds it missing falls back to {@link resync}. Where it exists it replaces
|
|
1406
|
+
* that HTTP round trip entirely, because the frame that triggered the resync
|
|
1407
|
+
* already carried the whole authoritative state. On a 52k venue that is the
|
|
1408
|
+
* difference between a ~960 KiB verbose fetch and painting what already
|
|
1409
|
+
* arrived in a ~200 KiB socket frame.
|
|
1410
|
+
*/
|
|
1411
|
+
applyProjection?(projection: {
|
|
1412
|
+
default: string;
|
|
1413
|
+
exceptions: Record<string, string>;
|
|
1414
|
+
}): void;
|
|
1395
1415
|
/** Re-pull authoritative state over HTTP (a frame that cannot be diffed). */
|
|
1396
1416
|
resync(): void | Promise<void>;
|
|
1397
1417
|
/** Section availability changed (hidden = stripped, closed = greyed). */
|
|
@@ -1417,13 +1437,17 @@ interface PickerTransport {
|
|
|
1417
1437
|
salesClosed?: boolean;
|
|
1418
1438
|
venue?: string | null;
|
|
1419
1439
|
startsAt?: number | null;
|
|
1440
|
+
timezone?: string | null;
|
|
1420
1441
|
currency?: string;
|
|
1421
1442
|
mode?: string;
|
|
1422
1443
|
inventoryModelVersion?: 1 | 2;
|
|
1423
1444
|
};
|
|
1424
1445
|
}>;
|
|
1446
|
+
/** `default` is the status of every seat NOT in `seats`; absent means `free`
|
|
1447
|
+
* (an older server names every seat). Never assume it. */
|
|
1425
1448
|
objects(key: string): Promise<{
|
|
1426
1449
|
seats: Record<string, string>;
|
|
1450
|
+
default?: string;
|
|
1427
1451
|
hidden?: string[];
|
|
1428
1452
|
closed?: string[];
|
|
1429
1453
|
}>;
|
|
@@ -1520,6 +1544,36 @@ interface PickerOptions extends PickerCallbacks {
|
|
|
1520
1544
|
* and the WS protocol are identical either way.
|
|
1521
1545
|
*/
|
|
1522
1546
|
keepLiveWhileHidden?: boolean;
|
|
1547
|
+
/**
|
|
1548
|
+
* Host overrides for the DRAWN map — see {@link PickerMapTheme}. Absent (the
|
|
1549
|
+
* default, and every embed) leaves the chart document's own theme untouched.
|
|
1550
|
+
*/
|
|
1551
|
+
mapTheme?: PickerMapTheme | null;
|
|
1552
|
+
}
|
|
1553
|
+
/**
|
|
1554
|
+
* The subset of `ChartTheme` a HOST may override on the drawn canvas.
|
|
1555
|
+
*
|
|
1556
|
+
* WHY A SUBSET, AND WHY THESE FOUR. Everything here paints directly ON the
|
|
1557
|
+
* ground this same object sets, so a caller supplying it can be held to a
|
|
1558
|
+
* contrast contract over its own values (the event-page palettes are). The
|
|
1559
|
+
* fields deliberately left out — `seatLabelColor`, `decorFill` — paint on top
|
|
1560
|
+
* of CHART-authored colours instead: a category's fill, an authored décor fill.
|
|
1561
|
+
* A page palette knows nothing about those, so an override there would be an
|
|
1562
|
+
* unverifiable guess about legibility, and the chart keeps them.
|
|
1563
|
+
*
|
|
1564
|
+
* `seatScale`, `fontFamily` and the white-label branding fields are not here
|
|
1565
|
+
* either: they are the ORGANIZER's, authored once with the chart, and a page
|
|
1566
|
+
* theme is not the place to resize a venue.
|
|
1567
|
+
*/
|
|
1568
|
+
interface PickerMapTheme {
|
|
1569
|
+
/** The canvas ground behind the seats. */
|
|
1570
|
+
background?: string;
|
|
1571
|
+
/** Row identifiers (A, B, C) drawn beside the rows. */
|
|
1572
|
+
rowLabelColor?: string;
|
|
1573
|
+
/** Default ink for free text drawn on the canvas. */
|
|
1574
|
+
textColor?: string;
|
|
1575
|
+
/** Selection / hover ring. */
|
|
1576
|
+
selectionColor?: string;
|
|
1523
1577
|
}
|
|
1524
1578
|
declare class PickerController {
|
|
1525
1579
|
private readonly opts;
|
|
@@ -1530,6 +1584,8 @@ declare class PickerController {
|
|
|
1530
1584
|
private _doc;
|
|
1531
1585
|
/** Section/zone ids hidden from buyers this event (3.3) — seats vanish, not grey. */
|
|
1532
1586
|
private hidden;
|
|
1587
|
+
/** Host overrides folded over the chart's own theme in `visibleDoc()`. */
|
|
1588
|
+
private mapTheme;
|
|
1533
1589
|
/** Section/zone ids in the `closed` event-state (Phase 2) — seats stay, greyed
|
|
1534
1590
|
* + not pickable. Kept separate from `hidden` (which strips them). */
|
|
1535
1591
|
private closedSections;
|
|
@@ -1563,12 +1619,53 @@ declare class PickerController {
|
|
|
1563
1619
|
private onVisibilityChange;
|
|
1564
1620
|
private hold_;
|
|
1565
1621
|
private liveStatuses;
|
|
1622
|
+
/**
|
|
1623
|
+
* What a label absent from `liveStatuses` is.
|
|
1624
|
+
*
|
|
1625
|
+
* `free` while the verbose HTTP map is the source (it names every unit), but a
|
|
1626
|
+
* compact realtime frame names only its exceptions — so on a mostly-sold event
|
|
1627
|
+
* the seats NOT listed are the booked ones. Read through {@link statusOf};
|
|
1628
|
+
* a bare `liveStatuses.get()` silently answers `undefined` for the majority of
|
|
1629
|
+
* a sold-out venue.
|
|
1630
|
+
*/
|
|
1631
|
+
private liveDefault;
|
|
1566
1632
|
private currency;
|
|
1567
1633
|
private expiryTimer;
|
|
1568
1634
|
constructor(options: PickerOptions);
|
|
1569
1635
|
get doc(): ChartDoc | null;
|
|
1570
|
-
/**
|
|
1636
|
+
/**
|
|
1637
|
+
* The chart with hidden sections' seats removed, and the host's map theme
|
|
1638
|
+
* folded over the chart's own — what buyers actually see.
|
|
1639
|
+
*
|
|
1640
|
+
* THE THEME IS MERGED HERE rather than pushed at the renderer separately
|
|
1641
|
+
* because the renderer reads its theme out of the document it is given. One
|
|
1642
|
+
* merge point means every rebuild — a hidden section arriving mid-sale, a
|
|
1643
|
+
* floor switch, a theme change — repaints from the same resolved theme
|
|
1644
|
+
* instead of from whichever of two sources ran last.
|
|
1645
|
+
*
|
|
1646
|
+
* The chart's theme is the BASE and only named keys are overwritten, so a
|
|
1647
|
+
* host that overrides the ground does not thereby erase the organizer's
|
|
1648
|
+
* `seatScale`, `fontFamily`, logo or badge entitlement.
|
|
1649
|
+
*/
|
|
1571
1650
|
private visibleDoc;
|
|
1651
|
+
/**
|
|
1652
|
+
* Re-ink the drawn map, in place, without losing the buyer's place in it.
|
|
1653
|
+
*
|
|
1654
|
+
* WHY THIS IS A SETTER AND NOT A MOUNT OPTION. On a templated event page the
|
|
1655
|
+
* palette is not known when the map mounts: the page config is a separate
|
|
1656
|
+
* cached read and the map is explicitly not allowed to wait for it. The
|
|
1657
|
+
* alternative — remounting the widget once the palette lands — would destroy
|
|
1658
|
+
* a hold the buyer may already be holding.
|
|
1659
|
+
*
|
|
1660
|
+
* The rebuild is the SAME recipe `render()` uses (setChart → colorblind →
|
|
1661
|
+
* closed sections → statuses), because setChart resets all four; the one
|
|
1662
|
+
* addition is restoring the selection, which `render()` has no need to do.
|
|
1663
|
+
* Statuses are repainted from the map already in memory rather than re-read,
|
|
1664
|
+
* so this costs no round trip and cannot flash a stale seat.
|
|
1665
|
+
*
|
|
1666
|
+
* Returns whether anything actually changed, so a caller may call it freely.
|
|
1667
|
+
*/
|
|
1668
|
+
setMapTheme(theme: PickerMapTheme | null): boolean;
|
|
1572
1669
|
/** Adopt a new hidden set; rebuild the visible chart only if it differs. */
|
|
1573
1670
|
private syncHidden;
|
|
1574
1671
|
/** Adopt a new closed-section set; restyle (grey + non-pickable) if it differs.
|
|
@@ -1606,6 +1703,9 @@ declare class PickerController {
|
|
|
1606
1703
|
eventName: string;
|
|
1607
1704
|
venue?: string | null;
|
|
1608
1705
|
startsAt?: number | null;
|
|
1706
|
+
/** The EVENT's IANA zone. Every surface that prints `startsAt` must format
|
|
1707
|
+
* in it — see the note in pub.ts's chart route. */
|
|
1708
|
+
timezone?: string | null;
|
|
1609
1709
|
currency?: string;
|
|
1610
1710
|
/** 'test' ⇒ sandbox event (hosts show a TEST MODE ribbon). */
|
|
1611
1711
|
mode?: string;
|
|
@@ -1835,7 +1935,19 @@ declare class PickerController {
|
|
|
1835
1935
|
private setHold;
|
|
1836
1936
|
private clearHold;
|
|
1837
1937
|
private expireActiveHold;
|
|
1938
|
+
/**
|
|
1939
|
+
* Repaint from an authoritative map of unit statuses.
|
|
1940
|
+
*
|
|
1941
|
+
* `defaultStatus` is what every unit NOT named in `seats` is. The verbose HTTP
|
|
1942
|
+
* route names every unit and leaves it at `free`; the compact realtime frame
|
|
1943
|
+
* names only the exceptions and states its own default, which on a mostly-sold
|
|
1944
|
+
* event is `booked` rather than `free`. Applying a compact map while assuming
|
|
1945
|
+
* `free` would paint a sold-out stadium as fully available, so the default is
|
|
1946
|
+
* a parameter rather than a constant.
|
|
1947
|
+
*/
|
|
1838
1948
|
private applySeatsMap;
|
|
1949
|
+
/** The live status of one unit, honouring the projection's default. */
|
|
1950
|
+
private statusOf;
|
|
1839
1951
|
private clearBookedHoldIfSettled;
|
|
1840
1952
|
private resnapshot;
|
|
1841
1953
|
/**
|
|
@@ -2000,6 +2112,9 @@ declare function loadLocale(code?: string | null): Promise<Locale>;
|
|
|
2000
2112
|
* convert at the API boundary, not here.
|
|
2001
2113
|
*/
|
|
2002
2114
|
declare const DEFAULT_CURRENCY = "USD";
|
|
2115
|
+
/** Currencies offered in event create/edit selects — shared by the plain and
|
|
2116
|
+
* express create forms so the two can never offer different lists. */
|
|
2117
|
+
declare const CURRENCY_CHOICES: string[];
|
|
2003
2118
|
declare function setMoneyLocale(locale: string | undefined): void;
|
|
2004
2119
|
/**
|
|
2005
2120
|
* "€45" / "$1,500" / "45 €" (locale-dependent placement).
|
|
@@ -2034,4 +2149,4 @@ declare function formatMinor(minor: number, currency?: string): string;
|
|
|
2034
2149
|
/** Bare symbol for input adornments ("€", "$", "₹"). */
|
|
2035
2150
|
declare function currencySymbol(currency?: string): string;
|
|
2036
2151
|
|
|
2037
|
-
export { AccessibilityType, type AvailabilityRule, BoothObject, CategoryTier, ChartDoc, ChartObject, DEFAULT_CURRENCY, type Dict, type ExpandChartOptions, ExpandedSeat, Floor, GAAreaObject, GAInventorySegment, type HoldConflict, type HoldInfo, type HoldSelectionRequest, type HoldServerItem, ISeatmapRenderer, LabelStyle, type Locale, LodRung, MAX_EVENT_INVENTORY, MAX_GA_CAPACITY, type PanoramaResult, type PickerCallbacks, PickerController, type PickerGAArea, type PickerOptions, type PickerRealtimeConnection, type PickerRealtimeSink, type PickerSeat, type PickerStatusChange, type PickerTransport, Point, RENDERED_QUALITY_REPORT_VERSION, RectTableSeatCounts, RectTableSide, type RenderedEvidenceState, RenderedFreeTextEvidence, type RenderedQualityFinding, type RenderedQualityFindingCode, type RenderedQualityReport, type RenderedQualitySample, RendererCallbacks, RendererOptions, RendererQualityEvidence, RendererViewMode, RowObject, type RowSeatSlot, SUPPORTED_LOCALES, SeatCommercialAttributes, type SeatHoverDetails, SeatOverride, SeatStatus, SeatmapRenderer, type SectionCategory, type SectionNode, SectionObject, type SectionSummary, TIER_HEIGHT_M, TableObject, type TableSeatSlot, type TableSelectionDetails, UNGROUPED_ID, allObjects, applyHidden, chartBounds, computeSections, createRenderer, currencyExponent, currencySymbol, expandBooth, expandChart, expandRow, expandRowSlots, expandTable, expandTableSlots, floorObjects, floorsOf, formatDate, formatMinor, formatMoney, fromMinorUnits, gaAreasOf, gaInventorySegments, gaUnitLabel, gaUnitLabels, generateSeatPanorama, generateSeatThumb, getLocale, growJoinedGAInventory, hiddenObjectIds, inspectRenderedQualityEvidence, isGaUnitLabel, isSectionHidden, loadLocale, objectCenter, owningSectionForObject, pointInPolygon, pointInPolygonWithHoles, polygonLabelPoint, resolveLocale, rowInventoryCount, rowSeatPositions, sectionGeometry, setLocale, setMoneyLocale, setStringOverrides, stackFloors, t, tCount, tableInventoryCount, tableSeatCountsBySide, validGAInventorySegments };
|
|
2152
|
+
export { AccessibilityType, type AvailabilityRule, BoothObject, CURRENCY_CHOICES, CategoryTier, ChartDoc, ChartObject, DEFAULT_CURRENCY, type Dict, type ExpandChartOptions, ExpandedSeat, Floor, GAAreaObject, GAInventorySegment, type HoldConflict, type HoldInfo, type HoldSelectionRequest, type HoldServerItem, ISeatmapRenderer, LabelStyle, type Locale, LodRung, MAX_EVENT_INVENTORY, MAX_GA_CAPACITY, type PanoramaResult, type PickerCallbacks, PickerController, type PickerGAArea, type PickerMapTheme, type PickerOptions, type PickerRealtimeConnection, type PickerRealtimeSink, type PickerSeat, type PickerStatusChange, type PickerTransport, Point, RENDERED_QUALITY_REPORT_VERSION, RectTableSeatCounts, RectTableSide, type RenderedEvidenceState, RenderedFreeTextEvidence, type RenderedQualityFinding, type RenderedQualityFindingCode, type RenderedQualityReport, type RenderedQualitySample, RendererCallbacks, RendererOptions, RendererQualityEvidence, RendererViewMode, RowObject, type RowSeatSlot, SUPPORTED_LOCALES, SeatCommercialAttributes, type SeatHoverDetails, SeatOverride, SeatStatus, SeatViewMetadata, SeatmapRenderer, type SectionCategory, type SectionNode, SectionObject, type SectionSummary, TIER_HEIGHT_M, TableObject, type TableSeatSlot, type TableSelectionDetails, UNGROUPED_ID, allObjects, applyHidden, chartBounds, computeSections, createRenderer, currencyExponent, currencySymbol, expandBooth, expandChart, expandRow, expandRowSlots, expandTable, expandTableSlots, floorObjects, floorsOf, formatDate, formatMinor, formatMoney, fromMinorUnits, gaAreasOf, gaInventorySegments, gaUnitLabel, gaUnitLabels, generateSeatPanorama, generateSeatThumb, getLocale, growJoinedGAInventory, hiddenObjectIds, inspectRenderedQualityEvidence, isGaUnitLabel, isSectionHidden, loadLocale, objectCenter, owningSectionForObject, pointInPolygon, pointInPolygonWithHoles, polygonLabelPoint, resolveLocale, rowInventoryCount, rowSeatPositions, sectionGeometry, setLocale, setMoneyLocale, setStringOverrides, stackFloors, t, tCount, tableInventoryCount, tableSeatCountsBySide, validGAInventorySegments };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { R as RowObject, A as AccessibilityType, S as SeatOverride, L as LabelStyle,
|
|
2
|
-
export {
|
|
1
|
+
import { R as RowObject, A as AccessibilityType, S as SeatOverride, a as SeatViewMetadata, L as LabelStyle, b as RectTableSide, C as ChartDoc, c as ChartObject, B as BoothObject, E as ExpandedSeat, T as TableObject, F as Floor, P as Point, d as SectionObject, e as RectTableSeatCounts, G as GAAreaObject, f as GAInventorySegment, g as RendererQualityEvidence, h as RenderedFreeTextEvidence, I as ISeatmapRenderer, i as RendererOptions, j as SeatStatus, k as RendererViewMode, l as LodRung, m as CategoryTier, n as SeatCommercialAttributes, o as RendererCallbacks } from './types-CE63BK0j.js';
|
|
2
|
+
export { p as ACCESSIBILITY_RING_COLOR, q as ACCESSIBILITY_TYPES, r as AccessibilityMeta, s as AuthoringObjectState, t as CHART_STORAGE_KEY, u as Category, v as ChartReferenceImage, w as ChartTheme, x as CubicPath, D as DecorImageObject, y as LABEL_STYLE_MAX_SIZE, z as LABEL_STYLE_MIN_SIZE, H as LabelPresentation, O as ObjectEditorState, J as ReferenceAccessibilitySource, K as ReferenceCalibration, M as ReferenceCategorySource, N as ReferenceDerivedScale, Q as ReferenceInventoryExclusionSource, U as ReferenceInventorySource, V as ReferenceScanProposal, W as ReferenceScanRowProposal, X as ReferenceScanSectionProposal, Y as ReferenceSeatSeed, Z as ReferenceSectionTraceBatchInput, _ as ReferenceSectionTraceBatchProposal, $ as ReferenceSectionTraceInput, a0 as ReferenceSectionTraceProposal, a1 as RenderedBookableLabelEvidence, a2 as RenderedGAAreaEvidence, a3 as RenderedHierarchyLabelEvidence, a4 as RenderedLabelHiddenReason, a5 as SEAT_COMMERCIAL_MARKS, a6 as SURROUNDINGS_SHAPE_ROLES, a7 as SeatCommercialMark, a8 as SeatCommercialMeta, a9 as SeatViewCoverage, aa as SectionOutlinePath, ab as SectionPathSegment, ac as SelectionLayer, ad as ShapeLineCap, ae as ShapeLineEnding, af as ShapeLineJoin, ag as ShapeObject, ah as TextAlignment, ai as TextBackground, aj as TextObject, ak as ZoneDef, al as accessibilityMeta, am as accessibilityRingColor, an as layerOf, ao as seatCommercialMeta } from './types-CE63BK0j.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* The segmented-row model — one logical row made of several physical rows.
|
|
@@ -34,6 +34,7 @@ interface SegmentedRowPlacement {
|
|
|
34
34
|
totalSeats: number;
|
|
35
35
|
canonical: RowObject;
|
|
36
36
|
viewFromSeatUrl?: string;
|
|
37
|
+
viewFromSeatMeta?: RowObject['viewFromSeatMeta'];
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
/**
|
|
@@ -80,6 +81,7 @@ interface RowSeatSlot {
|
|
|
80
81
|
wheelchairSpaceType?: SeatOverride['wheelchairSpaceType'];
|
|
81
82
|
commercial?: RowObject['commercial'];
|
|
82
83
|
viewUrl?: string;
|
|
84
|
+
viewMeta?: SeatViewMetadata;
|
|
83
85
|
labelStyle?: LabelStyle;
|
|
84
86
|
}
|
|
85
87
|
/** Every authored table-chair slot, including skipped inventory. This mirrors
|
|
@@ -173,6 +175,9 @@ interface ExpandChartOptions {
|
|
|
173
175
|
/** Physical height for a single-floor projection extracted from a multi-floor
|
|
174
176
|
* document. Full multi-floor documents resolve each floor directly. */
|
|
175
177
|
floorBaseHeightM?: number;
|
|
178
|
+
/** Resolve per-seat 3D eye heights (default true). Two-dimensional consumers
|
|
179
|
+
* such as thumbnails can disable this expensive stand-structure pass. */
|
|
180
|
+
resolveEyeHeights?: boolean;
|
|
176
181
|
}
|
|
177
182
|
/** Expand every seat-bearing object across all floors (rows, tables, booths).
|
|
178
183
|
* Multi-floor ownership is resolved one floor at a time: local coordinates may
|
|
@@ -1392,6 +1397,21 @@ interface PickerStatusChange {
|
|
|
1392
1397
|
interface PickerRealtimeSink {
|
|
1393
1398
|
/** Apply a batch of label→status changes as ONE paint pass, not one per label. */
|
|
1394
1399
|
applyStatuses(changes: PickerStatusChange[]): void;
|
|
1400
|
+
/**
|
|
1401
|
+
* Paint a COMPLETE projection: the default every unnamed unit takes, plus the
|
|
1402
|
+
* units that differ from it.
|
|
1403
|
+
*
|
|
1404
|
+
* Optional so a host implementing an older sink keeps working — a client that
|
|
1405
|
+
* finds it missing falls back to {@link resync}. Where it exists it replaces
|
|
1406
|
+
* that HTTP round trip entirely, because the frame that triggered the resync
|
|
1407
|
+
* already carried the whole authoritative state. On a 52k venue that is the
|
|
1408
|
+
* difference between a ~960 KiB verbose fetch and painting what already
|
|
1409
|
+
* arrived in a ~200 KiB socket frame.
|
|
1410
|
+
*/
|
|
1411
|
+
applyProjection?(projection: {
|
|
1412
|
+
default: string;
|
|
1413
|
+
exceptions: Record<string, string>;
|
|
1414
|
+
}): void;
|
|
1395
1415
|
/** Re-pull authoritative state over HTTP (a frame that cannot be diffed). */
|
|
1396
1416
|
resync(): void | Promise<void>;
|
|
1397
1417
|
/** Section availability changed (hidden = stripped, closed = greyed). */
|
|
@@ -1417,13 +1437,17 @@ interface PickerTransport {
|
|
|
1417
1437
|
salesClosed?: boolean;
|
|
1418
1438
|
venue?: string | null;
|
|
1419
1439
|
startsAt?: number | null;
|
|
1440
|
+
timezone?: string | null;
|
|
1420
1441
|
currency?: string;
|
|
1421
1442
|
mode?: string;
|
|
1422
1443
|
inventoryModelVersion?: 1 | 2;
|
|
1423
1444
|
};
|
|
1424
1445
|
}>;
|
|
1446
|
+
/** `default` is the status of every seat NOT in `seats`; absent means `free`
|
|
1447
|
+
* (an older server names every seat). Never assume it. */
|
|
1425
1448
|
objects(key: string): Promise<{
|
|
1426
1449
|
seats: Record<string, string>;
|
|
1450
|
+
default?: string;
|
|
1427
1451
|
hidden?: string[];
|
|
1428
1452
|
closed?: string[];
|
|
1429
1453
|
}>;
|
|
@@ -1520,6 +1544,36 @@ interface PickerOptions extends PickerCallbacks {
|
|
|
1520
1544
|
* and the WS protocol are identical either way.
|
|
1521
1545
|
*/
|
|
1522
1546
|
keepLiveWhileHidden?: boolean;
|
|
1547
|
+
/**
|
|
1548
|
+
* Host overrides for the DRAWN map — see {@link PickerMapTheme}. Absent (the
|
|
1549
|
+
* default, and every embed) leaves the chart document's own theme untouched.
|
|
1550
|
+
*/
|
|
1551
|
+
mapTheme?: PickerMapTheme | null;
|
|
1552
|
+
}
|
|
1553
|
+
/**
|
|
1554
|
+
* The subset of `ChartTheme` a HOST may override on the drawn canvas.
|
|
1555
|
+
*
|
|
1556
|
+
* WHY A SUBSET, AND WHY THESE FOUR. Everything here paints directly ON the
|
|
1557
|
+
* ground this same object sets, so a caller supplying it can be held to a
|
|
1558
|
+
* contrast contract over its own values (the event-page palettes are). The
|
|
1559
|
+
* fields deliberately left out — `seatLabelColor`, `decorFill` — paint on top
|
|
1560
|
+
* of CHART-authored colours instead: a category's fill, an authored décor fill.
|
|
1561
|
+
* A page palette knows nothing about those, so an override there would be an
|
|
1562
|
+
* unverifiable guess about legibility, and the chart keeps them.
|
|
1563
|
+
*
|
|
1564
|
+
* `seatScale`, `fontFamily` and the white-label branding fields are not here
|
|
1565
|
+
* either: they are the ORGANIZER's, authored once with the chart, and a page
|
|
1566
|
+
* theme is not the place to resize a venue.
|
|
1567
|
+
*/
|
|
1568
|
+
interface PickerMapTheme {
|
|
1569
|
+
/** The canvas ground behind the seats. */
|
|
1570
|
+
background?: string;
|
|
1571
|
+
/** Row identifiers (A, B, C) drawn beside the rows. */
|
|
1572
|
+
rowLabelColor?: string;
|
|
1573
|
+
/** Default ink for free text drawn on the canvas. */
|
|
1574
|
+
textColor?: string;
|
|
1575
|
+
/** Selection / hover ring. */
|
|
1576
|
+
selectionColor?: string;
|
|
1523
1577
|
}
|
|
1524
1578
|
declare class PickerController {
|
|
1525
1579
|
private readonly opts;
|
|
@@ -1530,6 +1584,8 @@ declare class PickerController {
|
|
|
1530
1584
|
private _doc;
|
|
1531
1585
|
/** Section/zone ids hidden from buyers this event (3.3) — seats vanish, not grey. */
|
|
1532
1586
|
private hidden;
|
|
1587
|
+
/** Host overrides folded over the chart's own theme in `visibleDoc()`. */
|
|
1588
|
+
private mapTheme;
|
|
1533
1589
|
/** Section/zone ids in the `closed` event-state (Phase 2) — seats stay, greyed
|
|
1534
1590
|
* + not pickable. Kept separate from `hidden` (which strips them). */
|
|
1535
1591
|
private closedSections;
|
|
@@ -1563,12 +1619,53 @@ declare class PickerController {
|
|
|
1563
1619
|
private onVisibilityChange;
|
|
1564
1620
|
private hold_;
|
|
1565
1621
|
private liveStatuses;
|
|
1622
|
+
/**
|
|
1623
|
+
* What a label absent from `liveStatuses` is.
|
|
1624
|
+
*
|
|
1625
|
+
* `free` while the verbose HTTP map is the source (it names every unit), but a
|
|
1626
|
+
* compact realtime frame names only its exceptions — so on a mostly-sold event
|
|
1627
|
+
* the seats NOT listed are the booked ones. Read through {@link statusOf};
|
|
1628
|
+
* a bare `liveStatuses.get()` silently answers `undefined` for the majority of
|
|
1629
|
+
* a sold-out venue.
|
|
1630
|
+
*/
|
|
1631
|
+
private liveDefault;
|
|
1566
1632
|
private currency;
|
|
1567
1633
|
private expiryTimer;
|
|
1568
1634
|
constructor(options: PickerOptions);
|
|
1569
1635
|
get doc(): ChartDoc | null;
|
|
1570
|
-
/**
|
|
1636
|
+
/**
|
|
1637
|
+
* The chart with hidden sections' seats removed, and the host's map theme
|
|
1638
|
+
* folded over the chart's own — what buyers actually see.
|
|
1639
|
+
*
|
|
1640
|
+
* THE THEME IS MERGED HERE rather than pushed at the renderer separately
|
|
1641
|
+
* because the renderer reads its theme out of the document it is given. One
|
|
1642
|
+
* merge point means every rebuild — a hidden section arriving mid-sale, a
|
|
1643
|
+
* floor switch, a theme change — repaints from the same resolved theme
|
|
1644
|
+
* instead of from whichever of two sources ran last.
|
|
1645
|
+
*
|
|
1646
|
+
* The chart's theme is the BASE and only named keys are overwritten, so a
|
|
1647
|
+
* host that overrides the ground does not thereby erase the organizer's
|
|
1648
|
+
* `seatScale`, `fontFamily`, logo or badge entitlement.
|
|
1649
|
+
*/
|
|
1571
1650
|
private visibleDoc;
|
|
1651
|
+
/**
|
|
1652
|
+
* Re-ink the drawn map, in place, without losing the buyer's place in it.
|
|
1653
|
+
*
|
|
1654
|
+
* WHY THIS IS A SETTER AND NOT A MOUNT OPTION. On a templated event page the
|
|
1655
|
+
* palette is not known when the map mounts: the page config is a separate
|
|
1656
|
+
* cached read and the map is explicitly not allowed to wait for it. The
|
|
1657
|
+
* alternative — remounting the widget once the palette lands — would destroy
|
|
1658
|
+
* a hold the buyer may already be holding.
|
|
1659
|
+
*
|
|
1660
|
+
* The rebuild is the SAME recipe `render()` uses (setChart → colorblind →
|
|
1661
|
+
* closed sections → statuses), because setChart resets all four; the one
|
|
1662
|
+
* addition is restoring the selection, which `render()` has no need to do.
|
|
1663
|
+
* Statuses are repainted from the map already in memory rather than re-read,
|
|
1664
|
+
* so this costs no round trip and cannot flash a stale seat.
|
|
1665
|
+
*
|
|
1666
|
+
* Returns whether anything actually changed, so a caller may call it freely.
|
|
1667
|
+
*/
|
|
1668
|
+
setMapTheme(theme: PickerMapTheme | null): boolean;
|
|
1572
1669
|
/** Adopt a new hidden set; rebuild the visible chart only if it differs. */
|
|
1573
1670
|
private syncHidden;
|
|
1574
1671
|
/** Adopt a new closed-section set; restyle (grey + non-pickable) if it differs.
|
|
@@ -1606,6 +1703,9 @@ declare class PickerController {
|
|
|
1606
1703
|
eventName: string;
|
|
1607
1704
|
venue?: string | null;
|
|
1608
1705
|
startsAt?: number | null;
|
|
1706
|
+
/** The EVENT's IANA zone. Every surface that prints `startsAt` must format
|
|
1707
|
+
* in it — see the note in pub.ts's chart route. */
|
|
1708
|
+
timezone?: string | null;
|
|
1609
1709
|
currency?: string;
|
|
1610
1710
|
/** 'test' ⇒ sandbox event (hosts show a TEST MODE ribbon). */
|
|
1611
1711
|
mode?: string;
|
|
@@ -1835,7 +1935,19 @@ declare class PickerController {
|
|
|
1835
1935
|
private setHold;
|
|
1836
1936
|
private clearHold;
|
|
1837
1937
|
private expireActiveHold;
|
|
1938
|
+
/**
|
|
1939
|
+
* Repaint from an authoritative map of unit statuses.
|
|
1940
|
+
*
|
|
1941
|
+
* `defaultStatus` is what every unit NOT named in `seats` is. The verbose HTTP
|
|
1942
|
+
* route names every unit and leaves it at `free`; the compact realtime frame
|
|
1943
|
+
* names only the exceptions and states its own default, which on a mostly-sold
|
|
1944
|
+
* event is `booked` rather than `free`. Applying a compact map while assuming
|
|
1945
|
+
* `free` would paint a sold-out stadium as fully available, so the default is
|
|
1946
|
+
* a parameter rather than a constant.
|
|
1947
|
+
*/
|
|
1838
1948
|
private applySeatsMap;
|
|
1949
|
+
/** The live status of one unit, honouring the projection's default. */
|
|
1950
|
+
private statusOf;
|
|
1839
1951
|
private clearBookedHoldIfSettled;
|
|
1840
1952
|
private resnapshot;
|
|
1841
1953
|
/**
|
|
@@ -2000,6 +2112,9 @@ declare function loadLocale(code?: string | null): Promise<Locale>;
|
|
|
2000
2112
|
* convert at the API boundary, not here.
|
|
2001
2113
|
*/
|
|
2002
2114
|
declare const DEFAULT_CURRENCY = "USD";
|
|
2115
|
+
/** Currencies offered in event create/edit selects — shared by the plain and
|
|
2116
|
+
* express create forms so the two can never offer different lists. */
|
|
2117
|
+
declare const CURRENCY_CHOICES: string[];
|
|
2003
2118
|
declare function setMoneyLocale(locale: string | undefined): void;
|
|
2004
2119
|
/**
|
|
2005
2120
|
* "€45" / "$1,500" / "45 €" (locale-dependent placement).
|
|
@@ -2034,4 +2149,4 @@ declare function formatMinor(minor: number, currency?: string): string;
|
|
|
2034
2149
|
/** Bare symbol for input adornments ("€", "$", "₹"). */
|
|
2035
2150
|
declare function currencySymbol(currency?: string): string;
|
|
2036
2151
|
|
|
2037
|
-
export { AccessibilityType, type AvailabilityRule, BoothObject, CategoryTier, ChartDoc, ChartObject, DEFAULT_CURRENCY, type Dict, type ExpandChartOptions, ExpandedSeat, Floor, GAAreaObject, GAInventorySegment, type HoldConflict, type HoldInfo, type HoldSelectionRequest, type HoldServerItem, ISeatmapRenderer, LabelStyle, type Locale, LodRung, MAX_EVENT_INVENTORY, MAX_GA_CAPACITY, type PanoramaResult, type PickerCallbacks, PickerController, type PickerGAArea, type PickerOptions, type PickerRealtimeConnection, type PickerRealtimeSink, type PickerSeat, type PickerStatusChange, type PickerTransport, Point, RENDERED_QUALITY_REPORT_VERSION, RectTableSeatCounts, RectTableSide, type RenderedEvidenceState, RenderedFreeTextEvidence, type RenderedQualityFinding, type RenderedQualityFindingCode, type RenderedQualityReport, type RenderedQualitySample, RendererCallbacks, RendererOptions, RendererQualityEvidence, RendererViewMode, RowObject, type RowSeatSlot, SUPPORTED_LOCALES, SeatCommercialAttributes, type SeatHoverDetails, SeatOverride, SeatStatus, SeatmapRenderer, type SectionCategory, type SectionNode, SectionObject, type SectionSummary, TIER_HEIGHT_M, TableObject, type TableSeatSlot, type TableSelectionDetails, UNGROUPED_ID, allObjects, applyHidden, chartBounds, computeSections, createRenderer, currencyExponent, currencySymbol, expandBooth, expandChart, expandRow, expandRowSlots, expandTable, expandTableSlots, floorObjects, floorsOf, formatDate, formatMinor, formatMoney, fromMinorUnits, gaAreasOf, gaInventorySegments, gaUnitLabel, gaUnitLabels, generateSeatPanorama, generateSeatThumb, getLocale, growJoinedGAInventory, hiddenObjectIds, inspectRenderedQualityEvidence, isGaUnitLabel, isSectionHidden, loadLocale, objectCenter, owningSectionForObject, pointInPolygon, pointInPolygonWithHoles, polygonLabelPoint, resolveLocale, rowInventoryCount, rowSeatPositions, sectionGeometry, setLocale, setMoneyLocale, setStringOverrides, stackFloors, t, tCount, tableInventoryCount, tableSeatCountsBySide, validGAInventorySegments };
|
|
2152
|
+
export { AccessibilityType, type AvailabilityRule, BoothObject, CURRENCY_CHOICES, CategoryTier, ChartDoc, ChartObject, DEFAULT_CURRENCY, type Dict, type ExpandChartOptions, ExpandedSeat, Floor, GAAreaObject, GAInventorySegment, type HoldConflict, type HoldInfo, type HoldSelectionRequest, type HoldServerItem, ISeatmapRenderer, LabelStyle, type Locale, LodRung, MAX_EVENT_INVENTORY, MAX_GA_CAPACITY, type PanoramaResult, type PickerCallbacks, PickerController, type PickerGAArea, type PickerMapTheme, type PickerOptions, type PickerRealtimeConnection, type PickerRealtimeSink, type PickerSeat, type PickerStatusChange, type PickerTransport, Point, RENDERED_QUALITY_REPORT_VERSION, RectTableSeatCounts, RectTableSide, type RenderedEvidenceState, RenderedFreeTextEvidence, type RenderedQualityFinding, type RenderedQualityFindingCode, type RenderedQualityReport, type RenderedQualitySample, RendererCallbacks, RendererOptions, RendererQualityEvidence, RendererViewMode, RowObject, type RowSeatSlot, SUPPORTED_LOCALES, SeatCommercialAttributes, type SeatHoverDetails, SeatOverride, SeatStatus, SeatViewMetadata, SeatmapRenderer, type SectionCategory, type SectionNode, SectionObject, type SectionSummary, TIER_HEIGHT_M, TableObject, type TableSeatSlot, type TableSelectionDetails, UNGROUPED_ID, allObjects, applyHidden, chartBounds, computeSections, createRenderer, currencyExponent, currencySymbol, expandBooth, expandChart, expandRow, expandRowSlots, expandTable, expandTableSlots, floorObjects, floorsOf, formatDate, formatMinor, formatMoney, fromMinorUnits, gaAreasOf, gaInventorySegments, gaUnitLabel, gaUnitLabels, generateSeatPanorama, generateSeatThumb, getLocale, growJoinedGAInventory, hiddenObjectIds, inspectRenderedQualityEvidence, isGaUnitLabel, isSectionHidden, loadLocale, objectCenter, owningSectionForObject, pointInPolygon, pointInPolygonWithHoles, polygonLabelPoint, resolveLocale, rowInventoryCount, rowSeatPositions, sectionGeometry, setLocale, setMoneyLocale, setStringOverrides, stackFloors, t, tCount, tableInventoryCount, tableSeatCountsBySide, validGAInventorySegments };
|