@samitouri / QOS-React-2 / commits / 644c9c4e1c

[Flare] useListener -> useResponder (#362)

Dominic Gannaway committed Aug 2, 2019 at 18:14 UTC 644c9c4e1c2ca587275c061b0394ea4be45fdfc7
2 files changed +22 -14
src/backend/ReactDebugHooks.js
+17 -14
@@ -8,7 +8,11 @@
8
9 import ErrorStackParser from 'error-stack-parser';
10
11 -import type { ReactContext, ReactEventResponder } from './types';
11 +import type {
12 + ReactContext,
13 + ReactEventResponder,
14 + ReactEventResponderListener,
15 +} from './types';
16
17 type Fiber = any;
18 type Hook = any;
@@ -30,8 +34,6 @@ type HookLogEntry = {
34 value: mixed,
35 };
36
33 -const emptyObject = {};
34 -
37 let hookLog: Array<HookLogEntry> = [];
38
39 // Primitives
@@ -216,19 +218,20 @@ function useMemo<T>(
218 return value;
219 }
220
219 -function useListener(
221 +function useResponder(
222 responder: ReactEventResponder<any, any>,
221 - hookProps: ?Object
222 -): void {
223 + listenerProps: Object
224 +): ReactEventResponderListener<any, any> {
225 + // Don't put the actual event responder object in, just its displayName
226 const value = {
224 - responder: responder.displayName || 'EventComponent',
225 - props: hookProps || emptyObject,
227 + responder: responder.displayName || 'EventResponder',
228 + props: listenerProps,
229 + };
230 + hookLog.push({ primitive: 'Responder', stackError: new Error(), value });
231 + return {
232 + responder,
233 + props: listenerProps,
234 };
227 - hookLog.push({
228 - primitive: 'Listener',
229 - stackError: new Error(),
230 - value,
231 - });
235 }
236
237 const Dispatcher = {
@@ -243,7 +246,7 @@ const Dispatcher = {
246 useReducer,
247 useRef,
248 useState,
246 - useListener,
249 + useResponder,
250 };
251
252 // Inspect
src/backend/types.js
+5
@@ -371,3 +371,8 @@ export type ReactEventResponder<E, C> = {
371 | null
372 | ((context: C, props: Object, state: Object) => void),
373 };
374 +
375 +export type ReactEventResponderListener<E, C> = {|
376 + props: Object,
377 + responder: ReactEventResponder<E, C>,
378 +|};