1 // Copyright 2022-present 650 Industries. All rights reserved.
2 
3 import React
4 import ExpoModulesCore
5 
6 public class ExpoDevMenuReactDelegateHandler: ExpoReactDelegateHandler {
7   public static var enableAutoSetup: Bool?
8 
9   private static var shouldEnableAutoSetup: Bool = {
10     // if someone else has set this explicitly, use that value
11     if enableAutoSetup != nil {
12       return enableAutoSetup!
13     }
14 
15     if !EXAppDefines.APP_DEBUG {
16       return false
17     }
18 
19     return true
20   }()
21 
22   public override func createRootView(reactDelegate: ExpoReactDelegate, bridge: RCTBridge, moduleName: String, initialProperties: [AnyHashable : Any]?) -> RCTRootView? {
23     if ExpoDevMenuReactDelegateHandler.shouldEnableAutoSetup {
24       DevMenuManager.shared.currentBridge = bridge
25     }
26     return nil
27   }
28 }
29