1import React from 'react';
2import { Platform } from 'react-native';
3
4import ErrorToastContainer from './toast/ErrorToastContainer';
5
6declare const process: any;
7
8if (!global.setImmediate) {
9  global.setImmediate = function (fn) {
10    return setTimeout(fn, 0);
11  };
12}
13
14if (process.env.NODE_ENV === 'development' && Platform.OS === 'web') {
15  // Stack traces are big with React Navigation
16
17  require('./LogBox').default.install();
18}
19
20export function withErrorOverlay(Comp: React.ComponentType<any>) {
21  if (process.env.NODE_ENV === 'production') {
22    return Comp;
23  }
24  return function ErrorOverlay(props: any) {
25    return (
26      <ErrorToastContainer>
27        <Comp {...props} />
28      </ErrorToastContainer>
29    );
30  };
31}
32