@mappedin/react-sdk 6.0.1-beta.23 → 6.0.1-beta.25
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/THIRD_PARTY_LICENSES.txt +55 -1
- package/lib/esm/GLTFExporter-P25FPTJF.js +1 -0
- package/lib/esm/GLTFLoader-2IV5BF7Z.js +1 -0
- package/lib/esm/browser-XQ5347KZ.js +1 -0
- package/lib/esm/chunk-23O3CSSY.js +1 -0
- package/lib/esm/chunk-GXJVVNTN.js +1 -0
- package/lib/esm/chunk-GXSN3IIM.js +1 -0
- package/lib/esm/chunk-J5IUISYU.js +1 -0
- package/lib/esm/chunk-JGWQFDEC.js +1 -0
- package/lib/esm/chunk-SXU2GBLV.js +1 -0
- package/lib/esm/chunk-UOA2IGIA.js +1 -0
- package/lib/esm/index.css +1 -1
- package/lib/esm/index.d.ts +1511 -452
- package/lib/esm/index.js +1 -1
- package/lib/esm/inspector-TLP7SW7I.js +1 -0
- package/lib/esm/internal-55777EMI.css +1 -0
- package/lib/esm/internal-AHUPGYIQ.js +1 -0
- package/lib/esm/outdoor-context-v4-KP4UBYI7.js +1 -0
- package/lib/esm/roboto-regular-V36DLM4S.js +1 -0
- package/lib/esm/text3d-2WIVFRJX.js +1 -0
- package/package.json +2 -2
- package/lib/esm/GLTFExporter-NAC5AOBR.js +0 -1
- package/lib/esm/GLTFLoader-DS2TN3AV.js +0 -1
- package/lib/esm/browser-7PYC6B4T.js +0 -1
- package/lib/esm/chunk-2ZAO5EG6.js +0 -1
- package/lib/esm/chunk-6JX55RII.js +0 -1
- package/lib/esm/chunk-DJMNLKJ5.js +0 -1
- package/lib/esm/chunk-FFK6S6NZ.js +0 -1
- package/lib/esm/chunk-OCVOMAWQ.js +0 -1
- package/lib/esm/inspector-FGBD6IFK.js +0 -1
- package/lib/esm/internal-C3WM3KGI.css +0 -1
- package/lib/esm/internal-DYMZQK6Q.js +0 -1
- package/lib/esm/outdoor-context-v4-5ZQPPV2K.js +0 -1
package/lib/esm/index.d.ts
CHANGED
|
@@ -18,7 +18,9 @@
|
|
|
18
18
|
// ../react/@packages/internal/shave-text/shave-text
|
|
19
19
|
// ../react/@tweenjs/tween.js
|
|
20
20
|
// ../react/@turf/turf
|
|
21
|
+
// ../react/troika-three-text
|
|
21
22
|
// ../react/@packages/internal/quad-tree
|
|
23
|
+
// ../react/@mappedin/core-sdk/src/components/text3d
|
|
22
24
|
// ../react/minisearch
|
|
23
25
|
// ../react/three/addons/loaders/GLTFLoader.js
|
|
24
26
|
// ../react/@mapbox/point-geometry
|
|
@@ -62,8 +64,9 @@ declare module '@mappedin/react-sdk/mappedin-js/src' {
|
|
|
62
64
|
import type { Floor } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
63
65
|
import type { ParsedMVF as TMVF, StyleCollection as TMVFStyleCollection, Style as TMVFStyle, LineStringStyle as TMVFLineStringStyle, PolygonStyle as TMVFPolygonStyle, PointStyle as TMVFPointStyle, ParsedMVFLocalePack, OperationHours, SiblingGroup, LocationState } from '@mappedin/mvf';
|
|
64
66
|
import { MapView } from '@mappedin/react-sdk/mappedin-js/src/map-view';
|
|
65
|
-
|
|
66
|
-
import {
|
|
67
|
+
export type { Text3D as Text3DApi } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/text3d';
|
|
68
|
+
import type { InsetPadding, InsetPaddingOption, Shading, PaintStyle, LineStyle, WatermarkOptions, Text3DState, AddText3DOptions, UpdatableText3DState, InitializeText3DState, MapViewState } from '@mappedin/react-sdk/geojson/src';
|
|
69
|
+
import { enableTestMode, preloadFont } from '@mappedin/react-sdk/geojson/src';
|
|
67
70
|
export type { PubSub } from '@packages/internal/common/pubsub';
|
|
68
71
|
import type { TMappedinMapLibreOverlayEvents } from '@mappedin/react-sdk/mappedin-js/src/maplibre-overlay';
|
|
69
72
|
import { MappedinMapLibreOverlay } from '@mappedin/react-sdk/mappedin-js/src/maplibre-overlay';
|
|
@@ -89,92 +92,6 @@ declare module '@mappedin/react-sdk/mappedin-js/src' {
|
|
|
89
92
|
*/
|
|
90
93
|
quality?: 'low' | 'medium' | 'high' | 'ultra';
|
|
91
94
|
};
|
|
92
|
-
/**
|
|
93
|
-
* Represents all the available ambient occlusion options.
|
|
94
|
-
*/
|
|
95
|
-
type TAmbientOcclusionOptions = {
|
|
96
|
-
/**
|
|
97
|
-
* Enable ambient occlusion. Only works in single buffer mode and when device supports WebGL2.
|
|
98
|
-
*
|
|
99
|
-
* @default false
|
|
100
|
-
*/
|
|
101
|
-
enabled?: boolean;
|
|
102
|
-
/**
|
|
103
|
-
* Change the quality of ambient occlusion in the scene. Greater quality means less noise, but worse performance.
|
|
104
|
-
*
|
|
105
|
-
* The quality modes are as follows:
|
|
106
|
-
|
|
107
|
-
*Temporal stability refers to how consistent the AO is from frame to frame - it's important for a smooth experience.*
|
|
108
|
-
| Quality Mode | AO Samples | Denoise Samples | Denoise Radius | Best For
|
|
109
|
-
|:---:|:---:|:---:|:---:|:---:|
|
|
110
|
-
| Performance (Less temporal stability, a bit noisy) | 8 | 4 | 12 | Mobile, Low-end iGPUs and laptops |
|
|
111
|
-
| Low (Temporally stable, but low-frequency noise) | 16 | 4 | 12 | High-End Mobile, iGPUs, laptops |
|
|
112
|
-
| Medium (Temporally stable and barely any noise) | 16 | 8 | 12 | High-End Mobile, laptops, desktops |
|
|
113
|
-
| High (Significantly sharper AO, barely any noise) | 64 | 8 | 6 | Desktops, dedicated GPUs |
|
|
114
|
-
| Ultra (Sharp AO, No visible noise whatsoever) | 64 | 16 | 6 | Desktops, dedicated GPUs|
|
|
115
|
-
|
|
116
|
-
Generally, half-res mode at "Ultra" quality is slightly slower than full-res mode at "Performance" quality, but produces significantly better results.
|
|
117
|
-
|
|
118
|
-
If you wish to make entirely custom quality setup, you can manually change `aoSamples`, `denoiseSamples` and `denoiseRadius`.
|
|
119
|
-
*
|
|
120
|
-
* @default 'medium'
|
|
121
|
-
*/
|
|
122
|
-
quality?: 'performance' | 'low' | 'medium' | 'high' | 'ultra';
|
|
123
|
-
samples?: number;
|
|
124
|
-
/**
|
|
125
|
-
* Controls the radius/size of the ambient occlusion in world units. Should be set to how far you want the occlusion to extend from a given object.
|
|
126
|
-
* Set it too low, and AO becomes an edge detector. Too high, and the AO becomes "soft" and might not highlight the details you want.
|
|
127
|
-
*/
|
|
128
|
-
radius?: number;
|
|
129
|
-
denoiseSamples?: number;
|
|
130
|
-
denoiseRadius?: number;
|
|
131
|
-
/**
|
|
132
|
-
* A purely artistic control for the intensity of the AO has the effect of darkening areas with more ambient occlusion.
|
|
133
|
-
* Useful to make the effect more pronounced. An intensity of 2 generally produces soft ambient occlusion that isn't too noticeable,
|
|
134
|
-
* whereas one of 5 produces heavily prominent ambient occlusion.
|
|
135
|
-
*/
|
|
136
|
-
intensity?: number;
|
|
137
|
-
denoiseIterations?: number;
|
|
138
|
-
renderMode?: number;
|
|
139
|
-
/**
|
|
140
|
-
* The color of the ambient occlusion. By default, it is black, but it can be changed to any color to offer a crude approximation of global illumination.
|
|
141
|
-
* Recommended in scenes where bounced light has a uniform "color", for instance a scene that is predominantly lit by a blue sky.
|
|
142
|
-
* The color is expected to be in the sRGB color space, and is automatically converted to linear space for you. Keep the color pretty dark for sensible results.
|
|
143
|
-
*
|
|
144
|
-
* Color formats:\
|
|
145
|
-
* RGB String: `rgb(255, 0, 0)` or `rgb(100%, 0%, 0%)`\
|
|
146
|
-
* HSL String: `hsl(0, 100%, 50%)`\
|
|
147
|
-
* X11 color name - all 140 color names are supported. Note the lack of CamelCase in the name: `skyblue`
|
|
148
|
-
*/
|
|
149
|
-
color?: string;
|
|
150
|
-
/**
|
|
151
|
-
* Should be automatically set to the correct value. If you are getting washed out colors, try setting `gammaCorrection` to false, and if you are getting dark colors, try setting it to true.
|
|
152
|
-
*/
|
|
153
|
-
gammaCorrection?: boolean;
|
|
154
|
-
logarithmicDepthBuffer?: boolean;
|
|
155
|
-
/**
|
|
156
|
-
* When screenSpaceRadius is set to true, the `aoRadius` parameter represents the size of the ambient occlusion effect in pixels (recommended to be set between 16 and 64).
|
|
157
|
-
* The `distanceFalloff` parameter becomes a ratio, representing the percent of the screen space radius at which the AO should fade away - it should be set to 0.2 in most cases,
|
|
158
|
-
* but it accepts any value between 0 and 1 (technically even higher than 1, though that is not recommended).
|
|
159
|
-
*/
|
|
160
|
-
screenSpaceRadius?: boolean;
|
|
161
|
-
/**
|
|
162
|
-
* Use half-resolution" mode for performance-critical applications. This will cause the AO to be calculated at half the resolution of the screen, and then upscaled to the full resolution.
|
|
163
|
-
* This is a great way to get a performance boost (generally 2x-4x) at the cost of some quality (the AO will lack fine details and temporal stability will be slightly reduced).
|
|
164
|
-
* @default 'full'
|
|
165
|
-
*/
|
|
166
|
-
resolution?: 'half' | 'full';
|
|
167
|
-
/**
|
|
168
|
-
* The half `aoResolution` mode uses depth-aware upscaling by default.
|
|
169
|
-
* The AO effect looks bad without depth-aware upscaling, so it is not recommended to disable it.
|
|
170
|
-
* However, if performance is truly that critical, you can do so by setting `depthAwareUpsampling` to false.
|
|
171
|
-
*/
|
|
172
|
-
depthAwareUpsampling?: boolean;
|
|
173
|
-
/**
|
|
174
|
-
* It is recommended to not change this value, otherwise rendering issues may occur.
|
|
175
|
-
*/
|
|
176
|
-
autoRenderBeauty?: boolean;
|
|
177
|
-
};
|
|
178
95
|
/**
|
|
179
96
|
* @interface
|
|
180
97
|
* Options for the watermark.
|
|
@@ -396,19 +313,25 @@ declare module '@mappedin/react-sdk/mappedin-js/src' {
|
|
|
396
313
|
* @experimental
|
|
397
314
|
*/
|
|
398
315
|
export const createMapLibreOverlay: (mapData: MapData, showMapOptions?: TShow3DMapOptions) => MappedinMapLibreOverlay;
|
|
399
|
-
export const show3dMapGeojson: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
|
|
400
316
|
export const show3dMap: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
|
|
401
|
-
|
|
402
|
-
|
|
317
|
+
/**
|
|
318
|
+
* @internal
|
|
319
|
+
* @deprecated Use {@link show3dMap} instead.
|
|
320
|
+
*/
|
|
321
|
+
export const show3dMapGeojson: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
|
|
322
|
+
export { parseMVF, unzipMVF, enableTestMode, preloadFont };
|
|
323
|
+
export type { MapView, MapData, MapViewState, MappedinMapLibreOverlay, TMappedinMapLibreOverlayEvents, TBlueDotEvents, TBlueDotAction, TBlueDotState, GeolocationPositionExtended, TStackedMapsEvents, TExpandOptions, TStackedMapsState, TFollowMode, TFollowCameraOptions, TEvents, TEventPayload, TFloorChangeReason, TClickPayload, THoverPayload, TShow3DMapOptions, TGetMapDataOptions, TGetMapDataWithAccessTokenOptions, TGetMapDataWithCredentialsOptions, TGetMapDataSharedOptions, TAntialiasingOptions, TMVF, PaintStyle, LineStyle, Shading, TMVFStyleCollection, TMVFStyle, TMVFLineStringStyle, TMVFPolygonStyle, TMVFPointStyle, Environment, InsetPadding, InsetPaddingOption, OperationHours, SiblingGroup, LocationState, Text3DState, AddText3DOptions, UpdatableText3DState, InitializeText3DState, };
|
|
403
324
|
export type * from 'geojson';
|
|
404
325
|
export type { TUpdateState, TUpdateStates, TLabelState, TGeometryState, TModelState, TShapeState, TDoorsState, TImageState, TWallsState, TCameraAnimationOptions, TAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TDirectionZone, TCameraFocusOnTarget, TFocusable, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TAddModelOptions, TAddModel, TAddImageOptions, TGetDirectionsOptions, TCollisionRankingTier, TMarkerAnchor, TDirectionInstruction, TDirectionInstructionAction, TGetState, TMarkerState, TBlueDotOptions, TBlueDotPositionUpdate, } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
405
326
|
export { WALLS, DOORS } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
406
|
-
export type { Label, Marker, Path, Shape, CameraTransform, Model, Image } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
327
|
+
export type { Label, Marker, Path, Shape, CameraTransform, Model, Image, Text3D } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
328
|
+
export type { Debug } from '@mappedin/react-sdk/mappedin-js/src/debug';
|
|
407
329
|
export type { Navigation, TNavigationOptions } from '@mappedin/react-sdk/mappedin-js/src/navigation';
|
|
408
330
|
export type { TSpaceType } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
409
|
-
export { Coordinate, Annotation, Connection, Door, Floor, FloorStack, MapObject, PointOfInterest, Space, Image as ImageData, Hyperlink, EnterpriseLocation, EnterpriseCategory, EnterpriseVenue, Node, type Places, } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
331
|
+
export { Coordinate, Annotation, Connection, Door, Floor, FloorStack, MapObject, PointOfInterest, Space, Image as ImageData, Hyperlink, EnterpriseLocation, EnterpriseCategory, EnterpriseVenue, Facade, Node, type Places, } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
410
332
|
export type { Camera, Models, Labels, BlueDot, Markers, Paths, Exporter, Directions, Style, Shapes, Outdoor, Images, StackedMaps, } from '@mappedin/react-sdk/mappedin-js/src/api-geojson';
|
|
411
333
|
export type { SearchResult, SearchResultItem, SearchResultEnterpriseCategory, SearchResultEnterpriseLocations, SearchResultPlaces, SearchOptions, Search, Suggestion, MatchInfo, } from '@mappedin/react-sdk/mappedin-js/src/search';
|
|
334
|
+
export type { TFindNearestOptions, TFindNearestResult, TQueriables, Query } from '@mappedin/react-sdk/mappedin-js/src/query';
|
|
412
335
|
export type { Analytics, TAnalyticsUpdateState } from '@mappedin/react-sdk/mappedin-js/src/analytics';
|
|
413
336
|
}
|
|
414
337
|
|
|
@@ -725,13 +648,14 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data' {
|
|
|
725
648
|
import { Analytics } from '@mappedin/react-sdk/mappedin-js/src/analytics';
|
|
726
649
|
import { PubSub } from '@packages/internal/common';
|
|
727
650
|
import type { TSearchOptions } from '@packages/internal/mvf-utils';
|
|
728
|
-
import type { Connection, Door, Floor, MapDataInternal, Space, MapObject, PointOfInterest, Annotation, Coordinate, FloorStack, Node, Area } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
651
|
+
import type { Connection, Door, Floor, MapDataInternal, Space, MapObject, PointOfInterest, Annotation, Coordinate, FloorStack, Node, Facade, Area } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
729
652
|
import type EnterpriseCategory from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/category';
|
|
730
653
|
import type EnterpriseLocation from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/location';
|
|
731
654
|
import type EnterpriseVenue from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/venue';
|
|
732
655
|
import { Search } from '@mappedin/react-sdk/mappedin-js/src/search';
|
|
733
656
|
import type { TNavigationTarget, TGetDirectionsOptions } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
734
657
|
import type { Directions } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/directions';
|
|
658
|
+
import { Query } from '@mappedin/react-sdk/mappedin-js/src/query';
|
|
735
659
|
/**
|
|
736
660
|
* A WeakMap to associate {@link MapData} instances with their internal representation.
|
|
737
661
|
* We need a way to get the internal data object from the API
|
|
@@ -769,6 +693,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data' {
|
|
|
769
693
|
* console.log(suggestions);
|
|
770
694
|
*/
|
|
771
695
|
Search: Search;
|
|
696
|
+
Query: Query;
|
|
772
697
|
/**
|
|
773
698
|
* Constructs a new instance of {@link MapData}.
|
|
774
699
|
*
|
|
@@ -847,6 +772,12 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data' {
|
|
|
847
772
|
* const floorStacks = mapData.getByType('floor-stack');
|
|
848
773
|
*/
|
|
849
774
|
getByType(type: 'floor-stack'): FloorStack[];
|
|
775
|
+
/**
|
|
776
|
+
* @returns The facades ({@link Facade}) within the map.
|
|
777
|
+
* @example
|
|
778
|
+
* const facades = mapData.getByType('facade');
|
|
779
|
+
*/
|
|
780
|
+
getByType(type: 'facade'): Facade[];
|
|
850
781
|
/**
|
|
851
782
|
* @returns The connections ({@link Connection}) on the map.
|
|
852
783
|
* @example
|
|
@@ -910,7 +841,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data' {
|
|
|
910
841
|
* @example
|
|
911
842
|
* const space = mapData.getById('space', 'space-id');
|
|
912
843
|
*/
|
|
913
|
-
getById<T extends string>(type: T, id: string): T extends 'node' ? Node | undefined : T extends 'space' ? Space | undefined : T extends 'door' ? Door | undefined : T extends 'floor' ? Floor | undefined : T extends 'floor-stack' ? FloorStack | undefined : T extends 'connection' ? Connection | undefined : T extends 'object' ? MapObject | undefined : T extends 'point-of-interest' ? PointOfInterest | undefined : T extends 'annotation' ? Annotation | undefined : T extends 'area' ? Area | undefined : T extends 'enterprise-location' ? EnterpriseLocation | undefined : T extends 'enterprise-category' ? EnterpriseCategory | undefined : undefined;
|
|
844
|
+
getById<T extends string>(type: T, id: string): T extends 'node' ? Node | undefined : T extends 'space' ? Space | undefined : T extends 'door' ? Door | undefined : T extends 'floor' ? Floor | undefined : T extends 'facade' ? Facade | undefined : T extends 'floor-stack' ? FloorStack | undefined : T extends 'connection' ? Connection | undefined : T extends 'object' ? MapObject | undefined : T extends 'point-of-interest' ? PointOfInterest | undefined : T extends 'annotation' ? Annotation | undefined : T extends 'area' ? Area | undefined : T extends 'enterprise-location' ? EnterpriseLocation | undefined : T extends 'enterprise-category' ? EnterpriseCategory | undefined : undefined;
|
|
914
845
|
getById(type: string, id: string): object | undefined;
|
|
915
846
|
/**
|
|
916
847
|
* Changes the language of the map data.
|
|
@@ -982,7 +913,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data' {
|
|
|
982
913
|
declare module '@mappedin/react-sdk/mappedin-js/src/events' {
|
|
983
914
|
import type { ClickPayload } from '@mappedin/core-sdk';
|
|
984
915
|
import type { TStackedMapsEvents } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/stacked-maps/stacked-maps';
|
|
985
|
-
import type { Coordinate, Floor, MapObject, Space } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
916
|
+
import type { Coordinate, Facade, Floor, MapObject, Space } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
986
917
|
import type { Label, Marker, Model, Path } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
987
918
|
import type { CameraTransform } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects/camera-transform';
|
|
988
919
|
import type { TBlueDotEvents } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/blue-dot';
|
|
@@ -1026,6 +957,10 @@ declare module '@mappedin/react-sdk/mappedin-js/src/events' {
|
|
|
1026
957
|
* Details about the pointer event which triggered the interaction.
|
|
1027
958
|
*/
|
|
1028
959
|
pointerEvent: ClickPayload['pointerEvent'];
|
|
960
|
+
/**
|
|
961
|
+
* The interactive facades which the user interaction passed through.
|
|
962
|
+
*/
|
|
963
|
+
facades: Facade[];
|
|
1029
964
|
};
|
|
1030
965
|
export type THoverPayload = Omit<TClickPayload, 'pointerEvent'>;
|
|
1031
966
|
/**
|
|
@@ -1140,6 +1075,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1140
1075
|
import Hyperlink from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/hyperlink';
|
|
1141
1076
|
import Image from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/image';
|
|
1142
1077
|
import FloorStack from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/floor-stack';
|
|
1078
|
+
import Facade from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/facade';
|
|
1143
1079
|
import type { MapDataRecords } from '@mappedin/react-sdk/mappedin-js/src/utils/data-creation';
|
|
1144
1080
|
import type { AnnotationCollection, ParsedMVF, Connection as MVFConnection, EntranceCollection, NodeCollection, ObstructionCollection, SpaceCollection, FloorProperties as MVFFloor, FloorStack as MVFFloorStack, EnterpriseLocation as MVFEnterpriseLocation, EnterpriseCategory as MVFEnterpriseCategory, Language, AreaCollection } from '@mappedin/mvf';
|
|
1145
1081
|
import { AnalyticsInternal } from '@mappedin/react-sdk/mappedin-js/src/analytics';
|
|
@@ -1153,6 +1089,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1153
1089
|
import type { TGetDirectionsOptions, TNavigationTarget } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
1154
1090
|
import { type Directions, DirectionsInternal } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/directions';
|
|
1155
1091
|
import { type THydrateMapDataBundle } from '@mappedin/react-sdk/mappedin-js/src';
|
|
1092
|
+
import { Query } from '@mappedin/react-sdk/mappedin-js/src/query';
|
|
1156
1093
|
/**
|
|
1157
1094
|
* Internal class representing detailed map data.
|
|
1158
1095
|
*
|
|
@@ -1166,6 +1103,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1166
1103
|
}> {
|
|
1167
1104
|
#private;
|
|
1168
1105
|
Analytics: AnalyticsInternal;
|
|
1106
|
+
Query: Query;
|
|
1169
1107
|
/**
|
|
1170
1108
|
* Represents the parsed Mappedin Venue Format (MVF) data.
|
|
1171
1109
|
*/
|
|
@@ -1194,6 +1132,8 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1194
1132
|
spacesById: MapDataRecords['spacesById'];
|
|
1195
1133
|
floorsById: MapDataRecords['floorsById'];
|
|
1196
1134
|
floorStacksById: MapDataRecords['floorStacksById'];
|
|
1135
|
+
facadesById: MapDataRecords['facadesById'];
|
|
1136
|
+
facadesBySpaceId: MapDataRecords['facadesBySpaceId'];
|
|
1197
1137
|
connectionsById: MapDataRecords['connectionsById'];
|
|
1198
1138
|
objectsById: MapDataRecords['objectsById'];
|
|
1199
1139
|
doorsById: MapDataRecords['doorsById'];
|
|
@@ -1215,6 +1155,11 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1215
1155
|
mvfFloorsById: MapDataRecords['mvfFloorsById'];
|
|
1216
1156
|
mvfFloorStacksById: MapDataRecords['mvfFloorStacksById'];
|
|
1217
1157
|
mvfAreasById: MapDataRecords['mvfAreasById'];
|
|
1158
|
+
mvfNodesByFloorId: MapDataRecords['mvfNodesByFloorId'];
|
|
1159
|
+
mvfSpacesByFloorId: MapDataRecords['mvfSpacesByFloorId'];
|
|
1160
|
+
mvfPoisByFloorId: MapDataRecords['mvfPoisByFloorId'];
|
|
1161
|
+
mvfEntrancesByFloorId: MapDataRecords['mvfEntrancesByFloorId'];
|
|
1162
|
+
mvfAnnotationsByFloorId: MapDataRecords['mvfAnnotationsByFloorId'];
|
|
1218
1163
|
localePacksUrls: LocalePackUrls;
|
|
1219
1164
|
currentLanguage?: Language;
|
|
1220
1165
|
/**
|
|
@@ -1268,6 +1213,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1268
1213
|
*/
|
|
1269
1214
|
get floors(): Floor[];
|
|
1270
1215
|
get floorStacks(): FloorStack[];
|
|
1216
|
+
get facades(): Facade[];
|
|
1271
1217
|
/**
|
|
1272
1218
|
* Retrieves all doors in the map.
|
|
1273
1219
|
*
|
|
@@ -1299,6 +1245,21 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1299
1245
|
get categories(): EnterpriseCategory[];
|
|
1300
1246
|
get mvfFloors(): MVFFloor[];
|
|
1301
1247
|
get mvfFloorStacks(): MVFFloorStack[];
|
|
1248
|
+
getByType(type: string): object[];
|
|
1249
|
+
getByType(type: 'space'): Space[];
|
|
1250
|
+
getByType(type: 'area'): Area[];
|
|
1251
|
+
getByType(type: 'door'): Door[];
|
|
1252
|
+
getByType(type: 'floor'): Floor[];
|
|
1253
|
+
getByType(type: 'floor-stack'): FloorStack[];
|
|
1254
|
+
getByType(type: 'connection'): Connection[];
|
|
1255
|
+
getByType(type: 'object'): MapObject[];
|
|
1256
|
+
getByType(type: 'point-of-interest'): PointOfInterest[];
|
|
1257
|
+
getByType(type: 'annotation'): Annotation[];
|
|
1258
|
+
getByType(type: 'node'): Node[];
|
|
1259
|
+
getByType(type: 'enterprise-location'): EnterpriseLocation[];
|
|
1260
|
+
getByType(type: 'enterprise-category'): EnterpriseCategory[];
|
|
1261
|
+
getByType(type: 'enterprise-venue'): EnterpriseVenue | undefined;
|
|
1262
|
+
getByType(type: 'facade'): Facade[];
|
|
1302
1263
|
/**
|
|
1303
1264
|
* Retrieves an object by its type and ID.
|
|
1304
1265
|
*
|
|
@@ -1306,18 +1267,8 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1306
1267
|
* @param id The ID of the object.
|
|
1307
1268
|
* @returns {Space | Door | Floor | Connection | MapObject | undefined} The requested object, or undefined if not found.
|
|
1308
1269
|
*/
|
|
1309
|
-
getById(type:
|
|
1310
|
-
getById(type:
|
|
1311
|
-
getById(type: 'door', id: string): Door | undefined;
|
|
1312
|
-
getById(type: 'floor', id: string): Floor | undefined;
|
|
1313
|
-
getById(type: 'floor-stack', id: string): FloorStack | undefined;
|
|
1314
|
-
getById(type: 'connection', id: string): Connection | undefined;
|
|
1315
|
-
getById(type: 'object', id: string): MapObject | undefined;
|
|
1316
|
-
getById(type: 'point-of-interest', id: string): PointOfInterest | undefined;
|
|
1317
|
-
getById(type: 'annotation', id: string): Annotation | undefined;
|
|
1318
|
-
getById(type: 'area', id: string): Area | undefined;
|
|
1319
|
-
getById(type: 'enterprise-location', id: string): EnterpriseLocation | undefined;
|
|
1320
|
-
getById(type: 'enterprise-category', id: string): EnterpriseCategory | undefined;
|
|
1270
|
+
getById<T extends string>(type: T, id: string): T extends 'node' ? Node | undefined : T extends 'space' ? Space | undefined : T extends 'door' ? Door | undefined : T extends 'floor' ? Floor | undefined : T extends 'floor-stack' ? FloorStack | undefined : T extends 'connection' ? Connection | undefined : T extends 'object' ? MapObject | undefined : T extends 'point-of-interest' ? PointOfInterest | undefined : T extends 'annotation' ? Annotation | undefined : T extends 'enterprise-location' ? EnterpriseLocation | undefined : T extends 'enterprise-category' ? EnterpriseCategory | undefined : T extends 'area' ? Area | undefined : T extends 'facade' ? Facade | undefined : undefined;
|
|
1271
|
+
getById(type: string, id: string): object | undefined;
|
|
1321
1272
|
getMapDataById(id: string): Places | undefined;
|
|
1322
1273
|
/**
|
|
1323
1274
|
* Retrieves a feature by its type and ID from the Mappedin Venue Format (MVF) data.
|
|
@@ -1365,26 +1316,28 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects' {
|
|
|
1365
1316
|
*/
|
|
1366
1317
|
destroy(): void;
|
|
1367
1318
|
}
|
|
1368
|
-
export { Node, Area, MapDataInternal, Space, Floor, FloorStack, Connection, MapObject, Door, Coordinate, PointOfInterest, Annotation, Hyperlink, Image, EnterpriseLocation, EnterpriseCategory, EnterpriseVenue, };
|
|
1319
|
+
export { Node, Area, MapDataInternal, Space, Floor, FloorStack, Facade, Connection, MapObject, Door, Coordinate, PointOfInterest, Annotation, Hyperlink, Image, EnterpriseLocation, EnterpriseCategory, EnterpriseVenue, };
|
|
1369
1320
|
export type { TSpaceType } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/space';
|
|
1370
1321
|
export type { Places };
|
|
1371
1322
|
}
|
|
1372
1323
|
|
|
1373
1324
|
declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
|
|
1374
|
-
import type { RendererCore, WatermarkUpdateOptions } from '@mappedin/
|
|
1325
|
+
import type { RendererCore, WatermarkUpdateOptions } from '@mappedin/react-sdk/geojson/src';
|
|
1375
1326
|
import { PubSub } from '@packages/internal/common';
|
|
1376
1327
|
import { type TEvents, type TShow3DMapOptions } from '@mappedin/react-sdk/mappedin-js/src';
|
|
1377
1328
|
import type { Navigation } from '@mappedin/react-sdk/mappedin-js/src/navigation';
|
|
1378
1329
|
import type { Camera, Labels, Markers, Models, Paths, Exporter, Directions, Style, Outdoor, Images } from '@mappedin/react-sdk/mappedin-js/src/api-geojson';
|
|
1379
1330
|
import type { BlueDot } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/blue-dot/blue-dot';
|
|
1380
1331
|
import type MapData from '@mappedin/react-sdk/mappedin-js/src/map-data';
|
|
1381
|
-
import type { Annotation, Coordinate, Door, Floor, MapObject, PointOfInterest, Space, Node, EnterpriseLocation, FloorStack } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
1382
|
-
import type { DOORS, WALLS, TGetDirectionsOptions, TGetState, TNavigationTarget, TUpdateState, TUpdateStates } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
1383
|
-
import type { Label, Marker, Image, Shape } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
1332
|
+
import type { Annotation, Coordinate, Door, Floor, MapObject, PointOfInterest, Space, Node, EnterpriseLocation, FloorStack, Facade } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
1333
|
+
import type { DOORS, WALLS, TGetDirectionsOptions, TGetState, TNavigationTarget, TUpdateState, TUpdateStates, GlobalState, UpdateGlobalState } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
1334
|
+
import type { Label, Marker, Image, Shape, Text3D as Text3DView } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
1384
1335
|
import type { TEventPayload } from '@mappedin/react-sdk/mappedin-js/src/events';
|
|
1385
1336
|
import type { Shapes } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/shapes';
|
|
1386
1337
|
import type { StackedMaps, TCollapseOptions, TExpandOptions } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/stacked-maps/stacked-maps';
|
|
1387
1338
|
import type { InspectorOption } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/inspector/inspector';
|
|
1339
|
+
import { Debug } from '@mappedin/react-sdk/mappedin-js/src/debug';
|
|
1340
|
+
import type { Text3D } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/text3d';
|
|
1388
1341
|
/**
|
|
1389
1342
|
* The MapView class is the main class for rendering and interacting with the map.
|
|
1390
1343
|
*
|
|
@@ -1402,6 +1355,11 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
|
|
|
1402
1355
|
* Controls for the map's labels.
|
|
1403
1356
|
*/
|
|
1404
1357
|
Labels: Labels;
|
|
1358
|
+
/**
|
|
1359
|
+
* @experimental
|
|
1360
|
+
* Controls for the map's 3D texts.
|
|
1361
|
+
*/
|
|
1362
|
+
Text3D: Text3D;
|
|
1405
1363
|
/**
|
|
1406
1364
|
* Controls for the map's markers.
|
|
1407
1365
|
*/
|
|
@@ -1445,9 +1403,14 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
|
|
|
1445
1403
|
*/
|
|
1446
1404
|
Outdoor: Outdoor;
|
|
1447
1405
|
/**
|
|
1448
|
-
* Controls for
|
|
1406
|
+
* Controls for Stacked Maps.
|
|
1449
1407
|
*/
|
|
1450
1408
|
get StackedMaps(): StackedMaps;
|
|
1409
|
+
/**
|
|
1410
|
+
* @internal
|
|
1411
|
+
* @experimental
|
|
1412
|
+
*/
|
|
1413
|
+
get DynamicFocus(): import("./api-geojson/dynamic-focus").DynamicFocus;
|
|
1451
1414
|
/**
|
|
1452
1415
|
* @internal
|
|
1453
1416
|
*/
|
|
@@ -1474,8 +1437,16 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
|
|
|
1474
1437
|
* // Update the color of a space to red.
|
|
1475
1438
|
* map.updateState(space, { color: 'red' });
|
|
1476
1439
|
*/
|
|
1477
|
-
updateState<T extends Space | MapObject | Label | Marker | Shape | Door | WALLS | DOORS>(target: T, state: TUpdateState<T>): any;
|
|
1440
|
+
updateState<T extends Space | Text3DView | MapObject | Label | Marker | Shape | Door | Facade | WALLS | DOORS>(target: T, state: TUpdateState<T>): any;
|
|
1478
1441
|
updateState<T extends string & NonNullable<unknown>>(target: T, state: TUpdateStates): any;
|
|
1442
|
+
/**
|
|
1443
|
+
* Update global state of the MapView
|
|
1444
|
+
*/
|
|
1445
|
+
updateGlobalState(update: UpdateGlobalState): void;
|
|
1446
|
+
/**
|
|
1447
|
+
* Get global state of the MapView
|
|
1448
|
+
*/
|
|
1449
|
+
getGlobalState(): GlobalState;
|
|
1479
1450
|
update: () => void;
|
|
1480
1451
|
/**
|
|
1481
1452
|
* Retrieves the map data for the current map.
|
|
@@ -1534,7 +1505,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
|
|
|
1534
1505
|
* @hidden
|
|
1535
1506
|
*/
|
|
1536
1507
|
updateWatermark(options: WatermarkUpdateOptions): void;
|
|
1537
|
-
getState<T extends Space | MapObject | Label | Marker | Image | Shape | string>(target: T): TGetState<T
|
|
1508
|
+
getState<T extends Space | Text3DView | MapObject | Label | Marker | Image | Shape | string>(target: T): TGetState<T>;
|
|
1538
1509
|
setHoverColor(c: string): void;
|
|
1539
1510
|
getHoverColor(): string | undefined;
|
|
1540
1511
|
/**
|
|
@@ -1653,6 +1624,88 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view' {
|
|
|
1653
1624
|
* Enable debug interface. Learn more about the debug interface in the [Debug Mode Guide](https://developer.mappedin.com/web-sdk/getting-started#debug-mode).
|
|
1654
1625
|
*/
|
|
1655
1626
|
enableDebug(opitons?: InspectorOption): Promise<void>;
|
|
1627
|
+
/**
|
|
1628
|
+
* @experimental
|
|
1629
|
+
* @internal
|
|
1630
|
+
*/
|
|
1631
|
+
Debug: Debug;
|
|
1632
|
+
}
|
|
1633
|
+
}
|
|
1634
|
+
|
|
1635
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/text3d' {
|
|
1636
|
+
import { Space } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
1637
|
+
import type { TAddText3DOptions } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
1638
|
+
import type { CurrentMapGetter } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/types';
|
|
1639
|
+
import { Text3D as Text3DView } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
1640
|
+
export class Text3D {
|
|
1641
|
+
#private;
|
|
1642
|
+
/**
|
|
1643
|
+
* @internal
|
|
1644
|
+
*/
|
|
1645
|
+
constructor({ currentMapGetter }: {
|
|
1646
|
+
currentMapGetter: CurrentMapGetter;
|
|
1647
|
+
});
|
|
1648
|
+
/**
|
|
1649
|
+
* Creates polygon labels for all spaces.
|
|
1650
|
+
*
|
|
1651
|
+
* @param options - Configuration options for text label creation
|
|
1652
|
+
* @returns An array of Text3DView instances representing the created labels. If the space is already labeled, the designated Text3D instance will be returned.
|
|
1653
|
+
*
|
|
1654
|
+
* @example
|
|
1655
|
+
* ```typescript
|
|
1656
|
+
* const labels = mapView.Text3D.labelAll({
|
|
1657
|
+
* // optional configuration options
|
|
1658
|
+
* });
|
|
1659
|
+
* ```
|
|
1660
|
+
*/
|
|
1661
|
+
labelAll(options?: TAddText3DOptions): Text3DView[];
|
|
1662
|
+
/**
|
|
1663
|
+
* Creates a 3D text label for a given space.
|
|
1664
|
+
*
|
|
1665
|
+
* @param target - The target space or enterprise space to label.
|
|
1666
|
+
* @param content - The content of the label. If not provided, target.name will be used
|
|
1667
|
+
* @param options={} - Configuration options for the text label creation.
|
|
1668
|
+
* @returns An array of Text3DView instances representing the created labels.
|
|
1669
|
+
*
|
|
1670
|
+
* @throws {Error} If the target is not a Space.
|
|
1671
|
+
*
|
|
1672
|
+
* @example
|
|
1673
|
+
* ```typescript
|
|
1674
|
+
* const labels = mapView.Text3D.label(space, "Label Content", { fontSize: 12 });
|
|
1675
|
+
* ```
|
|
1676
|
+
*/
|
|
1677
|
+
label(target: Space, content?: string, options?: TAddText3DOptions): Text3DView | undefined;
|
|
1678
|
+
/**
|
|
1679
|
+
* Removes one or more Text3D labels from the map
|
|
1680
|
+
*
|
|
1681
|
+
* @param target - Can be either:
|
|
1682
|
+
* - A single Text3DView instance
|
|
1683
|
+
* - An array of Text3DView instances
|
|
1684
|
+
* - A string ID of the Text3DView to remove
|
|
1685
|
+
*
|
|
1686
|
+
* @example
|
|
1687
|
+
* ```typescript
|
|
1688
|
+
* // Remove single text label
|
|
1689
|
+
* mapView.Text3D.remove(text);
|
|
1690
|
+
*
|
|
1691
|
+
* // Remove multiple text labels
|
|
1692
|
+
* mapView.Text3D.remove([text, text]);
|
|
1693
|
+
*
|
|
1694
|
+
* // Remove by ID
|
|
1695
|
+
* mapView.Text3D.remove("text3d-123");
|
|
1696
|
+
* ```
|
|
1697
|
+
*/
|
|
1698
|
+
remove(text3dView: Text3DView): void;
|
|
1699
|
+
remove(id: string): void;
|
|
1700
|
+
/**
|
|
1701
|
+
* Removes all Text3D labels from the current map
|
|
1702
|
+
*
|
|
1703
|
+
* @example
|
|
1704
|
+
* ```typescript
|
|
1705
|
+
* mapView.Text3D.removeAll();
|
|
1706
|
+
* ```
|
|
1707
|
+
*/
|
|
1708
|
+
removeAll(): void;
|
|
1656
1709
|
}
|
|
1657
1710
|
}
|
|
1658
1711
|
|
|
@@ -1672,20 +1725,26 @@ declare module '@mappedin/react-sdk/geojson/src' {
|
|
|
1672
1725
|
import { mountSceneGraphVisualizer } from '@mappedin/react-sdk/geojson/examples/src/utils/scene-graph-visualizer';
|
|
1673
1726
|
import '../../packages/outdoor-context-v4/css/maplibre-gl.css';
|
|
1674
1727
|
import type { CollisionRankingTier } from '@mappedin/react-sdk/geojson/src/utils/collision-ranking-tier';
|
|
1728
|
+
export type { Text3DState } from '@mappedin/react-sdk/geojson/src/components/text3d';
|
|
1729
|
+
export { TEXT3D_STYLE_UPDATE_PROPS } from '@mappedin/react-sdk/geojson/src/entities/utils';
|
|
1675
1730
|
export { Navigator } from '@mappedin/react-sdk/packages/geojson-navigator';
|
|
1676
1731
|
export { interpolate, debounce } from '@mappedin/react-sdk/geojson/src/utils';
|
|
1677
1732
|
export { MAPPEDIN_LAYER_ID } from '@mappedin/react-sdk/geojson/src/utils/constants';
|
|
1733
|
+
export type { DebugState, Debug } from '@mappedin/react-sdk/geojson/src/utils/debug';
|
|
1678
1734
|
/**
|
|
1679
1735
|
* Enable test mode for the renderer. This will disable the WebGLRenderer and WebGL1Renderer and replace them with a dummy object
|
|
1680
1736
|
* so you can run tests against it
|
|
1681
1737
|
*/
|
|
1682
|
-
export { enableTestMode } from '@mappedin/react-sdk/geojson/src/services/
|
|
1738
|
+
export { enableTestMode } from '@mappedin/react-sdk/geojson/src/services/test-mode';
|
|
1683
1739
|
export { mountSceneGraphVisualizer };
|
|
1684
1740
|
export type { EntityId, EntityState, LineStyle, PaintStyle, ModelStyle, ModelProperties, Shading } from '@mappedin/react-sdk/geojson/src/types';
|
|
1685
1741
|
export type * from 'geojson';
|
|
1686
1742
|
export type { WatermarkUpdateOptions, WatermarkOptions, WatermarkPosition } from '@mappedin/react-sdk/geojson/src/systems/watermark/system';
|
|
1743
|
+
export { preloadFont } from '@mappedin/react-sdk/geojson/src/systems/text3d/system';
|
|
1687
1744
|
export type { GLTFExportOptions } from '@mappedin/react-sdk/geojson/src/systems/exporter';
|
|
1688
1745
|
export type { AttributionControlOptions, AttributionPosition } from '@mappedin/react-sdk/geojson/src/systems/html-controls/system';
|
|
1746
|
+
export type { Text3DStyle } from '@mappedin/react-sdk/geojson/src/components/styles';
|
|
1747
|
+
export type { AddText3DOptions, InitializeText3DState, UpdatableText3DState } from '@mappedin/react-sdk/geojson/src/components/text3d';
|
|
1689
1748
|
export { ATTRIBUTION_POSITIONS } from '@mappedin/react-sdk/geojson/src/systems/html-controls/system';
|
|
1690
1749
|
export { ANIMATION_TWEENS } from '@mappedin/react-sdk/geojson/src/camera';
|
|
1691
1750
|
export type { AddPathOptions, AddMarkerOptions, AddLabelOptions, AnimateToOptions, FocusOnOptions, MapViewState, MarkerState, PathState, GroupContainerState, GeometryGroupState, ShapeState, CustomGeometryBuilder, LabelState, GeometryState, ModelState, EasingCurve, Camera, InsetPadding, InsetPaddingOption, Position, ClickPayload, HoverPayload, CameraPayload, MapEvent, MapEventPayload, CollisionRankingTier, LabelAppearance, RendererCore, };
|
|
@@ -1766,10 +1825,10 @@ declare module '@mappedin/react-sdk/mappedin-js/src/maplibre-overlay' {
|
|
|
1766
1825
|
|
|
1767
1826
|
declare module '@mappedin/react-sdk/mappedin-js/src/types' {
|
|
1768
1827
|
import type { Feature, MultiPolygon, Polygon } from 'geojson';
|
|
1769
|
-
import type { Coordinate, Floor, Door, Space, MapObject, PointOfInterest, Connection, Annotation, EnterpriseLocation, Node, Area } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
1770
|
-
import type { Label, Marker, Model, Image, Shape } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
1828
|
+
import type { Coordinate, Floor, Door, Space, MapObject, PointOfInterest, Connection, Annotation, EnterpriseLocation, Node, Area, Facade } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
1829
|
+
import type { Label, Marker, Model, Image, Shape, Text3D } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
1771
1830
|
import type { Language, ParsedMVFLocalePack } from '@mappedin/mvf';
|
|
1772
|
-
import type { InsetPaddingOption, Position } from '@mappedin/
|
|
1831
|
+
import type { InsetPaddingOption, Position, UpdatableText3DState, Text3DState, AddText3DOptions } from '@mappedin/react-sdk/geojson/src';
|
|
1773
1832
|
export type DeepRequired<T> = Required<{
|
|
1774
1833
|
[K in keyof T]: T[K] extends Required<T[K]> ? T[K] : DeepRequired<T[K]>;
|
|
1775
1834
|
}>;
|
|
@@ -1907,6 +1966,14 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
|
|
|
1907
1966
|
* Visibility of the walls.
|
|
1908
1967
|
*/
|
|
1909
1968
|
visible: boolean;
|
|
1969
|
+
/**
|
|
1970
|
+
* Height of the walls.
|
|
1971
|
+
*/
|
|
1972
|
+
height?: number;
|
|
1973
|
+
/**
|
|
1974
|
+
* Opacity of the walls.
|
|
1975
|
+
*/
|
|
1976
|
+
opacity?: number;
|
|
1910
1977
|
};
|
|
1911
1978
|
export type TDoorsState = {
|
|
1912
1979
|
type: 'doors';
|
|
@@ -2051,9 +2118,9 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
|
|
|
2051
2118
|
/**
|
|
2052
2119
|
* The type for updating the state of map elements (colors, texts, etc.).
|
|
2053
2120
|
*/
|
|
2054
|
-
export type TUpdateState<T> = T extends WALLS ? Partial<TWallsState> : T extends DOORS
|
|
2121
|
+
export type TUpdateState<T> = T extends WALLS ? Partial<TWallsState> : T extends DOORS | Door ? Partial<TDoorsState> : T extends Marker ? Partial<TMarkerState> : T extends Label ? Partial<TLabelState> : T extends Space | MapObject | Facade ? Partial<TGeometryState> : T extends Shape ? Partial<Omit<TShapeState, 'height' | 'type'>> : T extends Text3D ? UpdatableText3DState : T extends string ? Record<string, any> : never;
|
|
2055
2122
|
export type TUpdateStates = Partial<Omit<TGeometryState, 'interactive' | 'hoverColor' | 'type'>> | Partial<TMarkerState> | Partial<TLabelState> | Partial<TGeometryState>;
|
|
2056
|
-
export type TGetState<T> = T extends WALLS ? TWallsState | undefined : T extends DOORS ? TDoorsState | undefined : T extends Marker ? TMarkerState | undefined : T extends Shape ? TShapeState | undefined : T extends Model ? TModelState | undefined : T extends Label ? TLabelState | undefined : T extends Image ? TImageState | undefined : T extends Space | MapObject ? TGeometryState | undefined : T extends string ? TLabelState | TGeometryState | TMarkerState | TModelState | undefined : never;
|
|
2123
|
+
export type TGetState<T> = T extends WALLS ? TWallsState | undefined : T extends DOORS ? TDoorsState | undefined : T extends Marker ? TMarkerState | undefined : T extends Shape ? TShapeState | undefined : T extends Model ? TModelState | undefined : T extends Label ? TLabelState | undefined : T extends Image ? TImageState | undefined : T extends Text3D ? Text3DState | undefined : T extends Space | MapObject ? TGeometryState | undefined : T extends string ? TLabelState | TGeometryState | TMarkerState | TModelState | undefined : never;
|
|
2057
2124
|
/**
|
|
2058
2125
|
* Options for {@link Camera} animations on the map.
|
|
2059
2126
|
*/
|
|
@@ -2134,7 +2201,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
|
|
|
2134
2201
|
/**
|
|
2135
2202
|
* A map element that can be focused on by the camera.
|
|
2136
2203
|
*/
|
|
2137
|
-
export type TFocusable = Floor | Space | Coordinate | MapObject | Connection | PointOfInterest | Door | Annotation | Area | Node | EnterpriseLocation
|
|
2204
|
+
export type TFocusable = Floor | Space | Coordinate | MapObject | Connection | PointOfInterest | Door | Annotation | Area | Node | EnterpriseLocation | Facade
|
|
2138
2205
|
/**
|
|
2139
2206
|
* @experimental
|
|
2140
2207
|
*/
|
|
@@ -2169,7 +2236,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
|
|
|
2169
2236
|
/**
|
|
2170
2237
|
* Defines the target for navigation operations.
|
|
2171
2238
|
*/
|
|
2172
|
-
export type TNavigationTarget = Space | MapObject | Coordinate | Door | PointOfInterest | Connection | EnterpriseLocation | Node | Area;
|
|
2239
|
+
export type TNavigationTarget = Space | MapObject | Coordinate | Door | PointOfInterest | Connection | EnterpriseLocation | Node | Area | Facade;
|
|
2173
2240
|
/**
|
|
2174
2241
|
* Defines the special zone for navigation operations.
|
|
2175
2242
|
*/
|
|
@@ -2526,6 +2593,10 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
|
|
|
2526
2593
|
*/
|
|
2527
2594
|
url: string;
|
|
2528
2595
|
};
|
|
2596
|
+
/**
|
|
2597
|
+
* @interface
|
|
2598
|
+
*/
|
|
2599
|
+
export type TAddText3DOptions = AddText3DOptions;
|
|
2529
2600
|
/**
|
|
2530
2601
|
* Options for controlling the behavior of an {@link Image}.
|
|
2531
2602
|
*/
|
|
@@ -2739,6 +2810,21 @@ declare module '@mappedin/react-sdk/mappedin-js/src/types' {
|
|
|
2739
2810
|
language: Language;
|
|
2740
2811
|
localePack: ParsedMVFLocalePack;
|
|
2741
2812
|
};
|
|
2813
|
+
export type GlobalState = {
|
|
2814
|
+
text3d: {
|
|
2815
|
+
/**
|
|
2816
|
+
* hover color of the text3d
|
|
2817
|
+
*/
|
|
2818
|
+
hoverColor: string;
|
|
2819
|
+
};
|
|
2820
|
+
geometry: {
|
|
2821
|
+
/**
|
|
2822
|
+
* hover color of the geometries
|
|
2823
|
+
*/
|
|
2824
|
+
hoverColor: string;
|
|
2825
|
+
};
|
|
2826
|
+
};
|
|
2827
|
+
export type UpdateGlobalState = DeepPartial<GlobalState>;
|
|
2742
2828
|
}
|
|
2743
2829
|
|
|
2744
2830
|
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/blue-dot/blue-dot' {
|
|
@@ -3028,6 +3114,16 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view-objects' {
|
|
|
3028
3114
|
export { Path } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects/path';
|
|
3029
3115
|
export { CameraTransform } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects/camera-transform';
|
|
3030
3116
|
export { Shape } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects/shape';
|
|
3117
|
+
export { Text3D } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects/text3d';
|
|
3118
|
+
}
|
|
3119
|
+
|
|
3120
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/debug' {
|
|
3121
|
+
import type { RendererCore } from '@mappedin/core-sdk';
|
|
3122
|
+
export class Debug {
|
|
3123
|
+
state: RendererCore['Debug']['state'];
|
|
3124
|
+
constructor(core: RendererCore);
|
|
3125
|
+
update: RendererCore['Debug']['update'];
|
|
3126
|
+
}
|
|
3031
3127
|
}
|
|
3032
3128
|
|
|
3033
3129
|
declare module '@mappedin/react-sdk/mappedin-js/src/navigation' {
|
|
@@ -3284,6 +3380,11 @@ declare module '@mappedin/react-sdk/mappedin-js/src/search' {
|
|
|
3284
3380
|
export { Search } from '@mappedin/react-sdk/mappedin-js/src/search/external';
|
|
3285
3381
|
}
|
|
3286
3382
|
|
|
3383
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/query' {
|
|
3384
|
+
export { Query } from '@mappedin/react-sdk/mappedin-js/src/query/external';
|
|
3385
|
+
export type { TFindNearestOptions, TFindNearestResult, TQueriables } from '@mappedin/react-sdk/mappedin-js/src/query/external';
|
|
3386
|
+
}
|
|
3387
|
+
|
|
3287
3388
|
declare module '@mappedin/react-sdk/mappedin-js/src/analytics' {
|
|
3288
3389
|
export { Analytics, AnalyticsInternal } from '@mappedin/react-sdk/mappedin-js/src/analytics/customer';
|
|
3289
3390
|
export type { AnalyticsUpdateOptions, AnalyticState, TAnalyticsUpdateState } from '@mappedin/react-sdk/mappedin-js/src/analytics/customer';
|
|
@@ -4167,6 +4268,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects/space' {
|
|
|
4167
4268
|
* @internal
|
|
4168
4269
|
*/
|
|
4169
4270
|
readonly __type = "space";
|
|
4271
|
+
getMvfData(): import("@mappedin/mvf").Feature<import("@mappedin/mvf").Point | import("@mappedin/mvf").LineString | import("@mappedin/mvf").Polygon, import("@mappedin/mvf").SpaceProperties>;
|
|
4170
4272
|
/**
|
|
4171
4273
|
* Checks if the provided instance is of type Space.
|
|
4172
4274
|
*
|
|
@@ -4960,7 +5062,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects/image' {
|
|
|
4960
5062
|
|
|
4961
5063
|
declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects/floor-stack' {
|
|
4962
5064
|
import type { FloorStack as MVFFloorStack } from '@mappedin/mvf';
|
|
4963
|
-
import type { MapDataInternal, Floor } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
5065
|
+
import type { MapDataInternal, Floor, Facade } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
4964
5066
|
import BaseMapData from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/base-object';
|
|
4965
5067
|
/**
|
|
4966
5068
|
* A class representing floor stack data within the map.
|
|
@@ -4989,6 +5091,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects/floor-stack
|
|
|
4989
5091
|
*/
|
|
4990
5092
|
constructor(data: MapDataInternal, options: {
|
|
4991
5093
|
mvfData: MVFFloorStack;
|
|
5094
|
+
facadeId?: string;
|
|
4992
5095
|
});
|
|
4993
5096
|
/**
|
|
4994
5097
|
* Gets the type of FloorStack.
|
|
@@ -5009,7 +5112,15 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects/floor-stack
|
|
|
5009
5112
|
*
|
|
5010
5113
|
* @returns {Floor[]} An array of Floor objects in this FloorStack.
|
|
5011
5114
|
*/
|
|
5012
|
-
get floors(): Floor[];
|
|
5115
|
+
get floors(): [Floor, ...Floor[]];
|
|
5116
|
+
/**
|
|
5117
|
+
* Get the default floor for this floor stack
|
|
5118
|
+
*/
|
|
5119
|
+
get defaultFloor(): Floor;
|
|
5120
|
+
/**
|
|
5121
|
+
* Gets the facade ({@link Facade}) representing this floor stack, if it exists.
|
|
5122
|
+
*/
|
|
5123
|
+
get facade(): Facade | undefined;
|
|
5013
5124
|
/**
|
|
5014
5125
|
* Serializes the FloorStack data to JSON.
|
|
5015
5126
|
*
|
|
@@ -5031,20 +5142,58 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects/floor-stack
|
|
|
5031
5142
|
export default FloorStack;
|
|
5032
5143
|
}
|
|
5033
5144
|
|
|
5145
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/map-data-objects/facade' {
|
|
5146
|
+
import type { Space, MapDataInternal } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
5147
|
+
import { Coordinate } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
5148
|
+
import BaseMapData from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/base-object';
|
|
5149
|
+
import type { Facade as MVFFacade } from '@mappedin/mvf';
|
|
5150
|
+
/**
|
|
5151
|
+
* A Facade is a collection of spaces that make up the exterior representation of a Floor Stack ({@link FloorStack}).
|
|
5152
|
+
*/
|
|
5153
|
+
class Facade extends BaseMapData {
|
|
5154
|
+
#private;
|
|
5155
|
+
static readonly __type = "facade";
|
|
5156
|
+
readonly __type = "facade";
|
|
5157
|
+
/**
|
|
5158
|
+
* Checks if the provided instance is of type Floor.
|
|
5159
|
+
*
|
|
5160
|
+
* @param instance The instance to check.
|
|
5161
|
+
* @returns {boolean} True if the instance is a Floor, false otherwise.
|
|
5162
|
+
*/
|
|
5163
|
+
static is(instance: object): instance is Facade;
|
|
5164
|
+
/** @internal */
|
|
5165
|
+
constructor(data: MapDataInternal, options: {
|
|
5166
|
+
mvfData: MVFFacade;
|
|
5167
|
+
floorStackId: string;
|
|
5168
|
+
});
|
|
5169
|
+
/**
|
|
5170
|
+
* Gets the floor stack that this Facade represents.
|
|
5171
|
+
*/
|
|
5172
|
+
get floorStack(): import("./floor-stack").default;
|
|
5173
|
+
/**
|
|
5174
|
+
* Gets the collection of spaces that make up this Facade.
|
|
5175
|
+
*/
|
|
5176
|
+
get spaces(): Space[];
|
|
5177
|
+
/**
|
|
5178
|
+
* Gets the center {@link Coordinate} of the Facade.
|
|
5179
|
+
*/
|
|
5180
|
+
get center(): Coordinate;
|
|
5181
|
+
}
|
|
5182
|
+
export default Facade;
|
|
5183
|
+
}
|
|
5184
|
+
|
|
5034
5185
|
declare module '@mappedin/react-sdk/mappedin-js/src/utils/data-creation' {
|
|
5035
|
-
import type {
|
|
5186
|
+
import type { AnnotationCollection, EntranceCollection, Feature, FeatureCollection, Connection as MVFConnection, EnterpriseCategory as MVFEnterpriseCategory, EnterpriseCategoryId as MVFEnterpriseCategoryId, EnterpriseLocation as MVFEnterpriseLocation, EnterpriseLocationId as MVFEnterpriseLocationId, EnterpriseVenue as MVFEnterpriseVenue, FloorProperties as MVFFloor, FloorStack as MVFFloorStack, NodeCollection, ObstructionCollection, ParsedMVF, Point, SpaceCollection, SpaceProperties, AreaCollection, AreaId, EnterpriseLocationInstance } from '@mappedin/mvf';
|
|
5036
5187
|
import type { MapDataInternal } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
5037
|
-
import { Annotation, Connection, Door, Floor, MapObject, PointOfInterest, Space
|
|
5038
|
-
import Node from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/node';
|
|
5039
|
-
import EnterpriseLocation from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/location';
|
|
5040
|
-
import EnterpriseCategory from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/category';
|
|
5041
|
-
import FloorStack from '@mappedin/react-sdk/mappedin-js/src/map-data-objects/floor-stack';
|
|
5188
|
+
import { Annotation, Area, Connection, Door, EnterpriseCategory, EnterpriseLocation, Facade, Floor, FloorStack, MapObject, Node, PointOfInterest, Space } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
5042
5189
|
export type MapDataRecords = {
|
|
5043
5190
|
spacesById: Record<string, Space>;
|
|
5044
5191
|
nodesById: Record<string, Node>;
|
|
5045
5192
|
objectsById: Record<string, MapObject>;
|
|
5046
5193
|
floorsById: Record<string, Floor>;
|
|
5047
5194
|
floorStacksById: Record<string, FloorStack>;
|
|
5195
|
+
facadesById: Record<string, Facade>;
|
|
5196
|
+
facadesBySpaceId: Record<string, Facade>;
|
|
5048
5197
|
connectionsById: Record<string, Connection>;
|
|
5049
5198
|
doorsById: Record<string, Door>;
|
|
5050
5199
|
doorsByNodeId: Record<string, Door>;
|
|
@@ -5071,10 +5220,25 @@ declare module '@mappedin/react-sdk/mappedin-js/src/utils/data-creation' {
|
|
|
5071
5220
|
mvfCategoriesById: Record<string, MVFEnterpriseCategory>;
|
|
5072
5221
|
mvfLocationsById: Record<string, MVFEnterpriseLocation>;
|
|
5073
5222
|
mvfLocationsBySpaceId: Record<string, MVFEnterpriseLocation[]>;
|
|
5223
|
+
mvfNodesByFloorId: {
|
|
5224
|
+
[floorId: string]: NodeCollection['features'][number][];
|
|
5225
|
+
};
|
|
5226
|
+
mvfSpacesByFloorId: {
|
|
5227
|
+
[floorId: string]: SpaceCollection['features'][number][];
|
|
5228
|
+
};
|
|
5229
|
+
mvfPoisByFloorId: {
|
|
5230
|
+
[floorId: string]: FeatureCollection<Point, SpaceProperties>['features'][number][];
|
|
5231
|
+
};
|
|
5232
|
+
mvfEntrancesByFloorId: {
|
|
5233
|
+
[floorId: string]: EntranceCollection['features'][number][];
|
|
5234
|
+
};
|
|
5235
|
+
mvfAnnotationsByFloorId: {
|
|
5236
|
+
[floorId: string]: AnnotationCollection['features'][number][];
|
|
5237
|
+
};
|
|
5074
5238
|
mvfAreasById: Record<AreaId, AreaCollection['features'][number]>;
|
|
5075
5239
|
};
|
|
5076
5240
|
export const processMVFFloors: (mvf: ParsedMVF, data: MapDataInternal) => Pick<MapDataRecords, "floorsById" | "mvfFloorsById">;
|
|
5077
|
-
export const processMVFFloorStacks: (mvf: ParsedMVF, data: MapDataInternal) => Pick<MapDataRecords, "floorStacksById" | "mvfFloorStacksById">;
|
|
5241
|
+
export const processMVFFloorStacks: (mvf: ParsedMVF, data: MapDataInternal) => Pick<MapDataRecords, "floorStacksById" | "mvfFloorStacksById" | "facadesById" | "facadesBySpaceId">;
|
|
5078
5242
|
export const processMVFAreas: (mvf: ParsedMVF, data: MapDataInternal) => Pick<MapDataRecords, "areasById" | "mvfAreasById">;
|
|
5079
5243
|
/**
|
|
5080
5244
|
* @internal
|
|
@@ -5098,6 +5262,8 @@ declare module '@mappedin/react-sdk/mappedin-js/src/utils/data-creation' {
|
|
|
5098
5262
|
objectsById: Record<string, MapObject>;
|
|
5099
5263
|
floorsById: Record<string, Floor>;
|
|
5100
5264
|
floorStacksById: Record<string, FloorStack>;
|
|
5265
|
+
facadesById: Record<string, Facade>;
|
|
5266
|
+
facadesBySpaceId: Record<string, Facade>;
|
|
5101
5267
|
connectionsById: Record<string, Connection>;
|
|
5102
5268
|
doorsById: Record<string, Door>;
|
|
5103
5269
|
doorsByNodeId: Record<string, Door>;
|
|
@@ -5121,7 +5287,26 @@ declare module '@mappedin/react-sdk/mappedin-js/src/utils/data-creation' {
|
|
|
5121
5287
|
geometry: Point;
|
|
5122
5288
|
properties: import("@mappedin/mvf").AnnotationProperties;
|
|
5123
5289
|
}>;
|
|
5290
|
+
mvfNodesByFloorId: {
|
|
5291
|
+
[floorId: string]: Feature<Point, import("@mappedin/mvf").NodeProperties>[];
|
|
5292
|
+
};
|
|
5293
|
+
mvfSpacesByFloorId: {
|
|
5294
|
+
[floorId: string]: Feature<Point | import("@mappedin/mvf").LineString | import("@mappedin/mvf").Polygon, SpaceProperties>[];
|
|
5295
|
+
};
|
|
5296
|
+
mvfPoisByFloorId: {
|
|
5297
|
+
[floorId: string]: Feature<Point, SpaceProperties>[];
|
|
5298
|
+
};
|
|
5124
5299
|
mvfAreasById: Record<string, import("@mappedin/mvf").Area>;
|
|
5300
|
+
mvfEntrancesByFloorId: {
|
|
5301
|
+
[floorId: string]: Feature<import("@mappedin/mvf").LineString, import("@mappedin/mvf").EntranceProperties>[];
|
|
5302
|
+
};
|
|
5303
|
+
mvfAnnotationsByFloorId: {
|
|
5304
|
+
[floorId: string]: {
|
|
5305
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
5306
|
+
geometry: Point;
|
|
5307
|
+
properties: import("@mappedin/mvf").AnnotationProperties;
|
|
5308
|
+
}[];
|
|
5309
|
+
};
|
|
5125
5310
|
};
|
|
5126
5311
|
}
|
|
5127
5312
|
|
|
@@ -5250,6 +5435,11 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/inspector/inspec
|
|
|
5250
5435
|
export type InspectorOption = Partial<InspectorState>;
|
|
5251
5436
|
}
|
|
5252
5437
|
|
|
5438
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/types' {
|
|
5439
|
+
import type { GeojsonApiMapObject } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object';
|
|
5440
|
+
export type CurrentMapGetter = () => GeojsonApiMapObject | undefined;
|
|
5441
|
+
}
|
|
5442
|
+
|
|
5253
5443
|
declare module '@mappedin/react-sdk/geojson/src/components/marker' {
|
|
5254
5444
|
import './marker.scss';
|
|
5255
5445
|
import { Vector2 } from 'three';
|
|
@@ -5257,7 +5447,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/marker' {
|
|
|
5257
5447
|
import type { GroupContainerState } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
5258
5448
|
import type { CollisionRankingTier } from '@mappedin/react-sdk/geojson/src/utils/collision-ranking-tier';
|
|
5259
5449
|
import { z } from 'zod';
|
|
5260
|
-
import type
|
|
5450
|
+
import { type PackedBBoxes } from '@mappedin/react-sdk/geojson/src/systems/collisions/system';
|
|
5261
5451
|
/**
|
|
5262
5452
|
* State reprsenting a Marker
|
|
5263
5453
|
*/
|
|
@@ -5313,14 +5503,14 @@ declare module '@mappedin/react-sdk/geojson/src/components/marker' {
|
|
|
5313
5503
|
}, "strip", z.ZodTypeAny, {
|
|
5314
5504
|
interactive?: boolean | "pointer-events-auto" | undefined;
|
|
5315
5505
|
id?: string | undefined;
|
|
5316
|
-
anchor?: "center" | "left" | "right" | "
|
|
5317
|
-
rank?: number | "
|
|
5506
|
+
anchor?: "center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | ("center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right")[] | undefined;
|
|
5507
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5318
5508
|
dynamicResize?: boolean | undefined;
|
|
5319
5509
|
}, {
|
|
5320
5510
|
interactive?: boolean | "pointer-events-auto" | undefined;
|
|
5321
5511
|
id?: string | undefined;
|
|
5322
|
-
anchor?: "center" | "left" | "right" | "
|
|
5323
|
-
rank?: number | "
|
|
5512
|
+
anchor?: "center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | ("center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right")[] | undefined;
|
|
5513
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5324
5514
|
dynamicResize?: boolean | undefined;
|
|
5325
5515
|
}>;
|
|
5326
5516
|
export function validateMarker(coordinate: Position, contentHTML: string, options: AddMarkerOptions): void;
|
|
@@ -5411,7 +5601,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/marker' {
|
|
|
5411
5601
|
|
|
5412
5602
|
declare module '@mappedin/react-sdk/geojson/src/components/path' {
|
|
5413
5603
|
import { Vector3 } from 'three';
|
|
5414
|
-
import type {
|
|
5604
|
+
import type { BufferGeometry, LineSegments } from 'three';
|
|
5415
5605
|
import type { EntityId, Position } from '@mappedin/react-sdk/geojson/src/types';
|
|
5416
5606
|
import type { PathMaterial, PatMeshContainer } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
5417
5607
|
import type { FeatureCollection, Point } from 'geojson';
|
|
@@ -5590,7 +5780,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/path' {
|
|
|
5590
5780
|
mesh: PatMeshContainer;
|
|
5591
5781
|
material?: PathMaterial;
|
|
5592
5782
|
geometry?: BufferGeometry;
|
|
5593
|
-
outline?:
|
|
5783
|
+
outline?: LineSegments;
|
|
5594
5784
|
feature: FeatureCollection<Point, PathProperties>;
|
|
5595
5785
|
options: AddPathOptions;
|
|
5596
5786
|
nearRadius: number;
|
|
@@ -5706,6 +5896,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5706
5896
|
foregroundColor?: string | undefined;
|
|
5707
5897
|
backgroundColor?: string | undefined;
|
|
5708
5898
|
} | undefined;
|
|
5899
|
+
margin?: number | undefined;
|
|
5709
5900
|
marker?: {
|
|
5710
5901
|
size?: number | undefined;
|
|
5711
5902
|
foregroundColor?: {
|
|
@@ -5717,7 +5908,6 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5717
5908
|
inactive?: string | undefined;
|
|
5718
5909
|
} | undefined;
|
|
5719
5910
|
} | undefined;
|
|
5720
|
-
margin?: number | undefined;
|
|
5721
5911
|
}, {
|
|
5722
5912
|
text?: {
|
|
5723
5913
|
size?: number | undefined;
|
|
@@ -5727,6 +5917,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5727
5917
|
foregroundColor?: string | undefined;
|
|
5728
5918
|
backgroundColor?: string | undefined;
|
|
5729
5919
|
} | undefined;
|
|
5920
|
+
margin?: number | undefined;
|
|
5730
5921
|
marker?: {
|
|
5731
5922
|
size?: number | undefined;
|
|
5732
5923
|
foregroundColor?: {
|
|
@@ -5738,11 +5929,10 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5738
5929
|
inactive?: string | undefined;
|
|
5739
5930
|
} | undefined;
|
|
5740
5931
|
} | undefined;
|
|
5741
|
-
margin?: number | undefined;
|
|
5742
5932
|
}>>;
|
|
5743
5933
|
}, "strip", z.ZodTypeAny, {
|
|
5744
5934
|
interactive?: boolean | undefined;
|
|
5745
|
-
rank?: number | "
|
|
5935
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5746
5936
|
appearance?: {
|
|
5747
5937
|
text?: {
|
|
5748
5938
|
size?: number | undefined;
|
|
@@ -5752,6 +5942,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5752
5942
|
foregroundColor?: string | undefined;
|
|
5753
5943
|
backgroundColor?: string | undefined;
|
|
5754
5944
|
} | undefined;
|
|
5945
|
+
margin?: number | undefined;
|
|
5755
5946
|
marker?: {
|
|
5756
5947
|
size?: number | undefined;
|
|
5757
5948
|
foregroundColor?: {
|
|
@@ -5763,11 +5954,10 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5763
5954
|
inactive?: string | undefined;
|
|
5764
5955
|
} | undefined;
|
|
5765
5956
|
} | undefined;
|
|
5766
|
-
margin?: number | undefined;
|
|
5767
5957
|
} | undefined;
|
|
5768
5958
|
}, {
|
|
5769
5959
|
interactive?: boolean | undefined;
|
|
5770
|
-
rank?: number | "
|
|
5960
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5771
5961
|
appearance?: {
|
|
5772
5962
|
text?: {
|
|
5773
5963
|
size?: number | undefined;
|
|
@@ -5777,6 +5967,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5777
5967
|
foregroundColor?: string | undefined;
|
|
5778
5968
|
backgroundColor?: string | undefined;
|
|
5779
5969
|
} | undefined;
|
|
5970
|
+
margin?: number | undefined;
|
|
5780
5971
|
marker?: {
|
|
5781
5972
|
size?: number | undefined;
|
|
5782
5973
|
foregroundColor?: {
|
|
@@ -5788,7 +5979,6 @@ declare module '@mappedin/react-sdk/geojson/src/components/label' {
|
|
|
5788
5979
|
inactive?: string | undefined;
|
|
5789
5980
|
} | undefined;
|
|
5790
5981
|
} | undefined;
|
|
5791
|
-
margin?: number | undefined;
|
|
5792
5982
|
} | undefined;
|
|
5793
5983
|
}>;
|
|
5794
5984
|
export function validateLabel(coordinate: Position, text: string, options: AddLabelOptions): void;
|
|
@@ -6135,9 +6325,12 @@ declare module '@mappedin/react-sdk/geojson/src/entities/group-container' {
|
|
|
6135
6325
|
import type { StackComponent } from '@mappedin/react-sdk/geojson/src/components/stack';
|
|
6136
6326
|
import type { MarkerState } from '@mappedin/react-sdk/geojson/src/components/marker';
|
|
6137
6327
|
import type { LabelState } from '@mappedin/react-sdk/geojson/src/components/label';
|
|
6328
|
+
import type { Geometry3DTypes } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
6138
6329
|
import { Geometry3D } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
6139
6330
|
import type { PathState } from '@mappedin/react-sdk/geojson/src/components/path';
|
|
6140
6331
|
import type { InteractionComponent } from '@mappedin/react-sdk/geojson/src/components/interaction';
|
|
6332
|
+
import type { BatchedText } from '@mappedin/react-sdk/geojson/src/services/text3d/text3d';
|
|
6333
|
+
import type { EntityTypes } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
6141
6334
|
export enum GroupContainerComponents {
|
|
6142
6335
|
Stack = 0,
|
|
6143
6336
|
Interaction = 1
|
|
@@ -6164,7 +6357,8 @@ declare module '@mappedin/react-sdk/geojson/src/entities/group-container' {
|
|
|
6164
6357
|
};
|
|
6165
6358
|
export class GroupContainerObject3D extends Object3D {
|
|
6166
6359
|
childrenIds: Set<string | number>;
|
|
6167
|
-
|
|
6360
|
+
children: (GroupContainerObject3D | GeometryGroupObject3D | BatchedText | Geometry2D['object3d'] | NonNullable<Geometry3D['object3d']>)[];
|
|
6361
|
+
readonly type: "group-container";
|
|
6168
6362
|
userData: {
|
|
6169
6363
|
entityId: string | number;
|
|
6170
6364
|
entities2D: Set<string | number>;
|
|
@@ -6172,8 +6366,8 @@ declare module '@mappedin/react-sdk/geojson/src/entities/group-container' {
|
|
|
6172
6366
|
};
|
|
6173
6367
|
components: [StackComponent?, InteractionComponent?];
|
|
6174
6368
|
constructor(id: string);
|
|
6175
|
-
addEntity(entityGroupOrContainer: GroupContainerObject3D | GeometryGroupObject3D | Geometry2D |
|
|
6176
|
-
removeEntity(entityGroupOrContainer:
|
|
6369
|
+
addEntity(entityGroupOrContainer: GroupContainerObject3D | GeometryGroupObject3D | Geometry2D | Geometry3DTypes): void;
|
|
6370
|
+
removeEntity(entityGroupOrContainer: EntityTypes): void;
|
|
6177
6371
|
setVisible(visible: boolean): void;
|
|
6178
6372
|
setAltitude(altitude: number): void;
|
|
6179
6373
|
get altitude(): number;
|
|
@@ -6253,7 +6447,7 @@ declare module '@mappedin/react-sdk/geojson/src/entities/geometry-group' {
|
|
|
6253
6447
|
export type ChildUpdatable<T> = T extends LineStyle ? Partial<Pick<LineStyle, 'color' | 'opacity' | 'visible'>> : Partial<Pick<PaintStyle, 'color' | 'opacity' | 'visible'>>;
|
|
6254
6448
|
export class GeometryGroupObject3D extends Object3D {
|
|
6255
6449
|
visible: boolean;
|
|
6256
|
-
readonly type
|
|
6450
|
+
readonly type: "geometry-group";
|
|
6257
6451
|
components: [GeometryGroupStyleComponent];
|
|
6258
6452
|
userData: {
|
|
6259
6453
|
entityId: string | number;
|
|
@@ -6284,7 +6478,8 @@ declare module '@mappedin/react-sdk/geojson/src/types/geometry' {
|
|
|
6284
6478
|
}
|
|
6285
6479
|
|
|
6286
6480
|
declare module '@mappedin/react-sdk/geojson/src/types' {
|
|
6287
|
-
import {
|
|
6481
|
+
import type { Camera } from 'three';
|
|
6482
|
+
import { Mesh, Object3D, InstancedMesh } from 'three';
|
|
6288
6483
|
import type { Geometry2D } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
|
|
6289
6484
|
import type { Position } from '@mappedin/react-sdk/geojson/src/types/geometry';
|
|
6290
6485
|
import type { GeometryState } from '@mappedin/react-sdk/geojson/src/components/mesh';
|
|
@@ -6296,13 +6491,14 @@ declare module '@mappedin/react-sdk/geojson/src/types' {
|
|
|
6296
6491
|
import type { MarkerState } from '@mappedin/react-sdk/geojson/src/components/marker';
|
|
6297
6492
|
import type { ImageState } from '@mappedin/react-sdk/geojson/src/components/image';
|
|
6298
6493
|
import type { ShapeState } from '@mappedin/react-sdk/geojson/src/components/custom';
|
|
6299
|
-
import type { Geometry3D } from '@mappedin/react-sdk/geojson/src/entities';
|
|
6300
6494
|
import type { Group as TweenGroup } from '@tweenjs/tween.js';
|
|
6301
|
-
import { MaterialSide } from '@mappedin/react-sdk/geojson/src/components/
|
|
6495
|
+
import type { MaterialSide } from '@mappedin/react-sdk/geojson/src/components/styles';
|
|
6496
|
+
import type { Geometry3DTypes } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
6497
|
+
import type { Text3DState } from '@mappedin/react-sdk/geojson/src/components/text3d';
|
|
6302
6498
|
/**
|
|
6303
6499
|
* The state of an entity, which can be a geometry, geometry group, group container, path, model, label, or marker.
|
|
6304
6500
|
*/
|
|
6305
|
-
export type EntityState = GeometryState | GeometryGroupState | GroupContainerState | PathState | ModelState | LabelState | MarkerState | ImageState | ShapeState;
|
|
6501
|
+
export type EntityState = GeometryState | GeometryGroupState | GroupContainerState | PathState | ModelState | LabelState | MarkerState | ImageState | Text3DState | ShapeState;
|
|
6306
6502
|
/**
|
|
6307
6503
|
* A wrapper object that contains the ID and type of an entity. This is returned when adding entities to the scene, and can be used
|
|
6308
6504
|
* to `getState` and `setState` of the entity.
|
|
@@ -6554,10 +6750,10 @@ declare module '@mappedin/react-sdk/geojson/src/types' {
|
|
|
6554
6750
|
*/
|
|
6555
6751
|
'user-interaction-end': undefined;
|
|
6556
6752
|
/**
|
|
6557
|
-
* Fired when a geometry is in focus, meaning it occupies the area closest to the center of the screen.
|
|
6753
|
+
* Fired when a geometry is in focus, meaning it occupies the area closest to the center of the screen. Is an array of geometry IDs sorted by most likely to be in focus.
|
|
6558
6754
|
* Geometries can be added to the focus listener via `mapView.setState(.., { focusable: true })`.
|
|
6559
6755
|
*/
|
|
6560
|
-
'geometry-in-focus': string
|
|
6756
|
+
'geometry-in-focus': string[];
|
|
6561
6757
|
/**
|
|
6562
6758
|
* Fired before the scene is rendered. Use this to modify the scene before it is rendered.
|
|
6563
6759
|
*/
|
|
@@ -6569,14 +6765,18 @@ declare module '@mappedin/react-sdk/geojson/src/types' {
|
|
|
6569
6765
|
export type MapEventPayload<EventName extends keyof MapEvent> = MapEvent[EventName] extends {
|
|
6570
6766
|
data: null;
|
|
6571
6767
|
} ? MapEvent[EventName]['data'] : MapEvent[EventName];
|
|
6572
|
-
|
|
6768
|
+
/**
|
|
6769
|
+
* All entities in 3D
|
|
6770
|
+
*/
|
|
6771
|
+
export type All3DTypes = Geometry3DTypes | GeometryGroupObject3D | GroupContainerObject3D;
|
|
6573
6772
|
export type RendererState = {
|
|
6574
|
-
geometry3DMap: Map<string | number,
|
|
6773
|
+
geometry3DMap: Map<string | number, All3DTypes>;
|
|
6575
6774
|
geometry2DMap: Map<string | number, Geometry2D>;
|
|
6576
6775
|
geometry2DIdsInScene: Set<Geometry2D['id']>;
|
|
6577
|
-
geometry3DIdsInScene: Set<
|
|
6776
|
+
geometry3DIdsInScene: Set<All3DTypes['id']>;
|
|
6578
6777
|
entityScene: GroupContainerObject3D;
|
|
6579
6778
|
hoverColor: string;
|
|
6779
|
+
text3dHoverColor: string;
|
|
6580
6780
|
center?: Position;
|
|
6581
6781
|
insetsPadding: InsetPadding;
|
|
6582
6782
|
shouldMeasureCanvas: boolean;
|
|
@@ -6590,10 +6790,14 @@ declare module '@mappedin/react-sdk/geojson/src/types' {
|
|
|
6590
6790
|
tweenGroup: TweenGroup;
|
|
6591
6791
|
cameraObject: Camera;
|
|
6592
6792
|
};
|
|
6793
|
+
/**
|
|
6794
|
+
* All of the entities in the scene
|
|
6795
|
+
*/
|
|
6796
|
+
export type EntityTypes = Geometry3DTypes | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D;
|
|
6593
6797
|
}
|
|
6594
6798
|
|
|
6595
6799
|
declare module '@mappedin/react-sdk/geojson/src/components/mesh' {
|
|
6596
|
-
import type { Texture, BufferGeometry, LineSegments, Mesh
|
|
6800
|
+
import type { Texture, BufferGeometry, LineSegments, Mesh } from 'three';
|
|
6597
6801
|
import { BatchedMesh, Color, Vector3 } from 'three';
|
|
6598
6802
|
import type { BatchedStandardMaterial } from '@mappedin/react-sdk/geojson/src/systems/mesh-creation-and-optimization/batched-material';
|
|
6599
6803
|
import type { Position } from '@mappedin/react-sdk/geojson/src/types';
|
|
@@ -6601,7 +6805,9 @@ declare module '@mappedin/react-sdk/geojson/src/components/mesh' {
|
|
|
6601
6805
|
import type { BBox } from '@turf/turf';
|
|
6602
6806
|
import { type ImageProperties } from '@mappedin/react-sdk/geojson/src/components/image';
|
|
6603
6807
|
import { type BaseTextAreaProperties } from '@mappedin/mvf';
|
|
6808
|
+
import type { Text } from 'troika-three-text';
|
|
6604
6809
|
export class EntityBatchedMesh extends BatchedMesh {
|
|
6810
|
+
type: "entityBatchedMesh";
|
|
6605
6811
|
userData: {
|
|
6606
6812
|
entities: {
|
|
6607
6813
|
[key: number]: string | number;
|
|
@@ -6610,6 +6816,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/mesh' {
|
|
|
6610
6816
|
};
|
|
6611
6817
|
}
|
|
6612
6818
|
export type MeshComponentProperties = {
|
|
6819
|
+
id: string;
|
|
6613
6820
|
image?: ImageProperties & {
|
|
6614
6821
|
position: GeoJsonPosition;
|
|
6615
6822
|
path: string;
|
|
@@ -6689,6 +6896,14 @@ declare module '@mappedin/react-sdk/geojson/src/components/mesh' {
|
|
|
6689
6896
|
* The top texture URL of the geometry
|
|
6690
6897
|
*/
|
|
6691
6898
|
topTexture?: string;
|
|
6899
|
+
/**
|
|
6900
|
+
* Whether the geometry is currently in hover state or not
|
|
6901
|
+
*/
|
|
6902
|
+
hovered: boolean;
|
|
6903
|
+
/**
|
|
6904
|
+
* The render order of the geometry
|
|
6905
|
+
*/
|
|
6906
|
+
renderOrder?: number;
|
|
6692
6907
|
};
|
|
6693
6908
|
export class MeshComponent {
|
|
6694
6909
|
#private;
|
|
@@ -6696,7 +6911,11 @@ declare module '@mappedin/react-sdk/geojson/src/components/mesh' {
|
|
|
6696
6911
|
focusMesh?: Mesh;
|
|
6697
6912
|
outline?: LineSegments;
|
|
6698
6913
|
imageMesh?: Mesh;
|
|
6699
|
-
|
|
6914
|
+
/**
|
|
6915
|
+
* holds a pointer to space label text if the polygon has label active.
|
|
6916
|
+
*/
|
|
6917
|
+
textMesh?: Text;
|
|
6918
|
+
textEntityId?: string;
|
|
6700
6919
|
readonly type = "geometry";
|
|
6701
6920
|
dirty: boolean;
|
|
6702
6921
|
detached: boolean;
|
|
@@ -6708,7 +6927,8 @@ declare module '@mappedin/react-sdk/geojson/src/components/mesh' {
|
|
|
6708
6927
|
constructor(feature: Feature<Polygon | LineString | MultiPolygon | MultiLineString, MeshComponentProperties>);
|
|
6709
6928
|
get visible(): boolean;
|
|
6710
6929
|
set visible(visible: boolean);
|
|
6711
|
-
|
|
6930
|
+
get renderOrder(): number;
|
|
6931
|
+
set renderOrder(value: number);
|
|
6712
6932
|
focusable: boolean;
|
|
6713
6933
|
color: Color;
|
|
6714
6934
|
topColor: Color;
|
|
@@ -7037,9 +7257,9 @@ declare module '@mappedin/react-sdk/geojson/src/components/model' {
|
|
|
7037
7257
|
outline?: LineSegments;
|
|
7038
7258
|
geometry?: Object3D;
|
|
7039
7259
|
material?: BatchedStandardMaterial;
|
|
7040
|
-
feature: Feature<Point>;
|
|
7260
|
+
feature: Feature<Point, ModelProperties>;
|
|
7041
7261
|
instanceIndex?: number;
|
|
7042
|
-
constructor(feature: Feature<Point>);
|
|
7262
|
+
constructor(feature: Feature<Point, ModelProperties>);
|
|
7043
7263
|
visible: boolean;
|
|
7044
7264
|
setOpacity(): void;
|
|
7045
7265
|
color: Color;
|
|
@@ -7058,14 +7278,14 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7058
7278
|
import type { GroupContainerState } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
7059
7279
|
import { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
7060
7280
|
import { PubSub } from '@mappedin/react-sdk/packages/common/pubsub';
|
|
7281
|
+
import { Renderer } from '@mappedin/react-sdk/geojson/src/services/renderer';
|
|
7061
7282
|
import { CollisionSystem } from '@mappedin/react-sdk/geojson/src/systems/collisions/system';
|
|
7062
7283
|
import { InteractionSystem } from '@mappedin/react-sdk/geojson/src/systems/interactions';
|
|
7063
|
-
import { ZoomInterpolationSystem } from '@mappedin/react-sdk/geojson/src/systems/zoom-interpolation/zoom-interpolation';
|
|
7064
7284
|
import type { AddMarkerOptions, MarkerState } from '@mappedin/react-sdk/geojson/src/components/marker';
|
|
7065
7285
|
import type { GLTFExportOptions } from '@mappedin/react-sdk/geojson/src/systems/exporter';
|
|
7066
7286
|
import { ExporterSystem } from '@mappedin/react-sdk/geojson/src/systems/exporter';
|
|
7067
7287
|
import type { AddLabelOptions, LabelState } from '@mappedin/react-sdk/geojson/src/components/label';
|
|
7068
|
-
import type { LineStyle, PaintStyle, RendererCoreOptions, Position, ModelProperties, ModelStyle, EntityState, EntityId, MapEvent, MapEventPayload, RendererState } from '@mappedin/react-sdk/geojson/src/types';
|
|
7288
|
+
import type { LineStyle, PaintStyle, RendererCoreOptions, Position, ModelProperties, ModelStyle, EntityState, EntityId, MapEvent, MapEventPayload, RendererState, EntityTypes } from '@mappedin/react-sdk/geojson/src/types';
|
|
7069
7289
|
import { MeshCreationAndOptimizationSystem } from '@mappedin/react-sdk/geojson/src/systems/mesh-creation-and-optimization/system';
|
|
7070
7290
|
import { DOMVisibilitySystem } from '@mappedin/react-sdk/geojson/src/systems/dom-visiblity/system';
|
|
7071
7291
|
import { TwoDProjectionSystem } from '@mappedin/react-sdk/geojson/src/systems/2d-projection/system';
|
|
@@ -7095,11 +7315,13 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7095
7315
|
import { OutdoorLayers } from '@mappedin/react-sdk/geojson/src/systems/outdoor-layers/system';
|
|
7096
7316
|
import { PathSystem } from '@mappedin/react-sdk/geojson/src/systems/path';
|
|
7097
7317
|
import { type ImageProperties, type ImageState, type ImageStyle } from '@mappedin/react-sdk/geojson/src/components/image';
|
|
7318
|
+
import type { AddText3DOptions, Text3DState, UpdatableText3DState } from '@mappedin/react-sdk/geojson/src/components/text3d';
|
|
7098
7319
|
import { MeshDetachmentSystem } from '@mappedin/react-sdk/geojson/src/systems/mesh-detachment/system';
|
|
7099
7320
|
import { MeshModificationSystem } from '@mappedin/react-sdk/geojson/src/systems/mesh-modification/system';
|
|
7100
7321
|
import { PreRenderSystem } from '@mappedin/react-sdk/geojson/src/systems/pre-render/system';
|
|
7101
|
-
import {
|
|
7322
|
+
import { Text3DSystem } from '@mappedin/react-sdk/geojson/src/systems/text3d/system';
|
|
7102
7323
|
import { Group as TweenGroup } from '@tweenjs/tween.js';
|
|
7324
|
+
import { Debug } from '@mappedin/react-sdk/geojson/src/utils/debug';
|
|
7103
7325
|
export type * from '@mappedin/react-sdk/geojson/src/types';
|
|
7104
7326
|
export const raycaster: Raycaster;
|
|
7105
7327
|
/**
|
|
@@ -7119,7 +7341,6 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7119
7341
|
panBoundsSystem: PanBoundsSystem;
|
|
7120
7342
|
collisionSystem: CollisionSystem;
|
|
7121
7343
|
interactionSystem: InteractionSystem;
|
|
7122
|
-
zoomInterpolationSystem: ZoomInterpolationSystem;
|
|
7123
7344
|
meshOptimizationSystem: MeshCreationAndOptimizationSystem;
|
|
7124
7345
|
domVisiblitySystem: DOMVisibilitySystem;
|
|
7125
7346
|
domMutationSystem: DOMResizeSystem;
|
|
@@ -7142,16 +7363,18 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7142
7363
|
meshDetachmentSystem: MeshDetachmentSystem;
|
|
7143
7364
|
meshModificationSystem: MeshModificationSystem;
|
|
7144
7365
|
preRenderSystem: PreRenderSystem;
|
|
7145
|
-
|
|
7366
|
+
text3DSystem: Text3DSystem;
|
|
7146
7367
|
};
|
|
7147
7368
|
export type MapViewState = {
|
|
7148
7369
|
readonly type: 'map-view';
|
|
7149
|
-
hoverColor
|
|
7370
|
+
hoverColor: string;
|
|
7371
|
+
text3dHoverColor: string;
|
|
7150
7372
|
};
|
|
7151
7373
|
class Core extends PubSub<MapEvent> {
|
|
7152
7374
|
#private;
|
|
7153
7375
|
options: Omit<RendererCoreOptions, 'outdoorView'>;
|
|
7154
7376
|
container: HTMLElement;
|
|
7377
|
+
Debug: Debug;
|
|
7155
7378
|
/**
|
|
7156
7379
|
* The view camera is used for projecting both the outdoor map and our scene
|
|
7157
7380
|
*/
|
|
@@ -7210,6 +7433,31 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7210
7433
|
* Add an HTML Marker at a GeoJSON coordinate.
|
|
7211
7434
|
*/
|
|
7212
7435
|
addMarker2D(coordinate: Position, contentHTML: string, options?: AddMarkerOptions, parent?: EntityId<GroupContainerState> | string | number | null): EntityId<MarkerState> | undefined;
|
|
7436
|
+
/**
|
|
7437
|
+
* Labels an existing 3D geometry with a text area.
|
|
7438
|
+
*
|
|
7439
|
+
* @param meshGeometryId - The ID of the target 3D geometry to label.
|
|
7440
|
+
* @param content - The text content to display.
|
|
7441
|
+
* @param options - Additional options for adding the text label, including:
|
|
7442
|
+
* - parentId: Optional ID of the parent container.
|
|
7443
|
+
* - appearance: Optional appearance settings for the text label.
|
|
7444
|
+
*
|
|
7445
|
+
* @returns An object containing the ID and type of the created or existing text label, or undefined if labeling failed. If geometry is already labeld, the same text id will be returned
|
|
7446
|
+
*
|
|
7447
|
+
* @example
|
|
7448
|
+
* ```typescript
|
|
7449
|
+
* const label = renderer.labelText3D('geometry123', 'Hello World', { parentId: 'parent456', appearance: { color: 'red' } });
|
|
7450
|
+
* if (label) {
|
|
7451
|
+
* console.log(`Label created with ID: ${label.id}`);
|
|
7452
|
+
* }
|
|
7453
|
+
*
|
|
7454
|
+
*/
|
|
7455
|
+
labelText3D(meshGeometryId: string, content: string, options?: AddText3DOptions & {
|
|
7456
|
+
parentId?: string;
|
|
7457
|
+
}): {
|
|
7458
|
+
id: string | number;
|
|
7459
|
+
type: "text3d";
|
|
7460
|
+
} | undefined;
|
|
7213
7461
|
/**
|
|
7214
7462
|
* Add a 2D label at a GeoJSON coordinate.
|
|
7215
7463
|
*/
|
|
@@ -7228,6 +7476,7 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7228
7476
|
* Remove an entity from the renderer and release associated resources.
|
|
7229
7477
|
*/
|
|
7230
7478
|
remove(object: string | number): void;
|
|
7479
|
+
remove(object: EntityTypes): void;
|
|
7231
7480
|
/**
|
|
7232
7481
|
* Show collision boxes for 2D entities for debugging
|
|
7233
7482
|
*/
|
|
@@ -7252,13 +7501,13 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7252
7501
|
* Get the current state of the map view, or any entity that was added, regardless of whether it is visible in the scene
|
|
7253
7502
|
*/
|
|
7254
7503
|
getState(): MapViewState;
|
|
7255
|
-
getState<T extends EntityId<EntityState>>(geometryOrGeometryId: T): T extends EntityId<LabelState> ? LabelState : T extends EntityId<GeometryState> ? GeometryState : T extends EntityId<MarkerState> ? MarkerState : T extends EntityId<GeometryGroupState> ? GeometryGroupState : T extends EntityId<GroupContainerState> ? GroupContainerState : T extends EntityId<ModelState> ? ModelState : T extends EntityId<PathState> ? PathState : T extends EntityId<ShapeState> ? ShapeState : T extends EntityId<ImageState> ? ImageState : EntityState;
|
|
7504
|
+
getState<T extends EntityId<EntityState>>(geometryOrGeometryId: T): T extends EntityId<LabelState> ? LabelState : T extends EntityId<GeometryState> ? GeometryState : T extends EntityId<MarkerState> ? MarkerState : T extends EntityId<GeometryGroupState> ? GeometryGroupState : T extends EntityId<GroupContainerState> ? GroupContainerState : T extends EntityId<ModelState> ? ModelState : T extends EntityId<PathState> ? PathState : T extends EntityId<ShapeState> ? ShapeState : T extends EntityId<ImageState> ? ImageState : T extends EntityId<Text3DState> ? Text3DState : EntityState;
|
|
7256
7505
|
getState(geometryOrGeometryId?: Record<string | number, any> | string | number): EntityState;
|
|
7257
7506
|
getState<T extends EntityState>(geometryOrGeometryId: T['id']): T extends LabelState ? LabelState : T extends GeometryState ? GeometryState : T extends MarkerState ? MarkerState : T extends GeometryGroupState ? GeometryGroupState : T extends GroupContainerState ? GroupContainerState : T extends ModelState ? ModelState : T extends PathState ? PathState : T extends ShapeState ? ShapeState : T extends ImageState ? ImageState : EntityState;
|
|
7258
7507
|
/**
|
|
7259
7508
|
* Set the state of the map view or any entity that was added, regardless of whether it is visible in the scene.
|
|
7260
7509
|
*/
|
|
7261
|
-
setState(object: Partial<MapViewState
|
|
7510
|
+
setState(object: Partial<Omit<MapViewState, 'type'>>): void;
|
|
7262
7511
|
setState<T extends EntityId<LabelState>>(object: T | T['id'], state: Partial<LabelState>): void;
|
|
7263
7512
|
setState<T extends EntityId<MarkerState>>(object: T | T['id'], state: Partial<MarkerState>): void;
|
|
7264
7513
|
setState<T extends EntityId<GeometryGroupState>>(object: T | T['id'], state: Partial<GeometryGroupState>): void;
|
|
@@ -7268,6 +7517,7 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7268
7517
|
setState<T extends EntityId<PathState>>(object: T | T['id'], state: PathUpdateState): void;
|
|
7269
7518
|
setState<T extends EntityId<ModelState>>(object: T | T['id'], state: Partial<ModelState>): void;
|
|
7270
7519
|
setState<T extends EntityId<ImageState>>(object: T | T['id'], state: Partial<ImageState>): void;
|
|
7520
|
+
setState<T extends EntityId<Text3DState>>(object: T | T['id'], state: Partial<UpdatableText3DState>): void;
|
|
7271
7521
|
setState<T extends EntityState>(object: T | T['id'], state: Partial<T>): void;
|
|
7272
7522
|
/**
|
|
7273
7523
|
* Project a screen coordinate to a geographic coordinate
|
|
@@ -7310,6 +7560,10 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7310
7560
|
* Returns the background color of the renderer. Only applies to "standalone mode"
|
|
7311
7561
|
*/
|
|
7312
7562
|
get backgroundColor(): import("three").Color;
|
|
7563
|
+
/**
|
|
7564
|
+
* internal
|
|
7565
|
+
*/
|
|
7566
|
+
getThreeRenderer(): Renderer;
|
|
7313
7567
|
/**
|
|
7314
7568
|
* Returns the current scale of the map in metres per pixel.
|
|
7315
7569
|
*/
|
|
@@ -7343,13 +7597,13 @@ declare module '@mappedin/react-sdk/geojson/src/renderer' {
|
|
|
7343
7597
|
* The render happens in an animation frame, not matter how frequently it is called
|
|
7344
7598
|
* @method render
|
|
7345
7599
|
*/
|
|
7346
|
-
render: () =>
|
|
7600
|
+
render: () => Promise<any> | undefined;
|
|
7347
7601
|
/**
|
|
7348
7602
|
* Perform a synchronous render of the scene. This bypasses the animation frame and renders immediately.
|
|
7349
7603
|
*
|
|
7350
7604
|
* Note: Only use this if you have an animation frame setup elsewhere
|
|
7351
7605
|
*/
|
|
7352
|
-
renderSync: () =>
|
|
7606
|
+
renderSync: () => Promise<any>;
|
|
7353
7607
|
/**
|
|
7354
7608
|
* @internal for testing
|
|
7355
7609
|
*/
|
|
@@ -7607,39 +7861,482 @@ declare module '@mappedin/react-sdk/geojson/src/utils/collision-ranking-tier' {
|
|
|
7607
7861
|
export function convertNumberToCollisionRankingTier(rank: number): CollisionRankingTier;
|
|
7608
7862
|
}
|
|
7609
7863
|
|
|
7610
|
-
declare module '@mappedin/react-sdk/
|
|
7611
|
-
|
|
7612
|
-
}
|
|
7613
|
-
|
|
7614
|
-
|
|
7615
|
-
import type {
|
|
7616
|
-
import {
|
|
7617
|
-
import {
|
|
7618
|
-
import type { CustomLayerInterface } from '@mappedin/react-sdk/packages/outdoor-context-v4';
|
|
7619
|
-
import type { GeometryGroupObject3D } from '@mappedin/react-sdk/geojson/src/entities/geometry-group';
|
|
7864
|
+
declare module '@mappedin/react-sdk/geojson/src/components/text3d' {
|
|
7865
|
+
import type { Position } from '@mappedin/react-sdk/geojson/src/types';
|
|
7866
|
+
import { z } from 'zod';
|
|
7867
|
+
import type { Feature, Point } from 'geojson';
|
|
7868
|
+
import { Geometry3DObject3D } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
7869
|
+
import type { BatchedText, Text } from '@mappedin/react-sdk/geojson/src/services/text3d/text3d';
|
|
7870
|
+
import type { Text3DStyle } from '@mappedin/react-sdk/geojson/src/components/styles';
|
|
7871
|
+
import type { MeshComponentProperties } from '@mappedin/react-sdk/geojson/src/components/mesh';
|
|
7620
7872
|
import type { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
7621
|
-
|
|
7622
|
-
|
|
7623
|
-
|
|
7624
|
-
|
|
7625
|
-
|
|
7626
|
-
|
|
7627
|
-
|
|
7628
|
-
|
|
7629
|
-
|
|
7630
|
-
|
|
7631
|
-
|
|
7632
|
-
|
|
7633
|
-
|
|
7634
|
-
|
|
7635
|
-
|
|
7636
|
-
|
|
7637
|
-
|
|
7638
|
-
|
|
7639
|
-
|
|
7640
|
-
|
|
7641
|
-
|
|
7642
|
-
|
|
7873
|
+
/**
|
|
7874
|
+
* State representing an Text3D
|
|
7875
|
+
*/
|
|
7876
|
+
export type Text3DState = {
|
|
7877
|
+
readonly id: string | number;
|
|
7878
|
+
readonly type: 'text3d';
|
|
7879
|
+
/**
|
|
7880
|
+
* The position of the Text3D in [lon, lat, altitude]
|
|
7881
|
+
*/
|
|
7882
|
+
readonly position: Position;
|
|
7883
|
+
/**
|
|
7884
|
+
* Whether the Text3D is visible
|
|
7885
|
+
*/
|
|
7886
|
+
visible: boolean;
|
|
7887
|
+
/**
|
|
7888
|
+
* Attempt to keep the Text3D facing the camera as much as possible
|
|
7889
|
+
*/
|
|
7890
|
+
flipToFaceCamera: boolean;
|
|
7891
|
+
/**
|
|
7892
|
+
* Content of the text3d
|
|
7893
|
+
*/
|
|
7894
|
+
content: string;
|
|
7895
|
+
} & Text3DStyle;
|
|
7896
|
+
export const text3DStateSchema: z.ZodObject<{
|
|
7897
|
+
visible: z.ZodBoolean;
|
|
7898
|
+
color: z.ZodString;
|
|
7899
|
+
flipToFaceCamera: z.ZodBoolean;
|
|
7900
|
+
font: z.ZodOptional<z.ZodString>;
|
|
7901
|
+
fontSize: z.ZodNumber;
|
|
7902
|
+
margin: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>;
|
|
7903
|
+
outlineColor: z.ZodString;
|
|
7904
|
+
outlineOpacity: z.ZodNumber;
|
|
7905
|
+
outlineBlur: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
|
|
7906
|
+
outlineWidth: z.ZodNumber;
|
|
7907
|
+
outlineOffsetX: z.ZodNumber;
|
|
7908
|
+
outlineOffsetY: z.ZodNumber;
|
|
7909
|
+
strokeWidth: z.ZodNumber;
|
|
7910
|
+
maxWidth: z.ZodOptional<z.ZodNumber>;
|
|
7911
|
+
maxHeight: z.ZodOptional<z.ZodNumber>;
|
|
7912
|
+
strokeOpacity: z.ZodNumber;
|
|
7913
|
+
strokeColor: z.ZodString;
|
|
7914
|
+
fillOpacity: z.ZodNumber;
|
|
7915
|
+
hoverColor: z.ZodOptional<z.ZodString>;
|
|
7916
|
+
id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
|
|
7917
|
+
type: z.ZodLiteral<"text3d">;
|
|
7918
|
+
position: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
|
|
7919
|
+
content: z.ZodString;
|
|
7920
|
+
}, "strip", z.ZodTypeAny, {
|
|
7921
|
+
type: "text3d";
|
|
7922
|
+
id: string | number;
|
|
7923
|
+
color: string;
|
|
7924
|
+
position: [number, number, number];
|
|
7925
|
+
visible: boolean;
|
|
7926
|
+
flipToFaceCamera: boolean;
|
|
7927
|
+
fontSize: number;
|
|
7928
|
+
margin: number | [number, number, number, number];
|
|
7929
|
+
outlineColor: string;
|
|
7930
|
+
outlineOpacity: number;
|
|
7931
|
+
outlineBlur: string | number;
|
|
7932
|
+
outlineWidth: number;
|
|
7933
|
+
outlineOffsetX: number;
|
|
7934
|
+
outlineOffsetY: number;
|
|
7935
|
+
strokeWidth: number;
|
|
7936
|
+
strokeOpacity: number;
|
|
7937
|
+
strokeColor: string;
|
|
7938
|
+
fillOpacity: number;
|
|
7939
|
+
content: string;
|
|
7940
|
+
maxWidth?: number | undefined;
|
|
7941
|
+
font?: string | undefined;
|
|
7942
|
+
maxHeight?: number | undefined;
|
|
7943
|
+
hoverColor?: string | undefined;
|
|
7944
|
+
}, {
|
|
7945
|
+
type: "text3d";
|
|
7946
|
+
id: string | number;
|
|
7947
|
+
color: string;
|
|
7948
|
+
position: [number, number, number];
|
|
7949
|
+
visible: boolean;
|
|
7950
|
+
flipToFaceCamera: boolean;
|
|
7951
|
+
fontSize: number;
|
|
7952
|
+
margin: number | [number, number, number, number];
|
|
7953
|
+
outlineColor: string;
|
|
7954
|
+
outlineOpacity: number;
|
|
7955
|
+
outlineBlur: string | number;
|
|
7956
|
+
outlineWidth: number;
|
|
7957
|
+
outlineOffsetX: number;
|
|
7958
|
+
outlineOffsetY: number;
|
|
7959
|
+
strokeWidth: number;
|
|
7960
|
+
strokeOpacity: number;
|
|
7961
|
+
strokeColor: string;
|
|
7962
|
+
fillOpacity: number;
|
|
7963
|
+
content: string;
|
|
7964
|
+
maxWidth?: number | undefined;
|
|
7965
|
+
font?: string | undefined;
|
|
7966
|
+
maxHeight?: number | undefined;
|
|
7967
|
+
hoverColor?: string | undefined;
|
|
7968
|
+
}>;
|
|
7969
|
+
/**
|
|
7970
|
+
* @interface
|
|
7971
|
+
*/
|
|
7972
|
+
export type InitializeText3DState = Partial<Omit<Text3DState, 'id' | 'type'>>;
|
|
7973
|
+
export const initializeText3DStateSchema: z.ZodObject<Omit<{
|
|
7974
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
7975
|
+
color: z.ZodOptional<z.ZodString>;
|
|
7976
|
+
flipToFaceCamera: z.ZodOptional<z.ZodBoolean>;
|
|
7977
|
+
font: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
7978
|
+
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
7979
|
+
margin: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
|
|
7980
|
+
outlineColor: z.ZodOptional<z.ZodString>;
|
|
7981
|
+
outlineOpacity: z.ZodOptional<z.ZodNumber>;
|
|
7982
|
+
outlineBlur: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
|
|
7983
|
+
outlineWidth: z.ZodOptional<z.ZodNumber>;
|
|
7984
|
+
outlineOffsetX: z.ZodOptional<z.ZodNumber>;
|
|
7985
|
+
outlineOffsetY: z.ZodOptional<z.ZodNumber>;
|
|
7986
|
+
strokeWidth: z.ZodOptional<z.ZodNumber>;
|
|
7987
|
+
maxWidth: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
7988
|
+
maxHeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
7989
|
+
strokeOpacity: z.ZodOptional<z.ZodNumber>;
|
|
7990
|
+
strokeColor: z.ZodOptional<z.ZodString>;
|
|
7991
|
+
fillOpacity: z.ZodOptional<z.ZodNumber>;
|
|
7992
|
+
hoverColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
7993
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
7994
|
+
type: z.ZodOptional<z.ZodLiteral<"text3d">>;
|
|
7995
|
+
position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
7996
|
+
content: z.ZodOptional<z.ZodString>;
|
|
7997
|
+
}, "type" | "id">, "strict", z.ZodTypeAny, {
|
|
7998
|
+
maxWidth?: number | undefined;
|
|
7999
|
+
color?: string | undefined;
|
|
8000
|
+
position?: [number, number, number] | undefined;
|
|
8001
|
+
visible?: boolean | undefined;
|
|
8002
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8003
|
+
font?: string | undefined;
|
|
8004
|
+
fontSize?: number | undefined;
|
|
8005
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8006
|
+
outlineColor?: string | undefined;
|
|
8007
|
+
outlineOpacity?: number | undefined;
|
|
8008
|
+
outlineBlur?: string | number | undefined;
|
|
8009
|
+
outlineWidth?: number | undefined;
|
|
8010
|
+
outlineOffsetX?: number | undefined;
|
|
8011
|
+
outlineOffsetY?: number | undefined;
|
|
8012
|
+
strokeWidth?: number | undefined;
|
|
8013
|
+
maxHeight?: number | undefined;
|
|
8014
|
+
strokeOpacity?: number | undefined;
|
|
8015
|
+
strokeColor?: string | undefined;
|
|
8016
|
+
fillOpacity?: number | undefined;
|
|
8017
|
+
hoverColor?: string | undefined;
|
|
8018
|
+
content?: string | undefined;
|
|
8019
|
+
}, {
|
|
8020
|
+
maxWidth?: number | undefined;
|
|
8021
|
+
color?: string | undefined;
|
|
8022
|
+
position?: [number, number, number] | undefined;
|
|
8023
|
+
visible?: boolean | undefined;
|
|
8024
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8025
|
+
font?: string | undefined;
|
|
8026
|
+
fontSize?: number | undefined;
|
|
8027
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8028
|
+
outlineColor?: string | undefined;
|
|
8029
|
+
outlineOpacity?: number | undefined;
|
|
8030
|
+
outlineBlur?: string | number | undefined;
|
|
8031
|
+
outlineWidth?: number | undefined;
|
|
8032
|
+
outlineOffsetX?: number | undefined;
|
|
8033
|
+
outlineOffsetY?: number | undefined;
|
|
8034
|
+
strokeWidth?: number | undefined;
|
|
8035
|
+
maxHeight?: number | undefined;
|
|
8036
|
+
strokeOpacity?: number | undefined;
|
|
8037
|
+
strokeColor?: string | undefined;
|
|
8038
|
+
fillOpacity?: number | undefined;
|
|
8039
|
+
hoverColor?: string | undefined;
|
|
8040
|
+
content?: string | undefined;
|
|
8041
|
+
}>;
|
|
8042
|
+
/**
|
|
8043
|
+
* At this moment updating text margin is not supported
|
|
8044
|
+
* Margin and content update are not handled at the moment.
|
|
8045
|
+
* @interface
|
|
8046
|
+
*/
|
|
8047
|
+
export type UpdatableText3DState = Omit<InitializeText3DState, 'margin' | 'position' | 'content'>;
|
|
8048
|
+
export const updateText3DStateSchema: z.ZodObject<Omit<Omit<{
|
|
8049
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
8050
|
+
color: z.ZodOptional<z.ZodString>;
|
|
8051
|
+
flipToFaceCamera: z.ZodOptional<z.ZodBoolean>;
|
|
8052
|
+
font: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8053
|
+
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
8054
|
+
margin: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
|
|
8055
|
+
outlineColor: z.ZodOptional<z.ZodString>;
|
|
8056
|
+
outlineOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8057
|
+
outlineBlur: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
|
|
8058
|
+
outlineWidth: z.ZodOptional<z.ZodNumber>;
|
|
8059
|
+
outlineOffsetX: z.ZodOptional<z.ZodNumber>;
|
|
8060
|
+
outlineOffsetY: z.ZodOptional<z.ZodNumber>;
|
|
8061
|
+
strokeWidth: z.ZodOptional<z.ZodNumber>;
|
|
8062
|
+
maxWidth: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8063
|
+
maxHeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8064
|
+
strokeOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8065
|
+
strokeColor: z.ZodOptional<z.ZodString>;
|
|
8066
|
+
fillOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8067
|
+
hoverColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8068
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
8069
|
+
type: z.ZodOptional<z.ZodLiteral<"text3d">>;
|
|
8070
|
+
position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
8071
|
+
content: z.ZodOptional<z.ZodString>;
|
|
8072
|
+
}, "type" | "id">, "maxWidth" | "position" | "margin" | "maxHeight" | "content">, "strict", z.ZodTypeAny, {
|
|
8073
|
+
color?: string | undefined;
|
|
8074
|
+
visible?: boolean | undefined;
|
|
8075
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8076
|
+
font?: string | undefined;
|
|
8077
|
+
fontSize?: number | undefined;
|
|
8078
|
+
outlineColor?: string | undefined;
|
|
8079
|
+
outlineOpacity?: number | undefined;
|
|
8080
|
+
outlineBlur?: string | number | undefined;
|
|
8081
|
+
outlineWidth?: number | undefined;
|
|
8082
|
+
outlineOffsetX?: number | undefined;
|
|
8083
|
+
outlineOffsetY?: number | undefined;
|
|
8084
|
+
strokeWidth?: number | undefined;
|
|
8085
|
+
strokeOpacity?: number | undefined;
|
|
8086
|
+
strokeColor?: string | undefined;
|
|
8087
|
+
fillOpacity?: number | undefined;
|
|
8088
|
+
hoverColor?: string | undefined;
|
|
8089
|
+
}, {
|
|
8090
|
+
color?: string | undefined;
|
|
8091
|
+
visible?: boolean | undefined;
|
|
8092
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8093
|
+
font?: string | undefined;
|
|
8094
|
+
fontSize?: number | undefined;
|
|
8095
|
+
outlineColor?: string | undefined;
|
|
8096
|
+
outlineOpacity?: number | undefined;
|
|
8097
|
+
outlineBlur?: string | number | undefined;
|
|
8098
|
+
outlineWidth?: number | undefined;
|
|
8099
|
+
outlineOffsetX?: number | undefined;
|
|
8100
|
+
outlineOffsetY?: number | undefined;
|
|
8101
|
+
strokeWidth?: number | undefined;
|
|
8102
|
+
strokeOpacity?: number | undefined;
|
|
8103
|
+
strokeColor?: string | undefined;
|
|
8104
|
+
fillOpacity?: number | undefined;
|
|
8105
|
+
hoverColor?: string | undefined;
|
|
8106
|
+
}>;
|
|
8107
|
+
export type Text3DProperties = {
|
|
8108
|
+
id: string;
|
|
8109
|
+
content: string;
|
|
8110
|
+
textArea?: MeshComponentProperties['textArea'];
|
|
8111
|
+
};
|
|
8112
|
+
export type AddText3DOptions = {
|
|
8113
|
+
appearance?: Partial<InitializeText3DState>;
|
|
8114
|
+
};
|
|
8115
|
+
export const addText3DOptionsSchema: z.ZodObject<{
|
|
8116
|
+
appearance: z.ZodOptional<z.ZodObject<Omit<{
|
|
8117
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
8118
|
+
color: z.ZodOptional<z.ZodString>;
|
|
8119
|
+
flipToFaceCamera: z.ZodOptional<z.ZodBoolean>;
|
|
8120
|
+
font: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8121
|
+
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
8122
|
+
margin: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
|
|
8123
|
+
outlineColor: z.ZodOptional<z.ZodString>;
|
|
8124
|
+
outlineOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8125
|
+
outlineBlur: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
|
|
8126
|
+
outlineWidth: z.ZodOptional<z.ZodNumber>;
|
|
8127
|
+
outlineOffsetX: z.ZodOptional<z.ZodNumber>;
|
|
8128
|
+
outlineOffsetY: z.ZodOptional<z.ZodNumber>;
|
|
8129
|
+
strokeWidth: z.ZodOptional<z.ZodNumber>;
|
|
8130
|
+
maxWidth: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8131
|
+
maxHeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8132
|
+
strokeOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8133
|
+
strokeColor: z.ZodOptional<z.ZodString>;
|
|
8134
|
+
fillOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8135
|
+
hoverColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8136
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
8137
|
+
type: z.ZodOptional<z.ZodLiteral<"text3d">>;
|
|
8138
|
+
position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
8139
|
+
content: z.ZodOptional<z.ZodString>;
|
|
8140
|
+
}, "type" | "id">, "strict", z.ZodTypeAny, {
|
|
8141
|
+
maxWidth?: number | undefined;
|
|
8142
|
+
color?: string | undefined;
|
|
8143
|
+
position?: [number, number, number] | undefined;
|
|
8144
|
+
visible?: boolean | undefined;
|
|
8145
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8146
|
+
font?: string | undefined;
|
|
8147
|
+
fontSize?: number | undefined;
|
|
8148
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8149
|
+
outlineColor?: string | undefined;
|
|
8150
|
+
outlineOpacity?: number | undefined;
|
|
8151
|
+
outlineBlur?: string | number | undefined;
|
|
8152
|
+
outlineWidth?: number | undefined;
|
|
8153
|
+
outlineOffsetX?: number | undefined;
|
|
8154
|
+
outlineOffsetY?: number | undefined;
|
|
8155
|
+
strokeWidth?: number | undefined;
|
|
8156
|
+
maxHeight?: number | undefined;
|
|
8157
|
+
strokeOpacity?: number | undefined;
|
|
8158
|
+
strokeColor?: string | undefined;
|
|
8159
|
+
fillOpacity?: number | undefined;
|
|
8160
|
+
hoverColor?: string | undefined;
|
|
8161
|
+
content?: string | undefined;
|
|
8162
|
+
}, {
|
|
8163
|
+
maxWidth?: number | undefined;
|
|
8164
|
+
color?: string | undefined;
|
|
8165
|
+
position?: [number, number, number] | undefined;
|
|
8166
|
+
visible?: boolean | undefined;
|
|
8167
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8168
|
+
font?: string | undefined;
|
|
8169
|
+
fontSize?: number | undefined;
|
|
8170
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8171
|
+
outlineColor?: string | undefined;
|
|
8172
|
+
outlineOpacity?: number | undefined;
|
|
8173
|
+
outlineBlur?: string | number | undefined;
|
|
8174
|
+
outlineWidth?: number | undefined;
|
|
8175
|
+
outlineOffsetX?: number | undefined;
|
|
8176
|
+
outlineOffsetY?: number | undefined;
|
|
8177
|
+
strokeWidth?: number | undefined;
|
|
8178
|
+
maxHeight?: number | undefined;
|
|
8179
|
+
strokeOpacity?: number | undefined;
|
|
8180
|
+
strokeColor?: string | undefined;
|
|
8181
|
+
fillOpacity?: number | undefined;
|
|
8182
|
+
hoverColor?: string | undefined;
|
|
8183
|
+
content?: string | undefined;
|
|
8184
|
+
}>>;
|
|
8185
|
+
parentId: z.ZodOptional<z.ZodString>;
|
|
8186
|
+
}, "strict", z.ZodTypeAny, {
|
|
8187
|
+
parentId?: string | undefined;
|
|
8188
|
+
appearance?: {
|
|
8189
|
+
maxWidth?: number | undefined;
|
|
8190
|
+
color?: string | undefined;
|
|
8191
|
+
position?: [number, number, number] | undefined;
|
|
8192
|
+
visible?: boolean | undefined;
|
|
8193
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8194
|
+
font?: string | undefined;
|
|
8195
|
+
fontSize?: number | undefined;
|
|
8196
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8197
|
+
outlineColor?: string | undefined;
|
|
8198
|
+
outlineOpacity?: number | undefined;
|
|
8199
|
+
outlineBlur?: string | number | undefined;
|
|
8200
|
+
outlineWidth?: number | undefined;
|
|
8201
|
+
outlineOffsetX?: number | undefined;
|
|
8202
|
+
outlineOffsetY?: number | undefined;
|
|
8203
|
+
strokeWidth?: number | undefined;
|
|
8204
|
+
maxHeight?: number | undefined;
|
|
8205
|
+
strokeOpacity?: number | undefined;
|
|
8206
|
+
strokeColor?: string | undefined;
|
|
8207
|
+
fillOpacity?: number | undefined;
|
|
8208
|
+
hoverColor?: string | undefined;
|
|
8209
|
+
content?: string | undefined;
|
|
8210
|
+
} | undefined;
|
|
8211
|
+
}, {
|
|
8212
|
+
parentId?: string | undefined;
|
|
8213
|
+
appearance?: {
|
|
8214
|
+
maxWidth?: number | undefined;
|
|
8215
|
+
color?: string | undefined;
|
|
8216
|
+
position?: [number, number, number] | undefined;
|
|
8217
|
+
visible?: boolean | undefined;
|
|
8218
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8219
|
+
font?: string | undefined;
|
|
8220
|
+
fontSize?: number | undefined;
|
|
8221
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8222
|
+
outlineColor?: string | undefined;
|
|
8223
|
+
outlineOpacity?: number | undefined;
|
|
8224
|
+
outlineBlur?: string | number | undefined;
|
|
8225
|
+
outlineWidth?: number | undefined;
|
|
8226
|
+
outlineOffsetX?: number | undefined;
|
|
8227
|
+
outlineOffsetY?: number | undefined;
|
|
8228
|
+
strokeWidth?: number | undefined;
|
|
8229
|
+
maxHeight?: number | undefined;
|
|
8230
|
+
strokeOpacity?: number | undefined;
|
|
8231
|
+
strokeColor?: string | undefined;
|
|
8232
|
+
fillOpacity?: number | undefined;
|
|
8233
|
+
hoverColor?: string | undefined;
|
|
8234
|
+
content?: string | undefined;
|
|
8235
|
+
} | undefined;
|
|
8236
|
+
}>;
|
|
8237
|
+
export class Text3DComponent {
|
|
8238
|
+
mesh: Geometry3DObject3D;
|
|
8239
|
+
textMesh?: Text;
|
|
8240
|
+
readonly type = "text3d";
|
|
8241
|
+
feature: Feature<Point, Text3DProperties>;
|
|
8242
|
+
constructor(feature: Feature<Point, Text3DProperties>);
|
|
8243
|
+
get visible(): boolean;
|
|
8244
|
+
set visible(visible: boolean);
|
|
8245
|
+
parent?: GroupContainerObject3D;
|
|
8246
|
+
batchedText?: BatchedText;
|
|
8247
|
+
/**
|
|
8248
|
+
* if this Text3DComponent is a polygon label, populate this id with the polygon entity id
|
|
8249
|
+
* This id is used to prevent drawing text for the same polygon.
|
|
8250
|
+
*/
|
|
8251
|
+
polygonEntityId?: string;
|
|
8252
|
+
}
|
|
8253
|
+
}
|
|
8254
|
+
|
|
8255
|
+
declare module '@mappedin/react-sdk/geojson/src/entities/utils' {
|
|
8256
|
+
import type { CollisionRankingTier, GeometryState, LabelState, RendererCore } from '@mappedin/react-sdk/geojson/src';
|
|
8257
|
+
import { type MarkerState } from '@mappedin/react-sdk/geojson/src/components/marker';
|
|
8258
|
+
import type { PathUpdateState } from '@mappedin/react-sdk/geojson/src/components/path';
|
|
8259
|
+
import type { EntityTypes, All3DTypes, Position, RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
8260
|
+
import type { KeysOfUnion } from '@mappedin/react-sdk/geojson/src/utils';
|
|
8261
|
+
import { GeometryGroupObject3D, type GeometryGroupState } from '@mappedin/react-sdk/geojson/src/entities/geometry-group';
|
|
8262
|
+
import { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
8263
|
+
import type { Geometry3DTypes, TextGeometry3D } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
8264
|
+
import { Geometry3D } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
8265
|
+
import { Geometry2D } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
|
|
8266
|
+
import type { StyleComponent } from '@mappedin/react-sdk/geojson/src/components/styles/style';
|
|
8267
|
+
import type { GeometryGroupStyleComponent } from '@mappedin/react-sdk/geojson/src/components/geometry-group-style';
|
|
8268
|
+
import { type Text3DState, type UpdatableText3DState } from '@mappedin/react-sdk/geojson/src/components/text3d';
|
|
8269
|
+
export function updateInteractivity(entity: All3DTypes | Geometry2D, update: boolean | undefined, state: RendererState): boolean;
|
|
8270
|
+
export function updateGroupColor(entity: GeometryGroupObject3D, state: RendererState, update: Partial<Pick<GeometryGroupState, 'color' | 'topColor'>>): boolean | undefined;
|
|
8271
|
+
export function updateGroupShading(entity: GeometryGroupObject3D, update?: GeometryGroupState['shading']): boolean;
|
|
8272
|
+
export function updateImageProps(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
8273
|
+
export function updateHeight(entity: Geometry3D | GeometryGroupObject3D, state: RendererState, update?: number): boolean;
|
|
8274
|
+
export function updateColor(entity: Geometry3DTypes | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
8275
|
+
export function updatePosition(entity: EntityTypes, update: Position | undefined, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']): void;
|
|
8276
|
+
export function updateParent(entity: EntityTypes, update: GroupContainerObject3D | undefined): boolean;
|
|
8277
|
+
export function updateEnabled(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: boolean | undefined): void;
|
|
8278
|
+
export function updateMarker(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<MarkerState> | undefined, state: RendererState): boolean;
|
|
8279
|
+
export function updateRank(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: CollisionRankingTier | undefined): boolean;
|
|
8280
|
+
export function updateLabel(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<LabelState> | undefined, state: RendererState): void;
|
|
8281
|
+
export function updateHoverColor(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: string): void;
|
|
8282
|
+
/** Sets a geometry to be in hovered state, until manually unset or the user interacts with it. */
|
|
8283
|
+
export function updateHovered(entity: Geometry3D, update?: boolean): boolean;
|
|
8284
|
+
export function updateFlipImageToFaceCamera(entity: EntityTypes, update?: boolean): void;
|
|
8285
|
+
export function updateVisibility(entity: EntityTypes, update?: boolean): boolean;
|
|
8286
|
+
export function updateOpacity(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, state: RendererState, update?: number): boolean;
|
|
8287
|
+
export function updateGroupTexture(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Pick<GeometryGroupStyleComponent, 'texture' | 'topTexture'>): void;
|
|
8288
|
+
export function updateIndividualGeometryTexture(entity: Geometry3D, update?: Pick<StyleComponent, 'texture' | 'topTexture'>): boolean;
|
|
8289
|
+
export function updateIndividualGeometryOpacity(entity: Geometry3D, update?: number): boolean;
|
|
8290
|
+
export function updateAltitude(entity: EntityTypes, update?: number): boolean;
|
|
8291
|
+
export function updateOutline(entity: All3DTypes, update?: boolean): boolean;
|
|
8292
|
+
export function updateFocusable(entity: Geometry3D, update?: boolean): boolean;
|
|
8293
|
+
export function updateIndividualGeometryRenderOrder(entity: Geometry3D, update?: number): boolean;
|
|
8294
|
+
export function handlePathUpdate(geometry: Geometry3DTypes, update: PathUpdateState): void;
|
|
8295
|
+
export function pickPathOptions(update: PathUpdateState): Partial<PathUpdateState>;
|
|
8296
|
+
export function assetGeometryIsText3D(geometry: Geometry3DTypes): asserts geometry is TextGeometry3D;
|
|
8297
|
+
/**
|
|
8298
|
+
* @internal
|
|
8299
|
+
*/
|
|
8300
|
+
export const TEXT3D_STYLE_UPDATE_PROPS: KeysOfUnion<UpdatableText3DState>[];
|
|
8301
|
+
/**
|
|
8302
|
+
* Handle state update of the text3d geometry.
|
|
8303
|
+
*/
|
|
8304
|
+
export function handleText3DUpdate(geometry: TextGeometry3D, update: Partial<Text3DState>): void;
|
|
8305
|
+
}
|
|
8306
|
+
|
|
8307
|
+
declare module '@mappedin/react-sdk/packages/geojson-navigator' {
|
|
8308
|
+
export * from '@mappedin/react-sdk/packages/geojson-navigator/src';
|
|
8309
|
+
}
|
|
8310
|
+
|
|
8311
|
+
declare module '@mappedin/react-sdk/geojson/src/utils' {
|
|
8312
|
+
import type { Box3, Object3D, Camera as THREECamera } from 'three';
|
|
8313
|
+
import { Box2 } from 'three';
|
|
8314
|
+
import { MercatorCoordinate } from '@mappedin/react-sdk/packages/outdoor-context-v4';
|
|
8315
|
+
import type { CustomLayerInterface } from '@mappedin/react-sdk/packages/outdoor-context-v4';
|
|
8316
|
+
import type { GeometryGroupObject3D } from '@mappedin/react-sdk/geojson/src/entities/geometry-group';
|
|
8317
|
+
import type { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
8318
|
+
import type { Geometry2D } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
|
|
8319
|
+
import type { Geometry3DTypes } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
8320
|
+
import type { Position, RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
8321
|
+
import type { Camera } from '@mappedin/react-sdk/geojson/src/camera';
|
|
8322
|
+
export function cartesianToGeographic(centerLat: number, centerLon: number, x: number, y: number): {
|
|
8323
|
+
lat: number;
|
|
8324
|
+
lon: number;
|
|
8325
|
+
};
|
|
8326
|
+
export function geographicToCartesian(centerLat: number, centerLon: number, targetLat: number, targetLon: number): {
|
|
8327
|
+
x: number;
|
|
8328
|
+
y: number;
|
|
8329
|
+
};
|
|
8330
|
+
export const populateGeometry3DIdsInScene: (tree: GroupContainerObject3D["children"][0] | Object3D, entities: RendererState["geometry3DIdsInScene"]) => Set<string | number>;
|
|
8331
|
+
export const populateGeometry2DIdsInScene: (tree: any, entities: Set<Geometry2D["id"]>) => Set<string | number>;
|
|
8332
|
+
export function convertMapLibreStylePaintProps(paint: any): {
|
|
8333
|
+
color: any;
|
|
8334
|
+
height: any;
|
|
8335
|
+
altitude: any;
|
|
8336
|
+
opacity: any;
|
|
8337
|
+
outline: any;
|
|
8338
|
+
};
|
|
8339
|
+
export function convertMapLibreLineStylePaintProps(paint: any): {
|
|
7643
8340
|
color: any;
|
|
7644
8341
|
join: any;
|
|
7645
8342
|
opacity: any;
|
|
@@ -7686,7 +8383,7 @@ declare module '@mappedin/react-sdk/geojson/src/utils' {
|
|
|
7686
8383
|
* so OR = CO * tan(F/2)
|
|
7687
8384
|
*/
|
|
7688
8385
|
export function getProjectionScaleFactor(FOV: number, canvasHeight: number, zoom: number): number;
|
|
7689
|
-
export function getGeometryByGeometryId(state: RendererState, geometryOrGeometryId?: string | number | Record<string, any>):
|
|
8386
|
+
export function getGeometryByGeometryId(state: RendererState, geometryOrGeometryId?: string | number | Record<string, any>): Geometry3DTypes | GeometryGroupObject3D | GroupContainerObject3D | Geometry2D | undefined;
|
|
7690
8387
|
export function getBoundingBoxCenter(bbox: Position[]): [number, number];
|
|
7691
8388
|
export { getCornersOfBoundingBox } from '@mappedin/react-sdk/geojson/src/utils/bounding-box';
|
|
7692
8389
|
export function isFiniteBox(box: Box2 | Box3): boolean;
|
|
@@ -7695,6 +8392,7 @@ declare module '@mappedin/react-sdk/geojson/src/utils' {
|
|
|
7695
8392
|
export { shouldDisableOffscreenCanvas } from '@mappedin/react-sdk/geojson/src/utils/browser';
|
|
7696
8393
|
export { noop, pick, isEmpty, type KeysOfUnion } from '@mappedin/react-sdk/geojson/src/utils/fp';
|
|
7697
8394
|
export { transformRequest } from '@mappedin/react-sdk/geojson/src/utils/tranform-request';
|
|
8395
|
+
export { normalizeAngle } from '@mappedin/react-sdk/geojson/src/utils/math';
|
|
7698
8396
|
}
|
|
7699
8397
|
|
|
7700
8398
|
declare module '@mappedin/react-sdk/geojson/src/utils/constants' {
|
|
@@ -7705,56 +8403,26 @@ declare module '@mappedin/react-sdk/geojson/src/utils/constants' {
|
|
|
7705
8403
|
}
|
|
7706
8404
|
}
|
|
7707
8405
|
|
|
7708
|
-
declare module '@mappedin/react-sdk/geojson/src/
|
|
7709
|
-
import type
|
|
7710
|
-
|
|
7711
|
-
|
|
7712
|
-
export type TRendererOptions = {
|
|
7713
|
-
alpha: boolean;
|
|
7714
|
-
onWebGLRendererError: (e: Error) => void;
|
|
7715
|
-
xRayPath: boolean;
|
|
8406
|
+
declare module '@mappedin/react-sdk/geojson/src/utils/debug' {
|
|
8407
|
+
import type Core from '@mappedin/react-sdk/geojson/src/renderer';
|
|
8408
|
+
const DEFAULT_DEBUG_STATE: {
|
|
8409
|
+
showPolygonLabelTextAreaMesh: boolean;
|
|
7716
8410
|
};
|
|
7717
|
-
export
|
|
7718
|
-
|
|
7719
|
-
|
|
7720
|
-
|
|
7721
|
-
|
|
7722
|
-
|
|
7723
|
-
|
|
7724
|
-
|
|
7725
|
-
/**
|
|
7726
|
-
* Dispose of the renderer and its buffers.
|
|
7727
|
-
*/
|
|
7728
|
-
destroy(): void;
|
|
7729
|
-
/**
|
|
7730
|
-
* Re-render the scene, depending on which parts of the scene have been
|
|
7731
|
-
* invalidated.
|
|
7732
|
-
*
|
|
7733
|
-
* @method render
|
|
7734
|
-
* @param renderTarget {null or WebGLRenderTarget}
|
|
7735
|
-
* @param scene {Scene}
|
|
7736
|
-
* @param sceneCamera {Camera}
|
|
7737
|
-
*/
|
|
7738
|
-
render(scene: Scene, sceneCamera: Camera): void;
|
|
7739
|
-
clear(): void;
|
|
7740
|
-
/**
|
|
7741
|
-
* Set the size of the renderer, composer, and all its internal buffers.
|
|
7742
|
-
*
|
|
7743
|
-
* @method setBufferSize
|
|
7744
|
-
* @param width {number}
|
|
7745
|
-
* @param height {number}
|
|
7746
|
-
*/
|
|
7747
|
-
setBufferSize(width: number, height: number): void;
|
|
7748
|
-
/**
|
|
7749
|
-
* Set the color and opacity that will be drawn behind the scene.
|
|
7750
|
-
*
|
|
7751
|
-
* @method setBackgroundColor
|
|
7752
|
-
* @param color {Color}
|
|
7753
|
-
* @param alpha {number}
|
|
7754
|
-
*/
|
|
7755
|
-
setBackgroundColor(color: any, alpha: any): void;
|
|
7756
|
-
domElement(): HTMLCanvasElement | undefined;
|
|
8411
|
+
export type DebugState = typeof DEFAULT_DEBUG_STATE;
|
|
8412
|
+
export class Debug {
|
|
8413
|
+
state: {
|
|
8414
|
+
showPolygonLabelTextAreaMesh: boolean;
|
|
8415
|
+
};
|
|
8416
|
+
core: Core;
|
|
8417
|
+
constructor(core: Core);
|
|
8418
|
+
update(updateState: Partial<DebugState>): void;
|
|
7757
8419
|
}
|
|
8420
|
+
export {};
|
|
8421
|
+
}
|
|
8422
|
+
|
|
8423
|
+
declare module '@mappedin/react-sdk/geojson/src/services/test-mode' {
|
|
8424
|
+
export function enableTestMode(): void;
|
|
8425
|
+
export function isTestMode(): boolean;
|
|
7758
8426
|
}
|
|
7759
8427
|
|
|
7760
8428
|
declare module '@mappedin/react-sdk/geojson/src/systems/watermark/system' {
|
|
@@ -7842,6 +8510,36 @@ declare module '@mappedin/react-sdk/geojson/src/systems/watermark/system' {
|
|
|
7842
8510
|
}
|
|
7843
8511
|
}
|
|
7844
8512
|
|
|
8513
|
+
declare module '@mappedin/react-sdk/geojson/src/systems/text3d/system' {
|
|
8514
|
+
import type { RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
8515
|
+
import type { RendererCore } from '@mappedin/react-sdk/geojson/src';
|
|
8516
|
+
import { PubSub } from '@packages/internal/common';
|
|
8517
|
+
import type { BatchedText } from '@mappedin/react-sdk/geojson/src/services/text3d/text3d';
|
|
8518
|
+
import { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
8519
|
+
import type { Text } from 'troika-three-text';
|
|
8520
|
+
export class Text3DSystem extends PubSub<{
|
|
8521
|
+
render: undefined;
|
|
8522
|
+
}> {
|
|
8523
|
+
textSet: Set<string>;
|
|
8524
|
+
batchedTextMap: Map<GroupContainerObject3D, Promise<BatchedText>>;
|
|
8525
|
+
remove(id: string): void;
|
|
8526
|
+
constructor(rendererState: RendererState, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']);
|
|
8527
|
+
update(cameraRotationRadians: number): Promise<void[]>;
|
|
8528
|
+
showTextAreaMesh(): void;
|
|
8529
|
+
hideTextAreaMesh(): void;
|
|
8530
|
+
}
|
|
8531
|
+
/**
|
|
8532
|
+
* Preload fonts and optionally pre-generate the SDF textures for particular glyphs up front.
|
|
8533
|
+
* This is to avoid ondemand font generation can take long.
|
|
8534
|
+
* @param fontUrl - url of the font file served.
|
|
8535
|
+
* @returns A promise that resolves when the font is loaded
|
|
8536
|
+
*
|
|
8537
|
+
*/
|
|
8538
|
+
export function preloadFont(fontUrl?: string): Promise<string>;
|
|
8539
|
+
export function doesBatchedTextContainsText(batchedText: BatchedText, text: Text): boolean;
|
|
8540
|
+
export const DEFAULT_VERTICAL_OFFSET = 0.5;
|
|
8541
|
+
}
|
|
8542
|
+
|
|
7845
8543
|
declare module '@mappedin/react-sdk/geojson/src/systems/exporter' {
|
|
7846
8544
|
export { ExporterSystem, type GLTFExportOptions } from '@mappedin/react-sdk/geojson/src/systems/exporter/exporter';
|
|
7847
8545
|
}
|
|
@@ -7881,15 +8579,21 @@ declare module '@mappedin/react-sdk/geojson/src/systems/html-controls/system' {
|
|
|
7881
8579
|
}
|
|
7882
8580
|
}
|
|
7883
8581
|
|
|
8582
|
+
declare module '@mappedin/react-sdk/geojson/src/components/styles' {
|
|
8583
|
+
export { StyleComponent, DEFAULT_COLOR, type MaterialSide } from '@mappedin/react-sdk/geojson/src/components/styles/style';
|
|
8584
|
+
export { Text3DStyleComponent, type Text3DStyle, DEFAULT_TEXT_STYLE } from '@mappedin/react-sdk/geojson/src/components/styles/text-style';
|
|
8585
|
+
}
|
|
8586
|
+
|
|
7884
8587
|
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/api' {
|
|
7885
8588
|
import type { Position, RendererCore, WatermarkOptions } from '@mappedin/core-sdk';
|
|
7886
8589
|
import { type TShow3DMapOptions } from '@mappedin/react-sdk/mappedin-js/src';
|
|
7887
8590
|
import { WALLS, DOORS } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
7888
8591
|
import type MapData from '@mappedin/react-sdk/mappedin-js/src/map-data';
|
|
7889
8592
|
import type { FloorStack, MapDataInternal } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
7890
|
-
import { Coordinate, MapObject, Space, Floor, Door } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
8593
|
+
import { Facade, Coordinate, MapObject, Space, Floor, Door } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
7891
8594
|
import type { MapView } from '@mappedin/react-sdk/mappedin-js/src/map-view';
|
|
7892
|
-
import { Label, Marker,
|
|
8595
|
+
import { Label, Marker, Shape } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
8596
|
+
import { Text3D as Text3DView, type Image } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
7893
8597
|
import { Navigation } from '@mappedin/react-sdk/mappedin-js/src/navigation';
|
|
7894
8598
|
import type { TGetState, TUpdateState } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
7895
8599
|
import { Camera } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/camera';
|
|
@@ -7905,6 +8609,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/api' {
|
|
|
7905
8609
|
import { Shapes } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/shapes';
|
|
7906
8610
|
import { Style } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/style';
|
|
7907
8611
|
import Outdoor from '@mappedin/react-sdk/mappedin-js/src/api-geojson/outdoor';
|
|
8612
|
+
import { Text3D } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/text3d';
|
|
7908
8613
|
export class GeoJsonApi {
|
|
7909
8614
|
core: RendererCore;
|
|
7910
8615
|
mapObjects: GeojsonApiMapObject[];
|
|
@@ -7918,6 +8623,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/api' {
|
|
|
7918
8623
|
mapView: MapView;
|
|
7919
8624
|
Camera: Camera;
|
|
7920
8625
|
Labels: Labels;
|
|
8626
|
+
Text3D: Text3D;
|
|
7921
8627
|
Markers: Markers;
|
|
7922
8628
|
Models: Models;
|
|
7923
8629
|
Paths: Paths;
|
|
@@ -7928,9 +8634,10 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/api' {
|
|
|
7928
8634
|
Shapes: Shapes;
|
|
7929
8635
|
Style: Style;
|
|
7930
8636
|
Images: Images;
|
|
8637
|
+
get DynamicFocus(): import("./dynamic-focus").DynamicFocus;
|
|
7931
8638
|
get StackedMaps(): import("..").StackedMaps;
|
|
7932
8639
|
constructor(rendererCore: RendererCore, mapView: MapView);
|
|
7933
|
-
updateState<T extends Space | MapObject | Label | Shape | Marker | Door | WALLS | DOORS | (string & NonNullable<unknown>)>(target: T, state: TUpdateState<T>): void;
|
|
8640
|
+
updateState<T extends Space | Text3DView | MapObject | Label | Shape | Marker | Door | Facade | WALLS | DOORS | (string & NonNullable<unknown>)>(target: T, state: TUpdateState<T>): void;
|
|
7934
8641
|
update: () => void;
|
|
7935
8642
|
getMapDataInternal(): MapDataInternal | undefined;
|
|
7936
8643
|
getMapData(): MapData | undefined;
|
|
@@ -7940,7 +8647,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/api' {
|
|
|
7940
8647
|
updateWatermark(options: Omit<WatermarkOptions, 'onClick'>): void;
|
|
7941
8648
|
get currentFloorStack(): FloorStack;
|
|
7942
8649
|
get currentFloor(): Floor;
|
|
7943
|
-
getState<T extends Space | MapObject | Label | Marker |
|
|
8650
|
+
getState<T extends Space | Text3DView | MapObject | Label | Marker | Image | Shape | string>(target: T): TGetState<T>;
|
|
7944
8651
|
setHoverColor(c: string): void;
|
|
7945
8652
|
getHoverColor(): string | undefined;
|
|
7946
8653
|
createCoordinate(latitude: number, longitude: number, floor?: Floor): Coordinate;
|
|
@@ -7963,15 +8670,17 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object' {
|
|
|
7963
8670
|
import type { Position, AddLabelOptions, RendererCore, PathState, MarkerState, LineStyle, PaintStyle, EntityId } from '@mappedin/core-sdk';
|
|
7964
8671
|
import { FloorObject } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-object';
|
|
7965
8672
|
import type { Coordinate, Directions, Floor, TAddMarkerOptions, TAddPathOptions, TShow3DMapOptions } from '@mappedin/react-sdk/mappedin-js/src';
|
|
7966
|
-
import type { GLTFExportOptions, TAnimationOptions, TAddModelOptions, TAddModel, TAddImageOptions, TDirectionInstruction } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
8673
|
+
import type { GLTFExportOptions, TAnimationOptions, TAddModelOptions, TAddModel, TAddImageOptions, TDirectionInstruction, TAddText3DOptions } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
7967
8674
|
import { type AggregatedStyleMap } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/utils';
|
|
7968
8675
|
import { StackedMaps } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/stacked-maps/stacked-maps';
|
|
7969
8676
|
import type { TFloorChangeReason } from '@mappedin/react-sdk/mappedin-js/src/events';
|
|
7970
8677
|
import type { Path, Shape } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
7971
|
-
import type {
|
|
8678
|
+
import type { Door, PointOfInterest, MapObject, Node, MapDataInternal, Space } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
7972
8679
|
import { type GeoJsonApi } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/api';
|
|
7973
8680
|
import { FloorStackObject } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-stack-object';
|
|
8681
|
+
import { DynamicFocus } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/dynamic-focus';
|
|
7974
8682
|
export const FLOOR_HEIGHT = 5;
|
|
8683
|
+
import type { Text3DState } from '@mappedin/core-sdk/src/components/text3d';
|
|
7975
8684
|
export class GeojsonApiMapObject extends PubSub<{
|
|
7976
8685
|
'floor-change': {
|
|
7977
8686
|
reason?: TFloorChangeReason;
|
|
@@ -7995,12 +8704,14 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object' {
|
|
|
7995
8704
|
floorsById: Map<string, FloorObject>;
|
|
7996
8705
|
currentFloorId: string;
|
|
7997
8706
|
currentFloorStackId: string;
|
|
8707
|
+
outdoorFloorStacks: Set<string>;
|
|
7998
8708
|
id: string;
|
|
7999
8709
|
renderer: RendererCore;
|
|
8000
8710
|
api: GeoJsonApi;
|
|
8001
8711
|
mvf: ParsedMVF;
|
|
8002
8712
|
styleMap: AggregatedStyleMap;
|
|
8003
8713
|
StackedMaps: StackedMaps;
|
|
8714
|
+
DynamicFocus: DynamicFocus;
|
|
8004
8715
|
get currentFloorStack(): FloorStackObject;
|
|
8005
8716
|
setFloorStack(floorStackId: string): void;
|
|
8006
8717
|
get currentFloor(): FloorObject;
|
|
@@ -8017,7 +8728,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object' {
|
|
|
8017
8728
|
Images: {
|
|
8018
8729
|
add: (target: Position, url: string, opts: TAddImageOptions & {
|
|
8019
8730
|
floorId?: string;
|
|
8020
|
-
}) => EntityId<import("
|
|
8731
|
+
}) => EntityId<import("@mappedin/core-sdk/src/components/image").ImageState> | undefined;
|
|
8021
8732
|
remove: (id: string) => void;
|
|
8022
8733
|
removeAll: () => void;
|
|
8023
8734
|
};
|
|
@@ -8038,6 +8749,11 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object' {
|
|
|
8038
8749
|
}) => string;
|
|
8039
8750
|
remove: (customGeometry: Shape) => string;
|
|
8040
8751
|
};
|
|
8752
|
+
Text3D: {
|
|
8753
|
+
label: (target: Space, content?: string, options?: TAddText3DOptions) => Text3DInfo | undefined;
|
|
8754
|
+
labelAll: (option?: TAddText3DOptions) => Text3DInfo[];
|
|
8755
|
+
remove: (id: string) => string | undefined;
|
|
8756
|
+
};
|
|
8041
8757
|
Labels: {
|
|
8042
8758
|
all: ({ onCreate, }: {
|
|
8043
8759
|
onCreate: (labelId: string | number, text: string, target: Space | Door | Coordinate | PointOfInterest | MapObject | Node) => void;
|
|
@@ -8059,6 +8775,10 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object' {
|
|
|
8059
8775
|
};
|
|
8060
8776
|
constructor(id: string, mapDataInternal: MapDataInternal | undefined, options: TShow3DMapOptions | undefined, api: GeoJsonApi);
|
|
8061
8777
|
}
|
|
8778
|
+
export type Text3DInfo = {
|
|
8779
|
+
target: Space;
|
|
8780
|
+
textInfo: EntityId<Text3DState>;
|
|
8781
|
+
};
|
|
8062
8782
|
}
|
|
8063
8783
|
|
|
8064
8784
|
declare module '@mappedin/react-sdk/mappedin-js/src/map-view-objects/label' {
|
|
@@ -8306,6 +9026,39 @@ declare module '@mappedin/react-sdk/mappedin-js/src/map-view-objects/shape' {
|
|
|
8306
9026
|
}
|
|
8307
9027
|
}
|
|
8308
9028
|
|
|
9029
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/map-view-objects/text3d' {
|
|
9030
|
+
import type { Space, EnterpriseLocation } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
9031
|
+
/**
|
|
9032
|
+
* Class representing an Text3D on the {@link MapView}.
|
|
9033
|
+
*/
|
|
9034
|
+
export class Text3D {
|
|
9035
|
+
/**
|
|
9036
|
+
* The text3d's id
|
|
9037
|
+
*/
|
|
9038
|
+
readonly id: string;
|
|
9039
|
+
/**
|
|
9040
|
+
* @internal
|
|
9041
|
+
*/
|
|
9042
|
+
constructor(id: string, target: Space | EnterpriseLocation);
|
|
9043
|
+
/**
|
|
9044
|
+
* The text3d's target
|
|
9045
|
+
*/
|
|
9046
|
+
readonly target: Space | EnterpriseLocation;
|
|
9047
|
+
/**
|
|
9048
|
+
* @internal
|
|
9049
|
+
*/
|
|
9050
|
+
static readonly __type = "Text3D";
|
|
9051
|
+
readonly __type = "Text3D";
|
|
9052
|
+
/**
|
|
9053
|
+
* Checks if the provided instance is of type Text3D
|
|
9054
|
+
*
|
|
9055
|
+
* @param instance The instance to check.
|
|
9056
|
+
* @returns {boolean} True if the instance is a text3d, false otherwise.
|
|
9057
|
+
*/
|
|
9058
|
+
static is(instance: object): instance is Text3D;
|
|
9059
|
+
}
|
|
9060
|
+
}
|
|
9061
|
+
|
|
8309
9062
|
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/camera' {
|
|
8310
9063
|
import type { TCameraAnimationOptions, TCameraFocusOnTarget, TCameraTarget, TFocusOnOptions } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
8311
9064
|
import type { InsetPadding, RendererCore } from '@mappedin/core-sdk';
|
|
@@ -8626,7 +9379,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/markers' {
|
|
|
8626
9379
|
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/models' {
|
|
8627
9380
|
import type { TAddModelOptions, TAddModel } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
8628
9381
|
import { Model } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
8629
|
-
import type {
|
|
9382
|
+
import type { CurrentMapGetter } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/types';
|
|
8630
9383
|
/**
|
|
8631
9384
|
* Adding 3D models to a map can be a great way to represent landmarks to help users find key locations. They could also be used to show the location of assets or represent furniture to provide a rich indoor layout.
|
|
8632
9385
|
|
|
@@ -8645,7 +9398,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/models' {
|
|
|
8645
9398
|
/**
|
|
8646
9399
|
* @internal
|
|
8647
9400
|
*/
|
|
8648
|
-
get currentMap(): GeojsonApiMapObject | undefined;
|
|
9401
|
+
get currentMap(): import("./map-object").GeojsonApiMapObject | undefined;
|
|
8649
9402
|
/**
|
|
8650
9403
|
* @internal
|
|
8651
9404
|
*/
|
|
@@ -8687,8 +9440,6 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/models' {
|
|
|
8687
9440
|
*/
|
|
8688
9441
|
removeAll(): Model[];
|
|
8689
9442
|
}
|
|
8690
|
-
type CurrentMapGetter = () => GeojsonApiMapObject | undefined;
|
|
8691
|
-
export {};
|
|
8692
9443
|
}
|
|
8693
9444
|
|
|
8694
9445
|
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/paths' {
|
|
@@ -9177,7 +9928,8 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/images' {
|
|
|
9177
9928
|
|
|
9178
9929
|
declare module '@mappedin/react-sdk/mappedin-js/src/search/internal' {
|
|
9179
9930
|
import type { SearchResult as MiniSearchResult, Suggestion, MatchInfo } from 'minisearch';
|
|
9180
|
-
import {
|
|
9931
|
+
import type { Places } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
9932
|
+
import { EnterpriseLocation, EnterpriseCategory } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
9181
9933
|
import type MapData from '@mappedin/react-sdk/mappedin-js/src/map-data';
|
|
9182
9934
|
import { z } from 'zod';
|
|
9183
9935
|
export class InternalSearch {
|
|
@@ -9532,6 +10284,52 @@ declare module '@mappedin/react-sdk/mappedin-js/src/search/external' {
|
|
|
9532
10284
|
};
|
|
9533
10285
|
}
|
|
9534
10286
|
|
|
10287
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/query/external' {
|
|
10288
|
+
import type { Annotation, Coordinate, Door, MapDataInternal, Node, PointOfInterest } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
10289
|
+
/**
|
|
10290
|
+
* Query allows users to query for nodes, locations, categories, and other points of interest within the venue.
|
|
10291
|
+
*/
|
|
10292
|
+
export class Query {
|
|
10293
|
+
#private;
|
|
10294
|
+
/**
|
|
10295
|
+
* @internal
|
|
10296
|
+
*/
|
|
10297
|
+
constructor(mapDataInternal: MapDataInternal);
|
|
10298
|
+
/**
|
|
10299
|
+
* Find the nearest feature to the origin
|
|
10300
|
+
* @param origin - The origin object
|
|
10301
|
+
* @param options - The options for the query
|
|
10302
|
+
* @returns The nearest feature to the origin
|
|
10303
|
+
*/
|
|
10304
|
+
nearest(origin: Coordinate | PointOfInterest | Door | Annotation | Node, options: TFindNearestOptions): TFindNearestResult | undefined;
|
|
10305
|
+
}
|
|
10306
|
+
export type TFindNearestResult = {
|
|
10307
|
+
distance: number;
|
|
10308
|
+
feature: TQueriables;
|
|
10309
|
+
}[];
|
|
10310
|
+
export type TFindNearestOptions = {
|
|
10311
|
+
/**
|
|
10312
|
+
* Limit query to a set of floors. Only applies if the origin has floor information. If it doesn't, it limits the query to all floor-stacks' default floors.
|
|
10313
|
+
*
|
|
10314
|
+
* @default 'same-floor'
|
|
10315
|
+
*/
|
|
10316
|
+
limit?: 'same-floor'
|
|
10317
|
+
/**
|
|
10318
|
+
* Limit query to all floors at the same elevation as the origin
|
|
10319
|
+
*/
|
|
10320
|
+
| 'same-elevation';
|
|
10321
|
+
/**
|
|
10322
|
+
* The radius to search for features within
|
|
10323
|
+
*/
|
|
10324
|
+
radius?: number;
|
|
10325
|
+
/**
|
|
10326
|
+
* The types to query for
|
|
10327
|
+
*/
|
|
10328
|
+
types: [TQueriables['__type'], ...TQueriables['__type'][]];
|
|
10329
|
+
};
|
|
10330
|
+
export type TQueriables = PointOfInterest | Door | Annotation | Node;
|
|
10331
|
+
}
|
|
10332
|
+
|
|
9535
10333
|
declare module '@mappedin/react-sdk/mappedin-js/src/analytics/customer' {
|
|
9536
10334
|
/**
|
|
9537
10335
|
* Valid track-analytics API contexts. These should match the expected values of that endpoint or the requests will fail.
|
|
@@ -9834,20 +10632,24 @@ declare module '@mappedin/react-sdk/geojson/src/entities/geometry3d' {
|
|
|
9834
10632
|
import type { MeshComponent } from '@mappedin/react-sdk/geojson/src/components/mesh';
|
|
9835
10633
|
import type { ModelComponent } from '@mappedin/react-sdk/geojson/src/components/model';
|
|
9836
10634
|
import type { PathComponent } from '@mappedin/react-sdk/geojson/src/components/path';
|
|
9837
|
-
import type { StyleComponent } from '@mappedin/react-sdk/geojson/src/components/style';
|
|
10635
|
+
import type { StyleComponent } from '@mappedin/react-sdk/geojson/src/components/styles/style';
|
|
9838
10636
|
import type { ImageComponent } from '@mappedin/react-sdk/geojson/src/components/image';
|
|
9839
10637
|
import type { CustomGeometryComponent } from '@mappedin/react-sdk/geojson/src/components/custom';
|
|
9840
10638
|
import type { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
9841
10639
|
import type { GeometryGroupObject3D } from '@mappedin/react-sdk/geojson/src/entities/geometry-group';
|
|
10640
|
+
import type { Text3DComponent } from '@mappedin/react-sdk/geojson/src/components/text3d';
|
|
10641
|
+
import type { Text3DStyleComponent } from '@mappedin/react-sdk/geojson/src/components/styles';
|
|
9842
10642
|
export enum Geometry3DComponents {
|
|
9843
10643
|
Mesh = 0,
|
|
9844
10644
|
Style = 1,
|
|
9845
10645
|
Interaction = 2
|
|
9846
10646
|
}
|
|
10647
|
+
type Geometry3DObjectTypes = 'geometry' | 'path' | 'model' | 'custom-geometry' | 'image' | 'text3d';
|
|
9847
10648
|
export class Geometry3DObject3D extends Object3D {
|
|
10649
|
+
type: Geometry3DObjectTypes;
|
|
9848
10650
|
userData: {
|
|
9849
10651
|
entityId: string;
|
|
9850
|
-
type:
|
|
10652
|
+
type: Geometry3DObjectTypes;
|
|
9851
10653
|
};
|
|
9852
10654
|
}
|
|
9853
10655
|
export type PathMaterial = ShaderMaterial & {
|
|
@@ -9857,15 +10659,23 @@ declare module '@mappedin/react-sdk/geojson/src/entities/geometry3d' {
|
|
|
9857
10659
|
export class PatMeshContainer extends Geometry3DObject3D {
|
|
9858
10660
|
children: [PathMesh, PathMesh];
|
|
9859
10661
|
}
|
|
9860
|
-
export type MeshComponentTypes = MeshComponent | PathComponent | ModelComponent | CustomGeometryComponent | ImageComponent;
|
|
9861
|
-
|
|
10662
|
+
export type MeshComponentTypes = MeshComponent | PathComponent | ModelComponent | CustomGeometryComponent | Text3DComponent | ImageComponent;
|
|
10663
|
+
type MappedComponentType<M> = M extends MeshComponent ? 'geometry' : M extends PathComponent ? 'path' : M extends ModelComponent ? 'model' : M extends CustomGeometryComponent ? 'custom-geometry' : M extends ImageComponent ? 'image' : M extends Text3DComponent ? 'text3d' : never;
|
|
10664
|
+
export class Geometry3D<M extends MeshComponentTypes = MeshComponent, S extends StyleComponent | Text3DStyleComponent = StyleComponent, I extends InteractionComponent = InteractionComponent, T extends MappedComponentType<M> = MappedComponentType<M>> {
|
|
9862
10665
|
id: string | number;
|
|
9863
|
-
components: [
|
|
9864
|
-
get object3d():
|
|
10666
|
+
components: [M, S, I?];
|
|
10667
|
+
get object3d(): M["mesh"];
|
|
9865
10668
|
get parent(): GroupContainerObject3D | GeometryGroupObject3D | null;
|
|
9866
|
-
get type():
|
|
9867
|
-
constructor(meshComponent:
|
|
9868
|
-
}
|
|
10669
|
+
get type(): T;
|
|
10670
|
+
constructor(meshComponent: M, styleComponent: S);
|
|
10671
|
+
}
|
|
10672
|
+
export type TextGeometry3D = Geometry3D<Text3DComponent, Text3DStyleComponent, InteractionComponent, 'text3d'>;
|
|
10673
|
+
export type CustomGeometry3D = Geometry3D<CustomGeometryComponent, StyleComponent, InteractionComponent, 'custom-geometry'>;
|
|
10674
|
+
export type ModelGeometry3D = Geometry3D<ModelComponent, StyleComponent, InteractionComponent, 'model'>;
|
|
10675
|
+
export type PathGeometry3D = Geometry3D<PathComponent, StyleComponent, InteractionComponent, 'path'>;
|
|
10676
|
+
export type ImageGeometry3D = Geometry3D<ImageComponent, StyleComponent, InteractionComponent, 'image'>;
|
|
10677
|
+
export type MeshGeometry3D = Geometry3D<MeshComponent, StyleComponent, InteractionComponent, 'geometry'>;
|
|
10678
|
+
export type Geometry3DTypes = TextGeometry3D | CustomGeometry3D | PathGeometry3D | ImageGeometry3D | MeshGeometry3D | ModelGeometry3D;
|
|
9869
10679
|
export interface PathUniforms {
|
|
9870
10680
|
vertexes: {
|
|
9871
10681
|
type: 'f';
|
|
@@ -9948,6 +10758,7 @@ declare module '@mappedin/react-sdk/geojson/src/entities/geometry3d' {
|
|
|
9948
10758
|
value: number;
|
|
9949
10759
|
};
|
|
9950
10760
|
}
|
|
10761
|
+
export {};
|
|
9951
10762
|
}
|
|
9952
10763
|
|
|
9953
10764
|
declare module '@mappedin/react-sdk/geojson/src/entities/geometry2d' {
|
|
@@ -9961,6 +10772,7 @@ declare module '@mappedin/react-sdk/geojson/src/entities/geometry2d' {
|
|
|
9961
10772
|
Interaction = 1
|
|
9962
10773
|
}
|
|
9963
10774
|
export class Geometry2DObject3D extends Object3D {
|
|
10775
|
+
readonly type: "geometry2dObject3d";
|
|
9964
10776
|
}
|
|
9965
10777
|
export class Geometry2D {
|
|
9966
10778
|
id: string | number;
|
|
@@ -9989,17 +10801,44 @@ declare module '@mappedin/react-sdk/geojson/src/components/stack' {
|
|
|
9989
10801
|
|
|
9990
10802
|
declare module '@mappedin/react-sdk/geojson/src/components/interaction' {
|
|
9991
10803
|
export class InteractionComponent {
|
|
9992
|
-
hover: boolean;
|
|
10804
|
+
hover: boolean | 'user-interaction';
|
|
9993
10805
|
dirty: boolean;
|
|
9994
10806
|
}
|
|
9995
10807
|
}
|
|
9996
10808
|
|
|
10809
|
+
declare module '@mappedin/react-sdk/geojson/src/services/text3d/text3d' {
|
|
10810
|
+
import { type Text3DStyleComponent } from '@mappedin/react-sdk/geojson/src/components/styles';
|
|
10811
|
+
import { Text, BatchedText } from 'troika-three-text';
|
|
10812
|
+
import type { RendererCore } from '@mappedin/react-sdk/geojson/src';
|
|
10813
|
+
import type { Text3DComponent } from '@mappedin/react-sdk/geojson/src/components/text3d';
|
|
10814
|
+
export function createTroikaText(entityId: string | number, text3DComponent: Text3DComponent, styleComponent: Text3DStyleComponent, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']): Promise<{
|
|
10815
|
+
text: Text;
|
|
10816
|
+
} | undefined>;
|
|
10817
|
+
export { BatchedText, Text };
|
|
10818
|
+
/**
|
|
10819
|
+
* typeof module is forbiten in typescript. see: [@typescript-eslint/consistent-type-imports]
|
|
10820
|
+
*/
|
|
10821
|
+
export type ModuleType = {
|
|
10822
|
+
createTroikaText: typeof createTroikaText;
|
|
10823
|
+
preloadFont: typeof preloadFont;
|
|
10824
|
+
BatchedText: typeof BatchedText;
|
|
10825
|
+
};
|
|
10826
|
+
/**
|
|
10827
|
+
* Preloads a font from the given URL. Enable developer to preload font way before scene is ready
|
|
10828
|
+
*
|
|
10829
|
+
* @param fontUrl - The URL of the font to preload. When undefined, default font (Roboto) is loaded
|
|
10830
|
+
* @returns A promise that resolves when the font is successfully preloaded, or rejects with an error if the font cannot be loaded.
|
|
10831
|
+
*/
|
|
10832
|
+
export function preloadFont(fontUrl?: string): Promise<string>;
|
|
10833
|
+
}
|
|
10834
|
+
|
|
9997
10835
|
declare module '@mappedin/react-sdk/geojson/src/components/geometry-group-style' {
|
|
9998
10836
|
import { type Shading } from '@mappedin/react-sdk/geojson/src/types';
|
|
9999
10837
|
type GeometryGroupStyle = {
|
|
10000
10838
|
color: string;
|
|
10001
10839
|
topColor?: string;
|
|
10002
10840
|
opacity: number;
|
|
10841
|
+
height?: number;
|
|
10003
10842
|
shading?: Shading;
|
|
10004
10843
|
outline: boolean;
|
|
10005
10844
|
texture?: string;
|
|
@@ -10010,6 +10849,7 @@ declare module '@mappedin/react-sdk/geojson/src/components/geometry-group-style'
|
|
|
10010
10849
|
color: string;
|
|
10011
10850
|
topColor?: string;
|
|
10012
10851
|
opacity: number;
|
|
10852
|
+
height?: number;
|
|
10013
10853
|
outline: boolean;
|
|
10014
10854
|
texture?: string;
|
|
10015
10855
|
topTexture?: string;
|
|
@@ -10156,68 +10996,6 @@ declare module '@mappedin/react-sdk/geojson/src/components/image' {
|
|
|
10156
10996
|
}
|
|
10157
10997
|
}
|
|
10158
10998
|
|
|
10159
|
-
declare module '@mappedin/react-sdk/geojson/src/entities' {
|
|
10160
|
-
export { updateInteractivity } from '@mappedin/react-sdk/geojson/src/entities/utils';
|
|
10161
|
-
export { Geometry2D, Geometry2DComponents } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
|
|
10162
|
-
export { Geometry3D, Geometry3DComponents, type PathMesh, type PatMeshContainer, type PathMaterial, } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
10163
|
-
}
|
|
10164
|
-
|
|
10165
|
-
declare module '@mappedin/react-sdk/geojson/src/components/style' {
|
|
10166
|
-
import type { LineStyle } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
10167
|
-
export const DEFAULT_COLOR = "#ffffff";
|
|
10168
|
-
export const DEFAULT_HEIGHT = 0.1;
|
|
10169
|
-
/**
|
|
10170
|
-
* Determines how a material is rendered, back face, front face or both (default)
|
|
10171
|
-
*/
|
|
10172
|
-
export type MaterialSide = 'back' | 'front' | 'double';
|
|
10173
|
-
type Style = {
|
|
10174
|
-
color: string;
|
|
10175
|
-
width: number;
|
|
10176
|
-
opacity: number;
|
|
10177
|
-
visible: boolean;
|
|
10178
|
-
height: number;
|
|
10179
|
-
altitude: number;
|
|
10180
|
-
join: LineStyle['join'];
|
|
10181
|
-
cap: LineStyle['cap'];
|
|
10182
|
-
topColor?: string;
|
|
10183
|
-
texture?: string;
|
|
10184
|
-
topTexture?: string;
|
|
10185
|
-
outline: boolean;
|
|
10186
|
-
showImage: boolean;
|
|
10187
|
-
showTextLabel: boolean;
|
|
10188
|
-
flipImageToFaceCamera: boolean;
|
|
10189
|
-
flipTextToFaceCamera: boolean;
|
|
10190
|
-
url?: string;
|
|
10191
|
-
side?: MaterialSide;
|
|
10192
|
-
};
|
|
10193
|
-
export class StyleComponent implements Style {
|
|
10194
|
-
initialColor: string;
|
|
10195
|
-
color: string;
|
|
10196
|
-
topColor?: string;
|
|
10197
|
-
topTexture?: string;
|
|
10198
|
-
texture?: string;
|
|
10199
|
-
hoverColor?: string;
|
|
10200
|
-
dirty: boolean;
|
|
10201
|
-
visible: boolean;
|
|
10202
|
-
opacity: number;
|
|
10203
|
-
width: number;
|
|
10204
|
-
height: number;
|
|
10205
|
-
initialHeight: number;
|
|
10206
|
-
altitude: number;
|
|
10207
|
-
join: LineStyle['join'];
|
|
10208
|
-
cap: LineStyle['cap'];
|
|
10209
|
-
outline: boolean;
|
|
10210
|
-
showImage: boolean;
|
|
10211
|
-
showTextLabel: boolean;
|
|
10212
|
-
flipImageToFaceCamera: boolean;
|
|
10213
|
-
flipTextToFaceCamera: boolean;
|
|
10214
|
-
url?: string;
|
|
10215
|
-
side: MaterialSide;
|
|
10216
|
-
constructor(style?: Partial<Style>);
|
|
10217
|
-
}
|
|
10218
|
-
export {};
|
|
10219
|
-
}
|
|
10220
|
-
|
|
10221
10999
|
declare module '@mappedin/react-sdk/geojson/src/types/options' {
|
|
10222
11000
|
import type { Position } from '@mappedin/react-sdk/geojson/src/types/geometry';
|
|
10223
11001
|
import type { Map as MapLibreMap } from '@mappedin/react-sdk/packages/outdoor-context-v4';
|
|
@@ -10318,31 +11096,82 @@ declare module '@mappedin/react-sdk/packages/common/pubsub' {
|
|
|
10318
11096
|
* };
|
|
10319
11097
|
* map.on('click', handler);
|
|
10320
11098
|
*/
|
|
10321
|
-
on<EVENT_NAME extends EVENT>(eventName: EVENT_NAME, fn: (payload: EVENT_PAYLOAD[EVENT_NAME] extends {
|
|
10322
|
-
data: null;
|
|
10323
|
-
} ? EVENT_PAYLOAD[EVENT_NAME]['data'] : EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
11099
|
+
on<EVENT_NAME extends EVENT>(eventName: EVENT_NAME, fn: (payload: EVENT_PAYLOAD[EVENT_NAME] extends {
|
|
11100
|
+
data: null;
|
|
11101
|
+
} ? EVENT_PAYLOAD[EVENT_NAME]['data'] : EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
11102
|
+
/**
|
|
11103
|
+
* Unsubscribe a function previously subscribed with {@link on}
|
|
11104
|
+
*
|
|
11105
|
+
* @param eventName An event name to which the provided function was previously
|
|
11106
|
+
* subscribed.
|
|
11107
|
+
* @param fn A function that was previously passed to {@link on}. The function must
|
|
11108
|
+
* have the same reference as the function that was subscribed.
|
|
11109
|
+
* @example
|
|
11110
|
+
* // Unsubscribe from the 'click' event
|
|
11111
|
+
* const handler = (event) => {
|
|
11112
|
+
* console.log('Map was clicked', event);
|
|
11113
|
+
* };
|
|
11114
|
+
* map.off('click', handler);
|
|
11115
|
+
*/
|
|
11116
|
+
off<EVENT_NAME extends EVENT>(eventName: EVENT_NAME, fn: (payload: EVENT_PAYLOAD[EVENT_NAME] extends {
|
|
11117
|
+
data: null;
|
|
11118
|
+
} ? EVENT_PAYLOAD[EVENT_NAME]['data'] : EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
11119
|
+
/**
|
|
11120
|
+
* @private
|
|
11121
|
+
* @internal
|
|
11122
|
+
*/
|
|
11123
|
+
destroy(): void;
|
|
11124
|
+
}
|
|
11125
|
+
}
|
|
11126
|
+
|
|
11127
|
+
declare module '@mappedin/react-sdk/geojson/src/services/renderer' {
|
|
11128
|
+
import type { Scene, Camera } from 'three';
|
|
11129
|
+
import { Color, WebGL1Renderer, WebGLRenderer } from 'three';
|
|
11130
|
+
export type TRendererOptions = {
|
|
11131
|
+
alpha: boolean;
|
|
11132
|
+
onWebGLRendererError: (e: Error) => void;
|
|
11133
|
+
xRayPath: boolean;
|
|
11134
|
+
};
|
|
11135
|
+
export class Renderer {
|
|
11136
|
+
backgroundAlpha: number;
|
|
11137
|
+
backgroundColor: Color;
|
|
11138
|
+
width: number;
|
|
11139
|
+
height: number;
|
|
11140
|
+
options: TRendererOptions;
|
|
11141
|
+
renderer?: WebGLRenderer | WebGL1Renderer;
|
|
11142
|
+
constructor(renderOptions: any, targetWebGLVersion?: number);
|
|
11143
|
+
/**
|
|
11144
|
+
* Dispose of the renderer and its buffers.
|
|
11145
|
+
*/
|
|
11146
|
+
destroy(): void;
|
|
11147
|
+
/**
|
|
11148
|
+
* Re-render the scene, depending on which parts of the scene have been
|
|
11149
|
+
* invalidated.
|
|
11150
|
+
*
|
|
11151
|
+
* @method render
|
|
11152
|
+
* @param renderTarget {null or WebGLRenderTarget}
|
|
11153
|
+
* @param scene {Scene}
|
|
11154
|
+
* @param sceneCamera {Camera}
|
|
11155
|
+
*/
|
|
11156
|
+
render(scene: Scene, sceneCamera: Camera): void;
|
|
11157
|
+
clear(): void;
|
|
10324
11158
|
/**
|
|
10325
|
-
*
|
|
11159
|
+
* Set the size of the renderer, composer, and all its internal buffers.
|
|
10326
11160
|
*
|
|
10327
|
-
* @
|
|
10328
|
-
*
|
|
10329
|
-
* @param
|
|
10330
|
-
* have the same reference as the function that was subscribed.
|
|
10331
|
-
* @example
|
|
10332
|
-
* // Unsubscribe from the 'click' event
|
|
10333
|
-
* const handler = (event) => {
|
|
10334
|
-
* console.log('Map was clicked', event);
|
|
10335
|
-
* };
|
|
10336
|
-
* map.off('click', handler);
|
|
11161
|
+
* @method setBufferSize
|
|
11162
|
+
* @param width {number}
|
|
11163
|
+
* @param height {number}
|
|
10337
11164
|
*/
|
|
10338
|
-
|
|
10339
|
-
data: null;
|
|
10340
|
-
} ? EVENT_PAYLOAD[EVENT_NAME]['data'] : EVENT_PAYLOAD[EVENT_NAME]) => void): void;
|
|
11165
|
+
setBufferSize(width: number, height: number): void;
|
|
10341
11166
|
/**
|
|
10342
|
-
*
|
|
10343
|
-
*
|
|
11167
|
+
* Set the color and opacity that will be drawn behind the scene.
|
|
11168
|
+
*
|
|
11169
|
+
* @method setBackgroundColor
|
|
11170
|
+
* @param color {Color}
|
|
11171
|
+
* @param alpha {number}
|
|
10344
11172
|
*/
|
|
10345
|
-
|
|
11173
|
+
setBackgroundColor(color: any, alpha: any): void;
|
|
11174
|
+
domElement(): HTMLCanvasElement | undefined;
|
|
10346
11175
|
}
|
|
10347
11176
|
}
|
|
10348
11177
|
|
|
@@ -10350,34 +11179,16 @@ declare module '@mappedin/react-sdk/geojson/src/systems/interactions' {
|
|
|
10350
11179
|
export { InteractionSystem } from '@mappedin/react-sdk/geojson/src/systems/interactions/system';
|
|
10351
11180
|
}
|
|
10352
11181
|
|
|
10353
|
-
declare module '@mappedin/react-sdk/geojson/src/systems/zoom-interpolation/zoom-interpolation' {
|
|
10354
|
-
import { PubSub } from '@mappedin/react-sdk/packages/common/pubsub';
|
|
10355
|
-
import LabelComponent from '@mappedin/react-sdk/geojson/src/components/label';
|
|
10356
|
-
import type { MarkerComponent } from '@mappedin/react-sdk/geojson/src/components/marker';
|
|
10357
|
-
import { MeshComponent } from '@mappedin/react-sdk/geojson/src/components/mesh';
|
|
10358
|
-
type SomeEvent = {
|
|
10359
|
-
'invalidate:2d': undefined;
|
|
10360
|
-
};
|
|
10361
|
-
export class ZoomInterpolationSystem extends PubSub<SomeEvent, keyof SomeEvent> {
|
|
10362
|
-
constructor();
|
|
10363
|
-
interpolators: Map<any, any>;
|
|
10364
|
-
addEntity3D(meshComponent: MeshComponent, interpolateProps: any): void;
|
|
10365
|
-
addEntity2D(uiComponent: MarkerComponent | LabelComponent, interpolateProps: any): void;
|
|
10366
|
-
addAny(id: string, interpolateFn: any): void;
|
|
10367
|
-
update: (zoomLevel: number) => void;
|
|
10368
|
-
destroy(): void;
|
|
10369
|
-
}
|
|
10370
|
-
export {};
|
|
10371
|
-
}
|
|
10372
|
-
|
|
10373
11182
|
declare module '@mappedin/react-sdk/geojson/src/systems/mesh-creation-and-optimization/system' {
|
|
10374
11183
|
import type { BufferGeometry } from 'three';
|
|
10375
11184
|
import type { RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
10376
11185
|
import { Geometry3D, Geometry3DObject3D } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
10377
|
-
import { type MeshComponentProperties } from '@mappedin/react-sdk/geojson/src/components/mesh';
|
|
11186
|
+
import { MeshComponent, type MeshComponentProperties } from '@mappedin/react-sdk/geojson/src/components/mesh';
|
|
11187
|
+
import { StyleComponent } from '@mappedin/react-sdk/geojson/src/components/styles/style';
|
|
10378
11188
|
import type { Feature, LineString, MultiPolygon, Point, Polygon } from 'geojson';
|
|
10379
11189
|
import type { LineStyle, ModelProperties, ModelStyle, PaintStyle } from '@mappedin/react-sdk/geojson/src/types';
|
|
10380
11190
|
import type { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
|
|
11191
|
+
import type { ModelGeometry3D } from '@mappedin/react-sdk/geojson/src/entities';
|
|
10381
11192
|
import { PubSub } from '@packages/internal/common';
|
|
10382
11193
|
export class MeshCreationAndOptimizationSystem extends PubSub<{
|
|
10383
11194
|
'model-loaded': void;
|
|
@@ -10387,8 +11198,8 @@ declare module '@mappedin/react-sdk/geojson/src/systems/mesh-creation-and-optimi
|
|
|
10387
11198
|
loader?: GLTFLoader;
|
|
10388
11199
|
constructor(state: RendererState, convertTo3DMapPosition: any);
|
|
10389
11200
|
getGLTFLoader(): Promise<void>;
|
|
10390
|
-
createEntityFromFeature(id: string | number, feature: Feature<Polygon | LineString | MultiPolygon, MeshComponentProperties>, style?: LineStyle | PaintStyle): Geometry3D
|
|
10391
|
-
createModelFromFeature(id: string | number, feature: Feature<Point, ModelProperties>, style?: ModelStyle):
|
|
11201
|
+
createEntityFromFeature(id: string | number, feature: Feature<Polygon | LineString | MultiPolygon, MeshComponentProperties>, style?: LineStyle | PaintStyle): Geometry3D<MeshComponent, StyleComponent, import("../../components/interaction").InteractionComponent, "geometry">;
|
|
11202
|
+
createModelFromFeature(id: string | number, feature: Feature<Point, ModelProperties>, style?: ModelStyle): ModelGeometry3D;
|
|
10392
11203
|
populateEntityMesh(entity: Geometry3D, geometry: BufferGeometry): void;
|
|
10393
11204
|
populateModelGroup(entities: Set<string | number>, url: string, tree: any): Promise<Geometry3DObject3D>;
|
|
10394
11205
|
populateEntityGroup(entities: Set<string | number>): Set<string | number>;
|
|
@@ -10472,9 +11283,9 @@ declare module '@mappedin/react-sdk/geojson/src/systems/2d-draw/system' {
|
|
|
10472
11283
|
declare module '@mappedin/react-sdk/geojson/src/systems/draw/system' {
|
|
10473
11284
|
import { PubSub } from '@packages/internal/common';
|
|
10474
11285
|
import { MeshComponent } from '@mappedin/react-sdk/geojson/src/components/mesh';
|
|
10475
|
-
import { StyleComponent } from '@mappedin/react-sdk/geojson/src/components/style';
|
|
11286
|
+
import type { StyleComponent } from '@mappedin/react-sdk/geojson/src/components/styles/style';
|
|
10476
11287
|
import type { RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
10477
|
-
import { InteractionComponent } from '@mappedin/react-sdk/geojson/src/components/interaction';
|
|
11288
|
+
import type { InteractionComponent } from '@mappedin/react-sdk/geojson/src/components/interaction';
|
|
10478
11289
|
import type { GeometryGroupStyleComponent } from '@mappedin/react-sdk/geojson/src/components/geometry-group-style';
|
|
10479
11290
|
export class DrawSystem extends PubSub<{
|
|
10480
11291
|
'texture-loaded': void;
|
|
@@ -10521,7 +11332,7 @@ declare module '@mappedin/react-sdk/geojson/src/systems/render/system' {
|
|
|
10521
11332
|
constructor(renderer: Renderer, state: RendererState, mode: RendererCore['mode'], scene: Scene, cameraObject: PerspectiveCamera, viewCamera: Camera, systems: Systems);
|
|
10522
11333
|
twoDdirty: boolean;
|
|
10523
11334
|
threeDdirty: boolean;
|
|
10524
|
-
update: (sync?: boolean) =>
|
|
11335
|
+
update: (sync?: boolean) => Promise<any>;
|
|
10525
11336
|
destroy(): void;
|
|
10526
11337
|
}
|
|
10527
11338
|
}
|
|
@@ -10805,16 +11616,19 @@ declare module '@mappedin/react-sdk/geojson/src/systems/geometry-in-focus/system
|
|
|
10805
11616
|
import type { RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
10806
11617
|
import { type PerspectiveCamera } from 'three';
|
|
10807
11618
|
export class GeometryInFocusSystem extends PubSub<{
|
|
10808
|
-
|
|
11619
|
+
/**
|
|
11620
|
+
* Returns the list of entities that are likely in focus, sorted by the weight of the raycast.
|
|
11621
|
+
*/
|
|
11622
|
+
'geometry-in-focus': string[];
|
|
10809
11623
|
}> {
|
|
10810
|
-
|
|
10811
|
-
|
|
10812
|
-
|
|
10813
|
-
|
|
10814
|
-
|
|
10815
|
-
|
|
10816
|
-
|
|
10817
|
-
|
|
11624
|
+
#private;
|
|
11625
|
+
cameraDirty: boolean;
|
|
11626
|
+
focusablesDirty: boolean;
|
|
11627
|
+
constructor(state: RendererState, camera: PerspectiveCamera);
|
|
11628
|
+
resize(): void;
|
|
11629
|
+
update: () => void;
|
|
11630
|
+
updateRaf(): void;
|
|
11631
|
+
destroy(): void;
|
|
10818
11632
|
}
|
|
10819
11633
|
}
|
|
10820
11634
|
|
|
@@ -10834,7 +11648,7 @@ declare module '@mappedin/react-sdk/geojson/src/systems/path' {
|
|
|
10834
11648
|
}
|
|
10835
11649
|
|
|
10836
11650
|
declare module '@mappedin/react-sdk/geojson/src/systems/mesh-detachment/system' {
|
|
10837
|
-
import { type
|
|
11651
|
+
import { type All3DTypes, type RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
10838
11652
|
/**
|
|
10839
11653
|
* This system is responsible for updating the opacity of the mesh, which results in the mesh
|
|
10840
11654
|
* being detached from the parent's optimized geometry group and rendered as a separate mesh.
|
|
@@ -10844,16 +11658,13 @@ declare module '@mappedin/react-sdk/geojson/src/systems/mesh-detachment/system'
|
|
|
10844
11658
|
rendererState: RendererState;
|
|
10845
11659
|
dirty: boolean;
|
|
10846
11660
|
constructor(rendererState: RendererState);
|
|
10847
|
-
updateOne(geometry:
|
|
11661
|
+
updateOne(geometry: All3DTypes | undefined): void;
|
|
10848
11662
|
update(): void;
|
|
10849
11663
|
}
|
|
10850
11664
|
}
|
|
10851
11665
|
|
|
10852
11666
|
declare module '@mappedin/react-sdk/geojson/src/systems/mesh-modification/system' {
|
|
10853
|
-
import {
|
|
10854
|
-
import type { GeometryGroupObject3D } from '@mappedin/react-sdk/geojson/src/entities/geometry-group';
|
|
10855
|
-
import type { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
10856
|
-
import type { RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
11667
|
+
import type { EntityTypes, RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
10857
11668
|
/**
|
|
10858
11669
|
* Any physical changes to geometry should go in here. This includes height changes, etc.
|
|
10859
11670
|
* This is to ensure that physical changes apply before any other systems need to do their work,
|
|
@@ -10866,7 +11677,7 @@ declare module '@mappedin/react-sdk/geojson/src/systems/mesh-modification/system
|
|
|
10866
11677
|
rendererState: RendererState;
|
|
10867
11678
|
dirty: boolean;
|
|
10868
11679
|
constructor(rendererState: RendererState);
|
|
10869
|
-
updateOne(entity
|
|
11680
|
+
updateOne(entity?: EntityTypes): void;
|
|
10870
11681
|
update(): void;
|
|
10871
11682
|
cleanup(): void;
|
|
10872
11683
|
}
|
|
@@ -10885,14 +11696,58 @@ declare module '@mappedin/react-sdk/geojson/src/systems/pre-render/system' {
|
|
|
10885
11696
|
}
|
|
10886
11697
|
}
|
|
10887
11698
|
|
|
10888
|
-
declare module '@mappedin/react-sdk/geojson/src/
|
|
10889
|
-
import type {
|
|
10890
|
-
|
|
10891
|
-
export const
|
|
10892
|
-
|
|
10893
|
-
|
|
10894
|
-
|
|
11699
|
+
declare module '@mappedin/react-sdk/geojson/src/components/styles/style' {
|
|
11700
|
+
import type { LineStyle } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
11701
|
+
export const DEFAULT_COLOR = "#ffffff";
|
|
11702
|
+
export const DEFAULT_HEIGHT = 0.1;
|
|
11703
|
+
/**
|
|
11704
|
+
* Determines how a material is rendered, back face, front face or both (default)
|
|
11705
|
+
*/
|
|
11706
|
+
export type MaterialSide = 'back' | 'front' | 'double';
|
|
11707
|
+
type Style = {
|
|
11708
|
+
color: string;
|
|
11709
|
+
width: number;
|
|
11710
|
+
opacity: number;
|
|
11711
|
+
visible: boolean;
|
|
11712
|
+
height: number;
|
|
11713
|
+
altitude: number;
|
|
11714
|
+
join: LineStyle['join'];
|
|
11715
|
+
cap: LineStyle['cap'];
|
|
11716
|
+
topColor?: string;
|
|
11717
|
+
texture?: string;
|
|
11718
|
+
topTexture?: string;
|
|
11719
|
+
outline: boolean;
|
|
11720
|
+
showImage: boolean;
|
|
11721
|
+
flipImageToFaceCamera: boolean;
|
|
11722
|
+
url?: string;
|
|
11723
|
+
side?: MaterialSide;
|
|
11724
|
+
renderOrder?: number;
|
|
11725
|
+
};
|
|
11726
|
+
export class StyleComponent implements Style {
|
|
11727
|
+
initialColor: string;
|
|
11728
|
+
color: string;
|
|
11729
|
+
topColor?: string;
|
|
11730
|
+
topTexture?: string;
|
|
11731
|
+
texture?: string;
|
|
11732
|
+
hoverColor?: string;
|
|
11733
|
+
dirty: boolean;
|
|
11734
|
+
visible: boolean;
|
|
11735
|
+
opacity: number;
|
|
11736
|
+
width: number;
|
|
11737
|
+
height: number;
|
|
11738
|
+
initialHeight: number;
|
|
11739
|
+
altitude: number;
|
|
11740
|
+
join: LineStyle['join'];
|
|
11741
|
+
cap: LineStyle['cap'];
|
|
11742
|
+
outline: boolean;
|
|
11743
|
+
showImage: boolean;
|
|
11744
|
+
flipImageToFaceCamera: boolean;
|
|
11745
|
+
url?: string;
|
|
11746
|
+
side: MaterialSide;
|
|
11747
|
+
renderOrder: number;
|
|
11748
|
+
constructor(style?: Partial<Style>);
|
|
10895
11749
|
}
|
|
11750
|
+
export {};
|
|
10896
11751
|
}
|
|
10897
11752
|
|
|
10898
11753
|
declare module '@mappedin/react-sdk/packages/geojson-navigator/src' {
|
|
@@ -10987,6 +11842,17 @@ declare module '@mappedin/react-sdk/geojson/src/utils/tranform-request' {
|
|
|
10987
11842
|
};
|
|
10988
11843
|
}
|
|
10989
11844
|
|
|
11845
|
+
declare module '@mappedin/react-sdk/geojson/src/utils/math' {
|
|
11846
|
+
export function normalizeAngle(angle: number): number;
|
|
11847
|
+
}
|
|
11848
|
+
|
|
11849
|
+
declare module '@mappedin/react-sdk/geojson/src/entities' {
|
|
11850
|
+
export { updateInteractivity } from '@mappedin/react-sdk/geojson/src/entities/utils';
|
|
11851
|
+
export { Geometry2D, Geometry2DComponents } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
|
|
11852
|
+
export { Geometry3D, Geometry3DComponents } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
11853
|
+
export type { PathMesh, PatMeshContainer, PathMaterial, Geometry3DTypes, ImageGeometry3D, TextGeometry3D, ModelGeometry3D, CustomGeometry3D, MeshGeometry3D, } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
11854
|
+
}
|
|
11855
|
+
|
|
10990
11856
|
declare module '@mappedin/react-sdk/geojson/src/systems/exporter/exporter' {
|
|
10991
11857
|
import type { RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
10992
11858
|
export type GLTFExportOptions = {
|
|
@@ -11017,6 +11883,155 @@ declare module '@mappedin/react-sdk/geojson/src/systems/exporter/exporter' {
|
|
|
11017
11883
|
}
|
|
11018
11884
|
}
|
|
11019
11885
|
|
|
11886
|
+
declare module '@mappedin/react-sdk/geojson/src/components/styles/text-style' {
|
|
11887
|
+
/**
|
|
11888
|
+
* avoid storying default values on the text style to save space
|
|
11889
|
+
*/
|
|
11890
|
+
export class Text3DStyleComponent implements Partial<Text3DStyle> {
|
|
11891
|
+
visible?: boolean;
|
|
11892
|
+
altitude?: number;
|
|
11893
|
+
color?: string;
|
|
11894
|
+
dirty: boolean;
|
|
11895
|
+
maxWidth?: number;
|
|
11896
|
+
maxHeight?: number;
|
|
11897
|
+
hoverByPolygon?: boolean;
|
|
11898
|
+
flipToFaceCamera?: boolean | undefined;
|
|
11899
|
+
font?: string;
|
|
11900
|
+
fillOpacity?: number;
|
|
11901
|
+
fontSize?: number;
|
|
11902
|
+
margin?: number;
|
|
11903
|
+
outlineWidth?: number;
|
|
11904
|
+
outlineBlur?: number | string;
|
|
11905
|
+
outlineOffsetX?: number;
|
|
11906
|
+
strokeColor?: string;
|
|
11907
|
+
strokeOpacity?: number;
|
|
11908
|
+
strokeWidth?: number;
|
|
11909
|
+
hoverColor?: string | undefined;
|
|
11910
|
+
outlineOffsetY?: number;
|
|
11911
|
+
outlineColor?: string;
|
|
11912
|
+
outlineOpacity?: number;
|
|
11913
|
+
constructor(initialState?: Partial<Text3DStyle>);
|
|
11914
|
+
/**
|
|
11915
|
+
* Put together a json ignore all the undefined fields.
|
|
11916
|
+
* This is helpful when we Object.assign(instance, json) to update the instance.
|
|
11917
|
+
*/
|
|
11918
|
+
getState(includeDirty?: boolean): Partial<Text3DStyle>;
|
|
11919
|
+
}
|
|
11920
|
+
/**
|
|
11921
|
+
* Not directly storing default values on the text style to save space
|
|
11922
|
+
* TODO: lookign at text style spec from maplibre. we can also support:
|
|
11923
|
+
* letterSpacing?: number;
|
|
11924
|
+
* lineHeight: number;
|
|
11925
|
+
* anchor: number; => .anchorX & .anchorY
|
|
11926
|
+
* justify: nubmer; => .textAlign
|
|
11927
|
+
* tarnsform: string;
|
|
11928
|
+
* offset: number;
|
|
11929
|
+
*/
|
|
11930
|
+
export const DEFAULT_TEXT_STYLE: Readonly<Text3DStyle>;
|
|
11931
|
+
export type Text3DStyle = {
|
|
11932
|
+
/**
|
|
11933
|
+
* Controls the visibility of the text element.
|
|
11934
|
+
* @default true
|
|
11935
|
+
*/
|
|
11936
|
+
visible: boolean;
|
|
11937
|
+
/**
|
|
11938
|
+
* The color of the text. Will change to hoverColor when the associated polygon is hovered.
|
|
11939
|
+
* Accepts any CSS color string.
|
|
11940
|
+
* @default 'black'
|
|
11941
|
+
*/
|
|
11942
|
+
color: string;
|
|
11943
|
+
/**
|
|
11944
|
+
* When true, the text will flip to face the camera while maintaining its position.
|
|
11945
|
+
* @default true
|
|
11946
|
+
*/
|
|
11947
|
+
flipToFaceCamera: boolean;
|
|
11948
|
+
/**
|
|
11949
|
+
* URL to a custom font file (.ttf, .otf, .woff).
|
|
11950
|
+
* Falls back to Roboto if undefined.
|
|
11951
|
+
*/
|
|
11952
|
+
font: string | undefined;
|
|
11953
|
+
/**
|
|
11954
|
+
* The size of the text in meters. Will be automatically adjusted if it exceeds
|
|
11955
|
+
* the text area bounds.
|
|
11956
|
+
*/
|
|
11957
|
+
fontSize: number;
|
|
11958
|
+
/**
|
|
11959
|
+
* Padding between the text and its bounding box, in meters.
|
|
11960
|
+
* Can be specified as either:
|
|
11961
|
+
* - A single number for uniform padding on all sides
|
|
11962
|
+
* - An array of 4 numbers [top, right, bottom, left] for individual side padding
|
|
11963
|
+
* @default [0.2, 1, 0.2, 1.5]
|
|
11964
|
+
*/
|
|
11965
|
+
margin: number | [number, number, number, number];
|
|
11966
|
+
/**
|
|
11967
|
+
* Color of the text outline.
|
|
11968
|
+
* Accepts any CSS color string.
|
|
11969
|
+
* @default 'black'
|
|
11970
|
+
*/
|
|
11971
|
+
outlineColor: string;
|
|
11972
|
+
/**
|
|
11973
|
+
* Opacity of the text outline.
|
|
11974
|
+
* Accepts values between 0 and 1.
|
|
11975
|
+
* @default 1
|
|
11976
|
+
*/
|
|
11977
|
+
outlineOpacity: number;
|
|
11978
|
+
/**
|
|
11979
|
+
* Blur radius for the text outline.
|
|
11980
|
+
* Can be a number in pixels or a string with units.
|
|
11981
|
+
*/
|
|
11982
|
+
outlineBlur: number | string;
|
|
11983
|
+
/**
|
|
11984
|
+
* Width of the text outline effect in pixels.
|
|
11985
|
+
*/
|
|
11986
|
+
outlineWidth: number;
|
|
11987
|
+
/**
|
|
11988
|
+
* Horizontal offset of the outline effect from the text, in pixels.
|
|
11989
|
+
*/
|
|
11990
|
+
outlineOffsetX: number;
|
|
11991
|
+
/**
|
|
11992
|
+
* Vertical offset of the outline effect from the text, in pixels.
|
|
11993
|
+
*/
|
|
11994
|
+
outlineOffsetY: number;
|
|
11995
|
+
/**
|
|
11996
|
+
* Width of the inner stroke of each text glyph.
|
|
11997
|
+
* @default 0
|
|
11998
|
+
*/
|
|
11999
|
+
strokeWidth: number;
|
|
12000
|
+
/**
|
|
12001
|
+
* Maximum width constraint for the text area in meters.
|
|
12002
|
+
* Overrides default text field constraints when set.
|
|
12003
|
+
*/
|
|
12004
|
+
maxWidth: number | undefined;
|
|
12005
|
+
/**
|
|
12006
|
+
* Maximum height constraint for the text area in meters.
|
|
12007
|
+
* Overrides default text field constraints when set.
|
|
12008
|
+
*/
|
|
12009
|
+
maxHeight: number | undefined;
|
|
12010
|
+
/**
|
|
12011
|
+
* Opacity of the text stroke when strokeWidth > 0.
|
|
12012
|
+
* @default 1
|
|
12013
|
+
*/
|
|
12014
|
+
strokeOpacity: number;
|
|
12015
|
+
/**
|
|
12016
|
+
* Color of the text stroke when strokeWidth > 0.
|
|
12017
|
+
* Accepts any CSS color string.
|
|
12018
|
+
* @default 'black'
|
|
12019
|
+
*/
|
|
12020
|
+
strokeColor: string;
|
|
12021
|
+
/**
|
|
12022
|
+
* Opacity of the text fill, independent of stroke and outline opacity.
|
|
12023
|
+
* Set to 0 to show only stroke/outline.
|
|
12024
|
+
* Accepts values between 0 and 1.
|
|
12025
|
+
*/
|
|
12026
|
+
fillOpacity: number;
|
|
12027
|
+
/**
|
|
12028
|
+
* Color to display when text is hovered.
|
|
12029
|
+
* Falls back to global hover color if undefined.
|
|
12030
|
+
*/
|
|
12031
|
+
hoverColor: string | undefined;
|
|
12032
|
+
};
|
|
12033
|
+
}
|
|
12034
|
+
|
|
11020
12035
|
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-object' {
|
|
11021
12036
|
import type { Polygon, MultiPolygon, FloorProperties as MVFFloor, ParsedMVF, Feature } from '@mappedin/mvf';
|
|
11022
12037
|
import type { RendererCore } from '@mappedin/core-sdk';
|
|
@@ -11041,6 +12056,8 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-object' {
|
|
|
11041
12056
|
floorStackId: string;
|
|
11042
12057
|
constructor(parentId: string, floor: MVFFloor, renderer: RendererCore, multiFloorView: Required<TShow3DMapOptions['multiFloorView']>, options: TShow3DMapOptions, mvf?: ParsedMVF, styleMap?: AggregatedStyleMap);
|
|
11043
12058
|
load: () => this;
|
|
12059
|
+
get visible(): boolean;
|
|
12060
|
+
setVisible(visible: boolean): void;
|
|
11044
12061
|
}
|
|
11045
12062
|
export {};
|
|
11046
12063
|
}
|
|
@@ -11053,7 +12070,7 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/utils' {
|
|
|
11053
12070
|
import type { LabelState, MarkerState, GeometryState, CollisionRankingTier, LineStyle, PaintStyle } from '@mappedin/core-sdk';
|
|
11054
12071
|
import { type TGeometryState, type TLabelState, type TDirectionInstructionAction, type TShow3DMapOptions, type Label, type Marker, type Model } from '@mappedin/react-sdk/mappedin-js/src';
|
|
11055
12072
|
import type { TDoorsState, TMarkerState, TWallsState } from '@mappedin/react-sdk/mappedin-js/src/types';
|
|
11056
|
-
import type { Image, Shape } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
12073
|
+
import type { Image, Shape, Text3D } from '@mappedin/react-sdk/mappedin-js/src/map-view-objects';
|
|
11057
12074
|
import type { GeoJsonApi } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/api';
|
|
11058
12075
|
import type { Tween } from '@tweenjs/tween.js';
|
|
11059
12076
|
export function convertCoordinateToPosition(coord: Coordinate): Position;
|
|
@@ -11082,32 +12099,41 @@ declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/utils' {
|
|
|
11082
12099
|
};
|
|
11083
12100
|
export function groupGeometryByStyle(features: Feature<LineString | Polygon | Point, SpaceProperties | ObstructionProperties>[], styleMap: AggregatedStyleMap): Map<WithId<PolygonStyle> | WithId<LineStringStyle> | WithId<PointStyle>, Feature<Point | LineString | Polygon, WithPolygonImage<SpaceProperties> | WithPolygonImage<ObstructionProperties>>[]>;
|
|
11084
12101
|
export function translateToCoreStyle(style: PolygonStyle | LineStringStyle, userOptions?: TShow3DMapOptions): PaintStyle | LineStyle;
|
|
11085
|
-
export const getTargetID: <T extends Space | Shape | MapObject | Label | Marker | Model | Image | string>(target: T, api: GeoJsonApi) => string | undefined;
|
|
12102
|
+
export const getTargetID: <T extends Space | Shape | MapObject | Label | Text3D | Marker | Model | Image | string>(target: T, api: GeoJsonApi) => string | undefined;
|
|
11086
12103
|
export function tweenToPromise(tween: Tween): Promise<void>;
|
|
12104
|
+
export function unique<T>(array: T[]): T[];
|
|
11087
12105
|
}
|
|
11088
12106
|
|
|
11089
12107
|
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-stack-object' {
|
|
11090
12108
|
import type { RendererCore } from '@mappedin/core-sdk';
|
|
11091
|
-
import type { FloorId, FloorStack as MVFFloorStack } from '@mappedin/mvf';
|
|
12109
|
+
import type { FloorId, FloorStack as MVFFloorStack, Facade as MVFFacade } from '@mappedin/mvf';
|
|
11092
12110
|
import type { FloorObject } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/floor-object';
|
|
11093
|
-
export class FloorStackObject implements Omit<MVFFloorStack, 'maps' | 'floors'> {
|
|
12111
|
+
export class FloorStackObject implements Omit<MVFFloorStack, 'maps' | 'floors' | 'defaultFloor'> {
|
|
12112
|
+
#private;
|
|
11094
12113
|
id: MVFFloorStack['id'];
|
|
11095
12114
|
externalId: MVFFloorStack['externalId'];
|
|
11096
12115
|
name: MVFFloorStack['name'];
|
|
11097
12116
|
type: MVFFloorStack['type'];
|
|
11098
12117
|
floorIds: FloorId[];
|
|
12118
|
+
defaultFloorId?: MVFFloorStack['defaultFloor'];
|
|
11099
12119
|
/** Sorted floor objects by elevation */
|
|
11100
12120
|
floorObjects: FloorObject[];
|
|
11101
12121
|
floorObjectsByElevation: Map<number, FloorObject>;
|
|
11102
12122
|
metadata?: MVFFloorStack['metadata'];
|
|
11103
12123
|
footprint?: MVFFloorStack['footprint'];
|
|
11104
12124
|
containerId: string;
|
|
11105
|
-
|
|
12125
|
+
facade?: MVFFacade;
|
|
12126
|
+
constructor(floorStack: MVFFloorStack, parentId: string, renderer: RendererCore, facade?: MVFFacade);
|
|
11106
12127
|
get defaultFloor(): FloorObject;
|
|
11107
12128
|
addFloor(floor: FloorObject): void;
|
|
12129
|
+
setFacadeVisible(visible: boolean): void;
|
|
11108
12130
|
}
|
|
11109
12131
|
}
|
|
11110
12132
|
|
|
12133
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/dynamic-focus' {
|
|
12134
|
+
export { DynamicFocus } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/dynamic-focus/dynamic-focus';
|
|
12135
|
+
}
|
|
12136
|
+
|
|
11111
12137
|
declare module '@mappedin/react-sdk/geojson/src/systems/collisions/collider-processor' {
|
|
11112
12138
|
import { Rectangle } from '@packages/internal/quad-tree';
|
|
11113
12139
|
export type TSerializedCollider = {
|
|
@@ -11137,42 +12163,6 @@ declare module '@mappedin/react-sdk/geojson/src/systems/collisions/collider-proc
|
|
|
11137
12163
|
};
|
|
11138
12164
|
}
|
|
11139
12165
|
|
|
11140
|
-
declare module '@mappedin/react-sdk/geojson/src/entities/utils' {
|
|
11141
|
-
import type { CollisionRankingTier, GeometryState, LabelState, RendererCore } from '@mappedin/react-sdk/geojson/src';
|
|
11142
|
-
import { type MarkerState } from '@mappedin/react-sdk/geojson/src/components/marker';
|
|
11143
|
-
import type { PathUpdateState } from '@mappedin/react-sdk/geojson/src/components/path';
|
|
11144
|
-
import type { Geometry3DTypes, Position, RendererState } from '@mappedin/react-sdk/geojson/src/renderer';
|
|
11145
|
-
import { GeometryGroupObject3D, type GeometryGroupState } from '@mappedin/react-sdk/geojson/src/entities/geometry-group';
|
|
11146
|
-
import { GroupContainerObject3D } from '@mappedin/react-sdk/geojson/src/entities/group-container';
|
|
11147
|
-
import { Geometry3D } from '@mappedin/react-sdk/geojson/src/entities/geometry3d';
|
|
11148
|
-
import { Geometry2D } from '@mappedin/react-sdk/geojson/src/entities/geometry2d';
|
|
11149
|
-
import type { StyleComponent } from '@mappedin/react-sdk/geojson/src/components/style';
|
|
11150
|
-
import type { GeometryGroupStyleComponent } from '@mappedin/react-sdk/geojson/src/components/geometry-group-style';
|
|
11151
|
-
export function updateInteractivity(entity: Geometry3DTypes | Geometry2D, update: boolean | undefined, state: RendererState): boolean;
|
|
11152
|
-
export function updateGroupColor(entity: GeometryGroupObject3D, state: RendererState, update: Partial<Pick<GeometryGroupState, 'color' | 'topColor'>>): boolean | undefined;
|
|
11153
|
-
export function updateGroupShading(entity: GeometryGroupObject3D, update?: GeometryGroupState['shading']): boolean;
|
|
11154
|
-
export function updateImageProps(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
11155
|
-
export function updateHeight(entity: Geometry3D | GeometryGroupObject3D, state: RendererState, update?: number): boolean;
|
|
11156
|
-
export function updateColor(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
11157
|
-
export function updatePosition(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Position | undefined, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']): void;
|
|
11158
|
-
export function updateParent(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: GroupContainerObject3D | undefined): boolean;
|
|
11159
|
-
export function updateEnabled(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: boolean | undefined): void;
|
|
11160
|
-
export function updateMarker(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<MarkerState> | undefined, state: RendererState): boolean;
|
|
11161
|
-
export function updateRank(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: CollisionRankingTier | undefined): boolean;
|
|
11162
|
-
export function updateLabel(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<LabelState> | undefined, state: RendererState): void;
|
|
11163
|
-
export function updateHoverColor(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: string): void;
|
|
11164
|
-
export function updateFlipImageToFaceCamera(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: boolean): void;
|
|
11165
|
-
export function updateVisibility(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: boolean): boolean;
|
|
11166
|
-
export function updateOpacity(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, state: RendererState, update?: number): void;
|
|
11167
|
-
export function updateGroupTexture(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Pick<GeometryGroupStyleComponent, 'texture' | 'topTexture'>): void;
|
|
11168
|
-
export function updateIndividualGeometryTexture(entity: Geometry3D, update?: Pick<StyleComponent, 'texture' | 'topTexture'>): boolean;
|
|
11169
|
-
export function updateIndividualGeometryOpacity(entity: Geometry3D, update?: number): boolean;
|
|
11170
|
-
export function updateAltitude(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: number): boolean;
|
|
11171
|
-
export function updateOutline(entity: Geometry3DTypes, update?: boolean): boolean;
|
|
11172
|
-
export function handlePathUpdate(geometry: Geometry3D, update: PathUpdateState): void;
|
|
11173
|
-
export function pickPathOptions(update: PathUpdateState): Partial<PathUpdateState>;
|
|
11174
|
-
}
|
|
11175
|
-
|
|
11176
12166
|
declare module '@mappedin/react-sdk/geojson/src/systems/interactions/system' {
|
|
11177
12167
|
import type { PerspectiveCamera, Vector3, Object3D, Mesh } from 'three';
|
|
11178
12168
|
import { Raycaster } from 'three';
|
|
@@ -19755,11 +20745,10 @@ declare module '@mappedin/react-sdk/packages/geojson-navigator/src/navigator' {
|
|
|
19755
20745
|
|
|
19756
20746
|
declare module '@mappedin/react-sdk/packages/geojson-navigator/src/navigator/navigator' {
|
|
19757
20747
|
import type { Position, Feature, MultiPolygon, Polygon } from 'geojson';
|
|
19758
|
-
import type { NodeCollection
|
|
20748
|
+
import type { NodeCollection } from '@mappedin/react-sdk/packages/geojson-navigator/src/types/node';
|
|
19759
20749
|
import type { ObstructionCollection } from '@mappedin/react-sdk/packages/geojson-navigator/src/types/obstruction';
|
|
19760
20750
|
import type { SpaceCollection } from '@mappedin/react-sdk/packages/geojson-navigator/src/types/space';
|
|
19761
20751
|
import type { DirectionsCollection } from '@mappedin/react-sdk/packages/geojson-navigator/src/types/directions';
|
|
19762
|
-
import type { CoordinateFeature } from '@mappedin/react-sdk/packages/geojson-navigator/src/types/coordinate';
|
|
19763
20752
|
/**
|
|
19764
20753
|
* Options for simplifying directions in the Navigator class.
|
|
19765
20754
|
*/
|
|
@@ -19803,7 +20792,6 @@ declare module '@mappedin/react-sdk/packages/geojson-navigator/src/navigator/nav
|
|
|
19803
20792
|
geojsonCollection?: ObstructionCollection | SpaceCollection;
|
|
19804
20793
|
groupBy?: string;
|
|
19805
20794
|
});
|
|
19806
|
-
findNearestNode: (feature: CoordinateFeature) => NodeFeature | null;
|
|
19807
20795
|
/**
|
|
19808
20796
|
* Calculates and returns a set of directions from origin nodes to destination nodes, including detailed properties.
|
|
19809
20797
|
*
|
|
@@ -19952,6 +20940,77 @@ declare module '@mappedin/react-sdk/packages/geojson-navigator/src/types/coordin
|
|
|
19952
20940
|
export type CoordinateFeature = Feature<Point, CoordinateProperties>;
|
|
19953
20941
|
}
|
|
19954
20942
|
|
|
20943
|
+
declare module '@mappedin/react-sdk/mappedin-js/src/api-geojson/dynamic-focus/dynamic-focus' {
|
|
20944
|
+
import { type RendererCore } from '@mappedin/core-sdk';
|
|
20945
|
+
import { PubSub } from '@packages/internal/common';
|
|
20946
|
+
import type { Floor, FloorStack } from '@mappedin/react-sdk/mappedin-js/src/map-data-objects';
|
|
20947
|
+
import type { GeoJsonApi } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/api';
|
|
20948
|
+
import type { GeojsonApiMapObject } from '@mappedin/react-sdk/mappedin-js/src/api-geojson/map-object';
|
|
20949
|
+
/**
|
|
20950
|
+
* @experimental
|
|
20951
|
+
* @internal
|
|
20952
|
+
*/
|
|
20953
|
+
export type TDynamicFocusEvents = {
|
|
20954
|
+
'focus-change': {
|
|
20955
|
+
facades: string[];
|
|
20956
|
+
spaces: string[];
|
|
20957
|
+
};
|
|
20958
|
+
};
|
|
20959
|
+
/**
|
|
20960
|
+
* @experimental
|
|
20961
|
+
* @internal
|
|
20962
|
+
*/
|
|
20963
|
+
export type TDynamicFocusOptions = {
|
|
20964
|
+
/**
|
|
20965
|
+
* The minimum zoom level at which Dynamic Focus will detect a Facade and reveal the interior spaces.
|
|
20966
|
+
* @default 17
|
|
20967
|
+
*/
|
|
20968
|
+
minZoomLevel?: number;
|
|
20969
|
+
};
|
|
20970
|
+
/**
|
|
20971
|
+
* @experimental
|
|
20972
|
+
* @internal
|
|
20973
|
+
*/
|
|
20974
|
+
export class DynamicFocus extends PubSub<TDynamicFocusEvents> {
|
|
20975
|
+
#private;
|
|
20976
|
+
/** @internal */
|
|
20977
|
+
constructor(core: RendererCore, geoJSONApi: GeoJsonApi, { currentMapGetter }: {
|
|
20978
|
+
currentMapGetter: CurrentMapGetter;
|
|
20979
|
+
});
|
|
20980
|
+
/**
|
|
20981
|
+
* @experimental
|
|
20982
|
+
* Enables Dynamic Focus and allows the camera to automatically set the floor stack when a facade is hovered.
|
|
20983
|
+
*/
|
|
20984
|
+
enable(options?: TDynamicFocusOptions): void;
|
|
20985
|
+
/**
|
|
20986
|
+
* @experimental
|
|
20987
|
+
* Disables Dynamic Focus and prevents the camera from automatically setting the floor stack when a facade is hovered.
|
|
20988
|
+
*/
|
|
20989
|
+
disable(): void;
|
|
20990
|
+
/**
|
|
20991
|
+
* @experimental
|
|
20992
|
+
* Returns the enabled state of Dynamic Focus.
|
|
20993
|
+
*/
|
|
20994
|
+
get enabled(): boolean;
|
|
20995
|
+
/**
|
|
20996
|
+
* @experimental
|
|
20997
|
+
* Sets the default floor for a floor stack. This is the floor that will be shown when the floor stack is in focus.
|
|
20998
|
+
* See {@link resetDefaultFloorForStack} to reset the default floor.
|
|
20999
|
+
* @param floorStack - The floor stack to set the default floor for.
|
|
21000
|
+
* @param floor - The floor to set as the default floor.
|
|
21001
|
+
*/
|
|
21002
|
+
setDefaultFloorForStack(floorStack: FloorStack, floor: Floor): void;
|
|
21003
|
+
/**
|
|
21004
|
+
* @experimental
|
|
21005
|
+
* Resets the default floor for a floor stack to it's initial value.
|
|
21006
|
+
* @param floorStack - The floor stack to reset the default floor for.
|
|
21007
|
+
*/
|
|
21008
|
+
resetDefaultFloorForStack(floorStack: FloorStack): void;
|
|
21009
|
+
}
|
|
21010
|
+
type CurrentMapGetter = () => GeojsonApiMapObject | undefined;
|
|
21011
|
+
export {};
|
|
21012
|
+
}
|
|
21013
|
+
|
|
19955
21014
|
declare module '@mappedin/react-sdk/geojson/src/systems/interactions/tap-controller' {
|
|
19956
21015
|
export enum TapType {
|
|
19957
21016
|
onefinger = 0,
|