@expo/cli 1.0.0-canary-20250320-7a205d3 → 1.0.0-canary-20250402-161f57b

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 (719) hide show
  1. package/build/bin/cli +93 -91
  2. package/build/bin/cli.map +1 -1
  3. package/build/metro-require/require.js +53 -52
  4. package/build/src/api/endpoint.js +6 -2
  5. package/build/src/api/endpoint.js.map +1 -1
  6. package/build/src/api/getExpoGoIntermediateCertificate.js +5 -3
  7. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
  8. package/build/src/api/getExpoSchema.js +16 -12
  9. package/build/src/api/getExpoSchema.js.map +1 -1
  10. package/build/src/api/getNativeModuleVersions.js +6 -4
  11. package/build/src/api/getNativeModuleVersions.js.map +1 -1
  12. package/build/src/api/getProjectDevelopmentCertificate.js +5 -3
  13. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
  14. package/build/src/api/getVersions.js +7 -5
  15. package/build/src/api/getVersions.js.map +1 -1
  16. package/build/src/api/graphql/client.js +32 -26
  17. package/build/src/api/graphql/client.js.map +1 -1
  18. package/build/src/api/graphql/queries/AppQuery.js +6 -4
  19. package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
  20. package/build/src/api/graphql/queries/UserQuery.js +5 -3
  21. package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
  22. package/build/src/api/graphql/types/App.js +3 -1
  23. package/build/src/api/graphql/types/App.js.map +1 -1
  24. package/build/src/api/rest/cache/FileSystemResponseCache.js +36 -32
  25. package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
  26. package/build/src/api/rest/cache/ResponseCache.js +20 -12
  27. package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +13 -11
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
  30. package/build/src/api/rest/client.js +55 -37
  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 +5 -3
  34. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
  35. package/build/src/api/rest/wrapFetchWithOffline.js +5 -3
  36. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
  37. package/build/src/api/rest/wrapFetchWithProgress.js +11 -7
  38. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
  39. package/build/src/api/rest/wrapFetchWithProxy.js +5 -3
  40. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
  41. package/build/src/api/rest/wrapFetchWithUserAgent.js +8 -6
  42. package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
  43. package/build/src/api/settings.js +7 -5
  44. package/build/src/api/settings.js.map +1 -1
  45. package/build/src/api/updateDevelopmentSession.js +23 -17
  46. package/build/src/api/updateDevelopmentSession.js.map +1 -1
  47. package/build/src/api/user/UserSettings.js +53 -31
  48. package/build/src/api/user/UserSettings.js.map +1 -1
  49. package/build/src/api/user/actions.js +27 -21
  50. package/build/src/api/user/actions.js.map +1 -1
  51. package/build/src/api/user/expoSsoLauncher.js +30 -26
  52. package/build/src/api/user/expoSsoLauncher.js.map +1 -1
  53. package/build/src/api/user/otp.js +35 -29
  54. package/build/src/api/user/otp.js.map +1 -1
  55. package/build/src/api/user/user.js +44 -30
  56. package/build/src/api/user/user.js.map +1 -1
  57. package/build/src/config/configAsync.js +29 -23
  58. package/build/src/config/configAsync.js.map +1 -1
  59. package/build/src/config/index.js +25 -21
  60. package/build/src/config/index.js.map +1 -1
  61. package/build/src/customize/customizeAsync.js +8 -6
  62. package/build/src/customize/customizeAsync.js.map +1 -1
  63. package/build/src/customize/generate.js +20 -16
  64. package/build/src/customize/generate.js.map +1 -1
  65. package/build/src/customize/index.js +14 -12
  66. package/build/src/customize/index.js.map +1 -1
  67. package/build/src/customize/resolveOptions.js +4 -2
  68. package/build/src/customize/resolveOptions.js.map +1 -1
  69. package/build/src/customize/templates.js +58 -54
  70. package/build/src/customize/templates.js.map +1 -1
  71. package/build/src/customize/typescript.js +11 -7
  72. package/build/src/customize/typescript.js.map +1 -1
  73. package/build/src/export/createMetadataJson.js +11 -9
  74. package/build/src/export/createMetadataJson.js.map +1 -1
  75. package/build/src/export/embed/exportEager.js +8 -6
  76. package/build/src/export/embed/exportEager.js.map +1 -1
  77. package/build/src/export/embed/exportEmbedAsync.js +72 -62
  78. package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
  79. package/build/src/export/embed/exportServer.js +57 -55
  80. package/build/src/export/embed/exportServer.js.map +1 -1
  81. package/build/src/export/embed/index.js +44 -40
  82. package/build/src/export/embed/index.js.map +1 -1
  83. package/build/src/export/embed/resolveOptions.js +44 -36
  84. package/build/src/export/embed/resolveOptions.js.map +1 -1
  85. package/build/src/export/embed/xcodeCompilerLogger.js +39 -27
  86. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
  87. package/build/src/export/exportApp.js +68 -64
  88. package/build/src/export/exportApp.js.map +1 -1
  89. package/build/src/export/exportAssets.js +34 -26
  90. package/build/src/export/exportAssets.js.map +1 -1
  91. package/build/src/export/exportAsync.js +13 -9
  92. package/build/src/export/exportAsync.js.map +1 -1
  93. package/build/src/export/exportDomComponents.js +53 -45
  94. package/build/src/export/exportDomComponents.js.map +1 -1
  95. package/build/src/export/exportHermes.js +75 -53
  96. package/build/src/export/exportHermes.js.map +1 -1
  97. package/build/src/export/exportStaticAsync.js +73 -62
  98. package/build/src/export/exportStaticAsync.js.map +1 -1
  99. package/build/src/export/favicon.js +33 -27
  100. package/build/src/export/favicon.js.map +1 -1
  101. package/build/src/export/getPublicExpoManifest.js +7 -5
  102. package/build/src/export/getPublicExpoManifest.js.map +1 -1
  103. package/build/src/export/getResolvedLocales.js +11 -9
  104. package/build/src/export/getResolvedLocales.js.map +1 -1
  105. package/build/src/export/html.js +10 -6
  106. package/build/src/export/html.js.map +1 -1
  107. package/build/src/export/index.js +32 -28
  108. package/build/src/export/index.js.map +1 -1
  109. package/build/src/export/metroAssetLocalPath.js +36 -30
  110. package/build/src/export/metroAssetLocalPath.js.map +1 -1
  111. package/build/src/export/persistMetroAssets.js +64 -34
  112. package/build/src/export/persistMetroAssets.js.map +1 -1
  113. package/build/src/export/publicFolder.js +10 -6
  114. package/build/src/export/publicFolder.js.map +1 -1
  115. package/build/src/export/resolveOptions.js +28 -24
  116. package/build/src/export/resolveOptions.js.map +1 -1
  117. package/build/src/export/saveAssets.js +50 -46
  118. package/build/src/export/saveAssets.js.map +1 -1
  119. package/build/src/export/web/exportWebAsync.js +13 -11
  120. package/build/src/export/web/exportWebAsync.js.map +1 -1
  121. package/build/src/export/web/index.js +19 -15
  122. package/build/src/export/web/index.js.map +1 -1
  123. package/build/src/export/web/resolveOptions.js +5 -3
  124. package/build/src/export/web/resolveOptions.js.map +1 -1
  125. package/build/src/export/writeContents.js +4 -2
  126. package/build/src/export/writeContents.js.map +1 -1
  127. package/build/src/graphql/generated.js +705 -479
  128. package/build/src/graphql/generated.js.map +1 -1
  129. package/build/src/install/applyPlugins.js +11 -7
  130. package/build/src/install/applyPlugins.js.map +1 -1
  131. package/build/src/install/checkPackages.js +26 -22
  132. package/build/src/install/checkPackages.js.map +1 -1
  133. package/build/src/install/fixPackages.js +16 -12
  134. package/build/src/install/fixPackages.js.map +1 -1
  135. package/build/src/install/index.js +18 -16
  136. package/build/src/install/index.js.map +1 -1
  137. package/build/src/install/installAsync.js +32 -26
  138. package/build/src/install/installAsync.js.map +1 -1
  139. package/build/src/install/installExpoPackage.js +22 -18
  140. package/build/src/install/installExpoPackage.js.map +1 -1
  141. package/build/src/install/resolveOptions.js +21 -19
  142. package/build/src/install/resolveOptions.js.map +1 -1
  143. package/build/src/install/utils/autoAddConfigPlugins.js +18 -14
  144. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
  145. package/build/src/install/utils/checkPackagesCompatibility.js +14 -12
  146. package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
  147. package/build/src/lint/ESlintPrerequisite.js +50 -44
  148. package/build/src/lint/ESlintPrerequisite.js.map +1 -1
  149. package/build/src/lint/index.js +12 -8
  150. package/build/src/lint/index.js.map +1 -1
  151. package/build/src/lint/lintAsync.js +10 -8
  152. package/build/src/lint/lintAsync.js.map +1 -1
  153. package/build/src/log.js +36 -16
  154. package/build/src/log.js.map +1 -1
  155. package/build/src/login/index.js +24 -20
  156. package/build/src/login/index.js.map +1 -1
  157. package/build/src/logout/index.js +11 -7
  158. package/build/src/logout/index.js.map +1 -1
  159. package/build/src/prebuild/clearNativeFolder.js +38 -26
  160. package/build/src/prebuild/clearNativeFolder.js.map +1 -1
  161. package/build/src/prebuild/configureProjectAsync.js +18 -14
  162. package/build/src/prebuild/configureProjectAsync.js.map +1 -1
  163. package/build/src/prebuild/copyTemplateFiles.js +17 -13
  164. package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
  165. package/build/src/prebuild/ensureConfigAsync.js +6 -4
  166. package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
  167. package/build/src/prebuild/index.js +36 -32
  168. package/build/src/prebuild/index.js.map +1 -1
  169. package/build/src/prebuild/prebuildAsync.js +29 -25
  170. package/build/src/prebuild/prebuildAsync.js.map +1 -1
  171. package/build/src/prebuild/renameTemplateAppName.js +43 -37
  172. package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
  173. package/build/src/prebuild/resolveOptions.js +70 -53
  174. package/build/src/prebuild/resolveOptions.js.map +1 -1
  175. package/build/src/prebuild/resolveTemplate.js +36 -32
  176. package/build/src/prebuild/resolveTemplate.js.map +1 -1
  177. package/build/src/prebuild/updateFromTemplate.js +19 -13
  178. package/build/src/prebuild/updateFromTemplate.js.map +1 -1
  179. package/build/src/prebuild/updatePackageJson.js +53 -39
  180. package/build/src/prebuild/updatePackageJson.js.map +1 -1
  181. package/build/src/prebuild/validateTemplatePlatforms.js +12 -8
  182. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
  183. package/build/src/register/index.js +11 -7
  184. package/build/src/register/index.js.map +1 -1
  185. package/build/src/register/registerAsync.js +5 -3
  186. package/build/src/register/registerAsync.js.map +1 -1
  187. package/build/src/run/android/index.js +36 -32
  188. package/build/src/run/android/index.js.map +1 -1
  189. package/build/src/run/android/resolveDevice.js +10 -8
  190. package/build/src/run/android/resolveDevice.js.map +1 -1
  191. package/build/src/run/android/resolveGradlePropsAsync.js +18 -16
  192. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
  193. package/build/src/run/android/resolveInstallApkName.js +17 -15
  194. package/build/src/run/android/resolveInstallApkName.js.map +1 -1
  195. package/build/src/run/android/resolveLaunchProps.js +12 -10
  196. package/build/src/run/android/resolveLaunchProps.js.map +1 -1
  197. package/build/src/run/android/resolveOptions.js +4 -2
  198. package/build/src/run/android/resolveOptions.js.map +1 -1
  199. package/build/src/run/android/runAndroidAsync.js +23 -21
  200. package/build/src/run/android/runAndroidAsync.js.map +1 -1
  201. package/build/src/run/ensureNativeProject.js +7 -5
  202. package/build/src/run/ensureNativeProject.js.map +1 -1
  203. package/build/src/run/hints.js +13 -7
  204. package/build/src/run/hints.js.map +1 -1
  205. package/build/src/run/index.js +27 -23
  206. package/build/src/run/index.js.map +1 -1
  207. package/build/src/run/ios/XcodeBuild.js +80 -60
  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 +69 -63
  211. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
  212. package/build/src/run/ios/appleDevice/ClientManager.js +29 -26
  213. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
  214. package/build/src/run/ios/appleDevice/client/AFCClient.js +28 -25
  215. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
  216. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +29 -26
  217. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
  218. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +22 -21
  219. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
  220. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +32 -29
  221. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
  222. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +28 -24
  223. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
  224. package/build/src/run/ios/appleDevice/client/ServiceClient.js +7 -4
  225. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
  226. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +28 -27
  227. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
  228. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +23 -17
  229. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
  230. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +146 -132
  231. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
  232. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +29 -21
  233. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
  234. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +29 -21
  235. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
  236. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +34 -22
  237. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
  238. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +27 -17
  239. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
  240. package/build/src/run/ios/codeSigning/Security.js +53 -39
  241. package/build/src/run/ios/codeSigning/Security.js.map +1 -1
  242. package/build/src/run/ios/codeSigning/configureCodeSigning.js +13 -9
  243. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
  244. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +27 -19
  245. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
  246. package/build/src/run/ios/codeSigning/settings.js +9 -5
  247. package/build/src/run/ios/codeSigning/settings.js.map +1 -1
  248. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +14 -12
  249. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
  250. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +27 -21
  251. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
  252. package/build/src/run/ios/index.js +40 -36
  253. package/build/src/run/ios/index.js.map +1 -1
  254. package/build/src/run/ios/launchApp.js +23 -17
  255. package/build/src/run/ios/launchApp.js.map +1 -1
  256. package/build/src/run/ios/options/appleDestinations.js +38 -36
  257. package/build/src/run/ios/options/appleDestinations.js.map +1 -1
  258. package/build/src/run/ios/options/promptDevice.js +20 -16
  259. package/build/src/run/ios/options/promptDevice.js.map +1 -1
  260. package/build/src/run/ios/options/resolveDevice.js +30 -24
  261. package/build/src/run/ios/options/resolveDevice.js.map +1 -1
  262. package/build/src/run/ios/options/resolveNativeScheme.js +31 -23
  263. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
  264. package/build/src/run/ios/options/resolveOptions.js +7 -5
  265. package/build/src/run/ios/options/resolveOptions.js.map +1 -1
  266. package/build/src/run/ios/options/resolveXcodeProject.js +7 -5
  267. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
  268. package/build/src/run/ios/runIosAsync.js +48 -44
  269. package/build/src/run/ios/runIosAsync.js.map +1 -1
  270. package/build/src/run/ios/validateExternalBinary.js +24 -22
  271. package/build/src/run/ios/validateExternalBinary.js.map +1 -1
  272. package/build/src/run/resolveBundlerProps.js +4 -2
  273. package/build/src/run/resolveBundlerProps.js.map +1 -1
  274. package/build/src/run/startBundler.js +16 -12
  275. package/build/src/run/startBundler.js.map +1 -1
  276. package/build/src/serve/index.js +20 -16
  277. package/build/src/serve/index.js.map +1 -1
  278. package/build/src/serve/serveAsync.js +36 -32
  279. package/build/src/serve/serveAsync.js.map +1 -1
  280. package/build/src/start/detectDevClient.js +13 -9
  281. package/build/src/start/detectDevClient.js.map +1 -1
  282. package/build/src/start/doctor/Prerequisite.js +12 -7
  283. package/build/src/start/doctor/Prerequisite.js.map +1 -1
  284. package/build/src/start/doctor/SecurityBinPrerequisite.js +13 -11
  285. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
  286. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +23 -19
  287. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
  288. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +23 -19
  289. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
  290. package/build/src/start/doctor/apple/XcodePrerequisite.js +51 -45
  291. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
  292. package/build/src/start/doctor/apple/XcrunPrerequisite.js +18 -16
  293. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
  294. package/build/src/start/doctor/dependencies/bundledNativeModules.js +23 -19
  295. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
  296. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +31 -25
  297. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
  298. package/build/src/start/doctor/dependencies/getMissingPackages.js +25 -17
  299. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
  300. package/build/src/start/doctor/dependencies/getVersionedPackages.js +40 -32
  301. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
  302. package/build/src/start/doctor/dependencies/resolvePackages.js +32 -26
  303. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
  304. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +41 -31
  305. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
  306. package/build/src/start/doctor/ngrok/ExternalModule.js +34 -29
  307. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
  308. package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -8
  309. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
  310. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +32 -28
  311. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
  312. package/build/src/start/doctor/typescript/updateTSConfig.js +23 -17
  313. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
  314. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +33 -27
  315. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
  316. package/build/src/start/index.js +46 -42
  317. package/build/src/start/index.js.map +1 -1
  318. package/build/src/start/interface/KeyPressHandler.js +18 -14
  319. package/build/src/start/interface/KeyPressHandler.js.map +1 -1
  320. package/build/src/start/interface/commandsTable.js +94 -80
  321. package/build/src/start/interface/commandsTable.js.map +1 -1
  322. package/build/src/start/interface/interactiveActions.js +44 -40
  323. package/build/src/start/interface/interactiveActions.js.map +1 -1
  324. package/build/src/start/interface/startInterface.js +65 -61
  325. package/build/src/start/interface/startInterface.js.map +1 -1
  326. package/build/src/start/platforms/AppIdResolver.js +6 -4
  327. package/build/src/start/platforms/AppIdResolver.js.map +1 -1
  328. package/build/src/start/platforms/DeviceManager.js +10 -6
  329. package/build/src/start/platforms/DeviceManager.js.map +1 -1
  330. package/build/src/start/platforms/ExpoGoInstaller.js +25 -20
  331. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
  332. package/build/src/start/platforms/PlatformManager.js +17 -15
  333. package/build/src/start/platforms/PlatformManager.js.map +1 -1
  334. package/build/src/start/platforms/android/ADBServer.js +39 -35
  335. package/build/src/start/platforms/android/ADBServer.js.map +1 -1
  336. package/build/src/start/platforms/android/AndroidAppIdResolver.js +18 -16
  337. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
  338. package/build/src/start/platforms/android/AndroidDeviceManager.js +24 -20
  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 +11 -9
  343. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
  344. package/build/src/start/platforms/android/activateWindow.js +26 -22
  345. package/build/src/start/platforms/android/activateWindow.js.map +1 -1
  346. package/build/src/start/platforms/android/adb.js +121 -83
  347. package/build/src/start/platforms/android/adb.js.map +1 -1
  348. package/build/src/start/platforms/android/adbReverse.js +20 -12
  349. package/build/src/start/platforms/android/adbReverse.js.map +1 -1
  350. package/build/src/start/platforms/android/emulator.js +36 -26
  351. package/build/src/start/platforms/android/emulator.js.map +1 -1
  352. package/build/src/start/platforms/android/getDevices.js +7 -5
  353. package/build/src/start/platforms/android/getDevices.js.map +1 -1
  354. package/build/src/start/platforms/android/gradle.js +36 -28
  355. package/build/src/start/platforms/android/gradle.js.map +1 -1
  356. package/build/src/start/platforms/android/promptAndroidDevice.js +19 -15
  357. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
  358. package/build/src/start/platforms/ios/AppleAppIdResolver.js +21 -19
  359. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
  360. package/build/src/start/platforms/ios/AppleDeviceManager.js +37 -31
  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 +9 -7
  365. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
  366. package/build/src/start/platforms/ios/devicectl.js +88 -74
  367. package/build/src/start/platforms/ios/devicectl.js.map +1 -1
  368. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +22 -18
  369. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
  370. package/build/src/start/platforms/ios/getBestSimulator.js +29 -19
  371. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
  372. package/build/src/start/platforms/ios/promptAppleDevice.js +14 -10
  373. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
  374. package/build/src/start/platforms/ios/simctl.js +102 -74
  375. package/build/src/start/platforms/ios/simctl.js.map +1 -1
  376. package/build/src/start/platforms/ios/simctlLogging.js +57 -52
  377. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
  378. package/build/src/start/platforms/ios/xcrun.js +22 -18
  379. package/build/src/start/platforms/ios/xcrun.js.map +1 -1
  380. package/build/src/start/project/devices.js +19 -9
  381. package/build/src/start/project/devices.js.map +1 -1
  382. package/build/src/start/project/dotExpo.js +15 -11
  383. package/build/src/start/project/dotExpo.js.map +1 -1
  384. package/build/src/start/project/settings.js +4 -2
  385. package/build/src/start/project/settings.js.map +1 -1
  386. package/build/src/start/resolveOptions.js +48 -40
  387. package/build/src/start/resolveOptions.js.map +1 -1
  388. package/build/src/start/server/AsyncNgrok.js +55 -51
  389. package/build/src/start/server/AsyncNgrok.js.map +1 -1
  390. package/build/src/start/server/AsyncWsTunnel.js +37 -33
  391. package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
  392. package/build/src/start/server/BundlerDevServer.js +81 -79
  393. package/build/src/start/server/BundlerDevServer.js.map +1 -1
  394. package/build/src/start/server/DevServerManager.js +42 -38
  395. package/build/src/start/server/DevServerManager.js.map +1 -1
  396. package/build/src/start/server/DevToolsPluginManager.js +18 -14
  397. package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
  398. package/build/src/start/server/DevelopmentSession.js +18 -14
  399. package/build/src/start/server/DevelopmentSession.js.map +1 -1
  400. package/build/src/start/server/ReactDevToolsProxy.js +16 -10
  401. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
  402. package/build/src/start/server/UrlCreator.js +36 -33
  403. package/build/src/start/server/UrlCreator.js.map +1 -1
  404. package/build/src/start/server/getStaticRenderFunctions.js +30 -22
  405. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
  406. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +9 -5
  407. package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
  408. package/build/src/start/server/metro/MetroBundlerDevServer.js +293 -280
  409. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
  410. package/build/src/start/server/metro/MetroTerminalReporter.js +63 -56
  411. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
  412. package/build/src/start/server/metro/TerminalReporter.js +39 -33
  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/createExpoFallbackResolver.js +13 -11
  416. package/build/src/start/server/metro/createExpoFallbackResolver.js.map +1 -1
  417. package/build/src/start/server/metro/createExpoMetroResolver.js +47 -41
  418. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
  419. package/build/src/start/server/metro/createJResolver.js +31 -27
  420. package/build/src/start/server/metro/createJResolver.js.map +1 -1
  421. package/build/src/start/server/metro/createServerComponentsMiddleware.js +110 -98
  422. package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
  423. package/build/src/start/server/metro/createServerRouteMiddleware.js +34 -30
  424. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
  425. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +13 -11
  426. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
  427. package/build/src/start/server/metro/debugging/MessageHandler.js +3 -1
  428. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
  429. package/build/src/start/server/metro/debugging/attachAtlas.js +26 -22
  430. package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
  431. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +19 -17
  432. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
  433. package/build/src/start/server/metro/debugging/createHandlersFactory.js +25 -31
  434. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
  435. package/build/src/start/server/metro/debugging/getDebuggerType.js +6 -4
  436. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
  437. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +14 -8
  438. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
  439. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +7 -5
  440. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
  441. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +8 -6
  442. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
  443. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +7 -5
  444. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
  445. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +14 -12
  446. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
  447. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +14 -10
  448. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
  449. package/build/src/start/server/metro/debugging/pageIsSupported.js +6 -4
  450. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
  451. package/build/src/start/server/metro/debugging/types.js.map +1 -1
  452. package/build/src/start/server/metro/dev-server/createEventSocket.js +18 -16
  453. package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
  454. package/build/src/start/server/metro/dev-server/createMessageSocket.js +23 -21
  455. package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
  456. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +23 -21
  457. package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
  458. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +4 -2
  459. package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -1
  460. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +4 -2
  461. package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -1
  462. package/build/src/start/server/metro/dev-server/utils/socketMessages.js +8 -4
  463. package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
  464. package/build/src/start/server/metro/externals.js +33 -25
  465. package/build/src/start/server/metro/externals.js.map +1 -1
  466. package/build/src/start/server/metro/fetchRouterManifest.js +28 -12
  467. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
  468. package/build/src/start/server/metro/formatFileCandidates.js +11 -9
  469. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
  470. package/build/src/start/server/metro/getCssModulesFromBundler.js +24 -20
  471. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
  472. package/build/src/start/server/metro/instantiateMetro.js +87 -81
  473. package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
  474. package/build/src/start/server/metro/log-box/LogBoxLog.js +40 -36
  475. package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
  476. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +20 -14
  477. package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
  478. package/build/src/start/server/metro/log-box/formatProjectFilePath.js +10 -6
  479. package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
  480. package/build/src/start/server/metro/metroErrorInterface.js +88 -78
  481. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
  482. package/build/src/start/server/metro/metroErrors.js +8 -4
  483. package/build/src/start/server/metro/metroErrors.js.map +1 -1
  484. package/build/src/start/server/metro/metroPrivateServer.js +9 -7
  485. package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
  486. package/build/src/start/server/metro/metroVirtualModules.js +10 -8
  487. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
  488. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +24 -22
  489. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
  490. package/build/src/start/server/metro/router.js +48 -32
  491. package/build/src/start/server/metro/router.js.map +1 -1
  492. package/build/src/start/server/metro/runServer-fork.js +24 -22
  493. package/build/src/start/server/metro/runServer-fork.js.map +1 -1
  494. package/build/src/start/server/metro/serializeHtml.js +24 -22
  495. package/build/src/start/server/metro/serializeHtml.js.map +1 -1
  496. package/build/src/start/server/metro/symbolicate.js.map +1 -1
  497. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +35 -29
  498. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
  499. package/build/src/start/server/metro/withMetroMultiPlatform.js +150 -140
  500. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
  501. package/build/src/start/server/metro/withMetroResolvers.js +49 -39
  502. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
  503. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +8 -6
  504. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
  505. package/build/src/start/server/middleware/CorsMiddleware.js +17 -15
  506. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
  507. package/build/src/start/server/middleware/CreateFileMiddleware.js +32 -31
  508. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
  509. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +22 -19
  510. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
  511. package/build/src/start/server/middleware/DomComponentsMiddleware.js +33 -27
  512. package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
  513. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +61 -57
  514. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
  515. package/build/src/start/server/middleware/ExpoMiddleware.js +15 -9
  516. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
  517. package/build/src/start/server/middleware/FaviconMiddleware.js +16 -15
  518. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
  519. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +4 -2
  520. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
  521. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +34 -31
  522. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
  523. package/build/src/start/server/middleware/ManifestMiddleware.js +64 -56
  524. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
  525. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +23 -19
  526. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
  527. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +20 -19
  528. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
  529. package/build/src/start/server/middleware/ServeStaticMiddleware.js +11 -9
  530. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
  531. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +17 -11
  532. package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
  533. package/build/src/start/server/middleware/inspector/CdpClient.js +12 -10
  534. package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
  535. package/build/src/start/server/middleware/inspector/JsInspector.js +35 -27
  536. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
  537. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +21 -19
  538. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
  539. package/build/src/start/server/middleware/inspector/middlwareMutations.js +6 -2
  540. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
  541. package/build/src/start/server/middleware/metroOptions.js +120 -96
  542. package/build/src/start/server/middleware/metroOptions.js.map +1 -1
  543. package/build/src/start/server/middleware/mutations.js +7 -3
  544. package/build/src/start/server/middleware/mutations.js.map +1 -1
  545. package/build/src/start/server/middleware/resolveAssets.js +26 -18
  546. package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
  547. package/build/src/start/server/middleware/resolvePlatform.js +23 -15
  548. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
  549. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +11 -9
  550. package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
  551. package/build/src/start/server/middleware/server.types.js.map +1 -1
  552. package/build/src/start/server/openPlatforms.js +10 -8
  553. package/build/src/start/server/openPlatforms.js.map +1 -1
  554. package/build/src/start/server/platformBundlers.js +13 -11
  555. package/build/src/start/server/platformBundlers.js.map +1 -1
  556. package/build/src/start/server/serverLogLikeMetro.js +58 -50
  557. package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
  558. package/build/src/start/server/type-generation/expo-env.js +11 -7
  559. package/build/src/start/server/type-generation/expo-env.js.map +1 -1
  560. package/build/src/start/server/type-generation/routes.js +72 -50
  561. package/build/src/start/server/type-generation/routes.js.map +1 -1
  562. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +21 -19
  563. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
  564. package/build/src/start/server/type-generation/tsconfig.js +36 -28
  565. package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
  566. package/build/src/start/server/webTemplate.js +28 -24
  567. package/build/src/start/server/webTemplate.js.map +1 -1
  568. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +52 -46
  569. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
  570. package/build/src/start/server/webpack/compile.js +15 -11
  571. package/build/src/start/server/webpack/compile.js.map +1 -1
  572. package/build/src/start/server/webpack/formatWebpackMessages.js +28 -26
  573. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
  574. package/build/src/start/server/webpack/resolveFromProject.js +18 -12
  575. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
  576. package/build/src/start/server/webpack/tls.js +18 -12
  577. package/build/src/start/server/webpack/tls.js.map +1 -1
  578. package/build/src/start/startAsync.js +31 -27
  579. package/build/src/start/startAsync.js.map +1 -1
  580. package/build/src/utils/FileNotifier.js +20 -17
  581. package/build/src/utils/FileNotifier.js.map +1 -1
  582. package/build/src/utils/ansi.js +7 -5
  583. package/build/src/utils/ansi.js.map +1 -1
  584. package/build/src/utils/args.js +24 -14
  585. package/build/src/utils/args.js.map +1 -1
  586. package/build/src/utils/array.js +18 -6
  587. package/build/src/utils/array.js.map +1 -1
  588. package/build/src/utils/cocoapods.js +54 -46
  589. package/build/src/utils/cocoapods.js.map +1 -1
  590. package/build/src/utils/codesigning.js +79 -69
  591. package/build/src/utils/codesigning.js.map +1 -1
  592. package/build/src/utils/createFileTransform.js +16 -12
  593. package/build/src/utils/createFileTransform.js.map +1 -1
  594. package/build/src/utils/createTempPath.js +12 -8
  595. package/build/src/utils/createTempPath.js.map +1 -1
  596. package/build/src/utils/delay.js +12 -6
  597. package/build/src/utils/delay.js.map +1 -1
  598. package/build/src/utils/dir.js +40 -22
  599. package/build/src/utils/dir.js.map +1 -1
  600. package/build/src/utils/downloadAppAsync.js +10 -8
  601. package/build/src/utils/downloadAppAsync.js.map +1 -1
  602. package/build/src/utils/downloadExpoGoAsync.js +27 -23
  603. package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
  604. package/build/src/utils/editor.js +41 -35
  605. package/build/src/utils/editor.js.map +1 -1
  606. package/build/src/utils/env.js +63 -59
  607. package/build/src/utils/env.js.map +1 -1
  608. package/build/src/utils/errors.js +37 -30
  609. package/build/src/utils/errors.js.map +1 -1
  610. package/build/src/utils/exit.js +35 -31
  611. package/build/src/utils/exit.js.map +1 -1
  612. package/build/src/utils/expoUpdatesCli.js +32 -22
  613. package/build/src/utils/expoUpdatesCli.js.map +1 -1
  614. package/build/src/utils/fetch.js +8 -4
  615. package/build/src/utils/fetch.js.map +1 -1
  616. package/build/src/utils/filePath.js +10 -6
  617. package/build/src/utils/filePath.js.map +1 -1
  618. package/build/src/utils/findUp.js +13 -9
  619. package/build/src/utils/findUp.js.map +1 -1
  620. package/build/src/utils/fn.js +6 -2
  621. package/build/src/utils/fn.js.map +1 -1
  622. package/build/src/utils/getOrPromptApplicationId.js +41 -35
  623. package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
  624. package/build/src/utils/getRunningProcess.js +29 -21
  625. package/build/src/utils/getRunningProcess.js.map +1 -1
  626. package/build/src/utils/git.js +26 -20
  627. package/build/src/utils/git.js.map +1 -1
  628. package/build/src/utils/glob.js +8 -4
  629. package/build/src/utils/glob.js.map +1 -1
  630. package/build/src/utils/interactive.js +3 -1
  631. package/build/src/utils/interactive.js.map +1 -1
  632. package/build/src/utils/ip.js +21 -19
  633. package/build/src/utils/ip.js.map +1 -1
  634. package/build/src/utils/isModuleSymlinked.js +11 -9
  635. package/build/src/utils/isModuleSymlinked.js.map +1 -1
  636. package/build/src/utils/jsonSchemaDeref.js +20 -18
  637. package/build/src/utils/jsonSchemaDeref.js.map +1 -1
  638. package/build/src/utils/link.js +17 -13
  639. package/build/src/utils/link.js.map +1 -1
  640. package/build/src/utils/mergeGitIgnorePaths.js +46 -28
  641. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
  642. package/build/src/utils/modifyConfigAsync.js +16 -10
  643. package/build/src/utils/modifyConfigAsync.js.map +1 -1
  644. package/build/src/utils/modifyConfigPlugins.js +10 -6
  645. package/build/src/utils/modifyConfigPlugins.js.map +1 -1
  646. package/build/src/utils/multipartMixed.js +13 -11
  647. package/build/src/utils/multipartMixed.js.map +1 -1
  648. package/build/src/utils/nodeEnv.js +12 -6
  649. package/build/src/utils/nodeEnv.js.map +1 -1
  650. package/build/src/utils/nodeModules.js +10 -8
  651. package/build/src/utils/nodeModules.js.map +1 -1
  652. package/build/src/utils/npm.js +49 -35
  653. package/build/src/utils/npm.js.map +1 -1
  654. package/build/src/utils/obj.js +11 -5
  655. package/build/src/utils/obj.js.map +1 -1
  656. package/build/src/utils/open.js +10 -8
  657. package/build/src/utils/open.js.map +1 -1
  658. package/build/src/utils/ora.js +13 -7
  659. package/build/src/utils/ora.js.map +1 -1
  660. package/build/src/utils/plist.js +21 -15
  661. package/build/src/utils/plist.js.map +1 -1
  662. package/build/src/utils/port.js +43 -33
  663. package/build/src/utils/port.js.map +1 -1
  664. package/build/src/utils/profile.js +11 -7
  665. package/build/src/utils/profile.js.map +1 -1
  666. package/build/src/utils/progress.js +11 -5
  667. package/build/src/utils/progress.js.map +1 -1
  668. package/build/src/utils/prompts.js +47 -29
  669. package/build/src/utils/prompts.js.map +1 -1
  670. package/build/src/utils/resolveArgs.js +36 -24
  671. package/build/src/utils/resolveArgs.js.map +1 -1
  672. package/build/src/utils/scheme.js +40 -32
  673. package/build/src/utils/scheme.js.map +1 -1
  674. package/build/src/utils/stream.js +5 -3
  675. package/build/src/utils/stream.js.map +1 -1
  676. package/build/src/utils/strings.js +6 -4
  677. package/build/src/utils/strings.js.map +1 -1
  678. package/build/src/utils/tar.js +18 -14
  679. package/build/src/utils/tar.js.map +1 -1
  680. package/build/src/utils/telemetry/Telemetry.js +29 -27
  681. package/build/src/utils/telemetry/Telemetry.js.map +1 -1
  682. package/build/src/utils/telemetry/clients/FetchClient.js +15 -13
  683. package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
  684. package/build/src/utils/telemetry/clients/FetchDetachedClient.js +26 -22
  685. package/build/src/utils/telemetry/clients/FetchDetachedClient.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/events.js +4 -2
  689. package/build/src/utils/telemetry/events.js.map +1 -1
  690. package/build/src/utils/telemetry/index.js +25 -29
  691. package/build/src/utils/telemetry/index.js.map +1 -1
  692. package/build/src/utils/telemetry/types.js.map +1 -1
  693. package/build/src/utils/telemetry/utils/constants.js +8 -4
  694. package/build/src/utils/telemetry/utils/constants.js.map +1 -1
  695. package/build/src/utils/telemetry/utils/context.js +18 -14
  696. package/build/src/utils/telemetry/utils/context.js.map +1 -1
  697. package/build/src/utils/template.js +6 -4
  698. package/build/src/utils/template.js.map +1 -1
  699. package/build/src/utils/terminal.js +4 -2
  700. package/build/src/utils/terminal.js.map +1 -1
  701. package/build/src/utils/tsconfig/evaluateTsConfig.js +21 -17
  702. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
  703. package/build/src/utils/tsconfig/loadTsConfigPaths.js +18 -14
  704. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
  705. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +7 -5
  706. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
  707. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +14 -12
  708. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
  709. package/build/src/utils/url.js +23 -13
  710. package/build/src/utils/url.js.map +1 -1
  711. package/build/src/utils/validateApplicationId.js +108 -86
  712. package/build/src/utils/validateApplicationId.js.map +1 -1
  713. package/build/src/utils/variadic.js +22 -16
  714. package/build/src/utils/variadic.js.map +1 -1
  715. package/build/src/whoami/index.js +11 -7
  716. package/build/src/whoami/index.js.map +1 -1
  717. package/build/src/whoami/whoamiAsync.js +11 -7
  718. package/build/src/whoami/whoamiAsync.js.map +1 -1
  719. package/package.json +17 -16
@@ -9,7 +9,9 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  Object.defineProperty(exports, "exportStandaloneServerAsync", {
11
11
  enumerable: true,
12
- get: ()=>exportStandaloneServerAsync
12
+ get: function() {
13
+ return exportStandaloneServerAsync;
14
+ }
13
15
  });
14
16
  function _config() {
15
17
  const data = require("@expo/config");
@@ -18,36 +20,36 @@ function _config() {
18
20
  };
19
21
  return data;
20
22
  }
21
- function _spawnAsync() {
22
- const data = /*#__PURE__*/ _interopRequireDefault(require("@expo/spawn-async"));
23
- _spawnAsync = function() {
23
+ function _spawnasync() {
24
+ const data = /*#__PURE__*/ _interop_require_default(require("@expo/spawn-async"));
25
+ _spawnasync = function() {
24
26
  return data;
25
27
  };
26
28
  return data;
27
29
  }
28
30
  function _chalk() {
29
- const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
31
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
30
32
  _chalk = function() {
31
33
  return data;
32
34
  };
33
35
  return data;
34
36
  }
35
37
  function _fs() {
36
- const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
38
+ const data = /*#__PURE__*/ _interop_require_default(require("fs"));
37
39
  _fs = function() {
38
40
  return data;
39
41
  };
40
42
  return data;
41
43
  }
42
- function _nodeChildProcess() {
44
+ function _nodechild_process() {
43
45
  const data = require("node:child_process");
44
- _nodeChildProcess = function() {
46
+ _nodechild_process = function() {
45
47
  return data;
46
48
  };
47
49
  return data;
48
50
  }
49
51
  function _path() {
50
- const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
52
+ const data = /*#__PURE__*/ _interop_require_default(require("path"));
51
53
  _path = function() {
52
54
  return data;
53
55
  };
@@ -63,26 +65,26 @@ const _exportStaticAsync = require("../exportStaticAsync");
63
65
  const _publicFolder = require("../publicFolder");
64
66
  const _saveAssets = require("../saveAssets");
65
67
  const _xcodeCompilerLogger = require("./xcodeCompilerLogger");
66
- function _interopRequireDefault(obj) {
68
+ function _interop_require_default(obj) {
67
69
  return obj && obj.__esModule ? obj : {
68
70
  default: obj
69
71
  };
70
72
  }
71
- const debug = require("debug")("expo:export:server");
72
- async function exportStandaloneServerAsync(projectRoot, devServer, { exp , pkg , files , options }) {
73
- var ref, ref1, ref2;
73
+ const debug = require('debug')('expo:export:server');
74
+ async function exportStandaloneServerAsync(projectRoot, devServer, { exp, pkg, files, options }) {
75
+ var _exp_extra_router, _exp_extra, _exp_extra1;
74
76
  if (!options.eager) {
75
77
  await tryRemovingGeneratedOriginAsync(projectRoot, exp);
76
78
  }
77
- (0, _xcodeCompilerLogger.logInXcode)("Exporting server");
79
+ (0, _xcodeCompilerLogger.logInXcode)('Exporting server');
78
80
  // Store the server output in the project's .expo directory.
79
- const serverOutput = _path().default.join(projectRoot, ".expo/server", options.platform);
81
+ const serverOutput = _path().default.join(projectRoot, '.expo/server', options.platform);
80
82
  // Remove the previous server output to prevent stale files.
81
83
  await (0, _dir.removeAsync)(serverOutput);
82
84
  // Export the API routes for server rendering the React Server Components.
83
85
  await (0, _exportStaticAsync.exportApiRoutesStandaloneAsync)(devServer, {
84
86
  files,
85
- platform: "web",
87
+ platform: 'web',
86
88
  apiRoutesOnly: true
87
89
  });
88
90
  const publicPath = _path().default.resolve(projectRoot, _env.env.EXPO_PUBLIC_FOLDER);
@@ -93,28 +95,28 @@ async function exportStandaloneServerAsync(projectRoot, devServer, { exp , pkg ,
93
95
  [
94
96
  ...files.entries()
95
97
  ].forEach(([key, value])=>{
96
- if (value.targetDomain === "server") {
98
+ if (value.targetDomain === 'server') {
97
99
  // Delete server resources to prevent them from being exposed in the binary.
98
100
  files.delete(key);
99
101
  }
100
102
  });
101
103
  // TODO: Deprecate this in favor of a built-in prop that users should avoid setting.
102
- const userDefinedServerUrl = (ref = exp.extra) == null ? void 0 : (ref1 = ref.router) == null ? void 0 : ref1.origin;
104
+ const userDefinedServerUrl = (_exp_extra = exp.extra) == null ? void 0 : (_exp_extra_router = _exp_extra.router) == null ? void 0 : _exp_extra_router.origin;
103
105
  let serverUrl = userDefinedServerUrl;
104
106
  const shouldSkipServerDeployment = (()=>{
105
107
  if (!options.eager) {
106
- (0, _xcodeCompilerLogger.logInXcode)("Skipping server deployment because the script is not running in eager mode.");
108
+ (0, _xcodeCompilerLogger.logInXcode)('Skipping server deployment because the script is not running in eager mode.');
107
109
  return true;
108
110
  }
109
111
  // Add an opaque flag to disable server deployment.
110
112
  if (_env.env.EXPO_NO_DEPLOY) {
111
- (0, _xcodeCompilerLogger.warnInXcode)("Skipping server deployment because environment variable EXPO_NO_DEPLOY is set.");
113
+ (0, _xcodeCompilerLogger.warnInXcode)('Skipping server deployment because environment variable EXPO_NO_DEPLOY is set.');
112
114
  return true;
113
115
  }
114
116
  // Can't safely deploy from Xcode since the PATH isn't set up correctly. We could amend this in the future and allow users who customize the PATH to deploy from Xcode.
115
117
  if ((0, _xcodeCompilerLogger.isExecutingFromXcodebuild)()) {
116
118
  // TODO: Don't warn when the eager bundle has been run.
117
- (0, _xcodeCompilerLogger.warnInXcode)("Skipping server deployment because the build is running from an Xcode run script. Build with Expo CLI or EAS Build to deploy the server automatically.");
119
+ (0, _xcodeCompilerLogger.warnInXcode)('Skipping server deployment because the build is running from an Xcode run script. Build with Expo CLI or EAS Build to deploy the server automatically.');
118
120
  return true;
119
121
  }
120
122
  return false;
@@ -135,45 +137,45 @@ async function exportStandaloneServerAsync(projectRoot, devServer, { exp , pkg ,
135
137
  serverUrl ||= deployedServerUrl;
136
138
  // If the user hasn't manually defined the server URL, write the deployed server URL to the app.json.
137
139
  if (userDefinedServerUrl) {
138
- _log.Log.log("Skip automatically linking server origin to native container");
140
+ _log.Log.log('Skip automatically linking server origin to native container');
139
141
  return;
140
142
  }
141
- _log.Log.log("Writing generated server URL to app.json");
143
+ _log.Log.log('Writing generated server URL to app.json');
142
144
  // NOTE: Is is it possible to assert that the config needs to be modifiable before building the app?
143
145
  const modification = await (0, _config().modifyConfigAsync)(projectRoot, {
144
146
  extra: {
145
147
  ...exp.extra ?? {},
146
148
  router: {
147
- ...((ref2 = exp.extra) == null ? void 0 : ref2.router) ?? {},
149
+ ...((_exp_extra1 = exp.extra) == null ? void 0 : _exp_extra1.router) ?? {},
148
150
  generatedOrigin: serverUrl
149
151
  }
150
152
  }
151
153
  }, {
152
154
  skipSDKVersionRequirement: true
153
155
  });
154
- if (modification.type !== "success") {
156
+ if (modification.type !== 'success') {
155
157
  throw new _errors.CommandError(`Failed to write generated server origin to app.json because the file is dynamic and does not extend the static config. The client will not be able to make server requests to API routes or static files. You can disable server linking with EXPO_NO_DEPLOY=1 or by disabling server output in the app.json.`);
156
158
  }
157
159
  }
158
- async function dumpDeploymentLogs(projectRoot, logs, name = "deploy") {
160
+ async function dumpDeploymentLogs(projectRoot, logs, name = 'deploy') {
159
161
  const outputPath = _path().default.join(projectRoot, `.expo/logs/${name}.log`);
160
162
  await _fs().default.promises.mkdir(_path().default.dirname(outputPath), {
161
163
  recursive: true
162
164
  });
163
- debug("Dumping server deployment logs to: " + outputPath);
165
+ debug('Dumping server deployment logs to: ' + outputPath);
164
166
  await _fs().default.promises.writeFile(outputPath, logs);
165
167
  return outputPath;
166
168
  }
167
169
  function getCommandBin(command) {
168
170
  try {
169
- return (0, _nodeChildProcess().execSync)(`command -v ${command}`, {
170
- stdio: "pipe"
171
+ return (0, _nodechild_process().execSync)(`command -v ${command}`, {
172
+ stdio: 'pipe'
171
173
  }).toString().trim();
172
174
  } catch {
173
175
  return null;
174
176
  }
175
177
  }
176
- async function runServerDeployCommandAsync(projectRoot, { distDirectory , deployScript }) {
178
+ async function runServerDeployCommandAsync(projectRoot, { distDirectory, deployScript }) {
177
179
  const logOfflineError = ()=>{
178
180
  const manualScript = deployScript ? `npm run ${deployScript.scriptName}` : `npx eas deploy --export-dir ${distDirectory}`;
179
181
  (0, _xcodeCompilerLogger.logMetroErrorInXcode)(projectRoot, _chalk().default.red`Running CLI in offline mode, skipping server deployment. Deploy manually with: ${manualScript}`);
@@ -189,14 +191,14 @@ async function runServerDeployCommandAsync(projectRoot, { distDirectory , deploy
189
191
  if (!_env.env.EAS_BUILD) {
190
192
  // This check helps avoid running EAS if the user isn't a user of EAS.
191
193
  // We only need to run it when building outside of EAS.
192
- const globalBin = getCommandBin("eas");
194
+ const globalBin = getCommandBin('eas');
193
195
  if (!globalBin) {
194
196
  // This should never happen from EAS Builds.
195
197
  // Possible to happen when building locally with `npx expo run`
196
198
  (0, _xcodeCompilerLogger.logMetroErrorInXcode)(projectRoot, `eas-cli is not installed globally, skipping server deployment. Install EAS CLI with 'npm install -g eas-cli'.`);
197
199
  return false;
198
200
  }
199
- debug("Found eas-cli:", globalBin);
201
+ debug('Found eas-cli:', globalBin);
200
202
  }
201
203
  let json;
202
204
  try {
@@ -204,35 +206,35 @@ async function runServerDeployCommandAsync(projectRoot, { distDirectory , deploy
204
206
  const spawnOptions = {
205
207
  cwd: projectRoot,
206
208
  // Ensures that errors can be caught.
207
- stdio: "pipe"
209
+ stdio: 'pipe'
208
210
  };
209
211
  // TODO: Support absolute paths in EAS CLI
210
212
  const exportDir = _path().default.relative(projectRoot, distDirectory);
211
213
  if (deployScript) {
212
214
  (0, _xcodeCompilerLogger.logInXcode)(`Using custom server deploy script: ${deployScript.scriptName}`);
213
215
  // Amend the path to try and make the custom scripts work.
214
- results = await (0, _spawnAsync().default)("npm", [
215
- "run",
216
+ results = await (0, _spawnasync().default)('npm', [
217
+ 'run',
216
218
  deployScript.scriptName,
217
219
  `--export-dir=${exportDir}`
218
220
  ], spawnOptions);
219
221
  } else {
220
- (0, _xcodeCompilerLogger.logInXcode)("Deploying server to link with client");
222
+ (0, _xcodeCompilerLogger.logInXcode)('Deploying server to link with client');
221
223
  // results = DEPLOYMENT_SUCCESS_FIXTURE;
222
- results = await (0, _spawnAsync().default)("npx", [
223
- "eas-cli",
224
- "deploy",
225
- "--non-interactive",
226
- "--json",
224
+ results = await (0, _spawnasync().default)('npx', [
225
+ 'eas-cli',
226
+ 'deploy',
227
+ '--non-interactive',
228
+ '--json',
227
229
  `--export-dir=${exportDir}`
228
230
  ], spawnOptions);
229
- debug("Server deployment stdout:", results.stdout);
231
+ debug('Server deployment stdout:', results.stdout);
230
232
  // Send stderr to stderr. stdout is parsed as JSON.
231
233
  if (results.stderr) {
232
234
  process.stderr.write(results.stderr);
233
235
  }
234
236
  }
235
- const logPath = await dumpDeploymentLogs(projectRoot, results.output.join("\n"));
237
+ const logPath = await dumpDeploymentLogs(projectRoot, results.output.join('\n'));
236
238
  try {
237
239
  // {
238
240
  // "dashboardUrl": "https://staging.expo.dev/projects/6460c11c-e1bc-4084-882a-fd9f57b825b1/hosting/deployments",
@@ -246,8 +248,8 @@ async function runServerDeployCommandAsync(projectRoot, { distDirectory , deploy
246
248
  }
247
249
  } catch (error) {
248
250
  if ((0, _xcrun.isSpawnResultError)(error)) {
249
- const output = error.output.join("\n").trim() || error.toString();
250
- _log.Log.log(_chalk().default.dim("An error occurred while deploying server. Logs stored at: " + await dumpDeploymentLogs(projectRoot, output, "deploy-error")));
251
+ const output = error.output.join('\n').trim() || error.toString();
252
+ _log.Log.log(_chalk().default.dim('An error occurred while deploying server. Logs stored at: ' + await dumpDeploymentLogs(projectRoot, output, 'deploy-error')));
251
253
  // Likely a server offline or network error.
252
254
  if (output.match(/ENOTFOUND/)) {
253
255
  logOfflineError();
@@ -296,7 +298,7 @@ function canParseURL(url) {
296
298
  }
297
299
  }
298
300
  function assertDeploymentJsonOutput(json) {
299
- if (!json || typeof json !== "object" || typeof json.url !== "string") {
301
+ if (!json || typeof json !== 'object' || typeof json.url !== 'string') {
300
302
  throw new Error('JSON output of server deployment command are not in the expected format: { url: "https://..." }');
301
303
  }
302
304
  }
@@ -305,10 +307,10 @@ function getServerDeploymentScript(scripts, platform) {
305
307
  // { scripts: { "native:deploy": "eas deploy --json --non-interactive" } }
306
308
  // A quick search on GitHub showed that `native:deploy` is not used in any public repos yet.
307
309
  // https://github.com/search?q=%22native%3Adeploy%22+path%3Apackage.json&type=code
308
- const DEFAULT_SCRIPT_NAME = "native:deploy";
310
+ const DEFAULT_SCRIPT_NAME = 'native:deploy';
309
311
  const scriptNames = [
310
312
  // DEFAULT_SCRIPT_NAME + ':' + platform,
311
- DEFAULT_SCRIPT_NAME,
313
+ DEFAULT_SCRIPT_NAME
312
314
  ];
313
315
  for (const scriptName of scriptNames){
314
316
  if (scripts == null ? void 0 : scripts[scriptName]) {
@@ -321,30 +323,30 @@ function getServerDeploymentScript(scripts, platform) {
321
323
  return null;
322
324
  }
323
325
  /** We can try to remove the generated origin from the manifest when running outside of eager mode. Bundling is the last operation to run so the config will already be embedded with the origin. */ async function tryRemovingGeneratedOriginAsync(projectRoot, exp) {
324
- var ref, ref1, ref2;
326
+ var _exp_extra_router, _exp_extra, _exp_extra1;
325
327
  if (_env.env.CI) {
326
328
  // Skip in CI since nothing is committed.
327
329
  return;
328
330
  }
329
- if (((ref = exp.extra) == null ? void 0 : (ref1 = ref.router) == null ? void 0 : ref1.generatedOrigin) == null) {
330
- debug("No generated origin needs removing");
331
+ if (((_exp_extra = exp.extra) == null ? void 0 : (_exp_extra_router = _exp_extra.router) == null ? void 0 : _exp_extra_router.generatedOrigin) == null) {
332
+ debug('No generated origin needs removing');
331
333
  return;
332
334
  }
333
335
  const modification = await (0, _config().modifyConfigAsync)(projectRoot, {
334
336
  extra: {
335
337
  ...exp.extra ?? {},
336
338
  router: {
337
- ...((ref2 = exp.extra) == null ? void 0 : ref2.router) ?? {},
339
+ ...((_exp_extra1 = exp.extra) == null ? void 0 : _exp_extra1.router) ?? {},
338
340
  generatedOrigin: undefined
339
341
  }
340
342
  }
341
343
  }, {
342
344
  skipSDKVersionRequirement: true
343
345
  });
344
- if (modification.type !== "success") {
345
- debug("Could not remove generated origin from manifest");
346
+ if (modification.type !== 'success') {
347
+ debug('Could not remove generated origin from manifest');
346
348
  } else {
347
- debug("Generated origin has been removed from manifest");
349
+ debug('Generated origin has been removed from manifest');
348
350
  }
349
351
  }
350
352
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/export/embed/exportServer.ts"],"sourcesContent":["/**\n * Copyright © 2023 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 { ExpoConfig, modifyConfigAsync, PackageJSONConfig } from '@expo/config';\nimport spawnAsync from '@expo/spawn-async';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport { execSync } from 'node:child_process';\nimport path from 'path';\n\nimport { disableNetwork } from '../../api/settings';\nimport { Log } from '../../log';\nimport { isSpawnResultError } from '../../start/platforms/ios/xcrun';\nimport { MetroBundlerDevServer } from '../../start/server/metro/MetroBundlerDevServer';\nimport { removeAsync } from '../../utils/dir';\nimport { env } from '../../utils/env';\nimport { CommandError } from '../../utils/errors';\nimport { exportApiRoutesStandaloneAsync } from '../exportStaticAsync';\nimport { copyPublicFolderAsync } from '../publicFolder';\nimport { ExportAssetMap, persistMetroFilesAsync } from '../saveAssets';\nimport { Options } from './resolveOptions';\nimport {\n isExecutingFromXcodebuild,\n logInXcode,\n logMetroErrorInXcode,\n warnInXcode,\n} from './xcodeCompilerLogger';\n\nconst debug = require('debug')('expo:export:server');\n\ntype ServerDeploymentResults = {\n url: string;\n dashboardUrl?: string;\n};\n\nexport async function exportStandaloneServerAsync(\n projectRoot: string,\n devServer: MetroBundlerDevServer,\n {\n exp,\n pkg,\n files,\n options,\n }: { exp: ExpoConfig; pkg: PackageJSONConfig; files: ExportAssetMap; options: Options }\n) {\n if (!options.eager) {\n await tryRemovingGeneratedOriginAsync(projectRoot, exp);\n }\n\n logInXcode('Exporting server');\n\n // Store the server output in the project's .expo directory.\n const serverOutput = path.join(projectRoot, '.expo/server', options.platform);\n\n // Remove the previous server output to prevent stale files.\n await removeAsync(serverOutput);\n\n // Export the API routes for server rendering the React Server Components.\n await exportApiRoutesStandaloneAsync(devServer, {\n files,\n platform: 'web',\n apiRoutesOnly: true,\n });\n\n const publicPath = path.resolve(projectRoot, env.EXPO_PUBLIC_FOLDER);\n\n // Copy over public folder items\n await copyPublicFolderAsync(publicPath, serverOutput);\n\n // Copy over the server output on top of the public folder.\n await persistMetroFilesAsync(files, serverOutput);\n\n [...files.entries()].forEach(([key, value]) => {\n if (value.targetDomain === 'server') {\n // Delete server resources to prevent them from being exposed in the binary.\n files.delete(key);\n }\n });\n\n // TODO: Deprecate this in favor of a built-in prop that users should avoid setting.\n const userDefinedServerUrl = exp.extra?.router?.origin;\n let serverUrl = userDefinedServerUrl;\n\n const shouldSkipServerDeployment = (() => {\n if (!options.eager) {\n logInXcode('Skipping server deployment because the script is not running in eager mode.');\n return true;\n }\n\n // Add an opaque flag to disable server deployment.\n if (env.EXPO_NO_DEPLOY) {\n warnInXcode('Skipping server deployment because environment variable EXPO_NO_DEPLOY is set.');\n return true;\n }\n\n // Can't safely deploy from Xcode since the PATH isn't set up correctly. We could amend this in the future and allow users who customize the PATH to deploy from Xcode.\n if (isExecutingFromXcodebuild()) {\n // TODO: Don't warn when the eager bundle has been run.\n warnInXcode(\n 'Skipping server deployment because the build is running from an Xcode run script. Build with Expo CLI or EAS Build to deploy the server automatically.'\n );\n return true;\n }\n\n return false;\n })();\n\n // Deploy the server output to a hosting provider.\n const deployedServerUrl = shouldSkipServerDeployment\n ? false\n : await runServerDeployCommandAsync(projectRoot, {\n distDirectory: serverOutput,\n deployScript: getServerDeploymentScript(pkg.scripts, options.platform),\n });\n\n if (!deployedServerUrl) {\n return;\n }\n\n if (serverUrl) {\n logInXcode(\n `Using custom server URL: ${serverUrl} (ignoring deployment URL: ${deployedServerUrl})`\n );\n }\n\n // If the user-defined server URL is not defined, use the deployed server URL.\n // This allows for overwriting the server URL in the project's native files.\n serverUrl ||= deployedServerUrl;\n\n // If the user hasn't manually defined the server URL, write the deployed server URL to the app.json.\n if (userDefinedServerUrl) {\n Log.log('Skip automatically linking server origin to native container');\n return;\n }\n Log.log('Writing generated server URL to app.json');\n\n // NOTE: Is is it possible to assert that the config needs to be modifiable before building the app?\n const modification = await modifyConfigAsync(\n projectRoot,\n {\n extra: {\n ...(exp.extra ?? {}),\n router: {\n ...(exp.extra?.router ?? {}),\n generatedOrigin: serverUrl,\n },\n },\n },\n {\n skipSDKVersionRequirement: true,\n }\n );\n\n if (modification.type !== 'success') {\n throw new CommandError(\n `Failed to write generated server origin to app.json because the file is dynamic and does not extend the static config. The client will not be able to make server requests to API routes or static files. You can disable server linking with EXPO_NO_DEPLOY=1 or by disabling server output in the app.json.`\n );\n }\n}\n\nasync function dumpDeploymentLogs(projectRoot: string, logs: string, name = 'deploy') {\n const outputPath = path.join(projectRoot, `.expo/logs/${name}.log`);\n await fs.promises.mkdir(path.dirname(outputPath), { recursive: true });\n debug('Dumping server deployment logs to: ' + outputPath);\n await fs.promises.writeFile(outputPath, logs);\n return outputPath;\n}\n\nfunction getCommandBin(command: string) {\n try {\n return execSync(`command -v ${command}`, { stdio: 'pipe' }).toString().trim();\n } catch {\n return null;\n }\n}\n\nasync function runServerDeployCommandAsync(\n projectRoot: string,\n {\n distDirectory,\n deployScript,\n }: { distDirectory: string; deployScript: { scriptName: string; script: string } | null }\n): Promise<string | false> {\n const logOfflineError = () => {\n const manualScript = deployScript\n ? `npm run ${deployScript.scriptName}`\n : `npx eas deploy --export-dir ${distDirectory}`;\n\n logMetroErrorInXcode(\n projectRoot,\n chalk.red`Running CLI in offline mode, skipping server deployment. Deploy manually with: ${manualScript}`\n );\n };\n if (env.EXPO_OFFLINE) {\n logOfflineError();\n return false;\n }\n\n // TODO: Only allow EAS deployments when staging is enabled, this is because the feature is still staging-only.\n if (!env.EXPO_UNSTABLE_DEPLOY_SERVER) {\n return false;\n }\n\n if (!env.EAS_BUILD) {\n // This check helps avoid running EAS if the user isn't a user of EAS.\n // We only need to run it when building outside of EAS.\n const globalBin = getCommandBin('eas');\n if (!globalBin) {\n // This should never happen from EAS Builds.\n // Possible to happen when building locally with `npx expo run`\n logMetroErrorInXcode(\n projectRoot,\n `eas-cli is not installed globally, skipping server deployment. Install EAS CLI with 'npm install -g eas-cli'.`\n );\n return false;\n }\n debug('Found eas-cli:', globalBin);\n }\n\n let json: any;\n try {\n let results: spawnAsync.SpawnResult;\n\n const spawnOptions: spawnAsync.SpawnOptions = {\n cwd: projectRoot,\n // Ensures that errors can be caught.\n stdio: 'pipe',\n };\n // TODO: Support absolute paths in EAS CLI\n const exportDir = path.relative(projectRoot, distDirectory);\n if (deployScript) {\n logInXcode(`Using custom server deploy script: ${deployScript.scriptName}`);\n // Amend the path to try and make the custom scripts work.\n\n results = await spawnAsync(\n 'npm',\n ['run', deployScript.scriptName, `--export-dir=${exportDir}`],\n spawnOptions\n );\n } else {\n logInXcode('Deploying server to link with client');\n\n // results = DEPLOYMENT_SUCCESS_FIXTURE;\n results = await spawnAsync(\n 'npx',\n ['eas-cli', 'deploy', '--non-interactive', '--json', `--export-dir=${exportDir}`],\n spawnOptions\n );\n\n debug('Server deployment stdout:', results.stdout);\n\n // Send stderr to stderr. stdout is parsed as JSON.\n if (results.stderr) {\n process.stderr.write(results.stderr);\n }\n }\n\n const logPath = await dumpDeploymentLogs(projectRoot, results.output.join('\\n'));\n\n try {\n // {\n // \"dashboardUrl\": \"https://staging.expo.dev/projects/6460c11c-e1bc-4084-882a-fd9f57b825b1/hosting/deployments\",\n // \"identifier\": \"8a1pwbv6c5\",\n // \"url\": \"https://sep30--8a1pwbv6c5.staging.expo.app\"\n // }\n json = JSON.parse(results.stdout.trim());\n } catch {\n logMetroErrorInXcode(\n projectRoot,\n `Failed to parse server deployment JSON output. Check the logs for more information: ${logPath}`\n );\n return false;\n }\n } catch (error) {\n if (isSpawnResultError(error)) {\n const output = error.output.join('\\n').trim() || error.toString();\n Log.log(\n chalk.dim(\n 'An error occurred while deploying server. Logs stored at: ' +\n (await dumpDeploymentLogs(projectRoot, output, 'deploy-error'))\n )\n );\n\n // Likely a server offline or network error.\n if (output.match(/ENOTFOUND/)) {\n logOfflineError();\n // Print the raw error message to help provide more context.\n Log.log(chalk.dim(output));\n // Prevent any other network requests (unlikely for this command).\n disableNetwork();\n return false;\n }\n\n logInXcode(output);\n if (output.match(/spawn eas ENOENT/)) {\n // EAS not installed.\n logMetroErrorInXcode(\n projectRoot,\n `Server deployment failed because eas-cli cannot be accessed from the build script's environment (ENOENT). Install EAS CLI with 'npm install -g eas-cli'.`\n );\n return false;\n }\n\n if (error.stderr.match(/Must configure EAS project by running/)) {\n // EAS not configured, this can happen when building a project locally before building in EAS.\n // User must run `eas init`, `eas deploy`, or `eas build` first.\n\n // TODO: Should we fail the build here or just warn users?\n logMetroErrorInXcode(\n projectRoot,\n `Skipping server deployment because EAS is not configured. Run 'eas init' before trying again, or disable server output in the project.`\n );\n return false;\n }\n }\n\n // Throw unhandled server deployment errors.\n throw error;\n }\n\n // Assert json format\n assertDeploymentJsonOutput(json);\n\n // Warn about the URL not being valid. This should never happen, but might be possible with third-parties.\n if (!canParseURL(json.url)) {\n warnInXcode(`The server deployment URL is not a valid URL: ${json.url}`);\n }\n\n if (json.dashboardUrl) {\n logInXcode(`Server dashboard: ${json.dashboardUrl}`);\n }\n\n logInXcode(`Server deployed to: ${json.url}`);\n\n return json.url;\n}\n\nfunction canParseURL(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\nfunction assertDeploymentJsonOutput(json: any): asserts json is ServerDeploymentResults {\n if (!json || typeof json !== 'object' || typeof json.url !== 'string') {\n throw new Error(\n 'JSON output of server deployment command are not in the expected format: { url: \"https://...\" }'\n );\n }\n}\n\nfunction getServerDeploymentScript(\n scripts: Record<string, string> | undefined,\n platform: string\n): { scriptName: string; script: string } | null {\n // Users can overwrite the default deployment script with:\n // { scripts: { \"native:deploy\": \"eas deploy --json --non-interactive\" } }\n // A quick search on GitHub showed that `native:deploy` is not used in any public repos yet.\n // https://github.com/search?q=%22native%3Adeploy%22+path%3Apackage.json&type=code\n const DEFAULT_SCRIPT_NAME = 'native:deploy';\n\n const scriptNames = [\n // DEFAULT_SCRIPT_NAME + ':' + platform,\n DEFAULT_SCRIPT_NAME,\n ];\n\n for (const scriptName of scriptNames) {\n if (scripts?.[scriptName]) {\n return { scriptName, script: scripts[scriptName] };\n }\n }\n\n return null;\n}\n\n/** We can try to remove the generated origin from the manifest when running outside of eager mode. Bundling is the last operation to run so the config will already be embedded with the origin. */\nasync function tryRemovingGeneratedOriginAsync(projectRoot: string, exp: ExpoConfig) {\n if (env.CI) {\n // Skip in CI since nothing is committed.\n return;\n }\n if (exp.extra?.router?.generatedOrigin == null) {\n debug('No generated origin needs removing');\n return;\n }\n\n const modification = await modifyConfigAsync(\n projectRoot,\n {\n extra: {\n ...(exp.extra ?? {}),\n router: {\n ...(exp.extra?.router ?? {}),\n generatedOrigin: undefined,\n },\n },\n },\n {\n skipSDKVersionRequirement: true,\n }\n );\n\n if (modification.type !== 'success') {\n debug('Could not remove generated origin from manifest');\n } else {\n debug('Generated origin has been removed from manifest');\n }\n}\n"],"names":["exportStandaloneServerAsync","debug","require","projectRoot","devServer","exp","pkg","files","options","eager","tryRemovingGeneratedOriginAsync","logInXcode","serverOutput","path","join","platform","removeAsync","exportApiRoutesStandaloneAsync","apiRoutesOnly","publicPath","resolve","env","EXPO_PUBLIC_FOLDER","copyPublicFolderAsync","persistMetroFilesAsync","entries","forEach","key","value","targetDomain","delete","userDefinedServerUrl","extra","router","origin","serverUrl","shouldSkipServerDeployment","EXPO_NO_DEPLOY","warnInXcode","isExecutingFromXcodebuild","deployedServerUrl","runServerDeployCommandAsync","distDirectory","deployScript","getServerDeploymentScript","scripts","Log","log","modification","modifyConfigAsync","generatedOrigin","skipSDKVersionRequirement","type","CommandError","dumpDeploymentLogs","logs","name","outputPath","fs","promises","mkdir","dirname","recursive","writeFile","getCommandBin","command","execSync","stdio","toString","trim","logOfflineError","manualScript","scriptName","logMetroErrorInXcode","chalk","red","EXPO_OFFLINE","EXPO_UNSTABLE_DEPLOY_SERVER","EAS_BUILD","globalBin","json","results","spawnOptions","cwd","exportDir","relative","spawnAsync","stdout","stderr","process","write","logPath","output","JSON","parse","error","isSpawnResultError","dim","match","disableNetwork","assertDeploymentJsonOutput","canParseURL","url","dashboardUrl","URL","Error","DEFAULT_SCRIPT_NAME","scriptNames","script","CI","undefined"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/export/embed/exportServer.ts"],"sourcesContent":["/**\n * Copyright © 2023 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 { ExpoConfig, modifyConfigAsync, PackageJSONConfig } from '@expo/config';\nimport spawnAsync from '@expo/spawn-async';\nimport chalk from 'chalk';\nimport fs from 'fs';\nimport { execSync } from 'node:child_process';\nimport path from 'path';\n\nimport { disableNetwork } from '../../api/settings';\nimport { Log } from '../../log';\nimport { isSpawnResultError } from '../../start/platforms/ios/xcrun';\nimport { MetroBundlerDevServer } from '../../start/server/metro/MetroBundlerDevServer';\nimport { removeAsync } from '../../utils/dir';\nimport { env } from '../../utils/env';\nimport { CommandError } from '../../utils/errors';\nimport { exportApiRoutesStandaloneAsync } from '../exportStaticAsync';\nimport { copyPublicFolderAsync } from '../publicFolder';\nimport { ExportAssetMap, persistMetroFilesAsync } from '../saveAssets';\nimport { Options } from './resolveOptions';\nimport {\n isExecutingFromXcodebuild,\n logInXcode,\n logMetroErrorInXcode,\n warnInXcode,\n} from './xcodeCompilerLogger';\n\nconst debug = require('debug')('expo:export:server');\n\ntype ServerDeploymentResults = {\n url: string;\n dashboardUrl?: string;\n};\n\nexport async function exportStandaloneServerAsync(\n projectRoot: string,\n devServer: MetroBundlerDevServer,\n {\n exp,\n pkg,\n files,\n options,\n }: { exp: ExpoConfig; pkg: PackageJSONConfig; files: ExportAssetMap; options: Options }\n) {\n if (!options.eager) {\n await tryRemovingGeneratedOriginAsync(projectRoot, exp);\n }\n\n logInXcode('Exporting server');\n\n // Store the server output in the project's .expo directory.\n const serverOutput = path.join(projectRoot, '.expo/server', options.platform);\n\n // Remove the previous server output to prevent stale files.\n await removeAsync(serverOutput);\n\n // Export the API routes for server rendering the React Server Components.\n await exportApiRoutesStandaloneAsync(devServer, {\n files,\n platform: 'web',\n apiRoutesOnly: true,\n });\n\n const publicPath = path.resolve(projectRoot, env.EXPO_PUBLIC_FOLDER);\n\n // Copy over public folder items\n await copyPublicFolderAsync(publicPath, serverOutput);\n\n // Copy over the server output on top of the public folder.\n await persistMetroFilesAsync(files, serverOutput);\n\n [...files.entries()].forEach(([key, value]) => {\n if (value.targetDomain === 'server') {\n // Delete server resources to prevent them from being exposed in the binary.\n files.delete(key);\n }\n });\n\n // TODO: Deprecate this in favor of a built-in prop that users should avoid setting.\n const userDefinedServerUrl = exp.extra?.router?.origin;\n let serverUrl = userDefinedServerUrl;\n\n const shouldSkipServerDeployment = (() => {\n if (!options.eager) {\n logInXcode('Skipping server deployment because the script is not running in eager mode.');\n return true;\n }\n\n // Add an opaque flag to disable server deployment.\n if (env.EXPO_NO_DEPLOY) {\n warnInXcode('Skipping server deployment because environment variable EXPO_NO_DEPLOY is set.');\n return true;\n }\n\n // Can't safely deploy from Xcode since the PATH isn't set up correctly. We could amend this in the future and allow users who customize the PATH to deploy from Xcode.\n if (isExecutingFromXcodebuild()) {\n // TODO: Don't warn when the eager bundle has been run.\n warnInXcode(\n 'Skipping server deployment because the build is running from an Xcode run script. Build with Expo CLI or EAS Build to deploy the server automatically.'\n );\n return true;\n }\n\n return false;\n })();\n\n // Deploy the server output to a hosting provider.\n const deployedServerUrl = shouldSkipServerDeployment\n ? false\n : await runServerDeployCommandAsync(projectRoot, {\n distDirectory: serverOutput,\n deployScript: getServerDeploymentScript(pkg.scripts, options.platform),\n });\n\n if (!deployedServerUrl) {\n return;\n }\n\n if (serverUrl) {\n logInXcode(\n `Using custom server URL: ${serverUrl} (ignoring deployment URL: ${deployedServerUrl})`\n );\n }\n\n // If the user-defined server URL is not defined, use the deployed server URL.\n // This allows for overwriting the server URL in the project's native files.\n serverUrl ||= deployedServerUrl;\n\n // If the user hasn't manually defined the server URL, write the deployed server URL to the app.json.\n if (userDefinedServerUrl) {\n Log.log('Skip automatically linking server origin to native container');\n return;\n }\n Log.log('Writing generated server URL to app.json');\n\n // NOTE: Is is it possible to assert that the config needs to be modifiable before building the app?\n const modification = await modifyConfigAsync(\n projectRoot,\n {\n extra: {\n ...(exp.extra ?? {}),\n router: {\n ...(exp.extra?.router ?? {}),\n generatedOrigin: serverUrl,\n },\n },\n },\n {\n skipSDKVersionRequirement: true,\n }\n );\n\n if (modification.type !== 'success') {\n throw new CommandError(\n `Failed to write generated server origin to app.json because the file is dynamic and does not extend the static config. The client will not be able to make server requests to API routes or static files. You can disable server linking with EXPO_NO_DEPLOY=1 or by disabling server output in the app.json.`\n );\n }\n}\n\nasync function dumpDeploymentLogs(projectRoot: string, logs: string, name = 'deploy') {\n const outputPath = path.join(projectRoot, `.expo/logs/${name}.log`);\n await fs.promises.mkdir(path.dirname(outputPath), { recursive: true });\n debug('Dumping server deployment logs to: ' + outputPath);\n await fs.promises.writeFile(outputPath, logs);\n return outputPath;\n}\n\nfunction getCommandBin(command: string) {\n try {\n return execSync(`command -v ${command}`, { stdio: 'pipe' }).toString().trim();\n } catch {\n return null;\n }\n}\n\nasync function runServerDeployCommandAsync(\n projectRoot: string,\n {\n distDirectory,\n deployScript,\n }: { distDirectory: string; deployScript: { scriptName: string; script: string } | null }\n): Promise<string | false> {\n const logOfflineError = () => {\n const manualScript = deployScript\n ? `npm run ${deployScript.scriptName}`\n : `npx eas deploy --export-dir ${distDirectory}`;\n\n logMetroErrorInXcode(\n projectRoot,\n chalk.red`Running CLI in offline mode, skipping server deployment. Deploy manually with: ${manualScript}`\n );\n };\n if (env.EXPO_OFFLINE) {\n logOfflineError();\n return false;\n }\n\n // TODO: Only allow EAS deployments when staging is enabled, this is because the feature is still staging-only.\n if (!env.EXPO_UNSTABLE_DEPLOY_SERVER) {\n return false;\n }\n\n if (!env.EAS_BUILD) {\n // This check helps avoid running EAS if the user isn't a user of EAS.\n // We only need to run it when building outside of EAS.\n const globalBin = getCommandBin('eas');\n if (!globalBin) {\n // This should never happen from EAS Builds.\n // Possible to happen when building locally with `npx expo run`\n logMetroErrorInXcode(\n projectRoot,\n `eas-cli is not installed globally, skipping server deployment. Install EAS CLI with 'npm install -g eas-cli'.`\n );\n return false;\n }\n debug('Found eas-cli:', globalBin);\n }\n\n let json: any;\n try {\n let results: spawnAsync.SpawnResult;\n\n const spawnOptions: spawnAsync.SpawnOptions = {\n cwd: projectRoot,\n // Ensures that errors can be caught.\n stdio: 'pipe',\n };\n // TODO: Support absolute paths in EAS CLI\n const exportDir = path.relative(projectRoot, distDirectory);\n if (deployScript) {\n logInXcode(`Using custom server deploy script: ${deployScript.scriptName}`);\n // Amend the path to try and make the custom scripts work.\n\n results = await spawnAsync(\n 'npm',\n ['run', deployScript.scriptName, `--export-dir=${exportDir}`],\n spawnOptions\n );\n } else {\n logInXcode('Deploying server to link with client');\n\n // results = DEPLOYMENT_SUCCESS_FIXTURE;\n results = await spawnAsync(\n 'npx',\n ['eas-cli', 'deploy', '--non-interactive', '--json', `--export-dir=${exportDir}`],\n spawnOptions\n );\n\n debug('Server deployment stdout:', results.stdout);\n\n // Send stderr to stderr. stdout is parsed as JSON.\n if (results.stderr) {\n process.stderr.write(results.stderr);\n }\n }\n\n const logPath = await dumpDeploymentLogs(projectRoot, results.output.join('\\n'));\n\n try {\n // {\n // \"dashboardUrl\": \"https://staging.expo.dev/projects/6460c11c-e1bc-4084-882a-fd9f57b825b1/hosting/deployments\",\n // \"identifier\": \"8a1pwbv6c5\",\n // \"url\": \"https://sep30--8a1pwbv6c5.staging.expo.app\"\n // }\n json = JSON.parse(results.stdout.trim());\n } catch {\n logMetroErrorInXcode(\n projectRoot,\n `Failed to parse server deployment JSON output. Check the logs for more information: ${logPath}`\n );\n return false;\n }\n } catch (error) {\n if (isSpawnResultError(error)) {\n const output = error.output.join('\\n').trim() || error.toString();\n Log.log(\n chalk.dim(\n 'An error occurred while deploying server. Logs stored at: ' +\n (await dumpDeploymentLogs(projectRoot, output, 'deploy-error'))\n )\n );\n\n // Likely a server offline or network error.\n if (output.match(/ENOTFOUND/)) {\n logOfflineError();\n // Print the raw error message to help provide more context.\n Log.log(chalk.dim(output));\n // Prevent any other network requests (unlikely for this command).\n disableNetwork();\n return false;\n }\n\n logInXcode(output);\n if (output.match(/spawn eas ENOENT/)) {\n // EAS not installed.\n logMetroErrorInXcode(\n projectRoot,\n `Server deployment failed because eas-cli cannot be accessed from the build script's environment (ENOENT). Install EAS CLI with 'npm install -g eas-cli'.`\n );\n return false;\n }\n\n if (error.stderr.match(/Must configure EAS project by running/)) {\n // EAS not configured, this can happen when building a project locally before building in EAS.\n // User must run `eas init`, `eas deploy`, or `eas build` first.\n\n // TODO: Should we fail the build here or just warn users?\n logMetroErrorInXcode(\n projectRoot,\n `Skipping server deployment because EAS is not configured. Run 'eas init' before trying again, or disable server output in the project.`\n );\n return false;\n }\n }\n\n // Throw unhandled server deployment errors.\n throw error;\n }\n\n // Assert json format\n assertDeploymentJsonOutput(json);\n\n // Warn about the URL not being valid. This should never happen, but might be possible with third-parties.\n if (!canParseURL(json.url)) {\n warnInXcode(`The server deployment URL is not a valid URL: ${json.url}`);\n }\n\n if (json.dashboardUrl) {\n logInXcode(`Server dashboard: ${json.dashboardUrl}`);\n }\n\n logInXcode(`Server deployed to: ${json.url}`);\n\n return json.url;\n}\n\nfunction canParseURL(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\nfunction assertDeploymentJsonOutput(json: any): asserts json is ServerDeploymentResults {\n if (!json || typeof json !== 'object' || typeof json.url !== 'string') {\n throw new Error(\n 'JSON output of server deployment command are not in the expected format: { url: \"https://...\" }'\n );\n }\n}\n\nfunction getServerDeploymentScript(\n scripts: Record<string, string> | undefined,\n platform: string\n): { scriptName: string; script: string } | null {\n // Users can overwrite the default deployment script with:\n // { scripts: { \"native:deploy\": \"eas deploy --json --non-interactive\" } }\n // A quick search on GitHub showed that `native:deploy` is not used in any public repos yet.\n // https://github.com/search?q=%22native%3Adeploy%22+path%3Apackage.json&type=code\n const DEFAULT_SCRIPT_NAME = 'native:deploy';\n\n const scriptNames = [\n // DEFAULT_SCRIPT_NAME + ':' + platform,\n DEFAULT_SCRIPT_NAME,\n ];\n\n for (const scriptName of scriptNames) {\n if (scripts?.[scriptName]) {\n return { scriptName, script: scripts[scriptName] };\n }\n }\n\n return null;\n}\n\n/** We can try to remove the generated origin from the manifest when running outside of eager mode. Bundling is the last operation to run so the config will already be embedded with the origin. */\nasync function tryRemovingGeneratedOriginAsync(projectRoot: string, exp: ExpoConfig) {\n if (env.CI) {\n // Skip in CI since nothing is committed.\n return;\n }\n if (exp.extra?.router?.generatedOrigin == null) {\n debug('No generated origin needs removing');\n return;\n }\n\n const modification = await modifyConfigAsync(\n projectRoot,\n {\n extra: {\n ...(exp.extra ?? {}),\n router: {\n ...(exp.extra?.router ?? {}),\n generatedOrigin: undefined,\n },\n },\n },\n {\n skipSDKVersionRequirement: true,\n }\n );\n\n if (modification.type !== 'success') {\n debug('Could not remove generated origin from manifest');\n } else {\n debug('Generated origin has been removed from manifest');\n }\n}\n"],"names":["exportStandaloneServerAsync","debug","require","projectRoot","devServer","exp","pkg","files","options","eager","tryRemovingGeneratedOriginAsync","logInXcode","serverOutput","path","join","platform","removeAsync","exportApiRoutesStandaloneAsync","apiRoutesOnly","publicPath","resolve","env","EXPO_PUBLIC_FOLDER","copyPublicFolderAsync","persistMetroFilesAsync","entries","forEach","key","value","targetDomain","delete","userDefinedServerUrl","extra","router","origin","serverUrl","shouldSkipServerDeployment","EXPO_NO_DEPLOY","warnInXcode","isExecutingFromXcodebuild","deployedServerUrl","runServerDeployCommandAsync","distDirectory","deployScript","getServerDeploymentScript","scripts","Log","log","modification","modifyConfigAsync","generatedOrigin","skipSDKVersionRequirement","type","CommandError","dumpDeploymentLogs","logs","name","outputPath","fs","promises","mkdir","dirname","recursive","writeFile","getCommandBin","command","execSync","stdio","toString","trim","logOfflineError","manualScript","scriptName","logMetroErrorInXcode","chalk","red","EXPO_OFFLINE","EXPO_UNSTABLE_DEPLOY_SERVER","EAS_BUILD","globalBin","json","results","spawnOptions","cwd","exportDir","relative","spawnAsync","stdout","stderr","process","write","logPath","output","JSON","parse","error","isSpawnResultError","dim","match","disableNetwork","assertDeploymentJsonOutput","canParseURL","url","dashboardUrl","URL","Error","DEFAULT_SCRIPT_NAME","scriptNames","script","CI","undefined"],"mappings":"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"}
@@ -5,24 +5,26 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  Object.defineProperty(exports, "expoExportEmbed", {
7
7
  enumerable: true,
8
- get: ()=>expoExportEmbed
8
+ get: function() {
9
+ return expoExportEmbed;
10
+ }
9
11
  });
10
12
  function _chalk() {
11
- const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
13
+ const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
12
14
  _chalk = function() {
13
15
  return data;
14
16
  };
15
17
  return data;
16
18
  }
17
19
  function _path() {
18
- const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
20
+ const data = /*#__PURE__*/ _interop_require_default(require("path"));
19
21
  _path = function() {
20
22
  return data;
21
23
  };
22
24
  return data;
23
25
  }
24
26
  const _args = require("../../utils/args");
25
- function _interopRequireDefault(obj) {
27
+ function _interop_require_default(obj) {
26
28
  return obj && obj.__esModule ? obj : {
27
29
  default: obj
28
30
  };
@@ -35,7 +37,7 @@ function _getRequireWildcardCache(nodeInterop) {
35
37
  return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
36
38
  })(nodeInterop);
37
39
  }
38
- function _interopRequireWildcard(obj, nodeInterop) {
40
+ function _interop_require_wildcard(obj, nodeInterop) {
39
41
  if (!nodeInterop && obj && obj.__esModule) {
40
42
  return obj;
41
43
  }
@@ -48,7 +50,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
48
50
  if (cache && cache.has(obj)) {
49
51
  return cache.get(obj);
50
52
  }
51
- var newObj = {};
53
+ var newObj = {
54
+ __proto__: null
55
+ };
52
56
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
53
57
  for(var key in obj){
54
58
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -69,39 +73,39 @@ function _interopRequireWildcard(obj, nodeInterop) {
69
73
  const expoExportEmbed = async (argv)=>{
70
74
  const rawArgsMap = {
71
75
  // Types
72
- "--entry-file": String,
73
- "--platform": String,
74
- "--transformer": String,
75
- "--bundle-output": String,
76
- "--bundle-encoding": String,
77
- "--max-workers": Number,
78
- "--sourcemap-output": String,
79
- "--sourcemap-sources-root": String,
80
- "--assets-dest": String,
81
- "--asset-catalog-dest": String,
82
- "--unstable-transform-profile": String,
83
- "--config": String,
76
+ '--entry-file': String,
77
+ '--platform': String,
78
+ '--transformer': String,
79
+ '--bundle-output': String,
80
+ '--bundle-encoding': String,
81
+ '--max-workers': Number,
82
+ '--sourcemap-output': String,
83
+ '--sourcemap-sources-root': String,
84
+ '--assets-dest': String,
85
+ '--asset-catalog-dest': String,
86
+ '--unstable-transform-profile': String,
87
+ '--config': String,
84
88
  // Hack: This is added because react-native-xcode.sh script always includes this value.
85
89
  // If supplied, we'll do nothing with the value, but at least the process won't crash.
86
90
  // Note that we also don't show this value in the `--help` prompt since we don't want people to use it.
87
- "--config-cmd": String,
91
+ '--config-cmd': String,
88
92
  // New flag to guess the other flags based on the environment.
89
- "--eager": Boolean,
93
+ '--eager': Boolean,
90
94
  // Export the bundle as Hermes bytecode bundle
91
- "--bytecode": Boolean,
95
+ '--bytecode': Boolean,
92
96
  // This is here for compatibility with the `npx react-native bundle` command.
93
97
  // devs should use `DEBUG=expo:*` instead.
94
- "--verbose": Boolean,
95
- "--help": Boolean,
98
+ '--verbose': Boolean,
99
+ '--help': Boolean,
96
100
  // Aliases
97
- "-h": "--help",
98
- "-v": "--verbose"
101
+ '-h': '--help',
102
+ '-v': '--verbose'
99
103
  };
100
104
  const args = (0, _args.assertWithOptionsArgs)(rawArgsMap, {
101
105
  argv,
102
106
  permissive: true
103
107
  });
104
- if (args["--help"]) {
108
+ if (args['--help']) {
105
109
  (0, _args.printHelp)(`(Internal) Export the JavaScript bundle during a native build script for embedding in a native binary`, (0, _chalk().default)`npx expo export:embed {dim <dir>}`, [
106
110
  (0, _chalk().default)`<dir> Directory of the Expo project. {dim Default: Current working directory}`,
107
111
  `--entry-file <path> Path to the root JS file, either absolute or relative to JS root`,
@@ -125,24 +129,24 @@ const expoExportEmbed = async (argv)=>{
125
129
  `--config <string> Path to the CLI configuration file`,
126
130
  // This is seemingly unused.
127
131
  `--read-global-cache Try to fetch transformed JS code from the global cache, if configured.`,
128
- `-h, --help Usage info`,
129
- ].join("\n"));
132
+ `-h, --help Usage info`
133
+ ].join('\n'));
130
134
  }
131
- const [{ exportEmbedAsync }, { resolveOptions }, { logCmdError }, { resolveCustomBooleanArgsAsync }, ] = await Promise.all([
132
- Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("./exportEmbedAsync.js"))),
133
- Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("./resolveOptions.js"))),
134
- Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("../../utils/errors.js"))),
135
- Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("../../utils/resolveArgs.js"))),
135
+ const [{ exportEmbedAsync }, { resolveOptions }, { logCmdError }, { resolveCustomBooleanArgsAsync }] = await Promise.all([
136
+ Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require("./exportEmbedAsync.js"))),
137
+ Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require("./resolveOptions.js"))),
138
+ Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require("../../utils/errors.js"))),
139
+ Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require("../../utils/resolveArgs.js")))
136
140
  ]);
137
141
  return (async ()=>{
138
142
  const parsed = await resolveCustomBooleanArgsAsync(argv ?? [], rawArgsMap, {
139
- "--eager": Boolean,
140
- "--bytecode": Boolean,
141
- "--dev": Boolean,
142
- "--minify": Boolean,
143
- "--sourcemap-use-absolute-path": Boolean,
144
- "--reset-cache": Boolean,
145
- "--read-global-cache": Boolean
143
+ '--eager': Boolean,
144
+ '--bytecode': Boolean,
145
+ '--dev': Boolean,
146
+ '--minify': Boolean,
147
+ '--sourcemap-use-absolute-path': Boolean,
148
+ '--reset-cache': Boolean,
149
+ '--read-global-cache': Boolean
146
150
  });
147
151
  const projectRoot = _path().default.resolve(parsed.projectRoot);
148
152
  return exportEmbedAsync(projectRoot, resolveOptions(projectRoot, args, parsed));