@react-three/fiber 9.0.0-alpha.1 → 9.0.0-alpha.3

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 (35) hide show
  1. package/CHANGELOG.md +962 -444
  2. package/dist/declarations/src/core/events.d.ts +91 -69
  3. package/dist/declarations/src/core/hooks.d.ts +53 -24
  4. package/dist/declarations/src/core/index.d.ts +15 -61
  5. package/dist/declarations/src/core/loop.d.ts +31 -13
  6. package/dist/declarations/src/core/reconciler.d.ts +43 -0
  7. package/dist/declarations/src/core/renderer.d.ts +85 -51
  8. package/dist/declarations/src/core/stages.d.ts +64 -59
  9. package/dist/declarations/src/core/store.d.ts +147 -110
  10. package/dist/declarations/src/core/utils.d.ts +128 -81
  11. package/dist/declarations/src/index.d.ts +6 -12
  12. package/dist/declarations/src/native/Canvas.d.ts +14 -8
  13. package/dist/declarations/src/native/events.d.ts +4 -4
  14. package/dist/declarations/src/native.d.ts +6 -10
  15. package/dist/declarations/src/three-types.d.ts +56 -331
  16. package/dist/declarations/src/web/Canvas.d.ts +24 -9
  17. package/dist/declarations/src/web/events.d.ts +4 -4
  18. package/dist/loop-0698c205.cjs.dev.js +2496 -0
  19. package/dist/loop-a0ef8208.cjs.prod.js +2496 -0
  20. package/dist/loop-b2aca207.esm.js +2434 -0
  21. package/dist/react-three-fiber.cjs.d.ts +1 -0
  22. package/dist/react-three-fiber.cjs.dev.js +139 -100
  23. package/dist/react-three-fiber.cjs.prod.js +139 -100
  24. package/dist/react-three-fiber.esm.js +104 -68
  25. package/native/dist/react-three-fiber-native.cjs.d.ts +1 -0
  26. package/native/dist/react-three-fiber-native.cjs.dev.js +287 -212
  27. package/native/dist/react-three-fiber-native.cjs.prod.js +287 -212
  28. package/native/dist/react-three-fiber-native.esm.js +251 -181
  29. package/native/package.json +5 -5
  30. package/package.json +18 -11
  31. package/readme.md +253 -202
  32. package/dist/declarations/src/native/polyfills.d.ts +0 -1
  33. package/dist/index-2e1b7052.cjs.prod.js +0 -2362
  34. package/dist/index-65e750e4.cjs.dev.js +0 -2362
  35. package/dist/index-a9c7a6cd.esm.js +0 -2304
package/CHANGELOG.md CHANGED
@@ -1,444 +1,962 @@
1
- # @react-three/fiber
2
-
3
- ## 8.3.0
4
-
5
- ### Minor Changes
6
-
7
- - 9c450ec: feat: improve errors
8
-
9
- ## 8.2.3
10
-
11
- ### Patch Changes
12
-
13
- - b8d2eab: fix: improve useLoader signature, initial size on createRoot
14
-
15
- ## 8.2.2
16
-
17
- ### Patch Changes
18
-
19
- - acd6f04: fix: warn on stray text
20
-
21
- ## 8.2.1
22
-
23
- ### Patch Changes
24
-
25
- - 25e35a1: fix: prefer useLayoutEffect in react-native
26
-
27
- ## 8.2.0
28
-
29
- ### Minor Changes
30
-
31
- - 9770d7d: feat: expose ThreeElements interface for JSX elements
32
-
33
- ## 8.1.0
34
-
35
- ### Minor Changes
36
-
37
- - 8d0f708c: Expose position information in state.size
38
-
39
- ## 8.0.27
40
-
41
- ### Patch Changes
42
-
43
- - 7940995: fix: resume on xrsession end, export internal events
44
-
45
- ## 8.0.26
46
-
47
- ### Patch Changes
48
-
49
- - 7b6df9df: fix: infinite loop updating cam viewport
50
-
51
- ## 8.0.25
52
-
53
- ### Patch Changes
54
-
55
- - b7cd0f42: update viewport on camera changes
56
-
57
- ## 8.0.24
58
-
59
- ### Patch Changes
60
-
61
- - ee8e785: fix: attach timings
62
-
63
- ## 8.0.23
64
-
65
- ### Patch Changes
66
-
67
- - 29d03c64: revert multi attach
68
-
69
- ## 8.0.22
70
-
71
- ### Patch Changes
72
-
73
- - 419e854: fix: always prepare primitives
74
-
75
- ## 8.0.21
76
-
77
- ### Patch Changes
78
-
79
- - 3098b9b: fix: resizing in worker contexts, copy over attachments on reconstruct
80
-
81
- ## 8.0.20
82
-
83
- ### Patch Changes
84
-
85
- - 4c87bce: fix: attach, devtools, and perf fixes
86
-
87
- ## 8.0.19
88
-
89
- ### Patch Changes
90
-
91
- - 360b45a: fix: handle attach on reconstruct
92
-
93
- ## 8.0.18
94
-
95
- ### Patch Changes
96
-
97
- - be567c1: fix: suspense attach and three compat in webpack
98
-
99
- ## 8.0.17
100
-
101
- ### Patch Changes
102
-
103
- - 9e3369e: fix dom resize, improve native tree shaking
104
-
105
- ## 8.0.16
106
-
107
- ### Patch Changes
108
-
109
- - 669c45c: correctly type useLoader results
110
-
111
- ## 8.0.15
112
-
113
- ### Patch Changes
114
-
115
- - c4715d5f: allow invalidate to preempt more than 1 frame
116
-
117
- ## 8.0.14
118
-
119
- ### Patch Changes
120
-
121
- - 5559a119: Add support for recoverable errors
122
-
123
- ## 8.0.13
124
-
125
- ### Patch Changes
126
-
127
- - 9d77d8e2: fix: detach attribute removal
128
-
129
- ## 8.0.12
130
-
131
- ### Patch Changes
132
-
133
- - 3d10413f: fix portal layers
134
-
135
- ## 8.0.11
136
-
137
- ### Patch Changes
138
-
139
- - 5167b1e4: memoized.args can be undefined
140
-
141
- ## 8.0.10
142
-
143
- ### Patch Changes
144
-
145
- - eb321afd: fix: remount bug, allow portals to inject custom size
146
-
147
- ## 8.0.9
148
-
149
- ### Patch Changes
150
-
151
- - 624df949: fix: canvas unmount race condition"
152
-
153
- ## 8.0.8
154
-
155
- ### Patch Changes
156
-
157
- - 952a566: fix: react SSR
158
-
159
- ## 8.0.7
160
-
161
- ### Patch Changes
162
-
163
- - f63806b: fix: react SSR
164
-
165
- ## 8.0.6
166
-
167
- ### Patch Changes
168
-
169
- - d4bafb9: fix re-parenting, useframe not working properly in portals, attach crash
170
-
171
- ## 8.0.5
172
-
173
- ### Patch Changes
174
-
175
- - 227c328: fix pointer for root and portals
176
-
177
- ## 8.0.4
178
-
179
- ### Patch Changes
180
-
181
- - e981a72: fix: mock three color management, loosen peer dep
182
-
183
- ## 8.0.3
184
-
185
- ### Patch Changes
186
-
187
- - 3252aed: setevents needs to spread and be mirrored in portals
188
-
189
- ## 8.0.2
190
-
191
- ### Patch Changes
192
-
193
- - 8035d1f: fix: legacy mode
194
-
195
- ## 8.0.1
196
-
197
- ### Patch Changes
198
-
199
- - 26db195: add legacy flag to turn of three.colormanagement
200
-
201
- ## 8.0.0
202
-
203
- ### Major Changes
204
-
205
- - 385ba9c: v8 major, react-18 compat
206
- - 04c07b8: v8 major, react-18 compat
207
-
208
- ### Patch Changes
209
-
210
- - 347ea79: new beta for library testing
211
-
212
- ## 8.0.0-beta.0
213
-
214
- ### Major Changes
215
-
216
- - 385ba9c: v8 major, react-18 compat
217
-
218
- ## 8.0.0-beta.0
219
-
220
- ### Patch Changes
221
-
222
- - cf6316c: new beta for library testing
223
-
224
- ## 7.0.25
225
-
226
- ### Patch Changes
227
-
228
- - 8698734: Release latest patches
229
-
230
- ## 7.0.24
231
-
232
- ### Patch Changes
233
-
234
- - 7f46ddf: cleanup captured pointers when released (#1914)
235
-
236
- ## 7.0.23
237
-
238
- ### Patch Changes
239
-
240
- - 30d38b1: remove logs
241
-
242
- ## 7.0.22
243
-
244
- ### Patch Changes
245
-
246
- - 259e1fa: add camera:manual
247
-
248
- ## 7.0.21
249
-
250
- ### Patch Changes
251
-
252
- - 65e4147: up usemeasure, add last event to internals"
253
-
254
- ## 7.0.20
255
-
256
- ### Patch Changes
257
-
258
- - 54cb0fd: update react-use-measure, allow it to use the offsetSize
259
-
260
- ## 7.0.19
261
-
262
- ### Patch Changes
263
-
264
- - 7aa2eab: fix: remove zustand subcribe selector
265
-
266
- ## 7.0.18
267
-
268
- ### Patch Changes
269
-
270
- - 6780f58: fix unmount pointer capture
271
-
272
- ## 7.0.17
273
-
274
- ### Patch Changes
275
-
276
- - 894c550: fix: event count
277
-
278
- ## 7.0.16
279
-
280
- ### Patch Changes
281
-
282
- - c7a4220: patch: applyprops returns the same instance
283
-
284
- ## 7.0.15
285
-
286
- ### Patch Changes
287
-
288
- - c5645e8: fix primitve leftovers on switch
289
-
290
- ## 7.0.14
291
-
292
- ### Patch Changes
293
-
294
- - 05af996: fix: revert the is function
295
-
296
- ## 7.0.13
297
-
298
- ### Patch Changes
299
-
300
- - f256558: fix(core): don't overwrite camera rotation
301
- - 51e6fc9: fix(core): safely handle external instances
302
-
303
- ## 7.0.12
304
-
305
- ### Patch Changes
306
-
307
- - 0df6073: fix: missed events
308
-
309
- ## 7.0.11
310
-
311
- ### Patch Changes
312
-
313
- - 62b0a3a: fix: event order of missed pointers
314
-
315
- ## 7.0.10
316
-
317
- ### Patch Changes
318
-
319
- - e019dd4: fixes
320
-
321
- ## 7.0.9
322
-
323
- ### Patch Changes
324
-
325
- - cd266e4: Fix diffProps dashed keys
326
-
327
- ## 7.0.8
328
-
329
- ### Patch Changes
330
-
331
- - 6f68406: Allow getCurrentViewport to receive an array
332
-
333
- ## 7.0.7
334
-
335
- ### Patch Changes
336
-
337
- - 0375896: Simplify useframe, support instanced event cancelation, silence disposal
338
-
339
- ## 7.0.6
340
-
341
- ### Patch Changes
342
-
343
- - fb052ad: Fix babel-env browserslist transpiling into old code"
344
-
345
- ## 7.0.5
346
-
347
- ### Patch Changes
348
-
349
- - c97794a: Add useLoader.clear(Loader, input)
350
-
351
- ## 7.0.4
352
-
353
- ### Patch Changes
354
-
355
- - 974ecfb: Allow elements to define attachFns for specific mount/unmount
356
-
357
- ## 7.0.2
358
-
359
- ### Patch Changes
360
-
361
- - a97aca3: Add controls state field
362
- - 4c703d6: fix rttr didn't work with r130
363
-
364
- ## 7.0.0
365
-
366
- ### Major Changes
367
-
368
- - 96ae1ad: fix javascript interpreting negative renderpriority as positive
369
-
370
- This is a major breaking change that will fix an edge-case. It will only affect you if you used negative useFrame indicies, for instance
371
-
372
- ```jsx
373
- useFrame(..., -1)
374
- ```
375
-
376
- Surprisingly this disabled auto-rendering although the documentation says positive numbers only. As of v7 this will not take over the render loop.
377
-
378
- ```jsx
379
- function Render() {
380
- // Takes over the render-loop, the user has the responsibility to render
381
- useFrame(({ gl, scene, camera }) => {
382
- gl.render(scene, camera)
383
- }, 1)
384
-
385
- function RenderOnTop() {
386
- // This will render on top of the previous call
387
- useFrame(({ gl, ... }) => {
388
- gl.render(...)
389
- }, 2)
390
-
391
- function A() {
392
- // Will *not* take over the render-loop, negative indices can still be useful for sorting
393
- useFrame(() => ..., -1)
394
-
395
- function B() {
396
- // B's useFrame will execute *after* A's
397
- useFrame(() => ..., -2)
398
- ```
399
-
400
- ## 6.2.3
401
-
402
- ### Patch Changes
403
-
404
- - 26bc7eb: typescript changes
405
-
406
- ## 6.2.2
407
-
408
- ### Patch Changes
409
-
410
- - 4f44a2c: use more helpful name with event handling in rttr
411
-
412
- ## 6.2.1
413
-
414
- ### Patch Changes
415
-
416
- - Fix stopPropagation logic
417
-
418
- ## 6.2.0
419
-
420
- ### Minor Changes
421
-
422
- - Allow object3d instances to be attached
423
-
424
- ## 6.1.5
425
-
426
- ### Patch Changes
427
-
428
- - fix(rttr): if children is undefined return an array to map with
429
-
430
- ## 6.1.4
431
-
432
- ### Patch Changes
433
-
434
- - 6faa090: Add shape to types, exclude event functions from event data
435
-
436
- ## 6.1.3
437
-
438
- ### Patch Changes
439
-
440
- - 71e72c0: Fix constructor args with attached children (#1348)
441
- - 015fc03: Only set up pointer/wheel events as passive
442
- - a160e08: Fix event setPointerCapture and stopPropagation.
443
-
444
- ## 6.1.2
1
+ # @react-three/fiber
2
+
3
+ ## 8.16.2
4
+
5
+ ### Patch Changes
6
+
7
+ - e0900489: fix(useLoader): don't dispose of memoized loader
8
+
9
+ ## 8.16.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 503efc2e: fix: prevent invalidate from piling up frames
14
+
15
+ ## 8.16.0
16
+
17
+ ### Minor Changes
18
+
19
+ - 6b0ea6eb: feat: add childadded event dispatch
20
+
21
+ ## 8.15.19
22
+
23
+ ### Patch Changes
24
+
25
+ - 74926b94: fix(types): avoid emitting THREE.XRFrame
26
+
27
+ ## 8.15.18
28
+
29
+ ### Patch Changes
30
+
31
+ - 8c01939a: fix: correctly pass frames in invalidate
32
+
33
+ ## 8.15.17
34
+
35
+ ### Patch Changes
36
+
37
+ - 16c2ee97: fix(types): support @types/three@0.162.0
38
+
39
+ ## 8.15.16
40
+
41
+ ### Patch Changes
42
+
43
+ - 71cd8f96: fix: tonemapping config overwrites userland
44
+ - 0bb12fd1: fix(types): remove usage of THREE.Vector
45
+
46
+ ## 8.15.14
47
+
48
+ ### Patch Changes
49
+
50
+ - 0afc9c12: fix: portal events, update examples
51
+
52
+ ## 8.15.13
53
+
54
+ ### Patch Changes
55
+
56
+ - 0a399f6d: fix(native): use MSAA for antialias on iOS
57
+
58
+ ## 8.15.12
59
+
60
+ ### Patch Changes
61
+
62
+ - 496d6f0d: fix: useLoader and XRFrame type fixes
63
+
64
+ ## 8.15.11
65
+
66
+ ### Patch Changes
67
+
68
+ - 3d9af04d: fix: update import from three examples
69
+
70
+ ## 8.15.10
71
+
72
+ ### Patch Changes
73
+
74
+ - 49158164: fix: don't recursively dispose primitives
75
+
76
+ ## 8.15.9
77
+
78
+ ### Patch Changes
79
+
80
+ - 4cbc5530: fix(native): deopt iOS blob URI path
81
+
82
+ ## 8.15.8
83
+
84
+ ### Patch Changes
85
+
86
+ - 70680832: fix: revert stable sort
87
+
88
+ ## 8.15.7
89
+
90
+ ### Patch Changes
91
+
92
+ - 07e39e2e: fix(types): remove use of Object3D generic
93
+
94
+ ## 8.15.6
95
+
96
+ ### Patch Changes
97
+
98
+ - 7bb2950b: experiment: stable object sort
99
+
100
+ ## 8.15.5
101
+
102
+ ### Patch Changes
103
+
104
+ - 0e44fd8b: fix(types): preserve deprecated JSX annotations
105
+
106
+ ## 8.15.4
107
+
108
+ ### Patch Changes
109
+
110
+ - 634e5db5: fix(native): harden Blob URI check for Android
111
+
112
+ ## 8.15.3
113
+
114
+ ### Patch Changes
115
+
116
+ - beab4344: fix(native): workaround Android content policy for Blob URI
117
+
118
+ ## 8.15.2
119
+
120
+ ### Patch Changes
121
+
122
+ - 086d3932: fix: size check and raycaster camera
123
+
124
+ ## 8.15.1
125
+
126
+ ### Patch Changes
127
+
128
+ - 2d39676d: fix: ignore deprecated types, use correct XRFrame definition
129
+
130
+ ## 8.15.0
131
+
132
+ ### Minor Changes
133
+
134
+ - cca8b6bb: feat: export buildGraph
135
+
136
+ ## 8.14.7
137
+
138
+ ### Patch Changes
139
+
140
+ - 0f63a287: fix(native): restore polyfill conversions, drop networking
141
+
142
+ ## 8.14.6
143
+
144
+ ### Patch Changes
145
+
146
+ - 465fa0fb: fix(native): revert usage of networking stack
147
+
148
+ ## 8.14.5
149
+
150
+ ### Patch Changes
151
+
152
+ - f372a5b5: fix(applyProps): loosen copy identity in dev
153
+
154
+ ## 8.14.4
155
+
156
+ ### Patch Changes
157
+
158
+ - dc7e5739: fix(native): amend BlobManager over globals
159
+
160
+ ## 8.14.3
161
+
162
+ ### Patch Changes
163
+
164
+ - d77b0990: fix(native): drop fsstat for react-native-web
165
+
166
+ ## 8.14.2
167
+
168
+ ### Patch Changes
169
+
170
+ - 33e8baef: fix: native perf, loader types
171
+
172
+ ## 8.14.1
173
+
174
+ ### Patch Changes
175
+
176
+ - c99907bf: fix(native): prefer local uri for fs
177
+
178
+ ## 8.14.0
179
+
180
+ ### Minor Changes
181
+
182
+ - 89e96bf4: feat: react-native-web, native globals fixes
183
+
184
+ ## 8.13.9
185
+
186
+ ### Patch Changes
187
+
188
+ - 44d57b3c: fix(native): TextureLoader should remain consistent with FileLoader
189
+
190
+ ## 8.13.8
191
+
192
+ ### Patch Changes
193
+
194
+ - 5da26d52: fix(useLoader): dispose loaders
195
+
196
+ ## 8.13.7
197
+
198
+ ### Patch Changes
199
+
200
+ - 37b9502a: fix(Canvas): pass scene prop
201
+
202
+ ## 8.13.6
203
+
204
+ ### Patch Changes
205
+
206
+ - 0597495c: fix: harden XR init against Renderer shim
207
+
208
+ ## 8.13.5
209
+
210
+ ### Patch Changes
211
+
212
+ - 7a3b543b: fix: three type regressions
213
+
214
+ ## 8.13.4
215
+
216
+ ### Patch Changes
217
+
218
+ - 824ee0f7: fix: safely diff instances
219
+
220
+ ## 8.13.3
221
+
222
+ ### Patch Changes
223
+
224
+ - ffdb5fc4: revert nested portals, up suspend-react
225
+
226
+ ## 8.13.2
227
+
228
+ ### Patch Changes
229
+
230
+ - bbabdf07: update suspend-react
231
+
232
+ ## 8.13.1
233
+
234
+ ### Patch Changes
235
+
236
+ - c9fe03ba: fix: primitive swap and reactive portals
237
+
238
+ ## 8.13.0
239
+
240
+ ### Minor Changes
241
+
242
+ - ecfc48b7: feat: CanvasProps alias, respect r152 color management
243
+
244
+ ## 8.12.2
245
+
246
+ ### Patch Changes
247
+
248
+ - c5193468: fix: safeguard window.devicePixelRatio
249
+
250
+ ## 8.12.1
251
+
252
+ ### Patch Changes
253
+
254
+ - 571f07ac: fix: safeguard window.devicePixelRatio
255
+
256
+ ## 8.12.0
257
+
258
+ ### Minor Changes
259
+
260
+ - 1928d095: feat: `scene` render prop for custom THREE.Scene
261
+
262
+ ## 8.11.11
263
+
264
+ ### Patch Changes
265
+
266
+ - f03c6ef8: feat: `scene` render prop for custom THREE.Scene
267
+
268
+ ## 8.11.10
269
+
270
+ ### Patch Changes
271
+
272
+ - 12907836: fix onpointerlostcapture which fired before pointerup
273
+
274
+ ## 8.11.9
275
+
276
+ ### Patch Changes
277
+
278
+ - 6b5f572c: fix: treeshake THREE.ColorManagement
279
+
280
+ ## 8.11.8
281
+
282
+ ### Patch Changes
283
+
284
+ - 350cd3f3: fix(Canvas): inline render-effect
285
+
286
+ ## 8.11.7
287
+
288
+ ### Patch Changes
289
+
290
+ - 96af62d5: fix: don't overwrite public cameras
291
+
292
+ ## 8.11.6
293
+
294
+ ### Patch Changes
295
+
296
+ - 7d319c18: Fix is.equ obj:shallow, allow it to test arrays 1 level deep, fix canvas.camera prop being stale
297
+
298
+ ## 8.11.5
299
+
300
+ ### Patch Changes
301
+
302
+ - c658f763: fix: update canvas prop types
303
+
304
+ ## 8.11.4
305
+
306
+ ### Patch Changes
307
+
308
+ - 970aa58b: fix: play nice with offscreencanvas
309
+
310
+ ## 8.11.3
311
+
312
+ ### Patch Changes
313
+
314
+ - 2bce569c: fix: progressively set colormanagement
315
+
316
+ ## 8.11.2
317
+
318
+ ### Patch Changes
319
+
320
+ - 41d655cd: fix: hmr, srgb encode
321
+
322
+ ## 8.11.1
323
+
324
+ ### Patch Changes
325
+
326
+ - 58cadeff: fix: skip circular onUpdate calls
327
+
328
+ ## 8.11.0
329
+
330
+ ### Minor Changes
331
+
332
+ - 2917a47b: events.update, allow raycast w/o user interaction
333
+ - 521bfb07: events.update, allow raycast w/o user interaction
334
+
335
+ ## 8.10.4
336
+
337
+ ### Patch Changes
338
+
339
+ - d9e6316d: fix: transpile class properties
340
+
341
+ ## 8.10.3
342
+
343
+ ### Patch Changes
344
+
345
+ - d06d2879: fix: align useLoader type, public fields from builds
346
+
347
+ ## 8.10.2
348
+
349
+ ### Patch Changes
350
+
351
+ - 564edbbb: fix port inject layers, it should allow root props to overwrite indefined portal props"
352
+
353
+ ## 8.10.1
354
+
355
+ ### Patch Changes
356
+
357
+ - bfa0298f: fix memoized identity
358
+
359
+ ## 8.10.0
360
+
361
+ ### Minor Changes
362
+
363
+ - 24c4dba4: shortcut for shadow type
364
+
365
+ ## 8.9.2
366
+
367
+ ### Patch Changes
368
+
369
+ - 2aeb6500: fix: primitives are incorrectly swapped on key change in maps
370
+
371
+ ## 8.9.1
372
+
373
+ ### Patch Changes
374
+
375
+ - 0cf11797: fix(events): type spread event props
376
+
377
+ ## 8.9.0
378
+
379
+ ### Minor Changes
380
+
381
+ - a458b4dd: fix(loop): export flush methods and types
382
+
383
+ ## 8.8.11
384
+
385
+ ### Patch Changes
386
+
387
+ - 2068f0cc: fix: events pointerlock, useLoader extension types
388
+
389
+ ## 8.8.10
390
+
391
+ ### Patch Changes
392
+
393
+ - 00c24718: fix: invalidate pierced props
394
+
395
+ ## 8.8.9
396
+
397
+ ### Patch Changes
398
+
399
+ - 4254400e: fix(createPortal): use correct JSX type
400
+
401
+ ## 8.8.8
402
+
403
+ ### Patch Changes
404
+
405
+ - fcb183e3: fix: call onUpdate for attached children prop update
406
+
407
+ ## 8.8.7
408
+
409
+ ### Patch Changes
410
+
411
+ - bedb16e7: fix: prefer named functions, for loops in hot paths
412
+
413
+ ## 8.8.6
414
+
415
+ ### Patch Changes
416
+
417
+ - 02a558bb: fix: upgrade deps
418
+
419
+ ## 8.8.5
420
+
421
+ ### Patch Changes
422
+
423
+ - 530a06d6: fix: upgrade deps to work-around CRA
424
+
425
+ ## 8.8.4
426
+
427
+ ### Patch Changes
428
+
429
+ - 2f2dc9f9: chore: upgrade bridge to harden suspense behavior
430
+
431
+ ## 8.8.3
432
+
433
+ ### Patch Changes
434
+
435
+ - 9f571239: fix #2506, events should fall back to rootstate"
436
+
437
+ ## 8.8.2
438
+
439
+ ### Patch Changes
440
+
441
+ - dc389ed6: fix(Canvas): prevent remount on context update
442
+
443
+ ## 8.8.1
444
+
445
+ ### Patch Changes
446
+
447
+ - 370d3ae5: refactor: pull context bridge from its-fine
448
+
449
+ ## 8.8.0
450
+
451
+ ### Minor Changes
452
+
453
+ - 46d8b440: bridge cross-container context
454
+
455
+ ## 8.7.4
456
+
457
+ ### Patch Changes
458
+
459
+ - 259c8895: fix: use self to get global context before window
460
+
461
+ ## 8.7.3
462
+
463
+ ### Patch Changes
464
+
465
+ - eb5a3be4: fix: if there is an eventsource pointerevent will be set to none
466
+
467
+ ## 8.7.2
468
+
469
+ ### Patch Changes
470
+
471
+ - 7f801e60: fix: events in portals carry the wrong raycaster, camera, etc
472
+
473
+ ## 8.7.1
474
+
475
+ ### Patch Changes
476
+
477
+ - 962cc270: fix: allow canvas eventsource to be a ref
478
+
479
+ ## 8.7.0
480
+
481
+ ### Minor Changes
482
+
483
+ - f5db1b78: feat: useInstanceHandle, flushGlobalEffects
484
+
485
+ ## 8.6.2
486
+
487
+ ### Patch Changes
488
+
489
+ - 57c12e9c: fix(types): @react-three/drei declaration files
490
+
491
+ ## 8.6.1
492
+
493
+ ### Patch Changes
494
+
495
+ - 7a0b5670: fix(core): don't append to unmounted containers
496
+
497
+ ## 8.6.0
498
+
499
+ ### Minor Changes
500
+
501
+ - 85c80e70: eventsource and eventprefix on the canvas component
502
+
503
+ ## 8.5.1
504
+
505
+ ### Patch Changes
506
+
507
+ - 87821d9: fix: null-check instance.children on reconstruct
508
+
509
+ ## 8.5.0
510
+
511
+ ### Minor Changes
512
+
513
+ - edc8252: feat: handle primitive children, auto-attach via instanceof
514
+
515
+ ## 8.3.1
516
+
517
+ ### Patch Changes
518
+
519
+ - aaeb2b8: fix(types): accept readonly arrays for vector props
520
+
521
+ ## 8.3.0
522
+
523
+ ### Minor Changes
524
+
525
+ - 9c450ec: feat: improve errors
526
+
527
+ ## 8.2.3
528
+
529
+ ### Patch Changes
530
+
531
+ - b8d2eab: fix: improve useLoader signature, initial size on createRoot
532
+
533
+ ## 8.2.2
534
+
535
+ ### Patch Changes
536
+
537
+ - acd6f04: fix: warn on stray text
538
+
539
+ ## 8.2.1
540
+
541
+ ### Patch Changes
542
+
543
+ - 25e35a1: fix: prefer useLayoutEffect in react-native
544
+
545
+ ## 8.2.0
546
+
547
+ ### Minor Changes
548
+
549
+ - 9770d7d: feat: expose ThreeElements interface for JSX elements
550
+
551
+ ## 8.1.0
552
+
553
+ ### Minor Changes
554
+
555
+ - 8d0f708c: Expose position information in state.size
556
+
557
+ ## 8.0.27
558
+
559
+ ### Patch Changes
560
+
561
+ - 7940995: fix: resume on xrsession end, export internal events
562
+
563
+ ## 8.0.26
564
+
565
+ ### Patch Changes
566
+
567
+ - 7b6df9df: fix: infinite loop updating cam viewport
568
+
569
+ ## 8.0.25
570
+
571
+ ### Patch Changes
572
+
573
+ - b7cd0f42: update viewport on camera changes
574
+
575
+ ## 8.0.24
576
+
577
+ ### Patch Changes
578
+
579
+ - ee8e785: fix: attach timings
580
+
581
+ ## 8.0.23
582
+
583
+ ### Patch Changes
584
+
585
+ - 29d03c64: revert multi attach
586
+
587
+ ## 8.0.22
588
+
589
+ ### Patch Changes
590
+
591
+ - 419e854: fix: always prepare primitives
592
+
593
+ ## 8.0.21
594
+
595
+ ### Patch Changes
596
+
597
+ - 3098b9b: fix: resizing in worker contexts, copy over attachments on reconstruct
598
+
599
+ ## 8.0.20
600
+
601
+ ### Patch Changes
602
+
603
+ - 4c87bce: fix: attach, devtools, and perf fixes
604
+
605
+ ## 8.0.19
606
+
607
+ ### Patch Changes
608
+
609
+ - 360b45a: fix: handle attach on reconstruct
610
+
611
+ ## 8.0.18
612
+
613
+ ### Patch Changes
614
+
615
+ - be567c1: fix: suspense attach and three compat in webpack
616
+
617
+ ## 8.0.17
618
+
619
+ ### Patch Changes
620
+
621
+ - 9e3369e: fix dom resize, improve native tree shaking
622
+
623
+ ## 8.0.16
624
+
625
+ ### Patch Changes
626
+
627
+ - 669c45c: correctly type useLoader results
628
+
629
+ ## 8.0.15
630
+
631
+ ### Patch Changes
632
+
633
+ - c4715d5f: allow invalidate to preempt more than 1 frame
634
+
635
+ ## 8.0.14
636
+
637
+ ### Patch Changes
638
+
639
+ - 5559a119: Add support for recoverable errors
640
+
641
+ ## 8.0.13
642
+
643
+ ### Patch Changes
644
+
645
+ - 9d77d8e2: fix: detach attribute removal
646
+
647
+ ## 8.0.12
648
+
649
+ ### Patch Changes
650
+
651
+ - 3d10413f: fix portal layers
652
+
653
+ ## 8.0.11
654
+
655
+ ### Patch Changes
656
+
657
+ - 5167b1e4: memoized.args can be undefined
658
+
659
+ ## 8.0.10
660
+
661
+ ### Patch Changes
662
+
663
+ - eb321afd: fix: remount bug, allow portals to inject custom size
664
+
665
+ ## 8.0.9
666
+
667
+ ### Patch Changes
668
+
669
+ - 624df949: fix: canvas unmount race condition"
670
+
671
+ ## 8.0.8
672
+
673
+ ### Patch Changes
674
+
675
+ - 952a566: fix: react SSR
676
+
677
+ ## 8.0.7
678
+
679
+ ### Patch Changes
680
+
681
+ - f63806b: fix: react SSR
682
+
683
+ ## 8.0.6
684
+
685
+ ### Patch Changes
686
+
687
+ - d4bafb9: fix re-parenting, useframe not working properly in portals, attach crash
688
+
689
+ ## 8.0.5
690
+
691
+ ### Patch Changes
692
+
693
+ - 227c328: fix pointer for root and portals
694
+
695
+ ## 8.0.4
696
+
697
+ ### Patch Changes
698
+
699
+ - e981a72: fix: mock three color management, loosen peer dep
700
+
701
+ ## 8.0.3
702
+
703
+ ### Patch Changes
704
+
705
+ - 3252aed: setevents needs to spread and be mirrored in portals
706
+
707
+ ## 8.0.2
708
+
709
+ ### Patch Changes
710
+
711
+ - 8035d1f: fix: legacy mode
712
+
713
+ ## 8.0.1
714
+
715
+ ### Patch Changes
716
+
717
+ - 26db195: add legacy flag to turn of three.colormanagement
718
+
719
+ ## 8.0.0
720
+
721
+ ### Major Changes
722
+
723
+ - 385ba9c: v8 major, react-18 compat
724
+ - 04c07b8: v8 major, react-18 compat
725
+
726
+ ### Patch Changes
727
+
728
+ - 347ea79: new beta for library testing
729
+
730
+ ## 8.0.0-beta.0
731
+
732
+ ### Major Changes
733
+
734
+ - 385ba9c: v8 major, react-18 compat
735
+
736
+ ## 8.0.0-beta.0
737
+
738
+ ### Patch Changes
739
+
740
+ - cf6316c: new beta for library testing
741
+
742
+ ## 7.0.25
743
+
744
+ ### Patch Changes
745
+
746
+ - 8698734: Release latest patches
747
+
748
+ ## 7.0.24
749
+
750
+ ### Patch Changes
751
+
752
+ - 7f46ddf: cleanup captured pointers when released (#1914)
753
+
754
+ ## 7.0.23
755
+
756
+ ### Patch Changes
757
+
758
+ - 30d38b1: remove logs
759
+
760
+ ## 7.0.22
761
+
762
+ ### Patch Changes
763
+
764
+ - 259e1fa: add camera:manual
765
+
766
+ ## 7.0.21
767
+
768
+ ### Patch Changes
769
+
770
+ - 65e4147: up usemeasure, add last event to internals"
771
+
772
+ ## 7.0.20
773
+
774
+ ### Patch Changes
775
+
776
+ - 54cb0fd: update react-use-measure, allow it to use the offsetSize
777
+
778
+ ## 7.0.19
779
+
780
+ ### Patch Changes
781
+
782
+ - 7aa2eab: fix: remove zustand subcribe selector
783
+
784
+ ## 7.0.18
785
+
786
+ ### Patch Changes
787
+
788
+ - 6780f58: fix unmount pointer capture
789
+
790
+ ## 7.0.17
791
+
792
+ ### Patch Changes
793
+
794
+ - 894c550: fix: event count
795
+
796
+ ## 7.0.16
797
+
798
+ ### Patch Changes
799
+
800
+ - c7a4220: patch: applyprops returns the same instance
801
+
802
+ ## 7.0.15
803
+
804
+ ### Patch Changes
805
+
806
+ - c5645e8: fix primitve leftovers on switch
807
+
808
+ ## 7.0.14
809
+
810
+ ### Patch Changes
811
+
812
+ - 05af996: fix: revert the is function
813
+
814
+ ## 7.0.13
815
+
816
+ ### Patch Changes
817
+
818
+ - f256558: fix(core): don't overwrite camera rotation
819
+ - 51e6fc9: fix(core): safely handle external instances
820
+
821
+ ## 7.0.12
822
+
823
+ ### Patch Changes
824
+
825
+ - 0df6073: fix: missed events
826
+
827
+ ## 7.0.11
828
+
829
+ ### Patch Changes
830
+
831
+ - 62b0a3a: fix: event order of missed pointers
832
+
833
+ ## 7.0.10
834
+
835
+ ### Patch Changes
836
+
837
+ - e019dd4: fixes
838
+
839
+ ## 7.0.9
840
+
841
+ ### Patch Changes
842
+
843
+ - cd266e4: Fix diffProps dashed keys
844
+
845
+ ## 7.0.8
846
+
847
+ ### Patch Changes
848
+
849
+ - 6f68406: Allow getCurrentViewport to receive an array
850
+
851
+ ## 7.0.7
852
+
853
+ ### Patch Changes
854
+
855
+ - 0375896: Simplify useframe, support instanced event cancelation, silence disposal
856
+
857
+ ## 7.0.6
858
+
859
+ ### Patch Changes
860
+
861
+ - fb052ad: Fix babel-env browserslist transpiling into old code"
862
+
863
+ ## 7.0.5
864
+
865
+ ### Patch Changes
866
+
867
+ - c97794a: Add useLoader.clear(Loader, input)
868
+
869
+ ## 7.0.4
870
+
871
+ ### Patch Changes
872
+
873
+ - 974ecfb: Allow elements to define attachFns for specific mount/unmount
874
+
875
+ ## 7.0.2
876
+
877
+ ### Patch Changes
878
+
879
+ - a97aca3: Add controls state field
880
+ - 4c703d6: fix rttr didn't work with r130
881
+
882
+ ## 7.0.0
883
+
884
+ ### Major Changes
885
+
886
+ - 96ae1ad: fix javascript interpreting negative renderpriority as positive
887
+
888
+ This is a major breaking change that will fix an edge-case. It will only affect you if you used negative useFrame indicies, for instance
889
+
890
+ ```jsx
891
+ useFrame(..., -1)
892
+ ```
893
+
894
+ Surprisingly this disabled auto-rendering although the documentation says positive numbers only. As of v7 this will not take over the render loop.
895
+
896
+ ```jsx
897
+ function Render() {
898
+ // Takes over the render-loop, the user has the responsibility to render
899
+ useFrame(({ gl, scene, camera }) => {
900
+ gl.render(scene, camera)
901
+ }, 1)
902
+
903
+ function RenderOnTop() {
904
+ // This will render on top of the previous call
905
+ useFrame(({ gl, ... }) => {
906
+ gl.render(...)
907
+ }, 2)
908
+
909
+ function A() {
910
+ // Will *not* take over the render-loop, negative indices can still be useful for sorting
911
+ useFrame(() => ..., -1)
912
+
913
+ function B() {
914
+ // B's useFrame will execute *after* A's
915
+ useFrame(() => ..., -2)
916
+ ```
917
+
918
+ ## 6.2.3
919
+
920
+ ### Patch Changes
921
+
922
+ - 26bc7eb: typescript changes
923
+
924
+ ## 6.2.2
925
+
926
+ ### Patch Changes
927
+
928
+ - 4f44a2c: use more helpful name with event handling in rttr
929
+
930
+ ## 6.2.1
931
+
932
+ ### Patch Changes
933
+
934
+ - Fix stopPropagation logic
935
+
936
+ ## 6.2.0
937
+
938
+ ### Minor Changes
939
+
940
+ - Allow object3d instances to be attached
941
+
942
+ ## 6.1.5
943
+
944
+ ### Patch Changes
945
+
946
+ - fix(rttr): if children is undefined return an array to map with
947
+
948
+ ## 6.1.4
949
+
950
+ ### Patch Changes
951
+
952
+ - 6faa090: Add shape to types, exclude event functions from event data
953
+
954
+ ## 6.1.3
955
+
956
+ ### Patch Changes
957
+
958
+ - 71e72c0: Fix constructor args with attached children (#1348)
959
+ - 015fc03: Only set up pointer/wheel events as passive
960
+ - a160e08: Fix event setPointerCapture and stopPropagation.
961
+
962
+ ## 6.1.2