@samitouri / QOS-React / commits / 1cfd256685

Fix circular module imports causing file size increase (#15231)

* Fix circular module imports causing file size increase

Dominic Gannaway committed Mar 27, 2019 at 21:17 UTC 1cfd256685c673511090f7be273cf8740a9cf594
2 files changed +15 -2
packages/react-dom/src/client/ReactDOMComponent.js
+6
@@ -15,6 +15,7 @@ import {canUseDOM} from 'shared/ExecutionEnvironment';
15 import warningWithoutStack from 'shared/warningWithoutStack';
16 import type {ReactEventResponderEventType} from 'shared/ReactTypes';
17 import type {DOMTopLevelEventType} from 'events/TopLevelEventTypes';
18 +import {setListenToResponderEventTypes} from '../events/DOMEventResponderSystem';
19
20 import {
21 getValueForAttribute,
@@ -1337,3 +1338,8 @@ export function listenToEventResponderEventTypes(
1338 }
1339 }
1340 }
1341 +
1342 +// We can remove this once the event API is stable and out of a flag
1343 +if (enableEventAPI) {
1344 + setListenToResponderEventTypes(listenToEventResponderEventTypes);
1345 +}
packages/react-dom/src/events/DOMEventResponderSystem.js
+9 -2
@@ -24,11 +24,18 @@ import {interactiveUpdates} from 'events/ReactGenericBatching';
24 import {executeDispatch} from 'events/EventPluginUtils';
25 import type {Fiber} from 'react-reconciler/src/ReactFiber';
26
27 -import {listenToEventResponderEventTypes} from '../client/ReactDOMComponent';
27 import {getClosestInstanceFromNode} from '../client/ReactDOMComponentTree';
28
29 import {enableEventAPI} from 'shared/ReactFeatureFlags';
30
31 +let listenToResponderEventTypesImpl;
32 +
33 +export function setListenToResponderEventTypes(
34 + _listenToResponderEventTypesImpl: Function,
35 +) {
36 + listenToResponderEventTypesImpl = _listenToResponderEventTypesImpl;
37 +}
38 +
39 const rootEventTypesToEventComponents: Map<
40 DOMTopLevelEventType | string,
41 Set<Fiber>,
@@ -156,7 +163,7 @@ DOMEventResponderContext.prototype.addRootEventTypes = function(
163 rootEventTypes: Array<ReactEventResponderEventType>,
164 ) {
165 const element = this.eventTarget.ownerDocument;
159 - listenToEventResponderEventTypes(rootEventTypes, element);
166 + listenToResponderEventTypesImpl(rootEventTypes, element);
167 const eventComponent = this._fiber;
168 for (let i = 0; i < rootEventTypes.length; i++) {
169 const rootEventType = rootEventTypes[i];