@mappedin/react-native-sdk 4.0.4-alpha.18 → 4.0.5
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/README.md +4 -13
- package/dist/index.d.ts +1495 -1336
- package/dist/index.js +190 -190
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
// ../react-native-webview
|
|
5
5
|
// ../react-native-webview/lib/WebViewTypes
|
|
6
6
|
// ../three
|
|
7
|
-
// ../three/src/math/Color
|
|
8
7
|
// ../@tweenjs/tween.js
|
|
8
|
+
// ../three/src/math/Color
|
|
9
9
|
// ../three/src/core/Object3D
|
|
10
10
|
// ../three/src/math/Vector3
|
|
11
11
|
|
|
@@ -18,10 +18,10 @@ declare module '@mappedin/react-native-sdk' {
|
|
|
18
18
|
export { getVenue, getVenueBundle } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
19
19
|
export type { TGetVenueOptions, TGetVenueBundleOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
20
20
|
export { STATE } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
21
|
-
export { COLLISION_RANKING_TIERS, MARKER_ANCHOR, E_BLUEDOT_STATE, MappedinCoordinate, labelThemes,
|
|
21
|
+
export { COLLISION_RANKING_TIERS, MARKER_ANCHOR, E_BLUEDOT_STATE, MappedinCoordinate, labelThemes, E_BLUEDOT_MARKER_STATE, E_BLUEDOT_STATE_REASON } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
22
22
|
export type { TSerializableJourneyOptions, TMiMapViewOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
23
23
|
import type { TEnableBlueDotOptions as TEnableBlueDotOptionsBase, TLabelAllLocationCommonOptions as TLabelAllLocationCommonOptionsBase } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
24
|
-
export type { TJourneyOptions, TGeolocationObject, TPathOptions, TFlatLabelPolygonOptions, TFloatingLabelPolygonOptions, TLabelAllLocationFlatLabelOptions, TLabelAllLocationFloatingLabelOptions, TFlatLabelAppearance, TFloatingLabelAppearance, TFocusOnCameraOptions, TFocusOnTargets, TCommonLabelOptions, TCameraAnimationOptions, TFocusOnOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
24
|
+
export type { TJourneyOptions, TGeolocationObject, TPathOptions, TFlatLabelPolygonOptions, TFloatingLabelPolygonOptions, TLabelAllLocationFlatLabelOptions, TLabelAllLocationFloatingLabelOptions, TFlatLabelAppearance, TFloatingLabelAppearance, TFocusOnCameraOptions, TFocusOnTargets, TCommonLabelOptions, TCameraAnimationOptions, TFocusOnOptions, TAnimatePositionOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
25
25
|
export type { TEnableBlueDotOptionsBase, TLabelAllLocationCommonOptionsBase };
|
|
26
26
|
export type TEnableBlueDotOptions = Omit<TEnableBlueDotOptionsBase, 'positionUpdater' | 'geolocationSource'>;
|
|
27
27
|
export type TLabelAllLocationCommonOptions = Omit<TLabelAllLocationCommonOptionsBase, 'sortFunction' | 'translationMap'>;
|
|
@@ -31,11 +31,11 @@ declare module '@mappedin/react-native-sdk' {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView' {
|
|
34
|
-
import React from
|
|
35
|
-
import { TMiMapViewOptions } from
|
|
36
|
-
import { STATE } from
|
|
37
|
-
import { MapViewStore } from
|
|
38
|
-
import type { TBlueDotPositionUpdate, TBlueDotStateChange, MappedinPolygon, MappedinMap, Mappedin } from
|
|
34
|
+
import React from 'react';
|
|
35
|
+
import { TMiMapViewOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
36
|
+
import { STATE } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src';
|
|
37
|
+
import { MapViewStore } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store';
|
|
38
|
+
import type { TBlueDotPositionUpdate, TBlueDotStateChange, MappedinPolygon, MappedinMap, Mappedin } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
39
39
|
export type TMiMapViewProps = {
|
|
40
40
|
/**
|
|
41
41
|
* The MapViewStore instance will be returned here
|
|
@@ -102,7 +102,7 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
102
102
|
/**
|
|
103
103
|
* @category Component
|
|
104
104
|
*/
|
|
105
|
-
export const MiMapView: React.MemoExoticComponent<React.ForwardRefExoticComponent<Pick<TMiMapViewProps, "
|
|
105
|
+
export const MiMapView: React.MemoExoticComponent<React.ForwardRefExoticComponent<Pick<TMiMapViewProps, "options" | "onFirstMapLoaded" | "onDataLoaded" | "style" | "venueData" | "onPolygonClicked" | "onBlueDotStateChanged" | "onBlueDotPositionUpdated" | "onNothingClicked" | "onMapChanged" | "onStateChanged"> & React.RefAttributes<MapViewStore>>>;
|
|
106
106
|
}
|
|
107
107
|
|
|
108
108
|
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMiniMap' {
|
|
@@ -141,12 +141,16 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMiniM
|
|
|
141
141
|
|
|
142
142
|
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store' {
|
|
143
143
|
import { MappedinController } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MappedinController';
|
|
144
|
-
import { TSerializableJourneyOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
145
|
-
import type { TGeolocationObject, TEnableBlueDotOptions, TPathOptions,
|
|
146
|
-
import { STATE, Mappedin, MappedinNode, MappedinMap, MappedinLocation, MappedinDirections, MappedinPolygon, TGetVenueOptions, TShowVenueOptions, MappedinCoordinate, MappedinDestinationSet,
|
|
144
|
+
import { TReactNativeFlatLabelAllLocations, TReactNativeFlatLabelAllLocationsLegacy, TReactNativeFlatLabelPolygonOptions, TReactNativeFloatingLabelPolygonOptions, TSerializableJourneyOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
145
|
+
import type { TGeolocationObject, TEnableBlueDotOptions, TPathOptions, TFocusOnOptions, TAnimatePositionOptions, TLabelAllLocationFloatingLabelOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
146
|
+
import { STATE, Mappedin, MappedinNode, MappedinMap, MappedinLocation, MappedinDirections, MappedinPolygon, TGetVenueOptions, TShowVenueOptions, MappedinCoordinate, MappedinDestinationSet, TCreateMarkerOptions, E_BLUEDOT_STATE } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
147
|
+
import { TFocusOptionsLegacy } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types';
|
|
147
148
|
export class MapViewStore extends MappedinController {
|
|
148
149
|
#private;
|
|
149
150
|
state: STATE;
|
|
151
|
+
/**
|
|
152
|
+
* @deprecated Use BlueDot Events instead
|
|
153
|
+
*/
|
|
150
154
|
BlueDotState: E_BLUEDOT_STATE;
|
|
151
155
|
/**
|
|
152
156
|
* @hidden
|
|
@@ -191,6 +195,10 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
191
195
|
* Set Polygon Color
|
|
192
196
|
*/
|
|
193
197
|
setPolygonColor(polygonIdOrPolygon: MappedinPolygon['id'] | MappedinPolygon, color: string, opacity?: number, textColor?: string): Promise<unknown>;
|
|
198
|
+
/**
|
|
199
|
+
* Clear Polygon Color
|
|
200
|
+
*/
|
|
201
|
+
clearPolygonColor(polygonOrPolygonId: MappedinPolygon['id'] | MappedinPolygon): Promise<unknown>;
|
|
194
202
|
/**
|
|
195
203
|
* Clear all polygon colors
|
|
196
204
|
*/
|
|
@@ -207,15 +215,6 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
207
215
|
* Remove all paths
|
|
208
216
|
*/
|
|
209
217
|
removeAllPaths(): Promise<unknown>;
|
|
210
|
-
/**
|
|
211
|
-
* Padding - this is so that the map can be positioned on a portion of the screen
|
|
212
|
-
*/
|
|
213
|
-
setSafeArea(padding: {
|
|
214
|
-
top: number;
|
|
215
|
-
bottom: number;
|
|
216
|
-
left: number;
|
|
217
|
-
right: number;
|
|
218
|
-
}): void;
|
|
219
218
|
/**
|
|
220
219
|
* Change Map/Level
|
|
221
220
|
*/
|
|
@@ -224,36 +223,92 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
224
223
|
* Gets the nearest node by screen coordinate
|
|
225
224
|
*/
|
|
226
225
|
getNearestNodeByScreenCoordinates(x: number, y: number, mapIdOrMap?: MappedinMap['id'] | MappedinMap): Promise<MappedinNode | null | undefined>;
|
|
226
|
+
labelAllLocations(options?: TLabelAllLocationFloatingLabelOptions): Promise<unknown>;
|
|
227
|
+
labelAllLocations(options?: TReactNativeFlatLabelAllLocations | TReactNativeFlatLabelAllLocationsLegacy): Promise<unknown>;
|
|
228
|
+
labelPolygon(polygonOrPolygonId: MappedinPolygon | MappedinPolygon['id'], options: TReactNativeFloatingLabelPolygonOptions): Promise<unknown>;
|
|
229
|
+
labelPolygon(polygonOrPolygonId: MappedinPolygon | MappedinPolygon['id'], options: TReactNativeFlatLabelPolygonOptions): Promise<unknown>;
|
|
230
|
+
/**
|
|
231
|
+
* @param focusOptions You should provide at least one Node or Polygon, but everything else is optional.
|
|
232
|
+
* @deprecated Use Camera.focusOn instead
|
|
233
|
+
*/
|
|
234
|
+
focusOn(focusOptions: TFocusOptionsLegacy): Promise<unknown>;
|
|
227
235
|
/**
|
|
228
|
-
*
|
|
236
|
+
* Padding - this is so that the map can be positioned on a portion of the screen
|
|
237
|
+
* @deprecated Use Camera.setSafeAreaInsets instead
|
|
229
238
|
*/
|
|
230
|
-
|
|
231
|
-
|
|
239
|
+
setSafeArea(padding: {
|
|
240
|
+
top: number;
|
|
241
|
+
bottom: number;
|
|
242
|
+
left: number;
|
|
243
|
+
right: number;
|
|
244
|
+
}): void;
|
|
232
245
|
/**
|
|
233
|
-
|
|
234
|
-
|
|
246
|
+
V3 Camera controls interface
|
|
247
|
+
*/
|
|
235
248
|
CameraControls: {
|
|
236
249
|
/**
|
|
237
250
|
* The current tilt in radians from top-down view.
|
|
251
|
+
* @deprecated Use CameraControls.tilt instead
|
|
238
252
|
*/
|
|
239
253
|
tilt: number;
|
|
240
254
|
/**
|
|
241
255
|
* @param tilt The new value to set the tilt to, in radians from top-down view.
|
|
256
|
+
* @deprecated Use CameraControls.setTilt instead
|
|
242
257
|
*/
|
|
243
258
|
setTilt: (tilt: number) => Promise<undefined>;
|
|
244
259
|
/**
|
|
245
260
|
* The current rotation in degrees from north.
|
|
261
|
+
* @deprecated Use CameraControls.rotation instead
|
|
246
262
|
*/
|
|
247
263
|
rotation: number;
|
|
248
264
|
/**
|
|
249
265
|
* @param rotation The new value to set the rotation to, in degrees from north..
|
|
266
|
+
* @deprecated Use CameraControls.setRotation instead
|
|
250
267
|
*/
|
|
251
268
|
setRotation: (rotation: number) => Promise<undefined>;
|
|
269
|
+
};
|
|
270
|
+
/**
|
|
271
|
+
Camera controls interface
|
|
272
|
+
*/
|
|
273
|
+
Camera: {
|
|
274
|
+
/**
|
|
275
|
+
* The current tilt in radians from top-down view.
|
|
276
|
+
*/
|
|
277
|
+
tilt: number;
|
|
278
|
+
/**
|
|
279
|
+
* Set Camera options immediately
|
|
280
|
+
*/
|
|
281
|
+
set: (positionOptions?: TAnimatePositionOptions | undefined) => Promise<unknown>;
|
|
282
|
+
/**
|
|
283
|
+
* The current rotation in degrees from north.
|
|
284
|
+
*/
|
|
285
|
+
rotation: number;
|
|
252
286
|
/**
|
|
253
287
|
* @param focusOptions You should provide at least one Node or Polygon, but everything else is optional.
|
|
254
288
|
*/
|
|
255
|
-
focusOn(focusOptions: TFocusOnOptions
|
|
289
|
+
focusOn(focusOptions: TFocusOnOptions & {
|
|
290
|
+
animationOptions?: TAnimatePositionOptions;
|
|
291
|
+
}): Promise<unknown>;
|
|
292
|
+
/**
|
|
293
|
+
* This is so that the map can be positioned on a portion of the screen, (example padding)
|
|
294
|
+
*/
|
|
295
|
+
setSafeAreaInsets: (safeAreaInsets: {
|
|
296
|
+
top: number;
|
|
297
|
+
bottom: number;
|
|
298
|
+
left: number;
|
|
299
|
+
right: number;
|
|
300
|
+
}) => void;
|
|
256
301
|
};
|
|
302
|
+
/**
|
|
303
|
+
* Visualize directions by drawing paths, and adding connection markers
|
|
304
|
+
* @deprecated Use {@link MapViewStore.Journey}'s draw method instead
|
|
305
|
+
*/
|
|
306
|
+
drawJourney(directions: MappedinDirections | MappedinDirections[], options?: TSerializableJourneyOptions): Promise<unknown>;
|
|
307
|
+
/**
|
|
308
|
+
* Remove any paths and markers associated with journey
|
|
309
|
+
* @deprecated Use mapView.Journey.clear instead
|
|
310
|
+
*/
|
|
311
|
+
clearJourney(): Promise<unknown>;
|
|
257
312
|
/**
|
|
258
313
|
* Journey management interface
|
|
259
314
|
*/
|
|
@@ -313,7 +368,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/index.rn' {
|
|
|
313
368
|
import { getVenue, getVenueBundle, Mappedin, MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
314
369
|
export * from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
315
370
|
export { getVenue, getVenueBundle, MappedinDestinationSet, Mappedin };
|
|
316
|
-
export { GEOLOCATION_STATUS, COLLISION_RANKING_TIERS, E_BLUEDOT_STATE_REASON, E_BLUEDOT_STATE,
|
|
371
|
+
export { GEOLOCATION_STATUS, COLLISION_RANKING_TIERS, E_BLUEDOT_STATE_REASON, E_BLUEDOT_STATE, E_BLUEDOT_MARKER_STATE, STATE, MARKER_ANCHOR, E_SDK_EVENT, E_BLUEDOT_EVENT, E_CAMERA_EVENT } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
317
372
|
export { labelThemes } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
318
373
|
export type { TBlueDotPositionUpdate, TBlueDotStateChange, TJourneyOptions, TMapViewOptions, TCreateMarkerOptions, TGeolocationObject, TPathOptions, TCommonLabelOptions, TFlatLabelOptions, TFlatLabelPolygonOptions, TFloatingLabelPolygonOptions, TLabelAllLocationCommonOptions, TLabelAllLocationFloatingLabelOptions, TLabelAllLocationFlatLabelOptions, TEnableBlueDotOptions, TFloatingLabelAppearance, TFlatLabelAppearance } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
319
374
|
export { BEARING_TYPE, ACTION_TYPE } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
@@ -340,10 +395,10 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src' {
|
|
|
340
395
|
export { getVenue, getVenueBundle } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
341
396
|
export type { TGetVenueOptions, TGetVenueBundleOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
342
397
|
export { STATE } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
343
|
-
export { COLLISION_RANKING_TIERS, MARKER_ANCHOR, E_BLUEDOT_STATE, MappedinCoordinate, labelThemes,
|
|
398
|
+
export { COLLISION_RANKING_TIERS, MARKER_ANCHOR, E_BLUEDOT_STATE, MappedinCoordinate, labelThemes, E_BLUEDOT_MARKER_STATE, E_BLUEDOT_STATE_REASON } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
344
399
|
export type { TSerializableJourneyOptions, TMiMapViewOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
345
400
|
import type { TEnableBlueDotOptions as TEnableBlueDotOptionsBase, TLabelAllLocationCommonOptions as TLabelAllLocationCommonOptionsBase } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
346
|
-
export type { TJourneyOptions, TGeolocationObject, TPathOptions, TFlatLabelPolygonOptions, TFloatingLabelPolygonOptions, TLabelAllLocationFlatLabelOptions, TLabelAllLocationFloatingLabelOptions, TFlatLabelAppearance, TFloatingLabelAppearance, TFocusOnCameraOptions, TFocusOnTargets, TCommonLabelOptions, TCameraAnimationOptions, TFocusOnOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
401
|
+
export type { TJourneyOptions, TGeolocationObject, TPathOptions, TFlatLabelPolygonOptions, TFloatingLabelPolygonOptions, TLabelAllLocationFlatLabelOptions, TLabelAllLocationFloatingLabelOptions, TFlatLabelAppearance, TFloatingLabelAppearance, TFocusOnCameraOptions, TFocusOnTargets, TCommonLabelOptions, TCameraAnimationOptions, TFocusOnOptions, TAnimatePositionOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
347
402
|
export type { TEnableBlueDotOptionsBase, TLabelAllLocationCommonOptionsBase };
|
|
348
403
|
export type TEnableBlueDotOptions = Omit<TEnableBlueDotOptionsBase, 'positionUpdater' | 'geolocationSource'>;
|
|
349
404
|
export type TLabelAllLocationCommonOptions = Omit<TLabelAllLocationCommonOptionsBase, 'sortFunction' | 'translationMap'>;
|
|
@@ -391,6 +446,21 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/Mappedi
|
|
|
391
446
|
}
|
|
392
447
|
}
|
|
393
448
|
|
|
449
|
+
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types' {
|
|
450
|
+
import { MappedinNode, MappedinPolygon } from "@mappedin/react-native-sdk/wrappers/react-native-sdk/src";
|
|
451
|
+
import { TFocusOptionsLegacy } from "@mappedin/react-native-sdk/core/packages/renderer/Core.interface";
|
|
452
|
+
export type TPolygonColorOptions = {
|
|
453
|
+
color: string;
|
|
454
|
+
opacity?: number;
|
|
455
|
+
textColor?: string;
|
|
456
|
+
};
|
|
457
|
+
export type { TFocusOptionsLegacy };
|
|
458
|
+
export type TFocusOptionsLegacySerializable = Omit<TFocusOptionsLegacy, 'nodes' | 'polygons'> & {
|
|
459
|
+
nodes: (MappedinNode | MappedinNode['id'])[];
|
|
460
|
+
polygons: (MappedinPolygon['id'] | MappedinPolygon)[];
|
|
461
|
+
};
|
|
462
|
+
}
|
|
463
|
+
|
|
394
464
|
declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
|
|
395
465
|
import type { TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types';
|
|
396
466
|
import { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
@@ -445,9 +515,10 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
|
|
|
445
515
|
bundleBaseUri?: string;
|
|
446
516
|
version?: string;
|
|
447
517
|
/**
|
|
448
|
-
*
|
|
518
|
+
* Parse bundle and convert images to blobs. Disabled in React Native
|
|
519
|
+
* @private
|
|
449
520
|
*/
|
|
450
|
-
|
|
521
|
+
shouldPopulateBundledImagesAsBlobs?: boolean;
|
|
451
522
|
};
|
|
452
523
|
/**
|
|
453
524
|
* [experimental] Fetching an offline Venue bundle
|
|
@@ -518,7 +589,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums'
|
|
|
518
589
|
/**
|
|
519
590
|
* Visual States of the BlueDot
|
|
520
591
|
*/
|
|
521
|
-
export enum
|
|
592
|
+
export enum E_BLUEDOT_MARKER_STATE {
|
|
522
593
|
/**
|
|
523
594
|
* BlueDot is hidden
|
|
524
595
|
*/
|
|
@@ -555,7 +626,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums'
|
|
|
555
626
|
}
|
|
556
627
|
export enum E_SDK_EVENT {
|
|
557
628
|
/**
|
|
558
|
-
* Emitted when the SDK state changes
|
|
629
|
+
* Emitted when the {@link STATE | SDK state} changes
|
|
559
630
|
*/
|
|
560
631
|
STATE_CHANGE = "STATE_CHANGE",
|
|
561
632
|
/**
|
|
@@ -578,7 +649,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums'
|
|
|
578
649
|
export enum E_CAMERA_EVENT {
|
|
579
650
|
USER_INTERACTION_START = "USER_INTERACTION_START",
|
|
580
651
|
USER_INTERACTION_END = "USER_INTERACTION_END",
|
|
581
|
-
|
|
652
|
+
POSITION_CHANGED = "POSITION_CHANGED",
|
|
582
653
|
ZOOM_CHANGED = "ZOOM_CHANGED",
|
|
583
654
|
ROTATION_CHANGED = "ROTATION_CHANGED",
|
|
584
655
|
TILT_CHANGED = "TILT_CHANGED"
|
|
@@ -633,18 +704,18 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
633
704
|
pulsePauseDuration?: number;
|
|
634
705
|
/**
|
|
635
706
|
* (Deprecated) alias for `nearRadius`ty
|
|
636
|
-
* @defaultValue
|
|
707
|
+
* @defaultValue 1.8
|
|
637
708
|
* @deprecated
|
|
638
709
|
*/
|
|
639
710
|
radius?: number;
|
|
640
711
|
/**
|
|
641
|
-
* Radius of path at nearest zoom
|
|
642
|
-
* @defaultValue
|
|
712
|
+
* Radius of path at nearest zoom, in metres
|
|
713
|
+
* @defaultValue 1.8
|
|
643
714
|
*/
|
|
644
715
|
nearRadius?: number;
|
|
645
716
|
/**
|
|
646
|
-
* Radius of path at furthest zoom
|
|
647
|
-
* @defaultValue
|
|
717
|
+
* Radius of path at furthest zoom, in metres
|
|
718
|
+
* @defaultValue 2.3 times nearRadius
|
|
648
719
|
*/
|
|
649
720
|
farRadius?: number;
|
|
650
721
|
/**
|
|
@@ -960,7 +1031,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
960
1031
|
*/
|
|
961
1032
|
shortText?: string;
|
|
962
1033
|
/**
|
|
963
|
-
* If Polygon is not set, this will let you add a TextLabel to another Map. Otherwise, it will use the {@link
|
|
1034
|
+
* If Polygon is not set, this will let you add a TextLabel to another Map. Otherwise, it will use the {@link currentMap}
|
|
964
1035
|
*/
|
|
965
1036
|
map?: MappedinMap | string;
|
|
966
1037
|
};
|
|
@@ -1060,7 +1131,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1060
1131
|
*/
|
|
1061
1132
|
locations?: MappedinLocation[];
|
|
1062
1133
|
/**
|
|
1063
|
-
* Custom Translation Map for {@link MappedinLocationState}
|
|
1134
|
+
* Custom Translation Map for {@link MappedinLocation.MappedinLocationState}
|
|
1064
1135
|
*/
|
|
1065
1136
|
translationMap?: {
|
|
1066
1137
|
[key in string]: string;
|
|
@@ -1110,7 +1181,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1110
1181
|
export type CAMERA_EVENT_PAYLOAD = {
|
|
1111
1182
|
[E_CAMERA_EVENT.USER_INTERACTION_START]: void;
|
|
1112
1183
|
[E_CAMERA_EVENT.USER_INTERACTION_END]: void;
|
|
1113
|
-
[E_CAMERA_EVENT.
|
|
1184
|
+
[E_CAMERA_EVENT.POSITION_CHANGED]: {
|
|
1114
1185
|
x: number;
|
|
1115
1186
|
y: number;
|
|
1116
1187
|
};
|
|
@@ -1165,10 +1236,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1165
1236
|
safeAreaInsets?: TSafeAreaInsets;
|
|
1166
1237
|
};
|
|
1167
1238
|
export type TAnimatePositionOptions = {
|
|
1168
|
-
position?: {
|
|
1169
|
-
x: number;
|
|
1170
|
-
y: number;
|
|
1171
|
-
};
|
|
1172
1239
|
zoom?: number;
|
|
1173
1240
|
tilt?: number;
|
|
1174
1241
|
rotation?: number;
|
|
@@ -1217,13 +1284,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1217
1284
|
* The current camera animation, if any. Resolves when the animation finishes.
|
|
1218
1285
|
*/
|
|
1219
1286
|
get currentAnimation(): Promise<undefined> | undefined;
|
|
1220
|
-
/**
|
|
1221
|
-
* Current Camera Position (in Mappedin Units)
|
|
1222
|
-
*/
|
|
1223
|
-
get position(): {
|
|
1224
|
-
x: number;
|
|
1225
|
-
y: number;
|
|
1226
|
-
};
|
|
1227
1287
|
/**
|
|
1228
1288
|
* Current Camera zoom (in meters)
|
|
1229
1289
|
*/
|
|
@@ -1245,11 +1305,11 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1245
1305
|
*/
|
|
1246
1306
|
set minZoom(meters: number);
|
|
1247
1307
|
/**
|
|
1248
|
-
*
|
|
1308
|
+
* Maximum distance (in meters) the camera is allowed to get to the ground.
|
|
1249
1309
|
*/
|
|
1250
1310
|
get maxZoom(): number;
|
|
1251
1311
|
/**
|
|
1252
|
-
*
|
|
1312
|
+
* Maximum distance (in meters) the camera is allowed to get to the ground.
|
|
1253
1313
|
*/
|
|
1254
1314
|
set maxZoom(meters: number);
|
|
1255
1315
|
setSafeAreaInsets(insets: {
|
|
@@ -1267,9 +1327,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1267
1327
|
/**
|
|
1268
1328
|
* Set the Camera's view to a new state.
|
|
1269
1329
|
*/
|
|
1270
|
-
set(
|
|
1271
|
-
positionOptions?: TAnimatePositionOptions;
|
|
1272
|
-
}): void;
|
|
1330
|
+
set(positionOptions?: TAnimatePositionOptions): void;
|
|
1273
1331
|
/**
|
|
1274
1332
|
* Animate the Camera's view to smoothly transition to a new state over time.
|
|
1275
1333
|
* Returns a promise that resolves when the animation completes and gets rejected if the animation is cancelled.
|
|
@@ -1290,84 +1348,93 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1290
1348
|
|
|
1291
1349
|
declare module '@mappedin/react-native-sdk/wrappers/common/events' {
|
|
1292
1350
|
export enum EVENT {
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1351
|
+
READY = "READY",
|
|
1352
|
+
LOAD_VENUE = "LOAD_VENUE",
|
|
1353
|
+
SHOW_VENUE = "SHOW_VENUE",
|
|
1354
|
+
POLYGON_CLICKED = "POLYGON_CLICKED",
|
|
1355
|
+
SET_MAP = "SET_MAP",
|
|
1356
|
+
MAP_CHANGED = "MAP_CHANGED",
|
|
1357
|
+
ROTATION_CHANGED = "ROTATION_CHANGED",
|
|
1358
|
+
TILT_CHANGED = "TILT_CHANGED",
|
|
1359
|
+
CAMERA_SET = "CAMERA_SET",
|
|
1360
|
+
/**
|
|
1361
|
+
* @deprecated
|
|
1362
|
+
*/
|
|
1363
|
+
SET_ROTATION = "SET_ROTATION",
|
|
1364
|
+
/**
|
|
1365
|
+
* @deprecated
|
|
1366
|
+
*/
|
|
1367
|
+
SET_TILT = "SET_TILT",
|
|
1368
|
+
/**
|
|
1369
|
+
* @deprecated
|
|
1370
|
+
*/
|
|
1371
|
+
FOCUS_ON_LEGACY = "FOCUS_ON_LEGACY",
|
|
1372
|
+
SET_MIN_ZOOM = "SET_MIN_ZOOM",
|
|
1373
|
+
SET_MAX_ZOOM = "SET_MAX_ZOOM",
|
|
1374
|
+
UPDATE_GEOLOCATION = "UPDATE_GEOLOCATION",
|
|
1375
|
+
FOCUS_ON = "FOCUS_ON",
|
|
1376
|
+
SET_POLYGON_COLOR = "SET_POLYGON_COLOR",
|
|
1377
|
+
SET_BACKGROUND_COLOR = "SET_BACKGROUND_COLOR",
|
|
1378
|
+
CLEAR_POLYGON_COLOR = "CLEAR_POLYGON_COLOR",
|
|
1379
|
+
CLEAR_ALL_POLYGON_COLORS = "CLEAR_ALL_POLYGON_COLORS",
|
|
1380
|
+
ADD_INTERACTIVE_POLYGON = "ADD_INTERACTIVE_POLYGON",
|
|
1381
|
+
REMOVE_INTERACTIVE_POLYGONS = "REMOVE_INTERACTIVE_POLYGONS",
|
|
1382
|
+
CAMERA_SET_SAFE_AREA_INSETS = "CAMERA_SET_SAFE_AREA_INSETS",
|
|
1383
|
+
LABEL_ALL_LOCATIONS = "LABEL_ALL_LOCATIONS",
|
|
1384
|
+
REMOVE_ALL_LABELS = "REMOVE_ALL_LABELS",
|
|
1385
|
+
LABEL_POLYGON = "LABEL_POLYGON",
|
|
1386
|
+
ENABLE_BLUE_DOT = "ENABLE_BLUE_DOT",
|
|
1387
|
+
DISABLE_BLUE_DOT = "DISABLE_BLUE_DOT",
|
|
1388
|
+
ENABLE_BEARING = "ENABLE_BEARING",
|
|
1389
|
+
GET_NEAREST_NODE = "GET_NEAREST_NODE",
|
|
1390
|
+
GET_BLUE_DOT_IS_FOLLOWING = "GET_BLUE_DOT_IS_FOLLOWING",
|
|
1391
|
+
SET_BLUE_DOT_IS_FOLLOWING = "SET_BLUE_DOT_IS_FOLLOWING",
|
|
1392
|
+
GET_DIRECTIONS = "GET_DIRECTIONS",
|
|
1393
|
+
DESTROY = "DESTROY",
|
|
1394
|
+
DATA_LOADED = "DATA_LOADED",
|
|
1395
|
+
FIRST_MAP_LOADED = "FIRST_MAP_LOADED",
|
|
1396
|
+
CREATE_MARKER = "CREATE_MARKER",
|
|
1397
|
+
REMOVE_MARKER = "REMOVE_MARKER",
|
|
1398
|
+
OVERRIDE_LOCATION = "OVERRIDE_LOCATION",
|
|
1399
|
+
SET_JOURNEY_STEP = "SET_JOURNEY_STEP",
|
|
1400
|
+
BLUEDOT_STATE_CHANGE = "BLUEDOT_STATE_CHANGE",
|
|
1401
|
+
BLUEDOT_POSITION_UPDATE = "BLUEDOT_POSITION_UPDATE",
|
|
1402
|
+
DRAW_PATH = "DRAW_PATH",
|
|
1403
|
+
REMOVE_ALL_PATHS = "REMOVE_ALL_PATHS",
|
|
1404
|
+
NOTHING_CLICKED = "NOTHING_CLICKED",
|
|
1405
|
+
SET_STATE = "SET_STATE",
|
|
1406
|
+
STATE_CHANGED = "STATE_CHANGED",
|
|
1407
|
+
DRAW_JOURNEY = "DRAW_JOURNEY",
|
|
1408
|
+
CLEAR_JOURNEY = "CLEAR_JOURNEY",
|
|
1409
|
+
SET_COOKIE = "SET_COOKIE",
|
|
1410
|
+
GET_NEAREST_NODE_BY_SCREEN_COORDINATES = "GET_NEAREST_NODE_BY_SCREEN_COORDINATES"
|
|
1344
1411
|
}
|
|
1345
1412
|
export enum WAYFINDING_EVENT {
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1413
|
+
GET_MAPS_IN_NAVIGATION = "GET_MAPS_IN_NAVIGATION",
|
|
1414
|
+
SHOW_JOURNEY = "SHOW_JOURNEY",
|
|
1415
|
+
START_NAVIGATION = "START_NAVIGATION",
|
|
1416
|
+
STOP_NAVIGATION = "STOP_NAVIGATION",
|
|
1417
|
+
SEEK = "SEEK",
|
|
1418
|
+
GET_MODE = "GET_MODE",
|
|
1419
|
+
EXIT_NAVIGATION = "EXIT_NAVIGATION"
|
|
1353
1420
|
}
|
|
1354
1421
|
export enum BRIDGE_EVENT {
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1422
|
+
READY = "READY",
|
|
1423
|
+
RESOLVE = "RESOLVE",
|
|
1424
|
+
REJECT = "REJECT"
|
|
1358
1425
|
}
|
|
1359
1426
|
export enum MINIMAP_EVENT {
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1427
|
+
LOAD_MINIMAP = "LOAD_MINIMAP",
|
|
1428
|
+
SHOW_MINIMAP = "SHOW_MINIMAP",
|
|
1429
|
+
READY = "MINIMAP_READY",
|
|
1430
|
+
CACHE_IMAGE = "CACHE_IMAGE"
|
|
1364
1431
|
}
|
|
1365
1432
|
}
|
|
1366
1433
|
|
|
1367
1434
|
declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
1368
|
-
import { IDirectionsResult, MappedinMap, MappedinNode, TBlueDotPositionUpdate, TBlueDotStateChange, TGetVenueOptions,
|
|
1435
|
+
import { IDirectionsResult, MappedinMap, MappedinNode, TBlueDotPositionUpdate, TBlueDotStateChange, TGetVenueOptions, TFloatingLabelPolygonOptions, TFlatLabelPolygonOptions, TAnimatePositionOptions, TPathOptions, TShowVenueOptions, STATE, TGeolocationObject, TEnableBlueDotOptions, MappedinLocation, TLabelAllLocationFloatingLabelOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
1369
1436
|
import { TMiMapViewOptions } from '@mappedin/react-native-sdk/wrappers/common/types';
|
|
1370
|
-
import { BRIDGE_EVENT, EVENT, MINIMAP_EVENT } from '@mappedin/react-native-sdk/wrappers/common';
|
|
1437
|
+
import { BRIDGE_EVENT, EVENT, MINIMAP_EVENT, TFocusOnOptionsLegacySerializable, TReactNativeFlatLabelAllLocationsLegacy, TReactNativeFlatLabelAllLocations } from '@mappedin/react-native-sdk/wrappers/common';
|
|
1371
1438
|
import { TSerializableJourneyOptions, TFocusOnOptionsSerializable, TSerializedLocation, TSerializedNode, TSerializedPolygon } from '@mappedin/react-native-sdk/wrappers/common/types';
|
|
1372
1439
|
export type BRIDGE_EVENT_PAYLOADS = {
|
|
1373
1440
|
[BRIDGE_EVENT.READY]: {
|
|
@@ -1479,6 +1546,12 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1479
1546
|
mapId: string;
|
|
1480
1547
|
};
|
|
1481
1548
|
};
|
|
1549
|
+
[EVENT.CAMERA_SET]: {
|
|
1550
|
+
msgID: string;
|
|
1551
|
+
data: {
|
|
1552
|
+
positionOptions?: TAnimatePositionOptions;
|
|
1553
|
+
};
|
|
1554
|
+
};
|
|
1482
1555
|
[EVENT.SET_ROTATION]: {
|
|
1483
1556
|
msgID: string;
|
|
1484
1557
|
data: {
|
|
@@ -1491,12 +1564,35 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1491
1564
|
tilt: number;
|
|
1492
1565
|
};
|
|
1493
1566
|
};
|
|
1567
|
+
[EVENT.CAMERA_SET_SAFE_AREA_INSETS]: {
|
|
1568
|
+
msgID: string;
|
|
1569
|
+
data: {
|
|
1570
|
+
safeAreaInsets: {
|
|
1571
|
+
top: number;
|
|
1572
|
+
bottom: number;
|
|
1573
|
+
left: number;
|
|
1574
|
+
right: number;
|
|
1575
|
+
};
|
|
1576
|
+
};
|
|
1577
|
+
};
|
|
1578
|
+
[EVENT.CLEAR_POLYGON_COLOR]: {
|
|
1579
|
+
msgID: string;
|
|
1580
|
+
data: {
|
|
1581
|
+
polygonId: string;
|
|
1582
|
+
};
|
|
1583
|
+
};
|
|
1494
1584
|
[EVENT.FOCUS_ON]: {
|
|
1495
1585
|
msgID: string;
|
|
1496
1586
|
data: {
|
|
1497
1587
|
focusOptions: TFocusOnOptionsSerializable;
|
|
1498
1588
|
};
|
|
1499
1589
|
};
|
|
1590
|
+
[EVENT.FOCUS_ON_LEGACY]: {
|
|
1591
|
+
msgID: string;
|
|
1592
|
+
data: {
|
|
1593
|
+
focusOptions: TFocusOnOptionsLegacySerializable;
|
|
1594
|
+
};
|
|
1595
|
+
};
|
|
1500
1596
|
[EVENT.SET_POLYGON_COLOR]: {
|
|
1501
1597
|
msgID: string;
|
|
1502
1598
|
data: {
|
|
@@ -1526,25 +1622,12 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1526
1622
|
msgID: string;
|
|
1527
1623
|
data?: null;
|
|
1528
1624
|
};
|
|
1529
|
-
[EVENT.SET_SAFE_AREA]: {
|
|
1530
|
-
msgID: string;
|
|
1531
|
-
data?: {
|
|
1532
|
-
padding: {
|
|
1533
|
-
top: number;
|
|
1534
|
-
bottom: number;
|
|
1535
|
-
left: number;
|
|
1536
|
-
right: number;
|
|
1537
|
-
};
|
|
1538
|
-
};
|
|
1539
|
-
};
|
|
1540
1625
|
[EVENT.LABEL_ALL_LOCATIONS]: {
|
|
1541
1626
|
msgID: string;
|
|
1542
1627
|
data: {
|
|
1543
|
-
options
|
|
1544
|
-
locations?: string[];
|
|
1545
|
-
}) | (Omit<TLabelAllLocationFloatingLabelOptions, 'locations'> & {
|
|
1628
|
+
options?: (Omit<TReactNativeFlatLabelAllLocations, 'locations'> | Omit<TLabelAllLocationFloatingLabelOptions, 'locations'> | Omit<TReactNativeFlatLabelAllLocationsLegacy, 'locations'>) & {
|
|
1546
1629
|
locations?: string[];
|
|
1547
|
-
}
|
|
1630
|
+
};
|
|
1548
1631
|
};
|
|
1549
1632
|
};
|
|
1550
1633
|
[EVENT.REMOVE_ALL_LABELS]: {
|
|
@@ -1555,7 +1638,12 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1555
1638
|
msgID: string;
|
|
1556
1639
|
data: {
|
|
1557
1640
|
polygonId: string;
|
|
1558
|
-
options: TFloatingLabelPolygonOptions | TFlatLabelPolygonOptions
|
|
1641
|
+
options: (TFloatingLabelPolygonOptions | TFlatLabelPolygonOptions) & {
|
|
1642
|
+
/**
|
|
1643
|
+
* @deprecated
|
|
1644
|
+
*/
|
|
1645
|
+
legacyLabels?: boolean;
|
|
1646
|
+
};
|
|
1559
1647
|
};
|
|
1560
1648
|
};
|
|
1561
1649
|
[EVENT.ENABLE_BLUE_DOT]: {
|
|
@@ -1586,10 +1674,30 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1586
1674
|
msgID: string;
|
|
1587
1675
|
data: null;
|
|
1588
1676
|
};
|
|
1677
|
+
[EVENT.SET_MIN_ZOOM]: {
|
|
1678
|
+
msgID: string;
|
|
1679
|
+
data: {
|
|
1680
|
+
zoomLevel: number;
|
|
1681
|
+
};
|
|
1682
|
+
};
|
|
1683
|
+
[EVENT.SET_MAX_ZOOM]: {
|
|
1684
|
+
msgID: string;
|
|
1685
|
+
data: {
|
|
1686
|
+
zoomLevel: number;
|
|
1687
|
+
};
|
|
1688
|
+
};
|
|
1589
1689
|
[EVENT.CREATE_MARKER]: {
|
|
1590
1690
|
msgID: string;
|
|
1591
1691
|
data: {
|
|
1592
|
-
|
|
1692
|
+
nodeOrCoordinate: {
|
|
1693
|
+
type: 'Node';
|
|
1694
|
+
id: string;
|
|
1695
|
+
} | {
|
|
1696
|
+
type: 'Coordinate';
|
|
1697
|
+
mapId: string;
|
|
1698
|
+
lat: number;
|
|
1699
|
+
lon: number;
|
|
1700
|
+
};
|
|
1593
1701
|
contentHtml: string;
|
|
1594
1702
|
options: any;
|
|
1595
1703
|
};
|
|
@@ -1652,13 +1760,18 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1652
1760
|
}
|
|
1653
1761
|
|
|
1654
1762
|
declare module '@mappedin/react-native-sdk/wrappers/common/types' {
|
|
1655
|
-
import
|
|
1763
|
+
import { TFocusOptionsLegacy } from '@mappedin/react-native-sdk/core/packages/renderer/Core.interface';
|
|
1764
|
+
import type { MappedinNode, MappedinPolygon, TFocusOnOptions, TJourneyOptions, TFloatingLabelPolygonOptions, TFlatLabelPolygonOptions, TShowVenueOptions, TLabelAllLocationFlatLabelOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
1656
1765
|
export type TFocusOnOptionsSerializable = Omit<TFocusOnOptions, 'targets'> & {
|
|
1657
1766
|
targets: {
|
|
1658
1767
|
nodes?: MappedinNode['id'][];
|
|
1659
1768
|
polygons?: MappedinPolygon['id'][];
|
|
1660
1769
|
};
|
|
1661
1770
|
};
|
|
1771
|
+
export type TFocusOnOptionsLegacySerializable = Omit<TFocusOptionsLegacy, 'nodes' | 'polygons'> & {
|
|
1772
|
+
nodes?: MappedinNode['id'][];
|
|
1773
|
+
polygons?: MappedinPolygon['id'][];
|
|
1774
|
+
};
|
|
1662
1775
|
export type TSerializedNode = {
|
|
1663
1776
|
id: string;
|
|
1664
1777
|
type: 'Node';
|
|
@@ -1698,6 +1811,30 @@ declare module '@mappedin/react-native-sdk/wrappers/common/types' {
|
|
|
1698
1811
|
noAuth?: boolean;
|
|
1699
1812
|
language?: string;
|
|
1700
1813
|
};
|
|
1814
|
+
export type TReactNativeFloatingLabelPolygonOptions = TFloatingLabelPolygonOptions & {
|
|
1815
|
+
/**
|
|
1816
|
+
* @deprecated
|
|
1817
|
+
*/
|
|
1818
|
+
legacyLabels?: false | undefined;
|
|
1819
|
+
flatLabels?: false | undefined;
|
|
1820
|
+
};
|
|
1821
|
+
export type TReactNativeFlatLabelPolygonOptions = TFlatLabelPolygonOptions & ({
|
|
1822
|
+
/**
|
|
1823
|
+
* @deprecated
|
|
1824
|
+
*/
|
|
1825
|
+
legacyLabels: true;
|
|
1826
|
+
} | {
|
|
1827
|
+
flatLabels: true;
|
|
1828
|
+
});
|
|
1829
|
+
export type TReactNativeFlatLabelAllLocationsLegacy = Omit<TLabelAllLocationFlatLabelOptions, 'flatLabels'> & {
|
|
1830
|
+
/**
|
|
1831
|
+
* @deprecated
|
|
1832
|
+
*/
|
|
1833
|
+
legacyLabels: true;
|
|
1834
|
+
};
|
|
1835
|
+
export type TReactNativeFlatLabelAllLocations = TLabelAllLocationFlatLabelOptions & {
|
|
1836
|
+
flatLabels: true;
|
|
1837
|
+
};
|
|
1701
1838
|
}
|
|
1702
1839
|
|
|
1703
1840
|
declare module '@mappedin/react-native-sdk/wrappers/common/pub-sub' {
|
|
@@ -1712,752 +1849,967 @@ declare module '@mappedin/react-native-sdk/wrappers/common/pub-sub' {
|
|
|
1712
1849
|
}
|
|
1713
1850
|
}
|
|
1714
1851
|
|
|
1715
|
-
declare module '@mappedin/react-native-sdk/core/packages/
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
headers?: {
|
|
1726
|
-
[key in string]: string;
|
|
1727
|
-
};
|
|
1728
|
-
venue: string;
|
|
1729
|
-
things?: any;
|
|
1730
|
-
};
|
|
1731
|
-
export type TGetVenueOptionsInternal = {
|
|
1732
|
-
baseUrl?: string;
|
|
1733
|
-
supplementaryUrl?: string;
|
|
1734
|
-
noAuth?: boolean;
|
|
1735
|
-
includeHidden?: boolean;
|
|
1736
|
-
apiGateway?: string;
|
|
1737
|
-
authorization?: string;
|
|
1738
|
-
/**
|
|
1739
|
-
* @deprecated 2D support will be removed in the future
|
|
1740
|
-
*/
|
|
1741
|
-
do2D?: boolean;
|
|
1742
|
-
things?: any;
|
|
1743
|
-
headers?: any;
|
|
1744
|
-
};
|
|
1745
|
-
}
|
|
1746
|
-
|
|
1747
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
|
|
1748
|
-
import { Navigator } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
1749
|
-
import type { TGetVenueOptions, TGetVenueOptionsInternal } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types';
|
|
1750
|
-
import { MappedinCategory } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCategory';
|
|
1751
|
-
import { MappedinEvent } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinEvent';
|
|
1752
|
-
import { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
1753
|
-
import { MappedinLocationRankings } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationRankings';
|
|
1754
|
-
import { MappedinLocationState } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState';
|
|
1755
|
-
import { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap';
|
|
1756
|
-
import { MappedinMapGroup } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMapGroup';
|
|
1757
|
-
import { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
|
|
1758
|
-
import { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
|
|
1759
|
-
import { MappedinRankings } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinRankings';
|
|
1760
|
-
import { MappedinTheme } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme';
|
|
1761
|
-
import { MappedinVenue } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVenue';
|
|
1762
|
-
import { MappedinVortex } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVortex';
|
|
1763
|
-
export const defaultOptions: TGetVenueOptionsInternal & TGetVenueOptions;
|
|
1764
|
-
export enum CollectionType {
|
|
1765
|
-
CATEGORY = "categories",
|
|
1766
|
-
EVENT = "events",
|
|
1767
|
-
LOCATION = "locations",
|
|
1768
|
-
MAPGROUP = "mapGroups",
|
|
1769
|
-
MAP = "maps",
|
|
1770
|
-
NODE = "nodes",
|
|
1771
|
-
POLYGON = "polygons",
|
|
1772
|
-
VORTEX = "vortexes"
|
|
1773
|
-
}
|
|
1774
|
-
type TAccessors = {
|
|
1775
|
-
[CollectionType.CATEGORY]: MappedinCategory;
|
|
1776
|
-
[CollectionType.EVENT]: MappedinEvent;
|
|
1777
|
-
[CollectionType.LOCATION]: MappedinLocation;
|
|
1778
|
-
[CollectionType.MAPGROUP]: MappedinMapGroup;
|
|
1779
|
-
[CollectionType.MAP]: MappedinMap;
|
|
1780
|
-
[CollectionType.NODE]: MappedinNode;
|
|
1781
|
-
[CollectionType.POLYGON]: MappedinPolygon;
|
|
1782
|
-
[CollectionType.VORTEX]: MappedinVortex;
|
|
1783
|
-
};
|
|
1784
|
-
const THINGS: {
|
|
1785
|
-
categories: typeof MappedinCategory;
|
|
1786
|
-
locations: typeof MappedinLocation;
|
|
1787
|
-
vortexes: typeof MappedinVortex;
|
|
1788
|
-
maps: typeof MappedinMap;
|
|
1789
|
-
nodes: typeof MappedinNode;
|
|
1790
|
-
polygons: typeof MappedinPolygon;
|
|
1791
|
-
venue: typeof MappedinVenue;
|
|
1792
|
-
events: typeof MappedinEvent;
|
|
1793
|
-
mapGroups: typeof MappedinMapGroup;
|
|
1794
|
-
themes: typeof MappedinTheme;
|
|
1795
|
-
locationStates: typeof MappedinLocationState;
|
|
1796
|
-
locationRankings: typeof MappedinLocationRankings;
|
|
1797
|
-
rankings: typeof MappedinRankings;
|
|
1798
|
-
};
|
|
1799
|
-
export type TTHINGS = keyof typeof THINGS;
|
|
1800
|
-
export class Mappedin {
|
|
1801
|
-
#private;
|
|
1802
|
-
perspective: any;
|
|
1803
|
-
things: any;
|
|
1804
|
-
options: any;
|
|
1805
|
-
updatedAt?: string;
|
|
1806
|
-
categories: MappedinCategory[];
|
|
1807
|
-
locations: MappedinLocation[];
|
|
1808
|
-
vortexes: MappedinVortex[];
|
|
1809
|
-
maps: MappedinMap[];
|
|
1810
|
-
nodes: MappedinNode[];
|
|
1811
|
-
polygons: MappedinPolygon[];
|
|
1812
|
-
venue: MappedinVenue;
|
|
1813
|
-
events: MappedinEvent[];
|
|
1814
|
-
mapGroups: MappedinMapGroup[];
|
|
1815
|
-
themes: MappedinTheme[];
|
|
1816
|
-
locationStates: MappedinLocationState[];
|
|
1852
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/Core.interface' {
|
|
1853
|
+
import { MappedinMap, Mappedin, MappedinCoordinate, MappedinPolygon, MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
1854
|
+
import CameraControls from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.CameraControls';
|
|
1855
|
+
import { Vector2, Vector3 } from 'three';
|
|
1856
|
+
import { changeListenerFn, TMapViewOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
1857
|
+
import RENDER from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks';
|
|
1858
|
+
import { INTERNAL_EVENT_PAYLOAD } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
1859
|
+
import { TPadding } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
1860
|
+
import Tween, { Easing } from '@tweenjs/tween.js';
|
|
1861
|
+
export type TFocusOptionsLegacy = {
|
|
1817
1862
|
/**
|
|
1818
|
-
*
|
|
1819
|
-
* TODO: remove when we know that nobody is using this
|
|
1863
|
+
* An array of Nodes to focus in on
|
|
1820
1864
|
*/
|
|
1821
|
-
|
|
1822
|
-
rankings?: MappedinRankings;
|
|
1865
|
+
nodes?: (MappedinNode | MappedinNode['id'])[];
|
|
1823
1866
|
/**
|
|
1824
|
-
*
|
|
1825
|
-
* @internal
|
|
1867
|
+
* An array of Polygons to focus on. It's the center of the bounds of all Polygons, designed to fit everything into view.
|
|
1826
1868
|
*/
|
|
1827
|
-
|
|
1828
|
-
[id: string]: MappedinCategory;
|
|
1829
|
-
};
|
|
1830
|
-
/**
|
|
1831
|
-
* @hidden
|
|
1832
|
-
* @internal
|
|
1833
|
-
*/
|
|
1834
|
-
_locationsById?: {
|
|
1835
|
-
[id: string]: MappedinLocation;
|
|
1836
|
-
};
|
|
1837
|
-
/**
|
|
1838
|
-
* @hidden
|
|
1839
|
-
* @internal
|
|
1840
|
-
*/
|
|
1841
|
-
_vortexesById?: {
|
|
1842
|
-
[id: string]: MappedinVortex;
|
|
1843
|
-
};
|
|
1844
|
-
/**
|
|
1845
|
-
* @hidden
|
|
1846
|
-
* @internal
|
|
1847
|
-
*/
|
|
1848
|
-
_mapsById?: {
|
|
1849
|
-
[id: string]: MappedinMap;
|
|
1850
|
-
};
|
|
1869
|
+
polygons?: (MappedinPolygon | MappedinPolygon['id'])[];
|
|
1851
1870
|
/**
|
|
1852
|
-
*
|
|
1853
|
-
* @
|
|
1871
|
+
* The duration the focus animation should last for.
|
|
1872
|
+
* @defaultValue `100`
|
|
1854
1873
|
*/
|
|
1855
|
-
|
|
1856
|
-
[id: string]: MappedinNode;
|
|
1857
|
-
};
|
|
1874
|
+
duration?: number;
|
|
1858
1875
|
/**
|
|
1859
|
-
*
|
|
1860
|
-
* @
|
|
1876
|
+
* Whether to zoom the camera in or out, or just pan it.
|
|
1877
|
+
* @defaultValue `true`
|
|
1861
1878
|
*/
|
|
1862
|
-
|
|
1863
|
-
[id: string]: MappedinPolygon;
|
|
1864
|
-
};
|
|
1879
|
+
changeZoom?: boolean;
|
|
1865
1880
|
/**
|
|
1866
|
-
*
|
|
1867
|
-
* @internal
|
|
1881
|
+
* The animation curve to use for zooming in. Uses the animateCamera one by default.
|
|
1868
1882
|
*/
|
|
1869
|
-
|
|
1870
|
-
[id: string]: MappedinEvent;
|
|
1871
|
-
};
|
|
1883
|
+
curve?: typeof Easing;
|
|
1872
1884
|
/**
|
|
1873
|
-
*
|
|
1874
|
-
* @internal
|
|
1885
|
+
* Camera tilt between 0 (top-down) to 1 (from the side)
|
|
1875
1886
|
*/
|
|
1876
|
-
|
|
1877
|
-
[id: string]: MappedinMapGroup;
|
|
1878
|
-
};
|
|
1887
|
+
tilt?: number;
|
|
1879
1888
|
/**
|
|
1880
|
-
*
|
|
1881
|
-
* @internal
|
|
1889
|
+
* Rotation in degrees
|
|
1882
1890
|
*/
|
|
1883
|
-
|
|
1884
|
-
[id: string]: MappedinLocationState;
|
|
1885
|
-
};
|
|
1891
|
+
rotation?: number;
|
|
1886
1892
|
/**
|
|
1887
|
-
*
|
|
1888
|
-
* @internal
|
|
1893
|
+
* You can overide the {{#crossLink "MapView/focusZoomFactor:property"}}{{/crossLink}} for a specific {{#crossLink "MapView/focusOn:method"}}{{/crossLink}} call, rather than globally, if you like.
|
|
1889
1894
|
*/
|
|
1890
|
-
|
|
1891
|
-
[id: string]: MappedinLocationRankings;
|
|
1892
|
-
};
|
|
1895
|
+
focusZoomFactor?: number;
|
|
1893
1896
|
/**
|
|
1894
|
-
*
|
|
1895
|
-
* @
|
|
1897
|
+
* Sets a floor for how close you can zoom in on the scene. If it's lower than mapView.controls.minZoom, it's ignored.
|
|
1898
|
+
* @defaultValue: 0
|
|
1896
1899
|
*/
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
+
minZoom?: number;
|
|
1901
|
+
padding?: TPadding;
|
|
1902
|
+
points?: any[];
|
|
1903
|
+
};
|
|
1904
|
+
export interface ICore {
|
|
1905
|
+
new (container: HTMLElement, venue: Mappedin, options?: TMapViewOptions): ICore;
|
|
1900
1906
|
/**
|
|
1901
|
-
* @hidden
|
|
1902
1907
|
* @internal
|
|
1903
1908
|
*/
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1909
|
+
currentScale: number;
|
|
1910
|
+
imageFlippingEnabled: boolean;
|
|
1911
|
+
imageFlippingCache: any;
|
|
1912
|
+
cachedPadding: any;
|
|
1913
|
+
polygonMeshesById: any;
|
|
1914
|
+
textLabelsByPolygonId: any;
|
|
1915
|
+
renderer: any;
|
|
1916
|
+
scene: any;
|
|
1917
|
+
cameraParameters: Vector2;
|
|
1918
|
+
resolution: Vector2;
|
|
1919
|
+
determineNewLabelSize: any;
|
|
1920
|
+
on<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
1921
|
+
off<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
1922
|
+
publish<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, payload?: INTERNAL_EVENT_PAYLOAD[EVENT_NAME]): void;
|
|
1907
1923
|
/**
|
|
1908
|
-
*
|
|
1909
|
-
*
|
|
1924
|
+
* Manual camera controls for MapView. Generally you should be using the functions on MapView like {{#crossLink "MapView/focusOn:method"}}{{/crossLink}},
|
|
1925
|
+
* but if you have some cool animations in mind, you can do it with the {{#crossLink "CameraControls"}}{{/crossLink}}.
|
|
1926
|
+
* Some of the functions don't do anything in 2D.
|
|
1927
|
+
*
|
|
1910
1928
|
*/
|
|
1911
|
-
|
|
1912
|
-
[id: string]: MappedinLocation;
|
|
1913
|
-
};
|
|
1929
|
+
controls?: typeof CameraControls;
|
|
1914
1930
|
/**
|
|
1915
|
-
*
|
|
1916
|
-
*
|
|
1931
|
+
* The Venue data this MapView is using.
|
|
1932
|
+
*
|
|
1933
|
+
* @property venue {MappedinVenue}
|
|
1934
|
+
* @final
|
|
1917
1935
|
*/
|
|
1918
|
-
|
|
1919
|
-
[id: string]: MappedinVortex;
|
|
1920
|
-
};
|
|
1936
|
+
readonly venue: Mappedin;
|
|
1921
1937
|
/**
|
|
1922
|
-
*
|
|
1923
|
-
*
|
|
1938
|
+
* The div MapView is using.
|
|
1939
|
+
*
|
|
1940
|
+
* @property container {Div}
|
|
1941
|
+
* @final
|
|
1924
1942
|
*/
|
|
1925
|
-
|
|
1926
|
-
[id: string]: MappedinMap;
|
|
1927
|
-
};
|
|
1943
|
+
readonly container: HTMLElement;
|
|
1928
1944
|
/**
|
|
1929
|
-
*
|
|
1930
|
-
*
|
|
1945
|
+
* The ID of the Map currently being displayed.
|
|
1946
|
+
*
|
|
1931
1947
|
*/
|
|
1932
|
-
|
|
1933
|
-
[id: string]: MappedinNode;
|
|
1934
|
-
};
|
|
1948
|
+
readonly currentMap: string;
|
|
1935
1949
|
/**
|
|
1936
|
-
* @
|
|
1937
|
-
*
|
|
1950
|
+
* Change this factor to influence how much the camera zooms in on a {@link IMapView3D.focusOn} call.
|
|
1951
|
+
*
|
|
1952
|
+
* @property focusZoomFactor {Integer}
|
|
1953
|
+
* @default 3
|
|
1938
1954
|
*/
|
|
1939
|
-
|
|
1940
|
-
[id: string]: MappedinPolygon;
|
|
1941
|
-
};
|
|
1955
|
+
focusZoomFactor: number;
|
|
1942
1956
|
/**
|
|
1943
|
-
* @
|
|
1944
|
-
*
|
|
1957
|
+
* Returns the value you should call {@link CameraControls.setZoom} on to fit the Polygon exactly.
|
|
1958
|
+
*
|
|
1959
|
+
* @return The zoom level that will fit the Polygon
|
|
1945
1960
|
*/
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1961
|
+
getZoomLevelForPolygon(props: {
|
|
1962
|
+
/**
|
|
1963
|
+
* The Polygon or Polygon ID to get the zoom level for
|
|
1964
|
+
*/
|
|
1965
|
+
polygonOrPolygonId: MappedinPolygon | string;
|
|
1966
|
+
}): number;
|
|
1949
1967
|
/**
|
|
1950
|
-
* @
|
|
1951
|
-
*
|
|
1968
|
+
* Returns the value you should call {@link CameraControls.setZoom} on to fit the {@link IMapView3D.currentMap} exactly.
|
|
1969
|
+
*
|
|
1970
|
+
* @return The zoom level that will fit the {@link IMapView3D.currentMap}.
|
|
1952
1971
|
*/
|
|
1953
|
-
|
|
1954
|
-
[id: string]: MappedinMapGroup;
|
|
1955
|
-
};
|
|
1972
|
+
getZoomLevelForCurrentMap(): number;
|
|
1956
1973
|
/**
|
|
1957
|
-
*
|
|
1958
|
-
*
|
|
1974
|
+
* Returns the angle that points to north, in radians, from the default orientation.
|
|
1975
|
+
*
|
|
1976
|
+
* @return The angle to north from the default orientation, in radians.
|
|
1959
1977
|
*/
|
|
1960
|
-
|
|
1961
|
-
[id: string]: MappedinLocationState;
|
|
1962
|
-
};
|
|
1978
|
+
getNorth(): number;
|
|
1963
1979
|
/**
|
|
1964
|
-
*
|
|
1965
|
-
*
|
|
1980
|
+
* Takes an element on the DOM and rotates it such that the top is pointing north. It will rotate with the camera, staying locked
|
|
1981
|
+
* on north. If you would like to align it do a different direction, or a different side of the element, pass in an offset. This
|
|
1982
|
+
* is how you would do a compass rose.
|
|
1983
|
+
*
|
|
1984
|
+
* This will modify your element's transform.
|
|
1985
|
+
*
|
|
1986
|
+
* @param element The element on the page to rotate.
|
|
1987
|
+
* @param offset The amount to offset the rotation by, in radians.
|
|
1988
|
+
*
|
|
1966
1989
|
*/
|
|
1967
|
-
|
|
1968
|
-
[id: string]: MappedinLocationRankings;
|
|
1969
|
-
};
|
|
1990
|
+
lockNorth(element: HTMLElement, offset?: number): void;
|
|
1970
1991
|
/**
|
|
1971
|
-
*
|
|
1972
|
-
* @
|
|
1992
|
+
* Stops the MapView from trying to rotate your element with the camera. Do this if you remove the element, or want to stop it from rotating.
|
|
1993
|
+
* @param element The node to stop rotating. It won't reset the transform, just leave it as is.
|
|
1973
1994
|
*/
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1995
|
+
unlockNorth(element: HTMLElement): void;
|
|
1996
|
+
currentInteractionEvent: string;
|
|
1997
|
+
interactivePolygons: any;
|
|
1998
|
+
highlightedPolygons: any;
|
|
1999
|
+
cameraPlane: any;
|
|
1978
2000
|
/**
|
|
2001
|
+
* This is called when an interactive Polygon is clicked on.
|
|
2002
|
+
* You will almost certainly want to replace this with your own function in your client app.
|
|
2003
|
+
* Return "false" if you have consumed the event and it shouldn't bubble down to other Polygons beneath this one.
|
|
1979
2004
|
*
|
|
1980
|
-
*
|
|
2005
|
+
* @param polygonId polygonId passed in when tapping an interactive polygon
|
|
1981
2006
|
*/
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
2007
|
+
onPolygonClicked(polygonId: string): boolean | void;
|
|
2008
|
+
onMapChanged(map: string): void;
|
|
2009
|
+
getPositionLatLon(lat: number, lon: number, map?: MappedinMap | string): Vector3;
|
|
2010
|
+
getPositionPolygon(polygon: MappedinPolygon | string): Vector3;
|
|
2011
|
+
convertTo3DMapPosition(nodeOrCoordinate: MappedinCoordinate | MappedinNode): Vector3;
|
|
2012
|
+
setPadding(padding: {
|
|
2013
|
+
top: number;
|
|
2014
|
+
left: number;
|
|
2015
|
+
bottom: number;
|
|
2016
|
+
right: number;
|
|
2017
|
+
}): void;
|
|
1987
2018
|
/**
|
|
1988
|
-
*
|
|
2019
|
+
* This is fired when the user taps/clicks on the MapView without hitting an interactive Polygon.
|
|
2020
|
+
* You will almost certainly want to replace this with your own function in your client app.
|
|
2021
|
+
* You would probably use this to clear any Polygon highlighting, in certain situations.
|
|
1989
2022
|
*/
|
|
1990
|
-
|
|
2023
|
+
onNothingClicked(): void;
|
|
2024
|
+
smartCollisionEngine: any;
|
|
2025
|
+
mapObjects: any;
|
|
1991
2026
|
/**
|
|
1992
|
-
*
|
|
2027
|
+
* The scene only renders when something has changed. This should be something a 3rd party developer doesn't need to worry about,
|
|
2028
|
+
* but if you are doing something weird, or have your own special tween for something, you will want to call this function.
|
|
2029
|
+
* You can call it as often as you want, it just sets a flag that we need to render again, and renders a few frames if we weren't already doing that.
|
|
2030
|
+
* Ignored in 2D.
|
|
1993
2031
|
*/
|
|
1994
|
-
|
|
2032
|
+
tryRendering(renderMode?: typeof RENDER): void;
|
|
2033
|
+
setMap(mapOrMapId: MappedinMap | string): Promise<null>;
|
|
2034
|
+
getPositionNode(node: MappedinNode): Vector3;
|
|
2035
|
+
cameraObject: any;
|
|
2036
|
+
setBackgroundColor(color: number | string, alpha?: number): void;
|
|
2037
|
+
mapManager: any;
|
|
2038
|
+
focusOn(focusOptions: TFocusOptionsLegacy): Tween;
|
|
2039
|
+
canvasWidth: number;
|
|
2040
|
+
canvasHeight: number;
|
|
1995
2041
|
/**
|
|
1996
|
-
*
|
|
2042
|
+
* Resets the MapView to the default state.
|
|
1997
2043
|
*/
|
|
1998
|
-
|
|
2044
|
+
resetState(): void;
|
|
2045
|
+
destroy(): void;
|
|
1999
2046
|
}
|
|
2000
|
-
export {};
|
|
2001
2047
|
}
|
|
2002
2048
|
|
|
2003
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2049
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types' {
|
|
2050
|
+
export type TGetVenueOptions = {
|
|
2051
|
+
accessToken?: string;
|
|
2052
|
+
clientId?: string;
|
|
2053
|
+
clientSecret?: string;
|
|
2054
|
+
baseUrl?: string;
|
|
2055
|
+
includeHidden?: boolean;
|
|
2056
|
+
noAuth?: boolean;
|
|
2057
|
+
perspective?: string;
|
|
2058
|
+
language?: string;
|
|
2059
|
+
headers?: {
|
|
2060
|
+
[key in string]: string;
|
|
2061
|
+
};
|
|
2062
|
+
venue: string;
|
|
2063
|
+
things?: any;
|
|
2013
2064
|
};
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
|
|
2023
|
-
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
|
|
2033
|
-
|
|
2034
|
-
|
|
2035
|
-
|
|
2065
|
+
export type TGetVenueOptionsInternal = {
|
|
2066
|
+
baseUrl?: string;
|
|
2067
|
+
supplementaryUrl?: string;
|
|
2068
|
+
noAuth?: boolean;
|
|
2069
|
+
includeHidden?: boolean;
|
|
2070
|
+
apiGateway?: string;
|
|
2071
|
+
authorization?: string;
|
|
2072
|
+
/**
|
|
2073
|
+
* @deprecated 2D support will be removed in the future
|
|
2074
|
+
*/
|
|
2075
|
+
do2D?: boolean;
|
|
2076
|
+
things?: any;
|
|
2077
|
+
headers?: any;
|
|
2078
|
+
};
|
|
2079
|
+
}
|
|
2080
|
+
|
|
2081
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
|
|
2082
|
+
import { Navigator } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
2083
|
+
import type { TGetVenueOptions, TGetVenueOptionsInternal } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types';
|
|
2084
|
+
import { MappedinCategory } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCategory';
|
|
2085
|
+
import { MappedinEvent } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinEvent';
|
|
2086
|
+
import { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
2087
|
+
import { MappedinLocationRankings } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationRankings';
|
|
2088
|
+
import { MappedinLocationState } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState';
|
|
2089
|
+
import { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap';
|
|
2090
|
+
import { MappedinMapGroup } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMapGroup';
|
|
2091
|
+
import { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
|
|
2092
|
+
import { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
|
|
2093
|
+
import { MappedinRankings } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinRankings';
|
|
2094
|
+
import { MappedinTheme } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme';
|
|
2095
|
+
import { MappedinVenue } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVenue';
|
|
2096
|
+
import { MappedinVortex } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVortex';
|
|
2097
|
+
export const defaultOptions: TGetVenueOptionsInternal & TGetVenueOptions;
|
|
2098
|
+
export enum CollectionType {
|
|
2099
|
+
CATEGORY = "categories",
|
|
2100
|
+
EVENT = "events",
|
|
2101
|
+
LOCATION = "locations",
|
|
2102
|
+
MAPGROUP = "mapGroups",
|
|
2103
|
+
MAP = "maps",
|
|
2104
|
+
NODE = "nodes",
|
|
2105
|
+
POLYGON = "polygons",
|
|
2106
|
+
VORTEX = "vortexes"
|
|
2107
|
+
}
|
|
2108
|
+
type TAccessors = {
|
|
2109
|
+
[CollectionType.CATEGORY]: MappedinCategory;
|
|
2110
|
+
[CollectionType.EVENT]: MappedinEvent;
|
|
2111
|
+
[CollectionType.LOCATION]: MappedinLocation;
|
|
2112
|
+
[CollectionType.MAPGROUP]: MappedinMapGroup;
|
|
2113
|
+
[CollectionType.MAP]: MappedinMap;
|
|
2114
|
+
[CollectionType.NODE]: MappedinNode;
|
|
2115
|
+
[CollectionType.POLYGON]: MappedinPolygon;
|
|
2116
|
+
[CollectionType.VORTEX]: MappedinVortex;
|
|
2117
|
+
};
|
|
2118
|
+
const THINGS: {
|
|
2119
|
+
categories: typeof MappedinCategory;
|
|
2120
|
+
locations: typeof MappedinLocation;
|
|
2121
|
+
vortexes: typeof MappedinVortex;
|
|
2122
|
+
maps: typeof MappedinMap;
|
|
2123
|
+
nodes: typeof MappedinNode;
|
|
2124
|
+
polygons: typeof MappedinPolygon;
|
|
2125
|
+
venue: typeof MappedinVenue;
|
|
2126
|
+
events: typeof MappedinEvent;
|
|
2127
|
+
mapGroups: typeof MappedinMapGroup;
|
|
2128
|
+
themes: typeof MappedinTheme;
|
|
2129
|
+
locationStates: typeof MappedinLocationState;
|
|
2130
|
+
locationRankings: typeof MappedinLocationRankings;
|
|
2131
|
+
rankings: typeof MappedinRankings;
|
|
2132
|
+
};
|
|
2133
|
+
export type TTHINGS = keyof typeof THINGS;
|
|
2134
|
+
export class Mappedin {
|
|
2036
2135
|
#private;
|
|
2037
|
-
|
|
2038
|
-
|
|
2039
|
-
|
|
2040
|
-
|
|
2041
|
-
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
picture?: TPicture;
|
|
2053
|
-
operationHours?: TOpeningHours[] | undefined;
|
|
2054
|
-
siblingGroups?: TSiblingGroup[] | undefined;
|
|
2055
|
-
gallery?: TGalleryImage[] | undefined;
|
|
2056
|
-
constructor(mappedin: Mappedin, data: any);
|
|
2057
|
-
categories: TCategory[];
|
|
2136
|
+
perspective: any;
|
|
2137
|
+
things: any;
|
|
2138
|
+
options: any;
|
|
2139
|
+
updatedAt?: string;
|
|
2140
|
+
categories: MappedinCategory[];
|
|
2141
|
+
locations: MappedinLocation[];
|
|
2142
|
+
vortexes: MappedinVortex[];
|
|
2143
|
+
maps: MappedinMap[];
|
|
2144
|
+
nodes: MappedinNode[];
|
|
2145
|
+
polygons: MappedinPolygon[];
|
|
2146
|
+
venue: MappedinVenue;
|
|
2147
|
+
events: MappedinEvent[];
|
|
2148
|
+
mapGroups: MappedinMapGroup[];
|
|
2149
|
+
themes: MappedinTheme[];
|
|
2150
|
+
locationStates: MappedinLocationState[];
|
|
2058
2151
|
/**
|
|
2059
|
-
*
|
|
2060
|
-
*
|
|
2061
|
-
* @property polygons
|
|
2062
|
-
* @type [MappedinPolygon]
|
|
2152
|
+
* @deprecated use polygonRankings instead
|
|
2153
|
+
* TODO: remove when we know that nobody is using this
|
|
2063
2154
|
*/
|
|
2064
|
-
|
|
2065
|
-
|
|
2155
|
+
locationRankings: MappedinLocationRankings[];
|
|
2156
|
+
rankings?: MappedinRankings;
|
|
2066
2157
|
/**
|
|
2067
|
-
*
|
|
2158
|
+
* @hidden
|
|
2159
|
+
* @internal
|
|
2068
2160
|
*/
|
|
2069
|
-
|
|
2161
|
+
_categoriesById?: {
|
|
2162
|
+
[id: string]: MappedinCategory;
|
|
2163
|
+
};
|
|
2070
2164
|
/**
|
|
2071
|
-
*
|
|
2072
|
-
*
|
|
2073
|
-
* @property nodes
|
|
2074
|
-
* @type [MappedinNode]
|
|
2165
|
+
* @hidden
|
|
2166
|
+
* @internal
|
|
2075
2167
|
*/
|
|
2076
|
-
|
|
2077
|
-
|
|
2168
|
+
_locationsById?: {
|
|
2169
|
+
[id: string]: MappedinLocation;
|
|
2170
|
+
};
|
|
2078
2171
|
/**
|
|
2079
|
-
*
|
|
2080
|
-
*
|
|
2081
|
-
* @property parent
|
|
2082
|
-
* @type MappedinLocation
|
|
2172
|
+
* @hidden
|
|
2173
|
+
* @internal
|
|
2083
2174
|
*/
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
clone(): MappedinLocation;
|
|
2088
|
-
get nodeOperationHours(): TOperationHoursMap;
|
|
2089
|
-
static hydrate(locations: any, mappedin: Mappedin): MappedinLocation[];
|
|
2090
|
-
static fetch(mappedin: Mappedin): Promise<MappedinLocation[]>;
|
|
2091
|
-
toJSON(): any;
|
|
2092
|
-
}
|
|
2093
|
-
}
|
|
2094
|
-
|
|
2095
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon' {
|
|
2096
|
-
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2097
|
-
import type { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
2098
|
-
import type { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
|
|
2099
|
-
import { MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
|
|
2100
|
-
/**
|
|
2101
|
-
* The {@link MappedinPolygon} class represents the 3D shape of a {@link MappedinLocation} on a {{@link MappedinMap}. Polygons have access to Locations they belong to, and any entrances to the Polygon.
|
|
2102
|
-
*
|
|
2103
|
-
* A Polygon can have more properties but usually the default is sufficient. The {@link Mappedin}'things' object is where you would specify what properties you want to download for Polygons. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2104
|
-
*
|
|
2105
|
-
* @class MappedinPolygon
|
|
2106
|
-
*/
|
|
2107
|
-
export class MappedinPolygon extends MappedinNavigatable {
|
|
2108
|
-
#private;
|
|
2109
|
-
geometry: any;
|
|
2175
|
+
_vortexesById?: {
|
|
2176
|
+
[id: string]: MappedinVortex;
|
|
2177
|
+
};
|
|
2110
2178
|
/**
|
|
2111
|
-
*
|
|
2112
|
-
*
|
|
2113
|
-
* @property id {string}
|
|
2179
|
+
* @hidden
|
|
2180
|
+
* @internal
|
|
2114
2181
|
*/
|
|
2115
|
-
|
|
2182
|
+
_mapsById?: {
|
|
2183
|
+
[id: string]: MappedinMap;
|
|
2184
|
+
};
|
|
2116
2185
|
/**
|
|
2117
|
-
*
|
|
2118
|
-
*
|
|
2119
|
-
* @property map {string}
|
|
2186
|
+
* @hidden
|
|
2187
|
+
* @internal
|
|
2120
2188
|
*/
|
|
2121
|
-
|
|
2122
|
-
|
|
2123
|
-
layerId?: string;
|
|
2124
|
-
name?: string;
|
|
2125
|
-
externalId?: string;
|
|
2126
|
-
vertexes?: {
|
|
2127
|
-
x: number;
|
|
2128
|
-
y: number;
|
|
2129
|
-
}[];
|
|
2130
|
-
canvasBounds?: {
|
|
2131
|
-
align: string;
|
|
2132
|
-
maxHeight: number;
|
|
2133
|
-
maxWidth: number;
|
|
2134
|
-
rotation: number;
|
|
2135
|
-
x: number;
|
|
2136
|
-
y: number;
|
|
2189
|
+
_nodesById?: {
|
|
2190
|
+
[id: string]: MappedinNode;
|
|
2137
2191
|
};
|
|
2138
|
-
constructor(mappedin: Mappedin, data: any);
|
|
2139
2192
|
/**
|
|
2140
|
-
*
|
|
2141
|
-
*
|
|
2142
|
-
* @property locations {[MappedinLocation]}
|
|
2193
|
+
* @hidden
|
|
2194
|
+
* @internal
|
|
2143
2195
|
*/
|
|
2144
|
-
|
|
2196
|
+
_polygonsById?: {
|
|
2197
|
+
[id: string]: MappedinPolygon;
|
|
2198
|
+
};
|
|
2145
2199
|
/**
|
|
2146
|
-
*
|
|
2147
|
-
*
|
|
2148
|
-
* @property entrances {[MappedinNode]}
|
|
2200
|
+
* @hidden
|
|
2201
|
+
* @internal
|
|
2149
2202
|
*/
|
|
2150
|
-
|
|
2151
|
-
|
|
2203
|
+
_eventsById?: {
|
|
2204
|
+
[id: string]: MappedinEvent;
|
|
2205
|
+
};
|
|
2152
2206
|
/**
|
|
2153
|
-
*
|
|
2207
|
+
* @hidden
|
|
2208
|
+
* @internal
|
|
2154
2209
|
*/
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
} | null;
|
|
2159
|
-
static hydrate(polygons: any, mappedin: Mappedin): MappedinPolygon[];
|
|
2160
|
-
static fetch(mappedin: Mappedin): Promise<MappedinPolygon[]>;
|
|
2161
|
-
toJSON(): any;
|
|
2162
|
-
}
|
|
2163
|
-
}
|
|
2164
|
-
|
|
2165
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode' {
|
|
2166
|
-
import type { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
|
|
2167
|
-
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2168
|
-
import type { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
2169
|
-
import type { TOpeningHours } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2170
|
-
import { MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
|
|
2171
|
-
/**
|
|
2172
|
-
* A {@link MappedinNode} represents a position, anchored to a specific {@link MappedinMap}.
|
|
2173
|
-
*
|
|
2174
|
-
* A Node can have more properties but usually the default is sufficient. The {@link Mappedin} 'things' object is where you would specify what properties you want to download for Nodes. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2175
|
-
*
|
|
2176
|
-
* @class MappedinNode
|
|
2177
|
-
*/
|
|
2178
|
-
export class MappedinNode extends MappedinNavigatable {
|
|
2179
|
-
#private;
|
|
2210
|
+
_mapGroupsById?: {
|
|
2211
|
+
[id: string]: MappedinMapGroup;
|
|
2212
|
+
};
|
|
2180
2213
|
/**
|
|
2181
|
-
*
|
|
2182
|
-
* @
|
|
2214
|
+
* @hidden
|
|
2215
|
+
* @internal
|
|
2183
2216
|
*/
|
|
2184
|
-
|
|
2217
|
+
_locationStatesById?: {
|
|
2218
|
+
[id: string]: MappedinLocationState;
|
|
2219
|
+
};
|
|
2185
2220
|
/**
|
|
2186
|
-
*
|
|
2187
|
-
*
|
|
2188
|
-
* @property map {string}
|
|
2221
|
+
* @hidden
|
|
2222
|
+
* @internal
|
|
2189
2223
|
*/
|
|
2190
|
-
|
|
2224
|
+
_locationRankingsById?: {
|
|
2225
|
+
[id: string]: MappedinLocationRankings;
|
|
2226
|
+
};
|
|
2191
2227
|
/**
|
|
2192
|
-
*
|
|
2193
|
-
* @
|
|
2228
|
+
* @hidden
|
|
2229
|
+
* @internal
|
|
2194
2230
|
*/
|
|
2195
|
-
|
|
2231
|
+
_rankingsById?: {
|
|
2232
|
+
[id: string]: MappedinRankings;
|
|
2233
|
+
};
|
|
2196
2234
|
/**
|
|
2197
|
-
*
|
|
2198
|
-
* @
|
|
2235
|
+
* @hidden
|
|
2236
|
+
* @internal
|
|
2199
2237
|
*/
|
|
2200
|
-
|
|
2238
|
+
_categoriesByExternalId?: {
|
|
2239
|
+
[id: string]: MappedinCategory;
|
|
2240
|
+
};
|
|
2201
2241
|
/**
|
|
2202
|
-
*
|
|
2242
|
+
* @hidden
|
|
2243
|
+
* @internal
|
|
2203
2244
|
*/
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2245
|
+
_locationsByExternalId?: {
|
|
2246
|
+
[id: string]: MappedinLocation;
|
|
2247
|
+
};
|
|
2207
2248
|
/**
|
|
2208
|
-
*
|
|
2209
|
-
*
|
|
2210
|
-
* @property paths
|
|
2211
|
-
* @type [MappedinNode]
|
|
2249
|
+
* @hidden
|
|
2250
|
+
* @internal
|
|
2212
2251
|
*/
|
|
2213
|
-
|
|
2214
|
-
|
|
2252
|
+
_vortexesByExternalId?: {
|
|
2253
|
+
[id: string]: MappedinVortex;
|
|
2254
|
+
};
|
|
2215
2255
|
/**
|
|
2216
|
-
*
|
|
2217
|
-
*
|
|
2218
|
-
* @property locations
|
|
2219
|
-
* @type [MappedinLocation]
|
|
2256
|
+
* @hidden
|
|
2257
|
+
* @internal
|
|
2220
2258
|
*/
|
|
2221
|
-
|
|
2259
|
+
_mapsByExternalId?: {
|
|
2260
|
+
[id: string]: MappedinMap;
|
|
2261
|
+
};
|
|
2222
2262
|
/**
|
|
2223
|
-
*
|
|
2263
|
+
* @hidden
|
|
2264
|
+
* @internal
|
|
2224
2265
|
*/
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
|
|
2244
|
-
|
|
2245
|
-
|
|
2246
|
-
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2255
|
-
|
|
2256
|
-
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
|
|
2267
|
-
|
|
2268
|
-
|
|
2266
|
+
_nodesByExternalId?: {
|
|
2267
|
+
[id: string]: MappedinNode;
|
|
2268
|
+
};
|
|
2269
|
+
/**
|
|
2270
|
+
* @hidden
|
|
2271
|
+
* @internal
|
|
2272
|
+
*/
|
|
2273
|
+
_polygonsByExternalId?: {
|
|
2274
|
+
[id: string]: MappedinPolygon;
|
|
2275
|
+
};
|
|
2276
|
+
/**
|
|
2277
|
+
* @hidden
|
|
2278
|
+
* @internal
|
|
2279
|
+
*/
|
|
2280
|
+
_eventsByExternalId?: {
|
|
2281
|
+
[id: string]: MappedinEvent;
|
|
2282
|
+
};
|
|
2283
|
+
/**
|
|
2284
|
+
* @hidden
|
|
2285
|
+
* @internal
|
|
2286
|
+
*/
|
|
2287
|
+
_mapGroupsByExternalId?: {
|
|
2288
|
+
[id: string]: MappedinMapGroup;
|
|
2289
|
+
};
|
|
2290
|
+
/**
|
|
2291
|
+
* @hidden
|
|
2292
|
+
* @internal
|
|
2293
|
+
*/
|
|
2294
|
+
_locationStatesByExternalId?: {
|
|
2295
|
+
[id: string]: MappedinLocationState;
|
|
2296
|
+
};
|
|
2297
|
+
/**
|
|
2298
|
+
* @hidden
|
|
2299
|
+
* @internal
|
|
2300
|
+
*/
|
|
2301
|
+
_locationRankingsByExternalId?: {
|
|
2302
|
+
[id: string]: MappedinLocationRankings;
|
|
2303
|
+
};
|
|
2304
|
+
/**
|
|
2305
|
+
* @hidden
|
|
2306
|
+
* @internal
|
|
2307
|
+
*/
|
|
2308
|
+
_rankingsByExternalId?: {
|
|
2309
|
+
[id: string]: MappedinRankings;
|
|
2310
|
+
};
|
|
2311
|
+
getCollectionItemById<T extends keyof TAccessors, I extends string>(name: T, id: I): TAccessors[T] | null;
|
|
2269
2312
|
/**
|
|
2270
|
-
* Locations in this Category.
|
|
2271
2313
|
*
|
|
2272
|
-
* @
|
|
2273
|
-
* @
|
|
2314
|
+
* [experimental] Hydrate the Mappedin instance using a response from either {@link IMappedin.toString()}, {@link getVenueBundle} or by downloading the bundle manually
|
|
2315
|
+
* @param mappedinSerializableData Mappedin data that was serialized or exported as JSON
|
|
2316
|
+
* @param shouldPopulateBundledImagesAsBlobs Takes the scenes and images from a bundle and maps them as blobs to where they exist as URLs in the bundle. False by default
|
|
2317
|
+
*/
|
|
2318
|
+
hydrate(mappedinSerializableData: string | object, shouldPopulateBundledImagesAsBlobs?: boolean): Promise<undefined>;
|
|
2319
|
+
images: any;
|
|
2320
|
+
scenes: any;
|
|
2321
|
+
fetch(): Promise<void>;
|
|
2322
|
+
constructor(options: TGetVenueOptionsInternal & TGetVenueOptions);
|
|
2323
|
+
/**
|
|
2324
|
+
* @hidden
|
|
2325
|
+
*/
|
|
2326
|
+
navigator?: Navigator;
|
|
2327
|
+
/**
|
|
2328
|
+
* Export venue data to JSON (for storage, encryption, etc)
|
|
2274
2329
|
*/
|
|
2275
|
-
get locations(): MappedinLocation[];
|
|
2276
|
-
static hydrate(categories: any, mappedin: Mappedin): MappedinCategory[];
|
|
2277
|
-
static fetch(mappedin: Mappedin): Promise<MappedinCategory[]>;
|
|
2278
2330
|
toJSON(): any;
|
|
2331
|
+
/**
|
|
2332
|
+
* Export venue data to String
|
|
2333
|
+
*/
|
|
2334
|
+
toString(): string;
|
|
2279
2335
|
}
|
|
2336
|
+
export {};
|
|
2280
2337
|
}
|
|
2281
2338
|
|
|
2282
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/
|
|
2283
|
-
import type {
|
|
2339
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation' {
|
|
2340
|
+
import type { TCategory, TLocation, TColor, TGalleryImage, TLogo, TOpeningHours, TPhone, TPicture, TSiblingGroup, TSocial } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2284
2341
|
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2285
|
-
import type {
|
|
2286
|
-
import type {
|
|
2287
|
-
import {
|
|
2342
|
+
import type { MappedinLocationState } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState';
|
|
2343
|
+
import type { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
|
|
2344
|
+
import type { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
|
|
2345
|
+
import { MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
|
|
2346
|
+
export function getCurrentLocationState(location: MappedinLocation, states: MappedinLocationState[], date?: Date): MappedinLocationState | undefined;
|
|
2347
|
+
export type TOperationHoursMap = {
|
|
2348
|
+
[key in string]: TOpeningHours[];
|
|
2349
|
+
};
|
|
2288
2350
|
/**
|
|
2289
|
-
* A {@link
|
|
2351
|
+
* A {@link MappedinLocation} is something like a store or washroom on a {@link MappedinMap}. It has an ID and will be linked to zero or more {@link MappedinNode}s and {@link MappedinPolygon}s.
|
|
2290
2352
|
*
|
|
2291
|
-
* A
|
|
2353
|
+
* A Location's Nodes and Polygons can be on multiple Maps, or in multiple non-adjacent places on the same Map.
|
|
2354
|
+
* For example, all washroom at a given Venue could belong to one Location, or a department store could live on multiple floors. A Washroom Location might a have a few Polygons spread throughout the Venue for each one that exists, but a single store might just have one presence, and therefore one Polygon. Some Locations just have a single point and only have Nodes.
|
|
2292
2355
|
*
|
|
2293
|
-
*
|
|
2356
|
+
* A Location can have more properties (typically things like 'name', 'externalId', 'type', 'categories', 'description', 'logo', etc).
|
|
2294
2357
|
*
|
|
2295
|
-
*
|
|
2358
|
+
* The {@link Mappedin} 'things' object is where you would specify what properties you want to download for Locations. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2359
|
+
*
|
|
2360
|
+
* See below for an example a 'things' object with available Location properties specified:
|
|
2296
2361
|
*
|
|
2297
2362
|
* things: {
|
|
2298
2363
|
* venue: [],
|
|
2299
|
-
* locations: [],
|
|
2364
|
+
* locations: ['venue', 'name', 'type', 'icon', 'logo', 'language', 'externalId', 'description', 'categories', 'phone', 'operationHours', 'social', 'tags', 'parents', 'sortOrder'],
|
|
2300
2365
|
* categories: [],
|
|
2301
|
-
* maps: [
|
|
2366
|
+
* maps: []
|
|
2302
2367
|
* }
|
|
2303
2368
|
*
|
|
2304
|
-
* @class
|
|
2369
|
+
* @class MappedinLocation
|
|
2305
2370
|
*/
|
|
2306
|
-
export class
|
|
2371
|
+
export class MappedinLocation extends MappedinNavigatable {
|
|
2307
2372
|
#private;
|
|
2373
|
+
states: TLocation['states'];
|
|
2308
2374
|
id: string;
|
|
2309
|
-
group: string;
|
|
2310
2375
|
name: string;
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2376
|
+
type: string;
|
|
2377
|
+
description?: string;
|
|
2378
|
+
sortOrder?: number;
|
|
2379
|
+
logo?: TLogo;
|
|
2380
|
+
phone?: TPhone;
|
|
2381
|
+
social?: TSocial;
|
|
2382
|
+
color?: TColor;
|
|
2383
|
+
shortName?: string;
|
|
2384
|
+
detailsUrl?: string;
|
|
2385
|
+
tags?: string[];
|
|
2386
|
+
externalId?: string;
|
|
2387
|
+
showLabelWhenImagePresent?: boolean;
|
|
2388
|
+
picture?: TPicture;
|
|
2389
|
+
operationHours?: TOpeningHours[] | undefined;
|
|
2390
|
+
siblingGroups?: TSiblingGroup[] | undefined;
|
|
2391
|
+
gallery?: TGalleryImage[] | undefined;
|
|
2319
2392
|
constructor(mappedin: Mappedin, data: any);
|
|
2320
|
-
|
|
2393
|
+
categories: TCategory['id'][];
|
|
2321
2394
|
/**
|
|
2322
|
-
* Polygons
|
|
2395
|
+
* Polygons this Location is attached to.
|
|
2323
2396
|
*
|
|
2324
|
-
* @property polygons
|
|
2397
|
+
* @property polygons
|
|
2398
|
+
* @type [MappedinPolygon]
|
|
2325
2399
|
*/
|
|
2326
|
-
get polygons(): MappedinPolygon[]
|
|
2400
|
+
get polygons(): MappedinPolygon[];
|
|
2401
|
+
set polygons(polygons: MappedinPolygon[]);
|
|
2327
2402
|
/**
|
|
2328
|
-
*
|
|
2329
|
-
*
|
|
2330
|
-
* @property mapGroup {MappedinMapGroup}
|
|
2403
|
+
* Ranking for this location.
|
|
2331
2404
|
*/
|
|
2332
|
-
get
|
|
2405
|
+
get rank(): number | null;
|
|
2333
2406
|
/**
|
|
2334
|
-
*
|
|
2407
|
+
* Nodes this Location is attached to.
|
|
2335
2408
|
*
|
|
2336
|
-
* @
|
|
2337
|
-
* @
|
|
2409
|
+
* @property nodes
|
|
2410
|
+
* @type [MappedinNode]
|
|
2338
2411
|
*/
|
|
2339
|
-
|
|
2412
|
+
get nodes(): MappedinNode[];
|
|
2413
|
+
set nodes(nodes: MappedinNode[]);
|
|
2340
2414
|
/**
|
|
2415
|
+
* Parent of this Location, if any. Used in cases where one Location is inside another, more "important" Location.
|
|
2341
2416
|
*
|
|
2342
|
-
* @
|
|
2417
|
+
* @property parent
|
|
2418
|
+
* @type MappedinLocation
|
|
2343
2419
|
*/
|
|
2344
|
-
|
|
2345
|
-
|
|
2346
|
-
|
|
2420
|
+
get parent(): MappedinLocation | undefined;
|
|
2421
|
+
set parent(parent: MappedinLocation | undefined);
|
|
2422
|
+
get state(): MappedinLocationState | undefined;
|
|
2423
|
+
clone(): MappedinLocation;
|
|
2424
|
+
get nodeOperationHours(): TOperationHoursMap;
|
|
2425
|
+
static hydrate(locations: any, mappedin: Mappedin): MappedinLocation[];
|
|
2426
|
+
static fetch(mappedin: Mappedin): Promise<MappedinLocation[]>;
|
|
2347
2427
|
toJSON(): any;
|
|
2348
2428
|
}
|
|
2349
2429
|
}
|
|
2350
2430
|
|
|
2351
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/
|
|
2352
|
-
import type { TImage } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2431
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon' {
|
|
2353
2432
|
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2354
2433
|
import type { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
2434
|
+
import type { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
|
|
2435
|
+
import { MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
|
|
2355
2436
|
/**
|
|
2356
|
-
*
|
|
2437
|
+
* The {@link MappedinPolygon} class represents the 3D shape of a {@link MappedinLocation} on a {{@link MappedinMap}. Polygons have access to Locations they belong to, and any entrances to the Polygon.
|
|
2357
2438
|
*
|
|
2358
|
-
* @
|
|
2439
|
+
* A Polygon can have more properties but usually the default is sufficient. The {@link Mappedin}'things' object is where you would specify what properties you want to download for Polygons. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2440
|
+
*
|
|
2441
|
+
* @class MappedinPolygon
|
|
2359
2442
|
*/
|
|
2360
|
-
export class
|
|
2443
|
+
export class MappedinPolygon extends MappedinNavigatable {
|
|
2361
2444
|
#private;
|
|
2445
|
+
geometry: any;
|
|
2446
|
+
/**
|
|
2447
|
+
* Node ID.
|
|
2448
|
+
*
|
|
2449
|
+
* @property id {string}
|
|
2450
|
+
*/
|
|
2362
2451
|
id: string;
|
|
2363
|
-
|
|
2364
|
-
|
|
2365
|
-
|
|
2366
|
-
|
|
2367
|
-
|
|
2368
|
-
|
|
2369
|
-
|
|
2452
|
+
/**
|
|
2453
|
+
* ID of Map that Polygon is located on.
|
|
2454
|
+
*
|
|
2455
|
+
* @property map {string}
|
|
2456
|
+
*/
|
|
2457
|
+
map: string;
|
|
2458
|
+
layer?: string;
|
|
2459
|
+
layerId?: string;
|
|
2460
|
+
name?: string;
|
|
2461
|
+
externalId?: string;
|
|
2462
|
+
vertexes?: {
|
|
2463
|
+
x: number;
|
|
2464
|
+
y: number;
|
|
2465
|
+
}[];
|
|
2466
|
+
canvasBounds?: {
|
|
2467
|
+
align: string;
|
|
2468
|
+
maxHeight: number;
|
|
2469
|
+
maxWidth: number;
|
|
2470
|
+
rotation: number;
|
|
2471
|
+
x: number;
|
|
2472
|
+
y: number;
|
|
2473
|
+
};
|
|
2370
2474
|
constructor(mappedin: Mappedin, data: any);
|
|
2371
2475
|
/**
|
|
2372
|
-
*
|
|
2476
|
+
* Locations attached to the Polygon.
|
|
2373
2477
|
*
|
|
2374
|
-
* @property
|
|
2478
|
+
* @property locations {[MappedinLocation]}
|
|
2375
2479
|
*/
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2480
|
+
get locations(): MappedinLocation[];
|
|
2481
|
+
/**
|
|
2482
|
+
* Polygon's entrance Nodes.
|
|
2483
|
+
*
|
|
2484
|
+
* @property entrances {[MappedinNode]}
|
|
2485
|
+
*/
|
|
2486
|
+
get entrances(): MappedinNode[];
|
|
2487
|
+
set entrances(entrances: MappedinNode[]);
|
|
2488
|
+
/**
|
|
2489
|
+
* Ranking for this polygon.
|
|
2490
|
+
*/
|
|
2491
|
+
get rank(): {
|
|
2492
|
+
score: number;
|
|
2493
|
+
node: string;
|
|
2494
|
+
} | null;
|
|
2495
|
+
static hydrate(polygons: any, mappedin: Mappedin): MappedinPolygon[];
|
|
2496
|
+
static fetch(mappedin: Mappedin): Promise<MappedinPolygon[]>;
|
|
2379
2497
|
toJSON(): any;
|
|
2380
2498
|
}
|
|
2381
2499
|
}
|
|
2382
2500
|
|
|
2383
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/
|
|
2501
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode' {
|
|
2502
|
+
import type { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
|
|
2384
2503
|
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2385
|
-
import type {
|
|
2504
|
+
import type { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
2505
|
+
import type { TOpeningHours } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2506
|
+
import { MappedinNavigatable } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
|
|
2386
2507
|
/**
|
|
2387
|
-
* A {@link
|
|
2508
|
+
* A {@link MappedinNode} represents a position, anchored to a specific {@link MappedinMap}.
|
|
2388
2509
|
*
|
|
2389
|
-
* @
|
|
2510
|
+
* A Node can have more properties but usually the default is sufficient. The {@link Mappedin} 'things' object is where you would specify what properties you want to download for Nodes. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2511
|
+
*
|
|
2512
|
+
* @class MappedinNode
|
|
2390
2513
|
*/
|
|
2391
|
-
export class
|
|
2514
|
+
export class MappedinNode extends MappedinNavigatable {
|
|
2392
2515
|
#private;
|
|
2516
|
+
/**
|
|
2517
|
+
* Node ID.
|
|
2518
|
+
* @property id {string}
|
|
2519
|
+
*/
|
|
2393
2520
|
id: string;
|
|
2394
|
-
|
|
2521
|
+
/**
|
|
2522
|
+
* ID of Map that the Node is located on.
|
|
2523
|
+
*
|
|
2524
|
+
* @property map {string}
|
|
2525
|
+
*/
|
|
2526
|
+
map: string;
|
|
2527
|
+
/**
|
|
2528
|
+
* X coordinate of Node's position.
|
|
2529
|
+
* @property x {number}
|
|
2530
|
+
*/
|
|
2531
|
+
x: number;
|
|
2532
|
+
/**
|
|
2533
|
+
* Y coordinate of Node's position.
|
|
2534
|
+
* @property y {number}
|
|
2535
|
+
*/
|
|
2536
|
+
y: number;
|
|
2537
|
+
/**
|
|
2538
|
+
* Operation Hours of this node. A Location may have different operation hours per node, for example 2 washrooms
|
|
2539
|
+
*/
|
|
2540
|
+
operationHours?: TOpeningHours[];
|
|
2541
|
+
externalId?: string;
|
|
2395
2542
|
constructor(mappedin: Mappedin, data: any);
|
|
2396
2543
|
/**
|
|
2397
|
-
*
|
|
2544
|
+
* Latitude of node. This is expensive, especially if doing it for many/all nodes
|
|
2545
|
+
*/
|
|
2546
|
+
get lat(): number;
|
|
2547
|
+
/**
|
|
2548
|
+
* Longitude of node. This is expensive, especially if doing it for many/all nodes
|
|
2549
|
+
*/
|
|
2550
|
+
get lon(): number;
|
|
2551
|
+
/**
|
|
2552
|
+
* Adjacent Nodes.
|
|
2398
2553
|
*
|
|
2399
|
-
* @property
|
|
2554
|
+
* @property paths
|
|
2555
|
+
* @type [MappedinNode]
|
|
2400
2556
|
*/
|
|
2401
|
-
get
|
|
2402
|
-
|
|
2403
|
-
|
|
2557
|
+
get paths(): MappedinNode[];
|
|
2558
|
+
set paths(paths: MappedinNode[]);
|
|
2559
|
+
/**
|
|
2560
|
+
* Locations attached to this Node.
|
|
2561
|
+
*
|
|
2562
|
+
* @property locations
|
|
2563
|
+
* @type [MappedinLocation]
|
|
2564
|
+
*/
|
|
2565
|
+
get locations(): MappedinLocation[];
|
|
2566
|
+
/**
|
|
2567
|
+
* Polygon that this node is part of
|
|
2568
|
+
*/
|
|
2569
|
+
get polygon(): MappedinPolygon;
|
|
2570
|
+
static hydrate(nodes: any, mappedin: Mappedin): MappedinNode[];
|
|
2571
|
+
static fetch(mappedin: Mappedin): Promise<MappedinNode[]>;
|
|
2404
2572
|
toJSON(): any;
|
|
2405
2573
|
}
|
|
2406
2574
|
}
|
|
2407
2575
|
|
|
2408
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/
|
|
2409
|
-
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2410
|
-
import type { TLogo, TOpeningHours } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2576
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCategory' {
|
|
2411
2577
|
/**
|
|
2412
|
-
|
|
2413
|
-
|
|
2414
|
-
|
|
2415
|
-
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
* things: {
|
|
2419
|
-
* venue: ['slug', 'name', 'language', 'address', 'city', 'state', 'postal', 'telephone', 'latitude', 'longitude', 'website', 'operationHours'],
|
|
2420
|
-
* locations: [],
|
|
2421
|
-
* categories: [],
|
|
2422
|
-
* maps: []
|
|
2423
|
-
* }
|
|
2424
|
-
*
|
|
2425
|
-
*
|
|
2426
|
-
* @class MappedinVenue
|
|
2427
|
-
*/
|
|
2428
|
-
export class MappedinVenue {
|
|
2429
|
-
#private;
|
|
2430
|
-
defaultMap: string;
|
|
2431
|
-
address: string;
|
|
2432
|
-
city: string;
|
|
2433
|
-
countrycode: string;
|
|
2434
|
-
externalId: string;
|
|
2435
|
-
id: string;
|
|
2436
|
-
latitude?: number;
|
|
2437
|
-
logo?: TLogo;
|
|
2438
|
-
longitude?: number;
|
|
2439
|
-
metadata?: any;
|
|
2440
|
-
name: string;
|
|
2441
|
-
operationHours?: TOpeningHours[];
|
|
2442
|
-
postal: string;
|
|
2443
|
-
slug: string;
|
|
2444
|
-
state: string;
|
|
2445
|
-
telephone: string;
|
|
2446
|
-
tzid: string;
|
|
2447
|
-
tzidOverride: string;
|
|
2448
|
-
utcOffset: string;
|
|
2449
|
-
website: string;
|
|
2450
|
-
constructor(data: any);
|
|
2451
|
-
static hydrate(data: any): MappedinVenue;
|
|
2452
|
-
static fetch(mappedin: Mappedin): Promise<MappedinVenue>;
|
|
2453
|
-
toJSON(): any;
|
|
2454
|
-
}
|
|
2455
|
-
}
|
|
2456
|
-
|
|
2457
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVortex' {
|
|
2578
|
+
* Collection of all Categories within the Venue.
|
|
2579
|
+
*
|
|
2580
|
+
* @property categories
|
|
2581
|
+
* @type [MappedinCategory]
|
|
2582
|
+
*/
|
|
2583
|
+
import type { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
2458
2584
|
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2585
|
+
import type { TPicture } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2459
2586
|
/**
|
|
2460
|
-
* A {@link
|
|
2587
|
+
* A {@link MappedinCategory} is a collection of similar Locations.
|
|
2588
|
+
*
|
|
2589
|
+
* A Category can have more properties such as 'name', or 'parents' (for hierarchical categories) as well.
|
|
2590
|
+
* For example, you may have a Fashion category, which has a Men's Fashion and Women's Fashion category. A Men's clothing store would belong to the Men’s Fashion category, but not necessarily be present in the Fashion category's list of Locations.
|
|
2591
|
+
*
|
|
2592
|
+
* The {@link Mappedin} 'things' object is where you would specify what properties you want to download for Categories. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2593
|
+
*
|
|
2594
|
+
* See below for an example a 'things' object with available Category properties specified:
|
|
2595
|
+
*
|
|
2596
|
+
* things: {
|
|
2597
|
+
* venue: [],
|
|
2598
|
+
* locations: [],
|
|
2599
|
+
* categories: ['venue', 'name', 'language', 'externalId', 'parents'],
|
|
2600
|
+
* maps: []
|
|
2601
|
+
* }
|
|
2602
|
+
*
|
|
2603
|
+
* @class MappedinCategory
|
|
2604
|
+
*/
|
|
2605
|
+
export class MappedinCategory {
|
|
2606
|
+
#private;
|
|
2607
|
+
name?: string | undefined;
|
|
2608
|
+
externalId?: string | undefined;
|
|
2609
|
+
parents?: string[] | undefined;
|
|
2610
|
+
id?: string | undefined;
|
|
2611
|
+
icon?: TPicture | undefined;
|
|
2612
|
+
constructor(mappedin: Mappedin, data: any);
|
|
2613
|
+
/**
|
|
2614
|
+
* Locations in this Category.
|
|
2615
|
+
*
|
|
2616
|
+
* @property locations
|
|
2617
|
+
* @type [MappedinLocation]
|
|
2618
|
+
*/
|
|
2619
|
+
get locations(): MappedinLocation[];
|
|
2620
|
+
static hydrate(categories: any, mappedin: Mappedin): MappedinCategory[];
|
|
2621
|
+
static fetch(mappedin: Mappedin): Promise<MappedinCategory[]>;
|
|
2622
|
+
toJSON(): any;
|
|
2623
|
+
}
|
|
2624
|
+
}
|
|
2625
|
+
|
|
2626
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap' {
|
|
2627
|
+
import type { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
|
|
2628
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2629
|
+
import type { TGeoReference } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2630
|
+
import type { MappedinMapGroup } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMapGroup';
|
|
2631
|
+
import { MappedinCoordinate } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCoordinate';
|
|
2632
|
+
/**
|
|
2633
|
+
* A {@link MappedinMap} belonging to a specific {@link MappedinVenue}. Typically represents a certain floor. Give this to a {@link MapView} to display to the user.
|
|
2634
|
+
*
|
|
2635
|
+
* A Map can have more properties such as 'elevation', 'name' (e.g. Level 1), and 'shortName' (e.g. L1). The elevation property can be used to determine the order of the floors (first, second, etc). Elevation is 0 based, going up and down in integers representing the number of floors above or below 0, which is ground level.
|
|
2636
|
+
*
|
|
2637
|
+
* The {@link Mappedin} 'things' object is where you would specify what properties you want to download for Maps. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2638
|
+
*
|
|
2639
|
+
* See below for an example a 'things' object with available Map properties specified:
|
|
2640
|
+
*
|
|
2641
|
+
* things: {
|
|
2642
|
+
* venue: [],
|
|
2643
|
+
* locations: [],
|
|
2644
|
+
* categories: [],
|
|
2645
|
+
* maps: ['name', 'elevation', 'shortName']
|
|
2646
|
+
* }
|
|
2647
|
+
*
|
|
2648
|
+
* @class MappedinMap
|
|
2649
|
+
*/
|
|
2650
|
+
export class MappedinMap {
|
|
2651
|
+
#private;
|
|
2652
|
+
id: string;
|
|
2653
|
+
group: string;
|
|
2654
|
+
name: string;
|
|
2655
|
+
shortName: string;
|
|
2656
|
+
elevation: number;
|
|
2657
|
+
scale?: number;
|
|
2658
|
+
x_scale?: number;
|
|
2659
|
+
perspectiveId?: string;
|
|
2660
|
+
width: number;
|
|
2661
|
+
height: number;
|
|
2662
|
+
georeference: TGeoReference[];
|
|
2663
|
+
constructor(mappedin: Mappedin, data: any);
|
|
2664
|
+
_scale: number;
|
|
2665
|
+
/**
|
|
2666
|
+
* Polygons on this Map.
|
|
2667
|
+
*
|
|
2668
|
+
* @property polygons {[MappedinPolygon]}
|
|
2669
|
+
*/
|
|
2670
|
+
get polygons(): MappedinPolygon[] | undefined;
|
|
2671
|
+
/**
|
|
2672
|
+
* Map Group this map belongs to.
|
|
2673
|
+
*
|
|
2674
|
+
* @property mapGroup {MappedinMapGroup}
|
|
2675
|
+
*/
|
|
2676
|
+
get mapGroup(): MappedinMapGroup | null;
|
|
2677
|
+
/**
|
|
2678
|
+
* Create coordinate using mappedin units
|
|
2679
|
+
* @internal
|
|
2680
|
+
*
|
|
2681
|
+
* @param x x of coordinate
|
|
2682
|
+
* @param y y of coordinate
|
|
2683
|
+
*/
|
|
2684
|
+
createCoordinateByXY(x: number, y: number): MappedinCoordinate;
|
|
2685
|
+
/**
|
|
2686
|
+
* Create coordinate using lat/lon
|
|
2687
|
+
*
|
|
2688
|
+
* @param lat latitude of coordinate
|
|
2689
|
+
* @param lon longitude of coordinate
|
|
2690
|
+
*/
|
|
2691
|
+
createCoordinate(lat: number, lon: number): MappedinCoordinate;
|
|
2692
|
+
/**
|
|
2693
|
+
*
|
|
2694
|
+
* @returns map rotation in degrees from North
|
|
2695
|
+
*/
|
|
2696
|
+
getNorth(): any;
|
|
2697
|
+
static hydrate(maps: any, mappedin: Mappedin): MappedinMap[];
|
|
2698
|
+
static fetch(mappedin: Mappedin): Promise<MappedinMap[]>;
|
|
2699
|
+
toJSON(): any;
|
|
2700
|
+
}
|
|
2701
|
+
}
|
|
2702
|
+
|
|
2703
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinEvent' {
|
|
2704
|
+
import type { TImage } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2705
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2706
|
+
import type { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
2707
|
+
/**
|
|
2708
|
+
* An event.
|
|
2709
|
+
*
|
|
2710
|
+
* @class MappedinEvent
|
|
2711
|
+
*/
|
|
2712
|
+
export class MappedinEvent {
|
|
2713
|
+
#private;
|
|
2714
|
+
id: string;
|
|
2715
|
+
type: string;
|
|
2716
|
+
name: string;
|
|
2717
|
+
description?: string | undefined;
|
|
2718
|
+
image?: TImage | undefined;
|
|
2719
|
+
startDate?: number | undefined;
|
|
2720
|
+
endDate?: number | undefined;
|
|
2721
|
+
showDate?: number | undefined;
|
|
2722
|
+
constructor(mappedin: Mappedin, data: any);
|
|
2723
|
+
/**
|
|
2724
|
+
* Location this Event is occuring at.
|
|
2725
|
+
*
|
|
2726
|
+
* @property location {MappedinLocation}
|
|
2727
|
+
*/
|
|
2728
|
+
location(): MappedinLocation | undefined;
|
|
2729
|
+
static hydrate(events: any, mappedin: Mappedin): MappedinEvent[];
|
|
2730
|
+
static fetch(mappedin: Mappedin): Promise<MappedinEvent[]>;
|
|
2731
|
+
toJSON(): any;
|
|
2732
|
+
}
|
|
2733
|
+
}
|
|
2734
|
+
|
|
2735
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMapGroup' {
|
|
2736
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2737
|
+
import type { MappedinMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap';
|
|
2738
|
+
/**
|
|
2739
|
+
* A {@link MappedinMapGroup} is a collection of maps, usually representing the different floors of a single building. All Maps will be in a MapGroup, but if your Venue is only a single building (like a mall) you can likely ignore MapGroups entirely.
|
|
2740
|
+
*
|
|
2741
|
+
* @class MappedinMapGroup
|
|
2742
|
+
*/
|
|
2743
|
+
export class MappedinMapGroup {
|
|
2744
|
+
#private;
|
|
2745
|
+
id: string;
|
|
2746
|
+
name: string;
|
|
2747
|
+
constructor(mappedin: Mappedin, data: any);
|
|
2748
|
+
/**
|
|
2749
|
+
* Maps within this MapGroup.
|
|
2750
|
+
*
|
|
2751
|
+
* @property maps {[MappedinMap]}
|
|
2752
|
+
*/
|
|
2753
|
+
get maps(): MappedinMap[];
|
|
2754
|
+
static hydrate(mapGroups: any, mappedin: Mappedin): MappedinMapGroup[];
|
|
2755
|
+
static fetch(mappedin: Mappedin): Promise<MappedinMapGroup[]>;
|
|
2756
|
+
toJSON(): any;
|
|
2757
|
+
}
|
|
2758
|
+
}
|
|
2759
|
+
|
|
2760
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVenue' {
|
|
2761
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2762
|
+
import type { TLogo, TOpeningHours } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
2763
|
+
/**
|
|
2764
|
+
* A {@link MappedinVenue} is a specific place (like a mall) with one or more Maps (typically representing different floors) and Locations (stores, washrooms, elevators, etc).
|
|
2765
|
+
*
|
|
2766
|
+
* A Venue can have more properties such as 'name' and 'slug'. The {@link Mappedin} 'things' object is where you would specify what properties you want to download for Venues. Only specify what you will actually use, to minmimze transfer time. Work with your Mappedin developer relations contact to set up any custom properties you need.
|
|
2767
|
+
*
|
|
2768
|
+
* See below for an example a 'things' object with available Venue properties specified:
|
|
2769
|
+
*
|
|
2770
|
+
* things: {
|
|
2771
|
+
* venue: ['slug', 'name', 'language', 'address', 'city', 'state', 'postal', 'telephone', 'latitude', 'longitude', 'website', 'operationHours'],
|
|
2772
|
+
* locations: [],
|
|
2773
|
+
* categories: [],
|
|
2774
|
+
* maps: []
|
|
2775
|
+
* }
|
|
2776
|
+
*
|
|
2777
|
+
*
|
|
2778
|
+
* @class MappedinVenue
|
|
2779
|
+
*/
|
|
2780
|
+
export class MappedinVenue {
|
|
2781
|
+
#private;
|
|
2782
|
+
defaultMap: string;
|
|
2783
|
+
address: string;
|
|
2784
|
+
city: string;
|
|
2785
|
+
countrycode: string;
|
|
2786
|
+
externalId: string;
|
|
2787
|
+
id: string;
|
|
2788
|
+
latitude?: number;
|
|
2789
|
+
logo?: TLogo;
|
|
2790
|
+
longitude?: number;
|
|
2791
|
+
metadata?: any;
|
|
2792
|
+
name: string;
|
|
2793
|
+
operationHours?: TOpeningHours[];
|
|
2794
|
+
postal: string;
|
|
2795
|
+
slug: string;
|
|
2796
|
+
state: string;
|
|
2797
|
+
telephone: string;
|
|
2798
|
+
tzid: string;
|
|
2799
|
+
tzidOverride: string;
|
|
2800
|
+
utcOffset: string;
|
|
2801
|
+
website: string;
|
|
2802
|
+
constructor(data: any);
|
|
2803
|
+
static hydrate(data: any): MappedinVenue;
|
|
2804
|
+
static fetch(mappedin: Mappedin): Promise<MappedinVenue>;
|
|
2805
|
+
toJSON(): any;
|
|
2806
|
+
}
|
|
2807
|
+
}
|
|
2808
|
+
|
|
2809
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVortex' {
|
|
2810
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
2811
|
+
/**
|
|
2812
|
+
* A {@link MappedinVortex} is a special entity that represents a link between two or more {@link MappedinMap}s at a given {@link MappedinVenue}. It is typically something like an elevator or stairs. These are also known as Connections in some parts of the system.
|
|
2461
2813
|
*
|
|
2462
2814
|
* They can be marked (wheelchair) Accessible or not for pathfinding purposes. If you ask for Accessible directions, paths that include non-accessible Vortexes like Stairs will not be used.
|
|
2463
2815
|
*
|
|
@@ -2949,11 +3301,11 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
2949
3301
|
};
|
|
2950
3302
|
backgroundColor?: {
|
|
2951
3303
|
/**
|
|
2952
|
-
*
|
|
3304
|
+
* Background color of the marker when it is active
|
|
2953
3305
|
*/
|
|
2954
3306
|
active?: string;
|
|
2955
3307
|
/**
|
|
2956
|
-
*
|
|
3308
|
+
* Background color of the marker when it is inactive (grayed out due to being outranked by other labels around)
|
|
2957
3309
|
*/
|
|
2958
3310
|
inactive?: string;
|
|
2959
3311
|
};
|
|
@@ -3006,13 +3358,12 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3006
3358
|
RIGHT = "right"
|
|
3007
3359
|
}
|
|
3008
3360
|
class FloatingLabel extends BaseCollider implements ISmarterLabel {
|
|
3009
|
-
#private;
|
|
3010
3361
|
lines: number;
|
|
3011
|
-
setColor: (textForegroundColor: any, textBackgroundColor?: any) => void;
|
|
3012
3362
|
contextConfigured: boolean;
|
|
3013
3363
|
fillText: TDrawFn | undefined;
|
|
3014
3364
|
newStyle: {};
|
|
3015
3365
|
style: TStyle;
|
|
3366
|
+
setColor: () => void;
|
|
3016
3367
|
clearColor: () => void;
|
|
3017
3368
|
zoomProportion: number;
|
|
3018
3369
|
_cache: {};
|
|
@@ -3040,7 +3391,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3040
3391
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core' {
|
|
3041
3392
|
import FakeGeolocation from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/fake-geolocation';
|
|
3042
3393
|
import { IStateMachine } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.StateMachine';
|
|
3043
|
-
import {
|
|
3394
|
+
import { E_BLUEDOT_MARKER_STATE, E_BLUEDOT_STATE, E_BLUEDOT_STATE_REASON } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
3044
3395
|
import { IPubSub } from '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub';
|
|
3045
3396
|
import { PubSub } from '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub';
|
|
3046
3397
|
import { MappedinMap, MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
@@ -3183,7 +3534,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3183
3534
|
/**
|
|
3184
3535
|
* Visiblity State of the BlueDot marker
|
|
3185
3536
|
*/
|
|
3186
|
-
markerVisibility?:
|
|
3537
|
+
markerVisibility?: E_BLUEDOT_MARKER_STATE;
|
|
3187
3538
|
/**
|
|
3188
3539
|
* Reason why BlueDot may be in the current state
|
|
3189
3540
|
*/
|
|
@@ -3208,6 +3559,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3208
3559
|
|
|
3209
3560
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartTooltip' {
|
|
3210
3561
|
import './Mappedin.SmartTooltip.scss';
|
|
3562
|
+
import { COLLISION_RANKING_TIERS } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
3211
3563
|
import HTMLCollider, { IHTMLCollider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.HTMLCollider';
|
|
3212
3564
|
import { Vector3 } from 'three';
|
|
3213
3565
|
import { TColliderStrategy } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
@@ -3243,7 +3595,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3243
3595
|
selector?: string;
|
|
3244
3596
|
map: string;
|
|
3245
3597
|
padding?: number;
|
|
3246
|
-
collisionRank?:
|
|
3598
|
+
collisionRank?: COLLISION_RANKING_TIERS;
|
|
3247
3599
|
defaultAnchorType?: string;
|
|
3248
3600
|
enabledAnchorTypes?: {
|
|
3249
3601
|
[type: string]: boolean;
|
|
@@ -3553,533 +3905,56 @@ declare module '@mappedin/react-native-sdk/core/packages/navigator/Directive' {
|
|
|
3553
3905
|
export default Directive;
|
|
3554
3906
|
}
|
|
3555
3907
|
|
|
3556
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/
|
|
3557
|
-
|
|
3558
|
-
import CameraControls from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.CameraControls';
|
|
3559
|
-
import { Vector2, Vector3 } from 'three';
|
|
3560
|
-
import { changeListenerFn, TMapViewOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
3561
|
-
import RENDER from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks';
|
|
3562
|
-
import { INTERNAL_EVENT_PAYLOAD } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
3563
|
-
import { TPadding } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
3564
|
-
import Tween, { Easing } from '@tweenjs/tween.js';
|
|
3565
|
-
export type TFocusOptionsLegacy = {
|
|
3566
|
-
/**
|
|
3567
|
-
* An array of Nodes to focus in on
|
|
3568
|
-
*/
|
|
3569
|
-
nodes?: MappedinNode[];
|
|
3908
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub.typed' {
|
|
3909
|
+
export class PubSub<EVENT_PAYLOAD, EVENT extends keyof EVENT_PAYLOAD> {
|
|
3570
3910
|
/**
|
|
3571
|
-
*
|
|
3911
|
+
* @private
|
|
3572
3912
|
*/
|
|
3573
|
-
|
|
3913
|
+
_subscribers: any;
|
|
3574
3914
|
/**
|
|
3575
|
-
*
|
|
3576
|
-
* @defaultValue `100`
|
|
3915
|
+
* @private
|
|
3577
3916
|
*/
|
|
3578
|
-
|
|
3917
|
+
publish<EVENT_NAME extends EVENT>(eventName: EVENT_NAME, data?: EVENT_PAYLOAD[EVENT_NAME]): void;
|
|
3918
|
+
on<EVENT_NAME extends EVENT>(eventName: EVENT_NAME, fn: (payload: EVENT_PAYLOAD[EVENT_NAME] extends {
|
|
3919
|
+
data: null;
|
|
3920
|
+
} ? EVENT_PAYLOAD[EVENT_NAME]['data'] : EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
3921
|
+
off<EVENT_NAME extends keyof EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: (payload: EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
3579
3922
|
/**
|
|
3580
|
-
*
|
|
3581
|
-
* @defaultValue `true`
|
|
3923
|
+
* @private
|
|
3582
3924
|
*/
|
|
3583
|
-
changeZoom?: boolean;
|
|
3584
|
-
/**
|
|
3585
|
-
* The animation curve to use for zooming in. Uses the animateCamera one by default.
|
|
3586
|
-
*/
|
|
3587
|
-
curve?: typeof Easing;
|
|
3588
|
-
/**
|
|
3589
|
-
* Camera tilt between 0 (top-down) to 1 (from the side)
|
|
3590
|
-
*/
|
|
3591
|
-
tilt?: number;
|
|
3592
|
-
/**
|
|
3593
|
-
* Rotation in degrees
|
|
3594
|
-
*/
|
|
3595
|
-
rotation?: number;
|
|
3596
|
-
/**
|
|
3597
|
-
* You can overide the {{#crossLink "MapView/focusZoomFactor:property"}}{{/crossLink}} for a specific {{#crossLink "MapView/focusOn:method"}}{{/crossLink}} call, rather than globally, if you like.
|
|
3598
|
-
*/
|
|
3599
|
-
focusZoomFactor?: number;
|
|
3600
|
-
/**
|
|
3601
|
-
* Sets a floor for how close you can zoom in on the scene. If it's lower than mapView.controls.minZoom, it's ignored.
|
|
3602
|
-
* @defaultValue: 0
|
|
3603
|
-
*/
|
|
3604
|
-
minZoom?: number;
|
|
3605
|
-
padding?: TPadding;
|
|
3606
|
-
points?: any[];
|
|
3607
|
-
};
|
|
3608
|
-
export interface ICore {
|
|
3609
|
-
new (container: HTMLElement, venue: Mappedin, options?: TMapViewOptions): ICore;
|
|
3610
|
-
/**
|
|
3611
|
-
* @internal
|
|
3612
|
-
*/
|
|
3613
|
-
currentScale: number;
|
|
3614
|
-
cachedPadding: any;
|
|
3615
|
-
polygonMeshesById: any;
|
|
3616
|
-
textLabelsByPolygonId: any;
|
|
3617
|
-
renderer: any;
|
|
3618
|
-
scene: any;
|
|
3619
|
-
cameraParameters: Vector2;
|
|
3620
|
-
resolution: Vector2;
|
|
3621
|
-
determineNewLabelSize: any;
|
|
3622
|
-
on<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
3623
|
-
off<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
3624
|
-
publish<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, payload?: INTERNAL_EVENT_PAYLOAD[EVENT_NAME]): void;
|
|
3625
|
-
/**
|
|
3626
|
-
* Manual camera controls for MapView. Generally you should be using the functions on MapView like {{#crossLink "MapView/focusOn:method"}}{{/crossLink}},
|
|
3627
|
-
* but if you have some cool animations in mind, you can do it with the {{#crossLink "CameraControls"}}{{/crossLink}}.
|
|
3628
|
-
* Some of the functions don't do anything in 2D.
|
|
3629
|
-
*
|
|
3630
|
-
*/
|
|
3631
|
-
controls?: typeof CameraControls;
|
|
3632
|
-
/**
|
|
3633
|
-
* The Venue data this MapView is using.
|
|
3634
|
-
*
|
|
3635
|
-
* @property venue {MappedinVenue}
|
|
3636
|
-
* @final
|
|
3637
|
-
*/
|
|
3638
|
-
readonly venue: Mappedin;
|
|
3639
|
-
/**
|
|
3640
|
-
* The div MapView is using.
|
|
3641
|
-
*
|
|
3642
|
-
* @property container {Div}
|
|
3643
|
-
* @final
|
|
3644
|
-
*/
|
|
3645
|
-
readonly container: HTMLElement;
|
|
3646
|
-
/**
|
|
3647
|
-
* The ID of the Map currently being displayed.
|
|
3648
|
-
*
|
|
3649
|
-
*/
|
|
3650
|
-
readonly currentMap: string;
|
|
3651
|
-
/**
|
|
3652
|
-
* Change this factor to influence how much the camera zooms in on a {@link IMapView3D.focusOn} call.
|
|
3653
|
-
*
|
|
3654
|
-
* @property focusZoomFactor {Integer}
|
|
3655
|
-
* @default 3
|
|
3656
|
-
*/
|
|
3657
|
-
focusZoomFactor: number;
|
|
3658
|
-
/**
|
|
3659
|
-
* Returns the value you should call {@link CameraControls.setZoom} on to fit the Polygon exactly.
|
|
3660
|
-
*
|
|
3661
|
-
* @return The zoom level that will fit the Polygon
|
|
3662
|
-
*/
|
|
3663
|
-
getZoomLevelForPolygon(props: {
|
|
3664
|
-
/**
|
|
3665
|
-
* The Polygon or Polygon ID to get the zoom level for
|
|
3666
|
-
*/
|
|
3667
|
-
polygonOrPolygonId: MappedinPolygon | string;
|
|
3668
|
-
}): number;
|
|
3669
|
-
/**
|
|
3670
|
-
* Returns the value you should call {@link CameraControls.setZoom} on to fit the {@link IMapView3D.currentMap} exactly.
|
|
3671
|
-
*
|
|
3672
|
-
* @return The zoom level that will fit the {@link IMapView3D.currentMap}.
|
|
3673
|
-
*/
|
|
3674
|
-
getZoomLevelForCurrentMap(): number;
|
|
3675
|
-
/**
|
|
3676
|
-
* Returns the angle that points to north, in radians, from the default orientation.
|
|
3677
|
-
*
|
|
3678
|
-
* @return The angle to north from the default orientation, in radians.
|
|
3679
|
-
*/
|
|
3680
|
-
getNorth(): number;
|
|
3681
|
-
/**
|
|
3682
|
-
* Takes an element on the DOM and rotates it such that the top is pointing north. It will rotate with the camera, staying locked
|
|
3683
|
-
* on north. If you would like to align it do a different direction, or a different side of the element, pass in an offset. This
|
|
3684
|
-
* is how you would do a compass rose.
|
|
3685
|
-
*
|
|
3686
|
-
* This will modify your element's transform.
|
|
3687
|
-
*
|
|
3688
|
-
* @param element The element on the page to rotate.
|
|
3689
|
-
* @param offset The amount to offset the rotation by, in radians.
|
|
3690
|
-
*
|
|
3691
|
-
*/
|
|
3692
|
-
lockNorth(element: HTMLElement, offset?: number): void;
|
|
3693
|
-
/**
|
|
3694
|
-
* Stops the MapView from trying to rotate your element with the camera. Do this if you remove the element, or want to stop it from rotating.
|
|
3695
|
-
* @param element The node to stop rotating. It won't reset the transform, just leave it as is.
|
|
3696
|
-
*/
|
|
3697
|
-
unlockNorth(element: HTMLElement): void;
|
|
3698
|
-
currentInteractionEvent: string;
|
|
3699
|
-
interactivePolygons: any;
|
|
3700
|
-
highlightedPolygons: any;
|
|
3701
|
-
cameraPlane: any;
|
|
3702
|
-
/**
|
|
3703
|
-
* This is called when an interactive Polygon is clicked on.
|
|
3704
|
-
* You will almost certainly want to replace this with your own function in your client app.
|
|
3705
|
-
* Return "false" if you have consumed the event and it shouldn't bubble down to other Polygons beneath this one.
|
|
3706
|
-
*
|
|
3707
|
-
* @param polygonId polygonId passed in when tapping an interactive polygon
|
|
3708
|
-
*/
|
|
3709
|
-
onPolygonClicked(polygonId: string): boolean | void;
|
|
3710
|
-
onMapChanged(map: string): void;
|
|
3711
|
-
getPositionLatLon(lat: number, lon: number, map?: MappedinMap | string): Vector3;
|
|
3712
|
-
getPositionPolygon(polygon: MappedinPolygon | string): Vector3;
|
|
3713
|
-
convertTo3DMapPosition(nodeOrCoordinate: MappedinCoordinate | MappedinNode): Vector3;
|
|
3714
|
-
setPadding(padding: {
|
|
3715
|
-
top: number;
|
|
3716
|
-
left: number;
|
|
3717
|
-
bottom: number;
|
|
3718
|
-
right: number;
|
|
3719
|
-
}): void;
|
|
3720
|
-
/**
|
|
3721
|
-
* This is fired when the user taps/clicks on the MapView without hitting an interactive Polygon.
|
|
3722
|
-
* You will almost certainly want to replace this with your own function in your client app.
|
|
3723
|
-
* You would probably use this to clear any Polygon highlighting, in certain situations.
|
|
3724
|
-
*/
|
|
3725
|
-
onNothingClicked(): void;
|
|
3726
|
-
smartCollisionEngine: any;
|
|
3727
|
-
mapObjects: any;
|
|
3728
|
-
/**
|
|
3729
|
-
* The scene only renders when something has changed. This should be something a 3rd party developer doesn't need to worry about,
|
|
3730
|
-
* but if you are doing something weird, or have your own special tween for something, you will want to call this function.
|
|
3731
|
-
* You can call it as often as you want, it just sets a flag that we need to render again, and renders a few frames if we weren't already doing that.
|
|
3732
|
-
* Ignored in 2D.
|
|
3733
|
-
*/
|
|
3734
|
-
tryRendering(renderMode?: typeof RENDER): void;
|
|
3735
|
-
setMap(mapOrMapId: MappedinMap | string): Promise<null>;
|
|
3736
|
-
getPositionNode(node: MappedinNode): Vector3;
|
|
3737
|
-
cameraObject: any;
|
|
3738
|
-
setBackgroundColor(color: number | string, alpha?: number): void;
|
|
3739
|
-
mapManager: any;
|
|
3740
|
-
focusOn(focusOptions: TFocusOptionsLegacy): Tween;
|
|
3741
|
-
canvasWidth: number;
|
|
3742
|
-
canvasHeight: number;
|
|
3743
|
-
/**
|
|
3744
|
-
* Resets the MapView to the default state.
|
|
3745
|
-
*/
|
|
3746
|
-
resetState(): void;
|
|
3747
3925
|
destroy(): void;
|
|
3748
3926
|
}
|
|
3749
3927
|
}
|
|
3750
3928
|
|
|
3751
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/
|
|
3752
|
-
export
|
|
3753
|
-
/**
|
|
3754
|
-
* @private
|
|
3755
|
-
*/
|
|
3756
|
-
_subscribers: any;
|
|
3757
|
-
/**
|
|
3758
|
-
* @private
|
|
3759
|
-
*/
|
|
3760
|
-
publish<EVENT_NAME extends EVENT>(eventName: EVENT_NAME, data?: EVENT_PAYLOAD[EVENT_NAME]): void;
|
|
3761
|
-
on<EVENT_NAME extends EVENT>(eventName: EVENT_NAME, fn: (payload: EVENT_PAYLOAD[EVENT_NAME] extends {
|
|
3762
|
-
data: null;
|
|
3763
|
-
} ? EVENT_PAYLOAD[EVENT_NAME]['data'] : EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
3764
|
-
off<EVENT_NAME extends keyof EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: (payload: EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
3765
|
-
/**
|
|
3766
|
-
* @private
|
|
3767
|
-
*/
|
|
3768
|
-
destroy(): void;
|
|
3769
|
-
}
|
|
3770
|
-
}
|
|
3771
|
-
|
|
3772
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationRankings' {
|
|
3773
|
-
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
3774
|
-
import type { TLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
3775
|
-
/** One of these contains all the venue's rankings. * */
|
|
3776
|
-
export class MappedinLocationRankings {
|
|
3777
|
-
#private;
|
|
3778
|
-
constructor(data: any);
|
|
3779
|
-
locations: TLocation[];
|
|
3780
|
-
static hydrate(locationRankings: any): MappedinLocationRankings;
|
|
3781
|
-
static fetch(mappedin: Mappedin): Promise<MappedinLocationRankings>;
|
|
3782
|
-
toJSON(): any;
|
|
3783
|
-
}
|
|
3784
|
-
}
|
|
3785
|
-
|
|
3786
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState' {
|
|
3787
|
-
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
3788
|
-
/**
|
|
3789
|
-
* A location state, that can belong to any number of {@link MappedinLocation}s.
|
|
3790
|
-
* @class MappedinLocationState
|
|
3791
|
-
*/
|
|
3792
|
-
export class MappedinLocationState {
|
|
3793
|
-
#private;
|
|
3794
|
-
constructor(data: any);
|
|
3795
|
-
static hydrate(locationStates: any): MappedinLocationState[];
|
|
3796
|
-
id: string;
|
|
3797
|
-
name: string;
|
|
3798
|
-
value: string;
|
|
3799
|
-
static fetch(mappedin: Mappedin): Promise<MappedinLocationState[]>;
|
|
3800
|
-
toJSON(): any;
|
|
3801
|
-
}
|
|
3802
|
-
}
|
|
3803
|
-
|
|
3804
|
-
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme' {
|
|
3805
|
-
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
3806
|
-
export class MappedinTheme {
|
|
3807
|
-
#private;
|
|
3808
|
-
/**
|
|
3809
|
-
* Theme ID.
|
|
3810
|
-
*
|
|
3811
|
-
* @property id {string}
|
|
3812
|
-
*/
|
|
3813
|
-
id: string;
|
|
3814
|
-
constructor(data: any);
|
|
3815
|
-
static hydrate(themes: any): MappedinTheme[];
|
|
3816
|
-
static fetch(mappedin: Mappedin): Promise<MappedinTheme[]>;
|
|
3817
|
-
toJSON(): any;
|
|
3818
|
-
}
|
|
3819
|
-
}
|
|
3820
|
-
|
|
3821
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider' {
|
|
3822
|
-
import { ISmartCollisionEngine } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollisionEngine';
|
|
3823
|
-
import { Vector3 } from 'three';
|
|
3824
|
-
export type TRange = [number, number, number, number];
|
|
3825
|
-
type TCustomCollider<T> = ICollider & T;
|
|
3826
|
-
export type TColliderStrategyProps = {
|
|
3827
|
-
x: number;
|
|
3828
|
-
y: number;
|
|
3829
|
-
totalHeight?: number;
|
|
3830
|
-
totalWidth?: number;
|
|
3831
|
-
};
|
|
3832
|
-
export type TColliderStrategy = {
|
|
3833
|
-
name: string;
|
|
3834
|
-
getBoundingBox: (TColliderStrategyProps: any) => TRange;
|
|
3835
|
-
onStrategySelected: (collider: TCustomCollider<any>) => void;
|
|
3836
|
-
};
|
|
3837
|
-
export type TDimensions = {
|
|
3838
|
-
width: number;
|
|
3839
|
-
height: number;
|
|
3840
|
-
};
|
|
3841
|
-
export enum EColliderAction {
|
|
3842
|
-
'initial' = 0,
|
|
3843
|
-
'show' = 1,
|
|
3844
|
-
'hide' = 2
|
|
3845
|
-
}
|
|
3846
|
-
export interface ICollider {
|
|
3847
|
-
dimensions: TDimensions;
|
|
3848
|
-
screenPosition: [number, number];
|
|
3849
|
-
currentStrategyName: string | null;
|
|
3850
|
-
options?: Record<string, unknown>;
|
|
3851
|
-
mapId: string;
|
|
3852
|
-
visible: boolean;
|
|
3853
|
-
rank: number;
|
|
3854
|
-
_dirty?: boolean;
|
|
3855
|
-
id: string;
|
|
3856
|
-
setAction: (action: EColliderAction) => void;
|
|
3857
|
-
action?: EColliderAction;
|
|
3858
|
-
position: Vector3;
|
|
3859
|
-
__engine?: ISmartCollisionEngine;
|
|
3860
|
-
enable: () => void;
|
|
3861
|
-
disable: () => void;
|
|
3862
|
-
enabled: boolean;
|
|
3863
|
-
promote?: () => void;
|
|
3864
|
-
demote?: () => void;
|
|
3865
|
-
setPriority?: (rank: number) => void;
|
|
3866
|
-
resetPriority?: () => void;
|
|
3867
|
-
readonly strategies: TColliderStrategy[];
|
|
3868
|
-
colliderDidMount?: () => void;
|
|
3869
|
-
colliderDidNotFindAHome?: () => void;
|
|
3870
|
-
colliderDidGoOffscreen?: () => void;
|
|
3871
|
-
colliderDidGoOutsideGrid?: () => void;
|
|
3872
|
-
colliderDidUpdateVisiblity?: () => void;
|
|
3873
|
-
colliderDidUpdatePosition?: (x: number, y: number) => void;
|
|
3874
|
-
}
|
|
3875
|
-
class BaseCollider implements ICollider {
|
|
3876
|
-
__engine: any;
|
|
3877
|
-
_initialRank: number;
|
|
3878
|
-
screenPosition: [number, number];
|
|
3879
|
-
currentStrategyName: null;
|
|
3880
|
-
enabled: boolean;
|
|
3881
|
-
options: any;
|
|
3882
|
-
mapId: string;
|
|
3883
|
-
id: string;
|
|
3884
|
-
action: EColliderAction;
|
|
3885
|
-
rank: number;
|
|
3886
|
-
visible: boolean;
|
|
3887
|
-
position: Vector3;
|
|
3888
|
-
dimensions: {
|
|
3889
|
-
width: number;
|
|
3890
|
-
height: number;
|
|
3891
|
-
};
|
|
3892
|
-
flipIfNeeded(): void;
|
|
3893
|
-
constructor(options: any);
|
|
3894
|
-
setPriority(rank: any): void;
|
|
3895
|
-
setAction(action: any): void;
|
|
3896
|
-
resetPriority(): void;
|
|
3897
|
-
promote(): void;
|
|
3898
|
-
demote(): void;
|
|
3899
|
-
get strategies(): TColliderStrategy[];
|
|
3900
|
-
removeSelf(): void;
|
|
3901
|
-
enable(): void;
|
|
3902
|
-
disable(): void;
|
|
3903
|
-
colliderDidUpdatePosition(x: any, y: any): void;
|
|
3904
|
-
colliderDidNotFindAHome(): void;
|
|
3905
|
-
colliderDidMount(): void;
|
|
3906
|
-
colliderDidUpdateVisiblity(): void;
|
|
3907
|
-
}
|
|
3908
|
-
export default BaseCollider;
|
|
3909
|
-
}
|
|
3910
|
-
|
|
3911
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/shave-text' {
|
|
3912
|
-
export type TDrawFn = (ctx: CanvasRenderingContext2D, x: number, y: number) => void;
|
|
3913
|
-
type TShave = (str: string, size: number, maxWidth: number, maxLines?: number, lineHeight?: number, options?: {
|
|
3914
|
-
strokeText: boolean;
|
|
3915
|
-
}) => {
|
|
3916
|
-
maxWidth: number;
|
|
3917
|
-
maxHeight: number;
|
|
3918
|
-
lines: number;
|
|
3919
|
-
draw: TDrawFn;
|
|
3920
|
-
};
|
|
3921
|
-
export const shaveText: TShave;
|
|
3922
|
-
export {};
|
|
3923
|
-
}
|
|
3924
|
-
|
|
3925
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/fake-geolocation' {
|
|
3926
|
-
export default FakeGeolocation;
|
|
3927
|
-
class FakeGeolocation {
|
|
3928
|
-
constructor(options: any);
|
|
3929
|
-
active: boolean;
|
|
3930
|
-
positions: any[];
|
|
3931
|
-
positionIndex: number;
|
|
3932
|
-
timerList: any[];
|
|
3933
|
-
timeElapsed: number;
|
|
3934
|
-
startTime: number | undefined;
|
|
3935
|
-
startPos: number;
|
|
3936
|
-
endPos: number;
|
|
3937
|
-
smoothingType: any;
|
|
3938
|
-
isActive(): boolean;
|
|
3939
|
-
setCallbacks(success: any, error: any, options: any): void;
|
|
3940
|
-
watchPosition(success: any, error: any, options: any): void;
|
|
3941
|
-
sendPositionResponse(position: any): void;
|
|
3942
|
-
start(): void;
|
|
3943
|
-
pause(): void;
|
|
3944
|
-
speed: any;
|
|
3945
|
-
setPositions(positions: any): void;
|
|
3946
|
-
successCallback: any;
|
|
3947
|
-
errorCallback: any;
|
|
3948
|
-
options: any;
|
|
3949
|
-
clearWatch(): void;
|
|
3950
|
-
reset(): void;
|
|
3951
|
-
}
|
|
3952
|
-
}
|
|
3953
|
-
|
|
3954
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.StateMachine' {
|
|
3955
|
-
import { IPubSub } from '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub';
|
|
3956
|
-
import { E_BLUEDOT_STATE, E_MARKER_STATE } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
3957
|
-
/**
|
|
3958
|
-
What we just learned about the user's position.
|
|
3959
|
-
*/
|
|
3960
|
-
export enum ACTION {
|
|
3961
|
-
gotPosition = 0,
|
|
3962
|
-
gotPositionWithFloor = 1,
|
|
3963
|
-
gotError = 2,
|
|
3964
|
-
timedOut = 3,
|
|
3965
|
-
disabledBlueDot = 4,
|
|
3966
|
-
enabledBlueDot = 5
|
|
3967
|
-
}
|
|
3968
|
-
export interface IStateMachine extends IPubSub {
|
|
3969
|
-
state: E_BLUEDOT_STATE;
|
|
3970
|
-
markerState: E_MARKER_STATE | undefined;
|
|
3971
|
-
transition: (action: ACTION) => void;
|
|
3972
|
-
reset: () => void;
|
|
3973
|
-
}
|
|
3974
|
-
export enum STATEMACHINE_EVENT {
|
|
3975
|
-
stateChanged = 0,
|
|
3976
|
-
markerStateChanged = 1
|
|
3977
|
-
}
|
|
3978
|
-
const StateMachine: () => IStateMachine & IPubSub;
|
|
3979
|
-
export default StateMachine;
|
|
3980
|
-
}
|
|
3981
|
-
|
|
3982
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub' {
|
|
3983
|
-
type TChangeEventData = {
|
|
3984
|
-
oldValue: any;
|
|
3985
|
-
newValue: any;
|
|
3986
|
-
};
|
|
3987
|
-
type TListenerFn = (data: TChangeEventData) => void;
|
|
3988
|
-
export interface IPubSub {
|
|
3989
|
-
publish: (eventName: any, data: TChangeEventData) => void;
|
|
3990
|
-
on: (eventName: any, listenerFn: TListenerFn) => void;
|
|
3991
|
-
off: (eventName: any, listenerFn: TListenerFn) => void;
|
|
3992
|
-
destroy: () => void;
|
|
3993
|
-
_subscribers: {
|
|
3994
|
-
[eventName in any]?: TListenerFn[];
|
|
3995
|
-
};
|
|
3996
|
-
}
|
|
3997
|
-
export class PubSub {
|
|
3998
|
-
_subscribers: any;
|
|
3999
|
-
publish(eventName: any, data: any): void;
|
|
4000
|
-
on(eventName: any, fn: any): void;
|
|
4001
|
-
off(eventName: any, fn: any): void;
|
|
4002
|
-
destroy(): void;
|
|
4003
|
-
}
|
|
4004
|
-
export const PubSubLegacy: () => void;
|
|
4005
|
-
export function tinyObservable<T>(store: T): T & IPubSub;
|
|
4006
|
-
export {};
|
|
4007
|
-
}
|
|
4008
|
-
|
|
4009
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer' {
|
|
4010
|
-
import Search from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Search';
|
|
4011
|
-
import Analytics from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Analytics';
|
|
4012
|
-
import { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
4013
|
-
import { getVenue, Mappedin, MappedinDestinationSet, MappedinMap, TGetVenueBundleOptions, TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
4014
|
-
import { PositionUpdater } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
|
|
4015
|
-
import type { TMapViewOptions, TJourneyOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4016
|
-
import { labelThemes } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4017
|
-
import { MARKER_ANCHOR } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Marker';
|
|
4018
|
-
export { BEARING_TYPE, ACTION_TYPE } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
4019
|
-
export type { IDirectionsResult, E_MESSAGES as E_GET_DIRECTIONS_MESSAGES } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
4020
|
-
export type TMappedinInitializeOutput = {
|
|
4021
|
-
mapView: MapView;
|
|
4022
|
-
venue: Mappedin;
|
|
4023
|
-
};
|
|
4024
|
-
type _TGetVenueOptions = TGetVenueOptions & {
|
|
4025
|
-
useVenueBundle?: false | undefined;
|
|
4026
|
-
};
|
|
4027
|
-
type _TGetVenueBundleOptions = TGetVenueBundleOptions & {
|
|
4028
|
-
useVenueBundle: true;
|
|
4029
|
-
};
|
|
4030
|
-
type TMappedinInitializeOptions = {
|
|
4031
|
-
mapView?: TMapViewOptions;
|
|
4032
|
-
venue: _TGetVenueOptions | _TGetVenueBundleOptions;
|
|
4033
|
-
firstMapSelector?: (venue: Mappedin) => MappedinMap | MappedinMap['id'];
|
|
4034
|
-
};
|
|
3929
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.CameraControls' {
|
|
3930
|
+
export default CameraControls;
|
|
4035
3931
|
/**
|
|
3932
|
+
* The advanced, manual camera controls for {{#crossLink "MapView"}}{{/crossLink}}. You probably don't need to use this at all, instead relying on the MapView's {{#crossLink "MapView/focusOn:method"}}{{/crossLink}}, {{#crossLink "MapView/resetCamera:method"}}{{/crossLink}} and built in touch/mouse controls.
|
|
3933
|
+
* This class will let you do things like change the min/max zoom, tilt, and pan, attach to camera events, and move/animate the camera to specifc points.
|
|
4036
3934
|
*
|
|
4037
|
-
*
|
|
4038
|
-
*
|
|
4039
|
-
*
|
|
4040
|
-
*
|
|
3935
|
+
* The camera works by setting an anchor point on the scene at ground level and pointing the camera at it. {{#crossLink "CameraControls/zoom:method"}}{{/crossLink}} controls how far the camera is from the anchor, and {{#crossLink "CameraControls/tilt:method"}}{{/crossLink}}/{{#crossLink "CameraControls/rotate:method"}}{{/crossLink}} controls the angle the camera is rotated about it.
|
|
3936
|
+
* The camera will always be pointed directly at the anchor point. {{#crossLink "CameraControls/pan:method"}}{{/crossLink}} or {{#crossLink "CameraControls/setPosition:method"}}{{/crossLink}} will move that anchor around on the 2D ground plane.
|
|
3937
|
+
*
|
|
3938
|
+
* Created for you automatically with a MapView, don't re-create yourself.
|
|
3939
|
+
* @type {any}
|
|
3940
|
+
*
|
|
3941
|
+
* @class CameraControls
|
|
4041
3942
|
*/
|
|
4042
|
-
|
|
4043
|
-
export { COLLISION_RANKING_TIERS, STATE, E_SDK_EVENT, E_BLUEDOT_STATE_REASON, E_MARKER_STATE, E_BLUEDOT_EVENT, E_BLUEDOT_STATE, E_CAMERA_EVENT } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
4044
|
-
export { Search, getVenue, showVenue, PositionUpdater, Analytics, MappedinDestinationSet, MARKER_ANCHOR, labelThemes };
|
|
4045
|
-
export type { TMappedinDirective } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
|
|
4046
|
-
export type { TMapViewOptions, TMappedinInitializeOptions, TJourneyOptions };
|
|
4047
|
-
export type { TBlueDotPositionUpdate, TBlueDotStateChange, TEnableBlueDotOptions } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
|
|
4048
|
-
export * from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4049
|
-
export type { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
4050
|
-
export type { TSafeAreaInsets, TFocusOnTargets, TFocusOnCameraOptions, TAnimatePositionOptions, TCameraAnimationOptions, TFocusOnOptions, default as Camera } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
4051
|
-
export { SAFE_AREA_INSET_TYPE, ANIMATION_TWEENS, CAMERA_EASING_MODE } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
4052
|
-
export type { TGetVenueOptions, MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinNavigatable, MappedinCoordinate, TShowVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
4053
|
-
export { Mappedin, MappedinDirections } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
3943
|
+
let CameraControls: any;
|
|
4054
3944
|
}
|
|
4055
3945
|
|
|
4056
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.
|
|
4057
|
-
|
|
4058
|
-
|
|
4059
|
-
|
|
4060
|
-
|
|
4061
|
-
|
|
4062
|
-
|
|
4063
|
-
export interface IHTMLCollider extends ICollider {
|
|
4064
|
-
containerEl: any;
|
|
4065
|
-
contentEl: any;
|
|
4066
|
-
}
|
|
4067
|
-
class HTMLCollider extends BaseCollider {
|
|
4068
|
-
contentEl: any;
|
|
4069
|
-
containerEl: any;
|
|
4070
|
-
removeSelf(): void;
|
|
4071
|
-
enable(): void;
|
|
4072
|
-
disable(): void;
|
|
4073
|
-
colliderDidGoOffscreen(): void;
|
|
4074
|
-
colliderDidNotFindAHome(): void;
|
|
4075
|
-
colliderDidUpdatePosition(x: any, y: any): void;
|
|
4076
|
-
colliderDidMount(): void;
|
|
4077
|
-
colliderDidUpdateVisiblity(): void;
|
|
3946
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks' {
|
|
3947
|
+
export default RENDER;
|
|
3948
|
+
namespace RENDER {
|
|
3949
|
+
const ANIMATED: string;
|
|
3950
|
+
const ALWAYS_ON_TOP: string;
|
|
3951
|
+
const ALL: string;
|
|
3952
|
+
const TWEEN: string;
|
|
4078
3953
|
}
|
|
4079
|
-
export default HTMLCollider;
|
|
4080
3954
|
}
|
|
4081
3955
|
|
|
4082
3956
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView' {
|
|
3957
|
+
import './internal/Mappedin.css';
|
|
4083
3958
|
import { Mappedin, MappedinCoordinate, MappedinLocation, MappedinMap, MappedinNode, MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
4084
3959
|
import { E_SDK_EVENT_PAYLOAD, TCreateCustomInnerHTMLTooltipOptions, TCreateCustomTooltipOptions, TCreateMarkerOptions, TCreateTextTooltipOptions, TLabelAllLocationFlatLabelOptions, TLabelAllLocationFloatingLabelOptions, TFloatingLabelPolygonOptions, TMapViewOptions, TPathOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4085
3960
|
import { E_SDK_EVENT, STATE } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
@@ -4408,6 +4283,316 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView' {
|
|
|
4408
4283
|
}
|
|
4409
4284
|
}
|
|
4410
4285
|
|
|
4286
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer' {
|
|
4287
|
+
import Search from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Search';
|
|
4288
|
+
import Analytics from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Analytics';
|
|
4289
|
+
import { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
4290
|
+
import { getVenue, getVenueBundle, Mappedin, MappedinDestinationSet, MappedinMap, TGetVenueBundleOptions, TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
4291
|
+
import { PositionUpdater } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
|
|
4292
|
+
import type { TMapViewOptions, TJourneyOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4293
|
+
import { labelThemes } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4294
|
+
import { MARKER_ANCHOR } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Marker';
|
|
4295
|
+
export { BEARING_TYPE, ACTION_TYPE } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
4296
|
+
export type { IDirectionsResult, E_MESSAGES as E_GET_DIRECTIONS_MESSAGES } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
4297
|
+
export type TMappedinInitializeOutput = {
|
|
4298
|
+
mapView: MapView;
|
|
4299
|
+
venue: Mappedin;
|
|
4300
|
+
};
|
|
4301
|
+
type _TGetVenueOptions = TGetVenueOptions & {
|
|
4302
|
+
useVenueBundle?: false | undefined;
|
|
4303
|
+
};
|
|
4304
|
+
type _TGetVenueBundleOptions = TGetVenueBundleOptions & {
|
|
4305
|
+
useVenueBundle: true;
|
|
4306
|
+
};
|
|
4307
|
+
type TMappedinInitializeOptions = {
|
|
4308
|
+
mapView?: TMapViewOptions;
|
|
4309
|
+
venue: _TGetVenueOptions | _TGetVenueBundleOptions;
|
|
4310
|
+
firstMapSelector?: (venue: Mappedin) => MappedinMap | MappedinMap['id'];
|
|
4311
|
+
};
|
|
4312
|
+
/**
|
|
4313
|
+
*
|
|
4314
|
+
* @param el HTML Element where the mapView should be placed
|
|
4315
|
+
* @param venue Venue Object returned by {@link getVenue}
|
|
4316
|
+
* @param options MapView Options
|
|
4317
|
+
* @returns
|
|
4318
|
+
*/
|
|
4319
|
+
function showVenue<T extends Mappedin>(el: HTMLElement, venue: T, options?: TMapViewOptions): Promise<MapView>;
|
|
4320
|
+
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 } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
4321
|
+
export { Search, getVenue, getVenueBundle, showVenue, PositionUpdater, Analytics, MappedinDestinationSet, MARKER_ANCHOR, labelThemes };
|
|
4322
|
+
export type { TMappedinDirective } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinDirections';
|
|
4323
|
+
export type { TMapViewOptions, TMappedinInitializeOptions, TJourneyOptions };
|
|
4324
|
+
export type { TBlueDotPositionUpdate, TBlueDotStateChange, TEnableBlueDotOptions } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
|
|
4325
|
+
export * from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4326
|
+
export type { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
4327
|
+
export type { TSafeAreaInsets, TFocusOnTargets, TFocusOnCameraOptions, TAnimatePositionOptions, TCameraAnimationOptions, TFocusOnOptions, default as Camera } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
4328
|
+
export { SAFE_AREA_INSET_TYPE, ANIMATION_TWEENS, CAMERA_EASING_MODE } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
4329
|
+
export type { TGetVenueOptions, MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinNavigatable, MappedinCoordinate, TShowVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
4330
|
+
export { Mappedin, MappedinDirections } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
4331
|
+
}
|
|
4332
|
+
|
|
4333
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationRankings' {
|
|
4334
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
4335
|
+
import type { TLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
4336
|
+
/** One of these contains all the venue's rankings. * */
|
|
4337
|
+
export class MappedinLocationRankings {
|
|
4338
|
+
#private;
|
|
4339
|
+
constructor(data: any);
|
|
4340
|
+
locations: TLocation[];
|
|
4341
|
+
static hydrate(locationRankings: any): MappedinLocationRankings;
|
|
4342
|
+
static fetch(mappedin: Mappedin): Promise<MappedinLocationRankings>;
|
|
4343
|
+
toJSON(): any;
|
|
4344
|
+
}
|
|
4345
|
+
}
|
|
4346
|
+
|
|
4347
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationState' {
|
|
4348
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
4349
|
+
/**
|
|
4350
|
+
* A location state, that can belong to any number of {@link MappedinLocation}s.
|
|
4351
|
+
* @class MappedinLocationState
|
|
4352
|
+
*/
|
|
4353
|
+
export class MappedinLocationState {
|
|
4354
|
+
#private;
|
|
4355
|
+
constructor(data: any);
|
|
4356
|
+
static hydrate(locationStates: any): MappedinLocationState[];
|
|
4357
|
+
id: string;
|
|
4358
|
+
name: string;
|
|
4359
|
+
value: string;
|
|
4360
|
+
static fetch(mappedin: Mappedin): Promise<MappedinLocationState[]>;
|
|
4361
|
+
toJSON(): any;
|
|
4362
|
+
}
|
|
4363
|
+
}
|
|
4364
|
+
|
|
4365
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme' {
|
|
4366
|
+
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
4367
|
+
export class MappedinTheme {
|
|
4368
|
+
#private;
|
|
4369
|
+
/**
|
|
4370
|
+
* Theme ID.
|
|
4371
|
+
*
|
|
4372
|
+
* @property id {string}
|
|
4373
|
+
*/
|
|
4374
|
+
id: string;
|
|
4375
|
+
constructor(data: any);
|
|
4376
|
+
static hydrate(themes: any): MappedinTheme[];
|
|
4377
|
+
static fetch(mappedin: Mappedin): Promise<MappedinTheme[]>;
|
|
4378
|
+
toJSON(): any;
|
|
4379
|
+
}
|
|
4380
|
+
}
|
|
4381
|
+
|
|
4382
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider' {
|
|
4383
|
+
import { ISmartCollisionEngine } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollisionEngine';
|
|
4384
|
+
import { Vector3 } from 'three';
|
|
4385
|
+
export type TRange = [number, number, number, number];
|
|
4386
|
+
type TCustomCollider<T> = ICollider & T;
|
|
4387
|
+
export type TColliderStrategyProps = {
|
|
4388
|
+
x: number;
|
|
4389
|
+
y: number;
|
|
4390
|
+
totalHeight?: number;
|
|
4391
|
+
totalWidth?: number;
|
|
4392
|
+
};
|
|
4393
|
+
export type TColliderStrategy = {
|
|
4394
|
+
name: string;
|
|
4395
|
+
getBoundingBox: (TColliderStrategyProps: any) => TRange;
|
|
4396
|
+
onStrategySelected: (collider: TCustomCollider<any>) => void;
|
|
4397
|
+
};
|
|
4398
|
+
export type TDimensions = {
|
|
4399
|
+
width: number;
|
|
4400
|
+
height: number;
|
|
4401
|
+
};
|
|
4402
|
+
export enum EColliderAction {
|
|
4403
|
+
'initial' = 0,
|
|
4404
|
+
'show' = 1,
|
|
4405
|
+
'hide' = 2
|
|
4406
|
+
}
|
|
4407
|
+
export interface ICollider {
|
|
4408
|
+
dimensions: TDimensions;
|
|
4409
|
+
screenPosition: [number, number];
|
|
4410
|
+
currentStrategyName: string | null;
|
|
4411
|
+
options?: Record<string, unknown>;
|
|
4412
|
+
mapId: string;
|
|
4413
|
+
visible: boolean;
|
|
4414
|
+
rank: number;
|
|
4415
|
+
_dirty?: boolean;
|
|
4416
|
+
id: string;
|
|
4417
|
+
setAction: (action: EColliderAction) => void;
|
|
4418
|
+
action?: EColliderAction;
|
|
4419
|
+
position: Vector3;
|
|
4420
|
+
__engine?: ISmartCollisionEngine;
|
|
4421
|
+
enable: () => void;
|
|
4422
|
+
disable: () => void;
|
|
4423
|
+
enabled: boolean;
|
|
4424
|
+
promote?: () => void;
|
|
4425
|
+
demote?: () => void;
|
|
4426
|
+
setPriority?: (rank: number) => void;
|
|
4427
|
+
resetPriority?: () => void;
|
|
4428
|
+
readonly strategies: TColliderStrategy[];
|
|
4429
|
+
colliderDidMount?: () => void;
|
|
4430
|
+
colliderDidNotFindAHome?: () => void;
|
|
4431
|
+
colliderDidGoOffscreen?: () => void;
|
|
4432
|
+
colliderDidGoOutsideGrid?: () => void;
|
|
4433
|
+
colliderDidUpdateVisiblity?: () => void;
|
|
4434
|
+
colliderDidUpdatePosition?: (x: number, y: number) => void;
|
|
4435
|
+
}
|
|
4436
|
+
class BaseCollider implements ICollider {
|
|
4437
|
+
__engine: any;
|
|
4438
|
+
_initialRank: number;
|
|
4439
|
+
screenPosition: [number, number];
|
|
4440
|
+
currentStrategyName: null;
|
|
4441
|
+
enabled: boolean;
|
|
4442
|
+
options: any;
|
|
4443
|
+
mapId: string;
|
|
4444
|
+
id: string;
|
|
4445
|
+
action: EColliderAction;
|
|
4446
|
+
rank: number;
|
|
4447
|
+
visible: boolean;
|
|
4448
|
+
position: Vector3;
|
|
4449
|
+
dimensions: {
|
|
4450
|
+
width: number;
|
|
4451
|
+
height: number;
|
|
4452
|
+
};
|
|
4453
|
+
flipIfNeeded(): void;
|
|
4454
|
+
constructor(options: any);
|
|
4455
|
+
setPriority(rank: any): void;
|
|
4456
|
+
setAction(action: any): void;
|
|
4457
|
+
resetPriority(): void;
|
|
4458
|
+
promote(): void;
|
|
4459
|
+
demote(): void;
|
|
4460
|
+
get strategies(): TColliderStrategy[];
|
|
4461
|
+
removeSelf(): void;
|
|
4462
|
+
enable(): void;
|
|
4463
|
+
disable(): void;
|
|
4464
|
+
colliderDidUpdatePosition(x: any, y: any): void;
|
|
4465
|
+
colliderDidNotFindAHome(): void;
|
|
4466
|
+
colliderDidMount(): void;
|
|
4467
|
+
colliderDidUpdateVisiblity(): void;
|
|
4468
|
+
}
|
|
4469
|
+
export default BaseCollider;
|
|
4470
|
+
}
|
|
4471
|
+
|
|
4472
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/shave-text' {
|
|
4473
|
+
export type TDrawFn = (ctx: CanvasRenderingContext2D, x: number, y: number) => void;
|
|
4474
|
+
type TShave = (str: string, size: number, maxWidth: number, maxLines?: number, lineHeight?: number, options?: {
|
|
4475
|
+
strokeText: boolean;
|
|
4476
|
+
}) => {
|
|
4477
|
+
maxWidth: number;
|
|
4478
|
+
maxHeight: number;
|
|
4479
|
+
lines: number;
|
|
4480
|
+
draw: TDrawFn;
|
|
4481
|
+
};
|
|
4482
|
+
export const shaveText: TShave;
|
|
4483
|
+
export {};
|
|
4484
|
+
}
|
|
4485
|
+
|
|
4486
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/fake-geolocation' {
|
|
4487
|
+
export default FakeGeolocation;
|
|
4488
|
+
class FakeGeolocation {
|
|
4489
|
+
constructor(options: any);
|
|
4490
|
+
active: boolean;
|
|
4491
|
+
positions: any[];
|
|
4492
|
+
positionIndex: number;
|
|
4493
|
+
timerList: any[];
|
|
4494
|
+
timeElapsed: number;
|
|
4495
|
+
startTime: number | undefined;
|
|
4496
|
+
startPos: number;
|
|
4497
|
+
endPos: number;
|
|
4498
|
+
smoothingType: any;
|
|
4499
|
+
isActive(): boolean;
|
|
4500
|
+
setCallbacks(success: any, error: any, options: any): void;
|
|
4501
|
+
watchPosition(success: any, error: any, options: any): void;
|
|
4502
|
+
sendPositionResponse(position: any): void;
|
|
4503
|
+
start(): void;
|
|
4504
|
+
pause(): void;
|
|
4505
|
+
speed: any;
|
|
4506
|
+
setPositions(positions: any): void;
|
|
4507
|
+
successCallback: any;
|
|
4508
|
+
errorCallback: any;
|
|
4509
|
+
options: any;
|
|
4510
|
+
clearWatch(): void;
|
|
4511
|
+
reset(): void;
|
|
4512
|
+
}
|
|
4513
|
+
}
|
|
4514
|
+
|
|
4515
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.StateMachine' {
|
|
4516
|
+
import { IPubSub } from '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub';
|
|
4517
|
+
import { E_BLUEDOT_STATE, E_BLUEDOT_MARKER_STATE } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
4518
|
+
/**
|
|
4519
|
+
What we just learned about the user's position.
|
|
4520
|
+
*/
|
|
4521
|
+
export enum ACTION {
|
|
4522
|
+
gotPosition = 0,
|
|
4523
|
+
gotPositionWithFloor = 1,
|
|
4524
|
+
gotError = 2,
|
|
4525
|
+
timedOut = 3,
|
|
4526
|
+
disabledBlueDot = 4,
|
|
4527
|
+
enabledBlueDot = 5
|
|
4528
|
+
}
|
|
4529
|
+
export interface IStateMachine extends IPubSub {
|
|
4530
|
+
state: E_BLUEDOT_STATE;
|
|
4531
|
+
markerState: E_BLUEDOT_MARKER_STATE | undefined;
|
|
4532
|
+
transition: (action: ACTION) => void;
|
|
4533
|
+
reset: () => void;
|
|
4534
|
+
}
|
|
4535
|
+
export enum STATEMACHINE_EVENT {
|
|
4536
|
+
stateChanged = 0,
|
|
4537
|
+
markerStateChanged = 1
|
|
4538
|
+
}
|
|
4539
|
+
const StateMachine: () => IStateMachine & IPubSub;
|
|
4540
|
+
export default StateMachine;
|
|
4541
|
+
}
|
|
4542
|
+
|
|
4543
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub' {
|
|
4544
|
+
type TChangeEventData = {
|
|
4545
|
+
oldValue: any;
|
|
4546
|
+
newValue: any;
|
|
4547
|
+
};
|
|
4548
|
+
type TListenerFn = (data: TChangeEventData) => void;
|
|
4549
|
+
export interface IPubSub {
|
|
4550
|
+
publish: (eventName: any, data: TChangeEventData) => void;
|
|
4551
|
+
on: (eventName: any, listenerFn: TListenerFn) => void;
|
|
4552
|
+
off: (eventName: any, listenerFn: TListenerFn) => void;
|
|
4553
|
+
destroy: () => void;
|
|
4554
|
+
_subscribers: {
|
|
4555
|
+
[eventName in any]?: TListenerFn[];
|
|
4556
|
+
};
|
|
4557
|
+
}
|
|
4558
|
+
export class PubSub {
|
|
4559
|
+
_subscribers: any;
|
|
4560
|
+
publish(eventName: any, data: any): void;
|
|
4561
|
+
on(eventName: any, fn: any): void;
|
|
4562
|
+
off(eventName: any, fn: any): void;
|
|
4563
|
+
destroy(): void;
|
|
4564
|
+
}
|
|
4565
|
+
export const PubSubLegacy: () => void;
|
|
4566
|
+
export function tinyObservable<T>(store: T): T & IPubSub;
|
|
4567
|
+
export {};
|
|
4568
|
+
}
|
|
4569
|
+
|
|
4570
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.HTMLCollider' {
|
|
4571
|
+
import BaseCollider, { ICollider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
4572
|
+
export type TRange = [number, number, number, number];
|
|
4573
|
+
export type TDimensions = {
|
|
4574
|
+
width: number;
|
|
4575
|
+
height: number;
|
|
4576
|
+
};
|
|
4577
|
+
export interface IHTMLCollider extends ICollider {
|
|
4578
|
+
containerEl: any;
|
|
4579
|
+
contentEl: any;
|
|
4580
|
+
}
|
|
4581
|
+
class HTMLCollider extends BaseCollider {
|
|
4582
|
+
contentEl: any;
|
|
4583
|
+
containerEl: any;
|
|
4584
|
+
removeSelf(): void;
|
|
4585
|
+
enable(): void;
|
|
4586
|
+
disable(): void;
|
|
4587
|
+
colliderDidGoOffscreen(): void;
|
|
4588
|
+
colliderDidNotFindAHome(): void;
|
|
4589
|
+
colliderDidUpdatePosition(x: any, y: any): void;
|
|
4590
|
+
colliderDidMount(): void;
|
|
4591
|
+
colliderDidUpdateVisiblity(): void;
|
|
4592
|
+
}
|
|
4593
|
+
export default HTMLCollider;
|
|
4594
|
+
}
|
|
4595
|
+
|
|
4411
4596
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Journey' {
|
|
4412
4597
|
import type Directive from '@mappedin/react-native-sdk/core/packages/navigator/Directive';
|
|
4413
4598
|
import type INode from '@mappedin/react-native-sdk/core/packages/navigator/interfaces/INode';
|
|
@@ -4520,98 +4705,9 @@ declare module '@mappedin/react-native-sdk/core/packages/navigator/interfaces/IL
|
|
|
4520
4705
|
export default ILocation;
|
|
4521
4706
|
}
|
|
4522
4707
|
|
|
4523
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.CameraControls' {
|
|
4524
|
-
export default CameraControls;
|
|
4525
|
-
/**
|
|
4526
|
-
* The advanced, manual camera controls for {{#crossLink "MapView"}}{{/crossLink}}. You probably don't need to use this at all, instead relying on the MapView's {{#crossLink "MapView/focusOn:method"}}{{/crossLink}}, {{#crossLink "MapView/resetCamera:method"}}{{/crossLink}} and built in touch/mouse controls.
|
|
4527
|
-
* This class will let you do things like change the min/max zoom, tilt, and pan, attach to camera events, and move/animate the camera to specifc points.
|
|
4528
|
-
*
|
|
4529
|
-
* The camera works by setting an anchor point on the scene at ground level and pointing the camera at it. {{#crossLink "CameraControls/zoom:method"}}{{/crossLink}} controls how far the camera is from the anchor, and {{#crossLink "CameraControls/tilt:method"}}{{/crossLink}}/{{#crossLink "CameraControls/rotate:method"}}{{/crossLink}} controls the angle the camera is rotated about it.
|
|
4530
|
-
* The camera will always be pointed directly at the anchor point. {{#crossLink "CameraControls/pan:method"}}{{/crossLink}} or {{#crossLink "CameraControls/setPosition:method"}}{{/crossLink}} will move that anchor around on the 2D ground plane.
|
|
4531
|
-
*
|
|
4532
|
-
* Created for you automatically with a MapView, don't re-create yourself.
|
|
4533
|
-
* @type {any}
|
|
4534
|
-
*
|
|
4535
|
-
* @class CameraControls
|
|
4536
|
-
*/
|
|
4537
|
-
let CameraControls: any;
|
|
4538
|
-
}
|
|
4539
|
-
|
|
4540
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks' {
|
|
4541
|
-
export default RENDER;
|
|
4542
|
-
namespace RENDER {
|
|
4543
|
-
const ANIMATED: string;
|
|
4544
|
-
const ALWAYS_ON_TOP: string;
|
|
4545
|
-
const ALL: string;
|
|
4546
|
-
const TWEEN: string;
|
|
4547
|
-
}
|
|
4548
|
-
}
|
|
4549
|
-
|
|
4550
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollisionEngine' {
|
|
4551
|
-
import { Vector3 } from 'three';
|
|
4552
|
-
import './Mappedin.SmartCollisionEngine.scss';
|
|
4553
|
-
import { ICollider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
4554
|
-
export const COLLIDER_STRATEGY_LOW_PRIORITY = "LOW_PRIORITY";
|
|
4555
|
-
type TProjectFn = ({ position, mapId }: {
|
|
4556
|
-
position: Vector3;
|
|
4557
|
-
mapId: string;
|
|
4558
|
-
}) => [number, number];
|
|
4559
|
-
export interface ISmartCollisionEngine {
|
|
4560
|
-
add: (colliderId: string, collider: ICollider) => void;
|
|
4561
|
-
remove: (colliderId: string) => void;
|
|
4562
|
-
init: (container: HTMLElement, projectFn: TProjectFn) => void;
|
|
4563
|
-
resize: (container: HTMLElement) => void;
|
|
4564
|
-
resort: () => void;
|
|
4565
|
-
updatePosition: () => void;
|
|
4566
|
-
updateVisibility: () => void;
|
|
4567
|
-
makeCollidersDirty: () => void;
|
|
4568
|
-
update: () => void;
|
|
4569
|
-
destroy: () => void;
|
|
4570
|
-
makeCollidersDirtyThrottled: (time: number) => void;
|
|
4571
|
-
_makeCollidersDirtyThrottled?: [() => void, number];
|
|
4572
|
-
}
|
|
4573
|
-
const SmartCollisionEngine: () => ISmartCollisionEngine;
|
|
4574
|
-
export default SmartCollisionEngine;
|
|
4575
|
-
}
|
|
4576
|
-
|
|
4577
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Search' {
|
|
4578
|
-
export default Search;
|
|
4579
|
-
/**
|
|
4580
|
-
* A class to access the Mappedin Search API. This will be created for you as part of Mappedin.{{#crossLink "Mappedin/initailize:method"}}{{/crossLink}}, but you can also create one manually.
|
|
4581
|
-
*
|
|
4582
|
-
* @class Search
|
|
4583
|
-
* @type {any}
|
|
4584
|
-
* @param options {Object} A list of configuration options for the search API.
|
|
4585
|
-
@param [options.venue] {String} The venue slug to search for
|
|
4586
|
-
@param [options.key] {String} Your search key
|
|
4587
|
-
@param [options.secret] {String} Your search secret
|
|
4588
|
-
@param [options.smart] {Boolean} Whether the new Smart Search should be used.
|
|
4589
|
-
@param [options.endpoint] {String} The endpoint for search.
|
|
4590
|
-
@param [options.locations] {Array} Array of MappedinLocations for this venue. This is optional, but will enable fallback search.
|
|
4591
|
-
@param [options.categories] {Array} Array of MappedinCategorys for this venue. This is optional, but will enable fallback search.
|
|
4592
|
-
*/
|
|
4593
|
-
let Search: any;
|
|
4594
|
-
}
|
|
4595
|
-
|
|
4596
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Analytics' {
|
|
4597
|
-
export default Analytics;
|
|
4598
|
-
/**
|
|
4599
|
-
* A class to access the Mappedin Analytics platform. Correct usage will improve Smart Search results, and lead to more accurate insights.
|
|
4600
|
-
* This will be created for you as part of Mappedin.{{#crossLink "Mappedin/initialize:method"}}{{/crossLink}}, but you can also create one manually. You are mostly going to use `locationSelected`.
|
|
4601
|
-
*
|
|
4602
|
-
* @type {any}
|
|
4603
|
-
*
|
|
4604
|
-
* @class Analytics
|
|
4605
|
-
* @param options {Object} A list of configuration options for the Analytics API.
|
|
4606
|
-
* @param [options.key] {String} The same key you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
4607
|
-
* @param [options.secret] {String} The same secret you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
4608
|
-
* @param [options.venue] {String} The same venue slug you are using for getVenue. Handled automatically in MapView.initialize()
|
|
4609
|
-
*/
|
|
4610
|
-
var Analytics: any;
|
|
4611
|
-
}
|
|
4612
|
-
|
|
4613
4708
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Marker' {
|
|
4614
4709
|
import './Mappedin.Marker.scss';
|
|
4710
|
+
import { COLLISION_RANKING_TIERS } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
4615
4711
|
import HTMLCollider, { IHTMLCollider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.HTMLCollider';
|
|
4616
4712
|
import { Vector3 } from 'three';
|
|
4617
4713
|
import { TColliderStrategy } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
@@ -4641,7 +4737,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4641
4737
|
mapId: string;
|
|
4642
4738
|
id?: string;
|
|
4643
4739
|
anchor?: MARKER_ANCHOR;
|
|
4644
|
-
collisionRank?:
|
|
4740
|
+
collisionRank?: COLLISION_RANKING_TIERS;
|
|
4645
4741
|
};
|
|
4646
4742
|
type TTooltipStyle = {
|
|
4647
4743
|
top?: string;
|
|
@@ -4847,6 +4943,69 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4847
4943
|
import { Vector3 } from "three/src/math/Vector3";
|
|
4848
4944
|
}
|
|
4849
4945
|
|
|
4946
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Search' {
|
|
4947
|
+
export default Search;
|
|
4948
|
+
/**
|
|
4949
|
+
* A class to access the Mappedin Search API. This will be created for you as part of Mappedin.{{#crossLink "Mappedin/initailize:method"}}{{/crossLink}}, but you can also create one manually.
|
|
4950
|
+
*
|
|
4951
|
+
* @class Search
|
|
4952
|
+
* @type {any}
|
|
4953
|
+
* @param options {Object} A list of configuration options for the search API.
|
|
4954
|
+
@param [options.venue] {String} The venue slug to search for
|
|
4955
|
+
@param [options.key] {String} Your search key
|
|
4956
|
+
@param [options.secret] {String} Your search secret
|
|
4957
|
+
@param [options.smart] {Boolean} Whether the new Smart Search should be used.
|
|
4958
|
+
@param [options.endpoint] {String} The endpoint for search.
|
|
4959
|
+
@param [options.locations] {Array} Array of MappedinLocations for this venue. This is optional, but will enable fallback search.
|
|
4960
|
+
@param [options.categories] {Array} Array of MappedinCategorys for this venue. This is optional, but will enable fallback search.
|
|
4961
|
+
*/
|
|
4962
|
+
let Search: any;
|
|
4963
|
+
}
|
|
4964
|
+
|
|
4965
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Analytics' {
|
|
4966
|
+
export default Analytics;
|
|
4967
|
+
/**
|
|
4968
|
+
* A class to access the Mappedin Analytics platform. Correct usage will improve Smart Search results, and lead to more accurate insights.
|
|
4969
|
+
* This will be created for you as part of Mappedin.{{#crossLink "Mappedin/initialize:method"}}{{/crossLink}}, but you can also create one manually. You are mostly going to use `locationSelected`.
|
|
4970
|
+
*
|
|
4971
|
+
* @type {any}
|
|
4972
|
+
*
|
|
4973
|
+
* @class Analytics
|
|
4974
|
+
* @param options {Object} A list of configuration options for the Analytics API.
|
|
4975
|
+
* @param [options.key] {String} The same key you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
4976
|
+
* @param [options.secret] {String} The same secret you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
4977
|
+
* @param [options.venue] {String} The same venue slug you are using for getVenue. Handled automatically in MapView.initialize()
|
|
4978
|
+
*/
|
|
4979
|
+
var Analytics: any;
|
|
4980
|
+
}
|
|
4981
|
+
|
|
4982
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollisionEngine' {
|
|
4983
|
+
import { Vector3 } from 'three';
|
|
4984
|
+
import './Mappedin.SmartCollisionEngine.scss';
|
|
4985
|
+
import { ICollider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
4986
|
+
export const COLLIDER_STRATEGY_LOW_PRIORITY = "LOW_PRIORITY";
|
|
4987
|
+
type TProjectFn = ({ position, mapId }: {
|
|
4988
|
+
position: Vector3;
|
|
4989
|
+
mapId: string;
|
|
4990
|
+
}) => [number, number];
|
|
4991
|
+
export interface ISmartCollisionEngine {
|
|
4992
|
+
add: (colliderId: string, collider: ICollider) => void;
|
|
4993
|
+
remove: (colliderId: string) => void;
|
|
4994
|
+
init: (container: HTMLElement, projectFn: TProjectFn) => void;
|
|
4995
|
+
resize: (container: HTMLElement) => void;
|
|
4996
|
+
resort: () => void;
|
|
4997
|
+
updatePosition: () => void;
|
|
4998
|
+
updateVisibility: () => void;
|
|
4999
|
+
makeCollidersDirty: () => void;
|
|
5000
|
+
update: () => void;
|
|
5001
|
+
destroy: () => void;
|
|
5002
|
+
makeCollidersDirtyThrottled: (time: number) => void;
|
|
5003
|
+
_makeCollidersDirtyThrottled?: [() => void, number];
|
|
5004
|
+
}
|
|
5005
|
+
const SmartCollisionEngine: () => ISmartCollisionEngine;
|
|
5006
|
+
export default SmartCollisionEngine;
|
|
5007
|
+
}
|
|
5008
|
+
|
|
4850
5009
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.TaskScheduler' {
|
|
4851
5010
|
export namespace UPDATE_ORDERING {
|
|
4852
5011
|
const BEFORE_CAMERA: number;
|