@seatlayer/core 0.89.2 → 0.90.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.
Files changed (45) hide show
  1. package/dist/{chunk-A4GTB3SG.js → chunk-52CBK5HX.js} +1 -1
  2. package/dist/{chunk-R7TV7RYQ.js → chunk-77QFA3F4.js} +1 -1
  3. package/dist/{chunk-FVTW2IBN.js → chunk-EH47GKSO.js} +1 -1
  4. package/dist/{chunk-PMBS3VZM.js → chunk-FMPQZEXD.js} +1 -1
  5. package/dist/{chunk-66Q5LOBH.js → chunk-GISLORLL.js} +1 -1
  6. package/dist/{chunk-BCMCXHLH.js → chunk-K4TZQOTG.js} +1 -1
  7. package/dist/{chunk-WAGKI44J.js → chunk-OYKT5CCU.js} +1 -1
  8. package/dist/chunk-W4RS6OW7.js +1 -0
  9. package/dist/{chunk-PI3UH2EN.js → chunk-YAWJTFYK.js} +1 -1
  10. package/dist/core/chart-ops/index.cjs +1 -1
  11. package/dist/core/chart-ops/index.js +1 -1
  12. package/dist/core/inventory/index.cjs +1 -1
  13. package/dist/core/inventory/index.d.cts +2 -2
  14. package/dist/core/inventory/index.d.ts +2 -2
  15. package/dist/core/inventory/index.js +1 -1
  16. package/dist/core/layout/index.cjs +1 -1
  17. package/dist/core/layout/index.d.cts +2 -2
  18. package/dist/core/layout/index.d.ts +2 -2
  19. package/dist/core/layout/index.js +1 -1
  20. package/dist/core/quality/index.d.cts +2 -2
  21. package/dist/core/quality/index.d.ts +2 -2
  22. package/dist/core/sections/index.cjs +1 -1
  23. package/dist/core/sections/index.d.cts +1 -1
  24. package/dist/core/sections/index.d.ts +1 -1
  25. package/dist/core/sections/index.js +1 -1
  26. package/dist/index.cjs +1 -1
  27. package/dist/index.d.cts +18 -8
  28. package/dist/index.d.ts +18 -8
  29. package/dist/index.js +1 -1
  30. package/dist/{renderedQuality-CrlBXHzi.d.ts → renderedQuality-CHm4mIjB.d.ts} +1 -1
  31. package/dist/{renderedQuality-CeSE6pEM.d.cts → renderedQuality-x1_lUJYV.d.cts} +1 -1
  32. package/dist/{renderer-B1mEhbA7.d.cts → renderer-DLTYfHV2.d.cts} +6 -2
  33. package/dist/{renderer-BwZhXv8G.d.ts → renderer-DN1yCX7-.d.ts} +6 -2
  34. package/dist/{tableSizing-wnW3HNga.d.cts → tableSizing-f-hh6kCg.d.cts} +2 -2
  35. package/dist/{tableSizing-DyS3UAha.d.ts → tableSizing-oDI0D8c2.d.ts} +2 -2
  36. package/dist/{ticketRestrictions-DuYWl2uy.d.ts → ticketRestrictions-BXtFOUqJ.d.ts} +1 -1
  37. package/dist/{ticketRestrictions-BTTN-LzH.d.cts → ticketRestrictions-Bc08-Hip.d.cts} +1 -1
  38. package/dist/view3d/index.cjs +12 -12
  39. package/dist/view3d/index.d.cts +1 -1
  40. package/dist/view3d/index.d.ts +1 -1
  41. package/dist/view3d/index.js +1 -1
  42. package/dist/view3d/scene/scene.worker.cjs +1 -1
  43. package/dist/view3d/scene/scene.worker.js +1 -1
  44. package/package.json +1 -1
  45. package/dist/chunk-E7TOTX6I.js +0 -1
package/dist/index.d.cts CHANGED
@@ -2,14 +2,14 @@ import { A as AccessibilityType, b as SeatCommercialAttributes, C as ChartDoc, F
2
2
  export { x as ACCESSIBILITY_RING_COLOR, y as ACCESSIBILITY_TYPES, z as AccessibilityMeta, D as AuthoringObjectState, B as BoothObject, o as Category, E as ChartDeliveryPerformance, H as ChartLayoutConstraint, a as ChartObject, n as ChartReferenceImage, I as ChartTheme, J as ConfidenceEvidenceScope, v as CubicPath, K as DecorImageObject, l as Floor, G as GAAreaObject, t as GAInventorySegment, M as LABEL_STYLE_MAX_SIZE, N as LABEL_STYLE_MIN_SIZE, O as LabelPresentation, L as LabelStyle, Q as ObjectEditorState, U as Physical3dEvidence, V as RadialClearanceLayoutConstraint, m as RectTableSeatCounts, k as RectTableSide, W as ReferenceAccessibilitySource, X as ReferenceCalibration, Y as ReferenceCategorySource, Z as ReferenceDerivedScale, _ as ReferenceDirectAnnotationSource, $ as ReferenceDirectLandmarkCandidate, a0 as ReferenceDirectLandmarkDisposition, a1 as ReferenceDirectLandmarkRole, a2 as ReferenceDirectLandmarkSource, a3 as ReferenceDirectSeatGroup, a4 as ReferenceDirectSeatImportSource, a5 as ReferenceDirectSeatPlan, a6 as ReferenceDirectStageSource, a7 as ReferenceEnrichmentStatus, a8 as ReferenceExtractEmptyReason, a9 as ReferenceExtractEnrichment, aa as ReferenceExtractInput, ab as ReferenceExtractProposal, ac as ReferenceExtractRegionSeats, ad as ReferenceInventoryExclusionSource, ae as ReferenceInventorySource, af as ReferenceMatchReport, ag as ReferenceScanProposal, ah as ReferenceScanRowProposal, ai as ReferenceScanSectionProposal, aj as ReferenceSeatSeed, ak as ReferenceSectionTraceBatchInput, al as ReferenceSectionTraceBatchProposal, am as ReferenceSectionTraceInput, an as ReferenceSectionTraceProposal, d as ResolvedSeatConfidenceEvidence, R as RowObject, ao as SEAT_COMMERCIAL_MARKS, ap as STAGE_LABEL_STYLE_MAX_SIZE, aq as SURROUNDINGS_SHAPE_ROLES, S as SeatCommercialMark, ar as SeatCommercialMeta, as as SeatConfidenceCoverage, at as SeatConfidenceEvidence, au as SeatConfidenceModelLevel, av as SeatConfidenceModeledTarget, aw as SeatConfidenceRealityLevel, e as SeatGlyphKind, j as SeatOverride, f as SeatViewCoverage, c as SeatViewMetadata, ax as SeatViewVariant, i as SectionObject, g as SectionOutlinePath, h as SectionPathSegment, ay as SelectionLayer, p as ShapeLineCap, q as ShapeLineEnding, r as ShapeLineJoin, s as ShapeObject, az as StageLabelStyle, T as TableObject, aA as TextAlignment, aB as TextBackground, w as TextObject, aC as TicketTierApplicability, aD as TicketTierEvidence, aE as TicketTierRestriction, aF as Venue3DMaterialPalette, aG as VenueSurveyRegistrationEvidence, aH as ZoneDef, aI as accessibilityMeta, aJ as accessibilityRingColor, aK as layerOf, aL as seatCommercialMeta } from './types-D91PAu7c.cjs';
3
3
  import { c as EventConfigurationRef, b as EventConfigurationVersion } from './eventConfigurations-CMnIbVqZ.cjs';
4
4
  export { d as EVENT_CONFIGURATION_EXPORT_SCHEMA, e as EVENT_CONFIGURATION_SCHEMA, f as EventConfigurationBaseVenue, g as EventConfigurationCompatibilityIssue, h as EventConfigurationCompatibilityIssueCode, i as EventConfigurationCompatibilityResult, j as EventConfigurationExportEnvelope, k as EventConfigurationLifecycleStatus, a as EventConfigurationOcclusion, l as EventConfigurationOverlay, m as EventConfigurationParseIssue, n as EventConfigurationParseIssueCode, o as EventConfigurationParseResult, p as EventConfigurationProductionElement, E as EventConfigurationProductionElementKind, q as EventConfigurationVenueSnapshot, r as EventConfigurationVersionParseResult, s as EventConfigurationVersionSummary, L as LegacyEventConfigurationMigrationResult, t as canTransitionEventConfiguration, u as canonicalEventConfigurationJson, v as inspectEventConfigurationCompatibility, w as migrateLegacyEventConfigurations, x as parseEventConfigurationExport, y as parseEventConfigurationVersion, z as resolveEventConfigurationRollback } from './eventConfigurations-CMnIbVqZ.cjs';
5
- export { A as AUTOMATIC_ROUND_TABLE_RADIUS_MAX, a as AUTOMATIC_ROUND_TABLE_RADIUS_MIN, C as ChartBoundsOptions, E as ExpandChartOptions, F as FLOOR_STACK_GAP_RATIO, b as FLOOR_STACK_MIN_SURFACE_PX, c as FloorStackOptions, d as FloorStackPlacement, R as RowSeatSlot, T as TABLE_SEAT_OFFSET, e as TableSeatSlot, f as allObjects, g as automaticRoundTableRadius, h as chartBounds, i as combinedFloorZoneId, j as expandBooth, k as expandChart, l as expandRow, m as expandRowSlots, n as expandTable, o as expandTableSlots, p as floorObjects, q as floorStackPlacements, r as floorsOf, s as initialFloorMode, t as layoutCombinedFloorPlan, u as layoutFloorStack, v as mainFloorId, w as objectCenter, x as owningSectionForObject, y as pointInPolygon, z as pointInPolygonWithHoles, B as polygonLabelPoint, D as rowInventoryCount, G as rowSeatPositions, H as stackFloors, I as tableInventoryCount, J as tableSeatCountsBySide, K as translateObject } from './tableSizing-wnW3HNga.cjs';
6
- import { h as TicketSelectionIssue, c as GroupedTableInventoryUnit } from './ticketRestrictions-BTTN-LzH.cjs';
7
- export { G as GA_UNIT_LABEL_PREFIX, M as MAX_EVENT_INVENTORY, e as MAX_GA_CAPACITY, m as gaAreasOf, n as gaInventorySegments, o as gaUnitLabel, p as gaUnitLabels, r as growJoinedGAInventory, t as isGaUnitLabel, y as validGAInventorySegments } from './ticketRestrictions-BTTN-LzH.cjs';
5
+ export { A as AUTOMATIC_ROUND_TABLE_RADIUS_MAX, a as AUTOMATIC_ROUND_TABLE_RADIUS_MIN, C as ChartBoundsOptions, E as ExpandChartOptions, F as FLOOR_STACK_GAP_RATIO, b as FLOOR_STACK_MIN_SURFACE_PX, c as FloorStackOptions, d as FloorStackPlacement, R as RowSeatSlot, T as TABLE_SEAT_OFFSET, e as TableSeatSlot, f as allObjects, g as automaticRoundTableRadius, h as chartBounds, i as combinedFloorZoneId, j as expandBooth, k as expandChart, l as expandRow, m as expandRowSlots, n as expandTable, o as expandTableSlots, p as floorObjects, q as floorStackPlacements, r as floorsOf, s as initialFloorMode, t as layoutCombinedFloorPlan, u as layoutFloorStack, v as mainFloorId, w as objectCenter, x as owningSectionForObject, y as pointInPolygon, z as pointInPolygonWithHoles, B as polygonLabelPoint, D as rowInventoryCount, G as rowSeatPositions, H as stackFloors, I as tableInventoryCount, J as tableSeatCountsBySide, K as translateObject } from './tableSizing-f-hh6kCg.cjs';
6
+ import { h as TicketSelectionIssue, c as GroupedTableInventoryUnit } from './ticketRestrictions-Bc08-Hip.cjs';
7
+ export { G as GA_UNIT_LABEL_PREFIX, M as MAX_EVENT_INVENTORY, e as MAX_GA_CAPACITY, m as gaAreasOf, n as gaInventorySegments, o as gaUnitLabel, p as gaUnitLabels, r as growJoinedGAInventory, t as isGaUnitLabel, y as validGAInventorySegments } from './ticketRestrictions-Bc08-Hip.cjs';
8
8
  export { S as SEAT_TYPE_ICON_BODY, a as SEAT_TYPE_ICON_VIEWBOX, b as SeatTypeIconKey, c as SeatTypeIconOptions, s as seatTypeIconBody, d as seatTypeIconSvg } from './seatTypeIcons-GlskmXH9.cjs';
9
9
  export { A as AvailabilityRule, S as SectionNode, T as TIER_HEIGHT_M, U as UNGROUPED_ID, a as applyHidden, c as computeSections, h as hiddenObjectIds, i as isSectionHidden, s as sectionGeometry } from './sections-BFR0_Zeq.cjs';
10
- export { M as MIN_POINTER_TARGET_PX, R as RENDERED_QUALITY_REPORT_VERSION, a as RenderedEvidenceState, b as RenderedQualityFinding, c as RenderedQualityFindingCode, d as RenderedQualityReport, e as RenderedQualitySample, i as inspectRenderedQualityEvidence } from './renderedQuality-CeSE6pEM.cjs';
11
- import { I as ISeatmapRenderer, b as RendererOptions, S as SeatStatus, c as SeatMark, E as ExpandedSeat, G as GAAreaState, d as RendererViewMode, e as RendererMinimapSnapshot, L as LodRung, R as RendererQualityEvidence, f as RendererCallbacks } from './renderer-B1mEhbA7.cjs';
12
- export { C as CHART_STORAGE_KEY, g as RenderedBookableLabelEvidence, a as RenderedFreeTextEvidence, h as RenderedGAAreaEvidence, i as RenderedHierarchyLabelEvidence, j as RenderedLabelHiddenReason, k as RenderedRowLabelEvidence, l as RendererHoverDetails, m as RendererMinimapSeat, n as RendererMinimapSection, o as SeatMarkKind } from './renderer-B1mEhbA7.cjs';
10
+ export { M as MIN_POINTER_TARGET_PX, R as RENDERED_QUALITY_REPORT_VERSION, a as RenderedEvidenceState, b as RenderedQualityFinding, c as RenderedQualityFindingCode, d as RenderedQualityReport, e as RenderedQualitySample, i as inspectRenderedQualityEvidence } from './renderedQuality-x1_lUJYV.cjs';
11
+ import { I as ISeatmapRenderer, b as RendererOptions, S as SeatStatus, c as SeatMark, E as ExpandedSeat, G as GAAreaState, d as RendererViewMode, e as RendererMinimapSnapshot, L as LodRung, R as RendererQualityEvidence, f as RendererCallbacks } from './renderer-DLTYfHV2.cjs';
12
+ export { C as CHART_STORAGE_KEY, g as RenderedBookableLabelEvidence, a as RenderedFreeTextEvidence, h as RenderedGAAreaEvidence, i as RenderedHierarchyLabelEvidence, j as RenderedLabelHiddenReason, k as RenderedRowLabelEvidence, l as RendererHoverDetails, m as RendererMinimapSeat, n as RendererMinimapSection, o as SeatMarkKind } from './renderer-DLTYfHV2.cjs';
13
13
  import './segmentedRowModel-DR7Xz6mb.cjs';
14
14
 
15
15
  /**
@@ -461,6 +461,7 @@ declare class SeatmapRenderer implements ISeatmapRenderer {
461
461
  /** Below this the whole scene is cheap enough to build in one step. */
462
462
  private readonly progressiveSeatFloor;
463
463
  private readonly loadingReveal;
464
+ private viewportSeats;
464
465
  /** Host callback for the moment the last section's seats finish arriving. */
465
466
  private readonly onSeatsRevealed;
466
467
  private rafId;
@@ -912,6 +913,14 @@ declare class SeatmapRenderer implements ISeatmapRenderer {
912
913
  * the small transient set aligned explicitly. Selection is capped in buyer
913
914
  * mode, making this constant-sized work during the iso tween. */
914
915
  private syncSeatOverlayPositions;
916
+ /** Seats a viewport eviction must never destroy (bounded: see viewportPins.ts). A dismissed
917
+ * focus ring keeps `focusedId` for keyboard resume but no longer pins that seat. */
918
+ private viewportPins;
919
+ private viewportWanted;
920
+ private viewportPinSync;
921
+ /** Pins changed off-camera (API select, best-available hold): one coalesced re-sync. */
922
+ private queueViewportPinSync;
923
+ private startViewportSeats;
915
924
  /** Build every seat + booth node — see render/seatScene.ts. */
916
925
  private renderSeats;
917
926
  /**
@@ -2102,9 +2111,10 @@ interface PickerOptions extends PickerCallbacks {
2102
2111
  * How a big chart's seats arrive: 'progressive' (default) shows the venue's
2103
2112
  * sections as soon as the chart doc lands and fills the seats in a section at
2104
2113
  * a time, nearest the viewport first; 'plain' builds the whole scene in one
2105
- * step, as every chart used to.
2114
+ * step, as every chart used to. 'viewport' builds visible/focused sections
2115
+ * on demand and does not emit whole-chart seat-reveal completion.
2106
2116
  */
2107
- loadingReveal?: 'progressive' | 'plain';
2117
+ loadingReveal?: 'progressive' | 'plain' | 'viewport';
2108
2118
  /** Every seat of a progressively revealed chart is now on screen. */
2109
2119
  onSeatsRevealed?: () => void;
2110
2120
  /**
package/dist/index.d.ts CHANGED
@@ -2,14 +2,14 @@ import { A as AccessibilityType, b as SeatCommercialAttributes, C as ChartDoc, F
2
2
  export { x as ACCESSIBILITY_RING_COLOR, y as ACCESSIBILITY_TYPES, z as AccessibilityMeta, D as AuthoringObjectState, B as BoothObject, o as Category, E as ChartDeliveryPerformance, H as ChartLayoutConstraint, a as ChartObject, n as ChartReferenceImage, I as ChartTheme, J as ConfidenceEvidenceScope, v as CubicPath, K as DecorImageObject, l as Floor, G as GAAreaObject, t as GAInventorySegment, M as LABEL_STYLE_MAX_SIZE, N as LABEL_STYLE_MIN_SIZE, O as LabelPresentation, L as LabelStyle, Q as ObjectEditorState, U as Physical3dEvidence, V as RadialClearanceLayoutConstraint, m as RectTableSeatCounts, k as RectTableSide, W as ReferenceAccessibilitySource, X as ReferenceCalibration, Y as ReferenceCategorySource, Z as ReferenceDerivedScale, _ as ReferenceDirectAnnotationSource, $ as ReferenceDirectLandmarkCandidate, a0 as ReferenceDirectLandmarkDisposition, a1 as ReferenceDirectLandmarkRole, a2 as ReferenceDirectLandmarkSource, a3 as ReferenceDirectSeatGroup, a4 as ReferenceDirectSeatImportSource, a5 as ReferenceDirectSeatPlan, a6 as ReferenceDirectStageSource, a7 as ReferenceEnrichmentStatus, a8 as ReferenceExtractEmptyReason, a9 as ReferenceExtractEnrichment, aa as ReferenceExtractInput, ab as ReferenceExtractProposal, ac as ReferenceExtractRegionSeats, ad as ReferenceInventoryExclusionSource, ae as ReferenceInventorySource, af as ReferenceMatchReport, ag as ReferenceScanProposal, ah as ReferenceScanRowProposal, ai as ReferenceScanSectionProposal, aj as ReferenceSeatSeed, ak as ReferenceSectionTraceBatchInput, al as ReferenceSectionTraceBatchProposal, am as ReferenceSectionTraceInput, an as ReferenceSectionTraceProposal, d as ResolvedSeatConfidenceEvidence, R as RowObject, ao as SEAT_COMMERCIAL_MARKS, ap as STAGE_LABEL_STYLE_MAX_SIZE, aq as SURROUNDINGS_SHAPE_ROLES, S as SeatCommercialMark, ar as SeatCommercialMeta, as as SeatConfidenceCoverage, at as SeatConfidenceEvidence, au as SeatConfidenceModelLevel, av as SeatConfidenceModeledTarget, aw as SeatConfidenceRealityLevel, e as SeatGlyphKind, j as SeatOverride, f as SeatViewCoverage, c as SeatViewMetadata, ax as SeatViewVariant, i as SectionObject, g as SectionOutlinePath, h as SectionPathSegment, ay as SelectionLayer, p as ShapeLineCap, q as ShapeLineEnding, r as ShapeLineJoin, s as ShapeObject, az as StageLabelStyle, T as TableObject, aA as TextAlignment, aB as TextBackground, w as TextObject, aC as TicketTierApplicability, aD as TicketTierEvidence, aE as TicketTierRestriction, aF as Venue3DMaterialPalette, aG as VenueSurveyRegistrationEvidence, aH as ZoneDef, aI as accessibilityMeta, aJ as accessibilityRingColor, aK as layerOf, aL as seatCommercialMeta } from './types-D91PAu7c.js';
3
3
  import { c as EventConfigurationRef, b as EventConfigurationVersion } from './eventConfigurations-uEwzNRzt.js';
4
4
  export { d as EVENT_CONFIGURATION_EXPORT_SCHEMA, e as EVENT_CONFIGURATION_SCHEMA, f as EventConfigurationBaseVenue, g as EventConfigurationCompatibilityIssue, h as EventConfigurationCompatibilityIssueCode, i as EventConfigurationCompatibilityResult, j as EventConfigurationExportEnvelope, k as EventConfigurationLifecycleStatus, a as EventConfigurationOcclusion, l as EventConfigurationOverlay, m as EventConfigurationParseIssue, n as EventConfigurationParseIssueCode, o as EventConfigurationParseResult, p as EventConfigurationProductionElement, E as EventConfigurationProductionElementKind, q as EventConfigurationVenueSnapshot, r as EventConfigurationVersionParseResult, s as EventConfigurationVersionSummary, L as LegacyEventConfigurationMigrationResult, t as canTransitionEventConfiguration, u as canonicalEventConfigurationJson, v as inspectEventConfigurationCompatibility, w as migrateLegacyEventConfigurations, x as parseEventConfigurationExport, y as parseEventConfigurationVersion, z as resolveEventConfigurationRollback } from './eventConfigurations-uEwzNRzt.js';
5
- export { A as AUTOMATIC_ROUND_TABLE_RADIUS_MAX, a as AUTOMATIC_ROUND_TABLE_RADIUS_MIN, C as ChartBoundsOptions, E as ExpandChartOptions, F as FLOOR_STACK_GAP_RATIO, b as FLOOR_STACK_MIN_SURFACE_PX, c as FloorStackOptions, d as FloorStackPlacement, R as RowSeatSlot, T as TABLE_SEAT_OFFSET, e as TableSeatSlot, f as allObjects, g as automaticRoundTableRadius, h as chartBounds, i as combinedFloorZoneId, j as expandBooth, k as expandChart, l as expandRow, m as expandRowSlots, n as expandTable, o as expandTableSlots, p as floorObjects, q as floorStackPlacements, r as floorsOf, s as initialFloorMode, t as layoutCombinedFloorPlan, u as layoutFloorStack, v as mainFloorId, w as objectCenter, x as owningSectionForObject, y as pointInPolygon, z as pointInPolygonWithHoles, B as polygonLabelPoint, D as rowInventoryCount, G as rowSeatPositions, H as stackFloors, I as tableInventoryCount, J as tableSeatCountsBySide, K as translateObject } from './tableSizing-DyS3UAha.js';
6
- import { h as TicketSelectionIssue, c as GroupedTableInventoryUnit } from './ticketRestrictions-DuYWl2uy.js';
7
- export { G as GA_UNIT_LABEL_PREFIX, M as MAX_EVENT_INVENTORY, e as MAX_GA_CAPACITY, m as gaAreasOf, n as gaInventorySegments, o as gaUnitLabel, p as gaUnitLabels, r as growJoinedGAInventory, t as isGaUnitLabel, y as validGAInventorySegments } from './ticketRestrictions-DuYWl2uy.js';
5
+ export { A as AUTOMATIC_ROUND_TABLE_RADIUS_MAX, a as AUTOMATIC_ROUND_TABLE_RADIUS_MIN, C as ChartBoundsOptions, E as ExpandChartOptions, F as FLOOR_STACK_GAP_RATIO, b as FLOOR_STACK_MIN_SURFACE_PX, c as FloorStackOptions, d as FloorStackPlacement, R as RowSeatSlot, T as TABLE_SEAT_OFFSET, e as TableSeatSlot, f as allObjects, g as automaticRoundTableRadius, h as chartBounds, i as combinedFloorZoneId, j as expandBooth, k as expandChart, l as expandRow, m as expandRowSlots, n as expandTable, o as expandTableSlots, p as floorObjects, q as floorStackPlacements, r as floorsOf, s as initialFloorMode, t as layoutCombinedFloorPlan, u as layoutFloorStack, v as mainFloorId, w as objectCenter, x as owningSectionForObject, y as pointInPolygon, z as pointInPolygonWithHoles, B as polygonLabelPoint, D as rowInventoryCount, G as rowSeatPositions, H as stackFloors, I as tableInventoryCount, J as tableSeatCountsBySide, K as translateObject } from './tableSizing-oDI0D8c2.js';
6
+ import { h as TicketSelectionIssue, c as GroupedTableInventoryUnit } from './ticketRestrictions-BXtFOUqJ.js';
7
+ export { G as GA_UNIT_LABEL_PREFIX, M as MAX_EVENT_INVENTORY, e as MAX_GA_CAPACITY, m as gaAreasOf, n as gaInventorySegments, o as gaUnitLabel, p as gaUnitLabels, r as growJoinedGAInventory, t as isGaUnitLabel, y as validGAInventorySegments } from './ticketRestrictions-BXtFOUqJ.js';
8
8
  export { S as SEAT_TYPE_ICON_BODY, a as SEAT_TYPE_ICON_VIEWBOX, b as SeatTypeIconKey, c as SeatTypeIconOptions, s as seatTypeIconBody, d as seatTypeIconSvg } from './seatTypeIcons-8folIM2Q.js';
9
9
  export { A as AvailabilityRule, S as SectionNode, T as TIER_HEIGHT_M, U as UNGROUPED_ID, a as applyHidden, c as computeSections, h as hiddenObjectIds, i as isSectionHidden, s as sectionGeometry } from './sections-BlBo6siI.js';
10
- export { M as MIN_POINTER_TARGET_PX, R as RENDERED_QUALITY_REPORT_VERSION, a as RenderedEvidenceState, b as RenderedQualityFinding, c as RenderedQualityFindingCode, d as RenderedQualityReport, e as RenderedQualitySample, i as inspectRenderedQualityEvidence } from './renderedQuality-CrlBXHzi.js';
11
- import { I as ISeatmapRenderer, b as RendererOptions, S as SeatStatus, c as SeatMark, E as ExpandedSeat, G as GAAreaState, d as RendererViewMode, e as RendererMinimapSnapshot, L as LodRung, R as RendererQualityEvidence, f as RendererCallbacks } from './renderer-BwZhXv8G.js';
12
- export { C as CHART_STORAGE_KEY, g as RenderedBookableLabelEvidence, a as RenderedFreeTextEvidence, h as RenderedGAAreaEvidence, i as RenderedHierarchyLabelEvidence, j as RenderedLabelHiddenReason, k as RenderedRowLabelEvidence, l as RendererHoverDetails, m as RendererMinimapSeat, n as RendererMinimapSection, o as SeatMarkKind } from './renderer-BwZhXv8G.js';
10
+ export { M as MIN_POINTER_TARGET_PX, R as RENDERED_QUALITY_REPORT_VERSION, a as RenderedEvidenceState, b as RenderedQualityFinding, c as RenderedQualityFindingCode, d as RenderedQualityReport, e as RenderedQualitySample, i as inspectRenderedQualityEvidence } from './renderedQuality-CHm4mIjB.js';
11
+ import { I as ISeatmapRenderer, b as RendererOptions, S as SeatStatus, c as SeatMark, E as ExpandedSeat, G as GAAreaState, d as RendererViewMode, e as RendererMinimapSnapshot, L as LodRung, R as RendererQualityEvidence, f as RendererCallbacks } from './renderer-DN1yCX7-.js';
12
+ export { C as CHART_STORAGE_KEY, g as RenderedBookableLabelEvidence, a as RenderedFreeTextEvidence, h as RenderedGAAreaEvidence, i as RenderedHierarchyLabelEvidence, j as RenderedLabelHiddenReason, k as RenderedRowLabelEvidence, l as RendererHoverDetails, m as RendererMinimapSeat, n as RendererMinimapSection, o as SeatMarkKind } from './renderer-DN1yCX7-.js';
13
13
  import './segmentedRowModel-CfVeZaOw.js';
14
14
 
15
15
  /**
@@ -461,6 +461,7 @@ declare class SeatmapRenderer implements ISeatmapRenderer {
461
461
  /** Below this the whole scene is cheap enough to build in one step. */
462
462
  private readonly progressiveSeatFloor;
463
463
  private readonly loadingReveal;
464
+ private viewportSeats;
464
465
  /** Host callback for the moment the last section's seats finish arriving. */
465
466
  private readonly onSeatsRevealed;
466
467
  private rafId;
@@ -912,6 +913,14 @@ declare class SeatmapRenderer implements ISeatmapRenderer {
912
913
  * the small transient set aligned explicitly. Selection is capped in buyer
913
914
  * mode, making this constant-sized work during the iso tween. */
914
915
  private syncSeatOverlayPositions;
916
+ /** Seats a viewport eviction must never destroy (bounded: see viewportPins.ts). A dismissed
917
+ * focus ring keeps `focusedId` for keyboard resume but no longer pins that seat. */
918
+ private viewportPins;
919
+ private viewportWanted;
920
+ private viewportPinSync;
921
+ /** Pins changed off-camera (API select, best-available hold): one coalesced re-sync. */
922
+ private queueViewportPinSync;
923
+ private startViewportSeats;
915
924
  /** Build every seat + booth node — see render/seatScene.ts. */
916
925
  private renderSeats;
917
926
  /**
@@ -2102,9 +2111,10 @@ interface PickerOptions extends PickerCallbacks {
2102
2111
  * How a big chart's seats arrive: 'progressive' (default) shows the venue's
2103
2112
  * sections as soon as the chart doc lands and fills the seats in a section at
2104
2113
  * a time, nearest the viewport first; 'plain' builds the whole scene in one
2105
- * step, as every chart used to.
2114
+ * step, as every chart used to. 'viewport' builds visible/focused sections
2115
+ * on demand and does not emit whole-chart seat-reveal completion.
2106
2116
  */
2107
- loadingReveal?: 'progressive' | 'plain';
2117
+ loadingReveal?: 'progressive' | 'plain' | 'viewport';
2108
2118
  /** Every seat of a progressively revealed chart is now on screen. */
2109
2119
  onSeatsRevealed?: () => void;
2110
2120
  /**