1{"version":3,"file":"DevMenu.js","sourceRoot":"","sources":["../src/DevMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,WAAW,MAAM,eAAe,CAAC;AAGxC,MAAM,UAAU,QAAQ;IACtB,WAAW,CAAC,QAAQ,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,WAAW,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,WAAW,CAAC,YAAY,EAAE,CAAC;AAC7B,CAAC;AAED,IAAI,6BAA6B,GAAG,KAAK,CAAC;AAE1C,SAAS,wBAAwB;IAC/B,IAAI,CAAC,6BAA6B,EAAE;QAClC,kBAAkB,CAAC,WAAW,CAAC,yBAAyB,EAAE,CAAC,IAAY,EAAE,EAAE;YACzE,6BAA6B,GAAG,IAAI,CAAC;YACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAEnC,IAAI,OAAO,IAAI,IAAI,EAAE;gBACnB,OAAO,EAAE,CAAC;aACX;QACH,CAAC,CAAC,CAAC;KACJ;AACH,CAAC;AAED,wBAAwB,EAAE,CAAC;AAE3B,IAAI,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAwB;IACjE,IAAI,CAAC,OAAO,EAAE;QACZ,oBAAoB;QACpB,OAAO;KACR;IAED,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;IACrB,MAAM,aAAa,GAAa,EAAE,CAAC;IAEnC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,WAAW,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAC9D,CAAC","sourcesContent":["import { DeviceEventEmitter } from 'react-native';\n\nimport ExpoDevMenu from './ExpoDevMenu';\nimport { ExpoDevMenuItem } from './ExpoDevMenu.types';\n\nexport function openMenu(): void {\n  ExpoDevMenu.openMenu();\n}\n\nexport function openProfile(): void {\n  ExpoDevMenu.openProfile();\n}\n\nexport function openSettings(): void {\n  ExpoDevMenu.openSettings();\n}\n\nlet hasRegisteredCallbackListener = false;\n\nfunction registerCallbackListener() {\n  if (!hasRegisteredCallbackListener) {\n    DeviceEventEmitter.addListener('registeredCallbackFired', (name: string) => {\n      hasRegisteredCallbackListener = true;\n      const handler = handlers.get(name);\n\n      if (handler != null) {\n        handler();\n      }\n    });\n  }\n}\n\nregisterCallbackListener();\n\nlet handlers = new Map<string, () => void>();\n\nexport async function registerDevMenuItems(items: ExpoDevMenuItem[]) {\n  if (!__DEV__) {\n    // resolve undefined\n    return;\n  }\n\n  handlers = new Map();\n  const callbackNames: string[] = [];\n\n  items.forEach((item) => {\n    handlers.set(item.name, item.callback);\n    callbackNames.push(item.name);\n  });\n\n  return await ExpoDevMenu.addDevMenuCallbacks(callbackNames);\n}\n"]}