@mappedin/react-native-sdk 4.1.0-beta.2 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +81 -20
- package/dist/browser-CXOLC6DS.js +1 -0
- package/dist/chunk-Z32VUTVD.js +1 -0
- package/dist/index.d.ts +1764 -786
- package/dist/index.js +1287 -1203
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -5,9 +5,8 @@
|
|
|
5
5
|
// ../react-native-webview/lib/WebViewTypes
|
|
6
6
|
// ../three
|
|
7
7
|
// ../@tweenjs/tween.js
|
|
8
|
-
// ../
|
|
9
|
-
// ../
|
|
10
|
-
// ../three/src/math/Vector3
|
|
8
|
+
// ../minisearch
|
|
9
|
+
// ../geojson
|
|
11
10
|
|
|
12
11
|
declare module '@mappedin/react-native-sdk' {
|
|
13
12
|
export { MiMapView } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView';
|
|
@@ -16,19 +15,21 @@ declare module '@mappedin/react-native-sdk' {
|
|
|
16
15
|
export type { TMiMiniMapProps } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMiniMap';
|
|
17
16
|
export type { MapViewStore } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store';
|
|
18
17
|
export { getVenue, getVenueBundle } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
19
|
-
export type { TGetVenueOptions, TGetVenueBundleOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
18
|
+
export type { TGetVenueOptions, TGetVenueBundleOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineSearchOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
20
19
|
export { STATE } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
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';
|
|
20
|
+
export { COLLISION_RANKING_TIERS, MARKER_ANCHOR, E_BLUEDOT_STATE, MappedinCoordinate, labelThemes, E_BLUEDOT_MARKER_STATE, E_BLUEDOT_STATE_REASON, MAP_RENDER_MODE } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
22
21
|
export type { TSerializableJourneyOptions, TMiMapViewOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
23
22
|
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, TAnimatePositionOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
23
|
+
export type { TJourneyOptions, TGeolocationObject, TPathOptions, TFlatLabelPolygonOptions, TFloatingLabelPolygonOptions, TLabelAllLocationFlatLabelOptions, TLabelAllLocationFloatingLabelOptions, TFlatLabelAppearance, TFloatingLabelAppearance, TFocusOnCameraOptions, TFocusOnTargets, TCommonLabelOptions, TCameraAnimationOptions, TFocusOnOptions, TAnimatePositionOptions, TBlueDotPositionUpdate, TBlueDotStateChange } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
25
24
|
export type { TEnableBlueDotOptionsBase, TLabelAllLocationCommonOptionsBase };
|
|
26
25
|
export type TEnableBlueDotOptions = Omit<TEnableBlueDotOptionsBase, 'positionUpdater' | 'geolocationSource'>;
|
|
27
26
|
export type TLabelAllLocationCommonOptions = Omit<TLabelAllLocationCommonOptionsBase, 'sortFunction' | 'translationMap'>;
|
|
27
|
+
export type { TMapViewRNOptions } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types';
|
|
28
|
+
export type { TMiMapViewVenueOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
28
29
|
export type { IDirectionsResult, MappedinDirections, TMappedinDirective } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
29
|
-
export type { TShowVenueOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
30
|
+
export type { TShowVenueOptions, E_GET_DIRECTIONS_MESSAGES } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
30
31
|
export { ERROR, ERROR_MESSAGES } from '@mappedin/react-native-sdk/wrappers/common/errors';
|
|
31
|
-
export {
|
|
32
|
+
export { BEARING_TYPE, ACTION_TYPE, MappedinLocation, Mappedin, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinRankings, MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView' {
|
|
@@ -38,6 +39,7 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
38
39
|
import { MapViewStore } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store';
|
|
39
40
|
import type { TBlueDotPositionUpdate, TBlueDotStateChange, MappedinPolygon, MappedinMap, Mappedin } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
40
41
|
import { ERROR, ERROR_MESSAGES } from '@mappedin/react-native-sdk/wrappers/common/errors';
|
|
42
|
+
import { TMapViewRNOptions } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types';
|
|
41
43
|
export type TMiMapViewProps = {
|
|
42
44
|
/**
|
|
43
45
|
* The MapViewStore instance will be returned here
|
|
@@ -46,18 +48,12 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
46
48
|
/**
|
|
47
49
|
* Options to initialze MiMapView with
|
|
48
50
|
*/
|
|
49
|
-
options: TMiMapViewOptions &
|
|
50
|
-
/**
|
|
51
|
-
* Use a bundle for venue loading and cache it for faster subsequent loading
|
|
52
|
-
* @beta
|
|
53
|
-
*/
|
|
54
|
-
useBundle?: boolean;
|
|
55
|
-
};
|
|
51
|
+
options: TMiMapViewOptions & TMapViewRNOptions;
|
|
56
52
|
/**
|
|
57
53
|
* Venue Data to render inside the MapView. This is returned by {@link getVenue} or {@link getVenueBundle}
|
|
58
54
|
*/
|
|
59
55
|
venueData?: Mappedin;
|
|
60
|
-
style?:
|
|
56
|
+
style?: React.CSSProperties;
|
|
61
57
|
/**
|
|
62
58
|
* Called when an interactive polygon is clicked
|
|
63
59
|
*/
|
|
@@ -120,7 +116,7 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
120
116
|
/**
|
|
121
117
|
* @category Component
|
|
122
118
|
*/
|
|
123
|
-
export const MiMapView: React.MemoExoticComponent<React.ForwardRefExoticComponent<Pick<TMiMapViewProps, "
|
|
119
|
+
export const MiMapView: React.MemoExoticComponent<React.ForwardRefExoticComponent<Pick<TMiMapViewProps, "style" | "options" | "onFirstMapLoaded" | "onDataLoaded" | "venueData" | "onPolygonClicked" | "onBlueDotStateChanged" | "onBlueDotPositionUpdated" | "onNothingClicked" | "onMapChanged" | "onStateChanged" | "onVenueLoadError"> & React.RefAttributes<MapViewStore>>>;
|
|
124
120
|
}
|
|
125
121
|
|
|
126
122
|
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMiniMap' {
|
|
@@ -171,8 +167,8 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMiniM
|
|
|
171
167
|
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store' {
|
|
172
168
|
import { RNMappedinController } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MappedinController';
|
|
173
169
|
import { TReactNativeFlatLabelAllLocations, TReactNativeFlatLabelAllLocationsLegacy, TReactNativeFlatLabelPolygonOptions, TReactNativeFloatingLabelPolygonOptions, TSerializableJourneyOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
174
|
-
import type { TGeolocationObject, TEnableBlueDotOptions, TPathOptions, TFocusOnOptions, TAnimatePositionOptions, TLabelAllLocationFloatingLabelOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
175
|
-
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';
|
|
170
|
+
import type { TGeolocationObject, TEnableBlueDotOptions, TPathOptions, TFocusOnOptions, TAnimatePositionOptions, TLabelAllLocationFloatingLabelOptions, TMappedinOfflineSearchOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
171
|
+
import { STATE, Mappedin, MappedinNode, MappedinMap, MappedinLocation, MappedinDirections, MappedinCategory, MappedinPolygon, TGetVenueOptions, TShowVenueOptions, MappedinCoordinate, MappedinDestinationSet, TCreateMarkerOptions, E_BLUEDOT_STATE, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
176
172
|
import { TFocusOptionsLegacy } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types';
|
|
177
173
|
export class MapViewStore extends RNMappedinController {
|
|
178
174
|
#private;
|
|
@@ -193,12 +189,18 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
193
189
|
/**
|
|
194
190
|
* @hidden
|
|
195
191
|
*/
|
|
196
|
-
loadVenue(options: TGetVenueOptions, showVenueOptions: TShowVenueOptions
|
|
192
|
+
loadVenue(options: TGetVenueOptions, showVenueOptions: TShowVenueOptions & {
|
|
193
|
+
prepareSearch?: boolean;
|
|
194
|
+
searchOptions?: TMappedinOfflineSearchOptions;
|
|
195
|
+
}): Promise<unknown>;
|
|
197
196
|
/**
|
|
198
197
|
*
|
|
199
198
|
* @hidden
|
|
200
199
|
*/
|
|
201
|
-
showVenue(venueData: Mappedin, showVenueOptions: TShowVenueOptions
|
|
200
|
+
showVenue(venueData: Mappedin, showVenueOptions: TShowVenueOptions & {
|
|
201
|
+
prepareSearch?: boolean;
|
|
202
|
+
searchOptions?: TMappedinOfflineSearchOptions;
|
|
203
|
+
}): Promise<unknown>;
|
|
202
204
|
/**
|
|
203
205
|
* Clear any cached venue bundles that were downloaded as part of LOAD_VENUE with useBundle: true
|
|
204
206
|
* This ensure that the next time keys are passed in, we get a fresh bundle
|
|
@@ -387,6 +389,32 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapVi
|
|
|
387
389
|
* Draw a path based on a list of Nodes
|
|
388
390
|
*/
|
|
389
391
|
drawPath(pathNodesOrNodeIds: (MappedinNode | MappedinNode['id'])[], pathOptions: TPathOptions): Promise<unknown>;
|
|
392
|
+
OfflineSearch: {
|
|
393
|
+
/**
|
|
394
|
+
*
|
|
395
|
+
* @param query String to search for
|
|
396
|
+
*/
|
|
397
|
+
search: (query: string) => Promise<TMappedinOfflineSearchResult[]>;
|
|
398
|
+
/**
|
|
399
|
+
*
|
|
400
|
+
* @param query Get a list of suggestions for query
|
|
401
|
+
*/
|
|
402
|
+
suggest: (query: string) => Promise<TMappedinOfflineSearchSuggestions>;
|
|
403
|
+
addQuery: (params: {
|
|
404
|
+
/**
|
|
405
|
+
* Query string to match for this object
|
|
406
|
+
*/
|
|
407
|
+
query: string;
|
|
408
|
+
/**
|
|
409
|
+
* Object that is returned when query matches
|
|
410
|
+
*/
|
|
411
|
+
object: MappedinLocation | MappedinCategory | Record<string, unknown>;
|
|
412
|
+
/**
|
|
413
|
+
* Optional weight to multiply by the score
|
|
414
|
+
*/
|
|
415
|
+
weight?: number;
|
|
416
|
+
}) => Promise<unknown>;
|
|
417
|
+
};
|
|
390
418
|
/**
|
|
391
419
|
* @hidden
|
|
392
420
|
*/
|
|
@@ -403,8 +431,8 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/index.rn' {
|
|
|
403
431
|
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';
|
|
404
432
|
export { BEARING_TYPE, ACTION_TYPE } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
405
433
|
export type { IDirectionsResult, E_MESSAGES as E_GET_DIRECTIONS_MESSAGES } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
406
|
-
export type { TGetVenueBundleOptions, TGetVenueOptions, TMappedinDirective, TShowVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
407
|
-
export { MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinDirections, MappedinNavigatable, MappedinCoordinate, MappedinRankings } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
434
|
+
export type { TGetVenueBundleOptions, TGetVenueOptions, TMappedinDirective, TShowVenueOptions, TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
435
|
+
export { MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinDirections, MappedinNavigatable, MappedinCoordinate, MappedinRankings, MAP_RENDER_MODE, OfflineSearch, MappedinCollectionType } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
408
436
|
export type { TSafeAreaInsets, TFocusOnTargets, TFocusOnCameraOptions, TAnimatePositionOptions, TCameraAnimationOptions, TFocusOnOptions } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
409
437
|
export { SAFE_AREA_INSET_TYPE, ANIMATION_TWEENS, CAMERA_EASING_MODE } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
410
438
|
}
|
|
@@ -416,6 +444,53 @@ declare module '@mappedin/react-native-sdk/wrappers/common' {
|
|
|
416
444
|
export { PubSub } from '@mappedin/react-native-sdk/wrappers/common/pub-sub';
|
|
417
445
|
}
|
|
418
446
|
|
|
447
|
+
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types' {
|
|
448
|
+
import { MappedinNode, MappedinPolygon } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src';
|
|
449
|
+
import { MAP_RENDER_MODE } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
450
|
+
import type { MappedinCategory, MappedinLocation, TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
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
|
+
export type TMapViewRNOptions = {
|
|
463
|
+
/**
|
|
464
|
+
* Use a bundle for venue loading and cache it for faster subsequent loading
|
|
465
|
+
* @beta
|
|
466
|
+
*/
|
|
467
|
+
useBundle?: boolean;
|
|
468
|
+
loadOptions?: {
|
|
469
|
+
/**
|
|
470
|
+
* By default, the SDK will merge all geometries by material to reduce the number of draw calls to the GPU
|
|
471
|
+
* To rever back to using a single geometry for every polygon, pass `MAP_RENDER_MODE.MULTI_GEOMETRY`
|
|
472
|
+
*/
|
|
473
|
+
mapRenderStrategy?: MAP_RENDER_MODE;
|
|
474
|
+
};
|
|
475
|
+
/**
|
|
476
|
+
* Generate a search index for venue when rendering map, instead of deferring to when the first search occurs.
|
|
477
|
+
* @default false
|
|
478
|
+
*/
|
|
479
|
+
prepareSearch?: boolean;
|
|
480
|
+
/**
|
|
481
|
+
* Customize search weights
|
|
482
|
+
*/
|
|
483
|
+
searchOptions?: TMappedinOfflineSearchOptions;
|
|
484
|
+
};
|
|
485
|
+
export type TMappedinOfflineSearchBridgeResult = Omit<TMappedinOfflineSearchResult, 'object'> & {
|
|
486
|
+
object: {
|
|
487
|
+
type: 'MappedinLocation' | 'MappedinCategory' | 'Custom';
|
|
488
|
+
id: string;
|
|
489
|
+
};
|
|
490
|
+
};
|
|
491
|
+
export type TMappedinCustomSearchObject = MappedinLocation | MappedinCategory | Record<string, unknown>;
|
|
492
|
+
}
|
|
493
|
+
|
|
419
494
|
declare module '@mappedin/react-native-sdk/wrappers/common/errors' {
|
|
420
495
|
export enum ERROR {
|
|
421
496
|
LOAD_VENUE_FAILED = "LOAD_VENUE_FAILED",
|
|
@@ -437,19 +512,21 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src' {
|
|
|
437
512
|
export type { TMiMiniMapProps } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMiniMap';
|
|
438
513
|
export type { MapViewStore } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store';
|
|
439
514
|
export { getVenue, getVenueBundle } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
440
|
-
export type { TGetVenueOptions, TGetVenueBundleOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
515
|
+
export type { TGetVenueOptions, TGetVenueBundleOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineSearchOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
441
516
|
export { STATE } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
442
|
-
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';
|
|
517
|
+
export { COLLISION_RANKING_TIERS, MARKER_ANCHOR, E_BLUEDOT_STATE, MappedinCoordinate, labelThemes, E_BLUEDOT_MARKER_STATE, E_BLUEDOT_STATE_REASON, MAP_RENDER_MODE } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
443
518
|
export type { TSerializableJourneyOptions, TMiMapViewOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
444
519
|
import type { TEnableBlueDotOptions as TEnableBlueDotOptionsBase, TLabelAllLocationCommonOptions as TLabelAllLocationCommonOptionsBase } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
445
|
-
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';
|
|
520
|
+
export type { TJourneyOptions, TGeolocationObject, TPathOptions, TFlatLabelPolygonOptions, TFloatingLabelPolygonOptions, TLabelAllLocationFlatLabelOptions, TLabelAllLocationFloatingLabelOptions, TFlatLabelAppearance, TFloatingLabelAppearance, TFocusOnCameraOptions, TFocusOnTargets, TCommonLabelOptions, TCameraAnimationOptions, TFocusOnOptions, TAnimatePositionOptions, TBlueDotPositionUpdate, TBlueDotStateChange } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
446
521
|
export type { TEnableBlueDotOptionsBase, TLabelAllLocationCommonOptionsBase };
|
|
447
522
|
export type TEnableBlueDotOptions = Omit<TEnableBlueDotOptionsBase, 'positionUpdater' | 'geolocationSource'>;
|
|
448
523
|
export type TLabelAllLocationCommonOptions = Omit<TLabelAllLocationCommonOptionsBase, 'sortFunction' | 'translationMap'>;
|
|
524
|
+
export type { TMapViewRNOptions } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types';
|
|
525
|
+
export type { TMiMapViewVenueOptions } from '@mappedin/react-native-sdk/wrappers/common';
|
|
449
526
|
export type { IDirectionsResult, MappedinDirections, TMappedinDirective } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
450
|
-
export type { TShowVenueOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
527
|
+
export type { TShowVenueOptions, E_GET_DIRECTIONS_MESSAGES } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
451
528
|
export { ERROR, ERROR_MESSAGES } from '@mappedin/react-native-sdk/wrappers/common/errors';
|
|
452
|
-
export {
|
|
529
|
+
export { BEARING_TYPE, ACTION_TYPE, MappedinLocation, Mappedin, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinRankings, MappedinDestinationSet } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
453
530
|
}
|
|
454
531
|
|
|
455
532
|
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MappedinController' {
|
|
@@ -496,26 +573,11 @@ declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/Mappedi
|
|
|
496
573
|
}
|
|
497
574
|
}
|
|
498
575
|
|
|
499
|
-
declare module '@mappedin/react-native-sdk/wrappers/react-native-sdk/src/MiMapView.store.types' {
|
|
500
|
-
import { MappedinNode, MappedinPolygon } from '@mappedin/react-native-sdk/wrappers/react-native-sdk/src';
|
|
501
|
-
import { TFocusOptionsLegacy } from '@mappedin/react-native-sdk/core/packages/renderer/Core.interface';
|
|
502
|
-
export type TPolygonColorOptions = {
|
|
503
|
-
color: string;
|
|
504
|
-
opacity?: number;
|
|
505
|
-
textColor?: string;
|
|
506
|
-
};
|
|
507
|
-
export type { TFocusOptionsLegacy };
|
|
508
|
-
export type TFocusOptionsLegacySerializable = Omit<TFocusOptionsLegacy, 'nodes' | 'polygons'> & {
|
|
509
|
-
nodes: (MappedinNode | MappedinNode['id'])[];
|
|
510
|
-
polygons: (MappedinPolygon['id'] | MappedinPolygon)[];
|
|
511
|
-
};
|
|
512
|
-
}
|
|
513
|
-
|
|
514
576
|
declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
|
|
515
577
|
import type { TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types';
|
|
516
578
|
import { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
517
579
|
/** Classes */
|
|
518
|
-
export { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
580
|
+
export { Mappedin, MappedinCollectionType } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
519
581
|
export { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
520
582
|
export { MappedinPolygon } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolygon';
|
|
521
583
|
export { MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNode';
|
|
@@ -535,9 +597,12 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
|
|
|
535
597
|
export type { IDirectionsResult } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
536
598
|
export type { TOperationHoursMap } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
537
599
|
export type { TDirectionToOptions } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavigatable';
|
|
600
|
+
export { OfflineSearch } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.OfflineSearch';
|
|
601
|
+
export type { TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineAllSearchMatch } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.OfflineSearch';
|
|
538
602
|
/** API data types */
|
|
539
603
|
export type { TLocationType, TNode, TImage, TLogo, TGalleryImage, TPhone, TSocial, TColor, TVortex, TPicture, TOpeningHours, TSiblingGroup, TState, TCategory, TEvent, TGeoReference, TMap, TMapGroup, TBuilding, TLocation, TPolygon, TPolygonRanking, TVenue, TMappedinAPI } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
540
604
|
export type { TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types';
|
|
605
|
+
import { MAP_RENDER_MODE } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types';
|
|
541
606
|
export type TShowVenueOptions = {
|
|
542
607
|
/**
|
|
543
608
|
* Sets the initial background color of the map, including while loading.
|
|
@@ -549,14 +614,24 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
|
|
|
549
614
|
*/
|
|
550
615
|
backgroundAlpha?: number;
|
|
551
616
|
/**
|
|
552
|
-
* Whether or not to display
|
|
617
|
+
* Whether or not to display default styled Floating Labels initially
|
|
553
618
|
*/
|
|
554
619
|
labelAllLocationsOnInit?: boolean;
|
|
555
620
|
/**
|
|
556
621
|
* The id of the first map to show on map load
|
|
557
622
|
*/
|
|
558
623
|
firstMapId?: string;
|
|
624
|
+
loadOptions?: {
|
|
625
|
+
/**
|
|
626
|
+
* Set the map render strategy in order to optimize FPS
|
|
627
|
+
*
|
|
628
|
+
* @beta
|
|
629
|
+
*/
|
|
630
|
+
mapRenderStrategy?: MAP_RENDER_MODE;
|
|
631
|
+
};
|
|
559
632
|
};
|
|
633
|
+
export { MAP_RENDER_MODE };
|
|
634
|
+
export function getVenueMVF(userOptions: TGetVenueBundleOptions): Promise<Mappedin>;
|
|
560
635
|
/**
|
|
561
636
|
* Get Venue Data for a Mappedin Venue
|
|
562
637
|
*/
|
|
@@ -593,6 +668,23 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue' {
|
|
|
593
668
|
url: any;
|
|
594
669
|
updated_at: any;
|
|
595
670
|
}): Promise<Mappedin>;
|
|
671
|
+
/**
|
|
672
|
+
* Get the bundle URL and updated_at time.
|
|
673
|
+
* @internal
|
|
674
|
+
*/
|
|
675
|
+
export function getVenueMVFURL(userOptions: TGetVenueBundleOptions): Promise<{
|
|
676
|
+
url: string;
|
|
677
|
+
updated_at: string;
|
|
678
|
+
}>;
|
|
679
|
+
/**
|
|
680
|
+
* @internal
|
|
681
|
+
*/
|
|
682
|
+
export function downloadVenueBundleMVF(options: TGetVenueBundleOptions,
|
|
683
|
+
/**
|
|
684
|
+
* use Web Workers to speed up MVF parsing. This is likely only benefitial for larger venues,
|
|
685
|
+
* and may be determental to smaller ones, hence it is off by default
|
|
686
|
+
*/
|
|
687
|
+
useWorker?: boolean): Promise<unknown>;
|
|
596
688
|
}
|
|
597
689
|
|
|
598
690
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums' {
|
|
@@ -625,30 +717,30 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums'
|
|
|
625
717
|
CUSTOM_GEOLOCATION_PROVIDER_ERROR = 3
|
|
626
718
|
}
|
|
627
719
|
/**
|
|
628
|
-
What we currently know about the user's position
|
|
720
|
+
What we currently know about the user's position and how confident we are.
|
|
629
721
|
*/
|
|
630
722
|
export enum E_BLUEDOT_STATE {
|
|
631
723
|
/**
|
|
632
|
-
*
|
|
724
|
+
* Not listening to Blue Dot position updates
|
|
633
725
|
*/
|
|
634
726
|
NOT_LISTENING = 0,
|
|
635
727
|
/**
|
|
636
|
-
*
|
|
728
|
+
* Listenign for listening to position updates but have not yet received a position
|
|
637
729
|
*/
|
|
638
730
|
LISTENING = 1,
|
|
639
731
|
/**
|
|
640
|
-
*
|
|
732
|
+
* Received relevant positions and user is in the venue
|
|
641
733
|
*/
|
|
642
734
|
HAS_POSITION = 2,
|
|
643
735
|
/**
|
|
644
736
|
* We've received a relevant position, and we have enough information to determine
|
|
645
737
|
* which floor the user is on - either because we received a floor level, the venue
|
|
646
|
-
* only has one floor
|
|
738
|
+
* only has one floor or we're allowing implicit floor level detection.
|
|
647
739
|
*/
|
|
648
740
|
HAS_INDOOR_POSITION = 3,
|
|
649
741
|
/**
|
|
650
742
|
* We are uncertain about the user's position, likely because we haven't received
|
|
651
|
-
* a relevant position in a while
|
|
743
|
+
* a relevant position in a while. Blue Dot will be rendered grey to indicate uncertainty of the actual position.
|
|
652
744
|
*/
|
|
653
745
|
LOCATION_UNCERTAIN = 4
|
|
654
746
|
}
|
|
@@ -657,26 +749,29 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums'
|
|
|
657
749
|
*/
|
|
658
750
|
export enum E_BLUEDOT_MARKER_STATE {
|
|
659
751
|
/**
|
|
660
|
-
*
|
|
752
|
+
* Blue Dot is hidden
|
|
661
753
|
*/
|
|
662
754
|
HIDDEN = 0,
|
|
663
755
|
/**
|
|
664
|
-
*
|
|
756
|
+
* Blue Dot is transparent indicating the position is on a different floor
|
|
665
757
|
*/
|
|
666
758
|
GHOST = 1,
|
|
667
759
|
/**
|
|
668
|
-
*
|
|
760
|
+
* Blue Dot is visible and opaque indicating accurate positioning on the current floor
|
|
669
761
|
*/
|
|
670
762
|
NORMAL = 2,
|
|
671
763
|
/**
|
|
672
|
-
*
|
|
764
|
+
* Blue Dot is grayed out due to uncertainty about user's location, most likely due to not receiving recent position updates.
|
|
673
765
|
*/
|
|
674
766
|
UNCERTAIN = 3
|
|
675
767
|
}
|
|
676
768
|
export enum STATE {
|
|
769
|
+
/**
|
|
770
|
+
* The map is in exploration mode where the user controls the camera position.
|
|
771
|
+
*/
|
|
677
772
|
EXPLORE = "explore",
|
|
678
773
|
/**
|
|
679
|
-
*
|
|
774
|
+
* Follows user's current location by keeping the camera centered on the Blue Dot.
|
|
680
775
|
*/
|
|
681
776
|
FOLLOW = "follow"
|
|
682
777
|
/**
|
|
@@ -692,19 +787,19 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums'
|
|
|
692
787
|
}
|
|
693
788
|
export enum E_SDK_EVENT {
|
|
694
789
|
/**
|
|
695
|
-
* Emitted when the map is clicked
|
|
790
|
+
* Emitted when the map is clicked or tapped on a touch screen.
|
|
696
791
|
*/
|
|
697
792
|
CLICK = "CLICK",
|
|
698
793
|
/**
|
|
699
|
-
* Emitted when the {@link STATE | SDK state} changes
|
|
794
|
+
* Emitted when the {@link STATE | SDK state} changes.
|
|
700
795
|
*/
|
|
701
796
|
STATE_CHANGE = "STATE_CHANGE",
|
|
702
797
|
/**
|
|
703
|
-
* Emitted when
|
|
798
|
+
* Emitted when an interactive {@link MappedinPolygon | polygon} is clicked
|
|
704
799
|
*/
|
|
705
800
|
POLYGON_CLICKED = "POLYGON_CLICKED",
|
|
706
801
|
/**
|
|
707
|
-
* Emitted when nothing is clicked
|
|
802
|
+
* Emitted when nothing (outside of interactive polygons) is clicked
|
|
708
803
|
*/
|
|
709
804
|
NOTHING_CLICKED = "NOTHING_CLICKED",
|
|
710
805
|
/**
|
|
@@ -725,6 +820,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums'
|
|
|
725
820
|
ROTATION_CHANGED = "ROTATION_CHANGED",
|
|
726
821
|
TILT_CHANGED = "TILT_CHANGED"
|
|
727
822
|
}
|
|
823
|
+
export { MAP_RENDER_MODE } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
728
824
|
}
|
|
729
825
|
|
|
730
826
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types' {
|
|
@@ -734,7 +830,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
734
830
|
import { TBlueDotPositionUpdate, TBlueDotStateChange } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
|
|
735
831
|
import { TOOLTIP_ANCHOR } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartTooltip';
|
|
736
832
|
import type { Euler, Object3D, Vector3 } from 'three';
|
|
737
|
-
import { GEOLOCATION_STATUS, COLLISION_RANKING_TIERS, STATE, MARKER_ANCHOR, E_SDK_EVENT, E_BLUEDOT_EVENT, E_CAMERA_EVENT } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
833
|
+
import { GEOLOCATION_STATUS, COLLISION_RANKING_TIERS, STATE, MARKER_ANCHOR, E_SDK_EVENT, E_BLUEDOT_EVENT, E_CAMERA_EVENT, MAP_RENDER_MODE } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
738
834
|
export type { TEnableBlueDotOptions, TFloatingLabelAppearance };
|
|
739
835
|
/**
|
|
740
836
|
An extension of the GeolocationPosition type.
|
|
@@ -1004,19 +1100,27 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1004
1100
|
scale?: Vector3;
|
|
1005
1101
|
};
|
|
1006
1102
|
export type TMapViewOptions = {
|
|
1103
|
+
/**
|
|
1104
|
+
* Background color of the map in hex number or string e.g. `0x2e2e2e` or `#2e2e2e`.
|
|
1105
|
+
*/
|
|
1007
1106
|
backgroundColor?: number | string;
|
|
1008
1107
|
/**
|
|
1009
1108
|
* The opacity of the initial background color.
|
|
1010
1109
|
*/
|
|
1011
1110
|
backgroundAlpha?: number;
|
|
1012
1111
|
/**
|
|
1013
|
-
* Controls whether antialiasing is on. Defaults to true
|
|
1112
|
+
* Controls whether antialiasing is on. Defaults to `true`, as long as devicePixelRatio is 1. This is very expensive on high resolution screens.
|
|
1014
1113
|
* @default true
|
|
1015
1114
|
*/
|
|
1016
1115
|
antialias?: boolean;
|
|
1017
1116
|
disableHover?: boolean;
|
|
1018
1117
|
disableZoomOnMapSizeChange?: boolean;
|
|
1019
1118
|
loadOptions?: {
|
|
1119
|
+
/**
|
|
1120
|
+
* By default, the SDK will merge all geometries by material to reduce the number of draw calls to the GPU
|
|
1121
|
+
* To rever back to using a single geometry for every polygon, pass `MAP_RENDER_MODE.MULTI_GEOMETRY`
|
|
1122
|
+
*/
|
|
1123
|
+
mapRenderStrategy?: MAP_RENDER_MODE;
|
|
1020
1124
|
async?: boolean;
|
|
1021
1125
|
zoomOverrides?: {
|
|
1022
1126
|
zoomMultiplier?: number;
|
|
@@ -1025,7 +1129,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1025
1129
|
};
|
|
1026
1130
|
};
|
|
1027
1131
|
/**
|
|
1028
|
-
*
|
|
1132
|
+
* First map to be rendered
|
|
1029
1133
|
*/
|
|
1030
1134
|
firstMap?: MappedinMap | string;
|
|
1031
1135
|
/**
|
|
@@ -1044,6 +1148,9 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1044
1148
|
onWebGLRendererError?: () => void;
|
|
1045
1149
|
};
|
|
1046
1150
|
export type TMapViewOptionsLegacy = {
|
|
1151
|
+
/**
|
|
1152
|
+
* Background color of the map in hex number or string e.g. `0x2e2e2e` or `#2e2e2e`.
|
|
1153
|
+
*/
|
|
1047
1154
|
backgroundColor?: number | string;
|
|
1048
1155
|
/**
|
|
1049
1156
|
* The opacity of the initial background color.
|
|
@@ -1077,7 +1184,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1077
1184
|
};
|
|
1078
1185
|
};
|
|
1079
1186
|
/**
|
|
1080
|
-
*
|
|
1187
|
+
* First map to be rendered
|
|
1081
1188
|
*/
|
|
1082
1189
|
firstMap?: MappedinMap | string;
|
|
1083
1190
|
/**
|
|
@@ -1147,21 +1254,21 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1147
1254
|
*/
|
|
1148
1255
|
height?: number;
|
|
1149
1256
|
/**
|
|
1150
|
-
* The amount of space to leave before starting the text
|
|
1257
|
+
* The amount of space to leave before starting the text in pixels
|
|
1151
1258
|
* @default 5
|
|
1152
1259
|
*/
|
|
1153
1260
|
margin?: number;
|
|
1154
1261
|
/**
|
|
1155
|
-
*
|
|
1262
|
+
* Optional color in hexadecimal string e.g. `#2e2e2e`.
|
|
1156
1263
|
*/
|
|
1157
1264
|
color?: string;
|
|
1158
1265
|
/**
|
|
1159
|
-
*
|
|
1266
|
+
* Size of the font in pixels.
|
|
1160
1267
|
* @default 12
|
|
1161
1268
|
*/
|
|
1162
1269
|
fontSize?: number;
|
|
1163
1270
|
/**
|
|
1164
|
-
* A CSS style string font.
|
|
1271
|
+
* A CSS style string font, e.g. "sans-serif". You can specify your own font via @font-face rule with a font family, and then include that here.
|
|
1165
1272
|
*/
|
|
1166
1273
|
font?: string;
|
|
1167
1274
|
/**
|
|
@@ -1170,7 +1277,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1170
1277
|
*/
|
|
1171
1278
|
scaleMin?: number;
|
|
1172
1279
|
/**
|
|
1173
|
-
* How much to decrement the scale each time it doesn't fit, so we don't end up with too many different font sizes on screen at once. If
|
|
1280
|
+
* How much to decrement the scale each time it doesn't fit, so we don't end up with too many different font sizes on screen at once. If you are only labeling a few {@link MappedinPolygon}s rather than everything,
|
|
1174
1281
|
* you can set this and and scaleMin to 0.1 to fit everything except really long names perfectly.
|
|
1175
1282
|
* @default 0.25
|
|
1176
1283
|
*/
|
|
@@ -1180,7 +1287,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1180
1287
|
scale?: number;
|
|
1181
1288
|
flatLabels?: false | undefined;
|
|
1182
1289
|
/**
|
|
1183
|
-
*
|
|
1290
|
+
* Ranking tier to determine how likely a {@link FloatingLabel} will appear
|
|
1184
1291
|
*/
|
|
1185
1292
|
rank?: COLLISION_RANKING_TIERS | number;
|
|
1186
1293
|
/**
|
|
@@ -1215,7 +1322,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1215
1322
|
[key in string]: string;
|
|
1216
1323
|
};
|
|
1217
1324
|
/**
|
|
1218
|
-
* Display label despite the
|
|
1325
|
+
* Display label despite the {@link MappedinPolygon} having an image on it. Often these images represent store logos.
|
|
1219
1326
|
* @default false
|
|
1220
1327
|
*/
|
|
1221
1328
|
createDespiteImage?: boolean;
|
|
@@ -1250,7 +1357,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView.types'
|
|
|
1250
1357
|
longitude: number;
|
|
1251
1358
|
};
|
|
1252
1359
|
/**
|
|
1253
|
-
* A list of
|
|
1360
|
+
* A list of {@link MappedinPolygon}s corresponding to every polygon that a user's
|
|
1254
1361
|
* click passed through. These are in order of first to last intersected.
|
|
1255
1362
|
* Will be empty if no interactive polygons were clicked.
|
|
1256
1363
|
*/
|
|
@@ -1340,6 +1447,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1340
1447
|
zoom?: number;
|
|
1341
1448
|
tilt?: number;
|
|
1342
1449
|
rotation?: number;
|
|
1450
|
+
position?: MappedinCoordinate | MappedinNode;
|
|
1343
1451
|
};
|
|
1344
1452
|
export const ANIMATION_TWEENS: {
|
|
1345
1453
|
linear: any;
|
|
@@ -1354,6 +1462,9 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1354
1462
|
EASE_IN_OUT = "ease-in-out"
|
|
1355
1463
|
}
|
|
1356
1464
|
export type TCameraAnimationOptions = {
|
|
1465
|
+
/**
|
|
1466
|
+
* Animation duration in milliseconds
|
|
1467
|
+
*/
|
|
1357
1468
|
duration?: number;
|
|
1358
1469
|
easing?: CAMERA_EASING_MODE;
|
|
1359
1470
|
};
|
|
@@ -1390,29 +1501,66 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1390
1501
|
*/
|
|
1391
1502
|
get zoom(): number;
|
|
1392
1503
|
/**
|
|
1393
|
-
* Current Camera rotation (in radians)
|
|
1504
|
+
* Current Camera rotation (in radians) from north
|
|
1394
1505
|
*/
|
|
1395
1506
|
get rotation(): number;
|
|
1396
1507
|
/**
|
|
1397
|
-
* Current
|
|
1508
|
+
* Current camera tilt angle (in radians), relative to a top-down view.
|
|
1509
|
+
*
|
|
1510
|
+
* ex: 0 means the camera is facing top-down, π/2 means the camera is
|
|
1511
|
+
* facing directly from the side.
|
|
1398
1512
|
*/
|
|
1399
1513
|
get tilt(): number;
|
|
1400
1514
|
/**
|
|
1401
|
-
*
|
|
1515
|
+
* Get the minimum distance (in meters) the camera is allowed to get to the ground.
|
|
1402
1516
|
*/
|
|
1403
1517
|
get minZoom(): number;
|
|
1404
1518
|
/**
|
|
1405
|
-
*
|
|
1519
|
+
* Set the minimum distance (in meters) the camera is allowed to get to the ground.
|
|
1406
1520
|
*/
|
|
1407
1521
|
set minZoom(meters: number);
|
|
1408
1522
|
/**
|
|
1409
|
-
*
|
|
1523
|
+
* Get the maximum distance (in meters) the camera is allowed to get from the ground.
|
|
1410
1524
|
*/
|
|
1411
1525
|
get maxZoom(): number;
|
|
1412
1526
|
/**
|
|
1413
|
-
*
|
|
1527
|
+
* Set the maximum distance (in meters) the camera is allowed to get from the ground.
|
|
1414
1528
|
*/
|
|
1415
1529
|
set maxZoom(meters: number);
|
|
1530
|
+
/**
|
|
1531
|
+
* Get the current maximum tilt angle (in radians) the camera is allowed to use.
|
|
1532
|
+
*/
|
|
1533
|
+
get maxTilt(): number;
|
|
1534
|
+
/**
|
|
1535
|
+
* Sets the maximum tilt angle (in radians) the camera is allowed to use.
|
|
1536
|
+
*
|
|
1537
|
+
* Tilt angle must be between 0 and π/2 radians. It will be clamped within
|
|
1538
|
+
* this range if it exceeds it on either end.
|
|
1539
|
+
*
|
|
1540
|
+
* As tilt angle approaches π/2 radians, this will impact overall touch controls
|
|
1541
|
+
* and should be used sparingly.
|
|
1542
|
+
*/
|
|
1543
|
+
set maxTilt(radians: number);
|
|
1544
|
+
/**
|
|
1545
|
+
* Get the current camera position, which is at the center of the map.
|
|
1546
|
+
* @returns the position as a coordinate
|
|
1547
|
+
*/
|
|
1548
|
+
get position(): MappedinCoordinate;
|
|
1549
|
+
/**
|
|
1550
|
+
* User camera interactions
|
|
1551
|
+
*/
|
|
1552
|
+
interactions: {
|
|
1553
|
+
/**
|
|
1554
|
+
* Enable all user interactions. This does not affect programmatic
|
|
1555
|
+
* Camera controls, such as `set` and `focusOn`
|
|
1556
|
+
*/
|
|
1557
|
+
enable: () => void;
|
|
1558
|
+
/**
|
|
1559
|
+
* Disable all user interactions. This does not affect programmatic
|
|
1560
|
+
* Camera controls, such as `set` and `focusOn`
|
|
1561
|
+
*/
|
|
1562
|
+
disable: () => void;
|
|
1563
|
+
};
|
|
1416
1564
|
setSafeAreaInsets(insets: {
|
|
1417
1565
|
top: number;
|
|
1418
1566
|
left: number;
|
|
@@ -1421,7 +1569,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1421
1569
|
}): void;
|
|
1422
1570
|
getSafeAreaInsets(): any;
|
|
1423
1571
|
/**
|
|
1424
|
-
*
|
|
1572
|
+
* Focus the Camera view on a collection of targets and animate to that state.
|
|
1425
1573
|
* @returns a Promise that resolves when the animation finishes, or rejects when it is cancelled.
|
|
1426
1574
|
*/
|
|
1427
1575
|
focusOn(options: TFocusOnOptions): Promise<any>;
|
|
@@ -1431,7 +1579,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/Camera' {
|
|
|
1431
1579
|
set(positionOptions?: TAnimatePositionOptions): void;
|
|
1432
1580
|
/**
|
|
1433
1581
|
* Animate the Camera's view to smoothly transition to a new state over time.
|
|
1434
|
-
* Returns a promise that resolves when the animation completes and gets rejected if the animation is cancelled.
|
|
1435
1582
|
*
|
|
1436
1583
|
* @returns a Promise that resolves when the animation finishes, or rejects when it is cancelled.
|
|
1437
1584
|
*/
|
|
@@ -1520,7 +1667,10 @@ declare module '@mappedin/react-native-sdk/wrappers/common/events' {
|
|
|
1520
1667
|
CLEAR_JOURNEY = "CLEAR_JOURNEY",
|
|
1521
1668
|
SET_COOKIE = "SET_COOKIE",
|
|
1522
1669
|
GET_NEAREST_NODE_BY_SCREEN_COORDINATES = "GET_NEAREST_NODE_BY_SCREEN_COORDINATES",
|
|
1523
|
-
CLEAR_BUNDLE_CACHE = "CLEAR_BUNDLE_CACHE"
|
|
1670
|
+
CLEAR_BUNDLE_CACHE = "CLEAR_BUNDLE_CACHE",
|
|
1671
|
+
SEARCH = "SEARCH",
|
|
1672
|
+
SUGGEST = "SUGGEST",
|
|
1673
|
+
ADD_SEARCH_QUERY = "ADD_SEARCH_QUERY"
|
|
1524
1674
|
}
|
|
1525
1675
|
export enum WAYFINDING_EVENT {
|
|
1526
1676
|
GET_MAPS_IN_NAVIGATION = "GET_MAPS_IN_NAVIGATION",
|
|
@@ -1550,7 +1700,7 @@ declare module '@mappedin/react-native-sdk/wrappers/common/events' {
|
|
|
1550
1700
|
}
|
|
1551
1701
|
|
|
1552
1702
|
declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
1553
|
-
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';
|
|
1703
|
+
import { IDirectionsResult, MappedinMap, MappedinNode, TBlueDotPositionUpdate, TBlueDotStateChange, TGetVenueOptions, TFloatingLabelPolygonOptions, TFlatLabelPolygonOptions, TAnimatePositionOptions, TPathOptions, TShowVenueOptions, STATE, TGeolocationObject, TEnableBlueDotOptions, MappedinLocation, TLabelAllLocationFloatingLabelOptions, TMappedinOfflineSearchOptions } from '@mappedin/react-native-sdk/core/packages/renderer/index.rn';
|
|
1554
1704
|
import { TMiMapViewOptions } from '@mappedin/react-native-sdk/wrappers/common/types';
|
|
1555
1705
|
import { BRIDGE_EVENT, EVENT, MINIMAP_EVENT, TFocusOnOptionsLegacySerializable, TReactNativeFlatLabelAllLocationsLegacy, TReactNativeFlatLabelAllLocations, NATIVE_EVENT } from '@mappedin/react-native-sdk/wrappers/common';
|
|
1556
1706
|
import { TSerializableJourneyOptions, TFocusOnOptionsSerializable, TSerializedLocation, TSerializedNode, TSerializedPolygon } from '@mappedin/react-native-sdk/wrappers/common/types';
|
|
@@ -1624,12 +1774,32 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1624
1774
|
options: TGetVenueOptions & {
|
|
1625
1775
|
useBundle?: boolean;
|
|
1626
1776
|
};
|
|
1627
|
-
showVenueOptions: TShowVenueOptions
|
|
1777
|
+
showVenueOptions: TShowVenueOptions & {
|
|
1778
|
+
/**
|
|
1779
|
+
* Generate a search index for venue when rendering map, instead of deferring to when the first search occurs.
|
|
1780
|
+
* @default false
|
|
1781
|
+
*/
|
|
1782
|
+
prepareSearch?: boolean;
|
|
1783
|
+
/**
|
|
1784
|
+
* Customize search weights
|
|
1785
|
+
*/
|
|
1786
|
+
searchOptions?: TMappedinOfflineSearchOptions;
|
|
1787
|
+
};
|
|
1628
1788
|
};
|
|
1629
1789
|
[EVENT.SHOW_VENUE]: {
|
|
1630
1790
|
venueData: string;
|
|
1631
1791
|
format: 'jsonstring';
|
|
1632
|
-
showVenueOptions: TShowVenueOptions
|
|
1792
|
+
showVenueOptions: TShowVenueOptions & {
|
|
1793
|
+
/**
|
|
1794
|
+
* Generate a search index for venue when rendering map, instead of deferring to when the first search occurs.
|
|
1795
|
+
* @default false
|
|
1796
|
+
*/
|
|
1797
|
+
prepareSearch?: boolean;
|
|
1798
|
+
/**
|
|
1799
|
+
* Customize search weights
|
|
1800
|
+
*/
|
|
1801
|
+
searchOptions?: TMappedinOfflineSearchOptions;
|
|
1802
|
+
};
|
|
1633
1803
|
};
|
|
1634
1804
|
[EVENT.SET_MAP]: {
|
|
1635
1805
|
mapId: string;
|
|
@@ -1756,6 +1926,20 @@ declare module '@mappedin/react-native-sdk/wrappers/common/payloads' {
|
|
|
1756
1926
|
y: number;
|
|
1757
1927
|
map?: MappedinMap['id'];
|
|
1758
1928
|
};
|
|
1929
|
+
[EVENT.SEARCH]: {
|
|
1930
|
+
query: string;
|
|
1931
|
+
};
|
|
1932
|
+
[EVENT.SUGGEST]: {
|
|
1933
|
+
query: string;
|
|
1934
|
+
};
|
|
1935
|
+
[EVENT.ADD_SEARCH_QUERY]: {
|
|
1936
|
+
query: string;
|
|
1937
|
+
object: {
|
|
1938
|
+
type: 'MappedinLocation' | 'MappedinCategory' | 'Custom';
|
|
1939
|
+
id: string;
|
|
1940
|
+
};
|
|
1941
|
+
weight?: number;
|
|
1942
|
+
};
|
|
1759
1943
|
};
|
|
1760
1944
|
}
|
|
1761
1945
|
|
|
@@ -1790,7 +1974,7 @@ declare module '@mappedin/react-native-sdk/wrappers/common/types' {
|
|
|
1790
1974
|
departureMarkerTemplateString?: string;
|
|
1791
1975
|
color?: string;
|
|
1792
1976
|
};
|
|
1793
|
-
export type
|
|
1977
|
+
export type TMiMapViewVenueOptions = {
|
|
1794
1978
|
/**
|
|
1795
1979
|
* Client ID
|
|
1796
1980
|
*/
|
|
@@ -1811,6 +1995,7 @@ declare module '@mappedin/react-native-sdk/wrappers/common/types' {
|
|
|
1811
1995
|
noAuth?: boolean;
|
|
1812
1996
|
language?: string;
|
|
1813
1997
|
};
|
|
1998
|
+
export type TMiMapViewOptions = TShowVenueOptions & TMiMapViewVenueOptions;
|
|
1814
1999
|
export type TReactNativeFloatingLabelPolygonOptions = TFloatingLabelPolygonOptions & {
|
|
1815
2000
|
/**
|
|
1816
2001
|
* @deprecated
|
|
@@ -1847,154 +2032,403 @@ declare module '@mappedin/react-native-sdk/wrappers/common/pub-sub' {
|
|
|
1847
2032
|
}
|
|
1848
2033
|
}
|
|
1849
2034
|
|
|
1850
|
-
declare module '@mappedin/react-native-sdk/
|
|
1851
|
-
import {
|
|
1852
|
-
import {
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
2035
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/Core.interface' {
|
|
2036
|
+
import { MappedinMap, Mappedin, MappedinCoordinate, MappedinPolygon, MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
2037
|
+
import { Vector2, Vector3 } from 'three';
|
|
2038
|
+
import { changeListenerFn, TMapViewOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
2039
|
+
import RENDER from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks';
|
|
2040
|
+
import { INTERNAL_EVENT_PAYLOAD } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
2041
|
+
import { TPadding } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
2042
|
+
import Tween, { Easing } from '@tweenjs/tween.js';
|
|
2043
|
+
export type TFocusOptionsLegacy = {
|
|
2044
|
+
/**
|
|
2045
|
+
* An array of Nodes to focus in on
|
|
2046
|
+
*/
|
|
2047
|
+
nodes?: (MappedinNode | MappedinNode['id'])[];
|
|
2048
|
+
/**
|
|
2049
|
+
* An array of Polygons to focus on. It's the center of the bounds of all Polygons, designed to fit everything into view.
|
|
2050
|
+
*/
|
|
2051
|
+
polygons?: (MappedinPolygon | MappedinPolygon['id'])[];
|
|
2052
|
+
/**
|
|
2053
|
+
* The duration (in ms) the focus animation should last for.
|
|
2054
|
+
* @defaultValue `100`
|
|
2055
|
+
*/
|
|
2056
|
+
duration?: number;
|
|
2057
|
+
/**
|
|
2058
|
+
* Whether to zoom the camera in or out, or just pan it.
|
|
2059
|
+
* @defaultValue `true`
|
|
2060
|
+
*/
|
|
2061
|
+
changeZoom?: boolean;
|
|
2062
|
+
/**
|
|
2063
|
+
* The animation curve to use for zooming in. Uses the animateCamera one by default.
|
|
2064
|
+
*/
|
|
2065
|
+
curve?: typeof Easing;
|
|
2066
|
+
/**
|
|
2067
|
+
* Camera tilt between 0 (top-down) to 1 (from the side)
|
|
2068
|
+
*/
|
|
2069
|
+
tilt?: number;
|
|
2070
|
+
/**
|
|
2071
|
+
* Rotation in degrees
|
|
2072
|
+
*/
|
|
2073
|
+
rotation?: number;
|
|
2074
|
+
/**
|
|
2075
|
+
* You can overide the {{#crossLink "MapView/focusZoomFactor:property"}}{{/crossLink}} for a specific {{#crossLink "MapView/focusOn:method"}}{{/crossLink}} call, rather than globally, if you like.
|
|
2076
|
+
*/
|
|
2077
|
+
focusZoomFactor?: number;
|
|
2078
|
+
/**
|
|
2079
|
+
* Sets a floor for how close you can zoom in on the scene. If it's lower than mapView.controls.minZoom, it's ignored.
|
|
2080
|
+
* @defaultValue: 0
|
|
2081
|
+
*/
|
|
2082
|
+
minZoom?: number;
|
|
2083
|
+
padding?: TPadding;
|
|
2084
|
+
points?: any[];
|
|
2085
|
+
};
|
|
2086
|
+
export interface ICore {
|
|
2087
|
+
new (container: HTMLElement, venue: Mappedin, options?: TMapViewOptions): ICore;
|
|
2088
|
+
/**
|
|
2089
|
+
* @internal
|
|
2090
|
+
*/
|
|
2091
|
+
currentScale: number;
|
|
2092
|
+
loadOptions?: TMapViewOptions['loadOptions'];
|
|
2093
|
+
imageFlippingEnabled: boolean;
|
|
2094
|
+
imageFlippingCache: any;
|
|
2095
|
+
cachedPadding: any;
|
|
2096
|
+
polygonMeshesById: any;
|
|
2097
|
+
textLabelsByPolygonId: any;
|
|
2098
|
+
renderer: any;
|
|
2099
|
+
scene: any;
|
|
2100
|
+
cameraParameters: Vector2;
|
|
2101
|
+
resolution: Vector2;
|
|
2102
|
+
determineNewLabelSize: any;
|
|
2103
|
+
on<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
2104
|
+
off<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
2105
|
+
publish<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, payload?: INTERNAL_EVENT_PAYLOAD[EVENT_NAME]): void;
|
|
2106
|
+
/**
|
|
2107
|
+
* Manual camera controls for MapView. Generally you should be using the functions on MapView like {{#crossLink "MapView/focusOn:method"}}{{/crossLink}},
|
|
2108
|
+
* but if you have some cool animations in mind, you can do it with the {{#crossLink "CameraControls"}}{{/crossLink}}.
|
|
2109
|
+
* Some of the functions don't do anything in 2D.
|
|
2110
|
+
*
|
|
2111
|
+
*/
|
|
2112
|
+
controls: any;
|
|
2113
|
+
/**
|
|
2114
|
+
* The Venue data this MapView is using.
|
|
2115
|
+
*
|
|
2116
|
+
* @property venue {MappedinVenue}
|
|
2117
|
+
* @final
|
|
2118
|
+
*/
|
|
2119
|
+
readonly venue: Mappedin;
|
|
2120
|
+
/**
|
|
2121
|
+
* The div MapView is using.
|
|
2122
|
+
*
|
|
2123
|
+
* @property container {Div}
|
|
2124
|
+
* @final
|
|
2125
|
+
*/
|
|
2126
|
+
readonly container: HTMLElement;
|
|
2127
|
+
/**
|
|
2128
|
+
* The ID of the Map currently being displayed.
|
|
2129
|
+
*
|
|
2130
|
+
*/
|
|
2131
|
+
readonly currentMap: string;
|
|
2132
|
+
/**
|
|
2133
|
+
* Change this factor to influence how much the camera zooms in on a {@link IMapView3D.focusOn} call.
|
|
2134
|
+
*
|
|
2135
|
+
* @property focusZoomFactor {Integer}
|
|
2136
|
+
* @default 3
|
|
2137
|
+
*/
|
|
2138
|
+
focusZoomFactor: number;
|
|
2139
|
+
/**
|
|
2140
|
+
* Returns the value you should call {@link CameraControls.setZoom} on to fit the Polygon exactly.
|
|
2141
|
+
*
|
|
2142
|
+
* @return The zoom level that will fit the Polygon
|
|
2143
|
+
*/
|
|
2144
|
+
getZoomLevelForPolygon(props: {
|
|
2145
|
+
/**
|
|
2146
|
+
* The Polygon or Polygon ID to get the zoom level for
|
|
2147
|
+
*/
|
|
2148
|
+
polygonOrPolygonId: MappedinPolygon | string;
|
|
2149
|
+
}): number;
|
|
2150
|
+
/**
|
|
2151
|
+
* Returns the value you should call {@link CameraControls.setZoom} on to fit the {@link IMapView3D.currentMap} exactly.
|
|
2152
|
+
*
|
|
2153
|
+
* @return The zoom level that will fit the {@link IMapView3D.currentMap}.
|
|
2154
|
+
*/
|
|
2155
|
+
getZoomLevelForCurrentMap(): number;
|
|
2156
|
+
/**
|
|
2157
|
+
* Returns the angle that points to north, in radians, from the default orientation.
|
|
2158
|
+
*
|
|
2159
|
+
* @return The angle to north from the default orientation, in radians.
|
|
2160
|
+
*/
|
|
2161
|
+
getNorth(): number;
|
|
2162
|
+
/**
|
|
2163
|
+
* Takes an element on the DOM and rotates it such that the top is pointing north. It will rotate with the camera, staying locked
|
|
2164
|
+
* 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
|
|
2165
|
+
* is how you would do a compass rose.
|
|
2166
|
+
*
|
|
2167
|
+
* This will modify your element's transform.
|
|
2168
|
+
*
|
|
2169
|
+
* @param element The element on the page to rotate.
|
|
2170
|
+
* @param offset The amount to offset the rotation by, in radians.
|
|
2171
|
+
*
|
|
2172
|
+
*/
|
|
2173
|
+
lockNorth(element: HTMLElement, offset?: number): void;
|
|
2174
|
+
/**
|
|
2175
|
+
* 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.
|
|
2176
|
+
* @param element The node to stop rotating. It won't reset the transform, just leave it as is.
|
|
2177
|
+
*/
|
|
2178
|
+
unlockNorth(element: HTMLElement): void;
|
|
2179
|
+
currentInteractionEvent: string;
|
|
2180
|
+
interactivePolygons: any;
|
|
2181
|
+
highlightedPolygons: any;
|
|
2182
|
+
cameraPlane: any;
|
|
2183
|
+
/**
|
|
2184
|
+
* Called any time a user touches or clicks the map. Only fires on "single" touches/clicks.
|
|
2185
|
+
*
|
|
2186
|
+
* @param position Object containing the latitude & longitude of the location touched on the map
|
|
2187
|
+
* @param polygons Array of polygon IDs that were touched, in order of front to back.
|
|
2188
|
+
* @param nearBlueDot Whether the touch was close enough to the Blue Dot to be considered a touch on the Blue Dot.
|
|
2189
|
+
*/
|
|
2190
|
+
onMapClicked(position: {
|
|
2191
|
+
latitude: number;
|
|
2192
|
+
longitude: number;
|
|
2193
|
+
}, polygons: string[], nearBlueDot: boolean): void;
|
|
2194
|
+
/**
|
|
2195
|
+
* This is called when an interactive Polygon is clicked on.
|
|
2196
|
+
* You will almost certainly want to replace this with your own function in your client app.
|
|
2197
|
+
* Return "false" if you have consumed the event and it shouldn't bubble down to other Polygons beneath this one.
|
|
2198
|
+
*
|
|
2199
|
+
* @param polygonId polygonId passed in when tapping an interactive polygon
|
|
2200
|
+
*/
|
|
2201
|
+
onPolygonClicked(polygonId: string): boolean | void;
|
|
2202
|
+
onMapChanged(map: string): void;
|
|
2203
|
+
getPositionLatLon(lat: number, lon: number, map?: MappedinMap | string): Vector3;
|
|
2204
|
+
getPositionPolygon(polygon: MappedinPolygon | string): Vector3;
|
|
2205
|
+
/**
|
|
2206
|
+
* Takes an x/y pair in Mappedin coordinate space and gives you a Vector3 in scene space
|
|
2207
|
+
* @param nodeOrCoordinate a node or coordinate
|
|
2208
|
+
*/
|
|
2209
|
+
convertTo3DMapPosition(nodeOrCoordinate: MappedinCoordinate | MappedinNode): Vector3;
|
|
2210
|
+
/**
|
|
2211
|
+
* Converts a Vector-like object into a MappedinCoordinate for a map.
|
|
2212
|
+
* @param position an object with x and y, like a Vector3
|
|
2213
|
+
* @param mapClass An optional map; otherwise, the current map will be used.
|
|
2214
|
+
*/
|
|
2215
|
+
convert3DMapPositionToCoordinate(position: {
|
|
2216
|
+
x: number;
|
|
2217
|
+
y: number;
|
|
2218
|
+
}, mapClass?: MappedinMap): MappedinCoordinate;
|
|
2219
|
+
setPadding(padding: {
|
|
2220
|
+
top: number;
|
|
2221
|
+
left: number;
|
|
2222
|
+
bottom: number;
|
|
2223
|
+
right: number;
|
|
2224
|
+
}): void;
|
|
2225
|
+
/**
|
|
2226
|
+
* This is fired when the user taps/clicks on the MapView without hitting an interactive Polygon.
|
|
2227
|
+
* You will almost certainly want to replace this with your own function in your client app.
|
|
2228
|
+
* You would probably use this to clear any Polygon highlighting, in certain situations.
|
|
2229
|
+
*/
|
|
2230
|
+
onNothingClicked(): void;
|
|
2231
|
+
smartCollisionEngine: any;
|
|
2232
|
+
mapObjects: any;
|
|
2233
|
+
/**
|
|
2234
|
+
* The scene only renders when something has changed. This should be something a 3rd party developer doesn't need to worry about,
|
|
2235
|
+
* but if you are doing something weird, or have your own special tween for something, you will want to call this function.
|
|
2236
|
+
* 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.
|
|
2237
|
+
* Ignored in 2D.
|
|
2238
|
+
*/
|
|
2239
|
+
tryRendering(renderMode?: typeof RENDER): void;
|
|
2240
|
+
setMap(mapOrMapId: MappedinMap | string): Promise<null>;
|
|
2241
|
+
getPositionNode(node: MappedinNode): Vector3;
|
|
2242
|
+
cameraObject: any;
|
|
2243
|
+
setBackgroundColor(color: number | string, alpha?: number): void;
|
|
2244
|
+
mapManager: any;
|
|
2245
|
+
focusOn(focusOptions: TFocusOptionsLegacy): Tween;
|
|
2246
|
+
canvasWidth: number;
|
|
2247
|
+
canvasHeight: number;
|
|
2248
|
+
/**
|
|
2249
|
+
* Resets the MapView to the default state.
|
|
2250
|
+
*/
|
|
2251
|
+
resetState(): void;
|
|
2252
|
+
destroy(): void;
|
|
2253
|
+
}
|
|
2254
|
+
}
|
|
2255
|
+
|
|
2256
|
+
declare module '@mappedin/react-native-sdk/wrappers/common/controller' {
|
|
2257
|
+
import { BRIDGE_EVENT, BRIDGE_EVENT_PAYLOADS } from '@mappedin/react-native-sdk/wrappers/common';
|
|
2258
|
+
import { PubSub } from '@mappedin/react-native-sdk/wrappers/common';
|
|
2259
|
+
export function uuid(): string;
|
|
2260
|
+
export class MappedinController {
|
|
2261
|
+
#private;
|
|
2262
|
+
privateEventBus: PubSub<{
|
|
2263
|
+
REJECT: {
|
|
2264
|
+
msgID?: string | undefined;
|
|
2265
|
+
data: any;
|
|
2266
|
+
};
|
|
2267
|
+
RESOLVE: {
|
|
2268
|
+
msgID?: string | undefined;
|
|
2269
|
+
data: any;
|
|
2270
|
+
};
|
|
2271
|
+
READY: {
|
|
2272
|
+
msgID?: string | undefined;
|
|
2273
|
+
data: null;
|
|
2274
|
+
};
|
|
2275
|
+
LOG: {
|
|
2276
|
+
msgID?: string | undefined;
|
|
2277
|
+
data: string;
|
|
2278
|
+
};
|
|
2279
|
+
GET_IMAGE: {
|
|
2280
|
+
msgID?: string | undefined;
|
|
2281
|
+
data: {
|
|
2282
|
+
fileName: string;
|
|
2283
|
+
};
|
|
2284
|
+
};
|
|
2285
|
+
GET_MAP_POLYGONS: {
|
|
2286
|
+
msgID?: string | undefined;
|
|
2287
|
+
data: {
|
|
2288
|
+
mapId: string;
|
|
2289
|
+
};
|
|
2290
|
+
};
|
|
2291
|
+
MINIMAP_READY: {
|
|
2292
|
+
msgID?: string | undefined;
|
|
2293
|
+
data: null;
|
|
2294
|
+
};
|
|
2295
|
+
SHOW_MINIMAP: {
|
|
2296
|
+
msgID?: string | undefined;
|
|
2297
|
+
data: {
|
|
2298
|
+
format: "jsonstring";
|
|
2299
|
+
venueData: string;
|
|
2300
|
+
options: import("./types").TMiMapViewOptions;
|
|
2301
|
+
};
|
|
2302
|
+
};
|
|
2303
|
+
LOAD_MINIMAP: {
|
|
2304
|
+
msgID?: string | undefined;
|
|
2305
|
+
data: {
|
|
2306
|
+
options: import("../react-native-sdk/src").TGetVenueOptions;
|
|
2307
|
+
};
|
|
2308
|
+
};
|
|
2309
|
+
CACHE_IMAGE: {
|
|
2310
|
+
msgID?: string | undefined;
|
|
2311
|
+
data: {
|
|
2312
|
+
url?: string | undefined;
|
|
2313
|
+
options: import("../react-native-sdk/src").TGetVenueOptions;
|
|
2314
|
+
locationId: string;
|
|
2315
|
+
polygonHighlightColor?: string | undefined;
|
|
2316
|
+
focusOptions?: Omit<import("./types").TFocusOnOptionsSerializable, "targets"> | undefined;
|
|
2317
|
+
};
|
|
2318
|
+
};
|
|
2319
|
+
CLEAR_BUNDLE_CACHE: {
|
|
2320
|
+
msgID?: string | undefined;
|
|
2321
|
+
data: null;
|
|
2322
|
+
};
|
|
2323
|
+
NOTHING_CLICKED: {
|
|
2324
|
+
msgID?: string | undefined;
|
|
2325
|
+
data: null;
|
|
2326
|
+
};
|
|
2327
|
+
STATE_CHANGED: {
|
|
2328
|
+
msgID?: string | undefined;
|
|
2329
|
+
data: {
|
|
2330
|
+
state: import("../react-native-sdk/src").STATE;
|
|
2331
|
+
};
|
|
2332
|
+
};
|
|
2333
|
+
DATA_LOADED: {
|
|
2334
|
+
msgID?: string | undefined;
|
|
2335
|
+
data: {
|
|
2336
|
+
venueData: any;
|
|
2337
|
+
};
|
|
2338
|
+
};
|
|
2339
|
+
FIRST_MAP_LOADED: {
|
|
2340
|
+
msgID?: string | undefined;
|
|
2341
|
+
data: {
|
|
2342
|
+
venueData?: any;
|
|
2343
|
+
};
|
|
2344
|
+
};
|
|
2345
|
+
MAP_CHANGED: {
|
|
2346
|
+
msgID?: string | undefined;
|
|
2347
|
+
data: {
|
|
2348
|
+
mapId: string;
|
|
2349
|
+
};
|
|
2350
|
+
};
|
|
2351
|
+
POLYGON_CLICKED: {
|
|
2352
|
+
msgID?: string | undefined;
|
|
2353
|
+
data: {
|
|
2354
|
+
polygonId: string;
|
|
2355
|
+
};
|
|
2356
|
+
};
|
|
2357
|
+
ROTATION_CHANGED: {
|
|
2358
|
+
msgID?: string | undefined;
|
|
2359
|
+
data: {
|
|
2360
|
+
rotation: number;
|
|
2361
|
+
};
|
|
2362
|
+
};
|
|
2363
|
+
TILT_CHANGED: {
|
|
2364
|
+
msgID?: string | undefined;
|
|
2365
|
+
data: {
|
|
2366
|
+
tilt: number;
|
|
2367
|
+
};
|
|
2368
|
+
};
|
|
2369
|
+
UPDATE_GEOLOCATION: {
|
|
2370
|
+
msgID?: string | undefined;
|
|
2371
|
+
data: {
|
|
2372
|
+
msgID: undefined;
|
|
2373
|
+
data: unknown;
|
|
2374
|
+
};
|
|
2375
|
+
};
|
|
2376
|
+
BLUEDOT_STATE_CHANGE: {
|
|
2377
|
+
msgID?: string | undefined;
|
|
2378
|
+
data: {
|
|
2379
|
+
stateChange: import("../react-native-sdk/src").TBlueDotStateChange;
|
|
2380
|
+
};
|
|
2381
|
+
};
|
|
2382
|
+
BLUEDOT_POSITION_UPDATE: {
|
|
2383
|
+
msgID?: string | undefined;
|
|
2384
|
+
data: {
|
|
2385
|
+
update: Omit<import("../react-native-sdk/src").TBlueDotPositionUpdate, "map" | "nearestNode"> & {
|
|
2386
|
+
nearestNode?: string | undefined;
|
|
2387
|
+
map?: string | undefined;
|
|
2388
|
+
};
|
|
2389
|
+
};
|
|
2390
|
+
};
|
|
2391
|
+
SET_JOURNEY_STEP: {
|
|
2392
|
+
msgID?: string | undefined;
|
|
2393
|
+
data: {
|
|
2394
|
+
step: number;
|
|
2395
|
+
};
|
|
2396
|
+
};
|
|
2397
|
+
LOAD_VENUE: {
|
|
2398
|
+
msgID?: string | undefined;
|
|
2399
|
+
data: {
|
|
2400
|
+
options: import("../react-native-sdk/src").TGetVenueOptions & {
|
|
1995
2401
|
useBundle?: boolean | undefined;
|
|
1996
2402
|
};
|
|
1997
|
-
showVenueOptions: import("../react-native-sdk/src").TShowVenueOptions
|
|
2403
|
+
showVenueOptions: import("../react-native-sdk/src").TShowVenueOptions & {
|
|
2404
|
+
prepareSearch?: boolean | undefined;
|
|
2405
|
+
searchOptions?: Partial<{
|
|
2406
|
+
stopWords?: string[] | undefined;
|
|
2407
|
+
searchTags?: boolean | undefined;
|
|
2408
|
+
searchDescriptions?: boolean | undefined;
|
|
2409
|
+
searchTagsInCategories?: boolean | undefined; /**
|
|
2410
|
+
* Handle rejection from the other side, typically when the request results in an error
|
|
2411
|
+
* @hidden
|
|
2412
|
+
searchDescriptionsInCategories?: boolean | undefined;
|
|
2413
|
+
jsonIndex?: string | undefined;
|
|
2414
|
+
useLocationRank?: boolean | undefined;
|
|
2415
|
+
emitAnalyticsEvents?: boolean | undefined;
|
|
2416
|
+
constants: {
|
|
2417
|
+
PRIMARY_INDEX_FUZZYNESS: number;
|
|
2418
|
+
PRIMARY_INDEX_WEIGHT: number;
|
|
2419
|
+
SECONDARY_INDEX_WEIGHT: number;
|
|
2420
|
+
LOCATION_NAME_WEIGHT: number;
|
|
2421
|
+
CATEGORY_NAME_WEIGHT: number;
|
|
2422
|
+
CATEGORY_LOCATION_DESCRIPTION_WEIGHT: number;
|
|
2423
|
+
CATEGORY_LOCATION_TAGS_WEIGHT: number;
|
|
2424
|
+
CATEGORY_LOCATION_NAME_WEIGHT: number;
|
|
2425
|
+
PRIMARY_INDEX_TAGS_NAME_WEIGHT: number;
|
|
2426
|
+
LOCATION_DEFAULT_RANK: number;
|
|
2427
|
+
RATIO_OF_FUZZY_TO_EXACT: number;
|
|
2428
|
+
RATIO_OF_PREFIX_TO_EXACT: number;
|
|
2429
|
+
};
|
|
2430
|
+
}> | undefined;
|
|
2431
|
+
};
|
|
1998
2432
|
};
|
|
1999
2433
|
};
|
|
2000
2434
|
SHOW_VENUE: {
|
|
@@ -2002,7 +2436,35 @@ declare module '@mappedin/react-native-sdk/wrappers/common/controller' {
|
|
|
2002
2436
|
data: {
|
|
2003
2437
|
venueData: string;
|
|
2004
2438
|
format: "jsonstring";
|
|
2005
|
-
showVenueOptions: import("../react-native-sdk/src").TShowVenueOptions
|
|
2439
|
+
showVenueOptions: import("../react-native-sdk/src").TShowVenueOptions & {
|
|
2440
|
+
prepareSearch?: boolean | undefined;
|
|
2441
|
+
searchOptions?: Partial<{
|
|
2442
|
+
stopWords?: string[] | undefined;
|
|
2443
|
+
searchTags?: boolean | undefined;
|
|
2444
|
+
searchDescriptions?: boolean | undefined;
|
|
2445
|
+
searchTagsInCategories?: boolean | undefined; /**
|
|
2446
|
+
* Handle rejection from the other side, typically when the request results in an error
|
|
2447
|
+
* @hidden
|
|
2448
|
+
searchDescriptionsInCategories?: boolean | undefined;
|
|
2449
|
+
jsonIndex?: string | undefined;
|
|
2450
|
+
useLocationRank?: boolean | undefined;
|
|
2451
|
+
emitAnalyticsEvents?: boolean | undefined;
|
|
2452
|
+
constants: {
|
|
2453
|
+
PRIMARY_INDEX_FUZZYNESS: number;
|
|
2454
|
+
PRIMARY_INDEX_WEIGHT: number;
|
|
2455
|
+
SECONDARY_INDEX_WEIGHT: number;
|
|
2456
|
+
LOCATION_NAME_WEIGHT: number;
|
|
2457
|
+
CATEGORY_NAME_WEIGHT: number;
|
|
2458
|
+
CATEGORY_LOCATION_DESCRIPTION_WEIGHT: number;
|
|
2459
|
+
CATEGORY_LOCATION_TAGS_WEIGHT: number;
|
|
2460
|
+
CATEGORY_LOCATION_NAME_WEIGHT: number;
|
|
2461
|
+
PRIMARY_INDEX_TAGS_NAME_WEIGHT: number;
|
|
2462
|
+
LOCATION_DEFAULT_RANK: number;
|
|
2463
|
+
RATIO_OF_FUZZY_TO_EXACT: number;
|
|
2464
|
+
RATIO_OF_PREFIX_TO_EXACT: number;
|
|
2465
|
+
};
|
|
2466
|
+
}> | undefined;
|
|
2467
|
+
};
|
|
2006
2468
|
};
|
|
2007
2469
|
};
|
|
2008
2470
|
SET_MAP: {
|
|
@@ -2232,6 +2694,29 @@ declare module '@mappedin/react-native-sdk/wrappers/common/controller' {
|
|
|
2232
2694
|
map?: string | undefined;
|
|
2233
2695
|
};
|
|
2234
2696
|
};
|
|
2697
|
+
SEARCH: {
|
|
2698
|
+
msgID?: string | undefined;
|
|
2699
|
+
data: {
|
|
2700
|
+
query: string;
|
|
2701
|
+
};
|
|
2702
|
+
};
|
|
2703
|
+
SUGGEST: {
|
|
2704
|
+
msgID?: string | undefined;
|
|
2705
|
+
data: {
|
|
2706
|
+
query: string;
|
|
2707
|
+
};
|
|
2708
|
+
};
|
|
2709
|
+
ADD_SEARCH_QUERY: {
|
|
2710
|
+
msgID?: string | undefined;
|
|
2711
|
+
data: {
|
|
2712
|
+
query: string;
|
|
2713
|
+
object: {
|
|
2714
|
+
type: "MappedinLocation" | "MappedinCategory" | "Custom";
|
|
2715
|
+
id: string;
|
|
2716
|
+
};
|
|
2717
|
+
weight?: number | undefined;
|
|
2718
|
+
};
|
|
2719
|
+
};
|
|
2235
2720
|
}>;
|
|
2236
2721
|
/**
|
|
2237
2722
|
* Message received from the other side of the bridge
|
|
@@ -2263,268 +2748,73 @@ declare module '@mappedin/react-native-sdk/wrappers/common/controller' {
|
|
|
2263
2748
|
/**
|
|
2264
2749
|
* Handle rejection from the other side, typically when the request results in an error
|
|
2265
2750
|
* @hidden
|
|
2266
|
-
*/
|
|
2267
|
-
protected handleRejection: <EVENT_NAME extends BRIDGE_EVENT>(payload: {
|
|
2268
|
-
msgID: string;
|
|
2269
|
-
data: {
|
|
2270
|
-
payload: BRIDGE_EVENT_PAYLOADS[EVENT_NAME];
|
|
2271
|
-
};
|
|
2272
|
-
}) => void;
|
|
2273
|
-
/**
|
|
2274
|
-
* Emitting a message without expecting a response
|
|
2275
|
-
* @hidden
|
|
2276
|
-
*/
|
|
2277
|
-
emit<EVENT_NAME extends keyof BRIDGE_EVENT_PAYLOADS>(eventName: EVENT_NAME, payload?: BRIDGE_EVENT_PAYLOADS[EVENT_NAME], msgID?: string): void;
|
|
2278
|
-
/**
|
|
2279
|
-
* Emitting a message and waiting for a reponse, via a promise
|
|
2280
|
-
* @hidden
|
|
2281
|
-
*/
|
|
2282
|
-
emitAsync<T, EVENT_NAME extends keyof BRIDGE_EVENT_PAYLOADS>(eventName: EVENT_NAME, payload?: BRIDGE_EVENT_PAYLOADS[EVENT_NAME], msgID?: string): Promise<T>;
|
|
2283
|
-
}
|
|
2284
|
-
}
|
|
2285
|
-
|
|
2286
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/Core.interface' {
|
|
2287
|
-
import { MappedinMap, Mappedin, MappedinCoordinate, MappedinPolygon, MappedinNode } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
2288
|
-
import CameraControls from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.CameraControls';
|
|
2289
|
-
import { Vector2, Vector3 } from 'three';
|
|
2290
|
-
import { changeListenerFn, TMapViewOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
2291
|
-
import RENDER from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks';
|
|
2292
|
-
import { INTERNAL_EVENT_PAYLOAD } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
2293
|
-
import { TPadding } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
2294
|
-
import Tween, { Easing } from '@tweenjs/tween.js';
|
|
2295
|
-
export type TFocusOptionsLegacy = {
|
|
2296
|
-
/**
|
|
2297
|
-
* An array of Nodes to focus in on
|
|
2298
|
-
*/
|
|
2299
|
-
nodes?: (MappedinNode | MappedinNode['id'])[];
|
|
2300
|
-
/**
|
|
2301
|
-
* An array of Polygons to focus on. It's the center of the bounds of all Polygons, designed to fit everything into view.
|
|
2302
|
-
*/
|
|
2303
|
-
polygons?: (MappedinPolygon | MappedinPolygon['id'])[];
|
|
2304
|
-
/**
|
|
2305
|
-
* The duration the focus animation should last for.
|
|
2306
|
-
* @defaultValue `100`
|
|
2307
|
-
*/
|
|
2308
|
-
duration?: number;
|
|
2309
|
-
/**
|
|
2310
|
-
* Whether to zoom the camera in or out, or just pan it.
|
|
2311
|
-
* @defaultValue `true`
|
|
2312
|
-
*/
|
|
2313
|
-
changeZoom?: boolean;
|
|
2314
|
-
/**
|
|
2315
|
-
* The animation curve to use for zooming in. Uses the animateCamera one by default.
|
|
2316
|
-
*/
|
|
2317
|
-
curve?: typeof Easing;
|
|
2318
|
-
/**
|
|
2319
|
-
* Camera tilt between 0 (top-down) to 1 (from the side)
|
|
2320
|
-
*/
|
|
2321
|
-
tilt?: number;
|
|
2322
|
-
/**
|
|
2323
|
-
* Rotation in degrees
|
|
2324
|
-
*/
|
|
2325
|
-
rotation?: number;
|
|
2326
|
-
/**
|
|
2327
|
-
* You can overide the {{#crossLink "MapView/focusZoomFactor:property"}}{{/crossLink}} for a specific {{#crossLink "MapView/focusOn:method"}}{{/crossLink}} call, rather than globally, if you like.
|
|
2328
|
-
*/
|
|
2329
|
-
focusZoomFactor?: number;
|
|
2330
|
-
/**
|
|
2331
|
-
* Sets a floor for how close you can zoom in on the scene. If it's lower than mapView.controls.minZoom, it's ignored.
|
|
2332
|
-
* @defaultValue: 0
|
|
2333
|
-
*/
|
|
2334
|
-
minZoom?: number;
|
|
2335
|
-
padding?: TPadding;
|
|
2336
|
-
points?: any[];
|
|
2337
|
-
};
|
|
2338
|
-
export interface ICore {
|
|
2339
|
-
new (container: HTMLElement, venue: Mappedin, options?: TMapViewOptions): ICore;
|
|
2340
|
-
/**
|
|
2341
|
-
* @internal
|
|
2342
|
-
*/
|
|
2343
|
-
currentScale: number;
|
|
2344
|
-
imageFlippingEnabled: boolean;
|
|
2345
|
-
imageFlippingCache: any;
|
|
2346
|
-
cachedPadding: any;
|
|
2347
|
-
polygonMeshesById: any;
|
|
2348
|
-
textLabelsByPolygonId: any;
|
|
2349
|
-
renderer: any;
|
|
2350
|
-
scene: any;
|
|
2351
|
-
cameraParameters: Vector2;
|
|
2352
|
-
resolution: Vector2;
|
|
2353
|
-
determineNewLabelSize: any;
|
|
2354
|
-
on<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
2355
|
-
off<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, fn: changeListenerFn<INTERNAL_EVENT_PAYLOAD[EVENT_NAME]>): void;
|
|
2356
|
-
publish<EVENT_NAME extends keyof INTERNAL_EVENT_PAYLOAD>(eventName: EVENT_NAME, payload?: INTERNAL_EVENT_PAYLOAD[EVENT_NAME]): void;
|
|
2357
|
-
/**
|
|
2358
|
-
* Manual camera controls for MapView. Generally you should be using the functions on MapView like {{#crossLink "MapView/focusOn:method"}}{{/crossLink}},
|
|
2359
|
-
* but if you have some cool animations in mind, you can do it with the {{#crossLink "CameraControls"}}{{/crossLink}}.
|
|
2360
|
-
* Some of the functions don't do anything in 2D.
|
|
2361
|
-
*
|
|
2362
|
-
*/
|
|
2363
|
-
controls?: typeof CameraControls;
|
|
2364
|
-
/**
|
|
2365
|
-
* The Venue data this MapView is using.
|
|
2366
|
-
*
|
|
2367
|
-
* @property venue {MappedinVenue}
|
|
2368
|
-
* @final
|
|
2369
|
-
*/
|
|
2370
|
-
readonly venue: Mappedin;
|
|
2371
|
-
/**
|
|
2372
|
-
* The div MapView is using.
|
|
2373
|
-
*
|
|
2374
|
-
* @property container {Div}
|
|
2375
|
-
* @final
|
|
2376
|
-
*/
|
|
2377
|
-
readonly container: HTMLElement;
|
|
2378
|
-
/**
|
|
2379
|
-
* The ID of the Map currently being displayed.
|
|
2380
|
-
*
|
|
2381
|
-
*/
|
|
2382
|
-
readonly currentMap: string;
|
|
2383
|
-
/**
|
|
2384
|
-
* Change this factor to influence how much the camera zooms in on a {@link IMapView3D.focusOn} call.
|
|
2385
|
-
*
|
|
2386
|
-
* @property focusZoomFactor {Integer}
|
|
2387
|
-
* @default 3
|
|
2388
|
-
*/
|
|
2389
|
-
focusZoomFactor: number;
|
|
2390
|
-
/**
|
|
2391
|
-
* Returns the value you should call {@link CameraControls.setZoom} on to fit the Polygon exactly.
|
|
2392
|
-
*
|
|
2393
|
-
* @return The zoom level that will fit the Polygon
|
|
2394
|
-
*/
|
|
2395
|
-
getZoomLevelForPolygon(props: {
|
|
2396
|
-
/**
|
|
2397
|
-
* The Polygon or Polygon ID to get the zoom level for
|
|
2398
|
-
*/
|
|
2399
|
-
polygonOrPolygonId: MappedinPolygon | string;
|
|
2400
|
-
}): number;
|
|
2401
|
-
/**
|
|
2402
|
-
* Returns the value you should call {@link CameraControls.setZoom} on to fit the {@link IMapView3D.currentMap} exactly.
|
|
2403
|
-
*
|
|
2404
|
-
* @return The zoom level that will fit the {@link IMapView3D.currentMap}.
|
|
2405
|
-
*/
|
|
2406
|
-
getZoomLevelForCurrentMap(): number;
|
|
2407
|
-
/**
|
|
2408
|
-
* Returns the angle that points to north, in radians, from the default orientation.
|
|
2409
|
-
*
|
|
2410
|
-
* @return The angle to north from the default orientation, in radians.
|
|
2411
|
-
*/
|
|
2412
|
-
getNorth(): number;
|
|
2413
|
-
/**
|
|
2414
|
-
* Takes an element on the DOM and rotates it such that the top is pointing north. It will rotate with the camera, staying locked
|
|
2415
|
-
* 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
|
|
2416
|
-
* is how you would do a compass rose.
|
|
2417
|
-
*
|
|
2418
|
-
* This will modify your element's transform.
|
|
2419
|
-
*
|
|
2420
|
-
* @param element The element on the page to rotate.
|
|
2421
|
-
* @param offset The amount to offset the rotation by, in radians.
|
|
2422
|
-
*
|
|
2423
|
-
*/
|
|
2424
|
-
lockNorth(element: HTMLElement, offset?: number): void;
|
|
2425
|
-
/**
|
|
2426
|
-
* 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.
|
|
2427
|
-
* @param element The node to stop rotating. It won't reset the transform, just leave it as is.
|
|
2428
|
-
*/
|
|
2429
|
-
unlockNorth(element: HTMLElement): void;
|
|
2430
|
-
currentInteractionEvent: string;
|
|
2431
|
-
interactivePolygons: any;
|
|
2432
|
-
highlightedPolygons: any;
|
|
2433
|
-
cameraPlane: any;
|
|
2434
|
-
/**
|
|
2435
|
-
* Called any time a user touches or clicks the map. Only fires on "single" touches/clicks.
|
|
2436
|
-
*
|
|
2437
|
-
* @param position Object containing the latitude & longitude of the location touched on the map
|
|
2438
|
-
* @param polygons Array of polygon IDs that were touched, in order of front to back.
|
|
2439
|
-
* @param nearBlueDot Whether the touch was close enough to the Blue Dot to be considered a touch on the Blue Dot.
|
|
2440
|
-
*/
|
|
2441
|
-
onMapClicked(position: {
|
|
2442
|
-
latitude: number;
|
|
2443
|
-
longitude: number;
|
|
2444
|
-
}, polygons: string[], nearBlueDot: boolean): void;
|
|
2445
|
-
/**
|
|
2446
|
-
* This is called when an interactive Polygon is clicked on.
|
|
2447
|
-
* You will almost certainly want to replace this with your own function in your client app.
|
|
2448
|
-
* Return "false" if you have consumed the event and it shouldn't bubble down to other Polygons beneath this one.
|
|
2449
|
-
*
|
|
2450
|
-
* @param polygonId polygonId passed in when tapping an interactive polygon
|
|
2451
|
-
*/
|
|
2452
|
-
onPolygonClicked(polygonId: string): boolean | void;
|
|
2453
|
-
onMapChanged(map: string): void;
|
|
2454
|
-
getPositionLatLon(lat: number, lon: number, map?: MappedinMap | string): Vector3;
|
|
2455
|
-
getPositionPolygon(polygon: MappedinPolygon | string): Vector3;
|
|
2456
|
-
convertTo3DMapPosition(nodeOrCoordinate: MappedinCoordinate | MappedinNode): Vector3;
|
|
2457
|
-
setPadding(padding: {
|
|
2458
|
-
top: number;
|
|
2459
|
-
left: number;
|
|
2460
|
-
bottom: number;
|
|
2461
|
-
right: number;
|
|
2462
|
-
}): void;
|
|
2463
|
-
/**
|
|
2464
|
-
* This is fired when the user taps/clicks on the MapView without hitting an interactive Polygon.
|
|
2465
|
-
* You will almost certainly want to replace this with your own function in your client app.
|
|
2466
|
-
* You would probably use this to clear any Polygon highlighting, in certain situations.
|
|
2467
|
-
*/
|
|
2468
|
-
onNothingClicked(): void;
|
|
2469
|
-
smartCollisionEngine: any;
|
|
2470
|
-
mapObjects: any;
|
|
2751
|
+
*/
|
|
2752
|
+
protected handleRejection: <EVENT_NAME extends BRIDGE_EVENT>(payload: {
|
|
2753
|
+
msgID: string;
|
|
2754
|
+
data: {
|
|
2755
|
+
payload: BRIDGE_EVENT_PAYLOADS[EVENT_NAME];
|
|
2756
|
+
};
|
|
2757
|
+
}) => void;
|
|
2471
2758
|
/**
|
|
2472
|
-
*
|
|
2473
|
-
*
|
|
2474
|
-
* 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.
|
|
2475
|
-
* Ignored in 2D.
|
|
2759
|
+
* Emitting a message without expecting a response
|
|
2760
|
+
* @hidden
|
|
2476
2761
|
*/
|
|
2477
|
-
|
|
2478
|
-
setMap(mapOrMapId: MappedinMap | string): Promise<null>;
|
|
2479
|
-
getPositionNode(node: MappedinNode): Vector3;
|
|
2480
|
-
cameraObject: any;
|
|
2481
|
-
setBackgroundColor(color: number | string, alpha?: number): void;
|
|
2482
|
-
mapManager: any;
|
|
2483
|
-
focusOn(focusOptions: TFocusOptionsLegacy): Tween;
|
|
2484
|
-
canvasWidth: number;
|
|
2485
|
-
canvasHeight: number;
|
|
2762
|
+
emit<EVENT_NAME extends keyof BRIDGE_EVENT_PAYLOADS>(eventName: EVENT_NAME, payload?: BRIDGE_EVENT_PAYLOADS[EVENT_NAME], msgID?: string): void;
|
|
2486
2763
|
/**
|
|
2487
|
-
*
|
|
2764
|
+
* Emitting a message and waiting for a reponse, via a promise
|
|
2765
|
+
* @hidden
|
|
2488
2766
|
*/
|
|
2489
|
-
|
|
2490
|
-
destroy(): void;
|
|
2767
|
+
emitAsync<T, EVENT_NAME extends keyof BRIDGE_EVENT_PAYLOADS>(eventName: EVENT_NAME, payload?: BRIDGE_EVENT_PAYLOADS[EVENT_NAME], msgID?: string): Promise<T>;
|
|
2491
2768
|
}
|
|
2492
2769
|
}
|
|
2493
2770
|
|
|
2494
2771
|
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types' {
|
|
2495
2772
|
export type TGetVenueOptions = {
|
|
2496
|
-
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
|
|
2500
|
-
|
|
2501
|
-
|
|
2502
|
-
|
|
2503
|
-
|
|
2504
|
-
|
|
2505
|
-
|
|
2506
|
-
|
|
2507
|
-
|
|
2508
|
-
|
|
2773
|
+
accessToken?: string;
|
|
2774
|
+
clientId?: string;
|
|
2775
|
+
clientSecret?: string;
|
|
2776
|
+
baseUrl?: string;
|
|
2777
|
+
includeHidden?: boolean;
|
|
2778
|
+
noAuth?: boolean;
|
|
2779
|
+
perspective?: string;
|
|
2780
|
+
language?: string;
|
|
2781
|
+
headers?: {
|
|
2782
|
+
[key in string]: string;
|
|
2783
|
+
};
|
|
2784
|
+
venue: string;
|
|
2785
|
+
things?: any;
|
|
2786
|
+
useDraftData?: boolean;
|
|
2787
|
+
platformString?: string;
|
|
2509
2788
|
};
|
|
2510
2789
|
export type TGetVenueOptionsInternal = {
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
|
|
2514
|
-
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
|
|
2518
|
-
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
|
|
2522
|
-
|
|
2790
|
+
baseUrl?: string;
|
|
2791
|
+
supplementaryUrl?: string;
|
|
2792
|
+
noAuth?: boolean;
|
|
2793
|
+
includeHidden?: boolean;
|
|
2794
|
+
apiGateway?: string;
|
|
2795
|
+
authorization?: string;
|
|
2796
|
+
/**
|
|
2797
|
+
* @deprecated 2D support will be removed in the future
|
|
2798
|
+
*/
|
|
2799
|
+
do2D?: boolean;
|
|
2800
|
+
things?: any;
|
|
2801
|
+
headers?: any;
|
|
2523
2802
|
};
|
|
2803
|
+
export enum MAP_RENDER_MODE {
|
|
2804
|
+
/** Each polygon, its geometry and mesh are sent to the GPU every render frame.
|
|
2805
|
+
* This was the default rendering mode before 4.0.17
|
|
2806
|
+
*/
|
|
2807
|
+
MULTI_GEOMETRY = "MULTI_GEOMETRY",
|
|
2808
|
+
/** Polygons' geometries are grouped by material and merged together, resulting in far fewer
|
|
2809
|
+
* draw calls to the GPU. Default rendering mode since 4.0.17
|
|
2810
|
+
*/
|
|
2811
|
+
SINGLE_GEOMETRY = "SINGLE_GEOMETRY"
|
|
2812
|
+
}
|
|
2524
2813
|
}
|
|
2525
2814
|
|
|
2526
2815
|
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
|
|
2527
2816
|
import { Navigator } from '@mappedin/react-native-sdk/core/packages/navigator';
|
|
2817
|
+
import { MVFData } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.MVF.types';
|
|
2528
2818
|
import type { TGetVenueOptions, TGetVenueOptionsInternal } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.types';
|
|
2529
2819
|
import { MappedinCategory } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCategory';
|
|
2530
2820
|
import { MappedinEvent } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinEvent';
|
|
@@ -2539,8 +2829,9 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
|
|
|
2539
2829
|
import { MappedinTheme } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme';
|
|
2540
2830
|
import { MappedinVenue } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVenue';
|
|
2541
2831
|
import { MappedinVortex } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVortex';
|
|
2832
|
+
import Analytics from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.Analytics';
|
|
2542
2833
|
export const defaultOptions: TGetVenueOptionsInternal & TGetVenueOptions;
|
|
2543
|
-
export enum
|
|
2834
|
+
export enum MappedinCollectionType {
|
|
2544
2835
|
CATEGORY = "categories",
|
|
2545
2836
|
EVENT = "events",
|
|
2546
2837
|
LOCATION = "locations",
|
|
@@ -2551,14 +2842,14 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
|
|
|
2551
2842
|
VORTEX = "vortexes"
|
|
2552
2843
|
}
|
|
2553
2844
|
type TAccessors = {
|
|
2554
|
-
[
|
|
2555
|
-
[
|
|
2556
|
-
[
|
|
2557
|
-
[
|
|
2558
|
-
[
|
|
2559
|
-
[
|
|
2560
|
-
[
|
|
2561
|
-
[
|
|
2845
|
+
[MappedinCollectionType.CATEGORY]: MappedinCategory;
|
|
2846
|
+
[MappedinCollectionType.EVENT]: MappedinEvent;
|
|
2847
|
+
[MappedinCollectionType.LOCATION]: MappedinLocation;
|
|
2848
|
+
[MappedinCollectionType.MAPGROUP]: MappedinMapGroup;
|
|
2849
|
+
[MappedinCollectionType.MAP]: MappedinMap;
|
|
2850
|
+
[MappedinCollectionType.NODE]: MappedinNode;
|
|
2851
|
+
[MappedinCollectionType.POLYGON]: MappedinPolygon;
|
|
2852
|
+
[MappedinCollectionType.VORTEX]: MappedinVortex;
|
|
2562
2853
|
};
|
|
2563
2854
|
const THINGS: {
|
|
2564
2855
|
categories: typeof MappedinCategory;
|
|
@@ -2754,6 +3045,11 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
|
|
|
2754
3045
|
[id: string]: MappedinRankings;
|
|
2755
3046
|
};
|
|
2756
3047
|
getCollectionItemById<T extends keyof TAccessors, I extends string>(name: T, id: I): TAccessors[T] | null;
|
|
3048
|
+
/**
|
|
3049
|
+
* @hidden
|
|
3050
|
+
* @internal
|
|
3051
|
+
*/
|
|
3052
|
+
hydrateFromMVF(mvfData: MVFData): Promise<undefined>;
|
|
2757
3053
|
/**
|
|
2758
3054
|
*
|
|
2759
3055
|
* [experimental] Hydrate the Mappedin instance using a response from either {@link IMappedin.toString()}, {@link getVenueBundle} or by downloading the bundle manually
|
|
@@ -2762,9 +3058,11 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin' {
|
|
|
2762
3058
|
*/
|
|
2763
3059
|
hydrate(mappedinSerializableData: string | object, shouldPopulateBundledImagesAsBlobs?: boolean): Promise<undefined>;
|
|
2764
3060
|
images: any;
|
|
3061
|
+
imageBinaries?: Map<string, Uint8Array>;
|
|
2765
3062
|
scenes: any;
|
|
2766
3063
|
fetch(): Promise<void>;
|
|
2767
3064
|
constructor(options: TGetVenueOptionsInternal & TGetVenueOptions);
|
|
3065
|
+
analytics: Analytics;
|
|
2768
3066
|
/**
|
|
2769
3067
|
* @hidden
|
|
2770
3068
|
*/
|
|
@@ -2888,6 +3186,60 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinPolyg
|
|
|
2888
3186
|
export class MappedinPolygon extends MappedinNavigatable {
|
|
2889
3187
|
#private;
|
|
2890
3188
|
geometry: any;
|
|
3189
|
+
image?: {
|
|
3190
|
+
visible: boolean;
|
|
3191
|
+
url: string | Blob;
|
|
3192
|
+
original: string | Blob;
|
|
3193
|
+
useLocalScaling: boolean;
|
|
3194
|
+
viewBox: {
|
|
3195
|
+
width: number;
|
|
3196
|
+
height: number;
|
|
3197
|
+
};
|
|
3198
|
+
scale: {
|
|
3199
|
+
x: number;
|
|
3200
|
+
y: number;
|
|
3201
|
+
};
|
|
3202
|
+
fitToBounds: boolean;
|
|
3203
|
+
position: {
|
|
3204
|
+
x: number;
|
|
3205
|
+
y: number;
|
|
3206
|
+
z: number;
|
|
3207
|
+
};
|
|
3208
|
+
rotation: {
|
|
3209
|
+
x: number;
|
|
3210
|
+
y: number;
|
|
3211
|
+
z: number;
|
|
3212
|
+
};
|
|
3213
|
+
_isAbsolutelyPositioned?: boolean;
|
|
3214
|
+
};
|
|
3215
|
+
holes?: unknown[];
|
|
3216
|
+
textures?: {
|
|
3217
|
+
image: any;
|
|
3218
|
+
name: 'front' | 'side';
|
|
3219
|
+
useFrontFaceImage?: boolean;
|
|
3220
|
+
}[];
|
|
3221
|
+
material: {
|
|
3222
|
+
color: string;
|
|
3223
|
+
opacity?: number;
|
|
3224
|
+
};
|
|
3225
|
+
label?: {
|
|
3226
|
+
visible: boolean;
|
|
3227
|
+
text: string;
|
|
3228
|
+
align: string;
|
|
3229
|
+
position: {
|
|
3230
|
+
x: number;
|
|
3231
|
+
y: number;
|
|
3232
|
+
z: number;
|
|
3233
|
+
};
|
|
3234
|
+
rotation: {
|
|
3235
|
+
x: number;
|
|
3236
|
+
y: number;
|
|
3237
|
+
z: number;
|
|
3238
|
+
};
|
|
3239
|
+
fontFamily: string;
|
|
3240
|
+
fontSize: number;
|
|
3241
|
+
color: string;
|
|
3242
|
+
};
|
|
2891
3243
|
/**
|
|
2892
3244
|
* Node ID.
|
|
2893
3245
|
*
|
|
@@ -3074,6 +3426,7 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap'
|
|
|
3074
3426
|
import type { TGeoReference } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types';
|
|
3075
3427
|
import type { MappedinMapGroup } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMapGroup';
|
|
3076
3428
|
import { MappedinCoordinate } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCoordinate';
|
|
3429
|
+
import { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
3077
3430
|
/**
|
|
3078
3431
|
* 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.
|
|
3079
3432
|
*
|
|
@@ -3100,6 +3453,11 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap'
|
|
|
3100
3453
|
shortName: string;
|
|
3101
3454
|
elevation: number;
|
|
3102
3455
|
scale?: number;
|
|
3456
|
+
layers: {
|
|
3457
|
+
visible: boolean;
|
|
3458
|
+
name: string;
|
|
3459
|
+
id: string;
|
|
3460
|
+
}[];
|
|
3103
3461
|
x_scale?: number;
|
|
3104
3462
|
perspectiveId?: string;
|
|
3105
3463
|
scene: any;
|
|
@@ -3114,6 +3472,11 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinMap'
|
|
|
3114
3472
|
* @property polygons {[MappedinPolygon]}
|
|
3115
3473
|
*/
|
|
3116
3474
|
get polygons(): MappedinPolygon[] | undefined;
|
|
3475
|
+
/**
|
|
3476
|
+
* Locations on this map
|
|
3477
|
+
*/
|
|
3478
|
+
get locations(): MappedinLocation[];
|
|
3479
|
+
get nodes(): import("./MappedinNode").MappedinNode[];
|
|
3117
3480
|
/**
|
|
3118
3481
|
* Map Group this map belongs to.
|
|
3119
3482
|
*
|
|
@@ -3151,28 +3514,56 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinEvent
|
|
|
3151
3514
|
import type { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
3152
3515
|
import type { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
3153
3516
|
/**
|
|
3154
|
-
* An event.
|
|
3517
|
+
* An event such as a promotion attached to a location in a venue for a period of time. Events can be created in the Mappedin CMS.
|
|
3155
3518
|
*
|
|
3156
3519
|
* @class MappedinEvent
|
|
3157
3520
|
*/
|
|
3158
3521
|
export class MappedinEvent {
|
|
3159
3522
|
#private;
|
|
3523
|
+
/**
|
|
3524
|
+
* Unique id string of the event.
|
|
3525
|
+
*/
|
|
3160
3526
|
id: string;
|
|
3161
3527
|
type: string;
|
|
3528
|
+
/**
|
|
3529
|
+
* Event name
|
|
3530
|
+
*/
|
|
3162
3531
|
name: string;
|
|
3532
|
+
/**
|
|
3533
|
+
* Optional, longer description of the event.
|
|
3534
|
+
*/
|
|
3163
3535
|
description?: string | undefined;
|
|
3536
|
+
/**
|
|
3537
|
+
* Optional image to be used for displaying the event.
|
|
3538
|
+
*/
|
|
3164
3539
|
image?: TImage | undefined;
|
|
3540
|
+
/**
|
|
3541
|
+
* Start timestamp of the event. Javascript date in milliseconds since 1 January 1970 UTC.
|
|
3542
|
+
*/
|
|
3165
3543
|
startDate?: number | undefined;
|
|
3544
|
+
/**
|
|
3545
|
+
* Start timestamp of the event. Javascript date in milliseconds since 1 January 1970 UTC.
|
|
3546
|
+
*/
|
|
3166
3547
|
endDate?: number | undefined;
|
|
3548
|
+
/**
|
|
3549
|
+
* Timestamp when the event should be displayed. Javascript date in milliseconds since 1 January 1970 UTC.
|
|
3550
|
+
*/
|
|
3167
3551
|
showDate?: number | undefined;
|
|
3552
|
+
/**
|
|
3553
|
+
* @internal
|
|
3554
|
+
*/
|
|
3168
3555
|
constructor(mappedin: Mappedin, data: any);
|
|
3169
3556
|
/**
|
|
3170
|
-
* Location this
|
|
3171
|
-
*
|
|
3172
|
-
* @property location {MappedinLocation}
|
|
3557
|
+
* Location this event is occuring at.
|
|
3173
3558
|
*/
|
|
3174
3559
|
location(): MappedinLocation | undefined;
|
|
3560
|
+
/**
|
|
3561
|
+
* @internal
|
|
3562
|
+
*/
|
|
3175
3563
|
static hydrate(events: any, mappedin: Mappedin): MappedinEvent[];
|
|
3564
|
+
/**
|
|
3565
|
+
* @internal
|
|
3566
|
+
*/
|
|
3176
3567
|
static fetch(mappedin: Mappedin): Promise<MappedinEvent[]>;
|
|
3177
3568
|
toJSON(): any;
|
|
3178
3569
|
}
|
|
@@ -3245,9 +3636,10 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinVenue
|
|
|
3245
3636
|
tzidOverride: string;
|
|
3246
3637
|
utcOffset: string;
|
|
3247
3638
|
website: string;
|
|
3248
|
-
constructor(data: any);
|
|
3249
|
-
static hydrate(data: any): MappedinVenue;
|
|
3639
|
+
constructor(mappedin: Mappedin, data: any);
|
|
3640
|
+
static hydrate(data: any, mappedin: Mappedin): MappedinVenue;
|
|
3250
3641
|
static fetch(mappedin: Mappedin): Promise<MappedinVenue>;
|
|
3642
|
+
get isMultiBuilding(): any;
|
|
3251
3643
|
toJSON(): any;
|
|
3252
3644
|
}
|
|
3253
3645
|
}
|
|
@@ -3464,6 +3856,229 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinNavig
|
|
|
3464
3856
|
}
|
|
3465
3857
|
}
|
|
3466
3858
|
|
|
3859
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.OfflineSearch' {
|
|
3860
|
+
import { Mappedin } from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin';
|
|
3861
|
+
import type { SearchOptions } from 'minisearch';
|
|
3862
|
+
import { MappedinLocation } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocation';
|
|
3863
|
+
import { MappedinCategory } from '@mappedin/react-native-sdk/core/packages/get-venue/MappedinCategory';
|
|
3864
|
+
export const removeAccents: (it: string) => string;
|
|
3865
|
+
export type { SearchOptions };
|
|
3866
|
+
/**
|
|
3867
|
+
* A {@link Mappedin.OfflineSearch} is an offline search module
|
|
3868
|
+
*
|
|
3869
|
+
*
|
|
3870
|
+
* @class Mappedin.OfflineSearch
|
|
3871
|
+
*/
|
|
3872
|
+
type TOfflineSearchAllOptions = {
|
|
3873
|
+
/**
|
|
3874
|
+
* Array of stopwords to ignore when searching, default: english stopwords
|
|
3875
|
+
*/
|
|
3876
|
+
stopWords?: string[];
|
|
3877
|
+
/**
|
|
3878
|
+
* Index location tags - typically better to use either tags or descriptions, depending on what's available
|
|
3879
|
+
* @default true
|
|
3880
|
+
*/
|
|
3881
|
+
searchTags?: boolean;
|
|
3882
|
+
/**
|
|
3883
|
+
* Index location descriptions - typically better to use either tags or descriptions, depending on what's available
|
|
3884
|
+
* @default true
|
|
3885
|
+
*/
|
|
3886
|
+
searchDescriptions?: boolean;
|
|
3887
|
+
/**
|
|
3888
|
+
* Also index all tags for every location in every category (caution: this may slow down indexing and search)
|
|
3889
|
+
* @default false
|
|
3890
|
+
*/
|
|
3891
|
+
searchTagsInCategories?: boolean;
|
|
3892
|
+
/**
|
|
3893
|
+
* Also index all tags for every location in every category (caution: this may slow down indexing and search)
|
|
3894
|
+
* @default false
|
|
3895
|
+
*/
|
|
3896
|
+
searchDescriptionsInCategories?: boolean;
|
|
3897
|
+
/**
|
|
3898
|
+
* Initialize Search with a previously indexed JSON string (outputted by OfflineSearch.toJSON())
|
|
3899
|
+
*/
|
|
3900
|
+
jsonIndex?: string;
|
|
3901
|
+
/**
|
|
3902
|
+
* Use the location polygons' rank in weighing results
|
|
3903
|
+
*/
|
|
3904
|
+
useLocationRank?: boolean;
|
|
3905
|
+
/**
|
|
3906
|
+
* Emit Analytics events when doing search
|
|
3907
|
+
* @default true when running in production
|
|
3908
|
+
*/
|
|
3909
|
+
emitAnalyticsEvents?: boolean;
|
|
3910
|
+
/**
|
|
3911
|
+
* Fine tune search constants
|
|
3912
|
+
*/
|
|
3913
|
+
constants: {
|
|
3914
|
+
/**
|
|
3915
|
+
* Fuzziness index for location names and tags
|
|
3916
|
+
* @default 0.09
|
|
3917
|
+
*/
|
|
3918
|
+
PRIMARY_INDEX_FUZZYNESS: number;
|
|
3919
|
+
/**
|
|
3920
|
+
* Multiplier for location names (1 by default)
|
|
3921
|
+
* @default 1
|
|
3922
|
+
*/
|
|
3923
|
+
PRIMARY_INDEX_WEIGHT: number;
|
|
3924
|
+
/**
|
|
3925
|
+
* Multiplier for descriptions
|
|
3926
|
+
* @default 0.025
|
|
3927
|
+
*/
|
|
3928
|
+
SECONDARY_INDEX_WEIGHT: number;
|
|
3929
|
+
/**
|
|
3930
|
+
* Multiplier for location names
|
|
3931
|
+
* @default 1
|
|
3932
|
+
*/
|
|
3933
|
+
LOCATION_NAME_WEIGHT: number;
|
|
3934
|
+
/**
|
|
3935
|
+
* Multiplier for category names
|
|
3936
|
+
* @default 0.5
|
|
3937
|
+
*/
|
|
3938
|
+
CATEGORY_NAME_WEIGHT: number;
|
|
3939
|
+
/**
|
|
3940
|
+
* Multiplier for category locations' descriptions
|
|
3941
|
+
* @default 0.0005
|
|
3942
|
+
*/
|
|
3943
|
+
CATEGORY_LOCATION_DESCRIPTION_WEIGHT: number;
|
|
3944
|
+
/**
|
|
3945
|
+
* Multiplier for category locations' tags
|
|
3946
|
+
* @default 0.0005
|
|
3947
|
+
*/
|
|
3948
|
+
CATEGORY_LOCATION_TAGS_WEIGHT: number;
|
|
3949
|
+
/**
|
|
3950
|
+
* Multiplier for category locations' names
|
|
3951
|
+
* @default 0.01
|
|
3952
|
+
*/
|
|
3953
|
+
CATEGORY_LOCATION_NAME_WEIGHT: number;
|
|
3954
|
+
/**
|
|
3955
|
+
* Multiplier for location tags
|
|
3956
|
+
* @default 0.05
|
|
3957
|
+
*/
|
|
3958
|
+
PRIMARY_INDEX_TAGS_NAME_WEIGHT: number;
|
|
3959
|
+
/**
|
|
3960
|
+
* Default rank when one isn't available in the data, default = 1
|
|
3961
|
+
* @default 1
|
|
3962
|
+
*/
|
|
3963
|
+
LOCATION_DEFAULT_RANK: number;
|
|
3964
|
+
/**
|
|
3965
|
+
* Ratio of Fuzzy Searches of Location names and tags relative to exact
|
|
3966
|
+
* @default 0.01
|
|
3967
|
+
*/
|
|
3968
|
+
RATIO_OF_FUZZY_TO_EXACT: number;
|
|
3969
|
+
/**
|
|
3970
|
+
* Ratio of Prefix Searches of Location names and tags relative to exact
|
|
3971
|
+
* @default 0.2
|
|
3972
|
+
*/
|
|
3973
|
+
RATIO_OF_PREFIX_TO_EXACT: number;
|
|
3974
|
+
};
|
|
3975
|
+
};
|
|
3976
|
+
export type TMappedinOfflineAllSearchMatch = {
|
|
3977
|
+
/**
|
|
3978
|
+
* The term that was found
|
|
3979
|
+
*/
|
|
3980
|
+
term: string;
|
|
3981
|
+
/**
|
|
3982
|
+
* Term's weight
|
|
3983
|
+
*/
|
|
3984
|
+
weight: number;
|
|
3985
|
+
/**
|
|
3986
|
+
* What field the search matched on
|
|
3987
|
+
*/
|
|
3988
|
+
matchesOn: string;
|
|
3989
|
+
/**
|
|
3990
|
+
* The value of that field
|
|
3991
|
+
*/
|
|
3992
|
+
value?: string;
|
|
3993
|
+
};
|
|
3994
|
+
export type TMappedinOfflineSearchOptions = Partial<TOfflineSearchAllOptions>;
|
|
3995
|
+
export type TMappedinOfflineSearchResult = {
|
|
3996
|
+
/**
|
|
3997
|
+
* Type describing the object
|
|
3998
|
+
*/
|
|
3999
|
+
type: 'MappedinLocation' | 'MappedinCategory' | 'Custom';
|
|
4000
|
+
/**
|
|
4001
|
+
* Details on why the result was returned
|
|
4002
|
+
*/
|
|
4003
|
+
matches: TMappedinOfflineAllSearchMatch[];
|
|
4004
|
+
/**
|
|
4005
|
+
* Found object
|
|
4006
|
+
*/
|
|
4007
|
+
object: MappedinLocation | MappedinCategory | Record<string, unknown>;
|
|
4008
|
+
/**
|
|
4009
|
+
* Total score of the result
|
|
4010
|
+
*/
|
|
4011
|
+
score: number;
|
|
4012
|
+
};
|
|
4013
|
+
export type TMappedinOfflineSearchSuggestions = {
|
|
4014
|
+
/**
|
|
4015
|
+
* Total number of suggestions generated
|
|
4016
|
+
*/
|
|
4017
|
+
total: number;
|
|
4018
|
+
/**
|
|
4019
|
+
* List of suggestions
|
|
4020
|
+
*/
|
|
4021
|
+
hits: {
|
|
4022
|
+
/**
|
|
4023
|
+
* Suggestion text
|
|
4024
|
+
*/
|
|
4025
|
+
text: string;
|
|
4026
|
+
}[];
|
|
4027
|
+
};
|
|
4028
|
+
/**
|
|
4029
|
+
* A {@link OfflineSearch} is an offline search module. It can be initialized at any time by passing the {@link Mappedin} object and a set of {@link TMappedinOfflineAllSearchOptions} options.
|
|
4030
|
+
*
|
|
4031
|
+
*
|
|
4032
|
+
* @class Mappedin.OfflineSearch
|
|
4033
|
+
*/
|
|
4034
|
+
export class OfflineSearch {
|
|
4035
|
+
#private;
|
|
4036
|
+
constructor(
|
|
4037
|
+
/**
|
|
4038
|
+
* Mappedin Venue Object, typically returned by `getVenue`/`showVenue`
|
|
4039
|
+
*/
|
|
4040
|
+
mappedin: Mappedin, options?: TMappedinOfflineSearchOptions);
|
|
4041
|
+
/**
|
|
4042
|
+
* Get Suggestions for term
|
|
4043
|
+
*/
|
|
4044
|
+
suggest(
|
|
4045
|
+
/**
|
|
4046
|
+
* Search term
|
|
4047
|
+
*/
|
|
4048
|
+
term: string): Promise<TMappedinOfflineSearchSuggestions>;
|
|
4049
|
+
/**
|
|
4050
|
+
* Search for a term
|
|
4051
|
+
*/
|
|
4052
|
+
search(
|
|
4053
|
+
/**
|
|
4054
|
+
* Search term
|
|
4055
|
+
*/
|
|
4056
|
+
term: string): Promise<TMappedinOfflineSearchResult[]>;
|
|
4057
|
+
/**
|
|
4058
|
+
* Export search index to JSON for storage/caching - this would avoid having to re-index
|
|
4059
|
+
* on page reload
|
|
4060
|
+
*/
|
|
4061
|
+
toJSON(): Promise<string>;
|
|
4062
|
+
/**
|
|
4063
|
+
* Add a custom query to the search index
|
|
4064
|
+
*/
|
|
4065
|
+
addQuery(params: {
|
|
4066
|
+
/**
|
|
4067
|
+
* Query string to match for this object
|
|
4068
|
+
*/
|
|
4069
|
+
query: string;
|
|
4070
|
+
/**
|
|
4071
|
+
* Object that is returned when query matches
|
|
4072
|
+
*/
|
|
4073
|
+
object: MappedinLocation | MappedinCategory | Record<string, unknown>;
|
|
4074
|
+
/**
|
|
4075
|
+
* Optional weight to multiply by the score
|
|
4076
|
+
*/
|
|
4077
|
+
weight?: number;
|
|
4078
|
+
}): Promise<void>;
|
|
4079
|
+
}
|
|
4080
|
+
}
|
|
4081
|
+
|
|
3467
4082
|
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.types' {
|
|
3468
4083
|
/**
|
|
3469
4084
|
* This file contains the API types for MappedinSDK - before they get turned into Classes
|
|
@@ -3579,9 +4194,6 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.
|
|
|
3579
4194
|
export type TMapGroup = {
|
|
3580
4195
|
name: string;
|
|
3581
4196
|
id: string;
|
|
3582
|
-
maps: {
|
|
3583
|
-
id: TMap['id'];
|
|
3584
|
-
}[];
|
|
3585
4197
|
};
|
|
3586
4198
|
export type TBuilding = TLocation & {
|
|
3587
4199
|
groupId: string;
|
|
@@ -3634,27 +4246,32 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.
|
|
|
3634
4246
|
entranceNodeId: string;
|
|
3635
4247
|
score: number;
|
|
3636
4248
|
};
|
|
3637
|
-
export type
|
|
3638
|
-
address: string;
|
|
3639
|
-
city: string;
|
|
3640
|
-
countrycode: string;
|
|
3641
|
-
defaultMap: string;
|
|
3642
|
-
externalId: string;
|
|
4249
|
+
export type TLocationState = {
|
|
3643
4250
|
id: string;
|
|
3644
|
-
latitude: number;
|
|
3645
|
-
logo: TLogo;
|
|
3646
|
-
longitude: number;
|
|
3647
|
-
metadata?: any;
|
|
3648
4251
|
name: string;
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
4252
|
+
value: string;
|
|
4253
|
+
};
|
|
4254
|
+
export type TVenue = {
|
|
4255
|
+
address?: string;
|
|
4256
|
+
city?: string;
|
|
4257
|
+
countrycode?: string;
|
|
4258
|
+
defaultMap?: string;
|
|
4259
|
+
externalId?: string;
|
|
4260
|
+
id?: string;
|
|
4261
|
+
latitude?: number;
|
|
4262
|
+
logo?: TLogo;
|
|
4263
|
+
longitude?: number;
|
|
4264
|
+
metadata?: any;
|
|
4265
|
+
name?: string;
|
|
4266
|
+
operationHours?: TOpeningHours[];
|
|
4267
|
+
postal?: string;
|
|
4268
|
+
slug?: string;
|
|
4269
|
+
state?: string;
|
|
4270
|
+
telephone?: string;
|
|
4271
|
+
tzid?: string;
|
|
4272
|
+
tzidOverride?: string;
|
|
4273
|
+
utcOffset?: string;
|
|
4274
|
+
website?: string;
|
|
3658
4275
|
};
|
|
3659
4276
|
export type TMappedinAPI = {
|
|
3660
4277
|
nodes: TNode[];
|
|
@@ -3666,6 +4283,8 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.API.
|
|
|
3666
4283
|
themes: any;
|
|
3667
4284
|
venue: TVenue;
|
|
3668
4285
|
vortexes: TVortex[];
|
|
4286
|
+
locationStates?: TLocationState[];
|
|
4287
|
+
imageBinaries?: Map<string, Uint8Array>;
|
|
3669
4288
|
};
|
|
3670
4289
|
}
|
|
3671
4290
|
|
|
@@ -3804,6 +4423,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3804
4423
|
RIGHT = "right"
|
|
3805
4424
|
}
|
|
3806
4425
|
class FloatingLabel extends BaseCollider implements ISmarterLabel {
|
|
4426
|
+
#private;
|
|
3807
4427
|
lines: number;
|
|
3808
4428
|
contextConfigured: boolean;
|
|
3809
4429
|
fillText: TDrawFn | undefined;
|
|
@@ -3813,11 +4433,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3813
4433
|
clearColor: () => void;
|
|
3814
4434
|
zoomProportion: number;
|
|
3815
4435
|
_cache: {};
|
|
3816
|
-
_dirty: boolean;
|
|
3817
4436
|
appearance: TAppearanceFilledIn;
|
|
3818
4437
|
mapView: ICore;
|
|
3819
4438
|
constructor(options: TFloatingLabelOptionsInternal, mapView: ICore);
|
|
3820
|
-
enable(): void;
|
|
4439
|
+
enable(updateEngine?: boolean): void;
|
|
3821
4440
|
get strategies(): TColliderStrategy[];
|
|
3822
4441
|
getCachedSymbol(orientation: any, textAlign: any, xCoordinate: any): any;
|
|
3823
4442
|
colliderDidMount(): void;
|
|
@@ -3826,7 +4445,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3826
4445
|
colliderDidUpdateVisiblity(): void;
|
|
3827
4446
|
colliderDidGoOutsideGrid(): void;
|
|
3828
4447
|
colliderDidNotFindAHome(): void;
|
|
3829
|
-
disable(): void;
|
|
4448
|
+
disable(updateEngine?: boolean): void;
|
|
3830
4449
|
draw(context: CanvasRenderingContext2D): void;
|
|
3831
4450
|
static original: FloatingLabel;
|
|
3832
4451
|
static clone(options: TFloatingLabelOptionsInternal, mapView: ICore): any;
|
|
@@ -3957,19 +4576,19 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3957
4576
|
}
|
|
3958
4577
|
export type TBlueDotPositionUpdate = {
|
|
3959
4578
|
/**
|
|
3960
|
-
*
|
|
4579
|
+
* The {@link MappedinMap} Blue Dot position is on
|
|
3961
4580
|
*/
|
|
3962
4581
|
map?: MappedinMap;
|
|
3963
4582
|
/**
|
|
3964
|
-
* The nearest
|
|
4583
|
+
* The nearest {@link MappedinNode} to the Blue Dot position
|
|
3965
4584
|
*/
|
|
3966
4585
|
nearestNode?: MappedinNode;
|
|
3967
4586
|
/**
|
|
3968
|
-
* Actual position of
|
|
4587
|
+
* Actual position of Blue Dot (post smoothing, if smoothing is enabled)
|
|
3969
4588
|
*/
|
|
3970
4589
|
position?: TGeolocationObject;
|
|
3971
4590
|
/**
|
|
3972
|
-
* Current
|
|
4591
|
+
* Current Blue Dot bearing
|
|
3973
4592
|
*/
|
|
3974
4593
|
bearing?: number;
|
|
3975
4594
|
};
|
|
@@ -3979,11 +4598,11 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
3979
4598
|
*/
|
|
3980
4599
|
name: E_BLUEDOT_STATE;
|
|
3981
4600
|
/**
|
|
3982
|
-
* Visiblity
|
|
4601
|
+
* Visiblity state of the Blue Dot marker
|
|
3983
4602
|
*/
|
|
3984
4603
|
markerVisibility?: E_BLUEDOT_MARKER_STATE;
|
|
3985
4604
|
/**
|
|
3986
|
-
* Reason why
|
|
4605
|
+
* Reason why Blue Dot may be in the current state
|
|
3987
4606
|
*/
|
|
3988
4607
|
reason?: E_BLUEDOT_STATE_REASON;
|
|
3989
4608
|
/**
|
|
@@ -4003,80 +4622,84 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4003
4622
|
FakeGeolocation: typeof FakeGeolocation;
|
|
4004
4623
|
};
|
|
4005
4624
|
export default BlueDot;
|
|
4006
|
-
}
|
|
4007
|
-
|
|
4008
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartTooltip' {
|
|
4009
|
-
import './Mappedin.SmartTooltip.scss';
|
|
4010
|
-
import { COLLISION_RANKING_TIERS } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
4011
|
-
import HTMLCollider, { IHTMLCollider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.HTMLCollider';
|
|
4012
|
-
import { Vector3 } from 'three';
|
|
4013
|
-
import { TColliderStrategy } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
4014
|
-
/**
|
|
4015
|
-
|
|
4016
|
-
|
|
4017
|
-
|
|
4018
|
-
|
|
4019
|
-
|
|
4020
|
-
|
|
4021
|
-
|
|
4022
|
-
|
|
4023
|
-
|
|
4024
|
-
|
|
4025
|
-
|
|
4026
|
-
|
|
4027
|
-
|
|
4028
|
-
|
|
4029
|
-
|
|
4030
|
-
|
|
4031
|
-
|
|
4032
|
-
|
|
4033
|
-
|
|
4034
|
-
|
|
4035
|
-
|
|
4036
|
-
|
|
4037
|
-
|
|
4625
|
+
}
|
|
4626
|
+
|
|
4627
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartTooltip' {
|
|
4628
|
+
import './Mappedin.SmartTooltip.scss';
|
|
4629
|
+
import { COLLISION_RANKING_TIERS } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.enums';
|
|
4630
|
+
import HTMLCollider, { IHTMLCollider } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.HTMLCollider';
|
|
4631
|
+
import { Vector3 } from 'three';
|
|
4632
|
+
import { TColliderStrategy } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
4633
|
+
/**
|
|
4634
|
+
*
|
|
4635
|
+
* A Tooltip is an html element that attempts to orient itself around an anchor in 3D space. It will always maintain the same size on the screen, but will attempt to change its orientation based on other colliders in the scene.
|
|
4636
|
+
*
|
|
4637
|
+
* Make your own and add it directly to the map with {{#crossLink "MapView/createTooltip:method"}}{{/crossLink}}, or use the constructor and add it when you want.
|
|
4638
|
+
*
|
|
4639
|
+
* You will need to specify at least `options.position` and one of `options.html` and `options.selector` OR `options.contentHtml`.
|
|
4640
|
+
*
|
|
4641
|
+
*
|
|
4642
|
+
* @class Tooltip
|
|
4643
|
+
*
|
|
4644
|
+
* @constructor
|
|
4645
|
+
* @param options {Object} Passes on options (e.g. html, text, position, map, padding, defaultAnchorType, enabledAnchorTypes, collisionRank) to MapView.Tooltip's options argument.
|
|
4646
|
+
* @param [options.html] Pass in custom html for your marker, if using this method you must also pass in a selector for your content.
|
|
4647
|
+
* @param [options.selector] Used in conjuction with the html property to select the div for repositioning
|
|
4648
|
+
* @param [options.contentHtml] Use mappedin's default tooltip styling with custom inner html content
|
|
4649
|
+
* @param [options.text] Instead of passing html pass in plain text to be displayed in the tooltip
|
|
4650
|
+
* @param [options.position] should be something you got from {{#crossLink "MapView/getPositionPolygon:method"}}{{/crossLink}} or {{#crossLink "MapView/getPositionNode:method"}}{{/crossLink}}.
|
|
4651
|
+
* @param [options.map] The map ID where the tooltip should be displayed
|
|
4652
|
+
* @param [options.defaultAnchorType] The default orientation to place the tooltip.
|
|
4653
|
+
* @param [options.padding] The distance in pixel to offset the tooltip from the anchor point.
|
|
4654
|
+
* @param [options.enabledAnchorTypes] An object used to disable certain anchor positions from being used.
|
|
4655
|
+
* @param [options.collisionRank] The rank of the object used when comparing colliders to determine which should be shown.
|
|
4656
|
+
*/
|
|
4038
4657
|
export type TSmartTooltipOptions = {
|
|
4039
|
-
|
|
4040
|
-
|
|
4041
|
-
|
|
4042
|
-
|
|
4043
|
-
|
|
4044
|
-
|
|
4045
|
-
|
|
4046
|
-
|
|
4047
|
-
|
|
4048
|
-
|
|
4049
|
-
|
|
4050
|
-
|
|
4051
|
-
|
|
4658
|
+
html?: string;
|
|
4659
|
+
contentHtml?: string;
|
|
4660
|
+
text?: string;
|
|
4661
|
+
position: Vector3;
|
|
4662
|
+
selector?: string;
|
|
4663
|
+
map: string;
|
|
4664
|
+
padding?: number;
|
|
4665
|
+
alwaysVisible?: boolean;
|
|
4666
|
+
collisionRank?: COLLISION_RANKING_TIERS;
|
|
4667
|
+
defaultAnchorType?: string;
|
|
4668
|
+
enabledAnchorTypes?: {
|
|
4669
|
+
[type: string]: boolean;
|
|
4670
|
+
};
|
|
4052
4671
|
};
|
|
4053
4672
|
type TTooltipStyle = {
|
|
4054
|
-
|
|
4055
|
-
|
|
4673
|
+
top?: string;
|
|
4674
|
+
left?: string;
|
|
4056
4675
|
};
|
|
4057
4676
|
export type TOOLTIP_ANCHOR = {
|
|
4058
|
-
|
|
4059
|
-
|
|
4060
|
-
|
|
4061
|
-
|
|
4062
|
-
|
|
4063
|
-
|
|
4064
|
-
|
|
4065
|
-
|
|
4677
|
+
top?: boolean;
|
|
4678
|
+
left?: boolean;
|
|
4679
|
+
topLeft?: boolean;
|
|
4680
|
+
right?: boolean;
|
|
4681
|
+
topRight?: boolean;
|
|
4682
|
+
bottom?: boolean;
|
|
4683
|
+
bottomLeft?: boolean;
|
|
4684
|
+
bottomRight?: boolean;
|
|
4066
4685
|
};
|
|
4067
4686
|
class SmartTooltip extends HTMLCollider implements IHTMLCollider {
|
|
4068
|
-
|
|
4069
|
-
|
|
4070
|
-
|
|
4071
|
-
|
|
4072
|
-
|
|
4073
|
-
|
|
4074
|
-
|
|
4075
|
-
|
|
4076
|
-
|
|
4077
|
-
|
|
4078
|
-
|
|
4079
|
-
|
|
4687
|
+
#private;
|
|
4688
|
+
className: string;
|
|
4689
|
+
_el: Element | null;
|
|
4690
|
+
style: TTooltipStyle;
|
|
4691
|
+
constructor(options: TSmartTooltipOptions);
|
|
4692
|
+
updateClassName: (className: any) => void;
|
|
4693
|
+
get strategies(): TColliderStrategy[];
|
|
4694
|
+
colliderDidMount(): void;
|
|
4695
|
+
/**
|
|
4696
|
+
* @internal
|
|
4697
|
+
*/
|
|
4698
|
+
updateDimensionsImmediately(): void;
|
|
4699
|
+
setAction(action: any): void;
|
|
4700
|
+
colliderDidNotFindAHome(): void;
|
|
4701
|
+
colliderDidGoOffscreen(): void;
|
|
4702
|
+
colliderDidUpdateVisiblity(): void;
|
|
4080
4703
|
}
|
|
4081
4704
|
export default SmartTooltip;
|
|
4082
4705
|
}
|
|
@@ -4088,6 +4711,9 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/layers/BlueDot
|
|
|
4088
4711
|
import { TEnableBlueDotOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4089
4712
|
import { PubSub } from '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub.typed';
|
|
4090
4713
|
import EventSystemLayer from '@mappedin/react-native-sdk/core/packages/renderer/layers/EventSystem';
|
|
4714
|
+
/**
|
|
4715
|
+
* Blue Dot Layer used for controlling the Blue Dot and listening to Blue Dot state change and position update events. Use the {@link on}-method to set listeners for {@link TBlueDotStateChange} and {@link TBlueDotPositionUpdate} events.
|
|
4716
|
+
*/
|
|
4091
4717
|
class BlueDotLayer extends PubSub<E_BLUEDOT_EVENT_PAYLOAD, E_BLUEDOT_EVENT> {
|
|
4092
4718
|
#private;
|
|
4093
4719
|
/**
|
|
@@ -4099,7 +4725,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/layers/BlueDot
|
|
|
4099
4725
|
*/
|
|
4100
4726
|
enable(options?: TEnableBlueDotOptions): void;
|
|
4101
4727
|
/**
|
|
4102
|
-
*
|
|
4728
|
+
* Disables Blue Dot and stops emitting events.
|
|
4103
4729
|
*/
|
|
4104
4730
|
disable(): void;
|
|
4105
4731
|
}
|
|
@@ -4118,7 +4744,17 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/layers/Journey
|
|
|
4118
4744
|
*/
|
|
4119
4745
|
constructor(mapView: MapView, core: ICore);
|
|
4120
4746
|
/**
|
|
4121
|
-
* Draw a Journey
|
|
4747
|
+
* Draw a Journey based on directions. Example usage:
|
|
4748
|
+
*
|
|
4749
|
+
* ```typescript
|
|
4750
|
+
* const startLocation = venue.locations.find(location => location.name === "Cleo");
|
|
4751
|
+
* const endLocation = venue.locations.find(location => location.name === "American Eagle");
|
|
4752
|
+
*
|
|
4753
|
+
* const directions = startLocation.directionsTo(endLocation);
|
|
4754
|
+
* mapView.Journey.draw(directions);
|
|
4755
|
+
* ```
|
|
4756
|
+
*
|
|
4757
|
+
* Use options to set connection (such as elevators and escalators) HTML tooltip template, departure and destination marker templates, path style and polygon higlight color. If no options are set, sane defaults are used to draw markers, tooltips and polygon highlights.
|
|
4122
4758
|
*/
|
|
4123
4759
|
draw(directions: MappedinDirections | MappedinDirections[], options?: TJourneyOptions): Journey;
|
|
4124
4760
|
/**
|
|
@@ -4151,8 +4787,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4151
4787
|
}
|
|
4152
4788
|
export class FlatLabel {
|
|
4153
4789
|
constructor(options: any, venue: any, mapObject: any, DEFAULT_FONT: any, polygonMeshesById: any, textLabelsByPolygonId: any, mapView: any, scope: any, atlas: any);
|
|
4790
|
+
id: any;
|
|
4154
4791
|
text: any;
|
|
4155
4792
|
stateText: string;
|
|
4793
|
+
fullText: any;
|
|
4156
4794
|
font: any;
|
|
4157
4795
|
atlas: any;
|
|
4158
4796
|
canvasBounds: any;
|
|
@@ -4166,8 +4804,8 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4166
4804
|
polygonMeshesById: any;
|
|
4167
4805
|
polyId: any;
|
|
4168
4806
|
map: any;
|
|
4169
|
-
color:
|
|
4170
|
-
baseColor:
|
|
4807
|
+
color: any;
|
|
4808
|
+
baseColor: any;
|
|
4171
4809
|
hideOnCreate: boolean;
|
|
4172
4810
|
hoverLabelText: any;
|
|
4173
4811
|
fontSize: number;
|
|
@@ -4198,7 +4836,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4198
4836
|
index: any;
|
|
4199
4837
|
layout(map: any, origin: any, size: any, rotation: any, uv: any, color: any): void;
|
|
4200
4838
|
}
|
|
4201
|
-
import { Color } from "three/src/math/Color";
|
|
4202
4839
|
export {};
|
|
4203
4840
|
}
|
|
4204
4841
|
|
|
@@ -4376,23 +5013,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/pub-s
|
|
|
4376
5013
|
}
|
|
4377
5014
|
}
|
|
4378
5015
|
|
|
4379
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.CameraControls' {
|
|
4380
|
-
export default CameraControls;
|
|
4381
|
-
/**
|
|
4382
|
-
* 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.
|
|
4383
|
-
* 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.
|
|
4384
|
-
*
|
|
4385
|
-
* 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.
|
|
4386
|
-
* 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.
|
|
4387
|
-
*
|
|
4388
|
-
* Created for you automatically with a MapView, don't re-create yourself.
|
|
4389
|
-
* @type {any}
|
|
4390
|
-
*
|
|
4391
|
-
* @class CameraControls
|
|
4392
|
-
*/
|
|
4393
|
-
let CameraControls: any;
|
|
4394
|
-
}
|
|
4395
|
-
|
|
4396
5016
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.RenderTasks' {
|
|
4397
5017
|
export default RENDER;
|
|
4398
5018
|
namespace RENDER {
|
|
@@ -4748,9 +5368,9 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/MapView' {
|
|
|
4748
5368
|
|
|
4749
5369
|
declare module '@mappedin/react-native-sdk/core/packages/renderer' {
|
|
4750
5370
|
import Search from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Search';
|
|
4751
|
-
import Analytics from '@mappedin/react-native-sdk/core/packages/
|
|
5371
|
+
import Analytics from '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.Analytics';
|
|
4752
5372
|
import { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
4753
|
-
import { getVenue, getVenueBundle, Mappedin, downloadBundle, getVenueBundleURL, MappedinDestinationSet, MappedinMap, TGetVenueBundleOptions, TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
5373
|
+
import { getVenue, getVenueBundle, Mappedin, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, MappedinDestinationSet, MappedinMap, TGetVenueBundleOptions, TGetVenueOptions } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
4754
5374
|
import { PositionUpdater } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.BlueDot/Mappedin.BlueDot.core';
|
|
4755
5375
|
import type { TMapViewOptions, TJourneyOptions } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
4756
5376
|
import { labelThemes } from '@mappedin/react-native-sdk/core/packages/renderer/MapView.types';
|
|
@@ -4781,9 +5401,9 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer' {
|
|
|
4781
5401
|
*/
|
|
4782
5402
|
function showVenue<T extends Mappedin>(el: HTMLElement, venue: T, options?: TMapViewOptions): Promise<MapView>;
|
|
4783
5403
|
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';
|
|
4784
|
-
export { Search, getVenue, getVenueBundle, showVenue, downloadBundle, getVenueBundleURL, PositionUpdater, Analytics, MappedinDestinationSet, MARKER_ANCHOR, labelThemes };
|
|
5404
|
+
export { Search, getVenue, getVenueBundle, showVenue, downloadBundle, getVenueBundleURL, downloadVenueBundleMVF, PositionUpdater, Analytics, MappedinDestinationSet, MARKER_ANCHOR, labelThemes };
|
|
4785
5405
|
import DefaultAssetManager from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.AssetManager';
|
|
4786
|
-
const setAssetManager: (am:
|
|
5406
|
+
const setAssetManager: <T extends DefaultAssetManager>(am: T) => void;
|
|
4787
5407
|
/**
|
|
4788
5408
|
* @internal
|
|
4789
5409
|
*/
|
|
@@ -4797,8 +5417,234 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer' {
|
|
|
4797
5417
|
export type { MapView } from '@mappedin/react-native-sdk/core/packages/renderer/MapView';
|
|
4798
5418
|
export type { TSafeAreaInsets, TFocusOnTargets, TFocusOnCameraOptions, TAnimatePositionOptions, TCameraAnimationOptions, TFocusOnOptions, default as Camera } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
4799
5419
|
export { SAFE_AREA_INSET_TYPE, ANIMATION_TWEENS, CAMERA_EASING_MODE } from '@mappedin/react-native-sdk/core/packages/renderer/Camera';
|
|
4800
|
-
export type { TGetVenueOptions,
|
|
4801
|
-
export { Mappedin, MappedinDirections } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
5420
|
+
export type { TGetVenueOptions, TShowVenueOptions, TMappedinOfflineSearchOptions, TMappedinOfflineSearchResult, TMappedinOfflineSearchSuggestions, TMappedinOfflineAllSearchMatch } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
5421
|
+
export { Mappedin, MappedinDirections, MappedinLocation, MappedinPolygon, MappedinNode, MappedinCategory, MappedinMap, MappedinEvent, MappedinMapGroup, MappedinVenue, MappedinVortex, MappedinNavigatable, MappedinCoordinate, OfflineSearch, MAP_RENDER_MODE } from '@mappedin/react-native-sdk/core/packages/get-venue';
|
|
5422
|
+
export { BundleAssetManager } from '@mappedin/react-native-sdk/core/packages/renderer/bundle-asset-manager';
|
|
5423
|
+
}
|
|
5424
|
+
|
|
5425
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.MVF.types' {
|
|
5426
|
+
import { FeatureCollection, Polygon, Point, MultiPolygon, Position } from 'geojson';
|
|
5427
|
+
type ManifestFile = {
|
|
5428
|
+
type: 'file';
|
|
5429
|
+
name: string;
|
|
5430
|
+
};
|
|
5431
|
+
type ManifestFolder = {
|
|
5432
|
+
type: 'folder';
|
|
5433
|
+
name: string;
|
|
5434
|
+
children: ManifestFile[];
|
|
5435
|
+
};
|
|
5436
|
+
type OpeningHours = {
|
|
5437
|
+
opens: string;
|
|
5438
|
+
closes: string;
|
|
5439
|
+
dayOfWeek: string;
|
|
5440
|
+
validFrom?: string;
|
|
5441
|
+
validThrough?: string;
|
|
5442
|
+
};
|
|
5443
|
+
type Image = {
|
|
5444
|
+
original?: string;
|
|
5445
|
+
xlarge?: string;
|
|
5446
|
+
xxlarge?: string;
|
|
5447
|
+
medium?: string;
|
|
5448
|
+
'140x140'?: string;
|
|
5449
|
+
xsmall?: string;
|
|
5450
|
+
xxsmall?: string;
|
|
5451
|
+
'66x66'?: string;
|
|
5452
|
+
small?: string;
|
|
5453
|
+
large?: string;
|
|
5454
|
+
};
|
|
5455
|
+
type PolygonImage = string;
|
|
5456
|
+
type Phone = {
|
|
5457
|
+
number: string;
|
|
5458
|
+
extension?: string;
|
|
5459
|
+
};
|
|
5460
|
+
type Link = {
|
|
5461
|
+
label: string;
|
|
5462
|
+
url: string;
|
|
5463
|
+
};
|
|
5464
|
+
type Social = {
|
|
5465
|
+
facebook?: string;
|
|
5466
|
+
twitter?: string;
|
|
5467
|
+
instagram?: string;
|
|
5468
|
+
website?: string;
|
|
5469
|
+
};
|
|
5470
|
+
type LocationState = {
|
|
5471
|
+
type: string;
|
|
5472
|
+
start?: string;
|
|
5473
|
+
end?: string;
|
|
5474
|
+
};
|
|
5475
|
+
type SiblingGroup = {
|
|
5476
|
+
label: string;
|
|
5477
|
+
siblings: string[];
|
|
5478
|
+
};
|
|
5479
|
+
export type MILocationProperties = {
|
|
5480
|
+
id: string;
|
|
5481
|
+
address?: string | null;
|
|
5482
|
+
categories: string[];
|
|
5483
|
+
description?: string | null;
|
|
5484
|
+
email?: string | null;
|
|
5485
|
+
externalId?: string | null;
|
|
5486
|
+
hours?: OpeningHours[] | null;
|
|
5487
|
+
links?: Link[] | null;
|
|
5488
|
+
logo?: Image | null;
|
|
5489
|
+
name: string;
|
|
5490
|
+
phone?: Phone | null;
|
|
5491
|
+
picture?: Image | null;
|
|
5492
|
+
services?: string | null;
|
|
5493
|
+
siblingGroups?: SiblingGroup[] | null;
|
|
5494
|
+
social?: Social | null;
|
|
5495
|
+
spaces?: TLocationSpaceReference[] | null;
|
|
5496
|
+
states?: LocationState[] | null;
|
|
5497
|
+
type: string;
|
|
5498
|
+
};
|
|
5499
|
+
export type MICategoryProperties = {
|
|
5500
|
+
id: string;
|
|
5501
|
+
name: string;
|
|
5502
|
+
picture?: Image;
|
|
5503
|
+
};
|
|
5504
|
+
export type MIBuildingProperties = {
|
|
5505
|
+
id: string;
|
|
5506
|
+
name: string;
|
|
5507
|
+
venue: string;
|
|
5508
|
+
};
|
|
5509
|
+
export type MILevelProperties = {
|
|
5510
|
+
id: string;
|
|
5511
|
+
abbreviation?: string;
|
|
5512
|
+
building?: string;
|
|
5513
|
+
elevation?: number;
|
|
5514
|
+
name: string;
|
|
5515
|
+
};
|
|
5516
|
+
export type MIPolygonlikeProperties = {
|
|
5517
|
+
id: string;
|
|
5518
|
+
altitude?: string;
|
|
5519
|
+
color?: string;
|
|
5520
|
+
externalId?: string | null;
|
|
5521
|
+
height?: string;
|
|
5522
|
+
layer?: string;
|
|
5523
|
+
level: string;
|
|
5524
|
+
parent?: string | null;
|
|
5525
|
+
};
|
|
5526
|
+
type TPseudoNodeSpaceReference = {
|
|
5527
|
+
node: string;
|
|
5528
|
+
map: string;
|
|
5529
|
+
};
|
|
5530
|
+
export type TRealSpaceReference = {
|
|
5531
|
+
id: string;
|
|
5532
|
+
map: string;
|
|
5533
|
+
};
|
|
5534
|
+
type TLocationSpaceReference = TPseudoNodeSpaceReference | TRealSpaceReference;
|
|
5535
|
+
export type TEntrances = {
|
|
5536
|
+
id: string;
|
|
5537
|
+
level: string;
|
|
5538
|
+
};
|
|
5539
|
+
export type MISpaceProperties = MIPolygonlikeProperties & {
|
|
5540
|
+
entrances: TEntrances[];
|
|
5541
|
+
};
|
|
5542
|
+
export type MIObstructionProperties = MIPolygonlikeProperties;
|
|
5543
|
+
export type MIConnectionProperties = {
|
|
5544
|
+
id: string;
|
|
5545
|
+
accessible: boolean;
|
|
5546
|
+
destinations: string[];
|
|
5547
|
+
level: string;
|
|
5548
|
+
multiplier: number;
|
|
5549
|
+
name: string;
|
|
5550
|
+
type: string;
|
|
5551
|
+
weight: number;
|
|
5552
|
+
};
|
|
5553
|
+
export type MINodeProperties = {
|
|
5554
|
+
id: string;
|
|
5555
|
+
accessible: boolean;
|
|
5556
|
+
externalId: string | null;
|
|
5557
|
+
level: string;
|
|
5558
|
+
multiplier: number;
|
|
5559
|
+
neighbors: string[];
|
|
5560
|
+
weight: number;
|
|
5561
|
+
};
|
|
5562
|
+
export type MIManifestProperties = {
|
|
5563
|
+
name: string;
|
|
5564
|
+
folder_struct: (ManifestFolder | ManifestFile)[];
|
|
5565
|
+
version: string;
|
|
5566
|
+
time: string;
|
|
5567
|
+
};
|
|
5568
|
+
export type MIStyle = {
|
|
5569
|
+
id: string;
|
|
5570
|
+
/** The altitude of the bottom of the geometry, in metres. */
|
|
5571
|
+
altitude: number;
|
|
5572
|
+
color: string;
|
|
5573
|
+
height: number;
|
|
5574
|
+
image?: PolygonImage;
|
|
5575
|
+
opacity: number;
|
|
5576
|
+
};
|
|
5577
|
+
export type MIImageInstance = {
|
|
5578
|
+
/** The local path or URL of the image. */
|
|
5579
|
+
path: string;
|
|
5580
|
+
/** The position of the centre of the image, in [long, lat] form. */
|
|
5581
|
+
position: Position;
|
|
5582
|
+
/** The altitude of the image, in metres. */
|
|
5583
|
+
altitude: number;
|
|
5584
|
+
/** Euler angles representing the rotation of the image, in degrees. Angles are in XYZ order. */
|
|
5585
|
+
rotation: {
|
|
5586
|
+
x: number;
|
|
5587
|
+
y: number;
|
|
5588
|
+
z: number;
|
|
5589
|
+
};
|
|
5590
|
+
/** The size of the image, in metres. */
|
|
5591
|
+
size: {
|
|
5592
|
+
x: number;
|
|
5593
|
+
y: number;
|
|
5594
|
+
};
|
|
5595
|
+
/** The portion of the image to display. */
|
|
5596
|
+
viewBox: {
|
|
5597
|
+
top: number;
|
|
5598
|
+
left: number;
|
|
5599
|
+
width: number;
|
|
5600
|
+
height: number;
|
|
5601
|
+
};
|
|
5602
|
+
/**
|
|
5603
|
+
* A space or obstruction to associate this image with. If provided,
|
|
5604
|
+
* changes to the polygon's visibility will affect this image.
|
|
5605
|
+
* */
|
|
5606
|
+
polygonId?: string;
|
|
5607
|
+
};
|
|
5608
|
+
export type MIGeoJSONManifestCollection = FeatureCollection<Point, MIManifestProperties>;
|
|
5609
|
+
export type MIGeoJSONBuildingCollection = FeatureCollection<Polygon, MIBuildingProperties>;
|
|
5610
|
+
export type MIGeoJSONConnectionCollection = FeatureCollection<Point, MIConnectionProperties>;
|
|
5611
|
+
export type MIGeoJSONLevelCollection = FeatureCollection<Polygon | MultiPolygon, MILevelProperties>;
|
|
5612
|
+
export type MIGeoJSONSpaceCollection = FeatureCollection<Polygon, MISpaceProperties>;
|
|
5613
|
+
export type MIGeoJSONObstructionCollection = FeatureCollection<Polygon, MIObstructionProperties>;
|
|
5614
|
+
export type MIGeoJSONNodeCollection = FeatureCollection<Point, MINodeProperties>;
|
|
5615
|
+
export type MIGeoJSONLocationCollection = FeatureCollection<null, MILocationProperties>;
|
|
5616
|
+
export type MIGeoJSONCategoryCollection = FeatureCollection<null, MICategoryProperties>;
|
|
5617
|
+
export type WithIDs<T> = Map<string, T>;
|
|
5618
|
+
export type MIStyleCollection = MIStyle[];
|
|
5619
|
+
/**
|
|
5620
|
+
* A mapping of polygon IDs to style IDs;
|
|
5621
|
+
*/
|
|
5622
|
+
export type MIPolygonStyle = {
|
|
5623
|
+
[key in string]: string;
|
|
5624
|
+
};
|
|
5625
|
+
export type MIImageInstanceCollection = MIImageInstance[];
|
|
5626
|
+
/**
|
|
5627
|
+
* The entire data collection for an MVF, in a single JSON collection.
|
|
5628
|
+
*
|
|
5629
|
+
*/
|
|
5630
|
+
export type MVFDataJSON = {
|
|
5631
|
+
connection: WithIDs<MIGeoJSONConnectionCollection>;
|
|
5632
|
+
level: WithIDs<MIGeoJSONLevelCollection>;
|
|
5633
|
+
node: WithIDs<MIGeoJSONNodeCollection>;
|
|
5634
|
+
obstruction: WithIDs<MIGeoJSONObstructionCollection>;
|
|
5635
|
+
space: WithIDs<MIGeoJSONSpaceCollection>;
|
|
5636
|
+
building: MIGeoJSONBuildingCollection;
|
|
5637
|
+
category: MIGeoJSONCategoryCollection;
|
|
5638
|
+
style: MIStyleCollection;
|
|
5639
|
+
polygonStyle: WithIDs<MIPolygonStyle>;
|
|
5640
|
+
imageInstance: WithIDs<MIImageInstanceCollection>;
|
|
5641
|
+
location: MIGeoJSONLocationCollection;
|
|
5642
|
+
manifest: MIGeoJSONManifestCollection;
|
|
5643
|
+
};
|
|
5644
|
+
export type MVFData = MVFDataJSON & {
|
|
5645
|
+
imageBinaries: WithIDs<Uint8Array>;
|
|
5646
|
+
};
|
|
5647
|
+
export {};
|
|
4802
5648
|
}
|
|
4803
5649
|
|
|
4804
5650
|
declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinLocationRankings' {
|
|
@@ -4850,9 +5696,95 @@ declare module '@mappedin/react-native-sdk/core/packages/get-venue/MappedinTheme
|
|
|
4850
5696
|
}
|
|
4851
5697
|
}
|
|
4852
5698
|
|
|
5699
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.Analytics' {
|
|
5700
|
+
type AnalyticsOptions = {
|
|
5701
|
+
clientId?: string;
|
|
5702
|
+
clientSecret?: string;
|
|
5703
|
+
accessToken?: string;
|
|
5704
|
+
noAuth?: boolean;
|
|
5705
|
+
venue: string;
|
|
5706
|
+
testMode?: boolean | string;
|
|
5707
|
+
context?: string;
|
|
5708
|
+
platformString?: string;
|
|
5709
|
+
};
|
|
5710
|
+
/**
|
|
5711
|
+
* A class to access the Mappedin Analytics platform. Correct usage will improve Smart Search results, and lead to more accurate insights.
|
|
5712
|
+
* 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`.
|
|
5713
|
+
*
|
|
5714
|
+
* @type {any}
|
|
5715
|
+
*
|
|
5716
|
+
* @class Analytics
|
|
5717
|
+
* @param options {Object} A list of configuration options for the Analytics API.
|
|
5718
|
+
* @param [options.clientId] {String} The same key you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
5719
|
+
* @param [options.clientSecret] {String} The same secret you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
5720
|
+
* @param [options.venue] {String} The same venue slug you are using for getVenue. Handled automatically in MapView.initialize()
|
|
5721
|
+
* @param [options.context] {String} The context to pass with the analytics request. Defaults to "websdk".
|
|
5722
|
+
* @param [options.noAuth] {Boolean} Whether authentication should not be sent with analytics requests.
|
|
5723
|
+
* @param [options.testMode] {Boolean} Whether analytics events should be dropped because this is running in a test environment.
|
|
5724
|
+
*/
|
|
5725
|
+
class Analytics {
|
|
5726
|
+
#private;
|
|
5727
|
+
constructor(options: AnalyticsOptions);
|
|
5728
|
+
track(target: any, query: any): void;
|
|
5729
|
+
/**
|
|
5730
|
+
* Whenever a location is selected, you should fire this event. What "selected" means can vary by venue,
|
|
5731
|
+
* but a good rule of thumb is that you fire the event whenever you would show the location's details.
|
|
5732
|
+
* Typically this is when the user taps it's polygon on the map, picks it from search results or a category list.
|
|
5733
|
+
* or deep links directly into the map.
|
|
5734
|
+
* @method locationSelected
|
|
5735
|
+
* @param location {MappedinLocation} The location the user selected.
|
|
5736
|
+
*/
|
|
5737
|
+
locationSelected(location: any): void;
|
|
5738
|
+
/**
|
|
5739
|
+
* Whenever a category is selected, you should fire this event.
|
|
5740
|
+
* @method categorySelected
|
|
5741
|
+
* @param category {MappedinCategory} The category the user selected.
|
|
5742
|
+
*/
|
|
5743
|
+
categorySelected(category: any): void;
|
|
5744
|
+
mapViewLoaded(type: any, forced: any, benchmark: any, reason: any): void;
|
|
5745
|
+
/**
|
|
5746
|
+
* Whenever a user requests directions, you should fire this event.
|
|
5747
|
+
* @method getDirections
|
|
5748
|
+
* @param start {MappedinLocation} The start location for wayfinding.
|
|
5749
|
+
* @param end {MappedinLocation} The end location for wayfinding.
|
|
5750
|
+
*/
|
|
5751
|
+
getDirections(start: any, end: any): void;
|
|
5752
|
+
getSessionID(): string;
|
|
5753
|
+
getDeviceID(): string;
|
|
5754
|
+
/**
|
|
5755
|
+
* @param mode {Boolean} Indicates whether the user's geolocation is enabled.
|
|
5756
|
+
*/
|
|
5757
|
+
setGeolocationMode(mode: any): void;
|
|
5758
|
+
/**
|
|
5759
|
+
* Track an event.
|
|
5760
|
+
* @method trackBlueDotEvent
|
|
5761
|
+
* @param event {String}
|
|
5762
|
+
* event param should be a property of the {{#crossLink "Analytics/BLUEDOT_EVENT:property"}}{{/crossLink}} property.
|
|
5763
|
+
*/
|
|
5764
|
+
trackBlueDotEvent(blueDotEvent: any): void;
|
|
5765
|
+
trackSearch(searchAnalyticsObject: any): void;
|
|
5766
|
+
trackSearchSuggest(searchAnalyticsObject: any): void;
|
|
5767
|
+
/**
|
|
5768
|
+
* Enum of valid bluedot events.
|
|
5769
|
+
* Pass a property of this into the {{#crossLink "Analytics/trackBlueDotEvent:method"}}{{/crossLink}} method.
|
|
5770
|
+
* Valid properties are: ATTEMPT_BLUEDOT, FOUND_POSITION, FOUND_FLOOR.
|
|
5771
|
+
* @property BLUEDOT_EVENT {Object}
|
|
5772
|
+
* @example
|
|
5773
|
+
* Analytics.trackBlueDotEvent(Analytics.BLUEDOT_EVENT.ATTEMPT_BLUEDOT)
|
|
5774
|
+
*/
|
|
5775
|
+
static BLUEDOT_EVENT: {
|
|
5776
|
+
ATTEMPT_BLUEDOT: string;
|
|
5777
|
+
FOUND_POSITION: string;
|
|
5778
|
+
FOUND_FLOOR: string;
|
|
5779
|
+
};
|
|
5780
|
+
}
|
|
5781
|
+
export default Analytics;
|
|
5782
|
+
}
|
|
5783
|
+
|
|
4853
5784
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider' {
|
|
4854
5785
|
import SmartCollisionEngine from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollisionEngine';
|
|
4855
5786
|
import { Vector3 } from 'three';
|
|
5787
|
+
import { Rectangle } from '@mappedin/react-native-sdk/core/packages/renderer/internal/quad-tree';
|
|
4856
5788
|
export type TRange = [number, number, number, number];
|
|
4857
5789
|
type TCustomCollider<T> = ICollider & T;
|
|
4858
5790
|
export type TColliderStrategyProps = {
|
|
@@ -4866,6 +5798,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4866
5798
|
getBoundingBox: (TColliderStrategyProps: any) => TRange;
|
|
4867
5799
|
onStrategySelected: (collider: TCustomCollider<any>) => void;
|
|
4868
5800
|
};
|
|
5801
|
+
export type TGetBoundingBox = ({ x, y }: {
|
|
5802
|
+
x: any;
|
|
5803
|
+
y: any;
|
|
5804
|
+
}) => [number, number, number, number];
|
|
4869
5805
|
export type TDimensions = {
|
|
4870
5806
|
width: number;
|
|
4871
5807
|
height: number;
|
|
@@ -4878,13 +5814,19 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4878
5814
|
export interface ICollider {
|
|
4879
5815
|
dimensions: TDimensions;
|
|
4880
5816
|
screenPosition: [number, number];
|
|
4881
|
-
|
|
5817
|
+
getBoundingBoxForCurrentStrategy?: TGetBoundingBox;
|
|
4882
5818
|
options?: Record<string, unknown>;
|
|
4883
5819
|
mapId: string;
|
|
4884
5820
|
visible: boolean;
|
|
4885
5821
|
rank: number;
|
|
4886
|
-
_dirty?: boolean;
|
|
4887
5822
|
id: string;
|
|
5823
|
+
_bboxes?: [
|
|
5824
|
+
string,
|
|
5825
|
+
Rectangle,
|
|
5826
|
+
(collider: TCustomCollider<any>) => void,
|
|
5827
|
+
TGetBoundingBox
|
|
5828
|
+
][];
|
|
5829
|
+
offscreen?: boolean;
|
|
4888
5830
|
setAction: (action: EColliderAction) => void;
|
|
4889
5831
|
action?: EColliderAction;
|
|
4890
5832
|
position: Vector3;
|
|
@@ -4908,15 +5850,16 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
4908
5850
|
__engine: any;
|
|
4909
5851
|
_initialRank: number;
|
|
4910
5852
|
screenPosition: [number, number];
|
|
4911
|
-
currentStrategyName: null;
|
|
4912
5853
|
enabled: boolean;
|
|
4913
5854
|
options: any;
|
|
4914
5855
|
mapId: string;
|
|
4915
5856
|
id: string;
|
|
4916
5857
|
action: EColliderAction;
|
|
5858
|
+
getBoundingBoxForCurrentStrategy: undefined;
|
|
4917
5859
|
rank: number;
|
|
4918
5860
|
visible: boolean;
|
|
4919
|
-
|
|
5861
|
+
offscreen: boolean;
|
|
5862
|
+
position: any;
|
|
4920
5863
|
dimensions: {
|
|
4921
5864
|
width: number;
|
|
4922
5865
|
height: number;
|
|
@@ -5176,11 +6119,11 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5176
6119
|
}
|
|
5177
6120
|
|
|
5178
6121
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/layers/EventSystem' {
|
|
5179
|
-
import { Object3D
|
|
6122
|
+
import { Object3D } from 'three';
|
|
5180
6123
|
import { MapView } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
5181
6124
|
import { ICore } from '@mappedin/react-native-sdk/core/packages/renderer/Core.interface';
|
|
5182
6125
|
import BlueDotManager from '@mappedin/react-native-sdk/core/packages/renderer/internal/blue-dot-manager';
|
|
5183
|
-
export const raycaster:
|
|
6126
|
+
export const raycaster: any;
|
|
5184
6127
|
class EventSystemLayer {
|
|
5185
6128
|
mapView: MapView;
|
|
5186
6129
|
core: ICore;
|
|
@@ -5223,7 +6166,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/layers/EventSy
|
|
|
5223
6166
|
};
|
|
5224
6167
|
hasTouched: boolean;
|
|
5225
6168
|
calculateMouseCoordinates: (event: any) => void;
|
|
5226
|
-
getMouseRayIntersects: (objects: Object3D | Object3D[]) =>
|
|
6169
|
+
getMouseRayIntersects: (objects: Object3D | Object3D[]) => any;
|
|
5227
6170
|
detectPolygonsUnderMouse: () => any[];
|
|
5228
6171
|
getMouseMapPosition: () => {
|
|
5229
6172
|
x: number;
|
|
@@ -5403,6 +6346,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5403
6346
|
get strategies(): TColliderStrategy[];
|
|
5404
6347
|
colliderDidMount(): void;
|
|
5405
6348
|
setAction(action: any): void;
|
|
6349
|
+
colliderDidNotFindAHome(): void;
|
|
5406
6350
|
colliderDidGoOffscreen(): void;
|
|
5407
6351
|
colliderDidUpdateVisiblity(): void;
|
|
5408
6352
|
}
|
|
@@ -5410,6 +6354,15 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5410
6354
|
}
|
|
5411
6355
|
|
|
5412
6356
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.MapObject' {
|
|
6357
|
+
export namespace TASK_PRIORITY {
|
|
6358
|
+
const VISIBLE_MAP_HIGH: number;
|
|
6359
|
+
const VISIBLE_MAP_LOW: number;
|
|
6360
|
+
const VISIBLE_MAP_MARKER: number;
|
|
6361
|
+
const ASYNC_MAP_HIGH: number;
|
|
6362
|
+
const ASYNC_MAP_LOW: number;
|
|
6363
|
+
const ASYNC_MAP_MARKER: number;
|
|
6364
|
+
const MAP_LOADED: number;
|
|
6365
|
+
}
|
|
5413
6366
|
export const SCENE_FROM_LIVE_JSON: false;
|
|
5414
6367
|
/**
|
|
5415
6368
|
* A handle to a 3D marker added to a map.
|
|
@@ -5439,10 +6392,11 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5439
6392
|
_started: boolean;
|
|
5440
6393
|
_loaderPromise: null;
|
|
5441
6394
|
_promiseResolve: null;
|
|
6395
|
+
hoverableMeshChildren: any[];
|
|
5442
6396
|
objectsDictionary: {};
|
|
5443
6397
|
north: null;
|
|
5444
6398
|
mapScale: null;
|
|
5445
|
-
object:
|
|
6399
|
+
object: any;
|
|
5446
6400
|
labels: Set<any>;
|
|
5447
6401
|
tooltips: Set<any>;
|
|
5448
6402
|
markers: Set<any>;
|
|
@@ -5459,6 +6413,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5459
6413
|
loadAsync: any;
|
|
5460
6414
|
_taskScheduler: any;
|
|
5461
6415
|
id: any;
|
|
6416
|
+
mapRenderingStrategy: any;
|
|
5462
6417
|
_highPriorityTasks: FrameTaskGroup;
|
|
5463
6418
|
_lowPriorityTasks: FrameTaskGroup;
|
|
5464
6419
|
_markerTasks: FrameTaskGroup;
|
|
@@ -5466,11 +6421,12 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5466
6421
|
_visibilityLatch: boolean | null;
|
|
5467
6422
|
_objLoadedComplete: boolean;
|
|
5468
6423
|
_objLoaded(object: any): any;
|
|
6424
|
+
_objLoadedMerged(object: any): void;
|
|
5469
6425
|
enableImageFlipping(polygonId: any, rotation: any): void;
|
|
5470
6426
|
elements: any;
|
|
5471
6427
|
boundingBox: {
|
|
5472
|
-
min:
|
|
5473
|
-
max:
|
|
6428
|
+
min: any;
|
|
6429
|
+
max: any;
|
|
5474
6430
|
} | undefined;
|
|
5475
6431
|
loadPolygonNow(polygonId: any): void;
|
|
5476
6432
|
_addElementToScene(element: any): void;
|
|
@@ -5547,10 +6503,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5547
6503
|
* @return {ThreeJSMarkerHandle} a unique identifier for the marker
|
|
5548
6504
|
*/
|
|
5549
6505
|
addThreeJSMarker(options: {
|
|
5550
|
-
object?:
|
|
5551
|
-
position?:
|
|
6506
|
+
object?: any;
|
|
6507
|
+
position?: any;
|
|
5552
6508
|
rotation?: any;
|
|
5553
|
-
scale?:
|
|
6509
|
+
scale?: any;
|
|
5554
6510
|
}): ThreeJSMarkerHandle;
|
|
5555
6511
|
/**
|
|
5556
6512
|
* Remove the given `ThreeJSMarker` from this map.
|
|
@@ -5582,9 +6538,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5582
6538
|
_popinChildObjects(): void;
|
|
5583
6539
|
}
|
|
5584
6540
|
import { PubSub } from "@mappedin/react-native-sdk/core/packages/renderer/internal/pub-sub";
|
|
5585
|
-
import {
|
|
5586
|
-
import { FrameTaskGroup } from "@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.TaskScheduler";
|
|
5587
|
-
import { Vector3 } from "three/src/math/Vector3";
|
|
6541
|
+
import { FrameTaskGroup } from "@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.TaskScheduler";
|
|
5588
6542
|
}
|
|
5589
6543
|
|
|
5590
6544
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Search' {
|
|
@@ -5606,30 +6560,25 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5606
6560
|
let Search: any;
|
|
5607
6561
|
}
|
|
5608
6562
|
|
|
5609
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.Analytics' {
|
|
5610
|
-
export default Analytics;
|
|
5611
|
-
/**
|
|
5612
|
-
* A class to access the Mappedin Analytics platform. Correct usage will improve Smart Search results, and lead to more accurate insights.
|
|
5613
|
-
* 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`.
|
|
5614
|
-
*
|
|
5615
|
-
* @type {any}
|
|
5616
|
-
*
|
|
5617
|
-
* @class Analytics
|
|
5618
|
-
* @param options {Object} A list of configuration options for the Analytics API.
|
|
5619
|
-
* @param [options.key] {String} The same key you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
5620
|
-
* @param [options.secret] {String} The same secret you are using for getVenue. Handled automatically in Mapview.initialize()
|
|
5621
|
-
* @param [options.venue] {String} The same venue slug you are using for getVenue. Handled automatically in MapView.initialize()
|
|
5622
|
-
*/
|
|
5623
|
-
var Analytics: any;
|
|
5624
|
-
}
|
|
5625
|
-
|
|
5626
6563
|
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.AssetManager' {
|
|
5627
|
-
import {
|
|
6564
|
+
import { Texture } from 'three';
|
|
5628
6565
|
import type { MappedinMap } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
5629
6566
|
export default class DefaultAssetManager {
|
|
5630
|
-
textureLoader:
|
|
6567
|
+
textureLoader: any;
|
|
5631
6568
|
loadMapPolygons(map: MappedinMap): Promise<any>;
|
|
5632
|
-
loadImage(url: string): Promise<
|
|
6569
|
+
loadImage(url: string): Promise<Texture>;
|
|
6570
|
+
}
|
|
6571
|
+
}
|
|
6572
|
+
|
|
6573
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/bundle-asset-manager' {
|
|
6574
|
+
import type { Texture } from 'three';
|
|
6575
|
+
import { Mappedin, MappedinMap } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
6576
|
+
import AssetManager from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.AssetManager';
|
|
6577
|
+
export class BundleAssetManager extends AssetManager {
|
|
6578
|
+
venueData: Mappedin;
|
|
6579
|
+
constructor(venueData: Mappedin);
|
|
6580
|
+
loadMapPolygons(map: MappedinMap): Promise<Record<string, any>>;
|
|
6581
|
+
loadImage(url: string): Promise<Texture>;
|
|
5633
6582
|
}
|
|
5634
6583
|
}
|
|
5635
6584
|
|
|
@@ -5638,74 +6587,86 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5638
6587
|
import './Mappedin.SmartCollisionEngine.scss';
|
|
5639
6588
|
import { ICollider, TRange } from '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappedin.SmartCollider';
|
|
5640
6589
|
import { MappedinMap, MapView } from '@mappedin/react-native-sdk/core/packages/renderer';
|
|
6590
|
+
import { ICore } from '@mappedin/react-native-sdk/core/packages/renderer/Core.interface';
|
|
6591
|
+
import { Rectangle, QuadTree } from '@mappedin/react-native-sdk/core/packages/renderer/internal/quad-tree';
|
|
5641
6592
|
export const COLLIDER_STRATEGY_LOW_PRIORITY = "LOW_PRIORITY";
|
|
5642
6593
|
class SmartCollisionEngine {
|
|
5643
|
-
|
|
5644
|
-
|
|
5645
|
-
|
|
5646
|
-
|
|
5647
|
-
|
|
5648
|
-
|
|
5649
|
-
|
|
5650
|
-
|
|
5651
|
-
|
|
5652
|
-
|
|
5653
|
-
|
|
5654
|
-
|
|
5655
|
-
|
|
5656
|
-
|
|
5657
|
-
|
|
5658
|
-
|
|
5659
|
-
|
|
5660
|
-
|
|
5661
|
-
|
|
5662
|
-
|
|
5663
|
-
|
|
5664
|
-
|
|
5665
|
-
|
|
5666
|
-
|
|
5667
|
-
|
|
5668
|
-
|
|
5669
|
-
|
|
5670
|
-
|
|
5671
|
-
|
|
5672
|
-
|
|
5673
|
-
|
|
5674
|
-
|
|
5675
|
-
|
|
5676
|
-
|
|
5677
|
-
|
|
5678
|
-
/**
|
|
5679
|
-
* Allow to throttle making collders dirty. This is useful for things like BlueDot follow mode,
|
|
5680
|
-
* As we follow the BlueDot, colliders will overlap, but constantly updating their visiblity makes
|
|
5681
|
-
* for a bad experience
|
|
5682
|
-
*/
|
|
5683
|
-
makeCollidersDirtyThrottled: (time: any) => void;
|
|
5684
|
-
resize: (container: any) => void;
|
|
5685
|
-
update: () => void;
|
|
5686
|
-
destroy: () => void;
|
|
6594
|
+
#private;
|
|
6595
|
+
colliderCanvas: HTMLCanvasElement;
|
|
6596
|
+
debugCanvas: HTMLCanvasElement;
|
|
6597
|
+
colliderCanvasContext: CanvasRenderingContext2D;
|
|
6598
|
+
debugCanvasContext: CanvasRenderingContext2D;
|
|
6599
|
+
collisionEngineContainerEl: HTMLDivElement;
|
|
6600
|
+
stepsX: any;
|
|
6601
|
+
stepsY: any;
|
|
6602
|
+
totalWidth: any;
|
|
6603
|
+
totalHeight: any;
|
|
6604
|
+
project: any;
|
|
6605
|
+
colliders: Map<string, ICollider>;
|
|
6606
|
+
offscreenRanges: TRange[];
|
|
6607
|
+
get sortedColliders(): ICollider[];
|
|
6608
|
+
initialized: boolean;
|
|
6609
|
+
mapView: MapView;
|
|
6610
|
+
core: ICore;
|
|
6611
|
+
screen: Rectangle;
|
|
6612
|
+
constructor(mapView: any, core: ICore);
|
|
6613
|
+
init: (container: HTMLDivElement, projectFn: ({ position, mapId }: {
|
|
6614
|
+
position: any;
|
|
6615
|
+
mapId: MappedinMap['id'];
|
|
6616
|
+
}) => {
|
|
6617
|
+
x: number;
|
|
6618
|
+
y: number;
|
|
6619
|
+
}) => void;
|
|
6620
|
+
qtree: QuadTree;
|
|
6621
|
+
recompute: () => void;
|
|
6622
|
+
draw: () => void;
|
|
6623
|
+
reposition: () => void;
|
|
6624
|
+
add: (colliderId: string, collider: ICollider) => void;
|
|
6625
|
+
remove: (colliderId: string) => void;
|
|
6626
|
+
update: () => void;
|
|
6627
|
+
resize: (container: any) => void;
|
|
6628
|
+
destroy: () => void;
|
|
5687
6629
|
}
|
|
5688
6630
|
export default SmartCollisionEngine;
|
|
5689
6631
|
}
|
|
5690
6632
|
|
|
5691
|
-
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/
|
|
5692
|
-
export
|
|
5693
|
-
|
|
5694
|
-
|
|
5695
|
-
|
|
5696
|
-
|
|
5697
|
-
|
|
5698
|
-
|
|
6633
|
+
declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/quad-tree' {
|
|
6634
|
+
export function contains(rect1: Rectangle, rect2: Rectangle): boolean;
|
|
6635
|
+
export function intersects(rect1: Rectangle, rect2: Rectangle): boolean;
|
|
6636
|
+
class Rectangle {
|
|
6637
|
+
x: number;
|
|
6638
|
+
y: number;
|
|
6639
|
+
w: number;
|
|
6640
|
+
h: number;
|
|
6641
|
+
userData?: any;
|
|
6642
|
+
constructor(x: number, y: number, w: number, h: number, userData?: any);
|
|
6643
|
+
contains(rectangle: Rectangle): boolean;
|
|
6644
|
+
intersects(rectangle: Rectangle): boolean;
|
|
6645
|
+
draw(context: CanvasRenderingContext2D): void;
|
|
5699
6646
|
}
|
|
5700
|
-
|
|
5701
|
-
|
|
5702
|
-
|
|
5703
|
-
|
|
5704
|
-
|
|
5705
|
-
|
|
5706
|
-
|
|
5707
|
-
|
|
6647
|
+
class QuadTree {
|
|
6648
|
+
#private;
|
|
6649
|
+
boundary: Rectangle;
|
|
6650
|
+
capacity: number;
|
|
6651
|
+
objects: Rectangle[];
|
|
6652
|
+
topLeft: QuadTree;
|
|
6653
|
+
topRight: QuadTree;
|
|
6654
|
+
bottomLeft: QuadTree;
|
|
6655
|
+
bottomRight: QuadTree;
|
|
6656
|
+
divided: boolean;
|
|
6657
|
+
parent?: QuadTree;
|
|
6658
|
+
getSize(): any;
|
|
6659
|
+
constructor(boundary: Rectangle, parent?: QuadTree);
|
|
6660
|
+
subdivide(): void;
|
|
6661
|
+
query(rectangle: Rectangle): Rectangle[];
|
|
6662
|
+
insert(rectangle: Rectangle): boolean;
|
|
6663
|
+
drawObjects(context: CanvasRenderingContext2D): void;
|
|
6664
|
+
draw(context: CanvasRenderingContext2D): void;
|
|
5708
6665
|
}
|
|
6666
|
+
export { QuadTree, Rectangle };
|
|
6667
|
+
}
|
|
6668
|
+
|
|
6669
|
+
declare module '@mappedin/react-native-sdk/core/packages/get-venue/Mappedin.TaskScheduler' {
|
|
5709
6670
|
/**
|
|
5710
6671
|
* A function that can be submitted to the Task Scheduler to run each frame for
|
|
5711
6672
|
* some provided number of frames. A single update can be repeatedly submitted;
|
|
@@ -5739,22 +6700,22 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5739
6700
|
* @param [options.userdata] {Any}
|
|
5740
6701
|
* Arbitrary data that you can store along with this update.
|
|
5741
6702
|
*/
|
|
5742
|
-
constructor(options
|
|
5743
|
-
callback
|
|
5744
|
-
frameCount?: number
|
|
5745
|
-
ordering?: number
|
|
5746
|
-
supersededBy?:
|
|
5747
|
-
name
|
|
5748
|
-
userdata?: any
|
|
5749
|
-
}
|
|
5750
|
-
_callback: Function
|
|
6703
|
+
constructor(options: {
|
|
6704
|
+
callback: Function;
|
|
6705
|
+
frameCount?: number;
|
|
6706
|
+
ordering?: number;
|
|
6707
|
+
supersededBy?: Set<never>;
|
|
6708
|
+
name: string;
|
|
6709
|
+
userdata?: Record<string, any>;
|
|
6710
|
+
});
|
|
6711
|
+
_callback: Function;
|
|
5751
6712
|
_frameCount: number;
|
|
5752
6713
|
_ordering: number;
|
|
5753
|
-
_supersededBy: Set<
|
|
5754
|
-
name: string
|
|
5755
|
-
userdata: any;
|
|
6714
|
+
_supersededBy: Set<never>;
|
|
6715
|
+
name: string;
|
|
5756
6716
|
_remainingFrameCount: number;
|
|
5757
6717
|
_lastFrameTime: number;
|
|
6718
|
+
userdata?: Record<string, any>;
|
|
5758
6719
|
/**
|
|
5759
6720
|
* Return the amount of time that this frame update took to execute during
|
|
5760
6721
|
* its most recent execution, in milliseconds. If called during this frame
|
|
@@ -5794,24 +6755,25 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5794
6755
|
* @param [options.userdata] {Any}
|
|
5795
6756
|
* Arbitrary data that you can store along with this task.
|
|
5796
6757
|
*/
|
|
5797
|
-
constructor(options
|
|
5798
|
-
|
|
5799
|
-
|
|
5800
|
-
|
|
5801
|
-
postponeOnAdd
|
|
5802
|
-
name
|
|
5803
|
-
|
|
5804
|
-
|
|
5805
|
-
|
|
5806
|
-
_group: FrameTaskGroup | null;
|
|
5807
|
-
_priority: number;
|
|
6758
|
+
constructor(options: {
|
|
6759
|
+
userdata: Record<string, any>;
|
|
6760
|
+
priority: number;
|
|
6761
|
+
group?: FrameTaskGroup;
|
|
6762
|
+
postponeOnAdd: number | boolean;
|
|
6763
|
+
name: string;
|
|
6764
|
+
lastFrameTime: number;
|
|
6765
|
+
callback: Function;
|
|
6766
|
+
});
|
|
5808
6767
|
_postponed: number | boolean;
|
|
5809
|
-
|
|
5810
|
-
|
|
6768
|
+
userdata: Record<string, any>;
|
|
6769
|
+
_priority: number;
|
|
6770
|
+
_group: FrameTaskGroup | null;
|
|
6771
|
+
name: string;
|
|
6772
|
+
_lastFrameTime: number;
|
|
6773
|
+
_callback: Function;
|
|
5811
6774
|
_complete: boolean;
|
|
5812
6775
|
_scheduled: boolean;
|
|
5813
6776
|
_cancelled: boolean;
|
|
5814
|
-
_lastFrameTime: number;
|
|
5815
6777
|
/**
|
|
5816
6778
|
* Return true if this task has been run at least once.
|
|
5817
6779
|
*
|
|
@@ -5858,18 +6820,18 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5858
6820
|
* @param [options.userdata] {Any}
|
|
5859
6821
|
* Arbitrary data that you can store along with this task group.
|
|
5860
6822
|
*/
|
|
5861
|
-
constructor(options
|
|
5862
|
-
onComplete?: Function
|
|
5863
|
-
priority?: number
|
|
5864
|
-
|
|
5865
|
-
|
|
5866
|
-
|
|
5867
|
-
}
|
|
6823
|
+
constructor(options: {
|
|
6824
|
+
onComplete?: Function;
|
|
6825
|
+
priority?: number;
|
|
6826
|
+
userdata: Record<string, any>;
|
|
6827
|
+
postponeOnAdd: number | boolean;
|
|
6828
|
+
name: string;
|
|
6829
|
+
});
|
|
6830
|
+
_postponed: number | boolean;
|
|
5868
6831
|
_onComplete: Function;
|
|
5869
6832
|
_priority: number;
|
|
5870
|
-
|
|
5871
|
-
name: string
|
|
5872
|
-
userdata: any;
|
|
6833
|
+
userdata: Record<string, any>;
|
|
6834
|
+
name: string;
|
|
5873
6835
|
_tasks: Set<any>;
|
|
5874
6836
|
_scheduledTasks: Set<any>;
|
|
5875
6837
|
_scheduled: boolean;
|
|
@@ -5888,13 +6850,22 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5888
6850
|
* @method tasks
|
|
5889
6851
|
* @return {[FrameTask]} list of tasks in this group
|
|
5890
6852
|
*/
|
|
5891
|
-
getTasks(): [
|
|
6853
|
+
getTasks(): any[];
|
|
5892
6854
|
/**
|
|
5893
6855
|
* Empty this task group. This will trivially satisfy `isComplete`.
|
|
5894
6856
|
*
|
|
5895
6857
|
* @method clear
|
|
5896
6858
|
*/
|
|
5897
6859
|
clear(): void;
|
|
6860
|
+
/**
|
|
6861
|
+
* Return one arbitrary incomplete task from this group, or undefined if
|
|
6862
|
+
* there are none.
|
|
6863
|
+
*
|
|
6864
|
+
* @method _popTask
|
|
6865
|
+
* @return {FrameTask} arbitrary scheduled task
|
|
6866
|
+
* @private
|
|
6867
|
+
*/
|
|
6868
|
+
_popTask(): any;
|
|
5898
6869
|
}
|
|
5899
6870
|
/**
|
|
5900
6871
|
* A timer for the task scheduler that uses real wall-time to determine if there's
|
|
@@ -5904,6 +6875,8 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5904
6875
|
* @private
|
|
5905
6876
|
*/
|
|
5906
6877
|
export class RealTimeTimer {
|
|
6878
|
+
_maxMillisecondsPerFrame: number;
|
|
6879
|
+
_time: number;
|
|
5907
6880
|
/**
|
|
5908
6881
|
* @constructor
|
|
5909
6882
|
* @param [options] {Object} Options for the timer
|
|
@@ -5912,10 +6885,8 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5912
6885
|
* or equal to this value, then another task may be executed
|
|
5913
6886
|
*/
|
|
5914
6887
|
constructor(options?: {
|
|
5915
|
-
maxMillisecondsPerFrame?:
|
|
5916
|
-
}
|
|
5917
|
-
_maxMillisecondsPerFrame: any;
|
|
5918
|
-
_time: any;
|
|
6888
|
+
maxMillisecondsPerFrame?: number;
|
|
6889
|
+
});
|
|
5919
6890
|
/**
|
|
5920
6891
|
* Begin timing a frame.
|
|
5921
6892
|
*
|
|
@@ -5937,6 +6908,8 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5937
6908
|
* @private
|
|
5938
6909
|
*/
|
|
5939
6910
|
export class FixedTimer {
|
|
6911
|
+
_ticks: number;
|
|
6912
|
+
maxTasksPerFrame: number;
|
|
5940
6913
|
/**
|
|
5941
6914
|
* @constructor
|
|
5942
6915
|
* @param [options] {Object} Options for the timer
|
|
@@ -5945,10 +6918,8 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5945
6918
|
* Can be modified as the `maxTasksPerFrame` property on this boject.
|
|
5946
6919
|
*/
|
|
5947
6920
|
constructor(options?: {
|
|
5948
|
-
maxTasksPerFrame?:
|
|
5949
|
-
}
|
|
5950
|
-
maxTasksPerFrame: any;
|
|
5951
|
-
_ticks: number;
|
|
6921
|
+
maxTasksPerFrame?: number;
|
|
6922
|
+
});
|
|
5952
6923
|
/**
|
|
5953
6924
|
* Begin timing a frame.
|
|
5954
6925
|
*
|
|
@@ -5992,11 +6963,11 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
5992
6963
|
* performance information.
|
|
5993
6964
|
*/
|
|
5994
6965
|
constructor(options?: {
|
|
5995
|
-
timer?:
|
|
5996
|
-
performance?:
|
|
5997
|
-
}
|
|
5998
|
-
_timer:
|
|
5999
|
-
_performance:
|
|
6966
|
+
timer?: RealTimeTimer;
|
|
6967
|
+
performance?: boolean;
|
|
6968
|
+
});
|
|
6969
|
+
_timer: RealTimeTimer;
|
|
6970
|
+
_performance: boolean;
|
|
6000
6971
|
_scheduledUpdatesByOrdering: Multimap;
|
|
6001
6972
|
_scheduledTasksByPriority: Multimap;
|
|
6002
6973
|
_postponedTasks: Set<any>;
|
|
@@ -6004,18 +6975,6 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6004
6975
|
_updatesToRunThisFrame: any[];
|
|
6005
6976
|
_lastFrameTime: number;
|
|
6006
6977
|
_updatesRunLastFrame: Set<any>;
|
|
6007
|
-
/**
|
|
6008
|
-
* Run all scheduled updates, and re-schedule another animation frame if any
|
|
6009
|
-
* scheduled updates still exist. If any scheduled update specifies
|
|
6010
|
-
* `shouldRunTasksAfterCompletion`, this will also run queued tasks until the
|
|
6011
|
-
* frame time runs out.
|
|
6012
|
-
*
|
|
6013
|
-
* @method update
|
|
6014
|
-
* @param timestamp {number} the current animation time, as returned from
|
|
6015
|
-
* `performance.now()`; will be automatically filled in by
|
|
6016
|
-
* `requestAnimationFrame` when it triggers this as a callback
|
|
6017
|
-
*/
|
|
6018
|
-
update(timestamp: number): void;
|
|
6019
6978
|
/**
|
|
6020
6979
|
* Empty the task scheduler's queue. All tasks in it will be cancelled.
|
|
6021
6980
|
*
|
|
@@ -6035,6 +6994,18 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6035
6994
|
* @method requestAnimationFrame
|
|
6036
6995
|
*/
|
|
6037
6996
|
requestAnimationFrame(): void;
|
|
6997
|
+
/**
|
|
6998
|
+
* Run all scheduled updates, and re-schedule another animation frame if any
|
|
6999
|
+
* scheduled updates still exist. If any scheduled update specifies
|
|
7000
|
+
* `shouldRunTasksAfterCompletion`, this will also run queued tasks until the
|
|
7001
|
+
* frame time runs out.
|
|
7002
|
+
*
|
|
7003
|
+
* @method update
|
|
7004
|
+
* @param timestamp {number} the current animation time, as returned from
|
|
7005
|
+
* `performance.now()`; will be automatically filled in by
|
|
7006
|
+
* `requestAnimationFrame` when it triggers this as a callback
|
|
7007
|
+
*/
|
|
7008
|
+
update(timestamp: number): void;
|
|
6038
7009
|
/**
|
|
6039
7010
|
* Execute all tasks that are currently pending, without regard for the
|
|
6040
7011
|
* available frame time.
|
|
@@ -6059,7 +7030,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6059
7030
|
* has not yet been run or if the scheduler has been cleared.
|
|
6060
7031
|
*/
|
|
6061
7032
|
getUpdatesRunLastFrame(): Set<any>;
|
|
6062
|
-
_executeOneTask(timestamp:
|
|
7033
|
+
_executeOneTask(timestamp: number): void;
|
|
6063
7034
|
/**
|
|
6064
7035
|
* Schedule an update to be run for the next `update.frameCount` frames. If
|
|
6065
7036
|
* the update already exists in the scheduler, the update's frame count will
|
|
@@ -6069,7 +7040,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6069
7040
|
* @method scheduleUpdate
|
|
6070
7041
|
* @param task {FrameUpdate} the update to schedule
|
|
6071
7042
|
*/
|
|
6072
|
-
scheduleUpdate(update:
|
|
7043
|
+
scheduleUpdate(update: FrameUpdate): void;
|
|
6073
7044
|
/**
|
|
6074
7045
|
* Schedule a task to be run during a frame update. This will also schedule
|
|
6075
7046
|
* an animation frame to begin processing the task queue.
|
|
@@ -6084,7 +7055,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6084
7055
|
* @method cancelUpdate
|
|
6085
7056
|
* @param task {FrameUpdate} the update to cancel
|
|
6086
7057
|
*/
|
|
6087
|
-
cancelUpdate(update:
|
|
7058
|
+
cancelUpdate(update: FrameUpdate): void;
|
|
6088
7059
|
/**
|
|
6089
7060
|
* If the given task or group is in the queue, remove it. Cancelling a
|
|
6090
7061
|
* completed task is a no-op.
|
|
@@ -6095,7 +7066,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6095
7066
|
* @method cancelTask
|
|
6096
7067
|
* @param task {FrameTask or FrameTaskGroup} the task to cancel
|
|
6097
7068
|
*/
|
|
6098
|
-
cancelTask(task: FrameTask): void;
|
|
7069
|
+
cancelTask(task: FrameTask | FrameTaskGroup): void;
|
|
6099
7070
|
/**
|
|
6100
7071
|
* Set the provided task or group not to run, until it's resumed using `resumeTask`.
|
|
6101
7072
|
*
|
|
@@ -6105,7 +7076,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6105
7076
|
* @method postponeTask
|
|
6106
7077
|
* @param task {FrameTask or FrameTaskGroup} the task to postpone
|
|
6107
7078
|
*/
|
|
6108
|
-
postponeTask(task: FrameTask): void;
|
|
7079
|
+
postponeTask(task: FrameTask | FrameTaskGroup): void;
|
|
6109
7080
|
/**
|
|
6110
7081
|
* Allow a postponed task or task group to resume processing. This will also
|
|
6111
7082
|
* request an animation frame to allow the resumed task to be processed.
|
|
@@ -6116,7 +7087,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6116
7087
|
* @method resumeTask
|
|
6117
7088
|
* @param task {FrameTask or FrameTaskGroup} the task to resume
|
|
6118
7089
|
*/
|
|
6119
|
-
resumeTask(task: FrameTask): void;
|
|
7090
|
+
resumeTask(task: FrameTask | FrameTaskGroup): void;
|
|
6120
7091
|
/**
|
|
6121
7092
|
* Change the priority of the given scheduled task or task group.
|
|
6122
7093
|
*
|
|
@@ -6124,7 +7095,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6124
7095
|
* @param task {FrameTask or FrameTaskGroup} the task whose priority will be changed
|
|
6125
7096
|
* @param priority {number} the priority to assign the task
|
|
6126
7097
|
*/
|
|
6127
|
-
setTaskPriority(task: FrameTask, priority: number): void;
|
|
7098
|
+
setTaskPriority(task: FrameTask | FrameTaskGroup, priority: number): void;
|
|
6128
7099
|
}
|
|
6129
7100
|
/**
|
|
6130
7101
|
* A map that maps a numeric key to a set of values.
|
|
@@ -6135,6 +7106,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6135
7106
|
* @private
|
|
6136
7107
|
*/
|
|
6137
7108
|
class Multimap {
|
|
7109
|
+
/**
|
|
7110
|
+
* @method constructor
|
|
7111
|
+
*/
|
|
7112
|
+
constructor();
|
|
6138
7113
|
_map: Map<any, any>;
|
|
6139
7114
|
_size: number;
|
|
6140
7115
|
_sortedKeys: any[];
|
|
@@ -6194,7 +7169,10 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6194
7169
|
* @method values
|
|
6195
7170
|
* @return {Iterator} iterator over the values in the map
|
|
6196
7171
|
*/
|
|
6197
|
-
values():
|
|
7172
|
+
values(): {
|
|
7173
|
+
[Symbol.iterator]: () => any;
|
|
7174
|
+
next: () => any;
|
|
7175
|
+
};
|
|
6198
7176
|
/**
|
|
6199
7177
|
* A list of keys in this set, sorted by numeric value. Not cloned,
|
|
6200
7178
|
* for efficiency's sake, so please don't mutate it.
|
|
@@ -6202,7 +7180,7 @@ declare module '@mappedin/react-native-sdk/core/packages/renderer/internal/Mappe
|
|
|
6202
7180
|
* @method keys
|
|
6203
7181
|
* @return {[number]} sorted list of numeric keys in the map
|
|
6204
7182
|
*/
|
|
6205
|
-
keys(): [
|
|
7183
|
+
keys(): any[];
|
|
6206
7184
|
/**
|
|
6207
7185
|
* The number of elements in this multimap, equal to the sum of the sizes
|
|
6208
7186
|
* of each key's set of values.
|