@thinkersteps_labs/3d-viewer-react-native 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/Viewer.d.ts.map +1 -1
  2. package/dist/Viewer.js +106 -22
  3. package/dist/Viewer.js.map +1 -1
  4. package/dist/bridge/runtime-bundle.d.ts +1 -1
  5. package/dist/bridge/runtime-bundle.d.ts.map +1 -1
  6. package/dist/bridge/runtime-bundle.js +1 -1
  7. package/dist/bridge/runtime-bundle.js.map +1 -1
  8. package/dist/bridge/runtime-entry.d.ts +2 -0
  9. package/dist/bridge/runtime-entry.d.ts.map +1 -0
  10. package/dist/bridge/runtime-entry.js +616 -0
  11. package/dist/bridge/runtime-entry.js.map +1 -0
  12. package/dist/bridge/types.d.ts +77 -1
  13. package/dist/bridge/types.d.ts.map +1 -1
  14. package/dist/hooks/useViewerBridge.d.ts +1 -1
  15. package/dist/hooks/useViewerBridge.d.ts.map +1 -1
  16. package/dist/hooks/useViewerBridge.js +200 -13
  17. package/dist/hooks/useViewerBridge.js.map +1 -1
  18. package/dist/index.d.ts +2 -2
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/swatches/JewelryCustomizer.d.ts +4 -1
  23. package/dist/swatches/JewelryCustomizer.d.ts.map +1 -1
  24. package/dist/swatches/JewelryCustomizer.js +10 -2
  25. package/dist/swatches/JewelryCustomizer.js.map +1 -1
  26. package/dist/swatches/ShapeSelect.d.ts +15 -0
  27. package/dist/swatches/ShapeSelect.d.ts.map +1 -0
  28. package/dist/swatches/ShapeSelect.js +226 -0
  29. package/dist/swatches/ShapeSelect.js.map +1 -0
  30. package/dist/swatches/ShapeSwatches.d.ts +22 -0
  31. package/dist/swatches/ShapeSwatches.d.ts.map +1 -0
  32. package/dist/swatches/ShapeSwatches.js +144 -0
  33. package/dist/swatches/ShapeSwatches.js.map +1 -0
  34. package/dist/swatches/index.d.ts +2 -0
  35. package/dist/swatches/index.d.ts.map +1 -1
  36. package/dist/swatches/index.js +2 -0
  37. package/dist/swatches/index.js.map +1 -1
  38. package/dist/swatches/useJewelryCustomizer.d.ts +10 -0
  39. package/dist/swatches/useJewelryCustomizer.d.ts.map +1 -1
  40. package/dist/swatches/useJewelryCustomizer.js +23 -5
  41. package/dist/swatches/useJewelryCustomizer.js.map +1 -1
  42. package/dist/types.d.ts +40 -3
  43. package/dist/types.d.ts.map +1 -1
  44. package/package.json +50 -50
@@ -1,4 +1,4 @@
1
- import type { MetalColorProp, StoneColorProp, ViewerSourceInput, PartInfo, MaterialSlotInfo, PartType, ViewerErrorCode } from '../types.js';
1
+ import type { MetalColorProp, StoneColorProp, DiamondShape, DiamondQuality, ViewerSourceInput, PartInfo, MaterialSlotInfo, PartType, ViewerErrorCode, ViewerState, CameraPreset } from '../types.js';
2
2
  export interface CameraSphericalState {
3
3
  radius: number;
4
4
  phi: number;
@@ -8,12 +8,19 @@ export interface CameraSphericalState {
8
8
  export interface ViewerConfigState {
9
9
  metalColor?: MetalColorProp;
10
10
  stoneColor?: StoneColorProp;
11
+ shape?: DiamondShape | string;
11
12
  materialColors?: Record<string, string>;
12
13
  partColors?: Record<string, string>;
13
14
  environment?: string;
14
15
  exposure?: number;
16
+ metalEnvUrl?: string;
17
+ gemEnvUrl?: string;
15
18
  quality?: 'low' | 'medium' | 'high';
19
+ diamondQuality?: DiamondQuality;
16
20
  autoRotate?: boolean;
21
+ autoRotateSpeed?: number;
22
+ minZoom?: number;
23
+ maxZoom?: number;
17
24
  fov?: number;
18
25
  shadows?: boolean;
19
26
  background?: string | number;
@@ -22,6 +29,15 @@ export interface ViewerConfigState {
22
29
  export type OutboundCommand = {
23
30
  type: 'LOAD_MODEL';
24
31
  source: ViewerSourceInput;
32
+ } | {
33
+ type: 'LOAD_MODULAR';
34
+ components: Record<string, any>;
35
+ options?: any;
36
+ } | {
37
+ type: 'LOAD_COMPONENT';
38
+ slot: string;
39
+ source: any;
40
+ options?: any;
25
41
  } | {
26
42
  type: 'APPLY_CONFIG';
27
43
  config: Partial<ViewerConfigState>;
@@ -31,6 +47,9 @@ export type OutboundCommand = {
31
47
  } | {
32
48
  type: 'SET_STONE';
33
49
  color: StoneColorProp;
50
+ } | {
51
+ type: 'SET_SHAPE';
52
+ shape: DiamondShape | string;
34
53
  } | {
35
54
  type: 'SET_MATERIAL_COLOR';
36
55
  slotId: string;
@@ -51,9 +70,16 @@ export type OutboundCommand = {
51
70
  type: 'SET_ENVIRONMENT';
52
71
  environment?: string;
53
72
  exposure?: number;
73
+ } | {
74
+ type: 'SET_METAL_ENVIRONMENT';
75
+ url: string;
76
+ } | {
77
+ type: 'SET_GEM_ENVIRONMENT';
78
+ url: string;
54
79
  } | {
55
80
  type: 'SET_AUTO_ROTATE';
56
81
  enabled: boolean;
82
+ speed?: number;
57
83
  } | {
58
84
  type: 'SET_RENDER_ACTIVE';
59
85
  active: boolean;
@@ -62,6 +88,21 @@ export type OutboundCommand = {
62
88
  quality: 'low' | 'medium' | 'high';
63
89
  } | {
64
90
  type: 'RESET_CAMERA';
91
+ } | {
92
+ type: 'SET_CAMERA_PRESET';
93
+ preset: CameraPreset;
94
+ } | {
95
+ type: 'SET_CAMERA_POSITION';
96
+ position: [number, number, number];
97
+ target: [number, number, number];
98
+ } | {
99
+ type: 'CLEAR_OVERRIDES';
100
+ } | {
101
+ type: 'GET_STATE';
102
+ reqId: string;
103
+ } | {
104
+ type: 'SET_STATE';
105
+ state: ViewerState;
65
106
  } | {
66
107
  type: 'CAPTURE_SNAPSHOT';
67
108
  reqId: string;
@@ -72,6 +113,23 @@ export type OutboundCommand = {
72
113
  reqId: string;
73
114
  platform: 'ios' | 'android';
74
115
  usdzUrl?: string;
116
+ } | {
117
+ type: 'SET_DIAMOND_QUALITY';
118
+ quality: DiamondQuality;
119
+ } | {
120
+ type: 'FIT_TO_SCENE';
121
+ } | {
122
+ type: 'UNLOAD';
123
+ } | {
124
+ type: 'SET_PART_TYPE';
125
+ meshId: string;
126
+ partType: PartType;
127
+ } | {
128
+ type: 'GET_PARTS';
129
+ reqId: string;
130
+ } | {
131
+ type: 'GET_MATERIALS';
132
+ reqId: string;
75
133
  };
76
134
  export type InboundEvent = {
77
135
  type: 'VIEWER_READY';
@@ -87,6 +145,16 @@ export type InboundEvent = {
87
145
  meshId: string;
88
146
  partId?: string;
89
147
  partType: PartType;
148
+ slotIndex?: number;
149
+ slotId?: string;
150
+ materialName?: string;
151
+ } | {
152
+ type: 'STATE_READY';
153
+ reqId: string;
154
+ state: ViewerState;
155
+ } | {
156
+ type: 'VIEWER_CHANGE';
157
+ state: ViewerState;
90
158
  } | {
91
159
  type: 'INTERACTION_START';
92
160
  } | {
@@ -106,5 +174,13 @@ export type InboundEvent = {
106
174
  code: ViewerErrorCode;
107
175
  message: string;
108
176
  reqId?: string;
177
+ } | {
178
+ type: 'PARTS_READY';
179
+ reqId: string;
180
+ parts: PartInfo[];
181
+ } | {
182
+ type: 'MATERIALS_READY';
183
+ reqId: string;
184
+ materials: MaterialSlotInfo[];
109
185
  };
110
186
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/bridge/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/bridge/types.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { ViewerConfigState } from '../bridge/types.js';
3
3
  import type { ViewerProps, ViewerRef, ViewerError, ViewerErrorCode, ViewerSourceInput } from '../types.js';
4
4
  export declare function createViewerError(code: ViewerErrorCode, message: string, reqId?: string): ViewerError;
5
5
  export declare function useViewerBridge(props: ViewerProps): {
6
- webViewRef: import("react").MutableRefObject<WebView<undefined> | null>;
6
+ webViewRef: import("react").MutableRefObject<WebView<{}> | null>;
7
7
  isReady: boolean;
8
8
  viewerRefMethods: ViewerRef;
9
9
  handleMessage: (event: WebViewMessageEvent) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useViewerBridge.d.ts","sourceRoot":"","sources":["../../src/hooks/useViewerBridge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AACxE,OAAO,KAAK,EAGV,iBAAiB,EAElB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,eAAe,EACf,iBAAiB,EAGlB,MAAM,aAAa,CAAA;AAWpB,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACb,WAAW,CAMb;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW;;;;2BA2EtC,mBAAmB;;;iBA7DlB,iBAAiB;gBAClB,iBAAiB;;EAyT5B"}
1
+ {"version":3,"file":"useViewerBridge.d.ts","sourceRoot":"","sources":["../../src/hooks/useViewerBridge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AACxE,OAAO,KAAK,EAGV,iBAAiB,EAElB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,eAAe,EACf,iBAAiB,EAWlB,MAAM,aAAa,CAAA;AAWpB,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACb,WAAW,CAMb;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW;;;;2BA2EtC,mBAAmB;;;iBA7DlB,iBAAiB;gBAClB,iBAAiB;;EA8a5B"}
@@ -21,7 +21,7 @@ export function useViewerBridge(props) {
21
21
  const reqCounterRef = useRef(0);
22
22
  // Mutable cache of the latest state for crash recovery & fullscreen modal hydration
23
23
  const lastKnownStateRef = useRef({
24
- source: resolveSourceInput(props.source, props.src),
24
+ source: resolveSourceInput(props.source, props.src, props.format),
25
25
  config: extractConfigFromProps(props),
26
26
  });
27
27
  // Keep latest callback refs to avoid stale closures in onMessage
@@ -48,12 +48,12 @@ export function useViewerBridge(props) {
48
48
  if (!webViewRef.current || !isReadyRef.current)
49
49
  return;
50
50
  const { source, config } = lastKnownStateRef.current;
51
- if (source) {
52
- webViewRef.current.postMessage(JSON.stringify({ type: 'LOAD_MODEL', source }));
53
- }
54
51
  if (Object.keys(config).length > 0) {
55
52
  webViewRef.current.postMessage(JSON.stringify({ type: 'APPLY_CONFIG', config }));
56
53
  }
54
+ if (source) {
55
+ webViewRef.current.postMessage(JSON.stringify({ type: 'LOAD_MODEL', source }));
56
+ }
57
57
  flushCommandQueue();
58
58
  }, [flushCommandQueue]);
59
59
  // Reject all pending RPC promises on unmount or crash
@@ -93,9 +93,16 @@ export function useViewerBridge(props) {
93
93
  meshId: data.meshId,
94
94
  partId: data.partId,
95
95
  type: data.partType,
96
+ slotIndex: data.slotIndex,
97
+ slotId: data.slotId,
98
+ materialName: data.materialName,
96
99
  });
97
100
  break;
98
101
  }
102
+ case 'VIEWER_CHANGE': {
103
+ callbacksRef.current.onChange?.(data.state);
104
+ break;
105
+ }
99
106
  case 'INTERACTION_START': {
100
107
  callbacksRef.current.onTouchInteractionChange?.(true);
101
108
  break;
@@ -107,6 +114,15 @@ export function useViewerBridge(props) {
107
114
  callbacksRef.current.onTouchInteractionChange?.(false);
108
115
  break;
109
116
  }
117
+ case 'STATE_READY': {
118
+ const pending = pendingRequestsRef.current.get(data.reqId);
119
+ if (pending) {
120
+ clearTimeout(pending.timer);
121
+ pendingRequestsRef.current.delete(data.reqId);
122
+ pending.resolve(data.state);
123
+ }
124
+ break;
125
+ }
110
126
  case 'SNAPSHOT_READY': {
111
127
  const pending = pendingRequestsRef.current.get(data.reqId);
112
128
  if (pending) {
@@ -125,6 +141,24 @@ export function useViewerBridge(props) {
125
141
  }
126
142
  break;
127
143
  }
144
+ case 'PARTS_READY': {
145
+ const pending = pendingRequestsRef.current.get(data.reqId);
146
+ if (pending) {
147
+ clearTimeout(pending.timer);
148
+ pendingRequestsRef.current.delete(data.reqId);
149
+ pending.resolve(data.parts);
150
+ }
151
+ break;
152
+ }
153
+ case 'MATERIALS_READY': {
154
+ const pending = pendingRequestsRef.current.get(data.reqId);
155
+ if (pending) {
156
+ clearTimeout(pending.timer);
157
+ pendingRequestsRef.current.delete(data.reqId);
158
+ pending.resolve(data.materials);
159
+ }
160
+ break;
161
+ }
128
162
  case 'VIEWER_ERROR': {
129
163
  const viewerErr = createViewerError(data.code, data.message, data.reqId);
130
164
  if (data.reqId && pendingRequestsRef.current.has(data.reqId)) {
@@ -163,12 +197,17 @@ export function useViewerBridge(props) {
163
197
  }, [clearPendingRequests]);
164
198
  // Sync declarative prop changes to WebView
165
199
  useEffect(() => {
166
- const nextSource = resolveSourceInput(props.source, props.src);
200
+ const nextSource = resolveSourceInput(props.source, props.src, props.format);
167
201
  if (nextSource &&
168
202
  JSON.stringify(nextSource) !== JSON.stringify(lastKnownStateRef.current.source)) {
169
203
  sendCommand({ type: 'LOAD_MODEL', source: nextSource });
170
204
  }
171
- }, [props.source, props.src, sendCommand]);
205
+ }, [props.source, props.src, props.format, sendCommand]);
206
+ useEffect(() => {
207
+ if (props.state && isReadyRef.current) {
208
+ sendCommand({ type: 'SET_STATE', state: props.state });
209
+ }
210
+ }, [props.state, sendCommand]);
172
211
  useEffect(() => {
173
212
  const nextConfig = extractConfigFromProps(props);
174
213
  lastKnownStateRef.current.config = {
@@ -181,17 +220,34 @@ export function useViewerBridge(props) {
181
220
  }, [
182
221
  props.metalColor,
183
222
  props.stoneColor,
223
+ props.shape,
184
224
  props.materialColors,
185
225
  props.partColors,
186
226
  props.environment,
187
227
  props.exposure,
228
+ props.metalEnvUrl,
229
+ props.gemEnvUrl,
188
230
  props.quality,
231
+ props.diamondQuality,
189
232
  props.autoRotate,
233
+ props.autoRotateSpeed,
234
+ props.minZoom,
235
+ props.maxZoom,
190
236
  props.fov,
191
237
  props.shadows,
192
238
  props.background,
193
239
  sendCommand,
194
240
  ]);
241
+ useEffect(() => {
242
+ if (props.metalEnvUrl && isReadyRef.current) {
243
+ sendCommand({ type: 'SET_METAL_ENVIRONMENT', url: props.metalEnvUrl });
244
+ }
245
+ }, [props.metalEnvUrl, sendCommand]);
246
+ useEffect(() => {
247
+ if (props.gemEnvUrl && isReadyRef.current) {
248
+ sendCommand({ type: 'SET_GEM_ENVIRONMENT', url: props.gemEnvUrl });
249
+ }
250
+ }, [props.gemEnvUrl, sendCommand]);
195
251
  useEffect(() => {
196
252
  if (typeof props.renderActive === 'boolean' && isReadyRef.current) {
197
253
  sendCommand({ type: 'SET_RENDER_ACTIVE', active: props.renderActive });
@@ -213,17 +269,69 @@ export function useViewerBridge(props) {
213
269
  }, [sendCommand]);
214
270
  const viewerRefMethods = {
215
271
  applyConfig: (config) => sendCommand({ type: 'APPLY_CONFIG', config }),
272
+ loadModular: (components, options) => {
273
+ const resolvedComps = {};
274
+ for (const [slot, comp] of Object.entries(components)) {
275
+ if (comp === null || comp === undefined) {
276
+ resolvedComps[slot] = null;
277
+ }
278
+ else if (typeof comp === 'string') {
279
+ resolvedComps[slot] = { url: comp, format: 'glb' };
280
+ }
281
+ else if (typeof comp === 'object' && 'uri' in comp && !('url' in comp)) {
282
+ resolvedComps[slot] = { url: comp.uri, format: comp.format || 'glb' };
283
+ }
284
+ else {
285
+ resolvedComps[slot] = comp;
286
+ }
287
+ }
288
+ sendCommand({ type: 'LOAD_MODULAR', components: resolvedComps, options });
289
+ return Promise.resolve();
290
+ },
291
+ loadComponent: (slot, source, options) => {
292
+ let resolvedSource = null;
293
+ if (source !== null && source !== undefined) {
294
+ if (typeof source === 'string') {
295
+ resolvedSource = { url: source, format: 'glb' };
296
+ }
297
+ else if (typeof source === 'object' && 'uri' in source && !('url' in source)) {
298
+ resolvedSource = { url: source.uri, format: source.format || 'glb' };
299
+ }
300
+ else {
301
+ resolvedSource = source;
302
+ }
303
+ }
304
+ sendCommand({ type: 'LOAD_COMPONENT', slot, source: resolvedSource, options });
305
+ return Promise.resolve();
306
+ },
216
307
  setMetalColor: (color) => sendCommand({ type: 'SET_METAL', color }),
217
308
  setStoneColor: (color) => sendCommand({ type: 'SET_STONE', color }),
309
+ setShape: (shape) => sendCommand({ type: 'SET_SHAPE', shape }),
218
310
  setMaterialColor: (slotId, color) => sendCommand({ type: 'SET_MATERIAL_COLOR', slotId, color }),
219
311
  clearMaterialColor: (slotId) => sendCommand({ type: 'CLEAR_MATERIAL_COLOR', slotId }),
220
312
  setPartColor: (partId, color, slotIndex) => sendCommand({ type: 'SET_PART_COLOR', partId, color, slotIndex }),
221
313
  clearPartColor: (partId, slotIndex) => sendCommand({ type: 'CLEAR_PART_COLOR', partId, slotIndex }),
222
314
  setEnvironment: (environment, exposure) => sendCommand({ type: 'SET_ENVIRONMENT', environment, exposure }),
315
+ setMetalEnvironment: (url) => sendCommand({ type: 'SET_METAL_ENVIRONMENT', url }),
316
+ setGemEnvironment: (url) => sendCommand({ type: 'SET_GEM_ENVIRONMENT', url }),
223
317
  setRenderActive: (active) => sendCommand({ type: 'SET_RENDER_ACTIVE', active }),
224
- startRotation: () => sendCommand({ type: 'SET_AUTO_ROTATE', enabled: true }),
318
+ startRotation: (speed) => sendCommand({ type: 'SET_AUTO_ROTATE', enabled: true, ...(speed !== undefined && { speed }) }),
225
319
  stopRotation: () => sendCommand({ type: 'SET_AUTO_ROTATE', enabled: false }),
320
+ setDiamondQuality: (quality) => sendCommand({ type: 'SET_DIAMOND_QUALITY', quality }),
321
+ fitToScene: () => sendCommand({ type: 'FIT_TO_SCENE' }),
322
+ unload: () => sendCommand({ type: 'UNLOAD' }),
323
+ setPartType: (meshId, partType) => sendCommand({ type: 'SET_PART_TYPE', meshId, partType }),
324
+ getParts: () => createRpcRequest((reqId) => ({ type: 'GET_PARTS', reqId })),
325
+ getMaterials: () => createRpcRequest((reqId) => ({ type: 'GET_MATERIALS', reqId })),
226
326
  resetCamera: () => sendCommand({ type: 'RESET_CAMERA' }),
327
+ setCameraPreset: (preset) => sendCommand({ type: 'SET_CAMERA_PRESET', preset }),
328
+ setCameraPosition: (position, target) => sendCommand({ type: 'SET_CAMERA_POSITION', position, target }),
329
+ clearOverrides: () => sendCommand({ type: 'CLEAR_OVERRIDES' }),
330
+ getState: () => createRpcRequest((reqId) => ({
331
+ type: 'GET_STATE',
332
+ reqId,
333
+ })),
334
+ setState: (state) => sendCommand({ type: 'SET_STATE', state }),
227
335
  captureSnapshot: (options) => createRpcRequest((reqId) => ({
228
336
  type: 'CAPTURE_SNAPSHOT',
229
337
  reqId,
@@ -272,16 +380,45 @@ export function useViewerBridge(props) {
272
380
  };
273
381
  }
274
382
  // --- Internal Helpers ---
275
- function resolveSourceInput(source, src) {
383
+ function resolveSourceInput(source, src, format) {
384
+ if (!source && !src)
385
+ return undefined;
386
+ if (typeof source === 'object' && source !== null && 'modular' in source && source.modular) {
387
+ const modularSource = { modular: true };
388
+ for (const [k, v] of Object.entries(source)) {
389
+ if (k === 'modular')
390
+ continue;
391
+ if (v === null || v === undefined) {
392
+ modularSource[k] = null;
393
+ }
394
+ else if (typeof v === 'string') {
395
+ modularSource[k] = { url: v, format: 'glb' };
396
+ }
397
+ else if (typeof v === 'object' && 'uri' in v && !('url' in v)) {
398
+ modularSource[k] = { url: v.uri, format: v.format || 'glb' };
399
+ }
400
+ else {
401
+ modularSource[k] = v;
402
+ }
403
+ }
404
+ return modularSource;
405
+ }
406
+ let resolved;
276
407
  if (source) {
277
408
  if (typeof source === 'object' && 'uri' in source && !('url' in source)) {
278
- return { url: source.uri };
409
+ resolved = { url: source.uri };
410
+ }
411
+ else {
412
+ resolved = source;
279
413
  }
280
- return source;
281
414
  }
282
- if (src)
283
- return { url: src };
284
- return undefined;
415
+ else if (src) {
416
+ resolved = { url: src };
417
+ }
418
+ if (resolved && format && typeof resolved === 'object' && 'url' in resolved) {
419
+ resolved = { ...resolved, format };
420
+ }
421
+ return resolved;
285
422
  }
286
423
  function extractStringUrl(source) {
287
424
  if (!source)
@@ -299,6 +436,8 @@ function extractConfigFromProps(props) {
299
436
  config.metalColor = props.metalColor;
300
437
  if (props.stoneColor !== undefined)
301
438
  config.stoneColor = props.stoneColor;
439
+ if (props.shape !== undefined)
440
+ config.shape = props.shape;
302
441
  if (props.materialColors !== undefined)
303
442
  config.materialColors = props.materialColors;
304
443
  if (props.partColors !== undefined)
@@ -307,10 +446,22 @@ function extractConfigFromProps(props) {
307
446
  config.environment = props.environment;
308
447
  if (props.exposure !== undefined)
309
448
  config.exposure = props.exposure;
449
+ if (props.metalEnvUrl !== undefined)
450
+ config.metalEnvUrl = props.metalEnvUrl;
451
+ if (props.gemEnvUrl !== undefined)
452
+ config.gemEnvUrl = props.gemEnvUrl;
310
453
  if (props.quality !== undefined)
311
454
  config.quality = props.quality;
455
+ if (props.diamondQuality !== undefined)
456
+ config.diamondQuality = props.diamondQuality;
312
457
  if (props.autoRotate !== undefined)
313
458
  config.autoRotate = props.autoRotate;
459
+ if (props.autoRotateSpeed !== undefined)
460
+ config.autoRotateSpeed = props.autoRotateSpeed;
461
+ if (props.minZoom !== undefined)
462
+ config.minZoom = props.minZoom;
463
+ if (props.maxZoom !== undefined)
464
+ config.maxZoom = props.maxZoom;
314
465
  if (props.fov !== undefined)
315
466
  config.fov = props.fov;
316
467
  if (props.shadows !== undefined)
@@ -324,6 +475,14 @@ function cacheOutboundCommand(cmd, state) {
324
475
  case 'LOAD_MODEL':
325
476
  state.source = cmd.source;
326
477
  break;
478
+ case 'LOAD_MODULAR':
479
+ state.source = { modular: true, ...cmd.components };
480
+ break;
481
+ case 'LOAD_COMPONENT':
482
+ if (state.source && typeof state.source === 'object' && state.source.modular) {
483
+ state.source = { ...state.source, [cmd.slot]: cmd.source };
484
+ }
485
+ break;
327
486
  case 'APPLY_CONFIG':
328
487
  state.config = { ...state.config, ...cmd.config };
329
488
  break;
@@ -333,6 +492,9 @@ function cacheOutboundCommand(cmd, state) {
333
492
  case 'SET_STONE':
334
493
  state.config.stoneColor = cmd.color;
335
494
  break;
495
+ case 'SET_SHAPE':
496
+ state.config.shape = cmd.shape;
497
+ break;
336
498
  case 'SET_MATERIAL_COLOR':
337
499
  state.config.materialColors = {
338
500
  ...state.config.materialColors,
@@ -366,10 +528,35 @@ function cacheOutboundCommand(cmd, state) {
366
528
  break;
367
529
  case 'SET_AUTO_ROTATE':
368
530
  state.config.autoRotate = cmd.enabled;
531
+ if (cmd.speed !== undefined)
532
+ state.config.autoRotateSpeed = cmd.speed;
533
+ break;
534
+ case 'SET_DIAMOND_QUALITY':
535
+ state.config.diamondQuality = cmd.quality;
536
+ break;
537
+ case 'UNLOAD':
538
+ delete state.source;
539
+ break;
540
+ case 'SET_PART_TYPE':
541
+ case 'FIT_TO_SCENE':
369
542
  break;
370
543
  case 'SET_QUALITY':
371
544
  state.config.quality = cmd.quality;
372
545
  break;
546
+ case 'CLEAR_OVERRIDES':
547
+ state.config.materialColors = {};
548
+ state.config.partColors = {};
549
+ break;
550
+ case 'SET_STATE':
551
+ if (cmd.state.metalColor)
552
+ state.config.metalColor = cmd.state.metalColor;
553
+ if (cmd.state.stoneColor)
554
+ state.config.stoneColor = cmd.state.stoneColor;
555
+ if (cmd.state.materialColors)
556
+ state.config.materialColors = cmd.state.materialColors;
557
+ if (cmd.state.partColors)
558
+ state.config.partColors = cmd.state.partColors;
559
+ break;
373
560
  case 'RESET_CAMERA':
374
561
  delete state.config.cameraState;
375
562
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"useViewerBridge.js","sourceRoot":"","sources":["../../src/hooks/useViewerBridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAkBjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAQ3D,MAAM,sBAAsB,GAAG,MAAM,CAAA;AAErC,MAAM,UAAU,iBAAiB,CAC/B,IAAqB,EACrB,OAAe,EACf,KAAc;IAEd,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,CAAgB,CAAA;IAC7C,GAAG,CAAC,IAAI,GAAG,aAAa,CAAA;IACxB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;IACf,IAAI,KAAK;QAAE,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;IAC5B,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAkB;IAChD,MAAM,UAAU,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IAC/C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAChC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE7C,4DAA4D;IAC5D,MAAM,eAAe,GAAG,MAAM,CAAoB,EAAE,CAAC,CAAA;IAErD,qCAAqC;IACrC,MAAM,kBAAkB,GAAG,MAAM,CAA8B,IAAI,GAAG,EAAE,CAAC,CAAA;IACzE,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IAE/B,oFAAoF;IACpF,MAAM,iBAAiB,GAAG,MAAM,CAG7B;QACD,MAAM,EAAE,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC;QACnD,MAAM,EAAE,sBAAsB,CAAC,KAAK,CAAC;KACtC,CAAC,CAAA;IAEF,iEAAiE;IACjE,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAClC,YAAY,CAAC,OAAO,GAAG,KAAK,CAAA;IAE5B,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,OAAwB,EAAE,EAAE;QAC3D,oDAAoD;QACpD,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAExD,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YAC/C,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACrC,OAAM;QACR,CAAC;QAED,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;IACzD,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;QACzC,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO;YAAE,OAAM;QACtD,OAAO,eAAe,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAG,CAAA;YAC5C,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;QACrD,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO;YAAE,OAAM;QACtD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAA;QAEpD,IAAI,MAAM,EAAE,CAAC;YACX,UAAU,CAAC,OAAO,CAAC,WAAW,CAC5B,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAA4B,CAAC,CACzE,CAAA;QACH,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,UAAU,CAAC,OAAO,CAAC,WAAW,CAC5B,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAA4B,CAAC,CAC3E,CAAA;QACH,CAAC;QAED,iBAAiB,EAAE,CAAA;IACrB,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAEvB,sDAAsD;IACtD,MAAM,oBAAoB,GAAG,WAAW,CAAC,CAAC,MAAc,EAAE,EAAE;QAC1D,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YACpD,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YAC3B,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;QACpE,CAAC,CAAC,CAAC;QACH,kBAAkB,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACpC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,uCAAuC;IACvC,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,KAA0B,EAAE,EAAE;QAC7B,IAAI,IAAkB,CAAA;QACtB,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAiB,CAAA;QAC3D,CAAC;QAAC,MAAM,CAAC;YACP,OAAM,CAAC,2BAA2B;QACpC,CAAC;QAED,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,UAAU,CAAC,OAAO,GAAG,IAAI,CAAA;gBACzB,UAAU,CAAC,IAAI,CAAC,CAAA;gBAChB,YAAY,EAAE,CAAA;gBACd,MAAK;YACP,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC3D,MAAK;YACP,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAChD,MAAK;YACP,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;oBACpC,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE,IAAI,CAAC,QAAQ;iBACpB,CAAC,CAAA;gBACF,MAAK;YACP,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,YAAY,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC,IAAI,CAAC,CAAA;gBACrD,MAAK;YACP,CAAC;YAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;gBACjE,CAAC;gBACD,YAAY,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC,KAAK,CAAC,CAAA;gBACtD,MAAK;YACP,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAC1D,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAC3B,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBAC7C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC/B,CAAC;gBACD,MAAK;YACP,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAC1D,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAC3B,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBAC7C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBACvB,CAAC;gBACD,MAAK;YACP,CAAC;YAED,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;gBACxE,IAAI,IAAI,CAAC,KAAK,IAAI,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC7D,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,CAAA;oBAC3D,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAC3B,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBAC7C,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;gBAC3B,CAAC;gBACD,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAA;gBACzC,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAA;IAED,uEAAuE;IACvE,MAAM,8BAA8B,GAAG,WAAW,CAAC,GAAG,EAAE;QACtD,UAAU,CAAC,OAAO,GAAG,KAAK,CAAA;QAC1B,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,oBAAoB,CAAC,oDAAoD,CAAC,CAAA;QAC1E,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;IAC9B,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAA;IAE1B,0DAA0D;IAC1D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,YAAY,GAAG,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,SAAyB,EAAE,EAAE;YACrF,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO;gBAAE,OAAM;YACtD,MAAM,YAAY,GAAG,SAAS,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,CAAA;YAC1F,UAAU,CAAC,OAAO,CAAC,WAAW,CAC5B,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,YAAY;aACK,CAAC,CAC7B,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,MAAM,EAAE,CAAA;YACrB,oBAAoB,CAAC,6BAA6B,CAAC,CAAA;QACrD,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAA;IAE1B,2CAA2C;IAC3C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;QAC9D,IACE,UAAU;YACV,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,EAC/E,CAAC;YACD,WAAW,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAA;QACzD,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAA;IAE1C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;QAChD,iBAAiB,CAAC,OAAO,CAAC,MAAM,GAAG;YACjC,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM;YACnC,GAAG,UAAU;SACd,CAAA;QACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,WAAW,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAA;QAC3D,CAAC;IACH,CAAC,EAAE;QACD,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,cAAc;QACpB,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,WAAW;QACjB,KAAK,CAAC,QAAQ;QACd,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,GAAG;QACT,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,UAAU;QAChB,WAAW;KACZ,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YAClE,WAAW,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAA;QACxE,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAA;IAErC,2BAA2B;IAC3B,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAK,YAAgD,EAAE,SAAS,GAAG,sBAAsB,EAAE,EAAE;QAC3F,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,MAAM,KAAK,GAAG,OAAO,EAAE,aAAa,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;YAC5D,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBACxC,MAAM,GAAG,GAAG,iBAAiB,CAC3B,gBAAgB,EAChB,wBAAwB,KAAK,qBAAqB,SAAS,IAAI,EAC/D,KAAK,CACN,CAAA;gBACD,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;gBACnC,MAAM,CAAC,GAAG,CAAC,CAAA;YACb,CAAC,EAAE,SAAS,CAAC,CAAA;YAEb,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;YACjE,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAA;IAED,MAAM,gBAAgB,GAAc;QAClC,WAAW,EAAE,CAAC,MAAkC,EAAE,EAAE,CAClD,WAAW,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC;QAC/C,aAAa,EAAE,CAAC,KAAqB,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACnF,aAAa,EAAE,CAAC,KAAqB,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACnF,gBAAgB,EAAE,CAAC,MAAc,EAAE,KAAa,EAAE,EAAE,CAClD,WAAW,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC5D,kBAAkB,EAAE,CAAC,MAAc,EAAE,EAAE,CACrC,WAAW,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,CAAC;QACvD,YAAY,EAAE,CAAC,MAAc,EAAE,KAAa,EAAE,SAAkB,EAAE,EAAE,CAClE,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACnE,cAAc,EAAE,CAAC,MAAc,EAAE,SAAkB,EAAE,EAAE,CACrD,WAAW,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC9D,cAAc,EAAE,CAAC,WAAoB,EAAE,QAAiB,EAAE,EAAE,CAC1D,WAAW,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QACjE,eAAe,EAAE,CAAC,MAAe,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC;QACxF,aAAa,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5E,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5E,WAAW,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;QACxD,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE,CAC3B,gBAAgB,CAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACnC,IAAI,EAAE,kBAAkB;YACxB,KAAK;YACL,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK;YAChC,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI;SAClC,CAAC,CAAC;QACL,QAAQ,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;YAC1D,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAA;YAE9C,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;gBACvB,MAAM,OAAO,GAAG,QAAQ,EAAE,UAAU,CAAA;gBACpC,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,GAAG,GAAG,iBAAiB,CAC3B,gBAAgB,EAChB,wEAAwE,CACzE,CAAA;oBACD,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;oBACnC,MAAM,GAAG,CAAA;gBACX,CAAC;gBACD,oEAAoE;gBACpE,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAChC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACV,IAAI,EAAE,mBAAmB;oBACzB,KAAK;oBACL,QAAQ,EAAE,KAAK;oBACf,OAAO;iBACR,CAAC,CACH,CAAA;gBACD,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;oBAC3B,MAAM,gBAAgB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAA;gBAC3D,CAAC;gBACD,OAAM;YACR,CAAC;YAED,4BAA4B;YAC5B,MAAM,WAAW,GACf,QAAQ,EAAE,aAAa,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAC/E,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxD,MAAM,GAAG,GAAG,iBAAiB,CAC3B,gBAAgB,EAChB,+FAA+F,CAChG,CAAA;gBACD,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;gBACnC,MAAM,GAAG,CAAA;YACX,CAAC;YACD,MAAM,gBAAgB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAA;QACnE,CAAC;KACF,CAAA;IAED,OAAO;QACL,UAAU;QACV,OAAO;QACP,gBAAgB;QAChB,aAAa;QACb,8BAA8B;QAC9B,iBAAiB;KAClB,CAAA;AACH,CAAC;AAED,2BAA2B;AAE3B,SAAS,kBAAkB,CACzB,MAA4C,EAC5C,GAAY;IAEZ,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,IAAI,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;YACxE,OAAO,EAAE,GAAG,EAAG,MAAc,CAAC,GAAG,EAAkC,CAAA;QACrE,CAAC;QACD,OAAO,MAA2B,CAAA;IACpC,CAAC;IACD,IAAI,GAAG;QAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAkC,CAAA;IAC5D,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA0B;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAA;IAC7B,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAA;IAC7C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QACpF,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAkB;IAChD,MAAM,MAAM,GAAsB,EAAE,CAAA;IACpC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;IACxE,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;IACxE,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS;QAAE,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAA;IACpF,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;IACxE,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;IAC3E,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAAE,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;IAClE,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAC/D,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;IACxE,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS;QAAE,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IACnD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAC/D,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;IACxE,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAAoB,EACpB,KAAgE;IAEhE,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,YAAY;YACf,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;YACzB,MAAK;QACP,KAAK,cAAc;YACjB,KAAK,CAAC,MAAM,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;YACjD,MAAK;QACP,KAAK,WAAW;YACd,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC,KAAK,CAAA;YACnC,MAAK;QACP,KAAK,WAAW;YACd,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC,KAAK,CAAA;YACnC,MAAK;QACP,KAAK,oBAAoB;YACvB,KAAK,CAAC,MAAM,CAAC,cAAc,GAAG;gBAC5B,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc;gBAC9B,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,KAAK;aACxB,CAAA;YACD,MAAK;QACP,KAAK,sBAAsB;YACzB,IAAI,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;gBAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACvB,KAAK,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAA;YACpC,CAAC;YACD,MAAK;QACP,KAAK,gBAAgB;YACnB,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG;gBACxB,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU;gBAC1B,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,KAAK;aACxB,CAAA;YACD,MAAK;QACP,KAAK,kBAAkB;YACrB,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAA;gBAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACvB,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAA;YAChC,CAAC;YACD,MAAK;QACP,KAAK,iBAAiB;YACpB,KAAK,CAAC,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAA;YAC1C,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS;gBAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAA;YACpE,MAAK;QACP,KAAK,iBAAiB;YACpB,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC,OAAO,CAAA;YACrC,MAAK;QACP,KAAK,aAAa;YAChB,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;YAClC,MAAK;QACP,KAAK,cAAc;YACjB,OAAO,KAAK,CAAC,MAAM,CAAC,WAAW,CAAA;YAC/B,MAAK;IACT,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"useViewerBridge.js","sourceRoot":"","sources":["../../src/hooks/useViewerBridge.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  export { Viewer, default } from './Viewer.js';
2
- export type { ViewerProps, ViewerRef, ViewerError, ViewerErrorCode, MetalColorProp, StoneColorProp, ViewerSourceInput, PartInfo, MaterialSlotInfo, PartType, ViewerState, } from './types.js';
2
+ export type { ViewerProps, ViewerRef, ViewerError, ViewerErrorCode, MetalColorProp, StoneColorProp, DiamondShape, DiamondQuality, ViewerSourceInput, PartInfo, MaterialSlotInfo, PartType, ViewerState, SupportedFormat, CameraPreset, } from './types.js';
3
3
  export type { ViewerConfigState, CameraSphericalState, OutboundCommand, InboundEvent, } from './bridge/types.js';
4
4
  export { useViewerBridge } from './hooks/useViewerBridge.js';
5
5
  export { useViewerGestureLock } from './hooks/useViewerGestureLock.js';
6
6
  export { launchPlatformAR, buildAndroidSceneViewerIntent } from './bridge/ar-launcher.js';
7
7
  export { DEFAULT_EMBEDDED_HTML } from './bridge/runtime-bundle.js';
8
- export { MetalSwatches, type MetalSwatchesProps, StoneSwatches, type StoneSwatchesProps, useJewelryCustomizer, type UseJewelryCustomizerOptions, type UseJewelryCustomizerReturn, JewelryCustomizer, type JewelryCustomizerProps, } from './swatches/index.js';
8
+ export { MetalSwatches, type MetalSwatchesProps, StoneSwatches, type StoneSwatchesProps, ShapeSwatches, type ShapeSwatchesProps, ShapeSelect, type ShapeSelectProps, type DiamondShape as SwatchDiamondShape, type ShapeOption, CANONICAL_SHAPES, useJewelryCustomizer, type UseJewelryCustomizerOptions, type UseJewelryCustomizerReturn, JewelryCustomizer, type JewelryCustomizerProps, } from './swatches/index.js';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC7C,YAAY,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,eAAe,EACf,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,WAAW,GACZ,MAAM,YAAY,CAAA;AAEnB,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,YAAY,GACb,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,aAAa,EACb,KAAK,kBAAkB,EACvB,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,iBAAiB,EACjB,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC7C,YAAY,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,eAAe,EACf,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,eAAe,EACf,YAAY,GACb,MAAM,YAAY,CAAA;AAEnB,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,YAAY,GACb,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,aAAa,EACb,KAAK,kBAAkB,EACvB,aAAa,EACb,KAAK,kBAAkB,EACvB,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,YAAY,IAAI,kBAAkB,EACvC,KAAK,WAAW,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,iBAAiB,EACjB,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAA"}
package/dist/index.js CHANGED
@@ -3,5 +3,5 @@ export { useViewerBridge } from './hooks/useViewerBridge.js';
3
3
  export { useViewerGestureLock } from './hooks/useViewerGestureLock.js';
4
4
  export { launchPlatformAR, buildAndroidSceneViewerIntent } from './bridge/ar-launcher.js';
5
5
  export { DEFAULT_EMBEDDED_HTML } from './bridge/runtime-bundle.js';
6
- export { MetalSwatches, StoneSwatches, useJewelryCustomizer, JewelryCustomizer, } from './swatches/index.js';
6
+ export { MetalSwatches, StoneSwatches, ShapeSwatches, ShapeSelect, CANONICAL_SHAPES, useJewelryCustomizer, JewelryCustomizer, } from './swatches/index.js';
7
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAsB7C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,EACL,aAAa,EAEb,aAAa,EAEb,oBAAoB,EAGpB,iBAAiB,GAElB,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AA0B7C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,EACL,aAAa,EAEb,aAAa,EAEb,aAAa,EAEb,WAAW,EAIX,gBAAgB,EAChB,oBAAoB,EAGpB,iBAAiB,GAElB,MAAM,qBAAqB,CAAA"}