@mappedin/react-sdk 6.0.1-beta.40 → 6.0.1-beta.41

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.
@@ -1 +1 @@
1
- import{V as y,W as B,u as w,v as x,w as b}from"./chunk-XLDX33Q3.js";import{a as A}from"./chunk-WJAP5OMF.js";import{a as g}from"./chunk-BYMKRV3A.js";A();function R(o,l=!1){let r=o[0].index!==null,f=new Set(Object.keys(o[0].attributes)),i=new Set(Object.keys(o[0].morphAttributes)),c={},e={},h=o[0].morphTargetsRelative,u=new B,d=0;for(let t=0;t<o.length;++t){let s=o[t],a=0;if(r!==(s.index!==null))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."),null;for(let n in s.attributes){if(!f.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+'. All geometries must have compatible attributes; make sure "'+n+'" attribute exists among all geometries, or in none of them.'),null;c[n]===void 0&&(c[n]=[]),c[n].push(s.attributes[n]),a++}if(a!==f.size)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". Make sure all geometries have the same number of attributes."),null;if(h!==s.morphTargetsRelative)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphTargetsRelative must be consistent throughout all geometries."),null;for(let n in s.morphAttributes){if(!i.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphAttributes must be consistent throughout all geometries."),null;e[n]===void 0&&(e[n]=[]),e[n].push(s.morphAttributes[n])}if(l){let n;if(r)n=s.index.count;else if(s.attributes.position!==void 0)n=s.attributes.position.count;else return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". The geometry must have either an index or a position attribute"),null;u.addGroup(d,n,t),d+=n}}if(r){let t=0,s=[];for(let a=0;a<o.length;++a){let n=o[a].index;for(let m=0;m<n.count;++m)s.push(n.getX(m)+t);t+=o[a].attributes.position.count}u.setIndex(s)}for(let t in c){let s=T(c[t]);if(!s)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" attribute."),null;u.setAttribute(t,s)}for(let t in e){let s=e[t][0].length;if(s===0)break;u.morphAttributes=u.morphAttributes||{},u.morphAttributes[t]=[];for(let a=0;a<s;++a){let n=[];for(let p=0;p<e[t].length;++p)n.push(e[t][p][a]);let m=T(n);if(!m)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" morphAttribute."),null;u.morphAttributes[t].push(m)}}return u}g(R,"mergeGeometries");function T(o){let l,r,f,i=-1,c=0;for(let d=0;d<o.length;++d){let t=o[d];if(l===void 0&&(l=t.array.constructor),l!==t.array.constructor)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."),null;if(r===void 0&&(r=t.itemSize),r!==t.itemSize)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."),null;if(f===void 0&&(f=t.normalized),f!==t.normalized)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."),null;if(i===-1&&(i=t.gpuType),i!==t.gpuType)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."),null;c+=t.count*r}let e=new l(c),h=new y(e,r,f),u=0;for(let d=0;d<o.length;++d){let t=o[d];if(t.isInterleavedBufferAttribute){let s=u/r;for(let a=0,n=t.count;a<n;a++)for(let m=0;m<r;m++){let p=t.getComponent(a,m);h.setComponent(a+s,m,p)}}else e.set(t.array,u);u+=t.count*r}return i!==void 0&&(h.gpuType=i),h}g(T,"mergeAttributes");function X(o,l){if(l===w)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),o;if(l===b||l===x){let r=o.getIndex();if(r===null){let e=[],h=o.getAttribute("position");if(h!==void 0){for(let u=0;u<h.count;u++)e.push(u);o.setIndex(e),r=o.getIndex()}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),o}let f=r.count-2,i=[];if(l===b)for(let e=1;e<=f;e++)i.push(r.getX(0)),i.push(r.getX(e)),i.push(r.getX(e+1));else for(let e=0;e<f;e++)e%2===0?(i.push(r.getX(e)),i.push(r.getX(e+1)),i.push(r.getX(e+2))):(i.push(r.getX(e+2)),i.push(r.getX(e+1)),i.push(r.getX(e)));i.length/3!==f&&console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");let c=o.clone();return c.setIndex(i),c.clearGroups(),c}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",l),o}g(X,"toTrianglesDrawMode");export{R as a,X as b};
1
+ import{V as y,W as B,u as w,v as x,w as b}from"./chunk-RNI5HW3A.js";import{a as A}from"./chunk-JU7JJ6GL.js";import{a as g}from"./chunk-BYMKRV3A.js";A();function R(o,l=!1){let r=o[0].index!==null,f=new Set(Object.keys(o[0].attributes)),i=new Set(Object.keys(o[0].morphAttributes)),c={},e={},h=o[0].morphTargetsRelative,u=new B,d=0;for(let t=0;t<o.length;++t){let s=o[t],a=0;if(r!==(s.index!==null))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."),null;for(let n in s.attributes){if(!f.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+'. All geometries must have compatible attributes; make sure "'+n+'" attribute exists among all geometries, or in none of them.'),null;c[n]===void 0&&(c[n]=[]),c[n].push(s.attributes[n]),a++}if(a!==f.size)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". Make sure all geometries have the same number of attributes."),null;if(h!==s.morphTargetsRelative)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphTargetsRelative must be consistent throughout all geometries."),null;for(let n in s.morphAttributes){if(!i.has(n))return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". .morphAttributes must be consistent throughout all geometries."),null;e[n]===void 0&&(e[n]=[]),e[n].push(s.morphAttributes[n])}if(l){let n;if(r)n=s.index.count;else if(s.attributes.position!==void 0)n=s.attributes.position.count;else return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index "+t+". The geometry must have either an index or a position attribute"),null;u.addGroup(d,n,t),d+=n}}if(r){let t=0,s=[];for(let a=0;a<o.length;++a){let n=o[a].index;for(let m=0;m<n.count;++m)s.push(n.getX(m)+t);t+=o[a].attributes.position.count}u.setIndex(s)}for(let t in c){let s=T(c[t]);if(!s)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" attribute."),null;u.setAttribute(t,s)}for(let t in e){let s=e[t][0].length;if(s===0)break;u.morphAttributes=u.morphAttributes||{},u.morphAttributes[t]=[];for(let a=0;a<s;++a){let n=[];for(let p=0;p<e[t].length;++p)n.push(e[t][p][a]);let m=T(n);if(!m)return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the "+t+" morphAttribute."),null;u.morphAttributes[t].push(m)}}return u}g(R,"mergeGeometries");function T(o){let l,r,f,i=-1,c=0;for(let d=0;d<o.length;++d){let t=o[d];if(l===void 0&&(l=t.array.constructor),l!==t.array.constructor)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."),null;if(r===void 0&&(r=t.itemSize),r!==t.itemSize)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."),null;if(f===void 0&&(f=t.normalized),f!==t.normalized)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."),null;if(i===-1&&(i=t.gpuType),i!==t.gpuType)return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."),null;c+=t.count*r}let e=new l(c),h=new y(e,r,f),u=0;for(let d=0;d<o.length;++d){let t=o[d];if(t.isInterleavedBufferAttribute){let s=u/r;for(let a=0,n=t.count;a<n;a++)for(let m=0;m<r;m++){let p=t.getComponent(a,m);h.setComponent(a+s,m,p)}}else e.set(t.array,u);u+=t.count*r}return i!==void 0&&(h.gpuType=i),h}g(T,"mergeAttributes");function X(o,l){if(l===w)return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."),o;if(l===b||l===x){let r=o.getIndex();if(r===null){let e=[],h=o.getAttribute("position");if(h!==void 0){for(let u=0;u<h.count;u++)e.push(u);o.setIndex(e),r=o.getIndex()}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),o}let f=r.count-2,i=[];if(l===b)for(let e=1;e<=f;e++)i.push(r.getX(0)),i.push(r.getX(e)),i.push(r.getX(e+1));else for(let e=0;e<f;e++)e%2===0?(i.push(r.getX(e)),i.push(r.getX(e+1)),i.push(r.getX(e+2))):(i.push(r.getX(e+2)),i.push(r.getX(e+1)),i.push(r.getX(e)));i.length/3!==f&&console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");let c=o.clone();return c.setIndex(i),c.clearGroups(),c}else return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:",l),o}g(X,"toTrianglesDrawMode");export{R as a,X as b};
@@ -406,7 +406,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src' {
406
406
  export { parseMVF, unzipMVF, enableTestMode, preloadFont, MAPPEDIN_COLORS };
407
407
  export type { MapView, MapData, MapViewState, MappedinMapLibreOverlay, TMappedinMapLibreOverlayEvents, TBlueDotEvents, TBlueDotAction, TBlueDotState, GeolocationPositionExtended, TStackedMapsEvents, TExpandOptions, TStackedMapsState, TFollowMode, TFollowCameraOptions, TEvents, TEventPayload, TFloorChangeReason, TClickPayload, THoverPayload, TShow3DMapOptions, TGetMapDataOptions, TGetMapDataWithAccessTokenOptions, TGetMapDataWithCredentialsOptions, TGetMapDataSharedOptions, TAntialiasingOptions, TMVF, PaintStyle, LineStyle, EnvMapOptions, Shading, TMVFStyleCollection, TMVFStyle, TMVFLineStringStyle, TMVFPolygonStyle, TMVFPointStyle, Environment, InsetPadding, InsetPaddingOption, OperationHours, SiblingGroup, LocationState, Text3DState, AddText3DOptions, UpdatableText3DState, InitializeText3DState, UpdateModelState, InitializeModelState, };
408
408
  export type * from 'geojson';
409
- export type { TUpdateState, TUpdateStates, TLabelState, TGeometryState, TModelState, TShapeState, TDoorsState, TImageState, TWallsState, TCameraAnimationOptions, TAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TDirectionZone, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TAddModelOptions, TAddModel, TAddImageOptions, TGetDirectionsOptions, TCollisionRankingTier, TMarkerAnchor, TDirectionInstruction, TDirectionInstructionAction, TGetState, TMarkerState, TBlueDotOptions, TBlueDotPositionUpdate, TFocusTarget, IFocusable, IAnchorable, TMapDataObjectTypes, } from '@mappedin/react-sdk/mappedin-js/src/types';
409
+ export type { TUpdateState, TUpdateStates, TLabelState, TGeometryState, TModelState, TShapeState, TDoorsState, TImageState, TWallsState, TCameraAnimationOptions, TAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TDirectionZone, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TAddModelOptions, TAddModel, TAddImageOptions, TGetDirectionsOptions, TCollisionRankingTier, TMarkerAnchor, TDirectionInstruction, TDirectionInstructionAction, TGetState, TMarkerState, TBlueDotOptions, TBlueDotPositionUpdate, TFocusTarget, IFocusable, IAnchorable, TMapDataObjectTypes, TFloorState, } from '@mappedin/react-sdk/mappedin-js/src/types';
410
410
  export { WALLS, DOORS } from '@mappedin/react-sdk/mappedin-js/src/types';
411
411
  export type { Label, Marker, Path, PathSegment, Shape, CameraTransform, Model, Image, Text3D, } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
412
412
  export type { Debug } from '@mappedin/react-sdk/mappedin-js/src/debug';
@@ -1639,7 +1639,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
1639
1639
  * // Update the color of a space to red.
1640
1640
  * map.updateState(space, { color: 'red' });
1641
1641
  */
1642
- updateState<T extends Space | Text3DView | MapObject | Label | Marker | Shape | Door | Facade | WALLS | DOORS | Model | Path | PathSegment>(target: T, state: TUpdateState<T>): any;
1642
+ updateState<T extends Space | Text3DView | MapObject | Label | Marker | Shape | Door | Facade | Floor | WALLS | DOORS | Model | Path | PathSegment>(target: T, state: TUpdateState<T>): any;
1643
1643
  updateState<T extends string & NonNullable<unknown>>(target: T, state: TUpdateStates): any;
1644
1644
  /**
1645
1645
  * Update global state of the MapView
@@ -1707,7 +1707,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
1707
1707
  * @hidden
1708
1708
  */
1709
1709
  updateWatermark(options: WatermarkUpdateOptions): void;
1710
- getState<T extends Space | Model | Text3DView | MapObject | Label | Marker | Image | Shape | Path | PathSegment | string>(target: T): TGetState<T>;
1710
+ getState<T extends Space | Model | Text3DView | MapObject | Label | Marker | Image | Shape | Path | PathSegment | Floor | string>(target: T): TGetState<T>;
1711
1711
  setHoverColor(c: string): void;
1712
1712
  getHoverColor(): string | undefined;
1713
1713
  /**
@@ -2356,6 +2356,18 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
2356
2356
  };
2357
2357
  flipImageToFaceCamera?: boolean;
2358
2358
  };
2359
+ export type TFloorState = {
2360
+ type: 'floor';
2361
+ /**
2362
+ * State of the geometry on the floor.
2363
+ */
2364
+ geometry: {
2365
+ /**
2366
+ * Opacity of the floor geometry.
2367
+ */
2368
+ opacity: number;
2369
+ };
2370
+ };
2359
2371
  export enum WALLS {
2360
2372
  Exterior = "exterior-walls",
2361
2373
  Interior = "interior-walls"
@@ -2367,9 +2379,9 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
2367
2379
  /**
2368
2380
  * The type for updating the state of map elements (colors, texts, etc.).
2369
2381
  */
2370
- export type TUpdateState<T> = T extends WALLS ? Partial<TWallsState> : T extends DOORS | Door ? Partial<TDoorsState> : T extends Model ? Partial<UpdateModelState> : T extends Marker ? Partial<TMarkerState> : T extends Label ? Partial<TLabelState> : T extends Space | MapObject | Facade ? Partial<TGeometryState> : T extends Shape ? Partial<Omit<TShapeState, 'height' | 'type'>> : T extends Text3D ? UpdatableText3DState : T extends Path ? Partial<TPathState> : T extends PathSegment ? Partial<TPathState> : T extends string ? Record<string, any> : never;
2382
+ export type TUpdateState<T> = T extends WALLS ? Partial<TWallsState> : T extends DOORS | Door ? Partial<TDoorsState> : T extends Model ? Partial<UpdateModelState> : T extends Marker ? Partial<TMarkerState> : T extends Label ? Partial<TLabelState> : T extends Space | MapObject | Facade ? Partial<TGeometryState> : T extends Floor ? Partial<TFloorState> : T extends Shape ? Partial<Omit<TShapeState, 'height' | 'type'>> : T extends Text3D ? UpdatableText3DState : T extends Path ? Partial<TPathState> : T extends PathSegment ? Partial<TPathState> : T extends string ? Record<string, any> : never;
2371
2383
  export type TUpdateStates = Partial<Omit<TGeometryState, 'interactive' | 'hoverColor' | 'type'>> | Partial<TMarkerState> | Partial<TLabelState> | Partial<TGeometryState> | Partial<TPathState>;
2372
- export type TGetState<T> = T extends WALLS ? TWallsState | undefined : T extends DOORS ? TDoorsState | undefined : T extends Marker ? TMarkerState | undefined : T extends Shape ? TShapeState | undefined : T extends Model ? TModelState | undefined : T extends Label ? TLabelState | undefined : T extends Image ? TImageState | undefined : T extends Text3D ? Text3DState | undefined : T extends Space | MapObject ? TGeometryState | undefined : T extends Path ? TPathState | undefined : T extends PathSegment ? TPathState | undefined : T extends string ? TLabelState | TGeometryState | TMarkerState | TModelState | TPathState | undefined : never;
2384
+ export type TGetState<T> = T extends WALLS ? TWallsState | undefined : T extends DOORS ? TDoorsState | undefined : T extends Marker ? TMarkerState | undefined : T extends Shape ? TShapeState | undefined : T extends Model ? TModelState | undefined : T extends Label ? TLabelState | undefined : T extends Image ? TImageState | undefined : T extends Text3D ? Text3DState | undefined : T extends Space | MapObject ? TGeometryState | undefined : T extends Floor ? TFloorState | undefined : T extends Path ? TPathState | undefined : T extends PathSegment ? TPathState | undefined : T extends string ? TLabelState | TGeometryState | TMarkerState | TModelState | TPathState | undefined : never;
2373
2385
  /**
2374
2386
  * Options for {@link Camera} animations on the map.
2375
2387
  */
@@ -2545,6 +2557,14 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
2545
2557
  * @defaultValue 0.4
2546
2558
  */
2547
2559
  farRadius?: number;
2560
+ /**
2561
+ * The zoom level at which the path should be at its near radius. This will default to the Camera maxZoomLevel.
2562
+ */
2563
+ nearZoomLevel?: number;
2564
+ /**
2565
+ * The zoom level at which the path should be at its far radius. This will default to the Camera minZoomLevel.
2566
+ */
2567
+ farZoomLevel?: number;
2548
2568
  /**
2549
2569
  * Duration of path drawing in milliseconds.
2550
2570
  *
@@ -3046,6 +3066,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
3046
3066
  }
3047
3067
 
3048
3068
  declare module '@mappedin/react-sdk/mappedin-js/src/constants' {
3069
+ export const FLOOR_HEIGHT = 10;
3049
3070
  /**
3050
3071
  * Default map options used if no custom options are provided.
3051
3072
  *
@@ -3067,6 +3088,10 @@ declare module '@mappedin/react-sdk/mappedin-js/src/constants' {
3067
3088
  mode: "default";
3068
3089
  };
3069
3090
  flipImagesToFaceCamera: true;
3091
+ multiFloorView: {
3092
+ enabled: false;
3093
+ floorHeight: number;
3094
+ };
3070
3095
  };
3071
3096
  export const EXTERIOR_WALLS_ID = "ExteriorWalls";
3072
3097
  export const WALLS_ID = "Walls";
@@ -3506,11 +3531,19 @@ declare module '@mappedin/react-sdk/mappedin-js/src/navigation' {
3506
3531
  * @default 0.25
3507
3532
  */
3508
3533
  nearRadius?: number;
3534
+ /**
3535
+ * The zoom level at which the path should be at its near radius. This will default to the Camera maxZoomLevel.
3536
+ */
3537
+ nearZoomLevel?: number;
3509
3538
  /**
3510
3539
  * The radius of the path far from the markers.
3511
3540
  * @default 1
3512
3541
  */
3513
3542
  farRadius?: number;
3543
+ /**
3544
+ * The zoom level at which the path should be at its far radius. This will default to the Camera minZoomLevel.
3545
+ */
3546
+ farZoomLevel?: number;
3514
3547
  /**
3515
3548
  * Controls whether arrows are displayed on the path.
3516
3549
  * @default false
@@ -3552,11 +3585,19 @@ declare module '@mappedin/react-sdk/mappedin-js/src/navigation' {
3552
3585
  * @default 0.25
3553
3586
  */
3554
3587
  nearRadius?: number;
3588
+ /**
3589
+ * The zoom level at which the path should be at its near radius. This will default to the Camera maxZoomLevel.
3590
+ */
3591
+ nearZoomLevel?: number;
3555
3592
  /**
3556
3593
  * The radius of the path far from the markers.
3557
3594
  * @default 1
3558
3595
  */
3559
3596
  farRadius?: number;
3597
+ /**
3598
+ * The zoom level at which the path should be at its far radius. This will default to the Camera minZoomLevel.
3599
+ */
3600
+ farZoomLevel?: number;
3560
3601
  /**
3561
3602
  * Controls whether arrows are displayed on the path.
3562
3603
  * @default false
@@ -6409,10 +6450,18 @@ declare module '@mappedin/react-sdk/geojson/src/components/path' {
6409
6450
  * The radius of the path when zoomed in
6410
6451
  */
6411
6452
  nearRadius: number;
6453
+ /**
6454
+ * The zoom level at which the near radius is applied
6455
+ */
6456
+ nearZoomLevel?: number;
6412
6457
  /**
6413
6458
  * The radius of the path when zoomed out
6414
6459
  */
6415
6460
  farRadius: number;
6461
+ /**
6462
+ * The zoom level at which the far radius is applied
6463
+ */
6464
+ farZoomLevel?: number;
6416
6465
  };
6417
6466
  export type AddPathOptions = {
6418
6467
  /**
@@ -6428,10 +6477,18 @@ declare module '@mappedin/react-sdk/geojson/src/components/path' {
6428
6477
  * The radius of the path when zoomed in
6429
6478
  */
6430
6479
  nearRadius?: number;
6480
+ /**
6481
+ * The zoom level at which the near radius is applied
6482
+ */
6483
+ nearZoomLevel?: number;
6431
6484
  /**
6432
6485
  * The radius of the path when zoomed out
6433
6486
  */
6434
6487
  farRadius?: number;
6488
+ /**
6489
+ * The zoom level at which the far radius is applied
6490
+ */
6491
+ farZoomLevel?: number;
6435
6492
  /**
6436
6493
  * The color of the path.
6437
6494
  */
@@ -6457,6 +6514,8 @@ declare module '@mappedin/react-sdk/geojson/src/components/path' {
6457
6514
  accentColor: z.ZodOptional<z.ZodString>;
6458
6515
  displayArrowsOnPath: z.ZodOptional<z.ZodBoolean>;
6459
6516
  animateArrowsOnPath: z.ZodOptional<z.ZodBoolean>;
6517
+ nearZoomLevel: z.ZodOptional<z.ZodNumber>;
6518
+ farZoomLevel: z.ZodOptional<z.ZodNumber>;
6460
6519
  }, "strip", z.ZodTypeAny, {
6461
6520
  id?: string | undefined;
6462
6521
  interactive?: boolean | undefined;
@@ -6464,7 +6523,9 @@ declare module '@mappedin/react-sdk/geojson/src/components/path' {
6464
6523
  displayArrowsOnPath?: boolean | undefined;
6465
6524
  animateArrowsOnPath?: boolean | undefined;
6466
6525
  nearRadius?: number | undefined;
6526
+ nearZoomLevel?: number | undefined;
6467
6527
  farRadius?: number | undefined;
6528
+ farZoomLevel?: number | undefined;
6468
6529
  }, {
6469
6530
  id?: string | undefined;
6470
6531
  interactive?: boolean | undefined;
@@ -6472,7 +6533,9 @@ declare module '@mappedin/react-sdk/geojson/src/components/path' {
6472
6533
  displayArrowsOnPath?: boolean | undefined;
6473
6534
  animateArrowsOnPath?: boolean | undefined;
6474
6535
  nearRadius?: number | undefined;
6536
+ nearZoomLevel?: number | undefined;
6475
6537
  farRadius?: number | undefined;
6538
+ farZoomLevel?: number | undefined;
6476
6539
  }>;
6477
6540
  export const featureSchema: z.ZodObject<{
6478
6541
  type: z.ZodEnum<["Feature"]>;
@@ -6524,6 +6587,10 @@ declare module '@mappedin/react-sdk/geojson/src/components/path' {
6524
6587
  options: AddPathOptions;
6525
6588
  nearRadius: number;
6526
6589
  farRadius: number;
6590
+ nearZoomLevel?: number;
6591
+ farZoomLevel?: number;
6592
+ nearZoomAltitude?: number;
6593
+ farZoomAltitude?: number;
6527
6594
  accentColor: string;
6528
6595
  completeFraction: number;
6529
6596
  altitudeAdjustment: number;
@@ -7127,6 +7194,10 @@ declare module '@mappedin/react-sdk/geojson/src/entities/group-container' {
7127
7194
  */
7128
7195
  altitude: number;
7129
7196
  interactive: boolean;
7197
+ /**
7198
+ * The opacity of the group container, which sets the opacity of all its children
7199
+ */
7200
+ opacity: number;
7130
7201
  };
7131
7202
  export class GroupContainerObject3D extends Object3D {
7132
7203
  childrenIds: Set<string | number>;
@@ -7139,6 +7210,9 @@ declare module '@mappedin/react-sdk/geojson/src/entities/group-container' {
7139
7210
  occluderDirty: boolean;
7140
7211
  occluderId?: number;
7141
7212
  occluderFeature?: Feature<Polygon | MultiPolygon, any>;
7213
+ opacity: number;
7214
+ /** The effective opacity of the entity after all parent containers have been considered. */
7215
+ computedOpacity: number;
7142
7216
  };
7143
7217
  components: [StackComponent?, InteractionComponent?];
7144
7218
  constructor(id: string);
@@ -7148,6 +7222,8 @@ declare module '@mappedin/react-sdk/geojson/src/entities/group-container' {
7148
7222
  setVisible(visible: boolean): void;
7149
7223
  setAltitude(altitude: number): void;
7150
7224
  get altitude(): number;
7225
+ setOpacity(opacity: number): void;
7226
+ get opacity(): number;
7151
7227
  }
7152
7228
  }
7153
7229
 
@@ -7587,6 +7663,7 @@ declare module '@mappedin/react-sdk/geojson/src/types' {
7587
7663
  tweenGroup: TweenGroup;
7588
7664
  cameraObject: Camera;
7589
7665
  naturalBearing: number;
7666
+ containerOffset: [number, number];
7590
7667
  };
7591
7668
  /**
7592
7669
  * All of the entities in the scene
@@ -8440,7 +8517,10 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
8440
8517
  /**
8441
8518
  * Project a screen coordinate to a geographic coordinate
8442
8519
  */
8443
- projectScreenXYToCoordinate: (x: number, y: number) => Position | undefined;
8520
+ projectScreenXYToCoordinate: (x: number, y: number, useWorldPlane?: boolean) => {
8521
+ coordinate: Position;
8522
+ groupContainers: GroupContainerObject3D[] | undefined;
8523
+ } | undefined;
8444
8524
  /**
8445
8525
  * Project a geographic coordinate to a screen coordinate
8446
8526
  */
@@ -8588,7 +8668,6 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
8588
8668
  }
8589
8669
 
8590
8670
  declare module '@mappedin/react-sdk/geojson/src/camera' {
8591
- import type { Mesh } from 'three';
8592
8671
  import { Vector3 } from 'three';
8593
8672
  import type { RendererCore } from '@mappedin/react-sdk/geojson/src';
8594
8673
  import type { Position as GeoJSONPosition } from 'geojson';
@@ -8631,7 +8710,7 @@ declare module '@mappedin/react-sdk/geojson/src/camera' {
8631
8710
  /**
8632
8711
  * @internal
8633
8712
  */
8634
- constructor(core: RendererCore, systems: Systems, state: RendererState, cameraPlane: Mesh);
8713
+ constructor(core: RendererCore, systems: Systems, state: RendererState);
8635
8714
  /**
8636
8715
  * The camera's current center in [longitude, latitude] degrees.
8637
8716
  */
@@ -9269,10 +9348,12 @@ declare module '@mappedin/react-sdk/geojson/src/utils' {
9269
9348
  import type { Object3D, Camera as THREECamera } from 'three';
9270
9349
  import { MercatorCoordinate } from '@mappedin/react-sdk/packages/outdoor-context-v4';
9271
9350
  import type { CustomLayerInterface } from '@mappedin/react-sdk/packages/outdoor-context-v4';
9272
- import type { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
9351
+ import { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
9273
9352
  import type { Geometry2D } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
9353
+ import type { Geometry3DTypes } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
9274
9354
  import type { Position, RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
9275
9355
  import type { Camera } from '@mappedin/react-sdk/geojson/src/camera';
9356
+ import { GeometryGroupObject3D } from '@mappedin/react-sdk/geojson/src/entities/geometry-group';
9276
9357
  export { isFiniteBox } from '@packages/internal/common';
9277
9358
  export function cartesianToGeographic(centerLat: number, centerLon: number, x: number, y: number): {
9278
9359
  lat: number;
@@ -9348,6 +9429,7 @@ declare module '@mappedin/react-sdk/geojson/src/utils' {
9348
9429
  export { transformRequest } from '@mappedin/react-sdk/geojson/src/utils/tranform-request';
9349
9430
  export { normalizeAngle } from '@mappedin/react-sdk/geojson/src/utils/math';
9350
9431
  export function shouldExpandZoomLevel(minZoomFromCurrentPanBounds: number, cameraZoomLevel: number): boolean;
9432
+ export function getGroupContainerOpacity(entity: Geometry3DTypes | GeometryGroupObject3D): number;
9351
9433
  }
9352
9434
 
9353
9435
  declare module '@mappedin/react-sdk/geojson/src/utils/constants' {
@@ -9586,64 +9668,71 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/api' {
9586
9668
  import { Text3D } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/text3d';
9587
9669
  import { PathSegment } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects/path';
9588
9670
  export class GeoJsonApi {
9589
- core: RendererCore;
9590
- mapObjects: GeojsonApiMapObject[];
9591
- id: string;
9592
- mapDataExternal: {
9593
- [key in string]: MapData;
9594
- };
9595
- mapData?: MapData;
9596
- currentMap: GeojsonApiMapObject;
9597
- hiddenOutdoorGeometries: [
9598
- BBox,
9599
- polygons: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>[],
9600
- layers: string[]
9601
- ][];
9602
- mapView: MapView;
9603
- Camera: Camera;
9604
- Labels: Labels;
9605
- Text3D: Text3D;
9606
- Markers: Markers;
9607
- Models: Models;
9608
- Paths: Paths;
9609
- Exporter: Exporter;
9610
- Navigation: Navigation;
9611
- Outdoor: Outdoor;
9612
- BlueDot: BlueDot;
9613
- Shapes: Shapes;
9614
- Style: Style;
9615
- Images: Images;
9616
- get DynamicFocus(): import("..").DynamicFocus;
9617
- get StackedMaps(): import("..").StackedMaps;
9618
- constructor(rendererCore: RendererCore, mapView: MapView);
9619
- updateState<T extends Space | Text3DView | MapObject | Label | Shape | Marker | Model | Door | Facade | WALLS | DOORS | Path | PathSegment | (string & NonNullable<unknown>)>(target: T, state: TUpdateState<T>): void;
9620
- update: () => void;
9621
- getMapDataInternal(): MapDataInternal | undefined;
9622
- getMapData(): MapData | undefined;
9623
- addMap(mapData: MapData, options?: TShow3DMapOptions): Promise<MapData>;
9624
- setFloor(floor: Floor | string, reason?: TFloorChangeReason): void;
9625
- setFloorStack(floorStack: FloorStack | string): void;
9626
- updateWatermark(options: WatermarkUpdateOptions): void;
9627
- get currentFloorStack(): FloorStack;
9628
- get currentFloor(): Floor;
9629
- getState<T extends Space | Text3DView | MapObject | Label | Marker | Image | Shape | Model | Path | PathSegment | string>(target: T): TGetState<T>;
9630
- setHoverColor(c: string): void;
9631
- getHoverColor(): string | undefined;
9632
- createCoordinateFromScreenCoordinate(x: number, y: number, floor?: Floor): Coordinate | undefined;
9633
- getScreenCoordinateFromCoordinate(coordinate: Coordinate): {
9634
- x: number;
9635
- y: number;
9636
- };
9637
- isInView(target: Space | MapObject | Label | Marker | string): boolean;
9638
- auto(): {
9639
- labels: Label[];
9640
- };
9641
- /**
9642
- * @internal
9643
- */
9644
- get __core(): RendererCore;
9645
- clear(): void;
9646
- destroy(): void;
9671
+ core: RendererCore;
9672
+ mapObjects: GeojsonApiMapObject[];
9673
+ id: string;
9674
+ mapDataExternal: {
9675
+ [key in string]: MapData;
9676
+ };
9677
+ mapData?: MapData;
9678
+ currentMap: GeojsonApiMapObject;
9679
+ hiddenOutdoorGeometries: [
9680
+ BBox,
9681
+ polygons: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>[],
9682
+ layers: string[]
9683
+ ][];
9684
+ mapView: MapView;
9685
+ Camera: Camera;
9686
+ Labels: Labels;
9687
+ Text3D: Text3D;
9688
+ Markers: Markers;
9689
+ Models: Models;
9690
+ Paths: Paths;
9691
+ Exporter: Exporter;
9692
+ Navigation: Navigation;
9693
+ Outdoor: Outdoor;
9694
+ BlueDot: BlueDot;
9695
+ Shapes: Shapes;
9696
+ Style: Style;
9697
+ Images: Images;
9698
+ get DynamicFocus(): import("..").DynamicFocus;
9699
+ get StackedMaps(): import("..").StackedMaps;
9700
+ constructor(rendererCore: RendererCore, mapView: MapView);
9701
+ updateState<T extends Space | Text3DView | MapObject | Label | Shape | Marker | Model | Door | Facade | Floor | WALLS | DOORS | Path | PathSegment | (string & NonNullable<unknown>)>(target: T, state: TUpdateState<T>): void;
9702
+ update: () => void;
9703
+ getMapDataInternal(): MapDataInternal | undefined;
9704
+ getMapData(): MapData | undefined;
9705
+ addMap(mapData: MapData, options?: TShow3DMapOptions): Promise<MapData>;
9706
+ setFloor(floor: Floor | string, reason?: TFloorChangeReason): void;
9707
+ setFloorStack(floorStack: FloorStack | string): void;
9708
+ updateWatermark(options: WatermarkUpdateOptions): void;
9709
+ get currentFloorStack(): FloorStack;
9710
+ get currentFloor(): Floor;
9711
+ getState<T extends Space | Text3DView | MapObject | Label | Marker | Image | Shape | Model | Path | PathSegment | Floor | string>(target: T): TGetState<T>;
9712
+ setHoverColor(c: string): void;
9713
+ getHoverColor(): string | undefined;
9714
+ /**
9715
+ * Create a coordinate from a screen coordinate
9716
+ * @param x - The x coordinate of the screen
9717
+ * @param y - The y coordinate of the screen
9718
+ * @param floor - The floor to use for the coordinate
9719
+ * @returns The coordinate
9720
+ */
9721
+ createCoordinateFromScreenCoordinate(x: number, y: number, floor?: Floor): Coordinate | undefined;
9722
+ getScreenCoordinateFromCoordinate(coordinate: Coordinate): {
9723
+ x: number;
9724
+ y: number;
9725
+ };
9726
+ isInView(target: Space | MapObject | Label | Marker | string): boolean;
9727
+ auto(): {
9728
+ labels: Label[];
9729
+ };
9730
+ /**
9731
+ * @internal
9732
+ */
9733
+ get __core(): RendererCore;
9734
+ clear(): void;
9735
+ destroy(): void;
9647
9736
  }
9648
9737
  }
9649
9738
 
@@ -9664,7 +9753,6 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object' {
9664
9753
  import { type GeoJsonApi } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/api';
9665
9754
  import { FloorStackObject } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-stack-object';
9666
9755
  import { DynamicFocus } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/dynamic-focus';
9667
- export const FLOOR_HEIGHT = 5;
9668
9756
  import type { Text3DState } from '@mappedin/core-sdk/src/components/text3d';
9669
9757
  export class GeojsonApiMapObject extends PubSub<{
9670
9758
  'floor-change': {
@@ -9749,7 +9837,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object' {
9749
9837
  onCreate: (labelId: string | number, text: string, target: IAnchorable) => void;
9750
9838
  labelOptions?: TAddLabelOptions;
9751
9839
  }) => void;
9752
- add: (coordinate: Position, text: string, opts?: AddLabelOptions & {
9840
+ add: (coordinate: Coordinate, text: string, opts?: AddLabelOptions & {
9753
9841
  floorId?: string;
9754
9842
  parentId?: string;
9755
9843
  verticalOffset?: number;
@@ -10045,7 +10133,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view-objects/text3d' {
10045
10133
 
10046
10134
  declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/camera' {
10047
10135
  import type { IFocusable, TCameraAnimationOptions, TCameraTarget, TFocusOnOptions, TCameraInteractionsSetOptions } from '@mappedin/react-sdk/mappedin-js/src/types';
10048
- import type { InsetPadding } from '@mappedin/core-sdk';
10136
+ import type { InsetPadding } from '@mappedin/react-sdk/geojson/src';
10049
10137
  import { Coordinate } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
10050
10138
  import type { GeoJsonApi } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/api';
10051
10139
  /**
@@ -10591,11 +10679,19 @@ declare module '@mappedin/react-sdk/mappedin-js/src/navigation/index' {
10591
10679
  * @default 0.25
10592
10680
  */
10593
10681
  nearRadius?: number;
10682
+ /**
10683
+ * The zoom level at which the path should be at its near radius. This will default to the Camera maxZoomLevel.
10684
+ */
10685
+ nearZoomLevel?: number;
10594
10686
  /**
10595
10687
  * The radius of the path far from the markers.
10596
10688
  * @default 1
10597
10689
  */
10598
10690
  farRadius?: number;
10691
+ /**
10692
+ * The zoom level at which the path should be at its far radius. This will default to the Camera minZoomLevel.
10693
+ */
10694
+ farZoomLevel?: number;
10599
10695
  /**
10600
10696
  * Controls whether arrows are displayed on the path.
10601
10697
  * @default false
@@ -10637,11 +10733,19 @@ declare module '@mappedin/react-sdk/mappedin-js/src/navigation/index' {
10637
10733
  * @default 0.25
10638
10734
  */
10639
10735
  nearRadius?: number;
10736
+ /**
10737
+ * The zoom level at which the path should be at its near radius. This will default to the Camera maxZoomLevel.
10738
+ */
10739
+ nearZoomLevel?: number;
10640
10740
  /**
10641
10741
  * The radius of the path far from the markers.
10642
10742
  * @default 1
10643
10743
  */
10644
10744
  farRadius?: number;
10745
+ /**
10746
+ * The zoom level at which the path should be at its far radius. This will default to the Camera minZoomLevel.
10747
+ */
10748
+ farZoomLevel?: number;
10645
10749
  /**
10646
10750
  * Controls whether arrows are displayed on the path.
10647
10751
  * @default false
@@ -12860,6 +12964,7 @@ declare module '@mappedin/react-sdk/geojson/src/systems/2d-occlusion/system' {
12860
12964
  import type { Position as GeoJsonPosition } from 'geojson';
12861
12965
  export function fillArrayWithColor(array: Float32Array | Uint8Array, count: number, color: number): void;
12862
12966
  export class Occlusion2DSystem {
12967
+ backgroundId: number;
12863
12968
  constructor(state: RendererState, convertTo3DMapPosition: (position: GeoJsonPosition) => Vector3, renderer?: Renderer);
12864
12969
  reserveOccluderId(): number;
12865
12970
  enable(): void;
@@ -12948,7 +13053,7 @@ declare module '@mappedin/react-sdk/geojson/src/utils/ecs' {
12948
13053
  import { Box3, Vector3 } from 'three';
12949
13054
  import type RendererCore from '@mappedin/react-sdk/geojson/src/renderer';
12950
13055
  export function getGeometryByGeometryId(state: RendererState, geometryOrGeometryId?: string | number | Record<string, any>): Geometry3DTypes | GeometryGroupObject3D | GroupContainerObject3D | Geometry2D | undefined;
12951
- export function getVerticesOfEntity(core: RendererCore, geometryOrGeometryId?: string | number | EntityId<EntityState>, vertices?: Vector3[], bounds?: Box3): Vector3[];
13056
+ export function getVerticesOfEntity(core: RendererCore, geometryOrGeometryId?: string | number | EntityId<EntityState>, vertices?: Vector3[], bounds?: Box3, zOffset?: number): Vector3[];
12952
13057
  }
12953
13058
 
12954
13059
  declare module '@mappedin/react-sdk/geojson/src/utils/get-pixel-ratio' {
@@ -13342,17 +13447,18 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-object' {
13342
13447
  }
13343
13448
 
13344
13449
  declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/utils' {
13345
- import { Coordinate, type MapObject, type Space } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
13450
+ import { Coordinate, type Floor, type MapObject, type Space } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
13346
13451
  import type { EntranceCollection, LineString, Polygon, Point, SpaceProperties, ObstructionProperties, StyleCollection, PolygonStyle, LineStringStyle, Feature, ObstructionCollection, PointStyle } from '@mappedin/mvf';
13347
13452
  import type { PolygonFeatureProperties } from '@packages/internal/mvf-utils';
13348
13453
  import type { BBox, FeatureCollection, MultiLineString } from 'geojson';
13349
- import type { LabelState, MarkerState, GeometryState, CollisionRankingTier, LineStyle, PaintStyle, Position } from '@mappedin/core-sdk';
13454
+ import type { LabelState, MarkerState, GeometryState, CollisionRankingTier, LineStyle, PaintStyle, Position, GroupContainerState } from '@mappedin/core-sdk';
13350
13455
  import { type TGeometryState, type TLabelState, type TDirectionInstructionAction, type TShow3DMapOptions, type Label, type Marker, type Model } from '@mappedin/react-sdk/mappedin-js/src';
13351
- import type { TDoorsState, TMarkerState, TWallsState } from '@mappedin/react-sdk/mappedin-js/src/types';
13456
+ import type { TDoorsState, TFloorState, TMarkerState, TWallsState } from '@mappedin/react-sdk/mappedin-js/src/types';
13352
13457
  import type { Image, Path, Shape, Text3D } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
13353
13458
  import type { GeoJsonApi } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/api';
13354
13459
  import type { Tween } from '@tweenjs/tween.js';
13355
13460
  import type { PathSegment } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects/path';
13461
+ import { FloorObject } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-object';
13356
13462
  export function convertCoordinateToPosition(coord: Coordinate): Position;
13357
13463
  export function convertPositionToCoordinate(coord: Position): Coordinate;
13358
13464
  export const cutEntrancesFromLineStrings: (lineStrings: ObstructionCollection["features"], entranceCollection: EntranceCollection["features"]) => {
@@ -13364,6 +13470,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/utils' {
13364
13470
  export function translateDoorsStateToGeojsonCore(state: Partial<TDoorsState>, currentState: Partial<GeometryState>): Partial<GeometryState>;
13365
13471
  export function translateWallsStateToGeojsonCore(state: Partial<TWallsState>, currentState: Partial<GeometryState>): Partial<GeometryState>;
13366
13472
  export function translateSpaceStateToGeojsonCore(state: Partial<TGeometryState>, currentState: Partial<GeometryState>): Partial<GeometryState>;
13473
+ export function translateFloorGeometryStateToGeojsonCore(state: TFloorState['geometry']): Partial<GroupContainerState>;
13367
13474
  export function differenceBetweenAngles(a: number, b: number): number;
13368
13475
  export function getRelativeBearing(relativeBearingAngle: number, threshold: number): TDirectionInstructionAction['bearing'];
13369
13476
  export function convertCollisionRankingTeirToNumber(tier: CollisionRankingTier): number;
@@ -13379,11 +13486,12 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/utils' {
13379
13486
  };
13380
13487
  export function groupGeometryByStyle(features: Feature<LineString | Polygon | Point, PolygonFeatureProperties<SpaceProperties | ObstructionProperties>>[], styleMap: AggregatedStyleMap): Map<WithId<PolygonStyle> | WithId<LineStringStyle> | WithId<PointStyle>, Feature<Polygon | LineString | Point, PolygonFeatureProperties<SpaceProperties | ObstructionProperties>>[]>;
13381
13488
  export function translateToCoreStyle(style: PolygonStyle | LineStringStyle, userOptions?: TShow3DMapOptions): PaintStyle | LineStyle;
13382
- export const getTargetID: <T extends Space | Shape | MapObject | Label | Text3D | Marker | Model | Path | PathSegment | Image | string>(target: T, api: GeoJsonApi) => string | undefined;
13489
+ export const getTargetID: <T extends Space | Shape | MapObject | Label | Text3D | Marker | Model | Path | PathSegment | Image | Floor | string>(target: T, api: GeoJsonApi) => string | undefined;
13383
13490
  export function tweenToPromise(tween: Tween): Promise<void>;
13384
13491
  export function getBoundingBox(geometry: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>): BBox;
13385
13492
  export function expandBbox(bbox: BBox, bboxToExpand: BBox): number[];
13386
13493
  export function unique<T>(array: T[]): T[];
13494
+ export function getTargetFloorObject(coordinate: Coordinate, floorsById: Map<string, FloorObject>, defaultFloor: FloorObject): FloorObject;
13387
13495
  }
13388
13496
 
13389
13497
  declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-stack-object' {
@@ -13514,7 +13622,7 @@ declare module '@mappedin/react-sdk/geojson/src/systems/collisions/collider-proc
13514
13622
 
13515
13623
  declare module '@mappedin/react-sdk/geojson/src/systems/interactions/system' {
13516
13624
  import { PerspectiveCamera, Vector3, Object3D, Mesh, Intersection, Object3DEventMap } from 'three';
13517
- import { Raycaster } from 'three';
13625
+ import { Raycaster, Vector2 } from 'three';
13518
13626
  import type { Geometry2D } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
13519
13627
  import { QuadTree } from '@packages/internal/quad-tree';
13520
13628
  import type { Geometry3D } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
@@ -13563,7 +13671,7 @@ declare module '@mappedin/react-sdk/geojson/src/systems/interactions/system' {
13563
13671
  entityId: Geometry2D['id'];
13564
13672
  }>;
13565
13673
  _container: HTMLCanvasElement;
13566
- constructor(container: HTMLCanvasElement, coreState: RendererState, camera: PerspectiveCamera, cameraPlane: Mesh, isUserInteracting: () => boolean);
13674
+ constructor(container: HTMLCanvasElement, coreState: RendererState, camera: PerspectiveCamera, worldPlane: Mesh, isUserInteracting: () => boolean);
13567
13675
  updateQuadtree(takeIT: QuadTree<{
13568
13676
  entityId: Geometry2D['id'];
13569
13677
  }>): void;
@@ -13571,6 +13679,8 @@ declare module '@mappedin/react-sdk/geojson/src/systems/interactions/system' {
13571
13679
  hasTouched: boolean;
13572
13680
  onPointerMoveRaf: (event: PointerEvent) => void;
13573
13681
  tapsControl: TapsController;
13682
+ getThreeDIntersectsFromXY(point: Vector2): Intersection<Object3D<Object3DEventMap>>[];
13683
+ getGroupContainerIntersectsFromXY(point: Vector2): any;
13574
13684
  handleHover(e?: PointerEvent): void;
13575
13685
  dirty3D: boolean;
13576
13686
  get _hitBoxes(): {
@@ -13586,14 +13696,12 @@ declare module '@mappedin/react-sdk/geojson/src/systems/interactions/system' {
13586
13696
  hovered2DEntity: Geometry2D | undefined;
13587
13697
  hovered3DContainers: GroupContainerObject3D[] | undefined;
13588
13698
  lastHover: Geometry3D | undefined;
13589
- containerOffset: [top: number, left: number];
13590
13699
  interaction: InteractionState;
13591
13700
  };
13592
13701
  /**
13593
13702
  * Get the current cursor type determined by the interaction.
13594
13703
  */
13595
13704
  getCursor(): CursorTypes;
13596
- resize: () => void;
13597
13705
  }
13598
13706
  export function findModelParent(object: Object3D): Object3D<Object3DEventMap> | undefined;
13599
13707
  export {};
@@ -22106,6 +22214,7 @@ declare module '@mappedin/react-sdk/geojson/src/systems/path/system' {
22106
22214
  import type { RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
22107
22215
  import type { RendererCore } from '@mappedin/react-sdk/geojson/src';
22108
22216
  import { PubSub } from '@packages/internal/common';
22217
+ import type { CameraSystem } from '@mappedin/react-sdk/geojson/src/systems/camera';
22109
22218
  /**
22110
22219
  * A system for drawing and controlling the visual state of paths
22111
22220
  */
@@ -22115,7 +22224,8 @@ declare module '@mappedin/react-sdk/geojson/src/systems/path/system' {
22115
22224
  altitudeDirty: boolean;
22116
22225
  convertTo3DMapPosition: RendererCore['convertTo3DMapPosition'];
22117
22226
  getParentContainer: RendererCore['getParentContainer'];
22118
- constructor(rendererState: RendererState, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition'], getParentContainer: RendererCore['getParentContainer']);
22227
+ convertZoomLevelToAltitude: CameraSystem['convertZoomLevelToAltitude'];
22228
+ constructor(rendererState: RendererState, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition'], getParentContainer: RendererCore['getParentContainer'], convertZoomLevelToAltitude: CameraSystem['convertZoomLevelToAltitude']);
22119
22229
  update(minZoomAltitude: number, maxZoomAltitude: number, currentZoomAltitude: number): void;
22120
22230
  }
22121
22231
  }