Skip to content

Commit b93a8a9

Browse files
authored
Experimental event API: refactor responder modules for lifecycle inclusion (#15322)
1 parent 937d262 commit b93a8a9

File tree

11 files changed

+485
-478
lines changed

11 files changed

+485
-478
lines changed

packages/events/EventTypes.js

+23-17
Original file line numberDiff line numberDiff line change
@@ -10,34 +10,40 @@
1010
import type {AnyNativeEvent} from 'events/PluginModuleType';
1111
import type {ReactEventResponderEventType} from 'shared/ReactTypes';
1212

13-
export type EventResponderContext = {
14-
event: AnyNativeEvent,
15-
eventTarget: Element | Document,
16-
eventType: string,
17-
isPassive: () => boolean,
18-
isPassiveSupported: () => boolean,
19-
dispatchEvent: <E>(
20-
eventObject: E,
21-
{
22-
capture?: boolean,
23-
discrete?: boolean,
24-
stopPropagation?: boolean,
25-
},
13+
export type ResponderEvent = {
14+
nativeEvent: AnyNativeEvent,
15+
target: Element | Document,
16+
type: string,
17+
passive: boolean,
18+
passiveSupported: boolean,
19+
};
20+
21+
export type ResponderDispatchEventOptions = {
22+
capture?: boolean,
23+
discrete?: boolean,
24+
stopPropagation?: boolean,
25+
};
26+
27+
export type ResponderContext = {
28+
dispatchEvent: (
29+
eventObject: Object,
30+
otpions: ResponderDispatchEventOptions,
2631
) => void,
2732
isTargetWithinElement: (
2833
childTarget: Element | Document,
2934
parentTarget: Element | Document,
3035
) => boolean,
31-
isTargetOwned: (Element | Document) => boolean,
3236
isTargetWithinEventComponent: (Element | Document) => boolean,
3337
isPositionWithinTouchHitTarget: (x: number, y: number) => boolean,
3438
addRootEventTypes: (
39+
document: Document,
3540
rootEventTypes: Array<ReactEventResponderEventType>,
3641
) => void,
3742
removeRootEventTypes: (
3843
rootEventTypes: Array<ReactEventResponderEventType>,
3944
) => void,
40-
requestOwnership: (target: Element | Document | null) => boolean,
41-
releaseOwnership: (target: Element | Document | null) => boolean,
42-
withAsyncDispatching: (func: () => void) => void,
45+
hasOwnership: () => boolean,
46+
requestOwnership: () => boolean,
47+
releaseOwnership: () => boolean,
48+
setTimeout: (func: () => void, timeout: number) => TimeoutID,
4349
};

0 commit comments

Comments
 (0)