@mappedin/react-native-sdk 5.15.2 → 5.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -309,6 +309,27 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
309
309
  labelAllLocations(options?: TLabelAllLocationFloatingLabelOptions | TReactNativeFlatLabelAllLocations | TReactNativeFlatLabelAllLocationsLegacy): Promise<void>;
310
310
  FlatLabels: IFlatLabels<Promise<void>>;
311
311
  FloatingLabels: IFloatingLabels<Promise<void>>;
312
+ /**
313
+ * Finds the primary {@link MappedinLocation} associated with a {@link MappedinPolygon}.
314
+ * This means a location attached to the polygon that has no parents, or, if there
315
+ * are none of those, a location nearest the top of some hierarchy that does have the
316
+ * polygon attached.
317
+ *
318
+ * ```tsx
319
+ * // Log the primary location of a clicked polygon
320
+ * onClick={({ polygons }) => {
321
+ * if (polygons.length > 0) {
322
+ * for(const polygon of polygons) {
323
+ * console.log(await mapView.current?.getPrimaryLocationForPolygon(polygon));
324
+ * }
325
+ * }
326
+ * });
327
+ * ```
328
+ *
329
+ * @param polygon The {@link MappedinPolygon} you want the primary location of.
330
+ * @returns The primary {@link MappedinLocation} or null if none found.
331
+ */
332
+ getPrimaryLocationForPolygon(polygon: MappedinPolygon): Promise<MappedinLocation | null>;
312
333
  /**
313
334
  * Get all polygons that intersect with a specific coordinate.
314
335
  */
@@ -693,6 +714,27 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
693
714
  * @defaultValue false
694
715
  */
695
716
  interactive?: boolean;
717
+ /**
718
+ * @experimental
719
+ *
720
+ * @defaultValue false
721
+ * The path will be adjusted vertically to the tallest polygon altitude.
722
+ */
723
+ adjustedAltitude?: boolean;
724
+ /**
725
+ * @experimental
726
+ *
727
+ * The maximum altitude of the path in meters
728
+ * @defaultValue Infinite
729
+ */
730
+ maxAdjustedAltitude?: number;
731
+ /**
732
+ * @experimental
733
+ *
734
+ * @defaultValue -Infinite
735
+ * The minimum altitude of the path in meters
736
+ */
737
+ minAdjustedAltitude?: number;
696
738
  };
697
739
  export type TConnectionProps = {
698
740
  /**
@@ -1126,6 +1168,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
1126
1168
  * Customize the appearance of the Floating Labels and their pins
1127
1169
  */
1128
1170
  appearance?: TFloatingLabelAppearance;
1171
+ /**
1172
+ * Group analytics based ranking by {@link MappedinCategory.sortOrder} value
1173
+ */
1174
+ groupRankingByCategory?: boolean;
1129
1175
  };
1130
1176
  export type TAddFlatLabelOptions = {
1131
1177
  appearance?: TFlatLabelAppearance;
@@ -1135,6 +1181,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
1135
1181
  rank?: COLLISION_RANKING_TIERS | number;
1136
1182
  appearance?: TFloatingLabelAppearance;
1137
1183
  interactive?: boolean;
1184
+ /**
1185
+ * Group analytics based ranking by {@link MappedinCategory.sortOrder} value
1186
+ */
1187
+ groupRankingByCategory?: boolean;
1138
1188
  };
1139
1189
  export type TLabelAllLocationCommonOptions = {
1140
1190
  /**
@@ -1199,6 +1249,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
1199
1249
  export type TFloatingLabelAllLocationsOptions = TLabelAllLocationCommonOptions & {
1200
1250
  appearance?: TFloatingLabelAppearance;
1201
1251
  interactive?: boolean;
1252
+ /**
1253
+ * Group analytics based ranking by {@link MappedinCategory.sortOrder} value
1254
+ */
1255
+ groupRankingByCategory?: boolean;
1202
1256
  };
1203
1257
  /**
1204
1258
  * Options for controlling bulk location labelling
@@ -1334,6 +1388,7 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
1334
1388
  export { MappedinRankings } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinRankings';
1335
1389
  export { MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDestinationSet';
1336
1390
  export { MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
1391
+ export { MappedinLocationState } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState';
1337
1392
  /**
1338
1393
  * @internal
1339
1394
  * @hidden
@@ -1341,7 +1396,7 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
1341
1396
  * Export this only so our internal pre-built products can use it. We don't want to document it for external developers.
1342
1397
  */
1343
1398
  export { default as CustomerAnalytics } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.CustomerAnalytics';
1344
- export type { TTHINGS } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
1399
+ export type { TTHINGS, TAccessors } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
1345
1400
  export type { TMappedinDirective } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
1346
1401
  export type { IDirectionsResult } from '@mappedin/react-native-sdk/core/packages/navigator';
1347
1402
  export type { TOperationHoursMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
@@ -2003,6 +2058,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/private/contro
2003
2058
  export type TCameraAnimationOptions = TAnimationOptions;
2004
2059
  /**
2005
2060
  * The Camera object specifies a view of the map and allows manipulation of that view.
2061
+ * @internal
2006
2062
  */
2007
2063
  class CameraController extends PubSub<CAMERA_EVENT_PAYLOAD, E_CAMERA_EVENT> {
2008
2064
  #private;
@@ -2091,6 +2147,7 @@ declare module '@mappedin/react-native-sdk/wrappers/common/events' {
2091
2147
  STATE_CHANGED = "STATE_CHANGED",
2092
2148
  GET_NEAREST_NODE_BY_SCREEN_COORDINATES = "GET_NEAREST_NODE_BY_SCREEN_COORDINATES",
2093
2149
  CLICK = "CLICK",
2150
+ GET_PRIMARY_LOCATION_FOR_POLYGON = "GET_PRIMARY_LOCATION_FOR_POLYGON",
2094
2151
  GET_POLYGONS_AT_COORDINATE = "GET_POLYGONS_AT_COORDINATE",
2095
2152
  GET_POLYGONS_AT_SCREEN_COORDINATE = "GET_POLYGONS_AT_SCREEN_COORDINATE",
2096
2153
  CREATE_TOOLTIP = "CREATE_TOOLTIP",
@@ -2541,6 +2598,9 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
2541
2598
  id: string;
2542
2599
  }[];
2543
2600
  };
2601
+ [EVENT.GET_PRIMARY_LOCATION_FOR_POLYGON]: {
2602
+ polygon: TSerializedPolygon;
2603
+ };
2544
2604
  [EVENT.GET_POLYGONS_AT_COORDINATE]: {
2545
2605
  coordinate: TSerializedCoordinate;
2546
2606
  options?: TGetPolygonsAtCoordinateOptions;
@@ -2654,7 +2714,7 @@ declare module '@mappedin/react-native-sdk/wrappers/common/pub-sub' {
2654
2714
 
2655
2715
  declare module '@mappedin/react-native-sdk/core/packages/renderer/private/Core.interface' {
2656
2716
  import { Vector2, Vector3, Mesh } from 'three';
2657
- import type { TPadding, TGetPolygonsAtCoordinateOptions, TMapViewOptions, TileManager, BillboardManager, StackedMapsController } from '@mappedin/react-native-sdk/core/packages/renderer/internal';
2717
+ import type { TPadding, TGetPolygonsAtCoordinateOptions, TMapViewOptions, TileManager, BillboardManager, StackedMapsController, SmartCollisionEngine } from '@mappedin/react-native-sdk/core/packages/renderer/internal';
2658
2718
  import { BlueDotController, CameraController, STATE, MappedinMap, Mappedin, MappedinCoordinate, MappedinPolygon, MappedinNode, changeListenerFn, RENDER, INTERNAL_EVENT_PAYLOAD, INTERNAL_EVENT, TaskScheduler, SceneManager, PubSub, FlatLabel, MapObject, PathsController, FloatingLabelsController, FlatLabelsController, PolygonColorsController, MarkersController, PolygonInteractionController, TooltipsController, PolygonStatesController, PolygonImagesController, ThreeDMarkersController, EventSystem } from '@mappedin/react-native-sdk/core/packages/renderer/internal';
2659
2719
  import Tween, { Easing } from '@tweenjs/tween.js';
2660
2720
  export type TFocusOptionsLegacy = {
@@ -2877,7 +2937,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/private/Core.i
2877
2937
  bottom: number;
2878
2938
  right: number;
2879
2939
  }): void;
2880
- smartCollisionEngine: any;
2940
+ smartCollisionEngine: SmartCollisionEngine;
2881
2941
  mapObjects: Map<MappedinMap['id'], MapObject>;
2882
2942
  /**
2883
2943
  * The scene only renders when something has changed. This should be something a 3rd party developer doesn't need to worry about,
@@ -3472,6 +3532,12 @@ declare module '@mappedin/react-native-sdk/wrappers/common/controller' {
3472
3532
  }[];
3473
3533
  };
3474
3534
  };
3535
+ GET_PRIMARY_LOCATION_FOR_POLYGON: {
3536
+ msgID?: string | undefined;
3537
+ data: {
3538
+ polygon: import("./types").TSerializedPolygon;
3539
+ };
3540
+ };
3475
3541
  GET_POLYGONS_AT_COORDINATE: {
3476
3542
  msgID?: string | undefined;
3477
3543
  data: {
@@ -4334,7 +4400,7 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
4334
4400
  POLYGON = "polygons",
4335
4401
  VORTEX = "vortexes"
4336
4402
  }
4337
- type TAccessors = {
4403
+ export type TAccessors = {
4338
4404
  [MappedinCollectionType.CATEGORY]: MappedinCategory;
4339
4405
  [MappedinCollectionType.EVENT]: MappedinEvent;
4340
4406
  [MappedinCollectionType.LOCATION]: MappedinLocation;
@@ -4792,6 +4858,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolyg
4792
4858
  x: number;
4793
4859
  y: number;
4794
4860
  };
4861
+ /** Category grouped ranking determined by the {@link MappedinCategory.sortOrder} and {@link rank} for this polygon. */
4862
+ categoryRank?: number;
4795
4863
  constructor(mappedin: Mappedin, data: any);
4796
4864
  /**
4797
4865
  * Map Object that this Polygon is located on.
@@ -4954,6 +5022,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCateg
4954
5022
  id?: string | undefined;
4955
5023
  icon?: TPicture | undefined;
4956
5024
  iconFromDefaultList?: string | undefined;
5025
+ /** Category sort priority. */
5026
+ sortOrder?: number | undefined;
4957
5027
  constructor(mappedin: Mappedin, data: any);
4958
5028
  /**
4959
5029
  * Locations in this Category.
@@ -5188,6 +5258,7 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVenue
5188
5258
  name: string;
5189
5259
  code: string;
5190
5260
  }[];
5261
+ topLocations?: string[];
5191
5262
  constructor(mappedin: Mappedin, data: any);
5192
5263
  get metadata(): any;
5193
5264
  set metadata(value: any);
@@ -5234,23 +5305,23 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirec
5234
5305
  import type { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap';
5235
5306
  import type { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
5236
5307
  import type { MappedinVortex } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVortex';
5237
- interface IActionDeparture {
5308
+ export interface IActionDeparture {
5238
5309
  type: ACTION_TYPE.DEPARTURE;
5239
5310
  }
5240
- interface IActionArrival {
5311
+ export interface IActionArrival {
5241
5312
  type: ACTION_TYPE.ARRIVAL;
5242
5313
  }
5243
- interface IActionTakeVortex {
5314
+ export interface IActionTakeVortex {
5244
5315
  type: ACTION_TYPE.TAKEVORTEX;
5245
5316
  toMap: MappedinMap;
5246
5317
  fromMap: MappedinMap;
5247
5318
  }
5248
- interface IActionExitVortex {
5319
+ export interface IActionExitVortex {
5249
5320
  type: ACTION_TYPE.EXITVORTEX;
5250
5321
  toMap: MappedinMap;
5251
5322
  fromMap: MappedinMap;
5252
5323
  }
5253
- interface IActionTurn {
5324
+ export interface IActionTurn {
5254
5325
  type: ACTION_TYPE.TURN;
5255
5326
  bearing: BEARING_TYPE;
5256
5327
  referencePosition?: string;
@@ -5282,7 +5353,6 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirec
5282
5353
  constructor(mappedin: Mappedin, directions: IDirectionsResult);
5283
5354
  toJSON(): IDirectionsResult;
5284
5355
  }
5285
- export {};
5286
5356
  }
5287
5357
 
5288
5358
  declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCoordinate' {
@@ -5431,6 +5501,33 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavig
5431
5501
  }
5432
5502
  }
5433
5503
 
5504
+ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState' {
5505
+ import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
5506
+ /**
5507
+ * A location state, that can belong to any number of {@link MappedinLocation}s.
5508
+ * @class MappedinLocationState
5509
+ */
5510
+ export class MappedinLocationState {
5511
+ #private;
5512
+ /**
5513
+ * @internal
5514
+ */
5515
+ constructor(data: any);
5516
+ /**
5517
+ * @internal
5518
+ */
5519
+ static hydrate(locationStates: any): MappedinLocationState[];
5520
+ id: string;
5521
+ name: string;
5522
+ value: string;
5523
+ /**
5524
+ * @internal
5525
+ */
5526
+ static fetch(mappedin: Mappedin): Promise<MappedinLocationState[]>;
5527
+ toJSON(): any;
5528
+ }
5529
+ }
5530
+
5434
5531
  declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.CustomerAnalytics' {
5435
5532
  import { MappedinCategory, MappedinLocation, MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue';
5436
5533
  type AnalyticsOptions = {
@@ -5481,7 +5578,7 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.Cust
5481
5578
  class Analytics implements IInternalAnalytics {
5482
5579
  #private;
5483
5580
  constructor(options: AnalyticsOptions);
5484
- track(target: any, query: any): void;
5581
+ track(target: string, query: Record<string, any>): void;
5485
5582
  /**
5486
5583
  * Whenever a location is selected, you should fire this event. What "selected" means can vary by venue,
5487
5584
  * but a good rule of thumb is that you fire the event whenever you would show the location's details.
@@ -5838,6 +5935,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.
5838
5935
  opens: string;
5839
5936
  closes: string;
5840
5937
  dayOfWeek: string[];
5938
+ validFrom?: string;
5939
+ validThrough?: string;
5841
5940
  };
5842
5941
  export type TSiblingGroup = {
5843
5942
  label: string;
@@ -6367,10 +6466,9 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal' {
6367
6466
 
6368
6467
  declare module '@mappedin/react-native-sdk/core/packages/renderer' {
6369
6468
  import { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/public/MapView';
6370
- import { getVenue, getVenueMVF, getVenueBundle, Mappedin, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, MappedinDestinationSet, MappedinMap, TGetVenueBundleOptions, TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
6469
+ import { getVenue, getVenueMVF, getVenueBundle, Mappedin, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, MappedinDestinationSet, MappedinMap, TGetVenueBundleOptions, TGetVenueOptions, hydrateVenue } from '@mappedin/react-native-sdk/core/packages/get-venue';
6371
6470
  import { PositionUpdater } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
6372
6471
  import type { TMapViewOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
6373
- import { MARKER_ANCHOR } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Marker';
6374
6472
  export { E_SDK_LOG_LEVEL, setLoggerLevel } from '@mappedin/react-native-sdk/core/common/Mappedin.Logger';
6375
6473
  export type { Marker } from '@mappedin/react-native-sdk/core/packages/renderer/private/controllers/MarkersController';
6376
6474
  export type { Path } from '@mappedin/react-native-sdk/core/packages/renderer/private/controllers/PathsController';
@@ -6385,6 +6483,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer' {
6385
6483
  export type { BlueDot } from '@mappedin/react-native-sdk/core/packages/renderer/public/api/BlueDot';
6386
6484
  export type { Markers } from '@mappedin/react-native-sdk/core/packages/renderer/public/api/Markers';
6387
6485
  export type { Paths } from '@mappedin/react-native-sdk/core/packages/renderer/public/api/Paths';
6486
+ export type { StackedMaps } from '@mappedin/react-native-sdk/core/packages/renderer/public/api/StackedMaps';
6388
6487
  export type { TOOLTIP_ANCHOR } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartTooltip';
6389
6488
  export type TMappedinInitializeOutput = {
6390
6489
  mapView: MapView;
@@ -6409,8 +6508,8 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer' {
6409
6508
  * @returns
6410
6509
  */
6411
6510
  function showVenue<T extends Mappedin>(el: HTMLElement, venue: T, options?: TMapViewOptions): Promise<MapView>;
6412
- export { COLLISION_RANKING_TIERS, STATE, E_SDK_EVENT, E_BLUEDOT_STATE_REASON, E_BLUEDOT_MARKER_STATE, E_BLUEDOT_EVENT, E_BLUEDOT_STATE, E_CAMERA_EVENT, E_CAMERA_DIRECTION, SAFE_AREA_INSET_TYPE, ANIMATION_TWEENS, CAMERA_EASING_MODE, STACKED_MAPS_STATE, } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
6413
- export { getVenue, getVenueMVF, getVenueBundle, showVenue, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, PositionUpdater, MappedinDestinationSet, MARKER_ANCHOR, };
6511
+ export { COLLISION_RANKING_TIERS, STATE, E_SDK_EVENT, E_BLUEDOT_STATE_REASON, E_BLUEDOT_MARKER_STATE, E_BLUEDOT_EVENT, E_BLUEDOT_STATE, E_CAMERA_EVENT, E_CAMERA_DIRECTION, SAFE_AREA_INSET_TYPE, ANIMATION_TWEENS, CAMERA_EASING_MODE, STACKED_MAPS_STATE, MARKER_ANCHOR, GEOLOCATION_STATUS, } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
6512
+ export { getVenue, getVenueMVF, getVenueBundle, showVenue, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, hydrateVenue, PositionUpdater, MappedinDestinationSet, };
6414
6513
  import DefaultAssetManager from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.AssetManager';
6415
6514
  import { TTileManagerOptions } from '@mappedin/react-native-sdk/core/packages/renderer/internal/outdoor-context/Mappedin.TileManager';
6416
6515
  /**
@@ -6426,13 +6525,13 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer' {
6426
6525
  * @internal
6427
6526
  */
6428
6527
  DefaultAssetManager as AssetManager, };
6429
- export type { TMappedinDirective } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
6528
+ export type { TMappedinDirective, IAction, IActionArrival, IActionDeparture, IActionExitVortex, IActionTakeVortex, IActionTurn, } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
6430
6529
  export type { TMappedinInitializeOptions };
6431
6530
  export * from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
6432
6531
  export type { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/public/MapView';
6433
6532
  export type { TSafeAreaInsets, TCameraTargets, TFocusOnCameraOptions, TCameraTransform, TCameraAnimationOptions, default as CameraController, } from '@mappedin/react-native-sdk/core/packages/renderer/private/controllers/CameraController';
6434
- export type { TGetVenueOptions, TShowVenueOptions, TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineAllSearchMatch, TMappedinOfflineSearchAllOptions, } from '@mappedin/react-native-sdk/core/packages/get-venue';
6435
- export { Mappedin, MappedinDirections, MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinNavigatable, MappedinCoordinate, OfflineSearch, MAP_RENDER_MODE, setFetchFn, MappedinCollectionType, } from '@mappedin/react-native-sdk/core/packages/get-venue';
6533
+ export type { TGetVenueOptions, TGetVenueBundleOptions, TShowVenueOptions, TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineAllSearchMatch, TMappedinOfflineSearchAllOptions, TDirectionToOptions, TPicture, TImage, TColor, TGalleryImage, TOpeningHours, TPhone, TSiblingGroup, TSocial, TState, TGeoReference, TPolygonRanking, TOperationHoursMap, TAccessors, } from '@mappedin/react-native-sdk/core/packages/get-venue';
6534
+ export { Mappedin, MappedinDirections, MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinRankings, MappedinNavigatable, MappedinCoordinate, OfflineSearch, MAP_RENDER_MODE, setFetchFn, MappedinCollectionType, MappedinLocationState, } from '@mappedin/react-native-sdk/core/packages/get-venue';
6436
6535
  /**
6437
6536
  * @internal
6438
6537
  * @hidden
@@ -6442,10 +6541,23 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer' {
6442
6541
  export { CustomerAnalytics } from '@mappedin/react-native-sdk/core/packages/get-venue';
6443
6542
  export { BundleAssetManager } from '@mappedin/react-native-sdk/core/packages/renderer/bundle-asset-manager';
6444
6543
  /**
6445
- * @internal
6544
+ * @experimental
6545
+ * Enable Tile Manager to render outdoor tiles around the venue. Must be called before {@link showVenue}.
6546
+ *
6547
+ * @example
6548
+ * ```ts
6549
+ * __enableTileManager({
6550
+ * provider: new AzureOutdoorContextProvider(
6551
+ * venue.options.language,
6552
+ * 256,
6553
+ * "Your Azure API Key",
6554
+ * undefined //Omitted when using API Key.
6555
+ * )
6556
+ * });
6557
+ * ```
6446
6558
  */
6447
- export function __useSceneManager(value: boolean): void;
6448
6559
  export function __enableTileManager(options?: TTileManagerOptions): void;
6560
+ export type { TTileManagerOptions, TILE_RENDER_MODES } from '@mappedin/react-native-sdk/core/packages/renderer/internal/outdoor-context/Mappedin.TileManager';
6449
6561
  export {
6450
6562
  /**
6451
6563
  * @internal
@@ -6610,24 +6722,6 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocat
6610
6722
  }
6611
6723
  }
6612
6724
 
6613
- declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState' {
6614
- import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
6615
- /**
6616
- * A location state, that can belong to any number of {@link MappedinLocation}s.
6617
- * @class MappedinLocationState
6618
- */
6619
- export class MappedinLocationState {
6620
- #private;
6621
- constructor(data: any);
6622
- static hydrate(locationStates: any): MappedinLocationState[];
6623
- id: string;
6624
- name: string;
6625
- value: string;
6626
- static fetch(mappedin: Mappedin): Promise<MappedinLocationState[]>;
6627
- toJSON(): any;
6628
- }
6629
- }
6630
-
6631
6725
  declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme' {
6632
6726
  import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
6633
6727
  export class MappedinTheme {
@@ -8027,7 +8121,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/private/contro
8027
8121
  class PolygonColorsController {
8028
8122
  #private;
8029
8123
  constructor(core: ICore);
8030
- setPolygonColor(polygon: any, color: any): void;
8124
+ setPolygonColor(polygon: any, color: any, highlighted?: boolean): void;
8031
8125
  clearPolygonColor(polygon: any): void;
8032
8126
  clearAllPolygonColors(): void;
8033
8127
  }
@@ -8279,7 +8373,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/private/contro
8279
8373
  hasTouched: boolean;
8280
8374
  calculateMouseCoordinates: (event: any) => void;
8281
8375
  getMouseRayIntersects: (objects: Object3D | Object3D[]) => any;
8282
- detectCollidersUnderMouse: () => any;
8376
+ detectCollidersUnderMouse: () => any[];
8283
8377
  detectPolygonsUnderMouse: () => string[];
8284
8378
  detectPathsUnderMouse: () => Path[];
8285
8379
  detectMapsUnderMouse: () => any;
@@ -9171,7 +9265,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/public/MapView
9171
9265
  */
9172
9266
  options: TMapViewOptions;
9173
9267
  /**
9174
- * @hidden
9268
+ * API for showing multiple maps as a vertical stack.
9175
9269
  */
9176
9270
  StackedMaps: StackedMaps;
9177
9271
  /**
@@ -9637,13 +9731,16 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/outdo
9637
9731
  import Object3D from '@mappedin/react-native-sdk/core/packages/renderer/internal/object3D.destroy';
9638
9732
  import { Tile } from '@mappedin/react-native-sdk/core/packages/renderer/internal/outdoor-context/Mappedin.Tile';
9639
9733
  import { IOutdoorContextProvider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/outdoor-context/Outdoor-Context.provider';
9734
+ /**
9735
+ * @experimental
9736
+ */
9640
9737
  export enum TILE_RENDER_MODES {
9641
9738
  NORMAL = 0,
9642
9739
  AGGRESSIVE = 1
9643
9740
  }
9644
9741
  export const TILE_COLOR = "#f0f0f1";
9645
9742
  /**
9646
- * @internal
9743
+ * @experimental
9647
9744
  */
9648
9745
  export type TTileManagerOptions = {
9649
9746
  tileRenderMode?: TILE_RENDER_MODES;
@@ -9724,7 +9821,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/private/Core'
9724
9821
  };
9725
9822
  class Core extends PubSub<INTERNAL_EVENT_PAYLOAD, INTERNAL_EVENT> {
9726
9823
  #private;
9727
- static USE_SCENE_MANAGER: boolean;
9728
9824
  /**
9729
9825
  * Controllers
9730
9826
  */
@@ -9857,7 +9953,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/private/Core'
9857
9953
  */
9858
9954
  hideDebugUI: () => void;
9859
9955
  determineNewLabelSize: () => void;
9860
- setMap: (map: string | MappedinMap) => Promise<any>;
9956
+ setMap: (map: string | MappedinMap) => Promise<null>;
9861
9957
  getPolygonsAtScreenCoordinate: (x: number, y: number, options?: TGetPolygonsAtCoordinateOptions | undefined) => any;
9862
9958
  getPolygonsAtCoordinate: (coordinate: MappedinCoordinate, options?: TGetPolygonsAtCoordinateOptions | undefined) => any;
9863
9959
  getNearestNodeByScreenCoordinate(x: number, y: number, mapOrMapId?: MappedinMap | MappedinMap['id']): MappedinNode;
@@ -10319,6 +10415,122 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/public/api/Pat
10319
10415
  }
10320
10416
  }
10321
10417
 
10418
+ declare module '@mappedin/react-native-sdk/core/packages/renderer/public/api/StackedMaps' {
10419
+ import { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue';
10420
+ import { STACKED_MAPS_STATE, StackedMapsController, TCameraTransform } from '@mappedin/react-native-sdk/core/packages/renderer/internal';
10421
+ /**
10422
+ * API for showing multiple maps involved in a {@link Journey} as a vertical stack.
10423
+ */
10424
+ export class StackedMaps {
10425
+ #private;
10426
+ /**
10427
+ * @hidden
10428
+ */
10429
+ constructor(markersController: StackedMapsController);
10430
+ /**
10431
+ * @experimental
10432
+ * Enable Stacked Maps. A {@link Journey} must be drawn beforehand or this method will fail.
10433
+ * Use {@link showOverview} to expand the maps vertically after enabling.
10434
+ *
10435
+ * Upon enabling, map state will become {@link STATE.STACKED | STACKED} and Stacked Maps state will become {@link STACKED_MAPS_STATE.ACTIVE | ACTIVE}.
10436
+ *
10437
+ * @example
10438
+ * ```ts
10439
+ * // Create a Journey
10440
+ * const startLocation = mapView.venue.locations.find(...);
10441
+ * const endLocation = mapView.venue.locations.find(...);
10442
+ * mapView.Journey.draw(startLocation.directionsTo(endLocation));
10443
+ *
10444
+ * // Enable and show Stacked Maps Overview
10445
+ * mapView.StackedMaps.enable({
10446
+ * verticalDistanceBetweenMaps: 150
10447
+ * });
10448
+ * mapView.StackedMaps.showOverview();
10449
+ * ```
10450
+ *
10451
+ * @returns Promise when all animations are complete.
10452
+ */
10453
+ enable: (opts?: {
10454
+ verticalDistanceBetweenMaps?: number | undefined;
10455
+ } | undefined) => Promise<void>;
10456
+ /**
10457
+ * @experimental
10458
+ *
10459
+ * Disable Stacked Maps and zoom in to the current map. Stacked Maps state will become {@link STACKED_MAPS_STATE.INACTIVE | INACTIVE}.
10460
+ *
10461
+ * @example
10462
+ * ```ts
10463
+ * mapView.StackedMaps.disable();
10464
+ * ```
10465
+ *
10466
+ * @returns Promise when all animations are complete.
10467
+ */
10468
+ disable: () => Promise<void>;
10469
+ /**
10470
+ * @experimental
10471
+ *
10472
+ * Expand the maps in the current {@link Journey} vertically and add vertical paths between connections.
10473
+ * Stacked Maps must be enabled beforehand and state will become {@link STACKED_MAPS_STATE.OVERVIEW | OVERVIEW}.
10474
+ *
10475
+ * @example
10476
+ * ```ts
10477
+ * mapView.Journey.draw(...)
10478
+ * mapView.StackedMaps.enable();
10479
+ * mapView.StackedMaps.showOverview();
10480
+ * ```
10481
+ *
10482
+ * @returns Promise when all animations are complete.
10483
+ */
10484
+ showOverview: () => Promise<void>;
10485
+ /**
10486
+ * @experimental
10487
+ *
10488
+ * Scroll the camera to a specific map in {@link STACKED_MAPS_STATE.OVERVIEW | OVERVIEW} state.
10489
+ *
10490
+ * @example
10491
+ * ```ts
10492
+ * // Zoom into a clicked map if Stacked Maps is in Overview state
10493
+ * mapView.on(E_SDK_EVENT.CLICK, ({ maps }) => {
10494
+ * if (maps.length <= 0) return;
10495
+ * if (mapView.StackedMaps.state === STACKED_MAPS_STATE.OVERVIEW) {
10496
+ * mapView.StackedMaps.scrollToMap(maps[0]);
10497
+ * }
10498
+ * });
10499
+ * ```
10500
+ *
10501
+ * @returns Promise when all animations are complete.
10502
+ */
10503
+ scrollToMap: (map: MappedinMap) => Promise<void>;
10504
+ /**
10505
+ * @experimental
10506
+ *
10507
+ * Scroll and zoom into a specific map in {@link STACKED_MAPS_STATE.OVERVIEW | OVERVIEW} state. Stacked Maps state will become {@link STACKED_MAPS_STATE.ZOOMED_IN | ZOOMED_IN}.
10508
+ *
10509
+ * @example
10510
+ * ```ts
10511
+ * // Zoom into a clicked map if Stacked Maps is in Overview state
10512
+ * mapView.on(E_SDK_EVENT.CLICK, ({ maps }) => {
10513
+ * if (maps.length <= 0) return;
10514
+ * if (mapView.StackedMaps.state === STACKED_MAPS_STATE.OVERVIEW) {
10515
+ * mapView.StackedMaps.zoomInToMap(maps[0]);
10516
+ * }
10517
+ * });
10518
+ * ```
10519
+ *
10520
+ * @returns Promise when all animations are complete.
10521
+ */
10522
+ zoomInToMap: (map: MappedinMap, cameraTransform?: TCameraTransform | undefined) => Promise<void>;
10523
+ /**
10524
+ * @experimental
10525
+ *
10526
+ * Get the current state of Stacked Maps.
10527
+ *
10528
+ * @returns The current {@link STACKED_MAPS_STATE}
10529
+ */
10530
+ get state(): STACKED_MAPS_STATE;
10531
+ }
10532
+ }
10533
+
10322
10534
  declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/quad-tree' {
10323
10535
  export function contains(rect1: Rectangle, rect2: Rectangle): boolean;
10324
10536
  export function intersects(rect1: Rectangle, rect2: Rectangle): boolean;
@@ -10449,70 +10661,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
10449
10661
  }
10450
10662
  }
10451
10663
 
10452
- declare module '@mappedin/react-native-sdk/core/packages/renderer/public/api/StackedMaps' {
10453
- import { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue';
10454
- import { STACKED_MAPS_STATE, StackedMapsController, TCameraTransform } from '@mappedin/react-native-sdk/core/packages/renderer/internal';
10455
- /**
10456
- * Stacked Maps API
10457
- */
10458
- export class StackedMaps {
10459
- #private;
10460
- /**
10461
- * @hidden
10462
- */
10463
- constructor(markersController: StackedMapsController);
10464
- /**
10465
- * @experimental
10466
- * Enable stacked maps, which can be used to view maps involved in current journey as a vertical stack
10467
- *
10468
- * @returns Promise when all animations are complete
10469
- */
10470
- enable: (opts?: {
10471
- verticalDistanceBetweenMaps?: number | undefined;
10472
- } | undefined) => Promise<void>;
10473
- /**
10474
- * @experimental
10475
- *
10476
- * Disables the current stacked maps experience and returns to the current map view
10477
- *
10478
- * @returns Promise when all animations are complete
10479
- */
10480
- disable: () => Promise<void>;
10481
- /**
10482
- * @experimental
10483
- *
10484
- * Expand the maps in current journey vertically and add vertical paths
10485
- *
10486
- * @returns Promise when all animations are complete
10487
- */
10488
- showOverview: () => Promise<void>;
10489
- /**
10490
- * @experimental
10491
- *
10492
- * Scroll to a specific map in the current journey (only available in Overview mode)
10493
- *
10494
- * @returns Promise when all animations are complete
10495
- */
10496
- scrollToMap: (map: MappedinMap) => Promise<void>;
10497
- /**
10498
- * @experimental
10499
- *
10500
- * Scroll and zoom to a specific map in the current journey (only available in Overview mode)
10501
- *
10502
- * @returns Promise when all animations are complete
10503
- */
10504
- zoomInToMap: (map: MappedinMap, cameraTransform?: TCameraTransform | undefined) => Promise<void>;
10505
- /**
10506
- * @experimental
10507
- *
10508
- * Get the current state (such as Overview or Zoomed In) of Stacked Maps
10509
- *
10510
- * @returns The current {@link STACKED_MAPS_STATE}
10511
- */
10512
- get state(): STACKED_MAPS_STATE;
10513
- }
10514
- }
10515
-
10516
10664
  declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/object3D.destroy' {
10517
10665
  export default Object3D;
10518
10666
  }
@@ -10611,11 +10759,11 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/outdo
10611
10759
  * OpenStreetMap maps outdoor context class
10612
10760
  */
10613
10761
  export class OpenStreetMapOutdoorContext implements IOutdoorContextProvider {
10614
- makeURL(x: number, y: number, z: number): string;
10762
+ makeURL(x: number, y: number, z: number, customServer?: string): string;
10615
10763
  /**
10616
10764
  * Returns the appropriate tile at coordinate
10617
10765
  */
10618
- fetchTile(tileX: number, tileY: number, zoom: number, signal: any): Promise<Response>;
10766
+ fetchTile(tileX: number, tileY: number, zoom: number, signal: any, customServer?: string): Promise<Response>;
10619
10767
  }
10620
10768
  }
10621
10769