@react-types/shared 3.35.0 → 3.36.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-types/shared",
3
- "version": "3.35.0",
3
+ "version": "3.36.1",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -17,5 +17,5 @@
17
17
  "peerDependencies": {
18
18
  "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
19
19
  },
20
- "gitHead": "3577a20859b9585a000010c720f6ee39c1c588cc"
20
+ "gitHead": "5ecb3333001313e83898cd07644227897e3bae1f"
21
21
  }
package/src/dnd.d.ts CHANGED
@@ -185,9 +185,10 @@ export interface DroppableCollectionReorderEvent {
185
185
  target: ItemDropTarget;
186
186
  }
187
187
 
188
+ export type DragType = string | symbol;
188
189
  export interface DragTypes {
189
190
  /** Returns whether the drag contains data of the given type. */
190
- has(type: string | symbol): boolean;
191
+ has(type: DragType | DragType[]): boolean;
191
192
  }
192
193
 
193
194
  export interface DropTargetDelegate {
package/src/events.d.ts CHANGED
@@ -13,6 +13,20 @@
13
13
  import {FocusableElement} from './dom';
14
14
  import {FocusEvent, MouseEvent, KeyboardEvent as ReactKeyboardEvent, SyntheticEvent} from 'react';
15
15
 
16
+ // Type helper to extract the target element type from an event
17
+ export type EventTargetType<T> = T extends SyntheticEvent<infer E, any> ? E : EventTarget;
18
+
19
+ // Type helper to extract the event map from a target
20
+ export type EventMapType<T extends EventTarget> = T extends Window
21
+ ? WindowEventMap
22
+ : T extends Document
23
+ ? DocumentEventMap
24
+ : T extends Element
25
+ ? HTMLElementEventMap
26
+ : T extends VisualViewport
27
+ ? VisualViewportEventMap
28
+ : GlobalEventHandlersEventMap;
29
+
16
30
  // Event bubbling can be problematic in real-world applications, so the default for React Spectrum components
17
31
  // is not to propagate. This can be overridden by calling continuePropagation() on the event.
18
32
  export type BaseEvent<T extends SyntheticEvent> = T & {