@smplrspace/smplr-loader 2.4.1-beta.2 → 2.4.1-beta.4
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/package.json
CHANGED
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
declare interface BaseDataLayer<T, D extends UnknownData> {
|
|
2
|
+
tooltip?: (dataElement: T & D) => string;
|
|
3
|
+
onClick?: (dataElement: T & D) => void;
|
|
4
|
+
onHover?: (dataElement: T & D) => void;
|
|
5
|
+
onHoverOut?: (dataElement: T & D) => void;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
declare type CameraMode = '2d' | '3d'
|
|
9
|
+
|
|
10
|
+
declare type DataLayer<D extends UnknownData = NoData> = PointDataLayer<D> | IconDataLayer<D> | PolygonDataLayer<D> | PolylineDataLayer<D> | FurnitureDataLayer<D>;
|
|
11
|
+
|
|
12
|
+
declare interface DeprecatedPreviewProps {
|
|
13
|
+
mode: CameraMode;
|
|
14
|
+
onViewerReady: () => void;
|
|
15
|
+
onError: () => void;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
declare interface Filter {
|
|
19
|
+
background: {
|
|
20
|
+
clearColor: string;
|
|
21
|
+
};
|
|
22
|
+
directionalLight: {
|
|
23
|
+
distance: number;
|
|
24
|
+
intensity: number;
|
|
25
|
+
};
|
|
26
|
+
hemisphericLight: {
|
|
27
|
+
diffuseColor: string;
|
|
28
|
+
specularColor: string;
|
|
29
|
+
groundColor: string;
|
|
30
|
+
intensity: number;
|
|
31
|
+
};
|
|
32
|
+
whiteMaterial: {
|
|
33
|
+
baseColor: string;
|
|
34
|
+
metallicRatio: number;
|
|
35
|
+
roughnessRatio: number;
|
|
36
|
+
alphaRatio: number;
|
|
37
|
+
};
|
|
38
|
+
indoorMaterial: {
|
|
39
|
+
baseColor: string;
|
|
40
|
+
metallicRatio: number;
|
|
41
|
+
roughnessRatio: number;
|
|
42
|
+
alphaRatio: number;
|
|
43
|
+
};
|
|
44
|
+
grassMaterial: {
|
|
45
|
+
baseColor: string;
|
|
46
|
+
metallicRatio: number;
|
|
47
|
+
roughnessRatio: number;
|
|
48
|
+
alphaRatio: number;
|
|
49
|
+
};
|
|
50
|
+
waterMaterial: {
|
|
51
|
+
baseColor: string;
|
|
52
|
+
metallicRatio: number;
|
|
53
|
+
roughnessRatio: number;
|
|
54
|
+
alphaRatio: number;
|
|
55
|
+
};
|
|
56
|
+
darkGreyMaterial: {
|
|
57
|
+
baseColor: string;
|
|
58
|
+
metallicRatio: number;
|
|
59
|
+
roughnessRatio: number;
|
|
60
|
+
alphaRatio: number;
|
|
61
|
+
};
|
|
62
|
+
glassMaterial: {
|
|
63
|
+
baseColor: string;
|
|
64
|
+
metallicRatio: number;
|
|
65
|
+
roughnessRatio: number;
|
|
66
|
+
alphaRatio: number;
|
|
67
|
+
};
|
|
68
|
+
metalMaterial: {
|
|
69
|
+
baseColor: string;
|
|
70
|
+
metallicRatio: number;
|
|
71
|
+
roughnessRatio: number;
|
|
72
|
+
alphaRatio: number;
|
|
73
|
+
};
|
|
74
|
+
compassMaterial: {
|
|
75
|
+
baseColor: string;
|
|
76
|
+
metallicRatio: number;
|
|
77
|
+
roughnessRatio: number;
|
|
78
|
+
alphaRatio: number;
|
|
79
|
+
};
|
|
80
|
+
placeholderMaterial: {
|
|
81
|
+
baseColor: string;
|
|
82
|
+
metallicRatio: number;
|
|
83
|
+
roughnessRatio: number;
|
|
84
|
+
alphaRatio: number;
|
|
85
|
+
};
|
|
86
|
+
hoveredMaterial: {
|
|
87
|
+
baseColor: string;
|
|
88
|
+
metallicRatio: number;
|
|
89
|
+
roughnessRatio: number;
|
|
90
|
+
alphaRatio: number;
|
|
91
|
+
};
|
|
92
|
+
selectedMaterial: {
|
|
93
|
+
baseColor: string;
|
|
94
|
+
metallicRatio: number;
|
|
95
|
+
roughnessRatio: number;
|
|
96
|
+
alphaRatio: number;
|
|
97
|
+
};
|
|
98
|
+
dataElement: {
|
|
99
|
+
defaultColor: string;
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
declare type FurnitureData = {
|
|
104
|
+
furnitureId: string | string[];
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
declare interface FurnitureDataLayer<D extends UnknownData = NoData> extends BaseDataLayer<FurnitureData, D> {
|
|
108
|
+
id: string;
|
|
109
|
+
type: 'furniture';
|
|
110
|
+
data: (FurnitureData & D)[];
|
|
111
|
+
color?: string | ((dataElement: FurnitureData & D) => string);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
declare type IconData = {
|
|
115
|
+
position: SmplrCoord3d;
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
declare interface IconDataLayer<D extends UnknownData = NoData> extends BaseDataLayer<IconData, D> {
|
|
119
|
+
id: string;
|
|
120
|
+
type: 'icon';
|
|
121
|
+
data: (IconData & D)[];
|
|
122
|
+
icon: {
|
|
123
|
+
url: string;
|
|
124
|
+
width: number;
|
|
125
|
+
height: number;
|
|
126
|
+
};
|
|
127
|
+
width?: number | ((dataElement: IconData & D) => number);
|
|
128
|
+
onDrag?: (dragged: {
|
|
129
|
+
data: IconData & D;
|
|
130
|
+
}) => void;
|
|
131
|
+
onDrop?: (dropped: {
|
|
132
|
+
data: IconData & D;
|
|
133
|
+
position: SmplrCoord3d;
|
|
134
|
+
}) => void;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
declare type NoData = Record<string, never>;
|
|
138
|
+
|
|
139
|
+
declare type OnPickFn = (args: { coordinates: SmplrCoord3d; furnitureId?: string }) => void
|
|
140
|
+
|
|
141
|
+
declare interface OrbitCameraPlacement {
|
|
142
|
+
alpha: number;
|
|
143
|
+
beta: number;
|
|
144
|
+
radius: number;
|
|
145
|
+
target: Vector3Coord;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
declare type PointData = {
|
|
149
|
+
position: SmplrCoord3d;
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
declare interface PointDataLayer<D extends UnknownData = NoData> extends BaseDataLayer<PointData, D> {
|
|
153
|
+
id: string;
|
|
154
|
+
type: 'point';
|
|
155
|
+
data: (PointData & D)[];
|
|
156
|
+
diameter?: number | ((dataElement: PointData & D) => number);
|
|
157
|
+
anchor?: 'bottom' | 'center' | 'top';
|
|
158
|
+
color?: string | ((dataElement: PointData & D) => string);
|
|
159
|
+
alpha?: number;
|
|
160
|
+
onDrag?: (dragged: {
|
|
161
|
+
data: PointData & D;
|
|
162
|
+
}) => void;
|
|
163
|
+
onDrop?: (dropped: {
|
|
164
|
+
data: PointData & D;
|
|
165
|
+
position: SmplrCoord3d;
|
|
166
|
+
}) => void;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
declare type PolygonData = {
|
|
170
|
+
coordinates: SmplrCoord2d[];
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
declare interface PolygonDataLayer<D extends UnknownData = NoData> extends BaseDataLayer<PolygonData, D> {
|
|
174
|
+
id: string;
|
|
175
|
+
type: 'polygon';
|
|
176
|
+
data: (PolygonData & D)[];
|
|
177
|
+
baseHeight?: number | ((dataElement: PolygonData & D) => number);
|
|
178
|
+
height?: number | ((dataElement: PolygonData & D) => number);
|
|
179
|
+
color?: string | ((dataElement: PolygonData & D) => string);
|
|
180
|
+
alpha?: number;
|
|
181
|
+
onDrag?: (dragged: {
|
|
182
|
+
data: PolygonData & D;
|
|
183
|
+
}) => void;
|
|
184
|
+
onDrop?: (dropped: {
|
|
185
|
+
data: PolygonData & D;
|
|
186
|
+
coordinates: SmplrCoord2d[];
|
|
187
|
+
}) => void;
|
|
188
|
+
disableReshape?: boolean;
|
|
189
|
+
reshapeBoxColor?: string;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
declare type PolylineData = {
|
|
193
|
+
coordinates: SmplrCoord3d[];
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
declare interface PolylineDataLayer<D extends UnknownData = NoData> extends BaseDataLayer<PolylineData, D> {
|
|
197
|
+
id: string;
|
|
198
|
+
type: 'polyline';
|
|
199
|
+
data: (PolylineData & D)[];
|
|
200
|
+
shape?: 'circle' | 'triangle' | 'square' | 'pentagon' | 'hexagon' | [number, number][];
|
|
201
|
+
cap?: boolean;
|
|
202
|
+
scale?: number | ((scaled: {
|
|
203
|
+
data: PolylineData & D;
|
|
204
|
+
stepIndex: number;
|
|
205
|
+
distance: number;
|
|
206
|
+
}) => number);
|
|
207
|
+
stepSize?: number;
|
|
208
|
+
color?: string | ((dataElement: PolylineData & D) => string);
|
|
209
|
+
alpha?: number;
|
|
210
|
+
onDrag?: (dragged: {
|
|
211
|
+
data: PolylineData & D;
|
|
212
|
+
}) => void;
|
|
213
|
+
onDrop?: (dropped: {
|
|
214
|
+
data: PolylineData & D;
|
|
215
|
+
coordinates: SmplrCoord3d[];
|
|
216
|
+
}) => void;
|
|
217
|
+
disableReshape?: boolean;
|
|
218
|
+
reshapeBoxColor?: string;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
declare interface RenderOptions {
|
|
222
|
+
compass?: boolean
|
|
223
|
+
annotations?: boolean
|
|
224
|
+
skybox?: boolean
|
|
225
|
+
backgroundColor?: string
|
|
226
|
+
filter?: Partial<Filter>
|
|
227
|
+
walls?: {
|
|
228
|
+
render?: boolean
|
|
229
|
+
alpha?: number
|
|
230
|
+
maxHeightCm?: number
|
|
231
|
+
showStructuralWalls?: boolean
|
|
232
|
+
}
|
|
233
|
+
doors?: boolean
|
|
234
|
+
windows?: boolean
|
|
235
|
+
flip?: boolean
|
|
236
|
+
objects?: boolean
|
|
237
|
+
floorplan?: {
|
|
238
|
+
render?: boolean
|
|
239
|
+
alpha?: number
|
|
240
|
+
elevationInCm?: number
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
declare interface SmplrCoord2d {
|
|
245
|
+
levelIndex: number;
|
|
246
|
+
x: number;
|
|
247
|
+
z: number;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
declare interface SmplrCoord3d extends SmplrCoord2d {
|
|
251
|
+
elevation: number;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
export declare class Space {
|
|
255
|
+
private options;
|
|
256
|
+
private viewerStarted;
|
|
257
|
+
private scene;
|
|
258
|
+
private container;
|
|
259
|
+
private setPickHandler;
|
|
260
|
+
private dispatchDataLayersDefinition;
|
|
261
|
+
constructor(options: SpaceOptions);
|
|
262
|
+
private checkOptions;
|
|
263
|
+
private prepareContainer;
|
|
264
|
+
remove: () => void;
|
|
265
|
+
preview({ mode, onViewerReady, onError }: DeprecatedPreviewProps): void;
|
|
266
|
+
startViewer(options: ViewerOptions): void;
|
|
267
|
+
addDataLayer<D extends UnknownData>(dataLayer: DataLayer<D>): void;
|
|
268
|
+
updateDataLayer<D extends UnknownData>(dataLayer: Partial<DataLayer<D>>): void;
|
|
269
|
+
removeDataLayer(id: string): void;
|
|
270
|
+
enablePickingMode({ onPick }: {
|
|
271
|
+
onPick: OnPickFn;
|
|
272
|
+
}): void;
|
|
273
|
+
disablePickingMode(): void;
|
|
274
|
+
getCameraPlacement(): OrbitCameraPlacement;
|
|
275
|
+
setCameraPlacement(placement: OrbitCameraPlacement): void;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
declare interface SpaceOptions {
|
|
279
|
+
spaceId: string;
|
|
280
|
+
clientToken: string;
|
|
281
|
+
containerId: string;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
declare type UnknownData = Record<string, unknown>;
|
|
285
|
+
|
|
286
|
+
declare interface Vector2Coord {
|
|
287
|
+
x: number;
|
|
288
|
+
y: number;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
declare interface Vector3Coord extends Vector2Coord {
|
|
292
|
+
z: number;
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
export declare const version = "2.4.1-beta.4";
|
|
296
|
+
|
|
297
|
+
declare interface ViewerOptions {
|
|
298
|
+
mode?: CameraMode;
|
|
299
|
+
preview?: boolean;
|
|
300
|
+
allowModeChange?: boolean;
|
|
301
|
+
cameraPlacement?: OrbitCameraPlacement;
|
|
302
|
+
disableCameraControls?: boolean;
|
|
303
|
+
hideNavigationButtons?: boolean;
|
|
304
|
+
compass?: boolean;
|
|
305
|
+
annotations?: boolean;
|
|
306
|
+
renderOptions?: RenderOptions;
|
|
307
|
+
onReady?: () => void;
|
|
308
|
+
onError?: (error: unknown) => void;
|
|
309
|
+
onModeChange?: (mode: CameraMode) => void;
|
|
310
|
+
loadingMessage?: string;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
export { }
|