@expofp/renderer 3.41.0 → 3.42.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/dist/types/events.d.ts +14 -5
- package/package.json +2 -2
package/dist/types/events.d.ts
CHANGED
|
@@ -27,7 +27,11 @@ export interface PointerEventData<T extends RenderableDef = RenderableDef> {
|
|
|
27
27
|
* A fresh instance per event, so keeping a reference to it is safe.
|
|
28
28
|
*/
|
|
29
29
|
point: PlanPoint;
|
|
30
|
-
/**
|
|
30
|
+
/**
|
|
31
|
+
* Ends the event's delivery: neither the ancestors of the layer whose handler is running nor any
|
|
32
|
+
* def farther along the ray receives it. A handler that wants only the nearest of several
|
|
33
|
+
* overlapping defs calls this.
|
|
34
|
+
*/
|
|
31
35
|
stopPropagation(): void;
|
|
32
36
|
/** The DOM event this was dispatched from. */
|
|
33
37
|
nativeEvent: MouseEvent;
|
|
@@ -59,10 +63,15 @@ export interface PointerMissedEventData {
|
|
|
59
63
|
* with any is raycast together with its whole subtree; a layer that is off screen — hidden, or under
|
|
60
64
|
* something hidden — is not picked at all.
|
|
61
65
|
*
|
|
62
|
-
* **Events travel upward.** The nearest
|
|
63
|
-
* the same handler,
|
|
64
|
-
* def that was hit. Overlapping defs
|
|
65
|
-
*
|
|
66
|
+
* **Events travel upward and away.** The nearest def's layer handler runs first, then each ancestor
|
|
67
|
+
* that declares the same handler, then the next def along the ray, until one calls
|
|
68
|
+
* {@link PointerEventData.stopPropagation}; `event.def` stays the def that was hit. Overlapping defs
|
|
69
|
+
* deliver one event apiece, even within one layer. Defs at the same distance, such as coplanar flat
|
|
70
|
+
* defs, arrive in the order their slots were claimed (mount order), not paint order;
|
|
71
|
+
* `Pointer/Overlap` pins that.
|
|
72
|
+
*
|
|
73
|
+
* **Only interactive layers are hit.** A layer with no handlers is not raycast, so it never shields
|
|
74
|
+
* a def behind it: a booth behind a wall still receives the event.
|
|
66
75
|
*
|
|
67
76
|
* **Handlers return nothing.** One that mutates defs calls `update()` afterward, like any other code.
|
|
68
77
|
*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@expofp/renderer",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.42.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/expofp/efp-app.git",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"troika-three-text": "^0.52.5",
|
|
43
43
|
"tslib": "^2.3.0",
|
|
44
44
|
"webgl-memory": "^1.1.3",
|
|
45
|
-
"@expofp/geometry": "3.
|
|
45
|
+
"@expofp/geometry": "3.42.0"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
48
|
"@react-three/test-renderer": "^9.1.0",
|