@ericchen1990/pano-view 3.10.0 → 4.0.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.mts CHANGED
@@ -1495,7 +1495,47 @@ type PanoDragMotion = {
1495
1495
  bounce?: boolean;
1496
1496
  };
1497
1497
 
1498
- type PanoMapCorner = "top-left" | "top-right" | "bottom-left" | "bottom-right";
1498
+ declare const PANO_OVERLAY_ALIGNS: readonly ["top", "bottom", "left", "right", "top-left", "top-right", "bottom-left", "bottom-right"];
1499
+ type PanoOverlayAlign = (typeof PANO_OVERLAY_ALIGNS)[number];
1500
+ type PanoOverlayAxis = "horizontal" | "vertical";
1501
+ type PanoOverlayInset = number | string | {
1502
+ top?: number | string;
1503
+ right?: number | string;
1504
+ bottom?: number | string;
1505
+ left?: number | string;
1506
+ };
1507
+ /** Shared screen-edge anchor for planar overlay chrome. */
1508
+ type PanoOverlayAnchor = {
1509
+ align?: PanoOverlayAlign;
1510
+ /** Used for corner anchors. Edges infer the axis and ignore this value. */
1511
+ axis?: PanoOverlayAxis;
1512
+ inset?: PanoOverlayInset;
1513
+ };
1514
+ type PanoOverlayCollapseEdge = "top" | "bottom" | "left" | "right";
1515
+ type PanoOverlayContentAlign = "start" | "center" | "end";
1516
+ type ResolvedOverlayInset = {
1517
+ top: string;
1518
+ right: string;
1519
+ bottom: string;
1520
+ left: string;
1521
+ };
1522
+ type ResolvedOverlayAnchor = {
1523
+ align: PanoOverlayAlign;
1524
+ axis: PanoOverlayAxis;
1525
+ inset: ResolvedOverlayInset;
1526
+ collapseEdge: PanoOverlayCollapseEdge;
1527
+ contentAlign: PanoOverlayContentAlign;
1528
+ dockInset: string;
1529
+ };
1530
+ declare function isOverlayCorner(align: PanoOverlayAlign): boolean;
1531
+ type PanoOverlayChevron = "up" | "down" | "left" | "right";
1532
+ declare function resolveOverlayAnchor(anchor: PanoOverlayAnchor | undefined, defaults: {
1533
+ align: PanoOverlayAlign;
1534
+ inset: number | string;
1535
+ }): ResolvedOverlayAnchor;
1536
+ /** Validate an anchor object from a project document. */
1537
+ declare function parseOverlayAnchor(value: unknown, field: string): PanoOverlayAnchor;
1538
+
1499
1539
  type PanoMapGradientStop = {
1500
1540
  offset: number;
1501
1541
  color: string;
@@ -1547,28 +1587,24 @@ type PanoMapSpotDefinition = {
1547
1587
  icon?: string;
1548
1588
  };
1549
1589
  type PanoMapControlsDefinition = {
1550
- /** Show expand/collapse on a docked panel. */
1590
+ /** Show the edge tab that slides a panel off-screen. */
1551
1591
  collapse?: boolean;
1552
1592
  /** Show zoom-in and zoom-out buttons. */
1553
1593
  zoom?: boolean;
1554
1594
  };
1555
- type PanoMapDockedPresentation = {
1556
- mode: "docked";
1557
- corner?: PanoMapCorner;
1595
+ type PanoMapPanelPresentation = {
1596
+ mode: "panel";
1597
+ anchor?: PanoOverlayAnchor;
1558
1598
  width?: number;
1559
1599
  height?: number;
1560
- offsetX?: number;
1561
- offsetY?: number;
1562
1600
  };
1563
1601
  type PanoMapDialogPresentation = {
1564
1602
  mode: "dialog";
1565
- corner?: PanoMapCorner;
1566
- offsetX?: number;
1567
- offsetY?: number;
1603
+ anchor?: PanoOverlayAnchor;
1568
1604
  width?: number;
1569
1605
  height?: number;
1570
1606
  };
1571
- type PanoMapPresentation = PanoMapDockedPresentation | PanoMapDialogPresentation;
1607
+ type PanoMapPresentation = PanoMapPanelPresentation | PanoMapDialogPresentation;
1572
1608
  type PanoMapDefinition = {
1573
1609
  image: string;
1574
1610
  /**
@@ -1880,20 +1916,29 @@ declare const DEFAULT_WEBVR_CURSOR_DWELL_MS = 1500;
1880
1916
 
1881
1917
  declare const EMPTY_WEBVR_STATE: WebVRState;
1882
1918
 
1919
+ type PanoOverlayToggleState = {
1920
+ collapsed: boolean;
1921
+ };
1922
+ /**
1923
+ * Icon and chrome for an overlay edge tab.
1924
+ * Omit `icon` to keep the default chevron. Pass an element (`<Icon />`), not a
1925
+ * component type. A function receives `{ collapsed }` and returns the icon for
1926
+ * that state. `style` overrides background, border, color, and size. Position
1927
+ * and `transform` stay with the edge layout.
1928
+ */
1929
+ type PanoOverlayToggle = {
1930
+ icon?: ReactNode | ((state: PanoOverlayToggleState) => ReactNode);
1931
+ className?: string;
1932
+ style?: CSSProperties;
1933
+ };
1934
+ /** Custom edge-tab icon, or `undefined` when `icon` was omitted. */
1935
+ declare function resolveOverlayToggleIcon(icon: PanoOverlayToggle["icon"], collapsed: boolean): ReactNode | undefined;
1936
+
1883
1937
  type PanoSceneMenuItem = {
1884
1938
  id: string;
1885
1939
  thumbnailUrl: string;
1886
1940
  title?: string;
1887
1941
  };
1888
- type PanoSceneMenuPlacement = "top" | "bottom" | "left" | "right";
1889
- /** Cross-axis alignment along the dock edge. Defaults to `"center"`. */
1890
- type PanoSceneMenuAlign = "start" | "center" | "end";
1891
- type PanoSceneMenuInset = number | string | {
1892
- top?: number | string;
1893
- right?: number | string;
1894
- bottom?: number | string;
1895
- left?: number | string;
1896
- };
1897
1942
  type PanoSceneMenuLabelAlign = "start" | "center" | "end";
1898
1943
  type PanoSceneMenuAppearance = {
1899
1944
  background?: string;
@@ -1916,19 +1961,11 @@ type PanoSceneMenuProps = {
1916
1961
  items: readonly PanoSceneMenuItem[];
1917
1962
  activeId?: string | null;
1918
1963
  onSelect?: (id: string) => void;
1919
- /** Dock edge inside the viewer overlay. Defaults to `"bottom"`. */
1920
- placement?: PanoSceneMenuPlacement;
1921
1964
  /**
1922
- * Align the menu along the dock edge when its main-axis size is smaller than
1923
- * the available space. Also aligns short lists inside the strip. Defaults to
1924
- * `"center"`.
1965
+ * Screen anchor. Defaults to bottom, centered on that edge, with a 12px inset.
1966
+ * Corner `axis` chooses a horizontal or vertical strip.
1925
1967
  */
1926
- align?: PanoSceneMenuAlign;
1927
- /**
1928
- * Gap from the viewer edges. A single value applies to every side;
1929
- * an object sets each side. Numbers are pixels. Defaults to `12`.
1930
- */
1931
- inset?: PanoSceneMenuInset;
1968
+ anchor?: PanoOverlayAnchor;
1932
1969
  /** Menu width. Numbers are pixels; strings may be `%`, `rem`, etc. */
1933
1970
  width?: number | string;
1934
1971
  /** Menu height. Numbers are pixels; strings may be `%`, `rem`, etc. */
@@ -1963,9 +2000,11 @@ type PanoSceneMenuProps = {
1963
2000
  nextLabel?: string;
1964
2001
  expandLabel?: string;
1965
2002
  collapseLabel?: string;
2003
+ /** Edge-tab icon and chrome. Omit to keep the default chevron. */
2004
+ toggle?: PanoOverlayToggle;
1966
2005
  };
1967
2006
  declare const DEFAULT_PANO_SCENE_MENU_APPEARANCE: Required<PanoSceneMenuAppearance>;
1968
- declare function PanoSceneMenu({ items, activeId, onSelect, placement, align, inset, width, height, collapsible, defaultExpanded, expanded: expandedProp, onExpandedChange, showArrows, loop, dragMotion: dragMotionProp, appearance, className, style, label, previousLabel, nextLabel, expandLabel, collapseLabel, }: PanoSceneMenuProps): react.JSX.Element;
2007
+ declare function PanoSceneMenu({ items, activeId, onSelect, anchor, width, height, collapsible, defaultExpanded, expanded: expandedProp, onExpandedChange, showArrows, loop, dragMotion: dragMotionProp, appearance, className, style, label, previousLabel, nextLabel, expandLabel, collapseLabel, toggle, }: PanoSceneMenuProps): react.JSX.Element;
1969
2008
 
1970
2009
  type ViewInteractionSource = "mouse" | "touch" | "keyboard";
1971
2010
  type PanoWheelEvent = {
@@ -2346,7 +2385,7 @@ type PanoMapProps = {
2346
2385
  initialScale?: number;
2347
2386
  };
2348
2387
  /**
2349
- * Floor-plan map surface. Fills its parent; hosts decide docked vs dialog chrome.
2388
+ * Floor-plan map surface. Fills its parent; hosts decide panel vs dialog chrome.
2350
2389
  * Icons and sectors keep CSS-pixel size while the background image zooms.
2351
2390
  */
2352
2391
  declare function PanoMap({ map, activeSceneId, onSelectScene, view: controlledView, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, className, style, showZoomControls, showCollapseControl, collapsed: controlledCollapsed, onCollapsedChange, renderChrome, initialScale, }: PanoMapProps): react.JSX.Element;
@@ -2364,17 +2403,16 @@ type PanoMapOverlayProps = {
2364
2403
  /** Force presentation while authoring, ignoring document presentation temporarily. */
2365
2404
  presentationOverride?: PanoMapDefinition["presentation"];
2366
2405
  /** Override presentation mode for this mount. */
2367
- presentation?: "docked" | "dialog";
2368
- /** Override docked corner (or dialog launcher corner). */
2369
- corner?: PanoMapCorner;
2370
- /** Override docked panel or dialog-launcher width in CSS pixels. */
2406
+ presentation?: "panel" | "dialog";
2407
+ /**
2408
+ * Override the document anchor for this mount.
2409
+ * Fields replace the document anchor field by field.
2410
+ */
2411
+ anchor?: PanoOverlayAnchor;
2412
+ /** Override panel or dialog-launcher width in CSS pixels. */
2371
2413
  width?: number;
2372
- /** Override docked panel or dialog-launcher height in CSS pixels. */
2414
+ /** Override panel or dialog-launcher height in CSS pixels. */
2373
2415
  height?: number;
2374
- /** Horizontal inset from the chosen corner in CSS pixels. */
2375
- offsetX?: number;
2376
- /** Vertical inset from the chosen corner in CSS pixels. */
2377
- offsetY?: number;
2378
2416
  /** Preferred dialog body width in CSS pixels; clamped to the viewer. */
2379
2417
  dialogWidth?: number;
2380
2418
  /** Preferred dialog body height in CSS pixels; clamped to the viewer. */
@@ -2400,14 +2438,19 @@ type PanoMapOverlayProps = {
2400
2438
  title?: string;
2401
2439
  className?: string;
2402
2440
  style?: CSSProperties;
2441
+ /**
2442
+ * Panel edge-tab icon and chrome. Omit to keep the default chevron.
2443
+ * Dialog mode has no edge tab.
2444
+ */
2445
+ toggle?: PanoOverlayToggle;
2403
2446
  /** When true, fill a large authoring surface instead of visitor presentation. */
2404
2447
  editorSurface?: boolean;
2405
2448
  };
2406
2449
  /**
2407
2450
  * Visitor-facing map chrome for `PanoOverlay`.
2408
- * Docked panels stay in a corner; dialog mode opens the same map in a modal.
2451
+ * Panel mode anchors the map on the viewer; dialog mode opens it from a launcher.
2409
2452
  */
2410
- declare function PanoMapOverlay({ map, activeSceneId, onSelectScene, view, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, presentationOverride, presentation: presentationModeProp, corner: cornerProp, width: widthProp, height: heightProp, offsetX: offsetXProp, offsetY: offsetYProp, dialogWidth, dialogHeight, interaction, maxScale, initialScale, showZoomControls, showCollapseControl, iconSize, openLabel, closeLabel, title, className, style, editorSurface, }: PanoMapOverlayProps): react.JSX.Element;
2453
+ declare function PanoMapOverlay({ map, activeSceneId, onSelectScene, view, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, presentationOverride, presentation: presentationModeProp, anchor: anchorProp, width: widthProp, height: heightProp, dialogWidth, dialogHeight, interaction, maxScale, initialScale, showZoomControls, showCollapseControl, iconSize, openLabel, closeLabel, title, className, style, toggle, editorSurface, }: PanoMapOverlayProps): react.JSX.Element;
2411
2454
 
2412
2455
  type MapRect = {
2413
2456
  left: number;
@@ -2441,4 +2484,4 @@ declare function containerPointToImage(point: MapPoint, viewport: MapViewport):
2441
2484
  /** Clockwise degrees from image up for a vector in container space. */
2442
2485
  declare function headingFromVector(dx: number, dy: number): number;
2443
2486
 
2444
- export { type ArrowGraphic, type AssetUrlContext, type AssetUrlResolver, AudioHotspot, type AudioHotspotDefinition, type AudioHotspotErrorEvent, type AudioHotspotProps, type AudioPlaybackState, AutoRotate, type AutoRotateProps, BackgroundAudio, type BackgroundAudioController, type BackgroundAudioErrorEvent, type BackgroundAudioProps, type BackgroundAudioSnapshot, type BackgroundAudioSource, type CircleGraphic, type CubeFaceCode, type CubemapViewerConfig, DEFAULT_HOTSPOT_TOOLTIP_APPEARANCE, DEFAULT_HOTSPOT_TOOLTIP_OFFSET, DEFAULT_PANO_CURSORS, DEFAULT_PANO_SCENE_MENU_APPEARANCE, DEFAULT_PANO_VIDEO_CAPTION_APPEARANCE, DEFAULT_PANO_VIDEO_CONTROLS_APPEARANCE, DEFAULT_PANO_VIDEO_PLAYBACK_RATES, DEFAULT_WEBVR_CHROME_APPEARANCE, DEFAULT_WEBVR_CURSOR_DWELL_MS, type DiamondGraphic, EMPTY_WEBVR_STATE, type GraphicDefinition, GraphicHotspot, type GraphicHotspotDefinition, type GraphicHotspotProps, Gyro, type GyroHandle, type GyroProps, type GyroTouchMode, type HotspotCommonProps, type HotspotDefinition, type HotspotDefinitionBase, type HotspotDragEvent, type HotspotInputSource, type HotspotInteractionEvent, type HotspotMode, type HotspotPointerEvents, type HotspotPosition, type HotspotScaleMode, type HotspotTooltipAppearance, type HotspotTooltipContent, type HotspotTooltipPlacement, type HotspotTooltipTrigger, IframeHotspot, type IframeHotspotDefinition, type IframeHotspotProps, type IframePointerPolicy, ImageHotspot, type ImageHotspotDefinition, type ImageHotspotProps, type JsonObject, type JsonRequestOptions, type JsonValue, type KeyboardControlAction, type KeyboardControlKeys, KeyboardControls, type KeyboardControlsProps, type LoadPanoProjectOptions, type LoadSceneFromJsonOptions, type LoadedPanoProject, type LoadedProjectScene, MAX_HOTSPOT_PITCH, MIN_PANO_CONTEXT_MENU_BACKGROUND_OPACITY, type MouseControlButton, MouseControls, type MouseControlsOptions, type MouseControlsProps, PANO_FILTER_PRESETS, type PanoColorMatrix, PanoContextMenu, type PanoContextMenuActionItem, type PanoContextMenuAppearance, type PanoContextMenuEntry, type PanoContextMenuItem, type PanoContextMenuPresetActions, type PanoContextMenuPresetId, type PanoContextMenuPresetRef, type PanoContextMenuPresets, type PanoContextMenuProps, type PanoContextMenuRenderProps, type PanoContextMenuSelectContext, type PanoContextMenuSeparatorItem, type PanoCursor, type PanoCursors, PanoDataError, type PanoDataErrorCode, type PanoDragMotion, type PanoEventBus, type PanoEventListener, type PanoEventMap, type PanoEventType, PanoEvents, type PanoEventsProps, PanoFilter, type PanoFilterPreset, type PanoFilterProps, PanoMap, type PanoMapControlsDefinition, type PanoMapCorner, type PanoMapDefinition, type PanoMapDialogPresentation, type PanoMapDockedPresentation, type PanoMapEditChange, type PanoMapGradientStop, PanoMapOverlay, type PanoMapOverlayProps, type PanoMapPresentation, type PanoMapProps, type PanoMapSectorDefinition, type PanoMapSectorGradient, type PanoMapSpotDefinition, type PanoMediaActivationControls, type PanoMediaActivationOptions, PanoOverlay, PanoOverlayPortalProvider, type PanoOverlayProps, type PanoOverlayRenderContext, type PanoProjectDefinition, type PanoProjectSceneDefinition, type PanoResizeEvent, PanoSceneMenu, type PanoSceneMenuAlign, type PanoSceneMenuAppearance, type PanoSceneMenuInset, type PanoSceneMenuItem, type PanoSceneMenuLabelAlign, type PanoSceneMenuPlacement, type PanoSceneMenuProps, PanoVideo, type PanoVideoCaptionAppearance, type PanoVideoController, PanoVideoControls, type PanoVideoControlsAppearance, type PanoVideoControlsProps, type PanoVideoErrorEvent, type PanoVideoErrorSource, type PanoVideoPlaybackSnapshot, type PanoVideoProps, type PanoVideoSource, type PanoVideoTrack, type PanoVideoTrackKind, type PanoVideoVariant, type PanoViewEasing, type PanoViewLimits, type PanoViewLookToOptions, type PanoViewNavigationOptions, type PanoViewNavigationResult, PanoViewer, type PanoViewerHandle, type PanoViewerProps, type PanoViewerState, type PanoWheelEvent, type PanoramaControlsOptions, type PanoramaPointerEvent, type PointHotspotDefinition, type PointHotspotDefinitionBase, PolygonHotspot, type PolygonHotspotDefinition, type PolygonHotspotProps, type PolygonValidationCode, type PolygonValidationIssue, type PolygonVerticesChangeEvent, PolylineHotspot, type PolylineHotspotDefinition, type PolylineHotspotProps, type PolylineValidationIssue, type PolylineVerticesChangeEvent, type PopupAssetUrlContext, type PopupAssetUrlResolver, type ProjectCustomActionEvent, type ProjectCustomHotspotAction, type ProjectHotspotAction, type ProjectHotspotClickEvent, type ProjectHotspotDefinition, type ProjectHotspotErrorEvent, type ProjectHotspotEvent, type ProjectHotspotRenderContext, type ProjectHotspotTrigger, type ProjectPopupBlock, type ProjectPopupDefinition, type ProjectPopupRequestEvent, ProjectScenes, type ProjectScenesProps, type RectangleGraphic, type RingGraphic, type Scene, type SceneFromViewerConfigOptions, type SceneTransition, type SceneTransitionEndEvent, type SceneTransitionErrorEvent, type SceneTransitionPreset, Scenes, type ScenesController, type ScenesProps, type SequenceFrameDirection, type SequenceFrameEvent, SequenceHotspot, type SequenceHotspotDefinition, type SequenceHotspotErrorEvent, type SequenceHotspotProps, type SequenceLoadProgress, type SequencePlaybackState, type SetPanoViewerOptions, Sphere, type SphereProps, type SphereScene, SphereTile, type SphereTileAddress, type SphereTileLevel, type SphereTileLoadError, type SphereTileMultiresConfig, type SphereTileProps, type SphereTileScene, type SphereViewerConfig, type StarGraphic, type SvgGraphic, type SvgPathGraphic, TextHotspot, type TextHotspotAlign, type TextHotspotDefinition, type TextHotspotFontStyle, type TextHotspotProps, type TextHotspotStyle, type TextHotspotVerticalAlign, type TextHotspotWhiteSpace, Tile, type TileAddress, type TileLoadError, type TileLoadProgress, type TileMultiresConfig, type TileProps, type TileScene, TouchControls, type TouchControlsOptions, type TouchControlsProps, type TriangleGraphic, type UsePanoViewerResult, VideoHotspot, type VideoHotspotDefinition, type VideoHotspotErrorEvent, type VideoHotspotProps, type VideoPlaybackState, type ViewInteractionEvent, type ViewInteractionSource, type ViewerConfig, type ViewerDocument, WEBVR_PROFILES, WEBVR_PROFILE_IDS, WebVR, type WebVRChrome, type WebVRChromeAppearance, type WebVRFrameRate, type WebVRHandle, type WebVRMode, type WebVRProfile, type WebVRProfileId, type WebVRProps, type WebVRSettings, type WebVRState, clampPanoPitch, composePanoContextMenuItems, containRect, containerPointToImage, createDefaultPanoContextMenuItems, createPanoContextMenuPresets, cycleSceneId, headingFromVector, horizontalFov, hotspotAction, imagePointToContainer, loadPanoProject, loadSceneFromJson, normalizePanoPosition, normalizePanoYaw, panoPositionToVector3, parsePanoMap, parsePanoProject, projectHotspotTriggers, resolvePanoContextMenuEntries, resolvePanoMapAssets, resolveHotspotAssets as resolveProjectHotspotAssets, resolveProjectPopupAssets, sceneFromViewerConfig, sectorRotation, setHotspotAction, unwrapPolygonVertices, usePanoEvents, usePanoModal, usePanoOverlay, usePanoViewer, validatePolygonVertices, validatePolylineVertices, vector3ToPanoPosition };
2487
+ export { type ArrowGraphic, type AssetUrlContext, type AssetUrlResolver, AudioHotspot, type AudioHotspotDefinition, type AudioHotspotErrorEvent, type AudioHotspotProps, type AudioPlaybackState, AutoRotate, type AutoRotateProps, BackgroundAudio, type BackgroundAudioController, type BackgroundAudioErrorEvent, type BackgroundAudioProps, type BackgroundAudioSnapshot, type BackgroundAudioSource, type CircleGraphic, type CubeFaceCode, type CubemapViewerConfig, DEFAULT_HOTSPOT_TOOLTIP_APPEARANCE, DEFAULT_HOTSPOT_TOOLTIP_OFFSET, DEFAULT_PANO_CURSORS, DEFAULT_PANO_SCENE_MENU_APPEARANCE, DEFAULT_PANO_VIDEO_CAPTION_APPEARANCE, DEFAULT_PANO_VIDEO_CONTROLS_APPEARANCE, DEFAULT_PANO_VIDEO_PLAYBACK_RATES, DEFAULT_WEBVR_CHROME_APPEARANCE, DEFAULT_WEBVR_CURSOR_DWELL_MS, type DiamondGraphic, EMPTY_WEBVR_STATE, type GraphicDefinition, GraphicHotspot, type GraphicHotspotDefinition, type GraphicHotspotProps, Gyro, type GyroHandle, type GyroProps, type GyroTouchMode, type HotspotCommonProps, type HotspotDefinition, type HotspotDefinitionBase, type HotspotDragEvent, type HotspotInputSource, type HotspotInteractionEvent, type HotspotMode, type HotspotPointerEvents, type HotspotPosition, type HotspotScaleMode, type HotspotTooltipAppearance, type HotspotTooltipContent, type HotspotTooltipPlacement, type HotspotTooltipTrigger, IframeHotspot, type IframeHotspotDefinition, type IframeHotspotProps, type IframePointerPolicy, ImageHotspot, type ImageHotspotDefinition, type ImageHotspotProps, type JsonObject, type JsonRequestOptions, type JsonValue, type KeyboardControlAction, type KeyboardControlKeys, KeyboardControls, type KeyboardControlsProps, type LoadPanoProjectOptions, type LoadSceneFromJsonOptions, type LoadedPanoProject, type LoadedProjectScene, MAX_HOTSPOT_PITCH, MIN_PANO_CONTEXT_MENU_BACKGROUND_OPACITY, type MouseControlButton, MouseControls, type MouseControlsOptions, type MouseControlsProps, PANO_FILTER_PRESETS, PANO_OVERLAY_ALIGNS, type PanoColorMatrix, PanoContextMenu, type PanoContextMenuActionItem, type PanoContextMenuAppearance, type PanoContextMenuEntry, type PanoContextMenuItem, type PanoContextMenuPresetActions, type PanoContextMenuPresetId, type PanoContextMenuPresetRef, type PanoContextMenuPresets, type PanoContextMenuProps, type PanoContextMenuRenderProps, type PanoContextMenuSelectContext, type PanoContextMenuSeparatorItem, type PanoCursor, type PanoCursors, PanoDataError, type PanoDataErrorCode, type PanoDragMotion, type PanoEventBus, type PanoEventListener, type PanoEventMap, type PanoEventType, PanoEvents, type PanoEventsProps, PanoFilter, type PanoFilterPreset, type PanoFilterProps, PanoMap, type PanoMapControlsDefinition, type PanoMapDefinition, type PanoMapDialogPresentation, type PanoMapEditChange, type PanoMapGradientStop, PanoMapOverlay, type PanoMapOverlayProps, type PanoMapPanelPresentation, type PanoMapPresentation, type PanoMapProps, type PanoMapSectorDefinition, type PanoMapSectorGradient, type PanoMapSpotDefinition, type PanoMediaActivationControls, type PanoMediaActivationOptions, PanoOverlay, type PanoOverlayAlign, type PanoOverlayAnchor, type PanoOverlayAxis, type PanoOverlayChevron, type PanoOverlayCollapseEdge, type PanoOverlayContentAlign, type PanoOverlayInset, PanoOverlayPortalProvider, type PanoOverlayProps, type PanoOverlayRenderContext, type PanoOverlayToggle, type PanoOverlayToggleState, type PanoProjectDefinition, type PanoProjectSceneDefinition, type PanoResizeEvent, PanoSceneMenu, type PanoSceneMenuAppearance, type PanoSceneMenuItem, type PanoSceneMenuLabelAlign, type PanoSceneMenuProps, PanoVideo, type PanoVideoCaptionAppearance, type PanoVideoController, PanoVideoControls, type PanoVideoControlsAppearance, type PanoVideoControlsProps, type PanoVideoErrorEvent, type PanoVideoErrorSource, type PanoVideoPlaybackSnapshot, type PanoVideoProps, type PanoVideoSource, type PanoVideoTrack, type PanoVideoTrackKind, type PanoVideoVariant, type PanoViewEasing, type PanoViewLimits, type PanoViewLookToOptions, type PanoViewNavigationOptions, type PanoViewNavigationResult, PanoViewer, type PanoViewerHandle, type PanoViewerProps, type PanoViewerState, type PanoWheelEvent, type PanoramaControlsOptions, type PanoramaPointerEvent, type PointHotspotDefinition, type PointHotspotDefinitionBase, PolygonHotspot, type PolygonHotspotDefinition, type PolygonHotspotProps, type PolygonValidationCode, type PolygonValidationIssue, type PolygonVerticesChangeEvent, PolylineHotspot, type PolylineHotspotDefinition, type PolylineHotspotProps, type PolylineValidationIssue, type PolylineVerticesChangeEvent, type PopupAssetUrlContext, type PopupAssetUrlResolver, type ProjectCustomActionEvent, type ProjectCustomHotspotAction, type ProjectHotspotAction, type ProjectHotspotClickEvent, type ProjectHotspotDefinition, type ProjectHotspotErrorEvent, type ProjectHotspotEvent, type ProjectHotspotRenderContext, type ProjectHotspotTrigger, type ProjectPopupBlock, type ProjectPopupDefinition, type ProjectPopupRequestEvent, ProjectScenes, type ProjectScenesProps, type RectangleGraphic, type ResolvedOverlayAnchor, type RingGraphic, type Scene, type SceneFromViewerConfigOptions, type SceneTransition, type SceneTransitionEndEvent, type SceneTransitionErrorEvent, type SceneTransitionPreset, Scenes, type ScenesController, type ScenesProps, type SequenceFrameDirection, type SequenceFrameEvent, SequenceHotspot, type SequenceHotspotDefinition, type SequenceHotspotErrorEvent, type SequenceHotspotProps, type SequenceLoadProgress, type SequencePlaybackState, type SetPanoViewerOptions, Sphere, type SphereProps, type SphereScene, SphereTile, type SphereTileAddress, type SphereTileLevel, type SphereTileLoadError, type SphereTileMultiresConfig, type SphereTileProps, type SphereTileScene, type SphereViewerConfig, type StarGraphic, type SvgGraphic, type SvgPathGraphic, TextHotspot, type TextHotspotAlign, type TextHotspotDefinition, type TextHotspotFontStyle, type TextHotspotProps, type TextHotspotStyle, type TextHotspotVerticalAlign, type TextHotspotWhiteSpace, Tile, type TileAddress, type TileLoadError, type TileLoadProgress, type TileMultiresConfig, type TileProps, type TileScene, TouchControls, type TouchControlsOptions, type TouchControlsProps, type TriangleGraphic, type UsePanoViewerResult, VideoHotspot, type VideoHotspotDefinition, type VideoHotspotErrorEvent, type VideoHotspotProps, type VideoPlaybackState, type ViewInteractionEvent, type ViewInteractionSource, type ViewerConfig, type ViewerDocument, WEBVR_PROFILES, WEBVR_PROFILE_IDS, WebVR, type WebVRChrome, type WebVRChromeAppearance, type WebVRFrameRate, type WebVRHandle, type WebVRMode, type WebVRProfile, type WebVRProfileId, type WebVRProps, type WebVRSettings, type WebVRState, clampPanoPitch, composePanoContextMenuItems, containRect, containerPointToImage, createDefaultPanoContextMenuItems, createPanoContextMenuPresets, cycleSceneId, headingFromVector, horizontalFov, hotspotAction, imagePointToContainer, isOverlayCorner, loadPanoProject, loadSceneFromJson, normalizePanoPosition, normalizePanoYaw, panoPositionToVector3, parseOverlayAnchor, parsePanoMap, parsePanoProject, projectHotspotTriggers, resolveOverlayAnchor, resolveOverlayToggleIcon, resolvePanoContextMenuEntries, resolvePanoMapAssets, resolveHotspotAssets as resolveProjectHotspotAssets, resolveProjectPopupAssets, sceneFromViewerConfig, sectorRotation, setHotspotAction, unwrapPolygonVertices, usePanoEvents, usePanoModal, usePanoOverlay, usePanoViewer, validatePolygonVertices, validatePolylineVertices, vector3ToPanoPosition };
package/dist/index.d.ts CHANGED
@@ -1495,7 +1495,47 @@ type PanoDragMotion = {
1495
1495
  bounce?: boolean;
1496
1496
  };
1497
1497
 
1498
- type PanoMapCorner = "top-left" | "top-right" | "bottom-left" | "bottom-right";
1498
+ declare const PANO_OVERLAY_ALIGNS: readonly ["top", "bottom", "left", "right", "top-left", "top-right", "bottom-left", "bottom-right"];
1499
+ type PanoOverlayAlign = (typeof PANO_OVERLAY_ALIGNS)[number];
1500
+ type PanoOverlayAxis = "horizontal" | "vertical";
1501
+ type PanoOverlayInset = number | string | {
1502
+ top?: number | string;
1503
+ right?: number | string;
1504
+ bottom?: number | string;
1505
+ left?: number | string;
1506
+ };
1507
+ /** Shared screen-edge anchor for planar overlay chrome. */
1508
+ type PanoOverlayAnchor = {
1509
+ align?: PanoOverlayAlign;
1510
+ /** Used for corner anchors. Edges infer the axis and ignore this value. */
1511
+ axis?: PanoOverlayAxis;
1512
+ inset?: PanoOverlayInset;
1513
+ };
1514
+ type PanoOverlayCollapseEdge = "top" | "bottom" | "left" | "right";
1515
+ type PanoOverlayContentAlign = "start" | "center" | "end";
1516
+ type ResolvedOverlayInset = {
1517
+ top: string;
1518
+ right: string;
1519
+ bottom: string;
1520
+ left: string;
1521
+ };
1522
+ type ResolvedOverlayAnchor = {
1523
+ align: PanoOverlayAlign;
1524
+ axis: PanoOverlayAxis;
1525
+ inset: ResolvedOverlayInset;
1526
+ collapseEdge: PanoOverlayCollapseEdge;
1527
+ contentAlign: PanoOverlayContentAlign;
1528
+ dockInset: string;
1529
+ };
1530
+ declare function isOverlayCorner(align: PanoOverlayAlign): boolean;
1531
+ type PanoOverlayChevron = "up" | "down" | "left" | "right";
1532
+ declare function resolveOverlayAnchor(anchor: PanoOverlayAnchor | undefined, defaults: {
1533
+ align: PanoOverlayAlign;
1534
+ inset: number | string;
1535
+ }): ResolvedOverlayAnchor;
1536
+ /** Validate an anchor object from a project document. */
1537
+ declare function parseOverlayAnchor(value: unknown, field: string): PanoOverlayAnchor;
1538
+
1499
1539
  type PanoMapGradientStop = {
1500
1540
  offset: number;
1501
1541
  color: string;
@@ -1547,28 +1587,24 @@ type PanoMapSpotDefinition = {
1547
1587
  icon?: string;
1548
1588
  };
1549
1589
  type PanoMapControlsDefinition = {
1550
- /** Show expand/collapse on a docked panel. */
1590
+ /** Show the edge tab that slides a panel off-screen. */
1551
1591
  collapse?: boolean;
1552
1592
  /** Show zoom-in and zoom-out buttons. */
1553
1593
  zoom?: boolean;
1554
1594
  };
1555
- type PanoMapDockedPresentation = {
1556
- mode: "docked";
1557
- corner?: PanoMapCorner;
1595
+ type PanoMapPanelPresentation = {
1596
+ mode: "panel";
1597
+ anchor?: PanoOverlayAnchor;
1558
1598
  width?: number;
1559
1599
  height?: number;
1560
- offsetX?: number;
1561
- offsetY?: number;
1562
1600
  };
1563
1601
  type PanoMapDialogPresentation = {
1564
1602
  mode: "dialog";
1565
- corner?: PanoMapCorner;
1566
- offsetX?: number;
1567
- offsetY?: number;
1603
+ anchor?: PanoOverlayAnchor;
1568
1604
  width?: number;
1569
1605
  height?: number;
1570
1606
  };
1571
- type PanoMapPresentation = PanoMapDockedPresentation | PanoMapDialogPresentation;
1607
+ type PanoMapPresentation = PanoMapPanelPresentation | PanoMapDialogPresentation;
1572
1608
  type PanoMapDefinition = {
1573
1609
  image: string;
1574
1610
  /**
@@ -1880,20 +1916,29 @@ declare const DEFAULT_WEBVR_CURSOR_DWELL_MS = 1500;
1880
1916
 
1881
1917
  declare const EMPTY_WEBVR_STATE: WebVRState;
1882
1918
 
1919
+ type PanoOverlayToggleState = {
1920
+ collapsed: boolean;
1921
+ };
1922
+ /**
1923
+ * Icon and chrome for an overlay edge tab.
1924
+ * Omit `icon` to keep the default chevron. Pass an element (`<Icon />`), not a
1925
+ * component type. A function receives `{ collapsed }` and returns the icon for
1926
+ * that state. `style` overrides background, border, color, and size. Position
1927
+ * and `transform` stay with the edge layout.
1928
+ */
1929
+ type PanoOverlayToggle = {
1930
+ icon?: ReactNode | ((state: PanoOverlayToggleState) => ReactNode);
1931
+ className?: string;
1932
+ style?: CSSProperties;
1933
+ };
1934
+ /** Custom edge-tab icon, or `undefined` when `icon` was omitted. */
1935
+ declare function resolveOverlayToggleIcon(icon: PanoOverlayToggle["icon"], collapsed: boolean): ReactNode | undefined;
1936
+
1883
1937
  type PanoSceneMenuItem = {
1884
1938
  id: string;
1885
1939
  thumbnailUrl: string;
1886
1940
  title?: string;
1887
1941
  };
1888
- type PanoSceneMenuPlacement = "top" | "bottom" | "left" | "right";
1889
- /** Cross-axis alignment along the dock edge. Defaults to `"center"`. */
1890
- type PanoSceneMenuAlign = "start" | "center" | "end";
1891
- type PanoSceneMenuInset = number | string | {
1892
- top?: number | string;
1893
- right?: number | string;
1894
- bottom?: number | string;
1895
- left?: number | string;
1896
- };
1897
1942
  type PanoSceneMenuLabelAlign = "start" | "center" | "end";
1898
1943
  type PanoSceneMenuAppearance = {
1899
1944
  background?: string;
@@ -1916,19 +1961,11 @@ type PanoSceneMenuProps = {
1916
1961
  items: readonly PanoSceneMenuItem[];
1917
1962
  activeId?: string | null;
1918
1963
  onSelect?: (id: string) => void;
1919
- /** Dock edge inside the viewer overlay. Defaults to `"bottom"`. */
1920
- placement?: PanoSceneMenuPlacement;
1921
1964
  /**
1922
- * Align the menu along the dock edge when its main-axis size is smaller than
1923
- * the available space. Also aligns short lists inside the strip. Defaults to
1924
- * `"center"`.
1965
+ * Screen anchor. Defaults to bottom, centered on that edge, with a 12px inset.
1966
+ * Corner `axis` chooses a horizontal or vertical strip.
1925
1967
  */
1926
- align?: PanoSceneMenuAlign;
1927
- /**
1928
- * Gap from the viewer edges. A single value applies to every side;
1929
- * an object sets each side. Numbers are pixels. Defaults to `12`.
1930
- */
1931
- inset?: PanoSceneMenuInset;
1968
+ anchor?: PanoOverlayAnchor;
1932
1969
  /** Menu width. Numbers are pixels; strings may be `%`, `rem`, etc. */
1933
1970
  width?: number | string;
1934
1971
  /** Menu height. Numbers are pixels; strings may be `%`, `rem`, etc. */
@@ -1963,9 +2000,11 @@ type PanoSceneMenuProps = {
1963
2000
  nextLabel?: string;
1964
2001
  expandLabel?: string;
1965
2002
  collapseLabel?: string;
2003
+ /** Edge-tab icon and chrome. Omit to keep the default chevron. */
2004
+ toggle?: PanoOverlayToggle;
1966
2005
  };
1967
2006
  declare const DEFAULT_PANO_SCENE_MENU_APPEARANCE: Required<PanoSceneMenuAppearance>;
1968
- declare function PanoSceneMenu({ items, activeId, onSelect, placement, align, inset, width, height, collapsible, defaultExpanded, expanded: expandedProp, onExpandedChange, showArrows, loop, dragMotion: dragMotionProp, appearance, className, style, label, previousLabel, nextLabel, expandLabel, collapseLabel, }: PanoSceneMenuProps): react.JSX.Element;
2007
+ declare function PanoSceneMenu({ items, activeId, onSelect, anchor, width, height, collapsible, defaultExpanded, expanded: expandedProp, onExpandedChange, showArrows, loop, dragMotion: dragMotionProp, appearance, className, style, label, previousLabel, nextLabel, expandLabel, collapseLabel, toggle, }: PanoSceneMenuProps): react.JSX.Element;
1969
2008
 
1970
2009
  type ViewInteractionSource = "mouse" | "touch" | "keyboard";
1971
2010
  type PanoWheelEvent = {
@@ -2346,7 +2385,7 @@ type PanoMapProps = {
2346
2385
  initialScale?: number;
2347
2386
  };
2348
2387
  /**
2349
- * Floor-plan map surface. Fills its parent; hosts decide docked vs dialog chrome.
2388
+ * Floor-plan map surface. Fills its parent; hosts decide panel vs dialog chrome.
2350
2389
  * Icons and sectors keep CSS-pixel size while the background image zooms.
2351
2390
  */
2352
2391
  declare function PanoMap({ map, activeSceneId, onSelectScene, view: controlledView, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, className, style, showZoomControls, showCollapseControl, collapsed: controlledCollapsed, onCollapsedChange, renderChrome, initialScale, }: PanoMapProps): react.JSX.Element;
@@ -2364,17 +2403,16 @@ type PanoMapOverlayProps = {
2364
2403
  /** Force presentation while authoring, ignoring document presentation temporarily. */
2365
2404
  presentationOverride?: PanoMapDefinition["presentation"];
2366
2405
  /** Override presentation mode for this mount. */
2367
- presentation?: "docked" | "dialog";
2368
- /** Override docked corner (or dialog launcher corner). */
2369
- corner?: PanoMapCorner;
2370
- /** Override docked panel or dialog-launcher width in CSS pixels. */
2406
+ presentation?: "panel" | "dialog";
2407
+ /**
2408
+ * Override the document anchor for this mount.
2409
+ * Fields replace the document anchor field by field.
2410
+ */
2411
+ anchor?: PanoOverlayAnchor;
2412
+ /** Override panel or dialog-launcher width in CSS pixels. */
2371
2413
  width?: number;
2372
- /** Override docked panel or dialog-launcher height in CSS pixels. */
2414
+ /** Override panel or dialog-launcher height in CSS pixels. */
2373
2415
  height?: number;
2374
- /** Horizontal inset from the chosen corner in CSS pixels. */
2375
- offsetX?: number;
2376
- /** Vertical inset from the chosen corner in CSS pixels. */
2377
- offsetY?: number;
2378
2416
  /** Preferred dialog body width in CSS pixels; clamped to the viewer. */
2379
2417
  dialogWidth?: number;
2380
2418
  /** Preferred dialog body height in CSS pixels; clamped to the viewer. */
@@ -2400,14 +2438,19 @@ type PanoMapOverlayProps = {
2400
2438
  title?: string;
2401
2439
  className?: string;
2402
2440
  style?: CSSProperties;
2441
+ /**
2442
+ * Panel edge-tab icon and chrome. Omit to keep the default chevron.
2443
+ * Dialog mode has no edge tab.
2444
+ */
2445
+ toggle?: PanoOverlayToggle;
2403
2446
  /** When true, fill a large authoring surface instead of visitor presentation. */
2404
2447
  editorSurface?: boolean;
2405
2448
  };
2406
2449
  /**
2407
2450
  * Visitor-facing map chrome for `PanoOverlay`.
2408
- * Docked panels stay in a corner; dialog mode opens the same map in a modal.
2451
+ * Panel mode anchors the map on the viewer; dialog mode opens it from a launcher.
2409
2452
  */
2410
- declare function PanoMapOverlay({ map, activeSceneId, onSelectScene, view, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, presentationOverride, presentation: presentationModeProp, corner: cornerProp, width: widthProp, height: heightProp, offsetX: offsetXProp, offsetY: offsetYProp, dialogWidth, dialogHeight, interaction, maxScale, initialScale, showZoomControls, showCollapseControl, iconSize, openLabel, closeLabel, title, className, style, editorSurface, }: PanoMapOverlayProps): react.JSX.Element;
2453
+ declare function PanoMapOverlay({ map, activeSceneId, onSelectScene, view, mode, selectedSpotId, onSelectedSpotIdChange, onEditChange, placementSceneId, presentationOverride, presentation: presentationModeProp, anchor: anchorProp, width: widthProp, height: heightProp, dialogWidth, dialogHeight, interaction, maxScale, initialScale, showZoomControls, showCollapseControl, iconSize, openLabel, closeLabel, title, className, style, toggle, editorSurface, }: PanoMapOverlayProps): react.JSX.Element;
2411
2454
 
2412
2455
  type MapRect = {
2413
2456
  left: number;
@@ -2441,4 +2484,4 @@ declare function containerPointToImage(point: MapPoint, viewport: MapViewport):
2441
2484
  /** Clockwise degrees from image up for a vector in container space. */
2442
2485
  declare function headingFromVector(dx: number, dy: number): number;
2443
2486
 
2444
- export { type ArrowGraphic, type AssetUrlContext, type AssetUrlResolver, AudioHotspot, type AudioHotspotDefinition, type AudioHotspotErrorEvent, type AudioHotspotProps, type AudioPlaybackState, AutoRotate, type AutoRotateProps, BackgroundAudio, type BackgroundAudioController, type BackgroundAudioErrorEvent, type BackgroundAudioProps, type BackgroundAudioSnapshot, type BackgroundAudioSource, type CircleGraphic, type CubeFaceCode, type CubemapViewerConfig, DEFAULT_HOTSPOT_TOOLTIP_APPEARANCE, DEFAULT_HOTSPOT_TOOLTIP_OFFSET, DEFAULT_PANO_CURSORS, DEFAULT_PANO_SCENE_MENU_APPEARANCE, DEFAULT_PANO_VIDEO_CAPTION_APPEARANCE, DEFAULT_PANO_VIDEO_CONTROLS_APPEARANCE, DEFAULT_PANO_VIDEO_PLAYBACK_RATES, DEFAULT_WEBVR_CHROME_APPEARANCE, DEFAULT_WEBVR_CURSOR_DWELL_MS, type DiamondGraphic, EMPTY_WEBVR_STATE, type GraphicDefinition, GraphicHotspot, type GraphicHotspotDefinition, type GraphicHotspotProps, Gyro, type GyroHandle, type GyroProps, type GyroTouchMode, type HotspotCommonProps, type HotspotDefinition, type HotspotDefinitionBase, type HotspotDragEvent, type HotspotInputSource, type HotspotInteractionEvent, type HotspotMode, type HotspotPointerEvents, type HotspotPosition, type HotspotScaleMode, type HotspotTooltipAppearance, type HotspotTooltipContent, type HotspotTooltipPlacement, type HotspotTooltipTrigger, IframeHotspot, type IframeHotspotDefinition, type IframeHotspotProps, type IframePointerPolicy, ImageHotspot, type ImageHotspotDefinition, type ImageHotspotProps, type JsonObject, type JsonRequestOptions, type JsonValue, type KeyboardControlAction, type KeyboardControlKeys, KeyboardControls, type KeyboardControlsProps, type LoadPanoProjectOptions, type LoadSceneFromJsonOptions, type LoadedPanoProject, type LoadedProjectScene, MAX_HOTSPOT_PITCH, MIN_PANO_CONTEXT_MENU_BACKGROUND_OPACITY, type MouseControlButton, MouseControls, type MouseControlsOptions, type MouseControlsProps, PANO_FILTER_PRESETS, type PanoColorMatrix, PanoContextMenu, type PanoContextMenuActionItem, type PanoContextMenuAppearance, type PanoContextMenuEntry, type PanoContextMenuItem, type PanoContextMenuPresetActions, type PanoContextMenuPresetId, type PanoContextMenuPresetRef, type PanoContextMenuPresets, type PanoContextMenuProps, type PanoContextMenuRenderProps, type PanoContextMenuSelectContext, type PanoContextMenuSeparatorItem, type PanoCursor, type PanoCursors, PanoDataError, type PanoDataErrorCode, type PanoDragMotion, type PanoEventBus, type PanoEventListener, type PanoEventMap, type PanoEventType, PanoEvents, type PanoEventsProps, PanoFilter, type PanoFilterPreset, type PanoFilterProps, PanoMap, type PanoMapControlsDefinition, type PanoMapCorner, type PanoMapDefinition, type PanoMapDialogPresentation, type PanoMapDockedPresentation, type PanoMapEditChange, type PanoMapGradientStop, PanoMapOverlay, type PanoMapOverlayProps, type PanoMapPresentation, type PanoMapProps, type PanoMapSectorDefinition, type PanoMapSectorGradient, type PanoMapSpotDefinition, type PanoMediaActivationControls, type PanoMediaActivationOptions, PanoOverlay, PanoOverlayPortalProvider, type PanoOverlayProps, type PanoOverlayRenderContext, type PanoProjectDefinition, type PanoProjectSceneDefinition, type PanoResizeEvent, PanoSceneMenu, type PanoSceneMenuAlign, type PanoSceneMenuAppearance, type PanoSceneMenuInset, type PanoSceneMenuItem, type PanoSceneMenuLabelAlign, type PanoSceneMenuPlacement, type PanoSceneMenuProps, PanoVideo, type PanoVideoCaptionAppearance, type PanoVideoController, PanoVideoControls, type PanoVideoControlsAppearance, type PanoVideoControlsProps, type PanoVideoErrorEvent, type PanoVideoErrorSource, type PanoVideoPlaybackSnapshot, type PanoVideoProps, type PanoVideoSource, type PanoVideoTrack, type PanoVideoTrackKind, type PanoVideoVariant, type PanoViewEasing, type PanoViewLimits, type PanoViewLookToOptions, type PanoViewNavigationOptions, type PanoViewNavigationResult, PanoViewer, type PanoViewerHandle, type PanoViewerProps, type PanoViewerState, type PanoWheelEvent, type PanoramaControlsOptions, type PanoramaPointerEvent, type PointHotspotDefinition, type PointHotspotDefinitionBase, PolygonHotspot, type PolygonHotspotDefinition, type PolygonHotspotProps, type PolygonValidationCode, type PolygonValidationIssue, type PolygonVerticesChangeEvent, PolylineHotspot, type PolylineHotspotDefinition, type PolylineHotspotProps, type PolylineValidationIssue, type PolylineVerticesChangeEvent, type PopupAssetUrlContext, type PopupAssetUrlResolver, type ProjectCustomActionEvent, type ProjectCustomHotspotAction, type ProjectHotspotAction, type ProjectHotspotClickEvent, type ProjectHotspotDefinition, type ProjectHotspotErrorEvent, type ProjectHotspotEvent, type ProjectHotspotRenderContext, type ProjectHotspotTrigger, type ProjectPopupBlock, type ProjectPopupDefinition, type ProjectPopupRequestEvent, ProjectScenes, type ProjectScenesProps, type RectangleGraphic, type RingGraphic, type Scene, type SceneFromViewerConfigOptions, type SceneTransition, type SceneTransitionEndEvent, type SceneTransitionErrorEvent, type SceneTransitionPreset, Scenes, type ScenesController, type ScenesProps, type SequenceFrameDirection, type SequenceFrameEvent, SequenceHotspot, type SequenceHotspotDefinition, type SequenceHotspotErrorEvent, type SequenceHotspotProps, type SequenceLoadProgress, type SequencePlaybackState, type SetPanoViewerOptions, Sphere, type SphereProps, type SphereScene, SphereTile, type SphereTileAddress, type SphereTileLevel, type SphereTileLoadError, type SphereTileMultiresConfig, type SphereTileProps, type SphereTileScene, type SphereViewerConfig, type StarGraphic, type SvgGraphic, type SvgPathGraphic, TextHotspot, type TextHotspotAlign, type TextHotspotDefinition, type TextHotspotFontStyle, type TextHotspotProps, type TextHotspotStyle, type TextHotspotVerticalAlign, type TextHotspotWhiteSpace, Tile, type TileAddress, type TileLoadError, type TileLoadProgress, type TileMultiresConfig, type TileProps, type TileScene, TouchControls, type TouchControlsOptions, type TouchControlsProps, type TriangleGraphic, type UsePanoViewerResult, VideoHotspot, type VideoHotspotDefinition, type VideoHotspotErrorEvent, type VideoHotspotProps, type VideoPlaybackState, type ViewInteractionEvent, type ViewInteractionSource, type ViewerConfig, type ViewerDocument, WEBVR_PROFILES, WEBVR_PROFILE_IDS, WebVR, type WebVRChrome, type WebVRChromeAppearance, type WebVRFrameRate, type WebVRHandle, type WebVRMode, type WebVRProfile, type WebVRProfileId, type WebVRProps, type WebVRSettings, type WebVRState, clampPanoPitch, composePanoContextMenuItems, containRect, containerPointToImage, createDefaultPanoContextMenuItems, createPanoContextMenuPresets, cycleSceneId, headingFromVector, horizontalFov, hotspotAction, imagePointToContainer, loadPanoProject, loadSceneFromJson, normalizePanoPosition, normalizePanoYaw, panoPositionToVector3, parsePanoMap, parsePanoProject, projectHotspotTriggers, resolvePanoContextMenuEntries, resolvePanoMapAssets, resolveHotspotAssets as resolveProjectHotspotAssets, resolveProjectPopupAssets, sceneFromViewerConfig, sectorRotation, setHotspotAction, unwrapPolygonVertices, usePanoEvents, usePanoModal, usePanoOverlay, usePanoViewer, validatePolygonVertices, validatePolylineVertices, vector3ToPanoPosition };
2487
+ export { type ArrowGraphic, type AssetUrlContext, type AssetUrlResolver, AudioHotspot, type AudioHotspotDefinition, type AudioHotspotErrorEvent, type AudioHotspotProps, type AudioPlaybackState, AutoRotate, type AutoRotateProps, BackgroundAudio, type BackgroundAudioController, type BackgroundAudioErrorEvent, type BackgroundAudioProps, type BackgroundAudioSnapshot, type BackgroundAudioSource, type CircleGraphic, type CubeFaceCode, type CubemapViewerConfig, DEFAULT_HOTSPOT_TOOLTIP_APPEARANCE, DEFAULT_HOTSPOT_TOOLTIP_OFFSET, DEFAULT_PANO_CURSORS, DEFAULT_PANO_SCENE_MENU_APPEARANCE, DEFAULT_PANO_VIDEO_CAPTION_APPEARANCE, DEFAULT_PANO_VIDEO_CONTROLS_APPEARANCE, DEFAULT_PANO_VIDEO_PLAYBACK_RATES, DEFAULT_WEBVR_CHROME_APPEARANCE, DEFAULT_WEBVR_CURSOR_DWELL_MS, type DiamondGraphic, EMPTY_WEBVR_STATE, type GraphicDefinition, GraphicHotspot, type GraphicHotspotDefinition, type GraphicHotspotProps, Gyro, type GyroHandle, type GyroProps, type GyroTouchMode, type HotspotCommonProps, type HotspotDefinition, type HotspotDefinitionBase, type HotspotDragEvent, type HotspotInputSource, type HotspotInteractionEvent, type HotspotMode, type HotspotPointerEvents, type HotspotPosition, type HotspotScaleMode, type HotspotTooltipAppearance, type HotspotTooltipContent, type HotspotTooltipPlacement, type HotspotTooltipTrigger, IframeHotspot, type IframeHotspotDefinition, type IframeHotspotProps, type IframePointerPolicy, ImageHotspot, type ImageHotspotDefinition, type ImageHotspotProps, type JsonObject, type JsonRequestOptions, type JsonValue, type KeyboardControlAction, type KeyboardControlKeys, KeyboardControls, type KeyboardControlsProps, type LoadPanoProjectOptions, type LoadSceneFromJsonOptions, type LoadedPanoProject, type LoadedProjectScene, MAX_HOTSPOT_PITCH, MIN_PANO_CONTEXT_MENU_BACKGROUND_OPACITY, type MouseControlButton, MouseControls, type MouseControlsOptions, type MouseControlsProps, PANO_FILTER_PRESETS, PANO_OVERLAY_ALIGNS, type PanoColorMatrix, PanoContextMenu, type PanoContextMenuActionItem, type PanoContextMenuAppearance, type PanoContextMenuEntry, type PanoContextMenuItem, type PanoContextMenuPresetActions, type PanoContextMenuPresetId, type PanoContextMenuPresetRef, type PanoContextMenuPresets, type PanoContextMenuProps, type PanoContextMenuRenderProps, type PanoContextMenuSelectContext, type PanoContextMenuSeparatorItem, type PanoCursor, type PanoCursors, PanoDataError, type PanoDataErrorCode, type PanoDragMotion, type PanoEventBus, type PanoEventListener, type PanoEventMap, type PanoEventType, PanoEvents, type PanoEventsProps, PanoFilter, type PanoFilterPreset, type PanoFilterProps, PanoMap, type PanoMapControlsDefinition, type PanoMapDefinition, type PanoMapDialogPresentation, type PanoMapEditChange, type PanoMapGradientStop, PanoMapOverlay, type PanoMapOverlayProps, type PanoMapPanelPresentation, type PanoMapPresentation, type PanoMapProps, type PanoMapSectorDefinition, type PanoMapSectorGradient, type PanoMapSpotDefinition, type PanoMediaActivationControls, type PanoMediaActivationOptions, PanoOverlay, type PanoOverlayAlign, type PanoOverlayAnchor, type PanoOverlayAxis, type PanoOverlayChevron, type PanoOverlayCollapseEdge, type PanoOverlayContentAlign, type PanoOverlayInset, PanoOverlayPortalProvider, type PanoOverlayProps, type PanoOverlayRenderContext, type PanoOverlayToggle, type PanoOverlayToggleState, type PanoProjectDefinition, type PanoProjectSceneDefinition, type PanoResizeEvent, PanoSceneMenu, type PanoSceneMenuAppearance, type PanoSceneMenuItem, type PanoSceneMenuLabelAlign, type PanoSceneMenuProps, PanoVideo, type PanoVideoCaptionAppearance, type PanoVideoController, PanoVideoControls, type PanoVideoControlsAppearance, type PanoVideoControlsProps, type PanoVideoErrorEvent, type PanoVideoErrorSource, type PanoVideoPlaybackSnapshot, type PanoVideoProps, type PanoVideoSource, type PanoVideoTrack, type PanoVideoTrackKind, type PanoVideoVariant, type PanoViewEasing, type PanoViewLimits, type PanoViewLookToOptions, type PanoViewNavigationOptions, type PanoViewNavigationResult, PanoViewer, type PanoViewerHandle, type PanoViewerProps, type PanoViewerState, type PanoWheelEvent, type PanoramaControlsOptions, type PanoramaPointerEvent, type PointHotspotDefinition, type PointHotspotDefinitionBase, PolygonHotspot, type PolygonHotspotDefinition, type PolygonHotspotProps, type PolygonValidationCode, type PolygonValidationIssue, type PolygonVerticesChangeEvent, PolylineHotspot, type PolylineHotspotDefinition, type PolylineHotspotProps, type PolylineValidationIssue, type PolylineVerticesChangeEvent, type PopupAssetUrlContext, type PopupAssetUrlResolver, type ProjectCustomActionEvent, type ProjectCustomHotspotAction, type ProjectHotspotAction, type ProjectHotspotClickEvent, type ProjectHotspotDefinition, type ProjectHotspotErrorEvent, type ProjectHotspotEvent, type ProjectHotspotRenderContext, type ProjectHotspotTrigger, type ProjectPopupBlock, type ProjectPopupDefinition, type ProjectPopupRequestEvent, ProjectScenes, type ProjectScenesProps, type RectangleGraphic, type ResolvedOverlayAnchor, type RingGraphic, type Scene, type SceneFromViewerConfigOptions, type SceneTransition, type SceneTransitionEndEvent, type SceneTransitionErrorEvent, type SceneTransitionPreset, Scenes, type ScenesController, type ScenesProps, type SequenceFrameDirection, type SequenceFrameEvent, SequenceHotspot, type SequenceHotspotDefinition, type SequenceHotspotErrorEvent, type SequenceHotspotProps, type SequenceLoadProgress, type SequencePlaybackState, type SetPanoViewerOptions, Sphere, type SphereProps, type SphereScene, SphereTile, type SphereTileAddress, type SphereTileLevel, type SphereTileLoadError, type SphereTileMultiresConfig, type SphereTileProps, type SphereTileScene, type SphereViewerConfig, type StarGraphic, type SvgGraphic, type SvgPathGraphic, TextHotspot, type TextHotspotAlign, type TextHotspotDefinition, type TextHotspotFontStyle, type TextHotspotProps, type TextHotspotStyle, type TextHotspotVerticalAlign, type TextHotspotWhiteSpace, Tile, type TileAddress, type TileLoadError, type TileLoadProgress, type TileMultiresConfig, type TileProps, type TileScene, TouchControls, type TouchControlsOptions, type TouchControlsProps, type TriangleGraphic, type UsePanoViewerResult, VideoHotspot, type VideoHotspotDefinition, type VideoHotspotErrorEvent, type VideoHotspotProps, type VideoPlaybackState, type ViewInteractionEvent, type ViewInteractionSource, type ViewerConfig, type ViewerDocument, WEBVR_PROFILES, WEBVR_PROFILE_IDS, WebVR, type WebVRChrome, type WebVRChromeAppearance, type WebVRFrameRate, type WebVRHandle, type WebVRMode, type WebVRProfile, type WebVRProfileId, type WebVRProps, type WebVRSettings, type WebVRState, clampPanoPitch, composePanoContextMenuItems, containRect, containerPointToImage, createDefaultPanoContextMenuItems, createPanoContextMenuPresets, cycleSceneId, headingFromVector, horizontalFov, hotspotAction, imagePointToContainer, isOverlayCorner, loadPanoProject, loadSceneFromJson, normalizePanoPosition, normalizePanoYaw, panoPositionToVector3, parseOverlayAnchor, parsePanoMap, parsePanoProject, projectHotspotTriggers, resolveOverlayAnchor, resolveOverlayToggleIcon, resolvePanoContextMenuEntries, resolvePanoMapAssets, resolveHotspotAssets as resolveProjectHotspotAssets, resolveProjectPopupAssets, sceneFromViewerConfig, sectorRotation, setHotspotAction, unwrapPolygonVertices, usePanoEvents, usePanoModal, usePanoOverlay, usePanoViewer, validatePolygonVertices, validatePolylineVertices, vector3ToPanoPosition };