@react-three/fiber 9.5.0 → 10.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/LICENSE +21 -0
  2. package/dist/index.cjs +15250 -0
  3. package/dist/index.d.cts +3526 -0
  4. package/dist/index.d.mts +3526 -0
  5. package/dist/index.d.ts +3526 -0
  6. package/dist/index.mjs +15163 -0
  7. package/dist/{events-358c3764.cjs.dev.js → legacy.cjs} +5751 -6761
  8. package/dist/legacy.d.cts +3525 -0
  9. package/dist/legacy.d.mts +3525 -0
  10. package/dist/legacy.d.ts +3525 -0
  11. package/dist/{events-5a94e5eb.esm.js → legacy.mjs} +5700 -6739
  12. package/dist/webgpu/index.cjs +15715 -0
  13. package/dist/webgpu/index.d.cts +3678 -0
  14. package/dist/webgpu/index.d.mts +3678 -0
  15. package/dist/webgpu/index.d.ts +3678 -0
  16. package/dist/webgpu/index.mjs +15616 -0
  17. package/package.json +43 -45
  18. package/readme.md +98 -33
  19. package/CHANGELOG.md +0 -1192
  20. package/dist/declarations/react-reconciler/index.d.ts +0 -1044
  21. package/dist/declarations/src/core/events.d.ts +0 -92
  22. package/dist/declarations/src/core/hooks.d.ts +0 -53
  23. package/dist/declarations/src/core/index.d.ts +0 -13
  24. package/dist/declarations/src/core/loop.d.ts +0 -31
  25. package/dist/declarations/src/core/reconciler.d.ts +0 -50
  26. package/dist/declarations/src/core/renderer.d.ts +0 -89
  27. package/dist/declarations/src/core/store.d.ts +0 -130
  28. package/dist/declarations/src/core/utils.d.ts +0 -262
  29. package/dist/declarations/src/index.d.ts +0 -6
  30. package/dist/declarations/src/native/Canvas.d.ts +0 -13
  31. package/dist/declarations/src/native/events.d.ts +0 -4
  32. package/dist/declarations/src/native.d.ts +0 -6
  33. package/dist/declarations/src/three-types.d.ts +0 -68
  34. package/dist/declarations/src/web/Canvas.d.ts +0 -23
  35. package/dist/declarations/src/web/events.d.ts +0 -4
  36. package/dist/events-238e0986.cjs.prod.js +0 -8048
  37. package/dist/react-three-fiber.cjs.d.ts +0 -2
  38. package/dist/react-three-fiber.cjs.dev.js +0 -220
  39. package/dist/react-three-fiber.cjs.js +0 -7
  40. package/dist/react-three-fiber.cjs.prod.js +0 -220
  41. package/dist/react-three-fiber.esm.js +0 -165
  42. package/native/dist/react-three-fiber-native.cjs.d.ts +0 -2
  43. package/native/dist/react-three-fiber-native.cjs.dev.js +0 -567
  44. package/native/dist/react-three-fiber-native.cjs.js +0 -7
  45. package/native/dist/react-three-fiber-native.cjs.prod.js +0 -567
  46. package/native/dist/react-three-fiber-native.esm.js +0 -515
  47. package/native/package.json +0 -5
@@ -1,2 +0,0 @@
1
- export * from "./declarations/src/index";
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3QtdGhyZWUtZmliZXIuY2pzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuL2RlY2xhcmF0aW9ucy9zcmMvaW5kZXguZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSJ9
@@ -1,220 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var events = require('./events-358c3764.cjs.dev.js');
6
- var React = require('react');
7
- var THREE = require('three');
8
- var useMeasure = require('react-use-measure');
9
- var itsFine = require('its-fine');
10
- var jsxRuntime = require('react/jsx-runtime');
11
- require('zustand/traditional');
12
- require('suspend-react');
13
- require('scheduler');
14
-
15
- function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
16
-
17
- function _interopNamespace(e) {
18
- if (e && e.__esModule) return e;
19
- var n = Object.create(null);
20
- if (e) {
21
- Object.keys(e).forEach(function (k) {
22
- if (k !== 'default') {
23
- var d = Object.getOwnPropertyDescriptor(e, k);
24
- Object.defineProperty(n, k, d.get ? d : {
25
- enumerable: true,
26
- get: function () { return e[k]; }
27
- });
28
- }
29
- });
30
- }
31
- n["default"] = e;
32
- return Object.freeze(n);
33
- }
34
-
35
- var React__namespace = /*#__PURE__*/_interopNamespace(React);
36
- var THREE__namespace = /*#__PURE__*/_interopNamespace(THREE);
37
- var useMeasure__default = /*#__PURE__*/_interopDefault(useMeasure);
38
-
39
- function CanvasImpl({
40
- ref,
41
- children,
42
- fallback,
43
- resize,
44
- style,
45
- gl,
46
- events: events$1 = events.createPointerEvents,
47
- eventSource,
48
- eventPrefix,
49
- shadows,
50
- linear,
51
- flat,
52
- legacy,
53
- orthographic,
54
- frameloop,
55
- dpr,
56
- performance,
57
- raycaster,
58
- camera,
59
- scene,
60
- onPointerMissed,
61
- onCreated,
62
- ...props
63
- }) {
64
- // Create a known catalogue of Threejs-native elements
65
- // This will include the entire THREE namespace by default, users can extend
66
- // their own elements by using the createRoot API instead
67
- React__namespace.useMemo(() => events.extend(THREE__namespace), []);
68
- const Bridge = events.useBridge();
69
- const [containerRef, containerRect] = useMeasure__default["default"]({
70
- scroll: true,
71
- debounce: {
72
- scroll: 50,
73
- resize: 0
74
- },
75
- ...resize
76
- });
77
- const canvasRef = React__namespace.useRef(null);
78
- const divRef = React__namespace.useRef(null);
79
- React__namespace.useImperativeHandle(ref, () => canvasRef.current);
80
- const handlePointerMissed = events.useMutableCallback(onPointerMissed);
81
- const [block, setBlock] = React__namespace.useState(false);
82
- const [error, setError] = React__namespace.useState(false);
83
-
84
- // Suspend this component if block is a promise (2nd run)
85
- if (block) throw block;
86
- // Throw exception outwards if anything within canvas throws
87
- if (error) throw error;
88
- const root = React__namespace.useRef(null);
89
- events.useIsomorphicLayoutEffect(() => {
90
- const canvas = canvasRef.current;
91
- if (containerRect.width > 0 && containerRect.height > 0 && canvas) {
92
- if (!root.current) root.current = events.createRoot(canvas);
93
- async function run() {
94
- await root.current.configure({
95
- gl,
96
- scene,
97
- events: events$1,
98
- shadows,
99
- linear,
100
- flat,
101
- legacy,
102
- orthographic,
103
- frameloop,
104
- dpr,
105
- performance,
106
- raycaster,
107
- camera,
108
- size: containerRect,
109
- // Pass mutable reference to onPointerMissed so it's free to update
110
- onPointerMissed: (...args) => handlePointerMissed.current == null ? void 0 : handlePointerMissed.current(...args),
111
- onCreated: state => {
112
- // Connect to event source
113
- state.events.connect == null ? void 0 : state.events.connect(eventSource ? events.isRef(eventSource) ? eventSource.current : eventSource : divRef.current);
114
- // Set up compute function
115
- if (eventPrefix) {
116
- state.setEvents({
117
- compute: (event, state) => {
118
- const x = event[eventPrefix + 'X'];
119
- const y = event[eventPrefix + 'Y'];
120
- state.pointer.set(x / state.size.width * 2 - 1, -(y / state.size.height) * 2 + 1);
121
- state.raycaster.setFromCamera(state.pointer, state.camera);
122
- }
123
- });
124
- }
125
- // Call onCreated callback
126
- onCreated == null ? void 0 : onCreated(state);
127
- }
128
- });
129
- root.current.render( /*#__PURE__*/jsxRuntime.jsx(Bridge, {
130
- children: /*#__PURE__*/jsxRuntime.jsx(events.ErrorBoundary, {
131
- set: setError,
132
- children: /*#__PURE__*/jsxRuntime.jsx(React__namespace.Suspense, {
133
- fallback: /*#__PURE__*/jsxRuntime.jsx(events.Block, {
134
- set: setBlock
135
- }),
136
- children: children != null ? children : null
137
- })
138
- })
139
- }));
140
- }
141
- run();
142
- }
143
- });
144
- React__namespace.useEffect(() => {
145
- const canvas = canvasRef.current;
146
- if (canvas) return () => events.unmountComponentAtNode(canvas);
147
- }, []);
148
-
149
- // When the event source is not this div, we need to set pointer-events to none
150
- // Or else the canvas will block events from reaching the event source
151
- const pointerEvents = eventSource ? 'none' : 'auto';
152
- return /*#__PURE__*/jsxRuntime.jsx("div", {
153
- ref: divRef,
154
- style: {
155
- position: 'relative',
156
- width: '100%',
157
- height: '100%',
158
- overflow: 'hidden',
159
- pointerEvents,
160
- ...style
161
- },
162
- ...props,
163
- children: /*#__PURE__*/jsxRuntime.jsx("div", {
164
- ref: containerRef,
165
- style: {
166
- width: '100%',
167
- height: '100%'
168
- },
169
- children: /*#__PURE__*/jsxRuntime.jsx("canvas", {
170
- ref: canvasRef,
171
- style: {
172
- display: 'block'
173
- },
174
- children: fallback
175
- })
176
- })
177
- });
178
- }
179
-
180
- /**
181
- * A DOM canvas which accepts threejs elements as children.
182
- * @see https://docs.pmnd.rs/react-three-fiber/api/canvas
183
- */
184
- function Canvas(props) {
185
- return /*#__PURE__*/jsxRuntime.jsx(itsFine.FiberProvider, {
186
- children: /*#__PURE__*/jsxRuntime.jsx(CanvasImpl, {
187
- ...props
188
- })
189
- });
190
- }
191
-
192
- exports.ReactThreeFiber = events.threeTypes;
193
- exports._roots = events._roots;
194
- exports.act = events.act;
195
- exports.addAfterEffect = events.addAfterEffect;
196
- exports.addEffect = events.addEffect;
197
- exports.addTail = events.addTail;
198
- exports.advance = events.advance;
199
- exports.applyProps = events.applyProps;
200
- exports.buildGraph = events.buildGraph;
201
- exports.context = events.context;
202
- exports.createEvents = events.createEvents;
203
- exports.createPortal = events.createPortal;
204
- exports.createRoot = events.createRoot;
205
- exports.dispose = events.dispose;
206
- exports.events = events.createPointerEvents;
207
- exports.extend = events.extend;
208
- exports.flushGlobalEffects = events.flushGlobalEffects;
209
- exports.flushSync = events.flushSync;
210
- exports.getRootState = events.getRootState;
211
- exports.invalidate = events.invalidate;
212
- exports.reconciler = events.reconciler;
213
- exports.unmountComponentAtNode = events.unmountComponentAtNode;
214
- exports.useFrame = events.useFrame;
215
- exports.useGraph = events.useGraph;
216
- exports.useInstanceHandle = events.useInstanceHandle;
217
- exports.useLoader = events.useLoader;
218
- exports.useStore = events.useStore;
219
- exports.useThree = events.useThree;
220
- exports.Canvas = Canvas;
@@ -1,7 +0,0 @@
1
- 'use strict';
2
-
3
- if (process.env.NODE_ENV === "production") {
4
- module.exports = require("./react-three-fiber.cjs.prod.js");
5
- } else {
6
- module.exports = require("./react-three-fiber.cjs.dev.js");
7
- }
@@ -1,220 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var events = require('./events-238e0986.cjs.prod.js');
6
- var React = require('react');
7
- var THREE = require('three');
8
- var useMeasure = require('react-use-measure');
9
- var itsFine = require('its-fine');
10
- var jsxRuntime = require('react/jsx-runtime');
11
- require('zustand/traditional');
12
- require('suspend-react');
13
- require('scheduler');
14
-
15
- function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
16
-
17
- function _interopNamespace(e) {
18
- if (e && e.__esModule) return e;
19
- var n = Object.create(null);
20
- if (e) {
21
- Object.keys(e).forEach(function (k) {
22
- if (k !== 'default') {
23
- var d = Object.getOwnPropertyDescriptor(e, k);
24
- Object.defineProperty(n, k, d.get ? d : {
25
- enumerable: true,
26
- get: function () { return e[k]; }
27
- });
28
- }
29
- });
30
- }
31
- n["default"] = e;
32
- return Object.freeze(n);
33
- }
34
-
35
- var React__namespace = /*#__PURE__*/_interopNamespace(React);
36
- var THREE__namespace = /*#__PURE__*/_interopNamespace(THREE);
37
- var useMeasure__default = /*#__PURE__*/_interopDefault(useMeasure);
38
-
39
- function CanvasImpl({
40
- ref,
41
- children,
42
- fallback,
43
- resize,
44
- style,
45
- gl,
46
- events: events$1 = events.createPointerEvents,
47
- eventSource,
48
- eventPrefix,
49
- shadows,
50
- linear,
51
- flat,
52
- legacy,
53
- orthographic,
54
- frameloop,
55
- dpr,
56
- performance,
57
- raycaster,
58
- camera,
59
- scene,
60
- onPointerMissed,
61
- onCreated,
62
- ...props
63
- }) {
64
- // Create a known catalogue of Threejs-native elements
65
- // This will include the entire THREE namespace by default, users can extend
66
- // their own elements by using the createRoot API instead
67
- React__namespace.useMemo(() => events.extend(THREE__namespace), []);
68
- const Bridge = events.useBridge();
69
- const [containerRef, containerRect] = useMeasure__default["default"]({
70
- scroll: true,
71
- debounce: {
72
- scroll: 50,
73
- resize: 0
74
- },
75
- ...resize
76
- });
77
- const canvasRef = React__namespace.useRef(null);
78
- const divRef = React__namespace.useRef(null);
79
- React__namespace.useImperativeHandle(ref, () => canvasRef.current);
80
- const handlePointerMissed = events.useMutableCallback(onPointerMissed);
81
- const [block, setBlock] = React__namespace.useState(false);
82
- const [error, setError] = React__namespace.useState(false);
83
-
84
- // Suspend this component if block is a promise (2nd run)
85
- if (block) throw block;
86
- // Throw exception outwards if anything within canvas throws
87
- if (error) throw error;
88
- const root = React__namespace.useRef(null);
89
- events.useIsomorphicLayoutEffect(() => {
90
- const canvas = canvasRef.current;
91
- if (containerRect.width > 0 && containerRect.height > 0 && canvas) {
92
- if (!root.current) root.current = events.createRoot(canvas);
93
- async function run() {
94
- await root.current.configure({
95
- gl,
96
- scene,
97
- events: events$1,
98
- shadows,
99
- linear,
100
- flat,
101
- legacy,
102
- orthographic,
103
- frameloop,
104
- dpr,
105
- performance,
106
- raycaster,
107
- camera,
108
- size: containerRect,
109
- // Pass mutable reference to onPointerMissed so it's free to update
110
- onPointerMissed: (...args) => handlePointerMissed.current == null ? void 0 : handlePointerMissed.current(...args),
111
- onCreated: state => {
112
- // Connect to event source
113
- state.events.connect == null ? void 0 : state.events.connect(eventSource ? events.isRef(eventSource) ? eventSource.current : eventSource : divRef.current);
114
- // Set up compute function
115
- if (eventPrefix) {
116
- state.setEvents({
117
- compute: (event, state) => {
118
- const x = event[eventPrefix + 'X'];
119
- const y = event[eventPrefix + 'Y'];
120
- state.pointer.set(x / state.size.width * 2 - 1, -(y / state.size.height) * 2 + 1);
121
- state.raycaster.setFromCamera(state.pointer, state.camera);
122
- }
123
- });
124
- }
125
- // Call onCreated callback
126
- onCreated == null ? void 0 : onCreated(state);
127
- }
128
- });
129
- root.current.render( /*#__PURE__*/jsxRuntime.jsx(Bridge, {
130
- children: /*#__PURE__*/jsxRuntime.jsx(events.ErrorBoundary, {
131
- set: setError,
132
- children: /*#__PURE__*/jsxRuntime.jsx(React__namespace.Suspense, {
133
- fallback: /*#__PURE__*/jsxRuntime.jsx(events.Block, {
134
- set: setBlock
135
- }),
136
- children: children != null ? children : null
137
- })
138
- })
139
- }));
140
- }
141
- run();
142
- }
143
- });
144
- React__namespace.useEffect(() => {
145
- const canvas = canvasRef.current;
146
- if (canvas) return () => events.unmountComponentAtNode(canvas);
147
- }, []);
148
-
149
- // When the event source is not this div, we need to set pointer-events to none
150
- // Or else the canvas will block events from reaching the event source
151
- const pointerEvents = eventSource ? 'none' : 'auto';
152
- return /*#__PURE__*/jsxRuntime.jsx("div", {
153
- ref: divRef,
154
- style: {
155
- position: 'relative',
156
- width: '100%',
157
- height: '100%',
158
- overflow: 'hidden',
159
- pointerEvents,
160
- ...style
161
- },
162
- ...props,
163
- children: /*#__PURE__*/jsxRuntime.jsx("div", {
164
- ref: containerRef,
165
- style: {
166
- width: '100%',
167
- height: '100%'
168
- },
169
- children: /*#__PURE__*/jsxRuntime.jsx("canvas", {
170
- ref: canvasRef,
171
- style: {
172
- display: 'block'
173
- },
174
- children: fallback
175
- })
176
- })
177
- });
178
- }
179
-
180
- /**
181
- * A DOM canvas which accepts threejs elements as children.
182
- * @see https://docs.pmnd.rs/react-three-fiber/api/canvas
183
- */
184
- function Canvas(props) {
185
- return /*#__PURE__*/jsxRuntime.jsx(itsFine.FiberProvider, {
186
- children: /*#__PURE__*/jsxRuntime.jsx(CanvasImpl, {
187
- ...props
188
- })
189
- });
190
- }
191
-
192
- exports.ReactThreeFiber = events.threeTypes;
193
- exports._roots = events._roots;
194
- exports.act = events.act;
195
- exports.addAfterEffect = events.addAfterEffect;
196
- exports.addEffect = events.addEffect;
197
- exports.addTail = events.addTail;
198
- exports.advance = events.advance;
199
- exports.applyProps = events.applyProps;
200
- exports.buildGraph = events.buildGraph;
201
- exports.context = events.context;
202
- exports.createEvents = events.createEvents;
203
- exports.createPortal = events.createPortal;
204
- exports.createRoot = events.createRoot;
205
- exports.dispose = events.dispose;
206
- exports.events = events.createPointerEvents;
207
- exports.extend = events.extend;
208
- exports.flushGlobalEffects = events.flushGlobalEffects;
209
- exports.flushSync = events.flushSync;
210
- exports.getRootState = events.getRootState;
211
- exports.invalidate = events.invalidate;
212
- exports.reconciler = events.reconciler;
213
- exports.unmountComponentAtNode = events.unmountComponentAtNode;
214
- exports.useFrame = events.useFrame;
215
- exports.useGraph = events.useGraph;
216
- exports.useInstanceHandle = events.useInstanceHandle;
217
- exports.useLoader = events.useLoader;
218
- exports.useStore = events.useStore;
219
- exports.useThree = events.useThree;
220
- exports.Canvas = Canvas;
@@ -1,165 +0,0 @@
1
- import { e as extend, u as useBridge, a as useMutableCallback, b as useIsomorphicLayoutEffect, c as createRoot, i as isRef, E as ErrorBoundary, B as Block, d as unmountComponentAtNode, f as createPointerEvents } from './events-5a94e5eb.esm.js';
2
- export { t as ReactThreeFiber, _ as _roots, x as act, k as addAfterEffect, j as addEffect, l as addTail, n as advance, s as applyProps, y as buildGraph, q as context, g as createEvents, o as createPortal, c as createRoot, w as dispose, f as events, e as extend, h as flushGlobalEffects, p as flushSync, v as getRootState, m as invalidate, r as reconciler, d as unmountComponentAtNode, D as useFrame, F as useGraph, z as useInstanceHandle, G as useLoader, A as useStore, C as useThree } from './events-5a94e5eb.esm.js';
3
- import * as React from 'react';
4
- import * as THREE from 'three';
5
- import useMeasure from 'react-use-measure';
6
- import { FiberProvider } from 'its-fine';
7
- import { jsx } from 'react/jsx-runtime';
8
- import 'zustand/traditional';
9
- import 'suspend-react';
10
- import 'scheduler';
11
-
12
- function CanvasImpl({
13
- ref,
14
- children,
15
- fallback,
16
- resize,
17
- style,
18
- gl,
19
- events = createPointerEvents,
20
- eventSource,
21
- eventPrefix,
22
- shadows,
23
- linear,
24
- flat,
25
- legacy,
26
- orthographic,
27
- frameloop,
28
- dpr,
29
- performance,
30
- raycaster,
31
- camera,
32
- scene,
33
- onPointerMissed,
34
- onCreated,
35
- ...props
36
- }) {
37
- // Create a known catalogue of Threejs-native elements
38
- // This will include the entire THREE namespace by default, users can extend
39
- // their own elements by using the createRoot API instead
40
- React.useMemo(() => extend(THREE), []);
41
- const Bridge = useBridge();
42
- const [containerRef, containerRect] = useMeasure({
43
- scroll: true,
44
- debounce: {
45
- scroll: 50,
46
- resize: 0
47
- },
48
- ...resize
49
- });
50
- const canvasRef = React.useRef(null);
51
- const divRef = React.useRef(null);
52
- React.useImperativeHandle(ref, () => canvasRef.current);
53
- const handlePointerMissed = useMutableCallback(onPointerMissed);
54
- const [block, setBlock] = React.useState(false);
55
- const [error, setError] = React.useState(false);
56
-
57
- // Suspend this component if block is a promise (2nd run)
58
- if (block) throw block;
59
- // Throw exception outwards if anything within canvas throws
60
- if (error) throw error;
61
- const root = React.useRef(null);
62
- useIsomorphicLayoutEffect(() => {
63
- const canvas = canvasRef.current;
64
- if (containerRect.width > 0 && containerRect.height > 0 && canvas) {
65
- if (!root.current) root.current = createRoot(canvas);
66
- async function run() {
67
- await root.current.configure({
68
- gl,
69
- scene,
70
- events,
71
- shadows,
72
- linear,
73
- flat,
74
- legacy,
75
- orthographic,
76
- frameloop,
77
- dpr,
78
- performance,
79
- raycaster,
80
- camera,
81
- size: containerRect,
82
- // Pass mutable reference to onPointerMissed so it's free to update
83
- onPointerMissed: (...args) => handlePointerMissed.current == null ? void 0 : handlePointerMissed.current(...args),
84
- onCreated: state => {
85
- // Connect to event source
86
- state.events.connect == null ? void 0 : state.events.connect(eventSource ? isRef(eventSource) ? eventSource.current : eventSource : divRef.current);
87
- // Set up compute function
88
- if (eventPrefix) {
89
- state.setEvents({
90
- compute: (event, state) => {
91
- const x = event[eventPrefix + 'X'];
92
- const y = event[eventPrefix + 'Y'];
93
- state.pointer.set(x / state.size.width * 2 - 1, -(y / state.size.height) * 2 + 1);
94
- state.raycaster.setFromCamera(state.pointer, state.camera);
95
- }
96
- });
97
- }
98
- // Call onCreated callback
99
- onCreated == null ? void 0 : onCreated(state);
100
- }
101
- });
102
- root.current.render( /*#__PURE__*/jsx(Bridge, {
103
- children: /*#__PURE__*/jsx(ErrorBoundary, {
104
- set: setError,
105
- children: /*#__PURE__*/jsx(React.Suspense, {
106
- fallback: /*#__PURE__*/jsx(Block, {
107
- set: setBlock
108
- }),
109
- children: children != null ? children : null
110
- })
111
- })
112
- }));
113
- }
114
- run();
115
- }
116
- });
117
- React.useEffect(() => {
118
- const canvas = canvasRef.current;
119
- if (canvas) return () => unmountComponentAtNode(canvas);
120
- }, []);
121
-
122
- // When the event source is not this div, we need to set pointer-events to none
123
- // Or else the canvas will block events from reaching the event source
124
- const pointerEvents = eventSource ? 'none' : 'auto';
125
- return /*#__PURE__*/jsx("div", {
126
- ref: divRef,
127
- style: {
128
- position: 'relative',
129
- width: '100%',
130
- height: '100%',
131
- overflow: 'hidden',
132
- pointerEvents,
133
- ...style
134
- },
135
- ...props,
136
- children: /*#__PURE__*/jsx("div", {
137
- ref: containerRef,
138
- style: {
139
- width: '100%',
140
- height: '100%'
141
- },
142
- children: /*#__PURE__*/jsx("canvas", {
143
- ref: canvasRef,
144
- style: {
145
- display: 'block'
146
- },
147
- children: fallback
148
- })
149
- })
150
- });
151
- }
152
-
153
- /**
154
- * A DOM canvas which accepts threejs elements as children.
155
- * @see https://docs.pmnd.rs/react-three-fiber/api/canvas
156
- */
157
- function Canvas(props) {
158
- return /*#__PURE__*/jsx(FiberProvider, {
159
- children: /*#__PURE__*/jsx(CanvasImpl, {
160
- ...props
161
- })
162
- });
163
- }
164
-
165
- export { Canvas };
@@ -1,2 +0,0 @@
1
- export * from "../../dist/declarations/src/native";
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3QtdGhyZWUtZmliZXItbmF0aXZlLmNqcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vZGlzdC9kZWNsYXJhdGlvbnMvc3JjL25hdGl2ZS5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBIn0=