1 // Copyright 2015-present 650 Industries. All rights reserved.
2 
3 @objc(DevMenuModule)
4 open class DevMenuModule: NSObject {
5   deinit {
6     // cleanup registered callbacks when the bridge is deallocated to prevent these leaking into other (potentially unrelated) bridges
7     DevMenuManager.shared.registeredCallbacks = []
8   }
9 
10   // MARK: JavaScript API
11 
12   @objc
13   func openMenu() {
14     DevMenuManager.shared.openMenu()
15   }
16 
17   @objc
18   func addDevMenuCallbacks(_ names: [String], resolve: RCTPromiseResolveBlock, reject: RCTPromiseRejectBlock) {
19     DevMenuManager.shared.registeredCallbacks = names
20     return resolve(nil)
21   }
22 }
23