1{"version":3,"file":"Orientation.js","names":["SCREEN_ORIENTATION_ATTRIBUTE","withOrientation","createAndroidManifestPlugin","setAndroidOrientation","getOrientation","config","orientation","androidManifest","mainActivity","getMainActivityOrThrow","$"],"sources":["../../src/android/Orientation.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config-types';\n\nimport { createAndroidManifestPlugin } from '../plugins/android-plugins';\nimport { AndroidManifest, getMainActivityOrThrow } from './Manifest';\n\nexport const SCREEN_ORIENTATION_ATTRIBUTE = 'android:screenOrientation';\n\nexport const withOrientation = createAndroidManifestPlugin(\n  setAndroidOrientation,\n  'withOrientation'\n);\n\nexport function getOrientation(config: Pick<ExpoConfig, 'orientation'>) {\n  return typeof config.orientation === 'string' ? config.orientation : null;\n}\n\nexport function setAndroidOrientation(\n  config: Pick<ExpoConfig, 'orientation'>,\n  androidManifest: AndroidManifest\n) {\n  const orientation = getOrientation(config);\n  // TODO: Remove this if we decide to remove any orientation configuration when not specified\n  if (!orientation) {\n    return androidManifest;\n  }\n\n  const mainActivity = getMainActivityOrThrow(androidManifest);\n\n  mainActivity.$[SCREEN_ORIENTATION_ATTRIBUTE] =\n    orientation !== 'default' ? orientation : 'unspecified';\n\n  return androidManifest;\n}\n"],"mappings":";;;;;;;;;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,4BAA4B,GAAG,2BAArC;;AAEA,MAAMC,eAAe,GAAG,IAAAC,6CAAA,EAC7BC,qBAD6B,EAE7B,iBAF6B,CAAxB;;;AAKA,SAASC,cAAT,CAAwBC,MAAxB,EAAiE;EACtE,OAAO,OAAOA,MAAM,CAACC,WAAd,KAA8B,QAA9B,GAAyCD,MAAM,CAACC,WAAhD,GAA8D,IAArE;AACD;;AAEM,SAASH,qBAAT,CACLE,MADK,EAELE,eAFK,EAGL;EACA,MAAMD,WAAW,GAAGF,cAAc,CAACC,MAAD,CAAlC,CADA,CAEA;;EACA,IAAI,CAACC,WAAL,EAAkB;IAChB,OAAOC,eAAP;EACD;;EAED,MAAMC,YAAY,GAAG,IAAAC,kCAAA,EAAuBF,eAAvB,CAArB;EAEAC,YAAY,CAACE,CAAb,CAAeV,4BAAf,IACEM,WAAW,KAAK,SAAhB,GAA4BA,WAA5B,GAA0C,aAD5C;EAGA,OAAOC,eAAP;AACD"}