@seatlayer/js 0.77.0 → 0.77.1

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.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { PickerSeat, PickerGAArea, PickerMapTheme, PickerTransport, PickerSelectionValidator, RendererViewMode, PickerSelectionValidity, ChartTheme, FloorLabelStyle, LodRung, SectionSummary, PickerAccessNeed, SeatHoverDetails, AvailabilityRefreshOutcome, PickerController, AccessibilityType, ExpandedSeat } from '@seatlayer/core';
1
+ import { PickerSeat, PickerGAArea, PickerMapTheme, PickerTransport, PickerSelectionValidator, RendererViewMode, PickerSelectionValidity, ChartTheme, AccessibilityType, FloorLabelStyle, LodRung, SectionSummary, PickerAccessNeed, SeatHoverDetails, AccessibleSectionStep, AvailabilityRefreshOutcome, PickerController, ExpandedSeat } from '@seatlayer/core';
2
2
  export { ExpandedSeat, PickerMapTheme, PickerSelectionValidator, PickerSelectionValidity, PickerSelectionViolation, RendererViewMode, SeatHoverDetails } from '@seatlayer/core';
3
3
  import { T as ThemeMode } from './channelsMode-goczEzyt.cjs';
4
4
  export { A as AccessIntentForbidsDetails, a as AccessLinkRecord, b as AccessLinkReveal, c as AccessLinkState, d as AccessLinkStatus, e as AccessLinkStatusRecord, f as ArchiveBlockedDetails, g as AssignmentBuckets, h as AssignmentDropDetails, i as AssignmentResult, B as BucketRow, C as ChannelAccessIntent, j as ChannelAccessSummary, k as ChannelAllocationPage, l as ChannelAttribution, m as ChannelAuditEntry, n as ChannelAuditPage, o as ChannelCounts, p as ChannelListResult, q as ChannelPreviewProjection, r as ChannelRecord, s as ChannelReport, t as ChannelReportLinkRecord, u as ChannelReportLinkReveal, v as ChannelReportResult, w as ChannelReportRow, x as ChannelSeatStatus, y as ChannelState, z as ChannelsCapabilities, D as ChannelsClient, E as ChannelsMode, F as ChannelsModeHost, G as ChannelsRowView, H as ChannelsSeatView, I as ControlRoomActivityEntry, J as ControlRoomSectionMetric, K as ControlRoomSnapshot, L as EventCategoryAssignmentResult, M as EventScopedManageToken, N as EventTableBookingMode, O as EventTableBookingResult, P as IntentSwitchBlockedDetails, Q as InventoryBooking, R as InventoryBookingActivity, S as InventoryBookingDetail, U as InventoryBookingObject, V as InventoryBookingState, W as InventoryBookingsPage, X as InventoryBookingsQuery, Y as LogEntry, Z as LogPage, _ as ManageApi, $ as ManageApiError, a0 as ReportByStatus, a1 as ReportCategoryMeta, a2 as ReportCategoryRow, a3 as ReportResult, a4 as SeatManager, a5 as SeatManagerActionResult, a6 as SeatManagerActivity, a7 as SeatManagerCapability, a8 as SeatManagerConnection, a9 as SeatManagerFilteredSection, aa as SeatManagerMode, ab as SeatManagerOptions, ac as SeatManagerSelectionValidity, ad as SeatManagerTallies, ae as SelectionSourceRow } from './channelsMode-goczEzyt.cjs';
@@ -1377,6 +1377,23 @@ interface SeatingChartPickerState {
1377
1377
  label: string;
1378
1378
  displayLabel?: string;
1379
1379
  zoneId?: string;
1380
+ /**
1381
+ * Free spaces in THIS section for each provision the event offers —
1382
+ * `{ wheelchair: 2, companion: 2 }`. `capability: section-access-counts-v1`.
1383
+ *
1384
+ * The same numbers the web menu's spread hint is built from, so a native
1385
+ * shell can draw its own "where" instead of only dimming the map. A shell
1386
+ * that filtered to fifteen wheelchair spaces scattered round a bowl had
1387
+ * nothing to point at; these are the sections to point at.
1388
+ *
1389
+ * PRESENT-ONLY, at every level: a type appears only when the engine
1390
+ * counted it and found at least one free, and the whole field is absent
1391
+ * for a section that holds none — and also before a renderer exists,
1392
+ * which is why absent must be read as NOT COUNTED and never as zero. It
1393
+ * describes the floor the map is currently on, like everything else the
1394
+ * renderer answers.
1395
+ */
1396
+ accessibleFree?: Partial<Record<AccessibilityType, number>>;
1380
1397
  }>;
1381
1398
  gaAreas: GAAreaAvailability[];
1382
1399
  bestAvailableZones: Array<{
@@ -1884,6 +1901,11 @@ declare class SeatingChart {
1884
1901
  setRung(rung: LodRung): void;
1885
1902
  setCategoryFilter(categoryKeys: string[] | null, focus?: boolean): void;
1886
1903
  setAccessibilityFilter(types: string[] | null): void;
1904
+ /** Fly to the matches of the filter already on, leaving the filter alone. */
1905
+ focusAccessibilityFilter(): void;
1906
+ /** Step to the next section holding a free matching space, framing the
1907
+ * spaces rather than the stand. Null when nothing matches. */
1908
+ focusNextAccessibleSection(types?: string[] | null): AccessibleSectionStep | null;
1887
1909
  setCommercialLimitedFilter(on: boolean): void;
1888
1910
  /** Current selection with prices resolved from the chart categories. */
1889
1911
  getSelection(): SelectedSeat[];
@@ -3043,9 +3065,31 @@ declare class SeatPicker implements GaPromptPicker {
3043
3065
  * that shape — a tight cluster is dived into and explains itself.
3044
3066
  */
3045
3067
  private explainAccessibilitySpread;
3068
+ /**
3069
+ * Put the filter on the map and on everything that quotes the map.
3070
+ *
3071
+ * EVERY DOOR RUNS THIS ONE BODY — the ♿ menu, host code, and the native
3072
+ * bridge through it — because each surface that was updated on only one of
3073
+ * those paths went on quoting the unfiltered venue:
3074
+ *
3075
+ * • the price chips carry free counts, and a filter changes what "free"
3076
+ * means; left unsynced they offered bands the dimmed map no longer does;
3077
+ * • the minimap outlines what the map is showing, so an unrefreshed one
3078
+ * drew the buyer a venue they were no longer being offered;
3079
+ * • 3D applies the filter as its own dim. The 2D one is Konva opacity,
3080
+ * which the GL view never sees — `seatState3dFor` knows how to dim for
3081
+ * it, but nothing was asking it to, so a buyer who filtered to wheelchair
3082
+ * places and switched to 3D got the whole venue back, undimmed, with the
3083
+ * switch still reading as on.
3084
+ */
3085
+ private applyAccessibilityFilter;
3046
3086
  /** Turn the buyer's accessibility filter on or off from host code. Mirrors
3047
3087
  * the bridge command and the menu, so the three never diverge. */
3048
3088
  setAccessibilityFilter(types: AccessibilityType[] | null): void;
3089
+ /** Fly to what the accessibility filter ALREADY ON matched, without
3090
+ * toggling it — `picker.focusAccessibilityFilter` on the native bridge, for
3091
+ * a shell whose own chips are drawn outside the widget. */
3092
+ focusAccessibilityFilter(): void;
3049
3093
  private dockLayoutChrome;
3050
3094
  /** The "Need more time?" prompt shown in the hold's final EXTEND_PROMPT_MS. */
3051
3095
  private buildExtendPrompt;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { PickerSeat, PickerGAArea, PickerMapTheme, PickerTransport, PickerSelectionValidator, RendererViewMode, PickerSelectionValidity, ChartTheme, FloorLabelStyle, LodRung, SectionSummary, PickerAccessNeed, SeatHoverDetails, AvailabilityRefreshOutcome, PickerController, AccessibilityType, ExpandedSeat } from '@seatlayer/core';
1
+ import { PickerSeat, PickerGAArea, PickerMapTheme, PickerTransport, PickerSelectionValidator, RendererViewMode, PickerSelectionValidity, ChartTheme, AccessibilityType, FloorLabelStyle, LodRung, SectionSummary, PickerAccessNeed, SeatHoverDetails, AccessibleSectionStep, AvailabilityRefreshOutcome, PickerController, ExpandedSeat } from '@seatlayer/core';
2
2
  export { ExpandedSeat, PickerMapTheme, PickerSelectionValidator, PickerSelectionValidity, PickerSelectionViolation, RendererViewMode, SeatHoverDetails } from '@seatlayer/core';
3
3
  import { T as ThemeMode } from './channelsMode-goczEzyt.js';
4
4
  export { A as AccessIntentForbidsDetails, a as AccessLinkRecord, b as AccessLinkReveal, c as AccessLinkState, d as AccessLinkStatus, e as AccessLinkStatusRecord, f as ArchiveBlockedDetails, g as AssignmentBuckets, h as AssignmentDropDetails, i as AssignmentResult, B as BucketRow, C as ChannelAccessIntent, j as ChannelAccessSummary, k as ChannelAllocationPage, l as ChannelAttribution, m as ChannelAuditEntry, n as ChannelAuditPage, o as ChannelCounts, p as ChannelListResult, q as ChannelPreviewProjection, r as ChannelRecord, s as ChannelReport, t as ChannelReportLinkRecord, u as ChannelReportLinkReveal, v as ChannelReportResult, w as ChannelReportRow, x as ChannelSeatStatus, y as ChannelState, z as ChannelsCapabilities, D as ChannelsClient, E as ChannelsMode, F as ChannelsModeHost, G as ChannelsRowView, H as ChannelsSeatView, I as ControlRoomActivityEntry, J as ControlRoomSectionMetric, K as ControlRoomSnapshot, L as EventCategoryAssignmentResult, M as EventScopedManageToken, N as EventTableBookingMode, O as EventTableBookingResult, P as IntentSwitchBlockedDetails, Q as InventoryBooking, R as InventoryBookingActivity, S as InventoryBookingDetail, U as InventoryBookingObject, V as InventoryBookingState, W as InventoryBookingsPage, X as InventoryBookingsQuery, Y as LogEntry, Z as LogPage, _ as ManageApi, $ as ManageApiError, a0 as ReportByStatus, a1 as ReportCategoryMeta, a2 as ReportCategoryRow, a3 as ReportResult, a4 as SeatManager, a5 as SeatManagerActionResult, a6 as SeatManagerActivity, a7 as SeatManagerCapability, a8 as SeatManagerConnection, a9 as SeatManagerFilteredSection, aa as SeatManagerMode, ab as SeatManagerOptions, ac as SeatManagerSelectionValidity, ad as SeatManagerTallies, ae as SelectionSourceRow } from './channelsMode-goczEzyt.js';
@@ -1377,6 +1377,23 @@ interface SeatingChartPickerState {
1377
1377
  label: string;
1378
1378
  displayLabel?: string;
1379
1379
  zoneId?: string;
1380
+ /**
1381
+ * Free spaces in THIS section for each provision the event offers —
1382
+ * `{ wheelchair: 2, companion: 2 }`. `capability: section-access-counts-v1`.
1383
+ *
1384
+ * The same numbers the web menu's spread hint is built from, so a native
1385
+ * shell can draw its own "where" instead of only dimming the map. A shell
1386
+ * that filtered to fifteen wheelchair spaces scattered round a bowl had
1387
+ * nothing to point at; these are the sections to point at.
1388
+ *
1389
+ * PRESENT-ONLY, at every level: a type appears only when the engine
1390
+ * counted it and found at least one free, and the whole field is absent
1391
+ * for a section that holds none — and also before a renderer exists,
1392
+ * which is why absent must be read as NOT COUNTED and never as zero. It
1393
+ * describes the floor the map is currently on, like everything else the
1394
+ * renderer answers.
1395
+ */
1396
+ accessibleFree?: Partial<Record<AccessibilityType, number>>;
1380
1397
  }>;
1381
1398
  gaAreas: GAAreaAvailability[];
1382
1399
  bestAvailableZones: Array<{
@@ -1884,6 +1901,11 @@ declare class SeatingChart {
1884
1901
  setRung(rung: LodRung): void;
1885
1902
  setCategoryFilter(categoryKeys: string[] | null, focus?: boolean): void;
1886
1903
  setAccessibilityFilter(types: string[] | null): void;
1904
+ /** Fly to the matches of the filter already on, leaving the filter alone. */
1905
+ focusAccessibilityFilter(): void;
1906
+ /** Step to the next section holding a free matching space, framing the
1907
+ * spaces rather than the stand. Null when nothing matches. */
1908
+ focusNextAccessibleSection(types?: string[] | null): AccessibleSectionStep | null;
1887
1909
  setCommercialLimitedFilter(on: boolean): void;
1888
1910
  /** Current selection with prices resolved from the chart categories. */
1889
1911
  getSelection(): SelectedSeat[];
@@ -3043,9 +3065,31 @@ declare class SeatPicker implements GaPromptPicker {
3043
3065
  * that shape — a tight cluster is dived into and explains itself.
3044
3066
  */
3045
3067
  private explainAccessibilitySpread;
3068
+ /**
3069
+ * Put the filter on the map and on everything that quotes the map.
3070
+ *
3071
+ * EVERY DOOR RUNS THIS ONE BODY — the ♿ menu, host code, and the native
3072
+ * bridge through it — because each surface that was updated on only one of
3073
+ * those paths went on quoting the unfiltered venue:
3074
+ *
3075
+ * • the price chips carry free counts, and a filter changes what "free"
3076
+ * means; left unsynced they offered bands the dimmed map no longer does;
3077
+ * • the minimap outlines what the map is showing, so an unrefreshed one
3078
+ * drew the buyer a venue they were no longer being offered;
3079
+ * • 3D applies the filter as its own dim. The 2D one is Konva opacity,
3080
+ * which the GL view never sees — `seatState3dFor` knows how to dim for
3081
+ * it, but nothing was asking it to, so a buyer who filtered to wheelchair
3082
+ * places and switched to 3D got the whole venue back, undimmed, with the
3083
+ * switch still reading as on.
3084
+ */
3085
+ private applyAccessibilityFilter;
3046
3086
  /** Turn the buyer's accessibility filter on or off from host code. Mirrors
3047
3087
  * the bridge command and the menu, so the three never diverge. */
3048
3088
  setAccessibilityFilter(types: AccessibilityType[] | null): void;
3089
+ /** Fly to what the accessibility filter ALREADY ON matched, without
3090
+ * toggling it — `picker.focusAccessibilityFilter` on the native bridge, for
3091
+ * a shell whose own chips are drawn outside the widget. */
3092
+ focusAccessibilityFilter(): void;
3049
3093
  private dockLayoutChrome;
3050
3094
  /** The "Need more time?" prompt shown in the hold's final EXTEND_PROMPT_MS. */
3051
3095
  private buildExtendPrompt;