@neurodyn/react-ar 0.0.12 → 0.0.13
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/dist/{110.f02405b69058e0d1.js → 552.94e8bfc9fb13509c.js} +2968 -1259
- package/dist/index.d.ts +1051 -986
- package/dist/index.js +840 -390
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -204,740 +204,36 @@ declare type AnyMapping = Mapping | CubeTextureMapping;
|
|
|
204
204
|
*/
|
|
205
205
|
declare type AnyPixelFormat = PixelFormat | DepthTexturePixelFormat | CompressedPixelFormat;
|
|
206
206
|
|
|
207
|
-
/**
|
|
208
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
209
|
-
* Do not edit manually.
|
|
210
|
-
*/
|
|
211
|
-
declare type ApiCat = {
|
|
212
|
-
/**
|
|
213
|
-
* @description Whether any objects are currently assigned to this category.
|
|
214
|
-
* @type boolean | undefined
|
|
215
|
-
*/
|
|
216
|
-
hasObjs?: boolean;
|
|
217
|
-
/**
|
|
218
|
-
* @description Category id.
|
|
219
|
-
* @type string | undefined, int64
|
|
220
|
-
*/
|
|
221
|
-
id?: string;
|
|
222
|
-
/**
|
|
223
|
-
* @description Category display name, localized to the requested language.
|
|
224
|
-
* @type string | undefined
|
|
225
|
-
*/
|
|
226
|
-
name?: string;
|
|
227
|
-
/**
|
|
228
|
-
* @description URL of the category\'s preview image.
|
|
229
|
-
* @type string | undefined
|
|
230
|
-
*/
|
|
231
|
-
previewUrl?: string;
|
|
232
|
-
/**
|
|
233
|
-
* @description Child categories nested under this one.
|
|
234
|
-
* @type array | undefined
|
|
235
|
-
*/
|
|
236
|
-
subs?: ApiCat[];
|
|
237
|
-
};
|
|
238
|
-
|
|
239
|
-
declare type ApiDraftInfo = {
|
|
240
|
-
/**
|
|
241
|
-
* @type object | undefined
|
|
242
|
-
*/
|
|
243
|
-
moderation?: ApiModerationInfo;
|
|
244
|
-
/**
|
|
245
|
-
* @description Pending draft\'s version number; unset when no draft exists.
|
|
246
|
-
* @type integer | undefined, int32
|
|
247
|
-
*/
|
|
248
|
-
version?: number;
|
|
249
|
-
};
|
|
250
|
-
|
|
251
|
-
/**
|
|
252
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
253
|
-
* Do not edit manually.
|
|
254
|
-
*/
|
|
255
|
-
declare type ApiFile = {
|
|
256
|
-
/**
|
|
257
|
-
* @description File extension (without dot), e.g. \"glb\", \"usdz\", \"jpg\".
|
|
258
|
-
* @type string | undefined
|
|
259
|
-
*/
|
|
260
|
-
ext?: string;
|
|
261
|
-
/**
|
|
262
|
-
* @description Image orientation (\"horizontal\" or \"vertical\"), when set.
|
|
263
|
-
* @type string | undefined
|
|
264
|
-
*/
|
|
265
|
-
imgOrientation?: string;
|
|
266
|
-
/**
|
|
267
|
-
* @description Whether this file can be cloned by users other than its owner (moderator-settable via obj.modrapi.SetFileClonable); see CloneFile.
|
|
268
|
-
* @type boolean | undefined
|
|
269
|
-
*/
|
|
270
|
-
isClonable?: boolean;
|
|
271
|
-
/**
|
|
272
|
-
* @description Original filename supplied by the uploader.
|
|
273
|
-
* @type string | undefined
|
|
274
|
-
*/
|
|
275
|
-
realName?: string;
|
|
276
|
-
/**
|
|
277
|
-
* @description UUID of the original file this one is a clone of, when applicable.
|
|
278
|
-
* @type string | undefined
|
|
279
|
-
*/
|
|
280
|
-
realUuid?: string;
|
|
281
|
-
/**
|
|
282
|
-
* @description Client-supplied, per-object-unique identifier for model files.
|
|
283
|
-
* @type string | undefined
|
|
284
|
-
*/
|
|
285
|
-
slug?: string;
|
|
286
|
-
/**
|
|
287
|
-
* @description Sub-resolution variant URLs, keyed by subresolution key; present only when generated.
|
|
288
|
-
* @type object | undefined
|
|
289
|
-
*/
|
|
290
|
-
subRes?: {
|
|
291
|
-
[key: string]: string;
|
|
292
|
-
};
|
|
293
|
-
/**
|
|
294
|
-
* @description AttachType identifying the file\'s role (model, cover, colPreview, tex, etc.).
|
|
295
|
-
* @type string | undefined
|
|
296
|
-
*/
|
|
297
|
-
type?: string;
|
|
298
|
-
/**
|
|
299
|
-
* @description Public URL of the file in object storage.
|
|
300
|
-
* @type string | undefined
|
|
301
|
-
*/
|
|
302
|
-
url?: string;
|
|
303
|
-
/**
|
|
304
|
-
* @description File UUID.
|
|
305
|
-
* @type string | undefined
|
|
306
|
-
*/
|
|
307
|
-
uuid?: string;
|
|
308
|
-
};
|
|
309
|
-
|
|
310
207
|
/**
|
|
311
208
|
* VZ-108: the go-backend `account` / `user` / `auth` / `file` services are
|
|
312
209
|
* archived and no longer published in the gateway's OpenAPI config, so
|
|
313
210
|
* `@vizbl/api/account` stopped being generated. This module keeps the old
|
|
314
211
|
* account wire shape the apps are built around (`ApiUserAccount`, snake_case
|
|
315
|
-
* flags, `config` as a JSON string) and reads it from the
|
|
316
|
-
*
|
|
317
|
-
* - own profile → `GET /user/me` (+ `/file/stored/read` for the images);
|
|
318
|
-
* - someone else's profile → `/legacy/account/Fetch` (JWT) or the public
|
|
319
|
-
*
|
|
320
|
-
* - register / deletion → `/legacy/account/Register|RequestDeletion` (the
|
|
321
|
-
* same handlers the old `/v1/account/*` paths are rewritten to; Register is
|
|
322
|
-
* the only one that still takes a display `name`).
|
|
323
|
-
*
|
|
324
|
-
* All calls go through the
|
|
325
|
-
*
|
|
326
|
-
*/
|
|
327
|
-
declare type ApiFile_2 = {
|
|
328
|
-
ext?: string;
|
|
329
|
-
realName?: string;
|
|
330
|
-
type?: string;
|
|
331
|
-
url?: string;
|
|
332
|
-
uuid?: string;
|
|
333
|
-
};
|
|
334
|
-
|
|
335
|
-
declare type ApiFolder = {
|
|
336
|
-
/**
|
|
337
|
-
* @description Objects (and, for collections, subfolders wrapped as Object.folder) contained in the folder; only Uuid is required as input.
|
|
338
|
-
* @type array | undefined
|
|
339
|
-
*/
|
|
340
|
-
items?: ApiObject[];
|
|
341
|
-
/**
|
|
342
|
-
* @description Folder display name.
|
|
343
|
-
* @type string | undefined
|
|
344
|
-
*/
|
|
345
|
-
name?: string;
|
|
346
|
-
/**
|
|
347
|
-
* @description UUID of the parent collection folder; empty for root folders.
|
|
348
|
-
* @type string | undefined
|
|
349
|
-
*/
|
|
350
|
-
parentId?: string;
|
|
351
|
-
/**
|
|
352
|
-
* @description Folder tinuuid (shortened UUID encoding).
|
|
353
|
-
* @type string | undefined
|
|
354
|
-
*/
|
|
355
|
-
tinuuid?: string;
|
|
356
|
-
/**
|
|
357
|
-
* @description Folder kind: \"collection\", \"selection\", or \"kit\" (see dict.FolderType).
|
|
358
|
-
* @type string | undefined
|
|
359
|
-
*/
|
|
360
|
-
type?: string;
|
|
361
|
-
/**
|
|
362
|
-
* @description Folder UUID.
|
|
363
|
-
* @type string | undefined
|
|
364
|
-
*/
|
|
365
|
-
uuid?: string;
|
|
366
|
-
};
|
|
367
|
-
|
|
368
|
-
declare type ApiMatCollection = {
|
|
369
|
-
/**
|
|
370
|
-
* @description Short hash identifier for the collection (CRC32 of its UUID), used as a compact client-facing id.
|
|
371
|
-
* @type string | undefined
|
|
372
|
-
*/
|
|
373
|
-
hid?: string;
|
|
374
|
-
/**
|
|
375
|
-
* @description Materials belonging to this collection.
|
|
376
|
-
* @type array | undefined
|
|
377
|
-
*/
|
|
378
|
-
items?: ApiMaterial[];
|
|
379
|
-
/**
|
|
380
|
-
* @type object | undefined
|
|
381
|
-
*/
|
|
382
|
-
miniature?: ApiMiniature;
|
|
383
|
-
/**
|
|
384
|
-
* @description Uploaded native/downloadable model files for this collection.
|
|
385
|
-
* @type array | undefined
|
|
386
|
-
*/
|
|
387
|
-
models?: ApiFile[];
|
|
388
|
-
/**
|
|
389
|
-
* @description Material collection display name; editable via a draft.
|
|
390
|
-
* @type string | undefined
|
|
391
|
-
*/
|
|
392
|
-
name?: string;
|
|
393
|
-
/**
|
|
394
|
-
* @type object | undefined
|
|
395
|
-
*/
|
|
396
|
-
native?: ApiNative;
|
|
397
|
-
/**
|
|
398
|
-
* @description Preview image files for this material collection.
|
|
399
|
-
* @type array | undefined
|
|
400
|
-
*/
|
|
401
|
-
previews?: ApiFile[];
|
|
402
|
-
/**
|
|
403
|
-
* @description Material collection UUID; server-assigned on create.
|
|
404
|
-
* @type string | undefined
|
|
405
|
-
*/
|
|
406
|
-
uuid?: string;
|
|
407
|
-
};
|
|
408
|
-
|
|
409
|
-
declare type ApiMaterial = {
|
|
410
|
-
/**
|
|
411
|
-
* @description Whether the material\'s texture uses alpha transparency.
|
|
412
|
-
* @type boolean | undefined
|
|
413
|
-
*/
|
|
414
|
-
alpha?: boolean;
|
|
415
|
-
/**
|
|
416
|
-
* @description Material display name; editable via a draft.
|
|
417
|
-
* @type string | undefined
|
|
418
|
-
*/
|
|
419
|
-
name?: string;
|
|
420
|
-
/**
|
|
421
|
-
* @type object | undefined
|
|
422
|
-
*/
|
|
423
|
-
normalMap?: ApiFile;
|
|
424
|
-
/**
|
|
425
|
-
* @description Client-supplied identifier for the material, validated for uniqueness within the collection.
|
|
426
|
-
* @type string | undefined
|
|
427
|
-
*/
|
|
428
|
-
slug?: string;
|
|
429
|
-
/**
|
|
430
|
-
* @type object | undefined
|
|
431
|
-
*/
|
|
432
|
-
texture?: ApiFile;
|
|
433
|
-
/**
|
|
434
|
-
* @type object | undefined
|
|
435
|
-
*/
|
|
436
|
-
textureMro?: ApiFile;
|
|
437
|
-
/**
|
|
438
|
-
* @type object | undefined
|
|
439
|
-
*/
|
|
440
|
-
texturePreview?: ApiFile;
|
|
441
|
-
/**
|
|
442
|
-
* @description Material UUID; client-supplied or server-assigned on create.
|
|
443
|
-
* @type string | undefined
|
|
444
|
-
*/
|
|
445
|
-
uuid?: string;
|
|
446
|
-
};
|
|
447
|
-
|
|
448
|
-
declare type ApiMiniature = {
|
|
449
|
-
/**
|
|
450
|
-
* @type object | undefined
|
|
451
|
-
*/
|
|
452
|
-
color?: ApiMiniatureColor;
|
|
453
|
-
/**
|
|
454
|
-
* @type object | undefined
|
|
455
|
-
*/
|
|
456
|
-
image?: ApiFile;
|
|
457
|
-
};
|
|
458
|
-
|
|
459
|
-
/**
|
|
460
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
461
|
-
* Do not edit manually.
|
|
462
|
-
*/
|
|
463
|
-
declare type ApiMiniatureColor = {
|
|
464
|
-
/**
|
|
465
|
-
* @description Hex RGB value of the color swatch (e.g. \"#ffffff\").
|
|
466
|
-
* @type string | undefined
|
|
467
|
-
*/
|
|
468
|
-
hex?: string;
|
|
469
|
-
/**
|
|
470
|
-
* @description Identifier of the predefined color swatch (see dict.Colors).
|
|
471
|
-
* @type integer | undefined, int32
|
|
472
|
-
*/
|
|
473
|
-
id?: number;
|
|
474
|
-
/**
|
|
475
|
-
* @description Display name of the color swatch.
|
|
476
|
-
* @type string | undefined
|
|
477
|
-
*/
|
|
478
|
-
name?: string;
|
|
479
|
-
};
|
|
480
|
-
|
|
481
|
-
/**
|
|
482
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
483
|
-
* Do not edit manually.
|
|
484
|
-
*/
|
|
485
|
-
declare type ApiModerationInfo = {
|
|
486
|
-
/**
|
|
487
|
-
* @description Moderator\'s free-text explanation accompanying a rejection.
|
|
488
|
-
* @type string | undefined
|
|
489
|
-
*/
|
|
490
|
-
comment?: string;
|
|
491
|
-
/**
|
|
492
|
-
* @description Machine-readable rejection reason code (see domain.RejectReasons); set when rejected.
|
|
493
|
-
* @type string | undefined
|
|
494
|
-
*/
|
|
495
|
-
reason?: string;
|
|
496
|
-
/**
|
|
497
|
-
* @description Moderation state (draft, unpublished, approved, rejected, published, etc.) - see domain.ModrState.
|
|
498
|
-
* @type string | undefined
|
|
499
|
-
*/
|
|
500
|
-
state?: string;
|
|
501
|
-
};
|
|
502
|
-
|
|
503
|
-
declare type ApiNative = {
|
|
504
|
-
/**
|
|
505
|
-
* @description Conversion error message; empty on success.
|
|
506
|
-
* @type string | undefined
|
|
507
|
-
*/
|
|
508
|
-
error?: string;
|
|
509
|
-
/**
|
|
510
|
-
* @description URL of the generated GLB file; set on successful conversion.
|
|
511
|
-
* @type string | undefined
|
|
512
|
-
*/
|
|
513
|
-
glbUrl?: string;
|
|
514
|
-
/**
|
|
515
|
-
* @type object | undefined
|
|
516
|
-
*/
|
|
517
|
-
status?: ApiNativeStatus;
|
|
518
|
-
/**
|
|
519
|
-
* @description URL of the generated USDZ file; set on successful conversion.
|
|
520
|
-
* @type string | undefined
|
|
521
|
-
*/
|
|
522
|
-
usdzUrl?: string;
|
|
523
|
-
};
|
|
524
|
-
|
|
525
|
-
/**
|
|
526
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
527
|
-
* Do not edit manually.
|
|
528
|
-
*/
|
|
529
|
-
declare type ApiNativeStatus = {
|
|
530
|
-
/**
|
|
531
|
-
* @description Unix timestamp (as string) the state was last set/refreshed.
|
|
532
|
-
* @type string | undefined
|
|
533
|
-
*/
|
|
534
|
-
processedAt?: string;
|
|
535
|
-
/**
|
|
536
|
-
* @description Native conversion queue state (new/proc/succeed/failed); see dict.QueueState.
|
|
537
|
-
* @type string | undefined
|
|
538
|
-
*/
|
|
539
|
-
state?: string;
|
|
540
|
-
};
|
|
541
|
-
|
|
542
|
-
declare type ApiObject = {
|
|
543
|
-
/**
|
|
544
|
-
* @description Product platform types (dict.ProductType) this object is currently activated for; only populated by callers that load activations (e.g. ObjModr.Get), empty otherwise.
|
|
545
|
-
* @type array | undefined
|
|
546
|
-
*/
|
|
547
|
-
activatedProductTypes?: string[];
|
|
548
|
-
/**
|
|
549
|
-
* @description Last AI pipeline error message; empty when none.
|
|
550
|
-
* @type string | undefined
|
|
551
|
-
*/
|
|
552
|
-
aiError?: string;
|
|
553
|
-
/**
|
|
554
|
-
* @description Model-gen job UUID when object was created/updated via AI; empty for normal objects.
|
|
555
|
-
* @type string | undefined
|
|
556
|
-
*/
|
|
557
|
-
aiJobId?: string;
|
|
558
|
-
/**
|
|
559
|
-
* @description AI provider (tripo|trellis); empty for normal objects.
|
|
560
|
-
* @type string | undefined
|
|
561
|
-
*/
|
|
562
|
-
aiProvider?: string;
|
|
563
|
-
/**
|
|
564
|
-
* @description AI pipeline stage (generating|uploading_glb|converting_usdz|updating_object|awaiting_preview|ready|failed).
|
|
565
|
-
* @type string | undefined
|
|
566
|
-
*/
|
|
567
|
-
aiStage?: string;
|
|
568
|
-
/**
|
|
569
|
-
* @description Optional merchant/product brand name.
|
|
570
|
-
* @type string | undefined
|
|
571
|
-
*/
|
|
572
|
-
brand?: string;
|
|
573
|
-
/**
|
|
574
|
-
* @type object | undefined
|
|
575
|
-
*/
|
|
576
|
-
category?: ApiCat;
|
|
577
|
-
/**
|
|
578
|
-
* @description Cover image files attached to the object.
|
|
579
|
-
* @type array | undefined
|
|
580
|
-
*/
|
|
581
|
-
covers?: ApiFile[];
|
|
582
|
-
/**
|
|
583
|
-
* @description Unix timestamp (as string) the object was soft-deleted; empty when not deleted.
|
|
584
|
-
* @type string | undefined
|
|
585
|
-
*/
|
|
586
|
-
deletedAt?: string;
|
|
587
|
-
/**
|
|
588
|
-
* @description Object free-text description; editable via a draft.
|
|
589
|
-
* @type string | undefined
|
|
590
|
-
*/
|
|
591
|
-
description?: string;
|
|
592
|
-
/**
|
|
593
|
-
* @description Optional outbound link (e.g. product page) shown to viewers.
|
|
594
|
-
* @type string | undefined
|
|
595
|
-
*/
|
|
596
|
-
destinationUrl?: string;
|
|
597
|
-
/**
|
|
598
|
-
* @type object | undefined
|
|
599
|
-
*/
|
|
600
|
-
draft?: ApiDraftInfo;
|
|
601
|
-
/**
|
|
602
|
-
* @type object | undefined
|
|
603
|
-
*/
|
|
604
|
-
folder?: ApiFolder;
|
|
605
|
-
/**
|
|
606
|
-
* @description Space-separated hashtags associated with the object (see Obj.GetHashtags/SetHashtags).
|
|
607
|
-
* @type string | undefined
|
|
608
|
-
*/
|
|
609
|
-
hashtags?: string;
|
|
610
|
-
/**
|
|
611
|
-
* @description Whether the requesting user has favorited this object.
|
|
612
|
-
* @type boolean | undefined
|
|
613
|
-
*/
|
|
614
|
-
isFavorite?: boolean;
|
|
615
|
-
/**
|
|
616
|
-
* @description Whether the object is currently hidden from any source (platform or owner); read-only summary.
|
|
617
|
-
* @type boolean | undefined
|
|
618
|
-
*/
|
|
619
|
-
isHidden?: boolean;
|
|
620
|
-
/**
|
|
621
|
-
* @description Whether the object is hidden at the owner\'s own request (dict.ObjSrcOwner).
|
|
622
|
-
* @type boolean | undefined
|
|
623
|
-
*/
|
|
624
|
-
isHiddenOwner?: boolean;
|
|
625
|
-
/**
|
|
626
|
-
* @description Whether the object is hidden platform-wide (dict.ObjSrcPlatform).
|
|
627
|
-
* @type boolean | undefined
|
|
628
|
-
*/
|
|
629
|
-
isHiddenPlatform?: boolean;
|
|
630
|
-
/**
|
|
631
|
-
* @description Whether the requesting user has liked this object.
|
|
632
|
-
* @type boolean | undefined
|
|
633
|
-
*/
|
|
634
|
-
isLiked?: boolean;
|
|
635
|
-
/**
|
|
636
|
-
* @description Whether the object is exposed on the public showcase.
|
|
637
|
-
* @type boolean | undefined
|
|
638
|
-
*/
|
|
639
|
-
isShowcase?: boolean;
|
|
640
|
-
/**
|
|
641
|
-
* @type object | undefined
|
|
642
|
-
*/
|
|
643
|
-
kit?: ApiFolder;
|
|
644
|
-
/**
|
|
645
|
-
* @description Cumulative like count.
|
|
646
|
-
* @type integer | undefined, int32
|
|
647
|
-
*/
|
|
648
|
-
likes?: number;
|
|
649
|
-
/**
|
|
650
|
-
* @description URL of the object\'s main preview image (from its first material collection preview).
|
|
651
|
-
* @type string | undefined
|
|
652
|
-
*/
|
|
653
|
-
mainPreview?: string;
|
|
654
|
-
/**
|
|
655
|
-
* @description Object\'s material collections (each with previews, models, miniature, materials).
|
|
656
|
-
* @type array | undefined
|
|
657
|
-
*/
|
|
658
|
-
materials?: ApiMatCollection[];
|
|
659
|
-
/**
|
|
660
|
-
* @description Uploaded 3D model files attached directly to the object.
|
|
661
|
-
* @type array | undefined
|
|
662
|
-
*/
|
|
663
|
-
models?: ApiFile[];
|
|
664
|
-
/**
|
|
665
|
-
* @type object | undefined
|
|
666
|
-
*/
|
|
667
|
-
moderation?: ApiModerationInfo;
|
|
668
|
-
/**
|
|
669
|
-
* @description Object display name; editable via a draft.
|
|
670
|
-
* @type string | undefined
|
|
671
|
-
*/
|
|
672
|
-
name?: string;
|
|
673
|
-
/**
|
|
674
|
-
* @type object | undefined
|
|
675
|
-
*/
|
|
676
|
-
nativeStatus?: ApiNativeStatus;
|
|
677
|
-
/**
|
|
678
|
-
* @type object | undefined
|
|
679
|
-
*/
|
|
680
|
-
owner?: ApiOwner;
|
|
681
|
-
/**
|
|
682
|
-
* @type object | undefined
|
|
683
|
-
*/
|
|
684
|
-
permissions?: ApiPermissions;
|
|
685
|
-
/**
|
|
686
|
-
* @type object | undefined
|
|
687
|
-
*/
|
|
688
|
-
policy?: ApiPolicy;
|
|
689
|
-
/**
|
|
690
|
-
* @type object | undefined
|
|
691
|
-
*/
|
|
692
|
-
preview?: ApiFile;
|
|
693
|
-
/**
|
|
694
|
-
* @type object | undefined
|
|
695
|
-
*/
|
|
696
|
-
price?: ApiPrice;
|
|
697
|
-
/**
|
|
698
|
-
* @description Explanation of why the draft/object is not ready to publish; empty when it is.
|
|
699
|
-
* @type string | undefined
|
|
700
|
-
*/
|
|
701
|
-
publishReadyError?: string;
|
|
702
|
-
/**
|
|
703
|
-
* @type object | undefined
|
|
704
|
-
*/
|
|
705
|
-
seller?: ApiOwner;
|
|
706
|
-
/**
|
|
707
|
-
* @description Object tinuuid (shortened UUID encoding).
|
|
708
|
-
* @type string | undefined
|
|
709
|
-
*/
|
|
710
|
-
tinuuid?: string;
|
|
711
|
-
/**
|
|
712
|
-
* @description AR placement category (door, wall, floor, ceiling, carpet, eyeglasses, sneakers, flooring, panels, or \"all\").
|
|
713
|
-
* @type string | undefined
|
|
714
|
-
*/
|
|
715
|
-
type?: string;
|
|
716
|
-
/**
|
|
717
|
-
* @description Unix timestamp (as string) the object was last updated.
|
|
718
|
-
* @type string | undefined
|
|
719
|
-
*/
|
|
720
|
-
updatedAt?: string;
|
|
721
|
-
/**
|
|
722
|
-
* @description Upload type the object was created with (dict.ObjUploadType).
|
|
723
|
-
* @type string | undefined
|
|
724
|
-
*/
|
|
725
|
-
uploadType?: string;
|
|
726
|
-
/**
|
|
727
|
-
* @description Object UUID; server-assigned on create.
|
|
728
|
-
* @type string | undefined
|
|
729
|
-
*/
|
|
730
|
-
uuid?: string;
|
|
731
|
-
/**
|
|
732
|
-
* @description Object\'s current published version number.
|
|
733
|
-
* @type integer | undefined, int32
|
|
734
|
-
*/
|
|
735
|
-
version?: number;
|
|
736
|
-
/**
|
|
737
|
-
* @description Cumulative AR-viewer view count.
|
|
738
|
-
* @type integer | undefined, int32
|
|
739
|
-
*/
|
|
740
|
-
views?: number;
|
|
741
|
-
/**
|
|
742
|
-
* @description Cumulative showcase page view count.
|
|
743
|
-
* @type integer | undefined, int32
|
|
744
|
-
*/
|
|
745
|
-
viewsShowcase?: number;
|
|
746
|
-
};
|
|
747
|
-
|
|
748
|
-
declare type ApiOwner = {
|
|
749
|
-
/**
|
|
750
|
-
* @type object | undefined
|
|
751
|
-
*/
|
|
752
|
-
avatar?: ApiFile;
|
|
753
|
-
/**
|
|
754
|
-
* @description Owner display name.
|
|
755
|
-
* @type string | undefined
|
|
756
|
-
*/
|
|
757
|
-
name?: string;
|
|
758
|
-
/**
|
|
759
|
-
* @description Owner tinuuid (shortened UUID encoding).
|
|
760
|
-
* @type string | undefined
|
|
761
|
-
*/
|
|
762
|
-
tinuuid?: string;
|
|
763
|
-
/**
|
|
764
|
-
* @description Owner username/handle.
|
|
765
|
-
* @type string | undefined
|
|
766
|
-
*/
|
|
767
|
-
username?: string;
|
|
768
|
-
/**
|
|
769
|
-
* @description Owner UUID.
|
|
770
|
-
* @type string | undefined
|
|
771
|
-
*/
|
|
772
|
-
uuid?: string;
|
|
773
|
-
};
|
|
774
|
-
|
|
775
|
-
/**
|
|
776
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
777
|
-
* Do not edit manually.
|
|
778
|
-
*/
|
|
779
|
-
declare type ApiPermissions = {
|
|
780
|
-
/**
|
|
781
|
-
* @description Whether the caller (moderator) can approve the object/draft.
|
|
782
|
-
* @type boolean | undefined
|
|
783
|
-
*/
|
|
784
|
-
canApprove?: boolean;
|
|
785
|
-
/**
|
|
786
|
-
* @description Whether the caller (moderator) can disable a published object.
|
|
787
|
-
* @type boolean | undefined
|
|
788
|
-
*/
|
|
789
|
-
canDisable?: boolean;
|
|
790
|
-
/**
|
|
791
|
-
* @description Whether the caller (moderator) can re-enable a disabled object.
|
|
792
|
-
* @type boolean | undefined
|
|
793
|
-
*/
|
|
794
|
-
canEnable?: boolean;
|
|
795
|
-
/**
|
|
796
|
-
* @description Whether the caller can fetch the object.
|
|
797
|
-
* @type boolean | undefined
|
|
798
|
-
*/
|
|
799
|
-
canFetch?: boolean;
|
|
800
|
-
/**
|
|
801
|
-
* @description Whether the caller can fetch the object\'s pending draft (see ObjPerms.CanFetchDraft).
|
|
802
|
-
* @type boolean | undefined
|
|
803
|
-
*/
|
|
804
|
-
canFetchDraft?: boolean;
|
|
805
|
-
/**
|
|
806
|
-
* @description Whether the caller can publish the object/draft (see ObjPerms.CanPublish).
|
|
807
|
-
* @type boolean | undefined
|
|
808
|
-
*/
|
|
809
|
-
canPublish?: boolean;
|
|
810
|
-
/**
|
|
811
|
-
* @description Whether the caller (moderator) can reject the object/draft.
|
|
812
|
-
* @type boolean | undefined
|
|
813
|
-
*/
|
|
814
|
-
canReject?: boolean;
|
|
815
|
-
/**
|
|
816
|
-
* @description Whether the caller can unpublish the object (see ObjPerms.CanUnpublish).
|
|
817
|
-
* @type boolean | undefined
|
|
818
|
-
*/
|
|
819
|
-
canUnpublish?: boolean;
|
|
820
|
-
/**
|
|
821
|
-
* @description Whether the caller can update the object (see ObjPerms.CanUpdate).
|
|
822
|
-
* @type boolean | undefined
|
|
823
|
-
*/
|
|
824
|
-
canUpdate?: boolean;
|
|
825
|
-
};
|
|
826
|
-
|
|
827
|
-
/**
|
|
828
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
829
|
-
* Do not edit manually.
|
|
830
|
-
*/
|
|
831
|
-
declare type ApiPolicy = {
|
|
832
|
-
/**
|
|
833
|
-
* @description Whether the owner\'s plan includes iOS App Clip support.
|
|
834
|
-
* @type boolean | undefined
|
|
835
|
-
*/
|
|
836
|
-
appClip?: boolean;
|
|
837
|
-
/**
|
|
838
|
-
* @description Whether the owner\'s plan exposes the AR view counter to the owner.
|
|
839
|
-
* @type boolean | undefined
|
|
840
|
-
*/
|
|
841
|
-
arViewCounter?: boolean;
|
|
842
|
-
/**
|
|
843
|
-
* @description Whether the owner\'s plan allows setting a destinationUrl on objects.
|
|
844
|
-
* @type boolean | undefined
|
|
845
|
-
*/
|
|
846
|
-
destURL?: boolean;
|
|
847
|
-
/**
|
|
848
|
-
* @description Whether the owner\'s plan allows hiding the Vizbl branding/logo in the viewer.
|
|
849
|
-
* @type boolean | undefined
|
|
850
|
-
*/
|
|
851
|
-
hideVizblLogo?: boolean;
|
|
852
|
-
/**
|
|
853
|
-
* @description Whether the owner\'s plan allows AR links for Instagram integration.
|
|
854
|
-
* @type boolean | undefined
|
|
855
|
-
*/
|
|
856
|
-
ignLinkAr?: boolean;
|
|
857
|
-
/**
|
|
858
|
-
* @description Whether the owner\'s plan allows redirecting to AR from Instagram integration.
|
|
859
|
-
* @type boolean | undefined
|
|
860
|
-
*/
|
|
861
|
-
ignRedirectAr?: boolean;
|
|
862
|
-
/**
|
|
863
|
-
* @description Whether the owner\'s plan allows an \"IGN\" (Instagram) viewer integration.
|
|
864
|
-
* @type boolean | undefined
|
|
865
|
-
*/
|
|
866
|
-
ignViewer?: boolean;
|
|
867
|
-
/**
|
|
868
|
-
* @description Whether the owner\'s plan allows the Instagram viewer to open as a modal.
|
|
869
|
-
* @type boolean | undefined
|
|
870
|
-
*/
|
|
871
|
-
ignViewerModal?: boolean;
|
|
872
|
-
/**
|
|
873
|
-
* @description Whether the owner\'s plan enables instant AR view (skipping intermediate steps).
|
|
874
|
-
* @type boolean | undefined
|
|
875
|
-
*/
|
|
876
|
-
instantArView?: boolean;
|
|
877
|
-
/**
|
|
878
|
-
* @description Maximum number of material collections allowed per object under the owner\'s plan.
|
|
879
|
-
* @type integer | undefined, int32
|
|
880
|
-
*/
|
|
881
|
-
matColsMax?: number;
|
|
882
|
-
/**
|
|
883
|
-
* @description Whether the owner\'s plan allows grouping objects into kit-type folders.
|
|
884
|
-
* @type boolean | undefined
|
|
885
|
-
*/
|
|
886
|
-
objKits?: boolean;
|
|
887
|
-
/**
|
|
888
|
-
* @description Whether the owner\'s plan allows tagging objects.
|
|
889
|
-
* @type boolean | undefined
|
|
890
|
-
*/
|
|
891
|
-
objTags?: boolean;
|
|
892
|
-
/**
|
|
893
|
-
* @description Whether the owner\'s plan includes a personal showcase page.
|
|
894
|
-
* @type boolean | undefined
|
|
895
|
-
*/
|
|
896
|
-
personalPage?: boolean;
|
|
897
|
-
/**
|
|
898
|
-
* @description Whether the owner\'s plan allows customizing the personal showcase page.
|
|
899
|
-
* @type boolean | undefined
|
|
900
|
-
*/
|
|
901
|
-
personalPageCustom?: boolean;
|
|
902
|
-
/**
|
|
903
|
-
* @description Whether the owner\'s plan enables the product page feature.
|
|
904
|
-
* @type boolean | undefined
|
|
905
|
-
*/
|
|
906
|
-
ppage?: boolean;
|
|
907
|
-
/**
|
|
908
|
-
* @description Whether the owner\'s plan allows team accounts/collaboration.
|
|
909
|
-
* @type boolean | undefined
|
|
910
|
-
*/
|
|
911
|
-
teams?: boolean;
|
|
912
|
-
};
|
|
913
|
-
|
|
914
|
-
/**
|
|
915
|
-
* Generated by Kubb (https://kubb.dev/).
|
|
916
|
-
* Do not edit manually.
|
|
212
|
+
* flags, `config` as a JSON string) and reads it from the gate:
|
|
213
|
+
*
|
|
214
|
+
* - own profile → `GET /user/me` (+ `/file/stored/read` for the images);
|
|
215
|
+
* - someone else's profile → `/legacy/account/Fetch` (JWT) or the public
|
|
216
|
+
* `GET /user/public-profile`;
|
|
217
|
+
* - register / deletion → `/legacy/account/Register|RequestDeletion` (the
|
|
218
|
+
* same handlers the old `/v1/account/*` paths are rewritten to; Register is
|
|
219
|
+
* the only one that still takes a display `name`).
|
|
220
|
+
*
|
|
221
|
+
* All calls go through the API client, so a custom `baseURL` must be the
|
|
222
|
+
* gate base, without `/v1`.
|
|
917
223
|
*/
|
|
918
|
-
declare type
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
/**
|
|
925
|
-
* @description ISO currency code the price is denominated in; unset when the object has no price.
|
|
926
|
-
* @type string | undefined
|
|
927
|
-
*/
|
|
928
|
-
currency?: string;
|
|
929
|
-
/**
|
|
930
|
-
* @description Whether amount is an exact price (\"starting from\" otherwise); defaults to true when a price is set.
|
|
931
|
-
* @type boolean | undefined
|
|
932
|
-
*/
|
|
933
|
-
isExactPrice?: boolean;
|
|
224
|
+
declare type ApiFile = {
|
|
225
|
+
ext?: string;
|
|
226
|
+
realName?: string;
|
|
227
|
+
type?: string;
|
|
228
|
+
url?: string;
|
|
229
|
+
uuid?: string;
|
|
934
230
|
};
|
|
935
231
|
|
|
936
232
|
declare type ApiUserAccount = {
|
|
937
233
|
accepted_terms?: boolean;
|
|
938
234
|
app_type?: string;
|
|
939
|
-
avatar?:
|
|
940
|
-
background?:
|
|
235
|
+
avatar?: ApiFile;
|
|
236
|
+
background?: ApiFile;
|
|
941
237
|
company?: string;
|
|
942
238
|
/** Opaque user config JSON. */
|
|
943
239
|
config?: string;
|
|
@@ -979,6 +275,10 @@ export declare interface AppClipWidgetEventOptions {
|
|
|
979
275
|
widgetSessionToken?: string | null;
|
|
980
276
|
}
|
|
981
277
|
|
|
278
|
+
/**
|
|
279
|
+
* In the order they are tried: WebXR wherever the browser runs immersive AR
|
|
280
|
+
* itself, SLAM everywhere else — iOS Safari first among them.
|
|
281
|
+
*/
|
|
982
282
|
export declare const AR_TRACKING_BACKENDS: readonly ArTrackingBackend[];
|
|
983
283
|
|
|
984
284
|
export declare interface ArAnalyticsCatalogInfo {
|
|
@@ -1061,7 +361,7 @@ export declare interface ArDataProviderProps {
|
|
|
1061
361
|
export declare type ArDataStatus = 'error' | 'loading' | 'ready';
|
|
1062
362
|
|
|
1063
363
|
export declare interface ArDataValue {
|
|
1064
|
-
catalog:
|
|
364
|
+
catalog: CatalogObjectDtoOutput[];
|
|
1065
365
|
catalogCategories: ArCatalogCategory[];
|
|
1066
366
|
catalogFilters: ArCatalogFilters;
|
|
1067
367
|
environmentUrl: string | null;
|
|
@@ -1071,17 +371,24 @@ export declare interface ArDataValue {
|
|
|
1071
371
|
isFetchingNextPage: boolean;
|
|
1072
372
|
isLoadingCatalogCategories: boolean;
|
|
1073
373
|
metadata: ArObjectMetadata | null;
|
|
1074
|
-
object:
|
|
1075
|
-
owner:
|
|
374
|
+
object: CatalogObjectDtoOutput | null;
|
|
375
|
+
owner: ArObjectOwner | null;
|
|
1076
376
|
ownerAccount: ApiUserAccount | null;
|
|
1077
|
-
resolveCatalogObjectVariant: (object:
|
|
377
|
+
resolveCatalogObjectVariant: (object: CatalogObjectDtoOutput, hid: string) => Promise<CatalogObjectDtoOutput>;
|
|
1078
378
|
setCatalogFilters: Dispatch<SetStateAction<ArCatalogFilters>>;
|
|
1079
379
|
showcaseHost: string;
|
|
1080
380
|
status: ArDataStatus;
|
|
1081
|
-
variant:
|
|
381
|
+
variant: ArObjectMaterial | null;
|
|
1082
382
|
widgetSession: ArWidgetSession | null;
|
|
1083
383
|
}
|
|
1084
384
|
|
|
385
|
+
export declare interface ArDebugOverride {
|
|
386
|
+
/** Runtime to pin, when the value named one. */
|
|
387
|
+
backend?: ArTrackingBackend;
|
|
388
|
+
/** Keep the in-page session instead of handing off to a native experience. */
|
|
389
|
+
forcesInPageSession: boolean;
|
|
390
|
+
}
|
|
391
|
+
|
|
1085
392
|
export declare function ArDialog({ apiKey, hid, initialWidgetSessionToken, name, language, onAnalyticsEvent, open, defaultOpen, onOpenChange, scaleEnabled, tinuuid, ...props }: ArDialogProps): JSX.Element | null;
|
|
1086
393
|
|
|
1087
394
|
export declare interface ArDialogProps extends Omit<DialogProps, 'children' | 'modal'> {
|
|
@@ -1135,11 +442,15 @@ export declare interface ArObjectDimensions {
|
|
|
1135
442
|
width: number;
|
|
1136
443
|
}
|
|
1137
444
|
|
|
445
|
+
declare type ArObjectMaterial = NonNullable<CatalogObjectDtoOutput['materials']>[number];
|
|
446
|
+
|
|
1138
447
|
export declare interface ArObjectMetadata {
|
|
1139
448
|
dimensions: ArObjectDimensions;
|
|
1140
449
|
mechanic: ArMechanic;
|
|
1141
450
|
}
|
|
1142
451
|
|
|
452
|
+
declare type ArObjectOwner = NonNullable<CatalogObjectDtoOutput['owner']>;
|
|
453
|
+
|
|
1143
454
|
export declare type ArPlatform = 'ios' | 'android' | 'desktop';
|
|
1144
455
|
|
|
1145
456
|
export declare type ArPlatformRoute = 'app-clip' | 'model-viewer' | 'ar';
|
|
@@ -1218,7 +529,6 @@ export declare interface ArSessionPrewarmOptions {
|
|
|
1218
529
|
declare interface ArTenantConfig {
|
|
1219
530
|
apiOrigin: string;
|
|
1220
531
|
brand: ArBrand;
|
|
1221
|
-
legacyApiOrigin: string;
|
|
1222
532
|
showcaseHost: string;
|
|
1223
533
|
viewerOrigin: string;
|
|
1224
534
|
}
|
|
@@ -1307,13 +617,22 @@ declare type AttributeGPUType = typeof FloatType | typeof IntType;
|
|
|
1307
617
|
* Choosing a backend means asking each runtime whether it can run here, which
|
|
1308
618
|
* is async, while a scene needs its tracker the moment it renders. Resolving
|
|
1309
619
|
* lazily behind the normal tracker interface keeps that choice out of the
|
|
1310
|
-
* component: WebXR
|
|
620
|
+
* component: WebXR where the browser runs it, SLAM everywhere else, decided
|
|
621
|
+
* once.
|
|
1311
622
|
*/
|
|
1312
623
|
export declare class AutoSurfaceTracker implements SurfaceTracker<unknown, XrFrameLike> {
|
|
1313
624
|
private readonly options;
|
|
1314
625
|
private resolution;
|
|
1315
626
|
constructor(options?: CreateArTrackerOptions);
|
|
1316
627
|
isSupported(): Promise<boolean>;
|
|
628
|
+
/**
|
|
629
|
+
* Starts on the first backend, and on the next one if the first cannot.
|
|
630
|
+
*
|
|
631
|
+
* A browser is trusted on whether it runs WebXR, and one that says yes may
|
|
632
|
+
* still lack a feature the session requires; SLAM then starts instead of the
|
|
633
|
+
* visitor being told AR is out of reach on a phone that runs it. A refusal is
|
|
634
|
+
* the visitor's answer, not the runtime's, so it is never routed around.
|
|
635
|
+
*/
|
|
1317
636
|
startSession(options?: SurfaceTrackerStartOptions): Promise<SurfaceTrackerSession<unknown, XrFrameLike>>;
|
|
1318
637
|
private resolve;
|
|
1319
638
|
}
|
|
@@ -2388,137 +1707,759 @@ TEventMap extends BufferGeometryEventMap = BufferGeometryEventMap,
|
|
|
2388
1707
|
setFromPoints(points: Vector3[] | Vector2[]): this;
|
|
2389
1708
|
|
|
2390
1709
|
/**
|
|
2391
|
-
* Computes the bounding box of the geometry, and updates the {@link .boundingBox} attribute. The bounding box is
|
|
2392
|
-
* not computed by the engine; it must be computed by your app. You may need to recompute the bounding box if the
|
|
2393
|
-
* geometry vertices are modified.
|
|
1710
|
+
* Computes the bounding box of the geometry, and updates the {@link .boundingBox} attribute. The bounding box is
|
|
1711
|
+
* not computed by the engine; it must be computed by your app. You may need to recompute the bounding box if the
|
|
1712
|
+
* geometry vertices are modified.
|
|
1713
|
+
*/
|
|
1714
|
+
computeBoundingBox(): void;
|
|
1715
|
+
|
|
1716
|
+
/**
|
|
1717
|
+
* Computes the bounding sphere of the geometry, and updates the {@link .boundingSphere} attribute. The engine
|
|
1718
|
+
* automatically computes the bounding sphere when it is needed, e.g., for ray casting or view frustum culling. You
|
|
1719
|
+
* may need to recompute the bounding sphere if the geometry vertices are modified.
|
|
1720
|
+
*/
|
|
1721
|
+
computeBoundingSphere(): void;
|
|
1722
|
+
|
|
1723
|
+
/**
|
|
1724
|
+
* Calculates and adds a tangent attribute to this geometry.
|
|
1725
|
+
* The computation is only supported for indexed geometries and if position, normal, and uv attributes are defined
|
|
1726
|
+
* @remarks
|
|
1727
|
+
* When using a tangent space normal map, prefer the MikkTSpace algorithm provided by
|
|
1728
|
+
* {@link BufferGeometryUtils.computeMikkTSpaceTangents} instead.
|
|
1729
|
+
*/
|
|
1730
|
+
computeTangents(): void;
|
|
1731
|
+
|
|
1732
|
+
/**
|
|
1733
|
+
* Computes vertex normals for the given vertex data. For indexed geometries, the method sets each vertex normal to
|
|
1734
|
+
* be the average of the face normals of the faces that share that vertex. For non-indexed geometries, vertices are
|
|
1735
|
+
* not shared, and the method sets each vertex normal to be the same as the face normal.
|
|
1736
|
+
*/
|
|
1737
|
+
computeVertexNormals(): void;
|
|
1738
|
+
|
|
1739
|
+
/**
|
|
1740
|
+
* Every normal vector in a geometry will have a magnitude of 1
|
|
1741
|
+
* @remarks This will correct lighting on the geometry surfaces.
|
|
1742
|
+
*/
|
|
1743
|
+
normalizeNormals(): void;
|
|
1744
|
+
|
|
1745
|
+
/**
|
|
1746
|
+
* Return a non-index version of an indexed BufferGeometry.
|
|
1747
|
+
*/
|
|
1748
|
+
toNonIndexed(): BufferGeometry;
|
|
1749
|
+
|
|
1750
|
+
/**
|
|
1751
|
+
* Convert the buffer geometry to three.js {@link https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 | JSON Object/Scene format}.
|
|
1752
|
+
*/
|
|
1753
|
+
toJSON(): BufferGeometryJSON;
|
|
1754
|
+
|
|
1755
|
+
/**
|
|
1756
|
+
* Creates a clone of this BufferGeometry
|
|
1757
|
+
*/
|
|
1758
|
+
clone(): this;
|
|
1759
|
+
|
|
1760
|
+
/**
|
|
1761
|
+
* Copies another BufferGeometry to this BufferGeometry.
|
|
1762
|
+
* @param source
|
|
1763
|
+
*/
|
|
1764
|
+
copy(source: BufferGeometry): this;
|
|
1765
|
+
|
|
1766
|
+
/**
|
|
1767
|
+
* Frees the GPU-related resources allocated by this instance.
|
|
1768
|
+
* @remarks Call this method whenever this instance is no longer used in your app.
|
|
1769
|
+
*/
|
|
1770
|
+
dispose(): void;
|
|
1771
|
+
}
|
|
1772
|
+
|
|
1773
|
+
declare interface BufferGeometryEventMap {
|
|
1774
|
+
dispose: {};
|
|
1775
|
+
}
|
|
1776
|
+
|
|
1777
|
+
declare interface BufferGeometryJSON {
|
|
1778
|
+
metadata?: { version: number; type: string; generator: string };
|
|
1779
|
+
|
|
1780
|
+
uuid: string;
|
|
1781
|
+
type: string;
|
|
1782
|
+
|
|
1783
|
+
name?: string;
|
|
1784
|
+
userData?: Record<string, unknown>;
|
|
1785
|
+
|
|
1786
|
+
data?: {
|
|
1787
|
+
attributes: Record<string, BufferAttributeJSON>;
|
|
1788
|
+
|
|
1789
|
+
index?: { type: string; array: number[] };
|
|
1790
|
+
|
|
1791
|
+
morphAttributes?: Record<string, BufferAttributeJSON[]>;
|
|
1792
|
+
morphTargetsRelative?: boolean;
|
|
1793
|
+
|
|
1794
|
+
groups?: GeometryGroup[];
|
|
1795
|
+
|
|
1796
|
+
boundingSphere?: { center: Vector3Tuple; radius: number };
|
|
1797
|
+
};
|
|
1798
|
+
}
|
|
1799
|
+
|
|
1800
|
+
export declare function buildAppClipUrl(tinuuid: string, region: AppClipRegion): string;
|
|
1801
|
+
|
|
1802
|
+
declare const ByteType: 1010;
|
|
1803
|
+
|
|
1804
|
+
/**
|
|
1805
|
+
* Abstract base class for cameras. This class should always be inherited
|
|
1806
|
+
* when you build a new camera.
|
|
1807
|
+
*/
|
|
1808
|
+
declare class Camera extends Object3D {
|
|
1809
|
+
/**
|
|
1810
|
+
* This flag can be used for type testing.
|
|
1811
|
+
*
|
|
1812
|
+
* @default true
|
|
1813
|
+
*/
|
|
1814
|
+
readonly isCamera: boolean;
|
|
1815
|
+
/**
|
|
1816
|
+
* The inverse of the camera's world matrix.
|
|
1817
|
+
*/
|
|
1818
|
+
matrixWorldInverse: Matrix4;
|
|
1819
|
+
/**
|
|
1820
|
+
* The camera's projection matrix.
|
|
1821
|
+
*/
|
|
1822
|
+
projectionMatrix: Matrix4;
|
|
1823
|
+
/**
|
|
1824
|
+
* The inverse of the camera's projection matrix.
|
|
1825
|
+
*/
|
|
1826
|
+
projectionMatrixInverse: Matrix4;
|
|
1827
|
+
/**
|
|
1828
|
+
* The coordinate system in which the camera is used.
|
|
1829
|
+
*/
|
|
1830
|
+
coordinateSystem: CoordinateSystem;
|
|
1831
|
+
viewport?: Vector4;
|
|
1832
|
+
/**
|
|
1833
|
+
* The flag that indicates whether the camera uses a reversed depth buffer.
|
|
1834
|
+
*
|
|
1835
|
+
* @default false
|
|
1836
|
+
*/
|
|
1837
|
+
get reversedDepth(): boolean;
|
|
1838
|
+
clone(): this;
|
|
1839
|
+
copy(source: Camera, recursive?: boolean): this;
|
|
1840
|
+
}
|
|
1841
|
+
|
|
1842
|
+
declare type CatalogObjectDtoOutput = {
|
|
1843
|
+
/**
|
|
1844
|
+
* @type string, uuid
|
|
1845
|
+
*/
|
|
1846
|
+
uuid: string;
|
|
1847
|
+
/**
|
|
1848
|
+
* @type string
|
|
1849
|
+
*/
|
|
1850
|
+
tinuuid: string;
|
|
1851
|
+
/**
|
|
1852
|
+
* @type string | undefined
|
|
1853
|
+
*/
|
|
1854
|
+
name?: string;
|
|
1855
|
+
/**
|
|
1856
|
+
* @type string | undefined
|
|
1857
|
+
*/
|
|
1858
|
+
description?: string;
|
|
1859
|
+
/**
|
|
1860
|
+
* @type string | undefined
|
|
1861
|
+
*/
|
|
1862
|
+
type?: string;
|
|
1863
|
+
/**
|
|
1864
|
+
* @type string | undefined
|
|
1865
|
+
*/
|
|
1866
|
+
uploadType?: string;
|
|
1867
|
+
/**
|
|
1868
|
+
* @type string | undefined
|
|
1869
|
+
*/
|
|
1870
|
+
mainPreview?: string;
|
|
1871
|
+
/**
|
|
1872
|
+
* @type object | undefined
|
|
1873
|
+
*/
|
|
1874
|
+
preview?: {
|
|
1875
|
+
/**
|
|
1876
|
+
* @type string | undefined
|
|
1877
|
+
*/
|
|
1878
|
+
url?: string;
|
|
1879
|
+
/**
|
|
1880
|
+
* @type object | undefined
|
|
1881
|
+
*/
|
|
1882
|
+
subRes?: {
|
|
1883
|
+
[key: string]: string;
|
|
1884
|
+
};
|
|
1885
|
+
/**
|
|
1886
|
+
* @type string | undefined
|
|
1887
|
+
*/
|
|
1888
|
+
imgOrientation?: string;
|
|
1889
|
+
/**
|
|
1890
|
+
* @type string | undefined
|
|
1891
|
+
*/
|
|
1892
|
+
slug?: string;
|
|
1893
|
+
/**
|
|
1894
|
+
* @type boolean | undefined
|
|
1895
|
+
*/
|
|
1896
|
+
isClonable?: boolean;
|
|
1897
|
+
};
|
|
1898
|
+
/**
|
|
1899
|
+
* @type string | undefined
|
|
1900
|
+
*/
|
|
1901
|
+
destinationUrl?: string;
|
|
1902
|
+
/**
|
|
1903
|
+
* @type string | undefined
|
|
1904
|
+
*/
|
|
1905
|
+
brand?: string;
|
|
1906
|
+
/**
|
|
1907
|
+
* @type object
|
|
1908
|
+
*/
|
|
1909
|
+
dimensions?: {
|
|
1910
|
+
/**
|
|
1911
|
+
* @maxLength 9007199254740991
|
|
1912
|
+
* @type integer
|
|
1913
|
+
*/
|
|
1914
|
+
width: number | null;
|
|
1915
|
+
/**
|
|
1916
|
+
* @maxLength 9007199254740991
|
|
1917
|
+
* @type integer
|
|
1918
|
+
*/
|
|
1919
|
+
height: number | null;
|
|
1920
|
+
/**
|
|
1921
|
+
* @maxLength 9007199254740991
|
|
1922
|
+
* @type integer
|
|
1923
|
+
*/
|
|
1924
|
+
depth: number | null;
|
|
1925
|
+
/**
|
|
1926
|
+
* @type string
|
|
1927
|
+
*/
|
|
1928
|
+
unit: DimensionsUnitEnumKey;
|
|
1929
|
+
} | null;
|
|
1930
|
+
/**
|
|
1931
|
+
* @minLength -9007199254740991
|
|
1932
|
+
* @maxLength 9007199254740991
|
|
1933
|
+
* @type integer | undefined
|
|
1934
|
+
*/
|
|
1935
|
+
views?: number;
|
|
1936
|
+
/**
|
|
1937
|
+
* @minLength -9007199254740991
|
|
1938
|
+
* @maxLength 9007199254740991
|
|
1939
|
+
* @type integer | undefined
|
|
1940
|
+
*/
|
|
1941
|
+
viewsShowcase?: number;
|
|
1942
|
+
/**
|
|
1943
|
+
* @minLength -9007199254740991
|
|
1944
|
+
* @maxLength 9007199254740991
|
|
1945
|
+
* @type integer | undefined
|
|
1946
|
+
*/
|
|
1947
|
+
likes?: number;
|
|
1948
|
+
/**
|
|
1949
|
+
* @type string | undefined
|
|
1950
|
+
*/
|
|
1951
|
+
hashtags?: string;
|
|
1952
|
+
/**
|
|
1953
|
+
* @minLength -9007199254740991
|
|
1954
|
+
* @maxLength 9007199254740991
|
|
1955
|
+
* @type integer | undefined
|
|
1956
|
+
*/
|
|
1957
|
+
version?: number;
|
|
1958
|
+
/**
|
|
1959
|
+
* @type string | undefined
|
|
1960
|
+
*/
|
|
1961
|
+
updatedAt?: string;
|
|
1962
|
+
/**
|
|
1963
|
+
* @type boolean | undefined
|
|
1964
|
+
*/
|
|
1965
|
+
isFavorite?: boolean;
|
|
1966
|
+
/**
|
|
1967
|
+
* @type boolean | undefined
|
|
1968
|
+
*/
|
|
1969
|
+
isLiked?: boolean;
|
|
1970
|
+
/**
|
|
1971
|
+
* @type boolean | undefined
|
|
1972
|
+
*/
|
|
1973
|
+
isShowcase?: boolean;
|
|
1974
|
+
/**
|
|
1975
|
+
* @type boolean | undefined
|
|
2394
1976
|
*/
|
|
2395
|
-
|
|
2396
|
-
|
|
1977
|
+
isHidden?: boolean;
|
|
2397
1978
|
/**
|
|
2398
|
-
*
|
|
2399
|
-
* automatically computes the bounding sphere when it is needed, e.g., for ray casting or view frustum culling. You
|
|
2400
|
-
* may need to recompute the bounding sphere if the geometry vertices are modified.
|
|
1979
|
+
* @type boolean | undefined
|
|
2401
1980
|
*/
|
|
2402
|
-
|
|
2403
|
-
|
|
1981
|
+
isHiddenPlatform?: boolean;
|
|
2404
1982
|
/**
|
|
2405
|
-
*
|
|
2406
|
-
* The computation is only supported for indexed geometries and if position, normal, and uv attributes are defined
|
|
2407
|
-
* @remarks
|
|
2408
|
-
* When using a tangent space normal map, prefer the MikkTSpace algorithm provided by
|
|
2409
|
-
* {@link BufferGeometryUtils.computeMikkTSpaceTangents} instead.
|
|
1983
|
+
* @type boolean | undefined
|
|
2410
1984
|
*/
|
|
2411
|
-
|
|
2412
|
-
|
|
1985
|
+
isHiddenOwner?: boolean;
|
|
2413
1986
|
/**
|
|
2414
|
-
*
|
|
2415
|
-
* be the average of the face normals of the faces that share that vertex. For non-indexed geometries, vertices are
|
|
2416
|
-
* not shared, and the method sets each vertex normal to be the same as the face normal.
|
|
1987
|
+
* @type string | undefined
|
|
2417
1988
|
*/
|
|
2418
|
-
|
|
2419
|
-
|
|
1989
|
+
deletedAt?: string;
|
|
2420
1990
|
/**
|
|
2421
|
-
*
|
|
2422
|
-
* @remarks This will correct lighting on the geometry surfaces.
|
|
1991
|
+
* @type object | undefined
|
|
2423
1992
|
*/
|
|
2424
|
-
|
|
2425
|
-
|
|
1993
|
+
price?: {
|
|
1994
|
+
/**
|
|
1995
|
+
* @type number | undefined
|
|
1996
|
+
*/
|
|
1997
|
+
amount?: number;
|
|
1998
|
+
/**
|
|
1999
|
+
* @type string | undefined
|
|
2000
|
+
*/
|
|
2001
|
+
currency?: string;
|
|
2002
|
+
/**
|
|
2003
|
+
* @type boolean | undefined
|
|
2004
|
+
*/
|
|
2005
|
+
isExactPrice?: boolean;
|
|
2006
|
+
};
|
|
2426
2007
|
/**
|
|
2427
|
-
*
|
|
2008
|
+
* @type object | undefined
|
|
2428
2009
|
*/
|
|
2429
|
-
|
|
2430
|
-
|
|
2010
|
+
category?: {
|
|
2011
|
+
/**
|
|
2012
|
+
* @minLength -9007199254740991
|
|
2013
|
+
* @maxLength 9007199254740991
|
|
2014
|
+
* @type integer | undefined
|
|
2015
|
+
*/
|
|
2016
|
+
id?: number;
|
|
2017
|
+
/**
|
|
2018
|
+
* @type string | undefined
|
|
2019
|
+
*/
|
|
2020
|
+
name?: string;
|
|
2021
|
+
/**
|
|
2022
|
+
* @type boolean | undefined
|
|
2023
|
+
*/
|
|
2024
|
+
hasObjs?: boolean;
|
|
2025
|
+
/**
|
|
2026
|
+
* @type string | undefined
|
|
2027
|
+
*/
|
|
2028
|
+
previewUrl?: string;
|
|
2029
|
+
};
|
|
2431
2030
|
/**
|
|
2432
|
-
*
|
|
2031
|
+
* @type object | undefined
|
|
2433
2032
|
*/
|
|
2434
|
-
|
|
2435
|
-
|
|
2033
|
+
moderation?: {
|
|
2034
|
+
/**
|
|
2035
|
+
* @type string | undefined
|
|
2036
|
+
*/
|
|
2037
|
+
state?: string;
|
|
2038
|
+
};
|
|
2436
2039
|
/**
|
|
2437
|
-
*
|
|
2040
|
+
* @type object | undefined
|
|
2438
2041
|
*/
|
|
2439
|
-
|
|
2440
|
-
|
|
2042
|
+
draft?: {
|
|
2043
|
+
/**
|
|
2044
|
+
* @minLength -9007199254740991
|
|
2045
|
+
* @maxLength 9007199254740991
|
|
2046
|
+
* @type integer | undefined
|
|
2047
|
+
*/
|
|
2048
|
+
version?: number;
|
|
2049
|
+
/**
|
|
2050
|
+
* @type object | undefined
|
|
2051
|
+
*/
|
|
2052
|
+
moderation?: {
|
|
2053
|
+
/**
|
|
2054
|
+
* @type string | undefined
|
|
2055
|
+
*/
|
|
2056
|
+
state?: string;
|
|
2057
|
+
};
|
|
2058
|
+
};
|
|
2441
2059
|
/**
|
|
2442
|
-
*
|
|
2443
|
-
* @param source
|
|
2060
|
+
* @type array | undefined
|
|
2444
2061
|
*/
|
|
2445
|
-
|
|
2446
|
-
|
|
2062
|
+
activatedProductTypes?: CatalogObjectDtoOutputActivatedProductTypesEnumKey[];
|
|
2447
2063
|
/**
|
|
2448
|
-
*
|
|
2449
|
-
* @remarks Call this method whenever this instance is no longer used in your app.
|
|
2064
|
+
* @type object | undefined
|
|
2450
2065
|
*/
|
|
2451
|
-
|
|
2452
|
-
|
|
2453
|
-
|
|
2454
|
-
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2477
|
-
|
|
2066
|
+
owner?: {
|
|
2067
|
+
/**
|
|
2068
|
+
* @type string, uuid
|
|
2069
|
+
*/
|
|
2070
|
+
uuid: string;
|
|
2071
|
+
/**
|
|
2072
|
+
* @type string | undefined
|
|
2073
|
+
*/
|
|
2074
|
+
tinuuid?: string;
|
|
2075
|
+
/**
|
|
2076
|
+
* @type string | undefined
|
|
2077
|
+
*/
|
|
2078
|
+
name?: string;
|
|
2079
|
+
/**
|
|
2080
|
+
* @type string | undefined
|
|
2081
|
+
*/
|
|
2082
|
+
username?: string;
|
|
2083
|
+
/**
|
|
2084
|
+
* @type object | undefined
|
|
2085
|
+
*/
|
|
2086
|
+
avatar?: {
|
|
2087
|
+
/**
|
|
2088
|
+
* @type string | undefined
|
|
2089
|
+
*/
|
|
2090
|
+
url?: string;
|
|
2091
|
+
/**
|
|
2092
|
+
* @type object | undefined
|
|
2093
|
+
*/
|
|
2094
|
+
subRes?: {
|
|
2095
|
+
[key: string]: string;
|
|
2096
|
+
};
|
|
2097
|
+
/**
|
|
2098
|
+
* @type string | undefined
|
|
2099
|
+
*/
|
|
2100
|
+
imgOrientation?: string;
|
|
2101
|
+
/**
|
|
2102
|
+
* @type string | undefined
|
|
2103
|
+
*/
|
|
2104
|
+
slug?: string;
|
|
2105
|
+
/**
|
|
2106
|
+
* @type boolean | undefined
|
|
2107
|
+
*/
|
|
2108
|
+
isClonable?: boolean;
|
|
2109
|
+
};
|
|
2478
2110
|
};
|
|
2479
|
-
}
|
|
2480
|
-
|
|
2481
|
-
export declare function buildAppClipUrl(tinuuid: string, region: AppClipRegion): string;
|
|
2482
|
-
|
|
2483
|
-
declare const ByteType: 1010;
|
|
2484
|
-
|
|
2485
|
-
/**
|
|
2486
|
-
* Abstract base class for cameras. This class should always be inherited
|
|
2487
|
-
* when you build a new camera.
|
|
2488
|
-
*/
|
|
2489
|
-
declare class Camera extends Object3D {
|
|
2490
2111
|
/**
|
|
2491
|
-
*
|
|
2492
|
-
*
|
|
2493
|
-
* @default true
|
|
2112
|
+
* @type array | undefined
|
|
2494
2113
|
*/
|
|
2495
|
-
|
|
2114
|
+
covers?: {
|
|
2115
|
+
/**
|
|
2116
|
+
* @type string | undefined
|
|
2117
|
+
*/
|
|
2118
|
+
url?: string;
|
|
2119
|
+
/**
|
|
2120
|
+
* @type object | undefined
|
|
2121
|
+
*/
|
|
2122
|
+
subRes?: {
|
|
2123
|
+
[key: string]: string;
|
|
2124
|
+
};
|
|
2125
|
+
/**
|
|
2126
|
+
* @type string | undefined
|
|
2127
|
+
*/
|
|
2128
|
+
imgOrientation?: string;
|
|
2129
|
+
/**
|
|
2130
|
+
* @type string | undefined
|
|
2131
|
+
*/
|
|
2132
|
+
slug?: string;
|
|
2133
|
+
/**
|
|
2134
|
+
* @type boolean | undefined
|
|
2135
|
+
*/
|
|
2136
|
+
isClonable?: boolean;
|
|
2137
|
+
}[];
|
|
2496
2138
|
/**
|
|
2497
|
-
*
|
|
2139
|
+
* @type array | undefined
|
|
2498
2140
|
*/
|
|
2499
|
-
|
|
2141
|
+
models?: {
|
|
2142
|
+
/**
|
|
2143
|
+
* @type string | undefined
|
|
2144
|
+
*/
|
|
2145
|
+
url?: string;
|
|
2146
|
+
/**
|
|
2147
|
+
* @type object | undefined
|
|
2148
|
+
*/
|
|
2149
|
+
subRes?: {
|
|
2150
|
+
[key: string]: string;
|
|
2151
|
+
};
|
|
2152
|
+
/**
|
|
2153
|
+
* @type string | undefined
|
|
2154
|
+
*/
|
|
2155
|
+
imgOrientation?: string;
|
|
2156
|
+
/**
|
|
2157
|
+
* @type string | undefined
|
|
2158
|
+
*/
|
|
2159
|
+
slug?: string;
|
|
2160
|
+
/**
|
|
2161
|
+
* @type boolean | undefined
|
|
2162
|
+
*/
|
|
2163
|
+
isClonable?: boolean;
|
|
2164
|
+
}[];
|
|
2500
2165
|
/**
|
|
2501
|
-
*
|
|
2166
|
+
* @type array | undefined
|
|
2502
2167
|
*/
|
|
2503
|
-
|
|
2168
|
+
materials?: {
|
|
2169
|
+
/**
|
|
2170
|
+
* @type string | undefined
|
|
2171
|
+
*/
|
|
2172
|
+
hid?: string;
|
|
2173
|
+
/**
|
|
2174
|
+
* @type string | undefined
|
|
2175
|
+
*/
|
|
2176
|
+
name?: string;
|
|
2177
|
+
/**
|
|
2178
|
+
* @type object | undefined
|
|
2179
|
+
*/
|
|
2180
|
+
native?: {
|
|
2181
|
+
/**
|
|
2182
|
+
* @type string | undefined
|
|
2183
|
+
*/
|
|
2184
|
+
glbUrl?: string;
|
|
2185
|
+
/**
|
|
2186
|
+
* @type string | undefined
|
|
2187
|
+
*/
|
|
2188
|
+
usdzUrl?: string;
|
|
2189
|
+
/**
|
|
2190
|
+
* @type string | undefined
|
|
2191
|
+
*/
|
|
2192
|
+
stlUrl?: string;
|
|
2193
|
+
/**
|
|
2194
|
+
* @type object | undefined
|
|
2195
|
+
*/
|
|
2196
|
+
status?: {
|
|
2197
|
+
/**
|
|
2198
|
+
* @type string | undefined
|
|
2199
|
+
*/
|
|
2200
|
+
state?: string;
|
|
2201
|
+
/**
|
|
2202
|
+
* @type string | undefined
|
|
2203
|
+
*/
|
|
2204
|
+
processedAt?: string;
|
|
2205
|
+
};
|
|
2206
|
+
/**
|
|
2207
|
+
* @type string | undefined
|
|
2208
|
+
*/
|
|
2209
|
+
error?: string;
|
|
2210
|
+
};
|
|
2211
|
+
/**
|
|
2212
|
+
* @type array | undefined
|
|
2213
|
+
*/
|
|
2214
|
+
previews?: {
|
|
2215
|
+
/**
|
|
2216
|
+
* @type string | undefined
|
|
2217
|
+
*/
|
|
2218
|
+
url?: string;
|
|
2219
|
+
/**
|
|
2220
|
+
* @type object | undefined
|
|
2221
|
+
*/
|
|
2222
|
+
subRes?: {
|
|
2223
|
+
[key: string]: string;
|
|
2224
|
+
};
|
|
2225
|
+
/**
|
|
2226
|
+
* @type string | undefined
|
|
2227
|
+
*/
|
|
2228
|
+
imgOrientation?: string;
|
|
2229
|
+
/**
|
|
2230
|
+
* @type string | undefined
|
|
2231
|
+
*/
|
|
2232
|
+
slug?: string;
|
|
2233
|
+
/**
|
|
2234
|
+
* @type boolean | undefined
|
|
2235
|
+
*/
|
|
2236
|
+
isClonable?: boolean;
|
|
2237
|
+
}[];
|
|
2238
|
+
/**
|
|
2239
|
+
* @type array | undefined
|
|
2240
|
+
*/
|
|
2241
|
+
models?: {
|
|
2242
|
+
/**
|
|
2243
|
+
* @type string | undefined
|
|
2244
|
+
*/
|
|
2245
|
+
url?: string;
|
|
2246
|
+
/**
|
|
2247
|
+
* @type object | undefined
|
|
2248
|
+
*/
|
|
2249
|
+
subRes?: {
|
|
2250
|
+
[key: string]: string;
|
|
2251
|
+
};
|
|
2252
|
+
/**
|
|
2253
|
+
* @type string | undefined
|
|
2254
|
+
*/
|
|
2255
|
+
imgOrientation?: string;
|
|
2256
|
+
/**
|
|
2257
|
+
* @type string | undefined
|
|
2258
|
+
*/
|
|
2259
|
+
slug?: string;
|
|
2260
|
+
/**
|
|
2261
|
+
* @type boolean | undefined
|
|
2262
|
+
*/
|
|
2263
|
+
isClonable?: boolean;
|
|
2264
|
+
}[];
|
|
2265
|
+
/**
|
|
2266
|
+
* @type object | undefined
|
|
2267
|
+
*/
|
|
2268
|
+
miniature?: {
|
|
2269
|
+
/**
|
|
2270
|
+
* @type object | undefined
|
|
2271
|
+
*/
|
|
2272
|
+
image?: {
|
|
2273
|
+
/**
|
|
2274
|
+
* @type string | undefined
|
|
2275
|
+
*/
|
|
2276
|
+
url?: string;
|
|
2277
|
+
/**
|
|
2278
|
+
* @type object | undefined
|
|
2279
|
+
*/
|
|
2280
|
+
subRes?: {
|
|
2281
|
+
[key: string]: string;
|
|
2282
|
+
};
|
|
2283
|
+
/**
|
|
2284
|
+
* @type string | undefined
|
|
2285
|
+
*/
|
|
2286
|
+
imgOrientation?: string;
|
|
2287
|
+
/**
|
|
2288
|
+
* @type string | undefined
|
|
2289
|
+
*/
|
|
2290
|
+
slug?: string;
|
|
2291
|
+
/**
|
|
2292
|
+
* @type boolean | undefined
|
|
2293
|
+
*/
|
|
2294
|
+
isClonable?: boolean;
|
|
2295
|
+
};
|
|
2296
|
+
/**
|
|
2297
|
+
* @type object | undefined
|
|
2298
|
+
*/
|
|
2299
|
+
color?: {
|
|
2300
|
+
/**
|
|
2301
|
+
* @minLength -9007199254740991
|
|
2302
|
+
* @maxLength 9007199254740991
|
|
2303
|
+
* @type integer | undefined
|
|
2304
|
+
*/
|
|
2305
|
+
id?: number;
|
|
2306
|
+
/**
|
|
2307
|
+
* @type string | undefined
|
|
2308
|
+
*/
|
|
2309
|
+
name?: string;
|
|
2310
|
+
/**
|
|
2311
|
+
* @type string | undefined
|
|
2312
|
+
*/
|
|
2313
|
+
hex?: string;
|
|
2314
|
+
};
|
|
2315
|
+
};
|
|
2316
|
+
/**
|
|
2317
|
+
* @type array | undefined
|
|
2318
|
+
*/
|
|
2319
|
+
items?: {
|
|
2320
|
+
/**
|
|
2321
|
+
* @type string | undefined
|
|
2322
|
+
*/
|
|
2323
|
+
name?: string;
|
|
2324
|
+
/**
|
|
2325
|
+
* @type string | undefined
|
|
2326
|
+
*/
|
|
2327
|
+
slug?: string;
|
|
2328
|
+
/**
|
|
2329
|
+
* @type boolean | undefined
|
|
2330
|
+
*/
|
|
2331
|
+
alpha?: boolean;
|
|
2332
|
+
/**
|
|
2333
|
+
* @type object | undefined
|
|
2334
|
+
*/
|
|
2335
|
+
texture?: {
|
|
2336
|
+
/**
|
|
2337
|
+
* @type string | undefined
|
|
2338
|
+
*/
|
|
2339
|
+
url?: string;
|
|
2340
|
+
/**
|
|
2341
|
+
* @type object | undefined
|
|
2342
|
+
*/
|
|
2343
|
+
subRes?: {
|
|
2344
|
+
[key: string]: string;
|
|
2345
|
+
};
|
|
2346
|
+
/**
|
|
2347
|
+
* @type string | undefined
|
|
2348
|
+
*/
|
|
2349
|
+
imgOrientation?: string;
|
|
2350
|
+
/**
|
|
2351
|
+
* @type string | undefined
|
|
2352
|
+
*/
|
|
2353
|
+
slug?: string;
|
|
2354
|
+
/**
|
|
2355
|
+
* @type boolean | undefined
|
|
2356
|
+
*/
|
|
2357
|
+
isClonable?: boolean;
|
|
2358
|
+
};
|
|
2359
|
+
/**
|
|
2360
|
+
* @type object | undefined
|
|
2361
|
+
*/
|
|
2362
|
+
normalMap?: {
|
|
2363
|
+
/**
|
|
2364
|
+
* @type string | undefined
|
|
2365
|
+
*/
|
|
2366
|
+
url?: string;
|
|
2367
|
+
/**
|
|
2368
|
+
* @type object | undefined
|
|
2369
|
+
*/
|
|
2370
|
+
subRes?: {
|
|
2371
|
+
[key: string]: string;
|
|
2372
|
+
};
|
|
2373
|
+
/**
|
|
2374
|
+
* @type string | undefined
|
|
2375
|
+
*/
|
|
2376
|
+
imgOrientation?: string;
|
|
2377
|
+
/**
|
|
2378
|
+
* @type string | undefined
|
|
2379
|
+
*/
|
|
2380
|
+
slug?: string;
|
|
2381
|
+
/**
|
|
2382
|
+
* @type boolean | undefined
|
|
2383
|
+
*/
|
|
2384
|
+
isClonable?: boolean;
|
|
2385
|
+
};
|
|
2386
|
+
/**
|
|
2387
|
+
* @type object | undefined
|
|
2388
|
+
*/
|
|
2389
|
+
textureMro?: {
|
|
2390
|
+
/**
|
|
2391
|
+
* @type string | undefined
|
|
2392
|
+
*/
|
|
2393
|
+
url?: string;
|
|
2394
|
+
/**
|
|
2395
|
+
* @type object | undefined
|
|
2396
|
+
*/
|
|
2397
|
+
subRes?: {
|
|
2398
|
+
[key: string]: string;
|
|
2399
|
+
};
|
|
2400
|
+
/**
|
|
2401
|
+
* @type string | undefined
|
|
2402
|
+
*/
|
|
2403
|
+
imgOrientation?: string;
|
|
2404
|
+
/**
|
|
2405
|
+
* @type string | undefined
|
|
2406
|
+
*/
|
|
2407
|
+
slug?: string;
|
|
2408
|
+
/**
|
|
2409
|
+
* @type boolean | undefined
|
|
2410
|
+
*/
|
|
2411
|
+
isClonable?: boolean;
|
|
2412
|
+
};
|
|
2413
|
+
}[];
|
|
2414
|
+
}[];
|
|
2504
2415
|
/**
|
|
2505
|
-
*
|
|
2416
|
+
* @type object | undefined
|
|
2506
2417
|
*/
|
|
2507
|
-
|
|
2418
|
+
kit?: {
|
|
2419
|
+
/**
|
|
2420
|
+
* @type string | undefined, uuid
|
|
2421
|
+
*/
|
|
2422
|
+
uuid?: string;
|
|
2423
|
+
/**
|
|
2424
|
+
* @type string | undefined
|
|
2425
|
+
*/
|
|
2426
|
+
name?: string;
|
|
2427
|
+
};
|
|
2508
2428
|
/**
|
|
2509
|
-
*
|
|
2429
|
+
* @type object | undefined
|
|
2510
2430
|
*/
|
|
2511
|
-
|
|
2512
|
-
|
|
2431
|
+
nativeStatus?: {
|
|
2432
|
+
/**
|
|
2433
|
+
* @type string | undefined
|
|
2434
|
+
*/
|
|
2435
|
+
state?: string;
|
|
2436
|
+
/**
|
|
2437
|
+
* @type string | undefined
|
|
2438
|
+
*/
|
|
2439
|
+
processedAt?: string;
|
|
2440
|
+
};
|
|
2513
2441
|
/**
|
|
2514
|
-
*
|
|
2515
|
-
*
|
|
2516
|
-
* @default false
|
|
2442
|
+
* @type object
|
|
2517
2443
|
*/
|
|
2518
|
-
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
}
|
|
2444
|
+
policy?: {
|
|
2445
|
+
[key: string]: any;
|
|
2446
|
+
} | null;
|
|
2447
|
+
};
|
|
2448
|
+
|
|
2449
|
+
declare const catalogObjectDtoOutputActivatedProductTypesEnum: {
|
|
2450
|
+
readonly "core-ar": "core-ar";
|
|
2451
|
+
readonly "core-ar-shopify": "core-ar-shopify";
|
|
2452
|
+
readonly wallart: "wallart";
|
|
2453
|
+
readonly "wallart-shopify": "wallart-shopify";
|
|
2454
|
+
readonly rugs: "rugs";
|
|
2455
|
+
readonly flooring: "flooring";
|
|
2456
|
+
readonly "ai-try-on": "ai-try-on";
|
|
2457
|
+
readonly "ai-try-on-shopify": "ai-try-on-shopify";
|
|
2458
|
+
readonly "view-360": "view-360";
|
|
2459
|
+
readonly panels: "panels";
|
|
2460
|
+
};
|
|
2461
|
+
|
|
2462
|
+
declare type CatalogObjectDtoOutputActivatedProductTypesEnumKey = (typeof catalogObjectDtoOutputActivatedProductTypesEnum)[keyof typeof catalogObjectDtoOutputActivatedProductTypesEnum];
|
|
2522
2463
|
|
|
2523
2464
|
declare const CineonToneMapping: 3;
|
|
2524
2465
|
|
|
@@ -2951,16 +2892,21 @@ declare type CoordinateSystem =
|
|
|
2951
2892
|
| typeof WebGPUCoordinateSystem;
|
|
2952
2893
|
|
|
2953
2894
|
/**
|
|
2954
|
-
* Picks the tracking backend for this device
|
|
2955
|
-
*
|
|
2895
|
+
* Picks the tracking backend for this device: WebXR where the browser runs it,
|
|
2896
|
+
* SLAM otherwise.
|
|
2956
2897
|
*/
|
|
2957
|
-
export declare function createArTracker(
|
|
2898
|
+
export declare function createArTracker(options?: CreateArTrackerOptions): Promise<ArTracker>;
|
|
2958
2899
|
|
|
2959
2900
|
export declare interface CreateArTrackerOptions {
|
|
2960
2901
|
/** Pin a backend instead of picking one from the device. */
|
|
2961
2902
|
backend?: ArTrackingBackend;
|
|
2962
2903
|
registry?: ArTrackerRegistry;
|
|
2963
|
-
|
|
2904
|
+
/**
|
|
2905
|
+
* Set inside an in-app browser, which gets only the runtime it brings itself.
|
|
2906
|
+
* SLAM needs the camera, and an app seldom hands its browser one; WebXR is
|
|
2907
|
+
* the browser's own, so where it answers it is the browser's to run.
|
|
2908
|
+
*/
|
|
2909
|
+
webview?: boolean;
|
|
2964
2910
|
}
|
|
2965
2911
|
|
|
2966
2912
|
export declare function createArTrackerRegistry(): ArTrackerRegistry;
|
|
@@ -3267,6 +3213,16 @@ export declare function detectSupportedArBackends(registry?: ArTrackerRegistry):
|
|
|
3267
3213
|
|
|
3268
3214
|
declare type DialogProps = React_2.ComponentProps<typeof DialogPrimitive.Root>
|
|
3269
3215
|
|
|
3216
|
+
/**
|
|
3217
|
+
* Generated by Kubb (https://kubb.dev/).
|
|
3218
|
+
* Do not edit manually.
|
|
3219
|
+
*/
|
|
3220
|
+
declare const dimensionsUnitEnum: {
|
|
3221
|
+
readonly mm: "mm";
|
|
3222
|
+
};
|
|
3223
|
+
|
|
3224
|
+
declare type DimensionsUnitEnumKey = (typeof dimensionsUnitEnum)[keyof typeof dimensionsUnitEnum];
|
|
3225
|
+
|
|
3270
3226
|
/**
|
|
3271
3227
|
* Interpolant that evaluates to the sample value at the position preceding
|
|
3272
3228
|
* the parameter.
|
|
@@ -3356,6 +3312,7 @@ declare class EighthWallTrackingSession implements SurfaceTrackerSession<Xr8Like
|
|
|
3356
3312
|
private threeScene;
|
|
3357
3313
|
private tracking;
|
|
3358
3314
|
bridge: ArRenderBridge | null;
|
|
3315
|
+
readonly guessesWalls = true;
|
|
3359
3316
|
constructor(nativeSession: Xr8Like, canvas: HTMLCanvasElement, mechanic: ArMechanic, onResize: () => void);
|
|
3360
3317
|
/** The scene switches mechanics mid-session as objects are selected. */
|
|
3361
3318
|
setMechanic(mechanic: ArMechanic): void;
|
|
@@ -3384,7 +3341,6 @@ export declare function emitArAnalyticsEvent(handler: ArAnalyticsEventHandler |
|
|
|
3384
3341
|
|
|
3385
3342
|
declare const env: {
|
|
3386
3343
|
readonly API_BASE_URL: string | undefined;
|
|
3387
|
-
readonly NODE_API_BASE_URL: string | undefined;
|
|
3388
3344
|
readonly TENANTS: {
|
|
3389
3345
|
readonly arizo: {
|
|
3390
3346
|
readonly VIEWER_URL: string | undefined;
|
|
@@ -3909,6 +3865,11 @@ declare interface HSL {
|
|
|
3909
3865
|
l: number;
|
|
3910
3866
|
}
|
|
3911
3867
|
|
|
3868
|
+
/** The one call of `navigator.xr` this question needs. */
|
|
3869
|
+
declare interface ImmersiveArSystemLike {
|
|
3870
|
+
isSessionSupported: (mode: 'immersive-ar') => Promise<boolean>;
|
|
3871
|
+
}
|
|
3872
|
+
|
|
3912
3873
|
declare const IncrementStencilOp: 7682;
|
|
3913
3874
|
|
|
3914
3875
|
declare const IncrementWrapStencilOp: 34055;
|
|
@@ -4434,12 +4395,6 @@ declare const IntType: 1013;
|
|
|
4434
4395
|
|
|
4435
4396
|
declare const InvertStencilOp: 5386;
|
|
4436
4397
|
|
|
4437
|
-
/**
|
|
4438
|
-
* Chrome and Edge on Android are the only places native WebXR AR is solid.
|
|
4439
|
-
* Every other browser — iOS Safari first among them — goes to SLAM.
|
|
4440
|
-
*/
|
|
4441
|
-
export declare function isAndroidChromeOrEdge(userAgent?: string): boolean;
|
|
4442
|
-
|
|
4443
4398
|
declare type IssueArWidgetToken = (data: {
|
|
4444
4399
|
mode: 'ar-viewer';
|
|
4445
4400
|
token: string;
|
|
@@ -7497,6 +7452,13 @@ declare type PixelFormatGPU =
|
|
|
7497
7452
|
export declare interface PlacementAnchor<Frame = unknown> {
|
|
7498
7453
|
delete: () => void;
|
|
7499
7454
|
getPose: (frame: Frame) => SurfacePose | null;
|
|
7455
|
+
/**
|
|
7456
|
+
* True once the runtime has let go of the anchor for good — ARCore detaches
|
|
7457
|
+
* one it stopped tracking, typically after tracking was lost for a while —
|
|
7458
|
+
* so no pose will ever come from it again. A paused anchor is not detached:
|
|
7459
|
+
* it answers null until the runtime finds it again.
|
|
7460
|
+
*/
|
|
7461
|
+
isDetached?: () => boolean;
|
|
7500
7462
|
nativeAnchor?: unknown;
|
|
7501
7463
|
pose: SurfacePose;
|
|
7502
7464
|
}
|
|
@@ -7542,8 +7504,6 @@ declare class Plane {
|
|
|
7542
7504
|
isIntersectionLine(l: any): any;
|
|
7543
7505
|
}
|
|
7544
7506
|
|
|
7545
|
-
export declare function preferredArBackend(userAgent?: string): ArTrackingBackend;
|
|
7546
|
-
|
|
7547
7507
|
/**
|
|
7548
7508
|
* Starts everything an AR session needs that does not need the DOM yet, from
|
|
7549
7509
|
* the tap that opens the widget.
|
|
@@ -7551,9 +7511,8 @@ export declare function preferredArBackend(userAgent?: string): ArTrackingBacken
|
|
|
7551
7511
|
* The session itself cannot start here: WebXR hands its UI over as a DOM
|
|
7552
7512
|
* overlay, so it can only be requested once the surface it composites is
|
|
7553
7513
|
* mounted. What can start here is everything that surface then waits on — the
|
|
7554
|
-
* scene chunk
|
|
7555
|
-
*
|
|
7556
|
-
* to download and no prompt left to answer.
|
|
7514
|
+
* scene chunk and the SLAM engine binary — so by the time the visitor has read
|
|
7515
|
+
* the intro there is nothing left to download.
|
|
7557
7516
|
*
|
|
7558
7517
|
* Fire-and-forget by design: nothing here is required for AR to work, so a
|
|
7559
7518
|
* failure is left for the session to run into and report on its own.
|
|
@@ -7975,6 +7934,8 @@ declare interface RaycasterParameters {
|
|
|
7975
7934
|
Sprite: any;
|
|
7976
7935
|
}
|
|
7977
7936
|
|
|
7937
|
+
export declare function readArDebugOverride(search?: string): ArDebugOverride;
|
|
7938
|
+
|
|
7978
7939
|
declare const RED_GREEN_RGTC2_Format: 36285;
|
|
7979
7940
|
|
|
7980
7941
|
declare const RED_RGTC1_Format: 36283;
|
|
@@ -8124,112 +8085,155 @@ export declare function resolveEighthWallReticleHit(input: ReticleHitInput): Ret
|
|
|
8124
8085
|
declare const resources: {
|
|
8125
8086
|
en: {
|
|
8126
8087
|
translation: {
|
|
8127
|
-
readonly title: "
|
|
8128
|
-
readonly comingSoon: "
|
|
8088
|
+
readonly title: "Try-on";
|
|
8089
|
+
readonly comingSoon: "Try-on is coming soon.";
|
|
8129
8090
|
readonly close: "Close";
|
|
8130
|
-
readonly
|
|
8091
|
+
readonly cancelPlacement: "Cancel";
|
|
8092
|
+
readonly deleteObject: "Take the object away";
|
|
8093
|
+
readonly linkCopied: "Link copied";
|
|
8094
|
+
readonly share: "Share";
|
|
8095
|
+
readonly variant: "Variant";
|
|
8096
|
+
readonly addObject: "Add an object";
|
|
8097
|
+
readonly preparingObject: "Getting the object ready… {{progress}}%";
|
|
8098
|
+
readonly loadingModel: "Loading… {{progress}}%";
|
|
8099
|
+
readonly scan: {
|
|
8100
|
+
readonly help: "Nothing yet? Try more light, or step back";
|
|
8101
|
+
};
|
|
8102
|
+
readonly intro: {
|
|
8103
|
+
readonly action: "Turn on camera";
|
|
8104
|
+
readonly body: "We’ll turn on the camera, and you’ll see it right in your room.";
|
|
8105
|
+
readonly privacy: "The camera runs only while you’re trying it on.";
|
|
8106
|
+
readonly starting: "Starting…";
|
|
8107
|
+
readonly title: "Try this one in your room";
|
|
8108
|
+
};
|
|
8131
8109
|
readonly android: {
|
|
8132
|
-
readonly description: "
|
|
8133
|
-
readonly title: "
|
|
8110
|
+
readonly description: "Put the object in your room.";
|
|
8111
|
+
readonly title: "Try it on in your room";
|
|
8134
8112
|
};
|
|
8135
8113
|
readonly all: {
|
|
8136
|
-
readonly
|
|
8114
|
+
readonly found: "Great, surface found";
|
|
8115
|
+
readonly anchorError: "That did not settle. Sweep your phone around and try again.";
|
|
8116
|
+
readonly catalog: "Tap the plus to add another";
|
|
8137
8117
|
readonly done: "Done";
|
|
8138
|
-
readonly
|
|
8139
|
-
readonly
|
|
8140
|
-
readonly
|
|
8141
|
-
readonly
|
|
8142
|
-
readonly
|
|
8143
|
-
readonly
|
|
8144
|
-
readonly
|
|
8118
|
+
readonly finish: "Tap away from the object to finish";
|
|
8119
|
+
readonly gestures: "Drag the object to move it. Drag beside it to turn it.";
|
|
8120
|
+
readonly move: "Drag the object to move it";
|
|
8121
|
+
readonly place: "Place here";
|
|
8122
|
+
readonly preview: "Aim at any surface";
|
|
8123
|
+
readonly relocalizing: "Show the room again";
|
|
8124
|
+
readonly rotate: "Drag beside the object to turn it";
|
|
8125
|
+
readonly scanMove: "Move your phone to scan it";
|
|
8126
|
+
readonly searching: "Point your phone at a surface";
|
|
8127
|
+
readonly select: "Tap the object to select it";
|
|
8145
8128
|
};
|
|
8146
8129
|
readonly catalog: {
|
|
8147
|
-
readonly selectVariant: "
|
|
8130
|
+
readonly selectVariant: "Pick a variant";
|
|
8148
8131
|
readonly all: "All";
|
|
8149
8132
|
readonly clear: "Clear";
|
|
8150
|
-
readonly description: "
|
|
8151
|
-
readonly empty: "
|
|
8152
|
-
readonly loadingMore: "Loading more
|
|
8153
|
-
readonly noResults: "
|
|
8154
|
-
readonly noResultsHint: "Try
|
|
8155
|
-
readonly open: "
|
|
8156
|
-
readonly placementFailed: "
|
|
8133
|
+
readonly description: "Pick something to try on.";
|
|
8134
|
+
readonly empty: "Nothing to try on here yet.";
|
|
8135
|
+
readonly loadingMore: "Loading more…";
|
|
8136
|
+
readonly noResults: "Nothing found for “{{search}}”";
|
|
8137
|
+
readonly noResultsHint: "Try another word, or browse every category";
|
|
8138
|
+
readonly open: "Add another object";
|
|
8139
|
+
readonly placementFailed: "That variant did not load. Try again.";
|
|
8157
8140
|
readonly placing: "Placing…";
|
|
8158
|
-
readonly productDetails: "
|
|
8141
|
+
readonly productDetails: "About this one";
|
|
8159
8142
|
readonly searchPlaceholder: "Search";
|
|
8160
|
-
readonly showAllItems: "Show all
|
|
8161
|
-
readonly title: "
|
|
8162
|
-
readonly tryInRoom: "Try it
|
|
8143
|
+
readonly showAllItems: "Show all";
|
|
8144
|
+
readonly title: "What else to try";
|
|
8145
|
+
readonly tryInRoom: "Try it on";
|
|
8163
8146
|
readonly unnamedProduct: "Unnamed product";
|
|
8164
|
-
readonly unnamedOwner: "
|
|
8165
|
-
readonly viewOnSite: "
|
|
8147
|
+
readonly unnamedOwner: "Catalogue";
|
|
8148
|
+
readonly viewOnSite: "Open on the site";
|
|
8166
8149
|
};
|
|
8167
8150
|
readonly floor: {
|
|
8168
|
-
readonly
|
|
8169
|
-
readonly
|
|
8151
|
+
readonly found: "Great, floor found";
|
|
8152
|
+
readonly anchorError: "That did not settle. Sweep your phone around and try again.";
|
|
8153
|
+
readonly catalog: "Tap the plus to add another";
|
|
8170
8154
|
readonly done: "Done";
|
|
8171
|
-
readonly
|
|
8172
|
-
readonly
|
|
8173
|
-
readonly
|
|
8174
|
-
readonly
|
|
8175
|
-
readonly
|
|
8176
|
-
readonly
|
|
8177
|
-
readonly
|
|
8155
|
+
readonly finish: "Tap away from the object to finish";
|
|
8156
|
+
readonly gestures: "Drag the object to move it. Drag beside it to turn it.";
|
|
8157
|
+
readonly move: "Drag the object to move it";
|
|
8158
|
+
readonly place: "Place here";
|
|
8159
|
+
readonly preview: "Aim where it should stand";
|
|
8160
|
+
readonly relocalizing: "Show the room again";
|
|
8161
|
+
readonly rotate: "Drag beside the object to turn it";
|
|
8162
|
+
readonly scanMove: "Move your phone to scan it";
|
|
8163
|
+
readonly searching: "Point your phone at the floor";
|
|
8164
|
+
readonly select: "Tap the object to select it";
|
|
8178
8165
|
};
|
|
8179
8166
|
readonly ceiling: {
|
|
8180
|
-
readonly
|
|
8181
|
-
readonly
|
|
8167
|
+
readonly found: "Great, found the floor below it";
|
|
8168
|
+
readonly anchorError: "That did not settle. Sweep your phone around and try again.";
|
|
8169
|
+
readonly calibrating: "Fine-tune the height with the slider";
|
|
8170
|
+
readonly catalog: "Tap the plus to add another";
|
|
8182
8171
|
readonly done: "Done";
|
|
8183
|
-
readonly
|
|
8172
|
+
readonly finish: "Tap away from the object to finish";
|
|
8173
|
+
readonly floorReady: "Pick the spot it will hang above";
|
|
8174
|
+
readonly gestures: "Drag the object to move it. Drag beside it to turn it.";
|
|
8175
|
+
readonly move: "Drag the object to move it";
|
|
8176
|
+
readonly place: "Done";
|
|
8177
|
+
readonly heightValue: "{{height}} m";
|
|
8184
8178
|
readonly measuredHeight: "Ceiling {{height}} m";
|
|
8185
|
-
readonly measureHeight: "Swipe up to
|
|
8186
|
-
readonly preview: "
|
|
8187
|
-
readonly relocalizing: "
|
|
8188
|
-
readonly
|
|
8189
|
-
readonly
|
|
8190
|
-
readonly
|
|
8191
|
-
readonly
|
|
8192
|
-
readonly
|
|
8193
|
-
readonly
|
|
8179
|
+
readonly measureHeight: "Swipe up to set the height";
|
|
8180
|
+
readonly preview: "We kept the height from last time — check it";
|
|
8181
|
+
readonly relocalizing: "Show the room again";
|
|
8182
|
+
readonly rotate: "Drag beside the object to turn it";
|
|
8183
|
+
readonly scanMove: "Sweep it slowly: the height is measured from the floor";
|
|
8184
|
+
readonly searching: "Point your phone at the floor below where it will hang";
|
|
8185
|
+
readonly select: "Tap the object to select it";
|
|
8186
|
+
readonly setFloor: "Place here";
|
|
8187
|
+
readonly setHeight: "Set the height";
|
|
8194
8188
|
};
|
|
8195
8189
|
readonly wall: {
|
|
8196
|
-
readonly
|
|
8190
|
+
readonly found: "Great, wall found";
|
|
8191
|
+
readonly anchorError: "That did not settle. Sweep your phone around and try again.";
|
|
8192
|
+
readonly catalog: "Tap the plus to add another";
|
|
8197
8193
|
readonly done: "Done";
|
|
8198
|
-
readonly
|
|
8199
|
-
readonly
|
|
8200
|
-
readonly
|
|
8201
|
-
readonly
|
|
8202
|
-
readonly
|
|
8203
|
-
readonly
|
|
8204
|
-
readonly
|
|
8205
|
-
readonly
|
|
8206
|
-
readonly
|
|
8194
|
+
readonly finish: "Tap away from the object to finish";
|
|
8195
|
+
readonly gestures: "Drag the object to slide it along the wall. Drag the circle on the floor to move it down the room. Drag beside them to turn it.";
|
|
8196
|
+
readonly move: "Drag the object along the wall. The circle on the floor moves it down the room";
|
|
8197
|
+
readonly place: "Hang here";
|
|
8198
|
+
readonly preview: "Aim at the wall. Drag to turn it.";
|
|
8199
|
+
readonly relocalizing: "Show the room again";
|
|
8200
|
+
readonly rotate: "Drag beside the object to turn it";
|
|
8201
|
+
readonly scanMove: "Move your phone to scan it";
|
|
8202
|
+
readonly searching: "Point your phone at the wall";
|
|
8203
|
+
readonly select: "Tap the object to select it";
|
|
8204
|
+
readonly startError: "Try-on did not open. Check camera access and try again.";
|
|
8205
|
+
readonly unsupported: "Try-on does not work on this phone.";
|
|
8207
8206
|
};
|
|
8208
8207
|
readonly accessError: {
|
|
8209
|
-
readonly 'not-found': "
|
|
8210
|
-
readonly unauthorized: "
|
|
8211
|
-
readonly unavailable: "
|
|
8208
|
+
readonly 'not-found': "No such object";
|
|
8209
|
+
readonly unauthorized: "Try-on is not set up here";
|
|
8210
|
+
readonly unavailable: "Try-on is unavailable right now";
|
|
8212
8211
|
};
|
|
8213
8212
|
readonly runtimeState: {
|
|
8214
8213
|
readonly cameraDenied: {
|
|
8215
|
-
readonly body: "Allow camera
|
|
8216
|
-
readonly
|
|
8214
|
+
readonly body: "Allow the camera in your browser settings, then open try-on again.";
|
|
8215
|
+
readonly path: {
|
|
8216
|
+
readonly chrome: "Tap the icon left of the address → Permissions → Camera";
|
|
8217
|
+
readonly firefox: "Tap the lock icon left of the address → Camera";
|
|
8218
|
+
readonly safari: "Settings → Safari → Camera → Allow";
|
|
8219
|
+
};
|
|
8220
|
+
readonly title: "The camera is off";
|
|
8217
8221
|
};
|
|
8218
8222
|
readonly error: {
|
|
8219
|
-
readonly body: "Close
|
|
8220
|
-
readonly title: "
|
|
8223
|
+
readonly body: "Close try-on and open it again.";
|
|
8224
|
+
readonly title: "Try-on did not open";
|
|
8221
8225
|
};
|
|
8222
8226
|
readonly rescan: {
|
|
8223
|
-
readonly body: "Point your phone
|
|
8224
|
-
readonly title: "
|
|
8227
|
+
readonly body: "Point your phone around the room — everything you placed will come back.";
|
|
8228
|
+
readonly title: "Show the room again";
|
|
8225
8229
|
};
|
|
8226
8230
|
readonly unsupported: {
|
|
8227
|
-
readonly body: "This
|
|
8228
|
-
readonly title: "
|
|
8231
|
+
readonly body: "This phone or browser does not support it.";
|
|
8232
|
+
readonly title: "Try-on does not work here";
|
|
8229
8233
|
};
|
|
8230
8234
|
readonly webview: {
|
|
8231
|
-
readonly body: "Open this page in Chrome or Safari
|
|
8232
|
-
readonly title: "Open in
|
|
8235
|
+
readonly body: "Open this page in Chrome or Safari: the camera is out of reach inside an app.";
|
|
8236
|
+
readonly title: "Open it in a browser";
|
|
8233
8237
|
};
|
|
8234
8238
|
};
|
|
8235
8239
|
readonly data: {
|
|
@@ -8248,112 +8252,155 @@ declare const resources: {
|
|
|
8248
8252
|
};
|
|
8249
8253
|
ru: {
|
|
8250
8254
|
translation: {
|
|
8251
|
-
readonly title: "
|
|
8252
|
-
readonly comingSoon: "
|
|
8255
|
+
readonly title: "Примерка";
|
|
8256
|
+
readonly comingSoon: "Примерка скоро появится.";
|
|
8253
8257
|
readonly close: "Закрыть";
|
|
8254
|
-
readonly
|
|
8258
|
+
readonly cancelPlacement: "Отменить";
|
|
8259
|
+
readonly deleteObject: "Убрать объект";
|
|
8260
|
+
readonly linkCopied: "Ссылка скопирована";
|
|
8261
|
+
readonly share: "Поделиться";
|
|
8262
|
+
readonly variant: "Вариант";
|
|
8263
|
+
readonly addObject: "Добавить объект";
|
|
8264
|
+
readonly preparingObject: "Подготавливаем объект… {{progress}}%";
|
|
8265
|
+
readonly loadingModel: "Загружаем… {{progress}}%";
|
|
8266
|
+
readonly scan: {
|
|
8267
|
+
readonly help: "Не находится? Посветите ярче или отойдите на шаг";
|
|
8268
|
+
};
|
|
8269
|
+
readonly intro: {
|
|
8270
|
+
readonly action: "Включить камеру";
|
|
8271
|
+
readonly body: "Включим камеру, и вы увидите его прямо в комнате.";
|
|
8272
|
+
readonly privacy: "Камера работает только во время примерки.";
|
|
8273
|
+
readonly starting: "Включаем…";
|
|
8274
|
+
readonly title: "Примерьте этот объект у себя";
|
|
8275
|
+
};
|
|
8255
8276
|
readonly android: {
|
|
8256
|
-
readonly description: "
|
|
8257
|
-
readonly title: "
|
|
8277
|
+
readonly description: "Поставьте объект у себя в комнате.";
|
|
8278
|
+
readonly title: "Примерка в комнате";
|
|
8258
8279
|
};
|
|
8259
8280
|
readonly all: {
|
|
8260
|
-
readonly
|
|
8281
|
+
readonly found: "Отлично, поверхность найдена";
|
|
8282
|
+
readonly anchorError: "Объект не встал на место. Поводите телефоном и попробуйте ещё раз.";
|
|
8283
|
+
readonly catalog: "Нажмите «плюс», чтобы добавить ещё";
|
|
8261
8284
|
readonly done: "Готово";
|
|
8262
|
-
readonly
|
|
8263
|
-
readonly
|
|
8264
|
-
readonly
|
|
8265
|
-
readonly
|
|
8266
|
-
readonly
|
|
8267
|
-
readonly
|
|
8268
|
-
readonly
|
|
8285
|
+
readonly finish: "Коснитесь мимо объекта, чтобы закончить";
|
|
8286
|
+
readonly gestures: "Тяните объект, чтобы подвинуть. Проведите рядом с ним, чтобы повернуть.";
|
|
8287
|
+
readonly move: "Тяните объект, чтобы подвинуть";
|
|
8288
|
+
readonly place: "Разместить здесь";
|
|
8289
|
+
readonly preview: "Наведите на любую поверхность";
|
|
8290
|
+
readonly relocalizing: "Покажите комнату ещё раз";
|
|
8291
|
+
readonly rotate: "Проведите рядом с объектом, чтобы повернуть";
|
|
8292
|
+
readonly scanMove: "Медленно поводите по комнате";
|
|
8293
|
+
readonly searching: "Наведите камеру на поверхность";
|
|
8294
|
+
readonly select: "Коснитесь объекта, чтобы выбрать";
|
|
8269
8295
|
};
|
|
8270
8296
|
readonly catalog: {
|
|
8271
8297
|
readonly selectVariant: "Выберите вариант";
|
|
8272
8298
|
readonly all: "Все";
|
|
8273
8299
|
readonly clear: "Очистить";
|
|
8274
|
-
readonly description: "
|
|
8275
|
-
readonly empty: "
|
|
8276
|
-
readonly loadingMore: "Загружаем
|
|
8277
|
-
readonly noResults: "
|
|
8278
|
-
readonly noResultsHint: "Попробуйте
|
|
8279
|
-
readonly open: "
|
|
8280
|
-
readonly placementFailed: "
|
|
8281
|
-
readonly placing: "
|
|
8282
|
-
readonly productDetails: "
|
|
8300
|
+
readonly description: "Выберите, что примерить.";
|
|
8301
|
+
readonly empty: "Здесь пока нечего примерить.";
|
|
8302
|
+
readonly loadingMore: "Загружаем ещё…";
|
|
8303
|
+
readonly noResults: "Ничего не нашли по запросу «{{search}}»";
|
|
8304
|
+
readonly noResultsHint: "Попробуйте другое слово или посмотрите все категории";
|
|
8305
|
+
readonly open: "Добавить ещё объект";
|
|
8306
|
+
readonly placementFailed: "Этот вариант не загрузился. Попробуйте ещё раз.";
|
|
8307
|
+
readonly placing: "Ставим…";
|
|
8308
|
+
readonly productDetails: "О товаре";
|
|
8283
8309
|
readonly searchPlaceholder: "Поиск";
|
|
8284
|
-
readonly showAllItems: "Показать все
|
|
8285
|
-
readonly title: "
|
|
8286
|
-
readonly tryInRoom: "
|
|
8310
|
+
readonly showAllItems: "Показать все";
|
|
8311
|
+
readonly title: "Что ещё примерить";
|
|
8312
|
+
readonly tryInRoom: "Примерить";
|
|
8287
8313
|
readonly unnamedProduct: "Товар без названия";
|
|
8288
|
-
readonly unnamedOwner: "Каталог
|
|
8314
|
+
readonly unnamedOwner: "Каталог";
|
|
8289
8315
|
readonly viewOnSite: "Открыть на сайте";
|
|
8290
8316
|
};
|
|
8291
8317
|
readonly floor: {
|
|
8292
|
-
readonly
|
|
8293
|
-
readonly
|
|
8318
|
+
readonly found: "Отлично, пол найден";
|
|
8319
|
+
readonly anchorError: "Объект не встал на место. Поводите телефоном и попробуйте ещё раз.";
|
|
8320
|
+
readonly catalog: "Нажмите «плюс», чтобы добавить ещё";
|
|
8294
8321
|
readonly done: "Готово";
|
|
8295
|
-
readonly
|
|
8296
|
-
readonly
|
|
8297
|
-
readonly
|
|
8298
|
-
readonly
|
|
8299
|
-
readonly
|
|
8300
|
-
readonly
|
|
8301
|
-
readonly
|
|
8322
|
+
readonly finish: "Коснитесь мимо объекта, чтобы закончить";
|
|
8323
|
+
readonly gestures: "Тяните объект, чтобы подвинуть. Проведите рядом с ним, чтобы повернуть.";
|
|
8324
|
+
readonly move: "Тяните объект, чтобы подвинуть";
|
|
8325
|
+
readonly place: "Поставить здесь";
|
|
8326
|
+
readonly preview: "Наведите, куда поставить";
|
|
8327
|
+
readonly relocalizing: "Покажите комнату ещё раз";
|
|
8328
|
+
readonly rotate: "Проведите рядом с объектом, чтобы повернуть";
|
|
8329
|
+
readonly scanMove: "Медленно поводите по полу";
|
|
8330
|
+
readonly searching: "Наведите камеру на пол";
|
|
8331
|
+
readonly select: "Коснитесь объекта, чтобы выбрать";
|
|
8302
8332
|
};
|
|
8303
8333
|
readonly ceiling: {
|
|
8304
|
-
readonly
|
|
8305
|
-
readonly
|
|
8334
|
+
readonly found: "Отлично, пол под объектом найден";
|
|
8335
|
+
readonly anchorError: "Объект не встал на место. Поводите телефоном и попробуйте ещё раз.";
|
|
8336
|
+
readonly calibrating: "Уточните высоту ползунком";
|
|
8337
|
+
readonly catalog: "Нажмите «плюс», чтобы добавить ещё";
|
|
8306
8338
|
readonly done: "Готово";
|
|
8307
|
-
readonly
|
|
8339
|
+
readonly finish: "Коснитесь мимо объекта, чтобы закончить";
|
|
8340
|
+
readonly floorReady: "Укажите место, над которым будет висеть объект";
|
|
8341
|
+
readonly gestures: "Тяните объект, чтобы подвинуть. Проведите рядом с ним, чтобы повернуть.";
|
|
8342
|
+
readonly move: "Тяните объект, чтобы подвинуть";
|
|
8343
|
+
readonly place: "Готово";
|
|
8344
|
+
readonly heightValue: "{{height}} м";
|
|
8308
8345
|
readonly measuredHeight: "Потолок {{height}} м";
|
|
8309
|
-
readonly measureHeight: "Проведите
|
|
8310
|
-
readonly preview: "
|
|
8311
|
-
readonly relocalizing: "
|
|
8312
|
-
readonly
|
|
8313
|
-
readonly
|
|
8314
|
-
readonly
|
|
8315
|
-
readonly
|
|
8316
|
-
readonly
|
|
8317
|
-
readonly
|
|
8346
|
+
readonly measureHeight: "Проведите вверх, чтобы задать высоту";
|
|
8347
|
+
readonly preview: "Высоту взяли из прошлого раза — проверьте её";
|
|
8348
|
+
readonly relocalizing: "Покажите комнату ещё раз";
|
|
8349
|
+
readonly rotate: "Проведите рядом с объектом, чтобы повернуть";
|
|
8350
|
+
readonly scanMove: "Медленно поводите по полу: от него отмерим высоту";
|
|
8351
|
+
readonly searching: "Наведите камеру на пол под местом, где повесите объект";
|
|
8352
|
+
readonly select: "Коснитесь объекта, чтобы выбрать";
|
|
8353
|
+
readonly setFloor: "Разместить здесь";
|
|
8354
|
+
readonly setHeight: "Задать высоту";
|
|
8318
8355
|
};
|
|
8319
8356
|
readonly wall: {
|
|
8320
|
-
readonly
|
|
8357
|
+
readonly found: "Отлично, стена найдена";
|
|
8358
|
+
readonly anchorError: "Объект не встал на место. Поводите телефоном и попробуйте ещё раз.";
|
|
8359
|
+
readonly catalog: "Нажмите «плюс», чтобы добавить ещё";
|
|
8321
8360
|
readonly done: "Готово";
|
|
8322
|
-
readonly
|
|
8323
|
-
readonly
|
|
8324
|
-
readonly
|
|
8325
|
-
readonly
|
|
8326
|
-
readonly
|
|
8327
|
-
readonly
|
|
8328
|
-
readonly
|
|
8329
|
-
readonly
|
|
8330
|
-
readonly
|
|
8361
|
+
readonly finish: "Коснитесь мимо объекта, чтобы закончить";
|
|
8362
|
+
readonly gestures: "Тяните объект, чтобы двигать по стене. Круг на полу — чтобы перенести по комнате. Проведите рядом, чтобы повернуть.";
|
|
8363
|
+
readonly move: "Тяните объект вдоль стены. Круг на полу перенесёт его по комнате";
|
|
8364
|
+
readonly place: "Повесить здесь";
|
|
8365
|
+
readonly preview: "Наведите на стену. Потяните, чтобы повернуть.";
|
|
8366
|
+
readonly relocalizing: "Покажите комнату ещё раз";
|
|
8367
|
+
readonly rotate: "Проведите рядом с объектом, чтобы повернуть";
|
|
8368
|
+
readonly scanMove: "Медленно поводите по стене";
|
|
8369
|
+
readonly searching: "Наведите камеру на стену";
|
|
8370
|
+
readonly select: "Коснитесь объекта, чтобы выбрать";
|
|
8371
|
+
readonly startError: "Примерка не открылась. Проверьте доступ к камере и попробуйте ещё раз.";
|
|
8372
|
+
readonly unsupported: "На этом телефоне примерка не работает.";
|
|
8331
8373
|
};
|
|
8332
8374
|
readonly accessError: {
|
|
8333
|
-
readonly 'not-found': "
|
|
8334
|
-
readonly unauthorized: "
|
|
8335
|
-
readonly unavailable: "
|
|
8375
|
+
readonly 'not-found': "Такого объекта нет";
|
|
8376
|
+
readonly unauthorized: "Здесь примерка не настроена";
|
|
8377
|
+
readonly unavailable: "Примерка временно недоступна";
|
|
8336
8378
|
};
|
|
8337
8379
|
readonly runtimeState: {
|
|
8338
8380
|
readonly cameraDenied: {
|
|
8339
|
-
readonly body: "Разрешите
|
|
8340
|
-
readonly
|
|
8381
|
+
readonly body: "Разрешите камеру в настройках браузера и откройте примерку заново.";
|
|
8382
|
+
readonly path: {
|
|
8383
|
+
readonly chrome: "Нажмите значок слева от адреса → «Разрешения» → «Камера»";
|
|
8384
|
+
readonly firefox: "Нажмите значок замка слева от адреса → «Камера»";
|
|
8385
|
+
readonly safari: "Настройки → Safari → «Камера» → «Разрешить»";
|
|
8386
|
+
};
|
|
8387
|
+
readonly title: "Камера выключена";
|
|
8341
8388
|
};
|
|
8342
8389
|
readonly error: {
|
|
8343
|
-
readonly body: "Закройте
|
|
8344
|
-
readonly title: "
|
|
8390
|
+
readonly body: "Закройте примерку и откройте её заново.";
|
|
8391
|
+
readonly title: "Примерка не открылась";
|
|
8345
8392
|
};
|
|
8346
8393
|
readonly rescan: {
|
|
8347
|
-
readonly body: "Наведите телефон на
|
|
8348
|
-
readonly title: "
|
|
8394
|
+
readonly body: "Наведите телефон на комнату — всё, что вы поставили, вернётся на место.";
|
|
8395
|
+
readonly title: "Покажите комнату ещё раз";
|
|
8349
8396
|
};
|
|
8350
8397
|
readonly unsupported: {
|
|
8351
|
-
readonly body: "
|
|
8352
|
-
readonly title: "
|
|
8398
|
+
readonly body: "Этот телефон или браузер её не поддерживает.";
|
|
8399
|
+
readonly title: "Здесь примерка не работает";
|
|
8353
8400
|
};
|
|
8354
8401
|
readonly webview: {
|
|
8355
|
-
readonly body: "Откройте эту страницу в Chrome или Safari
|
|
8356
|
-
readonly title: "Откройте
|
|
8402
|
+
readonly body: "Откройте эту страницу в Chrome или Safari: внутри приложения камера недоступна.";
|
|
8403
|
+
readonly title: "Откройте в браузере";
|
|
8357
8404
|
};
|
|
8358
8405
|
};
|
|
8359
8406
|
readonly data: {
|
|
@@ -8922,6 +8969,17 @@ declare const SubtractiveBlending: 3;
|
|
|
8922
8969
|
*/
|
|
8923
8970
|
export declare function supportsArAppClip(navigatorInfo?: ArNavigatorInfo | null): boolean;
|
|
8924
8971
|
|
|
8972
|
+
/**
|
|
8973
|
+
* Whether the browser runs a WebXR immersive AR session, in its own words.
|
|
8974
|
+
*
|
|
8975
|
+
* Asked of the browser rather than read off its user agent. A user agent names
|
|
8976
|
+
* the browser, not what it can do, and the in-app browsers that do run WebXR
|
|
8977
|
+
* name themselves after their app: picked by name, they were sent to SLAM, or
|
|
8978
|
+
* out of AR altogether. Never throws — a browser that cannot answer, such as
|
|
8979
|
+
* one outside a secure context, cannot run a session either.
|
|
8980
|
+
*/
|
|
8981
|
+
export declare function supportsImmersiveAr(xr?: ImmersiveArSystemLike | undefined): Promise<boolean>;
|
|
8982
|
+
|
|
8925
8983
|
export declare interface SurfaceHit {
|
|
8926
8984
|
kind: SurfaceKind;
|
|
8927
8985
|
nativeHit?: unknown;
|
|
@@ -8960,6 +9018,13 @@ export declare interface SurfaceTrackerSession<NativeSession = unknown, Frame =
|
|
|
8960
9018
|
createAnchor: (hit: SurfaceHit) => Promise<PlacementAnchor<Frame>>;
|
|
8961
9019
|
end: () => Promise<void>;
|
|
8962
9020
|
getCenterHit: (frame: Frame) => SurfaceHit | null;
|
|
9021
|
+
/**
|
|
9022
|
+
* Set by a runtime that detects no vertical planes and only guesses a wall
|
|
9023
|
+
* from the loose points it tracks. A plain painted wall gives it nothing to
|
|
9024
|
+
* guess from, so the wall mechanic assumes one in front of the camera once
|
|
9025
|
+
* the search has gone on too long (see `createVirtualWallHit`).
|
|
9026
|
+
*/
|
|
9027
|
+
readonly guessesWalls?: boolean;
|
|
8963
9028
|
isTracking: (frame: Frame) => boolean;
|
|
8964
9029
|
/**
|
|
8965
9030
|
* Tells the runtime which mechanic is being placed right now.
|