@expo/cli 0.0.0-bisect-20240612-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/README.md +144 -0
  2. package/build/bin/cli +260 -0
  3. package/build/bin/cli.map +1 -0
  4. package/build/src/api/endpoint.js +35 -0
  5. package/build/src/api/endpoint.js.map +1 -0
  6. package/build/src/api/getExpoGoIntermediateCertificate.js +22 -0
  7. package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -0
  8. package/build/src/api/getExpoSchema.js +89 -0
  9. package/build/src/api/getExpoSchema.js.map +1 -0
  10. package/build/src/api/getNativeModuleVersions.js +34 -0
  11. package/build/src/api/getNativeModuleVersions.js.map +1 -0
  12. package/build/src/api/getProjectDevelopmentCertificate.js +25 -0
  13. package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -0
  14. package/build/src/api/getVersions.js +27 -0
  15. package/build/src/api/getVersions.js.map +1 -0
  16. package/build/src/api/graphql/client.js +144 -0
  17. package/build/src/api/graphql/client.js.map +1 -0
  18. package/build/src/api/graphql/queries/AppQuery.js +53 -0
  19. package/build/src/api/graphql/queries/AppQuery.js.map +1 -0
  20. package/build/src/api/graphql/queries/UserQuery.js +59 -0
  21. package/build/src/api/graphql/queries/UserQuery.js.map +1 -0
  22. package/build/src/api/graphql/types/App.js +31 -0
  23. package/build/src/api/graphql/types/App.js.map +1 -0
  24. package/build/src/api/rest/cache/FileSystemCache.js +93 -0
  25. package/build/src/api/rest/cache/FileSystemCache.js.map +1 -0
  26. package/build/src/api/rest/cache/response.js +40 -0
  27. package/build/src/api/rest/cache/response.js.map +1 -0
  28. package/build/src/api/rest/cache/wrapFetchWithCache.js +189 -0
  29. package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -0
  30. package/build/src/api/rest/client.js +134 -0
  31. package/build/src/api/rest/client.js.map +1 -0
  32. package/build/src/api/rest/client.types.js +6 -0
  33. package/build/src/api/rest/client.types.js.map +1 -0
  34. package/build/src/api/rest/wrapFetchWithBaseUrl.js +31 -0
  35. package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -0
  36. package/build/src/api/rest/wrapFetchWithOffline.js +22 -0
  37. package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -0
  38. package/build/src/api/rest/wrapFetchWithProgress.js +85 -0
  39. package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -0
  40. package/build/src/api/rest/wrapFetchWithProxy.js +35 -0
  41. package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -0
  42. package/build/src/api/settings.js +31 -0
  43. package/build/src/api/settings.js.map +1 -0
  44. package/build/src/api/updateDevelopmentSession.js +94 -0
  45. package/build/src/api/updateDevelopmentSession.js.map +1 -0
  46. package/build/src/api/user/UserSettings.js +91 -0
  47. package/build/src/api/user/UserSettings.js.map +1 -0
  48. package/build/src/api/user/actions.js +144 -0
  49. package/build/src/api/user/actions.js.map +1 -0
  50. package/build/src/api/user/expoSsoLauncher.js +172 -0
  51. package/build/src/api/user/expoSsoLauncher.js.map +1 -0
  52. package/build/src/api/user/otp.js +171 -0
  53. package/build/src/api/user/otp.js.map +1 -0
  54. package/build/src/api/user/user.js +176 -0
  55. package/build/src/api/user/user.js.map +1 -0
  56. package/build/src/config/configAsync.js +174 -0
  57. package/build/src/config/configAsync.js.map +1 -0
  58. package/build/src/config/index.js +97 -0
  59. package/build/src/config/index.js.map +1 -0
  60. package/build/src/customize/customizeAsync.js +53 -0
  61. package/build/src/customize/customizeAsync.js.map +1 -0
  62. package/build/src/customize/generate.js +131 -0
  63. package/build/src/customize/generate.js.map +1 -0
  64. package/build/src/customize/index.js +49 -0
  65. package/build/src/customize/index.js.map +1 -0
  66. package/build/src/customize/resolveOptions.js +21 -0
  67. package/build/src/customize/resolveOptions.js.map +1 -0
  68. package/build/src/customize/templates.js +147 -0
  69. package/build/src/customize/templates.js.map +1 -0
  70. package/build/src/customize/typescript.js +77 -0
  71. package/build/src/customize/typescript.js.map +1 -0
  72. package/build/src/export/createMetadataJson.js +49 -0
  73. package/build/src/export/createMetadataJson.js.map +1 -0
  74. package/build/src/export/embed/exportEmbedAsync.js +310 -0
  75. package/build/src/export/embed/exportEmbedAsync.js.map +1 -0
  76. package/build/src/export/embed/index.js +139 -0
  77. package/build/src/export/embed/index.js.map +1 -0
  78. package/build/src/export/embed/resolveOptions.js +67 -0
  79. package/build/src/export/embed/resolveOptions.js.map +1 -0
  80. package/build/src/export/embed/xcodeCompilerLogger.js +121 -0
  81. package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -0
  82. package/build/src/export/exportApp.js +279 -0
  83. package/build/src/export/exportApp.js.map +1 -0
  84. package/build/src/export/exportAssets.js +214 -0
  85. package/build/src/export/exportAssets.js.map +1 -0
  86. package/build/src/export/exportAsync.js +85 -0
  87. package/build/src/export/exportAsync.js.map +1 -0
  88. package/build/src/export/exportHermes.js +159 -0
  89. package/build/src/export/exportHermes.js.map +1 -0
  90. package/build/src/export/exportStaticAsync.js +348 -0
  91. package/build/src/export/exportStaticAsync.js.map +1 -0
  92. package/build/src/export/favicon.js +132 -0
  93. package/build/src/export/favicon.js.map +1 -0
  94. package/build/src/export/getPublicExpoManifest.js +37 -0
  95. package/build/src/export/getPublicExpoManifest.js.map +1 -0
  96. package/build/src/export/getResolvedLocales.js +50 -0
  97. package/build/src/export/getResolvedLocales.js.map +1 -0
  98. package/build/src/export/html.js +29 -0
  99. package/build/src/export/html.js.map +1 -0
  100. package/build/src/export/index.js +115 -0
  101. package/build/src/export/index.js.map +1 -0
  102. package/build/src/export/metroAssetLocalPath.js +124 -0
  103. package/build/src/export/metroAssetLocalPath.js.map +1 -0
  104. package/build/src/export/persistMetroAssets.js +228 -0
  105. package/build/src/export/persistMetroAssets.js.map +1 -0
  106. package/build/src/export/publicFolder.js +54 -0
  107. package/build/src/export/publicFolder.js.map +1 -0
  108. package/build/src/export/resolveOptions.js +81 -0
  109. package/build/src/export/resolveOptions.js.map +1 -0
  110. package/build/src/export/saveAssets.js +195 -0
  111. package/build/src/export/saveAssets.js.map +1 -0
  112. package/build/src/export/web/exportWebAsync.js +55 -0
  113. package/build/src/export/web/exportWebAsync.js.map +1 -0
  114. package/build/src/export/web/index.js +88 -0
  115. package/build/src/export/web/index.js.map +1 -0
  116. package/build/src/export/web/resolveOptions.js +16 -0
  117. package/build/src/export/web/resolveOptions.js.map +1 -0
  118. package/build/src/export/writeContents.js +31 -0
  119. package/build/src/export/writeContents.js.map +1 -0
  120. package/build/src/graphql/generated.js +499 -0
  121. package/build/src/graphql/generated.js.map +1 -0
  122. package/build/src/install/applyPlugins.js +76 -0
  123. package/build/src/install/applyPlugins.js.map +1 -0
  124. package/build/src/install/checkPackages.js +110 -0
  125. package/build/src/install/checkPackages.js.map +1 -0
  126. package/build/src/install/fixPackages.js +107 -0
  127. package/build/src/install/fixPackages.js.map +1 -0
  128. package/build/src/install/index.js +59 -0
  129. package/build/src/install/index.js.map +1 -0
  130. package/build/src/install/installAsync.js +192 -0
  131. package/build/src/install/installAsync.js.map +1 -0
  132. package/build/src/install/installExpoPackage.js +112 -0
  133. package/build/src/install/installExpoPackage.js.map +1 -0
  134. package/build/src/install/resolveOptions.js +56 -0
  135. package/build/src/install/resolveOptions.js.map +1 -0
  136. package/build/src/install/utils/autoAddConfigPlugins.js +86 -0
  137. package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -0
  138. package/build/src/lint/ESlintPrerequisite.js +174 -0
  139. package/build/src/lint/ESlintPrerequisite.js.map +1 -0
  140. package/build/src/lint/index.js +66 -0
  141. package/build/src/lint/index.js.map +1 -0
  142. package/build/src/lint/lintAsync.js +33 -0
  143. package/build/src/lint/lintAsync.js.map +1 -0
  144. package/build/src/log.js +86 -0
  145. package/build/src/log.js.map +1 -0
  146. package/build/src/login/index.js +84 -0
  147. package/build/src/login/index.js.map +1 -0
  148. package/build/src/logout/index.js +66 -0
  149. package/build/src/logout/index.js.map +1 -0
  150. package/build/src/prebuild/clearNativeFolder.js +190 -0
  151. package/build/src/prebuild/clearNativeFolder.js.map +1 -0
  152. package/build/src/prebuild/configureProjectAsync.js +103 -0
  153. package/build/src/prebuild/configureProjectAsync.js.map +1 -0
  154. package/build/src/prebuild/copyTemplateFiles.js +91 -0
  155. package/build/src/prebuild/copyTemplateFiles.js.map +1 -0
  156. package/build/src/prebuild/ensureConfigAsync.js +119 -0
  157. package/build/src/prebuild/ensureConfigAsync.js.map +1 -0
  158. package/build/src/prebuild/index.js +118 -0
  159. package/build/src/prebuild/index.js.map +1 -0
  160. package/build/src/prebuild/prebuildAsync.js +170 -0
  161. package/build/src/prebuild/prebuildAsync.js.map +1 -0
  162. package/build/src/prebuild/renameTemplateAppName.js +124 -0
  163. package/build/src/prebuild/renameTemplateAppName.js.map +1 -0
  164. package/build/src/prebuild/resolveOptions.js +164 -0
  165. package/build/src/prebuild/resolveOptions.js.map +1 -0
  166. package/build/src/prebuild/resolveTemplate.js +229 -0
  167. package/build/src/prebuild/resolveTemplate.js.map +1 -0
  168. package/build/src/prebuild/updateFromTemplate.js +143 -0
  169. package/build/src/prebuild/updateFromTemplate.js.map +1 -0
  170. package/build/src/prebuild/updatePackageJson.js +284 -0
  171. package/build/src/prebuild/updatePackageJson.js.map +1 -0
  172. package/build/src/prebuild/validateTemplatePlatforms.js +81 -0
  173. package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -0
  174. package/build/src/register/index.js +66 -0
  175. package/build/src/register/index.js.map +1 -0
  176. package/build/src/register/registerAsync.js +37 -0
  177. package/build/src/register/registerAsync.js.map +1 -0
  178. package/build/src/run/android/index.js +129 -0
  179. package/build/src/run/android/index.js.map +1 -0
  180. package/build/src/run/android/resolveDevice.js +26 -0
  181. package/build/src/run/android/resolveDevice.js.map +1 -0
  182. package/build/src/run/android/resolveGradlePropsAsync.js +64 -0
  183. package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -0
  184. package/build/src/run/android/resolveInstallApkName.js +65 -0
  185. package/build/src/run/android/resolveInstallApkName.js.map +1 -0
  186. package/build/src/run/android/resolveLaunchProps.js +41 -0
  187. package/build/src/run/android/resolveLaunchProps.js.map +1 -0
  188. package/build/src/run/android/resolveOptions.js +30 -0
  189. package/build/src/run/android/resolveOptions.js.map +1 -0
  190. package/build/src/run/android/runAndroidAsync.js +95 -0
  191. package/build/src/run/android/runAndroidAsync.js.map +1 -0
  192. package/build/src/run/ensureNativeProject.js +51 -0
  193. package/build/src/run/ensureNativeProject.js.map +1 -0
  194. package/build/src/run/hints.js +40 -0
  195. package/build/src/run/hints.js.map +1 -0
  196. package/build/src/run/index.js +121 -0
  197. package/build/src/run/index.js.map +1 -0
  198. package/build/src/run/ios/XcodeBuild.js +336 -0
  199. package/build/src/run/ios/XcodeBuild.js.map +1 -0
  200. package/build/src/run/ios/XcodeBuild.types.js +6 -0
  201. package/build/src/run/ios/XcodeBuild.types.js.map +1 -0
  202. package/build/src/run/ios/appleDevice/AppleDevice.js +310 -0
  203. package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -0
  204. package/build/src/run/ios/appleDevice/ClientManager.js +204 -0
  205. package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -0
  206. package/build/src/run/ios/appleDevice/client/AFCClient.js +245 -0
  207. package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -0
  208. package/build/src/run/ios/appleDevice/client/DebugserverClient.js +146 -0
  209. package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -0
  210. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +112 -0
  211. package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -0
  212. package/build/src/run/ios/appleDevice/client/LockdowndClient.js +183 -0
  213. package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -0
  214. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +129 -0
  215. package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -0
  216. package/build/src/run/ios/appleDevice/client/ServiceClient.js +35 -0
  217. package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -0
  218. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +144 -0
  219. package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -0
  220. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +148 -0
  221. package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -0
  222. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +351 -0
  223. package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -0
  224. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +159 -0
  225. package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -0
  226. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +145 -0
  227. package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -0
  228. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +99 -0
  229. package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -0
  230. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +90 -0
  231. package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -0
  232. package/build/src/run/ios/codeSigning/Security.js +104 -0
  233. package/build/src/run/ios/codeSigning/Security.js.map +1 -0
  234. package/build/src/run/ios/codeSigning/configureCodeSigning.js +104 -0
  235. package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -0
  236. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +133 -0
  237. package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -0
  238. package/build/src/run/ios/codeSigning/settings.js +29 -0
  239. package/build/src/run/ios/codeSigning/settings.js.map +1 -0
  240. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +65 -0
  241. package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -0
  242. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +97 -0
  243. package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -0
  244. package/build/src/run/ios/index.js +126 -0
  245. package/build/src/run/ios/index.js.map +1 -0
  246. package/build/src/run/ios/launchApp.js +113 -0
  247. package/build/src/run/ios/launchApp.js.map +1 -0
  248. package/build/src/run/ios/options/appleDestinations.js +124 -0
  249. package/build/src/run/ios/options/appleDestinations.js.map +1 -0
  250. package/build/src/run/ios/options/promptDevice.js +60 -0
  251. package/build/src/run/ios/options/promptDevice.js.map +1 -0
  252. package/build/src/run/ios/options/resolveDevice.js +147 -0
  253. package/build/src/run/ios/options/resolveDevice.js.map +1 -0
  254. package/build/src/run/ios/options/resolveNativeScheme.js +142 -0
  255. package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -0
  256. package/build/src/run/ios/options/resolveOptions.js +50 -0
  257. package/build/src/run/ios/options/resolveOptions.js.map +1 -0
  258. package/build/src/run/ios/options/resolveXcodeProject.js +48 -0
  259. package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -0
  260. package/build/src/run/ios/runIosAsync.js +122 -0
  261. package/build/src/run/ios/runIosAsync.js.map +1 -0
  262. package/build/src/run/resolveBundlerProps.js +37 -0
  263. package/build/src/run/resolveBundlerProps.js.map +1 -0
  264. package/build/src/run/startBundler.js +116 -0
  265. package/build/src/run/startBundler.js.map +1 -0
  266. package/build/src/start/detectDevClient.js +32 -0
  267. package/build/src/start/detectDevClient.js.map +1 -0
  268. package/build/src/start/doctor/Prerequisite.js +55 -0
  269. package/build/src/start/doctor/Prerequisite.js.map +1 -0
  270. package/build/src/start/doctor/SecurityBinPrerequisite.js +36 -0
  271. package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -0
  272. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +103 -0
  273. package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -0
  274. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +102 -0
  275. package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -0
  276. package/build/src/start/doctor/apple/XcodePrerequisite.js +233 -0
  277. package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -0
  278. package/build/src/start/doctor/apple/XcrunPrerequisite.js +86 -0
  279. package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -0
  280. package/build/src/start/doctor/dependencies/bundledNativeModules.js +108 -0
  281. package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -0
  282. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +186 -0
  283. package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -0
  284. package/build/src/start/doctor/dependencies/getMissingPackages.js +100 -0
  285. package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -0
  286. package/build/src/start/doctor/dependencies/getVersionedPackages.js +157 -0
  287. package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -0
  288. package/build/src/start/doctor/dependencies/resolvePackages.js +90 -0
  289. package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -0
  290. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +200 -0
  291. package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -0
  292. package/build/src/start/doctor/ngrok/ExternalModule.js +218 -0
  293. package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -0
  294. package/build/src/start/doctor/ngrok/NgrokResolver.js +29 -0
  295. package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -0
  296. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +195 -0
  297. package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -0
  298. package/build/src/start/doctor/typescript/updateTSConfig.js +140 -0
  299. package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -0
  300. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +154 -0
  301. package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -0
  302. package/build/src/start/index.js +143 -0
  303. package/build/src/start/index.js.map +1 -0
  304. package/build/src/start/interface/KeyPressHandler.js +122 -0
  305. package/build/src/start/interface/KeyPressHandler.js.map +1 -0
  306. package/build/src/start/interface/commandsTable.js +235 -0
  307. package/build/src/start/interface/commandsTable.js.map +1 -0
  308. package/build/src/start/interface/interactiveActions.js +244 -0
  309. package/build/src/start/interface/interactiveActions.js.map +1 -0
  310. package/build/src/start/interface/startInterface.js +254 -0
  311. package/build/src/start/interface/startInterface.js.map +1 -0
  312. package/build/src/start/platforms/AppIdResolver.js +53 -0
  313. package/build/src/start/platforms/AppIdResolver.js.map +1 -0
  314. package/build/src/start/platforms/DeviceManager.js +70 -0
  315. package/build/src/start/platforms/DeviceManager.js.map +1 -0
  316. package/build/src/start/platforms/ExpoGoInstaller.js +163 -0
  317. package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -0
  318. package/build/src/start/platforms/PlatformManager.js +158 -0
  319. package/build/src/start/platforms/PlatformManager.js.map +1 -0
  320. package/build/src/start/platforms/android/ADBServer.js +136 -0
  321. package/build/src/start/platforms/android/ADBServer.js.map +1 -0
  322. package/build/src/start/platforms/android/AndroidAppIdResolver.js +52 -0
  323. package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -0
  324. package/build/src/start/platforms/android/AndroidDeviceManager.js +218 -0
  325. package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -0
  326. package/build/src/start/platforms/android/AndroidPlatformManager.js +38 -0
  327. package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -0
  328. package/build/src/start/platforms/android/AndroidSdk.js +68 -0
  329. package/build/src/start/platforms/android/AndroidSdk.js.map +1 -0
  330. package/build/src/start/platforms/android/activateWindow.js +113 -0
  331. package/build/src/start/platforms/android/activateWindow.js.map +1 -0
  332. package/build/src/start/platforms/android/adb.js +310 -0
  333. package/build/src/start/platforms/android/adb.js.map +1 -0
  334. package/build/src/start/platforms/android/adbReverse.js +121 -0
  335. package/build/src/start/platforms/android/adbReverse.js.map +1 -0
  336. package/build/src/start/platforms/android/emulator.js +175 -0
  337. package/build/src/start/platforms/android/emulator.js.map +1 -0
  338. package/build/src/start/platforms/android/getDevices.js +37 -0
  339. package/build/src/start/platforms/android/getDevices.js.map +1 -0
  340. package/build/src/start/platforms/android/gradle.js +110 -0
  341. package/build/src/start/platforms/android/gradle.js.map +1 -0
  342. package/build/src/start/platforms/android/promptAndroidDevice.js +62 -0
  343. package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -0
  344. package/build/src/start/platforms/ios/AppleAppIdResolver.js +74 -0
  345. package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -0
  346. package/build/src/start/platforms/ios/AppleDeviceManager.js +278 -0
  347. package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -0
  348. package/build/src/start/platforms/ios/ApplePlatformManager.js +34 -0
  349. package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -0
  350. package/build/src/start/platforms/ios/assertSystemRequirements.js +20 -0
  351. package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -0
  352. package/build/src/start/platforms/ios/devicectl.js +371 -0
  353. package/build/src/start/platforms/ios/devicectl.js.map +1 -0
  354. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +118 -0
  355. package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -0
  356. package/build/src/start/platforms/ios/getBestSimulator.js +131 -0
  357. package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -0
  358. package/build/src/start/platforms/ios/promptAppleDevice.js +68 -0
  359. package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -0
  360. package/build/src/start/platforms/ios/simctl.js +352 -0
  361. package/build/src/start/platforms/ios/simctl.js.map +1 -0
  362. package/build/src/start/platforms/ios/simctlLogging.js +273 -0
  363. package/build/src/start/platforms/ios/simctlLogging.js.map +1 -0
  364. package/build/src/start/platforms/ios/xcrun.js +61 -0
  365. package/build/src/start/platforms/ios/xcrun.js.map +1 -0
  366. package/build/src/start/project/devices.js +82 -0
  367. package/build/src/start/project/devices.js.map +1 -0
  368. package/build/src/start/project/dotExpo.js +100 -0
  369. package/build/src/start/project/dotExpo.js.map +1 -0
  370. package/build/src/start/project/settings.js +15 -0
  371. package/build/src/start/project/settings.js.map +1 -0
  372. package/build/src/start/resolveOptions.js +160 -0
  373. package/build/src/start/resolveOptions.js.map +1 -0
  374. package/build/src/start/server/AsyncNgrok.js +263 -0
  375. package/build/src/start/server/AsyncNgrok.js.map +1 -0
  376. package/build/src/start/server/BundlerDevServer.js +395 -0
  377. package/build/src/start/server/BundlerDevServer.js.map +1 -0
  378. package/build/src/start/server/DevServerManager.js +256 -0
  379. package/build/src/start/server/DevServerManager.js.map +1 -0
  380. package/build/src/start/server/DevToolsPluginManager.js +80 -0
  381. package/build/src/start/server/DevToolsPluginManager.js.map +1 -0
  382. package/build/src/start/server/DevelopmentSession.js +138 -0
  383. package/build/src/start/server/DevelopmentSession.js.map +1 -0
  384. package/build/src/start/server/ReactDevToolsProxy.js +99 -0
  385. package/build/src/start/server/ReactDevToolsProxy.js.map +1 -0
  386. package/build/src/start/server/UrlCreator.js +209 -0
  387. package/build/src/start/server/UrlCreator.js.map +1 -0
  388. package/build/src/start/server/getStaticRenderFunctions.js +157 -0
  389. package/build/src/start/server/getStaticRenderFunctions.js.map +1 -0
  390. package/build/src/start/server/metro/MetroBundlerDevServer.js +982 -0
  391. package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -0
  392. package/build/src/start/server/metro/MetroTerminalReporter.js +191 -0
  393. package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -0
  394. package/build/src/start/server/metro/TerminalReporter.js +163 -0
  395. package/build/src/start/server/metro/TerminalReporter.js.map +1 -0
  396. package/build/src/start/server/metro/TerminalReporter.types.js +6 -0
  397. package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -0
  398. package/build/src/start/server/metro/createExpoMetroResolver.js +251 -0
  399. package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -0
  400. package/build/src/start/server/metro/createJResolver.js +222 -0
  401. package/build/src/start/server/metro/createJResolver.js.map +1 -0
  402. package/build/src/start/server/metro/createServerRouteMiddleware.js +137 -0
  403. package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -0
  404. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +47 -0
  405. package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -0
  406. package/build/src/start/server/metro/debugging/MessageHandler.js +30 -0
  407. package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -0
  408. package/build/src/start/server/metro/debugging/attachAtlas.js +97 -0
  409. package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -0
  410. package/build/src/start/server/metro/debugging/createDebugMiddleware.js +52 -0
  411. package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -0
  412. package/build/src/start/server/metro/debugging/createHandlersFactory.js +64 -0
  413. package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -0
  414. package/build/src/start/server/metro/debugging/getDebuggerType.js +18 -0
  415. package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -0
  416. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +34 -0
  417. package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -0
  418. package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js +26 -0
  419. package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js.map +1 -0
  420. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +28 -0
  421. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
  422. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +25 -0
  423. package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
  424. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +31 -0
  425. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
  426. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +47 -0
  427. package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -0
  428. package/build/src/start/server/metro/debugging/pageIsSupported.js +17 -0
  429. package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -0
  430. package/build/src/start/server/metro/debugging/types.js +6 -0
  431. package/build/src/start/server/metro/debugging/types.js.map +1 -0
  432. package/build/src/start/server/metro/externals.js +92 -0
  433. package/build/src/start/server/metro/externals.js.map +1 -0
  434. package/build/src/start/server/metro/fetchRouterManifest.js +79 -0
  435. package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -0
  436. package/build/src/start/server/metro/formatFileCandidates.js +82 -0
  437. package/build/src/start/server/metro/formatFileCandidates.js.map +1 -0
  438. package/build/src/start/server/metro/getCssModulesFromBundler.js +109 -0
  439. package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -0
  440. package/build/src/start/server/metro/instantiateMetro.js +276 -0
  441. package/build/src/start/server/metro/instantiateMetro.js.map +1 -0
  442. package/build/src/start/server/metro/metroErrorInterface.js +279 -0
  443. package/build/src/start/server/metro/metroErrorInterface.js.map +1 -0
  444. package/build/src/start/server/metro/metroErrors.js +23 -0
  445. package/build/src/start/server/metro/metroErrors.js.map +1 -0
  446. package/build/src/start/server/metro/metroPrivateServer.js +26 -0
  447. package/build/src/start/server/metro/metroPrivateServer.js.map +1 -0
  448. package/build/src/start/server/metro/metroVirtualModules.js +90 -0
  449. package/build/src/start/server/metro/metroVirtualModules.js.map +1 -0
  450. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +60 -0
  451. package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -0
  452. package/build/src/start/server/metro/router.js +128 -0
  453. package/build/src/start/server/metro/router.js.map +1 -0
  454. package/build/src/start/server/metro/runServer-fork.js +153 -0
  455. package/build/src/start/server/metro/runServer-fork.js.map +1 -0
  456. package/build/src/start/server/metro/serializeHtml.js +72 -0
  457. package/build/src/start/server/metro/serializeHtml.js.map +1 -0
  458. package/build/src/start/server/metro/symbolicate.js +6 -0
  459. package/build/src/start/server/metro/symbolicate.js.map +1 -0
  460. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +97 -0
  461. package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -0
  462. package/build/src/start/server/metro/withMetroMultiPlatform.js +517 -0
  463. package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -0
  464. package/build/src/start/server/metro/withMetroResolvers.js +320 -0
  465. package/build/src/start/server/metro/withMetroResolvers.js.map +1 -0
  466. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +30 -0
  467. package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -0
  468. package/build/src/start/server/middleware/CorsMiddleware.js +59 -0
  469. package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -0
  470. package/build/src/start/server/middleware/CreateFileMiddleware.js +126 -0
  471. package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -0
  472. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +76 -0
  473. package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -0
  474. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +274 -0
  475. package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -0
  476. package/build/src/start/server/middleware/ExpoMiddleware.js +115 -0
  477. package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -0
  478. package/build/src/start/server/middleware/FaviconMiddleware.js +47 -0
  479. package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -0
  480. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +27 -0
  481. package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -0
  482. package/build/src/start/server/middleware/InterstitialPageMiddleware.js +118 -0
  483. package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -0
  484. package/build/src/start/server/middleware/ManifestMiddleware.js +362 -0
  485. package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -0
  486. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +79 -0
  487. package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -0
  488. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +102 -0
  489. package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -0
  490. package/build/src/start/server/middleware/ServeStaticMiddleware.js +83 -0
  491. package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -0
  492. package/build/src/start/server/middleware/inspector/JsInspector.js +113 -0
  493. package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -0
  494. package/build/src/start/server/middleware/inspector/LaunchBrowser.js +75 -0
  495. package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -0
  496. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +15 -0
  497. package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -0
  498. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +104 -0
  499. package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -0
  500. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +125 -0
  501. package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -0
  502. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +146 -0
  503. package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -0
  504. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +91 -0
  505. package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -0
  506. package/build/src/start/server/middleware/inspector/middlwareMutations.js +26 -0
  507. package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -0
  508. package/build/src/start/server/middleware/metroOptions.js +213 -0
  509. package/build/src/start/server/middleware/metroOptions.js.map +1 -0
  510. package/build/src/start/server/middleware/mutations.js +26 -0
  511. package/build/src/start/server/middleware/mutations.js.map +1 -0
  512. package/build/src/start/server/middleware/resolveAssets.js +146 -0
  513. package/build/src/start/server/middleware/resolveAssets.js.map +1 -0
  514. package/build/src/start/server/middleware/resolvePlatform.js +61 -0
  515. package/build/src/start/server/middleware/resolvePlatform.js.map +1 -0
  516. package/build/src/start/server/middleware/server.types.js +6 -0
  517. package/build/src/start/server/middleware/server.types.js.map +1 -0
  518. package/build/src/start/server/middleware/suppressErrorMiddleware.js +19 -0
  519. package/build/src/start/server/middleware/suppressErrorMiddleware.js.map +1 -0
  520. package/build/src/start/server/openPlatforms.js +31 -0
  521. package/build/src/start/server/openPlatforms.js.map +1 -0
  522. package/build/src/start/server/platformBundlers.js +40 -0
  523. package/build/src/start/server/platformBundlers.js.map +1 -0
  524. package/build/src/start/server/serverLogLikeMetro.js +255 -0
  525. package/build/src/start/server/serverLogLikeMetro.js.map +1 -0
  526. package/build/src/start/server/type-generation/expo-env.js +47 -0
  527. package/build/src/start/server/type-generation/expo-env.js.map +1 -0
  528. package/build/src/start/server/type-generation/routes.js +531 -0
  529. package/build/src/start/server/type-generation/routes.js.map +1 -0
  530. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +77 -0
  531. package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -0
  532. package/build/src/start/server/type-generation/tsconfig.js +114 -0
  533. package/build/src/start/server/type-generation/tsconfig.js.map +1 -0
  534. package/build/src/start/server/webTemplate.js +108 -0
  535. package/build/src/start/server/webTemplate.js.map +1 -0
  536. package/build/src/start/server/webpack/WebpackBundlerDevServer.js +315 -0
  537. package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -0
  538. package/build/src/start/server/webpack/compile.js +97 -0
  539. package/build/src/start/server/webpack/compile.js.map +1 -0
  540. package/build/src/start/server/webpack/formatWebpackMessages.js +104 -0
  541. package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -0
  542. package/build/src/start/server/webpack/resolveFromProject.js +57 -0
  543. package/build/src/start/server/webpack/resolveFromProject.js.map +1 -0
  544. package/build/src/start/server/webpack/tls.js +122 -0
  545. package/build/src/start/server/webpack/tls.js.map +1 -0
  546. package/build/src/start/startAsync.js +207 -0
  547. package/build/src/start/startAsync.js.map +1 -0
  548. package/build/src/utils/FileNotifier.js +135 -0
  549. package/build/src/utils/FileNotifier.js.map +1 -0
  550. package/build/src/utils/analytics/getDevClientProperties.js +73 -0
  551. package/build/src/utils/analytics/getDevClientProperties.js.map +1 -0
  552. package/build/src/utils/analytics/getMetroDebugProperties.js +18 -0
  553. package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -0
  554. package/build/src/utils/analytics/getMetroProperties.js +31 -0
  555. package/build/src/utils/analytics/getMetroProperties.js.map +1 -0
  556. package/build/src/utils/analytics/metroDebuggerMiddleware.js +63 -0
  557. package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -0
  558. package/build/src/utils/ansi.js +20 -0
  559. package/build/src/utils/ansi.js.map +1 -0
  560. package/build/src/utils/args.js +131 -0
  561. package/build/src/utils/args.js.map +1 -0
  562. package/build/src/utils/array.js +74 -0
  563. package/build/src/utils/array.js.map +1 -0
  564. package/build/src/utils/cocoapods.js +250 -0
  565. package/build/src/utils/cocoapods.js.map +1 -0
  566. package/build/src/utils/codesigning.js +393 -0
  567. package/build/src/utils/codesigning.js.map +1 -0
  568. package/build/src/utils/createFileTransform.js +65 -0
  569. package/build/src/utils/createFileTransform.js.map +1 -0
  570. package/build/src/utils/delay.js +46 -0
  571. package/build/src/utils/delay.js.map +1 -0
  572. package/build/src/utils/dir.js +73 -0
  573. package/build/src/utils/dir.js.map +1 -0
  574. package/build/src/utils/downloadAppAsync.js +106 -0
  575. package/build/src/utils/downloadAppAsync.js.map +1 -0
  576. package/build/src/utils/downloadExpoGoAsync.js +137 -0
  577. package/build/src/utils/downloadExpoGoAsync.js.map +1 -0
  578. package/build/src/utils/editor.js +107 -0
  579. package/build/src/utils/editor.js.map +1 -0
  580. package/build/src/utils/env.js +160 -0
  581. package/build/src/utils/env.js.map +1 -0
  582. package/build/src/utils/errors.js +93 -0
  583. package/build/src/utils/errors.js.map +1 -0
  584. package/build/src/utils/exit.js +72 -0
  585. package/build/src/utils/exit.js.map +1 -0
  586. package/build/src/utils/findUp.js +57 -0
  587. package/build/src/utils/findUp.js.map +1 -0
  588. package/build/src/utils/fn.js +40 -0
  589. package/build/src/utils/fn.js.map +1 -0
  590. package/build/src/utils/getOrPromptApplicationId.js +219 -0
  591. package/build/src/utils/getOrPromptApplicationId.js.map +1 -0
  592. package/build/src/utils/getRunningProcess.js +134 -0
  593. package/build/src/utils/getRunningProcess.js.map +1 -0
  594. package/build/src/utils/git.js +127 -0
  595. package/build/src/utils/git.js.map +1 -0
  596. package/build/src/utils/glob.js +76 -0
  597. package/build/src/utils/glob.js.map +1 -0
  598. package/build/src/utils/interactive.js +14 -0
  599. package/build/src/utils/interactive.js.map +1 -0
  600. package/build/src/utils/ip.js +25 -0
  601. package/build/src/utils/ip.js.map +1 -0
  602. package/build/src/utils/isModuleSymlinked.js +52 -0
  603. package/build/src/utils/isModuleSymlinked.js.map +1 -0
  604. package/build/src/utils/link.js +51 -0
  605. package/build/src/utils/link.js.map +1 -0
  606. package/build/src/utils/mergeGitIgnorePaths.js +171 -0
  607. package/build/src/utils/mergeGitIgnorePaths.js.map +1 -0
  608. package/build/src/utils/modifyConfigAsync.js +106 -0
  609. package/build/src/utils/modifyConfigAsync.js.map +1 -0
  610. package/build/src/utils/modifyConfigPlugins.js +78 -0
  611. package/build/src/utils/modifyConfigPlugins.js.map +1 -0
  612. package/build/src/utils/nodeEnv.js +18 -0
  613. package/build/src/utils/nodeEnv.js.map +1 -0
  614. package/build/src/utils/nodeModules.js +50 -0
  615. package/build/src/utils/nodeModules.js.map +1 -0
  616. package/build/src/utils/npm.js +183 -0
  617. package/build/src/utils/npm.js.map +1 -0
  618. package/build/src/utils/obj.js +53 -0
  619. package/build/src/utils/obj.js.map +1 -0
  620. package/build/src/utils/open.js +35 -0
  621. package/build/src/utils/open.js.map +1 -0
  622. package/build/src/utils/ora.js +107 -0
  623. package/build/src/utils/ora.js.map +1 -0
  624. package/build/src/utils/plist.js +103 -0
  625. package/build/src/utils/plist.js.map +1 -0
  626. package/build/src/utils/port.js +198 -0
  627. package/build/src/utils/port.js.map +1 -0
  628. package/build/src/utils/profile.js +90 -0
  629. package/build/src/utils/profile.js.map +1 -0
  630. package/build/src/utils/progress.js +71 -0
  631. package/build/src/utils/progress.js.map +1 -0
  632. package/build/src/utils/prompts.js +133 -0
  633. package/build/src/utils/prompts.js.map +1 -0
  634. package/build/src/utils/resolveArgs.js +149 -0
  635. package/build/src/utils/resolveArgs.js.map +1 -0
  636. package/build/src/utils/scheme.js +204 -0
  637. package/build/src/utils/scheme.js.map +1 -0
  638. package/build/src/utils/strings.js +31 -0
  639. package/build/src/utils/strings.js.map +1 -0
  640. package/build/src/utils/tar.js +95 -0
  641. package/build/src/utils/tar.js.map +1 -0
  642. package/build/src/utils/telemetry/DetachedClient.js +90 -0
  643. package/build/src/utils/telemetry/DetachedClient.js.map +1 -0
  644. package/build/src/utils/telemetry/RudderClient.js +101 -0
  645. package/build/src/utils/telemetry/RudderClient.js.map +1 -0
  646. package/build/src/utils/telemetry/flushDetached.js +44 -0
  647. package/build/src/utils/telemetry/flushDetached.js.map +1 -0
  648. package/build/src/utils/telemetry/getContext.js +112 -0
  649. package/build/src/utils/telemetry/getContext.js.map +1 -0
  650. package/build/src/utils/telemetry/index.js +37 -0
  651. package/build/src/utils/telemetry/index.js.map +1 -0
  652. package/build/src/utils/telemetry/types.js +6 -0
  653. package/build/src/utils/telemetry/types.js.map +1 -0
  654. package/build/src/utils/template.js +46 -0
  655. package/build/src/utils/template.js.map +1 -0
  656. package/build/src/utils/terminal.js +13 -0
  657. package/build/src/utils/terminal.js.map +1 -0
  658. package/build/src/utils/tsconfig/evaluateTsConfig.js +79 -0
  659. package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -0
  660. package/build/src/utils/tsconfig/loadTsConfigPaths.js +81 -0
  661. package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -0
  662. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +92 -0
  663. package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -0
  664. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +60 -0
  665. package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -0
  666. package/build/src/utils/url.js +83 -0
  667. package/build/src/utils/url.js.map +1 -0
  668. package/build/src/utils/validateApplicationId.js +198 -0
  669. package/build/src/utils/validateApplicationId.js.map +1 -0
  670. package/build/src/utils/variadic.js +69 -0
  671. package/build/src/utils/variadic.js.map +1 -0
  672. package/build/src/whoami/index.js +65 -0
  673. package/build/src/whoami/index.js.map +1 -0
  674. package/build/src/whoami/whoamiAsync.js +71 -0
  675. package/build/src/whoami/whoamiAsync.js.map +1 -0
  676. package/package.json +175 -0
  677. package/static/canary/react-is/cjs/react-is.development.js +200 -0
  678. package/static/canary/react-is/cjs/react-is.production.js +130 -0
  679. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-dev.js +26803 -0
  680. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-prod.js +10414 -0
  681. package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-profiling.js +11127 -0
  682. package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +27227 -0
  683. package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +10635 -0
  684. package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +11347 -0
  685. package/static/canary/scheduler/cjs/scheduler-unstable_mock.development.js +711 -0
  686. package/static/canary/scheduler/cjs/scheduler-unstable_mock.production.js +415 -0
  687. package/static/canary/scheduler/cjs/scheduler-unstable_post_task.development.js +208 -0
  688. package/static/canary/scheduler/cjs/scheduler-unstable_post_task.production.js +145 -0
  689. package/static/canary/scheduler/cjs/scheduler.development.js +625 -0
  690. package/static/canary/scheduler/cjs/scheduler.native.development.js +538 -0
  691. package/static/canary/scheduler/cjs/scheduler.native.production.js +329 -0
  692. package/static/canary/scheduler/cjs/scheduler.production.js +341 -0
  693. package/static/loading-page/index.html +363 -0
  694. package/static/react-devtools-page/index.html +113 -0
  695. package/static/react-devtools-page/standalone.js +3 -0
  696. package/static/shims/react-native-web/dist/cjs/exports/AppRegistry/AppContainer.js +13 -0
  697. package/static/shims/react-native-web/dist/cjs/exports/BackHandler/index.js +10 -0
  698. package/static/shims/react-native-web/dist/exports/AppRegistry/AppContainer.js +12 -0
  699. package/static/shims/react-native-web/dist/exports/BackHandler/index.js +7 -0
  700. package/static/template/babel.config.js +6 -0
  701. package/static/template/index.html +36 -0
  702. package/static/template/metro.config.js +7 -0
  703. package/static/template/serve.json +13 -0
  704. package/static/template/webpack.config.js +7 -0
@@ -0,0 +1,982 @@
1
+ /**
2
+ * Copyright © 2022 650 Industries.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */ "use strict";
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ function _export(target, all) {
11
+ for(var name in all)Object.defineProperty(target, name, {
12
+ enumerable: true,
13
+ get: all[name]
14
+ });
15
+ }
16
+ _export(exports, {
17
+ MetroBundlerDevServer: ()=>MetroBundlerDevServer,
18
+ getDeepLinkHandler: ()=>getDeepLinkHandler
19
+ });
20
+ function _config() {
21
+ const data = require("@expo/config");
22
+ _config = function() {
23
+ return data;
24
+ };
25
+ return data;
26
+ }
27
+ function _env() {
28
+ const data = /*#__PURE__*/ _interopRequireWildcard(require("@expo/env"));
29
+ _env = function() {
30
+ return data;
31
+ };
32
+ return data;
33
+ }
34
+ function _assert() {
35
+ const data = /*#__PURE__*/ _interopRequireDefault(require("assert"));
36
+ _assert = function() {
37
+ return data;
38
+ };
39
+ return data;
40
+ }
41
+ function _chalk() {
42
+ const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
43
+ _chalk = function() {
44
+ return data;
45
+ };
46
+ return data;
47
+ }
48
+ function _baseJSBundle() {
49
+ const data = /*#__PURE__*/ _interopRequireDefault(require("metro/src/DeltaBundler/Serializers/baseJSBundle"));
50
+ _baseJSBundle = function() {
51
+ return data;
52
+ };
53
+ return data;
54
+ }
55
+ function _sourceMapGenerator() {
56
+ const data = require("metro/src/DeltaBundler/Serializers/sourceMapGenerator");
57
+ _sourceMapGenerator = function() {
58
+ return data;
59
+ };
60
+ return data;
61
+ }
62
+ function _bundleToString() {
63
+ const data = /*#__PURE__*/ _interopRequireDefault(require("metro/src/lib/bundleToString"));
64
+ _bundleToString = function() {
65
+ return data;
66
+ };
67
+ return data;
68
+ }
69
+ function _path() {
70
+ const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
71
+ _path = function() {
72
+ return data;
73
+ };
74
+ return data;
75
+ }
76
+ const _createServerRouteMiddleware = require("./createServerRouteMiddleware");
77
+ const _fetchRouterManifest = require("./fetchRouterManifest");
78
+ const _instantiateMetro = require("./instantiateMetro");
79
+ const _metroErrorInterface = require("./metroErrorInterface");
80
+ const _metroPrivateServer = require("./metroPrivateServer");
81
+ const _metroWatchTypeScriptFiles = require("./metroWatchTypeScriptFiles");
82
+ const _router = require("./router");
83
+ const _serializeHtml = require("./serializeHtml");
84
+ const _waitForMetroToObserveTypeScriptFile = require("./waitForMetroToObserveTypeScriptFile");
85
+ const _log = require("../../../log");
86
+ const _getDevClientProperties = /*#__PURE__*/ _interopRequireDefault(require("../../../utils/analytics/getDevClientProperties"));
87
+ const _env1 = require("../../../utils/env");
88
+ const _errors = require("../../../utils/errors");
89
+ const _port = require("../../../utils/port");
90
+ const _telemetry = require("../../../utils/telemetry");
91
+ const _bundlerDevServer = require("../BundlerDevServer");
92
+ const _getStaticRenderFunctions = require("../getStaticRenderFunctions");
93
+ const _contextModuleSourceMapsMiddleware = require("../middleware/ContextModuleSourceMapsMiddleware");
94
+ const _createFileMiddleware = require("../middleware/CreateFileMiddleware");
95
+ const _devToolsPluginMiddleware = require("../middleware/DevToolsPluginMiddleware");
96
+ const _faviconMiddleware = require("../middleware/FaviconMiddleware");
97
+ const _historyFallbackMiddleware = require("../middleware/HistoryFallbackMiddleware");
98
+ const _interstitialPageMiddleware = require("../middleware/InterstitialPageMiddleware");
99
+ const _manifestMiddleware = require("../middleware/ManifestMiddleware");
100
+ const _reactDevToolsPageMiddleware = require("../middleware/ReactDevToolsPageMiddleware");
101
+ const _runtimeRedirectMiddleware = require("../middleware/RuntimeRedirectMiddleware");
102
+ const _serveStaticMiddleware = require("../middleware/ServeStaticMiddleware");
103
+ const _metroOptions = require("../middleware/metroOptions");
104
+ const _mutations = require("../middleware/mutations");
105
+ const _startTypescriptTypeGeneration = require("../type-generation/startTypescriptTypeGeneration");
106
+ function _interopRequireDefault(obj) {
107
+ return obj && obj.__esModule ? obj : {
108
+ default: obj
109
+ };
110
+ }
111
+ function _getRequireWildcardCache(nodeInterop) {
112
+ if (typeof WeakMap !== "function") return null;
113
+ var cacheBabelInterop = new WeakMap();
114
+ var cacheNodeInterop = new WeakMap();
115
+ return (_getRequireWildcardCache = function(nodeInterop) {
116
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
117
+ })(nodeInterop);
118
+ }
119
+ function _interopRequireWildcard(obj, nodeInterop) {
120
+ if (!nodeInterop && obj && obj.__esModule) {
121
+ return obj;
122
+ }
123
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
124
+ return {
125
+ default: obj
126
+ };
127
+ }
128
+ var cache = _getRequireWildcardCache(nodeInterop);
129
+ if (cache && cache.has(obj)) {
130
+ return cache.get(obj);
131
+ }
132
+ var newObj = {};
133
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
134
+ for(var key in obj){
135
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
136
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
137
+ if (desc && (desc.get || desc.set)) {
138
+ Object.defineProperty(newObj, key, desc);
139
+ } else {
140
+ newObj[key] = obj[key];
141
+ }
142
+ }
143
+ }
144
+ newObj.default = obj;
145
+ if (cache) {
146
+ cache.set(obj, newObj);
147
+ }
148
+ return newObj;
149
+ }
150
+ const debug = require("debug")("expo:start:server:metro");
151
+ const getGraphId = require("metro/src/lib/getGraphId");
152
+ /** Default port to use for apps running in Expo Go. */ const EXPO_GO_METRO_PORT = 8081;
153
+ /** Default port to use for apps that run in standard React Native projects or Expo Dev Clients. */ const DEV_CLIENT_METRO_PORT = 8081;
154
+ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
155
+ metro = null;
156
+ get name() {
157
+ return "metro";
158
+ }
159
+ async resolvePortAsync(options = {}) {
160
+ var // If the manually defined port is busy then an error should be thrown...
161
+ _port1;
162
+ const port = (_port1 = options.port) != null ? _port1 : // Otherwise use the default port based on the runtime target.
163
+ (options.devClient ? Number(process.env.RCT_METRO_PORT) || DEV_CLIENT_METRO_PORT : await (0, _port.getFreePortAsync)(EXPO_GO_METRO_PORT));
164
+ return port;
165
+ }
166
+ async exportExpoRouterApiRoutesAsync({ includeSourceMaps , outputDir , prerenderManifest }) {
167
+ const { routerRoot } = this.instanceMetroOptions;
168
+ (0, _assert().default)(routerRoot != null, "The server must be started before calling exportExpoRouterApiRoutesAsync.");
169
+ const appDir = _path().default.join(this.projectRoot, routerRoot);
170
+ const manifest = await this.getExpoRouterRoutesManifestAsync({
171
+ appDir
172
+ });
173
+ const files = new Map();
174
+ for (const route of manifest.apiRoutes){
175
+ const filepath = _path().default.join(appDir, route.file);
176
+ const contents = await this.bundleApiRoute(filepath);
177
+ const artifactFilename = _path().default.join(outputDir, _path().default.relative(appDir, filepath.replace(/\.[tj]sx?$/, ".js")));
178
+ if (contents) {
179
+ let src = contents.src;
180
+ if (includeSourceMaps && contents.map) {
181
+ // TODO(kitten): Merge the source map transformer in the future
182
+ // https://github.com/expo/expo/blob/0dffdb15/packages/%40expo/metro-config/src/serializer/serializeChunks.ts#L422-L439
183
+ // Alternatively, check whether `sourcesRoot` helps here
184
+ const artifactBasename = encodeURIComponent(_path().default.basename(artifactFilename) + ".map");
185
+ src = src.replace(/\/\/# sourceMappingURL=.*/g, `//# sourceMappingURL=${artifactBasename}`);
186
+ const parsedMap = JSON.parse(contents.map);
187
+ files.set(artifactFilename + ".map", {
188
+ contents: JSON.stringify({
189
+ version: parsedMap.version,
190
+ sources: parsedMap.sources.map((source)=>{
191
+ source = typeof source === "string" && source.startsWith(this.projectRoot) ? _path().default.relative(this.projectRoot, source) : source;
192
+ return source.split(_path().default.sep).join("/");
193
+ }),
194
+ sourcesContent: new Array(parsedMap.sources.length).fill(null),
195
+ names: parsedMap.names,
196
+ mappings: parsedMap.mappings
197
+ }),
198
+ targetDomain: "server"
199
+ });
200
+ }
201
+ files.set(artifactFilename, {
202
+ contents: src,
203
+ targetDomain: "server"
204
+ });
205
+ }
206
+ // Remap the manifest files to represent the output files.
207
+ route.file = artifactFilename;
208
+ }
209
+ return {
210
+ manifest: {
211
+ ...manifest,
212
+ htmlRoutes: prerenderManifest.htmlRoutes
213
+ },
214
+ files
215
+ };
216
+ }
217
+ async getExpoRouterRoutesManifestAsync({ appDir }) {
218
+ var ref, ref1;
219
+ // getBuiltTimeServerManifest
220
+ const { exp } = (0, _config().getConfig)(this.projectRoot);
221
+ const manifest = await (0, _fetchRouterManifest.fetchManifest)(this.projectRoot, {
222
+ ...(ref = exp.extra) == null ? void 0 : (ref1 = ref.router) == null ? void 0 : ref1.platformRoutes,
223
+ asJson: true,
224
+ appDir
225
+ });
226
+ if (!manifest) {
227
+ throw new _errors.CommandError("EXPO_ROUTER_SERVER_MANIFEST", "Unexpected error: server manifest could not be fetched.");
228
+ }
229
+ return manifest;
230
+ }
231
+ async getStaticRenderFunctionAsync() {
232
+ var ref;
233
+ const { mode , minify , isExporting } = this.instanceMetroOptions;
234
+ (0, _assert().default)(mode != null && isExporting != null, "The server must be started before calling ssrLoadModule.");
235
+ const url = this.getDevServerUrl();
236
+ const { getStaticContent , getManifest , getBuildTimeServerManifestAsync } = await this.ssrLoadModule("expo-router/node/render.js", {
237
+ minify,
238
+ mode,
239
+ isExporting
240
+ });
241
+ const { exp } = (0, _config().getConfig)(this.projectRoot);
242
+ return {
243
+ serverManifest: await getBuildTimeServerManifestAsync(),
244
+ // Get routes from Expo Router.
245
+ manifest: await getManifest({
246
+ preserveApiRoutes: false,
247
+ ...(ref = exp.extra) == null ? void 0 : ref.router
248
+ }),
249
+ // Get route generating function
250
+ async renderAsync (path) {
251
+ return await getStaticContent(new URL(path, url));
252
+ }
253
+ };
254
+ }
255
+ async getStaticResourcesAsync({ includeSourceMaps , mainModuleName } = {}) {
256
+ const { mode , minify , isExporting , baseUrl , routerRoot , asyncRoutes } = this.instanceMetroOptions;
257
+ (0, _assert().default)(mode != null && isExporting != null && baseUrl != null && routerRoot != null && asyncRoutes != null, "The server must be started before calling getStaticResourcesAsync.");
258
+ const platform = "web";
259
+ const resolvedMainModuleName = mainModuleName != null ? mainModuleName : "." + _path().default.sep + (0, _manifestMiddleware.resolveMainModuleName)(this.projectRoot, {
260
+ platform
261
+ });
262
+ return await this.metroImportAsArtifactsAsync(resolvedMainModuleName, {
263
+ splitChunks: isExporting && !_env1.env.EXPO_NO_BUNDLE_SPLITTING,
264
+ platform,
265
+ mode,
266
+ minify,
267
+ environment: "client",
268
+ serializerOutput: "static",
269
+ serializerIncludeMaps: includeSourceMaps,
270
+ mainModuleName: resolvedMainModuleName,
271
+ lazy: (0, _metroOptions.shouldEnableAsyncImports)(this.projectRoot),
272
+ asyncRoutes,
273
+ baseUrl,
274
+ isExporting,
275
+ routerRoot,
276
+ bytecode: false
277
+ });
278
+ }
279
+ async getStaticPageAsync(pathname) {
280
+ const { mode , isExporting , baseUrl , routerRoot , asyncRoutes } = this.instanceMetroOptions;
281
+ (0, _assert().default)(mode != null && isExporting != null && baseUrl != null && routerRoot != null && asyncRoutes != null, "The server must be started before calling getStaticPageAsync.");
282
+ const platform = "web";
283
+ const devBundleUrlPathname = (0, _metroOptions.createBundleUrlPath)({
284
+ splitChunks: isExporting && !_env1.env.EXPO_NO_BUNDLE_SPLITTING,
285
+ platform,
286
+ mode,
287
+ environment: "client",
288
+ mainModuleName: (0, _manifestMiddleware.resolveMainModuleName)(this.projectRoot, {
289
+ platform
290
+ }),
291
+ lazy: (0, _metroOptions.shouldEnableAsyncImports)(this.projectRoot),
292
+ baseUrl,
293
+ isExporting,
294
+ asyncRoutes,
295
+ routerRoot,
296
+ bytecode: false
297
+ });
298
+ const bundleStaticHtml = async ()=>{
299
+ const { getStaticContent } = await this.ssrLoadModule("expo-router/node/render.js", {
300
+ minify: false,
301
+ mode,
302
+ isExporting,
303
+ platform
304
+ });
305
+ const location = new URL(pathname, this.getDevServerUrl());
306
+ return await getStaticContent(location);
307
+ };
308
+ const [{ artifacts: resources }, staticHtml] = await Promise.all([
309
+ this.getStaticResourcesAsync(),
310
+ bundleStaticHtml(),
311
+ ]);
312
+ const content = (0, _serializeHtml.serializeHtmlWithAssets)({
313
+ isExporting,
314
+ resources,
315
+ template: staticHtml,
316
+ devBundleUrl: devBundleUrlPathname,
317
+ baseUrl
318
+ });
319
+ return {
320
+ content,
321
+ resources
322
+ };
323
+ }
324
+ // Set when the server is started.
325
+ instanceMetroOptions = {};
326
+ async ssrLoadModule(filePath, specificOptions = {}) {
327
+ const res = await this.ssrLoadModuleContents(filePath, specificOptions);
328
+ return await (0, _getStaticRenderFunctions.evalMetroAndWrapFunctions)(this.projectRoot, res.src, res.filename);
329
+ }
330
+ async metroImportAsArtifactsAsync(filePath, specificOptions = {}) {
331
+ const results = await this.ssrLoadModuleContents(filePath, {
332
+ serializerOutput: "static",
333
+ ...specificOptions
334
+ });
335
+ // NOTE: This could potentially need more validation in the future.
336
+ if (results.artifacts && results.assets) {
337
+ return {
338
+ artifacts: results.artifacts,
339
+ assets: results.assets,
340
+ src: results.src,
341
+ filename: results.filename,
342
+ map: results.map
343
+ };
344
+ }
345
+ throw new _errors.CommandError("Invalid bundler results: " + results);
346
+ }
347
+ async metroLoadModuleContents(filePath, specificOptions, extraOptions = {}) {
348
+ const { baseUrl } = this.instanceMetroOptions;
349
+ (0, _assert().default)(baseUrl != null, "The server must be started before calling metroLoadModuleContents.");
350
+ const opts = {
351
+ // TODO: Possibly issues with using an absolute path here...
352
+ // mainModuleName: filePath,
353
+ lazy: false,
354
+ asyncRoutes: false,
355
+ inlineSourceMap: false,
356
+ engine: "hermes",
357
+ minify: false,
358
+ // bytecode: false,
359
+ // Bundle in Node.js mode for SSR.
360
+ environment: "node",
361
+ // platform: 'web',
362
+ // mode: 'development',
363
+ //
364
+ ...this.instanceMetroOptions,
365
+ baseUrl,
366
+ // routerRoot,
367
+ // isExporting,
368
+ ...specificOptions
369
+ };
370
+ const expoBundleOptions = (0, _metroOptions.getMetroDirectBundleOptions)(opts);
371
+ var _customResolverOptions, _dev;
372
+ const resolverOptions = {
373
+ customResolverOptions: (_customResolverOptions = expoBundleOptions.customResolverOptions) != null ? _customResolverOptions : {},
374
+ dev: (_dev = expoBundleOptions.dev) != null ? _dev : true
375
+ };
376
+ var _dev1, _minify, _unstable_transformProfile, ref, _customTransformOptions, _platform;
377
+ const transformOptions = {
378
+ dev: (_dev1 = expoBundleOptions.dev) != null ? _dev1 : true,
379
+ hot: true,
380
+ minify: (_minify = expoBundleOptions.minify) != null ? _minify : false,
381
+ type: "module",
382
+ unstable_transformProfile: (ref = (_unstable_transformProfile = extraOptions.unstable_transformProfile) != null ? _unstable_transformProfile : expoBundleOptions.unstable_transformProfile) != null ? ref : "default",
383
+ customTransformOptions: (_customTransformOptions = expoBundleOptions.customTransformOptions) != null ? _customTransformOptions : Object.create(null),
384
+ platform: (_platform = expoBundleOptions.platform) != null ? _platform : "web",
385
+ runtimeBytecodeVersion: expoBundleOptions.runtimeBytecodeVersion
386
+ };
387
+ const resolvedEntryFilePath = await this.resolveRelativePathAsync(filePath, {
388
+ resolverOptions,
389
+ transformOptions
390
+ });
391
+ // Use fully qualified URL with all options to represent the file path that's used for source maps and HMR. This prevents collisions.
392
+ const filename = (0, _metroOptions.createBundleUrlPath)({
393
+ ...opts,
394
+ mainModuleName: resolvedEntryFilePath
395
+ });
396
+ var _lazy, _shallow, _inlineSourceMap, _modulesOnly, _runModule, _sourceMapUrl;
397
+ // https://github.com/facebook/metro/blob/2405f2f6c37a1b641cc379b9c733b1eff0c1c2a1/packages/metro/src/lib/parseOptionsFromUrl.js#L55-L87
398
+ const results = await this._bundleDirectAsync(resolvedEntryFilePath, {
399
+ graphOptions: {
400
+ lazy: (_lazy = expoBundleOptions.lazy) != null ? _lazy : false,
401
+ shallow: (_shallow = expoBundleOptions.shallow) != null ? _shallow : false
402
+ },
403
+ resolverOptions,
404
+ serializerOptions: {
405
+ ...expoBundleOptions.serializerOptions,
406
+ inlineSourceMap: (_inlineSourceMap = expoBundleOptions.inlineSourceMap) != null ? _inlineSourceMap : false,
407
+ modulesOnly: (_modulesOnly = expoBundleOptions.modulesOnly) != null ? _modulesOnly : false,
408
+ runModule: (_runModule = expoBundleOptions.runModule) != null ? _runModule : true,
409
+ // @ts-expect-error
410
+ sourceUrl: expoBundleOptions.sourceUrl,
411
+ // @ts-expect-error
412
+ sourceMapUrl: (_sourceMapUrl = extraOptions.sourceMapUrl) != null ? _sourceMapUrl : expoBundleOptions.sourceMapUrl
413
+ },
414
+ transformOptions
415
+ });
416
+ return {
417
+ ...results,
418
+ filename
419
+ };
420
+ }
421
+ async ssrLoadModuleContents(filePath, specificOptions = {}) {
422
+ const { baseUrl , routerRoot , isExporting } = this.instanceMetroOptions;
423
+ (0, _assert().default)(baseUrl != null && routerRoot != null && isExporting != null, "The server must be started before calling ssrLoadModuleContents.");
424
+ const opts = {
425
+ // TODO: Possibly issues with using an absolute path here...
426
+ mainModuleName: filePath,
427
+ lazy: false,
428
+ asyncRoutes: false,
429
+ inlineSourceMap: false,
430
+ engine: "hermes",
431
+ minify: false,
432
+ bytecode: false,
433
+ // Bundle in Node.js mode for SSR.
434
+ environment: "node",
435
+ platform: "web",
436
+ mode: "development",
437
+ //
438
+ ...this.instanceMetroOptions,
439
+ baseUrl,
440
+ routerRoot,
441
+ isExporting,
442
+ ...specificOptions
443
+ };
444
+ // https://github.com/facebook/metro/blob/2405f2f6c37a1b641cc379b9c733b1eff0c1c2a1/packages/metro/src/lib/parseOptionsFromUrl.js#L55-L87
445
+ const { filename , bundle , map , ...rest } = await this.metroLoadModuleContents(filePath, opts);
446
+ const scriptContents = wrapBundle(bundle);
447
+ if (map) {
448
+ debug("Registering SSR source map for:", filename);
449
+ _getStaticRenderFunctions.cachedSourceMaps.set(filename, {
450
+ url: this.projectRoot,
451
+ map
452
+ });
453
+ } else {
454
+ debug("No SSR source map found for:", filename);
455
+ }
456
+ return {
457
+ ...rest,
458
+ src: scriptContents,
459
+ filename,
460
+ map
461
+ };
462
+ }
463
+ async legacySinglePageExportBundleAsync(options, extraOptions = {}) {
464
+ const { baseUrl , routerRoot , isExporting } = this.instanceMetroOptions;
465
+ (0, _assert().default)(baseUrl != null && routerRoot != null && isExporting != null, "The server must be started before calling legacySinglePageExportBundleAsync.");
466
+ const opts = {
467
+ ...this.instanceMetroOptions,
468
+ baseUrl,
469
+ routerRoot,
470
+ isExporting,
471
+ ...options,
472
+ environment: "client",
473
+ serializerOutput: "static"
474
+ };
475
+ // https://github.com/facebook/metro/blob/2405f2f6c37a1b641cc379b9c733b1eff0c1c2a1/packages/metro/src/lib/parseOptionsFromUrl.js#L55-L87
476
+ if (!opts.mainModuleName.startsWith(_path().default.sep)) {
477
+ opts.mainModuleName = "." + _path().default.sep + opts.mainModuleName;
478
+ }
479
+ const output = await this.metroLoadModuleContents(opts.mainModuleName, opts, extraOptions);
480
+ return {
481
+ artifacts: output.artifacts,
482
+ assets: output.assets
483
+ };
484
+ }
485
+ async watchEnvironmentVariables() {
486
+ if (!this.instance) {
487
+ throw new Error("Cannot observe environment variable changes without a running Metro instance.");
488
+ }
489
+ if (!this.metro) {
490
+ // This can happen when the run command is used and the server is already running in another
491
+ // process.
492
+ debug("Skipping Environment Variable observation because Metro is not running (headless).");
493
+ return;
494
+ }
495
+ const envFiles = _env().getFiles(process.env.NODE_ENV).map((fileName)=>_path().default.join(this.projectRoot, fileName));
496
+ (0, _waitForMetroToObserveTypeScriptFile.observeFileChanges)({
497
+ metro: this.metro,
498
+ server: this.instance.server
499
+ }, envFiles, ()=>{
500
+ debug("Reloading environment variables...");
501
+ // Force reload the environment variables.
502
+ _env().load(this.projectRoot, {
503
+ force: true
504
+ });
505
+ });
506
+ }
507
+ getExpoLineOptions() {
508
+ return this.instanceMetroOptions;
509
+ }
510
+ async startImplementationAsync(options) {
511
+ var ref;
512
+ options.port = await this.resolvePortAsync(options);
513
+ this.urlCreator = this.getUrlCreator(options);
514
+ const config = (0, _config().getConfig)(this.projectRoot, {
515
+ skipSDKVersionRequirement: true
516
+ });
517
+ const { exp } = config;
518
+ var ref1;
519
+ const useServerRendering = [
520
+ "static",
521
+ "server"
522
+ ].includes((ref1 = (ref = exp.web) == null ? void 0 : ref.output) != null ? ref1 : "");
523
+ const baseUrl = (0, _metroOptions.getBaseUrlFromExpoConfig)(exp);
524
+ var _mode;
525
+ const asyncRoutes = (0, _metroOptions.getAsyncRoutesFromExpoConfig)(exp, (_mode = options.mode) != null ? _mode : "development", "web");
526
+ const routerRoot = (0, _router.getRouterDirectoryModuleIdWithManifest)(this.projectRoot, exp);
527
+ const appDir = _path().default.join(this.projectRoot, routerRoot);
528
+ var _mode1;
529
+ const mode = (_mode1 = options.mode) != null ? _mode1 : "development";
530
+ this.instanceMetroOptions = {
531
+ isExporting: !!options.isExporting,
532
+ baseUrl,
533
+ mode,
534
+ routerRoot,
535
+ minify: options.minify,
536
+ asyncRoutes
537
+ };
538
+ const parsedOptions = {
539
+ port: options.port,
540
+ maxWorkers: options.maxWorkers,
541
+ resetCache: options.resetDevServer
542
+ };
543
+ // Required for symbolication:
544
+ process.env.EXPO_DEV_SERVER_ORIGIN = `http://localhost:${options.port}`;
545
+ const { metro , server , middleware , messageSocket } = await (0, _instantiateMetro.instantiateMetroAsync)(this, parsedOptions, {
546
+ isExporting: !!options.isExporting
547
+ });
548
+ const manifestMiddleware = await this.getManifestMiddlewareAsync(options);
549
+ // Important that we noop source maps for context modules as soon as possible.
550
+ (0, _mutations.prependMiddleware)(middleware, new _contextModuleSourceMapsMiddleware.ContextModuleSourceMapsMiddleware().getHandler());
551
+ // We need the manifest handler to be the first middleware to run so our
552
+ // routes take precedence over static files. For example, the manifest is
553
+ // served from '/' and if the user has an index.html file in their project
554
+ // then the manifest handler will never run, the static middleware will run
555
+ // and serve index.html instead of the manifest.
556
+ // https://github.com/expo/expo/issues/13114
557
+ (0, _mutations.prependMiddleware)(middleware, manifestMiddleware.getHandler());
558
+ var _scheme;
559
+ middleware.use(new _interstitialPageMiddleware.InterstitialPageMiddleware(this.projectRoot, {
560
+ // TODO: Prevent this from becoming stale.
561
+ scheme: (_scheme = options.location.scheme) != null ? _scheme : null
562
+ }).getHandler());
563
+ middleware.use(new _reactDevToolsPageMiddleware.ReactDevToolsPageMiddleware(this.projectRoot).getHandler());
564
+ middleware.use(new _devToolsPluginMiddleware.DevToolsPluginMiddleware(this.projectRoot, this.devToolsPluginManager).getHandler());
565
+ const deepLinkMiddleware = new _runtimeRedirectMiddleware.RuntimeRedirectMiddleware(this.projectRoot, {
566
+ onDeepLink: getDeepLinkHandler(this.projectRoot),
567
+ getLocation: ({ runtime })=>{
568
+ if (runtime === "custom") {
569
+ var ref;
570
+ return (ref = this.urlCreator) == null ? void 0 : ref.constructDevClientUrl();
571
+ } else {
572
+ var ref1;
573
+ return (ref1 = this.urlCreator) == null ? void 0 : ref1.constructUrl({
574
+ scheme: "exp"
575
+ });
576
+ }
577
+ }
578
+ });
579
+ middleware.use(deepLinkMiddleware.getHandler());
580
+ middleware.use(new _createFileMiddleware.CreateFileMiddleware(this.projectRoot).getHandler());
581
+ // Append support for redirecting unhandled requests to the index.html page on web.
582
+ if (this.isTargetingWeb()) {
583
+ // This MUST be after the manifest middleware so it doesn't have a chance to serve the template `public/index.html`.
584
+ middleware.use(new _serveStaticMiddleware.ServeStaticMiddleware(this.projectRoot).getHandler());
585
+ // This should come after the static middleware so it doesn't serve the favicon from `public/favicon.ico`.
586
+ middleware.use(new _faviconMiddleware.FaviconMiddleware(this.projectRoot).getHandler());
587
+ if (useServerRendering) {
588
+ var ref2;
589
+ middleware.use((0, _createServerRouteMiddleware.createRouteHandlerMiddleware)(this.projectRoot, {
590
+ appDir,
591
+ routerRoot,
592
+ config,
593
+ ...(ref2 = config.exp.extra) == null ? void 0 : ref2.router,
594
+ bundleApiRoute: (functionFilePath)=>this.ssrImportApiRoute(functionFilePath),
595
+ getStaticPageAsync: (pathname)=>{
596
+ return this.getStaticPageAsync(pathname);
597
+ }
598
+ }));
599
+ (0, _waitForMetroToObserveTypeScriptFile.observeAnyFileChanges)({
600
+ metro,
601
+ server
602
+ }, (events)=>{
603
+ var ref;
604
+ if (((ref = exp.web) == null ? void 0 : ref.output) === "server") {
605
+ // NOTE(EvanBacon): We aren't sure what files the API routes are using so we'll just invalidate
606
+ // aggressively to ensure we always have the latest. The only caching we really get here is for
607
+ // cases where the user is making subsequent requests to the same API route without changing anything.
608
+ // This is useful for testing but pretty suboptimal. Luckily our caching is pretty aggressive so it makes
609
+ // up for a lot of the overhead.
610
+ this.invalidateApiRouteCache();
611
+ } else if (!(0, _router.hasWarnedAboutApiRoutes)()) {
612
+ for (const event of events){
613
+ var // If the user did not delete a file that matches the Expo Router API Route convention, then we should warn that
614
+ // API Routes are not enabled in the project.
615
+ ref1;
616
+ if (((ref1 = event.metadata) == null ? void 0 : ref1.type) !== "d" && // Ensure the file is in the project's routes directory to prevent false positives in monorepos.
617
+ event.filePath.startsWith(appDir) && (0, _router.isApiRouteConvention)(event.filePath)) {
618
+ (0, _router.warnInvalidWebOutput)();
619
+ }
620
+ }
621
+ }
622
+ });
623
+ } else {
624
+ // This MUST run last since it's the fallback.
625
+ middleware.use(new _historyFallbackMiddleware.HistoryFallbackMiddleware(manifestMiddleware.getHandler().internal).getHandler());
626
+ }
627
+ }
628
+ // Extend the close method to ensure that we clean up the local info.
629
+ const originalClose = server.close.bind(server);
630
+ server.close = (callback)=>{
631
+ return originalClose((err)=>{
632
+ this.instance = null;
633
+ this.metro = null;
634
+ callback == null ? void 0 : callback(err);
635
+ });
636
+ };
637
+ (0, _metroPrivateServer.assertMetroPrivateServer)(metro);
638
+ this.metro = metro;
639
+ return {
640
+ server,
641
+ location: {
642
+ // The port is the main thing we want to send back.
643
+ port: options.port,
644
+ // localhost isn't always correct.
645
+ host: "localhost",
646
+ // http is the only supported protocol on native.
647
+ url: `http://localhost:${options.port}`,
648
+ protocol: "http"
649
+ },
650
+ middleware,
651
+ messageSocket
652
+ };
653
+ }
654
+ async waitForTypeScriptAsync() {
655
+ if (!this.instance) {
656
+ throw new Error("Cannot wait for TypeScript without a running server.");
657
+ }
658
+ return new Promise((resolve)=>{
659
+ if (!this.metro) {
660
+ // This can happen when the run command is used and the server is already running in another
661
+ // process. In this case we can't wait for the TypeScript check to complete because we don't
662
+ // have access to the Metro server.
663
+ debug("Skipping TypeScript check because Metro is not running (headless).");
664
+ return resolve(false);
665
+ }
666
+ const off = (0, _metroWatchTypeScriptFiles.metroWatchTypeScriptFiles)({
667
+ projectRoot: this.projectRoot,
668
+ server: this.instance.server,
669
+ metro: this.metro,
670
+ tsconfig: true,
671
+ throttle: true,
672
+ eventTypes: [
673
+ "change",
674
+ "add"
675
+ ],
676
+ callback: async ()=>{
677
+ // Run once, this prevents the TypeScript project prerequisite from running on every file change.
678
+ off();
679
+ const { TypeScriptProjectPrerequisite } = await Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("../../doctor/typescript/TypeScriptProjectPrerequisite.js")));
680
+ try {
681
+ const req = new TypeScriptProjectPrerequisite(this.projectRoot);
682
+ await req.bootstrapAsync();
683
+ resolve(true);
684
+ } catch (error) {
685
+ // Ensure the process doesn't fail if the TypeScript check fails.
686
+ // This could happen during the install.
687
+ _log.Log.log();
688
+ _log.Log.error(_chalk().default.red`Failed to automatically setup TypeScript for your project. Try restarting the dev server to fix.`);
689
+ _log.Log.exception(error);
690
+ resolve(false);
691
+ }
692
+ }
693
+ });
694
+ });
695
+ }
696
+ async startTypeScriptServices() {
697
+ var ref;
698
+ return (0, _startTypescriptTypeGeneration.startTypescriptTypeGenerationAsync)({
699
+ server: (ref = this.instance) == null ? void 0 : ref.server,
700
+ metro: this.metro,
701
+ projectRoot: this.projectRoot
702
+ });
703
+ }
704
+ getConfigModuleIds() {
705
+ return [
706
+ "./metro.config.js",
707
+ "./metro.config.json",
708
+ "./rn-cli.config.js"
709
+ ];
710
+ }
711
+ pendingRouteOperations = new Map();
712
+ // API Routes
713
+ // Bundle the API Route with Metro and return the string contents to be evaluated in the server.
714
+ async bundleApiRoute(filePath) {
715
+ if (this.pendingRouteOperations.has(filePath)) {
716
+ return this.pendingRouteOperations.get(filePath);
717
+ }
718
+ const bundleAsync = async ()=>{
719
+ try {
720
+ debug("Bundle API route:", this.instanceMetroOptions.routerRoot, filePath);
721
+ return await this.ssrLoadModuleContents(filePath);
722
+ } catch (error) {
723
+ var ref;
724
+ const appDir = ((ref = this.instanceMetroOptions) == null ? void 0 : ref.routerRoot) ? _path().default.join(this.projectRoot, this.instanceMetroOptions.routerRoot) : undefined;
725
+ const relativePath = appDir ? _path().default.relative(appDir, filePath) : filePath;
726
+ // Expected errors: invalid syntax, missing resolutions.
727
+ // Wrap with command error for better error messages.
728
+ const err = new _errors.CommandError("API_ROUTE", (0, _chalk().default)`Failed to bundle API Route: {bold ${relativePath}}\n\n` + error.message);
729
+ for(const key in error){
730
+ // @ts-expect-error
731
+ err[key] = error[key];
732
+ }
733
+ throw err;
734
+ } finally{
735
+ // pendingRouteOperations.delete(filepath);
736
+ }
737
+ };
738
+ const route = bundleAsync();
739
+ this.pendingRouteOperations.set(filePath, route);
740
+ return route;
741
+ }
742
+ async ssrImportApiRoute(filePath) {
743
+ // TODO: Cache the evaluated function.
744
+ try {
745
+ const apiRoute = await this.bundleApiRoute(filePath);
746
+ if (!(apiRoute == null ? void 0 : apiRoute.src)) {
747
+ return null;
748
+ }
749
+ return (0, _getStaticRenderFunctions.evalMetroNoHandling)(this.projectRoot, apiRoute.src, apiRoute.filename);
750
+ } catch (error) {
751
+ // Format any errors that were thrown in the global scope of the evaluation.
752
+ if (error instanceof Error) {
753
+ try {
754
+ const htmlServerError = await (0, _metroErrorInterface.getErrorOverlayHtmlAsync)({
755
+ error,
756
+ projectRoot: this.projectRoot,
757
+ routerRoot: this.getExpoLineOptions().routerRoot
758
+ });
759
+ return new Response(htmlServerError, {
760
+ status: 500,
761
+ headers: {
762
+ "Content-Type": "text/html"
763
+ }
764
+ });
765
+ } catch (internalError) {
766
+ debug("Failed to generate Metro server error UI for API Route error:", internalError);
767
+ throw error;
768
+ }
769
+ } else {
770
+ throw error;
771
+ }
772
+ }
773
+ }
774
+ invalidateApiRouteCache() {
775
+ this.pendingRouteOperations.clear();
776
+ }
777
+ // Direct Metro access
778
+ // Emulates the Metro dev server .bundle endpoint without having to go through a server.
779
+ async _bundleDirectAsync(resolvedEntryFilePath, { transformOptions , resolverOptions , graphOptions , serializerOptions }) {
780
+ var ref;
781
+ (0, _assert().default)(this.metro, "Metro server must be running to bundle directly.");
782
+ const config = this.metro._config;
783
+ const buildNumber = this.metro.getNewBuildNumber();
784
+ const bundlePerfLogger = config.unstable_perfLoggerFactory == null ? void 0 : config.unstable_perfLoggerFactory("BUNDLING_REQUEST", {
785
+ key: buildNumber
786
+ });
787
+ const onProgress = (transformedFileCount, totalFileCount)=>{
788
+ var ref, ref1;
789
+ (ref = this.metro) == null ? void 0 : (ref1 = ref._reporter) == null ? void 0 : ref1.update == null ? void 0 : ref1.update({
790
+ buildID: getBuildID(buildNumber),
791
+ type: "bundle_transform_progressed",
792
+ transformedFileCount,
793
+ totalFileCount
794
+ });
795
+ };
796
+ const revPromise = this.getMetroRevision(resolvedEntryFilePath, {
797
+ graphOptions,
798
+ transformOptions,
799
+ resolverOptions
800
+ });
801
+ bundlePerfLogger == null ? void 0 : bundlePerfLogger.point("resolvingAndTransformingDependencies_start");
802
+ bundlePerfLogger == null ? void 0 : bundlePerfLogger.annotate({
803
+ bool: {
804
+ initial_build: revPromise == null
805
+ }
806
+ });
807
+ (ref = this.metro) == null ? void 0 : ref._reporter.update({
808
+ buildID: getBuildID(buildNumber),
809
+ bundleDetails: {
810
+ bundleType: transformOptions.type,
811
+ dev: transformOptions.dev,
812
+ entryFile: resolvedEntryFilePath,
813
+ minify: transformOptions.minify,
814
+ platform: transformOptions.platform,
815
+ // @ts-expect-error: typed incorrectly upstream
816
+ customResolverOptions: resolverOptions.customResolverOptions,
817
+ customTransformOptions: transformOptions.customTransformOptions
818
+ },
819
+ isPrefetch: false,
820
+ type: "bundle_build_started"
821
+ });
822
+ try {
823
+ const { delta , revision } = await (revPromise != null ? this.metro.getBundler().updateGraph(await revPromise, false) : this.metro.getBundler().initializeGraph(// NOTE: Using absolute path instead of relative input path is a breaking change.
824
+ // entryFile,
825
+ resolvedEntryFilePath, transformOptions, resolverOptions, {
826
+ onProgress,
827
+ shallow: graphOptions.shallow,
828
+ // @ts-expect-error: typed incorrectly
829
+ lazy: graphOptions.lazy
830
+ }));
831
+ bundlePerfLogger == null ? void 0 : bundlePerfLogger.annotate({
832
+ int: {
833
+ graph_node_count: revision.graph.dependencies.size
834
+ }
835
+ });
836
+ bundlePerfLogger == null ? void 0 : bundlePerfLogger.point("resolvingAndTransformingDependencies_end");
837
+ bundlePerfLogger == null ? void 0 : bundlePerfLogger.point("serializingBundle_start");
838
+ const shouldAddToIgnoreList = this.metro._shouldAddModuleToIgnoreList.bind(this.metro);
839
+ const serializer = this.getMetroSerializer();
840
+ var _unstable_serverRoot;
841
+ const bundle = await serializer(// NOTE: Using absolute path instead of relative input path is a breaking change.
842
+ // entryFile,
843
+ resolvedEntryFilePath, revision.prepend, revision.graph, {
844
+ asyncRequireModulePath: await this.metro._resolveRelativePath(config.transformer.asyncRequireModulePath, {
845
+ relativeTo: "project",
846
+ resolverOptions,
847
+ transformOptions
848
+ }),
849
+ // ...serializerOptions,
850
+ processModuleFilter: config.serializer.processModuleFilter,
851
+ createModuleId: this.metro._createModuleId,
852
+ getRunModuleStatement: config.serializer.getRunModuleStatement,
853
+ includeAsyncPaths: graphOptions.lazy,
854
+ dev: transformOptions.dev,
855
+ projectRoot: config.projectRoot,
856
+ modulesOnly: serializerOptions.modulesOnly,
857
+ runBeforeMainModule: config.serializer.getModulesRunBeforeMainModule(resolvedEntryFilePath),
858
+ runModule: serializerOptions.runModule,
859
+ sourceMapUrl: serializerOptions.sourceMapUrl,
860
+ sourceUrl: serializerOptions.sourceUrl,
861
+ inlineSourceMap: serializerOptions.inlineSourceMap,
862
+ serverRoot: (_unstable_serverRoot = config.server.unstable_serverRoot) != null ? _unstable_serverRoot : config.projectRoot,
863
+ shouldAddToIgnoreList,
864
+ // @ts-expect-error: passed to our serializer to enable non-serial return values.
865
+ serializerOptions
866
+ });
867
+ this.metro._reporter.update({
868
+ buildID: getBuildID(buildNumber),
869
+ type: "bundle_build_done"
870
+ });
871
+ bundlePerfLogger == null ? void 0 : bundlePerfLogger.point("serializingBundle_end");
872
+ let bundleCode = null;
873
+ let bundleMap = null;
874
+ // @ts-expect-error: If the output is multi-bundle...
875
+ if (serializerOptions.output === "static") {
876
+ try {
877
+ var ref1, ref2;
878
+ const parsed = typeof bundle === "string" ? JSON.parse(bundle) : bundle;
879
+ (0, _assert().default)("artifacts" in parsed && Array.isArray(parsed.artifacts), "Expected serializer to return an object with key artifacts to contain an array of serial assets.");
880
+ const artifacts = parsed.artifacts;
881
+ const assets = parsed.assets;
882
+ const bundleCode1 = artifacts.filter((asset)=>asset.type === "js")[0];
883
+ var ref3;
884
+ const bundleMap1 = (ref3 = (ref1 = artifacts.filter((asset)=>asset.type === "map")) == null ? void 0 : (ref2 = ref1[0]) == null ? void 0 : ref2.source) != null ? ref3 : "";
885
+ return {
886
+ numModifiedFiles: delta.reset ? delta.added.size + revision.prepend.length : delta.added.size + delta.modified.size + delta.deleted.size,
887
+ lastModifiedDate: revision.date,
888
+ nextRevId: revision.id,
889
+ bundle: bundleCode1.source,
890
+ map: bundleMap1,
891
+ artifacts,
892
+ assets
893
+ };
894
+ } catch (error) {
895
+ throw new Error("Serializer did not return expected format. The project copy of `expo/metro-config` may be out of date. Error: " + error.message);
896
+ }
897
+ }
898
+ if (typeof bundle === "string") {
899
+ bundleCode = bundle;
900
+ // Create the source map in a second pass...
901
+ let { prepend , graph } = revision;
902
+ if (serializerOptions.modulesOnly) {
903
+ prepend = [];
904
+ }
905
+ bundleMap = await sourceMapStringAsync([
906
+ //
907
+ ...prepend,
908
+ ...this.metro._getSortedModules(graph),
909
+ ], {
910
+ excludeSource: serializerOptions.excludeSource,
911
+ processModuleFilter: config.serializer.processModuleFilter,
912
+ shouldAddToIgnoreList
913
+ });
914
+ } else {
915
+ bundleCode = bundle.code;
916
+ bundleMap = bundle.map;
917
+ }
918
+ return {
919
+ numModifiedFiles: delta.reset ? delta.added.size + revision.prepend.length : delta.added.size + delta.modified.size + delta.deleted.size,
920
+ lastModifiedDate: revision.date,
921
+ nextRevId: revision.id,
922
+ bundle: bundleCode,
923
+ map: bundleMap
924
+ };
925
+ } catch (error1) {
926
+ this.metro._reporter.update({
927
+ buildID: getBuildID(buildNumber),
928
+ type: "bundle_build_failed"
929
+ });
930
+ throw error1;
931
+ }
932
+ }
933
+ getMetroSerializer() {
934
+ var ref, ref1;
935
+ return ((ref = this.metro) == null ? void 0 : (ref1 = ref._config) == null ? void 0 : ref1.serializer.customSerializer) || ((entryPoint, preModules, graph, options)=>(0, _bundleToString().default)((0, _baseJSBundle().default)(entryPoint, preModules, graph, options)).code);
936
+ }
937
+ getMetroRevision(resolvedEntryFilePath, { graphOptions , transformOptions , resolverOptions }) {
938
+ (0, _assert().default)(this.metro, "Metro server must be running to bundle directly.");
939
+ const config = this.metro._config;
940
+ const graphId = getGraphId(resolvedEntryFilePath, transformOptions, {
941
+ unstable_allowRequireContext: config.transformer.unstable_allowRequireContext,
942
+ resolverOptions,
943
+ shallow: graphOptions.shallow,
944
+ lazy: graphOptions.lazy
945
+ });
946
+ return this.metro.getBundler().getRevisionByGraphId(graphId);
947
+ }
948
+ async resolveRelativePathAsync(moduleId, { resolverOptions , transformOptions }) {
949
+ (0, _assert().default)(this.metro, "cannot invoke resolveRelativePathAsync without metro instance");
950
+ return await this.metro._resolveRelativePath(moduleId, {
951
+ relativeTo: "server",
952
+ resolverOptions,
953
+ transformOptions
954
+ });
955
+ }
956
+ }
957
+ function getBuildID(buildNumber) {
958
+ return buildNumber.toString(36);
959
+ }
960
+ function getDeepLinkHandler(projectRoot) {
961
+ return async ({ runtime })=>{
962
+ if (runtime === "expo") return;
963
+ const { exp } = (0, _config().getConfig)(projectRoot);
964
+ await (0, _telemetry.logEventAsync)("dev client start command", {
965
+ status: "started",
966
+ ...(0, _getDevClientProperties.default)(projectRoot, exp)
967
+ });
968
+ };
969
+ }
970
+ function wrapBundle(str) {
971
+ // Skip the metro runtime so debugging is a bit easier.
972
+ // Replace the __r() call with an export statement.
973
+ // Use gm to apply to the last require line. This is needed when the bundle has side-effects.
974
+ return str.replace(/^(__r\(.*\);)$/gm, "module.exports = $1");
975
+ }
976
+ async function sourceMapStringAsync(modules, options) {
977
+ return (await (0, _sourceMapGenerator().sourceMapGeneratorNonBlocking)(modules, options)).toString(undefined, {
978
+ excludeSource: options.excludeSource
979
+ });
980
+ }
981
+
982
+ //# sourceMappingURL=MetroBundlerDevServer.js.map