@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,11 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.promptForDeviceAsync = promptForDeviceAsync;
6
- var _chalk = _interopRequireDefault(require("chalk"));
7
- var _adb = require("./adb");
8
- var _errors = require("../../../utils/errors");
9
- var _prompts = require("../../../utils/prompts");
5
+ Object.defineProperty(exports, "promptForDeviceAsync", {
6
+ enumerable: true,
7
+ get: ()=>promptForDeviceAsync
8
+ });
9
+ function _chalk() {
10
+ const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
11
+ _chalk = function() {
12
+ return data;
13
+ };
14
+ return data;
15
+ }
16
+ const _adb = require("./adb");
17
+ const _errors = require("../../../utils/errors");
18
+ const _prompts = require("../../../utils/prompts");
10
19
  function _interopRequireDefault(obj) {
11
20
  return obj && obj.__esModule ? obj : {
12
21
  default: obj
@@ -16,20 +25,18 @@ function nameStyleForDevice(device) {
16
25
  const isActive = device.isBooted;
17
26
  if (!isActive) {
18
27
  // Use no style changes for a disconnected device that is available to be opened.
19
- return (text)=>text
20
- ;
28
+ return (text)=>text;
21
29
  }
22
30
  // A device that is connected and ready to be used should be bolded to match iOS.
23
31
  if (device.isAuthorized) {
24
- return _chalk.default.bold;
32
+ return _chalk().default.bold;
25
33
  }
26
34
  // Devices that are unauthorized and connected cannot be used, but they are connected so gray them out.
27
- return (text)=>_chalk.default.bold(_chalk.default.gray(text))
28
- ;
35
+ return (text)=>_chalk().default.bold(_chalk().default.gray(text));
29
36
  }
30
37
  async function promptForDeviceAsync(devices) {
31
38
  // TODO: provide an option to add or download more simulators
32
- const { value } = await (0, _prompts).promptAsync({
39
+ const { value } = await (0, _prompts.promptAsync)({
33
40
  type: "autocomplete",
34
41
  name: "value",
35
42
  limit: 11,
@@ -38,16 +45,15 @@ async function promptForDeviceAsync(devices) {
38
45
  const format = nameStyleForDevice(item);
39
46
  const type = item.isAuthorized ? item.type : "unauthorized";
40
47
  return {
41
- title: `${format(item.name)} ${_chalk.default.dim(`(${type})`)}`,
48
+ title: `${format(item.name)} ${_chalk().default.dim(`(${type})`)}`,
42
49
  value: item.name
43
50
  };
44
51
  }),
45
- suggest: (0, _prompts).createSelectionFilter()
52
+ suggest: (0, _prompts.createSelectionFilter)()
46
53
  });
47
- const device = devices.find(({ name })=>name === value
48
- );
54
+ const device = devices.find(({ name })=>name === value);
49
55
  if ((device == null ? void 0 : device.isAuthorized) === false) {
50
- (0, _adb).logUnauthorized(device);
56
+ (0, _adb.logUnauthorized)(device);
51
57
  throw new _errors.AbortCommandError();
52
58
  }
53
59
  return device;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/android/promptAndroidDevice.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport { Device, logUnauthorized } from './adb';\nimport { AbortCommandError } from '../../../utils/errors';\nimport { createSelectionFilter, promptAsync } from '../../../utils/prompts';\n\nfunction nameStyleForDevice(device: Device): (name: string) => string {\n const isActive = device.isBooted;\n if (!isActive) {\n // Use no style changes for a disconnected device that is available to be opened.\n return (text: string) => text;\n }\n // A device that is connected and ready to be used should be bolded to match iOS.\n if (device.isAuthorized) {\n return chalk.bold;\n }\n // Devices that are unauthorized and connected cannot be used, but they are connected so gray them out.\n return (text: string) => chalk.bold(chalk.gray(text));\n}\n\nexport async function promptForDeviceAsync(devices: Device[]): Promise<Device> {\n // TODO: provide an option to add or download more simulators\n\n const { value } = await promptAsync({\n type: 'autocomplete',\n name: 'value',\n limit: 11,\n message: 'Select a device/emulator',\n choices: devices.map((item) => {\n const format = nameStyleForDevice(item);\n const type = item.isAuthorized ? item.type : 'unauthorized';\n return {\n title: `${format(item.name)} ${chalk.dim(`(${type})`)}`,\n value: item.name,\n };\n }),\n suggest: createSelectionFilter(),\n });\n\n const device = devices.find(({ name }) => name === value);\n\n if (device?.isAuthorized === false) {\n logUnauthorized(device);\n throw new AbortCommandError();\n }\n\n return device!;\n}\n"],"names":["promptForDeviceAsync","nameStyleForDevice","device","isActive","isBooted","text","isAuthorized","chalk","bold","gray","devices","value","promptAsync","type","name","limit","message","choices","map","item","format","title","dim","suggest","createSelectionFilter","find","logUnauthorized","AbortCommandError"],"mappings":"AAAA;;;;QAoBsBA,oBAAoB,GAApBA,oBAAoB;AApBxB,IAAA,MAAO,kCAAP,OAAO,EAAA;AAEe,IAAA,IAAO,WAAP,OAAO,CAAA;AACb,IAAA,OAAuB,WAAvB,uBAAuB,CAAA;AACN,IAAA,QAAwB,WAAxB,wBAAwB,CAAA;;;;;;AAE3E,SAASC,kBAAkB,CAACC,MAAc,EAA4B;IACpE,MAAMC,QAAQ,GAAGD,MAAM,CAACE,QAAQ,AAAC;IACjC,IAAI,CAACD,QAAQ,EAAE;QACb,iFAAiF;QACjF,OAAO,CAACE,IAAY,GAAKA,IAAI;QAAA,CAAC;KAC/B;IACD,iFAAiF;IACjF,IAAIH,MAAM,CAACI,YAAY,EAAE;QACvB,OAAOC,MAAK,QAAA,CAACC,IAAI,CAAC;KACnB;IACD,uGAAuG;IACvG,OAAO,CAACH,IAAY,GAAKE,MAAK,QAAA,CAACC,IAAI,CAACD,MAAK,QAAA,CAACE,IAAI,CAACJ,IAAI,CAAC,CAAC;IAAA,CAAC;CACvD;AAEM,eAAeL,oBAAoB,CAACU,OAAiB,EAAmB;IAC7E,6DAA6D;IAE7D,MAAM,EAAEC,KAAK,CAAA,EAAE,GAAG,MAAMC,CAAAA,GAAAA,QAAW,AAcjC,CAAA,YAdiC,CAAC;QAClCC,IAAI,EAAE,cAAc;QACpBC,IAAI,EAAE,OAAO;QACbC,KAAK,EAAE,EAAE;QACTC,OAAO,EAAE,0BAA0B;QACnCC,OAAO,EAAEP,OAAO,CAACQ,GAAG,CAAC,CAACC,IAAI,GAAK;YAC7B,MAAMC,MAAM,GAAGnB,kBAAkB,CAACkB,IAAI,CAAC,AAAC;YACxC,MAAMN,IAAI,GAAGM,IAAI,CAACb,YAAY,GAAGa,IAAI,CAACN,IAAI,GAAG,cAAc,AAAC;YAC5D,OAAO;gBACLQ,KAAK,EAAE,CAAC,EAAED,MAAM,CAACD,IAAI,CAACL,IAAI,CAAC,CAAC,CAAC,EAAEP,MAAK,QAAA,CAACe,GAAG,CAAC,CAAC,CAAC,EAAET,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvDF,KAAK,EAAEQ,IAAI,CAACL,IAAI;aACjB,CAAC;SACH,CAAC;QACFS,OAAO,EAAEC,CAAAA,GAAAA,QAAqB,AAAE,CAAA,sBAAF,EAAE;KACjC,CAAC,AAAC;IAEH,MAAMtB,MAAM,GAAGQ,OAAO,CAACe,IAAI,CAAC,CAAC,EAAEX,IAAI,CAAA,EAAE,GAAKA,IAAI,KAAKH,KAAK;IAAA,CAAC,AAAC;IAE1D,IAAIT,CAAAA,MAAM,QAAc,GAApBA,KAAAA,CAAoB,GAApBA,MAAM,CAAEI,YAAY,CAAA,KAAK,KAAK,EAAE;QAClCoB,CAAAA,GAAAA,IAAe,AAAQ,CAAA,gBAAR,CAACxB,MAAM,CAAC,CAAC;QACxB,MAAM,IAAIyB,OAAiB,kBAAA,EAAE,CAAC;KAC/B;IAED,OAAOzB,MAAM,CAAE;CAChB"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/android/promptAndroidDevice.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport { Device, logUnauthorized } from './adb';\nimport { AbortCommandError } from '../../../utils/errors';\nimport { createSelectionFilter, promptAsync } from '../../../utils/prompts';\n\nfunction nameStyleForDevice(device: Device): (name: string) => string {\n const isActive = device.isBooted;\n if (!isActive) {\n // Use no style changes for a disconnected device that is available to be opened.\n return (text: string) => text;\n }\n // A device that is connected and ready to be used should be bolded to match iOS.\n if (device.isAuthorized) {\n return chalk.bold;\n }\n // Devices that are unauthorized and connected cannot be used, but they are connected so gray them out.\n return (text: string) => chalk.bold(chalk.gray(text));\n}\n\nexport async function promptForDeviceAsync(devices: Device[]): Promise<Device> {\n // TODO: provide an option to add or download more simulators\n\n const { value } = await promptAsync({\n type: 'autocomplete',\n name: 'value',\n limit: 11,\n message: 'Select a device/emulator',\n choices: devices.map((item) => {\n const format = nameStyleForDevice(item);\n const type = item.isAuthorized ? item.type : 'unauthorized';\n return {\n title: `${format(item.name)} ${chalk.dim(`(${type})`)}`,\n value: item.name,\n };\n }),\n suggest: createSelectionFilter(),\n });\n\n const device = devices.find(({ name }) => name === value);\n\n if (device?.isAuthorized === false) {\n logUnauthorized(device);\n throw new AbortCommandError();\n }\n\n return device!;\n}\n"],"names":["promptForDeviceAsync","nameStyleForDevice","device","isActive","isBooted","text","isAuthorized","chalk","bold","gray","devices","value","promptAsync","type","name","limit","message","choices","map","item","format","title","dim","suggest","createSelectionFilter","find","logUnauthorized","AbortCommandError"],"mappings":"AAAA;;;;+BAoBsBA,sBAAoB;;aAApBA,oBAAoB;;;8DApBxB,OAAO;;;;;;qBAEe,OAAO;wBACb,uBAAuB;yBACN,wBAAwB;;;;;;AAE3E,SAASC,kBAAkB,CAACC,MAAc,EAA4B;IACpE,MAAMC,QAAQ,GAAGD,MAAM,CAACE,QAAQ,AAAC;IACjC,IAAI,CAACD,QAAQ,EAAE;QACb,iFAAiF;QACjF,OAAO,CAACE,IAAY,GAAKA,IAAI,CAAC;IAChC,CAAC;IACD,iFAAiF;IACjF,IAAIH,MAAM,CAACI,YAAY,EAAE;QACvB,OAAOC,MAAK,EAAA,QAAA,CAACC,IAAI,CAAC;IACpB,CAAC;IACD,uGAAuG;IACvG,OAAO,CAACH,IAAY,GAAKE,MAAK,EAAA,QAAA,CAACC,IAAI,CAACD,MAAK,EAAA,QAAA,CAACE,IAAI,CAACJ,IAAI,CAAC,CAAC,CAAC;AACxD,CAAC;AAEM,eAAeL,oBAAoB,CAACU,OAAiB,EAAmB;IAC7E,6DAA6D;IAE7D,MAAM,EAAEC,KAAK,CAAA,EAAE,GAAG,MAAMC,IAAAA,QAAW,YAAA,EAAC;QAClCC,IAAI,EAAE,cAAc;QACpBC,IAAI,EAAE,OAAO;QACbC,KAAK,EAAE,EAAE;QACTC,OAAO,EAAE,0BAA0B;QACnCC,OAAO,EAAEP,OAAO,CAACQ,GAAG,CAAC,CAACC,IAAI,GAAK;YAC7B,MAAMC,MAAM,GAAGnB,kBAAkB,CAACkB,IAAI,CAAC,AAAC;YACxC,MAAMN,IAAI,GAAGM,IAAI,CAACb,YAAY,GAAGa,IAAI,CAACN,IAAI,GAAG,cAAc,AAAC;YAC5D,OAAO;gBACLQ,KAAK,EAAE,CAAC,EAAED,MAAM,CAACD,IAAI,CAACL,IAAI,CAAC,CAAC,CAAC,EAAEP,MAAK,EAAA,QAAA,CAACe,GAAG,CAAC,CAAC,CAAC,EAAET,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvDF,KAAK,EAAEQ,IAAI,CAACL,IAAI;aACjB,CAAC;QACJ,CAAC,CAAC;QACFS,OAAO,EAAEC,IAAAA,QAAqB,sBAAA,GAAE;KACjC,CAAC,AAAC;IAEH,MAAMtB,MAAM,GAAGQ,OAAO,CAACe,IAAI,CAAC,CAAC,EAAEX,IAAI,CAAA,EAAE,GAAKA,IAAI,KAAKH,KAAK,CAAC,AAAC;IAE1D,IAAIT,CAAAA,MAAM,QAAc,GAApBA,KAAAA,CAAoB,GAApBA,MAAM,CAAEI,YAAY,CAAA,KAAK,KAAK,EAAE;QAClCoB,IAAAA,IAAe,gBAAA,EAACxB,MAAM,CAAC,CAAC;QACxB,MAAM,IAAIyB,OAAiB,kBAAA,EAAE,CAAC;IAChC,CAAC;IAED,OAAOzB,MAAM,CAAE;AACjB,CAAC"}
@@ -2,10 +2,32 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- var _configPlugins = require("@expo/config-plugins");
6
- var _plist = _interopRequireDefault(require("@expo/plist"));
7
- var _fs = _interopRequireDefault(require("fs"));
8
- var _appIdResolver = require("../AppIdResolver");
5
+ Object.defineProperty(exports, "AppleAppIdResolver", {
6
+ enumerable: true,
7
+ get: ()=>AppleAppIdResolver
8
+ });
9
+ function _configPlugins() {
10
+ const data = require("@expo/config-plugins");
11
+ _configPlugins = function() {
12
+ return data;
13
+ };
14
+ return data;
15
+ }
16
+ function _plist() {
17
+ const data = /*#__PURE__*/ _interopRequireDefault(require("@expo/plist"));
18
+ _plist = function() {
19
+ return data;
20
+ };
21
+ return data;
22
+ }
23
+ function _fs() {
24
+ const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
25
+ _fs = function() {
26
+ return data;
27
+ };
28
+ return data;
29
+ }
30
+ const _appIdResolver = require("../AppIdResolver");
9
31
  function _interopRequireDefault(obj) {
10
32
  return obj && obj.__esModule ? obj : {
11
33
  default: obj
@@ -19,16 +41,16 @@ class AppleAppIdResolver extends _appIdResolver.AppIdResolver {
19
41
  /** @return `true` if the app has valid `*.pbxproj` file */ async hasNativeProjectAsync() {
20
42
  try {
21
43
  // Never returns nullish values.
22
- return !!_configPlugins.IOSConfig.Paths.getAllPBXProjectPaths(this.projectRoot).length;
44
+ return !!_configPlugins().IOSConfig.Paths.getAllPBXProjectPaths(this.projectRoot).length;
23
45
  } catch (error) {
24
- debug("Expected error checking for native project:", error);
46
+ debug("Expected error checking for native project:", error.message);
25
47
  return false;
26
48
  }
27
49
  }
28
50
  async resolveAppIdFromNativeAsync() {
29
51
  // Check xcode project
30
52
  try {
31
- const bundleId = _configPlugins.IOSConfig.BundleIdentifier.getBundleIdentifierFromPbxproj(this.projectRoot);
53
+ const bundleId = _configPlugins().IOSConfig.BundleIdentifier.getBundleIdentifierFromPbxproj(this.projectRoot);
32
54
  if (bundleId) {
33
55
  return bundleId;
34
56
  }
@@ -37,8 +59,8 @@ class AppleAppIdResolver extends _appIdResolver.AppIdResolver {
37
59
  }
38
60
  // Check Info.plist
39
61
  try {
40
- const infoPlistPath = _configPlugins.IOSConfig.Paths.getInfoPlistPath(this.projectRoot);
41
- const data = await _plist.default.parse(_fs.default.readFileSync(infoPlistPath, "utf8"));
62
+ const infoPlistPath = _configPlugins().IOSConfig.Paths.getInfoPlistPath(this.projectRoot);
63
+ const data = await _plist().default.parse(_fs().default.readFileSync(infoPlistPath, "utf8"));
42
64
  if (data.CFBundleIdentifier && !data.CFBundleIdentifier.startsWith("$(")) {
43
65
  return data.CFBundleIdentifier;
44
66
  }
@@ -48,6 +70,5 @@ class AppleAppIdResolver extends _appIdResolver.AppIdResolver {
48
70
  return null;
49
71
  }
50
72
  }
51
- exports.AppleAppIdResolver = AppleAppIdResolver;
52
73
 
53
74
  //# sourceMappingURL=AppleAppIdResolver.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/ios/AppleAppIdResolver.ts"],"sourcesContent":["import { IOSConfig } from '@expo/config-plugins';\nimport plist from '@expo/plist';\nimport fs from 'fs';\n\nimport { AppIdResolver } from '../AppIdResolver';\n\nconst debug = require('debug')('expo:start:platforms:ios:AppleAppIdResolver') as typeof console.log;\n\n/** Resolves the iOS bundle identifier from the Expo config or native files. */\nexport class AppleAppIdResolver extends AppIdResolver {\n constructor(projectRoot: string) {\n super(projectRoot, 'ios', 'ios.bundleIdentifier');\n }\n\n /** @return `true` if the app has valid `*.pbxproj` file */\n async hasNativeProjectAsync(): Promise<boolean> {\n try {\n // Never returns nullish values.\n return !!IOSConfig.Paths.getAllPBXProjectPaths(this.projectRoot).length;\n } catch (error: any) {\n debug('Expected error checking for native project:', error);\n return false;\n }\n }\n\n async resolveAppIdFromNativeAsync(): Promise<string | null> {\n // Check xcode project\n try {\n const bundleId = IOSConfig.BundleIdentifier.getBundleIdentifierFromPbxproj(this.projectRoot);\n if (bundleId) {\n return bundleId;\n }\n } catch (error: any) {\n debug('Expected error resolving the bundle identifier from the pbxproj:', error);\n }\n\n // Check Info.plist\n try {\n const infoPlistPath = IOSConfig.Paths.getInfoPlistPath(this.projectRoot);\n const data = await plist.parse(fs.readFileSync(infoPlistPath, 'utf8'));\n if (data.CFBundleIdentifier && !data.CFBundleIdentifier.startsWith('$(')) {\n return data.CFBundleIdentifier;\n }\n } catch (error) {\n debug('Expected error resolving the bundle identifier from the project Info.plist:', error);\n }\n\n return null;\n }\n}\n"],"names":["debug","require","AppleAppIdResolver","AppIdResolver","constructor","projectRoot","hasNativeProjectAsync","IOSConfig","Paths","getAllPBXProjectPaths","length","error","resolveAppIdFromNativeAsync","bundleId","BundleIdentifier","getBundleIdentifierFromPbxproj","infoPlistPath","getInfoPlistPath","data","plist","parse","fs","readFileSync","CFBundleIdentifier","startsWith"],"mappings":"AAAA;;;;AAA0B,IAAA,cAAsB,WAAtB,sBAAsB,CAAA;AAC9B,IAAA,MAAa,kCAAb,aAAa,EAAA;AAChB,IAAA,GAAI,kCAAJ,IAAI,EAAA;AAEW,IAAA,cAAkB,WAAlB,kBAAkB,CAAA;;;;;;AAEhD,MAAMA,KAAK,GAAGC,OAAO,CAAC,OAAO,CAAC,CAAC,6CAA6C,CAAC,AAAsB,AAAC;AAG7F,MAAMC,kBAAkB,SAASC,cAAa,cAAA;IACnDC,YAAYC,WAAmB,CAAE;QAC/B,KAAK,CAACA,WAAW,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAC;KACnD;IAED,2DAA2D,CAC3D,MAAMC,qBAAqB,GAAqB;QAC9C,IAAI;YACF,gCAAgC;YAChC,OAAO,CAAC,CAACC,cAAS,UAAA,CAACC,KAAK,CAACC,qBAAqB,CAAC,IAAI,CAACJ,WAAW,CAAC,CAACK,MAAM,CAAC;SACzE,CAAC,OAAOC,KAAK,EAAO;YACnBX,KAAK,CAAC,6CAA6C,EAAEW,KAAK,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC;SACd;KACF;IAED,MAAMC,2BAA2B,GAA2B;QAC1D,sBAAsB;QACtB,IAAI;YACF,MAAMC,QAAQ,GAAGN,cAAS,UAAA,CAACO,gBAAgB,CAACC,8BAA8B,CAAC,IAAI,CAACV,WAAW,CAAC,AAAC;YAC7F,IAAIQ,QAAQ,EAAE;gBACZ,OAAOA,QAAQ,CAAC;aACjB;SACF,CAAC,OAAOF,KAAK,EAAO;YACnBX,KAAK,CAAC,kEAAkE,EAAEW,KAAK,CAAC,CAAC;SAClF;QAED,mBAAmB;QACnB,IAAI;YACF,MAAMK,aAAa,GAAGT,cAAS,UAAA,CAACC,KAAK,CAACS,gBAAgB,CAAC,IAAI,CAACZ,WAAW,CAAC,AAAC;YACzE,MAAMa,IAAI,GAAG,MAAMC,MAAK,QAAA,CAACC,KAAK,CAACC,GAAE,QAAA,CAACC,YAAY,CAACN,aAAa,EAAE,MAAM,CAAC,CAAC,AAAC;YACvE,IAAIE,IAAI,CAACK,kBAAkB,IAAI,CAACL,IAAI,CAACK,kBAAkB,CAACC,UAAU,CAAC,IAAI,CAAC,EAAE;gBACxE,OAAON,IAAI,CAACK,kBAAkB,CAAC;aAChC;SACF,CAAC,OAAOZ,MAAK,EAAE;YACdX,KAAK,CAAC,6EAA6E,EAAEW,MAAK,CAAC,CAAC;SAC7F;QAED,OAAO,IAAI,CAAC;KACb;CACF;QAxCYT,kBAAkB,GAAlBA,kBAAkB"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/ios/AppleAppIdResolver.ts"],"sourcesContent":["import { IOSConfig } from '@expo/config-plugins';\nimport plist from '@expo/plist';\nimport fs from 'fs';\n\nimport { AppIdResolver } from '../AppIdResolver';\n\nconst debug = require('debug')('expo:start:platforms:ios:AppleAppIdResolver') as typeof console.log;\n\n/** Resolves the iOS bundle identifier from the Expo config or native files. */\nexport class AppleAppIdResolver extends AppIdResolver {\n constructor(projectRoot: string) {\n super(projectRoot, 'ios', 'ios.bundleIdentifier');\n }\n\n /** @return `true` if the app has valid `*.pbxproj` file */\n async hasNativeProjectAsync(): Promise<boolean> {\n try {\n // Never returns nullish values.\n return !!IOSConfig.Paths.getAllPBXProjectPaths(this.projectRoot).length;\n } catch (error: any) {\n debug('Expected error checking for native project:', error.message);\n return false;\n }\n }\n\n async resolveAppIdFromNativeAsync(): Promise<string | null> {\n // Check xcode project\n try {\n const bundleId = IOSConfig.BundleIdentifier.getBundleIdentifierFromPbxproj(this.projectRoot);\n if (bundleId) {\n return bundleId;\n }\n } catch (error: any) {\n debug('Expected error resolving the bundle identifier from the pbxproj:', error);\n }\n\n // Check Info.plist\n try {\n const infoPlistPath = IOSConfig.Paths.getInfoPlistPath(this.projectRoot);\n const data = await plist.parse(fs.readFileSync(infoPlistPath, 'utf8'));\n if (data.CFBundleIdentifier && !data.CFBundleIdentifier.startsWith('$(')) {\n return data.CFBundleIdentifier;\n }\n } catch (error) {\n debug('Expected error resolving the bundle identifier from the project Info.plist:', error);\n }\n\n return null;\n }\n}\n"],"names":["AppleAppIdResolver","debug","require","AppIdResolver","constructor","projectRoot","hasNativeProjectAsync","IOSConfig","Paths","getAllPBXProjectPaths","length","error","message","resolveAppIdFromNativeAsync","bundleId","BundleIdentifier","getBundleIdentifierFromPbxproj","infoPlistPath","getInfoPlistPath","data","plist","parse","fs","readFileSync","CFBundleIdentifier","startsWith"],"mappings":"AAAA;;;;+BASaA,oBAAkB;;aAAlBA,kBAAkB;;;yBATL,sBAAsB;;;;;;;8DAC9B,aAAa;;;;;;;8DAChB,IAAI;;;;;;+BAEW,kBAAkB;;;;;;AAEhD,MAAMC,KAAK,GAAGC,OAAO,CAAC,OAAO,CAAC,CAAC,6CAA6C,CAAC,AAAsB,AAAC;AAG7F,MAAMF,kBAAkB,SAASG,cAAa,cAAA;IACnDC,YAAYC,WAAmB,CAAE;QAC/B,KAAK,CAACA,WAAW,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAC;IACpD;IAEA,yDAAyD,SACnDC,qBAAqB,GAAqB;QAC9C,IAAI;YACF,gCAAgC;YAChC,OAAO,CAAC,CAACC,cAAS,EAAA,UAAA,CAACC,KAAK,CAACC,qBAAqB,CAAC,IAAI,CAACJ,WAAW,CAAC,CAACK,MAAM,CAAC;QAC1E,EAAE,OAAOC,KAAK,EAAO;YACnBV,KAAK,CAAC,6CAA6C,EAAEU,KAAK,CAACC,OAAO,CAAC,CAAC;YACpE,OAAO,KAAK,CAAC;QACf,CAAC;IACH;UAEMC,2BAA2B,GAA2B;QAC1D,sBAAsB;QACtB,IAAI;YACF,MAAMC,QAAQ,GAAGP,cAAS,EAAA,UAAA,CAACQ,gBAAgB,CAACC,8BAA8B,CAAC,IAAI,CAACX,WAAW,CAAC,AAAC;YAC7F,IAAIS,QAAQ,EAAE;gBACZ,OAAOA,QAAQ,CAAC;YAClB,CAAC;QACH,EAAE,OAAOH,KAAK,EAAO;YACnBV,KAAK,CAAC,kEAAkE,EAAEU,KAAK,CAAC,CAAC;QACnF,CAAC;QAED,mBAAmB;QACnB,IAAI;YACF,MAAMM,aAAa,GAAGV,cAAS,EAAA,UAAA,CAACC,KAAK,CAACU,gBAAgB,CAAC,IAAI,CAACb,WAAW,CAAC,AAAC;YACzE,MAAMc,IAAI,GAAG,MAAMC,MAAK,EAAA,QAAA,CAACC,KAAK,CAACC,GAAE,EAAA,QAAA,CAACC,YAAY,CAACN,aAAa,EAAE,MAAM,CAAC,CAAC,AAAC;YACvE,IAAIE,IAAI,CAACK,kBAAkB,IAAI,CAACL,IAAI,CAACK,kBAAkB,CAACC,UAAU,CAAC,IAAI,CAAC,EAAE;gBACxE,OAAON,IAAI,CAACK,kBAAkB,CAAC;YACjC,CAAC;QACH,EAAE,OAAOb,MAAK,EAAE;YACdV,KAAK,CAAC,6EAA6E,EAAEU,MAAK,CAAC,CAAC;QAC9F,CAAC;QAED,OAAO,IAAI,CAAC;IACd;CACD"}
@@ -2,48 +2,105 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.ensureSimulatorOpenAsync = ensureSimulatorOpenAsync;
6
- var osascript = _interopRequireWildcard(require("@expo/osascript"));
7
- var _assert = _interopRequireDefault(require("assert"));
8
- var _chalk = _interopRequireDefault(require("chalk"));
9
- var _fs = _interopRequireDefault(require("fs"));
10
- var _path = _interopRequireDefault(require("path"));
11
- var _assertSystemRequirements = require("./assertSystemRequirements");
12
- var _ensureSimulatorAppRunning = require("./ensureSimulatorAppRunning");
13
- var _getBestSimulator = require("./getBestSimulator");
14
- var _promptAppleDevice = require("./promptAppleDevice");
15
- var SimControl = _interopRequireWildcard(require("./simctl"));
16
- var _delay = require("../../../utils/delay");
17
- var _errors = require("../../../utils/errors");
18
- var _plist = require("../../../utils/plist");
19
- var _url = require("../../../utils/url");
20
- var _deviceManager = require("../DeviceManager");
21
- var _expoGoInstaller = require("../ExpoGoInstaller");
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
+ ensureSimulatorOpenAsync: ()=>ensureSimulatorOpenAsync,
13
+ AppleDeviceManager: ()=>AppleDeviceManager
14
+ });
15
+ function _osascript() {
16
+ const data = /*#__PURE__*/ _interopRequireWildcard(require("@expo/osascript"));
17
+ _osascript = function() {
18
+ return data;
19
+ };
20
+ return data;
21
+ }
22
+ function _assert() {
23
+ const data = /*#__PURE__*/ _interopRequireDefault(require("assert"));
24
+ _assert = function() {
25
+ return data;
26
+ };
27
+ return data;
28
+ }
29
+ function _chalk() {
30
+ const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
31
+ _chalk = function() {
32
+ return data;
33
+ };
34
+ return data;
35
+ }
36
+ function _fs() {
37
+ const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
38
+ _fs = function() {
39
+ return data;
40
+ };
41
+ return data;
42
+ }
43
+ function _path() {
44
+ const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
45
+ _path = function() {
46
+ return data;
47
+ };
48
+ return data;
49
+ }
50
+ const _assertSystemRequirements = require("./assertSystemRequirements");
51
+ const _ensureSimulatorAppRunning = require("./ensureSimulatorAppRunning");
52
+ const _getBestSimulator = require("./getBestSimulator");
53
+ const _promptAppleDevice = require("./promptAppleDevice");
54
+ const _simctl = /*#__PURE__*/ _interopRequireWildcard(require("./simctl"));
55
+ const _delay = require("../../../utils/delay");
56
+ const _errors = require("../../../utils/errors");
57
+ const _plist = require("../../../utils/plist");
58
+ const _url = require("../../../utils/url");
59
+ const _deviceManager = require("../DeviceManager");
60
+ const _expoGoInstaller = require("../ExpoGoInstaller");
22
61
  function _interopRequireDefault(obj) {
23
62
  return obj && obj.__esModule ? obj : {
24
63
  default: obj
25
64
  };
26
65
  }
27
- function _interopRequireWildcard(obj) {
28
- if (obj && obj.__esModule) {
66
+ function _getRequireWildcardCache(nodeInterop) {
67
+ if (typeof WeakMap !== "function") return null;
68
+ var cacheBabelInterop = new WeakMap();
69
+ var cacheNodeInterop = new WeakMap();
70
+ return (_getRequireWildcardCache = function(nodeInterop) {
71
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
72
+ })(nodeInterop);
73
+ }
74
+ function _interopRequireWildcard(obj, nodeInterop) {
75
+ if (!nodeInterop && obj && obj.__esModule) {
29
76
  return obj;
30
- } else {
31
- var newObj = {};
32
- if (obj != null) {
33
- for(var key in obj){
34
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
35
- var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
36
- if (desc.get || desc.set) {
37
- Object.defineProperty(newObj, key, desc);
38
- } else {
39
- newObj[key] = obj[key];
40
- }
41
- }
77
+ }
78
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
79
+ return {
80
+ default: obj
81
+ };
82
+ }
83
+ var cache = _getRequireWildcardCache(nodeInterop);
84
+ if (cache && cache.has(obj)) {
85
+ return cache.get(obj);
86
+ }
87
+ var newObj = {};
88
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
89
+ for(var key in obj){
90
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
91
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
92
+ if (desc && (desc.get || desc.set)) {
93
+ Object.defineProperty(newObj, key, desc);
94
+ } else {
95
+ newObj[key] = obj[key];
42
96
  }
43
97
  }
44
- newObj.default = obj;
45
- return newObj;
46
98
  }
99
+ newObj.default = obj;
100
+ if (cache) {
101
+ cache.set(obj, newObj);
102
+ }
103
+ return newObj;
47
104
  }
48
105
  const debug = require("debug")("expo:start:platforms:ios:AppleDeviceManager");
49
106
  const EXPO_GO_BUNDLE_IDENTIFIER = "host.exp.Exponent";
@@ -51,14 +108,14 @@ async function ensureSimulatorOpenAsync({ udid , osType } = {}, tryAgain = true
51
108
  // Use a default simulator if none was specified
52
109
  if (!udid) {
53
110
  // If a simulator is open, side step the entire booting sequence.
54
- const simulatorOpenedByApp = await (0, _getBestSimulator).getBestBootedSimulatorAsync({
111
+ const simulatorOpenedByApp = await (0, _getBestSimulator.getBestBootedSimulatorAsync)({
55
112
  osType
56
113
  });
57
114
  if (simulatorOpenedByApp) {
58
115
  return simulatorOpenedByApp;
59
116
  }
60
117
  // Otherwise, find the best possible simulator from user defaults and continue
61
- const bestUdid = await (0, _getBestSimulator).getBestUnbootedSimulatorAsync({
118
+ const bestUdid = await (0, _getBestSimulator.getBestUnbootedSimulatorAsync)({
62
119
  osType
63
120
  });
64
121
  if (!bestUdid) {
@@ -66,11 +123,11 @@ async function ensureSimulatorOpenAsync({ udid , osType } = {}, tryAgain = true
66
123
  }
67
124
  udid = bestUdid;
68
125
  }
69
- const bootedDevice = await (0, _delay).waitForActionAsync({
126
+ const bootedDevice = await (0, _delay.waitForActionAsync)({
70
127
  action: ()=>{
71
128
  // Just for the type check.
72
- (0, _assert).default(udid);
73
- return SimControl.bootAsync({
129
+ (0, _assert().default)(udid);
130
+ return _simctl.bootAsync({
74
131
  udid
75
132
  });
76
133
  }
@@ -92,8 +149,8 @@ class AppleDeviceManager extends _deviceManager.DeviceManager {
92
149
  static assertSystemRequirementsAsync = _assertSystemRequirements.assertSystemRequirementsAsync;
93
150
  static async resolveAsync({ device , shouldPrompt } = {}) {
94
151
  if (shouldPrompt) {
95
- const devices = await (0, _getBestSimulator).getSelectableSimulatorsAsync(device);
96
- device = await (0, _promptAppleDevice).promptAppleDeviceAsync(devices, device == null ? void 0 : device.osType);
152
+ const devices = await (0, _getBestSimulator.getSelectableSimulatorsAsync)(device);
153
+ device = await (0, _promptAppleDevice.promptAppleDeviceAsync)(devices, device == null ? void 0 : device.osType);
97
154
  }
98
155
  const booted = await ensureSimulatorOpenAsync(device);
99
156
  return new AppleDeviceManager(booted);
@@ -104,10 +161,11 @@ class AppleDeviceManager extends _deviceManager.DeviceManager {
104
161
  get identifier() {
105
162
  return this.device.udid;
106
163
  }
107
- async getAppVersionAsync(appId) {
108
- return await SimControl.getInfoPlistValueAsync(this.device, {
164
+ async getAppVersionAsync(appId, { containerPath } = {}) {
165
+ return await _simctl.getInfoPlistValueAsync(this.device, {
109
166
  appId,
110
- key: "CFBundleShortVersionString"
167
+ key: "CFBundleShortVersionString",
168
+ containerPath
111
169
  });
112
170
  }
113
171
  async startAsync() {
@@ -118,7 +176,7 @@ class AppleDeviceManager extends _deviceManager.DeviceManager {
118
176
  }
119
177
  async launchApplicationIdAsync(appId) {
120
178
  try {
121
- const result = await SimControl.openAppIdAsync(this.device, {
179
+ const result = await _simctl.openAppIdAsync(this.device, {
122
180
  appId
123
181
  });
124
182
  if (result.status === 0) {
@@ -132,28 +190,28 @@ class AppleDeviceManager extends _deviceManager.DeviceManager {
132
190
  if (appId === EXPO_GO_BUNDLE_IDENTIFIER) {
133
191
  errorMessage = `Couldn't open Expo Go app on device "${this.name}". Please install.`;
134
192
  } else {
135
- errorMessage += `\nThe app might not be installed, try installing it with: ${_chalk.default.bold(`npx expo run:ios -d ${this.device.udid}`)}`;
193
+ errorMessage += `\nThe app might not be installed, try installing it with: ${_chalk().default.bold(`npx expo run:ios -d ${this.device.udid}`)}`;
136
194
  }
137
195
  }
138
196
  if (error.stderr) {
139
- errorMessage += _chalk.default.gray(`\n${error.stderr}`);
197
+ errorMessage += _chalk().default.gray(`\n${error.stderr}`);
140
198
  } else if (error.message) {
141
- errorMessage += _chalk.default.gray(`\n${error.message}`);
199
+ errorMessage += _chalk().default.gray(`\n${error.message}`);
142
200
  }
143
201
  throw new _errors.CommandError(errorMessage);
144
202
  }
145
203
  }
146
204
  async installAppAsync(filePath) {
147
- await SimControl.installAsync(this.device, {
205
+ await _simctl.installAsync(this.device, {
148
206
  filePath
149
207
  });
150
208
  await this.waitForAppInstalledAsync(await this.getApplicationIdFromBundle(filePath));
151
209
  }
152
210
  async getApplicationIdFromBundle(filePath) {
153
211
  debug("getApplicationIdFromBundle:", filePath);
154
- const builtInfoPlistPath = _path.default.join(filePath, "Info.plist");
155
- if (_fs.default.existsSync(builtInfoPlistPath)) {
156
- const { CFBundleIdentifier } = await (0, _plist).parsePlistAsync(builtInfoPlistPath);
212
+ const builtInfoPlistPath = _path().default.join(filePath, "Info.plist");
213
+ if (_fs().default.existsSync(builtInfoPlistPath)) {
214
+ const { CFBundleIdentifier } = await (0, _plist.parsePlistAsync)(builtInfoPlistPath);
157
215
  debug("getApplicationIdFromBundle: using built Info.plist", CFBundleIdentifier);
158
216
  return CFBundleIdentifier;
159
217
  }
@@ -162,31 +220,32 @@ class AppleDeviceManager extends _deviceManager.DeviceManager {
162
220
  }
163
221
  async waitForAppInstalledAsync(applicationId) {
164
222
  while(true){
165
- if (await this.isAppInstalledAsync(applicationId)) {
223
+ if (await this.isAppInstalledAndIfSoReturnContainerPathForIOSAsync(applicationId)) {
166
224
  return true;
167
225
  }
168
- await (0, _delay).delayAsync(100);
226
+ await (0, _delay.delayAsync)(100);
169
227
  }
170
228
  }
171
229
  async uninstallAppAsync(appId) {
172
- await SimControl.uninstallAsync(this.device, {
230
+ await _simctl.uninstallAsync(this.device, {
173
231
  appId
174
232
  });
175
233
  }
176
- async isAppInstalledAsync(appId) {
177
- return !!await SimControl.getContainerPathAsync(this.device, {
234
+ async isAppInstalledAndIfSoReturnContainerPathForIOSAsync(appId) {
235
+ var ref;
236
+ return (ref = await _simctl.getContainerPathAsync(this.device, {
178
237
  appId
179
- });
238
+ })) != null ? ref : false;
180
239
  }
181
240
  async openUrlAsync(url) {
182
241
  // Non-compliant URLs will be treated as application identifiers.
183
- if (!(0, _url).validateUrl(url, {
242
+ if (!(0, _url.validateUrl)(url, {
184
243
  requireProtocol: true
185
244
  })) {
186
245
  return await this.launchApplicationIdAsync(url);
187
246
  }
188
247
  try {
189
- await SimControl.openUrlAsync(this.device, {
248
+ await _simctl.openUrlAsync(this.device, {
190
249
  url
191
250
  });
192
251
  } catch (error) {
@@ -202,15 +261,14 @@ class AppleDeviceManager extends _deviceManager.DeviceManager {
202
261
  }
203
262
  }
204
263
  async activateWindowAsync() {
205
- await (0, _ensureSimulatorAppRunning).ensureSimulatorAppRunningAsync(this.device);
264
+ await (0, _ensureSimulatorAppRunning.ensureSimulatorAppRunningAsync)(this.device);
206
265
  // TODO: Focus the individual window
207
- await osascript.execAsync(`tell application "Simulator" to activate`);
266
+ await _osascript().execAsync(`tell application "Simulator" to activate`);
208
267
  }
209
268
  async ensureExpoGoAsync(sdkVersion) {
210
269
  const installer = new _expoGoInstaller.ExpoGoInstaller("ios", EXPO_GO_BUNDLE_IDENTIFIER, sdkVersion);
211
270
  return installer.ensureAsync(this);
212
271
  }
213
272
  }
214
- exports.AppleDeviceManager = AppleDeviceManager;
215
273
 
216
274
  //# sourceMappingURL=AppleDeviceManager.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/ios/AppleDeviceManager.ts"],"sourcesContent":["import * as osascript from '@expo/osascript';\nimport assert from 'assert';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport path from 'path';\n\nimport { assertSystemRequirementsAsync } from './assertSystemRequirements';\nimport { ensureSimulatorAppRunningAsync } from './ensureSimulatorAppRunning';\nimport {\n getBestBootedSimulatorAsync,\n getBestUnbootedSimulatorAsync,\n getSelectableSimulatorsAsync,\n} from './getBestSimulator';\nimport { promptAppleDeviceAsync } from './promptAppleDevice';\nimport * as SimControl from './simctl';\nimport { delayAsync, waitForActionAsync } from '../../../utils/delay';\nimport { CommandError } from '../../../utils/errors';\nimport { parsePlistAsync } from '../../../utils/plist';\nimport { validateUrl } from '../../../utils/url';\nimport { DeviceManager } from '../DeviceManager';\nimport { ExpoGoInstaller } from '../ExpoGoInstaller';\nimport { BaseResolveDeviceProps } from '../PlatformManager';\n\nconst debug = require('debug')('expo:start:platforms:ios:AppleDeviceManager') as typeof console.log;\n\nconst EXPO_GO_BUNDLE_IDENTIFIER = 'host.exp.Exponent';\n\n/**\n * Ensure a simulator is booted and the Simulator app is opened.\n * This is where any timeout related error handling should live.\n */\nexport async function ensureSimulatorOpenAsync(\n { udid, osType }: Partial<Pick<SimControl.Device, 'udid' | 'osType'>> = {},\n tryAgain: boolean = true\n): Promise<SimControl.Device> {\n // Use a default simulator if none was specified\n if (!udid) {\n // If a simulator is open, side step the entire booting sequence.\n const simulatorOpenedByApp = await getBestBootedSimulatorAsync({ osType });\n if (simulatorOpenedByApp) {\n return simulatorOpenedByApp;\n }\n\n // Otherwise, find the best possible simulator from user defaults and continue\n const bestUdid = await getBestUnbootedSimulatorAsync({ osType });\n if (!bestUdid) {\n throw new CommandError('No simulators found.');\n }\n udid = bestUdid;\n }\n\n const bootedDevice = await waitForActionAsync({\n action: () => {\n // Just for the type check.\n assert(udid);\n return SimControl.bootAsync({ udid });\n },\n });\n\n if (!bootedDevice) {\n // Give it a second chance, this might not be needed but it could potentially lead to a better UX on slower devices.\n if (tryAgain) {\n return await ensureSimulatorOpenAsync({ udid, osType }, false);\n }\n // TODO: We should eliminate all needs for a timeout error, it's bad UX to get an error about the simulator not starting while the user can clearly see it starting on their slow computer.\n throw new CommandError(\n 'SIMULATOR_TIMEOUT',\n `Simulator didn't boot fast enough. Try opening Simulator first, then running your app.`\n );\n }\n return bootedDevice;\n}\nexport class AppleDeviceManager extends DeviceManager<SimControl.Device> {\n static assertSystemRequirementsAsync = assertSystemRequirementsAsync;\n\n static async resolveAsync({\n device,\n shouldPrompt,\n }: BaseResolveDeviceProps<\n Partial<Pick<SimControl.Device, 'udid' | 'osType'>>\n > = {}): Promise<AppleDeviceManager> {\n if (shouldPrompt) {\n const devices = await getSelectableSimulatorsAsync(device);\n device = await promptAppleDeviceAsync(devices, device?.osType);\n }\n\n const booted = await ensureSimulatorOpenAsync(device);\n return new AppleDeviceManager(booted);\n }\n\n get name() {\n return this.device.name;\n }\n\n get identifier(): string {\n return this.device.udid;\n }\n\n async getAppVersionAsync(appId: string): Promise<string | null> {\n return await SimControl.getInfoPlistValueAsync(this.device, {\n appId,\n key: 'CFBundleShortVersionString',\n });\n }\n\n async startAsync(): Promise<SimControl.Device> {\n return ensureSimulatorOpenAsync({ osType: this.device.osType, udid: this.device.udid });\n }\n\n async launchApplicationIdAsync(appId: string) {\n try {\n const result = await SimControl.openAppIdAsync(this.device, {\n appId,\n });\n if (result.status === 0) {\n await this.activateWindowAsync();\n } else {\n throw new CommandError(result.stderr);\n }\n } catch (error: any) {\n let errorMessage = `Couldn't open iOS app with ID \"${appId}\" on device \"${this.name}\".`;\n if (error instanceof CommandError && error.code === 'APP_NOT_INSTALLED') {\n if (appId === EXPO_GO_BUNDLE_IDENTIFIER) {\n errorMessage = `Couldn't open Expo Go app on device \"${this.name}\". Please install.`;\n } else {\n errorMessage += `\\nThe app might not be installed, try installing it with: ${chalk.bold(\n `npx expo run:ios -d ${this.device.udid}`\n )}`;\n }\n }\n if (error.stderr) {\n errorMessage += chalk.gray(`\\n${error.stderr}`);\n } else if (error.message) {\n errorMessage += chalk.gray(`\\n${error.message}`);\n }\n throw new CommandError(errorMessage);\n }\n }\n\n async installAppAsync(filePath: string) {\n await SimControl.installAsync(this.device, {\n filePath,\n });\n\n await this.waitForAppInstalledAsync(await this.getApplicationIdFromBundle(filePath));\n }\n\n private async getApplicationIdFromBundle(filePath: string): Promise<string> {\n debug('getApplicationIdFromBundle:', filePath);\n const builtInfoPlistPath = path.join(filePath, 'Info.plist');\n if (fs.existsSync(builtInfoPlistPath)) {\n const { CFBundleIdentifier } = await parsePlistAsync(builtInfoPlistPath);\n debug('getApplicationIdFromBundle: using built Info.plist', CFBundleIdentifier);\n return CFBundleIdentifier;\n }\n debug('getApplicationIdFromBundle: no Info.plist found');\n return EXPO_GO_BUNDLE_IDENTIFIER;\n }\n\n private async waitForAppInstalledAsync(applicationId: string): Promise<boolean> {\n while (true) {\n if (await this.isAppInstalledAsync(applicationId)) {\n return true;\n }\n await delayAsync(100);\n }\n }\n\n async uninstallAppAsync(appId: string) {\n await SimControl.uninstallAsync(this.device, {\n appId,\n });\n }\n\n async isAppInstalledAsync(appId: string) {\n return !!(await SimControl.getContainerPathAsync(this.device, {\n appId,\n }));\n }\n\n async openUrlAsync(url: string) {\n // Non-compliant URLs will be treated as application identifiers.\n if (!validateUrl(url, { requireProtocol: true })) {\n return await this.launchApplicationIdAsync(url);\n }\n\n try {\n await SimControl.openUrlAsync(this.device, { url });\n } catch (error: any) {\n // 194 means the device does not conform to a given URL, in this case we'll assume that the desired app is not installed.\n if (error.status === 194) {\n // An error was encountered processing the command (domain=NSOSStatusErrorDomain, code=-10814):\n // The operation couldn’t be completed. (OSStatus error -10814.)\n //\n // This can be thrown when no app conforms to the URI scheme that we attempted to open.\n throw new CommandError(\n 'APP_NOT_INSTALLED',\n `Device ${this.device.name} (${this.device.udid}) has no app to handle the URI: ${url}`\n );\n }\n throw error;\n }\n }\n\n async activateWindowAsync() {\n await ensureSimulatorAppRunningAsync(this.device);\n // TODO: Focus the individual window\n await osascript.execAsync(`tell application \"Simulator\" to activate`);\n }\n\n async ensureExpoGoAsync(sdkVersion?: string): Promise<boolean> {\n const installer = new ExpoGoInstaller('ios', EXPO_GO_BUNDLE_IDENTIFIER, sdkVersion);\n return installer.ensureAsync(this);\n }\n}\n"],"names":["ensureSimulatorOpenAsync","osascript","SimControl","debug","require","EXPO_GO_BUNDLE_IDENTIFIER","udid","osType","tryAgain","simulatorOpenedByApp","getBestBootedSimulatorAsync","bestUdid","getBestUnbootedSimulatorAsync","CommandError","bootedDevice","waitForActionAsync","action","assert","bootAsync","AppleDeviceManager","DeviceManager","assertSystemRequirementsAsync","resolveAsync","device","shouldPrompt","devices","getSelectableSimulatorsAsync","promptAppleDeviceAsync","booted","name","identifier","getAppVersionAsync","appId","getInfoPlistValueAsync","key","startAsync","launchApplicationIdAsync","result","openAppIdAsync","status","activateWindowAsync","stderr","error","errorMessage","code","chalk","bold","gray","message","installAppAsync","filePath","installAsync","waitForAppInstalledAsync","getApplicationIdFromBundle","builtInfoPlistPath","path","join","fs","existsSync","CFBundleIdentifier","parsePlistAsync","applicationId","isAppInstalledAsync","delayAsync","uninstallAppAsync","uninstallAsync","getContainerPathAsync","openUrlAsync","url","validateUrl","requireProtocol","ensureSimulatorAppRunningAsync","execAsync","ensureExpoGoAsync","sdkVersion","installer","ExpoGoInstaller","ensureAsync"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/ios/AppleDeviceManager.ts"],"sourcesContent":["import * as osascript from '@expo/osascript';\nimport assert from 'assert';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport path from 'path';\n\nimport { assertSystemRequirementsAsync } from './assertSystemRequirements';\nimport { ensureSimulatorAppRunningAsync } from './ensureSimulatorAppRunning';\nimport {\n getBestBootedSimulatorAsync,\n getBestUnbootedSimulatorAsync,\n getSelectableSimulatorsAsync,\n} from './getBestSimulator';\nimport { promptAppleDeviceAsync } from './promptAppleDevice';\nimport * as SimControl from './simctl';\nimport { delayAsync, waitForActionAsync } from '../../../utils/delay';\nimport { CommandError } from '../../../utils/errors';\nimport { parsePlistAsync } from '../../../utils/plist';\nimport { validateUrl } from '../../../utils/url';\nimport { DeviceManager } from '../DeviceManager';\nimport { ExpoGoInstaller } from '../ExpoGoInstaller';\nimport { BaseResolveDeviceProps } from '../PlatformManager';\n\nconst debug = require('debug')('expo:start:platforms:ios:AppleDeviceManager') as typeof console.log;\n\nconst EXPO_GO_BUNDLE_IDENTIFIER = 'host.exp.Exponent';\n\n/**\n * Ensure a simulator is booted and the Simulator app is opened.\n * This is where any timeout related error handling should live.\n */\nexport async function ensureSimulatorOpenAsync(\n { udid, osType }: Partial<Pick<SimControl.Device, 'udid' | 'osType'>> = {},\n tryAgain: boolean = true\n): Promise<SimControl.Device> {\n // Use a default simulator if none was specified\n if (!udid) {\n // If a simulator is open, side step the entire booting sequence.\n const simulatorOpenedByApp = await getBestBootedSimulatorAsync({ osType });\n if (simulatorOpenedByApp) {\n return simulatorOpenedByApp;\n }\n\n // Otherwise, find the best possible simulator from user defaults and continue\n const bestUdid = await getBestUnbootedSimulatorAsync({ osType });\n if (!bestUdid) {\n throw new CommandError('No simulators found.');\n }\n udid = bestUdid;\n }\n\n const bootedDevice = await waitForActionAsync({\n action: () => {\n // Just for the type check.\n assert(udid);\n return SimControl.bootAsync({ udid });\n },\n });\n\n if (!bootedDevice) {\n // Give it a second chance, this might not be needed but it could potentially lead to a better UX on slower devices.\n if (tryAgain) {\n return await ensureSimulatorOpenAsync({ udid, osType }, false);\n }\n // TODO: We should eliminate all needs for a timeout error, it's bad UX to get an error about the simulator not starting while the user can clearly see it starting on their slow computer.\n throw new CommandError(\n 'SIMULATOR_TIMEOUT',\n `Simulator didn't boot fast enough. Try opening Simulator first, then running your app.`\n );\n }\n return bootedDevice;\n}\nexport class AppleDeviceManager extends DeviceManager<SimControl.Device> {\n static assertSystemRequirementsAsync = assertSystemRequirementsAsync;\n\n static async resolveAsync({\n device,\n shouldPrompt,\n }: BaseResolveDeviceProps<\n Partial<Pick<SimControl.Device, 'udid' | 'osType'>>\n > = {}): Promise<AppleDeviceManager> {\n if (shouldPrompt) {\n const devices = await getSelectableSimulatorsAsync(device);\n device = await promptAppleDeviceAsync(devices, device?.osType);\n }\n\n const booted = await ensureSimulatorOpenAsync(device);\n return new AppleDeviceManager(booted);\n }\n\n get name() {\n return this.device.name;\n }\n\n get identifier(): string {\n return this.device.udid;\n }\n\n async getAppVersionAsync(\n appId: string,\n { containerPath }: { containerPath?: string } = {}\n ): Promise<string | null> {\n return await SimControl.getInfoPlistValueAsync(this.device, {\n appId,\n key: 'CFBundleShortVersionString',\n containerPath,\n });\n }\n\n async startAsync(): Promise<SimControl.Device> {\n return ensureSimulatorOpenAsync({ osType: this.device.osType, udid: this.device.udid });\n }\n\n async launchApplicationIdAsync(appId: string) {\n try {\n const result = await SimControl.openAppIdAsync(this.device, {\n appId,\n });\n if (result.status === 0) {\n await this.activateWindowAsync();\n } else {\n throw new CommandError(result.stderr);\n }\n } catch (error: any) {\n let errorMessage = `Couldn't open iOS app with ID \"${appId}\" on device \"${this.name}\".`;\n if (error instanceof CommandError && error.code === 'APP_NOT_INSTALLED') {\n if (appId === EXPO_GO_BUNDLE_IDENTIFIER) {\n errorMessage = `Couldn't open Expo Go app on device \"${this.name}\". Please install.`;\n } else {\n errorMessage += `\\nThe app might not be installed, try installing it with: ${chalk.bold(\n `npx expo run:ios -d ${this.device.udid}`\n )}`;\n }\n }\n if (error.stderr) {\n errorMessage += chalk.gray(`\\n${error.stderr}`);\n } else if (error.message) {\n errorMessage += chalk.gray(`\\n${error.message}`);\n }\n throw new CommandError(errorMessage);\n }\n }\n\n async installAppAsync(filePath: string) {\n await SimControl.installAsync(this.device, {\n filePath,\n });\n\n await this.waitForAppInstalledAsync(await this.getApplicationIdFromBundle(filePath));\n }\n\n private async getApplicationIdFromBundle(filePath: string): Promise<string> {\n debug('getApplicationIdFromBundle:', filePath);\n const builtInfoPlistPath = path.join(filePath, 'Info.plist');\n if (fs.existsSync(builtInfoPlistPath)) {\n const { CFBundleIdentifier } = await parsePlistAsync(builtInfoPlistPath);\n debug('getApplicationIdFromBundle: using built Info.plist', CFBundleIdentifier);\n return CFBundleIdentifier;\n }\n debug('getApplicationIdFromBundle: no Info.plist found');\n return EXPO_GO_BUNDLE_IDENTIFIER;\n }\n\n private async waitForAppInstalledAsync(applicationId: string): Promise<boolean> {\n while (true) {\n if (await this.isAppInstalledAndIfSoReturnContainerPathForIOSAsync(applicationId)) {\n return true;\n }\n await delayAsync(100);\n }\n }\n\n async uninstallAppAsync(appId: string) {\n await SimControl.uninstallAsync(this.device, {\n appId,\n });\n }\n\n async isAppInstalledAndIfSoReturnContainerPathForIOSAsync(appId: string) {\n return (\n (await SimControl.getContainerPathAsync(this.device, {\n appId,\n })) ?? false\n );\n }\n\n async openUrlAsync(url: string) {\n // Non-compliant URLs will be treated as application identifiers.\n if (!validateUrl(url, { requireProtocol: true })) {\n return await this.launchApplicationIdAsync(url);\n }\n\n try {\n await SimControl.openUrlAsync(this.device, { url });\n } catch (error: any) {\n // 194 means the device does not conform to a given URL, in this case we'll assume that the desired app is not installed.\n if (error.status === 194) {\n // An error was encountered processing the command (domain=NSOSStatusErrorDomain, code=-10814):\n // The operation couldn’t be completed. (OSStatus error -10814.)\n //\n // This can be thrown when no app conforms to the URI scheme that we attempted to open.\n throw new CommandError(\n 'APP_NOT_INSTALLED',\n `Device ${this.device.name} (${this.device.udid}) has no app to handle the URI: ${url}`\n );\n }\n throw error;\n }\n }\n\n async activateWindowAsync() {\n await ensureSimulatorAppRunningAsync(this.device);\n // TODO: Focus the individual window\n await osascript.execAsync(`tell application \"Simulator\" to activate`);\n }\n\n async ensureExpoGoAsync(sdkVersion: string): Promise<boolean> {\n const installer = new ExpoGoInstaller('ios', EXPO_GO_BUNDLE_IDENTIFIER, sdkVersion);\n return installer.ensureAsync(this);\n }\n}\n"],"names":["ensureSimulatorOpenAsync","AppleDeviceManager","debug","require","EXPO_GO_BUNDLE_IDENTIFIER","udid","osType","tryAgain","simulatorOpenedByApp","getBestBootedSimulatorAsync","bestUdid","getBestUnbootedSimulatorAsync","CommandError","bootedDevice","waitForActionAsync","action","assert","SimControl","bootAsync","DeviceManager","assertSystemRequirementsAsync","resolveAsync","device","shouldPrompt","devices","getSelectableSimulatorsAsync","promptAppleDeviceAsync","booted","name","identifier","getAppVersionAsync","appId","containerPath","getInfoPlistValueAsync","key","startAsync","launchApplicationIdAsync","result","openAppIdAsync","status","activateWindowAsync","stderr","error","errorMessage","code","chalk","bold","gray","message","installAppAsync","filePath","installAsync","waitForAppInstalledAsync","getApplicationIdFromBundle","builtInfoPlistPath","path","join","fs","existsSync","CFBundleIdentifier","parsePlistAsync","applicationId","isAppInstalledAndIfSoReturnContainerPathForIOSAsync","delayAsync","uninstallAppAsync","uninstallAsync","getContainerPathAsync","openUrlAsync","url","validateUrl","requireProtocol","ensureSimulatorAppRunningAsync","osascript","execAsync","ensureExpoGoAsync","sdkVersion","installer","ExpoGoInstaller","ensureAsync"],"mappings":"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"}
@@ -2,9 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- var _appleAppIdResolver = require("./AppleAppIdResolver");
6
- var _appleDeviceManager = require("./AppleDeviceManager");
7
- var _platformManager = require("../PlatformManager");
5
+ Object.defineProperty(exports, "ApplePlatformManager", {
6
+ enumerable: true,
7
+ get: ()=>ApplePlatformManager
8
+ });
9
+ const _appleAppIdResolver = require("./AppleAppIdResolver");
10
+ const _appleDeviceManager = require("./AppleDeviceManager");
11
+ const _platformManager = require("../PlatformManager");
8
12
  class ApplePlatformManager extends _platformManager.PlatformManager {
9
13
  constructor(projectRoot, port, options){
10
14
  super(projectRoot, {
@@ -26,6 +30,5 @@ class ApplePlatformManager extends _platformManager.PlatformManager {
26
30
  return applicationId;
27
31
  }
28
32
  }
29
- exports.ApplePlatformManager = ApplePlatformManager;
30
33
 
31
34
  //# sourceMappingURL=ApplePlatformManager.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/platforms/ios/ApplePlatformManager.ts"],"sourcesContent":["import { AppleAppIdResolver } from './AppleAppIdResolver';\nimport { AppleDeviceManager } from './AppleDeviceManager';\nimport { Device } from './simctl';\nimport { AppIdResolver } from '../AppIdResolver';\nimport { BaseOpenInCustomProps, PlatformManager } from '../PlatformManager';\n\n/** Manages launching apps on Apple simulators. */\nexport class ApplePlatformManager extends PlatformManager<Device> {\n constructor(\n protected projectRoot: string,\n protected port: number,\n options: {\n /** Get the base URL for the dev server hosting this platform manager. */\n getDevServerUrl: () => string | null;\n /** Expo Go URL. */\n getExpoGoUrl: () => string;\n /** Get redirect URL for native disambiguation. */\n getRedirectUrl: () => string | null;\n /** Dev Client */\n getCustomRuntimeUrl: (props?: { scheme?: string }) => string | null;\n }\n ) {\n super(projectRoot, {\n platform: 'ios',\n ...options,\n resolveDeviceAsync: AppleDeviceManager.resolveAsync,\n });\n }\n\n async openAsync(\n options:\n | { runtime: 'expo' | 'web' }\n | { runtime: 'custom'; props?: Partial<BaseOpenInCustomProps> },\n resolveSettings?: Partial<{ shouldPrompt?: boolean; device?: Device }>\n ): Promise<{ url: string }> {\n await AppleDeviceManager.assertSystemRequirementsAsync();\n return super.openAsync(options, resolveSettings);\n }\n\n _getAppIdResolver(): AppIdResolver {\n return new AppleAppIdResolver(this.projectRoot);\n }\n\n _resolveAlternativeLaunchUrl(\n applicationId: string,\n props?: Partial<BaseOpenInCustomProps>\n ): string {\n return applicationId;\n }\n}\n"],"names":["ApplePlatformManager","PlatformManager","constructor","projectRoot","port","options","platform","resolveDeviceAsync","AppleDeviceManager","resolveAsync","openAsync","resolveSettings","assertSystemRequirementsAsync","_getAppIdResolver","AppleAppIdResolver","_resolveAlternativeLaunchUrl","applicationId","props"],"mappings":"AAAA;;;;AAAmC,IAAA,mBAAsB,WAAtB,sBAAsB,CAAA;AACtB,IAAA,mBAAsB,WAAtB,sBAAsB,CAAA;AAGF,IAAA,gBAAoB,WAApB,oBAAoB,CAAA;AAGpE,MAAMA,oBAAoB,SAASC,gBAAe,gBAAA;IACvDC,YACYC,WAAmB,EACnBC,IAAY,EACtBC,OASC,CACD;QACA,KAAK,CAACF,WAAW,EAAE;YACjBG,QAAQ,EAAE,KAAK;YACf,GAAGD,OAAO;YACVE,kBAAkB,EAAEC,mBAAkB,mBAAA,CAACC,YAAY;SACpD,CAAC,CAAC;aAjBON,WAAmB,GAAnBA,WAAmB;aACnBC,IAAY,GAAZA,IAAY;KAiBvB;IAED,MAAMM,SAAS,CACbL,OAEiE,EACjEM,eAAsE,EAC5C;QAC1B,MAAMH,mBAAkB,mBAAA,CAACI,6BAA6B,EAAE,CAAC;QACzD,OAAO,KAAK,CAACF,SAAS,CAACL,OAAO,EAAEM,eAAe,CAAC,CAAC;KAClD;IAEDE,iBAAiB,GAAkB;QACjC,OAAO,IAAIC,mBAAkB,mBAAA,CAAC,IAAI,CAACX,WAAW,CAAC,CAAC;KACjD;IAEDY,4BAA4B,CAC1BC,aAAqB,EACrBC,KAAsC,EAC9B;QACR,OAAOD,aAAa,CAAC;KACtB;CACF;QA1CYhB,oBAAoB,GAApBA,oBAAoB"}
1
+ {"version":3,"sources":["../../../../../src/start/platforms/ios/ApplePlatformManager.ts"],"sourcesContent":["import { AppleAppIdResolver } from './AppleAppIdResolver';\nimport { AppleDeviceManager } from './AppleDeviceManager';\nimport { Device } from './simctl';\nimport { AppIdResolver } from '../AppIdResolver';\nimport { BaseOpenInCustomProps, PlatformManager } from '../PlatformManager';\n\n/** Manages launching apps on Apple simulators. */\nexport class ApplePlatformManager extends PlatformManager<Device> {\n constructor(\n protected projectRoot: string,\n protected port: number,\n options: {\n /** Get the base URL for the dev server hosting this platform manager. */\n getDevServerUrl: () => string | null;\n /** Expo Go URL. */\n getExpoGoUrl: () => string;\n /** Get redirect URL for native disambiguation. */\n getRedirectUrl: () => string | null;\n /** Dev Client */\n getCustomRuntimeUrl: (props?: { scheme?: string }) => string | null;\n }\n ) {\n super(projectRoot, {\n platform: 'ios',\n ...options,\n resolveDeviceAsync: AppleDeviceManager.resolveAsync,\n });\n }\n\n async openAsync(\n options:\n | { runtime: 'expo' | 'web' }\n | { runtime: 'custom'; props?: Partial<BaseOpenInCustomProps> },\n resolveSettings?: Partial<{ shouldPrompt?: boolean; device?: Device }>\n ): Promise<{ url: string }> {\n await AppleDeviceManager.assertSystemRequirementsAsync();\n return super.openAsync(options, resolveSettings);\n }\n\n _getAppIdResolver(): AppIdResolver {\n return new AppleAppIdResolver(this.projectRoot);\n }\n\n _resolveAlternativeLaunchUrl(\n applicationId: string,\n props?: Partial<BaseOpenInCustomProps>\n ): string {\n return applicationId;\n }\n}\n"],"names":["ApplePlatformManager","PlatformManager","constructor","projectRoot","port","options","platform","resolveDeviceAsync","AppleDeviceManager","resolveAsync","openAsync","resolveSettings","assertSystemRequirementsAsync","_getAppIdResolver","AppleAppIdResolver","_resolveAlternativeLaunchUrl","applicationId","props"],"mappings":"AAAA;;;;+BAOaA,sBAAoB;;aAApBA,oBAAoB;;oCAPE,sBAAsB;oCACtB,sBAAsB;iCAGF,oBAAoB;AAGpE,MAAMA,oBAAoB,SAASC,gBAAe,gBAAA;IACvDC,YACYC,WAAmB,EACnBC,IAAY,EACtBC,OASC,CACD;QACA,KAAK,CAACF,WAAW,EAAE;YACjBG,QAAQ,EAAE,KAAK;YACf,GAAGD,OAAO;YACVE,kBAAkB,EAAEC,mBAAkB,mBAAA,CAACC,YAAY;SACpD,CAAC,CAAC;QAjBON,mBAAAA,WAAmB,CAAA;QACnBC,YAAAA,IAAY,CAAA;IAiBxB;UAEMM,SAAS,CACbL,OAEiE,EACjEM,eAAsE,EAC5C;QAC1B,MAAMH,mBAAkB,mBAAA,CAACI,6BAA6B,EAAE,CAAC;QACzD,OAAO,KAAK,CAACF,SAAS,CAACL,OAAO,EAAEM,eAAe,CAAC,CAAC;IACnD;IAEAE,iBAAiB,GAAkB;QACjC,OAAO,IAAIC,mBAAkB,mBAAA,CAAC,IAAI,CAACX,WAAW,CAAC,CAAC;IAClD;IAEAY,4BAA4B,CAC1BC,aAAqB,EACrBC,KAAsC,EAC9B;QACR,OAAOD,aAAa,CAAC;IACvB;CACD"}