{"ast":null,"code":"import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nimport { CodedError, NativeModulesProxy } from 'expo-modules-core';\nimport Platform from \"react-native-web/dist/exports/Platform\";\nimport NativeModules from \"react-native-web/dist/exports/NativeModules\";\nimport { AppOwnership, ExecutionEnvironment, UserInterfaceIdiom } from \"./Constants.types\";\nimport ExponentConstants from \"./ExponentConstants\";\nexport { AppOwnership, ExecutionEnvironment, UserInterfaceIdiom };\nif (!ExponentConstants) {\n  console.warn(\"No native ExponentConstants module found, are you sure the expo-constants's module is linked properly?\");\n}\nvar rawManifest = null;\nif (NativeModulesProxy.ExpoUpdates) {\n  var updatesManifest;\n  if (NativeModulesProxy.ExpoUpdates.manifest) {\n    updatesManifest = NativeModulesProxy.ExpoUpdates.manifest;\n  } else if (NativeModulesProxy.ExpoUpdates.manifestString) {\n    updatesManifest = JSON.parse(NativeModulesProxy.ExpoUpdates.manifestString);\n  }\n  if (updatesManifest && Object.keys(updatesManifest).length > 0) {\n    rawManifest = updatesManifest;\n  }\n}\nif (NativeModules.EXDevLauncher) {\n  var devLauncherManifest;\n  if (NativeModules.EXDevLauncher.manifestString) {\n    devLauncherManifest = JSON.parse(NativeModules.EXDevLauncher.manifestString);\n  }\n  if (devLauncherManifest && Object.keys(devLauncherManifest).length > 0) {\n    rawManifest = devLauncherManifest;\n  }\n}\nif (!rawManifest && ExponentConstants && ExponentConstants.manifest) {\n  rawManifest = ExponentConstants.manifest;\n  if (typeof rawManifest === 'string') {\n    rawManifest = JSON.parse(rawManifest);\n  }\n}\nvar _ref = ExponentConstants || {},\n  name = _ref.name,\n  appOwnership = _ref.appOwnership,\n  nativeConstants = _objectWithoutProperties(_ref, [\"name\", \"appOwnership\"]);\nvar warnedAboutManifestField = false;\nvar constants = _objectSpread(_objectSpread({}, nativeConstants), {}, {\n  appOwnership: appOwnership != null ? appOwnership : null\n});\nObject.defineProperties(constants, {\n  installationId: {\n    get: function get() {\n      return nativeConstants.installationId;\n    },\n    enumerable: false\n  },\n  __unsafeNoWarnManifest: {\n    get: function get() {\n      var maybeManifest = getManifest(true);\n      if (!maybeManifest || !isAppManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: false\n  },\n  __unsafeNoWarnManifest2: {\n    get: function get() {\n      var maybeManifest = getManifest(true);\n      if (!maybeManifest || !isManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: false\n  },\n  manifest: {\n    get: function get() {\n      if (__DEV__ && !warnedAboutManifestField) {\n        console.warn(`Constants.manifest has been deprecated in favor of Constants.expoConfig.`);\n        warnedAboutManifestField = true;\n      }\n      var maybeManifest = getManifest();\n      if (!maybeManifest || !isAppManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: true\n  },\n  manifest2: {\n    get: function get() {\n      var maybeManifest = getManifest();\n      if (!maybeManifest || !isManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: true\n  },\n  expoConfig: {\n    get: function get() {\n      var maybeManifest = getManifest(true);\n      if (!maybeManifest) {\n        return null;\n      }\n      if (isManifest(maybeManifest)) {\n        var _maybeManifest$extra$, _maybeManifest$extra;\n        return (_maybeManifest$extra$ = (_maybeManifest$extra = maybeManifest.extra) == null ? void 0 : _maybeManifest$extra.expoClient) != null ? _maybeManifest$extra$ : null;\n      } else if (isAppManifest(maybeManifest)) {\n        return maybeManifest;\n      }\n      return null;\n    },\n    enumerable: true\n  },\n  expoGoConfig: {\n    get: function get() {\n      var maybeManifest = getManifest(true);\n      if (!maybeManifest) {\n        return null;\n      }\n      if (isManifest(maybeManifest)) {\n        var _maybeManifest$extra$2, _maybeManifest$extra2;\n        return (_maybeManifest$extra$2 = (_maybeManifest$extra2 = maybeManifest.extra) == null ? void 0 : _maybeManifest$extra2.expoGo) != null ? _maybeManifest$extra$2 : null;\n      } else if (isAppManifest(maybeManifest)) {\n        return maybeManifest;\n      }\n      return null;\n    },\n    enumerable: true\n  },\n  easConfig: {\n    get: function get() {\n      var maybeManifest = getManifest(true);\n      if (!maybeManifest) {\n        return null;\n      }\n      if (isManifest(maybeManifest)) {\n        var _maybeManifest$extra$3, _maybeManifest$extra3;\n        return (_maybeManifest$extra$3 = (_maybeManifest$extra3 = maybeManifest.extra) == null ? void 0 : _maybeManifest$extra3.eas) != null ? _maybeManifest$extra$3 : null;\n      } else if (isAppManifest(maybeManifest)) {\n        return maybeManifest;\n      }\n      return null;\n    },\n    enumerable: true\n  },\n  __rawManifest_TEST: {\n    get: function get() {\n      return rawManifest;\n    },\n    set: function set(value) {\n      rawManifest = value;\n    },\n    enumerable: false\n  }\n});\nfunction isAppManifest(manifest) {\n  return !isManifest(manifest);\n}\nfunction isManifest(manifest) {\n  return 'metadata' in manifest;\n}\nfunction getManifest() {\n  var suppressWarning = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n  if (!rawManifest) {\n    var invalidManifestType = rawManifest === null ? 'null' : 'undefined';\n    if (nativeConstants.executionEnvironment === ExecutionEnvironment.Bare && Platform.OS !== 'web') {\n      if (!suppressWarning) {\n        console.warn(`Constants.manifest is ${invalidManifestType} because the embedded app.config could not be read. Ensure that you have installed the expo-constants build scripts if you need to read from Constants.manifest.`);\n      }\n    } else if (nativeConstants.executionEnvironment === ExecutionEnvironment.StoreClient || nativeConstants.executionEnvironment === ExecutionEnvironment.Standalone) {\n      throw new CodedError('ERR_CONSTANTS_MANIFEST_UNAVAILABLE', `Constants.manifest is ${invalidManifestType}, must be an object.`);\n    }\n  }\n  return rawManifest;\n}\nexport default constants;","map":{"version":3,"sources":["../src/Constants.ts"],"names":[],"mappings":"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","sourcesContent":["import { ExpoConfig } from '@expo/config-types';\nimport { CodedError, NativeModulesProxy } from 'expo-modules-core';\nimport { Platform, NativeModules } from 'react-native';\n\nimport {\n  AndroidManifest,\n  AppManifest,\n  AppOwnership,\n  Constants,\n  EASConfig,\n  ExecutionEnvironment,\n  ExpoGoConfig,\n  IOSManifest,\n  Manifest,\n  NativeConstants,\n  PlatformManifest,\n  UserInterfaceIdiom,\n  WebManifest,\n} from './Constants.types';\nimport ExponentConstants from './ExponentConstants';\n\nexport {\n  AndroidManifest,\n  AppOwnership,\n  Constants,\n  ExecutionEnvironment,\n  IOSManifest,\n  NativeConstants,\n  PlatformManifest,\n  UserInterfaceIdiom,\n  WebManifest,\n};\n\nif (!ExponentConstants) {\n  console.warn(\n    \"No native ExponentConstants module found, are you sure the expo-constants's module is linked properly?\"\n  );\n}\n\nlet rawManifest: AppManifest | Manifest | null = null;\n// If expo-updates defines a non-empty manifest, prefer that one\nif (NativeModulesProxy.ExpoUpdates) {\n  let updatesManifest;\n  if (NativeModulesProxy.ExpoUpdates.manifest) {\n    updatesManifest = NativeModulesProxy.ExpoUpdates.manifest;\n  } else if (NativeModulesProxy.ExpoUpdates.manifestString) {\n    updatesManifest = JSON.parse(NativeModulesProxy.ExpoUpdates.manifestString);\n  }\n  if (updatesManifest && Object.keys(updatesManifest).length > 0) {\n    rawManifest = updatesManifest;\n  }\n}\n\n// If dev-launcher defines a non-empty manifest, prefer that one\nif (NativeModules.EXDevLauncher) {\n  let devLauncherManifest;\n  if (NativeModules.EXDevLauncher.manifestString) {\n    devLauncherManifest = JSON.parse(NativeModules.EXDevLauncher.manifestString);\n  }\n\n  if (devLauncherManifest && Object.keys(devLauncherManifest).length > 0) {\n    rawManifest = devLauncherManifest;\n  }\n}\n\n// Fall back to ExponentConstants.manifest if we don't have one from Updates\nif (!rawManifest && ExponentConstants && ExponentConstants.manifest) {\n  rawManifest = ExponentConstants.manifest;\n  // On Android we pass the manifest in JSON form so this step is necessary\n  if (typeof rawManifest === 'string') {\n    rawManifest = JSON.parse(rawManifest);\n  }\n}\n\nconst { name, appOwnership, ...nativeConstants } = (ExponentConstants || {}) as any;\n\nlet warnedAboutManifestField = false;\n\nconst constants: Constants = {\n  ...nativeConstants,\n  // Ensure this is null in bare workflow\n  appOwnership: appOwnership ?? null,\n};\n\nObject.defineProperties(constants, {\n  installationId: {\n    get() {\n      return nativeConstants.installationId;\n    },\n    enumerable: false,\n  },\n  /**\n   * Use `manifest` property by default.\n   * This property is only used for internal purposes.\n   * It behaves similarly to the original one, but suppresses warning upon no manifest available.\n   * `expo-asset` uses it to prevent users from seeing mentioned warning.\n   */\n  __unsafeNoWarnManifest: {\n    get(): AppManifest | Manifest | null {\n      const maybeManifest = getManifest(true);\n      if (!maybeManifest || !isAppManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: false,\n  },\n  __unsafeNoWarnManifest2: {\n    get(): Manifest | null {\n      const maybeManifest = getManifest(true);\n      if (!maybeManifest || !isManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: false,\n  },\n  manifest: {\n    get(): AppManifest | null {\n      if (__DEV__ && !warnedAboutManifestField) {\n        console.warn(`Constants.manifest has been deprecated in favor of Constants.expoConfig.`);\n        warnedAboutManifestField = true;\n      }\n\n      const maybeManifest = getManifest();\n      if (!maybeManifest || !isAppManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: true,\n  },\n  manifest2: {\n    get(): Manifest | null {\n      const maybeManifest = getManifest();\n      if (!maybeManifest || !isManifest(maybeManifest)) {\n        return null;\n      }\n      return maybeManifest;\n    },\n    enumerable: true,\n  },\n  expoConfig: {\n    get():\n      | (ExpoConfig & {\n          /**\n           * Only present during development using @expo/cli.\n           */\n          hostUri?: string;\n        })\n      | null {\n      const maybeManifest = getManifest(true);\n      if (!maybeManifest) {\n        return null;\n      }\n\n      if (isManifest(maybeManifest)) {\n        return maybeManifest.extra?.expoClient ?? null;\n      } else if (isAppManifest(maybeManifest)) {\n        return maybeManifest;\n      }\n\n      return null;\n    },\n    enumerable: true,\n  },\n  expoGoConfig: {\n    get(): ExpoGoConfig | null {\n      const maybeManifest = getManifest(true);\n      if (!maybeManifest) {\n        return null;\n      }\n\n      if (isManifest(maybeManifest)) {\n        return maybeManifest.extra?.expoGo ?? null;\n      } else if (isAppManifest(maybeManifest)) {\n        return maybeManifest;\n      }\n\n      return null;\n    },\n    enumerable: true,\n  },\n  easConfig: {\n    get(): EASConfig | null {\n      const maybeManifest = getManifest(true);\n      if (!maybeManifest) {\n        return null;\n      }\n\n      if (isManifest(maybeManifest)) {\n        return maybeManifest.extra?.eas ?? null;\n      } else if (isAppManifest(maybeManifest)) {\n        return maybeManifest;\n      }\n\n      return null;\n    },\n    enumerable: true,\n  },\n  __rawManifest_TEST: {\n    get(): AppManifest | Manifest | null {\n      return rawManifest;\n    },\n    set(value: AppManifest | Manifest | null) {\n      rawManifest = value;\n    },\n    enumerable: false,\n  },\n});\n\nfunction isAppManifest(manifest: AppManifest | Manifest): manifest is AppManifest {\n  return !isManifest(manifest);\n}\n\nfunction isManifest(manifest: AppManifest | Manifest): manifest is Manifest {\n  return 'metadata' in manifest;\n}\n\nfunction getManifest(suppressWarning = false): AppManifest | Manifest | null {\n  if (!rawManifest) {\n    const invalidManifestType = rawManifest === null ? 'null' : 'undefined';\n    if (\n      nativeConstants.executionEnvironment === ExecutionEnvironment.Bare &&\n      Platform.OS !== 'web'\n    ) {\n      if (!suppressWarning) {\n        console.warn(\n          `Constants.manifest is ${invalidManifestType} because the embedded app.config could not be read. Ensure that you have installed the expo-constants build scripts if you need to read from Constants.manifest.`\n        );\n      }\n    } else if (\n      nativeConstants.executionEnvironment === ExecutionEnvironment.StoreClient ||\n      nativeConstants.executionEnvironment === ExecutionEnvironment.Standalone\n    ) {\n      // If we somehow get here, this is a truly exceptional state to be in.\n      // Constants.manifest should *always* be defined in those contexts.\n      throw new CodedError(\n        'ERR_CONSTANTS_MANIFEST_UNAVAILABLE',\n        `Constants.manifest is ${invalidManifestType}, must be an object.`\n      );\n    }\n  }\n  return rawManifest;\n}\n\nexport default constants as Constants;\n"],"sourceRoot":""},"metadata":{},"sourceType":"module"}