@react-three/drei 9.35.0 → 9.36.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 CHANGED
@@ -75,6 +75,7 @@ The `native` route of the library **does not** export `Html` or `Loader`. The de
75
75
  <li><a href="#useanimations">useAnimations</a></li>
76
76
  <li><a href="#marchingcubes">MarchingCubes</a></li>
77
77
  <li><a href="#decal">Decal</a></li>
78
+ <li><a href="#svg">Svg</a></li>
78
79
  </ul>
79
80
  <li><a href="#shaders">Shaders</a></li>
80
81
  <ul>
@@ -1166,6 +1167,18 @@ If declarative composition is not possible, use the `mesh` prop to define the su
1166
1167
  </Decal>
1167
1168
  ```
1168
1169
 
1170
+ #### Svg
1171
+
1172
+ [![](https://img.shields.io/badge/-storybook-%23ff69b4)](https://drei.pmnd.rs/?path=/story/abstractions-svg--svg-st)
1173
+
1174
+ Wrapper around the `three` [svg loader](https://threejs.org/examples/?q=sv#webgl_loader_svg) demo.
1175
+
1176
+ Accepts an SVG url or svg raw data.
1177
+
1178
+ ```js
1179
+ <Svg src={urlOrRawSvgString} />
1180
+ ```
1181
+
1169
1182
  # Shaders
1170
1183
 
1171
1184
  #### MeshReflectorMaterial
@@ -2399,6 +2412,12 @@ export type Props = JSX.IntrinsicElements['group'] & {
2399
2412
  left?: boolean
2400
2413
  front?: boolean
2401
2414
  back?: boolean
2415
+ /** Disable x-axis centering */
2416
+ disableX?: boolean
2417
+ /** Disable y-axis centering */
2418
+ disableY?: boolean
2419
+ /** Disable z-axis centering */
2420
+ disableZ?: boolean
2402
2421
  /** Precision, defaults to true, see https://threejs.org/docs/index.html?q=box3#api/en/math/Box3.setFromObject */
2403
2422
  precise?: boolean
2404
2423
  /** Callback, fires in the useLayoutEffect phase, after measurement */
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("three"),r=require("react");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var o=n(e),i=u(r);const c=i.forwardRef((function({children:e,left:r,right:n,top:u,bottom:c,front:a,back:l,onCentered:f,precise:d=!0,...s},p){const m=i.useRef(null),g=i.useRef(null),b=i.useRef(null);return i.useLayoutEffect((()=>{g.current.matrixWorld.identity();const e=(new t.Box3).setFromObject(b.current,d),o=new t.Vector3,i=new t.Sphere,s=e.max.x-e.min.x,p=e.max.y-e.min.y,h=e.max.z-e.min.z;e.getCenter(o),e.getBoundingSphere(i);const x=u?p/2:c?-p/2:0,y=r?-s/2:n?s/2:0,j=a?h/2:l?-h/2:0;g.current.position.set(-o.x+y,-o.y+x,-o.z+j),void 0!==f&&f({parent:m.current.parent,container:m.current,width:s,height:p,depth:h,boundingBox:e,boundingSphere:i,center:o,verticalAlignment:x,horizontalAlignment:y,depthAlignment:j})}),[e]),i.useImperativeHandle(p,(()=>m.current),[]),i.createElement("group",o.default({ref:m},s),i.createElement("group",{ref:g},i.createElement("group",{ref:b},e)))}));exports.Center=c;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("three"),r=require("react");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var o=n(e),i=u(r);const c=i.forwardRef((function({children:e,disableX:r,disableY:n,disableZ:u,left:c,right:a,top:l,bottom:f,front:d,back:s,onCentered:p,precise:b=!0,...m},g){const h=i.useRef(null),x=i.useRef(null),y=i.useRef(null);return i.useLayoutEffect((()=>{x.current.matrixWorld.identity();const e=(new t.Box3).setFromObject(y.current,b),o=new t.Vector3,i=new t.Sphere,m=e.max.x-e.min.x,g=e.max.y-e.min.y,j=e.max.z-e.min.z;e.getCenter(o),e.getBoundingSphere(i);const v=l?g/2:f?-g/2:0,O=c?-m/2:a?m/2:0,w=d?j/2:s?-j/2:0;x.current.position.set(r?0:-o.x+O,n?0:-o.y+v,u?0:-o.z+w),void 0!==p&&p({parent:h.current.parent,container:h.current,width:m,height:g,depth:j,boundingBox:e,boundingSphere:i,center:o,verticalAlignment:v,horizontalAlignment:O,depthAlignment:w})}),[e]),i.useImperativeHandle(g,(()=>h.current),[]),i.createElement("group",o.default({ref:h},m),i.createElement("group",{ref:x},i.createElement("group",{ref:y},e)))}));exports.Center=c;
package/core/Center.d.ts CHANGED
@@ -20,8 +20,11 @@ declare type CenterProps = JSX.IntrinsicElements['group'] & {
20
20
  left?: boolean;
21
21
  front?: boolean;
22
22
  back?: boolean;
23
+ disableX?: boolean;
24
+ disableY?: boolean;
25
+ disableZ?: boolean;
23
26
  precise?: boolean;
24
27
  onCentered?: (props: OnCenterCallbackProps) => void;
25
28
  };
26
- export declare const Center: React.ForwardRefExoticComponent<Pick<CenterProps, "visible" | "attach" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "isGroup" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "removeFromParent" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "left" | "right" | "bottom" | "top" | "front" | "back" | "onCentered" | "precise"> & React.RefAttributes<Group>>;
29
+ export declare const Center: React.ForwardRefExoticComponent<Pick<CenterProps, "visible" | "attach" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "isGroup" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "removeFromParent" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "left" | "right" | "bottom" | "top" | "disableX" | "disableY" | "disableZ" | "front" | "back" | "onCentered" | "precise"> & React.RefAttributes<Group>>;
27
30
  export {};
package/core/Center.js CHANGED
@@ -4,6 +4,9 @@ import * as React from 'react';
4
4
 
5
5
  const Center = /*#__PURE__*/React.forwardRef(function Center({
6
6
  children,
7
+ disableX,
8
+ disableY,
9
+ disableZ,
7
10
  left,
8
11
  right,
9
12
  top,
@@ -30,7 +33,7 @@ const Center = /*#__PURE__*/React.forwardRef(function Center({
30
33
  const vAlign = top ? height / 2 : bottom ? -height / 2 : 0;
31
34
  const hAlign = left ? -width / 2 : right ? width / 2 : 0;
32
35
  const dAlign = front ? depth / 2 : back ? -depth / 2 : 0;
33
- outer.current.position.set(-center.x + hAlign, -center.y + vAlign, -center.z + dAlign);
36
+ outer.current.position.set(disableX ? 0 : -center.x + hAlign, disableY ? 0 : -center.y + vAlign, disableZ ? 0 : -center.z + dAlign);
34
37
 
35
38
  if (typeof onCentered !== 'undefined') {
36
39
  onCentered({
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@react-three/fiber"),r=require("react"),a=require("three"),s=require("three-stdlib");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var i=l(e),u=o(r);const n=r.forwardRef((function({src:e,skipFill:l,skipStrokes:o,fillMaterial:n,strokeMaterial:c,fillMeshProps:f,strokeMeshProps:d,...p},m){const y=t.useLoader(s.SVGLoader,e.startsWith("<svg")?`data:image/svg+xml;utf8,${e}`:e),h=r.useMemo((()=>o?[]:y.paths.map((e=>{var t;return void 0===(null==(t=e.userData)?void 0:t.style.stroke)||"none"===e.userData.style.stroke?null:e.subPaths.map((t=>s.SVGLoader.pointsToStroke(t.getPoints(),e.userData.style)))}))),[y,o]);return r.useEffect((()=>()=>h.forEach((e=>e&&e.map((e=>e.dispose()))))),[h]),u.createElement("object3D",i.default({ref:m},p),u.createElement("object3D",{scale:[1,-1,1]},y.paths.map(((e,t)=>{var p,m;return u.createElement(r.Fragment,{key:t},!l&&void 0!==(null==(p=e.userData)?void 0:p.style.fill)&&"none"!==e.userData.style.fill&&s.SVGLoader.createShapes(e).map(((t,r)=>u.createElement("mesh",i.default({key:r},f),u.createElement("shapeGeometry",{args:[t]}),u.createElement("meshBasicMaterial",i.default({color:e.userData.style.fill,opacity:e.userData.style.fillOpacity,transparent:!0,side:a.DoubleSide,depthWrite:!1},n))))),!o&&void 0!==(null==(m=e.userData)?void 0:m.style.stroke)&&"none"!==e.userData.style.stroke&&e.subPaths.map(((r,s)=>u.createElement("mesh",i.default({key:s,geometry:h[t][s]},d),u.createElement("meshBasicMaterial",i.default({color:e.userData.style.stroke,opacity:e.userData.style.strokeOpacity,transparent:!0,side:a.DoubleSide,depthWrite:!1},c))))))}))))}));exports.Svg=n;
package/core/Svg.d.ts ADDED
@@ -0,0 +1,13 @@
1
+ import { MeshBasicMaterialProps, MeshProps, Object3DProps } from '@react-three/fiber';
2
+ import * as React from 'react';
3
+ import { Object3D } from 'three';
4
+ export interface SvgProps extends Omit<Object3DProps, 'ref'> {
5
+ src: string;
6
+ skipFill?: boolean;
7
+ skipStrokes?: boolean;
8
+ fillMaterial?: MeshBasicMaterialProps;
9
+ strokeMaterial?: MeshBasicMaterialProps;
10
+ fillMeshProps?: MeshProps;
11
+ strokeMeshProps?: MeshProps;
12
+ }
13
+ export declare const Svg: React.ForwardRefExoticComponent<SvgProps & React.RefAttributes<Object3D<import("three").Event>>>;
package/core/Svg.js ADDED
@@ -0,0 +1,59 @@
1
+ import _extends from '@babel/runtime/helpers/esm/extends';
2
+ import { useLoader } from '@react-three/fiber';
3
+ import * as React from 'react';
4
+ import { forwardRef, useMemo, useEffect, Fragment } from 'react';
5
+ import { DoubleSide } from 'three';
6
+ import { SVGLoader } from 'three-stdlib';
7
+
8
+ const Svg = /*#__PURE__*/forwardRef(function R3FSvg({
9
+ src,
10
+ skipFill,
11
+ skipStrokes,
12
+ fillMaterial,
13
+ strokeMaterial,
14
+ fillMeshProps,
15
+ strokeMeshProps,
16
+ ...props
17
+ }, ref) {
18
+ const svg = useLoader(SVGLoader, !src.startsWith('<svg') ? src : `data:image/svg+xml;utf8,${src}`);
19
+ const strokeGeometries = useMemo(() => skipStrokes ? [] : svg.paths.map(path => {
20
+ var _path$userData;
21
+
22
+ return ((_path$userData = path.userData) == null ? void 0 : _path$userData.style.stroke) === undefined || path.userData.style.stroke === 'none' ? null : path.subPaths.map(subPath => SVGLoader.pointsToStroke(subPath.getPoints(), path.userData.style));
23
+ }), [svg, skipStrokes]);
24
+ useEffect(() => {
25
+ return () => strokeGeometries.forEach(group => group && group.map(g => g.dispose()));
26
+ }, [strokeGeometries]);
27
+ return /*#__PURE__*/React.createElement("object3D", _extends({
28
+ ref: ref
29
+ }, props), /*#__PURE__*/React.createElement("object3D", {
30
+ scale: [1, -1, 1]
31
+ }, svg.paths.map((path, p) => {
32
+ var _path$userData2, _path$userData3;
33
+
34
+ return /*#__PURE__*/React.createElement(Fragment, {
35
+ key: p
36
+ }, !skipFill && ((_path$userData2 = path.userData) == null ? void 0 : _path$userData2.style.fill) !== undefined && path.userData.style.fill !== 'none' && SVGLoader.createShapes(path).map((shape, s) => /*#__PURE__*/React.createElement("mesh", _extends({
37
+ key: s
38
+ }, fillMeshProps), /*#__PURE__*/React.createElement("shapeGeometry", {
39
+ args: [shape]
40
+ }), /*#__PURE__*/React.createElement("meshBasicMaterial", _extends({
41
+ color: path.userData.style.fill,
42
+ opacity: path.userData.style.fillOpacity,
43
+ transparent: true,
44
+ side: DoubleSide,
45
+ depthWrite: false
46
+ }, fillMaterial)))), !skipStrokes && ((_path$userData3 = path.userData) == null ? void 0 : _path$userData3.style.stroke) !== undefined && path.userData.style.stroke !== 'none' && path.subPaths.map((_subPath, s) => /*#__PURE__*/React.createElement("mesh", _extends({
47
+ key: s,
48
+ geometry: strokeGeometries[p][s]
49
+ }, strokeMeshProps), /*#__PURE__*/React.createElement("meshBasicMaterial", _extends({
50
+ color: path.userData.style.stroke,
51
+ opacity: path.userData.style.strokeOpacity,
52
+ transparent: true,
53
+ side: DoubleSide,
54
+ depthWrite: false
55
+ }, strokeMaterial)))));
56
+ })));
57
+ });
58
+
59
+ export { Svg };
package/core/index.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./QuadraticBezierLine.cjs.js"),s=require("./CubicBezierLine.cjs.js"),t=require("./CatmullRomLine.cjs.js"),o=require("./Line.cjs.js"),i=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),a=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),c=require("./GradientTexture.cjs.js"),j=require("./Image.cjs.js"),p=require("./Edges.cjs.js"),x=require("./Trail.cjs.js"),l=require("./Sampler.cjs.js"),q=require("./ComputedAttribute.cjs.js"),d=require("./Clone.cjs.js"),m=require("./MarchingCubes.cjs.js"),C=require("./Decal.cjs.js"),h=require("./OrthographicCamera.cjs.js"),M=require("./PerspectiveCamera.cjs.js"),P=require("./CubeCamera.cjs.js"),S=require("./DeviceOrientationControls.cjs.js"),b=require("./FlyControls.cjs.js"),B=require("./MapControls.cjs.js"),f=require("./OrbitControls.cjs.js"),T=require("./TrackballControls.cjs.js"),g=require("./ArcballControls.cjs.js"),v=require("./TransformControls.cjs.js"),A=require("./PointerLockControls.cjs.js"),L=require("./FirstPersonControls.cjs.js"),k=require("./GizmoHelper.cjs.js"),D=require("./GizmoViewcube.cjs.js"),E=require("./GizmoViewport.cjs.js"),R=require("./useCubeTexture.cjs.js"),G=require("./useFBX.cjs.js"),w=require("./useGLTF.cjs.js"),z=require("./useKTX2.cjs.js"),F=require("./useProgress.cjs.js"),O=require("./useTexture.cjs.js"),I=require("./useVideoTexture.cjs.js"),V=require("./Stats.cjs.js"),y=require("./useDepthBuffer.cjs.js"),H=require("./useAspect.cjs.js"),Q=require("./useCamera.cjs.js"),X=require("./useDetectGPU.cjs.js"),K=require("./useHelper.cjs.js"),W=require("./useBVH.cjs.js"),N=require("./useContextBridge.cjs.js"),U=require("./useAnimations.cjs.js"),_=require("./useFBO.cjs.js"),J=require("./useIntersect.cjs.js"),Y=require("./useBoxProjectedEnv.cjs.js"),Z=require("./BBAnchor.cjs.js"),$=require("./CurveModifier.cjs.js"),ee=require("./MeshDistortMaterial.cjs.js"),re=require("./MeshWobbleMaterial.cjs.js"),se=require("./MeshReflectorMaterial.cjs.js"),te=require("./MeshRefractionMaterial.cjs.js"),oe=require("./PointMaterial.cjs.js"),ie=require("./shaderMaterial.cjs.js"),ue=require("./softShadows.cjs.js"),ae=require("./shapes.cjs.js"),ne=require("./RoundedBox.cjs.js"),ce=require("./ScreenQuad.cjs.js"),je=require("./Center.cjs.js"),pe=require("./Bounds.cjs.js"),xe=require("./CameraShake.cjs.js"),le=require("./Float.cjs.js"),qe=require("./Stage.cjs.js"),de=require("./Backdrop.cjs.js"),me=require("./Shadow.cjs.js"),Ce=require("./ContactShadows.cjs.js"),he=require("./AccumulativeShadows.cjs.js"),Me=require("./Reflector.cjs.js"),Pe=require("./SpotLight.cjs.js"),Se=require("./Environment.cjs.js"),be=require("./Lightformer.cjs.js"),Be=require("./Sky.cjs.js"),fe=require("./Stars.cjs.js"),Te=require("./Cloud.cjs.js"),ge=require("./Sparkles.cjs.js"),ve=require("./useMatcapTexture.cjs.js"),Ae=require("./useNormalTexture.cjs.js"),Le=require("./Points.cjs.js"),ke=require("./Instances.cjs.js"),De=require("./Segments.cjs.js"),Ee=require("./Detailed.cjs.js"),Re=require("./Preload.cjs.js"),Ge=require("./BakeShadows.cjs.js"),we=require("./meshBounds.cjs.js"),ze=require("./AdaptiveDpr.cjs.js"),Fe=require("./AdaptiveEvents.cjs.js"),Oe=require("./PerformanceMonitor.cjs.js"),Ie=require("./RenderTexture.cjs.js"),Ve=require("./Mask.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.QuadraticBezierLine=r.QuadraticBezierLine,exports.CubicBezierLine=s.CubicBezierLine,exports.CatmullRomLine=t.CatmullRomLine,exports.Line=o.Line,exports.PositionalAudio=i.PositionalAudio,exports.Text=u.Text,exports.Text3D=a.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=c.GradientTexture,exports.Image=j.Image,exports.Edges=p.Edges,exports.Trail=x.Trail,exports.useTrail=x.useTrail,exports.Sampler=l.Sampler,exports.useSurfaceSampler=l.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=d.Clone,exports.MarchingCube=m.MarchingCube,exports.MarchingCubes=m.MarchingCubes,exports.MarchingPlane=m.MarchingPlane,exports.Decal=C.Decal,exports.OrthographicCamera=h.OrthographicCamera,exports.PerspectiveCamera=M.PerspectiveCamera,exports.CubeCamera=P.CubeCamera,exports.DeviceOrientationControls=S.DeviceOrientationControls,exports.FlyControls=b.FlyControls,exports.MapControls=B.MapControls,exports.OrbitControls=f.OrbitControls,exports.TrackballControls=T.TrackballControls,exports.ArcballControls=g.ArcballControls,exports.TransformControls=v.TransformControls,exports.PointerLockControls=A.PointerLockControls,exports.FirstPersonControls=L.FirstPersonControls,exports.GizmoHelper=k.GizmoHelper,exports.useGizmoContext=k.useGizmoContext,exports.GizmoViewcube=D.GizmoViewcube,exports.GizmoViewport=E.GizmoViewport,exports.useCubeTexture=R.useCubeTexture,exports.useFBX=G.useFBX,exports.useGLTF=w.useGLTF,exports.useKTX2=z.useKTX2,exports.useProgress=F.useProgress,exports.IsObject=O.IsObject,exports.useTexture=O.useTexture,exports.useVideoTexture=I.useVideoTexture,exports.Stats=V.Stats,exports.useDepthBuffer=y.useDepthBuffer,exports.useAspect=H.useAspect,exports.useCamera=Q.useCamera,exports.useDetectGPU=X.useDetectGPU,exports.useHelper=K.useHelper,exports.useBVH=W.useBVH,exports.useContextBridge=N.useContextBridge,exports.useAnimations=U.useAnimations,exports.useFBO=_.useFBO,exports.useIntersect=J.useIntersect,exports.useBoxProjectedEnv=Y.useBoxProjectedEnv,exports.BBAnchor=Z.BBAnchor,exports.CurveModifier=$.CurveModifier,exports.MeshDistortMaterial=ee.MeshDistortMaterial,exports.MeshWobbleMaterial=re.MeshWobbleMaterial,exports.MeshReflectorMaterial=se.MeshReflectorMaterial,exports.MeshRefractionMaterial=te.MeshRefractionMaterial,exports.PointMaterial=oe.PointMaterial,exports.PointMaterialImpl=oe.PointMaterialImpl,exports.shaderMaterial=ie.shaderMaterial,exports.softShadows=ue.softShadows,exports.Box=ae.Box,exports.Capsule=ae.Capsule,exports.Circle=ae.Circle,exports.Cone=ae.Cone,exports.Cylinder=ae.Cylinder,exports.Dodecahedron=ae.Dodecahedron,exports.Extrude=ae.Extrude,exports.Icosahedron=ae.Icosahedron,exports.Lathe=ae.Lathe,exports.Octahedron=ae.Octahedron,exports.Plane=ae.Plane,exports.Polyhedron=ae.Polyhedron,exports.Ring=ae.Ring,exports.Sphere=ae.Sphere,exports.Tetrahedron=ae.Tetrahedron,exports.Torus=ae.Torus,exports.TorusKnot=ae.TorusKnot,exports.Tube=ae.Tube,exports.RoundedBox=ne.RoundedBox,exports.ScreenQuad=ce.ScreenQuad,exports.Center=je.Center,exports.Bounds=pe.Bounds,exports.useBounds=pe.useBounds,exports.CameraShake=xe.CameraShake,exports.Float=le.Float,exports.Stage=qe.Stage,exports.Backdrop=de.Backdrop,exports.Shadow=me.Shadow,exports.ContactShadows=Ce.ContactShadows,exports.AccumulativeShadows=he.AccumulativeShadows,exports.RandomizedLight=he.RandomizedLight,exports.accumulativeContext=he.accumulativeContext,exports.Reflector=Me.Reflector,exports.SpotLight=Pe.SpotLight,exports.Environment=Se.Environment,exports.EnvironmentCube=Se.EnvironmentCube,exports.EnvironmentMap=Se.EnvironmentMap,exports.EnvironmentPortal=Se.EnvironmentPortal,exports.useEnvironment=Se.useEnvironment,exports.Lightformer=be.Lightformer,exports.Sky=Be.Sky,exports.calcPosFromAngles=Be.calcPosFromAngles,exports.Stars=fe.Stars,exports.Cloud=Te.Cloud,exports.Sparkles=ge.Sparkles,exports.useMatcapTexture=ve.useMatcapTexture,exports.useNormalTexture=Ae.useNormalTexture,exports.Point=Le.Point,exports.Points=Le.Points,exports.PointsBuffer=Le.PointsBuffer,exports.PositionPoint=Le.PositionPoint,exports.Instance=ke.Instance,exports.Instances=ke.Instances,exports.Merged=ke.Merged,exports.Segment=De.Segment,exports.SegmentObject=De.SegmentObject,exports.Segments=De.Segments,exports.Detailed=Ee.Detailed,exports.Preload=Re.Preload,exports.BakeShadows=Ge.BakeShadows,exports.meshBounds=we.meshBounds,exports.AdaptiveDpr=ze.AdaptiveDpr,exports.AdaptiveEvents=Fe.AdaptiveEvents,exports.PerformanceMonitor=Oe.PerformanceMonitor,exports.usePerformanceMonitor=Oe.usePerformanceMonitor,exports.RenderTexture=Ie.RenderTexture,exports.Mask=Ve.Mask,exports.useMask=Ve.useMask;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./QuadraticBezierLine.cjs.js"),s=require("./CubicBezierLine.cjs.js"),t=require("./CatmullRomLine.cjs.js"),o=require("./Line.cjs.js"),i=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),a=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),c=require("./GradientTexture.cjs.js"),j=require("./Image.cjs.js"),p=require("./Edges.cjs.js"),x=require("./Trail.cjs.js"),l=require("./Sampler.cjs.js"),q=require("./ComputedAttribute.cjs.js"),d=require("./Clone.cjs.js"),m=require("./MarchingCubes.cjs.js"),C=require("./Decal.cjs.js"),h=require("./Svg.cjs.js"),M=require("./OrthographicCamera.cjs.js"),S=require("./PerspectiveCamera.cjs.js"),P=require("./CubeCamera.cjs.js"),b=require("./DeviceOrientationControls.cjs.js"),B=require("./FlyControls.cjs.js"),f=require("./MapControls.cjs.js"),g=require("./OrbitControls.cjs.js"),T=require("./TrackballControls.cjs.js"),v=require("./ArcballControls.cjs.js"),A=require("./TransformControls.cjs.js"),L=require("./PointerLockControls.cjs.js"),k=require("./FirstPersonControls.cjs.js"),D=require("./GizmoHelper.cjs.js"),E=require("./GizmoViewcube.cjs.js"),R=require("./GizmoViewport.cjs.js"),G=require("./useCubeTexture.cjs.js"),w=require("./useFBX.cjs.js"),z=require("./useGLTF.cjs.js"),F=require("./useKTX2.cjs.js"),O=require("./useProgress.cjs.js"),I=require("./useTexture.cjs.js"),V=require("./useVideoTexture.cjs.js"),y=require("./Stats.cjs.js"),H=require("./useDepthBuffer.cjs.js"),Q=require("./useAspect.cjs.js"),X=require("./useCamera.cjs.js"),K=require("./useDetectGPU.cjs.js"),W=require("./useHelper.cjs.js"),N=require("./useBVH.cjs.js"),U=require("./useContextBridge.cjs.js"),_=require("./useAnimations.cjs.js"),J=require("./useFBO.cjs.js"),Y=require("./useIntersect.cjs.js"),Z=require("./useBoxProjectedEnv.cjs.js"),$=require("./BBAnchor.cjs.js"),ee=require("./CurveModifier.cjs.js"),re=require("./MeshDistortMaterial.cjs.js"),se=require("./MeshWobbleMaterial.cjs.js"),te=require("./MeshReflectorMaterial.cjs.js"),oe=require("./MeshRefractionMaterial.cjs.js"),ie=require("./PointMaterial.cjs.js"),ue=require("./shaderMaterial.cjs.js"),ae=require("./softShadows.cjs.js"),ne=require("./shapes.cjs.js"),ce=require("./RoundedBox.cjs.js"),je=require("./ScreenQuad.cjs.js"),pe=require("./Center.cjs.js"),xe=require("./Bounds.cjs.js"),le=require("./CameraShake.cjs.js"),qe=require("./Float.cjs.js"),de=require("./Stage.cjs.js"),me=require("./Backdrop.cjs.js"),Ce=require("./Shadow.cjs.js"),he=require("./ContactShadows.cjs.js"),Me=require("./AccumulativeShadows.cjs.js"),Se=require("./Reflector.cjs.js"),Pe=require("./SpotLight.cjs.js"),be=require("./Environment.cjs.js"),Be=require("./Lightformer.cjs.js"),fe=require("./Sky.cjs.js"),ge=require("./Stars.cjs.js"),Te=require("./Cloud.cjs.js"),ve=require("./Sparkles.cjs.js"),Ae=require("./useMatcapTexture.cjs.js"),Le=require("./useNormalTexture.cjs.js"),ke=require("./Points.cjs.js"),De=require("./Instances.cjs.js"),Ee=require("./Segments.cjs.js"),Re=require("./Detailed.cjs.js"),Ge=require("./Preload.cjs.js"),we=require("./BakeShadows.cjs.js"),ze=require("./meshBounds.cjs.js"),Fe=require("./AdaptiveDpr.cjs.js"),Oe=require("./AdaptiveEvents.cjs.js"),Ie=require("./PerformanceMonitor.cjs.js"),Ve=require("./RenderTexture.cjs.js"),ye=require("./Mask.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.QuadraticBezierLine=r.QuadraticBezierLine,exports.CubicBezierLine=s.CubicBezierLine,exports.CatmullRomLine=t.CatmullRomLine,exports.Line=o.Line,exports.PositionalAudio=i.PositionalAudio,exports.Text=u.Text,exports.Text3D=a.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=c.GradientTexture,exports.Image=j.Image,exports.Edges=p.Edges,exports.Trail=x.Trail,exports.useTrail=x.useTrail,exports.Sampler=l.Sampler,exports.useSurfaceSampler=l.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=d.Clone,exports.MarchingCube=m.MarchingCube,exports.MarchingCubes=m.MarchingCubes,exports.MarchingPlane=m.MarchingPlane,exports.Decal=C.Decal,exports.Svg=h.Svg,exports.OrthographicCamera=M.OrthographicCamera,exports.PerspectiveCamera=S.PerspectiveCamera,exports.CubeCamera=P.CubeCamera,exports.DeviceOrientationControls=b.DeviceOrientationControls,exports.FlyControls=B.FlyControls,exports.MapControls=f.MapControls,exports.OrbitControls=g.OrbitControls,exports.TrackballControls=T.TrackballControls,exports.ArcballControls=v.ArcballControls,exports.TransformControls=A.TransformControls,exports.PointerLockControls=L.PointerLockControls,exports.FirstPersonControls=k.FirstPersonControls,exports.GizmoHelper=D.GizmoHelper,exports.useGizmoContext=D.useGizmoContext,exports.GizmoViewcube=E.GizmoViewcube,exports.GizmoViewport=R.GizmoViewport,exports.useCubeTexture=G.useCubeTexture,exports.useFBX=w.useFBX,exports.useGLTF=z.useGLTF,exports.useKTX2=F.useKTX2,exports.useProgress=O.useProgress,exports.IsObject=I.IsObject,exports.useTexture=I.useTexture,exports.useVideoTexture=V.useVideoTexture,exports.Stats=y.Stats,exports.useDepthBuffer=H.useDepthBuffer,exports.useAspect=Q.useAspect,exports.useCamera=X.useCamera,exports.useDetectGPU=K.useDetectGPU,exports.useHelper=W.useHelper,exports.useBVH=N.useBVH,exports.useContextBridge=U.useContextBridge,exports.useAnimations=_.useAnimations,exports.useFBO=J.useFBO,exports.useIntersect=Y.useIntersect,exports.useBoxProjectedEnv=Z.useBoxProjectedEnv,exports.BBAnchor=$.BBAnchor,exports.CurveModifier=ee.CurveModifier,exports.MeshDistortMaterial=re.MeshDistortMaterial,exports.MeshWobbleMaterial=se.MeshWobbleMaterial,exports.MeshReflectorMaterial=te.MeshReflectorMaterial,exports.MeshRefractionMaterial=oe.MeshRefractionMaterial,exports.PointMaterial=ie.PointMaterial,exports.PointMaterialImpl=ie.PointMaterialImpl,exports.shaderMaterial=ue.shaderMaterial,exports.softShadows=ae.softShadows,exports.Box=ne.Box,exports.Capsule=ne.Capsule,exports.Circle=ne.Circle,exports.Cone=ne.Cone,exports.Cylinder=ne.Cylinder,exports.Dodecahedron=ne.Dodecahedron,exports.Extrude=ne.Extrude,exports.Icosahedron=ne.Icosahedron,exports.Lathe=ne.Lathe,exports.Octahedron=ne.Octahedron,exports.Plane=ne.Plane,exports.Polyhedron=ne.Polyhedron,exports.Ring=ne.Ring,exports.Sphere=ne.Sphere,exports.Tetrahedron=ne.Tetrahedron,exports.Torus=ne.Torus,exports.TorusKnot=ne.TorusKnot,exports.Tube=ne.Tube,exports.RoundedBox=ce.RoundedBox,exports.ScreenQuad=je.ScreenQuad,exports.Center=pe.Center,exports.Bounds=xe.Bounds,exports.useBounds=xe.useBounds,exports.CameraShake=le.CameraShake,exports.Float=qe.Float,exports.Stage=de.Stage,exports.Backdrop=me.Backdrop,exports.Shadow=Ce.Shadow,exports.ContactShadows=he.ContactShadows,exports.AccumulativeShadows=Me.AccumulativeShadows,exports.RandomizedLight=Me.RandomizedLight,exports.accumulativeContext=Me.accumulativeContext,exports.Reflector=Se.Reflector,exports.SpotLight=Pe.SpotLight,exports.Environment=be.Environment,exports.EnvironmentCube=be.EnvironmentCube,exports.EnvironmentMap=be.EnvironmentMap,exports.EnvironmentPortal=be.EnvironmentPortal,exports.useEnvironment=be.useEnvironment,exports.Lightformer=Be.Lightformer,exports.Sky=fe.Sky,exports.calcPosFromAngles=fe.calcPosFromAngles,exports.Stars=ge.Stars,exports.Cloud=Te.Cloud,exports.Sparkles=ve.Sparkles,exports.useMatcapTexture=Ae.useMatcapTexture,exports.useNormalTexture=Le.useNormalTexture,exports.Point=ke.Point,exports.Points=ke.Points,exports.PointsBuffer=ke.PointsBuffer,exports.PositionPoint=ke.PositionPoint,exports.Instance=De.Instance,exports.Instances=De.Instances,exports.Merged=De.Merged,exports.Segment=Ee.Segment,exports.SegmentObject=Ee.SegmentObject,exports.Segments=Ee.Segments,exports.Detailed=Re.Detailed,exports.Preload=Ge.Preload,exports.BakeShadows=we.BakeShadows,exports.meshBounds=ze.meshBounds,exports.AdaptiveDpr=Fe.AdaptiveDpr,exports.AdaptiveEvents=Oe.AdaptiveEvents,exports.PerformanceMonitor=Ie.PerformanceMonitor,exports.usePerformanceMonitor=Ie.usePerformanceMonitor,exports.RenderTexture=Ve.RenderTexture,exports.Mask=ye.Mask,exports.useMask=ye.useMask;
package/core/index.d.ts CHANGED
@@ -16,6 +16,7 @@ export * from './ComputedAttribute';
16
16
  export * from './Clone';
17
17
  export * from './MarchingCubes';
18
18
  export * from './Decal';
19
+ export * from './Svg';
19
20
  export * from './OrthographicCamera';
20
21
  export * from './PerspectiveCamera';
21
22
  export * from './CubeCamera';
package/core/index.js CHANGED
@@ -16,6 +16,7 @@ export { ComputedAttribute } from './ComputedAttribute.js';
16
16
  export { Clone } from './Clone.js';
17
17
  export { MarchingCube, MarchingCubes, MarchingPlane } from './MarchingCubes.js';
18
18
  export { Decal } from './Decal.js';
19
+ export { Svg } from './Svg.js';
19
20
  export { OrthographicCamera } from './OrthographicCamera.js';
20
21
  export { PerspectiveCamera } from './PerspectiveCamera.js';
21
22
  export { CubeCamera } from './CubeCamera.js';