1{"version":3,"file":"withAndroidSplashScreen.js","names":["withAndroidSplashScreen","config","splashConfig","getAndroidSplashConfig","backgroundColor","androidStatusBar","toLowerCase","WarningAggregator","addWarningAndroid","withPlugins","withAndroidSplashImages","withAndroidSplashDrawables","shouldUpdateLegacyMainActivity","withAndroidSplashLegacyMainActivity","withAndroidSplashStyles","withAndroidSplashStrings","projectRoot","_internal","packagePath","resolveFrom","version","JsonFile","read","toString","semver","lt","sdkVersion"],"sources":["../../../../src/plugins/unversioned/expo-splash-screen/withAndroidSplashScreen.ts"],"sourcesContent":["import { ConfigPlugin, WarningAggregator, withPlugins } from '@expo/config-plugins';\nimport { ExpoConfig } from '@expo/config-types';\nimport JsonFile from '@expo/json-file';\nimport resolveFrom from 'resolve-from';\nimport semver from 'semver';\n\nimport { getAndroidSplashConfig } from './getAndroidSplashConfig';\nimport { withAndroidSplashDrawables } from './withAndroidSplashDrawables';\nimport { withAndroidSplashImages } from './withAndroidSplashImages';\nimport { withAndroidSplashLegacyMainActivity } from './withAndroidSplashLegacyMainActivity';\nimport { withAndroidSplashStrings } from './withAndroidSplashStrings';\nimport { withAndroidSplashStyles } from './withAndroidSplashStyles';\n\nexport const withAndroidSplashScreen: ConfigPlugin = (config) => {\n  const splashConfig = getAndroidSplashConfig(config);\n\n  // Update the android status bar to match the splash screen\n  // androidStatusBar applies info to the app activity style.\n  const backgroundColor = splashConfig?.backgroundColor || '#ffffff';\n  if (config.androidStatusBar?.backgroundColor) {\n    if (\n      backgroundColor.toLowerCase() !== config.androidStatusBar?.backgroundColor?.toLowerCase?.()\n    ) {\n      WarningAggregator.addWarningAndroid(\n        'androidStatusBar.backgroundColor',\n        'Color conflicts with the splash.backgroundColor'\n      );\n    }\n  } else {\n    if (!config.androidStatusBar) config.androidStatusBar = {};\n    config.androidStatusBar.backgroundColor = backgroundColor;\n  }\n\n  return withPlugins(config, [\n    withAndroidSplashImages,\n    [withAndroidSplashDrawables, splashConfig],\n    ...(shouldUpdateLegacyMainActivity(config) ? [withAndroidSplashLegacyMainActivity] : []),\n    withAndroidSplashStyles,\n    withAndroidSplashStrings,\n  ]);\n};\n\nfunction shouldUpdateLegacyMainActivity(config: ExpoConfig): boolean {\n  try {\n    const projectRoot = config._internal?.projectRoot;\n    const packagePath = resolveFrom(projectRoot, 'expo-splash-screen/package.json');\n    if (packagePath) {\n      const version = JsonFile.read(packagePath).version?.toString() ?? '';\n      return semver.lt(version, '0.12.0');\n    }\n    // If expo-splash-screen didn't be installed or included in template, we check the sdkVersion instead.\n    return !!(config.sdkVersion && semver.lt(config.sdkVersion, '43.0.0'));\n  } catch {}\n  return false;\n}\n"],"mappings":";;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;;;AAEO,MAAMA,uBAAqC,GAAIC,MAAD,IAAY;EAAA;;EAC/D,MAAMC,YAAY,GAAG,IAAAC,gDAAA,EAAuBF,MAAvB,CAArB,CAD+D,CAG/D;EACA;;EACA,MAAMG,eAAe,GAAG,CAAAF,YAAY,SAAZ,IAAAA,YAAY,WAAZ,YAAAA,YAAY,CAAEE,eAAd,KAAiC,SAAzD;;EACA,6BAAIH,MAAM,CAACI,gBAAX,kDAAI,sBAAyBD,eAA7B,EAA8C;IAAA;;IAC5C,IACEA,eAAe,CAACE,WAAhB,kCAAkCL,MAAM,CAACI,gBAAzC,qFAAkC,uBAAyBD,eAA3D,qFAAkC,uBAA0CE,WAA5E,2DAAkC,mDAAlC,CADF,EAEE;MACAC,kCAAA,CAAkBC,iBAAlB,CACE,kCADF,EAEE,iDAFF;IAID;EACF,CATD,MASO;IACL,IAAI,CAACP,MAAM,CAACI,gBAAZ,EAA8BJ,MAAM,CAACI,gBAAP,GAA0B,EAA1B;IAC9BJ,MAAM,CAACI,gBAAP,CAAwBD,eAAxB,GAA0CA,eAA1C;EACD;;EAED,OAAO,IAAAK,4BAAA,EAAYR,MAAZ,EAAoB,CACzBS,kDADyB,EAEzB,CAACC,wDAAD,EAA6BT,YAA7B,CAFyB,EAGzB,IAAIU,8BAA8B,CAACX,MAAD,CAA9B,GAAyC,CAACY,0EAAD,CAAzC,GAAiF,EAArF,CAHyB,EAIzBC,kDAJyB,EAKzBC,oDALyB,CAApB,CAAP;AAOD,CA3BM;;;;AA6BP,SAASH,8BAAT,CAAwCX,MAAxC,EAAqE;EACnE,IAAI;IAAA;;IACF,MAAMe,WAAW,wBAAGf,MAAM,CAACgB,SAAV,sDAAG,kBAAkBD,WAAtC;IACA,MAAME,WAAW,GAAG,IAAAC,sBAAA,EAAYH,WAAZ,EAAyB,iCAAzB,CAApB;;IACA,IAAIE,WAAJ,EAAiB;MAAA;;MACf,MAAME,OAAO,sDAAGC,mBAAA,CAASC,IAAT,CAAcJ,WAAd,EAA2BE,OAA9B,2DAAG,uBAAoCG,QAApC,EAAH,yEAAqD,EAAlE;MACA,OAAOC,iBAAA,CAAOC,EAAP,CAAUL,OAAV,EAAmB,QAAnB,CAAP;IACD,CANC,CAOF;;;IACA,OAAO,CAAC,EAAEnB,MAAM,CAACyB,UAAP,IAAqBF,iBAAA,CAAOC,EAAP,CAAUxB,MAAM,CAACyB,UAAjB,EAA6B,QAA7B,CAAvB,CAAR;EACD,CATD,CASE,MAAM,CAAE;;EACV,OAAO,KAAP;AACD"}