@seatlayer/js 0.16.0 → 0.17.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/index.cjs +450 -68
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +42 -1
- package/dist/index.d.ts +42 -1
- package/dist/index.js +450 -68
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.cts
CHANGED
|
@@ -425,6 +425,7 @@ declare class SeatPicker {
|
|
|
425
425
|
private readonly api;
|
|
426
426
|
private readonly apiBase;
|
|
427
427
|
private readonly controller;
|
|
428
|
+
private readonly maxTickets;
|
|
428
429
|
private root;
|
|
429
430
|
private mapHost;
|
|
430
431
|
private rendered;
|
|
@@ -456,6 +457,8 @@ declare class SeatPicker {
|
|
|
456
457
|
private a11yFilter;
|
|
457
458
|
private baQty;
|
|
458
459
|
private baCat;
|
|
460
|
+
private bestAvailableConfirm;
|
|
461
|
+
private releasingHold;
|
|
459
462
|
private rungsEl;
|
|
460
463
|
private floorsEl;
|
|
461
464
|
private secCardEl;
|
|
@@ -535,6 +538,14 @@ declare class SeatPicker {
|
|
|
535
538
|
/** Update only the action affordance; selection callbacks must not refire. */
|
|
536
539
|
private committedSelection;
|
|
537
540
|
private pendingSelectionCount;
|
|
541
|
+
private heldGACounts;
|
|
542
|
+
private pendingGACount;
|
|
543
|
+
private heldTicketCount;
|
|
544
|
+
private totalTicketCount;
|
|
545
|
+
/** Held tickets and standing quantities consume the same order-wide cap. */
|
|
546
|
+
private updateSelectionCapacity;
|
|
547
|
+
private canAddTicket;
|
|
548
|
+
private pendingGATotal;
|
|
538
549
|
private syncCta;
|
|
539
550
|
private setCtaPhase;
|
|
540
551
|
/** Session-scoped capability key: isolated by API origin and event. */
|
|
@@ -616,6 +627,7 @@ declare class SeatPicker {
|
|
|
616
627
|
private evictTakenSelections;
|
|
617
628
|
private syncTray;
|
|
618
629
|
private removeHeldLabel;
|
|
630
|
+
private handleChangeSeats;
|
|
619
631
|
private handleCta;
|
|
620
632
|
private startHoldTimer;
|
|
621
633
|
private stopHoldTimer;
|
|
@@ -917,6 +929,9 @@ interface SeatManagerActivity {
|
|
|
917
929
|
/** Human verb: held / booked / released / blocked / unblocked. */
|
|
918
930
|
verb: string;
|
|
919
931
|
status: DoStatus;
|
|
932
|
+
/** Spatial context for grouped activity when the chart defines sections. */
|
|
933
|
+
sectionIds?: string[];
|
|
934
|
+
sectionLabels?: string[];
|
|
920
935
|
}
|
|
921
936
|
/** Fired after a successful organizer action, for host toasts/telemetry. */
|
|
922
937
|
interface SeatManagerActionResult {
|
|
@@ -947,6 +962,11 @@ interface SeatManagerOptions {
|
|
|
947
962
|
* rAF throttling on occluded tabs never leaves the board stale. Default true.
|
|
948
963
|
*/
|
|
949
964
|
keepLiveWhileHidden?: boolean;
|
|
965
|
+
/**
|
|
966
|
+
* Opt in to camera-following for new buyer holds/bookings. Off by default so
|
|
967
|
+
* a live event never steals an operator's current map context.
|
|
968
|
+
*/
|
|
969
|
+
followLive?: boolean;
|
|
950
970
|
/** Chart + first snapshot are loaded and the board is live. */
|
|
951
971
|
onReady?: () => void;
|
|
952
972
|
/** Live KPI tallies changed. */
|
|
@@ -962,6 +982,8 @@ interface SeatManagerOptions {
|
|
|
962
982
|
}>;
|
|
963
983
|
/** Tool/mode changed from inside the shared cockpit. */
|
|
964
984
|
onModeChange?: (mode: SeatManagerMode) => void;
|
|
985
|
+
/** Follow-live preference changed from inside the cockpit. */
|
|
986
|
+
onFollowLiveChange?: (enabled: boolean) => void;
|
|
965
987
|
/** Block-mode selection changed (marquee / ⌘A / category / section / tap). */
|
|
966
988
|
onSelectionChange?: (seats: ExpandedSeat[]) => void;
|
|
967
989
|
/** A block/unblock/cancel action completed successfully. */
|
|
@@ -992,6 +1014,9 @@ declare class SeatManager {
|
|
|
992
1014
|
private controlRoomSnapshot;
|
|
993
1015
|
private trendWindowMinutes;
|
|
994
1016
|
private heatEnabled;
|
|
1017
|
+
private followLive;
|
|
1018
|
+
private lastKpiValues;
|
|
1019
|
+
private activeKpiDeltas;
|
|
995
1020
|
private ws;
|
|
996
1021
|
private reconnectTimer;
|
|
997
1022
|
private attempt;
|
|
@@ -1000,6 +1025,10 @@ declare class SeatManager {
|
|
|
1000
1025
|
private feed;
|
|
1001
1026
|
private feedTimer;
|
|
1002
1027
|
private toastTimer;
|
|
1028
|
+
private liveEventTimer;
|
|
1029
|
+
private kpiCleanupTimer;
|
|
1030
|
+
private followLiveTimer;
|
|
1031
|
+
private followSeatTimer;
|
|
1003
1032
|
private releaseAt;
|
|
1004
1033
|
private layoutObserver;
|
|
1005
1034
|
private tokenExpiresAt;
|
|
@@ -1014,12 +1043,15 @@ declare class SeatManager {
|
|
|
1014
1043
|
private unblockAllConfirmTimer;
|
|
1015
1044
|
private readonly onFullscreenChange;
|
|
1016
1045
|
private readonly onKeyDown;
|
|
1046
|
+
private readonly onRailClick;
|
|
1017
1047
|
constructor(options: SeatManagerOptions);
|
|
1018
1048
|
/** Build the DOM, load the chart, subscribe to realtime, mount the board. */
|
|
1019
1049
|
render(): Promise<this>;
|
|
1020
1050
|
setMode(mode: SeatManagerMode): void;
|
|
1021
1051
|
/** Toggle the normalized sales-velocity outline overlay without changing seat colors. */
|
|
1022
1052
|
setHeatOverlay(enabled: boolean): void;
|
|
1053
|
+
/** Toggle opt-in camera following for new buyer hold/book events. */
|
|
1054
|
+
setFollowLive(enabled: boolean): void;
|
|
1023
1055
|
/** Change the current-vs-previous sales window and refresh the private projection. */
|
|
1024
1056
|
setTrendWindow(windowMinutes: number): Promise<ControlRoomSnapshot>;
|
|
1025
1057
|
enterFullscreen(): Promise<void>;
|
|
@@ -1072,7 +1104,14 @@ declare class SeatManager {
|
|
|
1072
1104
|
private setSeatsLocal;
|
|
1073
1105
|
/** Keep the canvas painting on hidden/occluded tabs (war-room second monitor). */
|
|
1074
1106
|
private afterPaint;
|
|
1075
|
-
private
|
|
1107
|
+
private activityColor;
|
|
1108
|
+
private sectionsForLabels;
|
|
1109
|
+
private pulseSeatLabels;
|
|
1110
|
+
/** Render one grouped realtime operation at the right semantic zoom level. */
|
|
1111
|
+
private paintSpatialActivity;
|
|
1112
|
+
private locateSection;
|
|
1113
|
+
private locateActivity;
|
|
1114
|
+
private showLiveEvent;
|
|
1076
1115
|
private applyReportRevenue;
|
|
1077
1116
|
private refreshControlRoom;
|
|
1078
1117
|
private scheduleRevenueRefresh;
|
|
@@ -1088,12 +1127,14 @@ declare class SeatManager {
|
|
|
1088
1127
|
private sectionOptions;
|
|
1089
1128
|
private buildSectionOptions;
|
|
1090
1129
|
private paintModeTabs;
|
|
1130
|
+
private paintFollowLiveButton;
|
|
1091
1131
|
private paintHeatButton;
|
|
1092
1132
|
private paintMomentumHelp;
|
|
1093
1133
|
private paintFullscreenButton;
|
|
1094
1134
|
private paintTrendWindow;
|
|
1095
1135
|
private setLive;
|
|
1096
1136
|
private updateZoomHint;
|
|
1137
|
+
private formatKpiDelta;
|
|
1097
1138
|
private paintKpis;
|
|
1098
1139
|
private paintRail;
|
|
1099
1140
|
private renderViewRail;
|
package/dist/index.d.ts
CHANGED
|
@@ -425,6 +425,7 @@ declare class SeatPicker {
|
|
|
425
425
|
private readonly api;
|
|
426
426
|
private readonly apiBase;
|
|
427
427
|
private readonly controller;
|
|
428
|
+
private readonly maxTickets;
|
|
428
429
|
private root;
|
|
429
430
|
private mapHost;
|
|
430
431
|
private rendered;
|
|
@@ -456,6 +457,8 @@ declare class SeatPicker {
|
|
|
456
457
|
private a11yFilter;
|
|
457
458
|
private baQty;
|
|
458
459
|
private baCat;
|
|
460
|
+
private bestAvailableConfirm;
|
|
461
|
+
private releasingHold;
|
|
459
462
|
private rungsEl;
|
|
460
463
|
private floorsEl;
|
|
461
464
|
private secCardEl;
|
|
@@ -535,6 +538,14 @@ declare class SeatPicker {
|
|
|
535
538
|
/** Update only the action affordance; selection callbacks must not refire. */
|
|
536
539
|
private committedSelection;
|
|
537
540
|
private pendingSelectionCount;
|
|
541
|
+
private heldGACounts;
|
|
542
|
+
private pendingGACount;
|
|
543
|
+
private heldTicketCount;
|
|
544
|
+
private totalTicketCount;
|
|
545
|
+
/** Held tickets and standing quantities consume the same order-wide cap. */
|
|
546
|
+
private updateSelectionCapacity;
|
|
547
|
+
private canAddTicket;
|
|
548
|
+
private pendingGATotal;
|
|
538
549
|
private syncCta;
|
|
539
550
|
private setCtaPhase;
|
|
540
551
|
/** Session-scoped capability key: isolated by API origin and event. */
|
|
@@ -616,6 +627,7 @@ declare class SeatPicker {
|
|
|
616
627
|
private evictTakenSelections;
|
|
617
628
|
private syncTray;
|
|
618
629
|
private removeHeldLabel;
|
|
630
|
+
private handleChangeSeats;
|
|
619
631
|
private handleCta;
|
|
620
632
|
private startHoldTimer;
|
|
621
633
|
private stopHoldTimer;
|
|
@@ -917,6 +929,9 @@ interface SeatManagerActivity {
|
|
|
917
929
|
/** Human verb: held / booked / released / blocked / unblocked. */
|
|
918
930
|
verb: string;
|
|
919
931
|
status: DoStatus;
|
|
932
|
+
/** Spatial context for grouped activity when the chart defines sections. */
|
|
933
|
+
sectionIds?: string[];
|
|
934
|
+
sectionLabels?: string[];
|
|
920
935
|
}
|
|
921
936
|
/** Fired after a successful organizer action, for host toasts/telemetry. */
|
|
922
937
|
interface SeatManagerActionResult {
|
|
@@ -947,6 +962,11 @@ interface SeatManagerOptions {
|
|
|
947
962
|
* rAF throttling on occluded tabs never leaves the board stale. Default true.
|
|
948
963
|
*/
|
|
949
964
|
keepLiveWhileHidden?: boolean;
|
|
965
|
+
/**
|
|
966
|
+
* Opt in to camera-following for new buyer holds/bookings. Off by default so
|
|
967
|
+
* a live event never steals an operator's current map context.
|
|
968
|
+
*/
|
|
969
|
+
followLive?: boolean;
|
|
950
970
|
/** Chart + first snapshot are loaded and the board is live. */
|
|
951
971
|
onReady?: () => void;
|
|
952
972
|
/** Live KPI tallies changed. */
|
|
@@ -962,6 +982,8 @@ interface SeatManagerOptions {
|
|
|
962
982
|
}>;
|
|
963
983
|
/** Tool/mode changed from inside the shared cockpit. */
|
|
964
984
|
onModeChange?: (mode: SeatManagerMode) => void;
|
|
985
|
+
/** Follow-live preference changed from inside the cockpit. */
|
|
986
|
+
onFollowLiveChange?: (enabled: boolean) => void;
|
|
965
987
|
/** Block-mode selection changed (marquee / ⌘A / category / section / tap). */
|
|
966
988
|
onSelectionChange?: (seats: ExpandedSeat[]) => void;
|
|
967
989
|
/** A block/unblock/cancel action completed successfully. */
|
|
@@ -992,6 +1014,9 @@ declare class SeatManager {
|
|
|
992
1014
|
private controlRoomSnapshot;
|
|
993
1015
|
private trendWindowMinutes;
|
|
994
1016
|
private heatEnabled;
|
|
1017
|
+
private followLive;
|
|
1018
|
+
private lastKpiValues;
|
|
1019
|
+
private activeKpiDeltas;
|
|
995
1020
|
private ws;
|
|
996
1021
|
private reconnectTimer;
|
|
997
1022
|
private attempt;
|
|
@@ -1000,6 +1025,10 @@ declare class SeatManager {
|
|
|
1000
1025
|
private feed;
|
|
1001
1026
|
private feedTimer;
|
|
1002
1027
|
private toastTimer;
|
|
1028
|
+
private liveEventTimer;
|
|
1029
|
+
private kpiCleanupTimer;
|
|
1030
|
+
private followLiveTimer;
|
|
1031
|
+
private followSeatTimer;
|
|
1003
1032
|
private releaseAt;
|
|
1004
1033
|
private layoutObserver;
|
|
1005
1034
|
private tokenExpiresAt;
|
|
@@ -1014,12 +1043,15 @@ declare class SeatManager {
|
|
|
1014
1043
|
private unblockAllConfirmTimer;
|
|
1015
1044
|
private readonly onFullscreenChange;
|
|
1016
1045
|
private readonly onKeyDown;
|
|
1046
|
+
private readonly onRailClick;
|
|
1017
1047
|
constructor(options: SeatManagerOptions);
|
|
1018
1048
|
/** Build the DOM, load the chart, subscribe to realtime, mount the board. */
|
|
1019
1049
|
render(): Promise<this>;
|
|
1020
1050
|
setMode(mode: SeatManagerMode): void;
|
|
1021
1051
|
/** Toggle the normalized sales-velocity outline overlay without changing seat colors. */
|
|
1022
1052
|
setHeatOverlay(enabled: boolean): void;
|
|
1053
|
+
/** Toggle opt-in camera following for new buyer hold/book events. */
|
|
1054
|
+
setFollowLive(enabled: boolean): void;
|
|
1023
1055
|
/** Change the current-vs-previous sales window and refresh the private projection. */
|
|
1024
1056
|
setTrendWindow(windowMinutes: number): Promise<ControlRoomSnapshot>;
|
|
1025
1057
|
enterFullscreen(): Promise<void>;
|
|
@@ -1072,7 +1104,14 @@ declare class SeatManager {
|
|
|
1072
1104
|
private setSeatsLocal;
|
|
1073
1105
|
/** Keep the canvas painting on hidden/occluded tabs (war-room second monitor). */
|
|
1074
1106
|
private afterPaint;
|
|
1075
|
-
private
|
|
1107
|
+
private activityColor;
|
|
1108
|
+
private sectionsForLabels;
|
|
1109
|
+
private pulseSeatLabels;
|
|
1110
|
+
/** Render one grouped realtime operation at the right semantic zoom level. */
|
|
1111
|
+
private paintSpatialActivity;
|
|
1112
|
+
private locateSection;
|
|
1113
|
+
private locateActivity;
|
|
1114
|
+
private showLiveEvent;
|
|
1076
1115
|
private applyReportRevenue;
|
|
1077
1116
|
private refreshControlRoom;
|
|
1078
1117
|
private scheduleRevenueRefresh;
|
|
@@ -1088,12 +1127,14 @@ declare class SeatManager {
|
|
|
1088
1127
|
private sectionOptions;
|
|
1089
1128
|
private buildSectionOptions;
|
|
1090
1129
|
private paintModeTabs;
|
|
1130
|
+
private paintFollowLiveButton;
|
|
1091
1131
|
private paintHeatButton;
|
|
1092
1132
|
private paintMomentumHelp;
|
|
1093
1133
|
private paintFullscreenButton;
|
|
1094
1134
|
private paintTrendWindow;
|
|
1095
1135
|
private setLive;
|
|
1096
1136
|
private updateZoomHint;
|
|
1137
|
+
private formatKpiDelta;
|
|
1097
1138
|
private paintKpis;
|
|
1098
1139
|
private paintRail;
|
|
1099
1140
|
private renderViewRail;
|