@react-three/fiber 9.0.0-alpha.2 → 9.0.0-alpha.4

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 (32) hide show
  1. package/CHANGELOG.md +962 -522
  2. package/dist/declarations/src/core/events.d.ts +91 -69
  3. package/dist/declarations/src/core/hooks.d.ts +53 -27
  4. package/dist/declarations/src/core/index.d.ts +15 -60
  5. package/dist/declarations/src/core/loop.d.ts +31 -15
  6. package/dist/declarations/src/core/reconciler.d.ts +42 -0
  7. package/dist/declarations/src/core/renderer.d.ts +84 -40
  8. package/dist/declarations/src/core/stages.d.ts +64 -59
  9. package/dist/declarations/src/core/store.d.ts +134 -109
  10. package/dist/declarations/src/core/utils.d.ts +128 -80
  11. package/dist/declarations/src/index.d.ts +6 -10
  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 -8
  15. package/dist/declarations/src/three-types.d.ts +56 -47
  16. package/dist/declarations/src/web/Canvas.d.ts +24 -11
  17. package/dist/declarations/src/web/events.d.ts +4 -4
  18. package/dist/{index-8128f248.cjs.prod.js → loop-7224f71f.cjs.prod.js} +1375 -1295
  19. package/dist/{index-5bd4d3cf.cjs.dev.js → loop-7f1fb121.cjs.dev.js} +1375 -1295
  20. package/dist/{index-47b7622a.esm.js → loop-bdf826ba.esm.js} +1372 -1295
  21. package/dist/react-three-fiber.cjs.d.ts +1 -0
  22. package/dist/react-three-fiber.cjs.dev.js +127 -116
  23. package/dist/react-three-fiber.cjs.prod.js +127 -116
  24. package/dist/react-three-fiber.esm.js +93 -85
  25. package/native/dist/react-three-fiber-native.cjs.d.ts +1 -0
  26. package/native/dist/react-three-fiber-native.cjs.dev.js +282 -213
  27. package/native/dist/react-three-fiber-native.cjs.prod.js +282 -213
  28. package/native/dist/react-three-fiber-native.esm.js +246 -182
  29. package/native/package.json +5 -5
  30. package/package.json +18 -12
  31. package/readme.md +253 -202
  32. package/dist/declarations/src/native/polyfills.d.ts +0 -1
package/CHANGELOG.md CHANGED
@@ -1,522 +1,962 @@
1
- # @react-three/fiber
2
-
3
- ## 8.8.1
4
-
5
- ### Patch Changes
6
-
7
- - 370d3ae5: refactor: pull context bridge from its-fine
8
-
9
- ## 8.8.0
10
-
11
- ### Minor Changes
12
-
13
- - 46d8b440: bridge cross-container context
14
-
15
- ## 8.7.4
16
-
17
- ### Patch Changes
18
-
19
- - 259c8895: fix: use self to get global context before window
20
-
21
- ## 8.7.3
22
-
23
- ### Patch Changes
24
-
25
- - eb5a3be4: fix: if there is an eventsource pointerevent will be set to none
26
-
27
- ## 8.7.2
28
-
29
- ### Patch Changes
30
-
31
- - 7f801e60: fix: events in portals carry the wrong raycaster, camera, etc
32
-
33
- ## 8.7.1
34
-
35
- ### Patch Changes
36
-
37
- - 962cc270: fix: allow canvas eventsource to be a ref
38
-
39
- ## 8.7.0
40
-
41
- ### Minor Changes
42
-
43
- - f5db1b78: feat: useInstanceHandle, flushGlobalEffects
44
-
45
- ## 8.6.2
46
-
47
- ### Patch Changes
48
-
49
- - 57c12e9c: fix(types): @react-three/drei declaration files
50
-
51
- ## 8.6.1
52
-
53
- ### Patch Changes
54
-
55
- - 7a0b5670: fix(core): don't append to unmounted containers
56
-
57
- ## 8.6.0
58
-
59
- ### Minor Changes
60
-
61
- - 85c80e70: eventsource and eventprefix on the canvas component
62
-
63
- ## 8.5.1
64
-
65
- ### Patch Changes
66
-
67
- - 87821d9: fix: null-check instance.children on reconstruct
68
-
69
- ## 8.5.0
70
-
71
- ### Minor Changes
72
-
73
- - edc8252: feat: handle primitive children, auto-attach via instanceof
74
-
75
- ## 8.3.1
76
-
77
- ### Patch Changes
78
-
79
- - aaeb2b8: fix(types): accept readonly arrays for vector props
80
-
81
- ## 8.3.0
82
-
83
- ### Minor Changes
84
-
85
- - 9c450ec: feat: improve errors
86
-
87
- ## 8.2.3
88
-
89
- ### Patch Changes
90
-
91
- - b8d2eab: fix: improve useLoader signature, initial size on createRoot
92
-
93
- ## 8.2.2
94
-
95
- ### Patch Changes
96
-
97
- - acd6f04: fix: warn on stray text
98
-
99
- ## 8.2.1
100
-
101
- ### Patch Changes
102
-
103
- - 25e35a1: fix: prefer useLayoutEffect in react-native
104
-
105
- ## 8.2.0
106
-
107
- ### Minor Changes
108
-
109
- - 9770d7d: feat: expose ThreeElements interface for JSX elements
110
-
111
- ## 8.1.0
112
-
113
- ### Minor Changes
114
-
115
- - 8d0f708c: Expose position information in state.size
116
-
117
- ## 8.0.27
118
-
119
- ### Patch Changes
120
-
121
- - 7940995: fix: resume on xrsession end, export internal events
122
-
123
- ## 8.0.26
124
-
125
- ### Patch Changes
126
-
127
- - 7b6df9df: fix: infinite loop updating cam viewport
128
-
129
- ## 8.0.25
130
-
131
- ### Patch Changes
132
-
133
- - b7cd0f42: update viewport on camera changes
134
-
135
- ## 8.0.24
136
-
137
- ### Patch Changes
138
-
139
- - ee8e785: fix: attach timings
140
-
141
- ## 8.0.23
142
-
143
- ### Patch Changes
144
-
145
- - 29d03c64: revert multi attach
146
-
147
- ## 8.0.22
148
-
149
- ### Patch Changes
150
-
151
- - 419e854: fix: always prepare primitives
152
-
153
- ## 8.0.21
154
-
155
- ### Patch Changes
156
-
157
- - 3098b9b: fix: resizing in worker contexts, copy over attachments on reconstruct
158
-
159
- ## 8.0.20
160
-
161
- ### Patch Changes
162
-
163
- - 4c87bce: fix: attach, devtools, and perf fixes
164
-
165
- ## 8.0.19
166
-
167
- ### Patch Changes
168
-
169
- - 360b45a: fix: handle attach on reconstruct
170
-
171
- ## 8.0.18
172
-
173
- ### Patch Changes
174
-
175
- - be567c1: fix: suspense attach and three compat in webpack
176
-
177
- ## 8.0.17
178
-
179
- ### Patch Changes
180
-
181
- - 9e3369e: fix dom resize, improve native tree shaking
182
-
183
- ## 8.0.16
184
-
185
- ### Patch Changes
186
-
187
- - 669c45c: correctly type useLoader results
188
-
189
- ## 8.0.15
190
-
191
- ### Patch Changes
192
-
193
- - c4715d5f: allow invalidate to preempt more than 1 frame
194
-
195
- ## 8.0.14
196
-
197
- ### Patch Changes
198
-
199
- - 5559a119: Add support for recoverable errors
200
-
201
- ## 8.0.13
202
-
203
- ### Patch Changes
204
-
205
- - 9d77d8e2: fix: detach attribute removal
206
-
207
- ## 8.0.12
208
-
209
- ### Patch Changes
210
-
211
- - 3d10413f: fix portal layers
212
-
213
- ## 8.0.11
214
-
215
- ### Patch Changes
216
-
217
- - 5167b1e4: memoized.args can be undefined
218
-
219
- ## 8.0.10
220
-
221
- ### Patch Changes
222
-
223
- - eb321afd: fix: remount bug, allow portals to inject custom size
224
-
225
- ## 8.0.9
226
-
227
- ### Patch Changes
228
-
229
- - 624df949: fix: canvas unmount race condition"
230
-
231
- ## 8.0.8
232
-
233
- ### Patch Changes
234
-
235
- - 952a566: fix: react SSR
236
-
237
- ## 8.0.7
238
-
239
- ### Patch Changes
240
-
241
- - f63806b: fix: react SSR
242
-
243
- ## 8.0.6
244
-
245
- ### Patch Changes
246
-
247
- - d4bafb9: fix re-parenting, useframe not working properly in portals, attach crash
248
-
249
- ## 8.0.5
250
-
251
- ### Patch Changes
252
-
253
- - 227c328: fix pointer for root and portals
254
-
255
- ## 8.0.4
256
-
257
- ### Patch Changes
258
-
259
- - e981a72: fix: mock three color management, loosen peer dep
260
-
261
- ## 8.0.3
262
-
263
- ### Patch Changes
264
-
265
- - 3252aed: setevents needs to spread and be mirrored in portals
266
-
267
- ## 8.0.2
268
-
269
- ### Patch Changes
270
-
271
- - 8035d1f: fix: legacy mode
272
-
273
- ## 8.0.1
274
-
275
- ### Patch Changes
276
-
277
- - 26db195: add legacy flag to turn of three.colormanagement
278
-
279
- ## 8.0.0
280
-
281
- ### Major Changes
282
-
283
- - 385ba9c: v8 major, react-18 compat
284
- - 04c07b8: v8 major, react-18 compat
285
-
286
- ### Patch Changes
287
-
288
- - 347ea79: new beta for library testing
289
-
290
- ## 8.0.0-beta.0
291
-
292
- ### Major Changes
293
-
294
- - 385ba9c: v8 major, react-18 compat
295
-
296
- ## 8.0.0-beta.0
297
-
298
- ### Patch Changes
299
-
300
- - cf6316c: new beta for library testing
301
-
302
- ## 7.0.25
303
-
304
- ### Patch Changes
305
-
306
- - 8698734: Release latest patches
307
-
308
- ## 7.0.24
309
-
310
- ### Patch Changes
311
-
312
- - 7f46ddf: cleanup captured pointers when released (#1914)
313
-
314
- ## 7.0.23
315
-
316
- ### Patch Changes
317
-
318
- - 30d38b1: remove logs
319
-
320
- ## 7.0.22
321
-
322
- ### Patch Changes
323
-
324
- - 259e1fa: add camera:manual
325
-
326
- ## 7.0.21
327
-
328
- ### Patch Changes
329
-
330
- - 65e4147: up usemeasure, add last event to internals"
331
-
332
- ## 7.0.20
333
-
334
- ### Patch Changes
335
-
336
- - 54cb0fd: update react-use-measure, allow it to use the offsetSize
337
-
338
- ## 7.0.19
339
-
340
- ### Patch Changes
341
-
342
- - 7aa2eab: fix: remove zustand subcribe selector
343
-
344
- ## 7.0.18
345
-
346
- ### Patch Changes
347
-
348
- - 6780f58: fix unmount pointer capture
349
-
350
- ## 7.0.17
351
-
352
- ### Patch Changes
353
-
354
- - 894c550: fix: event count
355
-
356
- ## 7.0.16
357
-
358
- ### Patch Changes
359
-
360
- - c7a4220: patch: applyprops returns the same instance
361
-
362
- ## 7.0.15
363
-
364
- ### Patch Changes
365
-
366
- - c5645e8: fix primitve leftovers on switch
367
-
368
- ## 7.0.14
369
-
370
- ### Patch Changes
371
-
372
- - 05af996: fix: revert the is function
373
-
374
- ## 7.0.13
375
-
376
- ### Patch Changes
377
-
378
- - f256558: fix(core): don't overwrite camera rotation
379
- - 51e6fc9: fix(core): safely handle external instances
380
-
381
- ## 7.0.12
382
-
383
- ### Patch Changes
384
-
385
- - 0df6073: fix: missed events
386
-
387
- ## 7.0.11
388
-
389
- ### Patch Changes
390
-
391
- - 62b0a3a: fix: event order of missed pointers
392
-
393
- ## 7.0.10
394
-
395
- ### Patch Changes
396
-
397
- - e019dd4: fixes
398
-
399
- ## 7.0.9
400
-
401
- ### Patch Changes
402
-
403
- - cd266e4: Fix diffProps dashed keys
404
-
405
- ## 7.0.8
406
-
407
- ### Patch Changes
408
-
409
- - 6f68406: Allow getCurrentViewport to receive an array
410
-
411
- ## 7.0.7
412
-
413
- ### Patch Changes
414
-
415
- - 0375896: Simplify useframe, support instanced event cancelation, silence disposal
416
-
417
- ## 7.0.6
418
-
419
- ### Patch Changes
420
-
421
- - fb052ad: Fix babel-env browserslist transpiling into old code"
422
-
423
- ## 7.0.5
424
-
425
- ### Patch Changes
426
-
427
- - c97794a: Add useLoader.clear(Loader, input)
428
-
429
- ## 7.0.4
430
-
431
- ### Patch Changes
432
-
433
- - 974ecfb: Allow elements to define attachFns for specific mount/unmount
434
-
435
- ## 7.0.2
436
-
437
- ### Patch Changes
438
-
439
- - a97aca3: Add controls state field
440
- - 4c703d6: fix rttr didn't work with r130
441
-
442
- ## 7.0.0
443
-
444
- ### Major Changes
445
-
446
- - 96ae1ad: fix javascript interpreting negative renderpriority as positive
447
-
448
- 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
449
-
450
- ```jsx
451
- useFrame(..., -1)
452
- ```
453
-
454
- Surprisingly this disabled auto-rendering although the documentation says positive numbers only. As of v7 this will not take over the render loop.
455
-
456
- ```jsx
457
- function Render() {
458
- // Takes over the render-loop, the user has the responsibility to render
459
- useFrame(({ gl, scene, camera }) => {
460
- gl.render(scene, camera)
461
- }, 1)
462
-
463
- function RenderOnTop() {
464
- // This will render on top of the previous call
465
- useFrame(({ gl, ... }) => {
466
- gl.render(...)
467
- }, 2)
468
-
469
- function A() {
470
- // Will *not* take over the render-loop, negative indices can still be useful for sorting
471
- useFrame(() => ..., -1)
472
-
473
- function B() {
474
- // B's useFrame will execute *after* A's
475
- useFrame(() => ..., -2)
476
- ```
477
-
478
- ## 6.2.3
479
-
480
- ### Patch Changes
481
-
482
- - 26bc7eb: typescript changes
483
-
484
- ## 6.2.2
485
-
486
- ### Patch Changes
487
-
488
- - 4f44a2c: use more helpful name with event handling in rttr
489
-
490
- ## 6.2.1
491
-
492
- ### Patch Changes
493
-
494
- - Fix stopPropagation logic
495
-
496
- ## 6.2.0
497
-
498
- ### Minor Changes
499
-
500
- - Allow object3d instances to be attached
501
-
502
- ## 6.1.5
503
-
504
- ### Patch Changes
505
-
506
- - fix(rttr): if children is undefined return an array to map with
507
-
508
- ## 6.1.4
509
-
510
- ### Patch Changes
511
-
512
- - 6faa090: Add shape to types, exclude event functions from event data
513
-
514
- ## 6.1.3
515
-
516
- ### Patch Changes
517
-
518
- - 71e72c0: Fix constructor args with attached children (#1348)
519
- - 015fc03: Only set up pointer/wheel events as passive
520
- - a160e08: Fix event setPointerCapture and stopPropagation.
521
-
522
- ## 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