@depup/expo__cli 55.0.16-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (782) hide show
  1. package/README.md +55 -0
  2. package/add-module.js +8 -0
  3. package/build/bin/cli +278 -0
  4. package/build/bin/cli.map +1 -0
  5. package/build/metro-require/require.js +608 -0
  6. package/build/src/api/endpoint.js +39 -0
  7. package/build/src/api/endpoint.js.map +1 -0
  8. package/build/src/api/getExpoGoIntermediateCertificate.js +23 -0
  9. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -0
  10. package/build/src/api/getExpoSchema.js +97 -0
  11. package/build/src/api/getExpoSchema.js.map +1 -0
  12. package/build/src/api/getNativeModuleVersions.js +37 -0
  13. package/build/src/api/getNativeModuleVersions.js.map +1 -0
  14. package/build/src/api/getProjectDevelopmentCertificate.js +26 -0
  15. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -0
  16. package/build/src/api/getVersions.js +29 -0
  17. package/build/src/api/getVersions.js.map +1 -0
  18. package/build/src/api/graphql/client.js +204 -0
  19. package/build/src/api/graphql/client.js.map +1 -0
  20. package/build/src/api/graphql/queries/AppQuery.js +40 -0
  21. package/build/src/api/graphql/queries/AppQuery.js.map +1 -0
  22. package/build/src/api/graphql/queries/UserQuery.js +63 -0
  23. package/build/src/api/graphql/queries/UserQuery.js.map +1 -0
  24. package/build/src/api/rest/cache/FileSystemResponseCache.js +184 -0
  25. package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -0
  26. package/build/src/api/rest/cache/ResponseCache.js +116 -0
  27. package/build/src/api/rest/cache/ResponseCache.js.map +1 -0
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +76 -0
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -0
  30. package/build/src/api/rest/client.js +168 -0
  31. package/build/src/api/rest/client.js.map +1 -0
  32. package/build/src/api/rest/client.types.js +6 -0
  33. package/build/src/api/rest/client.types.js.map +1 -0
  34. package/build/src/api/rest/wrapFetchWithBaseUrl.js +32 -0
  35. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -0
  36. package/build/src/api/rest/wrapFetchWithOffline.js +26 -0
  37. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -0
  38. package/build/src/api/rest/wrapFetchWithProgress.js +108 -0
  39. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -0
  40. package/build/src/api/rest/wrapFetchWithUserAgent.js +34 -0
  41. package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -0
  42. package/build/src/api/settings.js +33 -0
  43. package/build/src/api/settings.js.map +1 -0
  44. package/build/src/api/updateDevelopmentSession.js +100 -0
  45. package/build/src/api/updateDevelopmentSession.js.map +1 -0
  46. package/build/src/api/user/UserSettings.js +183 -0
  47. package/build/src/api/user/UserSettings.js.map +1 -0
  48. package/build/src/api/user/actions.js +167 -0
  49. package/build/src/api/user/actions.js.map +1 -0
  50. package/build/src/api/user/expoSsoLauncher.js +149 -0
  51. package/build/src/api/user/expoSsoLauncher.js.map +1 -0
  52. package/build/src/api/user/otp.js +177 -0
  53. package/build/src/api/user/otp.js.map +1 -0
  54. package/build/src/api/user/user.js +154 -0
  55. package/build/src/api/user/user.js.map +1 -0
  56. package/build/src/config/configAsync.js +180 -0
  57. package/build/src/config/configAsync.js.map +1 -0
  58. package/build/src/config/index.js +101 -0
  59. package/build/src/config/index.js.map +1 -0
  60. package/build/src/customize/customizeAsync.js +57 -0
  61. package/build/src/customize/customizeAsync.js.map +1 -0
  62. package/build/src/customize/generate.js +94 -0
  63. package/build/src/customize/generate.js.map +1 -0
  64. package/build/src/customize/index.js +51 -0
  65. package/build/src/customize/index.js.map +1 -0
  66. package/build/src/customize/resolveOptions.js +23 -0
  67. package/build/src/customize/resolveOptions.js.map +1 -0
  68. package/build/src/customize/templates.js +189 -0
  69. package/build/src/customize/templates.js.map +1 -0
  70. package/build/src/customize/typescript.js +81 -0
  71. package/build/src/customize/typescript.js.map +1 -0
  72. package/build/src/events/builder.js +6 -0
  73. package/build/src/events/builder.js.map +1 -0
  74. package/build/src/events/index.js +132 -0
  75. package/build/src/events/index.js.map +1 -0
  76. package/build/src/events/stream.js +303 -0
  77. package/build/src/events/stream.js.map +1 -0
  78. package/build/src/events/types.js +6 -0
  79. package/build/src/events/types.js.map +1 -0
  80. package/build/src/expoUpdatesExports.js +28 -0
  81. package/build/src/expoUpdatesExports.js.map +1 -0
  82. package/build/src/export/createMetadataJson.js +55 -0
  83. package/build/src/export/createMetadataJson.js.map +1 -0
  84. package/build/src/export/embed/exportEager.js +33 -0
  85. package/build/src/export/embed/exportEager.js.map +1 -0
  86. package/build/src/export/embed/exportEmbedAsync.js +457 -0
  87. package/build/src/export/embed/exportEmbedAsync.js.map +1 -0
  88. package/build/src/export/embed/exportServer.js +353 -0
  89. package/build/src/export/embed/exportServer.js.map +1 -0
  90. package/build/src/export/embed/index.js +161 -0
  91. package/build/src/export/embed/index.js.map +1 -0
  92. package/build/src/export/embed/resolveOptions.js +159 -0
  93. package/build/src/export/embed/resolveOptions.js.map +1 -0
  94. package/build/src/export/embed/xcodeCompilerLogger.js +148 -0
  95. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -0
  96. package/build/src/export/exportApp.js +387 -0
  97. package/build/src/export/exportApp.js.map +1 -0
  98. package/build/src/export/exportAssets.js +245 -0
  99. package/build/src/export/exportAssets.js.map +1 -0
  100. package/build/src/export/exportAsync.js +103 -0
  101. package/build/src/export/exportAsync.js.map +1 -0
  102. package/build/src/export/exportDomComponents.js +185 -0
  103. package/build/src/export/exportDomComponents.js.map +1 -0
  104. package/build/src/export/exportHermes.js +251 -0
  105. package/build/src/export/exportHermes.js.map +1 -0
  106. package/build/src/export/exportStaticAsync.js +623 -0
  107. package/build/src/export/exportStaticAsync.js.map +1 -0
  108. package/build/src/export/favicon.js +138 -0
  109. package/build/src/export/favicon.js.map +1 -0
  110. package/build/src/export/getPublicExpoManifest.js +39 -0
  111. package/build/src/export/getPublicExpoManifest.js.map +1 -0
  112. package/build/src/export/getResolvedLocales.js +52 -0
  113. package/build/src/export/getResolvedLocales.js.map +1 -0
  114. package/build/src/export/html.js +33 -0
  115. package/build/src/export/html.js.map +1 -0
  116. package/build/src/export/index.js +146 -0
  117. package/build/src/export/index.js.map +1 -0
  118. package/build/src/export/metroAssetLocalPath.js +130 -0
  119. package/build/src/export/metroAssetLocalPath.js.map +1 -0
  120. package/build/src/export/persistMetroAssets.js +269 -0
  121. package/build/src/export/persistMetroAssets.js.map +1 -0
  122. package/build/src/export/publicFolder.js +61 -0
  123. package/build/src/export/publicFolder.js.map +1 -0
  124. package/build/src/export/resolveOptions.js +92 -0
  125. package/build/src/export/resolveOptions.js.map +1 -0
  126. package/build/src/export/saveAssets.js +273 -0
  127. package/build/src/export/saveAssets.js.map +1 -0
  128. package/build/src/export/web/exportWebAsync.js +57 -0
  129. package/build/src/export/web/exportWebAsync.js.map +1 -0
  130. package/build/src/export/web/index.js +92 -0
  131. package/build/src/export/web/index.js.map +1 -0
  132. package/build/src/export/web/resolveOptions.js +18 -0
  133. package/build/src/export/web/resolveOptions.js.map +1 -0
  134. package/build/src/export/writeContents.js +19 -0
  135. package/build/src/export/writeContents.js.map +1 -0
  136. package/build/src/install/applyPlugins.js +81 -0
  137. package/build/src/install/applyPlugins.js.map +1 -0
  138. package/build/src/install/checkPackages.js +157 -0
  139. package/build/src/install/checkPackages.js.map +1 -0
  140. package/build/src/install/fixPackages.js +111 -0
  141. package/build/src/install/fixPackages.js.map +1 -0
  142. package/build/src/install/index.js +64 -0
  143. package/build/src/install/index.js.map +1 -0
  144. package/build/src/install/installAsync.js +203 -0
  145. package/build/src/install/installAsync.js.map +1 -0
  146. package/build/src/install/installExpoPackage.js +124 -0
  147. package/build/src/install/installExpoPackage.js.map +1 -0
  148. package/build/src/install/resolveOptions.js +65 -0
  149. package/build/src/install/resolveOptions.js.map +1 -0
  150. package/build/src/install/utils/autoAddConfigPlugins.js +90 -0
  151. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -0
  152. package/build/src/install/utils/checkPackagesCompatibility.js +66 -0
  153. package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -0
  154. package/build/src/install/utils/parsePackageSpecifier.js +24 -0
  155. package/build/src/install/utils/parsePackageSpecifier.js.map +1 -0
  156. package/build/src/lint/ESlintPrerequisite.js +163 -0
  157. package/build/src/lint/ESlintPrerequisite.js.map +1 -0
  158. package/build/src/lint/index.js +68 -0
  159. package/build/src/lint/index.js.map +1 -0
  160. package/build/src/lint/lintAsync.js +183 -0
  161. package/build/src/lint/lintAsync.js.map +1 -0
  162. package/build/src/lint/resolveOptions.js +115 -0
  163. package/build/src/lint/resolveOptions.js.map +1 -0
  164. package/build/src/log.js +106 -0
  165. package/build/src/log.js.map +1 -0
  166. package/build/src/login/index.js +92 -0
  167. package/build/src/login/index.js.map +1 -0
  168. package/build/src/logout/index.js +70 -0
  169. package/build/src/logout/index.js.map +1 -0
  170. package/build/src/prebuild/clearNativeFolder.js +202 -0
  171. package/build/src/prebuild/clearNativeFolder.js.map +1 -0
  172. package/build/src/prebuild/configureProjectAsync.js +106 -0
  173. package/build/src/prebuild/configureProjectAsync.js.map +1 -0
  174. package/build/src/prebuild/copyTemplateFiles.js +95 -0
  175. package/build/src/prebuild/copyTemplateFiles.js.map +1 -0
  176. package/build/src/prebuild/ensureConfigAsync.js +32 -0
  177. package/build/src/prebuild/ensureConfigAsync.js.map +1 -0
  178. package/build/src/prebuild/index.js +122 -0
  179. package/build/src/prebuild/index.js.map +1 -0
  180. package/build/src/prebuild/prebuildAsync.js +192 -0
  181. package/build/src/prebuild/prebuildAsync.js.map +1 -0
  182. package/build/src/prebuild/renameTemplateAppName.js +135 -0
  183. package/build/src/prebuild/renameTemplateAppName.js.map +1 -0
  184. package/build/src/prebuild/resolveLocalTemplate.js +72 -0
  185. package/build/src/prebuild/resolveLocalTemplate.js.map +1 -0
  186. package/build/src/prebuild/resolveOptions.js +222 -0
  187. package/build/src/prebuild/resolveOptions.js.map +1 -0
  188. package/build/src/prebuild/resolveTemplate.js +216 -0
  189. package/build/src/prebuild/resolveTemplate.js.map +1 -0
  190. package/build/src/prebuild/updateFromTemplate.js +148 -0
  191. package/build/src/prebuild/updateFromTemplate.js.map +1 -0
  192. package/build/src/prebuild/updatePackageJson.js +305 -0
  193. package/build/src/prebuild/updatePackageJson.js.map +1 -0
  194. package/build/src/prebuild/validateTemplatePlatforms.js +85 -0
  195. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -0
  196. package/build/src/register/index.js +70 -0
  197. package/build/src/register/index.js.map +1 -0
  198. package/build/src/register/registerAsync.js +39 -0
  199. package/build/src/register/registerAsync.js.map +1 -0
  200. package/build/src/run/android/index.js +139 -0
  201. package/build/src/run/android/index.js.map +1 -0
  202. package/build/src/run/android/resolveDevice.js +28 -0
  203. package/build/src/run/android/resolveDevice.js.map +1 -0
  204. package/build/src/run/android/resolveGradlePropsAsync.js +82 -0
  205. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -0
  206. package/build/src/run/android/resolveInstallApkName.js +67 -0
  207. package/build/src/run/android/resolveInstallApkName.js.map +1 -0
  208. package/build/src/run/android/resolveLaunchProps.js +44 -0
  209. package/build/src/run/android/resolveLaunchProps.js.map +1 -0
  210. package/build/src/run/android/resolveOptions.js +43 -0
  211. package/build/src/run/android/resolveOptions.js.map +1 -0
  212. package/build/src/run/android/runAndroidAsync.js +157 -0
  213. package/build/src/run/android/runAndroidAsync.js.map +1 -0
  214. package/build/src/run/ensureNativeProject.js +53 -0
  215. package/build/src/run/ensureNativeProject.js.map +1 -0
  216. package/build/src/run/hints.js +46 -0
  217. package/build/src/run/hints.js.map +1 -0
  218. package/build/src/run/index.js +124 -0
  219. package/build/src/run/index.js.map +1 -0
  220. package/build/src/run/ios/XcodeBuild.js +382 -0
  221. package/build/src/run/ios/XcodeBuild.js.map +1 -0
  222. package/build/src/run/ios/XcodeBuild.types.js +6 -0
  223. package/build/src/run/ios/XcodeBuild.types.js.map +1 -0
  224. package/build/src/run/ios/appleDevice/AppleDevice.js +316 -0
  225. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -0
  226. package/build/src/run/ios/appleDevice/ClientManager.js +207 -0
  227. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -0
  228. package/build/src/run/ios/appleDevice/client/AFCClient.js +248 -0
  229. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -0
  230. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +149 -0
  231. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -0
  232. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +113 -0
  233. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -0
  234. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +186 -0
  235. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -0
  236. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +133 -0
  237. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -0
  238. package/build/src/run/ios/appleDevice/client/ServiceClient.js +38 -0
  239. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -0
  240. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +146 -0
  241. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -0
  242. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +153 -0
  243. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -0
  244. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +365 -0
  245. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -0
  246. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +167 -0
  247. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -0
  248. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +153 -0
  249. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -0
  250. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +111 -0
  251. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -0
  252. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +100 -0
  253. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -0
  254. package/build/src/run/ios/codeSigning/Security.js +116 -0
  255. package/build/src/run/ios/codeSigning/Security.js.map +1 -0
  256. package/build/src/run/ios/codeSigning/configureCodeSigning.js +108 -0
  257. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -0
  258. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +165 -0
  259. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -0
  260. package/build/src/run/ios/codeSigning/settings.js +27 -0
  261. package/build/src/run/ios/codeSigning/settings.js.map +1 -0
  262. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +67 -0
  263. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -0
  264. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +103 -0
  265. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -0
  266. package/build/src/run/ios/index.js +137 -0
  267. package/build/src/run/ios/index.js.map +1 -0
  268. package/build/src/run/ios/launchApp.js +142 -0
  269. package/build/src/run/ios/launchApp.js.map +1 -0
  270. package/build/src/run/ios/options/appleDestinations.js +126 -0
  271. package/build/src/run/ios/options/appleDestinations.js.map +1 -0
  272. package/build/src/run/ios/options/promptDevice.js +64 -0
  273. package/build/src/run/ios/options/promptDevice.js.map +1 -0
  274. package/build/src/run/ios/options/resolveDevice.js +151 -0
  275. package/build/src/run/ios/options/resolveDevice.js.map +1 -0
  276. package/build/src/run/ios/options/resolveNativeScheme.js +147 -0
  277. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -0
  278. package/build/src/run/ios/options/resolveOptions.js +66 -0
  279. package/build/src/run/ios/options/resolveOptions.js.map +1 -0
  280. package/build/src/run/ios/options/resolveXcodeProject.js +50 -0
  281. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -0
  282. package/build/src/run/ios/runIosAsync.js +255 -0
  283. package/build/src/run/ios/runIosAsync.js.map +1 -0
  284. package/build/src/run/ios/validateExternalBinary.js +113 -0
  285. package/build/src/run/ios/validateExternalBinary.js.map +1 -0
  286. package/build/src/run/resolveBundlerProps.js +38 -0
  287. package/build/src/run/resolveBundlerProps.js.map +1 -0
  288. package/build/src/run/startBundler.js +119 -0
  289. package/build/src/run/startBundler.js.map +1 -0
  290. package/build/src/serve/index.js +95 -0
  291. package/build/src/serve/index.js.map +1 -0
  292. package/build/src/serve/serveAsync.js +227 -0
  293. package/build/src/serve/serveAsync.js.map +1 -0
  294. package/build/src/start/detectDevClient.js +53 -0
  295. package/build/src/start/detectDevClient.js.map +1 -0
  296. package/build/src/start/doctor/Prerequisite.js +60 -0
  297. package/build/src/start/doctor/Prerequisite.js.map +1 -0
  298. package/build/src/start/doctor/SecurityBinPrerequisite.js +38 -0
  299. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -0
  300. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +144 -0
  301. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -0
  302. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +106 -0
  303. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -0
  304. package/build/src/start/doctor/apple/XcodePrerequisite.js +239 -0
  305. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -0
  306. package/build/src/start/doctor/apple/XcrunPrerequisite.js +88 -0
  307. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -0
  308. package/build/src/start/doctor/dependencies/bundledNativeModules.js +112 -0
  309. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -0
  310. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +192 -0
  311. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -0
  312. package/build/src/start/doctor/dependencies/getMissingPackages.js +108 -0
  313. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -0
  314. package/build/src/start/doctor/dependencies/getVersionedPackages.js +165 -0
  315. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -0
  316. package/build/src/start/doctor/dependencies/resolvePackages.js +95 -0
  317. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -0
  318. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +262 -0
  319. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -0
  320. package/build/src/start/doctor/ngrok/ExternalModule.js +214 -0
  321. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -0
  322. package/build/src/start/doctor/ngrok/NgrokResolver.js +33 -0
  323. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -0
  324. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +205 -0
  325. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -0
  326. package/build/src/start/doctor/typescript/updateTSConfig.js +144 -0
  327. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -0
  328. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +164 -0
  329. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -0
  330. package/build/src/start/index.js +151 -0
  331. package/build/src/start/index.js.map +1 -0
  332. package/build/src/start/interface/KeyPressHandler.js +126 -0
  333. package/build/src/start/interface/KeyPressHandler.js.map +1 -0
  334. package/build/src/start/interface/cliExtensionMenuItemHandler.js +173 -0
  335. package/build/src/start/interface/cliExtensionMenuItemHandler.js.map +1 -0
  336. package/build/src/start/interface/commandsTable.js +273 -0
  337. package/build/src/start/interface/commandsTable.js.map +1 -0
  338. package/build/src/start/interface/createDevToolsMenuItems.js +159 -0
  339. package/build/src/start/interface/createDevToolsMenuItems.js.map +1 -0
  340. package/build/src/start/interface/interactiveActions.js +225 -0
  341. package/build/src/start/interface/interactiveActions.js.map +1 -0
  342. package/build/src/start/interface/startInterface.js +261 -0
  343. package/build/src/start/interface/startInterface.js.map +1 -0
  344. package/build/src/start/platforms/AppIdResolver.js +55 -0
  345. package/build/src/start/platforms/AppIdResolver.js.map +1 -0
  346. package/build/src/start/platforms/DeviceManager.js +74 -0
  347. package/build/src/start/platforms/DeviceManager.js.map +1 -0
  348. package/build/src/start/platforms/ExpoGoInstaller.js +167 -0
  349. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -0
  350. package/build/src/start/platforms/PlatformManager.js +149 -0
  351. package/build/src/start/platforms/PlatformManager.js.map +1 -0
  352. package/build/src/start/platforms/android/ADBServer.js +139 -0
  353. package/build/src/start/platforms/android/ADBServer.js.map +1 -0
  354. package/build/src/start/platforms/android/AndroidAppIdResolver.js +54 -0
  355. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -0
  356. package/build/src/start/platforms/android/AndroidDeviceManager.js +216 -0
  357. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -0
  358. package/build/src/start/platforms/android/AndroidPlatformManager.js +80 -0
  359. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -0
  360. package/build/src/start/platforms/android/AndroidSdk.js +79 -0
  361. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -0
  362. package/build/src/start/platforms/android/activateWindow.js +117 -0
  363. package/build/src/start/platforms/android/activateWindow.js.map +1 -0
  364. package/build/src/start/platforms/android/adb.js +367 -0
  365. package/build/src/start/platforms/android/adb.js.map +1 -0
  366. package/build/src/start/platforms/android/adbReverse.js +129 -0
  367. package/build/src/start/platforms/android/adbReverse.js.map +1 -0
  368. package/build/src/start/platforms/android/emulator.js +185 -0
  369. package/build/src/start/platforms/android/emulator.js.map +1 -0
  370. package/build/src/start/platforms/android/getDevices.js +39 -0
  371. package/build/src/start/platforms/android/getDevices.js.map +1 -0
  372. package/build/src/start/platforms/android/gradle.js +125 -0
  373. package/build/src/start/platforms/android/gradle.js.map +1 -0
  374. package/build/src/start/platforms/android/promptAndroidDevice.js +82 -0
  375. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -0
  376. package/build/src/start/platforms/ios/AppleAppIdResolver.js +76 -0
  377. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -0
  378. package/build/src/start/platforms/ios/AppleDeviceManager.js +283 -0
  379. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -0
  380. package/build/src/start/platforms/ios/ApplePlatformManager.js +34 -0
  381. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -0
  382. package/build/src/start/platforms/ios/assertSystemRequirements.js +22 -0
  383. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -0
  384. package/build/src/start/platforms/ios/devicectl.js +398 -0
  385. package/build/src/start/platforms/ios/devicectl.js.map +1 -0
  386. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +122 -0
  387. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -0
  388. package/build/src/start/platforms/ios/getBestSimulator.js +148 -0
  389. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -0
  390. package/build/src/start/platforms/ios/promptAppleDevice.js +72 -0
  391. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -0
  392. package/build/src/start/platforms/ios/simctl.js +386 -0
  393. package/build/src/start/platforms/ios/simctl.js.map +1 -0
  394. package/build/src/start/platforms/ios/simctlLogging.js +276 -0
  395. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -0
  396. package/build/src/start/platforms/ios/xcrun.js +74 -0
  397. package/build/src/start/platforms/ios/xcrun.js.map +1 -0
  398. package/build/src/start/project/devices.js +92 -0
  399. package/build/src/start/project/devices.js.map +1 -0
  400. package/build/src/start/project/dotExpo.js +109 -0
  401. package/build/src/start/project/dotExpo.js.map +1 -0
  402. package/build/src/start/project/settings.js +17 -0
  403. package/build/src/start/project/settings.js.map +1 -0
  404. package/build/src/start/resolveOptions.js +173 -0
  405. package/build/src/start/resolveOptions.js.map +1 -0
  406. package/build/src/start/server/AsyncNgrok.js +269 -0
  407. package/build/src/start/server/AsyncNgrok.js.map +1 -0
  408. package/build/src/start/server/AsyncWsTunnel.js +156 -0
  409. package/build/src/start/server/AsyncWsTunnel.js.map +1 -0
  410. package/build/src/start/server/Bonjour.js +103 -0
  411. package/build/src/start/server/Bonjour.js.map +1 -0
  412. package/build/src/start/server/BundlerDevServer.js +410 -0
  413. package/build/src/start/server/BundlerDevServer.js.map +1 -0
  414. package/build/src/start/server/DevServerManager.js +259 -0
  415. package/build/src/start/server/DevServerManager.js.map +1 -0
  416. package/build/src/start/server/DevToolsPlugin.js +60 -0
  417. package/build/src/start/server/DevToolsPlugin.js.map +1 -0
  418. package/build/src/start/server/DevToolsPlugin.schema.js +79 -0
  419. package/build/src/start/server/DevToolsPlugin.schema.js.map +1 -0
  420. package/build/src/start/server/DevToolsPluginCliExtensionExecutor.js +119 -0
  421. package/build/src/start/server/DevToolsPluginCliExtensionExecutor.js.map +1 -0
  422. package/build/src/start/server/DevToolsPluginCliExtensionResults.js +61 -0
  423. package/build/src/start/server/DevToolsPluginCliExtensionResults.js.map +1 -0
  424. package/build/src/start/server/DevToolsPluginManager.js +60 -0
  425. package/build/src/start/server/DevToolsPluginManager.js.map +1 -0
  426. package/build/src/start/server/DevelopmentSession.js +132 -0
  427. package/build/src/start/server/DevelopmentSession.js.map +1 -0
  428. package/build/src/start/server/MCP.js +106 -0
  429. package/build/src/start/server/MCP.js.map +1 -0
  430. package/build/src/start/server/MCPDevToolsPluginCLIExtensions.js +86 -0
  431. package/build/src/start/server/MCPDevToolsPluginCLIExtensions.js.map +1 -0
  432. package/build/src/start/server/UrlCreator.js +219 -0
  433. package/build/src/start/server/UrlCreator.js.map +1 -0
  434. package/build/src/start/server/createMCPDevToolsExtensionSchema.js +67 -0
  435. package/build/src/start/server/createMCPDevToolsExtensionSchema.js.map +1 -0
  436. package/build/src/start/server/getStaticRenderFunctions.js +171 -0
  437. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -0
  438. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +39 -0
  439. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -0
  440. package/build/src/start/server/metro/MetroBundlerDevServer.js +1654 -0
  441. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -0
  442. package/build/src/start/server/metro/MetroTerminalReporter.js +438 -0
  443. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -0
  444. package/build/src/start/server/metro/TerminalReporter.js +180 -0
  445. package/build/src/start/server/metro/TerminalReporter.js.map +1 -0
  446. package/build/src/start/server/metro/TerminalReporter.types.js +6 -0
  447. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -0
  448. package/build/src/start/server/metro/createExpoAutolinkingResolver.js +123 -0
  449. package/build/src/start/server/metro/createExpoAutolinkingResolver.js.map +1 -0
  450. package/build/src/start/server/metro/createExpoFallbackResolver.js +143 -0
  451. package/build/src/start/server/metro/createExpoFallbackResolver.js.map +1 -0
  452. package/build/src/start/server/metro/createServerComponentsMiddleware.js +501 -0
  453. package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -0
  454. package/build/src/start/server/metro/createServerRouteMiddleware.js +229 -0
  455. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -0
  456. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +49 -0
  457. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -0
  458. package/build/src/start/server/metro/debugging/MessageHandler.js +30 -0
  459. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -0
  460. package/build/src/start/server/metro/debugging/attachAtlas.js +103 -0
  461. package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -0
  462. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +127 -0
  463. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -0
  464. package/build/src/start/server/metro/debugging/createHandlersFactory.js +58 -0
  465. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -0
  466. package/build/src/start/server/metro/debugging/getDebuggerType.js +20 -0
  467. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -0
  468. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +44 -0
  469. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -0
  470. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +30 -0
  471. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
  472. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +27 -0
  473. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
  474. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +33 -0
  475. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
  476. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +56 -0
  477. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -0
  478. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +49 -0
  479. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -0
  480. package/build/src/start/server/metro/debugging/pageIsSupported.js +17 -0
  481. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -0
  482. package/build/src/start/server/metro/debugging/types.js +6 -0
  483. package/build/src/start/server/metro/debugging/types.js.map +1 -0
  484. package/build/src/start/server/metro/dev-server/compression.js +45 -0
  485. package/build/src/start/server/metro/dev-server/compression.js.map +1 -0
  486. package/build/src/start/server/metro/dev-server/createEventSocket.js +103 -0
  487. package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -0
  488. package/build/src/start/server/metro/dev-server/createMessageSocket.js +129 -0
  489. package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -0
  490. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +82 -0
  491. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -0
  492. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +27 -0
  493. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -0
  494. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +43 -0
  495. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -0
  496. package/build/src/start/server/metro/dev-server/utils/socketMessages.js +41 -0
  497. package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -0
  498. package/build/src/start/server/metro/errors/FailedToResolveNativeOnlyModuleError.js +17 -0
  499. package/build/src/start/server/metro/errors/FailedToResolveNativeOnlyModuleError.js.map +1 -0
  500. package/build/src/start/server/metro/externals.js +89 -0
  501. package/build/src/start/server/metro/externals.js.map +1 -0
  502. package/build/src/start/server/metro/fetchRouterManifest.js +83 -0
  503. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -0
  504. package/build/src/start/server/metro/getCssModulesFromBundler.js +114 -0
  505. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -0
  506. package/build/src/start/server/metro/instantiateMetro.js +492 -0
  507. package/build/src/start/server/metro/instantiateMetro.js.map +1 -0
  508. package/build/src/start/server/metro/log-box/LogBoxLog.js +211 -0
  509. package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -0
  510. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +124 -0
  511. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -0
  512. package/build/src/start/server/metro/log-box/formatProjectFilePath.js +46 -0
  513. package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -0
  514. package/build/src/start/server/metro/metroErrorInterface.js +403 -0
  515. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -0
  516. package/build/src/start/server/metro/metroErrors.js +27 -0
  517. package/build/src/start/server/metro/metroErrors.js.map +1 -0
  518. package/build/src/start/server/metro/metroVirtualModules.js +92 -0
  519. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -0
  520. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +62 -0
  521. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -0
  522. package/build/src/start/server/metro/resolveLoader.js +68 -0
  523. package/build/src/start/server/metro/resolveLoader.js.map +1 -0
  524. package/build/src/start/server/metro/router.js +218 -0
  525. package/build/src/start/server/metro/router.js.map +1 -0
  526. package/build/src/start/server/metro/runServer-fork.js +179 -0
  527. package/build/src/start/server/metro/runServer-fork.js.map +1 -0
  528. package/build/src/start/server/metro/serializeHtml.js +138 -0
  529. package/build/src/start/server/metro/serializeHtml.js.map +1 -0
  530. package/build/src/start/server/metro/symbolicate.js +6 -0
  531. package/build/src/start/server/metro/symbolicate.js.map +1 -0
  532. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +103 -0
  533. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -0
  534. package/build/src/start/server/metro/withMetroErrorReportingResolver.js +266 -0
  535. package/build/src/start/server/metro/withMetroErrorReportingResolver.js.map +1 -0
  536. package/build/src/start/server/metro/withMetroMultiPlatform.js +748 -0
  537. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -0
  538. package/build/src/start/server/metro/withMetroResolvers.js +110 -0
  539. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -0
  540. package/build/src/start/server/metro/withMetroSupervisingTransformWorker.js +63 -0
  541. package/build/src/start/server/metro/withMetroSupervisingTransformWorker.js.map +1 -0
  542. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +32 -0
  543. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -0
  544. package/build/src/start/server/middleware/CorsMiddleware.js +92 -0
  545. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -0
  546. package/build/src/start/server/middleware/CreateFileMiddleware.js +166 -0
  547. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -0
  548. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +78 -0
  549. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -0
  550. package/build/src/start/server/middleware/DomComponentsMiddleware.js +138 -0
  551. package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -0
  552. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +288 -0
  553. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -0
  554. package/build/src/start/server/middleware/ExpoMiddleware.js +121 -0
  555. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -0
  556. package/build/src/start/server/middleware/FaviconMiddleware.js +52 -0
  557. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -0
  558. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +29 -0
  559. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -0
  560. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +116 -0
  561. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -0
  562. package/build/src/start/server/middleware/ManifestMiddleware.js +362 -0
  563. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -0
  564. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +103 -0
  565. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -0
  566. package/build/src/start/server/middleware/ServeStaticMiddleware.js +85 -0
  567. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -0
  568. package/build/src/start/server/middleware/inspector/CdpClient.js +81 -0
  569. package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -0
  570. package/build/src/start/server/middleware/inspector/JsInspector.js +123 -0
  571. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -0
  572. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +91 -0
  573. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -0
  574. package/build/src/start/server/middleware/inspector/middlwareMutations.js +30 -0
  575. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -0
  576. package/build/src/start/server/middleware/metroOptions.js +367 -0
  577. package/build/src/start/server/middleware/metroOptions.js.map +1 -0
  578. package/build/src/start/server/middleware/mutations.js +33 -0
  579. package/build/src/start/server/middleware/mutations.js.map +1 -0
  580. package/build/src/start/server/middleware/resolveAssets.js +154 -0
  581. package/build/src/start/server/middleware/resolveAssets.js.map +1 -0
  582. package/build/src/start/server/middleware/resolvePlatform.js +71 -0
  583. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -0
  584. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +38 -0
  585. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -0
  586. package/build/src/start/server/middleware/server.types.js +6 -0
  587. package/build/src/start/server/middleware/server.types.js.map +1 -0
  588. package/build/src/start/server/openPlatforms.js +33 -0
  589. package/build/src/start/server/openPlatforms.js.map +1 -0
  590. package/build/src/start/server/platformBundlers.js +39 -0
  591. package/build/src/start/server/platformBundlers.js.map +1 -0
  592. package/build/src/start/server/serverLogLikeMetro.js +309 -0
  593. package/build/src/start/server/serverLogLikeMetro.js.map +1 -0
  594. package/build/src/start/server/type-generation/expo-env.js +51 -0
  595. package/build/src/start/server/type-generation/expo-env.js.map +1 -0
  596. package/build/src/start/server/type-generation/routes.js +510 -0
  597. package/build/src/start/server/type-generation/routes.js.map +1 -0
  598. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +79 -0
  599. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -0
  600. package/build/src/start/server/type-generation/tsconfig.js +122 -0
  601. package/build/src/start/server/type-generation/tsconfig.js.map +1 -0
  602. package/build/src/start/server/webTemplate.js +111 -0
  603. package/build/src/start/server/webTemplate.js.map +1 -0
  604. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +316 -0
  605. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -0
  606. package/build/src/start/server/webpack/compile.js +101 -0
  607. package/build/src/start/server/webpack/compile.js.map +1 -0
  608. package/build/src/start/server/webpack/formatWebpackMessages.js +106 -0
  609. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -0
  610. package/build/src/start/server/webpack/resolveFromProject.js +63 -0
  611. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -0
  612. package/build/src/start/server/webpack/tls.js +128 -0
  613. package/build/src/start/server/webpack/tls.js.map +1 -0
  614. package/build/src/start/startAsync.js +204 -0
  615. package/build/src/start/startAsync.js.map +1 -0
  616. package/build/src/types.d.ts +2 -0
  617. package/build/src/utils/FileNotifier.js +138 -0
  618. package/build/src/utils/FileNotifier.js.map +1 -0
  619. package/build/src/utils/ansi.js +22 -0
  620. package/build/src/utils/ansi.js.map +1 -0
  621. package/build/src/utils/args.js +141 -0
  622. package/build/src/utils/args.js.map +1 -0
  623. package/build/src/utils/array.js +92 -0
  624. package/build/src/utils/array.js.map +1 -0
  625. package/build/src/utils/build-cache-providers/helpers.js +61 -0
  626. package/build/src/utils/build-cache-providers/helpers.js.map +1 -0
  627. package/build/src/utils/build-cache-providers/index.js +283 -0
  628. package/build/src/utils/build-cache-providers/index.js.map +1 -0
  629. package/build/src/utils/cocoapods.js +258 -0
  630. package/build/src/utils/cocoapods.js.map +1 -0
  631. package/build/src/utils/codesigning.js +395 -0
  632. package/build/src/utils/codesigning.js.map +1 -0
  633. package/build/src/utils/createFileTransform.js +34 -0
  634. package/build/src/utils/createFileTransform.js.map +1 -0
  635. package/build/src/utils/createTempPath.js +68 -0
  636. package/build/src/utils/createTempPath.js.map +1 -0
  637. package/build/src/utils/delay.js +58 -0
  638. package/build/src/utils/delay.js.map +1 -0
  639. package/build/src/utils/dir.js +121 -0
  640. package/build/src/utils/dir.js.map +1 -0
  641. package/build/src/utils/downloadAppAsync.js +98 -0
  642. package/build/src/utils/downloadAppAsync.js.map +1 -0
  643. package/build/src/utils/downloadExpoGoAsync.js +170 -0
  644. package/build/src/utils/downloadExpoGoAsync.js.map +1 -0
  645. package/build/src/utils/editor.js +527 -0
  646. package/build/src/utils/editor.js.map +1 -0
  647. package/build/src/utils/env.js +266 -0
  648. package/build/src/utils/env.js.map +1 -0
  649. package/build/src/utils/errors.js +134 -0
  650. package/build/src/utils/errors.js.map +1 -0
  651. package/build/src/utils/exit.js +210 -0
  652. package/build/src/utils/exit.js.map +1 -0
  653. package/build/src/utils/expoUpdatesCli.js +120 -0
  654. package/build/src/utils/expoUpdatesCli.js.map +1 -0
  655. package/build/src/utils/fetch.js +41 -0
  656. package/build/src/utils/fetch.js.map +1 -0
  657. package/build/src/utils/filePath.js +42 -0
  658. package/build/src/utils/filePath.js.map +1 -0
  659. package/build/src/utils/findUp.js +61 -0
  660. package/build/src/utils/findUp.js.map +1 -0
  661. package/build/src/utils/fn.js +44 -0
  662. package/build/src/utils/fn.js.map +1 -0
  663. package/build/src/utils/freeport.js +70 -0
  664. package/build/src/utils/freeport.js.map +1 -0
  665. package/build/src/utils/getOrPromptApplicationId.js +259 -0
  666. package/build/src/utils/getOrPromptApplicationId.js.map +1 -0
  667. package/build/src/utils/getRunningProcess.js +181 -0
  668. package/build/src/utils/getRunningProcess.js.map +1 -0
  669. package/build/src/utils/git.js +132 -0
  670. package/build/src/utils/git.js.map +1 -0
  671. package/build/src/utils/glob.js +46 -0
  672. package/build/src/utils/glob.js.map +1 -0
  673. package/build/src/utils/interactive.js +17 -0
  674. package/build/src/utils/interactive.js.map +1 -0
  675. package/build/src/utils/ip.js +63 -0
  676. package/build/src/utils/ip.js.map +1 -0
  677. package/build/src/utils/isModuleSymlinked.js +54 -0
  678. package/build/src/utils/isModuleSymlinked.js.map +1 -0
  679. package/build/src/utils/link.js +55 -0
  680. package/build/src/utils/link.js.map +1 -0
  681. package/build/src/utils/mergeGitIgnorePaths.js +189 -0
  682. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -0
  683. package/build/src/utils/modifyConfigAsync.js +106 -0
  684. package/build/src/utils/modifyConfigAsync.js.map +1 -0
  685. package/build/src/utils/modifyConfigPlugins.js +79 -0
  686. package/build/src/utils/modifyConfigPlugins.js.map +1 -0
  687. package/build/src/utils/net.js +43 -0
  688. package/build/src/utils/net.js.map +1 -0
  689. package/build/src/utils/nodeEnv.js +168 -0
  690. package/build/src/utils/nodeEnv.js.map +1 -0
  691. package/build/src/utils/nodeModules.js +52 -0
  692. package/build/src/utils/nodeModules.js.map +1 -0
  693. package/build/src/utils/npm.js +222 -0
  694. package/build/src/utils/npm.js.map +1 -0
  695. package/build/src/utils/obj.js +59 -0
  696. package/build/src/utils/obj.js.map +1 -0
  697. package/build/src/utils/open.js +36 -0
  698. package/build/src/utils/open.js.map +1 -0
  699. package/build/src/utils/ora.js +113 -0
  700. package/build/src/utils/ora.js.map +1 -0
  701. package/build/src/utils/plist.js +108 -0
  702. package/build/src/utils/plist.js.map +1 -0
  703. package/build/src/utils/port.js +196 -0
  704. package/build/src/utils/port.js.map +1 -0
  705. package/build/src/utils/profile.js +94 -0
  706. package/build/src/utils/profile.js.map +1 -0
  707. package/build/src/utils/progress.js +76 -0
  708. package/build/src/utils/progress.js.map +1 -0
  709. package/build/src/utils/prompts.js +151 -0
  710. package/build/src/utils/prompts.js.map +1 -0
  711. package/build/src/utils/qr.js +186 -0
  712. package/build/src/utils/qr.js.map +1 -0
  713. package/build/src/utils/resolveArgs.js +236 -0
  714. package/build/src/utils/resolveArgs.js.map +1 -0
  715. package/build/src/utils/resolveGlobal.js +195 -0
  716. package/build/src/utils/resolveGlobal.js.map +1 -0
  717. package/build/src/utils/scheme.js +212 -0
  718. package/build/src/utils/scheme.js.map +1 -0
  719. package/build/src/utils/stream.js +31 -0
  720. package/build/src/utils/stream.js.map +1 -0
  721. package/build/src/utils/strings.js +33 -0
  722. package/build/src/utils/strings.js.map +1 -0
  723. package/build/src/utils/tar.js +168 -0
  724. package/build/src/utils/tar.js.map +1 -0
  725. package/build/src/utils/telemetry/Telemetry.js +131 -0
  726. package/build/src/utils/telemetry/Telemetry.js.map +1 -0
  727. package/build/src/utils/telemetry/clients/FetchClient.js +91 -0
  728. package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -0
  729. package/build/src/utils/telemetry/clients/FetchDetachedClient.js +86 -0
  730. package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -0
  731. package/build/src/utils/telemetry/clients/flushFetchDetached.js +39 -0
  732. package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -0
  733. package/build/src/utils/telemetry/events.js +20 -0
  734. package/build/src/utils/telemetry/events.js.map +1 -0
  735. package/build/src/utils/telemetry/index.js +72 -0
  736. package/build/src/utils/telemetry/index.js.map +1 -0
  737. package/build/src/utils/telemetry/types.js +6 -0
  738. package/build/src/utils/telemetry/types.js.map +1 -0
  739. package/build/src/utils/telemetry/utils/constants.js +23 -0
  740. package/build/src/utils/telemetry/utils/constants.js.map +1 -0
  741. package/build/src/utils/telemetry/utils/context.js +115 -0
  742. package/build/src/utils/telemetry/utils/context.js.map +1 -0
  743. package/build/src/utils/template.js +48 -0
  744. package/build/src/utils/template.js.map +1 -0
  745. package/build/src/utils/terminal.js +15 -0
  746. package/build/src/utils/terminal.js.map +1 -0
  747. package/build/src/utils/tsconfig/evaluateTsConfig.js +87 -0
  748. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -0
  749. package/build/src/utils/tsconfig/loadTsConfigPaths.js +84 -0
  750. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -0
  751. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +94 -0
  752. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -0
  753. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +62 -0
  754. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -0
  755. package/build/src/utils/url.js +92 -0
  756. package/build/src/utils/url.js.map +1 -0
  757. package/build/src/utils/validateApplicationId.js +255 -0
  758. package/build/src/utils/validateApplicationId.js.map +1 -0
  759. package/build/src/utils/variadic.js +132 -0
  760. package/build/src/utils/variadic.js.map +1 -0
  761. package/build/src/whoami/index.js +69 -0
  762. package/build/src/whoami/index.js.map +1 -0
  763. package/build/src/whoami/whoamiAsync.js +75 -0
  764. package/build/src/whoami/whoamiAsync.js.map +1 -0
  765. package/changes.json +106 -0
  766. package/internal/unstable-expo-updates-exports.d.ts +31 -0
  767. package/internal/unstable-expo-updates-exports.js +3 -0
  768. package/package.json +275 -0
  769. package/static/loading-page/index.html +363 -0
  770. package/static/shims/react-native-web/dist/cjs/exports/AppRegistry/AppContainer.js +13 -0
  771. package/static/shims/react-native-web/dist/cjs/exports/BackHandler/index.js +10 -0
  772. package/static/shims/react-native-web/dist/exports/AppRegistry/AppContainer.js +12 -0
  773. package/static/shims/react-native-web/dist/exports/BackHandler/index.js +7 -0
  774. package/static/template/+html.tsx +28 -0
  775. package/static/template/+native-intent.ts +9 -0
  776. package/static/template/.eslintrc.js +5 -0
  777. package/static/template/[...rsc]+api.ts +16 -0
  778. package/static/template/babel.config.js +6 -0
  779. package/static/template/eslint.config.js +10 -0
  780. package/static/template/index.html +36 -0
  781. package/static/template/metro.config.js +7 -0
  782. package/static/template/webpack.config.js +7 -0
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "AndroidAppIdResolver", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return AndroidAppIdResolver;
9
+ }
10
+ });
11
+ function _configplugins() {
12
+ const data = require("@expo/config-plugins");
13
+ _configplugins = function() {
14
+ return data;
15
+ };
16
+ return data;
17
+ }
18
+ const _AppIdResolver = require("../AppIdResolver");
19
+ const debug = require('debug')('expo:start:platforms:android:AndroidAppIdResolver');
20
+ class AndroidAppIdResolver extends _AppIdResolver.AppIdResolver {
21
+ constructor(projectRoot){
22
+ super(projectRoot, 'android', 'android.package');
23
+ }
24
+ async hasNativeProjectAsync() {
25
+ try {
26
+ await _configplugins().AndroidConfig.Paths.getProjectPathOrThrowAsync(this.projectRoot);
27
+ return true;
28
+ } catch (error) {
29
+ debug('Expected error checking for native project:', error.message);
30
+ return false;
31
+ }
32
+ }
33
+ async resolveAppIdFromNativeAsync() {
34
+ const applicationIdFromGradle = await _configplugins().AndroidConfig.Package.getApplicationIdAsync(this.projectRoot).catch(()=>null);
35
+ if (applicationIdFromGradle) {
36
+ return applicationIdFromGradle;
37
+ }
38
+ try {
39
+ var _androidManifest_manifest_$, _androidManifest_manifest;
40
+ const filePath = await _configplugins().AndroidConfig.Paths.getAndroidManifestAsync(this.projectRoot);
41
+ const androidManifest = await _configplugins().AndroidConfig.Manifest.readAndroidManifestAsync(filePath);
42
+ // Assert MainActivity defined.
43
+ await _configplugins().AndroidConfig.Manifest.getMainActivityOrThrow(androidManifest);
44
+ if ((_androidManifest_manifest = androidManifest.manifest) == null ? void 0 : (_androidManifest_manifest_$ = _androidManifest_manifest.$) == null ? void 0 : _androidManifest_manifest_$.package) {
45
+ return androidManifest.manifest.$.package;
46
+ }
47
+ } catch (error) {
48
+ debug('Expected error resolving the package name from the AndroidManifest.xml:', error);
49
+ }
50
+ return null;
51
+ }
52
+ }
53
+
54
+ //# sourceMappingURL=AndroidAppIdResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/AndroidAppIdResolver.ts"],"sourcesContent":["import { AndroidConfig } from '@expo/config-plugins';\n\nimport { AppIdResolver } from '../AppIdResolver';\n\nconst debug = require('debug')(\n 'expo:start:platforms:android:AndroidAppIdResolver'\n) as typeof console.log;\n\n/** Resolves the Android package name from the Expo config or native files. */\nexport class AndroidAppIdResolver extends AppIdResolver {\n constructor(projectRoot: string) {\n super(projectRoot, 'android', 'android.package');\n }\n\n async hasNativeProjectAsync(): Promise<boolean> {\n try {\n await AndroidConfig.Paths.getProjectPathOrThrowAsync(this.projectRoot);\n return true;\n } catch (error: any) {\n debug('Expected error checking for native project:', error.message);\n return false;\n }\n }\n\n async resolveAppIdFromNativeAsync(): Promise<string | null> {\n const applicationIdFromGradle = await AndroidConfig.Package.getApplicationIdAsync(\n this.projectRoot\n ).catch(() => null);\n if (applicationIdFromGradle) {\n return applicationIdFromGradle;\n }\n\n try {\n const filePath = await AndroidConfig.Paths.getAndroidManifestAsync(this.projectRoot);\n const androidManifest = await AndroidConfig.Manifest.readAndroidManifestAsync(filePath);\n // Assert MainActivity defined.\n await AndroidConfig.Manifest.getMainActivityOrThrow(androidManifest);\n if (androidManifest.manifest?.$?.package) {\n return androidManifest.manifest.$.package;\n }\n } catch (error: any) {\n debug('Expected error resolving the package name from the AndroidManifest.xml:', error);\n }\n\n return null;\n }\n}\n"],"names":["AndroidAppIdResolver","debug","require","AppIdResolver","constructor","projectRoot","hasNativeProjectAsync","AndroidConfig","Paths","getProjectPathOrThrowAsync","error","message","resolveAppIdFromNativeAsync","applicationIdFromGradle","Package","getApplicationIdAsync","catch","androidManifest","filePath","getAndroidManifestAsync","Manifest","readAndroidManifestAsync","getMainActivityOrThrow","manifest","$","package"],"mappings":";;;;+BASaA;;;eAAAA;;;;yBATiB;;;;;;+BAEA;AAE9B,MAAMC,QAAQC,QAAQ,SACpB;AAIK,MAAMF,6BAA6BG,4BAAa;IACrDC,YAAYC,WAAmB,CAAE;QAC/B,KAAK,CAACA,aAAa,WAAW;IAChC;IAEA,MAAMC,wBAA0C;QAC9C,IAAI;YACF,MAAMC,8BAAa,CAACC,KAAK,CAACC,0BAA0B,CAAC,IAAI,CAACJ,WAAW;YACrE,OAAO;QACT,EAAE,OAAOK,OAAY;YACnBT,MAAM,+CAA+CS,MAAMC,OAAO;YAClE,OAAO;QACT;IACF;IAEA,MAAMC,8BAAsD;QAC1D,MAAMC,0BAA0B,MAAMN,8BAAa,CAACO,OAAO,CAACC,qBAAqB,CAC/E,IAAI,CAACV,WAAW,EAChBW,KAAK,CAAC,IAAM;QACd,IAAIH,yBAAyB;YAC3B,OAAOA;QACT;QAEA,IAAI;gBAKEI,6BAAAA;YAJJ,MAAMC,WAAW,MAAMX,8BAAa,CAACC,KAAK,CAACW,uBAAuB,CAAC,IAAI,CAACd,WAAW;YACnF,MAAMY,kBAAkB,MAAMV,8BAAa,CAACa,QAAQ,CAACC,wBAAwB,CAACH;YAC9E,+BAA+B;YAC/B,MAAMX,8BAAa,CAACa,QAAQ,CAACE,sBAAsB,CAACL;YACpD,KAAIA,4BAAAA,gBAAgBM,QAAQ,sBAAxBN,8BAAAA,0BAA0BO,CAAC,qBAA3BP,4BAA6BQ,OAAO,EAAE;gBACxC,OAAOR,gBAAgBM,QAAQ,CAACC,CAAC,CAACC,OAAO;YAC3C;QACF,EAAE,OAAOf,OAAY;YACnBT,MAAM,2EAA2ES;QACnF;QAEA,OAAO;IACT;AACF"}
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "AndroidDeviceManager", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return AndroidDeviceManager;
9
+ }
10
+ });
11
+ function _assert() {
12
+ const data = /*#__PURE__*/ _interop_require_default(require("assert"));
13
+ _assert = function() {
14
+ return data;
15
+ };
16
+ return data;
17
+ }
18
+ function _chalk() {
19
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
20
+ _chalk = function() {
21
+ return data;
22
+ };
23
+ return data;
24
+ }
25
+ const _activateWindow = require("./activateWindow");
26
+ const _adb = /*#__PURE__*/ _interop_require_wildcard(require("./adb"));
27
+ const _emulator = require("./emulator");
28
+ const _getDevices = require("./getDevices");
29
+ const _promptAndroidDevice = require("./promptAndroidDevice");
30
+ const _log = /*#__PURE__*/ _interop_require_wildcard(require("../../../log"));
31
+ const _errors = require("../../../utils/errors");
32
+ const _url = require("../../../utils/url");
33
+ const _DeviceManager = require("../DeviceManager");
34
+ const _ExpoGoInstaller = require("../ExpoGoInstaller");
35
+ function _interop_require_default(obj) {
36
+ return obj && obj.__esModule ? obj : {
37
+ default: obj
38
+ };
39
+ }
40
+ function _getRequireWildcardCache(nodeInterop) {
41
+ if (typeof WeakMap !== "function") return null;
42
+ var cacheBabelInterop = new WeakMap();
43
+ var cacheNodeInterop = new WeakMap();
44
+ return (_getRequireWildcardCache = function(nodeInterop) {
45
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
46
+ })(nodeInterop);
47
+ }
48
+ function _interop_require_wildcard(obj, nodeInterop) {
49
+ if (!nodeInterop && obj && obj.__esModule) {
50
+ return obj;
51
+ }
52
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
53
+ return {
54
+ default: obj
55
+ };
56
+ }
57
+ var cache = _getRequireWildcardCache(nodeInterop);
58
+ if (cache && cache.has(obj)) {
59
+ return cache.get(obj);
60
+ }
61
+ var newObj = {
62
+ __proto__: null
63
+ };
64
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
65
+ for(var key in obj){
66
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
67
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
68
+ if (desc && (desc.get || desc.set)) {
69
+ Object.defineProperty(newObj, key, desc);
70
+ } else {
71
+ newObj[key] = obj[key];
72
+ }
73
+ }
74
+ }
75
+ newObj.default = obj;
76
+ if (cache) {
77
+ cache.set(obj, newObj);
78
+ }
79
+ return newObj;
80
+ }
81
+ const EXPO_GO_APPLICATION_IDENTIFIER = 'host.exp.exponent';
82
+ class AndroidDeviceManager extends _DeviceManager.DeviceManager {
83
+ static async resolveFromNameAsync(name) {
84
+ const devices = await (0, _getDevices.getDevicesAsync)();
85
+ const device = devices.find((device)=>device.name === name);
86
+ if (!device) {
87
+ throw new _errors.CommandError('Could not find device with name: ' + name);
88
+ }
89
+ return AndroidDeviceManager.resolveAsync({
90
+ device,
91
+ shouldPrompt: false
92
+ });
93
+ }
94
+ static async resolveAsync({ device, shouldPrompt } = {}) {
95
+ if (device) {
96
+ const manager = new AndroidDeviceManager(device);
97
+ if (!await manager.attemptToStartAsync()) {
98
+ throw new _errors.AbortCommandError();
99
+ }
100
+ return manager;
101
+ }
102
+ const devices = await (0, _getDevices.getDevicesAsync)();
103
+ const _device = shouldPrompt ? await (0, _promptAndroidDevice.promptForDeviceAsync)(devices) : devices[0];
104
+ return AndroidDeviceManager.resolveAsync({
105
+ device: _device,
106
+ shouldPrompt: false
107
+ });
108
+ }
109
+ get name() {
110
+ // TODO: Maybe strip `_` from the device name?
111
+ return this.device.name;
112
+ }
113
+ get identifier() {
114
+ return this.device.pid ?? 'unknown';
115
+ }
116
+ async getAppVersionAsync(applicationId) {
117
+ var _regex_exec;
118
+ const info = await _adb.getPackageInfoAsync(this.device, {
119
+ appId: applicationId
120
+ });
121
+ const regex = /versionName=([0-9.]+)/;
122
+ return ((_regex_exec = regex.exec(info)) == null ? void 0 : _regex_exec[1]) ?? null;
123
+ }
124
+ async attemptToStartAsync() {
125
+ // TODO: Add a light-weight method for checking since a device could disconnect.
126
+ if (!await _adb.isDeviceBootedAsync(this.device)) {
127
+ this.device = await (0, _emulator.startDeviceAsync)(this.device);
128
+ }
129
+ if (this.device.isAuthorized === false) {
130
+ _adb.logUnauthorized(this.device);
131
+ return null;
132
+ }
133
+ return this.device;
134
+ }
135
+ async startAsync() {
136
+ const device = await this.attemptToStartAsync();
137
+ (0, _assert().default)(device, `Failed to boot emulator.`);
138
+ return this.device;
139
+ }
140
+ async installAppAsync(binaryPath) {
141
+ await _adb.installAsync(this.device, {
142
+ filePath: binaryPath
143
+ });
144
+ }
145
+ async uninstallAppAsync(appId) {
146
+ // we need to check if the app is installed, else we might bump into "Failure [DELETE_FAILED_INTERNAL_ERROR]"
147
+ const isInstalled = await this.isAppInstalledAndIfSoReturnContainerPathForIOSAsync(appId);
148
+ if (!isInstalled) {
149
+ return;
150
+ }
151
+ try {
152
+ await _adb.uninstallAsync(this.device, {
153
+ appId
154
+ });
155
+ } catch (e) {
156
+ _log.error(`Could not uninstall app "${appId}" from your device, please uninstall it manually and try again.`);
157
+ throw e;
158
+ }
159
+ }
160
+ /**
161
+ * @param launchActivity Activity to launch `[application identifier]/.[main activity name]`, ex: `com.bacon.app/.MainActivity`
162
+ */ async launchActivityAsync(launchActivity, url) {
163
+ try {
164
+ return await _adb.launchActivityAsync(this.device, {
165
+ launchActivity,
166
+ url
167
+ });
168
+ } catch (error) {
169
+ let errorMessage = `Couldn't open Android app with activity "${launchActivity}" on device "${this.name}".`;
170
+ if (error instanceof _errors.CommandError && error.code === 'APP_NOT_INSTALLED') {
171
+ errorMessage += `\nThe app might not be installed, try installing it with: ${_chalk().default.bold(`npx expo run:android -d ${this.name}`)}`;
172
+ }
173
+ errorMessage += _chalk().default.gray(`\n${error.message}`);
174
+ error.message = errorMessage;
175
+ throw error;
176
+ }
177
+ }
178
+ async isAppInstalledAndIfSoReturnContainerPathForIOSAsync(applicationId) {
179
+ return await _adb.isPackageInstalledAsync(this.device, applicationId);
180
+ }
181
+ async openUrlAsync(url) {
182
+ // Non-compliant URLs will be treated as application identifiers.
183
+ if (!(0, _url.validateUrl)(url, {
184
+ requireProtocol: true
185
+ })) {
186
+ await this.launchActivityAsync(url);
187
+ return;
188
+ }
189
+ const parsed = new URL(url);
190
+ if (parsed.protocol === 'exp:') {
191
+ await _adb.launchActivityAsync({
192
+ pid: this.device.pid
193
+ }, {
194
+ launchActivity: `${EXPO_GO_APPLICATION_IDENTIFIER}/.experience.HomeActivity`
195
+ });
196
+ }
197
+ await _adb.openUrlAsync({
198
+ pid: this.device.pid
199
+ }, {
200
+ url
201
+ });
202
+ }
203
+ async activateWindowAsync() {
204
+ // Bring the emulator window to the front on macos devices.
205
+ await (0, _activateWindow.activateWindowAsync)(this.device);
206
+ }
207
+ getExpoGoAppId() {
208
+ return EXPO_GO_APPLICATION_IDENTIFIER;
209
+ }
210
+ async ensureExpoGoAsync(sdkVersion) {
211
+ const installer = new _ExpoGoInstaller.ExpoGoInstaller('android', EXPO_GO_APPLICATION_IDENTIFIER, sdkVersion);
212
+ return installer.ensureAsync(this);
213
+ }
214
+ }
215
+
216
+ //# sourceMappingURL=AndroidDeviceManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/AndroidDeviceManager.ts"],"sourcesContent":["import assert from 'assert';\nimport chalk from 'chalk';\n\nimport { activateWindowAsync } from './activateWindow';\nimport * as AndroidDebugBridge from './adb';\nimport { startDeviceAsync } from './emulator';\nimport { getDevicesAsync } from './getDevices';\nimport { promptForDeviceAsync } from './promptAndroidDevice';\nimport * as Log from '../../../log';\nimport { AbortCommandError, CommandError } from '../../../utils/errors';\nimport { validateUrl } from '../../../utils/url';\nimport { DeviceManager } from '../DeviceManager';\nimport { ExpoGoInstaller } from '../ExpoGoInstaller';\nimport { BaseResolveDeviceProps } from '../PlatformManager';\n\nconst EXPO_GO_APPLICATION_IDENTIFIER = 'host.exp.exponent';\n\nexport class AndroidDeviceManager extends DeviceManager<AndroidDebugBridge.Device> {\n static async resolveFromNameAsync(name: string): Promise<AndroidDeviceManager> {\n const devices = await getDevicesAsync();\n const device = devices.find((device) => device.name === name);\n\n if (!device) {\n throw new CommandError('Could not find device with name: ' + name);\n }\n return AndroidDeviceManager.resolveAsync({ device, shouldPrompt: false });\n }\n\n static async resolveAsync({\n device,\n shouldPrompt,\n }: BaseResolveDeviceProps<AndroidDebugBridge.Device> = {}): Promise<AndroidDeviceManager> {\n if (device) {\n const manager = new AndroidDeviceManager(device);\n if (!(await manager.attemptToStartAsync())) {\n throw new AbortCommandError();\n }\n return manager;\n }\n\n const devices = await getDevicesAsync();\n const _device = shouldPrompt ? await promptForDeviceAsync(devices) : devices[0];\n return AndroidDeviceManager.resolveAsync({ device: _device, shouldPrompt: false });\n }\n\n get name() {\n // TODO: Maybe strip `_` from the device name?\n return this.device.name;\n }\n\n get identifier(): string {\n return this.device.pid ?? 'unknown';\n }\n\n async getAppVersionAsync(applicationId: string): Promise<string | null> {\n const info = await AndroidDebugBridge.getPackageInfoAsync(this.device, {\n appId: applicationId,\n });\n\n const regex = /versionName=([0-9.]+)/;\n return regex.exec(info)?.[1] ?? null;\n }\n\n protected async attemptToStartAsync(): Promise<AndroidDebugBridge.Device | null> {\n // TODO: Add a light-weight method for checking since a device could disconnect.\n if (!(await AndroidDebugBridge.isDeviceBootedAsync(this.device))) {\n this.device = await startDeviceAsync(this.device);\n }\n\n if (this.device.isAuthorized === false) {\n AndroidDebugBridge.logUnauthorized(this.device);\n return null;\n }\n\n return this.device;\n }\n\n async startAsync(): Promise<AndroidDebugBridge.Device> {\n const device = await this.attemptToStartAsync();\n assert(device, `Failed to boot emulator.`);\n return this.device;\n }\n\n async installAppAsync(binaryPath: string) {\n await AndroidDebugBridge.installAsync(this.device, {\n filePath: binaryPath,\n });\n }\n\n async uninstallAppAsync(appId: string) {\n // we need to check if the app is installed, else we might bump into \"Failure [DELETE_FAILED_INTERNAL_ERROR]\"\n const isInstalled = await this.isAppInstalledAndIfSoReturnContainerPathForIOSAsync(appId);\n if (!isInstalled) {\n return;\n }\n\n try {\n await AndroidDebugBridge.uninstallAsync(this.device, {\n appId,\n });\n } catch (e) {\n Log.error(\n `Could not uninstall app \"${appId}\" from your device, please uninstall it manually and try again.`\n );\n throw e;\n }\n }\n\n /**\n * @param launchActivity Activity to launch `[application identifier]/.[main activity name]`, ex: `com.bacon.app/.MainActivity`\n */\n async launchActivityAsync(launchActivity: string, url?: string): Promise<string> {\n try {\n return await AndroidDebugBridge.launchActivityAsync(this.device, {\n launchActivity,\n url,\n });\n } catch (error: any) {\n let errorMessage = `Couldn't open Android app with activity \"${launchActivity}\" on device \"${this.name}\".`;\n if (error instanceof CommandError && error.code === 'APP_NOT_INSTALLED') {\n errorMessage += `\\nThe app might not be installed, try installing it with: ${chalk.bold(\n `npx expo run:android -d ${this.name}`\n )}`;\n }\n errorMessage += chalk.gray(`\\n${error.message}`);\n error.message = errorMessage;\n throw error;\n }\n }\n\n async isAppInstalledAndIfSoReturnContainerPathForIOSAsync(applicationId: string) {\n return await AndroidDebugBridge.isPackageInstalledAsync(this.device, applicationId);\n }\n\n async openUrlAsync(url: string) {\n // Non-compliant URLs will be treated as application identifiers.\n if (!validateUrl(url, { requireProtocol: true })) {\n await this.launchActivityAsync(url);\n return;\n }\n\n const parsed = new URL(url);\n\n if (parsed.protocol === 'exp:') {\n await AndroidDebugBridge.launchActivityAsync(\n { pid: this.device.pid },\n {\n launchActivity: `${EXPO_GO_APPLICATION_IDENTIFIER}/.experience.HomeActivity`,\n }\n );\n }\n\n await AndroidDebugBridge.openUrlAsync({ pid: this.device.pid }, { url });\n }\n\n async activateWindowAsync() {\n // Bring the emulator window to the front on macos devices.\n await activateWindowAsync(this.device);\n }\n\n getExpoGoAppId(): string {\n return EXPO_GO_APPLICATION_IDENTIFIER;\n }\n\n async ensureExpoGoAsync(sdkVersion: string): Promise<boolean> {\n const installer = new ExpoGoInstaller('android', EXPO_GO_APPLICATION_IDENTIFIER, sdkVersion);\n return installer.ensureAsync(this);\n }\n}\n"],"names":["AndroidDeviceManager","EXPO_GO_APPLICATION_IDENTIFIER","DeviceManager","resolveFromNameAsync","name","devices","getDevicesAsync","device","find","CommandError","resolveAsync","shouldPrompt","manager","attemptToStartAsync","AbortCommandError","_device","promptForDeviceAsync","identifier","pid","getAppVersionAsync","applicationId","regex","info","AndroidDebugBridge","getPackageInfoAsync","appId","exec","isDeviceBootedAsync","startDeviceAsync","isAuthorized","logUnauthorized","startAsync","assert","installAppAsync","binaryPath","installAsync","filePath","uninstallAppAsync","isInstalled","isAppInstalledAndIfSoReturnContainerPathForIOSAsync","uninstallAsync","e","Log","error","launchActivityAsync","launchActivity","url","errorMessage","code","chalk","bold","gray","message","isPackageInstalledAsync","openUrlAsync","validateUrl","requireProtocol","parsed","URL","protocol","activateWindowAsync","getExpoGoAppId","ensureExpoGoAsync","sdkVersion","installer","ExpoGoInstaller","ensureAsync"],"mappings":";;;;+BAiBaA;;;eAAAA;;;;gEAjBM;;;;;;;gEACD;;;;;;gCAEkB;6DACA;0BACH;4BACD;qCACK;6DAChB;wBAC2B;qBACpB;+BACE;iCACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGhC,MAAMC,iCAAiC;AAEhC,MAAMD,6BAA6BE,4BAAa;IACrD,aAAaC,qBAAqBC,IAAY,EAAiC;QAC7E,MAAMC,UAAU,MAAMC,IAAAA,2BAAe;QACrC,MAAMC,SAASF,QAAQG,IAAI,CAAC,CAACD,SAAWA,OAAOH,IAAI,KAAKA;QAExD,IAAI,CAACG,QAAQ;YACX,MAAM,IAAIE,oBAAY,CAAC,sCAAsCL;QAC/D;QACA,OAAOJ,qBAAqBU,YAAY,CAAC;YAAEH;YAAQI,cAAc;QAAM;IACzE;IAEA,aAAaD,aAAa,EACxBH,MAAM,EACNI,YAAY,EACsC,GAAG,CAAC,CAAC,EAAiC;QACxF,IAAIJ,QAAQ;YACV,MAAMK,UAAU,IAAIZ,qBAAqBO;YACzC,IAAI,CAAE,MAAMK,QAAQC,mBAAmB,IAAK;gBAC1C,MAAM,IAAIC,yBAAiB;YAC7B;YACA,OAAOF;QACT;QAEA,MAAMP,UAAU,MAAMC,IAAAA,2BAAe;QACrC,MAAMS,UAAUJ,eAAe,MAAMK,IAAAA,yCAAoB,EAACX,WAAWA,OAAO,CAAC,EAAE;QAC/E,OAAOL,qBAAqBU,YAAY,CAAC;YAAEH,QAAQQ;YAASJ,cAAc;QAAM;IAClF;IAEA,IAAIP,OAAO;QACT,8CAA8C;QAC9C,OAAO,IAAI,CAACG,MAAM,CAACH,IAAI;IACzB;IAEA,IAAIa,aAAqB;QACvB,OAAO,IAAI,CAACV,MAAM,CAACW,GAAG,IAAI;IAC5B;IAEA,MAAMC,mBAAmBC,aAAqB,EAA0B;YAM/DC;QALP,MAAMC,OAAO,MAAMC,KAAmBC,mBAAmB,CAAC,IAAI,CAACjB,MAAM,EAAE;YACrEkB,OAAOL;QACT;QAEA,MAAMC,QAAQ;QACd,OAAOA,EAAAA,cAAAA,MAAMK,IAAI,CAACJ,0BAAXD,WAAkB,CAAC,EAAE,KAAI;IAClC;IAEA,MAAgBR,sBAAiE;QAC/E,gFAAgF;QAChF,IAAI,CAAE,MAAMU,KAAmBI,mBAAmB,CAAC,IAAI,CAACpB,MAAM,GAAI;YAChE,IAAI,CAACA,MAAM,GAAG,MAAMqB,IAAAA,0BAAgB,EAAC,IAAI,CAACrB,MAAM;QAClD;QAEA,IAAI,IAAI,CAACA,MAAM,CAACsB,YAAY,KAAK,OAAO;YACtCN,KAAmBO,eAAe,CAAC,IAAI,CAACvB,MAAM;YAC9C,OAAO;QACT;QAEA,OAAO,IAAI,CAACA,MAAM;IACpB;IAEA,MAAMwB,aAAiD;QACrD,MAAMxB,SAAS,MAAM,IAAI,CAACM,mBAAmB;QAC7CmB,IAAAA,iBAAM,EAACzB,QAAQ,CAAC,wBAAwB,CAAC;QACzC,OAAO,IAAI,CAACA,MAAM;IACpB;IAEA,MAAM0B,gBAAgBC,UAAkB,EAAE;QACxC,MAAMX,KAAmBY,YAAY,CAAC,IAAI,CAAC5B,MAAM,EAAE;YACjD6B,UAAUF;QACZ;IACF;IAEA,MAAMG,kBAAkBZ,KAAa,EAAE;QACrC,6GAA6G;QAC7G,MAAMa,cAAc,MAAM,IAAI,CAACC,mDAAmD,CAACd;QACnF,IAAI,CAACa,aAAa;YAChB;QACF;QAEA,IAAI;YACF,MAAMf,KAAmBiB,cAAc,CAAC,IAAI,CAACjC,MAAM,EAAE;gBACnDkB;YACF;QACF,EAAE,OAAOgB,GAAG;YACVC,KAAIC,KAAK,CACP,CAAC,yBAAyB,EAAElB,MAAM,+DAA+D,CAAC;YAEpG,MAAMgB;QACR;IACF;IAEA;;GAEC,GACD,MAAMG,oBAAoBC,cAAsB,EAAEC,GAAY,EAAmB;QAC/E,IAAI;YACF,OAAO,MAAMvB,KAAmBqB,mBAAmB,CAAC,IAAI,CAACrC,MAAM,EAAE;gBAC/DsC;gBACAC;YACF;QACF,EAAE,OAAOH,OAAY;YACnB,IAAII,eAAe,CAAC,yCAAyC,EAAEF,eAAe,aAAa,EAAE,IAAI,CAACzC,IAAI,CAAC,EAAE,CAAC;YAC1G,IAAIuC,iBAAiBlC,oBAAY,IAAIkC,MAAMK,IAAI,KAAK,qBAAqB;gBACvED,gBAAgB,CAAC,0DAA0D,EAAEE,gBAAK,CAACC,IAAI,CACrF,CAAC,wBAAwB,EAAE,IAAI,CAAC9C,IAAI,EAAE,GACrC;YACL;YACA2C,gBAAgBE,gBAAK,CAACE,IAAI,CAAC,CAAC,EAAE,EAAER,MAAMS,OAAO,EAAE;YAC/CT,MAAMS,OAAO,GAAGL;YAChB,MAAMJ;QACR;IACF;IAEA,MAAMJ,oDAAoDnB,aAAqB,EAAE;QAC/E,OAAO,MAAMG,KAAmB8B,uBAAuB,CAAC,IAAI,CAAC9C,MAAM,EAAEa;IACvE;IAEA,MAAMkC,aAAaR,GAAW,EAAE;QAC9B,iEAAiE;QACjE,IAAI,CAACS,IAAAA,gBAAW,EAACT,KAAK;YAAEU,iBAAiB;QAAK,IAAI;YAChD,MAAM,IAAI,CAACZ,mBAAmB,CAACE;YAC/B;QACF;QAEA,MAAMW,SAAS,IAAIC,IAAIZ;QAEvB,IAAIW,OAAOE,QAAQ,KAAK,QAAQ;YAC9B,MAAMpC,KAAmBqB,mBAAmB,CAC1C;gBAAE1B,KAAK,IAAI,CAACX,MAAM,CAACW,GAAG;YAAC,GACvB;gBACE2B,gBAAgB,GAAG5C,+BAA+B,yBAAyB,CAAC;YAC9E;QAEJ;QAEA,MAAMsB,KAAmB+B,YAAY,CAAC;YAAEpC,KAAK,IAAI,CAACX,MAAM,CAACW,GAAG;QAAC,GAAG;YAAE4B;QAAI;IACxE;IAEA,MAAMc,sBAAsB;QAC1B,2DAA2D;QAC3D,MAAMA,IAAAA,mCAAmB,EAAC,IAAI,CAACrD,MAAM;IACvC;IAEAsD,iBAAyB;QACvB,OAAO5D;IACT;IAEA,MAAM6D,kBAAkBC,UAAkB,EAAoB;QAC5D,MAAMC,YAAY,IAAIC,gCAAe,CAAC,WAAWhE,gCAAgC8D;QACjF,OAAOC,UAAUE,WAAW,CAAC,IAAI;IACnC;AACF"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "AndroidPlatformManager", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return AndroidPlatformManager;
9
+ }
10
+ });
11
+ const _AndroidAppIdResolver = require("./AndroidAppIdResolver");
12
+ const _AndroidDeviceManager = require("./AndroidDeviceManager");
13
+ const _adbReverse = require("./adbReverse");
14
+ const _errors = require("../../../utils/errors");
15
+ const _fn = require("../../../utils/fn");
16
+ const _link = require("../../../utils/link");
17
+ const _detectDevClient = require("../../detectDevClient");
18
+ const _PlatformManager = require("../PlatformManager");
19
+ const debug = require('debug')('expo:start:platforms:platformManager:android');
20
+ class AndroidPlatformManager extends _PlatformManager.PlatformManager {
21
+ constructor(projectRoot, port, options){
22
+ super(projectRoot, {
23
+ platform: 'android',
24
+ ...options,
25
+ resolveDeviceAsync: _AndroidDeviceManager.AndroidDeviceManager.resolveAsync
26
+ }), this.projectRoot = projectRoot, this.port = port;
27
+ this.hasDevClientInstalled = (0, _fn.memoize)(_detectDevClient.hasDirectDevClientDependency.bind(this, projectRoot));
28
+ }
29
+ async openAsync(options, resolveSettings) {
30
+ await (0, _adbReverse.startAdbReverseAsync)([
31
+ this.port
32
+ ]);
33
+ if (options.runtime === 'custom') {
34
+ // Store the resolved launch properties for future "openAsync" request.
35
+ // This reuses the same launch properties when opening through the CLI interface (pressing `a`).
36
+ if (options.props) {
37
+ this.lastCustomRuntimeLaunchProps = options.props;
38
+ } else if (!options.props && this.lastCustomRuntimeLaunchProps) {
39
+ options.props = this.lastCustomRuntimeLaunchProps;
40
+ }
41
+ // Handle projects that need to launch with a custom app id and launch activity
42
+ return this.openProjectInCustomRuntimeWithCustomAppIdAsync(options, resolveSettings);
43
+ }
44
+ return super.openAsync(options, resolveSettings);
45
+ }
46
+ /**
47
+ * Launch the custom runtime project, using the provided custom app id and launch activity.
48
+ * Instead of "open url", this will launch the activity directly.
49
+ * If dev client is installed, it will also pass the dev client URL to the activity.
50
+ */ async openProjectInCustomRuntimeWithCustomAppIdAsync(options, resolveSettings) {
51
+ var _options_props, _options_props1;
52
+ // Fall back to default dev client URL open behavior if no custom app id or launch activity is provided
53
+ if (!((_options_props = options.props) == null ? void 0 : _options_props.customAppId) || !((_options_props1 = options.props) == null ? void 0 : _options_props1.launchActivity)) {
54
+ return super.openProjectInCustomRuntimeAsync(resolveSettings, options.props);
55
+ }
56
+ const { customAppId, launchActivity } = options.props;
57
+ const url = this.hasDevClientInstalled() ? this.props.getCustomRuntimeUrl({
58
+ scheme: options.props.scheme
59
+ }) ?? undefined : undefined;
60
+ debug(`Opening custom runtime using launch activity: ${launchActivity} --`, options.props);
61
+ const deviceManager = await this.props.resolveDeviceAsync(resolveSettings);
62
+ if (!await deviceManager.isAppInstalledAndIfSoReturnContainerPathForIOSAsync(customAppId)) {
63
+ throw new _errors.CommandError(`No development build (${customAppId}) for this project is installed. ` + `Install a development build on the target device and try again.\n${(0, _link.learnMore)('https://docs.expo.dev/development/build/')}`);
64
+ }
65
+ deviceManager.logOpeningUrl(url ?? launchActivity);
66
+ await deviceManager.activateWindowAsync();
67
+ await deviceManager.launchActivityAsync(launchActivity, url);
68
+ return {
69
+ url: url ?? launchActivity
70
+ };
71
+ }
72
+ _getAppIdResolver() {
73
+ return new _AndroidAppIdResolver.AndroidAppIdResolver(this.projectRoot);
74
+ }
75
+ _resolveAlternativeLaunchUrl(applicationId, props) {
76
+ return (props == null ? void 0 : props.launchActivity) ?? `${applicationId}/.MainActivity`;
77
+ }
78
+ }
79
+
80
+ //# sourceMappingURL=AndroidPlatformManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/AndroidPlatformManager.ts"],"sourcesContent":["import { AndroidAppIdResolver } from './AndroidAppIdResolver';\nimport { AndroidDeviceManager } from './AndroidDeviceManager';\nimport { Device } from './adb';\nimport { startAdbReverseAsync } from './adbReverse';\nimport { CommandError } from '../../../utils/errors';\nimport { memoize } from '../../../utils/fn';\nimport { learnMore } from '../../../utils/link';\nimport { hasDirectDevClientDependency } from '../../detectDevClient';\nimport { AppIdResolver } from '../AppIdResolver';\nimport { BaseOpenInCustomProps, BaseResolveDeviceProps, PlatformManager } from '../PlatformManager';\n\nconst debug = require('debug')(\n 'expo:start:platforms:platformManager:android'\n) as typeof console.log;\n\nexport interface AndroidOpenInCustomProps extends BaseOpenInCustomProps {\n /**\n * The Android app intent to launch through `adb shell am start -n <launchActivity>`.\n */\n launchActivity?: string;\n /**\n * The custom app id to launch, provided through `--app-id`.\n * By default, the app id is identical to the package name.\n * When using product flavors, the app id might be customized.\n */\n customAppId?: string;\n}\n\nexport class AndroidPlatformManager extends PlatformManager<Device, AndroidOpenInCustomProps> {\n /** The last used custom launch props, should be reused whenever launching custom runtime without launch props */\n private lastCustomRuntimeLaunchProps?: AndroidOpenInCustomProps;\n /** Memoized method to detect if dev client is installed */\n private hasDevClientInstalled: () => boolean;\n\n constructor(\n protected projectRoot: string,\n protected port: number,\n options: {\n /** Get the base URL for the dev server hosting this platform manager. */\n getDevServerUrl: () => string | null;\n /** Expo Go URL */\n getExpoGoUrl: () => string;\n /** Get redirect URL for native disambiguation. */\n getRedirectUrl: () => string | null;\n /** Dev Client URL. */\n getCustomRuntimeUrl: (props?: { scheme?: string }) => string | null;\n }\n ) {\n super(projectRoot, {\n platform: 'android',\n ...options,\n resolveDeviceAsync: AndroidDeviceManager.resolveAsync,\n });\n\n this.hasDevClientInstalled = memoize(hasDirectDevClientDependency.bind(this, projectRoot));\n }\n\n async openAsync(\n options:\n | { runtime: 'expo' | 'web' }\n | { runtime: 'custom'; props?: Partial<AndroidOpenInCustomProps> },\n resolveSettings?: Partial<BaseResolveDeviceProps<Device>>\n ): Promise<{ url: string }> {\n await startAdbReverseAsync([this.port]);\n\n if (options.runtime === 'custom') {\n // Store the resolved launch properties for future \"openAsync\" request.\n // This reuses the same launch properties when opening through the CLI interface (pressing `a`).\n if (options.props) {\n this.lastCustomRuntimeLaunchProps = options.props;\n } else if (!options.props && this.lastCustomRuntimeLaunchProps) {\n options.props = this.lastCustomRuntimeLaunchProps;\n }\n\n // Handle projects that need to launch with a custom app id and launch activity\n return this.openProjectInCustomRuntimeWithCustomAppIdAsync(options, resolveSettings);\n }\n\n return super.openAsync(options, resolveSettings);\n }\n\n /**\n * Launch the custom runtime project, using the provided custom app id and launch activity.\n * Instead of \"open url\", this will launch the activity directly.\n * If dev client is installed, it will also pass the dev client URL to the activity.\n */\n async openProjectInCustomRuntimeWithCustomAppIdAsync(\n options: { runtime: 'custom'; props?: Partial<AndroidOpenInCustomProps> },\n resolveSettings?: Partial<BaseResolveDeviceProps<Device>>\n ) {\n // Fall back to default dev client URL open behavior if no custom app id or launch activity is provided\n if (!options.props?.customAppId || !options.props?.launchActivity) {\n return super.openProjectInCustomRuntimeAsync(resolveSettings, options.props);\n }\n\n const { customAppId, launchActivity } = options.props;\n const url = this.hasDevClientInstalled()\n ? (this.props.getCustomRuntimeUrl({ scheme: options.props.scheme }) ?? undefined)\n : undefined;\n\n debug(`Opening custom runtime using launch activity: ${launchActivity} --`, options.props);\n\n const deviceManager = (await this.props.resolveDeviceAsync(\n resolveSettings\n )) as AndroidDeviceManager;\n\n if (!(await deviceManager.isAppInstalledAndIfSoReturnContainerPathForIOSAsync(customAppId))) {\n throw new CommandError(\n `No development build (${customAppId}) for this project is installed. ` +\n `Install a development build on the target device and try again.\\n${learnMore(\n 'https://docs.expo.dev/development/build/'\n )}`\n );\n }\n\n deviceManager.logOpeningUrl(url ?? launchActivity);\n await deviceManager.activateWindowAsync();\n await deviceManager.launchActivityAsync(launchActivity, url);\n\n return { url: url ?? launchActivity };\n }\n\n _getAppIdResolver(): AppIdResolver {\n return new AndroidAppIdResolver(this.projectRoot);\n }\n\n _resolveAlternativeLaunchUrl(\n applicationId: string,\n props?: Partial<AndroidOpenInCustomProps>\n ): string {\n return props?.launchActivity ?? `${applicationId}/.MainActivity`;\n }\n}\n"],"names":["AndroidPlatformManager","debug","require","PlatformManager","constructor","projectRoot","port","options","platform","resolveDeviceAsync","AndroidDeviceManager","resolveAsync","hasDevClientInstalled","memoize","hasDirectDevClientDependency","bind","openAsync","resolveSettings","startAdbReverseAsync","runtime","props","lastCustomRuntimeLaunchProps","openProjectInCustomRuntimeWithCustomAppIdAsync","customAppId","launchActivity","openProjectInCustomRuntimeAsync","url","getCustomRuntimeUrl","scheme","undefined","deviceManager","isAppInstalledAndIfSoReturnContainerPathForIOSAsync","CommandError","learnMore","logOpeningUrl","activateWindowAsync","launchActivityAsync","_getAppIdResolver","AndroidAppIdResolver","_resolveAlternativeLaunchUrl","applicationId"],"mappings":";;;;+BA4BaA;;;eAAAA;;;sCA5BwB;sCACA;4BAEA;wBACR;oBACL;sBACE;iCACmB;iCAEkC;AAE/E,MAAMC,QAAQC,QAAQ,SACpB;AAgBK,MAAMF,+BAA+BG,gCAAe;IAMzDC,YACE,AAAUC,WAAmB,EAC7B,AAAUC,IAAY,EACtBC,OASC,CACD;QACA,KAAK,CAACF,aAAa;YACjBG,UAAU;YACV,GAAGD,OAAO;YACVE,oBAAoBC,0CAAoB,CAACC,YAAY;QACvD,SAjBUN,cAAAA,kBACAC,OAAAA;QAkBV,IAAI,CAACM,qBAAqB,GAAGC,IAAAA,WAAO,EAACC,6CAA4B,CAACC,IAAI,CAAC,IAAI,EAAEV;IAC/E;IAEA,MAAMW,UACJT,OAEoE,EACpEU,eAAyD,EAC/B;QAC1B,MAAMC,IAAAA,gCAAoB,EAAC;YAAC,IAAI,CAACZ,IAAI;SAAC;QAEtC,IAAIC,QAAQY,OAAO,KAAK,UAAU;YAChC,uEAAuE;YACvE,gGAAgG;YAChG,IAAIZ,QAAQa,KAAK,EAAE;gBACjB,IAAI,CAACC,4BAA4B,GAAGd,QAAQa,KAAK;YACnD,OAAO,IAAI,CAACb,QAAQa,KAAK,IAAI,IAAI,CAACC,4BAA4B,EAAE;gBAC9Dd,QAAQa,KAAK,GAAG,IAAI,CAACC,4BAA4B;YACnD;YAEA,+EAA+E;YAC/E,OAAO,IAAI,CAACC,8CAA8C,CAACf,SAASU;QACtE;QAEA,OAAO,KAAK,CAACD,UAAUT,SAASU;IAClC;IAEA;;;;GAIC,GACD,MAAMK,+CACJf,OAAyE,EACzEU,eAAyD,EACzD;YAEKV,gBAA+BA;QADpC,uGAAuG;QACvG,IAAI,GAACA,iBAAAA,QAAQa,KAAK,qBAAbb,eAAegB,WAAW,KAAI,GAAChB,kBAAAA,QAAQa,KAAK,qBAAbb,gBAAeiB,cAAc,GAAE;YACjE,OAAO,KAAK,CAACC,gCAAgCR,iBAAiBV,QAAQa,KAAK;QAC7E;QAEA,MAAM,EAAEG,WAAW,EAAEC,cAAc,EAAE,GAAGjB,QAAQa,KAAK;QACrD,MAAMM,MAAM,IAAI,CAACd,qBAAqB,KACjC,IAAI,CAACQ,KAAK,CAACO,mBAAmB,CAAC;YAAEC,QAAQrB,QAAQa,KAAK,CAACQ,MAAM;QAAC,MAAMC,YACrEA;QAEJ5B,MAAM,CAAC,8CAA8C,EAAEuB,eAAe,GAAG,CAAC,EAAEjB,QAAQa,KAAK;QAEzF,MAAMU,gBAAiB,MAAM,IAAI,CAACV,KAAK,CAACX,kBAAkB,CACxDQ;QAGF,IAAI,CAAE,MAAMa,cAAcC,mDAAmD,CAACR,cAAe;YAC3F,MAAM,IAAIS,oBAAY,CACpB,CAAC,sBAAsB,EAAET,YAAY,iCAAiC,CAAC,GACrE,CAAC,iEAAiE,EAAEU,IAAAA,eAAS,EAC3E,6CACC;QAET;QAEAH,cAAcI,aAAa,CAACR,OAAOF;QACnC,MAAMM,cAAcK,mBAAmB;QACvC,MAAML,cAAcM,mBAAmB,CAACZ,gBAAgBE;QAExD,OAAO;YAAEA,KAAKA,OAAOF;QAAe;IACtC;IAEAa,oBAAmC;QACjC,OAAO,IAAIC,0CAAoB,CAAC,IAAI,CAACjC,WAAW;IAClD;IAEAkC,6BACEC,aAAqB,EACrBpB,KAAyC,EACjC;QACR,OAAOA,CAAAA,yBAAAA,MAAOI,cAAc,KAAI,GAAGgB,cAAc,cAAc,CAAC;IAClE;AACF"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "assertSdkRoot", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return assertSdkRoot;
9
+ }
10
+ });
11
+ function _assert() {
12
+ const data = /*#__PURE__*/ _interop_require_default(require("assert"));
13
+ _assert = function() {
14
+ return data;
15
+ };
16
+ return data;
17
+ }
18
+ function _fs() {
19
+ const data = /*#__PURE__*/ _interop_require_default(require("fs"));
20
+ _fs = function() {
21
+ return data;
22
+ };
23
+ return data;
24
+ }
25
+ function _os() {
26
+ const data = /*#__PURE__*/ _interop_require_default(require("os"));
27
+ _os = function() {
28
+ return data;
29
+ };
30
+ return data;
31
+ }
32
+ function _path() {
33
+ const data = /*#__PURE__*/ _interop_require_default(require("path"));
34
+ _path = function() {
35
+ return data;
36
+ };
37
+ return data;
38
+ }
39
+ function _interop_require_default(obj) {
40
+ return obj && obj.__esModule ? obj : {
41
+ default: obj
42
+ };
43
+ }
44
+ /**
45
+ * The default Android SDK locations per platform.
46
+ * @see https://developer.android.com/studio/run/emulator-commandline#filedir
47
+ * @see https://developer.android.com/studio/intro/studio-config#optimize-studio-windows
48
+ */ const ANDROID_DEFAULT_LOCATION = {
49
+ darwin: _path().default.join(_os().default.homedir(), 'Library', 'Android', 'sdk'),
50
+ linux: [
51
+ _path().default.join(_os().default.homedir(), 'Android', 'Sdk'),
52
+ _path().default.join(_os().default.homedir(), 'Android', 'sdk')
53
+ ],
54
+ win32: _path().default.join(_os().default.homedir(), 'AppData', 'Local', 'Android', 'Sdk')
55
+ };
56
+ const isAndroidDefaultLocationKey = (platform)=>ANDROID_DEFAULT_LOCATION[platform] != null;
57
+ function assertSdkRoot() {
58
+ if (process.env.ANDROID_HOME) {
59
+ (0, _assert().default)(_fs().default.existsSync(process.env.ANDROID_HOME), `Failed to resolve the Android SDK path. ANDROID_HOME is set to a non-existing path: ${process.env.ANDROID_HOME}`);
60
+ return process.env.ANDROID_HOME;
61
+ }
62
+ if (process.env.ANDROID_SDK_ROOT) {
63
+ (0, _assert().default)(_fs().default.existsSync(process.env.ANDROID_SDK_ROOT), `Failed to resolve the Android SDK path. Deprecated ANDROID_SDK_ROOT is set to a non-existing path: ${process.env.ANDROID_SDK_ROOT}. Use ANDROID_HOME instead.`);
64
+ return process.env.ANDROID_SDK_ROOT;
65
+ }
66
+ const platform = process.platform;
67
+ if (!isAndroidDefaultLocationKey(platform)) {
68
+ return null;
69
+ }
70
+ const defaultLocation = ANDROID_DEFAULT_LOCATION[platform];
71
+ const locations = !Array.isArray(defaultLocation) ? [
72
+ defaultLocation
73
+ ] : defaultLocation;
74
+ const resolvedLocation = locations.find((location)=>_fs().default.existsSync(location));
75
+ (0, _assert().default)(!!resolvedLocation, `Failed to resolve the Android SDK path. Default install location not found: ${locations[0]}. Use ANDROID_HOME to set the Android SDK location.`);
76
+ return resolvedLocation;
77
+ }
78
+
79
+ //# sourceMappingURL=AndroidSdk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/AndroidSdk.ts"],"sourcesContent":["import assert from 'assert';\nimport fs from 'fs';\nimport os from 'os';\nimport path from 'path';\n\n/**\n * The default Android SDK locations per platform.\n * @see https://developer.android.com/studio/run/emulator-commandline#filedir\n * @see https://developer.android.com/studio/intro/studio-config#optimize-studio-windows\n */\nconst ANDROID_DEFAULT_LOCATION = {\n darwin: path.join(os.homedir(), 'Library', 'Android', 'sdk'),\n linux: [path.join(os.homedir(), 'Android', 'Sdk'), path.join(os.homedir(), 'Android', 'sdk')],\n win32: path.join(os.homedir(), 'AppData', 'Local', 'Android', 'Sdk'),\n};\n\nconst isAndroidDefaultLocationKey = (\n platform: string\n): platform is keyof typeof ANDROID_DEFAULT_LOCATION =>\n ANDROID_DEFAULT_LOCATION[platform as keyof typeof ANDROID_DEFAULT_LOCATION] != null;\n\n/**\n * Resolve and validate the root folder where the Android SDK has been installed.\n * This checks both `ANDROID_HOME`, `ANDROID_SDK_ROOT`, and the default path for the current platform.\n * @see https://developer.android.com/studio/command-line/variables\n */\nexport function assertSdkRoot(): string | null {\n if (process.env.ANDROID_HOME) {\n assert(\n fs.existsSync(process.env.ANDROID_HOME),\n `Failed to resolve the Android SDK path. ANDROID_HOME is set to a non-existing path: ${process.env.ANDROID_HOME}`\n );\n return process.env.ANDROID_HOME;\n }\n\n if (process.env.ANDROID_SDK_ROOT) {\n assert(\n fs.existsSync(process.env.ANDROID_SDK_ROOT),\n `Failed to resolve the Android SDK path. Deprecated ANDROID_SDK_ROOT is set to a non-existing path: ${process.env.ANDROID_SDK_ROOT}. Use ANDROID_HOME instead.`\n );\n return process.env.ANDROID_SDK_ROOT;\n }\n\n const platform = process.platform;\n if (!isAndroidDefaultLocationKey(platform)) {\n return null;\n }\n\n const defaultLocation = ANDROID_DEFAULT_LOCATION[platform];\n const locations = !Array.isArray(defaultLocation) ? [defaultLocation] : defaultLocation;\n const resolvedLocation = locations.find((location) => fs.existsSync(location));\n assert(\n !!resolvedLocation,\n `Failed to resolve the Android SDK path. Default install location not found: ${locations[0]}. Use ANDROID_HOME to set the Android SDK location.`\n );\n return resolvedLocation;\n}\n"],"names":["assertSdkRoot","ANDROID_DEFAULT_LOCATION","darwin","path","join","os","homedir","linux","win32","isAndroidDefaultLocationKey","platform","process","env","ANDROID_HOME","assert","fs","existsSync","ANDROID_SDK_ROOT","defaultLocation","locations","Array","isArray","resolvedLocation","find","location"],"mappings":";;;;+BA0BgBA;;;eAAAA;;;;gEA1BG;;;;;;;gEACJ;;;;;;;gEACA;;;;;;;gEACE;;;;;;;;;;;AAEjB;;;;CAIC,GACD,MAAMC,2BAA2B;IAC/BC,QAAQC,eAAI,CAACC,IAAI,CAACC,aAAE,CAACC,OAAO,IAAI,WAAW,WAAW;IACtDC,OAAO;QAACJ,eAAI,CAACC,IAAI,CAACC,aAAE,CAACC,OAAO,IAAI,WAAW;QAAQH,eAAI,CAACC,IAAI,CAACC,aAAE,CAACC,OAAO,IAAI,WAAW;KAAO;IAC7FE,OAAOL,eAAI,CAACC,IAAI,CAACC,aAAE,CAACC,OAAO,IAAI,WAAW,SAAS,WAAW;AAChE;AAEA,MAAMG,8BAA8B,CAClCC,WAEAT,wBAAwB,CAACS,SAAkD,IAAI;AAO1E,SAASV;IACd,IAAIW,QAAQC,GAAG,CAACC,YAAY,EAAE;QAC5BC,IAAAA,iBAAM,EACJC,aAAE,CAACC,UAAU,CAACL,QAAQC,GAAG,CAACC,YAAY,GACtC,CAAC,oFAAoF,EAAEF,QAAQC,GAAG,CAACC,YAAY,EAAE;QAEnH,OAAOF,QAAQC,GAAG,CAACC,YAAY;IACjC;IAEA,IAAIF,QAAQC,GAAG,CAACK,gBAAgB,EAAE;QAChCH,IAAAA,iBAAM,EACJC,aAAE,CAACC,UAAU,CAACL,QAAQC,GAAG,CAACK,gBAAgB,GAC1C,CAAC,mGAAmG,EAAEN,QAAQC,GAAG,CAACK,gBAAgB,CAAC,2BAA2B,CAAC;QAEjK,OAAON,QAAQC,GAAG,CAACK,gBAAgB;IACrC;IAEA,MAAMP,WAAWC,QAAQD,QAAQ;IACjC,IAAI,CAACD,4BAA4BC,WAAW;QAC1C,OAAO;IACT;IAEA,MAAMQ,kBAAkBjB,wBAAwB,CAACS,SAAS;IAC1D,MAAMS,YAAY,CAACC,MAAMC,OAAO,CAACH,mBAAmB;QAACA;KAAgB,GAAGA;IACxE,MAAMI,mBAAmBH,UAAUI,IAAI,CAAC,CAACC,WAAaT,aAAE,CAACC,UAAU,CAACQ;IACpEV,IAAAA,iBAAM,EACJ,CAAC,CAACQ,kBACF,CAAC,4EAA4E,EAAEH,SAAS,CAAC,EAAE,CAAC,mDAAmD,CAAC;IAElJ,OAAOG;AACT"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "activateWindowAsync", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return activateWindowAsync;
9
+ }
10
+ });
11
+ function _osascript() {
12
+ const data = /*#__PURE__*/ _interop_require_wildcard(require("@expo/osascript"));
13
+ _osascript = function() {
14
+ return data;
15
+ };
16
+ return data;
17
+ }
18
+ function _child_process() {
19
+ const data = require("child_process");
20
+ _child_process = function() {
21
+ return data;
22
+ };
23
+ return data;
24
+ }
25
+ function _getRequireWildcardCache(nodeInterop) {
26
+ if (typeof WeakMap !== "function") return null;
27
+ var cacheBabelInterop = new WeakMap();
28
+ var cacheNodeInterop = new WeakMap();
29
+ return (_getRequireWildcardCache = function(nodeInterop) {
30
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
31
+ })(nodeInterop);
32
+ }
33
+ function _interop_require_wildcard(obj, nodeInterop) {
34
+ if (!nodeInterop && obj && obj.__esModule) {
35
+ return obj;
36
+ }
37
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
38
+ return {
39
+ default: obj
40
+ };
41
+ }
42
+ var cache = _getRequireWildcardCache(nodeInterop);
43
+ if (cache && cache.has(obj)) {
44
+ return cache.get(obj);
45
+ }
46
+ var newObj = {
47
+ __proto__: null
48
+ };
49
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
50
+ for(var key in obj){
51
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
52
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
53
+ if (desc && (desc.get || desc.set)) {
54
+ Object.defineProperty(newObj, key, desc);
55
+ } else {
56
+ newObj[key] = obj[key];
57
+ }
58
+ }
59
+ }
60
+ newObj.default = obj;
61
+ if (cache) {
62
+ cache.set(obj, newObj);
63
+ }
64
+ return newObj;
65
+ }
66
+ const debug = require('debug')('expo:start:platforms:android:activateWindow');
67
+ function getUnixPID(port) {
68
+ var _execFileSync_split__trim, _execFileSync_split_;
69
+ // Runs like `lsof -i:8081 -P -t -sTCP:LISTEN`
70
+ const args = [
71
+ `-i:${port}`,
72
+ '-P',
73
+ '-t',
74
+ '-sTCP:LISTEN'
75
+ ];
76
+ debug('lsof ' + args.join(' '));
77
+ return (_execFileSync_split_ = (0, _child_process().execFileSync)('lsof', args, {
78
+ encoding: 'utf8',
79
+ stdio: [
80
+ 'pipe',
81
+ 'pipe',
82
+ 'ignore'
83
+ ]
84
+ }).split('\n')[0]) == null ? void 0 : (_execFileSync_split__trim = _execFileSync_split_.trim) == null ? void 0 : _execFileSync_split__trim.call(_execFileSync_split_);
85
+ }
86
+ async function activateWindowAsync(device) {
87
+ var _device_pid_match;
88
+ debug(`Activating window for device (pid: ${device.pid}, type: ${device.type})`);
89
+ if (// only mac is supported for now.
90
+ process.platform !== 'darwin' || // can only focus emulators
91
+ device.type !== 'emulator') {
92
+ return false;
93
+ }
94
+ // Google Emulator ID: `emulator-5554` -> `5554`
95
+ const androidPid = (_device_pid_match = device.pid.match(/-(\d+)/)) == null ? void 0 : _device_pid_match[1];
96
+ if (!androidPid) {
97
+ return false;
98
+ }
99
+ // Unix PID
100
+ const pid = getUnixPID(androidPid);
101
+ if (!pid) {
102
+ return false;
103
+ }
104
+ debug(`Activate window for pid:`, pid);
105
+ try {
106
+ await _osascript().execAsync(`
107
+ tell application "System Events"
108
+ set frontmost of the first process whose unix id is ${pid} to true
109
+ end tell`);
110
+ return true;
111
+ } catch {
112
+ // noop -- this feature is very specific and subject to failure.
113
+ return false;
114
+ }
115
+ }
116
+
117
+ //# sourceMappingURL=activateWindow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/activateWindow.ts"],"sourcesContent":["import * as osascript from '@expo/osascript';\nimport { execFileSync } from 'child_process';\n\nimport { Device } from './adb';\n\nconst debug = require('debug')('expo:start:platforms:android:activateWindow') as typeof console.log;\n\nfunction getUnixPID(port: number | string): string {\n // Runs like `lsof -i:8081 -P -t -sTCP:LISTEN`\n const args = [`-i:${port}`, '-P', '-t', '-sTCP:LISTEN'];\n debug('lsof ' + args.join(' '));\n return execFileSync('lsof', args, {\n encoding: 'utf8',\n stdio: ['pipe', 'pipe', 'ignore'],\n })\n .split('\\n')[0]\n ?.trim?.();\n}\n\n/** Activate the Emulator window on macOS. */\nexport async function activateWindowAsync(device: Pick<Device, 'type' | 'pid'>): Promise<boolean> {\n debug(`Activating window for device (pid: ${device.pid}, type: ${device.type})`);\n if (\n // only mac is supported for now.\n process.platform !== 'darwin' ||\n // can only focus emulators\n device.type !== 'emulator'\n ) {\n return false;\n }\n\n // Google Emulator ID: `emulator-5554` -> `5554`\n const androidPid = device.pid!.match(/-(\\d+)/)?.[1];\n if (!androidPid) {\n return false;\n }\n // Unix PID\n const pid = getUnixPID(androidPid);\n\n if (!pid) {\n return false;\n }\n debug(`Activate window for pid:`, pid);\n try {\n await osascript.execAsync(`\n tell application \"System Events\"\n set frontmost of the first process whose unix id is ${pid} to true\n end tell`);\n return true;\n } catch {\n // noop -- this feature is very specific and subject to failure.\n return false;\n }\n}\n"],"names":["activateWindowAsync","debug","require","getUnixPID","port","execFileSync","args","join","encoding","stdio","split","trim","device","pid","type","process","platform","androidPid","match","osascript","execAsync"],"mappings":";;;;+BAoBsBA;;;eAAAA;;;;iEApBK;;;;;;;yBACE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAI7B,MAAMC,QAAQC,QAAQ,SAAS;AAE/B,SAASC,WAAWC,IAAqB;QAIhCC,2BAAAA;IAHP,8CAA8C;IAC9C,MAAMC,OAAO;QAAC,CAAC,GAAG,EAAEF,MAAM;QAAE;QAAM;QAAM;KAAe;IACvDH,MAAM,UAAUK,KAAKC,IAAI,CAAC;IAC1B,QAAOF,uBAAAA,IAAAA,6BAAY,EAAC,QAAQC,MAAM;QAChCE,UAAU;QACVC,OAAO;YAAC;YAAQ;YAAQ;SAAS;IACnC,GACGC,KAAK,CAAC,KAAK,CAAC,EAAE,sBAJVL,4BAAAA,qBAKHM,IAAI,qBALDN,+BAAAA;AAMT;AAGO,eAAeL,oBAAoBY,MAAoC;QAYzDA;IAXnBX,MAAM,CAAC,mCAAmC,EAAEW,OAAOC,GAAG,CAAC,QAAQ,EAAED,OAAOE,IAAI,CAAC,CAAC,CAAC;IAC/E,IACE,iCAAiC;IACjCC,QAAQC,QAAQ,KAAK,YACrB,2BAA2B;IAC3BJ,OAAOE,IAAI,KAAK,YAChB;QACA,OAAO;IACT;IAEA,gDAAgD;IAChD,MAAMG,cAAaL,oBAAAA,OAAOC,GAAG,CAAEK,KAAK,CAAC,8BAAlBN,iBAA6B,CAAC,EAAE;IACnD,IAAI,CAACK,YAAY;QACf,OAAO;IACT;IACA,WAAW;IACX,MAAMJ,MAAMV,WAAWc;IAEvB,IAAI,CAACJ,KAAK;QACR,OAAO;IACT;IACAZ,MAAM,CAAC,wBAAwB,CAAC,EAAEY;IAClC,IAAI;QACF,MAAMM,aAAUC,SAAS,CAAC,CAAC;;0DAE2B,EAAEP,IAAI;YACpD,CAAC;QACT,OAAO;IACT,EAAE,OAAM;QACN,gEAAgE;QAChE,OAAO;IACT;AACF"}