-
Notifications
You must be signed in to change notification settings - Fork 24.2k
/
setUpBatchedBridge.js
59 lines (55 loc) · 1.98 KB
/
setUpBatchedBridge.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow strict-local
* @format
*/
'use strict';
let registerModule;
if (global.RN$Bridgeless === true && global.RN$registerCallableModule) {
registerModule = global.RN$registerCallableModule;
} else {
const BatchedBridge = require('../BatchedBridge/BatchedBridge');
registerModule = (
moduleName:
| $TEMPORARY$string<'GlobalPerformanceLogger'>
| $TEMPORARY$string<'HMRClient'>
| $TEMPORARY$string<'HeapCapture'>
| $TEMPORARY$string<'JSTimers'>
| $TEMPORARY$string<'RCTDeviceEventEmitter'>
| $TEMPORARY$string<'RCTLog'>
| $TEMPORARY$string<'RCTNativeAppEventEmitter'>
| $TEMPORARY$string<'SamplingProfiler'>
| $TEMPORARY$string<'Systrace'>,
/* $FlowFixMe[missing-local-annot] The type annotation(s) required by
* Flow's LTI update could not be added via codemod */
factory,
) => BatchedBridge.registerLazyCallableModule(moduleName, factory);
}
registerModule('Systrace', () => require('../Performance/Systrace'));
if (!(global.RN$Bridgeless === true)) {
registerModule('JSTimers', () => require('./Timers/JSTimers'));
}
registerModule('HeapCapture', () => require('../HeapCapture/HeapCapture'));
registerModule('SamplingProfiler', () =>
require('../Performance/SamplingProfiler'),
);
registerModule('RCTLog', () => require('../Utilities/RCTLog'));
registerModule(
'RCTDeviceEventEmitter',
() => require('../EventEmitter/RCTDeviceEventEmitter').default,
);
registerModule('RCTNativeAppEventEmitter', () =>
require('../EventEmitter/RCTNativeAppEventEmitter'),
);
registerModule('GlobalPerformanceLogger', () =>
require('../Utilities/GlobalPerformanceLogger'),
);
if (__DEV__) {
registerModule('HMRClient', () => require('../Utilities/HMRClient'));
} else {
registerModule('HMRClient', () => require('../Utilities/HMRClientProdShim'));
}