@liveroom-tech/react-immersive 5.0.2 → 5.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +580 -38
- package/dist/{ModelViewer-DOexHkJC.d.ts → ModelViewer-Bj-KjiDL.d.mts} +91 -42
- package/dist/{ModelViewer-CbbJT85n.d.mts → ModelViewer-BkQ73y6N.d.ts} +91 -42
- package/dist/binding-builder.css +1 -1
- package/dist/binding-builder.js +13 -12
- package/dist/binding-builder.mjs +1 -1
- package/dist/chunk-32WCLPTZ.mjs +1 -0
- package/dist/chunk-CSGNL4XU.mjs +3 -0
- package/dist/chunk-F2ILTIPG.mjs +28 -0
- package/dist/chunk-V6GALFL5.mjs +1 -0
- package/dist/chunk-WN6GMMHF.mjs +1 -0
- package/dist/hosted.css +1 -1
- package/dist/hosted.d.mts +3 -3
- package/dist/hosted.d.ts +3 -3
- package/dist/hosted.js +12 -11
- package/dist/hosted.mjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.mts +54 -10
- package/dist/index.d.ts +54 -10
- package/dist/index.js +11 -10
- package/dist/index.mjs +1 -1
- package/dist/{modelInfo-CEmmvVCH.d.mts → modelInfo-DnkmTGMd.d.mts} +6 -0
- package/dist/{modelInfo-CEmmvVCH.d.ts → modelInfo-DnkmTGMd.d.ts} +6 -0
- package/dist/{objectCatalog-5W8n5xNQ.d.ts → objectCatalog-BIeXURoq.d.mts} +276 -5
- package/dist/{objectCatalog-5W8n5xNQ.d.mts → objectCatalog-BIeXURoq.d.ts} +276 -5
- package/dist/simple-model-viewer.d.mts +2 -2
- package/dist/simple-model-viewer.d.ts +2 -2
- package/dist/simple-model-viewer.js +3 -3
- package/dist/simple-model-viewer.mjs +1 -1
- package/dist/utils.d.mts +2 -2
- package/dist/utils.d.ts +2 -2
- package/dist/utils.js +1 -1
- package/dist/utils.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-3GX7DOGS.mjs +0 -3
- package/dist/chunk-AH5NAZWX.mjs +0 -27
- package/dist/chunk-BGYK4Y2Y.mjs +0 -1
- package/dist/chunk-WFEYRUZC.mjs +0 -1
- package/dist/chunk-XTLSAYAQ.mjs +0 -1
|
@@ -104,6 +104,11 @@ type SceneModelConfig = {
|
|
|
104
104
|
shading: "lit" | "unlit" | "normals";
|
|
105
105
|
autoRotate?: boolean;
|
|
106
106
|
autoRotateSpeed?: number;
|
|
107
|
+
/**
|
|
108
|
+
* The glTF material variant (KHR_materials_variants) to show, by name, or
|
|
109
|
+
* null for the model's default materials.
|
|
110
|
+
*/
|
|
111
|
+
materialVariant?: string | null;
|
|
107
112
|
};
|
|
108
113
|
type SceneCameraConfig = {
|
|
109
114
|
fieldOfView: number;
|
|
@@ -149,7 +154,7 @@ type SceneGroundShadowConfig = {
|
|
|
149
154
|
height: number;
|
|
150
155
|
size: number;
|
|
151
156
|
};
|
|
152
|
-
declare const ANIMATION_LOOP_MODES: readonly ["repeat", "once"];
|
|
157
|
+
declare const ANIMATION_LOOP_MODES: readonly ["repeat", "once", "ping-pong"];
|
|
153
158
|
type AnimationLoopMode = (typeof ANIMATION_LOOP_MODES)[number];
|
|
154
159
|
type SceneAnimationClipConfig = {
|
|
155
160
|
sourceName: string;
|
|
@@ -384,6 +389,73 @@ type SceneCinematicConfig = {
|
|
|
384
389
|
loop: boolean;
|
|
385
390
|
autoPlay: boolean;
|
|
386
391
|
};
|
|
392
|
+
declare const SECTION_AXES: readonly ["x", "y", "z"];
|
|
393
|
+
type SceneSectionAxis = (typeof SECTION_AXES)[number];
|
|
394
|
+
type SceneSectionConfig = {
|
|
395
|
+
enabled: boolean;
|
|
396
|
+
/** The world axis the cut runs across; `"y"` gives a floor-plan cut. */
|
|
397
|
+
axis: SceneSectionAxis;
|
|
398
|
+
/**
|
|
399
|
+
* Where the cut is along the axis, as a share of the model's size: 0 at
|
|
400
|
+
* its minimum, 1 at its maximum.
|
|
401
|
+
*/
|
|
402
|
+
position: number;
|
|
403
|
+
/**
|
|
404
|
+
* Keep the part above the cut (the higher side along the axis) instead of
|
|
405
|
+
* the part below it.
|
|
406
|
+
*/
|
|
407
|
+
flip: boolean;
|
|
408
|
+
};
|
|
409
|
+
declare const DEFAULT_SECTION_CONFIG: SceneSectionConfig;
|
|
410
|
+
/**
|
|
411
|
+
* What an object's data must look like for a rule to apply to it. A list
|
|
412
|
+
* applies when every condition in it matches.
|
|
413
|
+
*/
|
|
414
|
+
type SceneStyleCondition = {
|
|
415
|
+
/** A key of `binding.metrics`. */
|
|
416
|
+
metric: string;
|
|
417
|
+
/** Applies when the value is greater than this. */
|
|
418
|
+
above?: number;
|
|
419
|
+
/** Applies when the value is less than this. */
|
|
420
|
+
below?: number;
|
|
421
|
+
} | {
|
|
422
|
+
status: ObjectBindingStatus | ObjectBindingStatus[];
|
|
423
|
+
} | {
|
|
424
|
+
/** A key of `binding.metadata`; dots reach into nested objects. */
|
|
425
|
+
metadata: string;
|
|
426
|
+
equals: string | number | boolean | null;
|
|
427
|
+
};
|
|
428
|
+
type SceneStyleColorScale = {
|
|
429
|
+
/** A key of `binding.metrics`. */
|
|
430
|
+
metric: string;
|
|
431
|
+
/**
|
|
432
|
+
* `[value, "#rrggbb"]` pairs. Values between two stops blend their colours;
|
|
433
|
+
* values outside the stops take the nearest one.
|
|
434
|
+
*/
|
|
435
|
+
stops: [number, string][];
|
|
436
|
+
/** The material colour it sets. Default `"baseColor"`. */
|
|
437
|
+
channel?: "baseColor" | "emissive";
|
|
438
|
+
};
|
|
439
|
+
type SceneStylePulse = {
|
|
440
|
+
/** The glow colour at the pulse's peak. Default `"#ff3b30"`. */
|
|
441
|
+
color?: string;
|
|
442
|
+
/** Pulses per second. Default `1`. */
|
|
443
|
+
speed?: number;
|
|
444
|
+
};
|
|
445
|
+
type SceneStyleRule = {
|
|
446
|
+
id: string;
|
|
447
|
+
label?: string;
|
|
448
|
+
/** The objects the rule considers; every bound object when left out. */
|
|
449
|
+
target?: ObjectBindingTarget;
|
|
450
|
+
/** When the rule applies; always, when left out. */
|
|
451
|
+
when?: SceneStyleCondition | SceneStyleCondition[];
|
|
452
|
+
/** Material overrides, over the object's own `style.material`. */
|
|
453
|
+
material?: ObjectBindingMaterial;
|
|
454
|
+
/** A colour taken from a metric's value. */
|
|
455
|
+
colorScale?: SceneStyleColorScale;
|
|
456
|
+
/** A glow that fades in and out, to draw attention. */
|
|
457
|
+
pulse?: boolean | SceneStylePulse;
|
|
458
|
+
};
|
|
387
459
|
type SceneConfig = {
|
|
388
460
|
model: SceneModelConfig;
|
|
389
461
|
camera: SceneCameraConfig;
|
|
@@ -397,6 +469,13 @@ type SceneConfig = {
|
|
|
397
469
|
animations: SceneAnimationConfig;
|
|
398
470
|
annotations: SceneAnnotationMarker[];
|
|
399
471
|
cinematic?: SceneCinematicConfig;
|
|
472
|
+
/**
|
|
473
|
+
* Data-driven looks for bound objects, applied in order, so a later rule
|
|
474
|
+
* wins over an earlier one where both set something.
|
|
475
|
+
*/
|
|
476
|
+
styleRules?: SceneStyleRule[];
|
|
477
|
+
/** A cut-away view across the model. Off when left out. */
|
|
478
|
+
section?: SceneSectionConfig;
|
|
400
479
|
};
|
|
401
480
|
declare const DEFAULT_SCENE_CONFIG: SceneConfig;
|
|
402
481
|
|
|
@@ -407,6 +486,146 @@ type SceneConfigPatch = DeepPartial<SceneConfig>;
|
|
|
407
486
|
*/
|
|
408
487
|
declare function patchSceneConfig(sceneConfig: SceneConfig, patch: SceneConfigPatch): SceneConfig;
|
|
409
488
|
|
|
489
|
+
type AnimationClipInfo = {
|
|
490
|
+
sourceName: string;
|
|
491
|
+
duration: number;
|
|
492
|
+
};
|
|
493
|
+
/** How `play` starts a clip. */
|
|
494
|
+
type AnimationPlayOptions = {
|
|
495
|
+
/**
|
|
496
|
+
* Keep the clips already playing, instead of stopping them, so several
|
|
497
|
+
* clips run at once (a left and a right door, say). Default `false`.
|
|
498
|
+
*/
|
|
499
|
+
alongside?: boolean;
|
|
500
|
+
/**
|
|
501
|
+
* Seconds to fade the clip in, and to fade out the clips it replaces, for a
|
|
502
|
+
* smooth blend between them. Default `0`.
|
|
503
|
+
*/
|
|
504
|
+
fade?: number;
|
|
505
|
+
/**
|
|
506
|
+
* Play backwards, from wherever the clip is, or from its end. Plays a
|
|
507
|
+
* "door opens" clip as the door closing. Default `false`.
|
|
508
|
+
*/
|
|
509
|
+
reverse?: boolean;
|
|
510
|
+
};
|
|
511
|
+
/**
|
|
512
|
+
* `"finished"`: a play-once clip that reached its end and holds its last pose
|
|
513
|
+
* until it's stopped or played again.
|
|
514
|
+
*/
|
|
515
|
+
type AnimationClipStatus = "playing" | "paused" | "finished";
|
|
516
|
+
/** One clip that is playing, paused, or holding its finished pose. */
|
|
517
|
+
type AnimationClipState = {
|
|
518
|
+
clip: string;
|
|
519
|
+
status: AnimationClipStatus;
|
|
520
|
+
/** Position in the clip, in seconds. */
|
|
521
|
+
time: number;
|
|
522
|
+
/** Length of the clip, in seconds. */
|
|
523
|
+
duration: number;
|
|
524
|
+
speed: number;
|
|
525
|
+
reverse: boolean;
|
|
526
|
+
};
|
|
527
|
+
type AnimationPlaybackState = {
|
|
528
|
+
/** The clip played most recently, while it's active. */
|
|
529
|
+
currentClip: string | null;
|
|
530
|
+
/** Whether any clip is playing. */
|
|
531
|
+
isPlaying: boolean;
|
|
532
|
+
speed: number;
|
|
533
|
+
time: number;
|
|
534
|
+
duration: number;
|
|
535
|
+
/** Every active clip, most recently played last. */
|
|
536
|
+
active: AnimationClipState[];
|
|
537
|
+
};
|
|
538
|
+
/**
|
|
539
|
+
* Leave out `clip` to act on every active clip; pass one to act on that clip
|
|
540
|
+
* alone.
|
|
541
|
+
*/
|
|
542
|
+
type AnimationControls = {
|
|
543
|
+
clips: string[];
|
|
544
|
+
clipDetails?: AnimationClipInfo[];
|
|
545
|
+
play: (clipName: string, options?: AnimationPlayOptions) => void;
|
|
546
|
+
pause: (clipName?: string) => void;
|
|
547
|
+
/** Stops and resets the pose. */
|
|
548
|
+
stop: (clipName?: string) => void;
|
|
549
|
+
/** Without a clip, also the speed of clips played later without their own. */
|
|
550
|
+
setSpeed: (speed: number, clipName?: string) => void;
|
|
551
|
+
seek?: (time: number, clipName?: string) => void;
|
|
552
|
+
getState?: () => AnimationPlaybackState;
|
|
553
|
+
subscribe?: (listener: (state: AnimationPlaybackState) => void) => () => void;
|
|
554
|
+
};
|
|
555
|
+
type ViewerAnimationsProps = {
|
|
556
|
+
clips: string[];
|
|
557
|
+
clipDetails: AnimationClipInfo[];
|
|
558
|
+
currentClip: string | null;
|
|
559
|
+
isPlaying: boolean;
|
|
560
|
+
speed: number;
|
|
561
|
+
time: number;
|
|
562
|
+
duration: number;
|
|
563
|
+
/** Every active clip, most recently played last. */
|
|
564
|
+
active: AnimationClipState[];
|
|
565
|
+
play: (clipName: string, options?: AnimationPlayOptions) => void;
|
|
566
|
+
pause: (clipName?: string) => void;
|
|
567
|
+
stop: (clipName?: string) => void;
|
|
568
|
+
setSpeed: (speed: number, clipName?: string) => void;
|
|
569
|
+
seek: (time: number, clipName?: string) => void;
|
|
570
|
+
handleAnimationsReady: (controls: AnimationControls) => void;
|
|
571
|
+
};
|
|
572
|
+
declare function useViewerAnimations(): ViewerAnimationsProps;
|
|
573
|
+
|
|
574
|
+
/** A glow cycling on one object, from its style rules. */
|
|
575
|
+
type StyledObjectPulse = {
|
|
576
|
+
color: string;
|
|
577
|
+
/** Pulses per second. */
|
|
578
|
+
speed: number;
|
|
579
|
+
};
|
|
580
|
+
type StyledObjectBindings = {
|
|
581
|
+
/**
|
|
582
|
+
* The bindings as the rules style them. A binding no rule changed is the
|
|
583
|
+
* same object as the one passed in.
|
|
584
|
+
*/
|
|
585
|
+
bindings: Record<string, ObjectBinding>;
|
|
586
|
+
/** Pulsing objects, by binding key. */
|
|
587
|
+
pulses: Record<string, StyledObjectPulse>;
|
|
588
|
+
/** The binding a styled one came from (itself when no rule changed it). */
|
|
589
|
+
sourceOf: (binding: ObjectBinding) => ObjectBinding;
|
|
590
|
+
};
|
|
591
|
+
/**
|
|
592
|
+
* The colour a colour scale gives a value: a blend of the two stops around it,
|
|
593
|
+
* or the nearest stop outside them. Null when there's no usable stop.
|
|
594
|
+
*/
|
|
595
|
+
declare function colorScaleValue(stops: SceneStyleColorScale["stops"], value: number): string | null;
|
|
596
|
+
/**
|
|
597
|
+
* Styles bindings with scene style rules, for rendering. Rules apply in order
|
|
598
|
+
* over each object's own `style.material`, so a later rule wins where two set
|
|
599
|
+
* the same thing. The bindings passed in are never changed.
|
|
600
|
+
*/
|
|
601
|
+
declare function applyStyleRules(bindings: Record<string, ObjectBinding>, rules: readonly SceneStyleRule[] | undefined): StyledObjectBindings;
|
|
602
|
+
|
|
603
|
+
/**
|
|
604
|
+
* Objects to focus on. Everything else is ghosted (drawn faintly) or hidden
|
|
605
|
+
* until the isolation is cleared, without changing any binding.
|
|
606
|
+
*/
|
|
607
|
+
type ViewerIsolation = {
|
|
608
|
+
/** The objects that stay: an id, a list of ids, `{ group }`, `{ tag }`, or `{ type }`. */
|
|
609
|
+
target: ObjectBindingTarget;
|
|
610
|
+
/** What happens to everything else. Default `"ghost"`. */
|
|
611
|
+
mode?: "ghost" | "hide";
|
|
612
|
+
/** How visible ghosted objects are, 0–1. Default `0.12`. */
|
|
613
|
+
ghostOpacity?: number;
|
|
614
|
+
};
|
|
615
|
+
type IsolatedObjectBindings = StyledObjectBindings & {
|
|
616
|
+
/** Binding keys that are ghosted or hidden. Pointer picking ignores them. */
|
|
617
|
+
setAside: Set<string>;
|
|
618
|
+
};
|
|
619
|
+
/** The binding keys an isolation keeps; empty when it keeps nothing. */
|
|
620
|
+
declare function isolatedBindingKeys(bindings: Record<string, ObjectBinding>, isolation: ViewerIsolation | null | undefined): Set<string>;
|
|
621
|
+
/**
|
|
622
|
+
* Ghosts or hides every object an isolation doesn't keep, for rendering. The
|
|
623
|
+
* bindings passed in are never changed. An isolation that keeps nothing (a
|
|
624
|
+
* target matching no object) changes nothing either, rather than fading out
|
|
625
|
+
* the whole model.
|
|
626
|
+
*/
|
|
627
|
+
declare function applyIsolation(styled: StyledObjectBindings, isolation: ViewerIsolation | null | undefined): IsolatedObjectBindings;
|
|
628
|
+
|
|
410
629
|
type ObjectBindingsActionEffect = {
|
|
411
630
|
target: ObjectBindingTarget;
|
|
412
631
|
objectBindings: ObjectBindingPatch;
|
|
@@ -437,24 +656,36 @@ type CameraAction = {
|
|
|
437
656
|
type CameraActionEffect = {
|
|
438
657
|
camera: CameraAction;
|
|
439
658
|
};
|
|
440
|
-
|
|
659
|
+
/**
|
|
660
|
+
* `play` replaces the clips already playing unless `alongside` is set. The
|
|
661
|
+
* others act on `clip`, or on every active clip when it's left out.
|
|
662
|
+
*/
|
|
663
|
+
type AnimationAction = ({
|
|
441
664
|
type: "play";
|
|
442
665
|
clip: string;
|
|
443
|
-
} | {
|
|
666
|
+
} & AnimationPlayOptions) | {
|
|
444
667
|
type: "pause";
|
|
668
|
+
clip?: string;
|
|
445
669
|
} | {
|
|
446
670
|
type: "stop";
|
|
671
|
+
clip?: string;
|
|
447
672
|
} | {
|
|
448
673
|
type: "set-speed";
|
|
449
674
|
speed: number;
|
|
675
|
+
clip?: string;
|
|
450
676
|
} | {
|
|
451
677
|
type: "seek";
|
|
452
678
|
time: number;
|
|
679
|
+
clip?: string;
|
|
453
680
|
};
|
|
454
681
|
type AnimationActionEffect = {
|
|
455
682
|
animation: AnimationAction;
|
|
456
683
|
};
|
|
457
|
-
|
|
684
|
+
/** Isolates objects, or with `null` shows everything again. */
|
|
685
|
+
type IsolationActionEffect = {
|
|
686
|
+
isolation: ViewerIsolation | null;
|
|
687
|
+
};
|
|
688
|
+
type ObjectActionEffect = IsolationActionEffect | ObjectBindingsActionEffect | SceneConfigActionEffect | VisibilityActionEffect | CameraActionEffect | AnimationActionEffect;
|
|
458
689
|
|
|
459
690
|
type ObjectBindingAction = {
|
|
460
691
|
id: "change-color" | "apply-texture" | "toggle-visibility" | string;
|
|
@@ -549,6 +780,33 @@ type ObjectBindingCameraState = {
|
|
|
549
780
|
fov?: number;
|
|
550
781
|
zoom?: number;
|
|
551
782
|
};
|
|
783
|
+
/**
|
|
784
|
+
* An image or a line of text printed onto the object's surface: a logo, a
|
|
785
|
+
* label, a personalisation.
|
|
786
|
+
*/
|
|
787
|
+
type ObjectBindingDecal = {
|
|
788
|
+
id: string;
|
|
789
|
+
/** The image to show: a URL or public path. */
|
|
790
|
+
image?: string;
|
|
791
|
+
/** Text to show, when there's no image. */
|
|
792
|
+
text?: string;
|
|
793
|
+
/** Text colour. Default `"#ffffff"`. */
|
|
794
|
+
color?: string;
|
|
795
|
+
/** CSS font family for the text. Default `"sans-serif"`. */
|
|
796
|
+
fontFamily?: string;
|
|
797
|
+
/** Default `"bold"`. */
|
|
798
|
+
fontWeight?: "normal" | "bold";
|
|
799
|
+
/** Where it sits on the object, in the object's own (local) space. */
|
|
800
|
+
position: [number, number, number];
|
|
801
|
+
/** The way the surface faces there, in the object's own space. */
|
|
802
|
+
normal: [number, number, number];
|
|
803
|
+
/** Width, in model units; the height follows the image or text's shape. */
|
|
804
|
+
size: number;
|
|
805
|
+
/** A turn around the surface normal, in radians. Default `0`. */
|
|
806
|
+
rotation?: number;
|
|
807
|
+
/** 0–1. Default `1`. */
|
|
808
|
+
opacity?: number;
|
|
809
|
+
};
|
|
552
810
|
type ObjectBindingStyle = {
|
|
553
811
|
material?: ObjectBindingMaterial;
|
|
554
812
|
};
|
|
@@ -566,6 +824,8 @@ type ObjectBinding = {
|
|
|
566
824
|
hoverable?: boolean;
|
|
567
825
|
transform?: ObjectBindingTransform;
|
|
568
826
|
style?: ObjectBindingStyle;
|
|
827
|
+
/** Images and text printed on the object's surface. */
|
|
828
|
+
decals?: ObjectBindingDecal[];
|
|
569
829
|
actions?: ObjectBindingAction[];
|
|
570
830
|
metrics?: Record<string, number>;
|
|
571
831
|
metadata?: Record<string, unknown>;
|
|
@@ -578,6 +838,12 @@ type ObjectActionEvent = {
|
|
|
578
838
|
screenX?: number;
|
|
579
839
|
screenY?: number;
|
|
580
840
|
};
|
|
841
|
+
/** A point on an object's surface, in the object's own (local) space. */
|
|
842
|
+
type ObjectSurfacePoint = {
|
|
843
|
+
position: [number, number, number];
|
|
844
|
+
/** The way the surface faces at that point. */
|
|
845
|
+
normal: [number, number, number];
|
|
846
|
+
};
|
|
581
847
|
/** A double-click, right-click, or long-press on a model object. */
|
|
582
848
|
type ObjectPointerEvent = {
|
|
583
849
|
binding: ObjectBinding;
|
|
@@ -586,6 +852,11 @@ type ObjectPointerEvent = {
|
|
|
586
852
|
clientY: number;
|
|
587
853
|
/** `"mouse"`, `"pen"`, or `"touch"`. */
|
|
588
854
|
pointerType: string;
|
|
855
|
+
/**
|
|
856
|
+
* Where on the object the pointer was, e.g. to place a decal there. Not
|
|
857
|
+
* reported for streamed (3D Tiles) models.
|
|
858
|
+
*/
|
|
859
|
+
surface?: ObjectSurfacePoint;
|
|
589
860
|
};
|
|
590
861
|
|
|
591
862
|
/** One bindable object in a model, as reported by `onObjectCatalog`. */
|
|
@@ -601,4 +872,4 @@ type ViewerObjectInfo = {
|
|
|
601
872
|
maximum: [number, number, number];
|
|
602
873
|
};
|
|
603
874
|
|
|
604
|
-
export { type
|
|
875
|
+
export { type SceneConfigPatch as $, type AnimationAction as A, type BindingEdit as B, type CameraAction as C, DEFAULT_SCENE_CONFIG as D, type EnvironmentPreset as E, type ObjectBindingTextureChannel as F, type GlitchModeName as G, type ObjectBindingTextureSlot as H, type IsolatedObjectBindings as I, type ObjectBindingTransform as J, type KernelSizeName as K, type ObjectBindingType as L, MATERIAL_BLENDING_MODES as M, type ObjectBindingsActionEffect as N, type ObjectActionEffect as O, type ObjectPointerEvent as P, type ObjectSurfacePoint as Q, type RampTypeName as R, type SceneAnimationClipConfig as S, type SceneAnimationConfig as T, type SceneAnnotationMarker as U, type SceneBackgroundConfig as V, type SceneCameraConfig as W, type SceneCinematicConfig as X, type SceneCinematicWaypoint as Y, type SceneConfig as Z, type SceneConfigActionEffect as _, type AnimationActionEffect as a, type SceneEnvironmentConfig as a0, type SceneGroundShadowConfig as a1, type SceneLight as a2, type SceneLightAttachment as a3, type SceneLightType as a4, type SceneLightingConfig as a5, type SceneModelConfig as a6, type SceneModelRenderer as a7, type ScenePostProcessingConfig as a8, type SceneSectionAxis as a9, type SceneSectionConfig as aa, type SceneShadowConfig as ab, type SceneStyleColorScale as ac, type SceneStyleCondition as ad, type SceneStylePulse as ae, type SceneStyleRule as af, type SceneWireframeConfig as ag, type StyledObjectBindings as ah, type StyledObjectPulse as ai, type ViewerAnimationsProps as aj, type ViewerCameraConfig as ak, type ViewerCameraState as al, type ViewerIsolation as am, type ViewerObjectInfo as an, type VisibilityActionEffect as ao, applyIsolation as ap, applyStyleRules as aq, colorScaleValue as ar, isolatedBindingKeys as as, material as at, patchBindings as au, patchSceneConfig as av, selectBindingKeys as aw, selectBindings as ax, useViewerAnimations as ay, type AnimationClipInfo as b, type AnimationClipState as c, type AnimationClipStatus as d, type AnimationControls as e, type AnimationLoopMode as f, type AnimationPlayOptions as g, type AnimationPlaybackState as h, type CameraActionEffect as i, DEFAULT_SECTION_CONFIG as j, type DeepPartial as k, type IsolationActionEffect as l, MATERIAL_SIDES as m, type ObjectActionEvent as n, type ObjectBinding as o, type ObjectBindingAction as p, type ObjectBindingCameraState as q, type ObjectBindingDecal as r, type ObjectBindingMaterial as s, type ObjectBindingMaterialBlendingMode as t, type ObjectBindingMaterialSide as u, type ObjectBindingPatch as v, type ObjectBindingSelector as w, type ObjectBindingStatus as x, type ObjectBindingStyle as y, type ObjectBindingTarget as z };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
|
-
import { M as ModelFormat, a as ViewerModelInfo } from './modelInfo-
|
|
3
|
-
export { V as ViewerModelBounds } from './modelInfo-
|
|
2
|
+
import { M as ModelFormat, a as ViewerModelInfo } from './modelInfo-DnkmTGMd.mjs';
|
|
3
|
+
export { V as ViewerModelBounds } from './modelInfo-DnkmTGMd.mjs';
|
|
4
4
|
import { PresetsType } from '@react-three/drei/helpers/environment-assets';
|
|
5
5
|
|
|
6
6
|
type SimpleModelViewerProps = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
|
-
import { M as ModelFormat, a as ViewerModelInfo } from './modelInfo-
|
|
3
|
-
export { V as ViewerModelBounds } from './modelInfo-
|
|
2
|
+
import { M as ModelFormat, a as ViewerModelInfo } from './modelInfo-DnkmTGMd.js';
|
|
3
|
+
export { V as ViewerModelBounds } from './modelInfo-DnkmTGMd.js';
|
|
4
4
|
import { PresetsType } from '@react-three/drei/helpers/environment-assets';
|
|
5
5
|
|
|
6
6
|
type SimpleModelViewerProps = {
|