@expo/cli 0.22.25 → 0.22.26

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 (722) hide show
  1. package/build/bin/cli +91 -93
  2. package/build/bin/cli.map +1 -1
  3. package/build/metro-require/require.js +52 -53
  4. package/build/src/api/endpoint.js +2 -6
  5. package/build/src/api/endpoint.js.map +1 -1
  6. package/build/src/api/getExpoGoIntermediateCertificate.js +3 -5
  7. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
  8. package/build/src/api/getExpoSchema.js +12 -16
  9. package/build/src/api/getExpoSchema.js.map +1 -1
  10. package/build/src/api/getNativeModuleVersions.js +4 -6
  11. package/build/src/api/getNativeModuleVersions.js.map +1 -1
  12. package/build/src/api/getProjectDevelopmentCertificate.js +3 -5
  13. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
  14. package/build/src/api/getVersions.js +5 -7
  15. package/build/src/api/getVersions.js.map +1 -1
  16. package/build/src/api/graphql/client.js +26 -32
  17. package/build/src/api/graphql/client.js.map +1 -1
  18. package/build/src/api/graphql/queries/AppQuery.js +4 -6
  19. package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
  20. package/build/src/api/graphql/queries/UserQuery.js +3 -5
  21. package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
  22. package/build/src/api/graphql/types/App.js +1 -3
  23. package/build/src/api/graphql/types/App.js.map +1 -1
  24. package/build/src/api/rest/cache/FileSystemResponseCache.js +8 -10
  25. package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
  26. package/build/src/api/rest/cache/ResponseCache.js +12 -20
  27. package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +11 -13
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
  30. package/build/src/api/rest/client.js +35 -53
  31. package/build/src/api/rest/client.js.map +1 -1
  32. package/build/src/api/rest/client.types.js.map +1 -1
  33. package/build/src/api/rest/wrapFetchWithBaseUrl.js +3 -5
  34. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
  35. package/build/src/api/rest/wrapFetchWithOffline.js +3 -5
  36. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
  37. package/build/src/api/rest/wrapFetchWithProgress.js +7 -11
  38. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
  39. package/build/src/api/rest/wrapFetchWithProxy.js +3 -5
  40. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
  41. package/build/src/api/rest/wrapFetchWithUserAgent.js +6 -8
  42. package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
  43. package/build/src/api/settings.js +5 -7
  44. package/build/src/api/settings.js.map +1 -1
  45. package/build/src/api/updateDevelopmentSession.js +17 -23
  46. package/build/src/api/updateDevelopmentSession.js.map +1 -1
  47. package/build/src/api/user/UserSettings.js +21 -39
  48. package/build/src/api/user/UserSettings.js.map +1 -1
  49. package/build/src/api/user/actions.js +21 -27
  50. package/build/src/api/user/actions.js.map +1 -1
  51. package/build/src/api/user/expoSsoLauncher.js +26 -30
  52. package/build/src/api/user/expoSsoLauncher.js.map +1 -1
  53. package/build/src/api/user/otp.js +29 -35
  54. package/build/src/api/user/otp.js.map +1 -1
  55. package/build/src/api/user/user.js +30 -44
  56. package/build/src/api/user/user.js.map +1 -1
  57. package/build/src/config/configAsync.js +23 -29
  58. package/build/src/config/configAsync.js.map +1 -1
  59. package/build/src/config/index.js +21 -25
  60. package/build/src/config/index.js.map +1 -1
  61. package/build/src/customize/customizeAsync.js +6 -8
  62. package/build/src/customize/customizeAsync.js.map +1 -1
  63. package/build/src/customize/generate.js +16 -20
  64. package/build/src/customize/generate.js.map +1 -1
  65. package/build/src/customize/index.js +12 -14
  66. package/build/src/customize/index.js.map +1 -1
  67. package/build/src/customize/resolveOptions.js +2 -4
  68. package/build/src/customize/resolveOptions.js.map +1 -1
  69. package/build/src/customize/templates.js +54 -58
  70. package/build/src/customize/templates.js.map +1 -1
  71. package/build/src/customize/typescript.js +7 -11
  72. package/build/src/customize/typescript.js.map +1 -1
  73. package/build/src/export/createMetadataJson.js +9 -11
  74. package/build/src/export/createMetadataJson.js.map +1 -1
  75. package/build/src/export/embed/exportEager.js +6 -8
  76. package/build/src/export/embed/exportEager.js.map +1 -1
  77. package/build/src/export/embed/exportEmbedAsync.js +61 -71
  78. package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
  79. package/build/src/export/embed/exportServer.js +55 -57
  80. package/build/src/export/embed/exportServer.js.map +1 -1
  81. package/build/src/export/embed/index.js +40 -44
  82. package/build/src/export/embed/index.js.map +1 -1
  83. package/build/src/export/embed/resolveOptions.js +36 -44
  84. package/build/src/export/embed/resolveOptions.js.map +1 -1
  85. package/build/src/export/embed/xcodeCompilerLogger.js +27 -39
  86. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
  87. package/build/src/export/exportApp.js +63 -67
  88. package/build/src/export/exportApp.js.map +1 -1
  89. package/build/src/export/exportAssets.js +27 -35
  90. package/build/src/export/exportAssets.js.map +1 -1
  91. package/build/src/export/exportAsync.js +9 -13
  92. package/build/src/export/exportAsync.js.map +1 -1
  93. package/build/src/export/exportDomComponents.js +45 -53
  94. package/build/src/export/exportDomComponents.js.map +1 -1
  95. package/build/src/export/exportHermes.js +63 -85
  96. package/build/src/export/exportHermes.js.map +1 -1
  97. package/build/src/export/exportStaticAsync.js +62 -72
  98. package/build/src/export/exportStaticAsync.js.map +1 -1
  99. package/build/src/export/favicon.js +27 -33
  100. package/build/src/export/favicon.js.map +1 -1
  101. package/build/src/export/getPublicExpoManifest.js +5 -7
  102. package/build/src/export/getPublicExpoManifest.js.map +1 -1
  103. package/build/src/export/getResolvedLocales.js +9 -11
  104. package/build/src/export/getResolvedLocales.js.map +1 -1
  105. package/build/src/export/html.js +6 -10
  106. package/build/src/export/html.js.map +1 -1
  107. package/build/src/export/index.js +28 -32
  108. package/build/src/export/index.js.map +1 -1
  109. package/build/src/export/metroAssetLocalPath.js +30 -36
  110. package/build/src/export/metroAssetLocalPath.js.map +1 -1
  111. package/build/src/export/persistMetroAssets.js +34 -42
  112. package/build/src/export/persistMetroAssets.js.map +1 -1
  113. package/build/src/export/publicFolder.js +6 -10
  114. package/build/src/export/publicFolder.js.map +1 -1
  115. package/build/src/export/resolveOptions.js +24 -28
  116. package/build/src/export/resolveOptions.js.map +1 -1
  117. package/build/src/export/saveAssets.js +46 -50
  118. package/build/src/export/saveAssets.js.map +1 -1
  119. package/build/src/export/web/exportWebAsync.js +11 -13
  120. package/build/src/export/web/exportWebAsync.js.map +1 -1
  121. package/build/src/export/web/index.js +15 -19
  122. package/build/src/export/web/index.js.map +1 -1
  123. package/build/src/export/web/resolveOptions.js +3 -5
  124. package/build/src/export/web/resolveOptions.js.map +1 -1
  125. package/build/src/export/writeContents.js +2 -4
  126. package/build/src/export/writeContents.js.map +1 -1
  127. package/build/src/graphql/generated.js +274 -400
  128. package/build/src/graphql/generated.js.map +1 -1
  129. package/build/src/install/applyPlugins.js +7 -11
  130. package/build/src/install/applyPlugins.js.map +1 -1
  131. package/build/src/install/checkPackages.js +22 -26
  132. package/build/src/install/checkPackages.js.map +1 -1
  133. package/build/src/install/fixPackages.js +12 -16
  134. package/build/src/install/fixPackages.js.map +1 -1
  135. package/build/src/install/index.js +16 -18
  136. package/build/src/install/index.js.map +1 -1
  137. package/build/src/install/installAsync.js +26 -32
  138. package/build/src/install/installAsync.js.map +1 -1
  139. package/build/src/install/installExpoPackage.js +18 -22
  140. package/build/src/install/installExpoPackage.js.map +1 -1
  141. package/build/src/install/resolveOptions.js +19 -21
  142. package/build/src/install/resolveOptions.js.map +1 -1
  143. package/build/src/install/utils/autoAddConfigPlugins.js +14 -18
  144. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
  145. package/build/src/install/utils/checkPackagesCompatibility.js +11 -13
  146. package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
  147. package/build/src/lint/ESlintPrerequisite.js +44 -50
  148. package/build/src/lint/ESlintPrerequisite.js.map +1 -1
  149. package/build/src/lint/index.js +8 -12
  150. package/build/src/lint/index.js.map +1 -1
  151. package/build/src/lint/lintAsync.js +8 -10
  152. package/build/src/lint/lintAsync.js.map +1 -1
  153. package/build/src/log.js +16 -36
  154. package/build/src/log.js.map +1 -1
  155. package/build/src/login/index.js +20 -24
  156. package/build/src/login/index.js.map +1 -1
  157. package/build/src/logout/index.js +7 -11
  158. package/build/src/logout/index.js.map +1 -1
  159. package/build/src/prebuild/clearNativeFolder.js +26 -38
  160. package/build/src/prebuild/clearNativeFolder.js.map +1 -1
  161. package/build/src/prebuild/configureProjectAsync.js +14 -18
  162. package/build/src/prebuild/configureProjectAsync.js.map +1 -1
  163. package/build/src/prebuild/copyTemplateFiles.js +13 -17
  164. package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
  165. package/build/src/prebuild/ensureConfigAsync.js +4 -6
  166. package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
  167. package/build/src/prebuild/index.js +32 -36
  168. package/build/src/prebuild/index.js.map +1 -1
  169. package/build/src/prebuild/prebuildAsync.js +25 -29
  170. package/build/src/prebuild/prebuildAsync.js.map +1 -1
  171. package/build/src/prebuild/renameTemplateAppName.js +40 -46
  172. package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
  173. package/build/src/prebuild/resolveOptions.js +52 -66
  174. package/build/src/prebuild/resolveOptions.js.map +1 -1
  175. package/build/src/prebuild/resolveTemplate.js +32 -36
  176. package/build/src/prebuild/resolveTemplate.js.map +1 -1
  177. package/build/src/prebuild/updateFromTemplate.js +13 -19
  178. package/build/src/prebuild/updateFromTemplate.js.map +1 -1
  179. package/build/src/prebuild/updatePackageJson.js +39 -53
  180. package/build/src/prebuild/updatePackageJson.js.map +1 -1
  181. package/build/src/prebuild/validateTemplatePlatforms.js +8 -12
  182. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
  183. package/build/src/register/index.js +7 -11
  184. package/build/src/register/index.js.map +1 -1
  185. package/build/src/register/registerAsync.js +3 -5
  186. package/build/src/register/registerAsync.js.map +1 -1
  187. package/build/src/run/android/index.js +32 -36
  188. package/build/src/run/android/index.js.map +1 -1
  189. package/build/src/run/android/resolveDevice.js +8 -10
  190. package/build/src/run/android/resolveDevice.js.map +1 -1
  191. package/build/src/run/android/resolveGradlePropsAsync.js +16 -18
  192. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
  193. package/build/src/run/android/resolveInstallApkName.js +15 -17
  194. package/build/src/run/android/resolveInstallApkName.js.map +1 -1
  195. package/build/src/run/android/resolveLaunchProps.js +10 -12
  196. package/build/src/run/android/resolveLaunchProps.js.map +1 -1
  197. package/build/src/run/android/resolveOptions.js +2 -4
  198. package/build/src/run/android/resolveOptions.js.map +1 -1
  199. package/build/src/run/android/runAndroidAsync.js +21 -23
  200. package/build/src/run/android/runAndroidAsync.js.map +1 -1
  201. package/build/src/run/ensureNativeProject.js +5 -7
  202. package/build/src/run/ensureNativeProject.js.map +1 -1
  203. package/build/src/run/hints.js +7 -13
  204. package/build/src/run/hints.js.map +1 -1
  205. package/build/src/run/index.js +23 -27
  206. package/build/src/run/index.js.map +1 -1
  207. package/build/src/run/ios/XcodeBuild.js +56 -74
  208. package/build/src/run/ios/XcodeBuild.js.map +1 -1
  209. package/build/src/run/ios/XcodeBuild.types.js.map +1 -1
  210. package/build/src/run/ios/appleDevice/AppleDevice.js +63 -69
  211. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
  212. package/build/src/run/ios/appleDevice/ClientManager.js +26 -29
  213. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
  214. package/build/src/run/ios/appleDevice/client/AFCClient.js +25 -28
  215. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
  216. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +26 -29
  217. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
  218. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +21 -22
  219. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
  220. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +29 -32
  221. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
  222. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +24 -28
  223. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
  224. package/build/src/run/ios/appleDevice/client/ServiceClient.js +4 -7
  225. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
  226. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +27 -28
  227. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
  228. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +17 -23
  229. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
  230. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +132 -146
  231. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
  232. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +21 -29
  233. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
  234. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +21 -29
  235. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
  236. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +22 -34
  237. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
  238. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +17 -27
  239. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
  240. package/build/src/run/ios/codeSigning/Security.js +39 -53
  241. package/build/src/run/ios/codeSigning/Security.js.map +1 -1
  242. package/build/src/run/ios/codeSigning/configureCodeSigning.js +9 -13
  243. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
  244. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +19 -27
  245. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
  246. package/build/src/run/ios/codeSigning/settings.js +5 -9
  247. package/build/src/run/ios/codeSigning/settings.js.map +1 -1
  248. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +12 -14
  249. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
  250. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +21 -27
  251. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
  252. package/build/src/run/ios/index.js +36 -40
  253. package/build/src/run/ios/index.js.map +1 -1
  254. package/build/src/run/ios/launchApp.js +17 -23
  255. package/build/src/run/ios/launchApp.js.map +1 -1
  256. package/build/src/run/ios/options/appleDestinations.js +36 -38
  257. package/build/src/run/ios/options/appleDestinations.js.map +1 -1
  258. package/build/src/run/ios/options/promptDevice.js +16 -20
  259. package/build/src/run/ios/options/promptDevice.js.map +1 -1
  260. package/build/src/run/ios/options/resolveDevice.js +24 -30
  261. package/build/src/run/ios/options/resolveDevice.js.map +1 -1
  262. package/build/src/run/ios/options/resolveNativeScheme.js +23 -31
  263. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
  264. package/build/src/run/ios/options/resolveOptions.js +5 -7
  265. package/build/src/run/ios/options/resolveOptions.js.map +1 -1
  266. package/build/src/run/ios/options/resolveXcodeProject.js +5 -7
  267. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
  268. package/build/src/run/ios/runIosAsync.js +44 -48
  269. package/build/src/run/ios/runIosAsync.js.map +1 -1
  270. package/build/src/run/ios/validateExternalBinary.js +22 -24
  271. package/build/src/run/ios/validateExternalBinary.js.map +1 -1
  272. package/build/src/run/resolveBundlerProps.js +2 -4
  273. package/build/src/run/resolveBundlerProps.js.map +1 -1
  274. package/build/src/run/startBundler.js +12 -16
  275. package/build/src/run/startBundler.js.map +1 -1
  276. package/build/src/serve/index.js +16 -20
  277. package/build/src/serve/index.js.map +1 -1
  278. package/build/src/serve/serveAsync.js +32 -36
  279. package/build/src/serve/serveAsync.js.map +1 -1
  280. package/build/src/start/detectDevClient.js +9 -13
  281. package/build/src/start/detectDevClient.js.map +1 -1
  282. package/build/src/start/doctor/Prerequisite.js +7 -12
  283. package/build/src/start/doctor/Prerequisite.js.map +1 -1
  284. package/build/src/start/doctor/SecurityBinPrerequisite.js +11 -13
  285. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
  286. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +19 -23
  287. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
  288. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +19 -23
  289. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
  290. package/build/src/start/doctor/apple/XcodePrerequisite.js +45 -51
  291. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
  292. package/build/src/start/doctor/apple/XcrunPrerequisite.js +16 -18
  293. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
  294. package/build/src/start/doctor/dependencies/bundledNativeModules.js +19 -23
  295. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
  296. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +25 -31
  297. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
  298. package/build/src/start/doctor/dependencies/getMissingPackages.js +17 -25
  299. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
  300. package/build/src/start/doctor/dependencies/getVersionedPackages.js +32 -40
  301. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
  302. package/build/src/start/doctor/dependencies/resolvePackages.js +26 -32
  303. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
  304. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +31 -41
  305. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
  306. package/build/src/start/doctor/ngrok/ExternalModule.js +29 -34
  307. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
  308. package/build/src/start/doctor/ngrok/NgrokResolver.js +8 -12
  309. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
  310. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +28 -32
  311. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
  312. package/build/src/start/doctor/typescript/updateTSConfig.js +17 -23
  313. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
  314. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +27 -33
  315. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
  316. package/build/src/start/index.js +42 -46
  317. package/build/src/start/index.js.map +1 -1
  318. package/build/src/start/interface/KeyPressHandler.js +14 -18
  319. package/build/src/start/interface/KeyPressHandler.js.map +1 -1
  320. package/build/src/start/interface/commandsTable.js +80 -94
  321. package/build/src/start/interface/commandsTable.js.map +1 -1
  322. package/build/src/start/interface/interactiveActions.js +40 -44
  323. package/build/src/start/interface/interactiveActions.js.map +1 -1
  324. package/build/src/start/interface/startInterface.js +61 -65
  325. package/build/src/start/interface/startInterface.js.map +1 -1
  326. package/build/src/start/platforms/AppIdResolver.js +4 -6
  327. package/build/src/start/platforms/AppIdResolver.js.map +1 -1
  328. package/build/src/start/platforms/DeviceManager.js +6 -10
  329. package/build/src/start/platforms/DeviceManager.js.map +1 -1
  330. package/build/src/start/platforms/ExpoGoInstaller.js +20 -25
  331. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
  332. package/build/src/start/platforms/PlatformManager.js +15 -17
  333. package/build/src/start/platforms/PlatformManager.js.map +1 -1
  334. package/build/src/start/platforms/android/ADBServer.js +35 -39
  335. package/build/src/start/platforms/android/ADBServer.js.map +1 -1
  336. package/build/src/start/platforms/android/AndroidAppIdResolver.js +16 -18
  337. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
  338. package/build/src/start/platforms/android/AndroidDeviceManager.js +20 -24
  339. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
  340. package/build/src/start/platforms/android/AndroidPlatformManager.js +17 -17
  341. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
  342. package/build/src/start/platforms/android/AndroidSdk.js +9 -11
  343. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
  344. package/build/src/start/platforms/android/activateWindow.js +22 -26
  345. package/build/src/start/platforms/android/activateWindow.js.map +1 -1
  346. package/build/src/start/platforms/android/adb.js +83 -121
  347. package/build/src/start/platforms/android/adb.js.map +1 -1
  348. package/build/src/start/platforms/android/adbReverse.js +12 -20
  349. package/build/src/start/platforms/android/adbReverse.js.map +1 -1
  350. package/build/src/start/platforms/android/emulator.js +26 -36
  351. package/build/src/start/platforms/android/emulator.js.map +1 -1
  352. package/build/src/start/platforms/android/getDevices.js +5 -7
  353. package/build/src/start/platforms/android/getDevices.js.map +1 -1
  354. package/build/src/start/platforms/android/gradle.js +28 -36
  355. package/build/src/start/platforms/android/gradle.js.map +1 -1
  356. package/build/src/start/platforms/android/promptAndroidDevice.js +15 -19
  357. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
  358. package/build/src/start/platforms/ios/AppleAppIdResolver.js +19 -21
  359. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
  360. package/build/src/start/platforms/ios/AppleDeviceManager.js +31 -37
  361. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
  362. package/build/src/start/platforms/ios/ApplePlatformManager.js +12 -12
  363. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
  364. package/build/src/start/platforms/ios/assertSystemRequirements.js +7 -9
  365. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
  366. package/build/src/start/platforms/ios/devicectl.js +73 -87
  367. package/build/src/start/platforms/ios/devicectl.js.map +1 -1
  368. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +18 -22
  369. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
  370. package/build/src/start/platforms/ios/getBestSimulator.js +19 -29
  371. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
  372. package/build/src/start/platforms/ios/promptAppleDevice.js +10 -14
  373. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
  374. package/build/src/start/platforms/ios/simctl.js +74 -102
  375. package/build/src/start/platforms/ios/simctl.js.map +1 -1
  376. package/build/src/start/platforms/ios/simctlLogging.js +52 -57
  377. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
  378. package/build/src/start/platforms/ios/xcrun.js +18 -22
  379. package/build/src/start/platforms/ios/xcrun.js.map +1 -1
  380. package/build/src/start/project/devices.js +9 -19
  381. package/build/src/start/project/devices.js.map +1 -1
  382. package/build/src/start/project/dotExpo.js +11 -15
  383. package/build/src/start/project/dotExpo.js.map +1 -1
  384. package/build/src/start/project/settings.js +2 -4
  385. package/build/src/start/project/settings.js.map +1 -1
  386. package/build/src/start/resolveOptions.js +40 -48
  387. package/build/src/start/resolveOptions.js.map +1 -1
  388. package/build/src/start/server/AsyncNgrok.js +51 -55
  389. package/build/src/start/server/AsyncNgrok.js.map +1 -1
  390. package/build/src/start/server/AsyncWsTunnel.js +36 -40
  391. package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
  392. package/build/src/start/server/BundlerDevServer.js +79 -81
  393. package/build/src/start/server/BundlerDevServer.js.map +1 -1
  394. package/build/src/start/server/DevServerManager.js +38 -42
  395. package/build/src/start/server/DevServerManager.js.map +1 -1
  396. package/build/src/start/server/DevToolsPluginManager.js +14 -18
  397. package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
  398. package/build/src/start/server/DevelopmentSession.js +14 -18
  399. package/build/src/start/server/DevelopmentSession.js.map +1 -1
  400. package/build/src/start/server/ReactDevToolsProxy.js +10 -16
  401. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
  402. package/build/src/start/server/UrlCreator.js +33 -36
  403. package/build/src/start/server/UrlCreator.js.map +1 -1
  404. package/build/src/start/server/getStaticRenderFunctions.js +21 -29
  405. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
  406. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +4 -6
  407. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
  408. package/build/src/start/server/metro/MetroBundlerDevServer.js +271 -269
  409. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
  410. package/build/src/start/server/metro/MetroTerminalReporter.js +56 -63
  411. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
  412. package/build/src/start/server/metro/TerminalReporter.js +33 -39
  413. package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
  414. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
  415. package/build/src/start/server/metro/createExpoMetroResolver.js +40 -46
  416. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
  417. package/build/src/start/server/metro/createJResolver.js +28 -32
  418. package/build/src/start/server/metro/createJResolver.js.map +1 -1
  419. package/build/src/start/server/metro/createServerComponentsMiddleware.js +92 -96
  420. package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
  421. package/build/src/start/server/metro/createServerRouteMiddleware.js +30 -32
  422. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
  423. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +11 -13
  424. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
  425. package/build/src/start/server/metro/debugging/MessageHandler.js +1 -3
  426. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
  427. package/build/src/start/server/metro/debugging/attachAtlas.js +22 -26
  428. package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
  429. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +17 -19
  430. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
  431. package/build/src/start/server/metro/debugging/createHandlersFactory.js +31 -25
  432. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
  433. package/build/src/start/server/metro/debugging/getDebuggerType.js +4 -6
  434. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
  435. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +8 -14
  436. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
  437. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +5 -7
  438. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
  439. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +6 -8
  440. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
  441. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +5 -7
  442. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
  443. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +12 -14
  444. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
  445. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +10 -14
  446. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
  447. package/build/src/start/server/metro/debugging/pageIsSupported.js +4 -6
  448. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
  449. package/build/src/start/server/metro/debugging/types.js.map +1 -1
  450. package/build/src/start/server/metro/dev-server/createEventSocket.js +16 -18
  451. package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
  452. package/build/src/start/server/metro/dev-server/createMessageSocket.js +21 -23
  453. package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
  454. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +21 -23
  455. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
  456. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +2 -4
  457. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -1
  458. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +2 -4
  459. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -1
  460. package/build/src/start/server/metro/dev-server/utils/socketMessages.js +4 -8
  461. package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
  462. package/build/src/start/server/metro/externals.js +25 -33
  463. package/build/src/start/server/metro/externals.js.map +1 -1
  464. package/build/src/start/server/metro/fetchRouterManifest.js +12 -16
  465. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
  466. package/build/src/start/server/metro/formatFileCandidates.js +9 -11
  467. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
  468. package/build/src/start/server/metro/getCssModulesFromBundler.js +18 -22
  469. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
  470. package/build/src/start/server/metro/instantiateMetro.js +79 -85
  471. package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
  472. package/build/src/start/server/metro/log-box/LogBoxLog.js +36 -40
  473. package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
  474. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +14 -20
  475. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
  476. package/build/src/start/server/metro/log-box/formatProjectFilePath.js +6 -10
  477. package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
  478. package/build/src/start/server/metro/metroErrorInterface.js +78 -88
  479. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
  480. package/build/src/start/server/metro/metroErrors.js +4 -8
  481. package/build/src/start/server/metro/metroErrors.js.map +1 -1
  482. package/build/src/start/server/metro/metroPrivateServer.js +7 -9
  483. package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
  484. package/build/src/start/server/metro/metroVirtualModules.js +8 -10
  485. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
  486. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +22 -24
  487. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
  488. package/build/src/start/server/metro/router.js +32 -48
  489. package/build/src/start/server/metro/router.js.map +1 -1
  490. package/build/src/start/server/metro/runServer-fork.js +22 -24
  491. package/build/src/start/server/metro/runServer-fork.js.map +1 -1
  492. package/build/src/start/server/metro/serializeHtml.js +22 -24
  493. package/build/src/start/server/metro/serializeHtml.js.map +1 -1
  494. package/build/src/start/server/metro/symbolicate.js.map +1 -1
  495. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +29 -35
  496. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
  497. package/build/src/start/server/metro/withMetroMultiPlatform.js +139 -149
  498. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
  499. package/build/src/start/server/metro/withMetroResolvers.js +39 -49
  500. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
  501. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +6 -8
  502. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
  503. package/build/src/start/server/middleware/CorsMiddleware.js +15 -17
  504. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
  505. package/build/src/start/server/middleware/CreateFileMiddleware.js +31 -32
  506. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
  507. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +19 -22
  508. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
  509. package/build/src/start/server/middleware/DomComponentsMiddleware.js +27 -33
  510. package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
  511. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +60 -64
  512. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
  513. package/build/src/start/server/middleware/ExpoMiddleware.js +9 -15
  514. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
  515. package/build/src/start/server/middleware/FaviconMiddleware.js +14 -15
  516. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
  517. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +2 -4
  518. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
  519. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +31 -34
  520. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
  521. package/build/src/start/server/middleware/ManifestMiddleware.js +56 -64
  522. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
  523. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +19 -23
  524. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
  525. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +19 -20
  526. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
  527. package/build/src/start/server/middleware/ServeStaticMiddleware.js +9 -11
  528. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
  529. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +11 -17
  530. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
  531. package/build/src/start/server/middleware/inspector/CdpClient.js +10 -12
  532. package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
  533. package/build/src/start/server/middleware/inspector/JsInspector.js +27 -35
  534. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
  535. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +19 -21
  536. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
  537. package/build/src/start/server/middleware/inspector/middlwareMutations.js +2 -6
  538. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
  539. package/build/src/start/server/middleware/metroOptions.js +96 -120
  540. package/build/src/start/server/middleware/metroOptions.js.map +1 -1
  541. package/build/src/start/server/middleware/mutations.js +3 -7
  542. package/build/src/start/server/middleware/mutations.js.map +1 -1
  543. package/build/src/start/server/middleware/resolveAssets.js +18 -26
  544. package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
  545. package/build/src/start/server/middleware/resolvePlatform.js +15 -23
  546. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
  547. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +9 -11
  548. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
  549. package/build/src/start/server/middleware/server.types.js.map +1 -1
  550. package/build/src/start/server/openPlatforms.js +8 -10
  551. package/build/src/start/server/openPlatforms.js.map +1 -1
  552. package/build/src/start/server/platformBundlers.js +11 -13
  553. package/build/src/start/server/platformBundlers.js.map +1 -1
  554. package/build/src/start/server/serverLogLikeMetro.js +50 -58
  555. package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
  556. package/build/src/start/server/type-generation/expo-env.js +7 -11
  557. package/build/src/start/server/type-generation/expo-env.js.map +1 -1
  558. package/build/src/start/server/type-generation/routes.js +54 -76
  559. package/build/src/start/server/type-generation/routes.js.map +1 -1
  560. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +19 -21
  561. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
  562. package/build/src/start/server/type-generation/tsconfig.js +28 -36
  563. package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
  564. package/build/src/start/server/webTemplate.js +24 -28
  565. package/build/src/start/server/webTemplate.js.map +1 -1
  566. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +46 -52
  567. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
  568. package/build/src/start/server/webpack/compile.js +11 -15
  569. package/build/src/start/server/webpack/compile.js.map +1 -1
  570. package/build/src/start/server/webpack/formatWebpackMessages.js +26 -28
  571. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
  572. package/build/src/start/server/webpack/resolveFromProject.js +12 -18
  573. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
  574. package/build/src/start/server/webpack/tls.js +12 -18
  575. package/build/src/start/server/webpack/tls.js.map +1 -1
  576. package/build/src/start/startAsync.js +27 -31
  577. package/build/src/start/startAsync.js.map +1 -1
  578. package/build/src/utils/FileNotifier.js +17 -20
  579. package/build/src/utils/FileNotifier.js.map +1 -1
  580. package/build/src/utils/ansi.js +5 -7
  581. package/build/src/utils/ansi.js.map +1 -1
  582. package/build/src/utils/args.js +14 -24
  583. package/build/src/utils/args.js.map +1 -1
  584. package/build/src/utils/array.js +6 -18
  585. package/build/src/utils/array.js.map +1 -1
  586. package/build/src/utils/cocoapods.js +46 -54
  587. package/build/src/utils/cocoapods.js.map +1 -1
  588. package/build/src/utils/codesigning.js +68 -78
  589. package/build/src/utils/codesigning.js.map +1 -1
  590. package/build/src/utils/createFileTransform.js +12 -16
  591. package/build/src/utils/createFileTransform.js.map +1 -1
  592. package/build/src/utils/createTempPath.js +13 -17
  593. package/build/src/utils/createTempPath.js.map +1 -1
  594. package/build/src/utils/delay.js +6 -12
  595. package/build/src/utils/delay.js.map +1 -1
  596. package/build/src/utils/dir.js +28 -46
  597. package/build/src/utils/dir.js.map +1 -1
  598. package/build/src/utils/downloadAppAsync.js +8 -10
  599. package/build/src/utils/downloadAppAsync.js.map +1 -1
  600. package/build/src/utils/downloadExpoGoAsync.js +21 -25
  601. package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
  602. package/build/src/utils/editor.js +35 -41
  603. package/build/src/utils/editor.js.map +1 -1
  604. package/build/src/utils/env.js +59 -63
  605. package/build/src/utils/env.js.map +1 -1
  606. package/build/src/utils/errors.js +30 -37
  607. package/build/src/utils/errors.js.map +1 -1
  608. package/build/src/utils/exit.js +31 -35
  609. package/build/src/utils/exit.js.map +1 -1
  610. package/build/src/utils/expoUpdatesCli.js +22 -32
  611. package/build/src/utils/expoUpdatesCli.js.map +1 -1
  612. package/build/src/utils/fetch.js +4 -8
  613. package/build/src/utils/fetch.js.map +1 -1
  614. package/build/src/utils/filePath.js +6 -10
  615. package/build/src/utils/filePath.js.map +1 -1
  616. package/build/src/utils/findUp.js +9 -13
  617. package/build/src/utils/findUp.js.map +1 -1
  618. package/build/src/utils/fn.js +2 -6
  619. package/build/src/utils/fn.js.map +1 -1
  620. package/build/src/utils/getOrPromptApplicationId.js +26 -32
  621. package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
  622. package/build/src/utils/getRunningProcess.js +21 -29
  623. package/build/src/utils/getRunningProcess.js.map +1 -1
  624. package/build/src/utils/git.js +20 -26
  625. package/build/src/utils/git.js.map +1 -1
  626. package/build/src/utils/glob.js +4 -8
  627. package/build/src/utils/glob.js.map +1 -1
  628. package/build/src/utils/interactive.js +1 -3
  629. package/build/src/utils/interactive.js.map +1 -1
  630. package/build/src/utils/ip.js +19 -21
  631. package/build/src/utils/ip.js.map +1 -1
  632. package/build/src/utils/isModuleSymlinked.js +9 -11
  633. package/build/src/utils/isModuleSymlinked.js.map +1 -1
  634. package/build/src/utils/jsonSchemaDeref.js +18 -20
  635. package/build/src/utils/jsonSchemaDeref.js.map +1 -1
  636. package/build/src/utils/link.js +13 -17
  637. package/build/src/utils/link.js.map +1 -1
  638. package/build/src/utils/mergeGitIgnorePaths.js +28 -46
  639. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
  640. package/build/src/utils/modifyConfigAsync.js +10 -16
  641. package/build/src/utils/modifyConfigAsync.js.map +1 -1
  642. package/build/src/utils/modifyConfigPlugins.js +6 -10
  643. package/build/src/utils/modifyConfigPlugins.js.map +1 -1
  644. package/build/src/utils/nodeEnv.js +6 -12
  645. package/build/src/utils/nodeEnv.js.map +1 -1
  646. package/build/src/utils/nodeModules.js +8 -10
  647. package/build/src/utils/nodeModules.js.map +1 -1
  648. package/build/src/utils/npm.js +36 -50
  649. package/build/src/utils/npm.js.map +1 -1
  650. package/build/src/utils/obj.js +5 -11
  651. package/build/src/utils/obj.js.map +1 -1
  652. package/build/src/utils/open.js +8 -10
  653. package/build/src/utils/open.js.map +1 -1
  654. package/build/src/utils/ora.js +7 -13
  655. package/build/src/utils/ora.js.map +1 -1
  656. package/build/src/utils/plist.js +15 -21
  657. package/build/src/utils/plist.js.map +1 -1
  658. package/build/src/utils/port.js +33 -43
  659. package/build/src/utils/port.js.map +1 -1
  660. package/build/src/utils/profile.js +7 -11
  661. package/build/src/utils/profile.js.map +1 -1
  662. package/build/src/utils/progress.js +5 -11
  663. package/build/src/utils/progress.js.map +1 -1
  664. package/build/src/utils/prompts.js +29 -47
  665. package/build/src/utils/prompts.js.map +1 -1
  666. package/build/src/utils/resolveArgs.js +24 -36
  667. package/build/src/utils/resolveArgs.js.map +1 -1
  668. package/build/src/utils/scheme.js +32 -40
  669. package/build/src/utils/scheme.js.map +1 -1
  670. package/build/src/utils/stream.js +3 -5
  671. package/build/src/utils/stream.js.map +1 -1
  672. package/build/src/utils/strings.js +4 -6
  673. package/build/src/utils/strings.js.map +1 -1
  674. package/build/src/utils/tar.js +15 -19
  675. package/build/src/utils/tar.js.map +1 -1
  676. package/build/src/utils/telemetry/Telemetry.js +27 -29
  677. package/build/src/utils/telemetry/Telemetry.js.map +1 -1
  678. package/build/src/utils/telemetry/clients/FetchClient.js +13 -15
  679. package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
  680. package/build/src/utils/telemetry/clients/FetchDetachedClient.js +22 -26
  681. package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -1
  682. package/build/src/utils/telemetry/clients/RudderClient.js +8 -10
  683. package/build/src/utils/telemetry/clients/RudderClient.js.map +1 -1
  684. package/build/src/utils/telemetry/clients/RudderDetachedClient.js +22 -26
  685. package/build/src/utils/telemetry/clients/RudderDetachedClient.js.map +1 -1
  686. package/build/src/utils/telemetry/clients/flushFetchDetached.js +10 -10
  687. package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -1
  688. package/build/src/utils/telemetry/clients/flushRudderDetached.js +10 -10
  689. package/build/src/utils/telemetry/clients/flushRudderDetached.js.map +1 -1
  690. package/build/src/utils/telemetry/events.js +2 -4
  691. package/build/src/utils/telemetry/events.js.map +1 -1
  692. package/build/src/utils/telemetry/flushDetached.js.map +1 -1
  693. package/build/src/utils/telemetry/index.js +29 -25
  694. package/build/src/utils/telemetry/index.js.map +1 -1
  695. package/build/src/utils/telemetry/types.js.map +1 -1
  696. package/build/src/utils/telemetry/utils/constants.js +4 -8
  697. package/build/src/utils/telemetry/utils/constants.js.map +1 -1
  698. package/build/src/utils/telemetry/utils/context.js +14 -18
  699. package/build/src/utils/telemetry/utils/context.js.map +1 -1
  700. package/build/src/utils/template.js +4 -6
  701. package/build/src/utils/template.js.map +1 -1
  702. package/build/src/utils/terminal.js +2 -4
  703. package/build/src/utils/terminal.js.map +1 -1
  704. package/build/src/utils/tsconfig/evaluateTsConfig.js +17 -21
  705. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
  706. package/build/src/utils/tsconfig/loadTsConfigPaths.js +14 -18
  707. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
  708. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +5 -7
  709. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
  710. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +12 -14
  711. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
  712. package/build/src/utils/url.js +13 -23
  713. package/build/src/utils/url.js.map +1 -1
  714. package/build/src/utils/validateApplicationId.js +86 -108
  715. package/build/src/utils/validateApplicationId.js.map +1 -1
  716. package/build/src/utils/variadic.js +16 -22
  717. package/build/src/utils/variadic.js.map +1 -1
  718. package/build/src/whoami/index.js +7 -11
  719. package/build/src/whoami/index.js.map +1 -1
  720. package/build/src/whoami/whoamiAsync.js +7 -11
  721. package/build/src/whoami/whoamiAsync.js.map +1 -1
  722. package/package.json +3 -3
@@ -14,21 +14,11 @@ function _export(target, all) {
14
14
  });
15
15
  }
16
16
  _export(exports, {
17
- IS_METRO_BUNDLE_ERROR_SYMBOL: function() {
18
- return IS_METRO_BUNDLE_ERROR_SYMBOL;
19
- },
20
- getErrorOverlayHtmlAsync: function() {
21
- return getErrorOverlayHtmlAsync;
22
- },
23
- logMetroError: function() {
24
- return logMetroError;
25
- },
26
- logMetroErrorAsync: function() {
27
- return logMetroErrorAsync;
28
- },
29
- logMetroErrorWithStack: function() {
30
- return logMetroErrorWithStack;
31
- }
17
+ logMetroErrorWithStack: ()=>logMetroErrorWithStack,
18
+ IS_METRO_BUNDLE_ERROR_SYMBOL: ()=>IS_METRO_BUNDLE_ERROR_SYMBOL,
19
+ logMetroError: ()=>logMetroError,
20
+ logMetroErrorAsync: ()=>logMetroErrorAsync,
21
+ getErrorOverlayHtmlAsync: ()=>getErrorOverlayHtmlAsync
32
22
  });
33
23
  function _paths() {
34
24
  const data = require("@expo/config/paths");
@@ -38,96 +28,96 @@ function _paths() {
38
28
  return data;
39
29
  }
40
30
  function _chalk() {
41
- const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
31
+ const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
42
32
  _chalk = function() {
43
33
  return data;
44
34
  };
45
35
  return data;
46
36
  }
47
37
  function _path() {
48
- const data = /*#__PURE__*/ _interop_require_default(require("path"));
38
+ const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
49
39
  _path = function() {
50
40
  return data;
51
41
  };
52
42
  return data;
53
43
  }
54
- function _resolvefrom() {
55
- const data = /*#__PURE__*/ _interop_require_default(require("resolve-from"));
56
- _resolvefrom = function() {
44
+ function _resolveFrom() {
45
+ const data = /*#__PURE__*/ _interopRequireDefault(require("resolve-from"));
46
+ _resolveFrom = function() {
57
47
  return data;
58
48
  };
59
49
  return data;
60
50
  }
61
- function _stacktraceparser() {
51
+ function _stacktraceParser() {
62
52
  const data = require("stacktrace-parser");
63
- _stacktraceparser = function() {
53
+ _stacktraceParser = function() {
64
54
  return data;
65
55
  };
66
56
  return data;
67
57
  }
68
- function _terminallink() {
69
- const data = /*#__PURE__*/ _interop_require_default(require("terminal-link"));
70
- _terminallink = function() {
58
+ function _terminalLink() {
59
+ const data = /*#__PURE__*/ _interopRequireDefault(require("terminal-link"));
60
+ _terminalLink = function() {
71
61
  return data;
72
62
  };
73
63
  return data;
74
64
  }
75
- const _LogBoxLog = require("./log-box/LogBoxLog");
65
+ const _logBoxLog = require("./log-box/LogBoxLog");
76
66
  const _formatProjectFilePath = require("./log-box/formatProjectFilePath");
77
67
  const _log = require("../../../log");
78
68
  const _ansi = require("../../../utils/ansi");
79
69
  const _errors = require("../../../utils/errors");
80
70
  const _getStaticRenderFunctions = require("../getStaticRenderFunctions");
81
- function _interop_require_default(obj) {
71
+ function _interopRequireDefault(obj) {
82
72
  return obj && obj.__esModule ? obj : {
83
73
  default: obj
84
74
  };
85
75
  }
86
76
  function fill(width) {
87
- return Array(width).join(' ');
77
+ return Array(width).join(" ");
88
78
  }
89
79
  function formatPaths(config) {
90
80
  const filePath = _chalk().default.reset(config.filePath);
91
- return _chalk().default.dim('(') + filePath + _chalk().default.dim(`:${[
81
+ return _chalk().default.dim("(") + filePath + _chalk().default.dim(`:${[
92
82
  config.line,
93
83
  config.col
94
- ].filter(Boolean).join(':')})`);
84
+ ].filter(Boolean).join(":")})`);
95
85
  }
96
- async function logMetroErrorWithStack(projectRoot, { stack, codeFrame, error }) {
86
+ async function logMetroErrorWithStack(projectRoot, { stack , codeFrame , error }) {
97
87
  if (error instanceof _errors.SilentError) {
98
88
  return;
99
89
  }
100
90
  // process.stdout.write('\u001b[0m'); // Reset attributes
101
91
  // process.stdout.write('\u001bc'); // Reset the terminal
102
92
  _log.Log.log();
103
- _log.Log.log(_chalk().default.red('Metro error: ') + error.message);
93
+ _log.Log.log(_chalk().default.red("Metro error: ") + error.message);
104
94
  _log.Log.log();
105
95
  if (error instanceof _errors.CommandError) {
106
96
  return;
107
97
  }
108
98
  if (codeFrame) {
109
- var _codeFrame_location;
99
+ var ref;
110
100
  const maxWarningLineLength = Math.max(200, process.stdout.columns);
111
101
  const lineText = codeFrame.content;
112
- const isPreviewTooLong = codeFrame.content.split('\n').some((line)=>line.length > maxWarningLineLength);
113
- const column = (_codeFrame_location = codeFrame.location) == null ? void 0 : _codeFrame_location.column;
102
+ const isPreviewTooLong = codeFrame.content.split("\n").some((line)=>line.length > maxWarningLineLength);
103
+ const column = (ref = codeFrame.location) == null ? void 0 : ref.column;
114
104
  // When the preview is too long, we skip reading the file and attempting to apply
115
105
  // code coloring, this is because it can get very slow.
116
106
  if (isPreviewTooLong) {
117
- var _codeFrame_location1, _codeFrame_location2;
118
- let previewLine = '';
119
- let cursorLine = '';
107
+ var ref1, ref2;
108
+ let previewLine = "";
109
+ let cursorLine = "";
120
110
  const formattedPath = formatPaths({
121
111
  filePath: codeFrame.fileName,
122
- line: (_codeFrame_location1 = codeFrame.location) == null ? void 0 : _codeFrame_location1.row,
123
- col: (_codeFrame_location2 = codeFrame.location) == null ? void 0 : _codeFrame_location2.column
112
+ line: (ref1 = codeFrame.location) == null ? void 0 : ref1.row,
113
+ col: (ref2 = codeFrame.location) == null ? void 0 : ref2.column
124
114
  });
125
115
  // Create a curtailed preview line like:
126
116
  // `...transition:'fade'},k._updatePropsStack=function(){clearImmediate(k._updateImmediate),k._updateImmediate...`
127
117
  // If there is no text preview or column number, we can't do anything.
128
118
  if (lineText && column != null) {
129
- var _codeFrame_fileName;
130
- const rangeWindow = Math.round(Math.max(((_codeFrame_fileName = codeFrame.fileName) == null ? void 0 : _codeFrame_fileName.length) ?? 0, Math.max(80, process.stdout.columns)) / 2);
119
+ var ref3;
120
+ const rangeWindow = Math.round(Math.max(((ref3 = codeFrame.fileName) == null ? void 0 : ref3.length) ?? 0, Math.max(80, process.stdout.columns)) / 2);
131
121
  let minBounds = Math.max(0, column - rangeWindow);
132
122
  const maxBounds = Math.min(minBounds + rangeWindow * 2, lineText.length);
133
123
  previewLine = lineText.slice(minBounds, maxBounds);
@@ -136,20 +126,20 @@ async function logMetroErrorWithStack(projectRoot, { stack, codeFrame, error })
136
126
  if (minBounds > 0) {
137
127
  // Adjust the min bounds so the cursor is aligned after we add the "..."
138
128
  minBounds -= 3;
139
- previewLine = _chalk().default.dim('...') + previewLine;
129
+ previewLine = _chalk().default.dim("...") + previewLine;
140
130
  }
141
131
  if (maxBounds < lineText.length) {
142
- previewLine += _chalk().default.dim('...');
132
+ previewLine += _chalk().default.dim("...");
143
133
  }
144
134
  // If the column property could be found, then use that to fix the cursor location which is often broken in regex.
145
- cursorLine = (column == null ? '' : fill(column) + _chalk().default.reset('^')).slice(minBounds);
135
+ cursorLine = (column == null ? "" : fill(column) + _chalk().default.reset("^")).slice(minBounds);
146
136
  _log.Log.log([
147
137
  formattedPath,
148
- '',
138
+ "",
149
139
  previewLine,
150
140
  cursorLine,
151
- _chalk().default.dim('(error truncated)')
152
- ].join('\n'));
141
+ _chalk().default.dim("(error truncated)")
142
+ ].join("\n"));
153
143
  }
154
144
  } else {
155
145
  _log.Log.log(codeFrame.content);
@@ -165,7 +155,7 @@ async function logMetroErrorWithStack(projectRoot, { stack, codeFrame, error })
165
155
  });
166
156
  const stackLines = [];
167
157
  stackProps.forEach((frame)=>{
168
- const position = _terminallink().default.isSupported ? (0, _terminallink().default)(frame.subtitle, frame.subtitle) : frame.subtitle;
158
+ const position = _terminalLink().default.isSupported ? (0, _terminalLink().default)(frame.subtitle, frame.subtitle) : frame.subtitle;
169
159
  let lineItem = _chalk().default.gray(` ${frame.title} (${position})`);
170
160
  if (frame.collapse) {
171
161
  lineItem = _chalk().default.dim(lineItem);
@@ -178,45 +168,45 @@ async function logMetroErrorWithStack(projectRoot, { stack, codeFrame, error })
178
168
  _log.Log.log();
179
169
  _log.Log.log(_chalk().default.bold`Call Stack`);
180
170
  if (!stackLines.length) {
181
- _log.Log.log(_chalk().default.gray(' No stack trace available.'));
171
+ _log.Log.log(_chalk().default.gray(" No stack trace available."));
182
172
  } else {
183
- _log.Log.log(stackLines.join('\n'));
173
+ _log.Log.log(stackLines.join("\n"));
184
174
  }
185
175
  } else {
186
176
  _log.Log.log(_chalk().default.gray(` ${error.stack}`));
187
177
  }
188
178
  }
189
- const IS_METRO_BUNDLE_ERROR_SYMBOL = Symbol('_isMetroBundleError');
190
- const HAS_LOGGED_SYMBOL = Symbol('_hasLoggedInCLI');
191
- async function logMetroError(projectRoot, { error }) {
192
- var _log_symbolicated_stack, _log_symbolicated;
179
+ const IS_METRO_BUNDLE_ERROR_SYMBOL = Symbol("_isMetroBundleError");
180
+ const HAS_LOGGED_SYMBOL = Symbol("_hasLoggedInCLI");
181
+ async function logMetroError(projectRoot, { error }) {
182
+ var ref, ref1;
193
183
  if (error instanceof _errors.SilentError || error[HAS_LOGGED_SYMBOL]) {
194
184
  return;
195
185
  }
196
186
  error[HAS_LOGGED_SYMBOL] = true;
197
187
  const stack = parseErrorStack(projectRoot, error.stack);
198
- const log = new _LogBoxLog.LogBoxLog({
199
- level: 'static',
188
+ const log = new _logBoxLog.LogBoxLog({
189
+ level: "static",
200
190
  message: {
201
191
  content: error.message,
202
192
  substitutions: []
203
193
  },
204
194
  isComponentError: false,
205
195
  stack,
206
- category: 'static',
196
+ category: "static",
207
197
  componentStack: []
208
198
  });
209
- await new Promise((res)=>log.symbolicate('stack', res));
199
+ await new Promise((res)=>log.symbolicate("stack", res));
210
200
  logMetroErrorWithStack(projectRoot, {
211
- stack: ((_log_symbolicated = log.symbolicated) == null ? void 0 : (_log_symbolicated_stack = _log_symbolicated.stack) == null ? void 0 : _log_symbolicated_stack.stack) ?? [],
201
+ stack: ((ref = log.symbolicated) == null ? void 0 : (ref1 = ref.stack) == null ? void 0 : ref1.stack) ?? [],
212
202
  codeFrame: log.codeFrame,
213
203
  error
214
204
  });
215
205
  }
216
206
  function isTransformError(error) {
217
- return error.type === 'TransformError';
207
+ return error.type === "TransformError";
218
208
  }
219
- /** @returns the html required to render the static metro error as an SPA. */ function logFromError({ error, projectRoot }) {
209
+ /** @returns the html required to render the static metro error as an SPA. */ function logFromError({ error , projectRoot }) {
220
210
  // Remap direct Metro Node.js errors to a format that will appear more client-friendly in the logbox UI.
221
211
  let stack;
222
212
  if (isTransformError(error) && error.filename) {
@@ -224,66 +214,66 @@ function isTransformError(error) {
224
214
  stack = [
225
215
  {
226
216
  file: _path().default.join(projectRoot, error.filename),
227
- methodName: '<unknown>',
217
+ methodName: "<unknown>",
228
218
  arguments: [],
229
219
  // TODO: Import stack
230
220
  lineNumber: error.lineNumber,
231
221
  column: error.column
232
- }
222
+ },
233
223
  ];
234
- } else if ('originModulePath' in error && typeof error.originModulePath === 'string') {
224
+ } else if ("originModulePath" in error && typeof error.originModulePath === "string") {
235
225
  // TODO: Use import stack here when the error is resolution based.
236
226
  stack = [
237
227
  {
238
228
  file: error.originModulePath,
239
- methodName: '<unknown>',
229
+ methodName: "<unknown>",
240
230
  arguments: [],
241
231
  // TODO: Import stack
242
232
  lineNumber: 0,
243
233
  column: 0
244
- }
234
+ },
245
235
  ];
246
236
  } else {
247
237
  stack = parseErrorStack(projectRoot, error.stack);
248
238
  }
249
- return new _LogBoxLog.LogBoxLog({
250
- level: 'static',
239
+ return new _logBoxLog.LogBoxLog({
240
+ level: "static",
251
241
  message: {
252
242
  content: error.message,
253
243
  substitutions: []
254
244
  },
255
245
  isComponentError: false,
256
246
  stack,
257
- category: 'static',
247
+ category: "static",
258
248
  componentStack: []
259
249
  });
260
250
  }
261
- async function logMetroErrorAsync({ error, projectRoot }) {
262
- var _log_symbolicated_stack, _log_symbolicated;
251
+ async function logMetroErrorAsync({ error , projectRoot }) {
252
+ var ref, ref1;
263
253
  const log = logFromError({
264
254
  projectRoot,
265
255
  error
266
256
  });
267
- await new Promise((res)=>log.symbolicate('stack', ()=>res()));
257
+ await new Promise((res)=>log.symbolicate("stack", ()=>res()));
268
258
  logMetroErrorWithStack(projectRoot, {
269
- stack: ((_log_symbolicated = log.symbolicated) == null ? void 0 : (_log_symbolicated_stack = _log_symbolicated.stack) == null ? void 0 : _log_symbolicated_stack.stack) ?? [],
259
+ stack: ((ref = log.symbolicated) == null ? void 0 : (ref1 = ref.stack) == null ? void 0 : ref1.stack) ?? [],
270
260
  codeFrame: log.codeFrame,
271
261
  error
272
262
  });
273
263
  }
274
- async function getErrorOverlayHtmlAsync({ error, projectRoot, routerRoot }) {
275
- var _log_symbolicated_stack, _log_symbolicated;
264
+ async function getErrorOverlayHtmlAsync({ error , projectRoot , routerRoot }) {
265
+ var ref, ref1;
276
266
  const log = logFromError({
277
267
  projectRoot,
278
268
  error
279
269
  });
280
- await new Promise((res)=>log.symbolicate('stack', ()=>res()));
270
+ await new Promise((res)=>log.symbolicate("stack", ()=>res()));
281
271
  logMetroErrorWithStack(projectRoot, {
282
- stack: ((_log_symbolicated = log.symbolicated) == null ? void 0 : (_log_symbolicated_stack = _log_symbolicated.stack) == null ? void 0 : _log_symbolicated_stack.stack) ?? [],
272
+ stack: ((ref = log.symbolicated) == null ? void 0 : (ref1 = ref.stack) == null ? void 0 : ref1.stack) ?? [],
283
273
  codeFrame: log.codeFrame,
284
274
  error
285
275
  });
286
- if ('message' in log && 'content' in log.message && typeof log.message.content === 'string') {
276
+ if ("message" in log && "content" in log.message && typeof log.message.content === "string") {
287
277
  log.message.content = (0, _ansi.stripAnsi)(log.message.content);
288
278
  }
289
279
  const logBoxContext = {
@@ -295,18 +285,18 @@ async function getErrorOverlayHtmlAsync({ error, projectRoot, routerRoot }) {
295
285
  };
296
286
  const html = `<html><head><style>#root,body,html{height:100%}body{overflow:hidden}#root{display:flex}</style></head><body><div id="root"></div><script id="_expo-static-error" type="application/json">${JSON.stringify(logBoxContext)}</script></body></html>`;
297
287
  const errorOverlayEntry = await (0, _getStaticRenderFunctions.createMetroEndpointAsync)(projectRoot, // Keep the URL relative
298
- '', (0, _resolvefrom().default)(projectRoot, 'expo-router/_error'), {
299
- mode: 'development',
300
- platform: 'web',
288
+ "", (0, _resolveFrom().default)(projectRoot, "expo-router/_error"), {
289
+ mode: "development",
290
+ platform: "web",
301
291
  minify: false,
302
292
  optimize: false,
303
293
  usedExports: false,
304
- baseUrl: '',
294
+ baseUrl: "",
305
295
  routerRoot,
306
296
  isExporting: false,
307
297
  reactCompiler: false
308
298
  });
309
- const htmlWithJs = html.replace('</body>', `<script src=${errorOverlayEntry}></script></body>`);
299
+ const htmlWithJs = html.replace("</body>", `<script src=${errorOverlayEntry}></script></body>`);
310
300
  return htmlWithJs;
311
301
  }
312
302
  function parseErrorStack(projectRoot, stack) {
@@ -317,20 +307,20 @@ function parseErrorStack(projectRoot, stack) {
317
307
  return stack;
318
308
  }
319
309
  const serverRoot = (0, _paths().getMetroServerRoot)(projectRoot);
320
- return (0, _stacktraceparser().parse)(stack).map((frame)=>{
310
+ return (0, _stacktraceParser().parse)(stack).map((frame)=>{
321
311
  // frame.file will mostly look like `http://localhost:8081/index.bundle?platform=web&dev=true&hot=false`
322
312
  if (frame.file) {
323
313
  // SSR will sometimes have absolute paths followed by `.bundle?...`, we need to try and make them relative paths and append a dev server URL.
324
- if (frame.file.startsWith('/') && frame.file.includes('bundle?') && !canParse(frame.file)) {
314
+ if (frame.file.startsWith("/") && frame.file.includes("bundle?") && !canParse(frame.file)) {
325
315
  // Malformed stack file from SSR. Attempt to repair.
326
- frame.file = 'https://localhost:8081/' + _path().default.relative(serverRoot, frame.file);
316
+ frame.file = "https://localhost:8081/" + _path().default.relative(serverRoot, frame.file);
327
317
  }
328
318
  }
329
319
  return {
330
320
  ...frame,
331
321
  column: frame.column != null ? frame.column - 1 : null
332
322
  };
333
- }).filter((frame)=>frame.file && !frame.file.includes('node_modules'));
323
+ }).filter((frame)=>frame.file && !frame.file.includes("node_modules"));
334
324
  }
335
325
  function canParse(url) {
336
326
  try {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/server/metro/metroErrorInterface.ts"],"sourcesContent":["/**\n * Copyright © 2022 650 Industries.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { getMetroServerRoot } from '@expo/config/paths';\nimport chalk from 'chalk';\nimport path from 'path';\nimport resolveFrom from 'resolve-from';\nimport { parse, StackFrame } from 'stacktrace-parser';\nimport terminalLink from 'terminal-link';\n\nimport { LogBoxLog } from './log-box/LogBoxLog';\nimport type { CodeFrame, StackFrame as MetroStackFrame } from './log-box/LogBoxSymbolication';\nimport { getStackFormattedLocation } from './log-box/formatProjectFilePath';\nimport { Log } from '../../../log';\nimport { stripAnsi } from '../../../utils/ansi';\nimport { CommandError, SilentError } from '../../../utils/errors';\nimport { createMetroEndpointAsync } from '../getStaticRenderFunctions';\n\nfunction fill(width: number): string {\n return Array(width).join(' ');\n}\n\nfunction formatPaths(config: { filePath: string | null; line?: number; col?: number }) {\n const filePath = chalk.reset(config.filePath);\n return (\n chalk.dim('(') +\n filePath +\n chalk.dim(`:${[config.line, config.col].filter(Boolean).join(':')})`)\n );\n}\n\nexport async function logMetroErrorWithStack(\n projectRoot: string,\n {\n stack,\n codeFrame,\n error,\n }: {\n stack: MetroStackFrame[];\n codeFrame?: CodeFrame;\n error: Error;\n }\n) {\n if (error instanceof SilentError) {\n return;\n }\n\n // process.stdout.write('\\u001b[0m'); // Reset attributes\n // process.stdout.write('\\u001bc'); // Reset the terminal\n\n Log.log();\n Log.log(chalk.red('Metro error: ') + error.message);\n Log.log();\n\n if (error instanceof CommandError) {\n return;\n }\n\n if (codeFrame) {\n const maxWarningLineLength = Math.max(200, process.stdout.columns);\n\n const lineText = codeFrame.content;\n const isPreviewTooLong = codeFrame.content\n .split('\\n')\n .some((line) => line.length > maxWarningLineLength);\n const column = codeFrame.location?.column;\n // When the preview is too long, we skip reading the file and attempting to apply\n // code coloring, this is because it can get very slow.\n if (isPreviewTooLong) {\n let previewLine = '';\n let cursorLine = '';\n\n const formattedPath = formatPaths({\n filePath: codeFrame.fileName,\n line: codeFrame.location?.row,\n col: codeFrame.location?.column,\n });\n // Create a curtailed preview line like:\n // `...transition:'fade'},k._updatePropsStack=function(){clearImmediate(k._updateImmediate),k._updateImmediate...`\n // If there is no text preview or column number, we can't do anything.\n if (lineText && column != null) {\n const rangeWindow = Math.round(\n Math.max(codeFrame.fileName?.length ?? 0, Math.max(80, process.stdout.columns)) / 2\n );\n let minBounds = Math.max(0, column - rangeWindow);\n const maxBounds = Math.min(minBounds + rangeWindow * 2, lineText.length);\n previewLine = lineText.slice(minBounds, maxBounds);\n\n // If we splice content off the start, then we should append `...`.\n // This is unlikely to happen since we limit the activation size.\n if (minBounds > 0) {\n // Adjust the min bounds so the cursor is aligned after we add the \"...\"\n minBounds -= 3;\n previewLine = chalk.dim('...') + previewLine;\n }\n if (maxBounds < lineText.length) {\n previewLine += chalk.dim('...');\n }\n\n // If the column property could be found, then use that to fix the cursor location which is often broken in regex.\n cursorLine = (column == null ? '' : fill(column) + chalk.reset('^')).slice(minBounds);\n\n Log.log(\n [formattedPath, '', previewLine, cursorLine, chalk.dim('(error truncated)')].join('\\n')\n );\n }\n } else {\n Log.log(codeFrame.content);\n }\n }\n\n if (stack?.length) {\n const stackProps = stack.map((frame) => {\n return {\n title: frame.methodName,\n subtitle: getStackFormattedLocation(projectRoot, frame),\n collapse: frame.collapse,\n };\n });\n\n const stackLines: string[] = [];\n\n stackProps.forEach((frame) => {\n const position = terminalLink.isSupported\n ? terminalLink(frame.subtitle, frame.subtitle)\n : frame.subtitle;\n let lineItem = chalk.gray(` ${frame.title} (${position})`);\n if (frame.collapse) {\n lineItem = chalk.dim(lineItem);\n }\n // Never show the internal module system.\n if (!frame.subtitle.match(/\\/metro-require\\/require\\.js/)) {\n stackLines.push(lineItem);\n }\n });\n\n Log.log();\n Log.log(chalk.bold`Call Stack`);\n if (!stackLines.length) {\n Log.log(chalk.gray(' No stack trace available.'));\n } else {\n Log.log(stackLines.join('\\n'));\n }\n } else {\n Log.log(chalk.gray(` ${error.stack}`));\n }\n}\n\nexport const IS_METRO_BUNDLE_ERROR_SYMBOL = Symbol('_isMetroBundleError');\nconst HAS_LOGGED_SYMBOL = Symbol('_hasLoggedInCLI');\n\nexport async function logMetroError(\n projectRoot: string,\n {\n error,\n }: {\n error: Error & {\n [HAS_LOGGED_SYMBOL]?: boolean;\n };\n }\n) {\n if (error instanceof SilentError || error[HAS_LOGGED_SYMBOL]) {\n return;\n }\n error[HAS_LOGGED_SYMBOL] = true;\n\n const stack = parseErrorStack(projectRoot, error.stack);\n\n const log = new LogBoxLog({\n level: 'static',\n message: {\n content: error.message,\n substitutions: [],\n },\n isComponentError: false,\n stack,\n category: 'static',\n componentStack: [],\n });\n\n await new Promise((res) => log.symbolicate('stack', res));\n\n logMetroErrorWithStack(projectRoot, {\n stack: log.symbolicated?.stack?.stack ?? [],\n codeFrame: log.codeFrame,\n error,\n });\n}\n\nfunction isTransformError(\n error: any\n): error is { type: 'TransformError'; filename: string; lineNumber: number; column: number } {\n return error.type === 'TransformError';\n}\n\n/** @returns the html required to render the static metro error as an SPA. */\nfunction logFromError({ error, projectRoot }: { error: Error; projectRoot: string }) {\n // Remap direct Metro Node.js errors to a format that will appear more client-friendly in the logbox UI.\n let stack: MetroStackFrame[] | undefined;\n if (isTransformError(error) && error.filename) {\n // Syntax errors in static rendering.\n stack = [\n {\n file: path.join(projectRoot, error.filename),\n methodName: '<unknown>',\n arguments: [],\n // TODO: Import stack\n lineNumber: error.lineNumber,\n column: error.column,\n },\n ];\n } else if ('originModulePath' in error && typeof error.originModulePath === 'string') {\n // TODO: Use import stack here when the error is resolution based.\n stack = [\n {\n file: error.originModulePath,\n methodName: '<unknown>',\n arguments: [],\n // TODO: Import stack\n lineNumber: 0,\n column: 0,\n },\n ];\n } else {\n stack = parseErrorStack(projectRoot, error.stack);\n }\n\n return new LogBoxLog({\n level: 'static',\n message: {\n content: error.message,\n substitutions: [],\n },\n isComponentError: false,\n stack,\n category: 'static',\n componentStack: [],\n });\n}\n\n/** @returns the html required to render the static metro error as an SPA. */\nexport async function logMetroErrorAsync({\n error,\n projectRoot,\n}: {\n error: Error;\n projectRoot: string;\n}) {\n const log = logFromError({ projectRoot, error });\n\n await new Promise<void>((res) => log.symbolicate('stack', () => res()));\n\n logMetroErrorWithStack(projectRoot, {\n stack: log.symbolicated?.stack?.stack ?? [],\n codeFrame: log.codeFrame,\n error,\n });\n}\n\n/** @returns the html required to render the static metro error as an SPA. */\nexport async function getErrorOverlayHtmlAsync({\n error,\n projectRoot,\n routerRoot,\n}: {\n error: Error;\n projectRoot: string;\n routerRoot: string;\n}) {\n const log = logFromError({ projectRoot, error });\n\n await new Promise<void>((res) => log.symbolicate('stack', () => res()));\n\n logMetroErrorWithStack(projectRoot, {\n stack: log.symbolicated?.stack?.stack ?? [],\n codeFrame: log.codeFrame,\n error,\n });\n\n if ('message' in log && 'content' in log.message && typeof log.message.content === 'string') {\n log.message.content = stripAnsi(log.message.content)!;\n }\n\n const logBoxContext = {\n selectedLogIndex: 0,\n isDisabled: false,\n logs: [log],\n };\n const html = `<html><head><style>#root,body,html{height:100%}body{overflow:hidden}#root{display:flex}</style></head><body><div id=\"root\"></div><script id=\"_expo-static-error\" type=\"application/json\">${JSON.stringify(\n logBoxContext\n )}</script></body></html>`;\n\n const errorOverlayEntry = await createMetroEndpointAsync(\n projectRoot,\n // Keep the URL relative\n '',\n resolveFrom(projectRoot, 'expo-router/_error'),\n {\n mode: 'development',\n platform: 'web',\n minify: false,\n optimize: false,\n usedExports: false,\n baseUrl: '',\n routerRoot,\n isExporting: false,\n reactCompiler: false,\n }\n );\n\n const htmlWithJs = html.replace('</body>', `<script src=${errorOverlayEntry}></script></body>`);\n return htmlWithJs;\n}\n\nfunction parseErrorStack(\n projectRoot: string,\n stack?: string\n): (StackFrame & { collapse?: boolean })[] {\n if (stack == null) {\n return [];\n }\n if (Array.isArray(stack)) {\n return stack;\n }\n\n const serverRoot = getMetroServerRoot(projectRoot);\n\n return parse(stack)\n .map((frame) => {\n // frame.file will mostly look like `http://localhost:8081/index.bundle?platform=web&dev=true&hot=false`\n\n if (frame.file) {\n // SSR will sometimes have absolute paths followed by `.bundle?...`, we need to try and make them relative paths and append a dev server URL.\n if (frame.file.startsWith('/') && frame.file.includes('bundle?') && !canParse(frame.file)) {\n // Malformed stack file from SSR. Attempt to repair.\n frame.file = 'https://localhost:8081/' + path.relative(serverRoot, frame.file);\n }\n }\n\n return {\n ...frame,\n column: frame.column != null ? frame.column - 1 : null,\n };\n })\n .filter((frame) => frame.file && !frame.file.includes('node_modules'));\n}\n\nfunction canParse(url: string): boolean {\n try {\n // eslint-disable-next-line no-new\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n"],"names":["IS_METRO_BUNDLE_ERROR_SYMBOL","getErrorOverlayHtmlAsync","logMetroError","logMetroErrorAsync","logMetroErrorWithStack","fill","width","Array","join","formatPaths","config","filePath","chalk","reset","dim","line","col","filter","Boolean","projectRoot","stack","codeFrame","error","SilentError","Log","log","red","message","CommandError","maxWarningLineLength","Math","max","process","stdout","columns","lineText","content","isPreviewTooLong","split","some","length","column","location","previewLine","cursorLine","formattedPath","fileName","row","rangeWindow","round","minBounds","maxBounds","min","slice","stackProps","map","frame","title","methodName","subtitle","getStackFormattedLocation","collapse","stackLines","forEach","position","terminalLink","isSupported","lineItem","gray","match","push","bold","Symbol","HAS_LOGGED_SYMBOL","parseErrorStack","LogBoxLog","level","substitutions","isComponentError","category","componentStack","Promise","res","symbolicate","symbolicated","isTransformError","type","logFromError","filename","file","path","arguments","lineNumber","originModulePath","routerRoot","stripAnsi","logBoxContext","selectedLogIndex","isDisabled","logs","html","JSON","stringify","errorOverlayEntry","createMetroEndpointAsync","resolveFrom","mode","platform","minify","optimize","usedExports","baseUrl","isExporting","reactCompiler","htmlWithJs","replace","isArray","serverRoot","getMetroServerRoot","parse","startsWith","includes","canParse","relative","url","URL"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/start/server/metro/metroErrorInterface.ts"],"sourcesContent":["/**\n * Copyright © 2022 650 Industries.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { getMetroServerRoot } from '@expo/config/paths';\nimport chalk from 'chalk';\nimport path from 'path';\nimport resolveFrom from 'resolve-from';\nimport { parse, StackFrame } from 'stacktrace-parser';\nimport terminalLink from 'terminal-link';\n\nimport { LogBoxLog } from './log-box/LogBoxLog';\nimport type { CodeFrame, StackFrame as MetroStackFrame } from './log-box/LogBoxSymbolication';\nimport { getStackFormattedLocation } from './log-box/formatProjectFilePath';\nimport { Log } from '../../../log';\nimport { stripAnsi } from '../../../utils/ansi';\nimport { CommandError, SilentError } from '../../../utils/errors';\nimport { createMetroEndpointAsync } from '../getStaticRenderFunctions';\n\nfunction fill(width: number): string {\n return Array(width).join(' ');\n}\n\nfunction formatPaths(config: { filePath: string | null; line?: number; col?: number }) {\n const filePath = chalk.reset(config.filePath);\n return (\n chalk.dim('(') +\n filePath +\n chalk.dim(`:${[config.line, config.col].filter(Boolean).join(':')})`)\n );\n}\n\nexport async function logMetroErrorWithStack(\n projectRoot: string,\n {\n stack,\n codeFrame,\n error,\n }: {\n stack: MetroStackFrame[];\n codeFrame?: CodeFrame;\n error: Error;\n }\n) {\n if (error instanceof SilentError) {\n return;\n }\n\n // process.stdout.write('\\u001b[0m'); // Reset attributes\n // process.stdout.write('\\u001bc'); // Reset the terminal\n\n Log.log();\n Log.log(chalk.red('Metro error: ') + error.message);\n Log.log();\n\n if (error instanceof CommandError) {\n return;\n }\n\n if (codeFrame) {\n const maxWarningLineLength = Math.max(200, process.stdout.columns);\n\n const lineText = codeFrame.content;\n const isPreviewTooLong = codeFrame.content\n .split('\\n')\n .some((line) => line.length > maxWarningLineLength);\n const column = codeFrame.location?.column;\n // When the preview is too long, we skip reading the file and attempting to apply\n // code coloring, this is because it can get very slow.\n if (isPreviewTooLong) {\n let previewLine = '';\n let cursorLine = '';\n\n const formattedPath = formatPaths({\n filePath: codeFrame.fileName,\n line: codeFrame.location?.row,\n col: codeFrame.location?.column,\n });\n // Create a curtailed preview line like:\n // `...transition:'fade'},k._updatePropsStack=function(){clearImmediate(k._updateImmediate),k._updateImmediate...`\n // If there is no text preview or column number, we can't do anything.\n if (lineText && column != null) {\n const rangeWindow = Math.round(\n Math.max(codeFrame.fileName?.length ?? 0, Math.max(80, process.stdout.columns)) / 2\n );\n let minBounds = Math.max(0, column - rangeWindow);\n const maxBounds = Math.min(minBounds + rangeWindow * 2, lineText.length);\n previewLine = lineText.slice(minBounds, maxBounds);\n\n // If we splice content off the start, then we should append `...`.\n // This is unlikely to happen since we limit the activation size.\n if (minBounds > 0) {\n // Adjust the min bounds so the cursor is aligned after we add the \"...\"\n minBounds -= 3;\n previewLine = chalk.dim('...') + previewLine;\n }\n if (maxBounds < lineText.length) {\n previewLine += chalk.dim('...');\n }\n\n // If the column property could be found, then use that to fix the cursor location which is often broken in regex.\n cursorLine = (column == null ? '' : fill(column) + chalk.reset('^')).slice(minBounds);\n\n Log.log(\n [formattedPath, '', previewLine, cursorLine, chalk.dim('(error truncated)')].join('\\n')\n );\n }\n } else {\n Log.log(codeFrame.content);\n }\n }\n\n if (stack?.length) {\n const stackProps = stack.map((frame) => {\n return {\n title: frame.methodName,\n subtitle: getStackFormattedLocation(projectRoot, frame),\n collapse: frame.collapse,\n };\n });\n\n const stackLines: string[] = [];\n\n stackProps.forEach((frame) => {\n const position = terminalLink.isSupported\n ? terminalLink(frame.subtitle, frame.subtitle)\n : frame.subtitle;\n let lineItem = chalk.gray(` ${frame.title} (${position})`);\n if (frame.collapse) {\n lineItem = chalk.dim(lineItem);\n }\n // Never show the internal module system.\n if (!frame.subtitle.match(/\\/metro-require\\/require\\.js/)) {\n stackLines.push(lineItem);\n }\n });\n\n Log.log();\n Log.log(chalk.bold`Call Stack`);\n if (!stackLines.length) {\n Log.log(chalk.gray(' No stack trace available.'));\n } else {\n Log.log(stackLines.join('\\n'));\n }\n } else {\n Log.log(chalk.gray(` ${error.stack}`));\n }\n}\n\nexport const IS_METRO_BUNDLE_ERROR_SYMBOL = Symbol('_isMetroBundleError');\nconst HAS_LOGGED_SYMBOL = Symbol('_hasLoggedInCLI');\n\nexport async function logMetroError(\n projectRoot: string,\n {\n error,\n }: {\n error: Error & {\n [HAS_LOGGED_SYMBOL]?: boolean;\n };\n }\n) {\n if (error instanceof SilentError || error[HAS_LOGGED_SYMBOL]) {\n return;\n }\n error[HAS_LOGGED_SYMBOL] = true;\n\n const stack = parseErrorStack(projectRoot, error.stack);\n\n const log = new LogBoxLog({\n level: 'static',\n message: {\n content: error.message,\n substitutions: [],\n },\n isComponentError: false,\n stack,\n category: 'static',\n componentStack: [],\n });\n\n await new Promise((res) => log.symbolicate('stack', res));\n\n logMetroErrorWithStack(projectRoot, {\n stack: log.symbolicated?.stack?.stack ?? [],\n codeFrame: log.codeFrame,\n error,\n });\n}\n\nfunction isTransformError(\n error: any\n): error is { type: 'TransformError'; filename: string; lineNumber: number; column: number } {\n return error.type === 'TransformError';\n}\n\n/** @returns the html required to render the static metro error as an SPA. */\nfunction logFromError({ error, projectRoot }: { error: Error; projectRoot: string }) {\n // Remap direct Metro Node.js errors to a format that will appear more client-friendly in the logbox UI.\n let stack: MetroStackFrame[] | undefined;\n if (isTransformError(error) && error.filename) {\n // Syntax errors in static rendering.\n stack = [\n {\n file: path.join(projectRoot, error.filename),\n methodName: '<unknown>',\n arguments: [],\n // TODO: Import stack\n lineNumber: error.lineNumber,\n column: error.column,\n },\n ];\n } else if ('originModulePath' in error && typeof error.originModulePath === 'string') {\n // TODO: Use import stack here when the error is resolution based.\n stack = [\n {\n file: error.originModulePath,\n methodName: '<unknown>',\n arguments: [],\n // TODO: Import stack\n lineNumber: 0,\n column: 0,\n },\n ];\n } else {\n stack = parseErrorStack(projectRoot, error.stack);\n }\n\n return new LogBoxLog({\n level: 'static',\n message: {\n content: error.message,\n substitutions: [],\n },\n isComponentError: false,\n stack,\n category: 'static',\n componentStack: [],\n });\n}\n\n/** @returns the html required to render the static metro error as an SPA. */\nexport async function logMetroErrorAsync({\n error,\n projectRoot,\n}: {\n error: Error;\n projectRoot: string;\n}) {\n const log = logFromError({ projectRoot, error });\n\n await new Promise<void>((res) => log.symbolicate('stack', () => res()));\n\n logMetroErrorWithStack(projectRoot, {\n stack: log.symbolicated?.stack?.stack ?? [],\n codeFrame: log.codeFrame,\n error,\n });\n}\n\n/** @returns the html required to render the static metro error as an SPA. */\nexport async function getErrorOverlayHtmlAsync({\n error,\n projectRoot,\n routerRoot,\n}: {\n error: Error;\n projectRoot: string;\n routerRoot: string;\n}) {\n const log = logFromError({ projectRoot, error });\n\n await new Promise<void>((res) => log.symbolicate('stack', () => res()));\n\n logMetroErrorWithStack(projectRoot, {\n stack: log.symbolicated?.stack?.stack ?? [],\n codeFrame: log.codeFrame,\n error,\n });\n\n if ('message' in log && 'content' in log.message && typeof log.message.content === 'string') {\n log.message.content = stripAnsi(log.message.content)!;\n }\n\n const logBoxContext = {\n selectedLogIndex: 0,\n isDisabled: false,\n logs: [log],\n };\n const html = `<html><head><style>#root,body,html{height:100%}body{overflow:hidden}#root{display:flex}</style></head><body><div id=\"root\"></div><script id=\"_expo-static-error\" type=\"application/json\">${JSON.stringify(\n logBoxContext\n )}</script></body></html>`;\n\n const errorOverlayEntry = await createMetroEndpointAsync(\n projectRoot,\n // Keep the URL relative\n '',\n resolveFrom(projectRoot, 'expo-router/_error'),\n {\n mode: 'development',\n platform: 'web',\n minify: false,\n optimize: false,\n usedExports: false,\n baseUrl: '',\n routerRoot,\n isExporting: false,\n reactCompiler: false,\n }\n );\n\n const htmlWithJs = html.replace('</body>', `<script src=${errorOverlayEntry}></script></body>`);\n return htmlWithJs;\n}\n\nfunction parseErrorStack(\n projectRoot: string,\n stack?: string\n): (StackFrame & { collapse?: boolean })[] {\n if (stack == null) {\n return [];\n }\n if (Array.isArray(stack)) {\n return stack;\n }\n\n const serverRoot = getMetroServerRoot(projectRoot);\n\n return parse(stack)\n .map((frame) => {\n // frame.file will mostly look like `http://localhost:8081/index.bundle?platform=web&dev=true&hot=false`\n\n if (frame.file) {\n // SSR will sometimes have absolute paths followed by `.bundle?...`, we need to try and make them relative paths and append a dev server URL.\n if (frame.file.startsWith('/') && frame.file.includes('bundle?') && !canParse(frame.file)) {\n // Malformed stack file from SSR. Attempt to repair.\n frame.file = 'https://localhost:8081/' + path.relative(serverRoot, frame.file);\n }\n }\n\n return {\n ...frame,\n column: frame.column != null ? frame.column - 1 : null,\n };\n })\n .filter((frame) => frame.file && !frame.file.includes('node_modules'));\n}\n\nfunction canParse(url: string): boolean {\n try {\n // eslint-disable-next-line no-new\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n"],"names":["logMetroErrorWithStack","IS_METRO_BUNDLE_ERROR_SYMBOL","logMetroError","logMetroErrorAsync","getErrorOverlayHtmlAsync","fill","width","Array","join","formatPaths","config","filePath","chalk","reset","dim","line","col","filter","Boolean","projectRoot","stack","codeFrame","error","SilentError","Log","log","red","message","CommandError","maxWarningLineLength","Math","max","process","stdout","columns","lineText","content","isPreviewTooLong","split","some","length","column","location","previewLine","cursorLine","formattedPath","fileName","row","rangeWindow","round","minBounds","maxBounds","min","slice","stackProps","map","frame","title","methodName","subtitle","getStackFormattedLocation","collapse","stackLines","forEach","position","terminalLink","isSupported","lineItem","gray","match","push","bold","Symbol","HAS_LOGGED_SYMBOL","parseErrorStack","LogBoxLog","level","substitutions","isComponentError","category","componentStack","Promise","res","symbolicate","symbolicated","isTransformError","type","logFromError","filename","file","path","arguments","lineNumber","originModulePath","routerRoot","stripAnsi","logBoxContext","selectedLogIndex","isDisabled","logs","html","JSON","stringify","errorOverlayEntry","createMetroEndpointAsync","resolveFrom","mode","platform","minify","optimize","usedExports","baseUrl","isExporting","reactCompiler","htmlWithJs","replace","isArray","serverRoot","getMetroServerRoot","parse","startsWith","includes","canParse","relative","url","URL"],"mappings":"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"}
@@ -10,18 +10,14 @@ function _export(target, all) {
10
10
  });
11
11
  }
12
12
  _export(exports, {
13
- isFailedToResolveNameError: function() {
14
- return isFailedToResolveNameError;
15
- },
16
- isFailedToResolvePathError: function() {
17
- return isFailedToResolvePathError;
18
- }
13
+ isFailedToResolveNameError: ()=>isFailedToResolveNameError,
14
+ isFailedToResolvePathError: ()=>isFailedToResolvePathError
19
15
  });
20
16
  function isFailedToResolveNameError(error) {
21
- return !!error && 'extraPaths' in error && error.constructor.name === 'FailedToResolveNameError';
17
+ return !!error && "extraPaths" in error && error.constructor.name === "FailedToResolveNameError";
22
18
  }
23
19
  function isFailedToResolvePathError(error) {
24
- return !!error && 'candidates' in error && error.constructor.name === 'FailedToResolvePathError' && !error.message.includes('Importing native-only module');
20
+ return !!error && "candidates" in error && error.constructor.name === "FailedToResolvePathError" && !error.message.includes("Importing native-only module");
25
21
  }
26
22
 
27
23
  //# sourceMappingURL=metroErrors.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/server/metro/metroErrors.ts"],"sourcesContent":["// Used to cast a type to metro errors without depending on specific versions of metro.\n\nexport type FileAndDirCandidates = {\n dir: FileCandidates;\n file: FileCandidates;\n};\n\n/**\n * This is a way to describe what files we tried to look for when resolving\n * a module name as file. This is mainly used for error reporting, so that\n * we can explain why we cannot resolve a module.\n */\nexport type FileCandidates =\n // We only tried to resolve a specific asset.\n | { type: 'asset'; name: string }\n // We attempted to resolve a name as being a source file (ex. JavaScript,\n // JSON...), in which case there can be several extensions we tried, for\n // example `/js/foo.ios.js`, `/js/foo.js`, etc. for a single prefix '/js/foo'.\n | {\n type: 'sourceFile';\n filePathPrefix: string;\n candidateExts: readonly string[];\n };\n\ntype FailedToResolveNameError = Error & {\n dirPaths: string[];\n extraPaths: string[];\n};\n\ntype FailedToResolvePathError = Error & {\n candidates: FileAndDirCandidates;\n};\n\nexport function isFailedToResolveNameError(error: any): error is FailedToResolveNameError {\n return !!error && 'extraPaths' in error && error.constructor.name === 'FailedToResolveNameError';\n}\n\nexport function isFailedToResolvePathError(error: any): error is FailedToResolvePathError {\n return (\n !!error &&\n 'candidates' in error &&\n error.constructor.name === 'FailedToResolvePathError' &&\n !error.message.includes('Importing native-only module')\n );\n}\n"],"names":["isFailedToResolveNameError","isFailedToResolvePathError","error","constructor","name","message","includes"],"mappings":"AAAA,uFAAuF;;;;;;;;;;;;IAiCvEA,0BAA0B;eAA1BA;;IAIAC,0BAA0B;eAA1BA;;;AAJT,SAASD,2BAA2BE,KAAU;IACnD,OAAO,CAAC,CAACA,SAAS,gBAAgBA,SAASA,MAAMC,WAAW,CAACC,IAAI,KAAK;AACxE;AAEO,SAASH,2BAA2BC,KAAU;IACnD,OACE,CAAC,CAACA,SACF,gBAAgBA,SAChBA,MAAMC,WAAW,CAACC,IAAI,KAAK,8BAC3B,CAACF,MAAMG,OAAO,CAACC,QAAQ,CAAC;AAE5B"}
1
+ {"version":3,"sources":["../../../../../src/start/server/metro/metroErrors.ts"],"sourcesContent":["// Used to cast a type to metro errors without depending on specific versions of metro.\n\nexport type FileAndDirCandidates = {\n dir: FileCandidates;\n file: FileCandidates;\n};\n\n/**\n * This is a way to describe what files we tried to look for when resolving\n * a module name as file. This is mainly used for error reporting, so that\n * we can explain why we cannot resolve a module.\n */\nexport type FileCandidates =\n // We only tried to resolve a specific asset.\n | { type: 'asset'; name: string }\n // We attempted to resolve a name as being a source file (ex. JavaScript,\n // JSON...), in which case there can be several extensions we tried, for\n // example `/js/foo.ios.js`, `/js/foo.js`, etc. for a single prefix '/js/foo'.\n | {\n type: 'sourceFile';\n filePathPrefix: string;\n candidateExts: readonly string[];\n };\n\ntype FailedToResolveNameError = Error & {\n dirPaths: string[];\n extraPaths: string[];\n};\n\ntype FailedToResolvePathError = Error & {\n candidates: FileAndDirCandidates;\n};\n\nexport function isFailedToResolveNameError(error: any): error is FailedToResolveNameError {\n return !!error && 'extraPaths' in error && error.constructor.name === 'FailedToResolveNameError';\n}\n\nexport function isFailedToResolvePathError(error: any): error is FailedToResolvePathError {\n return (\n !!error &&\n 'candidates' in error &&\n error.constructor.name === 'FailedToResolvePathError' &&\n !error.message.includes('Importing native-only module')\n );\n}\n"],"names":["isFailedToResolveNameError","isFailedToResolvePathError","error","constructor","name","message","includes"],"mappings":"AAAA,uFAAuF;AAEvF;;;;;;;;;;;IA+BgBA,0BAA0B,MAA1BA,0BAA0B;IAI1BC,0BAA0B,MAA1BA,0BAA0B;;AAJnC,SAASD,0BAA0B,CAACE,KAAU,EAAqC;IACxF,OAAO,CAAC,CAACA,KAAK,IAAI,YAAY,IAAIA,KAAK,IAAIA,KAAK,CAACC,WAAW,CAACC,IAAI,KAAK,0BAA0B,CAAC;AACnG,CAAC;AAEM,SAASH,0BAA0B,CAACC,KAAU,EAAqC;IACxF,OACE,CAAC,CAACA,KAAK,IACP,YAAY,IAAIA,KAAK,IACrBA,KAAK,CAACC,WAAW,CAACC,IAAI,KAAK,0BAA0B,IACrD,CAACF,KAAK,CAACG,OAAO,CAACC,QAAQ,CAAC,8BAA8B,CAAC,CACvD;AACJ,CAAC"}
@@ -4,25 +4,23 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "assertMetroPrivateServer", {
6
6
  enumerable: true,
7
- get: function() {
8
- return assertMetroPrivateServer;
9
- }
7
+ get: ()=>assertMetroPrivateServer
10
8
  });
11
- function _nodeassert() {
12
- const data = /*#__PURE__*/ _interop_require_default(require("node:assert"));
13
- _nodeassert = function() {
9
+ function _nodeAssert() {
10
+ const data = /*#__PURE__*/ _interopRequireDefault(require("node:assert"));
11
+ _nodeAssert = function() {
14
12
  return data;
15
13
  };
16
14
  return data;
17
15
  }
18
- function _interop_require_default(obj) {
16
+ function _interopRequireDefault(obj) {
19
17
  return obj && obj.__esModule ? obj : {
20
18
  default: obj
21
19
  };
22
20
  }
23
21
  function assertMetroPrivateServer(metro) {
24
- (0, _nodeassert().default)(metro, 'Metro server undefined.');
25
- (0, _nodeassert().default)('_config' in metro && '_bundler' in metro, 'Metro server is missing expected properties (_config, _bundler). This could be due to a version mismatch or change in the Metro API.');
22
+ (0, _nodeAssert().default)(metro, "Metro server undefined.");
23
+ (0, _nodeAssert().default)("_config" in metro && "_bundler" in metro, "Metro server is missing expected properties (_config, _bundler). This could be due to a version mismatch or change in the Metro API.");
26
24
  }
27
25
 
28
26
  //# sourceMappingURL=metroPrivateServer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/start/server/metro/metroPrivateServer.ts"],"sourcesContent":["import { TransformInputOptions } from 'metro';\nimport type Metro from 'metro';\nimport { ConfigT } from 'metro-config';\nimport assert from 'node:assert';\n\nexport type MetroPrivateServer = import('metro').Server & {\n _bundler: import('metro/src/IncrementalBundler').default;\n _config: ConfigT;\n _createModuleId: (path: string, context?: { environment?: string; platform: string }) => number;\n _isEnded: boolean;\n _nextBundleBuildNumber: number;\n _platforms: Set<string>;\n _reporter: import('metro/src/lib/reporting').Reporter;\n _serverOptions: import('metro').ServerOptions | void;\n\n getNewBuildNumber(): number;\n _getSortedModules(\n graph: import('metro/src/IncrementalBundler').OutputGraph\n ): import('metro/src/DeltaBundler/types').Module[];\n\n _resolveRelativePath(\n filePath: string,\n {\n relativeTo,\n resolverOptions,\n transformOptions,\n }: {\n relativeTo: 'project' | 'server';\n resolverOptions: import('metro/src/shared/types').ResolverInputOptions;\n transformOptions: TransformInputOptions;\n }\n ): Promise<string>;\n\n _shouldAddModuleToIgnoreList(module: import('metro/src/DeltaBundler/types').Module<any>): boolean;\n};\n\nexport function assertMetroPrivateServer(metro: Metro.Server): asserts metro is MetroPrivateServer {\n assert(metro, 'Metro server undefined.');\n assert(\n '_config' in metro && '_bundler' in metro,\n 'Metro server is missing expected properties (_config, _bundler). This could be due to a version mismatch or change in the Metro API.'\n );\n}\n"],"names":["assertMetroPrivateServer","metro","assert"],"mappings":";;;;+BAoCgBA;;;eAAAA;;;;gEAjCG;;;;;;;;;;;AAiCZ,SAASA,yBAAyBC,KAAmB;IAC1DC,IAAAA,qBAAM,EAACD,OAAO;IACdC,IAAAA,qBAAM,EACJ,aAAaD,SAAS,cAAcA,OACpC;AAEJ"}
1
+ {"version":3,"sources":["../../../../../src/start/server/metro/metroPrivateServer.ts"],"sourcesContent":["import { TransformInputOptions } from 'metro';\nimport type Metro from 'metro';\nimport { ConfigT } from 'metro-config';\nimport assert from 'node:assert';\n\nexport type MetroPrivateServer = import('metro').Server & {\n _bundler: import('metro/src/IncrementalBundler').default;\n _config: ConfigT;\n _createModuleId: (path: string, context?: { environment?: string; platform: string }) => number;\n _isEnded: boolean;\n _nextBundleBuildNumber: number;\n _platforms: Set<string>;\n _reporter: import('metro/src/lib/reporting').Reporter;\n _serverOptions: import('metro').ServerOptions | void;\n\n getNewBuildNumber(): number;\n _getSortedModules(\n graph: import('metro/src/IncrementalBundler').OutputGraph\n ): import('metro/src/DeltaBundler/types').Module[];\n\n _resolveRelativePath(\n filePath: string,\n {\n relativeTo,\n resolverOptions,\n transformOptions,\n }: {\n relativeTo: 'project' | 'server';\n resolverOptions: import('metro/src/shared/types').ResolverInputOptions;\n transformOptions: TransformInputOptions;\n }\n ): Promise<string>;\n\n _shouldAddModuleToIgnoreList(module: import('metro/src/DeltaBundler/types').Module<any>): boolean;\n};\n\nexport function assertMetroPrivateServer(metro: Metro.Server): asserts metro is MetroPrivateServer {\n assert(metro, 'Metro server undefined.');\n assert(\n '_config' in metro && '_bundler' in metro,\n 'Metro server is missing expected properties (_config, _bundler). This could be due to a version mismatch or change in the Metro API.'\n );\n}\n"],"names":["assertMetroPrivateServer","metro","assert"],"mappings":"AAAA;;;;+BAoCgBA,0BAAwB;;aAAxBA,wBAAwB;;;8DAjCrB,aAAa;;;;;;;;;;;AAiCzB,SAASA,wBAAwB,CAACC,KAAmB,EAAuC;IACjGC,IAAAA,WAAM,EAAA,QAAA,EAACD,KAAK,EAAE,yBAAyB,CAAC,CAAC;IACzCC,IAAAA,WAAM,EAAA,QAAA,EACJ,SAAS,IAAID,KAAK,IAAI,UAAU,IAAIA,KAAK,EACzC,sIAAsI,CACvI,CAAC;AACJ,CAAC"}
@@ -9,19 +9,17 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  Object.defineProperty(exports, "getMetroBundlerWithVirtualModules", {
11
11
  enumerable: true,
12
- get: function() {
13
- return getMetroBundlerWithVirtualModules;
14
- }
12
+ get: ()=>getMetroBundlerWithVirtualModules
15
13
  });
16
14
  function assertBundlerHasPrivateMembers(bundler) {
17
- if (!('_depGraph' in bundler)) {
18
- throw new Error('Expected bundler to have member: _depGraph. Upstream metro may have removed this property.');
15
+ if (!("_depGraph" in bundler)) {
16
+ throw new Error("Expected bundler to have member: _depGraph. Upstream metro may have removed this property.");
19
17
  }
20
18
  assertDepGraphHasPrivateMembers(bundler._depGraph);
21
19
  }
22
20
  function assertDepGraphHasPrivateMembers(depGraph) {
23
- if (!depGraph || typeof depGraph !== 'object' || !('_fileSystem' in depGraph)) {
24
- throw new Error('Expected bundler._depGraph to have member: _fileSystem. Upstream metro may have removed this property.');
21
+ if (!depGraph || typeof depGraph !== "object" || !("_fileSystem" in depGraph)) {
22
+ throw new Error("Expected bundler._depGraph to have member: _fileSystem. Upstream metro may have removed this property.");
25
23
  }
26
24
  }
27
25
  function ensureMetroBundlerPatchedWithSetVirtualModule(bundler) {
@@ -42,7 +40,7 @@ function ensureMetroBundlerPatchedWithSetVirtualModule(bundler) {
42
40
  function ensureStartsWithNullByte(id) {
43
41
  // Because you'll likely need to return the path somewhere, we should just assert with a useful error message instead of
44
42
  // attempting to mutate the value behind the scenes. This ensures correctness in the resolution.
45
- if (!id.startsWith('\0')) {
43
+ if (!id.startsWith("\0")) {
46
44
  throw new Error(`Virtual modules in Expo CLI must start with with null byte (\\0), got: ${id}`);
47
45
  }
48
46
  return id;
@@ -53,7 +51,7 @@ function getMetroBundlerWithVirtualModules(bundler) {
53
51
  bundler.transformFile = async function(filePath, transformOptions, /** Optionally provide the file contents, this can be used to provide virtual contents for a file. */ fileBuffer) {
54
52
  // file buffer will be defined for virtual modules in Metro, e.g. context modules.
55
53
  if (!fileBuffer) {
56
- if (filePath.startsWith('\0')) {
54
+ if (filePath.startsWith("\0")) {
57
55
  const graph = await this.getDependencyGraph();
58
56
  assertDepGraphHasPrivateMembers(graph);
59
57
  if (graph._fileSystem.expoVirtualModules) {
@@ -75,7 +73,7 @@ function ensureFileSystemPatched(fs) {
75
73
  const original_getSha1 = fs.getSha1.bind(fs);
76
74
  fs.getSha1 = (filename)=>{
77
75
  // Rollup virtual module format.
78
- if (filename.startsWith('\0')) {
76
+ if (filename.startsWith("\0")) {
79
77
  return filename;
80
78
  }
81
79
  return original_getSha1(filename);