1{"version":3,"file":"AllowBackup.js","names":["withAllowBackup","createAndroidManifestPlugin","setAllowBackup","getAllowBackup","config","android","allowBackup","androidManifest","mainApplication","getMainApplication","$","String","getAllowBackupFromManifest"],"sources":["../../src/android/AllowBackup.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config-types';\n\nimport { createAndroidManifestPlugin } from '../plugins/android-plugins';\nimport { AndroidManifest, getMainApplication, StringBoolean } from './Manifest';\n\nexport const withAllowBackup = createAndroidManifestPlugin(setAllowBackup, 'withAllowBackup');\n\nexport function getAllowBackup(config: Pick<ExpoConfig, 'android'>) {\n  // Defaults to true.\n  // https://docs.expo.dev/versions/latest/config/app/#allowbackup\n  return config.android?.allowBackup ?? true;\n}\n\nexport function setAllowBackup(\n  config: Pick<ExpoConfig, 'android'>,\n  androidManifest: AndroidManifest\n) {\n  const allowBackup = getAllowBackup(config);\n\n  const mainApplication = getMainApplication(androidManifest);\n  if (mainApplication?.$) {\n    mainApplication.$['android:allowBackup'] = String(allowBackup) as StringBoolean;\n  }\n\n  return androidManifest;\n}\n\nexport function getAllowBackupFromManifest(androidManifest: AndroidManifest): boolean | null {\n  const mainApplication = getMainApplication(androidManifest);\n\n  if (mainApplication?.$) {\n    return String(mainApplication.$['android:allowBackup']) === 'true';\n  }\n\n  return null;\n}\n"],"mappings":";;;;;;;;;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,eAAe,GAAG,IAAAC,6CAAA,EAA4BC,cAA5B,EAA4C,iBAA5C,CAAxB;;;AAEA,SAASC,cAAT,CAAwBC,MAAxB,EAA6D;EAAA;;EAClE;EACA;EACA,mDAAOA,MAAM,CAACC,OAAd,oDAAO,gBAAgBC,WAAvB,yEAAsC,IAAtC;AACD;;AAEM,SAASJ,cAAT,CACLE,MADK,EAELG,eAFK,EAGL;EACA,MAAMD,WAAW,GAAGH,cAAc,CAACC,MAAD,CAAlC;EAEA,MAAMI,eAAe,GAAG,IAAAC,8BAAA,EAAmBF,eAAnB,CAAxB;;EACA,IAAIC,eAAJ,aAAIA,eAAJ,eAAIA,eAAe,CAAEE,CAArB,EAAwB;IACtBF,eAAe,CAACE,CAAhB,CAAkB,qBAAlB,IAA2CC,MAAM,CAACL,WAAD,CAAjD;EACD;;EAED,OAAOC,eAAP;AACD;;AAEM,SAASK,0BAAT,CAAoCL,eAApC,EAAsF;EAC3F,MAAMC,eAAe,GAAG,IAAAC,8BAAA,EAAmBF,eAAnB,CAAxB;;EAEA,IAAIC,eAAJ,aAAIA,eAAJ,eAAIA,eAAe,CAAEE,CAArB,EAAwB;IACtB,OAAOC,MAAM,CAACH,eAAe,CAACE,CAAhB,CAAkB,qBAAlB,CAAD,CAAN,KAAqD,MAA5D;EACD;;EAED,OAAO,IAAP;AACD"}