@expo/cli 0.17.10 → 0.18.1

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 (693) hide show
  1. package/build/bin/cli +98 -118
  2. package/build/bin/cli.map +1 -1
  3. package/build/src/api/endpoint.js +11 -3
  4. package/build/src/api/endpoint.js.map +1 -1
  5. package/build/src/api/getExpoGoIntermediateCertificate.js +7 -4
  6. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
  7. package/build/src/api/getExpoSchema.js +32 -12
  8. package/build/src/api/getExpoSchema.js.map +1 -1
  9. package/build/src/api/getNativeModuleVersions.js +7 -4
  10. package/build/src/api/getNativeModuleVersions.js.map +1 -1
  11. package/build/src/api/getProjectDevelopmentCertificate.js +7 -4
  12. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
  13. package/build/src/api/getVersions.js +7 -4
  14. package/build/src/api/getVersions.js.map +1 -1
  15. package/build/src/api/graphql/client.js +78 -40
  16. package/build/src/api/graphql/client.js.map +1 -1
  17. package/build/src/api/graphql/queries/AppQuery.js +22 -8
  18. package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
  19. package/build/src/api/graphql/queries/UserQuery.js +13 -5
  20. package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
  21. package/build/src/api/graphql/types/App.js +12 -4
  22. package/build/src/api/graphql/types/App.js.map +1 -1
  23. package/build/src/api/rest/cache/FileSystemCache.js +25 -11
  24. package/build/src/api/rest/cache/FileSystemCache.js.map +1 -1
  25. package/build/src/api/rest/cache/response.js +13 -4
  26. package/build/src/api/rest/cache/response.js.map +1 -1
  27. package/build/src/api/rest/cache/wrapFetchWithCache.js +51 -18
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
  29. package/build/src/api/rest/client.js +55 -30
  30. package/build/src/api/rest/client.js.map +1 -1
  31. package/build/src/api/rest/wrapFetchWithBaseUrl.js +13 -5
  32. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
  33. package/build/src/api/rest/wrapFetchWithOffline.js +5 -2
  34. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
  35. package/build/src/api/rest/wrapFetchWithProgress.js +40 -19
  36. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
  37. package/build/src/api/rest/wrapFetchWithProxy.js +13 -4
  38. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
  39. package/build/src/api/settings.js +16 -5
  40. package/build/src/api/settings.js.map +1 -1
  41. package/build/src/api/updateDevelopmentSession.js +33 -13
  42. package/build/src/api/updateDevelopmentSession.js.map +1 -1
  43. package/build/src/api/user/UserSettings.js +31 -11
  44. package/build/src/api/user/UserSettings.js.map +1 -1
  45. package/build/src/api/user/actions.js +78 -41
  46. package/build/src/api/user/actions.js.map +1 -1
  47. package/build/src/api/user/expoSsoLauncher.js +72 -27
  48. package/build/src/api/user/expoSsoLauncher.js.map +1 -1
  49. package/build/src/api/user/otp.js +82 -50
  50. package/build/src/api/user/otp.js.map +1 -1
  51. package/build/src/api/user/user.js +80 -48
  52. package/build/src/api/user/user.js.map +1 -1
  53. package/build/src/config/configAsync.js +82 -45
  54. package/build/src/config/configAsync.js.map +1 -1
  55. package/build/src/config/index.js +52 -30
  56. package/build/src/config/index.js.map +1 -1
  57. package/build/src/customize/customizeAsync.js +21 -12
  58. package/build/src/customize/customizeAsync.js.map +1 -1
  59. package/build/src/customize/generate.js +74 -47
  60. package/build/src/customize/generate.js.map +1 -1
  61. package/build/src/customize/index.js +16 -8
  62. package/build/src/customize/index.js.map +1 -1
  63. package/build/src/customize/resolveOptions.js +7 -4
  64. package/build/src/customize/resolveOptions.js.map +1 -1
  65. package/build/src/customize/templates.js +58 -37
  66. package/build/src/customize/templates.js.map +1 -1
  67. package/build/src/customize/typescript.js +50 -29
  68. package/build/src/customize/typescript.js.map +1 -1
  69. package/build/src/export/createMetadataJson.js +14 -7
  70. package/build/src/export/createMetadataJson.js.map +1 -1
  71. package/build/src/export/embed/exportEmbedAsync.js +103 -50
  72. package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
  73. package/build/src/export/embed/index.js +61 -37
  74. package/build/src/export/embed/index.js.map +1 -1
  75. package/build/src/export/embed/resolveOptions.js +14 -5
  76. package/build/src/export/embed/resolveOptions.js.map +1 -1
  77. package/build/src/export/embed/xcodeCompilerLogger.js +33 -9
  78. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
  79. package/build/src/export/exportApp.js +110 -73
  80. package/build/src/export/exportApp.js.map +1 -1
  81. package/build/src/export/exportAssets.js +84 -47
  82. package/build/src/export/exportAssets.js.map +1 -1
  83. package/build/src/export/exportAsync.js +56 -27
  84. package/build/src/export/exportAsync.js.map +1 -1
  85. package/build/src/export/exportHermes.js +46 -26
  86. package/build/src/export/exportHermes.js.map +1 -1
  87. package/build/src/export/exportStaticAsync.js +109 -66
  88. package/build/src/export/exportStaticAsync.js.map +1 -1
  89. package/build/src/export/favicon.js +47 -15
  90. package/build/src/export/favicon.js.map +1 -1
  91. package/build/src/export/fork-bundleAsync.js +92 -44
  92. package/build/src/export/fork-bundleAsync.js.map +1 -1
  93. package/build/src/export/getPublicExpoManifest.js +16 -7
  94. package/build/src/export/getPublicExpoManifest.js.map +1 -1
  95. package/build/src/export/getResolvedLocales.js +20 -5
  96. package/build/src/export/getResolvedLocales.js.map +1 -1
  97. package/build/src/export/html.js +12 -4
  98. package/build/src/export/html.js.map +1 -1
  99. package/build/src/export/index.js +55 -33
  100. package/build/src/export/index.js.map +1 -1
  101. package/build/src/export/metroAssetLocalPath.js +30 -8
  102. package/build/src/export/metroAssetLocalPath.js.map +1 -1
  103. package/build/src/export/persistMetroAssets.js +59 -33
  104. package/build/src/export/persistMetroAssets.js.map +1 -1
  105. package/build/src/export/publicFolder.js +31 -11
  106. package/build/src/export/publicFolder.js.map +1 -1
  107. package/build/src/export/resolveOptions.js +26 -16
  108. package/build/src/export/resolveOptions.js.map +1 -1
  109. package/build/src/export/saveAssets.js +77 -49
  110. package/build/src/export/saveAssets.js.map +1 -1
  111. package/build/src/export/web/exportWebAsync.js +28 -13
  112. package/build/src/export/web/exportWebAsync.js.map +1 -1
  113. package/build/src/export/web/index.js +53 -31
  114. package/build/src/export/web/index.js.map +1 -1
  115. package/build/src/export/web/resolveOptions.js +4 -1
  116. package/build/src/export/web/resolveOptions.js.map +1 -1
  117. package/build/src/export/writeContents.js +12 -7
  118. package/build/src/export/writeContents.js.map +1 -1
  119. package/build/src/graphql/generated.js +141 -128
  120. package/build/src/graphql/generated.js.map +1 -1
  121. package/build/src/install/applyPlugins.js +50 -26
  122. package/build/src/install/applyPlugins.js.map +1 -1
  123. package/build/src/install/checkPackages.js +68 -36
  124. package/build/src/install/checkPackages.js.map +1 -1
  125. package/build/src/install/fixPackages.js +58 -35
  126. package/build/src/install/fixPackages.js.map +1 -1
  127. package/build/src/install/index.js +21 -13
  128. package/build/src/install/index.js.map +1 -1
  129. package/build/src/install/installAsync.js +107 -64
  130. package/build/src/install/installAsync.js.map +1 -1
  131. package/build/src/install/installExpoPackage.js +60 -27
  132. package/build/src/install/installExpoPackage.js.map +1 -1
  133. package/build/src/install/resolveOptions.js +8 -5
  134. package/build/src/install/resolveOptions.js.map +1 -1
  135. package/build/src/install/utils/autoAddConfigPlugins.js +29 -9
  136. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
  137. package/build/src/lint/ESlintPrerequisite.js +174 -0
  138. package/build/src/lint/ESlintPrerequisite.js.map +1 -0
  139. package/build/src/lint/index.js +66 -0
  140. package/build/src/lint/index.js.map +1 -0
  141. package/build/src/lint/lintAsync.js +33 -0
  142. package/build/src/lint/lintAsync.js.map +1 -0
  143. package/build/src/log.js +27 -15
  144. package/build/src/log.js.map +1 -1
  145. package/build/src/login/index.js +43 -25
  146. package/build/src/login/index.js.map +1 -1
  147. package/build/src/logout/index.js +43 -25
  148. package/build/src/logout/index.js.map +1 -1
  149. package/build/src/prebuild/clearNativeFolder.js +97 -50
  150. package/build/src/prebuild/clearNativeFolder.js.map +1 -1
  151. package/build/src/prebuild/configureProjectAsync.js +64 -31
  152. package/build/src/prebuild/configureProjectAsync.js.map +1 -1
  153. package/build/src/prebuild/copyTemplateFiles.js +41 -17
  154. package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
  155. package/build/src/prebuild/ensureConfigAsync.js +74 -30
  156. package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
  157. package/build/src/prebuild/index.js +58 -38
  158. package/build/src/prebuild/index.js.map +1 -1
  159. package/build/src/prebuild/prebuildAsync.js +75 -52
  160. package/build/src/prebuild/prebuildAsync.js.map +1 -1
  161. package/build/src/prebuild/renameTemplateAppName.js +124 -0
  162. package/build/src/prebuild/renameTemplateAppName.js.map +1 -0
  163. package/build/src/prebuild/resolveOptions.js +85 -36
  164. package/build/src/prebuild/resolveOptions.js.map +1 -1
  165. package/build/src/prebuild/resolveTemplate.js +102 -46
  166. package/build/src/prebuild/resolveTemplate.js.map +1 -1
  167. package/build/src/prebuild/updateFromTemplate.js +80 -41
  168. package/build/src/prebuild/updateFromTemplate.js.map +1 -1
  169. package/build/src/prebuild/updatePackageJson.js +111 -54
  170. package/build/src/prebuild/updatePackageJson.js.map +1 -1
  171. package/build/src/prebuild/validateTemplatePlatforms.js +56 -23
  172. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
  173. package/build/src/register/index.js +43 -25
  174. package/build/src/register/index.js.map +1 -1
  175. package/build/src/register/registerAsync.js +14 -11
  176. package/build/src/register/registerAsync.js.map +1 -1
  177. package/build/src/run/android/index.js +64 -32
  178. package/build/src/run/android/index.js.map +1 -1
  179. package/build/src/run/android/resolveDevice.js +9 -6
  180. package/build/src/run/android/resolveDevice.js.map +1 -1
  181. package/build/src/run/android/resolveGradlePropsAsync.js +56 -0
  182. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -0
  183. package/build/src/run/android/resolveInstallApkName.js +28 -14
  184. package/build/src/run/android/resolveInstallApkName.js.map +1 -1
  185. package/build/src/run/android/resolveLaunchProps.js +16 -7
  186. package/build/src/run/android/resolveLaunchProps.js.map +1 -1
  187. package/build/src/run/android/resolveOptions.js +14 -9
  188. package/build/src/run/android/resolveOptions.js.map +1 -1
  189. package/build/src/run/android/runAndroidAsync.js +39 -27
  190. package/build/src/run/android/runAndroidAsync.js.map +1 -1
  191. package/build/src/run/ensureNativeProject.js +24 -9
  192. package/build/src/run/ensureNativeProject.js.map +1 -1
  193. package/build/src/run/hints.js +23 -9
  194. package/build/src/run/hints.js.map +1 -1
  195. package/build/src/run/index.js +55 -35
  196. package/build/src/run/index.js.map +1 -1
  197. package/build/src/run/ios/XcodeBuild.js +126 -66
  198. package/build/src/run/ios/XcodeBuild.js.map +1 -1
  199. package/build/src/run/ios/appleDevice/AppleDevice.js +52 -27
  200. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
  201. package/build/src/run/ios/appleDevice/ClientManager.js +70 -31
  202. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
  203. package/build/src/run/ios/appleDevice/client/AFCClient.js +94 -44
  204. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
  205. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +63 -24
  206. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
  207. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +21 -6
  208. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
  209. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +64 -25
  210. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
  211. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +66 -28
  212. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
  213. package/build/src/run/ios/appleDevice/client/ServiceClient.js +18 -4
  214. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
  215. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +42 -15
  216. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
  217. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +78 -34
  218. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
  219. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +85 -66
  220. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
  221. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +41 -15
  222. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
  223. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +30 -11
  224. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
  225. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +39 -14
  226. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
  227. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +36 -11
  228. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
  229. package/build/src/run/ios/codeSigning/Security.js +40 -21
  230. package/build/src/run/ios/codeSigning/Security.js.map +1 -1
  231. package/build/src/run/ios/codeSigning/configureCodeSigning.js +55 -28
  232. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
  233. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +67 -36
  234. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
  235. package/build/src/run/ios/codeSigning/settings.js +11 -3
  236. package/build/src/run/ios/codeSigning/settings.js.map +1 -1
  237. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +30 -10
  238. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
  239. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +33 -15
  240. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
  241. package/build/src/run/ios/index.js +63 -35
  242. package/build/src/run/ios/index.js.map +1 -1
  243. package/build/src/run/ios/launchApp.js +65 -32
  244. package/build/src/run/ios/launchApp.js.map +1 -1
  245. package/build/src/run/ios/options/promptDevice.js +24 -14
  246. package/build/src/run/ios/options/promptDevice.js.map +1 -1
  247. package/build/src/run/ios/options/resolveDevice.js +64 -41
  248. package/build/src/run/ios/options/resolveDevice.js.map +1 -1
  249. package/build/src/run/ios/options/resolveNativeScheme.js +80 -39
  250. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
  251. package/build/src/run/ios/options/resolveOptions.js +15 -12
  252. package/build/src/run/ios/options/resolveOptions.js.map +1 -1
  253. package/build/src/run/ios/options/resolveXcodeProject.js +13 -4
  254. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
  255. package/build/src/run/ios/runIosAsync.js +71 -42
  256. package/build/src/run/ios/runIosAsync.js.map +1 -1
  257. package/build/src/run/resolveBundlerProps.js +8 -5
  258. package/build/src/run/resolveBundlerProps.js.map +1 -1
  259. package/build/src/run/startBundler.js +60 -27
  260. package/build/src/run/startBundler.js.map +1 -1
  261. package/build/src/start/detectDevClient.js +32 -0
  262. package/build/src/start/detectDevClient.js.map +1 -0
  263. package/build/src/start/doctor/Prerequisite.js +15 -7
  264. package/build/src/start/doctor/Prerequisite.js.map +1 -1
  265. package/build/src/start/doctor/SecurityBinPrerequisite.js +13 -4
  266. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
  267. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +57 -24
  268. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
  269. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +57 -24
  270. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
  271. package/build/src/start/doctor/apple/XcodePrerequisite.js +132 -57
  272. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
  273. package/build/src/start/doctor/apple/XcrunPrerequisite.js +34 -13
  274. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
  275. package/build/src/start/doctor/dependencies/bundledNativeModules.js +69 -30
  276. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
  277. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +120 -57
  278. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
  279. package/build/src/start/doctor/dependencies/getMissingPackages.js +38 -12
  280. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
  281. package/build/src/start/doctor/dependencies/getVersionedPackages.js +29 -15
  282. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
  283. package/build/src/start/doctor/dependencies/resolvePackages.js +39 -15
  284. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
  285. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +88 -55
  286. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
  287. package/build/src/start/doctor/ngrok/ExternalModule.js +88 -39
  288. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
  289. package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -5
  290. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
  291. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +75 -45
  292. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
  293. package/build/src/start/doctor/typescript/updateTSConfig.js +81 -40
  294. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
  295. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +70 -32
  296. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
  297. package/build/src/start/index.js +62 -42
  298. package/build/src/start/index.js.map +1 -1
  299. package/build/src/start/interface/KeyPressHandler.js +43 -22
  300. package/build/src/start/interface/KeyPressHandler.js.map +1 -1
  301. package/build/src/start/interface/commandsTable.js +81 -41
  302. package/build/src/start/interface/commandsTable.js.map +1 -1
  303. package/build/src/start/interface/interactiveActions.js +91 -68
  304. package/build/src/start/interface/interactiveActions.js.map +1 -1
  305. package/build/src/start/interface/startInterface.js +84 -57
  306. package/build/src/start/interface/startInterface.js.map +1 -1
  307. package/build/src/start/platforms/AppIdResolver.js +16 -7
  308. package/build/src/start/platforms/AppIdResolver.js.map +1 -1
  309. package/build/src/start/platforms/DeviceManager.js +47 -20
  310. package/build/src/start/platforms/DeviceManager.js.map +1 -1
  311. package/build/src/start/platforms/ExpoGoInstaller.js +81 -45
  312. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
  313. package/build/src/start/platforms/PlatformManager.js +42 -20
  314. package/build/src/start/platforms/PlatformManager.js.map +1 -1
  315. package/build/src/start/platforms/android/ADBServer.js +28 -13
  316. package/build/src/start/platforms/android/ADBServer.js.map +1 -1
  317. package/build/src/start/platforms/android/AndroidAppIdResolver.js +18 -10
  318. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
  319. package/build/src/start/platforms/android/AndroidDeviceManager.js +86 -54
  320. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
  321. package/build/src/start/platforms/android/AndroidPlatformManager.js +9 -6
  322. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
  323. package/build/src/start/platforms/android/AndroidSdk.js +38 -11
  324. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
  325. package/build/src/start/platforms/android/activateWindow.js +54 -21
  326. package/build/src/start/platforms/android/activateWindow.js.map +1 -1
  327. package/build/src/start/platforms/android/adb.js +89 -51
  328. package/build/src/start/platforms/android/adb.js.map +1 -1
  329. package/build/src/start/platforms/android/adbReverse.js +57 -31
  330. package/build/src/start/platforms/android/adbReverse.js.map +1 -1
  331. package/build/src/start/platforms/android/emulator.js +89 -44
  332. package/build/src/start/platforms/android/emulator.js.map +1 -1
  333. package/build/src/start/platforms/android/getDevices.js +11 -10
  334. package/build/src/start/platforms/android/getDevices.js.map +1 -1
  335. package/build/src/start/platforms/android/gradle.js +38 -14
  336. package/build/src/start/platforms/android/gradle.js.map +1 -1
  337. package/build/src/start/platforms/android/promptAndroidDevice.js +22 -16
  338. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
  339. package/build/src/start/platforms/ios/AppleAppIdResolver.js +31 -10
  340. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
  341. package/build/src/start/platforms/ios/AppleDeviceManager.js +120 -62
  342. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
  343. package/build/src/start/platforms/ios/ApplePlatformManager.js +7 -4
  344. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
  345. package/build/src/start/platforms/ios/assertSystemRequirements.js +11 -7
  346. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
  347. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +60 -27
  348. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
  349. package/build/src/start/platforms/ios/getBestSimulator.js +60 -30
  350. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
  351. package/build/src/start/platforms/ios/promptAppleDevice.js +25 -13
  352. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
  353. package/build/src/start/platforms/ios/simctl.js +75 -46
  354. package/build/src/start/platforms/ios/simctl.js.map +1 -1
  355. package/build/src/start/platforms/ios/simctlLogging.js +100 -47
  356. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
  357. package/build/src/start/platforms/ios/xcrun.js +21 -6
  358. package/build/src/start/platforms/ios/xcrun.js.map +1 -1
  359. package/build/src/start/project/devices.js +19 -16
  360. package/build/src/start/project/devices.js.map +1 -1
  361. package/build/src/start/project/dotExpo.js +37 -11
  362. package/build/src/start/project/dotExpo.js.map +1 -1
  363. package/build/src/start/project/settings.js +6 -4
  364. package/build/src/start/project/settings.js.map +1 -1
  365. package/build/src/start/resolveOptions.js +52 -27
  366. package/build/src/start/resolveOptions.js.map +1 -1
  367. package/build/src/start/server/AsyncNgrok.js +91 -47
  368. package/build/src/start/server/AsyncNgrok.js.map +1 -1
  369. package/build/src/start/server/BundlerDevServer.js +77 -45
  370. package/build/src/start/server/BundlerDevServer.js.map +1 -1
  371. package/build/src/start/server/DevServerManager.js +100 -70
  372. package/build/src/start/server/DevServerManager.js.map +1 -1
  373. package/build/src/start/server/DevToolsPluginManager.js +35 -18
  374. package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
  375. package/build/src/start/server/DevelopmentSession.js +57 -33
  376. package/build/src/start/server/DevelopmentSession.js.map +1 -1
  377. package/build/src/start/server/ReactDevToolsProxy.js +37 -11
  378. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
  379. package/build/src/start/server/UrlCreator.js +61 -27
  380. package/build/src/start/server/UrlCreator.js.map +1 -1
  381. package/build/src/start/server/getStaticRenderFunctions.js +125 -77
  382. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
  383. package/build/src/start/server/metro/MetroBundlerDevServer.js +333 -158
  384. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
  385. package/build/src/start/server/metro/MetroTerminalReporter.js +50 -28
  386. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
  387. package/build/src/start/server/metro/TerminalReporter.js +40 -12
  388. package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
  389. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
  390. package/build/src/start/server/metro/createExpoMetroResolver.js +82 -35
  391. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
  392. package/build/src/start/server/metro/createJResolver.js +143 -73
  393. package/build/src/start/server/metro/createJResolver.js.map +1 -1
  394. package/build/src/start/server/metro/createServerRouteMiddleware.js +47 -38
  395. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
  396. package/build/src/start/server/metro/debugging/MessageHandler.js +30 -0
  397. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -0
  398. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +18 -14
  399. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
  400. package/build/src/start/server/metro/debugging/createHandlersFactory.js +64 -0
  401. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -0
  402. package/build/src/start/server/metro/debugging/{inspectorHandlers/utils.js → getDebuggerType.js} +6 -8
  403. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -0
  404. package/build/src/start/server/metro/debugging/{inspectorHandlers → messageHandlers}/NetworkResponse.js +12 -6
  405. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -0
  406. package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js +26 -0
  407. package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js.map +1 -0
  408. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +28 -0
  409. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
  410. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +25 -0
  411. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
  412. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +31 -0
  413. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
  414. package/build/src/start/server/metro/debugging/{inspectorHandlers → messageHandlers}/VscodeRuntimeGetProperties.js +14 -7
  415. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -0
  416. package/build/src/start/server/metro/debugging/pageIsSupported.js +17 -0
  417. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -0
  418. package/build/src/start/server/metro/debugging/types.js.map +1 -0
  419. package/build/src/start/server/metro/externals.js +67 -69
  420. package/build/src/start/server/metro/externals.js.map +1 -1
  421. package/build/src/start/server/metro/fetchRouterManifest.js +26 -7
  422. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
  423. package/build/src/start/server/metro/formatFileCandidates.js +28 -18
  424. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
  425. package/build/src/start/server/metro/getCssModulesFromBundler.js +44 -12
  426. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
  427. package/build/src/start/server/metro/instantiateMetro.js +141 -62
  428. package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
  429. package/build/src/start/server/metro/metroErrorInterface.js +75 -47
  430. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
  431. package/build/src/start/server/metro/metroErrors.js +11 -2
  432. package/build/src/start/server/metro/metroErrors.js.map +1 -1
  433. package/build/src/start/server/metro/metroVirtualModules.js +90 -0
  434. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -0
  435. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +12 -3
  436. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
  437. package/build/src/start/server/metro/router.js +64 -30
  438. package/build/src/start/server/metro/router.js.map +1 -1
  439. package/build/src/start/server/metro/runServer-fork.js +68 -19
  440. package/build/src/start/server/metro/runServer-fork.js.map +1 -1
  441. package/build/src/start/server/metro/serializeHtml.js +32 -19
  442. package/build/src/start/server/metro/serializeHtml.js.map +1 -1
  443. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +19 -5
  444. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
  445. package/build/src/start/server/metro/withMetroMultiPlatform.js +232 -104
  446. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
  447. package/build/src/start/server/metro/withMetroResolvers.js +95 -47
  448. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
  449. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +4 -1
  450. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
  451. package/build/src/start/server/middleware/CorsMiddleware.js +4 -1
  452. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
  453. package/build/src/start/server/middleware/CreateFileMiddleware.js +33 -13
  454. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
  455. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +27 -12
  456. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
  457. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +65 -28
  458. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
  459. package/build/src/start/server/middleware/ExpoMiddleware.js +54 -22
  460. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
  461. package/build/src/start/server/middleware/FaviconMiddleware.js +8 -5
  462. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
  463. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +6 -3
  464. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
  465. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +58 -21
  466. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
  467. package/build/src/start/server/middleware/ManifestMiddleware.js +117 -63
  468. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
  469. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +35 -10
  470. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
  471. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +54 -27
  472. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
  473. package/build/src/start/server/middleware/ServeStaticMiddleware.js +31 -10
  474. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
  475. package/build/src/start/server/middleware/inspector/JsInspector.js +45 -22
  476. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
  477. package/build/src/start/server/middleware/inspector/LaunchBrowser.js +25 -11
  478. package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -1
  479. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +4 -2
  480. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -1
  481. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +36 -14
  482. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -1
  483. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +84 -38
  484. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -1
  485. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +42 -20
  486. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -1
  487. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +40 -13
  488. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
  489. package/build/src/start/server/middleware/inspector/middlwareMutations.js +11 -4
  490. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
  491. package/build/src/start/server/middleware/metroOptions.js +36 -18
  492. package/build/src/start/server/middleware/metroOptions.js.map +1 -1
  493. package/build/src/start/server/middleware/mutations.js +11 -4
  494. package/build/src/start/server/middleware/mutations.js.map +1 -1
  495. package/build/src/start/server/middleware/resolveAssets.js +78 -42
  496. package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
  497. package/build/src/start/server/middleware/resolvePlatform.js +21 -7
  498. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
  499. package/build/src/start/server/middleware/suppressErrorMiddleware.js +4 -1
  500. package/build/src/start/server/middleware/suppressErrorMiddleware.js.map +1 -1
  501. package/build/src/start/server/openPlatforms.js +7 -6
  502. package/build/src/start/server/openPlatforms.js.map +1 -1
  503. package/build/src/start/server/platformBundlers.js +12 -3
  504. package/build/src/start/server/platformBundlers.js.map +1 -1
  505. package/build/src/start/server/serverLogLikeMetro.js +93 -40
  506. package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
  507. package/build/src/start/server/type-generation/expo-env.js +26 -6
  508. package/build/src/start/server/type-generation/expo-env.js.map +1 -1
  509. package/build/src/start/server/type-generation/routes.js +137 -82
  510. package/build/src/start/server/type-generation/routes.js.map +1 -1
  511. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +44 -23
  512. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
  513. package/build/src/start/server/type-generation/tsconfig.js +41 -16
  514. package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
  515. package/build/src/start/server/webTemplate.js +43 -19
  516. package/build/src/start/server/webTemplate.js.map +1 -1
  517. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +105 -56
  518. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
  519. package/build/src/start/server/webpack/compile.js +60 -27
  520. package/build/src/start/server/webpack/compile.js.map +1 -1
  521. package/build/src/start/server/webpack/formatWebpackMessages.js +35 -25
  522. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
  523. package/build/src/start/server/webpack/resolveFromProject.js +20 -6
  524. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
  525. package/build/src/start/server/webpack/tls.js +84 -34
  526. package/build/src/start/server/webpack/tls.js.map +1 -1
  527. package/build/src/start/startAsync.js +98 -52
  528. package/build/src/start/startAsync.js.map +1 -1
  529. package/build/src/utils/FileNotifier.js +73 -28
  530. package/build/src/utils/FileNotifier.js.map +1 -1
  531. package/build/src/utils/analytics/getDevClientProperties.js +48 -22
  532. package/build/src/utils/analytics/getDevClientProperties.js.map +1 -1
  533. package/build/src/utils/analytics/getMetroDebugProperties.js +4 -1
  534. package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -1
  535. package/build/src/utils/analytics/getMetroProperties.js +4 -1
  536. package/build/src/utils/analytics/getMetroProperties.js.map +1 -1
  537. package/build/src/utils/analytics/metroDebuggerMiddleware.js +14 -6
  538. package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -1
  539. package/build/src/utils/ansi.js +5 -2
  540. package/build/src/utils/ansi.js.map +1 -1
  541. package/build/src/utils/args.js +83 -31
  542. package/build/src/utils/args.js.map +1 -1
  543. package/build/src/utils/array.js +16 -9
  544. package/build/src/utils/array.js.map +1 -1
  545. package/build/src/utils/cocoapods.js +127 -67
  546. package/build/src/utils/cocoapods.js.map +1 -1
  547. package/build/src/utils/codesigning.js +144 -72
  548. package/build/src/utils/codesigning.js.map +1 -1
  549. package/build/src/utils/createFileTransform.js +34 -71
  550. package/build/src/utils/createFileTransform.js.map +1 -1
  551. package/build/src/utils/delay.js +13 -6
  552. package/build/src/utils/delay.js.map +1 -1
  553. package/build/src/utils/dir.js +50 -40
  554. package/build/src/utils/dir.js.map +1 -1
  555. package/build/src/utils/downloadAppAsync.js +51 -18
  556. package/build/src/utils/downloadAppAsync.js.map +1 -1
  557. package/build/src/utils/downloadExpoGoAsync.js +47 -26
  558. package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
  559. package/build/src/utils/editor.js +65 -27
  560. package/build/src/utils/editor.js.map +1 -1
  561. package/build/src/utils/env.js +44 -33
  562. package/build/src/utils/env.js.map +1 -1
  563. package/build/src/utils/errors.js +35 -12
  564. package/build/src/utils/errors.js.map +1 -1
  565. package/build/src/utils/exit.js +10 -7
  566. package/build/src/utils/exit.js.map +1 -1
  567. package/build/src/utils/findUp.js +38 -8
  568. package/build/src/utils/findUp.js.map +1 -1
  569. package/build/src/utils/fn.js +11 -3
  570. package/build/src/utils/fn.js.map +1 -1
  571. package/build/src/utils/getOrPromptApplicationId.js +84 -46
  572. package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
  573. package/build/src/utils/getRunningProcess.js +63 -25
  574. package/build/src/utils/getRunningProcess.js.map +1 -1
  575. package/build/src/utils/git.js +76 -38
  576. package/build/src/utils/git.js.map +1 -1
  577. package/build/src/utils/glob.js +23 -12
  578. package/build/src/utils/glob.js.map +1 -1
  579. package/build/src/utils/interactive.js +5 -2
  580. package/build/src/utils/interactive.js.map +1 -1
  581. package/build/src/utils/ip.js +12 -3
  582. package/build/src/utils/ip.js.map +1 -1
  583. package/build/src/utils/isModuleSymlinked.js +20 -5
  584. package/build/src/utils/isModuleSymlinked.js.map +1 -1
  585. package/build/src/utils/link.js +28 -8
  586. package/build/src/utils/link.js.map +1 -1
  587. package/build/src/utils/mergeGitIgnorePaths.js +45 -28
  588. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
  589. package/build/src/utils/modifyConfigAsync.js +69 -31
  590. package/build/src/utils/modifyConfigAsync.js.map +1 -1
  591. package/build/src/utils/modifyConfigPlugins.js +50 -23
  592. package/build/src/utils/modifyConfigPlugins.js.map +1 -1
  593. package/build/src/utils/nodeEnv.js +8 -1
  594. package/build/src/utils/nodeEnv.js.map +1 -1
  595. package/build/src/utils/nodeModules.js +29 -8
  596. package/build/src/utils/nodeModules.js.map +1 -1
  597. package/build/src/utils/npm.js +86 -31
  598. package/build/src/utils/npm.js.map +1 -1
  599. package/build/src/utils/obj.js +12 -4
  600. package/build/src/utils/obj.js.map +1 -1
  601. package/build/src/utils/open.js +13 -4
  602. package/build/src/utils/open.js.map +1 -1
  603. package/build/src/utils/ora.js +38 -22
  604. package/build/src/utils/ora.js.map +1 -1
  605. package/build/src/utils/plist.js +73 -29
  606. package/build/src/utils/plist.js.map +1 -1
  607. package/build/src/utils/port.js +74 -36
  608. package/build/src/utils/port.js.map +1 -1
  609. package/build/src/utils/profile.js +56 -29
  610. package/build/src/utils/profile.js.map +1 -1
  611. package/build/src/utils/progress.js +23 -13
  612. package/build/src/utils/progress.js.map +1 -1
  613. package/build/src/utils/prompts.js +45 -28
  614. package/build/src/utils/prompts.js.map +1 -1
  615. package/build/src/utils/resolveArgs.js +23 -20
  616. package/build/src/utils/resolveArgs.js.map +1 -1
  617. package/build/src/utils/scheme.js +128 -52
  618. package/build/src/utils/scheme.js.map +1 -1
  619. package/build/src/utils/strings.js +11 -4
  620. package/build/src/utils/strings.js.map +1 -1
  621. package/build/src/utils/tar.js +56 -23
  622. package/build/src/utils/tar.js.map +1 -1
  623. package/build/src/utils/telemetry/DetachedClient.js +90 -0
  624. package/build/src/utils/telemetry/DetachedClient.js.map +1 -0
  625. package/build/src/utils/telemetry/RudderClient.js +101 -0
  626. package/build/src/utils/telemetry/RudderClient.js.map +1 -0
  627. package/build/src/utils/telemetry/flushDetached.js +44 -0
  628. package/build/src/utils/telemetry/flushDetached.js.map +1 -0
  629. package/build/src/utils/telemetry/getContext.js +112 -0
  630. package/build/src/utils/telemetry/getContext.js.map +1 -0
  631. package/build/src/utils/telemetry/index.js +37 -0
  632. package/build/src/utils/telemetry/index.js.map +1 -0
  633. package/build/src/utils/telemetry/types.js +6 -0
  634. package/build/src/utils/telemetry/types.js.map +1 -0
  635. package/build/src/utils/template.js +27 -2
  636. package/build/src/utils/template.js.map +1 -1
  637. package/build/src/utils/terminal.js +5 -2
  638. package/build/src/utils/terminal.js.map +1 -1
  639. package/build/src/utils/tsconfig/evaluateTsConfig.js +32 -14
  640. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
  641. package/build/src/utils/tsconfig/loadTsConfigPaths.js +34 -14
  642. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
  643. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +8 -4
  644. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
  645. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +20 -11
  646. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
  647. package/build/src/utils/url.js +35 -19
  648. package/build/src/utils/url.js.map +1 -1
  649. package/build/src/utils/validateApplicationId.js +47 -28
  650. package/build/src/utils/validateApplicationId.js.map +1 -1
  651. package/build/src/utils/variadic.js +15 -11
  652. package/build/src/utils/variadic.js.map +1 -1
  653. package/build/src/whoami/index.js +43 -25
  654. package/build/src/whoami/index.js.map +1 -1
  655. package/build/src/whoami/whoamiAsync.js +50 -23
  656. package/build/src/whoami/whoamiAsync.js.map +1 -1
  657. package/package.json +16 -17
  658. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-dev.js +27907 -0
  659. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-prod.js +9494 -0
  660. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-profiling.js +10015 -0
  661. package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +28375 -0
  662. package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +9714 -0
  663. package/build/src/run/android/resolveGradleProps.js +0 -37
  664. package/build/src/run/android/resolveGradleProps.js.map +0 -1
  665. package/build/src/start/server/metro/bundleApiRoutes.js +0 -52
  666. package/build/src/start/server/metro/bundleApiRoutes.js.map +0 -1
  667. package/build/src/start/server/metro/debugging/InspectorDevice.js +0 -80
  668. package/build/src/start/server/metro/debugging/InspectorDevice.js.map +0 -1
  669. package/build/src/start/server/metro/debugging/InspectorProxy.js +0 -116
  670. package/build/src/start/server/metro/debugging/InspectorProxy.js.map +0 -1
  671. package/build/src/start/server/metro/debugging/inspectorHandlers/NetworkResponse.js.map +0 -1
  672. package/build/src/start/server/metro/debugging/inspectorHandlers/PageReload.js +0 -22
  673. package/build/src/start/server/metro/debugging/inspectorHandlers/PageReload.js.map +0 -1
  674. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerGetPossibleBreakpoints.js +0 -21
  675. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +0 -1
  676. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerScriptParsed.js +0 -56
  677. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerScriptParsed.js.map +0 -1
  678. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerSetBreakpointByUrl.js +0 -18
  679. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +0 -1
  680. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeCallFunctionOn.js +0 -24
  681. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeCallFunctionOn.js.map +0 -1
  682. package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeGetProperties.js.map +0 -1
  683. package/build/src/start/server/metro/debugging/inspectorHandlers/types.js.map +0 -1
  684. package/build/src/start/server/metro/debugging/inspectorHandlers/utils.js.map +0 -1
  685. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js +0 -38
  686. package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js.map +0 -1
  687. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js +0 -38
  688. package/build/src/start/server/type-generation/__typetests__/generateFixtures.js.map +0 -1
  689. package/build/src/start/server/type-generation/__typetests__/route.test.js +0 -184
  690. package/build/src/start/server/type-generation/__typetests__/route.test.js.map +0 -1
  691. package/build/src/utils/analytics/rudderstackClient.js +0 -147
  692. package/build/src/utils/analytics/rudderstackClient.js.map +0 -1
  693. /package/build/src/start/server/metro/debugging/{inspectorHandlers/types.js → types.js} +0 -0
@@ -2,39 +2,65 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.hasAdbReverseAsync = hasAdbReverseAsync;
6
- exports.startAdbReverseAsync = startAdbReverseAsync;
7
- exports.stopAdbReverseAsync = stopAdbReverseAsync;
8
- var _androidSdk = require("./AndroidSdk");
9
- var _adb = require("./adb");
10
- var Log = _interopRequireWildcard(require("../../../log"));
11
- var _exit = require("../../../utils/exit");
12
- function _interopRequireWildcard(obj) {
13
- if (obj && obj.__esModule) {
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ hasAdbReverseAsync: ()=>hasAdbReverseAsync,
13
+ startAdbReverseAsync: ()=>startAdbReverseAsync,
14
+ stopAdbReverseAsync: ()=>stopAdbReverseAsync
15
+ });
16
+ const _androidSdk = require("./AndroidSdk");
17
+ const _adb = require("./adb");
18
+ const _log = /*#__PURE__*/ _interopRequireWildcard(require("../../../log"));
19
+ const _exit = require("../../../utils/exit");
20
+ function _getRequireWildcardCache(nodeInterop) {
21
+ if (typeof WeakMap !== "function") return null;
22
+ var cacheBabelInterop = new WeakMap();
23
+ var cacheNodeInterop = new WeakMap();
24
+ return (_getRequireWildcardCache = function(nodeInterop) {
25
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
26
+ })(nodeInterop);
27
+ }
28
+ function _interopRequireWildcard(obj, nodeInterop) {
29
+ if (!nodeInterop && obj && obj.__esModule) {
14
30
  return obj;
15
- } else {
16
- var newObj = {};
17
- if (obj != null) {
18
- for(var key in obj){
19
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
20
- var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
21
- if (desc.get || desc.set) {
22
- Object.defineProperty(newObj, key, desc);
23
- } else {
24
- newObj[key] = obj[key];
25
- }
26
- }
31
+ }
32
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
33
+ return {
34
+ default: obj
35
+ };
36
+ }
37
+ var cache = _getRequireWildcardCache(nodeInterop);
38
+ if (cache && cache.has(obj)) {
39
+ return cache.get(obj);
40
+ }
41
+ var newObj = {};
42
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
43
+ for(var key in obj){
44
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
45
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
46
+ if (desc && (desc.get || desc.set)) {
47
+ Object.defineProperty(newObj, key, desc);
48
+ } else {
49
+ newObj[key] = obj[key];
27
50
  }
28
51
  }
29
- newObj.default = obj;
30
- return newObj;
31
52
  }
53
+ newObj.default = obj;
54
+ if (cache) {
55
+ cache.set(obj, newObj);
56
+ }
57
+ return newObj;
32
58
  }
33
59
  const debug = require("debug")("expo:start:platforms:android:adbReverse");
34
60
  let removeExitHook = null;
35
61
  function hasAdbReverseAsync() {
36
62
  try {
37
- return !!(0, _androidSdk).assertSdkRoot();
63
+ return !!(0, _androidSdk.assertSdkRoot)();
38
64
  } catch (error) {
39
65
  debug("Failed to resolve the Android SDK path, skipping ADB: %s", error.message);
40
66
  return false;
@@ -42,10 +68,10 @@ function hasAdbReverseAsync() {
42
68
  }
43
69
  async function startAdbReverseAsync(ports) {
44
70
  // Install cleanup automatically...
45
- removeExitHook = (0, _exit).installExitHooks(()=>{
71
+ removeExitHook = (0, _exit.installExitHooks)(()=>{
46
72
  stopAdbReverseAsync(ports);
47
73
  });
48
- const devices = await (0, _adb).getAttachedDevicesAsync();
74
+ const devices = await (0, _adb.getAttachedDevicesAsync)();
49
75
  for (const device of devices){
50
76
  for (const port of ports){
51
77
  if (!await adbReverseAsync(device, port)) {
@@ -58,7 +84,7 @@ async function startAdbReverseAsync(ports) {
58
84
  }
59
85
  async function stopAdbReverseAsync(ports) {
60
86
  removeExitHook == null ? void 0 : removeExitHook();
61
- const devices = await (0, _adb).getAttachedDevicesAsync();
87
+ const devices = await (0, _adb.getAttachedDevicesAsync)();
62
88
  for (const device of devices){
63
89
  for (const port of ports){
64
90
  await adbReverseRemoveAsync(device, port);
@@ -67,14 +93,14 @@ async function stopAdbReverseAsync(ports) {
67
93
  }
68
94
  async function adbReverseAsync(device, port) {
69
95
  if (!device.isAuthorized) {
70
- (0, _adb).logUnauthorized(device);
96
+ (0, _adb.logUnauthorized)(device);
71
97
  return false;
72
98
  }
73
99
  try {
74
- await (0, _adb).getServer().runAsync((0, _adb).adbArgs(device.pid, "reverse", `tcp:${port}`, `tcp:${port}`));
100
+ await (0, _adb.getServer)().runAsync((0, _adb.adbArgs)(device.pid, "reverse", `tcp:${port}`, `tcp:${port}`));
75
101
  return true;
76
102
  } catch (error) {
77
- Log.warn(`[ADB] Couldn't reverse port ${port}: ${error.message}`);
103
+ _log.warn(`[ADB] Couldn't reverse port ${port}: ${error.message}`);
78
104
  return false;
79
105
  }
80
106
  }
@@ -83,7 +109,7 @@ async function adbReverseRemoveAsync(device, port) {
83
109
  return false;
84
110
  }
85
111
  try {
86
- await (0, _adb).getServer().runAsync((0, _adb).adbArgs(device.pid, "reverse", "--remove", `tcp:${port}`));
112
+ await (0, _adb.getServer)().runAsync((0, _adb.adbArgs)(device.pid, "reverse", "--remove", `tcp:${port}`));
87
113
  return true;
88
114
  } catch (error) {
89
115
  // Don't send this to warn because we call this preemptively sometimes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/android/adbReverse.ts"],"sourcesContent":["import { assertSdkRoot } from './AndroidSdk';\nimport { adbArgs, Device, getAttachedDevicesAsync, getServer, logUnauthorized } from './adb';\nimport * as Log from '../../../log';\nimport { installExitHooks } from '../../../utils/exit';\n\nconst debug = require('debug')('expo:start:platforms:android:adbReverse') as typeof console.log;\n\nlet removeExitHook: (() => void) | null = null;\n\nexport function hasAdbReverseAsync(): boolean {\n try {\n return !!assertSdkRoot();\n } catch (error: any) {\n debug('Failed to resolve the Android SDK path, skipping ADB: %s', error.message);\n return false;\n }\n}\n\nexport async function startAdbReverseAsync(ports: number[]): Promise<boolean> {\n // Install cleanup automatically...\n removeExitHook = installExitHooks(() => {\n stopAdbReverseAsync(ports);\n });\n\n const devices = await getAttachedDevicesAsync();\n for (const device of devices) {\n for (const port of ports) {\n if (!(await adbReverseAsync(device, port))) {\n debug(`Failed to start reverse port ${port} on device \"${device.name}\"`);\n return false;\n }\n }\n }\n return true;\n}\n\nexport async function stopAdbReverseAsync(ports: number[]): Promise<void> {\n removeExitHook?.();\n\n const devices = await getAttachedDevicesAsync();\n for (const device of devices) {\n for (const port of ports) {\n await adbReverseRemoveAsync(device, port);\n }\n }\n}\n\nasync function adbReverseAsync(device: Device, port: number): Promise<boolean> {\n if (!device.isAuthorized) {\n logUnauthorized(device);\n return false;\n }\n\n try {\n await getServer().runAsync(adbArgs(device.pid, 'reverse', `tcp:${port}`, `tcp:${port}`));\n return true;\n } catch (error: any) {\n Log.warn(`[ADB] Couldn't reverse port ${port}: ${error.message}`);\n return false;\n }\n}\n\nasync function adbReverseRemoveAsync(device: Device, port: number): Promise<boolean> {\n if (!device.isAuthorized) {\n return false;\n }\n\n try {\n await getServer().runAsync(adbArgs(device.pid, 'reverse', '--remove', `tcp:${port}`));\n return true;\n } catch (error: any) {\n // Don't send this to warn because we call this preemptively sometimes\n debug(`Could not unforward port ${port}: ${error.message}`);\n return false;\n }\n}\n"],"names":["hasAdbReverseAsync","startAdbReverseAsync","stopAdbReverseAsync","Log","debug","require","removeExitHook","assertSdkRoot","error","message","ports","installExitHooks","devices","getAttachedDevicesAsync","device","port","adbReverseAsync","name","adbReverseRemoveAsync","isAuthorized","logUnauthorized","getServer","runAsync","adbArgs","pid","warn"],"mappings":"AAAA;;;;QASgBA,kBAAkB,GAAlBA,kBAAkB;QASZC,oBAAoB,GAApBA,oBAAoB;QAkBpBC,mBAAmB,GAAnBA,mBAAmB;AApCX,IAAA,WAAc,WAAd,cAAc,CAAA;AACyC,IAAA,IAAO,WAAP,OAAO,CAAA;AAChFC,IAAAA,GAAG,mCAAM,cAAc,EAApB;AACkB,IAAA,KAAqB,WAArB,qBAAqB,CAAA;;;;;;;;;;;;;;;;;;;;;;AAEtD,MAAMC,KAAK,GAAGC,OAAO,CAAC,OAAO,CAAC,CAAC,yCAAyC,CAAC,AAAsB,AAAC;AAEhG,IAAIC,cAAc,GAAwB,IAAI,AAAC;AAExC,SAASN,kBAAkB,GAAY;IAC5C,IAAI;QACF,OAAO,CAAC,CAACO,CAAAA,GAAAA,WAAa,AAAE,CAAA,cAAF,EAAE,CAAC;KAC1B,CAAC,OAAOC,KAAK,EAAO;QACnBJ,KAAK,CAAC,0DAA0D,EAAEI,KAAK,CAACC,OAAO,CAAC,CAAC;QACjF,OAAO,KAAK,CAAC;KACd;CACF;AAEM,eAAeR,oBAAoB,CAACS,KAAe,EAAoB;IAC5E,mCAAmC;IACnCJ,cAAc,GAAGK,CAAAA,GAAAA,KAAgB,AAE/B,CAAA,iBAF+B,CAAC,IAAM;QACtCT,mBAAmB,CAACQ,KAAK,CAAC,CAAC;KAC5B,CAAC,CAAC;IAEH,MAAME,OAAO,GAAG,MAAMC,CAAAA,GAAAA,IAAuB,AAAE,CAAA,wBAAF,EAAE,AAAC;IAChD,KAAK,MAAMC,MAAM,IAAIF,OAAO,CAAE;QAC5B,KAAK,MAAMG,IAAI,IAAIL,KAAK,CAAE;YACxB,IAAI,CAAE,MAAMM,eAAe,CAACF,MAAM,EAAEC,IAAI,CAAC,AAAC,EAAE;gBAC1CX,KAAK,CAAC,CAAC,6BAA6B,EAAEW,IAAI,CAAC,YAAY,EAAED,MAAM,CAACG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzE,OAAO,KAAK,CAAC;aACd;SACF;KACF;IACD,OAAO,IAAI,CAAC;CACb;AAEM,eAAef,mBAAmB,CAACQ,KAAe,EAAiB;IACxEJ,cAAc,QAAI,GAAlBA,KAAAA,CAAkB,GAAlBA,cAAc,EAAI,AArCpB,CAqCqB;IAEnB,MAAMM,OAAO,GAAG,MAAMC,CAAAA,GAAAA,IAAuB,AAAE,CAAA,wBAAF,EAAE,AAAC;IAChD,KAAK,MAAMC,MAAM,IAAIF,OAAO,CAAE;QAC5B,KAAK,MAAMG,IAAI,IAAIL,KAAK,CAAE;YACxB,MAAMQ,qBAAqB,CAACJ,MAAM,EAAEC,IAAI,CAAC,CAAC;SAC3C;KACF;CACF;AAED,eAAeC,eAAe,CAACF,MAAc,EAAEC,IAAY,EAAoB;IAC7E,IAAI,CAACD,MAAM,CAACK,YAAY,EAAE;QACxBC,CAAAA,GAAAA,IAAe,AAAQ,CAAA,gBAAR,CAACN,MAAM,CAAC,CAAC;QACxB,OAAO,KAAK,CAAC;KACd;IAED,IAAI;QACF,MAAMO,CAAAA,GAAAA,IAAS,AAAE,CAAA,UAAF,EAAE,CAACC,QAAQ,CAACC,CAAAA,GAAAA,IAAO,AAAqD,CAAA,QAArD,CAACT,MAAM,CAACU,GAAG,EAAE,SAAS,EAAE,CAAC,IAAI,EAAET,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,EAAEA,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,OAAO,IAAI,CAAC;KACb,CAAC,OAAOP,KAAK,EAAO;QACnBL,GAAG,CAACsB,IAAI,CAAC,CAAC,4BAA4B,EAAEV,IAAI,CAAC,EAAE,EAAEP,KAAK,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;KACd;CACF;AAED,eAAeS,qBAAqB,CAACJ,MAAc,EAAEC,IAAY,EAAoB;IACnF,IAAI,CAACD,MAAM,CAACK,YAAY,EAAE;QACxB,OAAO,KAAK,CAAC;KACd;IAED,IAAI;QACF,MAAME,CAAAA,GAAAA,IAAS,AAAE,CAAA,UAAF,EAAE,CAACC,QAAQ,CAACC,CAAAA,GAAAA,IAAO,AAAkD,CAAA,QAAlD,CAACT,MAAM,CAACU,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,IAAI,EAAET,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,OAAO,IAAI,CAAC;KACb,CAAC,OAAOP,KAAK,EAAO;QACnB,sEAAsE;QACtEJ,KAAK,CAAC,CAAC,yBAAyB,EAAEW,IAAI,CAAC,EAAE,EAAEP,KAAK,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5D,OAAO,KAAK,CAAC;KACd;CACF"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/adbReverse.ts"],"sourcesContent":["import { assertSdkRoot } from './AndroidSdk';\nimport { adbArgs, Device, getAttachedDevicesAsync, getServer, logUnauthorized } from './adb';\nimport * as Log from '../../../log';\nimport { installExitHooks } from '../../../utils/exit';\n\nconst debug = require('debug')('expo:start:platforms:android:adbReverse') as typeof console.log;\n\nlet removeExitHook: (() => void) | null = null;\n\nexport function hasAdbReverseAsync(): boolean {\n try {\n return !!assertSdkRoot();\n } catch (error: any) {\n debug('Failed to resolve the Android SDK path, skipping ADB: %s', error.message);\n return false;\n }\n}\n\nexport async function startAdbReverseAsync(ports: number[]): Promise<boolean> {\n // Install cleanup automatically...\n removeExitHook = installExitHooks(() => {\n stopAdbReverseAsync(ports);\n });\n\n const devices = await getAttachedDevicesAsync();\n for (const device of devices) {\n for (const port of ports) {\n if (!(await adbReverseAsync(device, port))) {\n debug(`Failed to start reverse port ${port} on device \"${device.name}\"`);\n return false;\n }\n }\n }\n return true;\n}\n\nexport async function stopAdbReverseAsync(ports: number[]): Promise<void> {\n removeExitHook?.();\n\n const devices = await getAttachedDevicesAsync();\n for (const device of devices) {\n for (const port of ports) {\n await adbReverseRemoveAsync(device, port);\n }\n }\n}\n\nasync function adbReverseAsync(device: Device, port: number): Promise<boolean> {\n if (!device.isAuthorized) {\n logUnauthorized(device);\n return false;\n }\n\n try {\n await getServer().runAsync(adbArgs(device.pid, 'reverse', `tcp:${port}`, `tcp:${port}`));\n return true;\n } catch (error: any) {\n Log.warn(`[ADB] Couldn't reverse port ${port}: ${error.message}`);\n return false;\n }\n}\n\nasync function adbReverseRemoveAsync(device: Device, port: number): Promise<boolean> {\n if (!device.isAuthorized) {\n return false;\n }\n\n try {\n await getServer().runAsync(adbArgs(device.pid, 'reverse', '--remove', `tcp:${port}`));\n return true;\n } catch (error: any) {\n // Don't send this to warn because we call this preemptively sometimes\n debug(`Could not unforward port ${port}: ${error.message}`);\n return false;\n }\n}\n"],"names":["hasAdbReverseAsync","startAdbReverseAsync","stopAdbReverseAsync","debug","require","removeExitHook","assertSdkRoot","error","message","ports","installExitHooks","devices","getAttachedDevicesAsync","device","port","adbReverseAsync","name","adbReverseRemoveAsync","isAuthorized","logUnauthorized","getServer","runAsync","adbArgs","pid","Log","warn"],"mappings":"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"}
@@ -2,46 +2,95 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.whichEmulator = whichEmulator;
6
- exports.listAvdsAsync = listAvdsAsync;
7
- exports.startDeviceAsync = startDeviceAsync;
8
- exports.EMULATOR_MAX_WAIT_TIMEOUT = void 0;
9
- var _spawnAsync = _interopRequireDefault(require("@expo/spawn-async"));
10
- var _chalk = _interopRequireDefault(require("chalk"));
11
- var _childProcess = require("child_process");
12
- var _os = _interopRequireDefault(require("os"));
13
- var _adb = require("./adb");
14
- var Log = _interopRequireWildcard(require("../../../log"));
15
- var _errors = require("../../../utils/errors");
16
- var _exit = require("../../../utils/exit");
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ EMULATOR_MAX_WAIT_TIMEOUT: ()=>EMULATOR_MAX_WAIT_TIMEOUT,
13
+ whichEmulator: ()=>whichEmulator,
14
+ listAvdsAsync: ()=>listAvdsAsync,
15
+ startDeviceAsync: ()=>startDeviceAsync
16
+ });
17
+ function _spawnAsync() {
18
+ const data = /*#__PURE__*/ _interopRequireDefault(require("@expo/spawn-async"));
19
+ _spawnAsync = function() {
20
+ return data;
21
+ };
22
+ return data;
23
+ }
24
+ function _chalk() {
25
+ const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
26
+ _chalk = function() {
27
+ return data;
28
+ };
29
+ return data;
30
+ }
31
+ function _childProcess() {
32
+ const data = require("child_process");
33
+ _childProcess = function() {
34
+ return data;
35
+ };
36
+ return data;
37
+ }
38
+ function _os() {
39
+ const data = /*#__PURE__*/ _interopRequireDefault(require("os"));
40
+ _os = function() {
41
+ return data;
42
+ };
43
+ return data;
44
+ }
45
+ const _adb = require("./adb");
46
+ const _log = /*#__PURE__*/ _interopRequireWildcard(require("../../../log"));
47
+ const _errors = require("../../../utils/errors");
48
+ const _exit = require("../../../utils/exit");
17
49
  function _interopRequireDefault(obj) {
18
50
  return obj && obj.__esModule ? obj : {
19
51
  default: obj
20
52
  };
21
53
  }
22
- function _interopRequireWildcard(obj) {
23
- if (obj && obj.__esModule) {
54
+ function _getRequireWildcardCache(nodeInterop) {
55
+ if (typeof WeakMap !== "function") return null;
56
+ var cacheBabelInterop = new WeakMap();
57
+ var cacheNodeInterop = new WeakMap();
58
+ return (_getRequireWildcardCache = function(nodeInterop) {
59
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
60
+ })(nodeInterop);
61
+ }
62
+ function _interopRequireWildcard(obj, nodeInterop) {
63
+ if (!nodeInterop && obj && obj.__esModule) {
24
64
  return obj;
25
- } else {
26
- var newObj = {};
27
- if (obj != null) {
28
- for(var key in obj){
29
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
30
- var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
31
- if (desc.get || desc.set) {
32
- Object.defineProperty(newObj, key, desc);
33
- } else {
34
- newObj[key] = obj[key];
35
- }
36
- }
65
+ }
66
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
67
+ return {
68
+ default: obj
69
+ };
70
+ }
71
+ var cache = _getRequireWildcardCache(nodeInterop);
72
+ if (cache && cache.has(obj)) {
73
+ return cache.get(obj);
74
+ }
75
+ var newObj = {};
76
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
77
+ for(var key in obj){
78
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
79
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
80
+ if (desc && (desc.get || desc.set)) {
81
+ Object.defineProperty(newObj, key, desc);
82
+ } else {
83
+ newObj[key] = obj[key];
37
84
  }
38
85
  }
39
- newObj.default = obj;
40
- return newObj;
41
86
  }
87
+ newObj.default = obj;
88
+ if (cache) {
89
+ cache.set(obj, newObj);
90
+ }
91
+ return newObj;
42
92
  }
43
93
  const EMULATOR_MAX_WAIT_TIMEOUT = 60 * 1000 * 3;
44
- exports.EMULATOR_MAX_WAIT_TIMEOUT = EMULATOR_MAX_WAIT_TIMEOUT;
45
94
  function whichEmulator() {
46
95
  // https://developer.android.com/studio/command-line/variables
47
96
  // TODO: Add ANDROID_SDK_ROOT support as well https://github.com/expo/expo/pull/16516#discussion_r820037917
@@ -52,29 +101,27 @@ function whichEmulator() {
52
101
  }
53
102
  async function listAvdsAsync() {
54
103
  try {
55
- const { stdout } = await (0, _spawnAsync).default(whichEmulator(), [
104
+ const { stdout } = await (0, _spawnAsync().default)(whichEmulator(), [
56
105
  "-list-avds"
57
106
  ]);
58
- return stdout.split(_os.default.EOL).filter(Boolean)/**
107
+ return stdout.split(_os().default.EOL).filter(Boolean)/**
59
108
  * AVD IDs cannot contain spaces. This removes extra info lines from the output. e.g.
60
109
  * "INFO | Storing crashdata in: /tmp/android-brent/emu-crash-34.1.18.db
61
- */ .filter((name)=>!name.trim().includes(" ")
62
- ).map((name)=>({
110
+ */ .filter((name)=>!name.trim().includes(" ")).map((name)=>({
63
111
  name,
64
112
  type: "emulator",
65
113
  // unsure from this
66
114
  isBooted: false,
67
115
  isAuthorized: true
68
- })
69
- );
116
+ }));
70
117
  } catch {
71
118
  return [];
72
119
  }
73
120
  }
74
121
  async function startDeviceAsync(device, { timeout =EMULATOR_MAX_WAIT_TIMEOUT , interval =1000 } = {}) {
75
- Log.log(`\u203A Opening emulator ${_chalk.default.bold(device.name)}`);
122
+ _log.log(`\u203A Opening emulator ${_chalk().default.bold(device.name)}`);
76
123
  // Start a process to open an emulator
77
- const emulatorProcess = (0, _childProcess).spawn(whichEmulator(), [
124
+ const emulatorProcess = (0, _childProcess().spawn)(whichEmulator(), [
78
125
  `@${device.name}`
79
126
  ], {
80
127
  stdio: "ignore",
@@ -84,11 +131,10 @@ async function startDeviceAsync(device, { timeout =EMULATOR_MAX_WAIT_TIMEOUT , i
84
131
  return new Promise((resolve, reject)=>{
85
132
  const waitTimer = setInterval(async ()=>{
86
133
  try {
87
- const bootedDevices = await (0, _adb).getAttachedDevicesAsync();
88
- const connected = bootedDevices.find(({ name })=>name === device.name
89
- );
134
+ const bootedDevices = await (0, _adb.getAttachedDevicesAsync)();
135
+ const connected = bootedDevices.find(({ name })=>name === device.name);
90
136
  if (connected) {
91
- const isBooted = await (0, _adb).isBootAnimationCompleteAsync(connected.pid);
137
+ const isBooted = await (0, _adb.isBootAnimationCompleteAsync)(connected.pid);
92
138
  if (isBooted) {
93
139
  stopWaiting();
94
140
  resolve(connected);
@@ -113,13 +159,12 @@ async function startDeviceAsync(device, { timeout =EMULATOR_MAX_WAIT_TIMEOUT , i
113
159
  stopWaiting();
114
160
  reject(new Error(message));
115
161
  };
116
- const removeExitHook = (0, _exit).installExitHooks((signal)=>{
162
+ const removeExitHook = (0, _exit.installExitHooks)((signal)=>{
117
163
  stopWaiting();
118
164
  emulatorProcess.kill(signal);
119
165
  reject(new _errors.AbortCommandError());
120
166
  });
121
- emulatorProcess.on("error", ({ message })=>stopWaitingAndReject(message)
122
- );
167
+ emulatorProcess.on("error", ({ message })=>stopWaitingAndReject(message));
123
168
  emulatorProcess.on("exit", ()=>{
124
169
  const manualCommand = `${whichEmulator()} @${device.name}`;
125
170
  stopWaitingAndReject(`The emulator (${device.name}) quit before it finished opening. You can try starting the emulator manually from the terminal with: ${manualCommand}`);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/android/emulator.ts"],"sourcesContent":["import spawnAsync from '@expo/spawn-async';\nimport chalk from 'chalk';\nimport { spawn } from 'child_process';\nimport os from 'os';\n\nimport { Device, getAttachedDevicesAsync, isBootAnimationCompleteAsync } from './adb';\nimport * as Log from '../../../log';\nimport { AbortCommandError } from '../../../utils/errors';\nimport { installExitHooks } from '../../../utils/exit';\n\nexport const EMULATOR_MAX_WAIT_TIMEOUT = 60 * 1000 * 3;\n\nexport function whichEmulator(): string {\n // https://developer.android.com/studio/command-line/variables\n // TODO: Add ANDROID_SDK_ROOT support as well https://github.com/expo/expo/pull/16516#discussion_r820037917\n if (process.env.ANDROID_HOME) {\n return `${process.env.ANDROID_HOME}/emulator/emulator`;\n }\n return 'emulator';\n}\n\n/** Returns a list of emulator names. */\nexport async function listAvdsAsync(): Promise<Device[]> {\n try {\n const { stdout } = await spawnAsync(whichEmulator(), ['-list-avds']);\n return (\n stdout\n .split(os.EOL)\n .filter(Boolean)\n /**\n * AVD IDs cannot contain spaces. This removes extra info lines from the output. e.g.\n * \"INFO | Storing crashdata in: /tmp/android-brent/emu-crash-34.1.18.db\n */\n .filter((name) => !name.trim().includes(' '))\n .map((name) => ({\n name,\n type: 'emulator',\n // unsure from this\n isBooted: false,\n isAuthorized: true,\n }))\n );\n } catch {\n return [];\n }\n}\n\n/** Start an Android device and wait until it is booted. */\nexport async function startDeviceAsync(\n device: Pick<Device, 'name'>,\n {\n timeout = EMULATOR_MAX_WAIT_TIMEOUT,\n interval = 1000,\n }: {\n /** Time in milliseconds to wait before asserting a timeout error. */\n timeout?: number;\n interval?: number;\n } = {}\n): Promise<Device> {\n Log.log(`\\u203A Opening emulator ${chalk.bold(device.name)}`);\n\n // Start a process to open an emulator\n const emulatorProcess = spawn(\n whichEmulator(),\n [\n `@${device.name}`,\n // disable animation for faster boot -- this might make it harder to detect if it mounted properly tho\n //'-no-boot-anim'\n ],\n {\n stdio: 'ignore',\n detached: true,\n }\n );\n\n emulatorProcess.unref();\n\n return new Promise<Device>((resolve, reject) => {\n const waitTimer = setInterval(async () => {\n try {\n const bootedDevices = await getAttachedDevicesAsync();\n const connected = bootedDevices.find(({ name }) => name === device.name);\n if (connected) {\n const isBooted = await isBootAnimationCompleteAsync(connected.pid);\n if (isBooted) {\n stopWaiting();\n resolve(connected);\n }\n }\n } catch (error) {\n stopWaiting();\n reject(error);\n }\n }, interval);\n\n // Reject command after timeout\n const maxTimer = setTimeout(() => {\n const manualCommand = `${whichEmulator()} @${device.name}`;\n stopWaitingAndReject(\n `It took too long to start the Android emulator: ${device.name}. You can try starting the emulator manually from the terminal with: ${manualCommand}`\n );\n }, timeout);\n\n const stopWaiting = () => {\n clearTimeout(maxTimer);\n clearInterval(waitTimer);\n removeExitHook();\n };\n\n const stopWaitingAndReject = (message: string) => {\n stopWaiting();\n reject(new Error(message));\n };\n\n const removeExitHook = installExitHooks((signal) => {\n stopWaiting();\n emulatorProcess.kill(signal);\n reject(new AbortCommandError());\n });\n\n emulatorProcess.on('error', ({ message }) => stopWaitingAndReject(message));\n\n emulatorProcess.on('exit', () => {\n const manualCommand = `${whichEmulator()} @${device.name}`;\n stopWaitingAndReject(\n `The emulator (${device.name}) quit before it finished opening. You can try starting the emulator manually from the terminal with: ${manualCommand}`\n );\n });\n });\n}\n"],"names":["whichEmulator","listAvdsAsync","startDeviceAsync","Log","EMULATOR_MAX_WAIT_TIMEOUT","process","env","ANDROID_HOME","stdout","spawnAsync","split","os","EOL","filter","Boolean","name","trim","includes","map","type","isBooted","isAuthorized","device","timeout","interval","log","chalk","bold","emulatorProcess","spawn","stdio","detached","unref","Promise","resolve","reject","waitTimer","setInterval","bootedDevices","getAttachedDevicesAsync","connected","find","isBootAnimationCompleteAsync","pid","stopWaiting","error","maxTimer","setTimeout","manualCommand","stopWaitingAndReject","clearTimeout","clearInterval","removeExitHook","message","Error","installExitHooks","signal","kill","AbortCommandError","on"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/emulator.ts"],"sourcesContent":["import spawnAsync from '@expo/spawn-async';\nimport chalk from 'chalk';\nimport { spawn } from 'child_process';\nimport os from 'os';\n\nimport { Device, getAttachedDevicesAsync, isBootAnimationCompleteAsync } from './adb';\nimport * as Log from '../../../log';\nimport { AbortCommandError } from '../../../utils/errors';\nimport { installExitHooks } from '../../../utils/exit';\n\nexport const EMULATOR_MAX_WAIT_TIMEOUT = 60 * 1000 * 3;\n\nexport function whichEmulator(): string {\n // https://developer.android.com/studio/command-line/variables\n // TODO: Add ANDROID_SDK_ROOT support as well https://github.com/expo/expo/pull/16516#discussion_r820037917\n if (process.env.ANDROID_HOME) {\n return `${process.env.ANDROID_HOME}/emulator/emulator`;\n }\n return 'emulator';\n}\n\n/** Returns a list of emulator names. */\nexport async function listAvdsAsync(): Promise<Device[]> {\n try {\n const { stdout } = await spawnAsync(whichEmulator(), ['-list-avds']);\n return (\n stdout\n .split(os.EOL)\n .filter(Boolean)\n /**\n * AVD IDs cannot contain spaces. This removes extra info lines from the output. e.g.\n * \"INFO | Storing crashdata in: /tmp/android-brent/emu-crash-34.1.18.db\n */\n .filter((name) => !name.trim().includes(' '))\n .map((name) => ({\n name,\n type: 'emulator',\n // unsure from this\n isBooted: false,\n isAuthorized: true,\n }))\n );\n } catch {\n return [];\n }\n}\n\n/** Start an Android device and wait until it is booted. */\nexport async function startDeviceAsync(\n device: Pick<Device, 'name'>,\n {\n timeout = EMULATOR_MAX_WAIT_TIMEOUT,\n interval = 1000,\n }: {\n /** Time in milliseconds to wait before asserting a timeout error. */\n timeout?: number;\n interval?: number;\n } = {}\n): Promise<Device> {\n Log.log(`\\u203A Opening emulator ${chalk.bold(device.name)}`);\n\n // Start a process to open an emulator\n const emulatorProcess = spawn(\n whichEmulator(),\n [\n `@${device.name}`,\n // disable animation for faster boot -- this might make it harder to detect if it mounted properly tho\n //'-no-boot-anim'\n ],\n {\n stdio: 'ignore',\n detached: true,\n }\n );\n\n emulatorProcess.unref();\n\n return new Promise<Device>((resolve, reject) => {\n const waitTimer = setInterval(async () => {\n try {\n const bootedDevices = await getAttachedDevicesAsync();\n const connected = bootedDevices.find(({ name }) => name === device.name);\n if (connected) {\n const isBooted = await isBootAnimationCompleteAsync(connected.pid);\n if (isBooted) {\n stopWaiting();\n resolve(connected);\n }\n }\n } catch (error) {\n stopWaiting();\n reject(error);\n }\n }, interval);\n\n // Reject command after timeout\n const maxTimer = setTimeout(() => {\n const manualCommand = `${whichEmulator()} @${device.name}`;\n stopWaitingAndReject(\n `It took too long to start the Android emulator: ${device.name}. You can try starting the emulator manually from the terminal with: ${manualCommand}`\n );\n }, timeout);\n\n const stopWaiting = () => {\n clearTimeout(maxTimer);\n clearInterval(waitTimer);\n removeExitHook();\n };\n\n const stopWaitingAndReject = (message: string) => {\n stopWaiting();\n reject(new Error(message));\n };\n\n const removeExitHook = installExitHooks((signal) => {\n stopWaiting();\n emulatorProcess.kill(signal);\n reject(new AbortCommandError());\n });\n\n emulatorProcess.on('error', ({ message }) => stopWaitingAndReject(message));\n\n emulatorProcess.on('exit', () => {\n const manualCommand = `${whichEmulator()} @${device.name}`;\n stopWaitingAndReject(\n `The emulator (${device.name}) quit before it finished opening. You can try starting the emulator manually from the terminal with: ${manualCommand}`\n );\n });\n });\n}\n"],"names":["EMULATOR_MAX_WAIT_TIMEOUT","whichEmulator","listAvdsAsync","startDeviceAsync","process","env","ANDROID_HOME","stdout","spawnAsync","split","os","EOL","filter","Boolean","name","trim","includes","map","type","isBooted","isAuthorized","device","timeout","interval","Log","log","chalk","bold","emulatorProcess","spawn","stdio","detached","unref","Promise","resolve","reject","waitTimer","setInterval","bootedDevices","getAttachedDevicesAsync","connected","find","isBootAnimationCompleteAsync","pid","stopWaiting","error","maxTimer","setTimeout","manualCommand","stopWaitingAndReject","clearTimeout","clearInterval","removeExitHook","message","Error","installExitHooks","signal","kill","AbortCommandError","on"],"mappings":"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"}
@@ -2,17 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.getDevicesAsync = getDevicesAsync;
6
- var _adb = require("./adb");
7
- var _emulator = require("./emulator");
8
- var _errors = require("../../../utils/errors");
5
+ Object.defineProperty(exports, "getDevicesAsync", {
6
+ enumerable: true,
7
+ get: ()=>getDevicesAsync
8
+ });
9
+ const _adb = require("./adb");
10
+ const _emulator = require("./emulator");
11
+ const _errors = require("../../../utils/errors");
9
12
  async function getDevicesAsync() {
10
- const bootedDevices = await (0, _adb).getAttachedDevicesAsync();
11
- const data = await (0, _emulator).listAvdsAsync();
12
- const connectedNames = bootedDevices.map(({ name })=>name
13
- );
14
- const offlineEmulators = data.filter(({ name })=>!connectedNames.includes(name)
15
- ).map(({ name , type })=>{
13
+ const bootedDevices = await (0, _adb.getAttachedDevicesAsync)();
14
+ const data = await (0, _emulator.listAvdsAsync)();
15
+ const connectedNames = bootedDevices.map(({ name })=>name);
16
+ const offlineEmulators = data.filter(({ name })=>!connectedNames.includes(name)).map(({ name , type })=>{
16
17
  return {
17
18
  name,
18
19
  type,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/android/getDevices.ts"],"sourcesContent":["import { Device, getAttachedDevicesAsync } from './adb';\nimport { listAvdsAsync } from './emulator';\nimport { CommandError } from '../../../utils/errors';\n\n/** Get a list of all devices including offline emulators. Asserts if no devices are available. */\nexport async function getDevicesAsync(): Promise<Device[]> {\n const bootedDevices = await getAttachedDevicesAsync();\n\n const data = await listAvdsAsync();\n const connectedNames = bootedDevices.map(({ name }) => name);\n\n const offlineEmulators = data\n .filter(({ name }) => !connectedNames.includes(name))\n .map(({ name, type }) => {\n return {\n name,\n type,\n isBooted: false,\n // TODO: Are emulators always authorized?\n isAuthorized: true,\n };\n });\n\n const allDevices = bootedDevices.concat(offlineEmulators);\n\n if (!allDevices.length) {\n throw new CommandError(\n [\n `No Android connected device found, and no emulators could be started automatically.`,\n `Please connect a device or create an emulator (https://docs.expo.dev/workflow/android-studio-emulator).`,\n `Then follow the instructions here to enable USB debugging:`,\n `https://developer.android.com/studio/run/device.html#developer-device-options. If you are using Genymotion go to Settings -> ADB, select \"Use custom Android SDK tools\", and point it at your Android SDK directory.`,\n ].join('\\n')\n );\n }\n\n return allDevices;\n}\n"],"names":["getDevicesAsync","bootedDevices","getAttachedDevicesAsync","data","listAvdsAsync","connectedNames","map","name","offlineEmulators","filter","includes","type","isBooted","isAuthorized","allDevices","concat","length","CommandError","join"],"mappings":"AAAA;;;;QAKsBA,eAAe,GAAfA,eAAe;AALW,IAAA,IAAO,WAAP,OAAO,CAAA;AACzB,IAAA,SAAY,WAAZ,YAAY,CAAA;AACb,IAAA,OAAuB,WAAvB,uBAAuB,CAAA;AAG7C,eAAeA,eAAe,GAAsB;IACzD,MAAMC,aAAa,GAAG,MAAMC,CAAAA,GAAAA,IAAuB,AAAE,CAAA,wBAAF,EAAE,AAAC;IAEtD,MAAMC,IAAI,GAAG,MAAMC,CAAAA,GAAAA,SAAa,AAAE,CAAA,cAAF,EAAE,AAAC;IACnC,MAAMC,cAAc,GAAGJ,aAAa,CAACK,GAAG,CAAC,CAAC,EAAEC,IAAI,CAAA,EAAE,GAAKA,IAAI;IAAA,CAAC,AAAC;IAE7D,MAAMC,gBAAgB,GAAGL,IAAI,CAC1BM,MAAM,CAAC,CAAC,EAAEF,IAAI,CAAA,EAAE,GAAK,CAACF,cAAc,CAACK,QAAQ,CAACH,IAAI,CAAC;IAAA,CAAC,CACpDD,GAAG,CAAC,CAAC,EAAEC,IAAI,CAAA,EAAEI,IAAI,CAAA,EAAE,GAAK;QACvB,OAAO;YACLJ,IAAI;YACJI,IAAI;YACJC,QAAQ,EAAE,KAAK;YACf,yCAAyC;YACzCC,YAAY,EAAE,IAAI;SACnB,CAAC;KACH,CAAC,AAAC;IAEL,MAAMC,UAAU,GAAGb,aAAa,CAACc,MAAM,CAACP,gBAAgB,CAAC,AAAC;IAE1D,IAAI,CAACM,UAAU,CAACE,MAAM,EAAE;QACtB,MAAM,IAAIC,OAAY,aAAA,CACpB;YACE,CAAC,mFAAmF,CAAC;YACrF,CAAC,uGAAuG,CAAC;YACzG,CAAC,0DAA0D,CAAC;YAC5D,CAAC,oNAAoN,CAAC;SACvN,CAACC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;KACH;IAED,OAAOJ,UAAU,CAAC;CACnB"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/getDevices.ts"],"sourcesContent":["import { Device, getAttachedDevicesAsync } from './adb';\nimport { listAvdsAsync } from './emulator';\nimport { CommandError } from '../../../utils/errors';\n\n/** Get a list of all devices including offline emulators. Asserts if no devices are available. */\nexport async function getDevicesAsync(): Promise<Device[]> {\n const bootedDevices = await getAttachedDevicesAsync();\n\n const data = await listAvdsAsync();\n const connectedNames = bootedDevices.map(({ name }) => name);\n\n const offlineEmulators = data\n .filter(({ name }) => !connectedNames.includes(name))\n .map(({ name, type }) => {\n return {\n name,\n type,\n isBooted: false,\n // TODO: Are emulators always authorized?\n isAuthorized: true,\n };\n });\n\n const allDevices = bootedDevices.concat(offlineEmulators);\n\n if (!allDevices.length) {\n throw new CommandError(\n [\n `No Android connected device found, and no emulators could be started automatically.`,\n `Please connect a device or create an emulator (https://docs.expo.dev/workflow/android-studio-emulator).`,\n `Then follow the instructions here to enable USB debugging:`,\n `https://developer.android.com/studio/run/device.html#developer-device-options. If you are using Genymotion go to Settings -> ADB, select \"Use custom Android SDK tools\", and point it at your Android SDK directory.`,\n ].join('\\n')\n );\n }\n\n return allDevices;\n}\n"],"names":["getDevicesAsync","bootedDevices","getAttachedDevicesAsync","data","listAvdsAsync","connectedNames","map","name","offlineEmulators","filter","includes","type","isBooted","isAuthorized","allDevices","concat","length","CommandError","join"],"mappings":"AAAA;;;;+BAKsBA,iBAAe;;aAAfA,eAAe;;qBALW,OAAO;0BACzB,YAAY;wBACb,uBAAuB;AAG7C,eAAeA,eAAe,GAAsB;IACzD,MAAMC,aAAa,GAAG,MAAMC,IAAAA,IAAuB,wBAAA,GAAE,AAAC;IAEtD,MAAMC,IAAI,GAAG,MAAMC,IAAAA,SAAa,cAAA,GAAE,AAAC;IACnC,MAAMC,cAAc,GAAGJ,aAAa,CAACK,GAAG,CAAC,CAAC,EAAEC,IAAI,CAAA,EAAE,GAAKA,IAAI,CAAC,AAAC;IAE7D,MAAMC,gBAAgB,GAAGL,IAAI,CAC1BM,MAAM,CAAC,CAAC,EAAEF,IAAI,CAAA,EAAE,GAAK,CAACF,cAAc,CAACK,QAAQ,CAACH,IAAI,CAAC,CAAC,CACpDD,GAAG,CAAC,CAAC,EAAEC,IAAI,CAAA,EAAEI,IAAI,CAAA,EAAE,GAAK;QACvB,OAAO;YACLJ,IAAI;YACJI,IAAI;YACJC,QAAQ,EAAE,KAAK;YACf,yCAAyC;YACzCC,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC,CAAC,AAAC;IAEL,MAAMC,UAAU,GAAGb,aAAa,CAACc,MAAM,CAACP,gBAAgB,CAAC,AAAC;IAE1D,IAAI,CAACM,UAAU,CAACE,MAAM,EAAE;QACtB,MAAM,IAAIC,OAAY,aAAA,CACpB;YACE,CAAC,mFAAmF,CAAC;YACrF,CAAC,uGAAuG,CAAC;YACzG,CAAC,0DAA0D,CAAC;YAC5D,CAAC,oNAAoN,CAAC;SACvN,CAACC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IAED,OAAOJ,UAAU,CAAC;AACpB,CAAC"}
@@ -2,14 +2,34 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.formatGradleArguments = formatGradleArguments;
6
- exports.assembleAsync = assembleAsync;
7
- exports.installAsync = installAsync;
8
- exports.spawnGradleAsync = spawnGradleAsync;
9
- var _spawnAsync = _interopRequireDefault(require("@expo/spawn-async"));
10
- var _path = _interopRequireDefault(require("path"));
11
- var _env = require("../../../utils/env");
12
- var _errors = require("../../../utils/errors");
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ formatGradleArguments: ()=>formatGradleArguments,
13
+ assembleAsync: ()=>assembleAsync,
14
+ installAsync: ()=>installAsync,
15
+ spawnGradleAsync: ()=>spawnGradleAsync
16
+ });
17
+ function _spawnAsync() {
18
+ const data = /*#__PURE__*/ _interopRequireDefault(require("@expo/spawn-async"));
19
+ _spawnAsync = function() {
20
+ return data;
21
+ };
22
+ return data;
23
+ }
24
+ function _path() {
25
+ const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
26
+ _path = function() {
27
+ return data;
28
+ };
29
+ return data;
30
+ }
31
+ const _env = require("../../../utils/env");
32
+ const _errors = require("../../../utils/errors");
13
33
  function _interopRequireDefault(obj) {
14
34
  return obj && obj.__esModule ? obj : {
15
35
  default: obj
@@ -22,16 +42,18 @@ function upperFirst(name) {
22
42
  function formatGradleArguments(cmd, { appName , variant , tasks =[
23
43
  cmd + upperFirst(variant)
24
44
  ] }) {
25
- return appName ? tasks.map((task)=>`${appName}:${task}`
26
- ) : tasks;
45
+ return appName ? tasks.map((task)=>`${appName}:${task}`) : tasks;
27
46
  }
28
47
  function resolveGradleWPath(androidProjectPath) {
29
- return _path.default.join(androidProjectPath, process.platform === "win32" ? "gradlew.bat" : "gradlew");
48
+ return _path().default.join(androidProjectPath, process.platform === "win32" ? "gradlew.bat" : "gradlew");
30
49
  }
31
50
  function getPortArg(port) {
32
51
  return `-PreactNativeDevServerPort=${port}`;
33
52
  }
34
- async function assembleAsync(androidProjectPath, { variant , port , appName , buildCache }) {
53
+ function getActiveArchArg(architectures) {
54
+ return `-PreactNativeArchitectures=${architectures}`;
55
+ }
56
+ async function assembleAsync(androidProjectPath, { variant , port , appName , buildCache , architectures }) {
35
57
  const task = formatGradleArguments("assemble", {
36
58
  variant,
37
59
  appName
@@ -51,6 +73,7 @@ async function assembleAsync(androidProjectPath, { variant , port , appName , bu
51
73
  if (_env.env.EXPO_PROFILE) args.push("--profile");
52
74
  return await spawnGradleAsync(androidProjectPath, {
53
75
  port,
76
+ architectures,
54
77
  args
55
78
  });
56
79
  }
@@ -64,12 +87,13 @@ async function installAsync(androidProjectPath, { variant , appName , port }) {
64
87
  args
65
88
  });
66
89
  }
67
- async function spawnGradleAsync(projectRoot, { port , args }) {
90
+ async function spawnGradleAsync(projectRoot, { port , architectures , args }) {
68
91
  const gradlew = resolveGradleWPath(projectRoot);
69
92
  if (port != null) args.push(getPortArg(port));
93
+ if (architectures) args.push(getActiveArchArg(architectures));
70
94
  debug(` ${gradlew} ${args.join(" ")}`);
71
95
  try {
72
- return await (0, _spawnAsync).default(gradlew, args, {
96
+ return await (0, _spawnAsync().default)(gradlew, args, {
73
97
  cwd: projectRoot,
74
98
  stdio: "inherit"
75
99
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/android/gradle.ts"],"sourcesContent":["import spawnAsync, { SpawnResult } from '@expo/spawn-async';\nimport path from 'path';\n\nimport { env } from '../../../utils/env';\nimport { AbortCommandError } from '../../../utils/errors';\n\nconst debug = require('debug')('expo:start:platforms:android:gradle') as typeof console.log;\n\nfunction upperFirst(name: string) {\n return name.charAt(0).toUpperCase() + name.slice(1);\n}\n\n/** Format gradle assemble arguments. Exposed for testing. */\nexport function formatGradleArguments(\n cmd: 'assemble' | 'install',\n {\n appName,\n variant,\n tasks = [cmd + upperFirst(variant)],\n }: { tasks?: string[]; variant: string; appName: string }\n): string[] {\n return appName ? tasks.map((task) => `${appName}:${task}`) : tasks;\n}\n\nfunction resolveGradleWPath(androidProjectPath: string): string {\n return path.join(androidProjectPath, process.platform === 'win32' ? 'gradlew.bat' : 'gradlew');\n}\n\nfunction getPortArg(port: number): string {\n return `-PreactNativeDevServerPort=${port}`;\n}\n\n/**\n * Build the Android project using Gradle.\n *\n * @param androidProjectPath - Path to the Android project like `projectRoot/android`.\n * @param props.variant - Variant to install.\n * @param props.appName - Name of the 'app' folder, this appears to always be `app`.\n * @param props.port - Dev server port to pass to the install command.\n * @param props.buildCache - Should use the `--build-cache` flag, enabling the [Gradle build cache](https://docs.gradle.org/current/userguide/build_cache.html).\n * @returns - A promise resolving to spawn results.\n */\nexport async function assembleAsync(\n androidProjectPath: string,\n {\n variant,\n port,\n appName,\n buildCache,\n }: {\n variant: string;\n port?: number;\n appName: string;\n buildCache?: boolean;\n }\n): Promise<SpawnResult> {\n const task = formatGradleArguments('assemble', { variant, appName });\n const args = [\n ...task,\n // ignore linting errors\n '-x',\n 'lint',\n // ignore tests\n '-x',\n 'test',\n '--configure-on-demand',\n ];\n\n if (buildCache) args.push('--build-cache');\n\n // Generate a profile under `/android/app/build/reports/profile`\n if (env.EXPO_PROFILE) args.push('--profile');\n\n return await spawnGradleAsync(androidProjectPath, { port, args });\n}\n\n/**\n * Install an app on device or emulator using `gradlew install`.\n *\n * @param androidProjectPath - Path to the Android project like `projectRoot/android`.\n * @param props.variant - Variant to install.\n * @param props.appName - Name of the 'app' folder, this appears to always be `app`.\n * @param props.port - Dev server port to pass to the install command.\n * @returns - A promise resolving to spawn results.\n */\nexport async function installAsync(\n androidProjectPath: string,\n {\n variant,\n appName,\n port,\n }: {\n variant: string;\n appName: string;\n port?: number;\n }\n): Promise<SpawnResult> {\n const args = formatGradleArguments('install', { variant, appName });\n return await spawnGradleAsync(androidProjectPath, { port, args });\n}\n\nexport async function spawnGradleAsync(\n projectRoot: string,\n { port, args }: { port?: number; args: string[] }\n): Promise<SpawnResult> {\n const gradlew = resolveGradleWPath(projectRoot);\n if (port != null) args.push(getPortArg(port));\n debug(` ${gradlew} ${args.join(' ')}`);\n try {\n return await spawnAsync(gradlew, args, {\n cwd: projectRoot,\n stdio: 'inherit',\n });\n } catch (error: any) {\n // User aborted the command with ctrl-c\n if (error.status === 130) {\n // Fail silently\n throw new AbortCommandError();\n }\n throw error;\n }\n}\n"],"names":["formatGradleArguments","assembleAsync","installAsync","spawnGradleAsync","debug","require","upperFirst","name","charAt","toUpperCase","slice","cmd","appName","variant","tasks","map","task","resolveGradleWPath","androidProjectPath","path","join","process","platform","getPortArg","port","buildCache","args","push","env","EXPO_PROFILE","projectRoot","gradlew","spawnAsync","cwd","stdio","error","status","AbortCommandError"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/gradle.ts"],"sourcesContent":["import spawnAsync, { SpawnResult } from '@expo/spawn-async';\nimport path from 'path';\n\nimport { env } from '../../../utils/env';\nimport { AbortCommandError } from '../../../utils/errors';\n\nconst debug = require('debug')('expo:start:platforms:android:gradle') as typeof console.log;\n\nfunction upperFirst(name: string) {\n return name.charAt(0).toUpperCase() + name.slice(1);\n}\n\n/** Format gradle assemble arguments. Exposed for testing. */\nexport function formatGradleArguments(\n cmd: 'assemble' | 'install',\n {\n appName,\n variant,\n tasks = [cmd + upperFirst(variant)],\n }: { tasks?: string[]; variant: string; appName: string }\n): string[] {\n return appName ? tasks.map((task) => `${appName}:${task}`) : tasks;\n}\n\nfunction resolveGradleWPath(androidProjectPath: string): string {\n return path.join(androidProjectPath, process.platform === 'win32' ? 'gradlew.bat' : 'gradlew');\n}\n\nfunction getPortArg(port: number): string {\n return `-PreactNativeDevServerPort=${port}`;\n}\n\nfunction getActiveArchArg(architectures: string): string {\n return `-PreactNativeArchitectures=${architectures}`;\n}\n\n/**\n * Build the Android project using Gradle.\n *\n * @param androidProjectPath - Path to the Android project like `projectRoot/android`.\n * @param props.variant - Variant to install.\n * @param props.appName - Name of the 'app' folder, this appears to always be `app`.\n * @param props.port - Dev server port to pass to the install command.\n * @param props.buildCache - Should use the `--build-cache` flag, enabling the [Gradle build cache](https://docs.gradle.org/current/userguide/build_cache.html).\n * @param props.architectures - Architectures to build for.\n * @returns - A promise resolving to spawn results.\n */\nexport async function assembleAsync(\n androidProjectPath: string,\n {\n variant,\n port,\n appName,\n buildCache,\n architectures,\n }: {\n variant: string;\n port?: number;\n appName: string;\n buildCache?: boolean;\n architectures?: string;\n }\n): Promise<SpawnResult> {\n const task = formatGradleArguments('assemble', { variant, appName });\n const args = [\n ...task,\n // ignore linting errors\n '-x',\n 'lint',\n // ignore tests\n '-x',\n 'test',\n '--configure-on-demand',\n ];\n\n if (buildCache) args.push('--build-cache');\n\n // Generate a profile under `/android/app/build/reports/profile`\n if (env.EXPO_PROFILE) args.push('--profile');\n\n return await spawnGradleAsync(androidProjectPath, { port, architectures, args });\n}\n\n/**\n * Install an app on device or emulator using `gradlew install`.\n *\n * @param androidProjectPath - Path to the Android project like `projectRoot/android`.\n * @param props.variant - Variant to install.\n * @param props.appName - Name of the 'app' folder, this appears to always be `app`.\n * @param props.port - Dev server port to pass to the install command.\n * @returns - A promise resolving to spawn results.\n */\nexport async function installAsync(\n androidProjectPath: string,\n {\n variant,\n appName,\n port,\n }: {\n variant: string;\n appName: string;\n port?: number;\n }\n): Promise<SpawnResult> {\n const args = formatGradleArguments('install', { variant, appName });\n return await spawnGradleAsync(androidProjectPath, { port, args });\n}\n\nexport async function spawnGradleAsync(\n projectRoot: string,\n { port, architectures, args }: { port?: number; architectures?: string; args: string[] }\n): Promise<SpawnResult> {\n const gradlew = resolveGradleWPath(projectRoot);\n if (port != null) args.push(getPortArg(port));\n if (architectures) args.push(getActiveArchArg(architectures));\n debug(` ${gradlew} ${args.join(' ')}`);\n try {\n return await spawnAsync(gradlew, args, {\n cwd: projectRoot,\n stdio: 'inherit',\n });\n } catch (error: any) {\n // User aborted the command with ctrl-c\n if (error.status === 130) {\n // Fail silently\n throw new AbortCommandError();\n }\n throw error;\n }\n}\n"],"names":["formatGradleArguments","assembleAsync","installAsync","spawnGradleAsync","debug","require","upperFirst","name","charAt","toUpperCase","slice","cmd","appName","variant","tasks","map","task","resolveGradleWPath","androidProjectPath","path","join","process","platform","getPortArg","port","getActiveArchArg","architectures","buildCache","args","push","env","EXPO_PROFILE","projectRoot","gradlew","spawnAsync","cwd","stdio","error","status","AbortCommandError"],"mappings":"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"}